[2026-10-28 00:00:00,069.069 INFO    ] ================================================
[2026-10-28 00:00:00,084.084 INFO    ] Launching Daemon at Wed Oct 28 00:00:00 IST 2026
[2026-10-28 00:00:00,096.096 INFO    ] ================================================
[2026-10-28 00:00:00,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:00:00
[2026-10-28 00:00:02,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:00:04,141.141 INFO    ] Initializing speech engine...
[2026-10-28 00:00:04,215.215 INFO    ] 2026-10-28 00:00:04
[2026-10-28 00:00:05,022.022 INFO    ] 2026-10-28 00:00:04
[2026-10-28 00:00:05,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:00:05,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:00:05,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:00:05,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:00:05,876.876 INFO    ] time= 28/10/2026 00:00:05
[2026-10-28 00:00:05,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:00:05,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:00:06,037.037 INFO    ] No existing commands found in stream
[2026-10-28 00:00:11,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:00:11,063.063 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-28 00:00:14,821.821 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:00:14,824.824 INFO    ] Checking for system updates...
[2026-10-28 00:00:14,859.859 INFO    ] 200
[2026-10-28 00:00:14,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:00:14,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:00:14,924.924 INFO    ] No update needed
[2026-10-28 00:00:14,927.927 INFO    ] Checking for camera pi updates...
[2026-10-28 00:00:14,960.960 INFO    ] 200
[2026-10-28 00:00:14,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:00:15,006.006 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:00:15,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:00:15,092.092 INFO    ] No camera update needed
[2026-10-28 00:00:15,094.094 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:00:15,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:00:15,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:00:15,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:00:17,146.146 INFO    ] ================================================
[2026-10-28 00:00:17,162.162 INFO    ] Launching Daemon at Wed Oct 28 00:00:17 IST 2026
[2026-10-28 00:00:17,174.174 INFO    ] ================================================
[2026-10-28 00:00:17,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:00:17
[2026-10-28 00:00:18,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:00:18,592.592 INFO    ] Initializing speech engine...
[2026-10-28 00:00:18,612.612 INFO    ] 2026-10-28 00:00:18
[2026-10-28 00:00:18,890.890 INFO    ] 2026-10-28 00:00:18
[2026-10-28 00:00:18,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:00:19,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:00:19,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:00:19,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:00:19,429.429 INFO    ] time= 28/10/2026 00:00:19
[2026-10-28 00:00:19,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:00:19,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:00:19,595.595 INFO    ] No existing commands found in stream
[2026-10-28 00:00:24,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:00:24,614.614 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-28 00:00:27,298.298 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:00:27,301.301 INFO    ] Checking for system updates...
[2026-10-28 00:00:27,342.342 INFO    ] 200
[2026-10-28 00:00:27,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:00:27,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:00:27,408.408 INFO    ] No update needed
[2026-10-28 00:00:27,411.411 INFO    ] Checking for camera pi updates...
[2026-10-28 00:00:27,445.445 INFO    ] 200
[2026-10-28 00:00:27,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:00:27,490.490 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:00:27,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:00:27,678.678 INFO    ] No camera update needed
[2026-10-28 00:00:27,681.681 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:00:27,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:00:27,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:00:27,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:00:29,738.738 INFO    ] ================================================
[2026-10-28 00:00:29,754.754 INFO    ] Launching Daemon at Wed Oct 28 00:00:29 IST 2026
[2026-10-28 00:00:29,765.765 INFO    ] ================================================
[2026-10-28 00:00:30,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:00:30
[2026-10-28 00:00:30,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:00:31,199.199 INFO    ] Initializing speech engine...
[2026-10-28 00:00:31,208.208 INFO    ] 2026-10-28 00:00:31
[2026-10-28 00:00:31,459.459 INFO    ] 2026-10-28 00:00:31
[2026-10-28 00:00:31,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:00:31,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:00:31,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:00:32,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:00:32,048.048 INFO    ] time= 28/10/2026 00:00:32
[2026-10-28 00:00:32,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:00:32,080.080 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:00:32,250.250 INFO    ] No existing commands found in stream
[2026-10-28 00:00:37,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:00:37,279.279 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-28 00:00:39,881.881 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:00:39,884.884 INFO    ] Checking for system updates...
[2026-10-28 00:00:39,920.920 INFO    ] 200
[2026-10-28 00:00:39,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:00:39,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:00:39,976.976 INFO    ] No update needed
[2026-10-28 00:00:39,979.979 INFO    ] Checking for camera pi updates...
[2026-10-28 00:00:40,015.015 INFO    ] 200
[2026-10-28 00:00:40,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:00:40,057.057 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:00:40,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:00:40,143.143 INFO    ] No camera update needed
[2026-10-28 00:00:40,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:00:40,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:00:40,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:00:40,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:00:42,199.199 INFO    ] ================================================
[2026-10-28 00:00:42,215.215 INFO    ] Launching Daemon at Wed Oct 28 00:00:42 IST 2026
[2026-10-28 00:00:42,230.230 INFO    ] ================================================
[2026-10-28 00:00:42,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:00:42
[2026-10-28 00:00:43,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:00:43,688.688 INFO    ] Initializing speech engine...
[2026-10-28 00:00:43,702.702 INFO    ] 2026-10-28 00:00:43
[2026-10-28 00:00:43,988.988 INFO    ] 2026-10-28 00:00:43
[2026-10-28 00:00:44,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:00:44,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:00:44,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:00:44,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:00:44,619.619 INFO    ] time= 28/10/2026 00:00:44
[2026-10-28 00:00:44,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:00:44,635.635 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:00:44,798.798 INFO    ] No existing commands found in stream
[2026-10-28 00:00:49,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:00:49,817.817 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-28 00:00:51,428.428 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:00:51,431.431 INFO    ] Checking for system updates...
[2026-10-28 00:00:51,471.471 INFO    ] 200
[2026-10-28 00:00:51,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:00:51,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:00:51,528.528 INFO    ] No update needed
[2026-10-28 00:00:51,530.530 INFO    ] Checking for camera pi updates...
[2026-10-28 00:00:51,564.564 INFO    ] 200
[2026-10-28 00:00:51,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:00:51,607.607 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:00:51,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:00:51,690.690 INFO    ] No camera update needed
[2026-10-28 00:00:51,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:00:51,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:00:51,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:00:51,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:00:53,746.746 INFO    ] ================================================
[2026-10-28 00:00:53,761.761 INFO    ] Launching Daemon at Wed Oct 28 00:00:53 IST 2026
[2026-10-28 00:00:53,772.772 INFO    ] ================================================
[2026-10-28 00:00:54,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:00:54
[2026-10-28 00:00:54,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:00:55,199.199 INFO    ] Initializing speech engine...
[2026-10-28 00:00:55,208.208 INFO    ] 2026-10-28 00:00:55
[2026-10-28 00:00:55,460.460 INFO    ] 2026-10-28 00:00:55
[2026-10-28 00:00:55,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:00:55,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:00:55,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:00:55,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:00:56,030.030 INFO    ] time= 28/10/2026 00:00:55
[2026-10-28 00:00:56,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:00:56,053.053 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:00:56,190.190 INFO    ] No existing commands found in stream
[2026-10-28 00:01:01,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:01:01,221.221 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 00:01:04,138.138 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:01:04,141.141 INFO    ] Checking for system updates...
[2026-10-28 00:01:04,178.178 INFO    ] 200
[2026-10-28 00:01:04,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:01:04,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:01:04,236.236 INFO    ] No update needed
[2026-10-28 00:01:04,239.239 INFO    ] Checking for camera pi updates...
[2026-10-28 00:01:04,277.277 INFO    ] 200
[2026-10-28 00:01:04,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:01:04,321.321 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:01:04,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:01:04,430.430 INFO    ] No camera update needed
[2026-10-28 00:01:04,433.433 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:01:04,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:01:04,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:01:04,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:01:06,490.490 INFO    ] ================================================
[2026-10-28 00:01:06,505.505 INFO    ] Launching Daemon at Wed Oct 28 00:01:06 IST 2026
[2026-10-28 00:01:06,516.516 INFO    ] ================================================
[2026-10-28 00:01:07,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:01:07
[2026-10-28 00:01:07,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:01:07,917.917 INFO    ] Initializing speech engine...
[2026-10-28 00:01:07,926.926 INFO    ] 2026-10-28 00:01:07
[2026-10-28 00:01:08,205.205 INFO    ] 2026-10-28 00:01:08
[2026-10-28 00:01:08,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:01:08,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:01:08,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:01:08,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:01:08,772.772 INFO    ] time= 28/10/2026 00:01:08
[2026-10-28 00:01:08,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:01:08,796.796 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:01:08,935.935 INFO    ] No existing commands found in stream
[2026-10-28 00:01:13,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:01:13,968.968 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-28 00:01:16,943.943 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:01:16,946.946 INFO    ] Checking for system updates...
[2026-10-28 00:01:16,981.981 INFO    ] 200
[2026-10-28 00:01:16,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:01:17,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:01:17,044.044 INFO    ] No update needed
[2026-10-28 00:01:17,046.046 INFO    ] Checking for camera pi updates...
[2026-10-28 00:01:17,083.083 INFO    ] 200
[2026-10-28 00:01:17,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:01:17,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:01:17,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:01:17,220.220 INFO    ] No camera update needed
[2026-10-28 00:01:17,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:01:17,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:01:17,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:01:17,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:01:19,275.275 INFO    ] ================================================
[2026-10-28 00:01:19,290.290 INFO    ] Launching Daemon at Wed Oct 28 00:01:19 IST 2026
[2026-10-28 00:01:19,300.300 INFO    ] ================================================
[2026-10-28 00:01:19,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:01:19
[2026-10-28 00:01:20,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:01:20,715.715 INFO    ] Initializing speech engine...
[2026-10-28 00:01:20,724.724 INFO    ] 2026-10-28 00:01:20
[2026-10-28 00:01:20,974.974 INFO    ] 2026-10-28 00:01:20
[2026-10-28 00:01:21,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:01:21,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:01:21,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:01:21,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:01:21,522.522 INFO    ] time= 28/10/2026 00:01:21
[2026-10-28 00:01:21,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:01:21,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:01:21,680.680 INFO    ] No existing commands found in stream
[2026-10-28 00:01:26,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:01:26,707.707 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 00:01:30,295.295 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:01:30,298.298 INFO    ] Checking for system updates...
[2026-10-28 00:01:30,334.334 INFO    ] 200
[2026-10-28 00:01:30,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:01:30,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:01:30,390.390 INFO    ] No update needed
[2026-10-28 00:01:30,393.393 INFO    ] Checking for camera pi updates...
[2026-10-28 00:01:30,427.427 INFO    ] 200
[2026-10-28 00:01:30,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:01:30,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:01:30,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:01:30,547.547 INFO    ] No camera update needed
[2026-10-28 00:01:30,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:01:30,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:01:30,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:01:30,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:01:32,605.605 INFO    ] ================================================
[2026-10-28 00:01:32,621.621 INFO    ] Launching Daemon at Wed Oct 28 00:01:32 IST 2026
[2026-10-28 00:01:32,633.633 INFO    ] ================================================
[2026-10-28 00:01:33,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:01:33
[2026-10-28 00:01:33,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:01:34,196.196 INFO    ] Initializing speech engine...
[2026-10-28 00:01:34,204.204 INFO    ] 2026-10-28 00:01:34
[2026-10-28 00:01:34,494.494 INFO    ] 2026-10-28 00:01:34
[2026-10-28 00:01:34,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:01:34,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:01:34,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:01:35,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:01:35,219.219 INFO    ] time= 28/10/2026 00:01:35
[2026-10-28 00:01:35,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:01:35,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:01:35,454.454 INFO    ] No existing commands found in stream
[2026-10-28 00:01:40,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:01:40,480.480 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-28 00:01:43,443.443 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:01:43,446.446 INFO    ] Checking for system updates...
[2026-10-28 00:01:43,482.482 INFO    ] 200
[2026-10-28 00:01:43,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:01:43,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:01:43,539.539 INFO    ] No update needed
[2026-10-28 00:01:43,542.542 INFO    ] Checking for camera pi updates...
[2026-10-28 00:01:43,575.575 INFO    ] 200
[2026-10-28 00:01:43,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:01:43,622.622 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:01:43,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:01:43,707.707 INFO    ] No camera update needed
[2026-10-28 00:01:43,709.709 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:01:43,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:01:43,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:01:43,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:01:45,761.761 INFO    ] ================================================
[2026-10-28 00:01:45,777.777 INFO    ] Launching Daemon at Wed Oct 28 00:01:45 IST 2026
[2026-10-28 00:01:45,788.788 INFO    ] ================================================
[2026-10-28 00:01:46,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:01:46
[2026-10-28 00:01:47,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:01:47,395.395 INFO    ] Initializing speech engine...
[2026-10-28 00:01:47,406.406 INFO    ] 2026-10-28 00:01:47
[2026-10-28 00:01:47,686.686 INFO    ] 2026-10-28 00:01:47
[2026-10-28 00:01:47,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:01:47,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:01:47,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:01:48,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:01:48,237.237 INFO    ] time= 28/10/2026 00:01:48
[2026-10-28 00:01:48,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:01:48,261.261 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:01:48,397.397 INFO    ] No existing commands found in stream
[2026-10-28 00:01:53,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:01:53,418.418 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 00:01:55,161.161 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:01:55,164.164 INFO    ] Checking for system updates...
[2026-10-28 00:01:55,200.200 INFO    ] 200
[2026-10-28 00:01:55,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:01:55,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:01:55,262.262 INFO    ] No update needed
[2026-10-28 00:01:55,265.265 INFO    ] Checking for camera pi updates...
[2026-10-28 00:01:55,302.302 INFO    ] 200
[2026-10-28 00:01:55,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:01:55,349.349 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:01:55,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:01:55,434.434 INFO    ] No camera update needed
[2026-10-28 00:01:55,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:01:55,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:01:55,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:01:55,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:01:57,488.488 INFO    ] ================================================
[2026-10-28 00:01:57,503.503 INFO    ] Launching Daemon at Wed Oct 28 00:01:57 IST 2026
[2026-10-28 00:01:57,513.513 INFO    ] ================================================
[2026-10-28 00:01:58,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:01:58
[2026-10-28 00:01:58,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:01:59,128.128 INFO    ] Initializing speech engine...
[2026-10-28 00:01:59,142.142 INFO    ] 2026-10-28 00:01:59
[2026-10-28 00:01:59,452.452 INFO    ] 2026-10-28 00:01:59
[2026-10-28 00:01:59,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:01:59,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:01:59,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:01:59,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:02:00,008.008 INFO    ] time= 28/10/2026 00:01:59
[2026-10-28 00:02:00,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:02:00,047.047 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:02:00,211.211 INFO    ] No existing commands found in stream
[2026-10-28 00:02:05,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:02:05,235.235 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 00:02:09,746.746 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:02:09,749.749 INFO    ] Checking for system updates...
[2026-10-28 00:02:09,786.786 INFO    ] 200
[2026-10-28 00:02:09,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:02:09,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:02:09,845.845 INFO    ] No update needed
[2026-10-28 00:02:09,848.848 INFO    ] Checking for camera pi updates...
[2026-10-28 00:02:09,882.882 INFO    ] 200
[2026-10-28 00:02:09,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:02:09,926.926 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:02:10,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:02:10,012.012 INFO    ] No camera update needed
[2026-10-28 00:02:10,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:02:10,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:02:10,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:02:10,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:02:12,070.070 INFO    ] ================================================
[2026-10-28 00:02:12,085.085 INFO    ] Launching Daemon at Wed Oct 28 00:02:12 IST 2026
[2026-10-28 00:02:12,096.096 INFO    ] ================================================
[2026-10-28 00:02:12,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:02:12
[2026-10-28 00:02:13,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:02:13,556.556 INFO    ] Initializing speech engine...
[2026-10-28 00:02:13,583.583 INFO    ] 2026-10-28 00:02:13
[2026-10-28 00:02:13,845.845 INFO    ] 2026-10-28 00:02:13
[2026-10-28 00:02:13,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:02:14,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:02:14,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:02:14,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:02:14,608.608 INFO    ] time= 28/10/2026 00:02:14
[2026-10-28 00:02:14,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:02:14,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:02:14,846.846 INFO    ] No existing commands found in stream
[2026-10-28 00:02:19,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:02:19,875.875 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-28 00:02:21,190.190 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:02:21,193.193 INFO    ] Checking for system updates...
[2026-10-28 00:02:21,232.232 INFO    ] 200
[2026-10-28 00:02:21,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:02:21,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:02:21,295.295 INFO    ] No update needed
[2026-10-28 00:02:21,298.298 INFO    ] Checking for camera pi updates...
[2026-10-28 00:02:21,331.331 INFO    ] 200
[2026-10-28 00:02:21,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:02:21,381.381 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:02:21,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:02:21,464.464 INFO    ] No camera update needed
[2026-10-28 00:02:21,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:02:21,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:02:21,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:02:21,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:02:23,518.518 INFO    ] ================================================
[2026-10-28 00:02:23,533.533 INFO    ] Launching Daemon at Wed Oct 28 00:02:23 IST 2026
[2026-10-28 00:02:23,544.544 INFO    ] ================================================
[2026-10-28 00:02:24,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:02:24
[2026-10-28 00:02:24,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:02:24,956.956 INFO    ] Initializing speech engine...
[2026-10-28 00:02:24,978.978 INFO    ] 2026-10-28 00:02:24
[2026-10-28 00:02:25,258.258 INFO    ] 2026-10-28 00:02:25
[2026-10-28 00:02:25,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:02:25,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:02:25,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:02:25,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:02:25,754.754 INFO    ] time= 28/10/2026 00:02:25
[2026-10-28 00:02:25,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:02:25,858.858 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:02:25,953.953 INFO    ] No existing commands found in stream
[2026-10-28 00:02:30,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:02:30,968.968 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-28 00:02:31,919.919 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:02:31,922.922 INFO    ] Checking for system updates...
[2026-10-28 00:02:31,960.960 INFO    ] 200
[2026-10-28 00:02:31,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:02:32,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:02:32,023.023 INFO    ] No update needed
[2026-10-28 00:02:32,026.026 INFO    ] Checking for camera pi updates...
[2026-10-28 00:02:32,062.062 INFO    ] 200
[2026-10-28 00:02:32,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:02:32,112.112 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:02:32,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:02:32,267.267 INFO    ] No camera update needed
[2026-10-28 00:02:32,270.270 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:02:32,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:02:32,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:02:32,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:02:34,328.328 INFO    ] ================================================
[2026-10-28 00:02:34,343.343 INFO    ] Launching Daemon at Wed Oct 28 00:02:34 IST 2026
[2026-10-28 00:02:34,354.354 INFO    ] ================================================
[2026-10-28 00:02:34,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:02:34
[2026-10-28 00:02:35,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:02:35,784.784 INFO    ] Initializing speech engine...
[2026-10-28 00:02:35,791.791 INFO    ] 2026-10-28 00:02:35
[2026-10-28 00:02:36,080.080 INFO    ] 2026-10-28 00:02:36
[2026-10-28 00:02:36,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:02:36,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:02:36,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:02:36,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:02:36,700.700 INFO    ] time= 28/10/2026 00:02:36
[2026-10-28 00:02:36,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:02:36,723.723 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:02:36,850.850 INFO    ] No existing commands found in stream
[2026-10-28 00:02:41,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:02:41,878.878 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-28 00:02:43,359.359 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:02:43,362.362 INFO    ] Checking for system updates...
[2026-10-28 00:02:43,402.402 INFO    ] 200
[2026-10-28 00:02:43,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:02:43,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:02:43,461.461 INFO    ] No update needed
[2026-10-28 00:02:43,464.464 INFO    ] Checking for camera pi updates...
[2026-10-28 00:02:43,501.501 INFO    ] 200
[2026-10-28 00:02:43,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:02:43,548.548 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:02:43,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:02:43,638.638 INFO    ] No camera update needed
[2026-10-28 00:02:43,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:02:43,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:02:43,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:02:43,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:02:45,695.695 INFO    ] ================================================
[2026-10-28 00:02:45,710.710 INFO    ] Launching Daemon at Wed Oct 28 00:02:45 IST 2026
[2026-10-28 00:02:45,721.721 INFO    ] ================================================
[2026-10-28 00:02:46,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:02:46
[2026-10-28 00:02:46,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:02:47,157.157 INFO    ] Initializing speech engine...
[2026-10-28 00:02:47,176.176 INFO    ] 2026-10-28 00:02:47
[2026-10-28 00:02:47,422.422 INFO    ] 2026-10-28 00:02:47
[2026-10-28 00:02:47,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:02:47,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:02:47,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:02:47,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:02:47,945.945 INFO    ] time= 28/10/2026 00:02:47
[2026-10-28 00:02:47,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:02:47,989.989 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:02:48,135.135 INFO    ] No existing commands found in stream
[2026-10-28 00:02:53,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:02:53,157.157 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 00:02:56,921.921 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:02:56,924.924 INFO    ] Checking for system updates...
[2026-10-28 00:02:56,963.963 INFO    ] 200
[2026-10-28 00:02:56,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:02:57,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:02:57,026.026 INFO    ] No update needed
[2026-10-28 00:02:57,028.028 INFO    ] Checking for camera pi updates...
[2026-10-28 00:02:57,064.064 INFO    ] 200
[2026-10-28 00:02:57,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:02:57,107.107 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:02:57,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:02:57,194.194 INFO    ] No camera update needed
[2026-10-28 00:02:57,196.196 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:02:57,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:02:57,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:02:57,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:02:59,249.249 INFO    ] ================================================
[2026-10-28 00:02:59,264.264 INFO    ] Launching Daemon at Wed Oct 28 00:02:59 IST 2026
[2026-10-28 00:02:59,275.275 INFO    ] ================================================
[2026-10-28 00:02:59,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:02:59
[2026-10-28 00:03:00,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:03:00,740.740 INFO    ] Initializing speech engine...
[2026-10-28 00:03:00,749.749 INFO    ] 2026-10-28 00:03:00
[2026-10-28 00:03:01,010.010 INFO    ] 2026-10-28 00:03:01
[2026-10-28 00:03:01,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:03:01,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:03:01,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:03:01,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:03:01,555.555 INFO    ] time= 28/10/2026 00:03:01
[2026-10-28 00:03:01,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:03:01,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:03:01,741.741 INFO    ] No existing commands found in stream
[2026-10-28 00:03:06,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:03:06,770.770 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-28 00:03:08,015.015 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:03:08,018.018 INFO    ] Checking for system updates...
[2026-10-28 00:03:08,055.055 INFO    ] 200
[2026-10-28 00:03:08,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:03:08,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:03:08,112.112 INFO    ] No update needed
[2026-10-28 00:03:08,114.114 INFO    ] Checking for camera pi updates...
[2026-10-28 00:03:08,149.149 INFO    ] 200
[2026-10-28 00:03:08,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:03:08,195.195 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:03:08,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:03:08,297.297 INFO    ] No camera update needed
[2026-10-28 00:03:08,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:03:08,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:03:08,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:03:08,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:03:10,354.354 INFO    ] ================================================
[2026-10-28 00:03:10,368.368 INFO    ] Launching Daemon at Wed Oct 28 00:03:10 IST 2026
[2026-10-28 00:03:10,379.379 INFO    ] ================================================
[2026-10-28 00:03:10,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:03:10
[2026-10-28 00:03:11,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:03:11,807.807 INFO    ] Initializing speech engine...
[2026-10-28 00:03:11,816.816 INFO    ] 2026-10-28 00:03:11
[2026-10-28 00:03:12,069.069 INFO    ] 2026-10-28 00:03:12
[2026-10-28 00:03:12,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:03:12,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:03:12,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:03:12,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:03:12,616.616 INFO    ] time= 28/10/2026 00:03:12
[2026-10-28 00:03:12,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:03:12,662.662 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:03:12,769.769 INFO    ] No existing commands found in stream
[2026-10-28 00:03:17,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:03:17,795.795 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-28 00:03:21,081.081 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:03:21,084.084 INFO    ] Checking for system updates...
[2026-10-28 00:03:21,120.120 INFO    ] 200
[2026-10-28 00:03:21,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:03:21,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:03:21,181.181 INFO    ] No update needed
[2026-10-28 00:03:21,184.184 INFO    ] Checking for camera pi updates...
[2026-10-28 00:03:21,219.219 INFO    ] 200
[2026-10-28 00:03:21,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:03:21,265.265 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:03:21,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:03:21,350.350 INFO    ] No camera update needed
[2026-10-28 00:03:21,352.352 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:03:21,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:03:21,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:03:21,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:03:23,406.406 INFO    ] ================================================
[2026-10-28 00:03:23,421.421 INFO    ] Launching Daemon at Wed Oct 28 00:03:23 IST 2026
[2026-10-28 00:03:23,431.431 INFO    ] ================================================
[2026-10-28 00:03:23,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:03:23
[2026-10-28 00:03:24,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:03:24,827.827 INFO    ] Initializing speech engine...
[2026-10-28 00:03:24,834.834 INFO    ] 2026-10-28 00:03:24
[2026-10-28 00:03:25,122.122 INFO    ] 2026-10-28 00:03:25
[2026-10-28 00:03:25,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:03:25,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:03:25,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:03:25,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:03:25,720.720 INFO    ] time= 28/10/2026 00:03:25
[2026-10-28 00:03:25,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:03:25,746.746 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:03:25,878.878 INFO    ] No existing commands found in stream
[2026-10-28 00:03:30,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:03:30,910.910 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-28 00:03:34,981.981 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:03:34,984.984 INFO    ] Checking for system updates...
[2026-10-28 00:03:35,022.022 INFO    ] 200
[2026-10-28 00:03:35,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:03:35,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:03:35,084.084 INFO    ] No update needed
[2026-10-28 00:03:35,086.086 INFO    ] Checking for camera pi updates...
[2026-10-28 00:03:35,119.119 INFO    ] 200
[2026-10-28 00:03:35,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:03:35,167.167 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:03:35,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:03:35,249.249 INFO    ] No camera update needed
[2026-10-28 00:03:35,251.251 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:03:35,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:03:35,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:03:35,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:03:37,304.304 INFO    ] ================================================
[2026-10-28 00:03:37,319.319 INFO    ] Launching Daemon at Wed Oct 28 00:03:37 IST 2026
[2026-10-28 00:03:37,330.330 INFO    ] ================================================
[2026-10-28 00:03:37,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:03:37
[2026-10-28 00:03:38,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:03:38,795.795 INFO    ] Initializing speech engine...
[2026-10-28 00:03:38,804.804 INFO    ] 2026-10-28 00:03:38
[2026-10-28 00:03:39,070.070 INFO    ] 2026-10-28 00:03:39
[2026-10-28 00:03:39,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:03:39,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:03:39,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:03:39,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:03:39,689.689 INFO    ] time= 28/10/2026 00:03:39
[2026-10-28 00:03:39,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:03:39,715.715 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:03:39,847.847 INFO    ] No existing commands found in stream
[2026-10-28 00:03:44,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:03:44,870.870 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-28 00:03:49,095.095 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:03:49,098.098 INFO    ] Checking for system updates...
[2026-10-28 00:03:49,133.133 INFO    ] 200
[2026-10-28 00:03:49,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:03:49,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:03:49,193.193 INFO    ] No update needed
[2026-10-28 00:03:49,195.195 INFO    ] Checking for camera pi updates...
[2026-10-28 00:03:49,231.231 INFO    ] 200
[2026-10-28 00:03:49,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:03:49,277.277 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:03:49,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:03:49,389.389 INFO    ] No camera update needed
[2026-10-28 00:03:49,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:03:49,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:03:49,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:03:49,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:03:51,443.443 INFO    ] ================================================
[2026-10-28 00:03:51,459.459 INFO    ] Launching Daemon at Wed Oct 28 00:03:51 IST 2026
[2026-10-28 00:03:51,469.469 INFO    ] ================================================
[2026-10-28 00:03:52,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:03:52
[2026-10-28 00:03:52,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:03:52,929.929 INFO    ] Initializing speech engine...
[2026-10-28 00:03:52,942.942 INFO    ] 2026-10-28 00:03:52
[2026-10-28 00:03:53,205.205 INFO    ] 2026-10-28 00:03:53
[2026-10-28 00:03:53,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:03:53,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:03:53,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:03:53,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:03:53,781.781 INFO    ] time= 28/10/2026 00:03:53
[2026-10-28 00:03:53,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:03:53,828.828 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:03:53,941.941 INFO    ] No existing commands found in stream
[2026-10-28 00:03:58,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:03:58,978.978 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 00:04:01,738.738 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:04:01,741.741 INFO    ] Checking for system updates...
[2026-10-28 00:04:01,781.781 INFO    ] 200
[2026-10-28 00:04:01,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:04:01,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:04:01,845.845 INFO    ] No update needed
[2026-10-28 00:04:01,848.848 INFO    ] Checking for camera pi updates...
[2026-10-28 00:04:01,885.885 INFO    ] 200
[2026-10-28 00:04:01,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:04:02,000.000 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:04:02,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:04:02,125.125 INFO    ] No camera update needed
[2026-10-28 00:04:02,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:04:02,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:04:02,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:04:02,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:04:04,191.191 INFO    ] ================================================
[2026-10-28 00:04:04,206.206 INFO    ] Launching Daemon at Wed Oct 28 00:04:04 IST 2026
[2026-10-28 00:04:04,217.217 INFO    ] ================================================
[2026-10-28 00:04:04,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:04:04
[2026-10-28 00:04:05,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:04:05,638.638 INFO    ] Initializing speech engine...
[2026-10-28 00:04:05,646.646 INFO    ] 2026-10-28 00:04:05
[2026-10-28 00:04:05,939.939 INFO    ] 2026-10-28 00:04:05
[2026-10-28 00:04:05,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:04:06,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:04:06,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:04:06,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:04:06,522.522 INFO    ] time= 28/10/2026 00:04:06
[2026-10-28 00:04:06,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:04:06,561.561 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:04:06,720.720 INFO    ] No existing commands found in stream
[2026-10-28 00:04:11,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:04:11,738.738 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 00:04:14,177.177 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:04:14,180.180 INFO    ] Checking for system updates...
[2026-10-28 00:04:14,216.216 INFO    ] 200
[2026-10-28 00:04:14,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:04:14,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:04:14,278.278 INFO    ] No update needed
[2026-10-28 00:04:14,280.280 INFO    ] Checking for camera pi updates...
[2026-10-28 00:04:14,314.314 INFO    ] 200
[2026-10-28 00:04:14,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:04:14,356.356 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:04:14,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:04:14,446.446 INFO    ] No camera update needed
[2026-10-28 00:04:14,448.448 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:04:14,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:04:14,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:04:14,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:04:16,502.502 INFO    ] ================================================
[2026-10-28 00:04:16,517.517 INFO    ] Launching Daemon at Wed Oct 28 00:04:16 IST 2026
[2026-10-28 00:04:16,528.528 INFO    ] ================================================
[2026-10-28 00:04:17,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:04:17
[2026-10-28 00:04:17,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:04:17,934.934 INFO    ] Initializing speech engine...
[2026-10-28 00:04:17,942.942 INFO    ] 2026-10-28 00:04:17
[2026-10-28 00:04:18,232.232 INFO    ] 2026-10-28 00:04:18
[2026-10-28 00:04:18,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:04:18,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:04:18,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:04:18,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:04:18,755.755 INFO    ] time= 28/10/2026 00:04:18
[2026-10-28 00:04:18,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:04:18,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:04:18,995.995 INFO    ] No existing commands found in stream
[2026-10-28 00:04:24,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:04:24,022.022 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-28 00:04:24,897.897 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:04:24,900.900 INFO    ] Checking for system updates...
[2026-10-28 00:04:24,938.938 INFO    ] 200
[2026-10-28 00:04:24,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:04:24,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:04:24,996.996 INFO    ] No update needed
[2026-10-28 00:04:24,998.998 INFO    ] Checking for camera pi updates...
[2026-10-28 00:04:25,035.035 INFO    ] 200
[2026-10-28 00:04:25,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:04:25,082.082 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:04:25,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:04:25,161.161 INFO    ] No camera update needed
[2026-10-28 00:04:25,164.164 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:04:25,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:04:25,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:04:25,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:04:27,220.220 INFO    ] ================================================
[2026-10-28 00:04:27,236.236 INFO    ] Launching Daemon at Wed Oct 28 00:04:27 IST 2026
[2026-10-28 00:04:27,247.247 INFO    ] ================================================
[2026-10-28 00:04:27,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:04:27
[2026-10-28 00:04:28,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:04:28,831.831 INFO    ] Initializing speech engine...
[2026-10-28 00:04:28,843.843 INFO    ] 2026-10-28 00:04:28
[2026-10-28 00:04:29,155.155 INFO    ] 2026-10-28 00:04:29
[2026-10-28 00:04:29,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:04:29,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:04:29,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:04:29,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:04:29,680.680 INFO    ] time= 28/10/2026 00:04:29
[2026-10-28 00:04:29,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:04:29,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:04:29,841.841 INFO    ] No existing commands found in stream
[2026-10-28 00:04:34,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:04:34,869.869 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 00:04:38,382.382 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:04:38,385.385 INFO    ] Checking for system updates...
[2026-10-28 00:04:38,421.421 INFO    ] 200
[2026-10-28 00:04:38,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:04:38,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:04:38,480.480 INFO    ] No update needed
[2026-10-28 00:04:38,483.483 INFO    ] Checking for camera pi updates...
[2026-10-28 00:04:38,517.517 INFO    ] 200
[2026-10-28 00:04:38,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:04:38,564.564 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:04:38,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:04:38,749.749 INFO    ] No camera update needed
[2026-10-28 00:04:38,752.752 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:04:38,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:04:38,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:04:38,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:04:40,811.811 INFO    ] ================================================
[2026-10-28 00:04:40,830.830 INFO    ] Launching Daemon at Wed Oct 28 00:04:40 IST 2026
[2026-10-28 00:04:40,843.843 INFO    ] ================================================
[2026-10-28 00:04:41,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:04:41
[2026-10-28 00:04:42,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:04:42,300.300 INFO    ] Initializing speech engine...
[2026-10-28 00:04:42,325.325 INFO    ] 2026-10-28 00:04:42
[2026-10-28 00:04:42,598.598 INFO    ] 2026-10-28 00:04:42
[2026-10-28 00:04:42,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:04:42,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:04:42,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:04:43,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:04:43,228.228 INFO    ] time= 28/10/2026 00:04:43
[2026-10-28 00:04:43,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:04:43,258.258 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:04:43,404.404 INFO    ] No existing commands found in stream
[2026-10-28 00:04:48,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:04:48,418.418 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-28 00:04:49,459.459 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:04:49,462.462 INFO    ] Checking for system updates...
[2026-10-28 00:04:49,499.499 INFO    ] 200
[2026-10-28 00:04:49,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:04:49,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:04:49,559.559 INFO    ] No update needed
[2026-10-28 00:04:49,561.561 INFO    ] Checking for camera pi updates...
[2026-10-28 00:04:49,600.600 INFO    ] 200
[2026-10-28 00:04:49,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:04:49,648.648 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:04:49,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:04:49,754.754 INFO    ] No camera update needed
[2026-10-28 00:04:49,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:04:49,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:04:49,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:04:49,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:04:51,814.814 INFO    ] ================================================
[2026-10-28 00:04:51,830.830 INFO    ] Launching Daemon at Wed Oct 28 00:04:51 IST 2026
[2026-10-28 00:04:51,840.840 INFO    ] ================================================
[2026-10-28 00:04:52,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:04:52
[2026-10-28 00:04:52,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:04:53,242.242 INFO    ] Initializing speech engine...
[2026-10-28 00:04:53,248.248 INFO    ] 2026-10-28 00:04:53
[2026-10-28 00:04:53,547.547 INFO    ] 2026-10-28 00:04:53
[2026-10-28 00:04:53,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:04:53,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:04:53,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:04:54,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:04:54,182.182 INFO    ] time= 28/10/2026 00:04:54
[2026-10-28 00:04:54,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:04:54,206.206 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:04:54,323.323 INFO    ] No existing commands found in stream
[2026-10-28 00:04:59,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:04:59,346.346 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 00:05:02,636.636 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:05:02,639.639 INFO    ] Checking for system updates...
[2026-10-28 00:05:02,694.694 INFO    ] 200
[2026-10-28 00:05:02,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:05:02,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:05:02,765.765 INFO    ] No update needed
[2026-10-28 00:05:02,768.768 INFO    ] Checking for camera pi updates...
[2026-10-28 00:05:02,811.811 INFO    ] 200
[2026-10-28 00:05:02,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:05:02,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:05:03,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:05:03,058.058 INFO    ] No camera update needed
[2026-10-28 00:05:03,062.062 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:05:03,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:05:03,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:05:03,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:05:05,128.128 INFO    ] ================================================
[2026-10-28 00:05:05,144.144 INFO    ] Launching Daemon at Wed Oct 28 00:05:05 IST 2026
[2026-10-28 00:05:05,156.156 INFO    ] ================================================
[2026-10-28 00:05:05,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:05:05
[2026-10-28 00:05:06,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:05:06,787.787 INFO    ] Initializing speech engine...
[2026-10-28 00:05:06,795.795 INFO    ] 2026-10-28 00:05:06
[2026-10-28 00:05:07,068.068 INFO    ] 2026-10-28 00:05:07
[2026-10-28 00:05:07,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:05:07,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:05:07,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:05:07,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:05:07,639.639 INFO    ] time= 28/10/2026 00:05:07
[2026-10-28 00:05:07,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:05:07,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:05:07,887.887 INFO    ] No existing commands found in stream
[2026-10-28 00:05:12,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:05:12,911.911 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-28 00:05:14,086.086 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:05:14,089.089 INFO    ] Checking for system updates...
[2026-10-28 00:05:14,129.129 INFO    ] 200
[2026-10-28 00:05:14,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:05:14,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:05:14,186.186 INFO    ] No update needed
[2026-10-28 00:05:14,189.189 INFO    ] Checking for camera pi updates...
[2026-10-28 00:05:14,223.223 INFO    ] 200
[2026-10-28 00:05:14,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:05:14,266.266 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:05:14,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:05:14,372.372 INFO    ] No camera update needed
[2026-10-28 00:05:14,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:05:14,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:05:14,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:05:14,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:05:16,427.427 INFO    ] ================================================
[2026-10-28 00:05:16,441.441 INFO    ] Launching Daemon at Wed Oct 28 00:05:16 IST 2026
[2026-10-28 00:05:16,452.452 INFO    ] ================================================
[2026-10-28 00:05:17,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:05:17
[2026-10-28 00:05:17,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:05:18,087.087 INFO    ] Initializing speech engine...
[2026-10-28 00:05:18,102.102 INFO    ] 2026-10-28 00:05:18
[2026-10-28 00:05:18,410.410 INFO    ] 2026-10-28 00:05:18
[2026-10-28 00:05:18,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:05:18,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:05:18,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:05:18,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:05:18,935.935 INFO    ] time= 28/10/2026 00:05:18
[2026-10-28 00:05:18,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:05:18,972.972 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:05:19,085.085 INFO    ] No existing commands found in stream
[2026-10-28 00:05:24,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:05:24,119.119 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 00:05:26,660.660 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:05:26,663.663 INFO    ] Checking for system updates...
[2026-10-28 00:05:26,699.699 INFO    ] 200
[2026-10-28 00:05:26,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:05:26,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:05:26,761.761 INFO    ] No update needed
[2026-10-28 00:05:26,764.764 INFO    ] Checking for camera pi updates...
[2026-10-28 00:05:26,801.801 INFO    ] 200
[2026-10-28 00:05:26,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:05:26,849.849 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:05:26,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:05:26,952.952 INFO    ] No camera update needed
[2026-10-28 00:05:26,954.954 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:05:26,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:05:26,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:05:26,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:05:29,009.009 INFO    ] ================================================
[2026-10-28 00:05:29,024.024 INFO    ] Launching Daemon at Wed Oct 28 00:05:29 IST 2026
[2026-10-28 00:05:29,035.035 INFO    ] ================================================
[2026-10-28 00:05:29,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:05:29
[2026-10-28 00:05:30,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:05:30,677.677 INFO    ] Initializing speech engine...
[2026-10-28 00:05:30,690.690 INFO    ] 2026-10-28 00:05:30
[2026-10-28 00:05:30,998.998 INFO    ] 2026-10-28 00:05:30
[2026-10-28 00:05:31,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:05:31,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:05:31,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:05:31,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:05:31,660.660 INFO    ] time= 28/10/2026 00:05:31
[2026-10-28 00:05:31,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:05:31,757.757 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:05:31,915.915 INFO    ] No existing commands found in stream
[2026-10-28 00:05:36,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:05:36,956.956 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-28 00:05:41,420.420 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:05:41,422.422 INFO    ] Checking for system updates...
[2026-10-28 00:05:41,464.464 INFO    ] 200
[2026-10-28 00:05:41,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:05:41,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:05:41,527.527 INFO    ] No update needed
[2026-10-28 00:05:41,530.530 INFO    ] Checking for camera pi updates...
[2026-10-28 00:05:41,564.564 INFO    ] 200
[2026-10-28 00:05:41,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:05:41,607.607 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:05:41,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:05:41,716.716 INFO    ] No camera update needed
[2026-10-28 00:05:41,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:05:41,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:05:41,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:05:41,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:05:43,772.772 INFO    ] ================================================
[2026-10-28 00:05:43,787.787 INFO    ] Launching Daemon at Wed Oct 28 00:05:43 IST 2026
[2026-10-28 00:05:43,798.798 INFO    ] ================================================
[2026-10-28 00:05:44,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:05:44
[2026-10-28 00:05:45,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:05:45,266.266 INFO    ] Initializing speech engine...
[2026-10-28 00:05:45,282.282 INFO    ] 2026-10-28 00:05:45
[2026-10-28 00:05:45,538.538 INFO    ] 2026-10-28 00:05:45
[2026-10-28 00:05:45,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:05:45,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:05:45,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:05:46,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:05:46,103.103 INFO    ] time= 28/10/2026 00:05:46
[2026-10-28 00:05:46,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:05:46,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:05:46,271.271 INFO    ] No existing commands found in stream
[2026-10-28 00:05:51,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:05:51,305.305 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-28 00:05:55,818.818 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:05:55,821.821 INFO    ] Checking for system updates...
[2026-10-28 00:05:55,861.861 INFO    ] 200
[2026-10-28 00:05:55,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:05:55,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:05:55,919.919 INFO    ] No update needed
[2026-10-28 00:05:55,922.922 INFO    ] Checking for camera pi updates...
[2026-10-28 00:05:55,959.959 INFO    ] 200
[2026-10-28 00:05:55,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:05:56,007.007 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:05:56,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:05:56,089.089 INFO    ] No camera update needed
[2026-10-28 00:05:56,091.091 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:05:56,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:05:56,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:05:56,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:05:58,144.144 INFO    ] ================================================
[2026-10-28 00:05:58,160.160 INFO    ] Launching Daemon at Wed Oct 28 00:05:58 IST 2026
[2026-10-28 00:05:58,171.171 INFO    ] ================================================
[2026-10-28 00:05:58,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:05:58
[2026-10-28 00:05:59,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:05:59,573.573 INFO    ] Initializing speech engine...
[2026-10-28 00:05:59,579.579 INFO    ] 2026-10-28 00:05:59
[2026-10-28 00:05:59,871.871 INFO    ] 2026-10-28 00:05:59
[2026-10-28 00:05:59,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:06:00,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:06:00,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:06:00,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:06:00,359.359 INFO    ] time= 28/10/2026 00:06:00
[2026-10-28 00:06:00,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:06:00,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:06:00,632.632 INFO    ] No existing commands found in stream
[2026-10-28 00:06:05,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:06:05,652.652 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 00:06:09,818.818 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:06:09,821.821 INFO    ] Checking for system updates...
[2026-10-28 00:06:09,874.874 INFO    ] 200
[2026-10-28 00:06:09,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:06:10,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:06:10,053.053 INFO    ] No update needed
[2026-10-28 00:06:10,055.055 INFO    ] Checking for camera pi updates...
[2026-10-28 00:06:10,094.094 INFO    ] 200
[2026-10-28 00:06:10,097.097 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 00:06:10,099.099 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-28 00:06:10,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:06:10,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:06:10,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:06:10,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:06:12,159.159 INFO    ] ================================================
[2026-10-28 00:06:12,175.175 INFO    ] Launching Daemon at Wed Oct 28 00:06:12 IST 2026
[2026-10-28 00:06:12,187.187 INFO    ] ================================================
[2026-10-28 00:06:12,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:06:12
[2026-10-28 00:06:13,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:06:13,675.675 INFO    ] Initializing speech engine...
[2026-10-28 00:06:13,685.685 INFO    ] 2026-10-28 00:06:13
[2026-10-28 00:06:13,947.947 INFO    ] 2026-10-28 00:06:13
[2026-10-28 00:06:14,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:06:14,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:06:14,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:06:14,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:06:14,490.490 INFO    ] time= 28/10/2026 00:06:14
[2026-10-28 00:06:14,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:06:14,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:06:14,682.682 INFO    ] No existing commands found in stream
[2026-10-28 00:06:19,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:06:19,715.715 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-28 00:06:21,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:06:21,862.862 INFO    ] Checking for system updates...
[2026-10-28 00:06:21,898.898 INFO    ] 200
[2026-10-28 00:06:21,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:06:21,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:06:21,965.965 INFO    ] No update needed
[2026-10-28 00:06:21,967.967 INFO    ] Checking for camera pi updates...
[2026-10-28 00:06:22,004.004 INFO    ] 200
[2026-10-28 00:06:22,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:06:22,050.050 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:06:22,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:06:22,132.132 INFO    ] No camera update needed
[2026-10-28 00:06:22,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:06:22,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:06:22,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:06:22,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:06:24,189.189 INFO    ] ================================================
[2026-10-28 00:06:24,205.205 INFO    ] Launching Daemon at Wed Oct 28 00:06:24 IST 2026
[2026-10-28 00:06:24,216.216 INFO    ] ================================================
[2026-10-28 00:06:24,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:06:24
[2026-10-28 00:06:25,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:06:25,792.792 INFO    ] Initializing speech engine...
[2026-10-28 00:06:25,804.804 INFO    ] 2026-10-28 00:06:25
[2026-10-28 00:06:26,081.081 INFO    ] 2026-10-28 00:06:26
[2026-10-28 00:06:26,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:06:26,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:06:26,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:06:26,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:06:26,778.778 INFO    ] time= 28/10/2026 00:06:26
[2026-10-28 00:06:26,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:06:26,864.864 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:06:27,012.012 INFO    ] No existing commands found in stream
[2026-10-28 00:06:32,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:06:32,040.040 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-28 00:06:36,060.060 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:06:36,063.063 INFO    ] Checking for system updates...
[2026-10-28 00:06:36,103.103 INFO    ] 200
[2026-10-28 00:06:36,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:06:36,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:06:36,167.167 INFO    ] No update needed
[2026-10-28 00:06:36,170.170 INFO    ] Checking for camera pi updates...
[2026-10-28 00:06:36,205.205 INFO    ] 200
[2026-10-28 00:06:36,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:06:36,248.248 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:06:36,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:06:36,324.324 INFO    ] No camera update needed
[2026-10-28 00:06:36,326.326 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:06:36,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:06:36,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:06:36,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:06:38,382.382 INFO    ] ================================================
[2026-10-28 00:06:38,397.397 INFO    ] Launching Daemon at Wed Oct 28 00:06:38 IST 2026
[2026-10-28 00:06:38,408.408 INFO    ] ================================================
[2026-10-28 00:06:38,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:06:38
[2026-10-28 00:06:39,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:06:39,894.894 INFO    ] Initializing speech engine...
[2026-10-28 00:06:39,903.903 INFO    ] 2026-10-28 00:06:39
[2026-10-28 00:06:40,148.148 INFO    ] 2026-10-28 00:06:40
[2026-10-28 00:06:40,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:06:40,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:06:40,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:06:40,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:06:40,746.746 INFO    ] time= 28/10/2026 00:06:40
[2026-10-28 00:06:40,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:06:40,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:06:40,890.890 INFO    ] No existing commands found in stream
[2026-10-28 00:06:45,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:06:45,928.928 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-28 00:06:50,419.419 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:06:50,422.422 INFO    ] Checking for system updates...
[2026-10-28 00:06:50,458.458 INFO    ] 200
[2026-10-28 00:06:50,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:06:50,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:06:50,521.521 INFO    ] No update needed
[2026-10-28 00:06:50,523.523 INFO    ] Checking for camera pi updates...
[2026-10-28 00:06:50,558.558 INFO    ] 200
[2026-10-28 00:06:50,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:06:50,604.604 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:06:50,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:06:50,807.807 INFO    ] No camera update needed
[2026-10-28 00:06:50,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:06:50,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:06:50,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:06:50,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:06:52,864.864 INFO    ] ================================================
[2026-10-28 00:06:52,879.879 INFO    ] Launching Daemon at Wed Oct 28 00:06:52 IST 2026
[2026-10-28 00:06:52,890.890 INFO    ] ================================================
[2026-10-28 00:06:53,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:06:53
[2026-10-28 00:06:54,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:06:54,396.396 INFO    ] Initializing speech engine...
[2026-10-28 00:06:54,403.403 INFO    ] 2026-10-28 00:06:54
[2026-10-28 00:06:54,647.647 INFO    ] 2026-10-28 00:06:54
[2026-10-28 00:06:54,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:06:54,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:06:54,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:06:55,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:06:55,203.203 INFO    ] time= 28/10/2026 00:06:55
[2026-10-28 00:06:55,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:06:55,249.249 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:06:55,375.375 INFO    ] No existing commands found in stream
[2026-10-28 00:07:00,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:07:00,403.403 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-28 00:07:03,360.360 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:07:03,362.362 INFO    ] Checking for system updates...
[2026-10-28 00:07:03,401.401 INFO    ] 200
[2026-10-28 00:07:03,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:07:03,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:07:03,458.458 INFO    ] No update needed
[2026-10-28 00:07:03,460.460 INFO    ] Checking for camera pi updates...
[2026-10-28 00:07:03,494.494 INFO    ] 200
[2026-10-28 00:07:03,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:07:03,541.541 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:07:03,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:07:03,633.633 INFO    ] No camera update needed
[2026-10-28 00:07:03,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:07:03,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:07:03,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:07:03,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:07:05,690.690 INFO    ] ================================================
[2026-10-28 00:07:05,705.705 INFO    ] Launching Daemon at Wed Oct 28 00:07:05 IST 2026
[2026-10-28 00:07:05,716.716 INFO    ] ================================================
[2026-10-28 00:07:06,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:07:06
[2026-10-28 00:07:07,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:07:07,334.334 INFO    ] Initializing speech engine...
[2026-10-28 00:07:07,348.348 INFO    ] 2026-10-28 00:07:07
[2026-10-28 00:07:07,660.660 INFO    ] 2026-10-28 00:07:07
[2026-10-28 00:07:07,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:07:08,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:07:08,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:07:08,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:07:08,357.357 INFO    ] time= 28/10/2026 00:07:08
[2026-10-28 00:07:08,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:07:08,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:07:08,605.605 INFO    ] No existing commands found in stream
[2026-10-28 00:07:13,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:07:13,628.628 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 00:07:15,161.161 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:07:15,164.164 INFO    ] Checking for system updates...
[2026-10-28 00:07:15,200.200 INFO    ] 200
[2026-10-28 00:07:15,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:07:15,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:07:15,265.265 INFO    ] No update needed
[2026-10-28 00:07:15,268.268 INFO    ] Checking for camera pi updates...
[2026-10-28 00:07:15,306.306 INFO    ] 200
[2026-10-28 00:07:15,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:07:15,351.351 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:07:15,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:07:15,450.450 INFO    ] No camera update needed
[2026-10-28 00:07:15,453.453 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:07:15,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:07:15,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:07:15,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:07:17,507.507 INFO    ] ================================================
[2026-10-28 00:07:17,523.523 INFO    ] Launching Daemon at Wed Oct 28 00:07:17 IST 2026
[2026-10-28 00:07:17,533.533 INFO    ] ================================================
[2026-10-28 00:07:18,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:07:18
[2026-10-28 00:07:18,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:07:19,139.139 INFO    ] Initializing speech engine...
[2026-10-28 00:07:19,146.146 INFO    ] 2026-10-28 00:07:19
[2026-10-28 00:07:19,434.434 INFO    ] 2026-10-28 00:07:19
[2026-10-28 00:07:19,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:07:19,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:07:19,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:07:19,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:07:19,985.985 INFO    ] time= 28/10/2026 00:07:19
[2026-10-28 00:07:20,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:07:20,034.034 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:07:20,150.150 INFO    ] No existing commands found in stream
[2026-10-28 00:07:25,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:07:25,189.189 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-28 00:07:27,924.924 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:07:27,927.927 INFO    ] Checking for system updates...
[2026-10-28 00:07:27,962.962 INFO    ] 200
[2026-10-28 00:07:27,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:07:28,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:07:28,020.020 INFO    ] No update needed
[2026-10-28 00:07:28,023.023 INFO    ] Checking for camera pi updates...
[2026-10-28 00:07:28,059.059 INFO    ] 200
[2026-10-28 00:07:28,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:07:28,103.103 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:07:28,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:07:28,177.177 INFO    ] No camera update needed
[2026-10-28 00:07:28,180.180 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:07:28,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:07:28,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:07:28,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:07:30,232.232 INFO    ] ================================================
[2026-10-28 00:07:30,248.248 INFO    ] Launching Daemon at Wed Oct 28 00:07:30 IST 2026
[2026-10-28 00:07:30,259.259 INFO    ] ================================================
[2026-10-28 00:07:30,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:07:30
[2026-10-28 00:07:31,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:07:31,763.763 INFO    ] Initializing speech engine...
[2026-10-28 00:07:31,774.774 INFO    ] 2026-10-28 00:07:31
[2026-10-28 00:07:32,060.060 INFO    ] 2026-10-28 00:07:32
[2026-10-28 00:07:32,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:07:32,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:07:32,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:07:32,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:07:32,597.597 INFO    ] time= 28/10/2026 00:07:32
[2026-10-28 00:07:32,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:07:32,718.718 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:07:32,872.872 INFO    ] No existing commands found in stream
[2026-10-28 00:07:37,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:07:37,888.888 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 00:07:41,597.597 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:07:41,600.600 INFO    ] Checking for system updates...
[2026-10-28 00:07:41,640.640 INFO    ] 200
[2026-10-28 00:07:41,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:07:41,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:07:41,704.704 INFO    ] No update needed
[2026-10-28 00:07:41,707.707 INFO    ] Checking for camera pi updates...
[2026-10-28 00:07:41,743.743 INFO    ] 200
[2026-10-28 00:07:41,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:07:41,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:07:41,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:07:41,878.878 INFO    ] No camera update needed
[2026-10-28 00:07:41,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:07:41,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:07:41,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:07:41,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:07:43,936.936 INFO    ] ================================================
[2026-10-28 00:07:43,952.952 INFO    ] Launching Daemon at Wed Oct 28 00:07:43 IST 2026
[2026-10-28 00:07:43,962.962 INFO    ] ================================================
[2026-10-28 00:07:44,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:07:44
[2026-10-28 00:07:45,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:07:45,618.618 INFO    ] Initializing speech engine...
[2026-10-28 00:07:45,628.628 INFO    ] 2026-10-28 00:07:45
[2026-10-28 00:07:45,905.905 INFO    ] 2026-10-28 00:07:45
[2026-10-28 00:07:45,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:07:46,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:07:46,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:07:46,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:07:46,475.475 INFO    ] time= 28/10/2026 00:07:46
[2026-10-28 00:07:46,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:07:46,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:07:46,654.654 INFO    ] No existing commands found in stream
[2026-10-28 00:07:51,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:07:51,688.688 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-28 00:07:54,061.061 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:07:54,064.064 INFO    ] Checking for system updates...
[2026-10-28 00:07:54,100.100 INFO    ] 200
[2026-10-28 00:07:54,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:07:54,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:07:54,159.159 INFO    ] No update needed
[2026-10-28 00:07:54,162.162 INFO    ] Checking for camera pi updates...
[2026-10-28 00:07:54,200.200 INFO    ] 200
[2026-10-28 00:07:54,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:07:54,248.248 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:07:54,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:07:54,337.337 INFO    ] No camera update needed
[2026-10-28 00:07:54,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:07:54,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:07:54,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:07:54,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:07:56,395.395 INFO    ] ================================================
[2026-10-28 00:07:56,410.410 INFO    ] Launching Daemon at Wed Oct 28 00:07:56 IST 2026
[2026-10-28 00:07:56,421.421 INFO    ] ================================================
[2026-10-28 00:07:56,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:07:56
[2026-10-28 00:07:57,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:07:57,818.818 INFO    ] Initializing speech engine...
[2026-10-28 00:07:57,830.830 INFO    ] 2026-10-28 00:07:57
[2026-10-28 00:07:58,096.096 INFO    ] 2026-10-28 00:07:58
[2026-10-28 00:07:58,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:07:58,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:07:58,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:07:58,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:07:58,663.663 INFO    ] time= 28/10/2026 00:07:58
[2026-10-28 00:07:58,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:07:58,688.688 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:07:58,806.806 INFO    ] No existing commands found in stream
[2026-10-28 00:08:03,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:08:03,831.831 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-28 00:08:04,459.459 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:08:04,462.462 INFO    ] Checking for system updates...
[2026-10-28 00:08:04,502.502 INFO    ] 200
[2026-10-28 00:08:04,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:08:04,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:08:04,568.568 INFO    ] No update needed
[2026-10-28 00:08:04,571.571 INFO    ] Checking for camera pi updates...
[2026-10-28 00:08:04,604.604 INFO    ] 200
[2026-10-28 00:08:04,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:08:04,653.653 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:08:04,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:08:04,732.732 INFO    ] No camera update needed
[2026-10-28 00:08:04,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:08:04,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:08:04,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:08:04,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:08:06,788.788 INFO    ] ================================================
[2026-10-28 00:08:06,804.804 INFO    ] Launching Daemon at Wed Oct 28 00:08:06 IST 2026
[2026-10-28 00:08:06,815.815 INFO    ] ================================================
[2026-10-28 00:08:07,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:08:07
[2026-10-28 00:08:08,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:08:08,495.495 INFO    ] Initializing speech engine...
[2026-10-28 00:08:08,510.510 INFO    ] 2026-10-28 00:08:08
[2026-10-28 00:08:08,787.787 INFO    ] 2026-10-28 00:08:08
[2026-10-28 00:08:08,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:08:09,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:08:09,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:08:09,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:08:09,376.376 INFO    ] time= 28/10/2026 00:08:09
[2026-10-28 00:08:09,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:08:09,418.418 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:08:09,527.527 INFO    ] No existing commands found in stream
[2026-10-28 00:08:14,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:08:14,560.560 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-28 00:08:15,461.461 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:08:15,464.464 INFO    ] Checking for system updates...
[2026-10-28 00:08:15,502.502 INFO    ] 200
[2026-10-28 00:08:15,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:08:15,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:08:15,562.562 INFO    ] No update needed
[2026-10-28 00:08:15,565.565 INFO    ] Checking for camera pi updates...
[2026-10-28 00:08:15,599.599 INFO    ] 200
[2026-10-28 00:08:15,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:08:15,641.641 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:08:15,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:08:15,717.717 INFO    ] No camera update needed
[2026-10-28 00:08:15,720.720 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:08:15,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:08:15,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:08:15,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:08:17,774.774 INFO    ] ================================================
[2026-10-28 00:08:17,789.789 INFO    ] Launching Daemon at Wed Oct 28 00:08:17 IST 2026
[2026-10-28 00:08:17,801.801 INFO    ] ================================================
[2026-10-28 00:08:18,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:08:18
[2026-10-28 00:08:19,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:08:19,467.467 INFO    ] Initializing speech engine...
[2026-10-28 00:08:19,478.478 INFO    ] 2026-10-28 00:08:19
[2026-10-28 00:08:19,743.743 INFO    ] 2026-10-28 00:08:19
[2026-10-28 00:08:19,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:08:20,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:08:20,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:08:20,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:08:20,319.319 INFO    ] time= 28/10/2026 00:08:20
[2026-10-28 00:08:20,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:08:20,367.367 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:08:20,503.503 INFO    ] No existing commands found in stream
[2026-10-28 00:08:25,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:08:25,536.536 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 00:08:28,404.404 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:08:28,407.407 INFO    ] Checking for system updates...
[2026-10-28 00:08:28,442.442 INFO    ] 200
[2026-10-28 00:08:28,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:08:28,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:08:28,500.500 INFO    ] No update needed
[2026-10-28 00:08:28,503.503 INFO    ] Checking for camera pi updates...
[2026-10-28 00:08:28,537.537 INFO    ] 200
[2026-10-28 00:08:28,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:08:28,586.586 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:08:28,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:08:28,678.678 INFO    ] No camera update needed
[2026-10-28 00:08:28,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:08:28,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:08:28,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:08:28,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:08:30,734.734 INFO    ] ================================================
[2026-10-28 00:08:30,749.749 INFO    ] Launching Daemon at Wed Oct 28 00:08:30 IST 2026
[2026-10-28 00:08:30,761.761 INFO    ] ================================================
[2026-10-28 00:08:31,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:08:31
[2026-10-28 00:08:31,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:08:32,222.222 INFO    ] Initializing speech engine...
[2026-10-28 00:08:32,241.241 INFO    ] 2026-10-28 00:08:32
[2026-10-28 00:08:32,508.508 INFO    ] 2026-10-28 00:08:32
[2026-10-28 00:08:32,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:08:32,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:08:32,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:08:33,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:08:33,092.092 INFO    ] time= 28/10/2026 00:08:33
[2026-10-28 00:08:33,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:08:33,134.134 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:08:33,262.262 INFO    ] No existing commands found in stream
[2026-10-28 00:08:38,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:08:38,297.297 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 00:08:41,153.153 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:08:41,156.156 INFO    ] Checking for system updates...
[2026-10-28 00:08:41,194.194 INFO    ] 200
[2026-10-28 00:08:41,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:08:41,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:08:41,261.261 INFO    ] No update needed
[2026-10-28 00:08:41,263.263 INFO    ] Checking for camera pi updates...
[2026-10-28 00:08:41,302.302 INFO    ] 200
[2026-10-28 00:08:41,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:08:41,345.345 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:08:41,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:08:41,451.451 INFO    ] No camera update needed
[2026-10-28 00:08:41,455.455 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:08:41,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:08:41,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:08:41,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:08:43,512.512 INFO    ] ================================================
[2026-10-28 00:08:43,528.528 INFO    ] Launching Daemon at Wed Oct 28 00:08:43 IST 2026
[2026-10-28 00:08:43,538.538 INFO    ] ================================================
[2026-10-28 00:08:44,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:08:44
[2026-10-28 00:08:44,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:08:45,119.119 INFO    ] Initializing speech engine...
[2026-10-28 00:08:45,126.126 INFO    ] 2026-10-28 00:08:45
[2026-10-28 00:08:45,480.480 INFO    ] 2026-10-28 00:08:45
[2026-10-28 00:08:45,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:08:45,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:08:45,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:08:45,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:08:45,939.939 INFO    ] time= 28/10/2026 00:08:45
[2026-10-28 00:08:45,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:08:45,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:08:46,157.157 INFO    ] No existing commands found in stream
[2026-10-28 00:08:51,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:08:51,182.182 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-28 00:08:56,279.279 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:08:56,282.282 INFO    ] Checking for system updates...
[2026-10-28 00:08:56,325.325 INFO    ] 200
[2026-10-28 00:08:56,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:08:56,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:08:56,387.387 INFO    ] No update needed
[2026-10-28 00:08:56,390.390 INFO    ] Checking for camera pi updates...
[2026-10-28 00:08:56,431.431 INFO    ] 200
[2026-10-28 00:08:56,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:08:56,478.478 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:08:56,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:08:56,665.665 INFO    ] No camera update needed
[2026-10-28 00:08:56,668.668 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:08:56,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:08:56,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:08:56,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:08:58,724.724 INFO    ] ================================================
[2026-10-28 00:08:58,740.740 INFO    ] Launching Daemon at Wed Oct 28 00:08:58 IST 2026
[2026-10-28 00:08:58,751.751 INFO    ] ================================================
[2026-10-28 00:08:59,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:08:59
[2026-10-28 00:08:59,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:09:00,210.210 INFO    ] Initializing speech engine...
[2026-10-28 00:09:00,220.220 INFO    ] 2026-10-28 00:09:00
[2026-10-28 00:09:00,469.469 INFO    ] 2026-10-28 00:09:00
[2026-10-28 00:09:00,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:09:00,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:09:00,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:09:01,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:09:01,125.125 INFO    ] time= 28/10/2026 00:09:01
[2026-10-28 00:09:01,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:09:01,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:09:01,312.312 INFO    ] No existing commands found in stream
[2026-10-28 00:09:06,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:09:06,337.337 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-28 00:09:10,239.239 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:09:10,241.241 INFO    ] Checking for system updates...
[2026-10-28 00:09:10,281.281 INFO    ] 200
[2026-10-28 00:09:10,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:09:10,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:09:10,341.341 INFO    ] No update needed
[2026-10-28 00:09:10,344.344 INFO    ] Checking for camera pi updates...
[2026-10-28 00:09:10,382.382 INFO    ] 200
[2026-10-28 00:09:10,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:09:10,431.431 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:09:10,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:09:10,515.515 INFO    ] No camera update needed
[2026-10-28 00:09:10,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:09:10,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:09:10,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:09:10,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:09:12,570.570 INFO    ] ================================================
[2026-10-28 00:09:12,586.586 INFO    ] Launching Daemon at Wed Oct 28 00:09:12 IST 2026
[2026-10-28 00:09:12,597.597 INFO    ] ================================================
[2026-10-28 00:09:13,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:09:13
[2026-10-28 00:09:13,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:09:14,026.026 INFO    ] Initializing speech engine...
[2026-10-28 00:09:14,032.032 INFO    ] 2026-10-28 00:09:14
[2026-10-28 00:09:14,331.331 INFO    ] 2026-10-28 00:09:14
[2026-10-28 00:09:14,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:09:14,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:09:14,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:09:14,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:09:14,853.853 INFO    ] time= 28/10/2026 00:09:14
[2026-10-28 00:09:14,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:09:14,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:09:15,052.052 INFO    ] No existing commands found in stream
[2026-10-28 00:09:20,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:09:20,064.064 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-28 00:09:22,264.264 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:09:22,267.267 INFO    ] Checking for system updates...
[2026-10-28 00:09:22,302.302 INFO    ] 200
[2026-10-28 00:09:22,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:09:22,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:09:22,371.371 INFO    ] No update needed
[2026-10-28 00:09:22,373.373 INFO    ] Checking for camera pi updates...
[2026-10-28 00:09:22,407.407 INFO    ] 200
[2026-10-28 00:09:22,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:09:22,451.451 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:09:22,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:09:22,549.549 INFO    ] No camera update needed
[2026-10-28 00:09:22,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:09:22,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:09:22,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:09:22,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:09:24,605.605 INFO    ] ================================================
[2026-10-28 00:09:24,621.621 INFO    ] Launching Daemon at Wed Oct 28 00:09:24 IST 2026
[2026-10-28 00:09:24,632.632 INFO    ] ================================================
[2026-10-28 00:09:25,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:09:25
[2026-10-28 00:09:25,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:09:26,085.085 INFO    ] Initializing speech engine...
[2026-10-28 00:09:26,092.092 INFO    ] 2026-10-28 00:09:26
[2026-10-28 00:09:26,370.370 INFO    ] 2026-10-28 00:09:26
[2026-10-28 00:09:26,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:09:26,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:09:26,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:09:26,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:09:26,952.952 INFO    ] time= 28/10/2026 00:09:26
[2026-10-28 00:09:26,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:09:26,999.999 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:09:27,135.135 INFO    ] No existing commands found in stream
[2026-10-28 00:09:32,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:09:32,168.168 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-28 00:09:35,110.110 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:09:35,113.113 INFO    ] Checking for system updates...
[2026-10-28 00:09:35,148.148 INFO    ] 200
[2026-10-28 00:09:35,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:09:35,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:09:35,214.214 INFO    ] No update needed
[2026-10-28 00:09:35,216.216 INFO    ] Checking for camera pi updates...
[2026-10-28 00:09:35,250.250 INFO    ] 200
[2026-10-28 00:09:35,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:09:35,299.299 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:09:35,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:09:35,372.372 INFO    ] No camera update needed
[2026-10-28 00:09:35,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:09:35,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:09:35,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:09:35,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:09:37,426.426 INFO    ] ================================================
[2026-10-28 00:09:37,442.442 INFO    ] Launching Daemon at Wed Oct 28 00:09:37 IST 2026
[2026-10-28 00:09:37,452.452 INFO    ] ================================================
[2026-10-28 00:09:38,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:09:38
[2026-10-28 00:09:38,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:09:38,935.935 INFO    ] Initializing speech engine...
[2026-10-28 00:09:38,948.948 INFO    ] 2026-10-28 00:09:38
[2026-10-28 00:09:39,213.213 INFO    ] 2026-10-28 00:09:39
[2026-10-28 00:09:39,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:09:39,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:09:39,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:09:39,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:09:39,737.737 INFO    ] time= 28/10/2026 00:09:39
[2026-10-28 00:09:39,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:09:39,790.790 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:09:39,939.939 INFO    ] No existing commands found in stream
[2026-10-28 00:09:44,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:09:44,954.954 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-28 00:09:46,738.738 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:09:46,740.740 INFO    ] Checking for system updates...
[2026-10-28 00:09:46,776.776 INFO    ] 200
[2026-10-28 00:09:46,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:09:46,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:09:46,849.849 INFO    ] No update needed
[2026-10-28 00:09:46,851.851 INFO    ] Checking for camera pi updates...
[2026-10-28 00:09:46,885.885 INFO    ] 200
[2026-10-28 00:09:46,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:09:46,935.935 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:09:47,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:09:47,035.035 INFO    ] No camera update needed
[2026-10-28 00:09:47,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:09:47,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:09:47,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:09:47,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:09:49,091.091 INFO    ] ================================================
[2026-10-28 00:09:49,107.107 INFO    ] Launching Daemon at Wed Oct 28 00:09:49 IST 2026
[2026-10-28 00:09:49,118.118 INFO    ] ================================================
[2026-10-28 00:09:49,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:09:49
[2026-10-28 00:09:50,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:09:50,578.578 INFO    ] Initializing speech engine...
[2026-10-28 00:09:50,588.588 INFO    ] 2026-10-28 00:09:50
[2026-10-28 00:09:50,850.850 INFO    ] 2026-10-28 00:09:50
[2026-10-28 00:09:50,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:09:51,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:09:51,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:09:51,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:09:51,407.407 INFO    ] time= 28/10/2026 00:09:51
[2026-10-28 00:09:51,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:09:51,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:09:51,578.578 INFO    ] No existing commands found in stream
[2026-10-28 00:09:56,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:09:56,611.611 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-28 00:09:58,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:09:58,083.083 INFO    ] Checking for system updates...
[2026-10-28 00:09:58,126.126 INFO    ] 200
[2026-10-28 00:09:58,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:09:58,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:09:58,185.185 INFO    ] No update needed
[2026-10-28 00:09:58,188.188 INFO    ] Checking for camera pi updates...
[2026-10-28 00:09:58,226.226 INFO    ] 200
[2026-10-28 00:09:58,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:09:58,271.271 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:09:58,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:09:58,376.376 INFO    ] No camera update needed
[2026-10-28 00:09:58,379.379 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:09:58,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:09:58,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:09:58,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:10:00,435.435 INFO    ] ================================================
[2026-10-28 00:10:00,450.450 INFO    ] Launching Daemon at Wed Oct 28 00:10:00 IST 2026
[2026-10-28 00:10:00,461.461 INFO    ] ================================================
[2026-10-28 00:10:01,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:10:01
[2026-10-28 00:10:01,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:10:02,683.683 INFO    ] Initializing speech engine...
[2026-10-28 00:10:02,697.697 INFO    ] 2026-10-28 00:10:02
[2026-10-28 00:10:03,053.053 INFO    ] 2026-10-28 00:10:03
[2026-10-28 00:10:03,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:10:03,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:10:03,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:10:03,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:10:03,542.542 INFO    ] time= 28/10/2026 00:10:03
[2026-10-28 00:10:03,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:10:03,611.611 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:10:03,716.716 INFO    ] No existing commands found in stream
[2026-10-28 00:10:08,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:10:08,729.729 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-28 00:10:12,725.725 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:10:12,727.727 INFO    ] Checking for system updates...
[2026-10-28 00:10:12,767.767 INFO    ] 200
[2026-10-28 00:10:12,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:10:12,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:10:12,825.825 INFO    ] No update needed
[2026-10-28 00:10:12,827.827 INFO    ] Checking for camera pi updates...
[2026-10-28 00:10:12,861.861 INFO    ] 200
[2026-10-28 00:10:12,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:10:12,910.910 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:10:12,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:10:12,992.992 INFO    ] No camera update needed
[2026-10-28 00:10:12,995.995 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:10:12,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:10:13,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:10:13,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:10:15,048.048 INFO    ] ================================================
[2026-10-28 00:10:15,063.063 INFO    ] Launching Daemon at Wed Oct 28 00:10:15 IST 2026
[2026-10-28 00:10:15,074.074 INFO    ] ================================================
[2026-10-28 00:10:15,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:10:15
[2026-10-28 00:10:16,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:10:16,517.517 INFO    ] Initializing speech engine...
[2026-10-28 00:10:16,542.542 INFO    ] 2026-10-28 00:10:16
[2026-10-28 00:10:16,818.818 INFO    ] 2026-10-28 00:10:16
[2026-10-28 00:10:16,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:10:17,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:10:17,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:10:17,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:10:17,245.245 INFO    ] time= 28/10/2026 00:10:17
[2026-10-28 00:10:17,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:10:17,280.280 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:10:17,422.422 INFO    ] No existing commands found in stream
[2026-10-28 00:10:22,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:10:22,450.450 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 00:10:26,042.042 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:10:26,045.045 INFO    ] Checking for system updates...
[2026-10-28 00:10:26,086.086 INFO    ] 200
[2026-10-28 00:10:26,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:10:26,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:10:26,152.152 INFO    ] No update needed
[2026-10-28 00:10:26,155.155 INFO    ] Checking for camera pi updates...
[2026-10-28 00:10:26,189.189 INFO    ] 200
[2026-10-28 00:10:26,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:10:26,234.234 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:10:26,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:10:26,322.322 INFO    ] No camera update needed
[2026-10-28 00:10:26,324.324 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:10:26,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:10:26,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:10:26,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:10:28,378.378 INFO    ] ================================================
[2026-10-28 00:10:28,392.392 INFO    ] Launching Daemon at Wed Oct 28 00:10:28 IST 2026
[2026-10-28 00:10:28,403.403 INFO    ] ================================================
[2026-10-28 00:10:28,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:10:28
[2026-10-28 00:10:29,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:10:29,866.866 INFO    ] Initializing speech engine...
[2026-10-28 00:10:29,872.872 INFO    ] 2026-10-28 00:10:29
[2026-10-28 00:10:30,118.118 INFO    ] 2026-10-28 00:10:30
[2026-10-28 00:10:30,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:10:30,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:10:30,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:10:30,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:10:30,675.675 INFO    ] time= 28/10/2026 00:10:30
[2026-10-28 00:10:30,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:10:30,698.698 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:10:30,823.823 INFO    ] No existing commands found in stream
[2026-10-28 00:10:35,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:10:35,842.842 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 00:10:39,805.805 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:10:39,807.807 INFO    ] Checking for system updates...
[2026-10-28 00:10:39,843.843 INFO    ] 200
[2026-10-28 00:10:39,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:10:39,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:10:39,902.902 INFO    ] No update needed
[2026-10-28 00:10:39,905.905 INFO    ] Checking for camera pi updates...
[2026-10-28 00:10:39,939.939 INFO    ] 200
[2026-10-28 00:10:39,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:10:39,990.990 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:10:40,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:10:40,064.064 INFO    ] No camera update needed
[2026-10-28 00:10:40,066.066 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:10:40,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:10:40,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:10:40,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:10:42,123.123 INFO    ] ================================================
[2026-10-28 00:10:42,138.138 INFO    ] Launching Daemon at Wed Oct 28 00:10:42 IST 2026
[2026-10-28 00:10:42,149.149 INFO    ] ================================================
[2026-10-28 00:10:42,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:10:42
[2026-10-28 00:10:43,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:10:43,695.695 INFO    ] Initializing speech engine...
[2026-10-28 00:10:43,704.704 INFO    ] 2026-10-28 00:10:43
[2026-10-28 00:10:43,999.999 INFO    ] 2026-10-28 00:10:43
[2026-10-28 00:10:44,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:10:44,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:10:44,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:10:44,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:10:44,502.502 INFO    ] time= 28/10/2026 00:10:44
[2026-10-28 00:10:44,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:10:44,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:10:44,707.707 INFO    ] No existing commands found in stream
[2026-10-28 00:10:49,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:10:49,722.722 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-28 00:10:51,036.036 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:10:51,038.038 INFO    ] Checking for system updates...
[2026-10-28 00:10:51,074.074 INFO    ] 200
[2026-10-28 00:10:51,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:10:51,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:10:51,140.140 INFO    ] No update needed
[2026-10-28 00:10:51,142.142 INFO    ] Checking for camera pi updates...
[2026-10-28 00:10:51,176.176 INFO    ] 200
[2026-10-28 00:10:51,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:10:51,220.220 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:10:51,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:10:51,319.319 INFO    ] No camera update needed
[2026-10-28 00:10:51,321.321 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:10:51,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:10:51,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:10:51,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:10:53,376.376 INFO    ] ================================================
[2026-10-28 00:10:53,391.391 INFO    ] Launching Daemon at Wed Oct 28 00:10:53 IST 2026
[2026-10-28 00:10:53,402.402 INFO    ] ================================================
[2026-10-28 00:10:53,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:10:53
[2026-10-28 00:10:54,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:10:54,868.868 INFO    ] Initializing speech engine...
[2026-10-28 00:10:54,876.876 INFO    ] 2026-10-28 00:10:54
[2026-10-28 00:10:55,187.187 INFO    ] 2026-10-28 00:10:55
[2026-10-28 00:10:55,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:10:55,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:10:55,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:10:55,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:10:55,686.686 INFO    ] time= 28/10/2026 00:10:55
[2026-10-28 00:10:55,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:10:55,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:10:55,892.892 INFO    ] No existing commands found in stream
[2026-10-28 00:11:00,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:11:00,907.907 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-28 00:11:04,960.960 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:11:04,963.963 INFO    ] Checking for system updates...
[2026-10-28 00:11:05,002.002 INFO    ] 200
[2026-10-28 00:11:05,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:11:05,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:11:05,073.073 INFO    ] No update needed
[2026-10-28 00:11:05,076.076 INFO    ] Checking for camera pi updates...
[2026-10-28 00:11:05,112.112 INFO    ] 200
[2026-10-28 00:11:05,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:11:05,156.156 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:11:05,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:11:05,264.264 INFO    ] No camera update needed
[2026-10-28 00:11:05,266.266 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:11:05,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:11:05,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:11:05,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:11:07,318.318 INFO    ] ================================================
[2026-10-28 00:11:07,334.334 INFO    ] Launching Daemon at Wed Oct 28 00:11:07 IST 2026
[2026-10-28 00:11:07,345.345 INFO    ] ================================================
[2026-10-28 00:11:07,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:11:07
[2026-10-28 00:11:08,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:11:08,953.953 INFO    ] Initializing speech engine...
[2026-10-28 00:11:08,967.967 INFO    ] 2026-10-28 00:11:08
[2026-10-28 00:11:09,275.275 INFO    ] 2026-10-28 00:11:09
[2026-10-28 00:11:09,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:11:09,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:11:09,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:11:09,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:11:09,793.793 INFO    ] time= 28/10/2026 00:11:09
[2026-10-28 00:11:09,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:11:09,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:11:09,961.961 INFO    ] No existing commands found in stream
[2026-10-28 00:11:14,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:11:14,990.990 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-28 00:11:19,444.444 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:11:19,448.448 INFO    ] Checking for system updates...
[2026-10-28 00:11:19,487.487 INFO    ] 200
[2026-10-28 00:11:19,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:11:19,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:11:19,546.546 INFO    ] No update needed
[2026-10-28 00:11:19,548.548 INFO    ] Checking for camera pi updates...
[2026-10-28 00:11:19,583.583 INFO    ] 200
[2026-10-28 00:11:19,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:11:19,631.631 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:11:19,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:11:19,721.721 INFO    ] No camera update needed
[2026-10-28 00:11:19,724.724 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:11:19,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:11:19,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:11:19,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:11:21,781.781 INFO    ] ================================================
[2026-10-28 00:11:21,796.796 INFO    ] Launching Daemon at Wed Oct 28 00:11:21 IST 2026
[2026-10-28 00:11:21,806.806 INFO    ] ================================================
[2026-10-28 00:11:22,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:11:22
[2026-10-28 00:11:22,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:11:23,209.209 INFO    ] Initializing speech engine...
[2026-10-28 00:11:23,216.216 INFO    ] 2026-10-28 00:11:23
[2026-10-28 00:11:23,507.507 INFO    ] 2026-10-28 00:11:23
[2026-10-28 00:11:23,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:11:23,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:11:23,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:11:23,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:11:24,009.009 INFO    ] time= 28/10/2026 00:11:23
[2026-10-28 00:11:24,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:11:24,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:11:24,267.267 INFO    ] No existing commands found in stream
[2026-10-28 00:11:29,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:11:29,292.292 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-28 00:11:32,561.561 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:11:32,564.564 INFO    ] Checking for system updates...
[2026-10-28 00:11:32,604.604 INFO    ] 200
[2026-10-28 00:11:32,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:11:32,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:11:32,664.664 INFO    ] No update needed
[2026-10-28 00:11:32,667.667 INFO    ] Checking for camera pi updates...
[2026-10-28 00:11:32,705.705 INFO    ] 200
[2026-10-28 00:11:32,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:11:32,753.753 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:11:32,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:11:32,883.883 INFO    ] No camera update needed
[2026-10-28 00:11:32,886.886 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:11:32,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:11:32,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:11:32,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:11:34,941.941 INFO    ] ================================================
[2026-10-28 00:11:34,956.956 INFO    ] Launching Daemon at Wed Oct 28 00:11:34 IST 2026
[2026-10-28 00:11:34,967.967 INFO    ] ================================================
[2026-10-28 00:11:35,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:11:35
[2026-10-28 00:11:36,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:11:36,379.379 INFO    ] Initializing speech engine...
[2026-10-28 00:11:36,386.386 INFO    ] 2026-10-28 00:11:36
[2026-10-28 00:11:36,679.679 INFO    ] 2026-10-28 00:11:36
[2026-10-28 00:11:36,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:11:36,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:11:37,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:11:37,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:11:37,311.311 INFO    ] time= 28/10/2026 00:11:37
[2026-10-28 00:11:37,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:11:37,321.321 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:11:37,457.457 INFO    ] No existing commands found in stream
[2026-10-28 00:11:42,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:11:42,485.485 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-28 00:11:45,060.060 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:11:45,062.062 INFO    ] Checking for system updates...
[2026-10-28 00:11:45,101.101 INFO    ] 200
[2026-10-28 00:11:45,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:11:45,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:11:45,165.165 INFO    ] No update needed
[2026-10-28 00:11:45,167.167 INFO    ] Checking for camera pi updates...
[2026-10-28 00:11:45,204.204 INFO    ] 200
[2026-10-28 00:11:45,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:11:45,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:11:45,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:11:45,349.349 INFO    ] No camera update needed
[2026-10-28 00:11:45,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:11:45,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:11:45,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:11:45,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:11:47,404.404 INFO    ] ================================================
[2026-10-28 00:11:47,420.420 INFO    ] Launching Daemon at Wed Oct 28 00:11:47 IST 2026
[2026-10-28 00:11:47,431.431 INFO    ] ================================================
[2026-10-28 00:11:48,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:11:48
[2026-10-28 00:11:48,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:11:49,060.060 INFO    ] Initializing speech engine...
[2026-10-28 00:11:49,070.070 INFO    ] 2026-10-28 00:11:49
[2026-10-28 00:11:49,384.384 INFO    ] 2026-10-28 00:11:49
[2026-10-28 00:11:49,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:11:49,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:11:49,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:11:50,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:11:50,055.055 INFO    ] time= 28/10/2026 00:11:50
[2026-10-28 00:11:50,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:11:50,131.131 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:11:50,277.277 INFO    ] No existing commands found in stream
[2026-10-28 00:11:55,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:11:55,296.296 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-28 00:11:56,340.340 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:11:56,343.343 INFO    ] Checking for system updates...
[2026-10-28 00:11:56,380.380 INFO    ] 200
[2026-10-28 00:11:56,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:11:56,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:11:56,439.439 INFO    ] No update needed
[2026-10-28 00:11:56,442.442 INFO    ] Checking for camera pi updates...
[2026-10-28 00:11:56,476.476 INFO    ] 200
[2026-10-28 00:11:56,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:11:56,520.520 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:11:56,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:11:56,606.606 INFO    ] No camera update needed
[2026-10-28 00:11:56,609.609 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:11:56,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:11:56,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:11:56,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:11:58,665.665 INFO    ] ================================================
[2026-10-28 00:11:58,681.681 INFO    ] Launching Daemon at Wed Oct 28 00:11:58 IST 2026
[2026-10-28 00:11:58,692.692 INFO    ] ================================================
[2026-10-28 00:11:59,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:11:59
[2026-10-28 00:12:00,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:12:00,335.335 INFO    ] Initializing speech engine...
[2026-10-28 00:12:00,343.343 INFO    ] 2026-10-28 00:12:00
[2026-10-28 00:12:00,663.663 INFO    ] 2026-10-28 00:12:00
[2026-10-28 00:12:00,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:12:01,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:12:01,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:12:01,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:12:01,400.400 INFO    ] time= 28/10/2026 00:12:01
[2026-10-28 00:12:01,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:12:01,439.439 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:12:01,610.610 INFO    ] No existing commands found in stream
[2026-10-28 00:12:06,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:12:06,625.625 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-28 00:12:07,882.882 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:12:07,885.885 INFO    ] Checking for system updates...
[2026-10-28 00:12:07,923.923 INFO    ] 200
[2026-10-28 00:12:07,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:12:07,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:12:07,982.982 INFO    ] No update needed
[2026-10-28 00:12:07,985.985 INFO    ] Checking for camera pi updates...
[2026-10-28 00:12:08,020.020 INFO    ] 200
[2026-10-28 00:12:08,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:12:08,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:12:08,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:12:08,183.183 INFO    ] No camera update needed
[2026-10-28 00:12:08,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:12:08,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:12:08,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:12:08,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:12:10,242.242 INFO    ] ================================================
[2026-10-28 00:12:10,258.258 INFO    ] Launching Daemon at Wed Oct 28 00:12:10 IST 2026
[2026-10-28 00:12:10,269.269 INFO    ] ================================================
[2026-10-28 00:12:10,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:12:10
[2026-10-28 00:12:11,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:12:11,712.712 INFO    ] Initializing speech engine...
[2026-10-28 00:12:11,722.722 INFO    ] 2026-10-28 00:12:11
[2026-10-28 00:12:11,983.983 INFO    ] 2026-10-28 00:12:11
[2026-10-28 00:12:12,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:12:12,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:12:12,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:12:12,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:12:12,526.526 INFO    ] time= 28/10/2026 00:12:12
[2026-10-28 00:12:12,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:12:12,550.550 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:12:12,679.679 INFO    ] No existing commands found in stream
[2026-10-28 00:12:17,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:12:17,705.705 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-28 00:12:21,823.823 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:12:21,825.825 INFO    ] Checking for system updates...
[2026-10-28 00:12:21,866.866 INFO    ] 200
[2026-10-28 00:12:21,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:12:21,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:12:21,932.932 INFO    ] No update needed
[2026-10-28 00:12:21,934.934 INFO    ] Checking for camera pi updates...
[2026-10-28 00:12:21,968.968 INFO    ] 200
[2026-10-28 00:12:21,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:12:22,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:12:22,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:12:22,095.095 INFO    ] No camera update needed
[2026-10-28 00:12:22,097.097 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:12:22,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:12:22,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:12:22,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:12:24,151.151 INFO    ] ================================================
[2026-10-28 00:12:24,167.167 INFO    ] Launching Daemon at Wed Oct 28 00:12:24 IST 2026
[2026-10-28 00:12:24,178.178 INFO    ] ================================================
[2026-10-28 00:12:24,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:12:24
[2026-10-28 00:12:25,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:12:25,856.856 INFO    ] Initializing speech engine...
[2026-10-28 00:12:25,870.870 INFO    ] 2026-10-28 00:12:25
[2026-10-28 00:12:26,186.186 INFO    ] 2026-10-28 00:12:26
[2026-10-28 00:12:26,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:12:26,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:12:26,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:12:26,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:12:26,704.704 INFO    ] time= 28/10/2026 00:12:26
[2026-10-28 00:12:26,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:12:26,752.752 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:12:26,868.868 INFO    ] No existing commands found in stream
[2026-10-28 00:12:31,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:12:31,902.902 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-28 00:12:34,926.926 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:12:34,929.929 INFO    ] Checking for system updates...
[2026-10-28 00:12:34,967.967 INFO    ] 200
[2026-10-28 00:12:34,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:12:35,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:12:35,026.026 INFO    ] No update needed
[2026-10-28 00:12:35,029.029 INFO    ] Checking for camera pi updates...
[2026-10-28 00:12:35,064.064 INFO    ] 200
[2026-10-28 00:12:35,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:12:35,108.108 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:12:35,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:12:35,216.216 INFO    ] No camera update needed
[2026-10-28 00:12:35,219.219 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:12:35,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:12:35,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:12:35,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:12:37,278.278 INFO    ] ================================================
[2026-10-28 00:12:37,295.295 INFO    ] Launching Daemon at Wed Oct 28 00:12:37 IST 2026
[2026-10-28 00:12:37,307.307 INFO    ] ================================================
[2026-10-28 00:12:38,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:12:38
[2026-10-28 00:12:38,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:12:39,026.026 INFO    ] Initializing speech engine...
[2026-10-28 00:12:39,037.037 INFO    ] 2026-10-28 00:12:39
[2026-10-28 00:12:39,359.359 INFO    ] 2026-10-28 00:12:39
[2026-10-28 00:12:39,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:12:39,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:12:39,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:12:39,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:12:39,922.922 INFO    ] time= 28/10/2026 00:12:39
[2026-10-28 00:12:39,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:12:39,943.943 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:12:40,072.072 INFO    ] No existing commands found in stream
[2026-10-28 00:12:45,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:12:45,107.107 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-28 00:12:48,142.142 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:12:48,145.145 INFO    ] Checking for system updates...
[2026-10-28 00:12:48,181.181 INFO    ] 200
[2026-10-28 00:12:48,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:12:48,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:12:48,239.239 INFO    ] No update needed
[2026-10-28 00:12:48,241.241 INFO    ] Checking for camera pi updates...
[2026-10-28 00:12:48,274.274 INFO    ] 200
[2026-10-28 00:12:48,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:12:48,317.317 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:12:48,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:12:48,422.422 INFO    ] No camera update needed
[2026-10-28 00:12:48,424.424 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:12:48,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:12:48,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:12:48,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:12:50,477.477 INFO    ] ================================================
[2026-10-28 00:12:50,493.493 INFO    ] Launching Daemon at Wed Oct 28 00:12:50 IST 2026
[2026-10-28 00:12:50,504.504 INFO    ] ================================================
[2026-10-28 00:12:51,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:12:51
[2026-10-28 00:12:51,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:12:52,187.187 INFO    ] Initializing speech engine...
[2026-10-28 00:12:52,200.200 INFO    ] 2026-10-28 00:12:52
[2026-10-28 00:12:52,490.490 INFO    ] 2026-10-28 00:12:52
[2026-10-28 00:12:52,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:12:52,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:12:52,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:12:53,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:12:53,200.200 INFO    ] time= 28/10/2026 00:12:53
[2026-10-28 00:12:53,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:12:53,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:12:53,424.424 INFO    ] No existing commands found in stream
[2026-10-28 00:12:58,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:12:58,461.461 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-28 00:12:59,422.422 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:12:59,425.425 INFO    ] Checking for system updates...
[2026-10-28 00:12:59,463.463 INFO    ] 200
[2026-10-28 00:12:59,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:12:59,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:12:59,526.526 INFO    ] No update needed
[2026-10-28 00:12:59,529.529 INFO    ] Checking for camera pi updates...
[2026-10-28 00:12:59,563.563 INFO    ] 200
[2026-10-28 00:12:59,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:12:59,610.610 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:12:59,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:12:59,718.718 INFO    ] No camera update needed
[2026-10-28 00:12:59,721.721 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:12:59,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:12:59,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:12:59,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:13:01,797.797 INFO    ] ================================================
[2026-10-28 00:13:01,830.830 INFO    ] Launching Daemon at Wed Oct 28 00:13:01 IST 2026
[2026-10-28 00:13:01,863.863 INFO    ] ================================================
[2026-10-28 00:13:02,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:13:02
[2026-10-28 00:13:03,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:13:03,517.517 INFO    ] Initializing speech engine...
[2026-10-28 00:13:03,527.527 INFO    ] 2026-10-28 00:13:03
[2026-10-28 00:13:03,807.807 INFO    ] 2026-10-28 00:13:03
[2026-10-28 00:13:03,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:13:04,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:13:04,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:13:04,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:13:04,354.354 INFO    ] time= 28/10/2026 00:13:04
[2026-10-28 00:13:04,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:13:04,401.401 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:13:04,507.507 INFO    ] No existing commands found in stream
[2026-10-28 00:13:09,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:13:09,525.525 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-28 00:13:14,020.020 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:13:14,023.023 INFO    ] Checking for system updates...
[2026-10-28 00:13:14,060.060 INFO    ] 200
[2026-10-28 00:13:14,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:13:14,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:13:14,119.119 INFO    ] No update needed
[2026-10-28 00:13:14,122.122 INFO    ] Checking for camera pi updates...
[2026-10-28 00:13:14,156.156 INFO    ] 200
[2026-10-28 00:13:14,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:13:14,201.201 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:13:14,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:13:14,385.385 INFO    ] No camera update needed
[2026-10-28 00:13:14,388.388 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:13:14,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:13:14,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:13:14,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:13:16,446.446 INFO    ] ================================================
[2026-10-28 00:13:16,461.461 INFO    ] Launching Daemon at Wed Oct 28 00:13:16 IST 2026
[2026-10-28 00:13:16,471.471 INFO    ] ================================================
[2026-10-28 00:13:17,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:13:17
[2026-10-28 00:13:17,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:13:17,999.999 INFO    ] Initializing speech engine...
[2026-10-28 00:13:18,011.011 INFO    ] 2026-10-28 00:13:18
[2026-10-28 00:13:18,324.324 INFO    ] 2026-10-28 00:13:18
[2026-10-28 00:13:18,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:13:18,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:13:18,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:13:18,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:13:18,999.999 INFO    ] time= 28/10/2026 00:13:18
[2026-10-28 00:13:19,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:13:19,106.106 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:13:19,277.277 INFO    ] No existing commands found in stream
[2026-10-28 00:13:24,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:13:24,292.292 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-28 00:13:26,408.408 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:13:26,412.412 INFO    ] Checking for system updates...
[2026-10-28 00:13:26,450.450 INFO    ] 200
[2026-10-28 00:13:26,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:13:26,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:13:26,510.510 INFO    ] No update needed
[2026-10-28 00:13:26,513.513 INFO    ] Checking for camera pi updates...
[2026-10-28 00:13:26,550.550 INFO    ] 200
[2026-10-28 00:13:26,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:13:26,600.600 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:13:26,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:13:26,675.675 INFO    ] No camera update needed
[2026-10-28 00:13:26,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:13:26,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:13:26,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:13:26,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:13:28,736.736 INFO    ] ================================================
[2026-10-28 00:13:28,751.751 INFO    ] Launching Daemon at Wed Oct 28 00:13:28 IST 2026
[2026-10-28 00:13:28,762.762 INFO    ] ================================================
[2026-10-28 00:13:29,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:13:29
[2026-10-28 00:13:29,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:13:30,237.237 INFO    ] Initializing speech engine...
[2026-10-28 00:13:30,246.246 INFO    ] 2026-10-28 00:13:30
[2026-10-28 00:13:30,507.507 INFO    ] 2026-10-28 00:13:30
[2026-10-28 00:13:30,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:13:30,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:13:30,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:13:31,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:13:31,076.076 INFO    ] time= 28/10/2026 00:13:31
[2026-10-28 00:13:31,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:13:31,102.102 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:13:31,232.232 INFO    ] No existing commands found in stream
[2026-10-28 00:13:36,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:13:36,248.248 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-28 00:13:38,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:13:38,102.102 INFO    ] Checking for system updates...
[2026-10-28 00:13:38,142.142 INFO    ] 200
[2026-10-28 00:13:38,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:13:38,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:13:38,200.200 INFO    ] No update needed
[2026-10-28 00:13:38,202.202 INFO    ] Checking for camera pi updates...
[2026-10-28 00:13:38,236.236 INFO    ] 200
[2026-10-28 00:13:38,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:13:38,285.285 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:13:38,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:13:38,381.381 INFO    ] No camera update needed
[2026-10-28 00:13:38,383.383 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:13:38,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:13:38,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:13:38,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:13:40,437.437 INFO    ] ================================================
[2026-10-28 00:13:40,453.453 INFO    ] Launching Daemon at Wed Oct 28 00:13:40 IST 2026
[2026-10-28 00:13:40,464.464 INFO    ] ================================================
[2026-10-28 00:13:41,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:13:41
[2026-10-28 00:13:41,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:13:42,134.134 INFO    ] Initializing speech engine...
[2026-10-28 00:13:42,146.146 INFO    ] 2026-10-28 00:13:42
[2026-10-28 00:13:42,425.425 INFO    ] 2026-10-28 00:13:42
[2026-10-28 00:13:42,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:13:42,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:13:42,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:13:42,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:13:43,009.009 INFO    ] time= 28/10/2026 00:13:42
[2026-10-28 00:13:43,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:13:43,045.045 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:13:43,180.180 INFO    ] No existing commands found in stream
[2026-10-28 00:13:48,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:13:48,209.209 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-28 00:13:50,762.762 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:13:50,765.765 INFO    ] Checking for system updates...
[2026-10-28 00:13:50,806.806 INFO    ] 200
[2026-10-28 00:13:50,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:13:50,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:13:50,870.870 INFO    ] No update needed
[2026-10-28 00:13:50,873.873 INFO    ] Checking for camera pi updates...
[2026-10-28 00:13:50,908.908 INFO    ] 200
[2026-10-28 00:13:50,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:13:50,952.952 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:13:51,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:13:51,038.038 INFO    ] No camera update needed
[2026-10-28 00:13:51,041.041 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:13:51,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:13:51,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:13:51,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:13:53,100.100 INFO    ] ================================================
[2026-10-28 00:13:53,116.116 INFO    ] Launching Daemon at Wed Oct 28 00:13:53 IST 2026
[2026-10-28 00:13:53,127.127 INFO    ] ================================================
[2026-10-28 00:13:53,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:13:53
[2026-10-28 00:13:54,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:13:54,593.593 INFO    ] Initializing speech engine...
[2026-10-28 00:13:54,600.600 INFO    ] 2026-10-28 00:13:54
[2026-10-28 00:13:54,861.861 INFO    ] 2026-10-28 00:13:54
[2026-10-28 00:13:54,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:13:55,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:13:55,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:13:55,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:13:55,405.405 INFO    ] time= 28/10/2026 00:13:55
[2026-10-28 00:13:55,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:13:55,430.430 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:13:55,595.595 INFO    ] No existing commands found in stream
[2026-10-28 00:14:00,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:14:00,623.623 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-28 00:14:03,025.025 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:14:03,029.029 INFO    ] Checking for system updates...
[2026-10-28 00:14:03,076.076 INFO    ] 200
[2026-10-28 00:14:03,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:14:03,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:14:03,145.145 INFO    ] No update needed
[2026-10-28 00:14:03,147.147 INFO    ] Checking for camera pi updates...
[2026-10-28 00:14:03,185.185 INFO    ] 200
[2026-10-28 00:14:03,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:14:03,239.239 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:14:03,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:14:03,354.354 INFO    ] No camera update needed
[2026-10-28 00:14:03,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:14:03,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:14:03,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:14:03,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:14:05,413.413 INFO    ] ================================================
[2026-10-28 00:14:05,428.428 INFO    ] Launching Daemon at Wed Oct 28 00:14:05 IST 2026
[2026-10-28 00:14:05,441.441 INFO    ] ================================================
[2026-10-28 00:14:06,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:14:06
[2026-10-28 00:14:06,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:14:07,081.081 INFO    ] Initializing speech engine...
[2026-10-28 00:14:07,092.092 INFO    ] 2026-10-28 00:14:07
[2026-10-28 00:14:07,374.374 INFO    ] 2026-10-28 00:14:07
[2026-10-28 00:14:07,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:14:07,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:14:07,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:14:07,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:14:07,975.975 INFO    ] time= 28/10/2026 00:14:07
[2026-10-28 00:14:07,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:14:08,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:14:08,265.265 INFO    ] No existing commands found in stream
[2026-10-28 00:14:13,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:14:13,294.294 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 00:14:15,955.955 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:14:15,958.958 INFO    ] Checking for system updates...
[2026-10-28 00:14:15,995.995 INFO    ] 200
[2026-10-28 00:14:15,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:14:16,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:14:16,055.055 INFO    ] No update needed
[2026-10-28 00:14:16,058.058 INFO    ] Checking for camera pi updates...
[2026-10-28 00:14:16,096.096 INFO    ] 200
[2026-10-28 00:14:16,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:14:16,141.141 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:14:16,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:14:16,241.241 INFO    ] No camera update needed
[2026-10-28 00:14:16,244.244 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:14:16,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:14:16,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:14:16,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:14:18,304.304 INFO    ] ================================================
[2026-10-28 00:14:18,320.320 INFO    ] Launching Daemon at Wed Oct 28 00:14:18 IST 2026
[2026-10-28 00:14:18,331.331 INFO    ] ================================================
[2026-10-28 00:14:18,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:14:18
[2026-10-28 00:14:19,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:14:19,778.778 INFO    ] Initializing speech engine...
[2026-10-28 00:14:19,794.794 INFO    ] 2026-10-28 00:14:19
[2026-10-28 00:14:20,081.081 INFO    ] 2026-10-28 00:14:20
[2026-10-28 00:14:20,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:14:20,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:14:20,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:14:20,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:14:20,708.708 INFO    ] time= 28/10/2026 00:14:20
[2026-10-28 00:14:20,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:14:20,732.732 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:14:20,865.865 INFO    ] No existing commands found in stream
[2026-10-28 00:14:25,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:14:25,898.898 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-28 00:14:27,641.641 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:14:27,644.644 INFO    ] Checking for system updates...
[2026-10-28 00:14:27,679.679 INFO    ] 200
[2026-10-28 00:14:27,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:14:27,734.734 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:14:27,736.736 INFO    ] No update needed
[2026-10-28 00:14:27,739.739 INFO    ] Checking for camera pi updates...
[2026-10-28 00:14:27,772.772 INFO    ] 200
[2026-10-28 00:14:27,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:14:27,815.815 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:14:27,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:14:27,912.912 INFO    ] No camera update needed
[2026-10-28 00:14:27,915.915 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:14:27,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:14:27,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:14:27,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:14:29,975.975 INFO    ] ================================================
[2026-10-28 00:14:29,990.990 INFO    ] Launching Daemon at Wed Oct 28 00:14:29 IST 2026
[2026-10-28 00:14:30,000.000 INFO    ] ================================================
[2026-10-28 00:14:30,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:14:30
[2026-10-28 00:14:31,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:14:31,441.441 INFO    ] Initializing speech engine...
[2026-10-28 00:14:31,448.448 INFO    ] 2026-10-28 00:14:31
[2026-10-28 00:14:31,747.747 INFO    ] 2026-10-28 00:14:31
[2026-10-28 00:14:31,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:14:32,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:14:32,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:14:32,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:14:32,341.341 INFO    ] time= 28/10/2026 00:14:32
[2026-10-28 00:14:32,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:14:32,370.370 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:14:32,511.511 INFO    ] No existing commands found in stream
[2026-10-28 00:14:37,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:14:37,531.531 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 00:14:41,319.319 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:14:41,322.322 INFO    ] Checking for system updates...
[2026-10-28 00:14:41,358.358 INFO    ] 200
[2026-10-28 00:14:41,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:14:41,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:14:41,422.422 INFO    ] No update needed
[2026-10-28 00:14:41,425.425 INFO    ] Checking for camera pi updates...
[2026-10-28 00:14:41,459.459 INFO    ] 200
[2026-10-28 00:14:41,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:14:41,503.503 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:14:41,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:14:41,587.587 INFO    ] No camera update needed
[2026-10-28 00:14:41,590.590 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:14:41,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:14:41,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:14:41,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:14:43,643.643 INFO    ] ================================================
[2026-10-28 00:14:43,658.658 INFO    ] Launching Daemon at Wed Oct 28 00:14:43 IST 2026
[2026-10-28 00:14:43,668.668 INFO    ] ================================================
[2026-10-28 00:14:44,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:14:44
[2026-10-28 00:14:44,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:14:45,140.140 INFO    ] Initializing speech engine...
[2026-10-28 00:14:45,147.147 INFO    ] 2026-10-28 00:14:45
[2026-10-28 00:14:45,395.395 INFO    ] 2026-10-28 00:14:45
[2026-10-28 00:14:45,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:14:45,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:14:45,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:14:45,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:14:45,950.950 INFO    ] time= 28/10/2026 00:14:45
[2026-10-28 00:14:45,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:14:45,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:14:46,109.109 INFO    ] No existing commands found in stream
[2026-10-28 00:14:51,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:14:51,136.136 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-28 00:14:54,741.741 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:14:54,743.743 INFO    ] Checking for system updates...
[2026-10-28 00:14:54,780.780 INFO    ] 200
[2026-10-28 00:14:54,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:14:54,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:14:54,838.838 INFO    ] No update needed
[2026-10-28 00:14:54,841.841 INFO    ] Checking for camera pi updates...
[2026-10-28 00:14:54,874.874 INFO    ] 200
[2026-10-28 00:14:54,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:14:54,916.916 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:14:54,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:14:54,994.994 INFO    ] No camera update needed
[2026-10-28 00:14:54,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:14:54,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:14:55,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:14:55,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:14:57,050.050 INFO    ] ================================================
[2026-10-28 00:14:57,066.066 INFO    ] Launching Daemon at Wed Oct 28 00:14:57 IST 2026
[2026-10-28 00:14:57,077.077 INFO    ] ================================================
[2026-10-28 00:14:57,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:14:57
[2026-10-28 00:14:58,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:14:58,684.684 INFO    ] Initializing speech engine...
[2026-10-28 00:14:58,692.692 INFO    ] 2026-10-28 00:14:58
[2026-10-28 00:14:58,983.983 INFO    ] 2026-10-28 00:14:58
[2026-10-28 00:14:59,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:14:59,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:14:59,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:14:59,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:14:59,686.686 INFO    ] time= 28/10/2026 00:14:59
[2026-10-28 00:14:59,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:14:59,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:14:59,909.909 INFO    ] No existing commands found in stream
[2026-10-28 00:15:04,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:15:04,926.926 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 00:15:08,004.004 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:15:08,007.007 INFO    ] Checking for system updates...
[2026-10-28 00:15:08,045.045 INFO    ] 200
[2026-10-28 00:15:08,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:15:08,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:15:08,105.105 INFO    ] No update needed
[2026-10-28 00:15:08,108.108 INFO    ] Checking for camera pi updates...
[2026-10-28 00:15:08,142.142 INFO    ] 200
[2026-10-28 00:15:08,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:15:08,191.191 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:15:08,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:15:08,277.277 INFO    ] No camera update needed
[2026-10-28 00:15:08,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:15:08,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:15:08,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:15:08,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:15:10,335.335 INFO    ] ================================================
[2026-10-28 00:15:10,351.351 INFO    ] Launching Daemon at Wed Oct 28 00:15:10 IST 2026
[2026-10-28 00:15:10,362.362 INFO    ] ================================================
[2026-10-28 00:15:11,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:15:11
[2026-10-28 00:15:11,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:15:11,984.984 INFO    ] Initializing speech engine...
[2026-10-28 00:15:11,993.993 INFO    ] 2026-10-28 00:15:11
[2026-10-28 00:15:12,278.278 INFO    ] 2026-10-28 00:15:12
[2026-10-28 00:15:12,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:15:12,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:15:12,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:15:12,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:15:12,817.817 INFO    ] time= 28/10/2026 00:15:12
[2026-10-28 00:15:12,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:15:12,865.865 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:15:12,991.991 INFO    ] No existing commands found in stream
[2026-10-28 00:15:18,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:15:18,025.025 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 00:15:21,849.849 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:15:21,852.852 INFO    ] Checking for system updates...
[2026-10-28 00:15:21,889.889 INFO    ] 200
[2026-10-28 00:15:21,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:15:21,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:15:21,949.949 INFO    ] No update needed
[2026-10-28 00:15:21,951.951 INFO    ] Checking for camera pi updates...
[2026-10-28 00:15:21,986.986 INFO    ] 200
[2026-10-28 00:15:21,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:15:22,032.032 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:15:22,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:15:22,219.219 INFO    ] No camera update needed
[2026-10-28 00:15:22,222.222 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:15:22,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:15:22,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:15:22,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:15:24,279.279 INFO    ] ================================================
[2026-10-28 00:15:24,294.294 INFO    ] Launching Daemon at Wed Oct 28 00:15:24 IST 2026
[2026-10-28 00:15:24,305.305 INFO    ] ================================================
[2026-10-28 00:15:24,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:15:24
[2026-10-28 00:15:25,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:15:25,760.760 INFO    ] Initializing speech engine...
[2026-10-28 00:15:25,768.768 INFO    ] 2026-10-28 00:15:25
[2026-10-28 00:15:26,029.029 INFO    ] 2026-10-28 00:15:26
[2026-10-28 00:15:26,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:15:26,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:15:26,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:15:26,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:15:26,587.587 INFO    ] time= 28/10/2026 00:15:26
[2026-10-28 00:15:26,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:15:26,613.613 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:15:26,743.743 INFO    ] No existing commands found in stream
[2026-10-28 00:15:31,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:15:31,759.759 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-28 00:15:36,206.206 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:15:36,208.208 INFO    ] Checking for system updates...
[2026-10-28 00:15:36,244.244 INFO    ] 200
[2026-10-28 00:15:36,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:15:36,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:15:36,319.319 INFO    ] No update needed
[2026-10-28 00:15:36,321.321 INFO    ] Checking for camera pi updates...
[2026-10-28 00:15:36,355.355 INFO    ] 200
[2026-10-28 00:15:36,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:15:36,399.399 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:15:36,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:15:36,491.491 INFO    ] No camera update needed
[2026-10-28 00:15:36,493.493 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:15:36,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:15:36,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:15:36,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:15:38,548.548 INFO    ] ================================================
[2026-10-28 00:15:38,565.565 INFO    ] Launching Daemon at Wed Oct 28 00:15:38 IST 2026
[2026-10-28 00:15:38,576.576 INFO    ] ================================================
[2026-10-28 00:15:39,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:15:39
[2026-10-28 00:15:39,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:15:39,996.996 INFO    ] Initializing speech engine...
[2026-10-28 00:15:40,005.005 INFO    ] 2026-10-28 00:15:40
[2026-10-28 00:15:40,259.259 INFO    ] 2026-10-28 00:15:40
[2026-10-28 00:15:40,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:15:40,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:15:40,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:15:40,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:15:40,831.831 INFO    ] time= 28/10/2026 00:15:40
[2026-10-28 00:15:40,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:15:40,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:15:40,991.991 INFO    ] No existing commands found in stream
[2026-10-28 00:15:46,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:15:46,014.014 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 00:15:48,842.842 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:15:48,844.844 INFO    ] Checking for system updates...
[2026-10-28 00:15:48,881.881 INFO    ] 200
[2026-10-28 00:15:48,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:15:48,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:15:48,938.938 INFO    ] No update needed
[2026-10-28 00:15:48,941.941 INFO    ] Checking for camera pi updates...
[2026-10-28 00:15:48,975.975 INFO    ] 200
[2026-10-28 00:15:48,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:15:49,019.019 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:15:49,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:15:49,103.103 INFO    ] No camera update needed
[2026-10-28 00:15:49,106.106 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:15:49,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:15:49,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:15:49,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:15:51,160.160 INFO    ] ================================================
[2026-10-28 00:15:51,176.176 INFO    ] Launching Daemon at Wed Oct 28 00:15:51 IST 2026
[2026-10-28 00:15:51,187.187 INFO    ] ================================================
[2026-10-28 00:15:51,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:15:51
[2026-10-28 00:15:52,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:15:52,617.617 INFO    ] Initializing speech engine...
[2026-10-28 00:15:52,626.626 INFO    ] 2026-10-28 00:15:52
[2026-10-28 00:15:52,876.876 INFO    ] 2026-10-28 00:15:52
[2026-10-28 00:15:52,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:15:53,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:15:53,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:15:53,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:15:53,452.452 INFO    ] time= 28/10/2026 00:15:53
[2026-10-28 00:15:53,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:15:53,477.477 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:15:53,613.613 INFO    ] No existing commands found in stream
[2026-10-28 00:15:58,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:15:58,640.640 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-28 00:16:01,319.319 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:16:01,322.322 INFO    ] Checking for system updates...
[2026-10-28 00:16:01,358.358 INFO    ] 200
[2026-10-28 00:16:01,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:16:01,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:16:01,431.431 INFO    ] No update needed
[2026-10-28 00:16:01,433.433 INFO    ] Checking for camera pi updates...
[2026-10-28 00:16:01,503.503 INFO    ] 200
[2026-10-28 00:16:01,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:16:01,606.606 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:16:01,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:16:01,701.701 INFO    ] No camera update needed
[2026-10-28 00:16:01,725.725 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:16:01,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:16:01,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:16:01,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:16:03,791.791 INFO    ] ================================================
[2026-10-28 00:16:03,807.807 INFO    ] Launching Daemon at Wed Oct 28 00:16:03 IST 2026
[2026-10-28 00:16:03,818.818 INFO    ] ================================================
[2026-10-28 00:16:04,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:16:04
[2026-10-28 00:16:05,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:16:05,278.278 INFO    ] Initializing speech engine...
[2026-10-28 00:16:05,286.286 INFO    ] 2026-10-28 00:16:05
[2026-10-28 00:16:05,547.547 INFO    ] 2026-10-28 00:16:05
[2026-10-28 00:16:05,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:16:05,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:16:05,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:16:06,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:16:06,249.249 INFO    ] time= 28/10/2026 00:16:06
[2026-10-28 00:16:06,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:16:06,341.341 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:16:06,466.466 INFO    ] No existing commands found in stream
[2026-10-28 00:16:11,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:16:11,499.499 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 00:16:14,558.558 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:16:14,561.561 INFO    ] Checking for system updates...
[2026-10-28 00:16:14,597.597 INFO    ] 200
[2026-10-28 00:16:14,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:16:14,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:16:14,655.655 INFO    ] No update needed
[2026-10-28 00:16:14,657.657 INFO    ] Checking for camera pi updates...
[2026-10-28 00:16:14,695.695 INFO    ] 200
[2026-10-28 00:16:14,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:16:14,738.738 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:16:14,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:16:14,808.808 INFO    ] No camera update needed
[2026-10-28 00:16:14,811.811 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:16:14,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:16:14,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:16:14,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:16:16,865.865 INFO    ] ================================================
[2026-10-28 00:16:16,880.880 INFO    ] Launching Daemon at Wed Oct 28 00:16:16 IST 2026
[2026-10-28 00:16:16,891.891 INFO    ] ================================================
[2026-10-28 00:16:17,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:16:17
[2026-10-28 00:16:18,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:16:18,330.330 INFO    ] Initializing speech engine...
[2026-10-28 00:16:18,354.354 INFO    ] 2026-10-28 00:16:18
[2026-10-28 00:16:18,630.630 INFO    ] 2026-10-28 00:16:18
[2026-10-28 00:16:18,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:16:18,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:16:18,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:16:19,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:16:19,147.147 INFO    ] time= 28/10/2026 00:16:19
[2026-10-28 00:16:19,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:16:19,256.256 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:16:19,395.395 INFO    ] No existing commands found in stream
[2026-10-28 00:16:24,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:16:24,415.415 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-28 00:16:28,318.318 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:16:28,321.321 INFO    ] Checking for system updates...
[2026-10-28 00:16:28,357.357 INFO    ] 200
[2026-10-28 00:16:28,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:16:28,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:16:28,416.416 INFO    ] No update needed
[2026-10-28 00:16:28,418.418 INFO    ] Checking for camera pi updates...
[2026-10-28 00:16:28,452.452 INFO    ] 200
[2026-10-28 00:16:28,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:16:28,495.495 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:16:28,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:16:28,582.582 INFO    ] No camera update needed
[2026-10-28 00:16:28,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:16:28,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:16:28,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:16:28,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:16:30,640.640 INFO    ] ================================================
[2026-10-28 00:16:30,656.656 INFO    ] Launching Daemon at Wed Oct 28 00:16:30 IST 2026
[2026-10-28 00:16:30,667.667 INFO    ] ================================================
[2026-10-28 00:16:31,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:16:31
[2026-10-28 00:16:31,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:16:32,112.112 INFO    ] Initializing speech engine...
[2026-10-28 00:16:32,129.129 INFO    ] 2026-10-28 00:16:32
[2026-10-28 00:16:32,428.428 INFO    ] 2026-10-28 00:16:32
[2026-10-28 00:16:32,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:16:32,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:16:32,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:16:33,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:16:33,023.023 INFO    ] time= 28/10/2026 00:16:33
[2026-10-28 00:16:33,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:16:33,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:16:33,191.191 INFO    ] No existing commands found in stream
[2026-10-28 00:16:38,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:16:38,219.219 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 00:16:39,464.464 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:16:39,467.467 INFO    ] Checking for system updates...
[2026-10-28 00:16:39,504.504 INFO    ] 200
[2026-10-28 00:16:39,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:16:39,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:16:39,561.561 INFO    ] No update needed
[2026-10-28 00:16:39,564.564 INFO    ] Checking for camera pi updates...
[2026-10-28 00:16:39,598.598 INFO    ] 200
[2026-10-28 00:16:39,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:16:39,641.641 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:16:39,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:16:39,766.766 INFO    ] No camera update needed
[2026-10-28 00:16:39,769.769 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:16:39,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:16:39,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:16:39,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:16:41,824.824 INFO    ] ================================================
[2026-10-28 00:16:41,839.839 INFO    ] Launching Daemon at Wed Oct 28 00:16:41 IST 2026
[2026-10-28 00:16:41,850.850 INFO    ] ================================================
[2026-10-28 00:16:42,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:16:42
[2026-10-28 00:16:43,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:16:43,280.280 INFO    ] Initializing speech engine...
[2026-10-28 00:16:43,288.288 INFO    ] 2026-10-28 00:16:43
[2026-10-28 00:16:43,576.576 INFO    ] 2026-10-28 00:16:43
[2026-10-28 00:16:43,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:16:43,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:16:43,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:16:44,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:16:44,181.181 INFO    ] time= 28/10/2026 00:16:44
[2026-10-28 00:16:44,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:16:44,209.209 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:16:44,355.355 INFO    ] No existing commands found in stream
[2026-10-28 00:16:49,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:16:49,372.372 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-28 00:16:52,879.879 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:16:52,882.882 INFO    ] Checking for system updates...
[2026-10-28 00:16:52,917.917 INFO    ] 200
[2026-10-28 00:16:52,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:16:52,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:16:52,975.975 INFO    ] No update needed
[2026-10-28 00:16:52,978.978 INFO    ] Checking for camera pi updates...
[2026-10-28 00:16:53,013.013 INFO    ] 200
[2026-10-28 00:16:53,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:16:53,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:16:53,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:16:53,143.143 INFO    ] No camera update needed
[2026-10-28 00:16:53,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:16:53,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:16:53,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:16:53,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:16:55,198.198 INFO    ] ================================================
[2026-10-28 00:16:55,213.213 INFO    ] Launching Daemon at Wed Oct 28 00:16:55 IST 2026
[2026-10-28 00:16:55,224.224 INFO    ] ================================================
[2026-10-28 00:16:55,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:16:55
[2026-10-28 00:16:56,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:16:56,801.801 INFO    ] Initializing speech engine...
[2026-10-28 00:16:56,806.806 INFO    ] 2026-10-28 00:16:56
[2026-10-28 00:16:57,089.089 INFO    ] 2026-10-28 00:16:57
[2026-10-28 00:16:57,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:16:57,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:16:57,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:16:57,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:16:57,622.622 INFO    ] time= 28/10/2026 00:16:57
[2026-10-28 00:16:57,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:16:57,670.670 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:16:57,796.796 INFO    ] No existing commands found in stream
[2026-10-28 00:17:02,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:17:02,826.826 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-28 00:17:03,524.524 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:17:03,528.528 INFO    ] Checking for system updates...
[2026-10-28 00:17:03,572.572 INFO    ] 200
[2026-10-28 00:17:03,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:17:03,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:17:03,638.638 INFO    ] No update needed
[2026-10-28 00:17:03,641.641 INFO    ] Checking for camera pi updates...
[2026-10-28 00:17:03,675.675 INFO    ] 200
[2026-10-28 00:17:03,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:17:03,719.719 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:17:03,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:17:03,807.807 INFO    ] No camera update needed
[2026-10-28 00:17:03,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:17:03,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:17:03,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:17:03,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:17:05,865.865 INFO    ] ================================================
[2026-10-28 00:17:05,881.881 INFO    ] Launching Daemon at Wed Oct 28 00:17:05 IST 2026
[2026-10-28 00:17:05,892.892 INFO    ] ================================================
[2026-10-28 00:17:06,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:17:06
[2026-10-28 00:17:07,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:17:07,334.334 INFO    ] Initializing speech engine...
[2026-10-28 00:17:07,347.347 INFO    ] 2026-10-28 00:17:07
[2026-10-28 00:17:07,610.610 INFO    ] 2026-10-28 00:17:07
[2026-10-28 00:17:07,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:17:07,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:17:07,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:17:08,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:17:08,218.218 INFO    ] time= 28/10/2026 00:17:08
[2026-10-28 00:17:08,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:17:08,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:17:08,368.368 INFO    ] No existing commands found in stream
[2026-10-28 00:17:13,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:17:13,396.396 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-28 00:17:15,395.395 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:17:15,397.397 INFO    ] Checking for system updates...
[2026-10-28 00:17:15,433.433 INFO    ] 200
[2026-10-28 00:17:15,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:17:15,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:17:15,491.491 INFO    ] No update needed
[2026-10-28 00:17:15,494.494 INFO    ] Checking for camera pi updates...
[2026-10-28 00:17:15,527.527 INFO    ] 200
[2026-10-28 00:17:15,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:17:15,573.573 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:17:15,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:17:15,658.658 INFO    ] No camera update needed
[2026-10-28 00:17:15,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:17:15,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:17:15,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:17:15,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:17:17,715.715 INFO    ] ================================================
[2026-10-28 00:17:17,730.730 INFO    ] Launching Daemon at Wed Oct 28 00:17:17 IST 2026
[2026-10-28 00:17:17,741.741 INFO    ] ================================================
[2026-10-28 00:17:18,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:17:18
[2026-10-28 00:17:18,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:17:19,164.164 INFO    ] Initializing speech engine...
[2026-10-28 00:17:19,173.173 INFO    ] 2026-10-28 00:17:19
[2026-10-28 00:17:19,421.421 INFO    ] 2026-10-28 00:17:19
[2026-10-28 00:17:19,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:17:19,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:17:19,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:17:19,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:17:19,989.989 INFO    ] time= 28/10/2026 00:17:19
[2026-10-28 00:17:20,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:17:20,011.011 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:17:20,149.149 INFO    ] No existing commands found in stream
[2026-10-28 00:17:25,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:17:25,182.182 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 00:17:29,681.681 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:17:29,684.684 INFO    ] Checking for system updates...
[2026-10-28 00:17:29,722.722 INFO    ] 200
[2026-10-28 00:17:29,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:17:29,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:17:29,784.784 INFO    ] No update needed
[2026-10-28 00:17:29,787.787 INFO    ] Checking for camera pi updates...
[2026-10-28 00:17:29,824.824 INFO    ] 200
[2026-10-28 00:17:29,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:17:29,872.872 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:17:29,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:17:29,957.957 INFO    ] No camera update needed
[2026-10-28 00:17:29,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:17:29,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:17:29,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:17:29,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:17:32,025.025 INFO    ] ================================================
[2026-10-28 00:17:32,042.042 INFO    ] Launching Daemon at Wed Oct 28 00:17:32 IST 2026
[2026-10-28 00:17:32,054.054 INFO    ] ================================================
[2026-10-28 00:17:32,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:17:32
[2026-10-28 00:17:33,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:17:33,546.546 INFO    ] Initializing speech engine...
[2026-10-28 00:17:33,557.557 INFO    ] 2026-10-28 00:17:33
[2026-10-28 00:17:33,817.817 INFO    ] 2026-10-28 00:17:33
[2026-10-28 00:17:33,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:17:34,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:17:34,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:17:34,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:17:34,360.360 INFO    ] time= 28/10/2026 00:17:34
[2026-10-28 00:17:34,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:17:34,385.385 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:17:34,515.515 INFO    ] No existing commands found in stream
[2026-10-28 00:17:39,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:17:39,536.536 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-28 00:17:42,485.485 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:17:42,488.488 INFO    ] Checking for system updates...
[2026-10-28 00:17:42,523.523 INFO    ] 200
[2026-10-28 00:17:42,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:17:42,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:17:42,580.580 INFO    ] No update needed
[2026-10-28 00:17:42,582.582 INFO    ] Checking for camera pi updates...
[2026-10-28 00:17:42,616.616 INFO    ] 200
[2026-10-28 00:17:42,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:17:42,663.663 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:17:42,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:17:42,838.838 INFO    ] No camera update needed
[2026-10-28 00:17:42,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:17:42,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:17:42,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:17:42,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:17:44,896.896 INFO    ] ================================================
[2026-10-28 00:17:44,912.912 INFO    ] Launching Daemon at Wed Oct 28 00:17:44 IST 2026
[2026-10-28 00:17:44,923.923 INFO    ] ================================================
[2026-10-28 00:17:45,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:17:45
[2026-10-28 00:17:46,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:17:46,515.515 INFO    ] Initializing speech engine...
[2026-10-28 00:17:46,529.529 INFO    ] 2026-10-28 00:17:46
[2026-10-28 00:17:46,816.816 INFO    ] 2026-10-28 00:17:46
[2026-10-28 00:17:46,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:17:47,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:17:47,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:17:47,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:17:47,375.375 INFO    ] time= 28/10/2026 00:17:47
[2026-10-28 00:17:47,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:17:47,411.411 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:17:47,550.550 INFO    ] No existing commands found in stream
[2026-10-28 00:17:52,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:17:52,584.584 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 00:17:56,203.203 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:17:56,206.206 INFO    ] Checking for system updates...
[2026-10-28 00:17:56,243.243 INFO    ] 200
[2026-10-28 00:17:56,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:17:56,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:17:56,302.302 INFO    ] No update needed
[2026-10-28 00:17:56,305.305 INFO    ] Checking for camera pi updates...
[2026-10-28 00:17:56,340.340 INFO    ] 200
[2026-10-28 00:17:56,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:17:56,384.384 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:17:56,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:17:56,467.467 INFO    ] No camera update needed
[2026-10-28 00:17:56,470.470 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:17:56,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:17:56,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:17:56,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:17:58,525.525 INFO    ] ================================================
[2026-10-28 00:17:58,541.541 INFO    ] Launching Daemon at Wed Oct 28 00:17:58 IST 2026
[2026-10-28 00:17:58,551.551 INFO    ] ================================================
[2026-10-28 00:17:59,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:17:59
[2026-10-28 00:17:59,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:17:59,965.965 INFO    ] Initializing speech engine...
[2026-10-28 00:17:59,974.974 INFO    ] 2026-10-28 00:17:59
[2026-10-28 00:18:00,223.223 INFO    ] 2026-10-28 00:18:00
[2026-10-28 00:18:00,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:18:00,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:18:00,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:18:00,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:18:00,788.788 INFO    ] time= 28/10/2026 00:18:00
[2026-10-28 00:18:00,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:18:00,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:18:00,948.948 INFO    ] No existing commands found in stream
[2026-10-28 00:18:05,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:18:05,973.973 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-28 00:18:09,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:18:09,475.475 INFO    ] Checking for system updates...
[2026-10-28 00:18:09,511.511 INFO    ] 200
[2026-10-28 00:18:09,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:18:09,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:18:09,568.568 INFO    ] No update needed
[2026-10-28 00:18:09,570.570 INFO    ] Checking for camera pi updates...
[2026-10-28 00:18:09,603.603 INFO    ] 200
[2026-10-28 00:18:09,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:18:09,649.649 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:18:09,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:18:09,735.735 INFO    ] No camera update needed
[2026-10-28 00:18:09,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:18:09,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:18:09,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:18:09,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:18:11,791.791 INFO    ] ================================================
[2026-10-28 00:18:11,806.806 INFO    ] Launching Daemon at Wed Oct 28 00:18:11 IST 2026
[2026-10-28 00:18:11,817.817 INFO    ] ================================================
[2026-10-28 00:18:12,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:18:12
[2026-10-28 00:18:13,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:18:13,426.426 INFO    ] Initializing speech engine...
[2026-10-28 00:18:13,433.433 INFO    ] 2026-10-28 00:18:13
[2026-10-28 00:18:13,711.711 INFO    ] 2026-10-28 00:18:13
[2026-10-28 00:18:13,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:18:14,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:18:14,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:18:14,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:18:14,305.305 INFO    ] time= 28/10/2026 00:18:14
[2026-10-28 00:18:14,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:18:14,327.327 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:18:14,449.449 INFO    ] No existing commands found in stream
[2026-10-28 00:18:19,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:18:19,488.488 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-28 00:18:20,783.783 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:18:20,786.786 INFO    ] Checking for system updates...
[2026-10-28 00:18:20,825.825 INFO    ] 200
[2026-10-28 00:18:20,828.828 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 00:18:20,831.831 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-28 00:18:20,833.833 INFO    ] Checking for camera pi updates...
[2026-10-28 00:18:20,891.891 INFO    ] 200
[2026-10-28 00:18:20,896.896 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 00:18:20,899.899 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-28 00:18:20,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:18:20,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:18:20,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:18:20,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:18:22,959.959 INFO    ] ================================================
[2026-10-28 00:18:22,975.975 INFO    ] Launching Daemon at Wed Oct 28 00:18:22 IST 2026
[2026-10-28 00:18:22,986.986 INFO    ] ================================================
[2026-10-28 00:18:23,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:18:23
[2026-10-28 00:18:24,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:18:24,438.438 INFO    ] Initializing speech engine...
[2026-10-28 00:18:24,447.447 INFO    ] 2026-10-28 00:18:24
[2026-10-28 00:18:24,696.696 INFO    ] 2026-10-28 00:18:24
[2026-10-28 00:18:24,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:18:24,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:18:25,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:18:25,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:18:25,265.265 INFO    ] time= 28/10/2026 00:18:25
[2026-10-28 00:18:25,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:18:25,286.286 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:18:25,422.422 INFO    ] No existing commands found in stream
[2026-10-28 00:18:30,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:18:30,437.437 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-28 00:18:32,100.100 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:18:32,103.103 INFO    ] Checking for system updates...
[2026-10-28 00:18:32,149.149 INFO    ] 200
[2026-10-28 00:18:32,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:18:32,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:18:32,214.214 INFO    ] No update needed
[2026-10-28 00:18:32,217.217 INFO    ] Checking for camera pi updates...
[2026-10-28 00:18:32,258.258 INFO    ] 200
[2026-10-28 00:18:32,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:18:32,303.303 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:18:32,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:18:32,366.366 INFO    ] No camera update needed
[2026-10-28 00:18:32,370.370 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:18:32,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:18:32,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:18:32,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:18:34,427.427 INFO    ] ================================================
[2026-10-28 00:18:34,443.443 INFO    ] Launching Daemon at Wed Oct 28 00:18:34 IST 2026
[2026-10-28 00:18:34,454.454 INFO    ] ================================================
[2026-10-28 00:18:35,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:18:35
[2026-10-28 00:18:35,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:18:36,060.060 INFO    ] Initializing speech engine...
[2026-10-28 00:18:36,074.074 INFO    ] 2026-10-28 00:18:36
[2026-10-28 00:18:36,350.350 INFO    ] 2026-10-28 00:18:36
[2026-10-28 00:18:36,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:18:36,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:18:36,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:18:36,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:18:36,912.912 INFO    ] time= 28/10/2026 00:18:36
[2026-10-28 00:18:36,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:18:36,949.949 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:18:37,097.097 INFO    ] No existing commands found in stream
[2026-10-28 00:18:42,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:18:42,126.126 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 00:18:43,462.462 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:18:43,465.465 INFO    ] Checking for system updates...
[2026-10-28 00:18:43,502.502 INFO    ] 200
[2026-10-28 00:18:43,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:18:43,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:18:43,558.558 INFO    ] No update needed
[2026-10-28 00:18:43,561.561 INFO    ] Checking for camera pi updates...
[2026-10-28 00:18:43,599.599 INFO    ] 200
[2026-10-28 00:18:43,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:18:43,647.647 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:18:43,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:18:43,728.728 INFO    ] No camera update needed
[2026-10-28 00:18:43,730.730 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:18:43,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:18:43,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:18:43,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:18:45,784.784 INFO    ] ================================================
[2026-10-28 00:18:45,800.800 INFO    ] Launching Daemon at Wed Oct 28 00:18:45 IST 2026
[2026-10-28 00:18:45,811.811 INFO    ] ================================================
[2026-10-28 00:18:46,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:18:46
[2026-10-28 00:18:46,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:18:47,259.259 INFO    ] Initializing speech engine...
[2026-10-28 00:18:47,275.275 INFO    ] 2026-10-28 00:18:47
[2026-10-28 00:18:47,530.530 INFO    ] 2026-10-28 00:18:47
[2026-10-28 00:18:47,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:18:47,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:18:47,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:18:48,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:18:48,100.100 INFO    ] time= 28/10/2026 00:18:48
[2026-10-28 00:18:48,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:18:48,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:18:48,270.270 INFO    ] No existing commands found in stream
[2026-10-28 00:18:53,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:18:53,295.295 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-28 00:18:55,182.182 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:18:55,185.185 INFO    ] Checking for system updates...
[2026-10-28 00:18:55,221.221 INFO    ] 200
[2026-10-28 00:18:55,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:18:55,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:18:55,281.281 INFO    ] No update needed
[2026-10-28 00:18:55,283.283 INFO    ] Checking for camera pi updates...
[2026-10-28 00:18:55,321.321 INFO    ] 200
[2026-10-28 00:18:55,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:18:55,365.365 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:18:55,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:18:55,443.443 INFO    ] No camera update needed
[2026-10-28 00:18:55,445.445 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:18:55,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:18:55,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:18:55,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:18:57,499.499 INFO    ] ================================================
[2026-10-28 00:18:57,515.515 INFO    ] Launching Daemon at Wed Oct 28 00:18:57 IST 2026
[2026-10-28 00:18:57,526.526 INFO    ] ================================================
[2026-10-28 00:18:58,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:18:58
[2026-10-28 00:18:58,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:18:58,948.948 INFO    ] Initializing speech engine...
[2026-10-28 00:18:58,957.957 INFO    ] 2026-10-28 00:18:58
[2026-10-28 00:18:59,216.216 INFO    ] 2026-10-28 00:18:59
[2026-10-28 00:18:59,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:18:59,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:18:59,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:18:59,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:18:59,757.757 INFO    ] time= 28/10/2026 00:18:59
[2026-10-28 00:18:59,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:18:59,780.780 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:18:59,910.910 INFO    ] No existing commands found in stream
[2026-10-28 00:19:04,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:19:04,927.927 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 00:19:06,042.042 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:19:06,044.044 INFO    ] Checking for system updates...
[2026-10-28 00:19:06,080.080 INFO    ] 200
[2026-10-28 00:19:06,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:19:06,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:19:06,137.137 INFO    ] No update needed
[2026-10-28 00:19:06,140.140 INFO    ] Checking for camera pi updates...
[2026-10-28 00:19:06,174.174 INFO    ] 200
[2026-10-28 00:19:06,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:19:06,216.216 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:19:06,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:19:06,316.316 INFO    ] No camera update needed
[2026-10-28 00:19:06,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:19:06,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:19:06,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:19:06,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:19:08,375.375 INFO    ] ================================================
[2026-10-28 00:19:08,391.391 INFO    ] Launching Daemon at Wed Oct 28 00:19:08 IST 2026
[2026-10-28 00:19:08,402.402 INFO    ] ================================================
[2026-10-28 00:19:09,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:19:09
[2026-10-28 00:19:09,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:19:10,045.045 INFO    ] Initializing speech engine...
[2026-10-28 00:19:10,057.057 INFO    ] 2026-10-28 00:19:10
[2026-10-28 00:19:10,371.371 INFO    ] 2026-10-28 00:19:10
[2026-10-28 00:19:10,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:19:10,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:19:10,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:19:11,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:19:11,096.096 INFO    ] time= 28/10/2026 00:19:11
[2026-10-28 00:19:11,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:19:11,187.187 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:19:11,346.346 INFO    ] No existing commands found in stream
[2026-10-28 00:19:16,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:19:16,369.369 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-28 00:19:18,981.981 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:19:18,984.984 INFO    ] Checking for system updates...
[2026-10-28 00:19:19,027.027 INFO    ] 200
[2026-10-28 00:19:19,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:19:19,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:19:19,098.098 INFO    ] No update needed
[2026-10-28 00:19:19,101.101 INFO    ] Checking for camera pi updates...
[2026-10-28 00:19:19,142.142 INFO    ] 200
[2026-10-28 00:19:19,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:19:19,191.191 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:19:19,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:19:19,277.277 INFO    ] No camera update needed
[2026-10-28 00:19:19,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:19:19,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:19:19,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:19:19,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:19:21,334.334 INFO    ] ================================================
[2026-10-28 00:19:21,350.350 INFO    ] Launching Daemon at Wed Oct 28 00:19:21 IST 2026
[2026-10-28 00:19:21,362.362 INFO    ] ================================================
[2026-10-28 00:19:22,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:19:22
[2026-10-28 00:19:22,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:19:22,993.993 INFO    ] Initializing speech engine...
[2026-10-28 00:19:23,008.008 INFO    ] 2026-10-28 00:19:22
[2026-10-28 00:19:23,315.315 INFO    ] 2026-10-28 00:19:23
[2026-10-28 00:19:23,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:19:23,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:19:23,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:19:23,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:19:23,835.835 INFO    ] time= 28/10/2026 00:19:23
[2026-10-28 00:19:23,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:19:23,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:19:23,982.982 INFO    ] No existing commands found in stream
[2026-10-28 00:19:29,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:19:29,010.010 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 00:19:31,768.768 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:19:31,771.771 INFO    ] Checking for system updates...
[2026-10-28 00:19:31,808.808 INFO    ] 200
[2026-10-28 00:19:31,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:19:31,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:19:31,874.874 INFO    ] No update needed
[2026-10-28 00:19:31,877.877 INFO    ] Checking for camera pi updates...
[2026-10-28 00:19:31,913.913 INFO    ] 200
[2026-10-28 00:19:31,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:19:31,958.958 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:19:32,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:19:32,051.051 INFO    ] No camera update needed
[2026-10-28 00:19:32,055.055 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:19:32,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:19:32,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:19:32,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:19:34,119.119 INFO    ] ================================================
[2026-10-28 00:19:34,135.135 INFO    ] Launching Daemon at Wed Oct 28 00:19:34 IST 2026
[2026-10-28 00:19:34,147.147 INFO    ] ================================================
[2026-10-28 00:19:34,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:19:34
[2026-10-28 00:19:35,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:19:35,706.706 INFO    ] Initializing speech engine...
[2026-10-28 00:19:35,717.717 INFO    ] 2026-10-28 00:19:35
[2026-10-28 00:19:35,995.995 INFO    ] 2026-10-28 00:19:35
[2026-10-28 00:19:36,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:19:36,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:19:36,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:19:36,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:19:36,577.577 INFO    ] time= 28/10/2026 00:19:36
[2026-10-28 00:19:36,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:19:36,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:19:36,777.777 INFO    ] No existing commands found in stream
[2026-10-28 00:19:41,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:19:41,812.812 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-28 00:19:44,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:19:44,275.275 INFO    ] Checking for system updates...
[2026-10-28 00:19:44,312.312 INFO    ] 200
[2026-10-28 00:19:44,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:19:44,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:19:44,375.375 INFO    ] No update needed
[2026-10-28 00:19:44,378.378 INFO    ] Checking for camera pi updates...
[2026-10-28 00:19:44,415.415 INFO    ] 200
[2026-10-28 00:19:44,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:19:44,462.462 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:19:44,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:19:44,645.645 INFO    ] No camera update needed
[2026-10-28 00:19:44,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:19:44,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:19:44,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:19:44,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:19:46,705.705 INFO    ] ================================================
[2026-10-28 00:19:46,721.721 INFO    ] Launching Daemon at Wed Oct 28 00:19:46 IST 2026
[2026-10-28 00:19:46,732.732 INFO    ] ================================================
[2026-10-28 00:19:47,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:19:47
[2026-10-28 00:19:47,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:19:48,218.218 INFO    ] Initializing speech engine...
[2026-10-28 00:19:48,228.228 INFO    ] 2026-10-28 00:19:48
[2026-10-28 00:19:48,476.476 INFO    ] 2026-10-28 00:19:48
[2026-10-28 00:19:48,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:19:48,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:19:48,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:19:49,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:19:49,032.032 INFO    ] time= 28/10/2026 00:19:49
[2026-10-28 00:19:49,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:19:49,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:19:49,186.186 INFO    ] No existing commands found in stream
[2026-10-28 00:19:54,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:19:54,208.208 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-28 00:19:56,607.607 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:19:56,610.610 INFO    ] Checking for system updates...
[2026-10-28 00:19:56,646.646 INFO    ] 200
[2026-10-28 00:19:56,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:19:56,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:19:56,713.713 INFO    ] No update needed
[2026-10-28 00:19:56,716.716 INFO    ] Checking for camera pi updates...
[2026-10-28 00:19:56,749.749 INFO    ] 200
[2026-10-28 00:19:56,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:19:56,795.795 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:19:56,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:19:56,879.879 INFO    ] No camera update needed
[2026-10-28 00:19:56,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:19:56,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:19:56,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:19:56,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:19:58,935.935 INFO    ] ================================================
[2026-10-28 00:19:58,950.950 INFO    ] Launching Daemon at Wed Oct 28 00:19:58 IST 2026
[2026-10-28 00:19:58,961.961 INFO    ] ================================================
[2026-10-28 00:19:59,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:19:59
[2026-10-28 00:20:00,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:20:00,433.433 INFO    ] Initializing speech engine...
[2026-10-28 00:20:00,452.452 INFO    ] 2026-10-28 00:20:00
[2026-10-28 00:20:00,703.703 INFO    ] 2026-10-28 00:20:00
[2026-10-28 00:20:00,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:20:01,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:20:01,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:20:01,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:20:01,270.270 INFO    ] time= 28/10/2026 00:20:01
[2026-10-28 00:20:01,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:20:01,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:20:01,429.429 INFO    ] No existing commands found in stream
[2026-10-28 00:20:06,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:20:06,450.450 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-28 00:20:08,900.900 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:20:08,903.903 INFO    ] Checking for system updates...
[2026-10-28 00:20:08,943.943 INFO    ] 200
[2026-10-28 00:20:08,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:20:08,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:20:09,000.000 INFO    ] No update needed
[2026-10-28 00:20:09,003.003 INFO    ] Checking for camera pi updates...
[2026-10-28 00:20:09,039.039 INFO    ] 200
[2026-10-28 00:20:09,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:20:09,085.085 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:20:09,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:20:09,183.183 INFO    ] No camera update needed
[2026-10-28 00:20:09,185.185 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:20:09,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:20:09,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:20:09,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:20:11,238.238 INFO    ] ================================================
[2026-10-28 00:20:11,254.254 INFO    ] Launching Daemon at Wed Oct 28 00:20:11 IST 2026
[2026-10-28 00:20:11,265.265 INFO    ] ================================================
[2026-10-28 00:20:11,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:20:11
[2026-10-28 00:20:12,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:20:12,846.846 INFO    ] Initializing speech engine...
[2026-10-28 00:20:12,859.859 INFO    ] 2026-10-28 00:20:12
[2026-10-28 00:20:13,123.123 INFO    ] 2026-10-28 00:20:13
[2026-10-28 00:20:13,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:20:13,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:20:13,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:20:13,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:20:13,654.654 INFO    ] time= 28/10/2026 00:20:13
[2026-10-28 00:20:13,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:20:13,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:20:13,816.816 INFO    ] No existing commands found in stream
[2026-10-28 00:20:18,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:20:18,849.849 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 00:20:21,325.325 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:20:21,328.328 INFO    ] Checking for system updates...
[2026-10-28 00:20:21,366.366 INFO    ] 200
[2026-10-28 00:20:21,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:20:21,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:20:21,427.427 INFO    ] No update needed
[2026-10-28 00:20:21,430.430 INFO    ] Checking for camera pi updates...
[2026-10-28 00:20:21,465.465 INFO    ] 200
[2026-10-28 00:20:21,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:20:21,511.511 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:20:21,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:20:21,594.594 INFO    ] No camera update needed
[2026-10-28 00:20:21,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:20:21,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:20:21,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:20:21,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:20:23,649.649 INFO    ] ================================================
[2026-10-28 00:20:23,665.665 INFO    ] Launching Daemon at Wed Oct 28 00:20:23 IST 2026
[2026-10-28 00:20:23,676.676 INFO    ] ================================================
[2026-10-28 00:20:24,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:20:24
[2026-10-28 00:20:24,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:20:25,097.097 INFO    ] Initializing speech engine...
[2026-10-28 00:20:25,106.106 INFO    ] 2026-10-28 00:20:25
[2026-10-28 00:20:25,357.357 INFO    ] 2026-10-28 00:20:25
[2026-10-28 00:20:25,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:20:25,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:20:25,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:20:25,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:20:25,922.922 INFO    ] time= 28/10/2026 00:20:25
[2026-10-28 00:20:25,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:20:25,946.946 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:20:26,078.078 INFO    ] No existing commands found in stream
[2026-10-28 00:20:31,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:20:31,094.094 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-28 00:20:34,230.230 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:20:34,234.234 INFO    ] Checking for system updates...
[2026-10-28 00:20:34,275.275 INFO    ] 200
[2026-10-28 00:20:34,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:20:34,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:20:34,333.333 INFO    ] No update needed
[2026-10-28 00:20:34,336.336 INFO    ] Checking for camera pi updates...
[2026-10-28 00:20:34,369.369 INFO    ] 200
[2026-10-28 00:20:34,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:20:34,412.412 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:20:34,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:20:34,516.516 INFO    ] No camera update needed
[2026-10-28 00:20:34,519.519 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:20:34,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:20:34,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:20:34,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:20:36,574.574 INFO    ] ================================================
[2026-10-28 00:20:36,590.590 INFO    ] Launching Daemon at Wed Oct 28 00:20:36 IST 2026
[2026-10-28 00:20:36,601.601 INFO    ] ================================================
[2026-10-28 00:20:37,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:20:37
[2026-10-28 00:20:37,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:20:38,121.121 INFO    ] Initializing speech engine...
[2026-10-28 00:20:38,133.133 INFO    ] 2026-10-28 00:20:38
[2026-10-28 00:20:38,399.399 INFO    ] 2026-10-28 00:20:38
[2026-10-28 00:20:38,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:20:38,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:20:38,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:20:38,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:20:38,962.962 INFO    ] time= 28/10/2026 00:20:38
[2026-10-28 00:20:38,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:20:38,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:20:39,116.116 INFO    ] No existing commands found in stream
[2026-10-28 00:20:44,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:20:44,133.133 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 00:20:48,165.165 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:20:48,167.167 INFO    ] Checking for system updates...
[2026-10-28 00:20:48,203.203 INFO    ] 200
[2026-10-28 00:20:48,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:20:48,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:20:48,269.269 INFO    ] No update needed
[2026-10-28 00:20:48,271.271 INFO    ] Checking for camera pi updates...
[2026-10-28 00:20:48,305.305 INFO    ] 200
[2026-10-28 00:20:48,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:20:48,351.351 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:20:48,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:20:48,436.436 INFO    ] No camera update needed
[2026-10-28 00:20:48,439.439 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:20:48,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:20:48,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:20:48,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:20:50,491.491 INFO    ] ================================================
[2026-10-28 00:20:50,506.506 INFO    ] Launching Daemon at Wed Oct 28 00:20:50 IST 2026
[2026-10-28 00:20:50,517.517 INFO    ] ================================================
[2026-10-28 00:20:51,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:20:51
[2026-10-28 00:20:51,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:20:51,936.936 INFO    ] Initializing speech engine...
[2026-10-28 00:20:51,945.945 INFO    ] 2026-10-28 00:20:51
[2026-10-28 00:20:52,192.192 INFO    ] 2026-10-28 00:20:52
[2026-10-28 00:20:52,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:20:52,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:20:52,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:20:52,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:20:52,761.761 INFO    ] time= 28/10/2026 00:20:52
[2026-10-28 00:20:52,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:20:52,796.796 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:20:52,926.926 INFO    ] No existing commands found in stream
[2026-10-28 00:20:57,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:20:57,952.952 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-28 00:21:01,259.259 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:21:01,262.262 INFO    ] Checking for system updates...
[2026-10-28 00:21:01,301.301 INFO    ] 200
[2026-10-28 00:21:01,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:21:01,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:21:01,363.363 INFO    ] No update needed
[2026-10-28 00:21:01,366.366 INFO    ] Checking for camera pi updates...
[2026-10-28 00:21:01,402.402 INFO    ] 200
[2026-10-28 00:21:01,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:21:01,448.448 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:21:01,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:21:01,528.528 INFO    ] No camera update needed
[2026-10-28 00:21:01,531.531 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:21:01,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:21:01,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:21:01,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:21:03,587.587 INFO    ] ================================================
[2026-10-28 00:21:03,602.602 INFO    ] Launching Daemon at Wed Oct 28 00:21:03 IST 2026
[2026-10-28 00:21:03,612.612 INFO    ] ================================================
[2026-10-28 00:21:04,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:21:04
[2026-10-28 00:21:04,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:21:05,090.090 INFO    ] Initializing speech engine...
[2026-10-28 00:21:05,096.096 INFO    ] 2026-10-28 00:21:05
[2026-10-28 00:21:05,357.357 INFO    ] 2026-10-28 00:21:05
[2026-10-28 00:21:05,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:21:05,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:21:05,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:21:05,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:21:05,910.910 INFO    ] time= 28/10/2026 00:21:05
[2026-10-28 00:21:05,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:21:05,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:21:06,064.064 INFO    ] No existing commands found in stream
[2026-10-28 00:21:11,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:21:11,078.078 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-28 00:21:13,860.860 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:21:13,863.863 INFO    ] Checking for system updates...
[2026-10-28 00:21:13,898.898 INFO    ] 200
[2026-10-28 00:21:13,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:21:13,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:21:13,955.955 INFO    ] No update needed
[2026-10-28 00:21:13,957.957 INFO    ] Checking for camera pi updates...
[2026-10-28 00:21:13,991.991 INFO    ] 200
[2026-10-28 00:21:13,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:21:14,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:21:14,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:21:14,123.123 INFO    ] No camera update needed
[2026-10-28 00:21:14,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:21:14,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:21:14,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:21:14,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:21:16,178.178 INFO    ] ================================================
[2026-10-28 00:21:16,193.193 INFO    ] Launching Daemon at Wed Oct 28 00:21:16 IST 2026
[2026-10-28 00:21:16,203.203 INFO    ] ================================================
[2026-10-28 00:21:16,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:21:16
[2026-10-28 00:21:17,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:21:17,632.632 INFO    ] Initializing speech engine...
[2026-10-28 00:21:17,648.648 INFO    ] 2026-10-28 00:21:17
[2026-10-28 00:21:17,930.930 INFO    ] 2026-10-28 00:21:17
[2026-10-28 00:21:17,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:21:18,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:21:18,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:21:18,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:21:18,499.499 INFO    ] time= 28/10/2026 00:21:18
[2026-10-28 00:21:18,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:21:18,523.523 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:21:18,660.660 INFO    ] No existing commands found in stream
[2026-10-28 00:21:23,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:21:23,686.686 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-28 00:21:26,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:21:26,516.516 INFO    ] Checking for system updates...
[2026-10-28 00:21:26,554.554 INFO    ] 200
[2026-10-28 00:21:26,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:21:26,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:21:26,616.616 INFO    ] No update needed
[2026-10-28 00:21:26,619.619 INFO    ] Checking for camera pi updates...
[2026-10-28 00:21:26,655.655 INFO    ] 200
[2026-10-28 00:21:26,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:21:26,701.701 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:21:26,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:21:26,784.784 INFO    ] No camera update needed
[2026-10-28 00:21:26,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:21:26,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:21:26,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:21:26,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:21:28,839.839 INFO    ] ================================================
[2026-10-28 00:21:28,854.854 INFO    ] Launching Daemon at Wed Oct 28 00:21:28 IST 2026
[2026-10-28 00:21:28,864.864 INFO    ] ================================================
[2026-10-28 00:21:29,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:21:29
[2026-10-28 00:21:30,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:21:30,326.326 INFO    ] Initializing speech engine...
[2026-10-28 00:21:30,335.335 INFO    ] 2026-10-28 00:21:30
[2026-10-28 00:21:30,581.581 INFO    ] 2026-10-28 00:21:30
[2026-10-28 00:21:30,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:21:30,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:21:30,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:21:31,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:21:31,146.146 INFO    ] time= 28/10/2026 00:21:31
[2026-10-28 00:21:31,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:21:31,180.180 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:21:31,305.305 INFO    ] No existing commands found in stream
[2026-10-28 00:21:36,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:21:36,338.338 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-28 00:21:38,938.938 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:21:38,941.941 INFO    ] Checking for system updates...
[2026-10-28 00:21:38,980.980 INFO    ] 200
[2026-10-28 00:21:38,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:21:39,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:21:39,042.042 INFO    ] No update needed
[2026-10-28 00:21:39,046.046 INFO    ] Checking for camera pi updates...
[2026-10-28 00:21:39,082.082 INFO    ] 200
[2026-10-28 00:21:39,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:21:39,129.129 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:21:39,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:21:39,215.215 INFO    ] No camera update needed
[2026-10-28 00:21:39,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:21:39,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:21:39,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:21:39,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:21:41,271.271 INFO    ] ================================================
[2026-10-28 00:21:41,286.286 INFO    ] Launching Daemon at Wed Oct 28 00:21:41 IST 2026
[2026-10-28 00:21:41,296.296 INFO    ] ================================================
[2026-10-28 00:21:41,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:21:41
[2026-10-28 00:21:42,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:21:42,899.899 INFO    ] Initializing speech engine...
[2026-10-28 00:21:42,907.907 INFO    ] 2026-10-28 00:21:42
[2026-10-28 00:21:43,187.187 INFO    ] 2026-10-28 00:21:43
[2026-10-28 00:21:43,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:21:43,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:21:43,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:21:43,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:21:43,855.855 INFO    ] time= 28/10/2026 00:21:43
[2026-10-28 00:21:43,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:21:43,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:21:44,150.150 INFO    ] No existing commands found in stream
[2026-10-28 00:21:49,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:21:49,173.173 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 00:21:52,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:21:52,369.369 INFO    ] Checking for system updates...
[2026-10-28 00:21:52,406.406 INFO    ] 200
[2026-10-28 00:21:52,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:21:52,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:21:52,466.466 INFO    ] No update needed
[2026-10-28 00:21:52,468.468 INFO    ] Checking for camera pi updates...
[2026-10-28 00:21:52,506.506 INFO    ] 200
[2026-10-28 00:21:52,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:21:52,550.550 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:21:52,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:21:52,733.733 INFO    ] No camera update needed
[2026-10-28 00:21:52,736.736 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:21:52,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:21:52,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:21:52,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:21:54,792.792 INFO    ] ================================================
[2026-10-28 00:21:54,807.807 INFO    ] Launching Daemon at Wed Oct 28 00:21:54 IST 2026
[2026-10-28 00:21:54,818.818 INFO    ] ================================================
[2026-10-28 00:21:55,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:21:55
[2026-10-28 00:21:55,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:21:56,250.250 INFO    ] Initializing speech engine...
[2026-10-28 00:21:56,256.256 INFO    ] 2026-10-28 00:21:56
[2026-10-28 00:21:56,516.516 INFO    ] 2026-10-28 00:21:56
[2026-10-28 00:21:56,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:21:56,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:21:56,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:21:57,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:21:57,062.062 INFO    ] time= 28/10/2026 00:21:57
[2026-10-28 00:21:57,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:21:57,109.109 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:21:57,226.226 INFO    ] No existing commands found in stream
[2026-10-28 00:22:02,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:22:02,249.249 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-28 00:22:05,738.738 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:22:05,740.740 INFO    ] Checking for system updates...
[2026-10-28 00:22:05,779.779 INFO    ] 200
[2026-10-28 00:22:05,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:22:05,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:22:05,841.841 INFO    ] No update needed
[2026-10-28 00:22:05,843.843 INFO    ] Checking for camera pi updates...
[2026-10-28 00:22:05,880.880 INFO    ] 200
[2026-10-28 00:22:05,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:22:05,926.926 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:22:06,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:22:06,014.014 INFO    ] No camera update needed
[2026-10-28 00:22:06,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:22:06,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:22:06,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:22:06,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:22:08,069.069 INFO    ] ================================================
[2026-10-28 00:22:08,085.085 INFO    ] Launching Daemon at Wed Oct 28 00:22:08 IST 2026
[2026-10-28 00:22:08,095.095 INFO    ] ================================================
[2026-10-28 00:22:08,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:22:08
[2026-10-28 00:22:09,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:22:09,548.548 INFO    ] Initializing speech engine...
[2026-10-28 00:22:09,557.557 INFO    ] 2026-10-28 00:22:09
[2026-10-28 00:22:09,802.802 INFO    ] 2026-10-28 00:22:09
[2026-10-28 00:22:09,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:22:10,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:22:10,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:22:10,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:22:10,320.320 INFO    ] time= 28/10/2026 00:22:10
[2026-10-28 00:22:10,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:22:10,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:22:10,572.572 INFO    ] No existing commands found in stream
[2026-10-28 00:22:15,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:22:15,605.605 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 00:22:19,431.431 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:22:19,434.434 INFO    ] Checking for system updates...
[2026-10-28 00:22:19,472.472 INFO    ] 200
[2026-10-28 00:22:19,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:22:19,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:22:19,535.535 INFO    ] No update needed
[2026-10-28 00:22:19,538.538 INFO    ] Checking for camera pi updates...
[2026-10-28 00:22:19,574.574 INFO    ] 200
[2026-10-28 00:22:19,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:22:19,617.617 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:22:19,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:22:19,699.699 INFO    ] No camera update needed
[2026-10-28 00:22:19,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:22:19,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:22:19,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:22:19,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:22:21,755.755 INFO    ] ================================================
[2026-10-28 00:22:21,770.770 INFO    ] Launching Daemon at Wed Oct 28 00:22:21 IST 2026
[2026-10-28 00:22:21,781.781 INFO    ] ================================================
[2026-10-28 00:22:22,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:22:22
[2026-10-28 00:22:22,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:22:23,213.213 INFO    ] Initializing speech engine...
[2026-10-28 00:22:23,222.222 INFO    ] 2026-10-28 00:22:23
[2026-10-28 00:22:23,469.469 INFO    ] 2026-10-28 00:22:23
[2026-10-28 00:22:23,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:22:23,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:22:23,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:22:24,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:22:24,044.044 INFO    ] time= 28/10/2026 00:22:24
[2026-10-28 00:22:24,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:22:24,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:22:24,201.201 INFO    ] No existing commands found in stream
[2026-10-28 00:22:29,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:22:29,217.217 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-28 00:22:31,101.101 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:22:31,104.104 INFO    ] Checking for system updates...
[2026-10-28 00:22:31,141.141 INFO    ] 200
[2026-10-28 00:22:31,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:22:31,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:22:31,200.200 INFO    ] No update needed
[2026-10-28 00:22:31,203.203 INFO    ] Checking for camera pi updates...
[2026-10-28 00:22:31,237.237 INFO    ] 200
[2026-10-28 00:22:31,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:22:31,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:22:31,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:22:31,416.416 INFO    ] No camera update needed
[2026-10-28 00:22:31,419.419 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:22:31,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:22:31,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:22:31,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:22:33,477.477 INFO    ] ================================================
[2026-10-28 00:22:33,492.492 INFO    ] Launching Daemon at Wed Oct 28 00:22:33 IST 2026
[2026-10-28 00:22:33,503.503 INFO    ] ================================================
[2026-10-28 00:22:34,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:22:34
[2026-10-28 00:22:34,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:22:34,913.913 INFO    ] Initializing speech engine...
[2026-10-28 00:22:34,936.936 INFO    ] 2026-10-28 00:22:34
[2026-10-28 00:22:35,193.193 INFO    ] 2026-10-28 00:22:35
[2026-10-28 00:22:35,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:22:35,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:22:35,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:22:35,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:22:35,775.775 INFO    ] time= 28/10/2026 00:22:35
[2026-10-28 00:22:35,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:22:35,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:22:35,941.941 INFO    ] No existing commands found in stream
[2026-10-28 00:22:40,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:22:40,963.963 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-28 00:22:41,990.990 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:22:41,992.992 INFO    ] Checking for system updates...
[2026-10-28 00:22:42,028.028 INFO    ] 200
[2026-10-28 00:22:42,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:22:42,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:22:42,089.089 INFO    ] No update needed
[2026-10-28 00:22:42,091.091 INFO    ] Checking for camera pi updates...
[2026-10-28 00:22:42,126.126 INFO    ] 200
[2026-10-28 00:22:42,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:22:42,172.172 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:22:42,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:22:42,252.252 INFO    ] No camera update needed
[2026-10-28 00:22:42,254.254 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:22:42,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:22:42,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:22:42,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:22:44,306.306 INFO    ] ================================================
[2026-10-28 00:22:44,321.321 INFO    ] Launching Daemon at Wed Oct 28 00:22:44 IST 2026
[2026-10-28 00:22:44,332.332 INFO    ] ================================================
[2026-10-28 00:22:44,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:22:44
[2026-10-28 00:22:45,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:22:45,748.748 INFO    ] Initializing speech engine...
[2026-10-28 00:22:45,757.757 INFO    ] 2026-10-28 00:22:45
[2026-10-28 00:22:46,007.007 INFO    ] 2026-10-28 00:22:46
[2026-10-28 00:22:46,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:22:46,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:22:46,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:22:46,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:22:46,574.574 INFO    ] time= 28/10/2026 00:22:46
[2026-10-28 00:22:46,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:22:46,621.621 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:22:46,740.740 INFO    ] No existing commands found in stream
[2026-10-28 00:22:51,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:22:51,767.767 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-28 00:22:55,702.702 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:22:55,705.705 INFO    ] Checking for system updates...
[2026-10-28 00:22:55,744.744 INFO    ] 200
[2026-10-28 00:22:55,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:22:55,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:22:55,807.807 INFO    ] No update needed
[2026-10-28 00:22:55,810.810 INFO    ] Checking for camera pi updates...
[2026-10-28 00:22:55,850.850 INFO    ] 200
[2026-10-28 00:22:55,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:22:55,901.901 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:22:56,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:22:56,003.003 INFO    ] No camera update needed
[2026-10-28 00:22:56,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:22:56,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:22:56,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:22:56,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:22:58,059.059 INFO    ] ================================================
[2026-10-28 00:22:58,074.074 INFO    ] Launching Daemon at Wed Oct 28 00:22:58 IST 2026
[2026-10-28 00:22:58,084.084 INFO    ] ================================================
[2026-10-28 00:22:58,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:22:58
[2026-10-28 00:22:59,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:22:59,540.540 INFO    ] Initializing speech engine...
[2026-10-28 00:22:59,550.550 INFO    ] 2026-10-28 00:22:59
[2026-10-28 00:22:59,813.813 INFO    ] 2026-10-28 00:22:59
[2026-10-28 00:22:59,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:23:00,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:23:00,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:23:00,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:23:00,357.357 INFO    ] time= 28/10/2026 00:23:00
[2026-10-28 00:23:00,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:23:00,392.392 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:23:00,559.559 INFO    ] No existing commands found in stream
[2026-10-28 00:23:05,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:23:05,592.592 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-28 00:23:08,628.628 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:23:08,631.631 INFO    ] Checking for system updates...
[2026-10-28 00:23:08,667.667 INFO    ] 200
[2026-10-28 00:23:08,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:23:08,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:23:08,729.729 INFO    ] No update needed
[2026-10-28 00:23:08,731.731 INFO    ] Checking for camera pi updates...
[2026-10-28 00:23:08,771.771 INFO    ] 200
[2026-10-28 00:23:08,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:23:08,814.814 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:23:08,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:23:08,900.900 INFO    ] No camera update needed
[2026-10-28 00:23:08,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:23:08,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:23:08,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:23:08,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:23:10,956.956 INFO    ] ================================================
[2026-10-28 00:23:10,971.971 INFO    ] Launching Daemon at Wed Oct 28 00:23:10 IST 2026
[2026-10-28 00:23:10,981.981 INFO    ] ================================================
[2026-10-28 00:23:11,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:23:11
[2026-10-28 00:23:12,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:23:12,535.535 INFO    ] Initializing speech engine...
[2026-10-28 00:23:12,543.543 INFO    ] 2026-10-28 00:23:12
[2026-10-28 00:23:12,813.813 INFO    ] 2026-10-28 00:23:12
[2026-10-28 00:23:12,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:23:13,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:23:13,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:23:13,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:23:13,366.366 INFO    ] time= 28/10/2026 00:23:13
[2026-10-28 00:23:13,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:23:13,400.400 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:23:13,581.581 INFO    ] No existing commands found in stream
[2026-10-28 00:23:18,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:23:18,616.616 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-28 00:23:22,964.964 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:23:22,967.967 INFO    ] Checking for system updates...
[2026-10-28 00:23:23,003.003 INFO    ] 200
[2026-10-28 00:23:23,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:23:23,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:23:23,073.073 INFO    ] No update needed
[2026-10-28 00:23:23,075.075 INFO    ] Checking for camera pi updates...
[2026-10-28 00:23:23,111.111 INFO    ] 200
[2026-10-28 00:23:23,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:23:23,158.158 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:23:23,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:23:23,240.240 INFO    ] No camera update needed
[2026-10-28 00:23:23,242.242 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:23:23,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:23:23,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:23:23,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:23:25,295.295 INFO    ] ================================================
[2026-10-28 00:23:25,310.310 INFO    ] Launching Daemon at Wed Oct 28 00:23:25 IST 2026
[2026-10-28 00:23:25,321.321 INFO    ] ================================================
[2026-10-28 00:23:25,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:23:25
[2026-10-28 00:23:26,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:23:26,806.806 INFO    ] Initializing speech engine...
[2026-10-28 00:23:26,819.819 INFO    ] 2026-10-28 00:23:26
[2026-10-28 00:23:27,068.068 INFO    ] 2026-10-28 00:23:27
[2026-10-28 00:23:27,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:23:27,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:23:27,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:23:27,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:23:27,638.638 INFO    ] time= 28/10/2026 00:23:27
[2026-10-28 00:23:27,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:23:27,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:23:27,786.786 INFO    ] No existing commands found in stream
[2026-10-28 00:23:32,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:23:32,808.808 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-28 00:23:37,005.005 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:23:37,008.008 INFO    ] Checking for system updates...
[2026-10-28 00:23:37,044.044 INFO    ] 200
[2026-10-28 00:23:37,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:23:37,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:23:37,106.106 INFO    ] No update needed
[2026-10-28 00:23:37,108.108 INFO    ] Checking for camera pi updates...
[2026-10-28 00:23:37,142.142 INFO    ] 200
[2026-10-28 00:23:37,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:23:37,188.188 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:23:37,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:23:37,270.270 INFO    ] No camera update needed
[2026-10-28 00:23:37,272.272 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:23:37,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:23:37,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:23:37,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:23:39,324.324 INFO    ] ================================================
[2026-10-28 00:23:39,339.339 INFO    ] Launching Daemon at Wed Oct 28 00:23:39 IST 2026
[2026-10-28 00:23:39,350.350 INFO    ] ================================================
[2026-10-28 00:23:39,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:23:39
[2026-10-28 00:23:40,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:23:40,790.790 INFO    ] Initializing speech engine...
[2026-10-28 00:23:40,800.800 INFO    ] 2026-10-28 00:23:40
[2026-10-28 00:23:41,052.052 INFO    ] 2026-10-28 00:23:41
[2026-10-28 00:23:41,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:23:41,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:23:41,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:23:41,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:23:41,625.625 INFO    ] time= 28/10/2026 00:23:41
[2026-10-28 00:23:41,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:23:41,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:23:41,796.796 INFO    ] No existing commands found in stream
[2026-10-28 00:23:46,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:23:46,829.829 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-28 00:23:50,980.980 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:23:50,983.983 INFO    ] Checking for system updates...
[2026-10-28 00:23:51,018.018 INFO    ] 200
[2026-10-28 00:23:51,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:23:51,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:23:51,080.080 INFO    ] No update needed
[2026-10-28 00:23:51,082.082 INFO    ] Checking for camera pi updates...
[2026-10-28 00:23:51,116.116 INFO    ] 200
[2026-10-28 00:23:51,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:23:51,158.158 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:23:51,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:23:51,240.240 INFO    ] No camera update needed
[2026-10-28 00:23:51,243.243 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:23:51,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:23:51,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:23:51,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:23:53,297.297 INFO    ] ================================================
[2026-10-28 00:23:53,313.313 INFO    ] Launching Daemon at Wed Oct 28 00:23:53 IST 2026
[2026-10-28 00:23:53,324.324 INFO    ] ================================================
[2026-10-28 00:23:53,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:23:53
[2026-10-28 00:23:54,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:23:54,784.784 INFO    ] Initializing speech engine...
[2026-10-28 00:23:54,793.793 INFO    ] 2026-10-28 00:23:54
[2026-10-28 00:23:55,065.065 INFO    ] 2026-10-28 00:23:55
[2026-10-28 00:23:55,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:23:55,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:23:55,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:23:55,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:23:55,609.609 INFO    ] time= 28/10/2026 00:23:55
[2026-10-28 00:23:55,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:23:55,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:23:55,771.771 INFO    ] No existing commands found in stream
[2026-10-28 00:24:00,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:24:00,804.804 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 00:24:01,940.940 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:24:01,942.942 INFO    ] Checking for system updates...
[2026-10-28 00:24:01,978.978 INFO    ] 200
[2026-10-28 00:24:01,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:24:02,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:24:02,072.072 INFO    ] No update needed
[2026-10-28 00:24:02,076.076 INFO    ] Checking for camera pi updates...
[2026-10-28 00:24:02,150.150 INFO    ] 200
[2026-10-28 00:24:02,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:24:02,244.244 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:24:02,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:24:02,476.476 INFO    ] No camera update needed
[2026-10-28 00:24:02,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:24:02,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:24:02,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:24:02,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:24:04,554.554 INFO    ] ================================================
[2026-10-28 00:24:04,569.569 INFO    ] Launching Daemon at Wed Oct 28 00:24:04 IST 2026
[2026-10-28 00:24:04,580.580 INFO    ] ================================================
[2026-10-28 00:24:05,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:24:05
[2026-10-28 00:24:05,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:24:06,019.019 INFO    ] Initializing speech engine...
[2026-10-28 00:24:06,038.038 INFO    ] 2026-10-28 00:24:06
[2026-10-28 00:24:06,288.288 INFO    ] 2026-10-28 00:24:06
[2026-10-28 00:24:06,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:24:06,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:24:06,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:24:06,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:24:06,857.857 INFO    ] time= 28/10/2026 00:24:06
[2026-10-28 00:24:06,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:24:06,909.909 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:24:07,016.016 INFO    ] No existing commands found in stream
[2026-10-28 00:24:12,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:24:12,047.047 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-28 00:24:13,047.047 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:24:13,049.049 INFO    ] Checking for system updates...
[2026-10-28 00:24:13,084.084 INFO    ] 200
[2026-10-28 00:24:13,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:24:13,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:24:13,145.145 INFO    ] No update needed
[2026-10-28 00:24:13,147.147 INFO    ] Checking for camera pi updates...
[2026-10-28 00:24:13,180.180 INFO    ] 200
[2026-10-28 00:24:13,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:24:13,225.225 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:24:13,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:24:13,305.305 INFO    ] No camera update needed
[2026-10-28 00:24:13,307.307 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:24:13,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:24:13,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:24:13,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:24:15,360.360 INFO    ] ================================================
[2026-10-28 00:24:15,376.376 INFO    ] Launching Daemon at Wed Oct 28 00:24:15 IST 2026
[2026-10-28 00:24:15,387.387 INFO    ] ================================================
[2026-10-28 00:24:15,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:24:15
[2026-10-28 00:24:16,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:24:16,807.807 INFO    ] Initializing speech engine...
[2026-10-28 00:24:16,816.816 INFO    ] 2026-10-28 00:24:16
[2026-10-28 00:24:17,065.065 INFO    ] 2026-10-28 00:24:17
[2026-10-28 00:24:17,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:24:17,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:24:17,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:24:17,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:24:17,541.541 INFO    ] time= 28/10/2026 00:24:17
[2026-10-28 00:24:17,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:24:17,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:24:17,755.755 INFO    ] No existing commands found in stream
[2026-10-28 00:24:22,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:24:22,780.780 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 00:24:24,140.140 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:24:24,142.142 INFO    ] Checking for system updates...
[2026-10-28 00:24:24,178.178 INFO    ] 200
[2026-10-28 00:24:24,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:24:24,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:24:24,234.234 INFO    ] No update needed
[2026-10-28 00:24:24,237.237 INFO    ] Checking for camera pi updates...
[2026-10-28 00:24:24,274.274 INFO    ] 200
[2026-10-28 00:24:24,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:24:24,317.317 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:24:24,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:24:24,403.403 INFO    ] No camera update needed
[2026-10-28 00:24:24,405.405 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:24:24,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:24:24,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:24:24,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:24:26,459.459 INFO    ] ================================================
[2026-10-28 00:24:26,474.474 INFO    ] Launching Daemon at Wed Oct 28 00:24:26 IST 2026
[2026-10-28 00:24:26,485.485 INFO    ] ================================================
[2026-10-28 00:24:27,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:24:27
[2026-10-28 00:24:27,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:24:27,949.949 INFO    ] Initializing speech engine...
[2026-10-28 00:24:27,965.965 INFO    ] 2026-10-28 00:24:27
[2026-10-28 00:24:28,248.248 INFO    ] 2026-10-28 00:24:28
[2026-10-28 00:24:28,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:24:28,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:24:28,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:24:28,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:24:28,847.847 INFO    ] time= 28/10/2026 00:24:28
[2026-10-28 00:24:28,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:24:28,872.872 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:24:29,003.003 INFO    ] No existing commands found in stream
[2026-10-28 00:24:34,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:24:34,020.020 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 00:24:37,168.168 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:24:37,171.171 INFO    ] Checking for system updates...
[2026-10-28 00:24:37,210.210 INFO    ] 200
[2026-10-28 00:24:37,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:24:37,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:24:37,272.272 INFO    ] No update needed
[2026-10-28 00:24:37,275.275 INFO    ] Checking for camera pi updates...
[2026-10-28 00:24:37,308.308 INFO    ] 200
[2026-10-28 00:24:37,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:24:37,351.351 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:24:37,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:24:37,432.432 INFO    ] No camera update needed
[2026-10-28 00:24:37,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:24:37,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:24:37,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:24:37,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:24:39,487.487 INFO    ] ================================================
[2026-10-28 00:24:39,502.502 INFO    ] Launching Daemon at Wed Oct 28 00:24:39 IST 2026
[2026-10-28 00:24:39,514.514 INFO    ] ================================================
[2026-10-28 00:24:40,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:24:40
[2026-10-28 00:24:40,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:24:40,922.922 INFO    ] Initializing speech engine...
[2026-10-28 00:24:40,941.941 INFO    ] 2026-10-28 00:24:40
[2026-10-28 00:24:41,191.191 INFO    ] 2026-10-28 00:24:41
[2026-10-28 00:24:41,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:24:41,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:24:41,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:24:41,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:24:41,764.764 INFO    ] time= 28/10/2026 00:24:41
[2026-10-28 00:24:41,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:24:41,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:24:41,990.990 INFO    ] No existing commands found in stream
[2026-10-28 00:24:47,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:24:47,017.017 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-28 00:24:48,153.153 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:24:48,156.156 INFO    ] Checking for system updates...
[2026-10-28 00:24:48,192.192 INFO    ] 200
[2026-10-28 00:24:48,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:24:48,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:24:48,259.259 INFO    ] No update needed
[2026-10-28 00:24:48,261.261 INFO    ] Checking for camera pi updates...
[2026-10-28 00:24:48,295.295 INFO    ] 200
[2026-10-28 00:24:48,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:24:48,342.342 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:24:48,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:24:48,424.424 INFO    ] No camera update needed
[2026-10-28 00:24:48,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:24:48,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:24:48,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:24:48,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:24:50,482.482 INFO    ] ================================================
[2026-10-28 00:24:50,497.497 INFO    ] Launching Daemon at Wed Oct 28 00:24:50 IST 2026
[2026-10-28 00:24:50,509.509 INFO    ] ================================================
[2026-10-28 00:24:51,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:24:51
[2026-10-28 00:24:51,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:24:51,947.947 INFO    ] Initializing speech engine...
[2026-10-28 00:24:51,957.957 INFO    ] 2026-10-28 00:24:51
[2026-10-28 00:24:52,212.212 INFO    ] 2026-10-28 00:24:52
[2026-10-28 00:24:52,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:24:52,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:24:52,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:24:52,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:24:52,767.767 INFO    ] time= 28/10/2026 00:24:52
[2026-10-28 00:24:52,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:24:52,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:24:52,949.949 INFO    ] No existing commands found in stream
[2026-10-28 00:24:57,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:24:57,982.982 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-28 00:25:01,958.958 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:25:01,961.961 INFO    ] Checking for system updates...
[2026-10-28 00:25:02,006.006 INFO    ] 200
[2026-10-28 00:25:02,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:25:02,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:25:02,095.095 INFO    ] No update needed
[2026-10-28 00:25:02,098.098 INFO    ] Checking for camera pi updates...
[2026-10-28 00:25:02,139.139 INFO    ] 200
[2026-10-28 00:25:02,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:25:02,200.200 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:25:02,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:25:02,338.338 INFO    ] No camera update needed
[2026-10-28 00:25:02,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:25:02,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:25:02,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:25:02,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:25:04,401.401 INFO    ] ================================================
[2026-10-28 00:25:04,416.416 INFO    ] Launching Daemon at Wed Oct 28 00:25:04 IST 2026
[2026-10-28 00:25:04,427.427 INFO    ] ================================================
[2026-10-28 00:25:05,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:25:05
[2026-10-28 00:25:05,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:25:05,886.886 INFO    ] Initializing speech engine...
[2026-10-28 00:25:05,893.893 INFO    ] 2026-10-28 00:25:05
[2026-10-28 00:25:06,154.154 INFO    ] 2026-10-28 00:25:06
[2026-10-28 00:25:06,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:25:06,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:25:06,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:25:06,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:25:06,710.710 INFO    ] time= 28/10/2026 00:25:06
[2026-10-28 00:25:06,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:25:06,748.748 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:25:06,865.865 INFO    ] No existing commands found in stream
[2026-10-28 00:25:11,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:25:11,898.898 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-28 00:25:14,361.361 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:25:14,364.364 INFO    ] Checking for system updates...
[2026-10-28 00:25:14,399.399 INFO    ] 200
[2026-10-28 00:25:14,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:25:14,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:25:14,456.456 INFO    ] No update needed
[2026-10-28 00:25:14,458.458 INFO    ] Checking for camera pi updates...
[2026-10-28 00:25:14,492.492 INFO    ] 200
[2026-10-28 00:25:14,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:25:14,543.543 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:25:14,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:25:14,620.620 INFO    ] No camera update needed
[2026-10-28 00:25:14,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:25:14,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:25:14,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:25:14,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:25:16,677.677 INFO    ] ================================================
[2026-10-28 00:25:16,692.692 INFO    ] Launching Daemon at Wed Oct 28 00:25:16 IST 2026
[2026-10-28 00:25:16,703.703 INFO    ] ================================================
[2026-10-28 00:25:17,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:25:17
[2026-10-28 00:25:17,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:25:18,285.285 INFO    ] Initializing speech engine...
[2026-10-28 00:25:18,299.299 INFO    ] 2026-10-28 00:25:18
[2026-10-28 00:25:18,579.579 INFO    ] 2026-10-28 00:25:18
[2026-10-28 00:25:18,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:25:18,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:25:18,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:25:19,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:25:19,139.139 INFO    ] time= 28/10/2026 00:25:19
[2026-10-28 00:25:19,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:25:19,179.179 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:25:19,306.306 INFO    ] No existing commands found in stream
[2026-10-28 00:25:24,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:25:24,335.335 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-28 00:25:25,241.241 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:25:25,245.245 INFO    ] Checking for system updates...
[2026-10-28 00:25:25,281.281 INFO    ] 200
[2026-10-28 00:25:25,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:25:25,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:25:25,339.339 INFO    ] No update needed
[2026-10-28 00:25:25,342.342 INFO    ] Checking for camera pi updates...
[2026-10-28 00:25:25,376.376 INFO    ] 200
[2026-10-28 00:25:25,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:25:25,419.419 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:25:25,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:25:25,516.516 INFO    ] No camera update needed
[2026-10-28 00:25:25,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:25:25,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:25:25,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:25:25,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:25:27,571.571 INFO    ] ================================================
[2026-10-28 00:25:27,586.586 INFO    ] Launching Daemon at Wed Oct 28 00:25:27 IST 2026
[2026-10-28 00:25:27,598.598 INFO    ] ================================================
[2026-10-28 00:25:28,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:25:28
[2026-10-28 00:25:28,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:25:29,214.214 INFO    ] Initializing speech engine...
[2026-10-28 00:25:29,221.221 INFO    ] 2026-10-28 00:25:29
[2026-10-28 00:25:29,498.498 INFO    ] 2026-10-28 00:25:29
[2026-10-28 00:25:29,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:25:29,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:25:29,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:25:30,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:25:30,054.054 INFO    ] time= 28/10/2026 00:25:30
[2026-10-28 00:25:30,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:25:30,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:25:30,207.207 INFO    ] No existing commands found in stream
[2026-10-28 00:25:35,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:25:35,225.225 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-28 00:25:38,100.100 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:25:38,103.103 INFO    ] Checking for system updates...
[2026-10-28 00:25:38,142.142 INFO    ] 200
[2026-10-28 00:25:38,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:25:38,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:25:38,199.199 INFO    ] No update needed
[2026-10-28 00:25:38,201.201 INFO    ] Checking for camera pi updates...
[2026-10-28 00:25:38,237.237 INFO    ] 200
[2026-10-28 00:25:38,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:25:38,280.280 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:25:38,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:25:38,372.372 INFO    ] No camera update needed
[2026-10-28 00:25:38,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:25:38,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:25:38,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:25:38,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:25:40,426.426 INFO    ] ================================================
[2026-10-28 00:25:40,442.442 INFO    ] Launching Daemon at Wed Oct 28 00:25:40 IST 2026
[2026-10-28 00:25:40,453.453 INFO    ] ================================================
[2026-10-28 00:25:41,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:25:41
[2026-10-28 00:25:41,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:25:41,867.867 INFO    ] Initializing speech engine...
[2026-10-28 00:25:41,876.876 INFO    ] 2026-10-28 00:25:41
[2026-10-28 00:25:42,167.167 INFO    ] 2026-10-28 00:25:42
[2026-10-28 00:25:42,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:25:42,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:25:42,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:25:42,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:25:42,790.790 INFO    ] time= 28/10/2026 00:25:42
[2026-10-28 00:25:42,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:25:42,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:25:42,943.943 INFO    ] No existing commands found in stream
[2026-10-28 00:25:47,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:25:47,971.971 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-28 00:25:48,765.765 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:25:48,768.768 INFO    ] Checking for system updates...
[2026-10-28 00:25:48,804.804 INFO    ] 200
[2026-10-28 00:25:48,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:25:48,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:25:48,861.861 INFO    ] No update needed
[2026-10-28 00:25:48,863.863 INFO    ] Checking for camera pi updates...
[2026-10-28 00:25:48,896.896 INFO    ] 200
[2026-10-28 00:25:48,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:25:48,940.940 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:25:49,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:25:49,024.024 INFO    ] No camera update needed
[2026-10-28 00:25:49,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:25:49,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:25:49,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:25:49,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:25:51,079.079 INFO    ] ================================================
[2026-10-28 00:25:51,094.094 INFO    ] Launching Daemon at Wed Oct 28 00:25:51 IST 2026
[2026-10-28 00:25:51,105.105 INFO    ] ================================================
[2026-10-28 00:25:51,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:25:51
[2026-10-28 00:25:52,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:25:52,537.537 INFO    ] Initializing speech engine...
[2026-10-28 00:25:52,545.545 INFO    ] 2026-10-28 00:25:52
[2026-10-28 00:25:52,818.818 INFO    ] 2026-10-28 00:25:52
[2026-10-28 00:25:52,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:25:53,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:25:53,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:25:53,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:25:53,382.382 INFO    ] time= 28/10/2026 00:25:53
[2026-10-28 00:25:53,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:25:53,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:25:53,545.545 INFO    ] No existing commands found in stream
[2026-10-28 00:25:58,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:25:58,578.578 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-28 00:26:00,274.274 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:26:00,277.277 INFO    ] Checking for system updates...
[2026-10-28 00:26:00,314.314 INFO    ] 200
[2026-10-28 00:26:00,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:26:00,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:26:00,380.380 INFO    ] No update needed
[2026-10-28 00:26:00,383.383 INFO    ] Checking for camera pi updates...
[2026-10-28 00:26:00,417.417 INFO    ] 200
[2026-10-28 00:26:00,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:26:00,465.465 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:26:00,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:26:00,545.545 INFO    ] No camera update needed
[2026-10-28 00:26:00,548.548 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:26:00,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:26:00,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:26:00,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:26:02,636.636 INFO    ] ================================================
[2026-10-28 00:26:02,661.661 INFO    ] Launching Daemon at Wed Oct 28 00:26:02 IST 2026
[2026-10-28 00:26:02,679.679 INFO    ] ================================================
[2026-10-28 00:26:03,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:26:03
[2026-10-28 00:26:03,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:26:04,226.226 INFO    ] Initializing speech engine...
[2026-10-28 00:26:04,232.232 INFO    ] 2026-10-28 00:26:04
[2026-10-28 00:26:04,526.526 INFO    ] 2026-10-28 00:26:04
[2026-10-28 00:26:04,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:26:04,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:26:04,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:26:05,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:26:05,082.082 INFO    ] time= 28/10/2026 00:26:05
[2026-10-28 00:26:05,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:26:05,105.105 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:26:05,238.238 INFO    ] No existing commands found in stream
[2026-10-28 00:26:10,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:26:10,263.263 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-28 00:26:11,117.117 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:26:11,119.119 INFO    ] Checking for system updates...
[2026-10-28 00:26:11,158.158 INFO    ] 200
[2026-10-28 00:26:11,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:26:11,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:26:11,221.221 INFO    ] No update needed
[2026-10-28 00:26:11,223.223 INFO    ] Checking for camera pi updates...
[2026-10-28 00:26:11,256.256 INFO    ] 200
[2026-10-28 00:26:11,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:26:11,303.303 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:26:11,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:26:11,486.486 INFO    ] No camera update needed
[2026-10-28 00:26:11,489.489 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:26:11,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:26:11,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:26:11,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:26:13,541.541 INFO    ] ================================================
[2026-10-28 00:26:13,557.557 INFO    ] Launching Daemon at Wed Oct 28 00:26:13 IST 2026
[2026-10-28 00:26:13,568.568 INFO    ] ================================================
[2026-10-28 00:26:14,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:26:14
[2026-10-28 00:26:14,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:26:14,991.991 INFO    ] Initializing speech engine...
[2026-10-28 00:26:14,999.999 INFO    ] 2026-10-28 00:26:14
[2026-10-28 00:26:15,257.257 INFO    ] 2026-10-28 00:26:15
[2026-10-28 00:26:15,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:26:15,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:26:15,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:26:15,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:26:15,699.699 INFO    ] time= 28/10/2026 00:26:15
[2026-10-28 00:26:15,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:26:15,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:26:15,839.839 INFO    ] No existing commands found in stream
[2026-10-28 00:26:20,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:26:20,862.862 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-28 00:26:24,711.711 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:26:24,714.714 INFO    ] Checking for system updates...
[2026-10-28 00:26:24,749.749 INFO    ] 200
[2026-10-28 00:26:24,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:26:24,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:26:24,816.816 INFO    ] No update needed
[2026-10-28 00:26:24,818.818 INFO    ] Checking for camera pi updates...
[2026-10-28 00:26:24,852.852 INFO    ] 200
[2026-10-28 00:26:24,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:26:24,900.900 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:26:24,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:26:24,984.984 INFO    ] No camera update needed
[2026-10-28 00:26:24,987.987 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:26:24,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:26:24,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:26:24,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:26:27,040.040 INFO    ] ================================================
[2026-10-28 00:26:27,055.055 INFO    ] Launching Daemon at Wed Oct 28 00:26:27 IST 2026
[2026-10-28 00:26:27,067.067 INFO    ] ================================================
[2026-10-28 00:26:27,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:26:27
[2026-10-28 00:26:28,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:26:28,508.508 INFO    ] Initializing speech engine...
[2026-10-28 00:26:28,517.517 INFO    ] 2026-10-28 00:26:28
[2026-10-28 00:26:28,763.763 INFO    ] 2026-10-28 00:26:28
[2026-10-28 00:26:28,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:26:29,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:26:29,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:26:29,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:26:29,389.389 INFO    ] time= 28/10/2026 00:26:29
[2026-10-28 00:26:29,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:26:29,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:26:29,568.568 INFO    ] No existing commands found in stream
[2026-10-28 00:26:34,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:26:34,624.624 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-28 00:26:38,565.565 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:26:38,567.567 INFO    ] Checking for system updates...
[2026-10-28 00:26:38,606.606 INFO    ] 200
[2026-10-28 00:26:38,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:26:38,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:26:38,663.663 INFO    ] No update needed
[2026-10-28 00:26:38,666.666 INFO    ] Checking for camera pi updates...
[2026-10-28 00:26:38,699.699 INFO    ] 200
[2026-10-28 00:26:38,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:26:38,742.742 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:26:38,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:26:38,827.827 INFO    ] No camera update needed
[2026-10-28 00:26:38,829.829 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:26:38,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:26:38,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:26:38,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:26:40,883.883 INFO    ] ================================================
[2026-10-28 00:26:40,898.898 INFO    ] Launching Daemon at Wed Oct 28 00:26:40 IST 2026
[2026-10-28 00:26:40,909.909 INFO    ] ================================================
[2026-10-28 00:26:41,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:26:41
[2026-10-28 00:26:42,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:26:42,358.358 INFO    ] Initializing speech engine...
[2026-10-28 00:26:42,378.378 INFO    ] 2026-10-28 00:26:42
[2026-10-28 00:26:42,628.628 INFO    ] 2026-10-28 00:26:42
[2026-10-28 00:26:42,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:26:42,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:26:42,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:26:43,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:26:43,195.195 INFO    ] time= 28/10/2026 00:26:43
[2026-10-28 00:26:43,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:26:43,217.217 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:26:43,356.356 INFO    ] No existing commands found in stream
[2026-10-28 00:26:48,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:26:48,377.377 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-28 00:26:50,544.544 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:26:50,546.546 INFO    ] Checking for system updates...
[2026-10-28 00:26:50,582.582 INFO    ] 200
[2026-10-28 00:26:50,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:26:50,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:26:50,646.646 INFO    ] No update needed
[2026-10-28 00:26:50,648.648 INFO    ] Checking for camera pi updates...
[2026-10-28 00:26:50,685.685 INFO    ] 200
[2026-10-28 00:26:50,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:26:50,727.727 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:26:50,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:26:50,794.794 INFO    ] No camera update needed
[2026-10-28 00:26:50,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:26:50,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:26:50,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:26:50,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:26:52,849.849 INFO    ] ================================================
[2026-10-28 00:26:52,865.865 INFO    ] Launching Daemon at Wed Oct 28 00:26:52 IST 2026
[2026-10-28 00:26:52,879.879 INFO    ] ================================================
[2026-10-28 00:26:53,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:26:53
[2026-10-28 00:26:54,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:26:54,279.279 INFO    ] Initializing speech engine...
[2026-10-28 00:26:54,288.288 INFO    ] 2026-10-28 00:26:54
[2026-10-28 00:26:54,562.562 INFO    ] 2026-10-28 00:26:54
[2026-10-28 00:26:54,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:26:54,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:26:54,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:26:55,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:26:55,128.128 INFO    ] time= 28/10/2026 00:26:55
[2026-10-28 00:26:55,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:26:55,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:26:55,284.284 INFO    ] No existing commands found in stream
[2026-10-28 00:27:00,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:27:00,301.301 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-28 00:27:01,546.546 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:27:01,550.550 INFO    ] Checking for system updates...
[2026-10-28 00:27:01,604.604 INFO    ] 200
[2026-10-28 00:27:01,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:27:01,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:27:01,731.731 INFO    ] No update needed
[2026-10-28 00:27:01,743.743 INFO    ] Checking for camera pi updates...
[2026-10-28 00:27:01,795.795 INFO    ] 200
[2026-10-28 00:27:01,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:27:01,851.851 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:27:01,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:27:01,972.972 INFO    ] No camera update needed
[2026-10-28 00:27:01,976.976 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:27:01,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:27:01,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:27:01,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:27:04,035.035 INFO    ] ================================================
[2026-10-28 00:27:04,051.051 INFO    ] Launching Daemon at Wed Oct 28 00:27:04 IST 2026
[2026-10-28 00:27:04,062.062 INFO    ] ================================================
[2026-10-28 00:27:04,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:27:04
[2026-10-28 00:27:05,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:27:05,479.479 INFO    ] Initializing speech engine...
[2026-10-28 00:27:05,487.487 INFO    ] 2026-10-28 00:27:05
[2026-10-28 00:27:05,786.786 INFO    ] 2026-10-28 00:27:05
[2026-10-28 00:27:05,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:27:06,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:27:06,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:27:06,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:27:06,420.420 INFO    ] time= 28/10/2026 00:27:06
[2026-10-28 00:27:06,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:27:06,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:27:06,596.596 INFO    ] No existing commands found in stream
[2026-10-28 00:27:11,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:27:11,611.611 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-28 00:27:15,806.806 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:27:15,809.809 INFO    ] Checking for system updates...
[2026-10-28 00:27:15,844.844 INFO    ] 200
[2026-10-28 00:27:15,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:27:15,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:27:15,901.901 INFO    ] No update needed
[2026-10-28 00:27:15,904.904 INFO    ] Checking for camera pi updates...
[2026-10-28 00:27:15,937.937 INFO    ] 200
[2026-10-28 00:27:15,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:27:15,985.985 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:27:16,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:27:16,067.067 INFO    ] No camera update needed
[2026-10-28 00:27:16,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:27:16,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:27:16,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:27:16,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:27:18,123.123 INFO    ] ================================================
[2026-10-28 00:27:18,145.145 INFO    ] Launching Daemon at Wed Oct 28 00:27:18 IST 2026
[2026-10-28 00:27:18,157.157 INFO    ] ================================================
[2026-10-28 00:27:18,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:27:18
[2026-10-28 00:27:19,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:27:19,781.781 INFO    ] Initializing speech engine...
[2026-10-28 00:27:19,790.790 INFO    ] 2026-10-28 00:27:19
[2026-10-28 00:27:20,073.073 INFO    ] 2026-10-28 00:27:20
[2026-10-28 00:27:20,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:27:20,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:27:20,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:27:20,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:27:20,879.879 INFO    ] time= 28/10/2026 00:27:20
[2026-10-28 00:27:20,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:27:20,989.989 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:27:21,197.197 INFO    ] No existing commands found in stream
[2026-10-28 00:27:26,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:27:26,227.227 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-28 00:27:28,034.034 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:27:28,037.037 INFO    ] Checking for system updates...
[2026-10-28 00:27:28,078.078 INFO    ] 200
[2026-10-28 00:27:28,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:27:28,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:27:28,148.148 INFO    ] No update needed
[2026-10-28 00:27:28,151.151 INFO    ] Checking for camera pi updates...
[2026-10-28 00:27:28,186.186 INFO    ] 200
[2026-10-28 00:27:28,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:27:28,236.236 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:27:28,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:27:28,338.338 INFO    ] No camera update needed
[2026-10-28 00:27:28,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:27:28,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:27:28,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:27:28,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:27:30,394.394 INFO    ] ================================================
[2026-10-28 00:27:30,409.409 INFO    ] Launching Daemon at Wed Oct 28 00:27:30 IST 2026
[2026-10-28 00:27:30,420.420 INFO    ] ================================================
[2026-10-28 00:27:30,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:27:30
[2026-10-28 00:27:31,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:27:31,914.914 INFO    ] Initializing speech engine...
[2026-10-28 00:27:31,928.928 INFO    ] 2026-10-28 00:27:31
[2026-10-28 00:27:32,234.234 INFO    ] 2026-10-28 00:27:32
[2026-10-28 00:27:32,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:27:32,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:27:32,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:27:32,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:27:32,893.893 INFO    ] time= 28/10/2026 00:27:32
[2026-10-28 00:27:32,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:27:32,954.954 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:27:33,119.119 INFO    ] No existing commands found in stream
[2026-10-28 00:27:38,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:27:38,153.153 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-28 00:27:38,704.704 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:27:38,706.706 INFO    ] Checking for system updates...
[2026-10-28 00:27:38,743.743 INFO    ] 200
[2026-10-28 00:27:38,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:27:38,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:27:38,806.806 INFO    ] No update needed
[2026-10-28 00:27:38,808.808 INFO    ] Checking for camera pi updates...
[2026-10-28 00:27:38,841.841 INFO    ] 200
[2026-10-28 00:27:38,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:27:38,885.885 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:27:38,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:27:38,981.981 INFO    ] No camera update needed
[2026-10-28 00:27:38,983.983 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:27:38,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:27:38,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:27:38,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:27:41,037.037 INFO    ] ================================================
[2026-10-28 00:27:41,052.052 INFO    ] Launching Daemon at Wed Oct 28 00:27:41 IST 2026
[2026-10-28 00:27:41,063.063 INFO    ] ================================================
[2026-10-28 00:27:41,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:27:41
[2026-10-28 00:27:42,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:27:42,664.664 INFO    ] Initializing speech engine...
[2026-10-28 00:27:42,673.673 INFO    ] 2026-10-28 00:27:42
[2026-10-28 00:27:42,950.950 INFO    ] 2026-10-28 00:27:42
[2026-10-28 00:27:43,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:27:43,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:27:43,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:27:43,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:27:43,525.525 INFO    ] time= 28/10/2026 00:27:43
[2026-10-28 00:27:43,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:27:43,565.565 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:27:43,713.713 INFO    ] No existing commands found in stream
[2026-10-28 00:27:48,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:27:48,747.747 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 00:27:51,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:27:52,002.002 INFO    ] Checking for system updates...
[2026-10-28 00:27:52,043.043 INFO    ] 200
[2026-10-28 00:27:52,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:27:52,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:27:52,099.099 INFO    ] No update needed
[2026-10-28 00:27:52,102.102 INFO    ] Checking for camera pi updates...
[2026-10-28 00:27:52,138.138 INFO    ] 200
[2026-10-28 00:27:52,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:27:52,180.180 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:27:52,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:27:52,275.275 INFO    ] No camera update needed
[2026-10-28 00:27:52,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:27:52,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:27:52,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:27:52,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:27:54,330.330 INFO    ] ================================================
[2026-10-28 00:27:54,345.345 INFO    ] Launching Daemon at Wed Oct 28 00:27:54 IST 2026
[2026-10-28 00:27:54,357.357 INFO    ] ================================================
[2026-10-28 00:27:55,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:27:54
[2026-10-28 00:27:55,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:27:55,975.975 INFO    ] Initializing speech engine...
[2026-10-28 00:27:55,988.988 INFO    ] 2026-10-28 00:27:55
[2026-10-28 00:27:56,272.272 INFO    ] 2026-10-28 00:27:56
[2026-10-28 00:27:56,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:27:56,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:27:56,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:27:56,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:27:56,839.839 INFO    ] time= 28/10/2026 00:27:56
[2026-10-28 00:27:56,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:27:56,875.875 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:27:57,009.009 INFO    ] No existing commands found in stream
[2026-10-28 00:28:02,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:28:02,039.039 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-28 00:28:04,003.003 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:28:04,006.006 INFO    ] Checking for system updates...
[2026-10-28 00:28:04,042.042 INFO    ] 200
[2026-10-28 00:28:04,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:28:04,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:28:04,101.101 INFO    ] No update needed
[2026-10-28 00:28:04,103.103 INFO    ] Checking for camera pi updates...
[2026-10-28 00:28:04,137.137 INFO    ] 200
[2026-10-28 00:28:04,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:28:04,185.185 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:28:04,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:28:04,317.317 INFO    ] No camera update needed
[2026-10-28 00:28:04,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:28:04,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:28:04,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:28:04,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:28:06,373.373 INFO    ] ================================================
[2026-10-28 00:28:06,389.389 INFO    ] Launching Daemon at Wed Oct 28 00:28:06 IST 2026
[2026-10-28 00:28:06,400.400 INFO    ] ================================================
[2026-10-28 00:28:06,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:28:06
[2026-10-28 00:28:07,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:28:07,807.807 INFO    ] Initializing speech engine...
[2026-10-28 00:28:07,819.819 INFO    ] 2026-10-28 00:28:07
[2026-10-28 00:28:08,085.085 INFO    ] 2026-10-28 00:28:08
[2026-10-28 00:28:08,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:28:08,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:28:08,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:28:08,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:28:08,658.658 INFO    ] time= 28/10/2026 00:28:08
[2026-10-28 00:28:08,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:28:08,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:28:08,814.814 INFO    ] No existing commands found in stream
[2026-10-28 00:28:13,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:28:13,833.833 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 00:28:16,661.661 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:28:16,664.664 INFO    ] Checking for system updates...
[2026-10-28 00:28:16,705.705 INFO    ] 200
[2026-10-28 00:28:16,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:28:16,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:28:16,761.761 INFO    ] No update needed
[2026-10-28 00:28:16,764.764 INFO    ] Checking for camera pi updates...
[2026-10-28 00:28:16,797.797 INFO    ] 200
[2026-10-28 00:28:16,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:28:16,840.840 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:28:17,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:28:17,026.026 INFO    ] No camera update needed
[2026-10-28 00:28:17,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:28:17,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:28:17,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:28:17,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:28:19,083.083 INFO    ] ================================================
[2026-10-28 00:28:19,098.098 INFO    ] Launching Daemon at Wed Oct 28 00:28:19 IST 2026
[2026-10-28 00:28:19,109.109 INFO    ] ================================================
[2026-10-28 00:28:19,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:28:19
[2026-10-28 00:28:20,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:28:20,551.551 INFO    ] Initializing speech engine...
[2026-10-28 00:28:20,560.560 INFO    ] 2026-10-28 00:28:20
[2026-10-28 00:28:20,861.861 INFO    ] 2026-10-28 00:28:20
[2026-10-28 00:28:20,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:28:21,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:28:21,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:28:21,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:28:21,404.404 INFO    ] time= 28/10/2026 00:28:21
[2026-10-28 00:28:21,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:28:21,503.503 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:28:21,649.649 INFO    ] No existing commands found in stream
[2026-10-28 00:28:26,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:28:26,683.683 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-28 00:28:30,798.798 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:28:30,801.801 INFO    ] Checking for system updates...
[2026-10-28 00:28:30,837.837 INFO    ] 200
[2026-10-28 00:28:30,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:28:30,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:28:30,901.901 INFO    ] No update needed
[2026-10-28 00:28:30,903.903 INFO    ] Checking for camera pi updates...
[2026-10-28 00:28:30,937.937 INFO    ] 200
[2026-10-28 00:28:30,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:28:30,980.980 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:28:31,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:28:31,058.058 INFO    ] No camera update needed
[2026-10-28 00:28:31,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:28:31,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:28:31,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:28:31,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:28:33,113.113 INFO    ] ================================================
[2026-10-28 00:28:33,129.129 INFO    ] Launching Daemon at Wed Oct 28 00:28:33 IST 2026
[2026-10-28 00:28:33,140.140 INFO    ] ================================================
[2026-10-28 00:28:33,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:28:33
[2026-10-28 00:28:34,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:28:34,556.556 INFO    ] Initializing speech engine...
[2026-10-28 00:28:34,563.563 INFO    ] 2026-10-28 00:28:34
[2026-10-28 00:28:34,809.809 INFO    ] 2026-10-28 00:28:34
[2026-10-28 00:28:34,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:28:35,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:28:35,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:28:35,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:28:35,404.404 INFO    ] time= 28/10/2026 00:28:35
[2026-10-28 00:28:35,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:28:35,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:28:35,541.541 INFO    ] No existing commands found in stream
[2026-10-28 00:28:40,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:28:40,568.568 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 00:28:42,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:28:42,663.663 INFO    ] Checking for system updates...
[2026-10-28 00:28:42,698.698 INFO    ] 200
[2026-10-28 00:28:42,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:28:42,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:28:42,762.762 INFO    ] No update needed
[2026-10-28 00:28:42,765.765 INFO    ] Checking for camera pi updates...
[2026-10-28 00:28:42,799.799 INFO    ] 200
[2026-10-28 00:28:42,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:28:42,842.842 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:28:42,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:28:42,927.927 INFO    ] No camera update needed
[2026-10-28 00:28:42,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:28:42,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:28:42,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:28:42,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:28:44,985.985 INFO    ] ================================================
[2026-10-28 00:28:45,001.001 INFO    ] Launching Daemon at Wed Oct 28 00:28:44 IST 2026
[2026-10-28 00:28:45,013.013 INFO    ] ================================================
[2026-10-28 00:28:45,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:28:45
[2026-10-28 00:28:46,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:28:46,455.455 INFO    ] Initializing speech engine...
[2026-10-28 00:28:46,471.471 INFO    ] 2026-10-28 00:28:46
[2026-10-28 00:28:46,726.726 INFO    ] 2026-10-28 00:28:46
[2026-10-28 00:28:46,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:28:47,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:28:47,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:28:47,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:28:47,279.279 INFO    ] time= 28/10/2026 00:28:47
[2026-10-28 00:28:47,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:28:47,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:28:47,435.435 INFO    ] No existing commands found in stream
[2026-10-28 00:28:52,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:28:52,462.462 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-28 00:28:53,484.484 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:28:53,487.487 INFO    ] Checking for system updates...
[2026-10-28 00:28:53,526.526 INFO    ] 200
[2026-10-28 00:28:53,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:28:53,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:28:53,584.584 INFO    ] No update needed
[2026-10-28 00:28:53,586.586 INFO    ] Checking for camera pi updates...
[2026-10-28 00:28:53,620.620 INFO    ] 200
[2026-10-28 00:28:53,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:28:53,662.662 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:28:53,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:28:53,752.752 INFO    ] No camera update needed
[2026-10-28 00:28:53,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:28:53,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:28:53,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:28:53,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:28:55,807.807 INFO    ] ================================================
[2026-10-28 00:28:55,822.822 INFO    ] Launching Daemon at Wed Oct 28 00:28:55 IST 2026
[2026-10-28 00:28:55,834.834 INFO    ] ================================================
[2026-10-28 00:28:56,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:28:56
[2026-10-28 00:28:57,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:28:57,289.289 INFO    ] Initializing speech engine...
[2026-10-28 00:28:57,299.299 INFO    ] 2026-10-28 00:28:57
[2026-10-28 00:28:57,556.556 INFO    ] 2026-10-28 00:28:57
[2026-10-28 00:28:57,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:28:57,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:28:57,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:28:58,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:28:58,113.113 INFO    ] time= 28/10/2026 00:28:58
[2026-10-28 00:28:58,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:28:58,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:28:58,274.274 INFO    ] No existing commands found in stream
[2026-10-28 00:29:03,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:29:03,307.307 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-28 00:29:06,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:29:06,423.423 INFO    ] Checking for system updates...
[2026-10-28 00:29:06,462.462 INFO    ] 200
[2026-10-28 00:29:06,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:29:06,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:29:06,519.519 INFO    ] No update needed
[2026-10-28 00:29:06,521.521 INFO    ] Checking for camera pi updates...
[2026-10-28 00:29:06,554.554 INFO    ] 200
[2026-10-28 00:29:06,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:29:06,602.602 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:29:06,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:29:06,675.675 INFO    ] No camera update needed
[2026-10-28 00:29:06,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:29:06,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:29:06,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:29:06,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:29:08,731.731 INFO    ] ================================================
[2026-10-28 00:29:08,746.746 INFO    ] Launching Daemon at Wed Oct 28 00:29:08 IST 2026
[2026-10-28 00:29:08,757.757 INFO    ] ================================================
[2026-10-28 00:29:09,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:29:09
[2026-10-28 00:29:09,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:29:10,207.207 INFO    ] Initializing speech engine...
[2026-10-28 00:29:10,214.214 INFO    ] 2026-10-28 00:29:10
[2026-10-28 00:29:10,489.489 INFO    ] 2026-10-28 00:29:10
[2026-10-28 00:29:10,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:29:10,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:29:10,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:29:11,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:29:11,019.019 INFO    ] time= 28/10/2026 00:29:11
[2026-10-28 00:29:11,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:29:11,059.059 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:29:11,177.177 INFO    ] No existing commands found in stream
[2026-10-28 00:29:16,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:29:16,204.204 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-28 00:29:18,367.367 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:29:18,369.369 INFO    ] Checking for system updates...
[2026-10-28 00:29:18,409.409 INFO    ] 200
[2026-10-28 00:29:18,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:29:18,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:29:18,469.469 INFO    ] No update needed
[2026-10-28 00:29:18,472.472 INFO    ] Checking for camera pi updates...
[2026-10-28 00:29:18,506.506 INFO    ] 200
[2026-10-28 00:29:18,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:29:18,554.554 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:29:18,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:29:18,653.653 INFO    ] No camera update needed
[2026-10-28 00:29:18,656.656 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:29:18,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:29:18,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:29:18,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:29:20,709.709 INFO    ] ================================================
[2026-10-28 00:29:20,724.724 INFO    ] Launching Daemon at Wed Oct 28 00:29:20 IST 2026
[2026-10-28 00:29:20,735.735 INFO    ] ================================================
[2026-10-28 00:29:21,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:29:21
[2026-10-28 00:29:21,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:29:22,157.157 INFO    ] Initializing speech engine...
[2026-10-28 00:29:22,163.163 INFO    ] 2026-10-28 00:29:22
[2026-10-28 00:29:22,424.424 INFO    ] 2026-10-28 00:29:22
[2026-10-28 00:29:22,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:29:22,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:29:22,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:29:22,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:29:22,972.972 INFO    ] time= 28/10/2026 00:29:22
[2026-10-28 00:29:22,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:29:23,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:29:23,135.135 INFO    ] No existing commands found in stream
[2026-10-28 00:29:28,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:29:28,152.152 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-28 00:29:32,551.551 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:29:32,554.554 INFO    ] Checking for system updates...
[2026-10-28 00:29:32,591.591 INFO    ] 200
[2026-10-28 00:29:32,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:29:32,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:29:32,652.652 INFO    ] No update needed
[2026-10-28 00:29:32,655.655 INFO    ] Checking for camera pi updates...
[2026-10-28 00:29:32,691.691 INFO    ] 200
[2026-10-28 00:29:32,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:29:32,750.750 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:29:32,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:29:32,841.841 INFO    ] No camera update needed
[2026-10-28 00:29:32,844.844 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:29:32,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:29:32,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:29:32,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:29:34,904.904 INFO    ] ================================================
[2026-10-28 00:29:34,919.919 INFO    ] Launching Daemon at Wed Oct 28 00:29:34 IST 2026
[2026-10-28 00:29:34,930.930 INFO    ] ================================================
[2026-10-28 00:29:35,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:29:35
[2026-10-28 00:29:36,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:29:36,560.560 INFO    ] Initializing speech engine...
[2026-10-28 00:29:36,569.569 INFO    ] 2026-10-28 00:29:36
[2026-10-28 00:29:36,848.848 INFO    ] 2026-10-28 00:29:36
[2026-10-28 00:29:36,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:29:37,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:29:37,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:29:37,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:29:37,421.421 INFO    ] time= 28/10/2026 00:29:37
[2026-10-28 00:29:37,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:29:37,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:29:37,604.604 INFO    ] No existing commands found in stream
[2026-10-28 00:29:42,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:29:42,633.633 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-28 00:29:45,061.061 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:29:45,064.064 INFO    ] Checking for system updates...
[2026-10-28 00:29:45,101.101 INFO    ] 200
[2026-10-28 00:29:45,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:29:45,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:29:45,165.165 INFO    ] No update needed
[2026-10-28 00:29:45,168.168 INFO    ] Checking for camera pi updates...
[2026-10-28 00:29:45,201.201 INFO    ] 200
[2026-10-28 00:29:45,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:29:45,244.244 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:29:45,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:29:45,341.341 INFO    ] No camera update needed
[2026-10-28 00:29:45,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:29:45,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:29:45,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:29:45,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:29:47,398.398 INFO    ] ================================================
[2026-10-28 00:29:47,412.412 INFO    ] Launching Daemon at Wed Oct 28 00:29:47 IST 2026
[2026-10-28 00:29:47,423.423 INFO    ] ================================================
[2026-10-28 00:29:48,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:29:47
[2026-10-28 00:29:48,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:29:48,969.969 INFO    ] Initializing speech engine...
[2026-10-28 00:29:48,984.984 INFO    ] 2026-10-28 00:29:48
[2026-10-28 00:29:49,256.256 INFO    ] 2026-10-28 00:29:49
[2026-10-28 00:29:49,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:29:49,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:29:49,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:29:49,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:29:49,993.993 INFO    ] time= 28/10/2026 00:29:49
[2026-10-28 00:29:50,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:29:50,086.086 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:29:50,251.251 INFO    ] No existing commands found in stream
[2026-10-28 00:29:55,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:29:55,285.285 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 00:29:58,925.925 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:29:58,928.928 INFO    ] Checking for system updates...
[2026-10-28 00:29:58,968.968 INFO    ] 200
[2026-10-28 00:29:58,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:29:59,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:29:59,032.032 INFO    ] No update needed
[2026-10-28 00:29:59,035.035 INFO    ] Checking for camera pi updates...
[2026-10-28 00:29:59,068.068 INFO    ] 200
[2026-10-28 00:29:59,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:29:59,111.111 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:29:59,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:29:59,184.184 INFO    ] No camera update needed
[2026-10-28 00:29:59,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:29:59,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:29:59,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:29:59,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:30:01,238.238 INFO    ] ================================================
[2026-10-28 00:30:01,253.253 INFO    ] Launching Daemon at Wed Oct 28 00:30:01 IST 2026
[2026-10-28 00:30:01,264.264 INFO    ] ================================================
[2026-10-28 00:30:01,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:30:01
[2026-10-28 00:30:03,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:30:03,649.649 INFO    ] Initializing speech engine...
[2026-10-28 00:30:03,653.653 INFO    ] 2026-10-28 00:30:03
[2026-10-28 00:30:04,013.013 INFO    ] 2026-10-28 00:30:03
[2026-10-28 00:30:04,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:30:04,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:30:04,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:30:04,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:30:04,536.536 INFO    ] time= 28/10/2026 00:30:04
[2026-10-28 00:30:04,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:30:04,575.575 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:30:04,740.740 INFO    ] No existing commands found in stream
[2026-10-28 00:30:09,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:30:09,769.769 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-28 00:30:12,059.059 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:30:12,062.062 INFO    ] Checking for system updates...
[2026-10-28 00:30:12,102.102 INFO    ] 200
[2026-10-28 00:30:12,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:30:12,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:30:12,159.159 INFO    ] No update needed
[2026-10-28 00:30:12,162.162 INFO    ] Checking for camera pi updates...
[2026-10-28 00:30:12,195.195 INFO    ] 200
[2026-10-28 00:30:12,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:30:12,243.243 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:30:12,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:30:12,327.327 INFO    ] No camera update needed
[2026-10-28 00:30:12,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:30:12,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:30:12,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:30:12,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:30:14,383.383 INFO    ] ================================================
[2026-10-28 00:30:14,398.398 INFO    ] Launching Daemon at Wed Oct 28 00:30:14 IST 2026
[2026-10-28 00:30:14,409.409 INFO    ] ================================================
[2026-10-28 00:30:14,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:30:14
[2026-10-28 00:30:15,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:30:15,865.865 INFO    ] Initializing speech engine...
[2026-10-28 00:30:15,879.879 INFO    ] 2026-10-28 00:30:15
[2026-10-28 00:30:16,163.163 INFO    ] 2026-10-28 00:30:16
[2026-10-28 00:30:16,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:30:16,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:30:16,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:30:16,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:30:16,730.730 INFO    ] time= 28/10/2026 00:30:16
[2026-10-28 00:30:16,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:30:16,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:30:16,891.891 INFO    ] No existing commands found in stream
[2026-10-28 00:30:21,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:30:21,919.919 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-28 00:30:25,242.242 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:30:25,250.250 INFO    ] Checking for system updates...
[2026-10-28 00:30:25,287.287 INFO    ] 200
[2026-10-28 00:30:25,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:30:25,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:30:25,354.354 INFO    ] No update needed
[2026-10-28 00:30:25,356.356 INFO    ] Checking for camera pi updates...
[2026-10-28 00:30:25,394.394 INFO    ] 200
[2026-10-28 00:30:25,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:30:25,441.441 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:30:25,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:30:25,642.642 INFO    ] No camera update needed
[2026-10-28 00:30:25,644.644 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:30:25,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:30:25,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:30:25,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:30:27,699.699 INFO    ] ================================================
[2026-10-28 00:30:27,714.714 INFO    ] Launching Daemon at Wed Oct 28 00:30:27 IST 2026
[2026-10-28 00:30:27,724.724 INFO    ] ================================================
[2026-10-28 00:30:28,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:30:28
[2026-10-28 00:30:28,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:30:29,138.138 INFO    ] Initializing speech engine...
[2026-10-28 00:30:29,151.151 INFO    ] 2026-10-28 00:30:29
[2026-10-28 00:30:29,439.439 INFO    ] 2026-10-28 00:30:29
[2026-10-28 00:30:29,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:30:29,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:30:29,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:30:30,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:30:30,036.036 INFO    ] time= 28/10/2026 00:30:30
[2026-10-28 00:30:30,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:30:30,070.070 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:30:30,190.190 INFO    ] No existing commands found in stream
[2026-10-28 00:30:35,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:30:35,219.219 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 00:30:38,864.864 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:30:38,867.867 INFO    ] Checking for system updates...
[2026-10-28 00:30:38,903.903 INFO    ] 200
[2026-10-28 00:30:38,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:30:38,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:30:38,966.966 INFO    ] No update needed
[2026-10-28 00:30:38,968.968 INFO    ] Checking for camera pi updates...
[2026-10-28 00:30:39,001.001 INFO    ] 200
[2026-10-28 00:30:39,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:30:39,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:30:39,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:30:39,154.154 INFO    ] No camera update needed
[2026-10-28 00:30:39,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:30:39,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:30:39,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:30:39,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:30:41,210.210 INFO    ] ================================================
[2026-10-28 00:30:41,227.227 INFO    ] Launching Daemon at Wed Oct 28 00:30:41 IST 2026
[2026-10-28 00:30:41,238.238 INFO    ] ================================================
[2026-10-28 00:30:41,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:30:41
[2026-10-28 00:30:42,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:30:42,688.688 INFO    ] Initializing speech engine...
[2026-10-28 00:30:42,697.697 INFO    ] 2026-10-28 00:30:42
[2026-10-28 00:30:42,959.959 INFO    ] 2026-10-28 00:30:42
[2026-10-28 00:30:43,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:30:43,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:30:43,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:30:43,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:30:43,501.501 INFO    ] time= 28/10/2026 00:30:43
[2026-10-28 00:30:43,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:30:43,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:30:43,678.678 INFO    ] No existing commands found in stream
[2026-10-28 00:30:48,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:30:48,711.711 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 00:30:52,361.361 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:30:52,364.364 INFO    ] Checking for system updates...
[2026-10-28 00:30:52,399.399 INFO    ] 200
[2026-10-28 00:30:52,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:30:52,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:30:52,462.462 INFO    ] No update needed
[2026-10-28 00:30:52,464.464 INFO    ] Checking for camera pi updates...
[2026-10-28 00:30:52,497.497 INFO    ] 200
[2026-10-28 00:30:52,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:30:52,540.540 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:30:52,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:30:52,633.633 INFO    ] No camera update needed
[2026-10-28 00:30:52,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:30:52,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:30:52,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:30:52,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:30:54,693.693 INFO    ] ================================================
[2026-10-28 00:30:54,709.709 INFO    ] Launching Daemon at Wed Oct 28 00:30:54 IST 2026
[2026-10-28 00:30:54,720.720 INFO    ] ================================================
[2026-10-28 00:30:55,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:30:55
[2026-10-28 00:30:55,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:30:56,183.183 INFO    ] Initializing speech engine...
[2026-10-28 00:30:56,199.199 INFO    ] 2026-10-28 00:30:56
[2026-10-28 00:30:56,470.470 INFO    ] 2026-10-28 00:30:56
[2026-10-28 00:30:56,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:30:56,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:30:56,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:30:56,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:30:57,027.027 INFO    ] time= 28/10/2026 00:30:56
[2026-10-28 00:30:57,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:30:57,105.105 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:30:57,269.269 INFO    ] No existing commands found in stream
[2026-10-28 00:31:02,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:31:02,288.288 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 00:31:03,420.420 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:31:03,424.424 INFO    ] Checking for system updates...
[2026-10-28 00:31:03,467.467 INFO    ] 200
[2026-10-28 00:31:03,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:31:03,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:31:03,531.531 INFO    ] No update needed
[2026-10-28 00:31:03,533.533 INFO    ] Checking for camera pi updates...
[2026-10-28 00:31:03,569.569 INFO    ] 200
[2026-10-28 00:31:03,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:31:03,621.621 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:31:03,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:31:03,712.712 INFO    ] No camera update needed
[2026-10-28 00:31:03,714.714 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:31:03,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:31:03,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:31:03,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:31:05,773.773 INFO    ] ================================================
[2026-10-28 00:31:05,789.789 INFO    ] Launching Daemon at Wed Oct 28 00:31:05 IST 2026
[2026-10-28 00:31:05,806.806 INFO    ] ================================================
[2026-10-28 00:31:06,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:31:06
[2026-10-28 00:31:06,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:31:07,275.275 INFO    ] Initializing speech engine...
[2026-10-28 00:31:07,282.282 INFO    ] 2026-10-28 00:31:07
[2026-10-28 00:31:07,543.543 INFO    ] 2026-10-28 00:31:07
[2026-10-28 00:31:07,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:31:07,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:31:07,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:31:08,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:31:08,130.130 INFO    ] time= 28/10/2026 00:31:08
[2026-10-28 00:31:08,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:31:08,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:31:08,300.300 INFO    ] No existing commands found in stream
[2026-10-28 00:31:13,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:31:13,339.339 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 00:31:15,326.326 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:31:15,328.328 INFO    ] Checking for system updates...
[2026-10-28 00:31:15,368.368 INFO    ] 200
[2026-10-28 00:31:15,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:31:15,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:31:15,426.426 INFO    ] No update needed
[2026-10-28 00:31:15,428.428 INFO    ] Checking for camera pi updates...
[2026-10-28 00:31:15,466.466 INFO    ] 200
[2026-10-28 00:31:15,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:31:15,515.515 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:31:15,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:31:15,595.595 INFO    ] No camera update needed
[2026-10-28 00:31:15,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:31:15,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:31:15,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:31:15,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:31:17,655.655 INFO    ] ================================================
[2026-10-28 00:31:17,672.672 INFO    ] Launching Daemon at Wed Oct 28 00:31:17 IST 2026
[2026-10-28 00:31:17,682.682 INFO    ] ================================================
[2026-10-28 00:31:18,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:31:18
[2026-10-28 00:31:18,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:31:19,127.127 INFO    ] Initializing speech engine...
[2026-10-28 00:31:19,137.137 INFO    ] 2026-10-28 00:31:19
[2026-10-28 00:31:19,386.386 INFO    ] 2026-10-28 00:31:19
[2026-10-28 00:31:19,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:31:19,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:31:19,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:31:20,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:31:20,207.207 INFO    ] time= 28/10/2026 00:31:20
[2026-10-28 00:31:20,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:31:20,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:31:20,483.483 INFO    ] No existing commands found in stream
[2026-10-28 00:31:25,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:31:25,520.520 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-28 00:31:27,914.914 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:31:27,917.917 INFO    ] Checking for system updates...
[2026-10-28 00:31:27,959.959 INFO    ] 200
[2026-10-28 00:31:27,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:31:28,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:31:28,019.019 INFO    ] No update needed
[2026-10-28 00:31:28,022.022 INFO    ] Checking for camera pi updates...
[2026-10-28 00:31:28,057.057 INFO    ] 200
[2026-10-28 00:31:28,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:31:28,106.106 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:31:28,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:31:28,193.193 INFO    ] No camera update needed
[2026-10-28 00:31:28,196.196 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:31:28,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:31:28,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:31:28,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:31:30,249.249 INFO    ] ================================================
[2026-10-28 00:31:30,264.264 INFO    ] Launching Daemon at Wed Oct 28 00:31:30 IST 2026
[2026-10-28 00:31:30,275.275 INFO    ] ================================================
[2026-10-28 00:31:30,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:31:30
[2026-10-28 00:31:31,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:31:31,918.918 INFO    ] Initializing speech engine...
[2026-10-28 00:31:31,936.936 INFO    ] 2026-10-28 00:31:31
[2026-10-28 00:31:32,258.258 INFO    ] 2026-10-28 00:31:32
[2026-10-28 00:31:32,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:31:32,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:31:32,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:31:32,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:31:32,798.798 INFO    ] time= 28/10/2026 00:31:32
[2026-10-28 00:31:32,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:31:32,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:31:32,959.959 INFO    ] No existing commands found in stream
[2026-10-28 00:31:37,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:31:37,999.999 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-28 00:31:40,079.079 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:31:40,082.082 INFO    ] Checking for system updates...
[2026-10-28 00:31:40,119.119 INFO    ] 200
[2026-10-28 00:31:40,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:31:40,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:31:40,187.187 INFO    ] No update needed
[2026-10-28 00:31:40,190.190 INFO    ] Checking for camera pi updates...
[2026-10-28 00:31:40,229.229 INFO    ] 200
[2026-10-28 00:31:40,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:31:40,279.279 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:31:40,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:31:40,382.382 INFO    ] No camera update needed
[2026-10-28 00:31:40,385.385 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:31:40,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:31:40,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:31:40,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:31:42,443.443 INFO    ] ================================================
[2026-10-28 00:31:42,459.459 INFO    ] Launching Daemon at Wed Oct 28 00:31:42 IST 2026
[2026-10-28 00:31:42,470.470 INFO    ] ================================================
[2026-10-28 00:31:43,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:31:43
[2026-10-28 00:31:43,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:31:43,896.896 INFO    ] Initializing speech engine...
[2026-10-28 00:31:43,906.906 INFO    ] 2026-10-28 00:31:43
[2026-10-28 00:31:44,156.156 INFO    ] 2026-10-28 00:31:44
[2026-10-28 00:31:44,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:31:44,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:31:44,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:31:44,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:31:44,721.721 INFO    ] time= 28/10/2026 00:31:44
[2026-10-28 00:31:44,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:31:44,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:31:44,881.881 INFO    ] No existing commands found in stream
[2026-10-28 00:31:49,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:31:49,898.898 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-28 00:31:51,087.087 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:31:51,089.089 INFO    ] Checking for system updates...
[2026-10-28 00:31:51,125.125 INFO    ] 200
[2026-10-28 00:31:51,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:31:51,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:31:51,190.190 INFO    ] No update needed
[2026-10-28 00:31:51,193.193 INFO    ] Checking for camera pi updates...
[2026-10-28 00:31:51,226.226 INFO    ] 200
[2026-10-28 00:31:51,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:31:51,274.274 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:31:51,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:31:51,365.365 INFO    ] No camera update needed
[2026-10-28 00:31:51,368.368 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:31:51,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:31:51,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:31:51,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:31:53,423.423 INFO    ] ================================================
[2026-10-28 00:31:53,439.439 INFO    ] Launching Daemon at Wed Oct 28 00:31:53 IST 2026
[2026-10-28 00:31:53,450.450 INFO    ] ================================================
[2026-10-28 00:31:54,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:31:54
[2026-10-28 00:31:54,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:31:54,855.855 INFO    ] Initializing speech engine...
[2026-10-28 00:31:54,863.863 INFO    ] 2026-10-28 00:31:54
[2026-10-28 00:31:55,139.139 INFO    ] 2026-10-28 00:31:55
[2026-10-28 00:31:55,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:31:55,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:31:55,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:31:55,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:31:55,702.702 INFO    ] time= 28/10/2026 00:31:55
[2026-10-28 00:31:55,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:31:55,729.729 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:31:55,844.844 INFO    ] No existing commands found in stream
[2026-10-28 00:32:00,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:32:00,872.872 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-28 00:32:01,763.763 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:32:01,766.766 INFO    ] Checking for system updates...
[2026-10-28 00:32:01,803.803 INFO    ] 200
[2026-10-28 00:32:01,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:32:01,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:32:01,957.957 INFO    ] No update needed
[2026-10-28 00:32:01,963.963 INFO    ] Checking for camera pi updates...
[2026-10-28 00:32:02,033.033 INFO    ] 200
[2026-10-28 00:32:02,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:32:02,115.115 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:32:02,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:32:02,264.264 INFO    ] No camera update needed
[2026-10-28 00:32:02,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:32:02,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:32:02,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:32:02,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:32:04,339.339 INFO    ] ================================================
[2026-10-28 00:32:04,355.355 INFO    ] Launching Daemon at Wed Oct 28 00:32:04 IST 2026
[2026-10-28 00:32:04,366.366 INFO    ] ================================================
[2026-10-28 00:32:04,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:32:04
[2026-10-28 00:32:05,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:32:05,806.806 INFO    ] Initializing speech engine...
[2026-10-28 00:32:05,825.825 INFO    ] 2026-10-28 00:32:05
[2026-10-28 00:32:06,077.077 INFO    ] 2026-10-28 00:32:06
[2026-10-28 00:32:06,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:32:06,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:32:06,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:32:06,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:32:06,694.694 INFO    ] time= 28/10/2026 00:32:06
[2026-10-28 00:32:06,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:32:06,711.711 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:32:06,850.850 INFO    ] No existing commands found in stream
[2026-10-28 00:32:11,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:32:11,883.883 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-28 00:32:14,721.721 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:32:14,724.724 INFO    ] Checking for system updates...
[2026-10-28 00:32:14,760.760 INFO    ] 200
[2026-10-28 00:32:14,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:32:14,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:32:14,818.818 INFO    ] No update needed
[2026-10-28 00:32:14,820.820 INFO    ] Checking for camera pi updates...
[2026-10-28 00:32:14,855.855 INFO    ] 200
[2026-10-28 00:32:14,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:32:14,899.899 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:32:14,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:32:14,987.987 INFO    ] No camera update needed
[2026-10-28 00:32:14,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:32:14,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:32:14,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:32:15,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:32:17,043.043 INFO    ] ================================================
[2026-10-28 00:32:17,059.059 INFO    ] Launching Daemon at Wed Oct 28 00:32:17 IST 2026
[2026-10-28 00:32:17,070.070 INFO    ] ================================================
[2026-10-28 00:32:17,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:32:17
[2026-10-28 00:32:18,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:32:18,521.521 INFO    ] Initializing speech engine...
[2026-10-28 00:32:18,529.529 INFO    ] 2026-10-28 00:32:18
[2026-10-28 00:32:18,785.785 INFO    ] 2026-10-28 00:32:18
[2026-10-28 00:32:18,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:32:19,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:32:19,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:32:19,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:32:19,336.336 INFO    ] time= 28/10/2026 00:32:19
[2026-10-28 00:32:19,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:32:19,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:32:19,507.507 INFO    ] No existing commands found in stream
[2026-10-28 00:32:24,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:32:24,536.536 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-28 00:32:25,487.487 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:32:25,490.490 INFO    ] Checking for system updates...
[2026-10-28 00:32:25,529.529 INFO    ] 200
[2026-10-28 00:32:25,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:32:25,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:32:25,587.587 INFO    ] No update needed
[2026-10-28 00:32:25,589.589 INFO    ] Checking for camera pi updates...
[2026-10-28 00:32:25,625.625 INFO    ] 200
[2026-10-28 00:32:25,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:32:25,668.668 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:32:25,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:32:25,721.721 INFO    ] No camera update needed
[2026-10-28 00:32:25,724.724 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:32:25,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:32:25,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:32:25,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:32:27,778.778 INFO    ] ================================================
[2026-10-28 00:32:27,794.794 INFO    ] Launching Daemon at Wed Oct 28 00:32:27 IST 2026
[2026-10-28 00:32:27,805.805 INFO    ] ================================================
[2026-10-28 00:32:28,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:32:28
[2026-10-28 00:32:29,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:32:29,376.376 INFO    ] Initializing speech engine...
[2026-10-28 00:32:29,384.384 INFO    ] 2026-10-28 00:32:29
[2026-10-28 00:32:29,650.650 INFO    ] 2026-10-28 00:32:29
[2026-10-28 00:32:29,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:32:29,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:32:29,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:32:30,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:32:30,239.239 INFO    ] time= 28/10/2026 00:32:30
[2026-10-28 00:32:30,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:32:30,261.261 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:32:30,354.354 INFO    ] No existing commands found in stream
[2026-10-28 00:32:35,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:32:35,367.367 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-28 00:32:39,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:32:39,368.368 INFO    ] Checking for system updates...
[2026-10-28 00:32:39,404.404 INFO    ] 200
[2026-10-28 00:32:39,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:32:39,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:32:39,475.475 INFO    ] No update needed
[2026-10-28 00:32:39,478.478 INFO    ] Checking for camera pi updates...
[2026-10-28 00:32:39,516.516 INFO    ] 200
[2026-10-28 00:32:39,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:32:39,567.567 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:32:39,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:32:39,656.656 INFO    ] No camera update needed
[2026-10-28 00:32:39,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:32:39,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:32:39,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:32:39,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:32:41,714.714 INFO    ] ================================================
[2026-10-28 00:32:41,842.842 INFO    ] Launching Daemon at Wed Oct 28 00:32:41 IST 2026
[2026-10-28 00:32:41,853.853 INFO    ] ================================================
[2026-10-28 00:32:42,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:32:42
[2026-10-28 00:32:43,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:32:43,488.488 INFO    ] Initializing speech engine...
[2026-10-28 00:32:43,497.497 INFO    ] 2026-10-28 00:32:43
[2026-10-28 00:32:43,742.742 INFO    ] 2026-10-28 00:32:43
[2026-10-28 00:32:43,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:32:44,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:32:44,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:32:44,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:32:44,298.298 INFO    ] time= 28/10/2026 00:32:44
[2026-10-28 00:32:44,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:32:44,322.322 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:32:44,469.469 INFO    ] No existing commands found in stream
[2026-10-28 00:32:49,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:32:49,502.502 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 00:32:53,140.140 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:32:53,143.143 INFO    ] Checking for system updates...
[2026-10-28 00:32:53,184.184 INFO    ] 200
[2026-10-28 00:32:53,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:32:53,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:32:53,255.255 INFO    ] No update needed
[2026-10-28 00:32:53,257.257 INFO    ] Checking for camera pi updates...
[2026-10-28 00:32:53,294.294 INFO    ] 200
[2026-10-28 00:32:53,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:32:53,346.346 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:32:53,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:32:53,430.430 INFO    ] No camera update needed
[2026-10-28 00:32:53,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:32:53,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:32:53,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:32:53,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:32:55,485.485 INFO    ] ================================================
[2026-10-28 00:32:55,500.500 INFO    ] Launching Daemon at Wed Oct 28 00:32:55 IST 2026
[2026-10-28 00:32:55,511.511 INFO    ] ================================================
[2026-10-28 00:32:56,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:32:56
[2026-10-28 00:32:56,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:32:57,050.050 INFO    ] Initializing speech engine...
[2026-10-28 00:32:57,062.062 INFO    ] 2026-10-28 00:32:57
[2026-10-28 00:32:57,350.350 INFO    ] 2026-10-28 00:32:57
[2026-10-28 00:32:57,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:32:57,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:32:57,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:32:57,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:32:57,921.921 INFO    ] time= 28/10/2026 00:32:57
[2026-10-28 00:32:57,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:32:57,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:32:58,125.125 INFO    ] No existing commands found in stream
[2026-10-28 00:33:03,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:33:03,152.152 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 00:33:04,341.341 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:33:04,343.343 INFO    ] Checking for system updates...
[2026-10-28 00:33:04,378.378 INFO    ] 200
[2026-10-28 00:33:04,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:33:04,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:33:04,445.445 INFO    ] No update needed
[2026-10-28 00:33:04,447.447 INFO    ] Checking for camera pi updates...
[2026-10-28 00:33:04,484.484 INFO    ] 200
[2026-10-28 00:33:04,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:33:04,528.528 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:33:04,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:33:04,613.613 INFO    ] No camera update needed
[2026-10-28 00:33:04,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:33:04,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:33:04,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:33:04,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:33:06,670.670 INFO    ] ================================================
[2026-10-28 00:33:06,685.685 INFO    ] Launching Daemon at Wed Oct 28 00:33:06 IST 2026
[2026-10-28 00:33:06,697.697 INFO    ] ================================================
[2026-10-28 00:33:07,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:33:07
[2026-10-28 00:33:07,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:33:08,121.121 INFO    ] Initializing speech engine...
[2026-10-28 00:33:08,131.131 INFO    ] 2026-10-28 00:33:08
[2026-10-28 00:33:08,381.381 INFO    ] 2026-10-28 00:33:08
[2026-10-28 00:33:08,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:33:08,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:33:08,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:33:08,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:33:08,934.934 INFO    ] time= 28/10/2026 00:33:08
[2026-10-28 00:33:08,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:33:08,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:33:09,088.088 INFO    ] No existing commands found in stream
[2026-10-28 00:33:14,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:33:14,104.104 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-28 00:33:16,487.487 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:33:16,490.490 INFO    ] Checking for system updates...
[2026-10-28 00:33:16,528.528 INFO    ] 200
[2026-10-28 00:33:16,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:33:16,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:33:16,585.585 INFO    ] No update needed
[2026-10-28 00:33:16,588.588 INFO    ] Checking for camera pi updates...
[2026-10-28 00:33:16,626.626 INFO    ] 200
[2026-10-28 00:33:16,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:33:16,669.669 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:33:16,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:33:16,727.727 INFO    ] No camera update needed
[2026-10-28 00:33:16,730.730 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:33:16,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:33:16,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:33:16,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:33:18,782.782 INFO    ] ================================================
[2026-10-28 00:33:18,798.798 INFO    ] Launching Daemon at Wed Oct 28 00:33:18 IST 2026
[2026-10-28 00:33:18,809.809 INFO    ] ================================================
[2026-10-28 00:33:19,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:33:19
[2026-10-28 00:33:19,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:33:20,238.238 INFO    ] Initializing speech engine...
[2026-10-28 00:33:20,248.248 INFO    ] 2026-10-28 00:33:20
[2026-10-28 00:33:20,497.497 INFO    ] 2026-10-28 00:33:20
[2026-10-28 00:33:20,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:33:20,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:33:20,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:33:21,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:33:21,070.070 INFO    ] time= 28/10/2026 00:33:21
[2026-10-28 00:33:21,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:33:21,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:33:21,227.227 INFO    ] No existing commands found in stream
[2026-10-28 00:33:26,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:33:26,255.255 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 00:33:29,179.179 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:33:29,182.182 INFO    ] Checking for system updates...
[2026-10-28 00:33:29,217.217 INFO    ] 200
[2026-10-28 00:33:29,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:33:29,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:33:29,281.281 INFO    ] No update needed
[2026-10-28 00:33:29,284.284 INFO    ] Checking for camera pi updates...
[2026-10-28 00:33:29,320.320 INFO    ] 200
[2026-10-28 00:33:29,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:33:29,363.363 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:33:29,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:33:29,440.440 INFO    ] No camera update needed
[2026-10-28 00:33:29,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:33:29,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:33:29,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:33:29,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:33:31,497.497 INFO    ] ================================================
[2026-10-28 00:33:31,512.512 INFO    ] Launching Daemon at Wed Oct 28 00:33:31 IST 2026
[2026-10-28 00:33:31,522.522 INFO    ] ================================================
[2026-10-28 00:33:32,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:33:32
[2026-10-28 00:33:32,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:33:33,250.250 INFO    ] Initializing speech engine...
[2026-10-28 00:33:33,261.261 INFO    ] 2026-10-28 00:33:33
[2026-10-28 00:33:33,570.570 INFO    ] 2026-10-28 00:33:33
[2026-10-28 00:33:33,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:33:33,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:33:33,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:33:34,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:33:34,127.127 INFO    ] time= 28/10/2026 00:33:34
[2026-10-28 00:33:34,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:33:34,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:33:34,344.344 INFO    ] No existing commands found in stream
[2026-10-28 00:33:39,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:33:39,379.379 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 00:33:42,963.963 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:33:42,966.966 INFO    ] Checking for system updates...
[2026-10-28 00:33:43,007.007 INFO    ] 200
[2026-10-28 00:33:43,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:33:43,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:33:43,073.073 INFO    ] No update needed
[2026-10-28 00:33:43,076.076 INFO    ] Checking for camera pi updates...
[2026-10-28 00:33:43,115.115 INFO    ] 200
[2026-10-28 00:33:43,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:33:43,164.164 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:33:43,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:33:43,218.218 INFO    ] No camera update needed
[2026-10-28 00:33:43,221.221 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:33:43,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:33:43,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:33:43,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:33:45,277.277 INFO    ] ================================================
[2026-10-28 00:33:45,292.292 INFO    ] Launching Daemon at Wed Oct 28 00:33:45 IST 2026
[2026-10-28 00:33:45,303.303 INFO    ] ================================================
[2026-10-28 00:33:45,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:33:45
[2026-10-28 00:33:46,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:33:46,743.743 INFO    ] Initializing speech engine...
[2026-10-28 00:33:46,752.752 INFO    ] 2026-10-28 00:33:46
[2026-10-28 00:33:47,047.047 INFO    ] 2026-10-28 00:33:47
[2026-10-28 00:33:47,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:33:47,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:33:47,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:33:47,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:33:47,628.628 INFO    ] time= 28/10/2026 00:33:47
[2026-10-28 00:33:47,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:33:47,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:33:47,843.843 INFO    ] No existing commands found in stream
[2026-10-28 00:33:52,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:33:52,876.876 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 00:33:54,299.299 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:33:54,302.302 INFO    ] Checking for system updates...
[2026-10-28 00:33:54,338.338 INFO    ] 200
[2026-10-28 00:33:54,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:33:54,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:33:54,401.401 INFO    ] No update needed
[2026-10-28 00:33:54,404.404 INFO    ] Checking for camera pi updates...
[2026-10-28 00:33:54,438.438 INFO    ] 200
[2026-10-28 00:33:54,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:33:54,485.485 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:33:54,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:33:54,579.579 INFO    ] No camera update needed
[2026-10-28 00:33:54,581.581 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:33:54,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:33:54,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:33:54,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:33:56,635.635 INFO    ] ================================================
[2026-10-28 00:33:56,650.650 INFO    ] Launching Daemon at Wed Oct 28 00:33:56 IST 2026
[2026-10-28 00:33:56,661.661 INFO    ] ================================================
[2026-10-28 00:33:57,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:33:57
[2026-10-28 00:33:57,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:33:58,290.290 INFO    ] Initializing speech engine...
[2026-10-28 00:33:58,304.304 INFO    ] 2026-10-28 00:33:58
[2026-10-28 00:33:58,576.576 INFO    ] 2026-10-28 00:33:58
[2026-10-28 00:33:58,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:33:58,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:33:58,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:33:59,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:33:59,147.147 INFO    ] time= 28/10/2026 00:33:59
[2026-10-28 00:33:59,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:33:59,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:33:59,308.308 INFO    ] No existing commands found in stream
[2026-10-28 00:34:04,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:34:04,343.343 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-28 00:34:05,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:34:05,204.204 INFO    ] Checking for system updates...
[2026-10-28 00:34:05,241.241 INFO    ] 200
[2026-10-28 00:34:05,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:34:05,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:34:05,299.299 INFO    ] No update needed
[2026-10-28 00:34:05,302.302 INFO    ] Checking for camera pi updates...
[2026-10-28 00:34:05,336.336 INFO    ] 200
[2026-10-28 00:34:05,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:34:05,380.380 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:34:05,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:34:05,460.460 INFO    ] No camera update needed
[2026-10-28 00:34:05,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:34:05,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:34:05,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:34:05,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:34:07,519.519 INFO    ] ================================================
[2026-10-28 00:34:07,535.535 INFO    ] Launching Daemon at Wed Oct 28 00:34:07 IST 2026
[2026-10-28 00:34:07,545.545 INFO    ] ================================================
[2026-10-28 00:34:08,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:34:08
[2026-10-28 00:34:08,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:34:09,000.000 INFO    ] Initializing speech engine...
[2026-10-28 00:34:09,007.007 INFO    ] 2026-10-28 00:34:09
[2026-10-28 00:34:09,274.274 INFO    ] 2026-10-28 00:34:09
[2026-10-28 00:34:09,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:34:09,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:34:09,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:34:09,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:34:09,828.828 INFO    ] time= 28/10/2026 00:34:09
[2026-10-28 00:34:09,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:34:09,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:34:09,988.988 INFO    ] No existing commands found in stream
[2026-10-28 00:34:15,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:34:15,020.020 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-28 00:34:18,941.941 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:34:18,944.944 INFO    ] Checking for system updates...
[2026-10-28 00:34:18,981.981 INFO    ] 200
[2026-10-28 00:34:18,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:34:19,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:34:19,047.047 INFO    ] No update needed
[2026-10-28 00:34:19,050.050 INFO    ] Checking for camera pi updates...
[2026-10-28 00:34:19,085.085 INFO    ] 200
[2026-10-28 00:34:19,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:34:19,134.134 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:34:19,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:34:19,218.218 INFO    ] No camera update needed
[2026-10-28 00:34:19,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:34:19,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:34:19,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:34:19,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:34:21,276.276 INFO    ] ================================================
[2026-10-28 00:34:21,291.291 INFO    ] Launching Daemon at Wed Oct 28 00:34:21 IST 2026
[2026-10-28 00:34:21,301.301 INFO    ] ================================================
[2026-10-28 00:34:21,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:34:21
[2026-10-28 00:34:22,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:34:22,722.722 INFO    ] Initializing speech engine...
[2026-10-28 00:34:22,747.747 INFO    ] 2026-10-28 00:34:22
[2026-10-28 00:34:23,024.024 INFO    ] 2026-10-28 00:34:23
[2026-10-28 00:34:23,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:34:23,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:34:23,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:34:23,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:34:23,645.645 INFO    ] time= 28/10/2026 00:34:23
[2026-10-28 00:34:23,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:34:23,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:34:23,806.806 INFO    ] No existing commands found in stream
[2026-10-28 00:34:28,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:34:28,834.834 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 00:34:32,806.806 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:34:32,809.809 INFO    ] Checking for system updates...
[2026-10-28 00:34:32,851.851 INFO    ] 200
[2026-10-28 00:34:32,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:34:32,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:34:32,911.911 INFO    ] No update needed
[2026-10-28 00:34:32,914.914 INFO    ] Checking for camera pi updates...
[2026-10-28 00:34:32,950.950 INFO    ] 200
[2026-10-28 00:34:32,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:34:32,997.997 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:34:33,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:34:33,081.081 INFO    ] No camera update needed
[2026-10-28 00:34:33,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:34:33,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:34:33,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:34:33,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:34:35,142.142 INFO    ] ================================================
[2026-10-28 00:34:35,157.157 INFO    ] Launching Daemon at Wed Oct 28 00:34:35 IST 2026
[2026-10-28 00:34:35,168.168 INFO    ] ================================================
[2026-10-28 00:34:35,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:34:35
[2026-10-28 00:34:36,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:34:36,634.634 INFO    ] Initializing speech engine...
[2026-10-28 00:34:36,647.647 INFO    ] 2026-10-28 00:34:36
[2026-10-28 00:34:36,934.934 INFO    ] 2026-10-28 00:34:36
[2026-10-28 00:34:36,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:34:37,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:34:37,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:34:37,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:34:37,442.442 INFO    ] time= 28/10/2026 00:34:37
[2026-10-28 00:34:37,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:34:37,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:34:37,672.672 INFO    ] No existing commands found in stream
[2026-10-28 00:34:42,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:34:42,698.698 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-28 00:34:44,660.660 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:34:44,663.663 INFO    ] Checking for system updates...
[2026-10-28 00:34:44,700.700 INFO    ] 200
[2026-10-28 00:34:44,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:34:44,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:34:44,760.760 INFO    ] No update needed
[2026-10-28 00:34:44,763.763 INFO    ] Checking for camera pi updates...
[2026-10-28 00:34:44,797.797 INFO    ] 200
[2026-10-28 00:34:44,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:34:44,842.842 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:34:45,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:34:45,025.025 INFO    ] No camera update needed
[2026-10-28 00:34:45,028.028 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:34:45,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:34:45,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:34:45,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:34:47,085.085 INFO    ] ================================================
[2026-10-28 00:34:47,101.101 INFO    ] Launching Daemon at Wed Oct 28 00:34:47 IST 2026
[2026-10-28 00:34:47,112.112 INFO    ] ================================================
[2026-10-28 00:34:47,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:34:47
[2026-10-28 00:34:48,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:34:48,545.545 INFO    ] Initializing speech engine...
[2026-10-28 00:34:48,567.567 INFO    ] 2026-10-28 00:34:48
[2026-10-28 00:34:48,835.835 INFO    ] 2026-10-28 00:34:48
[2026-10-28 00:34:48,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:34:49,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:34:49,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:34:49,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:34:49,347.347 INFO    ] time= 28/10/2026 00:34:49
[2026-10-28 00:34:49,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:34:49,456.456 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:34:49,610.610 INFO    ] No existing commands found in stream
[2026-10-28 00:34:54,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:34:54,643.643 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 00:34:58,277.277 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:34:58,279.279 INFO    ] Checking for system updates...
[2026-10-28 00:34:58,316.316 INFO    ] 200
[2026-10-28 00:34:58,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:34:58,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:34:58,373.373 INFO    ] No update needed
[2026-10-28 00:34:58,376.376 INFO    ] Checking for camera pi updates...
[2026-10-28 00:34:58,408.408 INFO    ] 200
[2026-10-28 00:34:58,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:34:58,451.451 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:34:58,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:34:58,526.526 INFO    ] No camera update needed
[2026-10-28 00:34:58,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:34:58,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:34:58,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:34:58,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:35:00,581.581 INFO    ] ================================================
[2026-10-28 00:35:00,596.596 INFO    ] Launching Daemon at Wed Oct 28 00:35:00 IST 2026
[2026-10-28 00:35:00,607.607 INFO    ] ================================================
[2026-10-28 00:35:01,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:35:01
[2026-10-28 00:35:01,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:35:02,736.736 INFO    ] Initializing speech engine...
[2026-10-28 00:35:02,743.743 INFO    ] 2026-10-28 00:35:02
[2026-10-28 00:35:03,152.152 INFO    ] 2026-10-28 00:35:03
[2026-10-28 00:35:03,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:35:03,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:35:03,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:35:03,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:35:03,652.652 INFO    ] time= 28/10/2026 00:35:03
[2026-10-28 00:35:03,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:35:03,700.700 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:35:03,818.818 INFO    ] No existing commands found in stream
[2026-10-28 00:35:08,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:35:08,868.868 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-28 00:35:09,805.805 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:35:09,807.807 INFO    ] Checking for system updates...
[2026-10-28 00:35:09,843.843 INFO    ] 200
[2026-10-28 00:35:09,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:35:09,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:35:09,900.900 INFO    ] No update needed
[2026-10-28 00:35:09,902.902 INFO    ] Checking for camera pi updates...
[2026-10-28 00:35:09,936.936 INFO    ] 200
[2026-10-28 00:35:09,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:35:09,978.978 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:35:10,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:35:10,083.083 INFO    ] No camera update needed
[2026-10-28 00:35:10,086.086 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:35:10,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:35:10,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:35:10,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:35:12,140.140 INFO    ] ================================================
[2026-10-28 00:35:12,155.155 INFO    ] Launching Daemon at Wed Oct 28 00:35:12 IST 2026
[2026-10-28 00:35:12,166.166 INFO    ] ================================================
[2026-10-28 00:35:12,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:35:12
[2026-10-28 00:35:13,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:35:13,583.583 INFO    ] Initializing speech engine...
[2026-10-28 00:35:13,591.591 INFO    ] 2026-10-28 00:35:13
[2026-10-28 00:35:13,882.882 INFO    ] 2026-10-28 00:35:13
[2026-10-28 00:35:13,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:35:14,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:35:14,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:35:14,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:35:14,486.486 INFO    ] time= 28/10/2026 00:35:14
[2026-10-28 00:35:14,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:35:14,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:35:14,668.668 INFO    ] No existing commands found in stream
[2026-10-28 00:35:19,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:35:19,690.690 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-28 00:35:20,602.602 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:35:20,605.605 INFO    ] Checking for system updates...
[2026-10-28 00:35:20,641.641 INFO    ] 200
[2026-10-28 00:35:20,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:35:20,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:35:20,698.698 INFO    ] No update needed
[2026-10-28 00:35:20,700.700 INFO    ] Checking for camera pi updates...
[2026-10-28 00:35:20,734.734 INFO    ] 200
[2026-10-28 00:35:20,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:35:20,776.776 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:35:20,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:35:20,862.862 INFO    ] No camera update needed
[2026-10-28 00:35:20,864.864 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:35:20,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:35:20,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:35:20,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:35:22,916.916 INFO    ] ================================================
[2026-10-28 00:35:22,932.932 INFO    ] Launching Daemon at Wed Oct 28 00:35:22 IST 2026
[2026-10-28 00:35:22,942.942 INFO    ] ================================================
[2026-10-28 00:35:23,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:35:23
[2026-10-28 00:35:24,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:35:24,526.526 INFO    ] Initializing speech engine...
[2026-10-28 00:35:24,534.534 INFO    ] 2026-10-28 00:35:24
[2026-10-28 00:35:24,801.801 INFO    ] 2026-10-28 00:35:24
[2026-10-28 00:35:24,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:35:25,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:35:25,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:35:25,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:35:25,368.368 INFO    ] time= 28/10/2026 00:35:25
[2026-10-28 00:35:25,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:35:25,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:35:25,556.556 INFO    ] No existing commands found in stream
[2026-10-28 00:35:30,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:35:30,590.590 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 00:35:31,220.220 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:35:31,223.223 INFO    ] Checking for system updates...
[2026-10-28 00:35:31,261.261 INFO    ] 200
[2026-10-28 00:35:31,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:35:31,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:35:31,326.326 INFO    ] No update needed
[2026-10-28 00:35:31,329.329 INFO    ] Checking for camera pi updates...
[2026-10-28 00:35:31,362.362 INFO    ] 200
[2026-10-28 00:35:31,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:35:31,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:35:31,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:35:31,488.488 INFO    ] No camera update needed
[2026-10-28 00:35:31,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:35:31,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:35:31,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:35:31,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:35:33,544.544 INFO    ] ================================================
[2026-10-28 00:35:33,559.559 INFO    ] Launching Daemon at Wed Oct 28 00:35:33 IST 2026
[2026-10-28 00:35:33,570.570 INFO    ] ================================================
[2026-10-28 00:35:34,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:35:34
[2026-10-28 00:35:34,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:35:35,017.017 INFO    ] Initializing speech engine...
[2026-10-28 00:35:35,024.024 INFO    ] 2026-10-28 00:35:35
[2026-10-28 00:35:35,286.286 INFO    ] 2026-10-28 00:35:35
[2026-10-28 00:35:35,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:35:35,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:35:35,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:35:35,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:35:35,829.829 INFO    ] time= 28/10/2026 00:35:35
[2026-10-28 00:35:35,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:35:35,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:35:35,982.982 INFO    ] No existing commands found in stream
[2026-10-28 00:35:41,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:35:41,009.009 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-28 00:35:44,257.257 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:35:44,260.260 INFO    ] Checking for system updates...
[2026-10-28 00:35:44,295.295 INFO    ] 200
[2026-10-28 00:35:44,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:35:44,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:35:44,352.352 INFO    ] No update needed
[2026-10-28 00:35:44,355.355 INFO    ] Checking for camera pi updates...
[2026-10-28 00:35:44,388.388 INFO    ] 200
[2026-10-28 00:35:44,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:35:44,431.431 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:35:44,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:35:44,513.513 INFO    ] No camera update needed
[2026-10-28 00:35:44,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:35:44,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:35:44,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:35:44,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:35:46,570.570 INFO    ] ================================================
[2026-10-28 00:35:46,585.585 INFO    ] Launching Daemon at Wed Oct 28 00:35:46 IST 2026
[2026-10-28 00:35:46,595.595 INFO    ] ================================================
[2026-10-28 00:35:47,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:35:47
[2026-10-28 00:35:47,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:35:48,035.035 INFO    ] Initializing speech engine...
[2026-10-28 00:35:48,048.048 INFO    ] 2026-10-28 00:35:48
[2026-10-28 00:35:48,332.332 INFO    ] 2026-10-28 00:35:48
[2026-10-28 00:35:48,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:35:48,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:35:48,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:35:48,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:35:48,952.952 INFO    ] time= 28/10/2026 00:35:48
[2026-10-28 00:35:48,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:35:48,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:35:49,110.110 INFO    ] No existing commands found in stream
[2026-10-28 00:35:54,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:35:54,197.197 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-28 00:35:57,897.897 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:35:57,900.900 INFO    ] Checking for system updates...
[2026-10-28 00:35:57,935.935 INFO    ] 200
[2026-10-28 00:35:57,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:35:57,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:35:57,994.994 INFO    ] No update needed
[2026-10-28 00:35:57,997.997 INFO    ] Checking for camera pi updates...
[2026-10-28 00:35:58,031.031 INFO    ] 200
[2026-10-28 00:35:58,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:35:58,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:35:58,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:35:58,157.157 INFO    ] No camera update needed
[2026-10-28 00:35:58,160.160 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:35:58,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:35:58,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:35:58,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:36:00,213.213 INFO    ] ================================================
[2026-10-28 00:36:00,228.228 INFO    ] Launching Daemon at Wed Oct 28 00:36:00 IST 2026
[2026-10-28 00:36:00,239.239 INFO    ] ================================================
[2026-10-28 00:36:00,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:36:00
[2026-10-28 00:36:01,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:36:02,016.016 INFO    ] Initializing speech engine...
[2026-10-28 00:36:02,058.058 INFO    ] 2026-10-28 00:36:02
[2026-10-28 00:36:02,350.350 INFO    ] 2026-10-28 00:36:02
[2026-10-28 00:36:02,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:36:02,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:36:02,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:36:02,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:36:02,891.891 INFO    ] time= 28/10/2026 00:36:02
[2026-10-28 00:36:02,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:36:02,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:36:03,140.140 INFO    ] No existing commands found in stream
[2026-10-28 00:36:08,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:36:08,170.170 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 00:36:11,376.376 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:36:11,379.379 INFO    ] Checking for system updates...
[2026-10-28 00:36:11,418.418 INFO    ] 200
[2026-10-28 00:36:11,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:36:11,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:36:11,482.482 INFO    ] No update needed
[2026-10-28 00:36:11,484.484 INFO    ] Checking for camera pi updates...
[2026-10-28 00:36:11,522.522 INFO    ] 200
[2026-10-28 00:36:11,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:36:11,564.564 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:36:11,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:36:11,650.650 INFO    ] No camera update needed
[2026-10-28 00:36:11,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:36:11,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:36:11,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:36:11,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:36:13,705.705 INFO    ] ================================================
[2026-10-28 00:36:13,721.721 INFO    ] Launching Daemon at Wed Oct 28 00:36:13 IST 2026
[2026-10-28 00:36:13,733.733 INFO    ] ================================================
[2026-10-28 00:36:14,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:36:14
[2026-10-28 00:36:14,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:36:15,164.164 INFO    ] Initializing speech engine...
[2026-10-28 00:36:15,173.173 INFO    ] 2026-10-28 00:36:15
[2026-10-28 00:36:15,423.423 INFO    ] 2026-10-28 00:36:15
[2026-10-28 00:36:15,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:36:15,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:36:15,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:36:15,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:36:15,987.987 INFO    ] time= 28/10/2026 00:36:15
[2026-10-28 00:36:16,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:36:16,034.034 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:36:16,170.170 INFO    ] No existing commands found in stream
[2026-10-28 00:36:21,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:36:21,198.198 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 00:36:24,716.716 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:36:24,719.719 INFO    ] Checking for system updates...
[2026-10-28 00:36:24,757.757 INFO    ] 200
[2026-10-28 00:36:24,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:36:24,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:36:24,823.823 INFO    ] No update needed
[2026-10-28 00:36:24,826.826 INFO    ] Checking for camera pi updates...
[2026-10-28 00:36:24,861.861 INFO    ] 200
[2026-10-28 00:36:24,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:36:24,905.905 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:36:25,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:36:25,014.014 INFO    ] No camera update needed
[2026-10-28 00:36:25,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:36:25,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:36:25,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:36:25,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:36:27,076.076 INFO    ] ================================================
[2026-10-28 00:36:27,092.092 INFO    ] Launching Daemon at Wed Oct 28 00:36:27 IST 2026
[2026-10-28 00:36:27,104.104 INFO    ] ================================================
[2026-10-28 00:36:27,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:36:27
[2026-10-28 00:36:28,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:36:28,579.579 INFO    ] Initializing speech engine...
[2026-10-28 00:36:28,592.592 INFO    ] 2026-10-28 00:36:28
[2026-10-28 00:36:28,881.881 INFO    ] 2026-10-28 00:36:28
[2026-10-28 00:36:28,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:36:29,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:36:29,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:36:29,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:36:29,515.515 INFO    ] time= 28/10/2026 00:36:29
[2026-10-28 00:36:29,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:36:29,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:36:29,654.654 INFO    ] No existing commands found in stream
[2026-10-28 00:36:34,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:36:34,689.689 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-28 00:36:35,618.618 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:36:35,621.621 INFO    ] Checking for system updates...
[2026-10-28 00:36:35,656.656 INFO    ] 200
[2026-10-28 00:36:35,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:36:35,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:36:35,712.712 INFO    ] No update needed
[2026-10-28 00:36:35,715.715 INFO    ] Checking for camera pi updates...
[2026-10-28 00:36:35,749.749 INFO    ] 200
[2026-10-28 00:36:35,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:36:35,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:36:35,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:36:35,887.887 INFO    ] No camera update needed
[2026-10-28 00:36:35,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:36:35,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:36:35,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:36:35,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:36:37,943.943 INFO    ] ================================================
[2026-10-28 00:36:37,957.957 INFO    ] Launching Daemon at Wed Oct 28 00:36:37 IST 2026
[2026-10-28 00:36:37,968.968 INFO    ] ================================================
[2026-10-28 00:36:38,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:36:38
[2026-10-28 00:36:39,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:36:39,399.399 INFO    ] Initializing speech engine...
[2026-10-28 00:36:39,407.407 INFO    ] 2026-10-28 00:36:39
[2026-10-28 00:36:39,662.662 INFO    ] 2026-10-28 00:36:39
[2026-10-28 00:36:39,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:36:39,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:36:39,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:36:40,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:36:40,146.146 INFO    ] time= 28/10/2026 00:36:40
[2026-10-28 00:36:40,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:36:40,249.249 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:36:40,403.403 INFO    ] No existing commands found in stream
[2026-10-28 00:36:45,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:36:45,434.434 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-28 00:36:49,577.577 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:36:49,580.580 INFO    ] Checking for system updates...
[2026-10-28 00:36:49,619.619 INFO    ] 200
[2026-10-28 00:36:49,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:36:49,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:36:49,682.682 INFO    ] No update needed
[2026-10-28 00:36:49,685.685 INFO    ] Checking for camera pi updates...
[2026-10-28 00:36:49,718.718 INFO    ] 200
[2026-10-28 00:36:49,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:36:49,761.761 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:36:49,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:36:49,944.944 INFO    ] No camera update needed
[2026-10-28 00:36:49,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:36:49,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:36:49,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:36:49,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:36:52,001.001 INFO    ] ================================================
[2026-10-28 00:36:52,016.016 INFO    ] Launching Daemon at Wed Oct 28 00:36:52 IST 2026
[2026-10-28 00:36:52,027.027 INFO    ] ================================================
[2026-10-28 00:36:52,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:36:52
[2026-10-28 00:36:53,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:36:53,429.429 INFO    ] Initializing speech engine...
[2026-10-28 00:36:53,434.434 INFO    ] 2026-10-28 00:36:53
[2026-10-28 00:36:53,727.727 INFO    ] 2026-10-28 00:36:53
[2026-10-28 00:36:53,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:36:53,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:36:54,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:36:54,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:36:54,235.235 INFO    ] time= 28/10/2026 00:36:54
[2026-10-28 00:36:54,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:36:54,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:36:54,497.497 INFO    ] No existing commands found in stream
[2026-10-28 00:36:59,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:36:59,512.512 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 00:37:01,679.679 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:37:01,683.683 INFO    ] Checking for system updates...
[2026-10-28 00:37:01,774.774 INFO    ] 200
[2026-10-28 00:37:01,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:37:01,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:37:01,856.856 INFO    ] No update needed
[2026-10-28 00:37:01,859.859 INFO    ] Checking for camera pi updates...
[2026-10-28 00:37:01,900.900 INFO    ] 200
[2026-10-28 00:37:01,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:37:01,948.948 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:37:02,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:37:02,067.067 INFO    ] No camera update needed
[2026-10-28 00:37:02,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:37:02,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:37:02,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:37:02,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:37:04,129.129 INFO    ] ================================================
[2026-10-28 00:37:04,145.145 INFO    ] Launching Daemon at Wed Oct 28 00:37:04 IST 2026
[2026-10-28 00:37:04,155.155 INFO    ] ================================================
[2026-10-28 00:37:04,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:37:04
[2026-10-28 00:37:05,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:37:05,796.796 INFO    ] Initializing speech engine...
[2026-10-28 00:37:05,803.803 INFO    ] 2026-10-28 00:37:05
[2026-10-28 00:37:06,079.079 INFO    ] 2026-10-28 00:37:06
[2026-10-28 00:37:06,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:37:06,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:37:06,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:37:06,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:37:06,676.676 INFO    ] time= 28/10/2026 00:37:06
[2026-10-28 00:37:06,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:37:06,752.752 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:37:06,932.932 INFO    ] No existing commands found in stream
[2026-10-28 00:37:11,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:37:11,961.961 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-28 00:37:13,789.789 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:37:13,792.792 INFO    ] Checking for system updates...
[2026-10-28 00:37:13,829.829 INFO    ] 200
[2026-10-28 00:37:13,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:37:13,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:37:13,893.893 INFO    ] No update needed
[2026-10-28 00:37:13,895.895 INFO    ] Checking for camera pi updates...
[2026-10-28 00:37:13,933.933 INFO    ] 200
[2026-10-28 00:37:13,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:37:13,980.980 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:37:14,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:37:14,087.087 INFO    ] No camera update needed
[2026-10-28 00:37:14,089.089 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:37:14,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:37:14,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:37:14,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:37:16,141.141 INFO    ] ================================================
[2026-10-28 00:37:16,156.156 INFO    ] Launching Daemon at Wed Oct 28 00:37:16 IST 2026
[2026-10-28 00:37:16,167.167 INFO    ] ================================================
[2026-10-28 00:37:16,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:37:16
[2026-10-28 00:37:17,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:37:17,622.622 INFO    ] Initializing speech engine...
[2026-10-28 00:37:17,631.631 INFO    ] 2026-10-28 00:37:17
[2026-10-28 00:37:17,890.890 INFO    ] 2026-10-28 00:37:17
[2026-10-28 00:37:17,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:37:18,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:37:18,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:37:18,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:37:18,434.434 INFO    ] time= 28/10/2026 00:37:18
[2026-10-28 00:37:18,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:37:18,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:37:18,600.600 INFO    ] No existing commands found in stream
[2026-10-28 00:37:23,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:37:23,638.638 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-28 00:37:25,511.511 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:37:25,513.513 INFO    ] Checking for system updates...
[2026-10-28 00:37:25,549.549 INFO    ] 200
[2026-10-28 00:37:25,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:37:25,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:37:25,617.617 INFO    ] No update needed
[2026-10-28 00:37:25,619.619 INFO    ] Checking for camera pi updates...
[2026-10-28 00:37:25,655.655 INFO    ] 200
[2026-10-28 00:37:25,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:37:25,709.709 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:37:25,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:37:25,795.795 INFO    ] No camera update needed
[2026-10-28 00:37:25,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:37:25,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:37:25,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:37:25,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:37:27,855.855 INFO    ] ================================================
[2026-10-28 00:37:27,870.870 INFO    ] Launching Daemon at Wed Oct 28 00:37:27 IST 2026
[2026-10-28 00:37:27,881.881 INFO    ] ================================================
[2026-10-28 00:37:28,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:37:28
[2026-10-28 00:37:29,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:37:29,335.335 INFO    ] Initializing speech engine...
[2026-10-28 00:37:29,344.344 INFO    ] 2026-10-28 00:37:29
[2026-10-28 00:37:29,594.594 INFO    ] 2026-10-28 00:37:29
[2026-10-28 00:37:29,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:37:29,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:37:29,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:37:30,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:37:30,171.171 INFO    ] time= 28/10/2026 00:37:30
[2026-10-28 00:37:30,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:37:30,208.208 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:37:30,371.371 INFO    ] No existing commands found in stream
[2026-10-28 00:37:35,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:37:35,406.406 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-28 00:37:38,057.057 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:37:38,060.060 INFO    ] Checking for system updates...
[2026-10-28 00:37:38,097.097 INFO    ] 200
[2026-10-28 00:37:38,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:37:38,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:37:38,156.156 INFO    ] No update needed
[2026-10-28 00:37:38,158.158 INFO    ] Checking for camera pi updates...
[2026-10-28 00:37:38,193.193 INFO    ] 200
[2026-10-28 00:37:38,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:37:38,237.237 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:37:38,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:37:38,337.337 INFO    ] No camera update needed
[2026-10-28 00:37:38,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:37:38,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:37:38,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:37:38,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:37:40,396.396 INFO    ] ================================================
[2026-10-28 00:37:40,411.411 INFO    ] Launching Daemon at Wed Oct 28 00:37:40 IST 2026
[2026-10-28 00:37:40,421.421 INFO    ] ================================================
[2026-10-28 00:37:41,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:37:41
[2026-10-28 00:37:41,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:37:42,054.054 INFO    ] Initializing speech engine...
[2026-10-28 00:37:42,063.063 INFO    ] 2026-10-28 00:37:42
[2026-10-28 00:37:42,352.352 INFO    ] 2026-10-28 00:37:42
[2026-10-28 00:37:42,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:37:42,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:37:42,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:37:42,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:37:42,950.950 INFO    ] time= 28/10/2026 00:37:42
[2026-10-28 00:37:42,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:37:42,964.964 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:37:43,131.131 INFO    ] No existing commands found in stream
[2026-10-28 00:37:48,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:37:48,166.166 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-28 00:37:49,760.760 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:37:49,763.763 INFO    ] Checking for system updates...
[2026-10-28 00:37:49,804.804 INFO    ] 200
[2026-10-28 00:37:49,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:37:49,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:37:49,888.888 INFO    ] No update needed
[2026-10-28 00:37:49,891.891 INFO    ] Checking for camera pi updates...
[2026-10-28 00:37:49,929.929 INFO    ] 200
[2026-10-28 00:37:49,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:37:49,978.978 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:37:50,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:37:50,061.061 INFO    ] No camera update needed
[2026-10-28 00:37:50,064.064 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:37:50,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:37:50,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:37:50,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:37:52,121.121 INFO    ] ================================================
[2026-10-28 00:37:52,137.137 INFO    ] Launching Daemon at Wed Oct 28 00:37:52 IST 2026
[2026-10-28 00:37:52,147.147 INFO    ] ================================================
[2026-10-28 00:37:52,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:37:52
[2026-10-28 00:37:53,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:37:53,769.769 INFO    ] Initializing speech engine...
[2026-10-28 00:37:53,780.780 INFO    ] 2026-10-28 00:37:53
[2026-10-28 00:37:54,058.058 INFO    ] 2026-10-28 00:37:54
[2026-10-28 00:37:54,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:37:54,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:37:54,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:37:54,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:37:54,628.628 INFO    ] time= 28/10/2026 00:37:54
[2026-10-28 00:37:54,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:37:54,669.669 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:37:54,796.796 INFO    ] No existing commands found in stream
[2026-10-28 00:37:59,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:37:59,820.820 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-28 00:38:02,277.277 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:38:02,282.282 INFO    ] Checking for system updates...
[2026-10-28 00:38:02,332.332 INFO    ] 200
[2026-10-28 00:38:02,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:38:02,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:38:02,411.411 INFO    ] No update needed
[2026-10-28 00:38:02,415.415 INFO    ] Checking for camera pi updates...
[2026-10-28 00:38:02,456.456 INFO    ] 200
[2026-10-28 00:38:02,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:38:02,517.517 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:38:02,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:38:02,618.618 INFO    ] No camera update needed
[2026-10-28 00:38:02,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:38:02,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:38:02,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:38:02,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:38:04,680.680 INFO    ] ================================================
[2026-10-28 00:38:04,695.695 INFO    ] Launching Daemon at Wed Oct 28 00:38:04 IST 2026
[2026-10-28 00:38:04,705.705 INFO    ] ================================================
[2026-10-28 00:38:05,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:38:05
[2026-10-28 00:38:06,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:38:06,326.326 INFO    ] Initializing speech engine...
[2026-10-28 00:38:06,338.338 INFO    ] 2026-10-28 00:38:06
[2026-10-28 00:38:06,652.652 INFO    ] 2026-10-28 00:38:06
[2026-10-28 00:38:06,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:38:07,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:38:07,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:38:07,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:38:07,347.347 INFO    ] time= 28/10/2026 00:38:07
[2026-10-28 00:38:07,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:38:07,456.456 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:38:07,580.580 INFO    ] No existing commands found in stream
[2026-10-28 00:38:12,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:38:12,602.602 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-28 00:38:13,704.704 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:38:13,707.707 INFO    ] Checking for system updates...
[2026-10-28 00:38:13,745.745 INFO    ] 200
[2026-10-28 00:38:13,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:38:13,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:38:13,804.804 INFO    ] No update needed
[2026-10-28 00:38:13,807.807 INFO    ] Checking for camera pi updates...
[2026-10-28 00:38:13,842.842 INFO    ] 200
[2026-10-28 00:38:13,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:38:13,886.886 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:38:13,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:38:13,960.960 INFO    ] No camera update needed
[2026-10-28 00:38:13,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:38:13,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:38:13,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:38:13,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:38:16,020.020 INFO    ] ================================================
[2026-10-28 00:38:16,035.035 INFO    ] Launching Daemon at Wed Oct 28 00:38:16 IST 2026
[2026-10-28 00:38:16,045.045 INFO    ] ================================================
[2026-10-28 00:38:16,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:38:16
[2026-10-28 00:38:17,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:38:17,492.492 INFO    ] Initializing speech engine...
[2026-10-28 00:38:17,502.502 INFO    ] 2026-10-28 00:38:17
[2026-10-28 00:38:17,765.765 INFO    ] 2026-10-28 00:38:17
[2026-10-28 00:38:17,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:38:18,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:38:18,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:38:18,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:38:18,290.290 INFO    ] time= 28/10/2026 00:38:18
[2026-10-28 00:38:18,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:38:18,317.317 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:38:18,431.431 INFO    ] No existing commands found in stream
[2026-10-28 00:38:23,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:38:23,461.461 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-28 00:38:27,275.275 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:38:27,277.277 INFO    ] Checking for system updates...
[2026-10-28 00:38:27,313.313 INFO    ] 200
[2026-10-28 00:38:27,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:38:27,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:38:27,381.381 INFO    ] No update needed
[2026-10-28 00:38:27,384.384 INFO    ] Checking for camera pi updates...
[2026-10-28 00:38:27,418.418 INFO    ] 200
[2026-10-28 00:38:27,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:38:27,460.460 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:38:27,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:38:27,561.561 INFO    ] No camera update needed
[2026-10-28 00:38:27,563.563 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:38:27,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:38:27,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:38:27,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:38:29,617.617 INFO    ] ================================================
[2026-10-28 00:38:29,632.632 INFO    ] Launching Daemon at Wed Oct 28 00:38:29 IST 2026
[2026-10-28 00:38:29,642.642 INFO    ] ================================================
[2026-10-28 00:38:30,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:38:30
[2026-10-28 00:38:30,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:38:31,061.061 INFO    ] Initializing speech engine...
[2026-10-28 00:38:31,085.085 INFO    ] 2026-10-28 00:38:31
[2026-10-28 00:38:31,359.359 INFO    ] 2026-10-28 00:38:31
[2026-10-28 00:38:31,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:38:31,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:38:31,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:38:31,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:38:31,880.880 INFO    ] time= 28/10/2026 00:38:31
[2026-10-28 00:38:31,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:38:31,990.990 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:38:32,160.160 INFO    ] No existing commands found in stream
[2026-10-28 00:38:37,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:38:37,189.189 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 00:38:40,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:38:40,177.177 INFO    ] Checking for system updates...
[2026-10-28 00:38:40,213.213 INFO    ] 200
[2026-10-28 00:38:40,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:38:40,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:38:40,271.271 INFO    ] No update needed
[2026-10-28 00:38:40,274.274 INFO    ] Checking for camera pi updates...
[2026-10-28 00:38:40,307.307 INFO    ] 200
[2026-10-28 00:38:40,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:38:40,349.349 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:38:40,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:38:40,430.430 INFO    ] No camera update needed
[2026-10-28 00:38:40,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:38:40,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:38:40,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:38:40,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:38:42,485.485 INFO    ] ================================================
[2026-10-28 00:38:42,500.500 INFO    ] Launching Daemon at Wed Oct 28 00:38:42 IST 2026
[2026-10-28 00:38:42,511.511 INFO    ] ================================================
[2026-10-28 00:38:43,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:38:43
[2026-10-28 00:38:43,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:38:43,917.917 INFO    ] Initializing speech engine...
[2026-10-28 00:38:43,940.940 INFO    ] 2026-10-28 00:38:43
[2026-10-28 00:38:44,198.198 INFO    ] 2026-10-28 00:38:44
[2026-10-28 00:38:44,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:38:44,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:38:44,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:38:44,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:38:44,769.769 INFO    ] time= 28/10/2026 00:38:44
[2026-10-28 00:38:44,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:38:44,792.792 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:38:44,924.924 INFO    ] No existing commands found in stream
[2026-10-28 00:38:49,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:38:49,943.943 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-28 00:38:52,035.035 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:38:52,038.038 INFO    ] Checking for system updates...
[2026-10-28 00:38:52,074.074 INFO    ] 200
[2026-10-28 00:38:52,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:38:52,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:38:52,131.131 INFO    ] No update needed
[2026-10-28 00:38:52,133.133 INFO    ] Checking for camera pi updates...
[2026-10-28 00:38:52,166.166 INFO    ] 200
[2026-10-28 00:38:52,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:38:52,209.209 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:38:52,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:38:52,394.394 INFO    ] No camera update needed
[2026-10-28 00:38:52,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:38:52,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:38:52,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:38:52,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:38:54,450.450 INFO    ] ================================================
[2026-10-28 00:38:54,465.465 INFO    ] Launching Daemon at Wed Oct 28 00:38:54 IST 2026
[2026-10-28 00:38:54,476.476 INFO    ] ================================================
[2026-10-28 00:38:55,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:38:55
[2026-10-28 00:38:55,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:38:55,963.963 INFO    ] Initializing speech engine...
[2026-10-28 00:38:55,972.972 INFO    ] 2026-10-28 00:38:55
[2026-10-28 00:38:56,291.291 INFO    ] 2026-10-28 00:38:56
[2026-10-28 00:38:56,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:38:56,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:38:56,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:38:56,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:38:56,714.714 INFO    ] time= 28/10/2026 00:38:56
[2026-10-28 00:38:56,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:38:56,781.781 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:38:56,908.908 INFO    ] No existing commands found in stream
[2026-10-28 00:39:01,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:39:01,920.920 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-28 00:39:05,240.240 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:39:05,243.243 INFO    ] Checking for system updates...
[2026-10-28 00:39:05,278.278 INFO    ] 200
[2026-10-28 00:39:05,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:39:05,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:39:05,337.337 INFO    ] No update needed
[2026-10-28 00:39:05,339.339 INFO    ] Checking for camera pi updates...
[2026-10-28 00:39:05,373.373 INFO    ] 200
[2026-10-28 00:39:05,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:39:05,415.415 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:39:05,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:39:05,514.514 INFO    ] No camera update needed
[2026-10-28 00:39:05,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:39:05,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:39:05,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:39:05,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:39:07,570.570 INFO    ] ================================================
[2026-10-28 00:39:07,585.585 INFO    ] Launching Daemon at Wed Oct 28 00:39:07 IST 2026
[2026-10-28 00:39:07,596.596 INFO    ] ================================================
[2026-10-28 00:39:08,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:39:08
[2026-10-28 00:39:08,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:39:09,013.013 INFO    ] Initializing speech engine...
[2026-10-28 00:39:09,022.022 INFO    ] 2026-10-28 00:39:09
[2026-10-28 00:39:09,271.271 INFO    ] 2026-10-28 00:39:09
[2026-10-28 00:39:09,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:39:09,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:39:09,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:39:09,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:39:09,834.834 INFO    ] time= 28/10/2026 00:39:09
[2026-10-28 00:39:09,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:39:09,857.857 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:39:09,994.994 INFO    ] No existing commands found in stream
[2026-10-28 00:39:15,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:39:15,009.009 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-28 00:39:17,734.734 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:39:17,736.736 INFO    ] Checking for system updates...
[2026-10-28 00:39:17,772.772 INFO    ] 200
[2026-10-28 00:39:17,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:39:17,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:39:17,829.829 INFO    ] No update needed
[2026-10-28 00:39:17,831.831 INFO    ] Checking for camera pi updates...
[2026-10-28 00:39:17,865.865 INFO    ] 200
[2026-10-28 00:39:17,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:39:17,907.907 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:39:17,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:39:17,999.999 INFO    ] No camera update needed
[2026-10-28 00:39:18,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:39:18,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:39:18,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:39:18,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:39:20,054.054 INFO    ] ================================================
[2026-10-28 00:39:20,069.069 INFO    ] Launching Daemon at Wed Oct 28 00:39:20 IST 2026
[2026-10-28 00:39:20,080.080 INFO    ] ================================================
[2026-10-28 00:39:20,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:39:20
[2026-10-28 00:39:21,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:39:21,709.709 INFO    ] Initializing speech engine...
[2026-10-28 00:39:21,723.723 INFO    ] 2026-10-28 00:39:21
[2026-10-28 00:39:22,015.015 INFO    ] 2026-10-28 00:39:21
[2026-10-28 00:39:22,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:39:22,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:39:22,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:39:22,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:39:22,737.737 INFO    ] time= 28/10/2026 00:39:22
[2026-10-28 00:39:22,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:39:22,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:39:23,000.000 INFO    ] No existing commands found in stream
[2026-10-28 00:39:28,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:39:28,025.025 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 00:39:31,416.416 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:39:31,419.419 INFO    ] Checking for system updates...
[2026-10-28 00:39:31,461.461 INFO    ] 200
[2026-10-28 00:39:31,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:39:31,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:39:31,526.526 INFO    ] No update needed
[2026-10-28 00:39:31,529.529 INFO    ] Checking for camera pi updates...
[2026-10-28 00:39:31,563.563 INFO    ] 200
[2026-10-28 00:39:31,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:39:31,607.607 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:39:31,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:39:31,714.714 INFO    ] No camera update needed
[2026-10-28 00:39:31,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:39:31,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:39:31,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:39:31,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:39:33,769.769 INFO    ] ================================================
[2026-10-28 00:39:33,784.784 INFO    ] Launching Daemon at Wed Oct 28 00:39:33 IST 2026
[2026-10-28 00:39:33,795.795 INFO    ] ================================================
[2026-10-28 00:39:34,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:39:34
[2026-10-28 00:39:35,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:39:35,346.346 INFO    ] Initializing speech engine...
[2026-10-28 00:39:35,362.362 INFO    ] 2026-10-28 00:39:35
[2026-10-28 00:39:35,622.622 INFO    ] 2026-10-28 00:39:35
[2026-10-28 00:39:35,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:39:35,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:39:35,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:39:36,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:39:36,156.156 INFO    ] time= 28/10/2026 00:39:36
[2026-10-28 00:39:36,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:39:36,212.212 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:39:36,359.359 INFO    ] No existing commands found in stream
[2026-10-28 00:39:41,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:39:41,375.375 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 00:39:44,014.014 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:39:44,017.017 INFO    ] Checking for system updates...
[2026-10-28 00:39:44,054.054 INFO    ] 200
[2026-10-28 00:39:44,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:39:44,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:39:44,110.110 INFO    ] No update needed
[2026-10-28 00:39:44,113.113 INFO    ] Checking for camera pi updates...
[2026-10-28 00:39:44,146.146 INFO    ] 200
[2026-10-28 00:39:44,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:39:44,189.189 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:39:44,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:39:44,276.276 INFO    ] No camera update needed
[2026-10-28 00:39:44,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:39:44,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:39:44,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:39:44,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:39:46,334.334 INFO    ] ================================================
[2026-10-28 00:39:46,348.348 INFO    ] Launching Daemon at Wed Oct 28 00:39:46 IST 2026
[2026-10-28 00:39:46,359.359 INFO    ] ================================================
[2026-10-28 00:39:46,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:39:46
[2026-10-28 00:39:47,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:39:47,777.777 INFO    ] Initializing speech engine...
[2026-10-28 00:39:47,784.784 INFO    ] 2026-10-28 00:39:47
[2026-10-28 00:39:48,030.030 INFO    ] 2026-10-28 00:39:48
[2026-10-28 00:39:48,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:39:48,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:39:48,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:39:48,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:39:48,586.586 INFO    ] time= 28/10/2026 00:39:48
[2026-10-28 00:39:48,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:39:48,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:39:48,749.749 INFO    ] No existing commands found in stream
[2026-10-28 00:39:53,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:39:53,781.781 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 00:39:55,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:39:55,475.475 INFO    ] Checking for system updates...
[2026-10-28 00:39:55,514.514 INFO    ] 200
[2026-10-28 00:39:55,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:39:55,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:39:55,576.576 INFO    ] No update needed
[2026-10-28 00:39:55,578.578 INFO    ] Checking for camera pi updates...
[2026-10-28 00:39:55,615.615 INFO    ] 200
[2026-10-28 00:39:55,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:39:55,657.657 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:39:55,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:39:55,736.736 INFO    ] No camera update needed
[2026-10-28 00:39:55,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:39:55,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:39:55,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:39:55,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:39:57,792.792 INFO    ] ================================================
[2026-10-28 00:39:57,807.807 INFO    ] Launching Daemon at Wed Oct 28 00:39:57 IST 2026
[2026-10-28 00:39:57,817.817 INFO    ] ================================================
[2026-10-28 00:39:58,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:39:58
[2026-10-28 00:39:58,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:39:59,276.276 INFO    ] Initializing speech engine...
[2026-10-28 00:39:59,284.284 INFO    ] 2026-10-28 00:39:59
[2026-10-28 00:39:59,543.543 INFO    ] 2026-10-28 00:39:59
[2026-10-28 00:39:59,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:39:59,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:39:59,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:40:00,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:40:00,122.122 INFO    ] time= 28/10/2026 00:40:00
[2026-10-28 00:40:00,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:40:00,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:40:00,311.311 INFO    ] No existing commands found in stream
[2026-10-28 00:40:05,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:40:05,339.339 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-28 00:40:08,873.873 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:40:08,876.876 INFO    ] Checking for system updates...
[2026-10-28 00:40:08,911.911 INFO    ] 200
[2026-10-28 00:40:08,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:40:08,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:40:08,974.974 INFO    ] No update needed
[2026-10-28 00:40:08,977.977 INFO    ] Checking for camera pi updates...
[2026-10-28 00:40:09,010.010 INFO    ] 200
[2026-10-28 00:40:09,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:40:09,052.052 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:40:09,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:40:09,139.139 INFO    ] No camera update needed
[2026-10-28 00:40:09,141.141 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:40:09,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:40:09,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:40:09,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:40:11,194.194 INFO    ] ================================================
[2026-10-28 00:40:11,209.209 INFO    ] Launching Daemon at Wed Oct 28 00:40:11 IST 2026
[2026-10-28 00:40:11,220.220 INFO    ] ================================================
[2026-10-28 00:40:11,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:40:11
[2026-10-28 00:40:12,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:40:12,818.818 INFO    ] Initializing speech engine...
[2026-10-28 00:40:12,829.829 INFO    ] 2026-10-28 00:40:12
[2026-10-28 00:40:13,135.135 INFO    ] 2026-10-28 00:40:13
[2026-10-28 00:40:13,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:40:13,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:40:13,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:40:13,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:40:13,828.828 INFO    ] time= 28/10/2026 00:40:13
[2026-10-28 00:40:13,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:40:13,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:40:14,046.046 INFO    ] No existing commands found in stream
[2026-10-28 00:40:19,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:40:19,080.080 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-28 00:40:22,574.574 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:40:22,577.577 INFO    ] Checking for system updates...
[2026-10-28 00:40:22,614.614 INFO    ] 200
[2026-10-28 00:40:22,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:40:22,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:40:22,672.672 INFO    ] No update needed
[2026-10-28 00:40:22,674.674 INFO    ] Checking for camera pi updates...
[2026-10-28 00:40:22,712.712 INFO    ] 200
[2026-10-28 00:40:22,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:40:22,756.756 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:40:22,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:40:22,841.841 INFO    ] No camera update needed
[2026-10-28 00:40:22,844.844 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:40:22,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:40:22,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:40:22,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:40:24,899.899 INFO    ] ================================================
[2026-10-28 00:40:24,914.914 INFO    ] Launching Daemon at Wed Oct 28 00:40:24 IST 2026
[2026-10-28 00:40:24,924.924 INFO    ] ================================================
[2026-10-28 00:40:25,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:40:25
[2026-10-28 00:40:26,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:40:26,444.444 INFO    ] Initializing speech engine...
[2026-10-28 00:40:26,456.456 INFO    ] 2026-10-28 00:40:26
[2026-10-28 00:40:26,733.733 INFO    ] 2026-10-28 00:40:26
[2026-10-28 00:40:26,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:40:27,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:40:27,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:40:27,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:40:27,313.313 INFO    ] time= 28/10/2026 00:40:27
[2026-10-28 00:40:27,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:40:27,376.376 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:40:27,517.517 INFO    ] No existing commands found in stream
[2026-10-28 00:40:32,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:40:32,545.545 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-28 00:40:34,934.934 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:40:34,937.937 INFO    ] Checking for system updates...
[2026-10-28 00:40:34,974.974 INFO    ] 200
[2026-10-28 00:40:34,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:40:35,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:40:35,032.032 INFO    ] No update needed
[2026-10-28 00:40:35,035.035 INFO    ] Checking for camera pi updates...
[2026-10-28 00:40:35,069.069 INFO    ] 200
[2026-10-28 00:40:35,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:40:35,114.114 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:40:35,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:40:35,201.201 INFO    ] No camera update needed
[2026-10-28 00:40:35,204.204 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:40:35,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:40:35,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:40:35,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:40:37,259.259 INFO    ] ================================================
[2026-10-28 00:40:37,274.274 INFO    ] Launching Daemon at Wed Oct 28 00:40:37 IST 2026
[2026-10-28 00:40:37,286.286 INFO    ] ================================================
[2026-10-28 00:40:37,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:40:37
[2026-10-28 00:40:38,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:40:38,688.688 INFO    ] Initializing speech engine...
[2026-10-28 00:40:38,703.703 INFO    ] 2026-10-28 00:40:38
[2026-10-28 00:40:38,968.968 INFO    ] 2026-10-28 00:40:38
[2026-10-28 00:40:39,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:40:39,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:40:39,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:40:39,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:40:39,534.534 INFO    ] time= 28/10/2026 00:40:39
[2026-10-28 00:40:39,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:40:39,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:40:39,711.711 INFO    ] No existing commands found in stream
[2026-10-28 00:40:44,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:40:44,744.744 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-28 00:40:49,091.091 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:40:49,094.094 INFO    ] Checking for system updates...
[2026-10-28 00:40:49,130.130 INFO    ] 200
[2026-10-28 00:40:49,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:40:49,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:40:49,189.189 INFO    ] No update needed
[2026-10-28 00:40:49,191.191 INFO    ] Checking for camera pi updates...
[2026-10-28 00:40:49,230.230 INFO    ] 200
[2026-10-28 00:40:49,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:40:49,273.273 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:40:49,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:40:49,374.374 INFO    ] No camera update needed
[2026-10-28 00:40:49,377.377 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:40:49,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:40:49,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:40:49,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:40:51,430.430 INFO    ] ================================================
[2026-10-28 00:40:51,446.446 INFO    ] Launching Daemon at Wed Oct 28 00:40:51 IST 2026
[2026-10-28 00:40:51,456.456 INFO    ] ================================================
[2026-10-28 00:40:52,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:40:52
[2026-10-28 00:40:52,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:40:52,865.865 INFO    ] Initializing speech engine...
[2026-10-28 00:40:52,877.877 INFO    ] 2026-10-28 00:40:52
[2026-10-28 00:40:53,141.141 INFO    ] 2026-10-28 00:40:53
[2026-10-28 00:40:53,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:40:53,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:40:53,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:40:53,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:40:53,709.709 INFO    ] time= 28/10/2026 00:40:53
[2026-10-28 00:40:53,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:40:53,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:40:53,890.890 INFO    ] No existing commands found in stream
[2026-10-28 00:40:58,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:40:58,923.923 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-28 00:41:03,333.333 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:41:03,337.337 INFO    ] Checking for system updates...
[2026-10-28 00:41:03,381.381 INFO    ] 200
[2026-10-28 00:41:03,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:41:03,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:41:03,452.452 INFO    ] No update needed
[2026-10-28 00:41:03,455.455 INFO    ] Checking for camera pi updates...
[2026-10-28 00:41:03,490.490 INFO    ] 200
[2026-10-28 00:41:03,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:41:03,538.538 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:41:03,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:41:03,620.620 INFO    ] No camera update needed
[2026-10-28 00:41:03,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:41:03,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:41:03,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:41:03,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:41:05,678.678 INFO    ] ================================================
[2026-10-28 00:41:05,695.695 INFO    ] Launching Daemon at Wed Oct 28 00:41:05 IST 2026
[2026-10-28 00:41:05,709.709 INFO    ] ================================================
[2026-10-28 00:41:06,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:41:06
[2026-10-28 00:41:06,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:41:07,151.151 INFO    ] Initializing speech engine...
[2026-10-28 00:41:07,174.174 INFO    ] 2026-10-28 00:41:07
[2026-10-28 00:41:07,451.451 INFO    ] 2026-10-28 00:41:07
[2026-10-28 00:41:07,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:41:07,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:41:07,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:41:07,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:41:07,950.950 INFO    ] time= 28/10/2026 00:41:07
[2026-10-28 00:41:08,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:41:08,059.059 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:41:08,140.140 INFO    ] No existing commands found in stream
[2026-10-28 00:41:13,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:41:13,155.155 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 00:41:14,955.955 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:41:14,957.957 INFO    ] Checking for system updates...
[2026-10-28 00:41:14,993.993 INFO    ] 200
[2026-10-28 00:41:14,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:41:15,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:41:15,050.050 INFO    ] No update needed
[2026-10-28 00:41:15,052.052 INFO    ] Checking for camera pi updates...
[2026-10-28 00:41:15,086.086 INFO    ] 200
[2026-10-28 00:41:15,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:41:15,132.132 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:41:15,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:41:15,217.217 INFO    ] No camera update needed
[2026-10-28 00:41:15,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:41:15,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:41:15,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:41:15,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:41:17,272.272 INFO    ] ================================================
[2026-10-28 00:41:17,287.287 INFO    ] Launching Daemon at Wed Oct 28 00:41:17 IST 2026
[2026-10-28 00:41:17,298.298 INFO    ] ================================================
[2026-10-28 00:41:17,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:41:17
[2026-10-28 00:41:18,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:41:18,897.897 INFO    ] Initializing speech engine...
[2026-10-28 00:41:18,909.909 INFO    ] 2026-10-28 00:41:18
[2026-10-28 00:41:19,201.201 INFO    ] 2026-10-28 00:41:19
[2026-10-28 00:41:19,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:41:19,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:41:19,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:41:19,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:41:19,802.802 INFO    ] time= 28/10/2026 00:41:19
[2026-10-28 00:41:19,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:41:19,902.902 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:41:20,036.036 INFO    ] No existing commands found in stream
[2026-10-28 00:41:25,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:41:25,075.075 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-28 00:41:28,734.734 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:41:28,737.737 INFO    ] Checking for system updates...
[2026-10-28 00:41:28,774.774 INFO    ] 200
[2026-10-28 00:41:28,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:41:28,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:41:28,837.837 INFO    ] No update needed
[2026-10-28 00:41:28,840.840 INFO    ] Checking for camera pi updates...
[2026-10-28 00:41:28,873.873 INFO    ] 200
[2026-10-28 00:41:28,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:41:28,919.919 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:41:29,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:41:29,005.005 INFO    ] No camera update needed
[2026-10-28 00:41:29,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:41:29,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:41:29,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:41:29,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:41:31,061.061 INFO    ] ================================================
[2026-10-28 00:41:31,077.077 INFO    ] Launching Daemon at Wed Oct 28 00:41:31 IST 2026
[2026-10-28 00:41:31,088.088 INFO    ] ================================================
[2026-10-28 00:41:31,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:41:31
[2026-10-28 00:41:32,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:41:32,605.605 INFO    ] Initializing speech engine...
[2026-10-28 00:41:32,620.620 INFO    ] 2026-10-28 00:41:32
[2026-10-28 00:41:32,918.918 INFO    ] 2026-10-28 00:41:32
[2026-10-28 00:41:32,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:41:33,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:41:33,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:41:33,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:41:33,521.521 INFO    ] time= 28/10/2026 00:41:33
[2026-10-28 00:41:33,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:41:33,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:41:33,700.700 INFO    ] No existing commands found in stream
[2026-10-28 00:41:38,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:41:38,731.731 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 00:41:42,031.031 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:41:42,034.034 INFO    ] Checking for system updates...
[2026-10-28 00:41:42,069.069 INFO    ] 200
[2026-10-28 00:41:42,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:41:42,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:41:42,126.126 INFO    ] No update needed
[2026-10-28 00:41:42,128.128 INFO    ] Checking for camera pi updates...
[2026-10-28 00:41:42,162.162 INFO    ] 200
[2026-10-28 00:41:42,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:41:42,205.205 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:41:42,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:41:42,288.288 INFO    ] No camera update needed
[2026-10-28 00:41:42,290.290 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:41:42,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:41:42,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:41:42,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:41:44,342.342 INFO    ] ================================================
[2026-10-28 00:41:44,357.357 INFO    ] Launching Daemon at Wed Oct 28 00:41:44 IST 2026
[2026-10-28 00:41:44,368.368 INFO    ] ================================================
[2026-10-28 00:41:44,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:41:44
[2026-10-28 00:41:45,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:41:45,808.808 INFO    ] Initializing speech engine...
[2026-10-28 00:41:45,818.818 INFO    ] 2026-10-28 00:41:45
[2026-10-28 00:41:46,097.097 INFO    ] 2026-10-28 00:41:46
[2026-10-28 00:41:46,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:41:46,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:41:46,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:41:46,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:41:46,656.656 INFO    ] time= 28/10/2026 00:41:46
[2026-10-28 00:41:46,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:41:46,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:41:46,819.819 INFO    ] No existing commands found in stream
[2026-10-28 00:41:51,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:41:51,858.858 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-28 00:41:54,517.517 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:41:54,520.520 INFO    ] Checking for system updates...
[2026-10-28 00:41:54,557.557 INFO    ] 200
[2026-10-28 00:41:54,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:41:54,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:41:54,618.618 INFO    ] No update needed
[2026-10-28 00:41:54,620.620 INFO    ] Checking for camera pi updates...
[2026-10-28 00:41:54,654.654 INFO    ] 200
[2026-10-28 00:41:54,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:41:54,701.701 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:41:54,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:41:54,805.805 INFO    ] No camera update needed
[2026-10-28 00:41:54,807.807 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:41:54,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:41:54,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:41:54,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:41:56,860.860 INFO    ] ================================================
[2026-10-28 00:41:56,875.875 INFO    ] Launching Daemon at Wed Oct 28 00:41:56 IST 2026
[2026-10-28 00:41:56,887.887 INFO    ] ================================================
[2026-10-28 00:41:57,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:41:57
[2026-10-28 00:41:58,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:41:58,336.336 INFO    ] Initializing speech engine...
[2026-10-28 00:41:58,346.346 INFO    ] 2026-10-28 00:41:58
[2026-10-28 00:41:58,601.601 INFO    ] 2026-10-28 00:41:58
[2026-10-28 00:41:58,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:41:58,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:41:58,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:41:59,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:41:59,151.151 INFO    ] time= 28/10/2026 00:41:59
[2026-10-28 00:41:59,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:41:59,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:41:59,305.305 INFO    ] No existing commands found in stream
[2026-10-28 00:42:04,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:42:04,323.323 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-28 00:42:08,693.693 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:42:08,696.696 INFO    ] Checking for system updates...
[2026-10-28 00:42:08,736.736 INFO    ] 200
[2026-10-28 00:42:08,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:42:08,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:42:08,793.793 INFO    ] No update needed
[2026-10-28 00:42:08,795.795 INFO    ] Checking for camera pi updates...
[2026-10-28 00:42:08,829.829 INFO    ] 200
[2026-10-28 00:42:08,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:42:08,871.871 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:42:08,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:42:08,958.958 INFO    ] No camera update needed
[2026-10-28 00:42:08,961.961 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:42:08,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:42:08,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:42:08,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:42:11,015.015 INFO    ] ================================================
[2026-10-28 00:42:11,030.030 INFO    ] Launching Daemon at Wed Oct 28 00:42:11 IST 2026
[2026-10-28 00:42:11,041.041 INFO    ] ================================================
[2026-10-28 00:42:11,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:42:11
[2026-10-28 00:42:12,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:42:12,491.491 INFO    ] Initializing speech engine...
[2026-10-28 00:42:12,501.501 INFO    ] 2026-10-28 00:42:12
[2026-10-28 00:42:12,755.755 INFO    ] 2026-10-28 00:42:12
[2026-10-28 00:42:12,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:42:12,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:42:13,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:42:13,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:42:13,314.314 INFO    ] time= 28/10/2026 00:42:13
[2026-10-28 00:42:13,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:42:13,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:42:13,466.466 INFO    ] No existing commands found in stream
[2026-10-28 00:42:18,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:42:18,483.483 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 00:42:20,114.114 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:42:20,116.116 INFO    ] Checking for system updates...
[2026-10-28 00:42:20,153.153 INFO    ] 200
[2026-10-28 00:42:20,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:42:20,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:42:20,213.213 INFO    ] No update needed
[2026-10-28 00:42:20,216.216 INFO    ] Checking for camera pi updates...
[2026-10-28 00:42:20,250.250 INFO    ] 200
[2026-10-28 00:42:20,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:42:20,298.298 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:42:20,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:42:20,382.382 INFO    ] No camera update needed
[2026-10-28 00:42:20,384.384 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:42:20,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:42:20,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:42:20,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:42:22,439.439 INFO    ] ================================================
[2026-10-28 00:42:22,454.454 INFO    ] Launching Daemon at Wed Oct 28 00:42:22 IST 2026
[2026-10-28 00:42:22,465.465 INFO    ] ================================================
[2026-10-28 00:42:23,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:42:23
[2026-10-28 00:42:23,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:42:24,105.105 INFO    ] Initializing speech engine...
[2026-10-28 00:42:24,119.119 INFO    ] 2026-10-28 00:42:24
[2026-10-28 00:42:24,432.432 INFO    ] 2026-10-28 00:42:24
[2026-10-28 00:42:24,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:42:24,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:42:24,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:42:24,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:42:24,967.967 INFO    ] time= 28/10/2026 00:42:24
[2026-10-28 00:42:24,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:42:24,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:42:25,114.114 INFO    ] No existing commands found in stream
[2026-10-28 00:42:30,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:42:30,149.149 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-28 00:42:33,720.720 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:42:33,723.723 INFO    ] Checking for system updates...
[2026-10-28 00:42:33,760.760 INFO    ] 200
[2026-10-28 00:42:33,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:42:33,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:42:33,820.820 INFO    ] No update needed
[2026-10-28 00:42:33,823.823 INFO    ] Checking for camera pi updates...
[2026-10-28 00:42:33,857.857 INFO    ] 200
[2026-10-28 00:42:33,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:42:33,906.906 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:42:33,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:42:33,989.989 INFO    ] No camera update needed
[2026-10-28 00:42:33,992.992 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:42:33,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:42:34,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:42:34,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:42:36,048.048 INFO    ] ================================================
[2026-10-28 00:42:36,065.065 INFO    ] Launching Daemon at Wed Oct 28 00:42:36 IST 2026
[2026-10-28 00:42:36,077.077 INFO    ] ================================================
[2026-10-28 00:42:36,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:42:36
[2026-10-28 00:42:37,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:42:37,503.503 INFO    ] Initializing speech engine...
[2026-10-28 00:42:37,529.529 INFO    ] 2026-10-28 00:42:37
[2026-10-28 00:42:37,803.803 INFO    ] 2026-10-28 00:42:37
[2026-10-28 00:42:37,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:42:38,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:42:38,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:42:38,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:42:38,359.359 INFO    ] time= 28/10/2026 00:42:38
[2026-10-28 00:42:38,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:42:38,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:42:38,571.571 INFO    ] No existing commands found in stream
[2026-10-28 00:42:43,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:42:43,592.592 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-28 00:42:44,854.854 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:42:44,857.857 INFO    ] Checking for system updates...
[2026-10-28 00:42:44,892.892 INFO    ] 200
[2026-10-28 00:42:44,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:42:44,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:42:44,955.955 INFO    ] No update needed
[2026-10-28 00:42:44,958.958 INFO    ] Checking for camera pi updates...
[2026-10-28 00:42:44,990.990 INFO    ] 200
[2026-10-28 00:42:44,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:42:45,033.033 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:42:45,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:42:45,146.146 INFO    ] No camera update needed
[2026-10-28 00:42:45,149.149 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:42:45,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:42:45,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:42:45,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:42:47,203.203 INFO    ] ================================================
[2026-10-28 00:42:47,218.218 INFO    ] Launching Daemon at Wed Oct 28 00:42:47 IST 2026
[2026-10-28 00:42:47,229.229 INFO    ] ================================================
[2026-10-28 00:42:47,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:42:47
[2026-10-28 00:42:48,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:42:48,632.632 INFO    ] Initializing speech engine...
[2026-10-28 00:42:48,641.641 INFO    ] 2026-10-28 00:42:48
[2026-10-28 00:42:48,935.935 INFO    ] 2026-10-28 00:42:48
[2026-10-28 00:42:48,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:42:49,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:42:49,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:42:49,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:42:49,488.488 INFO    ] time= 28/10/2026 00:42:49
[2026-10-28 00:42:49,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:42:49,579.579 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:42:49,749.749 INFO    ] No existing commands found in stream
[2026-10-28 00:42:54,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:42:54,764.764 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-28 00:42:55,701.701 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:42:55,704.704 INFO    ] Checking for system updates...
[2026-10-28 00:42:55,740.740 INFO    ] 200
[2026-10-28 00:42:55,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:42:55,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:42:55,799.799 INFO    ] No update needed
[2026-10-28 00:42:55,801.801 INFO    ] Checking for camera pi updates...
[2026-10-28 00:42:55,837.837 INFO    ] 200
[2026-10-28 00:42:55,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:42:55,882.882 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:42:55,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:42:55,957.957 INFO    ] No camera update needed
[2026-10-28 00:42:55,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:42:55,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:42:55,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:42:55,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:42:58,016.016 INFO    ] ================================================
[2026-10-28 00:42:58,031.031 INFO    ] Launching Daemon at Wed Oct 28 00:42:58 IST 2026
[2026-10-28 00:42:58,042.042 INFO    ] ================================================
[2026-10-28 00:42:58,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:42:58
[2026-10-28 00:42:59,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:42:59,506.506 INFO    ] Initializing speech engine...
[2026-10-28 00:42:59,517.517 INFO    ] 2026-10-28 00:42:59
[2026-10-28 00:42:59,764.764 INFO    ] 2026-10-28 00:42:59
[2026-10-28 00:42:59,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:43:00,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:43:00,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:43:00,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:43:00,321.321 INFO    ] time= 28/10/2026 00:43:00
[2026-10-28 00:43:00,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:43:00,345.345 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:43:00,513.513 INFO    ] No existing commands found in stream
[2026-10-28 00:43:05,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:43:05,547.547 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-28 00:43:06,862.862 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:43:06,865.865 INFO    ] Checking for system updates...
[2026-10-28 00:43:06,900.900 INFO    ] 200
[2026-10-28 00:43:06,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:43:06,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:43:06,957.957 INFO    ] No update needed
[2026-10-28 00:43:06,959.959 INFO    ] Checking for camera pi updates...
[2026-10-28 00:43:06,992.992 INFO    ] 200
[2026-10-28 00:43:06,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:43:07,039.039 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:43:07,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:43:07,221.221 INFO    ] No camera update needed
[2026-10-28 00:43:07,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:43:07,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:43:07,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:43:07,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:43:09,278.278 INFO    ] ================================================
[2026-10-28 00:43:09,293.293 INFO    ] Launching Daemon at Wed Oct 28 00:43:09 IST 2026
[2026-10-28 00:43:09,303.303 INFO    ] ================================================
[2026-10-28 00:43:09,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:43:09
[2026-10-28 00:43:10,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:43:10,756.756 INFO    ] Initializing speech engine...
[2026-10-28 00:43:10,765.765 INFO    ] 2026-10-28 00:43:10
[2026-10-28 00:43:11,015.015 INFO    ] 2026-10-28 00:43:11
[2026-10-28 00:43:11,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:43:11,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:43:11,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:43:11,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:43:11,571.571 INFO    ] time= 28/10/2026 00:43:11
[2026-10-28 00:43:11,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:43:11,618.618 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:43:11,753.753 INFO    ] No existing commands found in stream
[2026-10-28 00:43:16,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:43:16,786.786 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 00:43:17,549.549 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:43:17,552.552 INFO    ] Checking for system updates...
[2026-10-28 00:43:17,592.592 INFO    ] 200
[2026-10-28 00:43:17,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:43:17,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:43:17,655.655 INFO    ] No update needed
[2026-10-28 00:43:17,657.657 INFO    ] Checking for camera pi updates...
[2026-10-28 00:43:17,692.692 INFO    ] 200
[2026-10-28 00:43:17,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:43:17,739.739 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:43:17,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:43:17,821.821 INFO    ] No camera update needed
[2026-10-28 00:43:17,824.824 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:43:17,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:43:17,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:43:17,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:43:19,879.879 INFO    ] ================================================
[2026-10-28 00:43:19,894.894 INFO    ] Launching Daemon at Wed Oct 28 00:43:19 IST 2026
[2026-10-28 00:43:19,904.904 INFO    ] ================================================
[2026-10-28 00:43:20,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:43:20
[2026-10-28 00:43:21,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:43:21,437.437 INFO    ] Initializing speech engine...
[2026-10-28 00:43:21,450.450 INFO    ] 2026-10-28 00:43:21
[2026-10-28 00:43:21,732.732 INFO    ] 2026-10-28 00:43:21
[2026-10-28 00:43:21,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:43:22,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:43:22,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:43:22,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:43:22,269.269 INFO    ] time= 28/10/2026 00:43:22
[2026-10-28 00:43:22,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:43:22,318.318 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:43:22,449.449 INFO    ] No existing commands found in stream
[2026-10-28 00:43:27,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:43:27,483.483 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 00:43:29,957.957 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:43:29,960.960 INFO    ] Checking for system updates...
[2026-10-28 00:43:29,996.996 INFO    ] 200
[2026-10-28 00:43:29,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:43:30,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:43:30,055.055 INFO    ] No update needed
[2026-10-28 00:43:30,058.058 INFO    ] Checking for camera pi updates...
[2026-10-28 00:43:30,091.091 INFO    ] 200
[2026-10-28 00:43:30,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:43:30,140.140 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:43:30,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:43:30,224.224 INFO    ] No camera update needed
[2026-10-28 00:43:30,226.226 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:43:30,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:43:30,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:43:30,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:43:32,280.280 INFO    ] ================================================
[2026-10-28 00:43:32,296.296 INFO    ] Launching Daemon at Wed Oct 28 00:43:32 IST 2026
[2026-10-28 00:43:32,308.308 INFO    ] ================================================
[2026-10-28 00:43:32,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:43:32
[2026-10-28 00:43:33,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:43:33,777.777 INFO    ] Initializing speech engine...
[2026-10-28 00:43:33,781.781 INFO    ] 2026-10-28 00:43:33
[2026-10-28 00:43:34,031.031 INFO    ] 2026-10-28 00:43:34
[2026-10-28 00:43:34,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:43:34,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:43:34,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:43:34,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:43:34,589.589 INFO    ] time= 28/10/2026 00:43:34
[2026-10-28 00:43:34,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:43:34,608.608 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:43:34,741.741 INFO    ] No existing commands found in stream
[2026-10-28 00:43:39,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:43:39,767.767 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-28 00:43:42,150.150 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:43:42,153.153 INFO    ] Checking for system updates...
[2026-10-28 00:43:42,189.189 INFO    ] 200
[2026-10-28 00:43:42,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:43:42,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:43:42,249.249 INFO    ] No update needed
[2026-10-28 00:43:42,251.251 INFO    ] Checking for camera pi updates...
[2026-10-28 00:43:42,284.284 INFO    ] 200
[2026-10-28 00:43:42,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:43:42,326.326 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:43:42,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:43:42,409.409 INFO    ] No camera update needed
[2026-10-28 00:43:42,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:43:42,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:43:42,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:43:42,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:43:44,466.466 INFO    ] ================================================
[2026-10-28 00:43:44,481.481 INFO    ] Launching Daemon at Wed Oct 28 00:43:44 IST 2026
[2026-10-28 00:43:44,498.498 INFO    ] ================================================
[2026-10-28 00:43:45,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:43:45
[2026-10-28 00:43:45,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:43:45,950.950 INFO    ] Initializing speech engine...
[2026-10-28 00:43:45,959.959 INFO    ] 2026-10-28 00:43:45
[2026-10-28 00:43:46,212.212 INFO    ] 2026-10-28 00:43:46
[2026-10-28 00:43:46,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:43:46,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:43:46,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:43:46,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:43:46,778.778 INFO    ] time= 28/10/2026 00:43:46
[2026-10-28 00:43:46,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:43:46,811.811 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:43:46,938.938 INFO    ] No existing commands found in stream
[2026-10-28 00:43:51,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:43:51,966.966 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-28 00:43:54,681.681 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:43:54,685.685 INFO    ] Checking for system updates...
[2026-10-28 00:43:54,732.732 INFO    ] 200
[2026-10-28 00:43:54,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:43:54,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:43:54,803.803 INFO    ] No update needed
[2026-10-28 00:43:54,806.806 INFO    ] Checking for camera pi updates...
[2026-10-28 00:43:54,839.839 INFO    ] 200
[2026-10-28 00:43:54,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:43:54,881.881 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:43:54,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:43:54,967.967 INFO    ] No camera update needed
[2026-10-28 00:43:54,970.970 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:43:54,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:43:54,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:43:54,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:43:57,030.030 INFO    ] ================================================
[2026-10-28 00:43:57,045.045 INFO    ] Launching Daemon at Wed Oct 28 00:43:57 IST 2026
[2026-10-28 00:43:57,056.056 INFO    ] ================================================
[2026-10-28 00:43:57,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:43:57
[2026-10-28 00:43:58,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:43:58,467.467 INFO    ] Initializing speech engine...
[2026-10-28 00:43:58,490.490 INFO    ] 2026-10-28 00:43:58
[2026-10-28 00:43:58,745.745 INFO    ] 2026-10-28 00:43:58
[2026-10-28 00:43:58,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:43:58,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:43:59,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:43:59,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:43:59,315.315 INFO    ] time= 28/10/2026 00:43:59
[2026-10-28 00:43:59,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:43:59,341.341 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:43:59,477.477 INFO    ] No existing commands found in stream
[2026-10-28 00:44:04,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:44:04,501.501 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-28 00:44:05,948.948 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:44:05,951.951 INFO    ] Checking for system updates...
[2026-10-28 00:44:05,986.986 INFO    ] 200
[2026-10-28 00:44:05,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:44:06,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:44:06,043.043 INFO    ] No update needed
[2026-10-28 00:44:06,045.045 INFO    ] Checking for camera pi updates...
[2026-10-28 00:44:06,082.082 INFO    ] 200
[2026-10-28 00:44:06,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:44:06,128.128 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:44:06,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:44:06,180.180 INFO    ] No camera update needed
[2026-10-28 00:44:06,182.182 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:44:06,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:44:06,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:44:06,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:44:08,237.237 INFO    ] ================================================
[2026-10-28 00:44:08,253.253 INFO    ] Launching Daemon at Wed Oct 28 00:44:08 IST 2026
[2026-10-28 00:44:08,264.264 INFO    ] ================================================
[2026-10-28 00:44:08,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:44:08
[2026-10-28 00:44:09,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:44:09,699.699 INFO    ] Initializing speech engine...
[2026-10-28 00:44:09,704.704 INFO    ] 2026-10-28 00:44:09
[2026-10-28 00:44:09,959.959 INFO    ] 2026-10-28 00:44:09
[2026-10-28 00:44:09,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:44:10,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:44:10,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:44:10,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:44:10,522.522 INFO    ] time= 28/10/2026 00:44:10
[2026-10-28 00:44:10,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:44:10,546.546 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:44:10,684.684 INFO    ] No existing commands found in stream
[2026-10-28 00:44:15,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:44:15,715.715 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-28 00:44:19,130.130 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:44:19,133.133 INFO    ] Checking for system updates...
[2026-10-28 00:44:19,168.168 INFO    ] 200
[2026-10-28 00:44:19,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:44:19,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:44:19,233.233 INFO    ] No update needed
[2026-10-28 00:44:19,236.236 INFO    ] Checking for camera pi updates...
[2026-10-28 00:44:19,269.269 INFO    ] 200
[2026-10-28 00:44:19,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:44:19,315.315 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:44:19,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:44:19,403.403 INFO    ] No camera update needed
[2026-10-28 00:44:19,405.405 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:44:19,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:44:19,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:44:19,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:44:21,458.458 INFO    ] ================================================
[2026-10-28 00:44:21,473.473 INFO    ] Launching Daemon at Wed Oct 28 00:44:21 IST 2026
[2026-10-28 00:44:21,484.484 INFO    ] ================================================
[2026-10-28 00:44:22,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:44:22
[2026-10-28 00:44:22,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:44:22,900.900 INFO    ] Initializing speech engine...
[2026-10-28 00:44:22,909.909 INFO    ] 2026-10-28 00:44:22
[2026-10-28 00:44:23,158.158 INFO    ] 2026-10-28 00:44:23
[2026-10-28 00:44:23,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:44:23,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:44:23,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:44:23,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:44:23,725.725 INFO    ] time= 28/10/2026 00:44:23
[2026-10-28 00:44:23,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:44:23,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:44:23,886.886 INFO    ] No existing commands found in stream
[2026-10-28 00:44:28,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:44:28,905.905 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 00:44:33,092.092 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:44:33,095.095 INFO    ] Checking for system updates...
[2026-10-28 00:44:33,132.132 INFO    ] 200
[2026-10-28 00:44:33,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:44:33,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:44:33,192.192 INFO    ] No update needed
[2026-10-28 00:44:33,195.195 INFO    ] Checking for camera pi updates...
[2026-10-28 00:44:33,232.232 INFO    ] 200
[2026-10-28 00:44:33,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:44:33,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:44:33,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:44:33,367.367 INFO    ] No camera update needed
[2026-10-28 00:44:33,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:44:33,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:44:33,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:44:33,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:44:35,426.426 INFO    ] ================================================
[2026-10-28 00:44:35,442.442 INFO    ] Launching Daemon at Wed Oct 28 00:44:35 IST 2026
[2026-10-28 00:44:35,453.453 INFO    ] ================================================
[2026-10-28 00:44:36,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:44:36
[2026-10-28 00:44:36,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:44:36,930.930 INFO    ] Initializing speech engine...
[2026-10-28 00:44:36,938.938 INFO    ] 2026-10-28 00:44:36
[2026-10-28 00:44:37,209.209 INFO    ] 2026-10-28 00:44:37
[2026-10-28 00:44:37,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:44:37,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:44:37,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:44:37,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:44:37,753.753 INFO    ] time= 28/10/2026 00:44:37
[2026-10-28 00:44:37,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:44:37,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:44:37,977.977 INFO    ] No existing commands found in stream
[2026-10-28 00:44:42,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:44:43,002.002 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 00:44:44,147.147 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:44:44,149.149 INFO    ] Checking for system updates...
[2026-10-28 00:44:44,185.185 INFO    ] 200
[2026-10-28 00:44:44,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:44:44,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:44:44,251.251 INFO    ] No update needed
[2026-10-28 00:44:44,254.254 INFO    ] Checking for camera pi updates...
[2026-10-28 00:44:44,292.292 INFO    ] 200
[2026-10-28 00:44:44,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:44:44,340.340 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:44:44,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:44:44,423.423 INFO    ] No camera update needed
[2026-10-28 00:44:44,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:44:44,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:44:44,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:44:44,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:44:46,478.478 INFO    ] ================================================
[2026-10-28 00:44:46,493.493 INFO    ] Launching Daemon at Wed Oct 28 00:44:46 IST 2026
[2026-10-28 00:44:46,504.504 INFO    ] ================================================
[2026-10-28 00:44:47,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:44:47
[2026-10-28 00:44:47,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:44:47,954.954 INFO    ] Initializing speech engine...
[2026-10-28 00:44:47,963.963 INFO    ] 2026-10-28 00:44:47
[2026-10-28 00:44:48,217.217 INFO    ] 2026-10-28 00:44:48
[2026-10-28 00:44:48,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:44:48,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:44:48,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:44:48,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:44:48,808.808 INFO    ] time= 28/10/2026 00:44:48
[2026-10-28 00:44:48,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:44:48,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:44:48,981.981 INFO    ] No existing commands found in stream
[2026-10-28 00:44:53,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:44:54,001.001 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-28 00:44:58,428.428 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:44:58,430.430 INFO    ] Checking for system updates...
[2026-10-28 00:44:58,466.466 INFO    ] 200
[2026-10-28 00:44:58,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:44:58,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:44:58,530.530 INFO    ] No update needed
[2026-10-28 00:44:58,532.532 INFO    ] Checking for camera pi updates...
[2026-10-28 00:44:58,569.569 INFO    ] 200
[2026-10-28 00:44:58,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:44:58,611.611 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:44:58,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:44:58,691.691 INFO    ] No camera update needed
[2026-10-28 00:44:58,694.694 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:44:58,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:44:58,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:44:58,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:45:00,747.747 INFO    ] ================================================
[2026-10-28 00:45:00,762.762 INFO    ] Launching Daemon at Wed Oct 28 00:45:00 IST 2026
[2026-10-28 00:45:00,774.774 INFO    ] ================================================
[2026-10-28 00:45:01,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:45:01
[2026-10-28 00:45:02,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:45:02,940.940 INFO    ] Initializing speech engine...
[2026-10-28 00:45:02,945.945 INFO    ] 2026-10-28 00:45:02
[2026-10-28 00:45:03,311.311 INFO    ] 2026-10-28 00:45:03
[2026-10-28 00:45:03,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:45:03,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:45:03,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:45:03,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:45:03,824.824 INFO    ] time= 28/10/2026 00:45:03
[2026-10-28 00:45:03,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:45:03,878.878 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:45:04,044.044 INFO    ] No existing commands found in stream
[2026-10-28 00:45:09,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:45:09,058.058 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-28 00:45:10,833.833 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:45:10,835.835 INFO    ] Checking for system updates...
[2026-10-28 00:45:10,871.871 INFO    ] 200
[2026-10-28 00:45:10,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:45:10,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:45:10,934.934 INFO    ] No update needed
[2026-10-28 00:45:10,937.937 INFO    ] Checking for camera pi updates...
[2026-10-28 00:45:10,974.974 INFO    ] 200
[2026-10-28 00:45:10,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:45:11,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:45:11,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:45:11,225.225 INFO    ] No camera update needed
[2026-10-28 00:45:11,227.227 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:45:11,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:45:11,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:45:11,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:45:13,279.279 INFO    ] ================================================
[2026-10-28 00:45:13,295.295 INFO    ] Launching Daemon at Wed Oct 28 00:45:13 IST 2026
[2026-10-28 00:45:13,306.306 INFO    ] ================================================
[2026-10-28 00:45:13,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:45:13
[2026-10-28 00:45:14,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:45:14,764.764 INFO    ] Initializing speech engine...
[2026-10-28 00:45:14,770.770 INFO    ] 2026-10-28 00:45:14
[2026-10-28 00:45:15,030.030 INFO    ] 2026-10-28 00:45:15
[2026-10-28 00:45:15,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:45:15,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:45:15,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:45:15,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:45:15,576.576 INFO    ] time= 28/10/2026 00:45:15
[2026-10-28 00:45:15,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:45:15,600.600 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:45:15,728.728 INFO    ] No existing commands found in stream
[2026-10-28 00:45:20,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:45:20,747.747 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-28 00:45:23,071.071 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:45:23,074.074 INFO    ] Checking for system updates...
[2026-10-28 00:45:23,109.109 INFO    ] 200
[2026-10-28 00:45:23,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:45:23,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:45:23,168.168 INFO    ] No update needed
[2026-10-28 00:45:23,171.171 INFO    ] Checking for camera pi updates...
[2026-10-28 00:45:23,205.205 INFO    ] 200
[2026-10-28 00:45:23,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:45:23,248.248 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:45:23,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:45:23,318.318 INFO    ] No camera update needed
[2026-10-28 00:45:23,320.320 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:45:23,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:45:23,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:45:23,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:45:25,374.374 INFO    ] ================================================
[2026-10-28 00:45:25,390.390 INFO    ] Launching Daemon at Wed Oct 28 00:45:25 IST 2026
[2026-10-28 00:45:25,401.401 INFO    ] ================================================
[2026-10-28 00:45:26,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:45:26
[2026-10-28 00:45:26,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:45:27,008.008 INFO    ] Initializing speech engine...
[2026-10-28 00:45:27,018.018 INFO    ] 2026-10-28 00:45:27
[2026-10-28 00:45:27,290.290 INFO    ] 2026-10-28 00:45:27
[2026-10-28 00:45:27,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:45:27,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:45:27,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:45:27,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:45:27,877.877 INFO    ] time= 28/10/2026 00:45:27
[2026-10-28 00:45:27,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:45:27,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:45:28,084.084 INFO    ] No existing commands found in stream
[2026-10-28 00:45:33,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:45:33,099.099 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-28 00:45:37,072.072 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:45:37,075.075 INFO    ] Checking for system updates...
[2026-10-28 00:45:37,112.112 INFO    ] 200
[2026-10-28 00:45:37,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:45:37,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:45:37,178.178 INFO    ] No update needed
[2026-10-28 00:45:37,180.180 INFO    ] Checking for camera pi updates...
[2026-10-28 00:45:37,215.215 INFO    ] 200
[2026-10-28 00:45:37,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:45:37,259.259 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:45:37,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:45:37,344.344 INFO    ] No camera update needed
[2026-10-28 00:45:37,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:45:37,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:45:37,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:45:37,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:45:39,403.403 INFO    ] ================================================
[2026-10-28 00:45:39,418.418 INFO    ] Launching Daemon at Wed Oct 28 00:45:39 IST 2026
[2026-10-28 00:45:39,429.429 INFO    ] ================================================
[2026-10-28 00:45:39,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:45:39
[2026-10-28 00:45:40,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:45:40,850.850 INFO    ] Initializing speech engine...
[2026-10-28 00:45:40,864.864 INFO    ] 2026-10-28 00:45:40
[2026-10-28 00:45:41,134.134 INFO    ] 2026-10-28 00:45:41
[2026-10-28 00:45:41,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:45:41,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:45:41,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:45:41,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:45:41,708.708 INFO    ] time= 28/10/2026 00:45:41
[2026-10-28 00:45:41,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:45:41,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:45:41,883.883 INFO    ] No existing commands found in stream
[2026-10-28 00:45:46,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:45:46,938.938 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-28 00:45:48,582.582 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:45:48,585.585 INFO    ] Checking for system updates...
[2026-10-28 00:45:48,624.624 INFO    ] 200
[2026-10-28 00:45:48,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:45:48,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:45:48,688.688 INFO    ] No update needed
[2026-10-28 00:45:48,690.690 INFO    ] Checking for camera pi updates...
[2026-10-28 00:45:48,724.724 INFO    ] 200
[2026-10-28 00:45:48,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:45:48,772.772 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:45:48,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:45:48,854.854 INFO    ] No camera update needed
[2026-10-28 00:45:48,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:45:48,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:45:48,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:45:48,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:45:50,911.911 INFO    ] ================================================
[2026-10-28 00:45:50,926.926 INFO    ] Launching Daemon at Wed Oct 28 00:45:50 IST 2026
[2026-10-28 00:45:50,936.936 INFO    ] ================================================
[2026-10-28 00:45:51,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:45:51
[2026-10-28 00:45:52,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:45:52,417.417 INFO    ] Initializing speech engine...
[2026-10-28 00:45:52,428.428 INFO    ] 2026-10-28 00:45:52
[2026-10-28 00:45:52,736.736 INFO    ] 2026-10-28 00:45:52
[2026-10-28 00:45:52,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:45:53,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:45:53,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:45:53,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:45:53,296.296 INFO    ] time= 28/10/2026 00:45:53
[2026-10-28 00:45:53,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:45:53,385.385 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:45:53,502.502 INFO    ] No existing commands found in stream
[2026-10-28 00:45:58,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:45:58,520.520 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-28 00:46:00,651.651 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:46:00,654.654 INFO    ] Checking for system updates...
[2026-10-28 00:46:00,691.691 INFO    ] 200
[2026-10-28 00:46:00,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:46:00,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:46:00,749.749 INFO    ] No update needed
[2026-10-28 00:46:00,752.752 INFO    ] Checking for camera pi updates...
[2026-10-28 00:46:00,786.786 INFO    ] 200
[2026-10-28 00:46:00,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:46:00,834.834 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:46:00,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:46:00,920.920 INFO    ] No camera update needed
[2026-10-28 00:46:00,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:46:00,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:46:00,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:46:00,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:46:02,976.976 INFO    ] ================================================
[2026-10-28 00:46:02,992.992 INFO    ] Launching Daemon at Wed Oct 28 00:46:02 IST 2026
[2026-10-28 00:46:03,005.005 INFO    ] ================================================
[2026-10-28 00:46:03,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:46:03
[2026-10-28 00:46:04,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:46:04,696.696 INFO    ] Initializing speech engine...
[2026-10-28 00:46:04,709.709 INFO    ] 2026-10-28 00:46:04
[2026-10-28 00:46:04,991.991 INFO    ] 2026-10-28 00:46:04
[2026-10-28 00:46:05,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:46:05,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:46:05,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:46:05,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:46:05,541.541 INFO    ] time= 28/10/2026 00:46:05
[2026-10-28 00:46:05,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:46:05,590.590 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:46:05,707.707 INFO    ] No existing commands found in stream
[2026-10-28 00:46:10,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:46:10,746.746 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-28 00:46:12,514.514 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:46:12,517.517 INFO    ] Checking for system updates...
[2026-10-28 00:46:12,554.554 INFO    ] 200
[2026-10-28 00:46:12,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:46:12,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:46:12,613.613 INFO    ] No update needed
[2026-10-28 00:46:12,616.616 INFO    ] Checking for camera pi updates...
[2026-10-28 00:46:12,655.655 INFO    ] 200
[2026-10-28 00:46:12,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:46:12,706.706 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:46:12,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:46:12,800.800 INFO    ] No camera update needed
[2026-10-28 00:46:12,803.803 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:46:12,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:46:12,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:46:12,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:46:14,857.857 INFO    ] ================================================
[2026-10-28 00:46:14,875.875 INFO    ] Launching Daemon at Wed Oct 28 00:46:14 IST 2026
[2026-10-28 00:46:14,886.886 INFO    ] ================================================
[2026-10-28 00:46:15,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:46:15
[2026-10-28 00:46:16,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:46:16,573.573 INFO    ] Initializing speech engine...
[2026-10-28 00:46:16,585.585 INFO    ] 2026-10-28 00:46:16
[2026-10-28 00:46:16,880.880 INFO    ] 2026-10-28 00:46:16
[2026-10-28 00:46:16,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:46:17,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:46:17,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:46:17,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:46:17,481.481 INFO    ] time= 28/10/2026 00:46:17
[2026-10-28 00:46:17,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:46:17,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:46:17,731.731 INFO    ] No existing commands found in stream
[2026-10-28 00:46:22,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:46:22,770.770 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-28 00:46:26,532.532 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:46:26,535.535 INFO    ] Checking for system updates...
[2026-10-28 00:46:26,573.573 INFO    ] 200
[2026-10-28 00:46:26,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:46:26,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:46:26,639.639 INFO    ] No update needed
[2026-10-28 00:46:26,642.642 INFO    ] Checking for camera pi updates...
[2026-10-28 00:46:26,675.675 INFO    ] 200
[2026-10-28 00:46:26,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:46:26,718.718 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:46:26,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:46:26,801.801 INFO    ] No camera update needed
[2026-10-28 00:46:26,803.803 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:46:26,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:46:26,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:46:26,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:46:28,857.857 INFO    ] ================================================
[2026-10-28 00:46:28,872.872 INFO    ] Launching Daemon at Wed Oct 28 00:46:28 IST 2026
[2026-10-28 00:46:28,884.884 INFO    ] ================================================
[2026-10-28 00:46:29,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:46:29
[2026-10-28 00:46:30,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:46:30,354.354 INFO    ] Initializing speech engine...
[2026-10-28 00:46:30,365.365 INFO    ] 2026-10-28 00:46:30
[2026-10-28 00:46:30,661.661 INFO    ] 2026-10-28 00:46:30
[2026-10-28 00:46:30,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:46:30,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:46:30,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:46:31,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:46:31,216.216 INFO    ] time= 28/10/2026 00:46:31
[2026-10-28 00:46:31,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:46:31,248.248 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:46:31,432.432 INFO    ] No existing commands found in stream
[2026-10-28 00:46:36,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:46:36,461.461 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 00:46:38,192.192 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:46:38,195.195 INFO    ] Checking for system updates...
[2026-10-28 00:46:38,236.236 INFO    ] 200
[2026-10-28 00:46:38,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:46:38,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:46:38,293.293 INFO    ] No update needed
[2026-10-28 00:46:38,296.296 INFO    ] Checking for camera pi updates...
[2026-10-28 00:46:38,334.334 INFO    ] 200
[2026-10-28 00:46:38,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:46:38,378.378 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:46:38,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:46:38,460.460 INFO    ] No camera update needed
[2026-10-28 00:46:38,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:46:38,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:46:38,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:46:38,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:46:40,516.516 INFO    ] ================================================
[2026-10-28 00:46:40,532.532 INFO    ] Launching Daemon at Wed Oct 28 00:46:40 IST 2026
[2026-10-28 00:46:40,543.543 INFO    ] ================================================
[2026-10-28 00:46:41,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:46:41
[2026-10-28 00:46:41,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:46:42,223.223 INFO    ] Initializing speech engine...
[2026-10-28 00:46:42,237.237 INFO    ] 2026-10-28 00:46:42
[2026-10-28 00:46:42,525.525 INFO    ] 2026-10-28 00:46:42
[2026-10-28 00:46:42,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:46:42,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:46:42,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:46:43,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:46:43,073.073 INFO    ] time= 28/10/2026 00:46:43
[2026-10-28 00:46:43,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:46:43,122.122 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:46:43,237.237 INFO    ] No existing commands found in stream
[2026-10-28 00:46:48,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:46:48,271.271 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-28 00:46:50,489.489 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:46:50,492.492 INFO    ] Checking for system updates...
[2026-10-28 00:46:50,530.530 INFO    ] 200
[2026-10-28 00:46:50,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:46:50,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:46:50,591.591 INFO    ] No update needed
[2026-10-28 00:46:50,594.594 INFO    ] Checking for camera pi updates...
[2026-10-28 00:46:50,628.628 INFO    ] 200
[2026-10-28 00:46:50,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:46:50,670.670 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:46:50,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:46:50,764.764 INFO    ] No camera update needed
[2026-10-28 00:46:50,766.766 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:46:50,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:46:50,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:46:50,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:46:52,822.822 INFO    ] ================================================
[2026-10-28 00:46:52,838.838 INFO    ] Launching Daemon at Wed Oct 28 00:46:52 IST 2026
[2026-10-28 00:46:52,848.848 INFO    ] ================================================
[2026-10-28 00:46:53,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:46:53
[2026-10-28 00:46:54,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:46:54,309.309 INFO    ] Initializing speech engine...
[2026-10-28 00:46:54,316.316 INFO    ] 2026-10-28 00:46:54
[2026-10-28 00:46:54,581.581 INFO    ] 2026-10-28 00:46:54
[2026-10-28 00:46:54,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:46:54,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:46:54,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:46:55,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:46:55,095.095 INFO    ] time= 28/10/2026 00:46:55
[2026-10-28 00:46:55,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:46:55,219.219 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:46:55,361.361 INFO    ] No existing commands found in stream
[2026-10-28 00:47:00,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:47:00,380.380 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-28 00:47:02,689.689 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:47:02,692.692 INFO    ] Checking for system updates...
[2026-10-28 00:47:02,739.739 INFO    ] 200
[2026-10-28 00:47:02,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:47:02,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:47:02,806.806 INFO    ] No update needed
[2026-10-28 00:47:02,809.809 INFO    ] Checking for camera pi updates...
[2026-10-28 00:47:02,850.850 INFO    ] 200
[2026-10-28 00:47:02,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:47:02,922.922 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:47:03,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:47:03,064.064 INFO    ] No camera update needed
[2026-10-28 00:47:03,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:47:03,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:47:03,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:47:03,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:47:05,132.132 INFO    ] ================================================
[2026-10-28 00:47:05,147.147 INFO    ] Launching Daemon at Wed Oct 28 00:47:05 IST 2026
[2026-10-28 00:47:05,159.159 INFO    ] ================================================
[2026-10-28 00:47:05,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:47:05
[2026-10-28 00:47:06,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:47:06,617.617 INFO    ] Initializing speech engine...
[2026-10-28 00:47:06,622.622 INFO    ] 2026-10-28 00:47:06
[2026-10-28 00:47:06,885.885 INFO    ] 2026-10-28 00:47:06
[2026-10-28 00:47:06,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:47:07,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:47:07,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:47:07,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:47:07,480.480 INFO    ] time= 28/10/2026 00:47:07
[2026-10-28 00:47:07,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:47:07,553.553 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:47:07,691.691 INFO    ] No existing commands found in stream
[2026-10-28 00:47:12,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:47:12,725.725 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 00:47:13,795.795 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:47:13,798.798 INFO    ] Checking for system updates...
[2026-10-28 00:47:13,839.839 INFO    ] 200
[2026-10-28 00:47:13,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:47:13,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:47:13,904.904 INFO    ] No update needed
[2026-10-28 00:47:13,906.906 INFO    ] Checking for camera pi updates...
[2026-10-28 00:47:13,941.941 INFO    ] 200
[2026-10-28 00:47:13,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:47:13,984.984 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:47:14,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:47:14,171.171 INFO    ] No camera update needed
[2026-10-28 00:47:14,174.174 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:47:14,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:47:14,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:47:14,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:47:16,228.228 INFO    ] ================================================
[2026-10-28 00:47:16,245.245 INFO    ] Launching Daemon at Wed Oct 28 00:47:16 IST 2026
[2026-10-28 00:47:16,256.256 INFO    ] ================================================
[2026-10-28 00:47:16,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:47:16
[2026-10-28 00:47:17,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:47:17,660.660 INFO    ] Initializing speech engine...
[2026-10-28 00:47:17,683.683 INFO    ] 2026-10-28 00:47:17
[2026-10-28 00:47:17,938.938 INFO    ] 2026-10-28 00:47:17
[2026-10-28 00:47:17,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:47:18,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:47:18,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:47:18,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:47:18,506.506 INFO    ] time= 28/10/2026 00:47:18
[2026-10-28 00:47:18,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:47:18,531.531 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:47:18,667.667 INFO    ] No existing commands found in stream
[2026-10-28 00:47:23,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:47:23,688.688 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 00:47:25,009.009 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:47:25,011.011 INFO    ] Checking for system updates...
[2026-10-28 00:47:25,047.047 INFO    ] 200
[2026-10-28 00:47:25,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:47:25,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:47:25,117.117 INFO    ] No update needed
[2026-10-28 00:47:25,119.119 INFO    ] Checking for camera pi updates...
[2026-10-28 00:47:25,152.152 INFO    ] 200
[2026-10-28 00:47:25,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:47:25,196.196 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:47:25,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:47:25,281.281 INFO    ] No camera update needed
[2026-10-28 00:47:25,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:47:25,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:47:25,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:47:25,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:47:27,338.338 INFO    ] ================================================
[2026-10-28 00:47:27,353.353 INFO    ] Launching Daemon at Wed Oct 28 00:47:27 IST 2026
[2026-10-28 00:47:27,365.365 INFO    ] ================================================
[2026-10-28 00:47:28,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:47:28
[2026-10-28 00:47:28,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:47:29,011.011 INFO    ] Initializing speech engine...
[2026-10-28 00:47:29,019.019 INFO    ] 2026-10-28 00:47:29
[2026-10-28 00:47:29,309.309 INFO    ] 2026-10-28 00:47:29
[2026-10-28 00:47:29,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:47:29,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:47:29,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:47:29,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:47:29,849.849 INFO    ] time= 28/10/2026 00:47:29
[2026-10-28 00:47:29,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:47:29,897.897 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:47:30,019.019 INFO    ] No existing commands found in stream
[2026-10-28 00:47:35,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:47:35,058.058 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-28 00:47:37,590.590 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:47:37,593.593 INFO    ] Checking for system updates...
[2026-10-28 00:47:37,634.634 INFO    ] 200
[2026-10-28 00:47:37,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:47:37,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:47:37,692.692 INFO    ] No update needed
[2026-10-28 00:47:37,695.695 INFO    ] Checking for camera pi updates...
[2026-10-28 00:47:37,730.730 INFO    ] 200
[2026-10-28 00:47:37,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:47:37,780.780 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:47:37,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:47:37,877.877 INFO    ] No camera update needed
[2026-10-28 00:47:37,884.884 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:47:37,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:47:37,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:47:37,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:47:39,942.942 INFO    ] ================================================
[2026-10-28 00:47:39,957.957 INFO    ] Launching Daemon at Wed Oct 28 00:47:39 IST 2026
[2026-10-28 00:47:39,968.968 INFO    ] ================================================
[2026-10-28 00:47:40,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:47:40
[2026-10-28 00:47:41,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:47:41,380.380 INFO    ] Initializing speech engine...
[2026-10-28 00:47:41,389.389 INFO    ] 2026-10-28 00:47:41
[2026-10-28 00:47:41,688.688 INFO    ] 2026-10-28 00:47:41
[2026-10-28 00:47:41,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:47:42,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:47:42,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:47:42,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:47:42,328.328 INFO    ] time= 28/10/2026 00:47:42
[2026-10-28 00:47:42,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:47:42,356.356 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:47:42,494.494 INFO    ] No existing commands found in stream
[2026-10-28 00:47:47,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:47:47,517.517 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-28 00:47:49,568.568 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:47:49,570.570 INFO    ] Checking for system updates...
[2026-10-28 00:47:49,610.610 INFO    ] 200
[2026-10-28 00:47:49,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:47:49,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:47:49,675.675 INFO    ] No update needed
[2026-10-28 00:47:49,677.677 INFO    ] Checking for camera pi updates...
[2026-10-28 00:47:49,710.710 INFO    ] 200
[2026-10-28 00:47:49,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:47:49,753.753 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:47:49,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:47:49,827.827 INFO    ] No camera update needed
[2026-10-28 00:47:49,829.829 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:47:49,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:47:49,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:47:49,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:47:51,881.881 INFO    ] ================================================
[2026-10-28 00:47:51,897.897 INFO    ] Launching Daemon at Wed Oct 28 00:47:51 IST 2026
[2026-10-28 00:47:51,908.908 INFO    ] ================================================
[2026-10-28 00:47:52,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:47:52
[2026-10-28 00:47:53,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:47:53,552.552 INFO    ] Initializing speech engine...
[2026-10-28 00:47:53,567.567 INFO    ] 2026-10-28 00:47:53
[2026-10-28 00:47:53,880.880 INFO    ] 2026-10-28 00:47:53
[2026-10-28 00:47:53,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:47:54,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:47:54,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:47:54,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:47:54,406.406 INFO    ] time= 28/10/2026 00:47:54
[2026-10-28 00:47:54,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:47:54,445.445 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:47:54,607.607 INFO    ] No existing commands found in stream
[2026-10-28 00:47:59,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:47:59,647.647 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 00:48:01,451.451 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:48:01,454.454 INFO    ] Checking for system updates...
[2026-10-28 00:48:01,495.495 INFO    ] 200
[2026-10-28 00:48:01,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:48:01,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:48:01,556.556 INFO    ] No update needed
[2026-10-28 00:48:01,558.558 INFO    ] Checking for camera pi updates...
[2026-10-28 00:48:01,594.594 INFO    ] 200
[2026-10-28 00:48:01,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:48:01,644.644 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:48:01,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:48:01,779.779 INFO    ] No camera update needed
[2026-10-28 00:48:01,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:48:01,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:48:01,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:48:01,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:48:03,855.855 INFO    ] ================================================
[2026-10-28 00:48:03,870.870 INFO    ] Launching Daemon at Wed Oct 28 00:48:03 IST 2026
[2026-10-28 00:48:03,880.880 INFO    ] ================================================
[2026-10-28 00:48:04,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:48:04
[2026-10-28 00:48:05,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:48:05,363.363 INFO    ] Initializing speech engine...
[2026-10-28 00:48:05,370.370 INFO    ] 2026-10-28 00:48:05
[2026-10-28 00:48:05,619.619 INFO    ] 2026-10-28 00:48:05
[2026-10-28 00:48:05,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:48:05,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:48:05,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:48:06,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:48:06,179.179 INFO    ] time= 28/10/2026 00:48:06
[2026-10-28 00:48:06,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:48:06,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:48:06,328.328 INFO    ] No existing commands found in stream
[2026-10-28 00:48:11,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:48:11,346.346 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-28 00:48:15,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:48:15,732.732 INFO    ] Checking for system updates...
[2026-10-28 00:48:15,768.768 INFO    ] 200
[2026-10-28 00:48:15,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:48:15,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:48:15,836.836 INFO    ] No update needed
[2026-10-28 00:48:15,839.839 INFO    ] Checking for camera pi updates...
[2026-10-28 00:48:15,876.876 INFO    ] 200
[2026-10-28 00:48:15,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:48:15,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:48:16,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:48:16,010.010 INFO    ] No camera update needed
[2026-10-28 00:48:16,013.013 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:48:16,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:48:16,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:48:16,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:48:18,066.066 INFO    ] ================================================
[2026-10-28 00:48:18,082.082 INFO    ] Launching Daemon at Wed Oct 28 00:48:18 IST 2026
[2026-10-28 00:48:18,092.092 INFO    ] ================================================
[2026-10-28 00:48:18,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:48:18
[2026-10-28 00:48:19,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:48:19,553.553 INFO    ] Initializing speech engine...
[2026-10-28 00:48:19,567.567 INFO    ] 2026-10-28 00:48:19
[2026-10-28 00:48:19,856.856 INFO    ] 2026-10-28 00:48:19
[2026-10-28 00:48:19,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:48:20,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:48:20,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:48:20,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:48:20,360.360 INFO    ] time= 28/10/2026 00:48:20
[2026-10-28 00:48:20,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:48:20,469.469 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:48:20,636.636 INFO    ] No existing commands found in stream
[2026-10-28 00:48:25,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:48:25,656.656 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-28 00:48:29,431.431 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:48:29,433.433 INFO    ] Checking for system updates...
[2026-10-28 00:48:29,468.468 INFO    ] 200
[2026-10-28 00:48:29,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:48:29,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:48:29,526.526 INFO    ] No update needed
[2026-10-28 00:48:29,528.528 INFO    ] Checking for camera pi updates...
[2026-10-28 00:48:29,562.562 INFO    ] 200
[2026-10-28 00:48:29,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:48:29,605.605 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:48:29,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:48:29,707.707 INFO    ] No camera update needed
[2026-10-28 00:48:29,709.709 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:48:29,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:48:29,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:48:29,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:48:31,763.763 INFO    ] ================================================
[2026-10-28 00:48:31,777.777 INFO    ] Launching Daemon at Wed Oct 28 00:48:31 IST 2026
[2026-10-28 00:48:31,788.788 INFO    ] ================================================
[2026-10-28 00:48:32,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:48:32
[2026-10-28 00:48:33,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:48:33,542.542 INFO    ] Initializing speech engine...
[2026-10-28 00:48:33,550.550 INFO    ] 2026-10-28 00:48:33
[2026-10-28 00:48:33,832.832 INFO    ] 2026-10-28 00:48:33
[2026-10-28 00:48:33,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:48:34,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:48:34,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:48:34,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:48:34,391.391 INFO    ] time= 28/10/2026 00:48:34
[2026-10-28 00:48:34,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:48:34,423.423 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:48:34,613.613 INFO    ] No existing commands found in stream
[2026-10-28 00:48:39,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:48:39,648.648 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 00:48:41,431.431 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:48:41,435.435 INFO    ] Checking for system updates...
[2026-10-28 00:48:41,472.472 INFO    ] 200
[2026-10-28 00:48:41,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:48:41,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:48:41,532.532 INFO    ] No update needed
[2026-10-28 00:48:41,535.535 INFO    ] Checking for camera pi updates...
[2026-10-28 00:48:41,574.574 INFO    ] 200
[2026-10-28 00:48:41,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:48:41,625.625 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:48:41,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:48:41,713.713 INFO    ] No camera update needed
[2026-10-28 00:48:41,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:48:41,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:48:41,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:48:41,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:48:43,771.771 INFO    ] ================================================
[2026-10-28 00:48:43,786.786 INFO    ] Launching Daemon at Wed Oct 28 00:48:43 IST 2026
[2026-10-28 00:48:43,797.797 INFO    ] ================================================
[2026-10-28 00:48:44,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:48:44
[2026-10-28 00:48:45,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:48:45,424.424 INFO    ] Initializing speech engine...
[2026-10-28 00:48:45,444.444 INFO    ] 2026-10-28 00:48:45
[2026-10-28 00:48:45,710.710 INFO    ] 2026-10-28 00:48:45
[2026-10-28 00:48:45,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:48:46,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:48:46,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:48:46,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:48:46,287.287 INFO    ] time= 28/10/2026 00:48:46
[2026-10-28 00:48:46,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:48:46,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:48:46,491.491 INFO    ] No existing commands found in stream
[2026-10-28 00:48:51,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:48:51,530.530 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 00:48:55,792.792 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:48:55,796.796 INFO    ] Checking for system updates...
[2026-10-28 00:48:55,837.837 INFO    ] 200
[2026-10-28 00:48:55,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:48:55,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:48:55,904.904 INFO    ] No update needed
[2026-10-28 00:48:55,907.907 INFO    ] Checking for camera pi updates...
[2026-10-28 00:48:55,947.947 INFO    ] 200
[2026-10-28 00:48:55,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:48:56,004.004 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:48:56,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:48:56,091.091 INFO    ] No camera update needed
[2026-10-28 00:48:56,093.093 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:48:56,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:48:56,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:48:56,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:48:58,147.147 INFO    ] ================================================
[2026-10-28 00:48:58,162.162 INFO    ] Launching Daemon at Wed Oct 28 00:48:58 IST 2026
[2026-10-28 00:48:58,173.173 INFO    ] ================================================
[2026-10-28 00:48:58,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:48:58
[2026-10-28 00:48:59,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:48:59,620.620 INFO    ] Initializing speech engine...
[2026-10-28 00:48:59,629.629 INFO    ] 2026-10-28 00:48:59
[2026-10-28 00:48:59,899.899 INFO    ] 2026-10-28 00:48:59
[2026-10-28 00:48:59,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:49:00,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:49:00,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:49:00,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:49:00,401.401 INFO    ] time= 28/10/2026 00:49:00
[2026-10-28 00:49:00,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:49:00,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:49:00,604.604 INFO    ] No existing commands found in stream
[2026-10-28 00:49:05,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:49:05,619.619 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 00:49:07,353.353 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:49:07,356.356 INFO    ] Checking for system updates...
[2026-10-28 00:49:07,391.391 INFO    ] 200
[2026-10-28 00:49:07,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:49:07,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:49:07,448.448 INFO    ] No update needed
[2026-10-28 00:49:07,451.451 INFO    ] Checking for camera pi updates...
[2026-10-28 00:49:07,484.484 INFO    ] 200
[2026-10-28 00:49:07,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:49:07,531.531 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:49:07,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:49:07,608.608 INFO    ] No camera update needed
[2026-10-28 00:49:07,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:49:07,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:49:07,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:49:07,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:49:09,664.664 INFO    ] ================================================
[2026-10-28 00:49:09,678.678 INFO    ] Launching Daemon at Wed Oct 28 00:49:09 IST 2026
[2026-10-28 00:49:09,689.689 INFO    ] ================================================
[2026-10-28 00:49:10,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:49:10
[2026-10-28 00:49:10,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:49:11,116.116 INFO    ] Initializing speech engine...
[2026-10-28 00:49:11,127.127 INFO    ] 2026-10-28 00:49:11
[2026-10-28 00:49:11,389.389 INFO    ] 2026-10-28 00:49:11
[2026-10-28 00:49:11,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:49:11,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:49:11,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:49:11,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:49:11,978.978 INFO    ] time= 28/10/2026 00:49:11
[2026-10-28 00:49:11,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:49:12,000.000 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:49:12,145.145 INFO    ] No existing commands found in stream
[2026-10-28 00:49:17,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:49:17,179.179 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-28 00:49:21,224.224 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:49:21,227.227 INFO    ] Checking for system updates...
[2026-10-28 00:49:21,264.264 INFO    ] 200
[2026-10-28 00:49:21,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:49:21,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:49:21,326.326 INFO    ] No update needed
[2026-10-28 00:49:21,328.328 INFO    ] Checking for camera pi updates...
[2026-10-28 00:49:21,362.362 INFO    ] 200
[2026-10-28 00:49:21,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:49:21,406.406 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:49:21,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:49:21,590.590 INFO    ] No camera update needed
[2026-10-28 00:49:21,593.593 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:49:21,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:49:21,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:49:21,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:49:23,647.647 INFO    ] ================================================
[2026-10-28 00:49:23,662.662 INFO    ] Launching Daemon at Wed Oct 28 00:49:23 IST 2026
[2026-10-28 00:49:23,672.672 INFO    ] ================================================
[2026-10-28 00:49:24,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:49:24
[2026-10-28 00:49:24,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:49:25,092.092 INFO    ] Initializing speech engine...
[2026-10-28 00:49:25,098.098 INFO    ] 2026-10-28 00:49:25
[2026-10-28 00:49:25,347.347 INFO    ] 2026-10-28 00:49:25
[2026-10-28 00:49:25,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:49:25,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:49:25,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:49:25,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:49:25,926.926 INFO    ] time= 28/10/2026 00:49:25
[2026-10-28 00:49:25,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:49:25,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:49:26,086.086 INFO    ] No existing commands found in stream
[2026-10-28 00:49:31,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:49:31,114.114 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-28 00:49:34,434.434 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:49:34,436.436 INFO    ] Checking for system updates...
[2026-10-28 00:49:34,472.472 INFO    ] 200
[2026-10-28 00:49:34,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:49:34,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:49:34,529.529 INFO    ] No update needed
[2026-10-28 00:49:34,531.531 INFO    ] Checking for camera pi updates...
[2026-10-28 00:49:34,565.565 INFO    ] 200
[2026-10-28 00:49:34,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:49:34,610.610 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:49:34,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:49:34,696.696 INFO    ] No camera update needed
[2026-10-28 00:49:34,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:49:34,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:49:34,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:49:34,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:49:36,751.751 INFO    ] ================================================
[2026-10-28 00:49:36,766.766 INFO    ] Launching Daemon at Wed Oct 28 00:49:36 IST 2026
[2026-10-28 00:49:36,776.776 INFO    ] ================================================
[2026-10-28 00:49:37,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:49:37
[2026-10-28 00:49:38,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:49:38,383.383 INFO    ] Initializing speech engine...
[2026-10-28 00:49:38,397.397 INFO    ] 2026-10-28 00:49:38
[2026-10-28 00:49:38,675.675 INFO    ] 2026-10-28 00:49:38
[2026-10-28 00:49:38,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:49:38,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:49:39,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:49:39,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:49:39,233.233 INFO    ] time= 28/10/2026 00:49:39
[2026-10-28 00:49:39,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:49:39,272.272 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:49:39,395.395 INFO    ] No existing commands found in stream
[2026-10-28 00:49:44,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:49:44,429.429 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 00:49:48,690.690 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:49:48,693.693 INFO    ] Checking for system updates...
[2026-10-28 00:49:48,729.729 INFO    ] 200
[2026-10-28 00:49:48,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:49:48,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:49:48,787.787 INFO    ] No update needed
[2026-10-28 00:49:48,790.790 INFO    ] Checking for camera pi updates...
[2026-10-28 00:49:48,824.824 INFO    ] 200
[2026-10-28 00:49:48,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:49:48,866.866 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:49:48,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:49:48,953.953 INFO    ] No camera update needed
[2026-10-28 00:49:48,955.955 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:49:48,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:49:48,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:49:48,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:49:51,012.012 INFO    ] ================================================
[2026-10-28 00:49:51,027.027 INFO    ] Launching Daemon at Wed Oct 28 00:49:51 IST 2026
[2026-10-28 00:49:51,039.039 INFO    ] ================================================
[2026-10-28 00:49:51,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:49:51
[2026-10-28 00:49:52,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:49:52,666.666 INFO    ] Initializing speech engine...
[2026-10-28 00:49:52,674.674 INFO    ] 2026-10-28 00:49:52
[2026-10-28 00:49:52,950.950 INFO    ] 2026-10-28 00:49:52
[2026-10-28 00:49:52,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:49:53,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:49:53,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:49:53,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:49:53,547.547 INFO    ] time= 28/10/2026 00:49:53
[2026-10-28 00:49:53,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:49:53,573.573 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:49:53,705.705 INFO    ] No existing commands found in stream
[2026-10-28 00:49:58,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:49:58,731.731 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-28 00:50:02,010.010 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:50:02,013.013 INFO    ] Checking for system updates...
[2026-10-28 00:50:02,062.062 INFO    ] 200
[2026-10-28 00:50:02,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:50:02,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:50:02,147.147 INFO    ] No update needed
[2026-10-28 00:50:02,151.151 INFO    ] Checking for camera pi updates...
[2026-10-28 00:50:02,204.204 INFO    ] 200
[2026-10-28 00:50:02,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:50:02,265.265 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:50:02,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:50:02,451.451 INFO    ] No camera update needed
[2026-10-28 00:50:02,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:50:02,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:50:02,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:50:02,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:50:04,514.514 INFO    ] ================================================
[2026-10-28 00:50:04,585.585 INFO    ] Launching Daemon at Wed Oct 28 00:50:04 IST 2026
[2026-10-28 00:50:04,596.596 INFO    ] ================================================
[2026-10-28 00:50:05,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:50:05
[2026-10-28 00:50:05,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:50:06,134.134 INFO    ] Initializing speech engine...
[2026-10-28 00:50:06,142.142 INFO    ] 2026-10-28 00:50:06
[2026-10-28 00:50:06,414.414 INFO    ] 2026-10-28 00:50:06
[2026-10-28 00:50:06,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:50:06,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:50:06,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:50:06,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:50:06,993.993 INFO    ] time= 28/10/2026 00:50:06
[2026-10-28 00:50:07,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:50:07,056.056 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:50:07,196.196 INFO    ] No existing commands found in stream
[2026-10-28 00:50:12,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:50:12,224.224 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-28 00:50:15,168.168 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:50:15,170.170 INFO    ] Checking for system updates...
[2026-10-28 00:50:15,209.209 INFO    ] 200
[2026-10-28 00:50:15,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:50:15,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:50:15,268.268 INFO    ] No update needed
[2026-10-28 00:50:15,271.271 INFO    ] Checking for camera pi updates...
[2026-10-28 00:50:15,308.308 INFO    ] 200
[2026-10-28 00:50:15,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:50:15,351.351 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:50:15,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:50:15,438.438 INFO    ] No camera update needed
[2026-10-28 00:50:15,441.441 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:50:15,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:50:15,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:50:15,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:50:17,492.492 INFO    ] ================================================
[2026-10-28 00:50:17,564.564 INFO    ] Launching Daemon at Wed Oct 28 00:50:17 IST 2026
[2026-10-28 00:50:17,575.575 INFO    ] ================================================
[2026-10-28 00:50:18,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:50:18
[2026-10-28 00:50:18,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:50:19,037.037 INFO    ] Initializing speech engine...
[2026-10-28 00:50:19,046.046 INFO    ] 2026-10-28 00:50:19
[2026-10-28 00:50:19,303.303 INFO    ] 2026-10-28 00:50:19
[2026-10-28 00:50:19,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:50:19,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:50:19,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:50:19,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:50:19,866.866 INFO    ] time= 28/10/2026 00:50:19
[2026-10-28 00:50:19,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:50:19,903.903 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:50:20,025.025 INFO    ] No existing commands found in stream
[2026-10-28 00:50:25,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:50:25,054.054 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-28 00:50:27,689.689 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:50:27,692.692 INFO    ] Checking for system updates...
[2026-10-28 00:50:27,732.732 INFO    ] 200
[2026-10-28 00:50:27,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:50:27,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:50:27,793.793 INFO    ] No update needed
[2026-10-28 00:50:27,796.796 INFO    ] Checking for camera pi updates...
[2026-10-28 00:50:27,830.830 INFO    ] 200
[2026-10-28 00:50:27,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:50:27,878.878 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:50:27,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:50:27,954.954 INFO    ] No camera update needed
[2026-10-28 00:50:27,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:50:27,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:50:27,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:50:27,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:50:30,012.012 INFO    ] ================================================
[2026-10-28 00:50:30,028.028 INFO    ] Launching Daemon at Wed Oct 28 00:50:30 IST 2026
[2026-10-28 00:50:30,039.039 INFO    ] ================================================
[2026-10-28 00:50:30,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:50:30
[2026-10-28 00:50:31,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:50:31,470.470 INFO    ] Initializing speech engine...
[2026-10-28 00:50:31,492.492 INFO    ] 2026-10-28 00:50:31
[2026-10-28 00:50:31,765.765 INFO    ] 2026-10-28 00:50:31
[2026-10-28 00:50:31,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:50:32,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:50:32,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:50:32,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:50:32,382.382 INFO    ] time= 28/10/2026 00:50:32
[2026-10-28 00:50:32,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:50:32,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:50:32,554.554 INFO    ] No existing commands found in stream
[2026-10-28 00:50:37,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:50:37,571.571 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-28 00:50:40,829.829 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:50:40,832.832 INFO    ] Checking for system updates...
[2026-10-28 00:50:40,870.870 INFO    ] 200
[2026-10-28 00:50:40,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:50:40,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:50:40,929.929 INFO    ] No update needed
[2026-10-28 00:50:40,931.931 INFO    ] Checking for camera pi updates...
[2026-10-28 00:50:40,965.965 INFO    ] 200
[2026-10-28 00:50:40,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:50:41,011.011 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:50:41,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:50:41,100.100 INFO    ] No camera update needed
[2026-10-28 00:50:41,103.103 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:50:41,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:50:41,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:50:41,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:50:43,158.158 INFO    ] ================================================
[2026-10-28 00:50:43,178.178 INFO    ] Launching Daemon at Wed Oct 28 00:50:43 IST 2026
[2026-10-28 00:50:43,189.189 INFO    ] ================================================
[2026-10-28 00:50:43,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:50:43
[2026-10-28 00:50:44,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:50:44,794.794 INFO    ] Initializing speech engine...
[2026-10-28 00:50:44,808.808 INFO    ] 2026-10-28 00:50:44
[2026-10-28 00:50:45,115.115 INFO    ] 2026-10-28 00:50:45
[2026-10-28 00:50:45,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:50:45,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:50:45,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:50:45,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:50:45,633.633 INFO    ] time= 28/10/2026 00:50:45
[2026-10-28 00:50:45,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:50:45,671.671 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:50:45,782.782 INFO    ] No existing commands found in stream
[2026-10-28 00:50:50,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:50:50,810.810 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-28 00:50:55,336.336 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:50:55,339.339 INFO    ] Checking for system updates...
[2026-10-28 00:50:55,376.376 INFO    ] 200
[2026-10-28 00:50:55,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:50:55,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:50:55,441.441 INFO    ] No update needed
[2026-10-28 00:50:55,444.444 INFO    ] Checking for camera pi updates...
[2026-10-28 00:50:55,482.482 INFO    ] 200
[2026-10-28 00:50:55,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:50:55,535.535 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:50:55,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:50:55,620.620 INFO    ] No camera update needed
[2026-10-28 00:50:55,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:50:55,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:50:55,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:50:55,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:50:57,678.678 INFO    ] ================================================
[2026-10-28 00:50:57,694.694 INFO    ] Launching Daemon at Wed Oct 28 00:50:57 IST 2026
[2026-10-28 00:50:57,704.704 INFO    ] ================================================
[2026-10-28 00:50:58,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:50:58
[2026-10-28 00:50:58,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:50:59,203.203 INFO    ] Initializing speech engine...
[2026-10-28 00:50:59,212.212 INFO    ] 2026-10-28 00:50:59
[2026-10-28 00:50:59,458.458 INFO    ] 2026-10-28 00:50:59
[2026-10-28 00:50:59,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:50:59,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:50:59,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:51:00,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:51:00,016.016 INFO    ] time= 28/10/2026 00:51:00
[2026-10-28 00:51:00,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:51:00,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:51:00,182.182 INFO    ] No existing commands found in stream
[2026-10-28 00:51:05,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:51:05,215.215 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-28 00:51:06,377.377 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:51:06,380.380 INFO    ] Checking for system updates...
[2026-10-28 00:51:06,417.417 INFO    ] 200
[2026-10-28 00:51:06,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:51:06,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:51:06,474.474 INFO    ] No update needed
[2026-10-28 00:51:06,476.476 INFO    ] Checking for camera pi updates...
[2026-10-28 00:51:06,511.511 INFO    ] 200
[2026-10-28 00:51:06,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:51:06,554.554 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:51:06,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:51:06,635.635 INFO    ] No camera update needed
[2026-10-28 00:51:06,638.638 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:51:06,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:51:06,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:51:06,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:51:08,694.694 INFO    ] ================================================
[2026-10-28 00:51:08,709.709 INFO    ] Launching Daemon at Wed Oct 28 00:51:08 IST 2026
[2026-10-28 00:51:08,720.720 INFO    ] ================================================
[2026-10-28 00:51:09,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:51:09
[2026-10-28 00:51:09,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:51:10,183.183 INFO    ] Initializing speech engine...
[2026-10-28 00:51:10,194.194 INFO    ] 2026-10-28 00:51:10
[2026-10-28 00:51:10,455.455 INFO    ] 2026-10-28 00:51:10
[2026-10-28 00:51:10,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:51:10,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:51:10,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:51:10,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:51:11,014.014 INFO    ] time= 28/10/2026 00:51:10
[2026-10-28 00:51:11,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:51:11,049.049 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:51:11,160.160 INFO    ] No existing commands found in stream
[2026-10-28 00:51:16,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:51:16,187.187 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-28 00:51:17,553.553 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:51:17,555.555 INFO    ] Checking for system updates...
[2026-10-28 00:51:17,593.593 INFO    ] 200
[2026-10-28 00:51:17,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:51:17,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:51:17,652.652 INFO    ] No update needed
[2026-10-28 00:51:17,654.654 INFO    ] Checking for camera pi updates...
[2026-10-28 00:51:17,692.692 INFO    ] 200
[2026-10-28 00:51:17,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:51:17,735.735 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:51:17,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:51:17,817.817 INFO    ] No camera update needed
[2026-10-28 00:51:17,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:51:17,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:51:17,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:51:17,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:51:19,873.873 INFO    ] ================================================
[2026-10-28 00:51:19,888.888 INFO    ] Launching Daemon at Wed Oct 28 00:51:19 IST 2026
[2026-10-28 00:51:19,899.899 INFO    ] ================================================
[2026-10-28 00:51:20,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:51:20
[2026-10-28 00:51:21,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:51:21,355.355 INFO    ] Initializing speech engine...
[2026-10-28 00:51:21,366.366 INFO    ] 2026-10-28 00:51:21
[2026-10-28 00:51:21,627.627 INFO    ] 2026-10-28 00:51:21
[2026-10-28 00:51:21,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:51:21,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:51:21,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:51:22,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:51:22,187.187 INFO    ] time= 28/10/2026 00:51:22
[2026-10-28 00:51:22,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:51:22,221.221 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:51:22,354.354 INFO    ] No existing commands found in stream
[2026-10-28 00:51:27,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:51:27,387.387 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-28 00:51:30,448.448 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:51:30,451.451 INFO    ] Checking for system updates...
[2026-10-28 00:51:30,488.488 INFO    ] 200
[2026-10-28 00:51:30,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:51:30,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:51:30,547.547 INFO    ] No update needed
[2026-10-28 00:51:30,550.550 INFO    ] Checking for camera pi updates...
[2026-10-28 00:51:30,583.583 INFO    ] 200
[2026-10-28 00:51:30,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:51:30,628.628 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:51:30,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:51:30,822.822 INFO    ] No camera update needed
[2026-10-28 00:51:30,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:51:30,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:51:30,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:51:30,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:51:32,878.878 INFO    ] ================================================
[2026-10-28 00:51:32,893.893 INFO    ] Launching Daemon at Wed Oct 28 00:51:32 IST 2026
[2026-10-28 00:51:32,904.904 INFO    ] ================================================
[2026-10-28 00:51:33,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:51:33
[2026-10-28 00:51:34,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:51:34,564.564 INFO    ] Initializing speech engine...
[2026-10-28 00:51:34,577.577 INFO    ] 2026-10-28 00:51:34
[2026-10-28 00:51:34,848.848 INFO    ] 2026-10-28 00:51:34
[2026-10-28 00:51:34,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:51:35,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:51:35,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:51:35,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:51:35,407.407 INFO    ] time= 28/10/2026 00:51:35
[2026-10-28 00:51:35,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:51:35,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:51:35,576.576 INFO    ] No existing commands found in stream
[2026-10-28 00:51:40,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:51:40,610.610 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-28 00:51:42,970.970 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:51:42,973.973 INFO    ] Checking for system updates...
[2026-10-28 00:51:43,011.011 INFO    ] 200
[2026-10-28 00:51:43,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:51:43,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:51:43,076.076 INFO    ] No update needed
[2026-10-28 00:51:43,078.078 INFO    ] Checking for camera pi updates...
[2026-10-28 00:51:43,116.116 INFO    ] 200
[2026-10-28 00:51:43,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:51:43,164.164 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:51:43,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:51:43,242.242 INFO    ] No camera update needed
[2026-10-28 00:51:43,245.245 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:51:43,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:51:43,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:51:43,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:51:45,299.299 INFO    ] ================================================
[2026-10-28 00:51:45,314.314 INFO    ] Launching Daemon at Wed Oct 28 00:51:45 IST 2026
[2026-10-28 00:51:45,324.324 INFO    ] ================================================
[2026-10-28 00:51:45,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:51:45
[2026-10-28 00:51:46,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:51:46,911.911 INFO    ] Initializing speech engine...
[2026-10-28 00:51:46,918.918 INFO    ] 2026-10-28 00:51:46
[2026-10-28 00:51:47,176.176 INFO    ] 2026-10-28 00:51:47
[2026-10-28 00:51:47,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:51:47,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:51:47,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:51:47,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:51:47,740.740 INFO    ] time= 28/10/2026 00:51:47
[2026-10-28 00:51:47,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:51:47,775.775 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:51:47,892.892 INFO    ] No existing commands found in stream
[2026-10-28 00:51:52,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:51:52,909.909 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-28 00:51:56,905.905 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:51:56,908.908 INFO    ] Checking for system updates...
[2026-10-28 00:51:56,944.944 INFO    ] 200
[2026-10-28 00:51:56,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:51:56,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:51:57,001.001 INFO    ] No update needed
[2026-10-28 00:51:57,003.003 INFO    ] Checking for camera pi updates...
[2026-10-28 00:51:57,036.036 INFO    ] 200
[2026-10-28 00:51:57,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:51:57,084.084 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:51:57,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:51:57,170.170 INFO    ] No camera update needed
[2026-10-28 00:51:57,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:51:57,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:51:57,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:51:57,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:51:59,228.228 INFO    ] ================================================
[2026-10-28 00:51:59,243.243 INFO    ] Launching Daemon at Wed Oct 28 00:51:59 IST 2026
[2026-10-28 00:51:59,254.254 INFO    ] ================================================
[2026-10-28 00:51:59,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:51:59
[2026-10-28 00:52:00,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:52:00,733.733 INFO    ] Initializing speech engine...
[2026-10-28 00:52:00,751.751 INFO    ] 2026-10-28 00:52:00
[2026-10-28 00:52:01,004.004 INFO    ] 2026-10-28 00:52:00
[2026-10-28 00:52:01,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:52:01,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:52:01,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:52:01,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:52:01,575.575 INFO    ] time= 28/10/2026 00:52:01
[2026-10-28 00:52:01,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:52:01,605.605 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:52:01,732.732 INFO    ] No existing commands found in stream
[2026-10-28 00:52:06,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:52:06,749.749 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-28 00:52:11,112.112 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:52:11,114.114 INFO    ] Checking for system updates...
[2026-10-28 00:52:11,150.150 INFO    ] 200
[2026-10-28 00:52:11,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:52:11,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:52:11,210.210 INFO    ] No update needed
[2026-10-28 00:52:11,213.213 INFO    ] Checking for camera pi updates...
[2026-10-28 00:52:11,247.247 INFO    ] 200
[2026-10-28 00:52:11,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:52:11,291.291 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:52:11,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:52:11,375.375 INFO    ] No camera update needed
[2026-10-28 00:52:11,377.377 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:52:11,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:52:11,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:52:11,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:52:13,434.434 INFO    ] ================================================
[2026-10-28 00:52:13,449.449 INFO    ] Launching Daemon at Wed Oct 28 00:52:13 IST 2026
[2026-10-28 00:52:13,459.459 INFO    ] ================================================
[2026-10-28 00:52:14,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:52:14
[2026-10-28 00:52:14,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:52:14,915.915 INFO    ] Initializing speech engine...
[2026-10-28 00:52:14,924.924 INFO    ] 2026-10-28 00:52:14
[2026-10-28 00:52:15,173.173 INFO    ] 2026-10-28 00:52:15
[2026-10-28 00:52:15,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:52:15,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:52:15,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:52:15,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:52:15,733.733 INFO    ] time= 28/10/2026 00:52:15
[2026-10-28 00:52:15,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:52:15,780.780 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:52:15,887.887 INFO    ] No existing commands found in stream
[2026-10-28 00:52:20,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:52:20,910.910 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-28 00:52:24,428.428 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:52:24,430.430 INFO    ] Checking for system updates...
[2026-10-28 00:52:24,469.469 INFO    ] 200
[2026-10-28 00:52:24,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:52:24,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:52:24,534.534 INFO    ] No update needed
[2026-10-28 00:52:24,537.537 INFO    ] Checking for camera pi updates...
[2026-10-28 00:52:24,571.571 INFO    ] 200
[2026-10-28 00:52:24,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:52:24,615.615 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:52:24,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:52:24,703.703 INFO    ] No camera update needed
[2026-10-28 00:52:24,706.706 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:52:24,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:52:24,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:52:24,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:52:26,761.761 INFO    ] ================================================
[2026-10-28 00:52:26,775.775 INFO    ] Launching Daemon at Wed Oct 28 00:52:26 IST 2026
[2026-10-28 00:52:26,786.786 INFO    ] ================================================
[2026-10-28 00:52:27,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:52:27
[2026-10-28 00:52:27,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:52:28,200.200 INFO    ] Initializing speech engine...
[2026-10-28 00:52:28,224.224 INFO    ] 2026-10-28 00:52:28
[2026-10-28 00:52:28,488.488 INFO    ] 2026-10-28 00:52:28
[2026-10-28 00:52:28,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:52:28,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:52:28,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:52:29,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:52:29,098.098 INFO    ] time= 28/10/2026 00:52:29
[2026-10-28 00:52:29,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:52:29,121.121 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:52:29,266.266 INFO    ] No existing commands found in stream
[2026-10-28 00:52:34,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:52:34,281.281 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-28 00:52:36,822.822 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:52:36,825.825 INFO    ] Checking for system updates...
[2026-10-28 00:52:36,862.862 INFO    ] 200
[2026-10-28 00:52:36,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:52:36,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:52:36,918.918 INFO    ] No update needed
[2026-10-28 00:52:36,921.921 INFO    ] Checking for camera pi updates...
[2026-10-28 00:52:36,953.953 INFO    ] 200
[2026-10-28 00:52:36,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:52:37,005.005 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:52:37,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:52:37,081.081 INFO    ] No camera update needed
[2026-10-28 00:52:37,083.083 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:52:37,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:52:37,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:52:37,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:52:39,137.137 INFO    ] ================================================
[2026-10-28 00:52:39,151.151 INFO    ] Launching Daemon at Wed Oct 28 00:52:39 IST 2026
[2026-10-28 00:52:39,162.162 INFO    ] ================================================
[2026-10-28 00:52:39,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:52:39
[2026-10-28 00:52:40,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:52:40,694.694 INFO    ] Initializing speech engine...
[2026-10-28 00:52:40,702.702 INFO    ] 2026-10-28 00:52:40
[2026-10-28 00:52:40,968.968 INFO    ] 2026-10-28 00:52:40
[2026-10-28 00:52:41,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:52:41,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:52:41,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:52:41,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:52:41,518.518 INFO    ] time= 28/10/2026 00:52:41
[2026-10-28 00:52:41,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:52:41,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:52:41,676.676 INFO    ] No existing commands found in stream
[2026-10-28 00:52:46,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:52:46,706.706 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-28 00:52:50,114.114 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:52:50,117.117 INFO    ] Checking for system updates...
[2026-10-28 00:52:50,154.154 INFO    ] 200
[2026-10-28 00:52:50,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:52:50,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:52:50,218.218 INFO    ] No update needed
[2026-10-28 00:52:50,220.220 INFO    ] Checking for camera pi updates...
[2026-10-28 00:52:50,255.255 INFO    ] 200
[2026-10-28 00:52:50,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:52:50,299.299 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:52:50,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:52:50,386.386 INFO    ] No camera update needed
[2026-10-28 00:52:50,388.388 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:52:50,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:52:50,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:52:50,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:52:52,443.443 INFO    ] ================================================
[2026-10-28 00:52:52,458.458 INFO    ] Launching Daemon at Wed Oct 28 00:52:52 IST 2026
[2026-10-28 00:52:52,468.468 INFO    ] ================================================
[2026-10-28 00:52:53,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:52:53
[2026-10-28 00:52:53,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:52:54,043.043 INFO    ] Initializing speech engine...
[2026-10-28 00:52:54,055.055 INFO    ] 2026-10-28 00:52:54
[2026-10-28 00:52:54,358.358 INFO    ] 2026-10-28 00:52:54
[2026-10-28 00:52:54,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:52:54,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:52:54,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:52:54,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:52:55,042.042 INFO    ] time= 28/10/2026 00:52:55
[2026-10-28 00:52:55,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:52:55,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:52:55,301.301 INFO    ] No existing commands found in stream
[2026-10-28 00:53:00,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:53:00,320.320 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 00:53:02,768.768 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:53:02,772.772 INFO    ] Checking for system updates...
[2026-10-28 00:53:02,820.820 INFO    ] 200
[2026-10-28 00:53:02,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:53:02,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:53:02,891.891 INFO    ] No update needed
[2026-10-28 00:53:02,895.895 INFO    ] Checking for camera pi updates...
[2026-10-28 00:53:02,934.934 INFO    ] 200
[2026-10-28 00:53:02,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:53:02,977.977 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:53:03,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:53:03,071.071 INFO    ] No camera update needed
[2026-10-28 00:53:03,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:53:03,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:53:03,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:53:03,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:53:05,128.128 INFO    ] ================================================
[2026-10-28 00:53:05,144.144 INFO    ] Launching Daemon at Wed Oct 28 00:53:05 IST 2026
[2026-10-28 00:53:05,154.154 INFO    ] ================================================
[2026-10-28 00:53:05,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:53:05
[2026-10-28 00:53:06,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:53:06,583.583 INFO    ] Initializing speech engine...
[2026-10-28 00:53:06,602.602 INFO    ] 2026-10-28 00:53:06
[2026-10-28 00:53:06,864.864 INFO    ] 2026-10-28 00:53:06
[2026-10-28 00:53:06,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:53:07,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:53:07,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:53:07,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:53:07,386.386 INFO    ] time= 28/10/2026 00:53:07
[2026-10-28 00:53:07,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:53:07,485.485 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:53:07,636.636 INFO    ] No existing commands found in stream
[2026-10-28 00:53:12,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:53:12,663.663 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-28 00:53:13,806.806 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:53:13,809.809 INFO    ] Checking for system updates...
[2026-10-28 00:53:13,857.857 INFO    ] 200
[2026-10-28 00:53:13,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:53:13,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:53:13,915.915 INFO    ] No update needed
[2026-10-28 00:53:13,917.917 INFO    ] Checking for camera pi updates...
[2026-10-28 00:53:13,950.950 INFO    ] 200
[2026-10-28 00:53:13,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:53:13,994.994 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:53:14,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:53:14,070.070 INFO    ] No camera update needed
[2026-10-28 00:53:14,072.072 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:53:14,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:53:14,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:53:14,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:53:16,124.124 INFO    ] ================================================
[2026-10-28 00:53:16,139.139 INFO    ] Launching Daemon at Wed Oct 28 00:53:16 IST 2026
[2026-10-28 00:53:16,149.149 INFO    ] ================================================
[2026-10-28 00:53:16,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:53:16
[2026-10-28 00:53:17,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:53:17,612.612 INFO    ] Initializing speech engine...
[2026-10-28 00:53:17,618.618 INFO    ] 2026-10-28 00:53:17
[2026-10-28 00:53:17,876.876 INFO    ] 2026-10-28 00:53:17
[2026-10-28 00:53:17,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:53:18,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:53:18,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:53:18,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:53:18,484.484 INFO    ] time= 28/10/2026 00:53:18
[2026-10-28 00:53:18,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:53:18,510.510 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:53:18,637.637 INFO    ] No existing commands found in stream
[2026-10-28 00:53:23,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:53:23,666.666 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-28 00:53:27,072.072 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:53:27,074.074 INFO    ] Checking for system updates...
[2026-10-28 00:53:27,110.110 INFO    ] 200
[2026-10-28 00:53:27,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:53:27,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:53:27,168.168 INFO    ] No update needed
[2026-10-28 00:53:27,171.171 INFO    ] Checking for camera pi updates...
[2026-10-28 00:53:27,205.205 INFO    ] 200
[2026-10-28 00:53:27,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:53:27,247.247 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:53:27,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:53:27,330.330 INFO    ] No camera update needed
[2026-10-28 00:53:27,333.333 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:53:27,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:53:27,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:53:27,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:53:29,386.386 INFO    ] ================================================
[2026-10-28 00:53:29,401.401 INFO    ] Launching Daemon at Wed Oct 28 00:53:29 IST 2026
[2026-10-28 00:53:29,412.412 INFO    ] ================================================
[2026-10-28 00:53:29,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:53:29
[2026-10-28 00:53:30,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:53:30,837.837 INFO    ] Initializing speech engine...
[2026-10-28 00:53:30,846.846 INFO    ] 2026-10-28 00:53:30
[2026-10-28 00:53:31,091.091 INFO    ] 2026-10-28 00:53:31
[2026-10-28 00:53:31,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:53:31,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:53:31,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:53:31,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:53:31,616.616 INFO    ] time= 28/10/2026 00:53:31
[2026-10-28 00:53:31,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:53:31,685.685 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:53:31,819.819 INFO    ] No existing commands found in stream
[2026-10-28 00:53:36,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:53:36,849.849 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-28 00:53:39,407.407 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:53:39,409.409 INFO    ] Checking for system updates...
[2026-10-28 00:53:39,444.444 INFO    ] 200
[2026-10-28 00:53:39,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:53:39,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:53:39,506.506 INFO    ] No update needed
[2026-10-28 00:53:39,508.508 INFO    ] Checking for camera pi updates...
[2026-10-28 00:53:39,546.546 INFO    ] 200
[2026-10-28 00:53:39,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:53:39,588.588 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:53:39,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:53:39,679.679 INFO    ] No camera update needed
[2026-10-28 00:53:39,681.681 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:53:39,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:53:39,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:53:39,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:53:41,735.735 INFO    ] ================================================
[2026-10-28 00:53:41,749.749 INFO    ] Launching Daemon at Wed Oct 28 00:53:41 IST 2026
[2026-10-28 00:53:41,760.760 INFO    ] ================================================
[2026-10-28 00:53:42,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:53:42
[2026-10-28 00:53:42,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:53:43,179.179 INFO    ] Initializing speech engine...
[2026-10-28 00:53:43,185.185 INFO    ] 2026-10-28 00:53:43
[2026-10-28 00:53:43,474.474 INFO    ] 2026-10-28 00:53:43
[2026-10-28 00:53:43,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:53:43,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:53:43,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:53:44,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:53:44,041.041 INFO    ] time= 28/10/2026 00:53:44
[2026-10-28 00:53:44,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:53:44,088.088 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:53:44,220.220 INFO    ] No existing commands found in stream
[2026-10-28 00:53:49,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:53:49,249.249 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-28 00:53:53,501.501 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:53:53,504.504 INFO    ] Checking for system updates...
[2026-10-28 00:53:53,539.539 INFO    ] 200
[2026-10-28 00:53:53,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:53:53,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:53:53,597.597 INFO    ] No update needed
[2026-10-28 00:53:53,600.600 INFO    ] Checking for camera pi updates...
[2026-10-28 00:53:53,634.634 INFO    ] 200
[2026-10-28 00:53:53,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:53:53,682.682 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:53:53,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:53:53,774.774 INFO    ] No camera update needed
[2026-10-28 00:53:53,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:53:53,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:53:53,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:53:53,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:53:55,831.831 INFO    ] ================================================
[2026-10-28 00:53:55,846.846 INFO    ] Launching Daemon at Wed Oct 28 00:53:55 IST 2026
[2026-10-28 00:53:55,856.856 INFO    ] ================================================
[2026-10-28 00:53:56,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:53:56
[2026-10-28 00:53:57,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:53:57,255.255 INFO    ] Initializing speech engine...
[2026-10-28 00:53:57,278.278 INFO    ] 2026-10-28 00:53:57
[2026-10-28 00:53:57,529.529 INFO    ] 2026-10-28 00:53:57
[2026-10-28 00:53:57,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:53:57,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:53:57,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:53:58,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:53:58,083.083 INFO    ] time= 28/10/2026 00:53:58
[2026-10-28 00:53:58,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:53:58,106.106 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:53:58,241.241 INFO    ] No existing commands found in stream
[2026-10-28 00:54:03,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:54:03,268.268 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-28 00:54:04,874.874 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:54:04,876.876 INFO    ] Checking for system updates...
[2026-10-28 00:54:04,912.912 INFO    ] 200
[2026-10-28 00:54:04,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:54:04,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:54:04,968.968 INFO    ] No update needed
[2026-10-28 00:54:04,970.970 INFO    ] Checking for camera pi updates...
[2026-10-28 00:54:05,003.003 INFO    ] 200
[2026-10-28 00:54:05,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:54:05,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:54:05,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:54:05,133.133 INFO    ] No camera update needed
[2026-10-28 00:54:05,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:54:05,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:54:05,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:54:05,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:54:07,189.189 INFO    ] ================================================
[2026-10-28 00:54:07,205.205 INFO    ] Launching Daemon at Wed Oct 28 00:54:07 IST 2026
[2026-10-28 00:54:07,216.216 INFO    ] ================================================
[2026-10-28 00:54:07,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:54:07
[2026-10-28 00:54:08,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:54:08,628.628 INFO    ] Initializing speech engine...
[2026-10-28 00:54:08,641.641 INFO    ] 2026-10-28 00:54:08
[2026-10-28 00:54:08,924.924 INFO    ] 2026-10-28 00:54:08
[2026-10-28 00:54:08,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:54:09,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:54:09,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:54:09,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:54:09,545.545 INFO    ] time= 28/10/2026 00:54:09
[2026-10-28 00:54:09,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:54:09,555.555 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:54:09,689.689 INFO    ] No existing commands found in stream
[2026-10-28 00:54:14,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:54:14,722.722 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-28 00:54:18,969.969 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:54:18,971.971 INFO    ] Checking for system updates...
[2026-10-28 00:54:19,008.008 INFO    ] 200
[2026-10-28 00:54:19,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:54:19,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:54:19,066.066 INFO    ] No update needed
[2026-10-28 00:54:19,069.069 INFO    ] Checking for camera pi updates...
[2026-10-28 00:54:19,108.108 INFO    ] 200
[2026-10-28 00:54:19,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:54:19,165.165 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:54:19,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:54:19,256.256 INFO    ] No camera update needed
[2026-10-28 00:54:19,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:54:19,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:54:19,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:54:19,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:54:21,314.314 INFO    ] ================================================
[2026-10-28 00:54:21,329.329 INFO    ] Launching Daemon at Wed Oct 28 00:54:21 IST 2026
[2026-10-28 00:54:21,340.340 INFO    ] ================================================
[2026-10-28 00:54:21,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:54:21
[2026-10-28 00:54:22,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:54:22,753.753 INFO    ] Initializing speech engine...
[2026-10-28 00:54:22,762.762 INFO    ] 2026-10-28 00:54:22
[2026-10-28 00:54:23,013.013 INFO    ] 2026-10-28 00:54:23
[2026-10-28 00:54:23,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:54:23,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:54:23,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:54:23,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:54:23,598.598 INFO    ] time= 28/10/2026 00:54:23
[2026-10-28 00:54:23,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:54:23,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:54:23,750.750 INFO    ] No existing commands found in stream
[2026-10-28 00:54:28,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:54:28,783.783 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 00:54:29,447.447 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:54:29,450.450 INFO    ] Checking for system updates...
[2026-10-28 00:54:29,488.488 INFO    ] 200
[2026-10-28 00:54:29,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:54:29,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:54:29,546.546 INFO    ] No update needed
[2026-10-28 00:54:29,549.549 INFO    ] Checking for camera pi updates...
[2026-10-28 00:54:29,582.582 INFO    ] 200
[2026-10-28 00:54:29,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:54:29,627.627 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:54:29,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:54:29,725.725 INFO    ] No camera update needed
[2026-10-28 00:54:29,727.727 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:54:29,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:54:29,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:54:29,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:54:31,781.781 INFO    ] ================================================
[2026-10-28 00:54:31,798.798 INFO    ] Launching Daemon at Wed Oct 28 00:54:31 IST 2026
[2026-10-28 00:54:31,809.809 INFO    ] ================================================
[2026-10-28 00:54:32,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:54:32
[2026-10-28 00:54:33,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:54:33,373.373 INFO    ] Initializing speech engine...
[2026-10-28 00:54:33,383.383 INFO    ] 2026-10-28 00:54:33
[2026-10-28 00:54:33,631.631 INFO    ] 2026-10-28 00:54:33
[2026-10-28 00:54:33,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:54:33,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:54:33,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:54:34,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:54:34,221.221 INFO    ] time= 28/10/2026 00:54:34
[2026-10-28 00:54:34,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:54:34,259.259 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:54:34,376.376 INFO    ] No existing commands found in stream
[2026-10-28 00:54:39,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:54:39,403.403 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 00:54:40,872.872 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:54:40,875.875 INFO    ] Checking for system updates...
[2026-10-28 00:54:40,915.915 INFO    ] 200
[2026-10-28 00:54:40,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:54:40,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:54:40,972.972 INFO    ] No update needed
[2026-10-28 00:54:40,975.975 INFO    ] Checking for camera pi updates...
[2026-10-28 00:54:41,009.009 INFO    ] 200
[2026-10-28 00:54:41,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:54:41,052.052 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:54:41,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:54:41,148.148 INFO    ] No camera update needed
[2026-10-28 00:54:41,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:54:41,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:54:41,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:54:41,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:54:43,204.204 INFO    ] ================================================
[2026-10-28 00:54:43,219.219 INFO    ] Launching Daemon at Wed Oct 28 00:54:43 IST 2026
[2026-10-28 00:54:43,230.230 INFO    ] ================================================
[2026-10-28 00:54:43,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:54:43
[2026-10-28 00:54:44,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:54:44,831.831 INFO    ] Initializing speech engine...
[2026-10-28 00:54:44,840.840 INFO    ] 2026-10-28 00:54:44
[2026-10-28 00:54:45,116.116 INFO    ] 2026-10-28 00:54:45
[2026-10-28 00:54:45,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:54:45,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:54:45,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:54:45,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:54:45,673.673 INFO    ] time= 28/10/2026 00:54:45
[2026-10-28 00:54:45,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:54:45,714.714 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:54:45,816.816 INFO    ] No existing commands found in stream
[2026-10-28 00:54:50,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:54:50,848.848 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 00:54:52,230.230 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:54:52,233.233 INFO    ] Checking for system updates...
[2026-10-28 00:54:52,269.269 INFO    ] 200
[2026-10-28 00:54:52,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:54:52,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:54:52,332.332 INFO    ] No update needed
[2026-10-28 00:54:52,335.335 INFO    ] Checking for camera pi updates...
[2026-10-28 00:54:52,371.371 INFO    ] 200
[2026-10-28 00:54:52,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:54:52,415.415 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:54:52,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:54:52,506.506 INFO    ] No camera update needed
[2026-10-28 00:54:52,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:54:52,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:54:52,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:54:52,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:54:54,560.560 INFO    ] ================================================
[2026-10-28 00:54:54,574.574 INFO    ] Launching Daemon at Wed Oct 28 00:54:54 IST 2026
[2026-10-28 00:54:54,585.585 INFO    ] ================================================
[2026-10-28 00:54:55,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:54:55
[2026-10-28 00:54:55,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:54:56,004.004 INFO    ] Initializing speech engine...
[2026-10-28 00:54:56,015.015 INFO    ] 2026-10-28 00:54:56
[2026-10-28 00:54:56,260.260 INFO    ] 2026-10-28 00:54:56
[2026-10-28 00:54:56,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:54:56,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:54:56,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:54:56,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:54:56,815.815 INFO    ] time= 28/10/2026 00:54:56
[2026-10-28 00:54:56,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:54:56,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:54:56,971.971 INFO    ] No existing commands found in stream
[2026-10-28 00:55:01,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:55:02,000.000 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-28 00:55:02,589.589 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:55:02,592.592 INFO    ] Checking for system updates...
[2026-10-28 00:55:02,635.635 INFO    ] 200
[2026-10-28 00:55:02,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:55:02,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:55:02,702.702 INFO    ] No update needed
[2026-10-28 00:55:02,705.705 INFO    ] Checking for camera pi updates...
[2026-10-28 00:55:02,747.747 INFO    ] 200
[2026-10-28 00:55:02,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:55:02,796.796 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:55:02,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:55:02,902.902 INFO    ] No camera update needed
[2026-10-28 00:55:02,905.905 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:55:02,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:55:02,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:55:02,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:55:04,966.966 INFO    ] ================================================
[2026-10-28 00:55:04,981.981 INFO    ] Launching Daemon at Wed Oct 28 00:55:04 IST 2026
[2026-10-28 00:55:04,992.992 INFO    ] ================================================
[2026-10-28 00:55:05,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:55:05
[2026-10-28 00:55:06,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:55:06,422.422 INFO    ] Initializing speech engine...
[2026-10-28 00:55:06,430.430 INFO    ] 2026-10-28 00:55:06
[2026-10-28 00:55:06,725.725 INFO    ] 2026-10-28 00:55:06
[2026-10-28 00:55:06,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:55:06,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:55:07,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:55:07,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:55:07,344.344 INFO    ] time= 28/10/2026 00:55:07
[2026-10-28 00:55:07,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:55:07,380.380 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:55:07,508.508 INFO    ] No existing commands found in stream
[2026-10-28 00:55:12,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:55:12,531.531 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-28 00:55:14,749.749 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:55:14,752.752 INFO    ] Checking for system updates...
[2026-10-28 00:55:14,788.788 INFO    ] 200
[2026-10-28 00:55:14,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:55:14,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:55:14,845.845 INFO    ] No update needed
[2026-10-28 00:55:14,847.847 INFO    ] Checking for camera pi updates...
[2026-10-28 00:55:14,884.884 INFO    ] 200
[2026-10-28 00:55:14,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:55:14,930.930 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:55:15,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:55:15,034.034 INFO    ] No camera update needed
[2026-10-28 00:55:15,037.037 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:55:15,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:55:15,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:55:15,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:55:17,089.089 INFO    ] ================================================
[2026-10-28 00:55:17,105.105 INFO    ] Launching Daemon at Wed Oct 28 00:55:17 IST 2026
[2026-10-28 00:55:17,116.116 INFO    ] ================================================
[2026-10-28 00:55:17,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:55:17
[2026-10-28 00:55:18,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:55:18,537.537 INFO    ] Initializing speech engine...
[2026-10-28 00:55:18,553.553 INFO    ] 2026-10-28 00:55:18
[2026-10-28 00:55:18,834.834 INFO    ] 2026-10-28 00:55:18
[2026-10-28 00:55:18,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:55:19,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:55:19,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:55:19,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:55:19,449.449 INFO    ] time= 28/10/2026 00:55:19
[2026-10-28 00:55:19,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:55:19,485.485 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:55:19,638.638 INFO    ] No existing commands found in stream
[2026-10-28 00:55:24,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:55:24,661.661 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-28 00:55:28,546.546 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:55:28,549.549 INFO    ] Checking for system updates...
[2026-10-28 00:55:28,585.585 INFO    ] 200
[2026-10-28 00:55:28,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:55:28,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:55:28,643.643 INFO    ] No update needed
[2026-10-28 00:55:28,646.646 INFO    ] Checking for camera pi updates...
[2026-10-28 00:55:28,679.679 INFO    ] 200
[2026-10-28 00:55:28,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:55:28,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:55:28,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:55:28,817.817 INFO    ] No camera update needed
[2026-10-28 00:55:28,819.819 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:55:28,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:55:28,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:55:28,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:55:30,872.872 INFO    ] ================================================
[2026-10-28 00:55:30,887.887 INFO    ] Launching Daemon at Wed Oct 28 00:55:30 IST 2026
[2026-10-28 00:55:30,898.898 INFO    ] ================================================
[2026-10-28 00:55:31,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:55:31
[2026-10-28 00:55:32,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:55:32,544.544 INFO    ] Initializing speech engine...
[2026-10-28 00:55:32,552.552 INFO    ] 2026-10-28 00:55:32
[2026-10-28 00:55:32,820.820 INFO    ] 2026-10-28 00:55:32
[2026-10-28 00:55:32,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:55:33,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:55:33,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:55:33,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:55:33,391.391 INFO    ] time= 28/10/2026 00:55:33
[2026-10-28 00:55:33,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:55:33,427.427 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:55:33,563.563 INFO    ] No existing commands found in stream
[2026-10-28 00:55:38,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:55:38,596.596 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 00:55:41,749.749 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:55:41,751.751 INFO    ] Checking for system updates...
[2026-10-28 00:55:41,788.788 INFO    ] 200
[2026-10-28 00:55:41,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:55:41,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:55:41,850.850 INFO    ] No update needed
[2026-10-28 00:55:41,852.852 INFO    ] Checking for camera pi updates...
[2026-10-28 00:55:41,886.886 INFO    ] 200
[2026-10-28 00:55:41,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:55:41,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:55:42,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:55:42,130.130 INFO    ] No camera update needed
[2026-10-28 00:55:42,132.132 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:55:42,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:55:42,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:55:42,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:55:44,186.186 INFO    ] ================================================
[2026-10-28 00:55:44,201.201 INFO    ] Launching Daemon at Wed Oct 28 00:55:44 IST 2026
[2026-10-28 00:55:44,212.212 INFO    ] ================================================
[2026-10-28 00:55:44,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:55:44
[2026-10-28 00:55:45,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:55:45,642.642 INFO    ] Initializing speech engine...
[2026-10-28 00:55:45,659.659 INFO    ] 2026-10-28 00:55:45
[2026-10-28 00:55:45,914.914 INFO    ] 2026-10-28 00:55:45
[2026-10-28 00:55:45,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:55:46,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:55:46,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:55:46,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:55:46,488.488 INFO    ] time= 28/10/2026 00:55:46
[2026-10-28 00:55:46,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:55:46,535.535 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:55:46,664.664 INFO    ] No existing commands found in stream
[2026-10-28 00:55:51,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:55:51,692.692 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 00:55:56,226.226 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:55:56,229.229 INFO    ] Checking for system updates...
[2026-10-28 00:55:56,265.265 INFO    ] 200
[2026-10-28 00:55:56,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:55:56,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:55:56,324.324 INFO    ] No update needed
[2026-10-28 00:55:56,326.326 INFO    ] Checking for camera pi updates...
[2026-10-28 00:55:56,361.361 INFO    ] 200
[2026-10-28 00:55:56,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:55:56,409.409 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:55:56,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:55:56,517.517 INFO    ] No camera update needed
[2026-10-28 00:55:56,520.520 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:55:56,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:55:56,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:55:56,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:55:58,575.575 INFO    ] ================================================
[2026-10-28 00:55:58,590.590 INFO    ] Launching Daemon at Wed Oct 28 00:55:58 IST 2026
[2026-10-28 00:55:58,600.600 INFO    ] ================================================
[2026-10-28 00:55:59,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:55:59
[2026-10-28 00:55:59,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:55:59,998.998 INFO    ] Initializing speech engine...
[2026-10-28 00:56:00,004.004 INFO    ] 2026-10-28 00:55:59
[2026-10-28 00:56:00,299.299 INFO    ] 2026-10-28 00:56:00
[2026-10-28 00:56:00,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:56:00,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:56:00,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:56:00,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:56:00,926.926 INFO    ] time= 28/10/2026 00:56:00
[2026-10-28 00:56:00,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:56:00,949.949 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:56:01,102.102 INFO    ] No existing commands found in stream
[2026-10-28 00:56:06,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:56:06,120.120 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-28 00:56:08,005.005 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:56:08,008.008 INFO    ] Checking for system updates...
[2026-10-28 00:56:08,044.044 INFO    ] 200
[2026-10-28 00:56:08,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:56:08,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:56:08,102.102 INFO    ] No update needed
[2026-10-28 00:56:08,104.104 INFO    ] Checking for camera pi updates...
[2026-10-28 00:56:08,138.138 INFO    ] 200
[2026-10-28 00:56:08,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:56:08,182.182 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:56:08,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:56:08,267.267 INFO    ] No camera update needed
[2026-10-28 00:56:08,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:56:08,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:56:08,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:56:08,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:56:10,325.325 INFO    ] ================================================
[2026-10-28 00:56:10,340.340 INFO    ] Launching Daemon at Wed Oct 28 00:56:10 IST 2026
[2026-10-28 00:56:10,351.351 INFO    ] ================================================
[2026-10-28 00:56:10,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:56:10
[2026-10-28 00:56:11,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:56:11,807.807 INFO    ] Initializing speech engine...
[2026-10-28 00:56:11,812.812 INFO    ] 2026-10-28 00:56:11
[2026-10-28 00:56:12,062.062 INFO    ] 2026-10-28 00:56:12
[2026-10-28 00:56:12,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:56:12,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:56:12,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:56:12,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:56:12,622.622 INFO    ] time= 28/10/2026 00:56:12
[2026-10-28 00:56:12,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:56:12,662.662 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:56:12,780.780 INFO    ] No existing commands found in stream
[2026-10-28 00:56:17,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:56:17,814.814 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 00:56:21,988.988 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:56:21,990.990 INFO    ] Checking for system updates...
[2026-10-28 00:56:22,026.026 INFO    ] 200
[2026-10-28 00:56:22,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:56:22,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:56:22,084.084 INFO    ] No update needed
[2026-10-28 00:56:22,086.086 INFO    ] Checking for camera pi updates...
[2026-10-28 00:56:22,125.125 INFO    ] 200
[2026-10-28 00:56:22,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:56:22,168.168 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:56:22,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:56:22,249.249 INFO    ] No camera update needed
[2026-10-28 00:56:22,251.251 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:56:22,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:56:22,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:56:22,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:56:24,304.304 INFO    ] ================================================
[2026-10-28 00:56:24,325.325 INFO    ] Launching Daemon at Wed Oct 28 00:56:24 IST 2026
[2026-10-28 00:56:24,336.336 INFO    ] ================================================
[2026-10-28 00:56:24,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:56:24
[2026-10-28 00:56:25,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:56:25,940.940 INFO    ] Initializing speech engine...
[2026-10-28 00:56:25,954.954 INFO    ] 2026-10-28 00:56:25
[2026-10-28 00:56:26,234.234 INFO    ] 2026-10-28 00:56:26
[2026-10-28 00:56:26,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:56:26,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:56:26,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:56:26,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:56:26,935.935 INFO    ] time= 28/10/2026 00:56:26
[2026-10-28 00:56:26,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:56:27,022.022 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:56:27,202.202 INFO    ] No existing commands found in stream
[2026-10-28 00:56:32,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:56:32,226.226 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 00:56:36,755.755 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:56:36,758.758 INFO    ] Checking for system updates...
[2026-10-28 00:56:36,794.794 INFO    ] 200
[2026-10-28 00:56:36,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:56:36,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:56:36,852.852 INFO    ] No update needed
[2026-10-28 00:56:36,855.855 INFO    ] Checking for camera pi updates...
[2026-10-28 00:56:36,890.890 INFO    ] 200
[2026-10-28 00:56:36,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:56:36,938.938 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:56:37,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:56:37,022.022 INFO    ] No camera update needed
[2026-10-28 00:56:37,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:56:37,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:56:37,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:56:37,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:56:39,077.077 INFO    ] ================================================
[2026-10-28 00:56:39,091.091 INFO    ] Launching Daemon at Wed Oct 28 00:56:39 IST 2026
[2026-10-28 00:56:39,102.102 INFO    ] ================================================
[2026-10-28 00:56:39,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:56:39
[2026-10-28 00:56:40,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:56:40,606.606 INFO    ] Initializing speech engine...
[2026-10-28 00:56:40,615.615 INFO    ] 2026-10-28 00:56:40
[2026-10-28 00:56:40,901.901 INFO    ] 2026-10-28 00:56:40
[2026-10-28 00:56:40,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:56:41,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:56:41,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:56:41,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:56:41,454.454 INFO    ] time= 28/10/2026 00:56:41
[2026-10-28 00:56:41,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:56:41,490.490 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:56:41,624.624 INFO    ] No existing commands found in stream
[2026-10-28 00:56:46,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:56:46,653.653 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-28 00:56:48,185.185 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:56:48,188.188 INFO    ] Checking for system updates...
[2026-10-28 00:56:48,226.226 INFO    ] 200
[2026-10-28 00:56:48,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:56:48,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:56:48,285.285 INFO    ] No update needed
[2026-10-28 00:56:48,288.288 INFO    ] Checking for camera pi updates...
[2026-10-28 00:56:48,322.322 INFO    ] 200
[2026-10-28 00:56:48,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:56:48,367.367 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:56:48,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:56:48,474.474 INFO    ] No camera update needed
[2026-10-28 00:56:48,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:56:48,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:56:48,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:56:48,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:56:50,531.531 INFO    ] ================================================
[2026-10-28 00:56:50,546.546 INFO    ] Launching Daemon at Wed Oct 28 00:56:50 IST 2026
[2026-10-28 00:56:50,556.556 INFO    ] ================================================
[2026-10-28 00:56:51,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:56:51
[2026-10-28 00:56:51,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:56:52,157.157 INFO    ] Initializing speech engine...
[2026-10-28 00:56:52,164.164 INFO    ] 2026-10-28 00:56:52
[2026-10-28 00:56:52,435.435 INFO    ] 2026-10-28 00:56:52
[2026-10-28 00:56:52,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:56:52,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:56:52,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:56:52,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:56:53,004.004 INFO    ] time= 28/10/2026 00:56:52
[2026-10-28 00:56:53,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:56:53,030.030 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:56:53,177.177 INFO    ] No existing commands found in stream
[2026-10-28 00:56:58,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:56:58,201.201 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-28 00:57:02,034.034 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:57:02,039.039 INFO    ] Checking for system updates...
[2026-10-28 00:57:02,128.128 INFO    ] 200
[2026-10-28 00:57:02,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:57:02,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:57:02,244.244 INFO    ] No update needed
[2026-10-28 00:57:02,248.248 INFO    ] Checking for camera pi updates...
[2026-10-28 00:57:02,304.304 INFO    ] 200
[2026-10-28 00:57:02,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:57:02,394.394 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:57:02,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:57:02,501.501 INFO    ] No camera update needed
[2026-10-28 00:57:02,504.504 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:57:02,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:57:02,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:57:02,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:57:04,561.561 INFO    ] ================================================
[2026-10-28 00:57:04,576.576 INFO    ] Launching Daemon at Wed Oct 28 00:57:04 IST 2026
[2026-10-28 00:57:04,586.586 INFO    ] ================================================
[2026-10-28 00:57:05,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:57:05
[2026-10-28 00:57:05,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:57:05,980.980 INFO    ] Initializing speech engine...
[2026-10-28 00:57:05,995.995 INFO    ] 2026-10-28 00:57:05
[2026-10-28 00:57:06,261.261 INFO    ] 2026-10-28 00:57:06
[2026-10-28 00:57:06,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:57:06,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:57:06,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:57:06,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:57:06,758.758 INFO    ] time= 28/10/2026 00:57:06
[2026-10-28 00:57:06,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:57:06,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:57:06,986.986 INFO    ] No existing commands found in stream
[2026-10-28 00:57:12,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:57:12,003.003 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-28 00:57:16,447.447 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:57:16,449.449 INFO    ] Checking for system updates...
[2026-10-28 00:57:16,485.485 INFO    ] 200
[2026-10-28 00:57:16,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:57:16,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:57:16,541.541 INFO    ] No update needed
[2026-10-28 00:57:16,544.544 INFO    ] Checking for camera pi updates...
[2026-10-28 00:57:16,581.581 INFO    ] 200
[2026-10-28 00:57:16,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:57:16,628.628 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:57:16,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:57:16,726.726 INFO    ] No camera update needed
[2026-10-28 00:57:16,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:57:16,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:57:16,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:57:16,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:57:18,782.782 INFO    ] ================================================
[2026-10-28 00:57:18,797.797 INFO    ] Launching Daemon at Wed Oct 28 00:57:18 IST 2026
[2026-10-28 00:57:18,808.808 INFO    ] ================================================
[2026-10-28 00:57:19,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:57:19
[2026-10-28 00:57:19,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:57:20,265.265 INFO    ] Initializing speech engine...
[2026-10-28 00:57:20,273.273 INFO    ] 2026-10-28 00:57:20
[2026-10-28 00:57:20,522.522 INFO    ] 2026-10-28 00:57:20
[2026-10-28 00:57:20,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:57:20,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:57:20,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:57:21,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:57:21,080.080 INFO    ] time= 28/10/2026 00:57:21
[2026-10-28 00:57:21,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:57:21,127.127 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:57:21,234.234 INFO    ] No existing commands found in stream
[2026-10-28 00:57:26,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:57:26,272.272 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-28 00:57:27,285.285 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:57:27,288.288 INFO    ] Checking for system updates...
[2026-10-28 00:57:27,324.324 INFO    ] 200
[2026-10-28 00:57:27,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:57:27,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:57:27,380.380 INFO    ] No update needed
[2026-10-28 00:57:27,383.383 INFO    ] Checking for camera pi updates...
[2026-10-28 00:57:27,416.416 INFO    ] 200
[2026-10-28 00:57:27,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:57:27,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:57:27,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:57:27,540.540 INFO    ] No camera update needed
[2026-10-28 00:57:27,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:57:27,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:57:27,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:57:27,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:57:29,595.595 INFO    ] ================================================
[2026-10-28 00:57:29,611.611 INFO    ] Launching Daemon at Wed Oct 28 00:57:29 IST 2026
[2026-10-28 00:57:29,622.622 INFO    ] ================================================
[2026-10-28 00:57:30,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:57:30
[2026-10-28 00:57:30,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:57:31,020.020 INFO    ] Initializing speech engine...
[2026-10-28 00:57:31,043.043 INFO    ] 2026-10-28 00:57:31
[2026-10-28 00:57:31,298.298 INFO    ] 2026-10-28 00:57:31
[2026-10-28 00:57:31,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:57:31,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:57:31,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:57:31,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:57:31,862.862 INFO    ] time= 28/10/2026 00:57:31
[2026-10-28 00:57:31,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:57:31,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:57:32,020.020 INFO    ] No existing commands found in stream
[2026-10-28 00:57:37,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:57:37,041.041 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-28 00:57:37,788.788 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:57:37,791.791 INFO    ] Checking for system updates...
[2026-10-28 00:57:37,826.826 INFO    ] 200
[2026-10-28 00:57:37,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:57:37,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:57:37,890.890 INFO    ] No update needed
[2026-10-28 00:57:37,892.892 INFO    ] Checking for camera pi updates...
[2026-10-28 00:57:37,925.925 INFO    ] 200
[2026-10-28 00:57:37,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:57:37,968.968 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:57:38,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:57:38,065.065 INFO    ] No camera update needed
[2026-10-28 00:57:38,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:57:38,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:57:38,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:57:38,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:57:40,122.122 INFO    ] ================================================
[2026-10-28 00:57:40,138.138 INFO    ] Launching Daemon at Wed Oct 28 00:57:40 IST 2026
[2026-10-28 00:57:40,149.149 INFO    ] ================================================
[2026-10-28 00:57:40,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:57:40
[2026-10-28 00:57:41,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:57:41,592.592 INFO    ] Initializing speech engine...
[2026-10-28 00:57:41,612.612 INFO    ] 2026-10-28 00:57:41
[2026-10-28 00:57:41,892.892 INFO    ] 2026-10-28 00:57:41
[2026-10-28 00:57:41,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:57:42,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:57:42,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:57:42,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:57:42,385.385 INFO    ] time= 28/10/2026 00:57:42
[2026-10-28 00:57:42,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:57:42,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:57:42,662.662 INFO    ] No existing commands found in stream
[2026-10-28 00:57:47,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:57:47,678.678 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-28 00:57:51,585.585 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 00:57:51,588.588 INFO    ] Checking for system updates...
[2026-10-28 00:57:51,623.623 INFO    ] 200
[2026-10-28 00:57:51,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:57:51,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:57:51,680.680 INFO    ] No update needed
[2026-10-28 00:57:51,683.683 INFO    ] Checking for camera pi updates...
[2026-10-28 00:57:51,716.716 INFO    ] 200
[2026-10-28 00:57:51,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:57:51,763.763 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:57:51,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:57:51,952.952 INFO    ] No camera update needed
[2026-10-28 00:57:51,954.954 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:57:51,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:57:51,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:57:51,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:57:54,008.008 INFO    ] ================================================
[2026-10-28 00:57:54,024.024 INFO    ] Launching Daemon at Wed Oct 28 00:57:54 IST 2026
[2026-10-28 00:57:54,036.036 INFO    ] ================================================
[2026-10-28 00:57:54,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:57:54
[2026-10-28 00:57:55,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:57:55,490.490 INFO    ] Initializing speech engine...
[2026-10-28 00:57:55,499.499 INFO    ] 2026-10-28 00:57:55
[2026-10-28 00:57:55,758.758 INFO    ] 2026-10-28 00:57:55
[2026-10-28 00:57:55,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:57:56,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:57:56,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:57:56,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:57:56,309.309 INFO    ] time= 28/10/2026 00:57:56
[2026-10-28 00:57:56,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:57:56,332.332 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:57:56,463.463 INFO    ] No existing commands found in stream
[2026-10-28 00:58:01,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:58:01,490.490 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 00:58:04,244.244 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:58:04,247.247 INFO    ] Checking for system updates...
[2026-10-28 00:58:04,283.283 INFO    ] 200
[2026-10-28 00:58:04,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:58:04,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:58:04,340.340 INFO    ] No update needed
[2026-10-28 00:58:04,342.342 INFO    ] Checking for camera pi updates...
[2026-10-28 00:58:04,376.376 INFO    ] 200
[2026-10-28 00:58:04,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:58:04,419.419 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:58:04,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:58:04,518.518 INFO    ] No camera update needed
[2026-10-28 00:58:04,520.520 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:58:04,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:58:04,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:58:04,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:58:06,572.572 INFO    ] ================================================
[2026-10-28 00:58:06,588.588 INFO    ] Launching Daemon at Wed Oct 28 00:58:06 IST 2026
[2026-10-28 00:58:06,599.599 INFO    ] ================================================
[2026-10-28 00:58:07,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:58:07
[2026-10-28 00:58:07,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:58:07,990.990 INFO    ] Initializing speech engine...
[2026-10-28 00:58:07,998.998 INFO    ] 2026-10-28 00:58:07
[2026-10-28 00:58:08,272.272 INFO    ] 2026-10-28 00:58:08
[2026-10-28 00:58:08,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:58:08,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:58:08,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:58:08,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:58:08,838.838 INFO    ] time= 28/10/2026 00:58:08
[2026-10-28 00:58:08,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:58:08,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:58:08,997.997 INFO    ] No existing commands found in stream
[2026-10-28 00:58:14,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:58:14,015.015 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-28 00:58:16,072.072 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:58:16,074.074 INFO    ] Checking for system updates...
[2026-10-28 00:58:16,113.113 INFO    ] 200
[2026-10-28 00:58:16,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:58:16,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:58:16,169.169 INFO    ] No update needed
[2026-10-28 00:58:16,172.172 INFO    ] Checking for camera pi updates...
[2026-10-28 00:58:16,206.206 INFO    ] 200
[2026-10-28 00:58:16,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:58:16,248.248 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:58:16,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:58:16,332.332 INFO    ] No camera update needed
[2026-10-28 00:58:16,334.334 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:58:16,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:58:16,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:58:16,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:58:18,387.387 INFO    ] ================================================
[2026-10-28 00:58:18,403.403 INFO    ] Launching Daemon at Wed Oct 28 00:58:18 IST 2026
[2026-10-28 00:58:18,414.414 INFO    ] ================================================
[2026-10-28 00:58:19,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:58:18
[2026-10-28 00:58:19,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:58:19,873.873 INFO    ] Initializing speech engine...
[2026-10-28 00:58:19,882.882 INFO    ] 2026-10-28 00:58:19
[2026-10-28 00:58:20,131.131 INFO    ] 2026-10-28 00:58:20
[2026-10-28 00:58:20,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:58:20,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:58:20,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:58:20,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:58:20,688.688 INFO    ] time= 28/10/2026 00:58:20
[2026-10-28 00:58:20,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:58:20,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:58:20,861.861 INFO    ] No existing commands found in stream
[2026-10-28 00:58:25,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:58:25,889.889 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 00:58:27,608.608 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 00:58:27,611.611 INFO    ] Checking for system updates...
[2026-10-28 00:58:27,647.647 INFO    ] 200
[2026-10-28 00:58:27,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:58:27,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:58:27,703.703 INFO    ] No update needed
[2026-10-28 00:58:27,706.706 INFO    ] Checking for camera pi updates...
[2026-10-28 00:58:27,743.743 INFO    ] 200
[2026-10-28 00:58:27,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:58:27,790.790 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:58:27,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:58:27,871.871 INFO    ] No camera update needed
[2026-10-28 00:58:27,873.873 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:58:27,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:58:27,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:58:27,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:58:29,927.927 INFO    ] ================================================
[2026-10-28 00:58:29,942.942 INFO    ] Launching Daemon at Wed Oct 28 00:58:29 IST 2026
[2026-10-28 00:58:29,953.953 INFO    ] ================================================
[2026-10-28 00:58:30,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:58:30
[2026-10-28 00:58:31,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:58:31,561.561 INFO    ] Initializing speech engine...
[2026-10-28 00:58:31,575.575 INFO    ] 2026-10-28 00:58:31
[2026-10-28 00:58:31,836.836 INFO    ] 2026-10-28 00:58:31
[2026-10-28 00:58:31,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:58:32,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:58:32,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:58:32,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:58:32,436.436 INFO    ] time= 28/10/2026 00:58:32
[2026-10-28 00:58:32,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:58:32,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:58:32,611.611 INFO    ] No existing commands found in stream
[2026-10-28 00:58:37,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:58:37,639.639 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-28 00:58:41,125.125 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 00:58:41,128.128 INFO    ] Checking for system updates...
[2026-10-28 00:58:41,166.166 INFO    ] 200
[2026-10-28 00:58:41,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:58:41,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:58:41,224.224 INFO    ] No update needed
[2026-10-28 00:58:41,226.226 INFO    ] Checking for camera pi updates...
[2026-10-28 00:58:41,260.260 INFO    ] 200
[2026-10-28 00:58:41,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:58:41,307.307 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:58:41,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:58:41,380.380 INFO    ] No camera update needed
[2026-10-28 00:58:41,382.382 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:58:41,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:58:41,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:58:41,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:58:43,434.434 INFO    ] ================================================
[2026-10-28 00:58:43,450.450 INFO    ] Launching Daemon at Wed Oct 28 00:58:43 IST 2026
[2026-10-28 00:58:43,461.461 INFO    ] ================================================
[2026-10-28 00:58:44,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:58:44
[2026-10-28 00:58:44,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:58:44,939.939 INFO    ] Initializing speech engine...
[2026-10-28 00:58:44,962.962 INFO    ] 2026-10-28 00:58:44
[2026-10-28 00:58:45,215.215 INFO    ] 2026-10-28 00:58:45
[2026-10-28 00:58:45,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:58:45,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:58:45,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:58:45,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:58:45,772.772 INFO    ] time= 28/10/2026 00:58:45
[2026-10-28 00:58:45,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:58:45,819.819 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:58:45,930.930 INFO    ] No existing commands found in stream
[2026-10-28 00:58:50,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:58:50,953.953 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 00:58:52,385.385 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:58:52,387.387 INFO    ] Checking for system updates...
[2026-10-28 00:58:52,422.422 INFO    ] 200
[2026-10-28 00:58:52,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:58:52,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:58:52,487.487 INFO    ] No update needed
[2026-10-28 00:58:52,489.489 INFO    ] Checking for camera pi updates...
[2026-10-28 00:58:52,523.523 INFO    ] 200
[2026-10-28 00:58:52,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:58:52,570.570 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:58:52,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:58:52,662.662 INFO    ] No camera update needed
[2026-10-28 00:58:52,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:58:52,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:58:52,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:58:52,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:58:54,719.719 INFO    ] ================================================
[2026-10-28 00:58:54,735.735 INFO    ] Launching Daemon at Wed Oct 28 00:58:54 IST 2026
[2026-10-28 00:58:54,747.747 INFO    ] ================================================
[2026-10-28 00:58:55,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:58:55
[2026-10-28 00:58:55,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:58:56,193.193 INFO    ] Initializing speech engine...
[2026-10-28 00:58:56,200.200 INFO    ] 2026-10-28 00:58:56
[2026-10-28 00:58:56,501.501 INFO    ] 2026-10-28 00:58:56
[2026-10-28 00:58:56,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:58:56,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:58:56,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:58:56,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:58:57,036.036 INFO    ] time= 28/10/2026 00:58:56
[2026-10-28 00:58:57,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:58:57,132.132 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:58:57,270.270 INFO    ] No existing commands found in stream
[2026-10-28 00:59:02,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:59:02,298.298 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 00:59:05,847.847 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:59:05,850.850 INFO    ] Checking for system updates...
[2026-10-28 00:59:05,885.885 INFO    ] 200
[2026-10-28 00:59:05,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:59:05,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:59:05,949.949 INFO    ] No update needed
[2026-10-28 00:59:05,951.951 INFO    ] Checking for camera pi updates...
[2026-10-28 00:59:05,988.988 INFO    ] 200
[2026-10-28 00:59:05,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:59:06,034.034 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:59:06,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:59:06,115.115 INFO    ] No camera update needed
[2026-10-28 00:59:06,117.117 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:59:06,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:59:06,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:59:06,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:59:08,171.171 INFO    ] ================================================
[2026-10-28 00:59:08,187.187 INFO    ] Launching Daemon at Wed Oct 28 00:59:08 IST 2026
[2026-10-28 00:59:08,198.198 INFO    ] ================================================
[2026-10-28 00:59:08,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:59:08
[2026-10-28 00:59:09,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:59:09,780.780 INFO    ] Initializing speech engine...
[2026-10-28 00:59:09,787.787 INFO    ] 2026-10-28 00:59:09
[2026-10-28 00:59:10,057.057 INFO    ] 2026-10-28 00:59:10
[2026-10-28 00:59:10,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:59:10,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:59:10,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:59:10,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:59:10,620.620 INFO    ] time= 28/10/2026 00:59:10
[2026-10-28 00:59:10,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:59:10,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:59:10,799.799 INFO    ] No existing commands found in stream
[2026-10-28 00:59:15,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:59:15,833.833 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 00:59:17,668.668 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 00:59:17,671.671 INFO    ] Checking for system updates...
[2026-10-28 00:59:17,708.708 INFO    ] 200
[2026-10-28 00:59:17,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:59:17,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:59:17,767.767 INFO    ] No update needed
[2026-10-28 00:59:17,770.770 INFO    ] Checking for camera pi updates...
[2026-10-28 00:59:17,807.807 INFO    ] 200
[2026-10-28 00:59:17,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:59:17,851.851 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:59:17,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 00:59:17,962.962 INFO    ] No camera update needed
[2026-10-28 00:59:17,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:59:17,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:59:17,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:59:17,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:59:20,021.021 INFO    ] ================================================
[2026-10-28 00:59:20,037.037 INFO    ] Launching Daemon at Wed Oct 28 00:59:20 IST 2026
[2026-10-28 00:59:20,047.047 INFO    ] ================================================
[2026-10-28 00:59:20,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:59:20
[2026-10-28 00:59:21,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:59:21,479.479 INFO    ] Initializing speech engine...
[2026-10-28 00:59:21,502.502 INFO    ] 2026-10-28 00:59:21
[2026-10-28 00:59:21,757.757 INFO    ] 2026-10-28 00:59:21
[2026-10-28 00:59:21,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:59:22,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:59:22,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:59:22,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:59:22,322.322 INFO    ] time= 28/10/2026 00:59:22
[2026-10-28 00:59:22,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:59:22,347.347 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:59:22,477.477 INFO    ] No existing commands found in stream
[2026-10-28 00:59:27,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:59:27,498.498 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-28 00:59:30,445.445 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 00:59:30,447.447 INFO    ] Checking for system updates...
[2026-10-28 00:59:30,485.485 INFO    ] 200
[2026-10-28 00:59:30,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:59:30,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:59:30,543.543 INFO    ] No update needed
[2026-10-28 00:59:30,546.546 INFO    ] Checking for camera pi updates...
[2026-10-28 00:59:30,582.582 INFO    ] 200
[2026-10-28 00:59:30,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:59:30,629.629 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:59:30,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:59:30,729.729 INFO    ] No camera update needed
[2026-10-28 00:59:30,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:59:30,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:59:30,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:59:30,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:59:32,786.786 INFO    ] ================================================
[2026-10-28 00:59:32,802.802 INFO    ] Launching Daemon at Wed Oct 28 00:59:32 IST 2026
[2026-10-28 00:59:32,813.813 INFO    ] ================================================
[2026-10-28 00:59:33,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:59:33
[2026-10-28 00:59:34,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:59:34,408.408 INFO    ] Initializing speech engine...
[2026-10-28 00:59:34,420.420 INFO    ] 2026-10-28 00:59:34
[2026-10-28 00:59:34,692.692 INFO    ] 2026-10-28 00:59:34
[2026-10-28 00:59:34,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:59:35,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:59:35,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:59:35,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:59:35,253.253 INFO    ] time= 28/10/2026 00:59:35
[2026-10-28 00:59:35,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:59:35,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:59:35,410.410 INFO    ] No existing commands found in stream
[2026-10-28 00:59:40,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:59:40,444.444 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 00:59:43,952.952 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:59:43,955.955 INFO    ] Checking for system updates...
[2026-10-28 00:59:43,999.999 INFO    ] 200
[2026-10-28 00:59:44,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:59:44,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:59:44,057.057 INFO    ] No update needed
[2026-10-28 00:59:44,060.060 INFO    ] Checking for camera pi updates...
[2026-10-28 00:59:44,097.097 INFO    ] 200
[2026-10-28 00:59:44,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:59:44,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:59:44,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:59:44,238.238 INFO    ] No camera update needed
[2026-10-28 00:59:44,241.241 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:59:44,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:59:44,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:59:44,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:59:46,296.296 INFO    ] ================================================
[2026-10-28 00:59:46,311.311 INFO    ] Launching Daemon at Wed Oct 28 00:59:46 IST 2026
[2026-10-28 00:59:46,323.323 INFO    ] ================================================
[2026-10-28 00:59:46,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 00:59:46
[2026-10-28 00:59:47,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 00:59:47,745.745 INFO    ] Initializing speech engine...
[2026-10-28 00:59:47,754.754 INFO    ] 2026-10-28 00:59:47
[2026-10-28 00:59:48,002.002 INFO    ] 2026-10-28 00:59:47
[2026-10-28 00:59:48,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 00:59:48,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 00:59:48,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 00:59:48,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 00:59:48,629.629 INFO    ] time= 28/10/2026 00:59:48
[2026-10-28 00:59:48,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 00:59:48,652.652 INFO    ] Checking for existing commands in stream...
[2026-10-28 00:59:48,767.767 INFO    ] No existing commands found in stream
[2026-10-28 00:59:53,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 00:59:53,792.792 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-28 00:59:57,144.144 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 00:59:57,146.146 INFO    ] Checking for system updates...
[2026-10-28 00:59:57,186.186 INFO    ] 200
[2026-10-28 00:59:57,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:59:57,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:59:57,246.246 INFO    ] No update needed
[2026-10-28 00:59:57,248.248 INFO    ] Checking for camera pi updates...
[2026-10-28 00:59:57,281.281 INFO    ] 200
[2026-10-28 00:59:57,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 00:59:57,324.324 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 00:59:57,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 00:59:57,508.508 INFO    ] No camera update needed
[2026-10-28 00:59:57,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-28 00:59:57,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 00:59:57,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 00:59:57,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 00:59:59,562.562 INFO    ] ================================================
[2026-10-28 00:59:59,578.578 INFO    ] Launching Daemon at Wed Oct 28 00:59:59 IST 2026
[2026-10-28 00:59:59,590.590 INFO    ] ================================================
[2026-10-28 01:00:00,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:00:00
[2026-10-28 01:00:00,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:00:01,042.042 INFO    ] Initializing speech engine...
[2026-10-28 01:00:01,052.052 INFO    ] 2026-10-28 01:00:01
[2026-10-28 01:00:01,332.332 INFO    ] 2026-10-28 01:00:01
[2026-10-28 01:00:01,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:00:01,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:00:02,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:00:02,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:00:02,209.209 INFO    ] time= 28/10/2026 01:00:02
[2026-10-28 01:00:02,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:00:02,237.237 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:00:02,341.341 INFO    ] No existing commands found in stream
[2026-10-28 01:00:07,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:00:07,359.359 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-28 01:00:09,392.392 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:00:09,395.395 INFO    ] Checking for system updates...
[2026-10-28 01:00:09,434.434 INFO    ] 200
[2026-10-28 01:00:09,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:00:09,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:00:09,491.491 INFO    ] No update needed
[2026-10-28 01:00:09,493.493 INFO    ] Checking for camera pi updates...
[2026-10-28 01:00:09,527.527 INFO    ] 200
[2026-10-28 01:00:09,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:00:09,569.569 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:00:09,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:00:09,658.658 INFO    ] No camera update needed
[2026-10-28 01:00:09,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:00:09,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:00:09,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:00:09,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:00:11,715.715 INFO    ] ================================================
[2026-10-28 01:00:11,730.730 INFO    ] Launching Daemon at Wed Oct 28 01:00:11 IST 2026
[2026-10-28 01:00:11,741.741 INFO    ] ================================================
[2026-10-28 01:00:12,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:00:12
[2026-10-28 01:00:13,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:00:13,308.308 INFO    ] Initializing speech engine...
[2026-10-28 01:00:13,316.316 INFO    ] 2026-10-28 01:00:13
[2026-10-28 01:00:13,601.601 INFO    ] 2026-10-28 01:00:13
[2026-10-28 01:00:13,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:00:13,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:00:14,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:00:14,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:00:14,306.306 INFO    ] time= 28/10/2026 01:00:14
[2026-10-28 01:00:14,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:00:14,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:00:14,576.576 INFO    ] No existing commands found in stream
[2026-10-28 01:00:19,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:00:19,598.598 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-28 01:00:20,530.530 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:00:20,533.533 INFO    ] Checking for system updates...
[2026-10-28 01:00:20,574.574 INFO    ] 200
[2026-10-28 01:00:20,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:00:20,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:00:20,661.661 INFO    ] No update needed
[2026-10-28 01:00:20,664.664 INFO    ] Checking for camera pi updates...
[2026-10-28 01:00:20,703.703 INFO    ] 200
[2026-10-28 01:00:20,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:00:20,786.786 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:00:20,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:00:20,877.877 INFO    ] No camera update needed
[2026-10-28 01:00:20,880.880 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:00:20,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:00:20,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:00:20,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:00:22,934.934 INFO    ] ================================================
[2026-10-28 01:00:22,949.949 INFO    ] Launching Daemon at Wed Oct 28 01:00:22 IST 2026
[2026-10-28 01:00:22,960.960 INFO    ] ================================================
[2026-10-28 01:00:23,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:00:23
[2026-10-28 01:00:24,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:00:24,419.419 INFO    ] Initializing speech engine...
[2026-10-28 01:00:24,424.424 INFO    ] 2026-10-28 01:00:24
[2026-10-28 01:00:24,687.687 INFO    ] 2026-10-28 01:00:24
[2026-10-28 01:00:24,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:00:25,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:00:25,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:00:25,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:00:25,243.243 INFO    ] time= 28/10/2026 01:00:25
[2026-10-28 01:00:25,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:00:25,279.279 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:00:25,425.425 INFO    ] No existing commands found in stream
[2026-10-28 01:00:30,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:00:30,458.458 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-28 01:00:33,270.270 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:00:33,273.273 INFO    ] Checking for system updates...
[2026-10-28 01:00:33,315.315 INFO    ] 200
[2026-10-28 01:00:33,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:00:33,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:00:33,378.378 INFO    ] No update needed
[2026-10-28 01:00:33,380.380 INFO    ] Checking for camera pi updates...
[2026-10-28 01:00:33,416.416 INFO    ] 200
[2026-10-28 01:00:33,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:00:33,478.478 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:00:33,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:00:33,544.544 INFO    ] No camera update needed
[2026-10-28 01:00:33,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:00:33,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:00:33,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:00:33,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:00:35,603.603 INFO    ] ================================================
[2026-10-28 01:00:35,619.619 INFO    ] Launching Daemon at Wed Oct 28 01:00:35 IST 2026
[2026-10-28 01:00:35,630.630 INFO    ] ================================================
[2026-10-28 01:00:36,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:00:36
[2026-10-28 01:00:36,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:00:37,144.144 INFO    ] Initializing speech engine...
[2026-10-28 01:00:37,153.153 INFO    ] 2026-10-28 01:00:37
[2026-10-28 01:00:37,401.401 INFO    ] 2026-10-28 01:00:37
[2026-10-28 01:00:37,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:00:37,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:00:37,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:00:37,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:00:37,957.957 INFO    ] time= 28/10/2026 01:00:37
[2026-10-28 01:00:37,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:00:37,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:00:38,136.136 INFO    ] No existing commands found in stream
[2026-10-28 01:00:43,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:00:43,169.169 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-28 01:00:44,083.083 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:00:44,086.086 INFO    ] Checking for system updates...
[2026-10-28 01:00:44,121.121 INFO    ] 200
[2026-10-28 01:00:44,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:00:44,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:00:44,179.179 INFO    ] No update needed
[2026-10-28 01:00:44,181.181 INFO    ] Checking for camera pi updates...
[2026-10-28 01:00:44,214.214 INFO    ] 200
[2026-10-28 01:00:44,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:00:44,258.258 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:00:44,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:00:44,342.342 INFO    ] No camera update needed
[2026-10-28 01:00:44,345.345 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:00:44,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:00:44,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:00:44,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:00:46,396.396 INFO    ] ================================================
[2026-10-28 01:00:46,413.413 INFO    ] Launching Daemon at Wed Oct 28 01:00:46 IST 2026
[2026-10-28 01:00:46,424.424 INFO    ] ================================================
[2026-10-28 01:00:46,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:00:46
[2026-10-28 01:00:47,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:00:47,857.857 INFO    ] Initializing speech engine...
[2026-10-28 01:00:47,862.862 INFO    ] 2026-10-28 01:00:47
[2026-10-28 01:00:48,108.108 INFO    ] 2026-10-28 01:00:48
[2026-10-28 01:00:48,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:00:48,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:00:48,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:00:48,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:00:48,663.663 INFO    ] time= 28/10/2026 01:00:48
[2026-10-28 01:00:48,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:00:48,689.689 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:00:48,819.819 INFO    ] No existing commands found in stream
[2026-10-28 01:00:53,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:00:53,839.839 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-28 01:00:55,350.350 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:00:55,357.357 INFO    ] Checking for system updates...
[2026-10-28 01:00:55,396.396 INFO    ] 200
[2026-10-28 01:00:55,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:00:55,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:00:55,453.453 INFO    ] No update needed
[2026-10-28 01:00:55,456.456 INFO    ] Checking for camera pi updates...
[2026-10-28 01:00:55,492.492 INFO    ] 200
[2026-10-28 01:00:55,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:00:55,535.535 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:00:55,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:00:55,622.622 INFO    ] No camera update needed
[2026-10-28 01:00:55,625.625 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:00:55,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:00:55,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:00:55,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:00:57,678.678 INFO    ] ================================================
[2026-10-28 01:00:57,694.694 INFO    ] Launching Daemon at Wed Oct 28 01:00:57 IST 2026
[2026-10-28 01:00:57,705.705 INFO    ] ================================================
[2026-10-28 01:00:58,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:00:58
[2026-10-28 01:00:59,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:00:59,335.335 INFO    ] Initializing speech engine...
[2026-10-28 01:00:59,344.344 INFO    ] 2026-10-28 01:00:59
[2026-10-28 01:00:59,619.619 INFO    ] 2026-10-28 01:00:59
[2026-10-28 01:00:59,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:00:59,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:00:59,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:01:00,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:01:00,207.207 INFO    ] time= 28/10/2026 01:01:00
[2026-10-28 01:01:00,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:01:00,246.246 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:01:00,377.377 INFO    ] No existing commands found in stream
[2026-10-28 01:01:05,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:01:05,406.406 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-28 01:01:06,325.325 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:01:06,328.328 INFO    ] Checking for system updates...
[2026-10-28 01:01:06,367.367 INFO    ] 200
[2026-10-28 01:01:06,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:01:06,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:01:06,433.433 INFO    ] No update needed
[2026-10-28 01:01:06,436.436 INFO    ] Checking for camera pi updates...
[2026-10-28 01:01:06,471.471 INFO    ] 200
[2026-10-28 01:01:06,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:01:06,515.515 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:01:06,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:01:06,597.597 INFO    ] No camera update needed
[2026-10-28 01:01:06,600.600 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:01:06,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:01:06,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:01:06,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:01:08,654.654 INFO    ] ================================================
[2026-10-28 01:01:08,670.670 INFO    ] Launching Daemon at Wed Oct 28 01:01:08 IST 2026
[2026-10-28 01:01:08,680.680 INFO    ] ================================================
[2026-10-28 01:01:09,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:01:09
[2026-10-28 01:01:09,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:01:10,097.097 INFO    ] Initializing speech engine...
[2026-10-28 01:01:10,106.106 INFO    ] 2026-10-28 01:01:10
[2026-10-28 01:01:10,353.353 INFO    ] 2026-10-28 01:01:10
[2026-10-28 01:01:10,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:01:10,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:01:10,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:01:10,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:01:10,909.909 INFO    ] time= 28/10/2026 01:01:10
[2026-10-28 01:01:10,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:01:10,930.930 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:01:11,057.057 INFO    ] No existing commands found in stream
[2026-10-28 01:01:16,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:01:16,074.074 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-28 01:01:18,964.964 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:01:18,967.967 INFO    ] Checking for system updates...
[2026-10-28 01:01:19,003.003 INFO    ] 200
[2026-10-28 01:01:19,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:01:19,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:01:19,065.065 INFO    ] No update needed
[2026-10-28 01:01:19,067.067 INFO    ] Checking for camera pi updates...
[2026-10-28 01:01:19,107.107 INFO    ] 200
[2026-10-28 01:01:19,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:01:19,150.150 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:01:19,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:01:19,235.235 INFO    ] No camera update needed
[2026-10-28 01:01:19,238.238 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:01:19,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:01:19,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:01:19,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:01:21,291.291 INFO    ] ================================================
[2026-10-28 01:01:21,306.306 INFO    ] Launching Daemon at Wed Oct 28 01:01:21 IST 2026
[2026-10-28 01:01:21,317.317 INFO    ] ================================================
[2026-10-28 01:01:21,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:01:21
[2026-10-28 01:01:22,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:01:22,736.736 INFO    ] Initializing speech engine...
[2026-10-28 01:01:22,743.743 INFO    ] 2026-10-28 01:01:22
[2026-10-28 01:01:23,040.040 INFO    ] 2026-10-28 01:01:23
[2026-10-28 01:01:23,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:01:23,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:01:23,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:01:23,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:01:23,575.575 INFO    ] time= 28/10/2026 01:01:23
[2026-10-28 01:01:23,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:01:23,674.674 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:01:23,815.815 INFO    ] No existing commands found in stream
[2026-10-28 01:01:28,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:01:28,834.834 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 01:01:31,694.694 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:01:31,697.697 INFO    ] Checking for system updates...
[2026-10-28 01:01:31,736.736 INFO    ] 200
[2026-10-28 01:01:31,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:01:31,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:01:31,801.801 INFO    ] No update needed
[2026-10-28 01:01:31,803.803 INFO    ] Checking for camera pi updates...
[2026-10-28 01:01:31,841.841 INFO    ] 200
[2026-10-28 01:01:31,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:01:31,898.898 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:01:32,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:01:32,009.009 INFO    ] No camera update needed
[2026-10-28 01:01:32,012.012 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:01:32,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:01:32,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:01:32,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:01:34,070.070 INFO    ] ================================================
[2026-10-28 01:01:34,085.085 INFO    ] Launching Daemon at Wed Oct 28 01:01:34 IST 2026
[2026-10-28 01:01:34,096.096 INFO    ] ================================================
[2026-10-28 01:01:34,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:01:34
[2026-10-28 01:01:35,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:01:35,544.544 INFO    ] Initializing speech engine...
[2026-10-28 01:01:35,553.553 INFO    ] 2026-10-28 01:01:35
[2026-10-28 01:01:35,824.824 INFO    ] 2026-10-28 01:01:35
[2026-10-28 01:01:35,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:01:36,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:01:36,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:01:36,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:01:36,376.376 INFO    ] time= 28/10/2026 01:01:36
[2026-10-28 01:01:36,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:01:36,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:01:36,534.534 INFO    ] No existing commands found in stream
[2026-10-28 01:01:41,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:01:41,555.555 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-28 01:01:44,024.024 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:01:44,027.027 INFO    ] Checking for system updates...
[2026-10-28 01:01:44,062.062 INFO    ] 200
[2026-10-28 01:01:44,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:01:44,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:01:44,125.125 INFO    ] No update needed
[2026-10-28 01:01:44,128.128 INFO    ] Checking for camera pi updates...
[2026-10-28 01:01:44,161.161 INFO    ] 200
[2026-10-28 01:01:44,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:01:44,204.204 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:01:44,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:01:44,291.291 INFO    ] No camera update needed
[2026-10-28 01:01:44,293.293 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:01:44,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:01:44,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:01:44,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:01:46,345.345 INFO    ] ================================================
[2026-10-28 01:01:46,361.361 INFO    ] Launching Daemon at Wed Oct 28 01:01:46 IST 2026
[2026-10-28 01:01:46,372.372 INFO    ] ================================================
[2026-10-28 01:01:46,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:01:46
[2026-10-28 01:01:47,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:01:47,774.774 INFO    ] Initializing speech engine...
[2026-10-28 01:01:47,782.782 INFO    ] 2026-10-28 01:01:47
[2026-10-28 01:01:48,057.057 INFO    ] 2026-10-28 01:01:48
[2026-10-28 01:01:48,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:01:48,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:01:48,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:01:48,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:01:48,628.628 INFO    ] time= 28/10/2026 01:01:48
[2026-10-28 01:01:48,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:01:48,675.675 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:01:48,844.844 INFO    ] No existing commands found in stream
[2026-10-28 01:01:53,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:01:53,872.872 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 01:01:58,204.204 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:01:58,206.206 INFO    ] Checking for system updates...
[2026-10-28 01:01:58,241.241 INFO    ] 200
[2026-10-28 01:01:58,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:01:58,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:01:58,300.300 INFO    ] No update needed
[2026-10-28 01:01:58,302.302 INFO    ] Checking for camera pi updates...
[2026-10-28 01:01:58,336.336 INFO    ] 200
[2026-10-28 01:01:58,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:01:58,384.384 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:01:58,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:01:58,463.463 INFO    ] No camera update needed
[2026-10-28 01:01:58,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:01:58,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:01:58,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:01:58,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:02:00,519.519 INFO    ] ================================================
[2026-10-28 01:02:00,535.535 INFO    ] Launching Daemon at Wed Oct 28 01:02:00 IST 2026
[2026-10-28 01:02:00,546.546 INFO    ] ================================================
[2026-10-28 01:02:01,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:02:01
[2026-10-28 01:02:01,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:02:02,307.307 INFO    ] Initializing speech engine...
[2026-10-28 01:02:02,310.310 INFO    ] 2026-10-28 01:02:02
[2026-10-28 01:02:02,722.722 INFO    ] 2026-10-28 01:02:02
[2026-10-28 01:02:02,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:02:03,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:02:03,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:02:03,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:02:03,423.423 INFO    ] time= 28/10/2026 01:02:03
[2026-10-28 01:02:03,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:02:03,531.531 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:02:03,639.639 INFO    ] No existing commands found in stream
[2026-10-28 01:02:08,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:02:08,659.659 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-28 01:02:12,786.786 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:02:12,789.789 INFO    ] Checking for system updates...
[2026-10-28 01:02:12,828.828 INFO    ] 200
[2026-10-28 01:02:12,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:02:12,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:02:12,892.892 INFO    ] No update needed
[2026-10-28 01:02:12,894.894 INFO    ] Checking for camera pi updates...
[2026-10-28 01:02:12,928.928 INFO    ] 200
[2026-10-28 01:02:12,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:02:12,973.973 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:02:13,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:02:13,092.092 INFO    ] No camera update needed
[2026-10-28 01:02:13,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:02:13,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:02:13,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:02:13,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:02:15,150.150 INFO    ] ================================================
[2026-10-28 01:02:15,166.166 INFO    ] Launching Daemon at Wed Oct 28 01:02:15 IST 2026
[2026-10-28 01:02:15,177.177 INFO    ] ================================================
[2026-10-28 01:02:15,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:02:15
[2026-10-28 01:02:16,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:02:16,596.596 INFO    ] Initializing speech engine...
[2026-10-28 01:02:16,615.615 INFO    ] 2026-10-28 01:02:16
[2026-10-28 01:02:16,878.878 INFO    ] 2026-10-28 01:02:16
[2026-10-28 01:02:16,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:02:17,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:02:17,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:02:17,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:02:17,497.497 INFO    ] time= 28/10/2026 01:02:17
[2026-10-28 01:02:17,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:02:17,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:02:17,665.665 INFO    ] No existing commands found in stream
[2026-10-28 01:02:22,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:02:22,682.682 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-28 01:02:24,810.810 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:02:24,813.813 INFO    ] Checking for system updates...
[2026-10-28 01:02:24,849.849 INFO    ] 200
[2026-10-28 01:02:24,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:02:24,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:02:24,907.907 INFO    ] No update needed
[2026-10-28 01:02:24,910.910 INFO    ] Checking for camera pi updates...
[2026-10-28 01:02:24,946.946 INFO    ] 200
[2026-10-28 01:02:24,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:02:24,992.992 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:02:25,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:02:25,092.092 INFO    ] No camera update needed
[2026-10-28 01:02:25,094.094 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:02:25,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:02:25,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:02:25,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:02:27,152.152 INFO    ] ================================================
[2026-10-28 01:02:27,177.177 INFO    ] Launching Daemon at Wed Oct 28 01:02:27 IST 2026
[2026-10-28 01:02:27,188.188 INFO    ] ================================================
[2026-10-28 01:02:27,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:02:27
[2026-10-28 01:02:28,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:02:28,606.606 INFO    ] Initializing speech engine...
[2026-10-28 01:02:28,616.616 INFO    ] 2026-10-28 01:02:28
[2026-10-28 01:02:28,861.861 INFO    ] 2026-10-28 01:02:28
[2026-10-28 01:02:28,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:02:29,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:02:29,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:02:29,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:02:29,429.429 INFO    ] time= 28/10/2026 01:02:29
[2026-10-28 01:02:29,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:02:29,463.463 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:02:29,570.570 INFO    ] No existing commands found in stream
[2026-10-28 01:02:34,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:02:34,596.596 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-28 01:02:36,783.783 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:02:36,786.786 INFO    ] Checking for system updates...
[2026-10-28 01:02:36,823.823 INFO    ] 200
[2026-10-28 01:02:36,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:02:36,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:02:36,882.882 INFO    ] No update needed
[2026-10-28 01:02:36,885.885 INFO    ] Checking for camera pi updates...
[2026-10-28 01:02:36,924.924 INFO    ] 200
[2026-10-28 01:02:36,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:02:36,969.969 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:02:37,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:02:37,080.080 INFO    ] No camera update needed
[2026-10-28 01:02:37,082.082 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:02:37,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:02:37,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:02:37,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:02:39,138.138 INFO    ] ================================================
[2026-10-28 01:02:39,154.154 INFO    ] Launching Daemon at Wed Oct 28 01:02:39 IST 2026
[2026-10-28 01:02:39,165.165 INFO    ] ================================================
[2026-10-28 01:02:39,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:02:39
[2026-10-28 01:02:40,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:02:40,777.777 INFO    ] Initializing speech engine...
[2026-10-28 01:02:40,788.788 INFO    ] 2026-10-28 01:02:40
[2026-10-28 01:02:41,056.056 INFO    ] 2026-10-28 01:02:41
[2026-10-28 01:02:41,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:02:41,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:02:41,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:02:41,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:02:41,629.629 INFO    ] time= 28/10/2026 01:02:41
[2026-10-28 01:02:41,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:02:41,669.669 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:02:41,790.790 INFO    ] No existing commands found in stream
[2026-10-28 01:02:46,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:02:46,825.825 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 01:02:50,545.545 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:02:50,548.548 INFO    ] Checking for system updates...
[2026-10-28 01:02:50,585.585 INFO    ] 200
[2026-10-28 01:02:50,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:02:50,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:02:50,650.650 INFO    ] No update needed
[2026-10-28 01:02:50,652.652 INFO    ] Checking for camera pi updates...
[2026-10-28 01:02:50,688.688 INFO    ] 200
[2026-10-28 01:02:50,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:02:50,731.731 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:02:50,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:02:50,818.818 INFO    ] No camera update needed
[2026-10-28 01:02:50,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:02:50,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:02:50,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:02:50,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:02:52,878.878 INFO    ] ================================================
[2026-10-28 01:02:52,894.894 INFO    ] Launching Daemon at Wed Oct 28 01:02:52 IST 2026
[2026-10-28 01:02:52,905.905 INFO    ] ================================================
[2026-10-28 01:02:53,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:02:53
[2026-10-28 01:02:54,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:02:54,506.506 INFO    ] Initializing speech engine...
[2026-10-28 01:02:54,518.518 INFO    ] 2026-10-28 01:02:54
[2026-10-28 01:02:54,797.797 INFO    ] 2026-10-28 01:02:54
[2026-10-28 01:02:54,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:02:55,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:02:55,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:02:55,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:02:55,347.347 INFO    ] time= 28/10/2026 01:02:55
[2026-10-28 01:02:55,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:02:55,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:02:55,498.498 INFO    ] No existing commands found in stream
[2026-10-28 01:03:00,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:03:00,532.532 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-28 01:03:02,383.383 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:03:02,387.387 INFO    ] Checking for system updates...
[2026-10-28 01:03:02,441.441 INFO    ] 200
[2026-10-28 01:03:02,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:03:02,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:03:02,531.531 INFO    ] No update needed
[2026-10-28 01:03:02,534.534 INFO    ] Checking for camera pi updates...
[2026-10-28 01:03:02,575.575 INFO    ] 200
[2026-10-28 01:03:02,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:03:02,626.626 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:03:02,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:03:02,728.728 INFO    ] No camera update needed
[2026-10-28 01:03:02,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:03:02,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:03:02,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:03:02,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:03:04,789.789 INFO    ] ================================================
[2026-10-28 01:03:04,804.804 INFO    ] Launching Daemon at Wed Oct 28 01:03:04 IST 2026
[2026-10-28 01:03:04,815.815 INFO    ] ================================================
[2026-10-28 01:03:05,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:03:05
[2026-10-28 01:03:06,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:03:06,424.424 INFO    ] Initializing speech engine...
[2026-10-28 01:03:06,435.435 INFO    ] 2026-10-28 01:03:06
[2026-10-28 01:03:06,711.711 INFO    ] 2026-10-28 01:03:06
[2026-10-28 01:03:06,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:03:07,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:03:07,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:03:07,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:03:07,404.404 INFO    ] time= 28/10/2026 01:03:07
[2026-10-28 01:03:07,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:03:07,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:03:07,652.652 INFO    ] No existing commands found in stream
[2026-10-28 01:03:12,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:03:12,674.674 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 01:03:16,272.272 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:03:16,275.275 INFO    ] Checking for system updates...
[2026-10-28 01:03:16,312.312 INFO    ] 200
[2026-10-28 01:03:16,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:03:16,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:03:16,371.371 INFO    ] No update needed
[2026-10-28 01:03:16,374.374 INFO    ] Checking for camera pi updates...
[2026-10-28 01:03:16,413.413 INFO    ] 200
[2026-10-28 01:03:16,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:03:16,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:03:16,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:03:16,542.542 INFO    ] No camera update needed
[2026-10-28 01:03:16,544.544 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:03:16,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:03:16,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:03:16,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:03:18,601.601 INFO    ] ================================================
[2026-10-28 01:03:18,616.616 INFO    ] Launching Daemon at Wed Oct 28 01:03:18 IST 2026
[2026-10-28 01:03:18,628.628 INFO    ] ================================================
[2026-10-28 01:03:19,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:03:19
[2026-10-28 01:03:19,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:03:20,072.072 INFO    ] Initializing speech engine...
[2026-10-28 01:03:20,079.079 INFO    ] 2026-10-28 01:03:20
[2026-10-28 01:03:20,338.338 INFO    ] 2026-10-28 01:03:20
[2026-10-28 01:03:20,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:03:20,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:03:20,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:03:20,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:03:20,881.881 INFO    ] time= 28/10/2026 01:03:20
[2026-10-28 01:03:20,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:03:20,916.916 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:03:21,054.054 INFO    ] No existing commands found in stream
[2026-10-28 01:03:26,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:03:26,081.081 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-28 01:03:28,353.353 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:03:28,356.356 INFO    ] Checking for system updates...
[2026-10-28 01:03:28,394.394 INFO    ] 200
[2026-10-28 01:03:28,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:03:28,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:03:28,454.454 INFO    ] No update needed
[2026-10-28 01:03:28,456.456 INFO    ] Checking for camera pi updates...
[2026-10-28 01:03:28,490.490 INFO    ] 200
[2026-10-28 01:03:28,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:03:28,534.534 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:03:28,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:03:28,617.617 INFO    ] No camera update needed
[2026-10-28 01:03:28,620.620 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:03:28,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:03:28,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:03:28,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:03:30,675.675 INFO    ] ================================================
[2026-10-28 01:03:30,691.691 INFO    ] Launching Daemon at Wed Oct 28 01:03:30 IST 2026
[2026-10-28 01:03:30,701.701 INFO    ] ================================================
[2026-10-28 01:03:31,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:03:31
[2026-10-28 01:03:31,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:03:32,169.169 INFO    ] Initializing speech engine...
[2026-10-28 01:03:32,192.192 INFO    ] 2026-10-28 01:03:32
[2026-10-28 01:03:32,469.469 INFO    ] 2026-10-28 01:03:32
[2026-10-28 01:03:32,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:03:32,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:03:32,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:03:32,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:03:32,993.993 INFO    ] time= 28/10/2026 01:03:32
[2026-10-28 01:03:33,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:03:33,058.058 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:03:33,213.213 INFO    ] No existing commands found in stream
[2026-10-28 01:03:38,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:03:38,248.248 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-28 01:03:39,224.224 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:03:39,227.227 INFO    ] Checking for system updates...
[2026-10-28 01:03:39,265.265 INFO    ] 200
[2026-10-28 01:03:39,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:03:39,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:03:39,323.323 INFO    ] No update needed
[2026-10-28 01:03:39,326.326 INFO    ] Checking for camera pi updates...
[2026-10-28 01:03:39,360.360 INFO    ] 200
[2026-10-28 01:03:39,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:03:39,404.404 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:03:39,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:03:39,491.491 INFO    ] No camera update needed
[2026-10-28 01:03:39,493.493 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:03:39,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:03:39,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:03:39,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:03:41,549.549 INFO    ] ================================================
[2026-10-28 01:03:41,565.565 INFO    ] Launching Daemon at Wed Oct 28 01:03:41 IST 2026
[2026-10-28 01:03:41,576.576 INFO    ] ================================================
[2026-10-28 01:03:42,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:03:42
[2026-10-28 01:03:42,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:03:43,219.219 INFO    ] Initializing speech engine...
[2026-10-28 01:03:43,233.233 INFO    ] 2026-10-28 01:03:43
[2026-10-28 01:03:43,546.546 INFO    ] 2026-10-28 01:03:43
[2026-10-28 01:03:43,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:03:43,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:03:43,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:03:44,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:03:44,069.069 INFO    ] time= 28/10/2026 01:03:44
[2026-10-28 01:03:44,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:03:44,109.109 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:03:44,265.265 INFO    ] No existing commands found in stream
[2026-10-28 01:03:49,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:03:49,295.295 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-28 01:03:52,105.105 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:03:52,108.108 INFO    ] Checking for system updates...
[2026-10-28 01:03:52,144.144 INFO    ] 200
[2026-10-28 01:03:52,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:03:52,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:03:52,202.202 INFO    ] No update needed
[2026-10-28 01:03:52,204.204 INFO    ] Checking for camera pi updates...
[2026-10-28 01:03:52,238.238 INFO    ] 200
[2026-10-28 01:03:52,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:03:52,280.280 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:03:52,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:03:52,341.341 INFO    ] No camera update needed
[2026-10-28 01:03:52,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:03:52,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:03:52,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:03:52,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:03:54,398.398 INFO    ] ================================================
[2026-10-28 01:03:54,414.414 INFO    ] Launching Daemon at Wed Oct 28 01:03:54 IST 2026
[2026-10-28 01:03:54,425.425 INFO    ] ================================================
[2026-10-28 01:03:55,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:03:55
[2026-10-28 01:03:55,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:03:56,099.099 INFO    ] Initializing speech engine...
[2026-10-28 01:03:56,114.114 INFO    ] 2026-10-28 01:03:56
[2026-10-28 01:03:56,388.388 INFO    ] 2026-10-28 01:03:56
[2026-10-28 01:03:56,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:03:56,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:03:56,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:03:56,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:03:56,965.965 INFO    ] time= 28/10/2026 01:03:56
[2026-10-28 01:03:56,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:03:57,003.003 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:03:57,140.140 INFO    ] No existing commands found in stream
[2026-10-28 01:04:02,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:04:02,175.175 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-28 01:04:03,646.646 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:04:03,650.650 INFO    ] Checking for system updates...
[2026-10-28 01:04:03,696.696 INFO    ] 200
[2026-10-28 01:04:03,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:04:03,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:04:03,760.760 INFO    ] No update needed
[2026-10-28 01:04:03,763.763 INFO    ] Checking for camera pi updates...
[2026-10-28 01:04:03,805.805 INFO    ] 200
[2026-10-28 01:04:03,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:04:03,853.853 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:04:03,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:04:03,938.938 INFO    ] No camera update needed
[2026-10-28 01:04:03,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:04:03,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:04:03,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:04:03,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:04:06,996.996 INFO    ] ================================================
[2026-10-28 01:04:06,011.011 INFO    ] Launching Daemon at Wed Oct 28 01:04:06 IST 2026
[2026-10-28 01:04:06,022.022 INFO    ] ================================================
[2026-10-28 01:04:06,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:04:06
[2026-10-28 01:04:07,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:04:07,434.434 INFO    ] Initializing speech engine...
[2026-10-28 01:04:07,447.447 INFO    ] 2026-10-28 01:04:07
[2026-10-28 01:04:07,714.714 INFO    ] 2026-10-28 01:04:07
[2026-10-28 01:04:07,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:04:08,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:04:08,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:04:08,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:04:08,282.282 INFO    ] time= 28/10/2026 01:04:08
[2026-10-28 01:04:08,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:04:08,304.304 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:04:08,426.426 INFO    ] No existing commands found in stream
[2026-10-28 01:04:13,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:04:13,451.451 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-28 01:04:14,949.949 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:04:14,951.951 INFO    ] Checking for system updates...
[2026-10-28 01:04:14,987.987 INFO    ] 200
[2026-10-28 01:04:14,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:04:15,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:04:15,044.044 INFO    ] No update needed
[2026-10-28 01:04:15,047.047 INFO    ] Checking for camera pi updates...
[2026-10-28 01:04:15,080.080 INFO    ] 200
[2026-10-28 01:04:15,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:04:15,124.124 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:04:15,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:04:15,305.305 INFO    ] No camera update needed
[2026-10-28 01:04:15,307.307 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:04:15,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:04:15,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:04:15,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:04:17,361.361 INFO    ] ================================================
[2026-10-28 01:04:17,376.376 INFO    ] Launching Daemon at Wed Oct 28 01:04:17 IST 2026
[2026-10-28 01:04:17,386.386 INFO    ] ================================================
[2026-10-28 01:04:17,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:04:17
[2026-10-28 01:04:18,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:04:18,844.844 INFO    ] Initializing speech engine...
[2026-10-28 01:04:18,850.850 INFO    ] 2026-10-28 01:04:18
[2026-10-28 01:04:19,111.111 INFO    ] 2026-10-28 01:04:19
[2026-10-28 01:04:19,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:04:19,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:04:19,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:04:19,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:04:19,669.669 INFO    ] time= 28/10/2026 01:04:19
[2026-10-28 01:04:19,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:04:19,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:04:19,820.820 INFO    ] No existing commands found in stream
[2026-10-28 01:04:24,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:04:24,848.848 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-28 01:04:28,572.572 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:04:28,574.574 INFO    ] Checking for system updates...
[2026-10-28 01:04:28,610.610 INFO    ] 200
[2026-10-28 01:04:28,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:04:28,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:04:28,666.666 INFO    ] No update needed
[2026-10-28 01:04:28,669.669 INFO    ] Checking for camera pi updates...
[2026-10-28 01:04:28,702.702 INFO    ] 200
[2026-10-28 01:04:28,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:04:28,746.746 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:04:28,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:04:28,851.851 INFO    ] No camera update needed
[2026-10-28 01:04:28,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:04:28,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:04:28,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:04:28,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:04:30,910.910 INFO    ] ================================================
[2026-10-28 01:04:30,925.925 INFO    ] Launching Daemon at Wed Oct 28 01:04:30 IST 2026
[2026-10-28 01:04:30,936.936 INFO    ] ================================================
[2026-10-28 01:04:31,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:04:31
[2026-10-28 01:04:32,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:04:32,719.719 INFO    ] Initializing speech engine...
[2026-10-28 01:04:32,733.733 INFO    ] 2026-10-28 01:04:32
[2026-10-28 01:04:33,022.022 INFO    ] 2026-10-28 01:04:33
[2026-10-28 01:04:33,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:04:33,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:04:33,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:04:33,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:04:33,762.762 INFO    ] time= 28/10/2026 01:04:33
[2026-10-28 01:04:33,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:04:33,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:04:33,989.989 INFO    ] No existing commands found in stream
[2026-10-28 01:04:39,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:04:39,008.008 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-28 01:04:39,885.885 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:04:39,888.888 INFO    ] Checking for system updates...
[2026-10-28 01:04:39,926.926 INFO    ] 200
[2026-10-28 01:04:39,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:04:39,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:04:39,987.987 INFO    ] No update needed
[2026-10-28 01:04:39,990.990 INFO    ] Checking for camera pi updates...
[2026-10-28 01:04:40,025.025 INFO    ] 200
[2026-10-28 01:04:40,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:04:40,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:04:40,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:04:40,150.150 INFO    ] No camera update needed
[2026-10-28 01:04:40,153.153 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:04:40,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:04:40,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:04:40,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:04:42,211.211 INFO    ] ================================================
[2026-10-28 01:04:42,226.226 INFO    ] Launching Daemon at Wed Oct 28 01:04:42 IST 2026
[2026-10-28 01:04:42,237.237 INFO    ] ================================================
[2026-10-28 01:04:42,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:04:42
[2026-10-28 01:04:43,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:04:43,639.639 INFO    ] Initializing speech engine...
[2026-10-28 01:04:43,655.655 INFO    ] 2026-10-28 01:04:43
[2026-10-28 01:04:43,946.946 INFO    ] 2026-10-28 01:04:43
[2026-10-28 01:04:43,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:04:44,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:04:44,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:04:44,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:04:44,382.382 INFO    ] time= 28/10/2026 01:04:44
[2026-10-28 01:04:44,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:04:44,460.460 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:04:44,575.575 INFO    ] No existing commands found in stream
[2026-10-28 01:04:49,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:04:49,613.613 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-28 01:04:53,483.483 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:04:53,486.486 INFO    ] Checking for system updates...
[2026-10-28 01:04:53,525.525 INFO    ] 200
[2026-10-28 01:04:53,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:04:53,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:04:53,585.585 INFO    ] No update needed
[2026-10-28 01:04:53,588.588 INFO    ] Checking for camera pi updates...
[2026-10-28 01:04:53,622.622 INFO    ] 200
[2026-10-28 01:04:53,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:04:53,664.664 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:04:53,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:04:53,746.746 INFO    ] No camera update needed
[2026-10-28 01:04:53,748.748 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:04:53,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:04:53,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:04:53,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:04:55,803.803 INFO    ] ================================================
[2026-10-28 01:04:55,819.819 INFO    ] Launching Daemon at Wed Oct 28 01:04:55 IST 2026
[2026-10-28 01:04:55,831.831 INFO    ] ================================================
[2026-10-28 01:04:56,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:04:56
[2026-10-28 01:04:57,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:04:57,507.507 INFO    ] Initializing speech engine...
[2026-10-28 01:04:57,512.512 INFO    ] 2026-10-28 01:04:57
[2026-10-28 01:04:57,827.827 INFO    ] 2026-10-28 01:04:57
[2026-10-28 01:04:57,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:04:58,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:04:58,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:04:58,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:04:58,353.353 INFO    ] time= 28/10/2026 01:04:58
[2026-10-28 01:04:58,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:04:58,386.386 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:04:58,501.501 INFO    ] No existing commands found in stream
[2026-10-28 01:05:03,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:05:03,534.534 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-28 01:05:05,926.926 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:05:05,929.929 INFO    ] Checking for system updates...
[2026-10-28 01:05:05,971.971 INFO    ] 200
[2026-10-28 01:05:05,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:05:06,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:05:06,030.030 INFO    ] No update needed
[2026-10-28 01:05:06,033.033 INFO    ] Checking for camera pi updates...
[2026-10-28 01:05:06,069.069 INFO    ] 200
[2026-10-28 01:05:06,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:05:06,115.115 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:05:06,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:05:06,204.204 INFO    ] No camera update needed
[2026-10-28 01:05:06,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:05:06,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:05:06,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:05:06,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:05:08,265.265 INFO    ] ================================================
[2026-10-28 01:05:08,280.280 INFO    ] Launching Daemon at Wed Oct 28 01:05:08 IST 2026
[2026-10-28 01:05:08,291.291 INFO    ] ================================================
[2026-10-28 01:05:08,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:05:08
[2026-10-28 01:05:09,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:05:09,762.762 INFO    ] Initializing speech engine...
[2026-10-28 01:05:09,776.776 INFO    ] 2026-10-28 01:05:09
[2026-10-28 01:05:10,070.070 INFO    ] 2026-10-28 01:05:10
[2026-10-28 01:05:10,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:05:10,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:05:10,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:05:10,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:05:10,637.637 INFO    ] time= 28/10/2026 01:05:10
[2026-10-28 01:05:10,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:05:10,732.732 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:05:10,860.860 INFO    ] No existing commands found in stream
[2026-10-28 01:05:15,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:05:15,885.885 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-28 01:05:19,581.581 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:05:19,584.584 INFO    ] Checking for system updates...
[2026-10-28 01:05:19,625.625 INFO    ] 200
[2026-10-28 01:05:19,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:05:19,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:05:19,691.691 INFO    ] No update needed
[2026-10-28 01:05:19,693.693 INFO    ] Checking for camera pi updates...
[2026-10-28 01:05:19,731.731 INFO    ] 200
[2026-10-28 01:05:19,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:05:19,774.774 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:05:19,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:05:19,856.856 INFO    ] No camera update needed
[2026-10-28 01:05:19,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:05:19,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:05:19,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:05:19,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:05:21,913.913 INFO    ] ================================================
[2026-10-28 01:05:21,929.929 INFO    ] Launching Daemon at Wed Oct 28 01:05:21 IST 2026
[2026-10-28 01:05:21,940.940 INFO    ] ================================================
[2026-10-28 01:05:22,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:05:22
[2026-10-28 01:05:23,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:05:23,356.356 INFO    ] Initializing speech engine...
[2026-10-28 01:05:23,372.372 INFO    ] 2026-10-28 01:05:23
[2026-10-28 01:05:23,661.661 INFO    ] 2026-10-28 01:05:23
[2026-10-28 01:05:23,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:05:23,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:05:23,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:05:24,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:05:24,093.093 INFO    ] time= 28/10/2026 01:05:24
[2026-10-28 01:05:24,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:05:24,147.147 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:05:24,299.299 INFO    ] No existing commands found in stream
[2026-10-28 01:05:29,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:05:29,321.321 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-28 01:05:33,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:05:33,668.668 INFO    ] Checking for system updates...
[2026-10-28 01:05:33,709.709 INFO    ] 200
[2026-10-28 01:05:33,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:05:33,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:05:33,770.770 INFO    ] No update needed
[2026-10-28 01:05:33,773.773 INFO    ] Checking for camera pi updates...
[2026-10-28 01:05:33,808.808 INFO    ] 200
[2026-10-28 01:05:33,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:05:33,853.853 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:05:33,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:05:33,946.946 INFO    ] No camera update needed
[2026-10-28 01:05:33,949.949 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:05:33,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:05:33,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:05:33,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:05:36,005.005 INFO    ] ================================================
[2026-10-28 01:05:36,021.021 INFO    ] Launching Daemon at Wed Oct 28 01:05:36 IST 2026
[2026-10-28 01:05:36,032.032 INFO    ] ================================================
[2026-10-28 01:05:36,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:05:36
[2026-10-28 01:05:37,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:05:37,450.450 INFO    ] Initializing speech engine...
[2026-10-28 01:05:37,458.458 INFO    ] 2026-10-28 01:05:37
[2026-10-28 01:05:37,759.759 INFO    ] 2026-10-28 01:05:37
[2026-10-28 01:05:37,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:05:38,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:05:38,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:05:38,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:05:38,266.266 INFO    ] time= 28/10/2026 01:05:38
[2026-10-28 01:05:38,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:05:38,327.327 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:05:38,446.446 INFO    ] No existing commands found in stream
[2026-10-28 01:05:43,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:05:43,460.460 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 01:05:45,084.084 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:05:45,087.087 INFO    ] Checking for system updates...
[2026-10-28 01:05:45,134.134 INFO    ] 200
[2026-10-28 01:05:45,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:05:45,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:05:45,196.196 INFO    ] No update needed
[2026-10-28 01:05:45,198.198 INFO    ] Checking for camera pi updates...
[2026-10-28 01:05:45,231.231 INFO    ] 200
[2026-10-28 01:05:45,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:05:45,282.282 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:05:45,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:05:45,365.365 INFO    ] No camera update needed
[2026-10-28 01:05:45,367.367 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:05:45,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:05:45,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:05:45,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:05:47,422.422 INFO    ] ================================================
[2026-10-28 01:05:47,437.437 INFO    ] Launching Daemon at Wed Oct 28 01:05:47 IST 2026
[2026-10-28 01:05:47,449.449 INFO    ] ================================================
[2026-10-28 01:05:48,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:05:48
[2026-10-28 01:05:48,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:05:48,854.854 INFO    ] Initializing speech engine...
[2026-10-28 01:05:48,860.860 INFO    ] 2026-10-28 01:05:48
[2026-10-28 01:05:49,156.156 INFO    ] 2026-10-28 01:05:49
[2026-10-28 01:05:49,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:05:49,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:05:49,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:05:49,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:05:49,658.658 INFO    ] time= 28/10/2026 01:05:49
[2026-10-28 01:05:49,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:05:49,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:05:49,863.863 INFO    ] No existing commands found in stream
[2026-10-28 01:05:54,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:05:54,877.877 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-28 01:05:56,687.687 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:05:56,690.690 INFO    ] Checking for system updates...
[2026-10-28 01:05:56,733.733 INFO    ] 200
[2026-10-28 01:05:56,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:05:56,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:05:56,805.805 INFO    ] No update needed
[2026-10-28 01:05:56,808.808 INFO    ] Checking for camera pi updates...
[2026-10-28 01:05:56,852.852 INFO    ] 200
[2026-10-28 01:05:56,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:05:56,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:05:57,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:05:57,038.038 INFO    ] No camera update needed
[2026-10-28 01:05:57,041.041 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:05:57,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:05:57,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:05:57,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:05:59,093.093 INFO    ] ================================================
[2026-10-28 01:05:59,109.109 INFO    ] Launching Daemon at Wed Oct 28 01:05:59 IST 2026
[2026-10-28 01:05:59,121.121 INFO    ] ================================================
[2026-10-28 01:05:59,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:05:59
[2026-10-28 01:06:00,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:06:00,750.750 INFO    ] Initializing speech engine...
[2026-10-28 01:06:00,765.765 INFO    ] 2026-10-28 01:06:00
[2026-10-28 01:06:01,046.046 INFO    ] 2026-10-28 01:06:01
[2026-10-28 01:06:01,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:06:01,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:06:01,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:06:01,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:06:01,659.659 INFO    ] time= 28/10/2026 01:06:01
[2026-10-28 01:06:01,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:06:01,739.739 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:06:01,873.873 INFO    ] No existing commands found in stream
[2026-10-28 01:06:06,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:06:06,909.909 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-28 01:06:10,294.294 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:06:10,297.297 INFO    ] Checking for system updates...
[2026-10-28 01:06:10,332.332 INFO    ] 200
[2026-10-28 01:06:10,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:06:10,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:06:10,388.388 INFO    ] No update needed
[2026-10-28 01:06:10,391.391 INFO    ] Checking for camera pi updates...
[2026-10-28 01:06:10,424.424 INFO    ] 200
[2026-10-28 01:06:10,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:06:10,474.474 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:06:10,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:06:10,559.559 INFO    ] No camera update needed
[2026-10-28 01:06:10,561.561 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:06:10,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:06:10,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:06:10,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:06:12,616.616 INFO    ] ================================================
[2026-10-28 01:06:12,631.631 INFO    ] Launching Daemon at Wed Oct 28 01:06:12 IST 2026
[2026-10-28 01:06:12,643.643 INFO    ] ================================================
[2026-10-28 01:06:13,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:06:13
[2026-10-28 01:06:13,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:06:14,070.070 INFO    ] Initializing speech engine...
[2026-10-28 01:06:14,077.077 INFO    ] 2026-10-28 01:06:14
[2026-10-28 01:06:14,328.328 INFO    ] 2026-10-28 01:06:14
[2026-10-28 01:06:14,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:06:14,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:06:14,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:06:14,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:06:14,888.888 INFO    ] time= 28/10/2026 01:06:14
[2026-10-28 01:06:14,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:06:14,925.925 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:06:15,051.051 INFO    ] No existing commands found in stream
[2026-10-28 01:06:20,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:06:20,089.089 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-28 01:06:23,389.389 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:06:23,392.392 INFO    ] Checking for system updates...
[2026-10-28 01:06:23,427.427 INFO    ] 200
[2026-10-28 01:06:23,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:06:23,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:06:23,484.484 INFO    ] No update needed
[2026-10-28 01:06:23,487.487 INFO    ] Checking for camera pi updates...
[2026-10-28 01:06:23,520.520 INFO    ] 200
[2026-10-28 01:06:23,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:06:23,562.562 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:06:23,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:06:23,743.743 INFO    ] No camera update needed
[2026-10-28 01:06:23,745.745 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:06:23,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:06:23,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:06:23,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:06:25,803.803 INFO    ] ================================================
[2026-10-28 01:06:25,818.818 INFO    ] Launching Daemon at Wed Oct 28 01:06:25 IST 2026
[2026-10-28 01:06:25,829.829 INFO    ] ================================================
[2026-10-28 01:06:26,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:06:26
[2026-10-28 01:06:26,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:06:27,271.271 INFO    ] Initializing speech engine...
[2026-10-28 01:06:27,280.280 INFO    ] 2026-10-28 01:06:27
[2026-10-28 01:06:27,540.540 INFO    ] 2026-10-28 01:06:27
[2026-10-28 01:06:27,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:06:27,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:06:27,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:06:28,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:06:28,081.081 INFO    ] time= 28/10/2026 01:06:28
[2026-10-28 01:06:28,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:06:28,111.111 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:06:28,234.234 INFO    ] No existing commands found in stream
[2026-10-28 01:06:33,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:06:33,261.261 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-28 01:06:34,443.443 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:06:34,446.446 INFO    ] Checking for system updates...
[2026-10-28 01:06:34,482.482 INFO    ] 200
[2026-10-28 01:06:34,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:06:34,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:06:34,540.540 INFO    ] No update needed
[2026-10-28 01:06:34,542.542 INFO    ] Checking for camera pi updates...
[2026-10-28 01:06:34,576.576 INFO    ] 200
[2026-10-28 01:06:34,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:06:34,620.620 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:06:34,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:06:34,700.700 INFO    ] No camera update needed
[2026-10-28 01:06:34,703.703 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:06:34,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:06:34,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:06:34,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:06:36,755.755 INFO    ] ================================================
[2026-10-28 01:06:36,770.770 INFO    ] Launching Daemon at Wed Oct 28 01:06:36 IST 2026
[2026-10-28 01:06:36,781.781 INFO    ] ================================================
[2026-10-28 01:06:37,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:06:37
[2026-10-28 01:06:37,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:06:38,262.262 INFO    ] Initializing speech engine...
[2026-10-28 01:06:38,270.270 INFO    ] 2026-10-28 01:06:38
[2026-10-28 01:06:38,594.594 INFO    ] 2026-10-28 01:06:38
[2026-10-28 01:06:38,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:06:38,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:06:38,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:06:39,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:06:39,268.268 INFO    ] time= 28/10/2026 01:06:39
[2026-10-28 01:06:39,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:06:39,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:06:39,532.532 INFO    ] No existing commands found in stream
[2026-10-28 01:06:44,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:06:44,554.554 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-28 01:06:45,672.672 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:06:45,675.675 INFO    ] Checking for system updates...
[2026-10-28 01:06:45,718.718 INFO    ] 200
[2026-10-28 01:06:45,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:06:45,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:06:45,784.784 INFO    ] No update needed
[2026-10-28 01:06:45,786.786 INFO    ] Checking for camera pi updates...
[2026-10-28 01:06:45,819.819 INFO    ] 200
[2026-10-28 01:06:45,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:06:45,862.862 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:06:45,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:06:45,948.948 INFO    ] No camera update needed
[2026-10-28 01:06:45,951.951 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:06:45,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:06:45,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:06:45,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:06:48,003.003 INFO    ] ================================================
[2026-10-28 01:06:48,018.018 INFO    ] Launching Daemon at Wed Oct 28 01:06:48 IST 2026
[2026-10-28 01:06:48,028.028 INFO    ] ================================================
[2026-10-28 01:06:48,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:06:48
[2026-10-28 01:06:49,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:06:49,435.435 INFO    ] Initializing speech engine...
[2026-10-28 01:06:49,453.453 INFO    ] 2026-10-28 01:06:49
[2026-10-28 01:06:49,703.703 INFO    ] 2026-10-28 01:06:49
[2026-10-28 01:06:49,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:06:50,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:06:50,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:06:50,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:06:50,273.273 INFO    ] time= 28/10/2026 01:06:50
[2026-10-28 01:06:50,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:06:50,314.314 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:06:50,440.440 INFO    ] No existing commands found in stream
[2026-10-28 01:06:55,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:06:55,468.468 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-28 01:06:59,021.021 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:06:59,023.023 INFO    ] Checking for system updates...
[2026-10-28 01:06:59,063.063 INFO    ] 200
[2026-10-28 01:06:59,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:06:59,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:06:59,120.120 INFO    ] No update needed
[2026-10-28 01:06:59,123.123 INFO    ] Checking for camera pi updates...
[2026-10-28 01:06:59,160.160 INFO    ] 200
[2026-10-28 01:06:59,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:06:59,208.208 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:06:59,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:06:59,290.290 INFO    ] No camera update needed
[2026-10-28 01:06:59,293.293 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:06:59,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:06:59,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:06:59,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:07:01,346.346 INFO    ] ================================================
[2026-10-28 01:07:01,361.361 INFO    ] Launching Daemon at Wed Oct 28 01:07:01 IST 2026
[2026-10-28 01:07:01,372.372 INFO    ] ================================================
[2026-10-28 01:07:02,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:07:02
[2026-10-28 01:07:02,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:07:03,296.296 INFO    ] Initializing speech engine...
[2026-10-28 01:07:03,302.302 INFO    ] 2026-10-28 01:07:03
[2026-10-28 01:07:03,591.591 INFO    ] 2026-10-28 01:07:03
[2026-10-28 01:07:03,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:07:03,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:07:03,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:07:04,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:07:04,124.124 INFO    ] time= 28/10/2026 01:07:04
[2026-10-28 01:07:04,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:07:04,233.233 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:07:04,385.385 INFO    ] No existing commands found in stream
[2026-10-28 01:07:09,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:07:09,413.413 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-28 01:07:11,887.887 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:07:11,890.890 INFO    ] Checking for system updates...
[2026-10-28 01:07:11,927.927 INFO    ] 200
[2026-10-28 01:07:11,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:07:11,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:07:11,995.995 INFO    ] No update needed
[2026-10-28 01:07:11,998.998 INFO    ] Checking for camera pi updates...
[2026-10-28 01:07:12,037.037 INFO    ] 200
[2026-10-28 01:07:12,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:07:12,086.086 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:07:12,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:07:12,181.181 INFO    ] No camera update needed
[2026-10-28 01:07:12,184.184 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:07:12,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:07:12,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:07:12,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:07:14,239.239 INFO    ] ================================================
[2026-10-28 01:07:14,254.254 INFO    ] Launching Daemon at Wed Oct 28 01:07:14 IST 2026
[2026-10-28 01:07:14,265.265 INFO    ] ================================================
[2026-10-28 01:07:14,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:07:14
[2026-10-28 01:07:15,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:07:15,930.930 INFO    ] Initializing speech engine...
[2026-10-28 01:07:15,944.944 INFO    ] 2026-10-28 01:07:15
[2026-10-28 01:07:16,262.262 INFO    ] 2026-10-28 01:07:16
[2026-10-28 01:07:16,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:07:16,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:07:16,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:07:16,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:07:16,932.932 INFO    ] time= 28/10/2026 01:07:16
[2026-10-28 01:07:16,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:07:17,040.040 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:07:17,193.193 INFO    ] No existing commands found in stream
[2026-10-28 01:07:22,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:07:22,215.215 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-28 01:07:25,165.165 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:07:25,168.168 INFO    ] Checking for system updates...
[2026-10-28 01:07:25,211.211 INFO    ] 200
[2026-10-28 01:07:25,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:07:25,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:07:25,280.280 INFO    ] No update needed
[2026-10-28 01:07:25,283.283 INFO    ] Checking for camera pi updates...
[2026-10-28 01:07:25,323.323 INFO    ] 200
[2026-10-28 01:07:25,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:07:25,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:07:25,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:07:25,465.465 INFO    ] No camera update needed
[2026-10-28 01:07:25,468.468 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:07:25,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:07:25,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:07:25,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:07:27,525.525 INFO    ] ================================================
[2026-10-28 01:07:27,539.539 INFO    ] Launching Daemon at Wed Oct 28 01:07:27 IST 2026
[2026-10-28 01:07:27,550.550 INFO    ] ================================================
[2026-10-28 01:07:28,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:07:28
[2026-10-28 01:07:28,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:07:28,953.953 INFO    ] Initializing speech engine...
[2026-10-28 01:07:28,970.970 INFO    ] 2026-10-28 01:07:28
[2026-10-28 01:07:29,225.225 INFO    ] 2026-10-28 01:07:29
[2026-10-28 01:07:29,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:07:29,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:07:29,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:07:29,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:07:29,792.792 INFO    ] time= 28/10/2026 01:07:29
[2026-10-28 01:07:29,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:07:29,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:07:29,959.959 INFO    ] No existing commands found in stream
[2026-10-28 01:07:34,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:07:34,996.996 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 01:07:35,786.786 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:07:35,789.789 INFO    ] Checking for system updates...
[2026-10-28 01:07:35,832.832 INFO    ] 200
[2026-10-28 01:07:35,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:07:35,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:07:35,898.898 INFO    ] No update needed
[2026-10-28 01:07:35,900.900 INFO    ] Checking for camera pi updates...
[2026-10-28 01:07:35,946.946 INFO    ] 200
[2026-10-28 01:07:35,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:07:35,989.989 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:07:36,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:07:36,071.071 INFO    ] No camera update needed
[2026-10-28 01:07:36,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:07:36,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:07:36,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:07:36,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:07:38,126.126 INFO    ] ================================================
[2026-10-28 01:07:38,141.141 INFO    ] Launching Daemon at Wed Oct 28 01:07:38 IST 2026
[2026-10-28 01:07:38,152.152 INFO    ] ================================================
[2026-10-28 01:07:38,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:07:38
[2026-10-28 01:07:39,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:07:39,572.572 INFO    ] Initializing speech engine...
[2026-10-28 01:07:39,579.579 INFO    ] 2026-10-28 01:07:39
[2026-10-28 01:07:39,883.883 INFO    ] 2026-10-28 01:07:39
[2026-10-28 01:07:39,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:07:40,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:07:40,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:07:40,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:07:40,315.315 INFO    ] time= 28/10/2026 01:07:40
[2026-10-28 01:07:40,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:07:40,327.327 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:07:40,455.455 INFO    ] No existing commands found in stream
[2026-10-28 01:07:45,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:07:45,488.488 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-28 01:07:48,776.776 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:07:48,779.779 INFO    ] Checking for system updates...
[2026-10-28 01:07:48,815.815 INFO    ] 200
[2026-10-28 01:07:48,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:07:48,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:07:48,872.872 INFO    ] No update needed
[2026-10-28 01:07:48,875.875 INFO    ] Checking for camera pi updates...
[2026-10-28 01:07:48,908.908 INFO    ] 200
[2026-10-28 01:07:48,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:07:48,956.956 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:07:49,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:07:49,042.042 INFO    ] No camera update needed
[2026-10-28 01:07:49,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:07:49,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:07:49,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:07:49,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:07:51,103.103 INFO    ] ================================================
[2026-10-28 01:07:51,119.119 INFO    ] Launching Daemon at Wed Oct 28 01:07:51 IST 2026
[2026-10-28 01:07:51,130.130 INFO    ] ================================================
[2026-10-28 01:07:51,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:07:51
[2026-10-28 01:07:52,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:07:52,577.577 INFO    ] Initializing speech engine...
[2026-10-28 01:07:52,586.586 INFO    ] 2026-10-28 01:07:52
[2026-10-28 01:07:52,889.889 INFO    ] 2026-10-28 01:07:52
[2026-10-28 01:07:52,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:07:53,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:07:53,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:07:53,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:07:53,401.401 INFO    ] time= 28/10/2026 01:07:53
[2026-10-28 01:07:53,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:07:53,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:07:53,625.625 INFO    ] No existing commands found in stream
[2026-10-28 01:07:58,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:07:58,660.660 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-28 01:08:01,347.347 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:08:01,350.350 INFO    ] Checking for system updates...
[2026-10-28 01:08:01,406.406 INFO    ] 200
[2026-10-28 01:08:01,408.408 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 01:08:01,411.411 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-28 01:08:01,414.414 INFO    ] Checking for camera pi updates...
[2026-10-28 01:08:01,457.457 INFO    ] 200
[2026-10-28 01:08:01,459.459 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 01:08:01,462.462 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-28 01:08:01,465.465 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:08:01,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:08:01,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:08:01,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:08:03,524.524 INFO    ] ================================================
[2026-10-28 01:08:03,547.547 INFO    ] Launching Daemon at Wed Oct 28 01:08:03 IST 2026
[2026-10-28 01:08:03,562.562 INFO    ] ================================================
[2026-10-28 01:08:04,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:08:04
[2026-10-28 01:08:04,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:08:05,044.044 INFO    ] Initializing speech engine...
[2026-10-28 01:08:05,052.052 INFO    ] 2026-10-28 01:08:05
[2026-10-28 01:08:05,352.352 INFO    ] 2026-10-28 01:08:05
[2026-10-28 01:08:05,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:08:05,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:08:05,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:08:05,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:08:05,997.997 INFO    ] time= 28/10/2026 01:08:05
[2026-10-28 01:08:06,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:08:06,025.025 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:08:06,139.139 INFO    ] No existing commands found in stream
[2026-10-28 01:08:11,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:08:11,164.164 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-28 01:08:14,146.146 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:08:14,148.148 INFO    ] Checking for system updates...
[2026-10-28 01:08:14,188.188 INFO    ] 200
[2026-10-28 01:08:14,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:08:14,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:08:14,246.246 INFO    ] No update needed
[2026-10-28 01:08:14,248.248 INFO    ] Checking for camera pi updates...
[2026-10-28 01:08:14,285.285 INFO    ] 200
[2026-10-28 01:08:14,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:08:14,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:08:14,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:08:14,411.411 INFO    ] No camera update needed
[2026-10-28 01:08:14,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:08:14,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:08:14,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:08:14,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:08:16,470.470 INFO    ] ================================================
[2026-10-28 01:08:16,486.486 INFO    ] Launching Daemon at Wed Oct 28 01:08:16 IST 2026
[2026-10-28 01:08:16,497.497 INFO    ] ================================================
[2026-10-28 01:08:17,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:08:17
[2026-10-28 01:08:17,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:08:18,131.131 INFO    ] Initializing speech engine...
[2026-10-28 01:08:18,138.138 INFO    ] 2026-10-28 01:08:18
[2026-10-28 01:08:18,456.456 INFO    ] 2026-10-28 01:08:18
[2026-10-28 01:08:18,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:08:18,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:08:18,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:08:19,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:08:19,148.148 INFO    ] time= 28/10/2026 01:08:19
[2026-10-28 01:08:19,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:08:19,220.220 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:08:19,347.347 INFO    ] No existing commands found in stream
[2026-10-28 01:08:24,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:08:24,377.377 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-28 01:08:25,944.944 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:08:25,947.947 INFO    ] Checking for system updates...
[2026-10-28 01:08:25,984.984 INFO    ] 200
[2026-10-28 01:08:25,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:08:26,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:08:26,051.051 INFO    ] No update needed
[2026-10-28 01:08:26,054.054 INFO    ] Checking for camera pi updates...
[2026-10-28 01:08:26,089.089 INFO    ] 200
[2026-10-28 01:08:26,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:08:26,138.138 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:08:26,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:08:26,320.320 INFO    ] No camera update needed
[2026-10-28 01:08:26,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:08:26,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:08:26,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:08:26,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:08:28,376.376 INFO    ] ================================================
[2026-10-28 01:08:28,392.392 INFO    ] Launching Daemon at Wed Oct 28 01:08:28 IST 2026
[2026-10-28 01:08:28,403.403 INFO    ] ================================================
[2026-10-28 01:08:28,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:08:28
[2026-10-28 01:08:29,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:08:29,813.813 INFO    ] Initializing speech engine...
[2026-10-28 01:08:29,819.819 INFO    ] 2026-10-28 01:08:29
[2026-10-28 01:08:30,092.092 INFO    ] 2026-10-28 01:08:30
[2026-10-28 01:08:30,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:08:30,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:08:30,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:08:30,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:08:30,660.660 INFO    ] time= 28/10/2026 01:08:30
[2026-10-28 01:08:30,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:08:30,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:08:30,817.817 INFO    ] No existing commands found in stream
[2026-10-28 01:08:35,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:08:35,833.833 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-28 01:08:40,176.176 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:08:40,178.178 INFO    ] Checking for system updates...
[2026-10-28 01:08:40,215.215 INFO    ] 200
[2026-10-28 01:08:40,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:08:40,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:08:40,275.275 INFO    ] No update needed
[2026-10-28 01:08:40,278.278 INFO    ] Checking for camera pi updates...
[2026-10-28 01:08:40,316.316 INFO    ] 200
[2026-10-28 01:08:40,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:08:40,366.366 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:08:40,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:08:40,453.453 INFO    ] No camera update needed
[2026-10-28 01:08:40,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:08:40,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:08:40,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:08:40,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:08:42,514.514 INFO    ] ================================================
[2026-10-28 01:08:42,529.529 INFO    ] Launching Daemon at Wed Oct 28 01:08:42 IST 2026
[2026-10-28 01:08:42,541.541 INFO    ] ================================================
[2026-10-28 01:08:43,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:08:43
[2026-10-28 01:08:43,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:08:43,956.956 INFO    ] Initializing speech engine...
[2026-10-28 01:08:43,966.966 INFO    ] 2026-10-28 01:08:43
[2026-10-28 01:08:44,211.211 INFO    ] 2026-10-28 01:08:44
[2026-10-28 01:08:44,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:08:44,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:08:44,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:08:44,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:08:44,768.768 INFO    ] time= 28/10/2026 01:08:44
[2026-10-28 01:08:44,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:08:44,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:08:44,945.945 INFO    ] No existing commands found in stream
[2026-10-28 01:08:49,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:08:49,978.978 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 01:08:52,544.544 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:08:52,547.547 INFO    ] Checking for system updates...
[2026-10-28 01:08:52,587.587 INFO    ] 200
[2026-10-28 01:08:52,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:08:52,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:08:52,652.652 INFO    ] No update needed
[2026-10-28 01:08:52,655.655 INFO    ] Checking for camera pi updates...
[2026-10-28 01:08:52,688.688 INFO    ] 200
[2026-10-28 01:08:52,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:08:52,737.737 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:08:52,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:08:52,829.829 INFO    ] No camera update needed
[2026-10-28 01:08:52,831.831 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:08:52,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:08:52,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:08:52,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:08:54,888.888 INFO    ] ================================================
[2026-10-28 01:08:54,903.903 INFO    ] Launching Daemon at Wed Oct 28 01:08:54 IST 2026
[2026-10-28 01:08:54,914.914 INFO    ] ================================================
[2026-10-28 01:08:55,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:08:55
[2026-10-28 01:08:56,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:08:56,332.332 INFO    ] Initializing speech engine...
[2026-10-28 01:08:56,341.341 INFO    ] 2026-10-28 01:08:56
[2026-10-28 01:08:56,606.606 INFO    ] 2026-10-28 01:08:56
[2026-10-28 01:08:56,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:08:56,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:08:57,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:08:57,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:08:57,192.192 INFO    ] time= 28/10/2026 01:08:57
[2026-10-28 01:08:57,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:08:57,248.248 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:08:57,393.393 INFO    ] No existing commands found in stream
[2026-10-28 01:09:02,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:09:02,406.406 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 01:09:03,989.989 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:09:03,993.993 INFO    ] Checking for system updates...
[2026-10-28 01:09:04,030.030 INFO    ] 200
[2026-10-28 01:09:04,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:09:04,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:09:04,090.090 INFO    ] No update needed
[2026-10-28 01:09:04,093.093 INFO    ] Checking for camera pi updates...
[2026-10-28 01:09:04,127.127 INFO    ] 200
[2026-10-28 01:09:04,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:09:04,171.171 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:09:04,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:09:04,258.258 INFO    ] No camera update needed
[2026-10-28 01:09:04,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:09:04,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:09:04,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:09:04,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:09:06,320.320 INFO    ] ================================================
[2026-10-28 01:09:06,336.336 INFO    ] Launching Daemon at Wed Oct 28 01:09:06 IST 2026
[2026-10-28 01:09:06,348.348 INFO    ] ================================================
[2026-10-28 01:09:06,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:09:06
[2026-10-28 01:09:07,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:09:07,768.768 INFO    ] Initializing speech engine...
[2026-10-28 01:09:07,776.776 INFO    ] 2026-10-28 01:09:07
[2026-10-28 01:09:08,023.023 INFO    ] 2026-10-28 01:09:08
[2026-10-28 01:09:08,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:09:08,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:09:08,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:09:08,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:09:08,578.578 INFO    ] time= 28/10/2026 01:09:08
[2026-10-28 01:09:08,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:09:08,604.604 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:09:08,785.785 INFO    ] No existing commands found in stream
[2026-10-28 01:09:13,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:09:13,818.818 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 01:09:16,170.170 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:09:16,173.173 INFO    ] Checking for system updates...
[2026-10-28 01:09:16,210.210 INFO    ] 200
[2026-10-28 01:09:16,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:09:16,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:09:16,271.271 INFO    ] No update needed
[2026-10-28 01:09:16,273.273 INFO    ] Checking for camera pi updates...
[2026-10-28 01:09:16,307.307 INFO    ] 200
[2026-10-28 01:09:16,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:09:16,355.355 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:09:16,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:09:16,435.435 INFO    ] No camera update needed
[2026-10-28 01:09:16,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:09:16,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:09:16,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:09:16,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:09:18,493.493 INFO    ] ================================================
[2026-10-28 01:09:18,509.509 INFO    ] Launching Daemon at Wed Oct 28 01:09:18 IST 2026
[2026-10-28 01:09:18,521.521 INFO    ] ================================================
[2026-10-28 01:09:19,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:09:19
[2026-10-28 01:09:19,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:09:19,939.939 INFO    ] Initializing speech engine...
[2026-10-28 01:09:19,950.950 INFO    ] 2026-10-28 01:09:19
[2026-10-28 01:09:20,194.194 INFO    ] 2026-10-28 01:09:20
[2026-10-28 01:09:20,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:09:20,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:09:20,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:09:20,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:09:20,764.764 INFO    ] time= 28/10/2026 01:09:20
[2026-10-28 01:09:20,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:09:20,788.788 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:09:20,925.925 INFO    ] No existing commands found in stream
[2026-10-28 01:09:25,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:09:25,957.957 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-28 01:09:27,187.187 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:09:27,190.190 INFO    ] Checking for system updates...
[2026-10-28 01:09:27,230.230 INFO    ] 200
[2026-10-28 01:09:27,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:09:27,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:09:27,288.288 INFO    ] No update needed
[2026-10-28 01:09:27,291.291 INFO    ] Checking for camera pi updates...
[2026-10-28 01:09:27,326.326 INFO    ] 200
[2026-10-28 01:09:27,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:09:27,376.376 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:09:27,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:09:27,472.472 INFO    ] No camera update needed
[2026-10-28 01:09:27,475.475 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:09:27,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:09:27,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:09:27,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:09:29,533.533 INFO    ] ================================================
[2026-10-28 01:09:29,549.549 INFO    ] Launching Daemon at Wed Oct 28 01:09:29 IST 2026
[2026-10-28 01:09:29,561.561 INFO    ] ================================================
[2026-10-28 01:09:30,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:09:30
[2026-10-28 01:09:30,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:09:31,020.020 INFO    ] Initializing speech engine...
[2026-10-28 01:09:31,027.027 INFO    ] 2026-10-28 01:09:31
[2026-10-28 01:09:31,287.287 INFO    ] 2026-10-28 01:09:31
[2026-10-28 01:09:31,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:09:31,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:09:31,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:09:31,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:09:31,832.832 INFO    ] time= 28/10/2026 01:09:31
[2026-10-28 01:09:31,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:09:31,877.877 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:09:32,071.071 INFO    ] No existing commands found in stream
[2026-10-28 01:09:37,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:09:37,105.105 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-28 01:09:41,488.488 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:09:41,490.490 INFO    ] Checking for system updates...
[2026-10-28 01:09:41,526.526 INFO    ] 200
[2026-10-28 01:09:41,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:09:41,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:09:41,585.585 INFO    ] No update needed
[2026-10-28 01:09:41,587.587 INFO    ] Checking for camera pi updates...
[2026-10-28 01:09:41,624.624 INFO    ] 200
[2026-10-28 01:09:41,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:09:41,667.667 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:09:41,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:09:41,751.751 INFO    ] No camera update needed
[2026-10-28 01:09:41,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:09:41,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:09:41,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:09:41,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:09:43,813.813 INFO    ] ================================================
[2026-10-28 01:09:43,829.829 INFO    ] Launching Daemon at Wed Oct 28 01:09:43 IST 2026
[2026-10-28 01:09:43,840.840 INFO    ] ================================================
[2026-10-28 01:09:44,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:09:44
[2026-10-28 01:09:45,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:09:45,289.289 INFO    ] Initializing speech engine...
[2026-10-28 01:09:45,296.296 INFO    ] 2026-10-28 01:09:45
[2026-10-28 01:09:45,554.554 INFO    ] 2026-10-28 01:09:45
[2026-10-28 01:09:45,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:09:45,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:09:45,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:09:46,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:09:46,148.148 INFO    ] time= 28/10/2026 01:09:46
[2026-10-28 01:09:46,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:09:46,245.245 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:09:46,353.353 INFO    ] No existing commands found in stream
[2026-10-28 01:09:51,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:09:51,380.380 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-28 01:09:52,188.188 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:09:52,190.190 INFO    ] Checking for system updates...
[2026-10-28 01:09:52,227.227 INFO    ] 200
[2026-10-28 01:09:52,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:09:52,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:09:52,287.287 INFO    ] No update needed
[2026-10-28 01:09:52,290.290 INFO    ] Checking for camera pi updates...
[2026-10-28 01:09:52,325.325 INFO    ] 200
[2026-10-28 01:09:52,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:09:52,370.370 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:09:52,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:09:52,456.456 INFO    ] No camera update needed
[2026-10-28 01:09:52,459.459 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:09:52,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:09:52,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:09:52,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:09:54,517.517 INFO    ] ================================================
[2026-10-28 01:09:54,533.533 INFO    ] Launching Daemon at Wed Oct 28 01:09:54 IST 2026
[2026-10-28 01:09:54,544.544 INFO    ] ================================================
[2026-10-28 01:09:55,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:09:55
[2026-10-28 01:09:55,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:09:56,017.017 INFO    ] Initializing speech engine...
[2026-10-28 01:09:56,028.028 INFO    ] 2026-10-28 01:09:56
[2026-10-28 01:09:56,290.290 INFO    ] 2026-10-28 01:09:56
[2026-10-28 01:09:56,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:09:56,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:09:56,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:09:56,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:09:56,882.882 INFO    ] time= 28/10/2026 01:09:56
[2026-10-28 01:09:56,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:09:56,899.899 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:09:57,030.030 INFO    ] No existing commands found in stream
[2026-10-28 01:10:02,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:10:02,061.061 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-28 01:10:07,290.290 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:10:07,293.293 INFO    ] Checking for system updates...
[2026-10-28 01:10:07,331.331 INFO    ] 200
[2026-10-28 01:10:07,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:10:07,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:10:07,390.390 INFO    ] No update needed
[2026-10-28 01:10:07,393.393 INFO    ] Checking for camera pi updates...
[2026-10-28 01:10:07,432.432 INFO    ] 200
[2026-10-28 01:10:07,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:10:07,477.477 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:10:07,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:10:07,564.564 INFO    ] No camera update needed
[2026-10-28 01:10:07,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:10:07,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:10:07,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:10:07,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:10:09,625.625 INFO    ] ================================================
[2026-10-28 01:10:09,640.640 INFO    ] Launching Daemon at Wed Oct 28 01:10:09 IST 2026
[2026-10-28 01:10:09,652.652 INFO    ] ================================================
[2026-10-28 01:10:10,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:10:10
[2026-10-28 01:10:10,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:10:11,110.110 INFO    ] Initializing speech engine...
[2026-10-28 01:10:11,135.135 INFO    ] 2026-10-28 01:10:11
[2026-10-28 01:10:11,414.414 INFO    ] 2026-10-28 01:10:11
[2026-10-28 01:10:11,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:10:11,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:10:11,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:10:11,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:10:11,941.941 INFO    ] time= 28/10/2026 01:10:11
[2026-10-28 01:10:11,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:10:12,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:10:12,153.153 INFO    ] No existing commands found in stream
[2026-10-28 01:10:17,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:10:17,193.193 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 01:10:17,753.753 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:10:17,756.756 INFO    ] Checking for system updates...
[2026-10-28 01:10:17,791.791 INFO    ] 200
[2026-10-28 01:10:17,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:10:17,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:10:17,849.849 INFO    ] No update needed
[2026-10-28 01:10:17,851.851 INFO    ] Checking for camera pi updates...
[2026-10-28 01:10:17,884.884 INFO    ] 200
[2026-10-28 01:10:17,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:10:17,929.929 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:10:18,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:10:18,021.021 INFO    ] No camera update needed
[2026-10-28 01:10:18,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:10:18,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:10:18,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:10:18,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:10:20,081.081 INFO    ] ================================================
[2026-10-28 01:10:20,097.097 INFO    ] Launching Daemon at Wed Oct 28 01:10:20 IST 2026
[2026-10-28 01:10:20,109.109 INFO    ] ================================================
[2026-10-28 01:10:20,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:10:20
[2026-10-28 01:10:21,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:10:21,538.538 INFO    ] Initializing speech engine...
[2026-10-28 01:10:21,546.546 INFO    ] 2026-10-28 01:10:21
[2026-10-28 01:10:21,797.797 INFO    ] 2026-10-28 01:10:21
[2026-10-28 01:10:21,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:10:22,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:10:22,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:10:22,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:10:22,273.273 INFO    ] time= 28/10/2026 01:10:22
[2026-10-28 01:10:22,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:10:22,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:10:22,494.494 INFO    ] No existing commands found in stream
[2026-10-28 01:10:27,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:10:27,522.522 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-28 01:10:31,873.873 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:10:31,876.876 INFO    ] Checking for system updates...
[2026-10-28 01:10:31,912.912 INFO    ] 200
[2026-10-28 01:10:31,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:10:31,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:10:31,985.985 INFO    ] No update needed
[2026-10-28 01:10:31,988.988 INFO    ] Checking for camera pi updates...
[2026-10-28 01:10:32,023.023 INFO    ] 200
[2026-10-28 01:10:32,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:10:32,073.073 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:10:32,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:10:32,285.285 INFO    ] No camera update needed
[2026-10-28 01:10:32,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:10:32,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:10:32,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:10:32,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:10:34,350.350 INFO    ] ================================================
[2026-10-28 01:10:34,366.366 INFO    ] Launching Daemon at Wed Oct 28 01:10:34 IST 2026
[2026-10-28 01:10:34,377.377 INFO    ] ================================================
[2026-10-28 01:10:34,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:10:34
[2026-10-28 01:10:35,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:10:35,802.802 INFO    ] Initializing speech engine...
[2026-10-28 01:10:35,811.811 INFO    ] 2026-10-28 01:10:35
[2026-10-28 01:10:36,063.063 INFO    ] 2026-10-28 01:10:36
[2026-10-28 01:10:36,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:10:36,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:10:36,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:10:36,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:10:36,632.632 INFO    ] time= 28/10/2026 01:10:36
[2026-10-28 01:10:36,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:10:36,659.659 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:10:36,792.792 INFO    ] No existing commands found in stream
[2026-10-28 01:10:41,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:10:41,809.809 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-28 01:10:44,768.768 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:10:44,770.770 INFO    ] Checking for system updates...
[2026-10-28 01:10:44,813.813 INFO    ] 200
[2026-10-28 01:10:44,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:10:44,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:10:44,871.871 INFO    ] No update needed
[2026-10-28 01:10:44,873.873 INFO    ] Checking for camera pi updates...
[2026-10-28 01:10:44,907.907 INFO    ] 200
[2026-10-28 01:10:44,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:10:44,949.949 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:10:45,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:10:45,032.032 INFO    ] No camera update needed
[2026-10-28 01:10:45,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:10:45,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:10:45,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:10:45,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:10:47,091.091 INFO    ] ================================================
[2026-10-28 01:10:47,107.107 INFO    ] Launching Daemon at Wed Oct 28 01:10:47 IST 2026
[2026-10-28 01:10:47,118.118 INFO    ] ================================================
[2026-10-28 01:10:47,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:10:47
[2026-10-28 01:10:48,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:10:48,566.566 INFO    ] Initializing speech engine...
[2026-10-28 01:10:48,577.577 INFO    ] 2026-10-28 01:10:48
[2026-10-28 01:10:48,836.836 INFO    ] 2026-10-28 01:10:48
[2026-10-28 01:10:48,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:10:49,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:10:49,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:10:49,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:10:49,381.381 INFO    ] time= 28/10/2026 01:10:49
[2026-10-28 01:10:49,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:10:49,409.409 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:10:49,535.535 INFO    ] No existing commands found in stream
[2026-10-28 01:10:54,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:10:54,552.552 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-28 01:10:56,236.236 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:10:56,239.239 INFO    ] Checking for system updates...
[2026-10-28 01:10:56,275.275 INFO    ] 200
[2026-10-28 01:10:56,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:10:56,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:10:56,336.336 INFO    ] No update needed
[2026-10-28 01:10:56,338.338 INFO    ] Checking for camera pi updates...
[2026-10-28 01:10:56,372.372 INFO    ] 200
[2026-10-28 01:10:56,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:10:56,415.415 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:10:56,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:10:56,489.489 INFO    ] No camera update needed
[2026-10-28 01:10:56,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:10:56,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:10:56,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:10:56,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:10:58,548.548 INFO    ] ================================================
[2026-10-28 01:10:58,563.563 INFO    ] Launching Daemon at Wed Oct 28 01:10:58 IST 2026
[2026-10-28 01:10:58,574.574 INFO    ] ================================================
[2026-10-28 01:10:59,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:10:59
[2026-10-28 01:10:59,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:11:00,005.005 INFO    ] Initializing speech engine...
[2026-10-28 01:11:00,014.014 INFO    ] 2026-10-28 01:11:00
[2026-10-28 01:11:00,257.257 INFO    ] 2026-10-28 01:11:00
[2026-10-28 01:11:00,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:11:00,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:11:00,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:11:00,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:11:00,825.825 INFO    ] time= 28/10/2026 01:11:00
[2026-10-28 01:11:00,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:11:00,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:11:00,981.981 INFO    ] No existing commands found in stream
[2026-10-28 01:11:06,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:11:06,004.004 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-28 01:11:10,010.010 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:11:10,013.013 INFO    ] Checking for system updates...
[2026-10-28 01:11:10,052.052 INFO    ] 200
[2026-10-28 01:11:10,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:11:10,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:11:10,109.109 INFO    ] No update needed
[2026-10-28 01:11:10,112.112 INFO    ] Checking for camera pi updates...
[2026-10-28 01:11:10,146.146 INFO    ] 200
[2026-10-28 01:11:10,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:11:10,190.190 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:11:10,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:11:10,277.277 INFO    ] No camera update needed
[2026-10-28 01:11:10,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:11:10,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:11:10,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:11:10,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:11:12,336.336 INFO    ] ================================================
[2026-10-28 01:11:12,351.351 INFO    ] Launching Daemon at Wed Oct 28 01:11:12 IST 2026
[2026-10-28 01:11:12,362.362 INFO    ] ================================================
[2026-10-28 01:11:12,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:11:12
[2026-10-28 01:11:13,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:11:13,770.770 INFO    ] Initializing speech engine...
[2026-10-28 01:11:13,784.784 INFO    ] 2026-10-28 01:11:13
[2026-10-28 01:11:14,039.039 INFO    ] 2026-10-28 01:11:14
[2026-10-28 01:11:14,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:11:14,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:11:14,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:11:14,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:11:14,604.604 INFO    ] time= 28/10/2026 01:11:14
[2026-10-28 01:11:14,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:11:14,626.626 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:11:14,759.759 INFO    ] No existing commands found in stream
[2026-10-28 01:11:19,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:11:19,777.777 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-28 01:11:21,009.009 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:11:21,011.011 INFO    ] Checking for system updates...
[2026-10-28 01:11:21,047.047 INFO    ] 200
[2026-10-28 01:11:21,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:11:21,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:11:21,104.104 INFO    ] No update needed
[2026-10-28 01:11:21,106.106 INFO    ] Checking for camera pi updates...
[2026-10-28 01:11:21,139.139 INFO    ] 200
[2026-10-28 01:11:21,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:11:21,185.185 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:11:21,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:11:21,261.261 INFO    ] No camera update needed
[2026-10-28 01:11:21,263.263 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:11:21,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:11:21,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:11:21,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:11:23,317.317 INFO    ] ================================================
[2026-10-28 01:11:23,333.333 INFO    ] Launching Daemon at Wed Oct 28 01:11:23 IST 2026
[2026-10-28 01:11:23,343.343 INFO    ] ================================================
[2026-10-28 01:11:23,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:11:23
[2026-10-28 01:11:24,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:11:24,948.948 INFO    ] Initializing speech engine...
[2026-10-28 01:11:24,959.959 INFO    ] 2026-10-28 01:11:24
[2026-10-28 01:11:25,236.236 INFO    ] 2026-10-28 01:11:25
[2026-10-28 01:11:25,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:11:25,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:11:25,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:11:25,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:11:25,802.802 INFO    ] time= 28/10/2026 01:11:25
[2026-10-28 01:11:25,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:11:25,852.852 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:11:25,981.981 INFO    ] No existing commands found in stream
[2026-10-28 01:11:31,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:11:31,015.015 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-28 01:11:34,513.513 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:11:34,516.516 INFO    ] Checking for system updates...
[2026-10-28 01:11:34,553.553 INFO    ] 200
[2026-10-28 01:11:34,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:11:34,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:11:34,611.611 INFO    ] No update needed
[2026-10-28 01:11:34,614.614 INFO    ] Checking for camera pi updates...
[2026-10-28 01:11:34,647.647 INFO    ] 200
[2026-10-28 01:11:34,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:11:34,694.694 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:11:34,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:11:34,775.775 INFO    ] No camera update needed
[2026-10-28 01:11:34,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:11:34,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:11:34,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:11:34,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:11:36,831.831 INFO    ] ================================================
[2026-10-28 01:11:36,846.846 INFO    ] Launching Daemon at Wed Oct 28 01:11:36 IST 2026
[2026-10-28 01:11:36,857.857 INFO    ] ================================================
[2026-10-28 01:11:37,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:11:37
[2026-10-28 01:11:38,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:11:38,313.313 INFO    ] Initializing speech engine...
[2026-10-28 01:11:38,321.321 INFO    ] 2026-10-28 01:11:38
[2026-10-28 01:11:38,579.579 INFO    ] 2026-10-28 01:11:38
[2026-10-28 01:11:38,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:11:38,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:11:38,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:11:39,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:11:39,120.120 INFO    ] time= 28/10/2026 01:11:39
[2026-10-28 01:11:39,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:11:39,142.142 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:11:39,276.276 INFO    ] No existing commands found in stream
[2026-10-28 01:11:44,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:11:44,298.298 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-28 01:11:44,863.863 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:11:44,866.866 INFO    ] Checking for system updates...
[2026-10-28 01:11:44,902.902 INFO    ] 200
[2026-10-28 01:11:44,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:11:44,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:11:44,960.960 INFO    ] No update needed
[2026-10-28 01:11:44,962.962 INFO    ] Checking for camera pi updates...
[2026-10-28 01:11:44,996.996 INFO    ] 200
[2026-10-28 01:11:44,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:11:45,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:11:45,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:11:45,125.125 INFO    ] No camera update needed
[2026-10-28 01:11:45,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:11:45,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:11:45,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:11:45,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:11:47,182.182 INFO    ] ================================================
[2026-10-28 01:11:47,197.197 INFO    ] Launching Daemon at Wed Oct 28 01:11:47 IST 2026
[2026-10-28 01:11:47,207.207 INFO    ] ================================================
[2026-10-28 01:11:47,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:11:47
[2026-10-28 01:11:48,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:11:48,631.631 INFO    ] Initializing speech engine...
[2026-10-28 01:11:48,638.638 INFO    ] 2026-10-28 01:11:48
[2026-10-28 01:11:48,890.890 INFO    ] 2026-10-28 01:11:48
[2026-10-28 01:11:48,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:11:49,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:11:49,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:11:49,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:11:49,457.457 INFO    ] time= 28/10/2026 01:11:49
[2026-10-28 01:11:49,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:11:49,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:11:49,626.626 INFO    ] No existing commands found in stream
[2026-10-28 01:11:54,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:11:54,643.643 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-28 01:11:56,890.890 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:11:56,892.892 INFO    ] Checking for system updates...
[2026-10-28 01:11:56,928.928 INFO    ] 200
[2026-10-28 01:11:56,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:11:56,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:11:56,987.987 INFO    ] No update needed
[2026-10-28 01:11:56,989.989 INFO    ] Checking for camera pi updates...
[2026-10-28 01:11:57,022.022 INFO    ] 200
[2026-10-28 01:11:57,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:11:57,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:11:57,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:11:57,161.161 INFO    ] No camera update needed
[2026-10-28 01:11:57,164.164 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:11:57,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:11:57,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:11:57,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:11:59,218.218 INFO    ] ================================================
[2026-10-28 01:11:59,232.232 INFO    ] Launching Daemon at Wed Oct 28 01:11:59 IST 2026
[2026-10-28 01:11:59,243.243 INFO    ] ================================================
[2026-10-28 01:11:59,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:11:59
[2026-10-28 01:12:00,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:12:00,684.684 INFO    ] Initializing speech engine...
[2026-10-28 01:12:00,698.698 INFO    ] 2026-10-28 01:12:00
[2026-10-28 01:12:01,009.009 INFO    ] 2026-10-28 01:12:00
[2026-10-28 01:12:01,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:12:01,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:12:01,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:12:01,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:12:01,555.555 INFO    ] time= 28/10/2026 01:12:01
[2026-10-28 01:12:01,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:12:01,646.646 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:12:01,740.740 INFO    ] No existing commands found in stream
[2026-10-28 01:12:06,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:12:06,755.755 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-28 01:12:09,274.274 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:12:09,277.277 INFO    ] Checking for system updates...
[2026-10-28 01:12:09,318.318 INFO    ] 200
[2026-10-28 01:12:09,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:12:09,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:12:09,377.377 INFO    ] No update needed
[2026-10-28 01:12:09,379.379 INFO    ] Checking for camera pi updates...
[2026-10-28 01:12:09,415.415 INFO    ] 200
[2026-10-28 01:12:09,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:12:09,459.459 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:12:09,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:12:09,543.543 INFO    ] No camera update needed
[2026-10-28 01:12:09,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:12:09,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:12:09,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:12:09,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:12:11,601.601 INFO    ] ================================================
[2026-10-28 01:12:11,616.616 INFO    ] Launching Daemon at Wed Oct 28 01:12:11 IST 2026
[2026-10-28 01:12:11,626.626 INFO    ] ================================================
[2026-10-28 01:12:12,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:12:12
[2026-10-28 01:12:12,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:12:13,035.035 INFO    ] Initializing speech engine...
[2026-10-28 01:12:13,043.043 INFO    ] 2026-10-28 01:12:13
[2026-10-28 01:12:13,339.339 INFO    ] 2026-10-28 01:12:13
[2026-10-28 01:12:13,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:12:13,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:12:13,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:12:13,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:12:13,840.840 INFO    ] time= 28/10/2026 01:12:13
[2026-10-28 01:12:13,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:12:13,943.943 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:12:14,051.051 INFO    ] No existing commands found in stream
[2026-10-28 01:12:19,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:12:19,067.067 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 01:12:21,172.172 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:12:21,174.174 INFO    ] Checking for system updates...
[2026-10-28 01:12:21,210.210 INFO    ] 200
[2026-10-28 01:12:21,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:12:21,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:12:21,267.267 INFO    ] No update needed
[2026-10-28 01:12:21,269.269 INFO    ] Checking for camera pi updates...
[2026-10-28 01:12:21,303.303 INFO    ] 200
[2026-10-28 01:12:21,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:12:21,346.346 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:12:21,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:12:21,440.440 INFO    ] No camera update needed
[2026-10-28 01:12:21,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:12:21,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:12:21,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:12:21,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:12:23,498.498 INFO    ] ================================================
[2026-10-28 01:12:23,513.513 INFO    ] Launching Daemon at Wed Oct 28 01:12:23 IST 2026
[2026-10-28 01:12:23,524.524 INFO    ] ================================================
[2026-10-28 01:12:24,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:12:24
[2026-10-28 01:12:24,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:12:24,948.948 INFO    ] Initializing speech engine...
[2026-10-28 01:12:24,964.964 INFO    ] 2026-10-28 01:12:24
[2026-10-28 01:12:25,251.251 INFO    ] 2026-10-28 01:12:25
[2026-10-28 01:12:25,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:12:25,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:12:25,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:12:25,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:12:25,765.765 INFO    ] time= 28/10/2026 01:12:25
[2026-10-28 01:12:25,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:12:25,858.858 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:12:25,953.953 INFO    ] No existing commands found in stream
[2026-10-28 01:12:30,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:12:30,968.968 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-28 01:12:32,393.393 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:12:32,396.396 INFO    ] Checking for system updates...
[2026-10-28 01:12:32,438.438 INFO    ] 200
[2026-10-28 01:12:32,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:12:32,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:12:32,502.502 INFO    ] No update needed
[2026-10-28 01:12:32,515.515 INFO    ] Checking for camera pi updates...
[2026-10-28 01:12:32,560.560 INFO    ] 200
[2026-10-28 01:12:32,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:12:32,607.607 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:12:32,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:12:32,694.694 INFO    ] No camera update needed
[2026-10-28 01:12:32,697.697 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:12:32,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:12:32,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:12:32,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:12:34,750.750 INFO    ] ================================================
[2026-10-28 01:12:34,765.765 INFO    ] Launching Daemon at Wed Oct 28 01:12:34 IST 2026
[2026-10-28 01:12:34,775.775 INFO    ] ================================================
[2026-10-28 01:12:35,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:12:35
[2026-10-28 01:12:35,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:12:36,194.194 INFO    ] Initializing speech engine...
[2026-10-28 01:12:36,199.199 INFO    ] 2026-10-28 01:12:36
[2026-10-28 01:12:36,502.502 INFO    ] 2026-10-28 01:12:36
[2026-10-28 01:12:36,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:12:36,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:12:36,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:12:37,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:12:37,118.118 INFO    ] time= 28/10/2026 01:12:37
[2026-10-28 01:12:37,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:12:37,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:12:37,319.319 INFO    ] No existing commands found in stream
[2026-10-28 01:12:42,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:12:42,341.341 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 01:12:44,056.056 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:12:44,059.059 INFO    ] Checking for system updates...
[2026-10-28 01:12:44,094.094 INFO    ] 200
[2026-10-28 01:12:44,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:12:44,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:12:44,152.152 INFO    ] No update needed
[2026-10-28 01:12:44,158.158 INFO    ] Checking for camera pi updates...
[2026-10-28 01:12:44,203.203 INFO    ] 200
[2026-10-28 01:12:44,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:12:44,252.252 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:12:44,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:12:44,436.436 INFO    ] No camera update needed
[2026-10-28 01:12:44,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:12:44,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:12:44,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:12:44,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:12:46,491.491 INFO    ] ================================================
[2026-10-28 01:12:46,506.506 INFO    ] Launching Daemon at Wed Oct 28 01:12:46 IST 2026
[2026-10-28 01:12:46,517.517 INFO    ] ================================================
[2026-10-28 01:12:47,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:12:47
[2026-10-28 01:12:47,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:12:47,965.965 INFO    ] Initializing speech engine...
[2026-10-28 01:12:47,975.975 INFO    ] 2026-10-28 01:12:47
[2026-10-28 01:12:48,221.221 INFO    ] 2026-10-28 01:12:48
[2026-10-28 01:12:48,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:12:48,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:12:48,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:12:48,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:12:48,762.762 INFO    ] time= 28/10/2026 01:12:48
[2026-10-28 01:12:48,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:12:48,798.798 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:12:48,933.933 INFO    ] No existing commands found in stream
[2026-10-28 01:12:53,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:12:53,948.948 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 01:12:58,534.534 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:12:58,536.536 INFO    ] Checking for system updates...
[2026-10-28 01:12:58,571.571 INFO    ] 200
[2026-10-28 01:12:58,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:12:58,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:12:58,629.629 INFO    ] No update needed
[2026-10-28 01:12:58,631.631 INFO    ] Checking for camera pi updates...
[2026-10-28 01:12:58,664.664 INFO    ] 200
[2026-10-28 01:12:58,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:12:58,707.707 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:12:58,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:12:58,793.793 INFO    ] No camera update needed
[2026-10-28 01:12:58,795.795 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:12:58,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:12:58,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:12:58,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:13:00,848.848 INFO    ] ================================================
[2026-10-28 01:13:00,864.864 INFO    ] Launching Daemon at Wed Oct 28 01:13:00 IST 2026
[2026-10-28 01:13:00,875.875 INFO    ] ================================================
[2026-10-28 01:13:01,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:13:01
[2026-10-28 01:13:02,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:13:02,494.494 INFO    ] Initializing speech engine...
[2026-10-28 01:13:02,517.517 INFO    ] 2026-10-28 01:13:02
[2026-10-28 01:13:02,824.824 INFO    ] 2026-10-28 01:13:02
[2026-10-28 01:13:02,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:13:03,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:13:03,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:13:03,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:13:03,331.331 INFO    ] time= 28/10/2026 01:13:03
[2026-10-28 01:13:03,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:13:03,437.437 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:13:03,591.591 INFO    ] No existing commands found in stream
[2026-10-28 01:13:08,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:13:08,614.614 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 01:13:12,271.271 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:13:12,274.274 INFO    ] Checking for system updates...
[2026-10-28 01:13:12,310.310 INFO    ] 200
[2026-10-28 01:13:12,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:13:12,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:13:12,383.383 INFO    ] No update needed
[2026-10-28 01:13:12,385.385 INFO    ] Checking for camera pi updates...
[2026-10-28 01:13:12,419.419 INFO    ] 200
[2026-10-28 01:13:12,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:13:12,463.463 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:13:12,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:13:12,545.545 INFO    ] No camera update needed
[2026-10-28 01:13:12,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:13:12,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:13:12,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:13:12,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:13:14,600.600 INFO    ] ================================================
[2026-10-28 01:13:14,616.616 INFO    ] Launching Daemon at Wed Oct 28 01:13:14 IST 2026
[2026-10-28 01:13:14,626.626 INFO    ] ================================================
[2026-10-28 01:13:15,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:13:15
[2026-10-28 01:13:15,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:13:16,151.151 INFO    ] Initializing speech engine...
[2026-10-28 01:13:16,161.161 INFO    ] 2026-10-28 01:13:16
[2026-10-28 01:13:16,423.423 INFO    ] 2026-10-28 01:13:16
[2026-10-28 01:13:16,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:13:16,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:13:16,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:13:16,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:13:16,966.966 INFO    ] time= 28/10/2026 01:13:16
[2026-10-28 01:13:16,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:13:17,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:13:17,142.142 INFO    ] No existing commands found in stream
[2026-10-28 01:13:22,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:13:22,176.176 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-28 01:13:24,855.855 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:13:24,857.857 INFO    ] Checking for system updates...
[2026-10-28 01:13:24,893.893 INFO    ] 200
[2026-10-28 01:13:24,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:13:24,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:13:24,958.958 INFO    ] No update needed
[2026-10-28 01:13:24,961.961 INFO    ] Checking for camera pi updates...
[2026-10-28 01:13:24,994.994 INFO    ] 200
[2026-10-28 01:13:24,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:13:25,037.037 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:13:25,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:13:25,122.122 INFO    ] No camera update needed
[2026-10-28 01:13:25,124.124 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:13:25,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:13:25,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:13:25,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:13:27,184.184 INFO    ] ================================================
[2026-10-28 01:13:27,200.200 INFO    ] Launching Daemon at Wed Oct 28 01:13:27 IST 2026
[2026-10-28 01:13:27,211.211 INFO    ] ================================================
[2026-10-28 01:13:27,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:13:27
[2026-10-28 01:13:28,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:13:28,677.677 INFO    ] Initializing speech engine...
[2026-10-28 01:13:28,690.690 INFO    ] 2026-10-28 01:13:28
[2026-10-28 01:13:28,969.969 INFO    ] 2026-10-28 01:13:28
[2026-10-28 01:13:29,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:13:29,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:13:29,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:13:29,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:13:29,550.550 INFO    ] time= 28/10/2026 01:13:29
[2026-10-28 01:13:29,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:13:29,593.593 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:13:29,708.708 INFO    ] No existing commands found in stream
[2026-10-28 01:13:34,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:13:34,743.743 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-28 01:13:37,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:13:37,259.259 INFO    ] Checking for system updates...
[2026-10-28 01:13:37,296.296 INFO    ] 200
[2026-10-28 01:13:37,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:13:37,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:13:37,355.355 INFO    ] No update needed
[2026-10-28 01:13:37,357.357 INFO    ] Checking for camera pi updates...
[2026-10-28 01:13:37,391.391 INFO    ] 200
[2026-10-28 01:13:37,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:13:37,434.434 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:13:37,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:13:37,510.510 INFO    ] No camera update needed
[2026-10-28 01:13:37,512.512 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:13:37,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:13:37,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:13:37,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:13:39,564.564 INFO    ] ================================================
[2026-10-28 01:13:39,580.580 INFO    ] Launching Daemon at Wed Oct 28 01:13:39 IST 2026
[2026-10-28 01:13:39,592.592 INFO    ] ================================================
[2026-10-28 01:13:40,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:13:40
[2026-10-28 01:13:40,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:13:41,036.036 INFO    ] Initializing speech engine...
[2026-10-28 01:13:41,051.051 INFO    ] 2026-10-28 01:13:41
[2026-10-28 01:13:41,347.347 INFO    ] 2026-10-28 01:13:41
[2026-10-28 01:13:41,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:13:41,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:13:41,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:13:41,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:13:41,859.859 INFO    ] time= 28/10/2026 01:13:41
[2026-10-28 01:13:41,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:13:41,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:13:42,071.071 INFO    ] No existing commands found in stream
[2026-10-28 01:13:47,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:13:47,085.085 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-28 01:13:47,709.709 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:13:47,711.711 INFO    ] Checking for system updates...
[2026-10-28 01:13:47,752.752 INFO    ] 200
[2026-10-28 01:13:47,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:13:47,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:13:47,809.809 INFO    ] No update needed
[2026-10-28 01:13:47,811.811 INFO    ] Checking for camera pi updates...
[2026-10-28 01:13:47,849.849 INFO    ] 200
[2026-10-28 01:13:47,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:13:47,910.910 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:13:48,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:13:48,011.011 INFO    ] No camera update needed
[2026-10-28 01:13:48,013.013 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:13:48,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:13:48,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:13:48,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:13:50,066.066 INFO    ] ================================================
[2026-10-28 01:13:50,081.081 INFO    ] Launching Daemon at Wed Oct 28 01:13:50 IST 2026
[2026-10-28 01:13:50,093.093 INFO    ] ================================================
[2026-10-28 01:13:50,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:13:50
[2026-10-28 01:13:51,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:13:51,556.556 INFO    ] Initializing speech engine...
[2026-10-28 01:13:51,568.568 INFO    ] 2026-10-28 01:13:51
[2026-10-28 01:13:51,880.880 INFO    ] 2026-10-28 01:13:51
[2026-10-28 01:13:51,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:13:52,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:13:52,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:13:52,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:13:52,613.613 INFO    ] time= 28/10/2026 01:13:52
[2026-10-28 01:13:52,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:13:52,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:13:52,831.831 INFO    ] No existing commands found in stream
[2026-10-28 01:13:57,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:13:57,845.845 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 01:13:59,195.195 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:13:59,198.198 INFO    ] Checking for system updates...
[2026-10-28 01:13:59,234.234 INFO    ] 200
[2026-10-28 01:13:59,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:13:59,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:13:59,296.296 INFO    ] No update needed
[2026-10-28 01:13:59,299.299 INFO    ] Checking for camera pi updates...
[2026-10-28 01:13:59,337.337 INFO    ] 200
[2026-10-28 01:13:59,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:13:59,380.380 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:13:59,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:13:59,465.465 INFO    ] No camera update needed
[2026-10-28 01:13:59,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:13:59,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:13:59,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:13:59,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:14:01,520.520 INFO    ] ================================================
[2026-10-28 01:14:01,542.542 INFO    ] Launching Daemon at Wed Oct 28 01:14:01 IST 2026
[2026-10-28 01:14:01,554.554 INFO    ] ================================================
[2026-10-28 01:14:02,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:14:02
[2026-10-28 01:14:02,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:14:03,141.141 INFO    ] Initializing speech engine...
[2026-10-28 01:14:03,157.157 INFO    ] 2026-10-28 01:14:03
[2026-10-28 01:14:03,422.422 INFO    ] 2026-10-28 01:14:03
[2026-10-28 01:14:03,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:14:03,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:14:03,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:14:03,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:14:03,987.987 INFO    ] time= 28/10/2026 01:14:03
[2026-10-28 01:14:03,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:14:04,011.011 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:14:04,143.143 INFO    ] No existing commands found in stream
[2026-10-28 01:14:09,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:14:09,160.160 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-28 01:14:12,178.178 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:14:12,181.181 INFO    ] Checking for system updates...
[2026-10-28 01:14:12,220.220 INFO    ] 200
[2026-10-28 01:14:12,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:14:12,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:14:12,284.284 INFO    ] No update needed
[2026-10-28 01:14:12,286.286 INFO    ] Checking for camera pi updates...
[2026-10-28 01:14:12,320.320 INFO    ] 200
[2026-10-28 01:14:12,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:14:12,363.363 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:14:12,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:14:12,449.449 INFO    ] No camera update needed
[2026-10-28 01:14:12,451.451 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:14:12,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:14:12,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:14:12,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:14:14,508.508 INFO    ] ================================================
[2026-10-28 01:14:14,524.524 INFO    ] Launching Daemon at Wed Oct 28 01:14:14 IST 2026
[2026-10-28 01:14:14,536.536 INFO    ] ================================================
[2026-10-28 01:14:15,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:14:15
[2026-10-28 01:14:15,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:14:15,981.981 INFO    ] Initializing speech engine...
[2026-10-28 01:14:16,003.003 INFO    ] 2026-10-28 01:14:15
[2026-10-28 01:14:16,272.272 INFO    ] 2026-10-28 01:14:16
[2026-10-28 01:14:16,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:14:16,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:14:16,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:14:16,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:14:16,820.820 INFO    ] time= 28/10/2026 01:14:16
[2026-10-28 01:14:16,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:14:16,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:14:17,018.018 INFO    ] No existing commands found in stream
[2026-10-28 01:14:22,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:14:22,056.056 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-28 01:14:22,914.914 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:14:22,916.916 INFO    ] Checking for system updates...
[2026-10-28 01:14:22,957.957 INFO    ] 200
[2026-10-28 01:14:22,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:14:23,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:14:23,022.022 INFO    ] No update needed
[2026-10-28 01:14:23,024.024 INFO    ] Checking for camera pi updates...
[2026-10-28 01:14:23,059.059 INFO    ] 200
[2026-10-28 01:14:23,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:14:23,112.112 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:14:23,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:14:23,201.201 INFO    ] No camera update needed
[2026-10-28 01:14:23,203.203 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:14:23,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:14:23,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:14:23,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:14:25,257.257 INFO    ] ================================================
[2026-10-28 01:14:25,272.272 INFO    ] Launching Daemon at Wed Oct 28 01:14:25 IST 2026
[2026-10-28 01:14:25,283.283 INFO    ] ================================================
[2026-10-28 01:14:25,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:14:25
[2026-10-28 01:14:26,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:14:26,940.940 INFO    ] Initializing speech engine...
[2026-10-28 01:14:26,949.949 INFO    ] 2026-10-28 01:14:26
[2026-10-28 01:14:27,244.244 INFO    ] 2026-10-28 01:14:27
[2026-10-28 01:14:27,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:14:27,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:14:27,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:14:27,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:14:27,816.816 INFO    ] time= 28/10/2026 01:14:27
[2026-10-28 01:14:27,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:14:27,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:14:27,967.967 INFO    ] No existing commands found in stream
[2026-10-28 01:14:32,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:14:32,996.996 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 01:14:34,198.198 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:14:34,201.201 INFO    ] Checking for system updates...
[2026-10-28 01:14:34,242.242 INFO    ] 200
[2026-10-28 01:14:34,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:14:34,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:14:34,307.307 INFO    ] No update needed
[2026-10-28 01:14:34,309.309 INFO    ] Checking for camera pi updates...
[2026-10-28 01:14:34,342.342 INFO    ] 200
[2026-10-28 01:14:34,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:14:34,385.385 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:14:34,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:14:34,469.469 INFO    ] No camera update needed
[2026-10-28 01:14:34,471.471 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:14:34,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:14:34,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:14:34,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:14:36,525.525 INFO    ] ================================================
[2026-10-28 01:14:36,541.541 INFO    ] Launching Daemon at Wed Oct 28 01:14:36 IST 2026
[2026-10-28 01:14:36,553.553 INFO    ] ================================================
[2026-10-28 01:14:37,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:14:37
[2026-10-28 01:14:37,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:14:38,221.221 INFO    ] Initializing speech engine...
[2026-10-28 01:14:38,235.235 INFO    ] 2026-10-28 01:14:38
[2026-10-28 01:14:38,519.519 INFO    ] 2026-10-28 01:14:38
[2026-10-28 01:14:38,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:14:38,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:14:38,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:14:39,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:14:39,206.206 INFO    ] time= 28/10/2026 01:14:39
[2026-10-28 01:14:39,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:14:39,313.313 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:14:39,444.444 INFO    ] No existing commands found in stream
[2026-10-28 01:14:44,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:14:44,477.477 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-28 01:14:47,618.618 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:14:47,622.622 INFO    ] Checking for system updates...
[2026-10-28 01:14:47,658.658 INFO    ] 200
[2026-10-28 01:14:47,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:14:47,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:14:47,722.722 INFO    ] No update needed
[2026-10-28 01:14:47,725.725 INFO    ] Checking for camera pi updates...
[2026-10-28 01:14:47,763.763 INFO    ] 200
[2026-10-28 01:14:47,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:14:47,809.809 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:14:47,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:14:47,989.989 INFO    ] No camera update needed
[2026-10-28 01:14:47,991.991 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:14:47,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:14:47,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:14:48,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:14:50,045.045 INFO    ] ================================================
[2026-10-28 01:14:50,060.060 INFO    ] Launching Daemon at Wed Oct 28 01:14:50 IST 2026
[2026-10-28 01:14:50,071.071 INFO    ] ================================================
[2026-10-28 01:14:50,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:14:50
[2026-10-28 01:14:51,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:14:51,516.516 INFO    ] Initializing speech engine...
[2026-10-28 01:14:51,525.525 INFO    ] 2026-10-28 01:14:51
[2026-10-28 01:14:51,785.785 INFO    ] 2026-10-28 01:14:51
[2026-10-28 01:14:51,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:14:52,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:14:52,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:14:52,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:14:52,500.500 INFO    ] time= 28/10/2026 01:14:52
[2026-10-28 01:14:52,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:14:52,598.598 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:14:52,751.751 INFO    ] No existing commands found in stream
[2026-10-28 01:14:57,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:14:57,771.771 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-28 01:15:00,124.124 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:15:00,127.127 INFO    ] Checking for system updates...
[2026-10-28 01:15:00,164.164 INFO    ] 200
[2026-10-28 01:15:00,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:15:00,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:15:00,230.230 INFO    ] No update needed
[2026-10-28 01:15:00,232.232 INFO    ] Checking for camera pi updates...
[2026-10-28 01:15:00,271.271 INFO    ] 200
[2026-10-28 01:15:00,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:15:00,314.314 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:15:00,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:15:00,393.393 INFO    ] No camera update needed
[2026-10-28 01:15:00,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:15:00,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:15:00,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:15:00,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:15:02,496.496 INFO    ] ================================================
[2026-10-28 01:15:02,514.514 INFO    ] Launching Daemon at Wed Oct 28 01:15:02 IST 2026
[2026-10-28 01:15:02,528.528 INFO    ] ================================================
[2026-10-28 01:15:03,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:15:03
[2026-10-28 01:15:03,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:15:04,127.127 INFO    ] Initializing speech engine...
[2026-10-28 01:15:04,136.136 INFO    ] 2026-10-28 01:15:04
[2026-10-28 01:15:04,386.386 INFO    ] 2026-10-28 01:15:04
[2026-10-28 01:15:04,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:15:04,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:15:04,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:15:04,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:15:04,943.943 INFO    ] time= 28/10/2026 01:15:04
[2026-10-28 01:15:04,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:15:04,991.991 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:15:05,096.096 INFO    ] No existing commands found in stream
[2026-10-28 01:15:10,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:15:10,118.118 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-28 01:15:12,936.936 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:15:12,938.938 INFO    ] Checking for system updates...
[2026-10-28 01:15:12,977.977 INFO    ] 200
[2026-10-28 01:15:12,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:15:13,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:15:13,034.034 INFO    ] No update needed
[2026-10-28 01:15:13,037.037 INFO    ] Checking for camera pi updates...
[2026-10-28 01:15:13,071.071 INFO    ] 200
[2026-10-28 01:15:13,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:15:13,120.120 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:15:13,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:15:13,205.205 INFO    ] No camera update needed
[2026-10-28 01:15:13,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:15:13,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:15:13,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:15:13,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:15:15,261.261 INFO    ] ================================================
[2026-10-28 01:15:15,277.277 INFO    ] Launching Daemon at Wed Oct 28 01:15:15 IST 2026
[2026-10-28 01:15:15,289.289 INFO    ] ================================================
[2026-10-28 01:15:15,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:15:15
[2026-10-28 01:15:16,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:15:16,897.897 INFO    ] Initializing speech engine...
[2026-10-28 01:15:16,906.906 INFO    ] 2026-10-28 01:15:16
[2026-10-28 01:15:17,185.185 INFO    ] 2026-10-28 01:15:17
[2026-10-28 01:15:17,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:15:17,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:15:17,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:15:17,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:15:17,751.751 INFO    ] time= 28/10/2026 01:15:17
[2026-10-28 01:15:17,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:15:17,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:15:17,911.911 INFO    ] No existing commands found in stream
[2026-10-28 01:15:22,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:15:22,945.945 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-28 01:15:25,340.340 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:15:25,343.343 INFO    ] Checking for system updates...
[2026-10-28 01:15:25,379.379 INFO    ] 200
[2026-10-28 01:15:25,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:15:25,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:15:25,439.439 INFO    ] No update needed
[2026-10-28 01:15:25,441.441 INFO    ] Checking for camera pi updates...
[2026-10-28 01:15:25,481.481 INFO    ] 200
[2026-10-28 01:15:25,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:15:25,529.529 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:15:25,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:15:25,632.632 INFO    ] No camera update needed
[2026-10-28 01:15:25,635.635 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:15:25,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:15:25,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:15:25,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:15:27,688.688 INFO    ] ================================================
[2026-10-28 01:15:27,704.704 INFO    ] Launching Daemon at Wed Oct 28 01:15:27 IST 2026
[2026-10-28 01:15:27,714.714 INFO    ] ================================================
[2026-10-28 01:15:28,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:15:28
[2026-10-28 01:15:28,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:15:29,212.212 INFO    ] Initializing speech engine...
[2026-10-28 01:15:29,236.236 INFO    ] 2026-10-28 01:15:29
[2026-10-28 01:15:29,507.507 INFO    ] 2026-10-28 01:15:29
[2026-10-28 01:15:29,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:15:29,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:15:29,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:15:30,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:15:30,117.117 INFO    ] time= 28/10/2026 01:15:30
[2026-10-28 01:15:30,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:15:30,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:15:30,326.326 INFO    ] No existing commands found in stream
[2026-10-28 01:15:35,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:15:35,346.346 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-28 01:15:39,777.777 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:15:39,780.780 INFO    ] Checking for system updates...
[2026-10-28 01:15:39,815.815 INFO    ] 200
[2026-10-28 01:15:39,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:15:39,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:15:39,878.878 INFO    ] No update needed
[2026-10-28 01:15:39,880.880 INFO    ] Checking for camera pi updates...
[2026-10-28 01:15:39,913.913 INFO    ] 200
[2026-10-28 01:15:39,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:15:39,960.960 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:15:40,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:15:40,058.058 INFO    ] No camera update needed
[2026-10-28 01:15:40,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:15:40,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:15:40,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:15:40,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:15:42,115.115 INFO    ] ================================================
[2026-10-28 01:15:42,130.130 INFO    ] Launching Daemon at Wed Oct 28 01:15:42 IST 2026
[2026-10-28 01:15:42,142.142 INFO    ] ================================================
[2026-10-28 01:15:42,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:15:42
[2026-10-28 01:15:43,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:15:43,538.538 INFO    ] Initializing speech engine...
[2026-10-28 01:15:43,551.551 INFO    ] 2026-10-28 01:15:43
[2026-10-28 01:15:43,816.816 INFO    ] 2026-10-28 01:15:43
[2026-10-28 01:15:43,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:15:44,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:15:44,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:15:44,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:15:44,382.382 INFO    ] time= 28/10/2026 01:15:44
[2026-10-28 01:15:44,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:15:44,409.409 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:15:44,541.541 INFO    ] No existing commands found in stream
[2026-10-28 01:15:49,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:15:49,556.556 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-28 01:15:52,179.179 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:15:52,182.182 INFO    ] Checking for system updates...
[2026-10-28 01:15:52,219.219 INFO    ] 200
[2026-10-28 01:15:52,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:15:52,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:15:52,286.286 INFO    ] No update needed
[2026-10-28 01:15:52,289.289 INFO    ] Checking for camera pi updates...
[2026-10-28 01:15:52,325.325 INFO    ] 200
[2026-10-28 01:15:52,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:15:52,368.368 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:15:52,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:15:52,455.455 INFO    ] No camera update needed
[2026-10-28 01:15:52,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:15:52,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:15:52,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:15:52,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:15:54,511.511 INFO    ] ================================================
[2026-10-28 01:15:54,529.529 INFO    ] Launching Daemon at Wed Oct 28 01:15:54 IST 2026
[2026-10-28 01:15:54,540.540 INFO    ] ================================================
[2026-10-28 01:15:55,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:15:55
[2026-10-28 01:15:55,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:15:56,006.006 INFO    ] Initializing speech engine...
[2026-10-28 01:15:56,014.014 INFO    ] 2026-10-28 01:15:56
[2026-10-28 01:15:56,274.274 INFO    ] 2026-10-28 01:15:56
[2026-10-28 01:15:56,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:15:56,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:15:56,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:15:56,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:15:56,860.860 INFO    ] time= 28/10/2026 01:15:56
[2026-10-28 01:15:56,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:15:56,877.877 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:15:57,007.007 INFO    ] No existing commands found in stream
[2026-10-28 01:16:02,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:16:02,040.040 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-28 01:16:06,226.226 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:16:06,229.229 INFO    ] Checking for system updates...
[2026-10-28 01:16:06,264.264 INFO    ] 200
[2026-10-28 01:16:06,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:16:06,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:16:06,327.327 INFO    ] No update needed
[2026-10-28 01:16:06,329.329 INFO    ] Checking for camera pi updates...
[2026-10-28 01:16:06,363.363 INFO    ] 200
[2026-10-28 01:16:06,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:16:06,410.410 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:16:06,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:16:06,512.512 INFO    ] No camera update needed
[2026-10-28 01:16:06,515.515 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:16:06,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:16:06,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:16:06,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:16:08,568.568 INFO    ] ================================================
[2026-10-28 01:16:08,583.583 INFO    ] Launching Daemon at Wed Oct 28 01:16:08 IST 2026
[2026-10-28 01:16:08,593.593 INFO    ] ================================================
[2026-10-28 01:16:09,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:16:09
[2026-10-28 01:16:09,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:16:10,039.039 INFO    ] Initializing speech engine...
[2026-10-28 01:16:10,046.046 INFO    ] 2026-10-28 01:16:10
[2026-10-28 01:16:10,293.293 INFO    ] 2026-10-28 01:16:10
[2026-10-28 01:16:10,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:16:10,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:16:10,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:16:10,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:16:10,864.864 INFO    ] time= 28/10/2026 01:16:10
[2026-10-28 01:16:10,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:16:10,885.885 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:16:11,018.018 INFO    ] No existing commands found in stream
[2026-10-28 01:16:16,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:16:16,035.035 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-28 01:16:20,438.438 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:16:20,441.441 INFO    ] Checking for system updates...
[2026-10-28 01:16:20,478.478 INFO    ] 200
[2026-10-28 01:16:20,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:16:20,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:16:20,538.538 INFO    ] No update needed
[2026-10-28 01:16:20,541.541 INFO    ] Checking for camera pi updates...
[2026-10-28 01:16:20,579.579 INFO    ] 200
[2026-10-28 01:16:20,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:16:20,635.635 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:16:20,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:16:20,720.720 INFO    ] No camera update needed
[2026-10-28 01:16:20,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:16:20,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:16:20,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:16:20,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:16:22,778.778 INFO    ] ================================================
[2026-10-28 01:16:22,793.793 INFO    ] Launching Daemon at Wed Oct 28 01:16:22 IST 2026
[2026-10-28 01:16:22,806.806 INFO    ] ================================================
[2026-10-28 01:16:23,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:16:23
[2026-10-28 01:16:23,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:16:24,303.303 INFO    ] Initializing speech engine...
[2026-10-28 01:16:24,317.317 INFO    ] 2026-10-28 01:16:24
[2026-10-28 01:16:24,590.590 INFO    ] 2026-10-28 01:16:24
[2026-10-28 01:16:24,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:16:24,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:16:24,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:16:25,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:16:25,163.163 INFO    ] time= 28/10/2026 01:16:25
[2026-10-28 01:16:25,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:16:25,206.206 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:16:25,335.335 INFO    ] No existing commands found in stream
[2026-10-28 01:16:30,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:16:30,364.364 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-28 01:16:34,459.459 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:16:34,462.462 INFO    ] Checking for system updates...
[2026-10-28 01:16:34,499.499 INFO    ] 200
[2026-10-28 01:16:34,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:16:34,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:16:34,567.567 INFO    ] No update needed
[2026-10-28 01:16:34,570.570 INFO    ] Checking for camera pi updates...
[2026-10-28 01:16:34,603.603 INFO    ] 200
[2026-10-28 01:16:34,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:16:34,646.646 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:16:34,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:16:34,751.751 INFO    ] No camera update needed
[2026-10-28 01:16:34,754.754 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:16:34,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:16:34,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:16:34,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:16:36,807.807 INFO    ] ================================================
[2026-10-28 01:16:36,823.823 INFO    ] Launching Daemon at Wed Oct 28 01:16:36 IST 2026
[2026-10-28 01:16:36,839.839 INFO    ] ================================================
[2026-10-28 01:16:37,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:16:37
[2026-10-28 01:16:38,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:16:38,276.276 INFO    ] Initializing speech engine...
[2026-10-28 01:16:38,294.294 INFO    ] 2026-10-28 01:16:38
[2026-10-28 01:16:38,545.545 INFO    ] 2026-10-28 01:16:38
[2026-10-28 01:16:38,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:16:38,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:16:38,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:16:39,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:16:39,109.109 INFO    ] time= 28/10/2026 01:16:39
[2026-10-28 01:16:39,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:16:39,136.136 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:16:39,288.288 INFO    ] No existing commands found in stream
[2026-10-28 01:16:44,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:16:44,326.326 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 01:16:48,004.004 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:16:48,006.006 INFO    ] Checking for system updates...
[2026-10-28 01:16:48,046.046 INFO    ] 200
[2026-10-28 01:16:48,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:16:48,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:16:48,104.104 INFO    ] No update needed
[2026-10-28 01:16:48,107.107 INFO    ] Checking for camera pi updates...
[2026-10-28 01:16:48,146.146 INFO    ] 200
[2026-10-28 01:16:48,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:16:48,189.189 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:16:48,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:16:48,274.274 INFO    ] No camera update needed
[2026-10-28 01:16:48,276.276 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:16:48,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:16:48,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:16:48,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:16:50,330.330 INFO    ] ================================================
[2026-10-28 01:16:50,346.346 INFO    ] Launching Daemon at Wed Oct 28 01:16:50 IST 2026
[2026-10-28 01:16:50,356.356 INFO    ] ================================================
[2026-10-28 01:16:51,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:16:51
[2026-10-28 01:16:51,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:16:51,960.960 INFO    ] Initializing speech engine...
[2026-10-28 01:16:51,970.970 INFO    ] 2026-10-28 01:16:51
[2026-10-28 01:16:52,232.232 INFO    ] 2026-10-28 01:16:52
[2026-10-28 01:16:52,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:16:52,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:16:52,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:16:52,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:16:52,778.778 INFO    ] time= 28/10/2026 01:16:52
[2026-10-28 01:16:52,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:16:52,819.819 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:16:52,946.946 INFO    ] No existing commands found in stream
[2026-10-28 01:16:57,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:16:57,979.979 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-28 01:16:59,872.872 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:16:59,875.875 INFO    ] Checking for system updates...
[2026-10-28 01:16:59,912.912 INFO    ] 200
[2026-10-28 01:16:59,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:16:59,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:16:59,972.972 INFO    ] No update needed
[2026-10-28 01:16:59,975.975 INFO    ] Checking for camera pi updates...
[2026-10-28 01:17:00,010.010 INFO    ] 200
[2026-10-28 01:17:00,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:17:00,059.059 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:17:00,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:17:00,258.258 INFO    ] No camera update needed
[2026-10-28 01:17:00,260.260 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:17:00,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:17:00,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:17:00,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:17:02,321.321 INFO    ] ================================================
[2026-10-28 01:17:02,342.342 INFO    ] Launching Daemon at Wed Oct 28 01:17:02 IST 2026
[2026-10-28 01:17:02,358.358 INFO    ] ================================================
[2026-10-28 01:17:02,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:17:02
[2026-10-28 01:17:03,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:17:03,871.871 INFO    ] Initializing speech engine...
[2026-10-28 01:17:03,878.878 INFO    ] 2026-10-28 01:17:03
[2026-10-28 01:17:04,180.180 INFO    ] 2026-10-28 01:17:04
[2026-10-28 01:17:04,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:17:04,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:17:04,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:17:04,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:17:04,692.692 INFO    ] time= 28/10/2026 01:17:04
[2026-10-28 01:17:04,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:17:04,806.806 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:17:04,957.957 INFO    ] No existing commands found in stream
[2026-10-28 01:17:09,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:17:09,985.985 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 01:17:11,725.725 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:17:11,727.727 INFO    ] Checking for system updates...
[2026-10-28 01:17:11,763.763 INFO    ] 200
[2026-10-28 01:17:11,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:17:11,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:17:11,821.821 INFO    ] No update needed
[2026-10-28 01:17:11,823.823 INFO    ] Checking for camera pi updates...
[2026-10-28 01:17:11,862.862 INFO    ] 200
[2026-10-28 01:17:11,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:17:11,905.905 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:17:11,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:17:11,993.993 INFO    ] No camera update needed
[2026-10-28 01:17:11,996.996 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:17:11,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:17:12,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:17:12,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:17:14,050.050 INFO    ] ================================================
[2026-10-28 01:17:14,065.065 INFO    ] Launching Daemon at Wed Oct 28 01:17:14 IST 2026
[2026-10-28 01:17:14,076.076 INFO    ] ================================================
[2026-10-28 01:17:14,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:17:14
[2026-10-28 01:17:15,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:17:15,490.490 INFO    ] Initializing speech engine...
[2026-10-28 01:17:15,504.504 INFO    ] 2026-10-28 01:17:15
[2026-10-28 01:17:15,761.761 INFO    ] 2026-10-28 01:17:15
[2026-10-28 01:17:15,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:17:16,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:17:16,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:17:16,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:17:16,326.326 INFO    ] time= 28/10/2026 01:17:16
[2026-10-28 01:17:16,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:17:16,354.354 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:17:16,482.482 INFO    ] No existing commands found in stream
[2026-10-28 01:17:21,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:17:21,501.501 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-28 01:17:22,541.541 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:17:22,545.545 INFO    ] Checking for system updates...
[2026-10-28 01:17:22,582.582 INFO    ] 200
[2026-10-28 01:17:22,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:17:22,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:17:22,642.642 INFO    ] No update needed
[2026-10-28 01:17:22,645.645 INFO    ] Checking for camera pi updates...
[2026-10-28 01:17:22,679.679 INFO    ] 200
[2026-10-28 01:17:22,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:17:22,724.724 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:17:22,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:17:22,813.813 INFO    ] No camera update needed
[2026-10-28 01:17:22,816.816 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:17:22,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:17:22,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:17:22,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:17:24,875.875 INFO    ] ================================================
[2026-10-28 01:17:24,890.890 INFO    ] Launching Daemon at Wed Oct 28 01:17:24 IST 2026
[2026-10-28 01:17:24,901.901 INFO    ] ================================================
[2026-10-28 01:17:25,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:17:25
[2026-10-28 01:17:26,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:17:26,352.352 INFO    ] Initializing speech engine...
[2026-10-28 01:17:26,359.359 INFO    ] 2026-10-28 01:17:26
[2026-10-28 01:17:26,669.669 INFO    ] 2026-10-28 01:17:26
[2026-10-28 01:17:26,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:17:26,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:17:26,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:17:27,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:17:27,183.183 INFO    ] time= 28/10/2026 01:17:27
[2026-10-28 01:17:27,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:17:27,287.287 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:17:27,397.397 INFO    ] No existing commands found in stream
[2026-10-28 01:17:32,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:17:32,409.409 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-28 01:17:35,803.803 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:17:35,806.806 INFO    ] Checking for system updates...
[2026-10-28 01:17:35,841.841 INFO    ] 200
[2026-10-28 01:17:35,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:17:35,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:17:35,899.899 INFO    ] No update needed
[2026-10-28 01:17:35,901.901 INFO    ] Checking for camera pi updates...
[2026-10-28 01:17:35,938.938 INFO    ] 200
[2026-10-28 01:17:35,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:17:35,981.981 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:17:36,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:17:36,065.065 INFO    ] No camera update needed
[2026-10-28 01:17:36,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:17:36,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:17:36,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:17:36,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:17:38,121.121 INFO    ] ================================================
[2026-10-28 01:17:38,137.137 INFO    ] Launching Daemon at Wed Oct 28 01:17:38 IST 2026
[2026-10-28 01:17:38,147.147 INFO    ] ================================================
[2026-10-28 01:17:38,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:17:38
[2026-10-28 01:17:39,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:17:39,602.602 INFO    ] Initializing speech engine...
[2026-10-28 01:17:39,609.609 INFO    ] 2026-10-28 01:17:39
[2026-10-28 01:17:39,875.875 INFO    ] 2026-10-28 01:17:39
[2026-10-28 01:17:39,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:17:40,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:17:40,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:17:40,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:17:40,598.598 INFO    ] time= 28/10/2026 01:17:40
[2026-10-28 01:17:40,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:17:40,671.671 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:17:40,818.818 INFO    ] No existing commands found in stream
[2026-10-28 01:17:45,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:17:45,835.835 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 01:17:48,902.902 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:17:48,905.905 INFO    ] Checking for system updates...
[2026-10-28 01:17:48,942.942 INFO    ] 200
[2026-10-28 01:17:48,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:17:48,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:17:49,001.001 INFO    ] No update needed
[2026-10-28 01:17:49,003.003 INFO    ] Checking for camera pi updates...
[2026-10-28 01:17:49,042.042 INFO    ] 200
[2026-10-28 01:17:49,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:17:49,108.108 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:17:49,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:17:49,198.198 INFO    ] No camera update needed
[2026-10-28 01:17:49,201.201 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:17:49,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:17:49,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:17:49,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:17:51,257.257 INFO    ] ================================================
[2026-10-28 01:17:51,273.273 INFO    ] Launching Daemon at Wed Oct 28 01:17:51 IST 2026
[2026-10-28 01:17:51,285.285 INFO    ] ================================================
[2026-10-28 01:17:51,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:17:51
[2026-10-28 01:17:52,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:17:52,725.725 INFO    ] Initializing speech engine...
[2026-10-28 01:17:52,733.733 INFO    ] 2026-10-28 01:17:52
[2026-10-28 01:17:53,031.031 INFO    ] 2026-10-28 01:17:52
[2026-10-28 01:17:53,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:17:53,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:17:53,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:17:53,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:17:53,597.597 INFO    ] time= 28/10/2026 01:17:53
[2026-10-28 01:17:53,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:17:53,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:17:53,831.831 INFO    ] No existing commands found in stream
[2026-10-28 01:17:58,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:17:58,857.857 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-28 01:17:59,819.819 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:17:59,821.821 INFO    ] Checking for system updates...
[2026-10-28 01:17:59,862.862 INFO    ] 200
[2026-10-28 01:17:59,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:17:59,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:17:59,919.919 INFO    ] No update needed
[2026-10-28 01:17:59,921.921 INFO    ] Checking for camera pi updates...
[2026-10-28 01:17:59,959.959 INFO    ] 200
[2026-10-28 01:17:59,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:18:00,002.002 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:18:00,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:18:00,109.109 INFO    ] No camera update needed
[2026-10-28 01:18:00,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:18:00,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:18:00,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:18:00,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:18:02,169.169 INFO    ] ================================================
[2026-10-28 01:18:02,187.187 INFO    ] Launching Daemon at Wed Oct 28 01:18:02 IST 2026
[2026-10-28 01:18:02,199.199 INFO    ] ================================================
[2026-10-28 01:18:02,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:18:02
[2026-10-28 01:18:03,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:18:03,758.758 INFO    ] Initializing speech engine...
[2026-10-28 01:18:03,765.765 INFO    ] 2026-10-28 01:18:03
[2026-10-28 01:18:04,024.024 INFO    ] 2026-10-28 01:18:04
[2026-10-28 01:18:04,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:18:04,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:18:04,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:18:04,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:18:04,568.568 INFO    ] time= 28/10/2026 01:18:04
[2026-10-28 01:18:04,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:18:04,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:18:04,690.690 INFO    ] No existing commands found in stream
[2026-10-28 01:18:09,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:18:09,703.703 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 01:18:13,202.202 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:18:13,205.205 INFO    ] Checking for system updates...
[2026-10-28 01:18:13,240.240 INFO    ] 200
[2026-10-28 01:18:13,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:18:13,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:18:13,304.304 INFO    ] No update needed
[2026-10-28 01:18:13,307.307 INFO    ] Checking for camera pi updates...
[2026-10-28 01:18:13,340.340 INFO    ] 200
[2026-10-28 01:18:13,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:18:13,382.382 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:18:13,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:18:13,484.484 INFO    ] No camera update needed
[2026-10-28 01:18:13,487.487 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:18:13,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:18:13,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:18:13,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:18:15,541.541 INFO    ] ================================================
[2026-10-28 01:18:15,556.556 INFO    ] Launching Daemon at Wed Oct 28 01:18:15 IST 2026
[2026-10-28 01:18:15,567.567 INFO    ] ================================================
[2026-10-28 01:18:16,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:18:16
[2026-10-28 01:18:16,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:18:16,974.974 INFO    ] Initializing speech engine...
[2026-10-28 01:18:16,990.990 INFO    ] 2026-10-28 01:18:16
[2026-10-28 01:18:17,272.272 INFO    ] 2026-10-28 01:18:17
[2026-10-28 01:18:17,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:18:17,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:18:17,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:18:17,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:18:17,767.767 INFO    ] time= 28/10/2026 01:18:17
[2026-10-28 01:18:17,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:18:17,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:18:17,969.969 INFO    ] No existing commands found in stream
[2026-10-28 01:18:22,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:18:22,984.984 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 01:18:25,072.072 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:18:25,074.074 INFO    ] Checking for system updates...
[2026-10-28 01:18:25,114.114 INFO    ] 200
[2026-10-28 01:18:25,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:18:25,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:18:25,171.171 INFO    ] No update needed
[2026-10-28 01:18:25,174.174 INFO    ] Checking for camera pi updates...
[2026-10-28 01:18:25,210.210 INFO    ] 200
[2026-10-28 01:18:25,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:18:25,253.253 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:18:25,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:18:25,309.309 INFO    ] No camera update needed
[2026-10-28 01:18:25,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:18:25,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:18:25,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:18:25,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:18:27,365.365 INFO    ] ================================================
[2026-10-28 01:18:27,380.380 INFO    ] Launching Daemon at Wed Oct 28 01:18:27 IST 2026
[2026-10-28 01:18:27,391.391 INFO    ] ================================================
[2026-10-28 01:18:27,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:18:27
[2026-10-28 01:18:28,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:18:28,794.794 INFO    ] Initializing speech engine...
[2026-10-28 01:18:28,802.802 INFO    ] 2026-10-28 01:18:28
[2026-10-28 01:18:29,094.094 INFO    ] 2026-10-28 01:18:29
[2026-10-28 01:18:29,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:18:29,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:18:29,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:18:29,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:18:29,592.592 INFO    ] time= 28/10/2026 01:18:29
[2026-10-28 01:18:29,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:18:29,686.686 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:18:29,796.796 INFO    ] No existing commands found in stream
[2026-10-28 01:18:34,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:18:34,809.809 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 01:18:38,780.780 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:18:38,783.783 INFO    ] Checking for system updates...
[2026-10-28 01:18:38,818.818 INFO    ] 200
[2026-10-28 01:18:38,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:18:38,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:18:38,876.876 INFO    ] No update needed
[2026-10-28 01:18:38,879.879 INFO    ] Checking for camera pi updates...
[2026-10-28 01:18:38,912.912 INFO    ] 200
[2026-10-28 01:18:38,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:18:38,955.955 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:18:39,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:18:39,040.040 INFO    ] No camera update needed
[2026-10-28 01:18:39,042.042 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:18:39,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:18:39,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:18:39,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:18:41,095.095 INFO    ] ================================================
[2026-10-28 01:18:41,111.111 INFO    ] Launching Daemon at Wed Oct 28 01:18:41 IST 2026
[2026-10-28 01:18:41,122.122 INFO    ] ================================================
[2026-10-28 01:18:41,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:18:41
[2026-10-28 01:18:42,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:18:42,540.540 INFO    ] Initializing speech engine...
[2026-10-28 01:18:42,549.549 INFO    ] 2026-10-28 01:18:42
[2026-10-28 01:18:42,843.843 INFO    ] 2026-10-28 01:18:42
[2026-10-28 01:18:42,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:18:43,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:18:43,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:18:43,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:18:43,356.356 INFO    ] time= 28/10/2026 01:18:43
[2026-10-28 01:18:43,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:18:43,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:18:43,616.616 INFO    ] No existing commands found in stream
[2026-10-28 01:18:48,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:18:48,637.637 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-28 01:18:52,038.038 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:18:52,040.040 INFO    ] Checking for system updates...
[2026-10-28 01:18:52,079.079 INFO    ] 200
[2026-10-28 01:18:52,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:18:52,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:18:52,142.142 INFO    ] No update needed
[2026-10-28 01:18:52,144.144 INFO    ] Checking for camera pi updates...
[2026-10-28 01:18:52,181.181 INFO    ] 200
[2026-10-28 01:18:52,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:18:52,225.225 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:18:52,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:18:52,311.311 INFO    ] No camera update needed
[2026-10-28 01:18:52,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:18:52,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:18:52,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:18:52,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:18:54,369.369 INFO    ] ================================================
[2026-10-28 01:18:54,387.387 INFO    ] Launching Daemon at Wed Oct 28 01:18:54 IST 2026
[2026-10-28 01:18:54,399.399 INFO    ] ================================================
[2026-10-28 01:18:54,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:18:54
[2026-10-28 01:18:55,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:18:55,854.854 INFO    ] Initializing speech engine...
[2026-10-28 01:18:55,861.861 INFO    ] 2026-10-28 01:18:55
[2026-10-28 01:18:56,121.121 INFO    ] 2026-10-28 01:18:56
[2026-10-28 01:18:56,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:18:56,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:18:56,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:18:56,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:18:56,665.665 INFO    ] time= 28/10/2026 01:18:56
[2026-10-28 01:18:56,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:18:56,711.711 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:18:56,842.842 INFO    ] No existing commands found in stream
[2026-10-28 01:19:01,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:19:01,877.877 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-28 01:19:05,566.566 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:19:05,569.569 INFO    ] Checking for system updates...
[2026-10-28 01:19:05,609.609 INFO    ] 200
[2026-10-28 01:19:05,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:19:05,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:19:05,674.674 INFO    ] No update needed
[2026-10-28 01:19:05,677.677 INFO    ] Checking for camera pi updates...
[2026-10-28 01:19:05,711.711 INFO    ] 200
[2026-10-28 01:19:05,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:19:05,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:19:05,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:19:05,858.858 INFO    ] No camera update needed
[2026-10-28 01:19:05,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:19:05,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:19:05,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:19:05,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:19:07,918.918 INFO    ] ================================================
[2026-10-28 01:19:07,934.934 INFO    ] Launching Daemon at Wed Oct 28 01:19:07 IST 2026
[2026-10-28 01:19:07,945.945 INFO    ] ================================================
[2026-10-28 01:19:08,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:19:08
[2026-10-28 01:19:09,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:19:09,385.385 INFO    ] Initializing speech engine...
[2026-10-28 01:19:09,393.393 INFO    ] 2026-10-28 01:19:09
[2026-10-28 01:19:09,678.678 INFO    ] 2026-10-28 01:19:09
[2026-10-28 01:19:09,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:19:09,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:19:09,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:19:10,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:19:10,253.253 INFO    ] time= 28/10/2026 01:19:10
[2026-10-28 01:19:10,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:19:10,278.278 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:19:10,433.433 INFO    ] No existing commands found in stream
[2026-10-28 01:19:15,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:19:15,461.461 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 01:19:16,201.201 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:19:16,204.204 INFO    ] Checking for system updates...
[2026-10-28 01:19:16,239.239 INFO    ] 200
[2026-10-28 01:19:16,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:19:16,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:19:16,296.296 INFO    ] No update needed
[2026-10-28 01:19:16,299.299 INFO    ] Checking for camera pi updates...
[2026-10-28 01:19:16,335.335 INFO    ] 200
[2026-10-28 01:19:16,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:19:16,382.382 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:19:16,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:19:16,467.467 INFO    ] No camera update needed
[2026-10-28 01:19:16,469.469 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:19:16,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:19:16,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:19:16,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:19:18,524.524 INFO    ] ================================================
[2026-10-28 01:19:18,540.540 INFO    ] Launching Daemon at Wed Oct 28 01:19:18 IST 2026
[2026-10-28 01:19:18,551.551 INFO    ] ================================================
[2026-10-28 01:19:19,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:19:19
[2026-10-28 01:19:19,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:19:20,014.014 INFO    ] Initializing speech engine...
[2026-10-28 01:19:20,020.020 INFO    ] 2026-10-28 01:19:20
[2026-10-28 01:19:20,278.278 INFO    ] 2026-10-28 01:19:20
[2026-10-28 01:19:20,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:19:20,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:19:20,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:19:20,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:19:20,837.837 INFO    ] time= 28/10/2026 01:19:20
[2026-10-28 01:19:20,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:19:20,864.864 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:19:20,991.991 INFO    ] No existing commands found in stream
[2026-10-28 01:19:26,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:19:26,009.009 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 01:19:28,302.302 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:19:28,305.305 INFO    ] Checking for system updates...
[2026-10-28 01:19:28,342.342 INFO    ] 200
[2026-10-28 01:19:28,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:19:28,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:19:28,400.400 INFO    ] No update needed
[2026-10-28 01:19:28,403.403 INFO    ] Checking for camera pi updates...
[2026-10-28 01:19:28,438.438 INFO    ] 200
[2026-10-28 01:19:28,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:19:28,482.482 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:19:28,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:19:28,571.571 INFO    ] No camera update needed
[2026-10-28 01:19:28,573.573 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:19:28,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:19:28,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:19:28,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:19:30,629.629 INFO    ] ================================================
[2026-10-28 01:19:30,645.645 INFO    ] Launching Daemon at Wed Oct 28 01:19:30 IST 2026
[2026-10-28 01:19:30,656.656 INFO    ] ================================================
[2026-10-28 01:19:31,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:19:31
[2026-10-28 01:19:31,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:19:32,123.123 INFO    ] Initializing speech engine...
[2026-10-28 01:19:32,154.154 INFO    ] 2026-10-28 01:19:32
[2026-10-28 01:19:32,458.458 INFO    ] 2026-10-28 01:19:32
[2026-10-28 01:19:32,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:19:32,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:19:32,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:19:33,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:19:33,086.086 INFO    ] time= 28/10/2026 01:19:33
[2026-10-28 01:19:33,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:19:33,121.121 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:19:33,274.274 INFO    ] No existing commands found in stream
[2026-10-28 01:19:38,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:19:38,308.308 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-28 01:19:40,209.209 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:19:40,212.212 INFO    ] Checking for system updates...
[2026-10-28 01:19:40,247.247 INFO    ] 200
[2026-10-28 01:19:40,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:19:40,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:19:40,305.305 INFO    ] No update needed
[2026-10-28 01:19:40,307.307 INFO    ] Checking for camera pi updates...
[2026-10-28 01:19:40,345.345 INFO    ] 200
[2026-10-28 01:19:40,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:19:40,388.388 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:19:40,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:19:40,491.491 INFO    ] No camera update needed
[2026-10-28 01:19:40,493.493 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:19:40,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:19:40,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:19:40,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:19:42,546.546 INFO    ] ================================================
[2026-10-28 01:19:42,562.562 INFO    ] Launching Daemon at Wed Oct 28 01:19:42 IST 2026
[2026-10-28 01:19:42,574.574 INFO    ] ================================================
[2026-10-28 01:19:43,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:19:43
[2026-10-28 01:19:43,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:19:43,991.991 INFO    ] Initializing speech engine...
[2026-10-28 01:19:44,016.016 INFO    ] 2026-10-28 01:19:44
[2026-10-28 01:19:44,287.287 INFO    ] 2026-10-28 01:19:44
[2026-10-28 01:19:44,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:19:44,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:19:44,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:19:44,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:19:44,909.909 INFO    ] time= 28/10/2026 01:19:44
[2026-10-28 01:19:44,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:19:44,932.932 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:19:45,079.079 INFO    ] No existing commands found in stream
[2026-10-28 01:19:50,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:19:50,096.096 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-28 01:19:51,220.220 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:19:51,223.223 INFO    ] Checking for system updates...
[2026-10-28 01:19:51,258.258 INFO    ] 200
[2026-10-28 01:19:51,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:19:51,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:19:51,325.325 INFO    ] No update needed
[2026-10-28 01:19:51,327.327 INFO    ] Checking for camera pi updates...
[2026-10-28 01:19:51,364.364 INFO    ] 200
[2026-10-28 01:19:51,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:19:51,410.410 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:19:51,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:19:51,473.473 INFO    ] No camera update needed
[2026-10-28 01:19:51,475.475 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:19:51,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:19:51,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:19:51,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:19:53,530.530 INFO    ] ================================================
[2026-10-28 01:19:53,546.546 INFO    ] Launching Daemon at Wed Oct 28 01:19:53 IST 2026
[2026-10-28 01:19:53,557.557 INFO    ] ================================================
[2026-10-28 01:19:54,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:19:54
[2026-10-28 01:19:54,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:19:55,161.161 INFO    ] Initializing speech engine...
[2026-10-28 01:19:55,172.172 INFO    ] 2026-10-28 01:19:55
[2026-10-28 01:19:55,480.480 INFO    ] 2026-10-28 01:19:55
[2026-10-28 01:19:55,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:19:55,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:19:55,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:19:55,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:19:56,005.005 INFO    ] time= 28/10/2026 01:19:55
[2026-10-28 01:19:56,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:19:56,043.043 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:19:56,143.143 INFO    ] No existing commands found in stream
[2026-10-28 01:20:01,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:20:01,167.167 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 01:20:01,891.891 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:20:01,898.898 INFO    ] Checking for system updates...
[2026-10-28 01:20:02,031.031 INFO    ] 200
[2026-10-28 01:20:02,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:20:02,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:20:02,164.164 INFO    ] No update needed
[2026-10-28 01:20:02,167.167 INFO    ] Checking for camera pi updates...
[2026-10-28 01:20:02,322.322 INFO    ] 200
[2026-10-28 01:20:02,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:20:02,415.415 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:20:02,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:20:02,916.916 INFO    ] No camera update needed
[2026-10-28 01:20:02,919.919 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:20:02,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:20:02,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:20:02,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:20:04,981.981 INFO    ] ================================================
[2026-10-28 01:20:05,997.997 INFO    ] Launching Daemon at Wed Oct 28 01:20:04 IST 2026
[2026-10-28 01:20:05,008.008 INFO    ] ================================================
[2026-10-28 01:20:05,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:20:05
[2026-10-28 01:20:06,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:20:06,608.608 INFO    ] Initializing speech engine...
[2026-10-28 01:20:06,620.620 INFO    ] 2026-10-28 01:20:06
[2026-10-28 01:20:06,885.885 INFO    ] 2026-10-28 01:20:06
[2026-10-28 01:20:06,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:20:07,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:20:07,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:20:07,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:20:07,449.449 INFO    ] time= 28/10/2026 01:20:07
[2026-10-28 01:20:07,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:20:07,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:20:07,626.626 INFO    ] No existing commands found in stream
[2026-10-28 01:20:12,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:20:12,656.656 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 01:20:16,262.262 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:20:16,265.265 INFO    ] Checking for system updates...
[2026-10-28 01:20:16,300.300 INFO    ] 200
[2026-10-28 01:20:16,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:20:16,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:20:16,359.359 INFO    ] No update needed
[2026-10-28 01:20:16,361.361 INFO    ] Checking for camera pi updates...
[2026-10-28 01:20:16,398.398 INFO    ] 200
[2026-10-28 01:20:16,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:20:16,444.444 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:20:16,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:20:16,532.532 INFO    ] No camera update needed
[2026-10-28 01:20:16,534.534 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:20:16,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:20:16,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:20:16,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:20:18,588.588 INFO    ] ================================================
[2026-10-28 01:20:18,604.604 INFO    ] Launching Daemon at Wed Oct 28 01:20:18 IST 2026
[2026-10-28 01:20:18,616.616 INFO    ] ================================================
[2026-10-28 01:20:19,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:20:19
[2026-10-28 01:20:19,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:20:20,095.095 INFO    ] Initializing speech engine...
[2026-10-28 01:20:20,104.104 INFO    ] 2026-10-28 01:20:20
[2026-10-28 01:20:20,365.365 INFO    ] 2026-10-28 01:20:20
[2026-10-28 01:20:20,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:20:20,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:20:20,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:20:20,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:20:20,929.929 INFO    ] time= 28/10/2026 01:20:20
[2026-10-28 01:20:20,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:20:20,966.966 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:20:21,113.113 INFO    ] No existing commands found in stream
[2026-10-28 01:20:26,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:20:26,146.146 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 01:20:26,822.822 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:20:26,825.825 INFO    ] Checking for system updates...
[2026-10-28 01:20:26,862.862 INFO    ] 200
[2026-10-28 01:20:26,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:20:26,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:20:26,919.919 INFO    ] No update needed
[2026-10-28 01:20:26,921.921 INFO    ] Checking for camera pi updates...
[2026-10-28 01:20:26,955.955 INFO    ] 200
[2026-10-28 01:20:26,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:20:26,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:20:27,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:20:27,084.084 INFO    ] No camera update needed
[2026-10-28 01:20:27,086.086 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:20:27,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:20:27,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:20:27,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:20:29,139.139 INFO    ] ================================================
[2026-10-28 01:20:29,155.155 INFO    ] Launching Daemon at Wed Oct 28 01:20:29 IST 2026
[2026-10-28 01:20:29,166.166 INFO    ] ================================================
[2026-10-28 01:20:29,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:20:29
[2026-10-28 01:20:30,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:20:30,596.596 INFO    ] Initializing speech engine...
[2026-10-28 01:20:30,603.603 INFO    ] 2026-10-28 01:20:30
[2026-10-28 01:20:30,861.861 INFO    ] 2026-10-28 01:20:30
[2026-10-28 01:20:30,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:20:31,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:20:31,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:20:31,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:20:31,400.400 INFO    ] time= 28/10/2026 01:20:31
[2026-10-28 01:20:31,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:20:31,425.425 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:20:31,548.548 INFO    ] No existing commands found in stream
[2026-10-28 01:20:36,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:20:36,565.565 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 01:20:38,310.310 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:20:38,312.312 INFO    ] Checking for system updates...
[2026-10-28 01:20:38,352.352 INFO    ] 200
[2026-10-28 01:20:38,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:20:38,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:20:38,416.416 INFO    ] No update needed
[2026-10-28 01:20:38,418.418 INFO    ] Checking for camera pi updates...
[2026-10-28 01:20:38,452.452 INFO    ] 200
[2026-10-28 01:20:38,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:20:38,500.500 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:20:38,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:20:38,586.586 INFO    ] No camera update needed
[2026-10-28 01:20:38,588.588 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:20:38,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:20:38,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:20:38,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:20:40,642.642 INFO    ] ================================================
[2026-10-28 01:20:40,658.658 INFO    ] Launching Daemon at Wed Oct 28 01:20:40 IST 2026
[2026-10-28 01:20:40,669.669 INFO    ] ================================================
[2026-10-28 01:20:41,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:20:41
[2026-10-28 01:20:41,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:20:42,067.067 INFO    ] Initializing speech engine...
[2026-10-28 01:20:42,081.081 INFO    ] 2026-10-28 01:20:42
[2026-10-28 01:20:42,362.362 INFO    ] 2026-10-28 01:20:42
[2026-10-28 01:20:42,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:20:42,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:20:42,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:20:42,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:20:42,918.918 INFO    ] time= 28/10/2026 01:20:42
[2026-10-28 01:20:42,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:20:43,007.007 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:20:43,159.159 INFO    ] No existing commands found in stream
[2026-10-28 01:20:48,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:20:48,187.187 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-28 01:20:49,207.207 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:20:49,210.210 INFO    ] Checking for system updates...
[2026-10-28 01:20:49,249.249 INFO    ] 200
[2026-10-28 01:20:49,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:20:49,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:20:49,307.307 INFO    ] No update needed
[2026-10-28 01:20:49,310.310 INFO    ] Checking for camera pi updates...
[2026-10-28 01:20:49,343.343 INFO    ] 200
[2026-10-28 01:20:49,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:20:49,388.388 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:20:49,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:20:49,471.471 INFO    ] No camera update needed
[2026-10-28 01:20:49,474.474 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:20:49,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:20:49,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:20:49,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:20:51,530.530 INFO    ] ================================================
[2026-10-28 01:20:51,547.547 INFO    ] Launching Daemon at Wed Oct 28 01:20:51 IST 2026
[2026-10-28 01:20:51,557.557 INFO    ] ================================================
[2026-10-28 01:20:52,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:20:52
[2026-10-28 01:20:52,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:20:53,058.058 INFO    ] Initializing speech engine...
[2026-10-28 01:20:53,063.063 INFO    ] 2026-10-28 01:20:53
[2026-10-28 01:20:53,330.330 INFO    ] 2026-10-28 01:20:53
[2026-10-28 01:20:53,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:20:53,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:20:53,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:20:53,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:20:53,860.860 INFO    ] time= 28/10/2026 01:20:53
[2026-10-28 01:20:53,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:20:53,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:20:54,117.117 INFO    ] No existing commands found in stream
[2026-10-28 01:20:59,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:20:59,147.147 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 01:21:00,848.848 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:21:00,851.851 INFO    ] Checking for system updates...
[2026-10-28 01:21:00,886.886 INFO    ] 200
[2026-10-28 01:21:00,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:21:00,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:21:00,945.945 INFO    ] No update needed
[2026-10-28 01:21:00,947.947 INFO    ] Checking for camera pi updates...
[2026-10-28 01:21:00,985.985 INFO    ] 200
[2026-10-28 01:21:00,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:21:01,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:21:01,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:21:01,128.128 INFO    ] No camera update needed
[2026-10-28 01:21:01,136.136 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:21:01,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:21:01,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:21:01,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:21:03,209.209 INFO    ] ================================================
[2026-10-28 01:21:03,225.225 INFO    ] Launching Daemon at Wed Oct 28 01:21:03 IST 2026
[2026-10-28 01:21:03,236.236 INFO    ] ================================================
[2026-10-28 01:21:03,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:21:03
[2026-10-28 01:21:04,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:21:04,704.704 INFO    ] Initializing speech engine...
[2026-10-28 01:21:04,714.714 INFO    ] 2026-10-28 01:21:04
[2026-10-28 01:21:04,960.960 INFO    ] 2026-10-28 01:21:04
[2026-10-28 01:21:05,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:21:05,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:21:05,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:21:05,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:21:05,519.519 INFO    ] time= 28/10/2026 01:21:05
[2026-10-28 01:21:05,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:21:05,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:21:05,672.672 INFO    ] No existing commands found in stream
[2026-10-28 01:21:10,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:21:10,691.691 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 01:21:12,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:21:12,369.369 INFO    ] Checking for system updates...
[2026-10-28 01:21:12,408.408 INFO    ] 200
[2026-10-28 01:21:12,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:21:12,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:21:12,471.471 INFO    ] No update needed
[2026-10-28 01:21:12,474.474 INFO    ] Checking for camera pi updates...
[2026-10-28 01:21:12,511.511 INFO    ] 200
[2026-10-28 01:21:12,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:21:12,559.559 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:21:12,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:21:12,780.780 INFO    ] No camera update needed
[2026-10-28 01:21:12,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:21:12,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:21:12,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:21:12,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:21:14,835.835 INFO    ] ================================================
[2026-10-28 01:21:14,850.850 INFO    ] Launching Daemon at Wed Oct 28 01:21:14 IST 2026
[2026-10-28 01:21:14,860.860 INFO    ] ================================================
[2026-10-28 01:21:15,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:21:15
[2026-10-28 01:21:16,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:21:16,286.286 INFO    ] Initializing speech engine...
[2026-10-28 01:21:16,295.295 INFO    ] 2026-10-28 01:21:16
[2026-10-28 01:21:16,542.542 INFO    ] 2026-10-28 01:21:16
[2026-10-28 01:21:16,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:21:16,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:21:16,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:21:17,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:21:17,098.098 INFO    ] time= 28/10/2026 01:21:17
[2026-10-28 01:21:17,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:21:17,129.129 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:21:17,253.253 INFO    ] No existing commands found in stream
[2026-10-28 01:21:22,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:21:22,284.284 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 01:21:26,167.167 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:21:26,171.171 INFO    ] Checking for system updates...
[2026-10-28 01:21:26,208.208 INFO    ] 200
[2026-10-28 01:21:26,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:21:26,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:21:26,267.267 INFO    ] No update needed
[2026-10-28 01:21:26,270.270 INFO    ] Checking for camera pi updates...
[2026-10-28 01:21:26,305.305 INFO    ] 200
[2026-10-28 01:21:26,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:21:26,350.350 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:21:26,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:21:26,435.435 INFO    ] No camera update needed
[2026-10-28 01:21:26,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:21:26,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:21:26,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:21:26,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:21:28,494.494 INFO    ] ================================================
[2026-10-28 01:21:28,509.509 INFO    ] Launching Daemon at Wed Oct 28 01:21:28 IST 2026
[2026-10-28 01:21:28,520.520 INFO    ] ================================================
[2026-10-28 01:21:29,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:21:29
[2026-10-28 01:21:29,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:21:30,150.150 INFO    ] Initializing speech engine...
[2026-10-28 01:21:30,157.157 INFO    ] 2026-10-28 01:21:30
[2026-10-28 01:21:30,432.432 INFO    ] 2026-10-28 01:21:30
[2026-10-28 01:21:30,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:21:30,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:21:30,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:21:30,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:21:30,983.983 INFO    ] time= 28/10/2026 01:21:30
[2026-10-28 01:21:31,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:21:31,031.031 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:21:31,222.222 INFO    ] No existing commands found in stream
[2026-10-28 01:21:36,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:21:36,256.256 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-28 01:21:40,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:21:40,691.691 INFO    ] Checking for system updates...
[2026-10-28 01:21:40,727.727 INFO    ] 200
[2026-10-28 01:21:40,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:21:40,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:21:40,791.791 INFO    ] No update needed
[2026-10-28 01:21:40,793.793 INFO    ] Checking for camera pi updates...
[2026-10-28 01:21:40,827.827 INFO    ] 200
[2026-10-28 01:21:40,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:21:40,875.875 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:21:40,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:21:40,962.962 INFO    ] No camera update needed
[2026-10-28 01:21:40,964.964 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:21:40,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:21:40,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:21:40,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:21:43,018.018 INFO    ] ================================================
[2026-10-28 01:21:43,033.033 INFO    ] Launching Daemon at Wed Oct 28 01:21:43 IST 2026
[2026-10-28 01:21:43,043.043 INFO    ] ================================================
[2026-10-28 01:21:43,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:21:43
[2026-10-28 01:21:44,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:21:44,460.460 INFO    ] Initializing speech engine...
[2026-10-28 01:21:44,467.467 INFO    ] 2026-10-28 01:21:44
[2026-10-28 01:21:44,710.710 INFO    ] 2026-10-28 01:21:44
[2026-10-28 01:21:44,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:21:44,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:21:44,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:21:45,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:21:45,210.210 INFO    ] time= 28/10/2026 01:21:45
[2026-10-28 01:21:45,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:21:45,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:21:45,420.420 INFO    ] No existing commands found in stream
[2026-10-28 01:21:50,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:21:50,445.445 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 01:21:53,836.836 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:21:53,838.838 INFO    ] Checking for system updates...
[2026-10-28 01:21:53,878.878 INFO    ] 200
[2026-10-28 01:21:53,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:21:53,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:21:53,942.942 INFO    ] No update needed
[2026-10-28 01:21:53,945.945 INFO    ] Checking for camera pi updates...
[2026-10-28 01:21:53,983.983 INFO    ] 200
[2026-10-28 01:21:53,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:21:54,032.032 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:21:54,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:21:54,114.114 INFO    ] No camera update needed
[2026-10-28 01:21:54,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:21:54,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:21:54,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:21:54,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:21:56,170.170 INFO    ] ================================================
[2026-10-28 01:21:56,184.184 INFO    ] Launching Daemon at Wed Oct 28 01:21:56 IST 2026
[2026-10-28 01:21:56,195.195 INFO    ] ================================================
[2026-10-28 01:21:56,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:21:56
[2026-10-28 01:21:57,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:21:57,630.630 INFO    ] Initializing speech engine...
[2026-10-28 01:21:57,639.639 INFO    ] 2026-10-28 01:21:57
[2026-10-28 01:21:57,888.888 INFO    ] 2026-10-28 01:21:57
[2026-10-28 01:21:57,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:21:58,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:21:58,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:21:58,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:21:58,448.448 INFO    ] time= 28/10/2026 01:21:58
[2026-10-28 01:21:58,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:21:58,488.488 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:21:58,631.631 INFO    ] No existing commands found in stream
[2026-10-28 01:22:03,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:22:03,659.659 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-28 01:22:04,355.355 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:22:04,358.358 INFO    ] Checking for system updates...
[2026-10-28 01:22:04,393.393 INFO    ] 200
[2026-10-28 01:22:04,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:22:04,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:22:04,457.457 INFO    ] No update needed
[2026-10-28 01:22:04,459.459 INFO    ] Checking for camera pi updates...
[2026-10-28 01:22:04,493.493 INFO    ] 200
[2026-10-28 01:22:04,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:22:04,539.539 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:22:04,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:22:04,639.639 INFO    ] No camera update needed
[2026-10-28 01:22:04,641.641 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:22:04,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:22:04,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:22:04,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:22:06,694.694 INFO    ] ================================================
[2026-10-28 01:22:06,709.709 INFO    ] Launching Daemon at Wed Oct 28 01:22:06 IST 2026
[2026-10-28 01:22:06,720.720 INFO    ] ================================================
[2026-10-28 01:22:07,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:22:07
[2026-10-28 01:22:07,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:22:08,162.162 INFO    ] Initializing speech engine...
[2026-10-28 01:22:08,185.185 INFO    ] 2026-10-28 01:22:08
[2026-10-28 01:22:08,441.441 INFO    ] 2026-10-28 01:22:08
[2026-10-28 01:22:08,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:22:08,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:22:08,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:22:08,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:22:09,024.024 INFO    ] time= 28/10/2026 01:22:08
[2026-10-28 01:22:09,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:22:09,057.057 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:22:09,196.196 INFO    ] No existing commands found in stream
[2026-10-28 01:22:14,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:22:14,225.225 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-28 01:22:17,883.883 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:22:17,886.886 INFO    ] Checking for system updates...
[2026-10-28 01:22:17,925.925 INFO    ] 200
[2026-10-28 01:22:17,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:22:17,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:22:17,983.983 INFO    ] No update needed
[2026-10-28 01:22:17,986.986 INFO    ] Checking for camera pi updates...
[2026-10-28 01:22:18,023.023 INFO    ] 200
[2026-10-28 01:22:18,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:22:18,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:22:18,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:22:18,169.169 INFO    ] No camera update needed
[2026-10-28 01:22:18,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:22:18,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:22:18,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:22:18,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:22:20,225.225 INFO    ] ================================================
[2026-10-28 01:22:20,240.240 INFO    ] Launching Daemon at Wed Oct 28 01:22:20 IST 2026
[2026-10-28 01:22:20,250.250 INFO    ] ================================================
[2026-10-28 01:22:20,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:22:20
[2026-10-28 01:22:21,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:22:21,878.878 INFO    ] Initializing speech engine...
[2026-10-28 01:22:21,887.887 INFO    ] 2026-10-28 01:22:21
[2026-10-28 01:22:22,166.166 INFO    ] 2026-10-28 01:22:22
[2026-10-28 01:22:22,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:22:22,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:22:22,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:22:22,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:22:22,755.755 INFO    ] time= 28/10/2026 01:22:22
[2026-10-28 01:22:22,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:22:22,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:22:22,960.960 INFO    ] No existing commands found in stream
[2026-10-28 01:22:27,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:22:27,980.980 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-28 01:22:29,706.706 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:22:29,709.709 INFO    ] Checking for system updates...
[2026-10-28 01:22:29,750.750 INFO    ] 200
[2026-10-28 01:22:29,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:22:29,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:22:29,817.817 INFO    ] No update needed
[2026-10-28 01:22:29,820.820 INFO    ] Checking for camera pi updates...
[2026-10-28 01:22:29,858.858 INFO    ] 200
[2026-10-28 01:22:29,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:22:29,910.910 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:22:30,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:22:30,008.008 INFO    ] No camera update needed
[2026-10-28 01:22:30,011.011 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:22:30,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:22:30,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:22:30,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:22:32,066.066 INFO    ] ================================================
[2026-10-28 01:22:32,088.088 INFO    ] Launching Daemon at Wed Oct 28 01:22:32 IST 2026
[2026-10-28 01:22:32,099.099 INFO    ] ================================================
[2026-10-28 01:22:32,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:22:32
[2026-10-28 01:22:33,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:22:33,785.785 INFO    ] Initializing speech engine...
[2026-10-28 01:22:33,790.790 INFO    ] 2026-10-28 01:22:33
[2026-10-28 01:22:34,062.062 INFO    ] 2026-10-28 01:22:34
[2026-10-28 01:22:34,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:22:34,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:22:34,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:22:34,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:22:34,623.623 INFO    ] time= 28/10/2026 01:22:34
[2026-10-28 01:22:34,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:22:34,672.672 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:22:34,806.806 INFO    ] No existing commands found in stream
[2026-10-28 01:22:39,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:22:39,846.846 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-28 01:22:43,586.586 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:22:43,589.589 INFO    ] Checking for system updates...
[2026-10-28 01:22:43,626.626 INFO    ] 200
[2026-10-28 01:22:43,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:22:43,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:22:43,684.684 INFO    ] No update needed
[2026-10-28 01:22:43,687.687 INFO    ] Checking for camera pi updates...
[2026-10-28 01:22:43,727.727 INFO    ] 200
[2026-10-28 01:22:43,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:22:43,771.771 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:22:43,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:22:43,855.855 INFO    ] No camera update needed
[2026-10-28 01:22:43,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:22:43,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:22:43,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:22:43,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:22:45,917.917 INFO    ] ================================================
[2026-10-28 01:22:45,934.934 INFO    ] Launching Daemon at Wed Oct 28 01:22:45 IST 2026
[2026-10-28 01:22:45,945.945 INFO    ] ================================================
[2026-10-28 01:22:46,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:22:46
[2026-10-28 01:22:47,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:22:47,441.441 INFO    ] Initializing speech engine...
[2026-10-28 01:22:47,455.455 INFO    ] 2026-10-28 01:22:47
[2026-10-28 01:22:47,757.757 INFO    ] 2026-10-28 01:22:47
[2026-10-28 01:22:47,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:22:48,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:22:48,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:22:48,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:22:48,199.199 INFO    ] time= 28/10/2026 01:22:48
[2026-10-28 01:22:48,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:22:48,248.248 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:22:48,384.384 INFO    ] No existing commands found in stream
[2026-10-28 01:22:53,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:22:53,411.411 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-28 01:22:55,877.877 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:22:55,880.880 INFO    ] Checking for system updates...
[2026-10-28 01:22:55,917.917 INFO    ] 200
[2026-10-28 01:22:55,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:22:55,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:22:55,983.983 INFO    ] No update needed
[2026-10-28 01:22:55,986.986 INFO    ] Checking for camera pi updates...
[2026-10-28 01:22:56,025.025 INFO    ] 200
[2026-10-28 01:22:56,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:22:56,079.079 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:22:56,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:22:56,164.164 INFO    ] No camera update needed
[2026-10-28 01:22:56,167.167 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:22:56,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:22:56,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:22:56,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:22:58,222.222 INFO    ] ================================================
[2026-10-28 01:22:58,237.237 INFO    ] Launching Daemon at Wed Oct 28 01:22:58 IST 2026
[2026-10-28 01:22:58,248.248 INFO    ] ================================================
[2026-10-28 01:22:58,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:22:58
[2026-10-28 01:22:59,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:22:59,892.892 INFO    ] Initializing speech engine...
[2026-10-28 01:22:59,906.906 INFO    ] 2026-10-28 01:22:59
[2026-10-28 01:23:00,179.179 INFO    ] 2026-10-28 01:23:00
[2026-10-28 01:23:00,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:23:00,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:23:00,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:23:00,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:23:00,769.769 INFO    ] time= 28/10/2026 01:23:00
[2026-10-28 01:23:00,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:23:00,808.808 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:23:00,935.935 INFO    ] No existing commands found in stream
[2026-10-28 01:23:05,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:23:05,975.975 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 01:23:09,596.596 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:23:09,599.599 INFO    ] Checking for system updates...
[2026-10-28 01:23:09,637.637 INFO    ] 200
[2026-10-28 01:23:09,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:23:09,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:23:09,696.696 INFO    ] No update needed
[2026-10-28 01:23:09,699.699 INFO    ] Checking for camera pi updates...
[2026-10-28 01:23:09,734.734 INFO    ] 200
[2026-10-28 01:23:09,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:23:09,784.784 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:23:09,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:23:09,868.868 INFO    ] No camera update needed
[2026-10-28 01:23:09,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:23:09,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:23:09,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:23:09,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:23:11,927.927 INFO    ] ================================================
[2026-10-28 01:23:11,943.943 INFO    ] Launching Daemon at Wed Oct 28 01:23:11 IST 2026
[2026-10-28 01:23:11,954.954 INFO    ] ================================================
[2026-10-28 01:23:12,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:23:12
[2026-10-28 01:23:13,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:23:13,365.365 INFO    ] Initializing speech engine...
[2026-10-28 01:23:13,372.372 INFO    ] 2026-10-28 01:23:13
[2026-10-28 01:23:13,678.678 INFO    ] 2026-10-28 01:23:13
[2026-10-28 01:23:13,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:23:13,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:23:13,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:23:14,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:23:14,198.198 INFO    ] time= 28/10/2026 01:23:14
[2026-10-28 01:23:14,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:23:14,291.291 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:23:14,396.396 INFO    ] No existing commands found in stream
[2026-10-28 01:23:19,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:23:19,410.410 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-28 01:23:21,984.984 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:23:21,987.987 INFO    ] Checking for system updates...
[2026-10-28 01:23:22,023.023 INFO    ] 200
[2026-10-28 01:23:22,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:23:22,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:23:22,088.088 INFO    ] No update needed
[2026-10-28 01:23:22,090.090 INFO    ] Checking for camera pi updates...
[2026-10-28 01:23:22,125.125 INFO    ] 200
[2026-10-28 01:23:22,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:23:22,167.167 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:23:22,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:23:22,349.349 INFO    ] No camera update needed
[2026-10-28 01:23:22,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:23:22,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:23:22,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:23:22,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:23:24,406.406 INFO    ] ================================================
[2026-10-28 01:23:24,421.421 INFO    ] Launching Daemon at Wed Oct 28 01:23:24 IST 2026
[2026-10-28 01:23:24,432.432 INFO    ] ================================================
[2026-10-28 01:23:25,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:23:24
[2026-10-28 01:23:25,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:23:25,858.858 INFO    ] Initializing speech engine...
[2026-10-28 01:23:25,867.867 INFO    ] 2026-10-28 01:23:25
[2026-10-28 01:23:26,169.169 INFO    ] 2026-10-28 01:23:26
[2026-10-28 01:23:26,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:23:26,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:23:26,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:23:26,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:23:26,680.680 INFO    ] time= 28/10/2026 01:23:26
[2026-10-28 01:23:26,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:23:26,784.784 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:23:26,967.967 INFO    ] No existing commands found in stream
[2026-10-28 01:23:31,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:23:31,999.999 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 01:23:34,284.284 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:23:34,287.287 INFO    ] Checking for system updates...
[2026-10-28 01:23:34,322.322 INFO    ] 200
[2026-10-28 01:23:34,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:23:34,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:23:34,379.379 INFO    ] No update needed
[2026-10-28 01:23:34,381.381 INFO    ] Checking for camera pi updates...
[2026-10-28 01:23:34,415.415 INFO    ] 200
[2026-10-28 01:23:34,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:23:34,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:23:34,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:23:34,543.543 INFO    ] No camera update needed
[2026-10-28 01:23:34,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:23:34,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:23:34,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:23:34,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:23:36,600.600 INFO    ] ================================================
[2026-10-28 01:23:36,616.616 INFO    ] Launching Daemon at Wed Oct 28 01:23:36 IST 2026
[2026-10-28 01:23:36,626.626 INFO    ] ================================================
[2026-10-28 01:23:37,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:23:37
[2026-10-28 01:23:37,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:23:38,290.290 INFO    ] Initializing speech engine...
[2026-10-28 01:23:38,304.304 INFO    ] 2026-10-28 01:23:38
[2026-10-28 01:23:38,592.592 INFO    ] 2026-10-28 01:23:38
[2026-10-28 01:23:38,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:23:38,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:23:38,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:23:39,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:23:39,144.144 INFO    ] time= 28/10/2026 01:23:39
[2026-10-28 01:23:39,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:23:39,179.179 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:23:39,311.311 INFO    ] No existing commands found in stream
[2026-10-28 01:23:44,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:23:44,351.351 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-28 01:23:48,426.426 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:23:48,429.429 INFO    ] Checking for system updates...
[2026-10-28 01:23:48,467.467 INFO    ] 200
[2026-10-28 01:23:48,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:23:48,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:23:48,528.528 INFO    ] No update needed
[2026-10-28 01:23:48,530.530 INFO    ] Checking for camera pi updates...
[2026-10-28 01:23:48,565.565 INFO    ] 200
[2026-10-28 01:23:48,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:23:48,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:23:48,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:23:48,697.697 INFO    ] No camera update needed
[2026-10-28 01:23:48,700.700 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:23:48,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:23:48,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:23:48,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:23:50,757.757 INFO    ] ================================================
[2026-10-28 01:23:50,772.772 INFO    ] Launching Daemon at Wed Oct 28 01:23:50 IST 2026
[2026-10-28 01:23:50,783.783 INFO    ] ================================================
[2026-10-28 01:23:51,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:23:51
[2026-10-28 01:23:51,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:23:52,263.263 INFO    ] Initializing speech engine...
[2026-10-28 01:23:52,276.276 INFO    ] 2026-10-28 01:23:52
[2026-10-28 01:23:52,526.526 INFO    ] 2026-10-28 01:23:52
[2026-10-28 01:23:52,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:23:52,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:23:52,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:23:53,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:23:53,092.092 INFO    ] time= 28/10/2026 01:23:53
[2026-10-28 01:23:53,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:23:53,127.127 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:23:53,287.287 INFO    ] No existing commands found in stream
[2026-10-28 01:23:58,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:23:58,320.320 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-28 01:23:59,434.434 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:23:59,437.437 INFO    ] Checking for system updates...
[2026-10-28 01:23:59,475.475 INFO    ] 200
[2026-10-28 01:23:59,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:23:59,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:23:59,536.536 INFO    ] No update needed
[2026-10-28 01:23:59,538.538 INFO    ] Checking for camera pi updates...
[2026-10-28 01:23:59,578.578 INFO    ] 200
[2026-10-28 01:23:59,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:23:59,624.624 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:23:59,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:23:59,726.726 INFO    ] No camera update needed
[2026-10-28 01:23:59,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:23:59,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:23:59,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:23:59,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:24:01,796.796 INFO    ] ================================================
[2026-10-28 01:24:01,836.836 INFO    ] Launching Daemon at Wed Oct 28 01:24:01 IST 2026
[2026-10-28 01:24:01,856.856 INFO    ] ================================================
[2026-10-28 01:24:02,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:24:02
[2026-10-28 01:24:03,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:24:03,493.493 INFO    ] Initializing speech engine...
[2026-10-28 01:24:03,502.502 INFO    ] 2026-10-28 01:24:03
[2026-10-28 01:24:03,808.808 INFO    ] 2026-10-28 01:24:03
[2026-10-28 01:24:03,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:24:04,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:24:04,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:24:04,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:24:04,381.381 INFO    ] time= 28/10/2026 01:24:04
[2026-10-28 01:24:04,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:24:04,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:24:04,537.537 INFO    ] No existing commands found in stream
[2026-10-28 01:24:09,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:24:09,558.558 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-28 01:24:11,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:24:11,746.746 INFO    ] Checking for system updates...
[2026-10-28 01:24:11,780.780 INFO    ] 200
[2026-10-28 01:24:11,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:24:11,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:24:11,837.837 INFO    ] No update needed
[2026-10-28 01:24:11,839.839 INFO    ] Checking for camera pi updates...
[2026-10-28 01:24:11,872.872 INFO    ] 200
[2026-10-28 01:24:11,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:24:11,921.921 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:24:12,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:24:12,002.002 INFO    ] No camera update needed
[2026-10-28 01:24:12,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:24:12,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:24:12,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:24:12,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:24:14,057.057 INFO    ] ================================================
[2026-10-28 01:24:14,072.072 INFO    ] Launching Daemon at Wed Oct 28 01:24:14 IST 2026
[2026-10-28 01:24:14,083.083 INFO    ] ================================================
[2026-10-28 01:24:14,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:24:14
[2026-10-28 01:24:15,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:24:15,559.559 INFO    ] Initializing speech engine...
[2026-10-28 01:24:15,572.572 INFO    ] 2026-10-28 01:24:15
[2026-10-28 01:24:15,863.863 INFO    ] 2026-10-28 01:24:15
[2026-10-28 01:24:15,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:24:16,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:24:16,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:24:16,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:24:16,398.398 INFO    ] time= 28/10/2026 01:24:16
[2026-10-28 01:24:16,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:24:16,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:24:16,658.658 INFO    ] No existing commands found in stream
[2026-10-28 01:24:21,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:24:21,684.684 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-28 01:24:25,387.387 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:24:25,390.390 INFO    ] Checking for system updates...
[2026-10-28 01:24:25,428.428 INFO    ] 200
[2026-10-28 01:24:25,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:24:25,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:24:25,486.486 INFO    ] No update needed
[2026-10-28 01:24:25,488.488 INFO    ] Checking for camera pi updates...
[2026-10-28 01:24:25,521.521 INFO    ] 200
[2026-10-28 01:24:25,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:24:25,564.564 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:24:25,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:24:25,640.640 INFO    ] No camera update needed
[2026-10-28 01:24:25,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:24:25,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:24:25,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:24:25,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:24:27,695.695 INFO    ] ================================================
[2026-10-28 01:24:27,712.712 INFO    ] Launching Daemon at Wed Oct 28 01:24:27 IST 2026
[2026-10-28 01:24:27,724.724 INFO    ] ================================================
[2026-10-28 01:24:28,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:24:28
[2026-10-28 01:24:28,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:24:29,180.180 INFO    ] Initializing speech engine...
[2026-10-28 01:24:29,189.189 INFO    ] 2026-10-28 01:24:29
[2026-10-28 01:24:29,434.434 INFO    ] 2026-10-28 01:24:29
[2026-10-28 01:24:29,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:24:29,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:24:29,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:24:29,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:24:29,991.991 INFO    ] time= 28/10/2026 01:24:29
[2026-10-28 01:24:29,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:24:30,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:24:30,164.164 INFO    ] No existing commands found in stream
[2026-10-28 01:24:35,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:24:35,204.204 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-28 01:24:37,305.305 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:24:37,307.307 INFO    ] Checking for system updates...
[2026-10-28 01:24:37,344.344 INFO    ] 200
[2026-10-28 01:24:37,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:24:37,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:24:37,402.402 INFO    ] No update needed
[2026-10-28 01:24:37,404.404 INFO    ] Checking for camera pi updates...
[2026-10-28 01:24:37,446.446 INFO    ] 200
[2026-10-28 01:24:37,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:24:37,489.489 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:24:37,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:24:37,558.558 INFO    ] No camera update needed
[2026-10-28 01:24:37,561.561 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:24:37,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:24:37,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:24:37,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:24:39,615.615 INFO    ] ================================================
[2026-10-28 01:24:39,631.631 INFO    ] Launching Daemon at Wed Oct 28 01:24:39 IST 2026
[2026-10-28 01:24:39,642.642 INFO    ] ================================================
[2026-10-28 01:24:40,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:24:40
[2026-10-28 01:24:40,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:24:41,077.077 INFO    ] Initializing speech engine...
[2026-10-28 01:24:41,085.085 INFO    ] 2026-10-28 01:24:41
[2026-10-28 01:24:41,341.341 INFO    ] 2026-10-28 01:24:41
[2026-10-28 01:24:41,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:24:41,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:24:41,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:24:41,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:24:41,884.884 INFO    ] time= 28/10/2026 01:24:41
[2026-10-28 01:24:41,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:24:41,908.908 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:24:42,036.036 INFO    ] No existing commands found in stream
[2026-10-28 01:24:47,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:24:47,053.053 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 01:24:50,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:24:50,587.587 INFO    ] Checking for system updates...
[2026-10-28 01:24:50,623.623 INFO    ] 200
[2026-10-28 01:24:50,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:24:50,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:24:50,679.679 INFO    ] No update needed
[2026-10-28 01:24:50,682.682 INFO    ] Checking for camera pi updates...
[2026-10-28 01:24:50,719.719 INFO    ] 200
[2026-10-28 01:24:50,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:24:50,761.761 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:24:50,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:24:50,843.843 INFO    ] No camera update needed
[2026-10-28 01:24:50,845.845 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:24:50,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:24:50,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:24:50,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:24:52,900.900 INFO    ] ================================================
[2026-10-28 01:24:52,915.915 INFO    ] Launching Daemon at Wed Oct 28 01:24:52 IST 2026
[2026-10-28 01:24:52,925.925 INFO    ] ================================================
[2026-10-28 01:24:53,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:24:53
[2026-10-28 01:24:54,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:24:54,335.335 INFO    ] Initializing speech engine...
[2026-10-28 01:24:54,354.354 INFO    ] 2026-10-28 01:24:54
[2026-10-28 01:24:54,610.610 INFO    ] 2026-10-28 01:24:54
[2026-10-28 01:24:54,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:24:54,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:24:54,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:24:55,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:24:55,164.164 INFO    ] time= 28/10/2026 01:24:55
[2026-10-28 01:24:55,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:24:55,199.199 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:24:55,336.336 INFO    ] No existing commands found in stream
[2026-10-28 01:25:00,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:25:00,364.364 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-28 01:25:04,466.466 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:25:04,468.468 INFO    ] Checking for system updates...
[2026-10-28 01:25:04,505.505 INFO    ] 200
[2026-10-28 01:25:04,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:25:04,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:25:04,566.566 INFO    ] No update needed
[2026-10-28 01:25:04,569.569 INFO    ] Checking for camera pi updates...
[2026-10-28 01:25:04,603.603 INFO    ] 200
[2026-10-28 01:25:04,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:25:04,646.646 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:25:04,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:25:04,728.728 INFO    ] No camera update needed
[2026-10-28 01:25:04,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:25:04,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:25:04,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:25:04,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:25:06,785.785 INFO    ] ================================================
[2026-10-28 01:25:06,800.800 INFO    ] Launching Daemon at Wed Oct 28 01:25:06 IST 2026
[2026-10-28 01:25:06,811.811 INFO    ] ================================================
[2026-10-28 01:25:07,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:25:07
[2026-10-28 01:25:07,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:25:08,204.204 INFO    ] Initializing speech engine...
[2026-10-28 01:25:08,212.212 INFO    ] 2026-10-28 01:25:08
[2026-10-28 01:25:08,487.487 INFO    ] 2026-10-28 01:25:08
[2026-10-28 01:25:08,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:25:08,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:25:08,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:25:09,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:25:09,056.056 INFO    ] time= 28/10/2026 01:25:09
[2026-10-28 01:25:09,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:25:09,080.080 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:25:09,213.213 INFO    ] No existing commands found in stream
[2026-10-28 01:25:14,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:25:14,229.229 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-28 01:25:15,123.123 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:25:15,125.125 INFO    ] Checking for system updates...
[2026-10-28 01:25:15,160.160 INFO    ] 200
[2026-10-28 01:25:15,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:25:15,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:25:15,217.217 INFO    ] No update needed
[2026-10-28 01:25:15,219.219 INFO    ] Checking for camera pi updates...
[2026-10-28 01:25:15,257.257 INFO    ] 200
[2026-10-28 01:25:15,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:25:15,303.303 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:25:15,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:25:15,384.384 INFO    ] No camera update needed
[2026-10-28 01:25:15,386.386 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:25:15,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:25:15,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:25:15,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:25:17,439.439 INFO    ] ================================================
[2026-10-28 01:25:17,453.453 INFO    ] Launching Daemon at Wed Oct 28 01:25:17 IST 2026
[2026-10-28 01:25:17,464.464 INFO    ] ================================================
[2026-10-28 01:25:18,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:25:18
[2026-10-28 01:25:18,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:25:18,932.932 INFO    ] Initializing speech engine...
[2026-10-28 01:25:18,951.951 INFO    ] 2026-10-28 01:25:18
[2026-10-28 01:25:19,232.232 INFO    ] 2026-10-28 01:25:19
[2026-10-28 01:25:19,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:25:19,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:25:19,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:25:19,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:25:19,808.808 INFO    ] time= 28/10/2026 01:25:19
[2026-10-28 01:25:19,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:25:19,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:25:20,014.014 INFO    ] No existing commands found in stream
[2026-10-28 01:25:25,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:25:25,049.049 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 01:25:28,627.627 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:25:28,630.630 INFO    ] Checking for system updates...
[2026-10-28 01:25:28,672.672 INFO    ] 200
[2026-10-28 01:25:28,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:25:28,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:25:28,732.732 INFO    ] No update needed
[2026-10-28 01:25:28,735.735 INFO    ] Checking for camera pi updates...
[2026-10-28 01:25:28,769.769 INFO    ] 200
[2026-10-28 01:25:28,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:25:28,814.814 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:25:28,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:25:28,998.998 INFO    ] No camera update needed
[2026-10-28 01:25:29,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:25:29,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:25:29,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:25:29,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:25:31,057.057 INFO    ] ================================================
[2026-10-28 01:25:31,075.075 INFO    ] Launching Daemon at Wed Oct 28 01:25:31 IST 2026
[2026-10-28 01:25:31,087.087 INFO    ] ================================================
[2026-10-28 01:25:31,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:25:31
[2026-10-28 01:25:32,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:25:32,702.702 INFO    ] Initializing speech engine...
[2026-10-28 01:25:32,709.709 INFO    ] 2026-10-28 01:25:32
[2026-10-28 01:25:33,018.018 INFO    ] 2026-10-28 01:25:32
[2026-10-28 01:25:33,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:25:33,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:25:33,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:25:33,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:25:33,752.752 INFO    ] time= 28/10/2026 01:25:33
[2026-10-28 01:25:33,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:25:33,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:25:34,001.001 INFO    ] No existing commands found in stream
[2026-10-28 01:25:39,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:25:39,019.019 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-28 01:25:41,906.906 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:25:41,908.908 INFO    ] Checking for system updates...
[2026-10-28 01:25:41,945.945 INFO    ] 200
[2026-10-28 01:25:41,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:25:42,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:25:42,003.003 INFO    ] No update needed
[2026-10-28 01:25:42,005.005 INFO    ] Checking for camera pi updates...
[2026-10-28 01:25:42,039.039 INFO    ] 200
[2026-10-28 01:25:42,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:25:42,087.087 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:25:42,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:25:42,170.170 INFO    ] No camera update needed
[2026-10-28 01:25:42,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:25:42,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:25:42,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:25:42,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:25:44,225.225 INFO    ] ================================================
[2026-10-28 01:25:44,240.240 INFO    ] Launching Daemon at Wed Oct 28 01:25:44 IST 2026
[2026-10-28 01:25:44,251.251 INFO    ] ================================================
[2026-10-28 01:25:44,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:25:44
[2026-10-28 01:25:45,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:25:45,928.928 INFO    ] Initializing speech engine...
[2026-10-28 01:25:45,943.943 INFO    ] 2026-10-28 01:25:45
[2026-10-28 01:25:46,219.219 INFO    ] 2026-10-28 01:25:46
[2026-10-28 01:25:46,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:25:46,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:25:46,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:25:46,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:25:46,778.778 INFO    ] time= 28/10/2026 01:25:46
[2026-10-28 01:25:46,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:25:46,822.822 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:25:46,949.949 INFO    ] No existing commands found in stream
[2026-10-28 01:25:51,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:25:51,980.980 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-28 01:25:52,999.999 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:25:53,002.002 INFO    ] Checking for system updates...
[2026-10-28 01:25:53,037.037 INFO    ] 200
[2026-10-28 01:25:53,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:25:53,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:25:53,094.094 INFO    ] No update needed
[2026-10-28 01:25:53,096.096 INFO    ] Checking for camera pi updates...
[2026-10-28 01:25:53,129.129 INFO    ] 200
[2026-10-28 01:25:53,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:25:53,178.178 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:25:53,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:25:53,285.285 INFO    ] No camera update needed
[2026-10-28 01:25:53,287.287 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:25:53,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:25:53,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:25:53,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:25:55,340.340 INFO    ] ================================================
[2026-10-28 01:25:55,355.355 INFO    ] Launching Daemon at Wed Oct 28 01:25:55 IST 2026
[2026-10-28 01:25:55,366.366 INFO    ] ================================================
[2026-10-28 01:25:56,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:25:56
[2026-10-28 01:25:56,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:25:57,029.029 INFO    ] Initializing speech engine...
[2026-10-28 01:25:57,036.036 INFO    ] 2026-10-28 01:25:57
[2026-10-28 01:25:57,359.359 INFO    ] 2026-10-28 01:25:57
[2026-10-28 01:25:57,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:25:57,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:25:57,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:25:57,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:25:57,951.951 INFO    ] time= 28/10/2026 01:25:57
[2026-10-28 01:25:58,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:25:58,070.070 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:25:58,207.207 INFO    ] No existing commands found in stream
[2026-10-28 01:26:03,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:26:03,238.238 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-28 01:26:03,987.987 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:26:03,990.990 INFO    ] Checking for system updates...
[2026-10-28 01:26:04,027.027 INFO    ] 200
[2026-10-28 01:26:04,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:26:04,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:26:04,086.086 INFO    ] No update needed
[2026-10-28 01:26:04,088.088 INFO    ] Checking for camera pi updates...
[2026-10-28 01:26:04,123.123 INFO    ] 200
[2026-10-28 01:26:04,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:26:04,167.167 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:26:04,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:26:04,268.268 INFO    ] No camera update needed
[2026-10-28 01:26:04,271.271 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:26:04,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:26:04,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:26:04,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:26:06,327.327 INFO    ] ================================================
[2026-10-28 01:26:06,342.342 INFO    ] Launching Daemon at Wed Oct 28 01:26:06 IST 2026
[2026-10-28 01:26:06,352.352 INFO    ] ================================================
[2026-10-28 01:26:07,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:26:07
[2026-10-28 01:26:07,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:26:07,981.981 INFO    ] Initializing speech engine...
[2026-10-28 01:26:07,996.996 INFO    ] 2026-10-28 01:26:07
[2026-10-28 01:26:08,309.309 INFO    ] 2026-10-28 01:26:08
[2026-10-28 01:26:08,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:26:08,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:26:08,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:26:08,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:26:09,025.025 INFO    ] time= 28/10/2026 01:26:08
[2026-10-28 01:26:09,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:26:09,138.138 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:26:09,250.250 INFO    ] No existing commands found in stream
[2026-10-28 01:26:14,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:26:14,272.272 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-28 01:26:18,367.367 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:26:18,370.370 INFO    ] Checking for system updates...
[2026-10-28 01:26:18,406.406 INFO    ] 200
[2026-10-28 01:26:18,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:26:18,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:26:18,465.465 INFO    ] No update needed
[2026-10-28 01:26:18,468.468 INFO    ] Checking for camera pi updates...
[2026-10-28 01:26:18,506.506 INFO    ] 200
[2026-10-28 01:26:18,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:26:18,550.550 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:26:18,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:26:18,607.607 INFO    ] No camera update needed
[2026-10-28 01:26:18,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:26:18,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:26:18,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:26:18,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:26:20,668.668 INFO    ] ================================================
[2026-10-28 01:26:20,683.683 INFO    ] Launching Daemon at Wed Oct 28 01:26:20 IST 2026
[2026-10-28 01:26:20,694.694 INFO    ] ================================================
[2026-10-28 01:26:21,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:26:21
[2026-10-28 01:26:21,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:26:22,223.223 INFO    ] Initializing speech engine...
[2026-10-28 01:26:22,246.246 INFO    ] 2026-10-28 01:26:22
[2026-10-28 01:26:22,501.501 INFO    ] 2026-10-28 01:26:22
[2026-10-28 01:26:22,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:26:22,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:26:22,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:26:23,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:26:23,060.060 INFO    ] time= 28/10/2026 01:26:23
[2026-10-28 01:26:23,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:26:23,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:26:23,268.268 INFO    ] No existing commands found in stream
[2026-10-28 01:26:28,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:26:28,301.301 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-28 01:26:29,346.346 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:26:29,348.348 INFO    ] Checking for system updates...
[2026-10-28 01:26:29,388.388 INFO    ] 200
[2026-10-28 01:26:29,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:26:29,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:26:29,452.452 INFO    ] No update needed
[2026-10-28 01:26:29,455.455 INFO    ] Checking for camera pi updates...
[2026-10-28 01:26:29,492.492 INFO    ] 200
[2026-10-28 01:26:29,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:26:29,536.536 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:26:29,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:26:29,615.615 INFO    ] No camera update needed
[2026-10-28 01:26:29,617.617 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:26:29,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:26:29,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:26:29,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:26:31,673.673 INFO    ] ================================================
[2026-10-28 01:26:31,690.690 INFO    ] Launching Daemon at Wed Oct 28 01:26:31 IST 2026
[2026-10-28 01:26:31,701.701 INFO    ] ================================================
[2026-10-28 01:26:32,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:26:32
[2026-10-28 01:26:32,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:26:33,165.165 INFO    ] Initializing speech engine...
[2026-10-28 01:26:33,171.171 INFO    ] 2026-10-28 01:26:33
[2026-10-28 01:26:33,472.472 INFO    ] 2026-10-28 01:26:33
[2026-10-28 01:26:33,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:26:33,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:26:33,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:26:33,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:26:33,994.994 INFO    ] time= 28/10/2026 01:26:33
[2026-10-28 01:26:34,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:26:34,092.092 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:26:34,230.230 INFO    ] No existing commands found in stream
[2026-10-28 01:26:39,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:26:39,260.260 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-28 01:26:41,919.919 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:26:41,921.921 INFO    ] Checking for system updates...
[2026-10-28 01:26:41,956.956 INFO    ] 200
[2026-10-28 01:26:41,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:26:42,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:26:42,013.013 INFO    ] No update needed
[2026-10-28 01:26:42,016.016 INFO    ] Checking for camera pi updates...
[2026-10-28 01:26:42,048.048 INFO    ] 200
[2026-10-28 01:26:42,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:26:42,092.092 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:26:42,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:26:42,186.186 INFO    ] No camera update needed
[2026-10-28 01:26:42,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:26:42,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:26:42,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:26:42,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:26:44,240.240 INFO    ] ================================================
[2026-10-28 01:26:44,255.255 INFO    ] Launching Daemon at Wed Oct 28 01:26:44 IST 2026
[2026-10-28 01:26:44,266.266 INFO    ] ================================================
[2026-10-28 01:26:44,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:26:44
[2026-10-28 01:26:45,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:26:45,724.724 INFO    ] Initializing speech engine...
[2026-10-28 01:26:45,731.731 INFO    ] 2026-10-28 01:26:45
[2026-10-28 01:26:45,993.993 INFO    ] 2026-10-28 01:26:45
[2026-10-28 01:26:46,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:26:46,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:26:46,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:26:46,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:26:46,541.541 INFO    ] time= 28/10/2026 01:26:46
[2026-10-28 01:26:46,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:26:46,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:26:46,725.725 INFO    ] No existing commands found in stream
[2026-10-28 01:26:51,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:26:51,753.753 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 01:26:53,165.165 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:26:53,168.168 INFO    ] Checking for system updates...
[2026-10-28 01:26:53,203.203 INFO    ] 200
[2026-10-28 01:26:53,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:26:53,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:26:53,260.260 INFO    ] No update needed
[2026-10-28 01:26:53,262.262 INFO    ] Checking for camera pi updates...
[2026-10-28 01:26:53,296.296 INFO    ] 200
[2026-10-28 01:26:53,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:26:53,339.339 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:26:53,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:26:53,421.421 INFO    ] No camera update needed
[2026-10-28 01:26:53,423.423 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:26:53,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:26:53,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:26:53,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:26:55,476.476 INFO    ] ================================================
[2026-10-28 01:26:55,491.491 INFO    ] Launching Daemon at Wed Oct 28 01:26:55 IST 2026
[2026-10-28 01:26:55,502.502 INFO    ] ================================================
[2026-10-28 01:26:56,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:26:56
[2026-10-28 01:26:56,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:26:57,052.052 INFO    ] Initializing speech engine...
[2026-10-28 01:26:57,061.061 INFO    ] 2026-10-28 01:26:57
[2026-10-28 01:26:57,307.307 INFO    ] 2026-10-28 01:26:57
[2026-10-28 01:26:57,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:26:57,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:26:57,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:26:57,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:26:57,865.865 INFO    ] time= 28/10/2026 01:26:57
[2026-10-28 01:26:57,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:26:57,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:26:58,036.036 INFO    ] No existing commands found in stream
[2026-10-28 01:27:03,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:27:03,078.078 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 01:27:04,202.202 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:27:04,206.206 INFO    ] Checking for system updates...
[2026-10-28 01:27:04,247.247 INFO    ] 200
[2026-10-28 01:27:04,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:27:04,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:27:04,314.314 INFO    ] No update needed
[2026-10-28 01:27:04,318.318 INFO    ] Checking for camera pi updates...
[2026-10-28 01:27:04,357.357 INFO    ] 200
[2026-10-28 01:27:04,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:27:04,403.403 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:27:04,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:27:04,513.513 INFO    ] No camera update needed
[2026-10-28 01:27:04,515.515 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:27:04,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:27:04,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:27:04,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:27:06,572.572 INFO    ] ================================================
[2026-10-28 01:27:06,586.586 INFO    ] Launching Daemon at Wed Oct 28 01:27:06 IST 2026
[2026-10-28 01:27:06,597.597 INFO    ] ================================================
[2026-10-28 01:27:07,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:27:07
[2026-10-28 01:27:07,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:27:08,168.168 INFO    ] Initializing speech engine...
[2026-10-28 01:27:08,176.176 INFO    ] 2026-10-28 01:27:08
[2026-10-28 01:27:08,449.449 INFO    ] 2026-10-28 01:27:08
[2026-10-28 01:27:08,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:27:08,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:27:08,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:27:08,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:27:09,022.022 INFO    ] time= 28/10/2026 01:27:09
[2026-10-28 01:27:09,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:27:09,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:27:09,188.188 INFO    ] No existing commands found in stream
[2026-10-28 01:27:14,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:27:14,217.217 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-28 01:27:18,107.107 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:27:18,110.110 INFO    ] Checking for system updates...
[2026-10-28 01:27:18,151.151 INFO    ] 200
[2026-10-28 01:27:18,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:27:18,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:27:18,218.218 INFO    ] No update needed
[2026-10-28 01:27:18,221.221 INFO    ] Checking for camera pi updates...
[2026-10-28 01:27:18,256.256 INFO    ] 200
[2026-10-28 01:27:18,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:27:18,300.300 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:27:18,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:27:18,367.367 INFO    ] No camera update needed
[2026-10-28 01:27:18,370.370 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:27:18,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:27:18,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:27:18,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:27:20,426.426 INFO    ] ================================================
[2026-10-28 01:27:20,442.442 INFO    ] Launching Daemon at Wed Oct 28 01:27:20 IST 2026
[2026-10-28 01:27:20,452.452 INFO    ] ================================================
[2026-10-28 01:27:21,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:27:21
[2026-10-28 01:27:21,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:27:21,871.871 INFO    ] Initializing speech engine...
[2026-10-28 01:27:21,880.880 INFO    ] 2026-10-28 01:27:21
[2026-10-28 01:27:22,179.179 INFO    ] 2026-10-28 01:27:22
[2026-10-28 01:27:22,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:27:22,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:27:22,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:27:22,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:27:22,608.608 INFO    ] time= 28/10/2026 01:27:22
[2026-10-28 01:27:22,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:27:22,650.650 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:27:22,797.797 INFO    ] No existing commands found in stream
[2026-10-28 01:27:27,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:27:27,836.836 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-28 01:27:29,888.888 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:27:29,891.891 INFO    ] Checking for system updates...
[2026-10-28 01:27:29,927.927 INFO    ] 200
[2026-10-28 01:27:29,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:27:29,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:27:29,988.988 INFO    ] No update needed
[2026-10-28 01:27:29,990.990 INFO    ] Checking for camera pi updates...
[2026-10-28 01:27:30,034.034 INFO    ] 200
[2026-10-28 01:27:30,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:27:30,079.079 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:27:30,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:27:30,159.159 INFO    ] No camera update needed
[2026-10-28 01:27:30,162.162 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:27:30,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:27:30,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:27:30,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:27:32,224.224 INFO    ] ================================================
[2026-10-28 01:27:32,240.240 INFO    ] Launching Daemon at Wed Oct 28 01:27:32 IST 2026
[2026-10-28 01:27:32,252.252 INFO    ] ================================================
[2026-10-28 01:27:32,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:27:32
[2026-10-28 01:27:33,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:27:33,754.754 INFO    ] Initializing speech engine...
[2026-10-28 01:27:33,771.771 INFO    ] 2026-10-28 01:27:33
[2026-10-28 01:27:34,046.046 INFO    ] 2026-10-28 01:27:34
[2026-10-28 01:27:34,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:27:34,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:27:34,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:27:34,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:27:34,609.609 INFO    ] time= 28/10/2026 01:27:34
[2026-10-28 01:27:34,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:27:34,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:27:34,782.782 INFO    ] No existing commands found in stream
[2026-10-28 01:27:39,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:27:39,815.815 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-28 01:27:42,446.446 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:27:42,449.449 INFO    ] Checking for system updates...
[2026-10-28 01:27:42,484.484 INFO    ] 200
[2026-10-28 01:27:42,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:27:42,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:27:42,543.543 INFO    ] No update needed
[2026-10-28 01:27:42,546.546 INFO    ] Checking for camera pi updates...
[2026-10-28 01:27:42,584.584 INFO    ] 200
[2026-10-28 01:27:42,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:27:42,632.632 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:27:42,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:27:42,720.720 INFO    ] No camera update needed
[2026-10-28 01:27:42,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:27:42,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:27:42,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:27:42,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:27:44,776.776 INFO    ] ================================================
[2026-10-28 01:27:44,792.792 INFO    ] Launching Daemon at Wed Oct 28 01:27:44 IST 2026
[2026-10-28 01:27:44,802.802 INFO    ] ================================================
[2026-10-28 01:27:45,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:27:45
[2026-10-28 01:27:46,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:27:46,332.332 INFO    ] Initializing speech engine...
[2026-10-28 01:27:46,339.339 INFO    ] 2026-10-28 01:27:46
[2026-10-28 01:27:46,601.601 INFO    ] 2026-10-28 01:27:46
[2026-10-28 01:27:46,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:27:46,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:27:46,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:27:47,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:27:47,151.151 INFO    ] time= 28/10/2026 01:27:47
[2026-10-28 01:27:47,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:27:47,199.199 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:27:47,306.306 INFO    ] No existing commands found in stream
[2026-10-28 01:27:52,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:27:52,332.332 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-28 01:27:53,987.987 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:27:53,989.989 INFO    ] Checking for system updates...
[2026-10-28 01:27:54,025.025 INFO    ] 200
[2026-10-28 01:27:54,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:27:54,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:27:54,083.083 INFO    ] No update needed
[2026-10-28 01:27:54,086.086 INFO    ] Checking for camera pi updates...
[2026-10-28 01:27:54,119.119 INFO    ] 200
[2026-10-28 01:27:54,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:27:54,164.164 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:27:54,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:27:54,252.252 INFO    ] No camera update needed
[2026-10-28 01:27:54,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:27:54,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:27:54,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:27:54,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:27:56,311.311 INFO    ] ================================================
[2026-10-28 01:27:56,327.327 INFO    ] Launching Daemon at Wed Oct 28 01:27:56 IST 2026
[2026-10-28 01:27:56,338.338 INFO    ] ================================================
[2026-10-28 01:27:56,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:27:56
[2026-10-28 01:27:57,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:27:57,749.749 INFO    ] Initializing speech engine...
[2026-10-28 01:27:57,764.764 INFO    ] 2026-10-28 01:27:57
[2026-10-28 01:27:58,053.053 INFO    ] 2026-10-28 01:27:58
[2026-10-28 01:27:58,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:27:58,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:27:58,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:27:58,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:27:58,492.492 INFO    ] time= 28/10/2026 01:27:58
[2026-10-28 01:27:58,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:27:58,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:27:58,688.688 INFO    ] No existing commands found in stream
[2026-10-28 01:28:03,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:28:03,721.721 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-28 01:28:06,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:28:06,215.215 INFO    ] Checking for system updates...
[2026-10-28 01:28:06,250.250 INFO    ] 200
[2026-10-28 01:28:06,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:28:06,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:28:06,308.308 INFO    ] No update needed
[2026-10-28 01:28:06,310.310 INFO    ] Checking for camera pi updates...
[2026-10-28 01:28:06,344.344 INFO    ] 200
[2026-10-28 01:28:06,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:28:06,386.386 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:28:06,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:28:06,480.480 INFO    ] No camera update needed
[2026-10-28 01:28:06,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:28:06,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:28:06,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:28:06,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:28:08,539.539 INFO    ] ================================================
[2026-10-28 01:28:08,554.554 INFO    ] Launching Daemon at Wed Oct 28 01:28:08 IST 2026
[2026-10-28 01:28:08,565.565 INFO    ] ================================================
[2026-10-28 01:28:09,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:28:09
[2026-10-28 01:28:09,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:28:09,980.980 INFO    ] Initializing speech engine...
[2026-10-28 01:28:09,990.990 INFO    ] 2026-10-28 01:28:09
[2026-10-28 01:28:10,239.239 INFO    ] 2026-10-28 01:28:10
[2026-10-28 01:28:10,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:28:10,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:28:10,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:28:10,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:28:10,830.830 INFO    ] time= 28/10/2026 01:28:10
[2026-10-28 01:28:10,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:28:10,852.852 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:28:10,978.978 INFO    ] No existing commands found in stream
[2026-10-28 01:28:16,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:28:16,003.003 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 01:28:19,650.650 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:28:19,652.652 INFO    ] Checking for system updates...
[2026-10-28 01:28:19,689.689 INFO    ] 200
[2026-10-28 01:28:19,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:28:19,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:28:19,747.747 INFO    ] No update needed
[2026-10-28 01:28:19,750.750 INFO    ] Checking for camera pi updates...
[2026-10-28 01:28:19,788.788 INFO    ] 200
[2026-10-28 01:28:19,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:28:19,837.837 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:28:19,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:28:19,923.923 INFO    ] No camera update needed
[2026-10-28 01:28:19,925.925 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:28:19,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:28:19,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:28:19,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:28:21,978.978 INFO    ] ================================================
[2026-10-28 01:28:21,993.993 INFO    ] Launching Daemon at Wed Oct 28 01:28:21 IST 2026
[2026-10-28 01:28:22,004.004 INFO    ] ================================================
[2026-10-28 01:28:22,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:28:22
[2026-10-28 01:28:23,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:28:23,448.448 INFO    ] Initializing speech engine...
[2026-10-28 01:28:23,459.459 INFO    ] 2026-10-28 01:28:23
[2026-10-28 01:28:23,743.743 INFO    ] 2026-10-28 01:28:23
[2026-10-28 01:28:23,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:28:24,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:28:24,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:28:24,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:28:24,320.320 INFO    ] time= 28/10/2026 01:28:24
[2026-10-28 01:28:24,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:28:24,359.359 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:28:24,522.522 INFO    ] No existing commands found in stream
[2026-10-28 01:28:29,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:28:29,560.560 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-28 01:28:32,591.591 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:28:32,595.595 INFO    ] Checking for system updates...
[2026-10-28 01:28:32,638.638 INFO    ] 200
[2026-10-28 01:28:32,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:28:32,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:28:32,700.700 INFO    ] No update needed
[2026-10-28 01:28:32,703.703 INFO    ] Checking for camera pi updates...
[2026-10-28 01:28:32,739.739 INFO    ] 200
[2026-10-28 01:28:32,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:28:32,783.783 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:28:32,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:28:32,844.844 INFO    ] No camera update needed
[2026-10-28 01:28:32,847.847 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:28:32,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:28:32,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:28:32,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:28:34,904.904 INFO    ] ================================================
[2026-10-28 01:28:34,919.919 INFO    ] Launching Daemon at Wed Oct 28 01:28:34 IST 2026
[2026-10-28 01:28:34,929.929 INFO    ] ================================================
[2026-10-28 01:28:35,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:28:35
[2026-10-28 01:28:36,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:28:36,438.438 INFO    ] Initializing speech engine...
[2026-10-28 01:28:36,457.457 INFO    ] 2026-10-28 01:28:36
[2026-10-28 01:28:36,706.706 INFO    ] 2026-10-28 01:28:36
[2026-10-28 01:28:36,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:28:37,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:28:37,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:28:37,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:28:37,266.266 INFO    ] time= 28/10/2026 01:28:37
[2026-10-28 01:28:37,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:28:37,313.313 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:28:37,445.445 INFO    ] No existing commands found in stream
[2026-10-28 01:28:42,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:28:42,473.473 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-28 01:28:44,005.005 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:28:44,008.008 INFO    ] Checking for system updates...
[2026-10-28 01:28:44,044.044 INFO    ] 200
[2026-10-28 01:28:44,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:28:44,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:28:44,102.102 INFO    ] No update needed
[2026-10-28 01:28:44,104.104 INFO    ] Checking for camera pi updates...
[2026-10-28 01:28:44,139.139 INFO    ] 200
[2026-10-28 01:28:44,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:28:44,184.184 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:28:44,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:28:44,258.258 INFO    ] No camera update needed
[2026-10-28 01:28:44,260.260 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:28:44,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:28:44,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:28:44,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:28:46,313.313 INFO    ] ================================================
[2026-10-28 01:28:46,328.328 INFO    ] Launching Daemon at Wed Oct 28 01:28:46 IST 2026
[2026-10-28 01:28:46,339.339 INFO    ] ================================================
[2026-10-28 01:28:47,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:28:47
[2026-10-28 01:28:47,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:28:48,030.030 INFO    ] Initializing speech engine...
[2026-10-28 01:28:48,039.039 INFO    ] 2026-10-28 01:28:48
[2026-10-28 01:28:48,334.334 INFO    ] 2026-10-28 01:28:48
[2026-10-28 01:28:48,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:28:48,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:28:48,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:28:48,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:28:48,904.904 INFO    ] time= 28/10/2026 01:28:48
[2026-10-28 01:28:48,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:28:48,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:28:49,080.080 INFO    ] No existing commands found in stream
[2026-10-28 01:28:54,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:28:54,109.109 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-28 01:28:57,828.828 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:28:57,831.831 INFO    ] Checking for system updates...
[2026-10-28 01:28:57,868.868 INFO    ] 200
[2026-10-28 01:28:57,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:28:57,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:28:57,927.927 INFO    ] No update needed
[2026-10-28 01:28:57,929.929 INFO    ] Checking for camera pi updates...
[2026-10-28 01:28:57,964.964 INFO    ] 200
[2026-10-28 01:28:57,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:28:58,014.014 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:28:58,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:28:58,100.100 INFO    ] No camera update needed
[2026-10-28 01:28:58,103.103 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:28:58,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:28:58,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:28:58,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:29:00,156.156 INFO    ] ================================================
[2026-10-28 01:29:00,171.171 INFO    ] Launching Daemon at Wed Oct 28 01:29:00 IST 2026
[2026-10-28 01:29:00,182.182 INFO    ] ================================================
[2026-10-28 01:29:00,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:29:00
[2026-10-28 01:29:01,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:29:01,917.917 INFO    ] Initializing speech engine...
[2026-10-28 01:29:01,921.921 INFO    ] 2026-10-28 01:29:01
[2026-10-28 01:29:02,253.253 INFO    ] 2026-10-28 01:29:02
[2026-10-28 01:29:02,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:29:02,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:29:02,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:29:02,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:29:02,930.930 INFO    ] time= 28/10/2026 01:29:02
[2026-10-28 01:29:03,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:29:03,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:29:03,197.197 INFO    ] No existing commands found in stream
[2026-10-28 01:29:08,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:29:08,215.215 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-28 01:29:11,026.026 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:29:11,029.029 INFO    ] Checking for system updates...
[2026-10-28 01:29:11,065.065 INFO    ] 200
[2026-10-28 01:29:11,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:29:11,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:29:11,123.123 INFO    ] No update needed
[2026-10-28 01:29:11,125.125 INFO    ] Checking for camera pi updates...
[2026-10-28 01:29:11,159.159 INFO    ] 200
[2026-10-28 01:29:11,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:29:11,204.204 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:29:11,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:29:11,309.309 INFO    ] No camera update needed
[2026-10-28 01:29:11,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:29:11,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:29:11,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:29:11,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:29:13,368.368 INFO    ] ================================================
[2026-10-28 01:29:13,383.383 INFO    ] Launching Daemon at Wed Oct 28 01:29:13 IST 2026
[2026-10-28 01:29:13,394.394 INFO    ] ================================================
[2026-10-28 01:29:14,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:29:14
[2026-10-28 01:29:14,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:29:15,071.071 INFO    ] Initializing speech engine...
[2026-10-28 01:29:15,078.078 INFO    ] 2026-10-28 01:29:15
[2026-10-28 01:29:15,346.346 INFO    ] 2026-10-28 01:29:15
[2026-10-28 01:29:15,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:29:15,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:29:15,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:29:15,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:29:15,881.881 INFO    ] time= 28/10/2026 01:29:15
[2026-10-28 01:29:15,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:29:15,927.927 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:29:16,061.061 INFO    ] No existing commands found in stream
[2026-10-28 01:29:21,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:29:21,089.089 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-28 01:29:23,089.089 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:29:23,091.091 INFO    ] Checking for system updates...
[2026-10-28 01:29:23,128.128 INFO    ] 200
[2026-10-28 01:29:23,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:29:23,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:29:23,194.194 INFO    ] No update needed
[2026-10-28 01:29:23,197.197 INFO    ] Checking for camera pi updates...
[2026-10-28 01:29:23,237.237 INFO    ] 200
[2026-10-28 01:29:23,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:29:23,286.286 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:29:23,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:29:23,370.370 INFO    ] No camera update needed
[2026-10-28 01:29:23,372.372 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:29:23,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:29:23,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:29:23,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:29:25,424.424 INFO    ] ================================================
[2026-10-28 01:29:25,440.440 INFO    ] Launching Daemon at Wed Oct 28 01:29:25 IST 2026
[2026-10-28 01:29:25,451.451 INFO    ] ================================================
[2026-10-28 01:29:26,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:29:26
[2026-10-28 01:29:26,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:29:26,879.879 INFO    ] Initializing speech engine...
[2026-10-28 01:29:26,884.884 INFO    ] 2026-10-28 01:29:26
[2026-10-28 01:29:27,133.133 INFO    ] 2026-10-28 01:29:27
[2026-10-28 01:29:27,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:29:27,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:29:27,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:29:27,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:29:27,701.701 INFO    ] time= 28/10/2026 01:29:27
[2026-10-28 01:29:27,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:29:27,726.726 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:29:27,849.849 INFO    ] No existing commands found in stream
[2026-10-28 01:29:32,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:29:32,873.873 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 01:29:36,243.243 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:29:36,246.246 INFO    ] Checking for system updates...
[2026-10-28 01:29:36,281.281 INFO    ] 200
[2026-10-28 01:29:36,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:29:36,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:29:36,341.341 INFO    ] No update needed
[2026-10-28 01:29:36,344.344 INFO    ] Checking for camera pi updates...
[2026-10-28 01:29:36,384.384 INFO    ] 200
[2026-10-28 01:29:36,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:29:36,435.435 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:29:36,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:29:36,632.632 INFO    ] No camera update needed
[2026-10-28 01:29:36,635.635 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:29:36,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:29:36,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:29:36,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:29:38,692.692 INFO    ] ================================================
[2026-10-28 01:29:38,708.708 INFO    ] Launching Daemon at Wed Oct 28 01:29:38 IST 2026
[2026-10-28 01:29:38,719.719 INFO    ] ================================================
[2026-10-28 01:29:39,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:29:39
[2026-10-28 01:29:39,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:29:40,179.179 INFO    ] Initializing speech engine...
[2026-10-28 01:29:40,186.186 INFO    ] 2026-10-28 01:29:40
[2026-10-28 01:29:40,448.448 INFO    ] 2026-10-28 01:29:40
[2026-10-28 01:29:40,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:29:40,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:29:40,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:29:40,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:29:40,992.992 INFO    ] time= 28/10/2026 01:29:40
[2026-10-28 01:29:41,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:29:41,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:29:41,146.146 INFO    ] No existing commands found in stream
[2026-10-28 01:29:46,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:29:46,168.168 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-28 01:29:47,535.535 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:29:47,538.538 INFO    ] Checking for system updates...
[2026-10-28 01:29:47,575.575 INFO    ] 200
[2026-10-28 01:29:47,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:29:47,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:29:47,632.632 INFO    ] No update needed
[2026-10-28 01:29:47,635.635 INFO    ] Checking for camera pi updates...
[2026-10-28 01:29:47,669.669 INFO    ] 200
[2026-10-28 01:29:47,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:29:47,711.711 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:29:47,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:29:47,801.801 INFO    ] No camera update needed
[2026-10-28 01:29:47,803.803 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:29:47,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:29:47,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:29:47,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:29:49,859.859 INFO    ] ================================================
[2026-10-28 01:29:49,875.875 INFO    ] Launching Daemon at Wed Oct 28 01:29:49 IST 2026
[2026-10-28 01:29:49,886.886 INFO    ] ================================================
[2026-10-28 01:29:50,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:29:50
[2026-10-28 01:29:51,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:29:51,339.339 INFO    ] Initializing speech engine...
[2026-10-28 01:29:51,349.349 INFO    ] 2026-10-28 01:29:51
[2026-10-28 01:29:51,609.609 INFO    ] 2026-10-28 01:29:51
[2026-10-28 01:29:51,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:29:51,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:29:51,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:29:52,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:29:52,166.166 INFO    ] time= 28/10/2026 01:29:52
[2026-10-28 01:29:52,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:29:52,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:29:52,387.387 INFO    ] No existing commands found in stream
[2026-10-28 01:29:57,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:29:57,420.420 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 01:29:59,131.131 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:29:59,134.134 INFO    ] Checking for system updates...
[2026-10-28 01:29:59,176.176 INFO    ] 200
[2026-10-28 01:29:59,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:29:59,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:29:59,232.232 INFO    ] No update needed
[2026-10-28 01:29:59,235.235 INFO    ] Checking for camera pi updates...
[2026-10-28 01:29:59,268.268 INFO    ] 200
[2026-10-28 01:29:59,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:29:59,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:29:59,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:29:59,395.395 INFO    ] No camera update needed
[2026-10-28 01:29:59,398.398 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:29:59,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:29:59,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:29:59,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:30:01,450.450 INFO    ] ================================================
[2026-10-28 01:30:01,465.465 INFO    ] Launching Daemon at Wed Oct 28 01:30:01 IST 2026
[2026-10-28 01:30:01,476.476 INFO    ] ================================================
[2026-10-28 01:30:02,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:30:02
[2026-10-28 01:30:03,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:30:03,904.904 INFO    ] Initializing speech engine...
[2026-10-28 01:30:03,916.916 INFO    ] 2026-10-28 01:30:03
[2026-10-28 01:30:04,208.208 INFO    ] 2026-10-28 01:30:04
[2026-10-28 01:30:04,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:30:04,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:30:04,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:30:04,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:30:04,797.797 INFO    ] time= 28/10/2026 01:30:04
[2026-10-28 01:30:04,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:30:04,819.819 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:30:04,955.955 INFO    ] No existing commands found in stream
[2026-10-28 01:30:09,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:30:09,978.978 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 01:30:12,841.841 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:30:12,844.844 INFO    ] Checking for system updates...
[2026-10-28 01:30:12,881.881 INFO    ] 200
[2026-10-28 01:30:12,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:30:12,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:30:12,939.939 INFO    ] No update needed
[2026-10-28 01:30:12,942.942 INFO    ] Checking for camera pi updates...
[2026-10-28 01:30:12,976.976 INFO    ] 200
[2026-10-28 01:30:12,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:30:13,020.020 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:30:13,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:30:13,108.108 INFO    ] No camera update needed
[2026-10-28 01:30:13,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:30:13,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:30:13,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:30:13,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:30:15,165.165 INFO    ] ================================================
[2026-10-28 01:30:15,181.181 INFO    ] Launching Daemon at Wed Oct 28 01:30:15 IST 2026
[2026-10-28 01:30:15,191.191 INFO    ] ================================================
[2026-10-28 01:30:15,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:30:15
[2026-10-28 01:30:16,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:30:16,721.721 INFO    ] Initializing speech engine...
[2026-10-28 01:30:16,729.729 INFO    ] 2026-10-28 01:30:16
[2026-10-28 01:30:16,980.980 INFO    ] 2026-10-28 01:30:16
[2026-10-28 01:30:17,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:30:17,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:30:17,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:30:17,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:30:17,546.546 INFO    ] time= 28/10/2026 01:30:17
[2026-10-28 01:30:17,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:30:17,570.570 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:30:17,704.704 INFO    ] No existing commands found in stream
[2026-10-28 01:30:22,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:30:22,719.719 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 01:30:25,388.388 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:30:25,390.390 INFO    ] Checking for system updates...
[2026-10-28 01:30:25,427.427 INFO    ] 200
[2026-10-28 01:30:25,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:30:25,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:30:25,488.488 INFO    ] No update needed
[2026-10-28 01:30:25,491.491 INFO    ] Checking for camera pi updates...
[2026-10-28 01:30:25,525.525 INFO    ] 200
[2026-10-28 01:30:25,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:30:25,571.571 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:30:25,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:30:25,677.677 INFO    ] No camera update needed
[2026-10-28 01:30:25,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:30:25,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:30:25,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:30:25,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:30:27,734.734 INFO    ] ================================================
[2026-10-28 01:30:27,749.749 INFO    ] Launching Daemon at Wed Oct 28 01:30:27 IST 2026
[2026-10-28 01:30:27,760.760 INFO    ] ================================================
[2026-10-28 01:30:28,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:30:28
[2026-10-28 01:30:28,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:30:29,221.221 INFO    ] Initializing speech engine...
[2026-10-28 01:30:29,231.231 INFO    ] 2026-10-28 01:30:29
[2026-10-28 01:30:29,481.481 INFO    ] 2026-10-28 01:30:29
[2026-10-28 01:30:29,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:30:29,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:30:29,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:30:30,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:30:30,053.053 INFO    ] time= 28/10/2026 01:30:30
[2026-10-28 01:30:30,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:30:30,090.090 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:30:30,193.193 INFO    ] No existing commands found in stream
[2026-10-28 01:30:35,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:30:35,209.209 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-28 01:30:36,729.729 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:30:36,733.733 INFO    ] Checking for system updates...
[2026-10-28 01:30:36,775.775 INFO    ] 200
[2026-10-28 01:30:36,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:30:36,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:30:36,841.841 INFO    ] No update needed
[2026-10-28 01:30:36,843.843 INFO    ] Checking for camera pi updates...
[2026-10-28 01:30:36,887.887 INFO    ] 200
[2026-10-28 01:30:36,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:30:36,933.933 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:30:37,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:30:37,017.017 INFO    ] No camera update needed
[2026-10-28 01:30:37,020.020 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:30:37,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:30:37,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:30:37,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:30:39,082.082 INFO    ] ================================================
[2026-10-28 01:30:39,098.098 INFO    ] Launching Daemon at Wed Oct 28 01:30:39 IST 2026
[2026-10-28 01:30:39,110.110 INFO    ] ================================================
[2026-10-28 01:30:39,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:30:39
[2026-10-28 01:30:40,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:30:40,730.730 INFO    ] Initializing speech engine...
[2026-10-28 01:30:40,737.737 INFO    ] 2026-10-28 01:30:40
[2026-10-28 01:30:41,040.040 INFO    ] 2026-10-28 01:30:41
[2026-10-28 01:30:41,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:30:41,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:30:41,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:30:41,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:30:41,615.615 INFO    ] time= 28/10/2026 01:30:41
[2026-10-28 01:30:41,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:30:41,649.649 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:30:41,773.773 INFO    ] No existing commands found in stream
[2026-10-28 01:30:46,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:30:46,796.796 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-28 01:30:50,868.868 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:30:50,870.870 INFO    ] Checking for system updates...
[2026-10-28 01:30:50,907.907 INFO    ] 200
[2026-10-28 01:30:50,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:30:50,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:30:50,965.965 INFO    ] No update needed
[2026-10-28 01:30:50,968.968 INFO    ] Checking for camera pi updates...
[2026-10-28 01:30:51,001.001 INFO    ] 200
[2026-10-28 01:30:51,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:30:51,044.044 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:30:51,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:30:51,127.127 INFO    ] No camera update needed
[2026-10-28 01:30:51,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:30:51,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:30:51,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:30:51,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:30:53,182.182 INFO    ] ================================================
[2026-10-28 01:30:53,198.198 INFO    ] Launching Daemon at Wed Oct 28 01:30:53 IST 2026
[2026-10-28 01:30:53,209.209 INFO    ] ================================================
[2026-10-28 01:30:53,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:30:53
[2026-10-28 01:30:54,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:30:54,617.617 INFO    ] Initializing speech engine...
[2026-10-28 01:30:54,635.635 INFO    ] 2026-10-28 01:30:54
[2026-10-28 01:30:54,882.882 INFO    ] 2026-10-28 01:30:54
[2026-10-28 01:30:54,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:30:55,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:30:55,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:30:55,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:30:55,435.435 INFO    ] time= 28/10/2026 01:30:55
[2026-10-28 01:30:55,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:30:55,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:30:55,594.594 INFO    ] No existing commands found in stream
[2026-10-28 01:31:00,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:31:00,620.620 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 01:31:04,290.290 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:31:04,293.293 INFO    ] Checking for system updates...
[2026-10-28 01:31:04,329.329 INFO    ] 200
[2026-10-28 01:31:04,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:31:04,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:31:04,387.387 INFO    ] No update needed
[2026-10-28 01:31:04,390.390 INFO    ] Checking for camera pi updates...
[2026-10-28 01:31:04,428.428 INFO    ] 200
[2026-10-28 01:31:04,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:31:04,474.474 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:31:04,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:31:04,558.558 INFO    ] No camera update needed
[2026-10-28 01:31:04,561.561 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:31:04,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:31:04,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:31:04,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:31:06,618.618 INFO    ] ================================================
[2026-10-28 01:31:06,633.633 INFO    ] Launching Daemon at Wed Oct 28 01:31:06 IST 2026
[2026-10-28 01:31:06,644.644 INFO    ] ================================================
[2026-10-28 01:31:07,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:31:07
[2026-10-28 01:31:07,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:31:08,165.165 INFO    ] Initializing speech engine...
[2026-10-28 01:31:08,175.175 INFO    ] 2026-10-28 01:31:08
[2026-10-28 01:31:08,426.426 INFO    ] 2026-10-28 01:31:08
[2026-10-28 01:31:08,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:31:08,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:31:08,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:31:08,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:31:08,994.994 INFO    ] time= 28/10/2026 01:31:08
[2026-10-28 01:31:09,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:31:09,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:31:09,175.175 INFO    ] No existing commands found in stream
[2026-10-28 01:31:14,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:31:14,204.204 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-28 01:31:18,368.368 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:31:18,370.370 INFO    ] Checking for system updates...
[2026-10-28 01:31:18,405.405 INFO    ] 200
[2026-10-28 01:31:18,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:31:18,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:31:18,461.461 INFO    ] No update needed
[2026-10-28 01:31:18,464.464 INFO    ] Checking for camera pi updates...
[2026-10-28 01:31:18,497.497 INFO    ] 200
[2026-10-28 01:31:18,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:31:18,539.539 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:31:18,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:31:18,621.621 INFO    ] No camera update needed
[2026-10-28 01:31:18,624.624 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:31:18,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:31:18,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:31:18,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:31:20,678.678 INFO    ] ================================================
[2026-10-28 01:31:20,695.695 INFO    ] Launching Daemon at Wed Oct 28 01:31:20 IST 2026
[2026-10-28 01:31:20,718.718 INFO    ] ================================================
[2026-10-28 01:31:21,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:31:21
[2026-10-28 01:31:21,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:31:22,136.136 INFO    ] Initializing speech engine...
[2026-10-28 01:31:22,145.145 INFO    ] 2026-10-28 01:31:22
[2026-10-28 01:31:22,389.389 INFO    ] 2026-10-28 01:31:22
[2026-10-28 01:31:22,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:31:22,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:31:22,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:31:23,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:31:23,151.151 INFO    ] time= 28/10/2026 01:31:23
[2026-10-28 01:31:23,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:31:23,262.262 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:31:23,432.432 INFO    ] No existing commands found in stream
[2026-10-28 01:31:28,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:31:28,447.447 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 01:31:31,686.686 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:31:31,691.691 INFO    ] Checking for system updates...
[2026-10-28 01:31:31,738.738 INFO    ] 200
[2026-10-28 01:31:31,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:31:31,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:31:31,807.807 INFO    ] No update needed
[2026-10-28 01:31:31,809.809 INFO    ] Checking for camera pi updates...
[2026-10-28 01:31:31,848.848 INFO    ] 200
[2026-10-28 01:31:31,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:31:31,902.902 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:31:32,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:31:32,005.005 INFO    ] No camera update needed
[2026-10-28 01:31:32,008.008 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:31:32,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:31:32,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:31:32,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:31:34,065.065 INFO    ] ================================================
[2026-10-28 01:31:34,080.080 INFO    ] Launching Daemon at Wed Oct 28 01:31:34 IST 2026
[2026-10-28 01:31:34,090.090 INFO    ] ================================================
[2026-10-28 01:31:34,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:31:34
[2026-10-28 01:31:35,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:31:35,717.717 INFO    ] Initializing speech engine...
[2026-10-28 01:31:35,726.726 INFO    ] 2026-10-28 01:31:35
[2026-10-28 01:31:36,017.017 INFO    ] 2026-10-28 01:31:35
[2026-10-28 01:31:36,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:31:36,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:31:36,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:31:36,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:31:36,580.580 INFO    ] time= 28/10/2026 01:31:36
[2026-10-28 01:31:36,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:31:36,618.618 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:31:36,761.761 INFO    ] No existing commands found in stream
[2026-10-28 01:31:41,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:31:41,806.806 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-28 01:31:42,509.509 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:31:42,512.512 INFO    ] Checking for system updates...
[2026-10-28 01:31:42,549.549 INFO    ] 200
[2026-10-28 01:31:42,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:31:42,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:31:42,615.615 INFO    ] No update needed
[2026-10-28 01:31:42,618.618 INFO    ] Checking for camera pi updates...
[2026-10-28 01:31:42,654.654 INFO    ] 200
[2026-10-28 01:31:42,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:31:42,699.699 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:31:42,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:31:42,886.886 INFO    ] No camera update needed
[2026-10-28 01:31:42,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:31:42,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:31:42,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:31:42,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:31:44,946.946 INFO    ] ================================================
[2026-10-28 01:31:44,961.961 INFO    ] Launching Daemon at Wed Oct 28 01:31:44 IST 2026
[2026-10-28 01:31:44,971.971 INFO    ] ================================================
[2026-10-28 01:31:45,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:31:45
[2026-10-28 01:31:46,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:31:46,387.387 INFO    ] Initializing speech engine...
[2026-10-28 01:31:46,405.405 INFO    ] 2026-10-28 01:31:46
[2026-10-28 01:31:46,657.657 INFO    ] 2026-10-28 01:31:46
[2026-10-28 01:31:46,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:31:46,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:31:46,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:31:47,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:31:47,230.230 INFO    ] time= 28/10/2026 01:31:47
[2026-10-28 01:31:47,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:31:47,265.265 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:31:47,388.388 INFO    ] No existing commands found in stream
[2026-10-28 01:31:52,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:31:52,415.415 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-28 01:31:55,788.788 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:31:55,790.790 INFO    ] Checking for system updates...
[2026-10-28 01:31:55,826.826 INFO    ] 200
[2026-10-28 01:31:55,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:31:55,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:31:55,884.884 INFO    ] No update needed
[2026-10-28 01:31:55,887.887 INFO    ] Checking for camera pi updates...
[2026-10-28 01:31:55,920.920 INFO    ] 200
[2026-10-28 01:31:55,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:31:55,966.966 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:31:56,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:31:56,062.062 INFO    ] No camera update needed
[2026-10-28 01:31:56,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:31:56,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:31:56,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:31:56,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:31:58,118.118 INFO    ] ================================================
[2026-10-28 01:31:58,134.134 INFO    ] Launching Daemon at Wed Oct 28 01:31:58 IST 2026
[2026-10-28 01:31:58,145.145 INFO    ] ================================================
[2026-10-28 01:31:58,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:31:58
[2026-10-28 01:31:59,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:31:59,592.592 INFO    ] Initializing speech engine...
[2026-10-28 01:31:59,603.603 INFO    ] 2026-10-28 01:31:59
[2026-10-28 01:31:59,893.893 INFO    ] 2026-10-28 01:31:59
[2026-10-28 01:31:59,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:32:00,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:32:00,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:32:00,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:32:00,476.476 INFO    ] time= 28/10/2026 01:32:00
[2026-10-28 01:32:00,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:32:00,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:32:00,670.670 INFO    ] No existing commands found in stream
[2026-10-28 01:32:05,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:32:05,701.701 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-28 01:32:07,190.190 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:32:07,194.194 INFO    ] Checking for system updates...
[2026-10-28 01:32:07,230.230 INFO    ] 200
[2026-10-28 01:32:07,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:32:07,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:32:07,287.287 INFO    ] No update needed
[2026-10-28 01:32:07,289.289 INFO    ] Checking for camera pi updates...
[2026-10-28 01:32:07,323.323 INFO    ] 200
[2026-10-28 01:32:07,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:32:07,365.365 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:32:07,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:32:07,455.455 INFO    ] No camera update needed
[2026-10-28 01:32:07,458.458 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:32:07,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:32:07,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:32:07,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:32:09,510.510 INFO    ] ================================================
[2026-10-28 01:32:09,525.525 INFO    ] Launching Daemon at Wed Oct 28 01:32:09 IST 2026
[2026-10-28 01:32:09,535.535 INFO    ] ================================================
[2026-10-28 01:32:10,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:32:10
[2026-10-28 01:32:10,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:32:10,980.980 INFO    ] Initializing speech engine...
[2026-10-28 01:32:10,986.986 INFO    ] 2026-10-28 01:32:10
[2026-10-28 01:32:11,279.279 INFO    ] 2026-10-28 01:32:11
[2026-10-28 01:32:11,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:32:11,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:32:11,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:32:11,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:32:11,797.797 INFO    ] time= 28/10/2026 01:32:11
[2026-10-28 01:32:11,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:32:11,903.903 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:32:12,045.045 INFO    ] No existing commands found in stream
[2026-10-28 01:32:17,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:32:17,079.079 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-28 01:32:21,443.443 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:32:21,445.445 INFO    ] Checking for system updates...
[2026-10-28 01:32:21,481.481 INFO    ] 200
[2026-10-28 01:32:21,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:32:21,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:32:21,538.538 INFO    ] No update needed
[2026-10-28 01:32:21,541.541 INFO    ] Checking for camera pi updates...
[2026-10-28 01:32:21,574.574 INFO    ] 200
[2026-10-28 01:32:21,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:32:21,618.618 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:32:21,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:32:21,701.701 INFO    ] No camera update needed
[2026-10-28 01:32:21,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:32:21,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:32:21,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:32:21,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:32:23,757.757 INFO    ] ================================================
[2026-10-28 01:32:23,772.772 INFO    ] Launching Daemon at Wed Oct 28 01:32:23 IST 2026
[2026-10-28 01:32:23,782.782 INFO    ] ================================================
[2026-10-28 01:32:24,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:32:24
[2026-10-28 01:32:24,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:32:25,217.217 INFO    ] Initializing speech engine...
[2026-10-28 01:32:25,237.237 INFO    ] 2026-10-28 01:32:25
[2026-10-28 01:32:25,500.500 INFO    ] 2026-10-28 01:32:25
[2026-10-28 01:32:25,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:32:25,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:32:25,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:32:25,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:32:26,012.012 INFO    ] time= 28/10/2026 01:32:25
[2026-10-28 01:32:26,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:32:26,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:32:26,265.265 INFO    ] No existing commands found in stream
[2026-10-28 01:32:31,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:32:31,298.298 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-28 01:32:32,669.669 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:32:32,672.672 INFO    ] Checking for system updates...
[2026-10-28 01:32:32,710.710 INFO    ] 200
[2026-10-28 01:32:32,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:32:32,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:32:32,771.771 INFO    ] No update needed
[2026-10-28 01:32:32,774.774 INFO    ] Checking for camera pi updates...
[2026-10-28 01:32:32,814.814 INFO    ] 200
[2026-10-28 01:32:32,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:32:32,861.861 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:32:32,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:32:32,951.951 INFO    ] No camera update needed
[2026-10-28 01:32:32,954.954 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:32:32,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:32:32,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:32:32,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:32:35,010.010 INFO    ] ================================================
[2026-10-28 01:32:35,025.025 INFO    ] Launching Daemon at Wed Oct 28 01:32:35 IST 2026
[2026-10-28 01:32:35,036.036 INFO    ] ================================================
[2026-10-28 01:32:35,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:32:35
[2026-10-28 01:32:36,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:32:36,432.432 INFO    ] Initializing speech engine...
[2026-10-28 01:32:36,438.438 INFO    ] 2026-10-28 01:32:36
[2026-10-28 01:32:36,716.716 INFO    ] 2026-10-28 01:32:36
[2026-10-28 01:32:36,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:32:37,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:32:37,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:32:37,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:32:37,286.286 INFO    ] time= 28/10/2026 01:32:37
[2026-10-28 01:32:37,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:32:37,308.308 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:32:37,435.435 INFO    ] No existing commands found in stream
[2026-10-28 01:32:42,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:32:42,454.454 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-28 01:32:46,727.727 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:32:46,730.730 INFO    ] Checking for system updates...
[2026-10-28 01:32:46,765.765 INFO    ] 200
[2026-10-28 01:32:46,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:32:46,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:32:46,822.822 INFO    ] No update needed
[2026-10-28 01:32:46,825.825 INFO    ] Checking for camera pi updates...
[2026-10-28 01:32:46,858.858 INFO    ] 200
[2026-10-28 01:32:46,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:32:46,904.904 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:32:46,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:32:46,990.990 INFO    ] No camera update needed
[2026-10-28 01:32:46,992.992 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:32:46,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:32:47,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:32:47,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:32:49,047.047 INFO    ] ================================================
[2026-10-28 01:32:49,062.062 INFO    ] Launching Daemon at Wed Oct 28 01:32:49 IST 2026
[2026-10-28 01:32:49,072.072 INFO    ] ================================================
[2026-10-28 01:32:49,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:32:49
[2026-10-28 01:32:50,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:32:50,510.510 INFO    ] Initializing speech engine...
[2026-10-28 01:32:50,516.516 INFO    ] 2026-10-28 01:32:50
[2026-10-28 01:32:50,763.763 INFO    ] 2026-10-28 01:32:50
[2026-10-28 01:32:50,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:32:51,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:32:51,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:32:51,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:32:51,328.328 INFO    ] time= 28/10/2026 01:32:51
[2026-10-28 01:32:51,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:32:51,352.352 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:32:51,510.510 INFO    ] No existing commands found in stream
[2026-10-28 01:32:56,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:32:56,538.538 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-28 01:33:01,001.001 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:33:01,004.004 INFO    ] Checking for system updates...
[2026-10-28 01:33:01,040.040 INFO    ] 200
[2026-10-28 01:33:01,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:33:01,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:33:01,099.099 INFO    ] No update needed
[2026-10-28 01:33:01,101.101 INFO    ] Checking for camera pi updates...
[2026-10-28 01:33:01,135.135 INFO    ] 200
[2026-10-28 01:33:01,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:33:01,182.182 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:33:01,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:33:01,271.271 INFO    ] No camera update needed
[2026-10-28 01:33:01,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:33:01,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:33:01,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:33:01,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:33:03,332.332 INFO    ] ================================================
[2026-10-28 01:33:03,347.347 INFO    ] Launching Daemon at Wed Oct 28 01:33:03 IST 2026
[2026-10-28 01:33:03,358.358 INFO    ] ================================================
[2026-10-28 01:33:03,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:33:03
[2026-10-28 01:33:04,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:33:04,886.886 INFO    ] Initializing speech engine...
[2026-10-28 01:33:04,901.901 INFO    ] 2026-10-28 01:33:04
[2026-10-28 01:33:05,214.214 INFO    ] 2026-10-28 01:33:05
[2026-10-28 01:33:05,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:33:05,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:33:05,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:33:05,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:33:05,881.881 INFO    ] time= 28/10/2026 01:33:05
[2026-10-28 01:33:05,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:33:05,993.993 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:33:06,157.157 INFO    ] No existing commands found in stream
[2026-10-28 01:33:11,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:33:11,179.179 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 01:33:12,800.800 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:33:12,804.804 INFO    ] Checking for system updates...
[2026-10-28 01:33:12,841.841 INFO    ] 200
[2026-10-28 01:33:12,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:33:12,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:33:12,899.899 INFO    ] No update needed
[2026-10-28 01:33:12,901.901 INFO    ] Checking for camera pi updates...
[2026-10-28 01:33:12,935.935 INFO    ] 200
[2026-10-28 01:33:12,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:33:12,983.983 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:33:13,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:33:13,071.071 INFO    ] No camera update needed
[2026-10-28 01:33:13,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:33:13,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:33:13,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:33:13,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:33:15,126.126 INFO    ] ================================================
[2026-10-28 01:33:15,141.141 INFO    ] Launching Daemon at Wed Oct 28 01:33:15 IST 2026
[2026-10-28 01:33:15,152.152 INFO    ] ================================================
[2026-10-28 01:33:15,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:33:15
[2026-10-28 01:33:16,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:33:16,575.575 INFO    ] Initializing speech engine...
[2026-10-28 01:33:16,588.588 INFO    ] 2026-10-28 01:33:16
[2026-10-28 01:33:16,854.854 INFO    ] 2026-10-28 01:33:16
[2026-10-28 01:33:16,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:33:17,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:33:17,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:33:17,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:33:17,408.408 INFO    ] time= 28/10/2026 01:33:17
[2026-10-28 01:33:17,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:33:17,443.443 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:33:17,586.586 INFO    ] No existing commands found in stream
[2026-10-28 01:33:22,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:33:22,614.614 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-28 01:33:24,724.724 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:33:24,726.726 INFO    ] Checking for system updates...
[2026-10-28 01:33:24,763.763 INFO    ] 200
[2026-10-28 01:33:24,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:33:24,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:33:24,826.826 INFO    ] No update needed
[2026-10-28 01:33:24,829.829 INFO    ] Checking for camera pi updates...
[2026-10-28 01:33:24,863.863 INFO    ] 200
[2026-10-28 01:33:24,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:33:24,906.906 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:33:24,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:33:24,997.997 INFO    ] No camera update needed
[2026-10-28 01:33:25,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:33:25,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:33:25,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:33:25,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:33:27,052.052 INFO    ] ================================================
[2026-10-28 01:33:27,067.067 INFO    ] Launching Daemon at Wed Oct 28 01:33:27 IST 2026
[2026-10-28 01:33:27,077.077 INFO    ] ================================================
[2026-10-28 01:33:27,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:33:27
[2026-10-28 01:33:28,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:33:28,548.548 INFO    ] Initializing speech engine...
[2026-10-28 01:33:28,554.554 INFO    ] 2026-10-28 01:33:28
[2026-10-28 01:33:28,812.812 INFO    ] 2026-10-28 01:33:28
[2026-10-28 01:33:28,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:33:29,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:33:29,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:33:29,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:33:29,359.359 INFO    ] time= 28/10/2026 01:33:29
[2026-10-28 01:33:29,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:33:29,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:33:29,509.509 INFO    ] No existing commands found in stream
[2026-10-28 01:33:34,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:33:34,527.527 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-28 01:33:37,789.789 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:33:37,792.792 INFO    ] Checking for system updates...
[2026-10-28 01:33:37,828.828 INFO    ] 200
[2026-10-28 01:33:37,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:33:37,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:33:37,885.885 INFO    ] No update needed
[2026-10-28 01:33:37,888.888 INFO    ] Checking for camera pi updates...
[2026-10-28 01:33:37,921.921 INFO    ] 200
[2026-10-28 01:33:37,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:33:37,965.965 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:33:38,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:33:38,063.063 INFO    ] No camera update needed
[2026-10-28 01:33:38,066.066 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:33:38,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:33:38,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:33:38,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:33:40,118.118 INFO    ] ================================================
[2026-10-28 01:33:40,133.133 INFO    ] Launching Daemon at Wed Oct 28 01:33:40 IST 2026
[2026-10-28 01:33:40,143.143 INFO    ] ================================================
[2026-10-28 01:33:40,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:33:40
[2026-10-28 01:33:41,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:33:41,546.546 INFO    ] Initializing speech engine...
[2026-10-28 01:33:41,555.555 INFO    ] 2026-10-28 01:33:41
[2026-10-28 01:33:41,849.849 INFO    ] 2026-10-28 01:33:41
[2026-10-28 01:33:41,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:33:42,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:33:42,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:33:42,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:33:42,249.249 INFO    ] time= 28/10/2026 01:33:42
[2026-10-28 01:33:42,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:33:42,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:33:42,431.431 INFO    ] No existing commands found in stream
[2026-10-28 01:33:47,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:33:47,456.456 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-28 01:33:49,645.645 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:33:49,647.647 INFO    ] Checking for system updates...
[2026-10-28 01:33:49,682.682 INFO    ] 200
[2026-10-28 01:33:49,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:33:49,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:33:49,741.741 INFO    ] No update needed
[2026-10-28 01:33:49,743.743 INFO    ] Checking for camera pi updates...
[2026-10-28 01:33:49,780.780 INFO    ] 200
[2026-10-28 01:33:49,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:33:49,823.823 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:33:50,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:33:50,023.023 INFO    ] No camera update needed
[2026-10-28 01:33:50,025.025 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:33:50,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:33:50,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:33:50,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:33:52,079.079 INFO    ] ================================================
[2026-10-28 01:33:52,094.094 INFO    ] Launching Daemon at Wed Oct 28 01:33:52 IST 2026
[2026-10-28 01:33:52,105.105 INFO    ] ================================================
[2026-10-28 01:33:52,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:33:52
[2026-10-28 01:33:53,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:33:53,558.558 INFO    ] Initializing speech engine...
[2026-10-28 01:33:53,564.564 INFO    ] 2026-10-28 01:33:53
[2026-10-28 01:33:53,864.864 INFO    ] 2026-10-28 01:33:53
[2026-10-28 01:33:53,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:33:54,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:33:54,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:33:54,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:33:54,405.405 INFO    ] time= 28/10/2026 01:33:54
[2026-10-28 01:33:54,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:33:54,502.502 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:33:54,635.635 INFO    ] No existing commands found in stream
[2026-10-28 01:33:59,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:33:59,661.661 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-28 01:34:02,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:34:02,206.206 INFO    ] Checking for system updates...
[2026-10-28 01:34:02,275.275 INFO    ] 200
[2026-10-28 01:34:02,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:34:02,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:34:02,351.351 INFO    ] No update needed
[2026-10-28 01:34:02,355.355 INFO    ] Checking for camera pi updates...
[2026-10-28 01:34:02,397.397 INFO    ] 200
[2026-10-28 01:34:02,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:34:02,446.446 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:34:02,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:34:02,554.554 INFO    ] No camera update needed
[2026-10-28 01:34:02,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:34:02,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:34:02,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:34:02,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:34:04,615.615 INFO    ] ================================================
[2026-10-28 01:34:04,630.630 INFO    ] Launching Daemon at Wed Oct 28 01:34:04 IST 2026
[2026-10-28 01:34:04,640.640 INFO    ] ================================================
[2026-10-28 01:34:05,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:34:05
[2026-10-28 01:34:05,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:34:06,286.286 INFO    ] Initializing speech engine...
[2026-10-28 01:34:06,297.297 INFO    ] 2026-10-28 01:34:06
[2026-10-28 01:34:06,610.610 INFO    ] 2026-10-28 01:34:06
[2026-10-28 01:34:06,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:34:06,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:34:06,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:34:07,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:34:07,159.159 INFO    ] time= 28/10/2026 01:34:07
[2026-10-28 01:34:07,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:34:07,246.246 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:34:07,374.374 INFO    ] No existing commands found in stream
[2026-10-28 01:34:12,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:34:12,411.411 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-28 01:34:16,534.534 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:34:16,537.537 INFO    ] Checking for system updates...
[2026-10-28 01:34:16,574.574 INFO    ] 200
[2026-10-28 01:34:16,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:34:16,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:34:16,634.634 INFO    ] No update needed
[2026-10-28 01:34:16,637.637 INFO    ] Checking for camera pi updates...
[2026-10-28 01:34:16,671.671 INFO    ] 200
[2026-10-28 01:34:16,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:34:16,715.715 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:34:16,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:34:16,803.803 INFO    ] No camera update needed
[2026-10-28 01:34:16,806.806 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:34:16,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:34:16,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:34:16,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:34:18,865.865 INFO    ] ================================================
[2026-10-28 01:34:18,880.880 INFO    ] Launching Daemon at Wed Oct 28 01:34:18 IST 2026
[2026-10-28 01:34:18,891.891 INFO    ] ================================================
[2026-10-28 01:34:19,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:34:19
[2026-10-28 01:34:20,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:34:20,294.294 INFO    ] Initializing speech engine...
[2026-10-28 01:34:20,312.312 INFO    ] 2026-10-28 01:34:20
[2026-10-28 01:34:20,566.566 INFO    ] 2026-10-28 01:34:20
[2026-10-28 01:34:20,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:34:20,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:34:20,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:34:21,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:34:21,129.129 INFO    ] time= 28/10/2026 01:34:21
[2026-10-28 01:34:21,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:34:21,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:34:21,286.286 INFO    ] No existing commands found in stream
[2026-10-28 01:34:26,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:34:26,302.302 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-28 01:34:28,935.935 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:34:28,938.938 INFO    ] Checking for system updates...
[2026-10-28 01:34:28,974.974 INFO    ] 200
[2026-10-28 01:34:28,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:34:29,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:34:29,041.041 INFO    ] No update needed
[2026-10-28 01:34:29,044.044 INFO    ] Checking for camera pi updates...
[2026-10-28 01:34:29,077.077 INFO    ] 200
[2026-10-28 01:34:29,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:34:29,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:34:29,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:34:29,216.216 INFO    ] No camera update needed
[2026-10-28 01:34:29,219.219 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:34:29,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:34:29,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:34:29,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:34:31,273.273 INFO    ] ================================================
[2026-10-28 01:34:31,289.289 INFO    ] Launching Daemon at Wed Oct 28 01:34:31 IST 2026
[2026-10-28 01:34:31,299.299 INFO    ] ================================================
[2026-10-28 01:34:31,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:34:31
[2026-10-28 01:34:32,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:34:32,901.901 INFO    ] Initializing speech engine...
[2026-10-28 01:34:32,917.917 INFO    ] 2026-10-28 01:34:32
[2026-10-28 01:34:33,198.198 INFO    ] 2026-10-28 01:34:33
[2026-10-28 01:34:33,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:34:33,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:34:33,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:34:33,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:34:33,751.751 INFO    ] time= 28/10/2026 01:34:33
[2026-10-28 01:34:33,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:34:33,788.788 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:34:33,917.917 INFO    ] No existing commands found in stream
[2026-10-28 01:34:38,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:34:38,954.954 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-28 01:34:40,495.495 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:34:40,497.497 INFO    ] Checking for system updates...
[2026-10-28 01:34:40,533.533 INFO    ] 200
[2026-10-28 01:34:40,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:34:40,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:34:40,590.590 INFO    ] No update needed
[2026-10-28 01:34:40,593.593 INFO    ] Checking for camera pi updates...
[2026-10-28 01:34:40,626.626 INFO    ] 200
[2026-10-28 01:34:40,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:34:40,670.670 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:34:40,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:34:40,754.754 INFO    ] No camera update needed
[2026-10-28 01:34:40,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:34:40,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:34:40,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:34:40,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:34:42,810.810 INFO    ] ================================================
[2026-10-28 01:34:42,826.826 INFO    ] Launching Daemon at Wed Oct 28 01:34:42 IST 2026
[2026-10-28 01:34:42,837.837 INFO    ] ================================================
[2026-10-28 01:34:43,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:34:43
[2026-10-28 01:34:43,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:34:44,239.239 INFO    ] Initializing speech engine...
[2026-10-28 01:34:44,248.248 INFO    ] 2026-10-28 01:34:44
[2026-10-28 01:34:44,540.540 INFO    ] 2026-10-28 01:34:44
[2026-10-28 01:34:44,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:34:44,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:34:44,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:34:45,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:34:45,171.171 INFO    ] time= 28/10/2026 01:34:45
[2026-10-28 01:34:45,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:34:45,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:34:45,348.348 INFO    ] No existing commands found in stream
[2026-10-28 01:34:50,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:34:50,363.363 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-28 01:34:54,713.713 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:34:54,715.715 INFO    ] Checking for system updates...
[2026-10-28 01:34:54,751.751 INFO    ] 200
[2026-10-28 01:34:54,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:34:54,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:34:54,808.808 INFO    ] No update needed
[2026-10-28 01:34:54,810.810 INFO    ] Checking for camera pi updates...
[2026-10-28 01:34:54,844.844 INFO    ] 200
[2026-10-28 01:34:54,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:34:54,886.886 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:34:54,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:34:54,961.961 INFO    ] No camera update needed
[2026-10-28 01:34:54,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:34:54,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:34:54,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:34:54,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:34:57,017.017 INFO    ] ================================================
[2026-10-28 01:34:57,033.033 INFO    ] Launching Daemon at Wed Oct 28 01:34:57 IST 2026
[2026-10-28 01:34:57,044.044 INFO    ] ================================================
[2026-10-28 01:34:57,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:34:57
[2026-10-28 01:34:58,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:34:58,472.472 INFO    ] Initializing speech engine...
[2026-10-28 01:34:58,478.478 INFO    ] 2026-10-28 01:34:58
[2026-10-28 01:34:58,781.781 INFO    ] 2026-10-28 01:34:58
[2026-10-28 01:34:58,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:34:59,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:34:59,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:34:59,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:34:59,412.412 INFO    ] time= 28/10/2026 01:34:59
[2026-10-28 01:34:59,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:34:59,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:34:59,598.598 INFO    ] No existing commands found in stream
[2026-10-28 01:35:04,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:35:04,614.614 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-28 01:35:05,691.691 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:35:05,694.694 INFO    ] Checking for system updates...
[2026-10-28 01:35:05,733.733 INFO    ] 200
[2026-10-28 01:35:05,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:35:05,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:35:05,790.790 INFO    ] No update needed
[2026-10-28 01:35:05,792.792 INFO    ] Checking for camera pi updates...
[2026-10-28 01:35:05,826.826 INFO    ] 200
[2026-10-28 01:35:05,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:35:05,869.869 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:35:05,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:35:05,974.974 INFO    ] No camera update needed
[2026-10-28 01:35:05,976.976 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:35:05,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:35:05,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:35:05,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:35:08,030.030 INFO    ] ================================================
[2026-10-28 01:35:08,047.047 INFO    ] Launching Daemon at Wed Oct 28 01:35:08 IST 2026
[2026-10-28 01:35:08,058.058 INFO    ] ================================================
[2026-10-28 01:35:08,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:35:08
[2026-10-28 01:35:09,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:35:09,631.631 INFO    ] Initializing speech engine...
[2026-10-28 01:35:09,645.645 INFO    ] 2026-10-28 01:35:09
[2026-10-28 01:35:09,913.913 INFO    ] 2026-10-28 01:35:09
[2026-10-28 01:35:09,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:35:10,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:35:10,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:35:10,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:35:10,625.625 INFO    ] time= 28/10/2026 01:35:10
[2026-10-28 01:35:10,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:35:10,733.733 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:35:10,902.902 INFO    ] No existing commands found in stream
[2026-10-28 01:35:15,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:35:15,921.921 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-28 01:35:18,712.712 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:35:18,715.715 INFO    ] Checking for system updates...
[2026-10-28 01:35:18,765.765 INFO    ] 200
[2026-10-28 01:35:18,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:35:18,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:35:18,823.823 INFO    ] No update needed
[2026-10-28 01:35:18,826.826 INFO    ] Checking for camera pi updates...
[2026-10-28 01:35:18,861.861 INFO    ] 200
[2026-10-28 01:35:18,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:35:18,905.905 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:35:18,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:35:18,996.996 INFO    ] No camera update needed
[2026-10-28 01:35:18,998.998 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:35:19,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:35:19,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:35:19,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:35:21,053.053 INFO    ] ================================================
[2026-10-28 01:35:21,068.068 INFO    ] Launching Daemon at Wed Oct 28 01:35:21 IST 2026
[2026-10-28 01:35:21,079.079 INFO    ] ================================================
[2026-10-28 01:35:21,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:35:21
[2026-10-28 01:35:22,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:35:22,584.584 INFO    ] Initializing speech engine...
[2026-10-28 01:35:22,596.596 INFO    ] 2026-10-28 01:35:22
[2026-10-28 01:35:22,881.881 INFO    ] 2026-10-28 01:35:22
[2026-10-28 01:35:22,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:35:23,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:35:23,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:35:23,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:35:23,415.415 INFO    ] time= 28/10/2026 01:35:23
[2026-10-28 01:35:23,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:35:23,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:35:23,613.613 INFO    ] No existing commands found in stream
[2026-10-28 01:35:28,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:35:28,652.652 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-28 01:35:32,672.672 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:35:32,676.676 INFO    ] Checking for system updates...
[2026-10-28 01:35:32,721.721 INFO    ] 200
[2026-10-28 01:35:32,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:35:32,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:35:32,786.786 INFO    ] No update needed
[2026-10-28 01:35:32,789.789 INFO    ] Checking for camera pi updates...
[2026-10-28 01:35:32,826.826 INFO    ] 200
[2026-10-28 01:35:32,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:35:32,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:35:32,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:35:32,979.979 INFO    ] No camera update needed
[2026-10-28 01:35:32,982.982 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:35:32,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:35:32,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:35:32,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:35:35,039.039 INFO    ] ================================================
[2026-10-28 01:35:35,055.055 INFO    ] Launching Daemon at Wed Oct 28 01:35:35 IST 2026
[2026-10-28 01:35:35,066.066 INFO    ] ================================================
[2026-10-28 01:35:35,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:35:35
[2026-10-28 01:35:36,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:35:36,508.508 INFO    ] Initializing speech engine...
[2026-10-28 01:35:36,515.515 INFO    ] 2026-10-28 01:35:36
[2026-10-28 01:35:36,812.812 INFO    ] 2026-10-28 01:35:36
[2026-10-28 01:35:36,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:35:37,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:35:37,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:35:37,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:35:37,430.430 INFO    ] time= 28/10/2026 01:35:37
[2026-10-28 01:35:37,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:35:37,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:35:37,589.589 INFO    ] No existing commands found in stream
[2026-10-28 01:35:42,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:35:42,617.617 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-28 01:35:46,097.097 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:35:46,100.100 INFO    ] Checking for system updates...
[2026-10-28 01:35:46,139.139 INFO    ] 200
[2026-10-28 01:35:46,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:35:46,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:35:46,202.202 INFO    ] No update needed
[2026-10-28 01:35:46,204.204 INFO    ] Checking for camera pi updates...
[2026-10-28 01:35:46,238.238 INFO    ] 200
[2026-10-28 01:35:46,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:35:46,285.285 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:35:46,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:35:46,373.373 INFO    ] No camera update needed
[2026-10-28 01:35:46,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:35:46,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:35:46,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:35:46,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:35:48,428.428 INFO    ] ================================================
[2026-10-28 01:35:48,444.444 INFO    ] Launching Daemon at Wed Oct 28 01:35:48 IST 2026
[2026-10-28 01:35:48,455.455 INFO    ] ================================================
[2026-10-28 01:35:49,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:35:49
[2026-10-28 01:35:49,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:35:50,066.066 INFO    ] Initializing speech engine...
[2026-10-28 01:35:50,074.074 INFO    ] 2026-10-28 01:35:50
[2026-10-28 01:35:50,350.350 INFO    ] 2026-10-28 01:35:50
[2026-10-28 01:35:50,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:35:50,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:35:50,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:35:50,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:35:50,925.925 INFO    ] time= 28/10/2026 01:35:50
[2026-10-28 01:35:50,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:35:50,963.963 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:35:51,096.096 INFO    ] No existing commands found in stream
[2026-10-28 01:35:56,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:35:56,130.130 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-28 01:36:00,175.175 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:36:00,178.178 INFO    ] Checking for system updates...
[2026-10-28 01:36:00,215.215 INFO    ] 200
[2026-10-28 01:36:00,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:36:00,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:36:00,272.272 INFO    ] No update needed
[2026-10-28 01:36:00,275.275 INFO    ] Checking for camera pi updates...
[2026-10-28 01:36:00,309.309 INFO    ] 200
[2026-10-28 01:36:00,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:36:00,353.353 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:36:00,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:36:00,540.540 INFO    ] No camera update needed
[2026-10-28 01:36:00,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:36:00,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:36:00,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:36:00,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:36:02,609.609 INFO    ] ================================================
[2026-10-28 01:36:02,627.627 INFO    ] Launching Daemon at Wed Oct 28 01:36:02 IST 2026
[2026-10-28 01:36:02,640.640 INFO    ] ================================================
[2026-10-28 01:36:03,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:36:03
[2026-10-28 01:36:04,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:36:04,328.328 INFO    ] Initializing speech engine...
[2026-10-28 01:36:04,337.337 INFO    ] 2026-10-28 01:36:04
[2026-10-28 01:36:04,623.623 INFO    ] 2026-10-28 01:36:04
[2026-10-28 01:36:04,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:36:04,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:36:04,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:36:05,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:36:05,203.203 INFO    ] time= 28/10/2026 01:36:05
[2026-10-28 01:36:05,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:36:05,245.245 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:36:05,393.393 INFO    ] No existing commands found in stream
[2026-10-28 01:36:10,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:36:10,426.426 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-28 01:36:14,803.803 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:36:14,805.805 INFO    ] Checking for system updates...
[2026-10-28 01:36:14,842.842 INFO    ] 200
[2026-10-28 01:36:14,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:36:14,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:36:14,909.909 INFO    ] No update needed
[2026-10-28 01:36:14,912.912 INFO    ] Checking for camera pi updates...
[2026-10-28 01:36:14,950.950 INFO    ] 200
[2026-10-28 01:36:14,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:36:14,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:36:15,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:36:15,106.106 INFO    ] No camera update needed
[2026-10-28 01:36:15,109.109 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:36:15,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:36:15,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:36:15,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:36:17,166.166 INFO    ] ================================================
[2026-10-28 01:36:17,182.182 INFO    ] Launching Daemon at Wed Oct 28 01:36:17 IST 2026
[2026-10-28 01:36:17,193.193 INFO    ] ================================================
[2026-10-28 01:36:17,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:36:17
[2026-10-28 01:36:18,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:36:18,664.664 INFO    ] Initializing speech engine...
[2026-10-28 01:36:18,671.671 INFO    ] 2026-10-28 01:36:18
[2026-10-28 01:36:18,933.933 INFO    ] 2026-10-28 01:36:18
[2026-10-28 01:36:19,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:36:19,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:36:19,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:36:19,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:36:19,493.493 INFO    ] time= 28/10/2026 01:36:19
[2026-10-28 01:36:19,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:36:19,528.528 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:36:19,634.634 INFO    ] No existing commands found in stream
[2026-10-28 01:36:24,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:36:24,653.653 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-28 01:36:25,484.484 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:36:25,487.487 INFO    ] Checking for system updates...
[2026-10-28 01:36:25,526.526 INFO    ] 200
[2026-10-28 01:36:25,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:36:25,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:36:25,583.583 INFO    ] No update needed
[2026-10-28 01:36:25,586.586 INFO    ] Checking for camera pi updates...
[2026-10-28 01:36:25,620.620 INFO    ] 200
[2026-10-28 01:36:25,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:36:25,662.662 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:36:25,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:36:25,723.723 INFO    ] No camera update needed
[2026-10-28 01:36:25,726.726 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:36:25,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:36:25,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:36:25,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:36:27,780.780 INFO    ] ================================================
[2026-10-28 01:36:27,795.795 INFO    ] Launching Daemon at Wed Oct 28 01:36:27 IST 2026
[2026-10-28 01:36:27,806.806 INFO    ] ================================================
[2026-10-28 01:36:28,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:36:28
[2026-10-28 01:36:29,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:36:29,437.437 INFO    ] Initializing speech engine...
[2026-10-28 01:36:29,444.444 INFO    ] 2026-10-28 01:36:29
[2026-10-28 01:36:29,719.719 INFO    ] 2026-10-28 01:36:29
[2026-10-28 01:36:29,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:36:30,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:36:30,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:36:30,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:36:30,316.316 INFO    ] time= 28/10/2026 01:36:30
[2026-10-28 01:36:30,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:36:30,411.411 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:36:30,585.585 INFO    ] No existing commands found in stream
[2026-10-28 01:36:35,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:36:35,619.619 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-28 01:36:37,670.670 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:36:37,673.673 INFO    ] Checking for system updates...
[2026-10-28 01:36:37,709.709 INFO    ] 200
[2026-10-28 01:36:37,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:36:37,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:36:37,767.767 INFO    ] No update needed
[2026-10-28 01:36:37,769.769 INFO    ] Checking for camera pi updates...
[2026-10-28 01:36:37,803.803 INFO    ] 200
[2026-10-28 01:36:37,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:36:37,846.846 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:36:37,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:36:37,931.931 INFO    ] No camera update needed
[2026-10-28 01:36:37,933.933 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:36:37,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:36:37,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:36:37,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:36:39,989.989 INFO    ] ================================================
[2026-10-28 01:36:40,004.004 INFO    ] Launching Daemon at Wed Oct 28 01:36:39 IST 2026
[2026-10-28 01:36:40,015.015 INFO    ] ================================================
[2026-10-28 01:36:40,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:36:40
[2026-10-28 01:36:41,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:36:41,647.647 INFO    ] Initializing speech engine...
[2026-10-28 01:36:41,654.654 INFO    ] 2026-10-28 01:36:41
[2026-10-28 01:36:41,943.943 INFO    ] 2026-10-28 01:36:41
[2026-10-28 01:36:42,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:36:42,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:36:42,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:36:42,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:36:42,698.698 INFO    ] time= 28/10/2026 01:36:42
[2026-10-28 01:36:42,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:36:42,796.796 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:36:42,920.920 INFO    ] No existing commands found in stream
[2026-10-28 01:36:47,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:36:47,942.942 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-28 01:36:51,313.313 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:36:51,316.316 INFO    ] Checking for system updates...
[2026-10-28 01:36:51,352.352 INFO    ] 200
[2026-10-28 01:36:51,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:36:51,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:36:51,411.411 INFO    ] No update needed
[2026-10-28 01:36:51,414.414 INFO    ] Checking for camera pi updates...
[2026-10-28 01:36:51,448.448 INFO    ] 200
[2026-10-28 01:36:51,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:36:51,492.492 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:36:51,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:36:51,575.575 INFO    ] No camera update needed
[2026-10-28 01:36:51,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:36:51,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:36:51,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:36:51,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:36:53,634.634 INFO    ] ================================================
[2026-10-28 01:36:53,649.649 INFO    ] Launching Daemon at Wed Oct 28 01:36:53 IST 2026
[2026-10-28 01:36:53,660.660 INFO    ] ================================================
[2026-10-28 01:36:54,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:36:54
[2026-10-28 01:36:55,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:36:55,302.302 INFO    ] Initializing speech engine...
[2026-10-28 01:36:55,311.311 INFO    ] 2026-10-28 01:36:55
[2026-10-28 01:36:55,587.587 INFO    ] 2026-10-28 01:36:55
[2026-10-28 01:36:55,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:36:55,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:36:56,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:36:56,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:36:56,353.353 INFO    ] time= 28/10/2026 01:36:56
[2026-10-28 01:36:56,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:36:56,456.456 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:36:56,652.652 INFO    ] No existing commands found in stream
[2026-10-28 01:37:01,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:37:01,694.694 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-28 01:37:06,010.010 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:37:06,013.013 INFO    ] Checking for system updates...
[2026-10-28 01:37:06,050.050 INFO    ] 200
[2026-10-28 01:37:06,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:37:06,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:37:06,107.107 INFO    ] No update needed
[2026-10-28 01:37:06,110.110 INFO    ] Checking for camera pi updates...
[2026-10-28 01:37:06,143.143 INFO    ] 200
[2026-10-28 01:37:06,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:37:06,191.191 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:37:06,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:37:06,275.275 INFO    ] No camera update needed
[2026-10-28 01:37:06,278.278 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:37:06,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:37:06,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:37:06,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:37:08,331.331 INFO    ] ================================================
[2026-10-28 01:37:08,347.347 INFO    ] Launching Daemon at Wed Oct 28 01:37:08 IST 2026
[2026-10-28 01:37:08,357.357 INFO    ] ================================================
[2026-10-28 01:37:08,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:37:08
[2026-10-28 01:37:09,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:37:09,798.798 INFO    ] Initializing speech engine...
[2026-10-28 01:37:09,813.813 INFO    ] 2026-10-28 01:37:09
[2026-10-28 01:37:10,091.091 INFO    ] 2026-10-28 01:37:10
[2026-10-28 01:37:10,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:37:10,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:37:10,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:37:10,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:37:10,686.686 INFO    ] time= 28/10/2026 01:37:10
[2026-10-28 01:37:10,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:37:10,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:37:10,850.850 INFO    ] No existing commands found in stream
[2026-10-28 01:37:15,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:37:15,878.878 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-28 01:37:19,176.176 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:37:19,179.179 INFO    ] Checking for system updates...
[2026-10-28 01:37:19,215.215 INFO    ] 200
[2026-10-28 01:37:19,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:37:19,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:37:19,274.274 INFO    ] No update needed
[2026-10-28 01:37:19,277.277 INFO    ] Checking for camera pi updates...
[2026-10-28 01:37:19,315.315 INFO    ] 200
[2026-10-28 01:37:19,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:37:19,362.362 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:37:19,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:37:19,464.464 INFO    ] No camera update needed
[2026-10-28 01:37:19,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:37:19,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:37:19,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:37:19,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:37:21,521.521 INFO    ] ================================================
[2026-10-28 01:37:21,536.536 INFO    ] Launching Daemon at Wed Oct 28 01:37:21 IST 2026
[2026-10-28 01:37:21,548.548 INFO    ] ================================================
[2026-10-28 01:37:22,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:37:22
[2026-10-28 01:37:22,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:37:22,963.963 INFO    ] Initializing speech engine...
[2026-10-28 01:37:22,972.972 INFO    ] 2026-10-28 01:37:22
[2026-10-28 01:37:23,224.224 INFO    ] 2026-10-28 01:37:23
[2026-10-28 01:37:23,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:37:23,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:37:23,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:37:23,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:37:23,793.793 INFO    ] time= 28/10/2026 01:37:23
[2026-10-28 01:37:23,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:37:23,829.829 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:37:23,964.964 INFO    ] No existing commands found in stream
[2026-10-28 01:37:28,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:37:28,997.997 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 01:37:30,081.081 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:37:30,084.084 INFO    ] Checking for system updates...
[2026-10-28 01:37:30,119.119 INFO    ] 200
[2026-10-28 01:37:30,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:37:30,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:37:30,181.181 INFO    ] No update needed
[2026-10-28 01:37:30,184.184 INFO    ] Checking for camera pi updates...
[2026-10-28 01:37:30,217.217 INFO    ] 200
[2026-10-28 01:37:30,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:37:30,261.261 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:37:30,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:37:30,364.364 INFO    ] No camera update needed
[2026-10-28 01:37:30,367.367 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:37:30,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:37:30,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:37:30,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:37:32,421.421 INFO    ] ================================================
[2026-10-28 01:37:32,437.437 INFO    ] Launching Daemon at Wed Oct 28 01:37:32 IST 2026
[2026-10-28 01:37:32,448.448 INFO    ] ================================================
[2026-10-28 01:37:33,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:37:33
[2026-10-28 01:37:33,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:37:33,925.925 INFO    ] Initializing speech engine...
[2026-10-28 01:37:33,934.934 INFO    ] 2026-10-28 01:37:33
[2026-10-28 01:37:34,191.191 INFO    ] 2026-10-28 01:37:34
[2026-10-28 01:37:34,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:37:34,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:37:34,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:37:34,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:37:34,735.735 INFO    ] time= 28/10/2026 01:37:34
[2026-10-28 01:37:34,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:37:34,780.780 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:37:34,888.888 INFO    ] No existing commands found in stream
[2026-10-28 01:37:39,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:37:39,918.918 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 01:37:44,095.095 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:37:44,097.097 INFO    ] Checking for system updates...
[2026-10-28 01:37:44,134.134 INFO    ] 200
[2026-10-28 01:37:44,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:37:44,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:37:44,193.193 INFO    ] No update needed
[2026-10-28 01:37:44,195.195 INFO    ] Checking for camera pi updates...
[2026-10-28 01:37:44,230.230 INFO    ] 200
[2026-10-28 01:37:44,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:37:44,273.273 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:37:44,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:37:44,357.357 INFO    ] No camera update needed
[2026-10-28 01:37:44,359.359 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:37:44,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:37:44,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:37:44,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:37:46,413.413 INFO    ] ================================================
[2026-10-28 01:37:46,427.427 INFO    ] Launching Daemon at Wed Oct 28 01:37:46 IST 2026
[2026-10-28 01:37:46,438.438 INFO    ] ================================================
[2026-10-28 01:37:47,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:37:47
[2026-10-28 01:37:47,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:37:47,894.894 INFO    ] Initializing speech engine...
[2026-10-28 01:37:47,902.902 INFO    ] 2026-10-28 01:37:47
[2026-10-28 01:37:48,163.163 INFO    ] 2026-10-28 01:37:48
[2026-10-28 01:37:48,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:37:48,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:37:48,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:37:48,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:37:48,721.721 INFO    ] time= 28/10/2026 01:37:48
[2026-10-28 01:37:48,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:37:48,756.756 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:37:48,877.877 INFO    ] No existing commands found in stream
[2026-10-28 01:37:53,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:37:53,910.910 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-28 01:37:58,255.255 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:37:58,258.258 INFO    ] Checking for system updates...
[2026-10-28 01:37:58,294.294 INFO    ] 200
[2026-10-28 01:37:58,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:37:58,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:37:58,351.351 INFO    ] No update needed
[2026-10-28 01:37:58,354.354 INFO    ] Checking for camera pi updates...
[2026-10-28 01:37:58,387.387 INFO    ] 200
[2026-10-28 01:37:58,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:37:58,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:37:58,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:37:58,513.513 INFO    ] No camera update needed
[2026-10-28 01:37:58,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:37:58,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:37:58,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:37:58,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:38:00,570.570 INFO    ] ================================================
[2026-10-28 01:38:00,586.586 INFO    ] Launching Daemon at Wed Oct 28 01:38:00 IST 2026
[2026-10-28 01:38:00,596.596 INFO    ] ================================================
[2026-10-28 01:38:01,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:38:01
[2026-10-28 01:38:02,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:38:02,366.366 INFO    ] Initializing speech engine...
[2026-10-28 01:38:02,382.382 INFO    ] 2026-10-28 01:38:02
[2026-10-28 01:38:02,681.681 INFO    ] 2026-10-28 01:38:02
[2026-10-28 01:38:02,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:38:02,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:38:03,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:38:03,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:38:03,375.375 INFO    ] time= 28/10/2026 01:38:03
[2026-10-28 01:38:03,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:38:03,396.396 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:38:03,536.536 INFO    ] No existing commands found in stream
[2026-10-28 01:38:08,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:38:08,564.564 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 01:38:09,968.968 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:38:09,971.971 INFO    ] Checking for system updates...
[2026-10-28 01:38:10,009.009 INFO    ] 200
[2026-10-28 01:38:10,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:38:10,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:38:10,069.069 INFO    ] No update needed
[2026-10-28 01:38:10,071.071 INFO    ] Checking for camera pi updates...
[2026-10-28 01:38:10,105.105 INFO    ] 200
[2026-10-28 01:38:10,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:38:10,153.153 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:38:10,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:38:10,258.258 INFO    ] No camera update needed
[2026-10-28 01:38:10,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:38:10,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:38:10,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:38:10,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:38:12,314.314 INFO    ] ================================================
[2026-10-28 01:38:12,328.328 INFO    ] Launching Daemon at Wed Oct 28 01:38:12 IST 2026
[2026-10-28 01:38:12,340.340 INFO    ] ================================================
[2026-10-28 01:38:12,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:38:12
[2026-10-28 01:38:13,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:38:13,800.800 INFO    ] Initializing speech engine...
[2026-10-28 01:38:13,810.810 INFO    ] 2026-10-28 01:38:13
[2026-10-28 01:38:14,072.072 INFO    ] 2026-10-28 01:38:14
[2026-10-28 01:38:14,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:38:14,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:38:14,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:38:14,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:38:14,632.632 INFO    ] time= 28/10/2026 01:38:14
[2026-10-28 01:38:14,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:38:14,656.656 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:38:14,792.792 INFO    ] No existing commands found in stream
[2026-10-28 01:38:19,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:38:19,813.813 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-28 01:38:24,130.130 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:38:24,133.133 INFO    ] Checking for system updates...
[2026-10-28 01:38:24,171.171 INFO    ] 200
[2026-10-28 01:38:24,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:38:24,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:38:24,233.233 INFO    ] No update needed
[2026-10-28 01:38:24,235.235 INFO    ] Checking for camera pi updates...
[2026-10-28 01:38:24,268.268 INFO    ] 200
[2026-10-28 01:38:24,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:38:24,315.315 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:38:24,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:38:24,405.405 INFO    ] No camera update needed
[2026-10-28 01:38:24,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:38:24,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:38:24,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:38:24,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:38:26,459.459 INFO    ] ================================================
[2026-10-28 01:38:26,475.475 INFO    ] Launching Daemon at Wed Oct 28 01:38:26 IST 2026
[2026-10-28 01:38:26,486.486 INFO    ] ================================================
[2026-10-28 01:38:27,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:38:27
[2026-10-28 01:38:27,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:38:27,971.971 INFO    ] Initializing speech engine...
[2026-10-28 01:38:27,976.976 INFO    ] 2026-10-28 01:38:27
[2026-10-28 01:38:28,244.244 INFO    ] 2026-10-28 01:38:28
[2026-10-28 01:38:28,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:38:28,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:38:28,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:38:28,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:38:28,861.861 INFO    ] time= 28/10/2026 01:38:28
[2026-10-28 01:38:28,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:38:28,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:38:29,022.022 INFO    ] No existing commands found in stream
[2026-10-28 01:38:34,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:38:34,050.050 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-28 01:38:35,272.272 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:38:35,275.275 INFO    ] Checking for system updates...
[2026-10-28 01:38:35,310.310 INFO    ] 200
[2026-10-28 01:38:35,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:38:35,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:38:35,367.367 INFO    ] No update needed
[2026-10-28 01:38:35,370.370 INFO    ] Checking for camera pi updates...
[2026-10-28 01:38:35,409.409 INFO    ] 200
[2026-10-28 01:38:35,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:38:35,452.452 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:38:35,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:38:35,535.535 INFO    ] No camera update needed
[2026-10-28 01:38:35,537.537 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:38:35,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:38:35,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:38:35,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:38:37,590.590 INFO    ] ================================================
[2026-10-28 01:38:37,606.606 INFO    ] Launching Daemon at Wed Oct 28 01:38:37 IST 2026
[2026-10-28 01:38:37,616.616 INFO    ] ================================================
[2026-10-28 01:38:38,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:38:38
[2026-10-28 01:38:38,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:38:39,066.066 INFO    ] Initializing speech engine...
[2026-10-28 01:38:39,076.076 INFO    ] 2026-10-28 01:38:39
[2026-10-28 01:38:39,320.320 INFO    ] 2026-10-28 01:38:39
[2026-10-28 01:38:39,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:38:39,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:38:39,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:38:39,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:38:39,876.876 INFO    ] time= 28/10/2026 01:38:39
[2026-10-28 01:38:39,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:38:39,922.922 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:38:40,058.058 INFO    ] No existing commands found in stream
[2026-10-28 01:38:45,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:38:45,086.086 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-28 01:38:46,729.729 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:38:46,731.731 INFO    ] Checking for system updates...
[2026-10-28 01:38:46,769.769 INFO    ] 200
[2026-10-28 01:38:46,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:38:46,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:38:46,830.830 INFO    ] No update needed
[2026-10-28 01:38:46,832.832 INFO    ] Checking for camera pi updates...
[2026-10-28 01:38:46,868.868 INFO    ] 200
[2026-10-28 01:38:46,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:38:46,913.913 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:38:47,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:38:47,006.006 INFO    ] No camera update needed
[2026-10-28 01:38:47,008.008 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:38:47,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:38:47,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:38:47,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:38:49,063.063 INFO    ] ================================================
[2026-10-28 01:38:49,082.082 INFO    ] Launching Daemon at Wed Oct 28 01:38:49 IST 2026
[2026-10-28 01:38:49,093.093 INFO    ] ================================================
[2026-10-28 01:38:49,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:38:49
[2026-10-28 01:38:50,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:38:50,549.549 INFO    ] Initializing speech engine...
[2026-10-28 01:38:50,557.557 INFO    ] 2026-10-28 01:38:50
[2026-10-28 01:38:50,846.846 INFO    ] 2026-10-28 01:38:50
[2026-10-28 01:38:50,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:38:51,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:38:51,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:38:51,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:38:51,327.327 INFO    ] time= 28/10/2026 01:38:51
[2026-10-28 01:38:51,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:38:51,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:38:51,610.610 INFO    ] No existing commands found in stream
[2026-10-28 01:38:56,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:38:56,638.638 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-28 01:39:00,591.591 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:39:00,594.594 INFO    ] Checking for system updates...
[2026-10-28 01:39:00,629.629 INFO    ] 200
[2026-10-28 01:39:00,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:39:00,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:39:00,685.685 INFO    ] No update needed
[2026-10-28 01:39:00,688.688 INFO    ] Checking for camera pi updates...
[2026-10-28 01:39:00,720.720 INFO    ] 200
[2026-10-28 01:39:00,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:39:00,763.763 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:39:00,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:39:00,855.855 INFO    ] No camera update needed
[2026-10-28 01:39:00,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:39:00,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:39:00,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:39:00,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:39:02,936.936 INFO    ] ================================================
[2026-10-28 01:39:02,954.954 INFO    ] Launching Daemon at Wed Oct 28 01:39:02 IST 2026
[2026-10-28 01:39:02,967.967 INFO    ] ================================================
[2026-10-28 01:39:03,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:39:03
[2026-10-28 01:39:04,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:39:04,572.572 INFO    ] Initializing speech engine...
[2026-10-28 01:39:04,580.580 INFO    ] 2026-10-28 01:39:04
[2026-10-28 01:39:04,847.847 INFO    ] 2026-10-28 01:39:04
[2026-10-28 01:39:04,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:39:05,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:39:05,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:39:05,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:39:05,414.414 INFO    ] time= 28/10/2026 01:39:05
[2026-10-28 01:39:05,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:39:05,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:39:05,637.637 INFO    ] No existing commands found in stream
[2026-10-28 01:39:10,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:39:10,671.671 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-28 01:39:11,449.449 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:39:11,452.452 INFO    ] Checking for system updates...
[2026-10-28 01:39:11,489.489 INFO    ] 200
[2026-10-28 01:39:11,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:39:11,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:39:11,547.547 INFO    ] No update needed
[2026-10-28 01:39:11,549.549 INFO    ] Checking for camera pi updates...
[2026-10-28 01:39:11,586.586 INFO    ] 200
[2026-10-28 01:39:11,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:39:11,632.632 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:39:11,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:39:11,719.719 INFO    ] No camera update needed
[2026-10-28 01:39:11,721.721 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:39:11,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:39:11,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:39:11,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:39:13,777.777 INFO    ] ================================================
[2026-10-28 01:39:13,793.793 INFO    ] Launching Daemon at Wed Oct 28 01:39:13 IST 2026
[2026-10-28 01:39:13,804.804 INFO    ] ================================================
[2026-10-28 01:39:14,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:39:14
[2026-10-28 01:39:14,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:39:15,255.255 INFO    ] Initializing speech engine...
[2026-10-28 01:39:15,265.265 INFO    ] 2026-10-28 01:39:15
[2026-10-28 01:39:15,527.527 INFO    ] 2026-10-28 01:39:15
[2026-10-28 01:39:15,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:39:15,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:39:15,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:39:16,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:39:16,130.130 INFO    ] time= 28/10/2026 01:39:16
[2026-10-28 01:39:16,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:39:16,153.153 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:39:16,309.309 INFO    ] No existing commands found in stream
[2026-10-28 01:39:21,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:39:21,339.339 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-28 01:39:23,552.552 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:39:23,554.554 INFO    ] Checking for system updates...
[2026-10-28 01:39:23,590.590 INFO    ] 200
[2026-10-28 01:39:23,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:39:23,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:39:23,647.647 INFO    ] No update needed
[2026-10-28 01:39:23,649.649 INFO    ] Checking for camera pi updates...
[2026-10-28 01:39:23,682.682 INFO    ] 200
[2026-10-28 01:39:23,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:39:23,727.727 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:39:23,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:39:23,810.810 INFO    ] No camera update needed
[2026-10-28 01:39:23,812.812 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:39:23,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:39:23,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:39:23,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:39:25,868.868 INFO    ] ================================================
[2026-10-28 01:39:25,884.884 INFO    ] Launching Daemon at Wed Oct 28 01:39:25 IST 2026
[2026-10-28 01:39:25,894.894 INFO    ] ================================================
[2026-10-28 01:39:26,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:39:26
[2026-10-28 01:39:27,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:39:27,468.468 INFO    ] Initializing speech engine...
[2026-10-28 01:39:27,477.477 INFO    ] 2026-10-28 01:39:27
[2026-10-28 01:39:27,744.744 INFO    ] 2026-10-28 01:39:27
[2026-10-28 01:39:27,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:39:28,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:39:28,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:39:28,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:39:28,487.487 INFO    ] time= 28/10/2026 01:39:28
[2026-10-28 01:39:28,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:39:28,597.597 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:39:28,750.750 INFO    ] No existing commands found in stream
[2026-10-28 01:39:33,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:39:33,775.775 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 01:39:36,112.112 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:39:36,115.115 INFO    ] Checking for system updates...
[2026-10-28 01:39:36,155.155 INFO    ] 200
[2026-10-28 01:39:36,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:39:36,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:39:36,218.218 INFO    ] No update needed
[2026-10-28 01:39:36,221.221 INFO    ] Checking for camera pi updates...
[2026-10-28 01:39:36,258.258 INFO    ] 200
[2026-10-28 01:39:36,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:39:36,304.304 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:39:36,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:39:36,391.391 INFO    ] No camera update needed
[2026-10-28 01:39:36,394.394 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:39:36,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:39:36,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:39:36,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:39:38,447.447 INFO    ] ================================================
[2026-10-28 01:39:38,462.462 INFO    ] Launching Daemon at Wed Oct 28 01:39:38 IST 2026
[2026-10-28 01:39:38,473.473 INFO    ] ================================================
[2026-10-28 01:39:39,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:39:39
[2026-10-28 01:39:39,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:39:39,985.985 INFO    ] Initializing speech engine...
[2026-10-28 01:39:39,993.993 INFO    ] 2026-10-28 01:39:39
[2026-10-28 01:39:40,278.278 INFO    ] 2026-10-28 01:39:40
[2026-10-28 01:39:40,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:39:40,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:39:40,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:39:40,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:39:40,823.823 INFO    ] time= 28/10/2026 01:39:40
[2026-10-28 01:39:40,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:39:40,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:39:40,988.988 INFO    ] No existing commands found in stream
[2026-10-28 01:39:46,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:39:46,022.022 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-28 01:39:49,410.410 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:39:49,413.413 INFO    ] Checking for system updates...
[2026-10-28 01:39:49,449.449 INFO    ] 200
[2026-10-28 01:39:49,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:39:49,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:39:49,508.508 INFO    ] No update needed
[2026-10-28 01:39:49,511.511 INFO    ] Checking for camera pi updates...
[2026-10-28 01:39:49,545.545 INFO    ] 200
[2026-10-28 01:39:49,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:39:49,590.590 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:39:49,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:39:49,679.679 INFO    ] No camera update needed
[2026-10-28 01:39:49,681.681 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:39:49,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:39:49,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:39:49,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:39:51,733.733 INFO    ] ================================================
[2026-10-28 01:39:51,749.749 INFO    ] Launching Daemon at Wed Oct 28 01:39:51 IST 2026
[2026-10-28 01:39:51,761.761 INFO    ] ================================================
[2026-10-28 01:39:52,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:39:52
[2026-10-28 01:39:52,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:39:53,184.184 INFO    ] Initializing speech engine...
[2026-10-28 01:39:53,194.194 INFO    ] 2026-10-28 01:39:53
[2026-10-28 01:39:53,443.443 INFO    ] 2026-10-28 01:39:53
[2026-10-28 01:39:53,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:39:53,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:39:53,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:39:53,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:39:54,010.010 INFO    ] time= 28/10/2026 01:39:53
[2026-10-28 01:39:54,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:39:54,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:39:54,170.170 INFO    ] No existing commands found in stream
[2026-10-28 01:39:59,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:39:59,192.192 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 01:40:03,526.526 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:40:03,532.532 INFO    ] Checking for system updates...
[2026-10-28 01:40:03,578.578 INFO    ] 200
[2026-10-28 01:40:03,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:40:03,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:40:03,642.642 INFO    ] No update needed
[2026-10-28 01:40:03,645.645 INFO    ] Checking for camera pi updates...
[2026-10-28 01:40:03,688.688 INFO    ] 200
[2026-10-28 01:40:03,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:40:03,738.738 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:40:03,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:40:03,823.823 INFO    ] No camera update needed
[2026-10-28 01:40:03,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:40:03,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:40:03,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:40:03,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:40:05,883.883 INFO    ] ================================================
[2026-10-28 01:40:05,899.899 INFO    ] Launching Daemon at Wed Oct 28 01:40:05 IST 2026
[2026-10-28 01:40:05,910.910 INFO    ] ================================================
[2026-10-28 01:40:06,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:40:06
[2026-10-28 01:40:07,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:40:07,369.369 INFO    ] Initializing speech engine...
[2026-10-28 01:40:07,377.377 INFO    ] 2026-10-28 01:40:07
[2026-10-28 01:40:07,636.636 INFO    ] 2026-10-28 01:40:07
[2026-10-28 01:40:07,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:40:07,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:40:07,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:40:08,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:40:08,178.178 INFO    ] time= 28/10/2026 01:40:08
[2026-10-28 01:40:08,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:40:08,199.199 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:40:08,331.331 INFO    ] No existing commands found in stream
[2026-10-28 01:40:13,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:40:13,349.349 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-28 01:40:15,830.830 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:40:15,833.833 INFO    ] Checking for system updates...
[2026-10-28 01:40:15,872.872 INFO    ] 200
[2026-10-28 01:40:15,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:40:15,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:40:15,938.938 INFO    ] No update needed
[2026-10-28 01:40:15,941.941 INFO    ] Checking for camera pi updates...
[2026-10-28 01:40:15,978.978 INFO    ] 200
[2026-10-28 01:40:15,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:40:16,022.022 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:40:16,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:40:16,209.209 INFO    ] No camera update needed
[2026-10-28 01:40:16,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:40:16,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:40:16,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:40:16,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:40:18,272.272 INFO    ] ================================================
[2026-10-28 01:40:18,287.287 INFO    ] Launching Daemon at Wed Oct 28 01:40:18 IST 2026
[2026-10-28 01:40:18,298.298 INFO    ] ================================================
[2026-10-28 01:40:18,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:40:18
[2026-10-28 01:40:19,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:40:19,935.935 INFO    ] Initializing speech engine...
[2026-10-28 01:40:19,944.944 INFO    ] 2026-10-28 01:40:19
[2026-10-28 01:40:20,227.227 INFO    ] 2026-10-28 01:40:20
[2026-10-28 01:40:20,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:40:20,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:40:20,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:40:20,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:40:20,797.797 INFO    ] time= 28/10/2026 01:40:20
[2026-10-28 01:40:20,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:40:20,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:40:20,979.979 INFO    ] No existing commands found in stream
[2026-10-28 01:40:26,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:40:26,014.014 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 01:40:28,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:40:28,516.516 INFO    ] Checking for system updates...
[2026-10-28 01:40:28,557.557 INFO    ] 200
[2026-10-28 01:40:28,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:40:28,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:40:28,628.628 INFO    ] No update needed
[2026-10-28 01:40:28,631.631 INFO    ] Checking for camera pi updates...
[2026-10-28 01:40:28,669.669 INFO    ] 200
[2026-10-28 01:40:28,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:40:28,713.713 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:40:28,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:40:28,815.815 INFO    ] No camera update needed
[2026-10-28 01:40:28,817.817 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:40:28,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:40:28,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:40:28,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:40:30,875.875 INFO    ] ================================================
[2026-10-28 01:40:30,891.891 INFO    ] Launching Daemon at Wed Oct 28 01:40:30 IST 2026
[2026-10-28 01:40:30,902.902 INFO    ] ================================================
[2026-10-28 01:40:31,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:40:31
[2026-10-28 01:40:32,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:40:32,622.622 INFO    ] Initializing speech engine...
[2026-10-28 01:40:32,638.638 INFO    ] 2026-10-28 01:40:32
[2026-10-28 01:40:32,952.952 INFO    ] 2026-10-28 01:40:32
[2026-10-28 01:40:32,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:40:33,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:40:33,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:40:33,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:40:33,530.530 INFO    ] time= 28/10/2026 01:40:33
[2026-10-28 01:40:33,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:40:33,556.556 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:40:33,689.689 INFO    ] No existing commands found in stream
[2026-10-28 01:40:38,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:40:38,713.713 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-28 01:40:41,392.392 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:40:41,395.395 INFO    ] Checking for system updates...
[2026-10-28 01:40:41,436.436 INFO    ] 200
[2026-10-28 01:40:41,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:40:41,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:40:41,496.496 INFO    ] No update needed
[2026-10-28 01:40:41,499.499 INFO    ] Checking for camera pi updates...
[2026-10-28 01:40:41,537.537 INFO    ] 200
[2026-10-28 01:40:41,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:40:41,586.586 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:40:41,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:40:41,672.672 INFO    ] No camera update needed
[2026-10-28 01:40:41,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:40:41,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:40:41,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:40:41,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:40:43,731.731 INFO    ] ================================================
[2026-10-28 01:40:43,746.746 INFO    ] Launching Daemon at Wed Oct 28 01:40:43 IST 2026
[2026-10-28 01:40:43,757.757 INFO    ] ================================================
[2026-10-28 01:40:44,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:40:44
[2026-10-28 01:40:44,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:40:45,155.155 INFO    ] Initializing speech engine...
[2026-10-28 01:40:45,160.160 INFO    ] 2026-10-28 01:40:45
[2026-10-28 01:40:45,437.437 INFO    ] 2026-10-28 01:40:45
[2026-10-28 01:40:45,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:40:45,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:40:45,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:40:45,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:40:46,002.002 INFO    ] time= 28/10/2026 01:40:45
[2026-10-28 01:40:46,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:40:46,023.023 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:40:46,148.148 INFO    ] No existing commands found in stream
[2026-10-28 01:40:51,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:40:51,172.172 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 01:40:55,513.513 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:40:55,516.516 INFO    ] Checking for system updates...
[2026-10-28 01:40:55,553.553 INFO    ] 200
[2026-10-28 01:40:55,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:40:55,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:40:55,617.617 INFO    ] No update needed
[2026-10-28 01:40:55,619.619 INFO    ] Checking for camera pi updates...
[2026-10-28 01:40:55,653.653 INFO    ] 200
[2026-10-28 01:40:55,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:40:55,695.695 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:40:55,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:40:55,776.776 INFO    ] No camera update needed
[2026-10-28 01:40:55,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:40:55,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:40:55,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:40:55,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:40:57,834.834 INFO    ] ================================================
[2026-10-28 01:40:57,849.849 INFO    ] Launching Daemon at Wed Oct 28 01:40:57 IST 2026
[2026-10-28 01:40:57,860.860 INFO    ] ================================================
[2026-10-28 01:40:58,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:40:58
[2026-10-28 01:40:59,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:40:59,508.508 INFO    ] Initializing speech engine...
[2026-10-28 01:40:59,513.513 INFO    ] 2026-10-28 01:40:59
[2026-10-28 01:40:59,801.801 INFO    ] 2026-10-28 01:40:59
[2026-10-28 01:40:59,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:41:00,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:41:00,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:41:00,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:41:00,383.383 INFO    ] time= 28/10/2026 01:41:00
[2026-10-28 01:41:00,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:41:00,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:41:00,581.581 INFO    ] No existing commands found in stream
[2026-10-28 01:41:05,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:41:05,602.602 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 01:41:06,313.313 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:41:06,317.317 INFO    ] Checking for system updates...
[2026-10-28 01:41:06,354.354 INFO    ] 200
[2026-10-28 01:41:06,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:41:06,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:41:06,411.411 INFO    ] No update needed
[2026-10-28 01:41:06,414.414 INFO    ] Checking for camera pi updates...
[2026-10-28 01:41:06,448.448 INFO    ] 200
[2026-10-28 01:41:06,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:41:06,496.496 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:41:06,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:41:06,567.567 INFO    ] No camera update needed
[2026-10-28 01:41:06,569.569 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:41:06,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:41:06,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:41:06,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:41:08,622.622 INFO    ] ================================================
[2026-10-28 01:41:08,637.637 INFO    ] Launching Daemon at Wed Oct 28 01:41:08 IST 2026
[2026-10-28 01:41:08,647.647 INFO    ] ================================================
[2026-10-28 01:41:09,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:41:09
[2026-10-28 01:41:09,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:41:10,078.078 INFO    ] Initializing speech engine...
[2026-10-28 01:41:10,092.092 INFO    ] 2026-10-28 01:41:10
[2026-10-28 01:41:10,379.379 INFO    ] 2026-10-28 01:41:10
[2026-10-28 01:41:10,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:41:10,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:41:10,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:41:10,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:41:10,895.895 INFO    ] time= 28/10/2026 01:41:10
[2026-10-28 01:41:10,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:41:10,999.999 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:41:11,083.083 INFO    ] No existing commands found in stream
[2026-10-28 01:41:16,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:41:16,098.098 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 01:41:17,536.536 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:41:17,539.539 INFO    ] Checking for system updates...
[2026-10-28 01:41:17,575.575 INFO    ] 200
[2026-10-28 01:41:17,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:41:17,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:41:17,632.632 INFO    ] No update needed
[2026-10-28 01:41:17,635.635 INFO    ] Checking for camera pi updates...
[2026-10-28 01:41:17,669.669 INFO    ] 200
[2026-10-28 01:41:17,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:41:17,718.718 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:41:17,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:41:17,824.824 INFO    ] No camera update needed
[2026-10-28 01:41:17,827.827 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:41:17,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:41:17,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:41:17,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:41:19,880.880 INFO    ] ================================================
[2026-10-28 01:41:19,895.895 INFO    ] Launching Daemon at Wed Oct 28 01:41:19 IST 2026
[2026-10-28 01:41:19,905.905 INFO    ] ================================================
[2026-10-28 01:41:20,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:41:20
[2026-10-28 01:41:21,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:41:21,341.341 INFO    ] Initializing speech engine...
[2026-10-28 01:41:21,350.350 INFO    ] 2026-10-28 01:41:21
[2026-10-28 01:41:21,603.603 INFO    ] 2026-10-28 01:41:21
[2026-10-28 01:41:21,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:41:21,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:41:21,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:41:22,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:41:22,171.171 INFO    ] time= 28/10/2026 01:41:22
[2026-10-28 01:41:22,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:41:22,194.194 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:41:22,330.330 INFO    ] No existing commands found in stream
[2026-10-28 01:41:27,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:41:27,357.357 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-28 01:41:28,533.533 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:41:28,536.536 INFO    ] Checking for system updates...
[2026-10-28 01:41:28,576.576 INFO    ] 200
[2026-10-28 01:41:28,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:41:28,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:41:28,633.633 INFO    ] No update needed
[2026-10-28 01:41:28,635.635 INFO    ] Checking for camera pi updates...
[2026-10-28 01:41:28,673.673 INFO    ] 200
[2026-10-28 01:41:28,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:41:28,715.715 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:41:28,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:41:28,785.785 INFO    ] No camera update needed
[2026-10-28 01:41:28,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:41:28,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:41:28,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:41:28,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:41:30,843.843 INFO    ] ================================================
[2026-10-28 01:41:30,857.857 INFO    ] Launching Daemon at Wed Oct 28 01:41:30 IST 2026
[2026-10-28 01:41:30,868.868 INFO    ] ================================================
[2026-10-28 01:41:31,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:41:31
[2026-10-28 01:41:32,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:41:32,463.463 INFO    ] Initializing speech engine...
[2026-10-28 01:41:32,485.485 INFO    ] 2026-10-28 01:41:32
[2026-10-28 01:41:32,738.738 INFO    ] 2026-10-28 01:41:32
[2026-10-28 01:41:32,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:41:33,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:41:33,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:41:33,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:41:33,310.310 INFO    ] time= 28/10/2026 01:41:33
[2026-10-28 01:41:33,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:41:33,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:41:33,446.446 INFO    ] No existing commands found in stream
[2026-10-28 01:41:38,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:41:38,471.471 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 01:41:42,272.272 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:41:42,274.274 INFO    ] Checking for system updates...
[2026-10-28 01:41:42,314.314 INFO    ] 200
[2026-10-28 01:41:42,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:41:42,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:41:42,373.373 INFO    ] No update needed
[2026-10-28 01:41:42,375.375 INFO    ] Checking for camera pi updates...
[2026-10-28 01:41:42,414.414 INFO    ] 200
[2026-10-28 01:41:42,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:41:42,462.462 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:41:42,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:41:42,548.548 INFO    ] No camera update needed
[2026-10-28 01:41:42,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:41:42,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:41:42,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:41:42,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:41:44,605.605 INFO    ] ================================================
[2026-10-28 01:41:44,620.620 INFO    ] Launching Daemon at Wed Oct 28 01:41:44 IST 2026
[2026-10-28 01:41:44,631.631 INFO    ] ================================================
[2026-10-28 01:41:45,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:41:45
[2026-10-28 01:41:45,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:41:46,062.062 INFO    ] Initializing speech engine...
[2026-10-28 01:41:46,067.067 INFO    ] 2026-10-28 01:41:46
[2026-10-28 01:41:46,317.317 INFO    ] 2026-10-28 01:41:46
[2026-10-28 01:41:46,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:41:46,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:41:46,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:41:46,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:41:46,885.885 INFO    ] time= 28/10/2026 01:41:46
[2026-10-28 01:41:46,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:41:46,908.908 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:41:47,039.039 INFO    ] No existing commands found in stream
[2026-10-28 01:41:52,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:41:52,057.057 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-28 01:41:56,314.314 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:41:56,317.317 INFO    ] Checking for system updates...
[2026-10-28 01:41:56,352.352 INFO    ] 200
[2026-10-28 01:41:56,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:41:56,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:41:56,409.409 INFO    ] No update needed
[2026-10-28 01:41:56,412.412 INFO    ] Checking for camera pi updates...
[2026-10-28 01:41:56,445.445 INFO    ] 200
[2026-10-28 01:41:56,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:41:56,499.499 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:41:56,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:41:56,582.582 INFO    ] No camera update needed
[2026-10-28 01:41:56,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:41:56,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:41:56,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:41:56,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:41:58,639.639 INFO    ] ================================================
[2026-10-28 01:41:58,654.654 INFO    ] Launching Daemon at Wed Oct 28 01:41:58 IST 2026
[2026-10-28 01:41:58,664.664 INFO    ] ================================================
[2026-10-28 01:41:59,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:41:59
[2026-10-28 01:41:59,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:42:00,121.121 INFO    ] Initializing speech engine...
[2026-10-28 01:42:00,128.128 INFO    ] 2026-10-28 01:42:00
[2026-10-28 01:42:00,389.389 INFO    ] 2026-10-28 01:42:00
[2026-10-28 01:42:00,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:42:00,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:42:00,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:42:00,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:42:00,922.922 INFO    ] time= 28/10/2026 01:42:00
[2026-10-28 01:42:00,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:42:00,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:42:01,104.104 INFO    ] No existing commands found in stream
[2026-10-28 01:42:06,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:42:06,132.132 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 01:42:07,419.419 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:42:07,421.421 INFO    ] Checking for system updates...
[2026-10-28 01:42:07,457.457 INFO    ] 200
[2026-10-28 01:42:07,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:42:07,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:42:07,521.521 INFO    ] No update needed
[2026-10-28 01:42:07,523.523 INFO    ] Checking for camera pi updates...
[2026-10-28 01:42:07,556.556 INFO    ] 200
[2026-10-28 01:42:07,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:42:07,599.599 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:42:07,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:42:07,687.687 INFO    ] No camera update needed
[2026-10-28 01:42:07,690.690 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:42:07,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:42:07,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:42:07,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:42:09,745.745 INFO    ] ================================================
[2026-10-28 01:42:09,760.760 INFO    ] Launching Daemon at Wed Oct 28 01:42:09 IST 2026
[2026-10-28 01:42:09,771.771 INFO    ] ================================================
[2026-10-28 01:42:10,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:42:10
[2026-10-28 01:42:10,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:42:11,289.289 INFO    ] Initializing speech engine...
[2026-10-28 01:42:11,297.297 INFO    ] 2026-10-28 01:42:11
[2026-10-28 01:42:11,576.576 INFO    ] 2026-10-28 01:42:11
[2026-10-28 01:42:11,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:42:11,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:42:11,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:42:12,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:42:12,158.158 INFO    ] time= 28/10/2026 01:42:12
[2026-10-28 01:42:12,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:42:12,194.194 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:42:12,333.333 INFO    ] No existing commands found in stream
[2026-10-28 01:42:17,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:42:17,362.362 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-28 01:42:19,737.737 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:42:19,740.740 INFO    ] Checking for system updates...
[2026-10-28 01:42:19,777.777 INFO    ] 200
[2026-10-28 01:42:19,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:42:19,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:42:19,836.836 INFO    ] No update needed
[2026-10-28 01:42:19,838.838 INFO    ] Checking for camera pi updates...
[2026-10-28 01:42:19,871.871 INFO    ] 200
[2026-10-28 01:42:19,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:42:19,919.919 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:42:20,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:42:20,087.087 INFO    ] No camera update needed
[2026-10-28 01:42:20,089.089 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:42:20,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:42:20,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:42:20,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:42:22,143.143 INFO    ] ================================================
[2026-10-28 01:42:22,159.159 INFO    ] Launching Daemon at Wed Oct 28 01:42:22 IST 2026
[2026-10-28 01:42:22,169.169 INFO    ] ================================================
[2026-10-28 01:42:22,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:42:22
[2026-10-28 01:42:23,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:42:23,620.620 INFO    ] Initializing speech engine...
[2026-10-28 01:42:23,632.632 INFO    ] 2026-10-28 01:42:23
[2026-10-28 01:42:23,903.903 INFO    ] 2026-10-28 01:42:23
[2026-10-28 01:42:23,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:42:24,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:42:24,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:42:24,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:42:24,486.486 INFO    ] time= 28/10/2026 01:42:24
[2026-10-28 01:42:24,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:42:24,510.510 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:42:24,639.639 INFO    ] No existing commands found in stream
[2026-10-28 01:42:29,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:42:29,655.655 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 01:42:31,092.092 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:42:31,095.095 INFO    ] Checking for system updates...
[2026-10-28 01:42:31,130.130 INFO    ] 200
[2026-10-28 01:42:31,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:42:31,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:42:31,195.195 INFO    ] No update needed
[2026-10-28 01:42:31,197.197 INFO    ] Checking for camera pi updates...
[2026-10-28 01:42:31,235.235 INFO    ] 200
[2026-10-28 01:42:31,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:42:31,283.283 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:42:31,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:42:31,368.368 INFO    ] No camera update needed
[2026-10-28 01:42:31,371.371 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:42:31,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:42:31,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:42:31,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:42:33,434.434 INFO    ] ================================================
[2026-10-28 01:42:33,449.449 INFO    ] Launching Daemon at Wed Oct 28 01:42:33 IST 2026
[2026-10-28 01:42:33,460.460 INFO    ] ================================================
[2026-10-28 01:42:34,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:42:34
[2026-10-28 01:42:34,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:42:34,912.912 INFO    ] Initializing speech engine...
[2026-10-28 01:42:34,925.925 INFO    ] 2026-10-28 01:42:34
[2026-10-28 01:42:35,196.196 INFO    ] 2026-10-28 01:42:35
[2026-10-28 01:42:35,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:42:35,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:42:35,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:42:35,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:42:35,777.777 INFO    ] time= 28/10/2026 01:42:35
[2026-10-28 01:42:35,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:42:35,866.866 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:42:36,035.035 INFO    ] No existing commands found in stream
[2026-10-28 01:42:41,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:42:41,063.063 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 01:42:43,488.488 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:42:43,490.490 INFO    ] Checking for system updates...
[2026-10-28 01:42:43,525.525 INFO    ] 200
[2026-10-28 01:42:43,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:42:43,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:42:43,582.582 INFO    ] No update needed
[2026-10-28 01:42:43,584.584 INFO    ] Checking for camera pi updates...
[2026-10-28 01:42:43,622.622 INFO    ] 200
[2026-10-28 01:42:43,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:42:43,664.664 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:42:43,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:42:43,756.756 INFO    ] No camera update needed
[2026-10-28 01:42:43,758.758 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:42:43,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:42:43,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:42:43,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:42:45,811.811 INFO    ] ================================================
[2026-10-28 01:42:45,827.827 INFO    ] Launching Daemon at Wed Oct 28 01:42:45 IST 2026
[2026-10-28 01:42:45,837.837 INFO    ] ================================================
[2026-10-28 01:42:46,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:42:46
[2026-10-28 01:42:46,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:42:47,252.252 INFO    ] Initializing speech engine...
[2026-10-28 01:42:47,271.271 INFO    ] 2026-10-28 01:42:47
[2026-10-28 01:42:47,522.522 INFO    ] 2026-10-28 01:42:47
[2026-10-28 01:42:47,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:42:47,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:42:47,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:42:48,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:42:48,093.093 INFO    ] time= 28/10/2026 01:42:48
[2026-10-28 01:42:48,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:42:48,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:42:48,257.257 INFO    ] No existing commands found in stream
[2026-10-28 01:42:53,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:42:53,278.278 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 01:42:54,365.365 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:42:54,368.368 INFO    ] Checking for system updates...
[2026-10-28 01:42:54,403.403 INFO    ] 200
[2026-10-28 01:42:54,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:42:54,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:42:54,460.460 INFO    ] No update needed
[2026-10-28 01:42:54,462.462 INFO    ] Checking for camera pi updates...
[2026-10-28 01:42:54,496.496 INFO    ] 200
[2026-10-28 01:42:54,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:42:54,538.538 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:42:54,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:42:54,620.620 INFO    ] No camera update needed
[2026-10-28 01:42:54,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:42:54,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:42:54,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:42:54,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:42:56,676.676 INFO    ] ================================================
[2026-10-28 01:42:56,693.693 INFO    ] Launching Daemon at Wed Oct 28 01:42:56 IST 2026
[2026-10-28 01:42:56,704.704 INFO    ] ================================================
[2026-10-28 01:42:57,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:42:57
[2026-10-28 01:42:57,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:42:58,123.123 INFO    ] Initializing speech engine...
[2026-10-28 01:42:58,137.137 INFO    ] 2026-10-28 01:42:58
[2026-10-28 01:42:58,406.406 INFO    ] 2026-10-28 01:42:58
[2026-10-28 01:42:58,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:42:58,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:42:58,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:42:58,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:42:58,973.973 INFO    ] time= 28/10/2026 01:42:58
[2026-10-28 01:42:58,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:42:58,999.999 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:42:59,131.131 INFO    ] No existing commands found in stream
[2026-10-28 01:43:04,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:43:04,146.146 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 01:43:07,933.933 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:43:07,935.935 INFO    ] Checking for system updates...
[2026-10-28 01:43:07,976.976 INFO    ] 200
[2026-10-28 01:43:07,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:43:08,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:43:08,040.040 INFO    ] No update needed
[2026-10-28 01:43:08,043.043 INFO    ] Checking for camera pi updates...
[2026-10-28 01:43:08,081.081 INFO    ] 200
[2026-10-28 01:43:08,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:43:08,123.123 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:43:08,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:43:08,204.204 INFO    ] No camera update needed
[2026-10-28 01:43:08,206.206 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:43:08,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:43:08,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:43:08,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:43:10,264.264 INFO    ] ================================================
[2026-10-28 01:43:10,280.280 INFO    ] Launching Daemon at Wed Oct 28 01:43:10 IST 2026
[2026-10-28 01:43:10,291.291 INFO    ] ================================================
[2026-10-28 01:43:10,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:43:10
[2026-10-28 01:43:11,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:43:11,737.737 INFO    ] Initializing speech engine...
[2026-10-28 01:43:11,745.745 INFO    ] 2026-10-28 01:43:11
[2026-10-28 01:43:12,047.047 INFO    ] 2026-10-28 01:43:12
[2026-10-28 01:43:12,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:43:12,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:43:12,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:43:12,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:43:12,598.598 INFO    ] time= 28/10/2026 01:43:12
[2026-10-28 01:43:12,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:43:12,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:43:12,844.844 INFO    ] No existing commands found in stream
[2026-10-28 01:43:17,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:43:17,869.869 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-28 01:43:21,691.691 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:43:21,694.694 INFO    ] Checking for system updates...
[2026-10-28 01:43:21,729.729 INFO    ] 200
[2026-10-28 01:43:21,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:43:21,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:43:21,795.795 INFO    ] No update needed
[2026-10-28 01:43:21,797.797 INFO    ] Checking for camera pi updates...
[2026-10-28 01:43:21,831.831 INFO    ] 200
[2026-10-28 01:43:21,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:43:21,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:43:21,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:43:21,957.957 INFO    ] No camera update needed
[2026-10-28 01:43:21,959.959 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:43:21,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:43:21,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:43:21,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:43:24,013.013 INFO    ] ================================================
[2026-10-28 01:43:24,029.029 INFO    ] Launching Daemon at Wed Oct 28 01:43:24 IST 2026
[2026-10-28 01:43:24,040.040 INFO    ] ================================================
[2026-10-28 01:43:24,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:43:24
[2026-10-28 01:43:25,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:43:25,720.720 INFO    ] Initializing speech engine...
[2026-10-28 01:43:25,730.730 INFO    ] 2026-10-28 01:43:25
[2026-10-28 01:43:26,044.044 INFO    ] 2026-10-28 01:43:26
[2026-10-28 01:43:26,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:43:26,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:43:26,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:43:26,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:43:26,740.740 INFO    ] time= 28/10/2026 01:43:26
[2026-10-28 01:43:26,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:43:26,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:43:26,976.976 INFO    ] No existing commands found in stream
[2026-10-28 01:43:31,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:43:31,989.989 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-28 01:43:35,923.923 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:43:35,926.926 INFO    ] Checking for system updates...
[2026-10-28 01:43:35,964.964 INFO    ] 200
[2026-10-28 01:43:35,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:43:36,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:43:36,032.032 INFO    ] No update needed
[2026-10-28 01:43:36,036.036 INFO    ] Checking for camera pi updates...
[2026-10-28 01:43:36,076.076 INFO    ] 200
[2026-10-28 01:43:36,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:43:36,129.129 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:43:36,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:43:36,209.209 INFO    ] No camera update needed
[2026-10-28 01:43:36,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:43:36,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:43:36,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:43:36,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:43:38,264.264 INFO    ] ================================================
[2026-10-28 01:43:38,280.280 INFO    ] Launching Daemon at Wed Oct 28 01:43:38 IST 2026
[2026-10-28 01:43:38,292.292 INFO    ] ================================================
[2026-10-28 01:43:38,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:43:38
[2026-10-28 01:43:39,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:43:39,706.706 INFO    ] Initializing speech engine...
[2026-10-28 01:43:39,712.712 INFO    ] 2026-10-28 01:43:39
[2026-10-28 01:43:40,011.011 INFO    ] 2026-10-28 01:43:39
[2026-10-28 01:43:40,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:43:40,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:43:40,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:43:40,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:43:40,532.532 INFO    ] time= 28/10/2026 01:43:40
[2026-10-28 01:43:40,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:43:40,626.626 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:43:40,742.742 INFO    ] No existing commands found in stream
[2026-10-28 01:43:45,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:43:45,758.758 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-28 01:43:50,336.336 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:43:50,339.339 INFO    ] Checking for system updates...
[2026-10-28 01:43:50,377.377 INFO    ] 200
[2026-10-28 01:43:50,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:43:50,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:43:50,445.445 INFO    ] No update needed
[2026-10-28 01:43:50,449.449 INFO    ] Checking for camera pi updates...
[2026-10-28 01:43:50,488.488 INFO    ] 200
[2026-10-28 01:43:50,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:43:50,544.544 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:43:50,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:43:50,640.640 INFO    ] No camera update needed
[2026-10-28 01:43:50,644.644 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:43:50,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:43:50,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:43:50,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:43:52,702.702 INFO    ] ================================================
[2026-10-28 01:43:52,717.717 INFO    ] Launching Daemon at Wed Oct 28 01:43:52 IST 2026
[2026-10-28 01:43:52,728.728 INFO    ] ================================================
[2026-10-28 01:43:53,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:43:53
[2026-10-28 01:43:53,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:43:54,166.166 INFO    ] Initializing speech engine...
[2026-10-28 01:43:54,189.189 INFO    ] 2026-10-28 01:43:54
[2026-10-28 01:43:54,464.464 INFO    ] 2026-10-28 01:43:54
[2026-10-28 01:43:54,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:43:54,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:43:54,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:43:55,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:43:55,057.057 INFO    ] time= 28/10/2026 01:43:55
[2026-10-28 01:43:55,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:43:55,127.127 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:43:55,238.238 INFO    ] No existing commands found in stream
[2026-10-28 01:44:00,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:44:00,269.269 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-28 01:44:03,496.496 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:44:03,499.499 INFO    ] Checking for system updates...
[2026-10-28 01:44:03,539.539 INFO    ] 200
[2026-10-28 01:44:03,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:44:03,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:44:03,607.607 INFO    ] No update needed
[2026-10-28 01:44:03,610.610 INFO    ] Checking for camera pi updates...
[2026-10-28 01:44:03,647.647 INFO    ] 200
[2026-10-28 01:44:03,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:44:03,695.695 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:44:03,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:44:03,776.776 INFO    ] No camera update needed
[2026-10-28 01:44:03,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:44:03,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:44:03,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:44:03,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:44:05,832.832 INFO    ] ================================================
[2026-10-28 01:44:05,847.847 INFO    ] Launching Daemon at Wed Oct 28 01:44:05 IST 2026
[2026-10-28 01:44:05,858.858 INFO    ] ================================================
[2026-10-28 01:44:06,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:44:06
[2026-10-28 01:44:07,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:44:07,279.279 INFO    ] Initializing speech engine...
[2026-10-28 01:44:07,288.288 INFO    ] 2026-10-28 01:44:07
[2026-10-28 01:44:07,536.536 INFO    ] 2026-10-28 01:44:07
[2026-10-28 01:44:07,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:44:07,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:44:07,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:44:08,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:44:08,106.106 INFO    ] time= 28/10/2026 01:44:08
[2026-10-28 01:44:08,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:44:08,136.136 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:44:08,318.318 INFO    ] No existing commands found in stream
[2026-10-28 01:44:13,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:44:13,346.346 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-28 01:44:16,591.591 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:44:16,594.594 INFO    ] Checking for system updates...
[2026-10-28 01:44:16,630.630 INFO    ] 200
[2026-10-28 01:44:16,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:44:16,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:44:16,695.695 INFO    ] No update needed
[2026-10-28 01:44:16,697.697 INFO    ] Checking for camera pi updates...
[2026-10-28 01:44:16,735.735 INFO    ] 200
[2026-10-28 01:44:16,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:44:16,782.782 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:44:16,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:44:16,882.882 INFO    ] No camera update needed
[2026-10-28 01:44:16,884.884 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:44:16,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:44:16,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:44:16,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:44:18,938.938 INFO    ] ================================================
[2026-10-28 01:44:18,953.953 INFO    ] Launching Daemon at Wed Oct 28 01:44:18 IST 2026
[2026-10-28 01:44:18,964.964 INFO    ] ================================================
[2026-10-28 01:44:19,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:44:19
[2026-10-28 01:44:20,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:44:20,415.415 INFO    ] Initializing speech engine...
[2026-10-28 01:44:20,426.426 INFO    ] 2026-10-28 01:44:20
[2026-10-28 01:44:20,685.685 INFO    ] 2026-10-28 01:44:20
[2026-10-28 01:44:20,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:44:20,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:44:20,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:44:21,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:44:21,229.229 INFO    ] time= 28/10/2026 01:44:21
[2026-10-28 01:44:21,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:44:21,256.256 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:44:21,383.383 INFO    ] No existing commands found in stream
[2026-10-28 01:44:26,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:44:26,398.398 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-28 01:44:28,512.512 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:44:28,514.514 INFO    ] Checking for system updates...
[2026-10-28 01:44:28,552.552 INFO    ] 200
[2026-10-28 01:44:28,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:44:28,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:44:28,617.617 INFO    ] No update needed
[2026-10-28 01:44:28,619.619 INFO    ] Checking for camera pi updates...
[2026-10-28 01:44:28,653.653 INFO    ] 200
[2026-10-28 01:44:28,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:44:28,696.696 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:44:28,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:44:28,875.875 INFO    ] No camera update needed
[2026-10-28 01:44:28,878.878 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:44:28,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:44:28,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:44:28,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:44:30,932.932 INFO    ] ================================================
[2026-10-28 01:44:30,947.947 INFO    ] Launching Daemon at Wed Oct 28 01:44:30 IST 2026
[2026-10-28 01:44:30,957.957 INFO    ] ================================================
[2026-10-28 01:44:31,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:44:31
[2026-10-28 01:44:32,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:44:32,419.419 INFO    ] Initializing speech engine...
[2026-10-28 01:44:32,435.435 INFO    ] 2026-10-28 01:44:32
[2026-10-28 01:44:32,716.716 INFO    ] 2026-10-28 01:44:32
[2026-10-28 01:44:32,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:44:32,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:44:33,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:44:33,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:44:33,276.276 INFO    ] time= 28/10/2026 01:44:33
[2026-10-28 01:44:33,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:44:33,342.342 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:44:33,489.489 INFO    ] No existing commands found in stream
[2026-10-28 01:44:38,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:44:38,508.508 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 01:44:40,795.795 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:44:40,798.798 INFO    ] Checking for system updates...
[2026-10-28 01:44:40,835.835 INFO    ] 200
[2026-10-28 01:44:40,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:44:40,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:44:40,902.902 INFO    ] No update needed
[2026-10-28 01:44:40,904.904 INFO    ] Checking for camera pi updates...
[2026-10-28 01:44:40,937.937 INFO    ] 200
[2026-10-28 01:44:40,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:44:40,980.980 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:44:41,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:44:41,072.072 INFO    ] No camera update needed
[2026-10-28 01:44:41,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:44:41,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:44:41,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:44:41,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:44:43,126.126 INFO    ] ================================================
[2026-10-28 01:44:43,141.141 INFO    ] Launching Daemon at Wed Oct 28 01:44:43 IST 2026
[2026-10-28 01:44:43,152.152 INFO    ] ================================================
[2026-10-28 01:44:43,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:44:43
[2026-10-28 01:44:44,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:44:44,828.828 INFO    ] Initializing speech engine...
[2026-10-28 01:44:44,834.834 INFO    ] 2026-10-28 01:44:44
[2026-10-28 01:44:45,127.127 INFO    ] 2026-10-28 01:44:45
[2026-10-28 01:44:45,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:44:45,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:44:45,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:44:45,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:44:45,847.847 INFO    ] time= 28/10/2026 01:44:45
[2026-10-28 01:44:45,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:44:45,946.946 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:44:46,120.120 INFO    ] No existing commands found in stream
[2026-10-28 01:44:51,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:44:51,130.130 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-28 01:44:52,776.776 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:44:52,779.779 INFO    ] Checking for system updates...
[2026-10-28 01:44:52,815.815 INFO    ] 200
[2026-10-28 01:44:52,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:44:52,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:44:52,873.873 INFO    ] No update needed
[2026-10-28 01:44:52,875.875 INFO    ] Checking for camera pi updates...
[2026-10-28 01:44:52,912.912 INFO    ] 200
[2026-10-28 01:44:52,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:44:52,960.960 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:44:53,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:44:53,035.035 INFO    ] No camera update needed
[2026-10-28 01:44:53,037.037 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:44:53,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:44:53,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:44:53,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:44:55,090.090 INFO    ] ================================================
[2026-10-28 01:44:55,105.105 INFO    ] Launching Daemon at Wed Oct 28 01:44:55 IST 2026
[2026-10-28 01:44:55,116.116 INFO    ] ================================================
[2026-10-28 01:44:55,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:44:55
[2026-10-28 01:44:56,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:44:56,561.561 INFO    ] Initializing speech engine...
[2026-10-28 01:44:56,568.568 INFO    ] 2026-10-28 01:44:56
[2026-10-28 01:44:56,872.872 INFO    ] 2026-10-28 01:44:56
[2026-10-28 01:44:56,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:44:57,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:44:57,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:44:57,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:44:57,354.354 INFO    ] time= 28/10/2026 01:44:57
[2026-10-28 01:44:57,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:44:57,441.441 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:44:57,591.591 INFO    ] No existing commands found in stream
[2026-10-28 01:45:02,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:45:02,611.611 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-28 01:45:06,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:45:06,614.614 INFO    ] Checking for system updates...
[2026-10-28 01:45:06,649.649 INFO    ] 200
[2026-10-28 01:45:06,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:45:06,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:45:06,706.706 INFO    ] No update needed
[2026-10-28 01:45:06,708.708 INFO    ] Checking for camera pi updates...
[2026-10-28 01:45:06,742.742 INFO    ] 200
[2026-10-28 01:45:06,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:45:06,789.789 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:45:06,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:45:06,887.887 INFO    ] No camera update needed
[2026-10-28 01:45:06,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:45:06,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:45:06,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:45:06,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:45:08,947.947 INFO    ] ================================================
[2026-10-28 01:45:08,963.963 INFO    ] Launching Daemon at Wed Oct 28 01:45:08 IST 2026
[2026-10-28 01:45:08,974.974 INFO    ] ================================================
[2026-10-28 01:45:09,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:45:09
[2026-10-28 01:45:10,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:45:10,422.422 INFO    ] Initializing speech engine...
[2026-10-28 01:45:10,429.429 INFO    ] 2026-10-28 01:45:10
[2026-10-28 01:45:10,696.696 INFO    ] 2026-10-28 01:45:10
[2026-10-28 01:45:10,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:45:10,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:45:10,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:45:11,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:45:11,182.182 INFO    ] time= 28/10/2026 01:45:11
[2026-10-28 01:45:11,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:45:11,271.271 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:45:11,394.394 INFO    ] No existing commands found in stream
[2026-10-28 01:45:16,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:45:16,413.413 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-28 01:45:18,675.675 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:45:18,678.678 INFO    ] Checking for system updates...
[2026-10-28 01:45:18,713.713 INFO    ] 200
[2026-10-28 01:45:18,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:45:18,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:45:18,777.777 INFO    ] No update needed
[2026-10-28 01:45:18,779.779 INFO    ] Checking for camera pi updates...
[2026-10-28 01:45:18,812.812 INFO    ] 200
[2026-10-28 01:45:18,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:45:18,856.856 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:45:18,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:45:18,954.954 INFO    ] No camera update needed
[2026-10-28 01:45:18,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:45:18,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:45:18,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:45:18,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:45:21,009.009 INFO    ] ================================================
[2026-10-28 01:45:21,024.024 INFO    ] Launching Daemon at Wed Oct 28 01:45:21 IST 2026
[2026-10-28 01:45:21,035.035 INFO    ] ================================================
[2026-10-28 01:45:21,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:45:21
[2026-10-28 01:45:22,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:45:22,462.462 INFO    ] Initializing speech engine...
[2026-10-28 01:45:22,477.477 INFO    ] 2026-10-28 01:45:22
[2026-10-28 01:45:22,749.749 INFO    ] 2026-10-28 01:45:22
[2026-10-28 01:45:22,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:45:23,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:45:23,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:45:23,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:45:23,385.385 INFO    ] time= 28/10/2026 01:45:23
[2026-10-28 01:45:23,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:45:23,409.409 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:45:23,537.537 INFO    ] No existing commands found in stream
[2026-10-28 01:45:28,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:45:28,570.570 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 01:45:32,884.884 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:45:32,887.887 INFO    ] Checking for system updates...
[2026-10-28 01:45:32,930.930 INFO    ] 200
[2026-10-28 01:45:32,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:45:32,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:45:33,000.000 INFO    ] No update needed
[2026-10-28 01:45:33,003.003 INFO    ] Checking for camera pi updates...
[2026-10-28 01:45:33,039.039 INFO    ] 200
[2026-10-28 01:45:33,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:45:33,093.093 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:45:33,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:45:33,218.218 INFO    ] No camera update needed
[2026-10-28 01:45:33,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:45:33,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:45:33,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:45:33,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:45:35,275.275 INFO    ] ================================================
[2026-10-28 01:45:35,290.290 INFO    ] Launching Daemon at Wed Oct 28 01:45:35 IST 2026
[2026-10-28 01:45:35,301.301 INFO    ] ================================================
[2026-10-28 01:45:35,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:45:35
[2026-10-28 01:45:36,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:45:36,751.751 INFO    ] Initializing speech engine...
[2026-10-28 01:45:36,758.758 INFO    ] 2026-10-28 01:45:36
[2026-10-28 01:45:37,056.056 INFO    ] 2026-10-28 01:45:37
[2026-10-28 01:45:37,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:45:37,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:45:37,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:45:37,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:45:37,666.666 INFO    ] time= 28/10/2026 01:45:37
[2026-10-28 01:45:37,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:45:37,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:45:37,840.840 INFO    ] No existing commands found in stream
[2026-10-28 01:45:42,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:45:42,868.868 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-28 01:45:47,096.096 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:45:47,098.098 INFO    ] Checking for system updates...
[2026-10-28 01:45:47,133.133 INFO    ] 200
[2026-10-28 01:45:47,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:45:47,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:45:47,191.191 INFO    ] No update needed
[2026-10-28 01:45:47,193.193 INFO    ] Checking for camera pi updates...
[2026-10-28 01:45:47,226.226 INFO    ] 200
[2026-10-28 01:45:47,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:45:47,269.269 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:45:47,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:45:47,345.345 INFO    ] No camera update needed
[2026-10-28 01:45:47,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:45:47,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:45:47,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:45:47,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:45:49,401.401 INFO    ] ================================================
[2026-10-28 01:45:49,417.417 INFO    ] Launching Daemon at Wed Oct 28 01:45:49 IST 2026
[2026-10-28 01:45:49,429.429 INFO    ] ================================================
[2026-10-28 01:45:49,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:45:49
[2026-10-28 01:45:50,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:45:50,850.850 INFO    ] Initializing speech engine...
[2026-10-28 01:45:50,862.862 INFO    ] 2026-10-28 01:45:50
[2026-10-28 01:45:51,113.113 INFO    ] 2026-10-28 01:45:51
[2026-10-28 01:45:51,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:45:51,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:45:51,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:45:51,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:45:51,603.603 INFO    ] time= 28/10/2026 01:45:51
[2026-10-28 01:45:51,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:45:51,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:45:51,840.840 INFO    ] No existing commands found in stream
[2026-10-28 01:45:56,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:45:56,855.855 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-28 01:46:00,216.216 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:46:00,219.219 INFO    ] Checking for system updates...
[2026-10-28 01:46:00,258.258 INFO    ] 200
[2026-10-28 01:46:00,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:46:00,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:46:00,314.314 INFO    ] No update needed
[2026-10-28 01:46:00,317.317 INFO    ] Checking for camera pi updates...
[2026-10-28 01:46:00,355.355 INFO    ] 200
[2026-10-28 01:46:00,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:46:00,397.397 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:46:00,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:46:00,502.502 INFO    ] No camera update needed
[2026-10-28 01:46:00,504.504 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:46:00,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:46:00,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:46:00,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:46:02,569.569 INFO    ] ================================================
[2026-10-28 01:46:02,596.596 INFO    ] Launching Daemon at Wed Oct 28 01:46:02 IST 2026
[2026-10-28 01:46:02,614.614 INFO    ] ================================================
[2026-10-28 01:46:03,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:46:03
[2026-10-28 01:46:03,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:46:04,081.081 INFO    ] Initializing speech engine...
[2026-10-28 01:46:04,104.104 INFO    ] 2026-10-28 01:46:04
[2026-10-28 01:46:04,361.361 INFO    ] 2026-10-28 01:46:04
[2026-10-28 01:46:04,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:46:04,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:46:04,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:46:04,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:46:04,928.928 INFO    ] time= 28/10/2026 01:46:04
[2026-10-28 01:46:04,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:46:04,954.954 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:46:05,083.083 INFO    ] No existing commands found in stream
[2026-10-28 01:46:10,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:46:10,099.099 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-28 01:46:12,656.656 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:46:12,659.659 INFO    ] Checking for system updates...
[2026-10-28 01:46:12,701.701 INFO    ] 200
[2026-10-28 01:46:12,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:46:12,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:46:12,758.758 INFO    ] No update needed
[2026-10-28 01:46:12,760.760 INFO    ] Checking for camera pi updates...
[2026-10-28 01:46:12,799.799 INFO    ] 200
[2026-10-28 01:46:12,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:46:12,842.842 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:46:12,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:46:12,926.926 INFO    ] No camera update needed
[2026-10-28 01:46:12,928.928 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:46:12,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:46:12,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:46:12,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:46:14,980.980 INFO    ] ================================================
[2026-10-28 01:46:15,996.996 INFO    ] Launching Daemon at Wed Oct 28 01:46:14 IST 2026
[2026-10-28 01:46:15,007.007 INFO    ] ================================================
[2026-10-28 01:46:15,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:46:15
[2026-10-28 01:46:16,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:46:16,702.702 INFO    ] Initializing speech engine...
[2026-10-28 01:46:16,705.705 INFO    ] 2026-10-28 01:46:16
[2026-10-28 01:46:16,987.987 INFO    ] 2026-10-28 01:46:16
[2026-10-28 01:46:17,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:46:17,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:46:17,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:46:17,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:46:17,428.428 INFO    ] time= 28/10/2026 01:46:17
[2026-10-28 01:46:17,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:46:17,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:46:17,612.612 INFO    ] No existing commands found in stream
[2026-10-28 01:46:22,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:46:22,640.640 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-28 01:46:26,572.572 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:46:26,575.575 INFO    ] Checking for system updates...
[2026-10-28 01:46:26,616.616 INFO    ] 200
[2026-10-28 01:46:26,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:46:26,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:46:26,682.682 INFO    ] No update needed
[2026-10-28 01:46:26,684.684 INFO    ] Checking for camera pi updates...
[2026-10-28 01:46:26,721.721 INFO    ] 200
[2026-10-28 01:46:26,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:46:26,785.785 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:46:26,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:46:26,869.869 INFO    ] No camera update needed
[2026-10-28 01:46:26,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:46:26,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:46:26,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:46:26,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:46:28,924.924 INFO    ] ================================================
[2026-10-28 01:46:28,940.940 INFO    ] Launching Daemon at Wed Oct 28 01:46:28 IST 2026
[2026-10-28 01:46:28,950.950 INFO    ] ================================================
[2026-10-28 01:46:29,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:46:29
[2026-10-28 01:46:30,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:46:30,357.357 INFO    ] Initializing speech engine...
[2026-10-28 01:46:30,380.380 INFO    ] 2026-10-28 01:46:30
[2026-10-28 01:46:30,635.635 INFO    ] 2026-10-28 01:46:30
[2026-10-28 01:46:30,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:46:30,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:46:30,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:46:31,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:46:31,217.217 INFO    ] time= 28/10/2026 01:46:31
[2026-10-28 01:46:31,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:46:31,253.253 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:46:31,381.381 INFO    ] No existing commands found in stream
[2026-10-28 01:46:36,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:46:36,416.416 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 01:46:39,012.012 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:46:39,015.015 INFO    ] Checking for system updates...
[2026-10-28 01:46:39,050.050 INFO    ] 200
[2026-10-28 01:46:39,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:46:39,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:46:39,115.115 INFO    ] No update needed
[2026-10-28 01:46:39,117.117 INFO    ] Checking for camera pi updates...
[2026-10-28 01:46:39,154.154 INFO    ] 200
[2026-10-28 01:46:39,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:46:39,197.197 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:46:39,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:46:39,264.264 INFO    ] No camera update needed
[2026-10-28 01:46:39,266.266 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:46:39,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:46:39,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:46:39,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:46:41,320.320 INFO    ] ================================================
[2026-10-28 01:46:41,335.335 INFO    ] Launching Daemon at Wed Oct 28 01:46:41 IST 2026
[2026-10-28 01:46:41,345.345 INFO    ] ================================================
[2026-10-28 01:46:41,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:46:41
[2026-10-28 01:46:42,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:46:42,823.823 INFO    ] Initializing speech engine...
[2026-10-28 01:46:42,830.830 INFO    ] 2026-10-28 01:46:42
[2026-10-28 01:46:43,094.094 INFO    ] 2026-10-28 01:46:43
[2026-10-28 01:46:43,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:46:43,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:46:43,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:46:43,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:46:43,673.673 INFO    ] time= 28/10/2026 01:46:43
[2026-10-28 01:46:43,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:46:43,694.694 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:46:43,811.811 INFO    ] No existing commands found in stream
[2026-10-28 01:46:48,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:46:48,845.845 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-28 01:46:49,736.736 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:46:49,739.739 INFO    ] Checking for system updates...
[2026-10-28 01:46:49,779.779 INFO    ] 200
[2026-10-28 01:46:49,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:46:49,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:46:49,844.844 INFO    ] No update needed
[2026-10-28 01:46:49,847.847 INFO    ] Checking for camera pi updates...
[2026-10-28 01:46:49,881.881 INFO    ] 200
[2026-10-28 01:46:49,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:46:49,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:46:50,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:46:50,018.018 INFO    ] No camera update needed
[2026-10-28 01:46:50,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:46:50,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:46:50,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:46:50,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:46:52,080.080 INFO    ] ================================================
[2026-10-28 01:46:52,095.095 INFO    ] Launching Daemon at Wed Oct 28 01:46:52 IST 2026
[2026-10-28 01:46:52,106.106 INFO    ] ================================================
[2026-10-28 01:46:52,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:46:52
[2026-10-28 01:46:53,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:46:53,774.774 INFO    ] Initializing speech engine...
[2026-10-28 01:46:53,788.788 INFO    ] 2026-10-28 01:46:53
[2026-10-28 01:46:54,105.105 INFO    ] 2026-10-28 01:46:54
[2026-10-28 01:46:54,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:46:54,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:46:54,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:46:54,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:46:54,627.627 INFO    ] time= 28/10/2026 01:46:54
[2026-10-28 01:46:54,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:46:54,669.669 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:46:54,813.813 INFO    ] No existing commands found in stream
[2026-10-28 01:46:59,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:46:59,848.848 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-28 01:47:03,493.493 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:47:03,496.496 INFO    ] Checking for system updates...
[2026-10-28 01:47:03,531.531 INFO    ] 200
[2026-10-28 01:47:03,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:47:03,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:47:03,595.595 INFO    ] No update needed
[2026-10-28 01:47:03,597.597 INFO    ] Checking for camera pi updates...
[2026-10-28 01:47:03,630.630 INFO    ] 200
[2026-10-28 01:47:03,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:47:03,678.678 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:47:03,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:47:03,793.793 INFO    ] No camera update needed
[2026-10-28 01:47:03,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:47:03,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:47:03,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:47:03,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:47:05,849.849 INFO    ] ================================================
[2026-10-28 01:47:05,864.864 INFO    ] Launching Daemon at Wed Oct 28 01:47:05 IST 2026
[2026-10-28 01:47:05,875.875 INFO    ] ================================================
[2026-10-28 01:47:06,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:47:06
[2026-10-28 01:47:07,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:47:07,347.347 INFO    ] Initializing speech engine...
[2026-10-28 01:47:07,356.356 INFO    ] 2026-10-28 01:47:07
[2026-10-28 01:47:07,613.613 INFO    ] 2026-10-28 01:47:07
[2026-10-28 01:47:07,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:47:07,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:47:07,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:47:08,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:47:08,180.180 INFO    ] time= 28/10/2026 01:47:08
[2026-10-28 01:47:08,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:47:08,214.214 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:47:08,321.321 INFO    ] No existing commands found in stream
[2026-10-28 01:47:13,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:47:13,340.340 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 01:47:16,044.044 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:47:16,047.047 INFO    ] Checking for system updates...
[2026-10-28 01:47:16,082.082 INFO    ] 200
[2026-10-28 01:47:16,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:47:16,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:47:16,139.139 INFO    ] No update needed
[2026-10-28 01:47:16,142.142 INFO    ] Checking for camera pi updates...
[2026-10-28 01:47:16,179.179 INFO    ] 200
[2026-10-28 01:47:16,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:47:16,226.226 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:47:16,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:47:16,322.322 INFO    ] No camera update needed
[2026-10-28 01:47:16,324.324 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:47:16,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:47:16,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:47:16,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:47:18,379.379 INFO    ] ================================================
[2026-10-28 01:47:18,394.394 INFO    ] Launching Daemon at Wed Oct 28 01:47:18 IST 2026
[2026-10-28 01:47:18,404.404 INFO    ] ================================================
[2026-10-28 01:47:18,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:47:18
[2026-10-28 01:47:19,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:47:19,860.860 INFO    ] Initializing speech engine...
[2026-10-28 01:47:19,866.866 INFO    ] 2026-10-28 01:47:19
[2026-10-28 01:47:20,129.129 INFO    ] 2026-10-28 01:47:20
[2026-10-28 01:47:20,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:47:20,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:47:20,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:47:20,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:47:20,867.867 INFO    ] time= 28/10/2026 01:47:20
[2026-10-28 01:47:20,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:47:20,953.953 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:47:21,092.092 INFO    ] No existing commands found in stream
[2026-10-28 01:47:26,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:47:26,125.125 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-28 01:47:30,378.378 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:47:30,381.381 INFO    ] Checking for system updates...
[2026-10-28 01:47:30,422.422 INFO    ] 200
[2026-10-28 01:47:30,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:47:30,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:47:30,491.491 INFO    ] No update needed
[2026-10-28 01:47:30,494.494 INFO    ] Checking for camera pi updates...
[2026-10-28 01:47:30,528.528 INFO    ] 200
[2026-10-28 01:47:30,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:47:30,570.570 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:47:30,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:47:30,671.671 INFO    ] No camera update needed
[2026-10-28 01:47:30,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:47:30,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:47:30,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:47:30,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:47:32,728.728 INFO    ] ================================================
[2026-10-28 01:47:32,742.742 INFO    ] Launching Daemon at Wed Oct 28 01:47:32 IST 2026
[2026-10-28 01:47:32,753.753 INFO    ] ================================================
[2026-10-28 01:47:33,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:47:33
[2026-10-28 01:47:33,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:47:34,199.199 INFO    ] Initializing speech engine...
[2026-10-28 01:47:34,205.205 INFO    ] 2026-10-28 01:47:34
[2026-10-28 01:47:34,504.504 INFO    ] 2026-10-28 01:47:34
[2026-10-28 01:47:34,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:47:34,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:47:34,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:47:35,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:47:35,062.062 INFO    ] time= 28/10/2026 01:47:35
[2026-10-28 01:47:35,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:47:35,109.109 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:47:35,240.240 INFO    ] No existing commands found in stream
[2026-10-28 01:47:40,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:47:40,278.278 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-28 01:47:41,257.257 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:47:41,259.259 INFO    ] Checking for system updates...
[2026-10-28 01:47:41,304.304 INFO    ] 200
[2026-10-28 01:47:41,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:47:41,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:47:41,368.368 INFO    ] No update needed
[2026-10-28 01:47:41,371.371 INFO    ] Checking for camera pi updates...
[2026-10-28 01:47:41,409.409 INFO    ] 200
[2026-10-28 01:47:41,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:47:41,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:47:41,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:47:41,542.542 INFO    ] No camera update needed
[2026-10-28 01:47:41,544.544 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:47:41,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:47:41,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:47:41,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:47:43,601.601 INFO    ] ================================================
[2026-10-28 01:47:43,616.616 INFO    ] Launching Daemon at Wed Oct 28 01:47:43 IST 2026
[2026-10-28 01:47:43,627.627 INFO    ] ================================================
[2026-10-28 01:47:44,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:47:44
[2026-10-28 01:47:44,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:47:45,093.093 INFO    ] Initializing speech engine...
[2026-10-28 01:47:45,112.112 INFO    ] 2026-10-28 01:47:45
[2026-10-28 01:47:45,362.362 INFO    ] 2026-10-28 01:47:45
[2026-10-28 01:47:45,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:47:45,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:47:45,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:47:45,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:47:45,927.927 INFO    ] time= 28/10/2026 01:47:45
[2026-10-28 01:47:45,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:47:45,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:47:46,086.086 INFO    ] No existing commands found in stream
[2026-10-28 01:47:51,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:47:51,118.118 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-28 01:47:55,235.235 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:47:55,237.237 INFO    ] Checking for system updates...
[2026-10-28 01:47:55,272.272 INFO    ] 200
[2026-10-28 01:47:55,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:47:55,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:47:55,336.336 INFO    ] No update needed
[2026-10-28 01:47:55,338.338 INFO    ] Checking for camera pi updates...
[2026-10-28 01:47:55,376.376 INFO    ] 200
[2026-10-28 01:47:55,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:47:55,418.418 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:47:55,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:47:55,501.501 INFO    ] No camera update needed
[2026-10-28 01:47:55,503.503 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:47:55,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:47:55,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:47:55,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:47:57,557.557 INFO    ] ================================================
[2026-10-28 01:47:57,572.572 INFO    ] Launching Daemon at Wed Oct 28 01:47:57 IST 2026
[2026-10-28 01:47:57,582.582 INFO    ] ================================================
[2026-10-28 01:47:58,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:47:58
[2026-10-28 01:47:58,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:47:59,032.032 INFO    ] Initializing speech engine...
[2026-10-28 01:47:59,039.039 INFO    ] 2026-10-28 01:47:59
[2026-10-28 01:47:59,312.312 INFO    ] 2026-10-28 01:47:59
[2026-10-28 01:47:59,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:47:59,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:47:59,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:47:59,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:47:59,840.840 INFO    ] time= 28/10/2026 01:47:59
[2026-10-28 01:47:59,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:47:59,886.886 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:48:00,007.007 INFO    ] No existing commands found in stream
[2026-10-28 01:48:05,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:48:05,040.040 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-28 01:48:05,999.999 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:48:06,002.002 INFO    ] Checking for system updates...
[2026-10-28 01:48:06,041.041 INFO    ] 200
[2026-10-28 01:48:06,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:48:06,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:48:06,099.099 INFO    ] No update needed
[2026-10-28 01:48:06,102.102 INFO    ] Checking for camera pi updates...
[2026-10-28 01:48:06,136.136 INFO    ] 200
[2026-10-28 01:48:06,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:48:06,179.179 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:48:06,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:48:06,257.257 INFO    ] No camera update needed
[2026-10-28 01:48:06,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:48:06,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:48:06,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:48:06,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:48:08,311.311 INFO    ] ================================================
[2026-10-28 01:48:08,327.327 INFO    ] Launching Daemon at Wed Oct 28 01:48:08 IST 2026
[2026-10-28 01:48:08,338.338 INFO    ] ================================================
[2026-10-28 01:48:08,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:48:08
[2026-10-28 01:48:09,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:48:09,790.790 INFO    ] Initializing speech engine...
[2026-10-28 01:48:09,800.800 INFO    ] 2026-10-28 01:48:09
[2026-10-28 01:48:10,058.058 INFO    ] 2026-10-28 01:48:10
[2026-10-28 01:48:10,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:48:10,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:48:10,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:48:10,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:48:10,645.645 INFO    ] time= 28/10/2026 01:48:10
[2026-10-28 01:48:10,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:48:10,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:48:10,817.817 INFO    ] No existing commands found in stream
[2026-10-28 01:48:15,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:48:15,846.846 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-28 01:48:18,125.125 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:48:18,128.128 INFO    ] Checking for system updates...
[2026-10-28 01:48:18,164.164 INFO    ] 200
[2026-10-28 01:48:18,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:48:18,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:48:18,228.228 INFO    ] No update needed
[2026-10-28 01:48:18,231.231 INFO    ] Checking for camera pi updates...
[2026-10-28 01:48:18,265.265 INFO    ] 200
[2026-10-28 01:48:18,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:48:18,309.309 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:48:18,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:48:18,401.401 INFO    ] No camera update needed
[2026-10-28 01:48:18,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:48:18,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:48:18,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:48:18,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:48:20,461.461 INFO    ] ================================================
[2026-10-28 01:48:20,476.476 INFO    ] Launching Daemon at Wed Oct 28 01:48:20 IST 2026
[2026-10-28 01:48:20,487.487 INFO    ] ================================================
[2026-10-28 01:48:21,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:48:21
[2026-10-28 01:48:21,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:48:21,975.975 INFO    ] Initializing speech engine...
[2026-10-28 01:48:21,984.984 INFO    ] 2026-10-28 01:48:21
[2026-10-28 01:48:22,272.272 INFO    ] 2026-10-28 01:48:22
[2026-10-28 01:48:22,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:48:22,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:48:22,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:48:22,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:48:22,832.832 INFO    ] time= 28/10/2026 01:48:22
[2026-10-28 01:48:22,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:48:22,858.858 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:48:22,988.988 INFO    ] No existing commands found in stream
[2026-10-28 01:48:28,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:48:28,006.006 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 01:48:30,136.136 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:48:30,138.138 INFO    ] Checking for system updates...
[2026-10-28 01:48:30,180.180 INFO    ] 200
[2026-10-28 01:48:30,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:48:30,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:48:30,247.247 INFO    ] No update needed
[2026-10-28 01:48:30,251.251 INFO    ] Checking for camera pi updates...
[2026-10-28 01:48:30,289.289 INFO    ] 200
[2026-10-28 01:48:30,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:48:30,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:48:30,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:48:30,435.435 INFO    ] No camera update needed
[2026-10-28 01:48:30,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:48:30,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:48:30,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:48:30,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:48:32,499.499 INFO    ] ================================================
[2026-10-28 01:48:32,515.515 INFO    ] Launching Daemon at Wed Oct 28 01:48:32 IST 2026
[2026-10-28 01:48:32,527.527 INFO    ] ================================================
[2026-10-28 01:48:33,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:48:33
[2026-10-28 01:48:33,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:48:33,944.944 INFO    ] Initializing speech engine...
[2026-10-28 01:48:33,952.952 INFO    ] 2026-10-28 01:48:33
[2026-10-28 01:48:34,225.225 INFO    ] 2026-10-28 01:48:34
[2026-10-28 01:48:34,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:48:34,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:48:34,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:48:34,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:48:34,798.798 INFO    ] time= 28/10/2026 01:48:34
[2026-10-28 01:48:34,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:48:34,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:48:34,955.955 INFO    ] No existing commands found in stream
[2026-10-28 01:48:39,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:48:39,971.971 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-28 01:48:40,716.716 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:48:40,718.718 INFO    ] Checking for system updates...
[2026-10-28 01:48:40,754.754 INFO    ] 200
[2026-10-28 01:48:40,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:48:40,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:48:40,819.819 INFO    ] No update needed
[2026-10-28 01:48:40,821.821 INFO    ] Checking for camera pi updates...
[2026-10-28 01:48:40,856.856 INFO    ] 200
[2026-10-28 01:48:40,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:48:40,906.906 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:48:41,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:48:41,086.086 INFO    ] No camera update needed
[2026-10-28 01:48:41,089.089 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:48:41,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:48:41,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:48:41,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:48:43,145.145 INFO    ] ================================================
[2026-10-28 01:48:43,160.160 INFO    ] Launching Daemon at Wed Oct 28 01:48:43 IST 2026
[2026-10-28 01:48:43,171.171 INFO    ] ================================================
[2026-10-28 01:48:43,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:48:43
[2026-10-28 01:48:44,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:48:44,563.563 INFO    ] Initializing speech engine...
[2026-10-28 01:48:44,571.571 INFO    ] 2026-10-28 01:48:44
[2026-10-28 01:48:44,844.844 INFO    ] 2026-10-28 01:48:44
[2026-10-28 01:48:44,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:48:45,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:48:45,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:48:45,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:48:45,414.414 INFO    ] time= 28/10/2026 01:48:45
[2026-10-28 01:48:45,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:48:45,439.439 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:48:45,568.568 INFO    ] No existing commands found in stream
[2026-10-28 01:48:50,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:48:50,585.585 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 01:48:53,723.723 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:48:53,726.726 INFO    ] Checking for system updates...
[2026-10-28 01:48:53,767.767 INFO    ] 200
[2026-10-28 01:48:53,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:48:53,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:48:53,826.826 INFO    ] No update needed
[2026-10-28 01:48:53,828.828 INFO    ] Checking for camera pi updates...
[2026-10-28 01:48:53,867.867 INFO    ] 200
[2026-10-28 01:48:53,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:48:53,911.911 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:48:54,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:48:54,008.008 INFO    ] No camera update needed
[2026-10-28 01:48:54,011.011 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:48:54,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:48:54,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:48:54,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:48:56,064.064 INFO    ] ================================================
[2026-10-28 01:48:56,079.079 INFO    ] Launching Daemon at Wed Oct 28 01:48:56 IST 2026
[2026-10-28 01:48:56,090.090 INFO    ] ================================================
[2026-10-28 01:48:56,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:48:56
[2026-10-28 01:48:57,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:48:57,582.582 INFO    ] Initializing speech engine...
[2026-10-28 01:48:57,594.594 INFO    ] 2026-10-28 01:48:57
[2026-10-28 01:48:57,888.888 INFO    ] 2026-10-28 01:48:57
[2026-10-28 01:48:58,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:48:58,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:48:58,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:48:58,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:48:58,457.457 INFO    ] time= 28/10/2026 01:48:58
[2026-10-28 01:48:58,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:48:58,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:48:58,622.622 INFO    ] No existing commands found in stream
[2026-10-28 01:49:03,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:49:03,649.649 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 01:49:07,653.653 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:49:07,656.656 INFO    ] Checking for system updates...
[2026-10-28 01:49:07,692.692 INFO    ] 200
[2026-10-28 01:49:07,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:49:07,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:49:07,749.749 INFO    ] No update needed
[2026-10-28 01:49:07,751.751 INFO    ] Checking for camera pi updates...
[2026-10-28 01:49:07,784.784 INFO    ] 200
[2026-10-28 01:49:07,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:49:07,832.832 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:49:07,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:49:07,901.901 INFO    ] No camera update needed
[2026-10-28 01:49:07,904.904 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:49:07,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:49:07,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:49:07,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:49:09,959.959 INFO    ] ================================================
[2026-10-28 01:49:09,974.974 INFO    ] Launching Daemon at Wed Oct 28 01:49:09 IST 2026
[2026-10-28 01:49:09,985.985 INFO    ] ================================================
[2026-10-28 01:49:10,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:49:10
[2026-10-28 01:49:11,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:49:11,400.400 INFO    ] Initializing speech engine...
[2026-10-28 01:49:11,412.412 INFO    ] 2026-10-28 01:49:11
[2026-10-28 01:49:11,665.665 INFO    ] 2026-10-28 01:49:11
[2026-10-28 01:49:11,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:49:11,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:49:11,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:49:12,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:49:12,235.235 INFO    ] time= 28/10/2026 01:49:12
[2026-10-28 01:49:12,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:49:12,259.259 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:49:12,402.402 INFO    ] No existing commands found in stream
[2026-10-28 01:49:17,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:49:17,435.435 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 01:49:19,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:49:19,121.121 INFO    ] Checking for system updates...
[2026-10-28 01:49:19,159.159 INFO    ] 200
[2026-10-28 01:49:19,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:49:19,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:49:19,218.218 INFO    ] No update needed
[2026-10-28 01:49:19,221.221 INFO    ] Checking for camera pi updates...
[2026-10-28 01:49:19,260.260 INFO    ] 200
[2026-10-28 01:49:19,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:49:19,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:49:19,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:49:19,376.376 INFO    ] No camera update needed
[2026-10-28 01:49:19,379.379 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:49:19,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:49:19,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:49:19,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:49:21,436.436 INFO    ] ================================================
[2026-10-28 01:49:21,452.452 INFO    ] Launching Daemon at Wed Oct 28 01:49:21 IST 2026
[2026-10-28 01:49:21,463.463 INFO    ] ================================================
[2026-10-28 01:49:22,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:49:22
[2026-10-28 01:49:22,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:49:22,887.887 INFO    ] Initializing speech engine...
[2026-10-28 01:49:22,896.896 INFO    ] 2026-10-28 01:49:22
[2026-10-28 01:49:23,192.192 INFO    ] 2026-10-28 01:49:23
[2026-10-28 01:49:23,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:49:23,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:49:23,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:49:23,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:49:23,826.826 INFO    ] time= 28/10/2026 01:49:23
[2026-10-28 01:49:23,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:49:23,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:49:24,010.010 INFO    ] No existing commands found in stream
[2026-10-28 01:49:29,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:49:29,028.028 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-28 01:49:30,258.258 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:49:30,260.260 INFO    ] Checking for system updates...
[2026-10-28 01:49:30,302.302 INFO    ] 200
[2026-10-28 01:49:30,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:49:30,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:49:30,368.368 INFO    ] No update needed
[2026-10-28 01:49:30,371.371 INFO    ] Checking for camera pi updates...
[2026-10-28 01:49:30,406.406 INFO    ] 200
[2026-10-28 01:49:30,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:49:30,456.456 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:49:30,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:49:30,539.539 INFO    ] No camera update needed
[2026-10-28 01:49:30,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:49:30,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:49:30,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:49:30,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:49:32,599.599 INFO    ] ================================================
[2026-10-28 01:49:32,616.616 INFO    ] Launching Daemon at Wed Oct 28 01:49:32 IST 2026
[2026-10-28 01:49:32,627.627 INFO    ] ================================================
[2026-10-28 01:49:33,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:49:33
[2026-10-28 01:49:33,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:49:34,085.085 INFO    ] Initializing speech engine...
[2026-10-28 01:49:34,094.094 INFO    ] 2026-10-28 01:49:34
[2026-10-28 01:49:34,396.396 INFO    ] 2026-10-28 01:49:34
[2026-10-28 01:49:34,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:49:34,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:49:34,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:49:34,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:49:34,898.898 INFO    ] time= 28/10/2026 01:49:34
[2026-10-28 01:49:34,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:49:35,012.012 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:49:35,111.111 INFO    ] No existing commands found in stream
[2026-10-28 01:49:40,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:49:40,125.125 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 01:49:41,556.556 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:49:41,559.559 INFO    ] Checking for system updates...
[2026-10-28 01:49:41,601.601 INFO    ] 200
[2026-10-28 01:49:41,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:49:41,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:49:41,659.659 INFO    ] No update needed
[2026-10-28 01:49:41,661.661 INFO    ] Checking for camera pi updates...
[2026-10-28 01:49:41,698.698 INFO    ] 200
[2026-10-28 01:49:41,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:49:41,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:49:41,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:49:41,817.817 INFO    ] No camera update needed
[2026-10-28 01:49:41,819.819 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:49:41,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:49:41,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:49:41,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:49:43,872.872 INFO    ] ================================================
[2026-10-28 01:49:43,889.889 INFO    ] Launching Daemon at Wed Oct 28 01:49:43 IST 2026
[2026-10-28 01:49:43,900.900 INFO    ] ================================================
[2026-10-28 01:49:44,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:49:44
[2026-10-28 01:49:45,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:49:45,356.356 INFO    ] Initializing speech engine...
[2026-10-28 01:49:45,365.365 INFO    ] 2026-10-28 01:49:45
[2026-10-28 01:49:45,625.625 INFO    ] 2026-10-28 01:49:45
[2026-10-28 01:49:45,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:49:45,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:49:45,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:49:46,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:49:46,173.173 INFO    ] time= 28/10/2026 01:49:46
[2026-10-28 01:49:46,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:49:46,197.197 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:49:46,311.311 INFO    ] No existing commands found in stream
[2026-10-28 01:49:51,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:49:51,340.340 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-28 01:49:55,556.556 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:49:55,559.559 INFO    ] Checking for system updates...
[2026-10-28 01:49:55,596.596 INFO    ] 200
[2026-10-28 01:49:55,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:49:55,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:49:55,655.655 INFO    ] No update needed
[2026-10-28 01:49:55,658.658 INFO    ] Checking for camera pi updates...
[2026-10-28 01:49:55,692.692 INFO    ] 200
[2026-10-28 01:49:55,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:49:55,742.742 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:49:55,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:49:55,840.840 INFO    ] No camera update needed
[2026-10-28 01:49:55,843.843 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:49:55,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:49:55,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:49:55,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:49:57,896.896 INFO    ] ================================================
[2026-10-28 01:49:57,911.911 INFO    ] Launching Daemon at Wed Oct 28 01:49:57 IST 2026
[2026-10-28 01:49:57,922.922 INFO    ] ================================================
[2026-10-28 01:49:58,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:49:58
[2026-10-28 01:49:59,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:49:59,414.414 INFO    ] Initializing speech engine...
[2026-10-28 01:49:59,424.424 INFO    ] 2026-10-28 01:49:59
[2026-10-28 01:49:59,670.670 INFO    ] 2026-10-28 01:49:59
[2026-10-28 01:49:59,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:49:59,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:49:59,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:50:00,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:50:00,224.224 INFO    ] time= 28/10/2026 01:50:00
[2026-10-28 01:50:00,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:50:00,248.248 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:50:00,377.377 INFO    ] No existing commands found in stream
[2026-10-28 01:50:05,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:50:05,404.404 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-28 01:50:08,896.896 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:50:08,899.899 INFO    ] Checking for system updates...
[2026-10-28 01:50:08,936.936 INFO    ] 200
[2026-10-28 01:50:08,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:50:08,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:50:08,999.999 INFO    ] No update needed
[2026-10-28 01:50:09,001.001 INFO    ] Checking for camera pi updates...
[2026-10-28 01:50:09,034.034 INFO    ] 200
[2026-10-28 01:50:09,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:50:09,076.076 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:50:09,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:50:09,160.160 INFO    ] No camera update needed
[2026-10-28 01:50:09,162.162 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:50:09,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:50:09,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:50:09,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:50:11,215.215 INFO    ] ================================================
[2026-10-28 01:50:11,231.231 INFO    ] Launching Daemon at Wed Oct 28 01:50:11 IST 2026
[2026-10-28 01:50:11,242.242 INFO    ] ================================================
[2026-10-28 01:50:11,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:50:11
[2026-10-28 01:50:12,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:50:12,695.695 INFO    ] Initializing speech engine...
[2026-10-28 01:50:12,704.704 INFO    ] 2026-10-28 01:50:12
[2026-10-28 01:50:12,959.959 INFO    ] 2026-10-28 01:50:12
[2026-10-28 01:50:12,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:50:13,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:50:13,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:50:13,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:50:13,535.535 INFO    ] time= 28/10/2026 01:50:13
[2026-10-28 01:50:13,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:50:13,565.565 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:50:13,712.712 INFO    ] No existing commands found in stream
[2026-10-28 01:50:18,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:50:18,745.745 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-28 01:50:19,662.662 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:50:19,665.665 INFO    ] Checking for system updates...
[2026-10-28 01:50:19,700.700 INFO    ] 200
[2026-10-28 01:50:19,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:50:19,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:50:19,758.758 INFO    ] No update needed
[2026-10-28 01:50:19,760.760 INFO    ] Checking for camera pi updates...
[2026-10-28 01:50:19,793.793 INFO    ] 200
[2026-10-28 01:50:19,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:50:19,836.836 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:50:19,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:50:19,922.922 INFO    ] No camera update needed
[2026-10-28 01:50:19,925.925 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:50:19,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:50:19,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:50:19,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:50:21,978.978 INFO    ] ================================================
[2026-10-28 01:50:21,994.994 INFO    ] Launching Daemon at Wed Oct 28 01:50:21 IST 2026
[2026-10-28 01:50:22,006.006 INFO    ] ================================================
[2026-10-28 01:50:22,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:50:22
[2026-10-28 01:50:23,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:50:23,611.611 INFO    ] Initializing speech engine...
[2026-10-28 01:50:23,623.623 INFO    ] 2026-10-28 01:50:23
[2026-10-28 01:50:23,906.906 INFO    ] 2026-10-28 01:50:23
[2026-10-28 01:50:23,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:50:24,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:50:24,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:50:24,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:50:24,490.490 INFO    ] time= 28/10/2026 01:50:24
[2026-10-28 01:50:24,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:50:24,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:50:24,714.714 INFO    ] No existing commands found in stream
[2026-10-28 01:50:29,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:50:29,753.753 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 01:50:33,285.285 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:50:33,287.287 INFO    ] Checking for system updates...
[2026-10-28 01:50:33,328.328 INFO    ] 200
[2026-10-28 01:50:33,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:50:33,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:50:33,387.387 INFO    ] No update needed
[2026-10-28 01:50:33,389.389 INFO    ] Checking for camera pi updates...
[2026-10-28 01:50:33,427.427 INFO    ] 200
[2026-10-28 01:50:33,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:50:33,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:50:33,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:50:33,553.553 INFO    ] No camera update needed
[2026-10-28 01:50:33,556.556 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:50:33,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:50:33,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:50:33,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:50:35,609.609 INFO    ] ================================================
[2026-10-28 01:50:35,625.625 INFO    ] Launching Daemon at Wed Oct 28 01:50:35 IST 2026
[2026-10-28 01:50:35,636.636 INFO    ] ================================================
[2026-10-28 01:50:36,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:50:36
[2026-10-28 01:50:36,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:50:37,224.224 INFO    ] Initializing speech engine...
[2026-10-28 01:50:37,239.239 INFO    ] 2026-10-28 01:50:37
[2026-10-28 01:50:37,505.505 INFO    ] 2026-10-28 01:50:37
[2026-10-28 01:50:37,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:50:37,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:50:37,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:50:38,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:50:38,075.075 INFO    ] time= 28/10/2026 01:50:38
[2026-10-28 01:50:38,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:50:38,097.097 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:50:38,215.215 INFO    ] No existing commands found in stream
[2026-10-28 01:50:43,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:50:43,240.240 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 01:50:43,896.896 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:50:43,899.899 INFO    ] Checking for system updates...
[2026-10-28 01:50:43,934.934 INFO    ] 200
[2026-10-28 01:50:43,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:50:43,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:50:43,997.997 INFO    ] No update needed
[2026-10-28 01:50:43,999.999 INFO    ] Checking for camera pi updates...
[2026-10-28 01:50:44,033.033 INFO    ] 200
[2026-10-28 01:50:44,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:50:44,076.076 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:50:44,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:50:44,277.277 INFO    ] No camera update needed
[2026-10-28 01:50:44,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:50:44,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:50:44,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:50:44,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:50:46,334.334 INFO    ] ================================================
[2026-10-28 01:50:46,350.350 INFO    ] Launching Daemon at Wed Oct 28 01:50:46 IST 2026
[2026-10-28 01:50:46,361.361 INFO    ] ================================================
[2026-10-28 01:50:46,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:50:46
[2026-10-28 01:50:47,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:50:47,819.819 INFO    ] Initializing speech engine...
[2026-10-28 01:50:47,830.830 INFO    ] 2026-10-28 01:50:47
[2026-10-28 01:50:48,093.093 INFO    ] 2026-10-28 01:50:48
[2026-10-28 01:50:48,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:50:48,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:50:48,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:50:48,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:50:48,638.638 INFO    ] time= 28/10/2026 01:50:48
[2026-10-28 01:50:48,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:50:48,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:50:48,782.782 INFO    ] No existing commands found in stream
[2026-10-28 01:50:53,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:50:53,806.806 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-28 01:50:58,057.057 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:50:58,060.060 INFO    ] Checking for system updates...
[2026-10-28 01:50:58,096.096 INFO    ] 200
[2026-10-28 01:50:58,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:50:58,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:50:58,153.153 INFO    ] No update needed
[2026-10-28 01:50:58,156.156 INFO    ] Checking for camera pi updates...
[2026-10-28 01:50:58,193.193 INFO    ] 200
[2026-10-28 01:50:58,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:50:58,238.238 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:50:58,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:50:58,332.332 INFO    ] No camera update needed
[2026-10-28 01:50:58,335.335 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:50:58,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:50:58,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:50:58,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:51:00,392.392 INFO    ] ================================================
[2026-10-28 01:51:00,408.408 INFO    ] Launching Daemon at Wed Oct 28 01:51:00 IST 2026
[2026-10-28 01:51:00,418.418 INFO    ] ================================================
[2026-10-28 01:51:01,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:51:01
[2026-10-28 01:51:01,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:51:02,110.110 INFO    ] Initializing speech engine...
[2026-10-28 01:51:02,117.117 INFO    ] 2026-10-28 01:51:02
[2026-10-28 01:51:02,489.489 INFO    ] 2026-10-28 01:51:02
[2026-10-28 01:51:02,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:51:02,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:51:02,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:51:03,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:51:03,134.134 INFO    ] time= 28/10/2026 01:51:03
[2026-10-28 01:51:03,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:51:03,248.248 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:51:03,417.417 INFO    ] No existing commands found in stream
[2026-10-28 01:51:08,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:51:08,447.447 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-28 01:51:11,198.198 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:51:11,201.201 INFO    ] Checking for system updates...
[2026-10-28 01:51:11,237.237 INFO    ] 200
[2026-10-28 01:51:11,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:51:11,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:51:11,296.296 INFO    ] No update needed
[2026-10-28 01:51:11,298.298 INFO    ] Checking for camera pi updates...
[2026-10-28 01:51:11,338.338 INFO    ] 200
[2026-10-28 01:51:11,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:51:11,381.381 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:51:11,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:51:11,455.455 INFO    ] No camera update needed
[2026-10-28 01:51:11,458.458 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:51:11,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:51:11,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:51:11,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:51:13,510.510 INFO    ] ================================================
[2026-10-28 01:51:13,525.525 INFO    ] Launching Daemon at Wed Oct 28 01:51:13 IST 2026
[2026-10-28 01:51:13,535.535 INFO    ] ================================================
[2026-10-28 01:51:14,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:51:14
[2026-10-28 01:51:14,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:51:14,948.948 INFO    ] Initializing speech engine...
[2026-10-28 01:51:14,965.965 INFO    ] 2026-10-28 01:51:14
[2026-10-28 01:51:15,230.230 INFO    ] 2026-10-28 01:51:15
[2026-10-28 01:51:15,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:51:15,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:51:15,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:51:15,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:51:15,835.835 INFO    ] time= 28/10/2026 01:51:15
[2026-10-28 01:51:15,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:51:15,863.863 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:51:15,995.995 INFO    ] No existing commands found in stream
[2026-10-28 01:51:21,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:51:21,018.018 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-28 01:51:22,984.984 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:51:22,987.987 INFO    ] Checking for system updates...
[2026-10-28 01:51:23,025.025 INFO    ] 200
[2026-10-28 01:51:23,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:51:23,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:51:23,095.095 INFO    ] No update needed
[2026-10-28 01:51:23,098.098 INFO    ] Checking for camera pi updates...
[2026-10-28 01:51:23,132.132 INFO    ] 200
[2026-10-28 01:51:23,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:51:23,174.174 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:51:23,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:51:23,295.295 INFO    ] No camera update needed
[2026-10-28 01:51:23,297.297 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:51:23,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:51:23,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:51:23,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:51:25,349.349 INFO    ] ================================================
[2026-10-28 01:51:25,365.365 INFO    ] Launching Daemon at Wed Oct 28 01:51:25 IST 2026
[2026-10-28 01:51:25,376.376 INFO    ] ================================================
[2026-10-28 01:51:25,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:51:25
[2026-10-28 01:51:26,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:51:26,839.839 INFO    ] Initializing speech engine...
[2026-10-28 01:51:26,846.846 INFO    ] 2026-10-28 01:51:26
[2026-10-28 01:51:27,103.103 INFO    ] 2026-10-28 01:51:27
[2026-10-28 01:51:27,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:51:27,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:51:27,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:51:27,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:51:27,685.685 INFO    ] time= 28/10/2026 01:51:27
[2026-10-28 01:51:27,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:51:27,735.735 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:51:27,861.861 INFO    ] No existing commands found in stream
[2026-10-28 01:51:32,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:51:32,899.899 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 01:51:34,264.264 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:51:34,267.267 INFO    ] Checking for system updates...
[2026-10-28 01:51:34,302.302 INFO    ] 200
[2026-10-28 01:51:34,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:51:34,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:51:34,360.360 INFO    ] No update needed
[2026-10-28 01:51:34,362.362 INFO    ] Checking for camera pi updates...
[2026-10-28 01:51:34,398.398 INFO    ] 200
[2026-10-28 01:51:34,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:51:34,446.446 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:51:34,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:51:34,532.532 INFO    ] No camera update needed
[2026-10-28 01:51:34,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:51:34,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:51:34,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:51:34,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:51:36,591.591 INFO    ] ================================================
[2026-10-28 01:51:36,606.606 INFO    ] Launching Daemon at Wed Oct 28 01:51:36 IST 2026
[2026-10-28 01:51:36,617.617 INFO    ] ================================================
[2026-10-28 01:51:37,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:51:37
[2026-10-28 01:51:37,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:51:38,048.048 INFO    ] Initializing speech engine...
[2026-10-28 01:51:38,057.057 INFO    ] 2026-10-28 01:51:38
[2026-10-28 01:51:38,348.348 INFO    ] 2026-10-28 01:51:38
[2026-10-28 01:51:38,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:51:38,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:51:38,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:51:38,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:51:38,958.958 INFO    ] time= 28/10/2026 01:51:38
[2026-10-28 01:51:38,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:51:38,982.982 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:51:39,124.124 INFO    ] No existing commands found in stream
[2026-10-28 01:51:44,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:51:44,150.150 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-28 01:51:46,179.179 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:51:46,182.182 INFO    ] Checking for system updates...
[2026-10-28 01:51:46,219.219 INFO    ] 200
[2026-10-28 01:51:46,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:51:46,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:51:46,277.277 INFO    ] No update needed
[2026-10-28 01:51:46,279.279 INFO    ] Checking for camera pi updates...
[2026-10-28 01:51:46,313.313 INFO    ] 200
[2026-10-28 01:51:46,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:51:46,356.356 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:51:46,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:51:46,439.439 INFO    ] No camera update needed
[2026-10-28 01:51:46,441.441 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:51:46,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:51:46,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:51:46,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:51:48,494.494 INFO    ] ================================================
[2026-10-28 01:51:48,509.509 INFO    ] Launching Daemon at Wed Oct 28 01:51:48 IST 2026
[2026-10-28 01:51:48,519.519 INFO    ] ================================================
[2026-10-28 01:51:49,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:51:49
[2026-10-28 01:51:49,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:51:49,939.939 INFO    ] Initializing speech engine...
[2026-10-28 01:51:49,950.950 INFO    ] 2026-10-28 01:51:49
[2026-10-28 01:51:50,199.199 INFO    ] 2026-10-28 01:51:50
[2026-10-28 01:51:50,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:51:50,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:51:50,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:51:50,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:51:50,767.767 INFO    ] time= 28/10/2026 01:51:50
[2026-10-28 01:51:50,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:51:50,802.802 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:51:50,924.924 INFO    ] No existing commands found in stream
[2026-10-28 01:51:55,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:51:55,947.947 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 01:51:57,088.088 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:51:57,091.091 INFO    ] Checking for system updates...
[2026-10-28 01:51:57,127.127 INFO    ] 200
[2026-10-28 01:51:57,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:51:57,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:51:57,192.192 INFO    ] No update needed
[2026-10-28 01:51:57,195.195 INFO    ] Checking for camera pi updates...
[2026-10-28 01:51:57,230.230 INFO    ] 200
[2026-10-28 01:51:57,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:51:57,272.272 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:51:57,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:51:57,369.369 INFO    ] No camera update needed
[2026-10-28 01:51:57,371.371 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:51:57,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:51:57,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:51:57,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:51:59,424.424 INFO    ] ================================================
[2026-10-28 01:51:59,439.439 INFO    ] Launching Daemon at Wed Oct 28 01:51:59 IST 2026
[2026-10-28 01:51:59,449.449 INFO    ] ================================================
[2026-10-28 01:52:00,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:52:00
[2026-10-28 01:52:00,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:52:01,011.011 INFO    ] Initializing speech engine...
[2026-10-28 01:52:01,017.017 INFO    ] 2026-10-28 01:52:01
[2026-10-28 01:52:01,300.300 INFO    ] 2026-10-28 01:52:01
[2026-10-28 01:52:01,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:52:01,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:52:01,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:52:01,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:52:01,895.895 INFO    ] time= 28/10/2026 01:52:01
[2026-10-28 01:52:01,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:52:01,943.943 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:52:02,056.056 INFO    ] No existing commands found in stream
[2026-10-28 01:52:07,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:52:07,081.081 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 01:52:08,822.822 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:52:08,825.825 INFO    ] Checking for system updates...
[2026-10-28 01:52:08,862.862 INFO    ] 200
[2026-10-28 01:52:08,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:52:08,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:52:08,921.921 INFO    ] No update needed
[2026-10-28 01:52:08,924.924 INFO    ] Checking for camera pi updates...
[2026-10-28 01:52:08,959.959 INFO    ] 200
[2026-10-28 01:52:08,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:52:09,002.002 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:52:09,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:52:09,090.090 INFO    ] No camera update needed
[2026-10-28 01:52:09,093.093 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:52:09,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:52:09,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:52:09,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:52:11,147.147 INFO    ] ================================================
[2026-10-28 01:52:11,161.161 INFO    ] Launching Daemon at Wed Oct 28 01:52:11 IST 2026
[2026-10-28 01:52:11,172.172 INFO    ] ================================================
[2026-10-28 01:52:11,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:52:11
[2026-10-28 01:52:12,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:52:12,579.579 INFO    ] Initializing speech engine...
[2026-10-28 01:52:12,598.598 INFO    ] 2026-10-28 01:52:12
[2026-10-28 01:52:12,845.845 INFO    ] 2026-10-28 01:52:12
[2026-10-28 01:52:12,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:52:13,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:52:13,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:52:13,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:52:13,419.419 INFO    ] time= 28/10/2026 01:52:13
[2026-10-28 01:52:13,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:52:13,460.460 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:52:13,585.585 INFO    ] No existing commands found in stream
[2026-10-28 01:52:18,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:52:18,619.619 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 01:52:20,381.381 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:52:20,384.384 INFO    ] Checking for system updates...
[2026-10-28 01:52:20,420.420 INFO    ] 200
[2026-10-28 01:52:20,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:52:20,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:52:20,488.488 INFO    ] No update needed
[2026-10-28 01:52:20,491.491 INFO    ] Checking for camera pi updates...
[2026-10-28 01:52:20,530.530 INFO    ] 200
[2026-10-28 01:52:20,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:52:20,579.579 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:52:20,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:52:20,686.686 INFO    ] No camera update needed
[2026-10-28 01:52:20,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:52:20,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:52:20,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:52:20,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:52:22,747.747 INFO    ] ================================================
[2026-10-28 01:52:22,762.762 INFO    ] Launching Daemon at Wed Oct 28 01:52:22 IST 2026
[2026-10-28 01:52:22,775.775 INFO    ] ================================================
[2026-10-28 01:52:23,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:52:23
[2026-10-28 01:52:24,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:52:24,335.335 INFO    ] Initializing speech engine...
[2026-10-28 01:52:24,344.344 INFO    ] 2026-10-28 01:52:24
[2026-10-28 01:52:24,614.614 INFO    ] 2026-10-28 01:52:24
[2026-10-28 01:52:24,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:52:24,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:52:24,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:52:25,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:52:25,205.205 INFO    ] time= 28/10/2026 01:52:25
[2026-10-28 01:52:25,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:52:25,222.222 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:52:25,346.346 INFO    ] No existing commands found in stream
[2026-10-28 01:52:30,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:52:30,378.378 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-28 01:52:33,700.700 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:52:33,702.702 INFO    ] Checking for system updates...
[2026-10-28 01:52:33,737.737 INFO    ] 200
[2026-10-28 01:52:33,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:52:33,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:52:33,794.794 INFO    ] No update needed
[2026-10-28 01:52:33,797.797 INFO    ] Checking for camera pi updates...
[2026-10-28 01:52:33,831.831 INFO    ] 200
[2026-10-28 01:52:33,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:52:33,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:52:33,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:52:33,998.998 INFO    ] No camera update needed
[2026-10-28 01:52:34,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:52:34,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:52:34,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:52:34,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:52:36,055.055 INFO    ] ================================================
[2026-10-28 01:52:36,070.070 INFO    ] Launching Daemon at Wed Oct 28 01:52:36 IST 2026
[2026-10-28 01:52:36,080.080 INFO    ] ================================================
[2026-10-28 01:52:36,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:52:36
[2026-10-28 01:52:37,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:52:37,490.490 INFO    ] Initializing speech engine...
[2026-10-28 01:52:37,504.504 INFO    ] 2026-10-28 01:52:37
[2026-10-28 01:52:37,763.763 INFO    ] 2026-10-28 01:52:37
[2026-10-28 01:52:37,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:52:38,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:52:38,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:52:38,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:52:38,328.328 INFO    ] time= 28/10/2026 01:52:38
[2026-10-28 01:52:38,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:52:38,352.352 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:52:38,485.485 INFO    ] No existing commands found in stream
[2026-10-28 01:52:43,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:52:43,502.502 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 01:52:44,917.917 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:52:44,920.920 INFO    ] Checking for system updates...
[2026-10-28 01:52:44,956.956 INFO    ] 200
[2026-10-28 01:52:44,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:52:45,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:52:45,022.022 INFO    ] No update needed
[2026-10-28 01:52:45,024.024 INFO    ] Checking for camera pi updates...
[2026-10-28 01:52:45,061.061 INFO    ] 200
[2026-10-28 01:52:45,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:52:45,109.109 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:52:45,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:52:45,197.197 INFO    ] No camera update needed
[2026-10-28 01:52:45,200.200 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:52:45,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:52:45,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:52:45,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:52:47,257.257 INFO    ] ================================================
[2026-10-28 01:52:47,272.272 INFO    ] Launching Daemon at Wed Oct 28 01:52:47 IST 2026
[2026-10-28 01:52:47,282.282 INFO    ] ================================================
[2026-10-28 01:52:47,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:52:47
[2026-10-28 01:52:48,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:52:48,744.744 INFO    ] Initializing speech engine...
[2026-10-28 01:52:48,758.758 INFO    ] 2026-10-28 01:52:48
[2026-10-28 01:52:49,038.038 INFO    ] 2026-10-28 01:52:49
[2026-10-28 01:52:49,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:52:49,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:52:49,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:52:49,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:52:49,738.738 INFO    ] time= 28/10/2026 01:52:49
[2026-10-28 01:52:49,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:52:49,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:52:50,013.013 INFO    ] No existing commands found in stream
[2026-10-28 01:52:55,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:52:55,035.035 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-28 01:52:58,739.739 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:52:58,742.742 INFO    ] Checking for system updates...
[2026-10-28 01:52:58,782.782 INFO    ] 200
[2026-10-28 01:52:58,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:52:58,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:52:58,846.846 INFO    ] No update needed
[2026-10-28 01:52:58,849.849 INFO    ] Checking for camera pi updates...
[2026-10-28 01:52:58,884.884 INFO    ] 200
[2026-10-28 01:52:58,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:52:58,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:52:59,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:52:59,084.084 INFO    ] No camera update needed
[2026-10-28 01:52:59,087.087 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:52:59,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:52:59,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:52:59,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:53:01,140.140 INFO    ] ================================================
[2026-10-28 01:53:01,155.155 INFO    ] Launching Daemon at Wed Oct 28 01:53:01 IST 2026
[2026-10-28 01:53:01,166.166 INFO    ] ================================================
[2026-10-28 01:53:01,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:53:01
[2026-10-28 01:53:02,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:53:02,926.926 INFO    ] Initializing speech engine...
[2026-10-28 01:53:02,940.940 INFO    ] 2026-10-28 01:53:02
[2026-10-28 01:53:03,234.234 INFO    ] 2026-10-28 01:53:03
[2026-10-28 01:53:03,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:53:03,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:53:03,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:53:03,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:53:03,763.763 INFO    ] time= 28/10/2026 01:53:03
[2026-10-28 01:53:03,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:53:03,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:53:03,992.992 INFO    ] No existing commands found in stream
[2026-10-28 01:53:09,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:53:09,026.026 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-28 01:53:12,636.636 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:53:12,638.638 INFO    ] Checking for system updates...
[2026-10-28 01:53:12,675.675 INFO    ] 200
[2026-10-28 01:53:12,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:53:12,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:53:12,732.732 INFO    ] No update needed
[2026-10-28 01:53:12,735.735 INFO    ] Checking for camera pi updates...
[2026-10-28 01:53:12,768.768 INFO    ] 200
[2026-10-28 01:53:12,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:53:12,816.816 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:53:12,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:53:12,886.886 INFO    ] No camera update needed
[2026-10-28 01:53:12,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:53:12,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:53:12,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:53:12,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:53:14,942.942 INFO    ] ================================================
[2026-10-28 01:53:14,958.958 INFO    ] Launching Daemon at Wed Oct 28 01:53:14 IST 2026
[2026-10-28 01:53:14,969.969 INFO    ] ================================================
[2026-10-28 01:53:15,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:53:15
[2026-10-28 01:53:16,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:53:16,587.587 INFO    ] Initializing speech engine...
[2026-10-28 01:53:16,594.594 INFO    ] 2026-10-28 01:53:16
[2026-10-28 01:53:16,870.870 INFO    ] 2026-10-28 01:53:16
[2026-10-28 01:53:16,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:53:17,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:53:17,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:53:17,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:53:17,452.452 INFO    ] time= 28/10/2026 01:53:17
[2026-10-28 01:53:17,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:53:17,490.490 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:53:17,646.646 INFO    ] No existing commands found in stream
[2026-10-28 01:53:22,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:53:22,679.679 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 01:53:25,198.198 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:53:25,201.201 INFO    ] Checking for system updates...
[2026-10-28 01:53:25,242.242 INFO    ] 200
[2026-10-28 01:53:25,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:53:25,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:53:25,301.301 INFO    ] No update needed
[2026-10-28 01:53:25,304.304 INFO    ] Checking for camera pi updates...
[2026-10-28 01:53:25,340.340 INFO    ] 200
[2026-10-28 01:53:25,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:53:25,390.390 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:53:25,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:53:25,490.490 INFO    ] No camera update needed
[2026-10-28 01:53:25,493.493 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:53:25,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:53:25,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:53:25,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:53:27,551.551 INFO    ] ================================================
[2026-10-28 01:53:27,566.566 INFO    ] Launching Daemon at Wed Oct 28 01:53:27 IST 2026
[2026-10-28 01:53:27,577.577 INFO    ] ================================================
[2026-10-28 01:53:28,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:53:28
[2026-10-28 01:53:28,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:53:29,036.036 INFO    ] Initializing speech engine...
[2026-10-28 01:53:29,045.045 INFO    ] 2026-10-28 01:53:29
[2026-10-28 01:53:29,293.293 INFO    ] 2026-10-28 01:53:29
[2026-10-28 01:53:29,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:53:29,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:53:29,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:53:29,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:53:29,847.847 INFO    ] time= 28/10/2026 01:53:29
[2026-10-28 01:53:29,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:53:29,871.871 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:53:30,018.018 INFO    ] No existing commands found in stream
[2026-10-28 01:53:35,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:53:35,056.056 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 01:53:38,999.999 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:53:39,002.002 INFO    ] Checking for system updates...
[2026-10-28 01:53:39,042.042 INFO    ] 200
[2026-10-28 01:53:39,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:53:39,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:53:39,100.100 INFO    ] No update needed
[2026-10-28 01:53:39,102.102 INFO    ] Checking for camera pi updates...
[2026-10-28 01:53:39,140.140 INFO    ] 200
[2026-10-28 01:53:39,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:53:39,184.184 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:53:39,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:53:39,237.237 INFO    ] No camera update needed
[2026-10-28 01:53:39,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:53:39,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:53:39,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:53:39,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:53:41,292.292 INFO    ] ================================================
[2026-10-28 01:53:41,307.307 INFO    ] Launching Daemon at Wed Oct 28 01:53:41 IST 2026
[2026-10-28 01:53:41,317.317 INFO    ] ================================================
[2026-10-28 01:53:41,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:53:41
[2026-10-28 01:53:42,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:53:42,717.717 INFO    ] Initializing speech engine...
[2026-10-28 01:53:42,730.730 INFO    ] 2026-10-28 01:53:42
[2026-10-28 01:53:42,995.995 INFO    ] 2026-10-28 01:53:42
[2026-10-28 01:53:43,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:53:43,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:53:43,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:53:43,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:53:43,561.561 INFO    ] time= 28/10/2026 01:53:43
[2026-10-28 01:53:43,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:53:43,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:53:43,719.719 INFO    ] No existing commands found in stream
[2026-10-28 01:53:48,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:53:48,765.765 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-28 01:53:49,926.926 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:53:49,929.929 INFO    ] Checking for system updates...
[2026-10-28 01:53:49,965.965 INFO    ] 200
[2026-10-28 01:53:49,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:53:50,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:53:50,021.021 INFO    ] No update needed
[2026-10-28 01:53:50,024.024 INFO    ] Checking for camera pi updates...
[2026-10-28 01:53:50,062.062 INFO    ] 200
[2026-10-28 01:53:50,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:53:50,110.110 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:53:50,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:53:50,215.215 INFO    ] No camera update needed
[2026-10-28 01:53:50,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:53:50,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:53:50,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:53:50,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:53:52,272.272 INFO    ] ================================================
[2026-10-28 01:53:52,287.287 INFO    ] Launching Daemon at Wed Oct 28 01:53:52 IST 2026
[2026-10-28 01:53:52,298.298 INFO    ] ================================================
[2026-10-28 01:53:52,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:53:52
[2026-10-28 01:53:53,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:53:53,937.937 INFO    ] Initializing speech engine...
[2026-10-28 01:53:53,945.945 INFO    ] 2026-10-28 01:53:53
[2026-10-28 01:53:54,211.211 INFO    ] 2026-10-28 01:53:54
[2026-10-28 01:53:54,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:53:54,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:53:54,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:53:54,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:53:54,746.746 INFO    ] time= 28/10/2026 01:53:54
[2026-10-28 01:53:54,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:53:54,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:53:54,903.903 INFO    ] No existing commands found in stream
[2026-10-28 01:53:59,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:53:59,934.934 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 01:54:02,498.498 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:54:02,501.501 INFO    ] Checking for system updates...
[2026-10-28 01:54:02,543.543 INFO    ] 200
[2026-10-28 01:54:02,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:54:02,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:54:02,620.620 INFO    ] No update needed
[2026-10-28 01:54:02,623.623 INFO    ] Checking for camera pi updates...
[2026-10-28 01:54:02,679.679 INFO    ] 200
[2026-10-28 01:54:02,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:54:02,748.748 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:54:02,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:54:02,851.851 INFO    ] No camera update needed
[2026-10-28 01:54:02,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:54:02,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:54:02,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:54:02,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:54:04,909.909 INFO    ] ================================================
[2026-10-28 01:54:04,925.925 INFO    ] Launching Daemon at Wed Oct 28 01:54:04 IST 2026
[2026-10-28 01:54:04,935.935 INFO    ] ================================================
[2026-10-28 01:54:05,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:54:05
[2026-10-28 01:54:06,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:54:06,592.592 INFO    ] Initializing speech engine...
[2026-10-28 01:54:06,607.607 INFO    ] 2026-10-28 01:54:06
[2026-10-28 01:54:06,919.919 INFO    ] 2026-10-28 01:54:06
[2026-10-28 01:54:07,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:54:07,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:54:07,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:54:07,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:54:07,442.442 INFO    ] time= 28/10/2026 01:54:07
[2026-10-28 01:54:07,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:54:07,480.480 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:54:07,621.621 INFO    ] No existing commands found in stream
[2026-10-28 01:54:12,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:54:12,651.651 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 01:54:13,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:54:13,744.744 INFO    ] Checking for system updates...
[2026-10-28 01:54:13,785.785 INFO    ] 200
[2026-10-28 01:54:13,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:54:13,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:54:13,871.871 INFO    ] No update needed
[2026-10-28 01:54:13,874.874 INFO    ] Checking for camera pi updates...
[2026-10-28 01:54:13,912.912 INFO    ] 200
[2026-10-28 01:54:13,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:54:13,955.955 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:54:14,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:54:14,049.049 INFO    ] No camera update needed
[2026-10-28 01:54:14,052.052 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:54:14,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:54:14,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:54:14,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:54:16,107.107 INFO    ] ================================================
[2026-10-28 01:54:16,122.122 INFO    ] Launching Daemon at Wed Oct 28 01:54:16 IST 2026
[2026-10-28 01:54:16,132.132 INFO    ] ================================================
[2026-10-28 01:54:16,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:54:16
[2026-10-28 01:54:17,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:54:17,585.585 INFO    ] Initializing speech engine...
[2026-10-28 01:54:17,592.592 INFO    ] 2026-10-28 01:54:17
[2026-10-28 01:54:17,839.839 INFO    ] 2026-10-28 01:54:17
[2026-10-28 01:54:17,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:54:18,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:54:18,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:54:18,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:54:18,393.393 INFO    ] time= 28/10/2026 01:54:18
[2026-10-28 01:54:18,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:54:18,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:54:18,546.546 INFO    ] No existing commands found in stream
[2026-10-28 01:54:23,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:54:23,562.562 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 01:54:27,257.257 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:54:27,259.259 INFO    ] Checking for system updates...
[2026-10-28 01:54:27,299.299 INFO    ] 200
[2026-10-28 01:54:27,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:54:27,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:54:27,363.363 INFO    ] No update needed
[2026-10-28 01:54:27,366.366 INFO    ] Checking for camera pi updates...
[2026-10-28 01:54:27,399.399 INFO    ] 200
[2026-10-28 01:54:27,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:54:27,442.442 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:54:27,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:54:27,525.525 INFO    ] No camera update needed
[2026-10-28 01:54:27,527.527 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:54:27,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:54:27,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:54:27,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:54:29,582.582 INFO    ] ================================================
[2026-10-28 01:54:29,597.597 INFO    ] Launching Daemon at Wed Oct 28 01:54:29 IST 2026
[2026-10-28 01:54:29,608.608 INFO    ] ================================================
[2026-10-28 01:54:30,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:54:30
[2026-10-28 01:54:30,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:54:31,236.236 INFO    ] Initializing speech engine...
[2026-10-28 01:54:31,245.245 INFO    ] 2026-10-28 01:54:31
[2026-10-28 01:54:31,536.536 INFO    ] 2026-10-28 01:54:31
[2026-10-28 01:54:31,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:54:31,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:54:31,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:54:32,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:54:32,134.134 INFO    ] time= 28/10/2026 01:54:32
[2026-10-28 01:54:32,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:54:32,173.173 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:54:32,304.304 INFO    ] No existing commands found in stream
[2026-10-28 01:54:37,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:54:37,334.334 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 01:54:40,527.527 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:54:40,530.530 INFO    ] Checking for system updates...
[2026-10-28 01:54:40,568.568 INFO    ] 200
[2026-10-28 01:54:40,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:54:40,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:54:40,633.633 INFO    ] No update needed
[2026-10-28 01:54:40,635.635 INFO    ] Checking for camera pi updates...
[2026-10-28 01:54:40,674.674 INFO    ] 200
[2026-10-28 01:54:40,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:54:40,722.722 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:54:40,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:54:40,806.806 INFO    ] No camera update needed
[2026-10-28 01:54:40,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:54:40,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:54:40,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:54:40,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:54:42,862.862 INFO    ] ================================================
[2026-10-28 01:54:42,877.877 INFO    ] Launching Daemon at Wed Oct 28 01:54:42 IST 2026
[2026-10-28 01:54:42,888.888 INFO    ] ================================================
[2026-10-28 01:54:43,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:54:43
[2026-10-28 01:54:44,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:54:44,369.369 INFO    ] Initializing speech engine...
[2026-10-28 01:54:44,376.376 INFO    ] 2026-10-28 01:54:44
[2026-10-28 01:54:44,627.627 INFO    ] 2026-10-28 01:54:44
[2026-10-28 01:54:44,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:54:44,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:54:44,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:54:45,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:54:45,178.178 INFO    ] time= 28/10/2026 01:54:45
[2026-10-28 01:54:45,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:54:45,218.218 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:54:45,355.355 INFO    ] No existing commands found in stream
[2026-10-28 01:54:50,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:54:50,393.393 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-28 01:54:53,397.397 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:54:53,400.400 INFO    ] Checking for system updates...
[2026-10-28 01:54:53,439.439 INFO    ] 200
[2026-10-28 01:54:53,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:54:53,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:54:53,504.504 INFO    ] No update needed
[2026-10-28 01:54:53,506.506 INFO    ] Checking for camera pi updates...
[2026-10-28 01:54:53,544.544 INFO    ] 200
[2026-10-28 01:54:53,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:54:53,588.588 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:54:53,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:54:53,669.669 INFO    ] No camera update needed
[2026-10-28 01:54:53,672.672 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:54:53,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:54:53,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:54:53,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:54:55,724.724 INFO    ] ================================================
[2026-10-28 01:54:55,740.740 INFO    ] Launching Daemon at Wed Oct 28 01:54:55 IST 2026
[2026-10-28 01:54:55,751.751 INFO    ] ================================================
[2026-10-28 01:54:56,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:54:56
[2026-10-28 01:54:56,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:54:57,151.151 INFO    ] Initializing speech engine...
[2026-10-28 01:54:57,166.166 INFO    ] 2026-10-28 01:54:57
[2026-10-28 01:54:57,431.431 INFO    ] 2026-10-28 01:54:57
[2026-10-28 01:54:57,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:54:57,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:54:57,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:54:57,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:54:57,996.996 INFO    ] time= 28/10/2026 01:54:57
[2026-10-28 01:54:58,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:54:58,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:54:58,152.152 INFO    ] No existing commands found in stream
[2026-10-28 01:55:03,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:55:03,169.169 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-28 01:55:06,856.856 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:55:06,859.859 INFO    ] Checking for system updates...
[2026-10-28 01:55:06,895.895 INFO    ] 200
[2026-10-28 01:55:06,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:55:06,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:55:06,954.954 INFO    ] No update needed
[2026-10-28 01:55:06,957.957 INFO    ] Checking for camera pi updates...
[2026-10-28 01:55:06,996.996 INFO    ] 200
[2026-10-28 01:55:06,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:55:07,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:55:07,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:55:07,140.140 INFO    ] No camera update needed
[2026-10-28 01:55:07,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:55:07,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:55:07,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:55:07,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:55:09,199.199 INFO    ] ================================================
[2026-10-28 01:55:09,215.215 INFO    ] Launching Daemon at Wed Oct 28 01:55:09 IST 2026
[2026-10-28 01:55:09,227.227 INFO    ] ================================================
[2026-10-28 01:55:09,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:55:09
[2026-10-28 01:55:10,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:55:10,684.684 INFO    ] Initializing speech engine...
[2026-10-28 01:55:10,696.696 INFO    ] 2026-10-28 01:55:10
[2026-10-28 01:55:10,941.941 INFO    ] 2026-10-28 01:55:10
[2026-10-28 01:55:10,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:55:11,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:55:11,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:55:11,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:55:11,501.501 INFO    ] time= 28/10/2026 01:55:11
[2026-10-28 01:55:11,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:55:11,541.541 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:55:11,689.689 INFO    ] No existing commands found in stream
[2026-10-28 01:55:16,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:55:16,717.717 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 01:55:18,319.319 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:55:18,321.321 INFO    ] Checking for system updates...
[2026-10-28 01:55:18,361.361 INFO    ] 200
[2026-10-28 01:55:18,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:55:18,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:55:18,426.426 INFO    ] No update needed
[2026-10-28 01:55:18,429.429 INFO    ] Checking for camera pi updates...
[2026-10-28 01:55:18,467.467 INFO    ] 200
[2026-10-28 01:55:18,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:55:18,515.515 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:55:18,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:55:18,597.597 INFO    ] No camera update needed
[2026-10-28 01:55:18,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:55:18,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:55:18,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:55:18,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:55:20,652.652 INFO    ] ================================================
[2026-10-28 01:55:20,668.668 INFO    ] Launching Daemon at Wed Oct 28 01:55:20 IST 2026
[2026-10-28 01:55:20,679.679 INFO    ] ================================================
[2026-10-28 01:55:21,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:55:21
[2026-10-28 01:55:21,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:55:22,098.098 INFO    ] Initializing speech engine...
[2026-10-28 01:55:22,104.104 INFO    ] 2026-10-28 01:55:22
[2026-10-28 01:55:22,361.361 INFO    ] 2026-10-28 01:55:22
[2026-10-28 01:55:22,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:55:22,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:55:22,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:55:22,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:55:22,904.904 INFO    ] time= 28/10/2026 01:55:22
[2026-10-28 01:55:22,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:55:22,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:55:23,070.070 INFO    ] No existing commands found in stream
[2026-10-28 01:55:28,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:55:28,098.098 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-28 01:55:28,939.939 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:55:28,942.942 INFO    ] Checking for system updates...
[2026-10-28 01:55:28,980.980 INFO    ] 200
[2026-10-28 01:55:28,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:55:29,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:55:29,039.039 INFO    ] No update needed
[2026-10-28 01:55:29,042.042 INFO    ] Checking for camera pi updates...
[2026-10-28 01:55:29,081.081 INFO    ] 200
[2026-10-28 01:55:29,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:55:29,136.136 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:55:29,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:55:29,226.226 INFO    ] No camera update needed
[2026-10-28 01:55:29,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:55:29,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:55:29,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:55:29,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:55:31,288.288 INFO    ] ================================================
[2026-10-28 01:55:31,304.304 INFO    ] Launching Daemon at Wed Oct 28 01:55:31 IST 2026
[2026-10-28 01:55:31,315.315 INFO    ] ================================================
[2026-10-28 01:55:32,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:55:32
[2026-10-28 01:55:32,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:55:33,073.073 INFO    ] Initializing speech engine...
[2026-10-28 01:55:33,084.084 INFO    ] 2026-10-28 01:55:33
[2026-10-28 01:55:33,397.397 INFO    ] 2026-10-28 01:55:33
[2026-10-28 01:55:33,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:55:33,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:55:33,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:55:33,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:55:33,920.920 INFO    ] time= 28/10/2026 01:55:33
[2026-10-28 01:55:33,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:55:33,955.955 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:55:34,092.092 INFO    ] No existing commands found in stream
[2026-10-28 01:55:39,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:55:39,127.127 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-28 01:55:41,424.424 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:55:41,427.427 INFO    ] Checking for system updates...
[2026-10-28 01:55:41,464.464 INFO    ] 200
[2026-10-28 01:55:41,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:55:41,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:55:41,521.521 INFO    ] No update needed
[2026-10-28 01:55:41,524.524 INFO    ] Checking for camera pi updates...
[2026-10-28 01:55:41,557.557 INFO    ] 200
[2026-10-28 01:55:41,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:55:41,600.600 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:55:41,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:55:41,696.696 INFO    ] No camera update needed
[2026-10-28 01:55:41,698.698 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:55:41,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:55:41,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:55:41,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:55:43,752.752 INFO    ] ================================================
[2026-10-28 01:55:43,768.768 INFO    ] Launching Daemon at Wed Oct 28 01:55:43 IST 2026
[2026-10-28 01:55:43,779.779 INFO    ] ================================================
[2026-10-28 01:55:44,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:55:44
[2026-10-28 01:55:44,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:55:45,195.195 INFO    ] Initializing speech engine...
[2026-10-28 01:55:45,220.220 INFO    ] 2026-10-28 01:55:45
[2026-10-28 01:55:45,499.499 INFO    ] 2026-10-28 01:55:45
[2026-10-28 01:55:45,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:55:45,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:55:45,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:55:45,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:55:45,998.998 INFO    ] time= 28/10/2026 01:55:45
[2026-10-28 01:55:46,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:55:46,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:55:46,200.200 INFO    ] No existing commands found in stream
[2026-10-28 01:55:51,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:55:51,215.215 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 01:55:55,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:55:55,204.204 INFO    ] Checking for system updates...
[2026-10-28 01:55:55,244.244 INFO    ] 200
[2026-10-28 01:55:55,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:55:55,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:55:55,308.308 INFO    ] No update needed
[2026-10-28 01:55:55,310.310 INFO    ] Checking for camera pi updates...
[2026-10-28 01:55:55,348.348 INFO    ] 200
[2026-10-28 01:55:55,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:55:55,396.396 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:55:55,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:55:55,447.447 INFO    ] No camera update needed
[2026-10-28 01:55:55,450.450 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:55:55,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:55:55,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:55:55,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:55:57,503.503 INFO    ] ================================================
[2026-10-28 01:55:57,518.518 INFO    ] Launching Daemon at Wed Oct 28 01:55:57 IST 2026
[2026-10-28 01:55:57,529.529 INFO    ] ================================================
[2026-10-28 01:55:58,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:55:58
[2026-10-28 01:55:58,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:55:58,962.962 INFO    ] Initializing speech engine...
[2026-10-28 01:55:58,971.971 INFO    ] 2026-10-28 01:55:58
[2026-10-28 01:55:59,219.219 INFO    ] 2026-10-28 01:55:59
[2026-10-28 01:55:59,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:55:59,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:55:59,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:55:59,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:55:59,714.714 INFO    ] time= 28/10/2026 01:55:59
[2026-10-28 01:55:59,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:55:59,789.789 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:55:59,933.933 INFO    ] No existing commands found in stream
[2026-10-28 01:56:04,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:56:04,949.949 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-28 01:56:09,239.239 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:56:09,242.242 INFO    ] Checking for system updates...
[2026-10-28 01:56:09,278.278 INFO    ] 200
[2026-10-28 01:56:09,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:56:09,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:56:09,345.345 INFO    ] No update needed
[2026-10-28 01:56:09,347.347 INFO    ] Checking for camera pi updates...
[2026-10-28 01:56:09,382.382 INFO    ] 200
[2026-10-28 01:56:09,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:56:09,436.436 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:56:09,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:56:09,544.544 INFO    ] No camera update needed
[2026-10-28 01:56:09,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:56:09,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:56:09,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:56:09,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:56:11,602.602 INFO    ] ================================================
[2026-10-28 01:56:11,617.617 INFO    ] Launching Daemon at Wed Oct 28 01:56:11 IST 2026
[2026-10-28 01:56:11,628.628 INFO    ] ================================================
[2026-10-28 01:56:12,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:56:12
[2026-10-28 01:56:12,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:56:13,044.044 INFO    ] Initializing speech engine...
[2026-10-28 01:56:13,053.053 INFO    ] 2026-10-28 01:56:13
[2026-10-28 01:56:13,298.298 INFO    ] 2026-10-28 01:56:13
[2026-10-28 01:56:13,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:56:13,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:56:13,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:56:13,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:56:13,854.854 INFO    ] time= 28/10/2026 01:56:13
[2026-10-28 01:56:13,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:56:13,900.900 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:56:14,006.006 INFO    ] No existing commands found in stream
[2026-10-28 01:56:19,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:56:19,029.029 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-28 01:56:23,158.158 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:56:23,161.161 INFO    ] Checking for system updates...
[2026-10-28 01:56:23,198.198 INFO    ] 200
[2026-10-28 01:56:23,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:56:23,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:56:23,267.267 INFO    ] No update needed
[2026-10-28 01:56:23,270.270 INFO    ] Checking for camera pi updates...
[2026-10-28 01:56:23,305.305 INFO    ] 200
[2026-10-28 01:56:23,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:56:23,350.350 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:56:23,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:56:23,456.456 INFO    ] No camera update needed
[2026-10-28 01:56:23,459.459 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:56:23,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:56:23,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:56:23,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:56:25,520.520 INFO    ] ================================================
[2026-10-28 01:56:25,536.536 INFO    ] Launching Daemon at Wed Oct 28 01:56:25 IST 2026
[2026-10-28 01:56:25,547.547 INFO    ] ================================================
[2026-10-28 01:56:26,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:56:26
[2026-10-28 01:56:26,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:56:27,199.199 INFO    ] Initializing speech engine...
[2026-10-28 01:56:27,208.208 INFO    ] 2026-10-28 01:56:27
[2026-10-28 01:56:27,502.502 INFO    ] 2026-10-28 01:56:27
[2026-10-28 01:56:27,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:56:27,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:56:27,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:56:28,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:56:28,071.071 INFO    ] time= 28/10/2026 01:56:28
[2026-10-28 01:56:28,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:56:28,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:56:28,237.237 INFO    ] No existing commands found in stream
[2026-10-28 01:56:33,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:56:33,267.267 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 01:56:33,904.904 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:56:33,907.907 INFO    ] Checking for system updates...
[2026-10-28 01:56:33,949.949 INFO    ] 200
[2026-10-28 01:56:33,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:56:34,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:56:34,017.017 INFO    ] No update needed
[2026-10-28 01:56:34,020.020 INFO    ] Checking for camera pi updates...
[2026-10-28 01:56:34,060.060 INFO    ] 200
[2026-10-28 01:56:34,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:56:34,111.111 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:56:34,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:56:34,195.195 INFO    ] No camera update needed
[2026-10-28 01:56:34,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:56:34,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:56:34,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:56:34,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:56:36,255.255 INFO    ] ================================================
[2026-10-28 01:56:36,270.270 INFO    ] Launching Daemon at Wed Oct 28 01:56:36 IST 2026
[2026-10-28 01:56:36,280.280 INFO    ] ================================================
[2026-10-28 01:56:36,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:56:36
[2026-10-28 01:56:37,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:56:37,962.962 INFO    ] Initializing speech engine...
[2026-10-28 01:56:37,974.974 INFO    ] 2026-10-28 01:56:37
[2026-10-28 01:56:38,285.285 INFO    ] 2026-10-28 01:56:38
[2026-10-28 01:56:38,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:56:38,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:56:38,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:56:38,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:56:38,807.807 INFO    ] time= 28/10/2026 01:56:38
[2026-10-28 01:56:38,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:56:38,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:56:38,987.987 INFO    ] No existing commands found in stream
[2026-10-28 01:56:44,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:56:44,022.022 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-28 01:56:48,361.361 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:56:48,365.365 INFO    ] Checking for system updates...
[2026-10-28 01:56:48,402.402 INFO    ] 200
[2026-10-28 01:56:48,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:56:48,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:56:48,460.460 INFO    ] No update needed
[2026-10-28 01:56:48,463.463 INFO    ] Checking for camera pi updates...
[2026-10-28 01:56:48,501.501 INFO    ] 200
[2026-10-28 01:56:48,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:56:48,544.544 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:56:48,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:56:48,621.621 INFO    ] No camera update needed
[2026-10-28 01:56:48,624.624 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:56:48,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:56:48,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:56:48,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:56:50,676.676 INFO    ] ================================================
[2026-10-28 01:56:50,693.693 INFO    ] Launching Daemon at Wed Oct 28 01:56:50 IST 2026
[2026-10-28 01:56:50,704.704 INFO    ] ================================================
[2026-10-28 01:56:51,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:56:51
[2026-10-28 01:56:52,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:56:52,398.398 INFO    ] Initializing speech engine...
[2026-10-28 01:56:52,410.410 INFO    ] 2026-10-28 01:56:52
[2026-10-28 01:56:52,700.700 INFO    ] 2026-10-28 01:56:52
[2026-10-28 01:56:52,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:56:53,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:56:53,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:56:53,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:56:53,457.457 INFO    ] time= 28/10/2026 01:56:53
[2026-10-28 01:56:53,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:56:53,546.546 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:56:53,738.738 INFO    ] No existing commands found in stream
[2026-10-28 01:56:58,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:56:58,773.773 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-28 01:57:01,959.959 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:57:01,965.965 INFO    ] Checking for system updates...
[2026-10-28 01:57:02,051.051 INFO    ] 200
[2026-10-28 01:57:02,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:57:02,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:57:02,167.167 INFO    ] No update needed
[2026-10-28 01:57:02,171.171 INFO    ] Checking for camera pi updates...
[2026-10-28 01:57:02,231.231 INFO    ] 200
[2026-10-28 01:57:02,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:57:02,290.290 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:57:02,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:57:02,423.423 INFO    ] No camera update needed
[2026-10-28 01:57:02,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:57:02,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:57:02,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:57:02,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:57:04,484.484 INFO    ] ================================================
[2026-10-28 01:57:04,500.500 INFO    ] Launching Daemon at Wed Oct 28 01:57:04 IST 2026
[2026-10-28 01:57:04,511.511 INFO    ] ================================================
[2026-10-28 01:57:05,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:57:05
[2026-10-28 01:57:05,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:57:06,121.121 INFO    ] Initializing speech engine...
[2026-10-28 01:57:06,134.134 INFO    ] 2026-10-28 01:57:06
[2026-10-28 01:57:06,401.401 INFO    ] 2026-10-28 01:57:06
[2026-10-28 01:57:06,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:57:06,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:57:06,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:57:06,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:57:06,983.983 INFO    ] time= 28/10/2026 01:57:06
[2026-10-28 01:57:07,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:57:07,023.023 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:57:07,156.156 INFO    ] No existing commands found in stream
[2026-10-28 01:57:12,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:57:12,190.190 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-28 01:57:13,480.480 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:57:13,483.483 INFO    ] Checking for system updates...
[2026-10-28 01:57:13,523.523 INFO    ] 200
[2026-10-28 01:57:13,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:57:13,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:57:13,581.581 INFO    ] No update needed
[2026-10-28 01:57:13,583.583 INFO    ] Checking for camera pi updates...
[2026-10-28 01:57:13,617.617 INFO    ] 200
[2026-10-28 01:57:13,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:57:13,659.659 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:57:13,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:57:13,839.839 INFO    ] No camera update needed
[2026-10-28 01:57:13,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:57:13,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:57:13,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:57:13,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:57:15,895.895 INFO    ] ================================================
[2026-10-28 01:57:15,911.911 INFO    ] Launching Daemon at Wed Oct 28 01:57:15 IST 2026
[2026-10-28 01:57:15,922.922 INFO    ] ================================================
[2026-10-28 01:57:16,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:57:16
[2026-10-28 01:57:17,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:57:17,330.330 INFO    ] Initializing speech engine...
[2026-10-28 01:57:17,347.347 INFO    ] 2026-10-28 01:57:17
[2026-10-28 01:57:17,632.632 INFO    ] 2026-10-28 01:57:17
[2026-10-28 01:57:17,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:57:17,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:57:17,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:57:18,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:57:18,086.086 INFO    ] time= 28/10/2026 01:57:18
[2026-10-28 01:57:18,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:57:18,139.139 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:57:18,282.282 INFO    ] No existing commands found in stream
[2026-10-28 01:57:23,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:57:23,295.295 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-28 01:57:26,645.645 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:57:26,648.648 INFO    ] Checking for system updates...
[2026-10-28 01:57:26,685.685 INFO    ] 200
[2026-10-28 01:57:26,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:57:26,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:57:26,751.751 INFO    ] No update needed
[2026-10-28 01:57:26,755.755 INFO    ] Checking for camera pi updates...
[2026-10-28 01:57:26,789.789 INFO    ] 200
[2026-10-28 01:57:26,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:57:26,833.833 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:57:26,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:57:26,905.905 INFO    ] No camera update needed
[2026-10-28 01:57:26,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:57:26,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:57:26,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:57:26,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:57:28,966.966 INFO    ] ================================================
[2026-10-28 01:57:28,981.981 INFO    ] Launching Daemon at Wed Oct 28 01:57:28 IST 2026
[2026-10-28 01:57:28,992.992 INFO    ] ================================================
[2026-10-28 01:57:29,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:57:29
[2026-10-28 01:57:30,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:57:30,588.588 INFO    ] Initializing speech engine...
[2026-10-28 01:57:30,603.603 INFO    ] 2026-10-28 01:57:30
[2026-10-28 01:57:30,885.885 INFO    ] 2026-10-28 01:57:30
[2026-10-28 01:57:30,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:57:31,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:57:31,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:57:31,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:57:31,476.476 INFO    ] time= 28/10/2026 01:57:31
[2026-10-28 01:57:31,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:57:31,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:57:31,766.766 INFO    ] No existing commands found in stream
[2026-10-28 01:57:36,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:57:36,801.801 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-28 01:57:39,782.782 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:57:39,785.785 INFO    ] Checking for system updates...
[2026-10-28 01:57:39,820.820 INFO    ] 200
[2026-10-28 01:57:39,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:57:39,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:57:39,895.895 INFO    ] No update needed
[2026-10-28 01:57:39,898.898 INFO    ] Checking for camera pi updates...
[2026-10-28 01:57:39,931.931 INFO    ] 200
[2026-10-28 01:57:39,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:57:39,975.975 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:57:40,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:57:40,053.053 INFO    ] No camera update needed
[2026-10-28 01:57:40,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:57:40,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:57:40,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:57:40,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:57:42,110.110 INFO    ] ================================================
[2026-10-28 01:57:42,125.125 INFO    ] Launching Daemon at Wed Oct 28 01:57:42 IST 2026
[2026-10-28 01:57:42,136.136 INFO    ] ================================================
[2026-10-28 01:57:42,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:57:42
[2026-10-28 01:57:43,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:57:43,779.779 INFO    ] Initializing speech engine...
[2026-10-28 01:57:43,794.794 INFO    ] 2026-10-28 01:57:43
[2026-10-28 01:57:44,065.065 INFO    ] 2026-10-28 01:57:44
[2026-10-28 01:57:44,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:57:44,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:57:44,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:57:44,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:57:44,665.665 INFO    ] time= 28/10/2026 01:57:44
[2026-10-28 01:57:44,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:57:44,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:57:44,868.868 INFO    ] No existing commands found in stream
[2026-10-28 01:57:49,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:57:49,897.897 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 01:57:54,099.099 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 01:57:54,102.102 INFO    ] Checking for system updates...
[2026-10-28 01:57:54,138.138 INFO    ] 200
[2026-10-28 01:57:54,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:57:54,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:57:54,195.195 INFO    ] No update needed
[2026-10-28 01:57:54,198.198 INFO    ] Checking for camera pi updates...
[2026-10-28 01:57:54,232.232 INFO    ] 200
[2026-10-28 01:57:54,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:57:54,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:57:54,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:57:54,361.361 INFO    ] No camera update needed
[2026-10-28 01:57:54,363.363 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:57:54,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:57:54,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:57:54,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:57:56,418.418 INFO    ] ================================================
[2026-10-28 01:57:56,434.434 INFO    ] Launching Daemon at Wed Oct 28 01:57:56 IST 2026
[2026-10-28 01:57:56,445.445 INFO    ] ================================================
[2026-10-28 01:57:57,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:57:57
[2026-10-28 01:57:57,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:57:57,902.902 INFO    ] Initializing speech engine...
[2026-10-28 01:57:57,908.908 INFO    ] 2026-10-28 01:57:57
[2026-10-28 01:57:58,209.209 INFO    ] 2026-10-28 01:57:58
[2026-10-28 01:57:58,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:57:58,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:57:58,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:57:58,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:57:58,733.733 INFO    ] time= 28/10/2026 01:57:58
[2026-10-28 01:57:58,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:57:58,836.836 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:57:58,936.936 INFO    ] No existing commands found in stream
[2026-10-28 01:58:03,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:58:03,959.959 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-28 01:58:08,120.120 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:58:08,122.122 INFO    ] Checking for system updates...
[2026-10-28 01:58:08,162.162 INFO    ] 200
[2026-10-28 01:58:08,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:58:08,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:58:08,220.220 INFO    ] No update needed
[2026-10-28 01:58:08,222.222 INFO    ] Checking for camera pi updates...
[2026-10-28 01:58:08,256.256 INFO    ] 200
[2026-10-28 01:58:08,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:58:08,298.298 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:58:08,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:58:08,384.384 INFO    ] No camera update needed
[2026-10-28 01:58:08,386.386 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:58:08,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:58:08,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:58:08,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:58:10,438.438 INFO    ] ================================================
[2026-10-28 01:58:10,454.454 INFO    ] Launching Daemon at Wed Oct 28 01:58:10 IST 2026
[2026-10-28 01:58:10,465.465 INFO    ] ================================================
[2026-10-28 01:58:11,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:58:11
[2026-10-28 01:58:11,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:58:11,900.900 INFO    ] Initializing speech engine...
[2026-10-28 01:58:11,906.906 INFO    ] 2026-10-28 01:58:11
[2026-10-28 01:58:12,164.164 INFO    ] 2026-10-28 01:58:12
[2026-10-28 01:58:12,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:58:12,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:58:12,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:58:12,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:58:12,707.707 INFO    ] time= 28/10/2026 01:58:12
[2026-10-28 01:58:12,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:58:12,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:58:12,888.888 INFO    ] No existing commands found in stream
[2026-10-28 01:58:17,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:58:17,927.927 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 01:58:19,250.250 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 01:58:19,252.252 INFO    ] Checking for system updates...
[2026-10-28 01:58:19,288.288 INFO    ] 200
[2026-10-28 01:58:19,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:58:19,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:58:19,347.347 INFO    ] No update needed
[2026-10-28 01:58:19,349.349 INFO    ] Checking for camera pi updates...
[2026-10-28 01:58:19,383.383 INFO    ] 200
[2026-10-28 01:58:19,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:58:19,426.426 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:58:19,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:58:19,507.507 INFO    ] No camera update needed
[2026-10-28 01:58:19,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:58:19,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:58:19,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:58:19,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:58:21,564.564 INFO    ] ================================================
[2026-10-28 01:58:21,580.580 INFO    ] Launching Daemon at Wed Oct 28 01:58:21 IST 2026
[2026-10-28 01:58:21,591.591 INFO    ] ================================================
[2026-10-28 01:58:22,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:58:22
[2026-10-28 01:58:22,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:58:23,007.007 INFO    ] Initializing speech engine...
[2026-10-28 01:58:23,016.016 INFO    ] 2026-10-28 01:58:23
[2026-10-28 01:58:23,261.261 INFO    ] 2026-10-28 01:58:23
[2026-10-28 01:58:23,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:58:23,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:58:23,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:58:23,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:58:23,813.813 INFO    ] time= 28/10/2026 01:58:23
[2026-10-28 01:58:23,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:58:23,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:58:23,968.968 INFO    ] No existing commands found in stream
[2026-10-28 01:58:28,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:58:28,989.989 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-28 01:58:31,741.741 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:58:31,744.744 INFO    ] Checking for system updates...
[2026-10-28 01:58:31,789.789 INFO    ] 200
[2026-10-28 01:58:31,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:58:31,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:58:31,856.856 INFO    ] No update needed
[2026-10-28 01:58:31,859.859 INFO    ] Checking for camera pi updates...
[2026-10-28 01:58:31,899.899 INFO    ] 200
[2026-10-28 01:58:31,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:58:31,946.946 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:58:32,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:58:32,079.079 INFO    ] No camera update needed
[2026-10-28 01:58:32,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:58:32,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:58:32,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:58:32,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:58:34,137.137 INFO    ] ================================================
[2026-10-28 01:58:34,153.153 INFO    ] Launching Daemon at Wed Oct 28 01:58:34 IST 2026
[2026-10-28 01:58:34,164.164 INFO    ] ================================================
[2026-10-28 01:58:34,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:58:34
[2026-10-28 01:58:35,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:58:35,581.581 INFO    ] Initializing speech engine...
[2026-10-28 01:58:35,593.593 INFO    ] 2026-10-28 01:58:35
[2026-10-28 01:58:35,848.848 INFO    ] 2026-10-28 01:58:35
[2026-10-28 01:58:35,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:58:36,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:58:36,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:58:36,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:58:36,413.413 INFO    ] time= 28/10/2026 01:58:36
[2026-10-28 01:58:36,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:58:36,439.439 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:58:36,569.569 INFO    ] No existing commands found in stream
[2026-10-28 01:58:41,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:58:41,586.586 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-28 01:58:43,678.678 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:58:43,681.681 INFO    ] Checking for system updates...
[2026-10-28 01:58:43,716.716 INFO    ] 200
[2026-10-28 01:58:43,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:58:43,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:58:43,773.773 INFO    ] No update needed
[2026-10-28 01:58:43,776.776 INFO    ] Checking for camera pi updates...
[2026-10-28 01:58:43,809.809 INFO    ] 200
[2026-10-28 01:58:43,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:58:43,851.851 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:58:43,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:58:43,925.925 INFO    ] No camera update needed
[2026-10-28 01:58:43,927.927 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:58:43,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:58:43,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:58:43,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:58:45,983.983 INFO    ] ================================================
[2026-10-28 01:58:46,999.999 INFO    ] Launching Daemon at Wed Oct 28 01:58:45 IST 2026
[2026-10-28 01:58:46,010.010 INFO    ] ================================================
[2026-10-28 01:58:46,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:58:46
[2026-10-28 01:58:47,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:58:47,639.639 INFO    ] Initializing speech engine...
[2026-10-28 01:58:47,645.645 INFO    ] 2026-10-28 01:58:47
[2026-10-28 01:58:47,939.939 INFO    ] 2026-10-28 01:58:47
[2026-10-28 01:58:47,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:58:48,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:58:48,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:58:48,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:58:48,512.512 INFO    ] time= 28/10/2026 01:58:48
[2026-10-28 01:58:48,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:58:48,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:58:48,670.670 INFO    ] No existing commands found in stream
[2026-10-28 01:58:53,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:58:53,710.710 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-28 01:58:56,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:58:56,703.703 INFO    ] Checking for system updates...
[2026-10-28 01:58:56,741.741 INFO    ] 200
[2026-10-28 01:58:56,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:58:56,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:58:56,802.802 INFO    ] No update needed
[2026-10-28 01:58:56,804.804 INFO    ] Checking for camera pi updates...
[2026-10-28 01:58:56,843.843 INFO    ] 200
[2026-10-28 01:58:56,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:58:56,888.888 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:58:56,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:58:56,973.973 INFO    ] No camera update needed
[2026-10-28 01:58:56,976.976 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:58:56,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:58:56,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:58:56,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:58:59,033.033 INFO    ] ================================================
[2026-10-28 01:58:59,048.048 INFO    ] Launching Daemon at Wed Oct 28 01:58:59 IST 2026
[2026-10-28 01:58:59,060.060 INFO    ] ================================================
[2026-10-28 01:58:59,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:58:59
[2026-10-28 01:59:00,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:59:00,569.569 INFO    ] Initializing speech engine...
[2026-10-28 01:59:00,578.578 INFO    ] 2026-10-28 01:59:00
[2026-10-28 01:59:00,828.828 INFO    ] 2026-10-28 01:59:00
[2026-10-28 01:59:00,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:59:01,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:59:01,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:59:01,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:59:01,366.366 INFO    ] time= 28/10/2026 01:59:01
[2026-10-28 01:59:01,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:59:01,378.378 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:59:01,464.464 INFO    ] No existing commands found in stream
[2026-10-28 01:59:06,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:59:06,477.477 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-28 01:59:09,297.297 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:59:09,300.300 INFO    ] Checking for system updates...
[2026-10-28 01:59:09,336.336 INFO    ] 200
[2026-10-28 01:59:09,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:59:09,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:59:09,400.400 INFO    ] No update needed
[2026-10-28 01:59:09,402.402 INFO    ] Checking for camera pi updates...
[2026-10-28 01:59:09,435.435 INFO    ] 200
[2026-10-28 01:59:09,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:59:09,477.477 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:59:09,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:59:09,586.586 INFO    ] No camera update needed
[2026-10-28 01:59:09,588.588 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:59:09,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:59:09,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:59:09,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:59:11,642.642 INFO    ] ================================================
[2026-10-28 01:59:11,657.657 INFO    ] Launching Daemon at Wed Oct 28 01:59:11 IST 2026
[2026-10-28 01:59:11,668.668 INFO    ] ================================================
[2026-10-28 01:59:12,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:59:12
[2026-10-28 01:59:12,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:59:13,089.089 INFO    ] Initializing speech engine...
[2026-10-28 01:59:13,098.098 INFO    ] 2026-10-28 01:59:13
[2026-10-28 01:59:13,344.344 INFO    ] 2026-10-28 01:59:13
[2026-10-28 01:59:13,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:59:13,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:59:13,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:59:13,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:59:13,899.899 INFO    ] time= 28/10/2026 01:59:13
[2026-10-28 01:59:13,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:59:13,923.923 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:59:14,053.053 INFO    ] No existing commands found in stream
[2026-10-28 01:59:19,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:59:19,079.079 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 01:59:23,238.238 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 01:59:23,240.240 INFO    ] Checking for system updates...
[2026-10-28 01:59:23,276.276 INFO    ] 200
[2026-10-28 01:59:23,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:59:23,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:59:23,334.334 INFO    ] No update needed
[2026-10-28 01:59:23,336.336 INFO    ] Checking for camera pi updates...
[2026-10-28 01:59:23,370.370 INFO    ] 200
[2026-10-28 01:59:23,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:59:23,415.415 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:59:23,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 01:59:23,600.600 INFO    ] No camera update needed
[2026-10-28 01:59:23,602.602 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:59:23,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:59:23,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:59:23,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:59:25,657.657 INFO    ] ================================================
[2026-10-28 01:59:25,672.672 INFO    ] Launching Daemon at Wed Oct 28 01:59:25 IST 2026
[2026-10-28 01:59:25,682.682 INFO    ] ================================================
[2026-10-28 01:59:26,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:59:26
[2026-10-28 01:59:26,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:59:27,134.134 INFO    ] Initializing speech engine...
[2026-10-28 01:59:27,143.143 INFO    ] 2026-10-28 01:59:27
[2026-10-28 01:59:27,392.392 INFO    ] 2026-10-28 01:59:27
[2026-10-28 01:59:27,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:59:27,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:59:27,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:59:27,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:59:27,948.948 INFO    ] time= 28/10/2026 01:59:27
[2026-10-28 01:59:27,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:59:27,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:59:28,107.107 INFO    ] No existing commands found in stream
[2026-10-28 01:59:33,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:59:33,133.133 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-28 01:59:35,001.001 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 01:59:35,004.004 INFO    ] Checking for system updates...
[2026-10-28 01:59:35,040.040 INFO    ] 200
[2026-10-28 01:59:35,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:59:35,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:59:35,099.099 INFO    ] No update needed
[2026-10-28 01:59:35,102.102 INFO    ] Checking for camera pi updates...
[2026-10-28 01:59:35,136.136 INFO    ] 200
[2026-10-28 01:59:35,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:59:35,180.180 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:59:35,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:59:35,265.265 INFO    ] No camera update needed
[2026-10-28 01:59:35,267.267 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:59:35,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:59:35,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:59:35,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:59:37,320.320 INFO    ] ================================================
[2026-10-28 01:59:37,335.335 INFO    ] Launching Daemon at Wed Oct 28 01:59:37 IST 2026
[2026-10-28 01:59:37,346.346 INFO    ] ================================================
[2026-10-28 01:59:37,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:59:37
[2026-10-28 01:59:38,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:59:38,799.799 INFO    ] Initializing speech engine...
[2026-10-28 01:59:38,810.810 INFO    ] 2026-10-28 01:59:38
[2026-10-28 01:59:39,062.062 INFO    ] 2026-10-28 01:59:39
[2026-10-28 01:59:39,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:59:39,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:59:39,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:59:39,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:59:39,651.651 INFO    ] time= 28/10/2026 01:59:39
[2026-10-28 01:59:39,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:59:39,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:59:39,783.783 INFO    ] No existing commands found in stream
[2026-10-28 01:59:44,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:59:44,816.816 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-28 01:59:46,839.839 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 01:59:46,842.842 INFO    ] Checking for system updates...
[2026-10-28 01:59:46,877.877 INFO    ] 200
[2026-10-28 01:59:46,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:59:46,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:59:46,936.936 INFO    ] No update needed
[2026-10-28 01:59:46,939.939 INFO    ] Checking for camera pi updates...
[2026-10-28 01:59:46,978.978 INFO    ] 200
[2026-10-28 01:59:46,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:59:47,020.020 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:59:47,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:59:47,104.104 INFO    ] No camera update needed
[2026-10-28 01:59:47,106.106 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:59:47,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:59:47,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:59:47,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 01:59:49,160.160 INFO    ] ================================================
[2026-10-28 01:59:49,175.175 INFO    ] Launching Daemon at Wed Oct 28 01:59:49 IST 2026
[2026-10-28 01:59:49,186.186 INFO    ] ================================================
[2026-10-28 01:59:49,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 01:59:49
[2026-10-28 01:59:50,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 01:59:50,607.607 INFO    ] Initializing speech engine...
[2026-10-28 01:59:50,616.616 INFO    ] 2026-10-28 01:59:50
[2026-10-28 01:59:50,866.866 INFO    ] 2026-10-28 01:59:50
[2026-10-28 01:59:50,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 01:59:51,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 01:59:51,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 01:59:51,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 01:59:51,429.429 INFO    ] time= 28/10/2026 01:59:51
[2026-10-28 01:59:51,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 01:59:51,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-28 01:59:51,612.612 INFO    ] No existing commands found in stream
[2026-10-28 01:59:56,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 01:59:56,648.648 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 01:59:58,121.121 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 01:59:58,124.124 INFO    ] Checking for system updates...
[2026-10-28 01:59:58,159.159 INFO    ] 200
[2026-10-28 01:59:58,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:59:58,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:59:58,221.221 INFO    ] No update needed
[2026-10-28 01:59:58,224.224 INFO    ] Checking for camera pi updates...
[2026-10-28 01:59:58,258.258 INFO    ] 200
[2026-10-28 01:59:58,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 01:59:58,301.301 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 01:59:58,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 01:59:58,405.405 INFO    ] No camera update needed
[2026-10-28 01:59:58,408.408 INFO    ] Script finished. Safe exiting...
[2026-10-28 01:59:58,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 01:59:58,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 01:59:58,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:00:00,461.461 INFO    ] ================================================
[2026-10-28 02:00:00,476.476 INFO    ] Launching Daemon at Wed Oct 28 02:00:00 IST 2026
[2026-10-28 02:00:00,487.487 INFO    ] ================================================
[2026-10-28 02:00:01,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:00:01
[2026-10-28 02:00:03,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:00:04,616.616 INFO    ] Initializing speech engine...
[2026-10-28 02:00:04,619.619 INFO    ] 2026-10-28 02:00:04
[2026-10-28 02:00:05,788.788 INFO    ] 2026-10-28 02:00:05
[2026-10-28 02:00:05,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:00:06,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:00:06,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:00:06,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:00:06,416.416 INFO    ] time= 28/10/2026 02:00:06
[2026-10-28 02:00:06,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:00:06,445.445 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:00:06,579.579 INFO    ] No existing commands found in stream
[2026-10-28 02:00:11,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:00:11,618.618 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 02:00:12,940.940 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:00:12,943.943 INFO    ] Checking for system updates...
[2026-10-28 02:00:12,982.982 INFO    ] 200
[2026-10-28 02:00:12,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:00:13,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:00:13,040.040 INFO    ] No update needed
[2026-10-28 02:00:13,042.042 INFO    ] Checking for camera pi updates...
[2026-10-28 02:00:13,076.076 INFO    ] 200
[2026-10-28 02:00:13,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:00:13,124.124 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:00:13,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:00:13,212.212 INFO    ] No camera update needed
[2026-10-28 02:00:13,215.215 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:00:13,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:00:13,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:00:13,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:00:15,271.271 INFO    ] ================================================
[2026-10-28 02:00:15,286.286 INFO    ] Launching Daemon at Wed Oct 28 02:00:15 IST 2026
[2026-10-28 02:00:15,297.297 INFO    ] ================================================
[2026-10-28 02:00:15,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:00:15
[2026-10-28 02:00:16,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:00:16,699.699 INFO    ] Initializing speech engine...
[2026-10-28 02:00:16,714.714 INFO    ] 2026-10-28 02:00:16
[2026-10-28 02:00:16,988.988 INFO    ] 2026-10-28 02:00:16
[2026-10-28 02:00:17,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:00:17,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:00:17,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:00:17,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:00:17,591.591 INFO    ] time= 28/10/2026 02:00:17
[2026-10-28 02:00:17,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:00:17,617.617 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:00:17,742.742 INFO    ] No existing commands found in stream
[2026-10-28 02:00:22,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:00:22,772.772 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 02:00:23,320.320 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:00:23,322.322 INFO    ] Checking for system updates...
[2026-10-28 02:00:23,357.357 INFO    ] 200
[2026-10-28 02:00:23,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:00:23,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:00:23,414.414 INFO    ] No update needed
[2026-10-28 02:00:23,416.416 INFO    ] Checking for camera pi updates...
[2026-10-28 02:00:23,452.452 INFO    ] 200
[2026-10-28 02:00:23,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:00:23,497.497 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:00:23,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:00:23,604.604 INFO    ] No camera update needed
[2026-10-28 02:00:23,606.606 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:00:23,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:00:23,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:00:23,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:00:25,658.658 INFO    ] ================================================
[2026-10-28 02:00:25,674.674 INFO    ] Launching Daemon at Wed Oct 28 02:00:25 IST 2026
[2026-10-28 02:00:25,685.685 INFO    ] ================================================
[2026-10-28 02:00:26,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:00:26
[2026-10-28 02:00:26,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:00:27,227.227 INFO    ] Initializing speech engine...
[2026-10-28 02:00:27,233.233 INFO    ] 2026-10-28 02:00:27
[2026-10-28 02:00:27,515.515 INFO    ] 2026-10-28 02:00:27
[2026-10-28 02:00:27,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:00:27,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:00:27,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:00:28,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:00:28,089.089 INFO    ] time= 28/10/2026 02:00:28
[2026-10-28 02:00:28,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:00:28,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:00:28,227.227 INFO    ] No existing commands found in stream
[2026-10-28 02:00:33,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:00:33,260.260 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-28 02:00:35,987.987 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:00:35,990.990 INFO    ] Checking for system updates...
[2026-10-28 02:00:36,027.027 INFO    ] 200
[2026-10-28 02:00:36,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:00:36,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:00:36,087.087 INFO    ] No update needed
[2026-10-28 02:00:36,089.089 INFO    ] Checking for camera pi updates...
[2026-10-28 02:00:36,124.124 INFO    ] 200
[2026-10-28 02:00:36,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:00:36,168.168 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:00:36,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:00:36,228.228 INFO    ] No camera update needed
[2026-10-28 02:00:36,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:00:36,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:00:36,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:00:36,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:00:38,285.285 INFO    ] ================================================
[2026-10-28 02:00:38,300.300 INFO    ] Launching Daemon at Wed Oct 28 02:00:38 IST 2026
[2026-10-28 02:00:38,311.311 INFO    ] ================================================
[2026-10-28 02:00:38,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:00:38
[2026-10-28 02:00:39,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:00:39,864.864 INFO    ] Initializing speech engine...
[2026-10-28 02:00:39,871.871 INFO    ] 2026-10-28 02:00:39
[2026-10-28 02:00:40,137.137 INFO    ] 2026-10-28 02:00:40
[2026-10-28 02:00:40,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:00:40,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:00:40,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:00:40,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:00:40,862.862 INFO    ] time= 28/10/2026 02:00:40
[2026-10-28 02:00:40,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:00:40,948.948 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:00:41,090.090 INFO    ] No existing commands found in stream
[2026-10-28 02:00:46,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:00:46,122.122 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-28 02:00:49,414.414 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:00:49,416.416 INFO    ] Checking for system updates...
[2026-10-28 02:00:49,451.451 INFO    ] 200
[2026-10-28 02:00:49,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:00:49,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:00:49,509.509 INFO    ] No update needed
[2026-10-28 02:00:49,512.512 INFO    ] Checking for camera pi updates...
[2026-10-28 02:00:49,545.545 INFO    ] 200
[2026-10-28 02:00:49,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:00:49,588.588 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:00:49,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:00:49,691.691 INFO    ] No camera update needed
[2026-10-28 02:00:49,694.694 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:00:49,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:00:49,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:00:49,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:00:51,746.746 INFO    ] ================================================
[2026-10-28 02:00:51,761.761 INFO    ] Launching Daemon at Wed Oct 28 02:00:51 IST 2026
[2026-10-28 02:00:51,771.771 INFO    ] ================================================
[2026-10-28 02:00:52,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:00:52
[2026-10-28 02:00:53,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:00:53,253.253 INFO    ] Initializing speech engine...
[2026-10-28 02:00:53,267.267 INFO    ] 2026-10-28 02:00:53
[2026-10-28 02:00:53,533.533 INFO    ] 2026-10-28 02:00:53
[2026-10-28 02:00:53,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:00:53,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:00:53,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:00:54,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:00:54,102.102 INFO    ] time= 28/10/2026 02:00:54
[2026-10-28 02:00:54,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:00:54,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:00:54,251.251 INFO    ] No existing commands found in stream
[2026-10-28 02:00:59,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:00:59,267.267 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-28 02:01:03,242.242 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:01:03,245.245 INFO    ] Checking for system updates...
[2026-10-28 02:01:03,299.299 INFO    ] 200
[2026-10-28 02:01:03,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:01:03,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:01:03,364.364 INFO    ] No update needed
[2026-10-28 02:01:03,367.367 INFO    ] Checking for camera pi updates...
[2026-10-28 02:01:03,407.407 INFO    ] 200
[2026-10-28 02:01:03,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:01:03,456.456 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:01:03,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:01:03,543.543 INFO    ] No camera update needed
[2026-10-28 02:01:03,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:01:03,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:01:03,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:01:03,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:01:05,609.609 INFO    ] ================================================
[2026-10-28 02:01:05,624.624 INFO    ] Launching Daemon at Wed Oct 28 02:01:05 IST 2026
[2026-10-28 02:01:05,634.634 INFO    ] ================================================
[2026-10-28 02:01:06,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:01:06
[2026-10-28 02:01:06,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:01:07,061.061 INFO    ] Initializing speech engine...
[2026-10-28 02:01:07,079.079 INFO    ] 2026-10-28 02:01:07
[2026-10-28 02:01:07,351.351 INFO    ] 2026-10-28 02:01:07
[2026-10-28 02:01:07,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:01:07,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:01:07,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:01:07,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:01:07,884.884 INFO    ] time= 28/10/2026 02:01:07
[2026-10-28 02:01:07,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:01:07,956.956 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:01:08,088.088 INFO    ] No existing commands found in stream
[2026-10-28 02:01:13,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:01:13,116.116 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 02:01:15,280.280 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:01:15,283.283 INFO    ] Checking for system updates...
[2026-10-28 02:01:15,319.319 INFO    ] 200
[2026-10-28 02:01:15,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:01:15,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:01:15,377.377 INFO    ] No update needed
[2026-10-28 02:01:15,379.379 INFO    ] Checking for camera pi updates...
[2026-10-28 02:01:15,412.412 INFO    ] 200
[2026-10-28 02:01:15,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:01:15,455.455 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:01:15,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:01:15,528.528 INFO    ] No camera update needed
[2026-10-28 02:01:15,531.531 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:01:15,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:01:15,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:01:15,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:01:17,582.582 INFO    ] ================================================
[2026-10-28 02:01:17,597.597 INFO    ] Launching Daemon at Wed Oct 28 02:01:17 IST 2026
[2026-10-28 02:01:17,608.608 INFO    ] ================================================
[2026-10-28 02:01:18,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:01:18
[2026-10-28 02:01:18,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:01:19,144.144 INFO    ] Initializing speech engine...
[2026-10-28 02:01:19,152.152 INFO    ] 2026-10-28 02:01:19
[2026-10-28 02:01:19,420.420 INFO    ] 2026-10-28 02:01:19
[2026-10-28 02:01:19,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:01:19,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:01:19,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:01:19,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:01:19,964.964 INFO    ] time= 28/10/2026 02:01:19
[2026-10-28 02:01:19,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:01:19,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:01:20,117.117 INFO    ] No existing commands found in stream
[2026-10-28 02:01:25,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:01:25,140.140 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-28 02:01:27,296.296 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:01:27,298.298 INFO    ] Checking for system updates...
[2026-10-28 02:01:27,334.334 INFO    ] 200
[2026-10-28 02:01:27,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:01:27,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:01:27,391.391 INFO    ] No update needed
[2026-10-28 02:01:27,394.394 INFO    ] Checking for camera pi updates...
[2026-10-28 02:01:27,430.430 INFO    ] 200
[2026-10-28 02:01:27,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:01:27,473.473 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:01:27,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:01:27,665.665 INFO    ] No camera update needed
[2026-10-28 02:01:27,668.668 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:01:27,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:01:27,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:01:27,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:01:29,726.726 INFO    ] ================================================
[2026-10-28 02:01:29,741.741 INFO    ] Launching Daemon at Wed Oct 28 02:01:29 IST 2026
[2026-10-28 02:01:29,752.752 INFO    ] ================================================
[2026-10-28 02:01:30,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:01:30
[2026-10-28 02:01:30,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:01:31,165.165 INFO    ] Initializing speech engine...
[2026-10-28 02:01:31,190.190 INFO    ] 2026-10-28 02:01:31
[2026-10-28 02:01:31,459.459 INFO    ] 2026-10-28 02:01:31
[2026-10-28 02:01:31,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:01:31,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:01:31,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:01:31,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:01:31,949.949 INFO    ] time= 28/10/2026 02:01:31
[2026-10-28 02:01:32,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:01:32,070.070 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:01:32,203.203 INFO    ] No existing commands found in stream
[2026-10-28 02:01:37,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:01:37,236.236 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-28 02:01:41,619.619 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:01:41,622.622 INFO    ] Checking for system updates...
[2026-10-28 02:01:41,660.660 INFO    ] 200
[2026-10-28 02:01:41,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:01:41,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:01:41,724.724 INFO    ] No update needed
[2026-10-28 02:01:41,726.726 INFO    ] Checking for camera pi updates...
[2026-10-28 02:01:41,760.760 INFO    ] 200
[2026-10-28 02:01:41,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:01:41,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:01:41,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:01:41,903.903 INFO    ] No camera update needed
[2026-10-28 02:01:41,905.905 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:01:41,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:01:41,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:01:41,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:01:43,958.958 INFO    ] ================================================
[2026-10-28 02:01:43,974.974 INFO    ] Launching Daemon at Wed Oct 28 02:01:43 IST 2026
[2026-10-28 02:01:43,985.985 INFO    ] ================================================
[2026-10-28 02:01:44,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:01:44
[2026-10-28 02:01:45,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:01:45,497.497 INFO    ] Initializing speech engine...
[2026-10-28 02:01:45,507.507 INFO    ] 2026-10-28 02:01:45
[2026-10-28 02:01:45,752.752 INFO    ] 2026-10-28 02:01:45
[2026-10-28 02:01:45,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:01:46,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:01:46,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:01:46,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:01:46,310.310 INFO    ] time= 28/10/2026 02:01:46
[2026-10-28 02:01:46,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:01:46,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:01:46,468.468 INFO    ] No existing commands found in stream
[2026-10-28 02:01:51,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:01:51,501.501 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-28 02:01:54,519.519 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:01:54,521.521 INFO    ] Checking for system updates...
[2026-10-28 02:01:54,558.558 INFO    ] 200
[2026-10-28 02:01:54,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:01:54,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:01:54,615.615 INFO    ] No update needed
[2026-10-28 02:01:54,618.618 INFO    ] Checking for camera pi updates...
[2026-10-28 02:01:54,651.651 INFO    ] 200
[2026-10-28 02:01:54,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:01:54,698.698 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:01:54,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:01:54,796.796 INFO    ] No camera update needed
[2026-10-28 02:01:54,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:01:54,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:01:54,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:01:54,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:01:56,854.854 INFO    ] ================================================
[2026-10-28 02:01:56,869.869 INFO    ] Launching Daemon at Wed Oct 28 02:01:56 IST 2026
[2026-10-28 02:01:56,881.881 INFO    ] ================================================
[2026-10-28 02:01:57,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:01:57
[2026-10-28 02:01:58,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:01:58,298.298 INFO    ] Initializing speech engine...
[2026-10-28 02:01:58,316.316 INFO    ] 2026-10-28 02:01:58
[2026-10-28 02:01:58,586.586 INFO    ] 2026-10-28 02:01:58
[2026-10-28 02:01:58,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:01:58,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:01:58,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:01:59,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:01:59,194.194 INFO    ] time= 28/10/2026 02:01:59
[2026-10-28 02:01:59,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:01:59,219.219 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:01:59,380.380 INFO    ] No existing commands found in stream
[2026-10-28 02:02:04,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:02:04,398.398 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-28 02:02:07,766.766 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:02:07,768.768 INFO    ] Checking for system updates...
[2026-10-28 02:02:07,805.805 INFO    ] 200
[2026-10-28 02:02:07,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:02:07,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:02:07,868.868 INFO    ] No update needed
[2026-10-28 02:02:07,870.870 INFO    ] Checking for camera pi updates...
[2026-10-28 02:02:07,906.906 INFO    ] 200
[2026-10-28 02:02:07,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:02:07,953.953 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:02:08,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:02:08,045.045 INFO    ] No camera update needed
[2026-10-28 02:02:08,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:02:08,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:02:08,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:02:08,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:02:10,101.101 INFO    ] ================================================
[2026-10-28 02:02:10,116.116 INFO    ] Launching Daemon at Wed Oct 28 02:02:10 IST 2026
[2026-10-28 02:02:10,127.127 INFO    ] ================================================
[2026-10-28 02:02:10,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:02:10
[2026-10-28 02:02:11,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:02:11,546.546 INFO    ] Initializing speech engine...
[2026-10-28 02:02:11,551.551 INFO    ] 2026-10-28 02:02:11
[2026-10-28 02:02:11,843.843 INFO    ] 2026-10-28 02:02:11
[2026-10-28 02:02:11,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:02:12,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:02:12,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:02:12,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:02:12,469.469 INFO    ] time= 28/10/2026 02:02:12
[2026-10-28 02:02:12,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:02:12,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:02:12,637.637 INFO    ] No existing commands found in stream
[2026-10-28 02:02:17,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:02:17,654.654 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-28 02:02:19,641.641 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:02:19,644.644 INFO    ] Checking for system updates...
[2026-10-28 02:02:19,680.680 INFO    ] 200
[2026-10-28 02:02:19,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:02:19,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:02:19,738.738 INFO    ] No update needed
[2026-10-28 02:02:19,741.741 INFO    ] Checking for camera pi updates...
[2026-10-28 02:02:19,775.775 INFO    ] 200
[2026-10-28 02:02:19,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:02:19,820.820 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:02:19,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:02:19,890.890 INFO    ] No camera update needed
[2026-10-28 02:02:19,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:02:19,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:02:19,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:02:19,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:02:21,945.945 INFO    ] ================================================
[2026-10-28 02:02:21,961.961 INFO    ] Launching Daemon at Wed Oct 28 02:02:21 IST 2026
[2026-10-28 02:02:21,971.971 INFO    ] ================================================
[2026-10-28 02:02:22,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:02:22
[2026-10-28 02:02:23,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:02:23,391.391 INFO    ] Initializing speech engine...
[2026-10-28 02:02:23,400.400 INFO    ] 2026-10-28 02:02:23
[2026-10-28 02:02:23,660.660 INFO    ] 2026-10-28 02:02:23
[2026-10-28 02:02:23,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:02:23,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:02:23,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:02:24,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:02:24,222.222 INFO    ] time= 28/10/2026 02:02:24
[2026-10-28 02:02:24,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:02:24,250.250 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:02:24,385.385 INFO    ] No existing commands found in stream
[2026-10-28 02:02:29,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:02:29,416.416 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 02:02:30,521.521 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:02:30,523.523 INFO    ] Checking for system updates...
[2026-10-28 02:02:30,559.559 INFO    ] 200
[2026-10-28 02:02:30,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:02:30,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:02:30,616.616 INFO    ] No update needed
[2026-10-28 02:02:30,618.618 INFO    ] Checking for camera pi updates...
[2026-10-28 02:02:30,656.656 INFO    ] 200
[2026-10-28 02:02:30,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:02:30,698.698 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:02:30,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:02:30,777.777 INFO    ] No camera update needed
[2026-10-28 02:02:30,779.779 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:02:30,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:02:30,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:02:30,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:02:32,836.836 INFO    ] ================================================
[2026-10-28 02:02:32,855.855 INFO    ] Launching Daemon at Wed Oct 28 02:02:32 IST 2026
[2026-10-28 02:02:32,869.869 INFO    ] ================================================
[2026-10-28 02:02:33,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:02:33
[2026-10-28 02:02:34,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:02:34,272.272 INFO    ] Initializing speech engine...
[2026-10-28 02:02:34,289.289 INFO    ] 2026-10-28 02:02:34
[2026-10-28 02:02:34,571.571 INFO    ] 2026-10-28 02:02:34
[2026-10-28 02:02:34,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:02:34,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:02:34,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:02:35,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:02:35,100.100 INFO    ] time= 28/10/2026 02:02:35
[2026-10-28 02:02:35,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:02:35,167.167 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:02:35,307.307 INFO    ] No existing commands found in stream
[2026-10-28 02:02:40,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:02:40,335.335 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-28 02:02:44,067.067 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:02:44,069.069 INFO    ] Checking for system updates...
[2026-10-28 02:02:44,108.108 INFO    ] 200
[2026-10-28 02:02:44,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:02:44,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:02:44,165.165 INFO    ] No update needed
[2026-10-28 02:02:44,167.167 INFO    ] Checking for camera pi updates...
[2026-10-28 02:02:44,204.204 INFO    ] 200
[2026-10-28 02:02:44,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:02:44,251.251 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:02:44,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:02:44,356.356 INFO    ] No camera update needed
[2026-10-28 02:02:44,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:02:44,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:02:44,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:02:44,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:02:46,411.411 INFO    ] ================================================
[2026-10-28 02:02:46,427.427 INFO    ] Launching Daemon at Wed Oct 28 02:02:46 IST 2026
[2026-10-28 02:02:46,438.438 INFO    ] ================================================
[2026-10-28 02:02:47,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:02:47
[2026-10-28 02:02:47,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:02:47,867.867 INFO    ] Initializing speech engine...
[2026-10-28 02:02:47,890.890 INFO    ] 2026-10-28 02:02:47
[2026-10-28 02:02:48,146.146 INFO    ] 2026-10-28 02:02:48
[2026-10-28 02:02:48,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:02:48,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:02:48,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:02:48,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:02:48,712.712 INFO    ] time= 28/10/2026 02:02:48
[2026-10-28 02:02:48,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:02:48,738.738 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:02:48,865.865 INFO    ] No existing commands found in stream
[2026-10-28 02:02:53,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:02:53,884.884 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-28 02:02:57,361.361 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:02:57,364.364 INFO    ] Checking for system updates...
[2026-10-28 02:02:57,400.400 INFO    ] 200
[2026-10-28 02:02:57,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:02:57,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:02:57,458.458 INFO    ] No update needed
[2026-10-28 02:02:57,460.460 INFO    ] Checking for camera pi updates...
[2026-10-28 02:02:57,494.494 INFO    ] 200
[2026-10-28 02:02:57,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:02:57,538.538 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:02:57,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:02:57,734.734 INFO    ] No camera update needed
[2026-10-28 02:02:57,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:02:57,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:02:57,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:02:57,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:02:59,793.793 INFO    ] ================================================
[2026-10-28 02:02:59,807.807 INFO    ] Launching Daemon at Wed Oct 28 02:02:59 IST 2026
[2026-10-28 02:02:59,818.818 INFO    ] ================================================
[2026-10-28 02:03:00,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:03:00
[2026-10-28 02:03:01,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:03:01,353.353 INFO    ] Initializing speech engine...
[2026-10-28 02:03:01,385.385 INFO    ] 2026-10-28 02:03:01
[2026-10-28 02:03:01,656.656 INFO    ] 2026-10-28 02:03:01
[2026-10-28 02:03:01,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:03:02,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:03:02,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:03:02,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:03:02,277.277 INFO    ] time= 28/10/2026 02:03:02
[2026-10-28 02:03:02,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:03:02,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:03:02,401.401 INFO    ] No existing commands found in stream
[2026-10-28 02:03:07,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:03:07,419.419 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-28 02:03:09,982.982 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:03:09,985.985 INFO    ] Checking for system updates...
[2026-10-28 02:03:10,020.020 INFO    ] 200
[2026-10-28 02:03:10,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:03:10,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:03:10,084.084 INFO    ] No update needed
[2026-10-28 02:03:10,086.086 INFO    ] Checking for camera pi updates...
[2026-10-28 02:03:10,119.119 INFO    ] 200
[2026-10-28 02:03:10,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:03:10,166.166 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:03:10,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:03:10,275.275 INFO    ] No camera update needed
[2026-10-28 02:03:10,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:03:10,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:03:10,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:03:10,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:03:12,330.330 INFO    ] ================================================
[2026-10-28 02:03:12,346.346 INFO    ] Launching Daemon at Wed Oct 28 02:03:12 IST 2026
[2026-10-28 02:03:12,357.357 INFO    ] ================================================
[2026-10-28 02:03:12,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:03:12
[2026-10-28 02:03:13,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:03:13,816.816 INFO    ] Initializing speech engine...
[2026-10-28 02:03:13,825.825 INFO    ] 2026-10-28 02:03:13
[2026-10-28 02:03:14,087.087 INFO    ] 2026-10-28 02:03:14
[2026-10-28 02:03:14,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:03:14,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:03:14,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:03:14,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:03:14,652.652 INFO    ] time= 28/10/2026 02:03:14
[2026-10-28 02:03:14,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:03:14,688.688 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:03:14,839.839 INFO    ] No existing commands found in stream
[2026-10-28 02:03:19,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:03:19,872.872 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-28 02:03:23,784.784 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:03:23,786.786 INFO    ] Checking for system updates...
[2026-10-28 02:03:23,825.825 INFO    ] 200
[2026-10-28 02:03:23,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:03:23,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:03:23,889.889 INFO    ] No update needed
[2026-10-28 02:03:23,891.891 INFO    ] Checking for camera pi updates...
[2026-10-28 02:03:23,928.928 INFO    ] 200
[2026-10-28 02:03:23,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:03:23,976.976 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:03:24,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:03:24,034.034 INFO    ] No camera update needed
[2026-10-28 02:03:24,037.037 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:03:24,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:03:24,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:03:24,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:03:26,090.090 INFO    ] ================================================
[2026-10-28 02:03:26,105.105 INFO    ] Launching Daemon at Wed Oct 28 02:03:26 IST 2026
[2026-10-28 02:03:26,117.117 INFO    ] ================================================
[2026-10-28 02:03:26,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:03:26
[2026-10-28 02:03:27,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:03:27,740.740 INFO    ] Initializing speech engine...
[2026-10-28 02:03:27,753.753 INFO    ] 2026-10-28 02:03:27
[2026-10-28 02:03:28,038.038 INFO    ] 2026-10-28 02:03:28
[2026-10-28 02:03:28,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:03:28,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:03:28,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:03:28,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:03:28,578.578 INFO    ] time= 28/10/2026 02:03:28
[2026-10-28 02:03:28,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:03:28,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:03:28,732.732 INFO    ] No existing commands found in stream
[2026-10-28 02:03:33,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:03:33,765.765 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-28 02:03:36,444.444 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:03:36,447.447 INFO    ] Checking for system updates...
[2026-10-28 02:03:36,490.490 INFO    ] 200
[2026-10-28 02:03:36,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:03:36,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:03:36,578.578 INFO    ] No update needed
[2026-10-28 02:03:36,581.581 INFO    ] Checking for camera pi updates...
[2026-10-28 02:03:36,619.619 INFO    ] 200
[2026-10-28 02:03:36,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:03:36,671.671 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:03:36,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:03:36,767.767 INFO    ] No camera update needed
[2026-10-28 02:03:36,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:03:36,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:03:36,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:03:36,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:03:38,829.829 INFO    ] ================================================
[2026-10-28 02:03:38,846.846 INFO    ] Launching Daemon at Wed Oct 28 02:03:38 IST 2026
[2026-10-28 02:03:38,857.857 INFO    ] ================================================
[2026-10-28 02:03:39,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:03:39
[2026-10-28 02:03:40,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:03:40,276.276 INFO    ] Initializing speech engine...
[2026-10-28 02:03:40,285.285 INFO    ] 2026-10-28 02:03:40
[2026-10-28 02:03:40,531.531 INFO    ] 2026-10-28 02:03:40
[2026-10-28 02:03:40,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:03:40,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:03:40,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:03:41,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:03:41,086.086 INFO    ] time= 28/10/2026 02:03:41
[2026-10-28 02:03:41,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:03:41,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:03:41,268.268 INFO    ] No existing commands found in stream
[2026-10-28 02:03:46,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:03:46,301.301 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-28 02:03:48,654.654 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:03:48,656.656 INFO    ] Checking for system updates...
[2026-10-28 02:03:48,695.695 INFO    ] 200
[2026-10-28 02:03:48,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:03:48,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:03:48,751.751 INFO    ] No update needed
[2026-10-28 02:03:48,754.754 INFO    ] Checking for camera pi updates...
[2026-10-28 02:03:48,791.791 INFO    ] 200
[2026-10-28 02:03:48,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:03:48,839.839 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:03:48,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:03:48,926.926 INFO    ] No camera update needed
[2026-10-28 02:03:48,929.929 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:03:48,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:03:48,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:03:48,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:03:50,984.984 INFO    ] ================================================
[2026-10-28 02:03:51,000.000 INFO    ] Launching Daemon at Wed Oct 28 02:03:50 IST 2026
[2026-10-28 02:03:51,012.012 INFO    ] ================================================
[2026-10-28 02:03:51,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:03:51
[2026-10-28 02:03:52,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:03:52,456.456 INFO    ] Initializing speech engine...
[2026-10-28 02:03:52,471.471 INFO    ] 2026-10-28 02:03:52
[2026-10-28 02:03:52,755.755 INFO    ] 2026-10-28 02:03:52
[2026-10-28 02:03:52,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:03:53,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:03:53,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:03:53,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:03:53,296.296 INFO    ] time= 28/10/2026 02:03:53
[2026-10-28 02:03:53,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:03:53,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:03:53,519.519 INFO    ] No existing commands found in stream
[2026-10-28 02:03:58,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:03:58,545.545 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 02:04:00,141.141 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:04:00,144.144 INFO    ] Checking for system updates...
[2026-10-28 02:04:00,182.182 INFO    ] 200
[2026-10-28 02:04:00,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:04:00,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:04:00,245.245 INFO    ] No update needed
[2026-10-28 02:04:00,248.248 INFO    ] Checking for camera pi updates...
[2026-10-28 02:04:00,285.285 INFO    ] 200
[2026-10-28 02:04:00,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:04:00,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:04:00,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:04:00,409.409 INFO    ] No camera update needed
[2026-10-28 02:04:00,412.412 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:04:00,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:04:00,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:04:00,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:04:02,468.468 INFO    ] ================================================
[2026-10-28 02:04:02,491.491 INFO    ] Launching Daemon at Wed Oct 28 02:04:02 IST 2026
[2026-10-28 02:04:02,508.508 INFO    ] ================================================
[2026-10-28 02:04:03,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:04:03
[2026-10-28 02:04:03,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:04:04,171.171 INFO    ] Initializing speech engine...
[2026-10-28 02:04:04,181.181 INFO    ] 2026-10-28 02:04:04
[2026-10-28 02:04:04,428.428 INFO    ] 2026-10-28 02:04:04
[2026-10-28 02:04:04,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:04:04,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:04:04,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:04:04,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:04:04,985.985 INFO    ] time= 28/10/2026 02:04:04
[2026-10-28 02:04:05,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:04:05,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:04:05,140.140 INFO    ] No existing commands found in stream
[2026-10-28 02:04:10,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:04:10,168.168 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-28 02:04:14,482.482 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:04:14,485.485 INFO    ] Checking for system updates...
[2026-10-28 02:04:14,523.523 INFO    ] 200
[2026-10-28 02:04:14,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:04:14,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:04:14,579.579 INFO    ] No update needed
[2026-10-28 02:04:14,581.581 INFO    ] Checking for camera pi updates...
[2026-10-28 02:04:14,615.615 INFO    ] 200
[2026-10-28 02:04:14,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:04:14,657.657 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:04:14,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:04:14,759.759 INFO    ] No camera update needed
[2026-10-28 02:04:14,761.761 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:04:14,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:04:14,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:04:14,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:04:16,814.814 INFO    ] ================================================
[2026-10-28 02:04:16,830.830 INFO    ] Launching Daemon at Wed Oct 28 02:04:16 IST 2026
[2026-10-28 02:04:16,841.841 INFO    ] ================================================
[2026-10-28 02:04:17,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:04:17
[2026-10-28 02:04:18,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:04:18,299.299 INFO    ] Initializing speech engine...
[2026-10-28 02:04:18,306.306 INFO    ] 2026-10-28 02:04:18
[2026-10-28 02:04:18,570.570 INFO    ] 2026-10-28 02:04:18
[2026-10-28 02:04:18,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:04:18,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:04:18,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:04:19,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:04:19,126.126 INFO    ] time= 28/10/2026 02:04:19
[2026-10-28 02:04:19,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:04:19,148.148 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:04:19,278.278 INFO    ] No existing commands found in stream
[2026-10-28 02:04:24,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:04:24,292.292 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 02:04:26,785.785 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:04:26,787.787 INFO    ] Checking for system updates...
[2026-10-28 02:04:26,823.823 INFO    ] 200
[2026-10-28 02:04:26,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:04:26,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:04:26,881.881 INFO    ] No update needed
[2026-10-28 02:04:26,884.884 INFO    ] Checking for camera pi updates...
[2026-10-28 02:04:26,920.920 INFO    ] 200
[2026-10-28 02:04:26,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:04:26,966.966 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:04:27,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:04:27,053.053 INFO    ] No camera update needed
[2026-10-28 02:04:27,055.055 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:04:27,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:04:27,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:04:27,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:04:29,108.108 INFO    ] ================================================
[2026-10-28 02:04:29,124.124 INFO    ] Launching Daemon at Wed Oct 28 02:04:29 IST 2026
[2026-10-28 02:04:29,135.135 INFO    ] ================================================
[2026-10-28 02:04:29,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:04:29
[2026-10-28 02:04:30,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:04:30,586.586 INFO    ] Initializing speech engine...
[2026-10-28 02:04:30,595.595 INFO    ] 2026-10-28 02:04:30
[2026-10-28 02:04:30,849.849 INFO    ] 2026-10-28 02:04:30
[2026-10-28 02:04:30,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:04:31,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:04:31,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:04:31,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:04:31,408.408 INFO    ] time= 28/10/2026 02:04:31
[2026-10-28 02:04:31,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:04:31,454.454 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:04:31,561.561 INFO    ] No existing commands found in stream
[2026-10-28 02:04:36,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:04:36,576.576 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-28 02:04:41,882.882 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:04:41,885.885 INFO    ] Checking for system updates...
[2026-10-28 02:04:41,923.923 INFO    ] 200
[2026-10-28 02:04:41,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:04:41,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:04:42,000.000 INFO    ] No update needed
[2026-10-28 02:04:42,002.002 INFO    ] Checking for camera pi updates...
[2026-10-28 02:04:42,050.050 INFO    ] 200
[2026-10-28 02:04:42,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:04:42,099.099 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:04:42,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:04:42,193.193 INFO    ] No camera update needed
[2026-10-28 02:04:42,196.196 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:04:42,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:04:42,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:04:42,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:04:44,256.256 INFO    ] ================================================
[2026-10-28 02:04:44,272.272 INFO    ] Launching Daemon at Wed Oct 28 02:04:44 IST 2026
[2026-10-28 02:04:44,284.284 INFO    ] ================================================
[2026-10-28 02:04:44,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:04:44
[2026-10-28 02:04:45,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:04:45,877.877 INFO    ] Initializing speech engine...
[2026-10-28 02:04:45,885.885 INFO    ] 2026-10-28 02:04:45
[2026-10-28 02:04:46,174.174 INFO    ] 2026-10-28 02:04:46
[2026-10-28 02:04:46,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:04:46,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:04:46,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:04:46,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:04:46,741.741 INFO    ] time= 28/10/2026 02:04:46
[2026-10-28 02:04:46,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:04:46,770.770 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:04:46,915.915 INFO    ] No existing commands found in stream
[2026-10-28 02:04:51,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:04:51,950.950 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 02:04:54,483.483 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:04:54,486.486 INFO    ] Checking for system updates...
[2026-10-28 02:04:54,522.522 INFO    ] 200
[2026-10-28 02:04:54,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:04:54,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:04:54,589.589 INFO    ] No update needed
[2026-10-28 02:04:54,592.592 INFO    ] Checking for camera pi updates...
[2026-10-28 02:04:54,627.627 INFO    ] 200
[2026-10-28 02:04:54,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:04:54,671.671 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:04:54,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:04:54,769.769 INFO    ] No camera update needed
[2026-10-28 02:04:54,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:04:54,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:04:54,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:04:54,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:04:56,829.829 INFO    ] ================================================
[2026-10-28 02:04:56,844.844 INFO    ] Launching Daemon at Wed Oct 28 02:04:56 IST 2026
[2026-10-28 02:04:57,171.171 INFO    ] ================================================
[2026-10-28 02:04:57,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:04:57
[2026-10-28 02:04:58,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:04:58,651.651 INFO    ] Initializing speech engine...
[2026-10-28 02:04:58,657.657 INFO    ] 2026-10-28 02:04:58
[2026-10-28 02:04:58,916.916 INFO    ] 2026-10-28 02:04:58
[2026-10-28 02:04:58,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:04:59,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:04:59,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:04:59,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:04:59,401.401 INFO    ] time= 28/10/2026 02:04:59
[2026-10-28 02:04:59,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:04:59,406.406 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:04:59,487.487 INFO    ] No existing commands found in stream
[2026-10-28 02:05:04,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:05:04,499.499 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-28 02:05:08,762.762 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:05:08,765.765 INFO    ] Checking for system updates...
[2026-10-28 02:05:08,804.804 INFO    ] 200
[2026-10-28 02:05:08,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:05:08,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:05:08,863.863 INFO    ] No update needed
[2026-10-28 02:05:08,865.865 INFO    ] Checking for camera pi updates...
[2026-10-28 02:05:08,898.898 INFO    ] 200
[2026-10-28 02:05:08,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:05:08,941.941 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:05:09,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:05:09,009.009 INFO    ] No camera update needed
[2026-10-28 02:05:09,012.012 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:05:09,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:05:09,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:05:09,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:05:11,067.067 INFO    ] ================================================
[2026-10-28 02:05:11,081.081 INFO    ] Launching Daemon at Wed Oct 28 02:05:11 IST 2026
[2026-10-28 02:05:11,092.092 INFO    ] ================================================
[2026-10-28 02:05:11,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:05:11
[2026-10-28 02:05:12,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:05:12,702.702 INFO    ] Initializing speech engine...
[2026-10-28 02:05:12,710.710 INFO    ] 2026-10-28 02:05:12
[2026-10-28 02:05:13,001.001 INFO    ] 2026-10-28 02:05:12
[2026-10-28 02:05:13,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:05:13,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:05:13,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:05:13,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:05:13,564.564 INFO    ] time= 28/10/2026 02:05:13
[2026-10-28 02:05:13,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:05:13,603.603 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:05:13,715.715 INFO    ] No existing commands found in stream
[2026-10-28 02:05:18,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:05:18,749.749 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-28 02:05:20,884.884 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:05:20,887.887 INFO    ] Checking for system updates...
[2026-10-28 02:05:20,929.929 INFO    ] 200
[2026-10-28 02:05:20,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:05:20,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:05:20,997.997 INFO    ] No update needed
[2026-10-28 02:05:21,000.000 INFO    ] Checking for camera pi updates...
[2026-10-28 02:05:21,039.039 INFO    ] 200
[2026-10-28 02:05:21,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:05:21,084.084 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:05:21,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:05:21,164.164 INFO    ] No camera update needed
[2026-10-28 02:05:21,167.167 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:05:21,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:05:21,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:05:21,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:05:23,223.223 INFO    ] ================================================
[2026-10-28 02:05:23,239.239 INFO    ] Launching Daemon at Wed Oct 28 02:05:23 IST 2026
[2026-10-28 02:05:23,249.249 INFO    ] ================================================
[2026-10-28 02:05:23,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:05:23
[2026-10-28 02:05:24,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:05:24,717.717 INFO    ] Initializing speech engine...
[2026-10-28 02:05:24,726.726 INFO    ] 2026-10-28 02:05:24
[2026-10-28 02:05:24,998.998 INFO    ] 2026-10-28 02:05:24
[2026-10-28 02:05:25,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:05:25,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:05:25,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:05:25,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:05:25,568.568 INFO    ] time= 28/10/2026 02:05:25
[2026-10-28 02:05:25,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:05:25,618.618 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:05:25,748.748 INFO    ] No existing commands found in stream
[2026-10-28 02:05:30,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:05:30,782.782 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 02:05:33,865.865 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:05:33,868.868 INFO    ] Checking for system updates...
[2026-10-28 02:05:33,905.905 INFO    ] 200
[2026-10-28 02:05:33,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:05:33,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:05:33,965.965 INFO    ] No update needed
[2026-10-28 02:05:33,968.968 INFO    ] Checking for camera pi updates...
[2026-10-28 02:05:34,003.003 INFO    ] 200
[2026-10-28 02:05:34,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:05:34,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:05:34,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:05:34,149.149 INFO    ] No camera update needed
[2026-10-28 02:05:34,152.152 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:05:34,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:05:34,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:05:34,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:05:36,207.207 INFO    ] ================================================
[2026-10-28 02:05:36,222.222 INFO    ] Launching Daemon at Wed Oct 28 02:05:36 IST 2026
[2026-10-28 02:05:36,232.232 INFO    ] ================================================
[2026-10-28 02:05:36,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:05:36
[2026-10-28 02:05:37,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:05:37,695.695 INFO    ] Initializing speech engine...
[2026-10-28 02:05:37,708.708 INFO    ] 2026-10-28 02:05:37
[2026-10-28 02:05:37,984.984 INFO    ] 2026-10-28 02:05:37
[2026-10-28 02:05:38,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:05:38,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:05:38,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:05:38,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:05:38,558.558 INFO    ] time= 28/10/2026 02:05:38
[2026-10-28 02:05:38,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:05:38,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:05:38,727.727 INFO    ] No existing commands found in stream
[2026-10-28 02:05:43,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:05:43,757.757 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 02:05:47,404.404 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:05:47,408.408 INFO    ] Checking for system updates...
[2026-10-28 02:05:47,448.448 INFO    ] 200
[2026-10-28 02:05:47,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:05:47,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:05:47,509.509 INFO    ] No update needed
[2026-10-28 02:05:47,512.512 INFO    ] Checking for camera pi updates...
[2026-10-28 02:05:47,551.551 INFO    ] 200
[2026-10-28 02:05:47,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:05:47,594.594 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:05:47,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:05:47,781.781 INFO    ] No camera update needed
[2026-10-28 02:05:47,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:05:47,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:05:47,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:05:47,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:05:49,837.837 INFO    ] ================================================
[2026-10-28 02:05:49,852.852 INFO    ] Launching Daemon at Wed Oct 28 02:05:49 IST 2026
[2026-10-28 02:05:49,863.863 INFO    ] ================================================
[2026-10-28 02:05:50,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:05:50
[2026-10-28 02:05:51,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:05:51,299.299 INFO    ] Initializing speech engine...
[2026-10-28 02:05:51,312.312 INFO    ] 2026-10-28 02:05:51
[2026-10-28 02:05:51,575.575 INFO    ] 2026-10-28 02:05:51
[2026-10-28 02:05:51,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:05:51,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:05:51,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:05:52,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:05:52,131.131 INFO    ] time= 28/10/2026 02:05:52
[2026-10-28 02:05:52,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:05:52,155.155 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:05:52,282.282 INFO    ] No existing commands found in stream
[2026-10-28 02:05:57,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:05:57,300.300 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-28 02:05:58,281.281 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:05:58,284.284 INFO    ] Checking for system updates...
[2026-10-28 02:05:58,319.319 INFO    ] 200
[2026-10-28 02:05:58,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:05:58,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:05:58,387.387 INFO    ] No update needed
[2026-10-28 02:05:58,389.389 INFO    ] Checking for camera pi updates...
[2026-10-28 02:05:58,423.423 INFO    ] 200
[2026-10-28 02:05:58,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:05:58,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:05:58,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:05:58,555.555 INFO    ] No camera update needed
[2026-10-28 02:05:58,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:05:58,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:05:58,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:05:58,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:06:00,610.610 INFO    ] ================================================
[2026-10-28 02:06:00,625.625 INFO    ] Launching Daemon at Wed Oct 28 02:06:00 IST 2026
[2026-10-28 02:06:00,635.635 INFO    ] ================================================
[2026-10-28 02:06:01,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:06:01
[2026-10-28 02:06:01,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:06:02,242.242 INFO    ] Initializing speech engine...
[2026-10-28 02:06:02,251.251 INFO    ] 2026-10-28 02:06:02
[2026-10-28 02:06:02,557.557 INFO    ] 2026-10-28 02:06:02
[2026-10-28 02:06:02,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:06:02,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:06:02,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:06:03,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:06:03,087.087 INFO    ] time= 28/10/2026 02:06:03
[2026-10-28 02:06:03,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:06:03,199.199 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:06:03,342.342 INFO    ] No existing commands found in stream
[2026-10-28 02:06:08,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:06:08,376.376 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-28 02:06:09,641.641 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:06:09,644.644 INFO    ] Checking for system updates...
[2026-10-28 02:06:09,680.680 INFO    ] 200
[2026-10-28 02:06:09,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:06:09,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:06:09,739.739 INFO    ] No update needed
[2026-10-28 02:06:09,741.741 INFO    ] Checking for camera pi updates...
[2026-10-28 02:06:09,775.775 INFO    ] 200
[2026-10-28 02:06:09,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:06:09,824.824 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:06:09,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:06:09,922.922 INFO    ] No camera update needed
[2026-10-28 02:06:09,925.925 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:06:09,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:06:09,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:06:09,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:06:11,978.978 INFO    ] ================================================
[2026-10-28 02:06:11,994.994 INFO    ] Launching Daemon at Wed Oct 28 02:06:11 IST 2026
[2026-10-28 02:06:12,005.005 INFO    ] ================================================
[2026-10-28 02:06:12,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:06:12
[2026-10-28 02:06:13,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:06:13,417.417 INFO    ] Initializing speech engine...
[2026-10-28 02:06:13,440.440 INFO    ] 2026-10-28 02:06:13
[2026-10-28 02:06:13,698.698 INFO    ] 2026-10-28 02:06:13
[2026-10-28 02:06:13,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:06:13,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:06:14,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:06:14,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:06:14,268.268 INFO    ] time= 28/10/2026 02:06:14
[2026-10-28 02:06:14,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:06:14,314.314 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:06:14,450.450 INFO    ] No existing commands found in stream
[2026-10-28 02:06:19,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:06:19,483.483 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-28 02:06:20,923.923 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:06:20,925.925 INFO    ] Checking for system updates...
[2026-10-28 02:06:20,962.962 INFO    ] 200
[2026-10-28 02:06:20,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:06:21,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:06:21,030.030 INFO    ] No update needed
[2026-10-28 02:06:21,033.033 INFO    ] Checking for camera pi updates...
[2026-10-28 02:06:21,072.072 INFO    ] 200
[2026-10-28 02:06:21,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:06:21,121.121 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:06:21,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:06:21,222.222 INFO    ] No camera update needed
[2026-10-28 02:06:21,225.225 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:06:21,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:06:21,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:06:21,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:06:23,281.281 INFO    ] ================================================
[2026-10-28 02:06:23,296.296 INFO    ] Launching Daemon at Wed Oct 28 02:06:23 IST 2026
[2026-10-28 02:06:23,307.307 INFO    ] ================================================
[2026-10-28 02:06:23,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:06:23
[2026-10-28 02:06:24,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:06:24,757.757 INFO    ] Initializing speech engine...
[2026-10-28 02:06:24,768.768 INFO    ] 2026-10-28 02:06:24
[2026-10-28 02:06:25,028.028 INFO    ] 2026-10-28 02:06:25
[2026-10-28 02:06:25,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:06:25,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:06:25,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:06:25,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:06:25,573.573 INFO    ] time= 28/10/2026 02:06:25
[2026-10-28 02:06:25,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:06:25,620.620 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:06:25,726.726 INFO    ] No existing commands found in stream
[2026-10-28 02:06:30,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:06:30,753.753 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 02:06:33,183.183 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:06:33,186.186 INFO    ] Checking for system updates...
[2026-10-28 02:06:33,226.226 INFO    ] 200
[2026-10-28 02:06:33,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:06:33,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:06:33,283.283 INFO    ] No update needed
[2026-10-28 02:06:33,285.285 INFO    ] Checking for camera pi updates...
[2026-10-28 02:06:33,319.319 INFO    ] 200
[2026-10-28 02:06:33,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:06:33,362.362 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:06:33,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:06:33,451.451 INFO    ] No camera update needed
[2026-10-28 02:06:33,453.453 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:06:33,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:06:33,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:06:33,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:06:35,507.507 INFO    ] ================================================
[2026-10-28 02:06:35,523.523 INFO    ] Launching Daemon at Wed Oct 28 02:06:35 IST 2026
[2026-10-28 02:06:35,535.535 INFO    ] ================================================
[2026-10-28 02:06:36,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:06:36
[2026-10-28 02:06:36,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:06:36,954.954 INFO    ] Initializing speech engine...
[2026-10-28 02:06:36,967.967 INFO    ] 2026-10-28 02:06:36
[2026-10-28 02:06:37,230.230 INFO    ] 2026-10-28 02:06:37
[2026-10-28 02:06:37,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:06:37,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:06:37,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:06:37,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:06:37,782.782 INFO    ] time= 28/10/2026 02:06:37
[2026-10-28 02:06:37,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:06:37,807.807 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:06:37,937.937 INFO    ] No existing commands found in stream
[2026-10-28 02:06:42,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:06:42,953.953 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-28 02:06:46,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:06:46,325.325 INFO    ] Checking for system updates...
[2026-10-28 02:06:46,362.362 INFO    ] 200
[2026-10-28 02:06:46,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:06:46,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:06:46,422.422 INFO    ] No update needed
[2026-10-28 02:06:46,425.425 INFO    ] Checking for camera pi updates...
[2026-10-28 02:06:46,469.469 INFO    ] 200
[2026-10-28 02:06:46,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:06:46,513.513 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:06:46,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:06:46,607.607 INFO    ] No camera update needed
[2026-10-28 02:06:46,609.609 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:06:46,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:06:46,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:06:46,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:06:48,666.666 INFO    ] ================================================
[2026-10-28 02:06:48,681.681 INFO    ] Launching Daemon at Wed Oct 28 02:06:48 IST 2026
[2026-10-28 02:06:48,692.692 INFO    ] ================================================
[2026-10-28 02:06:49,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:06:49
[2026-10-28 02:06:49,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:06:50,093.093 INFO    ] Initializing speech engine...
[2026-10-28 02:06:50,101.101 INFO    ] 2026-10-28 02:06:50
[2026-10-28 02:06:50,374.374 INFO    ] 2026-10-28 02:06:50
[2026-10-28 02:06:50,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:06:50,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:06:50,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:06:50,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:06:50,957.957 INFO    ] time= 28/10/2026 02:06:50
[2026-10-28 02:06:50,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:06:50,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:06:51,127.127 INFO    ] No existing commands found in stream
[2026-10-28 02:06:56,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:06:56,155.155 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 02:06:57,592.592 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:06:57,595.595 INFO    ] Checking for system updates...
[2026-10-28 02:06:57,633.633 INFO    ] 200
[2026-10-28 02:06:57,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:06:57,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:06:57,694.694 INFO    ] No update needed
[2026-10-28 02:06:57,697.697 INFO    ] Checking for camera pi updates...
[2026-10-28 02:06:57,746.746 INFO    ] 200
[2026-10-28 02:06:57,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:06:57,799.799 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:06:57,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:06:57,899.899 INFO    ] No camera update needed
[2026-10-28 02:06:57,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:06:57,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:06:57,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:06:57,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:06:59,959.959 INFO    ] ================================================
[2026-10-28 02:06:59,975.975 INFO    ] Launching Daemon at Wed Oct 28 02:06:59 IST 2026
[2026-10-28 02:06:59,986.986 INFO    ] ================================================
[2026-10-28 02:07:00,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:07:00
[2026-10-28 02:07:01,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:07:01,846.846 INFO    ] Initializing speech engine...
[2026-10-28 02:07:01,850.850 INFO    ] 2026-10-28 02:07:01
[2026-10-28 02:07:02,269.269 INFO    ] 2026-10-28 02:07:02
[2026-10-28 02:07:02,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:07:02,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:07:02,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:07:02,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:07:02,937.937 INFO    ] time= 28/10/2026 02:07:02
[2026-10-28 02:07:03,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:07:03,067.067 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:07:03,222.222 INFO    ] No existing commands found in stream
[2026-10-28 02:07:08,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:07:08,264.264 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-28 02:07:12,285.285 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:07:12,288.288 INFO    ] Checking for system updates...
[2026-10-28 02:07:12,325.325 INFO    ] 200
[2026-10-28 02:07:12,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:07:12,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:07:12,391.391 INFO    ] No update needed
[2026-10-28 02:07:12,394.394 INFO    ] Checking for camera pi updates...
[2026-10-28 02:07:12,428.428 INFO    ] 200
[2026-10-28 02:07:12,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:07:12,478.478 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:07:12,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:07:12,561.561 INFO    ] No camera update needed
[2026-10-28 02:07:12,564.564 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:07:12,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:07:12,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:07:12,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:07:14,617.617 INFO    ] ================================================
[2026-10-28 02:07:14,633.633 INFO    ] Launching Daemon at Wed Oct 28 02:07:14 IST 2026
[2026-10-28 02:07:14,644.644 INFO    ] ================================================
[2026-10-28 02:07:15,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:07:15
[2026-10-28 02:07:15,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:07:16,054.054 INFO    ] Initializing speech engine...
[2026-10-28 02:07:16,072.072 INFO    ] 2026-10-28 02:07:16
[2026-10-28 02:07:16,319.319 INFO    ] 2026-10-28 02:07:16
[2026-10-28 02:07:16,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:07:16,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:07:16,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:07:16,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:07:16,878.878 INFO    ] time= 28/10/2026 02:07:16
[2026-10-28 02:07:16,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:07:16,926.926 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:07:17,056.056 INFO    ] No existing commands found in stream
[2026-10-28 02:07:22,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:07:22,084.084 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-28 02:07:26,179.179 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:07:26,182.182 INFO    ] Checking for system updates...
[2026-10-28 02:07:26,218.218 INFO    ] 200
[2026-10-28 02:07:26,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:07:26,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:07:26,278.278 INFO    ] No update needed
[2026-10-28 02:07:26,280.280 INFO    ] Checking for camera pi updates...
[2026-10-28 02:07:26,315.315 INFO    ] 200
[2026-10-28 02:07:26,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:07:26,365.365 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:07:26,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:07:26,435.435 INFO    ] No camera update needed
[2026-10-28 02:07:26,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:07:26,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:07:26,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:07:26,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:07:28,495.495 INFO    ] ================================================
[2026-10-28 02:07:28,510.510 INFO    ] Launching Daemon at Wed Oct 28 02:07:28 IST 2026
[2026-10-28 02:07:28,521.521 INFO    ] ================================================
[2026-10-28 02:07:29,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:07:29
[2026-10-28 02:07:29,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:07:29,937.937 INFO    ] Initializing speech engine...
[2026-10-28 02:07:29,950.950 INFO    ] 2026-10-28 02:07:29
[2026-10-28 02:07:30,199.199 INFO    ] 2026-10-28 02:07:30
[2026-10-28 02:07:30,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:07:30,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:07:30,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:07:30,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:07:30,767.767 INFO    ] time= 28/10/2026 02:07:30
[2026-10-28 02:07:30,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:07:30,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:07:30,924.924 INFO    ] No existing commands found in stream
[2026-10-28 02:07:35,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:07:35,945.945 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-28 02:07:36,827.827 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:07:36,830.830 INFO    ] Checking for system updates...
[2026-10-28 02:07:36,865.865 INFO    ] 200
[2026-10-28 02:07:36,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:07:36,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:07:36,922.922 INFO    ] No update needed
[2026-10-28 02:07:36,925.925 INFO    ] Checking for camera pi updates...
[2026-10-28 02:07:36,958.958 INFO    ] 200
[2026-10-28 02:07:36,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:07:37,005.005 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:07:37,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:07:37,087.087 INFO    ] No camera update needed
[2026-10-28 02:07:37,089.089 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:07:37,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:07:37,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:07:37,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:07:39,142.142 INFO    ] ================================================
[2026-10-28 02:07:39,158.158 INFO    ] Launching Daemon at Wed Oct 28 02:07:39 IST 2026
[2026-10-28 02:07:39,170.170 INFO    ] ================================================
[2026-10-28 02:07:39,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:07:39
[2026-10-28 02:07:40,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:07:40,593.593 INFO    ] Initializing speech engine...
[2026-10-28 02:07:40,600.600 INFO    ] 2026-10-28 02:07:40
[2026-10-28 02:07:40,858.858 INFO    ] 2026-10-28 02:07:40
[2026-10-28 02:07:40,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:07:41,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:07:41,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:07:41,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:07:41,400.400 INFO    ] time= 28/10/2026 02:07:41
[2026-10-28 02:07:41,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:07:41,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:07:41,571.571 INFO    ] No existing commands found in stream
[2026-10-28 02:07:46,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:07:46,599.599 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-28 02:07:50,144.144 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:07:50,147.147 INFO    ] Checking for system updates...
[2026-10-28 02:07:50,182.182 INFO    ] 200
[2026-10-28 02:07:50,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:07:50,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:07:50,240.240 INFO    ] No update needed
[2026-10-28 02:07:50,243.243 INFO    ] Checking for camera pi updates...
[2026-10-28 02:07:50,276.276 INFO    ] 200
[2026-10-28 02:07:50,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:07:50,318.318 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:07:50,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:07:50,516.516 INFO    ] No camera update needed
[2026-10-28 02:07:50,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:07:50,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:07:50,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:07:50,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:07:52,570.570 INFO    ] ================================================
[2026-10-28 02:07:52,588.588 INFO    ] Launching Daemon at Wed Oct 28 02:07:52 IST 2026
[2026-10-28 02:07:52,599.599 INFO    ] ================================================
[2026-10-28 02:07:53,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:07:53
[2026-10-28 02:07:53,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:07:54,099.099 INFO    ] Initializing speech engine...
[2026-10-28 02:07:54,105.105 INFO    ] 2026-10-28 02:07:54
[2026-10-28 02:07:54,404.404 INFO    ] 2026-10-28 02:07:54
[2026-10-28 02:07:54,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:07:54,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:07:54,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:07:54,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:07:54,917.917 INFO    ] time= 28/10/2026 02:07:54
[2026-10-28 02:07:54,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:07:55,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:07:55,179.179 INFO    ] No existing commands found in stream
[2026-10-28 02:08:00,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:08:00,204.204 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 02:08:01,740.740 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:08:01,745.745 INFO    ] Checking for system updates...
[2026-10-28 02:08:01,825.825 INFO    ] 200
[2026-10-28 02:08:01,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:08:01,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:08:01,917.917 INFO    ] No update needed
[2026-10-28 02:08:01,920.920 INFO    ] Checking for camera pi updates...
[2026-10-28 02:08:01,997.997 INFO    ] 200
[2026-10-28 02:08:02,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:08:02,069.069 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:08:02,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:08:02,298.298 INFO    ] No camera update needed
[2026-10-28 02:08:02,301.301 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:08:02,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:08:02,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:08:02,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:08:04,364.364 INFO    ] ================================================
[2026-10-28 02:08:04,379.379 INFO    ] Launching Daemon at Wed Oct 28 02:08:04 IST 2026
[2026-10-28 02:08:04,390.390 INFO    ] ================================================
[2026-10-28 02:08:05,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:08:05
[2026-10-28 02:08:05,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:08:05,892.892 INFO    ] Initializing speech engine...
[2026-10-28 02:08:05,900.900 INFO    ] 2026-10-28 02:08:05
[2026-10-28 02:08:06,156.156 INFO    ] 2026-10-28 02:08:06
[2026-10-28 02:08:06,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:08:06,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:08:06,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:08:06,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:08:06,711.711 INFO    ] time= 28/10/2026 02:08:06
[2026-10-28 02:08:06,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:08:06,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:08:06,866.866 INFO    ] No existing commands found in stream
[2026-10-28 02:08:11,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:08:11,894.894 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-28 02:08:13,123.123 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:08:13,125.125 INFO    ] Checking for system updates...
[2026-10-28 02:08:13,161.161 INFO    ] 200
[2026-10-28 02:08:13,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:08:13,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:08:13,219.219 INFO    ] No update needed
[2026-10-28 02:08:13,221.221 INFO    ] Checking for camera pi updates...
[2026-10-28 02:08:13,254.254 INFO    ] 200
[2026-10-28 02:08:13,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:08:13,302.302 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:08:13,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:08:13,386.386 INFO    ] No camera update needed
[2026-10-28 02:08:13,388.388 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:08:13,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:08:13,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:08:13,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:08:15,441.441 INFO    ] ================================================
[2026-10-28 02:08:15,457.457 INFO    ] Launching Daemon at Wed Oct 28 02:08:15 IST 2026
[2026-10-28 02:08:15,471.471 INFO    ] ================================================
[2026-10-28 02:08:16,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:08:16
[2026-10-28 02:08:16,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:08:16,916.916 INFO    ] Initializing speech engine...
[2026-10-28 02:08:16,922.922 INFO    ] 2026-10-28 02:08:16
[2026-10-28 02:08:17,171.171 INFO    ] 2026-10-28 02:08:17
[2026-10-28 02:08:17,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:08:17,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:08:17,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:08:17,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:08:17,727.727 INFO    ] time= 28/10/2026 02:08:17
[2026-10-28 02:08:17,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:08:17,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:08:17,950.950 INFO    ] No existing commands found in stream
[2026-10-28 02:08:22,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:08:22,983.983 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-28 02:08:25,964.964 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:08:25,966.966 INFO    ] Checking for system updates...
[2026-10-28 02:08:26,005.005 INFO    ] 200
[2026-10-28 02:08:26,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:08:26,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:08:26,067.067 INFO    ] No update needed
[2026-10-28 02:08:26,069.069 INFO    ] Checking for camera pi updates...
[2026-10-28 02:08:26,102.102 INFO    ] 200
[2026-10-28 02:08:26,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:08:26,146.146 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:08:26,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:08:26,229.229 INFO    ] No camera update needed
[2026-10-28 02:08:26,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:08:26,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:08:26,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:08:26,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:08:28,285.285 INFO    ] ================================================
[2026-10-28 02:08:28,300.300 INFO    ] Launching Daemon at Wed Oct 28 02:08:28 IST 2026
[2026-10-28 02:08:28,311.311 INFO    ] ================================================
[2026-10-28 02:08:28,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:08:28
[2026-10-28 02:08:29,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:08:29,759.759 INFO    ] Initializing speech engine...
[2026-10-28 02:08:29,769.769 INFO    ] 2026-10-28 02:08:29
[2026-10-28 02:08:30,018.018 INFO    ] 2026-10-28 02:08:30
[2026-10-28 02:08:30,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:08:30,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:08:30,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:08:30,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:08:30,588.588 INFO    ] time= 28/10/2026 02:08:30
[2026-10-28 02:08:30,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:08:30,613.613 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:08:30,741.741 INFO    ] No existing commands found in stream
[2026-10-28 02:08:35,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:08:35,758.758 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-28 02:08:40,242.242 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:08:40,245.245 INFO    ] Checking for system updates...
[2026-10-28 02:08:40,284.284 INFO    ] 200
[2026-10-28 02:08:40,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:08:40,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:08:40,342.342 INFO    ] No update needed
[2026-10-28 02:08:40,345.345 INFO    ] Checking for camera pi updates...
[2026-10-28 02:08:40,382.382 INFO    ] 200
[2026-10-28 02:08:40,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:08:40,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:08:40,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:08:40,530.530 INFO    ] No camera update needed
[2026-10-28 02:08:40,532.532 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:08:40,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:08:40,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:08:40,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:08:42,586.586 INFO    ] ================================================
[2026-10-28 02:08:42,602.602 INFO    ] Launching Daemon at Wed Oct 28 02:08:42 IST 2026
[2026-10-28 02:08:42,613.613 INFO    ] ================================================
[2026-10-28 02:08:43,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:08:43
[2026-10-28 02:08:43,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:08:44,241.241 INFO    ] Initializing speech engine...
[2026-10-28 02:08:44,248.248 INFO    ] 2026-10-28 02:08:44
[2026-10-28 02:08:44,523.523 INFO    ] 2026-10-28 02:08:44
[2026-10-28 02:08:44,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:08:44,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:08:44,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:08:45,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:08:45,120.120 INFO    ] time= 28/10/2026 02:08:45
[2026-10-28 02:08:45,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:08:45,209.209 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:08:45,343.343 INFO    ] No existing commands found in stream
[2026-10-28 02:08:50,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:08:50,381.381 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-28 02:08:51,082.082 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:08:51,085.085 INFO    ] Checking for system updates...
[2026-10-28 02:08:51,121.121 INFO    ] 200
[2026-10-28 02:08:51,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:08:51,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:08:51,179.179 INFO    ] No update needed
[2026-10-28 02:08:51,182.182 INFO    ] Checking for camera pi updates...
[2026-10-28 02:08:51,238.238 INFO    ] 200
[2026-10-28 02:08:51,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:08:51,291.291 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:08:51,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:08:51,374.374 INFO    ] No camera update needed
[2026-10-28 02:08:51,377.377 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:08:51,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:08:51,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:08:51,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:08:53,432.432 INFO    ] ================================================
[2026-10-28 02:08:53,447.447 INFO    ] Launching Daemon at Wed Oct 28 02:08:53 IST 2026
[2026-10-28 02:08:53,459.459 INFO    ] ================================================
[2026-10-28 02:08:54,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:08:54
[2026-10-28 02:08:54,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:08:54,889.889 INFO    ] Initializing speech engine...
[2026-10-28 02:08:54,895.895 INFO    ] 2026-10-28 02:08:54
[2026-10-28 02:08:55,166.166 INFO    ] 2026-10-28 02:08:55
[2026-10-28 02:08:55,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:08:55,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:08:55,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:08:55,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:08:55,705.705 INFO    ] time= 28/10/2026 02:08:55
[2026-10-28 02:08:55,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:08:55,740.740 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:08:55,875.875 INFO    ] No existing commands found in stream
[2026-10-28 02:09:00,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:09:00,903.903 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 02:09:02,353.353 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:09:02,357.357 INFO    ] Checking for system updates...
[2026-10-28 02:09:02,408.408 INFO    ] 200
[2026-10-28 02:09:02,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:09:02,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:09:02,499.499 INFO    ] No update needed
[2026-10-28 02:09:02,503.503 INFO    ] Checking for camera pi updates...
[2026-10-28 02:09:02,552.552 INFO    ] 200
[2026-10-28 02:09:02,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:09:02,603.603 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:09:02,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:09:02,708.708 INFO    ] No camera update needed
[2026-10-28 02:09:02,712.712 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:09:02,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:09:02,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:09:02,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:09:04,770.770 INFO    ] ================================================
[2026-10-28 02:09:04,787.787 INFO    ] Launching Daemon at Wed Oct 28 02:09:04 IST 2026
[2026-10-28 02:09:04,798.798 INFO    ] ================================================
[2026-10-28 02:09:05,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:09:05
[2026-10-28 02:09:06,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:09:06,349.349 INFO    ] Initializing speech engine...
[2026-10-28 02:09:06,361.361 INFO    ] 2026-10-28 02:09:06
[2026-10-28 02:09:06,632.632 INFO    ] 2026-10-28 02:09:06
[2026-10-28 02:09:06,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:09:06,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:09:06,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:09:07,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:09:07,202.202 INFO    ] time= 28/10/2026 02:09:07
[2026-10-28 02:09:07,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:09:07,237.237 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:09:07,393.393 INFO    ] No existing commands found in stream
[2026-10-28 02:09:12,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:09:12,427.427 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-28 02:09:16,869.869 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:09:16,872.872 INFO    ] Checking for system updates...
[2026-10-28 02:09:16,908.908 INFO    ] 200
[2026-10-28 02:09:16,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:09:16,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:09:16,970.970 INFO    ] No update needed
[2026-10-28 02:09:16,973.973 INFO    ] Checking for camera pi updates...
[2026-10-28 02:09:17,010.010 INFO    ] 200
[2026-10-28 02:09:17,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:09:17,061.061 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:09:17,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:09:17,168.168 INFO    ] No camera update needed
[2026-10-28 02:09:17,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:09:17,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:09:17,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:09:17,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:09:19,225.225 INFO    ] ================================================
[2026-10-28 02:09:19,240.240 INFO    ] Launching Daemon at Wed Oct 28 02:09:19 IST 2026
[2026-10-28 02:09:19,252.252 INFO    ] ================================================
[2026-10-28 02:09:19,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:09:19
[2026-10-28 02:09:20,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:09:20,708.708 INFO    ] Initializing speech engine...
[2026-10-28 02:09:20,713.713 INFO    ] 2026-10-28 02:09:20
[2026-10-28 02:09:20,977.977 INFO    ] 2026-10-28 02:09:20
[2026-10-28 02:09:21,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:09:21,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:09:21,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:09:21,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:09:21,520.520 INFO    ] time= 28/10/2026 02:09:21
[2026-10-28 02:09:21,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:09:21,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:09:21,672.672 INFO    ] No existing commands found in stream
[2026-10-28 02:09:26,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:09:26,689.689 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-28 02:09:30,564.564 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:09:30,566.566 INFO    ] Checking for system updates...
[2026-10-28 02:09:30,601.601 INFO    ] 200
[2026-10-28 02:09:30,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:09:30,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:09:30,658.658 INFO    ] No update needed
[2026-10-28 02:09:30,661.661 INFO    ] Checking for camera pi updates...
[2026-10-28 02:09:30,694.694 INFO    ] 200
[2026-10-28 02:09:30,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:09:30,736.736 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:09:30,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:09:30,818.818 INFO    ] No camera update needed
[2026-10-28 02:09:30,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:09:30,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:09:30,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:09:30,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:09:32,878.878 INFO    ] ================================================
[2026-10-28 02:09:32,895.895 INFO    ] Launching Daemon at Wed Oct 28 02:09:32 IST 2026
[2026-10-28 02:09:32,907.907 INFO    ] ================================================
[2026-10-28 02:09:33,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:09:33
[2026-10-28 02:09:34,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:09:34,317.317 INFO    ] Initializing speech engine...
[2026-10-28 02:09:34,340.340 INFO    ] 2026-10-28 02:09:34
[2026-10-28 02:09:34,595.595 INFO    ] 2026-10-28 02:09:34
[2026-10-28 02:09:34,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:09:34,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:09:34,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:09:35,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:09:35,163.163 INFO    ] time= 28/10/2026 02:09:35
[2026-10-28 02:09:35,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:09:35,193.193 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:09:35,339.339 INFO    ] No existing commands found in stream
[2026-10-28 02:09:40,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:09:40,372.372 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 02:09:44,164.164 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:09:44,166.166 INFO    ] Checking for system updates...
[2026-10-28 02:09:44,202.202 INFO    ] 200
[2026-10-28 02:09:44,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:09:44,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:09:44,259.259 INFO    ] No update needed
[2026-10-28 02:09:44,262.262 INFO    ] Checking for camera pi updates...
[2026-10-28 02:09:44,295.295 INFO    ] 200
[2026-10-28 02:09:44,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:09:44,340.340 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:09:44,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:09:44,444.444 INFO    ] No camera update needed
[2026-10-28 02:09:44,447.447 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:09:44,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:09:44,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:09:44,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:09:46,500.500 INFO    ] ================================================
[2026-10-28 02:09:46,516.516 INFO    ] Launching Daemon at Wed Oct 28 02:09:46 IST 2026
[2026-10-28 02:09:46,527.527 INFO    ] ================================================
[2026-10-28 02:09:47,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:09:47
[2026-10-28 02:09:47,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:09:48,059.059 INFO    ] Initializing speech engine...
[2026-10-28 02:09:48,068.068 INFO    ] 2026-10-28 02:09:48
[2026-10-28 02:09:48,340.340 INFO    ] 2026-10-28 02:09:48
[2026-10-28 02:09:48,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:09:48,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:09:48,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:09:48,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:09:48,898.898 INFO    ] time= 28/10/2026 02:09:48
[2026-10-28 02:09:48,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:09:48,926.926 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:09:49,059.059 INFO    ] No existing commands found in stream
[2026-10-28 02:09:54,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:09:54,082.082 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-28 02:09:58,204.204 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:09:58,207.207 INFO    ] Checking for system updates...
[2026-10-28 02:09:58,245.245 INFO    ] 200
[2026-10-28 02:09:58,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:09:58,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:09:58,301.301 INFO    ] No update needed
[2026-10-28 02:09:58,303.303 INFO    ] Checking for camera pi updates...
[2026-10-28 02:09:58,337.337 INFO    ] 200
[2026-10-28 02:09:58,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:09:58,383.383 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:09:58,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:09:58,539.539 INFO    ] No camera update needed
[2026-10-28 02:09:58,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:09:58,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:09:58,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:09:58,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:10:00,595.595 INFO    ] ================================================
[2026-10-28 02:10:00,610.610 INFO    ] Launching Daemon at Wed Oct 28 02:10:00 IST 2026
[2026-10-28 02:10:00,621.621 INFO    ] ================================================
[2026-10-28 02:10:01,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:10:01
[2026-10-28 02:10:01,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:10:02,479.479 INFO    ] Initializing speech engine...
[2026-10-28 02:10:02,507.507 INFO    ] 2026-10-28 02:10:02
[2026-10-28 02:10:02,857.857 INFO    ] 2026-10-28 02:10:02
[2026-10-28 02:10:02,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:10:03,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:10:03,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:10:03,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:10:03,388.388 INFO    ] time= 28/10/2026 02:10:03
[2026-10-28 02:10:03,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:10:03,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:10:03,460.460 INFO    ] No existing commands found in stream
[2026-10-28 02:10:08,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:10:08,473.473 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-28 02:10:12,523.523 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:10:12,525.525 INFO    ] Checking for system updates...
[2026-10-28 02:10:12,562.562 INFO    ] 200
[2026-10-28 02:10:12,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:10:12,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:10:12,625.625 INFO    ] No update needed
[2026-10-28 02:10:12,628.628 INFO    ] Checking for camera pi updates...
[2026-10-28 02:10:12,661.661 INFO    ] 200
[2026-10-28 02:10:12,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:10:12,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:10:12,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:10:12,793.793 INFO    ] No camera update needed
[2026-10-28 02:10:12,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:10:12,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:10:12,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:10:12,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:10:14,847.847 INFO    ] ================================================
[2026-10-28 02:10:14,862.862 INFO    ] Launching Daemon at Wed Oct 28 02:10:14 IST 2026
[2026-10-28 02:10:14,874.874 INFO    ] ================================================
[2026-10-28 02:10:15,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:10:15
[2026-10-28 02:10:16,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:10:16,318.318 INFO    ] Initializing speech engine...
[2026-10-28 02:10:16,324.324 INFO    ] 2026-10-28 02:10:16
[2026-10-28 02:10:16,571.571 INFO    ] 2026-10-28 02:10:16
[2026-10-28 02:10:16,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:10:16,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:10:16,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:10:17,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:10:17,140.140 INFO    ] time= 28/10/2026 02:10:17
[2026-10-28 02:10:17,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:10:17,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:10:17,277.277 INFO    ] No existing commands found in stream
[2026-10-28 02:10:22,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:10:22,305.305 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-28 02:10:24,964.964 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:10:24,967.967 INFO    ] Checking for system updates...
[2026-10-28 02:10:25,007.007 INFO    ] 200
[2026-10-28 02:10:25,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:10:25,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:10:25,070.070 INFO    ] No update needed
[2026-10-28 02:10:25,072.072 INFO    ] Checking for camera pi updates...
[2026-10-28 02:10:25,108.108 INFO    ] 200
[2026-10-28 02:10:25,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:10:25,150.150 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:10:25,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:10:25,240.240 INFO    ] No camera update needed
[2026-10-28 02:10:25,242.242 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:10:25,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:10:25,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:10:25,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:10:27,294.294 INFO    ] ================================================
[2026-10-28 02:10:27,310.310 INFO    ] Launching Daemon at Wed Oct 28 02:10:27 IST 2026
[2026-10-28 02:10:27,320.320 INFO    ] ================================================
[2026-10-28 02:10:27,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:10:27
[2026-10-28 02:10:28,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:10:28,717.717 INFO    ] Initializing speech engine...
[2026-10-28 02:10:28,731.731 INFO    ] 2026-10-28 02:10:28
[2026-10-28 02:10:28,995.995 INFO    ] 2026-10-28 02:10:28
[2026-10-28 02:10:29,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:10:29,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:10:29,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:10:29,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:10:29,481.481 INFO    ] time= 28/10/2026 02:10:29
[2026-10-28 02:10:29,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:10:29,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:10:29,707.707 INFO    ] No existing commands found in stream
[2026-10-28 02:10:34,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:10:34,730.730 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 02:10:35,284.284 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:10:35,287.287 INFO    ] Checking for system updates...
[2026-10-28 02:10:35,327.327 INFO    ] 200
[2026-10-28 02:10:35,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:10:35,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:10:35,389.389 INFO    ] No update needed
[2026-10-28 02:10:35,392.392 INFO    ] Checking for camera pi updates...
[2026-10-28 02:10:35,433.433 INFO    ] 200
[2026-10-28 02:10:35,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:10:35,476.476 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:10:35,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:10:35,549.549 INFO    ] No camera update needed
[2026-10-28 02:10:35,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:10:35,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:10:35,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:10:35,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:10:37,608.608 INFO    ] ================================================
[2026-10-28 02:10:37,624.624 INFO    ] Launching Daemon at Wed Oct 28 02:10:37 IST 2026
[2026-10-28 02:10:37,635.635 INFO    ] ================================================
[2026-10-28 02:10:38,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:10:38
[2026-10-28 02:10:38,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:10:39,091.091 INFO    ] Initializing speech engine...
[2026-10-28 02:10:39,098.098 INFO    ] 2026-10-28 02:10:39
[2026-10-28 02:10:39,371.371 INFO    ] 2026-10-28 02:10:39
[2026-10-28 02:10:39,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:10:39,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:10:39,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:10:39,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:10:39,903.903 INFO    ] time= 28/10/2026 02:10:39
[2026-10-28 02:10:39,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:10:39,927.927 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:10:40,051.051 INFO    ] No existing commands found in stream
[2026-10-28 02:10:45,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:10:45,068.068 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-28 02:10:46,932.932 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:10:46,935.935 INFO    ] Checking for system updates...
[2026-10-28 02:10:46,971.971 INFO    ] 200
[2026-10-28 02:10:46,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:10:47,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:10:47,030.030 INFO    ] No update needed
[2026-10-28 02:10:47,032.032 INFO    ] Checking for camera pi updates...
[2026-10-28 02:10:47,070.070 INFO    ] 200
[2026-10-28 02:10:47,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:10:47,116.116 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:10:47,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:10:47,199.199 INFO    ] No camera update needed
[2026-10-28 02:10:47,201.201 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:10:47,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:10:47,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:10:47,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:10:49,258.258 INFO    ] ================================================
[2026-10-28 02:10:49,274.274 INFO    ] Launching Daemon at Wed Oct 28 02:10:49 IST 2026
[2026-10-28 02:10:49,285.285 INFO    ] ================================================
[2026-10-28 02:10:49,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:10:49
[2026-10-28 02:10:50,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:10:50,790.790 INFO    ] Initializing speech engine...
[2026-10-28 02:10:50,797.797 INFO    ] 2026-10-28 02:10:50
[2026-10-28 02:10:51,053.053 INFO    ] 2026-10-28 02:10:51
[2026-10-28 02:10:51,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:10:51,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:10:51,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:10:51,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:10:51,595.595 INFO    ] time= 28/10/2026 02:10:51
[2026-10-28 02:10:51,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:10:51,635.635 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:10:51,762.762 INFO    ] No existing commands found in stream
[2026-10-28 02:10:56,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:10:56,795.795 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 02:11:00,469.469 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:11:00,471.471 INFO    ] Checking for system updates...
[2026-10-28 02:11:00,507.507 INFO    ] 200
[2026-10-28 02:11:00,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:11:00,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:11:00,571.571 INFO    ] No update needed
[2026-10-28 02:11:00,574.574 INFO    ] Checking for camera pi updates...
[2026-10-28 02:11:00,610.610 INFO    ] 200
[2026-10-28 02:11:00,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:11:00,656.656 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:11:00,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:11:00,765.765 INFO    ] No camera update needed
[2026-10-28 02:11:00,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:11:00,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:11:00,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:11:00,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:11:02,826.826 INFO    ] ================================================
[2026-10-28 02:11:02,843.843 INFO    ] Launching Daemon at Wed Oct 28 02:11:02 IST 2026
[2026-10-28 02:11:02,856.856 INFO    ] ================================================
[2026-10-28 02:11:03,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:11:03
[2026-10-28 02:11:04,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:11:04,343.343 INFO    ] Initializing speech engine...
[2026-10-28 02:11:04,354.354 INFO    ] 2026-10-28 02:11:04
[2026-10-28 02:11:04,599.599 INFO    ] 2026-10-28 02:11:04
[2026-10-28 02:11:04,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:11:04,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:11:04,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:11:05,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:11:05,156.156 INFO    ] time= 28/10/2026 02:11:05
[2026-10-28 02:11:05,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:11:05,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:11:05,347.347 INFO    ] No existing commands found in stream
[2026-10-28 02:11:10,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:11:10,380.380 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 02:11:14,444.444 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:11:14,447.447 INFO    ] Checking for system updates...
[2026-10-28 02:11:14,483.483 INFO    ] 200
[2026-10-28 02:11:14,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:11:14,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:11:14,543.543 INFO    ] No update needed
[2026-10-28 02:11:14,546.546 INFO    ] Checking for camera pi updates...
[2026-10-28 02:11:14,580.580 INFO    ] 200
[2026-10-28 02:11:14,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:11:14,623.623 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:11:14,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:11:14,712.712 INFO    ] No camera update needed
[2026-10-28 02:11:14,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:11:14,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:11:14,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:11:14,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:11:16,771.771 INFO    ] ================================================
[2026-10-28 02:11:16,786.786 INFO    ] Launching Daemon at Wed Oct 28 02:11:16 IST 2026
[2026-10-28 02:11:16,797.797 INFO    ] ================================================
[2026-10-28 02:11:17,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:11:17
[2026-10-28 02:11:17,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:11:18,256.256 INFO    ] Initializing speech engine...
[2026-10-28 02:11:18,262.262 INFO    ] 2026-10-28 02:11:18
[2026-10-28 02:11:18,526.526 INFO    ] 2026-10-28 02:11:18
[2026-10-28 02:11:18,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:11:18,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:11:18,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:11:19,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:11:19,075.075 INFO    ] time= 28/10/2026 02:11:19
[2026-10-28 02:11:19,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:11:19,098.098 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:11:19,214.214 INFO    ] No existing commands found in stream
[2026-10-28 02:11:24,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:11:24,241.241 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 02:11:26,815.815 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:11:26,818.818 INFO    ] Checking for system updates...
[2026-10-28 02:11:26,854.854 INFO    ] 200
[2026-10-28 02:11:26,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:11:26,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:11:26,913.913 INFO    ] No update needed
[2026-10-28 02:11:26,916.916 INFO    ] Checking for camera pi updates...
[2026-10-28 02:11:26,952.952 INFO    ] 200
[2026-10-28 02:11:26,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:11:26,997.997 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:11:27,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:11:27,080.080 INFO    ] No camera update needed
[2026-10-28 02:11:27,083.083 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:11:27,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:11:27,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:11:27,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:11:29,146.146 INFO    ] ================================================
[2026-10-28 02:11:29,161.161 INFO    ] Launching Daemon at Wed Oct 28 02:11:29 IST 2026
[2026-10-28 02:11:29,171.171 INFO    ] ================================================
[2026-10-28 02:11:29,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:11:29
[2026-10-28 02:11:30,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:11:30,589.589 INFO    ] Initializing speech engine...
[2026-10-28 02:11:30,595.595 INFO    ] 2026-10-28 02:11:30
[2026-10-28 02:11:30,853.853 INFO    ] 2026-10-28 02:11:30
[2026-10-28 02:11:30,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:11:31,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:11:31,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:11:31,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:11:31,394.394 INFO    ] time= 28/10/2026 02:11:31
[2026-10-28 02:11:31,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:11:31,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:11:31,639.639 INFO    ] No existing commands found in stream
[2026-10-28 02:11:36,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:11:36,672.672 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-28 02:11:38,897.897 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:11:38,900.900 INFO    ] Checking for system updates...
[2026-10-28 02:11:38,941.941 INFO    ] 200
[2026-10-28 02:11:38,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:11:39,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:11:39,007.007 INFO    ] No update needed
[2026-10-28 02:11:39,009.009 INFO    ] Checking for camera pi updates...
[2026-10-28 02:11:39,047.047 INFO    ] 200
[2026-10-28 02:11:39,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:11:39,089.089 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:11:39,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:11:39,183.183 INFO    ] No camera update needed
[2026-10-28 02:11:39,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:11:39,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:11:39,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:11:39,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:11:41,240.240 INFO    ] ================================================
[2026-10-28 02:11:41,255.255 INFO    ] Launching Daemon at Wed Oct 28 02:11:41 IST 2026
[2026-10-28 02:11:41,266.266 INFO    ] ================================================
[2026-10-28 02:11:41,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:11:41
[2026-10-28 02:11:42,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:11:42,822.822 INFO    ] Initializing speech engine...
[2026-10-28 02:11:42,830.830 INFO    ] 2026-10-28 02:11:42
[2026-10-28 02:11:43,105.105 INFO    ] 2026-10-28 02:11:43
[2026-10-28 02:11:43,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:11:43,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:11:43,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:11:43,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:11:43,672.672 INFO    ] time= 28/10/2026 02:11:43
[2026-10-28 02:11:43,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:11:43,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:11:43,837.837 INFO    ] No existing commands found in stream
[2026-10-28 02:11:48,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:11:48,864.864 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-28 02:11:52,364.364 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:11:52,367.367 INFO    ] Checking for system updates...
[2026-10-28 02:11:52,404.404 INFO    ] 200
[2026-10-28 02:11:52,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:11:52,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:11:52,461.461 INFO    ] No update needed
[2026-10-28 02:11:52,463.463 INFO    ] Checking for camera pi updates...
[2026-10-28 02:11:52,499.499 INFO    ] 200
[2026-10-28 02:11:52,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:11:52,541.541 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:11:52,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:11:52,616.616 INFO    ] No camera update needed
[2026-10-28 02:11:52,618.618 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:11:52,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:11:52,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:11:52,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:11:54,670.670 INFO    ] ================================================
[2026-10-28 02:11:54,686.686 INFO    ] Launching Daemon at Wed Oct 28 02:11:54 IST 2026
[2026-10-28 02:11:54,697.697 INFO    ] ================================================
[2026-10-28 02:11:55,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:11:55
[2026-10-28 02:11:55,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:11:56,156.156 INFO    ] Initializing speech engine...
[2026-10-28 02:11:56,169.169 INFO    ] 2026-10-28 02:11:56
[2026-10-28 02:11:56,441.441 INFO    ] 2026-10-28 02:11:56
[2026-10-28 02:11:56,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:11:56,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:11:56,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:11:56,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:11:56,981.981 INFO    ] time= 28/10/2026 02:11:56
[2026-10-28 02:11:57,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:11:57,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:11:57,159.159 INFO    ] No existing commands found in stream
[2026-10-28 02:12:02,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:12:02,189.189 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-28 02:12:06,695.695 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:12:06,697.697 INFO    ] Checking for system updates...
[2026-10-28 02:12:06,733.733 INFO    ] 200
[2026-10-28 02:12:06,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:12:06,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:12:06,791.791 INFO    ] No update needed
[2026-10-28 02:12:06,794.794 INFO    ] Checking for camera pi updates...
[2026-10-28 02:12:06,833.833 INFO    ] 200
[2026-10-28 02:12:06,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:12:06,880.880 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:12:06,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:12:06,959.959 INFO    ] No camera update needed
[2026-10-28 02:12:06,961.961 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:12:06,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:12:06,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:12:06,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:12:09,014.014 INFO    ] ================================================
[2026-10-28 02:12:09,029.029 INFO    ] Launching Daemon at Wed Oct 28 02:12:09 IST 2026
[2026-10-28 02:12:09,041.041 INFO    ] ================================================
[2026-10-28 02:12:09,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:12:09
[2026-10-28 02:12:10,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:12:10,495.495 INFO    ] Initializing speech engine...
[2026-10-28 02:12:10,502.502 INFO    ] 2026-10-28 02:12:10
[2026-10-28 02:12:10,762.762 INFO    ] 2026-10-28 02:12:10
[2026-10-28 02:12:10,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:12:11,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:12:11,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:12:11,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:12:11,305.305 INFO    ] time= 28/10/2026 02:12:11
[2026-10-28 02:12:11,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:12:11,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:12:11,471.471 INFO    ] No existing commands found in stream
[2026-10-28 02:12:16,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:12:16,504.504 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-28 02:12:20,444.444 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:12:20,447.447 INFO    ] Checking for system updates...
[2026-10-28 02:12:20,483.483 INFO    ] 200
[2026-10-28 02:12:20,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:12:20,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:12:20,545.545 INFO    ] No update needed
[2026-10-28 02:12:20,548.548 INFO    ] Checking for camera pi updates...
[2026-10-28 02:12:20,581.581 INFO    ] 200
[2026-10-28 02:12:20,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:12:20,628.628 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:12:20,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:12:20,736.736 INFO    ] No camera update needed
[2026-10-28 02:12:20,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:12:20,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:12:20,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:12:20,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:12:22,794.794 INFO    ] ================================================
[2026-10-28 02:12:22,809.809 INFO    ] Launching Daemon at Wed Oct 28 02:12:22 IST 2026
[2026-10-28 02:12:22,820.820 INFO    ] ================================================
[2026-10-28 02:12:23,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:12:23
[2026-10-28 02:12:24,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:12:24,282.282 INFO    ] Initializing speech engine...
[2026-10-28 02:12:24,291.291 INFO    ] 2026-10-28 02:12:24
[2026-10-28 02:12:24,553.553 INFO    ] 2026-10-28 02:12:24
[2026-10-28 02:12:24,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:12:24,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:12:24,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:12:25,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:12:25,158.158 INFO    ] time= 28/10/2026 02:12:25
[2026-10-28 02:12:25,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:12:25,205.205 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:12:25,326.326 INFO    ] No existing commands found in stream
[2026-10-28 02:12:30,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:12:30,358.358 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 02:12:34,194.194 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:12:34,198.198 INFO    ] Checking for system updates...
[2026-10-28 02:12:34,259.259 INFO    ] 200
[2026-10-28 02:12:34,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:12:34,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:12:34,322.322 INFO    ] No update needed
[2026-10-28 02:12:34,325.325 INFO    ] Checking for camera pi updates...
[2026-10-28 02:12:34,360.360 INFO    ] 200
[2026-10-28 02:12:34,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:12:34,403.403 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:12:34,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:12:34,507.507 INFO    ] No camera update needed
[2026-10-28 02:12:34,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:12:34,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:12:34,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:12:34,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:12:36,565.565 INFO    ] ================================================
[2026-10-28 02:12:36,580.580 INFO    ] Launching Daemon at Wed Oct 28 02:12:36 IST 2026
[2026-10-28 02:12:36,591.591 INFO    ] ================================================
[2026-10-28 02:12:37,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:12:37
[2026-10-28 02:12:37,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:12:38,031.031 INFO    ] Initializing speech engine...
[2026-10-28 02:12:38,040.040 INFO    ] 2026-10-28 02:12:38
[2026-10-28 02:12:38,296.296 INFO    ] 2026-10-28 02:12:38
[2026-10-28 02:12:38,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:12:38,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:12:38,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:12:38,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:12:38,843.843 INFO    ] time= 28/10/2026 02:12:38
[2026-10-28 02:12:38,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:12:38,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:12:39,000.000 INFO    ] No existing commands found in stream
[2026-10-28 02:12:44,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:12:44,027.027 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-28 02:12:47,484.484 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:12:47,487.487 INFO    ] Checking for system updates...
[2026-10-28 02:12:47,522.522 INFO    ] 200
[2026-10-28 02:12:47,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:12:47,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:12:47,578.578 INFO    ] No update needed
[2026-10-28 02:12:47,581.581 INFO    ] Checking for camera pi updates...
[2026-10-28 02:12:47,615.615 INFO    ] 200
[2026-10-28 02:12:47,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:12:47,664.664 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:12:47,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:12:47,773.773 INFO    ] No camera update needed
[2026-10-28 02:12:47,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:12:47,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:12:47,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:12:47,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:12:49,829.829 INFO    ] ================================================
[2026-10-28 02:12:49,844.844 INFO    ] Launching Daemon at Wed Oct 28 02:12:49 IST 2026
[2026-10-28 02:12:49,855.855 INFO    ] ================================================
[2026-10-28 02:12:50,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:12:50
[2026-10-28 02:12:51,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:12:51,283.283 INFO    ] Initializing speech engine...
[2026-10-28 02:12:51,290.290 INFO    ] 2026-10-28 02:12:51
[2026-10-28 02:12:51,584.584 INFO    ] 2026-10-28 02:12:51
[2026-10-28 02:12:51,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:12:51,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:12:51,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:12:52,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:12:52,126.126 INFO    ] time= 28/10/2026 02:12:52
[2026-10-28 02:12:52,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:12:52,206.206 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:12:52,337.337 INFO    ] No existing commands found in stream
[2026-10-28 02:12:57,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:12:57,370.370 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-28 02:13:01,835.835 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:13:01,841.841 INFO    ] Checking for system updates...
[2026-10-28 02:13:01,895.895 INFO    ] 200
[2026-10-28 02:13:01,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:13:01,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:13:01,964.964 INFO    ] No update needed
[2026-10-28 02:13:01,967.967 INFO    ] Checking for camera pi updates...
[2026-10-28 02:13:02,004.004 INFO    ] 200
[2026-10-28 02:13:02,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:13:02,051.051 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:13:02,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:13:02,174.174 INFO    ] No camera update needed
[2026-10-28 02:13:02,178.178 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:13:02,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:13:02,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:13:02,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:13:04,238.238 INFO    ] ================================================
[2026-10-28 02:13:04,254.254 INFO    ] Launching Daemon at Wed Oct 28 02:13:04 IST 2026
[2026-10-28 02:13:04,265.265 INFO    ] ================================================
[2026-10-28 02:13:04,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:13:04
[2026-10-28 02:13:05,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:13:05,718.718 INFO    ] Initializing speech engine...
[2026-10-28 02:13:05,726.726 INFO    ] 2026-10-28 02:13:05
[2026-10-28 02:13:05,986.986 INFO    ] 2026-10-28 02:13:05
[2026-10-28 02:13:06,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:13:06,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:13:06,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:13:06,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:13:06,578.578 INFO    ] time= 28/10/2026 02:13:06
[2026-10-28 02:13:06,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:13:06,671.671 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:13:06,779.779 INFO    ] No existing commands found in stream
[2026-10-28 02:13:11,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:13:11,798.798 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 02:13:15,865.865 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:13:15,867.867 INFO    ] Checking for system updates...
[2026-10-28 02:13:15,903.903 INFO    ] 200
[2026-10-28 02:13:15,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:13:15,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:13:15,964.964 INFO    ] No update needed
[2026-10-28 02:13:15,966.966 INFO    ] Checking for camera pi updates...
[2026-10-28 02:13:16,000.000 INFO    ] 200
[2026-10-28 02:13:16,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:13:16,048.048 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:13:16,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:13:16,136.136 INFO    ] No camera update needed
[2026-10-28 02:13:16,139.139 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:13:16,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:13:16,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:13:16,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:13:18,193.193 INFO    ] ================================================
[2026-10-28 02:13:18,209.209 INFO    ] Launching Daemon at Wed Oct 28 02:13:18 IST 2026
[2026-10-28 02:13:18,219.219 INFO    ] ================================================
[2026-10-28 02:13:18,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:13:18
[2026-10-28 02:13:19,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:13:19,638.638 INFO    ] Initializing speech engine...
[2026-10-28 02:13:19,648.648 INFO    ] 2026-10-28 02:13:19
[2026-10-28 02:13:19,899.899 INFO    ] 2026-10-28 02:13:19
[2026-10-28 02:13:19,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:13:20,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:13:20,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:13:20,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:13:20,469.469 INFO    ] time= 28/10/2026 02:13:20
[2026-10-28 02:13:20,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:13:20,493.493 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:13:20,626.626 INFO    ] No existing commands found in stream
[2026-10-28 02:13:25,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:13:25,641.641 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 02:13:27,085.085 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:13:27,088.088 INFO    ] Checking for system updates...
[2026-10-28 02:13:27,124.124 INFO    ] 200
[2026-10-28 02:13:27,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:13:27,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:13:27,183.183 INFO    ] No update needed
[2026-10-28 02:13:27,185.185 INFO    ] Checking for camera pi updates...
[2026-10-28 02:13:27,228.228 INFO    ] 200
[2026-10-28 02:13:27,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:13:27,275.275 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:13:27,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:13:27,361.361 INFO    ] No camera update needed
[2026-10-28 02:13:27,364.364 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:13:27,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:13:27,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:13:27,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:13:29,420.420 INFO    ] ================================================
[2026-10-28 02:13:29,436.436 INFO    ] Launching Daemon at Wed Oct 28 02:13:29 IST 2026
[2026-10-28 02:13:29,446.446 INFO    ] ================================================
[2026-10-28 02:13:30,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:13:30
[2026-10-28 02:13:30,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:13:30,861.861 INFO    ] Initializing speech engine...
[2026-10-28 02:13:30,869.869 INFO    ] 2026-10-28 02:13:30
[2026-10-28 02:13:31,127.127 INFO    ] 2026-10-28 02:13:31
[2026-10-28 02:13:31,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:13:31,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:13:31,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:13:31,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:13:31,686.686 INFO    ] time= 28/10/2026 02:13:31
[2026-10-28 02:13:31,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:13:31,735.735 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:13:31,872.872 INFO    ] No existing commands found in stream
[2026-10-28 02:13:36,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:13:36,900.900 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-28 02:13:38,165.165 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:13:38,168.168 INFO    ] Checking for system updates...
[2026-10-28 02:13:38,204.204 INFO    ] 200
[2026-10-28 02:13:38,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:13:38,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:13:38,269.269 INFO    ] No update needed
[2026-10-28 02:13:38,271.271 INFO    ] Checking for camera pi updates...
[2026-10-28 02:13:38,305.305 INFO    ] 200
[2026-10-28 02:13:38,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:13:38,348.348 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:13:38,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:13:38,433.433 INFO    ] No camera update needed
[2026-10-28 02:13:38,435.435 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:13:38,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:13:38,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:13:38,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:13:40,490.490 INFO    ] ================================================
[2026-10-28 02:13:40,505.505 INFO    ] Launching Daemon at Wed Oct 28 02:13:40 IST 2026
[2026-10-28 02:13:40,516.516 INFO    ] ================================================
[2026-10-28 02:13:41,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:13:41
[2026-10-28 02:13:41,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:13:41,941.941 INFO    ] Initializing speech engine...
[2026-10-28 02:13:41,948.948 INFO    ] 2026-10-28 02:13:41
[2026-10-28 02:13:42,206.206 INFO    ] 2026-10-28 02:13:42
[2026-10-28 02:13:42,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:13:42,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:13:42,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:13:42,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:13:42,763.763 INFO    ] time= 28/10/2026 02:13:42
[2026-10-28 02:13:42,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:13:42,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:13:42,938.938 INFO    ] No existing commands found in stream
[2026-10-28 02:13:47,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:13:47,971.971 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-28 02:13:48,686.686 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:13:48,689.689 INFO    ] Checking for system updates...
[2026-10-28 02:13:48,724.724 INFO    ] 200
[2026-10-28 02:13:48,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:13:48,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:13:48,788.788 INFO    ] No update needed
[2026-10-28 02:13:48,790.790 INFO    ] Checking for camera pi updates...
[2026-10-28 02:13:48,823.823 INFO    ] 200
[2026-10-28 02:13:48,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:13:48,866.866 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:13:48,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:13:48,957.957 INFO    ] No camera update needed
[2026-10-28 02:13:48,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:13:48,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:13:48,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:13:48,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:13:51,015.015 INFO    ] ================================================
[2026-10-28 02:13:51,030.030 INFO    ] Launching Daemon at Wed Oct 28 02:13:51 IST 2026
[2026-10-28 02:13:51,041.041 INFO    ] ================================================
[2026-10-28 02:13:51,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:13:51
[2026-10-28 02:13:52,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:13:52,456.456 INFO    ] Initializing speech engine...
[2026-10-28 02:13:52,465.465 INFO    ] 2026-10-28 02:13:52
[2026-10-28 02:13:52,710.710 INFO    ] 2026-10-28 02:13:52
[2026-10-28 02:13:52,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:13:52,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:13:53,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:13:53,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:13:53,262.262 INFO    ] time= 28/10/2026 02:13:53
[2026-10-28 02:13:53,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:13:53,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:13:53,416.416 INFO    ] No existing commands found in stream
[2026-10-28 02:13:58,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:13:58,430.430 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-28 02:14:02,752.752 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:14:02,756.756 INFO    ] Checking for system updates...
[2026-10-28 02:14:02,817.817 INFO    ] 200
[2026-10-28 02:14:02,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:14:02,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:14:02,920.920 INFO    ] No update needed
[2026-10-28 02:14:02,922.922 INFO    ] Checking for camera pi updates...
[2026-10-28 02:14:02,964.964 INFO    ] 200
[2026-10-28 02:14:02,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:14:03,021.021 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:14:03,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:14:03,131.131 INFO    ] No camera update needed
[2026-10-28 02:14:03,133.133 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:14:03,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:14:03,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:14:03,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:14:05,185.185 INFO    ] ================================================
[2026-10-28 02:14:05,200.200 INFO    ] Launching Daemon at Wed Oct 28 02:14:05 IST 2026
[2026-10-28 02:14:05,210.210 INFO    ] ================================================
[2026-10-28 02:14:05,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:14:05
[2026-10-28 02:14:06,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:14:06,614.614 INFO    ] Initializing speech engine...
[2026-10-28 02:14:06,621.621 INFO    ] 2026-10-28 02:14:06
[2026-10-28 02:14:06,915.915 INFO    ] 2026-10-28 02:14:06
[2026-10-28 02:14:06,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:14:07,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:14:07,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:14:07,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:14:07,469.469 INFO    ] time= 28/10/2026 02:14:07
[2026-10-28 02:14:07,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:14:07,557.557 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:14:07,707.707 INFO    ] No existing commands found in stream
[2026-10-28 02:14:12,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:14:12,735.735 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-28 02:14:14,145.145 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:14:14,148.148 INFO    ] Checking for system updates...
[2026-10-28 02:14:14,187.187 INFO    ] 200
[2026-10-28 02:14:14,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:14:14,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:14:14,244.244 INFO    ] No update needed
[2026-10-28 02:14:14,247.247 INFO    ] Checking for camera pi updates...
[2026-10-28 02:14:14,280.280 INFO    ] 200
[2026-10-28 02:14:14,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:14:14,323.323 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:14:14,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:14:14,404.404 INFO    ] No camera update needed
[2026-10-28 02:14:14,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:14:14,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:14:14,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:14:14,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:14:16,460.460 INFO    ] ================================================
[2026-10-28 02:14:16,476.476 INFO    ] Launching Daemon at Wed Oct 28 02:14:16 IST 2026
[2026-10-28 02:14:16,487.487 INFO    ] ================================================
[2026-10-28 02:14:17,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:14:17
[2026-10-28 02:14:17,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:14:17,903.903 INFO    ] Initializing speech engine...
[2026-10-28 02:14:17,912.912 INFO    ] 2026-10-28 02:14:17
[2026-10-28 02:14:18,161.161 INFO    ] 2026-10-28 02:14:18
[2026-10-28 02:14:18,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:14:18,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:14:18,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:14:18,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:14:18,729.729 INFO    ] time= 28/10/2026 02:14:18
[2026-10-28 02:14:18,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:14:18,753.753 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:14:18,894.894 INFO    ] No existing commands found in stream
[2026-10-28 02:14:23,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:14:23,917.917 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-28 02:14:26,933.933 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:14:26,936.936 INFO    ] Checking for system updates...
[2026-10-28 02:14:26,976.976 INFO    ] 200
[2026-10-28 02:14:26,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:14:27,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:14:27,039.039 INFO    ] No update needed
[2026-10-28 02:14:27,041.041 INFO    ] Checking for camera pi updates...
[2026-10-28 02:14:27,078.078 INFO    ] 200
[2026-10-28 02:14:27,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:14:27,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:14:27,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:14:27,312.312 INFO    ] No camera update needed
[2026-10-28 02:14:27,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:14:27,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:14:27,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:14:27,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:14:29,366.366 INFO    ] ================================================
[2026-10-28 02:14:29,381.381 INFO    ] Launching Daemon at Wed Oct 28 02:14:29 IST 2026
[2026-10-28 02:14:29,392.392 INFO    ] ================================================
[2026-10-28 02:14:29,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:14:29
[2026-10-28 02:14:30,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:14:30,808.808 INFO    ] Initializing speech engine...
[2026-10-28 02:14:30,821.821 INFO    ] 2026-10-28 02:14:30
[2026-10-28 02:14:31,067.067 INFO    ] 2026-10-28 02:14:31
[2026-10-28 02:14:31,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:14:31,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:14:31,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:14:31,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:14:31,651.651 INFO    ] time= 28/10/2026 02:14:31
[2026-10-28 02:14:31,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:14:31,692.692 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:14:31,861.861 INFO    ] No existing commands found in stream
[2026-10-28 02:14:36,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:14:36,889.889 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-28 02:14:39,565.565 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:14:39,568.568 INFO    ] Checking for system updates...
[2026-10-28 02:14:39,604.604 INFO    ] 200
[2026-10-28 02:14:39,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:14:39,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:14:39,662.662 INFO    ] No update needed
[2026-10-28 02:14:39,665.665 INFO    ] Checking for camera pi updates...
[2026-10-28 02:14:39,702.702 INFO    ] 200
[2026-10-28 02:14:39,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:14:39,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:14:39,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:14:39,840.840 INFO    ] No camera update needed
[2026-10-28 02:14:39,842.842 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:14:39,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:14:39,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:14:39,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:14:41,896.896 INFO    ] ================================================
[2026-10-28 02:14:41,911.911 INFO    ] Launching Daemon at Wed Oct 28 02:14:41 IST 2026
[2026-10-28 02:14:41,923.923 INFO    ] ================================================
[2026-10-28 02:14:42,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:14:42
[2026-10-28 02:14:43,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:14:43,350.350 INFO    ] Initializing speech engine...
[2026-10-28 02:14:43,359.359 INFO    ] 2026-10-28 02:14:43
[2026-10-28 02:14:43,655.655 INFO    ] 2026-10-28 02:14:43
[2026-10-28 02:14:43,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:14:43,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:14:43,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:14:44,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:14:44,304.304 INFO    ] time= 28/10/2026 02:14:44
[2026-10-28 02:14:44,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:14:44,328.328 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:14:44,474.474 INFO    ] No existing commands found in stream
[2026-10-28 02:14:49,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:14:49,498.498 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-28 02:14:50,661.661 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:14:50,664.664 INFO    ] Checking for system updates...
[2026-10-28 02:14:50,704.704 INFO    ] 200
[2026-10-28 02:14:50,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:14:50,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:14:50,760.760 INFO    ] No update needed
[2026-10-28 02:14:50,763.763 INFO    ] Checking for camera pi updates...
[2026-10-28 02:14:50,800.800 INFO    ] 200
[2026-10-28 02:14:50,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:14:50,843.843 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:14:50,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:14:50,932.932 INFO    ] No camera update needed
[2026-10-28 02:14:50,934.934 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:14:50,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:14:50,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:14:50,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:14:52,989.989 INFO    ] ================================================
[2026-10-28 02:14:53,005.005 INFO    ] Launching Daemon at Wed Oct 28 02:14:52 IST 2026
[2026-10-28 02:14:53,015.015 INFO    ] ================================================
[2026-10-28 02:14:53,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:14:53
[2026-10-28 02:14:54,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:14:54,656.656 INFO    ] Initializing speech engine...
[2026-10-28 02:14:54,670.670 INFO    ] 2026-10-28 02:14:54
[2026-10-28 02:14:54,984.984 INFO    ] 2026-10-28 02:14:54
[2026-10-28 02:14:55,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:14:55,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:14:55,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:14:55,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:14:55,520.520 INFO    ] time= 28/10/2026 02:14:55
[2026-10-28 02:14:55,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:14:55,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:14:55,651.651 INFO    ] No existing commands found in stream
[2026-10-28 02:15:00,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:15:00,679.679 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 02:15:04,171.171 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:15:04,174.174 INFO    ] Checking for system updates...
[2026-10-28 02:15:04,215.215 INFO    ] 200
[2026-10-28 02:15:04,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:15:04,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:15:04,273.273 INFO    ] No update needed
[2026-10-28 02:15:04,276.276 INFO    ] Checking for camera pi updates...
[2026-10-28 02:15:04,314.314 INFO    ] 200
[2026-10-28 02:15:04,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:15:04,362.362 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:15:04,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:15:04,468.468 INFO    ] No camera update needed
[2026-10-28 02:15:04,470.470 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:15:04,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:15:04,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:15:04,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:15:06,525.525 INFO    ] ================================================
[2026-10-28 02:15:06,540.540 INFO    ] Launching Daemon at Wed Oct 28 02:15:06 IST 2026
[2026-10-28 02:15:06,551.551 INFO    ] ================================================
[2026-10-28 02:15:07,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:15:07
[2026-10-28 02:15:07,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:15:07,998.998 INFO    ] Initializing speech engine...
[2026-10-28 02:15:08,007.007 INFO    ] 2026-10-28 02:15:07
[2026-10-28 02:15:08,309.309 INFO    ] 2026-10-28 02:15:08
[2026-10-28 02:15:08,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:15:08,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:15:08,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:15:08,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:15:08,838.838 INFO    ] time= 28/10/2026 02:15:08
[2026-10-28 02:15:08,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:15:08,941.941 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:15:09,030.030 INFO    ] No existing commands found in stream
[2026-10-28 02:15:14,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:15:14,045.045 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-28 02:15:14,644.644 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:15:14,647.647 INFO    ] Checking for system updates...
[2026-10-28 02:15:14,687.687 INFO    ] 200
[2026-10-28 02:15:14,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:15:14,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:15:14,752.752 INFO    ] No update needed
[2026-10-28 02:15:14,754.754 INFO    ] Checking for camera pi updates...
[2026-10-28 02:15:14,792.792 INFO    ] 200
[2026-10-28 02:15:14,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:15:14,840.840 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:15:14,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:15:14,935.935 INFO    ] No camera update needed
[2026-10-28 02:15:14,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:15:14,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:15:14,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:15:14,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:15:16,991.991 INFO    ] ================================================
[2026-10-28 02:15:17,006.006 INFO    ] Launching Daemon at Wed Oct 28 02:15:17 IST 2026
[2026-10-28 02:15:17,017.017 INFO    ] ================================================
[2026-10-28 02:15:17,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:15:17
[2026-10-28 02:15:18,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:15:18,586.586 INFO    ] Initializing speech engine...
[2026-10-28 02:15:18,598.598 INFO    ] 2026-10-28 02:15:18
[2026-10-28 02:15:18,907.907 INFO    ] 2026-10-28 02:15:18
[2026-10-28 02:15:18,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:15:19,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:15:19,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:15:19,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:15:19,426.426 INFO    ] time= 28/10/2026 02:15:19
[2026-10-28 02:15:19,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:15:19,463.463 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:15:19,589.589 INFO    ] No existing commands found in stream
[2026-10-28 02:15:24,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:15:24,618.618 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-28 02:15:26,307.307 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:15:26,310.310 INFO    ] Checking for system updates...
[2026-10-28 02:15:26,351.351 INFO    ] 200
[2026-10-28 02:15:26,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:15:26,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:15:26,417.417 INFO    ] No update needed
[2026-10-28 02:15:26,420.420 INFO    ] Checking for camera pi updates...
[2026-10-28 02:15:26,458.458 INFO    ] 200
[2026-10-28 02:15:26,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:15:26,502.502 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:15:26,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:15:26,589.589 INFO    ] No camera update needed
[2026-10-28 02:15:26,592.592 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:15:26,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:15:26,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:15:26,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:15:28,650.650 INFO    ] ================================================
[2026-10-28 02:15:28,666.666 INFO    ] Launching Daemon at Wed Oct 28 02:15:28 IST 2026
[2026-10-28 02:15:28,678.678 INFO    ] ================================================
[2026-10-28 02:15:29,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:15:29
[2026-10-28 02:15:29,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:15:30,247.247 INFO    ] Initializing speech engine...
[2026-10-28 02:15:30,260.260 INFO    ] 2026-10-28 02:15:30
[2026-10-28 02:15:30,512.512 INFO    ] 2026-10-28 02:15:30
[2026-10-28 02:15:30,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:15:30,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:15:30,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:15:31,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:15:31,083.083 INFO    ] time= 28/10/2026 02:15:31
[2026-10-28 02:15:31,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:15:31,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:15:31,236.236 INFO    ] No existing commands found in stream
[2026-10-28 02:15:36,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:15:36,255.255 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-28 02:15:38,464.464 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:15:38,466.466 INFO    ] Checking for system updates...
[2026-10-28 02:15:38,505.505 INFO    ] 200
[2026-10-28 02:15:38,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:15:38,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:15:38,569.569 INFO    ] No update needed
[2026-10-28 02:15:38,572.572 INFO    ] Checking for camera pi updates...
[2026-10-28 02:15:38,608.608 INFO    ] 200
[2026-10-28 02:15:38,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:15:38,655.655 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:15:38,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:15:38,739.739 INFO    ] No camera update needed
[2026-10-28 02:15:38,741.741 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:15:38,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:15:38,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:15:38,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:15:40,794.794 INFO    ] ================================================
[2026-10-28 02:15:40,810.810 INFO    ] Launching Daemon at Wed Oct 28 02:15:40 IST 2026
[2026-10-28 02:15:40,820.820 INFO    ] ================================================
[2026-10-28 02:15:41,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:15:41
[2026-10-28 02:15:42,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:15:42,281.281 INFO    ] Initializing speech engine...
[2026-10-28 02:15:42,287.287 INFO    ] 2026-10-28 02:15:42
[2026-10-28 02:15:42,547.547 INFO    ] 2026-10-28 02:15:42
[2026-10-28 02:15:42,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:15:42,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:15:42,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:15:43,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:15:43,091.091 INFO    ] time= 28/10/2026 02:15:43
[2026-10-28 02:15:43,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:15:43,121.121 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:15:43,263.263 INFO    ] No existing commands found in stream
[2026-10-28 02:15:48,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:15:48,297.297 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-28 02:15:51,149.149 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:15:51,152.152 INFO    ] Checking for system updates...
[2026-10-28 02:15:51,193.193 INFO    ] 200
[2026-10-28 02:15:51,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:15:51,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:15:51,261.261 INFO    ] No update needed
[2026-10-28 02:15:51,264.264 INFO    ] Checking for camera pi updates...
[2026-10-28 02:15:51,299.299 INFO    ] 200
[2026-10-28 02:15:51,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:15:51,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:15:51,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:15:51,439.439 INFO    ] No camera update needed
[2026-10-28 02:15:51,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:15:51,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:15:51,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:15:51,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:15:53,498.498 INFO    ] ================================================
[2026-10-28 02:15:53,513.513 INFO    ] Launching Daemon at Wed Oct 28 02:15:53 IST 2026
[2026-10-28 02:15:53,524.524 INFO    ] ================================================
[2026-10-28 02:15:54,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:15:54
[2026-10-28 02:15:54,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:15:54,953.953 INFO    ] Initializing speech engine...
[2026-10-28 02:15:54,961.961 INFO    ] 2026-10-28 02:15:54
[2026-10-28 02:15:55,218.218 INFO    ] 2026-10-28 02:15:55
[2026-10-28 02:15:55,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:15:55,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:15:55,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:15:55,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:15:55,811.811 INFO    ] time= 28/10/2026 02:15:55
[2026-10-28 02:15:55,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:15:55,848.848 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:15:55,967.967 INFO    ] No existing commands found in stream
[2026-10-28 02:16:00,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:16:00,997.997 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 02:16:03,110.110 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:16:03,114.114 INFO    ] Checking for system updates...
[2026-10-28 02:16:03,165.165 INFO    ] 200
[2026-10-28 02:16:03,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:16:03,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:16:03,226.226 INFO    ] No update needed
[2026-10-28 02:16:03,229.229 INFO    ] Checking for camera pi updates...
[2026-10-28 02:16:03,263.263 INFO    ] 200
[2026-10-28 02:16:03,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:16:03,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:16:03,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:16:03,392.392 INFO    ] No camera update needed
[2026-10-28 02:16:03,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:16:03,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:16:03,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:16:03,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:16:05,448.448 INFO    ] ================================================
[2026-10-28 02:16:05,463.463 INFO    ] Launching Daemon at Wed Oct 28 02:16:05 IST 2026
[2026-10-28 02:16:05,474.474 INFO    ] ================================================
[2026-10-28 02:16:06,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:16:06
[2026-10-28 02:16:06,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:16:07,114.114 INFO    ] Initializing speech engine...
[2026-10-28 02:16:07,120.120 INFO    ] 2026-10-28 02:16:07
[2026-10-28 02:16:07,395.395 INFO    ] 2026-10-28 02:16:07
[2026-10-28 02:16:07,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:16:07,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:16:07,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:16:07,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:16:07,960.960 INFO    ] time= 28/10/2026 02:16:07
[2026-10-28 02:16:07,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:16:07,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:16:08,143.143 INFO    ] No existing commands found in stream
[2026-10-28 02:16:13,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:16:13,182.182 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 02:16:15,700.700 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:16:15,703.703 INFO    ] Checking for system updates...
[2026-10-28 02:16:15,744.744 INFO    ] 200
[2026-10-28 02:16:15,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:16:15,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:16:15,808.808 INFO    ] No update needed
[2026-10-28 02:16:15,811.811 INFO    ] Checking for camera pi updates...
[2026-10-28 02:16:15,852.852 INFO    ] 200
[2026-10-28 02:16:15,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:16:15,900.900 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:16:15,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:16:15,990.990 INFO    ] No camera update needed
[2026-10-28 02:16:15,992.992 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:16:15,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:16:16,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:16:16,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:16:18,045.045 INFO    ] ================================================
[2026-10-28 02:16:18,060.060 INFO    ] Launching Daemon at Wed Oct 28 02:16:18 IST 2026
[2026-10-28 02:16:18,071.071 INFO    ] ================================================
[2026-10-28 02:16:18,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:16:18
[2026-10-28 02:16:19,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:16:19,517.517 INFO    ] Initializing speech engine...
[2026-10-28 02:16:19,527.527 INFO    ] 2026-10-28 02:16:19
[2026-10-28 02:16:19,775.775 INFO    ] 2026-10-28 02:16:19
[2026-10-28 02:16:19,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:16:20,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:16:20,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:16:20,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:16:20,342.342 INFO    ] time= 28/10/2026 02:16:20
[2026-10-28 02:16:20,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:16:20,369.369 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:16:20,510.510 INFO    ] No existing commands found in stream
[2026-10-28 02:16:25,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:16:25,544.544 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-28 02:16:29,934.934 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:16:29,937.937 INFO    ] Checking for system updates...
[2026-10-28 02:16:29,973.973 INFO    ] 200
[2026-10-28 02:16:29,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:16:30,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:16:30,030.030 INFO    ] No update needed
[2026-10-28 02:16:30,033.033 INFO    ] Checking for camera pi updates...
[2026-10-28 02:16:30,067.067 INFO    ] 200
[2026-10-28 02:16:30,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:16:30,111.111 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:16:30,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:16:30,306.306 INFO    ] No camera update needed
[2026-10-28 02:16:30,308.308 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:16:30,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:16:30,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:16:30,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:16:32,363.363 INFO    ] ================================================
[2026-10-28 02:16:32,380.380 INFO    ] Launching Daemon at Wed Oct 28 02:16:32 IST 2026
[2026-10-28 02:16:32,399.399 INFO    ] ================================================
[2026-10-28 02:16:32,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:16:32
[2026-10-28 02:16:33,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:16:33,857.857 INFO    ] Initializing speech engine...
[2026-10-28 02:16:33,863.863 INFO    ] 2026-10-28 02:16:33
[2026-10-28 02:16:34,112.112 INFO    ] 2026-10-28 02:16:34
[2026-10-28 02:16:34,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:16:34,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:16:34,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:16:34,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:16:34,666.666 INFO    ] time= 28/10/2026 02:16:34
[2026-10-28 02:16:34,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:16:34,691.691 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:16:34,828.828 INFO    ] No existing commands found in stream
[2026-10-28 02:16:39,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:16:39,857.857 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 02:16:41,091.091 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:16:41,095.095 INFO    ] Checking for system updates...
[2026-10-28 02:16:41,141.141 INFO    ] 200
[2026-10-28 02:16:41,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:16:41,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:16:41,209.209 INFO    ] No update needed
[2026-10-28 02:16:41,212.212 INFO    ] Checking for camera pi updates...
[2026-10-28 02:16:41,255.255 INFO    ] 200
[2026-10-28 02:16:41,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:16:41,301.301 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:16:41,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:16:41,374.374 INFO    ] No camera update needed
[2026-10-28 02:16:41,376.376 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:16:41,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:16:41,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:16:41,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:16:43,434.434 INFO    ] ================================================
[2026-10-28 02:16:43,450.450 INFO    ] Launching Daemon at Wed Oct 28 02:16:43 IST 2026
[2026-10-28 02:16:43,461.461 INFO    ] ================================================
[2026-10-28 02:16:44,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:16:44
[2026-10-28 02:16:44,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:16:44,928.928 INFO    ] Initializing speech engine...
[2026-10-28 02:16:44,937.937 INFO    ] 2026-10-28 02:16:44
[2026-10-28 02:16:45,184.184 INFO    ] 2026-10-28 02:16:45
[2026-10-28 02:16:45,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:16:45,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:16:45,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:16:45,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:16:45,754.754 INFO    ] time= 28/10/2026 02:16:45
[2026-10-28 02:16:45,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:16:45,778.778 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:16:45,888.888 INFO    ] No existing commands found in stream
[2026-10-28 02:16:50,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:16:50,919.919 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-28 02:16:53,762.762 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:16:53,765.765 INFO    ] Checking for system updates...
[2026-10-28 02:16:53,805.805 INFO    ] 200
[2026-10-28 02:16:53,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:16:53,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:16:53,869.869 INFO    ] No update needed
[2026-10-28 02:16:53,871.871 INFO    ] Checking for camera pi updates...
[2026-10-28 02:16:53,909.909 INFO    ] 200
[2026-10-28 02:16:53,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:16:53,953.953 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:16:54,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:16:54,070.070 INFO    ] No camera update needed
[2026-10-28 02:16:54,072.072 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:16:54,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:16:54,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:16:54,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:16:56,125.125 INFO    ] ================================================
[2026-10-28 02:16:56,142.142 INFO    ] Launching Daemon at Wed Oct 28 02:16:56 IST 2026
[2026-10-28 02:16:56,153.153 INFO    ] ================================================
[2026-10-28 02:16:56,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:16:56
[2026-10-28 02:16:57,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:16:57,575.575 INFO    ] Initializing speech engine...
[2026-10-28 02:16:57,581.581 INFO    ] 2026-10-28 02:16:57
[2026-10-28 02:16:57,876.876 INFO    ] 2026-10-28 02:16:57
[2026-10-28 02:16:57,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:16:58,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:16:58,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:16:58,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:16:58,440.440 INFO    ] time= 28/10/2026 02:16:58
[2026-10-28 02:16:58,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:16:58,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:16:58,596.596 INFO    ] No existing commands found in stream
[2026-10-28 02:17:03,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:17:03,613.613 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-28 02:17:04,860.860 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:17:04,863.863 INFO    ] Checking for system updates...
[2026-10-28 02:17:04,898.898 INFO    ] 200
[2026-10-28 02:17:04,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:17:04,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:17:04,965.965 INFO    ] No update needed
[2026-10-28 02:17:04,967.967 INFO    ] Checking for camera pi updates...
[2026-10-28 02:17:05,004.004 INFO    ] 200
[2026-10-28 02:17:05,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:17:05,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:17:05,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:17:05,129.129 INFO    ] No camera update needed
[2026-10-28 02:17:05,132.132 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:17:05,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:17:05,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:17:05,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:17:07,187.187 INFO    ] ================================================
[2026-10-28 02:17:07,203.203 INFO    ] Launching Daemon at Wed Oct 28 02:17:07 IST 2026
[2026-10-28 02:17:07,214.214 INFO    ] ================================================
[2026-10-28 02:17:07,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:17:07
[2026-10-28 02:17:08,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:17:08,631.631 INFO    ] Initializing speech engine...
[2026-10-28 02:17:08,650.650 INFO    ] 2026-10-28 02:17:08
[2026-10-28 02:17:08,900.900 INFO    ] 2026-10-28 02:17:08
[2026-10-28 02:17:08,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:17:09,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:17:09,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:17:09,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:17:09,467.467 INFO    ] time= 28/10/2026 02:17:09
[2026-10-28 02:17:09,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:17:09,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:17:09,628.628 INFO    ] No existing commands found in stream
[2026-10-28 02:17:14,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:17:14,642.642 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-28 02:17:18,161.161 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:17:18,164.164 INFO    ] Checking for system updates...
[2026-10-28 02:17:18,200.200 INFO    ] 200
[2026-10-28 02:17:18,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:17:18,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:17:18,267.267 INFO    ] No update needed
[2026-10-28 02:17:18,270.270 INFO    ] Checking for camera pi updates...
[2026-10-28 02:17:18,305.305 INFO    ] 200
[2026-10-28 02:17:18,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:17:18,354.354 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:17:18,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:17:18,431.431 INFO    ] No camera update needed
[2026-10-28 02:17:18,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:17:18,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:17:18,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:17:18,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:17:20,490.490 INFO    ] ================================================
[2026-10-28 02:17:20,505.505 INFO    ] Launching Daemon at Wed Oct 28 02:17:20 IST 2026
[2026-10-28 02:17:20,517.517 INFO    ] ================================================
[2026-10-28 02:17:21,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:17:21
[2026-10-28 02:17:21,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:17:21,927.927 INFO    ] Initializing speech engine...
[2026-10-28 02:17:21,933.933 INFO    ] 2026-10-28 02:17:21
[2026-10-28 02:17:22,229.229 INFO    ] 2026-10-28 02:17:22
[2026-10-28 02:17:22,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:17:22,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:17:22,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:17:22,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:17:22,859.859 INFO    ] time= 28/10/2026 02:17:22
[2026-10-28 02:17:22,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:17:22,875.875 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:17:23,004.004 INFO    ] No existing commands found in stream
[2026-10-28 02:17:28,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:17:28,029.029 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 02:17:31,498.498 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:17:31,501.501 INFO    ] Checking for system updates...
[2026-10-28 02:17:31,545.545 INFO    ] 200
[2026-10-28 02:17:31,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:17:31,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:17:31,618.618 INFO    ] No update needed
[2026-10-28 02:17:31,621.621 INFO    ] Checking for camera pi updates...
[2026-10-28 02:17:31,661.661 INFO    ] 200
[2026-10-28 02:17:31,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:17:31,712.712 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:17:31,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:17:31,799.799 INFO    ] No camera update needed
[2026-10-28 02:17:31,801.801 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:17:31,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:17:31,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:17:31,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:17:33,859.859 INFO    ] ================================================
[2026-10-28 02:17:33,875.875 INFO    ] Launching Daemon at Wed Oct 28 02:17:33 IST 2026
[2026-10-28 02:17:33,886.886 INFO    ] ================================================
[2026-10-28 02:17:34,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:17:34
[2026-10-28 02:17:35,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:17:35,344.344 INFO    ] Initializing speech engine...
[2026-10-28 02:17:35,350.350 INFO    ] 2026-10-28 02:17:35
[2026-10-28 02:17:35,614.614 INFO    ] 2026-10-28 02:17:35
[2026-10-28 02:17:35,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:17:35,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:17:35,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:17:36,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:17:36,173.173 INFO    ] time= 28/10/2026 02:17:36
[2026-10-28 02:17:36,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:17:36,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:17:36,338.338 INFO    ] No existing commands found in stream
[2026-10-28 02:17:41,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:17:41,366.366 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 02:17:44,787.787 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:17:44,789.789 INFO    ] Checking for system updates...
[2026-10-28 02:17:44,825.825 INFO    ] 200
[2026-10-28 02:17:44,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:17:44,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:17:44,885.885 INFO    ] No update needed
[2026-10-28 02:17:44,888.888 INFO    ] Checking for camera pi updates...
[2026-10-28 02:17:44,925.925 INFO    ] 200
[2026-10-28 02:17:44,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:17:44,972.972 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:17:45,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:17:45,073.073 INFO    ] No camera update needed
[2026-10-28 02:17:45,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:17:45,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:17:45,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:17:45,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:17:47,129.129 INFO    ] ================================================
[2026-10-28 02:17:47,145.145 INFO    ] Launching Daemon at Wed Oct 28 02:17:47 IST 2026
[2026-10-28 02:17:47,156.156 INFO    ] ================================================
[2026-10-28 02:17:47,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:17:47
[2026-10-28 02:17:48,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:17:48,608.608 INFO    ] Initializing speech engine...
[2026-10-28 02:17:48,616.616 INFO    ] 2026-10-28 02:17:48
[2026-10-28 02:17:48,877.877 INFO    ] 2026-10-28 02:17:48
[2026-10-28 02:17:48,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:17:49,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:17:49,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:17:49,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:17:49,463.463 INFO    ] time= 28/10/2026 02:17:49
[2026-10-28 02:17:49,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:17:49,522.522 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:17:49,670.670 INFO    ] No existing commands found in stream
[2026-10-28 02:17:54,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:17:54,688.688 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 02:17:57,854.854 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:17:57,857.857 INFO    ] Checking for system updates...
[2026-10-28 02:17:57,897.897 INFO    ] 200
[2026-10-28 02:17:57,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:17:57,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:17:57,953.953 INFO    ] No update needed
[2026-10-28 02:17:57,956.956 INFO    ] Checking for camera pi updates...
[2026-10-28 02:17:57,990.990 INFO    ] 200
[2026-10-28 02:17:57,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:17:58,033.033 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:17:58,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:17:58,125.125 INFO    ] No camera update needed
[2026-10-28 02:17:58,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:17:58,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:17:58,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:17:58,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:18:00,183.183 INFO    ] ================================================
[2026-10-28 02:18:00,199.199 INFO    ] Launching Daemon at Wed Oct 28 02:18:00 IST 2026
[2026-10-28 02:18:00,211.211 INFO    ] ================================================
[2026-10-28 02:18:00,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:18:00
[2026-10-28 02:18:01,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:18:01,932.932 INFO    ] Initializing speech engine...
[2026-10-28 02:18:01,946.946 INFO    ] 2026-10-28 02:18:01
[2026-10-28 02:18:02,235.235 INFO    ] 2026-10-28 02:18:02
[2026-10-28 02:18:02,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:18:02,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:18:02,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:18:02,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:18:02,864.864 INFO    ] time= 28/10/2026 02:18:02
[2026-10-28 02:18:02,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:18:02,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:18:02,963.963 INFO    ] No existing commands found in stream
[2026-10-28 02:18:07,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:18:08,001.001 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 02:18:11,617.617 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:18:11,620.620 INFO    ] Checking for system updates...
[2026-10-28 02:18:11,658.658 INFO    ] 200
[2026-10-28 02:18:11,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:18:11,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:18:11,726.726 INFO    ] No update needed
[2026-10-28 02:18:11,729.729 INFO    ] Checking for camera pi updates...
[2026-10-28 02:18:11,769.769 INFO    ] 200
[2026-10-28 02:18:11,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:18:11,820.820 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:18:11,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:18:11,927.927 INFO    ] No camera update needed
[2026-10-28 02:18:11,929.929 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:18:11,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:18:11,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:18:11,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:18:13,986.986 INFO    ] ================================================
[2026-10-28 02:18:14,002.002 INFO    ] Launching Daemon at Wed Oct 28 02:18:13 IST 2026
[2026-10-28 02:18:14,013.013 INFO    ] ================================================
[2026-10-28 02:18:14,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:18:14
[2026-10-28 02:18:15,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:18:15,560.560 INFO    ] Initializing speech engine...
[2026-10-28 02:18:15,568.568 INFO    ] 2026-10-28 02:18:15
[2026-10-28 02:18:15,846.846 INFO    ] 2026-10-28 02:18:15
[2026-10-28 02:18:15,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:18:16,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:18:16,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:18:16,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:18:16,411.411 INFO    ] time= 28/10/2026 02:18:16
[2026-10-28 02:18:16,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:18:16,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:18:16,570.570 INFO    ] No existing commands found in stream
[2026-10-28 02:18:21,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:18:21,588.588 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 02:18:22,980.980 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:18:22,984.984 INFO    ] Checking for system updates...
[2026-10-28 02:18:23,020.020 INFO    ] 200
[2026-10-28 02:18:23,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:18:23,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:18:23,109.109 INFO    ] No update needed
[2026-10-28 02:18:23,112.112 INFO    ] Checking for camera pi updates...
[2026-10-28 02:18:23,146.146 INFO    ] 200
[2026-10-28 02:18:23,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:18:23,194.194 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:18:23,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:18:23,283.283 INFO    ] No camera update needed
[2026-10-28 02:18:23,286.286 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:18:23,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:18:23,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:18:23,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:18:25,340.340 INFO    ] ================================================
[2026-10-28 02:18:25,356.356 INFO    ] Launching Daemon at Wed Oct 28 02:18:25 IST 2026
[2026-10-28 02:18:25,367.367 INFO    ] ================================================
[2026-10-28 02:18:25,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:18:25
[2026-10-28 02:18:26,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:18:26,785.785 INFO    ] Initializing speech engine...
[2026-10-28 02:18:26,794.794 INFO    ] 2026-10-28 02:18:26
[2026-10-28 02:18:27,040.040 INFO    ] 2026-10-28 02:18:27
[2026-10-28 02:18:27,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:18:27,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:18:27,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:18:27,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:18:27,596.596 INFO    ] time= 28/10/2026 02:18:27
[2026-10-28 02:18:27,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:18:27,631.631 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:18:27,765.765 INFO    ] No existing commands found in stream
[2026-10-28 02:18:32,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:18:32,793.793 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-28 02:18:35,995.995 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:18:35,998.998 INFO    ] Checking for system updates...
[2026-10-28 02:18:36,037.037 INFO    ] 200
[2026-10-28 02:18:36,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:18:36,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:18:36,101.101 INFO    ] No update needed
[2026-10-28 02:18:36,103.103 INFO    ] Checking for camera pi updates...
[2026-10-28 02:18:36,140.140 INFO    ] 200
[2026-10-28 02:18:36,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:18:36,189.189 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:18:36,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:18:36,271.271 INFO    ] No camera update needed
[2026-10-28 02:18:36,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:18:36,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:18:36,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:18:36,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:18:38,327.327 INFO    ] ================================================
[2026-10-28 02:18:38,343.343 INFO    ] Launching Daemon at Wed Oct 28 02:18:38 IST 2026
[2026-10-28 02:18:38,354.354 INFO    ] ================================================
[2026-10-28 02:18:39,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:18:39
[2026-10-28 02:18:39,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:18:39,988.988 INFO    ] Initializing speech engine...
[2026-10-28 02:18:39,998.998 INFO    ] 2026-10-28 02:18:39
[2026-10-28 02:18:40,287.287 INFO    ] 2026-10-28 02:18:40
[2026-10-28 02:18:40,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:18:40,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:18:40,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:18:40,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:18:40,974.974 INFO    ] time= 28/10/2026 02:18:40
[2026-10-28 02:18:41,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:18:41,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:18:41,207.207 INFO    ] No existing commands found in stream
[2026-10-28 02:18:46,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:18:46,239.239 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-28 02:18:48,120.120 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:18:48,123.123 INFO    ] Checking for system updates...
[2026-10-28 02:18:48,161.161 INFO    ] 200
[2026-10-28 02:18:48,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:18:48,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:18:48,228.228 INFO    ] No update needed
[2026-10-28 02:18:48,231.231 INFO    ] Checking for camera pi updates...
[2026-10-28 02:18:48,269.269 INFO    ] 200
[2026-10-28 02:18:48,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:18:48,312.312 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:18:48,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:18:48,395.395 INFO    ] No camera update needed
[2026-10-28 02:18:48,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:18:48,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:18:48,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:18:48,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:18:50,451.451 INFO    ] ================================================
[2026-10-28 02:18:50,470.470 INFO    ] Launching Daemon at Wed Oct 28 02:18:50 IST 2026
[2026-10-28 02:18:50,482.482 INFO    ] ================================================
[2026-10-28 02:18:51,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:18:51
[2026-10-28 02:18:51,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:18:52,050.050 INFO    ] Initializing speech engine...
[2026-10-28 02:18:52,066.066 INFO    ] 2026-10-28 02:18:52
[2026-10-28 02:18:52,345.345 INFO    ] 2026-10-28 02:18:52
[2026-10-28 02:18:52,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:18:52,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:18:52,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:18:52,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:18:52,977.977 INFO    ] time= 28/10/2026 02:18:52
[2026-10-28 02:18:53,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:18:53,007.007 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:18:53,140.140 INFO    ] No existing commands found in stream
[2026-10-28 02:18:58,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:18:58,155.155 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 02:19:02,250.250 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:19:02,254.254 INFO    ] Checking for system updates...
[2026-10-28 02:19:02,295.295 INFO    ] 200
[2026-10-28 02:19:02,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:19:02,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:19:02,367.367 INFO    ] No update needed
[2026-10-28 02:19:02,371.371 INFO    ] Checking for camera pi updates...
[2026-10-28 02:19:02,413.413 INFO    ] 200
[2026-10-28 02:19:02,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:19:02,463.463 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:19:02,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:19:02,577.577 INFO    ] No camera update needed
[2026-10-28 02:19:02,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:19:02,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:19:02,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:19:02,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:19:04,635.635 INFO    ] ================================================
[2026-10-28 02:19:04,651.651 INFO    ] Launching Daemon at Wed Oct 28 02:19:04 IST 2026
[2026-10-28 02:19:04,662.662 INFO    ] ================================================
[2026-10-28 02:19:05,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:19:05
[2026-10-28 02:19:05,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:19:06,068.068 INFO    ] Initializing speech engine...
[2026-10-28 02:19:06,077.077 INFO    ] 2026-10-28 02:19:06
[2026-10-28 02:19:06,370.370 INFO    ] 2026-10-28 02:19:06
[2026-10-28 02:19:06,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:19:06,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:19:06,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:19:06,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:19:06,997.997 INFO    ] time= 28/10/2026 02:19:06
[2026-10-28 02:19:07,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:19:07,023.023 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:19:07,162.162 INFO    ] No existing commands found in stream
[2026-10-28 02:19:12,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:19:12,184.184 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 02:19:14,417.417 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:19:14,420.420 INFO    ] Checking for system updates...
[2026-10-28 02:19:14,458.458 INFO    ] 200
[2026-10-28 02:19:14,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:19:14,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:19:14,515.515 INFO    ] No update needed
[2026-10-28 02:19:14,518.518 INFO    ] Checking for camera pi updates...
[2026-10-28 02:19:14,551.551 INFO    ] 200
[2026-10-28 02:19:14,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:19:14,598.598 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:19:14,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:19:14,679.679 INFO    ] No camera update needed
[2026-10-28 02:19:14,681.681 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:19:14,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:19:14,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:19:14,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:19:16,733.733 INFO    ] ================================================
[2026-10-28 02:19:16,749.749 INFO    ] Launching Daemon at Wed Oct 28 02:19:16 IST 2026
[2026-10-28 02:19:16,760.760 INFO    ] ================================================
[2026-10-28 02:19:17,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:19:17
[2026-10-28 02:19:17,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:19:18,204.204 INFO    ] Initializing speech engine...
[2026-10-28 02:19:18,213.213 INFO    ] 2026-10-28 02:19:18
[2026-10-28 02:19:18,460.460 INFO    ] 2026-10-28 02:19:18
[2026-10-28 02:19:18,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:19:18,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:19:18,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:19:19,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:19:19,024.024 INFO    ] time= 28/10/2026 02:19:19
[2026-10-28 02:19:19,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:19:19,049.049 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:19:19,175.175 INFO    ] No existing commands found in stream
[2026-10-28 02:19:24,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:19:24,191.191 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-28 02:19:26,137.137 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:19:26,140.140 INFO    ] Checking for system updates...
[2026-10-28 02:19:26,175.175 INFO    ] 200
[2026-10-28 02:19:26,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:19:26,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:19:26,237.237 INFO    ] No update needed
[2026-10-28 02:19:26,240.240 INFO    ] Checking for camera pi updates...
[2026-10-28 02:19:26,273.273 INFO    ] 200
[2026-10-28 02:19:26,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:19:26,316.316 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:19:26,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:19:26,421.421 INFO    ] No camera update needed
[2026-10-28 02:19:26,424.424 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:19:26,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:19:26,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:19:26,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:19:28,477.477 INFO    ] ================================================
[2026-10-28 02:19:28,492.492 INFO    ] Launching Daemon at Wed Oct 28 02:19:28 IST 2026
[2026-10-28 02:19:28,503.503 INFO    ] ================================================
[2026-10-28 02:19:29,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:19:29
[2026-10-28 02:19:29,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:19:30,101.101 INFO    ] Initializing speech engine...
[2026-10-28 02:19:30,108.108 INFO    ] 2026-10-28 02:19:30
[2026-10-28 02:19:30,390.390 INFO    ] 2026-10-28 02:19:30
[2026-10-28 02:19:30,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:19:30,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:19:30,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:19:30,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:19:30,918.918 INFO    ] time= 28/10/2026 02:19:30
[2026-10-28 02:19:30,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:19:30,982.982 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:19:31,139.139 INFO    ] No existing commands found in stream
[2026-10-28 02:19:36,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:19:36,169.169 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 02:19:39,276.276 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:19:39,279.279 INFO    ] Checking for system updates...
[2026-10-28 02:19:39,319.319 INFO    ] 200
[2026-10-28 02:19:39,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:19:39,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:19:39,377.377 INFO    ] No update needed
[2026-10-28 02:19:39,380.380 INFO    ] Checking for camera pi updates...
[2026-10-28 02:19:39,415.415 INFO    ] 200
[2026-10-28 02:19:39,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:19:39,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:19:39,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:19:39,558.558 INFO    ] No camera update needed
[2026-10-28 02:19:39,561.561 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:19:39,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:19:39,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:19:39,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:19:41,617.617 INFO    ] ================================================
[2026-10-28 02:19:41,632.632 INFO    ] Launching Daemon at Wed Oct 28 02:19:41 IST 2026
[2026-10-28 02:19:41,644.644 INFO    ] ================================================
[2026-10-28 02:19:42,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:19:42
[2026-10-28 02:19:42,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:19:43,233.233 INFO    ] Initializing speech engine...
[2026-10-28 02:19:43,242.242 INFO    ] 2026-10-28 02:19:43
[2026-10-28 02:19:43,512.512 INFO    ] 2026-10-28 02:19:43
[2026-10-28 02:19:43,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:19:43,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:19:43,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:19:44,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:19:44,063.063 INFO    ] time= 28/10/2026 02:19:44
[2026-10-28 02:19:44,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:19:44,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:19:44,236.236 INFO    ] No existing commands found in stream
[2026-10-28 02:19:49,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:19:49,270.270 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-28 02:19:51,196.196 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:19:51,210.210 INFO    ] Checking for system updates...
[2026-10-28 02:19:51,249.249 INFO    ] 200
[2026-10-28 02:19:51,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:19:51,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:19:51,312.312 INFO    ] No update needed
[2026-10-28 02:19:51,315.315 INFO    ] Checking for camera pi updates...
[2026-10-28 02:19:51,351.351 INFO    ] 200
[2026-10-28 02:19:51,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:19:51,394.394 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:19:51,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:19:51,478.478 INFO    ] No camera update needed
[2026-10-28 02:19:51,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:19:51,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:19:51,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:19:51,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:19:53,532.532 INFO    ] ================================================
[2026-10-28 02:19:53,547.547 INFO    ] Launching Daemon at Wed Oct 28 02:19:53 IST 2026
[2026-10-28 02:19:53,562.562 INFO    ] ================================================
[2026-10-28 02:19:54,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:19:54
[2026-10-28 02:19:54,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:19:55,171.171 INFO    ] Initializing speech engine...
[2026-10-28 02:19:55,184.184 INFO    ] 2026-10-28 02:19:55
[2026-10-28 02:19:55,460.460 INFO    ] 2026-10-28 02:19:55
[2026-10-28 02:19:55,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:19:55,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:19:55,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:19:56,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:19:56,153.153 INFO    ] time= 28/10/2026 02:19:56
[2026-10-28 02:19:56,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:19:56,250.250 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:19:56,402.402 INFO    ] No existing commands found in stream
[2026-10-28 02:20:01,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:20:01,432.432 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-28 02:20:09,242.242 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:20:09,247.247 INFO    ] Checking for system updates...
[2026-10-28 02:20:09,285.285 INFO    ] 200
[2026-10-28 02:20:09,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:20:09,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:20:09,350.350 INFO    ] No update needed
[2026-10-28 02:20:09,352.352 INFO    ] Checking for camera pi updates...
[2026-10-28 02:20:09,386.386 INFO    ] 200
[2026-10-28 02:20:09,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:20:09,429.429 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:20:09,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:20:09,524.524 INFO    ] No camera update needed
[2026-10-28 02:20:09,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:20:09,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:20:09,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:20:09,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:20:11,580.580 INFO    ] ================================================
[2026-10-28 02:20:11,596.596 INFO    ] Launching Daemon at Wed Oct 28 02:20:11 IST 2026
[2026-10-28 02:20:11,607.607 INFO    ] ================================================
[2026-10-28 02:20:12,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:20:12
[2026-10-28 02:20:12,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:20:13,067.067 INFO    ] Initializing speech engine...
[2026-10-28 02:20:13,073.073 INFO    ] 2026-10-28 02:20:13
[2026-10-28 02:20:13,321.321 INFO    ] 2026-10-28 02:20:13
[2026-10-28 02:20:13,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:20:13,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:20:13,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:20:13,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:20:13,895.895 INFO    ] time= 28/10/2026 02:20:13
[2026-10-28 02:20:13,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:20:13,932.932 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:20:14,048.048 INFO    ] No existing commands found in stream
[2026-10-28 02:20:19,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:20:19,081.081 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 02:20:23,713.713 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:20:23,716.716 INFO    ] Checking for system updates...
[2026-10-28 02:20:23,755.755 INFO    ] 200
[2026-10-28 02:20:23,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:20:23,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:20:23,819.819 INFO    ] No update needed
[2026-10-28 02:20:23,822.822 INFO    ] Checking for camera pi updates...
[2026-10-28 02:20:23,859.859 INFO    ] 200
[2026-10-28 02:20:23,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:20:23,903.903 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:20:23,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:20:23,988.988 INFO    ] No camera update needed
[2026-10-28 02:20:23,990.990 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:20:23,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:20:23,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:20:24,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:20:26,044.044 INFO    ] ================================================
[2026-10-28 02:20:26,059.059 INFO    ] Launching Daemon at Wed Oct 28 02:20:26 IST 2026
[2026-10-28 02:20:26,070.070 INFO    ] ================================================
[2026-10-28 02:20:26,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:20:26
[2026-10-28 02:20:27,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:20:27,696.696 INFO    ] Initializing speech engine...
[2026-10-28 02:20:27,703.703 INFO    ] 2026-10-28 02:20:27
[2026-10-28 02:20:27,997.997 INFO    ] 2026-10-28 02:20:27
[2026-10-28 02:20:28,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:20:28,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:20:28,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:20:28,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:20:28,552.552 INFO    ] time= 28/10/2026 02:20:28
[2026-10-28 02:20:28,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:20:28,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:20:28,727.727 INFO    ] No existing commands found in stream
[2026-10-28 02:20:33,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:20:33,756.756 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-28 02:20:35,992.992 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:20:35,995.995 INFO    ] Checking for system updates...
[2026-10-28 02:20:36,035.035 INFO    ] 200
[2026-10-28 02:20:36,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:20:36,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:20:36,096.096 INFO    ] No update needed
[2026-10-28 02:20:36,098.098 INFO    ] Checking for camera pi updates...
[2026-10-28 02:20:36,136.136 INFO    ] 200
[2026-10-28 02:20:36,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:20:36,184.184 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:20:36,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:20:36,373.373 INFO    ] No camera update needed
[2026-10-28 02:20:36,383.383 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:20:36,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:20:36,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:20:36,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:20:38,441.441 INFO    ] ================================================
[2026-10-28 02:20:38,456.456 INFO    ] Launching Daemon at Wed Oct 28 02:20:38 IST 2026
[2026-10-28 02:20:38,467.467 INFO    ] ================================================
[2026-10-28 02:20:39,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:20:39
[2026-10-28 02:20:39,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:20:39,896.896 INFO    ] Initializing speech engine...
[2026-10-28 02:20:39,911.911 INFO    ] 2026-10-28 02:20:39
[2026-10-28 02:20:40,189.189 INFO    ] 2026-10-28 02:20:40
[2026-10-28 02:20:40,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:20:40,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:20:40,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:20:40,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:20:40,767.767 INFO    ] time= 28/10/2026 02:20:40
[2026-10-28 02:20:40,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:20:40,794.794 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:20:40,926.926 INFO    ] No existing commands found in stream
[2026-10-28 02:20:45,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:20:45,944.944 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 02:20:47,446.446 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:20:47,449.449 INFO    ] Checking for system updates...
[2026-10-28 02:20:47,484.484 INFO    ] 200
[2026-10-28 02:20:47,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:20:47,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:20:47,542.542 INFO    ] No update needed
[2026-10-28 02:20:47,544.544 INFO    ] Checking for camera pi updates...
[2026-10-28 02:20:47,580.580 INFO    ] 200
[2026-10-28 02:20:47,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:20:47,626.626 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:20:47,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:20:47,708.708 INFO    ] No camera update needed
[2026-10-28 02:20:47,711.711 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:20:47,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:20:47,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:20:47,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:20:49,763.763 INFO    ] ================================================
[2026-10-28 02:20:49,778.778 INFO    ] Launching Daemon at Wed Oct 28 02:20:49 IST 2026
[2026-10-28 02:20:49,789.789 INFO    ] ================================================
[2026-10-28 02:20:50,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:20:50
[2026-10-28 02:20:51,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:20:51,277.277 INFO    ] Initializing speech engine...
[2026-10-28 02:20:51,287.287 INFO    ] 2026-10-28 02:20:51
[2026-10-28 02:20:51,553.553 INFO    ] 2026-10-28 02:20:51
[2026-10-28 02:20:51,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:20:51,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:20:51,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:20:52,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:20:52,054.054 INFO    ] time= 28/10/2026 02:20:52
[2026-10-28 02:20:52,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:20:52,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:20:52,288.288 INFO    ] No existing commands found in stream
[2026-10-28 02:20:57,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:20:57,314.314 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-28 02:21:00,390.390 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:21:00,393.393 INFO    ] Checking for system updates...
[2026-10-28 02:21:00,432.432 INFO    ] 200
[2026-10-28 02:21:00,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:21:00,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:21:00,494.494 INFO    ] No update needed
[2026-10-28 02:21:00,496.496 INFO    ] Checking for camera pi updates...
[2026-10-28 02:21:00,533.533 INFO    ] 200
[2026-10-28 02:21:00,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:21:00,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:21:00,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:21:00,681.681 INFO    ] No camera update needed
[2026-10-28 02:21:00,684.684 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:21:00,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:21:00,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:21:00,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:21:02,745.745 INFO    ] ================================================
[2026-10-28 02:21:02,764.764 INFO    ] Launching Daemon at Wed Oct 28 02:21:02 IST 2026
[2026-10-28 02:21:02,778.778 INFO    ] ================================================
[2026-10-28 02:21:03,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:21:03
[2026-10-28 02:21:04,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:21:04,330.330 INFO    ] Initializing speech engine...
[2026-10-28 02:21:04,339.339 INFO    ] 2026-10-28 02:21:04
[2026-10-28 02:21:04,634.634 INFO    ] 2026-10-28 02:21:04
[2026-10-28 02:21:04,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:21:04,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:21:04,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:21:05,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:21:05,177.177 INFO    ] time= 28/10/2026 02:21:05
[2026-10-28 02:21:05,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:21:05,265.265 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:21:05,403.403 INFO    ] No existing commands found in stream
[2026-10-28 02:21:10,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:21:10,439.439 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 02:21:14,590.590 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:21:14,592.592 INFO    ] Checking for system updates...
[2026-10-28 02:21:14,629.629 INFO    ] 200
[2026-10-28 02:21:14,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:21:14,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:21:14,691.691 INFO    ] No update needed
[2026-10-28 02:21:14,694.694 INFO    ] Checking for camera pi updates...
[2026-10-28 02:21:14,727.727 INFO    ] 200
[2026-10-28 02:21:14,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:21:14,771.771 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:21:14,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:21:14,854.854 INFO    ] No camera update needed
[2026-10-28 02:21:14,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:21:14,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:21:14,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:21:14,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:21:16,910.910 INFO    ] ================================================
[2026-10-28 02:21:16,925.925 INFO    ] Launching Daemon at Wed Oct 28 02:21:16 IST 2026
[2026-10-28 02:21:16,936.936 INFO    ] ================================================
[2026-10-28 02:21:17,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:21:17
[2026-10-28 02:21:18,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:21:18,520.520 INFO    ] Initializing speech engine...
[2026-10-28 02:21:18,528.528 INFO    ] 2026-10-28 02:21:18
[2026-10-28 02:21:18,796.796 INFO    ] 2026-10-28 02:21:18
[2026-10-28 02:21:18,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:21:19,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:21:19,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:21:19,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:21:19,359.359 INFO    ] time= 28/10/2026 02:21:19
[2026-10-28 02:21:19,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:21:19,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:21:19,519.519 INFO    ] No existing commands found in stream
[2026-10-28 02:21:24,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:21:24,538.538 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 02:21:26,214.214 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:21:26,217.217 INFO    ] Checking for system updates...
[2026-10-28 02:21:26,254.254 INFO    ] 200
[2026-10-28 02:21:26,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:21:26,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:21:26,318.318 INFO    ] No update needed
[2026-10-28 02:21:26,321.321 INFO    ] Checking for camera pi updates...
[2026-10-28 02:21:26,358.358 INFO    ] 200
[2026-10-28 02:21:26,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:21:26,406.406 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:21:26,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:21:26,507.507 INFO    ] No camera update needed
[2026-10-28 02:21:26,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:21:26,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:21:26,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:21:26,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:21:28,564.564 INFO    ] ================================================
[2026-10-28 02:21:28,580.580 INFO    ] Launching Daemon at Wed Oct 28 02:21:28 IST 2026
[2026-10-28 02:21:28,591.591 INFO    ] ================================================
[2026-10-28 02:21:29,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:21:29
[2026-10-28 02:21:29,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:21:30,032.032 INFO    ] Initializing speech engine...
[2026-10-28 02:21:30,055.055 INFO    ] 2026-10-28 02:21:30
[2026-10-28 02:21:30,329.329 INFO    ] 2026-10-28 02:21:30
[2026-10-28 02:21:30,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:21:30,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:21:30,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:21:30,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:21:30,846.846 INFO    ] time= 28/10/2026 02:21:30
[2026-10-28 02:21:30,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:21:30,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:21:31,069.069 INFO    ] No existing commands found in stream
[2026-10-28 02:21:36,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:21:36,098.098 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-28 02:21:40,550.550 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:21:40,552.552 INFO    ] Checking for system updates...
[2026-10-28 02:21:40,589.589 INFO    ] 200
[2026-10-28 02:21:40,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:21:40,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:21:40,655.655 INFO    ] No update needed
[2026-10-28 02:21:40,658.658 INFO    ] Checking for camera pi updates...
[2026-10-28 02:21:40,691.691 INFO    ] 200
[2026-10-28 02:21:40,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:21:40,734.734 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:21:40,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:21:40,820.820 INFO    ] No camera update needed
[2026-10-28 02:21:40,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:21:40,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:21:40,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:21:40,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:21:42,876.876 INFO    ] ================================================
[2026-10-28 02:21:42,892.892 INFO    ] Launching Daemon at Wed Oct 28 02:21:42 IST 2026
[2026-10-28 02:21:42,902.902 INFO    ] ================================================
[2026-10-28 02:21:43,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:21:43
[2026-10-28 02:21:44,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:21:44,490.490 INFO    ] Initializing speech engine...
[2026-10-28 02:21:44,500.500 INFO    ] 2026-10-28 02:21:44
[2026-10-28 02:21:44,777.777 INFO    ] 2026-10-28 02:21:44
[2026-10-28 02:21:44,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:21:45,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:21:45,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:21:45,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:21:45,341.341 INFO    ] time= 28/10/2026 02:21:45
[2026-10-28 02:21:45,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:21:45,390.390 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:21:45,501.501 INFO    ] No existing commands found in stream
[2026-10-28 02:21:50,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:21:50,529.529 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-28 02:21:52,069.069 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:21:52,072.072 INFO    ] Checking for system updates...
[2026-10-28 02:21:52,112.112 INFO    ] 200
[2026-10-28 02:21:52,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:21:52,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:21:52,171.171 INFO    ] No update needed
[2026-10-28 02:21:52,174.174 INFO    ] Checking for camera pi updates...
[2026-10-28 02:21:52,208.208 INFO    ] 200
[2026-10-28 02:21:52,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:21:52,254.254 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:21:52,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:21:52,348.348 INFO    ] No camera update needed
[2026-10-28 02:21:52,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:21:52,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:21:52,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:21:52,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:21:54,408.408 INFO    ] ================================================
[2026-10-28 02:21:54,424.424 INFO    ] Launching Daemon at Wed Oct 28 02:21:54 IST 2026
[2026-10-28 02:21:54,435.435 INFO    ] ================================================
[2026-10-28 02:21:55,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:21:55
[2026-10-28 02:21:55,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:21:55,971.971 INFO    ] Initializing speech engine...
[2026-10-28 02:21:55,994.994 INFO    ] 2026-10-28 02:21:55
[2026-10-28 02:21:56,250.250 INFO    ] 2026-10-28 02:21:56
[2026-10-28 02:21:56,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:21:56,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:21:56,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:21:56,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:21:56,752.752 INFO    ] time= 28/10/2026 02:21:56
[2026-10-28 02:21:56,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:21:56,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:21:56,976.976 INFO    ] No existing commands found in stream
[2026-10-28 02:22:01,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:22:01,999.999 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 02:22:05,334.334 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:22:05,337.337 INFO    ] Checking for system updates...
[2026-10-28 02:22:05,378.378 INFO    ] 200
[2026-10-28 02:22:05,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:22:05,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:22:05,444.444 INFO    ] No update needed
[2026-10-28 02:22:05,447.447 INFO    ] Checking for camera pi updates...
[2026-10-28 02:22:05,487.487 INFO    ] 200
[2026-10-28 02:22:05,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:22:05,532.532 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:22:05,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:22:05,619.619 INFO    ] No camera update needed
[2026-10-28 02:22:05,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:22:05,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:22:05,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:22:05,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:22:07,679.679 INFO    ] ================================================
[2026-10-28 02:22:07,694.694 INFO    ] Launching Daemon at Wed Oct 28 02:22:07 IST 2026
[2026-10-28 02:22:07,705.705 INFO    ] ================================================
[2026-10-28 02:22:08,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:22:08
[2026-10-28 02:22:09,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:22:09,357.357 INFO    ] Initializing speech engine...
[2026-10-28 02:22:09,364.364 INFO    ] 2026-10-28 02:22:09
[2026-10-28 02:22:09,655.655 INFO    ] 2026-10-28 02:22:09
[2026-10-28 02:22:09,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:22:09,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:22:09,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:22:10,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:22:10,211.211 INFO    ] time= 28/10/2026 02:22:10
[2026-10-28 02:22:10,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:22:10,250.250 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:22:10,359.359 INFO    ] No existing commands found in stream
[2026-10-28 02:22:15,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:22:15,388.388 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 02:22:18,472.472 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:22:18,475.475 INFO    ] Checking for system updates...
[2026-10-28 02:22:18,517.517 INFO    ] 200
[2026-10-28 02:22:18,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:22:18,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:22:18,583.583 INFO    ] No update needed
[2026-10-28 02:22:18,587.587 INFO    ] Checking for camera pi updates...
[2026-10-28 02:22:18,621.621 INFO    ] 200
[2026-10-28 02:22:18,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:22:18,671.671 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:22:18,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:22:18,770.770 INFO    ] No camera update needed
[2026-10-28 02:22:18,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:22:18,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:22:18,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:22:18,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:22:20,826.826 INFO    ] ================================================
[2026-10-28 02:22:20,841.841 INFO    ] Launching Daemon at Wed Oct 28 02:22:20 IST 2026
[2026-10-28 02:22:20,852.852 INFO    ] ================================================
[2026-10-28 02:22:21,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:22:21
[2026-10-28 02:22:22,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:22:22,309.309 INFO    ] Initializing speech engine...
[2026-10-28 02:22:22,322.322 INFO    ] 2026-10-28 02:22:22
[2026-10-28 02:22:22,614.614 INFO    ] 2026-10-28 02:22:22
[2026-10-28 02:22:22,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:22:22,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:22:22,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:22:23,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:22:23,244.244 INFO    ] time= 28/10/2026 02:22:23
[2026-10-28 02:22:23,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:22:23,276.276 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:22:23,404.404 INFO    ] No existing commands found in stream
[2026-10-28 02:22:28,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:22:28,430.430 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-28 02:22:32,891.891 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:22:32,894.894 INFO    ] Checking for system updates...
[2026-10-28 02:22:32,931.931 INFO    ] 200
[2026-10-28 02:22:32,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:22:32,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:22:32,998.998 INFO    ] No update needed
[2026-10-28 02:22:33,001.001 INFO    ] Checking for camera pi updates...
[2026-10-28 02:22:33,036.036 INFO    ] 200
[2026-10-28 02:22:33,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:22:33,081.081 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:22:33,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:22:33,181.181 INFO    ] No camera update needed
[2026-10-28 02:22:33,184.184 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:22:33,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:22:33,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:22:33,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:22:35,240.240 INFO    ] ================================================
[2026-10-28 02:22:35,256.256 INFO    ] Launching Daemon at Wed Oct 28 02:22:35 IST 2026
[2026-10-28 02:22:35,267.267 INFO    ] ================================================
[2026-10-28 02:22:35,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:22:35
[2026-10-28 02:22:36,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:22:36,714.714 INFO    ] Initializing speech engine...
[2026-10-28 02:22:36,734.734 INFO    ] 2026-10-28 02:22:36
[2026-10-28 02:22:36,985.985 INFO    ] 2026-10-28 02:22:36
[2026-10-28 02:22:37,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:22:37,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:22:37,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:22:37,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:22:37,560.560 INFO    ] time= 28/10/2026 02:22:37
[2026-10-28 02:22:37,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:22:37,584.584 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:22:37,713.713 INFO    ] No existing commands found in stream
[2026-10-28 02:22:42,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:22:42,732.732 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-28 02:22:47,115.115 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:22:47,117.117 INFO    ] Checking for system updates...
[2026-10-28 02:22:47,154.154 INFO    ] 200
[2026-10-28 02:22:47,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:22:47,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:22:47,213.213 INFO    ] No update needed
[2026-10-28 02:22:47,216.216 INFO    ] Checking for camera pi updates...
[2026-10-28 02:22:47,255.255 INFO    ] 200
[2026-10-28 02:22:47,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:22:47,299.299 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:22:47,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:22:47,521.521 INFO    ] No camera update needed
[2026-10-28 02:22:47,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:22:47,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:22:47,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:22:47,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:22:49,584.584 INFO    ] ================================================
[2026-10-28 02:22:49,599.599 INFO    ] Launching Daemon at Wed Oct 28 02:22:49 IST 2026
[2026-10-28 02:22:49,609.609 INFO    ] ================================================
[2026-10-28 02:22:50,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:22:50
[2026-10-28 02:22:50,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:22:51,061.061 INFO    ] Initializing speech engine...
[2026-10-28 02:22:51,072.072 INFO    ] 2026-10-28 02:22:51
[2026-10-28 02:22:51,332.332 INFO    ] 2026-10-28 02:22:51
[2026-10-28 02:22:51,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:22:51,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:22:51,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:22:51,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:22:51,877.877 INFO    ] time= 28/10/2026 02:22:51
[2026-10-28 02:22:51,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:22:51,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:22:52,031.031 INFO    ] No existing commands found in stream
[2026-10-28 02:22:57,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:22:57,058.058 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-28 02:22:57,948.948 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:22:57,951.951 INFO    ] Checking for system updates...
[2026-10-28 02:22:57,987.987 INFO    ] 200
[2026-10-28 02:22:57,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:22:58,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:22:58,044.044 INFO    ] No update needed
[2026-10-28 02:22:58,046.046 INFO    ] Checking for camera pi updates...
[2026-10-28 02:22:58,084.084 INFO    ] 200
[2026-10-28 02:22:58,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:22:58,127.127 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:22:58,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:22:58,213.213 INFO    ] No camera update needed
[2026-10-28 02:22:58,216.216 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:22:58,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:22:58,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:22:58,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:23:00,270.270 INFO    ] ================================================
[2026-10-28 02:23:00,286.286 INFO    ] Launching Daemon at Wed Oct 28 02:23:00 IST 2026
[2026-10-28 02:23:00,296.296 INFO    ] ================================================
[2026-10-28 02:23:00,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:23:00
[2026-10-28 02:23:01,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:23:02,020.020 INFO    ] Initializing speech engine...
[2026-10-28 02:23:02,030.030 INFO    ] 2026-10-28 02:23:02
[2026-10-28 02:23:02,321.321 INFO    ] 2026-10-28 02:23:02
[2026-10-28 02:23:02,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:23:02,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:23:02,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:23:02,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:23:02,946.946 INFO    ] time= 28/10/2026 02:23:02
[2026-10-28 02:23:02,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:23:02,989.989 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:23:03,152.152 INFO    ] No existing commands found in stream
[2026-10-28 02:23:08,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:23:08,187.187 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-28 02:23:10,148.148 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:23:10,151.151 INFO    ] Checking for system updates...
[2026-10-28 02:23:10,188.188 INFO    ] 200
[2026-10-28 02:23:10,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:23:10,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:23:10,246.246 INFO    ] No update needed
[2026-10-28 02:23:10,249.249 INFO    ] Checking for camera pi updates...
[2026-10-28 02:23:10,283.283 INFO    ] 200
[2026-10-28 02:23:10,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:23:10,327.327 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:23:10,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:23:10,415.415 INFO    ] No camera update needed
[2026-10-28 02:23:10,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:23:10,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:23:10,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:23:10,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:23:12,472.472 INFO    ] ================================================
[2026-10-28 02:23:12,487.487 INFO    ] Launching Daemon at Wed Oct 28 02:23:12 IST 2026
[2026-10-28 02:23:12,497.497 INFO    ] ================================================
[2026-10-28 02:23:13,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:23:13
[2026-10-28 02:23:13,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:23:14,077.077 INFO    ] Initializing speech engine...
[2026-10-28 02:23:14,087.087 INFO    ] 2026-10-28 02:23:14
[2026-10-28 02:23:14,357.357 INFO    ] 2026-10-28 02:23:14
[2026-10-28 02:23:14,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:23:14,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:23:14,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:23:14,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:23:14,946.946 INFO    ] time= 28/10/2026 02:23:14
[2026-10-28 02:23:14,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:23:14,980.980 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:23:15,107.107 INFO    ] No existing commands found in stream
[2026-10-28 02:23:20,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:23:20,140.140 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-28 02:23:21,546.546 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:23:21,549.549 INFO    ] Checking for system updates...
[2026-10-28 02:23:21,584.584 INFO    ] 200
[2026-10-28 02:23:21,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:23:21,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:23:21,641.641 INFO    ] No update needed
[2026-10-28 02:23:21,644.644 INFO    ] Checking for camera pi updates...
[2026-10-28 02:23:21,677.677 INFO    ] 200
[2026-10-28 02:23:21,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:23:21,719.719 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:23:21,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:23:21,808.808 INFO    ] No camera update needed
[2026-10-28 02:23:21,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:23:21,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:23:21,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:23:21,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:23:23,862.862 INFO    ] ================================================
[2026-10-28 02:23:23,878.878 INFO    ] Launching Daemon at Wed Oct 28 02:23:23 IST 2026
[2026-10-28 02:23:23,888.888 INFO    ] ================================================
[2026-10-28 02:23:24,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:23:24
[2026-10-28 02:23:25,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:23:25,328.328 INFO    ] Initializing speech engine...
[2026-10-28 02:23:25,334.334 INFO    ] 2026-10-28 02:23:25
[2026-10-28 02:23:25,631.631 INFO    ] 2026-10-28 02:23:25
[2026-10-28 02:23:25,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:23:25,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:23:25,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:23:26,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:23:26,178.178 INFO    ] time= 28/10/2026 02:23:26
[2026-10-28 02:23:26,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:23:26,265.265 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:23:26,399.399 INFO    ] No existing commands found in stream
[2026-10-28 02:23:31,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:23:31,432.432 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-28 02:23:35,626.626 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:23:35,628.628 INFO    ] Checking for system updates...
[2026-10-28 02:23:35,664.664 INFO    ] 200
[2026-10-28 02:23:35,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:23:35,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:23:35,728.728 INFO    ] No update needed
[2026-10-28 02:23:35,730.730 INFO    ] Checking for camera pi updates...
[2026-10-28 02:23:35,764.764 INFO    ] 200
[2026-10-28 02:23:35,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:23:35,806.806 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:23:35,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:23:35,888.888 INFO    ] No camera update needed
[2026-10-28 02:23:35,890.890 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:23:35,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:23:35,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:23:35,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:23:37,943.943 INFO    ] ================================================
[2026-10-28 02:23:37,958.958 INFO    ] Launching Daemon at Wed Oct 28 02:23:37 IST 2026
[2026-10-28 02:23:37,969.969 INFO    ] ================================================
[2026-10-28 02:23:38,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:23:38
[2026-10-28 02:23:39,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:23:39,575.575 INFO    ] Initializing speech engine...
[2026-10-28 02:23:39,584.584 INFO    ] 2026-10-28 02:23:39
[2026-10-28 02:23:39,878.878 INFO    ] 2026-10-28 02:23:39
[2026-10-28 02:23:39,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:23:40,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:23:40,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:23:40,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:23:40,448.448 INFO    ] time= 28/10/2026 02:23:40
[2026-10-28 02:23:40,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:23:40,486.486 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:23:40,661.661 INFO    ] No existing commands found in stream
[2026-10-28 02:23:45,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:23:45,690.690 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-28 02:23:49,627.627 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:23:49,631.631 INFO    ] Checking for system updates...
[2026-10-28 02:23:49,667.667 INFO    ] 200
[2026-10-28 02:23:49,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:23:49,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:23:49,727.727 INFO    ] No update needed
[2026-10-28 02:23:49,729.729 INFO    ] Checking for camera pi updates...
[2026-10-28 02:23:49,763.763 INFO    ] 200
[2026-10-28 02:23:49,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:23:49,806.806 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:23:49,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:23:49,871.871 INFO    ] No camera update needed
[2026-10-28 02:23:49,874.874 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:23:49,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:23:49,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:23:49,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:23:51,925.925 INFO    ] ================================================
[2026-10-28 02:23:51,941.941 INFO    ] Launching Daemon at Wed Oct 28 02:23:51 IST 2026
[2026-10-28 02:23:51,951.951 INFO    ] ================================================
[2026-10-28 02:23:52,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:23:52
[2026-10-28 02:23:53,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:23:53,453.453 INFO    ] Initializing speech engine...
[2026-10-28 02:23:53,462.462 INFO    ] 2026-10-28 02:23:53
[2026-10-28 02:23:53,711.711 INFO    ] 2026-10-28 02:23:53
[2026-10-28 02:23:53,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:23:53,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:23:54,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:23:54,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:23:54,281.281 INFO    ] time= 28/10/2026 02:23:54
[2026-10-28 02:23:54,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:23:54,304.304 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:23:54,440.440 INFO    ] No existing commands found in stream
[2026-10-28 02:23:59,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:23:59,466.466 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 02:24:00,905.905 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:24:00,908.908 INFO    ] Checking for system updates...
[2026-10-28 02:24:00,948.948 INFO    ] 200
[2026-10-28 02:24:00,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:24:01,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:24:01,011.011 INFO    ] No update needed
[2026-10-28 02:24:01,014.014 INFO    ] Checking for camera pi updates...
[2026-10-28 02:24:01,047.047 INFO    ] 200
[2026-10-28 02:24:01,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:24:01,089.089 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:24:01,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:24:01,341.341 INFO    ] No camera update needed
[2026-10-28 02:24:01,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:24:01,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:24:01,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:24:01,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:24:03,401.401 INFO    ] ================================================
[2026-10-28 02:24:03,417.417 INFO    ] Launching Daemon at Wed Oct 28 02:24:03 IST 2026
[2026-10-28 02:24:03,429.429 INFO    ] ================================================
[2026-10-28 02:24:04,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:24:04
[2026-10-28 02:24:04,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:24:04,896.896 INFO    ] Initializing speech engine...
[2026-10-28 02:24:04,903.903 INFO    ] 2026-10-28 02:24:04
[2026-10-28 02:24:05,177.177 INFO    ] 2026-10-28 02:24:05
[2026-10-28 02:24:05,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:24:05,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:24:05,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:24:05,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:24:05,901.901 INFO    ] time= 28/10/2026 02:24:05
[2026-10-28 02:24:05,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:24:05,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:24:06,162.162 INFO    ] No existing commands found in stream
[2026-10-28 02:24:11,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:24:11,176.176 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-28 02:24:12,465.465 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:24:12,468.468 INFO    ] Checking for system updates...
[2026-10-28 02:24:12,504.504 INFO    ] 200
[2026-10-28 02:24:12,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:24:12,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:24:12,564.564 INFO    ] No update needed
[2026-10-28 02:24:12,567.567 INFO    ] Checking for camera pi updates...
[2026-10-28 02:24:12,603.603 INFO    ] 200
[2026-10-28 02:24:12,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:24:12,645.645 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:24:12,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:24:12,750.750 INFO    ] No camera update needed
[2026-10-28 02:24:12,753.753 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:24:12,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:24:12,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:24:12,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:24:14,804.804 INFO    ] ================================================
[2026-10-28 02:24:14,819.819 INFO    ] Launching Daemon at Wed Oct 28 02:24:14 IST 2026
[2026-10-28 02:24:14,830.830 INFO    ] ================================================
[2026-10-28 02:24:15,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:24:15
[2026-10-28 02:24:16,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:24:16,288.288 INFO    ] Initializing speech engine...
[2026-10-28 02:24:16,311.311 INFO    ] 2026-10-28 02:24:16
[2026-10-28 02:24:16,566.566 INFO    ] 2026-10-28 02:24:16
[2026-10-28 02:24:16,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:24:16,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:24:16,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:24:17,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:24:17,130.130 INFO    ] time= 28/10/2026 02:24:17
[2026-10-28 02:24:17,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:24:17,155.155 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:24:17,280.280 INFO    ] No existing commands found in stream
[2026-10-28 02:24:22,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:24:22,299.299 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-28 02:24:25,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:24:25,227.227 INFO    ] Checking for system updates...
[2026-10-28 02:24:25,262.262 INFO    ] 200
[2026-10-28 02:24:25,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:24:25,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:24:25,323.323 INFO    ] No update needed
[2026-10-28 02:24:25,326.326 INFO    ] Checking for camera pi updates...
[2026-10-28 02:24:25,361.361 INFO    ] 200
[2026-10-28 02:24:25,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:24:25,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:24:25,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:24:25,497.497 INFO    ] No camera update needed
[2026-10-28 02:24:25,499.499 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:24:25,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:24:25,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:24:25,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:24:27,552.552 INFO    ] ================================================
[2026-10-28 02:24:27,567.567 INFO    ] Launching Daemon at Wed Oct 28 02:24:27 IST 2026
[2026-10-28 02:24:27,577.577 INFO    ] ================================================
[2026-10-28 02:24:28,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:24:28
[2026-10-28 02:24:28,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:24:28,971.971 INFO    ] Initializing speech engine...
[2026-10-28 02:24:28,985.985 INFO    ] 2026-10-28 02:24:28
[2026-10-28 02:24:29,251.251 INFO    ] 2026-10-28 02:24:29
[2026-10-28 02:24:29,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:24:29,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:24:29,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:24:29,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:24:29,817.817 INFO    ] time= 28/10/2026 02:24:29
[2026-10-28 02:24:29,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:24:29,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:24:29,993.993 INFO    ] No existing commands found in stream
[2026-10-28 02:24:35,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:24:35,017.017 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-28 02:24:39,505.505 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:24:39,508.508 INFO    ] Checking for system updates...
[2026-10-28 02:24:39,547.547 INFO    ] 200
[2026-10-28 02:24:39,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:24:39,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:24:39,611.611 INFO    ] No update needed
[2026-10-28 02:24:39,613.613 INFO    ] Checking for camera pi updates...
[2026-10-28 02:24:39,648.648 INFO    ] 200
[2026-10-28 02:24:39,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:24:39,696.696 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:24:39,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:24:39,803.803 INFO    ] No camera update needed
[2026-10-28 02:24:39,806.806 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:24:39,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:24:39,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:24:39,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:24:41,858.858 INFO    ] ================================================
[2026-10-28 02:24:41,873.873 INFO    ] Launching Daemon at Wed Oct 28 02:24:41 IST 2026
[2026-10-28 02:24:41,884.884 INFO    ] ================================================
[2026-10-28 02:24:42,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:24:42
[2026-10-28 02:24:43,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:24:43,295.295 INFO    ] Initializing speech engine...
[2026-10-28 02:24:43,311.311 INFO    ] 2026-10-28 02:24:43
[2026-10-28 02:24:43,590.590 INFO    ] 2026-10-28 02:24:43
[2026-10-28 02:24:43,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:24:43,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:24:43,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:24:44,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:24:44,118.118 INFO    ] time= 28/10/2026 02:24:44
[2026-10-28 02:24:44,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:24:44,214.214 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:24:44,351.351 INFO    ] No existing commands found in stream
[2026-10-28 02:24:49,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:24:49,379.379 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-28 02:24:50,224.224 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:24:50,227.227 INFO    ] Checking for system updates...
[2026-10-28 02:24:50,264.264 INFO    ] 200
[2026-10-28 02:24:50,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:24:50,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:24:50,327.327 INFO    ] No update needed
[2026-10-28 02:24:50,329.329 INFO    ] Checking for camera pi updates...
[2026-10-28 02:24:50,362.362 INFO    ] 200
[2026-10-28 02:24:50,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:24:50,409.409 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:24:50,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:24:50,600.600 INFO    ] No camera update needed
[2026-10-28 02:24:50,602.602 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:24:50,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:24:50,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:24:50,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:24:52,656.656 INFO    ] ================================================
[2026-10-28 02:24:52,670.670 INFO    ] Launching Daemon at Wed Oct 28 02:24:52 IST 2026
[2026-10-28 02:24:52,681.681 INFO    ] ================================================
[2026-10-28 02:24:53,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:24:53
[2026-10-28 02:24:53,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:24:54,099.099 INFO    ] Initializing speech engine...
[2026-10-28 02:24:54,108.108 INFO    ] 2026-10-28 02:24:54
[2026-10-28 02:24:54,354.354 INFO    ] 2026-10-28 02:24:54
[2026-10-28 02:24:54,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:24:54,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:24:54,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:24:54,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:24:54,905.905 INFO    ] time= 28/10/2026 02:24:54
[2026-10-28 02:24:54,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:24:54,952.952 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:24:55,133.133 INFO    ] No existing commands found in stream
[2026-10-28 02:25:00,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:25:00,168.168 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-28 02:25:01,915.915 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:25:01,919.919 INFO    ] Checking for system updates...
[2026-10-28 02:25:01,992.992 INFO    ] 200
[2026-10-28 02:25:01,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:25:02,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:25:02,136.136 INFO    ] No update needed
[2026-10-28 02:25:02,139.139 INFO    ] Checking for camera pi updates...
[2026-10-28 02:25:02,202.202 INFO    ] 200
[2026-10-28 02:25:02,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:25:02,259.259 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:25:02,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:25:02,675.675 INFO    ] No camera update needed
[2026-10-28 02:25:02,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:25:02,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:25:02,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:25:02,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:25:04,738.738 INFO    ] ================================================
[2026-10-28 02:25:04,753.753 INFO    ] Launching Daemon at Wed Oct 28 02:25:04 IST 2026
[2026-10-28 02:25:04,764.764 INFO    ] ================================================
[2026-10-28 02:25:05,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:25:05
[2026-10-28 02:25:05,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:25:06,212.212 INFO    ] Initializing speech engine...
[2026-10-28 02:25:06,217.217 INFO    ] 2026-10-28 02:25:06
[2026-10-28 02:25:06,465.465 INFO    ] 2026-10-28 02:25:06
[2026-10-28 02:25:06,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:25:06,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:25:06,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:25:07,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:25:07,031.031 INFO    ] time= 28/10/2026 02:25:07
[2026-10-28 02:25:07,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:25:07,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:25:07,206.206 INFO    ] No existing commands found in stream
[2026-10-28 02:25:12,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:25:12,228.228 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 02:25:16,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:25:16,585.585 INFO    ] Checking for system updates...
[2026-10-28 02:25:16,623.623 INFO    ] 200
[2026-10-28 02:25:16,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:25:16,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:25:16,679.679 INFO    ] No update needed
[2026-10-28 02:25:16,682.682 INFO    ] Checking for camera pi updates...
[2026-10-28 02:25:16,725.725 INFO    ] 200
[2026-10-28 02:25:16,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:25:16,770.770 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:25:16,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:25:16,845.845 INFO    ] No camera update needed
[2026-10-28 02:25:16,847.847 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:25:16,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:25:16,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:25:16,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:25:18,900.900 INFO    ] ================================================
[2026-10-28 02:25:18,915.915 INFO    ] Launching Daemon at Wed Oct 28 02:25:18 IST 2026
[2026-10-28 02:25:18,926.926 INFO    ] ================================================
[2026-10-28 02:25:19,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:25:19
[2026-10-28 02:25:20,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:25:20,348.348 INFO    ] Initializing speech engine...
[2026-10-28 02:25:20,361.361 INFO    ] 2026-10-28 02:25:20
[2026-10-28 02:25:20,627.627 INFO    ] 2026-10-28 02:25:20
[2026-10-28 02:25:20,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:25:20,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:25:20,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:25:21,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:25:21,194.194 INFO    ] time= 28/10/2026 02:25:21
[2026-10-28 02:25:21,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:25:21,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:25:21,365.365 INFO    ] No existing commands found in stream
[2026-10-28 02:25:26,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:25:26,398.398 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-28 02:25:29,902.902 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:25:29,905.905 INFO    ] Checking for system updates...
[2026-10-28 02:25:29,944.944 INFO    ] 200
[2026-10-28 02:25:29,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:25:29,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:25:30,002.002 INFO    ] No update needed
[2026-10-28 02:25:30,004.004 INFO    ] Checking for camera pi updates...
[2026-10-28 02:25:30,041.041 INFO    ] 200
[2026-10-28 02:25:30,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:25:30,088.088 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:25:30,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:25:30,175.175 INFO    ] No camera update needed
[2026-10-28 02:25:30,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:25:30,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:25:30,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:25:30,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:25:32,232.232 INFO    ] ================================================
[2026-10-28 02:25:32,248.248 INFO    ] Launching Daemon at Wed Oct 28 02:25:32 IST 2026
[2026-10-28 02:25:32,259.259 INFO    ] ================================================
[2026-10-28 02:25:32,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:25:32
[2026-10-28 02:25:33,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:25:33,709.709 INFO    ] Initializing speech engine...
[2026-10-28 02:25:33,728.728 INFO    ] 2026-10-28 02:25:33
[2026-10-28 02:25:33,975.975 INFO    ] 2026-10-28 02:25:33
[2026-10-28 02:25:34,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:25:34,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:25:34,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:25:34,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:25:34,528.528 INFO    ] time= 28/10/2026 02:25:34
[2026-10-28 02:25:34,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:25:34,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:25:34,681.681 INFO    ] No existing commands found in stream
[2026-10-28 02:25:39,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:25:39,696.696 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-28 02:25:41,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:25:41,132.132 INFO    ] Checking for system updates...
[2026-10-28 02:25:41,169.169 INFO    ] 200
[2026-10-28 02:25:41,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:25:41,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:25:41,228.228 INFO    ] No update needed
[2026-10-28 02:25:41,230.230 INFO    ] Checking for camera pi updates...
[2026-10-28 02:25:41,263.263 INFO    ] 200
[2026-10-28 02:25:41,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:25:41,306.306 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:25:41,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:25:41,400.400 INFO    ] No camera update needed
[2026-10-28 02:25:41,402.402 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:25:41,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:25:41,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:25:41,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:25:43,456.456 INFO    ] ================================================
[2026-10-28 02:25:43,470.470 INFO    ] Launching Daemon at Wed Oct 28 02:25:43 IST 2026
[2026-10-28 02:25:43,481.481 INFO    ] ================================================
[2026-10-28 02:25:44,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:25:44
[2026-10-28 02:25:44,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:25:45,115.115 INFO    ] Initializing speech engine...
[2026-10-28 02:25:45,126.126 INFO    ] 2026-10-28 02:25:45
[2026-10-28 02:25:45,439.439 INFO    ] 2026-10-28 02:25:45
[2026-10-28 02:25:45,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:25:45,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:25:45,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:25:45,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:25:45,971.971 INFO    ] time= 28/10/2026 02:25:45
[2026-10-28 02:25:46,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:25:46,012.012 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:25:46,167.167 INFO    ] No existing commands found in stream
[2026-10-28 02:25:51,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:25:51,196.196 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-28 02:25:51,903.903 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:25:51,906.906 INFO    ] Checking for system updates...
[2026-10-28 02:25:51,941.941 INFO    ] 200
[2026-10-28 02:25:51,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:25:52,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:25:52,006.006 INFO    ] No update needed
[2026-10-28 02:25:52,008.008 INFO    ] Checking for camera pi updates...
[2026-10-28 02:25:52,045.045 INFO    ] 200
[2026-10-28 02:25:52,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:25:52,092.092 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:25:52,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:25:52,160.160 INFO    ] No camera update needed
[2026-10-28 02:25:52,162.162 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:25:52,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:25:52,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:25:52,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:25:54,215.215 INFO    ] ================================================
[2026-10-28 02:25:54,230.230 INFO    ] Launching Daemon at Wed Oct 28 02:25:54 IST 2026
[2026-10-28 02:25:54,240.240 INFO    ] ================================================
[2026-10-28 02:25:54,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:25:54
[2026-10-28 02:25:55,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:25:55,640.640 INFO    ] Initializing speech engine...
[2026-10-28 02:25:55,647.647 INFO    ] 2026-10-28 02:25:55
[2026-10-28 02:25:55,945.945 INFO    ] 2026-10-28 02:25:55
[2026-10-28 02:25:55,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:25:56,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:25:56,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:25:56,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:25:56,454.454 INFO    ] time= 28/10/2026 02:25:56
[2026-10-28 02:25:56,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:25:56,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:25:56,710.710 INFO    ] No existing commands found in stream
[2026-10-28 02:26:01,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:26:01,731.731 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-28 02:26:06,103.103 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:26:06,106.106 INFO    ] Checking for system updates...
[2026-10-28 02:26:06,141.141 INFO    ] 200
[2026-10-28 02:26:06,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:26:06,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:26:06,206.206 INFO    ] No update needed
[2026-10-28 02:26:06,208.208 INFO    ] Checking for camera pi updates...
[2026-10-28 02:26:06,245.245 INFO    ] 200
[2026-10-28 02:26:06,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:26:06,292.292 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:26:06,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:26:06,391.391 INFO    ] No camera update needed
[2026-10-28 02:26:06,394.394 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:26:06,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:26:06,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:26:06,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:26:08,448.448 INFO    ] ================================================
[2026-10-28 02:26:08,463.463 INFO    ] Launching Daemon at Wed Oct 28 02:26:08 IST 2026
[2026-10-28 02:26:08,475.475 INFO    ] ================================================
[2026-10-28 02:26:09,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:26:09
[2026-10-28 02:26:09,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:26:10,084.084 INFO    ] Initializing speech engine...
[2026-10-28 02:26:10,091.091 INFO    ] 2026-10-28 02:26:10
[2026-10-28 02:26:10,360.360 INFO    ] 2026-10-28 02:26:10
[2026-10-28 02:26:10,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:26:10,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:26:10,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:26:10,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:26:10,930.930 INFO    ] time= 28/10/2026 02:26:10
[2026-10-28 02:26:10,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:26:10,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:26:11,062.062 INFO    ] No existing commands found in stream
[2026-10-28 02:26:16,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:26:16,090.090 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 02:26:18,022.022 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:26:18,025.025 INFO    ] Checking for system updates...
[2026-10-28 02:26:18,060.060 INFO    ] 200
[2026-10-28 02:26:18,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:26:18,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:26:18,132.132 INFO    ] No update needed
[2026-10-28 02:26:18,135.135 INFO    ] Checking for camera pi updates...
[2026-10-28 02:26:18,168.168 INFO    ] 200
[2026-10-28 02:26:18,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:26:18,212.212 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:26:18,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:26:18,306.306 INFO    ] No camera update needed
[2026-10-28 02:26:18,308.308 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:26:18,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:26:18,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:26:18,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:26:20,361.361 INFO    ] ================================================
[2026-10-28 02:26:20,376.376 INFO    ] Launching Daemon at Wed Oct 28 02:26:20 IST 2026
[2026-10-28 02:26:20,387.387 INFO    ] ================================================
[2026-10-28 02:26:20,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:26:20
[2026-10-28 02:26:21,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:26:21,801.801 INFO    ] Initializing speech engine...
[2026-10-28 02:26:21,810.810 INFO    ] 2026-10-28 02:26:21
[2026-10-28 02:26:22,054.054 INFO    ] 2026-10-28 02:26:22
[2026-10-28 02:26:22,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:26:22,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:26:22,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:26:22,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:26:22,605.605 INFO    ] time= 28/10/2026 02:26:22
[2026-10-28 02:26:22,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:26:22,629.629 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:26:22,761.761 INFO    ] No existing commands found in stream
[2026-10-28 02:26:27,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:26:27,789.789 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-28 02:26:30,982.982 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:26:30,985.985 INFO    ] Checking for system updates...
[2026-10-28 02:26:31,024.024 INFO    ] 200
[2026-10-28 02:26:31,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:26:31,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:26:31,087.087 INFO    ] No update needed
[2026-10-28 02:26:31,089.089 INFO    ] Checking for camera pi updates...
[2026-10-28 02:26:31,126.126 INFO    ] 200
[2026-10-28 02:26:31,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:26:31,172.172 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:26:31,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:26:31,254.254 INFO    ] No camera update needed
[2026-10-28 02:26:31,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:26:31,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:26:31,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:26:31,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:26:33,311.311 INFO    ] ================================================
[2026-10-28 02:26:33,325.325 INFO    ] Launching Daemon at Wed Oct 28 02:26:33 IST 2026
[2026-10-28 02:26:33,336.336 INFO    ] ================================================
[2026-10-28 02:26:33,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:26:33
[2026-10-28 02:26:34,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:26:34,826.826 INFO    ] Initializing speech engine...
[2026-10-28 02:26:34,835.835 INFO    ] 2026-10-28 02:26:34
[2026-10-28 02:26:35,095.095 INFO    ] 2026-10-28 02:26:35
[2026-10-28 02:26:35,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:26:35,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:26:35,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:26:35,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:26:35,692.692 INFO    ] time= 28/10/2026 02:26:35
[2026-10-28 02:26:35,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:26:35,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:26:35,892.892 INFO    ] No existing commands found in stream
[2026-10-28 02:26:40,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:26:40,918.918 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-28 02:26:45,260.260 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:26:45,263.263 INFO    ] Checking for system updates...
[2026-10-28 02:26:45,303.303 INFO    ] 200
[2026-10-28 02:26:45,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:26:45,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:26:45,361.361 INFO    ] No update needed
[2026-10-28 02:26:45,364.364 INFO    ] Checking for camera pi updates...
[2026-10-28 02:26:45,401.401 INFO    ] 200
[2026-10-28 02:26:45,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:26:45,448.448 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:26:45,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:26:45,539.539 INFO    ] No camera update needed
[2026-10-28 02:26:45,541.541 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:26:45,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:26:45,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:26:45,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:26:47,594.594 INFO    ] ================================================
[2026-10-28 02:26:47,609.609 INFO    ] Launching Daemon at Wed Oct 28 02:26:47 IST 2026
[2026-10-28 02:26:47,619.619 INFO    ] ================================================
[2026-10-28 02:26:48,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:26:48
[2026-10-28 02:26:48,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:26:49,070.070 INFO    ] Initializing speech engine...
[2026-10-28 02:26:49,080.080 INFO    ] 2026-10-28 02:26:49
[2026-10-28 02:26:49,343.343 INFO    ] 2026-10-28 02:26:49
[2026-10-28 02:26:49,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:26:49,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:26:49,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:26:49,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:26:49,889.889 INFO    ] time= 28/10/2026 02:26:49
[2026-10-28 02:26:49,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:26:49,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:26:50,071.071 INFO    ] No existing commands found in stream
[2026-10-28 02:26:55,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:26:55,109.109 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 02:26:58,712.712 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:26:58,714.714 INFO    ] Checking for system updates...
[2026-10-28 02:26:58,750.750 INFO    ] 200
[2026-10-28 02:26:58,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:26:58,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:26:58,807.807 INFO    ] No update needed
[2026-10-28 02:26:58,810.810 INFO    ] Checking for camera pi updates...
[2026-10-28 02:26:58,843.843 INFO    ] 200
[2026-10-28 02:26:58,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:26:58,887.887 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:26:58,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:26:58,972.972 INFO    ] No camera update needed
[2026-10-28 02:26:58,975.975 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:26:58,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:26:58,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:26:58,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:27:01,028.028 INFO    ] ================================================
[2026-10-28 02:27:01,043.043 INFO    ] Launching Daemon at Wed Oct 28 02:27:01 IST 2026
[2026-10-28 02:27:01,054.054 INFO    ] ================================================
[2026-10-28 02:27:01,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:27:01
[2026-10-28 02:27:02,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:27:02,712.712 INFO    ] Initializing speech engine...
[2026-10-28 02:27:02,722.722 INFO    ] 2026-10-28 02:27:02
[2026-10-28 02:27:03,054.054 INFO    ] 2026-10-28 02:27:03
[2026-10-28 02:27:03,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:27:03,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:27:03,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:27:03,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:27:03,662.662 INFO    ] time= 28/10/2026 02:27:03
[2026-10-28 02:27:03,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:27:03,695.695 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:27:03,862.862 INFO    ] No existing commands found in stream
[2026-10-28 02:27:08,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:27:08,887.887 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 02:27:09,530.530 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:27:09,533.533 INFO    ] Checking for system updates...
[2026-10-28 02:27:09,574.574 INFO    ] 200
[2026-10-28 02:27:09,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:27:09,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:27:09,638.638 INFO    ] No update needed
[2026-10-28 02:27:09,641.641 INFO    ] Checking for camera pi updates...
[2026-10-28 02:27:09,678.678 INFO    ] 200
[2026-10-28 02:27:09,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:27:09,721.721 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:27:09,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:27:09,807.807 INFO    ] No camera update needed
[2026-10-28 02:27:09,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:27:09,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:27:09,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:27:09,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:27:11,862.862 INFO    ] ================================================
[2026-10-28 02:27:11,877.877 INFO    ] Launching Daemon at Wed Oct 28 02:27:11 IST 2026
[2026-10-28 02:27:11,888.888 INFO    ] ================================================
[2026-10-28 02:27:12,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:27:12
[2026-10-28 02:27:13,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:27:13,361.361 INFO    ] Initializing speech engine...
[2026-10-28 02:27:13,370.370 INFO    ] 2026-10-28 02:27:13
[2026-10-28 02:27:13,626.626 INFO    ] 2026-10-28 02:27:13
[2026-10-28 02:27:13,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:27:13,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:27:13,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:27:14,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:27:14,178.178 INFO    ] time= 28/10/2026 02:27:14
[2026-10-28 02:27:14,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:27:14,213.213 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:27:14,341.341 INFO    ] No existing commands found in stream
[2026-10-28 02:27:19,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:27:19,368.368 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-28 02:27:22,022.022 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:27:22,024.024 INFO    ] Checking for system updates...
[2026-10-28 02:27:22,064.064 INFO    ] 200
[2026-10-28 02:27:22,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:27:22,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:27:22,128.128 INFO    ] No update needed
[2026-10-28 02:27:22,130.130 INFO    ] Checking for camera pi updates...
[2026-10-28 02:27:22,168.168 INFO    ] 200
[2026-10-28 02:27:22,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:27:22,215.215 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:27:22,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:27:22,312.312 INFO    ] No camera update needed
[2026-10-28 02:27:22,315.315 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:27:22,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:27:22,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:27:22,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:27:24,366.366 INFO    ] ================================================
[2026-10-28 02:27:24,381.381 INFO    ] Launching Daemon at Wed Oct 28 02:27:24 IST 2026
[2026-10-28 02:27:24,392.392 INFO    ] ================================================
[2026-10-28 02:27:24,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:27:24
[2026-10-28 02:27:25,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:27:25,810.810 INFO    ] Initializing speech engine...
[2026-10-28 02:27:25,817.817 INFO    ] 2026-10-28 02:27:25
[2026-10-28 02:27:26,068.068 INFO    ] 2026-10-28 02:27:26
[2026-10-28 02:27:26,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:27:26,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:27:26,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:27:26,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:27:26,614.614 INFO    ] time= 28/10/2026 02:27:26
[2026-10-28 02:27:26,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:27:26,649.649 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:27:26,786.786 INFO    ] No existing commands found in stream
[2026-10-28 02:27:31,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:27:31,819.819 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-28 02:27:36,268.268 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:27:36,271.271 INFO    ] Checking for system updates...
[2026-10-28 02:27:36,307.307 INFO    ] 200
[2026-10-28 02:27:36,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:27:36,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:27:36,365.365 INFO    ] No update needed
[2026-10-28 02:27:36,367.367 INFO    ] Checking for camera pi updates...
[2026-10-28 02:27:36,404.404 INFO    ] 200
[2026-10-28 02:27:36,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:27:36,448.448 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:27:36,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:27:36,535.535 INFO    ] No camera update needed
[2026-10-28 02:27:36,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:27:36,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:27:36,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:27:36,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:27:38,589.589 INFO    ] ================================================
[2026-10-28 02:27:38,604.604 INFO    ] Launching Daemon at Wed Oct 28 02:27:38 IST 2026
[2026-10-28 02:27:38,615.615 INFO    ] ================================================
[2026-10-28 02:27:39,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:27:39
[2026-10-28 02:27:39,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:27:40,037.037 INFO    ] Initializing speech engine...
[2026-10-28 02:27:40,047.047 INFO    ] 2026-10-28 02:27:40
[2026-10-28 02:27:40,294.294 INFO    ] 2026-10-28 02:27:40
[2026-10-28 02:27:40,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:27:40,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:27:40,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:27:40,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:27:40,852.852 INFO    ] time= 28/10/2026 02:27:40
[2026-10-28 02:27:40,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:27:40,899.899 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:27:41,024.024 INFO    ] No existing commands found in stream
[2026-10-28 02:27:46,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:27:46,057.057 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 02:27:50,300.300 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:27:50,303.303 INFO    ] Checking for system updates...
[2026-10-28 02:27:50,343.343 INFO    ] 200
[2026-10-28 02:27:50,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:27:50,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:27:50,407.407 INFO    ] No update needed
[2026-10-28 02:27:50,409.409 INFO    ] Checking for camera pi updates...
[2026-10-28 02:27:50,447.447 INFO    ] 200
[2026-10-28 02:27:50,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:27:50,490.490 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:27:50,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:27:50,580.580 INFO    ] No camera update needed
[2026-10-28 02:27:50,582.582 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:27:50,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:27:50,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:27:50,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:27:52,635.635 INFO    ] ================================================
[2026-10-28 02:27:52,649.649 INFO    ] Launching Daemon at Wed Oct 28 02:27:52 IST 2026
[2026-10-28 02:27:52,660.660 INFO    ] ================================================
[2026-10-28 02:27:53,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:27:53
[2026-10-28 02:27:53,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:27:54,096.096 INFO    ] Initializing speech engine...
[2026-10-28 02:27:54,115.115 INFO    ] 2026-10-28 02:27:54
[2026-10-28 02:27:54,363.363 INFO    ] 2026-10-28 02:27:54
[2026-10-28 02:27:54,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:27:54,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:27:54,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:27:54,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:27:54,917.917 INFO    ] time= 28/10/2026 02:27:54
[2026-10-28 02:27:54,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:27:54,941.941 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:27:55,067.067 INFO    ] No existing commands found in stream
[2026-10-28 02:28:00,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:28:00,083.083 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-28 02:28:05,687.687 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:28:05,690.690 INFO    ] Checking for system updates...
[2026-10-28 02:28:05,729.729 INFO    ] 200
[2026-10-28 02:28:05,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:28:05,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:28:05,793.793 INFO    ] No update needed
[2026-10-28 02:28:05,795.795 INFO    ] Checking for camera pi updates...
[2026-10-28 02:28:05,832.832 INFO    ] 200
[2026-10-28 02:28:05,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:28:05,875.875 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:28:05,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:28:05,984.984 INFO    ] No camera update needed
[2026-10-28 02:28:05,987.987 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:28:05,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:28:05,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:28:06,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:28:08,042.042 INFO    ] ================================================
[2026-10-28 02:28:08,057.057 INFO    ] Launching Daemon at Wed Oct 28 02:28:08 IST 2026
[2026-10-28 02:28:08,067.067 INFO    ] ================================================
[2026-10-28 02:28:08,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:28:08
[2026-10-28 02:28:09,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:28:09,717.717 INFO    ] Initializing speech engine...
[2026-10-28 02:28:09,728.728 INFO    ] 2026-10-28 02:28:09
[2026-10-28 02:28:10,040.040 INFO    ] 2026-10-28 02:28:10
[2026-10-28 02:28:10,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:28:10,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:28:10,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:28:10,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:28:10,791.791 INFO    ] time= 28/10/2026 02:28:10
[2026-10-28 02:28:10,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:28:10,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:28:11,120.120 INFO    ] No existing commands found in stream
[2026-10-28 02:28:16,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:28:16,137.137 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 02:28:20,363.363 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:28:20,366.366 INFO    ] Checking for system updates...
[2026-10-28 02:28:20,407.407 INFO    ] 200
[2026-10-28 02:28:20,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:28:20,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:28:20,464.464 INFO    ] No update needed
[2026-10-28 02:28:20,466.466 INFO    ] Checking for camera pi updates...
[2026-10-28 02:28:20,500.500 INFO    ] 200
[2026-10-28 02:28:20,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:28:20,549.549 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:28:20,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:28:20,636.636 INFO    ] No camera update needed
[2026-10-28 02:28:20,638.638 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:28:20,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:28:20,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:28:20,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:28:22,690.690 INFO    ] ================================================
[2026-10-28 02:28:22,706.706 INFO    ] Launching Daemon at Wed Oct 28 02:28:22 IST 2026
[2026-10-28 02:28:22,716.716 INFO    ] ================================================
[2026-10-28 02:28:23,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:28:23
[2026-10-28 02:28:24,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:28:24,371.371 INFO    ] Initializing speech engine...
[2026-10-28 02:28:24,383.383 INFO    ] 2026-10-28 02:28:24
[2026-10-28 02:28:24,656.656 INFO    ] 2026-10-28 02:28:24
[2026-10-28 02:28:24,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:28:24,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:28:24,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:28:25,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:28:25,183.183 INFO    ] time= 28/10/2026 02:28:25
[2026-10-28 02:28:25,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:28:25,208.208 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:28:25,322.322 INFO    ] No existing commands found in stream
[2026-10-28 02:28:30,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:28:30,349.349 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-28 02:28:32,421.421 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:28:32,424.424 INFO    ] Checking for system updates...
[2026-10-28 02:28:32,464.464 INFO    ] 200
[2026-10-28 02:28:32,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:28:32,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:28:32,529.529 INFO    ] No update needed
[2026-10-28 02:28:32,531.531 INFO    ] Checking for camera pi updates...
[2026-10-28 02:28:32,566.566 INFO    ] 200
[2026-10-28 02:28:32,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:28:32,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:28:32,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:28:32,706.706 INFO    ] No camera update needed
[2026-10-28 02:28:32,709.709 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:28:32,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:28:32,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:28:32,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:28:34,762.762 INFO    ] ================================================
[2026-10-28 02:28:34,777.777 INFO    ] Launching Daemon at Wed Oct 28 02:28:34 IST 2026
[2026-10-28 02:28:34,788.788 INFO    ] ================================================
[2026-10-28 02:28:35,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:28:35
[2026-10-28 02:28:35,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:28:36,185.185 INFO    ] Initializing speech engine...
[2026-10-28 02:28:36,199.199 INFO    ] 2026-10-28 02:28:36
[2026-10-28 02:28:36,463.463 INFO    ] 2026-10-28 02:28:36
[2026-10-28 02:28:36,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:28:36,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:28:36,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:28:36,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:28:37,029.029 INFO    ] time= 28/10/2026 02:28:36
[2026-10-28 02:28:37,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:28:37,051.051 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:28:37,188.188 INFO    ] No existing commands found in stream
[2026-10-28 02:28:42,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:28:42,202.202 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-28 02:28:45,124.124 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:28:45,127.127 INFO    ] Checking for system updates...
[2026-10-28 02:28:45,168.168 INFO    ] 200
[2026-10-28 02:28:45,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:28:45,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:28:45,237.237 INFO    ] No update needed
[2026-10-28 02:28:45,240.240 INFO    ] Checking for camera pi updates...
[2026-10-28 02:28:45,276.276 INFO    ] 200
[2026-10-28 02:28:45,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:28:45,323.323 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:28:45,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:28:45,412.412 INFO    ] No camera update needed
[2026-10-28 02:28:45,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:28:45,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:28:45,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:28:45,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:28:47,467.467 INFO    ] ================================================
[2026-10-28 02:28:47,482.482 INFO    ] Launching Daemon at Wed Oct 28 02:28:47 IST 2026
[2026-10-28 02:28:47,494.494 INFO    ] ================================================
[2026-10-28 02:28:48,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:28:48
[2026-10-28 02:28:48,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:28:48,928.928 INFO    ] Initializing speech engine...
[2026-10-28 02:28:48,937.937 INFO    ] 2026-10-28 02:28:48
[2026-10-28 02:28:49,214.214 INFO    ] 2026-10-28 02:28:49
[2026-10-28 02:28:49,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:28:49,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:28:49,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:28:49,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:28:49,786.786 INFO    ] time= 28/10/2026 02:28:49
[2026-10-28 02:28:49,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:28:49,823.823 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:28:49,947.947 INFO    ] No existing commands found in stream
[2026-10-28 02:28:54,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:28:54,981.981 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 02:28:55,729.729 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:28:55,732.732 INFO    ] Checking for system updates...
[2026-10-28 02:28:55,773.773 INFO    ] 200
[2026-10-28 02:28:55,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:28:55,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:28:55,840.840 INFO    ] No update needed
[2026-10-28 02:28:55,843.843 INFO    ] Checking for camera pi updates...
[2026-10-28 02:28:55,877.877 INFO    ] 200
[2026-10-28 02:28:55,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:28:55,922.922 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:28:55,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:28:56,001.001 INFO    ] No camera update needed
[2026-10-28 02:28:56,004.004 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:28:56,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:28:56,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:28:56,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:28:58,059.059 INFO    ] ================================================
[2026-10-28 02:28:58,074.074 INFO    ] Launching Daemon at Wed Oct 28 02:28:58 IST 2026
[2026-10-28 02:28:58,086.086 INFO    ] ================================================
[2026-10-28 02:28:58,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:28:58
[2026-10-28 02:28:59,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:28:59,526.526 INFO    ] Initializing speech engine...
[2026-10-28 02:28:59,533.533 INFO    ] 2026-10-28 02:28:59
[2026-10-28 02:28:59,795.795 INFO    ] 2026-10-28 02:28:59
[2026-10-28 02:28:59,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:29:00,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:29:00,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:29:00,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:29:00,338.338 INFO    ] time= 28/10/2026 02:29:00
[2026-10-28 02:29:00,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:29:00,386.386 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:29:00,493.493 INFO    ] No existing commands found in stream
[2026-10-28 02:29:05,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:29:05,524.524 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 02:29:06,108.108 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:29:06,111.111 INFO    ] Checking for system updates...
[2026-10-28 02:29:06,151.151 INFO    ] 200
[2026-10-28 02:29:06,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:29:06,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:29:06,216.216 INFO    ] No update needed
[2026-10-28 02:29:06,218.218 INFO    ] Checking for camera pi updates...
[2026-10-28 02:29:06,252.252 INFO    ] 200
[2026-10-28 02:29:06,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:29:06,301.301 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:29:06,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:29:06,389.389 INFO    ] No camera update needed
[2026-10-28 02:29:06,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:29:06,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:29:06,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:29:06,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:29:08,449.449 INFO    ] ================================================
[2026-10-28 02:29:08,464.464 INFO    ] Launching Daemon at Wed Oct 28 02:29:08 IST 2026
[2026-10-28 02:29:08,475.475 INFO    ] ================================================
[2026-10-28 02:29:09,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:29:09
[2026-10-28 02:29:09,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:29:09,888.888 INFO    ] Initializing speech engine...
[2026-10-28 02:29:09,902.902 INFO    ] 2026-10-28 02:29:09
[2026-10-28 02:29:10,154.154 INFO    ] 2026-10-28 02:29:10
[2026-10-28 02:29:10,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:29:10,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:29:10,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:29:10,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:29:10,710.710 INFO    ] time= 28/10/2026 02:29:10
[2026-10-28 02:29:10,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:29:10,734.734 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:29:10,859.859 INFO    ] No existing commands found in stream
[2026-10-28 02:29:15,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:29:15,878.878 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-28 02:29:16,939.939 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:29:16,942.942 INFO    ] Checking for system updates...
[2026-10-28 02:29:16,977.977 INFO    ] 200
[2026-10-28 02:29:16,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:29:17,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:29:17,034.034 INFO    ] No update needed
[2026-10-28 02:29:17,036.036 INFO    ] Checking for camera pi updates...
[2026-10-28 02:29:17,073.073 INFO    ] 200
[2026-10-28 02:29:17,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:29:17,115.115 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:29:17,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:29:17,197.197 INFO    ] No camera update needed
[2026-10-28 02:29:17,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:29:17,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:29:17,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:29:17,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:29:19,254.254 INFO    ] ================================================
[2026-10-28 02:29:19,269.269 INFO    ] Launching Daemon at Wed Oct 28 02:29:19 IST 2026
[2026-10-28 02:29:19,280.280 INFO    ] ================================================
[2026-10-28 02:29:19,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:29:19
[2026-10-28 02:29:20,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:29:20,712.712 INFO    ] Initializing speech engine...
[2026-10-28 02:29:20,719.719 INFO    ] 2026-10-28 02:29:20
[2026-10-28 02:29:20,976.976 INFO    ] 2026-10-28 02:29:20
[2026-10-28 02:29:21,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:29:21,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:29:21,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:29:21,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:29:21,542.542 INFO    ] time= 28/10/2026 02:29:21
[2026-10-28 02:29:21,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:29:21,576.576 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:29:21,702.702 INFO    ] No existing commands found in stream
[2026-10-28 02:29:26,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:29:26,735.735 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-28 02:29:29,445.445 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:29:29,448.448 INFO    ] Checking for system updates...
[2026-10-28 02:29:29,485.485 INFO    ] 200
[2026-10-28 02:29:29,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:29:29,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:29:29,543.543 INFO    ] No update needed
[2026-10-28 02:29:29,546.546 INFO    ] Checking for camera pi updates...
[2026-10-28 02:29:29,582.582 INFO    ] 200
[2026-10-28 02:29:29,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:29:29,631.631 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:29:29,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:29:29,715.715 INFO    ] No camera update needed
[2026-10-28 02:29:29,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:29:29,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:29:29,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:29:29,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:29:31,776.776 INFO    ] ================================================
[2026-10-28 02:29:31,792.792 INFO    ] Launching Daemon at Wed Oct 28 02:29:31 IST 2026
[2026-10-28 02:29:31,804.804 INFO    ] ================================================
[2026-10-28 02:29:32,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:29:32
[2026-10-28 02:29:33,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:29:33,299.299 INFO    ] Initializing speech engine...
[2026-10-28 02:29:33,305.305 INFO    ] 2026-10-28 02:29:33
[2026-10-28 02:29:33,606.606 INFO    ] 2026-10-28 02:29:33
[2026-10-28 02:29:33,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:29:33,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:29:33,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:29:34,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:29:34,239.239 INFO    ] time= 28/10/2026 02:29:34
[2026-10-28 02:29:34,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:29:34,263.263 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:29:34,413.413 INFO    ] No existing commands found in stream
[2026-10-28 02:29:39,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:29:39,429.429 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-28 02:29:40,979.979 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:29:40,982.982 INFO    ] Checking for system updates...
[2026-10-28 02:29:41,021.021 INFO    ] 200
[2026-10-28 02:29:41,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:29:41,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:29:41,085.085 INFO    ] No update needed
[2026-10-28 02:29:41,087.087 INFO    ] Checking for camera pi updates...
[2026-10-28 02:29:41,124.124 INFO    ] 200
[2026-10-28 02:29:41,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:29:41,166.166 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:29:41,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:29:41,239.239 INFO    ] No camera update needed
[2026-10-28 02:29:41,242.242 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:29:41,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:29:41,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:29:41,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:29:43,296.296 INFO    ] ================================================
[2026-10-28 02:29:43,310.310 INFO    ] Launching Daemon at Wed Oct 28 02:29:43 IST 2026
[2026-10-28 02:29:43,321.321 INFO    ] ================================================
[2026-10-28 02:29:43,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:29:43
[2026-10-28 02:29:44,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:29:44,732.732 INFO    ] Initializing speech engine...
[2026-10-28 02:29:44,746.746 INFO    ] 2026-10-28 02:29:44
[2026-10-28 02:29:45,026.026 INFO    ] 2026-10-28 02:29:44
[2026-10-28 02:29:45,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:29:45,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:29:45,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:29:45,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:29:45,520.520 INFO    ] time= 28/10/2026 02:29:45
[2026-10-28 02:29:45,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:29:45,624.624 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:29:45,719.719 INFO    ] No existing commands found in stream
[2026-10-28 02:29:50,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:29:50,734.734 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 02:29:53,898.898 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:29:53,900.900 INFO    ] Checking for system updates...
[2026-10-28 02:29:53,935.935 INFO    ] 200
[2026-10-28 02:29:53,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:29:53,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:29:53,998.998 INFO    ] No update needed
[2026-10-28 02:29:54,001.001 INFO    ] Checking for camera pi updates...
[2026-10-28 02:29:54,034.034 INFO    ] 200
[2026-10-28 02:29:54,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:29:54,080.080 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:29:54,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:29:54,162.162 INFO    ] No camera update needed
[2026-10-28 02:29:54,164.164 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:29:54,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:29:54,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:29:54,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:29:56,217.217 INFO    ] ================================================
[2026-10-28 02:29:56,233.233 INFO    ] Launching Daemon at Wed Oct 28 02:29:56 IST 2026
[2026-10-28 02:29:56,244.244 INFO    ] ================================================
[2026-10-28 02:29:56,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:29:56
[2026-10-28 02:29:57,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:29:57,667.667 INFO    ] Initializing speech engine...
[2026-10-28 02:29:57,676.676 INFO    ] 2026-10-28 02:29:57
[2026-10-28 02:29:57,921.921 INFO    ] 2026-10-28 02:29:57
[2026-10-28 02:29:57,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:29:58,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:29:58,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:29:58,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:29:58,473.473 INFO    ] time= 28/10/2026 02:29:58
[2026-10-28 02:29:58,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:29:58,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:29:58,650.650 INFO    ] No existing commands found in stream
[2026-10-28 02:30:03,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:30:03,678.678 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-28 02:30:08,418.418 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:30:08,421.421 INFO    ] Checking for system updates...
[2026-10-28 02:30:08,457.457 INFO    ] 200
[2026-10-28 02:30:08,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:30:08,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:30:08,514.514 INFO    ] No update needed
[2026-10-28 02:30:08,517.517 INFO    ] Checking for camera pi updates...
[2026-10-28 02:30:08,555.555 INFO    ] 200
[2026-10-28 02:30:08,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:30:08,602.602 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:30:08,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:30:08,695.695 INFO    ] No camera update needed
[2026-10-28 02:30:08,697.697 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:30:08,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:30:08,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:30:08,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:30:10,750.750 INFO    ] ================================================
[2026-10-28 02:30:10,765.765 INFO    ] Launching Daemon at Wed Oct 28 02:30:10 IST 2026
[2026-10-28 02:30:10,776.776 INFO    ] ================================================
[2026-10-28 02:30:11,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:30:11
[2026-10-28 02:30:12,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:30:12,415.415 INFO    ] Initializing speech engine...
[2026-10-28 02:30:12,421.421 INFO    ] 2026-10-28 02:30:12
[2026-10-28 02:30:12,730.730 INFO    ] 2026-10-28 02:30:12
[2026-10-28 02:30:12,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:30:13,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:30:13,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:30:13,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:30:13,285.285 INFO    ] time= 28/10/2026 02:30:13
[2026-10-28 02:30:13,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:30:13,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:30:13,497.497 INFO    ] No existing commands found in stream
[2026-10-28 02:30:18,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:30:18,532.532 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 02:30:19,193.193 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:30:19,196.196 INFO    ] Checking for system updates...
[2026-10-28 02:30:19,234.234 INFO    ] 200
[2026-10-28 02:30:19,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:30:19,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:30:19,307.307 INFO    ] No update needed
[2026-10-28 02:30:19,310.310 INFO    ] Checking for camera pi updates...
[2026-10-28 02:30:19,343.343 INFO    ] 200
[2026-10-28 02:30:19,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:30:19,391.391 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:30:19,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:30:19,477.477 INFO    ] No camera update needed
[2026-10-28 02:30:19,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:30:19,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:30:19,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:30:19,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:30:21,534.534 INFO    ] ================================================
[2026-10-28 02:30:21,549.549 INFO    ] Launching Daemon at Wed Oct 28 02:30:21 IST 2026
[2026-10-28 02:30:21,560.560 INFO    ] ================================================
[2026-10-28 02:30:22,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:30:22
[2026-10-28 02:30:22,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:30:22,984.984 INFO    ] Initializing speech engine...
[2026-10-28 02:30:22,993.993 INFO    ] 2026-10-28 02:30:22
[2026-10-28 02:30:23,238.238 INFO    ] 2026-10-28 02:30:23
[2026-10-28 02:30:23,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:30:23,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:30:23,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:30:23,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:30:23,797.797 INFO    ] time= 28/10/2026 02:30:23
[2026-10-28 02:30:23,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:30:23,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:30:23,979.979 INFO    ] No existing commands found in stream
[2026-10-28 02:30:29,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:30:29,012.012 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-28 02:30:33,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:30:33,486.486 INFO    ] Checking for system updates...
[2026-10-28 02:30:33,528.528 INFO    ] 200
[2026-10-28 02:30:33,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:30:33,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:30:33,586.586 INFO    ] No update needed
[2026-10-28 02:30:33,588.588 INFO    ] Checking for camera pi updates...
[2026-10-28 02:30:33,622.622 INFO    ] 200
[2026-10-28 02:30:33,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:30:33,665.665 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:30:33,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:30:33,737.737 INFO    ] No camera update needed
[2026-10-28 02:30:33,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:30:33,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:30:33,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:30:33,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:30:35,791.791 INFO    ] ================================================
[2026-10-28 02:30:35,806.806 INFO    ] Launching Daemon at Wed Oct 28 02:30:35 IST 2026
[2026-10-28 02:30:35,816.816 INFO    ] ================================================
[2026-10-28 02:30:36,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:30:36
[2026-10-28 02:30:36,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:30:37,218.218 INFO    ] Initializing speech engine...
[2026-10-28 02:30:37,241.241 INFO    ] 2026-10-28 02:30:37
[2026-10-28 02:30:37,497.497 INFO    ] 2026-10-28 02:30:37
[2026-10-28 02:30:37,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:30:37,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:30:37,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:30:38,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:30:38,068.068 INFO    ] time= 28/10/2026 02:30:38
[2026-10-28 02:30:38,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:30:38,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:30:38,240.240 INFO    ] No existing commands found in stream
[2026-10-28 02:30:43,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:30:43,273.273 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-28 02:30:44,177.177 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:30:44,179.179 INFO    ] Checking for system updates...
[2026-10-28 02:30:44,216.216 INFO    ] 200
[2026-10-28 02:30:44,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:30:44,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:30:44,273.273 INFO    ] No update needed
[2026-10-28 02:30:44,276.276 INFO    ] Checking for camera pi updates...
[2026-10-28 02:30:44,309.309 INFO    ] 200
[2026-10-28 02:30:44,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:30:44,358.358 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:30:44,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:30:44,445.445 INFO    ] No camera update needed
[2026-10-28 02:30:44,447.447 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:30:44,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:30:44,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:30:44,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:30:46,503.503 INFO    ] ================================================
[2026-10-28 02:30:46,518.518 INFO    ] Launching Daemon at Wed Oct 28 02:30:46 IST 2026
[2026-10-28 02:30:46,529.529 INFO    ] ================================================
[2026-10-28 02:30:47,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:30:47
[2026-10-28 02:30:47,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:30:47,925.925 INFO    ] Initializing speech engine...
[2026-10-28 02:30:47,933.933 INFO    ] 2026-10-28 02:30:47
[2026-10-28 02:30:48,209.209 INFO    ] 2026-10-28 02:30:48
[2026-10-28 02:30:48,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:30:48,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:30:48,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:30:48,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:30:48,921.921 INFO    ] time= 28/10/2026 02:30:48
[2026-10-28 02:30:48,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:30:49,015.015 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:30:49,148.148 INFO    ] No existing commands found in stream
[2026-10-28 02:30:54,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:30:54,187.187 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-28 02:30:55,098.098 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:30:55,100.100 INFO    ] Checking for system updates...
[2026-10-28 02:30:55,140.140 INFO    ] 200
[2026-10-28 02:30:55,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:30:55,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:30:55,199.199 INFO    ] No update needed
[2026-10-28 02:30:55,201.201 INFO    ] Checking for camera pi updates...
[2026-10-28 02:30:55,235.235 INFO    ] 200
[2026-10-28 02:30:55,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:30:55,283.283 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:30:55,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:30:55,382.382 INFO    ] No camera update needed
[2026-10-28 02:30:55,385.385 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:30:55,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:30:55,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:30:55,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:30:57,441.441 INFO    ] ================================================
[2026-10-28 02:30:57,456.456 INFO    ] Launching Daemon at Wed Oct 28 02:30:57 IST 2026
[2026-10-28 02:30:57,466.466 INFO    ] ================================================
[2026-10-28 02:30:58,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:30:58
[2026-10-28 02:30:58,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:30:59,094.094 INFO    ] Initializing speech engine...
[2026-10-28 02:30:59,100.100 INFO    ] 2026-10-28 02:30:59
[2026-10-28 02:30:59,361.361 INFO    ] 2026-10-28 02:30:59
[2026-10-28 02:30:59,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:30:59,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:30:59,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:30:59,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:30:59,904.904 INFO    ] time= 28/10/2026 02:30:59
[2026-10-28 02:30:59,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:30:59,927.927 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:31:00,061.061 INFO    ] No existing commands found in stream
[2026-10-28 02:31:05,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:31:05,082.082 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-28 02:31:07,458.458 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:31:07,461.461 INFO    ] Checking for system updates...
[2026-10-28 02:31:07,499.499 INFO    ] 200
[2026-10-28 02:31:07,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:31:07,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:31:07,557.557 INFO    ] No update needed
[2026-10-28 02:31:07,559.559 INFO    ] Checking for camera pi updates...
[2026-10-28 02:31:07,597.597 INFO    ] 200
[2026-10-28 02:31:07,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:31:07,640.640 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:31:07,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:31:07,841.841 INFO    ] No camera update needed
[2026-10-28 02:31:07,843.843 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:31:07,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:31:07,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:31:07,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:31:09,900.900 INFO    ] ================================================
[2026-10-28 02:31:09,915.915 INFO    ] Launching Daemon at Wed Oct 28 02:31:09 IST 2026
[2026-10-28 02:31:09,925.925 INFO    ] ================================================
[2026-10-28 02:31:10,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:31:10
[2026-10-28 02:31:11,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:31:11,418.418 INFO    ] Initializing speech engine...
[2026-10-28 02:31:11,429.429 INFO    ] 2026-10-28 02:31:11
[2026-10-28 02:31:11,690.690 INFO    ] 2026-10-28 02:31:11
[2026-10-28 02:31:11,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:31:12,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:31:12,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:31:12,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:31:12,250.250 INFO    ] time= 28/10/2026 02:31:12
[2026-10-28 02:31:12,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:31:12,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:31:12,416.416 INFO    ] No existing commands found in stream
[2026-10-28 02:31:17,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:31:17,449.449 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-28 02:31:20,498.498 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:31:20,501.501 INFO    ] Checking for system updates...
[2026-10-28 02:31:20,539.539 INFO    ] 200
[2026-10-28 02:31:20,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:31:20,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:31:20,596.596 INFO    ] No update needed
[2026-10-28 02:31:20,599.599 INFO    ] Checking for camera pi updates...
[2026-10-28 02:31:20,635.635 INFO    ] 200
[2026-10-28 02:31:20,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:31:20,681.681 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:31:20,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:31:20,765.765 INFO    ] No camera update needed
[2026-10-28 02:31:20,768.768 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:31:20,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:31:20,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:31:20,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:31:22,829.829 INFO    ] ================================================
[2026-10-28 02:31:22,846.846 INFO    ] Launching Daemon at Wed Oct 28 02:31:22 IST 2026
[2026-10-28 02:31:22,857.857 INFO    ] ================================================
[2026-10-28 02:31:23,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:31:23
[2026-10-28 02:31:24,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:31:24,261.261 INFO    ] Initializing speech engine...
[2026-10-28 02:31:24,284.284 INFO    ] 2026-10-28 02:31:24
[2026-10-28 02:31:24,538.538 INFO    ] 2026-10-28 02:31:24
[2026-10-28 02:31:24,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:31:25,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:31:25,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:31:25,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:31:25,377.377 INFO    ] time= 28/10/2026 02:31:25
[2026-10-28 02:31:25,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:31:25,491.491 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:31:25,674.674 INFO    ] No existing commands found in stream
[2026-10-28 02:31:30,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:31:30,698.698 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-28 02:31:32,445.445 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:31:32,448.448 INFO    ] Checking for system updates...
[2026-10-28 02:31:32,492.492 INFO    ] 200
[2026-10-28 02:31:32,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:31:32,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:31:32,555.555 INFO    ] No update needed
[2026-10-28 02:31:32,558.558 INFO    ] Checking for camera pi updates...
[2026-10-28 02:31:32,591.591 INFO    ] 200
[2026-10-28 02:31:32,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:31:32,635.635 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:31:32,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:31:32,740.740 INFO    ] No camera update needed
[2026-10-28 02:31:32,743.743 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:31:32,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:31:32,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:31:32,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:31:34,800.800 INFO    ] ================================================
[2026-10-28 02:31:34,815.815 INFO    ] Launching Daemon at Wed Oct 28 02:31:34 IST 2026
[2026-10-28 02:31:34,825.825 INFO    ] ================================================
[2026-10-28 02:31:35,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:31:35
[2026-10-28 02:31:36,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:31:36,322.322 INFO    ] Initializing speech engine...
[2026-10-28 02:31:36,328.328 INFO    ] 2026-10-28 02:31:36
[2026-10-28 02:31:36,611.611 INFO    ] 2026-10-28 02:31:36
[2026-10-28 02:31:36,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:31:36,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:31:37,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:31:37,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:31:37,231.231 INFO    ] time= 28/10/2026 02:31:37
[2026-10-28 02:31:37,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:31:37,345.345 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:31:37,540.540 INFO    ] No existing commands found in stream
[2026-10-28 02:31:42,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:31:42,562.562 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-28 02:31:46,916.916 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:31:46,919.919 INFO    ] Checking for system updates...
[2026-10-28 02:31:46,956.956 INFO    ] 200
[2026-10-28 02:31:46,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:31:47,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:31:47,019.019 INFO    ] No update needed
[2026-10-28 02:31:47,022.022 INFO    ] Checking for camera pi updates...
[2026-10-28 02:31:47,056.056 INFO    ] 200
[2026-10-28 02:31:47,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:31:47,103.103 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:31:47,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:31:47,204.204 INFO    ] No camera update needed
[2026-10-28 02:31:47,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:31:47,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:31:47,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:31:47,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:31:49,261.261 INFO    ] ================================================
[2026-10-28 02:31:49,276.276 INFO    ] Launching Daemon at Wed Oct 28 02:31:49 IST 2026
[2026-10-28 02:31:49,286.286 INFO    ] ================================================
[2026-10-28 02:31:49,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:31:49
[2026-10-28 02:31:50,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:31:50,791.791 INFO    ] Initializing speech engine...
[2026-10-28 02:31:50,801.801 INFO    ] 2026-10-28 02:31:50
[2026-10-28 02:31:51,089.089 INFO    ] 2026-10-28 02:31:51
[2026-10-28 02:31:51,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:31:51,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:31:51,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:31:51,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:31:51,850.850 INFO    ] time= 28/10/2026 02:31:51
[2026-10-28 02:31:51,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:31:51,937.937 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:31:52,063.063 INFO    ] No existing commands found in stream
[2026-10-28 02:31:57,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:31:57,076.076 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-28 02:31:57,939.939 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:31:57,942.942 INFO    ] Checking for system updates...
[2026-10-28 02:31:57,982.982 INFO    ] 200
[2026-10-28 02:31:57,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:31:58,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:31:58,046.046 INFO    ] No update needed
[2026-10-28 02:31:58,049.049 INFO    ] Checking for camera pi updates...
[2026-10-28 02:31:58,083.083 INFO    ] 200
[2026-10-28 02:31:58,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:31:58,131.131 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:31:58,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:31:58,223.223 INFO    ] No camera update needed
[2026-10-28 02:31:58,226.226 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:31:58,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:31:58,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:31:58,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:32:00,280.280 INFO    ] ================================================
[2026-10-28 02:32:00,295.295 INFO    ] Launching Daemon at Wed Oct 28 02:32:00 IST 2026
[2026-10-28 02:32:00,306.306 INFO    ] ================================================
[2026-10-28 02:32:00,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:32:00
[2026-10-28 02:32:01,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:32:02,045.045 INFO    ] Initializing speech engine...
[2026-10-28 02:32:02,052.052 INFO    ] 2026-10-28 02:32:02
[2026-10-28 02:32:02,374.374 INFO    ] 2026-10-28 02:32:02
[2026-10-28 02:32:02,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:32:02,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:32:02,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:32:02,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:32:02,942.942 INFO    ] time= 28/10/2026 02:32:02
[2026-10-28 02:32:02,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:32:02,959.959 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:32:03,094.094 INFO    ] No existing commands found in stream
[2026-10-28 02:32:08,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:32:08,122.122 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-28 02:32:09,137.137 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:32:09,139.139 INFO    ] Checking for system updates...
[2026-10-28 02:32:09,177.177 INFO    ] 200
[2026-10-28 02:32:09,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:32:09,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:32:09,235.235 INFO    ] No update needed
[2026-10-28 02:32:09,238.238 INFO    ] Checking for camera pi updates...
[2026-10-28 02:32:09,275.275 INFO    ] 200
[2026-10-28 02:32:09,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:32:09,317.317 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:32:09,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:32:09,441.441 INFO    ] No camera update needed
[2026-10-28 02:32:09,444.444 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:32:09,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:32:09,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:32:09,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:32:11,498.498 INFO    ] ================================================
[2026-10-28 02:32:11,513.513 INFO    ] Launching Daemon at Wed Oct 28 02:32:11 IST 2026
[2026-10-28 02:32:11,524.524 INFO    ] ================================================
[2026-10-28 02:32:12,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:32:12
[2026-10-28 02:32:12,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:32:12,977.977 INFO    ] Initializing speech engine...
[2026-10-28 02:32:12,985.985 INFO    ] 2026-10-28 02:32:12
[2026-10-28 02:32:13,246.246 INFO    ] 2026-10-28 02:32:13
[2026-10-28 02:32:13,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:32:13,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:32:13,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:32:13,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:32:13,955.955 INFO    ] time= 28/10/2026 02:32:13
[2026-10-28 02:32:14,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:32:14,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:32:14,188.188 INFO    ] No existing commands found in stream
[2026-10-28 02:32:19,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:32:19,205.205 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-28 02:32:23,358.358 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:32:23,360.360 INFO    ] Checking for system updates...
[2026-10-28 02:32:23,396.396 INFO    ] 200
[2026-10-28 02:32:23,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:32:23,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:32:23,457.457 INFO    ] No update needed
[2026-10-28 02:32:23,460.460 INFO    ] Checking for camera pi updates...
[2026-10-28 02:32:23,494.494 INFO    ] 200
[2026-10-28 02:32:23,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:32:23,543.543 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:32:23,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:32:23,630.630 INFO    ] No camera update needed
[2026-10-28 02:32:23,633.633 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:32:23,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:32:23,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:32:23,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:32:25,685.685 INFO    ] ================================================
[2026-10-28 02:32:25,700.700 INFO    ] Launching Daemon at Wed Oct 28 02:32:25 IST 2026
[2026-10-28 02:32:25,710.710 INFO    ] ================================================
[2026-10-28 02:32:26,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:32:26
[2026-10-28 02:32:26,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:32:27,132.132 INFO    ] Initializing speech engine...
[2026-10-28 02:32:27,139.139 INFO    ] 2026-10-28 02:32:27
[2026-10-28 02:32:27,396.396 INFO    ] 2026-10-28 02:32:27
[2026-10-28 02:32:27,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:32:27,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:32:27,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:32:27,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:32:27,937.937 INFO    ] time= 28/10/2026 02:32:27
[2026-10-28 02:32:27,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:32:27,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:32:28,093.093 INFO    ] No existing commands found in stream
[2026-10-28 02:32:33,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:32:33,118.118 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 02:32:35,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:32:35,487.487 INFO    ] Checking for system updates...
[2026-10-28 02:32:35,522.522 INFO    ] 200
[2026-10-28 02:32:35,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:32:35,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:32:35,579.579 INFO    ] No update needed
[2026-10-28 02:32:35,581.581 INFO    ] Checking for camera pi updates...
[2026-10-28 02:32:35,614.614 INFO    ] 200
[2026-10-28 02:32:35,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:32:35,656.656 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:32:35,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:32:35,738.738 INFO    ] No camera update needed
[2026-10-28 02:32:35,740.740 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:32:35,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:32:35,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:32:35,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:32:37,793.793 INFO    ] ================================================
[2026-10-28 02:32:37,808.808 INFO    ] Launching Daemon at Wed Oct 28 02:32:37 IST 2026
[2026-10-28 02:32:37,819.819 INFO    ] ================================================
[2026-10-28 02:32:38,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:32:38
[2026-10-28 02:32:38,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:32:39,219.219 INFO    ] Initializing speech engine...
[2026-10-28 02:32:39,226.226 INFO    ] 2026-10-28 02:32:39
[2026-10-28 02:32:39,511.511 INFO    ] 2026-10-28 02:32:39
[2026-10-28 02:32:39,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:32:39,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:32:39,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:32:40,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:32:40,120.120 INFO    ] time= 28/10/2026 02:32:40
[2026-10-28 02:32:40,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:32:40,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:32:40,284.284 INFO    ] No existing commands found in stream
[2026-10-28 02:32:45,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:32:45,302.302 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-28 02:32:47,119.119 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:32:47,122.122 INFO    ] Checking for system updates...
[2026-10-28 02:32:47,158.158 INFO    ] 200
[2026-10-28 02:32:47,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:32:47,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:32:47,215.215 INFO    ] No update needed
[2026-10-28 02:32:47,218.218 INFO    ] Checking for camera pi updates...
[2026-10-28 02:32:47,251.251 INFO    ] 200
[2026-10-28 02:32:47,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:32:47,295.295 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:32:47,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:32:47,379.379 INFO    ] No camera update needed
[2026-10-28 02:32:47,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:32:47,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:32:47,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:32:47,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:32:49,434.434 INFO    ] ================================================
[2026-10-28 02:32:49,449.449 INFO    ] Launching Daemon at Wed Oct 28 02:32:49 IST 2026
[2026-10-28 02:32:49,460.460 INFO    ] ================================================
[2026-10-28 02:32:50,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:32:50
[2026-10-28 02:32:50,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:32:51,122.122 INFO    ] Initializing speech engine...
[2026-10-28 02:32:51,136.136 INFO    ] 2026-10-28 02:32:51
[2026-10-28 02:32:51,428.428 INFO    ] 2026-10-28 02:32:51
[2026-10-28 02:32:51,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:32:51,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:32:51,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:32:51,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:32:51,995.995 INFO    ] time= 28/10/2026 02:32:51
[2026-10-28 02:32:52,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:32:52,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:32:52,151.151 INFO    ] No existing commands found in stream
[2026-10-28 02:32:57,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:32:57,170.170 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-28 02:32:57,724.724 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:32:57,726.726 INFO    ] Checking for system updates...
[2026-10-28 02:32:57,767.767 INFO    ] 200
[2026-10-28 02:32:57,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:32:57,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:32:57,826.826 INFO    ] No update needed
[2026-10-28 02:32:57,829.829 INFO    ] Checking for camera pi updates...
[2026-10-28 02:32:57,865.865 INFO    ] 200
[2026-10-28 02:32:57,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:32:57,909.909 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:32:57,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:32:57,992.992 INFO    ] No camera update needed
[2026-10-28 02:32:57,994.994 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:32:57,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:32:58,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:32:58,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:33:00,048.048 INFO    ] ================================================
[2026-10-28 02:33:00,062.062 INFO    ] Launching Daemon at Wed Oct 28 02:33:00 IST 2026
[2026-10-28 02:33:00,073.073 INFO    ] ================================================
[2026-10-28 02:33:00,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:33:00
[2026-10-28 02:33:01,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:33:01,480.480 INFO    ] Initializing speech engine...
[2026-10-28 02:33:01,494.494 INFO    ] 2026-10-28 02:33:01
[2026-10-28 02:33:01,875.875 INFO    ] 2026-10-28 02:33:01
[2026-10-28 02:33:01,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:33:02,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:33:02,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:33:02,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:33:02,552.552 INFO    ] time= 28/10/2026 02:33:02
[2026-10-28 02:33:02,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:33:02,595.595 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:33:02,751.751 INFO    ] No existing commands found in stream
[2026-10-28 02:33:07,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:33:07,779.779 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-28 02:33:08,736.736 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:33:08,739.739 INFO    ] Checking for system updates...
[2026-10-28 02:33:08,776.776 INFO    ] 200
[2026-10-28 02:33:08,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:33:08,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:33:08,838.838 INFO    ] No update needed
[2026-10-28 02:33:08,841.841 INFO    ] Checking for camera pi updates...
[2026-10-28 02:33:08,875.875 INFO    ] 200
[2026-10-28 02:33:08,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:33:08,916.916 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:33:09,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:33:09,116.116 INFO    ] No camera update needed
[2026-10-28 02:33:09,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:33:09,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:33:09,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:33:09,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:33:11,172.172 INFO    ] ================================================
[2026-10-28 02:33:11,187.187 INFO    ] Launching Daemon at Wed Oct 28 02:33:11 IST 2026
[2026-10-28 02:33:11,198.198 INFO    ] ================================================
[2026-10-28 02:33:11,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:33:11
[2026-10-28 02:33:12,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:33:12,801.801 INFO    ] Initializing speech engine...
[2026-10-28 02:33:12,809.809 INFO    ] 2026-10-28 02:33:12
[2026-10-28 02:33:13,079.079 INFO    ] 2026-10-28 02:33:13
[2026-10-28 02:33:13,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:33:13,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:33:13,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:33:13,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:33:13,667.667 INFO    ] time= 28/10/2026 02:33:13
[2026-10-28 02:33:13,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:33:13,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:33:13,825.825 INFO    ] No existing commands found in stream
[2026-10-28 02:33:18,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:33:18,854.854 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 02:33:21,256.256 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:33:21,259.259 INFO    ] Checking for system updates...
[2026-10-28 02:33:21,296.296 INFO    ] 200
[2026-10-28 02:33:21,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:33:21,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:33:21,356.356 INFO    ] No update needed
[2026-10-28 02:33:21,359.359 INFO    ] Checking for camera pi updates...
[2026-10-28 02:33:21,394.394 INFO    ] 200
[2026-10-28 02:33:21,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:33:21,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:33:21,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:33:21,521.521 INFO    ] No camera update needed
[2026-10-28 02:33:21,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:33:21,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:33:21,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:33:21,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:33:23,584.584 INFO    ] ================================================
[2026-10-28 02:33:23,599.599 INFO    ] Launching Daemon at Wed Oct 28 02:33:23 IST 2026
[2026-10-28 02:33:23,609.609 INFO    ] ================================================
[2026-10-28 02:33:24,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:33:24
[2026-10-28 02:33:24,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:33:25,050.050 INFO    ] Initializing speech engine...
[2026-10-28 02:33:25,057.057 INFO    ] 2026-10-28 02:33:25
[2026-10-28 02:33:25,351.351 INFO    ] 2026-10-28 02:33:25
[2026-10-28 02:33:25,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:33:25,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:33:25,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:33:25,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:33:25,961.961 INFO    ] time= 28/10/2026 02:33:25
[2026-10-28 02:33:25,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:33:25,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:33:26,152.152 INFO    ] No existing commands found in stream
[2026-10-28 02:33:31,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:33:31,168.168 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 02:33:33,774.774 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:33:33,777.777 INFO    ] Checking for system updates...
[2026-10-28 02:33:33,813.813 INFO    ] 200
[2026-10-28 02:33:33,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:33:33,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:33:33,877.877 INFO    ] No update needed
[2026-10-28 02:33:33,879.879 INFO    ] Checking for camera pi updates...
[2026-10-28 02:33:33,912.912 INFO    ] 200
[2026-10-28 02:33:33,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:33:33,955.955 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:33:34,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:33:34,040.040 INFO    ] No camera update needed
[2026-10-28 02:33:34,042.042 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:33:34,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:33:34,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:33:34,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:33:36,094.094 INFO    ] ================================================
[2026-10-28 02:33:36,109.109 INFO    ] Launching Daemon at Wed Oct 28 02:33:36 IST 2026
[2026-10-28 02:33:36,120.120 INFO    ] ================================================
[2026-10-28 02:33:36,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:33:36
[2026-10-28 02:33:37,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:33:37,534.534 INFO    ] Initializing speech engine...
[2026-10-28 02:33:37,542.542 INFO    ] 2026-10-28 02:33:37
[2026-10-28 02:33:37,789.789 INFO    ] 2026-10-28 02:33:37
[2026-10-28 02:33:37,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:33:38,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:33:38,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:33:38,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:33:38,341.341 INFO    ] time= 28/10/2026 02:33:38
[2026-10-28 02:33:38,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:33:38,364.364 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:33:38,496.496 INFO    ] No existing commands found in stream
[2026-10-28 02:33:43,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:33:43,517.517 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-28 02:33:46,277.277 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:33:46,279.279 INFO    ] Checking for system updates...
[2026-10-28 02:33:46,319.319 INFO    ] 200
[2026-10-28 02:33:46,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:33:46,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:33:46,377.377 INFO    ] No update needed
[2026-10-28 02:33:46,379.379 INFO    ] Checking for camera pi updates...
[2026-10-28 02:33:46,412.412 INFO    ] 200
[2026-10-28 02:33:46,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:33:46,456.456 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:33:46,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:33:46,549.549 INFO    ] No camera update needed
[2026-10-28 02:33:46,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:33:46,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:33:46,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:33:46,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:33:48,602.602 INFO    ] ================================================
[2026-10-28 02:33:48,618.618 INFO    ] Launching Daemon at Wed Oct 28 02:33:48 IST 2026
[2026-10-28 02:33:48,629.629 INFO    ] ================================================
[2026-10-28 02:33:49,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:33:49
[2026-10-28 02:33:49,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:33:50,032.032 INFO    ] Initializing speech engine...
[2026-10-28 02:33:50,051.051 INFO    ] 2026-10-28 02:33:50
[2026-10-28 02:33:50,306.306 INFO    ] 2026-10-28 02:33:50
[2026-10-28 02:33:50,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:33:50,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:33:50,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:33:50,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:33:50,896.896 INFO    ] time= 28/10/2026 02:33:50
[2026-10-28 02:33:50,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:33:50,911.911 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:33:51,063.063 INFO    ] No existing commands found in stream
[2026-10-28 02:33:56,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:33:56,090.090 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-28 02:33:58,698.698 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:33:58,701.701 INFO    ] Checking for system updates...
[2026-10-28 02:33:58,738.738 INFO    ] 200
[2026-10-28 02:33:58,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:33:58,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:33:58,802.802 INFO    ] No update needed
[2026-10-28 02:33:58,806.806 INFO    ] Checking for camera pi updates...
[2026-10-28 02:33:58,841.841 INFO    ] 200
[2026-10-28 02:33:58,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:33:58,885.885 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:33:58,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:33:58,972.972 INFO    ] No camera update needed
[2026-10-28 02:33:58,974.974 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:33:58,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:33:58,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:33:58,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:34:01,032.032 INFO    ] ================================================
[2026-10-28 02:34:01,046.046 INFO    ] Launching Daemon at Wed Oct 28 02:34:01 IST 2026
[2026-10-28 02:34:01,057.057 INFO    ] ================================================
[2026-10-28 02:34:01,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:34:01
[2026-10-28 02:34:02,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:34:02,907.907 INFO    ] Initializing speech engine...
[2026-10-28 02:34:02,919.919 INFO    ] 2026-10-28 02:34:02
[2026-10-28 02:34:03,268.268 INFO    ] 2026-10-28 02:34:03
[2026-10-28 02:34:03,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:34:03,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:34:03,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:34:03,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:34:03,848.848 INFO    ] time= 28/10/2026 02:34:03
[2026-10-28 02:34:03,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:34:03,864.864 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:34:03,988.988 INFO    ] No existing commands found in stream
[2026-10-28 02:34:09,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:34:09,020.020 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-28 02:34:09,957.957 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:34:09,960.960 INFO    ] Checking for system updates...
[2026-10-28 02:34:10,001.001 INFO    ] 200
[2026-10-28 02:34:10,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:34:10,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:34:10,068.068 INFO    ] No update needed
[2026-10-28 02:34:10,071.071 INFO    ] Checking for camera pi updates...
[2026-10-28 02:34:10,106.106 INFO    ] 200
[2026-10-28 02:34:10,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:34:10,150.150 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:34:10,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:34:10,238.238 INFO    ] No camera update needed
[2026-10-28 02:34:10,241.241 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:34:10,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:34:10,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:34:10,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:34:12,297.297 INFO    ] ================================================
[2026-10-28 02:34:12,312.312 INFO    ] Launching Daemon at Wed Oct 28 02:34:12 IST 2026
[2026-10-28 02:34:12,323.323 INFO    ] ================================================
[2026-10-28 02:34:12,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:34:12
[2026-10-28 02:34:13,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:34:13,742.742 INFO    ] Initializing speech engine...
[2026-10-28 02:34:13,751.751 INFO    ] 2026-10-28 02:34:13
[2026-10-28 02:34:13,997.997 INFO    ] 2026-10-28 02:34:13
[2026-10-28 02:34:14,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:34:14,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:34:14,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:34:14,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:34:14,556.556 INFO    ] time= 28/10/2026 02:34:14
[2026-10-28 02:34:14,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:34:14,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:34:14,708.708 INFO    ] No existing commands found in stream
[2026-10-28 02:34:19,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:34:19,723.723 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-28 02:34:20,774.774 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:34:20,777.777 INFO    ] Checking for system updates...
[2026-10-28 02:34:20,813.813 INFO    ] 200
[2026-10-28 02:34:20,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:34:20,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:34:20,871.871 INFO    ] No update needed
[2026-10-28 02:34:20,874.874 INFO    ] Checking for camera pi updates...
[2026-10-28 02:34:20,912.912 INFO    ] 200
[2026-10-28 02:34:20,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:34:20,955.955 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:34:21,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:34:21,039.039 INFO    ] No camera update needed
[2026-10-28 02:34:21,041.041 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:34:21,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:34:21,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:34:21,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:34:23,095.095 INFO    ] ================================================
[2026-10-28 02:34:23,110.110 INFO    ] Launching Daemon at Wed Oct 28 02:34:23 IST 2026
[2026-10-28 02:34:23,121.121 INFO    ] ================================================
[2026-10-28 02:34:23,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:34:23
[2026-10-28 02:34:24,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:34:24,755.755 INFO    ] Initializing speech engine...
[2026-10-28 02:34:24,767.767 INFO    ] 2026-10-28 02:34:24
[2026-10-28 02:34:25,082.082 INFO    ] 2026-10-28 02:34:25
[2026-10-28 02:34:25,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:34:25,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:34:25,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:34:25,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:34:25,740.740 INFO    ] time= 28/10/2026 02:34:25
[2026-10-28 02:34:25,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:34:25,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:34:25,995.995 INFO    ] No existing commands found in stream
[2026-10-28 02:34:31,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:34:31,036.036 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 02:34:34,475.475 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:34:34,478.478 INFO    ] Checking for system updates...
[2026-10-28 02:34:34,515.515 INFO    ] 200
[2026-10-28 02:34:34,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:34:34,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:34:34,574.574 INFO    ] No update needed
[2026-10-28 02:34:34,576.576 INFO    ] Checking for camera pi updates...
[2026-10-28 02:34:34,610.610 INFO    ] 200
[2026-10-28 02:34:34,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:34:34,653.653 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:34:34,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:34:34,724.724 INFO    ] No camera update needed
[2026-10-28 02:34:34,726.726 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:34:34,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:34:34,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:34:34,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:34:36,778.778 INFO    ] ================================================
[2026-10-28 02:34:36,793.793 INFO    ] Launching Daemon at Wed Oct 28 02:34:36 IST 2026
[2026-10-28 02:34:36,804.804 INFO    ] ================================================
[2026-10-28 02:34:37,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:34:37
[2026-10-28 02:34:37,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:34:38,227.227 INFO    ] Initializing speech engine...
[2026-10-28 02:34:38,233.233 INFO    ] 2026-10-28 02:34:38
[2026-10-28 02:34:38,479.479 INFO    ] 2026-10-28 02:34:38
[2026-10-28 02:34:38,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:34:38,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:34:38,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:34:39,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:34:39,057.057 INFO    ] time= 28/10/2026 02:34:39
[2026-10-28 02:34:39,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:34:39,080.080 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:34:39,209.209 INFO    ] No existing commands found in stream
[2026-10-28 02:34:44,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:34:44,227.227 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-28 02:34:46,974.974 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:34:46,977.977 INFO    ] Checking for system updates...
[2026-10-28 02:34:47,014.014 INFO    ] 200
[2026-10-28 02:34:47,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:34:47,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:34:47,071.071 INFO    ] No update needed
[2026-10-28 02:34:47,074.074 INFO    ] Checking for camera pi updates...
[2026-10-28 02:34:47,108.108 INFO    ] 200
[2026-10-28 02:34:47,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:34:47,151.151 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:34:47,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:34:47,233.233 INFO    ] No camera update needed
[2026-10-28 02:34:47,235.235 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:34:47,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:34:47,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:34:47,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:34:49,287.287 INFO    ] ================================================
[2026-10-28 02:34:49,302.302 INFO    ] Launching Daemon at Wed Oct 28 02:34:49 IST 2026
[2026-10-28 02:34:49,312.312 INFO    ] ================================================
[2026-10-28 02:34:49,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:34:49
[2026-10-28 02:34:50,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:34:50,726.726 INFO    ] Initializing speech engine...
[2026-10-28 02:34:50,732.732 INFO    ] 2026-10-28 02:34:50
[2026-10-28 02:34:51,036.036 INFO    ] 2026-10-28 02:34:50
[2026-10-28 02:34:51,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:34:51,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:34:51,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:34:51,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:34:51,664.664 INFO    ] time= 28/10/2026 02:34:51
[2026-10-28 02:34:51,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:34:51,699.699 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:34:51,846.846 INFO    ] No existing commands found in stream
[2026-10-28 02:34:56,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:34:56,866.866 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-28 02:35:00,604.604 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:35:00,607.607 INFO    ] Checking for system updates...
[2026-10-28 02:35:00,644.644 INFO    ] 200
[2026-10-28 02:35:00,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:35:00,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:35:00,701.701 INFO    ] No update needed
[2026-10-28 02:35:00,703.703 INFO    ] Checking for camera pi updates...
[2026-10-28 02:35:00,737.737 INFO    ] 200
[2026-10-28 02:35:00,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:35:00,779.779 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:35:00,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:35:00,864.864 INFO    ] No camera update needed
[2026-10-28 02:35:00,867.867 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:35:00,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:35:00,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:35:00,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:35:02,952.952 INFO    ] ================================================
[2026-10-28 02:35:02,969.969 INFO    ] Launching Daemon at Wed Oct 28 02:35:02 IST 2026
[2026-10-28 02:35:02,985.985 INFO    ] ================================================
[2026-10-28 02:35:03,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:35:03
[2026-10-28 02:35:04,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:35:04,492.492 INFO    ] Initializing speech engine...
[2026-10-28 02:35:04,500.500 INFO    ] 2026-10-28 02:35:04
[2026-10-28 02:35:04,801.801 INFO    ] 2026-10-28 02:35:04
[2026-10-28 02:35:04,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:35:05,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:35:05,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:35:05,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:35:05,313.313 INFO    ] time= 28/10/2026 02:35:05
[2026-10-28 02:35:05,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:35:05,412.412 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:35:05,521.521 INFO    ] No existing commands found in stream
[2026-10-28 02:35:10,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:35:10,536.536 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-28 02:35:14,656.656 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:35:14,658.658 INFO    ] Checking for system updates...
[2026-10-28 02:35:14,694.694 INFO    ] 200
[2026-10-28 02:35:14,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:35:14,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:35:14,751.751 INFO    ] No update needed
[2026-10-28 02:35:14,754.754 INFO    ] Checking for camera pi updates...
[2026-10-28 02:35:14,788.788 INFO    ] 200
[2026-10-28 02:35:14,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:35:14,831.831 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:35:15,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:35:15,020.020 INFO    ] No camera update needed
[2026-10-28 02:35:15,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:35:15,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:35:15,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:35:15,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:35:17,082.082 INFO    ] ================================================
[2026-10-28 02:35:17,098.098 INFO    ] Launching Daemon at Wed Oct 28 02:35:17 IST 2026
[2026-10-28 02:35:17,109.109 INFO    ] ================================================
[2026-10-28 02:35:17,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:35:17
[2026-10-28 02:35:18,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:35:18,731.731 INFO    ] Initializing speech engine...
[2026-10-28 02:35:18,744.744 INFO    ] 2026-10-28 02:35:18
[2026-10-28 02:35:18,999.999 INFO    ] 2026-10-28 02:35:18
[2026-10-28 02:35:19,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:35:19,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:35:19,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:35:19,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:35:19,540.540 INFO    ] time= 28/10/2026 02:35:19
[2026-10-28 02:35:19,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:35:19,585.585 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:35:19,712.712 INFO    ] No existing commands found in stream
[2026-10-28 02:35:24,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:35:24,740.740 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 02:35:28,214.214 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:35:28,216.216 INFO    ] Checking for system updates...
[2026-10-28 02:35:28,258.258 INFO    ] 200
[2026-10-28 02:35:28,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:35:28,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:35:28,325.325 INFO    ] No update needed
[2026-10-28 02:35:28,327.327 INFO    ] Checking for camera pi updates...
[2026-10-28 02:35:28,365.365 INFO    ] 200
[2026-10-28 02:35:28,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:35:28,432.432 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:35:28,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:35:28,539.539 INFO    ] No camera update needed
[2026-10-28 02:35:28,541.541 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:35:28,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:35:28,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:35:28,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:35:30,596.596 INFO    ] ================================================
[2026-10-28 02:35:30,612.612 INFO    ] Launching Daemon at Wed Oct 28 02:35:30 IST 2026
[2026-10-28 02:35:30,624.624 INFO    ] ================================================
[2026-10-28 02:35:31,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:35:31
[2026-10-28 02:35:31,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:35:32,102.102 INFO    ] Initializing speech engine...
[2026-10-28 02:35:32,112.112 INFO    ] 2026-10-28 02:35:32
[2026-10-28 02:35:32,375.375 INFO    ] 2026-10-28 02:35:32
[2026-10-28 02:35:32,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:35:32,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:35:32,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:35:32,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:35:32,987.987 INFO    ] time= 28/10/2026 02:35:32
[2026-10-28 02:35:32,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:35:33,015.015 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:35:33,146.146 INFO    ] No existing commands found in stream
[2026-10-28 02:35:38,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:35:38,165.165 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-28 02:35:41,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:35:41,382.382 INFO    ] Checking for system updates...
[2026-10-28 02:35:41,419.419 INFO    ] 200
[2026-10-28 02:35:41,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:35:41,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:35:41,492.492 INFO    ] No update needed
[2026-10-28 02:35:41,495.495 INFO    ] Checking for camera pi updates...
[2026-10-28 02:35:41,534.534 INFO    ] 200
[2026-10-28 02:35:41,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:35:41,585.585 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:35:41,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:35:41,719.719 INFO    ] No camera update needed
[2026-10-28 02:35:41,722.722 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:35:41,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:35:41,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:35:41,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:35:43,780.780 INFO    ] ================================================
[2026-10-28 02:35:43,796.796 INFO    ] Launching Daemon at Wed Oct 28 02:35:43 IST 2026
[2026-10-28 02:35:43,808.808 INFO    ] ================================================
[2026-10-28 02:35:44,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:35:44
[2026-10-28 02:35:44,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:35:45,220.220 INFO    ] Initializing speech engine...
[2026-10-28 02:35:45,238.238 INFO    ] 2026-10-28 02:35:45
[2026-10-28 02:35:45,489.489 INFO    ] 2026-10-28 02:35:45
[2026-10-28 02:35:45,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:35:45,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:35:45,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:35:45,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:35:45,974.974 INFO    ] time= 28/10/2026 02:35:45
[2026-10-28 02:35:46,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:35:46,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:35:46,215.215 INFO    ] No existing commands found in stream
[2026-10-28 02:35:51,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:35:51,242.242 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-28 02:35:54,433.433 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:35:54,436.436 INFO    ] Checking for system updates...
[2026-10-28 02:35:54,476.476 INFO    ] 200
[2026-10-28 02:35:54,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:35:54,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:35:54,533.533 INFO    ] No update needed
[2026-10-28 02:35:54,535.535 INFO    ] Checking for camera pi updates...
[2026-10-28 02:35:54,569.569 INFO    ] 200
[2026-10-28 02:35:54,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:35:54,612.612 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:35:54,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:35:54,720.720 INFO    ] No camera update needed
[2026-10-28 02:35:54,722.722 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:35:54,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:35:54,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:35:54,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:35:56,777.777 INFO    ] ================================================
[2026-10-28 02:35:56,793.793 INFO    ] Launching Daemon at Wed Oct 28 02:35:56 IST 2026
[2026-10-28 02:35:56,804.804 INFO    ] ================================================
[2026-10-28 02:35:57,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:35:57
[2026-10-28 02:35:58,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:35:58,499.499 INFO    ] Initializing speech engine...
[2026-10-28 02:35:58,511.511 INFO    ] 2026-10-28 02:35:58
[2026-10-28 02:35:58,798.798 INFO    ] 2026-10-28 02:35:58
[2026-10-28 02:35:58,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:35:59,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:35:59,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:35:59,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:35:59,360.360 INFO    ] time= 28/10/2026 02:35:59
[2026-10-28 02:35:59,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:35:59,398.398 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:35:59,564.564 INFO    ] No existing commands found in stream
[2026-10-28 02:36:04,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:36:04,593.593 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 02:36:05,915.915 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:36:05,918.918 INFO    ] Checking for system updates...
[2026-10-28 02:36:05,957.957 INFO    ] 200
[2026-10-28 02:36:05,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:36:06,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:36:06,017.017 INFO    ] No update needed
[2026-10-28 02:36:06,020.020 INFO    ] Checking for camera pi updates...
[2026-10-28 02:36:06,054.054 INFO    ] 200
[2026-10-28 02:36:06,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:36:06,098.098 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:36:06,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:36:06,196.196 INFO    ] No camera update needed
[2026-10-28 02:36:06,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:36:06,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:36:06,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:36:06,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:36:08,255.255 INFO    ] ================================================
[2026-10-28 02:36:08,271.271 INFO    ] Launching Daemon at Wed Oct 28 02:36:08 IST 2026
[2026-10-28 02:36:08,282.282 INFO    ] ================================================
[2026-10-28 02:36:08,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:36:08
[2026-10-28 02:36:09,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:36:09,701.701 INFO    ] Initializing speech engine...
[2026-10-28 02:36:09,710.710 INFO    ] 2026-10-28 02:36:09
[2026-10-28 02:36:09,960.960 INFO    ] 2026-10-28 02:36:09
[2026-10-28 02:36:10,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:36:10,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:36:10,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:36:10,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:36:10,526.526 INFO    ] time= 28/10/2026 02:36:10
[2026-10-28 02:36:10,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:36:10,554.554 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:36:10,683.683 INFO    ] No existing commands found in stream
[2026-10-28 02:36:15,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:36:15,700.700 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 02:36:19,553.553 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:36:19,556.556 INFO    ] Checking for system updates...
[2026-10-28 02:36:19,596.596 INFO    ] 200
[2026-10-28 02:36:19,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:36:19,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:36:19,662.662 INFO    ] No update needed
[2026-10-28 02:36:19,664.664 INFO    ] Checking for camera pi updates...
[2026-10-28 02:36:19,698.698 INFO    ] 200
[2026-10-28 02:36:19,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:36:19,741.741 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:36:19,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:36:19,827.827 INFO    ] No camera update needed
[2026-10-28 02:36:19,830.830 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:36:19,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:36:19,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:36:19,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:36:21,884.884 INFO    ] ================================================
[2026-10-28 02:36:21,900.900 INFO    ] Launching Daemon at Wed Oct 28 02:36:21 IST 2026
[2026-10-28 02:36:21,911.911 INFO    ] ================================================
[2026-10-28 02:36:22,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:36:22
[2026-10-28 02:36:23,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:36:23,372.372 INFO    ] Initializing speech engine...
[2026-10-28 02:36:23,378.378 INFO    ] 2026-10-28 02:36:23
[2026-10-28 02:36:23,639.639 INFO    ] 2026-10-28 02:36:23
[2026-10-28 02:36:23,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:36:23,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:36:23,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:36:24,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:36:24,182.182 INFO    ] time= 28/10/2026 02:36:24
[2026-10-28 02:36:24,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:36:24,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:36:24,336.336 INFO    ] No existing commands found in stream
[2026-10-28 02:36:29,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:36:29,362.362 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-28 02:36:30,895.895 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:36:30,898.898 INFO    ] Checking for system updates...
[2026-10-28 02:36:30,934.934 INFO    ] 200
[2026-10-28 02:36:30,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:36:30,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:36:30,993.993 INFO    ] No update needed
[2026-10-28 02:36:30,996.996 INFO    ] Checking for camera pi updates...
[2026-10-28 02:36:31,031.031 INFO    ] 200
[2026-10-28 02:36:31,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:36:31,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:36:31,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:36:31,156.156 INFO    ] No camera update needed
[2026-10-28 02:36:31,229.229 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:36:31,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:36:31,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:36:31,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:36:33,287.287 INFO    ] ================================================
[2026-10-28 02:36:33,304.304 INFO    ] Launching Daemon at Wed Oct 28 02:36:33 IST 2026
[2026-10-28 02:36:33,315.315 INFO    ] ================================================
[2026-10-28 02:36:33,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:36:33
[2026-10-28 02:36:34,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:36:35,005.005 INFO    ] Initializing speech engine...
[2026-10-28 02:36:35,016.016 INFO    ] 2026-10-28 02:36:35
[2026-10-28 02:36:35,300.300 INFO    ] 2026-10-28 02:36:35
[2026-10-28 02:36:35,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:36:35,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:36:35,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:36:35,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:36:35,847.847 INFO    ] time= 28/10/2026 02:36:35
[2026-10-28 02:36:35,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:36:35,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:36:35,987.987 INFO    ] No existing commands found in stream
[2026-10-28 02:36:41,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:36:41,015.015 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-28 02:36:43,936.936 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:36:43,940.940 INFO    ] Checking for system updates...
[2026-10-28 02:36:43,977.977 INFO    ] 200
[2026-10-28 02:36:43,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:36:44,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:36:44,037.037 INFO    ] No update needed
[2026-10-28 02:36:44,040.040 INFO    ] Checking for camera pi updates...
[2026-10-28 02:36:44,074.074 INFO    ] 200
[2026-10-28 02:36:44,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:36:44,118.118 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:36:44,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:36:44,206.206 INFO    ] No camera update needed
[2026-10-28 02:36:44,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:36:44,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:36:44,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:36:44,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:36:46,266.266 INFO    ] ================================================
[2026-10-28 02:36:46,283.283 INFO    ] Launching Daemon at Wed Oct 28 02:36:46 IST 2026
[2026-10-28 02:36:46,303.303 INFO    ] ================================================
[2026-10-28 02:36:46,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:36:46
[2026-10-28 02:36:47,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:36:47,977.977 INFO    ] Initializing speech engine...
[2026-10-28 02:36:47,990.990 INFO    ] 2026-10-28 02:36:47
[2026-10-28 02:36:48,304.304 INFO    ] 2026-10-28 02:36:48
[2026-10-28 02:36:48,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:36:48,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:36:48,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:36:48,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:36:49,034.034 INFO    ] time= 28/10/2026 02:36:48
[2026-10-28 02:36:49,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:36:49,132.132 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:36:49,251.251 INFO    ] No existing commands found in stream
[2026-10-28 02:36:54,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:36:54,273.273 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 02:36:56,576.576 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:36:56,579.579 INFO    ] Checking for system updates...
[2026-10-28 02:36:56,620.620 INFO    ] 200
[2026-10-28 02:36:56,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:36:56,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:36:56,681.681 INFO    ] No update needed
[2026-10-28 02:36:56,684.684 INFO    ] Checking for camera pi updates...
[2026-10-28 02:36:56,719.719 INFO    ] 200
[2026-10-28 02:36:56,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:36:56,769.769 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:36:56,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:36:56,880.880 INFO    ] No camera update needed
[2026-10-28 02:36:56,883.883 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:36:56,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:36:56,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:36:56,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:36:58,939.939 INFO    ] ================================================
[2026-10-28 02:36:58,954.954 INFO    ] Launching Daemon at Wed Oct 28 02:36:58 IST 2026
[2026-10-28 02:36:58,965.965 INFO    ] ================================================
[2026-10-28 02:36:59,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:36:59
[2026-10-28 02:37:00,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:37:00,409.409 INFO    ] Initializing speech engine...
[2026-10-28 02:37:00,418.418 INFO    ] 2026-10-28 02:37:00
[2026-10-28 02:37:00,666.666 INFO    ] 2026-10-28 02:37:00
[2026-10-28 02:37:00,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:37:00,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:37:00,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:37:01,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:37:01,219.219 INFO    ] time= 28/10/2026 02:37:01
[2026-10-28 02:37:01,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:37:01,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:37:01,361.361 INFO    ] No existing commands found in stream
[2026-10-28 02:37:06,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:37:06,386.386 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-28 02:37:10,386.386 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:37:10,389.389 INFO    ] Checking for system updates...
[2026-10-28 02:37:10,424.424 INFO    ] 200
[2026-10-28 02:37:10,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:37:10,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:37:10,482.482 INFO    ] No update needed
[2026-10-28 02:37:10,484.484 INFO    ] Checking for camera pi updates...
[2026-10-28 02:37:10,519.519 INFO    ] 200
[2026-10-28 02:37:10,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:37:10,562.562 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:37:10,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:37:10,646.646 INFO    ] No camera update needed
[2026-10-28 02:37:10,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:37:10,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:37:10,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:37:10,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:37:12,706.706 INFO    ] ================================================
[2026-10-28 02:37:12,721.721 INFO    ] Launching Daemon at Wed Oct 28 02:37:12 IST 2026
[2026-10-28 02:37:12,731.731 INFO    ] ================================================
[2026-10-28 02:37:13,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:37:13
[2026-10-28 02:37:13,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:37:14,145.145 INFO    ] Initializing speech engine...
[2026-10-28 02:37:14,171.171 INFO    ] 2026-10-28 02:37:14
[2026-10-28 02:37:14,444.444 INFO    ] 2026-10-28 02:37:14
[2026-10-28 02:37:14,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:37:14,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:37:14,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:37:14,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:37:14,953.953 INFO    ] time= 28/10/2026 02:37:14
[2026-10-28 02:37:15,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:37:15,067.067 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:37:15,206.206 INFO    ] No existing commands found in stream
[2026-10-28 02:37:20,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:37:20,233.233 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-28 02:37:22,471.471 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:37:22,474.474 INFO    ] Checking for system updates...
[2026-10-28 02:37:22,511.511 INFO    ] 200
[2026-10-28 02:37:22,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:37:22,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:37:22,569.569 INFO    ] No update needed
[2026-10-28 02:37:22,571.571 INFO    ] Checking for camera pi updates...
[2026-10-28 02:37:22,605.605 INFO    ] 200
[2026-10-28 02:37:22,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:37:22,649.649 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:37:22,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:37:22,831.831 INFO    ] No camera update needed
[2026-10-28 02:37:22,833.833 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:37:22,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:37:22,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:37:22,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:37:24,887.887 INFO    ] ================================================
[2026-10-28 02:37:24,902.902 INFO    ] Launching Daemon at Wed Oct 28 02:37:24 IST 2026
[2026-10-28 02:37:24,913.913 INFO    ] ================================================
[2026-10-28 02:37:25,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:37:25
[2026-10-28 02:37:26,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:37:26,429.429 INFO    ] Initializing speech engine...
[2026-10-28 02:37:26,440.440 INFO    ] 2026-10-28 02:37:26
[2026-10-28 02:37:26,774.774 INFO    ] 2026-10-28 02:37:26
[2026-10-28 02:37:26,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:37:27,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:37:27,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:37:27,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:37:27,313.313 INFO    ] time= 28/10/2026 02:37:27
[2026-10-28 02:37:27,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:37:27,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:37:27,474.474 INFO    ] No existing commands found in stream
[2026-10-28 02:37:32,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:37:32,488.488 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-28 02:37:35,667.667 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:37:35,670.670 INFO    ] Checking for system updates...
[2026-10-28 02:37:35,710.710 INFO    ] 200
[2026-10-28 02:37:35,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:37:35,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:37:35,776.776 INFO    ] No update needed
[2026-10-28 02:37:35,779.779 INFO    ] Checking for camera pi updates...
[2026-10-28 02:37:35,817.817 INFO    ] 200
[2026-10-28 02:37:35,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:37:35,860.860 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:37:35,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:37:35,965.965 INFO    ] No camera update needed
[2026-10-28 02:37:35,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:37:35,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:37:35,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:37:35,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:37:38,025.025 INFO    ] ================================================
[2026-10-28 02:37:38,040.040 INFO    ] Launching Daemon at Wed Oct 28 02:37:38 IST 2026
[2026-10-28 02:37:38,050.050 INFO    ] ================================================
[2026-10-28 02:37:38,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:37:38
[2026-10-28 02:37:39,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:37:39,677.677 INFO    ] Initializing speech engine...
[2026-10-28 02:37:39,688.688 INFO    ] 2026-10-28 02:37:39
[2026-10-28 02:37:39,997.997 INFO    ] 2026-10-28 02:37:39
[2026-10-28 02:37:40,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:37:40,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:37:40,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:37:40,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:37:40,690.690 INFO    ] time= 28/10/2026 02:37:40
[2026-10-28 02:37:40,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:37:40,781.781 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:37:40,946.946 INFO    ] No existing commands found in stream
[2026-10-28 02:37:45,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:37:45,969.969 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-28 02:37:46,831.831 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:37:46,833.833 INFO    ] Checking for system updates...
[2026-10-28 02:37:46,868.868 INFO    ] 200
[2026-10-28 02:37:46,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:37:46,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:37:46,926.926 INFO    ] No update needed
[2026-10-28 02:37:46,928.928 INFO    ] Checking for camera pi updates...
[2026-10-28 02:37:46,969.969 INFO    ] 200
[2026-10-28 02:37:46,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:37:47,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:37:47,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:37:47,101.101 INFO    ] No camera update needed
[2026-10-28 02:37:47,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:37:47,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:37:47,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:37:47,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:37:49,160.160 INFO    ] ================================================
[2026-10-28 02:37:49,175.175 INFO    ] Launching Daemon at Wed Oct 28 02:37:49 IST 2026
[2026-10-28 02:37:49,186.186 INFO    ] ================================================
[2026-10-28 02:37:49,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:37:49
[2026-10-28 02:37:50,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:37:50,619.619 INFO    ] Initializing speech engine...
[2026-10-28 02:37:50,629.629 INFO    ] 2026-10-28 02:37:50
[2026-10-28 02:37:50,876.876 INFO    ] 2026-10-28 02:37:50
[2026-10-28 02:37:50,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:37:51,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:37:51,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:37:51,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:37:51,432.432 INFO    ] time= 28/10/2026 02:37:51
[2026-10-28 02:37:51,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:37:51,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:37:51,589.589 INFO    ] No existing commands found in stream
[2026-10-28 02:37:56,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:37:56,619.619 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-28 02:37:59,512.512 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:37:59,515.515 INFO    ] Checking for system updates...
[2026-10-28 02:37:59,550.550 INFO    ] 200
[2026-10-28 02:37:59,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:37:59,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:37:59,608.608 INFO    ] No update needed
[2026-10-28 02:37:59,610.610 INFO    ] Checking for camera pi updates...
[2026-10-28 02:37:59,645.645 INFO    ] 200
[2026-10-28 02:37:59,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:37:59,688.688 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:37:59,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:37:59,772.772 INFO    ] No camera update needed
[2026-10-28 02:37:59,774.774 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:37:59,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:37:59,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:37:59,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:38:01,831.831 INFO    ] ================================================
[2026-10-28 02:38:01,846.846 INFO    ] Launching Daemon at Wed Oct 28 02:38:01 IST 2026
[2026-10-28 02:38:01,858.858 INFO    ] ================================================
[2026-10-28 02:38:02,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:38:02
[2026-10-28 02:38:03,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:38:03,584.584 INFO    ] Initializing speech engine...
[2026-10-28 02:38:03,593.593 INFO    ] 2026-10-28 02:38:03
[2026-10-28 02:38:03,905.905 INFO    ] 2026-10-28 02:38:03
[2026-10-28 02:38:03,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:38:04,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:38:04,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:38:04,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:38:04,325.325 INFO    ] time= 28/10/2026 02:38:04
[2026-10-28 02:38:04,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:38:04,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:38:04,465.465 INFO    ] No existing commands found in stream
[2026-10-28 02:38:09,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:38:09,493.493 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 02:38:12,699.699 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:38:12,702.702 INFO    ] Checking for system updates...
[2026-10-28 02:38:12,737.737 INFO    ] 200
[2026-10-28 02:38:12,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:38:12,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:38:12,794.794 INFO    ] No update needed
[2026-10-28 02:38:12,796.796 INFO    ] Checking for camera pi updates...
[2026-10-28 02:38:12,833.833 INFO    ] 200
[2026-10-28 02:38:12,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:38:12,875.875 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:38:12,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:38:12,957.957 INFO    ] No camera update needed
[2026-10-28 02:38:12,959.959 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:38:12,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:38:12,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:38:12,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:38:15,012.012 INFO    ] ================================================
[2026-10-28 02:38:15,027.027 INFO    ] Launching Daemon at Wed Oct 28 02:38:15 IST 2026
[2026-10-28 02:38:15,037.037 INFO    ] ================================================
[2026-10-28 02:38:15,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:38:15
[2026-10-28 02:38:16,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:38:16,451.451 INFO    ] Initializing speech engine...
[2026-10-28 02:38:16,461.461 INFO    ] 2026-10-28 02:38:16
[2026-10-28 02:38:16,719.719 INFO    ] 2026-10-28 02:38:16
[2026-10-28 02:38:16,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:38:17,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:38:17,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:38:17,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:38:17,265.265 INFO    ] time= 28/10/2026 02:38:17
[2026-10-28 02:38:17,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:38:17,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:38:17,418.418 INFO    ] No existing commands found in stream
[2026-10-28 02:38:22,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:38:22,440.440 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 02:38:26,763.763 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:38:26,766.766 INFO    ] Checking for system updates...
[2026-10-28 02:38:26,802.802 INFO    ] 200
[2026-10-28 02:38:26,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:38:26,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:38:26,864.864 INFO    ] No update needed
[2026-10-28 02:38:26,866.866 INFO    ] Checking for camera pi updates...
[2026-10-28 02:38:26,902.902 INFO    ] 200
[2026-10-28 02:38:26,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:38:26,945.945 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:38:27,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:38:27,047.047 INFO    ] No camera update needed
[2026-10-28 02:38:27,049.049 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:38:27,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:38:27,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:38:27,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:38:29,102.102 INFO    ] ================================================
[2026-10-28 02:38:29,117.117 INFO    ] Launching Daemon at Wed Oct 28 02:38:29 IST 2026
[2026-10-28 02:38:29,127.127 INFO    ] ================================================
[2026-10-28 02:38:29,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:38:29
[2026-10-28 02:38:30,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:38:30,675.675 INFO    ] Initializing speech engine...
[2026-10-28 02:38:30,682.682 INFO    ] 2026-10-28 02:38:30
[2026-10-28 02:38:30,948.948 INFO    ] 2026-10-28 02:38:30
[2026-10-28 02:38:31,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:38:31,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:38:31,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:38:31,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:38:31,511.511 INFO    ] time= 28/10/2026 02:38:31
[2026-10-28 02:38:31,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:38:31,549.549 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:38:31,664.664 INFO    ] No existing commands found in stream
[2026-10-28 02:38:36,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:38:36,699.699 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-28 02:38:41,192.192 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:38:41,195.195 INFO    ] Checking for system updates...
[2026-10-28 02:38:41,231.231 INFO    ] 200
[2026-10-28 02:38:41,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:38:41,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:38:41,297.297 INFO    ] No update needed
[2026-10-28 02:38:41,299.299 INFO    ] Checking for camera pi updates...
[2026-10-28 02:38:41,335.335 INFO    ] 200
[2026-10-28 02:38:41,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:38:41,381.381 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:38:41,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:38:41,460.460 INFO    ] No camera update needed
[2026-10-28 02:38:41,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:38:41,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:38:41,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:38:41,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:38:43,514.514 INFO    ] ================================================
[2026-10-28 02:38:43,529.529 INFO    ] Launching Daemon at Wed Oct 28 02:38:43 IST 2026
[2026-10-28 02:38:43,539.539 INFO    ] ================================================
[2026-10-28 02:38:44,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:38:44
[2026-10-28 02:38:44,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:38:44,952.952 INFO    ] Initializing speech engine...
[2026-10-28 02:38:44,962.962 INFO    ] 2026-10-28 02:38:44
[2026-10-28 02:38:45,207.207 INFO    ] 2026-10-28 02:38:45
[2026-10-28 02:38:45,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:38:45,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:38:45,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:38:45,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:38:45,758.758 INFO    ] time= 28/10/2026 02:38:45
[2026-10-28 02:38:45,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:38:45,784.784 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:38:45,931.931 INFO    ] No existing commands found in stream
[2026-10-28 02:38:50,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:38:50,959.959 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 02:38:54,384.384 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:38:54,387.387 INFO    ] Checking for system updates...
[2026-10-28 02:38:54,425.425 INFO    ] 200
[2026-10-28 02:38:54,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:38:54,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:38:54,486.486 INFO    ] No update needed
[2026-10-28 02:38:54,488.488 INFO    ] Checking for camera pi updates...
[2026-10-28 02:38:54,521.521 INFO    ] 200
[2026-10-28 02:38:54,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:38:54,563.563 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:38:54,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:38:54,637.637 INFO    ] No camera update needed
[2026-10-28 02:38:54,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:38:54,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:38:54,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:38:54,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:38:56,694.694 INFO    ] ================================================
[2026-10-28 02:38:56,709.709 INFO    ] Launching Daemon at Wed Oct 28 02:38:56 IST 2026
[2026-10-28 02:38:56,719.719 INFO    ] ================================================
[2026-10-28 02:38:57,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:38:57
[2026-10-28 02:38:57,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:38:58,185.185 INFO    ] Initializing speech engine...
[2026-10-28 02:38:58,191.191 INFO    ] 2026-10-28 02:38:58
[2026-10-28 02:38:58,452.452 INFO    ] 2026-10-28 02:38:58
[2026-10-28 02:38:58,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:38:58,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:38:58,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:38:59,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:38:59,151.151 INFO    ] time= 28/10/2026 02:38:59
[2026-10-28 02:38:59,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:38:59,246.246 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:38:59,391.391 INFO    ] No existing commands found in stream
[2026-10-28 02:39:04,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:39:04,408.408 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-28 02:39:07,733.733 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:39:07,736.736 INFO    ] Checking for system updates...
[2026-10-28 02:39:07,772.772 INFO    ] 200
[2026-10-28 02:39:07,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:39:07,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:39:07,831.831 INFO    ] No update needed
[2026-10-28 02:39:07,834.834 INFO    ] Checking for camera pi updates...
[2026-10-28 02:39:07,871.871 INFO    ] 200
[2026-10-28 02:39:07,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:39:07,914.914 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:39:07,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:39:08,000.000 INFO    ] No camera update needed
[2026-10-28 02:39:08,002.002 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:39:08,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:39:08,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:39:08,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:39:10,055.055 INFO    ] ================================================
[2026-10-28 02:39:10,070.070 INFO    ] Launching Daemon at Wed Oct 28 02:39:10 IST 2026
[2026-10-28 02:39:10,080.080 INFO    ] ================================================
[2026-10-28 02:39:10,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:39:10
[2026-10-28 02:39:11,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:39:11,497.497 INFO    ] Initializing speech engine...
[2026-10-28 02:39:11,506.506 INFO    ] 2026-10-28 02:39:11
[2026-10-28 02:39:11,752.752 INFO    ] 2026-10-28 02:39:11
[2026-10-28 02:39:11,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:39:12,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:39:12,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:39:12,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:39:12,310.310 INFO    ] time= 28/10/2026 02:39:12
[2026-10-28 02:39:12,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:39:12,333.333 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:39:12,461.461 INFO    ] No existing commands found in stream
[2026-10-28 02:39:17,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:39:17,476.476 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 02:39:21,147.147 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:39:21,149.149 INFO    ] Checking for system updates...
[2026-10-28 02:39:21,189.189 INFO    ] 200
[2026-10-28 02:39:21,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:39:21,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:39:21,253.253 INFO    ] No update needed
[2026-10-28 02:39:21,255.255 INFO    ] Checking for camera pi updates...
[2026-10-28 02:39:21,292.292 INFO    ] 200
[2026-10-28 02:39:21,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:39:21,335.335 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:39:21,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:39:21,418.418 INFO    ] No camera update needed
[2026-10-28 02:39:21,420.420 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:39:21,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:39:21,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:39:21,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:39:23,476.476 INFO    ] ================================================
[2026-10-28 02:39:23,490.490 INFO    ] Launching Daemon at Wed Oct 28 02:39:23 IST 2026
[2026-10-28 02:39:23,501.501 INFO    ] ================================================
[2026-10-28 02:39:24,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:39:24
[2026-10-28 02:39:24,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:39:25,087.087 INFO    ] Initializing speech engine...
[2026-10-28 02:39:25,097.097 INFO    ] 2026-10-28 02:39:25
[2026-10-28 02:39:25,370.370 INFO    ] 2026-10-28 02:39:25
[2026-10-28 02:39:25,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:39:25,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:39:25,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:39:25,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:39:25,935.935 INFO    ] time= 28/10/2026 02:39:25
[2026-10-28 02:39:25,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:39:25,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:39:26,114.114 INFO    ] No existing commands found in stream
[2026-10-28 02:39:31,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:39:31,148.148 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-28 02:39:32,695.695 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:39:32,698.698 INFO    ] Checking for system updates...
[2026-10-28 02:39:32,737.737 INFO    ] 200
[2026-10-28 02:39:32,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:39:32,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:39:32,794.794 INFO    ] No update needed
[2026-10-28 02:39:32,797.797 INFO    ] Checking for camera pi updates...
[2026-10-28 02:39:32,830.830 INFO    ] 200
[2026-10-28 02:39:32,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:39:32,881.881 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:39:32,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:39:32,976.976 INFO    ] No camera update needed
[2026-10-28 02:39:32,978.978 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:39:32,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:39:32,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:39:32,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:39:35,030.030 INFO    ] ================================================
[2026-10-28 02:39:35,046.046 INFO    ] Launching Daemon at Wed Oct 28 02:39:35 IST 2026
[2026-10-28 02:39:35,057.057 INFO    ] ================================================
[2026-10-28 02:39:35,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:39:35
[2026-10-28 02:39:36,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:39:36,600.600 INFO    ] Initializing speech engine...
[2026-10-28 02:39:36,609.609 INFO    ] 2026-10-28 02:39:36
[2026-10-28 02:39:36,855.855 INFO    ] 2026-10-28 02:39:36
[2026-10-28 02:39:36,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:39:37,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:39:37,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:39:37,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:39:37,411.411 INFO    ] time= 28/10/2026 02:39:37
[2026-10-28 02:39:37,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:39:37,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:39:37,584.584 INFO    ] No existing commands found in stream
[2026-10-28 02:39:42,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:39:42,617.617 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-28 02:39:43,152.152 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:39:43,155.155 INFO    ] Checking for system updates...
[2026-10-28 02:39:43,194.194 INFO    ] 200
[2026-10-28 02:39:43,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:39:43,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:39:43,257.257 INFO    ] No update needed
[2026-10-28 02:39:43,262.262 INFO    ] Checking for camera pi updates...
[2026-10-28 02:39:43,296.296 INFO    ] 200
[2026-10-28 02:39:43,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:39:43,347.347 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:39:43,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:39:43,449.449 INFO    ] No camera update needed
[2026-10-28 02:39:43,451.451 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:39:43,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:39:43,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:39:43,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:39:45,505.505 INFO    ] ================================================
[2026-10-28 02:39:45,521.521 INFO    ] Launching Daemon at Wed Oct 28 02:39:45 IST 2026
[2026-10-28 02:39:45,532.532 INFO    ] ================================================
[2026-10-28 02:39:46,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:39:46
[2026-10-28 02:39:46,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:39:47,148.148 INFO    ] Initializing speech engine...
[2026-10-28 02:39:47,156.156 INFO    ] 2026-10-28 02:39:47
[2026-10-28 02:39:47,426.426 INFO    ] 2026-10-28 02:39:47
[2026-10-28 02:39:47,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:39:47,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:39:47,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:39:47,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:39:47,957.957 INFO    ] time= 28/10/2026 02:39:47
[2026-10-28 02:39:47,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:39:48,003.003 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:39:48,108.108 INFO    ] No existing commands found in stream
[2026-10-28 02:39:53,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:39:53,124.124 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-28 02:39:54,974.974 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:39:54,976.976 INFO    ] Checking for system updates...
[2026-10-28 02:39:55,012.012 INFO    ] 200
[2026-10-28 02:39:55,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:39:55,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:39:55,076.076 INFO    ] No update needed
[2026-10-28 02:39:55,079.079 INFO    ] Checking for camera pi updates...
[2026-10-28 02:39:55,116.116 INFO    ] 200
[2026-10-28 02:39:55,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:39:55,163.163 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:39:55,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:39:55,247.247 INFO    ] No camera update needed
[2026-10-28 02:39:55,250.250 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:39:55,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:39:55,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:39:55,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:39:57,304.304 INFO    ] ================================================
[2026-10-28 02:39:57,319.319 INFO    ] Launching Daemon at Wed Oct 28 02:39:57 IST 2026
[2026-10-28 02:39:57,330.330 INFO    ] ================================================
[2026-10-28 02:39:57,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:39:57
[2026-10-28 02:39:58,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:39:58,725.725 INFO    ] Initializing speech engine...
[2026-10-28 02:39:58,747.747 INFO    ] 2026-10-28 02:39:58
[2026-10-28 02:39:59,006.006 INFO    ] 2026-10-28 02:39:58
[2026-10-28 02:39:59,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:39:59,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:39:59,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:39:59,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:39:59,574.574 INFO    ] time= 28/10/2026 02:39:59
[2026-10-28 02:39:59,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:39:59,598.598 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:39:59,713.713 INFO    ] No existing commands found in stream
[2026-10-28 02:40:04,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:40:04,739.739 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-28 02:40:08,910.910 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:40:08,912.912 INFO    ] Checking for system updates...
[2026-10-28 02:40:08,952.952 INFO    ] 200
[2026-10-28 02:40:08,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:40:09,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:40:09,015.015 INFO    ] No update needed
[2026-10-28 02:40:09,017.017 INFO    ] Checking for camera pi updates...
[2026-10-28 02:40:09,054.054 INFO    ] 200
[2026-10-28 02:40:09,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:40:09,100.100 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:40:09,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:40:09,202.202 INFO    ] No camera update needed
[2026-10-28 02:40:09,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:40:09,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:40:09,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:40:09,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:40:11,258.258 INFO    ] ================================================
[2026-10-28 02:40:11,274.274 INFO    ] Launching Daemon at Wed Oct 28 02:40:11 IST 2026
[2026-10-28 02:40:11,284.284 INFO    ] ================================================
[2026-10-28 02:40:11,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:40:11
[2026-10-28 02:40:12,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:40:12,742.742 INFO    ] Initializing speech engine...
[2026-10-28 02:40:12,747.747 INFO    ] 2026-10-28 02:40:12
[2026-10-28 02:40:13,011.011 INFO    ] 2026-10-28 02:40:13
[2026-10-28 02:40:13,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:40:13,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:40:13,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:40:13,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:40:13,588.588 INFO    ] time= 28/10/2026 02:40:13
[2026-10-28 02:40:13,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:40:13,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:40:13,758.758 INFO    ] No existing commands found in stream
[2026-10-28 02:40:18,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:40:18,777.777 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 02:40:23,054.054 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:40:23,057.057 INFO    ] Checking for system updates...
[2026-10-28 02:40:23,094.094 INFO    ] 200
[2026-10-28 02:40:23,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:40:23,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:40:23,158.158 INFO    ] No update needed
[2026-10-28 02:40:23,160.160 INFO    ] Checking for camera pi updates...
[2026-10-28 02:40:23,198.198 INFO    ] 200
[2026-10-28 02:40:23,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:40:23,244.244 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:40:23,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:40:23,327.327 INFO    ] No camera update needed
[2026-10-28 02:40:23,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:40:23,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:40:23,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:40:23,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:40:25,382.382 INFO    ] ================================================
[2026-10-28 02:40:25,398.398 INFO    ] Launching Daemon at Wed Oct 28 02:40:25 IST 2026
[2026-10-28 02:40:25,409.409 INFO    ] ================================================
[2026-10-28 02:40:25,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:40:25
[2026-10-28 02:40:26,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:40:26,931.931 INFO    ] Initializing speech engine...
[2026-10-28 02:40:26,946.946 INFO    ] 2026-10-28 02:40:26
[2026-10-28 02:40:27,226.226 INFO    ] 2026-10-28 02:40:27
[2026-10-28 02:40:27,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:40:27,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:40:27,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:40:27,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:40:27,942.942 INFO    ] time= 28/10/2026 02:40:27
[2026-10-28 02:40:27,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:40:28,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:40:28,178.178 INFO    ] No existing commands found in stream
[2026-10-28 02:40:33,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:40:33,199.199 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-28 02:40:36,254.254 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:40:36,257.257 INFO    ] Checking for system updates...
[2026-10-28 02:40:36,296.296 INFO    ] 200
[2026-10-28 02:40:36,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:40:36,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:40:36,352.352 INFO    ] No update needed
[2026-10-28 02:40:36,355.355 INFO    ] Checking for camera pi updates...
[2026-10-28 02:40:36,389.389 INFO    ] 200
[2026-10-28 02:40:36,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:40:36,436.436 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:40:36,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:40:36,525.525 INFO    ] No camera update needed
[2026-10-28 02:40:36,527.527 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:40:36,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:40:36,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:40:36,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:40:38,579.579 INFO    ] ================================================
[2026-10-28 02:40:38,601.601 INFO    ] Launching Daemon at Wed Oct 28 02:40:38 IST 2026
[2026-10-28 02:40:38,612.612 INFO    ] ================================================
[2026-10-28 02:40:39,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:40:39
[2026-10-28 02:40:39,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:40:40,209.209 INFO    ] Initializing speech engine...
[2026-10-28 02:40:40,219.219 INFO    ] 2026-10-28 02:40:40
[2026-10-28 02:40:40,538.538 INFO    ] 2026-10-28 02:40:40
[2026-10-28 02:40:40,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:40:40,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:40:40,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:40:41,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:40:41,217.217 INFO    ] time= 28/10/2026 02:40:41
[2026-10-28 02:40:41,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:40:41,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:40:41,465.465 INFO    ] No existing commands found in stream
[2026-10-28 02:40:46,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:40:46,489.489 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-28 02:40:47,109.109 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:40:47,112.112 INFO    ] Checking for system updates...
[2026-10-28 02:40:47,147.147 INFO    ] 200
[2026-10-28 02:40:47,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:40:47,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:40:47,210.210 INFO    ] No update needed
[2026-10-28 02:40:47,212.212 INFO    ] Checking for camera pi updates...
[2026-10-28 02:40:47,249.249 INFO    ] 200
[2026-10-28 02:40:47,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:40:47,295.295 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:40:47,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:40:47,398.398 INFO    ] No camera update needed
[2026-10-28 02:40:47,401.401 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:40:47,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:40:47,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:40:47,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:40:49,458.458 INFO    ] ================================================
[2026-10-28 02:40:49,474.474 INFO    ] Launching Daemon at Wed Oct 28 02:40:49 IST 2026
[2026-10-28 02:40:49,485.485 INFO    ] ================================================
[2026-10-28 02:40:50,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:40:50
[2026-10-28 02:40:50,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:40:50,941.941 INFO    ] Initializing speech engine...
[2026-10-28 02:40:50,948.948 INFO    ] 2026-10-28 02:40:50
[2026-10-28 02:40:51,208.208 INFO    ] 2026-10-28 02:40:51
[2026-10-28 02:40:51,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:40:51,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:40:51,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:40:51,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:40:51,752.752 INFO    ] time= 28/10/2026 02:40:51
[2026-10-28 02:40:51,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:40:51,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:40:51,915.915 INFO    ] No existing commands found in stream
[2026-10-28 02:40:56,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:40:56,947.947 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-28 02:40:57,846.846 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:40:57,849.849 INFO    ] Checking for system updates...
[2026-10-28 02:40:57,885.885 INFO    ] 200
[2026-10-28 02:40:57,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:40:57,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:40:57,942.942 INFO    ] No update needed
[2026-10-28 02:40:57,945.945 INFO    ] Checking for camera pi updates...
[2026-10-28 02:40:57,981.981 INFO    ] 200
[2026-10-28 02:40:57,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:40:58,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:40:58,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:40:58,111.111 INFO    ] No camera update needed
[2026-10-28 02:40:58,113.113 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:40:58,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:40:58,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:40:58,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:41:00,166.166 INFO    ] ================================================
[2026-10-28 02:41:00,181.181 INFO    ] Launching Daemon at Wed Oct 28 02:41:00 IST 2026
[2026-10-28 02:41:00,193.193 INFO    ] ================================================
[2026-10-28 02:41:00,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:41:00
[2026-10-28 02:41:01,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:41:01,609.609 INFO    ] Initializing speech engine...
[2026-10-28 02:41:01,618.618 INFO    ] 2026-10-28 02:41:01
[2026-10-28 02:41:02,031.031 INFO    ] 2026-10-28 02:41:02
[2026-10-28 02:41:02,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:41:02,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:41:02,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:41:02,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:41:02,600.600 INFO    ] time= 28/10/2026 02:41:02
[2026-10-28 02:41:02,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:41:02,675.675 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:41:02,844.844 INFO    ] No existing commands found in stream
[2026-10-28 02:41:07,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:41:07,877.877 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-28 02:41:12,173.173 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:41:12,176.176 INFO    ] Checking for system updates...
[2026-10-28 02:41:12,211.211 INFO    ] 200
[2026-10-28 02:41:12,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:41:12,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:41:12,269.269 INFO    ] No update needed
[2026-10-28 02:41:12,271.271 INFO    ] Checking for camera pi updates...
[2026-10-28 02:41:12,308.308 INFO    ] 200
[2026-10-28 02:41:12,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:41:12,356.356 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:41:12,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:41:12,438.438 INFO    ] No camera update needed
[2026-10-28 02:41:12,440.440 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:41:12,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:41:12,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:41:12,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:41:14,492.492 INFO    ] ================================================
[2026-10-28 02:41:14,509.509 INFO    ] Launching Daemon at Wed Oct 28 02:41:14 IST 2026
[2026-10-28 02:41:14,520.520 INFO    ] ================================================
[2026-10-28 02:41:15,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:41:15
[2026-10-28 02:41:15,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:41:15,977.977 INFO    ] Initializing speech engine...
[2026-10-28 02:41:15,984.984 INFO    ] 2026-10-28 02:41:15
[2026-10-28 02:41:16,241.241 INFO    ] 2026-10-28 02:41:16
[2026-10-28 02:41:16,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:41:16,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:41:16,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:41:16,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:41:16,850.850 INFO    ] time= 28/10/2026 02:41:16
[2026-10-28 02:41:16,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:41:16,874.874 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:41:17,003.003 INFO    ] No existing commands found in stream
[2026-10-28 02:41:22,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:41:22,029.029 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-28 02:41:23,332.332 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:41:23,335.335 INFO    ] Checking for system updates...
[2026-10-28 02:41:23,375.375 INFO    ] 200
[2026-10-28 02:41:23,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:41:23,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:41:23,439.439 INFO    ] No update needed
[2026-10-28 02:41:23,442.442 INFO    ] Checking for camera pi updates...
[2026-10-28 02:41:23,479.479 INFO    ] 200
[2026-10-28 02:41:23,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:41:23,527.527 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:41:23,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:41:23,619.619 INFO    ] No camera update needed
[2026-10-28 02:41:23,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:41:23,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:41:23,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:41:23,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:41:25,676.676 INFO    ] ================================================
[2026-10-28 02:41:25,692.692 INFO    ] Launching Daemon at Wed Oct 28 02:41:25 IST 2026
[2026-10-28 02:41:25,703.703 INFO    ] ================================================
[2026-10-28 02:41:26,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:41:26
[2026-10-28 02:41:26,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:41:27,098.098 INFO    ] Initializing speech engine...
[2026-10-28 02:41:27,121.121 INFO    ] 2026-10-28 02:41:27
[2026-10-28 02:41:27,371.371 INFO    ] 2026-10-28 02:41:27
[2026-10-28 02:41:27,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:41:27,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:41:27,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:41:27,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:41:27,928.928 INFO    ] time= 28/10/2026 02:41:27
[2026-10-28 02:41:27,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:41:27,963.963 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:41:28,086.086 INFO    ] No existing commands found in stream
[2026-10-28 02:41:33,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:41:33,113.113 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 02:41:37,599.599 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:41:37,601.601 INFO    ] Checking for system updates...
[2026-10-28 02:41:37,642.642 INFO    ] 200
[2026-10-28 02:41:37,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:41:37,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:41:37,712.712 INFO    ] No update needed
[2026-10-28 02:41:37,725.725 INFO    ] Checking for camera pi updates...
[2026-10-28 02:41:37,763.763 INFO    ] 200
[2026-10-28 02:41:37,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:41:37,811.811 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:41:37,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:41:37,994.994 INFO    ] No camera update needed
[2026-10-28 02:41:37,996.996 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:41:37,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:41:38,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:41:38,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:41:40,049.049 INFO    ] ================================================
[2026-10-28 02:41:40,066.066 INFO    ] Launching Daemon at Wed Oct 28 02:41:40 IST 2026
[2026-10-28 02:41:40,077.077 INFO    ] ================================================
[2026-10-28 02:41:40,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:41:40
[2026-10-28 02:41:41,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:41:41,480.480 INFO    ] Initializing speech engine...
[2026-10-28 02:41:41,503.503 INFO    ] 2026-10-28 02:41:41
[2026-10-28 02:41:41,760.760 INFO    ] 2026-10-28 02:41:41
[2026-10-28 02:41:41,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:41:42,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:41:42,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:41:42,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:41:42,329.329 INFO    ] time= 28/10/2026 02:41:42
[2026-10-28 02:41:42,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:41:42,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:41:42,482.482 INFO    ] No existing commands found in stream
[2026-10-28 02:41:47,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:41:47,501.501 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-28 02:41:50,919.919 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:41:50,921.921 INFO    ] Checking for system updates...
[2026-10-28 02:41:50,961.961 INFO    ] 200
[2026-10-28 02:41:50,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:41:51,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:41:51,018.018 INFO    ] No update needed
[2026-10-28 02:41:51,020.020 INFO    ] Checking for camera pi updates...
[2026-10-28 02:41:51,054.054 INFO    ] 200
[2026-10-28 02:41:51,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:41:51,096.096 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:41:51,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:41:51,191.191 INFO    ] No camera update needed
[2026-10-28 02:41:51,193.193 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:41:51,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:41:51,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:41:51,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:41:53,245.245 INFO    ] ================================================
[2026-10-28 02:41:53,261.261 INFO    ] Launching Daemon at Wed Oct 28 02:41:53 IST 2026
[2026-10-28 02:41:53,272.272 INFO    ] ================================================
[2026-10-28 02:41:53,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:41:53
[2026-10-28 02:41:54,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:41:54,917.917 INFO    ] Initializing speech engine...
[2026-10-28 02:41:54,926.926 INFO    ] 2026-10-28 02:41:54
[2026-10-28 02:41:55,202.202 INFO    ] 2026-10-28 02:41:55
[2026-10-28 02:41:55,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:41:55,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:41:55,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:41:55,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:41:55,794.794 INFO    ] time= 28/10/2026 02:41:55
[2026-10-28 02:41:55,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:41:55,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:41:55,933.933 INFO    ] No existing commands found in stream
[2026-10-28 02:42:00,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:42:00,968.968 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-28 02:42:04,854.854 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:42:04,858.858 INFO    ] Checking for system updates...
[2026-10-28 02:42:04,898.898 INFO    ] 200
[2026-10-28 02:42:04,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:42:04,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:42:04,967.967 INFO    ] No update needed
[2026-10-28 02:42:04,970.970 INFO    ] Checking for camera pi updates...
[2026-10-28 02:42:05,009.009 INFO    ] 200
[2026-10-28 02:42:05,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:42:05,054.054 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:42:05,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:42:05,163.163 INFO    ] No camera update needed
[2026-10-28 02:42:05,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:42:05,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:42:05,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:42:05,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:42:07,224.224 INFO    ] ================================================
[2026-10-28 02:42:07,239.239 INFO    ] Launching Daemon at Wed Oct 28 02:42:07 IST 2026
[2026-10-28 02:42:07,251.251 INFO    ] ================================================
[2026-10-28 02:42:07,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:42:07
[2026-10-28 02:42:08,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:42:08,667.667 INFO    ] Initializing speech engine...
[2026-10-28 02:42:08,676.676 INFO    ] 2026-10-28 02:42:08
[2026-10-28 02:42:08,921.921 INFO    ] 2026-10-28 02:42:08
[2026-10-28 02:42:08,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:42:09,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:42:09,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:42:09,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:42:09,483.483 INFO    ] time= 28/10/2026 02:42:09
[2026-10-28 02:42:09,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:42:09,517.517 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:42:09,648.648 INFO    ] No existing commands found in stream
[2026-10-28 02:42:14,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:42:14,676.676 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-28 02:42:18,184.184 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:42:18,187.187 INFO    ] Checking for system updates...
[2026-10-28 02:42:18,222.222 INFO    ] 200
[2026-10-28 02:42:18,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:42:18,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:42:18,286.286 INFO    ] No update needed
[2026-10-28 02:42:18,288.288 INFO    ] Checking for camera pi updates...
[2026-10-28 02:42:18,326.326 INFO    ] 200
[2026-10-28 02:42:18,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:42:18,368.368 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:42:18,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:42:18,445.445 INFO    ] No camera update needed
[2026-10-28 02:42:18,447.447 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:42:18,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:42:18,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:42:18,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:42:20,500.500 INFO    ] ================================================
[2026-10-28 02:42:20,516.516 INFO    ] Launching Daemon at Wed Oct 28 02:42:20 IST 2026
[2026-10-28 02:42:20,527.527 INFO    ] ================================================
[2026-10-28 02:42:21,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:42:21
[2026-10-28 02:42:21,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:42:21,947.947 INFO    ] Initializing speech engine...
[2026-10-28 02:42:21,965.965 INFO    ] 2026-10-28 02:42:21
[2026-10-28 02:42:22,213.213 INFO    ] 2026-10-28 02:42:22
[2026-10-28 02:42:22,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:42:22,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:42:22,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:42:22,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:42:22,769.769 INFO    ] time= 28/10/2026 02:42:22
[2026-10-28 02:42:22,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:42:22,792.792 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:42:22,922.922 INFO    ] No existing commands found in stream
[2026-10-28 02:42:27,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:42:27,938.938 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-28 02:42:31,354.354 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:42:31,357.357 INFO    ] Checking for system updates...
[2026-10-28 02:42:31,397.397 INFO    ] 200
[2026-10-28 02:42:31,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:42:31,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:42:31,460.460 INFO    ] No update needed
[2026-10-28 02:42:31,463.463 INFO    ] Checking for camera pi updates...
[2026-10-28 02:42:31,497.497 INFO    ] 200
[2026-10-28 02:42:31,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:42:31,545.545 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:42:31,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:42:31,651.651 INFO    ] No camera update needed
[2026-10-28 02:42:31,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:42:31,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:42:31,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:42:31,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:42:33,711.711 INFO    ] ================================================
[2026-10-28 02:42:33,726.726 INFO    ] Launching Daemon at Wed Oct 28 02:42:33 IST 2026
[2026-10-28 02:42:33,738.738 INFO    ] ================================================
[2026-10-28 02:42:34,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:42:34
[2026-10-28 02:42:34,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:42:35,147.147 INFO    ] Initializing speech engine...
[2026-10-28 02:42:35,161.161 INFO    ] 2026-10-28 02:42:35
[2026-10-28 02:42:35,416.416 INFO    ] 2026-10-28 02:42:35
[2026-10-28 02:42:35,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:42:35,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:42:35,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:42:35,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:42:35,987.987 INFO    ] time= 28/10/2026 02:42:35
[2026-10-28 02:42:35,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:42:36,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:42:36,122.122 INFO    ] No existing commands found in stream
[2026-10-28 02:42:41,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:42:41,156.156 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-28 02:42:42,908.908 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:42:42,910.910 INFO    ] Checking for system updates...
[2026-10-28 02:42:42,946.946 INFO    ] 200
[2026-10-28 02:42:42,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:42:43,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:42:43,004.004 INFO    ] No update needed
[2026-10-28 02:42:43,007.007 INFO    ] Checking for camera pi updates...
[2026-10-28 02:42:43,040.040 INFO    ] 200
[2026-10-28 02:42:43,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:42:43,088.088 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:42:43,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:42:43,174.174 INFO    ] No camera update needed
[2026-10-28 02:42:43,176.176 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:42:43,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:42:43,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:42:43,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:42:45,228.228 INFO    ] ================================================
[2026-10-28 02:42:45,244.244 INFO    ] Launching Daemon at Wed Oct 28 02:42:45 IST 2026
[2026-10-28 02:42:45,256.256 INFO    ] ================================================
[2026-10-28 02:42:45,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:42:45
[2026-10-28 02:42:46,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:42:46,675.675 INFO    ] Initializing speech engine...
[2026-10-28 02:42:46,683.683 INFO    ] 2026-10-28 02:42:46
[2026-10-28 02:42:46,941.941 INFO    ] 2026-10-28 02:42:46
[2026-10-28 02:42:46,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:42:47,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:42:47,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:42:47,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:42:47,484.484 INFO    ] time= 28/10/2026 02:42:47
[2026-10-28 02:42:47,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:42:47,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:42:47,635.635 INFO    ] No existing commands found in stream
[2026-10-28 02:42:52,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:42:52,650.650 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-28 02:42:56,891.891 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:42:56,894.894 INFO    ] Checking for system updates...
[2026-10-28 02:42:56,930.930 INFO    ] 200
[2026-10-28 02:42:56,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:42:56,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:42:56,995.995 INFO    ] No update needed
[2026-10-28 02:42:56,998.998 INFO    ] Checking for camera pi updates...
[2026-10-28 02:42:57,034.034 INFO    ] 200
[2026-10-28 02:42:57,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:42:57,081.081 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:42:57,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:42:57,157.157 INFO    ] No camera update needed
[2026-10-28 02:42:57,160.160 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:42:57,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:42:57,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:42:57,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:42:59,216.216 INFO    ] ================================================
[2026-10-28 02:42:59,231.231 INFO    ] Launching Daemon at Wed Oct 28 02:42:59 IST 2026
[2026-10-28 02:42:59,242.242 INFO    ] ================================================
[2026-10-28 02:42:59,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:42:59
[2026-10-28 02:43:00,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:43:00,852.852 INFO    ] Initializing speech engine...
[2026-10-28 02:43:00,865.865 INFO    ] 2026-10-28 02:43:00
[2026-10-28 02:43:01,157.157 INFO    ] 2026-10-28 02:43:01
[2026-10-28 02:43:01,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:43:01,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:43:01,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:43:01,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:43:01,613.613 INFO    ] time= 28/10/2026 02:43:01
[2026-10-28 02:43:01,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:43:01,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:43:01,773.773 INFO    ] No existing commands found in stream
[2026-10-28 02:43:06,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:43:06,789.789 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-28 02:43:07,995.995 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:43:07,998.998 INFO    ] Checking for system updates...
[2026-10-28 02:43:08,040.040 INFO    ] 200
[2026-10-28 02:43:08,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:43:08,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:43:08,101.101 INFO    ] No update needed
[2026-10-28 02:43:08,103.103 INFO    ] Checking for camera pi updates...
[2026-10-28 02:43:08,140.140 INFO    ] 200
[2026-10-28 02:43:08,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:43:08,183.183 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:43:08,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:43:08,267.267 INFO    ] No camera update needed
[2026-10-28 02:43:08,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:43:08,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:43:08,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:43:08,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:43:10,322.322 INFO    ] ================================================
[2026-10-28 02:43:10,337.337 INFO    ] Launching Daemon at Wed Oct 28 02:43:10 IST 2026
[2026-10-28 02:43:10,348.348 INFO    ] ================================================
[2026-10-28 02:43:10,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:43:10
[2026-10-28 02:43:11,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:43:11,765.765 INFO    ] Initializing speech engine...
[2026-10-28 02:43:11,774.774 INFO    ] 2026-10-28 02:43:11
[2026-10-28 02:43:12,017.017 INFO    ] 2026-10-28 02:43:12
[2026-10-28 02:43:12,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:43:12,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:43:12,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:43:12,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:43:12,575.575 INFO    ] time= 28/10/2026 02:43:12
[2026-10-28 02:43:12,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:43:12,580.580 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:43:12,659.659 INFO    ] No existing commands found in stream
[2026-10-28 02:43:17,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:43:17,672.672 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-28 02:43:18,619.619 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:43:18,622.622 INFO    ] Checking for system updates...
[2026-10-28 02:43:18,659.659 INFO    ] 200
[2026-10-28 02:43:18,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:43:18,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:43:18,722.722 INFO    ] No update needed
[2026-10-28 02:43:18,725.725 INFO    ] Checking for camera pi updates...
[2026-10-28 02:43:18,762.762 INFO    ] 200
[2026-10-28 02:43:18,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:43:18,816.816 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:43:18,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:43:18,906.906 INFO    ] No camera update needed
[2026-10-28 02:43:18,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:43:18,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:43:18,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:43:18,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:43:20,961.961 INFO    ] ================================================
[2026-10-28 02:43:20,977.977 INFO    ] Launching Daemon at Wed Oct 28 02:43:20 IST 2026
[2026-10-28 02:43:20,988.988 INFO    ] ================================================
[2026-10-28 02:43:21,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:43:21
[2026-10-28 02:43:22,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:43:22,395.395 INFO    ] Initializing speech engine...
[2026-10-28 02:43:22,418.418 INFO    ] 2026-10-28 02:43:22
[2026-10-28 02:43:22,673.673 INFO    ] 2026-10-28 02:43:22
[2026-10-28 02:43:22,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:43:22,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:43:22,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:43:23,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:43:23,248.248 INFO    ] time= 28/10/2026 02:43:23
[2026-10-28 02:43:23,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:43:23,283.283 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:43:23,432.432 INFO    ] No existing commands found in stream
[2026-10-28 02:43:28,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:43:28,460.460 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-28 02:43:31,492.492 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:43:31,495.495 INFO    ] Checking for system updates...
[2026-10-28 02:43:31,538.538 INFO    ] 200
[2026-10-28 02:43:31,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:43:31,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:43:31,607.607 INFO    ] No update needed
[2026-10-28 02:43:31,610.610 INFO    ] Checking for camera pi updates...
[2026-10-28 02:43:31,646.646 INFO    ] 200
[2026-10-28 02:43:31,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:43:31,697.697 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:43:31,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:43:31,805.805 INFO    ] No camera update needed
[2026-10-28 02:43:31,807.807 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:43:31,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:43:31,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:43:31,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:43:33,865.865 INFO    ] ================================================
[2026-10-28 02:43:33,881.881 INFO    ] Launching Daemon at Wed Oct 28 02:43:33 IST 2026
[2026-10-28 02:43:33,892.892 INFO    ] ================================================
[2026-10-28 02:43:34,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:43:34
[2026-10-28 02:43:35,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:43:35,525.525 INFO    ] Initializing speech engine...
[2026-10-28 02:43:35,532.532 INFO    ] 2026-10-28 02:43:35
[2026-10-28 02:43:35,852.852 INFO    ] 2026-10-28 02:43:35
[2026-10-28 02:43:35,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:43:36,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:43:36,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:43:36,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:43:36,402.402 INFO    ] time= 28/10/2026 02:43:36
[2026-10-28 02:43:36,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:43:36,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:43:36,605.605 INFO    ] No existing commands found in stream
[2026-10-28 02:43:41,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:43:41,619.619 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 02:43:42,755.755 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:43:42,758.758 INFO    ] Checking for system updates...
[2026-10-28 02:43:42,794.794 INFO    ] 200
[2026-10-28 02:43:42,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:43:42,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:43:42,859.859 INFO    ] No update needed
[2026-10-28 02:43:42,861.861 INFO    ] Checking for camera pi updates...
[2026-10-28 02:43:42,895.895 INFO    ] 200
[2026-10-28 02:43:42,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:43:42,938.938 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:43:43,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:43:43,118.118 INFO    ] No camera update needed
[2026-10-28 02:43:43,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:43:43,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:43:43,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:43:43,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:43:45,172.172 INFO    ] ================================================
[2026-10-28 02:43:45,188.188 INFO    ] Launching Daemon at Wed Oct 28 02:43:45 IST 2026
[2026-10-28 02:43:45,199.199 INFO    ] ================================================
[2026-10-28 02:43:45,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:43:45
[2026-10-28 02:43:46,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:43:46,742.742 INFO    ] Initializing speech engine...
[2026-10-28 02:43:46,749.749 INFO    ] 2026-10-28 02:43:46
[2026-10-28 02:43:47,005.005 INFO    ] 2026-10-28 02:43:46
[2026-10-28 02:43:47,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:43:47,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:43:47,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:43:47,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:43:47,586.586 INFO    ] time= 28/10/2026 02:43:47
[2026-10-28 02:43:47,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:43:47,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:43:47,712.712 INFO    ] No existing commands found in stream
[2026-10-28 02:43:52,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:43:52,745.745 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-28 02:43:53,594.594 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:43:53,597.597 INFO    ] Checking for system updates...
[2026-10-28 02:43:53,632.632 INFO    ] 200
[2026-10-28 02:43:53,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:43:53,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:43:53,691.691 INFO    ] No update needed
[2026-10-28 02:43:53,693.693 INFO    ] Checking for camera pi updates...
[2026-10-28 02:43:53,730.730 INFO    ] 200
[2026-10-28 02:43:53,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:43:53,778.778 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:43:53,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:43:53,867.867 INFO    ] No camera update needed
[2026-10-28 02:43:53,869.869 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:43:53,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:43:53,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:43:53,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:43:55,921.921 INFO    ] ================================================
[2026-10-28 02:43:55,936.936 INFO    ] Launching Daemon at Wed Oct 28 02:43:55 IST 2026
[2026-10-28 02:43:55,947.947 INFO    ] ================================================
[2026-10-28 02:43:56,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:43:56
[2026-10-28 02:43:57,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:43:57,367.367 INFO    ] Initializing speech engine...
[2026-10-28 02:43:57,373.373 INFO    ] 2026-10-28 02:43:57
[2026-10-28 02:43:57,619.619 INFO    ] 2026-10-28 02:43:57
[2026-10-28 02:43:57,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:43:57,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:43:57,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:43:58,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:43:58,175.175 INFO    ] time= 28/10/2026 02:43:58
[2026-10-28 02:43:58,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:43:58,222.222 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:43:58,329.329 INFO    ] No existing commands found in stream
[2026-10-28 02:44:03,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:44:03,355.355 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-28 02:44:07,932.932 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:44:07,934.934 INFO    ] Checking for system updates...
[2026-10-28 02:44:07,975.975 INFO    ] 200
[2026-10-28 02:44:07,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:44:08,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:44:08,039.039 INFO    ] No update needed
[2026-10-28 02:44:08,041.041 INFO    ] Checking for camera pi updates...
[2026-10-28 02:44:08,077.077 INFO    ] 200
[2026-10-28 02:44:08,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:44:08,121.121 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:44:08,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:44:08,225.225 INFO    ] No camera update needed
[2026-10-28 02:44:08,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:44:08,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:44:08,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:44:08,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:44:10,283.283 INFO    ] ================================================
[2026-10-28 02:44:10,298.298 INFO    ] Launching Daemon at Wed Oct 28 02:44:10 IST 2026
[2026-10-28 02:44:10,309.309 INFO    ] ================================================
[2026-10-28 02:44:10,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:44:10
[2026-10-28 02:44:11,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:44:11,734.734 INFO    ] Initializing speech engine...
[2026-10-28 02:44:11,743.743 INFO    ] 2026-10-28 02:44:11
[2026-10-28 02:44:11,990.990 INFO    ] 2026-10-28 02:44:11
[2026-10-28 02:44:12,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:44:12,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:44:12,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:44:12,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:44:12,544.544 INFO    ] time= 28/10/2026 02:44:12
[2026-10-28 02:44:12,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:44:12,568.568 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:44:12,699.699 INFO    ] No existing commands found in stream
[2026-10-28 02:44:17,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:44:17,720.720 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-28 02:44:22,118.118 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:44:22,121.121 INFO    ] Checking for system updates...
[2026-10-28 02:44:22,161.161 INFO    ] 200
[2026-10-28 02:44:22,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:44:22,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:44:22,220.220 INFO    ] No update needed
[2026-10-28 02:44:22,223.223 INFO    ] Checking for camera pi updates...
[2026-10-28 02:44:22,258.258 INFO    ] 200
[2026-10-28 02:44:22,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:44:22,303.303 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:44:22,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:44:22,396.396 INFO    ] No camera update needed
[2026-10-28 02:44:22,398.398 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:44:22,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:44:22,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:44:22,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:44:24,454.454 INFO    ] ================================================
[2026-10-28 02:44:24,469.469 INFO    ] Launching Daemon at Wed Oct 28 02:44:24 IST 2026
[2026-10-28 02:44:24,480.480 INFO    ] ================================================
[2026-10-28 02:44:25,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:44:25
[2026-10-28 02:44:25,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:44:25,880.880 INFO    ] Initializing speech engine...
[2026-10-28 02:44:25,893.893 INFO    ] 2026-10-28 02:44:25
[2026-10-28 02:44:26,159.159 INFO    ] 2026-10-28 02:44:26
[2026-10-28 02:44:26,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:44:26,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:44:26,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:44:26,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:44:26,763.763 INFO    ] time= 28/10/2026 02:44:26
[2026-10-28 02:44:26,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:44:26,805.805 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:44:26,928.928 INFO    ] No existing commands found in stream
[2026-10-28 02:44:31,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:44:31,961.961 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 02:44:34,787.787 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:44:34,790.790 INFO    ] Checking for system updates...
[2026-10-28 02:44:34,825.825 INFO    ] 200
[2026-10-28 02:44:34,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:44:34,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:44:34,889.889 INFO    ] No update needed
[2026-10-28 02:44:34,892.892 INFO    ] Checking for camera pi updates...
[2026-10-28 02:44:34,929.929 INFO    ] 200
[2026-10-28 02:44:34,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:44:34,977.977 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:44:35,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:44:35,062.062 INFO    ] No camera update needed
[2026-10-28 02:44:35,064.064 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:44:35,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:44:35,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:44:35,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:44:37,116.116 INFO    ] ================================================
[2026-10-28 02:44:37,131.131 INFO    ] Launching Daemon at Wed Oct 28 02:44:37 IST 2026
[2026-10-28 02:44:37,142.142 INFO    ] ================================================
[2026-10-28 02:44:37,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:44:37
[2026-10-28 02:44:38,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:44:38,553.553 INFO    ] Initializing speech engine...
[2026-10-28 02:44:38,572.572 INFO    ] 2026-10-28 02:44:38
[2026-10-28 02:44:38,825.825 INFO    ] 2026-10-28 02:44:38
[2026-10-28 02:44:38,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:44:39,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:44:39,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:44:39,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:44:39,394.394 INFO    ] time= 28/10/2026 02:44:39
[2026-10-28 02:44:39,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:44:39,418.418 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:44:39,555.555 INFO    ] No existing commands found in stream
[2026-10-28 02:44:44,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:44:44,586.586 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-28 02:44:45,933.933 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:44:45,936.936 INFO    ] Checking for system updates...
[2026-10-28 02:44:45,974.974 INFO    ] 200
[2026-10-28 02:44:45,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:44:46,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:44:46,041.041 INFO    ] No update needed
[2026-10-28 02:44:46,043.043 INFO    ] Checking for camera pi updates...
[2026-10-28 02:44:46,076.076 INFO    ] 200
[2026-10-28 02:44:46,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:44:46,120.120 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:44:46,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:44:46,194.194 INFO    ] No camera update needed
[2026-10-28 02:44:46,197.197 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:44:46,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:44:46,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:44:46,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:44:48,250.250 INFO    ] ================================================
[2026-10-28 02:44:48,265.265 INFO    ] Launching Daemon at Wed Oct 28 02:44:48 IST 2026
[2026-10-28 02:44:48,275.275 INFO    ] ================================================
[2026-10-28 02:44:48,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:44:48
[2026-10-28 02:44:49,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:44:49,919.919 INFO    ] Initializing speech engine...
[2026-10-28 02:44:49,927.927 INFO    ] 2026-10-28 02:44:49
[2026-10-28 02:44:50,245.245 INFO    ] 2026-10-28 02:44:50
[2026-10-28 02:44:50,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:44:50,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:44:50,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:44:50,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:44:50,803.803 INFO    ] time= 28/10/2026 02:44:50
[2026-10-28 02:44:50,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:44:50,880.880 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:44:51,011.011 INFO    ] No existing commands found in stream
[2026-10-28 02:44:56,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:44:56,039.039 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-28 02:45:00,514.514 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:45:00,517.517 INFO    ] Checking for system updates...
[2026-10-28 02:45:00,558.558 INFO    ] 200
[2026-10-28 02:45:00,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:45:00,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:45:00,623.623 INFO    ] No update needed
[2026-10-28 02:45:00,625.625 INFO    ] Checking for camera pi updates...
[2026-10-28 02:45:00,659.659 INFO    ] 200
[2026-10-28 02:45:00,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:45:00,706.706 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:45:00,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:45:00,785.785 INFO    ] No camera update needed
[2026-10-28 02:45:00,788.788 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:45:00,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:45:00,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:45:00,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:45:02,875.875 INFO    ] ================================================
[2026-10-28 02:45:02,894.894 INFO    ] Launching Daemon at Wed Oct 28 02:45:02 IST 2026
[2026-10-28 02:45:02,912.912 INFO    ] ================================================
[2026-10-28 02:45:03,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:45:03
[2026-10-28 02:45:04,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:45:04,593.593 INFO    ] Initializing speech engine...
[2026-10-28 02:45:04,602.602 INFO    ] 2026-10-28 02:45:04
[2026-10-28 02:45:04,874.874 INFO    ] 2026-10-28 02:45:04
[2026-10-28 02:45:04,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:45:05,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:45:05,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:45:05,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:45:05,441.441 INFO    ] time= 28/10/2026 02:45:05
[2026-10-28 02:45:05,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:45:05,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:45:05,606.606 INFO    ] No existing commands found in stream
[2026-10-28 02:45:10,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:45:10,645.645 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 02:45:12,613.613 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:45:12,617.617 INFO    ] Checking for system updates...
[2026-10-28 02:45:12,658.658 INFO    ] 200
[2026-10-28 02:45:12,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:45:12,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:45:12,725.725 INFO    ] No update needed
[2026-10-28 02:45:12,728.728 INFO    ] Checking for camera pi updates...
[2026-10-28 02:45:12,767.767 INFO    ] 200
[2026-10-28 02:45:12,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:45:12,817.817 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:45:12,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:45:12,919.919 INFO    ] No camera update needed
[2026-10-28 02:45:12,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:45:12,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:45:12,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:45:12,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:45:14,979.979 INFO    ] ================================================
[2026-10-28 02:45:14,994.994 INFO    ] Launching Daemon at Wed Oct 28 02:45:14 IST 2026
[2026-10-28 02:45:15,005.005 INFO    ] ================================================
[2026-10-28 02:45:15,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:45:15
[2026-10-28 02:45:16,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:45:16,640.640 INFO    ] Initializing speech engine...
[2026-10-28 02:45:16,649.649 INFO    ] 2026-10-28 02:45:16
[2026-10-28 02:45:16,927.927 INFO    ] 2026-10-28 02:45:16
[2026-10-28 02:45:16,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:45:17,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:45:17,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:45:17,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:45:17,486.486 INFO    ] time= 28/10/2026 02:45:17
[2026-10-28 02:45:17,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:45:17,523.523 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:45:17,654.654 INFO    ] No existing commands found in stream
[2026-10-28 02:45:22,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:45:22,688.688 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-28 02:45:27,331.331 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:45:27,334.334 INFO    ] Checking for system updates...
[2026-10-28 02:45:27,374.374 INFO    ] 200
[2026-10-28 02:45:27,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:45:27,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:45:27,438.438 INFO    ] No update needed
[2026-10-28 02:45:27,440.440 INFO    ] Checking for camera pi updates...
[2026-10-28 02:45:27,477.477 INFO    ] 200
[2026-10-28 02:45:27,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:45:27,524.524 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:45:27,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:45:27,598.598 INFO    ] No camera update needed
[2026-10-28 02:45:27,600.600 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:45:27,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:45:27,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:45:27,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:45:29,662.662 INFO    ] ================================================
[2026-10-28 02:45:29,677.677 INFO    ] Launching Daemon at Wed Oct 28 02:45:29 IST 2026
[2026-10-28 02:45:29,687.687 INFO    ] ================================================
[2026-10-28 02:45:30,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:45:30
[2026-10-28 02:45:30,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:45:31,123.123 INFO    ] Initializing speech engine...
[2026-10-28 02:45:31,138.138 INFO    ] 2026-10-28 02:45:31
[2026-10-28 02:45:31,405.405 INFO    ] 2026-10-28 02:45:31
[2026-10-28 02:45:31,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:45:31,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:45:31,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:45:31,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:45:31,923.923 INFO    ] time= 28/10/2026 02:45:31
[2026-10-28 02:45:31,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:45:32,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:45:32,126.126 INFO    ] No existing commands found in stream
[2026-10-28 02:45:37,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:45:37,142.142 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-28 02:45:40,071.071 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:45:40,073.073 INFO    ] Checking for system updates...
[2026-10-28 02:45:40,110.110 INFO    ] 200
[2026-10-28 02:45:40,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:45:40,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:45:40,170.170 INFO    ] No update needed
[2026-10-28 02:45:40,172.172 INFO    ] Checking for camera pi updates...
[2026-10-28 02:45:40,212.212 INFO    ] 200
[2026-10-28 02:45:40,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:45:40,255.255 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:45:40,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:45:40,350.350 INFO    ] No camera update needed
[2026-10-28 02:45:40,352.352 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:45:40,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:45:40,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:45:40,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:45:42,411.411 INFO    ] ================================================
[2026-10-28 02:45:42,427.427 INFO    ] Launching Daemon at Wed Oct 28 02:45:42 IST 2026
[2026-10-28 02:45:42,439.439 INFO    ] ================================================
[2026-10-28 02:45:43,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:45:43
[2026-10-28 02:45:43,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:45:43,881.881 INFO    ] Initializing speech engine...
[2026-10-28 02:45:43,887.887 INFO    ] 2026-10-28 02:45:43
[2026-10-28 02:45:44,138.138 INFO    ] 2026-10-28 02:45:44
[2026-10-28 02:45:44,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:45:44,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:45:44,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:45:44,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:45:44,715.715 INFO    ] time= 28/10/2026 02:45:44
[2026-10-28 02:45:44,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:45:44,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:45:44,873.873 INFO    ] No existing commands found in stream
[2026-10-28 02:45:49,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:45:49,903.903 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 02:45:52,581.581 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:45:52,584.584 INFO    ] Checking for system updates...
[2026-10-28 02:45:52,621.621 INFO    ] 200
[2026-10-28 02:45:52,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:45:52,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:45:52,679.679 INFO    ] No update needed
[2026-10-28 02:45:52,682.682 INFO    ] Checking for camera pi updates...
[2026-10-28 02:45:52,721.721 INFO    ] 200
[2026-10-28 02:45:52,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:45:52,766.766 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:45:52,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:45:52,967.967 INFO    ] No camera update needed
[2026-10-28 02:45:52,970.970 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:45:52,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:45:52,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:45:52,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:45:55,028.028 INFO    ] ================================================
[2026-10-28 02:45:55,043.043 INFO    ] Launching Daemon at Wed Oct 28 02:45:55 IST 2026
[2026-10-28 02:45:55,054.054 INFO    ] ================================================
[2026-10-28 02:45:55,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:45:55
[2026-10-28 02:45:56,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:45:56,689.689 INFO    ] Initializing speech engine...
[2026-10-28 02:45:56,697.697 INFO    ] 2026-10-28 02:45:56
[2026-10-28 02:45:56,972.972 INFO    ] 2026-10-28 02:45:56
[2026-10-28 02:45:57,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:45:57,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:45:57,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:45:57,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:45:57,523.523 INFO    ] time= 28/10/2026 02:45:57
[2026-10-28 02:45:57,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:45:57,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:45:57,707.707 INFO    ] No existing commands found in stream
[2026-10-28 02:46:02,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:46:02,747.747 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-28 02:46:05,320.320 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:46:05,323.323 INFO    ] Checking for system updates...
[2026-10-28 02:46:05,364.364 INFO    ] 200
[2026-10-28 02:46:05,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:46:05,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:46:05,429.429 INFO    ] No update needed
[2026-10-28 02:46:05,431.431 INFO    ] Checking for camera pi updates...
[2026-10-28 02:46:05,464.464 INFO    ] 200
[2026-10-28 02:46:05,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:46:05,508.508 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:46:05,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:46:05,587.587 INFO    ] No camera update needed
[2026-10-28 02:46:05,590.590 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:46:05,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:46:05,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:46:05,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:46:07,642.642 INFO    ] ================================================
[2026-10-28 02:46:07,657.657 INFO    ] Launching Daemon at Wed Oct 28 02:46:07 IST 2026
[2026-10-28 02:46:07,669.669 INFO    ] ================================================
[2026-10-28 02:46:08,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:46:08
[2026-10-28 02:46:08,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:46:09,122.122 INFO    ] Initializing speech engine...
[2026-10-28 02:46:09,147.147 INFO    ] 2026-10-28 02:46:09
[2026-10-28 02:46:09,431.431 INFO    ] 2026-10-28 02:46:09
[2026-10-28 02:46:09,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:46:09,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:46:09,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:46:09,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:46:10,001.001 INFO    ] time= 28/10/2026 02:46:09
[2026-10-28 02:46:10,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:46:10,049.049 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:46:10,174.174 INFO    ] No existing commands found in stream
[2026-10-28 02:46:15,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:46:15,214.214 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-28 02:46:16,453.453 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:46:16,456.456 INFO    ] Checking for system updates...
[2026-10-28 02:46:16,493.493 INFO    ] 200
[2026-10-28 02:46:16,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:46:16,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:46:16,555.555 INFO    ] No update needed
[2026-10-28 02:46:16,557.557 INFO    ] Checking for camera pi updates...
[2026-10-28 02:46:16,591.591 INFO    ] 200
[2026-10-28 02:46:16,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:46:16,638.638 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:46:16,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:46:16,717.717 INFO    ] No camera update needed
[2026-10-28 02:46:16,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:46:16,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:46:16,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:46:16,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:46:18,773.773 INFO    ] ================================================
[2026-10-28 02:46:18,789.789 INFO    ] Launching Daemon at Wed Oct 28 02:46:18 IST 2026
[2026-10-28 02:46:18,800.800 INFO    ] ================================================
[2026-10-28 02:46:19,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:46:19
[2026-10-28 02:46:19,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:46:20,235.235 INFO    ] Initializing speech engine...
[2026-10-28 02:46:20,251.251 INFO    ] 2026-10-28 02:46:20
[2026-10-28 02:46:20,504.504 INFO    ] 2026-10-28 02:46:20
[2026-10-28 02:46:20,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:46:20,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:46:20,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:46:21,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:46:21,094.094 INFO    ] time= 28/10/2026 02:46:21
[2026-10-28 02:46:21,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:46:21,136.136 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:46:21,265.265 INFO    ] No existing commands found in stream
[2026-10-28 02:46:26,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:46:26,298.298 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-28 02:46:29,668.668 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:46:29,671.671 INFO    ] Checking for system updates...
[2026-10-28 02:46:29,707.707 INFO    ] 200
[2026-10-28 02:46:29,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:46:29,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:46:29,769.769 INFO    ] No update needed
[2026-10-28 02:46:29,771.771 INFO    ] Checking for camera pi updates...
[2026-10-28 02:46:29,808.808 INFO    ] 200
[2026-10-28 02:46:29,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:46:29,856.856 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:46:29,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:46:29,940.940 INFO    ] No camera update needed
[2026-10-28 02:46:29,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:46:29,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:46:29,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:46:29,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:46:32,999.999 INFO    ] ================================================
[2026-10-28 02:46:32,016.016 INFO    ] Launching Daemon at Wed Oct 28 02:46:32 IST 2026
[2026-10-28 02:46:32,028.028 INFO    ] ================================================
[2026-10-28 02:46:32,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:46:32
[2026-10-28 02:46:33,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:46:33,500.500 INFO    ] Initializing speech engine...
[2026-10-28 02:46:33,509.509 INFO    ] 2026-10-28 02:46:33
[2026-10-28 02:46:33,780.780 INFO    ] 2026-10-28 02:46:33
[2026-10-28 02:46:33,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:46:34,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:46:34,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:46:34,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:46:34,344.344 INFO    ] time= 28/10/2026 02:46:34
[2026-10-28 02:46:34,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:46:34,369.369 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:46:34,501.501 INFO    ] No existing commands found in stream
[2026-10-28 02:46:39,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:46:39,517.517 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-28 02:46:42,892.892 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:46:42,895.895 INFO    ] Checking for system updates...
[2026-10-28 02:46:42,934.934 INFO    ] 200
[2026-10-28 02:46:42,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:46:42,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:46:42,997.997 INFO    ] No update needed
[2026-10-28 02:46:42,999.999 INFO    ] Checking for camera pi updates...
[2026-10-28 02:46:43,033.033 INFO    ] 200
[2026-10-28 02:46:43,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:46:43,081.081 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:46:43,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:46:43,167.167 INFO    ] No camera update needed
[2026-10-28 02:46:43,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:46:43,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:46:43,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:46:43,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:46:45,223.223 INFO    ] ================================================
[2026-10-28 02:46:45,238.238 INFO    ] Launching Daemon at Wed Oct 28 02:46:45 IST 2026
[2026-10-28 02:46:45,249.249 INFO    ] ================================================
[2026-10-28 02:46:45,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:46:45
[2026-10-28 02:46:46,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:46:46,672.672 INFO    ] Initializing speech engine...
[2026-10-28 02:46:46,684.684 INFO    ] 2026-10-28 02:46:46
[2026-10-28 02:46:46,931.931 INFO    ] 2026-10-28 02:46:46
[2026-10-28 02:46:46,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:46:47,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:46:47,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:46:47,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:46:47,483.483 INFO    ] time= 28/10/2026 02:46:47
[2026-10-28 02:46:47,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:46:47,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:46:47,626.626 INFO    ] No existing commands found in stream
[2026-10-28 02:46:52,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:46:52,657.657 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-28 02:46:56,798.798 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:46:56,801.801 INFO    ] Checking for system updates...
[2026-10-28 02:46:56,837.837 INFO    ] 200
[2026-10-28 02:46:56,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:46:56,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:46:56,894.894 INFO    ] No update needed
[2026-10-28 02:46:56,897.897 INFO    ] Checking for camera pi updates...
[2026-10-28 02:46:56,931.931 INFO    ] 200
[2026-10-28 02:46:56,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:46:56,974.974 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:46:57,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:46:57,077.077 INFO    ] No camera update needed
[2026-10-28 02:46:57,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:46:57,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:46:57,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:46:57,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:46:59,134.134 INFO    ] ================================================
[2026-10-28 02:46:59,150.150 INFO    ] Launching Daemon at Wed Oct 28 02:46:59 IST 2026
[2026-10-28 02:46:59,162.162 INFO    ] ================================================
[2026-10-28 02:46:59,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:46:59
[2026-10-28 02:47:00,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:47:00,582.582 INFO    ] Initializing speech engine...
[2026-10-28 02:47:00,591.591 INFO    ] 2026-10-28 02:47:00
[2026-10-28 02:47:00,840.840 INFO    ] 2026-10-28 02:47:00
[2026-10-28 02:47:00,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:47:01,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:47:01,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:47:01,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:47:01,409.409 INFO    ] time= 28/10/2026 02:47:01
[2026-10-28 02:47:01,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:47:01,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:47:01,586.586 INFO    ] No existing commands found in stream
[2026-10-28 02:47:06,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:47:06,619.619 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-28 02:47:11,077.077 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:47:11,079.079 INFO    ] Checking for system updates...
[2026-10-28 02:47:11,119.119 INFO    ] 200
[2026-10-28 02:47:11,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:47:11,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:47:11,181.181 INFO    ] No update needed
[2026-10-28 02:47:11,184.184 INFO    ] Checking for camera pi updates...
[2026-10-28 02:47:11,221.221 INFO    ] 200
[2026-10-28 02:47:11,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:47:11,268.268 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:47:11,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:47:11,346.346 INFO    ] No camera update needed
[2026-10-28 02:47:11,349.349 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:47:11,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:47:11,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:47:11,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:47:13,404.404 INFO    ] ================================================
[2026-10-28 02:47:13,419.419 INFO    ] Launching Daemon at Wed Oct 28 02:47:13 IST 2026
[2026-10-28 02:47:13,430.430 INFO    ] ================================================
[2026-10-28 02:47:14,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:47:14
[2026-10-28 02:47:14,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:47:14,882.882 INFO    ] Initializing speech engine...
[2026-10-28 02:47:14,887.887 INFO    ] 2026-10-28 02:47:14
[2026-10-28 02:47:15,150.150 INFO    ] 2026-10-28 02:47:15
[2026-10-28 02:47:15,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:47:15,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:47:15,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:47:15,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:47:15,689.689 INFO    ] time= 28/10/2026 02:47:15
[2026-10-28 02:47:15,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:47:15,716.716 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:47:15,843.843 INFO    ] No existing commands found in stream
[2026-10-28 02:47:20,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:47:20,865.865 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 02:47:21,878.878 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:47:21,881.881 INFO    ] Checking for system updates...
[2026-10-28 02:47:21,920.920 INFO    ] 200
[2026-10-28 02:47:21,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:47:21,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:47:21,978.978 INFO    ] No update needed
[2026-10-28 02:47:21,980.980 INFO    ] Checking for camera pi updates...
[2026-10-28 02:47:22,017.017 INFO    ] 200
[2026-10-28 02:47:22,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:47:22,059.059 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:47:22,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:47:22,148.148 INFO    ] No camera update needed
[2026-10-28 02:47:22,150.150 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:47:22,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:47:22,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:47:22,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:47:24,205.205 INFO    ] ================================================
[2026-10-28 02:47:24,220.220 INFO    ] Launching Daemon at Wed Oct 28 02:47:24 IST 2026
[2026-10-28 02:47:24,232.232 INFO    ] ================================================
[2026-10-28 02:47:24,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:47:24
[2026-10-28 02:47:25,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:47:25,723.723 INFO    ] Initializing speech engine...
[2026-10-28 02:47:25,737.737 INFO    ] 2026-10-28 02:47:25
[2026-10-28 02:47:26,046.046 INFO    ] 2026-10-28 02:47:26
[2026-10-28 02:47:26,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:47:26,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:47:26,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:47:26,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:47:26,756.756 INFO    ] time= 28/10/2026 02:47:26
[2026-10-28 02:47:26,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:47:26,867.867 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:47:27,006.006 INFO    ] No existing commands found in stream
[2026-10-28 02:47:32,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:47:32,021.021 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-28 02:47:33,532.532 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:47:33,535.535 INFO    ] Checking for system updates...
[2026-10-28 02:47:33,575.575 INFO    ] 200
[2026-10-28 02:47:33,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:47:33,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:47:33,634.634 INFO    ] No update needed
[2026-10-28 02:47:33,636.636 INFO    ] Checking for camera pi updates...
[2026-10-28 02:47:33,669.669 INFO    ] 200
[2026-10-28 02:47:33,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:47:33,712.712 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:47:33,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:47:33,795.795 INFO    ] No camera update needed
[2026-10-28 02:47:33,797.797 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:47:33,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:47:33,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:47:33,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:47:35,849.849 INFO    ] ================================================
[2026-10-28 02:47:35,864.864 INFO    ] Launching Daemon at Wed Oct 28 02:47:35 IST 2026
[2026-10-28 02:47:35,875.875 INFO    ] ================================================
[2026-10-28 02:47:36,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:47:36
[2026-10-28 02:47:37,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:47:37,338.338 INFO    ] Initializing speech engine...
[2026-10-28 02:47:37,358.358 INFO    ] 2026-10-28 02:47:37
[2026-10-28 02:47:37,622.622 INFO    ] 2026-10-28 02:47:37
[2026-10-28 02:47:37,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:47:37,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:47:37,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:47:38,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:47:38,249.249 INFO    ] time= 28/10/2026 02:47:38
[2026-10-28 02:47:38,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:47:38,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:47:38,405.405 INFO    ] No existing commands found in stream
[2026-10-28 02:47:43,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:47:43,433.433 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-28 02:47:47,662.662 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:47:47,664.664 INFO    ] Checking for system updates...
[2026-10-28 02:47:47,700.700 INFO    ] 200
[2026-10-28 02:47:47,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:47:47,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:47:47,763.763 INFO    ] No update needed
[2026-10-28 02:47:47,766.766 INFO    ] Checking for camera pi updates...
[2026-10-28 02:47:47,803.803 INFO    ] 200
[2026-10-28 02:47:47,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:47:47,850.850 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:47:47,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:47:47,938.938 INFO    ] No camera update needed
[2026-10-28 02:47:47,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:47:47,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:47:47,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:47:47,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:47:49,993.993 INFO    ] ================================================
[2026-10-28 02:47:50,009.009 INFO    ] Launching Daemon at Wed Oct 28 02:47:50 IST 2026
[2026-10-28 02:47:50,020.020 INFO    ] ================================================
[2026-10-28 02:47:50,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:47:50
[2026-10-28 02:47:51,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:47:51,449.449 INFO    ] Initializing speech engine...
[2026-10-28 02:47:51,470.470 INFO    ] 2026-10-28 02:47:51
[2026-10-28 02:47:51,729.729 INFO    ] 2026-10-28 02:47:51
[2026-10-28 02:47:51,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:47:52,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:47:52,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:47:52,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:47:52,285.285 INFO    ] time= 28/10/2026 02:47:52
[2026-10-28 02:47:52,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:47:52,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:47:52,468.468 INFO    ] No existing commands found in stream
[2026-10-28 02:47:57,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:47:57,496.496 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-28 02:47:58,713.713 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:47:58,716.716 INFO    ] Checking for system updates...
[2026-10-28 02:47:58,754.754 INFO    ] 200
[2026-10-28 02:47:58,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:47:58,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:47:58,816.816 INFO    ] No update needed
[2026-10-28 02:47:58,819.819 INFO    ] Checking for camera pi updates...
[2026-10-28 02:47:58,858.858 INFO    ] 200
[2026-10-28 02:47:58,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:47:58,904.904 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:47:59,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:47:59,084.084 INFO    ] No camera update needed
[2026-10-28 02:47:59,087.087 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:47:59,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:47:59,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:47:59,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:48:01,155.155 INFO    ] ================================================
[2026-10-28 02:48:01,195.195 INFO    ] Launching Daemon at Wed Oct 28 02:48:01 IST 2026
[2026-10-28 02:48:01,226.226 INFO    ] ================================================
[2026-10-28 02:48:02,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:48:02
[2026-10-28 02:48:02,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:48:03,088.088 INFO    ] Initializing speech engine...
[2026-10-28 02:48:03,101.101 INFO    ] 2026-10-28 02:48:03
[2026-10-28 02:48:03,376.376 INFO    ] 2026-10-28 02:48:03
[2026-10-28 02:48:03,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:48:03,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:48:03,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:48:03,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:48:03,933.933 INFO    ] time= 28/10/2026 02:48:03
[2026-10-28 02:48:03,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:48:03,980.980 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:48:04,101.101 INFO    ] No existing commands found in stream
[2026-10-28 02:48:09,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:48:09,129.129 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 02:48:10,837.837 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:48:10,839.839 INFO    ] Checking for system updates...
[2026-10-28 02:48:10,876.876 INFO    ] 200
[2026-10-28 02:48:10,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:48:10,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:48:10,946.946 INFO    ] No update needed
[2026-10-28 02:48:10,948.948 INFO    ] Checking for camera pi updates...
[2026-10-28 02:48:10,981.981 INFO    ] 200
[2026-10-28 02:48:10,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:48:11,029.029 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:48:11,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:48:11,138.138 INFO    ] No camera update needed
[2026-10-28 02:48:11,141.141 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:48:11,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:48:11,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:48:11,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:48:13,194.194 INFO    ] ================================================
[2026-10-28 02:48:13,210.210 INFO    ] Launching Daemon at Wed Oct 28 02:48:13 IST 2026
[2026-10-28 02:48:13,222.222 INFO    ] ================================================
[2026-10-28 02:48:13,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:48:13
[2026-10-28 02:48:14,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:48:14,614.614 INFO    ] Initializing speech engine...
[2026-10-28 02:48:14,617.617 INFO    ] 2026-10-28 02:48:14
[2026-10-28 02:48:14,889.889 INFO    ] 2026-10-28 02:48:14
[2026-10-28 02:48:14,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:48:15,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:48:15,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:48:15,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:48:15,442.442 INFO    ] time= 28/10/2026 02:48:15
[2026-10-28 02:48:15,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:48:15,467.467 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:48:15,594.594 INFO    ] No existing commands found in stream
[2026-10-28 02:48:20,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:48:20,610.610 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 02:48:23,796.796 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:48:23,799.799 INFO    ] Checking for system updates...
[2026-10-28 02:48:23,838.838 INFO    ] 200
[2026-10-28 02:48:23,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:48:23,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:48:23,916.916 INFO    ] No update needed
[2026-10-28 02:48:23,919.919 INFO    ] Checking for camera pi updates...
[2026-10-28 02:48:23,979.979 INFO    ] 200
[2026-10-28 02:48:23,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:48:24,026.026 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:48:24,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:48:24,126.126 INFO    ] No camera update needed
[2026-10-28 02:48:24,128.128 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:48:24,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:48:24,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:48:24,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:48:26,182.182 INFO    ] ================================================
[2026-10-28 02:48:26,197.197 INFO    ] Launching Daemon at Wed Oct 28 02:48:26 IST 2026
[2026-10-28 02:48:26,208.208 INFO    ] ================================================
[2026-10-28 02:48:26,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:48:26
[2026-10-28 02:48:27,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:48:27,845.845 INFO    ] Initializing speech engine...
[2026-10-28 02:48:27,858.858 INFO    ] 2026-10-28 02:48:27
[2026-10-28 02:48:28,138.138 INFO    ] 2026-10-28 02:48:28
[2026-10-28 02:48:28,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:48:28,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:48:28,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:48:28,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:48:28,684.684 INFO    ] time= 28/10/2026 02:48:28
[2026-10-28 02:48:28,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:48:28,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:48:28,851.851 INFO    ] No existing commands found in stream
[2026-10-28 02:48:33,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:48:33,879.879 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-28 02:48:35,411.411 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:48:35,414.414 INFO    ] Checking for system updates...
[2026-10-28 02:48:35,455.455 INFO    ] 200
[2026-10-28 02:48:35,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:48:35,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:48:35,526.526 INFO    ] No update needed
[2026-10-28 02:48:35,529.529 INFO    ] Checking for camera pi updates...
[2026-10-28 02:48:35,564.564 INFO    ] 200
[2026-10-28 02:48:35,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:48:35,608.608 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:48:35,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:48:35,713.713 INFO    ] No camera update needed
[2026-10-28 02:48:35,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:48:35,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:48:35,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:48:35,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:48:37,776.776 INFO    ] ================================================
[2026-10-28 02:48:37,792.792 INFO    ] Launching Daemon at Wed Oct 28 02:48:37 IST 2026
[2026-10-28 02:48:37,802.802 INFO    ] ================================================
[2026-10-28 02:48:38,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:48:38
[2026-10-28 02:48:39,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:48:39,326.326 INFO    ] Initializing speech engine...
[2026-10-28 02:48:39,336.336 INFO    ] 2026-10-28 02:48:39
[2026-10-28 02:48:39,606.606 INFO    ] 2026-10-28 02:48:39
[2026-10-28 02:48:39,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:48:39,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:48:39,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:48:40,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:48:40,155.155 INFO    ] time= 28/10/2026 02:48:40
[2026-10-28 02:48:40,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:48:40,202.202 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:48:40,324.324 INFO    ] No existing commands found in stream
[2026-10-28 02:48:45,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:48:45,358.358 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 02:48:49,637.637 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:48:49,640.640 INFO    ] Checking for system updates...
[2026-10-28 02:48:49,680.680 INFO    ] 200
[2026-10-28 02:48:49,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:48:49,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:48:49,746.746 INFO    ] No update needed
[2026-10-28 02:48:49,748.748 INFO    ] Checking for camera pi updates...
[2026-10-28 02:48:49,786.786 INFO    ] 200
[2026-10-28 02:48:49,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:48:49,830.830 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:48:49,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:48:49,914.914 INFO    ] No camera update needed
[2026-10-28 02:48:49,917.917 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:48:49,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:48:49,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:48:49,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:48:51,973.973 INFO    ] ================================================
[2026-10-28 02:48:51,989.989 INFO    ] Launching Daemon at Wed Oct 28 02:48:51 IST 2026
[2026-10-28 02:48:52,000.000 INFO    ] ================================================
[2026-10-28 02:48:52,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:48:52
[2026-10-28 02:48:53,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:48:53,407.407 INFO    ] Initializing speech engine...
[2026-10-28 02:48:53,413.413 INFO    ] 2026-10-28 02:48:53
[2026-10-28 02:48:53,705.705 INFO    ] 2026-10-28 02:48:53
[2026-10-28 02:48:53,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:48:54,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:48:54,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:48:54,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:48:54,294.294 INFO    ] time= 28/10/2026 02:48:54
[2026-10-28 02:48:54,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:48:54,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:48:54,465.465 INFO    ] No existing commands found in stream
[2026-10-28 02:48:59,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:48:59,490.490 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 02:49:02,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:49:02,320.320 INFO    ] Checking for system updates...
[2026-10-28 02:49:02,369.369 INFO    ] 200
[2026-10-28 02:49:02,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:49:02,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:49:02,432.432 INFO    ] No update needed
[2026-10-28 02:49:02,435.435 INFO    ] Checking for camera pi updates...
[2026-10-28 02:49:02,478.478 INFO    ] 200
[2026-10-28 02:49:02,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:49:02,535.535 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:49:02,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:49:02,637.637 INFO    ] No camera update needed
[2026-10-28 02:49:02,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:49:02,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:49:02,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:49:02,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:49:04,703.703 INFO    ] ================================================
[2026-10-28 02:49:04,718.718 INFO    ] Launching Daemon at Wed Oct 28 02:49:04 IST 2026
[2026-10-28 02:49:04,729.729 INFO    ] ================================================
[2026-10-28 02:49:05,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:49:05
[2026-10-28 02:49:05,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:49:06,195.195 INFO    ] Initializing speech engine...
[2026-10-28 02:49:06,204.204 INFO    ] 2026-10-28 02:49:06
[2026-10-28 02:49:06,451.451 INFO    ] 2026-10-28 02:49:06
[2026-10-28 02:49:06,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:49:06,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:49:06,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:49:06,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:49:07,006.006 INFO    ] time= 28/10/2026 02:49:06
[2026-10-28 02:49:07,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:49:07,031.031 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:49:07,161.161 INFO    ] No existing commands found in stream
[2026-10-28 02:49:12,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:49:12,179.179 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-28 02:49:13,748.748 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:49:13,750.750 INFO    ] Checking for system updates...
[2026-10-28 02:49:13,786.786 INFO    ] 200
[2026-10-28 02:49:13,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:49:13,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:49:13,845.845 INFO    ] No update needed
[2026-10-28 02:49:13,848.848 INFO    ] Checking for camera pi updates...
[2026-10-28 02:49:13,889.889 INFO    ] 200
[2026-10-28 02:49:13,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:49:13,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:49:14,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:49:14,032.032 INFO    ] No camera update needed
[2026-10-28 02:49:14,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:49:14,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:49:14,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:49:14,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:49:16,089.089 INFO    ] ================================================
[2026-10-28 02:49:16,104.104 INFO    ] Launching Daemon at Wed Oct 28 02:49:16 IST 2026
[2026-10-28 02:49:16,116.116 INFO    ] ================================================
[2026-10-28 02:49:16,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:49:16
[2026-10-28 02:49:17,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:49:17,534.534 INFO    ] Initializing speech engine...
[2026-10-28 02:49:17,556.556 INFO    ] 2026-10-28 02:49:17
[2026-10-28 02:49:17,806.806 INFO    ] 2026-10-28 02:49:17
[2026-10-28 02:49:17,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:49:18,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:49:18,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:49:18,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:49:18,359.359 INFO    ] time= 28/10/2026 02:49:18
[2026-10-28 02:49:18,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:49:18,406.406 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:49:18,536.536 INFO    ] No existing commands found in stream
[2026-10-28 02:49:23,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:49:23,568.568 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 02:49:27,931.931 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:49:27,933.933 INFO    ] Checking for system updates...
[2026-10-28 02:49:27,968.968 INFO    ] 200
[2026-10-28 02:49:27,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:49:28,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:49:28,025.025 INFO    ] No update needed
[2026-10-28 02:49:28,027.027 INFO    ] Checking for camera pi updates...
[2026-10-28 02:49:28,062.062 INFO    ] 200
[2026-10-28 02:49:28,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:49:28,110.110 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:49:28,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:49:28,195.195 INFO    ] No camera update needed
[2026-10-28 02:49:28,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:49:28,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:49:28,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:49:28,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:49:30,252.252 INFO    ] ================================================
[2026-10-28 02:49:30,268.268 INFO    ] Launching Daemon at Wed Oct 28 02:49:30 IST 2026
[2026-10-28 02:49:30,279.279 INFO    ] ================================================
[2026-10-28 02:49:30,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:49:30
[2026-10-28 02:49:31,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:49:31,959.959 INFO    ] Initializing speech engine...
[2026-10-28 02:49:31,973.973 INFO    ] 2026-10-28 02:49:31
[2026-10-28 02:49:32,263.263 INFO    ] 2026-10-28 02:49:32
[2026-10-28 02:49:32,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:49:32,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:49:32,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:49:32,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:49:32,883.883 INFO    ] time= 28/10/2026 02:49:32
[2026-10-28 02:49:32,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:49:32,906.906 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:49:33,024.024 INFO    ] No existing commands found in stream
[2026-10-28 02:49:38,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:49:38,052.052 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 02:49:41,570.570 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:49:41,572.572 INFO    ] Checking for system updates...
[2026-10-28 02:49:41,608.608 INFO    ] 200
[2026-10-28 02:49:41,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:49:41,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:49:41,676.676 INFO    ] No update needed
[2026-10-28 02:49:41,679.679 INFO    ] Checking for camera pi updates...
[2026-10-28 02:49:41,712.712 INFO    ] 200
[2026-10-28 02:49:41,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:49:41,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:49:41,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:49:41,863.863 INFO    ] No camera update needed
[2026-10-28 02:49:41,866.866 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:49:41,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:49:41,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:49:41,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:49:43,918.918 INFO    ] ================================================
[2026-10-28 02:49:43,934.934 INFO    ] Launching Daemon at Wed Oct 28 02:49:43 IST 2026
[2026-10-28 02:49:43,944.944 INFO    ] ================================================
[2026-10-28 02:49:44,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:49:44
[2026-10-28 02:49:45,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:49:45,565.565 INFO    ] Initializing speech engine...
[2026-10-28 02:49:45,576.576 INFO    ] 2026-10-28 02:49:45
[2026-10-28 02:49:45,882.882 INFO    ] 2026-10-28 02:49:45
[2026-10-28 02:49:45,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:49:46,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:49:46,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:49:46,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:49:46,496.496 INFO    ] time= 28/10/2026 02:49:46
[2026-10-28 02:49:46,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:49:46,606.606 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:49:46,782.782 INFO    ] No existing commands found in stream
[2026-10-28 02:49:51,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:49:51,804.804 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-28 02:49:52,930.930 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:49:52,933.933 INFO    ] Checking for system updates...
[2026-10-28 02:49:52,970.970 INFO    ] 200
[2026-10-28 02:49:52,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:49:53,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:49:53,036.036 INFO    ] No update needed
[2026-10-28 02:49:53,039.039 INFO    ] Checking for camera pi updates...
[2026-10-28 02:49:53,074.074 INFO    ] 200
[2026-10-28 02:49:53,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:49:53,118.118 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:49:53,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:49:53,195.195 INFO    ] No camera update needed
[2026-10-28 02:49:53,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:49:53,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:49:53,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:49:53,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:49:55,255.255 INFO    ] ================================================
[2026-10-28 02:49:55,270.270 INFO    ] Launching Daemon at Wed Oct 28 02:49:55 IST 2026
[2026-10-28 02:49:55,281.281 INFO    ] ================================================
[2026-10-28 02:49:55,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:49:55
[2026-10-28 02:49:56,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:49:56,719.719 INFO    ] Initializing speech engine...
[2026-10-28 02:49:56,726.726 INFO    ] 2026-10-28 02:49:56
[2026-10-28 02:49:57,020.020 INFO    ] 2026-10-28 02:49:56
[2026-10-28 02:49:57,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:49:57,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:49:57,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:49:57,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:49:57,653.653 INFO    ] time= 28/10/2026 02:49:57
[2026-10-28 02:49:57,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:49:57,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:49:57,831.831 INFO    ] No existing commands found in stream
[2026-10-28 02:50:02,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:50:02,854.854 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-28 02:50:08,128.128 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:50:08,131.131 INFO    ] Checking for system updates...
[2026-10-28 02:50:08,166.166 INFO    ] 200
[2026-10-28 02:50:08,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:50:08,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:50:08,228.228 INFO    ] No update needed
[2026-10-28 02:50:08,230.230 INFO    ] Checking for camera pi updates...
[2026-10-28 02:50:08,263.263 INFO    ] 200
[2026-10-28 02:50:08,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:50:08,308.308 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:50:08,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:50:08,397.397 INFO    ] No camera update needed
[2026-10-28 02:50:08,400.400 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:50:08,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:50:08,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:50:08,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:50:10,452.452 INFO    ] ================================================
[2026-10-28 02:50:10,468.468 INFO    ] Launching Daemon at Wed Oct 28 02:50:10 IST 2026
[2026-10-28 02:50:10,478.478 INFO    ] ================================================
[2026-10-28 02:50:11,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:50:11
[2026-10-28 02:50:11,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:50:11,886.886 INFO    ] Initializing speech engine...
[2026-10-28 02:50:11,901.901 INFO    ] 2026-10-28 02:50:11
[2026-10-28 02:50:12,179.179 INFO    ] 2026-10-28 02:50:12
[2026-10-28 02:50:12,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:50:12,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:50:12,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:50:12,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:50:12,783.783 INFO    ] time= 28/10/2026 02:50:12
[2026-10-28 02:50:12,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:50:12,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:50:12,938.938 INFO    ] No existing commands found in stream
[2026-10-28 02:50:17,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:50:17,963.963 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-28 02:50:18,610.610 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:50:18,612.612 INFO    ] Checking for system updates...
[2026-10-28 02:50:18,648.648 INFO    ] 200
[2026-10-28 02:50:18,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:50:18,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:50:18,705.705 INFO    ] No update needed
[2026-10-28 02:50:18,708.708 INFO    ] Checking for camera pi updates...
[2026-10-28 02:50:18,741.741 INFO    ] 200
[2026-10-28 02:50:18,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:50:18,784.784 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:50:18,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:50:18,870.870 INFO    ] No camera update needed
[2026-10-28 02:50:18,873.873 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:50:18,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:50:18,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:50:18,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:50:20,926.926 INFO    ] ================================================
[2026-10-28 02:50:20,941.941 INFO    ] Launching Daemon at Wed Oct 28 02:50:20 IST 2026
[2026-10-28 02:50:20,952.952 INFO    ] ================================================
[2026-10-28 02:50:21,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:50:21
[2026-10-28 02:50:22,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:50:22,498.498 INFO    ] Initializing speech engine...
[2026-10-28 02:50:22,507.507 INFO    ] 2026-10-28 02:50:22
[2026-10-28 02:50:22,772.772 INFO    ] 2026-10-28 02:50:22
[2026-10-28 02:50:22,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:50:23,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:50:23,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:50:23,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:50:23,322.322 INFO    ] time= 28/10/2026 02:50:23
[2026-10-28 02:50:23,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:50:23,369.369 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:50:23,476.476 INFO    ] No existing commands found in stream
[2026-10-28 02:50:28,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:50:28,499.499 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-28 02:50:31,051.051 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:50:31,054.054 INFO    ] Checking for system updates...
[2026-10-28 02:50:31,090.090 INFO    ] 200
[2026-10-28 02:50:31,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:50:31,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:50:31,150.150 INFO    ] No update needed
[2026-10-28 02:50:31,152.152 INFO    ] Checking for camera pi updates...
[2026-10-28 02:50:31,190.190 INFO    ] 200
[2026-10-28 02:50:31,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:50:31,242.242 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:50:31,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:50:31,328.328 INFO    ] No camera update needed
[2026-10-28 02:50:31,330.330 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:50:31,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:50:31,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:50:31,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:50:33,387.387 INFO    ] ================================================
[2026-10-28 02:50:33,402.402 INFO    ] Launching Daemon at Wed Oct 28 02:50:33 IST 2026
[2026-10-28 02:50:33,413.413 INFO    ] ================================================
[2026-10-28 02:50:34,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:50:34
[2026-10-28 02:50:34,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:50:34,998.998 INFO    ] Initializing speech engine...
[2026-10-28 02:50:35,006.006 INFO    ] 2026-10-28 02:50:35
[2026-10-28 02:50:35,280.280 INFO    ] 2026-10-28 02:50:35
[2026-10-28 02:50:35,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:50:35,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:50:35,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:50:35,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:50:35,876.876 INFO    ] time= 28/10/2026 02:50:35
[2026-10-28 02:50:35,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:50:35,959.959 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:50:36,097.097 INFO    ] No existing commands found in stream
[2026-10-28 02:50:41,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:50:41,138.138 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 02:50:44,770.770 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:50:44,773.773 INFO    ] Checking for system updates...
[2026-10-28 02:50:44,811.811 INFO    ] 200
[2026-10-28 02:50:44,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:50:44,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:50:44,869.869 INFO    ] No update needed
[2026-10-28 02:50:44,871.871 INFO    ] Checking for camera pi updates...
[2026-10-28 02:50:44,907.907 INFO    ] 200
[2026-10-28 02:50:44,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:50:44,949.949 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:50:45,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:50:45,031.031 INFO    ] No camera update needed
[2026-10-28 02:50:45,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:50:45,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:50:45,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:50:45,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:50:47,090.090 INFO    ] ================================================
[2026-10-28 02:50:47,106.106 INFO    ] Launching Daemon at Wed Oct 28 02:50:47 IST 2026
[2026-10-28 02:50:47,116.116 INFO    ] ================================================
[2026-10-28 02:50:47,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:50:47
[2026-10-28 02:50:48,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:50:48,543.543 INFO    ] Initializing speech engine...
[2026-10-28 02:50:48,552.552 INFO    ] 2026-10-28 02:50:48
[2026-10-28 02:50:48,808.808 INFO    ] 2026-10-28 02:50:48
[2026-10-28 02:50:48,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:50:49,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:50:49,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:50:49,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:50:49,351.351 INFO    ] time= 28/10/2026 02:50:49
[2026-10-28 02:50:49,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:50:49,391.391 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:50:49,518.518 INFO    ] No existing commands found in stream
[2026-10-28 02:50:54,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:50:54,551.551 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 02:50:58,837.837 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:50:58,839.839 INFO    ] Checking for system updates...
[2026-10-28 02:50:58,875.875 INFO    ] 200
[2026-10-28 02:50:58,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:50:58,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:50:58,936.936 INFO    ] No update needed
[2026-10-28 02:50:58,938.938 INFO    ] Checking for camera pi updates...
[2026-10-28 02:50:58,975.975 INFO    ] 200
[2026-10-28 02:50:58,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:50:59,018.018 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:50:59,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:50:59,105.105 INFO    ] No camera update needed
[2026-10-28 02:50:59,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:50:59,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:50:59,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:50:59,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:51:01,160.160 INFO    ] ================================================
[2026-10-28 02:51:01,176.176 INFO    ] Launching Daemon at Wed Oct 28 02:51:01 IST 2026
[2026-10-28 02:51:01,187.187 INFO    ] ================================================
[2026-10-28 02:51:01,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:51:01
[2026-10-28 02:51:02,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:51:02,872.872 INFO    ] Initializing speech engine...
[2026-10-28 02:51:02,886.886 INFO    ] 2026-10-28 02:51:02
[2026-10-28 02:51:03,203.203 INFO    ] 2026-10-28 02:51:03
[2026-10-28 02:51:03,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:51:03,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:51:03,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:51:03,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:51:03,827.827 INFO    ] time= 28/10/2026 02:51:03
[2026-10-28 02:51:03,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:51:03,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:51:04,022.022 INFO    ] No existing commands found in stream
[2026-10-28 02:51:09,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:51:09,057.057 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-28 02:51:12,551.551 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:51:12,554.554 INFO    ] Checking for system updates...
[2026-10-28 02:51:12,591.591 INFO    ] 200
[2026-10-28 02:51:12,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:51:12,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:51:12,650.650 INFO    ] No update needed
[2026-10-28 02:51:12,652.652 INFO    ] Checking for camera pi updates...
[2026-10-28 02:51:12,687.687 INFO    ] 200
[2026-10-28 02:51:12,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:51:12,732.732 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:51:12,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:51:12,819.819 INFO    ] No camera update needed
[2026-10-28 02:51:12,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:51:12,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:51:12,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:51:12,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:51:14,877.877 INFO    ] ================================================
[2026-10-28 02:51:14,893.893 INFO    ] Launching Daemon at Wed Oct 28 02:51:14 IST 2026
[2026-10-28 02:51:14,904.904 INFO    ] ================================================
[2026-10-28 02:51:15,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:51:15
[2026-10-28 02:51:16,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:51:16,341.341 INFO    ] Initializing speech engine...
[2026-10-28 02:51:16,348.348 INFO    ] 2026-10-28 02:51:16
[2026-10-28 02:51:16,625.625 INFO    ] 2026-10-28 02:51:16
[2026-10-28 02:51:16,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:51:16,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:51:16,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:51:17,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:51:17,153.153 INFO    ] time= 28/10/2026 02:51:17
[2026-10-28 02:51:17,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:51:17,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:51:17,341.341 INFO    ] No existing commands found in stream
[2026-10-28 02:51:22,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:51:22,356.356 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-28 02:51:25,571.571 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:51:25,574.574 INFO    ] Checking for system updates...
[2026-10-28 02:51:25,610.610 INFO    ] 200
[2026-10-28 02:51:25,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:51:25,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:51:25,672.672 INFO    ] No update needed
[2026-10-28 02:51:25,674.674 INFO    ] Checking for camera pi updates...
[2026-10-28 02:51:25,708.708 INFO    ] 200
[2026-10-28 02:51:25,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:51:25,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:51:25,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:51:25,833.833 INFO    ] No camera update needed
[2026-10-28 02:51:25,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:51:25,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:51:25,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:51:25,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:51:27,889.889 INFO    ] ================================================
[2026-10-28 02:51:27,904.904 INFO    ] Launching Daemon at Wed Oct 28 02:51:27 IST 2026
[2026-10-28 02:51:27,915.915 INFO    ] ================================================
[2026-10-28 02:51:28,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:51:28
[2026-10-28 02:51:29,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:51:29,319.319 INFO    ] Initializing speech engine...
[2026-10-28 02:51:29,327.327 INFO    ] 2026-10-28 02:51:29
[2026-10-28 02:51:29,621.621 INFO    ] 2026-10-28 02:51:29
[2026-10-28 02:51:29,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:51:29,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:51:29,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:51:30,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:51:30,152.152 INFO    ] time= 28/10/2026 02:51:30
[2026-10-28 02:51:30,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:51:30,256.256 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:51:30,391.391 INFO    ] No existing commands found in stream
[2026-10-28 02:51:35,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:51:35,416.416 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-28 02:51:37,411.411 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:51:37,414.414 INFO    ] Checking for system updates...
[2026-10-28 02:51:37,450.450 INFO    ] 200
[2026-10-28 02:51:37,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:51:37,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:51:37,507.507 INFO    ] No update needed
[2026-10-28 02:51:37,510.510 INFO    ] Checking for camera pi updates...
[2026-10-28 02:51:37,543.543 INFO    ] 200
[2026-10-28 02:51:37,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:51:37,586.586 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:51:37,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:51:37,678.678 INFO    ] No camera update needed
[2026-10-28 02:51:37,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:51:37,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:51:37,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:51:37,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:51:39,734.734 INFO    ] ================================================
[2026-10-28 02:51:39,749.749 INFO    ] Launching Daemon at Wed Oct 28 02:51:39 IST 2026
[2026-10-28 02:51:39,760.760 INFO    ] ================================================
[2026-10-28 02:51:40,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:51:40
[2026-10-28 02:51:41,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:51:41,383.383 INFO    ] Initializing speech engine...
[2026-10-28 02:51:41,394.394 INFO    ] 2026-10-28 02:51:41
[2026-10-28 02:51:41,705.705 INFO    ] 2026-10-28 02:51:41
[2026-10-28 02:51:41,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:51:42,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:51:42,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:51:42,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:51:42,372.372 INFO    ] time= 28/10/2026 02:51:42
[2026-10-28 02:51:42,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:51:42,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:51:42,635.635 INFO    ] No existing commands found in stream
[2026-10-28 02:51:47,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:51:47,663.663 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 02:51:51,440.440 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:51:51,443.443 INFO    ] Checking for system updates...
[2026-10-28 02:51:51,480.480 INFO    ] 200
[2026-10-28 02:51:51,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:51:51,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:51:51,540.540 INFO    ] No update needed
[2026-10-28 02:51:51,543.543 INFO    ] Checking for camera pi updates...
[2026-10-28 02:51:51,578.578 INFO    ] 200
[2026-10-28 02:51:51,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:51:51,627.627 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:51:51,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:51:51,714.714 INFO    ] No camera update needed
[2026-10-28 02:51:51,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:51:51,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:51:51,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:51:51,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:51:53,774.774 INFO    ] ================================================
[2026-10-28 02:51:53,789.789 INFO    ] Launching Daemon at Wed Oct 28 02:51:53 IST 2026
[2026-10-28 02:51:53,800.800 INFO    ] ================================================
[2026-10-28 02:51:54,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:51:54
[2026-10-28 02:51:55,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:51:55,429.429 INFO    ] Initializing speech engine...
[2026-10-28 02:51:55,432.432 INFO    ] 2026-10-28 02:51:55
[2026-10-28 02:51:55,701.701 INFO    ] 2026-10-28 02:51:55
[2026-10-28 02:51:55,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:51:56,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:51:56,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:51:56,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:51:56,277.277 INFO    ] time= 28/10/2026 02:51:56
[2026-10-28 02:51:56,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:51:56,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:51:56,483.483 INFO    ] No existing commands found in stream
[2026-10-28 02:52:01,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:52:01,512.512 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-28 02:52:02,634.634 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:52:02,639.639 INFO    ] Checking for system updates...
[2026-10-28 02:52:02,688.688 INFO    ] 200
[2026-10-28 02:52:02,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:52:02,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:52:02,758.758 INFO    ] No update needed
[2026-10-28 02:52:02,761.761 INFO    ] Checking for camera pi updates...
[2026-10-28 02:52:02,802.802 INFO    ] 200
[2026-10-28 02:52:02,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:52:02,854.854 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:52:02,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:52:02,985.985 INFO    ] No camera update needed
[2026-10-28 02:52:02,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:52:02,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:52:03,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:52:03,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:52:05,049.049 INFO    ] ================================================
[2026-10-28 02:52:05,068.068 INFO    ] Launching Daemon at Wed Oct 28 02:52:05 IST 2026
[2026-10-28 02:52:05,079.079 INFO    ] ================================================
[2026-10-28 02:52:05,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:52:05
[2026-10-28 02:52:06,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:52:06,538.538 INFO    ] Initializing speech engine...
[2026-10-28 02:52:06,545.545 INFO    ] 2026-10-28 02:52:06
[2026-10-28 02:52:06,793.793 INFO    ] 2026-10-28 02:52:06
[2026-10-28 02:52:06,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:52:07,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:52:07,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:52:07,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:52:07,350.350 INFO    ] time= 28/10/2026 02:52:07
[2026-10-28 02:52:07,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:52:07,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:52:07,488.488 INFO    ] No existing commands found in stream
[2026-10-28 02:52:12,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:52:12,515.515 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 02:52:13,853.853 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:52:13,856.856 INFO    ] Checking for system updates...
[2026-10-28 02:52:13,896.896 INFO    ] 200
[2026-10-28 02:52:13,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:52:13,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:52:13,952.952 INFO    ] No update needed
[2026-10-28 02:52:13,955.955 INFO    ] Checking for camera pi updates...
[2026-10-28 02:52:13,988.988 INFO    ] 200
[2026-10-28 02:52:13,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:52:14,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:52:14,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:52:14,215.215 INFO    ] No camera update needed
[2026-10-28 02:52:14,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:52:14,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:52:14,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:52:14,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:52:16,270.270 INFO    ] ================================================
[2026-10-28 02:52:16,292.292 INFO    ] Launching Daemon at Wed Oct 28 02:52:16 IST 2026
[2026-10-28 02:52:16,302.302 INFO    ] ================================================
[2026-10-28 02:52:16,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:52:16
[2026-10-28 02:52:17,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:52:17,734.734 INFO    ] Initializing speech engine...
[2026-10-28 02:52:17,749.749 INFO    ] 2026-10-28 02:52:17
[2026-10-28 02:52:18,019.019 INFO    ] 2026-10-28 02:52:18
[2026-10-28 02:52:18,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:52:18,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:52:18,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:52:18,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:52:18,602.602 INFO    ] time= 28/10/2026 02:52:18
[2026-10-28 02:52:18,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:52:18,656.656 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:52:18,787.787 INFO    ] No existing commands found in stream
[2026-10-28 02:52:23,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:52:23,818.818 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-28 02:52:25,653.653 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:52:25,656.656 INFO    ] Checking for system updates...
[2026-10-28 02:52:25,692.692 INFO    ] 200
[2026-10-28 02:52:25,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:52:25,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:52:25,750.750 INFO    ] No update needed
[2026-10-28 02:52:25,752.752 INFO    ] Checking for camera pi updates...
[2026-10-28 02:52:25,785.785 INFO    ] 200
[2026-10-28 02:52:25,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:52:25,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:52:25,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:52:25,925.925 INFO    ] No camera update needed
[2026-10-28 02:52:25,928.928 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:52:25,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:52:25,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:52:25,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:52:27,981.981 INFO    ] ================================================
[2026-10-28 02:52:28,996.996 INFO    ] Launching Daemon at Wed Oct 28 02:52:27 IST 2026
[2026-10-28 02:52:28,007.007 INFO    ] ================================================
[2026-10-28 02:52:28,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:52:28
[2026-10-28 02:52:29,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:52:29,606.606 INFO    ] Initializing speech engine...
[2026-10-28 02:52:29,612.612 INFO    ] 2026-10-28 02:52:29
[2026-10-28 02:52:29,895.895 INFO    ] 2026-10-28 02:52:29
[2026-10-28 02:52:29,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:52:30,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:52:30,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:52:30,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:52:30,445.445 INFO    ] time= 28/10/2026 02:52:30
[2026-10-28 02:52:30,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:52:30,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:52:30,621.621 INFO    ] No existing commands found in stream
[2026-10-28 02:52:35,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:52:35,656.656 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 02:52:38,837.837 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:52:38,840.840 INFO    ] Checking for system updates...
[2026-10-28 02:52:38,876.876 INFO    ] 200
[2026-10-28 02:52:38,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:52:38,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:52:38,935.935 INFO    ] No update needed
[2026-10-28 02:52:38,937.937 INFO    ] Checking for camera pi updates...
[2026-10-28 02:52:38,971.971 INFO    ] 200
[2026-10-28 02:52:38,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:52:39,016.016 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:52:39,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:52:39,100.100 INFO    ] No camera update needed
[2026-10-28 02:52:39,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:52:39,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:52:39,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:52:39,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:52:41,158.158 INFO    ] ================================================
[2026-10-28 02:52:41,173.173 INFO    ] Launching Daemon at Wed Oct 28 02:52:41 IST 2026
[2026-10-28 02:52:41,184.184 INFO    ] ================================================
[2026-10-28 02:52:41,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:52:41
[2026-10-28 02:52:42,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:52:42,586.586 INFO    ] Initializing speech engine...
[2026-10-28 02:52:42,591.591 INFO    ] 2026-10-28 02:52:42
[2026-10-28 02:52:42,887.887 INFO    ] 2026-10-28 02:52:42
[2026-10-28 02:52:42,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:52:43,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:52:43,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:52:43,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:52:43,387.387 INFO    ] time= 28/10/2026 02:52:43
[2026-10-28 02:52:43,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:52:43,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:52:43,664.664 INFO    ] No existing commands found in stream
[2026-10-28 02:52:48,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:52:48,697.697 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 02:52:52,233.233 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:52:52,235.235 INFO    ] Checking for system updates...
[2026-10-28 02:52:52,271.271 INFO    ] 200
[2026-10-28 02:52:52,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:52:52,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:52:52,329.329 INFO    ] No update needed
[2026-10-28 02:52:52,332.332 INFO    ] Checking for camera pi updates...
[2026-10-28 02:52:52,366.366 INFO    ] 200
[2026-10-28 02:52:52,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:52:52,409.409 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:52:52,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:52:52,495.495 INFO    ] No camera update needed
[2026-10-28 02:52:52,497.497 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:52:52,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:52:52,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:52:52,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:52:54,551.551 INFO    ] ================================================
[2026-10-28 02:52:54,566.566 INFO    ] Launching Daemon at Wed Oct 28 02:52:54 IST 2026
[2026-10-28 02:52:54,577.577 INFO    ] ================================================
[2026-10-28 02:52:55,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:52:55
[2026-10-28 02:52:55,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:52:56,173.173 INFO    ] Initializing speech engine...
[2026-10-28 02:52:56,181.181 INFO    ] 2026-10-28 02:52:56
[2026-10-28 02:52:56,465.465 INFO    ] 2026-10-28 02:52:56
[2026-10-28 02:52:56,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:52:56,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:52:56,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:52:56,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:52:57,001.001 INFO    ] time= 28/10/2026 02:52:56
[2026-10-28 02:52:57,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:52:57,048.048 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:52:57,179.179 INFO    ] No existing commands found in stream
[2026-10-28 02:53:02,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:53:02,209.209 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-28 02:53:04,951.951 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:53:04,954.954 INFO    ] Checking for system updates...
[2026-10-28 02:53:04,990.990 INFO    ] 200
[2026-10-28 02:53:04,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:53:05,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:53:05,050.050 INFO    ] No update needed
[2026-10-28 02:53:05,052.052 INFO    ] Checking for camera pi updates...
[2026-10-28 02:53:05,087.087 INFO    ] 200
[2026-10-28 02:53:05,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:53:05,131.131 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:53:05,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:53:05,232.232 INFO    ] No camera update needed
[2026-10-28 02:53:05,235.235 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:53:05,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:53:05,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:53:05,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:53:07,290.290 INFO    ] ================================================
[2026-10-28 02:53:07,306.306 INFO    ] Launching Daemon at Wed Oct 28 02:53:07 IST 2026
[2026-10-28 02:53:07,317.317 INFO    ] ================================================
[2026-10-28 02:53:07,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:53:07
[2026-10-28 02:53:08,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:53:08,843.843 INFO    ] Initializing speech engine...
[2026-10-28 02:53:08,852.852 INFO    ] 2026-10-28 02:53:08
[2026-10-28 02:53:09,163.163 INFO    ] 2026-10-28 02:53:09
[2026-10-28 02:53:09,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:53:09,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:53:09,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:53:09,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:53:09,723.723 INFO    ] time= 28/10/2026 02:53:09
[2026-10-28 02:53:09,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:53:09,741.741 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:53:09,870.870 INFO    ] No existing commands found in stream
[2026-10-28 02:53:14,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:53:14,899.899 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-28 02:53:19,321.321 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:53:19,324.324 INFO    ] Checking for system updates...
[2026-10-28 02:53:19,362.362 INFO    ] 200
[2026-10-28 02:53:19,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:53:19,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:53:19,420.420 INFO    ] No update needed
[2026-10-28 02:53:19,423.423 INFO    ] Checking for camera pi updates...
[2026-10-28 02:53:19,457.457 INFO    ] 200
[2026-10-28 02:53:19,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:53:19,500.500 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:53:19,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:53:19,584.584 INFO    ] No camera update needed
[2026-10-28 02:53:19,586.586 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:53:19,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:53:19,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:53:19,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:53:21,638.638 INFO    ] ================================================
[2026-10-28 02:53:21,655.655 INFO    ] Launching Daemon at Wed Oct 28 02:53:21 IST 2026
[2026-10-28 02:53:21,666.666 INFO    ] ================================================
[2026-10-28 02:53:22,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:53:22
[2026-10-28 02:53:22,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:53:23,119.119 INFO    ] Initializing speech engine...
[2026-10-28 02:53:23,128.128 INFO    ] 2026-10-28 02:53:23
[2026-10-28 02:53:23,377.377 INFO    ] 2026-10-28 02:53:23
[2026-10-28 02:53:23,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:53:23,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:53:23,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:53:23,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:53:23,964.964 INFO    ] time= 28/10/2026 02:53:23
[2026-10-28 02:53:23,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:53:23,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:53:24,146.146 INFO    ] No existing commands found in stream
[2026-10-28 02:53:29,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:53:29,169.169 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-28 02:53:32,145.145 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:53:32,149.149 INFO    ] Checking for system updates...
[2026-10-28 02:53:32,195.195 INFO    ] 200
[2026-10-28 02:53:32,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:53:32,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:53:32,266.266 INFO    ] No update needed
[2026-10-28 02:53:32,269.269 INFO    ] Checking for camera pi updates...
[2026-10-28 02:53:32,305.305 INFO    ] 200
[2026-10-28 02:53:32,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:53:32,357.357 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:53:32,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:53:32,452.452 INFO    ] No camera update needed
[2026-10-28 02:53:32,455.455 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:53:32,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:53:32,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:53:32,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:53:34,511.511 INFO    ] ================================================
[2026-10-28 02:53:34,530.530 INFO    ] Launching Daemon at Wed Oct 28 02:53:34 IST 2026
[2026-10-28 02:53:34,543.543 INFO    ] ================================================
[2026-10-28 02:53:35,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:53:35
[2026-10-28 02:53:35,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:53:35,998.998 INFO    ] Initializing speech engine...
[2026-10-28 02:53:36,016.016 INFO    ] 2026-10-28 02:53:36
[2026-10-28 02:53:36,304.304 INFO    ] 2026-10-28 02:53:36
[2026-10-28 02:53:36,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:53:36,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:53:36,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:53:36,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:53:36,907.907 INFO    ] time= 28/10/2026 02:53:36
[2026-10-28 02:53:36,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:53:36,964.964 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:53:37,098.098 INFO    ] No existing commands found in stream
[2026-10-28 02:53:42,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:53:42,131.131 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 02:53:45,454.454 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:53:45,456.456 INFO    ] Checking for system updates...
[2026-10-28 02:53:45,492.492 INFO    ] 200
[2026-10-28 02:53:45,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:53:45,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:53:45,549.549 INFO    ] No update needed
[2026-10-28 02:53:45,551.551 INFO    ] Checking for camera pi updates...
[2026-10-28 02:53:45,584.584 INFO    ] 200
[2026-10-28 02:53:45,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:53:45,627.627 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:53:45,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:53:45,717.717 INFO    ] No camera update needed
[2026-10-28 02:53:45,720.720 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:53:45,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:53:45,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:53:45,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:53:47,774.774 INFO    ] ================================================
[2026-10-28 02:53:47,789.789 INFO    ] Launching Daemon at Wed Oct 28 02:53:47 IST 2026
[2026-10-28 02:53:47,800.800 INFO    ] ================================================
[2026-10-28 02:53:48,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:53:48
[2026-10-28 02:53:48,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:53:49,213.213 INFO    ] Initializing speech engine...
[2026-10-28 02:53:49,237.237 INFO    ] 2026-10-28 02:53:49
[2026-10-28 02:53:49,511.511 INFO    ] 2026-10-28 02:53:49
[2026-10-28 02:53:49,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:53:49,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:53:49,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:53:50,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:53:50,123.123 INFO    ] time= 28/10/2026 02:53:50
[2026-10-28 02:53:50,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:53:50,161.161 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:53:50,303.303 INFO    ] No existing commands found in stream
[2026-10-28 02:53:55,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:53:55,331.331 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-28 02:53:58,706.706 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:53:58,709.709 INFO    ] Checking for system updates...
[2026-10-28 02:53:58,750.750 INFO    ] 200
[2026-10-28 02:53:58,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:53:58,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:53:58,811.811 INFO    ] No update needed
[2026-10-28 02:53:58,814.814 INFO    ] Checking for camera pi updates...
[2026-10-28 02:53:58,849.849 INFO    ] 200
[2026-10-28 02:53:58,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:53:58,895.895 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:53:59,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:53:59,023.023 INFO    ] No camera update needed
[2026-10-28 02:53:59,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:53:59,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:53:59,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:53:59,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:54:01,091.091 INFO    ] ================================================
[2026-10-28 02:54:01,122.122 INFO    ] Launching Daemon at Wed Oct 28 02:54:01 IST 2026
[2026-10-28 02:54:01,154.154 INFO    ] ================================================
[2026-10-28 02:54:01,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:54:01
[2026-10-28 02:54:02,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:54:02,938.938 INFO    ] Initializing speech engine...
[2026-10-28 02:54:02,947.947 INFO    ] 2026-10-28 02:54:02
[2026-10-28 02:54:03,250.250 INFO    ] 2026-10-28 02:54:03
[2026-10-28 02:54:03,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:54:03,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:54:03,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:54:03,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:54:03,815.815 INFO    ] time= 28/10/2026 02:54:03
[2026-10-28 02:54:03,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:54:03,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:54:03,986.986 INFO    ] No existing commands found in stream
[2026-10-28 02:54:09,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:54:09,019.019 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-28 02:54:10,936.936 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:54:10,939.939 INFO    ] Checking for system updates...
[2026-10-28 02:54:10,976.976 INFO    ] 200
[2026-10-28 02:54:10,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:54:11,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:54:11,035.035 INFO    ] No update needed
[2026-10-28 02:54:11,038.038 INFO    ] Checking for camera pi updates...
[2026-10-28 02:54:11,073.073 INFO    ] 200
[2026-10-28 02:54:11,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:54:11,117.117 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:54:11,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:54:11,202.202 INFO    ] No camera update needed
[2026-10-28 02:54:11,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:54:11,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:54:11,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:54:11,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:54:13,260.260 INFO    ] ================================================
[2026-10-28 02:54:13,275.275 INFO    ] Launching Daemon at Wed Oct 28 02:54:13 IST 2026
[2026-10-28 02:54:13,286.286 INFO    ] ================================================
[2026-10-28 02:54:13,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:54:13
[2026-10-28 02:54:14,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:54:14,908.908 INFO    ] Initializing speech engine...
[2026-10-28 02:54:14,922.922 INFO    ] 2026-10-28 02:54:14
[2026-10-28 02:54:15,236.236 INFO    ] 2026-10-28 02:54:15
[2026-10-28 02:54:15,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:54:15,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:54:15,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:54:15,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:54:15,748.748 INFO    ] time= 28/10/2026 02:54:15
[2026-10-28 02:54:15,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:54:15,795.795 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:54:15,917.917 INFO    ] No existing commands found in stream
[2026-10-28 02:54:20,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:54:20,951.951 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-28 02:54:22,455.455 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:54:22,458.458 INFO    ] Checking for system updates...
[2026-10-28 02:54:22,495.495 INFO    ] 200
[2026-10-28 02:54:22,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:54:22,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:54:22,553.553 INFO    ] No update needed
[2026-10-28 02:54:22,556.556 INFO    ] Checking for camera pi updates...
[2026-10-28 02:54:22,591.591 INFO    ] 200
[2026-10-28 02:54:22,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:54:22,636.636 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:54:22,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:54:22,811.811 INFO    ] No camera update needed
[2026-10-28 02:54:22,814.814 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:54:22,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:54:22,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:54:22,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:54:24,870.870 INFO    ] ================================================
[2026-10-28 02:54:24,886.886 INFO    ] Launching Daemon at Wed Oct 28 02:54:24 IST 2026
[2026-10-28 02:54:24,896.896 INFO    ] ================================================
[2026-10-28 02:54:25,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:54:25
[2026-10-28 02:54:26,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:54:26,322.322 INFO    ] Initializing speech engine...
[2026-10-28 02:54:26,332.332 INFO    ] 2026-10-28 02:54:26
[2026-10-28 02:54:26,580.580 INFO    ] 2026-10-28 02:54:26
[2026-10-28 02:54:26,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:54:26,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:54:26,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:54:27,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:54:27,135.135 INFO    ] time= 28/10/2026 02:54:27
[2026-10-28 02:54:27,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:54:27,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:54:27,311.311 INFO    ] No existing commands found in stream
[2026-10-28 02:54:32,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:54:32,345.345 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-28 02:54:33,714.714 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:54:33,717.717 INFO    ] Checking for system updates...
[2026-10-28 02:54:33,753.753 INFO    ] 200
[2026-10-28 02:54:33,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:54:33,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:54:33,817.817 INFO    ] No update needed
[2026-10-28 02:54:33,819.819 INFO    ] Checking for camera pi updates...
[2026-10-28 02:54:33,856.856 INFO    ] 200
[2026-10-28 02:54:33,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:54:33,903.903 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:54:33,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:54:33,984.984 INFO    ] No camera update needed
[2026-10-28 02:54:33,987.987 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:54:33,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:54:33,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:54:33,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:54:36,040.040 INFO    ] ================================================
[2026-10-28 02:54:36,055.055 INFO    ] Launching Daemon at Wed Oct 28 02:54:36 IST 2026
[2026-10-28 02:54:36,066.066 INFO    ] ================================================
[2026-10-28 02:54:36,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:54:36
[2026-10-28 02:54:37,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:54:37,697.697 INFO    ] Initializing speech engine...
[2026-10-28 02:54:37,708.708 INFO    ] 2026-10-28 02:54:37
[2026-10-28 02:54:38,020.020 INFO    ] 2026-10-28 02:54:37
[2026-10-28 02:54:38,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:54:38,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:54:38,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:54:38,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:54:38,695.695 INFO    ] time= 28/10/2026 02:54:38
[2026-10-28 02:54:38,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:54:38,784.784 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:54:38,931.931 INFO    ] No existing commands found in stream
[2026-10-28 02:54:43,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:54:43,948.948 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 02:54:47,137.137 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:54:47,140.140 INFO    ] Checking for system updates...
[2026-10-28 02:54:47,177.177 INFO    ] 200
[2026-10-28 02:54:47,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:54:47,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:54:47,235.235 INFO    ] No update needed
[2026-10-28 02:54:47,238.238 INFO    ] Checking for camera pi updates...
[2026-10-28 02:54:47,271.271 INFO    ] 200
[2026-10-28 02:54:47,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:54:47,314.314 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:54:47,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:54:47,398.398 INFO    ] No camera update needed
[2026-10-28 02:54:47,400.400 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:54:47,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:54:47,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:54:47,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:54:49,452.452 INFO    ] ================================================
[2026-10-28 02:54:49,468.468 INFO    ] Launching Daemon at Wed Oct 28 02:54:49 IST 2026
[2026-10-28 02:54:49,478.478 INFO    ] ================================================
[2026-10-28 02:54:50,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:54:50
[2026-10-28 02:54:50,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:54:50,894.894 INFO    ] Initializing speech engine...
[2026-10-28 02:54:50,912.912 INFO    ] 2026-10-28 02:54:50
[2026-10-28 02:54:51,159.159 INFO    ] 2026-10-28 02:54:51
[2026-10-28 02:54:51,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:54:51,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:54:51,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:54:51,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:54:51,714.714 INFO    ] time= 28/10/2026 02:54:51
[2026-10-28 02:54:51,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:54:51,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:54:51,885.885 INFO    ] No existing commands found in stream
[2026-10-28 02:54:56,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:54:56,913.913 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 02:54:59,315.315 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:54:59,318.318 INFO    ] Checking for system updates...
[2026-10-28 02:54:59,353.353 INFO    ] 200
[2026-10-28 02:54:59,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:54:59,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:54:59,411.411 INFO    ] No update needed
[2026-10-28 02:54:59,413.413 INFO    ] Checking for camera pi updates...
[2026-10-28 02:54:59,446.446 INFO    ] 200
[2026-10-28 02:54:59,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:54:59,489.489 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:54:59,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:54:59,564.564 INFO    ] No camera update needed
[2026-10-28 02:54:59,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:54:59,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:54:59,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:54:59,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:55:01,647.647 INFO    ] ================================================
[2026-10-28 02:55:01,688.688 INFO    ] Launching Daemon at Wed Oct 28 02:55:01 IST 2026
[2026-10-28 02:55:01,718.718 INFO    ] ================================================
[2026-10-28 02:55:02,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:55:02
[2026-10-28 02:55:03,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:55:03,570.570 INFO    ] Initializing speech engine...
[2026-10-28 02:55:03,576.576 INFO    ] 2026-10-28 02:55:03
[2026-10-28 02:55:03,838.838 INFO    ] 2026-10-28 02:55:03
[2026-10-28 02:55:03,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:55:04,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:55:04,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:55:04,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:55:04,423.423 INFO    ] time= 28/10/2026 02:55:04
[2026-10-28 02:55:04,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:55:04,448.448 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:55:04,585.585 INFO    ] No existing commands found in stream
[2026-10-28 02:55:09,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:55:09,612.612 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-28 02:55:12,521.521 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:55:12,524.524 INFO    ] Checking for system updates...
[2026-10-28 02:55:12,560.560 INFO    ] 200
[2026-10-28 02:55:12,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:55:12,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:55:12,623.623 INFO    ] No update needed
[2026-10-28 02:55:12,626.626 INFO    ] Checking for camera pi updates...
[2026-10-28 02:55:12,659.659 INFO    ] 200
[2026-10-28 02:55:12,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:55:12,702.702 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:55:12,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:55:12,777.777 INFO    ] No camera update needed
[2026-10-28 02:55:12,779.779 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:55:12,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:55:12,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:55:12,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:55:14,834.834 INFO    ] ================================================
[2026-10-28 02:55:14,850.850 INFO    ] Launching Daemon at Wed Oct 28 02:55:14 IST 2026
[2026-10-28 02:55:14,861.861 INFO    ] ================================================
[2026-10-28 02:55:15,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:55:15
[2026-10-28 02:55:16,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:55:16,267.267 INFO    ] Initializing speech engine...
[2026-10-28 02:55:16,285.285 INFO    ] 2026-10-28 02:55:16
[2026-10-28 02:55:16,536.536 INFO    ] 2026-10-28 02:55:16
[2026-10-28 02:55:16,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:55:16,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:55:16,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:55:17,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:55:17,097.097 INFO    ] time= 28/10/2026 02:55:17
[2026-10-28 02:55:17,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:55:17,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:55:17,250.250 INFO    ] No existing commands found in stream
[2026-10-28 02:55:22,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:55:22,265.265 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-28 02:55:26,537.537 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:55:26,540.540 INFO    ] Checking for system updates...
[2026-10-28 02:55:26,577.577 INFO    ] 200
[2026-10-28 02:55:26,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:55:26,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:55:26,641.641 INFO    ] No update needed
[2026-10-28 02:55:26,644.644 INFO    ] Checking for camera pi updates...
[2026-10-28 02:55:26,679.679 INFO    ] 200
[2026-10-28 02:55:26,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:55:26,723.723 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:55:26,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:55:26,800.800 INFO    ] No camera update needed
[2026-10-28 02:55:26,804.804 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:55:26,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:55:26,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:55:26,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:55:28,862.862 INFO    ] ================================================
[2026-10-28 02:55:28,878.878 INFO    ] Launching Daemon at Wed Oct 28 02:55:28 IST 2026
[2026-10-28 02:55:28,890.890 INFO    ] ================================================
[2026-10-28 02:55:29,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:55:29
[2026-10-28 02:55:30,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:55:30,530.530 INFO    ] Initializing speech engine...
[2026-10-28 02:55:30,544.544 INFO    ] 2026-10-28 02:55:30
[2026-10-28 02:55:30,861.861 INFO    ] 2026-10-28 02:55:30
[2026-10-28 02:55:30,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:55:31,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:55:31,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:55:31,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:55:31,591.591 INFO    ] time= 28/10/2026 02:55:31
[2026-10-28 02:55:31,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:55:31,691.691 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:55:31,828.828 INFO    ] No existing commands found in stream
[2026-10-28 02:55:36,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:55:36,848.848 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-28 02:55:40,057.057 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:55:40,060.060 INFO    ] Checking for system updates...
[2026-10-28 02:55:40,097.097 INFO    ] 200
[2026-10-28 02:55:40,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:55:40,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:55:40,157.157 INFO    ] No update needed
[2026-10-28 02:55:40,160.160 INFO    ] Checking for camera pi updates...
[2026-10-28 02:55:40,195.195 INFO    ] 200
[2026-10-28 02:55:40,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:55:40,244.244 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:55:40,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:55:40,331.331 INFO    ] No camera update needed
[2026-10-28 02:55:40,334.334 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:55:40,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:55:40,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:55:40,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:55:42,390.390 INFO    ] ================================================
[2026-10-28 02:55:42,406.406 INFO    ] Launching Daemon at Wed Oct 28 02:55:42 IST 2026
[2026-10-28 02:55:42,417.417 INFO    ] ================================================
[2026-10-28 02:55:43,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:55:43
[2026-10-28 02:55:43,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:55:43,887.887 INFO    ] Initializing speech engine...
[2026-10-28 02:55:43,896.896 INFO    ] 2026-10-28 02:55:43
[2026-10-28 02:55:44,155.155 INFO    ] 2026-10-28 02:55:44
[2026-10-28 02:55:44,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:55:44,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:55:44,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:55:44,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:55:44,715.715 INFO    ] time= 28/10/2026 02:55:44
[2026-10-28 02:55:44,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:55:44,739.739 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:55:44,864.864 INFO    ] No existing commands found in stream
[2026-10-28 02:55:49,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:55:49,882.882 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-28 02:55:53,618.618 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:55:53,621.621 INFO    ] Checking for system updates...
[2026-10-28 02:55:53,661.661 INFO    ] 200
[2026-10-28 02:55:53,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:55:53,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:55:53,721.721 INFO    ] No update needed
[2026-10-28 02:55:53,724.724 INFO    ] Checking for camera pi updates...
[2026-10-28 02:55:53,762.762 INFO    ] 200
[2026-10-28 02:55:53,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:55:53,811.811 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:55:53,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:55:53,918.918 INFO    ] No camera update needed
[2026-10-28 02:55:53,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:55:53,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:55:53,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:55:53,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:55:55,977.977 INFO    ] ================================================
[2026-10-28 02:55:55,993.993 INFO    ] Launching Daemon at Wed Oct 28 02:55:55 IST 2026
[2026-10-28 02:55:56,005.005 INFO    ] ================================================
[2026-10-28 02:55:56,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:55:56
[2026-10-28 02:55:57,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:55:57,426.426 INFO    ] Initializing speech engine...
[2026-10-28 02:55:57,436.436 INFO    ] 2026-10-28 02:55:57
[2026-10-28 02:55:57,682.682 INFO    ] 2026-10-28 02:55:57
[2026-10-28 02:55:57,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:55:57,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:55:57,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:55:58,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:55:58,236.236 INFO    ] time= 28/10/2026 02:55:58
[2026-10-28 02:55:58,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:55:58,276.276 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:55:58,403.403 INFO    ] No existing commands found in stream
[2026-10-28 02:56:03,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:56:03,429.429 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-28 02:56:06,096.096 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:56:06,099.099 INFO    ] Checking for system updates...
[2026-10-28 02:56:06,134.134 INFO    ] 200
[2026-10-28 02:56:06,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:56:06,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:56:06,191.191 INFO    ] No update needed
[2026-10-28 02:56:06,194.194 INFO    ] Checking for camera pi updates...
[2026-10-28 02:56:06,226.226 INFO    ] 200
[2026-10-28 02:56:06,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:56:06,269.269 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:56:06,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:56:06,363.363 INFO    ] No camera update needed
[2026-10-28 02:56:06,365.365 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:56:06,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:56:06,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:56:06,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:56:08,419.419 INFO    ] ================================================
[2026-10-28 02:56:08,434.434 INFO    ] Launching Daemon at Wed Oct 28 02:56:08 IST 2026
[2026-10-28 02:56:08,445.445 INFO    ] ================================================
[2026-10-28 02:56:09,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:56:09
[2026-10-28 02:56:09,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:56:10,006.006 INFO    ] Initializing speech engine...
[2026-10-28 02:56:10,016.016 INFO    ] 2026-10-28 02:56:10
[2026-10-28 02:56:10,279.279 INFO    ] 2026-10-28 02:56:10
[2026-10-28 02:56:10,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:56:10,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:56:10,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:56:10,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:56:10,866.866 INFO    ] time= 28/10/2026 02:56:10
[2026-10-28 02:56:10,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:56:10,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:56:11,022.022 INFO    ] No existing commands found in stream
[2026-10-28 02:56:16,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:56:16,051.051 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-28 02:56:19,479.479 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:56:19,482.482 INFO    ] Checking for system updates...
[2026-10-28 02:56:19,518.518 INFO    ] 200
[2026-10-28 02:56:19,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:56:19,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:56:19,576.576 INFO    ] No update needed
[2026-10-28 02:56:19,579.579 INFO    ] Checking for camera pi updates...
[2026-10-28 02:56:19,613.613 INFO    ] 200
[2026-10-28 02:56:19,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:56:19,659.659 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:56:19,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:56:19,751.751 INFO    ] No camera update needed
[2026-10-28 02:56:19,753.753 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:56:19,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:56:19,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:56:19,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:56:21,806.806 INFO    ] ================================================
[2026-10-28 02:56:21,821.821 INFO    ] Launching Daemon at Wed Oct 28 02:56:21 IST 2026
[2026-10-28 02:56:21,832.832 INFO    ] ================================================
[2026-10-28 02:56:22,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:56:22
[2026-10-28 02:56:23,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:56:23,254.254 INFO    ] Initializing speech engine...
[2026-10-28 02:56:23,263.263 INFO    ] 2026-10-28 02:56:23
[2026-10-28 02:56:23,548.548 INFO    ] 2026-10-28 02:56:23
[2026-10-28 02:56:23,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:56:23,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:56:23,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:56:24,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:56:24,144.144 INFO    ] time= 28/10/2026 02:56:24
[2026-10-28 02:56:24,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:56:24,183.183 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:56:24,306.306 INFO    ] No existing commands found in stream
[2026-10-28 02:56:29,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:56:29,339.339 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-28 02:56:31,624.624 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:56:31,627.627 INFO    ] Checking for system updates...
[2026-10-28 02:56:31,663.663 INFO    ] 200
[2026-10-28 02:56:31,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:56:31,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:56:31,724.724 INFO    ] No update needed
[2026-10-28 02:56:31,726.726 INFO    ] Checking for camera pi updates...
[2026-10-28 02:56:31,759.759 INFO    ] 200
[2026-10-28 02:56:31,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:56:31,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:56:32,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:56:32,020.020 INFO    ] No camera update needed
[2026-10-28 02:56:32,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:56:32,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:56:32,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:56:32,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:56:34,081.081 INFO    ] ================================================
[2026-10-28 02:56:34,096.096 INFO    ] Launching Daemon at Wed Oct 28 02:56:34 IST 2026
[2026-10-28 02:56:34,107.107 INFO    ] ================================================
[2026-10-28 02:56:34,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:56:34
[2026-10-28 02:56:35,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:56:35,540.540 INFO    ] Initializing speech engine...
[2026-10-28 02:56:35,549.549 INFO    ] 2026-10-28 02:56:35
[2026-10-28 02:56:35,796.796 INFO    ] 2026-10-28 02:56:35
[2026-10-28 02:56:35,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:56:36,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:56:36,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:56:36,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:56:36,347.347 INFO    ] time= 28/10/2026 02:56:36
[2026-10-28 02:56:36,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:56:36,370.370 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:56:36,506.506 INFO    ] No existing commands found in stream
[2026-10-28 02:56:41,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:56:41,535.535 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-28 02:56:42,636.636 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:56:42,639.639 INFO    ] Checking for system updates...
[2026-10-28 02:56:42,675.675 INFO    ] 200
[2026-10-28 02:56:42,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:56:42,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:56:42,731.731 INFO    ] No update needed
[2026-10-28 02:56:42,733.733 INFO    ] Checking for camera pi updates...
[2026-10-28 02:56:42,766.766 INFO    ] 200
[2026-10-28 02:56:42,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:56:42,808.808 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:56:42,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:56:42,911.911 INFO    ] No camera update needed
[2026-10-28 02:56:42,914.914 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:56:42,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:56:42,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:56:42,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:56:44,968.968 INFO    ] ================================================
[2026-10-28 02:56:44,984.984 INFO    ] Launching Daemon at Wed Oct 28 02:56:44 IST 2026
[2026-10-28 02:56:45,995.995 INFO    ] ================================================
[2026-10-28 02:56:45,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:56:45
[2026-10-28 02:56:46,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:56:46,584.584 INFO    ] Initializing speech engine...
[2026-10-28 02:56:46,591.591 INFO    ] 2026-10-28 02:56:46
[2026-10-28 02:56:46,859.859 INFO    ] 2026-10-28 02:56:46
[2026-10-28 02:56:46,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:56:47,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:56:47,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:56:47,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:56:47,410.410 INFO    ] time= 28/10/2026 02:56:47
[2026-10-28 02:56:47,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:56:47,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:56:47,579.579 INFO    ] No existing commands found in stream
[2026-10-28 02:56:52,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:56:52,613.613 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-28 02:56:55,556.556 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:56:55,559.559 INFO    ] Checking for system updates...
[2026-10-28 02:56:55,595.595 INFO    ] 200
[2026-10-28 02:56:55,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:56:55,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:56:55,656.656 INFO    ] No update needed
[2026-10-28 02:56:55,659.659 INFO    ] Checking for camera pi updates...
[2026-10-28 02:56:55,692.692 INFO    ] 200
[2026-10-28 02:56:55,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:56:55,734.734 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:56:55,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:56:55,791.791 INFO    ] No camera update needed
[2026-10-28 02:56:55,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:56:55,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:56:55,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:56:55,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:56:57,846.846 INFO    ] ================================================
[2026-10-28 02:56:57,862.862 INFO    ] Launching Daemon at Wed Oct 28 02:56:57 IST 2026
[2026-10-28 02:56:57,873.873 INFO    ] ================================================
[2026-10-28 02:56:58,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:56:58
[2026-10-28 02:56:59,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:56:59,325.325 INFO    ] Initializing speech engine...
[2026-10-28 02:56:59,332.332 INFO    ] 2026-10-28 02:56:59
[2026-10-28 02:56:59,576.576 INFO    ] 2026-10-28 02:56:59
[2026-10-28 02:56:59,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:56:59,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:56:59,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:57:00,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:57:00,131.131 INFO    ] time= 28/10/2026 02:57:00
[2026-10-28 02:57:00,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:57:00,155.155 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:57:00,291.291 INFO    ] No existing commands found in stream
[2026-10-28 02:57:05,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:57:05,314.314 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-28 02:57:09,236.236 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:57:09,239.239 INFO    ] Checking for system updates...
[2026-10-28 02:57:09,278.278 INFO    ] 200
[2026-10-28 02:57:09,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:57:09,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:57:09,335.335 INFO    ] No update needed
[2026-10-28 02:57:09,337.337 INFO    ] Checking for camera pi updates...
[2026-10-28 02:57:09,371.371 INFO    ] 200
[2026-10-28 02:57:09,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:57:09,414.414 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:57:09,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:57:09,503.503 INFO    ] No camera update needed
[2026-10-28 02:57:09,505.505 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:57:09,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:57:09,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:57:09,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:57:11,558.558 INFO    ] ================================================
[2026-10-28 02:57:11,574.574 INFO    ] Launching Daemon at Wed Oct 28 02:57:11 IST 2026
[2026-10-28 02:57:11,585.585 INFO    ] ================================================
[2026-10-28 02:57:12,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:57:12
[2026-10-28 02:57:12,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:57:13,204.204 INFO    ] Initializing speech engine...
[2026-10-28 02:57:13,211.211 INFO    ] 2026-10-28 02:57:13
[2026-10-28 02:57:13,492.492 INFO    ] 2026-10-28 02:57:13
[2026-10-28 02:57:13,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:57:13,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:57:13,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:57:14,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:57:14,057.057 INFO    ] time= 28/10/2026 02:57:14
[2026-10-28 02:57:14,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:57:14,097.097 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:57:14,223.223 INFO    ] No existing commands found in stream
[2026-10-28 02:57:19,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:57:19,257.257 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 02:57:21,637.637 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:57:21,640.640 INFO    ] Checking for system updates...
[2026-10-28 02:57:21,677.677 INFO    ] 200
[2026-10-28 02:57:21,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:57:21,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:57:21,735.735 INFO    ] No update needed
[2026-10-28 02:57:21,738.738 INFO    ] Checking for camera pi updates...
[2026-10-28 02:57:21,772.772 INFO    ] 200
[2026-10-28 02:57:21,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:57:21,817.817 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:57:21,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:57:21,909.909 INFO    ] No camera update needed
[2026-10-28 02:57:21,912.912 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:57:21,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:57:21,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:57:21,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:57:23,967.967 INFO    ] ================================================
[2026-10-28 02:57:23,982.982 INFO    ] Launching Daemon at Wed Oct 28 02:57:23 IST 2026
[2026-10-28 02:57:23,995.995 INFO    ] ================================================
[2026-10-28 02:57:24,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:57:24
[2026-10-28 02:57:25,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:57:25,617.617 INFO    ] Initializing speech engine...
[2026-10-28 02:57:25,627.627 INFO    ] 2026-10-28 02:57:25
[2026-10-28 02:57:25,918.918 INFO    ] 2026-10-28 02:57:25
[2026-10-28 02:57:25,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:57:26,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:57:26,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:57:26,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:57:26,469.469 INFO    ] time= 28/10/2026 02:57:26
[2026-10-28 02:57:26,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:57:26,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:57:26,639.639 INFO    ] No existing commands found in stream
[2026-10-28 02:57:31,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:57:31,683.683 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-28 02:57:32,658.658 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:57:32,661.661 INFO    ] Checking for system updates...
[2026-10-28 02:57:32,702.702 INFO    ] 200
[2026-10-28 02:57:32,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:57:32,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:57:32,766.766 INFO    ] No update needed
[2026-10-28 02:57:32,769.769 INFO    ] Checking for camera pi updates...
[2026-10-28 02:57:32,806.806 INFO    ] 200
[2026-10-28 02:57:32,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:57:32,859.859 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:57:32,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:57:32,956.956 INFO    ] No camera update needed
[2026-10-28 02:57:32,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:57:32,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:57:32,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:57:32,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:57:35,017.017 INFO    ] ================================================
[2026-10-28 02:57:35,032.032 INFO    ] Launching Daemon at Wed Oct 28 02:57:35 IST 2026
[2026-10-28 02:57:35,043.043 INFO    ] ================================================
[2026-10-28 02:57:35,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:57:35
[2026-10-28 02:57:36,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:57:36,496.496 INFO    ] Initializing speech engine...
[2026-10-28 02:57:36,521.521 INFO    ] 2026-10-28 02:57:36
[2026-10-28 02:57:36,796.796 INFO    ] 2026-10-28 02:57:36
[2026-10-28 02:57:36,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:57:37,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:57:37,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:57:37,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:57:37,345.345 INFO    ] time= 28/10/2026 02:57:37
[2026-10-28 02:57:37,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:57:37,443.443 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:57:37,587.587 INFO    ] No existing commands found in stream
[2026-10-28 02:57:42,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:57:42,615.615 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 02:57:44,958.958 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 02:57:44,961.961 INFO    ] Checking for system updates...
[2026-10-28 02:57:45,001.001 INFO    ] 200
[2026-10-28 02:57:45,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:57:45,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:57:45,065.065 INFO    ] No update needed
[2026-10-28 02:57:45,068.068 INFO    ] Checking for camera pi updates...
[2026-10-28 02:57:45,101.101 INFO    ] 200
[2026-10-28 02:57:45,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:57:45,144.144 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:57:45,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:57:45,232.232 INFO    ] No camera update needed
[2026-10-28 02:57:45,234.234 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:57:45,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:57:45,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:57:45,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:57:47,289.289 INFO    ] ================================================
[2026-10-28 02:57:47,304.304 INFO    ] Launching Daemon at Wed Oct 28 02:57:47 IST 2026
[2026-10-28 02:57:47,315.315 INFO    ] ================================================
[2026-10-28 02:57:47,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:57:47
[2026-10-28 02:57:48,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:57:48,954.954 INFO    ] Initializing speech engine...
[2026-10-28 02:57:48,961.961 INFO    ] 2026-10-28 02:57:48
[2026-10-28 02:57:49,247.247 INFO    ] 2026-10-28 02:57:49
[2026-10-28 02:57:49,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:57:49,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:57:49,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:57:49,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:57:49,814.814 INFO    ] time= 28/10/2026 02:57:49
[2026-10-28 02:57:49,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:57:49,851.851 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:57:49,982.982 INFO    ] No existing commands found in stream
[2026-10-28 02:57:55,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:57:55,017.017 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-28 02:57:58,417.417 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:57:58,420.420 INFO    ] Checking for system updates...
[2026-10-28 02:57:58,457.457 INFO    ] 200
[2026-10-28 02:57:58,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:57:58,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:57:58,516.516 INFO    ] No update needed
[2026-10-28 02:57:58,518.518 INFO    ] Checking for camera pi updates...
[2026-10-28 02:57:58,553.553 INFO    ] 200
[2026-10-28 02:57:58,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:57:58,597.597 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:57:58,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:57:58,681.681 INFO    ] No camera update needed
[2026-10-28 02:57:58,684.684 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:57:58,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:57:58,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:57:58,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:58:00,740.740 INFO    ] ================================================
[2026-10-28 02:58:00,755.755 INFO    ] Launching Daemon at Wed Oct 28 02:58:00 IST 2026
[2026-10-28 02:58:00,765.765 INFO    ] ================================================
[2026-10-28 02:58:01,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:58:01
[2026-10-28 02:58:02,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:58:02,438.438 INFO    ] Initializing speech engine...
[2026-10-28 02:58:02,451.451 INFO    ] 2026-10-28 02:58:02
[2026-10-28 02:58:02,756.756 INFO    ] 2026-10-28 02:58:02
[2026-10-28 02:58:02,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:58:03,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:58:03,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:58:03,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:58:03,230.230 INFO    ] time= 28/10/2026 02:58:03
[2026-10-28 02:58:03,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:58:03,320.320 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:58:03,447.447 INFO    ] No existing commands found in stream
[2026-10-28 02:58:08,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:58:08,461.461 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-28 02:58:12,624.624 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:58:12,627.627 INFO    ] Checking for system updates...
[2026-10-28 02:58:12,663.663 INFO    ] 200
[2026-10-28 02:58:12,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:58:12,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:58:12,720.720 INFO    ] No update needed
[2026-10-28 02:58:12,722.722 INFO    ] Checking for camera pi updates...
[2026-10-28 02:58:12,759.759 INFO    ] 200
[2026-10-28 02:58:12,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:58:12,801.801 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:58:12,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:58:12,887.887 INFO    ] No camera update needed
[2026-10-28 02:58:12,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:58:12,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:58:12,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:58:12,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:58:14,944.944 INFO    ] ================================================
[2026-10-28 02:58:14,959.959 INFO    ] Launching Daemon at Wed Oct 28 02:58:14 IST 2026
[2026-10-28 02:58:14,970.970 INFO    ] ================================================
[2026-10-28 02:58:15,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:58:15
[2026-10-28 02:58:16,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:58:16,521.521 INFO    ] Initializing speech engine...
[2026-10-28 02:58:16,532.532 INFO    ] 2026-10-28 02:58:16
[2026-10-28 02:58:16,819.819 INFO    ] 2026-10-28 02:58:16
[2026-10-28 02:58:16,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:58:17,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:58:17,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:58:17,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:58:17,369.369 INFO    ] time= 28/10/2026 02:58:17
[2026-10-28 02:58:17,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:58:17,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:58:17,522.522 INFO    ] No existing commands found in stream
[2026-10-28 02:58:22,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:58:22,561.561 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-28 02:58:23,171.171 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 02:58:23,174.174 INFO    ] Checking for system updates...
[2026-10-28 02:58:23,216.216 INFO    ] 200
[2026-10-28 02:58:23,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:58:23,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:58:23,280.280 INFO    ] No update needed
[2026-10-28 02:58:23,283.283 INFO    ] Checking for camera pi updates...
[2026-10-28 02:58:23,318.318 INFO    ] 200
[2026-10-28 02:58:23,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:58:23,361.361 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:58:23,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:58:23,449.449 INFO    ] No camera update needed
[2026-10-28 02:58:23,451.451 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:58:23,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:58:23,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:58:23,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:58:25,507.507 INFO    ] ================================================
[2026-10-28 02:58:25,521.521 INFO    ] Launching Daemon at Wed Oct 28 02:58:25 IST 2026
[2026-10-28 02:58:25,532.532 INFO    ] ================================================
[2026-10-28 02:58:26,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:58:26
[2026-10-28 02:58:26,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:58:26,986.986 INFO    ] Initializing speech engine...
[2026-10-28 02:58:26,992.992 INFO    ] 2026-10-28 02:58:26
[2026-10-28 02:58:27,265.265 INFO    ] 2026-10-28 02:58:27
[2026-10-28 02:58:27,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:58:27,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:58:27,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:58:27,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:58:27,836.836 INFO    ] time= 28/10/2026 02:58:27
[2026-10-28 02:58:27,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:58:27,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:58:28,009.009 INFO    ] No existing commands found in stream
[2026-10-28 02:58:33,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:58:33,043.043 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-28 02:58:35,347.347 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:58:35,350.350 INFO    ] Checking for system updates...
[2026-10-28 02:58:35,386.386 INFO    ] 200
[2026-10-28 02:58:35,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:58:35,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:58:35,445.445 INFO    ] No update needed
[2026-10-28 02:58:35,447.447 INFO    ] Checking for camera pi updates...
[2026-10-28 02:58:35,480.480 INFO    ] 200
[2026-10-28 02:58:35,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:58:35,524.524 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:58:35,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:58:35,708.708 INFO    ] No camera update needed
[2026-10-28 02:58:35,711.711 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:58:35,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:58:35,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:58:35,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:58:37,763.763 INFO    ] ================================================
[2026-10-28 02:58:37,778.778 INFO    ] Launching Daemon at Wed Oct 28 02:58:37 IST 2026
[2026-10-28 02:58:37,789.789 INFO    ] ================================================
[2026-10-28 02:58:38,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:58:38
[2026-10-28 02:58:38,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:58:39,186.186 INFO    ] Initializing speech engine...
[2026-10-28 02:58:39,207.207 INFO    ] 2026-10-28 02:58:39
[2026-10-28 02:58:39,460.460 INFO    ] 2026-10-28 02:58:39
[2026-10-28 02:58:39,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:58:39,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:58:39,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:58:39,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:58:39,940.940 INFO    ] time= 28/10/2026 02:58:39
[2026-10-28 02:58:39,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:58:39,991.991 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:58:40,145.145 INFO    ] No existing commands found in stream
[2026-10-28 02:58:45,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:58:45,178.178 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-28 02:58:45,775.775 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:58:45,778.778 INFO    ] Checking for system updates...
[2026-10-28 02:58:45,814.814 INFO    ] 200
[2026-10-28 02:58:45,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:58:45,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:58:45,879.879 INFO    ] No update needed
[2026-10-28 02:58:45,881.881 INFO    ] Checking for camera pi updates...
[2026-10-28 02:58:45,915.915 INFO    ] 200
[2026-10-28 02:58:45,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:58:45,965.965 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:58:46,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:58:46,101.101 INFO    ] No camera update needed
[2026-10-28 02:58:46,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:58:46,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:58:46,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:58:46,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:58:48,161.161 INFO    ] ================================================
[2026-10-28 02:58:48,176.176 INFO    ] Launching Daemon at Wed Oct 28 02:58:48 IST 2026
[2026-10-28 02:58:48,186.186 INFO    ] ================================================
[2026-10-28 02:58:48,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:58:48
[2026-10-28 02:58:49,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:58:49,581.581 INFO    ] Initializing speech engine...
[2026-10-28 02:58:49,594.594 INFO    ] 2026-10-28 02:58:49
[2026-10-28 02:58:49,860.860 INFO    ] 2026-10-28 02:58:49
[2026-10-28 02:58:49,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:58:50,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:58:50,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:58:50,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:58:50,425.425 INFO    ] time= 28/10/2026 02:58:50
[2026-10-28 02:58:50,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:58:50,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:58:50,588.588 INFO    ] No existing commands found in stream
[2026-10-28 02:58:55,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:58:55,616.616 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-28 02:58:59,375.375 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 02:58:59,378.378 INFO    ] Checking for system updates...
[2026-10-28 02:58:59,414.414 INFO    ] 200
[2026-10-28 02:58:59,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:58:59,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:58:59,480.480 INFO    ] No update needed
[2026-10-28 02:58:59,485.485 INFO    ] Checking for camera pi updates...
[2026-10-28 02:58:59,518.518 INFO    ] 200
[2026-10-28 02:58:59,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:58:59,562.562 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:58:59,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:58:59,645.645 INFO    ] No camera update needed
[2026-10-28 02:58:59,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:58:59,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:58:59,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:58:59,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:59:01,707.707 INFO    ] ================================================
[2026-10-28 02:59:01,734.734 INFO    ] Launching Daemon at Wed Oct 28 02:59:01 IST 2026
[2026-10-28 02:59:01,759.759 INFO    ] ================================================
[2026-10-28 02:59:02,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:59:02
[2026-10-28 02:59:03,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:59:03,305.305 INFO    ] Initializing speech engine...
[2026-10-28 02:59:03,311.311 INFO    ] 2026-10-28 02:59:03
[2026-10-28 02:59:03,619.619 INFO    ] 2026-10-28 02:59:03
[2026-10-28 02:59:03,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:59:03,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:59:03,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:59:04,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:59:04,240.240 INFO    ] time= 28/10/2026 02:59:04
[2026-10-28 02:59:04,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:59:04,300.300 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:59:04,426.426 INFO    ] No existing commands found in stream
[2026-10-28 02:59:09,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:59:09,447.447 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-28 02:59:12,094.094 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 02:59:12,097.097 INFO    ] Checking for system updates...
[2026-10-28 02:59:12,133.133 INFO    ] 200
[2026-10-28 02:59:12,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:59:12,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:59:12,190.190 INFO    ] No update needed
[2026-10-28 02:59:12,193.193 INFO    ] Checking for camera pi updates...
[2026-10-28 02:59:12,227.227 INFO    ] 200
[2026-10-28 02:59:12,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:59:12,274.274 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:59:12,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:59:12,356.356 INFO    ] No camera update needed
[2026-10-28 02:59:12,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:59:12,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:59:12,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:59:12,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:59:14,410.410 INFO    ] ================================================
[2026-10-28 02:59:14,426.426 INFO    ] Launching Daemon at Wed Oct 28 02:59:14 IST 2026
[2026-10-28 02:59:14,437.437 INFO    ] ================================================
[2026-10-28 02:59:15,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:59:15
[2026-10-28 02:59:15,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:59:15,910.910 INFO    ] Initializing speech engine...
[2026-10-28 02:59:15,924.924 INFO    ] 2026-10-28 02:59:15
[2026-10-28 02:59:16,187.187 INFO    ] 2026-10-28 02:59:16
[2026-10-28 02:59:16,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:59:16,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:59:16,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:59:16,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:59:16,739.739 INFO    ] time= 28/10/2026 02:59:16
[2026-10-28 02:59:16,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:59:16,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:59:16,891.891 INFO    ] No existing commands found in stream
[2026-10-28 02:59:21,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:59:21,915.915 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-28 02:59:22,922.922 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:59:22,925.925 INFO    ] Checking for system updates...
[2026-10-28 02:59:22,965.965 INFO    ] 200
[2026-10-28 02:59:22,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:59:23,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:59:23,021.021 INFO    ] No update needed
[2026-10-28 02:59:23,024.024 INFO    ] Checking for camera pi updates...
[2026-10-28 02:59:23,057.057 INFO    ] 200
[2026-10-28 02:59:23,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:59:23,105.105 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:59:23,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:59:23,201.201 INFO    ] No camera update needed
[2026-10-28 02:59:23,203.203 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:59:23,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:59:23,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:59:23,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:59:25,255.255 INFO    ] ================================================
[2026-10-28 02:59:25,270.270 INFO    ] Launching Daemon at Wed Oct 28 02:59:25 IST 2026
[2026-10-28 02:59:25,281.281 INFO    ] ================================================
[2026-10-28 02:59:25,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:59:25
[2026-10-28 02:59:26,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:59:26,746.746 INFO    ] Initializing speech engine...
[2026-10-28 02:59:26,755.755 INFO    ] 2026-10-28 02:59:26
[2026-10-28 02:59:27,017.017 INFO    ] 2026-10-28 02:59:27
[2026-10-28 02:59:27,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:59:27,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:59:27,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:59:27,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:59:27,716.716 INFO    ] time= 28/10/2026 02:59:27
[2026-10-28 02:59:27,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:59:27,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:59:27,992.992 INFO    ] No existing commands found in stream
[2026-10-28 02:59:33,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:59:33,009.009 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 02:59:34,798.798 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:59:34,800.800 INFO    ] Checking for system updates...
[2026-10-28 02:59:34,840.840 INFO    ] 200
[2026-10-28 02:59:34,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:59:34,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:59:34,906.906 INFO    ] No update needed
[2026-10-28 02:59:34,908.908 INFO    ] Checking for camera pi updates...
[2026-10-28 02:59:34,941.941 INFO    ] 200
[2026-10-28 02:59:34,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:59:34,988.988 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:59:35,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:59:35,091.091 INFO    ] No camera update needed
[2026-10-28 02:59:35,094.094 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:59:35,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:59:35,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:59:35,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:59:37,147.147 INFO    ] ================================================
[2026-10-28 02:59:37,162.162 INFO    ] Launching Daemon at Wed Oct 28 02:59:37 IST 2026
[2026-10-28 02:59:37,173.173 INFO    ] ================================================
[2026-10-28 02:59:37,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:59:37
[2026-10-28 02:59:38,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:59:38,565.565 INFO    ] Initializing speech engine...
[2026-10-28 02:59:38,578.578 INFO    ] 2026-10-28 02:59:38
[2026-10-28 02:59:38,838.838 INFO    ] 2026-10-28 02:59:38
[2026-10-28 02:59:38,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:59:39,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:59:39,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:59:39,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:59:39,316.316 INFO    ] time= 28/10/2026 02:59:39
[2026-10-28 02:59:39,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:59:39,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:59:39,513.513 INFO    ] No existing commands found in stream
[2026-10-28 02:59:44,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:59:44,546.546 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-28 02:59:46,515.515 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 02:59:46,517.517 INFO    ] Checking for system updates...
[2026-10-28 02:59:46,558.558 INFO    ] 200
[2026-10-28 02:59:46,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:59:46,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:59:46,618.618 INFO    ] No update needed
[2026-10-28 02:59:46,621.621 INFO    ] Checking for camera pi updates...
[2026-10-28 02:59:46,660.660 INFO    ] 200
[2026-10-28 02:59:46,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:59:46,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:59:46,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 02:59:46,808.808 INFO    ] No camera update needed
[2026-10-28 02:59:46,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:59:46,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:59:46,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:59:46,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:59:48,868.868 INFO    ] ================================================
[2026-10-28 02:59:48,882.882 INFO    ] Launching Daemon at Wed Oct 28 02:59:48 IST 2026
[2026-10-28 02:59:48,893.893 INFO    ] ================================================
[2026-10-28 02:59:49,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:59:49
[2026-10-28 02:59:50,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 02:59:50,342.342 INFO    ] Initializing speech engine...
[2026-10-28 02:59:50,352.352 INFO    ] 2026-10-28 02:59:50
[2026-10-28 02:59:50,614.614 INFO    ] 2026-10-28 02:59:50
[2026-10-28 02:59:50,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 02:59:50,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 02:59:50,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 02:59:51,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 02:59:51,152.152 INFO    ] time= 28/10/2026 02:59:51
[2026-10-28 02:59:51,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 02:59:51,179.179 INFO    ] Checking for existing commands in stream...
[2026-10-28 02:59:51,303.303 INFO    ] No existing commands found in stream
[2026-10-28 02:59:56,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 02:59:56,321.321 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 02:59:57,012.012 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 02:59:57,016.016 INFO    ] Checking for system updates...
[2026-10-28 02:59:57,052.052 INFO    ] 200
[2026-10-28 02:59:57,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:59:57,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:59:57,120.120 INFO    ] No update needed
[2026-10-28 02:59:57,123.123 INFO    ] Checking for camera pi updates...
[2026-10-28 02:59:57,161.161 INFO    ] 200
[2026-10-28 02:59:57,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 02:59:57,211.211 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 02:59:57,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 02:59:57,301.301 INFO    ] No camera update needed
[2026-10-28 02:59:57,304.304 INFO    ] Script finished. Safe exiting...
[2026-10-28 02:59:57,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 02:59:57,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 02:59:57,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 02:59:59,361.361 INFO    ] ================================================
[2026-10-28 02:59:59,377.377 INFO    ] Launching Daemon at Wed Oct 28 02:59:59 IST 2026
[2026-10-28 02:59:59,389.389 INFO    ] ================================================
[2026-10-28 02:59:59,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 02:59:59
[2026-10-28 03:00:00,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:00:00,783.783 INFO    ] Initializing speech engine...
[2026-10-28 03:00:00,803.803 INFO    ] 2026-10-28 03:00:00
[2026-10-28 03:00:01,062.062 INFO    ] 2026-10-28 03:00:01
[2026-10-28 03:00:01,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:00:01,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:00:01,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:00:01,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:00:01,625.625 INFO    ] time= 28/10/2026 03:00:01
[2026-10-28 03:00:01,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:00:01,655.655 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:00:01,798.798 INFO    ] No existing commands found in stream
[2026-10-28 03:00:06,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:00:06,857.857 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-28 03:00:11,337.337 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:00:11,340.340 INFO    ] Checking for system updates...
[2026-10-28 03:00:11,375.375 INFO    ] 200
[2026-10-28 03:00:11,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:00:11,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:00:11,431.431 INFO    ] No update needed
[2026-10-28 03:00:11,435.435 INFO    ] Checking for camera pi updates...
[2026-10-28 03:00:11,469.469 INFO    ] 200
[2026-10-28 03:00:11,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:00:11,512.512 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:00:11,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:00:11,611.611 INFO    ] No camera update needed
[2026-10-28 03:00:11,614.614 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:00:11,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:00:11,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:00:11,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:00:13,668.668 INFO    ] ================================================
[2026-10-28 03:00:13,683.683 INFO    ] Launching Daemon at Wed Oct 28 03:00:13 IST 2026
[2026-10-28 03:00:13,695.695 INFO    ] ================================================
[2026-10-28 03:00:14,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:00:14
[2026-10-28 03:00:14,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:00:15,201.201 INFO    ] Initializing speech engine...
[2026-10-28 03:00:15,215.215 INFO    ] 2026-10-28 03:00:15
[2026-10-28 03:00:15,496.496 INFO    ] 2026-10-28 03:00:15
[2026-10-28 03:00:15,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:00:15,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:00:15,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:00:16,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:00:16,060.060 INFO    ] time= 28/10/2026 03:00:16
[2026-10-28 03:00:16,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:00:16,099.099 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:00:16,224.224 INFO    ] No existing commands found in stream
[2026-10-28 03:00:21,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:00:21,259.259 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-28 03:00:24,706.706 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:00:24,709.709 INFO    ] Checking for system updates...
[2026-10-28 03:00:24,747.747 INFO    ] 200
[2026-10-28 03:00:24,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:00:24,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:00:24,811.811 INFO    ] No update needed
[2026-10-28 03:00:24,814.814 INFO    ] Checking for camera pi updates...
[2026-10-28 03:00:24,848.848 INFO    ] 200
[2026-10-28 03:00:24,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:00:24,892.892 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:00:24,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:00:24,986.986 INFO    ] No camera update needed
[2026-10-28 03:00:24,988.988 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:00:24,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:00:24,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:00:25,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:00:27,045.045 INFO    ] ================================================
[2026-10-28 03:00:27,061.061 INFO    ] Launching Daemon at Wed Oct 28 03:00:27 IST 2026
[2026-10-28 03:00:27,072.072 INFO    ] ================================================
[2026-10-28 03:00:27,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:00:27
[2026-10-28 03:00:28,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:00:28,632.632 INFO    ] Initializing speech engine...
[2026-10-28 03:00:28,641.641 INFO    ] 2026-10-28 03:00:28
[2026-10-28 03:00:28,886.886 INFO    ] 2026-10-28 03:00:28
[2026-10-28 03:00:28,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:00:29,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:00:29,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:00:29,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:00:29,441.441 INFO    ] time= 28/10/2026 03:00:29
[2026-10-28 03:00:29,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:00:29,476.476 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:00:29,603.603 INFO    ] No existing commands found in stream
[2026-10-28 03:00:34,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:00:34,630.630 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 03:00:38,695.695 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:00:38,698.698 INFO    ] Checking for system updates...
[2026-10-28 03:00:38,741.741 INFO    ] 200
[2026-10-28 03:00:38,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:00:38,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:00:38,803.803 INFO    ] No update needed
[2026-10-28 03:00:38,806.806 INFO    ] Checking for camera pi updates...
[2026-10-28 03:00:38,839.839 INFO    ] 200
[2026-10-28 03:00:38,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:00:38,881.881 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:00:39,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:00:39,062.062 INFO    ] No camera update needed
[2026-10-28 03:00:39,064.064 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:00:39,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:00:39,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:00:39,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:00:41,118.118 INFO    ] ================================================
[2026-10-28 03:00:41,134.134 INFO    ] Launching Daemon at Wed Oct 28 03:00:41 IST 2026
[2026-10-28 03:00:41,145.145 INFO    ] ================================================
[2026-10-28 03:00:41,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:00:41
[2026-10-28 03:00:42,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:00:42,588.588 INFO    ] Initializing speech engine...
[2026-10-28 03:00:42,595.595 INFO    ] 2026-10-28 03:00:42
[2026-10-28 03:00:42,856.856 INFO    ] 2026-10-28 03:00:42
[2026-10-28 03:00:42,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:00:43,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:00:43,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:00:43,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:00:43,397.397 INFO    ] time= 28/10/2026 03:00:43
[2026-10-28 03:00:43,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:00:43,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:00:43,574.574 INFO    ] No existing commands found in stream
[2026-10-28 03:00:48,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:00:48,607.607 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 03:00:49,280.280 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:00:49,282.282 INFO    ] Checking for system updates...
[2026-10-28 03:00:49,318.318 INFO    ] 200
[2026-10-28 03:00:49,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:00:49,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:00:49,379.379 INFO    ] No update needed
[2026-10-28 03:00:49,382.382 INFO    ] Checking for camera pi updates...
[2026-10-28 03:00:49,415.415 INFO    ] 200
[2026-10-28 03:00:49,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:00:49,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:00:49,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:00:49,567.567 INFO    ] No camera update needed
[2026-10-28 03:00:49,569.569 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:00:49,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:00:49,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:00:49,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:00:51,622.622 INFO    ] ================================================
[2026-10-28 03:00:51,638.638 INFO    ] Launching Daemon at Wed Oct 28 03:00:51 IST 2026
[2026-10-28 03:00:51,649.649 INFO    ] ================================================
[2026-10-28 03:00:52,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:00:52
[2026-10-28 03:00:52,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:00:53,075.075 INFO    ] Initializing speech engine...
[2026-10-28 03:00:53,083.083 INFO    ] 2026-10-28 03:00:53
[2026-10-28 03:00:53,357.357 INFO    ] 2026-10-28 03:00:53
[2026-10-28 03:00:53,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:00:53,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:00:53,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:00:53,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:00:53,925.925 INFO    ] time= 28/10/2026 03:00:53
[2026-10-28 03:00:53,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:00:53,949.949 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:00:54,084.084 INFO    ] No existing commands found in stream
[2026-10-28 03:00:59,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:00:59,101.101 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-28 03:01:16,752.752 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-10-28 03:01:16,778.778 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 0x73dd0610>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution',))",)
[2026-10-28 03:01:16,787.787 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 0x73dd0610>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution',))
[2026-10-28 03:01:16,795.795 INFO    ] None
[2026-10-28 03:01:16,798.798 INFO    ] Checking for system updates...
[2026-10-28 03:01:16,838.838 INFO    ] 200
[2026-10-28 03:01:16,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:01:16,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:01:16,895.895 INFO    ] No update needed
[2026-10-28 03:01:16,897.897 INFO    ] Checking for camera pi updates...
[2026-10-28 03:01:16,930.930 INFO    ] 200
[2026-10-28 03:01:16,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:01:16,973.973 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:01:26,986.986 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam08202202.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x73db6330>: Failed to establish a new connection: [Errno -2] Name or service not known',))
[2026-10-28 03:01:27,005.005 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-10-28 03:01:27,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:01:27,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:01:27,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:01:27,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:01:29,068.068 INFO    ] ================================================
[2026-10-28 03:01:29,089.089 INFO    ] Launching Daemon at Wed Oct 28 03:01:29 IST 2026
[2026-10-28 03:01:29,100.100 INFO    ] ================================================
[2026-10-28 03:01:29,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:01:29
[2026-10-28 03:01:30,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:01:30,636.636 INFO    ] Initializing speech engine...
[2026-10-28 03:01:30,647.647 INFO    ] 2026-10-28 03:01:30
[2026-10-28 03:01:30,912.912 INFO    ] 2026-10-28 03:01:30
[2026-10-28 03:01:30,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:01:31,079.079 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-28 03:01:31,229.229 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-28 03:01:31,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:01:31,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:01:31,296.296 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-28 03:01:31,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:01:33,387.387 INFO    ] ================================================
[2026-10-28 03:01:33,402.402 INFO    ] Launching Daemon at Wed Oct 28 03:01:33 IST 2026
[2026-10-28 03:01:33,413.413 INFO    ] ================================================
[2026-10-28 03:01:33,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:01:33
[2026-10-28 03:01:34,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:01:34,830.830 INFO    ] Initializing speech engine...
[2026-10-28 03:01:34,839.839 INFO    ] 2026-10-28 03:01:34
[2026-10-28 03:01:35,087.087 INFO    ] 2026-10-28 03:01:35
[2026-10-28 03:01:35,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:01:35,245.245 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-28 03:01:35,347.347 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-28 03:01:35,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:01:35,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:01:35,447.447 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-28 03:01:35,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:01:37,514.514 INFO    ] ================================================
[2026-10-28 03:01:37,530.530 INFO    ] Launching Daemon at Wed Oct 28 03:01:37 IST 2026
[2026-10-28 03:01:37,541.541 INFO    ] ================================================
[2026-10-28 03:01:38,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:01:38
[2026-10-28 03:01:38,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:01:39,003.003 INFO    ] Initializing speech engine...
[2026-10-28 03:01:39,012.012 INFO    ] 2026-10-28 03:01:39
[2026-10-28 03:01:39,263.263 INFO    ] 2026-10-28 03:01:39
[2026-10-28 03:01:39,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:01:39,422.422 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-10-28 03:01:39,532.532 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-28 03:01:39,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:01:39,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:01:39,640.640 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-28 03:01:39,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:01:41,721.721 INFO    ] ================================================
[2026-10-28 03:01:41,736.736 INFO    ] Launching Daemon at Wed Oct 28 03:01:41 IST 2026
[2026-10-28 03:01:41,747.747 INFO    ] ================================================
[2026-10-28 03:01:42,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:01:42
[2026-10-28 03:01:43,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:01:43,350.350 INFO    ] Initializing speech engine...
[2026-10-28 03:01:43,358.358 INFO    ] 2026-10-28 03:01:43
[2026-10-28 03:01:43,642.642 INFO    ] 2026-10-28 03:01:43
[2026-10-28 03:01:43,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:01:48,785.785 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-10-28 03:01:48,815.815 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-10-28 03:01:48,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:01:48,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:01:48,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:01:50,870.870 INFO    ] ================================================
[2026-10-28 03:01:50,886.886 INFO    ] Launching Daemon at Wed Oct 28 03:01:50 IST 2026
[2026-10-28 03:01:50,897.897 INFO    ] ================================================
[2026-10-28 03:01:51,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:01:51
[2026-10-28 03:01:52,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:01:52,364.364 INFO    ] Initializing speech engine...
[2026-10-28 03:01:52,369.369 INFO    ] 2026-10-28 03:01:52
[2026-10-28 03:01:52,669.669 INFO    ] 2026-10-28 03:01:52
[2026-10-28 03:01:52,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:01:52,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:01:53,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:01:53,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:01:53,305.305 INFO    ] time= 28/10/2026 03:01:53
[2026-10-28 03:01:53,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:01:53,330.330 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:01:53,450.450 INFO    ] No existing commands found in stream
[2026-10-28 03:01:58,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:01:58,483.483 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-28 03:02:01,100.100 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:02:01,103.103 INFO    ] Checking for system updates...
[2026-10-28 03:02:01,138.138 INFO    ] 200
[2026-10-28 03:02:01,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:02:01,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:02:01,195.195 INFO    ] No update needed
[2026-10-28 03:02:01,197.197 INFO    ] Checking for camera pi updates...
[2026-10-28 03:02:01,230.230 INFO    ] 200
[2026-10-28 03:02:01,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:02:01,273.273 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:02:01,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:02:01,418.418 INFO    ] No camera update needed
[2026-10-28 03:02:01,422.422 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:02:01,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:02:01,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:02:01,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:02:03,485.485 INFO    ] ================================================
[2026-10-28 03:02:03,501.501 INFO    ] Launching Daemon at Wed Oct 28 03:02:03 IST 2026
[2026-10-28 03:02:03,512.512 INFO    ] ================================================
[2026-10-28 03:02:04,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:02:04
[2026-10-28 03:02:04,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:02:05,117.117 INFO    ] Initializing speech engine...
[2026-10-28 03:02:05,131.131 INFO    ] 2026-10-28 03:02:05
[2026-10-28 03:02:05,438.438 INFO    ] 2026-10-28 03:02:05
[2026-10-28 03:02:05,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:02:05,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:02:05,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:02:06,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:02:06,117.117 INFO    ] time= 28/10/2026 03:02:06
[2026-10-28 03:02:06,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:02:06,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:02:06,349.349 INFO    ] No existing commands found in stream
[2026-10-28 03:02:11,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:02:11,389.389 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-28 03:02:15,429.429 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:02:15,431.431 INFO    ] Checking for system updates...
[2026-10-28 03:02:15,468.468 INFO    ] 200
[2026-10-28 03:02:15,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:02:15,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:02:15,528.528 INFO    ] No update needed
[2026-10-28 03:02:15,530.530 INFO    ] Checking for camera pi updates...
[2026-10-28 03:02:15,563.563 INFO    ] 200
[2026-10-28 03:02:15,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:02:15,605.605 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:02:15,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:02:15,686.686 INFO    ] No camera update needed
[2026-10-28 03:02:15,688.688 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:02:15,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:02:15,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:02:15,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:02:17,740.740 INFO    ] ================================================
[2026-10-28 03:02:17,757.757 INFO    ] Launching Daemon at Wed Oct 28 03:02:17 IST 2026
[2026-10-28 03:02:17,768.768 INFO    ] ================================================
[2026-10-28 03:02:18,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:02:18
[2026-10-28 03:02:18,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:02:19,166.166 INFO    ] Initializing speech engine...
[2026-10-28 03:02:19,180.180 INFO    ] 2026-10-28 03:02:19
[2026-10-28 03:02:19,441.441 INFO    ] 2026-10-28 03:02:19
[2026-10-28 03:02:19,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:02:19,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:02:19,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:02:19,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:02:19,992.992 INFO    ] time= 28/10/2026 03:02:19
[2026-10-28 03:02:19,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:02:20,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:02:20,146.146 INFO    ] No existing commands found in stream
[2026-10-28 03:02:25,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:02:25,162.162 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-28 03:02:27,740.740 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:02:27,743.743 INFO    ] Checking for system updates...
[2026-10-28 03:02:27,778.778 INFO    ] 200
[2026-10-28 03:02:27,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:02:27,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:02:27,840.840 INFO    ] No update needed
[2026-10-28 03:02:27,843.843 INFO    ] Checking for camera pi updates...
[2026-10-28 03:02:27,879.879 INFO    ] 200
[2026-10-28 03:02:27,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:02:27,921.921 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:02:27,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:02:28,001.001 INFO    ] No camera update needed
[2026-10-28 03:02:28,003.003 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:02:28,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:02:28,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:02:28,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:02:30,057.057 INFO    ] ================================================
[2026-10-28 03:02:30,072.072 INFO    ] Launching Daemon at Wed Oct 28 03:02:30 IST 2026
[2026-10-28 03:02:30,083.083 INFO    ] ================================================
[2026-10-28 03:02:30,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:02:30
[2026-10-28 03:02:31,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:02:31,720.720 INFO    ] Initializing speech engine...
[2026-10-28 03:02:31,734.734 INFO    ] 2026-10-28 03:02:31
[2026-10-28 03:02:32,006.006 INFO    ] 2026-10-28 03:02:32
[2026-10-28 03:02:32,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:02:32,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:02:32,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:02:32,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:02:32,669.669 INFO    ] time= 28/10/2026 03:02:32
[2026-10-28 03:02:32,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:02:32,700.700 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:02:32,846.846 INFO    ] No existing commands found in stream
[2026-10-28 03:02:37,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:02:37,861.861 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-28 03:02:40,167.167 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:02:40,170.170 INFO    ] Checking for system updates...
[2026-10-28 03:02:40,210.210 INFO    ] 200
[2026-10-28 03:02:40,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:02:40,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:02:40,269.269 INFO    ] No update needed
[2026-10-28 03:02:40,271.271 INFO    ] Checking for camera pi updates...
[2026-10-28 03:02:40,305.305 INFO    ] 200
[2026-10-28 03:02:40,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:02:40,351.351 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:02:40,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:02:40,429.429 INFO    ] No camera update needed
[2026-10-28 03:02:40,431.431 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:02:40,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:02:40,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:02:40,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:02:42,487.487 INFO    ] ================================================
[2026-10-28 03:02:42,502.502 INFO    ] Launching Daemon at Wed Oct 28 03:02:42 IST 2026
[2026-10-28 03:02:42,513.513 INFO    ] ================================================
[2026-10-28 03:02:43,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:02:43
[2026-10-28 03:02:43,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:02:44,127.127 INFO    ] Initializing speech engine...
[2026-10-28 03:02:44,140.140 INFO    ] 2026-10-28 03:02:44
[2026-10-28 03:02:44,449.449 INFO    ] 2026-10-28 03:02:44
[2026-10-28 03:02:44,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:02:44,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:02:44,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:02:44,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:02:45,002.002 INFO    ] time= 28/10/2026 03:02:44
[2026-10-28 03:02:45,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:02:45,092.092 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:02:45,226.226 INFO    ] No existing commands found in stream
[2026-10-28 03:02:50,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:02:50,267.267 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-28 03:02:51,487.487 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:02:51,490.490 INFO    ] Checking for system updates...
[2026-10-28 03:02:51,526.526 INFO    ] 200
[2026-10-28 03:02:51,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:02:51,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:02:51,584.584 INFO    ] No update needed
[2026-10-28 03:02:51,587.587 INFO    ] Checking for camera pi updates...
[2026-10-28 03:02:51,621.621 INFO    ] 200
[2026-10-28 03:02:51,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:02:51,664.664 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:02:51,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:02:51,723.723 INFO    ] No camera update needed
[2026-10-28 03:02:51,726.726 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:02:51,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:02:51,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:02:51,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:02:53,780.780 INFO    ] ================================================
[2026-10-28 03:02:53,795.795 INFO    ] Launching Daemon at Wed Oct 28 03:02:53 IST 2026
[2026-10-28 03:02:53,806.806 INFO    ] ================================================
[2026-10-28 03:02:54,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:02:54
[2026-10-28 03:02:54,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:02:55,206.206 INFO    ] Initializing speech engine...
[2026-10-28 03:02:55,224.224 INFO    ] 2026-10-28 03:02:55
[2026-10-28 03:02:55,480.480 INFO    ] 2026-10-28 03:02:55
[2026-10-28 03:02:55,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:02:55,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:02:55,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:02:56,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:02:56,032.032 INFO    ] time= 28/10/2026 03:02:56
[2026-10-28 03:02:56,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:02:56,056.056 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:02:56,188.188 INFO    ] No existing commands found in stream
[2026-10-28 03:03:01,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:03:01,218.218 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 03:03:03,300.300 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:03:03,303.303 INFO    ] Checking for system updates...
[2026-10-28 03:03:03,341.341 INFO    ] 200
[2026-10-28 03:03:03,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:03:03,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:03:03,407.407 INFO    ] No update needed
[2026-10-28 03:03:03,409.409 INFO    ] Checking for camera pi updates...
[2026-10-28 03:03:03,446.446 INFO    ] 200
[2026-10-28 03:03:03,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:03:03,498.498 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:03:03,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:03:03,600.600 INFO    ] No camera update needed
[2026-10-28 03:03:03,602.602 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:03:03,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:03:03,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:03:03,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:03:05,656.656 INFO    ] ================================================
[2026-10-28 03:03:05,672.672 INFO    ] Launching Daemon at Wed Oct 28 03:03:05 IST 2026
[2026-10-28 03:03:05,683.683 INFO    ] ================================================
[2026-10-28 03:03:06,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:03:06
[2026-10-28 03:03:06,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:03:07,122.122 INFO    ] Initializing speech engine...
[2026-10-28 03:03:07,131.131 INFO    ] 2026-10-28 03:03:07
[2026-10-28 03:03:07,377.377 INFO    ] 2026-10-28 03:03:07
[2026-10-28 03:03:07,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:03:07,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:03:07,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:03:07,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:03:07,935.935 INFO    ] time= 28/10/2026 03:03:07
[2026-10-28 03:03:07,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:03:07,982.982 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:03:08,088.088 INFO    ] No existing commands found in stream
[2026-10-28 03:03:13,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:03:13,106.106 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 03:03:16,315.315 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:03:16,318.318 INFO    ] Checking for system updates...
[2026-10-28 03:03:16,353.353 INFO    ] 200
[2026-10-28 03:03:16,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:03:16,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:03:16,409.409 INFO    ] No update needed
[2026-10-28 03:03:16,412.412 INFO    ] Checking for camera pi updates...
[2026-10-28 03:03:16,445.445 INFO    ] 200
[2026-10-28 03:03:16,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:03:16,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:03:16,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:03:16,585.585 INFO    ] No camera update needed
[2026-10-28 03:03:16,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:03:16,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:03:16,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:03:16,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:03:18,640.640 INFO    ] ================================================
[2026-10-28 03:03:18,657.657 INFO    ] Launching Daemon at Wed Oct 28 03:03:18 IST 2026
[2026-10-28 03:03:18,668.668 INFO    ] ================================================
[2026-10-28 03:03:19,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:03:19
[2026-10-28 03:03:19,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:03:20,239.239 INFO    ] Initializing speech engine...
[2026-10-28 03:03:20,253.253 INFO    ] 2026-10-28 03:03:20
[2026-10-28 03:03:20,530.530 INFO    ] 2026-10-28 03:03:20
[2026-10-28 03:03:20,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:03:20,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:03:20,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:03:21,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:03:21,242.242 INFO    ] time= 28/10/2026 03:03:21
[2026-10-28 03:03:21,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:03:21,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:03:21,481.481 INFO    ] No existing commands found in stream
[2026-10-28 03:03:26,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:03:26,510.510 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 03:03:28,609.609 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:03:28,612.612 INFO    ] Checking for system updates...
[2026-10-28 03:03:28,651.651 INFO    ] 200
[2026-10-28 03:03:28,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:03:28,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:03:28,708.708 INFO    ] No update needed
[2026-10-28 03:03:28,711.711 INFO    ] Checking for camera pi updates...
[2026-10-28 03:03:28,746.746 INFO    ] 200
[2026-10-28 03:03:28,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:03:28,788.788 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:03:28,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:03:28,865.865 INFO    ] No camera update needed
[2026-10-28 03:03:28,868.868 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:03:28,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:03:28,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:03:28,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:03:30,920.920 INFO    ] ================================================
[2026-10-28 03:03:30,936.936 INFO    ] Launching Daemon at Wed Oct 28 03:03:30 IST 2026
[2026-10-28 03:03:30,948.948 INFO    ] ================================================
[2026-10-28 03:03:31,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:03:31
[2026-10-28 03:03:32,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:03:32,405.405 INFO    ] Initializing speech engine...
[2026-10-28 03:03:32,414.414 INFO    ] 2026-10-28 03:03:32
[2026-10-28 03:03:32,714.714 INFO    ] 2026-10-28 03:03:32
[2026-10-28 03:03:32,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:03:33,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:03:33,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:03:33,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:03:33,285.285 INFO    ] time= 28/10/2026 03:03:33
[2026-10-28 03:03:33,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:03:33,370.370 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:03:33,500.500 INFO    ] No existing commands found in stream
[2026-10-28 03:03:38,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:03:38,539.539 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-28 03:03:41,966.966 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:03:41,968.968 INFO    ] Checking for system updates...
[2026-10-28 03:03:42,004.004 INFO    ] 200
[2026-10-28 03:03:42,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:03:42,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:03:42,061.061 INFO    ] No update needed
[2026-10-28 03:03:42,064.064 INFO    ] Checking for camera pi updates...
[2026-10-28 03:03:42,100.100 INFO    ] 200
[2026-10-28 03:03:42,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:03:42,142.142 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:03:42,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:03:42,226.226 INFO    ] No camera update needed
[2026-10-28 03:03:42,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:03:42,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:03:42,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:03:42,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:03:44,281.281 INFO    ] ================================================
[2026-10-28 03:03:44,296.296 INFO    ] Launching Daemon at Wed Oct 28 03:03:44 IST 2026
[2026-10-28 03:03:44,307.307 INFO    ] ================================================
[2026-10-28 03:03:44,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:03:44
[2026-10-28 03:03:45,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:03:45,733.733 INFO    ] Initializing speech engine...
[2026-10-28 03:03:45,746.746 INFO    ] 2026-10-28 03:03:45
[2026-10-28 03:03:46,008.008 INFO    ] 2026-10-28 03:03:45
[2026-10-28 03:03:46,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:03:46,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:03:46,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:03:46,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:03:46,623.623 INFO    ] time= 28/10/2026 03:03:46
[2026-10-28 03:03:46,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:03:46,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:03:46,790.790 INFO    ] No existing commands found in stream
[2026-10-28 03:03:51,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:03:51,808.808 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-28 03:03:55,512.512 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:03:55,515.515 INFO    ] Checking for system updates...
[2026-10-28 03:03:55,550.550 INFO    ] 200
[2026-10-28 03:03:55,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:03:55,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:03:55,607.607 INFO    ] No update needed
[2026-10-28 03:03:55,609.609 INFO    ] Checking for camera pi updates...
[2026-10-28 03:03:55,642.642 INFO    ] 200
[2026-10-28 03:03:55,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:03:55,684.684 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:03:55,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:03:55,778.778 INFO    ] No camera update needed
[2026-10-28 03:03:55,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:03:55,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:03:55,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:03:55,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:03:57,834.834 INFO    ] ================================================
[2026-10-28 03:03:57,849.849 INFO    ] Launching Daemon at Wed Oct 28 03:03:57 IST 2026
[2026-10-28 03:03:57,860.860 INFO    ] ================================================
[2026-10-28 03:03:58,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:03:58
[2026-10-28 03:03:59,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:03:59,411.411 INFO    ] Initializing speech engine...
[2026-10-28 03:03:59,418.418 INFO    ] 2026-10-28 03:03:59
[2026-10-28 03:03:59,668.668 INFO    ] 2026-10-28 03:03:59
[2026-10-28 03:03:59,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:03:59,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:03:59,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:04:00,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:04:00,222.222 INFO    ] time= 28/10/2026 03:04:00
[2026-10-28 03:04:00,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:04:00,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:04:00,375.375 INFO    ] No existing commands found in stream
[2026-10-28 03:04:05,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:04:05,391.391 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-28 03:04:08,368.368 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:04:08,375.375 INFO    ] Checking for system updates...
[2026-10-28 03:04:08,418.418 INFO    ] 200
[2026-10-28 03:04:08,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:04:08,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:04:08,476.476 INFO    ] No update needed
[2026-10-28 03:04:08,479.479 INFO    ] Checking for camera pi updates...
[2026-10-28 03:04:08,516.516 INFO    ] 200
[2026-10-28 03:04:08,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:04:08,563.563 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:04:08,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:04:08,643.643 INFO    ] No camera update needed
[2026-10-28 03:04:08,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:04:08,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:04:08,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:04:08,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:04:10,699.699 INFO    ] ================================================
[2026-10-28 03:04:10,714.714 INFO    ] Launching Daemon at Wed Oct 28 03:04:10 IST 2026
[2026-10-28 03:04:10,724.724 INFO    ] ================================================
[2026-10-28 03:04:11,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:04:11
[2026-10-28 03:04:11,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:04:12,285.285 INFO    ] Initializing speech engine...
[2026-10-28 03:04:12,304.304 INFO    ] 2026-10-28 03:04:12
[2026-10-28 03:04:12,578.578 INFO    ] 2026-10-28 03:04:12
[2026-10-28 03:04:12,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:04:12,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:04:12,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:04:13,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:04:13,131.131 INFO    ] time= 28/10/2026 03:04:13
[2026-10-28 03:04:13,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:04:13,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:04:13,306.306 INFO    ] No existing commands found in stream
[2026-10-28 03:04:18,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:04:18,335.335 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-28 03:04:19,521.521 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:04:19,524.524 INFO    ] Checking for system updates...
[2026-10-28 03:04:19,561.561 INFO    ] 200
[2026-10-28 03:04:19,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:04:19,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:04:19,625.625 INFO    ] No update needed
[2026-10-28 03:04:19,628.628 INFO    ] Checking for camera pi updates...
[2026-10-28 03:04:19,662.662 INFO    ] 200
[2026-10-28 03:04:19,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:04:19,707.707 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:04:19,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:04:19,790.790 INFO    ] No camera update needed
[2026-10-28 03:04:19,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:04:19,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:04:19,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:04:19,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:04:21,847.847 INFO    ] ================================================
[2026-10-28 03:04:21,861.861 INFO    ] Launching Daemon at Wed Oct 28 03:04:21 IST 2026
[2026-10-28 03:04:21,872.872 INFO    ] ================================================
[2026-10-28 03:04:22,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:04:22
[2026-10-28 03:04:23,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:04:23,290.290 INFO    ] Initializing speech engine...
[2026-10-28 03:04:23,298.298 INFO    ] 2026-10-28 03:04:23
[2026-10-28 03:04:23,545.545 INFO    ] 2026-10-28 03:04:23
[2026-10-28 03:04:23,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:04:23,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:04:23,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:04:24,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:04:24,097.097 INFO    ] time= 28/10/2026 03:04:24
[2026-10-28 03:04:24,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:04:24,122.122 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:04:24,255.255 INFO    ] No existing commands found in stream
[2026-10-28 03:04:29,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:04:29,294.294 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-28 03:04:33,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:04:33,210.210 INFO    ] Checking for system updates...
[2026-10-28 03:04:33,245.245 INFO    ] 200
[2026-10-28 03:04:33,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:04:33,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:04:33,303.303 INFO    ] No update needed
[2026-10-28 03:04:33,306.306 INFO    ] Checking for camera pi updates...
[2026-10-28 03:04:33,338.338 INFO    ] 200
[2026-10-28 03:04:33,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:04:33,382.382 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:04:33,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:04:33,478.478 INFO    ] No camera update needed
[2026-10-28 03:04:33,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:04:33,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:04:33,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:04:33,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:04:35,533.533 INFO    ] ================================================
[2026-10-28 03:04:35,547.547 INFO    ] Launching Daemon at Wed Oct 28 03:04:35 IST 2026
[2026-10-28 03:04:35,558.558 INFO    ] ================================================
[2026-10-28 03:04:36,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:04:36
[2026-10-28 03:04:36,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:04:36,975.975 INFO    ] Initializing speech engine...
[2026-10-28 03:04:36,992.992 INFO    ] 2026-10-28 03:04:36
[2026-10-28 03:04:37,261.261 INFO    ] 2026-10-28 03:04:37
[2026-10-28 03:04:37,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:04:37,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:04:37,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:04:37,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:04:37,806.806 INFO    ] time= 28/10/2026 03:04:37
[2026-10-28 03:04:37,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:04:37,891.891 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:04:38,045.045 INFO    ] No existing commands found in stream
[2026-10-28 03:04:43,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:04:43,071.071 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 03:04:44,372.372 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:04:44,375.375 INFO    ] Checking for system updates...
[2026-10-28 03:04:44,414.414 INFO    ] 200
[2026-10-28 03:04:44,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:04:44,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:04:44,470.470 INFO    ] No update needed
[2026-10-28 03:04:44,473.473 INFO    ] Checking for camera pi updates...
[2026-10-28 03:04:44,510.510 INFO    ] 200
[2026-10-28 03:04:44,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:04:44,552.552 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:04:44,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:04:44,636.636 INFO    ] No camera update needed
[2026-10-28 03:04:44,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:04:44,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:04:44,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:04:44,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:04:46,693.693 INFO    ] ================================================
[2026-10-28 03:04:46,709.709 INFO    ] Launching Daemon at Wed Oct 28 03:04:46 IST 2026
[2026-10-28 03:04:46,720.720 INFO    ] ================================================
[2026-10-28 03:04:47,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:04:47
[2026-10-28 03:04:48,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:04:48,285.285 INFO    ] Initializing speech engine...
[2026-10-28 03:04:48,309.309 INFO    ] 2026-10-28 03:04:48
[2026-10-28 03:04:48,577.577 INFO    ] 2026-10-28 03:04:48
[2026-10-28 03:04:48,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:04:48,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:04:48,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:04:49,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:04:49,147.147 INFO    ] time= 28/10/2026 03:04:49
[2026-10-28 03:04:49,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:04:49,175.175 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:04:49,312.312 INFO    ] No existing commands found in stream
[2026-10-28 03:04:54,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:04:54,340.340 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-28 03:04:56,330.330 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:04:56,333.333 INFO    ] Checking for system updates...
[2026-10-28 03:04:56,370.370 INFO    ] 200
[2026-10-28 03:04:56,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:04:56,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:04:56,428.428 INFO    ] No update needed
[2026-10-28 03:04:56,431.431 INFO    ] Checking for camera pi updates...
[2026-10-28 03:04:56,465.465 INFO    ] 200
[2026-10-28 03:04:56,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:04:56,507.507 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:04:56,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:04:56,596.596 INFO    ] No camera update needed
[2026-10-28 03:04:56,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:04:56,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:04:56,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:04:56,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:04:58,651.651 INFO    ] ================================================
[2026-10-28 03:04:58,667.667 INFO    ] Launching Daemon at Wed Oct 28 03:04:58 IST 2026
[2026-10-28 03:04:58,677.677 INFO    ] ================================================
[2026-10-28 03:04:59,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:04:59
[2026-10-28 03:04:59,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:05:00,169.169 INFO    ] Initializing speech engine...
[2026-10-28 03:05:00,176.176 INFO    ] 2026-10-28 03:05:00
[2026-10-28 03:05:00,472.472 INFO    ] 2026-10-28 03:05:00
[2026-10-28 03:05:00,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:05:00,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:05:00,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:05:01,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:05:01,092.092 INFO    ] time= 28/10/2026 03:05:01
[2026-10-28 03:05:01,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:05:01,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:05:01,236.236 INFO    ] No existing commands found in stream
[2026-10-28 03:05:06,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:05:06,256.256 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-28 03:05:08,460.460 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:05:08,463.463 INFO    ] Checking for system updates...
[2026-10-28 03:05:08,499.499 INFO    ] 200
[2026-10-28 03:05:08,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:05:08,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:05:08,556.556 INFO    ] No update needed
[2026-10-28 03:05:08,559.559 INFO    ] Checking for camera pi updates...
[2026-10-28 03:05:08,596.596 INFO    ] 200
[2026-10-28 03:05:08,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:05:08,639.639 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:05:08,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:05:08,726.726 INFO    ] No camera update needed
[2026-10-28 03:05:08,728.728 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:05:08,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:05:08,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:05:08,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:05:10,784.784 INFO    ] ================================================
[2026-10-28 03:05:10,799.799 INFO    ] Launching Daemon at Wed Oct 28 03:05:10 IST 2026
[2026-10-28 03:05:10,809.809 INFO    ] ================================================
[2026-10-28 03:05:11,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:05:11
[2026-10-28 03:05:11,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:05:12,230.230 INFO    ] Initializing speech engine...
[2026-10-28 03:05:12,240.240 INFO    ] 2026-10-28 03:05:12
[2026-10-28 03:05:12,484.484 INFO    ] 2026-10-28 03:05:12
[2026-10-28 03:05:12,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:05:12,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:05:12,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:05:13,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:05:13,042.042 INFO    ] time= 28/10/2026 03:05:13
[2026-10-28 03:05:13,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:05:13,065.065 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:05:13,196.196 INFO    ] No existing commands found in stream
[2026-10-28 03:05:18,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:05:18,211.211 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-28 03:05:19,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:05:19,424.424 INFO    ] Checking for system updates...
[2026-10-28 03:05:19,459.459 INFO    ] 200
[2026-10-28 03:05:19,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:05:19,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:05:19,517.517 INFO    ] No update needed
[2026-10-28 03:05:19,519.519 INFO    ] Checking for camera pi updates...
[2026-10-28 03:05:19,562.562 INFO    ] 200
[2026-10-28 03:05:19,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:05:19,605.605 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:05:19,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:05:19,691.691 INFO    ] No camera update needed
[2026-10-28 03:05:19,694.694 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:05:19,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:05:19,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:05:19,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:05:21,748.748 INFO    ] ================================================
[2026-10-28 03:05:21,763.763 INFO    ] Launching Daemon at Wed Oct 28 03:05:21 IST 2026
[2026-10-28 03:05:21,774.774 INFO    ] ================================================
[2026-10-28 03:05:22,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:05:22
[2026-10-28 03:05:22,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:05:23,274.274 INFO    ] Initializing speech engine...
[2026-10-28 03:05:23,280.280 INFO    ] 2026-10-28 03:05:23
[2026-10-28 03:05:23,527.527 INFO    ] 2026-10-28 03:05:23
[2026-10-28 03:05:23,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:05:23,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:05:23,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:05:24,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:05:24,084.084 INFO    ] time= 28/10/2026 03:05:24
[2026-10-28 03:05:24,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:05:24,110.110 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:05:24,262.262 INFO    ] No existing commands found in stream
[2026-10-28 03:05:29,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:05:29,291.291 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 03:05:32,144.144 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:05:32,148.148 INFO    ] Checking for system updates...
[2026-10-28 03:05:32,192.192 INFO    ] 200
[2026-10-28 03:05:32,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:05:32,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:05:32,258.258 INFO    ] No update needed
[2026-10-28 03:05:32,261.261 INFO    ] Checking for camera pi updates...
[2026-10-28 03:05:32,298.298 INFO    ] 200
[2026-10-28 03:05:32,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:05:32,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:05:32,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:05:32,453.453 INFO    ] No camera update needed
[2026-10-28 03:05:32,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:05:32,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:05:32,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:05:32,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:05:34,513.513 INFO    ] ================================================
[2026-10-28 03:05:34,527.527 INFO    ] Launching Daemon at Wed Oct 28 03:05:34 IST 2026
[2026-10-28 03:05:34,538.538 INFO    ] ================================================
[2026-10-28 03:05:35,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:05:35
[2026-10-28 03:05:35,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:05:36,168.168 INFO    ] Initializing speech engine...
[2026-10-28 03:05:36,179.179 INFO    ] 2026-10-28 03:05:36
[2026-10-28 03:05:36,489.489 INFO    ] 2026-10-28 03:05:36
[2026-10-28 03:05:36,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:05:36,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:05:36,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:05:36,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:05:37,001.001 INFO    ] time= 28/10/2026 03:05:36
[2026-10-28 03:05:37,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:05:37,050.050 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:05:37,203.203 INFO    ] No existing commands found in stream
[2026-10-28 03:05:42,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:05:42,232.232 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 03:05:43,623.623 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:05:43,626.626 INFO    ] Checking for system updates...
[2026-10-28 03:05:43,663.663 INFO    ] 200
[2026-10-28 03:05:43,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:05:43,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:05:43,723.723 INFO    ] No update needed
[2026-10-28 03:05:43,726.726 INFO    ] Checking for camera pi updates...
[2026-10-28 03:05:43,760.760 INFO    ] 200
[2026-10-28 03:05:43,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:05:43,810.810 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:05:43,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:05:43,911.911 INFO    ] No camera update needed
[2026-10-28 03:05:43,914.914 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:05:43,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:05:43,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:05:43,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:05:45,970.970 INFO    ] ================================================
[2026-10-28 03:05:45,985.985 INFO    ] Launching Daemon at Wed Oct 28 03:05:45 IST 2026
[2026-10-28 03:05:46,996.996 INFO    ] ================================================
[2026-10-28 03:05:46,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:05:46
[2026-10-28 03:05:47,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:05:47,467.467 INFO    ] Initializing speech engine...
[2026-10-28 03:05:47,483.483 INFO    ] 2026-10-28 03:05:47
[2026-10-28 03:05:47,773.773 INFO    ] 2026-10-28 03:05:47
[2026-10-28 03:05:47,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:05:48,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:05:48,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:05:48,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:05:48,338.338 INFO    ] time= 28/10/2026 03:05:48
[2026-10-28 03:05:48,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:05:48,424.424 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:05:48,553.553 INFO    ] No existing commands found in stream
[2026-10-28 03:05:53,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:05:53,579.579 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-28 03:05:56,583.583 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:05:56,586.586 INFO    ] Checking for system updates...
[2026-10-28 03:05:56,623.623 INFO    ] 200
[2026-10-28 03:05:56,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:05:56,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:05:56,684.684 INFO    ] No update needed
[2026-10-28 03:05:56,686.686 INFO    ] Checking for camera pi updates...
[2026-10-28 03:05:56,719.719 INFO    ] 200
[2026-10-28 03:05:56,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:05:56,762.762 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:05:56,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:05:56,863.863 INFO    ] No camera update needed
[2026-10-28 03:05:56,865.865 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:05:56,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:05:56,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:05:56,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:05:58,918.918 INFO    ] ================================================
[2026-10-28 03:05:58,933.933 INFO    ] Launching Daemon at Wed Oct 28 03:05:58 IST 2026
[2026-10-28 03:05:58,943.943 INFO    ] ================================================
[2026-10-28 03:05:59,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:05:59
[2026-10-28 03:06:00,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:06:00,355.355 INFO    ] Initializing speech engine...
[2026-10-28 03:06:00,363.363 INFO    ] 2026-10-28 03:06:00
[2026-10-28 03:06:00,657.657 INFO    ] 2026-10-28 03:06:00
[2026-10-28 03:06:00,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:06:00,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:06:00,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:06:01,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:06:01,079.079 INFO    ] time= 28/10/2026 03:06:01
[2026-10-28 03:06:01,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:06:01,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:06:01,244.244 INFO    ] No existing commands found in stream
[2026-10-28 03:06:06,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:06:06,275.275 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 03:06:09,861.861 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:06:09,864.864 INFO    ] Checking for system updates...
[2026-10-28 03:06:09,899.899 INFO    ] 200
[2026-10-28 03:06:09,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:06:09,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:06:09,957.957 INFO    ] No update needed
[2026-10-28 03:06:09,960.960 INFO    ] Checking for camera pi updates...
[2026-10-28 03:06:09,993.993 INFO    ] 200
[2026-10-28 03:06:09,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:06:10,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:06:10,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:06:10,221.221 INFO    ] No camera update needed
[2026-10-28 03:06:10,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:06:10,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:06:10,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:06:10,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:06:12,276.276 INFO    ] ================================================
[2026-10-28 03:06:12,291.291 INFO    ] Launching Daemon at Wed Oct 28 03:06:12 IST 2026
[2026-10-28 03:06:12,302.302 INFO    ] ================================================
[2026-10-28 03:06:12,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:06:12
[2026-10-28 03:06:13,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:06:13,710.710 INFO    ] Initializing speech engine...
[2026-10-28 03:06:13,725.725 INFO    ] 2026-10-28 03:06:13
[2026-10-28 03:06:13,990.990 INFO    ] 2026-10-28 03:06:13
[2026-10-28 03:06:14,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:06:14,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:06:14,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:06:14,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:06:14,592.592 INFO    ] time= 28/10/2026 03:06:14
[2026-10-28 03:06:14,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:06:14,653.653 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:06:14,803.803 INFO    ] No existing commands found in stream
[2026-10-28 03:06:19,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:06:19,828.828 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 03:06:23,420.420 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:06:23,423.423 INFO    ] Checking for system updates...
[2026-10-28 03:06:23,459.459 INFO    ] 200
[2026-10-28 03:06:23,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:06:23,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:06:23,518.518 INFO    ] No update needed
[2026-10-28 03:06:23,520.520 INFO    ] Checking for camera pi updates...
[2026-10-28 03:06:23,556.556 INFO    ] 200
[2026-10-28 03:06:23,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:06:23,600.600 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:06:23,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:06:23,681.681 INFO    ] No camera update needed
[2026-10-28 03:06:23,684.684 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:06:23,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:06:23,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:06:23,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:06:25,740.740 INFO    ] ================================================
[2026-10-28 03:06:25,755.755 INFO    ] Launching Daemon at Wed Oct 28 03:06:25 IST 2026
[2026-10-28 03:06:25,766.766 INFO    ] ================================================
[2026-10-28 03:06:26,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:06:26
[2026-10-28 03:06:26,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:06:27,189.189 INFO    ] Initializing speech engine...
[2026-10-28 03:06:27,198.198 INFO    ] 2026-10-28 03:06:27
[2026-10-28 03:06:27,444.444 INFO    ] 2026-10-28 03:06:27
[2026-10-28 03:06:27,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:06:27,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:06:27,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:06:27,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:06:27,997.997 INFO    ] time= 28/10/2026 03:06:27
[2026-10-28 03:06:28,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:06:28,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:06:28,149.149 INFO    ] No existing commands found in stream
[2026-10-28 03:06:33,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:06:33,165.165 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 03:06:36,790.790 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:06:36,793.793 INFO    ] Checking for system updates...
[2026-10-28 03:06:36,828.828 INFO    ] 200
[2026-10-28 03:06:36,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:06:36,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:06:36,886.886 INFO    ] No update needed
[2026-10-28 03:06:36,888.888 INFO    ] Checking for camera pi updates...
[2026-10-28 03:06:36,922.922 INFO    ] 200
[2026-10-28 03:06:36,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:06:36,967.967 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:06:37,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:06:37,047.047 INFO    ] No camera update needed
[2026-10-28 03:06:37,050.050 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:06:37,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:06:37,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:06:37,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:06:39,106.106 INFO    ] ================================================
[2026-10-28 03:06:39,121.121 INFO    ] Launching Daemon at Wed Oct 28 03:06:39 IST 2026
[2026-10-28 03:06:39,132.132 INFO    ] ================================================
[2026-10-28 03:06:39,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:06:39
[2026-10-28 03:06:40,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:06:40,825.825 INFO    ] Initializing speech engine...
[2026-10-28 03:06:40,835.835 INFO    ] 2026-10-28 03:06:40
[2026-10-28 03:06:41,155.155 INFO    ] 2026-10-28 03:06:41
[2026-10-28 03:06:41,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:06:41,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:06:41,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:06:41,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:06:41,695.695 INFO    ] time= 28/10/2026 03:06:41
[2026-10-28 03:06:41,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:06:41,733.733 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:06:41,902.902 INFO    ] No existing commands found in stream
[2026-10-28 03:06:46,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:06:46,937.937 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-28 03:06:49,862.862 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:06:49,865.865 INFO    ] Checking for system updates...
[2026-10-28 03:06:49,901.901 INFO    ] 200
[2026-10-28 03:06:49,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:06:49,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:06:49,973.973 INFO    ] No update needed
[2026-10-28 03:06:49,975.975 INFO    ] Checking for camera pi updates...
[2026-10-28 03:06:50,008.008 INFO    ] 200
[2026-10-28 03:06:50,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:06:50,051.051 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:06:50,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:06:50,132.132 INFO    ] No camera update needed
[2026-10-28 03:06:50,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:06:50,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:06:50,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:06:50,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:06:52,188.188 INFO    ] ================================================
[2026-10-28 03:06:52,203.203 INFO    ] Launching Daemon at Wed Oct 28 03:06:52 IST 2026
[2026-10-28 03:06:52,213.213 INFO    ] ================================================
[2026-10-28 03:06:52,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:06:52
[2026-10-28 03:06:53,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:06:53,652.652 INFO    ] Initializing speech engine...
[2026-10-28 03:06:53,661.661 INFO    ] 2026-10-28 03:06:53
[2026-10-28 03:06:53,907.907 INFO    ] 2026-10-28 03:06:53
[2026-10-28 03:06:53,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:06:54,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:06:54,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:06:54,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:06:54,463.463 INFO    ] time= 28/10/2026 03:06:54
[2026-10-28 03:06:54,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:06:54,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:06:54,593.593 INFO    ] No existing commands found in stream
[2026-10-28 03:06:59,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:06:59,623.623 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-28 03:07:00,325.325 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:07:00,327.327 INFO    ] Checking for system updates...
[2026-10-28 03:07:00,362.362 INFO    ] 200
[2026-10-28 03:07:00,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:07:00,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:07:00,420.420 INFO    ] No update needed
[2026-10-28 03:07:00,422.422 INFO    ] Checking for camera pi updates...
[2026-10-28 03:07:00,458.458 INFO    ] 200
[2026-10-28 03:07:00,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:07:00,505.505 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:07:00,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:07:00,606.606 INFO    ] No camera update needed
[2026-10-28 03:07:00,609.609 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:07:00,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:07:00,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:07:00,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:07:02,683.683 INFO    ] ================================================
[2026-10-28 03:07:02,706.706 INFO    ] Launching Daemon at Wed Oct 28 03:07:02 IST 2026
[2026-10-28 03:07:02,725.725 INFO    ] ================================================
[2026-10-28 03:07:03,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:07:03
[2026-10-28 03:07:03,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:07:04,237.237 INFO    ] Initializing speech engine...
[2026-10-28 03:07:04,251.251 INFO    ] 2026-10-28 03:07:04
[2026-10-28 03:07:04,517.517 INFO    ] 2026-10-28 03:07:04
[2026-10-28 03:07:04,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:07:04,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:07:04,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:07:05,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:07:05,085.085 INFO    ] time= 28/10/2026 03:07:05
[2026-10-28 03:07:05,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:07:05,111.111 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:07:05,226.226 INFO    ] No existing commands found in stream
[2026-10-28 03:07:10,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:07:10,252.252 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-28 03:07:13,488.488 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:07:13,491.491 INFO    ] Checking for system updates...
[2026-10-28 03:07:13,527.527 INFO    ] 200
[2026-10-28 03:07:13,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:07:13,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:07:13,591.591 INFO    ] No update needed
[2026-10-28 03:07:13,593.593 INFO    ] Checking for camera pi updates...
[2026-10-28 03:07:13,626.626 INFO    ] 200
[2026-10-28 03:07:13,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:07:13,677.677 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:07:13,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:07:13,777.777 INFO    ] No camera update needed
[2026-10-28 03:07:13,779.779 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:07:13,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:07:13,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:07:13,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:07:15,834.834 INFO    ] ================================================
[2026-10-28 03:07:15,850.850 INFO    ] Launching Daemon at Wed Oct 28 03:07:15 IST 2026
[2026-10-28 03:07:15,861.861 INFO    ] ================================================
[2026-10-28 03:07:16,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:07:16
[2026-10-28 03:07:17,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:07:17,289.289 INFO    ] Initializing speech engine...
[2026-10-28 03:07:17,297.297 INFO    ] 2026-10-28 03:07:17
[2026-10-28 03:07:17,548.548 INFO    ] 2026-10-28 03:07:17
[2026-10-28 03:07:17,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:07:17,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:07:17,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:07:18,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:07:18,105.105 INFO    ] time= 28/10/2026 03:07:18
[2026-10-28 03:07:18,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:07:18,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:07:18,259.259 INFO    ] No existing commands found in stream
[2026-10-28 03:07:23,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:07:23,280.280 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-28 03:07:26,164.164 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:07:26,167.167 INFO    ] Checking for system updates...
[2026-10-28 03:07:26,202.202 INFO    ] 200
[2026-10-28 03:07:26,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:07:26,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:07:26,259.259 INFO    ] No update needed
[2026-10-28 03:07:26,261.261 INFO    ] Checking for camera pi updates...
[2026-10-28 03:07:26,295.295 INFO    ] 200
[2026-10-28 03:07:26,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:07:26,338.338 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:07:26,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:07:26,440.440 INFO    ] No camera update needed
[2026-10-28 03:07:26,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:07:26,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:07:26,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:07:26,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:07:28,497.497 INFO    ] ================================================
[2026-10-28 03:07:28,513.513 INFO    ] Launching Daemon at Wed Oct 28 03:07:28 IST 2026
[2026-10-28 03:07:28,524.524 INFO    ] ================================================
[2026-10-28 03:07:29,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:07:29
[2026-10-28 03:07:29,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:07:29,963.963 INFO    ] Initializing speech engine...
[2026-10-28 03:07:29,968.968 INFO    ] 2026-10-28 03:07:29
[2026-10-28 03:07:30,233.233 INFO    ] 2026-10-28 03:07:30
[2026-10-28 03:07:30,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:07:30,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:07:30,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:07:30,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:07:30,776.776 INFO    ] time= 28/10/2026 03:07:30
[2026-10-28 03:07:30,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:07:30,806.806 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:07:30,935.935 INFO    ] No existing commands found in stream
[2026-10-28 03:07:35,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:07:35,954.954 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-28 03:07:37,395.395 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:07:37,398.398 INFO    ] Checking for system updates...
[2026-10-28 03:07:37,437.437 INFO    ] 200
[2026-10-28 03:07:37,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:07:37,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:07:37,494.494 INFO    ] No update needed
[2026-10-28 03:07:37,496.496 INFO    ] Checking for camera pi updates...
[2026-10-28 03:07:37,530.530 INFO    ] 200
[2026-10-28 03:07:37,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:07:37,574.574 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:07:37,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:07:37,654.654 INFO    ] No camera update needed
[2026-10-28 03:07:37,656.656 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:07:37,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:07:37,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:07:37,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:07:39,711.711 INFO    ] ================================================
[2026-10-28 03:07:39,728.728 INFO    ] Launching Daemon at Wed Oct 28 03:07:39 IST 2026
[2026-10-28 03:07:39,738.738 INFO    ] ================================================
[2026-10-28 03:07:40,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:07:40
[2026-10-28 03:07:40,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:07:41,138.138 INFO    ] Initializing speech engine...
[2026-10-28 03:07:41,152.152 INFO    ] 2026-10-28 03:07:41
[2026-10-28 03:07:41,418.418 INFO    ] 2026-10-28 03:07:41
[2026-10-28 03:07:41,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:07:41,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:07:41,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:07:41,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:07:41,963.963 INFO    ] time= 28/10/2026 03:07:41
[2026-10-28 03:07:41,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:07:41,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:07:42,110.110 INFO    ] No existing commands found in stream
[2026-10-28 03:07:47,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:07:47,138.138 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-28 03:07:50,961.961 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:07:50,964.964 INFO    ] Checking for system updates...
[2026-10-28 03:07:51,003.003 INFO    ] 200
[2026-10-28 03:07:51,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:07:51,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:07:51,067.067 INFO    ] No update needed
[2026-10-28 03:07:51,069.069 INFO    ] Checking for camera pi updates...
[2026-10-28 03:07:51,106.106 INFO    ] 200
[2026-10-28 03:07:51,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:07:51,149.149 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:07:51,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:07:51,231.231 INFO    ] No camera update needed
[2026-10-28 03:07:51,233.233 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:07:51,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:07:51,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:07:51,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:07:53,287.287 INFO    ] ================================================
[2026-10-28 03:07:53,303.303 INFO    ] Launching Daemon at Wed Oct 28 03:07:53 IST 2026
[2026-10-28 03:07:53,314.314 INFO    ] ================================================
[2026-10-28 03:07:53,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:07:53
[2026-10-28 03:07:54,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:07:54,946.946 INFO    ] Initializing speech engine...
[2026-10-28 03:07:54,956.956 INFO    ] 2026-10-28 03:07:54
[2026-10-28 03:07:55,232.232 INFO    ] 2026-10-28 03:07:55
[2026-10-28 03:07:55,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:07:55,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:07:55,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:07:55,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:07:55,795.795 INFO    ] time= 28/10/2026 03:07:55
[2026-10-28 03:07:55,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:07:55,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:07:55,969.969 INFO    ] No existing commands found in stream
[2026-10-28 03:08:01,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:08:01,004.004 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-28 03:08:05,322.322 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:08:05,326.326 INFO    ] Checking for system updates...
[2026-10-28 03:08:05,363.363 INFO    ] 200
[2026-10-28 03:08:05,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:08:05,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:08:05,429.429 INFO    ] No update needed
[2026-10-28 03:08:05,431.431 INFO    ] Checking for camera pi updates...
[2026-10-28 03:08:05,466.466 INFO    ] 200
[2026-10-28 03:08:05,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:08:05,510.510 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:08:05,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:08:05,602.602 INFO    ] No camera update needed
[2026-10-28 03:08:05,605.605 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:08:05,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:08:05,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:08:05,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:08:07,662.662 INFO    ] ================================================
[2026-10-28 03:08:07,678.678 INFO    ] Launching Daemon at Wed Oct 28 03:08:07 IST 2026
[2026-10-28 03:08:07,688.688 INFO    ] ================================================
[2026-10-28 03:08:08,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:08:08
[2026-10-28 03:08:08,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:08:09,184.184 INFO    ] Initializing speech engine...
[2026-10-28 03:08:09,192.192 INFO    ] 2026-10-28 03:08:09
[2026-10-28 03:08:09,495.495 INFO    ] 2026-10-28 03:08:09
[2026-10-28 03:08:09,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:08:09,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:08:09,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:08:10,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:08:10,025.025 INFO    ] time= 28/10/2026 03:08:10
[2026-10-28 03:08:10,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:08:10,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:08:10,176.176 INFO    ] No existing commands found in stream
[2026-10-28 03:08:15,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:08:15,211.211 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 03:08:15,984.984 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:08:15,987.987 INFO    ] Checking for system updates...
[2026-10-28 03:08:16,024.024 INFO    ] 200
[2026-10-28 03:08:16,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:08:16,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:08:16,085.085 INFO    ] No update needed
[2026-10-28 03:08:16,087.087 INFO    ] Checking for camera pi updates...
[2026-10-28 03:08:16,126.126 INFO    ] 200
[2026-10-28 03:08:16,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:08:16,180.180 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:08:16,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:08:16,387.387 INFO    ] No camera update needed
[2026-10-28 03:08:16,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:08:16,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:08:16,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:08:16,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:08:18,446.446 INFO    ] ================================================
[2026-10-28 03:08:18,461.461 INFO    ] Launching Daemon at Wed Oct 28 03:08:18 IST 2026
[2026-10-28 03:08:18,473.473 INFO    ] ================================================
[2026-10-28 03:08:19,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:08:19
[2026-10-28 03:08:19,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:08:19,885.885 INFO    ] Initializing speech engine...
[2026-10-28 03:08:19,900.900 INFO    ] 2026-10-28 03:08:19
[2026-10-28 03:08:20,165.165 INFO    ] 2026-10-28 03:08:20
[2026-10-28 03:08:20,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:08:20,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:08:20,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:08:20,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:08:20,737.737 INFO    ] time= 28/10/2026 03:08:20
[2026-10-28 03:08:20,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:08:20,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:08:20,894.894 INFO    ] No existing commands found in stream
[2026-10-28 03:08:25,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:08:25,908.908 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 03:08:29,947.947 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:08:29,950.950 INFO    ] Checking for system updates...
[2026-10-28 03:08:29,986.986 INFO    ] 200
[2026-10-28 03:08:29,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:08:30,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:08:30,042.042 INFO    ] No update needed
[2026-10-28 03:08:30,045.045 INFO    ] Checking for camera pi updates...
[2026-10-28 03:08:30,082.082 INFO    ] 200
[2026-10-28 03:08:30,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:08:30,125.125 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:08:30,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:08:30,231.231 INFO    ] No camera update needed
[2026-10-28 03:08:30,233.233 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:08:30,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:08:30,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:08:30,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:08:32,295.295 INFO    ] ================================================
[2026-10-28 03:08:32,313.313 INFO    ] Launching Daemon at Wed Oct 28 03:08:32 IST 2026
[2026-10-28 03:08:32,326.326 INFO    ] ================================================
[2026-10-28 03:08:32,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:08:32
[2026-10-28 03:08:33,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:08:33,821.821 INFO    ] Initializing speech engine...
[2026-10-28 03:08:33,844.844 INFO    ] 2026-10-28 03:08:33
[2026-10-28 03:08:34,100.100 INFO    ] 2026-10-28 03:08:34
[2026-10-28 03:08:34,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:08:34,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:08:34,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:08:34,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:08:34,656.656 INFO    ] time= 28/10/2026 03:08:34
[2026-10-28 03:08:34,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:08:34,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:08:34,811.811 INFO    ] No existing commands found in stream
[2026-10-28 03:08:39,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:08:39,833.833 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-28 03:08:42,752.752 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:08:42,755.755 INFO    ] Checking for system updates...
[2026-10-28 03:08:42,793.793 INFO    ] 200
[2026-10-28 03:08:42,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:08:42,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:08:42,854.854 INFO    ] No update needed
[2026-10-28 03:08:42,857.857 INFO    ] Checking for camera pi updates...
[2026-10-28 03:08:42,893.893 INFO    ] 200
[2026-10-28 03:08:42,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:08:42,944.944 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:08:43,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:08:43,048.048 INFO    ] No camera update needed
[2026-10-28 03:08:43,051.051 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:08:43,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:08:43,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:08:43,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:08:45,106.106 INFO    ] ================================================
[2026-10-28 03:08:45,122.122 INFO    ] Launching Daemon at Wed Oct 28 03:08:45 IST 2026
[2026-10-28 03:08:45,132.132 INFO    ] ================================================
[2026-10-28 03:08:45,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:08:45
[2026-10-28 03:08:46,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:08:46,598.598 INFO    ] Initializing speech engine...
[2026-10-28 03:08:46,613.613 INFO    ] 2026-10-28 03:08:46
[2026-10-28 03:08:46,896.896 INFO    ] 2026-10-28 03:08:46
[2026-10-28 03:08:46,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:08:47,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:08:47,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:08:47,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:08:47,436.436 INFO    ] time= 28/10/2026 03:08:47
[2026-10-28 03:08:47,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:08:47,512.512 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:08:47,637.637 INFO    ] No existing commands found in stream
[2026-10-28 03:08:52,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:08:52,657.657 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 03:08:56,207.207 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:08:56,210.210 INFO    ] Checking for system updates...
[2026-10-28 03:08:56,247.247 INFO    ] 200
[2026-10-28 03:08:56,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:08:56,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:08:56,305.305 INFO    ] No update needed
[2026-10-28 03:08:56,308.308 INFO    ] Checking for camera pi updates...
[2026-10-28 03:08:56,343.343 INFO    ] 200
[2026-10-28 03:08:56,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:08:56,392.392 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:08:56,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:08:56,498.498 INFO    ] No camera update needed
[2026-10-28 03:08:56,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:08:56,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:08:56,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:08:56,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:08:58,556.556 INFO    ] ================================================
[2026-10-28 03:08:58,571.571 INFO    ] Launching Daemon at Wed Oct 28 03:08:58 IST 2026
[2026-10-28 03:08:58,581.581 INFO    ] ================================================
[2026-10-28 03:08:59,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:08:59
[2026-10-28 03:08:59,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:09:00,004.004 INFO    ] Initializing speech engine...
[2026-10-28 03:09:00,026.026 INFO    ] 2026-10-28 03:09:00
[2026-10-28 03:09:00,276.276 INFO    ] 2026-10-28 03:09:00
[2026-10-28 03:09:00,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:09:00,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:09:00,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:09:00,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:09:00,830.830 INFO    ] time= 28/10/2026 03:09:00
[2026-10-28 03:09:00,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:09:00,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:09:00,982.982 INFO    ] No existing commands found in stream
[2026-10-28 03:09:05,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:09:06,000.000 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 03:09:07,488.488 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:09:07,491.491 INFO    ] Checking for system updates...
[2026-10-28 03:09:07,526.526 INFO    ] 200
[2026-10-28 03:09:07,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:09:07,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:09:07,585.585 INFO    ] No update needed
[2026-10-28 03:09:07,588.588 INFO    ] Checking for camera pi updates...
[2026-10-28 03:09:07,621.621 INFO    ] 200
[2026-10-28 03:09:07,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:09:07,666.666 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:09:07,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:09:07,747.747 INFO    ] No camera update needed
[2026-10-28 03:09:07,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:09:07,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:09:07,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:09:07,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:09:09,803.803 INFO    ] ================================================
[2026-10-28 03:09:09,819.819 INFO    ] Launching Daemon at Wed Oct 28 03:09:09 IST 2026
[2026-10-28 03:09:09,830.830 INFO    ] ================================================
[2026-10-28 03:09:10,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:09:10
[2026-10-28 03:09:11,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:09:11,272.272 INFO    ] Initializing speech engine...
[2026-10-28 03:09:11,277.277 INFO    ] 2026-10-28 03:09:11
[2026-10-28 03:09:11,553.553 INFO    ] 2026-10-28 03:09:11
[2026-10-28 03:09:11,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:09:11,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:09:11,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:09:12,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:09:12,105.105 INFO    ] time= 28/10/2026 03:09:12
[2026-10-28 03:09:12,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:09:12,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:09:12,278.278 INFO    ] No existing commands found in stream
[2026-10-28 03:09:17,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:09:17,311.311 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 03:09:18,043.043 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:09:18,046.046 INFO    ] Checking for system updates...
[2026-10-28 03:09:18,087.087 INFO    ] 200
[2026-10-28 03:09:18,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:09:18,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:09:18,150.150 INFO    ] No update needed
[2026-10-28 03:09:18,153.153 INFO    ] Checking for camera pi updates...
[2026-10-28 03:09:18,187.187 INFO    ] 200
[2026-10-28 03:09:18,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:09:18,229.229 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:09:18,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:09:18,278.278 INFO    ] No camera update needed
[2026-10-28 03:09:18,281.281 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:09:18,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:09:18,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:09:18,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:09:20,334.334 INFO    ] ================================================
[2026-10-28 03:09:20,350.350 INFO    ] Launching Daemon at Wed Oct 28 03:09:20 IST 2026
[2026-10-28 03:09:20,361.361 INFO    ] ================================================
[2026-10-28 03:09:21,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:09:21
[2026-10-28 03:09:21,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:09:21,993.993 INFO    ] Initializing speech engine...
[2026-10-28 03:09:22,000.000 INFO    ] 2026-10-28 03:09:21
[2026-10-28 03:09:22,289.289 INFO    ] 2026-10-28 03:09:22
[2026-10-28 03:09:22,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:09:22,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:09:22,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:09:22,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:09:22,844.844 INFO    ] time= 28/10/2026 03:09:22
[2026-10-28 03:09:22,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:09:22,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:09:23,008.008 INFO    ] No existing commands found in stream
[2026-10-28 03:09:28,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:09:28,037.037 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-28 03:09:30,104.104 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:09:30,107.107 INFO    ] Checking for system updates...
[2026-10-28 03:09:30,144.144 INFO    ] 200
[2026-10-28 03:09:30,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:09:30,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:09:30,200.200 INFO    ] No update needed
[2026-10-28 03:09:30,203.203 INFO    ] Checking for camera pi updates...
[2026-10-28 03:09:30,236.236 INFO    ] 200
[2026-10-28 03:09:30,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:09:30,279.279 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:09:30,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:09:30,365.365 INFO    ] No camera update needed
[2026-10-28 03:09:30,368.368 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:09:30,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:09:30,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:09:30,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:09:32,423.423 INFO    ] ================================================
[2026-10-28 03:09:32,440.440 INFO    ] Launching Daemon at Wed Oct 28 03:09:32 IST 2026
[2026-10-28 03:09:32,453.453 INFO    ] ================================================
[2026-10-28 03:09:33,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:09:33
[2026-10-28 03:09:33,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:09:33,895.895 INFO    ] Initializing speech engine...
[2026-10-28 03:09:33,907.907 INFO    ] 2026-10-28 03:09:33
[2026-10-28 03:09:34,168.168 INFO    ] 2026-10-28 03:09:34
[2026-10-28 03:09:34,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:09:34,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:09:34,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:09:34,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:09:34,720.720 INFO    ] time= 28/10/2026 03:09:34
[2026-10-28 03:09:34,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:09:34,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:09:34,873.873 INFO    ] No existing commands found in stream
[2026-10-28 03:09:39,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:09:39,888.888 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 03:09:40,461.461 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:09:40,464.464 INFO    ] Checking for system updates...
[2026-10-28 03:09:40,503.503 INFO    ] 200
[2026-10-28 03:09:40,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:09:40,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:09:40,566.566 INFO    ] No update needed
[2026-10-28 03:09:40,568.568 INFO    ] Checking for camera pi updates...
[2026-10-28 03:09:40,602.602 INFO    ] 200
[2026-10-28 03:09:40,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:09:40,644.644 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:09:40,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:09:40,746.746 INFO    ] No camera update needed
[2026-10-28 03:09:40,748.748 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:09:40,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:09:40,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:09:40,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:09:42,802.802 INFO    ] ================================================
[2026-10-28 03:09:42,820.820 INFO    ] Launching Daemon at Wed Oct 28 03:09:42 IST 2026
[2026-10-28 03:09:42,831.831 INFO    ] ================================================
[2026-10-28 03:09:43,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:09:43
[2026-10-28 03:09:43,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:09:44,243.243 INFO    ] Initializing speech engine...
[2026-10-28 03:09:44,252.252 INFO    ] 2026-10-28 03:09:44
[2026-10-28 03:09:44,503.503 INFO    ] 2026-10-28 03:09:44
[2026-10-28 03:09:44,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:09:44,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:09:44,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:09:45,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:09:45,047.047 INFO    ] time= 28/10/2026 03:09:45
[2026-10-28 03:09:45,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:09:45,068.068 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:09:45,185.185 INFO    ] No existing commands found in stream
[2026-10-28 03:09:50,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:09:50,211.211 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 03:09:54,433.433 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:09:54,436.436 INFO    ] Checking for system updates...
[2026-10-28 03:09:54,477.477 INFO    ] 200
[2026-10-28 03:09:54,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:09:54,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:09:54,541.541 INFO    ] No update needed
[2026-10-28 03:09:54,543.543 INFO    ] Checking for camera pi updates...
[2026-10-28 03:09:54,580.580 INFO    ] 200
[2026-10-28 03:09:54,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:09:54,623.623 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:09:54,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:09:54,713.713 INFO    ] No camera update needed
[2026-10-28 03:09:54,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:09:54,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:09:54,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:09:54,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:09:56,768.768 INFO    ] ================================================
[2026-10-28 03:09:56,783.783 INFO    ] Launching Daemon at Wed Oct 28 03:09:56 IST 2026
[2026-10-28 03:09:56,793.793 INFO    ] ================================================
[2026-10-28 03:09:57,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:09:57
[2026-10-28 03:09:58,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:09:58,397.397 INFO    ] Initializing speech engine...
[2026-10-28 03:09:58,410.410 INFO    ] 2026-10-28 03:09:58
[2026-10-28 03:09:58,693.693 INFO    ] 2026-10-28 03:09:58
[2026-10-28 03:09:58,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:09:59,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:09:59,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:09:59,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:09:59,268.268 INFO    ] time= 28/10/2026 03:09:59
[2026-10-28 03:09:59,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:09:59,312.312 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:09:59,473.473 INFO    ] No existing commands found in stream
[2026-10-28 03:10:04,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:10:04,492.492 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 03:10:08,966.966 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:10:08,969.969 INFO    ] Checking for system updates...
[2026-10-28 03:10:09,006.006 INFO    ] 200
[2026-10-28 03:10:09,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:10:09,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:10:09,066.066 INFO    ] No update needed
[2026-10-28 03:10:09,069.069 INFO    ] Checking for camera pi updates...
[2026-10-28 03:10:09,102.102 INFO    ] 200
[2026-10-28 03:10:09,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:10:09,152.152 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:10:09,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:10:09,272.272 INFO    ] No camera update needed
[2026-10-28 03:10:09,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:10:09,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:10:09,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:10:09,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:10:11,327.327 INFO    ] ================================================
[2026-10-28 03:10:11,342.342 INFO    ] Launching Daemon at Wed Oct 28 03:10:11 IST 2026
[2026-10-28 03:10:11,352.352 INFO    ] ================================================
[2026-10-28 03:10:11,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:10:11
[2026-10-28 03:10:12,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:10:12,786.786 INFO    ] Initializing speech engine...
[2026-10-28 03:10:12,792.792 INFO    ] 2026-10-28 03:10:12
[2026-10-28 03:10:13,083.083 INFO    ] 2026-10-28 03:10:13
[2026-10-28 03:10:13,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:10:13,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:10:13,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:10:13,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:10:13,604.604 INFO    ] time= 28/10/2026 03:10:13
[2026-10-28 03:10:13,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:10:13,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:10:13,830.830 INFO    ] No existing commands found in stream
[2026-10-28 03:10:18,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:10:18,858.858 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 03:10:23,061.061 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:10:23,064.064 INFO    ] Checking for system updates...
[2026-10-28 03:10:23,099.099 INFO    ] 200
[2026-10-28 03:10:23,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:10:23,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:10:23,155.155 INFO    ] No update needed
[2026-10-28 03:10:23,158.158 INFO    ] Checking for camera pi updates...
[2026-10-28 03:10:23,197.197 INFO    ] 200
[2026-10-28 03:10:23,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:10:23,242.242 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:10:23,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:10:23,428.428 INFO    ] No camera update needed
[2026-10-28 03:10:23,430.430 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:10:23,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:10:23,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:10:23,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:10:25,483.483 INFO    ] ================================================
[2026-10-28 03:10:25,497.497 INFO    ] Launching Daemon at Wed Oct 28 03:10:25 IST 2026
[2026-10-28 03:10:25,508.508 INFO    ] ================================================
[2026-10-28 03:10:26,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:10:26
[2026-10-28 03:10:26,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:10:26,927.927 INFO    ] Initializing speech engine...
[2026-10-28 03:10:26,943.943 INFO    ] 2026-10-28 03:10:26
[2026-10-28 03:10:27,199.199 INFO    ] 2026-10-28 03:10:27
[2026-10-28 03:10:27,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:10:27,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:10:27,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:10:27,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:10:27,756.756 INFO    ] time= 28/10/2026 03:10:27
[2026-10-28 03:10:27,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:10:27,782.782 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:10:27,910.910 INFO    ] No existing commands found in stream
[2026-10-28 03:10:32,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:10:32,926.926 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-28 03:10:36,701.701 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:10:36,704.704 INFO    ] Checking for system updates...
[2026-10-28 03:10:36,742.742 INFO    ] 200
[2026-10-28 03:10:36,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:10:36,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:10:36,799.799 INFO    ] No update needed
[2026-10-28 03:10:36,801.801 INFO    ] Checking for camera pi updates...
[2026-10-28 03:10:36,835.835 INFO    ] 200
[2026-10-28 03:10:36,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:10:36,881.881 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:10:36,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:10:36,961.961 INFO    ] No camera update needed
[2026-10-28 03:10:36,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:10:36,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:10:36,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:10:36,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:10:39,021.021 INFO    ] ================================================
[2026-10-28 03:10:39,036.036 INFO    ] Launching Daemon at Wed Oct 28 03:10:39 IST 2026
[2026-10-28 03:10:39,047.047 INFO    ] ================================================
[2026-10-28 03:10:39,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:10:39
[2026-10-28 03:10:40,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:10:40,446.446 INFO    ] Initializing speech engine...
[2026-10-28 03:10:40,455.455 INFO    ] 2026-10-28 03:10:40
[2026-10-28 03:10:40,741.741 INFO    ] 2026-10-28 03:10:40
[2026-10-28 03:10:40,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:10:40,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:10:41,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:10:41,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:10:41,293.293 INFO    ] time= 28/10/2026 03:10:41
[2026-10-28 03:10:41,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:10:41,339.339 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:10:41,478.478 INFO    ] No existing commands found in stream
[2026-10-28 03:10:46,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:10:46,506.506 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-28 03:10:49,810.810 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:10:49,813.813 INFO    ] Checking for system updates...
[2026-10-28 03:10:49,851.851 INFO    ] 200
[2026-10-28 03:10:49,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:10:49,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:10:49,909.909 INFO    ] No update needed
[2026-10-28 03:10:49,911.911 INFO    ] Checking for camera pi updates...
[2026-10-28 03:10:49,946.946 INFO    ] 200
[2026-10-28 03:10:49,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:10:49,989.989 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:10:50,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:10:50,071.071 INFO    ] No camera update needed
[2026-10-28 03:10:50,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:10:50,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:10:50,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:10:50,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:10:52,125.125 INFO    ] ================================================
[2026-10-28 03:10:52,140.140 INFO    ] Launching Daemon at Wed Oct 28 03:10:52 IST 2026
[2026-10-28 03:10:52,150.150 INFO    ] ================================================
[2026-10-28 03:10:52,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:10:52
[2026-10-28 03:10:53,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:10:53,699.699 INFO    ] Initializing speech engine...
[2026-10-28 03:10:53,706.706 INFO    ] 2026-10-28 03:10:53
[2026-10-28 03:10:53,973.973 INFO    ] 2026-10-28 03:10:53
[2026-10-28 03:10:54,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:10:54,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:10:54,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:10:54,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:10:54,533.533 INFO    ] time= 28/10/2026 03:10:54
[2026-10-28 03:10:54,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:10:54,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:10:54,676.676 INFO    ] No existing commands found in stream
[2026-10-28 03:10:59,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:10:59,699.699 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-28 03:11:02,090.090 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:11:02,095.095 INFO    ] Checking for system updates...
[2026-10-28 03:11:02,142.142 INFO    ] 200
[2026-10-28 03:11:02,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:11:02,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:11:02,228.228 INFO    ] No update needed
[2026-10-28 03:11:02,231.231 INFO    ] Checking for camera pi updates...
[2026-10-28 03:11:02,274.274 INFO    ] 200
[2026-10-28 03:11:02,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:11:02,329.329 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:11:02,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:11:02,411.411 INFO    ] No camera update needed
[2026-10-28 03:11:02,414.414 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:11:02,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:11:02,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:11:02,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:11:04,470.470 INFO    ] ================================================
[2026-10-28 03:11:04,485.485 INFO    ] Launching Daemon at Wed Oct 28 03:11:04 IST 2026
[2026-10-28 03:11:04,495.495 INFO    ] ================================================
[2026-10-28 03:11:05,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:11:05
[2026-10-28 03:11:05,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:11:06,077.077 INFO    ] Initializing speech engine...
[2026-10-28 03:11:06,085.085 INFO    ] 2026-10-28 03:11:06
[2026-10-28 03:11:06,359.359 INFO    ] 2026-10-28 03:11:06
[2026-10-28 03:11:06,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:11:06,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:11:06,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:11:06,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:11:06,906.906 INFO    ] time= 28/10/2026 03:11:06
[2026-10-28 03:11:06,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:11:06,954.954 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:11:07,071.071 INFO    ] No existing commands found in stream
[2026-10-28 03:11:12,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:11:12,099.099 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-28 03:11:15,289.289 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:11:15,291.291 INFO    ] Checking for system updates...
[2026-10-28 03:11:15,327.327 INFO    ] 200
[2026-10-28 03:11:15,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:11:15,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:11:15,385.385 INFO    ] No update needed
[2026-10-28 03:11:15,387.387 INFO    ] Checking for camera pi updates...
[2026-10-28 03:11:15,435.435 INFO    ] 200
[2026-10-28 03:11:15,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:11:15,482.482 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:11:15,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:11:15,570.570 INFO    ] No camera update needed
[2026-10-28 03:11:15,572.572 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:11:15,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:11:15,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:11:15,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:11:17,625.625 INFO    ] ================================================
[2026-10-28 03:11:17,640.640 INFO    ] Launching Daemon at Wed Oct 28 03:11:17 IST 2026
[2026-10-28 03:11:17,652.652 INFO    ] ================================================
[2026-10-28 03:11:18,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:11:18
[2026-10-28 03:11:18,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:11:19,080.080 INFO    ] Initializing speech engine...
[2026-10-28 03:11:19,089.089 INFO    ] 2026-10-28 03:11:19
[2026-10-28 03:11:19,337.337 INFO    ] 2026-10-28 03:11:19
[2026-10-28 03:11:19,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:11:19,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:11:19,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:11:19,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:11:19,893.893 INFO    ] time= 28/10/2026 03:11:19
[2026-10-28 03:11:19,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:11:19,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:11:20,041.041 INFO    ] No existing commands found in stream
[2026-10-28 03:11:25,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:11:25,059.059 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 03:11:25,676.676 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:11:25,679.679 INFO    ] Checking for system updates...
[2026-10-28 03:11:25,714.714 INFO    ] 200
[2026-10-28 03:11:25,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:11:25,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:11:25,776.776 INFO    ] No update needed
[2026-10-28 03:11:25,778.778 INFO    ] Checking for camera pi updates...
[2026-10-28 03:11:25,813.813 INFO    ] 200
[2026-10-28 03:11:25,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:11:25,865.865 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:11:25,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:11:25,943.943 INFO    ] No camera update needed
[2026-10-28 03:11:25,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:11:25,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:11:25,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:11:25,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:11:28,998.998 INFO    ] ================================================
[2026-10-28 03:11:28,013.013 INFO    ] Launching Daemon at Wed Oct 28 03:11:28 IST 2026
[2026-10-28 03:11:28,024.024 INFO    ] ================================================
[2026-10-28 03:11:28,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:11:28
[2026-10-28 03:11:29,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:11:29,513.513 INFO    ] Initializing speech engine...
[2026-10-28 03:11:29,519.519 INFO    ] 2026-10-28 03:11:29
[2026-10-28 03:11:29,780.780 INFO    ] 2026-10-28 03:11:29
[2026-10-28 03:11:29,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:11:30,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:11:30,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:11:30,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:11:30,331.331 INFO    ] time= 28/10/2026 03:11:30
[2026-10-28 03:11:30,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:11:30,354.354 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:11:30,482.482 INFO    ] No existing commands found in stream
[2026-10-28 03:11:35,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:11:35,499.499 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 03:11:38,284.284 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:11:38,293.293 INFO    ] Checking for system updates...
[2026-10-28 03:11:38,332.332 INFO    ] 200
[2026-10-28 03:11:38,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:11:38,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:11:38,394.394 INFO    ] No update needed
[2026-10-28 03:11:38,396.396 INFO    ] Checking for camera pi updates...
[2026-10-28 03:11:38,432.432 INFO    ] 200
[2026-10-28 03:11:38,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:11:38,481.481 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:11:38,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:11:38,580.580 INFO    ] No camera update needed
[2026-10-28 03:11:38,582.582 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:11:38,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:11:38,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:11:38,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:11:40,636.636 INFO    ] ================================================
[2026-10-28 03:11:40,651.651 INFO    ] Launching Daemon at Wed Oct 28 03:11:40 IST 2026
[2026-10-28 03:11:40,662.662 INFO    ] ================================================
[2026-10-28 03:11:41,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:11:41
[2026-10-28 03:11:41,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:11:42,241.241 INFO    ] Initializing speech engine...
[2026-10-28 03:11:42,250.250 INFO    ] 2026-10-28 03:11:42
[2026-10-28 03:11:42,533.533 INFO    ] 2026-10-28 03:11:42
[2026-10-28 03:11:42,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:11:42,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:11:42,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:11:43,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:11:43,081.081 INFO    ] time= 28/10/2026 03:11:43
[2026-10-28 03:11:43,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:11:43,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:11:43,225.225 INFO    ] No existing commands found in stream
[2026-10-28 03:11:48,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:11:48,249.249 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-28 03:11:51,586.586 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:11:51,589.589 INFO    ] Checking for system updates...
[2026-10-28 03:11:51,625.625 INFO    ] 200
[2026-10-28 03:11:51,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:11:51,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:11:51,684.684 INFO    ] No update needed
[2026-10-28 03:11:51,687.687 INFO    ] Checking for camera pi updates...
[2026-10-28 03:11:51,720.720 INFO    ] 200
[2026-10-28 03:11:51,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:11:51,767.767 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:11:51,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:11:51,864.864 INFO    ] No camera update needed
[2026-10-28 03:11:51,866.866 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:11:51,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:11:51,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:11:51,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:11:53,919.919 INFO    ] ================================================
[2026-10-28 03:11:53,935.935 INFO    ] Launching Daemon at Wed Oct 28 03:11:53 IST 2026
[2026-10-28 03:11:53,946.946 INFO    ] ================================================
[2026-10-28 03:11:54,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:11:54
[2026-10-28 03:11:55,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:11:55,535.535 INFO    ] Initializing speech engine...
[2026-10-28 03:11:55,544.544 INFO    ] 2026-10-28 03:11:55
[2026-10-28 03:11:55,831.831 INFO    ] 2026-10-28 03:11:55
[2026-10-28 03:11:55,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:11:56,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:11:56,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:11:56,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:11:56,395.395 INFO    ] time= 28/10/2026 03:11:56
[2026-10-28 03:11:56,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:11:56,435.435 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:11:56,561.561 INFO    ] No existing commands found in stream
[2026-10-28 03:12:01,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:12:01,598.598 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-28 03:12:02,429.429 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:12:02,433.433 INFO    ] Checking for system updates...
[2026-10-28 03:12:02,479.479 INFO    ] 200
[2026-10-28 03:12:02,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:12:02,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:12:02,549.549 INFO    ] No update needed
[2026-10-28 03:12:02,552.552 INFO    ] Checking for camera pi updates...
[2026-10-28 03:12:02,589.589 INFO    ] 200
[2026-10-28 03:12:02,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:12:02,652.652 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:12:02,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:12:02,742.742 INFO    ] No camera update needed
[2026-10-28 03:12:02,745.745 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:12:02,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:12:02,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:12:02,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:12:04,814.814 INFO    ] ================================================
[2026-10-28 03:12:04,829.829 INFO    ] Launching Daemon at Wed Oct 28 03:12:04 IST 2026
[2026-10-28 03:12:04,842.842 INFO    ] ================================================
[2026-10-28 03:12:05,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:12:05
[2026-10-28 03:12:05,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:12:06,247.247 INFO    ] Initializing speech engine...
[2026-10-28 03:12:06,270.270 INFO    ] 2026-10-28 03:12:06
[2026-10-28 03:12:06,528.528 INFO    ] 2026-10-28 03:12:06
[2026-10-28 03:12:06,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:12:06,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:12:06,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:12:07,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:12:07,097.097 INFO    ] time= 28/10/2026 03:12:07
[2026-10-28 03:12:07,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:12:07,121.121 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:12:07,234.234 INFO    ] No existing commands found in stream
[2026-10-28 03:12:12,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:12:12,265.265 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 03:12:15,802.802 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:12:15,805.805 INFO    ] Checking for system updates...
[2026-10-28 03:12:15,844.844 INFO    ] 200
[2026-10-28 03:12:15,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:12:15,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:12:15,918.918 INFO    ] No update needed
[2026-10-28 03:12:15,920.920 INFO    ] Checking for camera pi updates...
[2026-10-28 03:12:15,957.957 INFO    ] 200
[2026-10-28 03:12:15,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:12:16,000.000 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:12:16,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:12:16,079.079 INFO    ] No camera update needed
[2026-10-28 03:12:16,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:12:16,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:12:16,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:12:16,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:12:18,136.136 INFO    ] ================================================
[2026-10-28 03:12:18,151.151 INFO    ] Launching Daemon at Wed Oct 28 03:12:18 IST 2026
[2026-10-28 03:12:18,161.161 INFO    ] ================================================
[2026-10-28 03:12:18,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:12:18
[2026-10-28 03:12:19,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:12:19,572.572 INFO    ] Initializing speech engine...
[2026-10-28 03:12:19,592.592 INFO    ] 2026-10-28 03:12:19
[2026-10-28 03:12:19,841.841 INFO    ] 2026-10-28 03:12:19
[2026-10-28 03:12:19,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:12:20,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:12:20,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:12:20,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:12:20,409.409 INFO    ] time= 28/10/2026 03:12:20
[2026-10-28 03:12:20,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:12:20,439.439 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:12:20,576.576 INFO    ] No existing commands found in stream
[2026-10-28 03:12:25,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:12:25,603.603 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-28 03:12:27,703.703 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:12:27,705.705 INFO    ] Checking for system updates...
[2026-10-28 03:12:27,746.746 INFO    ] 200
[2026-10-28 03:12:27,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:12:27,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:12:27,808.808 INFO    ] No update needed
[2026-10-28 03:12:27,810.810 INFO    ] Checking for camera pi updates...
[2026-10-28 03:12:27,848.848 INFO    ] 200
[2026-10-28 03:12:27,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:12:27,892.892 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:12:28,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:12:28,074.074 INFO    ] No camera update needed
[2026-10-28 03:12:28,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:12:28,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:12:28,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:12:28,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:12:30,130.130 INFO    ] ================================================
[2026-10-28 03:12:30,145.145 INFO    ] Launching Daemon at Wed Oct 28 03:12:30 IST 2026
[2026-10-28 03:12:30,156.156 INFO    ] ================================================
[2026-10-28 03:12:30,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:12:30
[2026-10-28 03:12:31,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:12:31,570.570 INFO    ] Initializing speech engine...
[2026-10-28 03:12:31,581.581 INFO    ] 2026-10-28 03:12:31
[2026-10-28 03:12:31,866.866 INFO    ] 2026-10-28 03:12:31
[2026-10-28 03:12:31,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:12:32,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:12:32,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:12:32,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:12:32,399.399 INFO    ] time= 28/10/2026 03:12:32
[2026-10-28 03:12:32,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:12:32,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:12:32,587.587 INFO    ] No existing commands found in stream
[2026-10-28 03:12:37,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:12:37,612.612 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-28 03:12:38,823.823 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:12:38,825.825 INFO    ] Checking for system updates...
[2026-10-28 03:12:38,861.861 INFO    ] 200
[2026-10-28 03:12:38,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:12:38,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:12:38,927.927 INFO    ] No update needed
[2026-10-28 03:12:38,930.930 INFO    ] Checking for camera pi updates...
[2026-10-28 03:12:38,963.963 INFO    ] 200
[2026-10-28 03:12:38,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:12:39,005.005 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:12:39,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:12:39,098.098 INFO    ] No camera update needed
[2026-10-28 03:12:39,101.101 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:12:39,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:12:39,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:12:39,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:12:41,171.171 INFO    ] ================================================
[2026-10-28 03:12:41,186.186 INFO    ] Launching Daemon at Wed Oct 28 03:12:41 IST 2026
[2026-10-28 03:12:41,197.197 INFO    ] ================================================
[2026-10-28 03:12:41,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:12:41
[2026-10-28 03:12:42,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:12:42,794.794 INFO    ] Initializing speech engine...
[2026-10-28 03:12:42,802.802 INFO    ] 2026-10-28 03:12:42
[2026-10-28 03:12:43,079.079 INFO    ] 2026-10-28 03:12:43
[2026-10-28 03:12:43,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:12:43,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:12:43,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:12:43,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:12:43,642.642 INFO    ] time= 28/10/2026 03:12:43
[2026-10-28 03:12:43,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:12:43,678.678 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:12:43,801.801 INFO    ] No existing commands found in stream
[2026-10-28 03:12:48,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:12:48,834.834 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-28 03:12:52,805.805 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:12:52,808.808 INFO    ] Checking for system updates...
[2026-10-28 03:12:52,848.848 INFO    ] 200
[2026-10-28 03:12:52,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:12:52,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:12:52,913.913 INFO    ] No update needed
[2026-10-28 03:12:52,916.916 INFO    ] Checking for camera pi updates...
[2026-10-28 03:12:52,954.954 INFO    ] 200
[2026-10-28 03:12:52,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:12:53,002.002 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:12:53,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:12:53,082.082 INFO    ] No camera update needed
[2026-10-28 03:12:53,085.085 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:12:53,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:12:53,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:12:53,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:12:55,140.140 INFO    ] ================================================
[2026-10-28 03:12:55,155.155 INFO    ] Launching Daemon at Wed Oct 28 03:12:55 IST 2026
[2026-10-28 03:12:55,166.166 INFO    ] ================================================
[2026-10-28 03:12:55,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:12:55
[2026-10-28 03:12:56,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:12:56,667.667 INFO    ] Initializing speech engine...
[2026-10-28 03:12:56,681.681 INFO    ] 2026-10-28 03:12:56
[2026-10-28 03:12:56,964.964 INFO    ] 2026-10-28 03:12:56
[2026-10-28 03:12:56,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:12:57,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:12:57,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:12:57,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:12:57,562.562 INFO    ] time= 28/10/2026 03:12:57
[2026-10-28 03:12:57,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:12:57,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:12:57,724.724 INFO    ] No existing commands found in stream
[2026-10-28 03:13:02,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:13:02,748.748 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-28 03:13:04,047.047 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:13:04,050.050 INFO    ] Checking for system updates...
[2026-10-28 03:13:04,090.090 INFO    ] 200
[2026-10-28 03:13:04,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:13:04,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:13:04,159.159 INFO    ] No update needed
[2026-10-28 03:13:04,162.162 INFO    ] Checking for camera pi updates...
[2026-10-28 03:13:04,201.201 INFO    ] 200
[2026-10-28 03:13:04,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:13:04,250.250 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:13:04,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:13:04,354.354 INFO    ] No camera update needed
[2026-10-28 03:13:04,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:13:04,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:13:04,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:13:04,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:13:06,412.412 INFO    ] ================================================
[2026-10-28 03:13:06,427.427 INFO    ] Launching Daemon at Wed Oct 28 03:13:06 IST 2026
[2026-10-28 03:13:06,439.439 INFO    ] ================================================
[2026-10-28 03:13:07,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:13:07
[2026-10-28 03:13:07,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:13:07,896.896 INFO    ] Initializing speech engine...
[2026-10-28 03:13:07,905.905 INFO    ] 2026-10-28 03:13:07
[2026-10-28 03:13:08,162.162 INFO    ] 2026-10-28 03:13:08
[2026-10-28 03:13:08,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:13:08,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:13:08,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:13:08,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:13:08,648.648 INFO    ] time= 28/10/2026 03:13:08
[2026-10-28 03:13:08,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:13:08,685.685 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:13:08,799.799 INFO    ] No existing commands found in stream
[2026-10-28 03:13:13,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:13:13,815.815 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-28 03:13:17,711.711 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:13:17,713.713 INFO    ] Checking for system updates...
[2026-10-28 03:13:17,753.753 INFO    ] 200
[2026-10-28 03:13:17,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:13:17,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:13:17,810.810 INFO    ] No update needed
[2026-10-28 03:13:17,813.813 INFO    ] Checking for camera pi updates...
[2026-10-28 03:13:17,846.846 INFO    ] 200
[2026-10-28 03:13:17,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:13:17,889.889 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:13:17,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:13:17,975.975 INFO    ] No camera update needed
[2026-10-28 03:13:17,978.978 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:13:17,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:13:17,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:13:17,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:13:20,032.032 INFO    ] ================================================
[2026-10-28 03:13:20,047.047 INFO    ] Launching Daemon at Wed Oct 28 03:13:20 IST 2026
[2026-10-28 03:13:20,058.058 INFO    ] ================================================
[2026-10-28 03:13:20,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:13:20
[2026-10-28 03:13:21,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:13:21,655.655 INFO    ] Initializing speech engine...
[2026-10-28 03:13:21,661.661 INFO    ] 2026-10-28 03:13:21
[2026-10-28 03:13:21,931.931 INFO    ] 2026-10-28 03:13:21
[2026-10-28 03:13:21,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:13:22,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:13:22,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:13:22,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:13:22,473.473 INFO    ] time= 28/10/2026 03:13:22
[2026-10-28 03:13:22,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:13:22,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:13:22,626.626 INFO    ] No existing commands found in stream
[2026-10-28 03:13:27,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:13:27,644.644 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 03:13:30,849.849 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:13:30,851.851 INFO    ] Checking for system updates...
[2026-10-28 03:13:30,887.887 INFO    ] 200
[2026-10-28 03:13:30,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:13:30,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:13:30,944.944 INFO    ] No update needed
[2026-10-28 03:13:30,947.947 INFO    ] Checking for camera pi updates...
[2026-10-28 03:13:30,980.980 INFO    ] 200
[2026-10-28 03:13:30,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:13:31,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:13:31,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:13:31,110.110 INFO    ] No camera update needed
[2026-10-28 03:13:31,112.112 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:13:31,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:13:31,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:13:31,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:13:33,166.166 INFO    ] ================================================
[2026-10-28 03:13:33,181.181 INFO    ] Launching Daemon at Wed Oct 28 03:13:33 IST 2026
[2026-10-28 03:13:33,192.192 INFO    ] ================================================
[2026-10-28 03:13:33,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:13:33
[2026-10-28 03:13:34,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:13:34,604.604 INFO    ] Initializing speech engine...
[2026-10-28 03:13:34,617.617 INFO    ] 2026-10-28 03:13:34
[2026-10-28 03:13:34,892.892 INFO    ] 2026-10-28 03:13:34
[2026-10-28 03:13:34,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:13:35,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:13:35,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:13:35,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:13:35,494.494 INFO    ] time= 28/10/2026 03:13:35
[2026-10-28 03:13:35,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:13:35,505.505 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:13:35,633.633 INFO    ] No existing commands found in stream
[2026-10-28 03:13:40,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:13:40,663.663 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-28 03:13:44,945.945 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:13:44,947.947 INFO    ] Checking for system updates...
[2026-10-28 03:13:44,982.982 INFO    ] 200
[2026-10-28 03:13:44,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:13:45,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:13:45,040.040 INFO    ] No update needed
[2026-10-28 03:13:45,042.042 INFO    ] Checking for camera pi updates...
[2026-10-28 03:13:45,076.076 INFO    ] 200
[2026-10-28 03:13:45,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:13:45,121.121 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:13:45,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:13:45,200.200 INFO    ] No camera update needed
[2026-10-28 03:13:45,202.202 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:13:45,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:13:45,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:13:45,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:13:47,254.254 INFO    ] ================================================
[2026-10-28 03:13:47,270.270 INFO    ] Launching Daemon at Wed Oct 28 03:13:47 IST 2026
[2026-10-28 03:13:47,281.281 INFO    ] ================================================
[2026-10-28 03:13:47,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:13:47
[2026-10-28 03:13:48,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:13:48,689.689 INFO    ] Initializing speech engine...
[2026-10-28 03:13:48,712.712 INFO    ] 2026-10-28 03:13:48
[2026-10-28 03:13:48,967.967 INFO    ] 2026-10-28 03:13:48
[2026-10-28 03:13:49,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:13:49,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:13:49,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:13:49,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:13:49,532.532 INFO    ] time= 28/10/2026 03:13:49
[2026-10-28 03:13:49,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:13:49,558.558 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:13:49,674.674 INFO    ] No existing commands found in stream
[2026-10-28 03:13:54,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:13:54,699.699 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-28 03:13:58,582.582 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:13:58,585.585 INFO    ] Checking for system updates...
[2026-10-28 03:13:58,626.626 INFO    ] 200
[2026-10-28 03:13:58,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:13:58,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:13:58,689.689 INFO    ] No update needed
[2026-10-28 03:13:58,691.691 INFO    ] Checking for camera pi updates...
[2026-10-28 03:13:58,725.725 INFO    ] 200
[2026-10-28 03:13:58,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:13:58,768.768 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:13:58,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:13:58,847.847 INFO    ] No camera update needed
[2026-10-28 03:13:58,849.849 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:13:58,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:13:58,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:13:58,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:14:00,903.903 INFO    ] ================================================
[2026-10-28 03:14:00,919.919 INFO    ] Launching Daemon at Wed Oct 28 03:14:00 IST 2026
[2026-10-28 03:14:00,931.931 INFO    ] ================================================
[2026-10-28 03:14:01,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:14:01
[2026-10-28 03:14:02,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:14:02,653.653 INFO    ] Initializing speech engine...
[2026-10-28 03:14:02,665.665 INFO    ] 2026-10-28 03:14:02
[2026-10-28 03:14:03,028.028 INFO    ] 2026-10-28 03:14:03
[2026-10-28 03:14:03,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:14:03,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:14:03,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:14:03,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:14:03,684.684 INFO    ] time= 28/10/2026 03:14:03
[2026-10-28 03:14:03,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:14:03,715.715 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:14:03,852.852 INFO    ] No existing commands found in stream
[2026-10-28 03:14:08,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:14:08,872.872 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-28 03:14:10,101.101 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:14:10,104.104 INFO    ] Checking for system updates...
[2026-10-28 03:14:10,139.139 INFO    ] 200
[2026-10-28 03:14:10,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:14:10,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:14:10,195.195 INFO    ] No update needed
[2026-10-28 03:14:10,198.198 INFO    ] Checking for camera pi updates...
[2026-10-28 03:14:10,234.234 INFO    ] 200
[2026-10-28 03:14:10,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:14:10,277.277 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:14:10,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:14:10,358.358 INFO    ] No camera update needed
[2026-10-28 03:14:10,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:14:10,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:14:10,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:14:10,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:14:12,414.414 INFO    ] ================================================
[2026-10-28 03:14:12,429.429 INFO    ] Launching Daemon at Wed Oct 28 03:14:12 IST 2026
[2026-10-28 03:14:12,440.440 INFO    ] ================================================
[2026-10-28 03:14:13,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:14:13
[2026-10-28 03:14:13,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:14:13,877.877 INFO    ] Initializing speech engine...
[2026-10-28 03:14:13,886.886 INFO    ] 2026-10-28 03:14:13
[2026-10-28 03:14:14,134.134 INFO    ] 2026-10-28 03:14:14
[2026-10-28 03:14:14,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:14:14,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:14:14,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:14:14,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:14:14,696.696 INFO    ] time= 28/10/2026 03:14:14
[2026-10-28 03:14:14,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:14:14,721.721 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:14:14,848.848 INFO    ] No existing commands found in stream
[2026-10-28 03:14:19,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:14:19,866.866 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 03:14:23,261.261 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:14:23,264.264 INFO    ] Checking for system updates...
[2026-10-28 03:14:23,302.302 INFO    ] 200
[2026-10-28 03:14:23,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:14:23,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:14:23,359.359 INFO    ] No update needed
[2026-10-28 03:14:23,361.361 INFO    ] Checking for camera pi updates...
[2026-10-28 03:14:23,398.398 INFO    ] 200
[2026-10-28 03:14:23,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:14:23,440.440 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:14:23,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:14:23,522.522 INFO    ] No camera update needed
[2026-10-28 03:14:23,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:14:23,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:14:23,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:14:23,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:14:25,578.578 INFO    ] ================================================
[2026-10-28 03:14:25,594.594 INFO    ] Launching Daemon at Wed Oct 28 03:14:25 IST 2026
[2026-10-28 03:14:25,606.606 INFO    ] ================================================
[2026-10-28 03:14:26,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:14:26
[2026-10-28 03:14:26,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:14:27,049.049 INFO    ] Initializing speech engine...
[2026-10-28 03:14:27,071.071 INFO    ] 2026-10-28 03:14:27
[2026-10-28 03:14:27,356.356 INFO    ] 2026-10-28 03:14:27
[2026-10-28 03:14:27,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:14:27,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:14:27,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:14:27,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:14:27,931.931 INFO    ] time= 28/10/2026 03:14:27
[2026-10-28 03:14:27,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:14:27,955.955 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:14:28,097.097 INFO    ] No existing commands found in stream
[2026-10-28 03:14:33,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:14:33,120.120 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-28 03:14:33,845.845 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:14:33,848.848 INFO    ] Checking for system updates...
[2026-10-28 03:14:33,886.886 INFO    ] 200
[2026-10-28 03:14:33,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:14:33,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:14:33,944.944 INFO    ] No update needed
[2026-10-28 03:14:33,946.946 INFO    ] Checking for camera pi updates...
[2026-10-28 03:14:33,980.980 INFO    ] 200
[2026-10-28 03:14:33,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:14:34,022.022 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:14:34,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:14:34,123.123 INFO    ] No camera update needed
[2026-10-28 03:14:34,125.125 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:14:34,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:14:34,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:14:34,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:14:36,179.179 INFO    ] ================================================
[2026-10-28 03:14:36,195.195 INFO    ] Launching Daemon at Wed Oct 28 03:14:36 IST 2026
[2026-10-28 03:14:36,205.205 INFO    ] ================================================
[2026-10-28 03:14:36,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:14:36
[2026-10-28 03:14:37,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:14:37,798.798 INFO    ] Initializing speech engine...
[2026-10-28 03:14:37,807.807 INFO    ] 2026-10-28 03:14:37
[2026-10-28 03:14:38,093.093 INFO    ] 2026-10-28 03:14:38
[2026-10-28 03:14:38,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:14:38,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:14:38,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:14:38,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:14:38,644.644 INFO    ] time= 28/10/2026 03:14:38
[2026-10-28 03:14:38,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:14:38,692.692 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:14:38,823.823 INFO    ] No existing commands found in stream
[2026-10-28 03:14:43,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:14:43,857.857 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-28 03:14:46,264.264 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:14:46,267.267 INFO    ] Checking for system updates...
[2026-10-28 03:14:46,304.304 INFO    ] 200
[2026-10-28 03:14:46,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:14:46,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:14:46,368.368 INFO    ] No update needed
[2026-10-28 03:14:46,370.370 INFO    ] Checking for camera pi updates...
[2026-10-28 03:14:46,408.408 INFO    ] 200
[2026-10-28 03:14:46,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:14:46,456.456 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:14:46,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:14:46,535.535 INFO    ] No camera update needed
[2026-10-28 03:14:46,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:14:46,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:14:46,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:14:46,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:14:48,593.593 INFO    ] ================================================
[2026-10-28 03:14:48,608.608 INFO    ] Launching Daemon at Wed Oct 28 03:14:48 IST 2026
[2026-10-28 03:14:48,619.619 INFO    ] ================================================
[2026-10-28 03:14:49,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:14:49
[2026-10-28 03:14:49,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:14:50,017.017 INFO    ] Initializing speech engine...
[2026-10-28 03:14:50,036.036 INFO    ] 2026-10-28 03:14:50
[2026-10-28 03:14:50,282.282 INFO    ] 2026-10-28 03:14:50
[2026-10-28 03:14:50,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:14:50,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:14:50,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:14:50,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:14:50,760.760 INFO    ] time= 28/10/2026 03:14:50
[2026-10-28 03:14:50,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:14:50,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:14:50,959.959 INFO    ] No existing commands found in stream
[2026-10-28 03:14:55,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:14:55,973.973 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-28 03:14:56,831.831 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:14:56,834.834 INFO    ] Checking for system updates...
[2026-10-28 03:14:56,872.872 INFO    ] 200
[2026-10-28 03:14:56,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:14:56,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:14:56,934.934 INFO    ] No update needed
[2026-10-28 03:14:56,937.937 INFO    ] Checking for camera pi updates...
[2026-10-28 03:14:56,970.970 INFO    ] 200
[2026-10-28 03:14:56,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:14:57,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:14:57,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:14:57,098.098 INFO    ] No camera update needed
[2026-10-28 03:14:57,101.101 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:14:57,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:14:57,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:14:57,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:14:59,154.154 INFO    ] ================================================
[2026-10-28 03:14:59,170.170 INFO    ] Launching Daemon at Wed Oct 28 03:14:59 IST 2026
[2026-10-28 03:14:59,181.181 INFO    ] ================================================
[2026-10-28 03:14:59,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:14:59
[2026-10-28 03:15:00,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:15:00,807.807 INFO    ] Initializing speech engine...
[2026-10-28 03:15:00,813.813 INFO    ] 2026-10-28 03:15:00
[2026-10-28 03:15:01,088.088 INFO    ] 2026-10-28 03:15:01
[2026-10-28 03:15:01,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:15:01,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:15:01,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:15:01,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:15:01,673.673 INFO    ] time= 28/10/2026 03:15:01
[2026-10-28 03:15:01,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:15:01,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:15:01,838.838 INFO    ] No existing commands found in stream
[2026-10-28 03:15:06,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:15:06,872.872 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-28 03:15:09,025.025 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:15:09,028.028 INFO    ] Checking for system updates...
[2026-10-28 03:15:09,064.064 INFO    ] 200
[2026-10-28 03:15:09,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:15:09,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:15:09,123.123 INFO    ] No update needed
[2026-10-28 03:15:09,126.126 INFO    ] Checking for camera pi updates...
[2026-10-28 03:15:09,163.163 INFO    ] 200
[2026-10-28 03:15:09,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:15:09,211.211 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:15:09,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:15:09,291.291 INFO    ] No camera update needed
[2026-10-28 03:15:09,293.293 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:15:09,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:15:09,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:15:09,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:15:11,350.350 INFO    ] ================================================
[2026-10-28 03:15:11,365.365 INFO    ] Launching Daemon at Wed Oct 28 03:15:11 IST 2026
[2026-10-28 03:15:11,376.376 INFO    ] ================================================
[2026-10-28 03:15:12,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:15:12
[2026-10-28 03:15:12,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:15:12,932.932 INFO    ] Initializing speech engine...
[2026-10-28 03:15:12,941.941 INFO    ] 2026-10-28 03:15:12
[2026-10-28 03:15:13,192.192 INFO    ] 2026-10-28 03:15:13
[2026-10-28 03:15:13,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:15:13,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:15:13,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:15:13,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:15:13,761.761 INFO    ] time= 28/10/2026 03:15:13
[2026-10-28 03:15:13,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:15:13,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:15:13,921.921 INFO    ] No existing commands found in stream
[2026-10-28 03:15:18,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:15:18,947.947 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 03:15:19,541.541 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:15:19,543.543 INFO    ] Checking for system updates...
[2026-10-28 03:15:19,582.582 INFO    ] 200
[2026-10-28 03:15:19,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:15:19,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:15:19,640.640 INFO    ] No update needed
[2026-10-28 03:15:19,642.642 INFO    ] Checking for camera pi updates...
[2026-10-28 03:15:19,679.679 INFO    ] 200
[2026-10-28 03:15:19,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:15:19,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:15:19,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:15:19,806.806 INFO    ] No camera update needed
[2026-10-28 03:15:19,809.809 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:15:19,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:15:19,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:15:19,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:15:21,863.863 INFO    ] ================================================
[2026-10-28 03:15:21,878.878 INFO    ] Launching Daemon at Wed Oct 28 03:15:21 IST 2026
[2026-10-28 03:15:21,889.889 INFO    ] ================================================
[2026-10-28 03:15:22,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:15:22
[2026-10-28 03:15:23,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:15:23,329.329 INFO    ] Initializing speech engine...
[2026-10-28 03:15:23,341.341 INFO    ] 2026-10-28 03:15:23
[2026-10-28 03:15:23,617.617 INFO    ] 2026-10-28 03:15:23
[2026-10-28 03:15:23,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:15:23,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:15:23,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:15:24,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:15:24,179.179 INFO    ] time= 28/10/2026 03:15:24
[2026-10-28 03:15:24,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:15:24,205.205 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:15:24,353.353 INFO    ] No existing commands found in stream
[2026-10-28 03:15:29,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:15:29,379.379 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-28 03:15:32,345.345 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:15:32,349.349 INFO    ] Checking for system updates...
[2026-10-28 03:15:32,399.399 INFO    ] 200
[2026-10-28 03:15:32,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:15:32,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:15:32,472.472 INFO    ] No update needed
[2026-10-28 03:15:32,476.476 INFO    ] Checking for camera pi updates...
[2026-10-28 03:15:32,519.519 INFO    ] 200
[2026-10-28 03:15:32,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:15:32,567.567 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:15:32,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:15:32,650.650 INFO    ] No camera update needed
[2026-10-28 03:15:32,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:15:32,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:15:32,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:15:32,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:15:34,712.712 INFO    ] ================================================
[2026-10-28 03:15:34,728.728 INFO    ] Launching Daemon at Wed Oct 28 03:15:34 IST 2026
[2026-10-28 03:15:34,739.739 INFO    ] ================================================
[2026-10-28 03:15:35,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:15:35
[2026-10-28 03:15:36,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:15:36,280.280 INFO    ] Initializing speech engine...
[2026-10-28 03:15:36,295.295 INFO    ] 2026-10-28 03:15:36
[2026-10-28 03:15:36,573.573 INFO    ] 2026-10-28 03:15:36
[2026-10-28 03:15:36,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:15:36,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:15:36,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:15:37,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:15:37,131.131 INFO    ] time= 28/10/2026 03:15:37
[2026-10-28 03:15:37,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:15:37,172.172 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:15:37,311.311 INFO    ] No existing commands found in stream
[2026-10-28 03:15:42,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:15:42,346.346 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 03:15:44,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:15:44,906.906 INFO    ] Checking for system updates...
[2026-10-28 03:15:44,943.943 INFO    ] 200
[2026-10-28 03:15:44,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:15:44,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:15:45,002.002 INFO    ] No update needed
[2026-10-28 03:15:45,005.005 INFO    ] Checking for camera pi updates...
[2026-10-28 03:15:45,038.038 INFO    ] 200
[2026-10-28 03:15:45,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:15:45,084.084 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:15:45,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:15:45,168.168 INFO    ] No camera update needed
[2026-10-28 03:15:45,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:15:45,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:15:45,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:15:45,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:15:47,223.223 INFO    ] ================================================
[2026-10-28 03:15:47,239.239 INFO    ] Launching Daemon at Wed Oct 28 03:15:47 IST 2026
[2026-10-28 03:15:47,250.250 INFO    ] ================================================
[2026-10-28 03:15:47,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:15:47
[2026-10-28 03:15:48,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:15:48,859.859 INFO    ] Initializing speech engine...
[2026-10-28 03:15:48,867.867 INFO    ] 2026-10-28 03:15:48
[2026-10-28 03:15:49,142.142 INFO    ] 2026-10-28 03:15:49
[2026-10-28 03:15:49,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:15:49,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:15:49,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:15:49,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:15:49,706.706 INFO    ] time= 28/10/2026 03:15:49
[2026-10-28 03:15:49,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:15:49,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:15:49,869.869 INFO    ] No existing commands found in stream
[2026-10-28 03:15:54,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:15:54,903.903 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 03:15:58,144.144 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:15:58,147.147 INFO    ] Checking for system updates...
[2026-10-28 03:15:58,185.185 INFO    ] 200
[2026-10-28 03:15:58,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:15:58,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:15:58,250.250 INFO    ] No update needed
[2026-10-28 03:15:58,253.253 INFO    ] Checking for camera pi updates...
[2026-10-28 03:15:58,290.290 INFO    ] 200
[2026-10-28 03:15:58,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:15:58,333.333 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:15:58,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:15:58,422.422 INFO    ] No camera update needed
[2026-10-28 03:15:58,424.424 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:15:58,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:15:58,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:15:58,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:16:00,477.477 INFO    ] ================================================
[2026-10-28 03:16:00,492.492 INFO    ] Launching Daemon at Wed Oct 28 03:16:00 IST 2026
[2026-10-28 03:16:00,503.503 INFO    ] ================================================
[2026-10-28 03:16:01,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:16:01
[2026-10-28 03:16:01,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:16:02,290.290 INFO    ] Initializing speech engine...
[2026-10-28 03:16:02,350.350 INFO    ] 2026-10-28 03:16:02
[2026-10-28 03:16:02,703.703 INFO    ] 2026-10-28 03:16:02
[2026-10-28 03:16:02,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:16:03,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:16:03,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:16:03,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:16:03,317.317 INFO    ] time= 28/10/2026 03:16:03
[2026-10-28 03:16:03,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:16:03,414.414 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:16:03,566.566 INFO    ] No existing commands found in stream
[2026-10-28 03:16:08,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:16:08,583.583 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-28 03:16:09,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:16:09,472.472 INFO    ] Checking for system updates...
[2026-10-28 03:16:09,508.508 INFO    ] 200
[2026-10-28 03:16:09,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:16:09,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:16:09,571.571 INFO    ] No update needed
[2026-10-28 03:16:09,574.574 INFO    ] Checking for camera pi updates...
[2026-10-28 03:16:09,608.608 INFO    ] 200
[2026-10-28 03:16:09,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:16:09,650.650 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:16:09,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:16:09,730.730 INFO    ] No camera update needed
[2026-10-28 03:16:09,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:16:09,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:16:09,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:16:09,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:16:11,787.787 INFO    ] ================================================
[2026-10-28 03:16:11,802.802 INFO    ] Launching Daemon at Wed Oct 28 03:16:11 IST 2026
[2026-10-28 03:16:11,813.813 INFO    ] ================================================
[2026-10-28 03:16:12,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:16:12
[2026-10-28 03:16:12,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:16:13,272.272 INFO    ] Initializing speech engine...
[2026-10-28 03:16:13,281.281 INFO    ] 2026-10-28 03:16:13
[2026-10-28 03:16:13,573.573 INFO    ] 2026-10-28 03:16:13
[2026-10-28 03:16:13,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:16:13,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:16:13,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:16:14,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:16:14,134.134 INFO    ] time= 28/10/2026 03:16:14
[2026-10-28 03:16:14,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:16:14,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:16:14,311.311 INFO    ] No existing commands found in stream
[2026-10-28 03:16:19,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:16:19,340.340 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-28 03:16:23,238.238 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:16:23,241.241 INFO    ] Checking for system updates...
[2026-10-28 03:16:23,279.279 INFO    ] 200
[2026-10-28 03:16:23,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:16:23,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:16:23,336.336 INFO    ] No update needed
[2026-10-28 03:16:23,339.339 INFO    ] Checking for camera pi updates...
[2026-10-28 03:16:23,373.373 INFO    ] 200
[2026-10-28 03:16:23,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:16:23,420.420 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:16:23,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:16:23,470.470 INFO    ] No camera update needed
[2026-10-28 03:16:23,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:16:23,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:16:23,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:16:23,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:16:25,525.525 INFO    ] ================================================
[2026-10-28 03:16:25,540.540 INFO    ] Launching Daemon at Wed Oct 28 03:16:25 IST 2026
[2026-10-28 03:16:25,552.552 INFO    ] ================================================
[2026-10-28 03:16:26,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:16:26
[2026-10-28 03:16:26,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:16:27,154.154 INFO    ] Initializing speech engine...
[2026-10-28 03:16:27,168.168 INFO    ] 2026-10-28 03:16:27
[2026-10-28 03:16:27,449.449 INFO    ] 2026-10-28 03:16:27
[2026-10-28 03:16:27,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:16:27,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:16:27,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:16:27,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:16:28,001.001 INFO    ] time= 28/10/2026 03:16:27
[2026-10-28 03:16:28,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:16:28,050.050 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:16:28,183.183 INFO    ] No existing commands found in stream
[2026-10-28 03:16:33,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:16:33,209.209 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-28 03:16:34,327.327 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:16:34,330.330 INFO    ] Checking for system updates...
[2026-10-28 03:16:34,371.371 INFO    ] 200
[2026-10-28 03:16:34,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:16:34,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:16:34,435.435 INFO    ] No update needed
[2026-10-28 03:16:34,437.437 INFO    ] Checking for camera pi updates...
[2026-10-28 03:16:34,471.471 INFO    ] 200
[2026-10-28 03:16:34,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:16:34,517.517 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:16:34,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:16:34,699.699 INFO    ] No camera update needed
[2026-10-28 03:16:34,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:16:34,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:16:34,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:16:34,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:16:36,755.755 INFO    ] ================================================
[2026-10-28 03:16:36,771.771 INFO    ] Launching Daemon at Wed Oct 28 03:16:36 IST 2026
[2026-10-28 03:16:36,782.782 INFO    ] ================================================
[2026-10-28 03:16:37,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:16:37
[2026-10-28 03:16:38,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:16:38,398.398 INFO    ] Initializing speech engine...
[2026-10-28 03:16:38,410.410 INFO    ] 2026-10-28 03:16:38
[2026-10-28 03:16:38,688.688 INFO    ] 2026-10-28 03:16:38
[2026-10-28 03:16:38,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:16:39,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:16:39,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:16:39,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:16:39,238.238 INFO    ] time= 28/10/2026 03:16:39
[2026-10-28 03:16:39,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:16:39,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:16:39,383.383 INFO    ] No existing commands found in stream
[2026-10-28 03:16:44,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:16:44,417.417 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 03:16:48,044.044 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:16:48,047.047 INFO    ] Checking for system updates...
[2026-10-28 03:16:48,083.083 INFO    ] 200
[2026-10-28 03:16:48,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:16:48,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:16:48,141.141 INFO    ] No update needed
[2026-10-28 03:16:48,144.144 INFO    ] Checking for camera pi updates...
[2026-10-28 03:16:48,177.177 INFO    ] 200
[2026-10-28 03:16:48,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:16:48,230.230 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:16:48,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:16:48,312.312 INFO    ] No camera update needed
[2026-10-28 03:16:48,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:16:48,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:16:48,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:16:48,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:16:50,366.366 INFO    ] ================================================
[2026-10-28 03:16:50,382.382 INFO    ] Launching Daemon at Wed Oct 28 03:16:50 IST 2026
[2026-10-28 03:16:50,392.392 INFO    ] ================================================
[2026-10-28 03:16:51,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:16:51
[2026-10-28 03:16:51,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:16:52,032.032 INFO    ] Initializing speech engine...
[2026-10-28 03:16:52,038.038 INFO    ] 2026-10-28 03:16:52
[2026-10-28 03:16:52,324.324 INFO    ] 2026-10-28 03:16:52
[2026-10-28 03:16:52,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:16:52,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:16:52,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:16:52,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:16:52,895.895 INFO    ] time= 28/10/2026 03:16:52
[2026-10-28 03:16:52,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:16:52,935.935 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:16:53,080.080 INFO    ] No existing commands found in stream
[2026-10-28 03:16:58,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:16:58,119.119 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-28 03:17:00,127.127 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:17:00,130.130 INFO    ] Checking for system updates...
[2026-10-28 03:17:00,168.168 INFO    ] 200
[2026-10-28 03:17:00,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:17:00,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:17:00,226.226 INFO    ] No update needed
[2026-10-28 03:17:00,229.229 INFO    ] Checking for camera pi updates...
[2026-10-28 03:17:00,265.265 INFO    ] 200
[2026-10-28 03:17:00,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:17:00,313.313 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:17:00,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:17:00,392.392 INFO    ] No camera update needed
[2026-10-28 03:17:00,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:17:00,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:17:00,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:17:00,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:17:02,451.451 INFO    ] ================================================
[2026-10-28 03:17:02,471.471 INFO    ] Launching Daemon at Wed Oct 28 03:17:02 IST 2026
[2026-10-28 03:17:02,487.487 INFO    ] ================================================
[2026-10-28 03:17:03,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:17:03
[2026-10-28 03:17:03,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:17:04,131.131 INFO    ] Initializing speech engine...
[2026-10-28 03:17:04,140.140 INFO    ] 2026-10-28 03:17:04
[2026-10-28 03:17:04,426.426 INFO    ] 2026-10-28 03:17:04
[2026-10-28 03:17:04,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:17:04,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:17:04,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:17:04,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:17:04,929.929 INFO    ] time= 28/10/2026 03:17:04
[2026-10-28 03:17:04,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:17:05,044.044 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:17:05,190.190 INFO    ] No existing commands found in stream
[2026-10-28 03:17:10,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:17:10,205.205 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-28 03:17:11,382.382 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:17:11,385.385 INFO    ] Checking for system updates...
[2026-10-28 03:17:11,421.421 INFO    ] 200
[2026-10-28 03:17:11,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:17:11,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:17:11,487.487 INFO    ] No update needed
[2026-10-28 03:17:11,490.490 INFO    ] Checking for camera pi updates...
[2026-10-28 03:17:11,524.524 INFO    ] 200
[2026-10-28 03:17:11,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:17:11,568.568 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:17:11,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:17:11,657.657 INFO    ] No camera update needed
[2026-10-28 03:17:11,660.660 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:17:11,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:17:11,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:17:11,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:17:13,716.716 INFO    ] ================================================
[2026-10-28 03:17:13,732.732 INFO    ] Launching Daemon at Wed Oct 28 03:17:13 IST 2026
[2026-10-28 03:17:13,743.743 INFO    ] ================================================
[2026-10-28 03:17:14,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:17:14
[2026-10-28 03:17:14,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:17:15,145.145 INFO    ] Initializing speech engine...
[2026-10-28 03:17:15,160.160 INFO    ] 2026-10-28 03:17:15
[2026-10-28 03:17:15,438.438 INFO    ] 2026-10-28 03:17:15
[2026-10-28 03:17:15,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:17:15,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:17:15,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:17:15,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:17:15,999.999 INFO    ] time= 28/10/2026 03:17:15
[2026-10-28 03:17:16,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:17:16,033.033 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:17:16,161.161 INFO    ] No existing commands found in stream
[2026-10-28 03:17:21,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:17:21,189.189 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-28 03:17:25,404.404 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:17:25,406.406 INFO    ] Checking for system updates...
[2026-10-28 03:17:25,441.441 INFO    ] 200
[2026-10-28 03:17:25,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:17:25,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:17:25,499.499 INFO    ] No update needed
[2026-10-28 03:17:25,501.501 INFO    ] Checking for camera pi updates...
[2026-10-28 03:17:25,538.538 INFO    ] 200
[2026-10-28 03:17:25,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:17:25,580.580 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:17:25,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:17:25,661.661 INFO    ] No camera update needed
[2026-10-28 03:17:25,664.664 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:17:25,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:17:25,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:17:25,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:17:27,717.717 INFO    ] ================================================
[2026-10-28 03:17:27,733.733 INFO    ] Launching Daemon at Wed Oct 28 03:17:27 IST 2026
[2026-10-28 03:17:27,745.745 INFO    ] ================================================
[2026-10-28 03:17:28,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:17:28
[2026-10-28 03:17:29,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:17:29,360.360 INFO    ] Initializing speech engine...
[2026-10-28 03:17:29,372.372 INFO    ] 2026-10-28 03:17:29
[2026-10-28 03:17:29,646.646 INFO    ] 2026-10-28 03:17:29
[2026-10-28 03:17:29,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:17:29,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:17:29,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:17:30,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:17:30,254.254 INFO    ] time= 28/10/2026 03:17:30
[2026-10-28 03:17:30,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:17:30,279.279 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:17:30,391.391 INFO    ] No existing commands found in stream
[2026-10-28 03:17:35,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:17:35,414.414 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-28 03:17:38,623.623 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:17:38,625.625 INFO    ] Checking for system updates...
[2026-10-28 03:17:38,662.662 INFO    ] 200
[2026-10-28 03:17:38,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:17:38,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:17:38,721.721 INFO    ] No update needed
[2026-10-28 03:17:38,724.724 INFO    ] Checking for camera pi updates...
[2026-10-28 03:17:38,762.762 INFO    ] 200
[2026-10-28 03:17:38,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:17:38,810.810 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:17:38,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:17:38,897.897 INFO    ] No camera update needed
[2026-10-28 03:17:38,899.899 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:17:38,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:17:38,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:17:38,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:17:40,953.953 INFO    ] ================================================
[2026-10-28 03:17:40,971.971 INFO    ] Launching Daemon at Wed Oct 28 03:17:40 IST 2026
[2026-10-28 03:17:40,982.982 INFO    ] ================================================
[2026-10-28 03:17:41,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:17:41
[2026-10-28 03:17:42,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:17:42,556.556 INFO    ] Initializing speech engine...
[2026-10-28 03:17:42,563.563 INFO    ] 2026-10-28 03:17:42
[2026-10-28 03:17:42,836.836 INFO    ] 2026-10-28 03:17:42
[2026-10-28 03:17:42,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:17:43,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:17:43,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:17:43,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:17:43,382.382 INFO    ] time= 28/10/2026 03:17:43
[2026-10-28 03:17:43,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:17:43,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:17:43,536.536 INFO    ] No existing commands found in stream
[2026-10-28 03:17:48,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:17:48,560.560 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-28 03:17:50,704.704 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:17:50,707.707 INFO    ] Checking for system updates...
[2026-10-28 03:17:50,744.744 INFO    ] 200
[2026-10-28 03:17:50,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:17:50,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:17:50,808.808 INFO    ] No update needed
[2026-10-28 03:17:50,811.811 INFO    ] Checking for camera pi updates...
[2026-10-28 03:17:50,845.845 INFO    ] 200
[2026-10-28 03:17:50,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:17:50,888.888 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:17:50,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:17:50,940.940 INFO    ] No camera update needed
[2026-10-28 03:17:50,943.943 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:17:50,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:17:50,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:17:50,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:17:53,006.006 INFO    ] ================================================
[2026-10-28 03:17:53,021.021 INFO    ] Launching Daemon at Wed Oct 28 03:17:53 IST 2026
[2026-10-28 03:17:53,031.031 INFO    ] ================================================
[2026-10-28 03:17:53,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:17:53
[2026-10-28 03:17:54,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:17:54,602.602 INFO    ] Initializing speech engine...
[2026-10-28 03:17:54,608.608 INFO    ] 2026-10-28 03:17:54
[2026-10-28 03:17:54,882.882 INFO    ] 2026-10-28 03:17:54
[2026-10-28 03:17:54,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:17:55,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:17:55,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:17:55,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:17:55,429.429 INFO    ] time= 28/10/2026 03:17:55
[2026-10-28 03:17:55,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:17:55,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:17:55,602.602 INFO    ] No existing commands found in stream
[2026-10-28 03:18:00,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:18:00,631.631 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 03:18:04,503.503 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:18:04,506.506 INFO    ] Checking for system updates...
[2026-10-28 03:18:04,543.543 INFO    ] 200
[2026-10-28 03:18:04,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:18:04,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:18:04,608.608 INFO    ] No update needed
[2026-10-28 03:18:04,611.611 INFO    ] Checking for camera pi updates...
[2026-10-28 03:18:04,649.649 INFO    ] 200
[2026-10-28 03:18:04,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:18:04,696.696 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:18:04,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:18:04,795.795 INFO    ] No camera update needed
[2026-10-28 03:18:04,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:18:04,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:18:04,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:18:04,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:18:06,854.854 INFO    ] ================================================
[2026-10-28 03:18:06,870.870 INFO    ] Launching Daemon at Wed Oct 28 03:18:06 IST 2026
[2026-10-28 03:18:06,881.881 INFO    ] ================================================
[2026-10-28 03:18:07,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:18:07
[2026-10-28 03:18:08,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:18:08,334.334 INFO    ] Initializing speech engine...
[2026-10-28 03:18:08,341.341 INFO    ] 2026-10-28 03:18:08
[2026-10-28 03:18:08,607.607 INFO    ] 2026-10-28 03:18:08
[2026-10-28 03:18:08,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:18:08,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:18:08,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:18:09,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:18:09,104.104 INFO    ] time= 28/10/2026 03:18:09
[2026-10-28 03:18:09,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:18:09,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:18:09,278.278 INFO    ] No existing commands found in stream
[2026-10-28 03:18:14,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:18:14,298.298 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 03:18:16,404.404 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:18:16,408.408 INFO    ] Checking for system updates...
[2026-10-28 03:18:16,448.448 INFO    ] 200
[2026-10-28 03:18:16,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:18:16,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:18:16,518.518 INFO    ] No update needed
[2026-10-28 03:18:16,521.521 INFO    ] Checking for camera pi updates...
[2026-10-28 03:18:16,558.558 INFO    ] 200
[2026-10-28 03:18:16,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:18:16,622.622 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:18:16,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:18:16,704.704 INFO    ] No camera update needed
[2026-10-28 03:18:16,707.707 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:18:16,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:18:16,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:18:16,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:18:18,761.761 INFO    ] ================================================
[2026-10-28 03:18:18,776.776 INFO    ] Launching Daemon at Wed Oct 28 03:18:18 IST 2026
[2026-10-28 03:18:18,787.787 INFO    ] ================================================
[2026-10-28 03:18:19,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:18:19
[2026-10-28 03:18:19,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:18:20,207.207 INFO    ] Initializing speech engine...
[2026-10-28 03:18:20,216.216 INFO    ] 2026-10-28 03:18:20
[2026-10-28 03:18:20,510.510 INFO    ] 2026-10-28 03:18:20
[2026-10-28 03:18:20,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:18:20,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:18:20,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:18:21,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:18:21,134.134 INFO    ] time= 28/10/2026 03:18:21
[2026-10-28 03:18:21,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:18:21,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:18:21,299.299 INFO    ] No existing commands found in stream
[2026-10-28 03:18:26,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:18:26,334.334 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 03:18:30,749.749 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:18:30,751.751 INFO    ] Checking for system updates...
[2026-10-28 03:18:30,793.793 INFO    ] 200
[2026-10-28 03:18:30,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:18:30,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:18:30,859.859 INFO    ] No update needed
[2026-10-28 03:18:30,862.862 INFO    ] Checking for camera pi updates...
[2026-10-28 03:18:30,904.904 INFO    ] 200
[2026-10-28 03:18:30,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:18:30,954.954 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:18:31,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:18:31,035.035 INFO    ] No camera update needed
[2026-10-28 03:18:31,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:18:31,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:18:31,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:18:31,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:18:33,096.096 INFO    ] ================================================
[2026-10-28 03:18:33,111.111 INFO    ] Launching Daemon at Wed Oct 28 03:18:33 IST 2026
[2026-10-28 03:18:33,121.121 INFO    ] ================================================
[2026-10-28 03:18:33,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:18:33
[2026-10-28 03:18:34,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:18:34,538.538 INFO    ] Initializing speech engine...
[2026-10-28 03:18:34,547.547 INFO    ] 2026-10-28 03:18:34
[2026-10-28 03:18:34,846.846 INFO    ] 2026-10-28 03:18:34
[2026-10-28 03:18:34,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:18:35,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:18:35,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:18:35,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:18:35,344.344 INFO    ] time= 28/10/2026 03:18:35
[2026-10-28 03:18:35,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:18:35,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:18:35,515.515 INFO    ] No existing commands found in stream
[2026-10-28 03:18:40,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:18:40,530.530 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 03:18:41,168.168 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:18:41,170.170 INFO    ] Checking for system updates...
[2026-10-28 03:18:41,206.206 INFO    ] 200
[2026-10-28 03:18:41,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:18:41,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:18:41,263.263 INFO    ] No update needed
[2026-10-28 03:18:41,265.265 INFO    ] Checking for camera pi updates...
[2026-10-28 03:18:41,299.299 INFO    ] 200
[2026-10-28 03:18:41,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:18:41,341.341 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:18:41,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:18:41,521.521 INFO    ] No camera update needed
[2026-10-28 03:18:41,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:18:41,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:18:41,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:18:41,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:18:43,578.578 INFO    ] ================================================
[2026-10-28 03:18:43,593.593 INFO    ] Launching Daemon at Wed Oct 28 03:18:43 IST 2026
[2026-10-28 03:18:43,604.604 INFO    ] ================================================
[2026-10-28 03:18:44,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:18:44
[2026-10-28 03:18:44,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:18:45,011.011 INFO    ] Initializing speech engine...
[2026-10-28 03:18:45,034.034 INFO    ] 2026-10-28 03:18:45
[2026-10-28 03:18:45,289.289 INFO    ] 2026-10-28 03:18:45
[2026-10-28 03:18:45,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:18:45,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:18:45,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:18:45,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:18:45,867.867 INFO    ] time= 28/10/2026 03:18:45
[2026-10-28 03:18:45,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:18:45,891.891 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:18:46,022.022 INFO    ] No existing commands found in stream
[2026-10-28 03:18:51,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:18:51,038.038 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 03:18:55,383.383 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:18:55,386.386 INFO    ] Checking for system updates...
[2026-10-28 03:18:55,423.423 INFO    ] 200
[2026-10-28 03:18:55,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:18:55,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:18:55,482.482 INFO    ] No update needed
[2026-10-28 03:18:55,484.484 INFO    ] Checking for camera pi updates...
[2026-10-28 03:18:55,519.519 INFO    ] 200
[2026-10-28 03:18:55,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:18:55,562.562 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:18:55,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:18:55,642.642 INFO    ] No camera update needed
[2026-10-28 03:18:55,645.645 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:18:55,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:18:55,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:18:55,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:18:57,702.702 INFO    ] ================================================
[2026-10-28 03:18:57,718.718 INFO    ] Launching Daemon at Wed Oct 28 03:18:57 IST 2026
[2026-10-28 03:18:57,729.729 INFO    ] ================================================
[2026-10-28 03:18:58,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:18:58
[2026-10-28 03:18:59,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:18:59,314.314 INFO    ] Initializing speech engine...
[2026-10-28 03:18:59,322.322 INFO    ] 2026-10-28 03:18:59
[2026-10-28 03:18:59,594.594 INFO    ] 2026-10-28 03:18:59
[2026-10-28 03:18:59,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:18:59,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:18:59,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:19:00,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:19:00,150.150 INFO    ] time= 28/10/2026 03:19:00
[2026-10-28 03:19:00,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:19:00,199.199 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:19:00,324.324 INFO    ] No existing commands found in stream
[2026-10-28 03:19:05,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:19:05,359.359 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-28 03:19:09,410.410 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:19:09,413.413 INFO    ] Checking for system updates...
[2026-10-28 03:19:09,451.451 INFO    ] 200
[2026-10-28 03:19:09,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:19:09,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:19:09,519.519 INFO    ] No update needed
[2026-10-28 03:19:09,521.521 INFO    ] Checking for camera pi updates...
[2026-10-28 03:19:09,556.556 INFO    ] 200
[2026-10-28 03:19:09,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:19:09,601.601 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:19:09,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:19:09,704.704 INFO    ] No camera update needed
[2026-10-28 03:19:09,707.707 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:19:09,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:19:09,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:19:09,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:19:11,764.764 INFO    ] ================================================
[2026-10-28 03:19:11,782.782 INFO    ] Launching Daemon at Wed Oct 28 03:19:11 IST 2026
[2026-10-28 03:19:11,792.792 INFO    ] ================================================
[2026-10-28 03:19:12,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:19:12
[2026-10-28 03:19:13,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:19:13,449.449 INFO    ] Initializing speech engine...
[2026-10-28 03:19:13,458.458 INFO    ] 2026-10-28 03:19:13
[2026-10-28 03:19:13,750.750 INFO    ] 2026-10-28 03:19:13
[2026-10-28 03:19:13,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:19:14,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:19:14,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:19:14,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:19:14,501.501 INFO    ] time= 28/10/2026 03:19:14
[2026-10-28 03:19:14,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:19:14,605.605 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:19:14,827.827 INFO    ] No existing commands found in stream
[2026-10-28 03:19:19,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:19:19,866.866 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 03:19:21,849.849 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:19:21,852.852 INFO    ] Checking for system updates...
[2026-10-28 03:19:21,889.889 INFO    ] 200
[2026-10-28 03:19:21,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:19:21,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:19:21,948.948 INFO    ] No update needed
[2026-10-28 03:19:21,951.951 INFO    ] Checking for camera pi updates...
[2026-10-28 03:19:21,985.985 INFO    ] 200
[2026-10-28 03:19:21,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:19:22,029.029 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:19:22,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:19:22,111.111 INFO    ] No camera update needed
[2026-10-28 03:19:22,114.114 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:19:22,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:19:22,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:19:22,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:19:24,170.170 INFO    ] ================================================
[2026-10-28 03:19:24,186.186 INFO    ] Launching Daemon at Wed Oct 28 03:19:24 IST 2026
[2026-10-28 03:19:24,196.196 INFO    ] ================================================
[2026-10-28 03:19:24,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:19:24
[2026-10-28 03:19:25,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:19:25,628.628 INFO    ] Initializing speech engine...
[2026-10-28 03:19:25,638.638 INFO    ] 2026-10-28 03:19:25
[2026-10-28 03:19:25,882.882 INFO    ] 2026-10-28 03:19:25
[2026-10-28 03:19:25,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:19:26,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:19:26,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:19:26,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:19:26,438.438 INFO    ] time= 28/10/2026 03:19:26
[2026-10-28 03:19:26,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:19:26,463.463 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:19:26,590.590 INFO    ] No existing commands found in stream
[2026-10-28 03:19:31,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:19:31,609.609 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-28 03:19:32,451.451 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:19:32,454.454 INFO    ] Checking for system updates...
[2026-10-28 03:19:32,495.495 INFO    ] 200
[2026-10-28 03:19:32,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:19:32,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:19:32,558.558 INFO    ] No update needed
[2026-10-28 03:19:32,561.561 INFO    ] Checking for camera pi updates...
[2026-10-28 03:19:32,598.598 INFO    ] 200
[2026-10-28 03:19:32,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:19:32,648.648 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:19:32,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:19:32,756.756 INFO    ] No camera update needed
[2026-10-28 03:19:32,759.759 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:19:32,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:19:32,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:19:32,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:19:34,818.818 INFO    ] ================================================
[2026-10-28 03:19:34,833.833 INFO    ] Launching Daemon at Wed Oct 28 03:19:34 IST 2026
[2026-10-28 03:19:34,844.844 INFO    ] ================================================
[2026-10-28 03:19:35,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:19:35
[2026-10-28 03:19:35,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:19:36,265.265 INFO    ] Initializing speech engine...
[2026-10-28 03:19:36,272.272 INFO    ] 2026-10-28 03:19:36
[2026-10-28 03:19:36,517.517 INFO    ] 2026-10-28 03:19:36
[2026-10-28 03:19:36,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:19:36,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:19:36,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:19:36,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:19:36,989.989 INFO    ] time= 28/10/2026 03:19:36
[2026-10-28 03:19:37,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:19:37,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:19:37,220.220 INFO    ] No existing commands found in stream
[2026-10-28 03:19:42,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:19:42,242.242 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-28 03:19:44,396.396 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:19:44,398.398 INFO    ] Checking for system updates...
[2026-10-28 03:19:44,434.434 INFO    ] 200
[2026-10-28 03:19:44,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:19:44,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:19:44,492.492 INFO    ] No update needed
[2026-10-28 03:19:44,494.494 INFO    ] Checking for camera pi updates...
[2026-10-28 03:19:44,528.528 INFO    ] 200
[2026-10-28 03:19:44,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:19:44,571.571 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:19:44,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:19:44,632.632 INFO    ] No camera update needed
[2026-10-28 03:19:44,635.635 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:19:44,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:19:44,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:19:44,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:19:46,688.688 INFO    ] ================================================
[2026-10-28 03:19:46,703.703 INFO    ] Launching Daemon at Wed Oct 28 03:19:46 IST 2026
[2026-10-28 03:19:46,713.713 INFO    ] ================================================
[2026-10-28 03:19:47,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:19:47
[2026-10-28 03:19:48,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:19:48,397.397 INFO    ] Initializing speech engine...
[2026-10-28 03:19:48,408.408 INFO    ] 2026-10-28 03:19:48
[2026-10-28 03:19:48,718.718 INFO    ] 2026-10-28 03:19:48
[2026-10-28 03:19:48,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:19:49,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:19:49,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:19:49,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:19:49,279.279 INFO    ] time= 28/10/2026 03:19:49
[2026-10-28 03:19:49,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:19:49,376.376 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:19:49,510.510 INFO    ] No existing commands found in stream
[2026-10-28 03:19:54,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:19:54,549.549 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-28 03:19:55,890.890 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:19:55,894.894 INFO    ] Checking for system updates...
[2026-10-28 03:19:55,936.936 INFO    ] 200
[2026-10-28 03:19:55,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:19:55,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:19:56,000.000 INFO    ] No update needed
[2026-10-28 03:19:56,004.004 INFO    ] Checking for camera pi updates...
[2026-10-28 03:19:56,043.043 INFO    ] 200
[2026-10-28 03:19:56,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:19:56,089.089 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:19:56,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:19:56,168.168 INFO    ] No camera update needed
[2026-10-28 03:19:56,170.170 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:19:56,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:19:56,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:19:56,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:19:58,225.225 INFO    ] ================================================
[2026-10-28 03:19:58,239.239 INFO    ] Launching Daemon at Wed Oct 28 03:19:58 IST 2026
[2026-10-28 03:19:58,250.250 INFO    ] ================================================
[2026-10-28 03:19:58,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:19:58
[2026-10-28 03:19:59,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:19:59,927.927 INFO    ] Initializing speech engine...
[2026-10-28 03:19:59,932.932 INFO    ] 2026-10-28 03:19:59
[2026-10-28 03:20:00,246.246 INFO    ] 2026-10-28 03:20:00
[2026-10-28 03:20:00,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:20:00,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:20:00,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:20:00,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:20:00,956.956 INFO    ] time= 28/10/2026 03:20:00
[2026-10-28 03:20:01,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:20:01,059.059 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:20:01,195.195 INFO    ] No existing commands found in stream
[2026-10-28 03:20:06,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:20:06,237.237 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-28 03:20:09,728.728 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:20:09,732.732 INFO    ] Checking for system updates...
[2026-10-28 03:20:09,773.773 INFO    ] 200
[2026-10-28 03:20:09,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:20:09,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:20:09,839.839 INFO    ] No update needed
[2026-10-28 03:20:09,841.841 INFO    ] Checking for camera pi updates...
[2026-10-28 03:20:09,874.874 INFO    ] 200
[2026-10-28 03:20:09,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:20:09,918.918 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:20:09,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:20:09,968.968 INFO    ] No camera update needed
[2026-10-28 03:20:09,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:20:09,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:20:09,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:20:09,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:20:12,025.025 INFO    ] ================================================
[2026-10-28 03:20:12,040.040 INFO    ] Launching Daemon at Wed Oct 28 03:20:12 IST 2026
[2026-10-28 03:20:12,051.051 INFO    ] ================================================
[2026-10-28 03:20:12,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:20:12
[2026-10-28 03:20:13,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:20:13,498.498 INFO    ] Initializing speech engine...
[2026-10-28 03:20:13,507.507 INFO    ] 2026-10-28 03:20:13
[2026-10-28 03:20:13,752.752 INFO    ] 2026-10-28 03:20:13
[2026-10-28 03:20:13,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:20:14,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:20:14,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:20:14,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:20:14,309.309 INFO    ] time= 28/10/2026 03:20:14
[2026-10-28 03:20:14,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:20:14,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:20:14,461.461 INFO    ] No existing commands found in stream
[2026-10-28 03:20:19,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:20:19,480.480 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 03:20:21,830.830 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:20:21,832.832 INFO    ] Checking for system updates...
[2026-10-28 03:20:21,868.868 INFO    ] 200
[2026-10-28 03:20:21,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:20:21,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:20:21,933.933 INFO    ] No update needed
[2026-10-28 03:20:21,935.935 INFO    ] Checking for camera pi updates...
[2026-10-28 03:20:21,968.968 INFO    ] 200
[2026-10-28 03:20:21,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:20:22,011.011 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:20:22,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:20:22,090.090 INFO    ] No camera update needed
[2026-10-28 03:20:22,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:20:22,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:20:22,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:20:22,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:20:24,147.147 INFO    ] ================================================
[2026-10-28 03:20:24,162.162 INFO    ] Launching Daemon at Wed Oct 28 03:20:24 IST 2026
[2026-10-28 03:20:24,173.173 INFO    ] ================================================
[2026-10-28 03:20:24,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:20:24
[2026-10-28 03:20:25,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:20:25,579.579 INFO    ] Initializing speech engine...
[2026-10-28 03:20:25,588.588 INFO    ] 2026-10-28 03:20:25
[2026-10-28 03:20:25,881.881 INFO    ] 2026-10-28 03:20:25
[2026-10-28 03:20:25,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:20:26,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:20:26,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:20:26,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:20:26,490.490 INFO    ] time= 28/10/2026 03:20:26
[2026-10-28 03:20:26,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:20:26,525.525 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:20:26,667.667 INFO    ] No existing commands found in stream
[2026-10-28 03:20:31,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:20:31,695.695 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-28 03:20:33,704.704 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:20:33,706.706 INFO    ] Checking for system updates...
[2026-10-28 03:20:33,743.743 INFO    ] 200
[2026-10-28 03:20:33,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:20:33,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:20:33,812.812 INFO    ] No update needed
[2026-10-28 03:20:33,814.814 INFO    ] Checking for camera pi updates...
[2026-10-28 03:20:33,863.863 INFO    ] 200
[2026-10-28 03:20:33,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:20:33,907.907 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:20:34,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:20:34,006.006 INFO    ] No camera update needed
[2026-10-28 03:20:34,008.008 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:20:34,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:20:34,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:20:34,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:20:36,062.062 INFO    ] ================================================
[2026-10-28 03:20:36,077.077 INFO    ] Launching Daemon at Wed Oct 28 03:20:36 IST 2026
[2026-10-28 03:20:36,088.088 INFO    ] ================================================
[2026-10-28 03:20:36,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:20:36
[2026-10-28 03:20:37,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:20:37,578.578 INFO    ] Initializing speech engine...
[2026-10-28 03:20:37,588.588 INFO    ] 2026-10-28 03:20:37
[2026-10-28 03:20:37,878.878 INFO    ] 2026-10-28 03:20:37
[2026-10-28 03:20:37,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:20:38,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:20:38,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:20:38,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:20:38,408.408 INFO    ] time= 28/10/2026 03:20:38
[2026-10-28 03:20:38,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:20:38,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:20:38,574.574 INFO    ] No existing commands found in stream
[2026-10-28 03:20:43,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:20:43,604.604 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-28 03:20:46,464.464 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:20:46,467.467 INFO    ] Checking for system updates...
[2026-10-28 03:20:46,504.504 INFO    ] 200
[2026-10-28 03:20:46,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:20:46,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:20:46,569.569 INFO    ] No update needed
[2026-10-28 03:20:46,571.571 INFO    ] Checking for camera pi updates...
[2026-10-28 03:20:46,609.609 INFO    ] 200
[2026-10-28 03:20:46,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:20:46,656.656 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:20:46,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:20:46,838.838 INFO    ] No camera update needed
[2026-10-28 03:20:46,840.840 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:20:46,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:20:46,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:20:46,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:20:48,892.892 INFO    ] ================================================
[2026-10-28 03:20:48,909.909 INFO    ] Launching Daemon at Wed Oct 28 03:20:48 IST 2026
[2026-10-28 03:20:48,925.925 INFO    ] ================================================
[2026-10-28 03:20:49,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:20:49
[2026-10-28 03:20:50,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:20:50,322.322 INFO    ] Initializing speech engine...
[2026-10-28 03:20:50,343.343 INFO    ] 2026-10-28 03:20:50
[2026-10-28 03:20:50,599.599 INFO    ] 2026-10-28 03:20:50
[2026-10-28 03:20:50,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:20:50,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:20:50,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:20:51,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:20:51,151.151 INFO    ] time= 28/10/2026 03:20:51
[2026-10-28 03:20:51,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:20:51,175.175 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:20:51,307.307 INFO    ] No existing commands found in stream
[2026-10-28 03:20:56,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:20:56,328.328 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-28 03:20:59,089.089 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:20:59,092.092 INFO    ] Checking for system updates...
[2026-10-28 03:20:59,128.128 INFO    ] 200
[2026-10-28 03:20:59,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:20:59,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:20:59,186.186 INFO    ] No update needed
[2026-10-28 03:20:59,188.188 INFO    ] Checking for camera pi updates...
[2026-10-28 03:20:59,225.225 INFO    ] 200
[2026-10-28 03:20:59,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:20:59,267.267 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:20:59,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:20:59,347.347 INFO    ] No camera update needed
[2026-10-28 03:20:59,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:20:59,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:20:59,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:20:59,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:21:01,414.414 INFO    ] ================================================
[2026-10-28 03:21:01,449.449 INFO    ] Launching Daemon at Wed Oct 28 03:21:01 IST 2026
[2026-10-28 03:21:01,470.470 INFO    ] ================================================
[2026-10-28 03:21:02,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:21:02
[2026-10-28 03:21:02,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:21:03,255.255 INFO    ] Initializing speech engine...
[2026-10-28 03:21:03,266.266 INFO    ] 2026-10-28 03:21:03
[2026-10-28 03:21:03,541.541 INFO    ] 2026-10-28 03:21:03
[2026-10-28 03:21:03,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:21:03,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:21:03,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:21:04,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:21:04,088.088 INFO    ] time= 28/10/2026 03:21:04
[2026-10-28 03:21:04,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:21:04,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:21:04,251.251 INFO    ] No existing commands found in stream
[2026-10-28 03:21:09,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:21:09,284.284 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-28 03:21:13,090.090 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:21:13,092.092 INFO    ] Checking for system updates...
[2026-10-28 03:21:13,128.128 INFO    ] 200
[2026-10-28 03:21:13,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:21:13,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:21:13,185.185 INFO    ] No update needed
[2026-10-28 03:21:13,188.188 INFO    ] Checking for camera pi updates...
[2026-10-28 03:21:13,221.221 INFO    ] 200
[2026-10-28 03:21:13,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:21:13,264.264 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:21:13,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:21:13,346.346 INFO    ] No camera update needed
[2026-10-28 03:21:13,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:21:13,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:21:13,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:21:13,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:21:15,401.401 INFO    ] ================================================
[2026-10-28 03:21:15,417.417 INFO    ] Launching Daemon at Wed Oct 28 03:21:15 IST 2026
[2026-10-28 03:21:15,427.427 INFO    ] ================================================
[2026-10-28 03:21:16,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:21:16
[2026-10-28 03:21:16,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:21:17,023.023 INFO    ] Initializing speech engine...
[2026-10-28 03:21:17,037.037 INFO    ] 2026-10-28 03:21:17
[2026-10-28 03:21:17,343.343 INFO    ] 2026-10-28 03:21:17
[2026-10-28 03:21:17,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:21:17,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:21:17,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:21:17,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:21:17,864.864 INFO    ] time= 28/10/2026 03:21:17
[2026-10-28 03:21:17,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:21:17,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:21:18,036.036 INFO    ] No existing commands found in stream
[2026-10-28 03:21:23,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:21:23,070.070 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 03:21:24,530.530 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:21:24,532.532 INFO    ] Checking for system updates...
[2026-10-28 03:21:24,572.572 INFO    ] 200
[2026-10-28 03:21:24,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:21:24,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:21:24,635.635 INFO    ] No update needed
[2026-10-28 03:21:24,638.638 INFO    ] Checking for camera pi updates...
[2026-10-28 03:21:24,671.671 INFO    ] 200
[2026-10-28 03:21:24,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:21:24,715.715 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:21:24,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:21:24,825.825 INFO    ] No camera update needed
[2026-10-28 03:21:24,828.828 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:21:24,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:21:24,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:21:24,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:21:26,879.879 INFO    ] ================================================
[2026-10-28 03:21:26,894.894 INFO    ] Launching Daemon at Wed Oct 28 03:21:26 IST 2026
[2026-10-28 03:21:26,905.905 INFO    ] ================================================
[2026-10-28 03:21:27,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:21:27
[2026-10-28 03:21:28,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:21:28,504.504 INFO    ] Initializing speech engine...
[2026-10-28 03:21:28,512.512 INFO    ] 2026-10-28 03:21:28
[2026-10-28 03:21:28,792.792 INFO    ] 2026-10-28 03:21:28
[2026-10-28 03:21:28,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:21:29,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:21:29,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:21:29,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:21:29,371.371 INFO    ] time= 28/10/2026 03:21:29
[2026-10-28 03:21:29,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:21:29,409.409 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:21:29,512.512 INFO    ] No existing commands found in stream
[2026-10-28 03:21:34,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:21:34,554.554 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-28 03:21:36,450.450 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:21:36,454.454 INFO    ] Checking for system updates...
[2026-10-28 03:21:36,494.494 INFO    ] 200
[2026-10-28 03:21:36,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:21:36,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:21:36,552.552 INFO    ] No update needed
[2026-10-28 03:21:36,555.555 INFO    ] Checking for camera pi updates...
[2026-10-28 03:21:36,589.589 INFO    ] 200
[2026-10-28 03:21:36,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:21:36,632.632 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:21:36,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:21:36,710.710 INFO    ] No camera update needed
[2026-10-28 03:21:36,713.713 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:21:36,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:21:36,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:21:36,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:21:38,765.765 INFO    ] ================================================
[2026-10-28 03:21:38,780.780 INFO    ] Launching Daemon at Wed Oct 28 03:21:38 IST 2026
[2026-10-28 03:21:38,791.791 INFO    ] ================================================
[2026-10-28 03:21:39,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:21:39
[2026-10-28 03:21:39,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:21:40,192.192 INFO    ] Initializing speech engine...
[2026-10-28 03:21:40,198.198 INFO    ] 2026-10-28 03:21:40
[2026-10-28 03:21:40,490.490 INFO    ] 2026-10-28 03:21:40
[2026-10-28 03:21:40,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:21:40,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:21:40,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:21:40,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:21:41,046.046 INFO    ] time= 28/10/2026 03:21:40
[2026-10-28 03:21:41,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:21:41,122.122 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:21:41,255.255 INFO    ] No existing commands found in stream
[2026-10-28 03:21:46,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:21:46,283.283 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-28 03:21:50,677.677 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:21:50,679.679 INFO    ] Checking for system updates...
[2026-10-28 03:21:50,715.715 INFO    ] 200
[2026-10-28 03:21:50,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:21:50,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:21:50,771.771 INFO    ] No update needed
[2026-10-28 03:21:50,774.774 INFO    ] Checking for camera pi updates...
[2026-10-28 03:21:50,807.807 INFO    ] 200
[2026-10-28 03:21:50,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:21:50,855.855 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:21:50,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:21:50,938.938 INFO    ] No camera update needed
[2026-10-28 03:21:50,940.940 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:21:50,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:21:50,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:21:50,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:21:52,994.994 INFO    ] ================================================
[2026-10-28 03:21:53,009.009 INFO    ] Launching Daemon at Wed Oct 28 03:21:53 IST 2026
[2026-10-28 03:21:53,019.019 INFO    ] ================================================
[2026-10-28 03:21:53,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:21:53
[2026-10-28 03:21:54,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:21:54,628.628 INFO    ] Initializing speech engine...
[2026-10-28 03:21:54,634.634 INFO    ] 2026-10-28 03:21:54
[2026-10-28 03:21:54,940.940 INFO    ] 2026-10-28 03:21:54
[2026-10-28 03:21:55,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:21:55,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:21:55,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:21:55,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:21:55,461.461 INFO    ] time= 28/10/2026 03:21:55
[2026-10-28 03:21:55,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:21:55,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:21:55,623.623 INFO    ] No existing commands found in stream
[2026-10-28 03:22:00,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:22:00,659.659 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-28 03:22:02,247.247 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:22:02,250.250 INFO    ] Checking for system updates...
[2026-10-28 03:22:02,291.291 INFO    ] 200
[2026-10-28 03:22:02,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:22:02,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:22:02,366.366 INFO    ] No update needed
[2026-10-28 03:22:02,369.369 INFO    ] Checking for camera pi updates...
[2026-10-28 03:22:02,407.407 INFO    ] 200
[2026-10-28 03:22:02,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:22:02,460.460 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:22:02,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:22:02,543.543 INFO    ] No camera update needed
[2026-10-28 03:22:02,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:22:02,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:22:02,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:22:02,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:22:04,604.604 INFO    ] ================================================
[2026-10-28 03:22:04,618.618 INFO    ] Launching Daemon at Wed Oct 28 03:22:04 IST 2026
[2026-10-28 03:22:04,629.629 INFO    ] ================================================
[2026-10-28 03:22:05,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:22:05
[2026-10-28 03:22:05,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:22:06,048.048 INFO    ] Initializing speech engine...
[2026-10-28 03:22:06,058.058 INFO    ] 2026-10-28 03:22:06
[2026-10-28 03:22:06,318.318 INFO    ] 2026-10-28 03:22:06
[2026-10-28 03:22:06,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:22:06,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:22:06,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:22:06,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:22:06,861.861 INFO    ] time= 28/10/2026 03:22:06
[2026-10-28 03:22:06,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:22:06,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:22:07,015.015 INFO    ] No existing commands found in stream
[2026-10-28 03:22:12,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:22:12,041.041 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-28 03:22:14,511.511 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:22:14,514.514 INFO    ] Checking for system updates...
[2026-10-28 03:22:14,550.550 INFO    ] 200
[2026-10-28 03:22:14,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:22:14,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:22:14,606.606 INFO    ] No update needed
[2026-10-28 03:22:14,608.608 INFO    ] Checking for camera pi updates...
[2026-10-28 03:22:14,650.650 INFO    ] 200
[2026-10-28 03:22:14,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:22:14,698.698 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:22:14,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:22:14,780.780 INFO    ] No camera update needed
[2026-10-28 03:22:14,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:22:14,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:22:14,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:22:14,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:22:16,837.837 INFO    ] ================================================
[2026-10-28 03:22:16,852.852 INFO    ] Launching Daemon at Wed Oct 28 03:22:16 IST 2026
[2026-10-28 03:22:16,862.862 INFO    ] ================================================
[2026-10-28 03:22:17,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:22:17
[2026-10-28 03:22:18,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:22:18,381.381 INFO    ] Initializing speech engine...
[2026-10-28 03:22:18,389.389 INFO    ] 2026-10-28 03:22:18
[2026-10-28 03:22:18,680.680 INFO    ] 2026-10-28 03:22:18
[2026-10-28 03:22:18,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:22:18,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:22:19,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:22:19,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:22:19,315.315 INFO    ] time= 28/10/2026 03:22:19
[2026-10-28 03:22:19,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:22:19,341.341 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:22:19,485.485 INFO    ] No existing commands found in stream
[2026-10-28 03:22:24,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:22:24,504.504 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-28 03:22:25,742.742 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:22:25,745.745 INFO    ] Checking for system updates...
[2026-10-28 03:22:25,784.784 INFO    ] 200
[2026-10-28 03:22:25,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:22:25,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:22:25,841.841 INFO    ] No update needed
[2026-10-28 03:22:25,843.843 INFO    ] Checking for camera pi updates...
[2026-10-28 03:22:25,878.878 INFO    ] 200
[2026-10-28 03:22:25,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:22:25,925.925 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:22:26,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:22:26,020.020 INFO    ] No camera update needed
[2026-10-28 03:22:26,022.022 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:22:26,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:22:26,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:22:26,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:22:28,077.077 INFO    ] ================================================
[2026-10-28 03:22:28,091.091 INFO    ] Launching Daemon at Wed Oct 28 03:22:28 IST 2026
[2026-10-28 03:22:28,102.102 INFO    ] ================================================
[2026-10-28 03:22:28,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:22:28
[2026-10-28 03:22:29,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:22:29,707.707 INFO    ] Initializing speech engine...
[2026-10-28 03:22:29,720.720 INFO    ] 2026-10-28 03:22:29
[2026-10-28 03:22:29,987.987 INFO    ] 2026-10-28 03:22:29
[2026-10-28 03:22:30,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:22:30,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:22:30,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:22:30,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:22:30,533.533 INFO    ] time= 28/10/2026 03:22:30
[2026-10-28 03:22:30,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:22:30,580.580 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:22:30,712.712 INFO    ] No existing commands found in stream
[2026-10-28 03:22:35,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:22:35,739.739 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-28 03:22:38,290.290 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:22:38,294.294 INFO    ] Checking for system updates...
[2026-10-28 03:22:38,330.330 INFO    ] 200
[2026-10-28 03:22:38,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:22:38,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:22:38,387.387 INFO    ] No update needed
[2026-10-28 03:22:38,389.389 INFO    ] Checking for camera pi updates...
[2026-10-28 03:22:38,422.422 INFO    ] 200
[2026-10-28 03:22:38,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:22:38,465.465 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:22:38,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:22:38,547.547 INFO    ] No camera update needed
[2026-10-28 03:22:38,549.549 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:22:38,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:22:38,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:22:38,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:22:40,602.602 INFO    ] ================================================
[2026-10-28 03:22:40,617.617 INFO    ] Launching Daemon at Wed Oct 28 03:22:40 IST 2026
[2026-10-28 03:22:40,627.627 INFO    ] ================================================
[2026-10-28 03:22:41,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:22:41
[2026-10-28 03:22:41,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:22:42,224.224 INFO    ] Initializing speech engine...
[2026-10-28 03:22:42,238.238 INFO    ] 2026-10-28 03:22:42
[2026-10-28 03:22:42,547.547 INFO    ] 2026-10-28 03:22:42
[2026-10-28 03:22:42,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:22:42,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:22:42,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:22:43,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:22:43,061.061 INFO    ] time= 28/10/2026 03:22:43
[2026-10-28 03:22:43,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:22:43,101.101 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:22:43,232.232 INFO    ] No existing commands found in stream
[2026-10-28 03:22:48,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:22:48,267.267 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-28 03:22:49,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:22:49,229.229 INFO    ] Checking for system updates...
[2026-10-28 03:22:49,269.269 INFO    ] 200
[2026-10-28 03:22:49,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:22:49,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:22:49,326.326 INFO    ] No update needed
[2026-10-28 03:22:49,329.329 INFO    ] Checking for camera pi updates...
[2026-10-28 03:22:49,362.362 INFO    ] 200
[2026-10-28 03:22:49,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:22:49,409.409 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:22:49,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:22:49,580.580 INFO    ] No camera update needed
[2026-10-28 03:22:49,582.582 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:22:49,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:22:49,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:22:49,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:22:51,634.634 INFO    ] ================================================
[2026-10-28 03:22:51,648.648 INFO    ] Launching Daemon at Wed Oct 28 03:22:51 IST 2026
[2026-10-28 03:22:51,659.659 INFO    ] ================================================
[2026-10-28 03:22:52,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:22:52
[2026-10-28 03:22:52,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:22:53,264.264 INFO    ] Initializing speech engine...
[2026-10-28 03:22:53,277.277 INFO    ] 2026-10-28 03:22:53
[2026-10-28 03:22:53,560.560 INFO    ] 2026-10-28 03:22:53
[2026-10-28 03:22:53,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:22:53,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:22:53,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:22:54,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:22:54,210.210 INFO    ] time= 28/10/2026 03:22:54
[2026-10-28 03:22:54,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:22:54,300.300 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:22:54,455.455 INFO    ] No existing commands found in stream
[2026-10-28 03:22:59,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:22:59,489.489 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-28 03:23:03,028.028 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:23:03,032.032 INFO    ] Checking for system updates...
[2026-10-28 03:23:03,075.075 INFO    ] 200
[2026-10-28 03:23:03,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:23:03,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:23:03,135.135 INFO    ] No update needed
[2026-10-28 03:23:03,137.137 INFO    ] Checking for camera pi updates...
[2026-10-28 03:23:03,186.186 INFO    ] 200
[2026-10-28 03:23:03,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:23:03,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:23:03,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:23:03,316.316 INFO    ] No camera update needed
[2026-10-28 03:23:03,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:23:03,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:23:03,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:23:03,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:23:05,375.375 INFO    ] ================================================
[2026-10-28 03:23:05,391.391 INFO    ] Launching Daemon at Wed Oct 28 03:23:05 IST 2026
[2026-10-28 03:23:05,402.402 INFO    ] ================================================
[2026-10-28 03:23:05,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:23:05
[2026-10-28 03:23:06,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:23:06,845.845 INFO    ] Initializing speech engine...
[2026-10-28 03:23:06,854.854 INFO    ] 2026-10-28 03:23:06
[2026-10-28 03:23:07,150.150 INFO    ] 2026-10-28 03:23:07
[2026-10-28 03:23:07,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:23:07,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:23:07,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:23:07,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:23:07,653.653 INFO    ] time= 28/10/2026 03:23:07
[2026-10-28 03:23:07,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:23:07,742.742 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:23:07,858.858 INFO    ] No existing commands found in stream
[2026-10-28 03:23:12,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:23:12,872.872 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-28 03:23:17,194.194 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:23:17,197.197 INFO    ] Checking for system updates...
[2026-10-28 03:23:17,233.233 INFO    ] 200
[2026-10-28 03:23:17,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:23:17,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:23:17,290.290 INFO    ] No update needed
[2026-10-28 03:23:17,293.293 INFO    ] Checking for camera pi updates...
[2026-10-28 03:23:17,330.330 INFO    ] 200
[2026-10-28 03:23:17,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:23:17,374.374 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:23:17,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:23:17,455.455 INFO    ] No camera update needed
[2026-10-28 03:23:17,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:23:17,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:23:17,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:23:17,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:23:19,510.510 INFO    ] ================================================
[2026-10-28 03:23:19,526.526 INFO    ] Launching Daemon at Wed Oct 28 03:23:19 IST 2026
[2026-10-28 03:23:19,542.542 INFO    ] ================================================
[2026-10-28 03:23:20,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:23:20
[2026-10-28 03:23:20,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:23:20,995.995 INFO    ] Initializing speech engine...
[2026-10-28 03:23:21,005.005 INFO    ] 2026-10-28 03:23:20
[2026-10-28 03:23:21,251.251 INFO    ] 2026-10-28 03:23:21
[2026-10-28 03:23:21,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:23:21,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:23:21,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:23:21,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:23:21,817.817 INFO    ] time= 28/10/2026 03:23:21
[2026-10-28 03:23:21,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:23:21,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:23:21,967.967 INFO    ] No existing commands found in stream
[2026-10-28 03:23:26,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:23:26,986.986 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 03:23:29,445.445 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:23:29,447.447 INFO    ] Checking for system updates...
[2026-10-28 03:23:29,487.487 INFO    ] 200
[2026-10-28 03:23:29,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:23:29,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:23:29,552.552 INFO    ] No update needed
[2026-10-28 03:23:29,555.555 INFO    ] Checking for camera pi updates...
[2026-10-28 03:23:29,598.598 INFO    ] 200
[2026-10-28 03:23:29,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:23:29,655.655 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:23:29,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:23:29,732.732 INFO    ] No camera update needed
[2026-10-28 03:23:29,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:23:29,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:23:29,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:23:29,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:23:31,789.789 INFO    ] ================================================
[2026-10-28 03:23:31,804.804 INFO    ] Launching Daemon at Wed Oct 28 03:23:31 IST 2026
[2026-10-28 03:23:31,815.815 INFO    ] ================================================
[2026-10-28 03:23:32,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:23:32
[2026-10-28 03:23:33,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:23:33,345.345 INFO    ] Initializing speech engine...
[2026-10-28 03:23:33,352.352 INFO    ] 2026-10-28 03:23:33
[2026-10-28 03:23:33,612.612 INFO    ] 2026-10-28 03:23:33
[2026-10-28 03:23:33,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:23:33,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:23:33,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:23:34,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:23:34,174.174 INFO    ] time= 28/10/2026 03:23:34
[2026-10-28 03:23:34,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:23:34,253.253 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:23:34,386.386 INFO    ] No existing commands found in stream
[2026-10-28 03:23:39,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:23:39,413.413 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-28 03:23:41,742.742 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:23:41,745.745 INFO    ] Checking for system updates...
[2026-10-28 03:23:41,781.781 INFO    ] 200
[2026-10-28 03:23:41,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:23:41,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:23:41,841.841 INFO    ] No update needed
[2026-10-28 03:23:41,844.844 INFO    ] Checking for camera pi updates...
[2026-10-28 03:23:41,878.878 INFO    ] 200
[2026-10-28 03:23:41,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:23:41,919.919 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:23:41,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:23:42,000.000 INFO    ] No camera update needed
[2026-10-28 03:23:42,002.002 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:23:42,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:23:42,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:23:42,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:23:44,055.055 INFO    ] ================================================
[2026-10-28 03:23:44,069.069 INFO    ] Launching Daemon at Wed Oct 28 03:23:44 IST 2026
[2026-10-28 03:23:44,080.080 INFO    ] ================================================
[2026-10-28 03:23:44,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:23:44
[2026-10-28 03:23:45,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:23:45,481.481 INFO    ] Initializing speech engine...
[2026-10-28 03:23:45,490.490 INFO    ] 2026-10-28 03:23:45
[2026-10-28 03:23:45,799.799 INFO    ] 2026-10-28 03:23:45
[2026-10-28 03:23:45,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:23:46,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:23:46,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:23:46,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:23:46,402.402 INFO    ] time= 28/10/2026 03:23:46
[2026-10-28 03:23:46,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:23:46,426.426 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:23:46,556.556 INFO    ] No existing commands found in stream
[2026-10-28 03:23:51,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:23:51,572.572 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-28 03:23:53,918.918 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:23:53,921.921 INFO    ] Checking for system updates...
[2026-10-28 03:23:53,960.960 INFO    ] 200
[2026-10-28 03:23:53,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:23:54,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:23:54,024.024 INFO    ] No update needed
[2026-10-28 03:23:54,026.026 INFO    ] Checking for camera pi updates...
[2026-10-28 03:23:54,063.063 INFO    ] 200
[2026-10-28 03:23:54,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:23:54,106.106 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:23:54,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:23:54,193.193 INFO    ] No camera update needed
[2026-10-28 03:23:54,196.196 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:23:54,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:23:54,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:23:54,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:23:56,249.249 INFO    ] ================================================
[2026-10-28 03:23:56,265.265 INFO    ] Launching Daemon at Wed Oct 28 03:23:56 IST 2026
[2026-10-28 03:23:56,275.275 INFO    ] ================================================
[2026-10-28 03:23:56,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:23:56
[2026-10-28 03:23:57,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:23:57,938.938 INFO    ] Initializing speech engine...
[2026-10-28 03:23:57,946.946 INFO    ] 2026-10-28 03:23:57
[2026-10-28 03:23:58,229.229 INFO    ] 2026-10-28 03:23:58
[2026-10-28 03:23:58,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:23:58,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:23:58,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:23:58,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:23:58,803.803 INFO    ] time= 28/10/2026 03:23:58
[2026-10-28 03:23:58,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:23:58,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:23:58,966.966 INFO    ] No existing commands found in stream
[2026-10-28 03:24:03,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:24:03,995.995 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-28 03:24:06,988.988 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:24:06,991.991 INFO    ] Checking for system updates...
[2026-10-28 03:24:07,031.031 INFO    ] 200
[2026-10-28 03:24:07,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:24:07,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:24:07,089.089 INFO    ] No update needed
[2026-10-28 03:24:07,092.092 INFO    ] Checking for camera pi updates...
[2026-10-28 03:24:07,128.128 INFO    ] 200
[2026-10-28 03:24:07,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:24:07,171.171 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:24:07,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:24:07,255.255 INFO    ] No camera update needed
[2026-10-28 03:24:07,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:24:07,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:24:07,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:24:07,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:24:09,311.311 INFO    ] ================================================
[2026-10-28 03:24:09,326.326 INFO    ] Launching Daemon at Wed Oct 28 03:24:09 IST 2026
[2026-10-28 03:24:09,337.337 INFO    ] ================================================
[2026-10-28 03:24:09,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:24:09
[2026-10-28 03:24:10,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:24:10,808.808 INFO    ] Initializing speech engine...
[2026-10-28 03:24:10,817.817 INFO    ] 2026-10-28 03:24:10
[2026-10-28 03:24:11,079.079 INFO    ] 2026-10-28 03:24:11
[2026-10-28 03:24:11,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:24:11,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:24:11,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:24:11,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:24:11,625.625 INFO    ] time= 28/10/2026 03:24:11
[2026-10-28 03:24:11,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:24:11,650.650 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:24:11,775.775 INFO    ] No existing commands found in stream
[2026-10-28 03:24:16,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:24:16,791.791 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 03:24:18,423.423 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:24:18,425.425 INFO    ] Checking for system updates...
[2026-10-28 03:24:18,462.462 INFO    ] 200
[2026-10-28 03:24:18,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:24:18,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:24:18,519.519 INFO    ] No update needed
[2026-10-28 03:24:18,522.522 INFO    ] Checking for camera pi updates...
[2026-10-28 03:24:18,555.555 INFO    ] 200
[2026-10-28 03:24:18,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:24:18,599.599 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:24:18,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:24:18,677.677 INFO    ] No camera update needed
[2026-10-28 03:24:18,679.679 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:24:18,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:24:18,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:24:18,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:24:20,735.735 INFO    ] ================================================
[2026-10-28 03:24:20,749.749 INFO    ] Launching Daemon at Wed Oct 28 03:24:20 IST 2026
[2026-10-28 03:24:20,760.760 INFO    ] ================================================
[2026-10-28 03:24:21,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:24:21
[2026-10-28 03:24:21,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:24:22,245.245 INFO    ] Initializing speech engine...
[2026-10-28 03:24:22,263.263 INFO    ] 2026-10-28 03:24:22
[2026-10-28 03:24:22,513.513 INFO    ] 2026-10-28 03:24:22
[2026-10-28 03:24:22,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:24:22,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:24:22,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:24:23,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:24:23,073.073 INFO    ] time= 28/10/2026 03:24:23
[2026-10-28 03:24:23,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:24:23,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:24:23,221.221 INFO    ] No existing commands found in stream
[2026-10-28 03:24:28,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:24:28,238.238 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 03:24:30,171.171 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:24:30,174.174 INFO    ] Checking for system updates...
[2026-10-28 03:24:30,214.214 INFO    ] 200
[2026-10-28 03:24:30,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:24:30,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:24:30,272.272 INFO    ] No update needed
[2026-10-28 03:24:30,274.274 INFO    ] Checking for camera pi updates...
[2026-10-28 03:24:30,307.307 INFO    ] 200
[2026-10-28 03:24:30,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:24:30,354.354 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:24:30,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:24:30,435.435 INFO    ] No camera update needed
[2026-10-28 03:24:30,437.437 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:24:30,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:24:30,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:24:30,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:24:32,492.492 INFO    ] ================================================
[2026-10-28 03:24:32,509.509 INFO    ] Launching Daemon at Wed Oct 28 03:24:32 IST 2026
[2026-10-28 03:24:32,520.520 INFO    ] ================================================
[2026-10-28 03:24:33,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:24:33
[2026-10-28 03:24:33,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:24:34,029.029 INFO    ] Initializing speech engine...
[2026-10-28 03:24:34,047.047 INFO    ] 2026-10-28 03:24:34
[2026-10-28 03:24:34,325.325 INFO    ] 2026-10-28 03:24:34
[2026-10-28 03:24:34,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:24:34,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:24:34,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:24:34,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:24:34,896.896 INFO    ] time= 28/10/2026 03:24:34
[2026-10-28 03:24:34,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:24:34,933.933 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:24:35,032.032 INFO    ] No existing commands found in stream
[2026-10-28 03:24:40,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:24:40,056.056 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-28 03:24:41,795.795 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:24:41,797.797 INFO    ] Checking for system updates...
[2026-10-28 03:24:41,837.837 INFO    ] 200
[2026-10-28 03:24:41,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:24:41,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:24:41,902.902 INFO    ] No update needed
[2026-10-28 03:24:41,905.905 INFO    ] Checking for camera pi updates...
[2026-10-28 03:24:41,943.943 INFO    ] 200
[2026-10-28 03:24:41,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:24:41,991.991 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:24:42,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:24:42,040.040 INFO    ] No camera update needed
[2026-10-28 03:24:42,043.043 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:24:42,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:24:42,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:24:42,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:24:44,099.099 INFO    ] ================================================
[2026-10-28 03:24:44,114.114 INFO    ] Launching Daemon at Wed Oct 28 03:24:44 IST 2026
[2026-10-28 03:24:44,124.124 INFO    ] ================================================
[2026-10-28 03:24:44,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:24:44
[2026-10-28 03:24:45,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:24:45,559.559 INFO    ] Initializing speech engine...
[2026-10-28 03:24:45,582.582 INFO    ] 2026-10-28 03:24:45
[2026-10-28 03:24:45,843.843 INFO    ] 2026-10-28 03:24:45
[2026-10-28 03:24:45,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:24:46,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:24:46,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:24:46,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:24:46,461.461 INFO    ] time= 28/10/2026 03:24:46
[2026-10-28 03:24:46,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:24:46,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:24:46,622.622 INFO    ] No existing commands found in stream
[2026-10-28 03:24:51,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:24:51,647.647 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 03:24:52,343.343 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:24:52,346.346 INFO    ] Checking for system updates...
[2026-10-28 03:24:52,381.381 INFO    ] 200
[2026-10-28 03:24:52,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:24:52,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:24:52,438.438 INFO    ] No update needed
[2026-10-28 03:24:52,440.440 INFO    ] Checking for camera pi updates...
[2026-10-28 03:24:52,474.474 INFO    ] 200
[2026-10-28 03:24:52,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:24:52,517.517 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:24:52,715.715 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:24:52,717.717 INFO    ] No camera update needed
[2026-10-28 03:24:52,720.720 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:24:52,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:24:52,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:24:52,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:24:54,774.774 INFO    ] ================================================
[2026-10-28 03:24:54,789.789 INFO    ] Launching Daemon at Wed Oct 28 03:24:54 IST 2026
[2026-10-28 03:24:54,800.800 INFO    ] ================================================
[2026-10-28 03:24:55,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:24:55
[2026-10-28 03:24:56,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:24:56,345.345 INFO    ] Initializing speech engine...
[2026-10-28 03:24:56,353.353 INFO    ] 2026-10-28 03:24:56
[2026-10-28 03:24:56,642.642 INFO    ] 2026-10-28 03:24:56
[2026-10-28 03:24:56,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:24:56,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:24:56,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:24:57,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:24:57,263.263 INFO    ] time= 28/10/2026 03:24:57
[2026-10-28 03:24:57,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:24:57,290.290 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:24:57,407.407 INFO    ] No existing commands found in stream
[2026-10-28 03:25:02,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:25:02,436.436 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 03:25:05,970.970 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:25:05,973.973 INFO    ] Checking for system updates...
[2026-10-28 03:25:06,012.012 INFO    ] 200
[2026-10-28 03:25:06,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:25:06,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:25:06,076.076 INFO    ] No update needed
[2026-10-28 03:25:06,078.078 INFO    ] Checking for camera pi updates...
[2026-10-28 03:25:06,112.112 INFO    ] 200
[2026-10-28 03:25:06,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:25:06,154.154 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:25:06,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:25:06,239.239 INFO    ] No camera update needed
[2026-10-28 03:25:06,241.241 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:25:06,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:25:06,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:25:06,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:25:08,294.294 INFO    ] ================================================
[2026-10-28 03:25:08,309.309 INFO    ] Launching Daemon at Wed Oct 28 03:25:08 IST 2026
[2026-10-28 03:25:08,320.320 INFO    ] ================================================
[2026-10-28 03:25:08,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:25:08
[2026-10-28 03:25:09,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:25:09,969.969 INFO    ] Initializing speech engine...
[2026-10-28 03:25:09,980.980 INFO    ] 2026-10-28 03:25:09
[2026-10-28 03:25:10,268.268 INFO    ] 2026-10-28 03:25:10
[2026-10-28 03:25:10,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:25:10,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:25:10,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:25:10,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:25:10,816.816 INFO    ] time= 28/10/2026 03:25:10
[2026-10-28 03:25:10,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:25:10,842.842 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:25:10,968.968 INFO    ] No existing commands found in stream
[2026-10-28 03:25:15,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:25:15,986.986 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 03:25:17,827.827 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:25:17,830.830 INFO    ] Checking for system updates...
[2026-10-28 03:25:17,867.867 INFO    ] 200
[2026-10-28 03:25:17,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:25:17,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:25:17,925.925 INFO    ] No update needed
[2026-10-28 03:25:17,928.928 INFO    ] Checking for camera pi updates...
[2026-10-28 03:25:17,962.962 INFO    ] 200
[2026-10-28 03:25:17,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:25:18,008.008 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:25:18,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:25:18,088.088 INFO    ] No camera update needed
[2026-10-28 03:25:18,090.090 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:25:18,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:25:18,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:25:18,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:25:20,142.142 INFO    ] ================================================
[2026-10-28 03:25:20,156.156 INFO    ] Launching Daemon at Wed Oct 28 03:25:20 IST 2026
[2026-10-28 03:25:20,167.167 INFO    ] ================================================
[2026-10-28 03:25:20,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:25:20
[2026-10-28 03:25:21,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:25:21,578.578 INFO    ] Initializing speech engine...
[2026-10-28 03:25:21,593.593 INFO    ] 2026-10-28 03:25:21
[2026-10-28 03:25:21,859.859 INFO    ] 2026-10-28 03:25:21
[2026-10-28 03:25:21,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:25:22,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:25:22,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:25:22,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:25:22,441.441 INFO    ] time= 28/10/2026 03:25:22
[2026-10-28 03:25:22,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:25:22,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:25:22,601.601 INFO    ] No existing commands found in stream
[2026-10-28 03:25:27,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:25:27,622.622 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-28 03:25:29,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:25:29,705.705 INFO    ] Checking for system updates...
[2026-10-28 03:25:29,740.740 INFO    ] 200
[2026-10-28 03:25:29,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:25:29,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:25:29,799.799 INFO    ] No update needed
[2026-10-28 03:25:29,801.801 INFO    ] Checking for camera pi updates...
[2026-10-28 03:25:29,834.834 INFO    ] 200
[2026-10-28 03:25:29,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:25:29,881.881 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:25:29,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:25:29,962.962 INFO    ] No camera update needed
[2026-10-28 03:25:29,964.964 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:25:29,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:25:29,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:25:29,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:25:32,017.017 INFO    ] ================================================
[2026-10-28 03:25:32,032.032 INFO    ] Launching Daemon at Wed Oct 28 03:25:32 IST 2026
[2026-10-28 03:25:32,044.044 INFO    ] ================================================
[2026-10-28 03:25:32,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:25:32
[2026-10-28 03:25:33,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:25:33,661.661 INFO    ] Initializing speech engine...
[2026-10-28 03:25:33,672.672 INFO    ] 2026-10-28 03:25:33
[2026-10-28 03:25:33,961.961 INFO    ] 2026-10-28 03:25:33
[2026-10-28 03:25:34,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:25:34,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:25:34,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:25:34,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:25:34,531.531 INFO    ] time= 28/10/2026 03:25:34
[2026-10-28 03:25:34,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:25:34,571.571 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:25:34,713.713 INFO    ] No existing commands found in stream
[2026-10-28 03:25:39,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:25:39,742.742 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-28 03:25:41,520.520 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:25:41,523.523 INFO    ] Checking for system updates...
[2026-10-28 03:25:41,560.560 INFO    ] 200
[2026-10-28 03:25:41,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:25:41,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:25:41,624.624 INFO    ] No update needed
[2026-10-28 03:25:41,626.626 INFO    ] Checking for camera pi updates...
[2026-10-28 03:25:41,663.663 INFO    ] 200
[2026-10-28 03:25:41,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:25:41,710.710 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:25:41,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:25:41,778.778 INFO    ] No camera update needed
[2026-10-28 03:25:41,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:25:41,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:25:41,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:25:41,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:25:43,835.835 INFO    ] ================================================
[2026-10-28 03:25:43,850.850 INFO    ] Launching Daemon at Wed Oct 28 03:25:43 IST 2026
[2026-10-28 03:25:43,860.860 INFO    ] ================================================
[2026-10-28 03:25:44,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:25:44
[2026-10-28 03:25:45,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:25:45,328.328 INFO    ] Initializing speech engine...
[2026-10-28 03:25:45,336.336 INFO    ] 2026-10-28 03:25:45
[2026-10-28 03:25:45,665.665 INFO    ] 2026-10-28 03:25:45
[2026-10-28 03:25:45,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:25:45,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:25:46,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:25:46,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:25:46,218.218 INFO    ] time= 28/10/2026 03:25:46
[2026-10-28 03:25:46,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:25:46,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:25:46,422.422 INFO    ] No existing commands found in stream
[2026-10-28 03:25:51,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:25:51,442.442 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 03:25:54,307.307 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:25:54,310.310 INFO    ] Checking for system updates...
[2026-10-28 03:25:54,346.346 INFO    ] 200
[2026-10-28 03:25:54,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:25:54,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:25:54,403.403 INFO    ] No update needed
[2026-10-28 03:25:54,405.405 INFO    ] Checking for camera pi updates...
[2026-10-28 03:25:54,439.439 INFO    ] 200
[2026-10-28 03:25:54,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:25:54,486.486 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:25:54,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:25:54,564.564 INFO    ] No camera update needed
[2026-10-28 03:25:54,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:25:54,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:25:54,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:25:54,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:25:56,619.619 INFO    ] ================================================
[2026-10-28 03:25:56,634.634 INFO    ] Launching Daemon at Wed Oct 28 03:25:56 IST 2026
[2026-10-28 03:25:56,645.645 INFO    ] ================================================
[2026-10-28 03:25:57,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:25:57
[2026-10-28 03:25:57,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:25:58,128.128 INFO    ] Initializing speech engine...
[2026-10-28 03:25:58,138.138 INFO    ] 2026-10-28 03:25:58
[2026-10-28 03:25:58,386.386 INFO    ] 2026-10-28 03:25:58
[2026-10-28 03:25:58,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:25:58,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:25:58,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:25:58,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:25:58,942.942 INFO    ] time= 28/10/2026 03:25:58
[2026-10-28 03:25:58,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:25:58,989.989 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:25:59,115.115 INFO    ] No existing commands found in stream
[2026-10-28 03:26:04,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:26:04,143.143 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 03:26:04,865.865 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:26:04,867.867 INFO    ] Checking for system updates...
[2026-10-28 03:26:04,903.903 INFO    ] 200
[2026-10-28 03:26:04,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:26:04,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:26:04,965.965 INFO    ] No update needed
[2026-10-28 03:26:04,968.968 INFO    ] Checking for camera pi updates...
[2026-10-28 03:26:05,004.004 INFO    ] 200
[2026-10-28 03:26:05,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:26:05,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:26:05,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:26:05,142.142 INFO    ] No camera update needed
[2026-10-28 03:26:05,144.144 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:26:05,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:26:05,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:26:05,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:26:07,197.197 INFO    ] ================================================
[2026-10-28 03:26:07,212.212 INFO    ] Launching Daemon at Wed Oct 28 03:26:07 IST 2026
[2026-10-28 03:26:07,223.223 INFO    ] ================================================
[2026-10-28 03:26:07,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:26:07
[2026-10-28 03:26:08,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:26:08,661.661 INFO    ] Initializing speech engine...
[2026-10-28 03:26:08,677.677 INFO    ] 2026-10-28 03:26:08
[2026-10-28 03:26:08,931.931 INFO    ] 2026-10-28 03:26:08
[2026-10-28 03:26:08,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:26:09,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:26:09,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:26:09,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:26:09,434.434 INFO    ] time= 28/10/2026 03:26:09
[2026-10-28 03:26:09,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:26:09,528.528 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:26:09,689.689 INFO    ] No existing commands found in stream
[2026-10-28 03:26:14,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:26:14,715.715 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-28 03:26:18,585.585 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:26:18,588.588 INFO    ] Checking for system updates...
[2026-10-28 03:26:18,627.627 INFO    ] 200
[2026-10-28 03:26:18,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:26:18,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:26:18,690.690 INFO    ] No update needed
[2026-10-28 03:26:18,692.692 INFO    ] Checking for camera pi updates...
[2026-10-28 03:26:18,729.729 INFO    ] 200
[2026-10-28 03:26:18,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:26:18,771.771 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:26:18,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:26:18,856.856 INFO    ] No camera update needed
[2026-10-28 03:26:18,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:26:18,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:26:18,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:26:18,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:26:20,913.913 INFO    ] ================================================
[2026-10-28 03:26:20,928.928 INFO    ] Launching Daemon at Wed Oct 28 03:26:20 IST 2026
[2026-10-28 03:26:20,939.939 INFO    ] ================================================
[2026-10-28 03:26:21,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:26:21
[2026-10-28 03:26:22,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:26:22,593.593 INFO    ] Initializing speech engine...
[2026-10-28 03:26:22,601.601 INFO    ] 2026-10-28 03:26:22
[2026-10-28 03:26:22,870.870 INFO    ] 2026-10-28 03:26:22
[2026-10-28 03:26:22,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:26:23,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:26:23,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:26:23,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:26:23,420.420 INFO    ] time= 28/10/2026 03:26:23
[2026-10-28 03:26:23,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:26:23,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:26:23,604.604 INFO    ] No existing commands found in stream
[2026-10-28 03:26:28,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:26:28,637.637 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-28 03:26:31,990.990 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:26:31,994.994 INFO    ] Checking for system updates...
[2026-10-28 03:26:32,039.039 INFO    ] 200
[2026-10-28 03:26:32,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:26:32,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:26:32,107.107 INFO    ] No update needed
[2026-10-28 03:26:32,110.110 INFO    ] Checking for camera pi updates...
[2026-10-28 03:26:32,152.152 INFO    ] 200
[2026-10-28 03:26:32,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:26:32,204.204 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:26:32,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:26:32,301.301 INFO    ] No camera update needed
[2026-10-28 03:26:32,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:26:32,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:26:32,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:26:32,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:26:34,366.366 INFO    ] ================================================
[2026-10-28 03:26:34,381.381 INFO    ] Launching Daemon at Wed Oct 28 03:26:34 IST 2026
[2026-10-28 03:26:34,392.392 INFO    ] ================================================
[2026-10-28 03:26:34,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:26:34
[2026-10-28 03:26:35,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:26:35,871.871 INFO    ] Initializing speech engine...
[2026-10-28 03:26:35,880.880 INFO    ] 2026-10-28 03:26:35
[2026-10-28 03:26:36,156.156 INFO    ] 2026-10-28 03:26:36
[2026-10-28 03:26:36,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:26:36,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:26:36,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:26:36,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:26:36,722.722 INFO    ] time= 28/10/2026 03:26:36
[2026-10-28 03:26:36,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:26:36,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:26:36,897.897 INFO    ] No existing commands found in stream
[2026-10-28 03:26:41,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:26:41,932.932 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-28 03:26:43,757.757 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:26:43,760.760 INFO    ] Checking for system updates...
[2026-10-28 03:26:43,796.796 INFO    ] 200
[2026-10-28 03:26:43,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:26:43,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:26:43,854.854 INFO    ] No update needed
[2026-10-28 03:26:43,856.856 INFO    ] Checking for camera pi updates...
[2026-10-28 03:26:43,893.893 INFO    ] 200
[2026-10-28 03:26:43,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:26:43,941.941 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:26:44,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:26:44,018.018 INFO    ] No camera update needed
[2026-10-28 03:26:44,020.020 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:26:44,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:26:44,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:26:44,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:26:46,077.077 INFO    ] ================================================
[2026-10-28 03:26:46,092.092 INFO    ] Launching Daemon at Wed Oct 28 03:26:46 IST 2026
[2026-10-28 03:26:46,102.102 INFO    ] ================================================
[2026-10-28 03:26:46,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:26:46
[2026-10-28 03:26:47,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:26:47,538.538 INFO    ] Initializing speech engine...
[2026-10-28 03:26:47,546.546 INFO    ] 2026-10-28 03:26:47
[2026-10-28 03:26:47,803.803 INFO    ] 2026-10-28 03:26:47
[2026-10-28 03:26:47,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:26:48,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:26:48,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:26:48,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:26:48,345.345 INFO    ] time= 28/10/2026 03:26:48
[2026-10-28 03:26:48,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:26:48,369.369 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:26:48,484.484 INFO    ] No existing commands found in stream
[2026-10-28 03:26:53,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:26:53,509.509 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-28 03:26:55,865.865 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:26:55,867.867 INFO    ] Checking for system updates...
[2026-10-28 03:26:55,902.902 INFO    ] 200
[2026-10-28 03:26:55,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:26:55,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:26:55,966.966 INFO    ] No update needed
[2026-10-28 03:26:55,968.968 INFO    ] Checking for camera pi updates...
[2026-10-28 03:26:56,005.005 INFO    ] 200
[2026-10-28 03:26:56,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:26:56,052.052 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:26:56,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:26:56,233.233 INFO    ] No camera update needed
[2026-10-28 03:26:56,235.235 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:26:56,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:26:56,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:26:56,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:26:58,289.289 INFO    ] ================================================
[2026-10-28 03:26:58,303.303 INFO    ] Launching Daemon at Wed Oct 28 03:26:58 IST 2026
[2026-10-28 03:26:58,316.316 INFO    ] ================================================
[2026-10-28 03:26:58,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:26:58
[2026-10-28 03:26:59,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:26:59,735.735 INFO    ] Initializing speech engine...
[2026-10-28 03:26:59,751.751 INFO    ] 2026-10-28 03:26:59
[2026-10-28 03:27:00,032.032 INFO    ] 2026-10-28 03:27:00
[2026-10-28 03:27:00,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:27:00,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:27:00,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:27:00,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:27:00,585.585 INFO    ] time= 28/10/2026 03:27:00
[2026-10-28 03:27:00,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:27:00,673.673 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:27:00,806.806 INFO    ] No existing commands found in stream
[2026-10-28 03:27:05,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:27:05,831.831 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-28 03:27:07,891.891 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:27:07,894.894 INFO    ] Checking for system updates...
[2026-10-28 03:27:07,929.929 INFO    ] 200
[2026-10-28 03:27:07,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:27:07,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:27:07,992.992 INFO    ] No update needed
[2026-10-28 03:27:07,995.995 INFO    ] Checking for camera pi updates...
[2026-10-28 03:27:08,028.028 INFO    ] 200
[2026-10-28 03:27:08,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:27:08,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:27:08,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:27:08,151.151 INFO    ] No camera update needed
[2026-10-28 03:27:08,153.153 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:27:08,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:27:08,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:27:08,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:27:10,209.209 INFO    ] ================================================
[2026-10-28 03:27:10,224.224 INFO    ] Launching Daemon at Wed Oct 28 03:27:10 IST 2026
[2026-10-28 03:27:10,236.236 INFO    ] ================================================
[2026-10-28 03:27:10,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:27:10
[2026-10-28 03:27:11,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:27:11,871.871 INFO    ] Initializing speech engine...
[2026-10-28 03:27:11,879.879 INFO    ] 2026-10-28 03:27:11
[2026-10-28 03:27:12,169.169 INFO    ] 2026-10-28 03:27:12
[2026-10-28 03:27:12,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:27:12,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:27:12,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:27:12,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:27:12,718.718 INFO    ] time= 28/10/2026 03:27:12
[2026-10-28 03:27:12,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:27:12,757.757 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:27:12,868.868 INFO    ] No existing commands found in stream
[2026-10-28 03:27:17,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:27:17,902.902 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 03:27:22,108.108 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:27:22,111.111 INFO    ] Checking for system updates...
[2026-10-28 03:27:22,149.149 INFO    ] 200
[2026-10-28 03:27:22,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:27:22,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:27:22,219.219 INFO    ] No update needed
[2026-10-28 03:27:22,222.222 INFO    ] Checking for camera pi updates...
[2026-10-28 03:27:22,260.260 INFO    ] 200
[2026-10-28 03:27:22,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:27:22,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:27:22,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:27:22,387.387 INFO    ] No camera update needed
[2026-10-28 03:27:22,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:27:22,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:27:22,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:27:22,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:27:24,443.443 INFO    ] ================================================
[2026-10-28 03:27:24,459.459 INFO    ] Launching Daemon at Wed Oct 28 03:27:24 IST 2026
[2026-10-28 03:27:24,470.470 INFO    ] ================================================
[2026-10-28 03:27:25,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:27:25
[2026-10-28 03:27:25,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:27:25,926.926 INFO    ] Initializing speech engine...
[2026-10-28 03:27:25,946.946 INFO    ] 2026-10-28 03:27:25
[2026-10-28 03:27:26,217.217 INFO    ] 2026-10-28 03:27:26
[2026-10-28 03:27:26,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:27:26,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:27:26,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:27:26,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:27:26,727.727 INFO    ] time= 28/10/2026 03:27:26
[2026-10-28 03:27:26,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:27:26,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:27:26,913.913 INFO    ] No existing commands found in stream
[2026-10-28 03:27:31,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:27:31,928.928 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-28 03:27:35,037.037 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:27:35,040.040 INFO    ] Checking for system updates...
[2026-10-28 03:27:35,080.080 INFO    ] 200
[2026-10-28 03:27:35,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:27:35,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:27:35,145.145 INFO    ] No update needed
[2026-10-28 03:27:35,147.147 INFO    ] Checking for camera pi updates...
[2026-10-28 03:27:35,185.185 INFO    ] 200
[2026-10-28 03:27:35,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:27:35,228.228 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:27:35,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:27:35,314.314 INFO    ] No camera update needed
[2026-10-28 03:27:35,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:27:35,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:27:35,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:27:35,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:27:37,370.370 INFO    ] ================================================
[2026-10-28 03:27:37,386.386 INFO    ] Launching Daemon at Wed Oct 28 03:27:37 IST 2026
[2026-10-28 03:27:37,398.398 INFO    ] ================================================
[2026-10-28 03:27:37,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:27:37
[2026-10-28 03:27:38,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:27:38,849.849 INFO    ] Initializing speech engine...
[2026-10-28 03:27:38,858.858 INFO    ] 2026-10-28 03:27:38
[2026-10-28 03:27:39,108.108 INFO    ] 2026-10-28 03:27:39
[2026-10-28 03:27:39,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:27:39,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:27:39,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:27:39,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:27:39,668.668 INFO    ] time= 28/10/2026 03:27:39
[2026-10-28 03:27:39,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:27:39,714.714 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:27:39,836.836 INFO    ] No existing commands found in stream
[2026-10-28 03:27:44,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:27:44,859.859 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-28 03:27:49,252.252 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:27:49,255.255 INFO    ] Checking for system updates...
[2026-10-28 03:27:49,290.290 INFO    ] 200
[2026-10-28 03:27:49,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:27:49,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:27:49,349.349 INFO    ] No update needed
[2026-10-28 03:27:49,351.351 INFO    ] Checking for camera pi updates...
[2026-10-28 03:27:49,388.388 INFO    ] 200
[2026-10-28 03:27:49,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:27:49,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:27:49,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:27:49,499.499 INFO    ] No camera update needed
[2026-10-28 03:27:49,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:27:49,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:27:49,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:27:49,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:27:51,556.556 INFO    ] ================================================
[2026-10-28 03:27:51,572.572 INFO    ] Launching Daemon at Wed Oct 28 03:27:51 IST 2026
[2026-10-28 03:27:51,584.584 INFO    ] ================================================
[2026-10-28 03:27:52,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:27:52
[2026-10-28 03:27:52,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:27:52,998.998 INFO    ] Initializing speech engine...
[2026-10-28 03:27:53,008.008 INFO    ] 2026-10-28 03:27:53
[2026-10-28 03:27:53,266.266 INFO    ] 2026-10-28 03:27:53
[2026-10-28 03:27:53,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:27:53,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:27:53,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:27:53,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:27:53,808.808 INFO    ] time= 28/10/2026 03:27:53
[2026-10-28 03:27:53,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:27:53,848.848 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:27:53,960.960 INFO    ] No existing commands found in stream
[2026-10-28 03:27:58,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:27:58,979.979 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-28 03:28:01,910.910 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:28:01,914.914 INFO    ] Checking for system updates...
[2026-10-28 03:28:01,954.954 INFO    ] 200
[2026-10-28 03:28:01,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:28:02,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:28:02,026.026 INFO    ] No update needed
[2026-10-28 03:28:02,028.028 INFO    ] Checking for camera pi updates...
[2026-10-28 03:28:02,070.070 INFO    ] 200
[2026-10-28 03:28:02,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:28:02,127.127 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:28:02,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:28:02,386.386 INFO    ] No camera update needed
[2026-10-28 03:28:02,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:28:02,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:28:02,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:28:02,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:28:04,449.449 INFO    ] ================================================
[2026-10-28 03:28:04,465.465 INFO    ] Launching Daemon at Wed Oct 28 03:28:04 IST 2026
[2026-10-28 03:28:04,476.476 INFO    ] ================================================
[2026-10-28 03:28:05,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:28:05
[2026-10-28 03:28:05,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:28:05,895.895 INFO    ] Initializing speech engine...
[2026-10-28 03:28:05,904.904 INFO    ] 2026-10-28 03:28:05
[2026-10-28 03:28:06,158.158 INFO    ] 2026-10-28 03:28:06
[2026-10-28 03:28:06,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:28:06,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:28:06,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:28:06,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:28:06,698.698 INFO    ] time= 28/10/2026 03:28:06
[2026-10-28 03:28:06,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:28:06,722.722 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:28:06,874.874 INFO    ] No existing commands found in stream
[2026-10-28 03:28:11,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:28:11,908.908 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-28 03:28:13,428.428 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:28:13,430.430 INFO    ] Checking for system updates...
[2026-10-28 03:28:13,470.470 INFO    ] 200
[2026-10-28 03:28:13,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:28:13,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:28:13,534.534 INFO    ] No update needed
[2026-10-28 03:28:13,536.536 INFO    ] Checking for camera pi updates...
[2026-10-28 03:28:13,570.570 INFO    ] 200
[2026-10-28 03:28:13,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:28:13,613.613 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:28:13,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:28:13,694.694 INFO    ] No camera update needed
[2026-10-28 03:28:13,696.696 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:28:13,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:28:13,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:28:13,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:28:15,750.750 INFO    ] ================================================
[2026-10-28 03:28:15,766.766 INFO    ] Launching Daemon at Wed Oct 28 03:28:15 IST 2026
[2026-10-28 03:28:15,777.777 INFO    ] ================================================
[2026-10-28 03:28:16,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:28:16
[2026-10-28 03:28:17,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:28:17,394.394 INFO    ] Initializing speech engine...
[2026-10-28 03:28:17,402.402 INFO    ] 2026-10-28 03:28:17
[2026-10-28 03:28:17,679.679 INFO    ] 2026-10-28 03:28:17
[2026-10-28 03:28:17,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:28:18,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:28:18,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:28:18,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:28:18,408.408 INFO    ] time= 28/10/2026 03:28:18
[2026-10-28 03:28:18,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:28:18,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:28:18,670.670 INFO    ] No existing commands found in stream
[2026-10-28 03:28:23,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:28:23,684.684 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-28 03:28:27,633.633 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:28:27,636.636 INFO    ] Checking for system updates...
[2026-10-28 03:28:27,673.673 INFO    ] 200
[2026-10-28 03:28:27,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:28:27,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:28:27,737.737 INFO    ] No update needed
[2026-10-28 03:28:27,740.740 INFO    ] Checking for camera pi updates...
[2026-10-28 03:28:27,774.774 INFO    ] 200
[2026-10-28 03:28:27,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:28:27,818.818 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:28:27,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:28:27,900.900 INFO    ] No camera update needed
[2026-10-28 03:28:27,903.903 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:28:27,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:28:27,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:28:27,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:28:29,955.955 INFO    ] ================================================
[2026-10-28 03:28:29,970.970 INFO    ] Launching Daemon at Wed Oct 28 03:28:29 IST 2026
[2026-10-28 03:28:29,981.981 INFO    ] ================================================
[2026-10-28 03:28:30,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:28:30
[2026-10-28 03:28:31,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:28:31,412.412 INFO    ] Initializing speech engine...
[2026-10-28 03:28:31,418.418 INFO    ] 2026-10-28 03:28:31
[2026-10-28 03:28:31,715.715 INFO    ] 2026-10-28 03:28:31
[2026-10-28 03:28:31,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:28:32,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:28:32,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:28:32,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:28:32,306.306 INFO    ] time= 28/10/2026 03:28:32
[2026-10-28 03:28:32,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:28:32,332.332 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:28:32,472.472 INFO    ] No existing commands found in stream
[2026-10-28 03:28:37,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:28:37,504.504 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 03:28:38,068.068 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:28:38,071.071 INFO    ] Checking for system updates...
[2026-10-28 03:28:38,107.107 INFO    ] 200
[2026-10-28 03:28:38,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:28:38,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:28:38,165.165 INFO    ] No update needed
[2026-10-28 03:28:38,167.167 INFO    ] Checking for camera pi updates...
[2026-10-28 03:28:38,206.206 INFO    ] 200
[2026-10-28 03:28:38,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:28:38,254.254 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:28:38,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:28:38,332.332 INFO    ] No camera update needed
[2026-10-28 03:28:38,335.335 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:28:38,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:28:38,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:28:38,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:28:40,389.389 INFO    ] ================================================
[2026-10-28 03:28:40,405.405 INFO    ] Launching Daemon at Wed Oct 28 03:28:40 IST 2026
[2026-10-28 03:28:40,416.416 INFO    ] ================================================
[2026-10-28 03:28:40,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:28:40
[2026-10-28 03:28:41,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:28:41,830.830 INFO    ] Initializing speech engine...
[2026-10-28 03:28:41,839.839 INFO    ] 2026-10-28 03:28:41
[2026-10-28 03:28:42,085.085 INFO    ] 2026-10-28 03:28:42
[2026-10-28 03:28:42,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:28:42,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:28:42,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:28:42,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:28:42,638.638 INFO    ] time= 28/10/2026 03:28:42
[2026-10-28 03:28:42,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:28:42,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:28:42,786.786 INFO    ] No existing commands found in stream
[2026-10-28 03:28:47,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:28:47,806.806 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-28 03:28:51,487.487 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:28:51,489.489 INFO    ] Checking for system updates...
[2026-10-28 03:28:51,529.529 INFO    ] 200
[2026-10-28 03:28:51,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:28:51,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:28:51,598.598 INFO    ] No update needed
[2026-10-28 03:28:51,600.600 INFO    ] Checking for camera pi updates...
[2026-10-28 03:28:51,637.637 INFO    ] 200
[2026-10-28 03:28:51,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:28:51,685.685 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:28:51,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:28:51,763.763 INFO    ] No camera update needed
[2026-10-28 03:28:51,765.765 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:28:51,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:28:51,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:28:51,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:28:53,818.818 INFO    ] ================================================
[2026-10-28 03:28:53,834.834 INFO    ] Launching Daemon at Wed Oct 28 03:28:53 IST 2026
[2026-10-28 03:28:53,845.845 INFO    ] ================================================
[2026-10-28 03:28:54,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:28:54
[2026-10-28 03:28:54,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:28:55,247.247 INFO    ] Initializing speech engine...
[2026-10-28 03:28:55,265.265 INFO    ] 2026-10-28 03:28:55
[2026-10-28 03:28:55,511.511 INFO    ] 2026-10-28 03:28:55
[2026-10-28 03:28:55,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:28:55,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:28:55,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:28:56,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:28:56,062.062 INFO    ] time= 28/10/2026 03:28:56
[2026-10-28 03:28:56,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:28:56,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:28:56,213.213 INFO    ] No existing commands found in stream
[2026-10-28 03:29:01,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:29:01,231.231 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-28 03:29:03,068.068 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:29:03,071.071 INFO    ] Checking for system updates...
[2026-10-28 03:29:03,108.108 INFO    ] 200
[2026-10-28 03:29:03,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:29:03,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:29:03,183.183 INFO    ] No update needed
[2026-10-28 03:29:03,185.185 INFO    ] Checking for camera pi updates...
[2026-10-28 03:29:03,221.221 INFO    ] 200
[2026-10-28 03:29:03,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:29:03,279.279 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:29:03,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:29:03,382.382 INFO    ] No camera update needed
[2026-10-28 03:29:03,386.386 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:29:03,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:29:03,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:29:03,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:29:05,442.442 INFO    ] ================================================
[2026-10-28 03:29:05,458.458 INFO    ] Launching Daemon at Wed Oct 28 03:29:05 IST 2026
[2026-10-28 03:29:05,469.469 INFO    ] ================================================
[2026-10-28 03:29:06,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:29:06
[2026-10-28 03:29:06,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:29:06,892.892 INFO    ] Initializing speech engine...
[2026-10-28 03:29:06,901.901 INFO    ] 2026-10-28 03:29:06
[2026-10-28 03:29:07,146.146 INFO    ] 2026-10-28 03:29:07
[2026-10-28 03:29:07,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:29:07,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:29:07,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:29:07,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:29:07,697.697 INFO    ] time= 28/10/2026 03:29:07
[2026-10-28 03:29:07,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:29:07,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:29:07,851.851 INFO    ] No existing commands found in stream
[2026-10-28 03:29:12,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:29:12,866.866 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-28 03:29:15,736.736 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:29:15,738.738 INFO    ] Checking for system updates...
[2026-10-28 03:29:15,778.778 INFO    ] 200
[2026-10-28 03:29:15,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:29:15,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:29:15,843.843 INFO    ] No update needed
[2026-10-28 03:29:15,845.845 INFO    ] Checking for camera pi updates...
[2026-10-28 03:29:15,883.883 INFO    ] 200
[2026-10-28 03:29:15,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:29:15,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:29:16,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:29:16,028.028 INFO    ] No camera update needed
[2026-10-28 03:29:16,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:29:16,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:29:16,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:29:16,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:29:18,083.083 INFO    ] ================================================
[2026-10-28 03:29:18,099.099 INFO    ] Launching Daemon at Wed Oct 28 03:29:18 IST 2026
[2026-10-28 03:29:18,110.110 INFO    ] ================================================
[2026-10-28 03:29:18,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:29:18
[2026-10-28 03:29:19,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:29:19,530.530 INFO    ] Initializing speech engine...
[2026-10-28 03:29:19,539.539 INFO    ] 2026-10-28 03:29:19
[2026-10-28 03:29:19,783.783 INFO    ] 2026-10-28 03:29:19
[2026-10-28 03:29:19,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:29:20,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:29:20,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:29:20,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:29:20,309.309 INFO    ] time= 28/10/2026 03:29:20
[2026-10-28 03:29:20,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:29:20,375.375 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:29:20,506.506 INFO    ] No existing commands found in stream
[2026-10-28 03:29:25,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:29:25,539.539 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-28 03:29:28,431.431 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:29:28,434.434 INFO    ] Checking for system updates...
[2026-10-28 03:29:28,480.480 INFO    ] 200
[2026-10-28 03:29:28,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:29:28,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:29:28,553.553 INFO    ] No update needed
[2026-10-28 03:29:28,556.556 INFO    ] Checking for camera pi updates...
[2026-10-28 03:29:28,592.592 INFO    ] 200
[2026-10-28 03:29:28,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:29:28,635.635 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:29:28,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:29:28,740.740 INFO    ] No camera update needed
[2026-10-28 03:29:28,742.742 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:29:28,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:29:28,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:29:28,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:29:30,798.798 INFO    ] ================================================
[2026-10-28 03:29:30,814.814 INFO    ] Launching Daemon at Wed Oct 28 03:29:30 IST 2026
[2026-10-28 03:29:30,825.825 INFO    ] ================================================
[2026-10-28 03:29:31,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:29:31
[2026-10-28 03:29:32,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:29:32,377.377 INFO    ] Initializing speech engine...
[2026-10-28 03:29:32,394.394 INFO    ] 2026-10-28 03:29:32
[2026-10-28 03:29:32,697.697 INFO    ] 2026-10-28 03:29:32
[2026-10-28 03:29:32,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:29:32,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:29:32,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:29:33,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:29:33,259.259 INFO    ] time= 28/10/2026 03:29:33
[2026-10-28 03:29:33,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:29:33,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:29:33,492.492 INFO    ] No existing commands found in stream
[2026-10-28 03:29:38,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:29:38,512.512 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-28 03:29:39,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:29:39,369.369 INFO    ] Checking for system updates...
[2026-10-28 03:29:39,404.404 INFO    ] 200
[2026-10-28 03:29:39,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:29:39,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:29:39,468.468 INFO    ] No update needed
[2026-10-28 03:29:39,470.470 INFO    ] Checking for camera pi updates...
[2026-10-28 03:29:39,504.504 INFO    ] 200
[2026-10-28 03:29:39,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:29:39,547.547 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:29:39,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:29:39,634.634 INFO    ] No camera update needed
[2026-10-28 03:29:39,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:29:39,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:29:39,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:29:39,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:29:41,689.689 INFO    ] ================================================
[2026-10-28 03:29:41,709.709 INFO    ] Launching Daemon at Wed Oct 28 03:29:41 IST 2026
[2026-10-28 03:29:41,720.720 INFO    ] ================================================
[2026-10-28 03:29:42,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:29:42
[2026-10-28 03:29:42,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:29:43,127.127 INFO    ] Initializing speech engine...
[2026-10-28 03:29:43,134.134 INFO    ] 2026-10-28 03:29:43
[2026-10-28 03:29:43,417.417 INFO    ] 2026-10-28 03:29:43
[2026-10-28 03:29:43,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:29:43,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:29:43,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:29:43,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:29:43,976.976 INFO    ] time= 28/10/2026 03:29:43
[2026-10-28 03:29:43,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:29:44,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:29:44,195.195 INFO    ] No existing commands found in stream
[2026-10-28 03:29:49,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:29:49,224.224 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-28 03:29:51,589.589 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:29:51,592.592 INFO    ] Checking for system updates...
[2026-10-28 03:29:51,631.631 INFO    ] 200
[2026-10-28 03:29:51,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:29:51,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:29:51,696.696 INFO    ] No update needed
[2026-10-28 03:29:51,698.698 INFO    ] Checking for camera pi updates...
[2026-10-28 03:29:51,740.740 INFO    ] 200
[2026-10-28 03:29:51,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:29:51,788.788 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:29:51,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:29:51,845.845 INFO    ] No camera update needed
[2026-10-28 03:29:51,848.848 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:29:51,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:29:51,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:29:51,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:29:53,902.902 INFO    ] ================================================
[2026-10-28 03:29:53,917.917 INFO    ] Launching Daemon at Wed Oct 28 03:29:53 IST 2026
[2026-10-28 03:29:53,928.928 INFO    ] ================================================
[2026-10-28 03:29:54,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:29:54
[2026-10-28 03:29:55,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:29:55,382.382 INFO    ] Initializing speech engine...
[2026-10-28 03:29:55,387.387 INFO    ] 2026-10-28 03:29:55
[2026-10-28 03:29:55,632.632 INFO    ] 2026-10-28 03:29:55
[2026-10-28 03:29:55,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:29:55,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:29:55,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:29:56,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:29:56,190.190 INFO    ] time= 28/10/2026 03:29:56
[2026-10-28 03:29:56,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:29:56,235.235 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:29:56,355.355 INFO    ] No existing commands found in stream
[2026-10-28 03:30:01,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:30:01,387.387 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 03:30:02,457.457 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:30:02,460.460 INFO    ] Checking for system updates...
[2026-10-28 03:30:02,532.532 INFO    ] 200
[2026-10-28 03:30:02,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:30:02,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:30:02,779.779 INFO    ] No update needed
[2026-10-28 03:30:02,782.782 INFO    ] Checking for camera pi updates...
[2026-10-28 03:30:02,895.895 INFO    ] 200
[2026-10-28 03:30:02,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:30:02,996.996 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:30:03,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:30:03,396.396 INFO    ] No camera update needed
[2026-10-28 03:30:03,399.399 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:30:03,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:30:03,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:30:03,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:30:05,460.460 INFO    ] ================================================
[2026-10-28 03:30:05,475.475 INFO    ] Launching Daemon at Wed Oct 28 03:30:05 IST 2026
[2026-10-28 03:30:05,486.486 INFO    ] ================================================
[2026-10-28 03:30:06,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:30:06
[2026-10-28 03:30:06,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:30:06,907.907 INFO    ] Initializing speech engine...
[2026-10-28 03:30:06,917.917 INFO    ] 2026-10-28 03:30:06
[2026-10-28 03:30:07,177.177 INFO    ] 2026-10-28 03:30:07
[2026-10-28 03:30:07,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:30:07,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:30:07,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:30:07,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:30:07,719.719 INFO    ] time= 28/10/2026 03:30:07
[2026-10-28 03:30:07,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:30:07,746.746 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:30:07,870.870 INFO    ] No existing commands found in stream
[2026-10-28 03:30:12,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:30:12,887.887 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 03:30:16,372.372 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:30:16,375.375 INFO    ] Checking for system updates...
[2026-10-28 03:30:16,425.425 INFO    ] 200
[2026-10-28 03:30:16,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:30:16,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:30:16,483.483 INFO    ] No update needed
[2026-10-28 03:30:16,486.486 INFO    ] Checking for camera pi updates...
[2026-10-28 03:30:16,522.522 INFO    ] 200
[2026-10-28 03:30:16,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:30:16,568.568 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:30:16,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:30:16,621.621 INFO    ] No camera update needed
[2026-10-28 03:30:16,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:30:16,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:30:16,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:30:16,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:30:18,676.676 INFO    ] ================================================
[2026-10-28 03:30:18,692.692 INFO    ] Launching Daemon at Wed Oct 28 03:30:18 IST 2026
[2026-10-28 03:30:18,703.703 INFO    ] ================================================
[2026-10-28 03:30:19,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:30:19
[2026-10-28 03:30:19,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:30:20,292.292 INFO    ] Initializing speech engine...
[2026-10-28 03:30:20,304.304 INFO    ] 2026-10-28 03:30:20
[2026-10-28 03:30:20,608.608 INFO    ] 2026-10-28 03:30:20
[2026-10-28 03:30:20,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:30:20,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:30:20,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:30:21,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:30:21,128.128 INFO    ] time= 28/10/2026 03:30:21
[2026-10-28 03:30:21,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:30:21,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:30:21,279.279 INFO    ] No existing commands found in stream
[2026-10-28 03:30:26,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:30:26,312.312 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-28 03:30:29,052.052 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:30:29,055.055 INFO    ] Checking for system updates...
[2026-10-28 03:30:29,095.095 INFO    ] 200
[2026-10-28 03:30:29,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:30:29,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:30:29,159.159 INFO    ] No update needed
[2026-10-28 03:30:29,162.162 INFO    ] Checking for camera pi updates...
[2026-10-28 03:30:29,199.199 INFO    ] 200
[2026-10-28 03:30:29,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:30:29,251.251 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:30:29,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:30:29,337.337 INFO    ] No camera update needed
[2026-10-28 03:30:29,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:30:29,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:30:29,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:30:29,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:30:31,395.395 INFO    ] ================================================
[2026-10-28 03:30:31,410.410 INFO    ] Launching Daemon at Wed Oct 28 03:30:31 IST 2026
[2026-10-28 03:30:31,421.421 INFO    ] ================================================
[2026-10-28 03:30:32,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:30:32
[2026-10-28 03:30:32,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:30:32,946.946 INFO    ] Initializing speech engine...
[2026-10-28 03:30:32,959.959 INFO    ] 2026-10-28 03:30:32
[2026-10-28 03:30:33,242.242 INFO    ] 2026-10-28 03:30:33
[2026-10-28 03:30:33,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:30:33,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:30:33,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:30:33,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:30:33,734.734 INFO    ] time= 28/10/2026 03:30:33
[2026-10-28 03:30:33,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:30:33,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:30:33,937.937 INFO    ] No existing commands found in stream
[2026-10-28 03:30:38,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:30:38,966.966 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-28 03:30:41,910.910 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:30:41,912.912 INFO    ] Checking for system updates...
[2026-10-28 03:30:41,951.951 INFO    ] 200
[2026-10-28 03:30:41,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:30:42,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:30:42,009.009 INFO    ] No update needed
[2026-10-28 03:30:42,012.012 INFO    ] Checking for camera pi updates...
[2026-10-28 03:30:42,045.045 INFO    ] 200
[2026-10-28 03:30:42,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:30:42,088.088 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:30:42,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:30:42,166.166 INFO    ] No camera update needed
[2026-10-28 03:30:42,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:30:42,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:30:42,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:30:42,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:30:44,222.222 INFO    ] ================================================
[2026-10-28 03:30:44,237.237 INFO    ] Launching Daemon at Wed Oct 28 03:30:44 IST 2026
[2026-10-28 03:30:44,248.248 INFO    ] ================================================
[2026-10-28 03:30:44,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:30:44
[2026-10-28 03:30:45,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:30:45,709.709 INFO    ] Initializing speech engine...
[2026-10-28 03:30:45,717.717 INFO    ] 2026-10-28 03:30:45
[2026-10-28 03:30:46,014.014 INFO    ] 2026-10-28 03:30:45
[2026-10-28 03:30:46,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:30:46,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:30:46,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:30:46,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:30:46,527.527 INFO    ] time= 28/10/2026 03:30:46
[2026-10-28 03:30:46,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:30:46,636.636 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:30:46,740.740 INFO    ] No existing commands found in stream
[2026-10-28 03:30:51,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:30:51,755.755 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 03:30:53,428.428 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:30:53,431.431 INFO    ] Checking for system updates...
[2026-10-28 03:30:53,468.468 INFO    ] 200
[2026-10-28 03:30:53,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:30:53,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:30:53,526.526 INFO    ] No update needed
[2026-10-28 03:30:53,528.528 INFO    ] Checking for camera pi updates...
[2026-10-28 03:30:53,562.562 INFO    ] 200
[2026-10-28 03:30:53,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:30:53,610.610 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:30:53,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:30:53,705.705 INFO    ] No camera update needed
[2026-10-28 03:30:53,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:30:53,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:30:53,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:30:53,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:30:55,761.761 INFO    ] ================================================
[2026-10-28 03:30:55,776.776 INFO    ] Launching Daemon at Wed Oct 28 03:30:55 IST 2026
[2026-10-28 03:30:55,786.786 INFO    ] ================================================
[2026-10-28 03:30:56,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:30:56
[2026-10-28 03:30:57,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:30:57,420.420 INFO    ] Initializing speech engine...
[2026-10-28 03:30:57,428.428 INFO    ] 2026-10-28 03:30:57
[2026-10-28 03:30:57,708.708 INFO    ] 2026-10-28 03:30:57
[2026-10-28 03:30:57,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:30:58,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:30:58,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:30:58,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:30:58,259.259 INFO    ] time= 28/10/2026 03:30:58
[2026-10-28 03:30:58,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:30:58,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:30:58,429.429 INFO    ] No existing commands found in stream
[2026-10-28 03:31:03,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:31:03,465.465 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-28 03:31:04,972.972 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:31:04,975.975 INFO    ] Checking for system updates...
[2026-10-28 03:31:05,012.012 INFO    ] 200
[2026-10-28 03:31:05,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:31:05,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:31:05,077.077 INFO    ] No update needed
[2026-10-28 03:31:05,080.080 INFO    ] Checking for camera pi updates...
[2026-10-28 03:31:05,115.115 INFO    ] 200
[2026-10-28 03:31:05,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:31:05,160.160 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:31:05,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:31:05,345.345 INFO    ] No camera update needed
[2026-10-28 03:31:05,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:31:05,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:31:05,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:31:05,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:31:07,402.402 INFO    ] ================================================
[2026-10-28 03:31:07,417.417 INFO    ] Launching Daemon at Wed Oct 28 03:31:07 IST 2026
[2026-10-28 03:31:07,428.428 INFO    ] ================================================
[2026-10-28 03:31:08,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:31:08
[2026-10-28 03:31:08,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:31:09,019.019 INFO    ] Initializing speech engine...
[2026-10-28 03:31:09,031.031 INFO    ] 2026-10-28 03:31:09
[2026-10-28 03:31:09,303.303 INFO    ] 2026-10-28 03:31:09
[2026-10-28 03:31:09,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:31:09,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:31:09,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:31:09,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:31:09,853.853 INFO    ] time= 28/10/2026 03:31:09
[2026-10-28 03:31:09,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:31:09,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:31:10,037.037 INFO    ] No existing commands found in stream
[2026-10-28 03:31:15,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:31:15,071.071 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-28 03:31:17,416.416 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:31:17,419.419 INFO    ] Checking for system updates...
[2026-10-28 03:31:17,456.456 INFO    ] 200
[2026-10-28 03:31:17,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:31:17,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:31:17,515.515 INFO    ] No update needed
[2026-10-28 03:31:17,518.518 INFO    ] Checking for camera pi updates...
[2026-10-28 03:31:17,552.552 INFO    ] 200
[2026-10-28 03:31:17,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:31:17,596.596 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:31:17,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:31:17,676.676 INFO    ] No camera update needed
[2026-10-28 03:31:17,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:31:17,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:31:17,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:31:17,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:31:19,734.734 INFO    ] ================================================
[2026-10-28 03:31:19,749.749 INFO    ] Launching Daemon at Wed Oct 28 03:31:19 IST 2026
[2026-10-28 03:31:19,760.760 INFO    ] ================================================
[2026-10-28 03:31:20,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:31:20
[2026-10-28 03:31:20,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:31:21,176.176 INFO    ] Initializing speech engine...
[2026-10-28 03:31:21,186.186 INFO    ] 2026-10-28 03:31:21
[2026-10-28 03:31:21,432.432 INFO    ] 2026-10-28 03:31:21
[2026-10-28 03:31:21,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:31:21,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:31:21,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:31:21,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:31:21,991.991 INFO    ] time= 28/10/2026 03:31:21
[2026-10-28 03:31:22,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:31:22,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:31:22,143.143 INFO    ] No existing commands found in stream
[2026-10-28 03:31:27,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:31:27,167.167 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-28 03:31:30,092.092 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:31:30,094.094 INFO    ] Checking for system updates...
[2026-10-28 03:31:30,130.130 INFO    ] 200
[2026-10-28 03:31:30,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:31:30,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:31:30,188.188 INFO    ] No update needed
[2026-10-28 03:31:30,190.190 INFO    ] Checking for camera pi updates...
[2026-10-28 03:31:30,227.227 INFO    ] 200
[2026-10-28 03:31:30,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:31:30,274.274 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:31:30,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:31:30,353.353 INFO    ] No camera update needed
[2026-10-28 03:31:30,355.355 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:31:30,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:31:30,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:31:30,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:31:32,411.411 INFO    ] ================================================
[2026-10-28 03:31:32,428.428 INFO    ] Launching Daemon at Wed Oct 28 03:31:32 IST 2026
[2026-10-28 03:31:32,440.440 INFO    ] ================================================
[2026-10-28 03:31:33,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:31:33
[2026-10-28 03:31:33,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:31:34,045.045 INFO    ] Initializing speech engine...
[2026-10-28 03:31:34,059.059 INFO    ] 2026-10-28 03:31:34
[2026-10-28 03:31:34,335.335 INFO    ] 2026-10-28 03:31:34
[2026-10-28 03:31:34,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:31:34,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:31:34,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:31:35,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:31:35,136.136 INFO    ] time= 28/10/2026 03:31:35
[2026-10-28 03:31:35,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:31:35,262.262 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:31:35,429.429 INFO    ] No existing commands found in stream
[2026-10-28 03:31:40,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:31:40,453.453 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-28 03:31:41,334.334 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:31:41,337.337 INFO    ] Checking for system updates...
[2026-10-28 03:31:41,372.372 INFO    ] 200
[2026-10-28 03:31:41,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:31:41,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:31:41,430.430 INFO    ] No update needed
[2026-10-28 03:31:41,432.432 INFO    ] Checking for camera pi updates...
[2026-10-28 03:31:41,466.466 INFO    ] 200
[2026-10-28 03:31:41,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:31:41,513.513 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:31:41,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:31:41,608.608 INFO    ] No camera update needed
[2026-10-28 03:31:41,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:31:41,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:31:41,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:31:41,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:31:43,662.662 INFO    ] ================================================
[2026-10-28 03:31:43,678.678 INFO    ] Launching Daemon at Wed Oct 28 03:31:43 IST 2026
[2026-10-28 03:31:43,689.689 INFO    ] ================================================
[2026-10-28 03:31:44,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:31:44
[2026-10-28 03:31:44,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:31:45,104.104 INFO    ] Initializing speech engine...
[2026-10-28 03:31:45,113.113 INFO    ] 2026-10-28 03:31:45
[2026-10-28 03:31:45,407.407 INFO    ] 2026-10-28 03:31:45
[2026-10-28 03:31:45,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:31:45,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:31:45,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:31:45,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:31:45,910.910 INFO    ] time= 28/10/2026 03:31:45
[2026-10-28 03:31:45,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:31:46,029.029 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:31:46,140.140 INFO    ] No existing commands found in stream
[2026-10-28 03:31:51,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:31:51,176.176 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-28 03:31:52,330.330 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:31:52,333.333 INFO    ] Checking for system updates...
[2026-10-28 03:31:52,368.368 INFO    ] 200
[2026-10-28 03:31:52,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:31:52,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:31:52,426.426 INFO    ] No update needed
[2026-10-28 03:31:52,428.428 INFO    ] Checking for camera pi updates...
[2026-10-28 03:31:52,461.461 INFO    ] 200
[2026-10-28 03:31:52,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:31:52,505.505 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:31:52,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:31:52,585.585 INFO    ] No camera update needed
[2026-10-28 03:31:52,588.588 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:31:52,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:31:52,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:31:52,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:31:54,640.640 INFO    ] ================================================
[2026-10-28 03:31:54,656.656 INFO    ] Launching Daemon at Wed Oct 28 03:31:54 IST 2026
[2026-10-28 03:31:54,667.667 INFO    ] ================================================
[2026-10-28 03:31:55,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:31:55
[2026-10-28 03:31:55,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:31:56,245.245 INFO    ] Initializing speech engine...
[2026-10-28 03:31:56,255.255 INFO    ] 2026-10-28 03:31:56
[2026-10-28 03:31:56,541.541 INFO    ] 2026-10-28 03:31:56
[2026-10-28 03:31:56,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:31:56,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:31:56,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:31:57,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:31:57,089.089 INFO    ] time= 28/10/2026 03:31:57
[2026-10-28 03:31:57,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:31:57,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:31:57,257.257 INFO    ] No existing commands found in stream
[2026-10-28 03:32:02,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:32:02,293.293 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-28 03:32:04,358.358 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:32:04,361.361 INFO    ] Checking for system updates...
[2026-10-28 03:32:04,400.400 INFO    ] 200
[2026-10-28 03:32:04,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:32:04,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:32:04,459.459 INFO    ] No update needed
[2026-10-28 03:32:04,461.461 INFO    ] Checking for camera pi updates...
[2026-10-28 03:32:04,495.495 INFO    ] 200
[2026-10-28 03:32:04,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:32:04,538.538 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:32:04,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:32:04,632.632 INFO    ] No camera update needed
[2026-10-28 03:32:04,634.634 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:32:04,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:32:04,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:32:04,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:32:06,686.686 INFO    ] ================================================
[2026-10-28 03:32:06,701.701 INFO    ] Launching Daemon at Wed Oct 28 03:32:06 IST 2026
[2026-10-28 03:32:06,712.712 INFO    ] ================================================
[2026-10-28 03:32:07,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:32:07
[2026-10-28 03:32:07,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:32:08,119.119 INFO    ] Initializing speech engine...
[2026-10-28 03:32:08,143.143 INFO    ] 2026-10-28 03:32:08
[2026-10-28 03:32:08,406.406 INFO    ] 2026-10-28 03:32:08
[2026-10-28 03:32:08,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:32:08,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:32:08,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:32:08,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:32:08,952.952 INFO    ] time= 28/10/2026 03:32:08
[2026-10-28 03:32:09,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:32:09,022.022 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:32:09,163.163 INFO    ] No existing commands found in stream
[2026-10-28 03:32:14,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:32:14,191.191 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-28 03:32:17,750.750 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:32:17,753.753 INFO    ] Checking for system updates...
[2026-10-28 03:32:17,791.791 INFO    ] 200
[2026-10-28 03:32:17,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:32:17,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:32:17,848.848 INFO    ] No update needed
[2026-10-28 03:32:17,850.850 INFO    ] Checking for camera pi updates...
[2026-10-28 03:32:17,884.884 INFO    ] 200
[2026-10-28 03:32:17,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:32:17,927.927 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:32:18,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:32:18,007.007 INFO    ] No camera update needed
[2026-10-28 03:32:18,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:32:18,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:32:18,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:32:18,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:32:20,063.063 INFO    ] ================================================
[2026-10-28 03:32:20,078.078 INFO    ] Launching Daemon at Wed Oct 28 03:32:20 IST 2026
[2026-10-28 03:32:20,088.088 INFO    ] ================================================
[2026-10-28 03:32:20,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:32:20
[2026-10-28 03:32:21,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:32:21,558.558 INFO    ] Initializing speech engine...
[2026-10-28 03:32:21,565.565 INFO    ] 2026-10-28 03:32:21
[2026-10-28 03:32:21,833.833 INFO    ] 2026-10-28 03:32:21
[2026-10-28 03:32:21,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:32:22,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:32:22,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:32:22,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:32:22,418.418 INFO    ] time= 28/10/2026 03:32:22
[2026-10-28 03:32:22,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:32:22,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:32:22,611.611 INFO    ] No existing commands found in stream
[2026-10-28 03:32:27,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:32:27,628.628 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-28 03:32:30,403.403 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:32:30,406.406 INFO    ] Checking for system updates...
[2026-10-28 03:32:30,441.441 INFO    ] 200
[2026-10-28 03:32:30,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:32:30,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:32:30,499.499 INFO    ] No update needed
[2026-10-28 03:32:30,501.501 INFO    ] Checking for camera pi updates...
[2026-10-28 03:32:30,535.535 INFO    ] 200
[2026-10-28 03:32:30,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:32:30,586.586 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:32:30,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:32:30,662.662 INFO    ] No camera update needed
[2026-10-28 03:32:30,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:32:30,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:32:30,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:32:30,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:32:32,722.722 INFO    ] ================================================
[2026-10-28 03:32:32,738.738 INFO    ] Launching Daemon at Wed Oct 28 03:32:32 IST 2026
[2026-10-28 03:32:32,750.750 INFO    ] ================================================
[2026-10-28 03:32:33,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:32:33
[2026-10-28 03:32:33,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:32:34,207.207 INFO    ] Initializing speech engine...
[2026-10-28 03:32:34,216.216 INFO    ] 2026-10-28 03:32:34
[2026-10-28 03:32:34,458.458 INFO    ] 2026-10-28 03:32:34
[2026-10-28 03:32:34,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:32:34,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:32:34,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:32:35,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:32:35,017.017 INFO    ] time= 28/10/2026 03:32:35
[2026-10-28 03:32:35,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:32:35,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:32:35,194.194 INFO    ] No existing commands found in stream
[2026-10-28 03:32:40,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:32:40,227.227 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-28 03:32:41,216.216 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:32:41,219.219 INFO    ] Checking for system updates...
[2026-10-28 03:32:41,257.257 INFO    ] 200
[2026-10-28 03:32:41,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:32:41,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:32:41,313.313 INFO    ] No update needed
[2026-10-28 03:32:41,316.316 INFO    ] Checking for camera pi updates...
[2026-10-28 03:32:41,356.356 INFO    ] 200
[2026-10-28 03:32:41,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:32:41,398.398 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:32:41,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:32:41,479.479 INFO    ] No camera update needed
[2026-10-28 03:32:41,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:32:41,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:32:41,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:32:41,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:32:43,535.535 INFO    ] ================================================
[2026-10-28 03:32:43,550.550 INFO    ] Launching Daemon at Wed Oct 28 03:32:43 IST 2026
[2026-10-28 03:32:43,561.561 INFO    ] ================================================
[2026-10-28 03:32:44,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:32:44
[2026-10-28 03:32:44,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:32:44,968.968 INFO    ] Initializing speech engine...
[2026-10-28 03:32:44,993.993 INFO    ] 2026-10-28 03:32:44
[2026-10-28 03:32:45,260.260 INFO    ] 2026-10-28 03:32:45
[2026-10-28 03:32:45,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:32:45,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:32:45,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:32:45,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:32:45,849.849 INFO    ] time= 28/10/2026 03:32:45
[2026-10-28 03:32:45,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:32:45,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:32:46,000.000 INFO    ] No existing commands found in stream
[2026-10-28 03:32:51,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:32:51,033.033 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 03:32:51,722.722 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:32:51,725.725 INFO    ] Checking for system updates...
[2026-10-28 03:32:51,764.764 INFO    ] 200
[2026-10-28 03:32:51,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:32:51,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:32:51,828.828 INFO    ] No update needed
[2026-10-28 03:32:51,831.831 INFO    ] Checking for camera pi updates...
[2026-10-28 03:32:51,866.866 INFO    ] 200
[2026-10-28 03:32:51,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:32:51,909.909 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:32:51,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:32:51,985.985 INFO    ] No camera update needed
[2026-10-28 03:32:51,988.988 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:32:51,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:32:51,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:32:52,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:32:54,042.042 INFO    ] ================================================
[2026-10-28 03:32:54,058.058 INFO    ] Launching Daemon at Wed Oct 28 03:32:54 IST 2026
[2026-10-28 03:32:54,068.068 INFO    ] ================================================
[2026-10-28 03:32:54,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:32:54
[2026-10-28 03:32:55,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:32:55,469.469 INFO    ] Initializing speech engine...
[2026-10-28 03:32:55,476.476 INFO    ] 2026-10-28 03:32:55
[2026-10-28 03:32:55,762.762 INFO    ] 2026-10-28 03:32:55
[2026-10-28 03:32:55,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:32:56,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:32:56,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:32:56,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:32:56,358.358 INFO    ] time= 28/10/2026 03:32:56
[2026-10-28 03:32:56,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:32:56,386.386 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:32:56,534.534 INFO    ] No existing commands found in stream
[2026-10-28 03:33:01,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:33:01,558.558 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-28 03:33:02,313.313 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:33:02,316.316 INFO    ] Checking for system updates...
[2026-10-28 03:33:02,368.368 INFO    ] 200
[2026-10-28 03:33:02,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:33:02,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:33:02,446.446 INFO    ] No update needed
[2026-10-28 03:33:02,450.450 INFO    ] Checking for camera pi updates...
[2026-10-28 03:33:02,499.499 INFO    ] 200
[2026-10-28 03:33:02,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:33:02,551.551 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:33:02,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:33:02,655.655 INFO    ] No camera update needed
[2026-10-28 03:33:02,658.658 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:33:02,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:33:02,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:33:02,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:33:04,719.719 INFO    ] ================================================
[2026-10-28 03:33:04,734.734 INFO    ] Launching Daemon at Wed Oct 28 03:33:04 IST 2026
[2026-10-28 03:33:04,745.745 INFO    ] ================================================
[2026-10-28 03:33:05,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:33:05
[2026-10-28 03:33:05,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:33:06,236.236 INFO    ] Initializing speech engine...
[2026-10-28 03:33:06,244.244 INFO    ] 2026-10-28 03:33:06
[2026-10-28 03:33:06,517.517 INFO    ] 2026-10-28 03:33:06
[2026-10-28 03:33:06,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:33:06,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:33:06,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:33:07,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:33:07,089.089 INFO    ] time= 28/10/2026 03:33:07
[2026-10-28 03:33:07,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:33:07,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:33:07,223.223 INFO    ] No existing commands found in stream
[2026-10-28 03:33:12,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:33:12,255.255 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-28 03:33:13,713.713 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:33:13,715.715 INFO    ] Checking for system updates...
[2026-10-28 03:33:13,750.750 INFO    ] 200
[2026-10-28 03:33:13,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:33:13,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:33:13,808.808 INFO    ] No update needed
[2026-10-28 03:33:13,810.810 INFO    ] Checking for camera pi updates...
[2026-10-28 03:33:13,847.847 INFO    ] 200
[2026-10-28 03:33:13,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:33:13,891.891 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:33:14,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:33:14,081.081 INFO    ] No camera update needed
[2026-10-28 03:33:14,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:33:14,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:33:14,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:33:14,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:33:16,138.138 INFO    ] ================================================
[2026-10-28 03:33:16,154.154 INFO    ] Launching Daemon at Wed Oct 28 03:33:16 IST 2026
[2026-10-28 03:33:16,165.165 INFO    ] ================================================
[2026-10-28 03:33:16,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:33:16
[2026-10-28 03:33:17,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:33:17,625.625 INFO    ] Initializing speech engine...
[2026-10-28 03:33:17,635.635 INFO    ] 2026-10-28 03:33:17
[2026-10-28 03:33:17,895.895 INFO    ] 2026-10-28 03:33:17
[2026-10-28 03:33:17,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:33:18,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:33:18,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:33:18,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:33:18,457.457 INFO    ] time= 28/10/2026 03:33:18
[2026-10-28 03:33:18,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:33:18,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:33:18,634.634 INFO    ] No existing commands found in stream
[2026-10-28 03:33:23,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:33:23,662.662 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 03:33:24,778.778 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:33:24,780.780 INFO    ] Checking for system updates...
[2026-10-28 03:33:24,816.816 INFO    ] 200
[2026-10-28 03:33:24,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:33:24,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:33:24,875.875 INFO    ] No update needed
[2026-10-28 03:33:24,878.878 INFO    ] Checking for camera pi updates...
[2026-10-28 03:33:24,917.917 INFO    ] 200
[2026-10-28 03:33:24,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:33:24,965.965 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:33:25,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:33:25,073.073 INFO    ] No camera update needed
[2026-10-28 03:33:25,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:33:25,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:33:25,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:33:25,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:33:27,133.133 INFO    ] ================================================
[2026-10-28 03:33:27,148.148 INFO    ] Launching Daemon at Wed Oct 28 03:33:27 IST 2026
[2026-10-28 03:33:27,160.160 INFO    ] ================================================
[2026-10-28 03:33:27,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:33:27
[2026-10-28 03:33:28,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:33:28,627.627 INFO    ] Initializing speech engine...
[2026-10-28 03:33:28,644.644 INFO    ] 2026-10-28 03:33:28
[2026-10-28 03:33:28,933.933 INFO    ] 2026-10-28 03:33:28
[2026-10-28 03:33:28,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:33:29,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:33:29,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:33:29,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:33:29,363.363 INFO    ] time= 28/10/2026 03:33:29
[2026-10-28 03:33:29,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:33:29,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:33:29,530.530 INFO    ] No existing commands found in stream
[2026-10-28 03:33:34,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:33:34,553.553 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-28 03:33:37,605.605 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:33:37,608.608 INFO    ] Checking for system updates...
[2026-10-28 03:33:37,643.643 INFO    ] 200
[2026-10-28 03:33:37,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:33:37,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:33:37,701.701 INFO    ] No update needed
[2026-10-28 03:33:37,704.704 INFO    ] Checking for camera pi updates...
[2026-10-28 03:33:37,738.738 INFO    ] 200
[2026-10-28 03:33:37,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:33:37,786.786 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:33:37,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:33:37,870.870 INFO    ] No camera update needed
[2026-10-28 03:33:37,873.873 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:33:37,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:33:37,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:33:37,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:33:39,929.929 INFO    ] ================================================
[2026-10-28 03:33:39,946.946 INFO    ] Launching Daemon at Wed Oct 28 03:33:39 IST 2026
[2026-10-28 03:33:39,957.957 INFO    ] ================================================
[2026-10-28 03:33:40,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:33:40
[2026-10-28 03:33:41,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:33:41,486.486 INFO    ] Initializing speech engine...
[2026-10-28 03:33:41,497.497 INFO    ] 2026-10-28 03:33:41
[2026-10-28 03:33:41,759.759 INFO    ] 2026-10-28 03:33:41
[2026-10-28 03:33:41,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:33:42,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:33:42,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:33:42,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:33:42,316.316 INFO    ] time= 28/10/2026 03:33:42
[2026-10-28 03:33:42,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:33:42,354.354 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:33:42,497.497 INFO    ] No existing commands found in stream
[2026-10-28 03:33:47,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:33:47,528.528 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-28 03:33:50,098.098 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:33:50,101.101 INFO    ] Checking for system updates...
[2026-10-28 03:33:50,141.141 INFO    ] 200
[2026-10-28 03:33:50,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:33:50,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:33:50,206.206 INFO    ] No update needed
[2026-10-28 03:33:50,209.209 INFO    ] Checking for camera pi updates...
[2026-10-28 03:33:50,243.243 INFO    ] 200
[2026-10-28 03:33:50,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:33:50,286.286 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:33:50,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:33:50,400.400 INFO    ] No camera update needed
[2026-10-28 03:33:50,402.402 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:33:50,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:33:50,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:33:50,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:33:52,456.456 INFO    ] ================================================
[2026-10-28 03:33:52,477.477 INFO    ] Launching Daemon at Wed Oct 28 03:33:52 IST 2026
[2026-10-28 03:33:52,500.500 INFO    ] ================================================
[2026-10-28 03:33:53,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:33:53
[2026-10-28 03:33:53,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:33:53,929.929 INFO    ] Initializing speech engine...
[2026-10-28 03:33:53,937.937 INFO    ] 2026-10-28 03:33:53
[2026-10-28 03:33:54,194.194 INFO    ] 2026-10-28 03:33:54
[2026-10-28 03:33:54,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:33:54,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:33:54,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:33:54,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:33:54,739.739 INFO    ] time= 28/10/2026 03:33:54
[2026-10-28 03:33:54,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:33:54,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:33:54,907.907 INFO    ] No existing commands found in stream
[2026-10-28 03:33:59,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:33:59,934.934 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-28 03:34:03,373.373 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:34:03,376.376 INFO    ] Checking for system updates...
[2026-10-28 03:34:03,419.419 INFO    ] 200
[2026-10-28 03:34:03,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:34:03,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:34:03,484.484 INFO    ] No update needed
[2026-10-28 03:34:03,486.486 INFO    ] Checking for camera pi updates...
[2026-10-28 03:34:03,525.525 INFO    ] 200
[2026-10-28 03:34:03,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:34:03,581.581 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:34:03,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:34:03,678.678 INFO    ] No camera update needed
[2026-10-28 03:34:03,681.681 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:34:03,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:34:03,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:34:03,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:34:05,738.738 INFO    ] ================================================
[2026-10-28 03:34:05,754.754 INFO    ] Launching Daemon at Wed Oct 28 03:34:05 IST 2026
[2026-10-28 03:34:05,764.764 INFO    ] ================================================
[2026-10-28 03:34:06,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:34:06
[2026-10-28 03:34:06,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:34:07,183.183 INFO    ] Initializing speech engine...
[2026-10-28 03:34:07,193.193 INFO    ] 2026-10-28 03:34:07
[2026-10-28 03:34:07,438.438 INFO    ] 2026-10-28 03:34:07
[2026-10-28 03:34:07,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:34:07,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:34:07,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:34:07,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:34:07,997.997 INFO    ] time= 28/10/2026 03:34:07
[2026-10-28 03:34:08,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:34:08,043.043 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:34:08,163.163 INFO    ] No existing commands found in stream
[2026-10-28 03:34:13,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:34:13,191.191 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-28 03:34:15,392.392 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:34:15,395.395 INFO    ] Checking for system updates...
[2026-10-28 03:34:15,435.435 INFO    ] 200
[2026-10-28 03:34:15,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:34:15,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:34:15,492.492 INFO    ] No update needed
[2026-10-28 03:34:15,495.495 INFO    ] Checking for camera pi updates...
[2026-10-28 03:34:15,534.534 INFO    ] 200
[2026-10-28 03:34:15,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:34:15,582.582 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:34:15,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:34:15,657.657 INFO    ] No camera update needed
[2026-10-28 03:34:15,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:34:15,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:34:15,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:34:15,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:34:17,711.711 INFO    ] ================================================
[2026-10-28 03:34:17,726.726 INFO    ] Launching Daemon at Wed Oct 28 03:34:17 IST 2026
[2026-10-28 03:34:17,738.738 INFO    ] ================================================
[2026-10-28 03:34:18,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:34:18
[2026-10-28 03:34:18,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:34:19,132.132 INFO    ] Initializing speech engine...
[2026-10-28 03:34:19,145.145 INFO    ] 2026-10-28 03:34:19
[2026-10-28 03:34:19,407.407 INFO    ] 2026-10-28 03:34:19
[2026-10-28 03:34:19,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:34:19,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:34:19,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:34:19,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:34:19,961.961 INFO    ] time= 28/10/2026 03:34:19
[2026-10-28 03:34:19,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:34:20,007.007 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:34:20,108.108 INFO    ] No existing commands found in stream
[2026-10-28 03:34:25,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:34:25,126.126 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-28 03:34:28,516.516 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:34:28,519.519 INFO    ] Checking for system updates...
[2026-10-28 03:34:28,557.557 INFO    ] 200
[2026-10-28 03:34:28,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:34:28,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:34:28,618.618 INFO    ] No update needed
[2026-10-28 03:34:28,624.624 INFO    ] Checking for camera pi updates...
[2026-10-28 03:34:28,666.666 INFO    ] 200
[2026-10-28 03:34:28,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:34:28,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:34:28,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:34:28,807.807 INFO    ] No camera update needed
[2026-10-28 03:34:28,809.809 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:34:28,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:34:28,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:34:28,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:34:30,864.864 INFO    ] ================================================
[2026-10-28 03:34:30,879.879 INFO    ] Launching Daemon at Wed Oct 28 03:34:30 IST 2026
[2026-10-28 03:34:30,890.890 INFO    ] ================================================
[2026-10-28 03:34:31,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:34:31
[2026-10-28 03:34:32,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:34:32,373.373 INFO    ] Initializing speech engine...
[2026-10-28 03:34:32,384.384 INFO    ] 2026-10-28 03:34:32
[2026-10-28 03:34:32,664.664 INFO    ] 2026-10-28 03:34:32
[2026-10-28 03:34:32,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:34:32,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:34:32,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:34:33,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:34:33,260.260 INFO    ] time= 28/10/2026 03:34:33
[2026-10-28 03:34:33,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:34:33,290.290 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:34:33,412.412 INFO    ] No existing commands found in stream
[2026-10-28 03:34:38,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:34:38,440.440 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-28 03:34:39,300.300 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:34:39,303.303 INFO    ] Checking for system updates...
[2026-10-28 03:34:39,343.343 INFO    ] 200
[2026-10-28 03:34:39,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:34:39,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:34:39,409.409 INFO    ] No update needed
[2026-10-28 03:34:39,412.412 INFO    ] Checking for camera pi updates...
[2026-10-28 03:34:39,445.445 INFO    ] 200
[2026-10-28 03:34:39,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:34:39,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:34:39,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:34:39,572.572 INFO    ] No camera update needed
[2026-10-28 03:34:39,574.574 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:34:39,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:34:39,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:34:39,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:34:41,629.629 INFO    ] ================================================
[2026-10-28 03:34:41,644.644 INFO    ] Launching Daemon at Wed Oct 28 03:34:41 IST 2026
[2026-10-28 03:34:41,655.655 INFO    ] ================================================
[2026-10-28 03:34:42,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:34:42
[2026-10-28 03:34:42,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:34:43,091.091 INFO    ] Initializing speech engine...
[2026-10-28 03:34:43,099.099 INFO    ] 2026-10-28 03:34:43
[2026-10-28 03:34:43,345.345 INFO    ] 2026-10-28 03:34:43
[2026-10-28 03:34:43,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:34:43,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:34:43,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:34:43,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:34:43,906.906 INFO    ] time= 28/10/2026 03:34:43
[2026-10-28 03:34:43,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:34:43,932.932 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:34:44,051.051 INFO    ] No existing commands found in stream
[2026-10-28 03:34:49,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:34:49,079.079 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-28 03:34:51,952.952 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:34:51,955.955 INFO    ] Checking for system updates...
[2026-10-28 03:34:51,990.990 INFO    ] 200
[2026-10-28 03:34:51,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:34:52,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:34:52,057.057 INFO    ] No update needed
[2026-10-28 03:34:52,059.059 INFO    ] Checking for camera pi updates...
[2026-10-28 03:34:52,098.098 INFO    ] 200
[2026-10-28 03:34:52,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:34:52,148.148 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:34:52,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:34:52,224.224 INFO    ] No camera update needed
[2026-10-28 03:34:52,226.226 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:34:52,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:34:52,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:34:52,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:34:54,280.280 INFO    ] ================================================
[2026-10-28 03:34:54,295.295 INFO    ] Launching Daemon at Wed Oct 28 03:34:54 IST 2026
[2026-10-28 03:34:54,306.306 INFO    ] ================================================
[2026-10-28 03:34:54,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:34:54
[2026-10-28 03:34:55,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:34:55,995.995 INFO    ] Initializing speech engine...
[2026-10-28 03:34:56,002.002 INFO    ] 2026-10-28 03:34:55
[2026-10-28 03:34:56,285.285 INFO    ] 2026-10-28 03:34:56
[2026-10-28 03:34:56,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:34:56,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:34:56,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:34:56,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:34:56,869.869 INFO    ] time= 28/10/2026 03:34:56
[2026-10-28 03:34:56,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:34:56,913.913 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:34:57,065.065 INFO    ] No existing commands found in stream
[2026-10-28 03:35:02,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:35:02,098.098 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-28 03:35:04,496.496 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:35:04,500.500 INFO    ] Checking for system updates...
[2026-10-28 03:35:04,540.540 INFO    ] 200
[2026-10-28 03:35:04,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:35:04,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:35:04,605.605 INFO    ] No update needed
[2026-10-28 03:35:04,607.607 INFO    ] Checking for camera pi updates...
[2026-10-28 03:35:04,646.646 INFO    ] 200
[2026-10-28 03:35:04,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:35:04,694.694 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:35:04,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:35:04,797.797 INFO    ] No camera update needed
[2026-10-28 03:35:04,801.801 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:35:04,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:35:04,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:35:04,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:35:06,859.859 INFO    ] ================================================
[2026-10-28 03:35:06,875.875 INFO    ] Launching Daemon at Wed Oct 28 03:35:06 IST 2026
[2026-10-28 03:35:06,885.885 INFO    ] ================================================
[2026-10-28 03:35:07,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:35:07
[2026-10-28 03:35:08,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:35:08,441.441 INFO    ] Initializing speech engine...
[2026-10-28 03:35:08,466.466 INFO    ] 2026-10-28 03:35:08
[2026-10-28 03:35:08,739.739 INFO    ] 2026-10-28 03:35:08
[2026-10-28 03:35:08,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:35:09,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:35:09,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:35:09,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:35:09,371.371 INFO    ] time= 28/10/2026 03:35:09
[2026-10-28 03:35:09,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:35:09,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:35:09,517.517 INFO    ] No existing commands found in stream
[2026-10-28 03:35:14,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:35:14,538.538 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-28 03:35:17,474.474 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:35:17,477.477 INFO    ] Checking for system updates...
[2026-10-28 03:35:17,516.516 INFO    ] 200
[2026-10-28 03:35:17,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:35:17,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:35:17,580.580 INFO    ] No update needed
[2026-10-28 03:35:17,583.583 INFO    ] Checking for camera pi updates...
[2026-10-28 03:35:17,620.620 INFO    ] 200
[2026-10-28 03:35:17,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:35:17,668.668 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:35:17,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:35:17,843.843 INFO    ] No camera update needed
[2026-10-28 03:35:17,845.845 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:35:17,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:35:17,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:35:17,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:35:19,898.898 INFO    ] ================================================
[2026-10-28 03:35:19,913.913 INFO    ] Launching Daemon at Wed Oct 28 03:35:19 IST 2026
[2026-10-28 03:35:19,924.924 INFO    ] ================================================
[2026-10-28 03:35:20,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:35:20
[2026-10-28 03:35:21,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:35:21,342.342 INFO    ] Initializing speech engine...
[2026-10-28 03:35:21,351.351 INFO    ] 2026-10-28 03:35:21
[2026-10-28 03:35:21,596.596 INFO    ] 2026-10-28 03:35:21
[2026-10-28 03:35:21,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:35:21,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:35:21,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:35:22,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:35:22,149.149 INFO    ] time= 28/10/2026 03:35:22
[2026-10-28 03:35:22,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:35:22,189.189 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:35:22,320.320 INFO    ] No existing commands found in stream
[2026-10-28 03:35:27,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:35:27,348.348 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-28 03:35:30,233.233 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:35:30,236.236 INFO    ] Checking for system updates...
[2026-10-28 03:35:30,276.276 INFO    ] 200
[2026-10-28 03:35:30,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:35:30,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:35:30,333.333 INFO    ] No update needed
[2026-10-28 03:35:30,335.335 INFO    ] Checking for camera pi updates...
[2026-10-28 03:35:30,368.368 INFO    ] 200
[2026-10-28 03:35:30,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:35:30,412.412 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:35:30,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:35:30,492.492 INFO    ] No camera update needed
[2026-10-28 03:35:30,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:35:30,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:35:30,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:35:30,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:35:32,547.547 INFO    ] ================================================
[2026-10-28 03:35:32,563.563 INFO    ] Launching Daemon at Wed Oct 28 03:35:32 IST 2026
[2026-10-28 03:35:32,575.575 INFO    ] ================================================
[2026-10-28 03:35:33,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:35:33
[2026-10-28 03:35:33,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:35:34,045.045 INFO    ] Initializing speech engine...
[2026-10-28 03:35:34,066.066 INFO    ] 2026-10-28 03:35:34
[2026-10-28 03:35:34,346.346 INFO    ] 2026-10-28 03:35:34
[2026-10-28 03:35:34,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:35:34,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:35:34,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:35:34,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:35:34,764.764 INFO    ] time= 28/10/2026 03:35:34
[2026-10-28 03:35:34,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:35:34,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:35:34,923.923 INFO    ] No existing commands found in stream
[2026-10-28 03:35:39,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:35:39,956.956 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-28 03:35:41,413.413 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:35:41,416.416 INFO    ] Checking for system updates...
[2026-10-28 03:35:41,456.456 INFO    ] 200
[2026-10-28 03:35:41,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:35:41,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:35:41,522.522 INFO    ] No update needed
[2026-10-28 03:35:41,524.524 INFO    ] Checking for camera pi updates...
[2026-10-28 03:35:41,562.562 INFO    ] 200
[2026-10-28 03:35:41,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:35:41,612.612 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:35:41,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:35:41,690.690 INFO    ] No camera update needed
[2026-10-28 03:35:41,693.693 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:35:41,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:35:41,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:35:41,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:35:43,750.750 INFO    ] ================================================
[2026-10-28 03:35:43,766.766 INFO    ] Launching Daemon at Wed Oct 28 03:35:43 IST 2026
[2026-10-28 03:35:43,777.777 INFO    ] ================================================
[2026-10-28 03:35:44,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:35:44
[2026-10-28 03:35:44,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:35:45,175.175 INFO    ] Initializing speech engine...
[2026-10-28 03:35:45,189.189 INFO    ] 2026-10-28 03:35:45
[2026-10-28 03:35:45,466.466 INFO    ] 2026-10-28 03:35:45
[2026-10-28 03:35:45,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:35:45,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:35:45,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:35:45,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:35:45,963.963 INFO    ] time= 28/10/2026 03:35:45
[2026-10-28 03:35:46,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:35:46,051.051 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:35:46,135.135 INFO    ] No existing commands found in stream
[2026-10-28 03:35:51,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:35:51,151.151 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-28 03:35:52,817.817 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:35:52,820.820 INFO    ] Checking for system updates...
[2026-10-28 03:35:52,861.861 INFO    ] 200
[2026-10-28 03:35:52,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:35:52,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:35:52,926.926 INFO    ] No update needed
[2026-10-28 03:35:52,928.928 INFO    ] Checking for camera pi updates...
[2026-10-28 03:35:52,965.965 INFO    ] 200
[2026-10-28 03:35:52,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:35:53,018.018 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:35:53,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:35:53,106.106 INFO    ] No camera update needed
[2026-10-28 03:35:53,108.108 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:35:53,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:35:53,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:35:53,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:35:55,163.163 INFO    ] ================================================
[2026-10-28 03:35:55,178.178 INFO    ] Launching Daemon at Wed Oct 28 03:35:55 IST 2026
[2026-10-28 03:35:55,190.190 INFO    ] ================================================
[2026-10-28 03:35:55,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:35:55
[2026-10-28 03:35:56,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:35:56,637.637 INFO    ] Initializing speech engine...
[2026-10-28 03:35:56,653.653 INFO    ] 2026-10-28 03:35:56
[2026-10-28 03:35:56,937.937 INFO    ] 2026-10-28 03:35:56
[2026-10-28 03:35:56,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:35:57,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:35:57,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:35:57,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:35:57,558.558 INFO    ] time= 28/10/2026 03:35:57
[2026-10-28 03:35:57,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:35:57,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:35:57,695.695 INFO    ] No existing commands found in stream
[2026-10-28 03:36:02,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:36:02,711.711 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-28 03:36:03,913.913 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:36:03,915.915 INFO    ] Checking for system updates...
[2026-10-28 03:36:03,955.955 INFO    ] 200
[2026-10-28 03:36:03,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:36:04,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:36:04,019.019 INFO    ] No update needed
[2026-10-28 03:36:04,021.021 INFO    ] Checking for camera pi updates...
[2026-10-28 03:36:04,054.054 INFO    ] 200
[2026-10-28 03:36:04,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:36:04,108.108 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:36:04,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:36:04,196.196 INFO    ] No camera update needed
[2026-10-28 03:36:04,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:36:04,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:36:04,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:36:04,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:36:06,253.253 INFO    ] ================================================
[2026-10-28 03:36:06,269.269 INFO    ] Launching Daemon at Wed Oct 28 03:36:06 IST 2026
[2026-10-28 03:36:06,281.281 INFO    ] ================================================
[2026-10-28 03:36:06,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:36:06
[2026-10-28 03:36:07,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:36:07,795.795 INFO    ] Initializing speech engine...
[2026-10-28 03:36:07,801.801 INFO    ] 2026-10-28 03:36:07
[2026-10-28 03:36:08,085.085 INFO    ] 2026-10-28 03:36:08
[2026-10-28 03:36:08,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:36:08,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:36:08,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:36:08,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:36:08,647.647 INFO    ] time= 28/10/2026 03:36:08
[2026-10-28 03:36:08,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:36:08,673.673 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:36:08,802.802 INFO    ] No existing commands found in stream
[2026-10-28 03:36:13,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:36:13,820.820 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-28 03:36:15,765.765 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:36:15,768.768 INFO    ] Checking for system updates...
[2026-10-28 03:36:15,808.808 INFO    ] 200
[2026-10-28 03:36:15,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:36:15,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:36:15,871.871 INFO    ] No update needed
[2026-10-28 03:36:15,874.874 INFO    ] Checking for camera pi updates...
[2026-10-28 03:36:15,911.911 INFO    ] 200
[2026-10-28 03:36:15,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:36:15,959.959 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:36:16,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:36:16,054.054 INFO    ] No camera update needed
[2026-10-28 03:36:16,057.057 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:36:16,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:36:16,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:36:16,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:36:18,114.114 INFO    ] ================================================
[2026-10-28 03:36:18,130.130 INFO    ] Launching Daemon at Wed Oct 28 03:36:18 IST 2026
[2026-10-28 03:36:18,141.141 INFO    ] ================================================
[2026-10-28 03:36:18,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:36:18
[2026-10-28 03:36:19,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:36:19,573.573 INFO    ] Initializing speech engine...
[2026-10-28 03:36:19,578.578 INFO    ] 2026-10-28 03:36:19
[2026-10-28 03:36:19,887.887 INFO    ] 2026-10-28 03:36:19
[2026-10-28 03:36:19,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:36:20,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:36:20,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:36:20,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:36:20,383.383 INFO    ] time= 28/10/2026 03:36:20
[2026-10-28 03:36:20,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:36:20,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:36:20,563.563 INFO    ] No existing commands found in stream
[2026-10-28 03:36:25,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:36:25,582.582 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-28 03:36:29,372.372 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:36:29,375.375 INFO    ] Checking for system updates...
[2026-10-28 03:36:29,415.415 INFO    ] 200
[2026-10-28 03:36:29,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:36:29,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:36:29,491.491 INFO    ] No update needed
[2026-10-28 03:36:29,494.494 INFO    ] Checking for camera pi updates...
[2026-10-28 03:36:29,538.538 INFO    ] 200
[2026-10-28 03:36:29,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:36:29,587.587 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:36:29,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:36:29,682.682 INFO    ] No camera update needed
[2026-10-28 03:36:29,684.684 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:36:29,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:36:29,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:36:29,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:36:31,737.737 INFO    ] ================================================
[2026-10-28 03:36:31,754.754 INFO    ] Launching Daemon at Wed Oct 28 03:36:31 IST 2026
[2026-10-28 03:36:31,765.765 INFO    ] ================================================
[2026-10-28 03:36:32,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:36:32
[2026-10-28 03:36:33,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:36:33,320.320 INFO    ] Initializing speech engine...
[2026-10-28 03:36:33,332.332 INFO    ] 2026-10-28 03:36:33
[2026-10-28 03:36:33,653.653 INFO    ] 2026-10-28 03:36:33
[2026-10-28 03:36:33,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:36:34,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:36:34,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:36:34,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:36:34,378.378 INFO    ] time= 28/10/2026 03:36:34
[2026-10-28 03:36:34,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:36:34,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:36:34,614.614 INFO    ] No existing commands found in stream
[2026-10-28 03:36:39,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:36:39,628.628 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-28 03:36:43,423.423 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:36:43,427.427 INFO    ] Checking for system updates...
[2026-10-28 03:36:43,469.469 INFO    ] 200
[2026-10-28 03:36:43,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:36:43,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:36:43,720.720 INFO    ] No update needed
[2026-10-28 03:36:43,723.723 INFO    ] Checking for camera pi updates...
[2026-10-28 03:36:43,767.767 INFO    ] 200
[2026-10-28 03:36:43,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:36:43,818.818 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:36:43,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:36:43,921.921 INFO    ] No camera update needed
[2026-10-28 03:36:43,924.924 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:36:43,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:36:43,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:36:43,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:36:45,987.987 INFO    ] ================================================
[2026-10-28 03:36:46,003.003 INFO    ] Launching Daemon at Wed Oct 28 03:36:45 IST 2026
[2026-10-28 03:36:46,014.014 INFO    ] ================================================
[2026-10-28 03:36:46,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:36:46
[2026-10-28 03:36:47,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:36:47,709.709 INFO    ] Initializing speech engine...
[2026-10-28 03:36:47,722.722 INFO    ] 2026-10-28 03:36:47
[2026-10-28 03:36:47,998.998 INFO    ] 2026-10-28 03:36:47
[2026-10-28 03:36:48,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:36:48,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:36:48,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:36:48,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:36:48,747.747 INFO    ] time= 28/10/2026 03:36:48
[2026-10-28 03:36:48,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:36:48,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:36:49,004.004 INFO    ] No existing commands found in stream
[2026-10-28 03:36:54,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:36:54,022.022 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-28 03:36:56,251.251 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:36:56,255.255 INFO    ] Checking for system updates...
[2026-10-28 03:36:56,297.297 INFO    ] 200
[2026-10-28 03:36:56,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:36:56,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:36:56,365.365 INFO    ] No update needed
[2026-10-28 03:36:56,368.368 INFO    ] Checking for camera pi updates...
[2026-10-28 03:36:56,412.412 INFO    ] 200
[2026-10-28 03:36:56,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:36:56,461.461 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:36:56,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:36:56,539.539 INFO    ] No camera update needed
[2026-10-28 03:36:56,541.541 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:36:56,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:36:56,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:36:56,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:36:58,600.600 INFO    ] ================================================
[2026-10-28 03:36:58,616.616 INFO    ] Launching Daemon at Wed Oct 28 03:36:58 IST 2026
[2026-10-28 03:36:58,627.627 INFO    ] ================================================
[2026-10-28 03:36:59,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:36:59
[2026-10-28 03:36:59,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:37:00,284.284 INFO    ] Initializing speech engine...
[2026-10-28 03:37:00,297.297 INFO    ] 2026-10-28 03:37:00
[2026-10-28 03:37:00,582.582 INFO    ] 2026-10-28 03:37:00
[2026-10-28 03:37:00,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:37:00,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:37:01,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:37:01,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:37:01,292.292 INFO    ] time= 28/10/2026 03:37:01
[2026-10-28 03:37:01,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:37:01,393.393 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:37:01,523.523 INFO    ] No existing commands found in stream
[2026-10-28 03:37:06,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:37:06,538.538 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-28 03:37:10,437.437 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:37:10,440.440 INFO    ] Checking for system updates...
[2026-10-28 03:37:10,478.478 INFO    ] 200
[2026-10-28 03:37:10,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:37:10,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:37:10,537.537 INFO    ] No update needed
[2026-10-28 03:37:10,540.540 INFO    ] Checking for camera pi updates...
[2026-10-28 03:37:10,573.573 INFO    ] 200
[2026-10-28 03:37:10,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:37:10,616.616 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:37:10,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:37:10,720.720 INFO    ] No camera update needed
[2026-10-28 03:37:10,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:37:10,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:37:10,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:37:10,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:37:12,776.776 INFO    ] ================================================
[2026-10-28 03:37:12,792.792 INFO    ] Launching Daemon at Wed Oct 28 03:37:12 IST 2026
[2026-10-28 03:37:12,803.803 INFO    ] ================================================
[2026-10-28 03:37:13,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:37:13
[2026-10-28 03:37:13,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:37:14,206.206 INFO    ] Initializing speech engine...
[2026-10-28 03:37:14,228.228 INFO    ] 2026-10-28 03:37:14
[2026-10-28 03:37:14,481.481 INFO    ] 2026-10-28 03:37:14
[2026-10-28 03:37:14,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:37:14,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:37:14,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:37:15,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:37:15,035.035 INFO    ] time= 28/10/2026 03:37:15
[2026-10-28 03:37:15,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:37:15,061.061 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:37:15,178.178 INFO    ] No existing commands found in stream
[2026-10-28 03:37:20,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:37:20,198.198 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-28 03:37:23,859.859 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:37:23,862.862 INFO    ] Checking for system updates...
[2026-10-28 03:37:23,916.916 INFO    ] 200
[2026-10-28 03:37:23,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:37:23,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:37:23,981.981 INFO    ] No update needed
[2026-10-28 03:37:23,983.983 INFO    ] Checking for camera pi updates...
[2026-10-28 03:37:24,016.016 INFO    ] 200
[2026-10-28 03:37:24,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:37:24,063.063 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:37:24,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:37:24,245.245 INFO    ] No camera update needed
[2026-10-28 03:37:24,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:37:24,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:37:24,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:37:24,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:37:26,301.301 INFO    ] ================================================
[2026-10-28 03:37:26,316.316 INFO    ] Launching Daemon at Wed Oct 28 03:37:26 IST 2026
[2026-10-28 03:37:26,328.328 INFO    ] ================================================
[2026-10-28 03:37:26,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:37:26
[2026-10-28 03:37:27,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:37:27,983.983 INFO    ] Initializing speech engine...
[2026-10-28 03:37:27,996.996 INFO    ] 2026-10-28 03:37:27
[2026-10-28 03:37:28,284.284 INFO    ] 2026-10-28 03:37:28
[2026-10-28 03:37:28,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:37:28,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:37:28,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:37:28,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:37:28,861.861 INFO    ] time= 28/10/2026 03:37:28
[2026-10-28 03:37:28,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:37:28,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:37:29,068.068 INFO    ] No existing commands found in stream
[2026-10-28 03:37:34,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:37:34,087.087 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 03:37:35,756.756 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:37:35,760.760 INFO    ] Checking for system updates...
[2026-10-28 03:37:35,797.797 INFO    ] 200
[2026-10-28 03:37:35,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:37:35,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:37:35,864.864 INFO    ] No update needed
[2026-10-28 03:37:35,867.867 INFO    ] Checking for camera pi updates...
[2026-10-28 03:37:35,902.902 INFO    ] 200
[2026-10-28 03:37:35,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:37:35,952.952 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:37:36,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:37:36,058.058 INFO    ] No camera update needed
[2026-10-28 03:37:36,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:37:36,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:37:36,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:37:36,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:37:38,121.121 INFO    ] ================================================
[2026-10-28 03:37:38,137.137 INFO    ] Launching Daemon at Wed Oct 28 03:37:38 IST 2026
[2026-10-28 03:37:38,148.148 INFO    ] ================================================
[2026-10-28 03:37:38,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:37:38
[2026-10-28 03:37:39,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:37:39,560.560 INFO    ] Initializing speech engine...
[2026-10-28 03:37:39,570.570 INFO    ] 2026-10-28 03:37:39
[2026-10-28 03:37:39,815.815 INFO    ] 2026-10-28 03:37:39
[2026-10-28 03:37:39,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:37:40,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:37:40,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:37:40,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:37:40,365.365 INFO    ] time= 28/10/2026 03:37:40
[2026-10-28 03:37:40,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:37:40,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:37:40,514.514 INFO    ] No existing commands found in stream
[2026-10-28 03:37:45,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:37:45,533.533 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-28 03:37:47,854.854 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:37:47,856.856 INFO    ] Checking for system updates...
[2026-10-28 03:37:47,891.891 INFO    ] 200
[2026-10-28 03:37:47,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:37:47,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:37:47,949.949 INFO    ] No update needed
[2026-10-28 03:37:47,952.952 INFO    ] Checking for camera pi updates...
[2026-10-28 03:37:47,989.989 INFO    ] 200
[2026-10-28 03:37:47,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:37:48,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:37:48,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:37:48,120.120 INFO    ] No camera update needed
[2026-10-28 03:37:48,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:37:48,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:37:48,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:37:48,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:37:50,176.176 INFO    ] ================================================
[2026-10-28 03:37:50,191.191 INFO    ] Launching Daemon at Wed Oct 28 03:37:50 IST 2026
[2026-10-28 03:37:50,202.202 INFO    ] ================================================
[2026-10-28 03:37:50,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:37:50
[2026-10-28 03:37:51,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:37:51,667.667 INFO    ] Initializing speech engine...
[2026-10-28 03:37:51,690.690 INFO    ] 2026-10-28 03:37:51
[2026-10-28 03:37:51,950.950 INFO    ] 2026-10-28 03:37:51
[2026-10-28 03:37:52,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:37:52,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:37:52,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:37:52,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:37:52,506.506 INFO    ] time= 28/10/2026 03:37:52
[2026-10-28 03:37:52,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:37:52,554.554 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:37:52,671.671 INFO    ] No existing commands found in stream
[2026-10-28 03:37:57,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:37:57,703.703 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 03:38:00,077.077 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:38:00,080.080 INFO    ] Checking for system updates...
[2026-10-28 03:38:00,120.120 INFO    ] 200
[2026-10-28 03:38:00,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:38:00,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:38:00,188.188 INFO    ] No update needed
[2026-10-28 03:38:00,190.190 INFO    ] Checking for camera pi updates...
[2026-10-28 03:38:00,228.228 INFO    ] 200
[2026-10-28 03:38:00,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:38:00,275.275 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:38:00,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:38:00,375.375 INFO    ] No camera update needed
[2026-10-28 03:38:00,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:38:00,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:38:00,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:38:00,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:38:02,435.435 INFO    ] ================================================
[2026-10-28 03:38:02,462.462 INFO    ] Launching Daemon at Wed Oct 28 03:38:02 IST 2026
[2026-10-28 03:38:02,481.481 INFO    ] ================================================
[2026-10-28 03:38:03,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:38:03
[2026-10-28 03:38:03,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:38:04,145.145 INFO    ] Initializing speech engine...
[2026-10-28 03:38:04,154.154 INFO    ] 2026-10-28 03:38:04
[2026-10-28 03:38:04,409.409 INFO    ] 2026-10-28 03:38:04
[2026-10-28 03:38:04,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:38:04,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:38:04,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:38:04,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:38:04,953.953 INFO    ] time= 28/10/2026 03:38:04
[2026-10-28 03:38:04,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:38:04,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:38:05,101.101 INFO    ] No existing commands found in stream
[2026-10-28 03:38:10,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:38:10,119.119 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-28 03:38:12,736.736 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:38:12,739.739 INFO    ] Checking for system updates...
[2026-10-28 03:38:12,774.774 INFO    ] 200
[2026-10-28 03:38:12,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:38:12,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:38:12,830.830 INFO    ] No update needed
[2026-10-28 03:38:12,833.833 INFO    ] Checking for camera pi updates...
[2026-10-28 03:38:12,870.870 INFO    ] 200
[2026-10-28 03:38:12,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:38:12,917.917 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:38:12,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:38:12,983.983 INFO    ] No camera update needed
[2026-10-28 03:38:12,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:38:12,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:38:12,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:38:12,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:38:15,039.039 INFO    ] ================================================
[2026-10-28 03:38:15,054.054 INFO    ] Launching Daemon at Wed Oct 28 03:38:15 IST 2026
[2026-10-28 03:38:15,065.065 INFO    ] ================================================
[2026-10-28 03:38:15,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:38:15
[2026-10-28 03:38:16,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:38:16,675.675 INFO    ] Initializing speech engine...
[2026-10-28 03:38:16,683.683 INFO    ] 2026-10-28 03:38:16
[2026-10-28 03:38:16,951.951 INFO    ] 2026-10-28 03:38:16
[2026-10-28 03:38:16,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:38:17,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:38:17,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:38:17,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:38:17,636.636 INFO    ] time= 28/10/2026 03:38:17
[2026-10-28 03:38:17,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:38:17,727.727 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:38:17,876.876 INFO    ] No existing commands found in stream
[2026-10-28 03:38:22,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:38:22,906.906 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-28 03:38:26,394.394 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:38:26,397.397 INFO    ] Checking for system updates...
[2026-10-28 03:38:26,437.437 INFO    ] 200
[2026-10-28 03:38:26,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:38:26,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:38:26,500.500 INFO    ] No update needed
[2026-10-28 03:38:26,502.502 INFO    ] Checking for camera pi updates...
[2026-10-28 03:38:26,538.538 INFO    ] 200
[2026-10-28 03:38:26,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:38:26,585.585 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:38:26,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:38:26,684.684 INFO    ] No camera update needed
[2026-10-28 03:38:26,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:38:26,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:38:26,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:38:26,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:38:28,740.740 INFO    ] ================================================
[2026-10-28 03:38:28,755.755 INFO    ] Launching Daemon at Wed Oct 28 03:38:28 IST 2026
[2026-10-28 03:38:28,766.766 INFO    ] ================================================
[2026-10-28 03:38:29,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:38:29
[2026-10-28 03:38:29,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:38:30,224.224 INFO    ] Initializing speech engine...
[2026-10-28 03:38:30,229.229 INFO    ] 2026-10-28 03:38:30
[2026-10-28 03:38:30,473.473 INFO    ] 2026-10-28 03:38:30
[2026-10-28 03:38:30,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:38:30,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:38:30,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:38:31,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:38:31,043.043 INFO    ] time= 28/10/2026 03:38:31
[2026-10-28 03:38:31,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:38:31,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:38:31,206.206 INFO    ] No existing commands found in stream
[2026-10-28 03:38:36,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:38:36,228.228 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-28 03:38:38,076.076 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:38:38,079.079 INFO    ] Checking for system updates...
[2026-10-28 03:38:38,114.114 INFO    ] 200
[2026-10-28 03:38:38,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:38:38,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:38:38,171.171 INFO    ] No update needed
[2026-10-28 03:38:38,174.174 INFO    ] Checking for camera pi updates...
[2026-10-28 03:38:38,210.210 INFO    ] 200
[2026-10-28 03:38:38,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:38:38,254.254 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:38:38,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:38:38,337.337 INFO    ] No camera update needed
[2026-10-28 03:38:38,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:38:38,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:38:38,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:38:38,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:38:40,395.395 INFO    ] ================================================
[2026-10-28 03:38:40,410.410 INFO    ] Launching Daemon at Wed Oct 28 03:38:40 IST 2026
[2026-10-28 03:38:40,420.420 INFO    ] ================================================
[2026-10-28 03:38:41,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:38:41
[2026-10-28 03:38:41,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:38:41,868.868 INFO    ] Initializing speech engine...
[2026-10-28 03:38:41,877.877 INFO    ] 2026-10-28 03:38:41
[2026-10-28 03:38:42,136.136 INFO    ] 2026-10-28 03:38:42
[2026-10-28 03:38:42,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:38:42,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:38:42,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:38:42,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:38:42,687.687 INFO    ] time= 28/10/2026 03:38:42
[2026-10-28 03:38:42,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:38:42,709.709 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:38:42,843.843 INFO    ] No existing commands found in stream
[2026-10-28 03:38:47,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:38:47,868.868 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-28 03:38:51,016.016 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:38:51,019.019 INFO    ] Checking for system updates...
[2026-10-28 03:38:51,057.057 INFO    ] 200
[2026-10-28 03:38:51,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:38:51,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:38:51,121.121 INFO    ] No update needed
[2026-10-28 03:38:51,123.123 INFO    ] Checking for camera pi updates...
[2026-10-28 03:38:51,156.156 INFO    ] 200
[2026-10-28 03:38:51,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:38:51,198.198 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:38:51,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:38:51,282.282 INFO    ] No camera update needed
[2026-10-28 03:38:51,284.284 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:38:51,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:38:51,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:38:51,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:38:53,337.337 INFO    ] ================================================
[2026-10-28 03:38:53,352.352 INFO    ] Launching Daemon at Wed Oct 28 03:38:53 IST 2026
[2026-10-28 03:38:53,362.362 INFO    ] ================================================
[2026-10-28 03:38:53,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:38:53
[2026-10-28 03:38:54,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:38:54,795.795 INFO    ] Initializing speech engine...
[2026-10-28 03:38:54,809.809 INFO    ] 2026-10-28 03:38:54
[2026-10-28 03:38:55,081.081 INFO    ] 2026-10-28 03:38:55
[2026-10-28 03:38:55,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:38:55,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:38:55,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:38:55,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:38:55,637.637 INFO    ] time= 28/10/2026 03:38:55
[2026-10-28 03:38:55,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:38:55,662.662 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:38:55,792.792 INFO    ] No existing commands found in stream
[2026-10-28 03:39:00,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:39:00,818.818 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-28 03:39:02,898.898 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:39:02,901.901 INFO    ] Checking for system updates...
[2026-10-28 03:39:02,948.948 INFO    ] 200
[2026-10-28 03:39:02,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:39:03,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:39:03,020.020 INFO    ] No update needed
[2026-10-28 03:39:03,023.023 INFO    ] Checking for camera pi updates...
[2026-10-28 03:39:03,068.068 INFO    ] 200
[2026-10-28 03:39:03,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:39:03,128.128 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:39:03,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:39:03,212.212 INFO    ] No camera update needed
[2026-10-28 03:39:03,214.214 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:39:03,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:39:03,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:39:03,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:39:05,267.267 INFO    ] ================================================
[2026-10-28 03:39:05,282.282 INFO    ] Launching Daemon at Wed Oct 28 03:39:05 IST 2026
[2026-10-28 03:39:05,293.293 INFO    ] ================================================
[2026-10-28 03:39:05,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:39:05
[2026-10-28 03:39:06,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:39:06,737.737 INFO    ] Initializing speech engine...
[2026-10-28 03:39:06,744.744 INFO    ] 2026-10-28 03:39:06
[2026-10-28 03:39:07,005.005 INFO    ] 2026-10-28 03:39:06
[2026-10-28 03:39:07,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:39:07,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:39:07,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:39:07,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:39:07,584.584 INFO    ] time= 28/10/2026 03:39:07
[2026-10-28 03:39:07,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:39:07,609.609 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:39:07,738.738 INFO    ] No existing commands found in stream
[2026-10-28 03:39:12,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:39:12,759.759 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 03:39:13,857.857 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:39:13,859.859 INFO    ] Checking for system updates...
[2026-10-28 03:39:13,895.895 INFO    ] 200
[2026-10-28 03:39:13,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:39:13,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:39:13,956.956 INFO    ] No update needed
[2026-10-28 03:39:13,958.958 INFO    ] Checking for camera pi updates...
[2026-10-28 03:39:13,991.991 INFO    ] 200
[2026-10-28 03:39:13,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:39:14,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:39:14,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:39:14,129.129 INFO    ] No camera update needed
[2026-10-28 03:39:14,132.132 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:39:14,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:39:14,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:39:14,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:39:16,198.198 INFO    ] ================================================
[2026-10-28 03:39:16,213.213 INFO    ] Launching Daemon at Wed Oct 28 03:39:16 IST 2026
[2026-10-28 03:39:16,223.223 INFO    ] ================================================
[2026-10-28 03:39:16,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:39:16
[2026-10-28 03:39:17,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:39:17,826.826 INFO    ] Initializing speech engine...
[2026-10-28 03:39:17,839.839 INFO    ] 2026-10-28 03:39:17
[2026-10-28 03:39:18,124.124 INFO    ] 2026-10-28 03:39:18
[2026-10-28 03:39:18,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:39:18,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:39:18,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:39:18,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:39:18,666.666 INFO    ] time= 28/10/2026 03:39:18
[2026-10-28 03:39:18,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:39:18,719.719 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:39:18,831.831 INFO    ] No existing commands found in stream
[2026-10-28 03:39:23,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:39:23,846.846 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 03:39:26,501.501 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:39:26,503.503 INFO    ] Checking for system updates...
[2026-10-28 03:39:26,541.541 INFO    ] 200
[2026-10-28 03:39:26,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:39:26,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:39:26,599.599 INFO    ] No update needed
[2026-10-28 03:39:26,601.601 INFO    ] Checking for camera pi updates...
[2026-10-28 03:39:26,634.634 INFO    ] 200
[2026-10-28 03:39:26,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:39:26,676.676 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:39:26,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:39:26,859.859 INFO    ] No camera update needed
[2026-10-28 03:39:26,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:39:26,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:39:26,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:39:26,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:39:28,913.913 INFO    ] ================================================
[2026-10-28 03:39:28,928.928 INFO    ] Launching Daemon at Wed Oct 28 03:39:28 IST 2026
[2026-10-28 03:39:28,939.939 INFO    ] ================================================
[2026-10-28 03:39:29,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:39:29
[2026-10-28 03:39:30,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:39:30,403.403 INFO    ] Initializing speech engine...
[2026-10-28 03:39:30,410.410 INFO    ] 2026-10-28 03:39:30
[2026-10-28 03:39:30,699.699 INFO    ] 2026-10-28 03:39:30
[2026-10-28 03:39:30,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:39:30,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:39:31,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:39:31,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:39:31,264.264 INFO    ] time= 28/10/2026 03:39:31
[2026-10-28 03:39:31,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:39:31,341.341 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:39:31,403.403 INFO    ] No existing commands found in stream
[2026-10-28 03:39:36,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:39:36,421.421 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-28 03:39:38,609.609 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:39:38,611.611 INFO    ] Checking for system updates...
[2026-10-28 03:39:38,650.650 INFO    ] 200
[2026-10-28 03:39:38,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:39:38,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:39:38,711.711 INFO    ] No update needed
[2026-10-28 03:39:38,713.713 INFO    ] Checking for camera pi updates...
[2026-10-28 03:39:38,748.748 INFO    ] 200
[2026-10-28 03:39:38,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:39:38,795.795 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:39:38,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:39:38,876.876 INFO    ] No camera update needed
[2026-10-28 03:39:38,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:39:38,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:39:38,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:39:38,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:39:40,930.930 INFO    ] ================================================
[2026-10-28 03:39:40,945.945 INFO    ] Launching Daemon at Wed Oct 28 03:39:40 IST 2026
[2026-10-28 03:39:40,956.956 INFO    ] ================================================
[2026-10-28 03:39:41,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:39:41
[2026-10-28 03:39:42,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:39:42,369.369 INFO    ] Initializing speech engine...
[2026-10-28 03:39:42,398.398 INFO    ] 2026-10-28 03:39:42
[2026-10-28 03:39:42,650.650 INFO    ] 2026-10-28 03:39:42
[2026-10-28 03:39:42,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:39:42,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:39:42,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:39:43,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:39:43,216.216 INFO    ] time= 28/10/2026 03:39:43
[2026-10-28 03:39:43,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:39:43,242.242 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:39:43,371.371 INFO    ] No existing commands found in stream
[2026-10-28 03:39:48,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:39:48,392.392 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-28 03:39:52,654.654 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:39:52,657.657 INFO    ] Checking for system updates...
[2026-10-28 03:39:52,692.692 INFO    ] 200
[2026-10-28 03:39:52,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:39:52,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:39:52,749.749 INFO    ] No update needed
[2026-10-28 03:39:52,751.751 INFO    ] Checking for camera pi updates...
[2026-10-28 03:39:52,787.787 INFO    ] 200
[2026-10-28 03:39:52,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:39:52,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:39:52,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:39:52,915.915 INFO    ] No camera update needed
[2026-10-28 03:39:52,917.917 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:39:52,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:39:52,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:39:52,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:39:54,970.970 INFO    ] ================================================
[2026-10-28 03:39:54,985.985 INFO    ] Launching Daemon at Wed Oct 28 03:39:54 IST 2026
[2026-10-28 03:39:55,995.995 INFO    ] ================================================
[2026-10-28 03:39:55,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:39:55
[2026-10-28 03:39:56,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:39:56,430.430 INFO    ] Initializing speech engine...
[2026-10-28 03:39:56,439.439 INFO    ] 2026-10-28 03:39:56
[2026-10-28 03:39:56,695.695 INFO    ] 2026-10-28 03:39:56
[2026-10-28 03:39:56,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:39:56,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:39:56,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:39:57,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:39:57,089.089 INFO    ] time= 28/10/2026 03:39:57
[2026-10-28 03:39:57,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:39:57,144.144 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:39:57,303.303 INFO    ] No existing commands found in stream
[2026-10-28 03:40:02,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:40:02,317.317 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 03:40:08,354.354 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:40:08,357.357 INFO    ] Checking for system updates...
[2026-10-28 03:40:08,396.396 INFO    ] 200
[2026-10-28 03:40:08,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:40:08,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:40:08,462.462 INFO    ] No update needed
[2026-10-28 03:40:08,465.465 INFO    ] Checking for camera pi updates...
[2026-10-28 03:40:08,502.502 INFO    ] 200
[2026-10-28 03:40:08,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:40:08,549.549 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:40:08,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:40:08,644.644 INFO    ] No camera update needed
[2026-10-28 03:40:08,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:40:08,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:40:08,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:40:08,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:40:10,701.701 INFO    ] ================================================
[2026-10-28 03:40:10,716.716 INFO    ] Launching Daemon at Wed Oct 28 03:40:10 IST 2026
[2026-10-28 03:40:10,727.727 INFO    ] ================================================
[2026-10-28 03:40:11,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:40:11
[2026-10-28 03:40:11,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:40:12,175.175 INFO    ] Initializing speech engine...
[2026-10-28 03:40:12,184.184 INFO    ] 2026-10-28 03:40:12
[2026-10-28 03:40:12,434.434 INFO    ] 2026-10-28 03:40:12
[2026-10-28 03:40:12,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:40:12,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:40:12,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:40:12,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:40:12,951.951 INFO    ] time= 28/10/2026 03:40:12
[2026-10-28 03:40:13,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:40:13,012.012 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:40:13,162.162 INFO    ] No existing commands found in stream
[2026-10-28 03:40:18,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:40:18,192.192 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 03:40:20,156.156 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:40:20,160.160 INFO    ] Checking for system updates...
[2026-10-28 03:40:20,196.196 INFO    ] 200
[2026-10-28 03:40:20,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:40:20,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:40:20,255.255 INFO    ] No update needed
[2026-10-28 03:40:20,258.258 INFO    ] Checking for camera pi updates...
[2026-10-28 03:40:20,293.293 INFO    ] 200
[2026-10-28 03:40:20,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:40:20,337.337 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:40:20,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:40:20,440.440 INFO    ] No camera update needed
[2026-10-28 03:40:20,443.443 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:40:20,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:40:20,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:40:20,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:40:22,499.499 INFO    ] ================================================
[2026-10-28 03:40:22,514.514 INFO    ] Launching Daemon at Wed Oct 28 03:40:22 IST 2026
[2026-10-28 03:40:22,526.526 INFO    ] ================================================
[2026-10-28 03:40:23,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:40:23
[2026-10-28 03:40:23,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:40:23,927.927 INFO    ] Initializing speech engine...
[2026-10-28 03:40:23,932.932 INFO    ] 2026-10-28 03:40:23
[2026-10-28 03:40:24,207.207 INFO    ] 2026-10-28 03:40:24
[2026-10-28 03:40:24,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:40:24,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:40:24,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:40:24,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:40:24,774.774 INFO    ] time= 28/10/2026 03:40:24
[2026-10-28 03:40:24,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:40:24,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:40:24,929.929 INFO    ] No existing commands found in stream
[2026-10-28 03:40:29,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:40:29,945.945 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-28 03:40:32,498.498 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:40:32,501.501 INFO    ] Checking for system updates...
[2026-10-28 03:40:32,541.541 INFO    ] 200
[2026-10-28 03:40:32,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:40:32,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:40:32,616.616 INFO    ] No update needed
[2026-10-28 03:40:32,619.619 INFO    ] Checking for camera pi updates...
[2026-10-28 03:40:32,660.660 INFO    ] 200
[2026-10-28 03:40:32,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:40:32,711.711 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:40:32,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:40:32,819.819 INFO    ] No camera update needed
[2026-10-28 03:40:32,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:40:32,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:40:32,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:40:32,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:40:34,887.887 INFO    ] ================================================
[2026-10-28 03:40:34,902.902 INFO    ] Launching Daemon at Wed Oct 28 03:40:34 IST 2026
[2026-10-28 03:40:34,916.916 INFO    ] ================================================
[2026-10-28 03:40:35,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:40:35
[2026-10-28 03:40:36,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:40:36,544.544 INFO    ] Initializing speech engine...
[2026-10-28 03:40:36,555.555 INFO    ] 2026-10-28 03:40:36
[2026-10-28 03:40:36,825.825 INFO    ] 2026-10-28 03:40:36
[2026-10-28 03:40:36,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:40:37,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:40:37,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:40:37,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:40:37,434.434 INFO    ] time= 28/10/2026 03:40:37
[2026-10-28 03:40:37,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:40:37,467.467 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:40:37,600.600 INFO    ] No existing commands found in stream
[2026-10-28 03:40:42,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:40:42,631.631 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-28 03:40:43,621.621 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:40:43,624.624 INFO    ] Checking for system updates...
[2026-10-28 03:40:43,663.663 INFO    ] 200
[2026-10-28 03:40:43,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:40:43,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:40:43,726.726 INFO    ] No update needed
[2026-10-28 03:40:43,729.729 INFO    ] Checking for camera pi updates...
[2026-10-28 03:40:43,763.763 INFO    ] 200
[2026-10-28 03:40:43,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:40:43,810.810 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:40:43,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:40:43,899.899 INFO    ] No camera update needed
[2026-10-28 03:40:43,901.901 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:40:43,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:40:43,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:40:43,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:40:45,954.954 INFO    ] ================================================
[2026-10-28 03:40:45,969.969 INFO    ] Launching Daemon at Wed Oct 28 03:40:45 IST 2026
[2026-10-28 03:40:45,980.980 INFO    ] ================================================
[2026-10-28 03:40:46,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:40:46
[2026-10-28 03:40:47,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:40:47,449.449 INFO    ] Initializing speech engine...
[2026-10-28 03:40:47,458.458 INFO    ] 2026-10-28 03:40:47
[2026-10-28 03:40:47,705.705 INFO    ] 2026-10-28 03:40:47
[2026-10-28 03:40:47,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:40:48,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:40:48,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:40:48,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:40:48,285.285 INFO    ] time= 28/10/2026 03:40:48
[2026-10-28 03:40:48,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:40:48,313.313 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:40:48,460.460 INFO    ] No existing commands found in stream
[2026-10-28 03:40:53,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:40:53,475.475 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-28 03:40:57,568.568 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:40:57,571.571 INFO    ] Checking for system updates...
[2026-10-28 03:40:57,607.607 INFO    ] 200
[2026-10-28 03:40:57,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:40:57,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:40:57,665.665 INFO    ] No update needed
[2026-10-28 03:40:57,667.667 INFO    ] Checking for camera pi updates...
[2026-10-28 03:40:57,700.700 INFO    ] 200
[2026-10-28 03:40:57,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:40:57,743.743 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:40:57,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:40:57,822.822 INFO    ] No camera update needed
[2026-10-28 03:40:57,824.824 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:40:57,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:40:57,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:40:57,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:40:59,885.885 INFO    ] ================================================
[2026-10-28 03:40:59,900.900 INFO    ] Launching Daemon at Wed Oct 28 03:40:59 IST 2026
[2026-10-28 03:40:59,911.911 INFO    ] ================================================
[2026-10-28 03:41:00,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:41:00
[2026-10-28 03:41:01,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:41:01,557.557 INFO    ] Initializing speech engine...
[2026-10-28 03:41:01,561.561 INFO    ] 2026-10-28 03:41:01
[2026-10-28 03:41:01,896.896 INFO    ] 2026-10-28 03:41:01
[2026-10-28 03:41:01,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:41:02,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:41:02,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:41:02,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:41:02,454.454 INFO    ] time= 28/10/2026 03:41:02
[2026-10-28 03:41:02,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:41:02,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:41:02,639.639 INFO    ] No existing commands found in stream
[2026-10-28 03:41:07,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:41:07,676.676 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 03:41:11,856.856 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:41:11,859.859 INFO    ] Checking for system updates...
[2026-10-28 03:41:11,897.897 INFO    ] 200
[2026-10-28 03:41:11,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:41:11,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:41:11,954.954 INFO    ] No update needed
[2026-10-28 03:41:11,956.956 INFO    ] Checking for camera pi updates...
[2026-10-28 03:41:11,989.989 INFO    ] 200
[2026-10-28 03:41:11,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:41:12,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:41:12,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:41:12,109.109 INFO    ] No camera update needed
[2026-10-28 03:41:12,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:41:12,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:41:12,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:41:12,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:41:14,165.165 INFO    ] ================================================
[2026-10-28 03:41:14,180.180 INFO    ] Launching Daemon at Wed Oct 28 03:41:14 IST 2026
[2026-10-28 03:41:14,192.192 INFO    ] ================================================
[2026-10-28 03:41:14,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:41:14
[2026-10-28 03:41:15,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:41:15,616.616 INFO    ] Initializing speech engine...
[2026-10-28 03:41:15,621.621 INFO    ] 2026-10-28 03:41:15
[2026-10-28 03:41:15,870.870 INFO    ] 2026-10-28 03:41:15
[2026-10-28 03:41:15,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:41:16,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:41:16,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:41:16,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:41:16,422.422 INFO    ] time= 28/10/2026 03:41:16
[2026-10-28 03:41:16,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:41:16,445.445 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:41:16,570.570 INFO    ] No existing commands found in stream
[2026-10-28 03:41:21,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:41:21,588.588 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 03:41:23,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:41:23,499.499 INFO    ] Checking for system updates...
[2026-10-28 03:41:23,539.539 INFO    ] 200
[2026-10-28 03:41:23,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:41:23,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:41:23,596.596 INFO    ] No update needed
[2026-10-28 03:41:23,598.598 INFO    ] Checking for camera pi updates...
[2026-10-28 03:41:23,635.635 INFO    ] 200
[2026-10-28 03:41:23,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:41:23,677.677 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:41:23,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:41:23,811.811 INFO    ] No camera update needed
[2026-10-28 03:41:23,814.814 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:41:23,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:41:23,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:41:23,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:41:25,867.867 INFO    ] ================================================
[2026-10-28 03:41:25,883.883 INFO    ] Launching Daemon at Wed Oct 28 03:41:25 IST 2026
[2026-10-28 03:41:25,894.894 INFO    ] ================================================
[2026-10-28 03:41:26,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:41:26
[2026-10-28 03:41:27,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:41:27,499.499 INFO    ] Initializing speech engine...
[2026-10-28 03:41:27,507.507 INFO    ] 2026-10-28 03:41:27
[2026-10-28 03:41:27,779.779 INFO    ] 2026-10-28 03:41:27
[2026-10-28 03:41:27,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:41:28,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:41:28,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:41:28,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:41:28,340.340 INFO    ] time= 28/10/2026 03:41:28
[2026-10-28 03:41:28,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:41:28,377.377 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:41:28,483.483 INFO    ] No existing commands found in stream
[2026-10-28 03:41:33,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:41:33,519.519 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 03:41:34,212.212 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:41:34,216.216 INFO    ] Checking for system updates...
[2026-10-28 03:41:34,258.258 INFO    ] 200
[2026-10-28 03:41:34,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:41:34,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:41:34,321.321 INFO    ] No update needed
[2026-10-28 03:41:34,324.324 INFO    ] Checking for camera pi updates...
[2026-10-28 03:41:34,359.359 INFO    ] 200
[2026-10-28 03:41:34,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:41:34,402.402 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:41:34,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:41:34,504.504 INFO    ] No camera update needed
[2026-10-28 03:41:34,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:41:34,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:41:34,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:41:34,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:41:36,560.560 INFO    ] ================================================
[2026-10-28 03:41:36,575.575 INFO    ] Launching Daemon at Wed Oct 28 03:41:36 IST 2026
[2026-10-28 03:41:36,586.586 INFO    ] ================================================
[2026-10-28 03:41:37,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:41:37
[2026-10-28 03:41:37,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:41:38,186.186 INFO    ] Initializing speech engine...
[2026-10-28 03:41:38,194.194 INFO    ] 2026-10-28 03:41:38
[2026-10-28 03:41:38,509.509 INFO    ] 2026-10-28 03:41:38
[2026-10-28 03:41:38,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:41:38,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:41:38,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:41:39,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:41:39,217.217 INFO    ] time= 28/10/2026 03:41:39
[2026-10-28 03:41:39,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:41:39,288.288 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:41:39,419.419 INFO    ] No existing commands found in stream
[2026-10-28 03:41:44,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:41:44,436.436 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-28 03:41:47,465.465 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:41:47,468.468 INFO    ] Checking for system updates...
[2026-10-28 03:41:47,678.678 INFO    ] 200
[2026-10-28 03:41:47,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:41:47,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:41:47,745.745 INFO    ] No update needed
[2026-10-28 03:41:47,748.748 INFO    ] Checking for camera pi updates...
[2026-10-28 03:41:47,787.787 INFO    ] 200
[2026-10-28 03:41:47,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:41:47,831.831 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:41:47,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:41:47,936.936 INFO    ] No camera update needed
[2026-10-28 03:41:47,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:41:47,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:41:47,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:41:47,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:41:50,995.995 INFO    ] ================================================
[2026-10-28 03:41:50,011.011 INFO    ] Launching Daemon at Wed Oct 28 03:41:50 IST 2026
[2026-10-28 03:41:50,022.022 INFO    ] ================================================
[2026-10-28 03:41:50,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:41:50
[2026-10-28 03:41:51,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:41:51,443.443 INFO    ] Initializing speech engine...
[2026-10-28 03:41:51,452.452 INFO    ] 2026-10-28 03:41:51
[2026-10-28 03:41:51,700.700 INFO    ] 2026-10-28 03:41:51
[2026-10-28 03:41:51,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:41:52,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:41:52,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:41:52,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:41:52,271.271 INFO    ] time= 28/10/2026 03:41:52
[2026-10-28 03:41:52,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:41:52,312.312 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:41:52,443.443 INFO    ] No existing commands found in stream
[2026-10-28 03:41:57,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:41:57,477.477 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-28 03:41:59,117.117 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:41:59,120.120 INFO    ] Checking for system updates...
[2026-10-28 03:41:59,159.159 INFO    ] 200
[2026-10-28 03:41:59,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:41:59,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:41:59,227.227 INFO    ] No update needed
[2026-10-28 03:41:59,230.230 INFO    ] Checking for camera pi updates...
[2026-10-28 03:41:59,263.263 INFO    ] 200
[2026-10-28 03:41:59,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:41:59,311.311 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:41:59,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:41:59,396.396 INFO    ] No camera update needed
[2026-10-28 03:41:59,398.398 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:41:59,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:41:59,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:41:59,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:42:01,451.451 INFO    ] ================================================
[2026-10-28 03:42:01,466.466 INFO    ] Launching Daemon at Wed Oct 28 03:42:01 IST 2026
[2026-10-28 03:42:01,477.477 INFO    ] ================================================
[2026-10-28 03:42:02,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:42:02
[2026-10-28 03:42:02,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:42:03,226.226 INFO    ] Initializing speech engine...
[2026-10-28 03:42:03,236.236 INFO    ] 2026-10-28 03:42:03
[2026-10-28 03:42:03,545.545 INFO    ] 2026-10-28 03:42:03
[2026-10-28 03:42:03,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:42:03,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:42:04,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:42:04,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:42:04,307.307 INFO    ] time= 28/10/2026 03:42:04
[2026-10-28 03:42:04,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:42:04,422.422 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:42:04,567.567 INFO    ] No existing commands found in stream
[2026-10-28 03:42:09,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:42:09,579.579 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-28 03:42:10,815.815 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:42:10,818.818 INFO    ] Checking for system updates...
[2026-10-28 03:42:10,855.855 INFO    ] 200
[2026-10-28 03:42:10,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:42:10,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:42:10,913.913 INFO    ] No update needed
[2026-10-28 03:42:10,916.916 INFO    ] Checking for camera pi updates...
[2026-10-28 03:42:10,950.950 INFO    ] 200
[2026-10-28 03:42:10,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:42:10,994.994 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:42:11,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:42:11,048.048 INFO    ] No camera update needed
[2026-10-28 03:42:11,051.051 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:42:11,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:42:11,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:42:11,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:42:13,107.107 INFO    ] ================================================
[2026-10-28 03:42:13,122.122 INFO    ] Launching Daemon at Wed Oct 28 03:42:13 IST 2026
[2026-10-28 03:42:13,134.134 INFO    ] ================================================
[2026-10-28 03:42:13,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:42:13
[2026-10-28 03:42:14,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:42:14,588.588 INFO    ] Initializing speech engine...
[2026-10-28 03:42:14,595.595 INFO    ] 2026-10-28 03:42:14
[2026-10-28 03:42:14,855.855 INFO    ] 2026-10-28 03:42:14
[2026-10-28 03:42:14,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:42:15,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:42:15,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:42:15,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:42:15,571.571 INFO    ] time= 28/10/2026 03:42:15
[2026-10-28 03:42:15,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:42:15,662.662 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:42:15,834.834 INFO    ] No existing commands found in stream
[2026-10-28 03:42:20,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:42:20,861.861 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-28 03:42:22,304.304 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:42:22,306.306 INFO    ] Checking for system updates...
[2026-10-28 03:42:22,347.347 INFO    ] 200
[2026-10-28 03:42:22,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:42:22,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:42:22,406.406 INFO    ] No update needed
[2026-10-28 03:42:22,408.408 INFO    ] Checking for camera pi updates...
[2026-10-28 03:42:22,441.441 INFO    ] 200
[2026-10-28 03:42:22,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:42:22,485.485 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:42:22,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:42:22,567.567 INFO    ] No camera update needed
[2026-10-28 03:42:22,569.569 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:42:22,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:42:22,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:42:22,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:42:24,622.622 INFO    ] ================================================
[2026-10-28 03:42:24,638.638 INFO    ] Launching Daemon at Wed Oct 28 03:42:24 IST 2026
[2026-10-28 03:42:24,649.649 INFO    ] ================================================
[2026-10-28 03:42:25,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:42:25
[2026-10-28 03:42:25,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:42:26,284.284 INFO    ] Initializing speech engine...
[2026-10-28 03:42:26,292.292 INFO    ] 2026-10-28 03:42:26
[2026-10-28 03:42:26,585.585 INFO    ] 2026-10-28 03:42:26
[2026-10-28 03:42:26,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:42:26,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:42:26,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:42:27,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:42:27,273.273 INFO    ] time= 28/10/2026 03:42:27
[2026-10-28 03:42:27,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:42:27,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:42:27,498.498 INFO    ] No existing commands found in stream
[2026-10-28 03:42:32,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:42:32,527.527 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-28 03:42:35,423.423 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:42:35,426.426 INFO    ] Checking for system updates...
[2026-10-28 03:42:35,464.464 INFO    ] 200
[2026-10-28 03:42:35,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:42:35,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:42:35,524.524 INFO    ] No update needed
[2026-10-28 03:42:35,527.527 INFO    ] Checking for camera pi updates...
[2026-10-28 03:42:35,566.566 INFO    ] 200
[2026-10-28 03:42:35,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:42:35,620.620 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:42:35,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:42:35,716.716 INFO    ] No camera update needed
[2026-10-28 03:42:35,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:42:35,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:42:35,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:42:35,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:42:37,777.777 INFO    ] ================================================
[2026-10-28 03:42:37,793.793 INFO    ] Launching Daemon at Wed Oct 28 03:42:37 IST 2026
[2026-10-28 03:42:37,804.804 INFO    ] ================================================
[2026-10-28 03:42:38,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:42:38
[2026-10-28 03:42:39,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:42:39,477.477 INFO    ] Initializing speech engine...
[2026-10-28 03:42:39,491.491 INFO    ] 2026-10-28 03:42:39
[2026-10-28 03:42:39,806.806 INFO    ] 2026-10-28 03:42:39
[2026-10-28 03:42:39,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:42:40,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:42:40,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:42:40,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:42:40,332.332 INFO    ] time= 28/10/2026 03:42:40
[2026-10-28 03:42:40,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:42:40,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:42:40,515.515 INFO    ] No existing commands found in stream
[2026-10-28 03:42:45,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:42:45,545.545 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-28 03:42:46,200.200 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:42:46,204.204 INFO    ] Checking for system updates...
[2026-10-28 03:42:46,248.248 INFO    ] 200
[2026-10-28 03:42:46,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:42:46,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:42:46,315.315 INFO    ] No update needed
[2026-10-28 03:42:46,319.319 INFO    ] Checking for camera pi updates...
[2026-10-28 03:42:46,356.356 INFO    ] 200
[2026-10-28 03:42:46,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:42:46,401.401 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:42:46,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:42:46,482.482 INFO    ] No camera update needed
[2026-10-28 03:42:46,486.486 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:42:46,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:42:46,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:42:46,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:42:48,543.543 INFO    ] ================================================
[2026-10-28 03:42:48,558.558 INFO    ] Launching Daemon at Wed Oct 28 03:42:48 IST 2026
[2026-10-28 03:42:48,570.570 INFO    ] ================================================
[2026-10-28 03:42:49,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:42:49
[2026-10-28 03:42:49,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:42:50,261.261 INFO    ] Initializing speech engine...
[2026-10-28 03:42:50,270.270 INFO    ] 2026-10-28 03:42:50
[2026-10-28 03:42:50,558.558 INFO    ] 2026-10-28 03:42:50
[2026-10-28 03:42:50,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:42:50,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:42:50,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:42:51,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:42:51,103.103 INFO    ] time= 28/10/2026 03:42:51
[2026-10-28 03:42:51,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:42:51,141.141 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:42:51,267.267 INFO    ] No existing commands found in stream
[2026-10-28 03:42:56,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:42:56,296.296 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-28 03:42:57,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:42:57,307.307 INFO    ] Checking for system updates...
[2026-10-28 03:42:57,342.342 INFO    ] 200
[2026-10-28 03:42:57,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:42:57,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:42:57,407.407 INFO    ] No update needed
[2026-10-28 03:42:57,409.409 INFO    ] Checking for camera pi updates...
[2026-10-28 03:42:57,442.442 INFO    ] 200
[2026-10-28 03:42:57,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:42:57,487.487 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:42:57,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:42:57,556.556 INFO    ] No camera update needed
[2026-10-28 03:42:57,559.559 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:42:57,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:42:57,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:42:57,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:42:59,613.613 INFO    ] ================================================
[2026-10-28 03:42:59,629.629 INFO    ] Launching Daemon at Wed Oct 28 03:42:59 IST 2026
[2026-10-28 03:42:59,640.640 INFO    ] ================================================
[2026-10-28 03:43:00,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:43:00
[2026-10-28 03:43:00,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:43:01,058.058 INFO    ] Initializing speech engine...
[2026-10-28 03:43:01,074.074 INFO    ] 2026-10-28 03:43:01
[2026-10-28 03:43:01,362.362 INFO    ] 2026-10-28 03:43:01
[2026-10-28 03:43:01,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:43:01,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:43:01,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:43:01,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:43:01,812.812 INFO    ] time= 28/10/2026 03:43:01
[2026-10-28 03:43:01,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:43:01,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:43:01,887.887 INFO    ] No existing commands found in stream
[2026-10-28 03:43:06,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:43:06,900.900 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 03:43:07,944.944 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:43:07,946.946 INFO    ] Checking for system updates...
[2026-10-28 03:43:07,981.981 INFO    ] 200
[2026-10-28 03:43:07,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:43:08,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:43:08,046.046 INFO    ] No update needed
[2026-10-28 03:43:08,048.048 INFO    ] Checking for camera pi updates...
[2026-10-28 03:43:08,082.082 INFO    ] 200
[2026-10-28 03:43:08,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:43:08,127.127 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:43:08,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:43:08,205.205 INFO    ] No camera update needed
[2026-10-28 03:43:08,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:43:08,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:43:08,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:43:08,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:43:10,260.260 INFO    ] ================================================
[2026-10-28 03:43:10,275.275 INFO    ] Launching Daemon at Wed Oct 28 03:43:10 IST 2026
[2026-10-28 03:43:10,286.286 INFO    ] ================================================
[2026-10-28 03:43:10,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:43:10
[2026-10-28 03:43:11,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:43:11,725.725 INFO    ] Initializing speech engine...
[2026-10-28 03:43:11,732.732 INFO    ] 2026-10-28 03:43:11
[2026-10-28 03:43:12,032.032 INFO    ] 2026-10-28 03:43:11
[2026-10-28 03:43:12,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:43:12,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:43:12,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:43:12,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:43:12,553.553 INFO    ] time= 28/10/2026 03:43:12
[2026-10-28 03:43:12,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:43:12,678.678 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:43:12,809.809 INFO    ] No existing commands found in stream
[2026-10-28 03:43:17,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:43:17,829.829 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 03:43:19,210.210 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:43:19,213.213 INFO    ] Checking for system updates...
[2026-10-28 03:43:19,248.248 INFO    ] 200
[2026-10-28 03:43:19,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:43:19,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:43:19,305.305 INFO    ] No update needed
[2026-10-28 03:43:19,307.307 INFO    ] Checking for camera pi updates...
[2026-10-28 03:43:19,340.340 INFO    ] 200
[2026-10-28 03:43:19,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:43:19,382.382 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:43:19,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:43:19,461.461 INFO    ] No camera update needed
[2026-10-28 03:43:19,463.463 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:43:19,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:43:19,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:43:19,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:43:21,517.517 INFO    ] ================================================
[2026-10-28 03:43:21,532.532 INFO    ] Launching Daemon at Wed Oct 28 03:43:21 IST 2026
[2026-10-28 03:43:21,543.543 INFO    ] ================================================
[2026-10-28 03:43:22,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:43:22
[2026-10-28 03:43:22,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:43:22,999.999 INFO    ] Initializing speech engine...
[2026-10-28 03:43:23,007.007 INFO    ] 2026-10-28 03:43:23
[2026-10-28 03:43:23,255.255 INFO    ] 2026-10-28 03:43:23
[2026-10-28 03:43:23,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:43:23,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:43:23,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:43:23,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:43:23,815.815 INFO    ] time= 28/10/2026 03:43:23
[2026-10-28 03:43:23,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:43:23,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:43:23,983.983 INFO    ] No existing commands found in stream
[2026-10-28 03:43:29,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:43:29,016.016 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-28 03:43:29,877.877 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:43:29,880.880 INFO    ] Checking for system updates...
[2026-10-28 03:43:29,920.920 INFO    ] 200
[2026-10-28 03:43:29,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:43:29,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:43:29,979.979 INFO    ] No update needed
[2026-10-28 03:43:29,981.981 INFO    ] Checking for camera pi updates...
[2026-10-28 03:43:30,019.019 INFO    ] 200
[2026-10-28 03:43:30,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:43:30,069.069 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:43:30,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:43:30,162.162 INFO    ] No camera update needed
[2026-10-28 03:43:30,165.165 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:43:30,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:43:30,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:43:30,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:43:32,222.222 INFO    ] ================================================
[2026-10-28 03:43:32,237.237 INFO    ] Launching Daemon at Wed Oct 28 03:43:32 IST 2026
[2026-10-28 03:43:32,249.249 INFO    ] ================================================
[2026-10-28 03:43:32,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:43:32
[2026-10-28 03:43:33,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:43:33,750.750 INFO    ] Initializing speech engine...
[2026-10-28 03:43:33,766.766 INFO    ] 2026-10-28 03:43:33
[2026-10-28 03:43:34,032.032 INFO    ] 2026-10-28 03:43:34
[2026-10-28 03:43:34,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:43:34,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:43:34,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:43:34,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:43:34,621.621 INFO    ] time= 28/10/2026 03:43:34
[2026-10-28 03:43:34,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:43:34,652.652 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:43:34,788.788 INFO    ] No existing commands found in stream
[2026-10-28 03:43:39,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:43:39,805.805 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-28 03:43:44,241.241 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:43:44,244.244 INFO    ] Checking for system updates...
[2026-10-28 03:43:44,280.280 INFO    ] 200
[2026-10-28 03:43:44,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:43:44,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:43:44,339.339 INFO    ] No update needed
[2026-10-28 03:43:44,344.344 INFO    ] Checking for camera pi updates...
[2026-10-28 03:43:44,381.381 INFO    ] 200
[2026-10-28 03:43:44,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:43:44,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:43:44,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:43:44,622.622 INFO    ] No camera update needed
[2026-10-28 03:43:44,625.625 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:43:44,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:43:44,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:43:44,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:43:46,678.678 INFO    ] ================================================
[2026-10-28 03:43:46,694.694 INFO    ] Launching Daemon at Wed Oct 28 03:43:46 IST 2026
[2026-10-28 03:43:46,705.705 INFO    ] ================================================
[2026-10-28 03:43:47,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:43:47
[2026-10-28 03:43:47,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:43:48,138.138 INFO    ] Initializing speech engine...
[2026-10-28 03:43:48,146.146 INFO    ] 2026-10-28 03:43:48
[2026-10-28 03:43:48,396.396 INFO    ] 2026-10-28 03:43:48
[2026-10-28 03:43:48,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:43:48,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:43:48,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:43:48,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:43:48,953.953 INFO    ] time= 28/10/2026 03:43:48
[2026-10-28 03:43:48,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:43:48,979.979 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:43:49,092.092 INFO    ] No existing commands found in stream
[2026-10-28 03:43:54,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:43:54,119.119 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-28 03:43:56,358.358 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:43:56,360.360 INFO    ] Checking for system updates...
[2026-10-28 03:43:56,400.400 INFO    ] 200
[2026-10-28 03:43:56,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:43:56,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:43:56,458.458 INFO    ] No update needed
[2026-10-28 03:43:56,460.460 INFO    ] Checking for camera pi updates...
[2026-10-28 03:43:56,494.494 INFO    ] 200
[2026-10-28 03:43:56,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:43:56,537.537 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:43:56,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:43:56,618.618 INFO    ] No camera update needed
[2026-10-28 03:43:56,620.620 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:43:56,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:43:56,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:43:56,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:43:58,673.673 INFO    ] ================================================
[2026-10-28 03:43:58,688.688 INFO    ] Launching Daemon at Wed Oct 28 03:43:58 IST 2026
[2026-10-28 03:43:58,699.699 INFO    ] ================================================
[2026-10-28 03:43:59,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:43:59
[2026-10-28 03:43:59,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:44:00,110.110 INFO    ] Initializing speech engine...
[2026-10-28 03:44:00,117.117 INFO    ] 2026-10-28 03:44:00
[2026-10-28 03:44:00,386.386 INFO    ] 2026-10-28 03:44:00
[2026-10-28 03:44:00,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:44:00,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:44:00,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:44:00,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:44:00,918.918 INFO    ] time= 28/10/2026 03:44:00
[2026-10-28 03:44:00,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:44:00,967.967 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:44:01,040.040 INFO    ] No existing commands found in stream
[2026-10-28 03:44:06,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:44:06,053.053 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-28 03:44:07,781.781 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:44:07,784.784 INFO    ] Checking for system updates...
[2026-10-28 03:44:07,824.824 INFO    ] 200
[2026-10-28 03:44:07,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:44:07,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:44:07,881.881 INFO    ] No update needed
[2026-10-28 03:44:07,884.884 INFO    ] Checking for camera pi updates...
[2026-10-28 03:44:07,917.917 INFO    ] 200
[2026-10-28 03:44:07,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:44:07,959.959 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:44:08,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:44:08,066.066 INFO    ] No camera update needed
[2026-10-28 03:44:08,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:44:08,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:44:08,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:44:08,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:44:10,122.122 INFO    ] ================================================
[2026-10-28 03:44:10,137.137 INFO    ] Launching Daemon at Wed Oct 28 03:44:10 IST 2026
[2026-10-28 03:44:10,147.147 INFO    ] ================================================
[2026-10-28 03:44:10,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:44:10
[2026-10-28 03:44:11,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:44:11,725.725 INFO    ] Initializing speech engine...
[2026-10-28 03:44:11,736.736 INFO    ] 2026-10-28 03:44:11
[2026-10-28 03:44:12,016.016 INFO    ] 2026-10-28 03:44:12
[2026-10-28 03:44:12,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:44:12,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:44:12,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:44:12,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:44:12,577.577 INFO    ] time= 28/10/2026 03:44:12
[2026-10-28 03:44:12,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:44:12,630.630 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:44:12,750.750 INFO    ] No existing commands found in stream
[2026-10-28 03:44:17,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:44:17,779.779 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 03:44:21,377.377 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:44:21,380.380 INFO    ] Checking for system updates...
[2026-10-28 03:44:21,417.417 INFO    ] 200
[2026-10-28 03:44:21,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:44:21,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:44:21,477.477 INFO    ] No update needed
[2026-10-28 03:44:21,479.479 INFO    ] Checking for camera pi updates...
[2026-10-28 03:44:21,514.514 INFO    ] 200
[2026-10-28 03:44:21,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:44:21,559.559 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:44:21,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:44:21,639.639 INFO    ] No camera update needed
[2026-10-28 03:44:21,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:44:21,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:44:21,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:44:21,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:44:23,698.698 INFO    ] ================================================
[2026-10-28 03:44:23,713.713 INFO    ] Launching Daemon at Wed Oct 28 03:44:23 IST 2026
[2026-10-28 03:44:23,723.723 INFO    ] ================================================
[2026-10-28 03:44:24,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:44:24
[2026-10-28 03:44:24,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:44:25,149.149 INFO    ] Initializing speech engine...
[2026-10-28 03:44:25,156.156 INFO    ] 2026-10-28 03:44:25
[2026-10-28 03:44:25,414.414 INFO    ] 2026-10-28 03:44:25
[2026-10-28 03:44:25,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:44:25,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:44:25,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:44:25,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:44:25,929.929 INFO    ] time= 28/10/2026 03:44:25
[2026-10-28 03:44:25,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:44:25,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:44:26,122.122 INFO    ] No existing commands found in stream
[2026-10-28 03:44:31,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:44:31,150.150 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-28 03:44:35,197.197 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:44:35,199.199 INFO    ] Checking for system updates...
[2026-10-28 03:44:35,235.235 INFO    ] 200
[2026-10-28 03:44:35,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:44:35,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:44:35,293.293 INFO    ] No update needed
[2026-10-28 03:44:35,295.295 INFO    ] Checking for camera pi updates...
[2026-10-28 03:44:35,329.329 INFO    ] 200
[2026-10-28 03:44:35,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:44:35,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:44:35,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:44:35,449.449 INFO    ] No camera update needed
[2026-10-28 03:44:35,451.451 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:44:35,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:44:35,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:44:35,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:44:37,506.506 INFO    ] ================================================
[2026-10-28 03:44:37,521.521 INFO    ] Launching Daemon at Wed Oct 28 03:44:37 IST 2026
[2026-10-28 03:44:37,531.531 INFO    ] ================================================
[2026-10-28 03:44:38,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:44:38
[2026-10-28 03:44:38,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:44:39,098.098 INFO    ] Initializing speech engine...
[2026-10-28 03:44:39,109.109 INFO    ] 2026-10-28 03:44:39
[2026-10-28 03:44:39,422.422 INFO    ] 2026-10-28 03:44:39
[2026-10-28 03:44:39,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:44:39,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:44:39,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:44:40,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:44:40,148.148 INFO    ] time= 28/10/2026 03:44:40
[2026-10-28 03:44:40,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:44:40,262.262 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:44:40,475.475 INFO    ] No existing commands found in stream
[2026-10-28 03:44:45,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:44:45,506.506 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-28 03:44:47,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:44:47,178.178 INFO    ] Checking for system updates...
[2026-10-28 03:44:47,215.215 INFO    ] 200
[2026-10-28 03:44:47,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:44:47,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:44:47,282.282 INFO    ] No update needed
[2026-10-28 03:44:47,285.285 INFO    ] Checking for camera pi updates...
[2026-10-28 03:44:47,319.319 INFO    ] 200
[2026-10-28 03:44:47,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:44:47,361.361 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:44:47,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:44:47,431.431 INFO    ] No camera update needed
[2026-10-28 03:44:47,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:44:47,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:44:47,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:44:47,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:44:49,488.488 INFO    ] ================================================
[2026-10-28 03:44:49,503.503 INFO    ] Launching Daemon at Wed Oct 28 03:44:49 IST 2026
[2026-10-28 03:44:49,514.514 INFO    ] ================================================
[2026-10-28 03:44:50,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:44:50
[2026-10-28 03:44:50,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:44:50,926.926 INFO    ] Initializing speech engine...
[2026-10-28 03:44:50,935.935 INFO    ] 2026-10-28 03:44:50
[2026-10-28 03:44:51,183.183 INFO    ] 2026-10-28 03:44:51
[2026-10-28 03:44:51,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:44:51,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:44:51,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:44:51,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:44:51,739.739 INFO    ] time= 28/10/2026 03:44:51
[2026-10-28 03:44:51,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:44:51,784.784 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:44:51,891.891 INFO    ] No existing commands found in stream
[2026-10-28 03:44:56,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:44:56,909.909 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-28 03:44:58,157.157 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:44:58,160.160 INFO    ] Checking for system updates...
[2026-10-28 03:44:58,200.200 INFO    ] 200
[2026-10-28 03:44:58,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:44:58,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:44:58,259.259 INFO    ] No update needed
[2026-10-28 03:44:58,261.261 INFO    ] Checking for camera pi updates...
[2026-10-28 03:44:58,295.295 INFO    ] 200
[2026-10-28 03:44:58,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:44:58,338.338 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:44:58,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:44:58,431.431 INFO    ] No camera update needed
[2026-10-28 03:44:58,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:44:58,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:44:58,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:44:58,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:45:00,490.490 INFO    ] ================================================
[2026-10-28 03:45:00,505.505 INFO    ] Launching Daemon at Wed Oct 28 03:45:00 IST 2026
[2026-10-28 03:45:00,516.516 INFO    ] ================================================
[2026-10-28 03:45:01,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:45:01
[2026-10-28 03:45:02,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:45:02,642.642 INFO    ] Initializing speech engine...
[2026-10-28 03:45:02,653.653 INFO    ] 2026-10-28 03:45:02
[2026-10-28 03:45:02,963.963 INFO    ] 2026-10-28 03:45:02
[2026-10-28 03:45:03,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:45:03,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:45:03,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:45:03,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:45:03,534.534 INFO    ] time= 28/10/2026 03:45:03
[2026-10-28 03:45:03,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:45:03,641.641 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:45:03,783.783 INFO    ] No existing commands found in stream
[2026-10-28 03:45:08,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:45:08,810.810 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-28 03:45:12,240.240 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:45:12,243.243 INFO    ] Checking for system updates...
[2026-10-28 03:45:12,279.279 INFO    ] 200
[2026-10-28 03:45:12,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:45:12,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:45:12,337.337 INFO    ] No update needed
[2026-10-28 03:45:12,339.339 INFO    ] Checking for camera pi updates...
[2026-10-28 03:45:12,373.373 INFO    ] 200
[2026-10-28 03:45:12,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:45:12,422.422 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:45:12,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:45:12,518.518 INFO    ] No camera update needed
[2026-10-28 03:45:12,520.520 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:45:12,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:45:12,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:45:12,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:45:14,575.575 INFO    ] ================================================
[2026-10-28 03:45:14,591.591 INFO    ] Launching Daemon at Wed Oct 28 03:45:14 IST 2026
[2026-10-28 03:45:14,602.602 INFO    ] ================================================
[2026-10-28 03:45:15,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:45:15
[2026-10-28 03:45:15,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:45:16,009.009 INFO    ] Initializing speech engine...
[2026-10-28 03:45:16,029.029 INFO    ] 2026-10-28 03:45:16
[2026-10-28 03:45:16,279.279 INFO    ] 2026-10-28 03:45:16
[2026-10-28 03:45:16,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:45:16,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:45:16,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:45:16,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:45:16,832.832 INFO    ] time= 28/10/2026 03:45:16
[2026-10-28 03:45:16,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:45:16,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:45:16,982.982 INFO    ] No existing commands found in stream
[2026-10-28 03:45:21,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:45:22,000.000 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-28 03:45:24,570.570 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:45:24,572.572 INFO    ] Checking for system updates...
[2026-10-28 03:45:24,608.608 INFO    ] 200
[2026-10-28 03:45:24,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:45:24,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:45:24,665.665 INFO    ] No update needed
[2026-10-28 03:45:24,668.668 INFO    ] Checking for camera pi updates...
[2026-10-28 03:45:24,706.706 INFO    ] 200
[2026-10-28 03:45:24,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:45:24,748.748 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:45:24,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:45:24,834.834 INFO    ] No camera update needed
[2026-10-28 03:45:24,837.837 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:45:24,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:45:24,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:45:24,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:45:26,893.893 INFO    ] ================================================
[2026-10-28 03:45:26,908.908 INFO    ] Launching Daemon at Wed Oct 28 03:45:26 IST 2026
[2026-10-28 03:45:26,919.919 INFO    ] ================================================
[2026-10-28 03:45:27,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:45:27
[2026-10-28 03:45:28,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:45:28,325.325 INFO    ] Initializing speech engine...
[2026-10-28 03:45:28,334.334 INFO    ] 2026-10-28 03:45:28
[2026-10-28 03:45:28,629.629 INFO    ] 2026-10-28 03:45:28
[2026-10-28 03:45:28,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:45:28,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:45:28,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:45:29,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:45:29,056.056 INFO    ] time= 28/10/2026 03:45:29
[2026-10-28 03:45:29,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:45:29,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:45:29,243.243 INFO    ] No existing commands found in stream
[2026-10-28 03:45:34,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:45:34,277.277 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-28 03:45:36,968.968 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:45:36,970.970 INFO    ] Checking for system updates...
[2026-10-28 03:45:37,007.007 INFO    ] 200
[2026-10-28 03:45:37,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:45:37,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:45:37,068.068 INFO    ] No update needed
[2026-10-28 03:45:37,070.070 INFO    ] Checking for camera pi updates...
[2026-10-28 03:45:37,105.105 INFO    ] 200
[2026-10-28 03:45:37,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:45:37,150.150 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:45:37,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:45:37,223.223 INFO    ] No camera update needed
[2026-10-28 03:45:37,226.226 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:45:37,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:45:37,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:45:37,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:45:39,285.285 INFO    ] ================================================
[2026-10-28 03:45:39,301.301 INFO    ] Launching Daemon at Wed Oct 28 03:45:39 IST 2026
[2026-10-28 03:45:39,311.311 INFO    ] ================================================
[2026-10-28 03:45:39,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:45:39
[2026-10-28 03:45:40,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:45:40,711.711 INFO    ] Initializing speech engine...
[2026-10-28 03:45:40,725.725 INFO    ] 2026-10-28 03:45:40
[2026-10-28 03:45:40,991.991 INFO    ] 2026-10-28 03:45:40
[2026-10-28 03:45:41,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:45:41,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:45:41,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:45:41,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:45:41,558.558 INFO    ] time= 28/10/2026 03:45:41
[2026-10-28 03:45:41,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:45:41,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:45:41,717.717 INFO    ] No existing commands found in stream
[2026-10-28 03:45:46,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:45:46,735.735 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-28 03:45:50,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:45:50,371.371 INFO    ] Checking for system updates...
[2026-10-28 03:45:50,406.406 INFO    ] 200
[2026-10-28 03:45:50,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:45:50,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:45:50,464.464 INFO    ] No update needed
[2026-10-28 03:45:50,466.466 INFO    ] Checking for camera pi updates...
[2026-10-28 03:45:50,500.500 INFO    ] 200
[2026-10-28 03:45:50,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:45:50,542.542 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:45:50,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:45:50,728.728 INFO    ] No camera update needed
[2026-10-28 03:45:50,730.730 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:45:50,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:45:50,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:45:50,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:45:52,783.783 INFO    ] ================================================
[2026-10-28 03:45:52,798.798 INFO    ] Launching Daemon at Wed Oct 28 03:45:52 IST 2026
[2026-10-28 03:45:52,809.809 INFO    ] ================================================
[2026-10-28 03:45:53,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:45:53
[2026-10-28 03:45:53,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:45:54,243.243 INFO    ] Initializing speech engine...
[2026-10-28 03:45:54,258.258 INFO    ] 2026-10-28 03:45:54
[2026-10-28 03:45:54,525.525 INFO    ] 2026-10-28 03:45:54
[2026-10-28 03:45:54,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:45:54,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:45:54,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:45:55,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:45:55,096.096 INFO    ] time= 28/10/2026 03:45:55
[2026-10-28 03:45:55,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:45:55,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:45:55,248.248 INFO    ] No existing commands found in stream
[2026-10-28 03:46:00,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:46:00,266.266 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 03:46:04,738.738 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:46:04,742.742 INFO    ] Checking for system updates...
[2026-10-28 03:46:04,779.779 INFO    ] 200
[2026-10-28 03:46:04,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:46:04,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:46:04,847.847 INFO    ] No update needed
[2026-10-28 03:46:04,850.850 INFO    ] Checking for camera pi updates...
[2026-10-28 03:46:04,889.889 INFO    ] 200
[2026-10-28 03:46:04,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:46:04,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:46:05,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:46:05,020.020 INFO    ] No camera update needed
[2026-10-28 03:46:05,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:46:05,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:46:05,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:46:05,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:46:07,080.080 INFO    ] ================================================
[2026-10-28 03:46:07,096.096 INFO    ] Launching Daemon at Wed Oct 28 03:46:07 IST 2026
[2026-10-28 03:46:07,108.108 INFO    ] ================================================
[2026-10-28 03:46:07,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:46:07
[2026-10-28 03:46:08,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:46:08,534.534 INFO    ] Initializing speech engine...
[2026-10-28 03:46:08,541.541 INFO    ] 2026-10-28 03:46:08
[2026-10-28 03:46:08,789.789 INFO    ] 2026-10-28 03:46:08
[2026-10-28 03:46:08,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:46:09,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:46:09,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:46:09,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:46:09,372.372 INFO    ] time= 28/10/2026 03:46:09
[2026-10-28 03:46:09,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:46:09,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:46:09,517.517 INFO    ] No existing commands found in stream
[2026-10-28 03:46:14,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:46:14,544.544 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-28 03:46:15,676.676 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:46:15,678.678 INFO    ] Checking for system updates...
[2026-10-28 03:46:15,714.714 INFO    ] 200
[2026-10-28 03:46:15,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:46:15,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:46:15,774.774 INFO    ] No update needed
[2026-10-28 03:46:15,776.776 INFO    ] Checking for camera pi updates...
[2026-10-28 03:46:15,810.810 INFO    ] 200
[2026-10-28 03:46:15,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:46:15,853.853 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:46:15,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:46:15,941.941 INFO    ] No camera update needed
[2026-10-28 03:46:15,943.943 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:46:15,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:46:15,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:46:15,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:46:18,999.999 INFO    ] ================================================
[2026-10-28 03:46:18,015.015 INFO    ] Launching Daemon at Wed Oct 28 03:46:18 IST 2026
[2026-10-28 03:46:18,027.027 INFO    ] ================================================
[2026-10-28 03:46:18,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:46:18
[2026-10-28 03:46:19,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:46:19,465.465 INFO    ] Initializing speech engine...
[2026-10-28 03:46:19,472.472 INFO    ] 2026-10-28 03:46:19
[2026-10-28 03:46:19,731.731 INFO    ] 2026-10-28 03:46:19
[2026-10-28 03:46:19,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:46:20,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:46:20,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:46:20,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:46:20,282.282 INFO    ] time= 28/10/2026 03:46:20
[2026-10-28 03:46:20,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:46:20,308.308 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:46:20,439.439 INFO    ] No existing commands found in stream
[2026-10-28 03:46:25,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:46:25,469.469 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-28 03:46:28,076.076 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:46:28,079.079 INFO    ] Checking for system updates...
[2026-10-28 03:46:28,115.115 INFO    ] 200
[2026-10-28 03:46:28,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:46:28,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:46:28,172.172 INFO    ] No update needed
[2026-10-28 03:46:28,175.175 INFO    ] Checking for camera pi updates...
[2026-10-28 03:46:28,213.213 INFO    ] 200
[2026-10-28 03:46:28,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:46:28,261.261 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:46:28,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:46:28,340.340 INFO    ] No camera update needed
[2026-10-28 03:46:28,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:46:28,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:46:28,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:46:28,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:46:30,398.398 INFO    ] ================================================
[2026-10-28 03:46:30,414.414 INFO    ] Launching Daemon at Wed Oct 28 03:46:30 IST 2026
[2026-10-28 03:46:30,425.425 INFO    ] ================================================
[2026-10-28 03:46:31,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:46:31
[2026-10-28 03:46:31,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:46:32,155.155 INFO    ] Initializing speech engine...
[2026-10-28 03:46:32,164.164 INFO    ] 2026-10-28 03:46:32
[2026-10-28 03:46:32,464.464 INFO    ] 2026-10-28 03:46:32
[2026-10-28 03:46:32,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:46:32,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:46:32,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:46:33,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:46:33,042.042 INFO    ] time= 28/10/2026 03:46:33
[2026-10-28 03:46:33,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:46:33,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:46:33,199.199 INFO    ] No existing commands found in stream
[2026-10-28 03:46:38,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:46:38,233.233 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-28 03:46:39,936.936 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:46:39,939.939 INFO    ] Checking for system updates...
[2026-10-28 03:46:39,976.976 INFO    ] 200
[2026-10-28 03:46:39,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:46:40,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:46:40,035.035 INFO    ] No update needed
[2026-10-28 03:46:40,038.038 INFO    ] Checking for camera pi updates...
[2026-10-28 03:46:40,072.072 INFO    ] 200
[2026-10-28 03:46:40,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:46:40,116.116 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:46:40,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:46:40,226.226 INFO    ] No camera update needed
[2026-10-28 03:46:40,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:46:40,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:46:40,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:46:40,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:46:42,285.285 INFO    ] ================================================
[2026-10-28 03:46:42,300.300 INFO    ] Launching Daemon at Wed Oct 28 03:46:42 IST 2026
[2026-10-28 03:46:42,311.311 INFO    ] ================================================
[2026-10-28 03:46:42,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:46:42
[2026-10-28 03:46:43,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:46:43,919.919 INFO    ] Initializing speech engine...
[2026-10-28 03:46:43,930.930 INFO    ] 2026-10-28 03:46:43
[2026-10-28 03:46:44,242.242 INFO    ] 2026-10-28 03:46:44
[2026-10-28 03:46:44,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:46:44,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:46:44,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:46:44,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:46:44,757.757 INFO    ] time= 28/10/2026 03:46:44
[2026-10-28 03:46:44,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:46:44,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:46:44,925.925 INFO    ] No existing commands found in stream
[2026-10-28 03:46:49,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:46:49,959.959 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-28 03:46:52,242.242 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:46:52,245.245 INFO    ] Checking for system updates...
[2026-10-28 03:46:52,281.281 INFO    ] 200
[2026-10-28 03:46:52,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:46:52,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:46:52,339.339 INFO    ] No update needed
[2026-10-28 03:46:52,342.342 INFO    ] Checking for camera pi updates...
[2026-10-28 03:46:52,375.375 INFO    ] 200
[2026-10-28 03:46:52,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:46:52,418.418 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:46:52,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:46:52,498.498 INFO    ] No camera update needed
[2026-10-28 03:46:52,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:46:52,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:46:52,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:46:52,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:46:54,553.553 INFO    ] ================================================
[2026-10-28 03:46:54,569.569 INFO    ] Launching Daemon at Wed Oct 28 03:46:54 IST 2026
[2026-10-28 03:46:54,580.580 INFO    ] ================================================
[2026-10-28 03:46:55,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:46:55
[2026-10-28 03:46:55,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:46:56,014.014 INFO    ] Initializing speech engine...
[2026-10-28 03:46:56,032.032 INFO    ] 2026-10-28 03:46:56
[2026-10-28 03:46:56,283.283 INFO    ] 2026-10-28 03:46:56
[2026-10-28 03:46:56,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:46:56,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:46:56,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:46:56,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:46:56,851.851 INFO    ] time= 28/10/2026 03:46:56
[2026-10-28 03:46:56,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:46:56,874.874 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:46:56,982.982 INFO    ] No existing commands found in stream
[2026-10-28 03:47:02,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:47:02,016.016 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 03:47:05,464.464 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:47:05,466.466 INFO    ] Checking for system updates...
[2026-10-28 03:47:05,502.502 INFO    ] 200
[2026-10-28 03:47:05,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:47:05,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:47:05,560.560 INFO    ] No update needed
[2026-10-28 03:47:05,562.562 INFO    ] Checking for camera pi updates...
[2026-10-28 03:47:05,599.599 INFO    ] 200
[2026-10-28 03:47:05,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:47:05,642.642 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:47:05,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:47:05,727.727 INFO    ] No camera update needed
[2026-10-28 03:47:05,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:47:05,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:47:05,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:47:05,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:47:07,784.784 INFO    ] ================================================
[2026-10-28 03:47:07,800.800 INFO    ] Launching Daemon at Wed Oct 28 03:47:07 IST 2026
[2026-10-28 03:47:07,811.811 INFO    ] ================================================
[2026-10-28 03:47:08,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:47:08
[2026-10-28 03:47:08,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:47:09,217.217 INFO    ] Initializing speech engine...
[2026-10-28 03:47:09,225.225 INFO    ] 2026-10-28 03:47:09
[2026-10-28 03:47:09,517.517 INFO    ] 2026-10-28 03:47:09
[2026-10-28 03:47:09,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:47:09,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:47:09,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:47:10,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:47:10,115.115 INFO    ] time= 28/10/2026 03:47:10
[2026-10-28 03:47:10,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:47:10,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:47:10,297.297 INFO    ] No existing commands found in stream
[2026-10-28 03:47:15,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:47:15,330.330 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 03:47:18,692.692 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:47:18,695.695 INFO    ] Checking for system updates...
[2026-10-28 03:47:18,731.731 INFO    ] 200
[2026-10-28 03:47:18,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:47:18,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:47:18,790.790 INFO    ] No update needed
[2026-10-28 03:47:18,792.792 INFO    ] Checking for camera pi updates...
[2026-10-28 03:47:18,825.825 INFO    ] 200
[2026-10-28 03:47:18,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:47:18,872.872 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:47:18,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:47:18,958.958 INFO    ] No camera update needed
[2026-10-28 03:47:18,961.961 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:47:18,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:47:18,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:47:18,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:47:21,015.015 INFO    ] ================================================
[2026-10-28 03:47:21,029.029 INFO    ] Launching Daemon at Wed Oct 28 03:47:21 IST 2026
[2026-10-28 03:47:21,040.040 INFO    ] ================================================
[2026-10-28 03:47:21,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:47:21
[2026-10-28 03:47:22,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:47:22,488.488 INFO    ] Initializing speech engine...
[2026-10-28 03:47:22,497.497 INFO    ] 2026-10-28 03:47:22
[2026-10-28 03:47:22,760.760 INFO    ] 2026-10-28 03:47:22
[2026-10-28 03:47:22,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:47:23,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:47:23,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:47:23,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:47:23,328.328 INFO    ] time= 28/10/2026 03:47:23
[2026-10-28 03:47:23,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:47:23,353.353 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:47:23,486.486 INFO    ] No existing commands found in stream
[2026-10-28 03:47:28,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:47:28,509.509 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-28 03:47:29,702.702 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:47:29,705.705 INFO    ] Checking for system updates...
[2026-10-28 03:47:29,741.741 INFO    ] 200
[2026-10-28 03:47:29,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:47:29,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:47:29,798.798 INFO    ] No update needed
[2026-10-28 03:47:29,801.801 INFO    ] Checking for camera pi updates...
[2026-10-28 03:47:29,838.838 INFO    ] 200
[2026-10-28 03:47:29,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:47:29,881.881 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:47:29,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:47:29,960.960 INFO    ] No camera update needed
[2026-10-28 03:47:29,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:47:29,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:47:29,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:47:29,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:47:32,017.017 INFO    ] ================================================
[2026-10-28 03:47:32,033.033 INFO    ] Launching Daemon at Wed Oct 28 03:47:32 IST 2026
[2026-10-28 03:47:32,045.045 INFO    ] ================================================
[2026-10-28 03:47:32,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:47:32
[2026-10-28 03:47:33,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:47:33,514.514 INFO    ] Initializing speech engine...
[2026-10-28 03:47:33,530.530 INFO    ] 2026-10-28 03:47:33
[2026-10-28 03:47:33,815.815 INFO    ] 2026-10-28 03:47:33
[2026-10-28 03:47:33,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:47:34,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:47:34,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:47:34,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:47:34,312.312 INFO    ] time= 28/10/2026 03:47:34
[2026-10-28 03:47:34,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:47:34,379.379 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:47:34,493.493 INFO    ] No existing commands found in stream
[2026-10-28 03:47:39,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:47:39,509.509 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 03:47:40,143.143 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:47:40,145.145 INFO    ] Checking for system updates...
[2026-10-28 03:47:40,181.181 INFO    ] 200
[2026-10-28 03:47:40,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:47:40,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:47:40,239.239 INFO    ] No update needed
[2026-10-28 03:47:40,242.242 INFO    ] Checking for camera pi updates...
[2026-10-28 03:47:40,275.275 INFO    ] 200
[2026-10-28 03:47:40,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:47:40,318.318 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:47:40,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:47:40,397.397 INFO    ] No camera update needed
[2026-10-28 03:47:40,399.399 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:47:40,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:47:40,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:47:40,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:47:42,452.452 INFO    ] ================================================
[2026-10-28 03:47:42,467.467 INFO    ] Launching Daemon at Wed Oct 28 03:47:42 IST 2026
[2026-10-28 03:47:42,477.477 INFO    ] ================================================
[2026-10-28 03:47:43,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:47:43
[2026-10-28 03:47:43,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:47:44,069.069 INFO    ] Initializing speech engine...
[2026-10-28 03:47:44,077.077 INFO    ] 2026-10-28 03:47:44
[2026-10-28 03:47:44,354.354 INFO    ] 2026-10-28 03:47:44
[2026-10-28 03:47:44,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:47:44,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:47:44,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:47:44,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:47:44,912.912 INFO    ] time= 28/10/2026 03:47:44
[2026-10-28 03:47:44,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:47:44,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:47:45,072.072 INFO    ] No existing commands found in stream
[2026-10-28 03:47:50,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:47:50,115.115 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 03:47:51,865.865 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:47:51,868.868 INFO    ] Checking for system updates...
[2026-10-28 03:47:51,905.905 INFO    ] 200
[2026-10-28 03:47:51,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:47:51,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:47:51,964.964 INFO    ] No update needed
[2026-10-28 03:47:51,967.967 INFO    ] Checking for camera pi updates...
[2026-10-28 03:47:52,007.007 INFO    ] 200
[2026-10-28 03:47:52,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:47:52,055.055 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:47:52,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:47:52,241.241 INFO    ] No camera update needed
[2026-10-28 03:47:52,244.244 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:47:52,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:47:52,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:47:52,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:47:54,302.302 INFO    ] ================================================
[2026-10-28 03:47:54,317.317 INFO    ] Launching Daemon at Wed Oct 28 03:47:54 IST 2026
[2026-10-28 03:47:54,328.328 INFO    ] ================================================
[2026-10-28 03:47:54,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:47:54
[2026-10-28 03:47:55,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:47:55,756.756 INFO    ] Initializing speech engine...
[2026-10-28 03:47:55,771.771 INFO    ] 2026-10-28 03:47:55
[2026-10-28 03:47:56,024.024 INFO    ] 2026-10-28 03:47:56
[2026-10-28 03:47:56,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:47:56,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:47:56,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:47:56,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:47:56,581.581 INFO    ] time= 28/10/2026 03:47:56
[2026-10-28 03:47:56,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:47:56,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:47:56,748.748 INFO    ] No existing commands found in stream
[2026-10-28 03:48:01,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:48:01,785.785 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-28 03:48:02,761.761 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:48:02,764.764 INFO    ] Checking for system updates...
[2026-10-28 03:48:02,808.808 INFO    ] 200
[2026-10-28 03:48:02,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:48:02,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:48:02,881.881 INFO    ] No update needed
[2026-10-28 03:48:02,885.885 INFO    ] Checking for camera pi updates...
[2026-10-28 03:48:02,923.923 INFO    ] 200
[2026-10-28 03:48:02,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:48:02,970.970 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:48:03,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:48:03,066.066 INFO    ] No camera update needed
[2026-10-28 03:48:03,069.069 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:48:03,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:48:03,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:48:03,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:48:05,123.123 INFO    ] ================================================
[2026-10-28 03:48:05,138.138 INFO    ] Launching Daemon at Wed Oct 28 03:48:05 IST 2026
[2026-10-28 03:48:05,150.150 INFO    ] ================================================
[2026-10-28 03:48:05,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:48:05
[2026-10-28 03:48:06,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:48:06,551.551 INFO    ] Initializing speech engine...
[2026-10-28 03:48:06,561.561 INFO    ] 2026-10-28 03:48:06
[2026-10-28 03:48:06,854.854 INFO    ] 2026-10-28 03:48:06
[2026-10-28 03:48:06,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:48:07,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:48:07,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:48:07,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:48:07,379.379 INFO    ] time= 28/10/2026 03:48:07
[2026-10-28 03:48:07,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:48:07,480.480 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:48:07,619.619 INFO    ] No existing commands found in stream
[2026-10-28 03:48:12,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:48:12,647.647 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-28 03:48:15,384.384 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:48:15,386.386 INFO    ] Checking for system updates...
[2026-10-28 03:48:15,421.421 INFO    ] 200
[2026-10-28 03:48:15,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:48:15,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:48:15,478.478 INFO    ] No update needed
[2026-10-28 03:48:15,480.480 INFO    ] Checking for camera pi updates...
[2026-10-28 03:48:15,513.513 INFO    ] 200
[2026-10-28 03:48:15,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:48:15,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:48:15,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:48:15,649.649 INFO    ] No camera update needed
[2026-10-28 03:48:15,652.652 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:48:15,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:48:15,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:48:15,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:48:17,705.705 INFO    ] ================================================
[2026-10-28 03:48:17,720.720 INFO    ] Launching Daemon at Wed Oct 28 03:48:17 IST 2026
[2026-10-28 03:48:17,731.731 INFO    ] ================================================
[2026-10-28 03:48:18,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:48:18
[2026-10-28 03:48:18,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:48:19,161.161 INFO    ] Initializing speech engine...
[2026-10-28 03:48:19,168.168 INFO    ] 2026-10-28 03:48:19
[2026-10-28 03:48:19,414.414 INFO    ] 2026-10-28 03:48:19
[2026-10-28 03:48:19,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:48:19,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:48:19,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:48:19,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:48:19,978.978 INFO    ] time= 28/10/2026 03:48:19
[2026-10-28 03:48:19,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:48:20,024.024 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:48:20,164.164 INFO    ] No existing commands found in stream
[2026-10-28 03:48:25,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:48:25,191.191 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-28 03:48:29,625.625 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:48:29,627.627 INFO    ] Checking for system updates...
[2026-10-28 03:48:29,663.663 INFO    ] 200
[2026-10-28 03:48:29,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:48:29,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:48:29,721.721 INFO    ] No update needed
[2026-10-28 03:48:29,723.723 INFO    ] Checking for camera pi updates...
[2026-10-28 03:48:29,756.756 INFO    ] 200
[2026-10-28 03:48:29,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:48:29,803.803 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:48:29,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:48:29,898.898 INFO    ] No camera update needed
[2026-10-28 03:48:29,900.900 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:48:29,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:48:29,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:48:29,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:48:31,957.957 INFO    ] ================================================
[2026-10-28 03:48:31,974.974 INFO    ] Launching Daemon at Wed Oct 28 03:48:31 IST 2026
[2026-10-28 03:48:31,986.986 INFO    ] ================================================
[2026-10-28 03:48:32,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:48:32
[2026-10-28 03:48:33,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:48:33,513.513 INFO    ] Initializing speech engine...
[2026-10-28 03:48:33,536.536 INFO    ] 2026-10-28 03:48:33
[2026-10-28 03:48:33,790.790 INFO    ] 2026-10-28 03:48:33
[2026-10-28 03:48:33,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:48:34,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:48:34,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:48:34,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:48:34,368.368 INFO    ] time= 28/10/2026 03:48:34
[2026-10-28 03:48:34,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:48:34,393.393 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:48:34,531.531 INFO    ] No existing commands found in stream
[2026-10-28 03:48:39,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:48:39,556.556 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 03:48:43,239.239 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:48:43,242.242 INFO    ] Checking for system updates...
[2026-10-28 03:48:43,278.278 INFO    ] 200
[2026-10-28 03:48:43,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:48:43,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:48:43,337.337 INFO    ] No update needed
[2026-10-28 03:48:43,339.339 INFO    ] Checking for camera pi updates...
[2026-10-28 03:48:43,373.373 INFO    ] 200
[2026-10-28 03:48:43,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:48:43,416.416 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:48:43,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:48:43,489.489 INFO    ] No camera update needed
[2026-10-28 03:48:43,492.492 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:48:43,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:48:43,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:48:43,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:48:45,546.546 INFO    ] ================================================
[2026-10-28 03:48:45,561.561 INFO    ] Launching Daemon at Wed Oct 28 03:48:45 IST 2026
[2026-10-28 03:48:45,572.572 INFO    ] ================================================
[2026-10-28 03:48:46,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:48:46
[2026-10-28 03:48:46,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:48:47,114.114 INFO    ] Initializing speech engine...
[2026-10-28 03:48:47,119.119 INFO    ] 2026-10-28 03:48:47
[2026-10-28 03:48:47,395.395 INFO    ] 2026-10-28 03:48:47
[2026-10-28 03:48:47,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:48:47,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:48:47,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:48:47,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:48:47,920.920 INFO    ] time= 28/10/2026 03:48:47
[2026-10-28 03:48:47,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:48:47,973.973 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:48:48,125.125 INFO    ] No existing commands found in stream
[2026-10-28 03:48:53,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:48:53,163.163 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-28 03:48:56,798.798 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:48:56,800.800 INFO    ] Checking for system updates...
[2026-10-28 03:48:56,836.836 INFO    ] 200
[2026-10-28 03:48:56,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:48:56,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:48:56,892.892 INFO    ] No update needed
[2026-10-28 03:48:56,895.895 INFO    ] Checking for camera pi updates...
[2026-10-28 03:48:56,928.928 INFO    ] 200
[2026-10-28 03:48:56,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:48:56,976.976 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:48:57,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:48:57,026.026 INFO    ] No camera update needed
[2026-10-28 03:48:57,028.028 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:48:57,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:48:57,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:48:57,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:48:59,083.083 INFO    ] ================================================
[2026-10-28 03:48:59,100.100 INFO    ] Launching Daemon at Wed Oct 28 03:48:59 IST 2026
[2026-10-28 03:48:59,110.110 INFO    ] ================================================
[2026-10-28 03:48:59,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:48:59
[2026-10-28 03:49:00,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:49:00,700.700 INFO    ] Initializing speech engine...
[2026-10-28 03:49:00,711.711 INFO    ] 2026-10-28 03:49:00
[2026-10-28 03:49:00,984.984 INFO    ] 2026-10-28 03:49:00
[2026-10-28 03:49:01,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:49:01,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:49:01,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:49:01,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:49:01,560.560 INFO    ] time= 28/10/2026 03:49:01
[2026-10-28 03:49:01,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:49:01,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:49:01,718.718 INFO    ] No existing commands found in stream
[2026-10-28 03:49:06,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:49:06,732.732 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-28 03:49:08,651.651 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:49:08,654.654 INFO    ] Checking for system updates...
[2026-10-28 03:49:08,689.689 INFO    ] 200
[2026-10-28 03:49:08,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:49:08,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:49:08,747.747 INFO    ] No update needed
[2026-10-28 03:49:08,749.749 INFO    ] Checking for camera pi updates...
[2026-10-28 03:49:08,785.785 INFO    ] 200
[2026-10-28 03:49:08,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:49:08,828.828 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:49:08,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:49:08,929.929 INFO    ] No camera update needed
[2026-10-28 03:49:08,932.932 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:49:08,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:49:08,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:49:08,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:49:10,985.985 INFO    ] ================================================
[2026-10-28 03:49:11,000.000 INFO    ] Launching Daemon at Wed Oct 28 03:49:10 IST 2026
[2026-10-28 03:49:11,011.011 INFO    ] ================================================
[2026-10-28 03:49:11,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:49:11
[2026-10-28 03:49:12,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:49:12,464.464 INFO    ] Initializing speech engine...
[2026-10-28 03:49:12,474.474 INFO    ] 2026-10-28 03:49:12
[2026-10-28 03:49:12,753.753 INFO    ] 2026-10-28 03:49:12
[2026-10-28 03:49:12,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:49:13,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:49:13,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:49:13,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:49:13,300.300 INFO    ] time= 28/10/2026 03:49:13
[2026-10-28 03:49:13,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:49:13,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:49:13,469.469 INFO    ] No existing commands found in stream
[2026-10-28 03:49:18,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:49:18,508.508 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-28 03:49:21,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:49:21,774.774 INFO    ] Checking for system updates...
[2026-10-28 03:49:21,818.818 INFO    ] 200
[2026-10-28 03:49:21,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:49:21,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:49:21,877.877 INFO    ] No update needed
[2026-10-28 03:49:21,879.879 INFO    ] Checking for camera pi updates...
[2026-10-28 03:49:21,919.919 INFO    ] 200
[2026-10-28 03:49:21,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:49:21,971.971 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:49:22,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:49:22,047.047 INFO    ] No camera update needed
[2026-10-28 03:49:22,050.050 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:49:22,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:49:22,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:49:22,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:49:24,103.103 INFO    ] ================================================
[2026-10-28 03:49:24,119.119 INFO    ] Launching Daemon at Wed Oct 28 03:49:24 IST 2026
[2026-10-28 03:49:24,130.130 INFO    ] ================================================
[2026-10-28 03:49:24,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:49:24
[2026-10-28 03:49:25,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:49:25,712.712 INFO    ] Initializing speech engine...
[2026-10-28 03:49:25,723.723 INFO    ] 2026-10-28 03:49:25
[2026-10-28 03:49:25,988.988 INFO    ] 2026-10-28 03:49:25
[2026-10-28 03:49:26,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:49:26,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:49:26,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:49:26,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:49:26,583.583 INFO    ] time= 28/10/2026 03:49:26
[2026-10-28 03:49:26,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:49:26,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:49:26,791.791 INFO    ] No existing commands found in stream
[2026-10-28 03:49:31,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:49:31,819.819 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-28 03:49:35,940.940 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:49:35,943.943 INFO    ] Checking for system updates...
[2026-10-28 03:49:35,980.980 INFO    ] 200
[2026-10-28 03:49:35,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:49:36,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:49:36,038.038 INFO    ] No update needed
[2026-10-28 03:49:36,041.041 INFO    ] Checking for camera pi updates...
[2026-10-28 03:49:36,075.075 INFO    ] 200
[2026-10-28 03:49:36,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:49:36,118.118 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:49:36,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:49:36,174.174 INFO    ] No camera update needed
[2026-10-28 03:49:36,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:49:36,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:49:36,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:49:36,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:49:38,232.232 INFO    ] ================================================
[2026-10-28 03:49:38,248.248 INFO    ] Launching Daemon at Wed Oct 28 03:49:38 IST 2026
[2026-10-28 03:49:38,259.259 INFO    ] ================================================
[2026-10-28 03:49:38,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:49:38
[2026-10-28 03:49:39,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:49:39,662.662 INFO    ] Initializing speech engine...
[2026-10-28 03:49:39,671.671 INFO    ] 2026-10-28 03:49:39
[2026-10-28 03:49:39,958.958 INFO    ] 2026-10-28 03:49:39
[2026-10-28 03:49:39,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:49:40,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:49:40,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:49:40,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:49:40,519.519 INFO    ] time= 28/10/2026 03:49:40
[2026-10-28 03:49:40,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:49:40,578.578 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:49:40,700.700 INFO    ] No existing commands found in stream
[2026-10-28 03:49:45,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:49:45,725.725 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 03:49:48,090.090 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:49:48,093.093 INFO    ] Checking for system updates...
[2026-10-28 03:49:48,129.129 INFO    ] 200
[2026-10-28 03:49:48,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:49:48,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:49:48,189.189 INFO    ] No update needed
[2026-10-28 03:49:48,192.192 INFO    ] Checking for camera pi updates...
[2026-10-28 03:49:48,225.225 INFO    ] 200
[2026-10-28 03:49:48,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:49:48,279.279 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:49:48,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:49:48,369.369 INFO    ] No camera update needed
[2026-10-28 03:49:48,371.371 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:49:48,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:49:48,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:49:48,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:49:50,424.424 INFO    ] ================================================
[2026-10-28 03:49:50,440.440 INFO    ] Launching Daemon at Wed Oct 28 03:49:50 IST 2026
[2026-10-28 03:49:50,451.451 INFO    ] ================================================
[2026-10-28 03:49:51,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:49:51
[2026-10-28 03:49:51,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:49:52,017.017 INFO    ] Initializing speech engine...
[2026-10-28 03:49:52,031.031 INFO    ] 2026-10-28 03:49:52
[2026-10-28 03:49:52,299.299 INFO    ] 2026-10-28 03:49:52
[2026-10-28 03:49:52,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:49:52,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:49:52,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:49:52,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:49:52,865.865 INFO    ] time= 28/10/2026 03:49:52
[2026-10-28 03:49:52,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:49:52,899.899 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:49:53,038.038 INFO    ] No existing commands found in stream
[2026-10-28 03:49:58,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:49:58,071.071 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-28 03:49:59,599.599 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:49:59,602.602 INFO    ] Checking for system updates...
[2026-10-28 03:49:59,639.639 INFO    ] 200
[2026-10-28 03:49:59,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:49:59,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:49:59,698.698 INFO    ] No update needed
[2026-10-28 03:49:59,701.701 INFO    ] Checking for camera pi updates...
[2026-10-28 03:49:59,735.735 INFO    ] 200
[2026-10-28 03:49:59,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:49:59,778.778 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:49:59,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:49:59,958.958 INFO    ] No camera update needed
[2026-10-28 03:49:59,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:49:59,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:49:59,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:49:59,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:50:02,022.022 INFO    ] ================================================
[2026-10-28 03:50:02,081.081 INFO    ] Launching Daemon at Wed Oct 28 03:50:02 IST 2026
[2026-10-28 03:50:02,140.140 INFO    ] ================================================
[2026-10-28 03:50:02,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:50:02
[2026-10-28 03:50:03,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:50:03,974.974 INFO    ] Initializing speech engine...
[2026-10-28 03:50:03,985.985 INFO    ] 2026-10-28 03:50:03
[2026-10-28 03:50:04,274.274 INFO    ] 2026-10-28 03:50:04
[2026-10-28 03:50:04,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:50:04,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:50:04,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:50:04,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:50:04,839.839 INFO    ] time= 28/10/2026 03:50:04
[2026-10-28 03:50:04,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:50:04,876.876 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:50:04,994.994 INFO    ] No existing commands found in stream
[2026-10-28 03:50:10,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:50:10,014.014 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-28 03:50:13,043.043 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:50:13,046.046 INFO    ] Checking for system updates...
[2026-10-28 03:50:13,083.083 INFO    ] 200
[2026-10-28 03:50:13,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:50:13,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:50:13,141.141 INFO    ] No update needed
[2026-10-28 03:50:13,144.144 INFO    ] Checking for camera pi updates...
[2026-10-28 03:50:13,179.179 INFO    ] 200
[2026-10-28 03:50:13,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:50:13,227.227 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:50:13,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:50:13,308.308 INFO    ] No camera update needed
[2026-10-28 03:50:13,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:50:13,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:50:13,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:50:13,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:50:15,366.366 INFO    ] ================================================
[2026-10-28 03:50:15,381.381 INFO    ] Launching Daemon at Wed Oct 28 03:50:15 IST 2026
[2026-10-28 03:50:15,392.392 INFO    ] ================================================
[2026-10-28 03:50:15,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:50:15
[2026-10-28 03:50:16,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:50:16,810.810 INFO    ] Initializing speech engine...
[2026-10-28 03:50:16,816.816 INFO    ] 2026-10-28 03:50:16
[2026-10-28 03:50:17,107.107 INFO    ] 2026-10-28 03:50:17
[2026-10-28 03:50:17,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:50:17,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:50:17,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:50:17,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:50:17,620.620 INFO    ] time= 28/10/2026 03:50:17
[2026-10-28 03:50:17,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:50:17,734.734 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:50:17,892.892 INFO    ] No existing commands found in stream
[2026-10-28 03:50:22,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:50:22,918.918 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-28 03:50:24,051.051 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:50:24,054.054 INFO    ] Checking for system updates...
[2026-10-28 03:50:24,094.094 INFO    ] 200
[2026-10-28 03:50:24,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:50:24,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:50:24,151.151 INFO    ] No update needed
[2026-10-28 03:50:24,154.154 INFO    ] Checking for camera pi updates...
[2026-10-28 03:50:24,187.187 INFO    ] 200
[2026-10-28 03:50:24,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:50:24,230.230 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:50:24,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:50:24,322.322 INFO    ] No camera update needed
[2026-10-28 03:50:24,325.325 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:50:24,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:50:24,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:50:24,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:50:26,382.382 INFO    ] ================================================
[2026-10-28 03:50:26,397.397 INFO    ] Launching Daemon at Wed Oct 28 03:50:26 IST 2026
[2026-10-28 03:50:26,408.408 INFO    ] ================================================
[2026-10-28 03:50:26,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:50:26
[2026-10-28 03:50:27,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:50:27,806.806 INFO    ] Initializing speech engine...
[2026-10-28 03:50:27,821.821 INFO    ] 2026-10-28 03:50:27
[2026-10-28 03:50:28,090.090 INFO    ] 2026-10-28 03:50:28
[2026-10-28 03:50:28,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:50:28,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:50:28,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:50:28,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:50:28,565.565 INFO    ] time= 28/10/2026 03:50:28
[2026-10-28 03:50:28,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:50:28,669.669 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:50:28,763.763 INFO    ] No existing commands found in stream
[2026-10-28 03:50:33,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:50:33,777.777 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 03:50:35,101.101 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:50:35,104.104 INFO    ] Checking for system updates...
[2026-10-28 03:50:35,154.154 INFO    ] 200
[2026-10-28 03:50:35,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:50:35,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:50:35,223.223 INFO    ] No update needed
[2026-10-28 03:50:35,226.226 INFO    ] Checking for camera pi updates...
[2026-10-28 03:50:35,260.260 INFO    ] 200
[2026-10-28 03:50:35,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:50:35,303.303 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:50:35,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:50:35,407.407 INFO    ] No camera update needed
[2026-10-28 03:50:35,409.409 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:50:35,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:50:35,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:50:35,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:50:37,464.464 INFO    ] ================================================
[2026-10-28 03:50:37,479.479 INFO    ] Launching Daemon at Wed Oct 28 03:50:37 IST 2026
[2026-10-28 03:50:37,489.489 INFO    ] ================================================
[2026-10-28 03:50:38,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:50:38
[2026-10-28 03:50:38,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:50:38,950.950 INFO    ] Initializing speech engine...
[2026-10-28 03:50:38,956.956 INFO    ] 2026-10-28 03:50:38
[2026-10-28 03:50:39,216.216 INFO    ] 2026-10-28 03:50:39
[2026-10-28 03:50:39,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:50:39,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:50:39,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:50:39,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:50:39,764.764 INFO    ] time= 28/10/2026 03:50:39
[2026-10-28 03:50:39,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:50:39,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:50:39,917.917 INFO    ] No existing commands found in stream
[2026-10-28 03:50:44,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:50:44,933.933 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-28 03:50:46,533.533 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:50:46,535.535 INFO    ] Checking for system updates...
[2026-10-28 03:50:46,571.571 INFO    ] 200
[2026-10-28 03:50:46,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:50:46,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:50:46,628.628 INFO    ] No update needed
[2026-10-28 03:50:46,630.630 INFO    ] Checking for camera pi updates...
[2026-10-28 03:50:46,663.663 INFO    ] 200
[2026-10-28 03:50:46,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:50:46,706.706 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:50:46,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:50:46,786.786 INFO    ] No camera update needed
[2026-10-28 03:50:46,788.788 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:50:46,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:50:46,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:50:46,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:50:48,843.843 INFO    ] ================================================
[2026-10-28 03:50:48,858.858 INFO    ] Launching Daemon at Wed Oct 28 03:50:48 IST 2026
[2026-10-28 03:50:48,869.869 INFO    ] ================================================
[2026-10-28 03:50:49,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:50:49
[2026-10-28 03:50:50,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:50:50,339.339 INFO    ] Initializing speech engine...
[2026-10-28 03:50:50,349.349 INFO    ] 2026-10-28 03:50:50
[2026-10-28 03:50:50,610.610 INFO    ] 2026-10-28 03:50:50
[2026-10-28 03:50:50,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:50:51,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:50:51,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:50:51,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:50:51,331.331 INFO    ] time= 28/10/2026 03:50:51
[2026-10-28 03:50:51,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:50:51,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:50:51,595.595 INFO    ] No existing commands found in stream
[2026-10-28 03:50:56,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:50:56,608.608 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-28 03:50:58,760.760 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:50:58,763.763 INFO    ] Checking for system updates...
[2026-10-28 03:50:58,798.798 INFO    ] 200
[2026-10-28 03:50:58,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:50:58,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:50:58,860.860 INFO    ] No update needed
[2026-10-28 03:50:58,863.863 INFO    ] Checking for camera pi updates...
[2026-10-28 03:50:58,896.896 INFO    ] 200
[2026-10-28 03:50:58,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:50:58,939.939 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:50:59,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:50:59,039.039 INFO    ] No camera update needed
[2026-10-28 03:50:59,042.042 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:50:59,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:50:59,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:50:59,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:51:01,095.095 INFO    ] ================================================
[2026-10-28 03:51:01,110.110 INFO    ] Launching Daemon at Wed Oct 28 03:51:01 IST 2026
[2026-10-28 03:51:01,121.121 INFO    ] ================================================
[2026-10-28 03:51:01,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:51:01
[2026-10-28 03:51:02,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:51:02,973.973 INFO    ] Initializing speech engine...
[2026-10-28 03:51:02,983.983 INFO    ] 2026-10-28 03:51:02
[2026-10-28 03:51:03,308.308 INFO    ] 2026-10-28 03:51:03
[2026-10-28 03:51:03,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:51:03,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:51:03,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:51:03,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:51:03,897.897 INFO    ] time= 28/10/2026 03:51:03
[2026-10-28 03:51:03,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:51:03,921.921 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:51:04,042.042 INFO    ] No existing commands found in stream
[2026-10-28 03:51:09,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:51:09,055.055 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 03:51:09,838.838 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:51:09,841.841 INFO    ] Checking for system updates...
[2026-10-28 03:51:09,876.876 INFO    ] 200
[2026-10-28 03:51:09,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:51:09,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:51:09,935.935 INFO    ] No update needed
[2026-10-28 03:51:09,937.937 INFO    ] Checking for camera pi updates...
[2026-10-28 03:51:09,975.975 INFO    ] 200
[2026-10-28 03:51:09,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:51:10,018.018 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:51:10,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:51:10,082.082 INFO    ] No camera update needed
[2026-10-28 03:51:10,085.085 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:51:10,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:51:10,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:51:10,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:51:12,138.138 INFO    ] ================================================
[2026-10-28 03:51:12,153.153 INFO    ] Launching Daemon at Wed Oct 28 03:51:12 IST 2026
[2026-10-28 03:51:12,164.164 INFO    ] ================================================
[2026-10-28 03:51:12,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:51:12
[2026-10-28 03:51:13,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:51:13,621.621 INFO    ] Initializing speech engine...
[2026-10-28 03:51:13,627.627 INFO    ] 2026-10-28 03:51:13
[2026-10-28 03:51:13,889.889 INFO    ] 2026-10-28 03:51:13
[2026-10-28 03:51:13,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:51:14,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:51:14,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:51:14,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:51:14,435.435 INFO    ] time= 28/10/2026 03:51:14
[2026-10-28 03:51:14,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:51:14,460.460 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:51:14,589.589 INFO    ] No existing commands found in stream
[2026-10-28 03:51:19,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:51:19,619.619 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-28 03:51:23,064.064 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:51:23,067.067 INFO    ] Checking for system updates...
[2026-10-28 03:51:23,102.102 INFO    ] 200
[2026-10-28 03:51:23,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:51:23,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:51:23,160.160 INFO    ] No update needed
[2026-10-28 03:51:23,163.163 INFO    ] Checking for camera pi updates...
[2026-10-28 03:51:23,196.196 INFO    ] 200
[2026-10-28 03:51:23,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:51:23,244.244 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:51:23,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:51:23,321.321 INFO    ] No camera update needed
[2026-10-28 03:51:23,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:51:23,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:51:23,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:51:23,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:51:25,377.377 INFO    ] ================================================
[2026-10-28 03:51:25,392.392 INFO    ] Launching Daemon at Wed Oct 28 03:51:25 IST 2026
[2026-10-28 03:51:25,403.403 INFO    ] ================================================
[2026-10-28 03:51:25,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:51:25
[2026-10-28 03:51:26,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:51:26,866.866 INFO    ] Initializing speech engine...
[2026-10-28 03:51:26,873.873 INFO    ] 2026-10-28 03:51:26
[2026-10-28 03:51:27,194.194 INFO    ] 2026-10-28 03:51:27
[2026-10-28 03:51:27,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:51:27,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:51:27,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:51:27,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:51:27,751.751 INFO    ] time= 28/10/2026 03:51:27
[2026-10-28 03:51:27,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:51:27,852.852 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:51:27,955.955 INFO    ] No existing commands found in stream
[2026-10-28 03:51:32,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:51:32,983.983 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-28 03:51:36,857.857 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:51:36,860.860 INFO    ] Checking for system updates...
[2026-10-28 03:51:36,902.902 INFO    ] 200
[2026-10-28 03:51:36,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:51:36,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:51:36,976.976 INFO    ] No update needed
[2026-10-28 03:51:36,979.979 INFO    ] Checking for camera pi updates...
[2026-10-28 03:51:37,018.018 INFO    ] 200
[2026-10-28 03:51:37,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:51:37,063.063 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:51:37,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:51:37,164.164 INFO    ] No camera update needed
[2026-10-28 03:51:37,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:51:37,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:51:37,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:51:37,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:51:39,222.222 INFO    ] ================================================
[2026-10-28 03:51:39,237.237 INFO    ] Launching Daemon at Wed Oct 28 03:51:39 IST 2026
[2026-10-28 03:51:39,247.247 INFO    ] ================================================
[2026-10-28 03:51:39,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:51:39
[2026-10-28 03:51:40,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:51:40,659.659 INFO    ] Initializing speech engine...
[2026-10-28 03:51:40,665.665 INFO    ] 2026-10-28 03:51:40
[2026-10-28 03:51:40,957.957 INFO    ] 2026-10-28 03:51:40
[2026-10-28 03:51:40,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:51:41,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:51:41,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:51:41,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:51:41,579.579 INFO    ] time= 28/10/2026 03:51:41
[2026-10-28 03:51:41,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:51:41,609.609 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:51:41,736.736 INFO    ] No existing commands found in stream
[2026-10-28 03:51:46,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:51:46,769.769 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-28 03:51:49,064.064 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:51:49,067.067 INFO    ] Checking for system updates...
[2026-10-28 03:51:49,103.103 INFO    ] 200
[2026-10-28 03:51:49,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:51:49,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:51:49,160.160 INFO    ] No update needed
[2026-10-28 03:51:49,162.162 INFO    ] Checking for camera pi updates...
[2026-10-28 03:51:49,195.195 INFO    ] 200
[2026-10-28 03:51:49,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:51:49,238.238 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:51:49,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:51:49,327.327 INFO    ] No camera update needed
[2026-10-28 03:51:49,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:51:49,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:51:49,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:51:49,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:51:51,381.381 INFO    ] ================================================
[2026-10-28 03:51:51,396.396 INFO    ] Launching Daemon at Wed Oct 28 03:51:51 IST 2026
[2026-10-28 03:51:51,406.406 INFO    ] ================================================
[2026-10-28 03:51:52,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:51:52
[2026-10-28 03:51:52,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:51:53,022.022 INFO    ] Initializing speech engine...
[2026-10-28 03:51:53,040.040 INFO    ] 2026-10-28 03:51:53
[2026-10-28 03:51:53,304.304 INFO    ] 2026-10-28 03:51:53
[2026-10-28 03:51:53,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:51:53,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:51:53,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:51:53,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:51:53,878.878 INFO    ] time= 28/10/2026 03:51:53
[2026-10-28 03:51:53,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:51:53,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:51:54,042.042 INFO    ] No existing commands found in stream
[2026-10-28 03:51:59,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:51:59,071.071 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-28 03:52:00,761.761 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:52:00,764.764 INFO    ] Checking for system updates...
[2026-10-28 03:52:00,805.805 INFO    ] 200
[2026-10-28 03:52:00,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:52:00,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:52:00,870.870 INFO    ] No update needed
[2026-10-28 03:52:00,872.872 INFO    ] Checking for camera pi updates...
[2026-10-28 03:52:00,906.906 INFO    ] 200
[2026-10-28 03:52:00,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:52:00,950.950 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:52:01,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:52:01,047.047 INFO    ] No camera update needed
[2026-10-28 03:52:01,049.049 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:52:01,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:52:01,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:52:01,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:52:03,117.117 INFO    ] ================================================
[2026-10-28 03:52:03,133.133 INFO    ] Launching Daemon at Wed Oct 28 03:52:03 IST 2026
[2026-10-28 03:52:03,144.144 INFO    ] ================================================
[2026-10-28 03:52:03,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:52:03
[2026-10-28 03:52:04,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:52:04,577.577 INFO    ] Initializing speech engine...
[2026-10-28 03:52:04,584.584 INFO    ] 2026-10-28 03:52:04
[2026-10-28 03:52:04,878.878 INFO    ] 2026-10-28 03:52:04
[2026-10-28 03:52:04,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:52:05,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:52:05,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:52:05,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:52:05,488.488 INFO    ] time= 28/10/2026 03:52:05
[2026-10-28 03:52:05,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:52:05,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:52:05,645.645 INFO    ] No existing commands found in stream
[2026-10-28 03:52:10,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:52:10,678.678 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-28 03:52:13,403.403 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:52:13,406.406 INFO    ] Checking for system updates...
[2026-10-28 03:52:13,442.442 INFO    ] 200
[2026-10-28 03:52:13,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:52:13,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:52:13,500.500 INFO    ] No update needed
[2026-10-28 03:52:13,503.503 INFO    ] Checking for camera pi updates...
[2026-10-28 03:52:13,541.541 INFO    ] 200
[2026-10-28 03:52:13,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:52:13,588.588 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:52:13,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:52:13,687.687 INFO    ] No camera update needed
[2026-10-28 03:52:13,690.690 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:52:13,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:52:13,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:52:13,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:52:15,744.744 INFO    ] ================================================
[2026-10-28 03:52:15,759.759 INFO    ] Launching Daemon at Wed Oct 28 03:52:15 IST 2026
[2026-10-28 03:52:15,770.770 INFO    ] ================================================
[2026-10-28 03:52:16,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:52:16
[2026-10-28 03:52:16,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:52:17,220.220 INFO    ] Initializing speech engine...
[2026-10-28 03:52:17,242.242 INFO    ] 2026-10-28 03:52:17
[2026-10-28 03:52:17,497.497 INFO    ] 2026-10-28 03:52:17
[2026-10-28 03:52:17,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:52:17,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:52:17,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:52:18,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:52:18,063.063 INFO    ] time= 28/10/2026 03:52:18
[2026-10-28 03:52:18,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:52:18,085.085 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:52:18,217.217 INFO    ] No existing commands found in stream
[2026-10-28 03:52:23,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:52:23,234.234 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 03:52:27,013.013 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:52:27,016.016 INFO    ] Checking for system updates...
[2026-10-28 03:52:27,052.052 INFO    ] 200
[2026-10-28 03:52:27,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:52:27,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:52:27,117.117 INFO    ] No update needed
[2026-10-28 03:52:27,119.119 INFO    ] Checking for camera pi updates...
[2026-10-28 03:52:27,155.155 INFO    ] 200
[2026-10-28 03:52:27,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:52:27,201.201 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:52:27,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:52:27,302.302 INFO    ] No camera update needed
[2026-10-28 03:52:27,304.304 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:52:27,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:52:27,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:52:27,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:52:29,357.357 INFO    ] ================================================
[2026-10-28 03:52:29,373.373 INFO    ] Launching Daemon at Wed Oct 28 03:52:29 IST 2026
[2026-10-28 03:52:29,384.384 INFO    ] ================================================
[2026-10-28 03:52:29,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:52:29
[2026-10-28 03:52:30,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:52:30,884.884 INFO    ] Initializing speech engine...
[2026-10-28 03:52:30,894.894 INFO    ] 2026-10-28 03:52:30
[2026-10-28 03:52:31,160.160 INFO    ] 2026-10-28 03:52:31
[2026-10-28 03:52:31,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:52:31,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:52:31,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:52:31,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:52:31,723.723 INFO    ] time= 28/10/2026 03:52:31
[2026-10-28 03:52:31,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:52:31,793.793 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:52:31,936.936 INFO    ] No existing commands found in stream
[2026-10-28 03:52:36,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:52:36,971.971 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-28 03:52:38,159.159 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:52:38,162.162 INFO    ] Checking for system updates...
[2026-10-28 03:52:38,198.198 INFO    ] 200
[2026-10-28 03:52:38,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:52:38,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:52:38,255.255 INFO    ] No update needed
[2026-10-28 03:52:38,258.258 INFO    ] Checking for camera pi updates...
[2026-10-28 03:52:38,298.298 INFO    ] 200
[2026-10-28 03:52:38,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:52:38,342.342 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:52:38,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:52:38,465.465 INFO    ] No camera update needed
[2026-10-28 03:52:38,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:52:38,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:52:38,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:52:38,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:52:40,520.520 INFO    ] ================================================
[2026-10-28 03:52:40,537.537 INFO    ] Launching Daemon at Wed Oct 28 03:52:40 IST 2026
[2026-10-28 03:52:40,549.549 INFO    ] ================================================
[2026-10-28 03:52:41,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:52:41
[2026-10-28 03:52:41,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:52:42,256.256 INFO    ] Initializing speech engine...
[2026-10-28 03:52:42,268.268 INFO    ] 2026-10-28 03:52:42
[2026-10-28 03:52:42,568.568 INFO    ] 2026-10-28 03:52:42
[2026-10-28 03:52:42,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:52:42,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:52:43,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:52:43,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:52:43,325.325 INFO    ] time= 28/10/2026 03:52:43
[2026-10-28 03:52:43,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:52:43,420.420 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:52:43,595.595 INFO    ] No existing commands found in stream
[2026-10-28 03:52:48,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:52:48,623.623 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 03:52:49,173.173 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:52:49,175.175 INFO    ] Checking for system updates...
[2026-10-28 03:52:49,211.211 INFO    ] 200
[2026-10-28 03:52:49,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:52:49,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:52:49,269.269 INFO    ] No update needed
[2026-10-28 03:52:49,272.272 INFO    ] Checking for camera pi updates...
[2026-10-28 03:52:49,305.305 INFO    ] 200
[2026-10-28 03:52:49,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:52:49,353.353 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:52:49,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:52:49,410.410 INFO    ] No camera update needed
[2026-10-28 03:52:49,412.412 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:52:49,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:52:49,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:52:49,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:52:51,466.466 INFO    ] ================================================
[2026-10-28 03:52:51,482.482 INFO    ] Launching Daemon at Wed Oct 28 03:52:51 IST 2026
[2026-10-28 03:52:51,493.493 INFO    ] ================================================
[2026-10-28 03:52:52,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:52:52
[2026-10-28 03:52:52,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:52:52,913.913 INFO    ] Initializing speech engine...
[2026-10-28 03:52:52,922.922 INFO    ] 2026-10-28 03:52:52
[2026-10-28 03:52:53,169.169 INFO    ] 2026-10-28 03:52:53
[2026-10-28 03:52:53,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:52:53,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:52:53,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:52:53,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:52:53,724.724 INFO    ] time= 28/10/2026 03:52:53
[2026-10-28 03:52:53,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:52:53,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:52:53,877.877 INFO    ] No existing commands found in stream
[2026-10-28 03:52:58,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:52:58,903.903 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 03:53:02,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:53:02,774.774 INFO    ] Checking for system updates...
[2026-10-28 03:53:02,818.818 INFO    ] 200
[2026-10-28 03:53:02,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:53:02,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:53:02,894.894 INFO    ] No update needed
[2026-10-28 03:53:02,896.896 INFO    ] Checking for camera pi updates...
[2026-10-28 03:53:02,934.934 INFO    ] 200
[2026-10-28 03:53:02,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:53:02,991.991 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:53:03,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:53:03,099.099 INFO    ] No camera update needed
[2026-10-28 03:53:03,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:53:03,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:53:03,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:53:03,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:53:05,174.174 INFO    ] ================================================
[2026-10-28 03:53:05,190.190 INFO    ] Launching Daemon at Wed Oct 28 03:53:05 IST 2026
[2026-10-28 03:53:05,202.202 INFO    ] ================================================
[2026-10-28 03:53:05,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:53:05
[2026-10-28 03:53:06,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:53:06,613.613 INFO    ] Initializing speech engine...
[2026-10-28 03:53:06,626.626 INFO    ] 2026-10-28 03:53:06
[2026-10-28 03:53:06,891.891 INFO    ] 2026-10-28 03:53:06
[2026-10-28 03:53:06,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:53:07,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:53:07,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:53:07,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:53:07,384.384 INFO    ] time= 28/10/2026 03:53:07
[2026-10-28 03:53:07,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:53:07,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:53:07,595.595 INFO    ] No existing commands found in stream
[2026-10-28 03:53:12,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:53:12,622.622 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 03:53:15,419.419 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:53:15,421.421 INFO    ] Checking for system updates...
[2026-10-28 03:53:15,458.458 INFO    ] 200
[2026-10-28 03:53:15,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:53:15,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:53:15,515.515 INFO    ] No update needed
[2026-10-28 03:53:15,517.517 INFO    ] Checking for camera pi updates...
[2026-10-28 03:53:15,550.550 INFO    ] 200
[2026-10-28 03:53:15,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:53:15,597.597 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:53:15,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:53:15,694.694 INFO    ] No camera update needed
[2026-10-28 03:53:15,697.697 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:53:15,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:53:15,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:53:15,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:53:17,752.752 INFO    ] ================================================
[2026-10-28 03:53:17,767.767 INFO    ] Launching Daemon at Wed Oct 28 03:53:17 IST 2026
[2026-10-28 03:53:17,777.777 INFO    ] ================================================
[2026-10-28 03:53:18,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:53:18
[2026-10-28 03:53:18,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:53:19,285.285 INFO    ] Initializing speech engine...
[2026-10-28 03:53:19,295.295 INFO    ] 2026-10-28 03:53:19
[2026-10-28 03:53:19,587.587 INFO    ] 2026-10-28 03:53:19
[2026-10-28 03:53:19,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:53:19,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:53:19,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:53:20,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:53:20,140.140 INFO    ] time= 28/10/2026 03:53:20
[2026-10-28 03:53:20,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:53:20,192.192 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:53:20,335.335 INFO    ] No existing commands found in stream
[2026-10-28 03:53:25,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:53:25,369.369 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-28 03:53:28,707.707 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:53:28,710.710 INFO    ] Checking for system updates...
[2026-10-28 03:53:28,747.747 INFO    ] 200
[2026-10-28 03:53:28,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:53:28,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:53:28,814.814 INFO    ] No update needed
[2026-10-28 03:53:28,816.816 INFO    ] Checking for camera pi updates...
[2026-10-28 03:53:28,851.851 INFO    ] 200
[2026-10-28 03:53:28,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:53:28,899.899 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:53:28,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:53:28,998.998 INFO    ] No camera update needed
[2026-10-28 03:53:29,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:53:29,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:53:29,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:53:29,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:53:31,053.053 INFO    ] ================================================
[2026-10-28 03:53:31,068.068 INFO    ] Launching Daemon at Wed Oct 28 03:53:31 IST 2026
[2026-10-28 03:53:31,078.078 INFO    ] ================================================
[2026-10-28 03:53:31,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:53:31
[2026-10-28 03:53:32,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:53:32,653.653 INFO    ] Initializing speech engine...
[2026-10-28 03:53:32,676.676 INFO    ] 2026-10-28 03:53:32
[2026-10-28 03:53:32,955.955 INFO    ] 2026-10-28 03:53:32
[2026-10-28 03:53:32,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:53:33,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:53:33,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:53:33,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:53:33,553.553 INFO    ] time= 28/10/2026 03:53:33
[2026-10-28 03:53:33,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:53:33,577.577 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:53:33,710.710 INFO    ] No existing commands found in stream
[2026-10-28 03:53:38,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:53:38,726.726 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-28 03:53:43,260.260 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:53:43,263.263 INFO    ] Checking for system updates...
[2026-10-28 03:53:43,303.303 INFO    ] 200
[2026-10-28 03:53:43,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:53:43,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:53:43,378.378 INFO    ] No update needed
[2026-10-28 03:53:43,381.381 INFO    ] Checking for camera pi updates...
[2026-10-28 03:53:43,419.419 INFO    ] 200
[2026-10-28 03:53:43,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:53:43,461.461 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:53:43,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:53:43,562.562 INFO    ] No camera update needed
[2026-10-28 03:53:43,565.565 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:53:43,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:53:43,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:53:43,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:53:45,618.618 INFO    ] ================================================
[2026-10-28 03:53:45,632.632 INFO    ] Launching Daemon at Wed Oct 28 03:53:45 IST 2026
[2026-10-28 03:53:45,644.644 INFO    ] ================================================
[2026-10-28 03:53:46,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:53:46
[2026-10-28 03:53:46,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:53:47,068.068 INFO    ] Initializing speech engine...
[2026-10-28 03:53:47,078.078 INFO    ] 2026-10-28 03:53:47
[2026-10-28 03:53:47,330.330 INFO    ] 2026-10-28 03:53:47
[2026-10-28 03:53:47,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:53:47,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:53:47,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:53:47,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:53:47,879.879 INFO    ] time= 28/10/2026 03:53:47
[2026-10-28 03:53:47,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:53:47,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:53:48,032.032 INFO    ] No existing commands found in stream
[2026-10-28 03:53:53,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:53:53,055.055 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 03:53:56,740.740 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:53:56,743.743 INFO    ] Checking for system updates...
[2026-10-28 03:53:56,779.779 INFO    ] 200
[2026-10-28 03:53:56,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:53:56,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:53:56,835.835 INFO    ] No update needed
[2026-10-28 03:53:56,838.838 INFO    ] Checking for camera pi updates...
[2026-10-28 03:53:56,871.871 INFO    ] 200
[2026-10-28 03:53:56,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:53:56,914.914 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:53:57,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:53:57,016.016 INFO    ] No camera update needed
[2026-10-28 03:53:57,018.018 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:53:57,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:53:57,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:53:57,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:53:59,072.072 INFO    ] ================================================
[2026-10-28 03:53:59,089.089 INFO    ] Launching Daemon at Wed Oct 28 03:53:59 IST 2026
[2026-10-28 03:53:59,101.101 INFO    ] ================================================
[2026-10-28 03:53:59,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:53:59
[2026-10-28 03:54:00,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:54:00,542.542 INFO    ] Initializing speech engine...
[2026-10-28 03:54:00,557.557 INFO    ] 2026-10-28 03:54:00
[2026-10-28 03:54:00,833.833 INFO    ] 2026-10-28 03:54:00
[2026-10-28 03:54:00,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:54:01,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:54:01,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:54:01,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:54:01,322.322 INFO    ] time= 28/10/2026 03:54:01
[2026-10-28 03:54:01,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:54:01,422.422 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:54:01,549.549 INFO    ] No existing commands found in stream
[2026-10-28 03:54:06,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:54:06,579.579 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-28 03:54:09,738.738 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:54:09,740.740 INFO    ] Checking for system updates...
[2026-10-28 03:54:09,780.780 INFO    ] 200
[2026-10-28 03:54:09,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:54:09,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:54:09,839.839 INFO    ] No update needed
[2026-10-28 03:54:09,841.841 INFO    ] Checking for camera pi updates...
[2026-10-28 03:54:09,882.882 INFO    ] 200
[2026-10-28 03:54:09,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:54:09,925.925 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:54:10,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:54:10,106.106 INFO    ] No camera update needed
[2026-10-28 03:54:10,108.108 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:54:10,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:54:10,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:54:10,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:54:12,162.162 INFO    ] ================================================
[2026-10-28 03:54:12,177.177 INFO    ] Launching Daemon at Wed Oct 28 03:54:12 IST 2026
[2026-10-28 03:54:12,187.187 INFO    ] ================================================
[2026-10-28 03:54:12,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:54:12
[2026-10-28 03:54:13,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:54:13,859.859 INFO    ] Initializing speech engine...
[2026-10-28 03:54:13,873.873 INFO    ] 2026-10-28 03:54:13
[2026-10-28 03:54:14,151.151 INFO    ] 2026-10-28 03:54:14
[2026-10-28 03:54:14,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:54:14,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:54:14,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:54:14,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:54:14,728.728 INFO    ] time= 28/10/2026 03:54:14
[2026-10-28 03:54:14,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:54:14,755.755 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:54:14,888.888 INFO    ] No existing commands found in stream
[2026-10-28 03:54:19,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:54:19,916.916 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 03:54:20,565.565 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:54:20,568.568 INFO    ] Checking for system updates...
[2026-10-28 03:54:20,605.605 INFO    ] 200
[2026-10-28 03:54:20,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:54:20,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:54:20,664.664 INFO    ] No update needed
[2026-10-28 03:54:20,667.667 INFO    ] Checking for camera pi updates...
[2026-10-28 03:54:20,705.705 INFO    ] 200
[2026-10-28 03:54:20,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:54:20,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:54:20,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:54:20,861.861 INFO    ] No camera update needed
[2026-10-28 03:54:20,864.864 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:54:20,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:54:20,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:54:20,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:54:22,920.920 INFO    ] ================================================
[2026-10-28 03:54:22,935.935 INFO    ] Launching Daemon at Wed Oct 28 03:54:22 IST 2026
[2026-10-28 03:54:22,946.946 INFO    ] ================================================
[2026-10-28 03:54:23,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:54:23
[2026-10-28 03:54:24,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:54:24,398.398 INFO    ] Initializing speech engine...
[2026-10-28 03:54:24,409.409 INFO    ] 2026-10-28 03:54:24
[2026-10-28 03:54:24,657.657 INFO    ] 2026-10-28 03:54:24
[2026-10-28 03:54:24,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:54:24,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:54:24,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:54:25,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:54:25,209.209 INFO    ] time= 28/10/2026 03:54:25
[2026-10-28 03:54:25,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:54:25,233.233 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:54:25,366.366 INFO    ] No existing commands found in stream
[2026-10-28 03:54:30,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:54:30,387.387 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 03:54:34,586.586 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:54:34,589.589 INFO    ] Checking for system updates...
[2026-10-28 03:54:34,625.625 INFO    ] 200
[2026-10-28 03:54:34,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:54:34,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:54:34,686.686 INFO    ] No update needed
[2026-10-28 03:54:34,689.689 INFO    ] Checking for camera pi updates...
[2026-10-28 03:54:34,724.724 INFO    ] 200
[2026-10-28 03:54:34,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:54:34,773.773 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:54:34,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:54:34,865.865 INFO    ] No camera update needed
[2026-10-28 03:54:34,868.868 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:54:34,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:54:34,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:54:34,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:54:36,925.925 INFO    ] ================================================
[2026-10-28 03:54:36,940.940 INFO    ] Launching Daemon at Wed Oct 28 03:54:36 IST 2026
[2026-10-28 03:54:36,951.951 INFO    ] ================================================
[2026-10-28 03:54:37,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:54:37
[2026-10-28 03:54:38,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:54:38,589.589 INFO    ] Initializing speech engine...
[2026-10-28 03:54:38,604.604 INFO    ] 2026-10-28 03:54:38
[2026-10-28 03:54:38,885.885 INFO    ] 2026-10-28 03:54:38
[2026-10-28 03:54:38,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:54:39,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:54:39,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:54:39,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:54:39,437.437 INFO    ] time= 28/10/2026 03:54:39
[2026-10-28 03:54:39,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:54:39,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:54:39,615.615 INFO    ] No existing commands found in stream
[2026-10-28 03:54:44,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:54:44,649.649 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-28 03:54:46,185.185 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:54:46,189.189 INFO    ] Checking for system updates...
[2026-10-28 03:54:46,225.225 INFO    ] 200
[2026-10-28 03:54:46,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:54:46,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:54:46,291.291 INFO    ] No update needed
[2026-10-28 03:54:46,294.294 INFO    ] Checking for camera pi updates...
[2026-10-28 03:54:46,329.329 INFO    ] 200
[2026-10-28 03:54:46,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:54:46,379.379 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:54:46,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:54:46,461.461 INFO    ] No camera update needed
[2026-10-28 03:54:46,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:54:46,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:54:46,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:54:46,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:54:48,520.520 INFO    ] ================================================
[2026-10-28 03:54:48,535.535 INFO    ] Launching Daemon at Wed Oct 28 03:54:48 IST 2026
[2026-10-28 03:54:48,545.545 INFO    ] ================================================
[2026-10-28 03:54:49,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:54:49
[2026-10-28 03:54:49,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:54:50,014.014 INFO    ] Initializing speech engine...
[2026-10-28 03:54:50,020.020 INFO    ] 2026-10-28 03:54:50
[2026-10-28 03:54:50,280.280 INFO    ] 2026-10-28 03:54:50
[2026-10-28 03:54:50,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:54:50,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:54:50,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:54:50,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:54:50,835.835 INFO    ] time= 28/10/2026 03:54:50
[2026-10-28 03:54:50,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:54:50,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:54:51,009.009 INFO    ] No existing commands found in stream
[2026-10-28 03:54:56,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:54:56,042.042 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 03:54:57,422.422 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:54:57,425.425 INFO    ] Checking for system updates...
[2026-10-28 03:54:57,462.462 INFO    ] 200
[2026-10-28 03:54:57,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:54:57,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:54:57,519.519 INFO    ] No update needed
[2026-10-28 03:54:57,522.522 INFO    ] Checking for camera pi updates...
[2026-10-28 03:54:57,555.555 INFO    ] 200
[2026-10-28 03:54:57,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:54:57,602.602 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:54:57,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:54:57,692.692 INFO    ] No camera update needed
[2026-10-28 03:54:57,695.695 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:54:57,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:54:57,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:54:57,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:54:59,750.750 INFO    ] ================================================
[2026-10-28 03:54:59,765.765 INFO    ] Launching Daemon at Wed Oct 28 03:54:59 IST 2026
[2026-10-28 03:54:59,776.776 INFO    ] ================================================
[2026-10-28 03:55:00,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:55:00
[2026-10-28 03:55:01,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:55:01,427.427 INFO    ] Initializing speech engine...
[2026-10-28 03:55:01,435.435 INFO    ] 2026-10-28 03:55:01
[2026-10-28 03:55:01,714.714 INFO    ] 2026-10-28 03:55:01
[2026-10-28 03:55:01,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:55:02,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:55:02,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:55:02,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:55:02,327.327 INFO    ] time= 28/10/2026 03:55:02
[2026-10-28 03:55:02,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:55:02,333.333 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:55:02,489.489 INFO    ] No existing commands found in stream
[2026-10-28 03:55:07,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:55:07,502.502 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 03:55:11,504.504 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:55:11,507.507 INFO    ] Checking for system updates...
[2026-10-28 03:55:11,542.542 INFO    ] 200
[2026-10-28 03:55:11,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:55:11,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:55:11,599.599 INFO    ] No update needed
[2026-10-28 03:55:11,601.601 INFO    ] Checking for camera pi updates...
[2026-10-28 03:55:11,635.635 INFO    ] 200
[2026-10-28 03:55:11,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:55:11,678.678 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:55:11,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:55:11,783.783 INFO    ] No camera update needed
[2026-10-28 03:55:11,785.785 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:55:11,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:55:11,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:55:11,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:55:13,837.837 INFO    ] ================================================
[2026-10-28 03:55:13,852.852 INFO    ] Launching Daemon at Wed Oct 28 03:55:13 IST 2026
[2026-10-28 03:55:13,863.863 INFO    ] ================================================
[2026-10-28 03:55:14,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:55:14
[2026-10-28 03:55:15,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:55:15,365.365 INFO    ] Initializing speech engine...
[2026-10-28 03:55:15,388.388 INFO    ] 2026-10-28 03:55:15
[2026-10-28 03:55:15,640.640 INFO    ] 2026-10-28 03:55:15
[2026-10-28 03:55:15,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:55:15,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:55:15,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:55:16,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:55:16,223.223 INFO    ] time= 28/10/2026 03:55:16
[2026-10-28 03:55:16,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:55:16,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:55:16,360.360 INFO    ] No existing commands found in stream
[2026-10-28 03:55:21,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:55:21,382.382 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-28 03:55:23,558.558 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:55:23,561.561 INFO    ] Checking for system updates...
[2026-10-28 03:55:23,600.600 INFO    ] 200
[2026-10-28 03:55:23,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:55:23,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:55:23,657.657 INFO    ] No update needed
[2026-10-28 03:55:23,659.659 INFO    ] Checking for camera pi updates...
[2026-10-28 03:55:23,692.692 INFO    ] 200
[2026-10-28 03:55:23,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:55:23,739.739 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:55:23,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:55:23,836.836 INFO    ] No camera update needed
[2026-10-28 03:55:23,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:55:23,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:55:23,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:55:23,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:55:25,892.892 INFO    ] ================================================
[2026-10-28 03:55:25,908.908 INFO    ] Launching Daemon at Wed Oct 28 03:55:25 IST 2026
[2026-10-28 03:55:25,918.918 INFO    ] ================================================
[2026-10-28 03:55:26,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:55:26
[2026-10-28 03:55:27,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:55:27,319.319 INFO    ] Initializing speech engine...
[2026-10-28 03:55:27,325.325 INFO    ] 2026-10-28 03:55:27
[2026-10-28 03:55:27,601.601 INFO    ] 2026-10-28 03:55:27
[2026-10-28 03:55:27,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:55:27,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:55:27,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:55:28,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:55:28,184.184 INFO    ] time= 28/10/2026 03:55:28
[2026-10-28 03:55:28,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:55:28,208.208 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:55:28,351.351 INFO    ] No existing commands found in stream
[2026-10-28 03:55:33,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:55:33,389.389 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-28 03:55:36,142.142 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:55:36,145.145 INFO    ] Checking for system updates...
[2026-10-28 03:55:36,183.183 INFO    ] 200
[2026-10-28 03:55:36,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:55:36,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:55:36,240.240 INFO    ] No update needed
[2026-10-28 03:55:36,243.243 INFO    ] Checking for camera pi updates...
[2026-10-28 03:55:36,277.277 INFO    ] 200
[2026-10-28 03:55:36,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:55:36,321.321 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:55:36,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:55:36,402.402 INFO    ] No camera update needed
[2026-10-28 03:55:36,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:55:36,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:55:36,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:55:36,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:55:38,456.456 INFO    ] ================================================
[2026-10-28 03:55:38,471.471 INFO    ] Launching Daemon at Wed Oct 28 03:55:38 IST 2026
[2026-10-28 03:55:38,482.482 INFO    ] ================================================
[2026-10-28 03:55:39,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:55:39
[2026-10-28 03:55:39,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:55:39,983.983 INFO    ] Initializing speech engine...
[2026-10-28 03:55:39,997.997 INFO    ] 2026-10-28 03:55:39
[2026-10-28 03:55:40,284.284 INFO    ] 2026-10-28 03:55:40
[2026-10-28 03:55:40,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:55:40,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:55:40,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:55:40,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:55:40,829.829 INFO    ] time= 28/10/2026 03:55:40
[2026-10-28 03:55:40,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:55:40,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:55:40,996.996 INFO    ] No existing commands found in stream
[2026-10-28 03:55:46,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:55:46,025.025 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-28 03:55:47,530.530 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:55:47,533.533 INFO    ] Checking for system updates...
[2026-10-28 03:55:47,568.568 INFO    ] 200
[2026-10-28 03:55:47,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:55:47,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:55:47,631.631 INFO    ] No update needed
[2026-10-28 03:55:47,633.633 INFO    ] Checking for camera pi updates...
[2026-10-28 03:55:47,667.667 INFO    ] 200
[2026-10-28 03:55:47,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:55:47,709.709 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:55:47,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:55:47,807.807 INFO    ] No camera update needed
[2026-10-28 03:55:47,809.809 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:55:47,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:55:47,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:55:47,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:55:49,862.862 INFO    ] ================================================
[2026-10-28 03:55:49,878.878 INFO    ] Launching Daemon at Wed Oct 28 03:55:49 IST 2026
[2026-10-28 03:55:49,890.890 INFO    ] ================================================
[2026-10-28 03:55:50,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:55:50
[2026-10-28 03:55:51,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:55:51,347.347 INFO    ] Initializing speech engine...
[2026-10-28 03:55:51,353.353 INFO    ] 2026-10-28 03:55:51
[2026-10-28 03:55:51,618.618 INFO    ] 2026-10-28 03:55:51
[2026-10-28 03:55:51,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:55:51,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:55:51,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:55:52,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:55:52,179.179 INFO    ] time= 28/10/2026 03:55:52
[2026-10-28 03:55:52,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:55:52,205.205 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:55:52,338.338 INFO    ] No existing commands found in stream
[2026-10-28 03:55:57,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:55:57,357.357 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 03:55:59,065.065 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:55:59,068.068 INFO    ] Checking for system updates...
[2026-10-28 03:55:59,107.107 INFO    ] 200
[2026-10-28 03:55:59,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:55:59,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:55:59,170.170 INFO    ] No update needed
[2026-10-28 03:55:59,173.173 INFO    ] Checking for camera pi updates...
[2026-10-28 03:55:59,210.210 INFO    ] 200
[2026-10-28 03:55:59,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:55:59,253.253 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:55:59,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:55:59,332.332 INFO    ] No camera update needed
[2026-10-28 03:55:59,334.334 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:55:59,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:55:59,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:55:59,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:56:01,392.392 INFO    ] ================================================
[2026-10-28 03:56:01,432.432 INFO    ] Launching Daemon at Wed Oct 28 03:56:01 IST 2026
[2026-10-28 03:56:01,468.468 INFO    ] ================================================
[2026-10-28 03:56:02,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:56:02
[2026-10-28 03:56:02,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:56:03,215.215 INFO    ] Initializing speech engine...
[2026-10-28 03:56:03,231.231 INFO    ] 2026-10-28 03:56:03
[2026-10-28 03:56:03,570.570 INFO    ] 2026-10-28 03:56:03
[2026-10-28 03:56:03,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:56:03,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:56:03,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:56:04,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:56:04,153.153 INFO    ] time= 28/10/2026 03:56:04
[2026-10-28 03:56:04,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:56:04,252.252 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:56:04,367.367 INFO    ] No existing commands found in stream
[2026-10-28 03:56:09,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:56:09,399.399 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-28 03:56:13,264.264 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:56:13,267.267 INFO    ] Checking for system updates...
[2026-10-28 03:56:13,304.304 INFO    ] 200
[2026-10-28 03:56:13,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:56:13,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:56:13,363.363 INFO    ] No update needed
[2026-10-28 03:56:13,366.366 INFO    ] Checking for camera pi updates...
[2026-10-28 03:56:13,400.400 INFO    ] 200
[2026-10-28 03:56:13,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:56:13,443.443 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:56:13,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:56:13,628.628 INFO    ] No camera update needed
[2026-10-28 03:56:13,630.630 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:56:13,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:56:13,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:56:13,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:56:15,682.682 INFO    ] ================================================
[2026-10-28 03:56:15,698.698 INFO    ] Launching Daemon at Wed Oct 28 03:56:15 IST 2026
[2026-10-28 03:56:15,709.709 INFO    ] ================================================
[2026-10-28 03:56:16,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:56:16
[2026-10-28 03:56:16,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:56:17,137.137 INFO    ] Initializing speech engine...
[2026-10-28 03:56:17,160.160 INFO    ] 2026-10-28 03:56:17
[2026-10-28 03:56:17,412.412 INFO    ] 2026-10-28 03:56:17
[2026-10-28 03:56:17,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:56:17,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:56:17,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:56:17,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:56:17,966.966 INFO    ] time= 28/10/2026 03:56:17
[2026-10-28 03:56:17,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:56:17,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:56:18,116.116 INFO    ] No existing commands found in stream
[2026-10-28 03:56:23,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:56:23,135.135 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-28 03:56:26,440.440 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:56:26,442.442 INFO    ] Checking for system updates...
[2026-10-28 03:56:26,481.481 INFO    ] 200
[2026-10-28 03:56:26,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:56:26,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:56:26,538.538 INFO    ] No update needed
[2026-10-28 03:56:26,540.540 INFO    ] Checking for camera pi updates...
[2026-10-28 03:56:26,574.574 INFO    ] 200
[2026-10-28 03:56:26,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:56:26,620.620 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:56:26,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:56:26,719.719 INFO    ] No camera update needed
[2026-10-28 03:56:26,721.721 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:56:26,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:56:26,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:56:26,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:56:28,773.773 INFO    ] ================================================
[2026-10-28 03:56:28,788.788 INFO    ] Launching Daemon at Wed Oct 28 03:56:28 IST 2026
[2026-10-28 03:56:28,799.799 INFO    ] ================================================
[2026-10-28 03:56:29,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:56:29
[2026-10-28 03:56:29,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:56:30,224.224 INFO    ] Initializing speech engine...
[2026-10-28 03:56:30,232.232 INFO    ] 2026-10-28 03:56:30
[2026-10-28 03:56:30,507.507 INFO    ] 2026-10-28 03:56:30
[2026-10-28 03:56:30,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:56:30,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:56:30,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:56:31,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:56:31,076.076 INFO    ] time= 28/10/2026 03:56:31
[2026-10-28 03:56:31,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:56:31,098.098 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:56:31,234.234 INFO    ] No existing commands found in stream
[2026-10-28 03:56:36,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:56:36,258.258 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-28 03:56:38,023.023 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:56:38,026.026 INFO    ] Checking for system updates...
[2026-10-28 03:56:38,064.064 INFO    ] 200
[2026-10-28 03:56:38,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:56:38,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:56:38,125.125 INFO    ] No update needed
[2026-10-28 03:56:38,128.128 INFO    ] Checking for camera pi updates...
[2026-10-28 03:56:38,164.164 INFO    ] 200
[2026-10-28 03:56:38,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:56:38,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:56:38,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:56:38,298.298 INFO    ] No camera update needed
[2026-10-28 03:56:38,300.300 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:56:38,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:56:38,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:56:38,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:56:40,353.353 INFO    ] ================================================
[2026-10-28 03:56:40,369.369 INFO    ] Launching Daemon at Wed Oct 28 03:56:40 IST 2026
[2026-10-28 03:56:40,380.380 INFO    ] ================================================
[2026-10-28 03:56:40,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:56:40
[2026-10-28 03:56:41,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:56:41,829.829 INFO    ] Initializing speech engine...
[2026-10-28 03:56:41,840.840 INFO    ] 2026-10-28 03:56:41
[2026-10-28 03:56:42,084.084 INFO    ] 2026-10-28 03:56:42
[2026-10-28 03:56:42,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:56:42,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:56:42,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:56:42,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:56:42,666.666 INFO    ] time= 28/10/2026 03:56:42
[2026-10-28 03:56:42,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:56:42,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:56:42,855.855 INFO    ] No existing commands found in stream
[2026-10-28 03:56:47,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:56:47,877.877 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 03:56:51,943.943 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:56:51,946.946 INFO    ] Checking for system updates...
[2026-10-28 03:56:51,982.982 INFO    ] 200
[2026-10-28 03:56:51,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:56:52,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:56:52,040.040 INFO    ] No update needed
[2026-10-28 03:56:52,042.042 INFO    ] Checking for camera pi updates...
[2026-10-28 03:56:52,075.075 INFO    ] 200
[2026-10-28 03:56:52,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:56:52,118.118 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:56:52,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:56:52,205.205 INFO    ] No camera update needed
[2026-10-28 03:56:52,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:56:52,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:56:52,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:56:52,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:56:54,259.259 INFO    ] ================================================
[2026-10-28 03:56:54,275.275 INFO    ] Launching Daemon at Wed Oct 28 03:56:54 IST 2026
[2026-10-28 03:56:54,286.286 INFO    ] ================================================
[2026-10-28 03:56:54,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:56:54
[2026-10-28 03:56:55,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:56:55,788.788 INFO    ] Initializing speech engine...
[2026-10-28 03:56:55,800.800 INFO    ] 2026-10-28 03:56:55
[2026-10-28 03:56:56,106.106 INFO    ] 2026-10-28 03:56:56
[2026-10-28 03:56:56,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:56:56,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:56:56,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:56:56,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:56:56,805.805 INFO    ] time= 28/10/2026 03:56:56
[2026-10-28 03:56:56,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:56:56,886.886 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:56:57,030.030 INFO    ] No existing commands found in stream
[2026-10-28 03:57:02,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:57:02,060.060 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-28 03:57:03,961.961 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:57:03,964.964 INFO    ] Checking for system updates...
[2026-10-28 03:57:03,999.999 INFO    ] 200
[2026-10-28 03:57:04,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:57:04,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:57:04,056.056 INFO    ] No update needed
[2026-10-28 03:57:04,059.059 INFO    ] Checking for camera pi updates...
[2026-10-28 03:57:04,096.096 INFO    ] 200
[2026-10-28 03:57:04,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:57:04,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:57:04,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:57:04,241.241 INFO    ] No camera update needed
[2026-10-28 03:57:04,244.244 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:57:04,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:57:04,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:57:04,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:57:06,296.296 INFO    ] ================================================
[2026-10-28 03:57:06,312.312 INFO    ] Launching Daemon at Wed Oct 28 03:57:06 IST 2026
[2026-10-28 03:57:06,325.325 INFO    ] ================================================
[2026-10-28 03:57:06,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:57:06
[2026-10-28 03:57:07,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:57:07,782.782 INFO    ] Initializing speech engine...
[2026-10-28 03:57:07,791.791 INFO    ] 2026-10-28 03:57:07
[2026-10-28 03:57:08,048.048 INFO    ] 2026-10-28 03:57:08
[2026-10-28 03:57:08,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:57:08,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:57:08,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:57:08,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:57:08,589.589 INFO    ] time= 28/10/2026 03:57:08
[2026-10-28 03:57:08,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:57:08,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:57:08,766.766 INFO    ] No existing commands found in stream
[2026-10-28 03:57:13,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:57:13,799.799 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 03:57:15,240.240 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:57:15,243.243 INFO    ] Checking for system updates...
[2026-10-28 03:57:15,282.282 INFO    ] 200
[2026-10-28 03:57:15,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:57:15,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:57:15,346.346 INFO    ] No update needed
[2026-10-28 03:57:15,348.348 INFO    ] Checking for camera pi updates...
[2026-10-28 03:57:15,386.386 INFO    ] 200
[2026-10-28 03:57:15,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:57:15,428.428 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:57:15,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:57:15,505.505 INFO    ] No camera update needed
[2026-10-28 03:57:15,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:57:15,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:57:15,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:57:15,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:57:17,561.561 INFO    ] ================================================
[2026-10-28 03:57:17,577.577 INFO    ] Launching Daemon at Wed Oct 28 03:57:17 IST 2026
[2026-10-28 03:57:17,587.587 INFO    ] ================================================
[2026-10-28 03:57:18,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:57:18
[2026-10-28 03:57:18,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:57:19,146.146 INFO    ] Initializing speech engine...
[2026-10-28 03:57:19,156.156 INFO    ] 2026-10-28 03:57:19
[2026-10-28 03:57:19,408.408 INFO    ] 2026-10-28 03:57:19
[2026-10-28 03:57:19,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:57:19,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:57:19,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:57:19,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:57:19,976.976 INFO    ] time= 28/10/2026 03:57:19
[2026-10-28 03:57:19,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:57:20,000.000 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:57:20,130.130 INFO    ] No existing commands found in stream
[2026-10-28 03:57:25,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:57:25,146.146 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 03:57:26,505.505 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 03:57:26,508.508 INFO    ] Checking for system updates...
[2026-10-28 03:57:26,546.546 INFO    ] 200
[2026-10-28 03:57:26,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:57:26,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:57:26,612.612 INFO    ] No update needed
[2026-10-28 03:57:26,615.615 INFO    ] Checking for camera pi updates...
[2026-10-28 03:57:26,648.648 INFO    ] 200
[2026-10-28 03:57:26,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:57:26,690.690 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:57:26,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:57:26,765.765 INFO    ] No camera update needed
[2026-10-28 03:57:26,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:57:26,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:57:26,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:57:26,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:57:28,819.819 INFO    ] ================================================
[2026-10-28 03:57:28,836.836 INFO    ] Launching Daemon at Wed Oct 28 03:57:28 IST 2026
[2026-10-28 03:57:28,847.847 INFO    ] ================================================
[2026-10-28 03:57:29,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:57:29
[2026-10-28 03:57:30,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:57:30,455.455 INFO    ] Initializing speech engine...
[2026-10-28 03:57:30,465.465 INFO    ] 2026-10-28 03:57:30
[2026-10-28 03:57:30,711.711 INFO    ] 2026-10-28 03:57:30
[2026-10-28 03:57:30,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:57:30,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:57:31,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:57:31,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:57:31,198.198 INFO    ] time= 28/10/2026 03:57:31
[2026-10-28 03:57:31,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:57:31,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:57:31,405.405 INFO    ] No existing commands found in stream
[2026-10-28 03:57:36,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:57:36,440.440 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 03:57:36,943.943 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:57:36,945.945 INFO    ] Checking for system updates...
[2026-10-28 03:57:36,980.980 INFO    ] 200
[2026-10-28 03:57:36,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:57:37,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:57:37,042.042 INFO    ] No update needed
[2026-10-28 03:57:37,045.045 INFO    ] Checking for camera pi updates...
[2026-10-28 03:57:37,081.081 INFO    ] 200
[2026-10-28 03:57:37,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:57:37,128.128 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:57:37,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:57:37,206.206 INFO    ] No camera update needed
[2026-10-28 03:57:37,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:57:37,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:57:37,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:57:37,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:57:39,260.260 INFO    ] ================================================
[2026-10-28 03:57:39,276.276 INFO    ] Launching Daemon at Wed Oct 28 03:57:39 IST 2026
[2026-10-28 03:57:39,287.287 INFO    ] ================================================
[2026-10-28 03:57:39,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:57:39
[2026-10-28 03:57:40,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:57:40,804.804 INFO    ] Initializing speech engine...
[2026-10-28 03:57:40,812.812 INFO    ] 2026-10-28 03:57:40
[2026-10-28 03:57:41,094.094 INFO    ] 2026-10-28 03:57:41
[2026-10-28 03:57:41,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:57:41,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:57:41,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:57:41,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:57:41,631.631 INFO    ] time= 28/10/2026 03:57:41
[2026-10-28 03:57:41,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:57:41,655.655 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:57:41,784.784 INFO    ] No existing commands found in stream
[2026-10-28 03:57:46,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:57:46,799.799 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 03:57:50,748.748 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 03:57:50,751.751 INFO    ] Checking for system updates...
[2026-10-28 03:57:50,786.786 INFO    ] 200
[2026-10-28 03:57:50,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:57:50,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:57:50,844.844 INFO    ] No update needed
[2026-10-28 03:57:50,846.846 INFO    ] Checking for camera pi updates...
[2026-10-28 03:57:50,880.880 INFO    ] 200
[2026-10-28 03:57:50,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:57:50,921.921 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:57:50,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:57:50,976.976 INFO    ] No camera update needed
[2026-10-28 03:57:50,978.978 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:57:50,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:57:50,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:57:50,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:57:53,030.030 INFO    ] ================================================
[2026-10-28 03:57:53,046.046 INFO    ] Launching Daemon at Wed Oct 28 03:57:53 IST 2026
[2026-10-28 03:57:53,061.061 INFO    ] ================================================
[2026-10-28 03:57:53,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:57:53
[2026-10-28 03:57:54,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:57:54,506.506 INFO    ] Initializing speech engine...
[2026-10-28 03:57:54,515.515 INFO    ] 2026-10-28 03:57:54
[2026-10-28 03:57:54,783.783 INFO    ] 2026-10-28 03:57:54
[2026-10-28 03:57:54,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:57:55,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:57:55,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:57:55,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:57:55,299.299 INFO    ] time= 28/10/2026 03:57:55
[2026-10-28 03:57:55,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:57:55,398.398 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:57:55,570.570 INFO    ] No existing commands found in stream
[2026-10-28 03:58:00,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:58:00,593.593 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-28 03:58:05,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:58:05,145.145 INFO    ] Checking for system updates...
[2026-10-28 03:58:05,184.184 INFO    ] 200
[2026-10-28 03:58:05,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:58:05,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:58:05,242.242 INFO    ] No update needed
[2026-10-28 03:58:05,245.245 INFO    ] Checking for camera pi updates...
[2026-10-28 03:58:05,279.279 INFO    ] 200
[2026-10-28 03:58:05,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:58:05,321.321 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:58:05,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:58:05,402.402 INFO    ] No camera update needed
[2026-10-28 03:58:05,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:58:05,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:58:05,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:58:05,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:58:07,458.458 INFO    ] ================================================
[2026-10-28 03:58:07,474.474 INFO    ] Launching Daemon at Wed Oct 28 03:58:07 IST 2026
[2026-10-28 03:58:07,485.485 INFO    ] ================================================
[2026-10-28 03:58:08,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:58:08
[2026-10-28 03:58:08,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:58:09,095.095 INFO    ] Initializing speech engine...
[2026-10-28 03:58:09,109.109 INFO    ] 2026-10-28 03:58:09
[2026-10-28 03:58:09,387.387 INFO    ] 2026-10-28 03:58:09
[2026-10-28 03:58:09,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:58:09,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:58:09,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:58:10,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:58:10,083.083 INFO    ] time= 28/10/2026 03:58:10
[2026-10-28 03:58:10,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:58:10,176.176 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:58:10,326.326 INFO    ] No existing commands found in stream
[2026-10-28 03:58:15,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:58:15,347.347 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-28 03:58:19,623.623 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:58:19,626.626 INFO    ] Checking for system updates...
[2026-10-28 03:58:19,666.666 INFO    ] 200
[2026-10-28 03:58:19,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:58:19,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:58:19,730.730 INFO    ] No update needed
[2026-10-28 03:58:19,733.733 INFO    ] Checking for camera pi updates...
[2026-10-28 03:58:19,771.771 INFO    ] 200
[2026-10-28 03:58:19,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:58:19,820.820 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:58:20,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:58:20,003.003 INFO    ] No camera update needed
[2026-10-28 03:58:20,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:58:20,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:58:20,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:58:20,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:58:22,063.063 INFO    ] ================================================
[2026-10-28 03:58:22,079.079 INFO    ] Launching Daemon at Wed Oct 28 03:58:22 IST 2026
[2026-10-28 03:58:22,090.090 INFO    ] ================================================
[2026-10-28 03:58:22,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:58:22
[2026-10-28 03:58:23,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:58:23,495.495 INFO    ] Initializing speech engine...
[2026-10-28 03:58:23,510.510 INFO    ] 2026-10-28 03:58:23
[2026-10-28 03:58:23,791.791 INFO    ] 2026-10-28 03:58:23
[2026-10-28 03:58:23,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:58:24,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:58:24,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:58:24,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:58:24,341.341 INFO    ] time= 28/10/2026 03:58:24
[2026-10-28 03:58:24,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:58:24,424.424 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:58:24,544.544 INFO    ] No existing commands found in stream
[2026-10-28 03:58:29,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:58:29,564.564 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 03:58:32,056.056 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:58:32,060.060 INFO    ] Checking for system updates...
[2026-10-28 03:58:32,101.101 INFO    ] 200
[2026-10-28 03:58:32,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:58:32,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:58:32,169.169 INFO    ] No update needed
[2026-10-28 03:58:32,172.172 INFO    ] Checking for camera pi updates...
[2026-10-28 03:58:32,208.208 INFO    ] 200
[2026-10-28 03:58:32,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:58:32,259.259 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:58:32,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:58:32,335.335 INFO    ] No camera update needed
[2026-10-28 03:58:32,338.338 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:58:32,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:58:32,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:58:32,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:58:34,395.395 INFO    ] ================================================
[2026-10-28 03:58:34,409.409 INFO    ] Launching Daemon at Wed Oct 28 03:58:34 IST 2026
[2026-10-28 03:58:34,420.420 INFO    ] ================================================
[2026-10-28 03:58:34,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:58:34
[2026-10-28 03:58:35,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:58:35,838.838 INFO    ] Initializing speech engine...
[2026-10-28 03:58:35,844.844 INFO    ] 2026-10-28 03:58:35
[2026-10-28 03:58:36,134.134 INFO    ] 2026-10-28 03:58:36
[2026-10-28 03:58:36,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:58:36,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:58:36,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:58:36,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:58:36,549.549 INFO    ] time= 28/10/2026 03:58:36
[2026-10-28 03:58:36,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:58:36,578.578 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:58:36,729.729 INFO    ] No existing commands found in stream
[2026-10-28 03:58:41,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:58:41,757.757 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-28 03:58:45,691.691 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 03:58:45,694.694 INFO    ] Checking for system updates...
[2026-10-28 03:58:45,732.732 INFO    ] 200
[2026-10-28 03:58:45,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:58:45,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:58:45,795.795 INFO    ] No update needed
[2026-10-28 03:58:45,797.797 INFO    ] Checking for camera pi updates...
[2026-10-28 03:58:45,831.831 INFO    ] 200
[2026-10-28 03:58:45,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:58:45,875.875 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:58:45,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:58:45,988.988 INFO    ] No camera update needed
[2026-10-28 03:58:45,991.991 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:58:45,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:58:45,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:58:46,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:58:48,044.044 INFO    ] ================================================
[2026-10-28 03:58:48,059.059 INFO    ] Launching Daemon at Wed Oct 28 03:58:48 IST 2026
[2026-10-28 03:58:48,070.070 INFO    ] ================================================
[2026-10-28 03:58:48,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:58:48
[2026-10-28 03:58:49,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:58:49,490.490 INFO    ] Initializing speech engine...
[2026-10-28 03:58:49,497.497 INFO    ] 2026-10-28 03:58:49
[2026-10-28 03:58:49,755.755 INFO    ] 2026-10-28 03:58:49
[2026-10-28 03:58:49,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:58:50,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:58:50,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:58:50,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:58:50,300.300 INFO    ] time= 28/10/2026 03:58:50
[2026-10-28 03:58:50,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:58:50,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:58:50,453.453 INFO    ] No existing commands found in stream
[2026-10-28 03:58:55,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:58:55,480.480 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-28 03:58:58,501.501 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 03:58:58,504.504 INFO    ] Checking for system updates...
[2026-10-28 03:58:58,542.542 INFO    ] 200
[2026-10-28 03:58:58,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:58:58,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:58:58,599.599 INFO    ] No update needed
[2026-10-28 03:58:58,601.601 INFO    ] Checking for camera pi updates...
[2026-10-28 03:58:58,635.635 INFO    ] 200
[2026-10-28 03:58:58,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:58:58,677.677 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:58:58,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:58:58,767.767 INFO    ] No camera update needed
[2026-10-28 03:58:58,769.769 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:58:58,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:58:58,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:58:58,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:59:00,826.826 INFO    ] ================================================
[2026-10-28 03:59:00,845.845 INFO    ] Launching Daemon at Wed Oct 28 03:59:00 IST 2026
[2026-10-28 03:59:00,856.856 INFO    ] ================================================
[2026-10-28 03:59:01,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:59:01
[2026-10-28 03:59:02,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:59:02,638.638 INFO    ] Initializing speech engine...
[2026-10-28 03:59:02,649.649 INFO    ] 2026-10-28 03:59:02
[2026-10-28 03:59:02,969.969 INFO    ] 2026-10-28 03:59:02
[2026-10-28 03:59:03,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:59:03,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:59:03,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:59:03,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:59:03,592.592 INFO    ] time= 28/10/2026 03:59:03
[2026-10-28 03:59:03,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:59:03,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:59:03,782.782 INFO    ] No existing commands found in stream
[2026-10-28 03:59:08,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:59:08,808.808 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 03:59:11,495.495 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:59:11,498.498 INFO    ] Checking for system updates...
[2026-10-28 03:59:11,535.535 INFO    ] 200
[2026-10-28 03:59:11,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:59:11,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:59:11,591.591 INFO    ] No update needed
[2026-10-28 03:59:11,594.594 INFO    ] Checking for camera pi updates...
[2026-10-28 03:59:11,627.627 INFO    ] 200
[2026-10-28 03:59:11,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:59:11,671.671 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:59:11,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:59:11,756.756 INFO    ] No camera update needed
[2026-10-28 03:59:11,758.758 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:59:11,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:59:11,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:59:11,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:59:13,815.815 INFO    ] ================================================
[2026-10-28 03:59:13,830.830 INFO    ] Launching Daemon at Wed Oct 28 03:59:13 IST 2026
[2026-10-28 03:59:13,841.841 INFO    ] ================================================
[2026-10-28 03:59:14,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:59:14
[2026-10-28 03:59:15,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:59:15,271.271 INFO    ] Initializing speech engine...
[2026-10-28 03:59:15,280.280 INFO    ] 2026-10-28 03:59:15
[2026-10-28 03:59:15,526.526 INFO    ] 2026-10-28 03:59:15
[2026-10-28 03:59:15,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:59:15,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:59:15,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:59:16,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:59:16,082.082 INFO    ] time= 28/10/2026 03:59:16
[2026-10-28 03:59:16,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:59:16,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:59:16,235.235 INFO    ] No existing commands found in stream
[2026-10-28 03:59:21,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:59:21,258.258 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-28 03:59:24,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 03:59:24,745.745 INFO    ] Checking for system updates...
[2026-10-28 03:59:24,785.785 INFO    ] 200
[2026-10-28 03:59:24,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:59:24,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:59:24,844.844 INFO    ] No update needed
[2026-10-28 03:59:24,846.846 INFO    ] Checking for camera pi updates...
[2026-10-28 03:59:24,880.880 INFO    ] 200
[2026-10-28 03:59:24,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:59:24,926.926 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:59:25,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 03:59:25,027.027 INFO    ] No camera update needed
[2026-10-28 03:59:25,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:59:25,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:59:25,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:59:25,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:59:27,082.082 INFO    ] ================================================
[2026-10-28 03:59:27,098.098 INFO    ] Launching Daemon at Wed Oct 28 03:59:27 IST 2026
[2026-10-28 03:59:27,109.109 INFO    ] ================================================
[2026-10-28 03:59:27,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:59:27
[2026-10-28 03:59:28,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:59:28,520.520 INFO    ] Initializing speech engine...
[2026-10-28 03:59:28,530.530 INFO    ] 2026-10-28 03:59:28
[2026-10-28 03:59:28,825.825 INFO    ] 2026-10-28 03:59:28
[2026-10-28 03:59:28,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:59:29,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:59:29,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:59:29,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:59:29,386.386 INFO    ] time= 28/10/2026 03:59:29
[2026-10-28 03:59:29,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:59:29,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:59:29,590.590 INFO    ] No existing commands found in stream
[2026-10-28 03:59:34,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:59:34,609.609 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-28 03:59:37,599.599 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:59:37,602.602 INFO    ] Checking for system updates...
[2026-10-28 03:59:37,637.637 INFO    ] 200
[2026-10-28 03:59:37,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:59:37,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:59:37,694.694 INFO    ] No update needed
[2026-10-28 03:59:37,697.697 INFO    ] Checking for camera pi updates...
[2026-10-28 03:59:37,731.731 INFO    ] 200
[2026-10-28 03:59:37,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:59:37,774.774 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:59:37,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:59:37,852.852 INFO    ] No camera update needed
[2026-10-28 03:59:37,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:59:37,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:59:37,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:59:37,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:59:39,909.909 INFO    ] ================================================
[2026-10-28 03:59:39,924.924 INFO    ] Launching Daemon at Wed Oct 28 03:59:39 IST 2026
[2026-10-28 03:59:39,934.934 INFO    ] ================================================
[2026-10-28 03:59:40,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:59:40
[2026-10-28 03:59:41,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:59:41,367.367 INFO    ] Initializing speech engine...
[2026-10-28 03:59:41,383.383 INFO    ] 2026-10-28 03:59:41
[2026-10-28 03:59:41,641.641 INFO    ] 2026-10-28 03:59:41
[2026-10-28 03:59:41,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:59:41,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:59:42,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:59:42,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:59:42,204.204 INFO    ] time= 28/10/2026 03:59:42
[2026-10-28 03:59:42,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:59:42,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:59:42,370.370 INFO    ] No existing commands found in stream
[2026-10-28 03:59:47,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 03:59:47,404.404 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-28 03:59:50,942.942 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 03:59:50,949.949 INFO    ] Checking for system updates...
[2026-10-28 03:59:50,985.985 INFO    ] 200
[2026-10-28 03:59:50,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:59:51,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:59:51,044.044 INFO    ] No update needed
[2026-10-28 03:59:51,046.046 INFO    ] Checking for camera pi updates...
[2026-10-28 03:59:51,079.079 INFO    ] 200
[2026-10-28 03:59:51,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 03:59:51,130.130 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 03:59:51,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 03:59:51,210.210 INFO    ] No camera update needed
[2026-10-28 03:59:51,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-28 03:59:51,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 03:59:51,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 03:59:51,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 03:59:53,267.267 INFO    ] ================================================
[2026-10-28 03:59:53,285.285 INFO    ] Launching Daemon at Wed Oct 28 03:59:53 IST 2026
[2026-10-28 03:59:53,296.296 INFO    ] ================================================
[2026-10-28 03:59:53,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 03:59:53
[2026-10-28 03:59:54,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 03:59:54,958.958 INFO    ] Initializing speech engine...
[2026-10-28 03:59:54,969.969 INFO    ] 2026-10-28 03:59:54
[2026-10-28 03:59:55,261.261 INFO    ] 2026-10-28 03:59:55
[2026-10-28 03:59:55,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 03:59:55,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 03:59:55,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 03:59:55,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 03:59:55,985.985 INFO    ] time= 28/10/2026 03:59:55
[2026-10-28 03:59:56,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 03:59:56,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-28 03:59:56,235.235 INFO    ] No existing commands found in stream
[2026-10-28 04:00:01,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:00:01,254.254 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 04:00:02,272.272 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:00:02,312.312 INFO    ] Checking for system updates...
[2026-10-28 04:00:02,684.684 INFO    ] 200
[2026-10-28 04:00:02,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:00:03,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:00:03,039.039 INFO    ] No update needed
[2026-10-28 04:00:03,042.042 INFO    ] Checking for camera pi updates...
[2026-10-28 04:00:03,526.526 INFO    ] 200
[2026-10-28 04:00:03,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:00:03,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:00:04,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:00:04,560.560 INFO    ] No camera update needed
[2026-10-28 04:00:04,573.573 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:00:04,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:00:04,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:00:04,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:00:06,728.728 INFO    ] ================================================
[2026-10-28 04:00:06,745.745 INFO    ] Launching Daemon at Wed Oct 28 04:00:06 IST 2026
[2026-10-28 04:00:06,755.755 INFO    ] ================================================
[2026-10-28 04:00:07,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:00:07
[2026-10-28 04:00:08,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:00:08,344.344 INFO    ] Initializing speech engine...
[2026-10-28 04:00:08,351.351 INFO    ] 2026-10-28 04:00:08
[2026-10-28 04:00:08,624.624 INFO    ] 2026-10-28 04:00:08
[2026-10-28 04:00:08,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:00:08,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:00:08,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:00:09,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:00:09,210.210 INFO    ] time= 28/10/2026 04:00:09
[2026-10-28 04:00:09,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:00:09,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:00:09,343.343 INFO    ] No existing commands found in stream
[2026-10-28 04:00:14,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:00:14,360.360 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 04:00:16,081.081 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:00:16,083.083 INFO    ] Checking for system updates...
[2026-10-28 04:00:16,118.118 INFO    ] 200
[2026-10-28 04:00:16,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:00:16,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:00:16,175.175 INFO    ] No update needed
[2026-10-28 04:00:16,177.177 INFO    ] Checking for camera pi updates...
[2026-10-28 04:00:16,211.211 INFO    ] 200
[2026-10-28 04:00:16,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:00:16,255.255 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:00:16,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:00:16,334.334 INFO    ] No camera update needed
[2026-10-28 04:00:16,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:00:16,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:00:16,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:00:16,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:00:18,389.389 INFO    ] ================================================
[2026-10-28 04:00:18,405.405 INFO    ] Launching Daemon at Wed Oct 28 04:00:18 IST 2026
[2026-10-28 04:00:18,416.416 INFO    ] ================================================
[2026-10-28 04:00:19,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:00:19
[2026-10-28 04:00:19,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:00:20,024.024 INFO    ] Initializing speech engine...
[2026-10-28 04:00:20,037.037 INFO    ] 2026-10-28 04:00:20
[2026-10-28 04:00:20,348.348 INFO    ] 2026-10-28 04:00:20
[2026-10-28 04:00:20,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:00:20,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:00:20,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:00:20,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:00:20,865.865 INFO    ] time= 28/10/2026 04:00:20
[2026-10-28 04:00:20,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:00:20,900.900 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:00:21,026.026 INFO    ] No existing commands found in stream
[2026-10-28 04:00:26,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:00:26,056.056 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 04:00:30,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:00:30,029.029 INFO    ] Checking for system updates...
[2026-10-28 04:00:30,070.070 INFO    ] 200
[2026-10-28 04:00:30,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:00:30,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:00:30,134.134 INFO    ] No update needed
[2026-10-28 04:00:30,137.137 INFO    ] Checking for camera pi updates...
[2026-10-28 04:00:30,176.176 INFO    ] 200
[2026-10-28 04:00:30,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:00:30,228.228 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:00:30,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:00:30,419.419 INFO    ] No camera update needed
[2026-10-28 04:00:30,421.421 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:00:30,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:00:30,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:00:30,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:00:32,478.478 INFO    ] ================================================
[2026-10-28 04:00:32,496.496 INFO    ] Launching Daemon at Wed Oct 28 04:00:32 IST 2026
[2026-10-28 04:00:32,508.508 INFO    ] ================================================
[2026-10-28 04:00:33,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:00:33
[2026-10-28 04:00:33,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:00:34,074.074 INFO    ] Initializing speech engine...
[2026-10-28 04:00:34,087.087 INFO    ] 2026-10-28 04:00:34
[2026-10-28 04:00:34,361.361 INFO    ] 2026-10-28 04:00:34
[2026-10-28 04:00:34,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:00:34,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:00:34,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:00:34,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:00:34,915.915 INFO    ] time= 28/10/2026 04:00:34
[2026-10-28 04:00:34,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:00:34,952.952 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:00:35,070.070 INFO    ] No existing commands found in stream
[2026-10-28 04:00:40,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:00:40,099.099 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-28 04:00:43,442.442 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:00:43,445.445 INFO    ] Checking for system updates...
[2026-10-28 04:00:43,488.488 INFO    ] 200
[2026-10-28 04:00:43,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:00:43,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:00:43,552.552 INFO    ] No update needed
[2026-10-28 04:00:43,555.555 INFO    ] Checking for camera pi updates...
[2026-10-28 04:00:43,590.590 INFO    ] 200
[2026-10-28 04:00:43,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:00:43,635.635 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:00:43,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:00:43,712.712 INFO    ] No camera update needed
[2026-10-28 04:00:43,714.714 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:00:43,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:00:43,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:00:43,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:00:45,769.769 INFO    ] ================================================
[2026-10-28 04:00:45,785.785 INFO    ] Launching Daemon at Wed Oct 28 04:00:45 IST 2026
[2026-10-28 04:00:45,796.796 INFO    ] ================================================
[2026-10-28 04:00:46,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:00:46
[2026-10-28 04:00:47,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:00:47,388.388 INFO    ] Initializing speech engine...
[2026-10-28 04:00:47,401.401 INFO    ] 2026-10-28 04:00:47
[2026-10-28 04:00:47,683.683 INFO    ] 2026-10-28 04:00:47
[2026-10-28 04:00:47,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:00:48,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:00:48,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:00:48,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:00:48,266.266 INFO    ] time= 28/10/2026 04:00:48
[2026-10-28 04:00:48,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:00:48,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:00:48,451.451 INFO    ] No existing commands found in stream
[2026-10-28 04:00:53,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:00:53,480.480 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-28 04:00:57,282.282 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:00:57,286.286 INFO    ] Checking for system updates...
[2026-10-28 04:00:57,323.323 INFO    ] 200
[2026-10-28 04:00:57,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:00:57,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:00:57,380.380 INFO    ] No update needed
[2026-10-28 04:00:57,382.382 INFO    ] Checking for camera pi updates...
[2026-10-28 04:00:57,417.417 INFO    ] 200
[2026-10-28 04:00:57,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:00:57,461.461 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:00:57,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:00:57,516.516 INFO    ] No camera update needed
[2026-10-28 04:00:57,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:00:57,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:00:57,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:00:57,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:00:59,575.575 INFO    ] ================================================
[2026-10-28 04:00:59,591.591 INFO    ] Launching Daemon at Wed Oct 28 04:00:59 IST 2026
[2026-10-28 04:00:59,601.601 INFO    ] ================================================
[2026-10-28 04:01:00,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:01:00
[2026-10-28 04:01:00,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:01:01,022.022 INFO    ] Initializing speech engine...
[2026-10-28 04:01:01,031.031 INFO    ] 2026-10-28 04:01:01
[2026-10-28 04:01:01,283.283 INFO    ] 2026-10-28 04:01:01
[2026-10-28 04:01:01,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:01:01,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:01:01,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:01:01,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:01:01,807.807 INFO    ] time= 28/10/2026 04:01:01
[2026-10-28 04:01:01,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:01:01,822.822 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:01:01,933.933 INFO    ] No existing commands found in stream
[2026-10-28 04:01:06,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:01:06,948.948 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-28 04:01:07,802.802 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:01:07,805.805 INFO    ] Checking for system updates...
[2026-10-28 04:01:07,841.841 INFO    ] 200
[2026-10-28 04:01:07,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:01:07,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:01:07,907.907 INFO    ] No update needed
[2026-10-28 04:01:07,909.909 INFO    ] Checking for camera pi updates...
[2026-10-28 04:01:07,947.947 INFO    ] 200
[2026-10-28 04:01:07,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:01:07,991.991 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:01:08,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:01:08,079.079 INFO    ] No camera update needed
[2026-10-28 04:01:08,082.082 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:01:08,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:01:08,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:01:08,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:01:10,139.139 INFO    ] ================================================
[2026-10-28 04:01:10,156.156 INFO    ] Launching Daemon at Wed Oct 28 04:01:10 IST 2026
[2026-10-28 04:01:10,167.167 INFO    ] ================================================
[2026-10-28 04:01:10,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:01:10
[2026-10-28 04:01:11,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:01:11,630.630 INFO    ] Initializing speech engine...
[2026-10-28 04:01:11,639.639 INFO    ] 2026-10-28 04:01:11
[2026-10-28 04:01:11,899.899 INFO    ] 2026-10-28 04:01:11
[2026-10-28 04:01:11,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:01:12,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:01:12,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:01:12,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:01:12,448.448 INFO    ] time= 28/10/2026 04:01:12
[2026-10-28 04:01:12,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:01:12,536.536 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:01:12,700.700 INFO    ] No existing commands found in stream
[2026-10-28 04:01:17,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:01:17,723.723 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-28 04:01:21,946.946 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:01:21,948.948 INFO    ] Checking for system updates...
[2026-10-28 04:01:21,984.984 INFO    ] 200
[2026-10-28 04:01:21,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:01:22,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:01:22,041.041 INFO    ] No update needed
[2026-10-28 04:01:22,044.044 INFO    ] Checking for camera pi updates...
[2026-10-28 04:01:22,078.078 INFO    ] 200
[2026-10-28 04:01:22,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:01:22,121.121 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:01:22,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:01:22,214.214 INFO    ] No camera update needed
[2026-10-28 04:01:22,216.216 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:01:22,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:01:22,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:01:22,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:01:24,269.269 INFO    ] ================================================
[2026-10-28 04:01:24,285.285 INFO    ] Launching Daemon at Wed Oct 28 04:01:24 IST 2026
[2026-10-28 04:01:24,295.295 INFO    ] ================================================
[2026-10-28 04:01:24,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:01:24
[2026-10-28 04:01:25,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:01:25,751.751 INFO    ] Initializing speech engine...
[2026-10-28 04:01:25,757.757 INFO    ] 2026-10-28 04:01:25
[2026-10-28 04:01:26,050.050 INFO    ] 2026-10-28 04:01:26
[2026-10-28 04:01:26,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:01:26,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:01:26,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:01:26,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:01:26,553.553 INFO    ] time= 28/10/2026 04:01:26
[2026-10-28 04:01:26,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:01:26,646.646 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:01:26,752.752 INFO    ] No existing commands found in stream
[2026-10-28 04:01:31,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:01:31,767.767 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-28 04:01:33,451.451 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:01:33,454.454 INFO    ] Checking for system updates...
[2026-10-28 04:01:33,491.491 INFO    ] 200
[2026-10-28 04:01:33,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:01:33,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:01:33,548.548 INFO    ] No update needed
[2026-10-28 04:01:33,551.551 INFO    ] Checking for camera pi updates...
[2026-10-28 04:01:33,585.585 INFO    ] 200
[2026-10-28 04:01:33,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:01:33,633.633 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:01:33,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:01:33,732.732 INFO    ] No camera update needed
[2026-10-28 04:01:33,736.736 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:01:33,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:01:33,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:01:33,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:01:35,790.790 INFO    ] ================================================
[2026-10-28 04:01:35,805.805 INFO    ] Launching Daemon at Wed Oct 28 04:01:35 IST 2026
[2026-10-28 04:01:35,817.817 INFO    ] ================================================
[2026-10-28 04:01:36,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:01:36
[2026-10-28 04:01:37,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:01:37,461.461 INFO    ] Initializing speech engine...
[2026-10-28 04:01:37,467.467 INFO    ] 2026-10-28 04:01:37
[2026-10-28 04:01:37,750.750 INFO    ] 2026-10-28 04:01:37
[2026-10-28 04:01:37,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:01:38,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:01:38,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:01:38,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:01:38,359.359 INFO    ] time= 28/10/2026 04:01:38
[2026-10-28 04:01:38,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:01:38,376.376 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:01:38,520.520 INFO    ] No existing commands found in stream
[2026-10-28 04:01:43,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:01:43,551.551 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-28 04:01:46,722.722 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:01:46,725.725 INFO    ] Checking for system updates...
[2026-10-28 04:01:46,766.766 INFO    ] 200
[2026-10-28 04:01:46,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:01:46,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:01:46,839.839 INFO    ] No update needed
[2026-10-28 04:01:46,842.842 INFO    ] Checking for camera pi updates...
[2026-10-28 04:01:46,888.888 INFO    ] 200
[2026-10-28 04:01:46,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:01:46,947.947 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:01:47,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:01:47,028.028 INFO    ] No camera update needed
[2026-10-28 04:01:47,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:01:47,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:01:47,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:01:47,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:01:49,085.085 INFO    ] ================================================
[2026-10-28 04:01:49,101.101 INFO    ] Launching Daemon at Wed Oct 28 04:01:49 IST 2026
[2026-10-28 04:01:49,112.112 INFO    ] ================================================
[2026-10-28 04:01:49,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:01:49
[2026-10-28 04:01:50,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:01:50,511.511 INFO    ] Initializing speech engine...
[2026-10-28 04:01:50,520.520 INFO    ] 2026-10-28 04:01:50
[2026-10-28 04:01:50,806.806 INFO    ] 2026-10-28 04:01:50
[2026-10-28 04:01:50,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:01:51,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:01:51,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:01:51,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:01:51,393.393 INFO    ] time= 28/10/2026 04:01:51
[2026-10-28 04:01:51,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:01:51,441.441 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:01:51,568.568 INFO    ] No existing commands found in stream
[2026-10-28 04:01:56,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:01:56,587.587 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-28 04:01:58,338.338 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:01:58,341.341 INFO    ] Checking for system updates...
[2026-10-28 04:01:58,381.381 INFO    ] 200
[2026-10-28 04:01:58,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:01:58,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:01:58,439.439 INFO    ] No update needed
[2026-10-28 04:01:58,441.441 INFO    ] Checking for camera pi updates...
[2026-10-28 04:01:58,476.476 INFO    ] 200
[2026-10-28 04:01:58,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:01:58,519.519 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:01:58,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:01:58,597.597 INFO    ] No camera update needed
[2026-10-28 04:01:58,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:01:58,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:01:58,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:01:58,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:02:00,657.657 INFO    ] ================================================
[2026-10-28 04:02:00,675.675 INFO    ] Launching Daemon at Wed Oct 28 04:02:00 IST 2026
[2026-10-28 04:02:00,687.687 INFO    ] ================================================
[2026-10-28 04:02:01,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:02:01
[2026-10-28 04:02:02,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:02:02,367.367 INFO    ] Initializing speech engine...
[2026-10-28 04:02:02,392.392 INFO    ] 2026-10-28 04:02:02
[2026-10-28 04:02:02,693.693 INFO    ] 2026-10-28 04:02:02
[2026-10-28 04:02:02,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:02:02,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:02:02,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:02:03,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:02:03,200.200 INFO    ] time= 28/10/2026 04:02:03
[2026-10-28 04:02:03,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:02:03,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:02:03,358.358 INFO    ] No existing commands found in stream
[2026-10-28 04:02:08,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:02:08,370.370 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-28 04:02:11,502.502 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:02:11,505.505 INFO    ] Checking for system updates...
[2026-10-28 04:02:11,540.540 INFO    ] 200
[2026-10-28 04:02:11,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:02:11,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:02:11,598.598 INFO    ] No update needed
[2026-10-28 04:02:11,600.600 INFO    ] Checking for camera pi updates...
[2026-10-28 04:02:11,633.633 INFO    ] 200
[2026-10-28 04:02:11,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:02:11,678.678 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:02:11,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:02:11,757.757 INFO    ] No camera update needed
[2026-10-28 04:02:11,759.759 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:02:11,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:02:11,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:02:11,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:02:13,814.814 INFO    ] ================================================
[2026-10-28 04:02:13,829.829 INFO    ] Launching Daemon at Wed Oct 28 04:02:13 IST 2026
[2026-10-28 04:02:13,840.840 INFO    ] ================================================
[2026-10-28 04:02:14,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:02:14
[2026-10-28 04:02:14,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:02:15,263.263 INFO    ] Initializing speech engine...
[2026-10-28 04:02:15,273.273 INFO    ] 2026-10-28 04:02:15
[2026-10-28 04:02:15,524.524 INFO    ] 2026-10-28 04:02:15
[2026-10-28 04:02:15,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:02:15,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:02:15,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:02:16,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:02:16,080.080 INFO    ] time= 28/10/2026 04:02:16
[2026-10-28 04:02:16,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:02:16,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:02:16,236.236 INFO    ] No existing commands found in stream
[2026-10-28 04:02:21,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:02:21,260.260 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-28 04:02:25,082.082 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:02:25,085.085 INFO    ] Checking for system updates...
[2026-10-28 04:02:25,122.122 INFO    ] 200
[2026-10-28 04:02:25,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:02:25,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:02:25,183.183 INFO    ] No update needed
[2026-10-28 04:02:25,186.186 INFO    ] Checking for camera pi updates...
[2026-10-28 04:02:25,221.221 INFO    ] 200
[2026-10-28 04:02:25,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:02:25,265.265 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:02:25,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:02:25,339.339 INFO    ] No camera update needed
[2026-10-28 04:02:25,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:02:25,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:02:25,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:02:25,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:02:27,395.395 INFO    ] ================================================
[2026-10-28 04:02:27,410.410 INFO    ] Launching Daemon at Wed Oct 28 04:02:27 IST 2026
[2026-10-28 04:02:27,421.421 INFO    ] ================================================
[2026-10-28 04:02:28,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:02:28
[2026-10-28 04:02:28,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:02:28,884.884 INFO    ] Initializing speech engine...
[2026-10-28 04:02:28,889.889 INFO    ] 2026-10-28 04:02:28
[2026-10-28 04:02:29,148.148 INFO    ] 2026-10-28 04:02:29
[2026-10-28 04:02:29,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:02:29,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:02:29,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:02:29,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:02:29,750.750 INFO    ] time= 28/10/2026 04:02:29
[2026-10-28 04:02:29,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:02:29,778.778 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:02:29,892.892 INFO    ] No existing commands found in stream
[2026-10-28 04:02:34,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:02:34,915.915 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-28 04:02:36,929.929 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:02:36,932.932 INFO    ] Checking for system updates...
[2026-10-28 04:02:36,971.971 INFO    ] 200
[2026-10-28 04:02:36,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:02:37,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:02:37,028.028 INFO    ] No update needed
[2026-10-28 04:02:37,030.030 INFO    ] Checking for camera pi updates...
[2026-10-28 04:02:37,063.063 INFO    ] 200
[2026-10-28 04:02:37,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:02:37,110.110 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:02:37,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:02:37,295.295 INFO    ] No camera update needed
[2026-10-28 04:02:37,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:02:37,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:02:37,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:02:37,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:02:39,349.349 INFO    ] ================================================
[2026-10-28 04:02:39,365.365 INFO    ] Launching Daemon at Wed Oct 28 04:02:39 IST 2026
[2026-10-28 04:02:39,375.375 INFO    ] ================================================
[2026-10-28 04:02:39,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:02:39
[2026-10-28 04:02:40,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:02:40,770.770 INFO    ] Initializing speech engine...
[2026-10-28 04:02:40,776.776 INFO    ] 2026-10-28 04:02:40
[2026-10-28 04:02:41,059.059 INFO    ] 2026-10-28 04:02:41
[2026-10-28 04:02:41,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:02:41,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:02:41,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:02:41,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:02:41,616.616 INFO    ] time= 28/10/2026 04:02:41
[2026-10-28 04:02:41,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:02:41,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:02:41,770.770 INFO    ] No existing commands found in stream
[2026-10-28 04:02:46,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:02:46,797.797 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 04:02:49,268.268 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:02:49,271.271 INFO    ] Checking for system updates...
[2026-10-28 04:02:49,307.307 INFO    ] 200
[2026-10-28 04:02:49,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:02:49,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:02:49,363.363 INFO    ] No update needed
[2026-10-28 04:02:49,366.366 INFO    ] Checking for camera pi updates...
[2026-10-28 04:02:49,404.404 INFO    ] 200
[2026-10-28 04:02:49,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:02:49,447.447 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:02:49,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:02:49,550.550 INFO    ] No camera update needed
[2026-10-28 04:02:49,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:02:49,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:02:49,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:02:49,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:02:51,609.609 INFO    ] ================================================
[2026-10-28 04:02:51,624.624 INFO    ] Launching Daemon at Wed Oct 28 04:02:51 IST 2026
[2026-10-28 04:02:51,635.635 INFO    ] ================================================
[2026-10-28 04:02:52,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:02:52
[2026-10-28 04:02:52,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:02:53,066.066 INFO    ] Initializing speech engine...
[2026-10-28 04:02:53,075.075 INFO    ] 2026-10-28 04:02:53
[2026-10-28 04:02:53,332.332 INFO    ] 2026-10-28 04:02:53
[2026-10-28 04:02:53,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:02:53,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:02:53,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:02:53,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:02:53,873.873 INFO    ] time= 28/10/2026 04:02:53
[2026-10-28 04:02:53,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:02:53,900.900 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:02:54,024.024 INFO    ] No existing commands found in stream
[2026-10-28 04:02:59,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:02:59,041.041 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 04:03:02,483.483 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:03:02,486.486 INFO    ] Checking for system updates...
[2026-10-28 04:03:02,539.539 INFO    ] 200
[2026-10-28 04:03:02,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:03:02,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:03:02,630.630 INFO    ] No update needed
[2026-10-28 04:03:02,633.633 INFO    ] Checking for camera pi updates...
[2026-10-28 04:03:02,682.682 INFO    ] 200
[2026-10-28 04:03:02,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:03:02,748.748 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:03:02,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:03:02,847.847 INFO    ] No camera update needed
[2026-10-28 04:03:02,850.850 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:03:02,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:03:02,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:03:02,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:03:04,904.904 INFO    ] ================================================
[2026-10-28 04:03:04,919.919 INFO    ] Launching Daemon at Wed Oct 28 04:03:04 IST 2026
[2026-10-28 04:03:04,930.930 INFO    ] ================================================
[2026-10-28 04:03:05,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:03:05
[2026-10-28 04:03:06,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:03:06,447.447 INFO    ] Initializing speech engine...
[2026-10-28 04:03:06,460.460 INFO    ] 2026-10-28 04:03:06
[2026-10-28 04:03:06,767.767 INFO    ] 2026-10-28 04:03:06
[2026-10-28 04:03:06,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:03:07,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:03:07,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:03:07,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:03:07,283.283 INFO    ] time= 28/10/2026 04:03:07
[2026-10-28 04:03:07,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:03:07,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:03:07,455.455 INFO    ] No existing commands found in stream
[2026-10-28 04:03:12,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:03:12,484.484 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-28 04:03:14,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:03:14,749.749 INFO    ] Checking for system updates...
[2026-10-28 04:03:14,786.786 INFO    ] 200
[2026-10-28 04:03:14,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:03:14,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:03:14,844.844 INFO    ] No update needed
[2026-10-28 04:03:14,847.847 INFO    ] Checking for camera pi updates...
[2026-10-28 04:03:14,881.881 INFO    ] 200
[2026-10-28 04:03:14,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:03:14,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:03:15,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:03:15,005.005 INFO    ] No camera update needed
[2026-10-28 04:03:15,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:03:15,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:03:15,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:03:15,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:03:17,059.059 INFO    ] ================================================
[2026-10-28 04:03:17,074.074 INFO    ] Launching Daemon at Wed Oct 28 04:03:17 IST 2026
[2026-10-28 04:03:17,084.084 INFO    ] ================================================
[2026-10-28 04:03:17,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:03:17
[2026-10-28 04:03:18,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:03:18,487.487 INFO    ] Initializing speech engine...
[2026-10-28 04:03:18,493.493 INFO    ] 2026-10-28 04:03:18
[2026-10-28 04:03:18,778.778 INFO    ] 2026-10-28 04:03:18
[2026-10-28 04:03:18,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:03:19,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:03:19,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:03:19,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:03:19,378.378 INFO    ] time= 28/10/2026 04:03:19
[2026-10-28 04:03:19,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:03:19,408.408 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:03:19,557.557 INFO    ] No existing commands found in stream
[2026-10-28 04:03:24,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:03:24,583.583 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-28 04:03:25,412.412 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:03:25,415.415 INFO    ] Checking for system updates...
[2026-10-28 04:03:25,450.450 INFO    ] 200
[2026-10-28 04:03:25,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:03:25,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:03:25,512.512 INFO    ] No update needed
[2026-10-28 04:03:25,515.515 INFO    ] Checking for camera pi updates...
[2026-10-28 04:03:25,550.550 INFO    ] 200
[2026-10-28 04:03:25,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:03:25,596.596 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:03:25,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:03:25,675.675 INFO    ] No camera update needed
[2026-10-28 04:03:25,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:03:25,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:03:25,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:03:25,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:03:27,732.732 INFO    ] ================================================
[2026-10-28 04:03:27,747.747 INFO    ] Launching Daemon at Wed Oct 28 04:03:27 IST 2026
[2026-10-28 04:03:27,758.758 INFO    ] ================================================
[2026-10-28 04:03:28,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:03:28
[2026-10-28 04:03:28,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:03:29,162.162 INFO    ] Initializing speech engine...
[2026-10-28 04:03:29,187.187 INFO    ] 2026-10-28 04:03:29
[2026-10-28 04:03:29,451.451 INFO    ] 2026-10-28 04:03:29
[2026-10-28 04:03:29,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:03:29,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:03:29,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:03:29,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:03:29,962.962 INFO    ] time= 28/10/2026 04:03:29
[2026-10-28 04:03:30,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:03:30,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:03:30,191.191 INFO    ] No existing commands found in stream
[2026-10-28 04:03:35,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:03:35,216.216 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-28 04:03:37,188.188 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:03:37,191.191 INFO    ] Checking for system updates...
[2026-10-28 04:03:37,226.226 INFO    ] 200
[2026-10-28 04:03:37,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:03:37,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:03:37,288.288 INFO    ] No update needed
[2026-10-28 04:03:37,290.290 INFO    ] Checking for camera pi updates...
[2026-10-28 04:03:37,326.326 INFO    ] 200
[2026-10-28 04:03:37,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:03:37,371.371 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:03:37,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:03:37,456.456 INFO    ] No camera update needed
[2026-10-28 04:03:37,458.458 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:03:37,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:03:37,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:03:37,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:03:39,511.511 INFO    ] ================================================
[2026-10-28 04:03:39,527.527 INFO    ] Launching Daemon at Wed Oct 28 04:03:39 IST 2026
[2026-10-28 04:03:39,537.537 INFO    ] ================================================
[2026-10-28 04:03:40,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:03:40
[2026-10-28 04:03:40,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:03:41,087.087 INFO    ] Initializing speech engine...
[2026-10-28 04:03:41,102.102 INFO    ] 2026-10-28 04:03:41
[2026-10-28 04:03:41,376.376 INFO    ] 2026-10-28 04:03:41
[2026-10-28 04:03:41,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:03:41,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:03:41,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:03:41,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:03:41,928.928 INFO    ] time= 28/10/2026 04:03:41
[2026-10-28 04:03:41,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:03:41,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:03:42,104.104 INFO    ] No existing commands found in stream
[2026-10-28 04:03:47,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:03:47,129.129 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-28 04:03:49,082.082 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:03:49,085.085 INFO    ] Checking for system updates...
[2026-10-28 04:03:49,121.121 INFO    ] 200
[2026-10-28 04:03:49,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:03:49,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:03:49,181.181 INFO    ] No update needed
[2026-10-28 04:03:49,184.184 INFO    ] Checking for camera pi updates...
[2026-10-28 04:03:49,218.218 INFO    ] 200
[2026-10-28 04:03:49,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:03:49,262.262 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:03:49,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:03:49,339.339 INFO    ] No camera update needed
[2026-10-28 04:03:49,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:03:49,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:03:49,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:03:49,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:03:51,399.399 INFO    ] ================================================
[2026-10-28 04:03:51,418.418 INFO    ] Launching Daemon at Wed Oct 28 04:03:51 IST 2026
[2026-10-28 04:03:51,430.430 INFO    ] ================================================
[2026-10-28 04:03:52,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:03:52
[2026-10-28 04:03:52,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:03:53,087.087 INFO    ] Initializing speech engine...
[2026-10-28 04:03:53,097.097 INFO    ] 2026-10-28 04:03:53
[2026-10-28 04:03:53,375.375 INFO    ] 2026-10-28 04:03:53
[2026-10-28 04:03:53,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:03:53,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:03:53,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:03:53,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:03:53,908.908 INFO    ] time= 28/10/2026 04:03:53
[2026-10-28 04:03:53,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:03:53,955.955 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:03:54,120.120 INFO    ] No existing commands found in stream
[2026-10-28 04:03:59,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:03:59,148.148 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-28 04:04:04,081.081 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:04:04,084.084 INFO    ] Checking for system updates...
[2026-10-28 04:04:04,120.120 INFO    ] 200
[2026-10-28 04:04:04,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:04:04,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:04:04,184.184 INFO    ] No update needed
[2026-10-28 04:04:04,186.186 INFO    ] Checking for camera pi updates...
[2026-10-28 04:04:04,224.224 INFO    ] 200
[2026-10-28 04:04:04,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:04:04,271.271 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:04:04,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:04:04,367.367 INFO    ] No camera update needed
[2026-10-28 04:04:04,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:04:04,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:04:04,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:04:04,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:04:06,424.424 INFO    ] ================================================
[2026-10-28 04:04:06,440.440 INFO    ] Launching Daemon at Wed Oct 28 04:04:06 IST 2026
[2026-10-28 04:04:06,451.451 INFO    ] ================================================
[2026-10-28 04:04:07,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:04:07
[2026-10-28 04:04:07,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:04:07,857.857 INFO    ] Initializing speech engine...
[2026-10-28 04:04:07,866.866 INFO    ] 2026-10-28 04:04:07
[2026-10-28 04:04:08,158.158 INFO    ] 2026-10-28 04:04:08
[2026-10-28 04:04:08,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:04:08,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:04:08,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:04:08,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:04:08,746.746 INFO    ] time= 28/10/2026 04:04:08
[2026-10-28 04:04:08,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:04:08,802.802 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:04:08,964.964 INFO    ] No existing commands found in stream
[2026-10-28 04:04:13,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:04:13,982.982 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-28 04:04:18,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:04:18,402.402 INFO    ] Checking for system updates...
[2026-10-28 04:04:18,438.438 INFO    ] 200
[2026-10-28 04:04:18,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:04:18,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:04:18,499.499 INFO    ] No update needed
[2026-10-28 04:04:18,501.501 INFO    ] Checking for camera pi updates...
[2026-10-28 04:04:18,535.535 INFO    ] 200
[2026-10-28 04:04:18,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:04:18,577.577 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:04:18,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:04:18,675.675 INFO    ] No camera update needed
[2026-10-28 04:04:18,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:04:18,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:04:18,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:04:18,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:04:20,732.732 INFO    ] ================================================
[2026-10-28 04:04:20,747.747 INFO    ] Launching Daemon at Wed Oct 28 04:04:20 IST 2026
[2026-10-28 04:04:20,758.758 INFO    ] ================================================
[2026-10-28 04:04:21,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:04:21
[2026-10-28 04:04:21,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:04:22,214.214 INFO    ] Initializing speech engine...
[2026-10-28 04:04:22,224.224 INFO    ] 2026-10-28 04:04:22
[2026-10-28 04:04:22,486.486 INFO    ] 2026-10-28 04:04:22
[2026-10-28 04:04:22,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:04:22,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:04:22,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:04:22,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:04:23,044.044 INFO    ] time= 28/10/2026 04:04:22
[2026-10-28 04:04:23,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:04:23,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:04:23,206.206 INFO    ] No existing commands found in stream
[2026-10-28 04:04:28,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:04:28,222.222 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-28 04:04:31,650.650 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:04:31,653.653 INFO    ] Checking for system updates...
[2026-10-28 04:04:31,699.699 INFO    ] 200
[2026-10-28 04:04:31,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:04:31,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:04:31,761.761 INFO    ] No update needed
[2026-10-28 04:04:31,764.764 INFO    ] Checking for camera pi updates...
[2026-10-28 04:04:31,805.805 INFO    ] 200
[2026-10-28 04:04:31,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:04:31,856.856 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:04:31,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:04:31,937.937 INFO    ] No camera update needed
[2026-10-28 04:04:31,940.940 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:04:31,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:04:31,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:04:31,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:04:34,997.997 INFO    ] ================================================
[2026-10-28 04:04:34,013.013 INFO    ] Launching Daemon at Wed Oct 28 04:04:34 IST 2026
[2026-10-28 04:04:34,024.024 INFO    ] ================================================
[2026-10-28 04:04:34,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:04:34
[2026-10-28 04:04:35,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:04:35,465.465 INFO    ] Initializing speech engine...
[2026-10-28 04:04:35,474.474 INFO    ] 2026-10-28 04:04:35
[2026-10-28 04:04:35,769.769 INFO    ] 2026-10-28 04:04:35
[2026-10-28 04:04:35,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:04:36,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:04:36,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:04:36,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:04:36,322.322 INFO    ] time= 28/10/2026 04:04:36
[2026-10-28 04:04:36,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:04:36,412.412 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:04:36,547.547 INFO    ] No existing commands found in stream
[2026-10-28 04:04:41,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:04:41,567.567 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-28 04:04:46,020.020 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:04:46,022.022 INFO    ] Checking for system updates...
[2026-10-28 04:04:46,066.066 INFO    ] 200
[2026-10-28 04:04:46,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:04:46,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:04:46,123.123 INFO    ] No update needed
[2026-10-28 04:04:46,126.126 INFO    ] Checking for camera pi updates...
[2026-10-28 04:04:46,163.163 INFO    ] 200
[2026-10-28 04:04:46,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:04:46,211.211 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:04:46,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:04:46,399.399 INFO    ] No camera update needed
[2026-10-28 04:04:46,401.401 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:04:46,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:04:46,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:04:46,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:04:48,454.454 INFO    ] ================================================
[2026-10-28 04:04:48,471.471 INFO    ] Launching Daemon at Wed Oct 28 04:04:48 IST 2026
[2026-10-28 04:04:48,482.482 INFO    ] ================================================
[2026-10-28 04:04:49,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:04:49
[2026-10-28 04:04:49,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:04:49,907.907 INFO    ] Initializing speech engine...
[2026-10-28 04:04:49,916.916 INFO    ] 2026-10-28 04:04:49
[2026-10-28 04:04:50,171.171 INFO    ] 2026-10-28 04:04:50
[2026-10-28 04:04:50,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:04:50,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:04:50,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:04:50,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:04:50,729.729 INFO    ] time= 28/10/2026 04:04:50
[2026-10-28 04:04:50,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:04:50,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:04:50,874.874 INFO    ] No existing commands found in stream
[2026-10-28 04:04:55,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:04:55,892.892 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 04:04:59,582.582 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:04:59,585.585 INFO    ] Checking for system updates...
[2026-10-28 04:04:59,621.621 INFO    ] 200
[2026-10-28 04:04:59,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:04:59,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:04:59,685.685 INFO    ] No update needed
[2026-10-28 04:04:59,688.688 INFO    ] Checking for camera pi updates...
[2026-10-28 04:04:59,725.725 INFO    ] 200
[2026-10-28 04:04:59,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:04:59,767.767 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:04:59,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:04:59,853.853 INFO    ] No camera update needed
[2026-10-28 04:04:59,855.855 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:04:59,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:04:59,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:04:59,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:05:01,918.918 INFO    ] ================================================
[2026-10-28 04:05:01,958.958 INFO    ] Launching Daemon at Wed Oct 28 04:05:01 IST 2026
[2026-10-28 04:05:02,007.007 INFO    ] ================================================
[2026-10-28 04:05:02,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:05:02
[2026-10-28 04:05:03,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:05:03,671.671 INFO    ] Initializing speech engine...
[2026-10-28 04:05:03,675.675 INFO    ] 2026-10-28 04:05:03
[2026-10-28 04:05:03,969.969 INFO    ] 2026-10-28 04:05:03
[2026-10-28 04:05:04,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:05:04,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:05:04,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:05:04,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:05:04,550.550 INFO    ] time= 28/10/2026 04:05:04
[2026-10-28 04:05:04,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:05:04,598.598 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:05:04,723.723 INFO    ] No existing commands found in stream
[2026-10-28 04:05:09,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:05:09,757.757 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-28 04:05:12,505.505 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:05:12,508.508 INFO    ] Checking for system updates...
[2026-10-28 04:05:12,549.549 INFO    ] 200
[2026-10-28 04:05:12,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:05:12,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:05:12,615.615 INFO    ] No update needed
[2026-10-28 04:05:12,618.618 INFO    ] Checking for camera pi updates...
[2026-10-28 04:05:12,656.656 INFO    ] 200
[2026-10-28 04:05:12,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:05:12,700.700 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:05:12,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:05:12,783.783 INFO    ] No camera update needed
[2026-10-28 04:05:12,786.786 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:05:12,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:05:12,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:05:12,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:05:14,842.842 INFO    ] ================================================
[2026-10-28 04:05:14,858.858 INFO    ] Launching Daemon at Wed Oct 28 04:05:14 IST 2026
[2026-10-28 04:05:14,869.869 INFO    ] ================================================
[2026-10-28 04:05:15,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:05:15
[2026-10-28 04:05:16,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:05:16,466.466 INFO    ] Initializing speech engine...
[2026-10-28 04:05:16,476.476 INFO    ] 2026-10-28 04:05:16
[2026-10-28 04:05:16,750.750 INFO    ] 2026-10-28 04:05:16
[2026-10-28 04:05:16,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:05:17,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:05:17,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:05:17,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:05:17,317.317 INFO    ] time= 28/10/2026 04:05:17
[2026-10-28 04:05:17,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:05:17,355.355 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:05:17,500.500 INFO    ] No existing commands found in stream
[2026-10-28 04:05:22,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:05:22,534.534 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-28 04:05:26,021.021 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:05:26,024.024 INFO    ] Checking for system updates...
[2026-10-28 04:05:26,064.064 INFO    ] 200
[2026-10-28 04:05:26,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:05:26,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:05:26,129.129 INFO    ] No update needed
[2026-10-28 04:05:26,132.132 INFO    ] Checking for camera pi updates...
[2026-10-28 04:05:26,169.169 INFO    ] 200
[2026-10-28 04:05:26,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:05:26,213.213 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:05:26,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:05:26,287.287 INFO    ] No camera update needed
[2026-10-28 04:05:26,290.290 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:05:26,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:05:26,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:05:26,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:05:28,347.347 INFO    ] ================================================
[2026-10-28 04:05:28,362.362 INFO    ] Launching Daemon at Wed Oct 28 04:05:28 IST 2026
[2026-10-28 04:05:28,373.373 INFO    ] ================================================
[2026-10-28 04:05:28,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:05:28
[2026-10-28 04:05:29,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:05:29,802.802 INFO    ] Initializing speech engine...
[2026-10-28 04:05:29,810.810 INFO    ] 2026-10-28 04:05:29
[2026-10-28 04:05:30,062.062 INFO    ] 2026-10-28 04:05:30
[2026-10-28 04:05:30,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:05:30,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:05:30,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:05:30,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:05:30,630.630 INFO    ] time= 28/10/2026 04:05:30
[2026-10-28 04:05:30,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:05:30,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:05:30,795.795 INFO    ] No existing commands found in stream
[2026-10-28 04:05:35,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:05:35,824.824 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-28 04:05:37,441.441 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:05:37,444.444 INFO    ] Checking for system updates...
[2026-10-28 04:05:37,483.483 INFO    ] 200
[2026-10-28 04:05:37,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:05:37,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:05:37,546.546 INFO    ] No update needed
[2026-10-28 04:05:37,548.548 INFO    ] Checking for camera pi updates...
[2026-10-28 04:05:37,582.582 INFO    ] 200
[2026-10-28 04:05:37,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:05:37,630.630 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:05:37,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:05:37,696.696 INFO    ] No camera update needed
[2026-10-28 04:05:37,698.698 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:05:37,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:05:37,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:05:37,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:05:39,753.753 INFO    ] ================================================
[2026-10-28 04:05:39,769.769 INFO    ] Launching Daemon at Wed Oct 28 04:05:39 IST 2026
[2026-10-28 04:05:39,780.780 INFO    ] ================================================
[2026-10-28 04:05:40,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:05:40
[2026-10-28 04:05:40,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:05:41,186.186 INFO    ] Initializing speech engine...
[2026-10-28 04:05:41,209.209 INFO    ] 2026-10-28 04:05:41
[2026-10-28 04:05:41,465.465 INFO    ] 2026-10-28 04:05:41
[2026-10-28 04:05:41,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:05:41,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:05:41,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:05:41,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:05:42,028.028 INFO    ] time= 28/10/2026 04:05:41
[2026-10-28 04:05:42,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:05:42,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:05:42,183.183 INFO    ] No existing commands found in stream
[2026-10-28 04:05:47,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:05:47,250.250 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 04:05:48,721.721 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:05:48,724.724 INFO    ] Checking for system updates...
[2026-10-28 04:05:48,760.760 INFO    ] 200
[2026-10-28 04:05:48,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:05:48,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:05:48,819.819 INFO    ] No update needed
[2026-10-28 04:05:48,821.821 INFO    ] Checking for camera pi updates...
[2026-10-28 04:05:48,858.858 INFO    ] 200
[2026-10-28 04:05:48,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:05:48,900.900 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:05:48,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:05:48,961.961 INFO    ] No camera update needed
[2026-10-28 04:05:48,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:05:48,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:05:48,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:05:48,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:05:51,016.016 INFO    ] ================================================
[2026-10-28 04:05:51,036.036 INFO    ] Launching Daemon at Wed Oct 28 04:05:51 IST 2026
[2026-10-28 04:05:51,047.047 INFO    ] ================================================
[2026-10-28 04:05:51,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:05:51
[2026-10-28 04:05:52,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:05:52,450.450 INFO    ] Initializing speech engine...
[2026-10-28 04:05:52,596.596 INFO    ] 2026-10-28 04:05:52
[2026-10-28 04:05:52,910.910 INFO    ] 2026-10-28 04:05:52
[2026-10-28 04:05:52,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:05:53,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:05:53,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:05:53,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:05:53,532.532 INFO    ] time= 28/10/2026 04:05:53
[2026-10-28 04:05:53,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:05:53,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:05:53,716.716 INFO    ] No existing commands found in stream
[2026-10-28 04:05:58,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:05:58,740.740 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-28 04:06:03,051.051 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:06:03,054.054 INFO    ] Checking for system updates...
[2026-10-28 04:06:03,098.098 INFO    ] 200
[2026-10-28 04:06:03,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:06:03,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:06:03,205.205 INFO    ] No update needed
[2026-10-28 04:06:03,209.209 INFO    ] Checking for camera pi updates...
[2026-10-28 04:06:03,258.258 INFO    ] 200
[2026-10-28 04:06:03,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:06:03,311.311 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:06:03,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:06:03,401.401 INFO    ] No camera update needed
[2026-10-28 04:06:03,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:06:03,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:06:03,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:06:03,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:06:05,457.457 INFO    ] ================================================
[2026-10-28 04:06:05,472.472 INFO    ] Launching Daemon at Wed Oct 28 04:06:05 IST 2026
[2026-10-28 04:06:05,484.484 INFO    ] ================================================
[2026-10-28 04:06:06,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:06:06
[2026-10-28 04:06:06,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:06:06,901.901 INFO    ] Initializing speech engine...
[2026-10-28 04:06:06,908.908 INFO    ] 2026-10-28 04:06:06
[2026-10-28 04:06:07,178.178 INFO    ] 2026-10-28 04:06:07
[2026-10-28 04:06:07,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:06:07,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:06:07,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:06:07,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:06:07,711.711 INFO    ] time= 28/10/2026 04:06:07
[2026-10-28 04:06:07,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:06:07,757.757 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:06:07,875.875 INFO    ] No existing commands found in stream
[2026-10-28 04:06:12,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:06:12,901.901 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-28 04:06:15,187.187 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:06:15,189.189 INFO    ] Checking for system updates...
[2026-10-28 04:06:15,229.229 INFO    ] 200
[2026-10-28 04:06:15,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:06:15,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:06:15,285.285 INFO    ] No update needed
[2026-10-28 04:06:15,288.288 INFO    ] Checking for camera pi updates...
[2026-10-28 04:06:15,321.321 INFO    ] 200
[2026-10-28 04:06:15,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:06:15,364.364 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:06:15,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:06:15,452.452 INFO    ] No camera update needed
[2026-10-28 04:06:15,455.455 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:06:15,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:06:15,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:06:15,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:06:17,506.506 INFO    ] ================================================
[2026-10-28 04:06:17,522.522 INFO    ] Launching Daemon at Wed Oct 28 04:06:17 IST 2026
[2026-10-28 04:06:17,533.533 INFO    ] ================================================
[2026-10-28 04:06:18,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:06:18
[2026-10-28 04:06:18,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:06:19,045.045 INFO    ] Initializing speech engine...
[2026-10-28 04:06:19,054.054 INFO    ] 2026-10-28 04:06:19
[2026-10-28 04:06:19,313.313 INFO    ] 2026-10-28 04:06:19
[2026-10-28 04:06:19,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:06:19,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:06:19,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:06:19,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:06:19,873.873 INFO    ] time= 28/10/2026 04:06:19
[2026-10-28 04:06:19,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:06:19,900.900 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:06:20,044.044 INFO    ] No existing commands found in stream
[2026-10-28 04:06:25,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:06:25,079.079 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-28 04:06:28,564.564 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:06:28,567.567 INFO    ] Checking for system updates...
[2026-10-28 04:06:28,619.619 INFO    ] 200
[2026-10-28 04:06:28,622.622 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 04:06:28,625.625 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-28 04:06:28,628.628 INFO    ] Checking for camera pi updates...
[2026-10-28 04:06:28,676.676 INFO    ] 200
[2026-10-28 04:06:28,679.679 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 04:06:28,682.682 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-28 04:06:28,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:06:28,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:06:28,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:06:28,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:06:30,744.744 INFO    ] ================================================
[2026-10-28 04:06:30,760.760 INFO    ] Launching Daemon at Wed Oct 28 04:06:30 IST 2026
[2026-10-28 04:06:30,771.771 INFO    ] ================================================
[2026-10-28 04:06:31,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:06:31
[2026-10-28 04:06:31,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:06:32,252.252 INFO    ] Initializing speech engine...
[2026-10-28 04:06:32,261.261 INFO    ] 2026-10-28 04:06:32
[2026-10-28 04:06:32,572.572 INFO    ] 2026-10-28 04:06:32
[2026-10-28 04:06:32,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:06:32,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:06:32,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:06:33,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:06:33,073.073 INFO    ] time= 28/10/2026 04:06:33
[2026-10-28 04:06:33,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:06:33,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:06:33,330.330 INFO    ] No existing commands found in stream
[2026-10-28 04:06:38,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:06:38,359.359 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-28 04:06:42,026.026 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:06:42,029.029 INFO    ] Checking for system updates...
[2026-10-28 04:06:42,064.064 INFO    ] 200
[2026-10-28 04:06:42,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:06:42,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:06:42,129.129 INFO    ] No update needed
[2026-10-28 04:06:42,131.131 INFO    ] Checking for camera pi updates...
[2026-10-28 04:06:42,168.168 INFO    ] 200
[2026-10-28 04:06:42,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:06:42,211.211 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:06:42,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:06:42,289.289 INFO    ] No camera update needed
[2026-10-28 04:06:42,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:06:42,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:06:42,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:06:42,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:06:44,344.344 INFO    ] ================================================
[2026-10-28 04:06:44,360.360 INFO    ] Launching Daemon at Wed Oct 28 04:06:44 IST 2026
[2026-10-28 04:06:44,371.371 INFO    ] ================================================
[2026-10-28 04:06:44,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:06:44
[2026-10-28 04:06:45,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:06:45,820.820 INFO    ] Initializing speech engine...
[2026-10-28 04:06:45,830.830 INFO    ] 2026-10-28 04:06:45
[2026-10-28 04:06:46,096.096 INFO    ] 2026-10-28 04:06:46
[2026-10-28 04:06:46,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:06:46,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:06:46,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:06:46,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:06:46,640.640 INFO    ] time= 28/10/2026 04:06:46
[2026-10-28 04:06:46,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:06:46,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:06:46,774.774 INFO    ] No existing commands found in stream
[2026-10-28 04:06:51,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:06:51,802.802 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-28 04:06:56,308.308 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:06:56,311.311 INFO    ] Checking for system updates...
[2026-10-28 04:06:56,350.350 INFO    ] 200
[2026-10-28 04:06:56,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:06:56,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:06:56,409.409 INFO    ] No update needed
[2026-10-28 04:06:56,411.411 INFO    ] Checking for camera pi updates...
[2026-10-28 04:06:56,449.449 INFO    ] 200
[2026-10-28 04:06:56,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:06:56,492.492 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:06:56,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:06:56,678.678 INFO    ] No camera update needed
[2026-10-28 04:06:56,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:06:56,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:06:56,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:06:56,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:06:58,741.741 INFO    ] ================================================
[2026-10-28 04:06:58,756.756 INFO    ] Launching Daemon at Wed Oct 28 04:06:58 IST 2026
[2026-10-28 04:06:58,767.767 INFO    ] ================================================
[2026-10-28 04:06:59,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:06:59
[2026-10-28 04:07:00,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:07:00,431.431 INFO    ] Initializing speech engine...
[2026-10-28 04:07:00,444.444 INFO    ] 2026-10-28 04:07:00
[2026-10-28 04:07:00,759.759 INFO    ] 2026-10-28 04:07:00
[2026-10-28 04:07:00,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:07:01,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:07:01,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:07:01,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:07:01,505.505 INFO    ] time= 28/10/2026 04:07:01
[2026-10-28 04:07:01,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:07:01,626.626 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:07:01,810.810 INFO    ] No existing commands found in stream
[2026-10-28 04:07:06,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:07:06,840.840 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-28 04:07:08,010.010 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:07:08,013.013 INFO    ] Checking for system updates...
[2026-10-28 04:07:08,054.054 INFO    ] 200
[2026-10-28 04:07:08,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:07:08,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:07:08,119.119 INFO    ] No update needed
[2026-10-28 04:07:08,121.121 INFO    ] Checking for camera pi updates...
[2026-10-28 04:07:08,159.159 INFO    ] 200
[2026-10-28 04:07:08,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:07:08,205.205 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:07:08,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:07:08,290.290 INFO    ] No camera update needed
[2026-10-28 04:07:08,292.292 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:07:08,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:07:08,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:07:08,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:07:10,349.349 INFO    ] ================================================
[2026-10-28 04:07:10,365.365 INFO    ] Launching Daemon at Wed Oct 28 04:07:10 IST 2026
[2026-10-28 04:07:10,376.376 INFO    ] ================================================
[2026-10-28 04:07:10,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:07:10
[2026-10-28 04:07:11,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:07:11,804.804 INFO    ] Initializing speech engine...
[2026-10-28 04:07:11,819.819 INFO    ] 2026-10-28 04:07:11
[2026-10-28 04:07:12,100.100 INFO    ] 2026-10-28 04:07:12
[2026-10-28 04:07:12,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:07:12,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:07:12,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:07:12,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:07:12,707.707 INFO    ] time= 28/10/2026 04:07:12
[2026-10-28 04:07:12,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:07:12,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:07:12,859.859 INFO    ] No existing commands found in stream
[2026-10-28 04:07:17,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:07:17,884.884 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 04:07:22,483.483 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:07:22,486.486 INFO    ] Checking for system updates...
[2026-10-28 04:07:22,524.524 INFO    ] 200
[2026-10-28 04:07:22,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:07:22,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:07:22,587.587 INFO    ] No update needed
[2026-10-28 04:07:22,589.589 INFO    ] Checking for camera pi updates...
[2026-10-28 04:07:22,622.622 INFO    ] 200
[2026-10-28 04:07:22,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:07:22,673.673 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:07:22,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:07:22,752.752 INFO    ] No camera update needed
[2026-10-28 04:07:22,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:07:22,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:07:22,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:07:22,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:07:24,808.808 INFO    ] ================================================
[2026-10-28 04:07:24,824.824 INFO    ] Launching Daemon at Wed Oct 28 04:07:24 IST 2026
[2026-10-28 04:07:24,836.836 INFO    ] ================================================
[2026-10-28 04:07:25,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:07:25
[2026-10-28 04:07:26,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:07:26,450.450 INFO    ] Initializing speech engine...
[2026-10-28 04:07:26,456.456 INFO    ] 2026-10-28 04:07:26
[2026-10-28 04:07:26,738.738 INFO    ] 2026-10-28 04:07:26
[2026-10-28 04:07:26,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:07:27,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:07:27,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:07:27,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:07:27,298.298 INFO    ] time= 28/10/2026 04:07:27
[2026-10-28 04:07:27,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:07:27,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:07:27,466.466 INFO    ] No existing commands found in stream
[2026-10-28 04:07:32,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:07:32,506.506 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 04:07:34,082.082 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:07:34,086.086 INFO    ] Checking for system updates...
[2026-10-28 04:07:34,124.124 INFO    ] 200
[2026-10-28 04:07:34,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:07:34,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:07:34,189.189 INFO    ] No update needed
[2026-10-28 04:07:34,192.192 INFO    ] Checking for camera pi updates...
[2026-10-28 04:07:34,227.227 INFO    ] 200
[2026-10-28 04:07:34,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:07:34,275.275 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:07:34,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:07:34,357.357 INFO    ] No camera update needed
[2026-10-28 04:07:34,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:07:34,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:07:34,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:07:34,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:07:36,412.412 INFO    ] ================================================
[2026-10-28 04:07:36,427.427 INFO    ] Launching Daemon at Wed Oct 28 04:07:36 IST 2026
[2026-10-28 04:07:36,438.438 INFO    ] ================================================
[2026-10-28 04:07:37,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:07:37
[2026-10-28 04:07:37,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:07:37,833.833 INFO    ] Initializing speech engine...
[2026-10-28 04:07:37,854.854 INFO    ] 2026-10-28 04:07:37
[2026-10-28 04:07:38,115.115 INFO    ] 2026-10-28 04:07:38
[2026-10-28 04:07:38,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:07:38,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:07:38,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:07:38,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:07:38,685.685 INFO    ] time= 28/10/2026 04:07:38
[2026-10-28 04:07:38,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:07:38,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:07:38,841.841 INFO    ] No existing commands found in stream
[2026-10-28 04:07:43,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:07:43,874.874 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-28 04:07:45,569.569 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:07:45,571.571 INFO    ] Checking for system updates...
[2026-10-28 04:07:45,606.606 INFO    ] 200
[2026-10-28 04:07:45,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:07:45,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:07:45,667.667 INFO    ] No update needed
[2026-10-28 04:07:45,670.670 INFO    ] Checking for camera pi updates...
[2026-10-28 04:07:45,713.713 INFO    ] 200
[2026-10-28 04:07:45,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:07:45,764.764 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:07:45,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:07:45,851.851 INFO    ] No camera update needed
[2026-10-28 04:07:45,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:07:45,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:07:45,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:07:45,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:07:47,909.909 INFO    ] ================================================
[2026-10-28 04:07:47,924.924 INFO    ] Launching Daemon at Wed Oct 28 04:07:47 IST 2026
[2026-10-28 04:07:47,935.935 INFO    ] ================================================
[2026-10-28 04:07:48,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:07:48
[2026-10-28 04:07:49,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:07:49,362.362 INFO    ] Initializing speech engine...
[2026-10-28 04:07:49,377.377 INFO    ] 2026-10-28 04:07:49
[2026-10-28 04:07:49,645.645 INFO    ] 2026-10-28 04:07:49
[2026-10-28 04:07:49,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:07:49,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:07:49,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:07:50,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:07:50,063.063 INFO    ] time= 28/10/2026 04:07:50
[2026-10-28 04:07:50,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:07:50,112.112 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:07:50,257.257 INFO    ] No existing commands found in stream
[2026-10-28 04:07:55,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:07:55,290.290 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-28 04:07:59,327.327 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:07:59,330.330 INFO    ] Checking for system updates...
[2026-10-28 04:07:59,366.366 INFO    ] 200
[2026-10-28 04:07:59,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:07:59,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:07:59,435.435 INFO    ] No update needed
[2026-10-28 04:07:59,438.438 INFO    ] Checking for camera pi updates...
[2026-10-28 04:07:59,477.477 INFO    ] 200
[2026-10-28 04:07:59,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:07:59,525.525 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:07:59,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:07:59,605.605 INFO    ] No camera update needed
[2026-10-28 04:07:59,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:07:59,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:07:59,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:07:59,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:08:01,666.666 INFO    ] ================================================
[2026-10-28 04:08:01,688.688 INFO    ] Launching Daemon at Wed Oct 28 04:08:01 IST 2026
[2026-10-28 04:08:01,706.706 INFO    ] ================================================
[2026-10-28 04:08:02,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:08:02
[2026-10-28 04:08:03,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:08:03,314.314 INFO    ] Initializing speech engine...
[2026-10-28 04:08:03,325.325 INFO    ] 2026-10-28 04:08:03
[2026-10-28 04:08:03,590.590 INFO    ] 2026-10-28 04:08:03
[2026-10-28 04:08:03,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:08:03,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:08:03,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:08:04,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:08:04,185.185 INFO    ] time= 28/10/2026 04:08:04
[2026-10-28 04:08:04,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:08:04,222.222 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:08:04,364.364 INFO    ] No existing commands found in stream
[2026-10-28 04:08:09,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:08:09,382.382 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-28 04:08:10,679.679 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:08:10,682.682 INFO    ] Checking for system updates...
[2026-10-28 04:08:10,721.721 INFO    ] 200
[2026-10-28 04:08:10,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:08:10,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:08:10,778.778 INFO    ] No update needed
[2026-10-28 04:08:10,781.781 INFO    ] Checking for camera pi updates...
[2026-10-28 04:08:10,814.814 INFO    ] 200
[2026-10-28 04:08:10,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:08:10,858.858 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:08:10,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:08:10,936.936 INFO    ] No camera update needed
[2026-10-28 04:08:10,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:08:10,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:08:10,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:08:10,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:08:12,992.992 INFO    ] ================================================
[2026-10-28 04:08:13,008.008 INFO    ] Launching Daemon at Wed Oct 28 04:08:13 IST 2026
[2026-10-28 04:08:13,019.019 INFO    ] ================================================
[2026-10-28 04:08:13,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:08:13
[2026-10-28 04:08:14,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:08:14,440.440 INFO    ] Initializing speech engine...
[2026-10-28 04:08:14,457.457 INFO    ] 2026-10-28 04:08:14
[2026-10-28 04:08:14,711.711 INFO    ] 2026-10-28 04:08:14
[2026-10-28 04:08:14,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:08:15,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:08:15,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:08:15,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:08:15,276.276 INFO    ] time= 28/10/2026 04:08:15
[2026-10-28 04:08:15,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:08:15,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:08:15,441.441 INFO    ] No existing commands found in stream
[2026-10-28 04:08:20,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:08:20,459.459 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 04:08:24,024.024 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:08:24,027.027 INFO    ] Checking for system updates...
[2026-10-28 04:08:24,063.063 INFO    ] 200
[2026-10-28 04:08:24,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:08:24,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:08:24,128.128 INFO    ] No update needed
[2026-10-28 04:08:24,131.131 INFO    ] Checking for camera pi updates...
[2026-10-28 04:08:24,169.169 INFO    ] 200
[2026-10-28 04:08:24,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:08:24,212.212 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:08:24,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:08:24,309.309 INFO    ] No camera update needed
[2026-10-28 04:08:24,312.312 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:08:24,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:08:24,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:08:24,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:08:26,369.369 INFO    ] ================================================
[2026-10-28 04:08:26,384.384 INFO    ] Launching Daemon at Wed Oct 28 04:08:26 IST 2026
[2026-10-28 04:08:26,395.395 INFO    ] ================================================
[2026-10-28 04:08:27,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:08:27
[2026-10-28 04:08:27,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:08:28,015.015 INFO    ] Initializing speech engine...
[2026-10-28 04:08:28,024.024 INFO    ] 2026-10-28 04:08:28
[2026-10-28 04:08:28,320.320 INFO    ] 2026-10-28 04:08:28
[2026-10-28 04:08:28,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:08:28,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:08:28,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:08:28,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:08:28,872.872 INFO    ] time= 28/10/2026 04:08:28
[2026-10-28 04:08:28,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:08:28,910.910 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:08:29,046.046 INFO    ] No existing commands found in stream
[2026-10-28 04:08:34,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:08:34,076.076 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-28 04:08:37,131.131 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:08:37,134.134 INFO    ] Checking for system updates...
[2026-10-28 04:08:37,171.171 INFO    ] 200
[2026-10-28 04:08:37,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:08:37,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:08:37,236.236 INFO    ] No update needed
[2026-10-28 04:08:37,238.238 INFO    ] Checking for camera pi updates...
[2026-10-28 04:08:37,275.275 INFO    ] 200
[2026-10-28 04:08:37,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:08:37,319.319 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:08:37,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:08:37,425.425 INFO    ] No camera update needed
[2026-10-28 04:08:37,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:08:37,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:08:37,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:08:37,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:08:39,481.481 INFO    ] ================================================
[2026-10-28 04:08:39,496.496 INFO    ] Launching Daemon at Wed Oct 28 04:08:39 IST 2026
[2026-10-28 04:08:39,507.507 INFO    ] ================================================
[2026-10-28 04:08:40,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:08:40
[2026-10-28 04:08:40,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:08:40,964.964 INFO    ] Initializing speech engine...
[2026-10-28 04:08:40,970.970 INFO    ] 2026-10-28 04:08:40
[2026-10-28 04:08:41,244.244 INFO    ] 2026-10-28 04:08:41
[2026-10-28 04:08:41,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:08:41,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:08:41,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:08:41,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:08:41,775.775 INFO    ] time= 28/10/2026 04:08:41
[2026-10-28 04:08:41,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:08:41,822.822 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:08:41,929.929 INFO    ] No existing commands found in stream
[2026-10-28 04:08:46,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:08:46,948.948 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-28 04:08:48,293.293 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:08:48,296.296 INFO    ] Checking for system updates...
[2026-10-28 04:08:48,332.332 INFO    ] 200
[2026-10-28 04:08:48,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:08:48,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:08:48,418.418 INFO    ] No update needed
[2026-10-28 04:08:48,420.420 INFO    ] Checking for camera pi updates...
[2026-10-28 04:08:48,456.456 INFO    ] 200
[2026-10-28 04:08:48,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:08:48,499.499 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:08:48,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:08:48,576.576 INFO    ] No camera update needed
[2026-10-28 04:08:48,579.579 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:08:48,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:08:48,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:08:48,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:08:50,632.632 INFO    ] ================================================
[2026-10-28 04:08:50,648.648 INFO    ] Launching Daemon at Wed Oct 28 04:08:50 IST 2026
[2026-10-28 04:08:50,659.659 INFO    ] ================================================
[2026-10-28 04:08:51,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:08:51
[2026-10-28 04:08:51,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:08:52,087.087 INFO    ] Initializing speech engine...
[2026-10-28 04:08:52,094.094 INFO    ] 2026-10-28 04:08:52
[2026-10-28 04:08:52,390.390 INFO    ] 2026-10-28 04:08:52
[2026-10-28 04:08:52,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:08:52,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:08:52,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:08:52,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:08:52,954.954 INFO    ] time= 28/10/2026 04:08:52
[2026-10-28 04:08:53,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:08:53,031.031 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:08:53,165.165 INFO    ] No existing commands found in stream
[2026-10-28 04:08:58,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:08:58,199.199 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 04:09:00,161.161 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:09:00,164.164 INFO    ] Checking for system updates...
[2026-10-28 04:09:00,201.201 INFO    ] 200
[2026-10-28 04:09:00,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:09:00,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:09:00,258.258 INFO    ] No update needed
[2026-10-28 04:09:00,261.261 INFO    ] Checking for camera pi updates...
[2026-10-28 04:09:00,294.294 INFO    ] 200
[2026-10-28 04:09:00,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:09:00,337.337 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:09:00,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:09:00,522.522 INFO    ] No camera update needed
[2026-10-28 04:09:00,525.525 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:09:00,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:09:00,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:09:00,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:09:02,591.591 INFO    ] ================================================
[2026-10-28 04:09:02,611.611 INFO    ] Launching Daemon at Wed Oct 28 04:09:02 IST 2026
[2026-10-28 04:09:02,628.628 INFO    ] ================================================
[2026-10-28 04:09:03,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:09:03
[2026-10-28 04:09:03,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:09:04,138.138 INFO    ] Initializing speech engine...
[2026-10-28 04:09:04,148.148 INFO    ] 2026-10-28 04:09:04
[2026-10-28 04:09:04,416.416 INFO    ] 2026-10-28 04:09:04
[2026-10-28 04:09:04,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:09:04,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:09:04,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:09:04,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:09:04,932.932 INFO    ] time= 28/10/2026 04:09:04
[2026-10-28 04:09:04,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:09:05,031.031 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:09:05,190.190 INFO    ] No existing commands found in stream
[2026-10-28 04:09:10,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:09:10,215.215 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 04:09:11,040.040 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:09:11,042.042 INFO    ] Checking for system updates...
[2026-10-28 04:09:11,081.081 INFO    ] 200
[2026-10-28 04:09:11,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:09:11,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:09:11,146.146 INFO    ] No update needed
[2026-10-28 04:09:11,148.148 INFO    ] Checking for camera pi updates...
[2026-10-28 04:09:11,182.182 INFO    ] 200
[2026-10-28 04:09:11,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:09:11,232.232 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:09:11,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:09:11,328.328 INFO    ] No camera update needed
[2026-10-28 04:09:11,331.331 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:09:11,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:09:11,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:09:11,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:09:13,384.384 INFO    ] ================================================
[2026-10-28 04:09:13,398.398 INFO    ] Launching Daemon at Wed Oct 28 04:09:13 IST 2026
[2026-10-28 04:09:13,409.409 INFO    ] ================================================
[2026-10-28 04:09:13,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:09:13
[2026-10-28 04:09:14,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:09:14,814.814 INFO    ] Initializing speech engine...
[2026-10-28 04:09:14,823.823 INFO    ] 2026-10-28 04:09:14
[2026-10-28 04:09:15,116.116 INFO    ] 2026-10-28 04:09:15
[2026-10-28 04:09:15,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:09:15,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:09:15,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:09:15,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:09:15,640.640 INFO    ] time= 28/10/2026 04:09:15
[2026-10-28 04:09:15,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:09:15,738.738 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:09:15,890.890 INFO    ] No existing commands found in stream
[2026-10-28 04:09:20,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:09:20,923.923 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-28 04:09:23,067.067 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:09:23,070.070 INFO    ] Checking for system updates...
[2026-10-28 04:09:23,105.105 INFO    ] 200
[2026-10-28 04:09:23,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:09:23,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:09:23,164.164 INFO    ] No update needed
[2026-10-28 04:09:23,166.166 INFO    ] Checking for camera pi updates...
[2026-10-28 04:09:23,200.200 INFO    ] 200
[2026-10-28 04:09:23,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:09:23,243.243 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:09:23,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:09:23,321.321 INFO    ] No camera update needed
[2026-10-28 04:09:23,324.324 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:09:23,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:09:23,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:09:23,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:09:25,376.376 INFO    ] ================================================
[2026-10-28 04:09:25,390.390 INFO    ] Launching Daemon at Wed Oct 28 04:09:25 IST 2026
[2026-10-28 04:09:25,401.401 INFO    ] ================================================
[2026-10-28 04:09:26,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:09:26
[2026-10-28 04:09:26,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:09:27,022.022 INFO    ] Initializing speech engine...
[2026-10-28 04:09:27,033.033 INFO    ] 2026-10-28 04:09:27
[2026-10-28 04:09:27,341.341 INFO    ] 2026-10-28 04:09:27
[2026-10-28 04:09:27,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:09:27,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:09:27,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:09:27,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:09:27,901.901 INFO    ] time= 28/10/2026 04:09:27
[2026-10-28 04:09:27,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:09:28,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:09:28,176.176 INFO    ] No existing commands found in stream
[2026-10-28 04:09:33,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:09:33,206.206 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-28 04:09:34,091.091 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:09:34,095.095 INFO    ] Checking for system updates...
[2026-10-28 04:09:34,134.134 INFO    ] 200
[2026-10-28 04:09:34,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:09:34,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:09:34,192.192 INFO    ] No update needed
[2026-10-28 04:09:34,195.195 INFO    ] Checking for camera pi updates...
[2026-10-28 04:09:34,234.234 INFO    ] 200
[2026-10-28 04:09:34,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:09:34,280.280 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:09:34,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:09:34,382.382 INFO    ] No camera update needed
[2026-10-28 04:09:34,385.385 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:09:34,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:09:34,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:09:34,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:09:36,440.440 INFO    ] ================================================
[2026-10-28 04:09:36,455.455 INFO    ] Launching Daemon at Wed Oct 28 04:09:36 IST 2026
[2026-10-28 04:09:36,466.466 INFO    ] ================================================
[2026-10-28 04:09:37,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:09:37
[2026-10-28 04:09:37,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:09:37,870.870 INFO    ] Initializing speech engine...
[2026-10-28 04:09:37,892.892 INFO    ] 2026-10-28 04:09:37
[2026-10-28 04:09:38,167.167 INFO    ] 2026-10-28 04:09:38
[2026-10-28 04:09:38,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:09:38,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:09:38,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:09:38,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:09:38,703.703 INFO    ] time= 28/10/2026 04:09:38
[2026-10-28 04:09:38,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:09:38,808.808 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:09:38,936.936 INFO    ] No existing commands found in stream
[2026-10-28 04:09:43,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:09:43,962.962 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 04:09:44,665.665 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:09:44,668.668 INFO    ] Checking for system updates...
[2026-10-28 04:09:44,708.708 INFO    ] 200
[2026-10-28 04:09:44,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:09:44,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:09:44,768.768 INFO    ] No update needed
[2026-10-28 04:09:44,771.771 INFO    ] Checking for camera pi updates...
[2026-10-28 04:09:44,805.805 INFO    ] 200
[2026-10-28 04:09:44,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:09:44,849.849 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:09:44,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:09:44,938.938 INFO    ] No camera update needed
[2026-10-28 04:09:44,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:09:44,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:09:44,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:09:44,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:09:47,996.996 INFO    ] ================================================
[2026-10-28 04:09:47,011.011 INFO    ] Launching Daemon at Wed Oct 28 04:09:47 IST 2026
[2026-10-28 04:09:47,022.022 INFO    ] ================================================
[2026-10-28 04:09:47,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:09:47
[2026-10-28 04:09:48,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:09:48,430.430 INFO    ] Initializing speech engine...
[2026-10-28 04:09:48,446.446 INFO    ] 2026-10-28 04:09:48
[2026-10-28 04:09:48,733.733 INFO    ] 2026-10-28 04:09:48
[2026-10-28 04:09:48,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:09:48,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:09:49,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:09:49,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:09:49,232.232 INFO    ] time= 28/10/2026 04:09:49
[2026-10-28 04:09:49,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:09:49,330.330 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:09:49,456.456 INFO    ] No existing commands found in stream
[2026-10-28 04:09:54,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:09:54,495.495 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-28 04:09:56,414.414 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:09:56,417.417 INFO    ] Checking for system updates...
[2026-10-28 04:09:56,452.452 INFO    ] 200
[2026-10-28 04:09:56,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:09:56,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:09:56,509.509 INFO    ] No update needed
[2026-10-28 04:09:56,512.512 INFO    ] Checking for camera pi updates...
[2026-10-28 04:09:56,546.546 INFO    ] 200
[2026-10-28 04:09:56,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:09:56,589.589 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:09:56,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:09:56,680.680 INFO    ] No camera update needed
[2026-10-28 04:09:56,683.683 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:09:56,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:09:56,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:09:56,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:09:58,737.737 INFO    ] ================================================
[2026-10-28 04:09:58,753.753 INFO    ] Launching Daemon at Wed Oct 28 04:09:58 IST 2026
[2026-10-28 04:09:58,764.764 INFO    ] ================================================
[2026-10-28 04:09:59,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:09:59
[2026-10-28 04:10:00,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:10:00,414.414 INFO    ] Initializing speech engine...
[2026-10-28 04:10:00,425.425 INFO    ] 2026-10-28 04:10:00
[2026-10-28 04:10:00,679.679 INFO    ] 2026-10-28 04:10:00
[2026-10-28 04:10:00,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:10:01,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:10:01,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:10:01,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:10:01,239.239 INFO    ] time= 28/10/2026 04:10:01
[2026-10-28 04:10:01,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:10:01,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:10:01,380.380 INFO    ] No existing commands found in stream
[2026-10-28 04:10:06,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:10:06,394.394 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-28 04:10:10,482.482 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:10:10,485.485 INFO    ] Checking for system updates...
[2026-10-28 04:10:10,521.521 INFO    ] 200
[2026-10-28 04:10:10,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:10:10,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:10:10,579.579 INFO    ] No update needed
[2026-10-28 04:10:10,582.582 INFO    ] Checking for camera pi updates...
[2026-10-28 04:10:10,617.617 INFO    ] 200
[2026-10-28 04:10:10,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:10:10,665.665 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:10:10,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:10:10,775.775 INFO    ] No camera update needed
[2026-10-28 04:10:10,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:10:10,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:10:10,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:10:10,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:10:12,835.835 INFO    ] ================================================
[2026-10-28 04:10:12,851.851 INFO    ] Launching Daemon at Wed Oct 28 04:10:12 IST 2026
[2026-10-28 04:10:12,862.862 INFO    ] ================================================
[2026-10-28 04:10:13,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:10:13
[2026-10-28 04:10:14,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:10:14,266.266 INFO    ] Initializing speech engine...
[2026-10-28 04:10:14,275.275 INFO    ] 2026-10-28 04:10:14
[2026-10-28 04:10:14,565.565 INFO    ] 2026-10-28 04:10:14
[2026-10-28 04:10:14,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:10:14,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:10:14,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:10:15,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:10:15,086.086 INFO    ] time= 28/10/2026 04:10:15
[2026-10-28 04:10:15,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:10:15,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:10:15,312.312 INFO    ] No existing commands found in stream
[2026-10-28 04:10:20,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:10:20,340.340 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-28 04:10:23,442.442 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:10:23,445.445 INFO    ] Checking for system updates...
[2026-10-28 04:10:23,481.481 INFO    ] 200
[2026-10-28 04:10:23,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:10:23,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:10:23,545.545 INFO    ] No update needed
[2026-10-28 04:10:23,547.547 INFO    ] Checking for camera pi updates...
[2026-10-28 04:10:23,580.580 INFO    ] 200
[2026-10-28 04:10:23,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:10:23,624.624 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:10:23,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:10:23,701.701 INFO    ] No camera update needed
[2026-10-28 04:10:23,703.703 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:10:23,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:10:23,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:10:23,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:10:25,757.757 INFO    ] ================================================
[2026-10-28 04:10:25,772.772 INFO    ] Launching Daemon at Wed Oct 28 04:10:25 IST 2026
[2026-10-28 04:10:25,783.783 INFO    ] ================================================
[2026-10-28 04:10:26,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:10:26
[2026-10-28 04:10:27,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:10:27,384.384 INFO    ] Initializing speech engine...
[2026-10-28 04:10:27,392.392 INFO    ] 2026-10-28 04:10:27
[2026-10-28 04:10:27,670.670 INFO    ] 2026-10-28 04:10:27
[2026-10-28 04:10:27,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:10:28,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:10:28,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:10:28,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:10:28,267.267 INFO    ] time= 28/10/2026 04:10:28
[2026-10-28 04:10:28,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:10:28,330.330 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:10:28,471.471 INFO    ] No existing commands found in stream
[2026-10-28 04:10:33,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:10:33,498.498 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-28 04:10:34,629.629 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:10:34,632.632 INFO    ] Checking for system updates...
[2026-10-28 04:10:34,680.680 INFO    ] 200
[2026-10-28 04:10:34,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:10:34,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:10:34,739.739 INFO    ] No update needed
[2026-10-28 04:10:34,742.742 INFO    ] Checking for camera pi updates...
[2026-10-28 04:10:34,777.777 INFO    ] 200
[2026-10-28 04:10:34,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:10:34,825.825 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:10:34,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:10:34,924.924 INFO    ] No camera update needed
[2026-10-28 04:10:34,926.926 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:10:34,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:10:34,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:10:34,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:10:36,983.983 INFO    ] ================================================
[2026-10-28 04:10:37,999.999 INFO    ] Launching Daemon at Wed Oct 28 04:10:36 IST 2026
[2026-10-28 04:10:37,010.010 INFO    ] ================================================
[2026-10-28 04:10:37,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:10:37
[2026-10-28 04:10:38,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:10:38,408.408 INFO    ] Initializing speech engine...
[2026-10-28 04:10:38,414.414 INFO    ] 2026-10-28 04:10:38
[2026-10-28 04:10:38,705.705 INFO    ] 2026-10-28 04:10:38
[2026-10-28 04:10:38,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:10:38,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:10:38,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:10:39,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:10:39,117.117 INFO    ] time= 28/10/2026 04:10:39
[2026-10-28 04:10:39,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:10:39,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:10:39,280.280 INFO    ] No existing commands found in stream
[2026-10-28 04:10:44,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:10:44,307.307 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-28 04:10:48,923.923 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:10:48,926.926 INFO    ] Checking for system updates...
[2026-10-28 04:10:48,963.963 INFO    ] 200
[2026-10-28 04:10:48,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:10:49,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:10:49,019.019 INFO    ] No update needed
[2026-10-28 04:10:49,022.022 INFO    ] Checking for camera pi updates...
[2026-10-28 04:10:49,055.055 INFO    ] 200
[2026-10-28 04:10:49,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:10:49,098.098 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:10:49,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:10:49,189.189 INFO    ] No camera update needed
[2026-10-28 04:10:49,191.191 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:10:49,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:10:49,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:10:49,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:10:51,244.244 INFO    ] ================================================
[2026-10-28 04:10:51,260.260 INFO    ] Launching Daemon at Wed Oct 28 04:10:51 IST 2026
[2026-10-28 04:10:51,271.271 INFO    ] ================================================
[2026-10-28 04:10:51,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:10:51
[2026-10-28 04:10:52,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:10:52,684.684 INFO    ] Initializing speech engine...
[2026-10-28 04:10:52,693.693 INFO    ] 2026-10-28 04:10:52
[2026-10-28 04:10:52,984.984 INFO    ] 2026-10-28 04:10:52
[2026-10-28 04:10:53,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:10:53,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:10:53,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:10:53,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:10:53,590.590 INFO    ] time= 28/10/2026 04:10:53
[2026-10-28 04:10:53,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:10:53,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:10:53,766.766 INFO    ] No existing commands found in stream
[2026-10-28 04:10:58,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:10:58,790.790 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-28 04:10:59,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:10:59,868.868 INFO    ] Checking for system updates...
[2026-10-28 04:10:59,906.906 INFO    ] 200
[2026-10-28 04:10:59,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:10:59,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:10:59,965.965 INFO    ] No update needed
[2026-10-28 04:10:59,967.967 INFO    ] Checking for camera pi updates...
[2026-10-28 04:11:00,001.001 INFO    ] 200
[2026-10-28 04:11:00,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:11:00,044.044 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:11:00,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:11:00,154.154 INFO    ] No camera update needed
[2026-10-28 04:11:00,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:11:00,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:11:00,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:11:00,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:11:02,232.232 INFO    ] ================================================
[2026-10-28 04:11:02,253.253 INFO    ] Launching Daemon at Wed Oct 28 04:11:02 IST 2026
[2026-10-28 04:11:02,293.293 INFO    ] ================================================
[2026-10-28 04:11:02,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:11:02
[2026-10-28 04:11:03,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:11:03,915.915 INFO    ] Initializing speech engine...
[2026-10-28 04:11:03,921.921 INFO    ] 2026-10-28 04:11:03
[2026-10-28 04:11:04,206.206 INFO    ] 2026-10-28 04:11:04
[2026-10-28 04:11:04,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:11:04,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:11:04,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:11:04,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:11:04,689.689 INFO    ] time= 28/10/2026 04:11:04
[2026-10-28 04:11:04,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:11:04,714.714 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:11:04,834.834 INFO    ] No existing commands found in stream
[2026-10-28 04:11:09,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:11:09,846.846 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-28 04:11:12,728.728 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:11:12,730.730 INFO    ] Checking for system updates...
[2026-10-28 04:11:12,767.767 INFO    ] 200
[2026-10-28 04:11:12,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:11:12,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:11:12,832.832 INFO    ] No update needed
[2026-10-28 04:11:12,835.835 INFO    ] Checking for camera pi updates...
[2026-10-28 04:11:12,873.873 INFO    ] 200
[2026-10-28 04:11:12,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:11:12,918.918 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:11:12,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:11:13,002.002 INFO    ] No camera update needed
[2026-10-28 04:11:13,004.004 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:11:13,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:11:13,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:11:13,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:11:15,063.063 INFO    ] ================================================
[2026-10-28 04:11:15,079.079 INFO    ] Launching Daemon at Wed Oct 28 04:11:15 IST 2026
[2026-10-28 04:11:15,090.090 INFO    ] ================================================
[2026-10-28 04:11:15,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:11:15
[2026-10-28 04:11:16,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:11:16,508.508 INFO    ] Initializing speech engine...
[2026-10-28 04:11:16,517.517 INFO    ] 2026-10-28 04:11:16
[2026-10-28 04:11:16,767.767 INFO    ] 2026-10-28 04:11:16
[2026-10-28 04:11:16,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:11:17,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:11:17,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:11:17,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:11:17,333.333 INFO    ] time= 28/10/2026 04:11:17
[2026-10-28 04:11:17,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:11:17,357.357 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:11:17,490.490 INFO    ] No existing commands found in stream
[2026-10-28 04:11:22,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:11:22,507.507 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 04:11:23,969.969 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:11:23,972.972 INFO    ] Checking for system updates...
[2026-10-28 04:11:24,008.008 INFO    ] 200
[2026-10-28 04:11:24,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:11:24,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:11:24,064.064 INFO    ] No update needed
[2026-10-28 04:11:24,067.067 INFO    ] Checking for camera pi updates...
[2026-10-28 04:11:24,116.116 INFO    ] 200
[2026-10-28 04:11:24,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:11:24,159.159 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:11:24,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:11:24,239.239 INFO    ] No camera update needed
[2026-10-28 04:11:24,241.241 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:11:24,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:11:24,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:11:24,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:11:26,295.295 INFO    ] ================================================
[2026-10-28 04:11:26,311.311 INFO    ] Launching Daemon at Wed Oct 28 04:11:26 IST 2026
[2026-10-28 04:11:26,322.322 INFO    ] ================================================
[2026-10-28 04:11:26,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:11:26
[2026-10-28 04:11:27,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:11:27,761.761 INFO    ] Initializing speech engine...
[2026-10-28 04:11:27,770.770 INFO    ] 2026-10-28 04:11:27
[2026-10-28 04:11:28,065.065 INFO    ] 2026-10-28 04:11:28
[2026-10-28 04:11:28,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:11:28,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:11:28,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:11:28,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:11:28,572.572 INFO    ] time= 28/10/2026 04:11:28
[2026-10-28 04:11:28,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:11:28,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:11:28,761.761 INFO    ] No existing commands found in stream
[2026-10-28 04:11:33,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:11:33,776.776 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 04:11:36,970.970 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:11:36,973.973 INFO    ] Checking for system updates...
[2026-10-28 04:11:37,543.543 INFO    ] 200
[2026-10-28 04:11:37,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:11:37,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:11:37,602.602 INFO    ] No update needed
[2026-10-28 04:11:37,605.605 INFO    ] Checking for camera pi updates...
[2026-10-28 04:11:37,638.638 INFO    ] 200
[2026-10-28 04:11:37,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:11:37,681.681 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:11:37,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:11:37,763.763 INFO    ] No camera update needed
[2026-10-28 04:11:37,765.765 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:11:37,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:11:37,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:11:37,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:11:39,819.819 INFO    ] ================================================
[2026-10-28 04:11:39,835.835 INFO    ] Launching Daemon at Wed Oct 28 04:11:39 IST 2026
[2026-10-28 04:11:39,846.846 INFO    ] ================================================
[2026-10-28 04:11:40,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:11:40
[2026-10-28 04:11:41,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:11:41,321.321 INFO    ] Initializing speech engine...
[2026-10-28 04:11:41,329.329 INFO    ] 2026-10-28 04:11:41
[2026-10-28 04:11:41,601.601 INFO    ] 2026-10-28 04:11:41
[2026-10-28 04:11:41,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:11:41,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:11:41,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:11:42,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:11:42,148.148 INFO    ] time= 28/10/2026 04:11:42
[2026-10-28 04:11:42,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:11:42,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:11:42,338.338 INFO    ] No existing commands found in stream
[2026-10-28 04:11:47,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:11:47,371.371 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-28 04:11:49,784.784 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:11:49,787.787 INFO    ] Checking for system updates...
[2026-10-28 04:11:49,824.824 INFO    ] 200
[2026-10-28 04:11:49,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:11:49,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:11:49,884.884 INFO    ] No update needed
[2026-10-28 04:11:49,887.887 INFO    ] Checking for camera pi updates...
[2026-10-28 04:11:49,921.921 INFO    ] 200
[2026-10-28 04:11:49,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:11:49,970.970 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:11:50,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:11:50,061.061 INFO    ] No camera update needed
[2026-10-28 04:11:50,063.063 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:11:50,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:11:50,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:11:50,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:11:52,116.116 INFO    ] ================================================
[2026-10-28 04:11:52,132.132 INFO    ] Launching Daemon at Wed Oct 28 04:11:52 IST 2026
[2026-10-28 04:11:52,144.144 INFO    ] ================================================
[2026-10-28 04:11:52,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:11:52
[2026-10-28 04:11:53,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:11:53,579.579 INFO    ] Initializing speech engine...
[2026-10-28 04:11:53,602.602 INFO    ] 2026-10-28 04:11:53
[2026-10-28 04:11:53,857.857 INFO    ] 2026-10-28 04:11:53
[2026-10-28 04:11:53,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:11:54,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:11:54,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:11:54,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:11:54,418.418 INFO    ] time= 28/10/2026 04:11:54
[2026-10-28 04:11:54,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:11:54,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:11:54,595.595 INFO    ] No existing commands found in stream
[2026-10-28 04:11:59,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:11:59,629.629 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-28 04:12:01,164.164 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:12:01,168.168 INFO    ] Checking for system updates...
[2026-10-28 04:12:01,255.255 INFO    ] 200
[2026-10-28 04:12:01,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:12:01,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:12:01,368.368 INFO    ] No update needed
[2026-10-28 04:12:01,371.371 INFO    ] Checking for camera pi updates...
[2026-10-28 04:12:01,451.451 INFO    ] 200
[2026-10-28 04:12:01,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:12:01,522.522 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:12:01,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:12:01,581.581 INFO    ] No camera update needed
[2026-10-28 04:12:01,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:12:01,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:12:01,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:12:01,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:12:03,649.649 INFO    ] ================================================
[2026-10-28 04:12:03,665.665 INFO    ] Launching Daemon at Wed Oct 28 04:12:03 IST 2026
[2026-10-28 04:12:03,676.676 INFO    ] ================================================
[2026-10-28 04:12:04,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:12:04
[2026-10-28 04:12:04,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:12:05,128.128 INFO    ] Initializing speech engine...
[2026-10-28 04:12:05,138.138 INFO    ] 2026-10-28 04:12:05
[2026-10-28 04:12:05,411.411 INFO    ] 2026-10-28 04:12:05
[2026-10-28 04:12:05,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:12:05,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:12:05,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:12:06,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:12:06,103.103 INFO    ] time= 28/10/2026 04:12:06
[2026-10-28 04:12:06,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:12:06,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:12:06,334.334 INFO    ] No existing commands found in stream
[2026-10-28 04:12:11,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:12:11,350.350 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-28 04:12:14,376.376 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:12:14,379.379 INFO    ] Checking for system updates...
[2026-10-28 04:12:14,420.420 INFO    ] 200
[2026-10-28 04:12:14,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:12:14,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:12:14,483.483 INFO    ] No update needed
[2026-10-28 04:12:14,486.486 INFO    ] Checking for camera pi updates...
[2026-10-28 04:12:14,521.521 INFO    ] 200
[2026-10-28 04:12:14,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:12:14,564.564 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:12:14,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:12:14,655.655 INFO    ] No camera update needed
[2026-10-28 04:12:14,657.657 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:12:14,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:12:14,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:12:14,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:12:16,712.712 INFO    ] ================================================
[2026-10-28 04:12:16,728.728 INFO    ] Launching Daemon at Wed Oct 28 04:12:16 IST 2026
[2026-10-28 04:12:16,745.745 INFO    ] ================================================
[2026-10-28 04:12:17,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:12:17
[2026-10-28 04:12:18,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:12:18,395.395 INFO    ] Initializing speech engine...
[2026-10-28 04:12:18,408.408 INFO    ] 2026-10-28 04:12:18
[2026-10-28 04:12:18,724.724 INFO    ] 2026-10-28 04:12:18
[2026-10-28 04:12:18,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:12:19,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:12:19,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:12:19,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:12:19,432.432 INFO    ] time= 28/10/2026 04:12:19
[2026-10-28 04:12:19,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:12:19,534.534 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:12:19,697.697 INFO    ] No existing commands found in stream
[2026-10-28 04:12:24,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:12:24,712.712 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-28 04:12:27,610.610 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:12:27,614.614 INFO    ] Checking for system updates...
[2026-10-28 04:12:27,651.651 INFO    ] 200
[2026-10-28 04:12:27,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:12:27,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:12:27,716.716 INFO    ] No update needed
[2026-10-28 04:12:27,719.719 INFO    ] Checking for camera pi updates...
[2026-10-28 04:12:27,756.756 INFO    ] 200
[2026-10-28 04:12:27,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:12:27,799.799 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:12:27,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:12:27,877.877 INFO    ] No camera update needed
[2026-10-28 04:12:27,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:12:27,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:12:27,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:12:27,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:12:29,934.934 INFO    ] ================================================
[2026-10-28 04:12:29,950.950 INFO    ] Launching Daemon at Wed Oct 28 04:12:29 IST 2026
[2026-10-28 04:12:29,962.962 INFO    ] ================================================
[2026-10-28 04:12:30,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:12:30
[2026-10-28 04:12:31,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:12:31,401.401 INFO    ] Initializing speech engine...
[2026-10-28 04:12:31,415.415 INFO    ] 2026-10-28 04:12:31
[2026-10-28 04:12:31,721.721 INFO    ] 2026-10-28 04:12:31
[2026-10-28 04:12:31,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:12:31,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:12:31,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:12:32,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:12:32,144.144 INFO    ] time= 28/10/2026 04:12:32
[2026-10-28 04:12:32,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:12:32,187.187 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:12:32,269.269 INFO    ] No existing commands found in stream
[2026-10-28 04:12:37,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:12:37,285.285 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-28 04:12:40,361.361 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:12:40,364.364 INFO    ] Checking for system updates...
[2026-10-28 04:12:40,400.400 INFO    ] 200
[2026-10-28 04:12:40,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:12:40,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:12:40,463.463 INFO    ] No update needed
[2026-10-28 04:12:40,466.466 INFO    ] Checking for camera pi updates...
[2026-10-28 04:12:40,502.502 INFO    ] 200
[2026-10-28 04:12:40,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:12:40,545.545 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:12:40,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:12:40,631.631 INFO    ] No camera update needed
[2026-10-28 04:12:40,633.633 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:12:40,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:12:40,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:12:40,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:12:42,686.686 INFO    ] ================================================
[2026-10-28 04:12:42,701.701 INFO    ] Launching Daemon at Wed Oct 28 04:12:42 IST 2026
[2026-10-28 04:12:42,712.712 INFO    ] ================================================
[2026-10-28 04:12:43,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:12:43
[2026-10-28 04:12:43,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:12:44,135.135 INFO    ] Initializing speech engine...
[2026-10-28 04:12:44,144.144 INFO    ] 2026-10-28 04:12:44
[2026-10-28 04:12:44,387.387 INFO    ] 2026-10-28 04:12:44
[2026-10-28 04:12:44,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:12:44,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:12:44,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:12:44,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:12:44,948.948 INFO    ] time= 28/10/2026 04:12:44
[2026-10-28 04:12:44,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:12:44,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:12:45,105.105 INFO    ] No existing commands found in stream
[2026-10-28 04:12:50,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:12:50,129.129 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-28 04:12:51,884.884 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:12:51,886.886 INFO    ] Checking for system updates...
[2026-10-28 04:12:51,925.925 INFO    ] 200
[2026-10-28 04:12:51,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:12:51,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:12:51,989.989 INFO    ] No update needed
[2026-10-28 04:12:51,991.991 INFO    ] Checking for camera pi updates...
[2026-10-28 04:12:52,025.025 INFO    ] 200
[2026-10-28 04:12:52,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:12:52,067.067 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:12:52,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:12:52,146.146 INFO    ] No camera update needed
[2026-10-28 04:12:52,148.148 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:12:52,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:12:52,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:12:52,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:12:54,205.205 INFO    ] ================================================
[2026-10-28 04:12:54,221.221 INFO    ] Launching Daemon at Wed Oct 28 04:12:54 IST 2026
[2026-10-28 04:12:54,231.231 INFO    ] ================================================
[2026-10-28 04:12:54,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:12:54
[2026-10-28 04:12:55,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:12:55,663.663 INFO    ] Initializing speech engine...
[2026-10-28 04:12:55,669.669 INFO    ] 2026-10-28 04:12:55
[2026-10-28 04:12:55,965.965 INFO    ] 2026-10-28 04:12:55
[2026-10-28 04:12:56,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:12:56,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:12:56,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:12:56,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:12:56,459.459 INFO    ] time= 28/10/2026 04:12:56
[2026-10-28 04:12:56,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:12:56,535.535 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:12:56,665.665 INFO    ] No existing commands found in stream
[2026-10-28 04:13:01,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:13:01,680.680 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-28 04:13:02,904.904 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:13:02,907.907 INFO    ] Checking for system updates...
[2026-10-28 04:13:02,948.948 INFO    ] 200
[2026-10-28 04:13:02,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:13:03,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:13:03,029.029 INFO    ] No update needed
[2026-10-28 04:13:03,032.032 INFO    ] Checking for camera pi updates...
[2026-10-28 04:13:03,067.067 INFO    ] 200
[2026-10-28 04:13:03,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:13:03,119.119 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:13:03,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:13:03,219.219 INFO    ] No camera update needed
[2026-10-28 04:13:03,221.221 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:13:03,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:13:03,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:13:03,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:13:05,274.274 INFO    ] ================================================
[2026-10-28 04:13:05,289.289 INFO    ] Launching Daemon at Wed Oct 28 04:13:05 IST 2026
[2026-10-28 04:13:05,300.300 INFO    ] ================================================
[2026-10-28 04:13:05,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:13:05
[2026-10-28 04:13:06,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:13:06,894.894 INFO    ] Initializing speech engine...
[2026-10-28 04:13:06,902.902 INFO    ] 2026-10-28 04:13:06
[2026-10-28 04:13:07,189.189 INFO    ] 2026-10-28 04:13:07
[2026-10-28 04:13:07,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:13:07,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:13:07,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:13:07,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:13:07,731.731 INFO    ] time= 28/10/2026 04:13:07
[2026-10-28 04:13:07,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:13:07,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:13:07,885.885 INFO    ] No existing commands found in stream
[2026-10-28 04:13:12,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:13:12,919.919 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 04:13:15,670.670 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:13:15,673.673 INFO    ] Checking for system updates...
[2026-10-28 04:13:15,714.714 INFO    ] 200
[2026-10-28 04:13:15,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:13:15,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:13:15,776.776 INFO    ] No update needed
[2026-10-28 04:13:15,779.779 INFO    ] Checking for camera pi updates...
[2026-10-28 04:13:15,812.812 INFO    ] 200
[2026-10-28 04:13:15,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:13:15,859.859 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:13:16,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:13:16,042.042 INFO    ] No camera update needed
[2026-10-28 04:13:16,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:13:16,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:13:16,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:13:16,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:13:18,100.100 INFO    ] ================================================
[2026-10-28 04:13:18,115.115 INFO    ] Launching Daemon at Wed Oct 28 04:13:18 IST 2026
[2026-10-28 04:13:18,126.126 INFO    ] ================================================
[2026-10-28 04:13:18,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:13:18
[2026-10-28 04:13:19,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:13:19,541.541 INFO    ] Initializing speech engine...
[2026-10-28 04:13:19,556.556 INFO    ] 2026-10-28 04:13:19
[2026-10-28 04:13:19,827.827 INFO    ] 2026-10-28 04:13:19
[2026-10-28 04:13:19,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:13:20,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:13:20,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:13:20,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:13:20,317.317 INFO    ] time= 28/10/2026 04:13:20
[2026-10-28 04:13:20,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:13:20,420.420 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:13:20,525.525 INFO    ] No existing commands found in stream
[2026-10-28 04:13:25,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:13:25,539.539 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-28 04:13:26,982.982 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:13:26,985.985 INFO    ] Checking for system updates...
[2026-10-28 04:13:27,021.021 INFO    ] 200
[2026-10-28 04:13:27,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:13:27,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:13:27,078.078 INFO    ] No update needed
[2026-10-28 04:13:27,080.080 INFO    ] Checking for camera pi updates...
[2026-10-28 04:13:27,115.115 INFO    ] 200
[2026-10-28 04:13:27,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:13:27,157.157 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:13:27,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:13:27,228.228 INFO    ] No camera update needed
[2026-10-28 04:13:27,230.230 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:13:27,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:13:27,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:13:27,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:13:29,283.283 INFO    ] ================================================
[2026-10-28 04:13:29,299.299 INFO    ] Launching Daemon at Wed Oct 28 04:13:29 IST 2026
[2026-10-28 04:13:29,312.312 INFO    ] ================================================
[2026-10-28 04:13:29,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:13:29
[2026-10-28 04:13:30,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:13:30,933.933 INFO    ] Initializing speech engine...
[2026-10-28 04:13:30,941.941 INFO    ] 2026-10-28 04:13:30
[2026-10-28 04:13:31,231.231 INFO    ] 2026-10-28 04:13:31
[2026-10-28 04:13:31,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:13:31,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:13:31,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:13:31,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:13:31,806.806 INFO    ] time= 28/10/2026 04:13:31
[2026-10-28 04:13:31,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:13:31,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:13:31,985.985 INFO    ] No existing commands found in stream
[2026-10-28 04:13:37,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:13:37,018.018 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 04:13:41,401.401 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:13:41,404.404 INFO    ] Checking for system updates...
[2026-10-28 04:13:41,439.439 INFO    ] 200
[2026-10-28 04:13:41,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:13:41,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:13:41,504.504 INFO    ] No update needed
[2026-10-28 04:13:41,506.506 INFO    ] Checking for camera pi updates...
[2026-10-28 04:13:41,539.539 INFO    ] 200
[2026-10-28 04:13:41,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:13:41,582.582 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:13:41,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:13:41,647.647 INFO    ] No camera update needed
[2026-10-28 04:13:41,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:13:41,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:13:41,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:13:41,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:13:43,703.703 INFO    ] ================================================
[2026-10-28 04:13:43,718.718 INFO    ] Launching Daemon at Wed Oct 28 04:13:43 IST 2026
[2026-10-28 04:13:43,729.729 INFO    ] ================================================
[2026-10-28 04:13:44,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:13:44
[2026-10-28 04:13:44,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:13:45,182.182 INFO    ] Initializing speech engine...
[2026-10-28 04:13:45,193.193 INFO    ] 2026-10-28 04:13:45
[2026-10-28 04:13:45,452.452 INFO    ] 2026-10-28 04:13:45
[2026-10-28 04:13:45,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:13:45,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:13:45,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:13:45,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:13:45,994.994 INFO    ] time= 28/10/2026 04:13:45
[2026-10-28 04:13:46,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:13:46,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:13:46,153.153 INFO    ] No existing commands found in stream
[2026-10-28 04:13:51,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:13:51,178.178 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 04:13:51,949.949 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:13:51,951.951 INFO    ] Checking for system updates...
[2026-10-28 04:13:51,988.988 INFO    ] 200
[2026-10-28 04:13:51,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:13:52,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:13:52,053.053 INFO    ] No update needed
[2026-10-28 04:13:52,056.056 INFO    ] Checking for camera pi updates...
[2026-10-28 04:13:52,094.094 INFO    ] 200
[2026-10-28 04:13:52,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:13:52,137.137 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:13:52,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:13:52,218.218 INFO    ] No camera update needed
[2026-10-28 04:13:52,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:13:52,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:13:52,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:13:52,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:13:54,273.273 INFO    ] ================================================
[2026-10-28 04:13:54,289.289 INFO    ] Launching Daemon at Wed Oct 28 04:13:54 IST 2026
[2026-10-28 04:13:54,301.301 INFO    ] ================================================
[2026-10-28 04:13:54,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:13:54
[2026-10-28 04:13:55,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:13:55,723.723 INFO    ] Initializing speech engine...
[2026-10-28 04:13:55,733.733 INFO    ] 2026-10-28 04:13:55
[2026-10-28 04:13:55,982.982 INFO    ] 2026-10-28 04:13:55
[2026-10-28 04:13:56,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:13:56,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:13:56,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:13:56,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:13:56,545.545 INFO    ] time= 28/10/2026 04:13:56
[2026-10-28 04:13:56,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:13:56,573.573 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:13:56,705.705 INFO    ] No existing commands found in stream
[2026-10-28 04:14:01,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:14:01,720.720 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-28 04:14:03,495.495 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:14:03,497.497 INFO    ] Checking for system updates...
[2026-10-28 04:14:03,546.546 INFO    ] 200
[2026-10-28 04:14:03,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:14:03,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:14:03,607.607 INFO    ] No update needed
[2026-10-28 04:14:03,609.609 INFO    ] Checking for camera pi updates...
[2026-10-28 04:14:03,644.644 INFO    ] 200
[2026-10-28 04:14:03,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:14:03,688.688 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:14:03,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:14:03,768.768 INFO    ] No camera update needed
[2026-10-28 04:14:03,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:14:03,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:14:03,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:14:03,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:14:05,830.830 INFO    ] ================================================
[2026-10-28 04:14:05,846.846 INFO    ] Launching Daemon at Wed Oct 28 04:14:05 IST 2026
[2026-10-28 04:14:05,857.857 INFO    ] ================================================
[2026-10-28 04:14:06,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:14:06
[2026-10-28 04:14:07,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:14:07,288.288 INFO    ] Initializing speech engine...
[2026-10-28 04:14:07,297.297 INFO    ] 2026-10-28 04:14:07
[2026-10-28 04:14:07,549.549 INFO    ] 2026-10-28 04:14:07
[2026-10-28 04:14:07,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:14:07,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:14:07,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:14:08,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:14:08,116.116 INFO    ] time= 28/10/2026 04:14:08
[2026-10-28 04:14:08,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:14:08,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:14:08,286.286 INFO    ] No existing commands found in stream
[2026-10-28 04:14:13,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:14:13,319.319 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-28 04:14:14,682.682 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:14:14,685.685 INFO    ] Checking for system updates...
[2026-10-28 04:14:14,724.724 INFO    ] 200
[2026-10-28 04:14:14,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:14:14,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:14:14,782.782 INFO    ] No update needed
[2026-10-28 04:14:14,785.785 INFO    ] Checking for camera pi updates...
[2026-10-28 04:14:14,820.820 INFO    ] 200
[2026-10-28 04:14:14,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:14:14,880.880 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:14:14,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:14:14,967.967 INFO    ] No camera update needed
[2026-10-28 04:14:14,970.970 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:14:14,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:14:14,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:14:14,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:14:17,029.029 INFO    ] ================================================
[2026-10-28 04:14:17,045.045 INFO    ] Launching Daemon at Wed Oct 28 04:14:17 IST 2026
[2026-10-28 04:14:17,056.056 INFO    ] ================================================
[2026-10-28 04:14:17,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:14:17
[2026-10-28 04:14:18,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:14:18,668.668 INFO    ] Initializing speech engine...
[2026-10-28 04:14:18,677.677 INFO    ] 2026-10-28 04:14:18
[2026-10-28 04:14:18,948.948 INFO    ] 2026-10-28 04:14:18
[2026-10-28 04:14:19,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:14:19,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:14:19,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:14:19,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:14:19,517.517 INFO    ] time= 28/10/2026 04:14:19
[2026-10-28 04:14:19,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:14:19,542.542 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:14:19,676.676 INFO    ] No existing commands found in stream
[2026-10-28 04:14:24,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:14:24,702.702 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 04:14:28,425.425 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:14:28,428.428 INFO    ] Checking for system updates...
[2026-10-28 04:14:28,468.468 INFO    ] 200
[2026-10-28 04:14:28,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:14:28,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:14:28,538.538 INFO    ] No update needed
[2026-10-28 04:14:28,541.541 INFO    ] Checking for camera pi updates...
[2026-10-28 04:14:28,575.575 INFO    ] 200
[2026-10-28 04:14:28,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:14:28,618.618 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:14:28,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:14:28,713.713 INFO    ] No camera update needed
[2026-10-28 04:14:28,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:14:28,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:14:28,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:14:28,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:14:30,768.768 INFO    ] ================================================
[2026-10-28 04:14:30,783.783 INFO    ] Launching Daemon at Wed Oct 28 04:14:30 IST 2026
[2026-10-28 04:14:30,795.795 INFO    ] ================================================
[2026-10-28 04:14:31,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:14:31
[2026-10-28 04:14:32,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:14:32,492.492 INFO    ] Initializing speech engine...
[2026-10-28 04:14:32,499.499 INFO    ] 2026-10-28 04:14:32
[2026-10-28 04:14:32,799.799 INFO    ] 2026-10-28 04:14:32
[2026-10-28 04:14:32,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:14:33,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:14:33,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:14:33,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:14:33,386.386 INFO    ] time= 28/10/2026 04:14:33
[2026-10-28 04:14:33,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:14:33,424.424 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:14:33,569.569 INFO    ] No existing commands found in stream
[2026-10-28 04:14:38,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:14:38,599.599 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-28 04:14:41,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:14:41,382.382 INFO    ] Checking for system updates...
[2026-10-28 04:14:41,418.418 INFO    ] 200
[2026-10-28 04:14:41,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:14:41,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:14:41,476.476 INFO    ] No update needed
[2026-10-28 04:14:41,479.479 INFO    ] Checking for camera pi updates...
[2026-10-28 04:14:41,512.512 INFO    ] 200
[2026-10-28 04:14:41,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:14:41,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:14:41,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:14:41,635.635 INFO    ] No camera update needed
[2026-10-28 04:14:41,638.638 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:14:41,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:14:41,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:14:41,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:14:43,692.692 INFO    ] ================================================
[2026-10-28 04:14:43,708.708 INFO    ] Launching Daemon at Wed Oct 28 04:14:43 IST 2026
[2026-10-28 04:14:43,720.720 INFO    ] ================================================
[2026-10-28 04:14:44,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:14:44
[2026-10-28 04:14:44,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:14:45,188.188 INFO    ] Initializing speech engine...
[2026-10-28 04:14:45,197.197 INFO    ] 2026-10-28 04:14:45
[2026-10-28 04:14:45,468.468 INFO    ] 2026-10-28 04:14:45
[2026-10-28 04:14:45,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:14:45,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:14:45,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:14:46,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:14:46,180.180 INFO    ] time= 28/10/2026 04:14:46
[2026-10-28 04:14:46,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:14:46,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:14:46,412.412 INFO    ] No existing commands found in stream
[2026-10-28 04:14:51,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:14:51,438.438 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-28 04:14:55,529.529 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:14:55,532.532 INFO    ] Checking for system updates...
[2026-10-28 04:14:55,567.567 INFO    ] 200
[2026-10-28 04:14:55,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:14:55,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:14:55,630.630 INFO    ] No update needed
[2026-10-28 04:14:55,633.633 INFO    ] Checking for camera pi updates...
[2026-10-28 04:14:55,666.666 INFO    ] 200
[2026-10-28 04:14:55,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:14:55,709.709 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:14:55,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:14:55,788.788 INFO    ] No camera update needed
[2026-10-28 04:14:55,790.790 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:14:55,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:14:55,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:14:55,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:14:57,844.844 INFO    ] ================================================
[2026-10-28 04:14:57,860.860 INFO    ] Launching Daemon at Wed Oct 28 04:14:57 IST 2026
[2026-10-28 04:14:57,871.871 INFO    ] ================================================
[2026-10-28 04:14:58,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:14:58
[2026-10-28 04:14:59,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:14:59,339.339 INFO    ] Initializing speech engine...
[2026-10-28 04:14:59,348.348 INFO    ] 2026-10-28 04:14:59
[2026-10-28 04:14:59,607.607 INFO    ] 2026-10-28 04:14:59
[2026-10-28 04:14:59,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:14:59,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:14:59,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:15:00,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:15:00,165.165 INFO    ] time= 28/10/2026 04:15:00
[2026-10-28 04:15:00,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:15:00,200.200 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:15:00,332.332 INFO    ] No existing commands found in stream
[2026-10-28 04:15:05,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:15:05,347.347 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-28 04:15:06,763.763 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:15:06,766.766 INFO    ] Checking for system updates...
[2026-10-28 04:15:06,801.801 INFO    ] 200
[2026-10-28 04:15:06,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:15:06,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:15:06,858.858 INFO    ] No update needed
[2026-10-28 04:15:06,863.863 INFO    ] Checking for camera pi updates...
[2026-10-28 04:15:06,897.897 INFO    ] 200
[2026-10-28 04:15:06,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:15:06,941.941 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:15:07,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:15:07,019.019 INFO    ] No camera update needed
[2026-10-28 04:15:07,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:15:07,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:15:07,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:15:07,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:15:09,076.076 INFO    ] ================================================
[2026-10-28 04:15:09,091.091 INFO    ] Launching Daemon at Wed Oct 28 04:15:09 IST 2026
[2026-10-28 04:15:09,102.102 INFO    ] ================================================
[2026-10-28 04:15:09,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:15:09
[2026-10-28 04:15:10,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:15:10,510.510 INFO    ] Initializing speech engine...
[2026-10-28 04:15:10,519.519 INFO    ] 2026-10-28 04:15:10
[2026-10-28 04:15:10,809.809 INFO    ] 2026-10-28 04:15:10
[2026-10-28 04:15:10,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:15:11,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:15:11,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:15:11,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:15:11,322.322 INFO    ] time= 28/10/2026 04:15:11
[2026-10-28 04:15:11,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:15:11,439.439 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:15:11,570.570 INFO    ] No existing commands found in stream
[2026-10-28 04:15:16,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:15:16,599.599 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 04:15:20,589.589 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:15:20,591.591 INFO    ] Checking for system updates...
[2026-10-28 04:15:20,631.631 INFO    ] 200
[2026-10-28 04:15:20,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:15:20,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:15:20,690.690 INFO    ] No update needed
[2026-10-28 04:15:20,692.692 INFO    ] Checking for camera pi updates...
[2026-10-28 04:15:20,726.726 INFO    ] 200
[2026-10-28 04:15:20,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:15:20,770.770 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:15:20,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:15:20,954.954 INFO    ] No camera update needed
[2026-10-28 04:15:20,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:15:20,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:15:20,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:15:20,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:15:23,010.010 INFO    ] ================================================
[2026-10-28 04:15:23,025.025 INFO    ] Launching Daemon at Wed Oct 28 04:15:23 IST 2026
[2026-10-28 04:15:23,036.036 INFO    ] ================================================
[2026-10-28 04:15:23,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:15:23
[2026-10-28 04:15:24,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:15:24,505.505 INFO    ] Initializing speech engine...
[2026-10-28 04:15:24,517.517 INFO    ] 2026-10-28 04:15:24
[2026-10-28 04:15:24,774.774 INFO    ] 2026-10-28 04:15:24
[2026-10-28 04:15:24,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:15:25,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:15:25,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:15:25,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:15:25,330.330 INFO    ] time= 28/10/2026 04:15:25
[2026-10-28 04:15:25,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:15:25,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:15:25,489.489 INFO    ] No existing commands found in stream
[2026-10-28 04:15:30,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:15:30,528.528 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-28 04:15:32,067.067 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:15:32,070.070 INFO    ] Checking for system updates...
[2026-10-28 04:15:32,107.107 INFO    ] 200
[2026-10-28 04:15:32,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:15:32,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:15:32,178.178 INFO    ] No update needed
[2026-10-28 04:15:32,184.184 INFO    ] Checking for camera pi updates...
[2026-10-28 04:15:32,229.229 INFO    ] 200
[2026-10-28 04:15:32,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:15:32,289.289 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:15:32,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:15:32,389.389 INFO    ] No camera update needed
[2026-10-28 04:15:32,392.392 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:15:32,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:15:32,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:15:32,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:15:34,452.452 INFO    ] ================================================
[2026-10-28 04:15:34,467.467 INFO    ] Launching Daemon at Wed Oct 28 04:15:34 IST 2026
[2026-10-28 04:15:34,477.477 INFO    ] ================================================
[2026-10-28 04:15:35,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:15:35
[2026-10-28 04:15:35,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:15:35,942.942 INFO    ] Initializing speech engine...
[2026-10-28 04:15:35,951.951 INFO    ] 2026-10-28 04:15:35
[2026-10-28 04:15:36,202.202 INFO    ] 2026-10-28 04:15:36
[2026-10-28 04:15:36,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:15:36,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:15:36,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:15:36,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:15:36,746.746 INFO    ] time= 28/10/2026 04:15:36
[2026-10-28 04:15:36,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:15:36,780.780 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:15:36,896.896 INFO    ] No existing commands found in stream
[2026-10-28 04:15:41,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:15:41,922.922 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 04:15:44,973.973 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:15:44,975.975 INFO    ] Checking for system updates...
[2026-10-28 04:15:45,011.011 INFO    ] 200
[2026-10-28 04:15:45,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:15:45,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:15:45,074.074 INFO    ] No update needed
[2026-10-28 04:15:45,076.076 INFO    ] Checking for camera pi updates...
[2026-10-28 04:15:45,109.109 INFO    ] 200
[2026-10-28 04:15:45,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:15:45,156.156 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:15:45,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:15:45,233.233 INFO    ] No camera update needed
[2026-10-28 04:15:45,236.236 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:15:45,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:15:45,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:15:45,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:15:47,289.289 INFO    ] ================================================
[2026-10-28 04:15:47,305.305 INFO    ] Launching Daemon at Wed Oct 28 04:15:47 IST 2026
[2026-10-28 04:15:47,316.316 INFO    ] ================================================
[2026-10-28 04:15:47,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:15:47
[2026-10-28 04:15:48,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:15:48,941.941 INFO    ] Initializing speech engine...
[2026-10-28 04:15:48,955.955 INFO    ] 2026-10-28 04:15:48
[2026-10-28 04:15:49,270.270 INFO    ] 2026-10-28 04:15:49
[2026-10-28 04:15:49,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:15:49,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:15:49,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:15:49,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:15:49,793.793 INFO    ] time= 28/10/2026 04:15:49
[2026-10-28 04:15:49,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:15:49,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:15:49,955.955 INFO    ] No existing commands found in stream
[2026-10-28 04:15:54,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:15:54,989.989 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-28 04:15:56,791.791 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:15:56,794.794 INFO    ] Checking for system updates...
[2026-10-28 04:15:56,831.831 INFO    ] 200
[2026-10-28 04:15:56,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:15:56,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:15:56,898.898 INFO    ] No update needed
[2026-10-28 04:15:56,900.900 INFO    ] Checking for camera pi updates...
[2026-10-28 04:15:56,935.935 INFO    ] 200
[2026-10-28 04:15:56,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:15:56,978.978 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:15:57,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:15:57,079.079 INFO    ] No camera update needed
[2026-10-28 04:15:57,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:15:57,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:15:57,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:15:57,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:15:59,134.134 INFO    ] ================================================
[2026-10-28 04:15:59,150.150 INFO    ] Launching Daemon at Wed Oct 28 04:15:59 IST 2026
[2026-10-28 04:15:59,161.161 INFO    ] ================================================
[2026-10-28 04:15:59,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:15:59
[2026-10-28 04:16:00,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:16:00,635.635 INFO    ] Initializing speech engine...
[2026-10-28 04:16:00,640.640 INFO    ] 2026-10-28 04:16:00
[2026-10-28 04:16:00,937.937 INFO    ] 2026-10-28 04:16:00
[2026-10-28 04:16:00,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:16:01,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:16:01,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:16:01,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:16:01,441.441 INFO    ] time= 28/10/2026 04:16:01
[2026-10-28 04:16:01,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:16:01,512.512 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:16:01,602.602 INFO    ] No existing commands found in stream
[2026-10-28 04:16:06,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:16:06,616.616 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 04:16:07,306.306 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:16:07,308.308 INFO    ] Checking for system updates...
[2026-10-28 04:16:07,345.345 INFO    ] 200
[2026-10-28 04:16:07,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:16:07,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:16:07,403.403 INFO    ] No update needed
[2026-10-28 04:16:07,410.410 INFO    ] Checking for camera pi updates...
[2026-10-28 04:16:07,443.443 INFO    ] 200
[2026-10-28 04:16:07,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:16:07,486.486 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:16:07,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:16:07,585.585 INFO    ] No camera update needed
[2026-10-28 04:16:07,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:16:07,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:16:07,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:16:07,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:16:09,640.640 INFO    ] ================================================
[2026-10-28 04:16:09,656.656 INFO    ] Launching Daemon at Wed Oct 28 04:16:09 IST 2026
[2026-10-28 04:16:09,667.667 INFO    ] ================================================
[2026-10-28 04:16:10,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:16:10
[2026-10-28 04:16:10,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:16:11,224.224 INFO    ] Initializing speech engine...
[2026-10-28 04:16:11,237.237 INFO    ] 2026-10-28 04:16:11
[2026-10-28 04:16:11,541.541 INFO    ] 2026-10-28 04:16:11
[2026-10-28 04:16:11,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:16:11,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:16:11,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:16:12,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:16:12,079.079 INFO    ] time= 28/10/2026 04:16:12
[2026-10-28 04:16:12,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:16:12,115.115 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:16:12,243.243 INFO    ] No existing commands found in stream
[2026-10-28 04:16:17,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:16:17,277.277 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-28 04:16:18,531.531 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:16:18,534.534 INFO    ] Checking for system updates...
[2026-10-28 04:16:18,574.574 INFO    ] 200
[2026-10-28 04:16:18,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:16:18,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:16:18,633.633 INFO    ] No update needed
[2026-10-28 04:16:18,635.635 INFO    ] Checking for camera pi updates...
[2026-10-28 04:16:18,672.672 INFO    ] 200
[2026-10-28 04:16:18,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:16:18,716.716 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:16:18,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:16:18,819.819 INFO    ] No camera update needed
[2026-10-28 04:16:18,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:16:18,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:16:18,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:16:18,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:16:20,877.877 INFO    ] ================================================
[2026-10-28 04:16:20,893.893 INFO    ] Launching Daemon at Wed Oct 28 04:16:20 IST 2026
[2026-10-28 04:16:20,903.903 INFO    ] ================================================
[2026-10-28 04:16:21,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:16:21
[2026-10-28 04:16:22,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:16:22,320.320 INFO    ] Initializing speech engine...
[2026-10-28 04:16:22,329.329 INFO    ] 2026-10-28 04:16:22
[2026-10-28 04:16:22,619.619 INFO    ] 2026-10-28 04:16:22
[2026-10-28 04:16:22,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:16:22,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:16:22,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:16:23,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:16:23,112.112 INFO    ] time= 28/10/2026 04:16:23
[2026-10-28 04:16:23,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:16:23,221.221 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:16:23,343.343 INFO    ] No existing commands found in stream
[2026-10-28 04:16:28,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:16:28,393.393 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 04:16:31,869.869 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:16:31,872.872 INFO    ] Checking for system updates...
[2026-10-28 04:16:31,910.910 INFO    ] 200
[2026-10-28 04:16:31,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:16:31,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:16:31,971.971 INFO    ] No update needed
[2026-10-28 04:16:31,973.973 INFO    ] Checking for camera pi updates...
[2026-10-28 04:16:32,009.009 INFO    ] 200
[2026-10-28 04:16:32,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:16:32,058.058 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:16:32,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:16:32,172.172 INFO    ] No camera update needed
[2026-10-28 04:16:32,175.175 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:16:32,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:16:32,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:16:32,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:16:34,232.232 INFO    ] ================================================
[2026-10-28 04:16:34,248.248 INFO    ] Launching Daemon at Wed Oct 28 04:16:34 IST 2026
[2026-10-28 04:16:34,258.258 INFO    ] ================================================
[2026-10-28 04:16:34,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:16:34
[2026-10-28 04:16:35,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:16:35,712.712 INFO    ] Initializing speech engine...
[2026-10-28 04:16:35,727.727 INFO    ] 2026-10-28 04:16:35
[2026-10-28 04:16:36,054.054 INFO    ] 2026-10-28 04:16:36
[2026-10-28 04:16:36,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:16:36,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:16:36,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:16:36,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:16:36,588.588 INFO    ] time= 28/10/2026 04:16:36
[2026-10-28 04:16:36,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:16:36,628.628 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:16:36,746.746 INFO    ] No existing commands found in stream
[2026-10-28 04:16:41,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:16:41,785.785 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 04:16:45,572.572 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:16:45,575.575 INFO    ] Checking for system updates...
[2026-10-28 04:16:45,612.612 INFO    ] 200
[2026-10-28 04:16:45,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:16:45,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:16:45,670.670 INFO    ] No update needed
[2026-10-28 04:16:45,673.673 INFO    ] Checking for camera pi updates...
[2026-10-28 04:16:45,707.707 INFO    ] 200
[2026-10-28 04:16:45,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:16:45,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:16:45,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:16:45,832.832 INFO    ] No camera update needed
[2026-10-28 04:16:45,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:16:45,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:16:45,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:16:45,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:16:47,891.891 INFO    ] ================================================
[2026-10-28 04:16:47,908.908 INFO    ] Launching Daemon at Wed Oct 28 04:16:47 IST 2026
[2026-10-28 04:16:47,920.920 INFO    ] ================================================
[2026-10-28 04:16:48,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:16:48
[2026-10-28 04:16:49,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:16:49,327.327 INFO    ] Initializing speech engine...
[2026-10-28 04:16:49,340.340 INFO    ] 2026-10-28 04:16:49
[2026-10-28 04:16:49,604.604 INFO    ] 2026-10-28 04:16:49
[2026-10-28 04:16:49,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:16:49,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:16:49,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:16:50,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:16:50,168.168 INFO    ] time= 28/10/2026 04:16:50
[2026-10-28 04:16:50,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:16:50,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:16:50,329.329 INFO    ] No existing commands found in stream
[2026-10-28 04:16:55,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:16:55,346.346 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-28 04:16:56,162.162 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:16:56,165.165 INFO    ] Checking for system updates...
[2026-10-28 04:16:56,204.204 INFO    ] 200
[2026-10-28 04:16:56,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:16:56,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:16:56,261.261 INFO    ] No update needed
[2026-10-28 04:16:56,263.263 INFO    ] Checking for camera pi updates...
[2026-10-28 04:16:56,297.297 INFO    ] 200
[2026-10-28 04:16:56,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:16:56,340.340 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:16:56,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:16:56,418.418 INFO    ] No camera update needed
[2026-10-28 04:16:56,420.420 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:16:56,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:16:56,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:16:56,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:16:58,474.474 INFO    ] ================================================
[2026-10-28 04:16:58,489.489 INFO    ] Launching Daemon at Wed Oct 28 04:16:58 IST 2026
[2026-10-28 04:16:58,500.500 INFO    ] ================================================
[2026-10-28 04:16:59,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:16:59
[2026-10-28 04:16:59,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:16:59,937.937 INFO    ] Initializing speech engine...
[2026-10-28 04:16:59,952.952 INFO    ] 2026-10-28 04:16:59
[2026-10-28 04:17:00,205.205 INFO    ] 2026-10-28 04:17:00
[2026-10-28 04:17:00,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:17:00,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:17:00,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:17:00,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:17:00,641.641 INFO    ] time= 28/10/2026 04:17:00
[2026-10-28 04:17:00,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:17:00,686.686 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:17:00,778.778 INFO    ] No existing commands found in stream
[2026-10-28 04:17:05,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:17:05,791.791 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-28 04:17:10,323.323 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:17:10,325.325 INFO    ] Checking for system updates...
[2026-10-28 04:17:10,361.361 INFO    ] 200
[2026-10-28 04:17:10,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:17:10,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:17:10,419.419 INFO    ] No update needed
[2026-10-28 04:17:10,422.422 INFO    ] Checking for camera pi updates...
[2026-10-28 04:17:10,458.458 INFO    ] 200
[2026-10-28 04:17:10,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:17:10,504.504 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:17:10,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:17:10,594.594 INFO    ] No camera update needed
[2026-10-28 04:17:10,597.597 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:17:10,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:17:10,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:17:10,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:17:12,655.655 INFO    ] ================================================
[2026-10-28 04:17:12,670.670 INFO    ] Launching Daemon at Wed Oct 28 04:17:12 IST 2026
[2026-10-28 04:17:12,682.682 INFO    ] ================================================
[2026-10-28 04:17:13,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:17:13
[2026-10-28 04:17:13,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:17:14,255.255 INFO    ] Initializing speech engine...
[2026-10-28 04:17:14,263.263 INFO    ] 2026-10-28 04:17:14
[2026-10-28 04:17:14,529.529 INFO    ] 2026-10-28 04:17:14
[2026-10-28 04:17:14,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:17:14,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:17:14,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:17:15,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:17:15,077.077 INFO    ] time= 28/10/2026 04:17:15
[2026-10-28 04:17:15,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:17:15,126.126 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:17:15,237.237 INFO    ] No existing commands found in stream
[2026-10-28 04:17:20,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:17:20,265.265 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-28 04:17:21,285.285 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:17:21,288.288 INFO    ] Checking for system updates...
[2026-10-28 04:17:21,325.325 INFO    ] 200
[2026-10-28 04:17:21,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:17:21,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:17:21,383.383 INFO    ] No update needed
[2026-10-28 04:17:21,386.386 INFO    ] Checking for camera pi updates...
[2026-10-28 04:17:21,420.420 INFO    ] 200
[2026-10-28 04:17:21,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:17:21,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:17:21,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:17:21,547.547 INFO    ] No camera update needed
[2026-10-28 04:17:21,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:17:21,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:17:21,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:17:21,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:17:23,607.607 INFO    ] ================================================
[2026-10-28 04:17:23,625.625 INFO    ] Launching Daemon at Wed Oct 28 04:17:23 IST 2026
[2026-10-28 04:17:23,636.636 INFO    ] ================================================
[2026-10-28 04:17:24,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:17:24
[2026-10-28 04:17:24,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:17:25,098.098 INFO    ] Initializing speech engine...
[2026-10-28 04:17:25,107.107 INFO    ] 2026-10-28 04:17:25
[2026-10-28 04:17:25,354.354 INFO    ] 2026-10-28 04:17:25
[2026-10-28 04:17:25,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:17:25,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:17:25,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:17:25,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:17:25,917.917 INFO    ] time= 28/10/2026 04:17:25
[2026-10-28 04:17:25,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:17:25,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:17:26,055.055 INFO    ] No existing commands found in stream
[2026-10-28 04:17:31,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:17:31,080.080 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-28 04:17:32,905.905 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:17:32,909.909 INFO    ] Checking for system updates...
[2026-10-28 04:17:32,951.951 INFO    ] 200
[2026-10-28 04:17:32,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:17:33,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:17:33,011.011 INFO    ] No update needed
[2026-10-28 04:17:33,014.014 INFO    ] Checking for camera pi updates...
[2026-10-28 04:17:33,048.048 INFO    ] 200
[2026-10-28 04:17:33,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:17:33,094.094 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:17:33,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:17:33,192.192 INFO    ] No camera update needed
[2026-10-28 04:17:33,195.195 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:17:33,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:17:33,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:17:33,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:17:35,247.247 INFO    ] ================================================
[2026-10-28 04:17:35,262.262 INFO    ] Launching Daemon at Wed Oct 28 04:17:35 IST 2026
[2026-10-28 04:17:35,273.273 INFO    ] ================================================
[2026-10-28 04:17:35,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:17:35
[2026-10-28 04:17:36,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:17:36,735.735 INFO    ] Initializing speech engine...
[2026-10-28 04:17:36,744.744 INFO    ] 2026-10-28 04:17:36
[2026-10-28 04:17:37,037.037 INFO    ] 2026-10-28 04:17:37
[2026-10-28 04:17:37,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:17:37,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:17:37,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:17:37,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:17:37,640.640 INFO    ] time= 28/10/2026 04:17:37
[2026-10-28 04:17:37,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:17:37,689.689 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:17:37,825.825 INFO    ] No existing commands found in stream
[2026-10-28 04:17:42,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:17:42,851.851 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-28 04:17:46,710.710 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:17:46,712.712 INFO    ] Checking for system updates...
[2026-10-28 04:17:46,748.748 INFO    ] 200
[2026-10-28 04:17:46,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:17:46,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:17:46,805.805 INFO    ] No update needed
[2026-10-28 04:17:46,808.808 INFO    ] Checking for camera pi updates...
[2026-10-28 04:17:46,842.842 INFO    ] 200
[2026-10-28 04:17:46,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:17:46,886.886 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:17:46,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:17:46,967.967 INFO    ] No camera update needed
[2026-10-28 04:17:46,969.969 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:17:46,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:17:46,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:17:46,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:17:49,022.022 INFO    ] ================================================
[2026-10-28 04:17:49,037.037 INFO    ] Launching Daemon at Wed Oct 28 04:17:49 IST 2026
[2026-10-28 04:17:49,048.048 INFO    ] ================================================
[2026-10-28 04:17:49,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:17:49
[2026-10-28 04:17:50,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:17:50,521.521 INFO    ] Initializing speech engine...
[2026-10-28 04:17:50,528.528 INFO    ] 2026-10-28 04:17:50
[2026-10-28 04:17:50,788.788 INFO    ] 2026-10-28 04:17:50
[2026-10-28 04:17:50,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:17:51,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:17:51,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:17:51,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:17:51,339.339 INFO    ] time= 28/10/2026 04:17:51
[2026-10-28 04:17:51,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:17:51,386.386 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:17:51,522.522 INFO    ] No existing commands found in stream
[2026-10-28 04:17:56,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:17:56,551.551 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 04:17:57,246.246 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:17:57,248.248 INFO    ] Checking for system updates...
[2026-10-28 04:17:57,285.285 INFO    ] 200
[2026-10-28 04:17:57,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:17:57,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:17:57,341.341 INFO    ] No update needed
[2026-10-28 04:17:57,344.344 INFO    ] Checking for camera pi updates...
[2026-10-28 04:17:57,381.381 INFO    ] 200
[2026-10-28 04:17:57,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:17:57,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:17:57,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:17:57,505.505 INFO    ] No camera update needed
[2026-10-28 04:17:57,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:17:57,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:17:57,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:17:57,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:17:59,562.562 INFO    ] ================================================
[2026-10-28 04:17:59,577.577 INFO    ] Launching Daemon at Wed Oct 28 04:17:59 IST 2026
[2026-10-28 04:17:59,588.588 INFO    ] ================================================
[2026-10-28 04:18:00,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:18:00
[2026-10-28 04:18:00,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:18:01,182.182 INFO    ] Initializing speech engine...
[2026-10-28 04:18:01,195.195 INFO    ] 2026-10-28 04:18:01
[2026-10-28 04:18:01,479.479 INFO    ] 2026-10-28 04:18:01
[2026-10-28 04:18:01,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:18:01,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:18:01,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:18:01,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:18:02,048.048 INFO    ] time= 28/10/2026 04:18:02
[2026-10-28 04:18:02,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:18:02,079.079 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:18:02,166.166 INFO    ] No existing commands found in stream
[2026-10-28 04:18:07,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:18:07,179.179 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 04:18:08,466.466 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:18:08,469.469 INFO    ] Checking for system updates...
[2026-10-28 04:18:08,506.506 INFO    ] 200
[2026-10-28 04:18:08,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:18:08,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:18:08,563.563 INFO    ] No update needed
[2026-10-28 04:18:08,566.566 INFO    ] Checking for camera pi updates...
[2026-10-28 04:18:08,599.599 INFO    ] 200
[2026-10-28 04:18:08,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:18:08,641.641 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:18:08,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:18:08,723.723 INFO    ] No camera update needed
[2026-10-28 04:18:08,726.726 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:18:08,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:18:08,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:18:08,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:18:10,779.779 INFO    ] ================================================
[2026-10-28 04:18:10,795.795 INFO    ] Launching Daemon at Wed Oct 28 04:18:10 IST 2026
[2026-10-28 04:18:10,806.806 INFO    ] ================================================
[2026-10-28 04:18:11,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:18:11
[2026-10-28 04:18:12,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:18:12,273.273 INFO    ] Initializing speech engine...
[2026-10-28 04:18:12,284.284 INFO    ] 2026-10-28 04:18:12
[2026-10-28 04:18:12,542.542 INFO    ] 2026-10-28 04:18:12
[2026-10-28 04:18:12,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:18:12,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:18:12,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:18:13,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:18:13,085.085 INFO    ] time= 28/10/2026 04:18:13
[2026-10-28 04:18:13,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:18:13,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:18:13,241.241 INFO    ] No existing commands found in stream
[2026-10-28 04:18:18,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:18:18,262.262 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-28 04:18:22,190.190 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:18:22,193.193 INFO    ] Checking for system updates...
[2026-10-28 04:18:22,230.230 INFO    ] 200
[2026-10-28 04:18:22,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:18:22,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:18:22,294.294 INFO    ] No update needed
[2026-10-28 04:18:22,296.296 INFO    ] Checking for camera pi updates...
[2026-10-28 04:18:22,330.330 INFO    ] 200
[2026-10-28 04:18:22,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:18:22,374.374 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:18:22,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:18:22,456.456 INFO    ] No camera update needed
[2026-10-28 04:18:22,459.459 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:18:22,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:18:22,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:18:22,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:18:24,515.515 INFO    ] ================================================
[2026-10-28 04:18:24,530.530 INFO    ] Launching Daemon at Wed Oct 28 04:18:24 IST 2026
[2026-10-28 04:18:24,541.541 INFO    ] ================================================
[2026-10-28 04:18:25,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:18:25
[2026-10-28 04:18:25,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:18:25,969.969 INFO    ] Initializing speech engine...
[2026-10-28 04:18:25,978.978 INFO    ] 2026-10-28 04:18:25
[2026-10-28 04:18:26,247.247 INFO    ] 2026-10-28 04:18:26
[2026-10-28 04:18:26,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:18:26,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:18:26,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:18:26,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:18:26,770.770 INFO    ] time= 28/10/2026 04:18:26
[2026-10-28 04:18:26,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:18:26,869.869 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:18:27,020.020 INFO    ] No existing commands found in stream
[2026-10-28 04:18:32,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:18:32,039.039 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-28 04:18:34,586.586 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:18:34,589.589 INFO    ] Checking for system updates...
[2026-10-28 04:18:34,625.625 INFO    ] 200
[2026-10-28 04:18:34,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:18:34,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:18:34,682.682 INFO    ] No update needed
[2026-10-28 04:18:34,685.685 INFO    ] Checking for camera pi updates...
[2026-10-28 04:18:34,728.728 INFO    ] 200
[2026-10-28 04:18:34,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:18:34,774.774 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:18:34,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:18:34,870.870 INFO    ] No camera update needed
[2026-10-28 04:18:34,872.872 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:18:34,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:18:34,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:18:34,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:18:36,931.931 INFO    ] ================================================
[2026-10-28 04:18:36,947.947 INFO    ] Launching Daemon at Wed Oct 28 04:18:36 IST 2026
[2026-10-28 04:18:36,958.958 INFO    ] ================================================
[2026-10-28 04:18:37,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:18:37
[2026-10-28 04:18:38,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:18:38,423.423 INFO    ] Initializing speech engine...
[2026-10-28 04:18:38,432.432 INFO    ] 2026-10-28 04:18:38
[2026-10-28 04:18:38,683.683 INFO    ] 2026-10-28 04:18:38
[2026-10-28 04:18:38,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:18:38,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:18:38,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:18:39,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:18:39,244.244 INFO    ] time= 28/10/2026 04:18:39
[2026-10-28 04:18:39,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:18:39,284.284 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:18:39,399.399 INFO    ] No existing commands found in stream
[2026-10-28 04:18:44,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:18:44,418.418 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-28 04:18:47,582.582 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:18:47,585.585 INFO    ] Checking for system updates...
[2026-10-28 04:18:47,621.621 INFO    ] 200
[2026-10-28 04:18:47,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:18:47,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:18:47,685.685 INFO    ] No update needed
[2026-10-28 04:18:47,688.688 INFO    ] Checking for camera pi updates...
[2026-10-28 04:18:47,721.721 INFO    ] 200
[2026-10-28 04:18:47,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:18:47,764.764 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:18:47,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:18:47,866.866 INFO    ] No camera update needed
[2026-10-28 04:18:47,869.869 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:18:47,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:18:47,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:18:47,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:18:49,924.924 INFO    ] ================================================
[2026-10-28 04:18:49,940.940 INFO    ] Launching Daemon at Wed Oct 28 04:18:49 IST 2026
[2026-10-28 04:18:49,951.951 INFO    ] ================================================
[2026-10-28 04:18:50,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:18:50
[2026-10-28 04:18:51,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:18:51,411.411 INFO    ] Initializing speech engine...
[2026-10-28 04:18:51,416.416 INFO    ] 2026-10-28 04:18:51
[2026-10-28 04:18:51,680.680 INFO    ] 2026-10-28 04:18:51
[2026-10-28 04:18:51,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:18:52,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:18:52,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:18:52,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:18:52,239.239 INFO    ] time= 28/10/2026 04:18:52
[2026-10-28 04:18:52,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:18:52,272.272 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:18:52,403.403 INFO    ] No existing commands found in stream
[2026-10-28 04:18:57,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:18:57,437.437 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 04:18:59,856.856 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:18:59,859.859 INFO    ] Checking for system updates...
[2026-10-28 04:18:59,895.895 INFO    ] 200
[2026-10-28 04:18:59,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:18:59,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:18:59,956.956 INFO    ] No update needed
[2026-10-28 04:18:59,959.959 INFO    ] Checking for camera pi updates...
[2026-10-28 04:18:59,997.997 INFO    ] 200
[2026-10-28 04:18:59,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:19:00,045.045 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:19:00,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:19:00,114.114 INFO    ] No camera update needed
[2026-10-28 04:19:00,117.117 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:19:00,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:19:00,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:19:00,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:19:02,176.176 INFO    ] ================================================
[2026-10-28 04:19:02,195.195 INFO    ] Launching Daemon at Wed Oct 28 04:19:02 IST 2026
[2026-10-28 04:19:02,210.210 INFO    ] ================================================
[2026-10-28 04:19:02,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:19:02
[2026-10-28 04:19:03,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:19:03,786.786 INFO    ] Initializing speech engine...
[2026-10-28 04:19:03,795.795 INFO    ] 2026-10-28 04:19:03
[2026-10-28 04:19:04,059.059 INFO    ] 2026-10-28 04:19:04
[2026-10-28 04:19:04,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:19:04,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:19:04,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:19:04,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:19:04,600.600 INFO    ] time= 28/10/2026 04:19:04
[2026-10-28 04:19:04,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:19:04,646.646 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:19:04,763.763 INFO    ] No existing commands found in stream
[2026-10-28 04:19:09,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:19:09,795.795 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 04:19:13,487.487 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:19:13,490.490 INFO    ] Checking for system updates...
[2026-10-28 04:19:13,527.527 INFO    ] 200
[2026-10-28 04:19:13,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:19:13,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:19:13,585.585 INFO    ] No update needed
[2026-10-28 04:19:13,588.588 INFO    ] Checking for camera pi updates...
[2026-10-28 04:19:13,622.622 INFO    ] 200
[2026-10-28 04:19:13,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:19:13,668.668 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:19:13,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:19:13,757.757 INFO    ] No camera update needed
[2026-10-28 04:19:13,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:19:13,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:19:13,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:19:13,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:19:15,818.818 INFO    ] ================================================
[2026-10-28 04:19:15,834.834 INFO    ] Launching Daemon at Wed Oct 28 04:19:15 IST 2026
[2026-10-28 04:19:15,845.845 INFO    ] ================================================
[2026-10-28 04:19:16,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:19:16
[2026-10-28 04:19:17,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:19:17,291.291 INFO    ] Initializing speech engine...
[2026-10-28 04:19:17,300.300 INFO    ] 2026-10-28 04:19:17
[2026-10-28 04:19:17,597.597 INFO    ] 2026-10-28 04:19:17
[2026-10-28 04:19:17,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:19:17,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:19:17,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:19:18,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:19:18,096.096 INFO    ] time= 28/10/2026 04:19:18
[2026-10-28 04:19:18,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:19:18,199.199 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:19:18,365.365 INFO    ] No existing commands found in stream
[2026-10-28 04:19:23,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:19:23,389.389 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-28 04:19:25,584.584 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:19:25,587.587 INFO    ] Checking for system updates...
[2026-10-28 04:19:25,623.623 INFO    ] 200
[2026-10-28 04:19:25,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:19:25,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:19:25,680.680 INFO    ] No update needed
[2026-10-28 04:19:25,683.683 INFO    ] Checking for camera pi updates...
[2026-10-28 04:19:25,716.716 INFO    ] 200
[2026-10-28 04:19:25,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:19:25,759.759 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:19:25,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:19:25,837.837 INFO    ] No camera update needed
[2026-10-28 04:19:25,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:19:25,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:19:25,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:19:25,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:19:27,894.894 INFO    ] ================================================
[2026-10-28 04:19:27,910.910 INFO    ] Launching Daemon at Wed Oct 28 04:19:27 IST 2026
[2026-10-28 04:19:27,921.921 INFO    ] ================================================
[2026-10-28 04:19:28,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:19:28
[2026-10-28 04:19:29,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:19:29,340.340 INFO    ] Initializing speech engine...
[2026-10-28 04:19:29,356.356 INFO    ] 2026-10-28 04:19:29
[2026-10-28 04:19:29,640.640 INFO    ] 2026-10-28 04:19:29
[2026-10-28 04:19:29,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:19:29,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:19:29,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:19:30,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:19:30,162.162 INFO    ] time= 28/10/2026 04:19:30
[2026-10-28 04:19:30,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:19:30,281.281 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:19:30,417.417 INFO    ] No existing commands found in stream
[2026-10-28 04:19:35,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:19:35,450.450 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 04:19:37,589.589 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:19:37,592.592 INFO    ] Checking for system updates...
[2026-10-28 04:19:37,628.628 INFO    ] 200
[2026-10-28 04:19:37,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:19:37,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:19:37,691.691 INFO    ] No update needed
[2026-10-28 04:19:37,693.693 INFO    ] Checking for camera pi updates...
[2026-10-28 04:19:37,730.730 INFO    ] 200
[2026-10-28 04:19:37,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:19:37,773.773 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:19:37,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:19:37,958.958 INFO    ] No camera update needed
[2026-10-28 04:19:37,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:19:37,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:19:37,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:19:37,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:19:40,014.014 INFO    ] ================================================
[2026-10-28 04:19:40,030.030 INFO    ] Launching Daemon at Wed Oct 28 04:19:40 IST 2026
[2026-10-28 04:19:40,041.041 INFO    ] ================================================
[2026-10-28 04:19:40,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:19:40
[2026-10-28 04:19:41,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:19:41,449.449 INFO    ] Initializing speech engine...
[2026-10-28 04:19:41,462.462 INFO    ] 2026-10-28 04:19:41
[2026-10-28 04:19:41,762.762 INFO    ] 2026-10-28 04:19:41
[2026-10-28 04:19:41,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:19:42,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:19:42,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:19:42,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:19:42,373.373 INFO    ] time= 28/10/2026 04:19:42
[2026-10-28 04:19:42,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:19:42,426.426 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:19:42,603.603 INFO    ] No existing commands found in stream
[2026-10-28 04:19:47,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:19:47,628.628 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-28 04:19:49,338.338 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:19:49,341.341 INFO    ] Checking for system updates...
[2026-10-28 04:19:49,378.378 INFO    ] 200
[2026-10-28 04:19:49,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:19:49,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:19:49,450.450 INFO    ] No update needed
[2026-10-28 04:19:49,452.452 INFO    ] Checking for camera pi updates...
[2026-10-28 04:19:49,485.485 INFO    ] 200
[2026-10-28 04:19:49,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:19:49,532.532 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:19:49,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:19:49,608.608 INFO    ] No camera update needed
[2026-10-28 04:19:49,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:19:49,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:19:49,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:19:49,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:19:51,665.665 INFO    ] ================================================
[2026-10-28 04:19:51,681.681 INFO    ] Launching Daemon at Wed Oct 28 04:19:51 IST 2026
[2026-10-28 04:19:51,692.692 INFO    ] ================================================
[2026-10-28 04:19:52,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:19:52
[2026-10-28 04:19:52,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:19:53,131.131 INFO    ] Initializing speech engine...
[2026-10-28 04:19:53,154.154 INFO    ] 2026-10-28 04:19:53
[2026-10-28 04:19:53,409.409 INFO    ] 2026-10-28 04:19:53
[2026-10-28 04:19:53,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:19:53,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:19:53,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:19:53,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:19:53,967.967 INFO    ] time= 28/10/2026 04:19:53
[2026-10-28 04:19:53,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:19:53,991.991 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:19:54,124.124 INFO    ] No existing commands found in stream
[2026-10-28 04:19:59,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:19:59,146.146 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-28 04:20:06,121.121 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:20:06,124.124 INFO    ] Checking for system updates...
[2026-10-28 04:20:06,163.163 INFO    ] 200
[2026-10-28 04:20:06,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:20:06,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:20:06,220.220 INFO    ] No update needed
[2026-10-28 04:20:06,223.223 INFO    ] Checking for camera pi updates...
[2026-10-28 04:20:06,257.257 INFO    ] 200
[2026-10-28 04:20:06,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:20:06,300.300 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:20:06,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:20:06,415.415 INFO    ] No camera update needed
[2026-10-28 04:20:06,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:20:06,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:20:06,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:20:06,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:20:08,471.471 INFO    ] ================================================
[2026-10-28 04:20:08,487.487 INFO    ] Launching Daemon at Wed Oct 28 04:20:08 IST 2026
[2026-10-28 04:20:08,497.497 INFO    ] ================================================
[2026-10-28 04:20:09,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:20:09
[2026-10-28 04:20:09,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:20:09,912.912 INFO    ] Initializing speech engine...
[2026-10-28 04:20:09,919.919 INFO    ] 2026-10-28 04:20:09
[2026-10-28 04:20:10,211.211 INFO    ] 2026-10-28 04:20:10
[2026-10-28 04:20:10,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:20:10,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:20:10,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:20:10,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:20:10,719.719 INFO    ] time= 28/10/2026 04:20:10
[2026-10-28 04:20:10,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:20:10,828.828 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:20:10,943.943 INFO    ] No existing commands found in stream
[2026-10-28 04:20:15,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:20:15,979.979 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-28 04:20:18,302.302 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:20:18,305.305 INFO    ] Checking for system updates...
[2026-10-28 04:20:18,340.340 INFO    ] 200
[2026-10-28 04:20:18,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:20:18,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:20:18,398.398 INFO    ] No update needed
[2026-10-28 04:20:18,400.400 INFO    ] Checking for camera pi updates...
[2026-10-28 04:20:18,434.434 INFO    ] 200
[2026-10-28 04:20:18,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:20:18,476.476 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:20:18,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:20:18,555.555 INFO    ] No camera update needed
[2026-10-28 04:20:18,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:20:18,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:20:18,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:20:18,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:20:20,607.607 INFO    ] ================================================
[2026-10-28 04:20:20,623.623 INFO    ] Launching Daemon at Wed Oct 28 04:20:20 IST 2026
[2026-10-28 04:20:20,634.634 INFO    ] ================================================
[2026-10-28 04:20:21,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:20:21
[2026-10-28 04:20:21,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:20:22,236.236 INFO    ] Initializing speech engine...
[2026-10-28 04:20:22,244.244 INFO    ] 2026-10-28 04:20:22
[2026-10-28 04:20:22,520.520 INFO    ] 2026-10-28 04:20:22
[2026-10-28 04:20:22,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:20:22,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:20:22,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:20:23,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:20:23,100.100 INFO    ] time= 28/10/2026 04:20:23
[2026-10-28 04:20:23,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:20:23,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:20:23,297.297 INFO    ] No existing commands found in stream
[2026-10-28 04:20:28,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:20:28,331.331 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-28 04:20:30,746.746 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:20:30,749.749 INFO    ] Checking for system updates...
[2026-10-28 04:20:30,786.786 INFO    ] 200
[2026-10-28 04:20:30,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:20:30,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:20:30,844.844 INFO    ] No update needed
[2026-10-28 04:20:30,847.847 INFO    ] Checking for camera pi updates...
[2026-10-28 04:20:30,881.881 INFO    ] 200
[2026-10-28 04:20:30,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:20:30,928.928 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:20:31,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:20:31,012.012 INFO    ] No camera update needed
[2026-10-28 04:20:31,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:20:31,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:20:31,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:20:31,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:20:33,068.068 INFO    ] ================================================
[2026-10-28 04:20:33,083.083 INFO    ] Launching Daemon at Wed Oct 28 04:20:33 IST 2026
[2026-10-28 04:20:33,094.094 INFO    ] ================================================
[2026-10-28 04:20:33,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:20:33
[2026-10-28 04:20:34,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:20:34,755.755 INFO    ] Initializing speech engine...
[2026-10-28 04:20:34,769.769 INFO    ] 2026-10-28 04:20:34
[2026-10-28 04:20:35,054.054 INFO    ] 2026-10-28 04:20:35
[2026-10-28 04:20:35,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:20:35,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:20:35,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:20:35,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:20:35,634.634 INFO    ] time= 28/10/2026 04:20:35
[2026-10-28 04:20:35,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:20:35,672.672 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:20:35,796.796 INFO    ] No existing commands found in stream
[2026-10-28 04:20:40,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:20:40,827.827 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-28 04:20:42,044.044 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:20:42,047.047 INFO    ] Checking for system updates...
[2026-10-28 04:20:42,084.084 INFO    ] 200
[2026-10-28 04:20:42,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:20:42,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:20:42,141.141 INFO    ] No update needed
[2026-10-28 04:20:42,143.143 INFO    ] Checking for camera pi updates...
[2026-10-28 04:20:42,177.177 INFO    ] 200
[2026-10-28 04:20:42,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:20:42,221.221 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:20:42,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:20:42,318.318 INFO    ] No camera update needed
[2026-10-28 04:20:42,320.320 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:20:42,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:20:42,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:20:42,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:20:44,378.378 INFO    ] ================================================
[2026-10-28 04:20:44,394.394 INFO    ] Launching Daemon at Wed Oct 28 04:20:44 IST 2026
[2026-10-28 04:20:44,405.405 INFO    ] ================================================
[2026-10-28 04:20:45,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:20:45
[2026-10-28 04:20:45,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:20:45,985.985 INFO    ] Initializing speech engine...
[2026-10-28 04:20:45,991.991 INFO    ] 2026-10-28 04:20:45
[2026-10-28 04:20:46,267.267 INFO    ] 2026-10-28 04:20:46
[2026-10-28 04:20:46,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:20:46,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:20:46,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:20:46,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:20:46,845.845 INFO    ] time= 28/10/2026 04:20:46
[2026-10-28 04:20:46,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:20:46,880.880 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:20:47,001.001 INFO    ] No existing commands found in stream
[2026-10-28 04:20:52,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:20:52,043.043 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-28 04:20:52,724.724 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:20:52,727.727 INFO    ] Checking for system updates...
[2026-10-28 04:20:52,765.765 INFO    ] 200
[2026-10-28 04:20:52,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:20:52,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:20:52,821.821 INFO    ] No update needed
[2026-10-28 04:20:52,824.824 INFO    ] Checking for camera pi updates...
[2026-10-28 04:20:52,860.860 INFO    ] 200
[2026-10-28 04:20:52,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:20:52,904.904 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:20:52,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:20:52,988.988 INFO    ] No camera update needed
[2026-10-28 04:20:52,990.990 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:20:52,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:20:52,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:20:53,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:20:55,043.043 INFO    ] ================================================
[2026-10-28 04:20:55,058.058 INFO    ] Launching Daemon at Wed Oct 28 04:20:55 IST 2026
[2026-10-28 04:20:55,070.070 INFO    ] ================================================
[2026-10-28 04:20:55,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:20:55
[2026-10-28 04:20:56,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:20:56,488.488 INFO    ] Initializing speech engine...
[2026-10-28 04:20:56,498.498 INFO    ] 2026-10-28 04:20:56
[2026-10-28 04:20:56,750.750 INFO    ] 2026-10-28 04:20:56
[2026-10-28 04:20:56,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:20:57,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:20:57,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:20:57,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:20:57,299.299 INFO    ] time= 28/10/2026 04:20:57
[2026-10-28 04:20:57,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:20:57,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:20:57,450.450 INFO    ] No existing commands found in stream
[2026-10-28 04:21:02,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:21:02,465.465 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-28 04:21:06,003.003 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:21:06,006.006 INFO    ] Checking for system updates...
[2026-10-28 04:21:06,044.044 INFO    ] 200
[2026-10-28 04:21:06,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:21:06,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:21:06,105.105 INFO    ] No update needed
[2026-10-28 04:21:06,108.108 INFO    ] Checking for camera pi updates...
[2026-10-28 04:21:06,141.141 INFO    ] 200
[2026-10-28 04:21:06,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:21:06,186.186 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:21:06,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:21:06,266.266 INFO    ] No camera update needed
[2026-10-28 04:21:06,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:21:06,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:21:06,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:21:06,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:21:08,320.320 INFO    ] ================================================
[2026-10-28 04:21:08,336.336 INFO    ] Launching Daemon at Wed Oct 28 04:21:08 IST 2026
[2026-10-28 04:21:08,347.347 INFO    ] ================================================
[2026-10-28 04:21:08,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:21:08
[2026-10-28 04:21:09,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:21:09,764.764 INFO    ] Initializing speech engine...
[2026-10-28 04:21:09,782.782 INFO    ] 2026-10-28 04:21:09
[2026-10-28 04:21:10,029.029 INFO    ] 2026-10-28 04:21:10
[2026-10-28 04:21:10,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:21:10,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:21:10,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:21:10,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:21:10,583.583 INFO    ] time= 28/10/2026 04:21:10
[2026-10-28 04:21:10,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:21:10,618.618 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:21:10,735.735 INFO    ] No existing commands found in stream
[2026-10-28 04:21:15,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:21:15,758.758 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-28 04:21:17,602.602 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:21:17,605.605 INFO    ] Checking for system updates...
[2026-10-28 04:21:17,640.640 INFO    ] 200
[2026-10-28 04:21:17,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:21:17,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:21:17,697.697 INFO    ] No update needed
[2026-10-28 04:21:17,699.699 INFO    ] Checking for camera pi updates...
[2026-10-28 04:21:17,733.733 INFO    ] 200
[2026-10-28 04:21:17,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:21:17,780.780 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:21:17,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:21:17,867.867 INFO    ] No camera update needed
[2026-10-28 04:21:17,869.869 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:21:17,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:21:17,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:21:17,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:21:19,921.921 INFO    ] ================================================
[2026-10-28 04:21:19,936.936 INFO    ] Launching Daemon at Wed Oct 28 04:21:19 IST 2026
[2026-10-28 04:21:19,948.948 INFO    ] ================================================
[2026-10-28 04:21:20,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:21:20
[2026-10-28 04:21:21,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:21:21,369.369 INFO    ] Initializing speech engine...
[2026-10-28 04:21:21,378.378 INFO    ] 2026-10-28 04:21:21
[2026-10-28 04:21:21,634.634 INFO    ] 2026-10-28 04:21:21
[2026-10-28 04:21:21,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:21:21,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:21:21,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:21:22,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:21:22,193.193 INFO    ] time= 28/10/2026 04:21:22
[2026-10-28 04:21:22,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:21:22,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:21:22,354.354 INFO    ] No existing commands found in stream
[2026-10-28 04:21:27,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:21:27,382.382 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-28 04:21:28,897.897 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:21:28,900.900 INFO    ] Checking for system updates...
[2026-10-28 04:21:28,936.936 INFO    ] 200
[2026-10-28 04:21:28,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:21:28,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:21:29,001.001 INFO    ] No update needed
[2026-10-28 04:21:29,004.004 INFO    ] Checking for camera pi updates...
[2026-10-28 04:21:29,040.040 INFO    ] 200
[2026-10-28 04:21:29,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:21:29,082.082 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:21:29,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:21:29,178.178 INFO    ] No camera update needed
[2026-10-28 04:21:29,180.180 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:21:29,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:21:29,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:21:29,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:21:31,235.235 INFO    ] ================================================
[2026-10-28 04:21:31,251.251 INFO    ] Launching Daemon at Wed Oct 28 04:21:31 IST 2026
[2026-10-28 04:21:31,262.262 INFO    ] ================================================
[2026-10-28 04:21:31,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:21:31
[2026-10-28 04:21:32,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:21:32,725.725 INFO    ] Initializing speech engine...
[2026-10-28 04:21:32,748.748 INFO    ] 2026-10-28 04:21:32
[2026-10-28 04:21:33,012.012 INFO    ] 2026-10-28 04:21:33
[2026-10-28 04:21:33,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:21:33,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:21:33,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:21:33,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:21:33,596.596 INFO    ] time= 28/10/2026 04:21:33
[2026-10-28 04:21:33,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:21:33,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:21:33,742.742 INFO    ] No existing commands found in stream
[2026-10-28 04:21:38,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:21:38,765.765 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-28 04:21:40,949.949 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:21:40,951.951 INFO    ] Checking for system updates...
[2026-10-28 04:21:40,987.987 INFO    ] 200
[2026-10-28 04:21:40,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:21:41,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:21:41,050.050 INFO    ] No update needed
[2026-10-28 04:21:41,052.052 INFO    ] Checking for camera pi updates...
[2026-10-28 04:21:41,089.089 INFO    ] 200
[2026-10-28 04:21:41,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:21:41,132.132 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:21:41,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:21:41,321.321 INFO    ] No camera update needed
[2026-10-28 04:21:41,324.324 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:21:41,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:21:41,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:21:41,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:21:43,376.376 INFO    ] ================================================
[2026-10-28 04:21:43,391.391 INFO    ] Launching Daemon at Wed Oct 28 04:21:43 IST 2026
[2026-10-28 04:21:43,403.403 INFO    ] ================================================
[2026-10-28 04:21:43,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:21:43
[2026-10-28 04:21:44,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:21:44,831.831 INFO    ] Initializing speech engine...
[2026-10-28 04:21:44,838.838 INFO    ] 2026-10-28 04:21:44
[2026-10-28 04:21:45,146.146 INFO    ] 2026-10-28 04:21:45
[2026-10-28 04:21:45,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:21:45,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:21:45,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:21:45,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:21:45,880.880 INFO    ] time= 28/10/2026 04:21:45
[2026-10-28 04:21:45,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:21:45,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:21:46,092.092 INFO    ] No existing commands found in stream
[2026-10-28 04:21:51,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:21:51,105.105 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-28 04:21:53,990.990 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:21:53,992.992 INFO    ] Checking for system updates...
[2026-10-28 04:21:54,031.031 INFO    ] 200
[2026-10-28 04:21:54,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:21:54,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:21:54,089.089 INFO    ] No update needed
[2026-10-28 04:21:54,091.091 INFO    ] Checking for camera pi updates...
[2026-10-28 04:21:54,126.126 INFO    ] 200
[2026-10-28 04:21:54,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:21:54,178.178 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:21:54,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:21:54,237.237 INFO    ] No camera update needed
[2026-10-28 04:21:54,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:21:54,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:21:54,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:21:54,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:21:56,295.295 INFO    ] ================================================
[2026-10-28 04:21:56,311.311 INFO    ] Launching Daemon at Wed Oct 28 04:21:56 IST 2026
[2026-10-28 04:21:56,323.323 INFO    ] ================================================
[2026-10-28 04:21:56,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:21:56
[2026-10-28 04:21:57,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:21:57,746.746 INFO    ] Initializing speech engine...
[2026-10-28 04:21:57,755.755 INFO    ] 2026-10-28 04:21:57
[2026-10-28 04:21:58,004.004 INFO    ] 2026-10-28 04:21:57
[2026-10-28 04:21:58,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:21:58,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:21:58,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:21:58,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:21:58,571.571 INFO    ] time= 28/10/2026 04:21:58
[2026-10-28 04:21:58,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:21:58,595.595 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:21:58,730.730 INFO    ] No existing commands found in stream
[2026-10-28 04:22:03,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:22:03,744.744 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 04:22:06,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:22:06,204.204 INFO    ] Checking for system updates...
[2026-10-28 04:22:06,242.242 INFO    ] 200
[2026-10-28 04:22:06,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:22:06,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:22:06,305.305 INFO    ] No update needed
[2026-10-28 04:22:06,308.308 INFO    ] Checking for camera pi updates...
[2026-10-28 04:22:06,344.344 INFO    ] 200
[2026-10-28 04:22:06,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:22:06,390.390 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:22:06,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:22:06,444.444 INFO    ] No camera update needed
[2026-10-28 04:22:06,446.446 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:22:06,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:22:06,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:22:06,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:22:08,500.500 INFO    ] ================================================
[2026-10-28 04:22:08,516.516 INFO    ] Launching Daemon at Wed Oct 28 04:22:08 IST 2026
[2026-10-28 04:22:08,526.526 INFO    ] ================================================
[2026-10-28 04:22:09,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:22:09
[2026-10-28 04:22:09,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:22:09,934.934 INFO    ] Initializing speech engine...
[2026-10-28 04:22:09,943.943 INFO    ] 2026-10-28 04:22:09
[2026-10-28 04:22:10,237.237 INFO    ] 2026-10-28 04:22:10
[2026-10-28 04:22:10,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:22:10,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:22:10,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:22:10,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:22:10,656.656 INFO    ] time= 28/10/2026 04:22:10
[2026-10-28 04:22:10,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:22:10,733.733 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:22:10,866.866 INFO    ] No existing commands found in stream
[2026-10-28 04:22:15,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:22:15,885.885 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 04:22:17,321.321 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:22:17,324.324 INFO    ] Checking for system updates...
[2026-10-28 04:22:17,359.359 INFO    ] 200
[2026-10-28 04:22:17,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:22:17,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:22:17,434.434 INFO    ] No update needed
[2026-10-28 04:22:17,436.436 INFO    ] Checking for camera pi updates...
[2026-10-28 04:22:17,473.473 INFO    ] 200
[2026-10-28 04:22:17,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:22:17,520.520 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:22:17,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:22:17,602.602 INFO    ] No camera update needed
[2026-10-28 04:22:17,605.605 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:22:17,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:22:17,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:22:17,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:22:19,657.657 INFO    ] ================================================
[2026-10-28 04:22:19,673.673 INFO    ] Launching Daemon at Wed Oct 28 04:22:19 IST 2026
[2026-10-28 04:22:19,684.684 INFO    ] ================================================
[2026-10-28 04:22:20,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:22:20
[2026-10-28 04:22:20,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:22:21,112.112 INFO    ] Initializing speech engine...
[2026-10-28 04:22:21,121.121 INFO    ] 2026-10-28 04:22:21
[2026-10-28 04:22:21,373.373 INFO    ] 2026-10-28 04:22:21
[2026-10-28 04:22:21,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:22:21,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:22:21,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:22:21,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:22:21,918.918 INFO    ] time= 28/10/2026 04:22:21
[2026-10-28 04:22:21,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:22:21,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:22:22,074.074 INFO    ] No existing commands found in stream
[2026-10-28 04:22:27,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:22:27,088.088 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 04:22:28,268.268 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:22:28,271.271 INFO    ] Checking for system updates...
[2026-10-28 04:22:28,308.308 INFO    ] 200
[2026-10-28 04:22:28,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:22:28,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:22:28,368.368 INFO    ] No update needed
[2026-10-28 04:22:28,370.370 INFO    ] Checking for camera pi updates...
[2026-10-28 04:22:28,409.409 INFO    ] 200
[2026-10-28 04:22:28,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:22:28,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:22:28,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:22:28,540.540 INFO    ] No camera update needed
[2026-10-28 04:22:28,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:22:28,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:22:28,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:22:28,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:22:30,603.603 INFO    ] ================================================
[2026-10-28 04:22:30,619.619 INFO    ] Launching Daemon at Wed Oct 28 04:22:30 IST 2026
[2026-10-28 04:22:30,630.630 INFO    ] ================================================
[2026-10-28 04:22:31,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:22:31
[2026-10-28 04:22:31,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:22:32,099.099 INFO    ] Initializing speech engine...
[2026-10-28 04:22:32,113.113 INFO    ] 2026-10-28 04:22:32
[2026-10-28 04:22:32,389.389 INFO    ] 2026-10-28 04:22:32
[2026-10-28 04:22:32,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:22:32,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:22:32,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:22:32,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:22:32,827.827 INFO    ] time= 28/10/2026 04:22:32
[2026-10-28 04:22:32,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:22:32,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:22:32,984.984 INFO    ] No existing commands found in stream
[2026-10-28 04:22:38,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:22:38,015.015 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 04:22:42,321.321 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:22:42,324.324 INFO    ] Checking for system updates...
[2026-10-28 04:22:42,363.363 INFO    ] 200
[2026-10-28 04:22:42,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:22:42,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:22:42,428.428 INFO    ] No update needed
[2026-10-28 04:22:42,430.430 INFO    ] Checking for camera pi updates...
[2026-10-28 04:22:42,467.467 INFO    ] 200
[2026-10-28 04:22:42,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:22:42,515.515 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:22:42,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:22:42,579.579 INFO    ] No camera update needed
[2026-10-28 04:22:42,582.582 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:22:42,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:22:42,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:22:42,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:22:44,637.637 INFO    ] ================================================
[2026-10-28 04:22:44,652.652 INFO    ] Launching Daemon at Wed Oct 28 04:22:44 IST 2026
[2026-10-28 04:22:44,664.664 INFO    ] ================================================
[2026-10-28 04:22:45,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:22:45
[2026-10-28 04:22:46,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:22:46,316.316 INFO    ] Initializing speech engine...
[2026-10-28 04:22:46,322.322 INFO    ] 2026-10-28 04:22:46
[2026-10-28 04:22:46,566.566 INFO    ] 2026-10-28 04:22:46
[2026-10-28 04:22:46,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:22:46,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:22:46,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:22:47,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:22:47,117.117 INFO    ] time= 28/10/2026 04:22:47
[2026-10-28 04:22:47,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:22:47,167.167 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:22:47,282.282 INFO    ] No existing commands found in stream
[2026-10-28 04:22:52,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:22:52,316.316 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 04:22:55,867.867 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:22:55,870.870 INFO    ] Checking for system updates...
[2026-10-28 04:22:55,909.909 INFO    ] 200
[2026-10-28 04:22:55,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:22:55,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:22:55,974.974 INFO    ] No update needed
[2026-10-28 04:22:55,976.976 INFO    ] Checking for camera pi updates...
[2026-10-28 04:22:56,014.014 INFO    ] 200
[2026-10-28 04:22:56,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:22:56,062.062 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:22:56,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:22:56,167.167 INFO    ] No camera update needed
[2026-10-28 04:22:56,170.170 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:22:56,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:22:56,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:22:56,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:22:58,224.224 INFO    ] ================================================
[2026-10-28 04:22:58,240.240 INFO    ] Launching Daemon at Wed Oct 28 04:22:58 IST 2026
[2026-10-28 04:22:58,250.250 INFO    ] ================================================
[2026-10-28 04:22:58,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:22:58
[2026-10-28 04:22:59,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:22:59,676.676 INFO    ] Initializing speech engine...
[2026-10-28 04:22:59,686.686 INFO    ] 2026-10-28 04:22:59
[2026-10-28 04:22:59,938.938 INFO    ] 2026-10-28 04:22:59
[2026-10-28 04:22:59,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:23:00,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:23:00,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:23:00,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:23:00,531.531 INFO    ] time= 28/10/2026 04:23:00
[2026-10-28 04:23:00,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:23:00,555.555 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:23:00,697.697 INFO    ] No existing commands found in stream
[2026-10-28 04:23:05,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:23:05,712.712 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-28 04:23:07,467.467 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:23:07,470.470 INFO    ] Checking for system updates...
[2026-10-28 04:23:07,506.506 INFO    ] 200
[2026-10-28 04:23:07,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:23:07,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:23:07,564.564 INFO    ] No update needed
[2026-10-28 04:23:07,567.567 INFO    ] Checking for camera pi updates...
[2026-10-28 04:23:07,603.603 INFO    ] 200
[2026-10-28 04:23:07,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:23:07,650.650 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:23:07,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:23:07,735.735 INFO    ] No camera update needed
[2026-10-28 04:23:07,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:23:07,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:23:07,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:23:07,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:23:09,791.791 INFO    ] ================================================
[2026-10-28 04:23:09,807.807 INFO    ] Launching Daemon at Wed Oct 28 04:23:09 IST 2026
[2026-10-28 04:23:09,818.818 INFO    ] ================================================
[2026-10-28 04:23:10,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:23:10
[2026-10-28 04:23:11,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:23:11,410.410 INFO    ] Initializing speech engine...
[2026-10-28 04:23:11,423.423 INFO    ] 2026-10-28 04:23:11
[2026-10-28 04:23:11,733.733 INFO    ] 2026-10-28 04:23:11
[2026-10-28 04:23:11,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:23:12,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:23:12,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:23:12,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:23:12,386.386 INFO    ] time= 28/10/2026 04:23:12
[2026-10-28 04:23:12,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:23:12,497.497 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:23:12,638.638 INFO    ] No existing commands found in stream
[2026-10-28 04:23:17,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:23:17,667.667 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 04:23:20,367.367 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:23:20,370.370 INFO    ] Checking for system updates...
[2026-10-28 04:23:20,411.411 INFO    ] 200
[2026-10-28 04:23:20,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:23:20,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:23:20,470.470 INFO    ] No update needed
[2026-10-28 04:23:20,473.473 INFO    ] Checking for camera pi updates...
[2026-10-28 04:23:20,511.511 INFO    ] 200
[2026-10-28 04:23:20,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:23:20,560.560 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:23:20,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:23:20,671.671 INFO    ] No camera update needed
[2026-10-28 04:23:20,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:23:20,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:23:20,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:23:20,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:23:22,726.726 INFO    ] ================================================
[2026-10-28 04:23:22,741.741 INFO    ] Launching Daemon at Wed Oct 28 04:23:22 IST 2026
[2026-10-28 04:23:22,752.752 INFO    ] ================================================
[2026-10-28 04:23:23,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:23:23
[2026-10-28 04:23:23,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:23:24,168.168 INFO    ] Initializing speech engine...
[2026-10-28 04:23:24,177.177 INFO    ] 2026-10-28 04:23:24
[2026-10-28 04:23:24,431.431 INFO    ] 2026-10-28 04:23:24
[2026-10-28 04:23:24,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:23:24,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:23:24,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:23:24,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:23:24,998.998 INFO    ] time= 28/10/2026 04:23:24
[2026-10-28 04:23:25,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:23:25,022.022 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:23:25,146.146 INFO    ] No existing commands found in stream
[2026-10-28 04:23:30,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:23:30,179.179 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-28 04:23:32,527.527 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:23:32,531.531 INFO    ] Checking for system updates...
[2026-10-28 04:23:32,581.581 INFO    ] 200
[2026-10-28 04:23:32,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:23:32,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:23:32,642.642 INFO    ] No update needed
[2026-10-28 04:23:32,645.645 INFO    ] Checking for camera pi updates...
[2026-10-28 04:23:32,684.684 INFO    ] 200
[2026-10-28 04:23:32,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:23:32,733.733 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:23:32,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:23:32,831.831 INFO    ] No camera update needed
[2026-10-28 04:23:32,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:23:32,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:23:32,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:23:32,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:23:34,890.890 INFO    ] ================================================
[2026-10-28 04:23:34,905.905 INFO    ] Launching Daemon at Wed Oct 28 04:23:34 IST 2026
[2026-10-28 04:23:34,916.916 INFO    ] ================================================
[2026-10-28 04:23:35,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:23:35
[2026-10-28 04:23:36,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:23:36,558.558 INFO    ] Initializing speech engine...
[2026-10-28 04:23:36,572.572 INFO    ] 2026-10-28 04:23:36
[2026-10-28 04:23:36,848.848 INFO    ] 2026-10-28 04:23:36
[2026-10-28 04:23:36,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:23:37,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:23:37,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:23:37,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:23:37,462.462 INFO    ] time= 28/10/2026 04:23:37
[2026-10-28 04:23:37,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:23:37,496.496 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:23:37,664.664 INFO    ] No existing commands found in stream
[2026-10-28 04:23:42,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:23:42,698.698 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 04:23:43,389.389 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:23:43,392.392 INFO    ] Checking for system updates...
[2026-10-28 04:23:43,430.430 INFO    ] 200
[2026-10-28 04:23:43,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:23:43,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:23:43,497.497 INFO    ] No update needed
[2026-10-28 04:23:43,500.500 INFO    ] Checking for camera pi updates...
[2026-10-28 04:23:43,539.539 INFO    ] 200
[2026-10-28 04:23:43,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:23:43,590.590 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:23:43,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:23:43,673.673 INFO    ] No camera update needed
[2026-10-28 04:23:43,676.676 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:23:43,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:23:43,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:23:43,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:23:45,733.733 INFO    ] ================================================
[2026-10-28 04:23:45,748.748 INFO    ] Launching Daemon at Wed Oct 28 04:23:45 IST 2026
[2026-10-28 04:23:45,759.759 INFO    ] ================================================
[2026-10-28 04:23:46,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:23:46
[2026-10-28 04:23:46,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:23:47,179.179 INFO    ] Initializing speech engine...
[2026-10-28 04:23:47,199.199 INFO    ] 2026-10-28 04:23:47
[2026-10-28 04:23:47,471.471 INFO    ] 2026-10-28 04:23:47
[2026-10-28 04:23:47,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:23:47,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:23:47,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:23:48,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:23:48,083.083 INFO    ] time= 28/10/2026 04:23:48
[2026-10-28 04:23:48,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:23:48,122.122 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:23:48,254.254 INFO    ] No existing commands found in stream
[2026-10-28 04:23:53,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:23:53,279.279 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-28 04:23:55,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:23:55,732.732 INFO    ] Checking for system updates...
[2026-10-28 04:23:55,772.772 INFO    ] 200
[2026-10-28 04:23:55,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:23:55,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:23:55,829.829 INFO    ] No update needed
[2026-10-28 04:23:55,831.831 INFO    ] Checking for camera pi updates...
[2026-10-28 04:23:55,865.865 INFO    ] 200
[2026-10-28 04:23:55,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:23:55,907.907 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:23:56,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:23:56,089.089 INFO    ] No camera update needed
[2026-10-28 04:23:56,091.091 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:23:56,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:23:56,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:23:56,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:23:58,144.144 INFO    ] ================================================
[2026-10-28 04:23:58,159.159 INFO    ] Launching Daemon at Wed Oct 28 04:23:58 IST 2026
[2026-10-28 04:23:58,170.170 INFO    ] ================================================
[2026-10-28 04:23:58,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:23:58
[2026-10-28 04:23:59,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:23:59,592.592 INFO    ] Initializing speech engine...
[2026-10-28 04:23:59,598.598 INFO    ] 2026-10-28 04:23:59
[2026-10-28 04:23:59,841.841 INFO    ] 2026-10-28 04:23:59
[2026-10-28 04:23:59,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:24:00,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:24:00,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:24:00,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:24:00,395.395 INFO    ] time= 28/10/2026 04:24:00
[2026-10-28 04:24:00,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:24:00,420.420 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:24:00,572.572 INFO    ] No existing commands found in stream
[2026-10-28 04:24:05,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:24:05,605.605 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-28 04:24:08,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:24:08,534.534 INFO    ] Checking for system updates...
[2026-10-28 04:24:08,569.569 INFO    ] 200
[2026-10-28 04:24:08,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:24:08,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:24:08,628.628 INFO    ] No update needed
[2026-10-28 04:24:08,630.630 INFO    ] Checking for camera pi updates...
[2026-10-28 04:24:08,664.664 INFO    ] 200
[2026-10-28 04:24:08,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:24:08,707.707 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:24:08,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:24:08,811.811 INFO    ] No camera update needed
[2026-10-28 04:24:08,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:24:08,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:24:08,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:24:08,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:24:10,868.868 INFO    ] ================================================
[2026-10-28 04:24:10,884.884 INFO    ] Launching Daemon at Wed Oct 28 04:24:10 IST 2026
[2026-10-28 04:24:10,894.894 INFO    ] ================================================
[2026-10-28 04:24:11,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:24:11
[2026-10-28 04:24:12,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:24:12,378.378 INFO    ] Initializing speech engine...
[2026-10-28 04:24:12,390.390 INFO    ] 2026-10-28 04:24:12
[2026-10-28 04:24:12,697.697 INFO    ] 2026-10-28 04:24:12
[2026-10-28 04:24:12,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:24:13,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:24:13,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:24:13,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:24:13,287.287 INFO    ] time= 28/10/2026 04:24:13
[2026-10-28 04:24:13,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:24:13,363.363 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:24:13,470.470 INFO    ] No existing commands found in stream
[2026-10-28 04:24:18,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:24:18,493.493 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-28 04:24:20,340.340 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:24:20,342.342 INFO    ] Checking for system updates...
[2026-10-28 04:24:20,378.378 INFO    ] 200
[2026-10-28 04:24:20,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:24:20,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:24:20,436.436 INFO    ] No update needed
[2026-10-28 04:24:20,438.438 INFO    ] Checking for camera pi updates...
[2026-10-28 04:24:20,477.477 INFO    ] 200
[2026-10-28 04:24:20,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:24:20,519.519 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:24:20,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:24:20,580.580 INFO    ] No camera update needed
[2026-10-28 04:24:20,582.582 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:24:20,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:24:20,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:24:20,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:24:22,635.635 INFO    ] ================================================
[2026-10-28 04:24:22,651.651 INFO    ] Launching Daemon at Wed Oct 28 04:24:22 IST 2026
[2026-10-28 04:24:22,663.663 INFO    ] ================================================
[2026-10-28 04:24:23,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:24:23
[2026-10-28 04:24:23,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:24:24,079.079 INFO    ] Initializing speech engine...
[2026-10-28 04:24:24,088.088 INFO    ] 2026-10-28 04:24:24
[2026-10-28 04:24:24,355.355 INFO    ] 2026-10-28 04:24:24
[2026-10-28 04:24:24,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:24:24,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:24:24,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:24:24,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:24:24,898.898 INFO    ] time= 28/10/2026 04:24:24
[2026-10-28 04:24:24,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:24:24,931.931 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:24:25,042.042 INFO    ] No existing commands found in stream
[2026-10-28 04:24:30,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:24:30,074.074 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 04:24:33,653.653 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:24:33,656.656 INFO    ] Checking for system updates...
[2026-10-28 04:24:33,693.693 INFO    ] 200
[2026-10-28 04:24:33,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:24:33,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:24:33,768.768 INFO    ] No update needed
[2026-10-28 04:24:33,770.770 INFO    ] Checking for camera pi updates...
[2026-10-28 04:24:33,805.805 INFO    ] 200
[2026-10-28 04:24:33,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:24:33,859.859 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:24:33,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:24:33,953.953 INFO    ] No camera update needed
[2026-10-28 04:24:33,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:24:33,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:24:33,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:24:33,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:24:36,015.015 INFO    ] ================================================
[2026-10-28 04:24:36,031.031 INFO    ] Launching Daemon at Wed Oct 28 04:24:36 IST 2026
[2026-10-28 04:24:36,042.042 INFO    ] ================================================
[2026-10-28 04:24:36,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:24:36
[2026-10-28 04:24:37,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:24:37,505.505 INFO    ] Initializing speech engine...
[2026-10-28 04:24:37,513.513 INFO    ] 2026-10-28 04:24:37
[2026-10-28 04:24:37,793.793 INFO    ] 2026-10-28 04:24:37
[2026-10-28 04:24:37,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:24:38,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:24:38,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:24:38,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:24:38,350.350 INFO    ] time= 28/10/2026 04:24:38
[2026-10-28 04:24:38,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:24:38,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:24:38,527.527 INFO    ] No existing commands found in stream
[2026-10-28 04:24:43,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:24:43,560.560 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-28 04:24:45,045.045 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:24:45,048.048 INFO    ] Checking for system updates...
[2026-10-28 04:24:45,084.084 INFO    ] 200
[2026-10-28 04:24:45,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:24:45,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:24:45,145.145 INFO    ] No update needed
[2026-10-28 04:24:45,147.147 INFO    ] Checking for camera pi updates...
[2026-10-28 04:24:45,180.180 INFO    ] 200
[2026-10-28 04:24:45,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:24:45,223.223 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:24:45,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:24:45,287.287 INFO    ] No camera update needed
[2026-10-28 04:24:45,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:24:45,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:24:45,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:24:45,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:24:47,349.349 INFO    ] ================================================
[2026-10-28 04:24:47,366.366 INFO    ] Launching Daemon at Wed Oct 28 04:24:47 IST 2026
[2026-10-28 04:24:47,377.377 INFO    ] ================================================
[2026-10-28 04:24:47,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:24:47
[2026-10-28 04:24:48,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:24:48,820.820 INFO    ] Initializing speech engine...
[2026-10-28 04:24:48,845.845 INFO    ] 2026-10-28 04:24:48
[2026-10-28 04:24:49,109.109 INFO    ] 2026-10-28 04:24:49
[2026-10-28 04:24:49,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:24:49,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:24:49,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:24:49,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:24:49,612.612 INFO    ] time= 28/10/2026 04:24:49
[2026-10-28 04:24:49,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:24:49,691.691 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:24:49,822.822 INFO    ] No existing commands found in stream
[2026-10-28 04:24:54,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:24:54,852.852 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-28 04:24:58,626.626 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:24:58,629.629 INFO    ] Checking for system updates...
[2026-10-28 04:24:58,665.665 INFO    ] 200
[2026-10-28 04:24:58,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:24:58,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:24:58,724.724 INFO    ] No update needed
[2026-10-28 04:24:58,727.727 INFO    ] Checking for camera pi updates...
[2026-10-28 04:24:58,760.760 INFO    ] 200
[2026-10-28 04:24:58,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:24:58,809.809 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:24:58,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:24:58,908.908 INFO    ] No camera update needed
[2026-10-28 04:24:58,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:24:58,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:24:58,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:24:58,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:25:00,969.969 INFO    ] ================================================
[2026-10-28 04:25:00,985.985 INFO    ] Launching Daemon at Wed Oct 28 04:25:00 IST 2026
[2026-10-28 04:25:01,996.996 INFO    ] ================================================
[2026-10-28 04:25:01,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:25:01
[2026-10-28 04:25:02,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:25:02,882.882 INFO    ] Initializing speech engine...
[2026-10-28 04:25:02,889.889 INFO    ] 2026-10-28 04:25:02
[2026-10-28 04:25:03,178.178 INFO    ] 2026-10-28 04:25:03
[2026-10-28 04:25:03,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:25:03,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:25:03,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:25:03,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:25:03,735.735 INFO    ] time= 28/10/2026 04:25:03
[2026-10-28 04:25:03,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:25:03,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:25:03,993.993 INFO    ] No existing commands found in stream
[2026-10-28 04:25:09,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:25:09,035.035 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 04:25:11,913.913 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:25:11,916.916 INFO    ] Checking for system updates...
[2026-10-28 04:25:11,954.954 INFO    ] 200
[2026-10-28 04:25:11,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:25:12,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:25:12,015.015 INFO    ] No update needed
[2026-10-28 04:25:12,018.018 INFO    ] Checking for camera pi updates...
[2026-10-28 04:25:12,052.052 INFO    ] 200
[2026-10-28 04:25:12,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:25:12,096.096 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:25:12,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:25:12,189.189 INFO    ] No camera update needed
[2026-10-28 04:25:12,191.191 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:25:12,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:25:12,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:25:12,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:25:14,249.249 INFO    ] ================================================
[2026-10-28 04:25:14,266.266 INFO    ] Launching Daemon at Wed Oct 28 04:25:14 IST 2026
[2026-10-28 04:25:14,278.278 INFO    ] ================================================
[2026-10-28 04:25:14,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:25:14
[2026-10-28 04:25:15,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:25:15,695.695 INFO    ] Initializing speech engine...
[2026-10-28 04:25:15,718.718 INFO    ] 2026-10-28 04:25:15
[2026-10-28 04:25:15,968.968 INFO    ] 2026-10-28 04:25:15
[2026-10-28 04:25:16,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:25:16,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:25:16,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:25:16,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:25:16,523.523 INFO    ] time= 28/10/2026 04:25:16
[2026-10-28 04:25:16,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:25:16,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:25:16,677.677 INFO    ] No existing commands found in stream
[2026-10-28 04:25:21,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:25:21,695.695 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-28 04:25:24,882.882 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:25:24,885.885 INFO    ] Checking for system updates...
[2026-10-28 04:25:24,922.922 INFO    ] 200
[2026-10-28 04:25:24,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:25:24,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:25:24,993.993 INFO    ] No update needed
[2026-10-28 04:25:24,996.996 INFO    ] Checking for camera pi updates...
[2026-10-28 04:25:25,031.031 INFO    ] 200
[2026-10-28 04:25:25,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:25:25,078.078 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:25:25,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:25:25,174.174 INFO    ] No camera update needed
[2026-10-28 04:25:25,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:25:25,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:25:25,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:25:25,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:25:27,233.233 INFO    ] ================================================
[2026-10-28 04:25:27,249.249 INFO    ] Launching Daemon at Wed Oct 28 04:25:27 IST 2026
[2026-10-28 04:25:27,259.259 INFO    ] ================================================
[2026-10-28 04:25:27,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:25:27
[2026-10-28 04:25:28,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:25:28,721.721 INFO    ] Initializing speech engine...
[2026-10-28 04:25:28,731.731 INFO    ] 2026-10-28 04:25:28
[2026-10-28 04:25:28,988.988 INFO    ] 2026-10-28 04:25:28
[2026-10-28 04:25:29,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:25:29,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:25:29,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:25:29,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:25:29,532.532 INFO    ] time= 28/10/2026 04:25:29
[2026-10-28 04:25:29,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:25:29,579.579 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:25:29,687.687 INFO    ] No existing commands found in stream
[2026-10-28 04:25:34,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:25:34,718.718 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-28 04:25:38,402.402 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:25:38,405.405 INFO    ] Checking for system updates...
[2026-10-28 04:25:38,445.445 INFO    ] 200
[2026-10-28 04:25:38,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:25:38,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:25:38,502.502 INFO    ] No update needed
[2026-10-28 04:25:38,505.505 INFO    ] Checking for camera pi updates...
[2026-10-28 04:25:38,539.539 INFO    ] 200
[2026-10-28 04:25:38,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:25:38,583.583 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:25:38,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:25:38,672.672 INFO    ] No camera update needed
[2026-10-28 04:25:38,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:25:38,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:25:38,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:25:38,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:25:40,729.729 INFO    ] ================================================
[2026-10-28 04:25:40,745.745 INFO    ] Launching Daemon at Wed Oct 28 04:25:40 IST 2026
[2026-10-28 04:25:40,756.756 INFO    ] ================================================
[2026-10-28 04:25:41,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:25:41
[2026-10-28 04:25:42,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:25:42,298.298 INFO    ] Initializing speech engine...
[2026-10-28 04:25:42,307.307 INFO    ] 2026-10-28 04:25:42
[2026-10-28 04:25:42,554.554 INFO    ] 2026-10-28 04:25:42
[2026-10-28 04:25:42,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:25:42,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:25:42,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:25:43,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:25:43,074.074 INFO    ] time= 28/10/2026 04:25:43
[2026-10-28 04:25:43,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:25:43,138.138 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:25:43,274.274 INFO    ] No existing commands found in stream
[2026-10-28 04:25:48,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:25:48,294.294 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-28 04:25:50,285.285 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:25:50,293.293 INFO    ] Checking for system updates...
[2026-10-28 04:25:50,330.330 INFO    ] 200
[2026-10-28 04:25:50,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:25:50,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:25:50,388.388 INFO    ] No update needed
[2026-10-28 04:25:50,390.390 INFO    ] Checking for camera pi updates...
[2026-10-28 04:25:50,424.424 INFO    ] 200
[2026-10-28 04:25:50,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:25:50,467.467 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:25:50,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:25:50,554.554 INFO    ] No camera update needed
[2026-10-28 04:25:50,556.556 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:25:50,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:25:50,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:25:50,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:25:52,610.610 INFO    ] ================================================
[2026-10-28 04:25:52,626.626 INFO    ] Launching Daemon at Wed Oct 28 04:25:52 IST 2026
[2026-10-28 04:25:52,637.637 INFO    ] ================================================
[2026-10-28 04:25:53,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:25:53
[2026-10-28 04:25:53,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:25:54,089.089 INFO    ] Initializing speech engine...
[2026-10-28 04:25:54,096.096 INFO    ] 2026-10-28 04:25:54
[2026-10-28 04:25:54,339.339 INFO    ] 2026-10-28 04:25:54
[2026-10-28 04:25:54,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:25:54,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:25:54,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:25:54,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:25:54,899.899 INFO    ] time= 28/10/2026 04:25:54
[2026-10-28 04:25:54,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:25:54,922.922 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:25:55,052.052 INFO    ] No existing commands found in stream
[2026-10-28 04:26:00,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:26:00,072.072 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-28 04:26:04,060.060 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:26:04,063.063 INFO    ] Checking for system updates...
[2026-10-28 04:26:04,099.099 INFO    ] 200
[2026-10-28 04:26:04,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:26:04,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:26:04,158.158 INFO    ] No update needed
[2026-10-28 04:26:04,160.160 INFO    ] Checking for camera pi updates...
[2026-10-28 04:26:04,197.197 INFO    ] 200
[2026-10-28 04:26:04,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:26:04,240.240 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:26:04,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:26:04,327.327 INFO    ] No camera update needed
[2026-10-28 04:26:04,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:26:04,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:26:04,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:26:04,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:26:06,381.381 INFO    ] ================================================
[2026-10-28 04:26:06,397.397 INFO    ] Launching Daemon at Wed Oct 28 04:26:06 IST 2026
[2026-10-28 04:26:06,407.407 INFO    ] ================================================
[2026-10-28 04:26:07,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:26:07
[2026-10-28 04:26:07,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:26:07,907.907 INFO    ] Initializing speech engine...
[2026-10-28 04:26:07,931.931 INFO    ] 2026-10-28 04:26:07
[2026-10-28 04:26:08,205.205 INFO    ] 2026-10-28 04:26:08
[2026-10-28 04:26:08,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:26:08,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:26:08,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:26:08,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:26:08,788.788 INFO    ] time= 28/10/2026 04:26:08
[2026-10-28 04:26:08,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:26:08,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:26:08,933.933 INFO    ] No existing commands found in stream
[2026-10-28 04:26:13,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:26:13,956.956 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 04:26:18,065.065 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:26:18,067.067 INFO    ] Checking for system updates...
[2026-10-28 04:26:18,102.102 INFO    ] 200
[2026-10-28 04:26:18,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:26:18,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:26:18,182.182 INFO    ] No update needed
[2026-10-28 04:26:18,184.184 INFO    ] Checking for camera pi updates...
[2026-10-28 04:26:18,218.218 INFO    ] 200
[2026-10-28 04:26:18,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:26:18,260.260 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:26:18,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:26:18,361.361 INFO    ] No camera update needed
[2026-10-28 04:26:18,364.364 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:26:18,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:26:18,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:26:18,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:26:20,415.415 INFO    ] ================================================
[2026-10-28 04:26:20,430.430 INFO    ] Launching Daemon at Wed Oct 28 04:26:20 IST 2026
[2026-10-28 04:26:20,441.441 INFO    ] ================================================
[2026-10-28 04:26:21,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:26:21
[2026-10-28 04:26:21,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:26:21,904.904 INFO    ] Initializing speech engine...
[2026-10-28 04:26:21,912.912 INFO    ] 2026-10-28 04:26:21
[2026-10-28 04:26:22,184.184 INFO    ] 2026-10-28 04:26:22
[2026-10-28 04:26:22,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:26:22,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:26:22,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:26:22,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:26:22,891.891 INFO    ] time= 28/10/2026 04:26:22
[2026-10-28 04:26:22,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:26:22,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:26:23,107.107 INFO    ] No existing commands found in stream
[2026-10-28 04:26:28,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:26:28,128.128 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-28 04:26:29,334.334 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:26:29,337.337 INFO    ] Checking for system updates...
[2026-10-28 04:26:29,372.372 INFO    ] 200
[2026-10-28 04:26:29,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:26:29,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:26:29,430.430 INFO    ] No update needed
[2026-10-28 04:26:29,432.432 INFO    ] Checking for camera pi updates...
[2026-10-28 04:26:29,466.466 INFO    ] 200
[2026-10-28 04:26:29,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:26:29,508.508 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:26:29,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:26:29,591.591 INFO    ] No camera update needed
[2026-10-28 04:26:29,593.593 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:26:29,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:26:29,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:26:29,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:26:31,647.647 INFO    ] ================================================
[2026-10-28 04:26:31,664.664 INFO    ] Launching Daemon at Wed Oct 28 04:26:31 IST 2026
[2026-10-28 04:26:31,675.675 INFO    ] ================================================
[2026-10-28 04:26:32,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:26:32
[2026-10-28 04:26:32,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:26:33,159.159 INFO    ] Initializing speech engine...
[2026-10-28 04:26:33,170.170 INFO    ] 2026-10-28 04:26:33
[2026-10-28 04:26:33,461.461 INFO    ] 2026-10-28 04:26:33
[2026-10-28 04:26:33,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:26:33,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:26:33,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:26:34,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:26:34,040.040 INFO    ] time= 28/10/2026 04:26:34
[2026-10-28 04:26:34,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:26:34,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:26:34,213.213 INFO    ] No existing commands found in stream
[2026-10-28 04:26:39,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:26:39,243.243 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 04:26:42,510.510 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:26:42,513.513 INFO    ] Checking for system updates...
[2026-10-28 04:26:42,550.550 INFO    ] 200
[2026-10-28 04:26:42,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:26:42,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:26:42,609.609 INFO    ] No update needed
[2026-10-28 04:26:42,612.612 INFO    ] Checking for camera pi updates...
[2026-10-28 04:26:42,645.645 INFO    ] 200
[2026-10-28 04:26:42,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:26:42,694.694 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:26:42,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:26:42,778.778 INFO    ] No camera update needed
[2026-10-28 04:26:42,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:26:42,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:26:42,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:26:42,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:26:44,833.833 INFO    ] ================================================
[2026-10-28 04:26:44,849.849 INFO    ] Launching Daemon at Wed Oct 28 04:26:44 IST 2026
[2026-10-28 04:26:44,859.859 INFO    ] ================================================
[2026-10-28 04:26:45,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:26:45
[2026-10-28 04:26:46,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:26:46,308.308 INFO    ] Initializing speech engine...
[2026-10-28 04:26:46,318.318 INFO    ] 2026-10-28 04:26:46
[2026-10-28 04:26:46,565.565 INFO    ] 2026-10-28 04:26:46
[2026-10-28 04:26:46,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:26:46,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:26:46,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:26:47,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:26:47,140.140 INFO    ] time= 28/10/2026 04:26:47
[2026-10-28 04:26:47,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:26:47,189.189 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:26:47,343.343 INFO    ] No existing commands found in stream
[2026-10-28 04:26:52,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:26:52,377.377 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-28 04:26:53,672.672 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:26:53,675.675 INFO    ] Checking for system updates...
[2026-10-28 04:26:53,717.717 INFO    ] 200
[2026-10-28 04:26:53,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:26:53,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:26:53,782.782 INFO    ] No update needed
[2026-10-28 04:26:53,786.786 INFO    ] Checking for camera pi updates...
[2026-10-28 04:26:53,823.823 INFO    ] 200
[2026-10-28 04:26:53,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:26:53,866.866 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:26:53,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:26:53,958.958 INFO    ] No camera update needed
[2026-10-28 04:26:53,961.961 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:26:53,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:26:53,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:26:53,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:26:56,012.012 INFO    ] ================================================
[2026-10-28 04:26:56,028.028 INFO    ] Launching Daemon at Wed Oct 28 04:26:56 IST 2026
[2026-10-28 04:26:56,039.039 INFO    ] ================================================
[2026-10-28 04:26:56,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:26:56
[2026-10-28 04:26:57,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:26:57,460.460 INFO    ] Initializing speech engine...
[2026-10-28 04:26:57,468.468 INFO    ] 2026-10-28 04:26:57
[2026-10-28 04:26:57,719.719 INFO    ] 2026-10-28 04:26:57
[2026-10-28 04:26:57,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:26:58,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:26:58,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:26:58,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:26:58,289.289 INFO    ] time= 28/10/2026 04:26:58
[2026-10-28 04:26:58,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:26:58,318.318 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:26:58,451.451 INFO    ] No existing commands found in stream
[2026-10-28 04:27:03,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:27:03,480.480 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 04:27:05,286.286 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:27:05,288.288 INFO    ] Checking for system updates...
[2026-10-28 04:27:05,324.324 INFO    ] 200
[2026-10-28 04:27:05,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:27:05,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:27:05,385.385 INFO    ] No update needed
[2026-10-28 04:27:05,387.387 INFO    ] Checking for camera pi updates...
[2026-10-28 04:27:05,420.420 INFO    ] 200
[2026-10-28 04:27:05,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:27:05,468.468 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:27:05,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:27:05,550.550 INFO    ] No camera update needed
[2026-10-28 04:27:05,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:27:05,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:27:05,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:27:05,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:27:07,607.607 INFO    ] ================================================
[2026-10-28 04:27:07,622.622 INFO    ] Launching Daemon at Wed Oct 28 04:27:07 IST 2026
[2026-10-28 04:27:07,633.633 INFO    ] ================================================
[2026-10-28 04:27:08,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:27:08
[2026-10-28 04:27:08,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:27:09,140.140 INFO    ] Initializing speech engine...
[2026-10-28 04:27:09,150.150 INFO    ] 2026-10-28 04:27:09
[2026-10-28 04:27:09,407.407 INFO    ] 2026-10-28 04:27:09
[2026-10-28 04:27:09,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:27:09,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:27:09,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:27:09,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:27:09,951.951 INFO    ] time= 28/10/2026 04:27:09
[2026-10-28 04:27:09,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:27:09,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:27:10,128.128 INFO    ] No existing commands found in stream
[2026-10-28 04:27:15,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:27:15,156.156 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-28 04:27:19,467.467 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:27:19,470.470 INFO    ] Checking for system updates...
[2026-10-28 04:27:19,510.510 INFO    ] 200
[2026-10-28 04:27:19,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:27:19,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:27:19,566.566 INFO    ] No update needed
[2026-10-28 04:27:19,569.569 INFO    ] Checking for camera pi updates...
[2026-10-28 04:27:19,607.607 INFO    ] 200
[2026-10-28 04:27:19,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:27:19,651.651 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:27:19,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:27:19,737.737 INFO    ] No camera update needed
[2026-10-28 04:27:19,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:27:19,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:27:19,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:27:19,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:27:21,794.794 INFO    ] ================================================
[2026-10-28 04:27:21,810.810 INFO    ] Launching Daemon at Wed Oct 28 04:27:21 IST 2026
[2026-10-28 04:27:21,821.821 INFO    ] ================================================
[2026-10-28 04:27:22,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:27:22
[2026-10-28 04:27:23,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:27:23,279.279 INFO    ] Initializing speech engine...
[2026-10-28 04:27:23,289.289 INFO    ] 2026-10-28 04:27:23
[2026-10-28 04:27:23,551.551 INFO    ] 2026-10-28 04:27:23
[2026-10-28 04:27:23,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:27:23,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:27:23,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:27:24,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:27:24,095.095 INFO    ] time= 28/10/2026 04:27:24
[2026-10-28 04:27:24,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:27:24,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:27:24,271.271 INFO    ] No existing commands found in stream
[2026-10-28 04:27:29,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:27:29,309.309 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-28 04:27:30,144.144 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:27:30,147.147 INFO    ] Checking for system updates...
[2026-10-28 04:27:30,182.182 INFO    ] 200
[2026-10-28 04:27:30,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:27:30,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:27:30,247.247 INFO    ] No update needed
[2026-10-28 04:27:30,250.250 INFO    ] Checking for camera pi updates...
[2026-10-28 04:27:30,284.284 INFO    ] 200
[2026-10-28 04:27:30,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:27:30,326.326 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:27:30,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:27:30,405.405 INFO    ] No camera update needed
[2026-10-28 04:27:30,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:27:30,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:27:30,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:27:30,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:27:32,463.463 INFO    ] ================================================
[2026-10-28 04:27:32,481.481 INFO    ] Launching Daemon at Wed Oct 28 04:27:32 IST 2026
[2026-10-28 04:27:32,493.493 INFO    ] ================================================
[2026-10-28 04:27:33,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:27:33
[2026-10-28 04:27:33,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:27:33,971.971 INFO    ] Initializing speech engine...
[2026-10-28 04:27:33,981.981 INFO    ] 2026-10-28 04:27:33
[2026-10-28 04:27:34,243.243 INFO    ] 2026-10-28 04:27:34
[2026-10-28 04:27:34,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:27:34,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:27:34,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:27:34,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:27:34,791.791 INFO    ] time= 28/10/2026 04:27:34
[2026-10-28 04:27:34,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:27:34,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:27:34,985.985 INFO    ] No existing commands found in stream
[2026-10-28 04:27:40,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:27:40,018.018 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-28 04:27:41,737.737 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:27:41,740.740 INFO    ] Checking for system updates...
[2026-10-28 04:27:41,776.776 INFO    ] 200
[2026-10-28 04:27:41,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:27:41,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:27:41,833.833 INFO    ] No update needed
[2026-10-28 04:27:41,836.836 INFO    ] Checking for camera pi updates...
[2026-10-28 04:27:41,869.869 INFO    ] 200
[2026-10-28 04:27:41,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:27:41,912.912 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:27:42,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:27:42,002.002 INFO    ] No camera update needed
[2026-10-28 04:27:42,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:27:42,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:27:42,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:27:42,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:27:44,060.060 INFO    ] ================================================
[2026-10-28 04:27:44,075.075 INFO    ] Launching Daemon at Wed Oct 28 04:27:44 IST 2026
[2026-10-28 04:27:44,086.086 INFO    ] ================================================
[2026-10-28 04:27:44,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:27:44
[2026-10-28 04:27:45,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:27:45,551.551 INFO    ] Initializing speech engine...
[2026-10-28 04:27:45,560.560 INFO    ] 2026-10-28 04:27:45
[2026-10-28 04:27:45,809.809 INFO    ] 2026-10-28 04:27:45
[2026-10-28 04:27:45,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:27:46,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:27:46,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:27:46,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:27:46,363.363 INFO    ] time= 28/10/2026 04:27:46
[2026-10-28 04:27:46,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:27:46,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:27:46,516.516 INFO    ] No existing commands found in stream
[2026-10-28 04:27:51,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:27:51,547.547 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 04:27:55,085.085 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:27:55,087.087 INFO    ] Checking for system updates...
[2026-10-28 04:27:55,128.128 INFO    ] 200
[2026-10-28 04:27:55,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:27:55,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:27:55,192.192 INFO    ] No update needed
[2026-10-28 04:27:55,195.195 INFO    ] Checking for camera pi updates...
[2026-10-28 04:27:55,228.228 INFO    ] 200
[2026-10-28 04:27:55,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:27:55,276.276 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:27:55,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:27:55,358.358 INFO    ] No camera update needed
[2026-10-28 04:27:55,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:27:55,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:27:55,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:27:55,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:27:57,418.418 INFO    ] ================================================
[2026-10-28 04:27:57,434.434 INFO    ] Launching Daemon at Wed Oct 28 04:27:57 IST 2026
[2026-10-28 04:27:57,444.444 INFO    ] ================================================
[2026-10-28 04:27:58,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:27:58
[2026-10-28 04:27:58,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:27:58,877.877 INFO    ] Initializing speech engine...
[2026-10-28 04:27:58,885.885 INFO    ] 2026-10-28 04:27:58
[2026-10-28 04:27:59,187.187 INFO    ] 2026-10-28 04:27:59
[2026-10-28 04:27:59,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:27:59,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:27:59,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:27:59,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:27:59,743.743 INFO    ] time= 28/10/2026 04:27:59
[2026-10-28 04:27:59,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:27:59,801.801 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:27:59,939.939 INFO    ] No existing commands found in stream
[2026-10-28 04:28:04,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:28:04,960.960 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-28 04:28:09,049.049 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:28:09,052.052 INFO    ] Checking for system updates...
[2026-10-28 04:28:09,092.092 INFO    ] 200
[2026-10-28 04:28:09,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:28:09,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:28:09,152.152 INFO    ] No update needed
[2026-10-28 04:28:09,155.155 INFO    ] Checking for camera pi updates...
[2026-10-28 04:28:09,190.190 INFO    ] 200
[2026-10-28 04:28:09,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:28:09,240.240 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:28:09,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:28:09,429.429 INFO    ] No camera update needed
[2026-10-28 04:28:09,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:28:09,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:28:09,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:28:09,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:28:11,491.491 INFO    ] ================================================
[2026-10-28 04:28:11,508.508 INFO    ] Launching Daemon at Wed Oct 28 04:28:11 IST 2026
[2026-10-28 04:28:11,519.519 INFO    ] ================================================
[2026-10-28 04:28:12,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:28:12
[2026-10-28 04:28:12,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:28:12,927.927 INFO    ] Initializing speech engine...
[2026-10-28 04:28:12,940.940 INFO    ] 2026-10-28 04:28:12
[2026-10-28 04:28:13,235.235 INFO    ] 2026-10-28 04:28:13
[2026-10-28 04:28:13,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:28:13,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:28:13,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:28:13,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:28:13,834.834 INFO    ] time= 28/10/2026 04:28:13
[2026-10-28 04:28:13,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:28:13,886.886 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:28:14,029.029 INFO    ] No existing commands found in stream
[2026-10-28 04:28:19,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:28:19,059.059 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 04:28:21,527.527 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:28:21,530.530 INFO    ] Checking for system updates...
[2026-10-28 04:28:21,567.567 INFO    ] 200
[2026-10-28 04:28:21,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:28:21,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:28:21,626.626 INFO    ] No update needed
[2026-10-28 04:28:21,629.629 INFO    ] Checking for camera pi updates...
[2026-10-28 04:28:21,663.663 INFO    ] 200
[2026-10-28 04:28:21,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:28:21,706.706 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:28:21,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:28:21,812.812 INFO    ] No camera update needed
[2026-10-28 04:28:21,814.814 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:28:21,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:28:21,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:28:21,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:28:23,873.873 INFO    ] ================================================
[2026-10-28 04:28:23,889.889 INFO    ] Launching Daemon at Wed Oct 28 04:28:23 IST 2026
[2026-10-28 04:28:23,900.900 INFO    ] ================================================
[2026-10-28 04:28:24,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:28:24
[2026-10-28 04:28:25,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:28:25,584.584 INFO    ] Initializing speech engine...
[2026-10-28 04:28:25,592.592 INFO    ] 2026-10-28 04:28:25
[2026-10-28 04:28:25,885.885 INFO    ] 2026-10-28 04:28:25
[2026-10-28 04:28:25,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:28:26,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:28:26,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:28:26,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:28:26,446.446 INFO    ] time= 28/10/2026 04:28:26
[2026-10-28 04:28:26,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:28:26,475.475 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:28:26,603.603 INFO    ] No existing commands found in stream
[2026-10-28 04:28:31,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:28:31,626.626 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 04:28:35,464.464 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:28:35,467.467 INFO    ] Checking for system updates...
[2026-10-28 04:28:35,507.507 INFO    ] 200
[2026-10-28 04:28:35,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:28:35,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:28:35,564.564 INFO    ] No update needed
[2026-10-28 04:28:35,566.566 INFO    ] Checking for camera pi updates...
[2026-10-28 04:28:35,604.604 INFO    ] 200
[2026-10-28 04:28:35,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:28:35,646.646 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:28:35,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:28:35,736.736 INFO    ] No camera update needed
[2026-10-28 04:28:35,738.738 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:28:35,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:28:35,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:28:35,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:28:37,795.795 INFO    ] ================================================
[2026-10-28 04:28:37,813.813 INFO    ] Launching Daemon at Wed Oct 28 04:28:37 IST 2026
[2026-10-28 04:28:37,823.823 INFO    ] ================================================
[2026-10-28 04:28:38,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:28:38
[2026-10-28 04:28:38,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:28:39,257.257 INFO    ] Initializing speech engine...
[2026-10-28 04:28:39,276.276 INFO    ] 2026-10-28 04:28:39
[2026-10-28 04:28:39,522.522 INFO    ] 2026-10-28 04:28:39
[2026-10-28 04:28:39,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:28:39,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:28:39,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:28:40,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:28:40,079.079 INFO    ] time= 28/10/2026 04:28:40
[2026-10-28 04:28:40,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:28:40,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:28:40,255.255 INFO    ] No existing commands found in stream
[2026-10-28 04:28:45,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:28:45,288.288 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-28 04:28:47,550.550 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:28:47,553.553 INFO    ] Checking for system updates...
[2026-10-28 04:28:47,590.590 INFO    ] 200
[2026-10-28 04:28:47,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:28:47,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:28:47,658.658 INFO    ] No update needed
[2026-10-28 04:28:47,661.661 INFO    ] Checking for camera pi updates...
[2026-10-28 04:28:47,696.696 INFO    ] 200
[2026-10-28 04:28:47,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:28:47,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:28:47,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:28:47,835.835 INFO    ] No camera update needed
[2026-10-28 04:28:47,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:28:47,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:28:47,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:28:47,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:28:49,893.893 INFO    ] ================================================
[2026-10-28 04:28:49,908.908 INFO    ] Launching Daemon at Wed Oct 28 04:28:49 IST 2026
[2026-10-28 04:28:49,918.918 INFO    ] ================================================
[2026-10-28 04:28:50,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:28:50
[2026-10-28 04:28:51,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:28:51,341.341 INFO    ] Initializing speech engine...
[2026-10-28 04:28:51,350.350 INFO    ] 2026-10-28 04:28:51
[2026-10-28 04:28:51,612.612 INFO    ] 2026-10-28 04:28:51
[2026-10-28 04:28:51,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:28:51,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:28:51,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:28:52,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:28:52,165.165 INFO    ] time= 28/10/2026 04:28:52
[2026-10-28 04:28:52,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:28:52,264.264 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:28:52,412.412 INFO    ] No existing commands found in stream
[2026-10-28 04:28:57,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:28:57,442.442 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 04:28:59,983.983 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:28:59,986.986 INFO    ] Checking for system updates...
[2026-10-28 04:29:00,021.021 INFO    ] 200
[2026-10-28 04:29:00,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:29:00,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:29:00,079.079 INFO    ] No update needed
[2026-10-28 04:29:00,081.081 INFO    ] Checking for camera pi updates...
[2026-10-28 04:29:00,115.115 INFO    ] 200
[2026-10-28 04:29:00,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:29:00,164.164 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:29:00,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:29:00,270.270 INFO    ] No camera update needed
[2026-10-28 04:29:00,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:29:00,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:29:00,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:29:00,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:29:02,329.329 INFO    ] ================================================
[2026-10-28 04:29:02,351.351 INFO    ] Launching Daemon at Wed Oct 28 04:29:02 IST 2026
[2026-10-28 04:29:02,370.370 INFO    ] ================================================
[2026-10-28 04:29:03,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:29:03
[2026-10-28 04:29:03,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:29:03,950.950 INFO    ] Initializing speech engine...
[2026-10-28 04:29:03,966.966 INFO    ] 2026-10-28 04:29:03
[2026-10-28 04:29:04,241.241 INFO    ] 2026-10-28 04:29:04
[2026-10-28 04:29:04,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:29:04,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:29:04,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:29:04,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:29:04,817.817 INFO    ] time= 28/10/2026 04:29:04
[2026-10-28 04:29:04,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:29:04,841.841 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:29:04,974.974 INFO    ] No existing commands found in stream
[2026-10-28 04:29:09,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:29:09,996.996 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 04:29:10,588.588 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:29:10,590.590 INFO    ] Checking for system updates...
[2026-10-28 04:29:10,626.626 INFO    ] 200
[2026-10-28 04:29:10,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:29:10,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:29:10,691.691 INFO    ] No update needed
[2026-10-28 04:29:10,693.693 INFO    ] Checking for camera pi updates...
[2026-10-28 04:29:10,727.727 INFO    ] 200
[2026-10-28 04:29:10,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:29:10,768.768 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:29:10,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:29:10,858.858 INFO    ] No camera update needed
[2026-10-28 04:29:10,860.860 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:29:10,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:29:10,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:29:10,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:29:12,914.914 INFO    ] ================================================
[2026-10-28 04:29:12,930.930 INFO    ] Launching Daemon at Wed Oct 28 04:29:12 IST 2026
[2026-10-28 04:29:12,941.941 INFO    ] ================================================
[2026-10-28 04:29:13,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:29:13
[2026-10-28 04:29:14,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:29:14,423.423 INFO    ] Initializing speech engine...
[2026-10-28 04:29:14,432.432 INFO    ] 2026-10-28 04:29:14
[2026-10-28 04:29:14,682.682 INFO    ] 2026-10-28 04:29:14
[2026-10-28 04:29:14,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:29:14,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:29:15,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:29:15,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:29:15,238.238 INFO    ] time= 28/10/2026 04:29:15
[2026-10-28 04:29:15,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:29:15,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:29:15,406.406 INFO    ] No existing commands found in stream
[2026-10-28 04:29:20,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:29:20,429.429 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-28 04:29:21,750.750 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:29:21,753.753 INFO    ] Checking for system updates...
[2026-10-28 04:29:21,791.791 INFO    ] 200
[2026-10-28 04:29:21,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:29:21,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:29:21,853.853 INFO    ] No update needed
[2026-10-28 04:29:21,856.856 INFO    ] Checking for camera pi updates...
[2026-10-28 04:29:21,889.889 INFO    ] 200
[2026-10-28 04:29:21,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:29:21,937.937 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:29:22,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:29:22,021.021 INFO    ] No camera update needed
[2026-10-28 04:29:22,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:29:22,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:29:22,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:29:22,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:29:24,078.078 INFO    ] ================================================
[2026-10-28 04:29:24,092.092 INFO    ] Launching Daemon at Wed Oct 28 04:29:24 IST 2026
[2026-10-28 04:29:24,103.103 INFO    ] ================================================
[2026-10-28 04:29:24,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:29:24
[2026-10-28 04:29:25,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:29:25,569.569 INFO    ] Initializing speech engine...
[2026-10-28 04:29:25,591.591 INFO    ] 2026-10-28 04:29:25
[2026-10-28 04:29:25,843.843 INFO    ] 2026-10-28 04:29:25
[2026-10-28 04:29:25,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:29:26,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:29:26,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:29:26,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:29:26,398.398 INFO    ] time= 28/10/2026 04:29:26
[2026-10-28 04:29:26,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:29:26,425.425 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:29:26,564.564 INFO    ] No existing commands found in stream
[2026-10-28 04:29:31,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:29:31,589.589 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-28 04:29:33,645.645 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:29:33,648.648 INFO    ] Checking for system updates...
[2026-10-28 04:29:33,683.683 INFO    ] 200
[2026-10-28 04:29:33,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:29:33,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:29:33,739.739 INFO    ] No update needed
[2026-10-28 04:29:33,742.742 INFO    ] Checking for camera pi updates...
[2026-10-28 04:29:33,778.778 INFO    ] 200
[2026-10-28 04:29:33,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:29:33,821.821 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:29:33,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:29:33,941.941 INFO    ] No camera update needed
[2026-10-28 04:29:33,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:29:33,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:29:33,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:29:33,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:29:36,998.998 INFO    ] ================================================
[2026-10-28 04:29:36,014.014 INFO    ] Launching Daemon at Wed Oct 28 04:29:36 IST 2026
[2026-10-28 04:29:36,025.025 INFO    ] ================================================
[2026-10-28 04:29:36,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:29:36
[2026-10-28 04:29:37,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:29:37,497.497 INFO    ] Initializing speech engine...
[2026-10-28 04:29:37,505.505 INFO    ] 2026-10-28 04:29:37
[2026-10-28 04:29:37,804.804 INFO    ] 2026-10-28 04:29:37
[2026-10-28 04:29:37,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:29:38,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:29:38,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:29:38,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:29:38,320.320 INFO    ] time= 28/10/2026 04:29:38
[2026-10-28 04:29:38,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:29:38,438.438 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:29:38,567.567 INFO    ] No existing commands found in stream
[2026-10-28 04:29:43,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:29:43,597.597 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 04:29:46,988.988 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:29:46,990.990 INFO    ] Checking for system updates...
[2026-10-28 04:29:47,030.030 INFO    ] 200
[2026-10-28 04:29:47,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:29:47,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:29:47,088.088 INFO    ] No update needed
[2026-10-28 04:29:47,090.090 INFO    ] Checking for camera pi updates...
[2026-10-28 04:29:47,127.127 INFO    ] 200
[2026-10-28 04:29:47,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:29:47,170.170 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:29:47,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:29:47,263.263 INFO    ] No camera update needed
[2026-10-28 04:29:47,265.265 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:29:47,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:29:47,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:29:47,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:29:49,318.318 INFO    ] ================================================
[2026-10-28 04:29:49,334.334 INFO    ] Launching Daemon at Wed Oct 28 04:29:49 IST 2026
[2026-10-28 04:29:49,345.345 INFO    ] ================================================
[2026-10-28 04:29:50,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:29:50
[2026-10-28 04:29:50,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:29:50,988.988 INFO    ] Initializing speech engine...
[2026-10-28 04:29:51,002.002 INFO    ] 2026-10-28 04:29:50
[2026-10-28 04:29:51,315.315 INFO    ] 2026-10-28 04:29:51
[2026-10-28 04:29:51,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:29:51,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:29:51,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:29:51,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:29:51,834.834 INFO    ] time= 28/10/2026 04:29:51
[2026-10-28 04:29:51,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:29:51,870.870 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:29:51,990.990 INFO    ] No existing commands found in stream
[2026-10-28 04:29:57,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:29:57,029.029 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-28 04:29:58,824.824 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:29:58,827.827 INFO    ] Checking for system updates...
[2026-10-28 04:29:58,865.865 INFO    ] 200
[2026-10-28 04:29:58,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:29:58,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:29:58,930.930 INFO    ] No update needed
[2026-10-28 04:29:58,933.933 INFO    ] Checking for camera pi updates...
[2026-10-28 04:29:58,967.967 INFO    ] 200
[2026-10-28 04:29:58,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:29:59,013.013 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:29:59,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:29:59,131.131 INFO    ] No camera update needed
[2026-10-28 04:29:59,134.134 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:29:59,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:29:59,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:29:59,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:30:01,190.190 INFO    ] ================================================
[2026-10-28 04:30:01,206.206 INFO    ] Launching Daemon at Wed Oct 28 04:30:01 IST 2026
[2026-10-28 04:30:01,216.216 INFO    ] ================================================
[2026-10-28 04:30:01,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:30:01
[2026-10-28 04:30:03,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:30:03,734.734 INFO    ] Initializing speech engine...
[2026-10-28 04:30:03,737.737 INFO    ] 2026-10-28 04:30:03
[2026-10-28 04:30:04,105.105 INFO    ] 2026-10-28 04:30:04
[2026-10-28 04:30:04,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:30:04,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:30:04,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:30:04,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:30:04,616.616 INFO    ] time= 28/10/2026 04:30:04
[2026-10-28 04:30:04,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:30:04,655.655 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:30:04,794.794 INFO    ] No existing commands found in stream
[2026-10-28 04:30:09,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:30:09,827.827 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 04:30:12,712.712 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:30:12,715.715 INFO    ] Checking for system updates...
[2026-10-28 04:30:12,756.756 INFO    ] 200
[2026-10-28 04:30:12,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:30:12,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:30:12,820.820 INFO    ] No update needed
[2026-10-28 04:30:12,823.823 INFO    ] Checking for camera pi updates...
[2026-10-28 04:30:12,862.862 INFO    ] 200
[2026-10-28 04:30:12,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:30:12,905.905 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:30:13,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:30:13,110.110 INFO    ] No camera update needed
[2026-10-28 04:30:13,113.113 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:30:13,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:30:13,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:30:13,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:30:15,167.167 INFO    ] ================================================
[2026-10-28 04:30:15,182.182 INFO    ] Launching Daemon at Wed Oct 28 04:30:15 IST 2026
[2026-10-28 04:30:15,194.194 INFO    ] ================================================
[2026-10-28 04:30:15,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:30:15
[2026-10-28 04:30:16,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:30:16,662.662 INFO    ] Initializing speech engine...
[2026-10-28 04:30:16,668.668 INFO    ] 2026-10-28 04:30:16
[2026-10-28 04:30:16,928.928 INFO    ] 2026-10-28 04:30:16
[2026-10-28 04:30:16,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:30:17,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:30:17,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:30:17,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:30:17,496.496 INFO    ] time= 28/10/2026 04:30:17
[2026-10-28 04:30:17,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:30:17,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:30:17,639.639 INFO    ] No existing commands found in stream
[2026-10-28 04:30:22,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:30:22,677.677 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-28 04:30:25,186.186 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:30:25,189.189 INFO    ] Checking for system updates...
[2026-10-28 04:30:25,225.225 INFO    ] 200
[2026-10-28 04:30:25,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:30:25,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:30:25,282.282 INFO    ] No update needed
[2026-10-28 04:30:25,285.285 INFO    ] Checking for camera pi updates...
[2026-10-28 04:30:25,322.322 INFO    ] 200
[2026-10-28 04:30:25,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:30:25,368.368 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:30:25,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:30:25,447.447 INFO    ] No camera update needed
[2026-10-28 04:30:25,449.449 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:30:25,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:30:25,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:30:25,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:30:27,503.503 INFO    ] ================================================
[2026-10-28 04:30:27,518.518 INFO    ] Launching Daemon at Wed Oct 28 04:30:27 IST 2026
[2026-10-28 04:30:27,529.529 INFO    ] ================================================
[2026-10-28 04:30:28,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:30:28
[2026-10-28 04:30:28,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:30:28,951.951 INFO    ] Initializing speech engine...
[2026-10-28 04:30:28,974.974 INFO    ] 2026-10-28 04:30:28
[2026-10-28 04:30:29,237.237 INFO    ] 2026-10-28 04:30:29
[2026-10-28 04:30:29,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:30:29,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:30:29,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:30:29,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:30:29,790.790 INFO    ] time= 28/10/2026 04:30:29
[2026-10-28 04:30:29,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:30:29,828.828 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:30:29,933.933 INFO    ] No existing commands found in stream
[2026-10-28 04:30:34,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:30:34,957.957 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 04:30:38,302.302 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:30:38,305.305 INFO    ] Checking for system updates...
[2026-10-28 04:30:38,342.342 INFO    ] 200
[2026-10-28 04:30:38,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:30:38,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:30:38,401.401 INFO    ] No update needed
[2026-10-28 04:30:38,404.404 INFO    ] Checking for camera pi updates...
[2026-10-28 04:30:38,438.438 INFO    ] 200
[2026-10-28 04:30:38,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:30:38,486.486 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:30:38,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:30:38,576.576 INFO    ] No camera update needed
[2026-10-28 04:30:38,579.579 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:30:38,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:30:38,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:30:38,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:30:40,636.636 INFO    ] ================================================
[2026-10-28 04:30:40,651.651 INFO    ] Launching Daemon at Wed Oct 28 04:30:40 IST 2026
[2026-10-28 04:30:40,662.662 INFO    ] ================================================
[2026-10-28 04:30:41,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:30:41
[2026-10-28 04:30:41,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:30:42,282.282 INFO    ] Initializing speech engine...
[2026-10-28 04:30:42,295.295 INFO    ] 2026-10-28 04:30:42
[2026-10-28 04:30:42,578.578 INFO    ] 2026-10-28 04:30:42
[2026-10-28 04:30:42,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:30:42,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:30:42,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:30:43,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:30:43,294.294 INFO    ] time= 28/10/2026 04:30:43
[2026-10-28 04:30:43,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:30:43,390.390 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:30:43,507.507 INFO    ] No existing commands found in stream
[2026-10-28 04:30:48,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:30:48,518.518 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-28 04:30:54,005.005 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:30:54,008.008 INFO    ] Checking for system updates...
[2026-10-28 04:30:54,043.043 INFO    ] 200
[2026-10-28 04:30:54,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:30:54,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:30:54,108.108 INFO    ] No update needed
[2026-10-28 04:30:54,110.110 INFO    ] Checking for camera pi updates...
[2026-10-28 04:30:54,144.144 INFO    ] 200
[2026-10-28 04:30:54,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:30:54,186.186 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:30:54,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:30:54,268.268 INFO    ] No camera update needed
[2026-10-28 04:30:54,271.271 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:30:54,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:30:54,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:30:54,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:30:56,326.326 INFO    ] ================================================
[2026-10-28 04:30:56,342.342 INFO    ] Launching Daemon at Wed Oct 28 04:30:56 IST 2026
[2026-10-28 04:30:56,352.352 INFO    ] ================================================
[2026-10-28 04:30:56,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:30:56
[2026-10-28 04:30:57,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:30:57,797.797 INFO    ] Initializing speech engine...
[2026-10-28 04:30:57,820.820 INFO    ] 2026-10-28 04:30:57
[2026-10-28 04:30:58,081.081 INFO    ] 2026-10-28 04:30:58
[2026-10-28 04:30:58,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:30:58,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:30:58,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:30:58,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:30:58,598.598 INFO    ] time= 28/10/2026 04:30:58
[2026-10-28 04:30:58,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:30:58,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:30:58,814.814 INFO    ] No existing commands found in stream
[2026-10-28 04:31:03,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:31:03,828.828 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-28 04:31:06,576.576 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:31:06,578.578 INFO    ] Checking for system updates...
[2026-10-28 04:31:06,615.615 INFO    ] 200
[2026-10-28 04:31:06,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:31:06,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:31:06,683.683 INFO    ] No update needed
[2026-10-28 04:31:06,686.686 INFO    ] Checking for camera pi updates...
[2026-10-28 04:31:06,721.721 INFO    ] 200
[2026-10-28 04:31:06,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:31:06,771.771 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:31:06,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:31:06,872.872 INFO    ] No camera update needed
[2026-10-28 04:31:06,875.875 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:31:06,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:31:06,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:31:06,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:31:08,929.929 INFO    ] ================================================
[2026-10-28 04:31:08,946.946 INFO    ] Launching Daemon at Wed Oct 28 04:31:08 IST 2026
[2026-10-28 04:31:08,957.957 INFO    ] ================================================
[2026-10-28 04:31:09,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:31:09
[2026-10-28 04:31:10,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:31:10,588.588 INFO    ] Initializing speech engine...
[2026-10-28 04:31:10,602.602 INFO    ] 2026-10-28 04:31:10
[2026-10-28 04:31:10,918.918 INFO    ] 2026-10-28 04:31:10
[2026-10-28 04:31:11,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:31:11,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:31:11,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:31:11,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:31:11,425.425 INFO    ] time= 28/10/2026 04:31:11
[2026-10-28 04:31:11,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:31:11,474.474 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:31:11,606.606 INFO    ] No existing commands found in stream
[2026-10-28 04:31:16,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:31:16,641.641 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 04:31:19,927.927 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:31:19,931.931 INFO    ] Checking for system updates...
[2026-10-28 04:31:19,968.968 INFO    ] 200
[2026-10-28 04:31:19,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:31:20,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:31:20,025.025 INFO    ] No update needed
[2026-10-28 04:31:20,027.027 INFO    ] Checking for camera pi updates...
[2026-10-28 04:31:20,065.065 INFO    ] 200
[2026-10-28 04:31:20,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:31:20,113.113 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:31:20,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:31:20,198.198 INFO    ] No camera update needed
[2026-10-28 04:31:20,201.201 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:31:20,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:31:20,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:31:20,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:31:22,253.253 INFO    ] ================================================
[2026-10-28 04:31:22,268.268 INFO    ] Launching Daemon at Wed Oct 28 04:31:22 IST 2026
[2026-10-28 04:31:22,278.278 INFO    ] ================================================
[2026-10-28 04:31:22,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:31:22
[2026-10-28 04:31:23,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:31:23,720.720 INFO    ] Initializing speech engine...
[2026-10-28 04:31:23,729.729 INFO    ] 2026-10-28 04:31:23
[2026-10-28 04:31:24,029.029 INFO    ] 2026-10-28 04:31:23
[2026-10-28 04:31:24,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:31:24,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:31:24,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:31:24,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:31:24,560.560 INFO    ] time= 28/10/2026 04:31:24
[2026-10-28 04:31:24,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:31:24,648.648 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:31:24,752.752 INFO    ] No existing commands found in stream
[2026-10-28 04:31:29,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:31:29,766.766 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 04:31:32,765.765 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:31:32,768.768 INFO    ] Checking for system updates...
[2026-10-28 04:31:32,814.814 INFO    ] 200
[2026-10-28 04:31:32,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:31:32,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:31:32,876.876 INFO    ] No update needed
[2026-10-28 04:31:32,879.879 INFO    ] Checking for camera pi updates...
[2026-10-28 04:31:32,915.915 INFO    ] 200
[2026-10-28 04:31:32,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:31:32,961.961 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:31:33,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:31:33,085.085 INFO    ] No camera update needed
[2026-10-28 04:31:33,088.088 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:31:33,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:31:33,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:31:33,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:31:35,144.144 INFO    ] ================================================
[2026-10-28 04:31:35,160.160 INFO    ] Launching Daemon at Wed Oct 28 04:31:35 IST 2026
[2026-10-28 04:31:35,171.171 INFO    ] ================================================
[2026-10-28 04:31:35,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:31:35
[2026-10-28 04:31:36,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:31:36,845.845 INFO    ] Initializing speech engine...
[2026-10-28 04:31:36,860.860 INFO    ] 2026-10-28 04:31:36
[2026-10-28 04:31:37,176.176 INFO    ] 2026-10-28 04:31:37
[2026-10-28 04:31:37,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:31:37,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:31:37,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:31:37,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:31:37,946.946 INFO    ] time= 28/10/2026 04:31:37
[2026-10-28 04:31:37,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:31:38,038.038 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:31:38,154.154 INFO    ] No existing commands found in stream
[2026-10-28 04:31:43,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:31:43,167.167 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-28 04:31:46,405.405 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:31:46,407.407 INFO    ] Checking for system updates...
[2026-10-28 04:31:46,446.446 INFO    ] 200
[2026-10-28 04:31:46,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:31:46,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:31:46,504.504 INFO    ] No update needed
[2026-10-28 04:31:46,506.506 INFO    ] Checking for camera pi updates...
[2026-10-28 04:31:46,539.539 INFO    ] 200
[2026-10-28 04:31:46,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:31:46,582.582 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:31:46,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:31:46,684.684 INFO    ] No camera update needed
[2026-10-28 04:31:46,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:31:46,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:31:46,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:31:46,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:31:48,739.739 INFO    ] ================================================
[2026-10-28 04:31:48,755.755 INFO    ] Launching Daemon at Wed Oct 28 04:31:48 IST 2026
[2026-10-28 04:31:48,766.766 INFO    ] ================================================
[2026-10-28 04:31:49,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:31:49
[2026-10-28 04:31:49,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:31:50,233.233 INFO    ] Initializing speech engine...
[2026-10-28 04:31:50,242.242 INFO    ] 2026-10-28 04:31:50
[2026-10-28 04:31:50,491.491 INFO    ] 2026-10-28 04:31:50
[2026-10-28 04:31:50,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:31:50,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:31:50,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:31:51,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:31:51,204.204 INFO    ] time= 28/10/2026 04:31:51
[2026-10-28 04:31:51,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:31:51,299.299 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:31:51,455.455 INFO    ] No existing commands found in stream
[2026-10-28 04:31:56,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:31:56,473.473 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-28 04:31:58,821.821 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:31:58,824.824 INFO    ] Checking for system updates...
[2026-10-28 04:31:58,859.859 INFO    ] 200
[2026-10-28 04:31:58,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:31:58,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:31:58,917.917 INFO    ] No update needed
[2026-10-28 04:31:58,919.919 INFO    ] Checking for camera pi updates...
[2026-10-28 04:31:58,952.952 INFO    ] 200
[2026-10-28 04:31:58,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:31:59,001.001 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:31:59,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:31:59,077.077 INFO    ] No camera update needed
[2026-10-28 04:31:59,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:31:59,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:31:59,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:31:59,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:32:01,133.133 INFO    ] ================================================
[2026-10-28 04:32:01,149.149 INFO    ] Launching Daemon at Wed Oct 28 04:32:01 IST 2026
[2026-10-28 04:32:01,160.160 INFO    ] ================================================
[2026-10-28 04:32:01,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:32:01
[2026-10-28 04:32:02,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:32:02,868.868 INFO    ] Initializing speech engine...
[2026-10-28 04:32:02,874.874 INFO    ] 2026-10-28 04:32:02
[2026-10-28 04:32:03,150.150 INFO    ] 2026-10-28 04:32:03
[2026-10-28 04:32:03,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:32:03,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:32:03,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:32:03,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:32:03,829.829 INFO    ] time= 28/10/2026 04:32:03
[2026-10-28 04:32:03,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:32:03,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:32:03,982.982 INFO    ] No existing commands found in stream
[2026-10-28 04:32:09,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:32:09,010.010 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-28 04:32:11,898.898 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:32:11,901.901 INFO    ] Checking for system updates...
[2026-10-28 04:32:11,939.939 INFO    ] 200
[2026-10-28 04:32:11,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:32:12,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:32:12,004.004 INFO    ] No update needed
[2026-10-28 04:32:12,006.006 INFO    ] Checking for camera pi updates...
[2026-10-28 04:32:12,044.044 INFO    ] 200
[2026-10-28 04:32:12,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:32:12,088.088 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:32:12,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:32:12,171.171 INFO    ] No camera update needed
[2026-10-28 04:32:12,174.174 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:32:12,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:32:12,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:32:12,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:32:14,234.234 INFO    ] ================================================
[2026-10-28 04:32:14,249.249 INFO    ] Launching Daemon at Wed Oct 28 04:32:14 IST 2026
[2026-10-28 04:32:14,260.260 INFO    ] ================================================
[2026-10-28 04:32:14,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:32:14
[2026-10-28 04:32:15,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:32:15,669.669 INFO    ] Initializing speech engine...
[2026-10-28 04:32:15,684.684 INFO    ] 2026-10-28 04:32:15
[2026-10-28 04:32:15,964.964 INFO    ] 2026-10-28 04:32:15
[2026-10-28 04:32:16,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:32:16,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:32:16,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:32:16,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:32:16,595.595 INFO    ] time= 28/10/2026 04:32:16
[2026-10-28 04:32:16,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:32:16,642.642 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:32:16,766.766 INFO    ] No existing commands found in stream
[2026-10-28 04:32:21,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:32:21,778.778 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 04:32:23,151.151 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:32:23,154.154 INFO    ] Checking for system updates...
[2026-10-28 04:32:23,189.189 INFO    ] 200
[2026-10-28 04:32:23,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:32:23,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:32:23,252.252 INFO    ] No update needed
[2026-10-28 04:32:23,255.255 INFO    ] Checking for camera pi updates...
[2026-10-28 04:32:23,288.288 INFO    ] 200
[2026-10-28 04:32:23,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:32:23,335.335 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:32:23,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:32:23,528.528 INFO    ] No camera update needed
[2026-10-28 04:32:23,530.530 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:32:23,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:32:23,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:32:23,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:32:25,584.584 INFO    ] ================================================
[2026-10-28 04:32:25,599.599 INFO    ] Launching Daemon at Wed Oct 28 04:32:25 IST 2026
[2026-10-28 04:32:25,610.610 INFO    ] ================================================
[2026-10-28 04:32:26,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:32:26
[2026-10-28 04:32:26,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:32:27,182.182 INFO    ] Initializing speech engine...
[2026-10-28 04:32:27,194.194 INFO    ] 2026-10-28 04:32:27
[2026-10-28 04:32:27,444.444 INFO    ] 2026-10-28 04:32:27
[2026-10-28 04:32:27,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:32:27,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:32:27,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:32:28,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:32:28,055.055 INFO    ] time= 28/10/2026 04:32:28
[2026-10-28 04:32:28,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:32:28,070.070 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:32:28,184.184 INFO    ] No existing commands found in stream
[2026-10-28 04:32:33,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:32:33,217.217 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-28 04:32:36,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:32:36,247.247 INFO    ] Checking for system updates...
[2026-10-28 04:32:36,281.281 INFO    ] 200
[2026-10-28 04:32:36,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:32:36,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:32:36,338.338 INFO    ] No update needed
[2026-10-28 04:32:36,340.340 INFO    ] Checking for camera pi updates...
[2026-10-28 04:32:36,373.373 INFO    ] 200
[2026-10-28 04:32:36,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:32:36,415.415 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:32:36,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:32:36,527.527 INFO    ] No camera update needed
[2026-10-28 04:32:36,529.529 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:32:36,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:32:36,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:32:36,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:32:38,583.583 INFO    ] ================================================
[2026-10-28 04:32:38,598.598 INFO    ] Launching Daemon at Wed Oct 28 04:32:38 IST 2026
[2026-10-28 04:32:38,610.610 INFO    ] ================================================
[2026-10-28 04:32:39,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:32:39
[2026-10-28 04:32:39,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:32:40,073.073 INFO    ] Initializing speech engine...
[2026-10-28 04:32:40,087.087 INFO    ] 2026-10-28 04:32:40
[2026-10-28 04:32:40,376.376 INFO    ] 2026-10-28 04:32:40
[2026-10-28 04:32:40,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:32:40,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:32:40,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:32:40,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:32:41,025.025 INFO    ] time= 28/10/2026 04:32:41
[2026-10-28 04:32:41,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:32:41,050.050 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:32:41,165.165 INFO    ] No existing commands found in stream
[2026-10-28 04:32:46,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:32:46,186.186 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-28 04:32:49,486.486 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:32:49,488.488 INFO    ] Checking for system updates...
[2026-10-28 04:32:49,528.528 INFO    ] 200
[2026-10-28 04:32:49,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:32:49,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:32:49,592.592 INFO    ] No update needed
[2026-10-28 04:32:49,595.595 INFO    ] Checking for camera pi updates...
[2026-10-28 04:32:49,629.629 INFO    ] 200
[2026-10-28 04:32:49,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:32:49,671.671 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:32:49,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:32:49,784.784 INFO    ] No camera update needed
[2026-10-28 04:32:49,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:32:49,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:32:49,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:32:49,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:32:51,839.839 INFO    ] ================================================
[2026-10-28 04:32:51,856.856 INFO    ] Launching Daemon at Wed Oct 28 04:32:51 IST 2026
[2026-10-28 04:32:51,866.866 INFO    ] ================================================
[2026-10-28 04:32:52,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:32:52
[2026-10-28 04:32:53,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:32:53,503.503 INFO    ] Initializing speech engine...
[2026-10-28 04:32:53,511.511 INFO    ] 2026-10-28 04:32:53
[2026-10-28 04:32:53,802.802 INFO    ] 2026-10-28 04:32:53
[2026-10-28 04:32:53,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:32:54,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:32:54,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:32:54,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:32:54,642.642 INFO    ] time= 28/10/2026 04:32:54
[2026-10-28 04:32:54,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:32:54,751.751 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:32:54,904.904 INFO    ] No existing commands found in stream
[2026-10-28 04:32:59,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:32:59,944.944 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-28 04:33:02,647.647 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:33:02,650.650 INFO    ] Checking for system updates...
[2026-10-28 04:33:02,694.694 INFO    ] 200
[2026-10-28 04:33:02,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:33:02,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:33:02,762.762 INFO    ] No update needed
[2026-10-28 04:33:02,766.766 INFO    ] Checking for camera pi updates...
[2026-10-28 04:33:02,817.817 INFO    ] 200
[2026-10-28 04:33:02,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:33:02,882.882 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:33:02,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:33:02,978.978 INFO    ] No camera update needed
[2026-10-28 04:33:02,982.982 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:33:02,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:33:02,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:33:02,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:33:05,039.039 INFO    ] ================================================
[2026-10-28 04:33:05,059.059 INFO    ] Launching Daemon at Wed Oct 28 04:33:05 IST 2026
[2026-10-28 04:33:05,069.069 INFO    ] ================================================
[2026-10-28 04:33:05,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:33:05
[2026-10-28 04:33:06,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:33:06,505.505 INFO    ] Initializing speech engine...
[2026-10-28 04:33:06,514.514 INFO    ] 2026-10-28 04:33:06
[2026-10-28 04:33:06,785.785 INFO    ] 2026-10-28 04:33:06
[2026-10-28 04:33:06,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:33:07,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:33:07,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:33:07,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:33:07,429.429 INFO    ] time= 28/10/2026 04:33:07
[2026-10-28 04:33:07,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:33:07,455.455 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:33:07,570.570 INFO    ] No existing commands found in stream
[2026-10-28 04:33:12,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:33:12,596.596 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-28 04:33:16,700.700 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:33:16,702.702 INFO    ] Checking for system updates...
[2026-10-28 04:33:16,738.738 INFO    ] 200
[2026-10-28 04:33:16,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:33:16,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:33:16,794.794 INFO    ] No update needed
[2026-10-28 04:33:16,797.797 INFO    ] Checking for camera pi updates...
[2026-10-28 04:33:16,830.830 INFO    ] 200
[2026-10-28 04:33:16,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:33:16,873.873 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:33:16,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:33:16,956.956 INFO    ] No camera update needed
[2026-10-28 04:33:16,958.958 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:33:16,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:33:16,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:33:16,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:33:19,013.013 INFO    ] ================================================
[2026-10-28 04:33:19,029.029 INFO    ] Launching Daemon at Wed Oct 28 04:33:19 IST 2026
[2026-10-28 04:33:19,039.039 INFO    ] ================================================
[2026-10-28 04:33:19,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:33:19
[2026-10-28 04:33:20,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:33:20,627.627 INFO    ] Initializing speech engine...
[2026-10-28 04:33:20,636.636 INFO    ] 2026-10-28 04:33:20
[2026-10-28 04:33:20,895.895 INFO    ] 2026-10-28 04:33:20
[2026-10-28 04:33:20,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:33:21,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:33:21,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:33:21,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:33:21,588.588 INFO    ] time= 28/10/2026 04:33:21
[2026-10-28 04:33:21,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:33:21,693.693 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:33:21,834.834 INFO    ] No existing commands found in stream
[2026-10-28 04:33:26,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:33:26,853.853 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 04:33:28,551.551 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:33:28,554.554 INFO    ] Checking for system updates...
[2026-10-28 04:33:28,589.589 INFO    ] 200
[2026-10-28 04:33:28,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:33:28,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:33:28,647.647 INFO    ] No update needed
[2026-10-28 04:33:28,649.649 INFO    ] Checking for camera pi updates...
[2026-10-28 04:33:28,687.687 INFO    ] 200
[2026-10-28 04:33:28,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:33:28,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:33:28,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:33:28,811.811 INFO    ] No camera update needed
[2026-10-28 04:33:28,814.814 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:33:28,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:33:28,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:33:28,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:33:30,869.869 INFO    ] ================================================
[2026-10-28 04:33:30,885.885 INFO    ] Launching Daemon at Wed Oct 28 04:33:30 IST 2026
[2026-10-28 04:33:30,895.895 INFO    ] ================================================
[2026-10-28 04:33:31,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:33:31
[2026-10-28 04:33:32,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:33:32,482.482 INFO    ] Initializing speech engine...
[2026-10-28 04:33:32,494.494 INFO    ] 2026-10-28 04:33:32
[2026-10-28 04:33:32,751.751 INFO    ] 2026-10-28 04:33:32
[2026-10-28 04:33:32,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:33:33,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:33:33,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:33:33,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:33:33,333.333 INFO    ] time= 28/10/2026 04:33:33
[2026-10-28 04:33:33,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:33:33,369.369 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:33:33,442.442 INFO    ] No existing commands found in stream
[2026-10-28 04:33:38,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:33:38,467.467 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-28 04:33:40,977.977 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:33:40,980.980 INFO    ] Checking for system updates...
[2026-10-28 04:33:41,016.016 INFO    ] 200
[2026-10-28 04:33:41,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:33:41,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:33:41,080.080 INFO    ] No update needed
[2026-10-28 04:33:41,082.082 INFO    ] Checking for camera pi updates...
[2026-10-28 04:33:41,117.117 INFO    ] 200
[2026-10-28 04:33:41,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:33:41,160.160 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:33:41,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:33:41,266.266 INFO    ] No camera update needed
[2026-10-28 04:33:41,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:33:41,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:33:41,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:33:41,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:33:43,333.333 INFO    ] ================================================
[2026-10-28 04:33:43,347.347 INFO    ] Launching Daemon at Wed Oct 28 04:33:43 IST 2026
[2026-10-28 04:33:43,358.358 INFO    ] ================================================
[2026-10-28 04:33:43,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:33:43
[2026-10-28 04:33:44,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:33:44,797.797 INFO    ] Initializing speech engine...
[2026-10-28 04:33:44,808.808 INFO    ] 2026-10-28 04:33:44
[2026-10-28 04:33:45,067.067 INFO    ] 2026-10-28 04:33:45
[2026-10-28 04:33:45,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:33:45,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:33:45,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:33:45,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:33:45,856.856 INFO    ] time= 28/10/2026 04:33:45
[2026-10-28 04:33:45,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:33:45,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:33:46,153.153 INFO    ] No existing commands found in stream
[2026-10-28 04:33:51,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:33:51,181.181 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-28 04:33:52,003.003 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:33:52,006.006 INFO    ] Checking for system updates...
[2026-10-28 04:33:52,043.043 INFO    ] 200
[2026-10-28 04:33:52,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:33:52,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:33:52,100.100 INFO    ] No update needed
[2026-10-28 04:33:52,102.102 INFO    ] Checking for camera pi updates...
[2026-10-28 04:33:52,136.136 INFO    ] 200
[2026-10-28 04:33:52,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:33:52,184.184 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:33:52,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:33:52,283.283 INFO    ] No camera update needed
[2026-10-28 04:33:52,285.285 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:33:52,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:33:52,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:33:52,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:33:54,339.339 INFO    ] ================================================
[2026-10-28 04:33:54,353.353 INFO    ] Launching Daemon at Wed Oct 28 04:33:54 IST 2026
[2026-10-28 04:33:54,364.364 INFO    ] ================================================
[2026-10-28 04:33:54,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:33:54
[2026-10-28 04:33:55,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:33:55,782.782 INFO    ] Initializing speech engine...
[2026-10-28 04:33:55,791.791 INFO    ] 2026-10-28 04:33:55
[2026-10-28 04:33:56,039.039 INFO    ] 2026-10-28 04:33:56
[2026-10-28 04:33:56,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:33:56,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:33:56,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:33:56,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:33:56,649.649 INFO    ] time= 28/10/2026 04:33:56
[2026-10-28 04:33:56,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:33:56,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:33:56,786.786 INFO    ] No existing commands found in stream
[2026-10-28 04:34:01,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:34:01,821.821 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-28 04:34:06,322.322 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:34:06,325.325 INFO    ] Checking for system updates...
[2026-10-28 04:34:06,361.361 INFO    ] 200
[2026-10-28 04:34:06,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:34:06,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:34:06,427.427 INFO    ] No update needed
[2026-10-28 04:34:06,429.429 INFO    ] Checking for camera pi updates...
[2026-10-28 04:34:06,467.467 INFO    ] 200
[2026-10-28 04:34:06,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:34:06,516.516 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:34:06,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:34:06,619.619 INFO    ] No camera update needed
[2026-10-28 04:34:06,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:34:06,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:34:06,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:34:06,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:34:08,679.679 INFO    ] ================================================
[2026-10-28 04:34:08,695.695 INFO    ] Launching Daemon at Wed Oct 28 04:34:08 IST 2026
[2026-10-28 04:34:08,705.705 INFO    ] ================================================
[2026-10-28 04:34:09,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:34:09
[2026-10-28 04:34:10,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:34:10,314.314 INFO    ] Initializing speech engine...
[2026-10-28 04:34:10,323.323 INFO    ] 2026-10-28 04:34:10
[2026-10-28 04:34:10,599.599 INFO    ] 2026-10-28 04:34:10
[2026-10-28 04:34:10,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:34:11,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:34:11,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:34:11,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:34:11,428.428 INFO    ] time= 28/10/2026 04:34:11
[2026-10-28 04:34:11,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:34:11,549.549 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:34:11,724.724 INFO    ] No existing commands found in stream
[2026-10-28 04:34:16,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:34:16,753.753 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-28 04:34:19,884.884 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:34:19,887.887 INFO    ] Checking for system updates...
[2026-10-28 04:34:19,926.926 INFO    ] 200
[2026-10-28 04:34:19,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:34:19,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:34:19,985.985 INFO    ] No update needed
[2026-10-28 04:34:19,987.987 INFO    ] Checking for camera pi updates...
[2026-10-28 04:34:20,022.022 INFO    ] 200
[2026-10-28 04:34:20,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:34:20,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:34:20,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:34:20,147.147 INFO    ] No camera update needed
[2026-10-28 04:34:20,150.150 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:34:20,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:34:20,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:34:20,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:34:22,202.202 INFO    ] ================================================
[2026-10-28 04:34:22,217.217 INFO    ] Launching Daemon at Wed Oct 28 04:34:22 IST 2026
[2026-10-28 04:34:22,228.228 INFO    ] ================================================
[2026-10-28 04:34:22,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:34:22
[2026-10-28 04:34:23,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:34:23,766.766 INFO    ] Initializing speech engine...
[2026-10-28 04:34:23,789.789 INFO    ] 2026-10-28 04:34:23
[2026-10-28 04:34:24,057.057 INFO    ] 2026-10-28 04:34:24
[2026-10-28 04:34:24,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:34:24,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:34:24,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:34:24,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:34:24,653.653 INFO    ] time= 28/10/2026 04:34:24
[2026-10-28 04:34:24,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:34:24,668.668 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:34:24,759.759 INFO    ] No existing commands found in stream
[2026-10-28 04:34:29,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:34:29,772.772 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 04:34:33,496.496 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:34:33,499.499 INFO    ] Checking for system updates...
[2026-10-28 04:34:33,534.534 INFO    ] 200
[2026-10-28 04:34:33,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:34:33,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:34:33,591.591 INFO    ] No update needed
[2026-10-28 04:34:33,594.594 INFO    ] Checking for camera pi updates...
[2026-10-28 04:34:33,630.630 INFO    ] 200
[2026-10-28 04:34:33,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:34:33,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:34:33,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:34:33,766.766 INFO    ] No camera update needed
[2026-10-28 04:34:33,769.769 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:34:33,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:34:33,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:34:33,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:34:35,823.823 INFO    ] ================================================
[2026-10-28 04:34:35,837.837 INFO    ] Launching Daemon at Wed Oct 28 04:34:35 IST 2026
[2026-10-28 04:34:35,848.848 INFO    ] ================================================
[2026-10-28 04:34:36,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:34:36
[2026-10-28 04:34:37,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:34:37,285.285 INFO    ] Initializing speech engine...
[2026-10-28 04:34:37,294.294 INFO    ] 2026-10-28 04:34:37
[2026-10-28 04:34:37,544.544 INFO    ] 2026-10-28 04:34:37
[2026-10-28 04:34:37,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:34:37,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:34:37,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:34:38,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:34:38,155.155 INFO    ] time= 28/10/2026 04:34:38
[2026-10-28 04:34:38,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:34:38,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:34:38,349.349 INFO    ] No existing commands found in stream
[2026-10-28 04:34:43,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:34:43,377.377 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 04:34:43,990.990 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:34:43,992.992 INFO    ] Checking for system updates...
[2026-10-28 04:34:44,027.027 INFO    ] 200
[2026-10-28 04:34:44,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:34:44,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:34:44,084.084 INFO    ] No update needed
[2026-10-28 04:34:44,086.086 INFO    ] Checking for camera pi updates...
[2026-10-28 04:34:44,120.120 INFO    ] 200
[2026-10-28 04:34:44,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:34:44,163.163 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:34:44,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:34:44,251.251 INFO    ] No camera update needed
[2026-10-28 04:34:44,253.253 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:34:44,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:34:44,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:34:44,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:34:46,305.305 INFO    ] ================================================
[2026-10-28 04:34:46,320.320 INFO    ] Launching Daemon at Wed Oct 28 04:34:46 IST 2026
[2026-10-28 04:34:46,330.330 INFO    ] ================================================
[2026-10-28 04:34:46,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:34:46
[2026-10-28 04:34:47,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:34:47,807.807 INFO    ] Initializing speech engine...
[2026-10-28 04:34:47,816.816 INFO    ] 2026-10-28 04:34:47
[2026-10-28 04:34:48,080.080 INFO    ] 2026-10-28 04:34:48
[2026-10-28 04:34:48,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:34:48,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:34:48,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:34:48,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:34:48,784.784 INFO    ] time= 28/10/2026 04:34:48
[2026-10-28 04:34:48,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:34:48,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:34:49,027.027 INFO    ] No existing commands found in stream
[2026-10-28 04:34:54,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:34:54,044.044 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-28 04:34:56,964.964 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:34:56,966.966 INFO    ] Checking for system updates...
[2026-10-28 04:34:57,002.002 INFO    ] 200
[2026-10-28 04:34:57,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:34:57,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:34:57,068.068 INFO    ] No update needed
[2026-10-28 04:34:57,071.071 INFO    ] Checking for camera pi updates...
[2026-10-28 04:34:57,107.107 INFO    ] 200
[2026-10-28 04:34:57,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:34:57,150.150 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:34:57,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:34:57,233.233 INFO    ] No camera update needed
[2026-10-28 04:34:57,235.235 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:34:57,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:34:57,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:34:57,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:34:59,288.288 INFO    ] ================================================
[2026-10-28 04:34:59,303.303 INFO    ] Launching Daemon at Wed Oct 28 04:34:59 IST 2026
[2026-10-28 04:34:59,314.314 INFO    ] ================================================
[2026-10-28 04:34:59,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:34:59
[2026-10-28 04:35:00,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:35:00,776.776 INFO    ] Initializing speech engine...
[2026-10-28 04:35:00,787.787 INFO    ] 2026-10-28 04:35:00
[2026-10-28 04:35:01,033.033 INFO    ] 2026-10-28 04:35:01
[2026-10-28 04:35:01,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:35:01,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:35:01,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:35:01,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:35:01,594.594 INFO    ] time= 28/10/2026 04:35:01
[2026-10-28 04:35:01,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:35:01,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:35:01,743.743 INFO    ] No existing commands found in stream
[2026-10-28 04:35:06,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:35:06,760.760 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-28 04:35:10,244.244 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:35:10,246.246 INFO    ] Checking for system updates...
[2026-10-28 04:35:10,289.289 INFO    ] 200
[2026-10-28 04:35:10,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:35:10,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:35:10,356.356 INFO    ] No update needed
[2026-10-28 04:35:10,358.358 INFO    ] Checking for camera pi updates...
[2026-10-28 04:35:10,392.392 INFO    ] 200
[2026-10-28 04:35:10,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:35:10,436.436 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:35:10,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:35:10,524.524 INFO    ] No camera update needed
[2026-10-28 04:35:10,527.527 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:35:10,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:35:10,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:35:10,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:35:12,580.580 INFO    ] ================================================
[2026-10-28 04:35:12,595.595 INFO    ] Launching Daemon at Wed Oct 28 04:35:12 IST 2026
[2026-10-28 04:35:12,606.606 INFO    ] ================================================
[2026-10-28 04:35:13,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:35:13
[2026-10-28 04:35:13,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:35:14,019.019 INFO    ] Initializing speech engine...
[2026-10-28 04:35:14,027.027 INFO    ] 2026-10-28 04:35:14
[2026-10-28 04:35:14,325.325 INFO    ] 2026-10-28 04:35:14
[2026-10-28 04:35:14,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:35:14,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:35:14,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:35:14,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:35:14,970.970 INFO    ] time= 28/10/2026 04:35:14
[2026-10-28 04:35:14,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:35:14,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:35:15,128.128 INFO    ] No existing commands found in stream
[2026-10-28 04:35:20,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:35:20,151.151 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 04:35:22,661.661 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:35:22,664.664 INFO    ] Checking for system updates...
[2026-10-28 04:35:22,701.701 INFO    ] 200
[2026-10-28 04:35:22,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:35:22,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:35:22,767.767 INFO    ] No update needed
[2026-10-28 04:35:22,769.769 INFO    ] Checking for camera pi updates...
[2026-10-28 04:35:22,807.807 INFO    ] 200
[2026-10-28 04:35:22,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:35:22,850.850 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:35:22,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:35:22,911.911 INFO    ] No camera update needed
[2026-10-28 04:35:22,914.914 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:35:22,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:35:22,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:35:22,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:35:24,968.968 INFO    ] ================================================
[2026-10-28 04:35:24,983.983 INFO    ] Launching Daemon at Wed Oct 28 04:35:24 IST 2026
[2026-10-28 04:35:24,994.994 INFO    ] ================================================
[2026-10-28 04:35:25,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:35:25
[2026-10-28 04:35:26,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:35:26,423.423 INFO    ] Initializing speech engine...
[2026-10-28 04:35:26,432.432 INFO    ] 2026-10-28 04:35:26
[2026-10-28 04:35:26,681.681 INFO    ] 2026-10-28 04:35:26
[2026-10-28 04:35:26,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:35:27,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:35:27,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:35:27,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:35:27,302.302 INFO    ] time= 28/10/2026 04:35:27
[2026-10-28 04:35:27,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:35:27,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:35:27,509.509 INFO    ] No existing commands found in stream
[2026-10-28 04:35:32,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:35:32,537.537 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-28 04:35:35,817.817 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:35:35,819.819 INFO    ] Checking for system updates...
[2026-10-28 04:35:35,861.861 INFO    ] 200
[2026-10-28 04:35:35,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:35:35,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:35:35,934.934 INFO    ] No update needed
[2026-10-28 04:35:35,936.936 INFO    ] Checking for camera pi updates...
[2026-10-28 04:35:35,969.969 INFO    ] 200
[2026-10-28 04:35:35,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:35:36,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:35:36,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:35:36,105.105 INFO    ] No camera update needed
[2026-10-28 04:35:36,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:35:36,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:35:36,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:35:36,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:35:38,163.163 INFO    ] ================================================
[2026-10-28 04:35:38,178.178 INFO    ] Launching Daemon at Wed Oct 28 04:35:38 IST 2026
[2026-10-28 04:35:38,189.189 INFO    ] ================================================
[2026-10-28 04:35:38,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:35:38
[2026-10-28 04:35:39,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:35:39,814.814 INFO    ] Initializing speech engine...
[2026-10-28 04:35:39,823.823 INFO    ] 2026-10-28 04:35:39
[2026-10-28 04:35:40,098.098 INFO    ] 2026-10-28 04:35:40
[2026-10-28 04:35:40,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:35:40,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:35:40,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:35:40,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:35:40,665.665 INFO    ] time= 28/10/2026 04:35:40
[2026-10-28 04:35:40,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:35:40,713.713 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:35:40,858.858 INFO    ] No existing commands found in stream
[2026-10-28 04:35:45,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:35:45,897.897 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-28 04:35:48,666.666 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:35:48,669.669 INFO    ] Checking for system updates...
[2026-10-28 04:35:48,706.706 INFO    ] 200
[2026-10-28 04:35:48,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:35:48,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:35:48,765.765 INFO    ] No update needed
[2026-10-28 04:35:48,768.768 INFO    ] Checking for camera pi updates...
[2026-10-28 04:35:48,802.802 INFO    ] 200
[2026-10-28 04:35:48,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:35:48,848.848 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:35:48,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:35:48,934.934 INFO    ] No camera update needed
[2026-10-28 04:35:48,937.937 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:35:48,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:35:48,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:35:48,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:35:50,993.993 INFO    ] ================================================
[2026-10-28 04:35:51,007.007 INFO    ] Launching Daemon at Wed Oct 28 04:35:51 IST 2026
[2026-10-28 04:35:51,018.018 INFO    ] ================================================
[2026-10-28 04:35:51,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:35:51
[2026-10-28 04:35:52,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:35:52,444.444 INFO    ] Initializing speech engine...
[2026-10-28 04:35:52,452.452 INFO    ] 2026-10-28 04:35:52
[2026-10-28 04:35:52,718.718 INFO    ] 2026-10-28 04:35:52
[2026-10-28 04:35:52,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:35:53,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:35:53,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:35:53,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:35:53,270.270 INFO    ] time= 28/10/2026 04:35:53
[2026-10-28 04:35:53,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:35:53,316.316 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:35:53,433.433 INFO    ] No existing commands found in stream
[2026-10-28 04:35:58,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:35:58,458.458 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-28 04:36:01,642.642 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:36:01,645.645 INFO    ] Checking for system updates...
[2026-10-28 04:36:01,689.689 INFO    ] 200
[2026-10-28 04:36:01,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:36:01,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:36:01,760.760 INFO    ] No update needed
[2026-10-28 04:36:01,763.763 INFO    ] Checking for camera pi updates...
[2026-10-28 04:36:01,809.809 INFO    ] 200
[2026-10-28 04:36:01,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:36:01,866.866 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:36:01,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:36:01,929.929 INFO    ] No camera update needed
[2026-10-28 04:36:01,932.932 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:36:01,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:36:01,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:36:01,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:36:03,994.994 INFO    ] ================================================
[2026-10-28 04:36:04,009.009 INFO    ] Launching Daemon at Wed Oct 28 04:36:04 IST 2026
[2026-10-28 04:36:04,019.019 INFO    ] ================================================
[2026-10-28 04:36:04,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:36:04
[2026-10-28 04:36:05,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:36:05,446.446 INFO    ] Initializing speech engine...
[2026-10-28 04:36:05,452.452 INFO    ] 2026-10-28 04:36:05
[2026-10-28 04:36:05,706.706 INFO    ] 2026-10-28 04:36:05
[2026-10-28 04:36:05,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:36:06,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:36:06,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:36:06,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:36:06,296.296 INFO    ] time= 28/10/2026 04:36:06
[2026-10-28 04:36:06,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:36:06,311.311 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:36:06,432.432 INFO    ] No existing commands found in stream
[2026-10-28 04:36:11,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:36:11,466.466 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 04:36:14,661.661 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:36:14,664.664 INFO    ] Checking for system updates...
[2026-10-28 04:36:14,703.703 INFO    ] 200
[2026-10-28 04:36:14,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:36:14,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:36:14,761.761 INFO    ] No update needed
[2026-10-28 04:36:14,764.764 INFO    ] Checking for camera pi updates...
[2026-10-28 04:36:14,802.802 INFO    ] 200
[2026-10-28 04:36:14,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:36:14,850.850 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:36:14,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:36:14,938.938 INFO    ] No camera update needed
[2026-10-28 04:36:14,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:36:14,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:36:14,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:36:14,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:36:17,999.999 INFO    ] ================================================
[2026-10-28 04:36:17,014.014 INFO    ] Launching Daemon at Wed Oct 28 04:36:17 IST 2026
[2026-10-28 04:36:17,025.025 INFO    ] ================================================
[2026-10-28 04:36:17,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:36:17
[2026-10-28 04:36:18,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:36:18,447.447 INFO    ] Initializing speech engine...
[2026-10-28 04:36:18,456.456 INFO    ] 2026-10-28 04:36:18
[2026-10-28 04:36:18,730.730 INFO    ] 2026-10-28 04:36:18
[2026-10-28 04:36:18,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:36:18,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:36:19,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:36:19,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:36:19,298.298 INFO    ] time= 28/10/2026 04:36:19
[2026-10-28 04:36:19,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:36:19,320.320 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:36:19,457.457 INFO    ] No existing commands found in stream
[2026-10-28 04:36:24,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:36:24,475.475 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 04:36:28,802.802 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:36:28,805.805 INFO    ] Checking for system updates...
[2026-10-28 04:36:28,840.840 INFO    ] 200
[2026-10-28 04:36:28,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:36:28,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:36:28,897.897 INFO    ] No update needed
[2026-10-28 04:36:28,899.899 INFO    ] Checking for camera pi updates...
[2026-10-28 04:36:28,933.933 INFO    ] 200
[2026-10-28 04:36:28,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:36:28,976.976 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:36:29,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:36:29,068.068 INFO    ] No camera update needed
[2026-10-28 04:36:29,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:36:29,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:36:29,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:36:29,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:36:31,127.127 INFO    ] ================================================
[2026-10-28 04:36:31,144.144 INFO    ] Launching Daemon at Wed Oct 28 04:36:31 IST 2026
[2026-10-28 04:36:31,156.156 INFO    ] ================================================
[2026-10-28 04:36:31,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:36:31
[2026-10-28 04:36:32,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:36:32,699.699 INFO    ] Initializing speech engine...
[2026-10-28 04:36:32,713.713 INFO    ] 2026-10-28 04:36:32
[2026-10-28 04:36:33,025.025 INFO    ] 2026-10-28 04:36:32
[2026-10-28 04:36:33,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:36:33,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:36:33,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:36:33,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:36:33,558.558 INFO    ] time= 28/10/2026 04:36:33
[2026-10-28 04:36:33,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:36:33,597.597 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:36:33,698.698 INFO    ] No existing commands found in stream
[2026-10-28 04:36:38,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:36:38,731.731 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-28 04:36:39,811.811 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:36:39,814.814 INFO    ] Checking for system updates...
[2026-10-28 04:36:39,851.851 INFO    ] 200
[2026-10-28 04:36:39,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:36:39,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:36:39,918.918 INFO    ] No update needed
[2026-10-28 04:36:39,920.920 INFO    ] Checking for camera pi updates...
[2026-10-28 04:36:39,958.958 INFO    ] 200
[2026-10-28 04:36:39,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:36:40,006.006 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:36:40,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:36:40,167.167 INFO    ] No camera update needed
[2026-10-28 04:36:40,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:36:40,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:36:40,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:36:40,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:36:42,222.222 INFO    ] ================================================
[2026-10-28 04:36:42,238.238 INFO    ] Launching Daemon at Wed Oct 28 04:36:42 IST 2026
[2026-10-28 04:36:42,250.250 INFO    ] ================================================
[2026-10-28 04:36:42,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:36:42
[2026-10-28 04:36:43,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:36:43,901.901 INFO    ] Initializing speech engine...
[2026-10-28 04:36:43,914.914 INFO    ] 2026-10-28 04:36:43
[2026-10-28 04:36:44,195.195 INFO    ] 2026-10-28 04:36:44
[2026-10-28 04:36:44,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:36:44,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:36:44,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:36:44,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:36:44,905.905 INFO    ] time= 28/10/2026 04:36:44
[2026-10-28 04:36:44,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:36:44,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:36:45,134.134 INFO    ] No existing commands found in stream
[2026-10-28 04:36:50,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:36:50,152.152 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 04:36:53,749.749 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:36:53,752.752 INFO    ] Checking for system updates...
[2026-10-28 04:36:53,796.796 INFO    ] 200
[2026-10-28 04:36:53,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:36:53,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:36:53,867.867 INFO    ] No update needed
[2026-10-28 04:36:53,870.870 INFO    ] Checking for camera pi updates...
[2026-10-28 04:36:53,907.907 INFO    ] 200
[2026-10-28 04:36:53,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:36:53,956.956 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:36:54,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:36:54,061.061 INFO    ] No camera update needed
[2026-10-28 04:36:54,063.063 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:36:54,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:36:54,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:36:54,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:36:56,122.122 INFO    ] ================================================
[2026-10-28 04:36:56,137.137 INFO    ] Launching Daemon at Wed Oct 28 04:36:56 IST 2026
[2026-10-28 04:36:56,147.147 INFO    ] ================================================
[2026-10-28 04:36:56,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:36:56
[2026-10-28 04:36:57,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:36:57,607.607 INFO    ] Initializing speech engine...
[2026-10-28 04:36:57,616.616 INFO    ] 2026-10-28 04:36:57
[2026-10-28 04:36:57,865.865 INFO    ] 2026-10-28 04:36:57
[2026-10-28 04:36:57,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:36:58,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:36:58,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:36:58,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:36:58,434.434 INFO    ] time= 28/10/2026 04:36:58
[2026-10-28 04:36:58,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:36:58,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:36:58,574.574 INFO    ] No existing commands found in stream
[2026-10-28 04:37:03,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:37:03,604.604 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 04:37:05,067.067 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:37:05,070.070 INFO    ] Checking for system updates...
[2026-10-28 04:37:05,106.106 INFO    ] 200
[2026-10-28 04:37:05,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:37:05,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:37:05,163.163 INFO    ] No update needed
[2026-10-28 04:37:05,165.165 INFO    ] Checking for camera pi updates...
[2026-10-28 04:37:05,199.199 INFO    ] 200
[2026-10-28 04:37:05,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:37:05,245.245 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:37:05,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:37:05,298.298 INFO    ] No camera update needed
[2026-10-28 04:37:05,300.300 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:37:05,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:37:05,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:37:05,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:37:07,355.355 INFO    ] ================================================
[2026-10-28 04:37:07,371.371 INFO    ] Launching Daemon at Wed Oct 28 04:37:07 IST 2026
[2026-10-28 04:37:07,381.381 INFO    ] ================================================
[2026-10-28 04:37:07,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:37:07
[2026-10-28 04:37:08,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:37:08,832.832 INFO    ] Initializing speech engine...
[2026-10-28 04:37:08,841.841 INFO    ] 2026-10-28 04:37:08
[2026-10-28 04:37:09,090.090 INFO    ] 2026-10-28 04:37:09
[2026-10-28 04:37:09,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:37:09,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:37:09,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:37:09,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:37:09,808.808 INFO    ] time= 28/10/2026 04:37:09
[2026-10-28 04:37:09,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:37:09,899.899 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:37:10,051.051 INFO    ] No existing commands found in stream
[2026-10-28 04:37:15,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:37:15,075.075 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 04:37:15,649.649 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:37:15,651.651 INFO    ] Checking for system updates...
[2026-10-28 04:37:15,691.691 INFO    ] 200
[2026-10-28 04:37:15,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:37:15,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:37:15,753.753 INFO    ] No update needed
[2026-10-28 04:37:15,756.756 INFO    ] Checking for camera pi updates...
[2026-10-28 04:37:15,792.792 INFO    ] 200
[2026-10-28 04:37:15,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:37:15,836.836 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:37:15,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:37:15,920.920 INFO    ] No camera update needed
[2026-10-28 04:37:15,922.922 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:37:15,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:37:15,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:37:15,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:37:17,983.983 INFO    ] ================================================
[2026-10-28 04:37:18,999.999 INFO    ] Launching Daemon at Wed Oct 28 04:37:17 IST 2026
[2026-10-28 04:37:18,010.010 INFO    ] ================================================
[2026-10-28 04:37:18,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:37:18
[2026-10-28 04:37:19,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:37:19,582.582 INFO    ] Initializing speech engine...
[2026-10-28 04:37:19,589.589 INFO    ] 2026-10-28 04:37:19
[2026-10-28 04:37:19,859.859 INFO    ] 2026-10-28 04:37:19
[2026-10-28 04:37:19,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:37:20,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:37:20,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:37:20,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:37:20,585.585 INFO    ] time= 28/10/2026 04:37:20
[2026-10-28 04:37:20,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:37:20,698.698 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:37:20,846.846 INFO    ] No existing commands found in stream
[2026-10-28 04:37:25,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:37:25,865.865 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 04:37:26,975.975 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:37:26,979.979 INFO    ] Checking for system updates...
[2026-10-28 04:37:27,018.018 INFO    ] 200
[2026-10-28 04:37:27,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:37:27,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:37:27,079.079 INFO    ] No update needed
[2026-10-28 04:37:27,081.081 INFO    ] Checking for camera pi updates...
[2026-10-28 04:37:27,118.118 INFO    ] 200
[2026-10-28 04:37:27,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:37:27,162.162 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:37:27,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:37:27,260.260 INFO    ] No camera update needed
[2026-10-28 04:37:27,263.263 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:37:27,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:37:27,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:37:27,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:37:29,318.318 INFO    ] ================================================
[2026-10-28 04:37:29,333.333 INFO    ] Launching Daemon at Wed Oct 28 04:37:29 IST 2026
[2026-10-28 04:37:29,344.344 INFO    ] ================================================
[2026-10-28 04:37:29,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:37:29
[2026-10-28 04:37:30,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:37:30,765.765 INFO    ] Initializing speech engine...
[2026-10-28 04:37:30,774.774 INFO    ] 2026-10-28 04:37:30
[2026-10-28 04:37:31,023.023 INFO    ] 2026-10-28 04:37:31
[2026-10-28 04:37:31,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:37:31,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:37:31,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:37:31,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:37:31,557.557 INFO    ] time= 28/10/2026 04:37:31
[2026-10-28 04:37:31,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:37:31,645.645 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:37:31,764.764 INFO    ] No existing commands found in stream
[2026-10-28 04:37:36,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:37:36,789.789 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-28 04:37:38,622.622 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:37:38,625.625 INFO    ] Checking for system updates...
[2026-10-28 04:37:38,660.660 INFO    ] 200
[2026-10-28 04:37:38,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:37:38,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:37:38,717.717 INFO    ] No update needed
[2026-10-28 04:37:38,719.719 INFO    ] Checking for camera pi updates...
[2026-10-28 04:37:38,752.752 INFO    ] 200
[2026-10-28 04:37:38,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:37:38,799.799 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:37:38,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:37:38,885.885 INFO    ] No camera update needed
[2026-10-28 04:37:38,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:37:38,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:37:38,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:37:38,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:37:40,941.941 INFO    ] ================================================
[2026-10-28 04:37:40,957.957 INFO    ] Launching Daemon at Wed Oct 28 04:37:40 IST 2026
[2026-10-28 04:37:40,968.968 INFO    ] ================================================
[2026-10-28 04:37:41,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:37:41
[2026-10-28 04:37:42,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:37:42,375.375 INFO    ] Initializing speech engine...
[2026-10-28 04:37:42,383.383 INFO    ] 2026-10-28 04:37:42
[2026-10-28 04:37:42,674.674 INFO    ] 2026-10-28 04:37:42
[2026-10-28 04:37:42,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:37:42,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:37:42,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:37:43,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:37:43,194.194 INFO    ] time= 28/10/2026 04:37:43
[2026-10-28 04:37:43,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:37:43,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:37:43,419.419 INFO    ] No existing commands found in stream
[2026-10-28 04:37:48,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:37:48,439.439 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-28 04:37:50,520.520 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:37:50,523.523 INFO    ] Checking for system updates...
[2026-10-28 04:37:50,558.558 INFO    ] 200
[2026-10-28 04:37:50,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:37:50,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:37:50,620.620 INFO    ] No update needed
[2026-10-28 04:37:50,623.623 INFO    ] Checking for camera pi updates...
[2026-10-28 04:37:50,659.659 INFO    ] 200
[2026-10-28 04:37:50,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:37:50,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:37:50,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:37:50,786.786 INFO    ] No camera update needed
[2026-10-28 04:37:50,788.788 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:37:50,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:37:50,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:37:50,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:37:52,841.841 INFO    ] ================================================
[2026-10-28 04:37:52,857.857 INFO    ] Launching Daemon at Wed Oct 28 04:37:52 IST 2026
[2026-10-28 04:37:52,867.867 INFO    ] ================================================
[2026-10-28 04:37:53,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:37:53
[2026-10-28 04:37:54,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:37:54,292.292 INFO    ] Initializing speech engine...
[2026-10-28 04:37:54,302.302 INFO    ] 2026-10-28 04:37:54
[2026-10-28 04:37:54,554.554 INFO    ] 2026-10-28 04:37:54
[2026-10-28 04:37:54,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:37:54,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:37:54,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:37:55,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:37:55,103.103 INFO    ] time= 28/10/2026 04:37:55
[2026-10-28 04:37:55,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:37:55,127.127 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:37:55,230.230 INFO    ] No existing commands found in stream
[2026-10-28 04:38:00,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:38:00,243.243 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-28 04:38:02,062.062 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:38:02,066.066 INFO    ] Checking for system updates...
[2026-10-28 04:38:02,107.107 INFO    ] 200
[2026-10-28 04:38:02,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:38:02,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:38:02,190.190 INFO    ] No update needed
[2026-10-28 04:38:02,195.195 INFO    ] Checking for camera pi updates...
[2026-10-28 04:38:02,237.237 INFO    ] 200
[2026-10-28 04:38:02,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:38:02,294.294 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:38:02,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:38:02,451.451 INFO    ] No camera update needed
[2026-10-28 04:38:02,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:38:02,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:38:02,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:38:02,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:38:04,512.512 INFO    ] ================================================
[2026-10-28 04:38:04,528.528 INFO    ] Launching Daemon at Wed Oct 28 04:38:04 IST 2026
[2026-10-28 04:38:04,539.539 INFO    ] ================================================
[2026-10-28 04:38:05,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:38:05
[2026-10-28 04:38:05,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:38:05,946.946 INFO    ] Initializing speech engine...
[2026-10-28 04:38:05,954.954 INFO    ] 2026-10-28 04:38:05
[2026-10-28 04:38:06,244.244 INFO    ] 2026-10-28 04:38:06
[2026-10-28 04:38:06,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:38:06,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:38:06,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:38:06,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:38:06,844.844 INFO    ] time= 28/10/2026 04:38:06
[2026-10-28 04:38:06,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:38:06,885.885 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:38:07,015.015 INFO    ] No existing commands found in stream
[2026-10-28 04:38:12,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:38:12,044.044 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 04:38:14,039.039 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:38:14,042.042 INFO    ] Checking for system updates...
[2026-10-28 04:38:14,077.077 INFO    ] 200
[2026-10-28 04:38:14,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:38:14,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:38:14,139.139 INFO    ] No update needed
[2026-10-28 04:38:14,142.142 INFO    ] Checking for camera pi updates...
[2026-10-28 04:38:14,175.175 INFO    ] 200
[2026-10-28 04:38:14,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:38:14,221.221 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:38:14,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:38:14,302.302 INFO    ] No camera update needed
[2026-10-28 04:38:14,306.306 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:38:14,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:38:14,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:38:14,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:38:16,361.361 INFO    ] ================================================
[2026-10-28 04:38:16,376.376 INFO    ] Launching Daemon at Wed Oct 28 04:38:16 IST 2026
[2026-10-28 04:38:16,387.387 INFO    ] ================================================
[2026-10-28 04:38:17,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:38:17
[2026-10-28 04:38:17,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:38:17,962.962 INFO    ] Initializing speech engine...
[2026-10-28 04:38:17,971.971 INFO    ] 2026-10-28 04:38:17
[2026-10-28 04:38:18,243.243 INFO    ] 2026-10-28 04:38:18
[2026-10-28 04:38:18,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:38:18,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:38:18,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:38:18,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:38:18,790.790 INFO    ] time= 28/10/2026 04:38:18
[2026-10-28 04:38:18,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:38:18,815.815 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:38:18,955.955 INFO    ] No existing commands found in stream
[2026-10-28 04:38:23,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:38:23,983.983 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-28 04:38:25,943.943 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:38:25,946.946 INFO    ] Checking for system updates...
[2026-10-28 04:38:25,983.983 INFO    ] 200
[2026-10-28 04:38:25,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:38:26,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:38:26,041.041 INFO    ] No update needed
[2026-10-28 04:38:26,044.044 INFO    ] Checking for camera pi updates...
[2026-10-28 04:38:26,078.078 INFO    ] 200
[2026-10-28 04:38:26,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:38:26,122.122 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:38:26,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:38:26,209.209 INFO    ] No camera update needed
[2026-10-28 04:38:26,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:38:26,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:38:26,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:38:26,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:38:28,266.266 INFO    ] ================================================
[2026-10-28 04:38:28,281.281 INFO    ] Launching Daemon at Wed Oct 28 04:38:28 IST 2026
[2026-10-28 04:38:28,292.292 INFO    ] ================================================
[2026-10-28 04:38:28,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:38:28
[2026-10-28 04:38:29,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:38:29,834.834 INFO    ] Initializing speech engine...
[2026-10-28 04:38:29,843.843 INFO    ] 2026-10-28 04:38:29
[2026-10-28 04:38:30,112.112 INFO    ] 2026-10-28 04:38:30
[2026-10-28 04:38:30,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:38:30,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:38:30,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:38:30,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:38:30,662.662 INFO    ] time= 28/10/2026 04:38:30
[2026-10-28 04:38:30,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:38:30,709.709 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:38:30,830.830 INFO    ] No existing commands found in stream
[2026-10-28 04:38:35,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:38:35,859.859 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 04:38:40,483.483 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:38:40,486.486 INFO    ] Checking for system updates...
[2026-10-28 04:38:40,522.522 INFO    ] 200
[2026-10-28 04:38:40,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:38:40,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:38:40,586.586 INFO    ] No update needed
[2026-10-28 04:38:40,589.589 INFO    ] Checking for camera pi updates...
[2026-10-28 04:38:40,623.623 INFO    ] 200
[2026-10-28 04:38:40,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:38:40,667.667 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:38:40,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:38:40,751.751 INFO    ] No camera update needed
[2026-10-28 04:38:40,753.753 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:38:40,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:38:40,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:38:40,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:38:42,808.808 INFO    ] ================================================
[2026-10-28 04:38:42,823.823 INFO    ] Launching Daemon at Wed Oct 28 04:38:42 IST 2026
[2026-10-28 04:38:42,834.834 INFO    ] ================================================
[2026-10-28 04:38:43,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:38:43
[2026-10-28 04:38:44,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:38:44,379.379 INFO    ] Initializing speech engine...
[2026-10-28 04:38:44,389.389 INFO    ] 2026-10-28 04:38:44
[2026-10-28 04:38:44,664.664 INFO    ] 2026-10-28 04:38:44
[2026-10-28 04:38:44,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:38:45,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:38:45,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:38:45,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:38:45,208.208 INFO    ] time= 28/10/2026 04:38:45
[2026-10-28 04:38:45,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:38:45,255.255 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:38:45,385.385 INFO    ] No existing commands found in stream
[2026-10-28 04:38:50,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:38:50,414.414 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 04:38:51,023.023 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:38:51,026.026 INFO    ] Checking for system updates...
[2026-10-28 04:38:51,062.062 INFO    ] 200
[2026-10-28 04:38:51,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:38:51,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:38:51,120.120 INFO    ] No update needed
[2026-10-28 04:38:51,123.123 INFO    ] Checking for camera pi updates...
[2026-10-28 04:38:51,159.159 INFO    ] 200
[2026-10-28 04:38:51,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:38:51,203.203 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:38:51,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:38:51,384.384 INFO    ] No camera update needed
[2026-10-28 04:38:51,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:38:51,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:38:51,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:38:51,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:38:53,442.442 INFO    ] ================================================
[2026-10-28 04:38:53,457.457 INFO    ] Launching Daemon at Wed Oct 28 04:38:53 IST 2026
[2026-10-28 04:38:53,467.467 INFO    ] ================================================
[2026-10-28 04:38:54,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:38:54
[2026-10-28 04:38:54,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:38:54,901.901 INFO    ] Initializing speech engine...
[2026-10-28 04:38:54,925.925 INFO    ] 2026-10-28 04:38:54
[2026-10-28 04:38:55,191.191 INFO    ] 2026-10-28 04:38:55
[2026-10-28 04:38:55,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:38:55,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:38:55,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:38:55,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:38:55,798.798 INFO    ] time= 28/10/2026 04:38:55
[2026-10-28 04:38:55,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:38:55,823.823 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:38:55,930.930 INFO    ] No existing commands found in stream
[2026-10-28 04:39:00,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:39:00,956.956 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-28 04:39:04,174.174 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:39:04,177.177 INFO    ] Checking for system updates...
[2026-10-28 04:39:04,214.214 INFO    ] 200
[2026-10-28 04:39:04,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:39:04,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:39:04,276.276 INFO    ] No update needed
[2026-10-28 04:39:04,278.278 INFO    ] Checking for camera pi updates...
[2026-10-28 04:39:04,311.311 INFO    ] 200
[2026-10-28 04:39:04,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:39:04,354.354 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:39:04,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:39:04,440.440 INFO    ] No camera update needed
[2026-10-28 04:39:04,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:39:04,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:39:04,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:39:04,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:39:06,498.498 INFO    ] ================================================
[2026-10-28 04:39:06,513.513 INFO    ] Launching Daemon at Wed Oct 28 04:39:06 IST 2026
[2026-10-28 04:39:06,523.523 INFO    ] ================================================
[2026-10-28 04:39:07,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:39:07
[2026-10-28 04:39:07,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:39:07,927.927 INFO    ] Initializing speech engine...
[2026-10-28 04:39:07,932.932 INFO    ] 2026-10-28 04:39:07
[2026-10-28 04:39:08,226.226 INFO    ] 2026-10-28 04:39:08
[2026-10-28 04:39:08,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:39:08,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:39:08,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:39:08,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:39:08,706.706 INFO    ] time= 28/10/2026 04:39:08
[2026-10-28 04:39:08,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:39:08,794.794 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:39:08,902.902 INFO    ] No existing commands found in stream
[2026-10-28 04:39:13,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:39:13,916.916 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 04:39:15,621.621 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:39:15,623.623 INFO    ] Checking for system updates...
[2026-10-28 04:39:15,663.663 INFO    ] 200
[2026-10-28 04:39:15,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:39:15,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:39:15,722.722 INFO    ] No update needed
[2026-10-28 04:39:15,725.725 INFO    ] Checking for camera pi updates...
[2026-10-28 04:39:15,759.759 INFO    ] 200
[2026-10-28 04:39:15,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:39:15,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:39:15,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:39:15,885.885 INFO    ] No camera update needed
[2026-10-28 04:39:15,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:39:15,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:39:15,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:39:15,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:39:17,939.939 INFO    ] ================================================
[2026-10-28 04:39:17,954.954 INFO    ] Launching Daemon at Wed Oct 28 04:39:17 IST 2026
[2026-10-28 04:39:17,965.965 INFO    ] ================================================
[2026-10-28 04:39:18,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:39:18
[2026-10-28 04:39:19,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:39:19,381.381 INFO    ] Initializing speech engine...
[2026-10-28 04:39:19,390.390 INFO    ] 2026-10-28 04:39:19
[2026-10-28 04:39:19,642.642 INFO    ] 2026-10-28 04:39:19
[2026-10-28 04:39:19,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:39:19,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:39:19,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:39:20,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:39:20,146.146 INFO    ] time= 28/10/2026 04:39:20
[2026-10-28 04:39:20,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:39:20,237.237 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:39:20,366.366 INFO    ] No existing commands found in stream
[2026-10-28 04:39:25,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:39:25,391.391 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-28 04:39:28,344.344 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:39:28,347.347 INFO    ] Checking for system updates...
[2026-10-28 04:39:28,382.382 INFO    ] 200
[2026-10-28 04:39:28,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:39:28,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:39:28,444.444 INFO    ] No update needed
[2026-10-28 04:39:28,447.447 INFO    ] Checking for camera pi updates...
[2026-10-28 04:39:28,480.480 INFO    ] 200
[2026-10-28 04:39:28,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:39:28,523.523 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:39:28,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:39:28,608.608 INFO    ] No camera update needed
[2026-10-28 04:39:28,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:39:28,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:39:28,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:39:28,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:39:30,665.665 INFO    ] ================================================
[2026-10-28 04:39:30,680.680 INFO    ] Launching Daemon at Wed Oct 28 04:39:30 IST 2026
[2026-10-28 04:39:30,691.691 INFO    ] ================================================
[2026-10-28 04:39:31,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:39:31
[2026-10-28 04:39:31,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:39:32,189.189 INFO    ] Initializing speech engine...
[2026-10-28 04:39:32,194.194 INFO    ] 2026-10-28 04:39:32
[2026-10-28 04:39:32,459.459 INFO    ] 2026-10-28 04:39:32
[2026-10-28 04:39:32,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:39:32,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:39:32,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:39:33,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:39:33,033.033 INFO    ] time= 28/10/2026 04:39:33
[2026-10-28 04:39:33,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:39:33,068.068 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:39:33,209.209 INFO    ] No existing commands found in stream
[2026-10-28 04:39:38,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:39:38,237.237 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-28 04:39:39,175.175 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:39:39,177.177 INFO    ] Checking for system updates...
[2026-10-28 04:39:39,216.216 INFO    ] 200
[2026-10-28 04:39:39,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:39:39,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:39:39,272.272 INFO    ] No update needed
[2026-10-28 04:39:39,274.274 INFO    ] Checking for camera pi updates...
[2026-10-28 04:39:39,308.308 INFO    ] 200
[2026-10-28 04:39:39,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:39:39,354.354 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:39:39,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:39:39,428.428 INFO    ] No camera update needed
[2026-10-28 04:39:39,431.431 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:39:39,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:39:39,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:39:39,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:39:41,487.487 INFO    ] ================================================
[2026-10-28 04:39:41,503.503 INFO    ] Launching Daemon at Wed Oct 28 04:39:41 IST 2026
[2026-10-28 04:39:41,514.514 INFO    ] ================================================
[2026-10-28 04:39:42,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:39:42
[2026-10-28 04:39:42,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:39:42,944.944 INFO    ] Initializing speech engine...
[2026-10-28 04:39:42,953.953 INFO    ] 2026-10-28 04:39:42
[2026-10-28 04:39:43,198.198 INFO    ] 2026-10-28 04:39:43
[2026-10-28 04:39:43,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:39:43,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:39:43,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:39:43,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:39:43,696.696 INFO    ] time= 28/10/2026 04:39:43
[2026-10-28 04:39:43,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:39:43,759.759 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:39:43,906.906 INFO    ] No existing commands found in stream
[2026-10-28 04:39:48,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:39:48,928.928 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-28 04:39:53,239.239 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:39:53,241.241 INFO    ] Checking for system updates...
[2026-10-28 04:39:53,276.276 INFO    ] 200
[2026-10-28 04:39:53,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:39:53,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:39:53,333.333 INFO    ] No update needed
[2026-10-28 04:39:53,336.336 INFO    ] Checking for camera pi updates...
[2026-10-28 04:39:53,372.372 INFO    ] 200
[2026-10-28 04:39:53,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:39:53,414.414 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:39:53,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:39:53,497.497 INFO    ] No camera update needed
[2026-10-28 04:39:53,499.499 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:39:53,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:39:53,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:39:53,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:39:55,560.560 INFO    ] ================================================
[2026-10-28 04:39:55,575.575 INFO    ] Launching Daemon at Wed Oct 28 04:39:55 IST 2026
[2026-10-28 04:39:55,585.585 INFO    ] ================================================
[2026-10-28 04:39:56,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:39:56
[2026-10-28 04:39:56,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:39:57,013.013 INFO    ] Initializing speech engine...
[2026-10-28 04:39:57,021.021 INFO    ] 2026-10-28 04:39:57
[2026-10-28 04:39:57,280.280 INFO    ] 2026-10-28 04:39:57
[2026-10-28 04:39:57,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:39:57,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:39:57,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:39:57,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:39:57,836.836 INFO    ] time= 28/10/2026 04:39:57
[2026-10-28 04:39:57,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:39:57,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:39:57,982.982 INFO    ] No existing commands found in stream
[2026-10-28 04:40:03,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:40:03,010.010 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-28 04:40:08,200.200 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:40:08,204.204 INFO    ] Checking for system updates...
[2026-10-28 04:40:08,245.245 INFO    ] 200
[2026-10-28 04:40:08,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:40:08,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:40:08,303.303 INFO    ] No update needed
[2026-10-28 04:40:08,306.306 INFO    ] Checking for camera pi updates...
[2026-10-28 04:40:08,341.341 INFO    ] 200
[2026-10-28 04:40:08,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:40:08,386.386 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:40:08,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:40:08,469.469 INFO    ] No camera update needed
[2026-10-28 04:40:08,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:40:08,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:40:08,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:40:08,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:40:10,527.527 INFO    ] ================================================
[2026-10-28 04:40:10,542.542 INFO    ] Launching Daemon at Wed Oct 28 04:40:10 IST 2026
[2026-10-28 04:40:10,552.552 INFO    ] ================================================
[2026-10-28 04:40:11,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:40:11
[2026-10-28 04:40:11,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:40:11,998.998 INFO    ] Initializing speech engine...
[2026-10-28 04:40:12,008.008 INFO    ] 2026-10-28 04:40:12
[2026-10-28 04:40:12,306.306 INFO    ] 2026-10-28 04:40:12
[2026-10-28 04:40:12,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:40:12,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:40:12,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:40:12,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:40:12,876.876 INFO    ] time= 28/10/2026 04:40:12
[2026-10-28 04:40:12,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:40:12,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:40:13,081.081 INFO    ] No existing commands found in stream
[2026-10-28 04:40:18,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:40:18,115.115 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 04:40:22,028.028 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:40:22,031.031 INFO    ] Checking for system updates...
[2026-10-28 04:40:22,072.072 INFO    ] 200
[2026-10-28 04:40:22,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:40:22,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:40:22,138.138 INFO    ] No update needed
[2026-10-28 04:40:22,140.140 INFO    ] Checking for camera pi updates...
[2026-10-28 04:40:22,174.174 INFO    ] 200
[2026-10-28 04:40:22,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:40:22,220.220 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:40:22,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:40:22,325.325 INFO    ] No camera update needed
[2026-10-28 04:40:22,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:40:22,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:40:22,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:40:22,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:40:24,380.380 INFO    ] ================================================
[2026-10-28 04:40:24,395.395 INFO    ] Launching Daemon at Wed Oct 28 04:40:24 IST 2026
[2026-10-28 04:40:24,406.406 INFO    ] ================================================
[2026-10-28 04:40:25,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:40:25
[2026-10-28 04:40:25,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:40:26,018.018 INFO    ] Initializing speech engine...
[2026-10-28 04:40:26,024.024 INFO    ] 2026-10-28 04:40:26
[2026-10-28 04:40:26,344.344 INFO    ] 2026-10-28 04:40:26
[2026-10-28 04:40:26,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:40:26,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:40:26,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:40:26,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:40:26,881.881 INFO    ] time= 28/10/2026 04:40:26
[2026-10-28 04:40:26,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:40:26,918.918 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:40:27,034.034 INFO    ] No existing commands found in stream
[2026-10-28 04:40:32,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:40:32,074.074 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 04:40:36,579.579 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:40:36,582.582 INFO    ] Checking for system updates...
[2026-10-28 04:40:36,619.619 INFO    ] 200
[2026-10-28 04:40:36,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:40:36,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:40:36,678.678 INFO    ] No update needed
[2026-10-28 04:40:36,681.681 INFO    ] Checking for camera pi updates...
[2026-10-28 04:40:36,715.715 INFO    ] 200
[2026-10-28 04:40:36,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:40:36,758.758 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:40:36,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:40:36,845.845 INFO    ] No camera update needed
[2026-10-28 04:40:36,848.848 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:40:36,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:40:36,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:40:36,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:40:38,900.900 INFO    ] ================================================
[2026-10-28 04:40:38,916.916 INFO    ] Launching Daemon at Wed Oct 28 04:40:38 IST 2026
[2026-10-28 04:40:38,926.926 INFO    ] ================================================
[2026-10-28 04:40:39,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:40:39
[2026-10-28 04:40:40,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:40:40,389.389 INFO    ] Initializing speech engine...
[2026-10-28 04:40:40,398.398 INFO    ] 2026-10-28 04:40:40
[2026-10-28 04:40:40,661.661 INFO    ] 2026-10-28 04:40:40
[2026-10-28 04:40:40,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:40:40,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:40:41,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:40:41,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:40:41,218.218 INFO    ] time= 28/10/2026 04:40:41
[2026-10-28 04:40:41,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:40:41,254.254 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:40:41,358.358 INFO    ] No existing commands found in stream
[2026-10-28 04:40:46,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:40:46,390.390 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 04:40:48,058.058 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:40:48,060.060 INFO    ] Checking for system updates...
[2026-10-28 04:40:48,096.096 INFO    ] 200
[2026-10-28 04:40:48,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:40:48,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:40:48,153.153 INFO    ] No update needed
[2026-10-28 04:40:48,156.156 INFO    ] Checking for camera pi updates...
[2026-10-28 04:40:48,189.189 INFO    ] 200
[2026-10-28 04:40:48,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:40:48,234.234 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:40:48,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:40:48,318.318 INFO    ] No camera update needed
[2026-10-28 04:40:48,321.321 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:40:48,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:40:48,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:40:48,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:40:50,376.376 INFO    ] ================================================
[2026-10-28 04:40:50,391.391 INFO    ] Launching Daemon at Wed Oct 28 04:40:50 IST 2026
[2026-10-28 04:40:50,401.401 INFO    ] ================================================
[2026-10-28 04:40:51,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:40:51
[2026-10-28 04:40:51,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:40:52,001.001 INFO    ] Initializing speech engine...
[2026-10-28 04:40:52,012.012 INFO    ] 2026-10-28 04:40:52
[2026-10-28 04:40:52,279.279 INFO    ] 2026-10-28 04:40:52
[2026-10-28 04:40:52,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:40:52,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:40:52,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:40:52,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:40:52,833.833 INFO    ] time= 28/10/2026 04:40:52
[2026-10-28 04:40:52,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:40:52,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:40:52,997.997 INFO    ] No existing commands found in stream
[2026-10-28 04:40:58,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:40:58,030.030 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 04:41:00,640.640 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:41:00,643.643 INFO    ] Checking for system updates...
[2026-10-28 04:41:00,680.680 INFO    ] 200
[2026-10-28 04:41:00,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:41:00,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:41:00,741.741 INFO    ] No update needed
[2026-10-28 04:41:00,743.743 INFO    ] Checking for camera pi updates...
[2026-10-28 04:41:00,777.777 INFO    ] 200
[2026-10-28 04:41:00,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:41:00,820.820 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:41:01,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:41:01,006.006 INFO    ] No camera update needed
[2026-10-28 04:41:01,008.008 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:41:01,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:41:01,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:41:01,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:41:03,064.064 INFO    ] ================================================
[2026-10-28 04:41:03,080.080 INFO    ] Launching Daemon at Wed Oct 28 04:41:03 IST 2026
[2026-10-28 04:41:03,095.095 INFO    ] ================================================
[2026-10-28 04:41:03,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:41:03
[2026-10-28 04:41:04,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:41:04,662.662 INFO    ] Initializing speech engine...
[2026-10-28 04:41:04,670.670 INFO    ] 2026-10-28 04:41:04
[2026-10-28 04:41:04,952.952 INFO    ] 2026-10-28 04:41:04
[2026-10-28 04:41:04,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:41:05,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:41:05,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:41:05,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:41:05,503.503 INFO    ] time= 28/10/2026 04:41:05
[2026-10-28 04:41:05,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:41:05,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:41:05,678.678 INFO    ] No existing commands found in stream
[2026-10-28 04:41:10,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:41:10,712.712 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-28 04:41:14,702.702 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:41:14,705.705 INFO    ] Checking for system updates...
[2026-10-28 04:41:14,741.741 INFO    ] 200
[2026-10-28 04:41:14,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:41:14,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:41:14,798.798 INFO    ] No update needed
[2026-10-28 04:41:14,801.801 INFO    ] Checking for camera pi updates...
[2026-10-28 04:41:14,834.834 INFO    ] 200
[2026-10-28 04:41:14,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:41:14,880.880 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:41:14,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:41:14,980.980 INFO    ] No camera update needed
[2026-10-28 04:41:14,983.983 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:41:14,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:41:14,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:41:14,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:41:17,035.035 INFO    ] ================================================
[2026-10-28 04:41:17,050.050 INFO    ] Launching Daemon at Wed Oct 28 04:41:17 IST 2026
[2026-10-28 04:41:17,061.061 INFO    ] ================================================
[2026-10-28 04:41:17,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:41:17
[2026-10-28 04:41:18,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:41:18,464.464 INFO    ] Initializing speech engine...
[2026-10-28 04:41:18,480.480 INFO    ] 2026-10-28 04:41:18
[2026-10-28 04:41:18,760.760 INFO    ] 2026-10-28 04:41:18
[2026-10-28 04:41:18,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:41:19,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:41:19,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:41:19,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:41:19,349.349 INFO    ] time= 28/10/2026 04:41:19
[2026-10-28 04:41:19,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:41:19,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:41:19,519.519 INFO    ] No existing commands found in stream
[2026-10-28 04:41:24,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:41:24,547.547 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-28 04:41:27,301.301 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:41:27,303.303 INFO    ] Checking for system updates...
[2026-10-28 04:41:27,346.346 INFO    ] 200
[2026-10-28 04:41:27,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:41:27,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:41:27,402.402 INFO    ] No update needed
[2026-10-28 04:41:27,404.404 INFO    ] Checking for camera pi updates...
[2026-10-28 04:41:27,439.439 INFO    ] 200
[2026-10-28 04:41:27,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:41:27,485.485 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:41:27,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:41:27,565.565 INFO    ] No camera update needed
[2026-10-28 04:41:27,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:41:27,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:41:27,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:41:27,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:41:29,623.623 INFO    ] ================================================
[2026-10-28 04:41:29,638.638 INFO    ] Launching Daemon at Wed Oct 28 04:41:29 IST 2026
[2026-10-28 04:41:29,649.649 INFO    ] ================================================
[2026-10-28 04:41:30,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:41:30
[2026-10-28 04:41:30,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:41:31,254.254 INFO    ] Initializing speech engine...
[2026-10-28 04:41:31,266.266 INFO    ] 2026-10-28 04:41:31
[2026-10-28 04:41:31,556.556 INFO    ] 2026-10-28 04:41:31
[2026-10-28 04:41:31,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:41:31,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:41:31,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:41:32,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:41:32,121.121 INFO    ] time= 28/10/2026 04:41:32
[2026-10-28 04:41:32,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:41:32,172.172 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:41:32,287.287 INFO    ] No existing commands found in stream
[2026-10-28 04:41:37,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:41:37,316.316 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-28 04:41:38,199.199 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:41:38,202.202 INFO    ] Checking for system updates...
[2026-10-28 04:41:38,269.269 INFO    ] 200
[2026-10-28 04:41:38,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:41:38,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:41:38,326.326 INFO    ] No update needed
[2026-10-28 04:41:38,328.328 INFO    ] Checking for camera pi updates...
[2026-10-28 04:41:38,362.362 INFO    ] 200
[2026-10-28 04:41:38,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:41:38,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:41:38,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:41:38,488.488 INFO    ] No camera update needed
[2026-10-28 04:41:38,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:41:38,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:41:38,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:41:38,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:41:40,543.543 INFO    ] ================================================
[2026-10-28 04:41:40,557.557 INFO    ] Launching Daemon at Wed Oct 28 04:41:40 IST 2026
[2026-10-28 04:41:40,568.568 INFO    ] ================================================
[2026-10-28 04:41:41,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:41:41
[2026-10-28 04:41:41,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:41:42,140.140 INFO    ] Initializing speech engine...
[2026-10-28 04:41:42,147.147 INFO    ] 2026-10-28 04:41:42
[2026-10-28 04:41:42,416.416 INFO    ] 2026-10-28 04:41:42
[2026-10-28 04:41:42,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:41:42,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:41:42,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:41:42,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:41:42,982.982 INFO    ] time= 28/10/2026 04:41:42
[2026-10-28 04:41:43,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:41:43,029.029 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:41:43,150.150 INFO    ] No existing commands found in stream
[2026-10-28 04:41:48,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:41:48,178.178 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 04:41:51,000.000 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:41:51,003.003 INFO    ] Checking for system updates...
[2026-10-28 04:41:51,042.042 INFO    ] 200
[2026-10-28 04:41:51,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:41:51,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:41:51,100.100 INFO    ] No update needed
[2026-10-28 04:41:51,103.103 INFO    ] Checking for camera pi updates...
[2026-10-28 04:41:51,137.137 INFO    ] 200
[2026-10-28 04:41:51,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:41:51,180.180 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:41:51,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:41:51,260.260 INFO    ] No camera update needed
[2026-10-28 04:41:51,263.263 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:41:51,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:41:51,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:41:51,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:41:53,318.318 INFO    ] ================================================
[2026-10-28 04:41:53,333.333 INFO    ] Launching Daemon at Wed Oct 28 04:41:53 IST 2026
[2026-10-28 04:41:53,344.344 INFO    ] ================================================
[2026-10-28 04:41:53,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:41:53
[2026-10-28 04:41:54,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:41:54,747.747 INFO    ] Initializing speech engine...
[2026-10-28 04:41:54,756.756 INFO    ] 2026-10-28 04:41:54
[2026-10-28 04:41:55,040.040 INFO    ] 2026-10-28 04:41:55
[2026-10-28 04:41:55,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:41:55,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:41:55,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:41:55,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:41:55,544.544 INFO    ] time= 28/10/2026 04:41:55
[2026-10-28 04:41:55,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:41:55,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:41:55,778.778 INFO    ] No existing commands found in stream
[2026-10-28 04:42:00,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:42:00,804.804 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 04:42:03,734.734 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:42:03,736.736 INFO    ] Checking for system updates...
[2026-10-28 04:42:03,774.774 INFO    ] 200
[2026-10-28 04:42:03,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:42:03,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:42:03,830.830 INFO    ] No update needed
[2026-10-28 04:42:03,833.833 INFO    ] Checking for camera pi updates...
[2026-10-28 04:42:03,866.866 INFO    ] 200
[2026-10-28 04:42:03,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:42:03,911.911 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:42:04,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:42:04,007.007 INFO    ] No camera update needed
[2026-10-28 04:42:04,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:42:04,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:42:04,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:42:04,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:42:06,062.062 INFO    ] ================================================
[2026-10-28 04:42:06,078.078 INFO    ] Launching Daemon at Wed Oct 28 04:42:06 IST 2026
[2026-10-28 04:42:06,088.088 INFO    ] ================================================
[2026-10-28 04:42:06,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:42:06
[2026-10-28 04:42:07,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:42:07,526.526 INFO    ] Initializing speech engine...
[2026-10-28 04:42:07,540.540 INFO    ] 2026-10-28 04:42:07
[2026-10-28 04:42:07,820.820 INFO    ] 2026-10-28 04:42:07
[2026-10-28 04:42:07,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:42:08,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:42:08,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:42:08,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:42:08,363.363 INFO    ] time= 28/10/2026 04:42:08
[2026-10-28 04:42:08,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:42:08,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:42:08,574.574 INFO    ] No existing commands found in stream
[2026-10-28 04:42:13,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:42:13,602.602 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-28 04:42:14,318.318 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:42:14,321.321 INFO    ] Checking for system updates...
[2026-10-28 04:42:14,357.357 INFO    ] 200
[2026-10-28 04:42:14,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:42:14,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:42:14,415.415 INFO    ] No update needed
[2026-10-28 04:42:14,417.417 INFO    ] Checking for camera pi updates...
[2026-10-28 04:42:14,450.450 INFO    ] 200
[2026-10-28 04:42:14,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:42:14,497.497 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:42:14,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:42:14,581.581 INFO    ] No camera update needed
[2026-10-28 04:42:14,584.584 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:42:14,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:42:14,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:42:14,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:42:16,635.635 INFO    ] ================================================
[2026-10-28 04:42:16,651.651 INFO    ] Launching Daemon at Wed Oct 28 04:42:16 IST 2026
[2026-10-28 04:42:16,662.662 INFO    ] ================================================
[2026-10-28 04:42:17,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:42:17
[2026-10-28 04:42:17,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:42:18,213.213 INFO    ] Initializing speech engine...
[2026-10-28 04:42:18,223.223 INFO    ] 2026-10-28 04:42:18
[2026-10-28 04:42:18,501.501 INFO    ] 2026-10-28 04:42:18
[2026-10-28 04:42:18,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:42:18,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:42:18,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:42:19,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:42:19,049.049 INFO    ] time= 28/10/2026 04:42:19
[2026-10-28 04:42:19,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:42:19,086.086 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:42:19,222.222 INFO    ] No existing commands found in stream
[2026-10-28 04:42:24,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:42:24,256.256 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-28 04:42:28,199.199 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:42:28,202.202 INFO    ] Checking for system updates...
[2026-10-28 04:42:28,237.237 INFO    ] 200
[2026-10-28 04:42:28,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:42:28,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:42:28,296.296 INFO    ] No update needed
[2026-10-28 04:42:28,299.299 INFO    ] Checking for camera pi updates...
[2026-10-28 04:42:28,332.332 INFO    ] 200
[2026-10-28 04:42:28,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:42:28,378.378 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:42:28,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:42:28,460.460 INFO    ] No camera update needed
[2026-10-28 04:42:28,463.463 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:42:28,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:42:28,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:42:28,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:42:30,516.516 INFO    ] ================================================
[2026-10-28 04:42:30,531.531 INFO    ] Launching Daemon at Wed Oct 28 04:42:30 IST 2026
[2026-10-28 04:42:30,541.541 INFO    ] ================================================
[2026-10-28 04:42:31,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:42:31
[2026-10-28 04:42:31,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:42:32,147.147 INFO    ] Initializing speech engine...
[2026-10-28 04:42:32,158.158 INFO    ] 2026-10-28 04:42:32
[2026-10-28 04:42:32,439.439 INFO    ] 2026-10-28 04:42:32
[2026-10-28 04:42:32,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:42:32,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:42:32,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:42:32,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:42:33,006.006 INFO    ] time= 28/10/2026 04:42:32
[2026-10-28 04:42:33,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:42:33,034.034 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:42:33,131.131 INFO    ] No existing commands found in stream
[2026-10-28 04:42:38,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:42:38,143.143 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-28 04:42:42,078.078 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:42:42,080.080 INFO    ] Checking for system updates...
[2026-10-28 04:42:42,118.118 INFO    ] 200
[2026-10-28 04:42:42,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:42:42,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:42:42,178.178 INFO    ] No update needed
[2026-10-28 04:42:42,181.181 INFO    ] Checking for camera pi updates...
[2026-10-28 04:42:42,214.214 INFO    ] 200
[2026-10-28 04:42:42,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:42:42,256.256 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:42:42,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:42:42,358.358 INFO    ] No camera update needed
[2026-10-28 04:42:42,361.361 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:42:42,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:42:42,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:42:42,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:42:44,416.416 INFO    ] ================================================
[2026-10-28 04:42:44,431.431 INFO    ] Launching Daemon at Wed Oct 28 04:42:44 IST 2026
[2026-10-28 04:42:44,441.441 INFO    ] ================================================
[2026-10-28 04:42:45,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:42:45
[2026-10-28 04:42:45,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:42:45,972.972 INFO    ] Initializing speech engine...
[2026-10-28 04:42:45,987.987 INFO    ] 2026-10-28 04:42:45
[2026-10-28 04:42:46,259.259 INFO    ] 2026-10-28 04:42:46
[2026-10-28 04:42:46,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:42:46,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:42:46,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:42:46,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:42:46,814.814 INFO    ] time= 28/10/2026 04:42:46
[2026-10-28 04:42:46,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:42:46,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:42:47,009.009 INFO    ] No existing commands found in stream
[2026-10-28 04:42:52,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:42:52,038.038 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-28 04:42:56,422.422 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:42:56,426.426 INFO    ] Checking for system updates...
[2026-10-28 04:42:56,465.465 INFO    ] 200
[2026-10-28 04:42:56,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:42:56,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:42:56,528.528 INFO    ] No update needed
[2026-10-28 04:42:56,530.530 INFO    ] Checking for camera pi updates...
[2026-10-28 04:42:56,568.568 INFO    ] 200
[2026-10-28 04:42:56,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:42:56,615.615 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:42:56,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:42:56,702.702 INFO    ] No camera update needed
[2026-10-28 04:42:56,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:42:56,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:42:56,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:42:56,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:42:58,760.760 INFO    ] ================================================
[2026-10-28 04:42:58,775.775 INFO    ] Launching Daemon at Wed Oct 28 04:42:58 IST 2026
[2026-10-28 04:42:58,785.785 INFO    ] ================================================
[2026-10-28 04:42:59,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:42:59
[2026-10-28 04:43:00,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:43:00,398.398 INFO    ] Initializing speech engine...
[2026-10-28 04:43:00,412.412 INFO    ] 2026-10-28 04:43:00
[2026-10-28 04:43:00,724.724 INFO    ] 2026-10-28 04:43:00
[2026-10-28 04:43:00,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:43:01,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:43:01,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:43:01,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:43:01,386.386 INFO    ] time= 28/10/2026 04:43:01
[2026-10-28 04:43:01,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:43:01,400.400 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:43:01,506.506 INFO    ] No existing commands found in stream
[2026-10-28 04:43:06,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:43:06,519.519 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-28 04:43:08,740.740 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:43:08,742.742 INFO    ] Checking for system updates...
[2026-10-28 04:43:08,778.778 INFO    ] 200
[2026-10-28 04:43:08,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:43:08,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:43:08,834.834 INFO    ] No update needed
[2026-10-28 04:43:08,837.837 INFO    ] Checking for camera pi updates...
[2026-10-28 04:43:08,871.871 INFO    ] 200
[2026-10-28 04:43:08,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:43:08,915.915 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:43:09,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:43:09,021.021 INFO    ] No camera update needed
[2026-10-28 04:43:09,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:43:09,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:43:09,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:43:09,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:43:11,076.076 INFO    ] ================================================
[2026-10-28 04:43:11,091.091 INFO    ] Launching Daemon at Wed Oct 28 04:43:11 IST 2026
[2026-10-28 04:43:11,101.101 INFO    ] ================================================
[2026-10-28 04:43:11,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:43:11
[2026-10-28 04:43:12,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:43:12,540.540 INFO    ] Initializing speech engine...
[2026-10-28 04:43:12,548.548 INFO    ] 2026-10-28 04:43:12
[2026-10-28 04:43:12,794.794 INFO    ] 2026-10-28 04:43:12
[2026-10-28 04:43:12,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:43:13,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:43:13,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:43:13,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:43:13,355.355 INFO    ] time= 28/10/2026 04:43:13
[2026-10-28 04:43:13,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:43:13,402.402 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:43:13,528.528 INFO    ] No existing commands found in stream
[2026-10-28 04:43:18,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:43:18,555.555 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 04:43:20,098.098 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:43:20,101.101 INFO    ] Checking for system updates...
[2026-10-28 04:43:20,139.139 INFO    ] 200
[2026-10-28 04:43:20,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:43:20,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:43:20,195.195 INFO    ] No update needed
[2026-10-28 04:43:20,198.198 INFO    ] Checking for camera pi updates...
[2026-10-28 04:43:20,230.230 INFO    ] 200
[2026-10-28 04:43:20,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:43:20,277.277 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:43:20,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:43:20,357.357 INFO    ] No camera update needed
[2026-10-28 04:43:20,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:43:20,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:43:20,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:43:20,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:43:22,415.415 INFO    ] ================================================
[2026-10-28 04:43:22,430.430 INFO    ] Launching Daemon at Wed Oct 28 04:43:22 IST 2026
[2026-10-28 04:43:22,440.440 INFO    ] ================================================
[2026-10-28 04:43:23,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:43:23
[2026-10-28 04:43:23,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:43:24,099.099 INFO    ] Initializing speech engine...
[2026-10-28 04:43:24,113.113 INFO    ] 2026-10-28 04:43:24
[2026-10-28 04:43:24,424.424 INFO    ] 2026-10-28 04:43:24
[2026-10-28 04:43:24,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:43:24,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:43:24,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:43:25,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:43:25,108.108 INFO    ] time= 28/10/2026 04:43:25
[2026-10-28 04:43:25,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:43:25,205.205 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:43:25,338.338 INFO    ] No existing commands found in stream
[2026-10-28 04:43:30,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:43:30,365.365 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-28 04:43:31,399.399 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:43:31,402.402 INFO    ] Checking for system updates...
[2026-10-28 04:43:31,442.442 INFO    ] 200
[2026-10-28 04:43:31,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:43:31,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:43:31,507.507 INFO    ] No update needed
[2026-10-28 04:43:31,510.510 INFO    ] Checking for camera pi updates...
[2026-10-28 04:43:31,546.546 INFO    ] 200
[2026-10-28 04:43:31,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:43:31,599.599 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:43:31,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:43:31,682.682 INFO    ] No camera update needed
[2026-10-28 04:43:31,685.685 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:43:31,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:43:31,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:43:31,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:43:33,742.742 INFO    ] ================================================
[2026-10-28 04:43:33,757.757 INFO    ] Launching Daemon at Wed Oct 28 04:43:33 IST 2026
[2026-10-28 04:43:33,768.768 INFO    ] ================================================
[2026-10-28 04:43:34,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:43:34
[2026-10-28 04:43:34,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:43:35,177.177 INFO    ] Initializing speech engine...
[2026-10-28 04:43:35,191.191 INFO    ] 2026-10-28 04:43:35
[2026-10-28 04:43:35,473.473 INFO    ] 2026-10-28 04:43:35
[2026-10-28 04:43:35,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:43:35,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:43:35,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:43:36,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:43:36,073.073 INFO    ] time= 28/10/2026 04:43:36
[2026-10-28 04:43:36,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:43:36,109.109 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:43:36,242.242 INFO    ] No existing commands found in stream
[2026-10-28 04:43:41,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:43:41,268.268 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-28 04:43:42,283.283 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:43:42,286.286 INFO    ] Checking for system updates...
[2026-10-28 04:43:42,321.321 INFO    ] 200
[2026-10-28 04:43:42,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:43:42,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:43:42,378.378 INFO    ] No update needed
[2026-10-28 04:43:42,380.380 INFO    ] Checking for camera pi updates...
[2026-10-28 04:43:42,413.413 INFO    ] 200
[2026-10-28 04:43:42,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:43:42,460.460 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:43:42,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:43:42,544.544 INFO    ] No camera update needed
[2026-10-28 04:43:42,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:43:42,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:43:42,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:43:42,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:43:44,600.600 INFO    ] ================================================
[2026-10-28 04:43:44,615.615 INFO    ] Launching Daemon at Wed Oct 28 04:43:44 IST 2026
[2026-10-28 04:43:44,627.627 INFO    ] ================================================
[2026-10-28 04:43:45,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:43:45
[2026-10-28 04:43:45,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:43:46,057.057 INFO    ] Initializing speech engine...
[2026-10-28 04:43:46,064.064 INFO    ] 2026-10-28 04:43:46
[2026-10-28 04:43:46,321.321 INFO    ] 2026-10-28 04:43:46
[2026-10-28 04:43:46,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:43:46,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:43:46,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:43:46,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:43:46,873.873 INFO    ] time= 28/10/2026 04:43:46
[2026-10-28 04:43:46,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:43:46,899.899 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:43:47,029.029 INFO    ] No existing commands found in stream
[2026-10-28 04:43:52,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:43:52,048.048 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-28 04:43:55,357.357 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:43:55,360.360 INFO    ] Checking for system updates...
[2026-10-28 04:43:55,398.398 INFO    ] 200
[2026-10-28 04:43:55,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:43:55,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:43:55,461.461 INFO    ] No update needed
[2026-10-28 04:43:55,463.463 INFO    ] Checking for camera pi updates...
[2026-10-28 04:43:55,498.498 INFO    ] 200
[2026-10-28 04:43:55,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:43:55,541.541 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:43:55,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:43:55,619.619 INFO    ] No camera update needed
[2026-10-28 04:43:55,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:43:55,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:43:55,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:43:55,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:43:57,677.677 INFO    ] ================================================
[2026-10-28 04:43:57,693.693 INFO    ] Launching Daemon at Wed Oct 28 04:43:57 IST 2026
[2026-10-28 04:43:57,705.705 INFO    ] ================================================
[2026-10-28 04:43:58,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:43:58
[2026-10-28 04:43:58,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:43:59,119.119 INFO    ] Initializing speech engine...
[2026-10-28 04:43:59,141.141 INFO    ] 2026-10-28 04:43:59
[2026-10-28 04:43:59,401.401 INFO    ] 2026-10-28 04:43:59
[2026-10-28 04:43:59,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:43:59,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:43:59,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:43:59,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:43:59,968.968 INFO    ] time= 28/10/2026 04:43:59
[2026-10-28 04:43:59,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:44:00,014.014 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:44:00,122.122 INFO    ] No existing commands found in stream
[2026-10-28 04:44:05,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:44:05,148.148 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 04:44:07,104.104 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:44:07,107.107 INFO    ] Checking for system updates...
[2026-10-28 04:44:07,142.142 INFO    ] 200
[2026-10-28 04:44:07,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:44:07,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:44:07,199.199 INFO    ] No update needed
[2026-10-28 04:44:07,202.202 INFO    ] Checking for camera pi updates...
[2026-10-28 04:44:07,236.236 INFO    ] 200
[2026-10-28 04:44:07,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:44:07,278.278 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:44:07,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:44:07,358.358 INFO    ] No camera update needed
[2026-10-28 04:44:07,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:44:07,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:44:07,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:44:07,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:44:09,413.413 INFO    ] ================================================
[2026-10-28 04:44:09,428.428 INFO    ] Launching Daemon at Wed Oct 28 04:44:09 IST 2026
[2026-10-28 04:44:09,439.439 INFO    ] ================================================
[2026-10-28 04:44:10,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:44:10
[2026-10-28 04:44:10,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:44:10,866.866 INFO    ] Initializing speech engine...
[2026-10-28 04:44:10,875.875 INFO    ] 2026-10-28 04:44:10
[2026-10-28 04:44:11,148.148 INFO    ] 2026-10-28 04:44:11
[2026-10-28 04:44:11,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:44:11,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:44:11,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:44:11,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:44:11,756.756 INFO    ] time= 28/10/2026 04:44:11
[2026-10-28 04:44:11,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:44:11,796.796 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:44:11,929.929 INFO    ] No existing commands found in stream
[2026-10-28 04:44:16,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:44:16,945.945 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 04:44:20,140.140 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:44:20,143.143 INFO    ] Checking for system updates...
[2026-10-28 04:44:20,178.178 INFO    ] 200
[2026-10-28 04:44:20,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:44:20,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:44:20,235.235 INFO    ] No update needed
[2026-10-28 04:44:20,237.237 INFO    ] Checking for camera pi updates...
[2026-10-28 04:44:20,273.273 INFO    ] 200
[2026-10-28 04:44:20,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:44:20,319.319 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:44:20,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:44:20,402.402 INFO    ] No camera update needed
[2026-10-28 04:44:20,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:44:20,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:44:20,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:44:20,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:44:22,459.459 INFO    ] ================================================
[2026-10-28 04:44:22,474.474 INFO    ] Launching Daemon at Wed Oct 28 04:44:22 IST 2026
[2026-10-28 04:44:22,485.485 INFO    ] ================================================
[2026-10-28 04:44:23,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:44:23
[2026-10-28 04:44:23,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:44:24,070.070 INFO    ] Initializing speech engine...
[2026-10-28 04:44:24,087.087 INFO    ] 2026-10-28 04:44:24
[2026-10-28 04:44:24,359.359 INFO    ] 2026-10-28 04:44:24
[2026-10-28 04:44:24,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:44:24,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:44:24,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:44:24,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:44:24,941.941 INFO    ] time= 28/10/2026 04:44:24
[2026-10-28 04:44:24,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:44:24,970.970 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:44:25,108.108 INFO    ] No existing commands found in stream
[2026-10-28 04:44:30,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:44:30,127.127 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-28 04:44:31,915.915 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:44:31,918.918 INFO    ] Checking for system updates...
[2026-10-28 04:44:31,959.959 INFO    ] 200
[2026-10-28 04:44:31,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:44:32,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:44:32,040.040 INFO    ] No update needed
[2026-10-28 04:44:32,044.044 INFO    ] Checking for camera pi updates...
[2026-10-28 04:44:32,081.081 INFO    ] 200
[2026-10-28 04:44:32,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:44:32,132.132 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:44:32,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:44:32,205.205 INFO    ] No camera update needed
[2026-10-28 04:44:32,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:44:32,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:44:32,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:44:32,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:44:34,267.267 INFO    ] ================================================
[2026-10-28 04:44:34,283.283 INFO    ] Launching Daemon at Wed Oct 28 04:44:34 IST 2026
[2026-10-28 04:44:34,293.293 INFO    ] ================================================
[2026-10-28 04:44:34,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:44:34
[2026-10-28 04:44:35,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:44:35,734.734 INFO    ] Initializing speech engine...
[2026-10-28 04:44:35,743.743 INFO    ] 2026-10-28 04:44:35
[2026-10-28 04:44:36,005.005 INFO    ] 2026-10-28 04:44:35
[2026-10-28 04:44:36,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:44:36,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:44:36,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:44:36,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:44:36,511.511 INFO    ] time= 28/10/2026 04:44:36
[2026-10-28 04:44:36,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:44:36,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:44:36,785.785 INFO    ] No existing commands found in stream
[2026-10-28 04:44:41,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:44:41,811.811 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-28 04:44:45,301.301 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:44:45,303.303 INFO    ] Checking for system updates...
[2026-10-28 04:44:45,338.338 INFO    ] 200
[2026-10-28 04:44:45,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:44:45,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:44:45,395.395 INFO    ] No update needed
[2026-10-28 04:44:45,398.398 INFO    ] Checking for camera pi updates...
[2026-10-28 04:44:45,432.432 INFO    ] 200
[2026-10-28 04:44:45,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:44:45,478.478 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:44:45,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:44:45,574.574 INFO    ] No camera update needed
[2026-10-28 04:44:45,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:44:45,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:44:45,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:44:45,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:44:47,630.630 INFO    ] ================================================
[2026-10-28 04:44:47,645.645 INFO    ] Launching Daemon at Wed Oct 28 04:44:47 IST 2026
[2026-10-28 04:44:47,656.656 INFO    ] ================================================
[2026-10-28 04:44:48,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:44:48
[2026-10-28 04:44:48,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:44:49,113.113 INFO    ] Initializing speech engine...
[2026-10-28 04:44:49,122.122 INFO    ] 2026-10-28 04:44:49
[2026-10-28 04:44:49,376.376 INFO    ] 2026-10-28 04:44:49
[2026-10-28 04:44:49,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:44:49,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:44:49,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:44:49,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:44:49,921.921 INFO    ] time= 28/10/2026 04:44:49
[2026-10-28 04:44:49,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:44:49,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:44:50,070.070 INFO    ] No existing commands found in stream
[2026-10-28 04:44:55,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:44:55,089.089 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-28 04:44:59,289.289 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:44:59,291.291 INFO    ] Checking for system updates...
[2026-10-28 04:44:59,327.327 INFO    ] 200
[2026-10-28 04:44:59,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:44:59,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:44:59,385.385 INFO    ] No update needed
[2026-10-28 04:44:59,388.388 INFO    ] Checking for camera pi updates...
[2026-10-28 04:44:59,421.421 INFO    ] 200
[2026-10-28 04:44:59,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:44:59,467.467 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:44:59,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:44:59,580.580 INFO    ] No camera update needed
[2026-10-28 04:44:59,582.582 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:44:59,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:44:59,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:44:59,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:45:01,711.711 INFO    ] ================================================
[2026-10-28 04:45:01,809.809 INFO    ] Launching Daemon at Wed Oct 28 04:45:01 IST 2026
[2026-10-28 04:45:01,873.873 INFO    ] ================================================
[2026-10-28 04:45:02,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:45:02
[2026-10-28 04:45:03,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:45:03,724.724 INFO    ] Initializing speech engine...
[2026-10-28 04:45:03,731.731 INFO    ] 2026-10-28 04:45:03
[2026-10-28 04:45:04,020.020 INFO    ] 2026-10-28 04:45:03
[2026-10-28 04:45:04,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:45:04,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:45:04,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:45:04,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:45:04,603.603 INFO    ] time= 28/10/2026 04:45:04
[2026-10-28 04:45:04,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:45:04,626.626 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:45:04,709.709 INFO    ] No existing commands found in stream
[2026-10-28 04:45:09,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:45:09,738.738 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-28 04:45:13,116.116 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:45:13,119.119 INFO    ] Checking for system updates...
[2026-10-28 04:45:13,155.155 INFO    ] 200
[2026-10-28 04:45:13,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:45:13,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:45:13,211.211 INFO    ] No update needed
[2026-10-28 04:45:13,214.214 INFO    ] Checking for camera pi updates...
[2026-10-28 04:45:13,247.247 INFO    ] 200
[2026-10-28 04:45:13,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:45:13,293.293 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:45:13,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:45:13,474.474 INFO    ] No camera update needed
[2026-10-28 04:45:13,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:45:13,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:45:13,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:45:13,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:45:15,530.530 INFO    ] ================================================
[2026-10-28 04:45:15,545.545 INFO    ] Launching Daemon at Wed Oct 28 04:45:15 IST 2026
[2026-10-28 04:45:15,556.556 INFO    ] ================================================
[2026-10-28 04:45:16,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:45:16
[2026-10-28 04:45:16,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:45:17,003.003 INFO    ] Initializing speech engine...
[2026-10-28 04:45:17,014.014 INFO    ] 2026-10-28 04:45:17
[2026-10-28 04:45:17,274.274 INFO    ] 2026-10-28 04:45:17
[2026-10-28 04:45:17,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:45:17,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:45:17,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:45:17,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:45:17,813.813 INFO    ] time= 28/10/2026 04:45:17
[2026-10-28 04:45:17,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:45:17,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:45:17,968.968 INFO    ] No existing commands found in stream
[2026-10-28 04:45:22,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:45:22,989.989 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-28 04:45:25,855.855 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:45:25,858.858 INFO    ] Checking for system updates...
[2026-10-28 04:45:25,896.896 INFO    ] 200
[2026-10-28 04:45:25,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:45:25,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:45:25,952.952 INFO    ] No update needed
[2026-10-28 04:45:25,955.955 INFO    ] Checking for camera pi updates...
[2026-10-28 04:45:25,988.988 INFO    ] 200
[2026-10-28 04:45:25,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:45:26,030.030 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:45:26,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:45:26,129.129 INFO    ] No camera update needed
[2026-10-28 04:45:26,131.131 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:45:26,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:45:26,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:45:26,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:45:28,186.186 INFO    ] ================================================
[2026-10-28 04:45:28,201.201 INFO    ] Launching Daemon at Wed Oct 28 04:45:28 IST 2026
[2026-10-28 04:45:28,212.212 INFO    ] ================================================
[2026-10-28 04:45:28,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:45:28
[2026-10-28 04:45:29,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:45:29,706.706 INFO    ] Initializing speech engine...
[2026-10-28 04:45:29,724.724 INFO    ] 2026-10-28 04:45:29
[2026-10-28 04:45:29,975.975 INFO    ] 2026-10-28 04:45:29
[2026-10-28 04:45:30,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:45:30,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:45:30,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:45:30,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:45:30,531.531 INFO    ] time= 28/10/2026 04:45:30
[2026-10-28 04:45:30,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:45:30,572.572 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:45:30,685.685 INFO    ] No existing commands found in stream
[2026-10-28 04:45:35,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:45:35,712.712 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-28 04:45:37,044.044 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:45:37,046.046 INFO    ] Checking for system updates...
[2026-10-28 04:45:37,082.082 INFO    ] 200
[2026-10-28 04:45:37,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:45:37,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:45:37,146.146 INFO    ] No update needed
[2026-10-28 04:45:37,148.148 INFO    ] Checking for camera pi updates...
[2026-10-28 04:45:37,184.184 INFO    ] 200
[2026-10-28 04:45:37,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:45:37,226.226 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:45:37,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:45:37,312.312 INFO    ] No camera update needed
[2026-10-28 04:45:37,315.315 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:45:37,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:45:37,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:45:37,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:45:39,367.367 INFO    ] ================================================
[2026-10-28 04:45:39,383.383 INFO    ] Launching Daemon at Wed Oct 28 04:45:39 IST 2026
[2026-10-28 04:45:39,395.395 INFO    ] ================================================
[2026-10-28 04:45:39,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:45:39
[2026-10-28 04:45:40,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:45:40,830.830 INFO    ] Initializing speech engine...
[2026-10-28 04:45:40,837.837 INFO    ] 2026-10-28 04:45:40
[2026-10-28 04:45:41,085.085 INFO    ] 2026-10-28 04:45:41
[2026-10-28 04:45:41,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:45:41,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:45:41,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:45:41,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:45:41,639.639 INFO    ] time= 28/10/2026 04:45:41
[2026-10-28 04:45:41,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:45:41,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:45:41,797.797 INFO    ] No existing commands found in stream
[2026-10-28 04:45:46,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:45:46,835.835 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-28 04:45:47,636.636 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:45:47,639.639 INFO    ] Checking for system updates...
[2026-10-28 04:45:47,675.675 INFO    ] 200
[2026-10-28 04:45:47,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:45:47,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:45:47,732.732 INFO    ] No update needed
[2026-10-28 04:45:47,734.734 INFO    ] Checking for camera pi updates...
[2026-10-28 04:45:47,768.768 INFO    ] 200
[2026-10-28 04:45:47,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:45:47,811.811 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:45:47,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:45:47,922.922 INFO    ] No camera update needed
[2026-10-28 04:45:47,925.925 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:45:47,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:45:47,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:45:47,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:45:49,981.981 INFO    ] ================================================
[2026-10-28 04:45:50,997.997 INFO    ] Launching Daemon at Wed Oct 28 04:45:49 IST 2026
[2026-10-28 04:45:50,008.008 INFO    ] ================================================
[2026-10-28 04:45:50,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:45:50
[2026-10-28 04:45:51,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:45:51,607.607 INFO    ] Initializing speech engine...
[2026-10-28 04:45:51,615.615 INFO    ] 2026-10-28 04:45:51
[2026-10-28 04:45:51,900.900 INFO    ] 2026-10-28 04:45:51
[2026-10-28 04:45:51,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:45:52,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:45:52,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:45:52,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:45:52,446.446 INFO    ] time= 28/10/2026 04:45:52
[2026-10-28 04:45:52,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:45:52,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:45:52,589.589 INFO    ] No existing commands found in stream
[2026-10-28 04:45:57,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:45:57,621.621 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-28 04:45:59,977.977 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:45:59,980.980 INFO    ] Checking for system updates...
[2026-10-28 04:46:00,017.017 INFO    ] 200
[2026-10-28 04:46:00,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:46:00,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:46:00,075.075 INFO    ] No update needed
[2026-10-28 04:46:00,078.078 INFO    ] Checking for camera pi updates...
[2026-10-28 04:46:00,112.112 INFO    ] 200
[2026-10-28 04:46:00,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:46:00,156.156 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:46:00,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:46:00,237.237 INFO    ] No camera update needed
[2026-10-28 04:46:00,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:46:00,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:46:00,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:46:00,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:46:02,300.300 INFO    ] ================================================
[2026-10-28 04:46:02,322.322 INFO    ] Launching Daemon at Wed Oct 28 04:46:02 IST 2026
[2026-10-28 04:46:02,339.339 INFO    ] ================================================
[2026-10-28 04:46:03,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:46:03
[2026-10-28 04:46:03,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:46:03,935.935 INFO    ] Initializing speech engine...
[2026-10-28 04:46:03,948.948 INFO    ] 2026-10-28 04:46:03
[2026-10-28 04:46:04,235.235 INFO    ] 2026-10-28 04:46:04
[2026-10-28 04:46:04,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:46:04,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:46:04,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:46:04,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:46:04,845.845 INFO    ] time= 28/10/2026 04:46:04
[2026-10-28 04:46:04,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:46:04,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:46:05,004.004 INFO    ] No existing commands found in stream
[2026-10-28 04:46:10,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:46:10,037.037 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 04:46:13,676.676 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:46:13,678.678 INFO    ] Checking for system updates...
[2026-10-28 04:46:13,718.718 INFO    ] 200
[2026-10-28 04:46:13,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:46:13,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:46:13,780.780 INFO    ] No update needed
[2026-10-28 04:46:13,783.783 INFO    ] Checking for camera pi updates...
[2026-10-28 04:46:13,816.816 INFO    ] 200
[2026-10-28 04:46:13,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:46:13,876.876 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:46:13,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:46:13,961.961 INFO    ] No camera update needed
[2026-10-28 04:46:13,964.964 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:46:13,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:46:13,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:46:13,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:46:16,019.019 INFO    ] ================================================
[2026-10-28 04:46:16,035.035 INFO    ] Launching Daemon at Wed Oct 28 04:46:16 IST 2026
[2026-10-28 04:46:16,046.046 INFO    ] ================================================
[2026-10-28 04:46:16,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:46:16
[2026-10-28 04:46:17,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:46:17,446.446 INFO    ] Initializing speech engine...
[2026-10-28 04:46:17,458.458 INFO    ] 2026-10-28 04:46:17
[2026-10-28 04:46:17,724.724 INFO    ] 2026-10-28 04:46:17
[2026-10-28 04:46:17,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:46:18,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:46:18,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:46:18,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:46:18,291.291 INFO    ] time= 28/10/2026 04:46:18
[2026-10-28 04:46:18,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:46:18,315.315 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:46:18,449.449 INFO    ] No existing commands found in stream
[2026-10-28 04:46:23,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:46:23,465.465 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 04:46:24,694.694 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:46:24,697.697 INFO    ] Checking for system updates...
[2026-10-28 04:46:24,732.732 INFO    ] 200
[2026-10-28 04:46:24,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:46:24,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:46:24,791.791 INFO    ] No update needed
[2026-10-28 04:46:24,793.793 INFO    ] Checking for camera pi updates...
[2026-10-28 04:46:24,826.826 INFO    ] 200
[2026-10-28 04:46:24,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:46:24,873.873 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:46:24,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:46:24,961.961 INFO    ] No camera update needed
[2026-10-28 04:46:24,964.964 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:46:24,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:46:24,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:46:24,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:46:27,017.017 INFO    ] ================================================
[2026-10-28 04:46:27,033.033 INFO    ] Launching Daemon at Wed Oct 28 04:46:27 IST 2026
[2026-10-28 04:46:27,043.043 INFO    ] ================================================
[2026-10-28 04:46:27,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:46:27
[2026-10-28 04:46:28,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:46:28,502.502 INFO    ] Initializing speech engine...
[2026-10-28 04:46:28,512.512 INFO    ] 2026-10-28 04:46:28
[2026-10-28 04:46:28,766.766 INFO    ] 2026-10-28 04:46:28
[2026-10-28 04:46:28,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:46:29,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:46:29,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:46:29,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:46:29,435.435 INFO    ] time= 28/10/2026 04:46:29
[2026-10-28 04:46:29,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:46:29,550.550 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:46:29,707.707 INFO    ] No existing commands found in stream
[2026-10-28 04:46:34,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:46:34,728.728 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-28 04:46:38,458.458 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:46:38,461.461 INFO    ] Checking for system updates...
[2026-10-28 04:46:38,498.498 INFO    ] 200
[2026-10-28 04:46:38,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:46:38,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:46:38,564.564 INFO    ] No update needed
[2026-10-28 04:46:38,567.567 INFO    ] Checking for camera pi updates...
[2026-10-28 04:46:38,600.600 INFO    ] 200
[2026-10-28 04:46:38,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:46:38,643.643 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:46:38,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:46:38,728.728 INFO    ] No camera update needed
[2026-10-28 04:46:38,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:46:38,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:46:38,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:46:38,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:46:40,788.788 INFO    ] ================================================
[2026-10-28 04:46:40,804.804 INFO    ] Launching Daemon at Wed Oct 28 04:46:40 IST 2026
[2026-10-28 04:46:40,815.815 INFO    ] ================================================
[2026-10-28 04:46:41,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:46:41
[2026-10-28 04:46:42,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:46:42,498.498 INFO    ] Initializing speech engine...
[2026-10-28 04:46:42,512.512 INFO    ] 2026-10-28 04:46:42
[2026-10-28 04:46:42,777.777 INFO    ] 2026-10-28 04:46:42
[2026-10-28 04:46:42,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:46:43,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:46:43,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:46:43,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:46:43,305.305 INFO    ] time= 28/10/2026 04:46:43
[2026-10-28 04:46:43,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:46:43,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:46:43,455.455 INFO    ] No existing commands found in stream
[2026-10-28 04:46:48,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:46:48,473.473 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 04:46:52,399.399 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:46:52,402.402 INFO    ] Checking for system updates...
[2026-10-28 04:46:52,442.442 INFO    ] 200
[2026-10-28 04:46:52,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:46:52,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:46:52,500.500 INFO    ] No update needed
[2026-10-28 04:46:52,502.502 INFO    ] Checking for camera pi updates...
[2026-10-28 04:46:52,535.535 INFO    ] 200
[2026-10-28 04:46:52,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:46:52,578.578 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:46:52,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:46:52,675.675 INFO    ] No camera update needed
[2026-10-28 04:46:52,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:46:52,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:46:52,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:46:52,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:46:54,730.730 INFO    ] ================================================
[2026-10-28 04:46:54,746.746 INFO    ] Launching Daemon at Wed Oct 28 04:46:54 IST 2026
[2026-10-28 04:46:54,757.757 INFO    ] ================================================
[2026-10-28 04:46:55,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:46:55
[2026-10-28 04:46:55,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:46:56,222.222 INFO    ] Initializing speech engine...
[2026-10-28 04:46:56,233.233 INFO    ] 2026-10-28 04:46:56
[2026-10-28 04:46:56,494.494 INFO    ] 2026-10-28 04:46:56
[2026-10-28 04:46:56,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:46:56,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:46:56,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:46:56,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:46:57,037.037 INFO    ] time= 28/10/2026 04:46:57
[2026-10-28 04:46:57,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:46:57,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:46:57,192.192 INFO    ] No existing commands found in stream
[2026-10-28 04:47:02,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:47:02,216.216 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-28 04:47:05,124.124 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:47:05,127.127 INFO    ] Checking for system updates...
[2026-10-28 04:47:05,166.166 INFO    ] 200
[2026-10-28 04:47:05,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:47:05,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:47:05,222.222 INFO    ] No update needed
[2026-10-28 04:47:05,225.225 INFO    ] Checking for camera pi updates...
[2026-10-28 04:47:05,259.259 INFO    ] 200
[2026-10-28 04:47:05,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:47:05,301.301 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:47:05,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:47:05,372.372 INFO    ] No camera update needed
[2026-10-28 04:47:05,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:47:05,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:47:05,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:47:05,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:47:07,427.427 INFO    ] ================================================
[2026-10-28 04:47:07,442.442 INFO    ] Launching Daemon at Wed Oct 28 04:47:07 IST 2026
[2026-10-28 04:47:07,453.453 INFO    ] ================================================
[2026-10-28 04:47:08,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:47:08
[2026-10-28 04:47:08,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:47:08,988.988 INFO    ] Initializing speech engine...
[2026-10-28 04:47:09,006.006 INFO    ] 2026-10-28 04:47:08
[2026-10-28 04:47:09,255.255 INFO    ] 2026-10-28 04:47:09
[2026-10-28 04:47:09,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:47:09,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:47:09,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:47:09,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:47:09,765.765 INFO    ] time= 28/10/2026 04:47:09
[2026-10-28 04:47:09,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:47:09,836.836 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:47:09,979.979 INFO    ] No existing commands found in stream
[2026-10-28 04:47:14,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:47:14,996.996 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 04:47:17,944.944 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:47:17,947.947 INFO    ] Checking for system updates...
[2026-10-28 04:47:17,987.987 INFO    ] 200
[2026-10-28 04:47:17,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:47:18,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:47:18,044.044 INFO    ] No update needed
[2026-10-28 04:47:18,047.047 INFO    ] Checking for camera pi updates...
[2026-10-28 04:47:18,080.080 INFO    ] 200
[2026-10-28 04:47:18,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:47:18,127.127 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:47:18,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:47:18,310.310 INFO    ] No camera update needed
[2026-10-28 04:47:18,312.312 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:47:18,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:47:18,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:47:18,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:47:20,366.366 INFO    ] ================================================
[2026-10-28 04:47:20,382.382 INFO    ] Launching Daemon at Wed Oct 28 04:47:20 IST 2026
[2026-10-28 04:47:20,393.393 INFO    ] ================================================
[2026-10-28 04:47:20,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:47:20
[2026-10-28 04:47:21,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:47:21,837.837 INFO    ] Initializing speech engine...
[2026-10-28 04:47:21,844.844 INFO    ] 2026-10-28 04:47:21
[2026-10-28 04:47:22,106.106 INFO    ] 2026-10-28 04:47:22
[2026-10-28 04:47:22,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:47:22,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:47:22,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:47:22,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:47:22,665.665 INFO    ] time= 28/10/2026 04:47:22
[2026-10-28 04:47:22,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:47:22,688.688 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:47:22,814.814 INFO    ] No existing commands found in stream
[2026-10-28 04:47:27,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:47:27,832.832 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 04:47:29,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:47:29,639.639 INFO    ] Checking for system updates...
[2026-10-28 04:47:29,674.674 INFO    ] 200
[2026-10-28 04:47:29,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:47:29,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:47:29,732.732 INFO    ] No update needed
[2026-10-28 04:47:29,734.734 INFO    ] Checking for camera pi updates...
[2026-10-28 04:47:29,767.767 INFO    ] 200
[2026-10-28 04:47:29,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:47:29,814.814 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:47:29,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:47:29,915.915 INFO    ] No camera update needed
[2026-10-28 04:47:29,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:47:29,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:47:29,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:47:29,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:47:31,972.972 INFO    ] ================================================
[2026-10-28 04:47:31,989.989 INFO    ] Launching Daemon at Wed Oct 28 04:47:31 IST 2026
[2026-10-28 04:47:32,001.001 INFO    ] ================================================
[2026-10-28 04:47:32,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:47:32
[2026-10-28 04:47:33,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:47:33,564.564 INFO    ] Initializing speech engine...
[2026-10-28 04:47:33,574.574 INFO    ] 2026-10-28 04:47:33
[2026-10-28 04:47:33,835.835 INFO    ] 2026-10-28 04:47:33
[2026-10-28 04:47:33,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:47:34,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:47:34,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:47:34,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:47:34,393.393 INFO    ] time= 28/10/2026 04:47:34
[2026-10-28 04:47:34,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:47:34,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:47:34,547.547 INFO    ] No existing commands found in stream
[2026-10-28 04:47:39,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:47:39,578.578 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-28 04:47:42,542.542 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:47:42,546.546 INFO    ] Checking for system updates...
[2026-10-28 04:47:42,584.584 INFO    ] 200
[2026-10-28 04:47:42,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:47:42,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:47:42,651.651 INFO    ] No update needed
[2026-10-28 04:47:42,654.654 INFO    ] Checking for camera pi updates...
[2026-10-28 04:47:42,687.687 INFO    ] 200
[2026-10-28 04:47:42,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:47:42,729.729 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:47:42,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:47:42,813.813 INFO    ] No camera update needed
[2026-10-28 04:47:42,816.816 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:47:42,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:47:42,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:47:42,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:47:44,874.874 INFO    ] ================================================
[2026-10-28 04:47:44,890.890 INFO    ] Launching Daemon at Wed Oct 28 04:47:44 IST 2026
[2026-10-28 04:47:44,901.901 INFO    ] ================================================
[2026-10-28 04:47:45,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:47:45
[2026-10-28 04:47:46,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:47:46,404.404 INFO    ] Initializing speech engine...
[2026-10-28 04:47:46,413.413 INFO    ] 2026-10-28 04:47:46
[2026-10-28 04:47:46,702.702 INFO    ] 2026-10-28 04:47:46
[2026-10-28 04:47:46,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:47:46,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:47:47,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:47:47,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:47:47,276.276 INFO    ] time= 28/10/2026 04:47:47
[2026-10-28 04:47:47,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:47:47,340.340 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:47:47,468.468 INFO    ] No existing commands found in stream
[2026-10-28 04:47:52,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:47:52,490.490 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-28 04:47:56,262.262 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:47:56,264.264 INFO    ] Checking for system updates...
[2026-10-28 04:47:56,300.300 INFO    ] 200
[2026-10-28 04:47:56,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:47:56,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:47:56,357.357 INFO    ] No update needed
[2026-10-28 04:47:56,359.359 INFO    ] Checking for camera pi updates...
[2026-10-28 04:47:56,395.395 INFO    ] 200
[2026-10-28 04:47:56,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:47:56,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:47:56,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:47:56,568.568 INFO    ] No camera update needed
[2026-10-28 04:47:56,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:47:56,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:47:56,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:47:56,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:47:58,623.623 INFO    ] ================================================
[2026-10-28 04:47:58,639.639 INFO    ] Launching Daemon at Wed Oct 28 04:47:58 IST 2026
[2026-10-28 04:47:58,650.650 INFO    ] ================================================
[2026-10-28 04:47:59,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:47:59
[2026-10-28 04:47:59,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:48:00,093.093 INFO    ] Initializing speech engine...
[2026-10-28 04:48:00,101.101 INFO    ] 2026-10-28 04:48:00
[2026-10-28 04:48:00,353.353 INFO    ] 2026-10-28 04:48:00
[2026-10-28 04:48:00,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:48:00,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:48:00,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:48:00,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:48:00,913.913 INFO    ] time= 28/10/2026 04:48:00
[2026-10-28 04:48:00,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:48:00,932.932 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:48:01,075.075 INFO    ] No existing commands found in stream
[2026-10-28 04:48:06,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:48:06,095.095 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-28 04:48:06,719.719 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:48:06,722.722 INFO    ] Checking for system updates...
[2026-10-28 04:48:06,762.762 INFO    ] 200
[2026-10-28 04:48:06,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:48:06,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:48:06,822.822 INFO    ] No update needed
[2026-10-28 04:48:06,825.825 INFO    ] Checking for camera pi updates...
[2026-10-28 04:48:06,859.859 INFO    ] 200
[2026-10-28 04:48:06,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:48:06,909.909 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:48:07,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:48:07,004.004 INFO    ] No camera update needed
[2026-10-28 04:48:07,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:48:07,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:48:07,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:48:07,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:48:09,062.062 INFO    ] ================================================
[2026-10-28 04:48:09,077.077 INFO    ] Launching Daemon at Wed Oct 28 04:48:09 IST 2026
[2026-10-28 04:48:09,088.088 INFO    ] ================================================
[2026-10-28 04:48:09,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:48:09
[2026-10-28 04:48:10,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:48:10,594.594 INFO    ] Initializing speech engine...
[2026-10-28 04:48:10,610.610 INFO    ] 2026-10-28 04:48:10
[2026-10-28 04:48:10,900.900 INFO    ] 2026-10-28 04:48:10
[2026-10-28 04:48:10,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:48:11,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:48:11,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:48:11,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:48:11,525.525 INFO    ] time= 28/10/2026 04:48:11
[2026-10-28 04:48:11,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:48:11,560.560 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:48:11,691.691 INFO    ] No existing commands found in stream
[2026-10-28 04:48:16,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:48:16,717.717 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-28 04:48:21,262.262 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:48:21,265.265 INFO    ] Checking for system updates...
[2026-10-28 04:48:21,302.302 INFO    ] 200
[2026-10-28 04:48:21,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:48:21,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:48:21,370.370 INFO    ] No update needed
[2026-10-28 04:48:21,372.372 INFO    ] Checking for camera pi updates...
[2026-10-28 04:48:21,407.407 INFO    ] 200
[2026-10-28 04:48:21,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:48:21,455.455 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:48:21,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:48:21,539.539 INFO    ] No camera update needed
[2026-10-28 04:48:21,541.541 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:48:21,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:48:21,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:48:21,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:48:23,595.595 INFO    ] ================================================
[2026-10-28 04:48:23,611.611 INFO    ] Launching Daemon at Wed Oct 28 04:48:23 IST 2026
[2026-10-28 04:48:23,622.622 INFO    ] ================================================
[2026-10-28 04:48:24,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:48:24
[2026-10-28 04:48:24,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:48:25,043.043 INFO    ] Initializing speech engine...
[2026-10-28 04:48:25,061.061 INFO    ] 2026-10-28 04:48:25
[2026-10-28 04:48:25,312.312 INFO    ] 2026-10-28 04:48:25
[2026-10-28 04:48:25,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:48:25,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:48:25,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:48:25,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:48:25,878.878 INFO    ] time= 28/10/2026 04:48:25
[2026-10-28 04:48:25,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:48:25,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:48:26,014.014 INFO    ] No existing commands found in stream
[2026-10-28 04:48:31,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:48:31,037.037 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-28 04:48:31,835.835 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:48:31,838.838 INFO    ] Checking for system updates...
[2026-10-28 04:48:31,876.876 INFO    ] 200
[2026-10-28 04:48:31,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:48:31,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:48:31,940.940 INFO    ] No update needed
[2026-10-28 04:48:31,942.942 INFO    ] Checking for camera pi updates...
[2026-10-28 04:48:31,984.984 INFO    ] 200
[2026-10-28 04:48:31,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:48:32,035.035 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:48:32,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:48:32,109.109 INFO    ] No camera update needed
[2026-10-28 04:48:32,112.112 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:48:32,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:48:32,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:48:32,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:48:34,167.167 INFO    ] ================================================
[2026-10-28 04:48:34,183.183 INFO    ] Launching Daemon at Wed Oct 28 04:48:34 IST 2026
[2026-10-28 04:48:34,200.200 INFO    ] ================================================
[2026-10-28 04:48:34,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:48:34
[2026-10-28 04:48:35,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:48:35,650.650 INFO    ] Initializing speech engine...
[2026-10-28 04:48:35,660.660 INFO    ] 2026-10-28 04:48:35
[2026-10-28 04:48:35,909.909 INFO    ] 2026-10-28 04:48:35
[2026-10-28 04:48:35,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:48:36,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:48:36,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:48:36,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:48:36,477.477 INFO    ] time= 28/10/2026 04:48:36
[2026-10-28 04:48:36,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:48:36,502.502 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:48:36,637.637 INFO    ] No existing commands found in stream
[2026-10-28 04:48:41,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:48:41,655.655 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-28 04:48:45,614.614 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:48:45,617.617 INFO    ] Checking for system updates...
[2026-10-28 04:48:45,656.656 INFO    ] 200
[2026-10-28 04:48:45,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:48:45,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:48:45,719.719 INFO    ] No update needed
[2026-10-28 04:48:45,721.721 INFO    ] Checking for camera pi updates...
[2026-10-28 04:48:45,759.759 INFO    ] 200
[2026-10-28 04:48:45,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:48:45,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:48:45,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:48:45,901.901 INFO    ] No camera update needed
[2026-10-28 04:48:45,903.903 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:48:45,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:48:45,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:48:45,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:48:47,957.957 INFO    ] ================================================
[2026-10-28 04:48:47,973.973 INFO    ] Launching Daemon at Wed Oct 28 04:48:47 IST 2026
[2026-10-28 04:48:47,984.984 INFO    ] ================================================
[2026-10-28 04:48:48,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:48:48
[2026-10-28 04:48:49,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:48:49,395.395 INFO    ] Initializing speech engine...
[2026-10-28 04:48:49,418.418 INFO    ] 2026-10-28 04:48:49
[2026-10-28 04:48:49,677.677 INFO    ] 2026-10-28 04:48:49
[2026-10-28 04:48:49,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:48:49,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:48:49,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:48:50,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:48:50,172.172 INFO    ] time= 28/10/2026 04:48:50
[2026-10-28 04:48:50,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:48:50,250.250 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:48:50,372.372 INFO    ] No existing commands found in stream
[2026-10-28 04:48:55,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:48:55,400.400 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-28 04:48:56,659.659 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:48:56,662.662 INFO    ] Checking for system updates...
[2026-10-28 04:48:56,697.697 INFO    ] 200
[2026-10-28 04:48:56,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:48:56,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:48:56,754.754 INFO    ] No update needed
[2026-10-28 04:48:56,756.756 INFO    ] Checking for camera pi updates...
[2026-10-28 04:48:56,800.800 INFO    ] 200
[2026-10-28 04:48:56,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:48:56,852.852 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:48:56,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:48:56,949.949 INFO    ] No camera update needed
[2026-10-28 04:48:56,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:48:56,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:48:56,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:48:56,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:48:59,009.009 INFO    ] ================================================
[2026-10-28 04:48:59,025.025 INFO    ] Launching Daemon at Wed Oct 28 04:48:59 IST 2026
[2026-10-28 04:48:59,035.035 INFO    ] ================================================
[2026-10-28 04:48:59,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:48:59
[2026-10-28 04:49:00,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:49:00,470.470 INFO    ] Initializing speech engine...
[2026-10-28 04:49:00,481.481 INFO    ] 2026-10-28 04:49:00
[2026-10-28 04:49:00,764.764 INFO    ] 2026-10-28 04:49:00
[2026-10-28 04:49:00,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:49:01,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:49:01,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:49:01,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:49:01,330.330 INFO    ] time= 28/10/2026 04:49:01
[2026-10-28 04:49:01,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:49:01,379.379 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:49:01,519.519 INFO    ] No existing commands found in stream
[2026-10-28 04:49:06,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:49:06,554.554 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-28 04:49:10,596.596 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:49:10,599.599 INFO    ] Checking for system updates...
[2026-10-28 04:49:10,637.637 INFO    ] 200
[2026-10-28 04:49:10,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:49:10,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:49:10,696.696 INFO    ] No update needed
[2026-10-28 04:49:10,699.699 INFO    ] Checking for camera pi updates...
[2026-10-28 04:49:10,734.734 INFO    ] 200
[2026-10-28 04:49:10,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:49:10,777.777 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:49:10,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:49:10,864.864 INFO    ] No camera update needed
[2026-10-28 04:49:10,867.867 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:49:10,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:49:10,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:49:10,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:49:12,921.921 INFO    ] ================================================
[2026-10-28 04:49:12,936.936 INFO    ] Launching Daemon at Wed Oct 28 04:49:12 IST 2026
[2026-10-28 04:49:12,947.947 INFO    ] ================================================
[2026-10-28 04:49:13,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:49:13
[2026-10-28 04:49:14,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:49:14,532.532 INFO    ] Initializing speech engine...
[2026-10-28 04:49:14,540.540 INFO    ] 2026-10-28 04:49:14
[2026-10-28 04:49:14,831.831 INFO    ] 2026-10-28 04:49:14
[2026-10-28 04:49:14,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:49:15,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:49:15,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:49:15,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:49:15,411.411 INFO    ] time= 28/10/2026 04:49:15
[2026-10-28 04:49:15,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:49:15,445.445 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:49:15,571.571 INFO    ] No existing commands found in stream
[2026-10-28 04:49:20,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:49:20,605.605 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-28 04:49:22,766.766 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:49:22,769.769 INFO    ] Checking for system updates...
[2026-10-28 04:49:22,806.806 INFO    ] 200
[2026-10-28 04:49:22,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:49:22,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:49:22,864.864 INFO    ] No update needed
[2026-10-28 04:49:22,866.866 INFO    ] Checking for camera pi updates...
[2026-10-28 04:49:22,900.900 INFO    ] 200
[2026-10-28 04:49:22,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:49:22,943.943 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:49:23,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:49:23,129.129 INFO    ] No camera update needed
[2026-10-28 04:49:23,131.131 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:49:23,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:49:23,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:49:23,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:49:25,186.186 INFO    ] ================================================
[2026-10-28 04:49:25,201.201 INFO    ] Launching Daemon at Wed Oct 28 04:49:25 IST 2026
[2026-10-28 04:49:25,212.212 INFO    ] ================================================
[2026-10-28 04:49:25,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:49:25
[2026-10-28 04:49:26,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:49:26,635.635 INFO    ] Initializing speech engine...
[2026-10-28 04:49:26,654.654 INFO    ] 2026-10-28 04:49:26
[2026-10-28 04:49:26,906.906 INFO    ] 2026-10-28 04:49:26
[2026-10-28 04:49:26,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:49:27,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:49:27,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:49:27,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:49:27,473.473 INFO    ] time= 28/10/2026 04:49:27
[2026-10-28 04:49:27,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:49:27,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:49:27,628.628 INFO    ] No existing commands found in stream
[2026-10-28 04:49:32,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:49:32,659.659 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-28 04:49:34,594.594 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:49:34,597.597 INFO    ] Checking for system updates...
[2026-10-28 04:49:34,633.633 INFO    ] 200
[2026-10-28 04:49:34,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:49:34,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:49:34,697.697 INFO    ] No update needed
[2026-10-28 04:49:34,700.700 INFO    ] Checking for camera pi updates...
[2026-10-28 04:49:34,756.756 INFO    ] 200
[2026-10-28 04:49:34,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:49:34,838.838 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:49:34,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:49:34,924.924 INFO    ] No camera update needed
[2026-10-28 04:49:34,926.926 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:49:34,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:49:34,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:49:34,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:49:36,978.978 INFO    ] ================================================
[2026-10-28 04:49:36,994.994 INFO    ] Launching Daemon at Wed Oct 28 04:49:36 IST 2026
[2026-10-28 04:49:37,004.004 INFO    ] ================================================
[2026-10-28 04:49:37,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:49:37
[2026-10-28 04:49:38,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:49:38,560.560 INFO    ] Initializing speech engine...
[2026-10-28 04:49:38,572.572 INFO    ] 2026-10-28 04:49:38
[2026-10-28 04:49:38,838.838 INFO    ] 2026-10-28 04:49:38
[2026-10-28 04:49:38,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:49:39,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:49:39,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:49:39,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:49:39,411.411 INFO    ] time= 28/10/2026 04:49:39
[2026-10-28 04:49:39,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:49:39,451.451 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:49:39,571.571 INFO    ] No existing commands found in stream
[2026-10-28 04:49:44,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:49:44,600.600 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 04:49:46,376.376 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:49:46,379.379 INFO    ] Checking for system updates...
[2026-10-28 04:49:46,414.414 INFO    ] 200
[2026-10-28 04:49:46,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:49:46,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:49:46,472.472 INFO    ] No update needed
[2026-10-28 04:49:46,474.474 INFO    ] Checking for camera pi updates...
[2026-10-28 04:49:46,507.507 INFO    ] 200
[2026-10-28 04:49:46,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:49:46,557.557 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:49:46,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:49:46,649.649 INFO    ] No camera update needed
[2026-10-28 04:49:46,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:49:46,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:49:46,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:49:46,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:49:48,705.705 INFO    ] ================================================
[2026-10-28 04:49:48,720.720 INFO    ] Launching Daemon at Wed Oct 28 04:49:48 IST 2026
[2026-10-28 04:49:48,731.731 INFO    ] ================================================
[2026-10-28 04:49:49,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:49:49
[2026-10-28 04:49:50,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:49:50,430.430 INFO    ] Initializing speech engine...
[2026-10-28 04:49:50,436.436 INFO    ] 2026-10-28 04:49:50
[2026-10-28 04:49:50,750.750 INFO    ] 2026-10-28 04:49:50
[2026-10-28 04:49:50,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:49:51,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:49:51,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:49:51,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:49:51,422.422 INFO    ] time= 28/10/2026 04:49:51
[2026-10-28 04:49:51,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:49:51,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:49:51,660.660 INFO    ] No existing commands found in stream
[2026-10-28 04:49:56,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:49:56,687.687 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-28 04:49:58,816.816 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:49:58,819.819 INFO    ] Checking for system updates...
[2026-10-28 04:49:58,856.856 INFO    ] 200
[2026-10-28 04:49:58,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:49:58,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:49:58,915.915 INFO    ] No update needed
[2026-10-28 04:49:58,918.918 INFO    ] Checking for camera pi updates...
[2026-10-28 04:49:58,952.952 INFO    ] 200
[2026-10-28 04:49:58,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:49:58,996.996 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:49:59,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:49:59,091.091 INFO    ] No camera update needed
[2026-10-28 04:49:59,093.093 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:49:59,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:49:59,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:49:59,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:50:01,187.187 INFO    ] ================================================
[2026-10-28 04:50:01,275.275 INFO    ] Launching Daemon at Wed Oct 28 04:50:01 IST 2026
[2026-10-28 04:50:01,318.318 INFO    ] ================================================
[2026-10-28 04:50:02,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:50:02
[2026-10-28 04:50:02,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:50:03,287.287 INFO    ] Initializing speech engine...
[2026-10-28 04:50:03,297.297 INFO    ] 2026-10-28 04:50:03
[2026-10-28 04:50:03,572.572 INFO    ] 2026-10-28 04:50:03
[2026-10-28 04:50:03,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:50:03,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:50:03,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:50:04,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:50:04,136.136 INFO    ] time= 28/10/2026 04:50:04
[2026-10-28 04:50:04,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:50:04,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:50:04,290.290 INFO    ] No existing commands found in stream
[2026-10-28 04:50:09,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:50:09,308.308 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 04:50:12,179.179 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:50:12,182.182 INFO    ] Checking for system updates...
[2026-10-28 04:50:12,218.218 INFO    ] 200
[2026-10-28 04:50:12,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:50:12,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:50:12,280.280 INFO    ] No update needed
[2026-10-28 04:50:12,283.283 INFO    ] Checking for camera pi updates...
[2026-10-28 04:50:12,316.316 INFO    ] 200
[2026-10-28 04:50:12,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:50:12,364.364 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:50:12,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:50:12,445.445 INFO    ] No camera update needed
[2026-10-28 04:50:12,448.448 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:50:12,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:50:12,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:50:12,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:50:14,503.503 INFO    ] ================================================
[2026-10-28 04:50:14,519.519 INFO    ] Launching Daemon at Wed Oct 28 04:50:14 IST 2026
[2026-10-28 04:50:14,529.529 INFO    ] ================================================
[2026-10-28 04:50:15,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:50:15
[2026-10-28 04:50:15,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:50:15,931.931 INFO    ] Initializing speech engine...
[2026-10-28 04:50:15,954.954 INFO    ] 2026-10-28 04:50:15
[2026-10-28 04:50:16,210.210 INFO    ] 2026-10-28 04:50:16
[2026-10-28 04:50:16,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:50:16,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:50:16,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:50:16,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:50:16,779.779 INFO    ] time= 28/10/2026 04:50:16
[2026-10-28 04:50:16,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:50:16,801.801 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:50:16,935.935 INFO    ] No existing commands found in stream
[2026-10-28 04:50:21,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:50:21,952.952 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 04:50:24,636.636 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:50:24,639.639 INFO    ] Checking for system updates...
[2026-10-28 04:50:24,674.674 INFO    ] 200
[2026-10-28 04:50:24,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:50:24,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:50:24,730.730 INFO    ] No update needed
[2026-10-28 04:50:24,733.733 INFO    ] Checking for camera pi updates...
[2026-10-28 04:50:24,766.766 INFO    ] 200
[2026-10-28 04:50:24,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:50:24,809.809 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:50:24,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:50:24,896.896 INFO    ] No camera update needed
[2026-10-28 04:50:24,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:50:24,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:50:24,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:50:24,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:50:26,953.953 INFO    ] ================================================
[2026-10-28 04:50:26,968.968 INFO    ] Launching Daemon at Wed Oct 28 04:50:26 IST 2026
[2026-10-28 04:50:26,979.979 INFO    ] ================================================
[2026-10-28 04:50:27,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:50:27
[2026-10-28 04:50:28,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:50:28,424.424 INFO    ] Initializing speech engine...
[2026-10-28 04:50:28,432.432 INFO    ] 2026-10-28 04:50:28
[2026-10-28 04:50:28,723.723 INFO    ] 2026-10-28 04:50:28
[2026-10-28 04:50:28,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:50:29,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:50:29,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:50:29,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:50:29,284.284 INFO    ] time= 28/10/2026 04:50:29
[2026-10-28 04:50:29,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:50:29,325.325 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:50:29,439.439 INFO    ] No existing commands found in stream
[2026-10-28 04:50:34,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:50:34,462.462 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-28 04:50:36,878.878 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:50:36,881.881 INFO    ] Checking for system updates...
[2026-10-28 04:50:36,918.918 INFO    ] 200
[2026-10-28 04:50:36,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:50:36,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:50:36,985.985 INFO    ] No update needed
[2026-10-28 04:50:36,988.988 INFO    ] Checking for camera pi updates...
[2026-10-28 04:50:37,023.023 INFO    ] 200
[2026-10-28 04:50:37,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:50:37,080.080 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:50:37,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:50:37,187.187 INFO    ] No camera update needed
[2026-10-28 04:50:37,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:50:37,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:50:37,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:50:37,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:50:39,244.244 INFO    ] ================================================
[2026-10-28 04:50:39,259.259 INFO    ] Launching Daemon at Wed Oct 28 04:50:39 IST 2026
[2026-10-28 04:50:39,270.270 INFO    ] ================================================
[2026-10-28 04:50:39,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:50:39
[2026-10-28 04:50:40,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:50:40,732.732 INFO    ] Initializing speech engine...
[2026-10-28 04:50:40,739.739 INFO    ] 2026-10-28 04:50:40
[2026-10-28 04:50:41,000.000 INFO    ] 2026-10-28 04:50:40
[2026-10-28 04:50:41,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:50:41,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:50:41,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:50:41,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:50:41,545.545 INFO    ] time= 28/10/2026 04:50:41
[2026-10-28 04:50:41,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:50:41,572.572 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:50:41,697.697 INFO    ] No existing commands found in stream
[2026-10-28 04:50:46,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:50:46,715.715 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-28 04:50:49,455.455 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:50:49,458.458 INFO    ] Checking for system updates...
[2026-10-28 04:50:49,493.493 INFO    ] 200
[2026-10-28 04:50:49,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:50:49,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:50:49,550.550 INFO    ] No update needed
[2026-10-28 04:50:49,552.552 INFO    ] Checking for camera pi updates...
[2026-10-28 04:50:49,587.587 INFO    ] 200
[2026-10-28 04:50:49,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:50:49,630.630 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:50:49,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:50:49,723.723 INFO    ] No camera update needed
[2026-10-28 04:50:49,726.726 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:50:49,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:50:49,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:50:49,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:50:51,777.777 INFO    ] ================================================
[2026-10-28 04:50:51,792.792 INFO    ] Launching Daemon at Wed Oct 28 04:50:51 IST 2026
[2026-10-28 04:50:51,803.803 INFO    ] ================================================
[2026-10-28 04:50:52,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:50:52
[2026-10-28 04:50:52,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:50:53,221.221 INFO    ] Initializing speech engine...
[2026-10-28 04:50:53,230.230 INFO    ] 2026-10-28 04:50:53
[2026-10-28 04:50:53,477.477 INFO    ] 2026-10-28 04:50:53
[2026-10-28 04:50:53,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:50:53,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:50:53,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:50:54,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:50:54,031.031 INFO    ] time= 28/10/2026 04:50:54
[2026-10-28 04:50:54,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:50:54,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:50:54,187.187 INFO    ] No existing commands found in stream
[2026-10-28 04:50:59,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:50:59,212.212 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-28 04:51:00,835.835 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:51:00,837.837 INFO    ] Checking for system updates...
[2026-10-28 04:51:00,873.873 INFO    ] 200
[2026-10-28 04:51:00,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:51:00,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:51:00,930.930 INFO    ] No update needed
[2026-10-28 04:51:00,933.933 INFO    ] Checking for camera pi updates...
[2026-10-28 04:51:00,967.967 INFO    ] 200
[2026-10-28 04:51:00,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:51:01,011.011 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:51:01,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:51:01,093.093 INFO    ] No camera update needed
[2026-10-28 04:51:01,096.096 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:51:01,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:51:01,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:51:01,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:51:03,153.153 INFO    ] ================================================
[2026-10-28 04:51:03,177.177 INFO    ] Launching Daemon at Wed Oct 28 04:51:03 IST 2026
[2026-10-28 04:51:03,194.194 INFO    ] ================================================
[2026-10-28 04:51:03,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:51:03
[2026-10-28 04:51:04,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:51:04,714.714 INFO    ] Initializing speech engine...
[2026-10-28 04:51:04,724.724 INFO    ] 2026-10-28 04:51:04
[2026-10-28 04:51:04,987.987 INFO    ] 2026-10-28 04:51:04
[2026-10-28 04:51:05,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:51:05,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:51:05,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:51:05,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:51:05,548.548 INFO    ] time= 28/10/2026 04:51:05
[2026-10-28 04:51:05,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:51:05,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:51:05,692.692 INFO    ] No existing commands found in stream
[2026-10-28 04:51:10,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:51:10,719.719 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-28 04:51:11,655.655 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:51:11,658.658 INFO    ] Checking for system updates...
[2026-10-28 04:51:11,695.695 INFO    ] 200
[2026-10-28 04:51:11,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:51:11,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:51:11,759.759 INFO    ] No update needed
[2026-10-28 04:51:11,761.761 INFO    ] Checking for camera pi updates...
[2026-10-28 04:51:11,795.795 INFO    ] 200
[2026-10-28 04:51:11,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:51:11,838.838 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:51:11,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:51:11,945.945 INFO    ] No camera update needed
[2026-10-28 04:51:11,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:51:11,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:51:11,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:51:11,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:51:14,002.002 INFO    ] ================================================
[2026-10-28 04:51:14,018.018 INFO    ] Launching Daemon at Wed Oct 28 04:51:14 IST 2026
[2026-10-28 04:51:14,028.028 INFO    ] ================================================
[2026-10-28 04:51:14,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:51:14
[2026-10-28 04:51:15,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:51:15,673.673 INFO    ] Initializing speech engine...
[2026-10-28 04:51:15,687.687 INFO    ] 2026-10-28 04:51:15
[2026-10-28 04:51:15,974.974 INFO    ] 2026-10-28 04:51:15
[2026-10-28 04:51:16,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:51:16,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:51:16,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:51:16,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:51:16,548.548 INFO    ] time= 28/10/2026 04:51:16
[2026-10-28 04:51:16,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:51:16,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:51:16,720.720 INFO    ] No existing commands found in stream
[2026-10-28 04:51:21,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:51:21,755.755 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-28 04:51:26,185.185 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:51:26,188.188 INFO    ] Checking for system updates...
[2026-10-28 04:51:26,224.224 INFO    ] 200
[2026-10-28 04:51:26,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:51:26,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:51:26,282.282 INFO    ] No update needed
[2026-10-28 04:51:26,285.285 INFO    ] Checking for camera pi updates...
[2026-10-28 04:51:26,319.319 INFO    ] 200
[2026-10-28 04:51:26,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:51:26,367.367 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:51:26,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:51:26,562.562 INFO    ] No camera update needed
[2026-10-28 04:51:26,565.565 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:51:26,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:51:26,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:51:26,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:51:28,622.622 INFO    ] ================================================
[2026-10-28 04:51:28,637.637 INFO    ] Launching Daemon at Wed Oct 28 04:51:28 IST 2026
[2026-10-28 04:51:28,647.647 INFO    ] ================================================
[2026-10-28 04:51:29,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:51:29
[2026-10-28 04:51:29,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:51:30,176.176 INFO    ] Initializing speech engine...
[2026-10-28 04:51:30,185.185 INFO    ] 2026-10-28 04:51:30
[2026-10-28 04:51:30,476.476 INFO    ] 2026-10-28 04:51:30
[2026-10-28 04:51:30,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:51:30,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:51:30,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:51:31,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:51:31,029.029 INFO    ] time= 28/10/2026 04:51:31
[2026-10-28 04:51:31,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:51:31,053.053 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:51:31,178.178 INFO    ] No existing commands found in stream
[2026-10-28 04:51:36,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:51:36,207.207 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-28 04:51:38,902.902 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:51:38,905.905 INFO    ] Checking for system updates...
[2026-10-28 04:51:38,944.944 INFO    ] 200
[2026-10-28 04:51:38,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:51:39,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:51:39,002.002 INFO    ] No update needed
[2026-10-28 04:51:39,005.005 INFO    ] Checking for camera pi updates...
[2026-10-28 04:51:39,040.040 INFO    ] 200
[2026-10-28 04:51:39,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:51:39,089.089 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:51:39,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:51:39,169.169 INFO    ] No camera update needed
[2026-10-28 04:51:39,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:51:39,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:51:39,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:51:39,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:51:41,224.224 INFO    ] ================================================
[2026-10-28 04:51:41,239.239 INFO    ] Launching Daemon at Wed Oct 28 04:51:41 IST 2026
[2026-10-28 04:51:41,249.249 INFO    ] ================================================
[2026-10-28 04:51:41,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:51:41
[2026-10-28 04:51:42,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:51:42,888.888 INFO    ] Initializing speech engine...
[2026-10-28 04:51:42,895.895 INFO    ] 2026-10-28 04:51:42
[2026-10-28 04:51:43,178.178 INFO    ] 2026-10-28 04:51:43
[2026-10-28 04:51:43,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:51:43,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:51:43,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:51:43,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:51:43,734.734 INFO    ] time= 28/10/2026 04:51:43
[2026-10-28 04:51:43,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:51:43,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:51:43,919.919 INFO    ] No existing commands found in stream
[2026-10-28 04:51:48,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:51:48,954.954 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 04:51:53,419.419 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:51:53,422.422 INFO    ] Checking for system updates...
[2026-10-28 04:51:53,462.462 INFO    ] 200
[2026-10-28 04:51:53,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:51:53,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:51:53,522.522 INFO    ] No update needed
[2026-10-28 04:51:53,525.525 INFO    ] Checking for camera pi updates...
[2026-10-28 04:51:53,563.563 INFO    ] 200
[2026-10-28 04:51:53,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:51:53,607.607 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:51:53,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:51:53,691.691 INFO    ] No camera update needed
[2026-10-28 04:51:53,694.694 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:51:53,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:51:53,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:51:53,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:51:55,749.749 INFO    ] ================================================
[2026-10-28 04:51:55,764.764 INFO    ] Launching Daemon at Wed Oct 28 04:51:55 IST 2026
[2026-10-28 04:51:55,774.774 INFO    ] ================================================
[2026-10-28 04:51:56,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:51:56
[2026-10-28 04:51:56,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:51:57,205.205 INFO    ] Initializing speech engine...
[2026-10-28 04:51:57,232.232 INFO    ] 2026-10-28 04:51:57
[2026-10-28 04:51:57,508.508 INFO    ] 2026-10-28 04:51:57
[2026-10-28 04:51:57,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:51:57,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:51:57,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:51:58,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:51:58,069.069 INFO    ] time= 28/10/2026 04:51:58
[2026-10-28 04:51:58,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:51:58,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:51:58,186.186 INFO    ] No existing commands found in stream
[2026-10-28 04:52:03,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:52:03,217.217 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-28 04:52:04,979.979 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:52:04,982.982 INFO    ] Checking for system updates...
[2026-10-28 04:52:05,017.017 INFO    ] 200
[2026-10-28 04:52:05,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:52:05,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:52:05,075.075 INFO    ] No update needed
[2026-10-28 04:52:05,078.078 INFO    ] Checking for camera pi updates...
[2026-10-28 04:52:05,114.114 INFO    ] 200
[2026-10-28 04:52:05,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:52:05,161.161 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:52:05,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:52:05,249.249 INFO    ] No camera update needed
[2026-10-28 04:52:05,252.252 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:52:05,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:52:05,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:52:05,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:52:07,307.307 INFO    ] ================================================
[2026-10-28 04:52:07,322.322 INFO    ] Launching Daemon at Wed Oct 28 04:52:07 IST 2026
[2026-10-28 04:52:07,333.333 INFO    ] ================================================
[2026-10-28 04:52:07,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:52:07
[2026-10-28 04:52:08,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:52:08,782.782 INFO    ] Initializing speech engine...
[2026-10-28 04:52:08,805.805 INFO    ] 2026-10-28 04:52:08
[2026-10-28 04:52:09,057.057 INFO    ] 2026-10-28 04:52:09
[2026-10-28 04:52:09,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:52:09,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:52:09,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:52:09,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:52:09,628.628 INFO    ] time= 28/10/2026 04:52:09
[2026-10-28 04:52:09,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:52:09,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:52:09,800.800 INFO    ] No existing commands found in stream
[2026-10-28 04:52:14,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:52:14,833.833 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-28 04:52:15,723.723 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:52:15,726.726 INFO    ] Checking for system updates...
[2026-10-28 04:52:15,763.763 INFO    ] 200
[2026-10-28 04:52:15,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:52:15,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:52:15,822.822 INFO    ] No update needed
[2026-10-28 04:52:15,825.825 INFO    ] Checking for camera pi updates...
[2026-10-28 04:52:15,859.859 INFO    ] 200
[2026-10-28 04:52:15,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:52:15,903.903 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:52:15,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:52:15,987.987 INFO    ] No camera update needed
[2026-10-28 04:52:15,990.990 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:52:15,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:52:15,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:52:16,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:52:18,046.046 INFO    ] ================================================
[2026-10-28 04:52:18,062.062 INFO    ] Launching Daemon at Wed Oct 28 04:52:18 IST 2026
[2026-10-28 04:52:18,073.073 INFO    ] ================================================
[2026-10-28 04:52:18,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:52:18
[2026-10-28 04:52:19,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:52:19,674.674 INFO    ] Initializing speech engine...
[2026-10-28 04:52:19,686.686 INFO    ] 2026-10-28 04:52:19
[2026-10-28 04:52:19,993.993 INFO    ] 2026-10-28 04:52:19
[2026-10-28 04:52:20,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:52:20,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:52:20,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:52:20,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:52:20,516.516 INFO    ] time= 28/10/2026 04:52:20
[2026-10-28 04:52:20,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:52:20,560.560 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:52:20,672.672 INFO    ] No existing commands found in stream
[2026-10-28 04:52:25,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:52:25,706.706 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 04:52:29,481.481 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:52:29,484.484 INFO    ] Checking for system updates...
[2026-10-28 04:52:29,520.520 INFO    ] 200
[2026-10-28 04:52:29,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:52:29,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:52:29,579.579 INFO    ] No update needed
[2026-10-28 04:52:29,581.581 INFO    ] Checking for camera pi updates...
[2026-10-28 04:52:29,617.617 INFO    ] 200
[2026-10-28 04:52:29,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:52:29,661.661 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:52:29,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:52:29,769.769 INFO    ] No camera update needed
[2026-10-28 04:52:29,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:52:29,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:52:29,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:52:29,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:52:31,828.828 INFO    ] ================================================
[2026-10-28 04:52:31,843.843 INFO    ] Launching Daemon at Wed Oct 28 04:52:31 IST 2026
[2026-10-28 04:52:31,854.854 INFO    ] ================================================
[2026-10-28 04:52:32,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:52:32
[2026-10-28 04:52:33,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:52:33,375.375 INFO    ] Initializing speech engine...
[2026-10-28 04:52:33,380.380 INFO    ] 2026-10-28 04:52:33
[2026-10-28 04:52:33,673.673 INFO    ] 2026-10-28 04:52:33
[2026-10-28 04:52:33,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:52:33,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:52:33,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:52:34,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:52:34,239.239 INFO    ] time= 28/10/2026 04:52:34
[2026-10-28 04:52:34,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:52:34,263.263 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:52:34,400.400 INFO    ] No existing commands found in stream
[2026-10-28 04:52:39,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:52:39,436.436 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-28 04:52:42,996.996 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:52:42,999.999 INFO    ] Checking for system updates...
[2026-10-28 04:52:43,036.036 INFO    ] 200
[2026-10-28 04:52:43,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:52:43,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:52:43,101.101 INFO    ] No update needed
[2026-10-28 04:52:43,104.104 INFO    ] Checking for camera pi updates...
[2026-10-28 04:52:43,141.141 INFO    ] 200
[2026-10-28 04:52:43,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:52:43,190.190 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:52:43,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:52:43,285.285 INFO    ] No camera update needed
[2026-10-28 04:52:43,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:52:43,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:52:43,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:52:43,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:52:45,346.346 INFO    ] ================================================
[2026-10-28 04:52:45,362.362 INFO    ] Launching Daemon at Wed Oct 28 04:52:45 IST 2026
[2026-10-28 04:52:45,380.380 INFO    ] ================================================
[2026-10-28 04:52:45,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:52:45
[2026-10-28 04:52:46,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:52:46,797.797 INFO    ] Initializing speech engine...
[2026-10-28 04:52:46,805.805 INFO    ] 2026-10-28 04:52:46
[2026-10-28 04:52:47,101.101 INFO    ] 2026-10-28 04:52:47
[2026-10-28 04:52:47,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:52:47,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:52:47,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:52:47,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:52:47,702.702 INFO    ] time= 28/10/2026 04:52:47
[2026-10-28 04:52:47,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:52:47,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:52:47,925.925 INFO    ] No existing commands found in stream
[2026-10-28 04:52:52,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:52:52,966.966 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-28 04:52:54,061.061 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:52:54,064.064 INFO    ] Checking for system updates...
[2026-10-28 04:52:54,101.101 INFO    ] 200
[2026-10-28 04:52:54,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:52:54,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:52:54,160.160 INFO    ] No update needed
[2026-10-28 04:52:54,163.163 INFO    ] Checking for camera pi updates...
[2026-10-28 04:52:54,198.198 INFO    ] 200
[2026-10-28 04:52:54,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:52:54,242.242 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:52:54,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:52:54,330.330 INFO    ] No camera update needed
[2026-10-28 04:52:54,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:52:54,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:52:54,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:52:54,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:52:56,390.390 INFO    ] ================================================
[2026-10-28 04:52:56,406.406 INFO    ] Launching Daemon at Wed Oct 28 04:52:56 IST 2026
[2026-10-28 04:52:56,417.417 INFO    ] ================================================
[2026-10-28 04:52:57,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:52:57
[2026-10-28 04:52:57,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:52:58,031.031 INFO    ] Initializing speech engine...
[2026-10-28 04:52:58,047.047 INFO    ] 2026-10-28 04:52:58
[2026-10-28 04:52:58,332.332 INFO    ] 2026-10-28 04:52:58
[2026-10-28 04:52:58,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:52:58,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:52:58,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:52:58,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:52:58,894.894 INFO    ] time= 28/10/2026 04:52:58
[2026-10-28 04:52:58,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:52:58,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:52:59,055.055 INFO    ] No existing commands found in stream
[2026-10-28 04:53:04,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:53:04,086.086 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 04:53:06,019.019 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:53:06,022.022 INFO    ] Checking for system updates...
[2026-10-28 04:53:06,058.058 INFO    ] 200
[2026-10-28 04:53:06,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:53:06,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:53:06,118.118 INFO    ] No update needed
[2026-10-28 04:53:06,120.120 INFO    ] Checking for camera pi updates...
[2026-10-28 04:53:06,155.155 INFO    ] 200
[2026-10-28 04:53:06,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:53:06,199.199 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:53:06,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:53:06,286.286 INFO    ] No camera update needed
[2026-10-28 04:53:06,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:53:06,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:53:06,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:53:06,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:53:08,344.344 INFO    ] ================================================
[2026-10-28 04:53:08,360.360 INFO    ] Launching Daemon at Wed Oct 28 04:53:08 IST 2026
[2026-10-28 04:53:08,371.371 INFO    ] ================================================
[2026-10-28 04:53:08,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:53:08
[2026-10-28 04:53:09,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:53:09,849.849 INFO    ] Initializing speech engine...
[2026-10-28 04:53:09,862.862 INFO    ] 2026-10-28 04:53:09
[2026-10-28 04:53:10,128.128 INFO    ] 2026-10-28 04:53:10
[2026-10-28 04:53:10,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:53:10,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:53:10,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:53:10,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:53:10,683.683 INFO    ] time= 28/10/2026 04:53:10
[2026-10-28 04:53:10,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:53:10,713.713 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:53:10,844.844 INFO    ] No existing commands found in stream
[2026-10-28 04:53:15,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:53:15,874.874 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-28 04:53:17,756.756 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:53:17,759.759 INFO    ] Checking for system updates...
[2026-10-28 04:53:17,795.795 INFO    ] 200
[2026-10-28 04:53:17,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:53:17,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:53:17,855.855 INFO    ] No update needed
[2026-10-28 04:53:17,857.857 INFO    ] Checking for camera pi updates...
[2026-10-28 04:53:17,890.890 INFO    ] 200
[2026-10-28 04:53:17,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:53:17,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:53:18,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:53:18,021.021 INFO    ] No camera update needed
[2026-10-28 04:53:18,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:53:18,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:53:18,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:53:18,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:53:20,076.076 INFO    ] ================================================
[2026-10-28 04:53:20,092.092 INFO    ] Launching Daemon at Wed Oct 28 04:53:20 IST 2026
[2026-10-28 04:53:20,103.103 INFO    ] ================================================
[2026-10-28 04:53:20,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:53:20
[2026-10-28 04:53:21,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:53:21,678.678 INFO    ] Initializing speech engine...
[2026-10-28 04:53:21,685.685 INFO    ] 2026-10-28 04:53:21
[2026-10-28 04:53:21,958.958 INFO    ] 2026-10-28 04:53:21
[2026-10-28 04:53:22,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:53:22,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:53:22,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:53:22,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:53:22,526.526 INFO    ] time= 28/10/2026 04:53:22
[2026-10-28 04:53:22,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:53:22,565.565 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:53:22,736.736 INFO    ] No existing commands found in stream
[2026-10-28 04:53:27,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:53:27,765.765 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 04:53:29,812.812 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:53:29,815.815 INFO    ] Checking for system updates...
[2026-10-28 04:53:29,853.853 INFO    ] 200
[2026-10-28 04:53:29,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:53:29,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:53:29,922.922 INFO    ] No update needed
[2026-10-28 04:53:29,926.926 INFO    ] Checking for camera pi updates...
[2026-10-28 04:53:29,965.965 INFO    ] 200
[2026-10-28 04:53:29,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:53:30,018.018 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:53:30,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:53:30,208.208 INFO    ] No camera update needed
[2026-10-28 04:53:30,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:53:30,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:53:30,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:53:30,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:53:32,269.269 INFO    ] ================================================
[2026-10-28 04:53:32,294.294 INFO    ] Launching Daemon at Wed Oct 28 04:53:32 IST 2026
[2026-10-28 04:53:32,306.306 INFO    ] ================================================
[2026-10-28 04:53:32,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:53:32
[2026-10-28 04:53:33,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:53:33,837.837 INFO    ] Initializing speech engine...
[2026-10-28 04:53:33,857.857 INFO    ] 2026-10-28 04:53:33
[2026-10-28 04:53:34,107.107 INFO    ] 2026-10-28 04:53:34
[2026-10-28 04:53:34,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:53:34,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:53:34,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:53:34,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:53:34,642.642 INFO    ] time= 28/10/2026 04:53:34
[2026-10-28 04:53:34,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:53:34,688.688 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:53:34,838.838 INFO    ] No existing commands found in stream
[2026-10-28 04:53:39,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:53:39,855.855 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-28 04:53:40,862.862 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:53:40,865.865 INFO    ] Checking for system updates...
[2026-10-28 04:53:40,909.909 INFO    ] 200
[2026-10-28 04:53:40,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:53:40,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:53:40,971.971 INFO    ] No update needed
[2026-10-28 04:53:40,974.974 INFO    ] Checking for camera pi updates...
[2026-10-28 04:53:41,008.008 INFO    ] 200
[2026-10-28 04:53:41,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:53:41,050.050 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:53:41,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:53:41,158.158 INFO    ] No camera update needed
[2026-10-28 04:53:41,160.160 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:53:41,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:53:41,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:53:41,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:53:43,214.214 INFO    ] ================================================
[2026-10-28 04:53:43,229.229 INFO    ] Launching Daemon at Wed Oct 28 04:53:43 IST 2026
[2026-10-28 04:53:43,240.240 INFO    ] ================================================
[2026-10-28 04:53:43,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:53:43
[2026-10-28 04:53:44,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:53:44,859.859 INFO    ] Initializing speech engine...
[2026-10-28 04:53:44,870.870 INFO    ] 2026-10-28 04:53:44
[2026-10-28 04:53:45,150.150 INFO    ] 2026-10-28 04:53:45
[2026-10-28 04:53:45,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:53:45,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:53:45,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:53:45,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:53:45,719.719 INFO    ] time= 28/10/2026 04:53:45
[2026-10-28 04:53:45,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:53:45,758.758 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:53:45,897.897 INFO    ] No existing commands found in stream
[2026-10-28 04:53:50,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:53:50,937.937 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 04:53:52,236.236 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:53:52,239.239 INFO    ] Checking for system updates...
[2026-10-28 04:53:52,275.275 INFO    ] 200
[2026-10-28 04:53:52,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:53:52,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:53:52,332.332 INFO    ] No update needed
[2026-10-28 04:53:52,335.335 INFO    ] Checking for camera pi updates...
[2026-10-28 04:53:52,368.368 INFO    ] 200
[2026-10-28 04:53:52,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:53:52,410.410 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:53:52,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:53:52,515.515 INFO    ] No camera update needed
[2026-10-28 04:53:52,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:53:52,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:53:52,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:53:52,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:53:54,571.571 INFO    ] ================================================
[2026-10-28 04:53:54,586.586 INFO    ] Launching Daemon at Wed Oct 28 04:53:54 IST 2026
[2026-10-28 04:53:54,597.597 INFO    ] ================================================
[2026-10-28 04:53:55,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:53:55
[2026-10-28 04:53:55,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:53:56,059.059 INFO    ] Initializing speech engine...
[2026-10-28 04:53:56,069.069 INFO    ] 2026-10-28 04:53:56
[2026-10-28 04:53:56,325.325 INFO    ] 2026-10-28 04:53:56
[2026-10-28 04:53:56,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:53:56,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:53:56,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:53:56,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:53:56,895.895 INFO    ] time= 28/10/2026 04:53:56
[2026-10-28 04:53:56,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:53:56,949.949 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:53:57,124.124 INFO    ] No existing commands found in stream
[2026-10-28 04:54:02,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:54:02,157.157 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-28 04:54:03,514.514 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:54:03,517.517 INFO    ] Checking for system updates...
[2026-10-28 04:54:03,553.553 INFO    ] 200
[2026-10-28 04:54:03,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:54:03,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:54:03,611.611 INFO    ] No update needed
[2026-10-28 04:54:03,613.613 INFO    ] Checking for camera pi updates...
[2026-10-28 04:54:03,651.651 INFO    ] 200
[2026-10-28 04:54:03,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:54:03,694.694 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:54:03,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:54:03,778.778 INFO    ] No camera update needed
[2026-10-28 04:54:03,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:54:03,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:54:03,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:54:03,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:54:05,834.834 INFO    ] ================================================
[2026-10-28 04:54:05,849.849 INFO    ] Launching Daemon at Wed Oct 28 04:54:05 IST 2026
[2026-10-28 04:54:05,859.859 INFO    ] ================================================
[2026-10-28 04:54:06,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:54:06
[2026-10-28 04:54:07,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:54:07,483.483 INFO    ] Initializing speech engine...
[2026-10-28 04:54:07,490.490 INFO    ] 2026-10-28 04:54:07
[2026-10-28 04:54:07,776.776 INFO    ] 2026-10-28 04:54:07
[2026-10-28 04:54:07,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:54:08,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:54:08,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:54:08,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:54:08,466.466 INFO    ] time= 28/10/2026 04:54:08
[2026-10-28 04:54:08,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:54:08,565.565 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:54:08,704.704 INFO    ] No existing commands found in stream
[2026-10-28 04:54:13,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:54:13,721.721 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-28 04:54:16,996.996 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:54:16,999.999 INFO    ] Checking for system updates...
[2026-10-28 04:54:17,036.036 INFO    ] 200
[2026-10-28 04:54:17,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:54:17,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:54:17,096.096 INFO    ] No update needed
[2026-10-28 04:54:17,098.098 INFO    ] Checking for camera pi updates...
[2026-10-28 04:54:17,133.133 INFO    ] 200
[2026-10-28 04:54:17,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:54:17,177.177 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:54:17,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:54:17,232.232 INFO    ] No camera update needed
[2026-10-28 04:54:17,234.234 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:54:17,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:54:17,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:54:17,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:54:19,292.292 INFO    ] ================================================
[2026-10-28 04:54:19,307.307 INFO    ] Launching Daemon at Wed Oct 28 04:54:19 IST 2026
[2026-10-28 04:54:19,318.318 INFO    ] ================================================
[2026-10-28 04:54:19,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:54:19
[2026-10-28 04:54:20,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:54:20,951.951 INFO    ] Initializing speech engine...
[2026-10-28 04:54:20,962.962 INFO    ] 2026-10-28 04:54:20
[2026-10-28 04:54:21,246.246 INFO    ] 2026-10-28 04:54:21
[2026-10-28 04:54:21,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:54:21,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:54:21,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:54:21,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:54:21,800.800 INFO    ] time= 28/10/2026 04:54:21
[2026-10-28 04:54:21,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:54:21,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:54:21,976.976 INFO    ] No existing commands found in stream
[2026-10-28 04:54:27,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:54:27,004.004 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 04:54:28,699.699 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:54:28,702.702 INFO    ] Checking for system updates...
[2026-10-28 04:54:28,737.737 INFO    ] 200
[2026-10-28 04:54:28,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:54:28,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:54:28,794.794 INFO    ] No update needed
[2026-10-28 04:54:28,796.796 INFO    ] Checking for camera pi updates...
[2026-10-28 04:54:28,834.834 INFO    ] 200
[2026-10-28 04:54:28,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:54:28,880.880 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:54:28,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:54:28,963.963 INFO    ] No camera update needed
[2026-10-28 04:54:28,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:54:28,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:54:28,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:54:28,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:54:31,018.018 INFO    ] ================================================
[2026-10-28 04:54:31,033.033 INFO    ] Launching Daemon at Wed Oct 28 04:54:31 IST 2026
[2026-10-28 04:54:31,044.044 INFO    ] ================================================
[2026-10-28 04:54:31,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:54:31
[2026-10-28 04:54:32,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:54:32,786.786 INFO    ] Initializing speech engine...
[2026-10-28 04:54:32,796.796 INFO    ] 2026-10-28 04:54:32
[2026-10-28 04:54:33,110.110 INFO    ] 2026-10-28 04:54:33
[2026-10-28 04:54:33,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:54:33,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:54:33,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:54:33,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:54:33,667.667 INFO    ] time= 28/10/2026 04:54:33
[2026-10-28 04:54:33,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:54:33,685.685 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:54:33,792.792 INFO    ] No existing commands found in stream
[2026-10-28 04:54:38,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:54:38,815.815 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-28 04:54:39,717.717 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:54:39,719.719 INFO    ] Checking for system updates...
[2026-10-28 04:54:39,758.758 INFO    ] 200
[2026-10-28 04:54:39,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:54:39,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:54:39,815.815 INFO    ] No update needed
[2026-10-28 04:54:39,817.817 INFO    ] Checking for camera pi updates...
[2026-10-28 04:54:39,850.850 INFO    ] 200
[2026-10-28 04:54:39,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:54:39,898.898 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:54:39,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:54:39,989.989 INFO    ] No camera update needed
[2026-10-28 04:54:39,991.991 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:54:39,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:54:39,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:54:40,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:54:42,046.046 INFO    ] ================================================
[2026-10-28 04:54:42,062.062 INFO    ] Launching Daemon at Wed Oct 28 04:54:42 IST 2026
[2026-10-28 04:54:42,072.072 INFO    ] ================================================
[2026-10-28 04:54:42,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:54:42
[2026-10-28 04:54:43,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:54:43,528.528 INFO    ] Initializing speech engine...
[2026-10-28 04:54:43,535.535 INFO    ] 2026-10-28 04:54:43
[2026-10-28 04:54:43,796.796 INFO    ] 2026-10-28 04:54:43
[2026-10-28 04:54:43,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:54:44,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:54:44,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:54:44,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:54:44,354.354 INFO    ] time= 28/10/2026 04:54:44
[2026-10-28 04:54:44,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:54:44,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:54:44,516.516 INFO    ] No existing commands found in stream
[2026-10-28 04:54:49,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:54:49,549.549 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-28 04:54:53,993.993 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:54:53,996.996 INFO    ] Checking for system updates...
[2026-10-28 04:54:54,032.032 INFO    ] 200
[2026-10-28 04:54:54,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:54:54,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:54:54,091.091 INFO    ] No update needed
[2026-10-28 04:54:54,093.093 INFO    ] Checking for camera pi updates...
[2026-10-28 04:54:54,128.128 INFO    ] 200
[2026-10-28 04:54:54,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:54:54,171.171 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:54:54,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:54:54,275.275 INFO    ] No camera update needed
[2026-10-28 04:54:54,278.278 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:54:54,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:54:54,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:54:54,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:54:56,333.333 INFO    ] ================================================
[2026-10-28 04:54:56,348.348 INFO    ] Launching Daemon at Wed Oct 28 04:54:56 IST 2026
[2026-10-28 04:54:56,359.359 INFO    ] ================================================
[2026-10-28 04:54:56,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:54:56
[2026-10-28 04:54:57,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:54:57,860.860 INFO    ] Initializing speech engine...
[2026-10-28 04:54:57,866.866 INFO    ] 2026-10-28 04:54:57
[2026-10-28 04:54:58,139.139 INFO    ] 2026-10-28 04:54:58
[2026-10-28 04:54:58,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:54:58,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:54:58,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:54:58,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:54:58,758.758 INFO    ] time= 28/10/2026 04:54:58
[2026-10-28 04:54:58,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:54:58,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:54:59,001.001 INFO    ] No existing commands found in stream
[2026-10-28 04:55:04,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:55:04,028.028 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-28 04:55:05,221.221 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:55:05,224.224 INFO    ] Checking for system updates...
[2026-10-28 04:55:05,260.260 INFO    ] 200
[2026-10-28 04:55:05,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:55:05,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:55:05,326.326 INFO    ] No update needed
[2026-10-28 04:55:05,328.328 INFO    ] Checking for camera pi updates...
[2026-10-28 04:55:05,364.364 INFO    ] 200
[2026-10-28 04:55:05,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:55:05,406.406 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:55:05,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:55:05,472.472 INFO    ] No camera update needed
[2026-10-28 04:55:05,474.474 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:55:05,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:55:05,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:55:05,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:55:07,527.527 INFO    ] ================================================
[2026-10-28 04:55:07,542.542 INFO    ] Launching Daemon at Wed Oct 28 04:55:07 IST 2026
[2026-10-28 04:55:07,552.552 INFO    ] ================================================
[2026-10-28 04:55:08,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:55:08
[2026-10-28 04:55:08,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:55:08,981.981 INFO    ] Initializing speech engine...
[2026-10-28 04:55:08,996.996 INFO    ] 2026-10-28 04:55:08
[2026-10-28 04:55:09,275.275 INFO    ] 2026-10-28 04:55:09
[2026-10-28 04:55:09,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:55:09,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:55:09,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:55:09,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:55:09,751.751 INFO    ] time= 28/10/2026 04:55:09
[2026-10-28 04:55:09,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:55:09,842.842 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:55:09,970.970 INFO    ] No existing commands found in stream
[2026-10-28 04:55:14,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:55:14,998.998 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 04:55:15,695.695 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:55:15,697.697 INFO    ] Checking for system updates...
[2026-10-28 04:55:15,736.736 INFO    ] 200
[2026-10-28 04:55:15,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:55:15,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:55:15,793.793 INFO    ] No update needed
[2026-10-28 04:55:15,796.796 INFO    ] Checking for camera pi updates...
[2026-10-28 04:55:15,832.832 INFO    ] 200
[2026-10-28 04:55:15,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:55:15,878.878 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:55:15,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:55:15,962.962 INFO    ] No camera update needed
[2026-10-28 04:55:15,964.964 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:55:15,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:55:15,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:55:15,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:55:18,017.017 INFO    ] ================================================
[2026-10-28 04:55:18,032.032 INFO    ] Launching Daemon at Wed Oct 28 04:55:18 IST 2026
[2026-10-28 04:55:18,043.043 INFO    ] ================================================
[2026-10-28 04:55:18,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:55:18
[2026-10-28 04:55:19,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:55:19,581.581 INFO    ] Initializing speech engine...
[2026-10-28 04:55:19,588.588 INFO    ] 2026-10-28 04:55:19
[2026-10-28 04:55:19,836.836 INFO    ] 2026-10-28 04:55:19
[2026-10-28 04:55:19,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:55:20,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:55:20,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:55:20,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:55:20,393.393 INFO    ] time= 28/10/2026 04:55:20
[2026-10-28 04:55:20,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:55:20,439.439 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:55:20,570.570 INFO    ] No existing commands found in stream
[2026-10-28 04:55:25,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:55:25,604.604 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-28 04:55:26,338.338 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:55:26,340.340 INFO    ] Checking for system updates...
[2026-10-28 04:55:26,375.375 INFO    ] 200
[2026-10-28 04:55:26,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:55:26,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:55:26,439.439 INFO    ] No update needed
[2026-10-28 04:55:26,441.441 INFO    ] Checking for camera pi updates...
[2026-10-28 04:55:26,480.480 INFO    ] 200
[2026-10-28 04:55:26,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:55:26,523.523 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:55:26,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:55:26,612.612 INFO    ] No camera update needed
[2026-10-28 04:55:26,614.614 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:55:26,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:55:26,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:55:26,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:55:28,669.669 INFO    ] ================================================
[2026-10-28 04:55:28,684.684 INFO    ] Launching Daemon at Wed Oct 28 04:55:28 IST 2026
[2026-10-28 04:55:28,695.695 INFO    ] ================================================
[2026-10-28 04:55:29,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:55:29
[2026-10-28 04:55:29,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:55:30,284.284 INFO    ] Initializing speech engine...
[2026-10-28 04:55:30,290.290 INFO    ] 2026-10-28 04:55:30
[2026-10-28 04:55:30,567.567 INFO    ] 2026-10-28 04:55:30
[2026-10-28 04:55:30,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:55:30,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:55:30,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:55:31,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:55:31,139.139 INFO    ] time= 28/10/2026 04:55:31
[2026-10-28 04:55:31,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:55:31,176.176 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:55:31,283.283 INFO    ] No existing commands found in stream
[2026-10-28 04:55:36,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:55:36,308.308 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-28 04:55:37,357.357 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:55:37,360.360 INFO    ] Checking for system updates...
[2026-10-28 04:55:37,401.401 INFO    ] 200
[2026-10-28 04:55:37,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:55:37,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:55:37,470.470 INFO    ] No update needed
[2026-10-28 04:55:37,473.473 INFO    ] Checking for camera pi updates...
[2026-10-28 04:55:37,507.507 INFO    ] 200
[2026-10-28 04:55:37,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:55:37,554.554 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:55:37,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:55:37,644.644 INFO    ] No camera update needed
[2026-10-28 04:55:37,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:55:37,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:55:37,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:55:37,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:55:39,698.698 INFO    ] ================================================
[2026-10-28 04:55:39,714.714 INFO    ] Launching Daemon at Wed Oct 28 04:55:39 IST 2026
[2026-10-28 04:55:39,725.725 INFO    ] ================================================
[2026-10-28 04:55:40,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:55:40
[2026-10-28 04:55:40,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:55:41,171.171 INFO    ] Initializing speech engine...
[2026-10-28 04:55:41,180.180 INFO    ] 2026-10-28 04:55:41
[2026-10-28 04:55:41,439.439 INFO    ] 2026-10-28 04:55:41
[2026-10-28 04:55:41,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:55:41,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:55:41,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:55:41,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:55:41,993.993 INFO    ] time= 28/10/2026 04:55:41
[2026-10-28 04:55:42,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:55:42,023.023 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:55:42,144.144 INFO    ] No existing commands found in stream
[2026-10-28 04:55:47,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:55:47,159.159 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-28 04:55:47,894.894 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:55:47,897.897 INFO    ] Checking for system updates...
[2026-10-28 04:55:47,933.933 INFO    ] 200
[2026-10-28 04:55:47,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:55:47,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:55:47,998.998 INFO    ] No update needed
[2026-10-28 04:55:48,001.001 INFO    ] Checking for camera pi updates...
[2026-10-28 04:55:48,037.037 INFO    ] 200
[2026-10-28 04:55:48,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:55:48,084.084 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:55:48,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:55:48,162.162 INFO    ] No camera update needed
[2026-10-28 04:55:48,165.165 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:55:48,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:55:48,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:55:48,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:55:50,217.217 INFO    ] ================================================
[2026-10-28 04:55:50,233.233 INFO    ] Launching Daemon at Wed Oct 28 04:55:50 IST 2026
[2026-10-28 04:55:50,244.244 INFO    ] ================================================
[2026-10-28 04:55:50,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:55:50
[2026-10-28 04:55:51,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:55:51,822.822 INFO    ] Initializing speech engine...
[2026-10-28 04:55:51,831.831 INFO    ] 2026-10-28 04:55:51
[2026-10-28 04:55:52,105.105 INFO    ] 2026-10-28 04:55:52
[2026-10-28 04:55:52,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:55:52,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:55:52,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:55:52,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:55:52,655.655 INFO    ] time= 28/10/2026 04:55:52
[2026-10-28 04:55:52,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:55:52,702.702 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:55:52,823.823 INFO    ] No existing commands found in stream
[2026-10-28 04:55:57,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:55:57,858.858 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-28 04:55:59,756.756 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:55:59,759.759 INFO    ] Checking for system updates...
[2026-10-28 04:55:59,796.796 INFO    ] 200
[2026-10-28 04:55:59,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:55:59,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:55:59,860.860 INFO    ] No update needed
[2026-10-28 04:55:59,862.862 INFO    ] Checking for camera pi updates...
[2026-10-28 04:55:59,898.898 INFO    ] 200
[2026-10-28 04:55:59,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:55:59,946.946 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:56:00,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:56:00,040.040 INFO    ] No camera update needed
[2026-10-28 04:56:00,042.042 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:56:00,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:56:00,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:56:00,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:56:02,098.098 INFO    ] ================================================
[2026-10-28 04:56:02,116.116 INFO    ] Launching Daemon at Wed Oct 28 04:56:02 IST 2026
[2026-10-28 04:56:02,128.128 INFO    ] ================================================
[2026-10-28 04:56:02,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:56:02
[2026-10-28 04:56:03,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:56:03,699.699 INFO    ] Initializing speech engine...
[2026-10-28 04:56:03,705.705 INFO    ] 2026-10-28 04:56:03
[2026-10-28 04:56:03,999.999 INFO    ] 2026-10-28 04:56:03
[2026-10-28 04:56:04,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:56:04,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:56:04,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:56:04,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:56:04,594.594 INFO    ] time= 28/10/2026 04:56:04
[2026-10-28 04:56:04,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:56:04,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:56:04,769.769 INFO    ] No existing commands found in stream
[2026-10-28 04:56:09,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:56:09,794.794 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 04:56:12,378.378 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:56:12,380.380 INFO    ] Checking for system updates...
[2026-10-28 04:56:12,417.417 INFO    ] 200
[2026-10-28 04:56:12,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:56:12,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:56:12,476.476 INFO    ] No update needed
[2026-10-28 04:56:12,478.478 INFO    ] Checking for camera pi updates...
[2026-10-28 04:56:12,517.517 INFO    ] 200
[2026-10-28 04:56:12,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:56:12,566.566 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:56:12,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:56:12,650.650 INFO    ] No camera update needed
[2026-10-28 04:56:12,652.652 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:56:12,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:56:12,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:56:12,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:56:14,710.710 INFO    ] ================================================
[2026-10-28 04:56:14,727.727 INFO    ] Launching Daemon at Wed Oct 28 04:56:14 IST 2026
[2026-10-28 04:56:14,738.738 INFO    ] ================================================
[2026-10-28 04:56:15,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:56:15
[2026-10-28 04:56:15,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:56:16,148.148 INFO    ] Initializing speech engine...
[2026-10-28 04:56:16,164.164 INFO    ] 2026-10-28 04:56:16
[2026-10-28 04:56:16,419.419 INFO    ] 2026-10-28 04:56:16
[2026-10-28 04:56:16,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:56:16,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:56:16,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:56:16,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:56:16,989.989 INFO    ] time= 28/10/2026 04:56:16
[2026-10-28 04:56:16,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:56:17,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:56:17,131.131 INFO    ] No existing commands found in stream
[2026-10-28 04:56:22,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:56:22,157.157 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-28 04:56:24,473.473 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:56:24,476.476 INFO    ] Checking for system updates...
[2026-10-28 04:56:24,515.515 INFO    ] 200
[2026-10-28 04:56:24,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:56:24,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:56:24,579.579 INFO    ] No update needed
[2026-10-28 04:56:24,582.582 INFO    ] Checking for camera pi updates...
[2026-10-28 04:56:24,619.619 INFO    ] 200
[2026-10-28 04:56:24,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:56:24,662.662 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:56:24,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:56:24,744.744 INFO    ] No camera update needed
[2026-10-28 04:56:24,747.747 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:56:24,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:56:24,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:56:24,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:56:26,805.805 INFO    ] ================================================
[2026-10-28 04:56:26,820.820 INFO    ] Launching Daemon at Wed Oct 28 04:56:26 IST 2026
[2026-10-28 04:56:26,831.831 INFO    ] ================================================
[2026-10-28 04:56:27,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:56:27
[2026-10-28 04:56:28,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:56:28,285.285 INFO    ] Initializing speech engine...
[2026-10-28 04:56:28,293.293 INFO    ] 2026-10-28 04:56:28
[2026-10-28 04:56:28,552.552 INFO    ] 2026-10-28 04:56:28
[2026-10-28 04:56:28,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:56:28,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:56:28,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:56:29,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:56:29,095.095 INFO    ] time= 28/10/2026 04:56:29
[2026-10-28 04:56:29,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:56:29,135.135 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:56:29,267.267 INFO    ] No existing commands found in stream
[2026-10-28 04:56:34,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:56:34,300.300 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-28 04:56:36,874.874 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:56:36,876.876 INFO    ] Checking for system updates...
[2026-10-28 04:56:36,917.917 INFO    ] 200
[2026-10-28 04:56:36,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:56:36,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:56:36,976.976 INFO    ] No update needed
[2026-10-28 04:56:36,978.978 INFO    ] Checking for camera pi updates...
[2026-10-28 04:56:37,016.016 INFO    ] 200
[2026-10-28 04:56:37,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:56:37,060.060 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:56:37,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:56:37,143.143 INFO    ] No camera update needed
[2026-10-28 04:56:37,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:56:37,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:56:37,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:56:37,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:56:39,199.199 INFO    ] ================================================
[2026-10-28 04:56:39,215.215 INFO    ] Launching Daemon at Wed Oct 28 04:56:39 IST 2026
[2026-10-28 04:56:39,226.226 INFO    ] ================================================
[2026-10-28 04:56:39,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:56:39
[2026-10-28 04:56:40,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:56:40,652.652 INFO    ] Initializing speech engine...
[2026-10-28 04:56:40,662.662 INFO    ] 2026-10-28 04:56:40
[2026-10-28 04:56:40,952.952 INFO    ] 2026-10-28 04:56:40
[2026-10-28 04:56:41,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:56:41,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:56:41,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:56:41,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:56:41,491.491 INFO    ] time= 28/10/2026 04:56:41
[2026-10-28 04:56:41,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:56:41,550.550 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:56:41,681.681 INFO    ] No existing commands found in stream
[2026-10-28 04:56:46,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:56:46,716.716 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-28 04:56:50,463.463 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:56:50,466.466 INFO    ] Checking for system updates...
[2026-10-28 04:56:50,504.504 INFO    ] 200
[2026-10-28 04:56:50,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:56:50,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:56:50,572.572 INFO    ] No update needed
[2026-10-28 04:56:50,575.575 INFO    ] Checking for camera pi updates...
[2026-10-28 04:56:50,610.610 INFO    ] 200
[2026-10-28 04:56:50,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:56:50,660.660 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:56:50,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:56:50,747.747 INFO    ] No camera update needed
[2026-10-28 04:56:50,750.750 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:56:50,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:56:50,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:56:50,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:56:52,814.814 INFO    ] ================================================
[2026-10-28 04:56:52,829.829 INFO    ] Launching Daemon at Wed Oct 28 04:56:52 IST 2026
[2026-10-28 04:56:52,840.840 INFO    ] ================================================
[2026-10-28 04:56:53,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:56:53
[2026-10-28 04:56:54,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:56:54,517.517 INFO    ] Initializing speech engine...
[2026-10-28 04:56:54,528.528 INFO    ] 2026-10-28 04:56:54
[2026-10-28 04:56:54,820.820 INFO    ] 2026-10-28 04:56:54
[2026-10-28 04:56:54,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:56:55,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:56:55,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:56:55,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:56:55,552.552 INFO    ] time= 28/10/2026 04:56:55
[2026-10-28 04:56:55,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:56:55,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:56:55,816.816 INFO    ] No existing commands found in stream
[2026-10-28 04:57:00,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:57:00,830.830 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 04:57:01,410.410 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:57:01,413.413 INFO    ] Checking for system updates...
[2026-10-28 04:57:01,455.455 INFO    ] 200
[2026-10-28 04:57:01,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:57:01,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:57:01,528.528 INFO    ] No update needed
[2026-10-28 04:57:01,530.530 INFO    ] Checking for camera pi updates...
[2026-10-28 04:57:01,570.570 INFO    ] 200
[2026-10-28 04:57:01,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:57:01,629.629 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:57:01,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:57:01,716.716 INFO    ] No camera update needed
[2026-10-28 04:57:01,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:57:01,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:57:01,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:57:01,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:57:03,776.776 INFO    ] ================================================
[2026-10-28 04:57:03,790.790 INFO    ] Launching Daemon at Wed Oct 28 04:57:03 IST 2026
[2026-10-28 04:57:03,802.802 INFO    ] ================================================
[2026-10-28 04:57:04,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:57:04
[2026-10-28 04:57:05,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:57:05,260.260 INFO    ] Initializing speech engine...
[2026-10-28 04:57:05,282.282 INFO    ] 2026-10-28 04:57:05
[2026-10-28 04:57:05,537.537 INFO    ] 2026-10-28 04:57:05
[2026-10-28 04:57:05,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:57:05,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:57:05,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:57:06,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:57:06,104.104 INFO    ] time= 28/10/2026 04:57:06
[2026-10-28 04:57:06,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:57:06,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:57:06,256.256 INFO    ] No existing commands found in stream
[2026-10-28 04:57:11,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:57:11,276.276 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 04:57:12,656.656 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 04:57:12,658.658 INFO    ] Checking for system updates...
[2026-10-28 04:57:12,698.698 INFO    ] 200
[2026-10-28 04:57:12,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:57:12,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:57:12,762.762 INFO    ] No update needed
[2026-10-28 04:57:12,764.764 INFO    ] Checking for camera pi updates...
[2026-10-28 04:57:12,802.802 INFO    ] 200
[2026-10-28 04:57:12,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:57:12,851.851 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:57:12,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:57:12,941.941 INFO    ] No camera update needed
[2026-10-28 04:57:12,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:57:12,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:57:12,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:57:12,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:57:15,997.997 INFO    ] ================================================
[2026-10-28 04:57:15,012.012 INFO    ] Launching Daemon at Wed Oct 28 04:57:15 IST 2026
[2026-10-28 04:57:15,023.023 INFO    ] ================================================
[2026-10-28 04:57:15,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:57:15
[2026-10-28 04:57:16,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:57:16,481.481 INFO    ] Initializing speech engine...
[2026-10-28 04:57:16,487.487 INFO    ] 2026-10-28 04:57:16
[2026-10-28 04:57:16,748.748 INFO    ] 2026-10-28 04:57:16
[2026-10-28 04:57:16,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:57:17,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:57:17,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:57:17,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:57:17,295.295 INFO    ] time= 28/10/2026 04:57:17
[2026-10-28 04:57:17,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:57:17,340.340 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:57:17,448.448 INFO    ] No existing commands found in stream
[2026-10-28 04:57:22,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:57:22,480.480 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-28 04:57:26,677.677 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:57:26,680.680 INFO    ] Checking for system updates...
[2026-10-28 04:57:26,716.716 INFO    ] 200
[2026-10-28 04:57:26,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:57:26,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:57:26,773.773 INFO    ] No update needed
[2026-10-28 04:57:26,776.776 INFO    ] Checking for camera pi updates...
[2026-10-28 04:57:26,809.809 INFO    ] 200
[2026-10-28 04:57:26,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:57:26,852.852 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:57:26,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:57:26,948.948 INFO    ] No camera update needed
[2026-10-28 04:57:26,951.951 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:57:26,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:57:26,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:57:26,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:57:29,008.008 INFO    ] ================================================
[2026-10-28 04:57:29,023.023 INFO    ] Launching Daemon at Wed Oct 28 04:57:29 IST 2026
[2026-10-28 04:57:29,034.034 INFO    ] ================================================
[2026-10-28 04:57:29,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:57:29
[2026-10-28 04:57:30,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:57:30,651.651 INFO    ] Initializing speech engine...
[2026-10-28 04:57:30,658.658 INFO    ] 2026-10-28 04:57:30
[2026-10-28 04:57:30,937.937 INFO    ] 2026-10-28 04:57:30
[2026-10-28 04:57:30,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:57:31,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:57:31,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:57:31,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:57:31,497.497 INFO    ] time= 28/10/2026 04:57:31
[2026-10-28 04:57:31,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:57:31,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:57:31,696.696 INFO    ] No existing commands found in stream
[2026-10-28 04:57:36,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:57:36,731.731 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 04:57:37,492.492 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 04:57:37,495.495 INFO    ] Checking for system updates...
[2026-10-28 04:57:37,530.530 INFO    ] 200
[2026-10-28 04:57:37,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:57:37,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:57:37,595.595 INFO    ] No update needed
[2026-10-28 04:57:37,597.597 INFO    ] Checking for camera pi updates...
[2026-10-28 04:57:37,635.635 INFO    ] 200
[2026-10-28 04:57:37,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:57:37,685.685 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:57:37,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:57:37,866.866 INFO    ] No camera update needed
[2026-10-28 04:57:37,868.868 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:57:37,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:57:37,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:57:37,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:57:39,920.920 INFO    ] ================================================
[2026-10-28 04:57:39,935.935 INFO    ] Launching Daemon at Wed Oct 28 04:57:39 IST 2026
[2026-10-28 04:57:39,945.945 INFO    ] ================================================
[2026-10-28 04:57:40,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:57:40
[2026-10-28 04:57:41,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:57:41,396.396 INFO    ] Initializing speech engine...
[2026-10-28 04:57:41,406.406 INFO    ] 2026-10-28 04:57:41
[2026-10-28 04:57:41,654.654 INFO    ] 2026-10-28 04:57:41
[2026-10-28 04:57:41,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:57:41,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:57:41,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:57:42,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:57:42,212.212 INFO    ] time= 28/10/2026 04:57:42
[2026-10-28 04:57:42,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:57:42,258.258 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:57:42,365.365 INFO    ] No existing commands found in stream
[2026-10-28 04:57:47,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:57:47,396.396 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-28 04:57:48,327.327 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:57:48,330.330 INFO    ] Checking for system updates...
[2026-10-28 04:57:48,369.369 INFO    ] 200
[2026-10-28 04:57:48,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:57:48,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:57:48,427.427 INFO    ] No update needed
[2026-10-28 04:57:48,429.429 INFO    ] Checking for camera pi updates...
[2026-10-28 04:57:48,467.467 INFO    ] 200
[2026-10-28 04:57:48,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:57:48,511.511 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:57:48,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:57:48,601.601 INFO    ] No camera update needed
[2026-10-28 04:57:48,603.603 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:57:48,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:57:48,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:57:48,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:57:50,656.656 INFO    ] ================================================
[2026-10-28 04:57:50,671.671 INFO    ] Launching Daemon at Wed Oct 28 04:57:50 IST 2026
[2026-10-28 04:57:50,682.682 INFO    ] ================================================
[2026-10-28 04:57:51,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:57:51
[2026-10-28 04:57:51,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:57:52,133.133 INFO    ] Initializing speech engine...
[2026-10-28 04:57:52,142.142 INFO    ] 2026-10-28 04:57:52
[2026-10-28 04:57:52,404.404 INFO    ] 2026-10-28 04:57:52
[2026-10-28 04:57:52,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:57:52,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:57:52,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:57:52,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:57:52,958.958 INFO    ] time= 28/10/2026 04:57:52
[2026-10-28 04:57:52,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:57:52,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:57:53,124.124 INFO    ] No existing commands found in stream
[2026-10-28 04:57:58,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:57:58,157.157 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 04:58:00,568.568 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:58:00,571.571 INFO    ] Checking for system updates...
[2026-10-28 04:58:00,612.612 INFO    ] 200
[2026-10-28 04:58:00,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:58:00,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:58:00,677.677 INFO    ] No update needed
[2026-10-28 04:58:00,679.679 INFO    ] Checking for camera pi updates...
[2026-10-28 04:58:00,713.713 INFO    ] 200
[2026-10-28 04:58:00,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:58:00,762.762 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:58:00,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:58:00,852.852 INFO    ] No camera update needed
[2026-10-28 04:58:00,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:58:00,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:58:00,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:58:00,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:58:02,908.908 INFO    ] ================================================
[2026-10-28 04:58:02,924.924 INFO    ] Launching Daemon at Wed Oct 28 04:58:02 IST 2026
[2026-10-28 04:58:02,938.938 INFO    ] ================================================
[2026-10-28 04:58:03,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:58:03
[2026-10-28 04:58:04,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:58:04,382.382 INFO    ] Initializing speech engine...
[2026-10-28 04:58:04,392.392 INFO    ] 2026-10-28 04:58:04
[2026-10-28 04:58:04,640.640 INFO    ] 2026-10-28 04:58:04
[2026-10-28 04:58:04,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:58:04,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:58:04,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:58:05,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:58:05,206.206 INFO    ] time= 28/10/2026 04:58:05
[2026-10-28 04:58:05,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:58:05,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:58:05,367.367 INFO    ] No existing commands found in stream
[2026-10-28 04:58:10,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:58:10,388.388 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-28 04:58:13,916.916 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:58:13,918.918 INFO    ] Checking for system updates...
[2026-10-28 04:58:13,957.957 INFO    ] 200
[2026-10-28 04:58:13,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:58:14,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:58:14,014.014 INFO    ] No update needed
[2026-10-28 04:58:14,016.016 INFO    ] Checking for camera pi updates...
[2026-10-28 04:58:14,049.049 INFO    ] 200
[2026-10-28 04:58:14,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:58:14,097.097 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:58:14,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:58:14,205.205 INFO    ] No camera update needed
[2026-10-28 04:58:14,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:58:14,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:58:14,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:58:14,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:58:16,263.263 INFO    ] ================================================
[2026-10-28 04:58:16,278.278 INFO    ] Launching Daemon at Wed Oct 28 04:58:16 IST 2026
[2026-10-28 04:58:16,288.288 INFO    ] ================================================
[2026-10-28 04:58:16,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:58:16
[2026-10-28 04:58:17,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:58:17,747.747 INFO    ] Initializing speech engine...
[2026-10-28 04:58:17,754.754 INFO    ] 2026-10-28 04:58:17
[2026-10-28 04:58:18,015.015 INFO    ] 2026-10-28 04:58:18
[2026-10-28 04:58:18,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:58:18,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:58:18,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:58:18,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:58:18,551.551 INFO    ] time= 28/10/2026 04:58:18
[2026-10-28 04:58:18,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:58:18,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:58:18,714.714 INFO    ] No existing commands found in stream
[2026-10-28 04:58:23,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:58:23,738.738 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-28 04:58:24,737.737 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:58:24,740.740 INFO    ] Checking for system updates...
[2026-10-28 04:58:24,776.776 INFO    ] 200
[2026-10-28 04:58:24,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:58:24,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:58:24,840.840 INFO    ] No update needed
[2026-10-28 04:58:24,843.843 INFO    ] Checking for camera pi updates...
[2026-10-28 04:58:24,876.876 INFO    ] 200
[2026-10-28 04:58:24,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:58:24,919.919 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:58:25,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:58:25,004.004 INFO    ] No camera update needed
[2026-10-28 04:58:25,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:58:25,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:58:25,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:58:25,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:58:27,063.063 INFO    ] ================================================
[2026-10-28 04:58:27,078.078 INFO    ] Launching Daemon at Wed Oct 28 04:58:27 IST 2026
[2026-10-28 04:58:27,089.089 INFO    ] ================================================
[2026-10-28 04:58:27,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:58:27
[2026-10-28 04:58:28,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:58:28,560.560 INFO    ] Initializing speech engine...
[2026-10-28 04:58:28,568.568 INFO    ] 2026-10-28 04:58:28
[2026-10-28 04:58:28,841.841 INFO    ] 2026-10-28 04:58:28
[2026-10-28 04:58:28,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:58:29,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:58:29,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:58:29,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:58:29,366.366 INFO    ] time= 28/10/2026 04:58:29
[2026-10-28 04:58:29,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:58:29,466.466 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:58:29,616.616 INFO    ] No existing commands found in stream
[2026-10-28 04:58:34,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:58:34,645.645 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-28 04:58:35,742.742 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:58:35,744.744 INFO    ] Checking for system updates...
[2026-10-28 04:58:35,784.784 INFO    ] 200
[2026-10-28 04:58:35,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:58:35,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:58:35,848.848 INFO    ] No update needed
[2026-10-28 04:58:35,851.851 INFO    ] Checking for camera pi updates...
[2026-10-28 04:58:35,888.888 INFO    ] 200
[2026-10-28 04:58:35,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:58:35,936.936 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:58:36,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:58:36,064.064 INFO    ] No camera update needed
[2026-10-28 04:58:36,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:58:36,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:58:36,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:58:36,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:58:38,119.119 INFO    ] ================================================
[2026-10-28 04:58:38,134.134 INFO    ] Launching Daemon at Wed Oct 28 04:58:38 IST 2026
[2026-10-28 04:58:38,145.145 INFO    ] ================================================
[2026-10-28 04:58:38,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:58:38
[2026-10-28 04:58:39,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:58:39,545.545 INFO    ] Initializing speech engine...
[2026-10-28 04:58:39,567.567 INFO    ] 2026-10-28 04:58:39
[2026-10-28 04:58:39,819.819 INFO    ] 2026-10-28 04:58:39
[2026-10-28 04:58:39,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:58:40,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:58:40,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:58:40,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:58:40,379.379 INFO    ] time= 28/10/2026 04:58:40
[2026-10-28 04:58:40,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:58:40,402.402 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:58:40,520.520 INFO    ] No existing commands found in stream
[2026-10-28 04:58:45,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:58:45,548.548 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 04:58:47,810.810 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:58:47,812.812 INFO    ] Checking for system updates...
[2026-10-28 04:58:47,853.853 INFO    ] 200
[2026-10-28 04:58:47,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:58:47,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:58:47,917.917 INFO    ] No update needed
[2026-10-28 04:58:47,919.919 INFO    ] Checking for camera pi updates...
[2026-10-28 04:58:47,952.952 INFO    ] 200
[2026-10-28 04:58:47,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:58:47,995.995 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:58:48,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:58:48,091.091 INFO    ] No camera update needed
[2026-10-28 04:58:48,093.093 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:58:48,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:58:48,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:58:48,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:58:50,149.149 INFO    ] ================================================
[2026-10-28 04:58:50,164.164 INFO    ] Launching Daemon at Wed Oct 28 04:58:50 IST 2026
[2026-10-28 04:58:50,175.175 INFO    ] ================================================
[2026-10-28 04:58:50,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:58:50
[2026-10-28 04:58:51,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:58:51,577.577 INFO    ] Initializing speech engine...
[2026-10-28 04:58:51,582.582 INFO    ] 2026-10-28 04:58:51
[2026-10-28 04:58:51,856.856 INFO    ] 2026-10-28 04:58:51
[2026-10-28 04:58:51,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:58:52,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:58:52,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:58:52,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:58:52,424.424 INFO    ] time= 28/10/2026 04:58:52
[2026-10-28 04:58:52,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:58:52,454.454 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:58:52,594.594 INFO    ] No existing commands found in stream
[2026-10-28 04:58:57,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:58:57,623.623 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-28 04:58:59,796.796 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:58:59,799.799 INFO    ] Checking for system updates...
[2026-10-28 04:58:59,839.839 INFO    ] 200
[2026-10-28 04:58:59,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:58:59,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:58:59,901.901 INFO    ] No update needed
[2026-10-28 04:58:59,903.903 INFO    ] Checking for camera pi updates...
[2026-10-28 04:58:59,940.940 INFO    ] 200
[2026-10-28 04:58:59,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:58:59,983.983 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:59:00,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:59:00,065.065 INFO    ] No camera update needed
[2026-10-28 04:59:00,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:59:00,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:59:00,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:59:00,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:59:02,125.125 INFO    ] ================================================
[2026-10-28 04:59:02,147.147 INFO    ] Launching Daemon at Wed Oct 28 04:59:02 IST 2026
[2026-10-28 04:59:02,163.163 INFO    ] ================================================
[2026-10-28 04:59:02,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:59:02
[2026-10-28 04:59:03,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:59:03,845.845 INFO    ] Initializing speech engine...
[2026-10-28 04:59:03,856.856 INFO    ] 2026-10-28 04:59:03
[2026-10-28 04:59:04,163.163 INFO    ] 2026-10-28 04:59:04
[2026-10-28 04:59:04,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:59:04,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:59:04,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:59:04,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:59:04,872.872 INFO    ] time= 28/10/2026 04:59:04
[2026-10-28 04:59:04,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:59:04,963.963 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:59:05,113.113 INFO    ] No existing commands found in stream
[2026-10-28 04:59:10,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:59:10,127.127 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-28 04:59:13,424.424 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 04:59:13,427.427 INFO    ] Checking for system updates...
[2026-10-28 04:59:13,463.463 INFO    ] 200
[2026-10-28 04:59:13,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:59:13,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:59:13,528.528 INFO    ] No update needed
[2026-10-28 04:59:13,531.531 INFO    ] Checking for camera pi updates...
[2026-10-28 04:59:13,570.570 INFO    ] 200
[2026-10-28 04:59:13,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:59:13,617.617 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:59:13,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:59:13,719.719 INFO    ] No camera update needed
[2026-10-28 04:59:13,721.721 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:59:13,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:59:13,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:59:13,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:59:15,773.773 INFO    ] ================================================
[2026-10-28 04:59:15,789.789 INFO    ] Launching Daemon at Wed Oct 28 04:59:15 IST 2026
[2026-10-28 04:59:15,800.800 INFO    ] ================================================
[2026-10-28 04:59:16,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:59:16
[2026-10-28 04:59:16,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:59:17,215.215 INFO    ] Initializing speech engine...
[2026-10-28 04:59:17,223.223 INFO    ] 2026-10-28 04:59:17
[2026-10-28 04:59:17,473.473 INFO    ] 2026-10-28 04:59:17
[2026-10-28 04:59:17,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:59:17,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:59:17,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:59:18,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:59:18,041.041 INFO    ] time= 28/10/2026 04:59:18
[2026-10-28 04:59:18,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:59:18,065.065 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:59:18,200.200 INFO    ] No existing commands found in stream
[2026-10-28 04:59:23,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:59:23,222.222 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-28 04:59:26,101.101 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 04:59:26,104.104 INFO    ] Checking for system updates...
[2026-10-28 04:59:26,143.143 INFO    ] 200
[2026-10-28 04:59:26,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:59:26,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:59:26,200.200 INFO    ] No update needed
[2026-10-28 04:59:26,202.202 INFO    ] Checking for camera pi updates...
[2026-10-28 04:59:26,235.235 INFO    ] 200
[2026-10-28 04:59:26,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:59:26,282.282 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:59:26,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:59:26,387.387 INFO    ] No camera update needed
[2026-10-28 04:59:26,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:59:26,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:59:26,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:59:26,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:59:28,443.443 INFO    ] ================================================
[2026-10-28 04:59:28,458.458 INFO    ] Launching Daemon at Wed Oct 28 04:59:28 IST 2026
[2026-10-28 04:59:28,469.469 INFO    ] ================================================
[2026-10-28 04:59:29,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:59:29
[2026-10-28 04:59:29,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:59:29,921.921 INFO    ] Initializing speech engine...
[2026-10-28 04:59:29,931.931 INFO    ] 2026-10-28 04:59:29
[2026-10-28 04:59:30,182.182 INFO    ] 2026-10-28 04:59:30
[2026-10-28 04:59:30,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:59:30,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:59:30,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:59:30,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:59:30,737.737 INFO    ] time= 28/10/2026 04:59:30
[2026-10-28 04:59:30,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:59:30,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:59:30,887.887 INFO    ] No existing commands found in stream
[2026-10-28 04:59:35,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:59:35,906.906 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-28 04:59:37,086.086 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 04:59:37,088.088 INFO    ] Checking for system updates...
[2026-10-28 04:59:37,128.128 INFO    ] 200
[2026-10-28 04:59:37,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:59:37,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:59:37,194.194 INFO    ] No update needed
[2026-10-28 04:59:37,196.196 INFO    ] Checking for camera pi updates...
[2026-10-28 04:59:37,234.234 INFO    ] 200
[2026-10-28 04:59:37,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:59:37,276.276 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:59:37,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:59:37,369.369 INFO    ] No camera update needed
[2026-10-28 04:59:37,371.371 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:59:37,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:59:37,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:59:37,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:59:39,425.425 INFO    ] ================================================
[2026-10-28 04:59:39,440.440 INFO    ] Launching Daemon at Wed Oct 28 04:59:39 IST 2026
[2026-10-28 04:59:39,450.450 INFO    ] ================================================
[2026-10-28 04:59:40,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:59:40
[2026-10-28 04:59:40,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:59:40,852.852 INFO    ] Initializing speech engine...
[2026-10-28 04:59:40,860.860 INFO    ] 2026-10-28 04:59:40
[2026-10-28 04:59:41,134.134 INFO    ] 2026-10-28 04:59:41
[2026-10-28 04:59:41,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:59:41,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:59:41,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:59:41,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:59:41,700.700 INFO    ] time= 28/10/2026 04:59:41
[2026-10-28 04:59:41,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:59:41,725.725 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:59:41,861.861 INFO    ] No existing commands found in stream
[2026-10-28 04:59:46,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:59:46,882.882 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 04:59:47,514.514 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:59:47,516.516 INFO    ] Checking for system updates...
[2026-10-28 04:59:47,556.556 INFO    ] 200
[2026-10-28 04:59:47,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:59:47,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:59:47,622.622 INFO    ] No update needed
[2026-10-28 04:59:47,625.625 INFO    ] Checking for camera pi updates...
[2026-10-28 04:59:47,662.662 INFO    ] 200
[2026-10-28 04:59:47,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:59:47,724.724 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:59:47,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 04:59:47,917.917 INFO    ] No camera update needed
[2026-10-28 04:59:47,919.919 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:59:47,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:59:47,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:59:47,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 04:59:49,974.974 INFO    ] ================================================
[2026-10-28 04:59:49,989.989 INFO    ] Launching Daemon at Wed Oct 28 04:59:49 IST 2026
[2026-10-28 04:59:50,001.001 INFO    ] ================================================
[2026-10-28 04:59:50,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 04:59:50
[2026-10-28 04:59:51,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 04:59:51,424.424 INFO    ] Initializing speech engine...
[2026-10-28 04:59:51,428.428 INFO    ] 2026-10-28 04:59:51
[2026-10-28 04:59:51,678.678 INFO    ] 2026-10-28 04:59:51
[2026-10-28 04:59:51,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 04:59:51,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 04:59:51,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 04:59:52,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 04:59:52,243.243 INFO    ] time= 28/10/2026 04:59:52
[2026-10-28 04:59:52,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 04:59:52,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-28 04:59:52,404.404 INFO    ] No existing commands found in stream
[2026-10-28 04:59:57,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 04:59:57,429.429 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-28 04:59:58,015.015 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 04:59:58,017.017 INFO    ] Checking for system updates...
[2026-10-28 04:59:58,058.058 INFO    ] 200
[2026-10-28 04:59:58,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:59:58,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:59:58,123.123 INFO    ] No update needed
[2026-10-28 04:59:58,126.126 INFO    ] Checking for camera pi updates...
[2026-10-28 04:59:58,161.161 INFO    ] 200
[2026-10-28 04:59:58,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 04:59:58,205.205 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 04:59:58,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 04:59:58,315.315 INFO    ] No camera update needed
[2026-10-28 04:59:58,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-28 04:59:58,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 04:59:58,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 04:59:58,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:00:00,374.374 INFO    ] ================================================
[2026-10-28 05:00:00,389.389 INFO    ] Launching Daemon at Wed Oct 28 05:00:00 IST 2026
[2026-10-28 05:00:00,400.400 INFO    ] ================================================
[2026-10-28 05:00:00,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:00:00
[2026-10-28 05:00:02,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:00:03,806.806 INFO    ] Initializing speech engine...
[2026-10-28 05:00:03,809.809 INFO    ] 2026-10-28 05:00:03
[2026-10-28 05:00:04,448.448 INFO    ] 2026-10-28 05:00:04
[2026-10-28 05:00:04,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:00:04,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:00:04,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:00:05,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:00:05,266.266 INFO    ] time= 28/10/2026 05:00:05
[2026-10-28 05:00:05,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:00:05,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:00:05,404.404 INFO    ] No existing commands found in stream
[2026-10-28 05:00:10,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:00:10,417.417 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-28 05:00:11,570.570 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:00:11,573.573 INFO    ] Checking for system updates...
[2026-10-28 05:00:11,608.608 INFO    ] 200
[2026-10-28 05:00:11,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:00:11,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:00:11,674.674 INFO    ] No update needed
[2026-10-28 05:00:11,676.676 INFO    ] Checking for camera pi updates...
[2026-10-28 05:00:11,714.714 INFO    ] 200
[2026-10-28 05:00:11,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:00:11,762.762 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:00:11,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:00:11,841.841 INFO    ] No camera update needed
[2026-10-28 05:00:11,844.844 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:00:11,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:00:11,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:00:11,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:00:13,897.897 INFO    ] ================================================
[2026-10-28 05:00:13,912.912 INFO    ] Launching Daemon at Wed Oct 28 05:00:13 IST 2026
[2026-10-28 05:00:13,923.923 INFO    ] ================================================
[2026-10-28 05:00:14,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:00:14
[2026-10-28 05:00:15,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:00:15,374.374 INFO    ] Initializing speech engine...
[2026-10-28 05:00:15,380.380 INFO    ] 2026-10-28 05:00:15
[2026-10-28 05:00:15,643.643 INFO    ] 2026-10-28 05:00:15
[2026-10-28 05:00:15,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:00:15,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:00:15,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:00:16,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:00:16,188.188 INFO    ] time= 28/10/2026 05:00:16
[2026-10-28 05:00:16,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:00:16,234.234 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:00:16,365.365 INFO    ] No existing commands found in stream
[2026-10-28 05:00:21,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:00:21,388.388 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-28 05:00:22,174.174 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:00:22,177.177 INFO    ] Checking for system updates...
[2026-10-28 05:00:22,216.216 INFO    ] 200
[2026-10-28 05:00:22,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:00:22,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:00:22,278.278 INFO    ] No update needed
[2026-10-28 05:00:22,281.281 INFO    ] Checking for camera pi updates...
[2026-10-28 05:00:22,314.314 INFO    ] 200
[2026-10-28 05:00:22,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:00:22,357.357 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:00:22,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:00:22,440.440 INFO    ] No camera update needed
[2026-10-28 05:00:22,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:00:22,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:00:22,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:00:22,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:00:24,497.497 INFO    ] ================================================
[2026-10-28 05:00:24,512.512 INFO    ] Launching Daemon at Wed Oct 28 05:00:24 IST 2026
[2026-10-28 05:00:24,524.524 INFO    ] ================================================
[2026-10-28 05:00:25,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:00:25
[2026-10-28 05:00:25,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:00:26,131.131 INFO    ] Initializing speech engine...
[2026-10-28 05:00:26,139.139 INFO    ] 2026-10-28 05:00:26
[2026-10-28 05:00:26,396.396 INFO    ] 2026-10-28 05:00:26
[2026-10-28 05:00:26,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:00:26,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:00:26,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:00:26,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:00:26,939.939 INFO    ] time= 28/10/2026 05:00:26
[2026-10-28 05:00:26,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:00:26,962.962 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:00:27,077.077 INFO    ] No existing commands found in stream
[2026-10-28 05:00:32,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:00:32,102.102 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-28 05:00:33,039.039 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:00:33,043.043 INFO    ] Checking for system updates...
[2026-10-28 05:00:33,082.082 INFO    ] 200
[2026-10-28 05:00:33,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:00:33,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:00:33,148.148 INFO    ] No update needed
[2026-10-28 05:00:33,150.150 INFO    ] Checking for camera pi updates...
[2026-10-28 05:00:33,190.190 INFO    ] 200
[2026-10-28 05:00:33,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:00:33,248.248 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:00:33,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:00:33,345.345 INFO    ] No camera update needed
[2026-10-28 05:00:33,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:00:33,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:00:33,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:00:33,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:00:35,404.404 INFO    ] ================================================
[2026-10-28 05:00:35,419.419 INFO    ] Launching Daemon at Wed Oct 28 05:00:35 IST 2026
[2026-10-28 05:00:35,430.430 INFO    ] ================================================
[2026-10-28 05:00:35,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:00:35
[2026-10-28 05:00:36,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:00:36,838.838 INFO    ] Initializing speech engine...
[2026-10-28 05:00:36,861.861 INFO    ] 2026-10-28 05:00:36
[2026-10-28 05:00:37,117.117 INFO    ] 2026-10-28 05:00:37
[2026-10-28 05:00:37,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:00:37,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:00:37,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:00:37,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:00:37,685.685 INFO    ] time= 28/10/2026 05:00:37
[2026-10-28 05:00:37,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:00:37,709.709 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:00:37,841.841 INFO    ] No existing commands found in stream
[2026-10-28 05:00:42,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:00:42,857.857 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-28 05:00:47,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:00:47,020.020 INFO    ] Checking for system updates...
[2026-10-28 05:00:47,061.061 INFO    ] 200
[2026-10-28 05:00:47,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:00:47,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:00:47,118.118 INFO    ] No update needed
[2026-10-28 05:00:47,120.120 INFO    ] Checking for camera pi updates...
[2026-10-28 05:00:47,158.158 INFO    ] 200
[2026-10-28 05:00:47,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:00:47,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:00:47,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:00:47,288.288 INFO    ] No camera update needed
[2026-10-28 05:00:47,290.290 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:00:47,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:00:47,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:00:47,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:00:49,345.345 INFO    ] ================================================
[2026-10-28 05:00:49,360.360 INFO    ] Launching Daemon at Wed Oct 28 05:00:49 IST 2026
[2026-10-28 05:00:49,370.370 INFO    ] ================================================
[2026-10-28 05:00:49,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:00:49
[2026-10-28 05:00:50,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:00:50,777.777 INFO    ] Initializing speech engine...
[2026-10-28 05:00:50,783.783 INFO    ] 2026-10-28 05:00:50
[2026-10-28 05:00:51,087.087 INFO    ] 2026-10-28 05:00:51
[2026-10-28 05:00:51,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:00:51,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:00:51,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:00:51,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:00:51,574.574 INFO    ] time= 28/10/2026 05:00:51
[2026-10-28 05:00:51,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:00:51,686.686 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:00:51,816.816 INFO    ] No existing commands found in stream
[2026-10-28 05:00:56,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:00:56,841.841 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 05:01:00,741.741 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:01:00,743.743 INFO    ] Checking for system updates...
[2026-10-28 05:01:00,784.784 INFO    ] 200
[2026-10-28 05:01:00,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:01:00,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:01:00,841.841 INFO    ] No update needed
[2026-10-28 05:01:00,844.844 INFO    ] Checking for camera pi updates...
[2026-10-28 05:01:00,877.877 INFO    ] 200
[2026-10-28 05:01:00,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:01:00,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:01:01,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:01:01,013.013 INFO    ] No camera update needed
[2026-10-28 05:01:01,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:01:01,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:01:01,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:01:01,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:01:03,072.072 INFO    ] ================================================
[2026-10-28 05:01:03,092.092 INFO    ] Launching Daemon at Wed Oct 28 05:01:03 IST 2026
[2026-10-28 05:01:03,105.105 INFO    ] ================================================
[2026-10-28 05:01:03,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:01:03
[2026-10-28 05:01:04,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:01:04,572.572 INFO    ] Initializing speech engine...
[2026-10-28 05:01:04,576.576 INFO    ] 2026-10-28 05:01:04
[2026-10-28 05:01:04,846.846 INFO    ] 2026-10-28 05:01:04
[2026-10-28 05:01:04,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:01:05,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:01:05,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:01:05,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:01:05,370.370 INFO    ] time= 28/10/2026 05:01:05
[2026-10-28 05:01:05,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:01:05,469.469 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:01:05,615.615 INFO    ] No existing commands found in stream
[2026-10-28 05:01:10,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:01:10,644.644 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-28 05:01:11,276.276 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:01:11,279.279 INFO    ] Checking for system updates...
[2026-10-28 05:01:11,320.320 INFO    ] 200
[2026-10-28 05:01:11,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:01:11,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:01:11,389.389 INFO    ] No update needed
[2026-10-28 05:01:11,391.391 INFO    ] Checking for camera pi updates...
[2026-10-28 05:01:11,429.429 INFO    ] 200
[2026-10-28 05:01:11,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:01:11,473.473 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:01:11,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:01:11,559.559 INFO    ] No camera update needed
[2026-10-28 05:01:11,561.561 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:01:11,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:01:11,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:01:11,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:01:13,619.619 INFO    ] ================================================
[2026-10-28 05:01:13,635.635 INFO    ] Launching Daemon at Wed Oct 28 05:01:13 IST 2026
[2026-10-28 05:01:13,646.646 INFO    ] ================================================
[2026-10-28 05:01:14,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:01:14
[2026-10-28 05:01:14,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:01:15,073.073 INFO    ] Initializing speech engine...
[2026-10-28 05:01:15,082.082 INFO    ] 2026-10-28 05:01:15
[2026-10-28 05:01:15,326.326 INFO    ] 2026-10-28 05:01:15
[2026-10-28 05:01:15,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:01:15,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:01:15,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:01:15,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:01:15,892.892 INFO    ] time= 28/10/2026 05:01:15
[2026-10-28 05:01:15,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:01:15,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:01:16,033.033 INFO    ] No existing commands found in stream
[2026-10-28 05:01:21,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:01:21,061.061 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-28 05:01:22,896.896 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:01:22,898.898 INFO    ] Checking for system updates...
[2026-10-28 05:01:22,939.939 INFO    ] 200
[2026-10-28 05:01:22,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:01:23,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:01:23,007.007 INFO    ] No update needed
[2026-10-28 05:01:23,010.010 INFO    ] Checking for camera pi updates...
[2026-10-28 05:01:23,048.048 INFO    ] 200
[2026-10-28 05:01:23,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:01:23,098.098 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:01:23,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:01:23,150.150 INFO    ] No camera update needed
[2026-10-28 05:01:23,152.152 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:01:23,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:01:23,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:01:23,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:01:25,210.210 INFO    ] ================================================
[2026-10-28 05:01:25,225.225 INFO    ] Launching Daemon at Wed Oct 28 05:01:25 IST 2026
[2026-10-28 05:01:25,236.236 INFO    ] ================================================
[2026-10-28 05:01:25,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:01:25
[2026-10-28 05:01:26,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:01:26,679.679 INFO    ] Initializing speech engine...
[2026-10-28 05:01:26,686.686 INFO    ] 2026-10-28 05:01:26
[2026-10-28 05:01:26,946.946 INFO    ] 2026-10-28 05:01:26
[2026-10-28 05:01:27,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:01:27,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:01:27,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:01:27,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:01:27,502.502 INFO    ] time= 28/10/2026 05:01:27
[2026-10-28 05:01:27,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:01:27,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:01:27,645.645 INFO    ] No existing commands found in stream
[2026-10-28 05:01:32,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:01:32,668.668 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-28 05:01:35,356.356 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:01:35,359.359 INFO    ] Checking for system updates...
[2026-10-28 05:01:35,400.400 INFO    ] 200
[2026-10-28 05:01:35,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:01:35,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:01:35,460.460 INFO    ] No update needed
[2026-10-28 05:01:35,463.463 INFO    ] Checking for camera pi updates...
[2026-10-28 05:01:35,498.498 INFO    ] 200
[2026-10-28 05:01:35,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:01:35,541.541 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:01:35,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:01:35,610.610 INFO    ] No camera update needed
[2026-10-28 05:01:35,613.613 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:01:35,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:01:35,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:01:35,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:01:37,667.667 INFO    ] ================================================
[2026-10-28 05:01:37,682.682 INFO    ] Launching Daemon at Wed Oct 28 05:01:37 IST 2026
[2026-10-28 05:01:37,693.693 INFO    ] ================================================
[2026-10-28 05:01:38,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:01:38
[2026-10-28 05:01:38,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:01:39,141.141 INFO    ] Initializing speech engine...
[2026-10-28 05:01:39,147.147 INFO    ] 2026-10-28 05:01:39
[2026-10-28 05:01:39,444.444 INFO    ] 2026-10-28 05:01:39
[2026-10-28 05:01:39,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:01:39,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:01:39,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:01:39,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:01:39,955.955 INFO    ] time= 28/10/2026 05:01:39
[2026-10-28 05:01:40,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:01:40,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:01:40,219.219 INFO    ] No existing commands found in stream
[2026-10-28 05:01:45,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:01:45,240.240 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 05:01:46,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:01:46,557.557 INFO    ] Checking for system updates...
[2026-10-28 05:01:46,593.593 INFO    ] 200
[2026-10-28 05:01:46,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:01:46,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:01:46,675.675 INFO    ] No update needed
[2026-10-28 05:01:46,677.677 INFO    ] Checking for camera pi updates...
[2026-10-28 05:01:46,712.712 INFO    ] 200
[2026-10-28 05:01:46,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:01:46,757.757 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:01:46,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:01:46,839.839 INFO    ] No camera update needed
[2026-10-28 05:01:46,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:01:46,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:01:46,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:01:46,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:01:48,895.895 INFO    ] ================================================
[2026-10-28 05:01:48,910.910 INFO    ] Launching Daemon at Wed Oct 28 05:01:48 IST 2026
[2026-10-28 05:01:48,921.921 INFO    ] ================================================
[2026-10-28 05:01:49,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:01:49
[2026-10-28 05:01:50,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:01:50,336.336 INFO    ] Initializing speech engine...
[2026-10-28 05:01:50,344.344 INFO    ] 2026-10-28 05:01:50
[2026-10-28 05:01:50,591.591 INFO    ] 2026-10-28 05:01:50
[2026-10-28 05:01:50,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:01:50,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:01:50,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:01:51,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:01:51,120.120 INFO    ] time= 28/10/2026 05:01:51
[2026-10-28 05:01:51,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:01:51,224.224 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:01:51,352.352 INFO    ] No existing commands found in stream
[2026-10-28 05:01:56,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:01:56,381.381 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-28 05:01:57,776.776 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:01:57,779.779 INFO    ] Checking for system updates...
[2026-10-28 05:01:57,814.814 INFO    ] 200
[2026-10-28 05:01:57,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:01:57,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:01:57,878.878 INFO    ] No update needed
[2026-10-28 05:01:57,880.880 INFO    ] Checking for camera pi updates...
[2026-10-28 05:01:57,915.915 INFO    ] 200
[2026-10-28 05:01:57,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:01:57,958.958 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:01:58,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:01:58,145.145 INFO    ] No camera update needed
[2026-10-28 05:01:58,148.148 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:01:58,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:01:58,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:01:58,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:02:00,210.210 INFO    ] ================================================
[2026-10-28 05:02:00,225.225 INFO    ] Launching Daemon at Wed Oct 28 05:02:00 IST 2026
[2026-10-28 05:02:00,236.236 INFO    ] ================================================
[2026-10-28 05:02:00,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:02:00
[2026-10-28 05:02:01,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:02:01,667.667 INFO    ] Initializing speech engine...
[2026-10-28 05:02:01,676.676 INFO    ] 2026-10-28 05:02:01
[2026-10-28 05:02:01,944.944 INFO    ] 2026-10-28 05:02:01
[2026-10-28 05:02:01,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:02:02,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:02:02,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:02:02,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:02:02,541.541 INFO    ] time= 28/10/2026 05:02:02
[2026-10-28 05:02:02,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:02:02,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:02:02,796.796 INFO    ] No existing commands found in stream
[2026-10-28 05:02:07,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:02:07,810.810 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 05:02:10,383.383 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:02:10,386.386 INFO    ] Checking for system updates...
[2026-10-28 05:02:10,422.422 INFO    ] 200
[2026-10-28 05:02:10,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:02:10,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:02:10,487.487 INFO    ] No update needed
[2026-10-28 05:02:10,490.490 INFO    ] Checking for camera pi updates...
[2026-10-28 05:02:10,524.524 INFO    ] 200
[2026-10-28 05:02:10,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:02:10,571.571 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:02:10,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:02:10,658.658 INFO    ] No camera update needed
[2026-10-28 05:02:10,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:02:10,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:02:10,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:02:10,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:02:12,721.721 INFO    ] ================================================
[2026-10-28 05:02:12,736.736 INFO    ] Launching Daemon at Wed Oct 28 05:02:12 IST 2026
[2026-10-28 05:02:12,747.747 INFO    ] ================================================
[2026-10-28 05:02:13,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:02:13
[2026-10-28 05:02:13,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:02:14,167.167 INFO    ] Initializing speech engine...
[2026-10-28 05:02:14,175.175 INFO    ] 2026-10-28 05:02:14
[2026-10-28 05:02:14,427.427 INFO    ] 2026-10-28 05:02:14
[2026-10-28 05:02:14,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:02:14,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:02:14,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:02:14,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:02:15,005.005 INFO    ] time= 28/10/2026 05:02:14
[2026-10-28 05:02:15,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:02:15,032.032 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:02:15,164.164 INFO    ] No existing commands found in stream
[2026-10-28 05:02:20,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:02:20,179.179 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-28 05:02:21,334.334 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:02:21,337.337 INFO    ] Checking for system updates...
[2026-10-28 05:02:21,372.372 INFO    ] 200
[2026-10-28 05:02:21,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:02:21,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:02:21,430.430 INFO    ] No update needed
[2026-10-28 05:02:21,432.432 INFO    ] Checking for camera pi updates...
[2026-10-28 05:02:21,466.466 INFO    ] 200
[2026-10-28 05:02:21,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:02:21,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:02:21,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:02:21,598.598 INFO    ] No camera update needed
[2026-10-28 05:02:21,600.600 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:02:21,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:02:21,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:02:21,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:02:23,654.654 INFO    ] ================================================
[2026-10-28 05:02:23,669.669 INFO    ] Launching Daemon at Wed Oct 28 05:02:23 IST 2026
[2026-10-28 05:02:23,685.685 INFO    ] ================================================
[2026-10-28 05:02:24,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:02:24
[2026-10-28 05:02:25,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:02:25,343.343 INFO    ] Initializing speech engine...
[2026-10-28 05:02:25,351.351 INFO    ] 2026-10-28 05:02:25
[2026-10-28 05:02:25,643.643 INFO    ] 2026-10-28 05:02:25
[2026-10-28 05:02:25,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:02:25,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:02:25,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:02:26,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:02:26,199.199 INFO    ] time= 28/10/2026 05:02:26
[2026-10-28 05:02:26,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:02:26,242.242 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:02:26,351.351 INFO    ] No existing commands found in stream
[2026-10-28 05:02:31,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:02:31,386.386 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 05:02:33,054.054 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:02:33,058.058 INFO    ] Checking for system updates...
[2026-10-28 05:02:33,101.101 INFO    ] 200
[2026-10-28 05:02:33,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:02:33,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:02:33,176.176 INFO    ] No update needed
[2026-10-28 05:02:33,179.179 INFO    ] Checking for camera pi updates...
[2026-10-28 05:02:33,229.229 INFO    ] 200
[2026-10-28 05:02:33,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:02:33,278.278 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:02:33,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:02:33,361.361 INFO    ] No camera update needed
[2026-10-28 05:02:33,364.364 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:02:33,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:02:33,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:02:33,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:02:35,423.423 INFO    ] ================================================
[2026-10-28 05:02:35,439.439 INFO    ] Launching Daemon at Wed Oct 28 05:02:35 IST 2026
[2026-10-28 05:02:35,449.449 INFO    ] ================================================
[2026-10-28 05:02:36,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:02:36
[2026-10-28 05:02:36,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:02:36,935.935 INFO    ] Initializing speech engine...
[2026-10-28 05:02:36,944.944 INFO    ] 2026-10-28 05:02:36
[2026-10-28 05:02:37,238.238 INFO    ] 2026-10-28 05:02:37
[2026-10-28 05:02:37,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:02:37,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:02:37,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:02:37,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:02:37,745.745 INFO    ] time= 28/10/2026 05:02:37
[2026-10-28 05:02:37,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:02:37,849.849 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:02:38,003.003 INFO    ] No existing commands found in stream
[2026-10-28 05:02:43,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:02:43,029.029 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-28 05:02:45,858.858 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:02:45,861.861 INFO    ] Checking for system updates...
[2026-10-28 05:02:45,897.897 INFO    ] 200
[2026-10-28 05:02:45,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:02:45,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:02:45,970.970 INFO    ] No update needed
[2026-10-28 05:02:45,973.973 INFO    ] Checking for camera pi updates...
[2026-10-28 05:02:46,014.014 INFO    ] 200
[2026-10-28 05:02:46,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:02:46,058.058 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:02:46,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:02:46,146.146 INFO    ] No camera update needed
[2026-10-28 05:02:46,148.148 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:02:46,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:02:46,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:02:46,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:02:48,204.204 INFO    ] ================================================
[2026-10-28 05:02:48,219.219 INFO    ] Launching Daemon at Wed Oct 28 05:02:48 IST 2026
[2026-10-28 05:02:48,230.230 INFO    ] ================================================
[2026-10-28 05:02:48,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:02:48
[2026-10-28 05:02:49,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:02:49,763.763 INFO    ] Initializing speech engine...
[2026-10-28 05:02:49,776.776 INFO    ] 2026-10-28 05:02:49
[2026-10-28 05:02:50,085.085 INFO    ] 2026-10-28 05:02:50
[2026-10-28 05:02:50,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:02:50,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:02:50,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:02:50,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:02:50,766.766 INFO    ] time= 28/10/2026 05:02:50
[2026-10-28 05:02:50,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:02:50,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:02:51,010.010 INFO    ] No existing commands found in stream
[2026-10-28 05:02:56,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:02:56,039.039 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 05:02:57,807.807 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:02:57,810.810 INFO    ] Checking for system updates...
[2026-10-28 05:02:57,847.847 INFO    ] 200
[2026-10-28 05:02:57,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:02:57,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:02:57,911.911 INFO    ] No update needed
[2026-10-28 05:02:57,914.914 INFO    ] Checking for camera pi updates...
[2026-10-28 05:02:57,949.949 INFO    ] 200
[2026-10-28 05:02:57,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:02:57,993.993 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:02:58,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:02:58,098.098 INFO    ] No camera update needed
[2026-10-28 05:02:58,101.101 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:02:58,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:02:58,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:02:58,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:03:00,156.156 INFO    ] ================================================
[2026-10-28 05:03:00,172.172 INFO    ] Launching Daemon at Wed Oct 28 05:03:00 IST 2026
[2026-10-28 05:03:00,182.182 INFO    ] ================================================
[2026-10-28 05:03:00,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:03:00
[2026-10-28 05:03:01,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:03:01,631.631 INFO    ] Initializing speech engine...
[2026-10-28 05:03:01,640.640 INFO    ] 2026-10-28 05:03:01
[2026-10-28 05:03:01,889.889 INFO    ] 2026-10-28 05:03:01
[2026-10-28 05:03:01,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:03:02,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:03:02,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:03:02,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:03:02,427.427 INFO    ] time= 28/10/2026 05:03:02
[2026-10-28 05:03:02,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:03:02,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:03:02,528.528 INFO    ] No existing commands found in stream
[2026-10-28 05:03:07,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:03:07,541.541 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 05:03:09,796.796 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:03:09,798.798 INFO    ] Checking for system updates...
[2026-10-28 05:03:09,833.833 INFO    ] 200
[2026-10-28 05:03:09,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:03:09,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:03:09,890.890 INFO    ] No update needed
[2026-10-28 05:03:09,892.892 INFO    ] Checking for camera pi updates...
[2026-10-28 05:03:09,926.926 INFO    ] 200
[2026-10-28 05:03:09,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:03:09,969.969 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:03:10,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:03:10,052.052 INFO    ] No camera update needed
[2026-10-28 05:03:10,054.054 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:03:10,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:03:10,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:03:10,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:03:12,109.109 INFO    ] ================================================
[2026-10-28 05:03:12,124.124 INFO    ] Launching Daemon at Wed Oct 28 05:03:12 IST 2026
[2026-10-28 05:03:12,134.134 INFO    ] ================================================
[2026-10-28 05:03:12,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:03:12
[2026-10-28 05:03:13,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:03:13,746.746 INFO    ] Initializing speech engine...
[2026-10-28 05:03:13,756.756 INFO    ] 2026-10-28 05:03:13
[2026-10-28 05:03:14,026.026 INFO    ] 2026-10-28 05:03:14
[2026-10-28 05:03:14,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:03:14,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:03:14,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:03:14,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:03:14,573.573 INFO    ] time= 28/10/2026 05:03:14
[2026-10-28 05:03:14,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:03:14,620.620 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:03:14,727.727 INFO    ] No existing commands found in stream
[2026-10-28 05:03:19,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:03:19,770.770 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-28 05:03:21,659.659 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:03:21,662.662 INFO    ] Checking for system updates...
[2026-10-28 05:03:21,702.702 INFO    ] 200
[2026-10-28 05:03:21,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:03:21,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:03:21,765.765 INFO    ] No update needed
[2026-10-28 05:03:21,767.767 INFO    ] Checking for camera pi updates...
[2026-10-28 05:03:21,800.800 INFO    ] 200
[2026-10-28 05:03:21,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:03:21,843.843 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:03:21,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:03:21,928.928 INFO    ] No camera update needed
[2026-10-28 05:03:21,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:03:21,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:03:21,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:03:21,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:03:23,985.985 INFO    ] ================================================
[2026-10-28 05:03:24,000.000 INFO    ] Launching Daemon at Wed Oct 28 05:03:23 IST 2026
[2026-10-28 05:03:24,011.011 INFO    ] ================================================
[2026-10-28 05:03:24,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:03:24
[2026-10-28 05:03:25,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:03:25,483.483 INFO    ] Initializing speech engine...
[2026-10-28 05:03:25,491.491 INFO    ] 2026-10-28 05:03:25
[2026-10-28 05:03:25,751.751 INFO    ] 2026-10-28 05:03:25
[2026-10-28 05:03:25,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:03:26,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:03:26,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:03:26,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:03:26,299.299 INFO    ] time= 28/10/2026 05:03:26
[2026-10-28 05:03:26,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:03:26,321.321 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:03:26,448.448 INFO    ] No existing commands found in stream
[2026-10-28 05:03:31,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:03:31,467.467 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 05:03:32,460.460 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:03:32,463.463 INFO    ] Checking for system updates...
[2026-10-28 05:03:32,503.503 INFO    ] 200
[2026-10-28 05:03:32,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:03:32,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:03:32,567.567 INFO    ] No update needed
[2026-10-28 05:03:32,570.570 INFO    ] Checking for camera pi updates...
[2026-10-28 05:03:32,607.607 INFO    ] 200
[2026-10-28 05:03:32,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:03:32,664.664 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:03:32,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:03:32,785.785 INFO    ] No camera update needed
[2026-10-28 05:03:32,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:03:32,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:03:32,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:03:32,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:03:34,850.850 INFO    ] ================================================
[2026-10-28 05:03:34,865.865 INFO    ] Launching Daemon at Wed Oct 28 05:03:34 IST 2026
[2026-10-28 05:03:34,877.877 INFO    ] ================================================
[2026-10-28 05:03:35,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:03:35
[2026-10-28 05:03:36,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:03:36,349.349 INFO    ] Initializing speech engine...
[2026-10-28 05:03:36,360.360 INFO    ] 2026-10-28 05:03:36
[2026-10-28 05:03:36,609.609 INFO    ] 2026-10-28 05:03:36
[2026-10-28 05:03:36,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:03:36,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:03:36,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:03:37,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:03:37,166.166 INFO    ] time= 28/10/2026 05:03:37
[2026-10-28 05:03:37,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:03:37,187.187 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:03:37,322.322 INFO    ] No existing commands found in stream
[2026-10-28 05:03:42,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:03:42,345.345 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-28 05:03:44,835.835 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:03:44,839.839 INFO    ] Checking for system updates...
[2026-10-28 05:03:44,882.882 INFO    ] 200
[2026-10-28 05:03:44,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:03:44,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:03:44,952.952 INFO    ] No update needed
[2026-10-28 05:03:44,955.955 INFO    ] Checking for camera pi updates...
[2026-10-28 05:03:44,993.993 INFO    ] 200
[2026-10-28 05:03:44,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:03:45,041.041 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:03:45,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:03:45,131.131 INFO    ] No camera update needed
[2026-10-28 05:03:45,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:03:45,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:03:45,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:03:45,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:03:47,191.191 INFO    ] ================================================
[2026-10-28 05:03:47,207.207 INFO    ] Launching Daemon at Wed Oct 28 05:03:47 IST 2026
[2026-10-28 05:03:47,218.218 INFO    ] ================================================
[2026-10-28 05:03:47,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:03:47
[2026-10-28 05:03:48,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:03:48,762.762 INFO    ] Initializing speech engine...
[2026-10-28 05:03:48,767.767 INFO    ] 2026-10-28 05:03:48
[2026-10-28 05:03:49,072.072 INFO    ] 2026-10-28 05:03:49
[2026-10-28 05:03:49,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:03:49,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:03:49,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:03:49,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:03:49,571.571 INFO    ] time= 28/10/2026 05:03:49
[2026-10-28 05:03:49,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:03:49,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:03:49,832.832 INFO    ] No existing commands found in stream
[2026-10-28 05:03:54,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:03:54,856.856 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-28 05:03:57,816.816 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:03:57,818.818 INFO    ] Checking for system updates...
[2026-10-28 05:03:57,859.859 INFO    ] 200
[2026-10-28 05:03:57,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:03:57,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:03:57,918.918 INFO    ] No update needed
[2026-10-28 05:03:57,921.921 INFO    ] Checking for camera pi updates...
[2026-10-28 05:03:57,956.956 INFO    ] 200
[2026-10-28 05:03:57,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:03:57,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:03:58,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:03:58,086.086 INFO    ] No camera update needed
[2026-10-28 05:03:58,089.089 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:03:58,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:03:58,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:03:58,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:04:00,147.147 INFO    ] ================================================
[2026-10-28 05:04:00,163.163 INFO    ] Launching Daemon at Wed Oct 28 05:04:00 IST 2026
[2026-10-28 05:04:00,174.174 INFO    ] ================================================
[2026-10-28 05:04:00,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:04:00
[2026-10-28 05:04:01,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:04:01,884.884 INFO    ] Initializing speech engine...
[2026-10-28 05:04:01,892.892 INFO    ] 2026-10-28 05:04:01
[2026-10-28 05:04:02,185.185 INFO    ] 2026-10-28 05:04:02
[2026-10-28 05:04:02,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:04:02,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:04:02,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:04:02,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:04:02,734.734 INFO    ] time= 28/10/2026 05:04:02
[2026-10-28 05:04:02,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:04:02,808.808 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:04:02,919.919 INFO    ] No existing commands found in stream
[2026-10-28 05:04:07,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:04:07,959.959 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-28 05:04:10,755.755 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:04:10,758.758 INFO    ] Checking for system updates...
[2026-10-28 05:04:10,797.797 INFO    ] 200
[2026-10-28 05:04:10,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:04:10,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:04:10,869.869 INFO    ] No update needed
[2026-10-28 05:04:10,873.873 INFO    ] Checking for camera pi updates...
[2026-10-28 05:04:10,913.913 INFO    ] 200
[2026-10-28 05:04:10,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:04:10,961.961 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:04:11,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:04:11,047.047 INFO    ] No camera update needed
[2026-10-28 05:04:11,050.050 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:04:11,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:04:11,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:04:11,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:04:13,105.105 INFO    ] ================================================
[2026-10-28 05:04:13,121.121 INFO    ] Launching Daemon at Wed Oct 28 05:04:13 IST 2026
[2026-10-28 05:04:13,131.131 INFO    ] ================================================
[2026-10-28 05:04:13,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:04:13
[2026-10-28 05:04:14,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:04:14,718.718 INFO    ] Initializing speech engine...
[2026-10-28 05:04:14,731.731 INFO    ] 2026-10-28 05:04:14
[2026-10-28 05:04:14,996.996 INFO    ] 2026-10-28 05:04:14
[2026-10-28 05:04:15,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:04:15,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:04:15,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:04:15,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:04:15,542.542 INFO    ] time= 28/10/2026 05:04:15
[2026-10-28 05:04:15,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:04:15,567.567 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:04:15,698.698 INFO    ] No existing commands found in stream
[2026-10-28 05:04:20,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:04:20,722.722 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-28 05:04:22,536.536 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:04:22,539.539 INFO    ] Checking for system updates...
[2026-10-28 05:04:22,576.576 INFO    ] 200
[2026-10-28 05:04:22,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:04:22,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:04:22,633.633 INFO    ] No update needed
[2026-10-28 05:04:22,635.635 INFO    ] Checking for camera pi updates...
[2026-10-28 05:04:22,676.676 INFO    ] 200
[2026-10-28 05:04:22,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:04:22,723.723 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:04:22,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:04:22,809.809 INFO    ] No camera update needed
[2026-10-28 05:04:22,811.811 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:04:22,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:04:22,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:04:22,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:04:24,864.864 INFO    ] ================================================
[2026-10-28 05:04:24,879.879 INFO    ] Launching Daemon at Wed Oct 28 05:04:24 IST 2026
[2026-10-28 05:04:24,890.890 INFO    ] ================================================
[2026-10-28 05:04:25,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:04:25
[2026-10-28 05:04:26,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:04:26,306.306 INFO    ] Initializing speech engine...
[2026-10-28 05:04:26,322.322 INFO    ] 2026-10-28 05:04:26
[2026-10-28 05:04:26,590.590 INFO    ] 2026-10-28 05:04:26
[2026-10-28 05:04:26,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:04:26,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:04:26,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:04:27,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:04:27,177.177 INFO    ] time= 28/10/2026 05:04:27
[2026-10-28 05:04:27,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:04:27,219.219 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:04:27,333.333 INFO    ] No existing commands found in stream
[2026-10-28 05:04:32,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:04:32,358.358 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-28 05:04:35,716.716 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:04:35,719.719 INFO    ] Checking for system updates...
[2026-10-28 05:04:35,758.758 INFO    ] 200
[2026-10-28 05:04:35,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:04:35,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:04:35,827.827 INFO    ] No update needed
[2026-10-28 05:04:35,830.830 INFO    ] Checking for camera pi updates...
[2026-10-28 05:04:35,868.868 INFO    ] 200
[2026-10-28 05:04:35,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:04:35,918.918 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:04:35,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:04:36,001.001 INFO    ] No camera update needed
[2026-10-28 05:04:36,004.004 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:04:36,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:04:36,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:04:36,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:04:38,060.060 INFO    ] ================================================
[2026-10-28 05:04:38,075.075 INFO    ] Launching Daemon at Wed Oct 28 05:04:38 IST 2026
[2026-10-28 05:04:38,085.085 INFO    ] ================================================
[2026-10-28 05:04:38,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:04:38
[2026-10-28 05:04:39,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:04:39,565.565 INFO    ] Initializing speech engine...
[2026-10-28 05:04:39,572.572 INFO    ] 2026-10-28 05:04:39
[2026-10-28 05:04:39,831.831 INFO    ] 2026-10-28 05:04:39
[2026-10-28 05:04:39,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:04:40,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:04:40,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:04:40,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:04:40,374.374 INFO    ] time= 28/10/2026 05:04:40
[2026-10-28 05:04:40,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:04:40,420.420 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:04:40,541.541 INFO    ] No existing commands found in stream
[2026-10-28 05:04:45,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:04:45,569.569 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 05:04:46,178.178 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:04:46,181.181 INFO    ] Checking for system updates...
[2026-10-28 05:04:46,216.216 INFO    ] 200
[2026-10-28 05:04:46,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:04:46,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:04:46,274.274 INFO    ] No update needed
[2026-10-28 05:04:46,277.277 INFO    ] Checking for camera pi updates...
[2026-10-28 05:04:46,311.311 INFO    ] 200
[2026-10-28 05:04:46,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:04:46,355.355 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:04:46,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:04:46,439.439 INFO    ] No camera update needed
[2026-10-28 05:04:46,441.441 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:04:46,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:04:46,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:04:46,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:04:48,496.496 INFO    ] ================================================
[2026-10-28 05:04:48,511.511 INFO    ] Launching Daemon at Wed Oct 28 05:04:48 IST 2026
[2026-10-28 05:04:48,522.522 INFO    ] ================================================
[2026-10-28 05:04:49,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:04:49
[2026-10-28 05:04:49,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:04:49,951.951 INFO    ] Initializing speech engine...
[2026-10-28 05:04:49,967.967 INFO    ] 2026-10-28 05:04:49
[2026-10-28 05:04:50,249.249 INFO    ] 2026-10-28 05:04:50
[2026-10-28 05:04:50,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:04:50,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:04:50,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:04:50,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:04:50,796.796 INFO    ] time= 28/10/2026 05:04:50
[2026-10-28 05:04:50,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:04:50,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:04:51,013.013 INFO    ] No existing commands found in stream
[2026-10-28 05:04:56,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:04:56,028.028 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-28 05:04:57,169.169 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:04:57,172.172 INFO    ] Checking for system updates...
[2026-10-28 05:04:57,209.209 INFO    ] 200
[2026-10-28 05:04:57,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:04:57,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:04:57,269.269 INFO    ] No update needed
[2026-10-28 05:04:57,271.271 INFO    ] Checking for camera pi updates...
[2026-10-28 05:04:57,308.308 INFO    ] 200
[2026-10-28 05:04:57,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:04:57,351.351 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:04:57,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:04:57,439.439 INFO    ] No camera update needed
[2026-10-28 05:04:57,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:04:57,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:04:57,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:04:57,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:04:59,495.495 INFO    ] ================================================
[2026-10-28 05:04:59,517.517 INFO    ] Launching Daemon at Wed Oct 28 05:04:59 IST 2026
[2026-10-28 05:04:59,531.531 INFO    ] ================================================
[2026-10-28 05:05:00,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:05:00
[2026-10-28 05:05:00,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:05:00,961.961 INFO    ] Initializing speech engine...
[2026-10-28 05:05:00,968.968 INFO    ] 2026-10-28 05:05:00
[2026-10-28 05:05:01,236.236 INFO    ] 2026-10-28 05:05:01
[2026-10-28 05:05:01,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:05:01,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:05:01,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:05:01,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:05:01,734.734 INFO    ] time= 28/10/2026 05:05:01
[2026-10-28 05:05:01,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:05:01,741.741 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:05:01,831.831 INFO    ] No existing commands found in stream
[2026-10-28 05:05:06,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:05:06,844.844 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-28 05:05:07,881.881 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:05:07,884.884 INFO    ] Checking for system updates...
[2026-10-28 05:05:07,919.919 INFO    ] 200
[2026-10-28 05:05:07,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:05:07,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:05:07,986.986 INFO    ] No update needed
[2026-10-28 05:05:07,988.988 INFO    ] Checking for camera pi updates...
[2026-10-28 05:05:08,021.021 INFO    ] 200
[2026-10-28 05:05:08,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:05:08,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:05:08,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:05:08,148.148 INFO    ] No camera update needed
[2026-10-28 05:05:08,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:05:08,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:05:08,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:05:08,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:05:10,204.204 INFO    ] ================================================
[2026-10-28 05:05:10,220.220 INFO    ] Launching Daemon at Wed Oct 28 05:05:10 IST 2026
[2026-10-28 05:05:10,231.231 INFO    ] ================================================
[2026-10-28 05:05:10,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:05:10
[2026-10-28 05:05:11,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:05:11,728.728 INFO    ] Initializing speech engine...
[2026-10-28 05:05:11,734.734 INFO    ] 2026-10-28 05:05:11
[2026-10-28 05:05:12,028.028 INFO    ] 2026-10-28 05:05:11
[2026-10-28 05:05:12,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:05:12,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:05:12,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:05:12,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:05:12,541.541 INFO    ] time= 28/10/2026 05:05:12
[2026-10-28 05:05:12,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:05:12,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:05:12,727.727 INFO    ] No existing commands found in stream
[2026-10-28 05:05:17,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:05:17,742.742 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-28 05:05:21,284.284 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:05:21,287.287 INFO    ] Checking for system updates...
[2026-10-28 05:05:21,324.324 INFO    ] 200
[2026-10-28 05:05:21,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:05:21,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:05:21,385.385 INFO    ] No update needed
[2026-10-28 05:05:21,388.388 INFO    ] Checking for camera pi updates...
[2026-10-28 05:05:21,421.421 INFO    ] 200
[2026-10-28 05:05:21,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:05:21,464.464 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:05:21,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:05:21,548.548 INFO    ] No camera update needed
[2026-10-28 05:05:21,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:05:21,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:05:21,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:05:21,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:05:23,605.605 INFO    ] ================================================
[2026-10-28 05:05:23,620.620 INFO    ] Launching Daemon at Wed Oct 28 05:05:23 IST 2026
[2026-10-28 05:05:23,631.631 INFO    ] ================================================
[2026-10-28 05:05:24,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:05:24
[2026-10-28 05:05:24,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:05:25,067.067 INFO    ] Initializing speech engine...
[2026-10-28 05:05:25,085.085 INFO    ] 2026-10-28 05:05:25
[2026-10-28 05:05:25,356.356 INFO    ] 2026-10-28 05:05:25
[2026-10-28 05:05:25,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:05:25,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:05:25,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:05:25,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:05:25,984.984 INFO    ] time= 28/10/2026 05:05:25
[2026-10-28 05:05:25,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:05:26,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:05:26,167.167 INFO    ] No existing commands found in stream
[2026-10-28 05:05:31,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:05:31,191.191 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 05:05:33,299.299 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:05:33,301.301 INFO    ] Checking for system updates...
[2026-10-28 05:05:33,337.337 INFO    ] 200
[2026-10-28 05:05:33,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:05:33,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:05:33,393.393 INFO    ] No update needed
[2026-10-28 05:05:33,396.396 INFO    ] Checking for camera pi updates...
[2026-10-28 05:05:33,432.432 INFO    ] 200
[2026-10-28 05:05:33,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:05:33,475.475 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:05:33,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:05:33,564.564 INFO    ] No camera update needed
[2026-10-28 05:05:33,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:05:33,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:05:33,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:05:33,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:05:35,622.622 INFO    ] ================================================
[2026-10-28 05:05:35,639.639 INFO    ] Launching Daemon at Wed Oct 28 05:05:35 IST 2026
[2026-10-28 05:05:35,654.654 INFO    ] ================================================
[2026-10-28 05:05:36,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:05:36
[2026-10-28 05:05:36,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:05:37,125.125 INFO    ] Initializing speech engine...
[2026-10-28 05:05:37,134.134 INFO    ] 2026-10-28 05:05:37
[2026-10-28 05:05:37,440.440 INFO    ] 2026-10-28 05:05:37
[2026-10-28 05:05:37,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:05:37,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:05:37,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:05:37,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:05:38,017.017 INFO    ] time= 28/10/2026 05:05:37
[2026-10-28 05:05:38,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:05:38,042.042 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:05:38,174.174 INFO    ] No existing commands found in stream
[2026-10-28 05:05:43,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:05:43,192.192 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-28 05:05:45,701.701 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:05:45,704.704 INFO    ] Checking for system updates...
[2026-10-28 05:05:45,740.740 INFO    ] 200
[2026-10-28 05:05:45,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:05:45,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:05:45,798.798 INFO    ] No update needed
[2026-10-28 05:05:45,800.800 INFO    ] Checking for camera pi updates...
[2026-10-28 05:05:45,834.834 INFO    ] 200
[2026-10-28 05:05:45,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:05:45,876.876 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:05:45,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:05:45,979.979 INFO    ] No camera update needed
[2026-10-28 05:05:45,982.982 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:05:45,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:05:45,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:05:45,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:05:48,034.034 INFO    ] ================================================
[2026-10-28 05:05:48,050.050 INFO    ] Launching Daemon at Wed Oct 28 05:05:48 IST 2026
[2026-10-28 05:05:48,061.061 INFO    ] ================================================
[2026-10-28 05:05:48,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:05:48
[2026-10-28 05:05:49,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:05:49,469.469 INFO    ] Initializing speech engine...
[2026-10-28 05:05:49,475.475 INFO    ] 2026-10-28 05:05:49
[2026-10-28 05:05:49,778.778 INFO    ] 2026-10-28 05:05:49
[2026-10-28 05:05:49,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:05:50,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:05:50,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:05:50,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:05:50,413.413 INFO    ] time= 28/10/2026 05:05:50
[2026-10-28 05:05:50,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:05:50,441.441 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:05:50,595.595 INFO    ] No existing commands found in stream
[2026-10-28 05:05:55,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:05:55,618.618 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-28 05:05:56,844.844 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:05:56,846.846 INFO    ] Checking for system updates...
[2026-10-28 05:05:56,883.883 INFO    ] 200
[2026-10-28 05:05:56,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:05:56,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:05:56,949.949 INFO    ] No update needed
[2026-10-28 05:05:56,951.951 INFO    ] Checking for camera pi updates...
[2026-10-28 05:05:56,985.985 INFO    ] 200
[2026-10-28 05:05:56,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:05:57,027.027 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:05:57,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:05:57,110.110 INFO    ] No camera update needed
[2026-10-28 05:05:57,113.113 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:05:57,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:05:57,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:05:57,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:05:59,164.164 INFO    ] ================================================
[2026-10-28 05:05:59,179.179 INFO    ] Launching Daemon at Wed Oct 28 05:05:59 IST 2026
[2026-10-28 05:05:59,190.190 INFO    ] ================================================
[2026-10-28 05:05:59,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:05:59
[2026-10-28 05:06:00,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:06:00,622.622 INFO    ] Initializing speech engine...
[2026-10-28 05:06:00,637.637 INFO    ] 2026-10-28 05:06:00
[2026-10-28 05:06:00,921.921 INFO    ] 2026-10-28 05:06:00
[2026-10-28 05:06:00,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:06:01,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:06:01,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:06:01,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:06:01,475.475 INFO    ] time= 28/10/2026 05:06:01
[2026-10-28 05:06:01,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:06:01,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:06:01,625.625 INFO    ] No existing commands found in stream
[2026-10-28 05:06:06,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:06:06,642.642 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-28 05:06:07,779.779 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:06:07,781.781 INFO    ] Checking for system updates...
[2026-10-28 05:06:07,816.816 INFO    ] 200
[2026-10-28 05:06:07,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:06:07,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:06:07,874.874 INFO    ] No update needed
[2026-10-28 05:06:07,876.876 INFO    ] Checking for camera pi updates...
[2026-10-28 05:06:07,914.914 INFO    ] 200
[2026-10-28 05:06:07,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:06:07,959.959 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:06:08,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:06:08,143.143 INFO    ] No camera update needed
[2026-10-28 05:06:08,145.145 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:06:08,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:06:08,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:06:08,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:06:10,198.198 INFO    ] ================================================
[2026-10-28 05:06:10,214.214 INFO    ] Launching Daemon at Wed Oct 28 05:06:10 IST 2026
[2026-10-28 05:06:10,225.225 INFO    ] ================================================
[2026-10-28 05:06:10,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:06:10
[2026-10-28 05:06:11,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:06:11,710.710 INFO    ] Initializing speech engine...
[2026-10-28 05:06:11,726.726 INFO    ] 2026-10-28 05:06:11
[2026-10-28 05:06:11,985.985 INFO    ] 2026-10-28 05:06:11
[2026-10-28 05:06:12,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:06:12,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:06:12,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:06:12,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:06:12,601.601 INFO    ] time= 28/10/2026 05:06:12
[2026-10-28 05:06:12,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:06:12,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:06:12,748.748 INFO    ] No existing commands found in stream
[2026-10-28 05:06:17,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:06:17,776.776 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-28 05:06:20,294.294 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:06:20,297.297 INFO    ] Checking for system updates...
[2026-10-28 05:06:20,332.332 INFO    ] 200
[2026-10-28 05:06:20,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:06:20,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:06:20,390.390 INFO    ] No update needed
[2026-10-28 05:06:20,392.392 INFO    ] Checking for camera pi updates...
[2026-10-28 05:06:20,428.428 INFO    ] 200
[2026-10-28 05:06:20,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:06:20,474.474 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:06:20,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:06:20,587.587 INFO    ] No camera update needed
[2026-10-28 05:06:20,589.589 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:06:20,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:06:20,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:06:20,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:06:22,641.641 INFO    ] ================================================
[2026-10-28 05:06:22,657.657 INFO    ] Launching Daemon at Wed Oct 28 05:06:22 IST 2026
[2026-10-28 05:06:22,668.668 INFO    ] ================================================
[2026-10-28 05:06:23,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:06:23
[2026-10-28 05:06:23,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:06:24,194.194 INFO    ] Initializing speech engine...
[2026-10-28 05:06:24,203.203 INFO    ] 2026-10-28 05:06:24
[2026-10-28 05:06:24,444.444 INFO    ] 2026-10-28 05:06:24
[2026-10-28 05:06:24,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:06:24,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:06:24,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:06:24,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:06:25,001.001 INFO    ] time= 28/10/2026 05:06:24
[2026-10-28 05:06:25,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:06:25,025.025 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:06:25,159.159 INFO    ] No existing commands found in stream
[2026-10-28 05:06:30,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:06:30,182.182 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-28 05:06:34,596.596 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:06:34,599.599 INFO    ] Checking for system updates...
[2026-10-28 05:06:34,637.637 INFO    ] 200
[2026-10-28 05:06:34,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:06:34,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:06:34,694.694 INFO    ] No update needed
[2026-10-28 05:06:34,696.696 INFO    ] Checking for camera pi updates...
[2026-10-28 05:06:34,729.729 INFO    ] 200
[2026-10-28 05:06:34,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:06:34,772.772 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:06:34,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:06:34,857.857 INFO    ] No camera update needed
[2026-10-28 05:06:34,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:06:34,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:06:34,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:06:34,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:06:36,912.912 INFO    ] ================================================
[2026-10-28 05:06:36,927.927 INFO    ] Launching Daemon at Wed Oct 28 05:06:36 IST 2026
[2026-10-28 05:06:36,939.939 INFO    ] ================================================
[2026-10-28 05:06:37,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:06:37
[2026-10-28 05:06:38,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:06:38,524.524 INFO    ] Initializing speech engine...
[2026-10-28 05:06:38,533.533 INFO    ] 2026-10-28 05:06:38
[2026-10-28 05:06:38,819.819 INFO    ] 2026-10-28 05:06:38
[2026-10-28 05:06:38,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:06:39,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:06:39,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:06:39,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:06:39,510.510 INFO    ] time= 28/10/2026 05:06:39
[2026-10-28 05:06:39,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:06:39,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:06:39,743.743 INFO    ] No existing commands found in stream
[2026-10-28 05:06:44,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:06:44,767.767 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 05:06:45,808.808 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:06:45,811.811 INFO    ] Checking for system updates...
[2026-10-28 05:06:45,851.851 INFO    ] 200
[2026-10-28 05:06:45,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:06:45,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:06:45,910.910 INFO    ] No update needed
[2026-10-28 05:06:45,912.912 INFO    ] Checking for camera pi updates...
[2026-10-28 05:06:45,947.947 INFO    ] 200
[2026-10-28 05:06:45,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:06:45,992.992 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:06:46,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:06:46,089.089 INFO    ] No camera update needed
[2026-10-28 05:06:46,091.091 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:06:46,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:06:46,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:06:46,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:06:48,148.148 INFO    ] ================================================
[2026-10-28 05:06:48,164.164 INFO    ] Launching Daemon at Wed Oct 28 05:06:48 IST 2026
[2026-10-28 05:06:48,175.175 INFO    ] ================================================
[2026-10-28 05:06:48,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:06:48
[2026-10-28 05:06:49,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:06:49,615.615 INFO    ] Initializing speech engine...
[2026-10-28 05:06:49,638.638 INFO    ] 2026-10-28 05:06:49
[2026-10-28 05:06:49,897.897 INFO    ] 2026-10-28 05:06:49
[2026-10-28 05:06:49,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:06:50,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:06:50,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:06:50,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:06:50,492.492 INFO    ] time= 28/10/2026 05:06:50
[2026-10-28 05:06:50,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:06:50,516.516 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:06:50,651.651 INFO    ] No existing commands found in stream
[2026-10-28 05:06:55,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:06:55,677.677 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-28 05:06:59,973.973 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:06:59,976.976 INFO    ] Checking for system updates...
[2026-10-28 05:07:00,012.012 INFO    ] 200
[2026-10-28 05:07:00,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:07:00,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:07:00,070.070 INFO    ] No update needed
[2026-10-28 05:07:00,072.072 INFO    ] Checking for camera pi updates...
[2026-10-28 05:07:00,107.107 INFO    ] 200
[2026-10-28 05:07:00,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:07:00,149.149 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:07:00,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:07:00,241.241 INFO    ] No camera update needed
[2026-10-28 05:07:00,244.244 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:07:00,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:07:00,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:07:00,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:07:02,308.308 INFO    ] ================================================
[2026-10-28 05:07:02,330.330 INFO    ] Launching Daemon at Wed Oct 28 05:07:02 IST 2026
[2026-10-28 05:07:02,347.347 INFO    ] ================================================
[2026-10-28 05:07:02,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:07:02
[2026-10-28 05:07:03,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:07:03,944.944 INFO    ] Initializing speech engine...
[2026-10-28 05:07:03,953.953 INFO    ] 2026-10-28 05:07:03
[2026-10-28 05:07:04,219.219 INFO    ] 2026-10-28 05:07:04
[2026-10-28 05:07:04,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:07:04,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:07:04,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:07:04,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:07:05,036.036 INFO    ] time= 28/10/2026 05:07:05
[2026-10-28 05:07:05,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:07:05,140.140 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:07:05,307.307 INFO    ] No existing commands found in stream
[2026-10-28 05:07:10,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:07:10,345.345 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-28 05:07:11,938.938 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:07:11,940.940 INFO    ] Checking for system updates...
[2026-10-28 05:07:11,978.978 INFO    ] 200
[2026-10-28 05:07:11,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:07:12,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:07:12,036.036 INFO    ] No update needed
[2026-10-28 05:07:12,039.039 INFO    ] Checking for camera pi updates...
[2026-10-28 05:07:12,073.073 INFO    ] 200
[2026-10-28 05:07:12,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:07:12,115.115 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:07:12,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:07:12,206.206 INFO    ] No camera update needed
[2026-10-28 05:07:12,209.209 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:07:12,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:07:12,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:07:12,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:07:14,262.262 INFO    ] ================================================
[2026-10-28 05:07:14,278.278 INFO    ] Launching Daemon at Wed Oct 28 05:07:14 IST 2026
[2026-10-28 05:07:14,289.289 INFO    ] ================================================
[2026-10-28 05:07:14,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:07:14
[2026-10-28 05:07:15,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:07:15,907.907 INFO    ] Initializing speech engine...
[2026-10-28 05:07:15,915.915 INFO    ] 2026-10-28 05:07:15
[2026-10-28 05:07:16,172.172 INFO    ] 2026-10-28 05:07:16
[2026-10-28 05:07:16,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:07:16,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:07:16,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:07:16,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:07:16,875.875 INFO    ] time= 28/10/2026 05:07:16
[2026-10-28 05:07:16,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:07:16,966.966 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:07:17,116.116 INFO    ] No existing commands found in stream
[2026-10-28 05:07:22,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:07:22,149.149 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-28 05:07:23,663.663 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:07:23,666.666 INFO    ] Checking for system updates...
[2026-10-28 05:07:23,704.704 INFO    ] 200
[2026-10-28 05:07:23,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:07:23,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:07:23,764.764 INFO    ] No update needed
[2026-10-28 05:07:23,767.767 INFO    ] Checking for camera pi updates...
[2026-10-28 05:07:23,822.822 INFO    ] 200
[2026-10-28 05:07:23,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:07:23,868.868 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:07:23,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:07:23,954.954 INFO    ] No camera update needed
[2026-10-28 05:07:23,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:07:23,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:07:23,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:07:23,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:07:26,016.016 INFO    ] ================================================
[2026-10-28 05:07:26,032.032 INFO    ] Launching Daemon at Wed Oct 28 05:07:26 IST 2026
[2026-10-28 05:07:26,043.043 INFO    ] ================================================
[2026-10-28 05:07:26,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:07:26
[2026-10-28 05:07:27,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:07:27,670.670 INFO    ] Initializing speech engine...
[2026-10-28 05:07:27,679.679 INFO    ] 2026-10-28 05:07:27
[2026-10-28 05:07:27,958.958 INFO    ] 2026-10-28 05:07:27
[2026-10-28 05:07:28,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:07:28,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:07:28,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:07:28,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:07:28,561.561 INFO    ] time= 28/10/2026 05:07:28
[2026-10-28 05:07:28,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:07:28,577.577 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:07:28,676.676 INFO    ] No existing commands found in stream
[2026-10-28 05:07:33,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:07:33,700.700 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 05:07:34,855.855 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:07:34,858.858 INFO    ] Checking for system updates...
[2026-10-28 05:07:34,923.923 INFO    ] 200
[2026-10-28 05:07:34,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:07:34,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:07:34,986.986 INFO    ] No update needed
[2026-10-28 05:07:34,989.989 INFO    ] Checking for camera pi updates...
[2026-10-28 05:07:35,024.024 INFO    ] 200
[2026-10-28 05:07:35,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:07:35,068.068 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:07:35,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:07:35,154.154 INFO    ] No camera update needed
[2026-10-28 05:07:35,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:07:35,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:07:35,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:07:35,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:07:37,214.214 INFO    ] ================================================
[2026-10-28 05:07:37,229.229 INFO    ] Launching Daemon at Wed Oct 28 05:07:37 IST 2026
[2026-10-28 05:07:37,241.241 INFO    ] ================================================
[2026-10-28 05:07:37,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:07:37
[2026-10-28 05:07:38,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:07:38,866.866 INFO    ] Initializing speech engine...
[2026-10-28 05:07:38,872.872 INFO    ] 2026-10-28 05:07:38
[2026-10-28 05:07:39,164.164 INFO    ] 2026-10-28 05:07:39
[2026-10-28 05:07:39,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:07:39,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:07:39,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:07:39,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:07:39,720.720 INFO    ] time= 28/10/2026 05:07:39
[2026-10-28 05:07:39,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:07:39,757.757 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:07:39,905.905 INFO    ] No existing commands found in stream
[2026-10-28 05:07:44,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:07:44,939.939 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-28 05:07:46,573.573 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:07:46,575.575 INFO    ] Checking for system updates...
[2026-10-28 05:07:46,615.615 INFO    ] 200
[2026-10-28 05:07:46,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:07:46,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:07:46,671.671 INFO    ] No update needed
[2026-10-28 05:07:46,674.674 INFO    ] Checking for camera pi updates...
[2026-10-28 05:07:46,707.707 INFO    ] 200
[2026-10-28 05:07:46,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:07:46,755.755 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:07:46,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:07:46,831.831 INFO    ] No camera update needed
[2026-10-28 05:07:46,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:07:46,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:07:46,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:07:46,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:07:48,889.889 INFO    ] ================================================
[2026-10-28 05:07:48,905.905 INFO    ] Launching Daemon at Wed Oct 28 05:07:48 IST 2026
[2026-10-28 05:07:48,916.916 INFO    ] ================================================
[2026-10-28 05:07:49,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:07:49
[2026-10-28 05:07:50,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:07:50,330.330 INFO    ] Initializing speech engine...
[2026-10-28 05:07:50,339.339 INFO    ] 2026-10-28 05:07:50
[2026-10-28 05:07:50,634.634 INFO    ] 2026-10-28 05:07:50
[2026-10-28 05:07:50,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:07:50,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:07:50,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:07:51,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:07:51,052.052 INFO    ] time= 28/10/2026 05:07:51
[2026-10-28 05:07:51,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:07:51,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:07:51,224.224 INFO    ] No existing commands found in stream
[2026-10-28 05:07:56,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:07:56,251.251 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-28 05:08:00,448.448 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:08:00,451.451 INFO    ] Checking for system updates...
[2026-10-28 05:08:00,487.487 INFO    ] 200
[2026-10-28 05:08:00,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:08:00,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:08:00,546.546 INFO    ] No update needed
[2026-10-28 05:08:00,548.548 INFO    ] Checking for camera pi updates...
[2026-10-28 05:08:00,585.585 INFO    ] 200
[2026-10-28 05:08:00,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:08:00,628.628 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:08:00,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:08:00,713.713 INFO    ] No camera update needed
[2026-10-28 05:08:00,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:08:00,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:08:00,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:08:00,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:08:02,772.772 INFO    ] ================================================
[2026-10-28 05:08:02,787.787 INFO    ] Launching Daemon at Wed Oct 28 05:08:02 IST 2026
[2026-10-28 05:08:02,798.798 INFO    ] ================================================
[2026-10-28 05:08:03,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:08:03
[2026-10-28 05:08:03,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:08:04,246.246 INFO    ] Initializing speech engine...
[2026-10-28 05:08:04,252.252 INFO    ] 2026-10-28 05:08:04
[2026-10-28 05:08:04,531.531 INFO    ] 2026-10-28 05:08:04
[2026-10-28 05:08:04,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:08:04,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:08:04,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:08:04,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:08:05,034.034 INFO    ] time= 28/10/2026 05:08:04
[2026-10-28 05:08:05,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:08:05,102.102 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:08:05,239.239 INFO    ] No existing commands found in stream
[2026-10-28 05:08:10,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:08:10,264.264 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-28 05:08:12,955.955 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:08:12,958.958 INFO    ] Checking for system updates...
[2026-10-28 05:08:12,995.995 INFO    ] 200
[2026-10-28 05:08:12,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:08:13,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:08:13,055.055 INFO    ] No update needed
[2026-10-28 05:08:13,058.058 INFO    ] Checking for camera pi updates...
[2026-10-28 05:08:13,096.096 INFO    ] 200
[2026-10-28 05:08:13,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:08:13,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:08:13,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:08:13,327.327 INFO    ] No camera update needed
[2026-10-28 05:08:13,330.330 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:08:13,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:08:13,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:08:13,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:08:15,386.386 INFO    ] ================================================
[2026-10-28 05:08:15,401.401 INFO    ] Launching Daemon at Wed Oct 28 05:08:15 IST 2026
[2026-10-28 05:08:15,412.412 INFO    ] ================================================
[2026-10-28 05:08:15,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:08:15
[2026-10-28 05:08:16,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:08:16,863.863 INFO    ] Initializing speech engine...
[2026-10-28 05:08:16,872.872 INFO    ] 2026-10-28 05:08:16
[2026-10-28 05:08:17,132.132 INFO    ] 2026-10-28 05:08:17
[2026-10-28 05:08:17,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:08:17,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:08:17,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:08:17,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:08:17,676.676 INFO    ] time= 28/10/2026 05:08:17
[2026-10-28 05:08:17,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:08:17,723.723 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:08:17,839.839 INFO    ] No existing commands found in stream
[2026-10-28 05:08:22,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:08:22,866.866 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 05:08:26,256.256 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:08:26,258.258 INFO    ] Checking for system updates...
[2026-10-28 05:08:26,298.298 INFO    ] 200
[2026-10-28 05:08:26,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:08:26,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:08:26,355.355 INFO    ] No update needed
[2026-10-28 05:08:26,357.357 INFO    ] Checking for camera pi updates...
[2026-10-28 05:08:26,391.391 INFO    ] 200
[2026-10-28 05:08:26,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:08:26,435.435 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:08:26,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:08:26,516.516 INFO    ] No camera update needed
[2026-10-28 05:08:26,519.519 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:08:26,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:08:26,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:08:26,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:08:28,574.574 INFO    ] ================================================
[2026-10-28 05:08:28,590.590 INFO    ] Launching Daemon at Wed Oct 28 05:08:28 IST 2026
[2026-10-28 05:08:28,601.601 INFO    ] ================================================
[2026-10-28 05:08:29,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:08:29
[2026-10-28 05:08:29,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:08:30,021.021 INFO    ] Initializing speech engine...
[2026-10-28 05:08:30,033.033 INFO    ] 2026-10-28 05:08:30
[2026-10-28 05:08:30,300.300 INFO    ] 2026-10-28 05:08:30
[2026-10-28 05:08:30,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:08:30,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:08:30,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:08:30,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:08:30,867.867 INFO    ] time= 28/10/2026 05:08:30
[2026-10-28 05:08:30,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:08:30,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:08:31,027.027 INFO    ] No existing commands found in stream
[2026-10-28 05:08:36,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:08:36,044.044 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-28 05:08:37,777.777 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:08:37,780.780 INFO    ] Checking for system updates...
[2026-10-28 05:08:37,815.815 INFO    ] 200
[2026-10-28 05:08:37,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:08:37,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:08:37,872.872 INFO    ] No update needed
[2026-10-28 05:08:37,875.875 INFO    ] Checking for camera pi updates...
[2026-10-28 05:08:37,909.909 INFO    ] 200
[2026-10-28 05:08:37,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:08:37,951.951 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:08:38,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:08:38,043.043 INFO    ] No camera update needed
[2026-10-28 05:08:38,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:08:38,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:08:38,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:08:38,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:08:40,104.104 INFO    ] ================================================
[2026-10-28 05:08:40,120.120 INFO    ] Launching Daemon at Wed Oct 28 05:08:40 IST 2026
[2026-10-28 05:08:40,131.131 INFO    ] ================================================
[2026-10-28 05:08:40,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:08:40
[2026-10-28 05:08:41,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:08:41,735.735 INFO    ] Initializing speech engine...
[2026-10-28 05:08:41,746.746 INFO    ] 2026-10-28 05:08:41
[2026-10-28 05:08:42,015.015 INFO    ] 2026-10-28 05:08:42
[2026-10-28 05:08:42,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:08:42,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:08:42,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:08:42,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:08:42,592.592 INFO    ] time= 28/10/2026 05:08:42
[2026-10-28 05:08:42,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:08:42,633.633 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:08:42,758.758 INFO    ] No existing commands found in stream
[2026-10-28 05:08:47,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:08:47,807.807 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-28 05:08:51,733.733 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:08:51,736.736 INFO    ] Checking for system updates...
[2026-10-28 05:08:51,775.775 INFO    ] 200
[2026-10-28 05:08:51,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:08:51,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:08:51,839.839 INFO    ] No update needed
[2026-10-28 05:08:51,841.841 INFO    ] Checking for camera pi updates...
[2026-10-28 05:08:51,878.878 INFO    ] 200
[2026-10-28 05:08:51,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:08:51,921.921 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:08:52,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:08:52,012.012 INFO    ] No camera update needed
[2026-10-28 05:08:52,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:08:52,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:08:52,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:08:52,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:08:54,069.069 INFO    ] ================================================
[2026-10-28 05:08:54,085.085 INFO    ] Launching Daemon at Wed Oct 28 05:08:54 IST 2026
[2026-10-28 05:08:54,096.096 INFO    ] ================================================
[2026-10-28 05:08:54,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:08:54
[2026-10-28 05:08:55,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:08:55,738.738 INFO    ] Initializing speech engine...
[2026-10-28 05:08:55,747.747 INFO    ] 2026-10-28 05:08:55
[2026-10-28 05:08:56,039.039 INFO    ] 2026-10-28 05:08:56
[2026-10-28 05:08:56,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:08:56,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:08:56,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:08:56,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:08:56,732.732 INFO    ] time= 28/10/2026 05:08:56
[2026-10-28 05:08:56,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:08:56,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:08:56,965.965 INFO    ] No existing commands found in stream
[2026-10-28 05:09:01,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:09:01,989.989 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-28 05:09:02,914.914 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:09:02,917.917 INFO    ] Checking for system updates...
[2026-10-28 05:09:02,955.955 INFO    ] 200
[2026-10-28 05:09:02,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:09:03,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:09:03,026.026 INFO    ] No update needed
[2026-10-28 05:09:03,029.029 INFO    ] Checking for camera pi updates...
[2026-10-28 05:09:03,063.063 INFO    ] 200
[2026-10-28 05:09:03,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:09:03,124.124 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:09:03,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:09:03,214.214 INFO    ] No camera update needed
[2026-10-28 05:09:03,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:09:03,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:09:03,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:09:03,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:09:05,275.275 INFO    ] ================================================
[2026-10-28 05:09:05,291.291 INFO    ] Launching Daemon at Wed Oct 28 05:09:05 IST 2026
[2026-10-28 05:09:05,302.302 INFO    ] ================================================
[2026-10-28 05:09:05,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:09:05
[2026-10-28 05:09:06,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:09:06,928.928 INFO    ] Initializing speech engine...
[2026-10-28 05:09:06,941.941 INFO    ] 2026-10-28 05:09:06
[2026-10-28 05:09:07,227.227 INFO    ] 2026-10-28 05:09:07
[2026-10-28 05:09:07,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:09:07,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:09:07,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:09:07,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:09:07,811.811 INFO    ] time= 28/10/2026 05:09:07
[2026-10-28 05:09:07,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:09:07,910.910 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:09:08,048.048 INFO    ] No existing commands found in stream
[2026-10-28 05:09:13,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:09:13,087.087 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 05:09:13,674.674 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:09:13,677.677 INFO    ] Checking for system updates...
[2026-10-28 05:09:13,714.714 INFO    ] 200
[2026-10-28 05:09:13,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:09:13,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:09:13,772.772 INFO    ] No update needed
[2026-10-28 05:09:13,775.775 INFO    ] Checking for camera pi updates...
[2026-10-28 05:09:13,814.814 INFO    ] 200
[2026-10-28 05:09:13,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:09:13,868.868 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:09:13,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:09:13,952.952 INFO    ] No camera update needed
[2026-10-28 05:09:13,955.955 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:09:13,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:09:13,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:09:13,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:09:16,012.012 INFO    ] ================================================
[2026-10-28 05:09:16,027.027 INFO    ] Launching Daemon at Wed Oct 28 05:09:16 IST 2026
[2026-10-28 05:09:16,039.039 INFO    ] ================================================
[2026-10-28 05:09:16,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:09:16
[2026-10-28 05:09:17,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:09:17,852.852 INFO    ] Initializing speech engine...
[2026-10-28 05:09:17,865.865 INFO    ] 2026-10-28 05:09:17
[2026-10-28 05:09:18,120.120 INFO    ] 2026-10-28 05:09:18
[2026-10-28 05:09:18,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:09:18,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:09:18,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:09:18,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:09:18,669.669 INFO    ] time= 28/10/2026 05:09:18
[2026-10-28 05:09:18,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:09:18,699.699 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:09:18,836.836 INFO    ] No existing commands found in stream
[2026-10-28 05:09:23,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:09:23,869.869 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-28 05:09:26,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:09:26,274.274 INFO    ] Checking for system updates...
[2026-10-28 05:09:26,311.311 INFO    ] 200
[2026-10-28 05:09:26,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:09:26,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:09:26,372.372 INFO    ] No update needed
[2026-10-28 05:09:26,375.375 INFO    ] Checking for camera pi updates...
[2026-10-28 05:09:26,408.408 INFO    ] 200
[2026-10-28 05:09:26,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:09:26,451.451 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:09:26,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:09:26,535.535 INFO    ] No camera update needed
[2026-10-28 05:09:26,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:09:26,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:09:26,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:09:26,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:09:28,593.593 INFO    ] ================================================
[2026-10-28 05:09:28,608.608 INFO    ] Launching Daemon at Wed Oct 28 05:09:28 IST 2026
[2026-10-28 05:09:28,619.619 INFO    ] ================================================
[2026-10-28 05:09:29,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:09:29
[2026-10-28 05:09:29,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:09:30,100.100 INFO    ] Initializing speech engine...
[2026-10-28 05:09:30,107.107 INFO    ] 2026-10-28 05:09:30
[2026-10-28 05:09:30,393.393 INFO    ] 2026-10-28 05:09:30
[2026-10-28 05:09:30,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:09:30,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:09:30,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:09:30,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:09:30,981.981 INFO    ] time= 28/10/2026 05:09:30
[2026-10-28 05:09:31,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:09:31,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:09:31,216.216 INFO    ] No existing commands found in stream
[2026-10-28 05:09:36,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:09:36,250.250 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 05:09:38,621.621 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:09:38,624.624 INFO    ] Checking for system updates...
[2026-10-28 05:09:38,665.665 INFO    ] 200
[2026-10-28 05:09:38,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:09:38,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:09:38,726.726 INFO    ] No update needed
[2026-10-28 05:09:38,728.728 INFO    ] Checking for camera pi updates...
[2026-10-28 05:09:38,763.763 INFO    ] 200
[2026-10-28 05:09:38,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:09:38,807.807 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:09:38,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:09:38,892.892 INFO    ] No camera update needed
[2026-10-28 05:09:38,895.895 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:09:38,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:09:38,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:09:38,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:09:40,951.951 INFO    ] ================================================
[2026-10-28 05:09:40,966.966 INFO    ] Launching Daemon at Wed Oct 28 05:09:40 IST 2026
[2026-10-28 05:09:40,977.977 INFO    ] ================================================
[2026-10-28 05:09:41,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:09:41
[2026-10-28 05:09:42,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:09:42,434.434 INFO    ] Initializing speech engine...
[2026-10-28 05:09:42,444.444 INFO    ] 2026-10-28 05:09:42
[2026-10-28 05:09:42,692.692 INFO    ] 2026-10-28 05:09:42
[2026-10-28 05:09:42,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:09:42,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:09:42,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:09:43,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:09:43,249.249 INFO    ] time= 28/10/2026 05:09:43
[2026-10-28 05:09:43,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:09:43,271.271 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:09:43,401.401 INFO    ] No existing commands found in stream
[2026-10-28 05:09:48,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:09:48,416.416 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-28 05:09:50,216.216 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:09:50,219.219 INFO    ] Checking for system updates...
[2026-10-28 05:09:50,259.259 INFO    ] 200
[2026-10-28 05:09:50,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:09:50,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:09:50,317.317 INFO    ] No update needed
[2026-10-28 05:09:50,319.319 INFO    ] Checking for camera pi updates...
[2026-10-28 05:09:50,352.352 INFO    ] 200
[2026-10-28 05:09:50,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:09:50,400.400 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:09:50,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:09:50,485.485 INFO    ] No camera update needed
[2026-10-28 05:09:50,488.488 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:09:50,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:09:50,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:09:50,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:09:52,542.542 INFO    ] ================================================
[2026-10-28 05:09:52,558.558 INFO    ] Launching Daemon at Wed Oct 28 05:09:52 IST 2026
[2026-10-28 05:09:52,570.570 INFO    ] ================================================
[2026-10-28 05:09:53,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:09:53
[2026-10-28 05:09:53,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:09:54,015.015 INFO    ] Initializing speech engine...
[2026-10-28 05:09:54,030.030 INFO    ] 2026-10-28 05:09:54
[2026-10-28 05:09:54,315.315 INFO    ] 2026-10-28 05:09:54
[2026-10-28 05:09:54,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:09:54,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:09:54,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:09:54,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:09:54,939.939 INFO    ] time= 28/10/2026 05:09:54
[2026-10-28 05:09:54,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:09:54,970.970 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:09:55,083.083 INFO    ] No existing commands found in stream
[2026-10-28 05:10:00,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:10:00,105.105 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-28 05:10:01,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:10:01,164.164 INFO    ] Checking for system updates...
[2026-10-28 05:10:01,204.204 INFO    ] 200
[2026-10-28 05:10:01,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:10:01,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:10:01,260.260 INFO    ] No update needed
[2026-10-28 05:10:01,263.263 INFO    ] Checking for camera pi updates...
[2026-10-28 05:10:01,297.297 INFO    ] 200
[2026-10-28 05:10:01,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:10:01,345.345 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:10:01,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:10:01,437.437 INFO    ] No camera update needed
[2026-10-28 05:10:01,440.440 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:10:01,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:10:01,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:10:01,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:10:03,518.518 INFO    ] ================================================
[2026-10-28 05:10:03,535.535 INFO    ] Launching Daemon at Wed Oct 28 05:10:03 IST 2026
[2026-10-28 05:10:03,550.550 INFO    ] ================================================
[2026-10-28 05:10:04,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:10:04
[2026-10-28 05:10:04,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:10:05,012.012 INFO    ] Initializing speech engine...
[2026-10-28 05:10:05,021.021 INFO    ] 2026-10-28 05:10:05
[2026-10-28 05:10:05,308.308 INFO    ] 2026-10-28 05:10:05
[2026-10-28 05:10:05,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:10:05,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:10:05,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:10:05,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:10:05,860.860 INFO    ] time= 28/10/2026 05:10:05
[2026-10-28 05:10:05,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:10:05,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:10:06,050.050 INFO    ] No existing commands found in stream
[2026-10-28 05:10:11,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:10:11,082.082 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-28 05:10:14,672.672 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:10:14,674.674 INFO    ] Checking for system updates...
[2026-10-28 05:10:14,711.711 INFO    ] 200
[2026-10-28 05:10:14,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:10:14,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:10:14,768.768 INFO    ] No update needed
[2026-10-28 05:10:14,770.770 INFO    ] Checking for camera pi updates...
[2026-10-28 05:10:14,808.808 INFO    ] 200
[2026-10-28 05:10:14,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:10:14,850.850 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:10:14,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:10:14,935.935 INFO    ] No camera update needed
[2026-10-28 05:10:14,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:10:14,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:10:14,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:10:14,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:10:16,991.991 INFO    ] ================================================
[2026-10-28 05:10:17,006.006 INFO    ] Launching Daemon at Wed Oct 28 05:10:17 IST 2026
[2026-10-28 05:10:17,016.016 INFO    ] ================================================
[2026-10-28 05:10:17,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:10:17
[2026-10-28 05:10:18,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:10:18,451.451 INFO    ] Initializing speech engine...
[2026-10-28 05:10:18,460.460 INFO    ] 2026-10-28 05:10:18
[2026-10-28 05:10:18,706.706 INFO    ] 2026-10-28 05:10:18
[2026-10-28 05:10:18,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:10:18,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:10:19,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:10:19,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:10:19,260.260 INFO    ] time= 28/10/2026 05:10:19
[2026-10-28 05:10:19,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:10:19,284.284 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:10:19,404.404 INFO    ] No existing commands found in stream
[2026-10-28 05:10:24,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:10:24,427.427 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 05:10:28,323.323 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:10:28,325.325 INFO    ] Checking for system updates...
[2026-10-28 05:10:28,365.365 INFO    ] 200
[2026-10-28 05:10:28,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:10:28,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:10:28,421.421 INFO    ] No update needed
[2026-10-28 05:10:28,424.424 INFO    ] Checking for camera pi updates...
[2026-10-28 05:10:28,461.461 INFO    ] 200
[2026-10-28 05:10:28,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:10:28,504.504 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:10:28,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:10:28,672.672 INFO    ] No camera update needed
[2026-10-28 05:10:28,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:10:28,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:10:28,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:10:28,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:10:30,728.728 INFO    ] ================================================
[2026-10-28 05:10:30,743.743 INFO    ] Launching Daemon at Wed Oct 28 05:10:30 IST 2026
[2026-10-28 05:10:30,754.754 INFO    ] ================================================
[2026-10-28 05:10:31,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:10:31
[2026-10-28 05:10:31,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:10:32,295.295 INFO    ] Initializing speech engine...
[2026-10-28 05:10:32,309.309 INFO    ] 2026-10-28 05:10:32
[2026-10-28 05:10:32,586.586 INFO    ] 2026-10-28 05:10:32
[2026-10-28 05:10:32,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:10:32,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:10:32,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:10:33,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:10:33,159.159 INFO    ] time= 28/10/2026 05:10:33
[2026-10-28 05:10:33,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:10:33,183.183 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:10:33,314.314 INFO    ] No existing commands found in stream
[2026-10-28 05:10:38,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:10:38,329.329 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-28 05:10:41,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:10:41,608.608 INFO    ] Checking for system updates...
[2026-10-28 05:10:41,645.645 INFO    ] 200
[2026-10-28 05:10:41,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:10:41,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:10:41,707.707 INFO    ] No update needed
[2026-10-28 05:10:41,709.709 INFO    ] Checking for camera pi updates...
[2026-10-28 05:10:41,744.744 INFO    ] 200
[2026-10-28 05:10:41,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:10:41,792.792 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:10:41,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:10:41,886.886 INFO    ] No camera update needed
[2026-10-28 05:10:41,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:10:41,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:10:41,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:10:41,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:10:43,943.943 INFO    ] ================================================
[2026-10-28 05:10:43,958.958 INFO    ] Launching Daemon at Wed Oct 28 05:10:43 IST 2026
[2026-10-28 05:10:43,969.969 INFO    ] ================================================
[2026-10-28 05:10:44,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:10:44
[2026-10-28 05:10:45,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:10:45,608.608 INFO    ] Initializing speech engine...
[2026-10-28 05:10:45,617.617 INFO    ] 2026-10-28 05:10:45
[2026-10-28 05:10:45,893.893 INFO    ] 2026-10-28 05:10:45
[2026-10-28 05:10:45,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:10:46,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:10:46,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:10:46,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:10:46,486.486 INFO    ] time= 28/10/2026 05:10:46
[2026-10-28 05:10:46,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:10:46,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:10:46,695.695 INFO    ] No existing commands found in stream
[2026-10-28 05:10:51,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:10:51,716.716 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-28 05:10:55,169.169 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:10:55,172.172 INFO    ] Checking for system updates...
[2026-10-28 05:10:55,217.217 INFO    ] 200
[2026-10-28 05:10:55,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:10:55,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:10:55,280.280 INFO    ] No update needed
[2026-10-28 05:10:55,283.283 INFO    ] Checking for camera pi updates...
[2026-10-28 05:10:55,317.317 INFO    ] 200
[2026-10-28 05:10:55,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:10:55,367.367 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:10:55,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:10:55,467.467 INFO    ] No camera update needed
[2026-10-28 05:10:55,470.470 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:10:55,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:10:55,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:10:55,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:10:57,527.527 INFO    ] ================================================
[2026-10-28 05:10:57,542.542 INFO    ] Launching Daemon at Wed Oct 28 05:10:57 IST 2026
[2026-10-28 05:10:57,552.552 INFO    ] ================================================
[2026-10-28 05:10:58,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:10:58
[2026-10-28 05:10:58,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:10:58,956.956 INFO    ] Initializing speech engine...
[2026-10-28 05:10:58,962.962 INFO    ] 2026-10-28 05:10:58
[2026-10-28 05:10:59,239.239 INFO    ] 2026-10-28 05:10:59
[2026-10-28 05:10:59,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:10:59,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:10:59,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:10:59,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:10:59,801.801 INFO    ] time= 28/10/2026 05:10:59
[2026-10-28 05:10:59,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:10:59,825.825 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:10:59,964.964 INFO    ] No existing commands found in stream
[2026-10-28 05:11:04,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:11:04,994.994 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 05:11:09,008.008 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:11:09,010.010 INFO    ] Checking for system updates...
[2026-10-28 05:11:09,050.050 INFO    ] 200
[2026-10-28 05:11:09,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:11:09,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:11:09,115.115 INFO    ] No update needed
[2026-10-28 05:11:09,117.117 INFO    ] Checking for camera pi updates...
[2026-10-28 05:11:09,155.155 INFO    ] 200
[2026-10-28 05:11:09,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:11:09,198.198 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:11:09,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:11:09,250.250 INFO    ] No camera update needed
[2026-10-28 05:11:09,253.253 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:11:09,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:11:09,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:11:09,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:11:11,308.308 INFO    ] ================================================
[2026-10-28 05:11:11,323.323 INFO    ] Launching Daemon at Wed Oct 28 05:11:11 IST 2026
[2026-10-28 05:11:11,334.334 INFO    ] ================================================
[2026-10-28 05:11:11,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:11:11
[2026-10-28 05:11:12,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:11:12,970.970 INFO    ] Initializing speech engine...
[2026-10-28 05:11:12,977.977 INFO    ] 2026-10-28 05:11:12
[2026-10-28 05:11:13,263.263 INFO    ] 2026-10-28 05:11:13
[2026-10-28 05:11:13,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:11:13,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:11:13,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:11:13,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:11:13,819.819 INFO    ] time= 28/10/2026 05:11:13
[2026-10-28 05:11:13,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:11:13,857.857 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:11:13,994.994 INFO    ] No existing commands found in stream
[2026-10-28 05:11:19,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:11:19,028.028 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-28 05:11:22,430.430 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:11:22,433.433 INFO    ] Checking for system updates...
[2026-10-28 05:11:22,470.470 INFO    ] 200
[2026-10-28 05:11:22,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:11:22,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:11:22,542.542 INFO    ] No update needed
[2026-10-28 05:11:22,545.545 INFO    ] Checking for camera pi updates...
[2026-10-28 05:11:22,580.580 INFO    ] 200
[2026-10-28 05:11:22,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:11:22,631.631 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:11:22,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:11:22,715.715 INFO    ] No camera update needed
[2026-10-28 05:11:22,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:11:22,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:11:22,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:11:22,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:11:24,770.770 INFO    ] ================================================
[2026-10-28 05:11:24,785.785 INFO    ] Launching Daemon at Wed Oct 28 05:11:24 IST 2026
[2026-10-28 05:11:24,795.795 INFO    ] ================================================
[2026-10-28 05:11:25,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:11:25
[2026-10-28 05:11:25,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:11:26,191.191 INFO    ] Initializing speech engine...
[2026-10-28 05:11:26,206.206 INFO    ] 2026-10-28 05:11:26
[2026-10-28 05:11:26,472.472 INFO    ] 2026-10-28 05:11:26
[2026-10-28 05:11:26,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:11:26,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:11:26,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:11:27,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:11:27,035.035 INFO    ] time= 28/10/2026 05:11:27
[2026-10-28 05:11:27,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:11:27,082.082 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:11:27,208.208 INFO    ] No existing commands found in stream
[2026-10-28 05:11:32,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:11:32,249.249 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 05:11:32,855.855 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:11:32,858.858 INFO    ] Checking for system updates...
[2026-10-28 05:11:32,896.896 INFO    ] 200
[2026-10-28 05:11:32,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:11:32,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:11:32,958.958 INFO    ] No update needed
[2026-10-28 05:11:32,960.960 INFO    ] Checking for camera pi updates...
[2026-10-28 05:11:32,998.998 INFO    ] 200
[2026-10-28 05:11:33,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:11:33,050.050 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:11:33,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:11:33,135.135 INFO    ] No camera update needed
[2026-10-28 05:11:33,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:11:33,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:11:33,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:11:33,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:11:35,194.194 INFO    ] ================================================
[2026-10-28 05:11:35,209.209 INFO    ] Launching Daemon at Wed Oct 28 05:11:35 IST 2026
[2026-10-28 05:11:35,220.220 INFO    ] ================================================
[2026-10-28 05:11:35,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:11:35
[2026-10-28 05:11:36,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:11:36,675.675 INFO    ] Initializing speech engine...
[2026-10-28 05:11:36,684.684 INFO    ] 2026-10-28 05:11:36
[2026-10-28 05:11:36,952.952 INFO    ] 2026-10-28 05:11:36
[2026-10-28 05:11:36,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:11:37,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:11:37,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:11:37,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:11:37,457.457 INFO    ] time= 28/10/2026 05:11:37
[2026-10-28 05:11:37,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:11:37,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:11:37,643.643 INFO    ] No existing commands found in stream
[2026-10-28 05:11:42,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:11:42,662.662 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-28 05:11:45,798.798 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:11:45,801.801 INFO    ] Checking for system updates...
[2026-10-28 05:11:45,840.840 INFO    ] 200
[2026-10-28 05:11:45,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:11:45,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:11:45,904.904 INFO    ] No update needed
[2026-10-28 05:11:45,907.907 INFO    ] Checking for camera pi updates...
[2026-10-28 05:11:45,944.944 INFO    ] 200
[2026-10-28 05:11:45,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:11:45,992.992 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:11:46,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:11:46,073.073 INFO    ] No camera update needed
[2026-10-28 05:11:46,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:11:46,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:11:46,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:11:46,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:11:48,128.128 INFO    ] ================================================
[2026-10-28 05:11:48,144.144 INFO    ] Launching Daemon at Wed Oct 28 05:11:48 IST 2026
[2026-10-28 05:11:48,155.155 INFO    ] ================================================
[2026-10-28 05:11:48,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:11:48
[2026-10-28 05:11:49,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:11:49,575.575 INFO    ] Initializing speech engine...
[2026-10-28 05:11:49,584.584 INFO    ] 2026-10-28 05:11:49
[2026-10-28 05:11:49,879.879 INFO    ] 2026-10-28 05:11:49
[2026-10-28 05:11:49,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:11:50,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:11:50,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:11:50,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:11:50,377.377 INFO    ] time= 28/10/2026 05:11:50
[2026-10-28 05:11:50,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:11:50,496.496 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:11:50,650.650 INFO    ] No existing commands found in stream
[2026-10-28 05:11:55,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:11:55,671.671 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-28 05:11:58,572.572 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:11:58,575.575 INFO    ] Checking for system updates...
[2026-10-28 05:11:58,613.613 INFO    ] 200
[2026-10-28 05:11:58,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:11:58,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:11:58,670.670 INFO    ] No update needed
[2026-10-28 05:11:58,672.672 INFO    ] Checking for camera pi updates...
[2026-10-28 05:11:58,705.705 INFO    ] 200
[2026-10-28 05:11:58,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:11:58,749.749 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:11:58,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:11:58,845.845 INFO    ] No camera update needed
[2026-10-28 05:11:58,848.848 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:11:58,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:11:58,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:11:58,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:12:00,904.904 INFO    ] ================================================
[2026-10-28 05:12:00,919.919 INFO    ] Launching Daemon at Wed Oct 28 05:12:00 IST 2026
[2026-10-28 05:12:00,930.930 INFO    ] ================================================
[2026-10-28 05:12:01,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:12:01
[2026-10-28 05:12:02,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:12:02,588.588 INFO    ] Initializing speech engine...
[2026-10-28 05:12:02,602.602 INFO    ] 2026-10-28 05:12:02
[2026-10-28 05:12:02,869.869 INFO    ] 2026-10-28 05:12:02
[2026-10-28 05:12:02,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:12:03,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:12:03,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:12:03,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:12:03,380.380 INFO    ] time= 28/10/2026 05:12:03
[2026-10-28 05:12:03,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:12:03,474.474 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:12:03,568.568 INFO    ] No existing commands found in stream
[2026-10-28 05:12:08,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:12:08,582.582 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 05:12:12,607.607 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:12:12,610.610 INFO    ] Checking for system updates...
[2026-10-28 05:12:12,646.646 INFO    ] 200
[2026-10-28 05:12:12,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:12:12,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:12:12,705.705 INFO    ] No update needed
[2026-10-28 05:12:12,707.707 INFO    ] Checking for camera pi updates...
[2026-10-28 05:12:12,757.757 INFO    ] 200
[2026-10-28 05:12:12,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:12:12,801.801 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:12:12,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:12:12,902.902 INFO    ] No camera update needed
[2026-10-28 05:12:12,905.905 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:12:12,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:12:12,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:12:12,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:12:14,962.962 INFO    ] ================================================
[2026-10-28 05:12:14,977.977 INFO    ] Launching Daemon at Wed Oct 28 05:12:14 IST 2026
[2026-10-28 05:12:14,987.987 INFO    ] ================================================
[2026-10-28 05:12:15,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:12:15
[2026-10-28 05:12:16,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:12:16,606.606 INFO    ] Initializing speech engine...
[2026-10-28 05:12:16,612.612 INFO    ] 2026-10-28 05:12:16
[2026-10-28 05:12:16,901.901 INFO    ] 2026-10-28 05:12:16
[2026-10-28 05:12:16,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:12:17,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:12:17,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:12:17,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:12:17,447.447 INFO    ] time= 28/10/2026 05:12:17
[2026-10-28 05:12:17,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:12:17,486.486 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:12:17,590.590 INFO    ] No existing commands found in stream
[2026-10-28 05:12:22,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:12:22,611.611 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-28 05:12:25,201.201 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:12:25,204.204 INFO    ] Checking for system updates...
[2026-10-28 05:12:25,245.245 INFO    ] 200
[2026-10-28 05:12:25,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:12:25,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:12:25,311.311 INFO    ] No update needed
[2026-10-28 05:12:25,315.315 INFO    ] Checking for camera pi updates...
[2026-10-28 05:12:25,352.352 INFO    ] 200
[2026-10-28 05:12:25,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:12:25,396.396 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:12:25,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:12:25,497.497 INFO    ] No camera update needed
[2026-10-28 05:12:25,499.499 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:12:25,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:12:25,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:12:25,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:12:27,554.554 INFO    ] ================================================
[2026-10-28 05:12:27,569.569 INFO    ] Launching Daemon at Wed Oct 28 05:12:27 IST 2026
[2026-10-28 05:12:27,581.581 INFO    ] ================================================
[2026-10-28 05:12:28,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:12:28
[2026-10-28 05:12:28,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:12:29,184.184 INFO    ] Initializing speech engine...
[2026-10-28 05:12:29,198.198 INFO    ] 2026-10-28 05:12:29
[2026-10-28 05:12:29,476.476 INFO    ] 2026-10-28 05:12:29
[2026-10-28 05:12:29,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:12:29,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:12:29,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:12:29,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:12:30,011.011 INFO    ] time= 28/10/2026 05:12:29
[2026-10-28 05:12:30,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:12:30,060.060 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:12:30,201.201 INFO    ] No existing commands found in stream
[2026-10-28 05:12:35,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:12:35,236.236 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-28 05:12:39,349.349 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:12:39,353.353 INFO    ] Checking for system updates...
[2026-10-28 05:12:39,389.389 INFO    ] 200
[2026-10-28 05:12:39,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:12:39,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:12:39,447.447 INFO    ] No update needed
[2026-10-28 05:12:39,450.450 INFO    ] Checking for camera pi updates...
[2026-10-28 05:12:39,484.484 INFO    ] 200
[2026-10-28 05:12:39,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:12:39,533.533 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:12:39,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:12:39,615.615 INFO    ] No camera update needed
[2026-10-28 05:12:39,617.617 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:12:39,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:12:39,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:12:39,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:12:41,671.671 INFO    ] ================================================
[2026-10-28 05:12:41,687.687 INFO    ] Launching Daemon at Wed Oct 28 05:12:41 IST 2026
[2026-10-28 05:12:41,699.699 INFO    ] ================================================
[2026-10-28 05:12:42,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:12:42
[2026-10-28 05:12:42,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:12:43,104.104 INFO    ] Initializing speech engine...
[2026-10-28 05:12:43,112.112 INFO    ] 2026-10-28 05:12:43
[2026-10-28 05:12:43,404.404 INFO    ] 2026-10-28 05:12:43
[2026-10-28 05:12:43,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:12:43,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:12:43,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:12:43,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:12:43,893.893 INFO    ] time= 28/10/2026 05:12:43
[2026-10-28 05:12:43,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:12:43,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:12:44,092.092 INFO    ] No existing commands found in stream
[2026-10-28 05:12:49,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:12:49,106.106 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 05:12:50,468.468 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:12:50,471.471 INFO    ] Checking for system updates...
[2026-10-28 05:12:50,506.506 INFO    ] 200
[2026-10-28 05:12:50,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:12:50,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:12:50,567.567 INFO    ] No update needed
[2026-10-28 05:12:50,569.569 INFO    ] Checking for camera pi updates...
[2026-10-28 05:12:50,603.603 INFO    ] 200
[2026-10-28 05:12:50,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:12:50,649.649 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:12:50,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:12:50,732.732 INFO    ] No camera update needed
[2026-10-28 05:12:50,735.735 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:12:50,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:12:50,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:12:50,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:12:52,787.787 INFO    ] ================================================
[2026-10-28 05:12:52,802.802 INFO    ] Launching Daemon at Wed Oct 28 05:12:52 IST 2026
[2026-10-28 05:12:52,812.812 INFO    ] ================================================
[2026-10-28 05:12:53,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:12:53
[2026-10-28 05:12:53,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:12:54,244.244 INFO    ] Initializing speech engine...
[2026-10-28 05:12:54,250.250 INFO    ] 2026-10-28 05:12:54
[2026-10-28 05:12:54,538.538 INFO    ] 2026-10-28 05:12:54
[2026-10-28 05:12:54,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:12:54,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:12:54,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:12:55,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:12:55,076.076 INFO    ] time= 28/10/2026 05:12:55
[2026-10-28 05:12:55,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:12:55,124.124 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:12:55,231.231 INFO    ] No existing commands found in stream
[2026-10-28 05:13:00,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:13:00,264.264 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 05:13:02,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:13:02,774.774 INFO    ] Checking for system updates...
[2026-10-28 05:13:02,813.813 INFO    ] 200
[2026-10-28 05:13:02,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:13:02,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:13:02,889.889 INFO    ] No update needed
[2026-10-28 05:13:02,891.891 INFO    ] Checking for camera pi updates...
[2026-10-28 05:13:02,932.932 INFO    ] 200
[2026-10-28 05:13:02,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:13:02,996.996 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:13:03,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:13:03,081.081 INFO    ] No camera update needed
[2026-10-28 05:13:03,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:13:03,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:13:03,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:13:03,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:13:05,145.145 INFO    ] ================================================
[2026-10-28 05:13:05,160.160 INFO    ] Launching Daemon at Wed Oct 28 05:13:05 IST 2026
[2026-10-28 05:13:05,171.171 INFO    ] ================================================
[2026-10-28 05:13:05,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:13:05
[2026-10-28 05:13:06,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:13:06,769.769 INFO    ] Initializing speech engine...
[2026-10-28 05:13:06,783.783 INFO    ] 2026-10-28 05:13:06
[2026-10-28 05:13:07,055.055 INFO    ] 2026-10-28 05:13:07
[2026-10-28 05:13:07,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:13:07,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:13:07,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:13:07,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:13:07,784.784 INFO    ] time= 28/10/2026 05:13:07
[2026-10-28 05:13:07,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:13:07,868.868 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:13:08,057.057 INFO    ] No existing commands found in stream
[2026-10-28 05:13:13,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:13:13,076.076 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 05:13:14,773.773 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:13:14,776.776 INFO    ] Checking for system updates...
[2026-10-28 05:13:14,813.813 INFO    ] 200
[2026-10-28 05:13:14,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:13:14,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:13:14,872.872 INFO    ] No update needed
[2026-10-28 05:13:14,874.874 INFO    ] Checking for camera pi updates...
[2026-10-28 05:13:14,912.912 INFO    ] 200
[2026-10-28 05:13:14,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:13:14,963.963 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:13:15,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:13:15,065.065 INFO    ] No camera update needed
[2026-10-28 05:13:15,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:13:15,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:13:15,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:13:15,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:13:17,121.121 INFO    ] ================================================
[2026-10-28 05:13:17,136.136 INFO    ] Launching Daemon at Wed Oct 28 05:13:17 IST 2026
[2026-10-28 05:13:17,147.147 INFO    ] ================================================
[2026-10-28 05:13:17,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:13:17
[2026-10-28 05:13:18,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:13:18,749.749 INFO    ] Initializing speech engine...
[2026-10-28 05:13:18,759.759 INFO    ] 2026-10-28 05:13:18
[2026-10-28 05:13:19,054.054 INFO    ] 2026-10-28 05:13:19
[2026-10-28 05:13:19,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:13:19,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:13:19,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:13:19,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:13:19,611.611 INFO    ] time= 28/10/2026 05:13:19
[2026-10-28 05:13:19,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:13:19,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:13:19,768.768 INFO    ] No existing commands found in stream
[2026-10-28 05:13:24,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:13:24,797.797 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-28 05:13:26,431.431 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:13:26,434.434 INFO    ] Checking for system updates...
[2026-10-28 05:13:26,474.474 INFO    ] 200
[2026-10-28 05:13:26,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:13:26,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:13:26,539.539 INFO    ] No update needed
[2026-10-28 05:13:26,541.541 INFO    ] Checking for camera pi updates...
[2026-10-28 05:13:26,580.580 INFO    ] 200
[2026-10-28 05:13:26,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:13:26,629.629 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:13:26,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:13:26,711.711 INFO    ] No camera update needed
[2026-10-28 05:13:26,713.713 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:13:26,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:13:26,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:13:26,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:13:28,765.765 INFO    ] ================================================
[2026-10-28 05:13:28,779.779 INFO    ] Launching Daemon at Wed Oct 28 05:13:28 IST 2026
[2026-10-28 05:13:28,790.790 INFO    ] ================================================
[2026-10-28 05:13:29,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:13:29
[2026-10-28 05:13:29,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:13:30,227.227 INFO    ] Initializing speech engine...
[2026-10-28 05:13:30,232.232 INFO    ] 2026-10-28 05:13:30
[2026-10-28 05:13:30,478.478 INFO    ] 2026-10-28 05:13:30
[2026-10-28 05:13:30,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:13:30,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:13:30,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:13:31,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:13:31,215.215 INFO    ] time= 28/10/2026 05:13:31
[2026-10-28 05:13:31,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:13:31,305.305 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:13:31,479.479 INFO    ] No existing commands found in stream
[2026-10-28 05:13:36,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:13:36,491.491 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 05:13:40,037.037 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:13:40,040.040 INFO    ] Checking for system updates...
[2026-10-28 05:13:40,075.075 INFO    ] 200
[2026-10-28 05:13:40,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:13:40,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:13:40,133.133 INFO    ] No update needed
[2026-10-28 05:13:40,136.136 INFO    ] Checking for camera pi updates...
[2026-10-28 05:13:40,169.169 INFO    ] 200
[2026-10-28 05:13:40,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:13:40,211.211 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:13:40,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:13:40,278.278 INFO    ] No camera update needed
[2026-10-28 05:13:40,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:13:40,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:13:40,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:13:40,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:13:42,332.332 INFO    ] ================================================
[2026-10-28 05:13:42,347.347 INFO    ] Launching Daemon at Wed Oct 28 05:13:42 IST 2026
[2026-10-28 05:13:42,357.357 INFO    ] ================================================
[2026-10-28 05:13:42,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:13:42
[2026-10-28 05:13:43,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:13:43,958.958 INFO    ] Initializing speech engine...
[2026-10-28 05:13:43,971.971 INFO    ] 2026-10-28 05:13:43
[2026-10-28 05:13:44,260.260 INFO    ] 2026-10-28 05:13:44
[2026-10-28 05:13:44,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:13:44,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:13:44,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:13:44,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:13:44,974.974 INFO    ] time= 28/10/2026 05:13:44
[2026-10-28 05:13:45,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:13:45,057.057 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:13:45,211.211 INFO    ] No existing commands found in stream
[2026-10-28 05:13:50,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:13:50,232.232 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 05:13:52,171.171 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:13:52,174.174 INFO    ] Checking for system updates...
[2026-10-28 05:13:52,210.210 INFO    ] 200
[2026-10-28 05:13:52,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:13:52,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:13:52,271.271 INFO    ] No update needed
[2026-10-28 05:13:52,274.274 INFO    ] Checking for camera pi updates...
[2026-10-28 05:13:52,307.307 INFO    ] 200
[2026-10-28 05:13:52,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:13:52,349.349 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:13:52,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:13:52,401.401 INFO    ] No camera update needed
[2026-10-28 05:13:52,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:13:52,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:13:52,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:13:52,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:13:54,459.459 INFO    ] ================================================
[2026-10-28 05:13:54,475.475 INFO    ] Launching Daemon at Wed Oct 28 05:13:54 IST 2026
[2026-10-28 05:13:54,485.485 INFO    ] ================================================
[2026-10-28 05:13:55,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:13:55
[2026-10-28 05:13:55,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:13:55,902.902 INFO    ] Initializing speech engine...
[2026-10-28 05:13:55,916.916 INFO    ] 2026-10-28 05:13:55
[2026-10-28 05:13:56,181.181 INFO    ] 2026-10-28 05:13:56
[2026-10-28 05:13:56,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:13:56,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:13:56,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:13:56,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:13:56,745.745 INFO    ] time= 28/10/2026 05:13:56
[2026-10-28 05:13:56,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:13:56,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:13:56,918.918 INFO    ] No existing commands found in stream
[2026-10-28 05:14:01,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:14:01,948.948 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-28 05:14:02,852.852 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:14:02,856.856 INFO    ] Checking for system updates...
[2026-10-28 05:14:02,904.904 INFO    ] 200
[2026-10-28 05:14:02,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:14:02,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:14:02,987.987 INFO    ] No update needed
[2026-10-28 05:14:02,990.990 INFO    ] Checking for camera pi updates...
[2026-10-28 05:14:03,023.023 INFO    ] 200
[2026-10-28 05:14:03,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:14:03,083.083 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:14:03,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:14:03,201.201 INFO    ] No camera update needed
[2026-10-28 05:14:03,204.204 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:14:03,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:14:03,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:14:03,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:14:05,266.266 INFO    ] ================================================
[2026-10-28 05:14:05,282.282 INFO    ] Launching Daemon at Wed Oct 28 05:14:05 IST 2026
[2026-10-28 05:14:05,292.292 INFO    ] ================================================
[2026-10-28 05:14:05,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:14:05
[2026-10-28 05:14:06,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:14:06,700.700 INFO    ] Initializing speech engine...
[2026-10-28 05:14:06,719.719 INFO    ] 2026-10-28 05:14:06
[2026-10-28 05:14:06,970.970 INFO    ] 2026-10-28 05:14:06
[2026-10-28 05:14:07,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:14:07,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:14:07,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:14:07,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:14:07,538.538 INFO    ] time= 28/10/2026 05:14:07
[2026-10-28 05:14:07,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:14:07,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:14:07,695.695 INFO    ] No existing commands found in stream
[2026-10-28 05:14:12,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:14:12,712.712 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 05:14:16,443.443 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:14:16,446.446 INFO    ] Checking for system updates...
[2026-10-28 05:14:16,487.487 INFO    ] 200
[2026-10-28 05:14:16,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:14:16,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:14:16,546.546 INFO    ] No update needed
[2026-10-28 05:14:16,549.549 INFO    ] Checking for camera pi updates...
[2026-10-28 05:14:16,584.584 INFO    ] 200
[2026-10-28 05:14:16,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:14:16,628.628 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:14:16,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:14:16,712.712 INFO    ] No camera update needed
[2026-10-28 05:14:16,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:14:16,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:14:16,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:14:16,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:14:18,772.772 INFO    ] ================================================
[2026-10-28 05:14:18,787.787 INFO    ] Launching Daemon at Wed Oct 28 05:14:18 IST 2026
[2026-10-28 05:14:18,797.797 INFO    ] ================================================
[2026-10-28 05:14:19,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:14:19
[2026-10-28 05:14:19,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:14:20,216.216 INFO    ] Initializing speech engine...
[2026-10-28 05:14:20,236.236 INFO    ] 2026-10-28 05:14:20
[2026-10-28 05:14:20,500.500 INFO    ] 2026-10-28 05:14:20
[2026-10-28 05:14:20,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:14:20,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:14:20,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:14:21,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:14:21,103.103 INFO    ] time= 28/10/2026 05:14:21
[2026-10-28 05:14:21,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:14:21,137.137 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:14:21,282.282 INFO    ] No existing commands found in stream
[2026-10-28 05:14:26,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:14:26,312.312 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-28 05:14:27,128.128 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:14:27,131.131 INFO    ] Checking for system updates...
[2026-10-28 05:14:27,166.166 INFO    ] 200
[2026-10-28 05:14:27,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:14:27,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:14:27,228.228 INFO    ] No update needed
[2026-10-28 05:14:27,231.231 INFO    ] Checking for camera pi updates...
[2026-10-28 05:14:27,267.267 INFO    ] 200
[2026-10-28 05:14:27,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:14:27,311.311 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:14:27,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:14:27,426.426 INFO    ] No camera update needed
[2026-10-28 05:14:27,428.428 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:14:27,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:14:27,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:14:27,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:14:29,481.481 INFO    ] ================================================
[2026-10-28 05:14:29,496.496 INFO    ] Launching Daemon at Wed Oct 28 05:14:29 IST 2026
[2026-10-28 05:14:29,507.507 INFO    ] ================================================
[2026-10-28 05:14:30,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:14:30
[2026-10-28 05:14:30,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:14:30,923.923 INFO    ] Initializing speech engine...
[2026-10-28 05:14:30,930.930 INFO    ] 2026-10-28 05:14:30
[2026-10-28 05:14:31,187.187 INFO    ] 2026-10-28 05:14:31
[2026-10-28 05:14:31,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:14:31,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:14:31,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:14:31,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:14:31,750.750 INFO    ] time= 28/10/2026 05:14:31
[2026-10-28 05:14:31,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:14:31,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:14:31,912.912 INFO    ] No existing commands found in stream
[2026-10-28 05:14:36,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:14:36,944.944 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-28 05:14:39,326.326 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:14:39,328.328 INFO    ] Checking for system updates...
[2026-10-28 05:14:39,368.368 INFO    ] 200
[2026-10-28 05:14:39,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:14:39,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:14:39,425.425 INFO    ] No update needed
[2026-10-28 05:14:39,427.427 INFO    ] Checking for camera pi updates...
[2026-10-28 05:14:39,461.461 INFO    ] 200
[2026-10-28 05:14:39,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:14:39,508.508 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:14:39,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:14:39,715.715 INFO    ] No camera update needed
[2026-10-28 05:14:39,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:14:39,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:14:39,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:14:39,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:14:41,771.771 INFO    ] ================================================
[2026-10-28 05:14:41,786.786 INFO    ] Launching Daemon at Wed Oct 28 05:14:41 IST 2026
[2026-10-28 05:14:41,797.797 INFO    ] ================================================
[2026-10-28 05:14:42,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:14:42
[2026-10-28 05:14:42,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:14:43,205.205 INFO    ] Initializing speech engine...
[2026-10-28 05:14:43,213.213 INFO    ] 2026-10-28 05:14:43
[2026-10-28 05:14:43,506.506 INFO    ] 2026-10-28 05:14:43
[2026-10-28 05:14:43,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:14:43,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:14:43,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:14:43,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:14:43,998.998 INFO    ] time= 28/10/2026 05:14:43
[2026-10-28 05:14:44,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:14:44,091.091 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:14:44,205.205 INFO    ] No existing commands found in stream
[2026-10-28 05:14:49,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:14:49,219.219 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-28 05:14:51,968.968 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:14:51,971.971 INFO    ] Checking for system updates...
[2026-10-28 05:14:52,007.007 INFO    ] 200
[2026-10-28 05:14:52,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:14:52,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:14:52,069.069 INFO    ] No update needed
[2026-10-28 05:14:52,071.071 INFO    ] Checking for camera pi updates...
[2026-10-28 05:14:52,105.105 INFO    ] 200
[2026-10-28 05:14:52,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:14:52,147.147 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:14:52,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:14:52,229.229 INFO    ] No camera update needed
[2026-10-28 05:14:52,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:14:52,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:14:52,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:14:52,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:14:54,285.285 INFO    ] ================================================
[2026-10-28 05:14:54,300.300 INFO    ] Launching Daemon at Wed Oct 28 05:14:54 IST 2026
[2026-10-28 05:14:54,311.311 INFO    ] ================================================
[2026-10-28 05:14:54,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:14:54
[2026-10-28 05:14:55,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:14:55,706.706 INFO    ] Initializing speech engine...
[2026-10-28 05:14:55,727.727 INFO    ] 2026-10-28 05:14:55
[2026-10-28 05:14:55,984.984 INFO    ] 2026-10-28 05:14:55
[2026-10-28 05:14:56,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:14:56,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:14:56,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:14:56,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:14:56,540.540 INFO    ] time= 28/10/2026 05:14:56
[2026-10-28 05:14:56,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:14:56,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:14:56,703.703 INFO    ] No existing commands found in stream
[2026-10-28 05:15:01,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:15:01,739.739 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-28 05:15:03,868.868 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:15:03,871.871 INFO    ] Checking for system updates...
[2026-10-28 05:15:03,917.917 INFO    ] 200
[2026-10-28 05:15:03,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:15:03,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:15:03,976.976 INFO    ] No update needed
[2026-10-28 05:15:03,978.978 INFO    ] Checking for camera pi updates...
[2026-10-28 05:15:04,015.015 INFO    ] 200
[2026-10-28 05:15:04,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:15:04,072.072 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:15:04,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:15:04,159.159 INFO    ] No camera update needed
[2026-10-28 05:15:04,163.163 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:15:04,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:15:04,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:15:04,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:15:06,224.224 INFO    ] ================================================
[2026-10-28 05:15:06,240.240 INFO    ] Launching Daemon at Wed Oct 28 05:15:06 IST 2026
[2026-10-28 05:15:06,251.251 INFO    ] ================================================
[2026-10-28 05:15:06,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:15:06
[2026-10-28 05:15:07,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:15:07,673.673 INFO    ] Initializing speech engine...
[2026-10-28 05:15:07,683.683 INFO    ] 2026-10-28 05:15:07
[2026-10-28 05:15:07,935.935 INFO    ] 2026-10-28 05:15:07
[2026-10-28 05:15:07,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:15:08,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:15:08,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:15:08,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:15:08,506.506 INFO    ] time= 28/10/2026 05:15:08
[2026-10-28 05:15:08,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:15:08,529.529 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:15:08,664.664 INFO    ] No existing commands found in stream
[2026-10-28 05:15:13,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:15:13,692.692 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-28 05:15:17,729.729 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:15:17,732.732 INFO    ] Checking for system updates...
[2026-10-28 05:15:17,771.771 INFO    ] 200
[2026-10-28 05:15:17,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:15:17,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:15:17,831.831 INFO    ] No update needed
[2026-10-28 05:15:17,834.834 INFO    ] Checking for camera pi updates...
[2026-10-28 05:15:17,869.869 INFO    ] 200
[2026-10-28 05:15:17,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:15:17,913.913 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:15:17,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:15:17,996.996 INFO    ] No camera update needed
[2026-10-28 05:15:17,999.999 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:15:18,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:15:18,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:15:18,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:15:20,056.056 INFO    ] ================================================
[2026-10-28 05:15:20,071.071 INFO    ] Launching Daemon at Wed Oct 28 05:15:20 IST 2026
[2026-10-28 05:15:20,082.082 INFO    ] ================================================
[2026-10-28 05:15:20,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:15:20
[2026-10-28 05:15:21,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:15:21,488.488 INFO    ] Initializing speech engine...
[2026-10-28 05:15:21,495.495 INFO    ] 2026-10-28 05:15:21
[2026-10-28 05:15:21,786.786 INFO    ] 2026-10-28 05:15:21
[2026-10-28 05:15:21,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:15:22,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:15:22,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:15:22,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:15:22,317.317 INFO    ] time= 28/10/2026 05:15:22
[2026-10-28 05:15:22,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:15:22,416.416 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:15:22,564.564 INFO    ] No existing commands found in stream
[2026-10-28 05:15:27,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:15:27,592.592 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 05:15:28,435.435 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:15:28,437.437 INFO    ] Checking for system updates...
[2026-10-28 05:15:28,473.473 INFO    ] 200
[2026-10-28 05:15:28,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:15:28,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:15:28,537.537 INFO    ] No update needed
[2026-10-28 05:15:28,539.539 INFO    ] Checking for camera pi updates...
[2026-10-28 05:15:28,572.572 INFO    ] 200
[2026-10-28 05:15:28,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:15:28,634.634 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:15:28,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:15:28,715.715 INFO    ] No camera update needed
[2026-10-28 05:15:28,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:15:28,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:15:28,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:15:28,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:15:30,771.771 INFO    ] ================================================
[2026-10-28 05:15:30,787.787 INFO    ] Launching Daemon at Wed Oct 28 05:15:30 IST 2026
[2026-10-28 05:15:30,798.798 INFO    ] ================================================
[2026-10-28 05:15:31,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:15:31
[2026-10-28 05:15:31,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:15:32,288.288 INFO    ] Initializing speech engine...
[2026-10-28 05:15:32,300.300 INFO    ] 2026-10-28 05:15:32
[2026-10-28 05:15:32,576.576 INFO    ] 2026-10-28 05:15:32
[2026-10-28 05:15:32,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:15:32,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:15:32,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:15:33,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:15:33,159.159 INFO    ] time= 28/10/2026 05:15:33
[2026-10-28 05:15:33,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:15:33,217.217 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:15:33,354.354 INFO    ] No existing commands found in stream
[2026-10-28 05:15:38,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:15:38,393.393 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 05:15:40,911.911 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:15:40,915.915 INFO    ] Checking for system updates...
[2026-10-28 05:15:40,955.955 INFO    ] 200
[2026-10-28 05:15:40,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:15:41,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:15:41,020.020 INFO    ] No update needed
[2026-10-28 05:15:41,023.023 INFO    ] Checking for camera pi updates...
[2026-10-28 05:15:41,061.061 INFO    ] 200
[2026-10-28 05:15:41,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:15:41,110.110 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:15:41,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:15:41,213.213 INFO    ] No camera update needed
[2026-10-28 05:15:41,216.216 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:15:41,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:15:41,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:15:41,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:15:43,272.272 INFO    ] ================================================
[2026-10-28 05:15:43,287.287 INFO    ] Launching Daemon at Wed Oct 28 05:15:43 IST 2026
[2026-10-28 05:15:43,299.299 INFO    ] ================================================
[2026-10-28 05:15:43,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:15:43
[2026-10-28 05:15:44,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:15:44,704.704 INFO    ] Initializing speech engine...
[2026-10-28 05:15:44,712.712 INFO    ] 2026-10-28 05:15:44
[2026-10-28 05:15:45,003.003 INFO    ] 2026-10-28 05:15:44
[2026-10-28 05:15:45,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:15:45,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:15:45,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:15:45,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:15:45,608.608 INFO    ] time= 28/10/2026 05:15:45
[2026-10-28 05:15:45,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:15:45,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:15:45,768.768 INFO    ] No existing commands found in stream
[2026-10-28 05:15:50,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:15:50,799.799 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 05:15:54,566.566 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:15:54,568.568 INFO    ] Checking for system updates...
[2026-10-28 05:15:54,604.604 INFO    ] 200
[2026-10-28 05:15:54,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:15:54,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:15:54,672.672 INFO    ] No update needed
[2026-10-28 05:15:54,675.675 INFO    ] Checking for camera pi updates...
[2026-10-28 05:15:54,709.709 INFO    ] 200
[2026-10-28 05:15:54,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:15:54,756.756 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:15:54,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:15:54,842.842 INFO    ] No camera update needed
[2026-10-28 05:15:54,845.845 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:15:54,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:15:54,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:15:54,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:15:56,897.897 INFO    ] ================================================
[2026-10-28 05:15:56,913.913 INFO    ] Launching Daemon at Wed Oct 28 05:15:56 IST 2026
[2026-10-28 05:15:56,924.924 INFO    ] ================================================
[2026-10-28 05:15:57,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:15:57
[2026-10-28 05:15:58,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:15:58,553.553 INFO    ] Initializing speech engine...
[2026-10-28 05:15:58,566.566 INFO    ] 2026-10-28 05:15:58
[2026-10-28 05:15:58,846.846 INFO    ] 2026-10-28 05:15:58
[2026-10-28 05:15:58,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:15:59,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:15:59,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:15:59,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:15:59,398.398 INFO    ] time= 28/10/2026 05:15:59
[2026-10-28 05:15:59,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:15:59,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:15:59,573.573 INFO    ] No existing commands found in stream
[2026-10-28 05:16:04,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:16:04,607.607 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-28 05:16:08,428.428 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:16:08,431.431 INFO    ] Checking for system updates...
[2026-10-28 05:16:08,467.467 INFO    ] 200
[2026-10-28 05:16:08,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:16:08,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:16:08,525.525 INFO    ] No update needed
[2026-10-28 05:16:08,528.528 INFO    ] Checking for camera pi updates...
[2026-10-28 05:16:08,562.562 INFO    ] 200
[2026-10-28 05:16:08,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:16:08,607.607 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:16:08,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:16:08,689.689 INFO    ] No camera update needed
[2026-10-28 05:16:08,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:16:08,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:16:08,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:16:08,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:16:10,748.748 INFO    ] ================================================
[2026-10-28 05:16:10,765.765 INFO    ] Launching Daemon at Wed Oct 28 05:16:10 IST 2026
[2026-10-28 05:16:10,776.776 INFO    ] ================================================
[2026-10-28 05:16:11,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:16:11
[2026-10-28 05:16:11,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:16:12,201.201 INFO    ] Initializing speech engine...
[2026-10-28 05:16:12,208.208 INFO    ] 2026-10-28 05:16:12
[2026-10-28 05:16:12,467.467 INFO    ] 2026-10-28 05:16:12
[2026-10-28 05:16:12,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:16:12,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:16:12,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:16:13,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:16:13,057.057 INFO    ] time= 28/10/2026 05:16:13
[2026-10-28 05:16:13,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:16:13,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:16:13,241.241 INFO    ] No existing commands found in stream
[2026-10-28 05:16:18,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:16:18,258.258 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-28 05:16:20,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:16:20,295.295 INFO    ] Checking for system updates...
[2026-10-28 05:16:20,331.331 INFO    ] 200
[2026-10-28 05:16:20,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:16:20,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:16:20,394.394 INFO    ] No update needed
[2026-10-28 05:16:20,396.396 INFO    ] Checking for camera pi updates...
[2026-10-28 05:16:20,429.429 INFO    ] 200
[2026-10-28 05:16:20,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:16:20,473.473 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:16:20,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:16:20,549.549 INFO    ] No camera update needed
[2026-10-28 05:16:20,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:16:20,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:16:20,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:16:20,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:16:22,604.604 INFO    ] ================================================
[2026-10-28 05:16:22,620.620 INFO    ] Launching Daemon at Wed Oct 28 05:16:22 IST 2026
[2026-10-28 05:16:22,631.631 INFO    ] ================================================
[2026-10-28 05:16:23,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:16:23
[2026-10-28 05:16:23,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:16:24,032.032 INFO    ] Initializing speech engine...
[2026-10-28 05:16:24,047.047 INFO    ] 2026-10-28 05:16:24
[2026-10-28 05:16:24,313.313 INFO    ] 2026-10-28 05:16:24
[2026-10-28 05:16:24,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:16:24,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:16:24,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:16:24,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:16:24,881.881 INFO    ] time= 28/10/2026 05:16:24
[2026-10-28 05:16:24,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:16:24,905.905 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:16:25,036.036 INFO    ] No existing commands found in stream
[2026-10-28 05:16:30,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:16:30,054.054 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-28 05:16:32,108.108 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:16:32,110.110 INFO    ] Checking for system updates...
[2026-10-28 05:16:32,155.155 INFO    ] 200
[2026-10-28 05:16:32,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:16:32,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:16:32,224.224 INFO    ] No update needed
[2026-10-28 05:16:32,226.226 INFO    ] Checking for camera pi updates...
[2026-10-28 05:16:32,263.263 INFO    ] 200
[2026-10-28 05:16:32,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:16:32,312.312 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:16:32,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:16:32,441.441 INFO    ] No camera update needed
[2026-10-28 05:16:32,444.444 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:16:32,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:16:32,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:16:32,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:16:34,502.502 INFO    ] ================================================
[2026-10-28 05:16:34,517.517 INFO    ] Launching Daemon at Wed Oct 28 05:16:34 IST 2026
[2026-10-28 05:16:34,528.528 INFO    ] ================================================
[2026-10-28 05:16:35,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:16:35
[2026-10-28 05:16:35,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:16:35,949.949 INFO    ] Initializing speech engine...
[2026-10-28 05:16:35,958.958 INFO    ] 2026-10-28 05:16:35
[2026-10-28 05:16:36,209.209 INFO    ] 2026-10-28 05:16:36
[2026-10-28 05:16:36,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:16:36,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:16:36,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:16:36,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:16:36,713.713 INFO    ] time= 28/10/2026 05:16:36
[2026-10-28 05:16:36,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:16:36,784.784 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:16:36,933.933 INFO    ] No existing commands found in stream
[2026-10-28 05:16:41,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:16:41,949.949 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-28 05:16:46,546.546 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:16:46,548.548 INFO    ] Checking for system updates...
[2026-10-28 05:16:46,584.584 INFO    ] 200
[2026-10-28 05:16:46,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:16:46,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:16:46,647.647 INFO    ] No update needed
[2026-10-28 05:16:46,649.649 INFO    ] Checking for camera pi updates...
[2026-10-28 05:16:46,682.682 INFO    ] 200
[2026-10-28 05:16:46,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:16:46,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:16:46,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:16:46,905.905 INFO    ] No camera update needed
[2026-10-28 05:16:46,907.907 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:16:46,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:16:46,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:16:46,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:16:48,960.960 INFO    ] ================================================
[2026-10-28 05:16:48,975.975 INFO    ] Launching Daemon at Wed Oct 28 05:16:48 IST 2026
[2026-10-28 05:16:48,986.986 INFO    ] ================================================
[2026-10-28 05:16:49,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:16:49
[2026-10-28 05:16:50,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:16:50,513.513 INFO    ] Initializing speech engine...
[2026-10-28 05:16:50,519.519 INFO    ] 2026-10-28 05:16:50
[2026-10-28 05:16:50,779.779 INFO    ] 2026-10-28 05:16:50
[2026-10-28 05:16:50,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:16:51,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:16:51,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:16:51,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:16:51,322.322 INFO    ] time= 28/10/2026 05:16:51
[2026-10-28 05:16:51,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:16:51,367.367 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:16:51,475.475 INFO    ] No existing commands found in stream
[2026-10-28 05:16:56,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:16:56,498.498 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-28 05:16:59,291.291 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:16:59,294.294 INFO    ] Checking for system updates...
[2026-10-28 05:16:59,333.333 INFO    ] 200
[2026-10-28 05:16:59,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:16:59,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:16:59,390.390 INFO    ] No update needed
[2026-10-28 05:16:59,393.393 INFO    ] Checking for camera pi updates...
[2026-10-28 05:16:59,427.427 INFO    ] 200
[2026-10-28 05:16:59,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:16:59,469.469 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:16:59,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:16:59,558.558 INFO    ] No camera update needed
[2026-10-28 05:16:59,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:16:59,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:16:59,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:16:59,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:17:01,630.630 INFO    ] ================================================
[2026-10-28 05:17:01,654.654 INFO    ] Launching Daemon at Wed Oct 28 05:17:01 IST 2026
[2026-10-28 05:17:01,675.675 INFO    ] ================================================
[2026-10-28 05:17:02,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:17:02
[2026-10-28 05:17:03,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:17:03,374.374 INFO    ] Initializing speech engine...
[2026-10-28 05:17:03,380.380 INFO    ] 2026-10-28 05:17:03
[2026-10-28 05:17:03,662.662 INFO    ] 2026-10-28 05:17:03
[2026-10-28 05:17:03,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:17:03,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:17:03,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:17:04,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:17:04,249.249 INFO    ] time= 28/10/2026 05:17:04
[2026-10-28 05:17:04,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:17:04,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:17:04,396.396 INFO    ] No existing commands found in stream
[2026-10-28 05:17:09,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:17:09,419.419 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 05:17:13,932.932 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:17:13,935.935 INFO    ] Checking for system updates...
[2026-10-28 05:17:13,971.971 INFO    ] 200
[2026-10-28 05:17:13,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:17:14,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:17:14,029.029 INFO    ] No update needed
[2026-10-28 05:17:14,031.031 INFO    ] Checking for camera pi updates...
[2026-10-28 05:17:14,065.065 INFO    ] 200
[2026-10-28 05:17:14,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:17:14,127.127 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:17:14,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:17:14,229.229 INFO    ] No camera update needed
[2026-10-28 05:17:14,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:17:14,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:17:14,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:17:14,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:17:16,286.286 INFO    ] ================================================
[2026-10-28 05:17:16,301.301 INFO    ] Launching Daemon at Wed Oct 28 05:17:16 IST 2026
[2026-10-28 05:17:16,312.312 INFO    ] ================================================
[2026-10-28 05:17:16,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:17:16
[2026-10-28 05:17:17,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:17:17,766.766 INFO    ] Initializing speech engine...
[2026-10-28 05:17:17,776.776 INFO    ] 2026-10-28 05:17:17
[2026-10-28 05:17:18,036.036 INFO    ] 2026-10-28 05:17:18
[2026-10-28 05:17:18,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:17:18,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:17:18,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:17:18,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:17:18,581.581 INFO    ] time= 28/10/2026 05:17:18
[2026-10-28 05:17:18,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:17:18,606.606 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:17:18,731.731 INFO    ] No existing commands found in stream
[2026-10-28 05:17:23,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:17:23,748.748 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-28 05:17:24,603.603 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:17:24,606.606 INFO    ] Checking for system updates...
[2026-10-28 05:17:24,642.642 INFO    ] 200
[2026-10-28 05:17:24,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:17:24,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:17:24,700.700 INFO    ] No update needed
[2026-10-28 05:17:24,703.703 INFO    ] Checking for camera pi updates...
[2026-10-28 05:17:24,741.741 INFO    ] 200
[2026-10-28 05:17:24,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:17:24,784.784 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:17:24,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:17:24,867.867 INFO    ] No camera update needed
[2026-10-28 05:17:24,870.870 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:17:24,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:17:24,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:17:24,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:17:26,922.922 INFO    ] ================================================
[2026-10-28 05:17:26,937.937 INFO    ] Launching Daemon at Wed Oct 28 05:17:26 IST 2026
[2026-10-28 05:17:26,948.948 INFO    ] ================================================
[2026-10-28 05:17:27,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:17:27
[2026-10-28 05:17:28,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:17:28,369.369 INFO    ] Initializing speech engine...
[2026-10-28 05:17:28,375.375 INFO    ] 2026-10-28 05:17:28
[2026-10-28 05:17:28,626.626 INFO    ] 2026-10-28 05:17:28
[2026-10-28 05:17:28,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:17:28,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:17:28,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:17:29,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:17:29,070.070 INFO    ] time= 28/10/2026 05:17:29
[2026-10-28 05:17:29,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:17:29,121.121 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:17:29,242.242 INFO    ] No existing commands found in stream
[2026-10-28 05:17:34,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:17:34,257.257 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 05:17:38,265.265 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:17:38,268.268 INFO    ] Checking for system updates...
[2026-10-28 05:17:38,307.307 INFO    ] 200
[2026-10-28 05:17:38,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:17:38,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:17:38,369.369 INFO    ] No update needed
[2026-10-28 05:17:38,371.371 INFO    ] Checking for camera pi updates...
[2026-10-28 05:17:38,405.405 INFO    ] 200
[2026-10-28 05:17:38,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:17:38,447.447 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:17:38,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:17:38,535.535 INFO    ] No camera update needed
[2026-10-28 05:17:38,537.537 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:17:38,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:17:38,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:17:38,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:17:40,591.591 INFO    ] ================================================
[2026-10-28 05:17:40,606.606 INFO    ] Launching Daemon at Wed Oct 28 05:17:40 IST 2026
[2026-10-28 05:17:40,617.617 INFO    ] ================================================
[2026-10-28 05:17:41,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:17:41
[2026-10-28 05:17:41,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:17:42,032.032 INFO    ] Initializing speech engine...
[2026-10-28 05:17:42,042.042 INFO    ] 2026-10-28 05:17:42
[2026-10-28 05:17:42,346.346 INFO    ] 2026-10-28 05:17:42
[2026-10-28 05:17:42,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:17:42,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:17:42,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:17:42,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:17:42,877.877 INFO    ] time= 28/10/2026 05:17:42
[2026-10-28 05:17:42,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:17:42,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:17:43,117.117 INFO    ] No existing commands found in stream
[2026-10-28 05:17:48,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:17:48,139.139 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-28 05:17:52,692.692 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:17:52,694.694 INFO    ] Checking for system updates...
[2026-10-28 05:17:52,733.733 INFO    ] 200
[2026-10-28 05:17:52,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:17:52,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:17:52,789.789 INFO    ] No update needed
[2026-10-28 05:17:52,792.792 INFO    ] Checking for camera pi updates...
[2026-10-28 05:17:52,825.825 INFO    ] 200
[2026-10-28 05:17:52,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:17:52,868.868 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:17:52,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:17:52,950.950 INFO    ] No camera update needed
[2026-10-28 05:17:52,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:17:52,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:17:52,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:17:52,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:17:55,006.006 INFO    ] ================================================
[2026-10-28 05:17:55,024.024 INFO    ] Launching Daemon at Wed Oct 28 05:17:55 IST 2026
[2026-10-28 05:17:55,034.034 INFO    ] ================================================
[2026-10-28 05:17:55,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:17:55
[2026-10-28 05:17:56,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:17:56,486.486 INFO    ] Initializing speech engine...
[2026-10-28 05:17:56,495.495 INFO    ] 2026-10-28 05:17:56
[2026-10-28 05:17:56,743.743 INFO    ] 2026-10-28 05:17:56
[2026-10-28 05:17:56,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:17:57,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:17:57,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:17:57,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:17:57,297.297 INFO    ] time= 28/10/2026 05:17:57
[2026-10-28 05:17:57,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:17:57,321.321 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:17:57,431.431 INFO    ] No existing commands found in stream
[2026-10-28 05:18:02,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:18:02,460.460 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 05:18:04,666.666 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:18:04,669.669 INFO    ] Checking for system updates...
[2026-10-28 05:18:04,704.704 INFO    ] 200
[2026-10-28 05:18:04,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:18:04,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:18:04,761.761 INFO    ] No update needed
[2026-10-28 05:18:04,763.763 INFO    ] Checking for camera pi updates...
[2026-10-28 05:18:04,799.799 INFO    ] 200
[2026-10-28 05:18:04,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:18:04,845.845 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:18:04,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:18:04,929.929 INFO    ] No camera update needed
[2026-10-28 05:18:04,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:18:04,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:18:04,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:18:04,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:18:06,984.984 INFO    ] ================================================
[2026-10-28 05:18:07,999.999 INFO    ] Launching Daemon at Wed Oct 28 05:18:06 IST 2026
[2026-10-28 05:18:07,010.010 INFO    ] ================================================
[2026-10-28 05:18:07,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:18:07
[2026-10-28 05:18:08,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:18:08,468.468 INFO    ] Initializing speech engine...
[2026-10-28 05:18:08,478.478 INFO    ] 2026-10-28 05:18:08
[2026-10-28 05:18:08,742.742 INFO    ] 2026-10-28 05:18:08
[2026-10-28 05:18:08,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:18:08,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:18:09,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:18:09,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:18:09,345.345 INFO    ] time= 28/10/2026 05:18:09
[2026-10-28 05:18:09,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:18:09,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:18:09,532.532 INFO    ] No existing commands found in stream
[2026-10-28 05:18:14,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:18:14,560.560 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 05:18:16,253.253 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:18:16,256.256 INFO    ] Checking for system updates...
[2026-10-28 05:18:16,291.291 INFO    ] 200
[2026-10-28 05:18:16,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:18:16,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:18:16,350.350 INFO    ] No update needed
[2026-10-28 05:18:16,353.353 INFO    ] Checking for camera pi updates...
[2026-10-28 05:18:16,386.386 INFO    ] 200
[2026-10-28 05:18:16,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:18:16,429.429 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:18:16,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:18:16,513.513 INFO    ] No camera update needed
[2026-10-28 05:18:16,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:18:16,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:18:16,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:18:16,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:18:18,567.567 INFO    ] ================================================
[2026-10-28 05:18:18,582.582 INFO    ] Launching Daemon at Wed Oct 28 05:18:18 IST 2026
[2026-10-28 05:18:18,593.593 INFO    ] ================================================
[2026-10-28 05:18:19,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:18:19
[2026-10-28 05:18:19,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:18:20,050.050 INFO    ] Initializing speech engine...
[2026-10-28 05:18:20,060.060 INFO    ] 2026-10-28 05:18:20
[2026-10-28 05:18:20,318.318 INFO    ] 2026-10-28 05:18:20
[2026-10-28 05:18:20,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:18:20,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:18:20,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:18:20,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:18:20,799.799 INFO    ] time= 28/10/2026 05:18:20
[2026-10-28 05:18:20,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:18:20,851.851 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:18:21,007.007 INFO    ] No existing commands found in stream
[2026-10-28 05:18:26,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:18:26,038.038 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 05:18:26,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:18:26,748.748 INFO    ] Checking for system updates...
[2026-10-28 05:18:26,785.785 INFO    ] 200
[2026-10-28 05:18:26,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:18:26,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:18:26,842.842 INFO    ] No update needed
[2026-10-28 05:18:26,845.845 INFO    ] Checking for camera pi updates...
[2026-10-28 05:18:26,880.880 INFO    ] 200
[2026-10-28 05:18:26,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:18:26,928.928 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:18:26,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:18:27,000.000 INFO    ] No camera update needed
[2026-10-28 05:18:27,002.002 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:18:27,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:18:27,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:18:27,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:18:29,058.058 INFO    ] ================================================
[2026-10-28 05:18:29,073.073 INFO    ] Launching Daemon at Wed Oct 28 05:18:29 IST 2026
[2026-10-28 05:18:29,085.085 INFO    ] ================================================
[2026-10-28 05:18:29,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:18:29
[2026-10-28 05:18:30,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:18:30,541.541 INFO    ] Initializing speech engine...
[2026-10-28 05:18:30,546.546 INFO    ] 2026-10-28 05:18:30
[2026-10-28 05:18:30,808.808 INFO    ] 2026-10-28 05:18:30
[2026-10-28 05:18:30,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:18:31,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:18:31,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:18:31,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:18:31,357.357 INFO    ] time= 28/10/2026 05:18:31
[2026-10-28 05:18:31,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:18:31,381.381 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:18:31,512.512 INFO    ] No existing commands found in stream
[2026-10-28 05:18:36,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:18:36,532.532 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 05:18:38,516.516 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:18:38,519.519 INFO    ] Checking for system updates...
[2026-10-28 05:18:38,555.555 INFO    ] 200
[2026-10-28 05:18:38,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:18:38,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:18:38,621.621 INFO    ] No update needed
[2026-10-28 05:18:38,623.623 INFO    ] Checking for camera pi updates...
[2026-10-28 05:18:38,657.657 INFO    ] 200
[2026-10-28 05:18:38,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:18:38,699.699 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:18:38,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:18:38,799.799 INFO    ] No camera update needed
[2026-10-28 05:18:38,801.801 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:18:38,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:18:38,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:18:38,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:18:40,854.854 INFO    ] ================================================
[2026-10-28 05:18:40,870.870 INFO    ] Launching Daemon at Wed Oct 28 05:18:40 IST 2026
[2026-10-28 05:18:40,880.880 INFO    ] ================================================
[2026-10-28 05:18:41,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:18:41
[2026-10-28 05:18:42,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:18:42,287.287 INFO    ] Initializing speech engine...
[2026-10-28 05:18:42,303.303 INFO    ] 2026-10-28 05:18:42
[2026-10-28 05:18:42,580.580 INFO    ] 2026-10-28 05:18:42
[2026-10-28 05:18:42,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:18:42,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:18:42,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:18:43,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:18:43,100.100 INFO    ] time= 28/10/2026 05:18:43
[2026-10-28 05:18:43,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:18:43,201.201 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:18:43,343.343 INFO    ] No existing commands found in stream
[2026-10-28 05:18:48,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:18:48,371.371 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-28 05:18:49,886.886 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:18:49,889.889 INFO    ] Checking for system updates...
[2026-10-28 05:18:49,925.925 INFO    ] 200
[2026-10-28 05:18:49,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:18:49,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:18:49,981.981 INFO    ] No update needed
[2026-10-28 05:18:49,984.984 INFO    ] Checking for camera pi updates...
[2026-10-28 05:18:50,020.020 INFO    ] 200
[2026-10-28 05:18:50,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:18:50,062.062 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:18:50,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:18:50,253.253 INFO    ] No camera update needed
[2026-10-28 05:18:50,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:18:50,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:18:50,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:18:50,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:18:52,309.309 INFO    ] ================================================
[2026-10-28 05:18:52,324.324 INFO    ] Launching Daemon at Wed Oct 28 05:18:52 IST 2026
[2026-10-28 05:18:52,334.334 INFO    ] ================================================
[2026-10-28 05:18:52,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:18:52
[2026-10-28 05:18:53,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:18:53,777.777 INFO    ] Initializing speech engine...
[2026-10-28 05:18:53,791.791 INFO    ] 2026-10-28 05:18:53
[2026-10-28 05:18:54,042.042 INFO    ] 2026-10-28 05:18:54
[2026-10-28 05:18:54,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:18:54,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:18:54,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:18:54,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:18:54,478.478 INFO    ] time= 28/10/2026 05:18:54
[2026-10-28 05:18:54,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:18:54,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:18:54,615.615 INFO    ] No existing commands found in stream
[2026-10-28 05:18:59,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:18:59,647.647 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-28 05:19:03,755.755 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:19:03,757.757 INFO    ] Checking for system updates...
[2026-10-28 05:19:03,793.793 INFO    ] 200
[2026-10-28 05:19:03,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:19:03,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:19:03,855.855 INFO    ] No update needed
[2026-10-28 05:19:03,858.858 INFO    ] Checking for camera pi updates...
[2026-10-28 05:19:03,891.891 INFO    ] 200
[2026-10-28 05:19:03,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:19:03,935.935 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:19:04,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:19:04,042.042 INFO    ] No camera update needed
[2026-10-28 05:19:04,044.044 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:19:04,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:19:04,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:19:04,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:19:06,096.096 INFO    ] ================================================
[2026-10-28 05:19:06,111.111 INFO    ] Launching Daemon at Wed Oct 28 05:19:06 IST 2026
[2026-10-28 05:19:06,122.122 INFO    ] ================================================
[2026-10-28 05:19:06,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:19:06
[2026-10-28 05:19:07,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:19:07,561.561 INFO    ] Initializing speech engine...
[2026-10-28 05:19:07,576.576 INFO    ] 2026-10-28 05:19:07
[2026-10-28 05:19:07,858.858 INFO    ] 2026-10-28 05:19:07
[2026-10-28 05:19:07,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:19:08,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:19:08,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:19:08,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:19:08,470.470 INFO    ] time= 28/10/2026 05:19:08
[2026-10-28 05:19:08,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:19:08,519.519 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:19:08,661.661 INFO    ] No existing commands found in stream
[2026-10-28 05:19:13,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:19:13,698.698 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-28 05:19:16,533.533 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:19:16,536.536 INFO    ] Checking for system updates...
[2026-10-28 05:19:16,576.576 INFO    ] 200
[2026-10-28 05:19:16,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:19:16,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:19:16,636.636 INFO    ] No update needed
[2026-10-28 05:19:16,638.638 INFO    ] Checking for camera pi updates...
[2026-10-28 05:19:16,673.673 INFO    ] 200
[2026-10-28 05:19:16,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:19:16,721.721 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:19:16,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:19:16,837.837 INFO    ] No camera update needed
[2026-10-28 05:19:16,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:19:16,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:19:16,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:19:16,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:19:18,895.895 INFO    ] ================================================
[2026-10-28 05:19:18,911.911 INFO    ] Launching Daemon at Wed Oct 28 05:19:18 IST 2026
[2026-10-28 05:19:18,922.922 INFO    ] ================================================
[2026-10-28 05:19:19,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:19:19
[2026-10-28 05:19:20,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:19:20,445.445 INFO    ] Initializing speech engine...
[2026-10-28 05:19:20,460.460 INFO    ] 2026-10-28 05:19:20
[2026-10-28 05:19:20,725.725 INFO    ] 2026-10-28 05:19:20
[2026-10-28 05:19:20,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:19:21,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:19:21,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:19:21,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:19:21,223.223 INFO    ] time= 28/10/2026 05:19:21
[2026-10-28 05:19:21,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:19:21,299.299 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:19:21,452.452 INFO    ] No existing commands found in stream
[2026-10-28 05:19:26,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:19:26,474.474 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-28 05:19:29,598.598 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:19:29,600.600 INFO    ] Checking for system updates...
[2026-10-28 05:19:29,636.636 INFO    ] 200
[2026-10-28 05:19:29,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:19:29,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:19:29,700.700 INFO    ] No update needed
[2026-10-28 05:19:29,702.702 INFO    ] Checking for camera pi updates...
[2026-10-28 05:19:29,750.750 INFO    ] 200
[2026-10-28 05:19:29,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:19:29,795.795 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:19:29,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:19:29,872.872 INFO    ] No camera update needed
[2026-10-28 05:19:29,874.874 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:19:29,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:19:29,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:19:29,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:19:31,929.929 INFO    ] ================================================
[2026-10-28 05:19:31,946.946 INFO    ] Launching Daemon at Wed Oct 28 05:19:31 IST 2026
[2026-10-28 05:19:31,957.957 INFO    ] ================================================
[2026-10-28 05:19:32,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:19:32
[2026-10-28 05:19:33,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:19:33,451.451 INFO    ] Initializing speech engine...
[2026-10-28 05:19:33,459.459 INFO    ] 2026-10-28 05:19:33
[2026-10-28 05:19:33,719.719 INFO    ] 2026-10-28 05:19:33
[2026-10-28 05:19:33,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:19:34,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:19:34,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:19:34,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:19:34,350.350 INFO    ] time= 28/10/2026 05:19:34
[2026-10-28 05:19:34,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:19:34,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:19:34,522.522 INFO    ] No existing commands found in stream
[2026-10-28 05:19:39,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:19:39,540.540 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-28 05:19:42,347.347 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:19:42,349.349 INFO    ] Checking for system updates...
[2026-10-28 05:19:42,388.388 INFO    ] 200
[2026-10-28 05:19:42,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:19:42,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:19:42,451.451 INFO    ] No update needed
[2026-10-28 05:19:42,460.460 INFO    ] Checking for camera pi updates...
[2026-10-28 05:19:42,494.494 INFO    ] 200
[2026-10-28 05:19:42,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:19:42,537.537 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:19:42,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:19:42,620.620 INFO    ] No camera update needed
[2026-10-28 05:19:42,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:19:42,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:19:42,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:19:42,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:19:44,677.677 INFO    ] ================================================
[2026-10-28 05:19:44,693.693 INFO    ] Launching Daemon at Wed Oct 28 05:19:44 IST 2026
[2026-10-28 05:19:44,704.704 INFO    ] ================================================
[2026-10-28 05:19:45,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:19:45
[2026-10-28 05:19:45,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:19:46,150.150 INFO    ] Initializing speech engine...
[2026-10-28 05:19:46,159.159 INFO    ] 2026-10-28 05:19:46
[2026-10-28 05:19:46,420.420 INFO    ] 2026-10-28 05:19:46
[2026-10-28 05:19:46,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:19:46,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:19:46,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:19:46,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:19:46,963.963 INFO    ] time= 28/10/2026 05:19:46
[2026-10-28 05:19:46,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:19:47,010.010 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:19:47,134.134 INFO    ] No existing commands found in stream
[2026-10-28 05:19:52,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:19:52,167.167 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-28 05:19:54,746.746 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:19:54,748.748 INFO    ] Checking for system updates...
[2026-10-28 05:19:54,784.784 INFO    ] 200
[2026-10-28 05:19:54,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:19:54,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:19:54,847.847 INFO    ] No update needed
[2026-10-28 05:19:54,850.850 INFO    ] Checking for camera pi updates...
[2026-10-28 05:19:54,898.898 INFO    ] 200
[2026-10-28 05:19:54,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:19:54,942.942 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:19:55,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:19:55,007.007 INFO    ] No camera update needed
[2026-10-28 05:19:55,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:19:55,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:19:55,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:19:55,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:19:57,062.062 INFO    ] ================================================
[2026-10-28 05:19:57,077.077 INFO    ] Launching Daemon at Wed Oct 28 05:19:57 IST 2026
[2026-10-28 05:19:57,088.088 INFO    ] ================================================
[2026-10-28 05:19:57,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:19:57
[2026-10-28 05:19:58,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:19:58,707.707 INFO    ] Initializing speech engine...
[2026-10-28 05:19:58,716.716 INFO    ] 2026-10-28 05:19:58
[2026-10-28 05:19:58,991.991 INFO    ] 2026-10-28 05:19:58
[2026-10-28 05:19:59,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:19:59,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:19:59,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:19:59,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:19:59,598.598 INFO    ] time= 28/10/2026 05:19:59
[2026-10-28 05:19:59,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:19:59,622.622 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:19:59,773.773 INFO    ] No existing commands found in stream
[2026-10-28 05:20:04,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:20:04,807.807 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 05:20:08,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:20:08,890.890 INFO    ] Checking for system updates...
[2026-10-28 05:20:08,933.933 INFO    ] 200
[2026-10-28 05:20:08,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:20:08,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:20:09,000.000 INFO    ] No update needed
[2026-10-28 05:20:09,002.002 INFO    ] Checking for camera pi updates...
[2026-10-28 05:20:09,036.036 INFO    ] 200
[2026-10-28 05:20:09,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:20:09,082.082 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:20:09,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:20:09,167.167 INFO    ] No camera update needed
[2026-10-28 05:20:09,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:20:09,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:20:09,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:20:09,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:20:11,222.222 INFO    ] ================================================
[2026-10-28 05:20:11,237.237 INFO    ] Launching Daemon at Wed Oct 28 05:20:11 IST 2026
[2026-10-28 05:20:11,248.248 INFO    ] ================================================
[2026-10-28 05:20:11,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:20:11
[2026-10-28 05:20:12,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:20:12,639.639 INFO    ] Initializing speech engine...
[2026-10-28 05:20:12,652.652 INFO    ] 2026-10-28 05:20:12
[2026-10-28 05:20:12,913.913 INFO    ] 2026-10-28 05:20:12
[2026-10-28 05:20:12,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:20:13,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:20:13,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:20:13,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:20:13,464.464 INFO    ] time= 28/10/2026 05:20:13
[2026-10-28 05:20:13,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:20:13,491.491 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:20:13,619.619 INFO    ] No existing commands found in stream
[2026-10-28 05:20:18,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:20:18,645.645 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-28 05:20:21,705.705 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:20:21,708.708 INFO    ] Checking for system updates...
[2026-10-28 05:20:21,744.744 INFO    ] 200
[2026-10-28 05:20:21,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:20:21,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:20:21,802.802 INFO    ] No update needed
[2026-10-28 05:20:21,805.805 INFO    ] Checking for camera pi updates...
[2026-10-28 05:20:21,838.838 INFO    ] 200
[2026-10-28 05:20:21,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:20:21,881.881 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:20:21,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:20:21,989.989 INFO    ] No camera update needed
[2026-10-28 05:20:21,991.991 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:20:21,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:20:21,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:20:22,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:20:24,046.046 INFO    ] ================================================
[2026-10-28 05:20:24,061.061 INFO    ] Launching Daemon at Wed Oct 28 05:20:24 IST 2026
[2026-10-28 05:20:24,072.072 INFO    ] ================================================
[2026-10-28 05:20:24,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:20:24
[2026-10-28 05:20:25,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:20:25,508.508 INFO    ] Initializing speech engine...
[2026-10-28 05:20:25,524.524 INFO    ] 2026-10-28 05:20:25
[2026-10-28 05:20:25,802.802 INFO    ] 2026-10-28 05:20:25
[2026-10-28 05:20:25,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:20:26,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:20:26,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:20:26,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:20:26,356.356 INFO    ] time= 28/10/2026 05:20:26
[2026-10-28 05:20:26,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:20:26,381.381 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:20:26,509.509 INFO    ] No existing commands found in stream
[2026-10-28 05:20:31,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:20:31,526.526 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-28 05:20:36,045.045 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:20:36,048.048 INFO    ] Checking for system updates...
[2026-10-28 05:20:36,088.088 INFO    ] 200
[2026-10-28 05:20:36,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:20:36,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:20:36,158.158 INFO    ] No update needed
[2026-10-28 05:20:36,161.161 INFO    ] Checking for camera pi updates...
[2026-10-28 05:20:36,197.197 INFO    ] 200
[2026-10-28 05:20:36,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:20:36,255.255 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:20:36,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:20:36,345.345 INFO    ] No camera update needed
[2026-10-28 05:20:36,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:20:36,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:20:36,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:20:36,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:20:38,405.405 INFO    ] ================================================
[2026-10-28 05:20:38,420.420 INFO    ] Launching Daemon at Wed Oct 28 05:20:38 IST 2026
[2026-10-28 05:20:38,430.430 INFO    ] ================================================
[2026-10-28 05:20:39,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:20:38
[2026-10-28 05:20:39,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:20:39,848.848 INFO    ] Initializing speech engine...
[2026-10-28 05:20:39,857.857 INFO    ] 2026-10-28 05:20:39
[2026-10-28 05:20:40,132.132 INFO    ] 2026-10-28 05:20:40
[2026-10-28 05:20:40,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:20:40,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:20:40,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:20:40,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:20:40,690.690 INFO    ] time= 28/10/2026 05:20:40
[2026-10-28 05:20:40,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:20:40,735.735 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:20:40,871.871 INFO    ] No existing commands found in stream
[2026-10-28 05:20:45,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:20:45,899.899 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-28 05:20:50,170.170 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:20:50,173.173 INFO    ] Checking for system updates...
[2026-10-28 05:20:50,213.213 INFO    ] 200
[2026-10-28 05:20:50,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:20:50,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:20:50,277.277 INFO    ] No update needed
[2026-10-28 05:20:50,279.279 INFO    ] Checking for camera pi updates...
[2026-10-28 05:20:50,313.313 INFO    ] 200
[2026-10-28 05:20:50,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:20:50,355.355 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:20:50,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:20:50,421.421 INFO    ] No camera update needed
[2026-10-28 05:20:50,423.423 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:20:50,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:20:50,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:20:50,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:20:52,477.477 INFO    ] ================================================
[2026-10-28 05:20:52,492.492 INFO    ] Launching Daemon at Wed Oct 28 05:20:52 IST 2026
[2026-10-28 05:20:52,503.503 INFO    ] ================================================
[2026-10-28 05:20:53,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:20:53
[2026-10-28 05:20:53,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:20:53,971.971 INFO    ] Initializing speech engine...
[2026-10-28 05:20:53,980.980 INFO    ] 2026-10-28 05:20:53
[2026-10-28 05:20:54,245.245 INFO    ] 2026-10-28 05:20:54
[2026-10-28 05:20:54,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:20:54,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:20:54,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:20:54,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:20:54,802.802 INFO    ] time= 28/10/2026 05:20:54
[2026-10-28 05:20:54,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:20:54,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:20:54,983.983 INFO    ] No existing commands found in stream
[2026-10-28 05:21:00,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:21:00,016.016 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 05:21:03,810.810 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:21:03,813.813 INFO    ] Checking for system updates...
[2026-10-28 05:21:03,852.852 INFO    ] 200
[2026-10-28 05:21:03,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:21:03,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:21:03,910.910 INFO    ] No update needed
[2026-10-28 05:21:03,913.913 INFO    ] Checking for camera pi updates...
[2026-10-28 05:21:03,948.948 INFO    ] 200
[2026-10-28 05:21:03,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:21:03,994.994 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:21:04,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:21:04,076.076 INFO    ] No camera update needed
[2026-10-28 05:21:04,078.078 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:21:04,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:21:04,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:21:04,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:21:06,132.132 INFO    ] ================================================
[2026-10-28 05:21:06,147.147 INFO    ] Launching Daemon at Wed Oct 28 05:21:06 IST 2026
[2026-10-28 05:21:06,157.157 INFO    ] ================================================
[2026-10-28 05:21:06,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:21:06
[2026-10-28 05:21:07,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:21:07,567.567 INFO    ] Initializing speech engine...
[2026-10-28 05:21:07,582.582 INFO    ] 2026-10-28 05:21:07
[2026-10-28 05:21:07,847.847 INFO    ] 2026-10-28 05:21:07
[2026-10-28 05:21:07,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:21:08,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:21:08,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:21:08,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:21:08,351.351 INFO    ] time= 28/10/2026 05:21:08
[2026-10-28 05:21:08,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:21:08,423.423 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:21:08,572.572 INFO    ] No existing commands found in stream
[2026-10-28 05:21:13,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:21:13,590.590 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-28 05:21:18,182.182 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:21:18,185.185 INFO    ] Checking for system updates...
[2026-10-28 05:21:18,223.223 INFO    ] 200
[2026-10-28 05:21:18,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:21:18,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:21:18,280.280 INFO    ] No update needed
[2026-10-28 05:21:18,283.283 INFO    ] Checking for camera pi updates...
[2026-10-28 05:21:18,326.326 INFO    ] 200
[2026-10-28 05:21:18,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:21:18,371.371 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:21:18,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:21:18,464.464 INFO    ] No camera update needed
[2026-10-28 05:21:18,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:21:18,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:21:18,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:21:18,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:21:20,519.519 INFO    ] ================================================
[2026-10-28 05:21:20,535.535 INFO    ] Launching Daemon at Wed Oct 28 05:21:20 IST 2026
[2026-10-28 05:21:20,546.546 INFO    ] ================================================
[2026-10-28 05:21:21,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:21:21
[2026-10-28 05:21:21,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:21:22,126.126 INFO    ] Initializing speech engine...
[2026-10-28 05:21:22,145.145 INFO    ] 2026-10-28 05:21:22
[2026-10-28 05:21:22,396.396 INFO    ] 2026-10-28 05:21:22
[2026-10-28 05:21:22,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:21:22,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:21:22,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:21:22,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:21:22,964.964 INFO    ] time= 28/10/2026 05:21:22
[2026-10-28 05:21:22,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:21:22,986.986 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:21:23,115.115 INFO    ] No existing commands found in stream
[2026-10-28 05:21:28,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:21:28,136.136 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-28 05:21:28,845.845 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:21:28,847.847 INFO    ] Checking for system updates...
[2026-10-28 05:21:28,887.887 INFO    ] 200
[2026-10-28 05:21:28,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:21:28,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:21:28,943.943 INFO    ] No update needed
[2026-10-28 05:21:28,945.945 INFO    ] Checking for camera pi updates...
[2026-10-28 05:21:28,979.979 INFO    ] 200
[2026-10-28 05:21:28,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:21:29,022.022 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:21:29,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:21:29,107.107 INFO    ] No camera update needed
[2026-10-28 05:21:29,109.109 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:21:29,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:21:29,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:21:29,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:21:31,161.161 INFO    ] ================================================
[2026-10-28 05:21:31,177.177 INFO    ] Launching Daemon at Wed Oct 28 05:21:31 IST 2026
[2026-10-28 05:21:31,187.187 INFO    ] ================================================
[2026-10-28 05:21:31,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:21:31
[2026-10-28 05:21:32,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:21:32,683.683 INFO    ] Initializing speech engine...
[2026-10-28 05:21:32,702.702 INFO    ] 2026-10-28 05:21:32
[2026-10-28 05:21:32,982.982 INFO    ] 2026-10-28 05:21:32
[2026-10-28 05:21:33,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:21:33,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:21:33,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:21:33,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:21:33,474.474 INFO    ] time= 28/10/2026 05:21:33
[2026-10-28 05:21:33,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:21:33,567.567 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:21:33,674.674 INFO    ] No existing commands found in stream
[2026-10-28 05:21:38,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:21:38,688.688 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-28 05:21:43,077.077 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:21:43,080.080 INFO    ] Checking for system updates...
[2026-10-28 05:21:43,119.119 INFO    ] 200
[2026-10-28 05:21:43,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:21:43,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:21:43,182.182 INFO    ] No update needed
[2026-10-28 05:21:43,185.185 INFO    ] Checking for camera pi updates...
[2026-10-28 05:21:43,218.218 INFO    ] 200
[2026-10-28 05:21:43,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:21:43,261.261 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:21:43,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:21:43,344.344 INFO    ] No camera update needed
[2026-10-28 05:21:43,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:21:43,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:21:43,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:21:43,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:21:45,399.399 INFO    ] ================================================
[2026-10-28 05:21:45,413.413 INFO    ] Launching Daemon at Wed Oct 28 05:21:45 IST 2026
[2026-10-28 05:21:45,424.424 INFO    ] ================================================
[2026-10-28 05:21:45,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:21:45
[2026-10-28 05:21:46,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:21:46,844.844 INFO    ] Initializing speech engine...
[2026-10-28 05:21:46,851.851 INFO    ] 2026-10-28 05:21:46
[2026-10-28 05:21:47,096.096 INFO    ] 2026-10-28 05:21:47
[2026-10-28 05:21:47,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:21:47,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:21:47,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:21:47,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:21:47,652.652 INFO    ] time= 28/10/2026 05:21:47
[2026-10-28 05:21:47,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:21:47,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:21:47,796.796 INFO    ] No existing commands found in stream
[2026-10-28 05:21:52,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:21:52,818.818 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 05:21:55,641.641 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:21:55,644.644 INFO    ] Checking for system updates...
[2026-10-28 05:21:55,679.679 INFO    ] 200
[2026-10-28 05:21:55,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:21:55,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:21:55,745.745 INFO    ] No update needed
[2026-10-28 05:21:55,747.747 INFO    ] Checking for camera pi updates...
[2026-10-28 05:21:55,781.781 INFO    ] 200
[2026-10-28 05:21:55,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:21:55,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:21:55,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:21:55,928.928 INFO    ] No camera update needed
[2026-10-28 05:21:55,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:21:55,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:21:55,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:21:55,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:21:57,983.983 INFO    ] ================================================
[2026-10-28 05:21:58,998.998 INFO    ] Launching Daemon at Wed Oct 28 05:21:57 IST 2026
[2026-10-28 05:21:58,009.009 INFO    ] ================================================
[2026-10-28 05:21:58,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:21:58
[2026-10-28 05:21:59,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:21:59,472.472 INFO    ] Initializing speech engine...
[2026-10-28 05:21:59,482.482 INFO    ] 2026-10-28 05:21:59
[2026-10-28 05:21:59,758.758 INFO    ] 2026-10-28 05:21:59
[2026-10-28 05:21:59,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:22:00,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:22:00,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:22:00,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:22:00,286.286 INFO    ] time= 28/10/2026 05:22:00
[2026-10-28 05:22:00,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:22:00,313.313 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:22:00,426.426 INFO    ] No existing commands found in stream
[2026-10-28 05:22:05,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:22:05,454.454 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-28 05:22:07,887.887 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:22:07,890.890 INFO    ] Checking for system updates...
[2026-10-28 05:22:07,926.926 INFO    ] 200
[2026-10-28 05:22:07,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:22:07,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:22:07,990.990 INFO    ] No update needed
[2026-10-28 05:22:07,993.993 INFO    ] Checking for camera pi updates...
[2026-10-28 05:22:08,029.029 INFO    ] 200
[2026-10-28 05:22:08,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:22:08,080.080 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:22:08,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:22:08,172.172 INFO    ] No camera update needed
[2026-10-28 05:22:08,175.175 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:22:08,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:22:08,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:22:08,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:22:10,227.227 INFO    ] ================================================
[2026-10-28 05:22:10,241.241 INFO    ] Launching Daemon at Wed Oct 28 05:22:10 IST 2026
[2026-10-28 05:22:10,252.252 INFO    ] ================================================
[2026-10-28 05:22:10,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:22:10
[2026-10-28 05:22:11,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:22:11,708.708 INFO    ] Initializing speech engine...
[2026-10-28 05:22:11,716.716 INFO    ] 2026-10-28 05:22:11
[2026-10-28 05:22:11,975.975 INFO    ] 2026-10-28 05:22:11
[2026-10-28 05:22:12,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:22:12,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:22:12,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:22:12,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:22:12,520.520 INFO    ] time= 28/10/2026 05:22:12
[2026-10-28 05:22:12,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:22:12,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:22:12,668.668 INFO    ] No existing commands found in stream
[2026-10-28 05:22:17,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:22:17,685.685 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-28 05:22:19,352.352 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:22:19,355.355 INFO    ] Checking for system updates...
[2026-10-28 05:22:19,396.396 INFO    ] 200
[2026-10-28 05:22:19,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:22:19,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:22:19,455.455 INFO    ] No update needed
[2026-10-28 05:22:19,457.457 INFO    ] Checking for camera pi updates...
[2026-10-28 05:22:19,494.494 INFO    ] 200
[2026-10-28 05:22:19,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:22:19,537.537 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:22:19,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:22:19,622.622 INFO    ] No camera update needed
[2026-10-28 05:22:19,624.624 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:22:19,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:22:19,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:22:19,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:22:21,678.678 INFO    ] ================================================
[2026-10-28 05:22:21,693.693 INFO    ] Launching Daemon at Wed Oct 28 05:22:21 IST 2026
[2026-10-28 05:22:21,704.704 INFO    ] ================================================
[2026-10-28 05:22:22,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:22:22
[2026-10-28 05:22:22,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:22:23,111.111 INFO    ] Initializing speech engine...
[2026-10-28 05:22:23,131.131 INFO    ] 2026-10-28 05:22:23
[2026-10-28 05:22:23,380.380 INFO    ] 2026-10-28 05:22:23
[2026-10-28 05:22:23,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:22:23,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:22:23,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:22:23,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:22:23,947.947 INFO    ] time= 28/10/2026 05:22:23
[2026-10-28 05:22:23,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:22:23,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:22:24,105.105 INFO    ] No existing commands found in stream
[2026-10-28 05:22:29,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:22:29,127.127 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-28 05:22:29,885.885 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:22:29,887.887 INFO    ] Checking for system updates...
[2026-10-28 05:22:29,926.926 INFO    ] 200
[2026-10-28 05:22:29,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:22:29,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:22:29,985.985 INFO    ] No update needed
[2026-10-28 05:22:29,987.987 INFO    ] Checking for camera pi updates...
[2026-10-28 05:22:30,024.024 INFO    ] 200
[2026-10-28 05:22:30,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:22:30,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:22:30,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:22:30,154.154 INFO    ] No camera update needed
[2026-10-28 05:22:30,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:22:30,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:22:30,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:22:30,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:22:32,213.213 INFO    ] ================================================
[2026-10-28 05:22:32,229.229 INFO    ] Launching Daemon at Wed Oct 28 05:22:32 IST 2026
[2026-10-28 05:22:32,240.240 INFO    ] ================================================
[2026-10-28 05:22:32,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:22:32
[2026-10-28 05:22:33,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:22:33,734.734 INFO    ] Initializing speech engine...
[2026-10-28 05:22:33,743.743 INFO    ] 2026-10-28 05:22:33
[2026-10-28 05:22:33,993.993 INFO    ] 2026-10-28 05:22:33
[2026-10-28 05:22:34,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:22:34,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:22:34,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:22:34,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:22:34,538.538 INFO    ] time= 28/10/2026 05:22:34
[2026-10-28 05:22:34,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:22:34,561.561 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:22:34,685.685 INFO    ] No existing commands found in stream
[2026-10-28 05:22:39,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:22:39,702.702 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-28 05:22:42,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:22:42,442.442 INFO    ] Checking for system updates...
[2026-10-28 05:22:42,481.481 INFO    ] 200
[2026-10-28 05:22:42,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:22:42,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:22:42,547.547 INFO    ] No update needed
[2026-10-28 05:22:42,550.550 INFO    ] Checking for camera pi updates...
[2026-10-28 05:22:42,585.585 INFO    ] 200
[2026-10-28 05:22:42,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:22:42,636.636 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:22:42,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:22:42,732.732 INFO    ] No camera update needed
[2026-10-28 05:22:42,735.735 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:22:42,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:22:42,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:22:42,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:22:44,794.794 INFO    ] ================================================
[2026-10-28 05:22:44,808.808 INFO    ] Launching Daemon at Wed Oct 28 05:22:44 IST 2026
[2026-10-28 05:22:44,819.819 INFO    ] ================================================
[2026-10-28 05:22:45,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:22:45
[2026-10-28 05:22:46,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:22:46,285.285 INFO    ] Initializing speech engine...
[2026-10-28 05:22:46,300.300 INFO    ] 2026-10-28 05:22:46
[2026-10-28 05:22:46,562.562 INFO    ] 2026-10-28 05:22:46
[2026-10-28 05:22:46,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:22:46,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:22:46,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:22:47,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:22:47,058.058 INFO    ] time= 28/10/2026 05:22:47
[2026-10-28 05:22:47,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:22:47,138.138 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:22:47,276.276 INFO    ] No existing commands found in stream
[2026-10-28 05:22:52,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:22:52,298.298 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-28 05:22:56,208.208 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:22:56,211.211 INFO    ] Checking for system updates...
[2026-10-28 05:22:56,250.250 INFO    ] 200
[2026-10-28 05:22:56,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:22:56,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:22:56,313.313 INFO    ] No update needed
[2026-10-28 05:22:56,316.316 INFO    ] Checking for camera pi updates...
[2026-10-28 05:22:56,350.350 INFO    ] 200
[2026-10-28 05:22:56,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:22:56,397.397 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:22:56,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:22:56,514.514 INFO    ] No camera update needed
[2026-10-28 05:22:56,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:22:56,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:22:56,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:22:56,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:22:58,574.574 INFO    ] ================================================
[2026-10-28 05:22:58,589.589 INFO    ] Launching Daemon at Wed Oct 28 05:22:58 IST 2026
[2026-10-28 05:22:58,599.599 INFO    ] ================================================
[2026-10-28 05:22:59,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:22:59
[2026-10-28 05:22:59,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:23:00,005.005 INFO    ] Initializing speech engine...
[2026-10-28 05:23:00,024.024 INFO    ] 2026-10-28 05:23:00
[2026-10-28 05:23:00,270.270 INFO    ] 2026-10-28 05:23:00
[2026-10-28 05:23:00,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:23:00,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:23:00,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:23:00,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:23:00,823.823 INFO    ] time= 28/10/2026 05:23:00
[2026-10-28 05:23:00,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:23:00,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:23:00,979.979 INFO    ] No existing commands found in stream
[2026-10-28 05:23:06,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:23:06,004.004 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-28 05:23:08,718.718 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:23:08,720.720 INFO    ] Checking for system updates...
[2026-10-28 05:23:08,756.756 INFO    ] 200
[2026-10-28 05:23:08,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:23:08,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:23:08,820.820 INFO    ] No update needed
[2026-10-28 05:23:08,822.822 INFO    ] Checking for camera pi updates...
[2026-10-28 05:23:08,860.860 INFO    ] 200
[2026-10-28 05:23:08,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:23:08,903.903 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:23:09,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:23:09,083.083 INFO    ] No camera update needed
[2026-10-28 05:23:09,085.085 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:23:09,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:23:09,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:23:09,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:23:11,139.139 INFO    ] ================================================
[2026-10-28 05:23:11,154.154 INFO    ] Launching Daemon at Wed Oct 28 05:23:11 IST 2026
[2026-10-28 05:23:11,165.165 INFO    ] ================================================
[2026-10-28 05:23:11,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:23:11
[2026-10-28 05:23:12,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:23:12,782.782 INFO    ] Initializing speech engine...
[2026-10-28 05:23:12,790.790 INFO    ] 2026-10-28 05:23:12
[2026-10-28 05:23:13,098.098 INFO    ] 2026-10-28 05:23:13
[2026-10-28 05:23:13,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:23:13,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:23:13,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:23:13,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:23:13,619.619 INFO    ] time= 28/10/2026 05:23:13
[2026-10-28 05:23:13,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:23:13,659.659 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:23:13,794.794 INFO    ] No existing commands found in stream
[2026-10-28 05:23:18,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:23:18,824.824 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-28 05:23:20,568.568 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:23:20,571.571 INFO    ] Checking for system updates...
[2026-10-28 05:23:20,609.609 INFO    ] 200
[2026-10-28 05:23:20,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:23:20,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:23:20,667.667 INFO    ] No update needed
[2026-10-28 05:23:20,670.670 INFO    ] Checking for camera pi updates...
[2026-10-28 05:23:20,706.706 INFO    ] 200
[2026-10-28 05:23:20,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:23:20,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:23:20,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:23:20,859.859 INFO    ] No camera update needed
[2026-10-28 05:23:20,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:23:20,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:23:20,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:23:20,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:23:22,920.920 INFO    ] ================================================
[2026-10-28 05:23:22,935.935 INFO    ] Launching Daemon at Wed Oct 28 05:23:22 IST 2026
[2026-10-28 05:23:22,945.945 INFO    ] ================================================
[2026-10-28 05:23:23,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:23:23
[2026-10-28 05:23:24,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:23:24,357.357 INFO    ] Initializing speech engine...
[2026-10-28 05:23:24,366.366 INFO    ] 2026-10-28 05:23:24
[2026-10-28 05:23:24,611.611 INFO    ] 2026-10-28 05:23:24
[2026-10-28 05:23:24,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:23:24,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:23:24,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:23:25,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:23:25,159.159 INFO    ] time= 28/10/2026 05:23:25
[2026-10-28 05:23:25,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:23:25,183.183 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:23:25,313.313 INFO    ] No existing commands found in stream
[2026-10-28 05:23:30,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:23:30,330.330 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-28 05:23:32,746.746 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:23:32,749.749 INFO    ] Checking for system updates...
[2026-10-28 05:23:32,796.796 INFO    ] 200
[2026-10-28 05:23:32,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:23:32,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:23:32,857.857 INFO    ] No update needed
[2026-10-28 05:23:32,859.859 INFO    ] Checking for camera pi updates...
[2026-10-28 05:23:32,893.893 INFO    ] 200
[2026-10-28 05:23:32,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:23:32,957.957 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:23:33,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:23:33,059.059 INFO    ] No camera update needed
[2026-10-28 05:23:33,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:23:33,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:23:33,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:23:33,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:23:35,115.115 INFO    ] ================================================
[2026-10-28 05:23:35,129.129 INFO    ] Launching Daemon at Wed Oct 28 05:23:35 IST 2026
[2026-10-28 05:23:35,140.140 INFO    ] ================================================
[2026-10-28 05:23:35,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:23:35
[2026-10-28 05:23:36,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:23:36,584.584 INFO    ] Initializing speech engine...
[2026-10-28 05:23:36,589.589 INFO    ] 2026-10-28 05:23:36
[2026-10-28 05:23:36,833.833 INFO    ] 2026-10-28 05:23:36
[2026-10-28 05:23:36,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:23:37,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:23:37,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:23:37,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:23:37,420.420 INFO    ] time= 28/10/2026 05:23:37
[2026-10-28 05:23:37,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:23:37,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:23:37,611.611 INFO    ] No existing commands found in stream
[2026-10-28 05:23:42,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:23:42,628.628 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 05:23:43,597.597 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:23:43,599.599 INFO    ] Checking for system updates...
[2026-10-28 05:23:43,638.638 INFO    ] 200
[2026-10-28 05:23:43,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:23:43,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:23:43,702.702 INFO    ] No update needed
[2026-10-28 05:23:43,705.705 INFO    ] Checking for camera pi updates...
[2026-10-28 05:23:43,739.739 INFO    ] 200
[2026-10-28 05:23:43,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:23:43,782.782 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:23:43,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:23:43,869.869 INFO    ] No camera update needed
[2026-10-28 05:23:43,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:23:43,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:23:43,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:23:43,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:23:45,928.928 INFO    ] ================================================
[2026-10-28 05:23:45,944.944 INFO    ] Launching Daemon at Wed Oct 28 05:23:45 IST 2026
[2026-10-28 05:23:45,955.955 INFO    ] ================================================
[2026-10-28 05:23:46,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:23:46
[2026-10-28 05:23:47,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:23:47,421.421 INFO    ] Initializing speech engine...
[2026-10-28 05:23:47,428.428 INFO    ] 2026-10-28 05:23:47
[2026-10-28 05:23:47,704.704 INFO    ] 2026-10-28 05:23:47
[2026-10-28 05:23:47,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:23:47,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:23:47,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:23:48,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:23:48,235.235 INFO    ] time= 28/10/2026 05:23:48
[2026-10-28 05:23:48,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:23:48,260.260 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:23:48,389.389 INFO    ] No existing commands found in stream
[2026-10-28 05:23:53,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:23:53,408.408 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-28 05:23:55,609.609 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:23:55,611.611 INFO    ] Checking for system updates...
[2026-10-28 05:23:55,647.647 INFO    ] 200
[2026-10-28 05:23:55,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:23:55,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:23:55,706.706 INFO    ] No update needed
[2026-10-28 05:23:55,708.708 INFO    ] Checking for camera pi updates...
[2026-10-28 05:23:55,743.743 INFO    ] 200
[2026-10-28 05:23:55,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:23:55,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:23:55,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:23:55,896.896 INFO    ] No camera update needed
[2026-10-28 05:23:55,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:23:55,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:23:55,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:23:55,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:23:57,956.956 INFO    ] ================================================
[2026-10-28 05:23:57,971.971 INFO    ] Launching Daemon at Wed Oct 28 05:23:57 IST 2026
[2026-10-28 05:23:57,981.981 INFO    ] ================================================
[2026-10-28 05:23:58,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:23:58
[2026-10-28 05:23:59,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:23:59,380.380 INFO    ] Initializing speech engine...
[2026-10-28 05:23:59,403.403 INFO    ] 2026-10-28 05:23:59
[2026-10-28 05:23:59,658.658 INFO    ] 2026-10-28 05:23:59
[2026-10-28 05:23:59,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:23:59,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:23:59,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:24:00,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:24:00,227.227 INFO    ] time= 28/10/2026 05:24:00
[2026-10-28 05:24:00,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:24:00,252.252 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:24:00,386.386 INFO    ] No existing commands found in stream
[2026-10-28 05:24:05,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:24:05,418.418 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-28 05:24:09,517.517 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:24:09,520.520 INFO    ] Checking for system updates...
[2026-10-28 05:24:09,557.557 INFO    ] 200
[2026-10-28 05:24:09,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:24:09,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:24:09,615.615 INFO    ] No update needed
[2026-10-28 05:24:09,617.617 INFO    ] Checking for camera pi updates...
[2026-10-28 05:24:09,650.650 INFO    ] 200
[2026-10-28 05:24:09,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:24:09,694.694 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:24:09,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:24:09,780.780 INFO    ] No camera update needed
[2026-10-28 05:24:09,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:24:09,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:24:09,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:24:09,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:24:11,839.839 INFO    ] ================================================
[2026-10-28 05:24:11,855.855 INFO    ] Launching Daemon at Wed Oct 28 05:24:11 IST 2026
[2026-10-28 05:24:11,866.866 INFO    ] ================================================
[2026-10-28 05:24:12,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:24:12
[2026-10-28 05:24:13,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:24:13,325.325 INFO    ] Initializing speech engine...
[2026-10-28 05:24:13,331.331 INFO    ] 2026-10-28 05:24:13
[2026-10-28 05:24:13,592.592 INFO    ] 2026-10-28 05:24:13
[2026-10-28 05:24:13,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:24:13,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:24:13,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:24:14,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:24:14,136.136 INFO    ] time= 28/10/2026 05:24:14
[2026-10-28 05:24:14,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:24:14,160.160 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:24:14,289.289 INFO    ] No existing commands found in stream
[2026-10-28 05:24:19,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:24:19,310.310 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-28 05:24:22,952.952 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:24:22,955.955 INFO    ] Checking for system updates...
[2026-10-28 05:24:22,996.996 INFO    ] 200
[2026-10-28 05:24:22,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:24:23,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:24:23,054.054 INFO    ] No update needed
[2026-10-28 05:24:23,057.057 INFO    ] Checking for camera pi updates...
[2026-10-28 05:24:23,090.090 INFO    ] 200
[2026-10-28 05:24:23,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:24:23,133.133 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:24:23,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:24:23,214.214 INFO    ] No camera update needed
[2026-10-28 05:24:23,216.216 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:24:23,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:24:23,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:24:23,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:24:25,270.270 INFO    ] ================================================
[2026-10-28 05:24:25,286.286 INFO    ] Launching Daemon at Wed Oct 28 05:24:25 IST 2026
[2026-10-28 05:24:25,297.297 INFO    ] ================================================
[2026-10-28 05:24:25,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:24:25
[2026-10-28 05:24:26,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:24:26,722.722 INFO    ] Initializing speech engine...
[2026-10-28 05:24:26,730.730 INFO    ] 2026-10-28 05:24:26
[2026-10-28 05:24:26,981.981 INFO    ] 2026-10-28 05:24:26
[2026-10-28 05:24:27,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:24:27,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:24:27,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:24:27,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:24:27,542.542 INFO    ] time= 28/10/2026 05:24:27
[2026-10-28 05:24:27,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:24:27,574.574 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:24:27,709.709 INFO    ] No existing commands found in stream
[2026-10-28 05:24:32,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:24:32,730.730 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-28 05:24:37,090.090 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:24:37,093.093 INFO    ] Checking for system updates...
[2026-10-28 05:24:37,135.135 INFO    ] 200
[2026-10-28 05:24:37,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:24:37,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:24:37,191.191 INFO    ] No update needed
[2026-10-28 05:24:37,194.194 INFO    ] Checking for camera pi updates...
[2026-10-28 05:24:37,232.232 INFO    ] 200
[2026-10-28 05:24:37,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:24:37,280.280 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:24:37,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:24:37,366.366 INFO    ] No camera update needed
[2026-10-28 05:24:37,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:24:37,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:24:37,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:24:37,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:24:39,424.424 INFO    ] ================================================
[2026-10-28 05:24:39,440.440 INFO    ] Launching Daemon at Wed Oct 28 05:24:39 IST 2026
[2026-10-28 05:24:39,451.451 INFO    ] ================================================
[2026-10-28 05:24:40,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:24:40
[2026-10-28 05:24:40,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:24:40,873.873 INFO    ] Initializing speech engine...
[2026-10-28 05:24:40,882.882 INFO    ] 2026-10-28 05:24:40
[2026-10-28 05:24:41,126.126 INFO    ] 2026-10-28 05:24:41
[2026-10-28 05:24:41,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:24:41,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:24:41,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:24:41,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:24:41,681.681 INFO    ] time= 28/10/2026 05:24:41
[2026-10-28 05:24:41,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:24:41,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:24:41,837.837 INFO    ] No existing commands found in stream
[2026-10-28 05:24:46,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:24:46,859.859 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-28 05:24:48,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:24:48,774.774 INFO    ] Checking for system updates...
[2026-10-28 05:24:48,816.816 INFO    ] 200
[2026-10-28 05:24:48,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:24:48,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:24:48,883.883 INFO    ] No update needed
[2026-10-28 05:24:48,886.886 INFO    ] Checking for camera pi updates...
[2026-10-28 05:24:48,922.922 INFO    ] 200
[2026-10-28 05:24:48,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:24:48,966.966 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:24:49,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:24:49,047.047 INFO    ] No camera update needed
[2026-10-28 05:24:49,050.050 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:24:49,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:24:49,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:24:49,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:24:51,106.106 INFO    ] ================================================
[2026-10-28 05:24:51,122.122 INFO    ] Launching Daemon at Wed Oct 28 05:24:51 IST 2026
[2026-10-28 05:24:51,134.134 INFO    ] ================================================
[2026-10-28 05:24:51,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:24:51
[2026-10-28 05:24:52,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:24:52,612.612 INFO    ] Initializing speech engine...
[2026-10-28 05:24:52,621.621 INFO    ] 2026-10-28 05:24:52
[2026-10-28 05:24:52,867.867 INFO    ] 2026-10-28 05:24:52
[2026-10-28 05:24:52,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:24:53,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:24:53,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:24:53,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:24:53,421.421 INFO    ] time= 28/10/2026 05:24:53
[2026-10-28 05:24:53,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:24:53,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:24:53,575.575 INFO    ] No existing commands found in stream
[2026-10-28 05:24:58,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:24:58,597.597 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 05:25:01,939.939 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:25:01,964.964 INFO    ] Checking for system updates...
[2026-10-28 05:25:02,091.091 INFO    ] 200
[2026-10-28 05:25:02,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:25:02,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:25:02,340.340 INFO    ] No update needed
[2026-10-28 05:25:02,356.356 INFO    ] Checking for camera pi updates...
[2026-10-28 05:25:02,502.502 INFO    ] 200
[2026-10-28 05:25:02,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:25:02,603.603 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:25:02,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:25:02,776.776 INFO    ] No camera update needed
[2026-10-28 05:25:02,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:25:02,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:25:02,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:25:02,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:25:04,844.844 INFO    ] ================================================
[2026-10-28 05:25:04,859.859 INFO    ] Launching Daemon at Wed Oct 28 05:25:04 IST 2026
[2026-10-28 05:25:04,871.871 INFO    ] ================================================
[2026-10-28 05:25:05,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:25:05
[2026-10-28 05:25:06,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:25:06,288.288 INFO    ] Initializing speech engine...
[2026-10-28 05:25:06,303.303 INFO    ] 2026-10-28 05:25:06
[2026-10-28 05:25:06,553.553 INFO    ] 2026-10-28 05:25:06
[2026-10-28 05:25:06,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:25:06,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:25:06,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:25:07,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:25:07,121.121 INFO    ] time= 28/10/2026 05:25:07
[2026-10-28 05:25:07,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:25:07,148.148 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:25:07,278.278 INFO    ] No existing commands found in stream
[2026-10-28 05:25:12,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:25:12,295.295 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-28 05:25:14,864.864 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:25:14,867.867 INFO    ] Checking for system updates...
[2026-10-28 05:25:14,906.906 INFO    ] 200
[2026-10-28 05:25:14,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:25:14,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:25:14,968.968 INFO    ] No update needed
[2026-10-28 05:25:14,970.970 INFO    ] Checking for camera pi updates...
[2026-10-28 05:25:15,004.004 INFO    ] 200
[2026-10-28 05:25:15,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:25:15,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:25:15,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:25:15,251.251 INFO    ] No camera update needed
[2026-10-28 05:25:15,253.253 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:25:15,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:25:15,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:25:15,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:25:17,306.306 INFO    ] ================================================
[2026-10-28 05:25:17,321.321 INFO    ] Launching Daemon at Wed Oct 28 05:25:17 IST 2026
[2026-10-28 05:25:17,332.332 INFO    ] ================================================
[2026-10-28 05:25:17,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:25:17
[2026-10-28 05:25:18,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:25:18,927.927 INFO    ] Initializing speech engine...
[2026-10-28 05:25:18,940.940 INFO    ] 2026-10-28 05:25:18
[2026-10-28 05:25:19,249.249 INFO    ] 2026-10-28 05:25:19
[2026-10-28 05:25:19,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:25:19,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:25:19,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:25:19,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:25:19,943.943 INFO    ] time= 28/10/2026 05:25:19
[2026-10-28 05:25:19,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:25:20,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:25:20,209.209 INFO    ] No existing commands found in stream
[2026-10-28 05:25:25,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:25:25,238.238 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-28 05:25:26,090.090 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:25:26,093.093 INFO    ] Checking for system updates...
[2026-10-28 05:25:26,135.135 INFO    ] 200
[2026-10-28 05:25:26,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:25:26,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:25:26,193.193 INFO    ] No update needed
[2026-10-28 05:25:26,195.195 INFO    ] Checking for camera pi updates...
[2026-10-28 05:25:26,228.228 INFO    ] 200
[2026-10-28 05:25:26,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:25:26,270.270 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:25:26,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:25:26,357.357 INFO    ] No camera update needed
[2026-10-28 05:25:26,363.363 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:25:26,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:25:26,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:25:26,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:25:28,417.417 INFO    ] ================================================
[2026-10-28 05:25:28,432.432 INFO    ] Launching Daemon at Wed Oct 28 05:25:28 IST 2026
[2026-10-28 05:25:28,443.443 INFO    ] ================================================
[2026-10-28 05:25:29,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:25:29
[2026-10-28 05:25:29,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:25:29,878.878 INFO    ] Initializing speech engine...
[2026-10-28 05:25:29,893.893 INFO    ] 2026-10-28 05:25:29
[2026-10-28 05:25:30,162.162 INFO    ] 2026-10-28 05:25:30
[2026-10-28 05:25:30,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:25:30,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:25:30,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:25:30,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:25:30,719.719 INFO    ] time= 28/10/2026 05:25:30
[2026-10-28 05:25:30,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:25:30,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:25:30,897.897 INFO    ] No existing commands found in stream
[2026-10-28 05:25:35,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:25:35,930.930 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-28 05:25:39,370.370 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:25:39,373.373 INFO    ] Checking for system updates...
[2026-10-28 05:25:39,413.413 INFO    ] 200
[2026-10-28 05:25:39,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:25:39,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:25:39,472.472 INFO    ] No update needed
[2026-10-28 05:25:39,474.474 INFO    ] Checking for camera pi updates...
[2026-10-28 05:25:39,512.512 INFO    ] 200
[2026-10-28 05:25:39,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:25:39,560.560 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:25:39,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:25:39,642.642 INFO    ] No camera update needed
[2026-10-28 05:25:39,645.645 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:25:39,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:25:39,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:25:39,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:25:41,698.698 INFO    ] ================================================
[2026-10-28 05:25:41,712.712 INFO    ] Launching Daemon at Wed Oct 28 05:25:41 IST 2026
[2026-10-28 05:25:41,723.723 INFO    ] ================================================
[2026-10-28 05:25:42,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:25:42
[2026-10-28 05:25:42,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:25:43,182.182 INFO    ] Initializing speech engine...
[2026-10-28 05:25:43,196.196 INFO    ] 2026-10-28 05:25:43
[2026-10-28 05:25:43,490.490 INFO    ] 2026-10-28 05:25:43
[2026-10-28 05:25:43,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:25:43,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:25:43,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:25:43,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:25:43,996.996 INFO    ] time= 28/10/2026 05:25:43
[2026-10-28 05:25:44,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:25:44,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:25:44,201.201 INFO    ] No existing commands found in stream
[2026-10-28 05:25:49,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:25:49,216.216 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-28 05:25:50,518.518 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:25:50,520.520 INFO    ] Checking for system updates...
[2026-10-28 05:25:50,560.560 INFO    ] 200
[2026-10-28 05:25:50,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:25:50,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:25:50,626.626 INFO    ] No update needed
[2026-10-28 05:25:50,629.629 INFO    ] Checking for camera pi updates...
[2026-10-28 05:25:50,666.666 INFO    ] 200
[2026-10-28 05:25:50,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:25:50,709.709 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:25:50,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:25:50,787.787 INFO    ] No camera update needed
[2026-10-28 05:25:50,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:25:50,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:25:50,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:25:50,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:25:52,843.843 INFO    ] ================================================
[2026-10-28 05:25:52,858.858 INFO    ] Launching Daemon at Wed Oct 28 05:25:52 IST 2026
[2026-10-28 05:25:52,869.869 INFO    ] ================================================
[2026-10-28 05:25:53,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:25:53
[2026-10-28 05:25:54,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:25:54,521.521 INFO    ] Initializing speech engine...
[2026-10-28 05:25:54,532.532 INFO    ] 2026-10-28 05:25:54
[2026-10-28 05:25:54,846.846 INFO    ] 2026-10-28 05:25:54
[2026-10-28 05:25:54,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:25:55,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:25:55,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:25:55,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:25:55,412.412 INFO    ] time= 28/10/2026 05:25:55
[2026-10-28 05:25:55,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:25:55,525.525 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:25:55,696.696 INFO    ] No existing commands found in stream
[2026-10-28 05:26:00,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:26:00,730.730 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-28 05:26:02,102.102 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:26:02,105.105 INFO    ] Checking for system updates...
[2026-10-28 05:26:02,147.147 INFO    ] 200
[2026-10-28 05:26:02,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:26:02,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:26:02,217.217 INFO    ] No update needed
[2026-10-28 05:26:02,223.223 INFO    ] Checking for camera pi updates...
[2026-10-28 05:26:02,261.261 INFO    ] 200
[2026-10-28 05:26:02,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:26:02,314.314 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:26:02,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:26:02,437.437 INFO    ] No camera update needed
[2026-10-28 05:26:02,440.440 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:26:02,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:26:02,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:26:02,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:26:04,498.498 INFO    ] ================================================
[2026-10-28 05:26:04,513.513 INFO    ] Launching Daemon at Wed Oct 28 05:26:04 IST 2026
[2026-10-28 05:26:04,524.524 INFO    ] ================================================
[2026-10-28 05:26:05,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:26:05
[2026-10-28 05:26:05,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:26:05,977.977 INFO    ] Initializing speech engine...
[2026-10-28 05:26:05,987.987 INFO    ] 2026-10-28 05:26:05
[2026-10-28 05:26:06,249.249 INFO    ] 2026-10-28 05:26:06
[2026-10-28 05:26:06,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:26:06,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:26:06,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:26:06,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:26:06,843.843 INFO    ] time= 28/10/2026 05:26:06
[2026-10-28 05:26:06,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:26:06,910.910 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:26:07,047.047 INFO    ] No existing commands found in stream
[2026-10-28 05:26:12,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:26:12,067.067 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-28 05:26:15,383.383 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:26:15,386.386 INFO    ] Checking for system updates...
[2026-10-28 05:26:15,422.422 INFO    ] 200
[2026-10-28 05:26:15,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:26:15,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:26:15,492.492 INFO    ] No update needed
[2026-10-28 05:26:15,495.495 INFO    ] Checking for camera pi updates...
[2026-10-28 05:26:15,533.533 INFO    ] 200
[2026-10-28 05:26:15,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:26:15,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:26:15,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:26:15,659.659 INFO    ] No camera update needed
[2026-10-28 05:26:15,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:26:15,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:26:15,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:26:15,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:26:17,716.716 INFO    ] ================================================
[2026-10-28 05:26:17,731.731 INFO    ] Launching Daemon at Wed Oct 28 05:26:17 IST 2026
[2026-10-28 05:26:17,741.741 INFO    ] ================================================
[2026-10-28 05:26:18,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:26:18
[2026-10-28 05:26:18,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:26:19,199.199 INFO    ] Initializing speech engine...
[2026-10-28 05:26:19,205.205 INFO    ] 2026-10-28 05:26:19
[2026-10-28 05:26:19,468.468 INFO    ] 2026-10-28 05:26:19
[2026-10-28 05:26:19,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:26:19,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:26:19,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:26:19,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:26:20,010.010 INFO    ] time= 28/10/2026 05:26:19
[2026-10-28 05:26:20,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:26:20,034.034 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:26:20,154.154 INFO    ] No existing commands found in stream
[2026-10-28 05:26:25,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:26:25,177.177 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-28 05:26:26,789.789 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:26:26,792.792 INFO    ] Checking for system updates...
[2026-10-28 05:26:26,833.833 INFO    ] 200
[2026-10-28 05:26:26,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:26:26,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:26:26,901.901 INFO    ] No update needed
[2026-10-28 05:26:26,904.904 INFO    ] Checking for camera pi updates...
[2026-10-28 05:26:26,939.939 INFO    ] 200
[2026-10-28 05:26:26,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:26:26,984.984 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:26:27,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:26:27,097.097 INFO    ] No camera update needed
[2026-10-28 05:26:27,100.100 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:26:27,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:26:27,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:26:27,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:26:29,157.157 INFO    ] ================================================
[2026-10-28 05:26:29,172.172 INFO    ] Launching Daemon at Wed Oct 28 05:26:29 IST 2026
[2026-10-28 05:26:29,183.183 INFO    ] ================================================
[2026-10-28 05:26:29,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:26:29
[2026-10-28 05:26:30,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:26:30,594.594 INFO    ] Initializing speech engine...
[2026-10-28 05:26:30,617.617 INFO    ] 2026-10-28 05:26:30
[2026-10-28 05:26:30,874.874 INFO    ] 2026-10-28 05:26:30
[2026-10-28 05:26:30,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:26:31,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:26:31,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:26:31,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:26:31,462.462 INFO    ] time= 28/10/2026 05:26:31
[2026-10-28 05:26:31,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:26:31,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:26:31,643.643 INFO    ] No existing commands found in stream
[2026-10-28 05:26:36,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:26:36,683.683 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-28 05:26:40,677.677 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:26:40,680.680 INFO    ] Checking for system updates...
[2026-10-28 05:26:40,718.718 INFO    ] 200
[2026-10-28 05:26:40,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:26:40,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:26:40,786.786 INFO    ] No update needed
[2026-10-28 05:26:40,790.790 INFO    ] Checking for camera pi updates...
[2026-10-28 05:26:40,829.829 INFO    ] 200
[2026-10-28 05:26:40,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:26:40,885.885 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:26:40,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:26:40,995.995 INFO    ] No camera update needed
[2026-10-28 05:26:40,998.998 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:26:41,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:26:41,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:26:41,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:26:43,056.056 INFO    ] ================================================
[2026-10-28 05:26:43,071.071 INFO    ] Launching Daemon at Wed Oct 28 05:26:43 IST 2026
[2026-10-28 05:26:43,082.082 INFO    ] ================================================
[2026-10-28 05:26:43,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:26:43
[2026-10-28 05:26:44,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:26:44,539.539 INFO    ] Initializing speech engine...
[2026-10-28 05:26:44,556.556 INFO    ] 2026-10-28 05:26:44
[2026-10-28 05:26:44,811.811 INFO    ] 2026-10-28 05:26:44
[2026-10-28 05:26:44,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:26:45,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:26:45,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:26:45,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:26:45,370.370 INFO    ] time= 28/10/2026 05:26:45
[2026-10-28 05:26:45,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:26:45,410.410 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:26:45,542.542 INFO    ] No existing commands found in stream
[2026-10-28 05:26:50,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:26:50,570.570 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 05:26:54,400.400 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:26:54,402.402 INFO    ] Checking for system updates...
[2026-10-28 05:26:54,438.438 INFO    ] 200
[2026-10-28 05:26:54,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:26:54,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:26:54,502.502 INFO    ] No update needed
[2026-10-28 05:26:54,504.504 INFO    ] Checking for camera pi updates...
[2026-10-28 05:26:54,538.538 INFO    ] 200
[2026-10-28 05:26:54,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:26:54,581.581 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:26:54,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:26:54,682.682 INFO    ] No camera update needed
[2026-10-28 05:26:54,685.685 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:26:54,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:26:54,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:26:54,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:26:56,741.741 INFO    ] ================================================
[2026-10-28 05:26:56,756.756 INFO    ] Launching Daemon at Wed Oct 28 05:26:56 IST 2026
[2026-10-28 05:26:56,767.767 INFO    ] ================================================
[2026-10-28 05:26:57,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:26:57
[2026-10-28 05:26:57,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:26:58,215.215 INFO    ] Initializing speech engine...
[2026-10-28 05:26:58,222.222 INFO    ] 2026-10-28 05:26:58
[2026-10-28 05:26:58,524.524 INFO    ] 2026-10-28 05:26:58
[2026-10-28 05:26:58,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:26:58,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:26:58,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:26:59,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:26:59,059.059 INFO    ] time= 28/10/2026 05:26:59
[2026-10-28 05:26:59,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:26:59,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:26:59,320.320 INFO    ] No existing commands found in stream
[2026-10-28 05:27:04,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:27:04,340.340 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-28 05:27:05,986.986 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:27:05,989.989 INFO    ] Checking for system updates...
[2026-10-28 05:27:06,025.025 INFO    ] 200
[2026-10-28 05:27:06,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:27:06,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:27:06,090.090 INFO    ] No update needed
[2026-10-28 05:27:06,092.092 INFO    ] Checking for camera pi updates...
[2026-10-28 05:27:06,126.126 INFO    ] 200
[2026-10-28 05:27:06,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:27:06,170.170 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:27:06,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:27:06,253.253 INFO    ] No camera update needed
[2026-10-28 05:27:06,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:27:06,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:27:06,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:27:06,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:27:08,310.310 INFO    ] ================================================
[2026-10-28 05:27:08,325.325 INFO    ] Launching Daemon at Wed Oct 28 05:27:08 IST 2026
[2026-10-28 05:27:08,336.336 INFO    ] ================================================
[2026-10-28 05:27:08,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:27:08
[2026-10-28 05:27:09,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:27:09,752.752 INFO    ] Initializing speech engine...
[2026-10-28 05:27:09,761.761 INFO    ] 2026-10-28 05:27:09
[2026-10-28 05:27:10,009.009 INFO    ] 2026-10-28 05:27:10
[2026-10-28 05:27:10,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:27:10,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:27:10,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:27:10,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:27:10,578.578 INFO    ] time= 28/10/2026 05:27:10
[2026-10-28 05:27:10,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:27:10,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:27:10,795.795 INFO    ] No existing commands found in stream
[2026-10-28 05:27:15,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:27:15,823.823 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-28 05:27:18,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:27:18,159.159 INFO    ] Checking for system updates...
[2026-10-28 05:27:18,194.194 INFO    ] 200
[2026-10-28 05:27:18,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:27:18,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:27:18,259.259 INFO    ] No update needed
[2026-10-28 05:27:18,262.262 INFO    ] Checking for camera pi updates...
[2026-10-28 05:27:18,295.295 INFO    ] 200
[2026-10-28 05:27:18,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:27:18,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:27:18,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:27:18,529.529 INFO    ] No camera update needed
[2026-10-28 05:27:18,531.531 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:27:18,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:27:18,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:27:18,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:27:20,586.586 INFO    ] ================================================
[2026-10-28 05:27:20,602.602 INFO    ] Launching Daemon at Wed Oct 28 05:27:20 IST 2026
[2026-10-28 05:27:20,613.613 INFO    ] ================================================
[2026-10-28 05:27:21,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:27:21
[2026-10-28 05:27:21,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:27:22,092.092 INFO    ] Initializing speech engine...
[2026-10-28 05:27:22,102.102 INFO    ] 2026-10-28 05:27:22
[2026-10-28 05:27:22,416.416 INFO    ] 2026-10-28 05:27:22
[2026-10-28 05:27:22,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:27:22,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:27:22,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:27:23,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:27:23,080.080 INFO    ] time= 28/10/2026 05:27:23
[2026-10-28 05:27:23,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:27:23,179.179 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:27:23,326.326 INFO    ] No existing commands found in stream
[2026-10-28 05:27:28,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:27:28,358.358 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 05:27:29,145.145 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:27:29,148.148 INFO    ] Checking for system updates...
[2026-10-28 05:27:29,190.190 INFO    ] 200
[2026-10-28 05:27:29,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:27:29,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:27:29,251.251 INFO    ] No update needed
[2026-10-28 05:27:29,254.254 INFO    ] Checking for camera pi updates...
[2026-10-28 05:27:29,289.289 INFO    ] 200
[2026-10-28 05:27:29,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:27:29,335.335 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:27:29,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:27:29,429.429 INFO    ] No camera update needed
[2026-10-28 05:27:29,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:27:29,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:27:29,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:27:29,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:27:31,490.490 INFO    ] ================================================
[2026-10-28 05:27:31,508.508 INFO    ] Launching Daemon at Wed Oct 28 05:27:31 IST 2026
[2026-10-28 05:27:31,522.522 INFO    ] ================================================
[2026-10-28 05:27:32,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:27:32
[2026-10-28 05:27:32,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:27:33,174.174 INFO    ] Initializing speech engine...
[2026-10-28 05:27:33,183.183 INFO    ] 2026-10-28 05:27:33
[2026-10-28 05:27:33,433.433 INFO    ] 2026-10-28 05:27:33
[2026-10-28 05:27:33,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:27:33,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:27:33,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:27:33,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:27:33,980.980 INFO    ] time= 28/10/2026 05:27:33
[2026-10-28 05:27:33,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:27:34,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:27:34,136.136 INFO    ] No existing commands found in stream
[2026-10-28 05:27:39,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:27:39,158.158 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 05:27:41,477.477 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:27:41,479.479 INFO    ] Checking for system updates...
[2026-10-28 05:27:41,515.515 INFO    ] 200
[2026-10-28 05:27:41,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:27:41,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:27:41,571.571 INFO    ] No update needed
[2026-10-28 05:27:41,573.573 INFO    ] Checking for camera pi updates...
[2026-10-28 05:27:41,612.612 INFO    ] 200
[2026-10-28 05:27:41,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:27:41,654.654 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:27:41,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:27:41,739.739 INFO    ] No camera update needed
[2026-10-28 05:27:41,741.741 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:27:41,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:27:41,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:27:41,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:27:43,794.794 INFO    ] ================================================
[2026-10-28 05:27:43,810.810 INFO    ] Launching Daemon at Wed Oct 28 05:27:43 IST 2026
[2026-10-28 05:27:43,821.821 INFO    ] ================================================
[2026-10-28 05:27:44,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:27:44
[2026-10-28 05:27:44,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:27:45,222.222 INFO    ] Initializing speech engine...
[2026-10-28 05:27:45,238.238 INFO    ] 2026-10-28 05:27:45
[2026-10-28 05:27:45,488.488 INFO    ] 2026-10-28 05:27:45
[2026-10-28 05:27:45,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:27:45,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:27:45,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:27:46,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:27:46,039.039 INFO    ] time= 28/10/2026 05:27:46
[2026-10-28 05:27:46,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:27:46,080.080 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:27:46,211.211 INFO    ] No existing commands found in stream
[2026-10-28 05:27:51,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:27:51,239.239 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-28 05:27:54,606.606 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:27:54,609.609 INFO    ] Checking for system updates...
[2026-10-28 05:27:54,645.645 INFO    ] 200
[2026-10-28 05:27:54,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:27:54,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:27:54,710.710 INFO    ] No update needed
[2026-10-28 05:27:54,712.712 INFO    ] Checking for camera pi updates...
[2026-10-28 05:27:54,750.750 INFO    ] 200
[2026-10-28 05:27:54,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:27:54,792.792 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:27:54,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:27:54,892.892 INFO    ] No camera update needed
[2026-10-28 05:27:54,895.895 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:27:54,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:27:54,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:27:54,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:27:56,948.948 INFO    ] ================================================
[2026-10-28 05:27:56,964.964 INFO    ] Launching Daemon at Wed Oct 28 05:27:56 IST 2026
[2026-10-28 05:27:56,975.975 INFO    ] ================================================
[2026-10-28 05:27:57,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:27:57
[2026-10-28 05:27:58,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:27:58,398.398 INFO    ] Initializing speech engine...
[2026-10-28 05:27:58,406.406 INFO    ] 2026-10-28 05:27:58
[2026-10-28 05:27:58,662.662 INFO    ] 2026-10-28 05:27:58
[2026-10-28 05:27:58,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:27:58,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:27:58,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:27:59,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:27:59,201.201 INFO    ] time= 28/10/2026 05:27:59
[2026-10-28 05:27:59,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:27:59,224.224 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:27:59,355.355 INFO    ] No existing commands found in stream
[2026-10-28 05:28:04,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:28:04,372.372 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-28 05:28:05,680.680 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:28:05,682.682 INFO    ] Checking for system updates...
[2026-10-28 05:28:05,718.718 INFO    ] 200
[2026-10-28 05:28:05,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:28:05,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:28:05,774.774 INFO    ] No update needed
[2026-10-28 05:28:05,777.777 INFO    ] Checking for camera pi updates...
[2026-10-28 05:28:05,810.810 INFO    ] 200
[2026-10-28 05:28:05,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:28:05,854.854 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:28:05,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:28:05,961.961 INFO    ] No camera update needed
[2026-10-28 05:28:05,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:28:05,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:28:05,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:28:05,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:28:08,017.017 INFO    ] ================================================
[2026-10-28 05:28:08,032.032 INFO    ] Launching Daemon at Wed Oct 28 05:28:08 IST 2026
[2026-10-28 05:28:08,044.044 INFO    ] ================================================
[2026-10-28 05:28:08,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:28:08
[2026-10-28 05:28:09,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:28:09,535.535 INFO    ] Initializing speech engine...
[2026-10-28 05:28:09,544.544 INFO    ] 2026-10-28 05:28:09
[2026-10-28 05:28:09,790.790 INFO    ] 2026-10-28 05:28:09
[2026-10-28 05:28:09,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:28:10,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:28:10,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:28:10,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:28:10,357.357 INFO    ] time= 28/10/2026 05:28:10
[2026-10-28 05:28:10,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:28:10,391.391 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:28:10,511.511 INFO    ] No existing commands found in stream
[2026-10-28 05:28:15,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:28:15,544.544 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 05:28:17,247.247 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:28:17,250.250 INFO    ] Checking for system updates...
[2026-10-28 05:28:17,286.286 INFO    ] 200
[2026-10-28 05:28:17,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:28:17,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:28:17,359.359 INFO    ] No update needed
[2026-10-28 05:28:17,361.361 INFO    ] Checking for camera pi updates...
[2026-10-28 05:28:17,394.394 INFO    ] 200
[2026-10-28 05:28:17,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:28:17,437.437 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:28:17,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:28:17,519.519 INFO    ] No camera update needed
[2026-10-28 05:28:17,521.521 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:28:17,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:28:17,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:28:17,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:28:19,575.575 INFO    ] ================================================
[2026-10-28 05:28:19,591.591 INFO    ] Launching Daemon at Wed Oct 28 05:28:19 IST 2026
[2026-10-28 05:28:19,602.602 INFO    ] ================================================
[2026-10-28 05:28:20,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:28:20
[2026-10-28 05:28:20,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:28:21,081.081 INFO    ] Initializing speech engine...
[2026-10-28 05:28:21,090.090 INFO    ] 2026-10-28 05:28:21
[2026-10-28 05:28:21,338.338 INFO    ] 2026-10-28 05:28:21
[2026-10-28 05:28:21,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:28:21,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:28:21,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:28:21,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:28:21,893.893 INFO    ] time= 28/10/2026 05:28:21
[2026-10-28 05:28:21,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:28:21,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:28:22,027.027 INFO    ] No existing commands found in stream
[2026-10-28 05:28:27,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:28:27,055.055 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 05:28:28,783.783 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:28:28,786.786 INFO    ] Checking for system updates...
[2026-10-28 05:28:28,826.826 INFO    ] 200
[2026-10-28 05:28:28,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:28:28,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:28:28,891.891 INFO    ] No update needed
[2026-10-28 05:28:28,894.894 INFO    ] Checking for camera pi updates...
[2026-10-28 05:28:28,932.932 INFO    ] 200
[2026-10-28 05:28:28,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:28:28,980.980 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:28:29,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:28:29,065.065 INFO    ] No camera update needed
[2026-10-28 05:28:29,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:28:29,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:28:29,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:28:29,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:28:31,122.122 INFO    ] ================================================
[2026-10-28 05:28:31,138.138 INFO    ] Launching Daemon at Wed Oct 28 05:28:31 IST 2026
[2026-10-28 05:28:31,149.149 INFO    ] ================================================
[2026-10-28 05:28:31,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:28:31
[2026-10-28 05:28:32,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:28:32,804.804 INFO    ] Initializing speech engine...
[2026-10-28 05:28:32,818.818 INFO    ] 2026-10-28 05:28:32
[2026-10-28 05:28:33,146.146 INFO    ] 2026-10-28 05:28:33
[2026-10-28 05:28:33,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:28:33,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:28:33,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:28:33,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:28:33,790.790 INFO    ] time= 28/10/2026 05:28:33
[2026-10-28 05:28:33,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:28:33,889.889 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:28:34,046.046 INFO    ] No existing commands found in stream
[2026-10-28 05:28:39,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:28:39,061.061 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-28 05:28:39,981.981 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:28:39,984.984 INFO    ] Checking for system updates...
[2026-10-28 05:28:40,022.022 INFO    ] 200
[2026-10-28 05:28:40,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:28:40,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:28:40,081.081 INFO    ] No update needed
[2026-10-28 05:28:40,084.084 INFO    ] Checking for camera pi updates...
[2026-10-28 05:28:40,119.119 INFO    ] 200
[2026-10-28 05:28:40,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:28:40,169.169 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:28:40,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:28:40,253.253 INFO    ] No camera update needed
[2026-10-28 05:28:40,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:28:40,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:28:40,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:28:40,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:28:42,313.313 INFO    ] ================================================
[2026-10-28 05:28:42,329.329 INFO    ] Launching Daemon at Wed Oct 28 05:28:42 IST 2026
[2026-10-28 05:28:42,340.340 INFO    ] ================================================
[2026-10-28 05:28:42,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:28:42
[2026-10-28 05:28:43,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:28:43,758.758 INFO    ] Initializing speech engine...
[2026-10-28 05:28:43,768.768 INFO    ] 2026-10-28 05:28:43
[2026-10-28 05:28:44,021.021 INFO    ] 2026-10-28 05:28:44
[2026-10-28 05:28:44,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:28:44,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:28:44,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:28:44,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:28:44,567.567 INFO    ] time= 28/10/2026 05:28:44
[2026-10-28 05:28:44,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:28:44,613.613 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:28:44,745.745 INFO    ] No existing commands found in stream
[2026-10-28 05:28:49,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:28:49,778.778 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-28 05:28:53,846.846 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:28:53,848.848 INFO    ] Checking for system updates...
[2026-10-28 05:28:53,883.883 INFO    ] 200
[2026-10-28 05:28:53,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:28:53,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:28:53,944.944 INFO    ] No update needed
[2026-10-28 05:28:53,946.946 INFO    ] Checking for camera pi updates...
[2026-10-28 05:28:53,984.984 INFO    ] 200
[2026-10-28 05:28:53,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:28:54,026.026 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:28:54,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:28:54,112.112 INFO    ] No camera update needed
[2026-10-28 05:28:54,114.114 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:28:54,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:28:54,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:28:54,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:28:56,168.168 INFO    ] ================================================
[2026-10-28 05:28:56,184.184 INFO    ] Launching Daemon at Wed Oct 28 05:28:56 IST 2026
[2026-10-28 05:28:56,196.196 INFO    ] ================================================
[2026-10-28 05:28:56,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:28:56
[2026-10-28 05:28:57,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:28:57,774.774 INFO    ] Initializing speech engine...
[2026-10-28 05:28:57,781.781 INFO    ] 2026-10-28 05:28:57
[2026-10-28 05:28:58,044.044 INFO    ] 2026-10-28 05:28:58
[2026-10-28 05:28:58,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:28:58,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:28:58,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:28:58,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:28:58,604.604 INFO    ] time= 28/10/2026 05:28:58
[2026-10-28 05:28:58,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:28:58,641.641 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:28:58,761.761 INFO    ] No existing commands found in stream
[2026-10-28 05:29:03,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:29:03,795.795 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 05:29:07,007.007 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:29:07,010.010 INFO    ] Checking for system updates...
[2026-10-28 05:29:07,050.050 INFO    ] 200
[2026-10-28 05:29:07,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:29:07,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:29:07,113.113 INFO    ] No update needed
[2026-10-28 05:29:07,116.116 INFO    ] Checking for camera pi updates...
[2026-10-28 05:29:07,153.153 INFO    ] 200
[2026-10-28 05:29:07,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:29:07,196.196 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:29:07,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:29:07,298.298 INFO    ] No camera update needed
[2026-10-28 05:29:07,300.300 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:29:07,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:29:07,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:29:07,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:29:09,354.354 INFO    ] ================================================
[2026-10-28 05:29:09,369.369 INFO    ] Launching Daemon at Wed Oct 28 05:29:09 IST 2026
[2026-10-28 05:29:09,380.380 INFO    ] ================================================
[2026-10-28 05:29:09,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:29:09
[2026-10-28 05:29:10,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:29:10,788.788 INFO    ] Initializing speech engine...
[2026-10-28 05:29:10,806.806 INFO    ] 2026-10-28 05:29:10
[2026-10-28 05:29:11,056.056 INFO    ] 2026-10-28 05:29:11
[2026-10-28 05:29:11,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:29:11,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:29:11,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:29:11,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:29:11,624.624 INFO    ] time= 28/10/2026 05:29:11
[2026-10-28 05:29:11,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:29:11,648.648 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:29:11,776.776 INFO    ] No existing commands found in stream
[2026-10-28 05:29:16,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:29:16,793.793 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 05:29:19,243.243 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:29:19,245.245 INFO    ] Checking for system updates...
[2026-10-28 05:29:19,281.281 INFO    ] 200
[2026-10-28 05:29:19,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:29:19,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:29:19,337.337 INFO    ] No update needed
[2026-10-28 05:29:19,340.340 INFO    ] Checking for camera pi updates...
[2026-10-28 05:29:19,374.374 INFO    ] 200
[2026-10-28 05:29:19,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:29:19,422.422 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:29:19,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:29:19,524.524 INFO    ] No camera update needed
[2026-10-28 05:29:19,527.527 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:29:19,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:29:19,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:29:19,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:29:21,581.581 INFO    ] ================================================
[2026-10-28 05:29:21,596.596 INFO    ] Launching Daemon at Wed Oct 28 05:29:21 IST 2026
[2026-10-28 05:29:21,607.607 INFO    ] ================================================
[2026-10-28 05:29:22,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:29:22
[2026-10-28 05:29:22,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:29:23,122.122 INFO    ] Initializing speech engine...
[2026-10-28 05:29:23,135.135 INFO    ] 2026-10-28 05:29:23
[2026-10-28 05:29:23,403.403 INFO    ] 2026-10-28 05:29:23
[2026-10-28 05:29:23,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:29:23,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:29:23,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:29:23,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:29:23,943.943 INFO    ] time= 28/10/2026 05:29:23
[2026-10-28 05:29:23,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:29:23,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:29:24,099.099 INFO    ] No existing commands found in stream
[2026-10-28 05:29:29,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:29:29,114.114 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 05:29:32,603.603 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:29:32,606.606 INFO    ] Checking for system updates...
[2026-10-28 05:29:32,643.643 INFO    ] 200
[2026-10-28 05:29:32,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:29:32,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:29:32,714.714 INFO    ] No update needed
[2026-10-28 05:29:32,716.716 INFO    ] Checking for camera pi updates...
[2026-10-28 05:29:32,753.753 INFO    ] 200
[2026-10-28 05:29:32,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:29:32,803.803 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:29:32,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:29:33,001.001 INFO    ] No camera update needed
[2026-10-28 05:29:33,003.003 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:29:33,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:29:33,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:29:33,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:29:35,056.056 INFO    ] ================================================
[2026-10-28 05:29:35,071.071 INFO    ] Launching Daemon at Wed Oct 28 05:29:35 IST 2026
[2026-10-28 05:29:35,082.082 INFO    ] ================================================
[2026-10-28 05:29:35,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:29:35
[2026-10-28 05:29:36,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:29:36,500.500 INFO    ] Initializing speech engine...
[2026-10-28 05:29:36,506.506 INFO    ] 2026-10-28 05:29:36
[2026-10-28 05:29:36,777.777 INFO    ] 2026-10-28 05:29:36
[2026-10-28 05:29:36,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:29:37,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:29:37,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:29:37,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:29:37,331.331 INFO    ] time= 28/10/2026 05:29:37
[2026-10-28 05:29:37,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:29:37,354.354 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:29:37,478.478 INFO    ] No existing commands found in stream
[2026-10-28 05:29:42,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:29:42,495.495 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-28 05:29:44,945.945 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:29:44,947.947 INFO    ] Checking for system updates...
[2026-10-28 05:29:44,987.987 INFO    ] 200
[2026-10-28 05:29:44,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:29:45,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:29:45,052.052 INFO    ] No update needed
[2026-10-28 05:29:45,054.054 INFO    ] Checking for camera pi updates...
[2026-10-28 05:29:45,092.092 INFO    ] 200
[2026-10-28 05:29:45,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:29:45,140.140 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:29:45,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:29:45,222.222 INFO    ] No camera update needed
[2026-10-28 05:29:45,225.225 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:29:45,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:29:45,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:29:45,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:29:47,280.280 INFO    ] ================================================
[2026-10-28 05:29:47,296.296 INFO    ] Launching Daemon at Wed Oct 28 05:29:47 IST 2026
[2026-10-28 05:29:47,307.307 INFO    ] ================================================
[2026-10-28 05:29:47,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:29:47
[2026-10-28 05:29:48,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:29:48,750.750 INFO    ] Initializing speech engine...
[2026-10-28 05:29:48,758.758 INFO    ] 2026-10-28 05:29:48
[2026-10-28 05:29:49,022.022 INFO    ] 2026-10-28 05:29:49
[2026-10-28 05:29:49,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:29:49,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:29:49,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:29:49,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:29:49,567.567 INFO    ] time= 28/10/2026 05:29:49
[2026-10-28 05:29:49,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:29:49,591.591 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:29:49,722.722 INFO    ] No existing commands found in stream
[2026-10-28 05:29:54,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:29:54,744.744 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-28 05:29:59,118.118 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:29:59,120.120 INFO    ] Checking for system updates...
[2026-10-28 05:29:59,158.158 INFO    ] 200
[2026-10-28 05:29:59,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:29:59,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:29:59,227.227 INFO    ] No update needed
[2026-10-28 05:29:59,230.230 INFO    ] Checking for camera pi updates...
[2026-10-28 05:29:59,268.268 INFO    ] 200
[2026-10-28 05:29:59,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:29:59,315.315 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:29:59,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:29:59,401.401 INFO    ] No camera update needed
[2026-10-28 05:29:59,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:29:59,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:29:59,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:29:59,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:30:01,464.464 INFO    ] ================================================
[2026-10-28 05:30:01,480.480 INFO    ] Launching Daemon at Wed Oct 28 05:30:01 IST 2026
[2026-10-28 05:30:01,491.491 INFO    ] ================================================
[2026-10-28 05:30:02,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:30:02
[2026-10-28 05:30:03,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:30:03,966.966 INFO    ] Initializing speech engine...
[2026-10-28 05:30:04,042.042 INFO    ] 2026-10-28 05:30:03
[2026-10-28 05:30:04,408.408 INFO    ] 2026-10-28 05:30:04
[2026-10-28 05:30:04,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:30:04,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:30:04,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:30:04,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:30:05,015.015 INFO    ] time= 28/10/2026 05:30:04
[2026-10-28 05:30:05,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:30:05,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:30:05,239.239 INFO    ] No existing commands found in stream
[2026-10-28 05:30:10,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:30:10,258.258 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-28 05:30:13,862.862 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:30:13,865.865 INFO    ] Checking for system updates...
[2026-10-28 05:30:13,904.904 INFO    ] 200
[2026-10-28 05:30:13,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:30:13,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:30:13,968.968 INFO    ] No update needed
[2026-10-28 05:30:13,971.971 INFO    ] Checking for camera pi updates...
[2026-10-28 05:30:14,008.008 INFO    ] 200
[2026-10-28 05:30:14,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:30:14,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:30:14,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:30:14,131.131 INFO    ] No camera update needed
[2026-10-28 05:30:14,134.134 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:30:14,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:30:14,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:30:14,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:30:16,187.187 INFO    ] ================================================
[2026-10-28 05:30:16,202.202 INFO    ] Launching Daemon at Wed Oct 28 05:30:16 IST 2026
[2026-10-28 05:30:16,213.213 INFO    ] ================================================
[2026-10-28 05:30:16,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:30:16
[2026-10-28 05:30:17,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:30:17,838.838 INFO    ] Initializing speech engine...
[2026-10-28 05:30:17,850.850 INFO    ] 2026-10-28 05:30:17
[2026-10-28 05:30:18,137.137 INFO    ] 2026-10-28 05:30:18
[2026-10-28 05:30:18,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:30:18,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:30:18,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:30:18,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:30:18,699.699 INFO    ] time= 28/10/2026 05:30:18
[2026-10-28 05:30:18,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:30:18,738.738 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:30:18,896.896 INFO    ] No existing commands found in stream
[2026-10-28 05:30:23,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:30:23,929.929 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-28 05:30:28,355.355 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:30:28,357.357 INFO    ] Checking for system updates...
[2026-10-28 05:30:28,393.393 INFO    ] 200
[2026-10-28 05:30:28,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:30:28,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:30:28,451.451 INFO    ] No update needed
[2026-10-28 05:30:28,453.453 INFO    ] Checking for camera pi updates...
[2026-10-28 05:30:28,488.488 INFO    ] 200
[2026-10-28 05:30:28,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:30:28,531.531 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:30:28,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:30:28,614.614 INFO    ] No camera update needed
[2026-10-28 05:30:28,616.616 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:30:28,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:30:28,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:30:28,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:30:30,668.668 INFO    ] ================================================
[2026-10-28 05:30:30,684.684 INFO    ] Launching Daemon at Wed Oct 28 05:30:30 IST 2026
[2026-10-28 05:30:30,695.695 INFO    ] ================================================
[2026-10-28 05:30:31,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:30:31
[2026-10-28 05:30:31,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:30:32,279.279 INFO    ] Initializing speech engine...
[2026-10-28 05:30:32,288.288 INFO    ] 2026-10-28 05:30:32
[2026-10-28 05:30:32,559.559 INFO    ] 2026-10-28 05:30:32
[2026-10-28 05:30:32,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:30:32,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:30:32,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:30:33,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:30:33,147.147 INFO    ] time= 28/10/2026 05:30:33
[2026-10-28 05:30:33,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:30:33,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:30:33,331.331 INFO    ] No existing commands found in stream
[2026-10-28 05:30:38,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:30:38,371.371 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 05:30:42,883.883 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:30:42,887.887 INFO    ] Checking for system updates...
[2026-10-28 05:30:42,925.925 INFO    ] 200
[2026-10-28 05:30:42,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:30:42,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:30:42,981.981 INFO    ] No update needed
[2026-10-28 05:30:42,984.984 INFO    ] Checking for camera pi updates...
[2026-10-28 05:30:43,018.018 INFO    ] 200
[2026-10-28 05:30:43,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:30:43,062.062 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:30:43,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:30:43,170.170 INFO    ] No camera update needed
[2026-10-28 05:30:43,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:30:43,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:30:43,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:30:43,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:30:45,230.230 INFO    ] ================================================
[2026-10-28 05:30:45,246.246 INFO    ] Launching Daemon at Wed Oct 28 05:30:45 IST 2026
[2026-10-28 05:30:45,257.257 INFO    ] ================================================
[2026-10-28 05:30:45,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:30:45
[2026-10-28 05:30:46,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:30:46,716.716 INFO    ] Initializing speech engine...
[2026-10-28 05:30:46,729.729 INFO    ] 2026-10-28 05:30:46
[2026-10-28 05:30:46,986.986 INFO    ] 2026-10-28 05:30:46
[2026-10-28 05:30:47,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:30:47,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:30:47,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:30:47,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:30:47,526.526 INFO    ] time= 28/10/2026 05:30:47
[2026-10-28 05:30:47,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:30:47,573.573 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:30:47,699.699 INFO    ] No existing commands found in stream
[2026-10-28 05:30:52,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:30:52,727.727 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-28 05:30:53,916.916 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:30:53,918.918 INFO    ] Checking for system updates...
[2026-10-28 05:30:53,958.958 INFO    ] 200
[2026-10-28 05:30:53,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:30:54,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:30:54,023.023 INFO    ] No update needed
[2026-10-28 05:30:54,026.026 INFO    ] Checking for camera pi updates...
[2026-10-28 05:30:54,063.063 INFO    ] 200
[2026-10-28 05:30:54,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:30:54,106.106 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:30:54,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:30:54,191.191 INFO    ] No camera update needed
[2026-10-28 05:30:54,194.194 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:30:54,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:30:54,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:30:54,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:30:56,247.247 INFO    ] ================================================
[2026-10-28 05:30:56,262.262 INFO    ] Launching Daemon at Wed Oct 28 05:30:56 IST 2026
[2026-10-28 05:30:56,273.273 INFO    ] ================================================
[2026-10-28 05:30:56,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:30:56
[2026-10-28 05:30:57,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:30:57,813.813 INFO    ] Initializing speech engine...
[2026-10-28 05:30:57,823.823 INFO    ] 2026-10-28 05:30:57
[2026-10-28 05:30:58,075.075 INFO    ] 2026-10-28 05:30:58
[2026-10-28 05:30:58,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:30:58,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:30:58,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:30:58,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:30:58,631.631 INFO    ] time= 28/10/2026 05:30:58
[2026-10-28 05:30:58,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:30:58,656.656 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:30:58,785.785 INFO    ] No existing commands found in stream
[2026-10-28 05:31:03,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:31:03,807.807 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 05:31:05,744.744 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:31:05,746.746 INFO    ] Checking for system updates...
[2026-10-28 05:31:05,783.783 INFO    ] 200
[2026-10-28 05:31:05,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:31:05,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:31:05,847.847 INFO    ] No update needed
[2026-10-28 05:31:05,849.849 INFO    ] Checking for camera pi updates...
[2026-10-28 05:31:05,883.883 INFO    ] 200
[2026-10-28 05:31:05,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:31:05,930.930 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:31:06,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:31:06,015.015 INFO    ] No camera update needed
[2026-10-28 05:31:06,018.018 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:31:06,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:31:06,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:31:06,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:31:08,070.070 INFO    ] ================================================
[2026-10-28 05:31:08,086.086 INFO    ] Launching Daemon at Wed Oct 28 05:31:08 IST 2026
[2026-10-28 05:31:08,097.097 INFO    ] ================================================
[2026-10-28 05:31:08,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:31:08
[2026-10-28 05:31:09,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:31:09,601.601 INFO    ] Initializing speech engine...
[2026-10-28 05:31:09,609.609 INFO    ] 2026-10-28 05:31:09
[2026-10-28 05:31:09,898.898 INFO    ] 2026-10-28 05:31:09
[2026-10-28 05:31:09,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:31:10,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:31:10,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:31:10,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:31:10,478.478 INFO    ] time= 28/10/2026 05:31:10
[2026-10-28 05:31:10,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:31:10,510.510 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:31:10,669.669 INFO    ] No existing commands found in stream
[2026-10-28 05:31:15,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:31:15,703.703 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-28 05:31:17,597.597 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:31:17,600.600 INFO    ] Checking for system updates...
[2026-10-28 05:31:17,642.642 INFO    ] 200
[2026-10-28 05:31:17,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:31:17,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:31:17,712.712 INFO    ] No update needed
[2026-10-28 05:31:17,714.714 INFO    ] Checking for camera pi updates...
[2026-10-28 05:31:17,752.752 INFO    ] 200
[2026-10-28 05:31:17,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:31:17,804.804 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:31:17,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:31:17,891.891 INFO    ] No camera update needed
[2026-10-28 05:31:17,893.893 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:31:17,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:31:17,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:31:17,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:31:19,946.946 INFO    ] ================================================
[2026-10-28 05:31:19,961.961 INFO    ] Launching Daemon at Wed Oct 28 05:31:19 IST 2026
[2026-10-28 05:31:19,972.972 INFO    ] ================================================
[2026-10-28 05:31:20,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:31:20
[2026-10-28 05:31:21,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:31:21,421.421 INFO    ] Initializing speech engine...
[2026-10-28 05:31:21,430.430 INFO    ] 2026-10-28 05:31:21
[2026-10-28 05:31:21,684.684 INFO    ] 2026-10-28 05:31:21
[2026-10-28 05:31:21,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:31:21,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:31:21,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:31:22,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:31:22,233.233 INFO    ] time= 28/10/2026 05:31:22
[2026-10-28 05:31:22,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:31:22,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:31:22,412.412 INFO    ] No existing commands found in stream
[2026-10-28 05:31:27,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:31:27,432.432 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-28 05:31:30,158.158 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:31:30,160.160 INFO    ] Checking for system updates...
[2026-10-28 05:31:30,197.197 INFO    ] 200
[2026-10-28 05:31:30,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:31:30,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:31:30,262.262 INFO    ] No update needed
[2026-10-28 05:31:30,264.264 INFO    ] Checking for camera pi updates...
[2026-10-28 05:31:30,298.298 INFO    ] 200
[2026-10-28 05:31:30,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:31:30,347.347 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:31:30,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:31:30,432.432 INFO    ] No camera update needed
[2026-10-28 05:31:30,435.435 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:31:30,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:31:30,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:31:30,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:31:32,490.490 INFO    ] ================================================
[2026-10-28 05:31:32,508.508 INFO    ] Launching Daemon at Wed Oct 28 05:31:32 IST 2026
[2026-10-28 05:31:32,519.519 INFO    ] ================================================
[2026-10-28 05:31:33,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:31:33
[2026-10-28 05:31:33,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:31:33,977.977 INFO    ] Initializing speech engine...
[2026-10-28 05:31:33,990.990 INFO    ] 2026-10-28 05:31:33
[2026-10-28 05:31:34,256.256 INFO    ] 2026-10-28 05:31:34
[2026-10-28 05:31:34,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:31:34,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:31:34,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:31:34,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:31:34,827.827 INFO    ] time= 28/10/2026 05:31:34
[2026-10-28 05:31:34,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:31:34,851.851 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:31:34,988.988 INFO    ] No existing commands found in stream
[2026-10-28 05:31:40,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:31:40,019.019 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-28 05:31:42,245.245 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:31:42,248.248 INFO    ] Checking for system updates...
[2026-10-28 05:31:42,283.283 INFO    ] 200
[2026-10-28 05:31:42,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:31:42,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:31:42,349.349 INFO    ] No update needed
[2026-10-28 05:31:42,351.351 INFO    ] Checking for camera pi updates...
[2026-10-28 05:31:42,387.387 INFO    ] 200
[2026-10-28 05:31:42,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:31:42,431.431 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:31:42,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:31:42,626.626 INFO    ] No camera update needed
[2026-10-28 05:31:42,628.628 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:31:42,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:31:42,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:31:42,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:31:44,693.693 INFO    ] ================================================
[2026-10-28 05:31:44,708.708 INFO    ] Launching Daemon at Wed Oct 28 05:31:44 IST 2026
[2026-10-28 05:31:44,719.719 INFO    ] ================================================
[2026-10-28 05:31:45,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:31:45
[2026-10-28 05:31:45,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:31:46,254.254 INFO    ] Initializing speech engine...
[2026-10-28 05:31:46,264.264 INFO    ] 2026-10-28 05:31:46
[2026-10-28 05:31:46,522.522 INFO    ] 2026-10-28 05:31:46
[2026-10-28 05:31:46,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:31:46,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:31:46,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:31:47,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:31:47,122.122 INFO    ] time= 28/10/2026 05:31:47
[2026-10-28 05:31:47,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:31:47,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:31:47,329.329 INFO    ] No existing commands found in stream
[2026-10-28 05:31:52,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:31:52,357.357 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-28 05:31:53,883.883 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:31:53,886.886 INFO    ] Checking for system updates...
[2026-10-28 05:31:53,922.922 INFO    ] 200
[2026-10-28 05:31:53,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:31:53,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:31:53,980.980 INFO    ] No update needed
[2026-10-28 05:31:53,982.982 INFO    ] Checking for camera pi updates...
[2026-10-28 05:31:54,020.020 INFO    ] 200
[2026-10-28 05:31:54,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:31:54,067.067 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:31:54,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:31:54,154.154 INFO    ] No camera update needed
[2026-10-28 05:31:54,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:31:54,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:31:54,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:31:54,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:31:56,212.212 INFO    ] ================================================
[2026-10-28 05:31:56,227.227 INFO    ] Launching Daemon at Wed Oct 28 05:31:56 IST 2026
[2026-10-28 05:31:56,238.238 INFO    ] ================================================
[2026-10-28 05:31:56,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:31:56
[2026-10-28 05:31:57,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:31:57,670.670 INFO    ] Initializing speech engine...
[2026-10-28 05:31:57,679.679 INFO    ] 2026-10-28 05:31:57
[2026-10-28 05:31:57,926.926 INFO    ] 2026-10-28 05:31:57
[2026-10-28 05:31:57,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:31:58,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:31:58,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:31:58,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:31:58,488.488 INFO    ] time= 28/10/2026 05:31:58
[2026-10-28 05:31:58,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:31:58,535.535 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:31:58,652.652 INFO    ] No existing commands found in stream
[2026-10-28 05:32:03,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:32:03,678.678 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-28 05:32:05,503.503 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:32:05,506.506 INFO    ] Checking for system updates...
[2026-10-28 05:32:05,542.542 INFO    ] 200
[2026-10-28 05:32:05,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:32:05,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:32:05,605.605 INFO    ] No update needed
[2026-10-28 05:32:05,608.608 INFO    ] Checking for camera pi updates...
[2026-10-28 05:32:05,643.643 INFO    ] 200
[2026-10-28 05:32:05,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:32:05,688.688 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:32:05,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:32:05,776.776 INFO    ] No camera update needed
[2026-10-28 05:32:05,779.779 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:32:05,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:32:05,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:32:05,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:32:07,836.836 INFO    ] ================================================
[2026-10-28 05:32:07,851.851 INFO    ] Launching Daemon at Wed Oct 28 05:32:07 IST 2026
[2026-10-28 05:32:07,862.862 INFO    ] ================================================
[2026-10-28 05:32:08,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:32:08
[2026-10-28 05:32:09,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:32:09,305.305 INFO    ] Initializing speech engine...
[2026-10-28 05:32:09,314.314 INFO    ] 2026-10-28 05:32:09
[2026-10-28 05:32:09,574.574 INFO    ] 2026-10-28 05:32:09
[2026-10-28 05:32:09,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:32:09,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:32:09,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:32:10,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:32:10,162.162 INFO    ] time= 28/10/2026 05:32:10
[2026-10-28 05:32:10,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:32:10,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:32:10,367.367 INFO    ] No existing commands found in stream
[2026-10-28 05:32:15,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:32:15,380.380 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-28 05:32:17,021.021 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:32:17,024.024 INFO    ] Checking for system updates...
[2026-10-28 05:32:17,062.062 INFO    ] 200
[2026-10-28 05:32:17,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:32:17,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:32:17,123.123 INFO    ] No update needed
[2026-10-28 05:32:17,126.126 INFO    ] Checking for camera pi updates...
[2026-10-28 05:32:17,159.159 INFO    ] 200
[2026-10-28 05:32:17,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:32:17,204.204 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:32:17,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:32:17,286.286 INFO    ] No camera update needed
[2026-10-28 05:32:17,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:32:17,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:32:17,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:32:17,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:32:19,348.348 INFO    ] ================================================
[2026-10-28 05:32:19,364.364 INFO    ] Launching Daemon at Wed Oct 28 05:32:19 IST 2026
[2026-10-28 05:32:19,375.375 INFO    ] ================================================
[2026-10-28 05:32:19,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:32:19
[2026-10-28 05:32:20,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:32:20,787.787 INFO    ] Initializing speech engine...
[2026-10-28 05:32:20,802.802 INFO    ] 2026-10-28 05:32:20
[2026-10-28 05:32:21,057.057 INFO    ] 2026-10-28 05:32:21
[2026-10-28 05:32:21,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:32:21,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:32:21,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:32:21,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:32:21,607.607 INFO    ] time= 28/10/2026 05:32:21
[2026-10-28 05:32:21,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:32:21,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:32:21,786.786 INFO    ] No existing commands found in stream
[2026-10-28 05:32:26,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:32:26,819.819 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 05:32:28,582.582 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:32:28,585.585 INFO    ] Checking for system updates...
[2026-10-28 05:32:28,621.621 INFO    ] 200
[2026-10-28 05:32:28,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:32:28,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:32:28,686.686 INFO    ] No update needed
[2026-10-28 05:32:28,688.688 INFO    ] Checking for camera pi updates...
[2026-10-28 05:32:28,721.721 INFO    ] 200
[2026-10-28 05:32:28,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:32:28,766.766 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:32:28,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:32:28,866.866 INFO    ] No camera update needed
[2026-10-28 05:32:28,869.869 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:32:28,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:32:28,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:32:28,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:32:30,923.923 INFO    ] ================================================
[2026-10-28 05:32:30,938.938 INFO    ] Launching Daemon at Wed Oct 28 05:32:30 IST 2026
[2026-10-28 05:32:30,949.949 INFO    ] ================================================
[2026-10-28 05:32:31,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:32:31
[2026-10-28 05:32:32,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:32:32,565.565 INFO    ] Initializing speech engine...
[2026-10-28 05:32:32,573.573 INFO    ] 2026-10-28 05:32:32
[2026-10-28 05:32:32,901.901 INFO    ] 2026-10-28 05:32:32
[2026-10-28 05:32:32,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:32:33,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:32:33,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:32:33,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:32:33,436.436 INFO    ] time= 28/10/2026 05:32:33
[2026-10-28 05:32:33,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:32:33,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:32:33,584.584 INFO    ] No existing commands found in stream
[2026-10-28 05:32:38,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:32:38,612.612 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 05:32:39,270.270 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:32:39,272.272 INFO    ] Checking for system updates...
[2026-10-28 05:32:39,309.309 INFO    ] 200
[2026-10-28 05:32:39,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:32:39,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:32:39,376.376 INFO    ] No update needed
[2026-10-28 05:32:39,378.378 INFO    ] Checking for camera pi updates...
[2026-10-28 05:32:39,411.411 INFO    ] 200
[2026-10-28 05:32:39,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:32:39,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:32:39,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:32:39,553.553 INFO    ] No camera update needed
[2026-10-28 05:32:39,556.556 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:32:39,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:32:39,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:32:39,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:32:41,610.610 INFO    ] ================================================
[2026-10-28 05:32:41,626.626 INFO    ] Launching Daemon at Wed Oct 28 05:32:41 IST 2026
[2026-10-28 05:32:41,636.636 INFO    ] ================================================
[2026-10-28 05:32:42,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:32:42
[2026-10-28 05:32:42,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:32:43,213.213 INFO    ] Initializing speech engine...
[2026-10-28 05:32:43,222.222 INFO    ] 2026-10-28 05:32:43
[2026-10-28 05:32:43,495.495 INFO    ] 2026-10-28 05:32:43
[2026-10-28 05:32:43,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:32:43,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:32:43,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:32:44,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:32:44,056.056 INFO    ] time= 28/10/2026 05:32:44
[2026-10-28 05:32:44,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:32:44,080.080 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:32:44,214.214 INFO    ] No existing commands found in stream
[2026-10-28 05:32:49,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:32:49,230.230 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-28 05:32:51,422.422 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:32:51,426.426 INFO    ] Checking for system updates...
[2026-10-28 05:32:51,462.462 INFO    ] 200
[2026-10-28 05:32:51,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:32:51,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:32:51,527.527 INFO    ] No update needed
[2026-10-28 05:32:51,529.529 INFO    ] Checking for camera pi updates...
[2026-10-28 05:32:51,566.566 INFO    ] 200
[2026-10-28 05:32:51,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:32:51,610.610 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:32:51,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:32:51,702.702 INFO    ] No camera update needed
[2026-10-28 05:32:51,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:32:51,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:32:51,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:32:51,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:32:53,761.761 INFO    ] ================================================
[2026-10-28 05:32:53,776.776 INFO    ] Launching Daemon at Wed Oct 28 05:32:53 IST 2026
[2026-10-28 05:32:53,787.787 INFO    ] ================================================
[2026-10-28 05:32:54,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:32:54
[2026-10-28 05:32:54,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:32:55,217.217 INFO    ] Initializing speech engine...
[2026-10-28 05:32:55,226.226 INFO    ] 2026-10-28 05:32:55
[2026-10-28 05:32:55,516.516 INFO    ] 2026-10-28 05:32:55
[2026-10-28 05:32:55,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:32:55,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:32:55,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:32:55,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:32:55,999.999 INFO    ] time= 28/10/2026 05:32:55
[2026-10-28 05:32:56,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:32:56,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:32:56,199.199 INFO    ] No existing commands found in stream
[2026-10-28 05:33:01,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:33:01,215.215 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-28 05:33:04,181.181 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:33:04,184.184 INFO    ] Checking for system updates...
[2026-10-28 05:33:04,223.223 INFO    ] 200
[2026-10-28 05:33:04,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:33:04,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:33:04,280.280 INFO    ] No update needed
[2026-10-28 05:33:04,282.282 INFO    ] Checking for camera pi updates...
[2026-10-28 05:33:04,320.320 INFO    ] 200
[2026-10-28 05:33:04,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:33:04,365.365 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:33:04,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:33:04,447.447 INFO    ] No camera update needed
[2026-10-28 05:33:04,453.453 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:33:04,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:33:04,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:33:04,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:33:06,506.506 INFO    ] ================================================
[2026-10-28 05:33:06,522.522 INFO    ] Launching Daemon at Wed Oct 28 05:33:06 IST 2026
[2026-10-28 05:33:06,532.532 INFO    ] ================================================
[2026-10-28 05:33:07,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:33:07
[2026-10-28 05:33:07,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:33:07,959.959 INFO    ] Initializing speech engine...
[2026-10-28 05:33:07,979.979 INFO    ] 2026-10-28 05:33:07
[2026-10-28 05:33:08,244.244 INFO    ] 2026-10-28 05:33:08
[2026-10-28 05:33:08,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:33:08,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:33:08,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:33:08,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:33:08,853.853 INFO    ] time= 28/10/2026 05:33:08
[2026-10-28 05:33:08,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:33:08,889.889 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:33:09,021.021 INFO    ] No existing commands found in stream
[2026-10-28 05:33:14,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:33:14,052.052 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 05:33:17,701.701 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:33:17,704.704 INFO    ] Checking for system updates...
[2026-10-28 05:33:17,743.743 INFO    ] 200
[2026-10-28 05:33:17,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:33:17,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:33:17,800.800 INFO    ] No update needed
[2026-10-28 05:33:17,802.802 INFO    ] Checking for camera pi updates...
[2026-10-28 05:33:17,838.838 INFO    ] 200
[2026-10-28 05:33:17,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:33:17,881.881 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:33:17,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:33:17,968.968 INFO    ] No camera update needed
[2026-10-28 05:33:17,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:33:17,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:33:17,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:33:17,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:33:20,024.024 INFO    ] ================================================
[2026-10-28 05:33:20,039.039 INFO    ] Launching Daemon at Wed Oct 28 05:33:20 IST 2026
[2026-10-28 05:33:20,050.050 INFO    ] ================================================
[2026-10-28 05:33:20,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:33:20
[2026-10-28 05:33:21,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:33:21,453.453 INFO    ] Initializing speech engine...
[2026-10-28 05:33:21,460.460 INFO    ] 2026-10-28 05:33:21
[2026-10-28 05:33:21,758.758 INFO    ] 2026-10-28 05:33:21
[2026-10-28 05:33:21,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:33:22,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:33:22,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:33:22,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:33:22,304.304 INFO    ] time= 28/10/2026 05:33:22
[2026-10-28 05:33:22,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:33:22,411.411 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:33:22,551.551 INFO    ] No existing commands found in stream
[2026-10-28 05:33:27,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:33:27,579.579 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 05:33:28,188.188 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:33:28,191.191 INFO    ] Checking for system updates...
[2026-10-28 05:33:28,227.227 INFO    ] 200
[2026-10-28 05:33:28,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:33:28,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:33:28,290.290 INFO    ] No update needed
[2026-10-28 05:33:28,292.292 INFO    ] Checking for camera pi updates...
[2026-10-28 05:33:28,326.326 INFO    ] 200
[2026-10-28 05:33:28,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:33:28,369.369 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:33:28,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:33:28,457.457 INFO    ] No camera update needed
[2026-10-28 05:33:28,460.460 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:33:28,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:33:28,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:33:28,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:33:30,513.513 INFO    ] ================================================
[2026-10-28 05:33:30,528.528 INFO    ] Launching Daemon at Wed Oct 28 05:33:30 IST 2026
[2026-10-28 05:33:30,538.538 INFO    ] ================================================
[2026-10-28 05:33:31,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:33:31
[2026-10-28 05:33:31,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:33:31,971.971 INFO    ] Initializing speech engine...
[2026-10-28 05:33:31,991.991 INFO    ] 2026-10-28 05:33:31
[2026-10-28 05:33:32,303.303 INFO    ] 2026-10-28 05:33:32
[2026-10-28 05:33:32,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:33:32,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:33:32,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:33:32,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:33:32,757.757 INFO    ] time= 28/10/2026 05:33:32
[2026-10-28 05:33:32,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:33:32,789.789 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:33:32,919.919 INFO    ] No existing commands found in stream
[2026-10-28 05:33:37,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:33:37,947.947 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 05:33:40,393.393 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:33:40,396.396 INFO    ] Checking for system updates...
[2026-10-28 05:33:40,431.431 INFO    ] 200
[2026-10-28 05:33:40,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:33:40,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:33:40,488.488 INFO    ] No update needed
[2026-10-28 05:33:40,490.490 INFO    ] Checking for camera pi updates...
[2026-10-28 05:33:40,525.525 INFO    ] 200
[2026-10-28 05:33:40,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:33:40,568.568 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:33:40,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:33:40,655.655 INFO    ] No camera update needed
[2026-10-28 05:33:40,658.658 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:33:40,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:33:40,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:33:40,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:33:42,710.710 INFO    ] ================================================
[2026-10-28 05:33:42,726.726 INFO    ] Launching Daemon at Wed Oct 28 05:33:42 IST 2026
[2026-10-28 05:33:42,737.737 INFO    ] ================================================
[2026-10-28 05:33:43,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:33:43
[2026-10-28 05:33:44,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:33:44,362.362 INFO    ] Initializing speech engine...
[2026-10-28 05:33:44,377.377 INFO    ] 2026-10-28 05:33:44
[2026-10-28 05:33:44,667.667 INFO    ] 2026-10-28 05:33:44
[2026-10-28 05:33:44,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:33:44,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:33:45,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:33:45,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:33:45,221.221 INFO    ] time= 28/10/2026 05:33:45
[2026-10-28 05:33:45,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:33:45,262.262 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:33:45,388.388 INFO    ] No existing commands found in stream
[2026-10-28 05:33:50,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:33:50,422.422 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-28 05:33:53,183.183 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:33:53,186.186 INFO    ] Checking for system updates...
[2026-10-28 05:33:53,223.223 INFO    ] 200
[2026-10-28 05:33:53,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:33:53,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:33:53,289.289 INFO    ] No update needed
[2026-10-28 05:33:53,291.291 INFO    ] Checking for camera pi updates...
[2026-10-28 05:33:53,326.326 INFO    ] 200
[2026-10-28 05:33:53,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:33:53,373.373 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:33:53,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:33:53,555.555 INFO    ] No camera update needed
[2026-10-28 05:33:53,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:33:53,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:33:53,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:33:53,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:33:55,614.614 INFO    ] ================================================
[2026-10-28 05:33:55,630.630 INFO    ] Launching Daemon at Wed Oct 28 05:33:55 IST 2026
[2026-10-28 05:33:55,642.642 INFO    ] ================================================
[2026-10-28 05:33:56,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:33:56
[2026-10-28 05:33:56,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:33:57,098.098 INFO    ] Initializing speech engine...
[2026-10-28 05:33:57,104.104 INFO    ] 2026-10-28 05:33:57
[2026-10-28 05:33:57,365.365 INFO    ] 2026-10-28 05:33:57
[2026-10-28 05:33:57,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:33:57,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:33:57,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:33:57,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:33:57,905.905 INFO    ] time= 28/10/2026 05:33:57
[2026-10-28 05:33:57,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:33:57,929.929 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:33:58,065.065 INFO    ] No existing commands found in stream
[2026-10-28 05:34:03,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:34:03,094.094 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 05:34:06,768.768 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:34:06,770.770 INFO    ] Checking for system updates...
[2026-10-28 05:34:06,810.810 INFO    ] 200
[2026-10-28 05:34:06,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:34:06,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:34:06,867.867 INFO    ] No update needed
[2026-10-28 05:34:06,869.869 INFO    ] Checking for camera pi updates...
[2026-10-28 05:34:06,903.903 INFO    ] 200
[2026-10-28 05:34:06,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:34:06,951.951 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:34:07,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:34:07,042.042 INFO    ] No camera update needed
[2026-10-28 05:34:07,044.044 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:34:07,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:34:07,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:34:07,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:34:09,097.097 INFO    ] ================================================
[2026-10-28 05:34:09,113.113 INFO    ] Launching Daemon at Wed Oct 28 05:34:09 IST 2026
[2026-10-28 05:34:09,125.125 INFO    ] ================================================
[2026-10-28 05:34:09,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:34:09
[2026-10-28 05:34:10,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:34:10,579.579 INFO    ] Initializing speech engine...
[2026-10-28 05:34:10,584.584 INFO    ] 2026-10-28 05:34:10
[2026-10-28 05:34:10,840.840 INFO    ] 2026-10-28 05:34:10
[2026-10-28 05:34:10,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:34:11,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:34:11,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:34:11,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:34:11,406.406 INFO    ] time= 28/10/2026 05:34:11
[2026-10-28 05:34:11,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:34:11,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:34:11,566.566 INFO    ] No existing commands found in stream
[2026-10-28 05:34:16,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:34:16,599.599 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 05:34:18,759.759 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:34:18,762.762 INFO    ] Checking for system updates...
[2026-10-28 05:34:18,798.798 INFO    ] 200
[2026-10-28 05:34:18,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:34:18,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:34:18,872.872 INFO    ] No update needed
[2026-10-28 05:34:18,874.874 INFO    ] Checking for camera pi updates...
[2026-10-28 05:34:18,908.908 INFO    ] 200
[2026-10-28 05:34:18,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:34:18,955.955 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:34:19,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:34:19,045.045 INFO    ] No camera update needed
[2026-10-28 05:34:19,047.047 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:34:19,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:34:19,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:34:19,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:34:21,102.102 INFO    ] ================================================
[2026-10-28 05:34:21,118.118 INFO    ] Launching Daemon at Wed Oct 28 05:34:21 IST 2026
[2026-10-28 05:34:21,129.129 INFO    ] ================================================
[2026-10-28 05:34:21,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:34:21
[2026-10-28 05:34:22,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:34:22,731.731 INFO    ] Initializing speech engine...
[2026-10-28 05:34:22,739.739 INFO    ] 2026-10-28 05:34:22
[2026-10-28 05:34:23,011.011 INFO    ] 2026-10-28 05:34:23
[2026-10-28 05:34:23,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:34:23,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:34:23,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:34:23,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:34:23,576.576 INFO    ] time= 28/10/2026 05:34:23
[2026-10-28 05:34:23,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:34:23,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:34:23,760.760 INFO    ] No existing commands found in stream
[2026-10-28 05:34:28,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:34:28,794.794 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-28 05:34:31,162.162 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:34:31,165.165 INFO    ] Checking for system updates...
[2026-10-28 05:34:31,200.200 INFO    ] 200
[2026-10-28 05:34:31,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:34:31,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:34:31,258.258 INFO    ] No update needed
[2026-10-28 05:34:31,260.260 INFO    ] Checking for camera pi updates...
[2026-10-28 05:34:31,294.294 INFO    ] 200
[2026-10-28 05:34:31,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:34:31,336.336 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:34:31,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:34:31,434.434 INFO    ] No camera update needed
[2026-10-28 05:34:31,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:34:31,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:34:31,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:34:31,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:34:33,491.491 INFO    ] ================================================
[2026-10-28 05:34:33,507.507 INFO    ] Launching Daemon at Wed Oct 28 05:34:33 IST 2026
[2026-10-28 05:34:33,518.518 INFO    ] ================================================
[2026-10-28 05:34:34,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:34:34
[2026-10-28 05:34:34,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:34:34,966.966 INFO    ] Initializing speech engine...
[2026-10-28 05:34:34,971.971 INFO    ] 2026-10-28 05:34:34
[2026-10-28 05:34:35,234.234 INFO    ] 2026-10-28 05:34:35
[2026-10-28 05:34:35,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:34:35,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:34:35,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:34:35,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:34:35,782.782 INFO    ] time= 28/10/2026 05:34:35
[2026-10-28 05:34:35,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:34:35,829.829 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:34:35,935.935 INFO    ] No existing commands found in stream
[2026-10-28 05:34:40,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:34:40,962.962 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 05:34:41,568.568 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:34:41,571.571 INFO    ] Checking for system updates...
[2026-10-28 05:34:41,609.609 INFO    ] 200
[2026-10-28 05:34:41,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:34:41,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:34:41,681.681 INFO    ] No update needed
[2026-10-28 05:34:41,684.684 INFO    ] Checking for camera pi updates...
[2026-10-28 05:34:41,718.718 INFO    ] 200
[2026-10-28 05:34:41,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:34:41,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:34:41,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:34:41,842.842 INFO    ] No camera update needed
[2026-10-28 05:34:41,845.845 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:34:41,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:34:41,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:34:41,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:34:43,904.904 INFO    ] ================================================
[2026-10-28 05:34:43,919.919 INFO    ] Launching Daemon at Wed Oct 28 05:34:43 IST 2026
[2026-10-28 05:34:43,930.930 INFO    ] ================================================
[2026-10-28 05:34:44,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:34:44
[2026-10-28 05:34:45,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:34:45,358.358 INFO    ] Initializing speech engine...
[2026-10-28 05:34:45,366.366 INFO    ] 2026-10-28 05:34:45
[2026-10-28 05:34:45,665.665 INFO    ] 2026-10-28 05:34:45
[2026-10-28 05:34:45,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:34:46,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:34:46,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:34:46,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:34:46,304.304 INFO    ] time= 28/10/2026 05:34:46
[2026-10-28 05:34:46,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:34:46,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:34:46,447.447 INFO    ] No existing commands found in stream
[2026-10-28 05:34:51,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:34:51,467.467 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 05:34:54,819.819 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:34:54,822.822 INFO    ] Checking for system updates...
[2026-10-28 05:34:54,858.858 INFO    ] 200
[2026-10-28 05:34:54,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:34:54,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:34:54,914.914 INFO    ] No update needed
[2026-10-28 05:34:54,917.917 INFO    ] Checking for camera pi updates...
[2026-10-28 05:34:54,950.950 INFO    ] 200
[2026-10-28 05:34:54,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:34:54,992.992 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:34:55,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:34:55,067.067 INFO    ] No camera update needed
[2026-10-28 05:34:55,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:34:55,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:34:55,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:34:55,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:34:57,122.122 INFO    ] ================================================
[2026-10-28 05:34:57,137.137 INFO    ] Launching Daemon at Wed Oct 28 05:34:57 IST 2026
[2026-10-28 05:34:57,147.147 INFO    ] ================================================
[2026-10-28 05:34:57,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:34:57
[2026-10-28 05:34:58,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:34:58,584.584 INFO    ] Initializing speech engine...
[2026-10-28 05:34:58,590.590 INFO    ] 2026-10-28 05:34:58
[2026-10-28 05:34:58,882.882 INFO    ] 2026-10-28 05:34:58
[2026-10-28 05:34:58,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:34:59,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:34:59,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:34:59,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:34:59,502.502 INFO    ] time= 28/10/2026 05:34:59
[2026-10-28 05:34:59,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:34:59,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:34:59,669.669 INFO    ] No existing commands found in stream
[2026-10-28 05:35:04,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:35:04,694.694 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 05:35:07,647.647 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:35:07,650.650 INFO    ] Checking for system updates...
[2026-10-28 05:35:07,686.686 INFO    ] 200
[2026-10-28 05:35:07,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:35:07,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:35:07,744.744 INFO    ] No update needed
[2026-10-28 05:35:07,747.747 INFO    ] Checking for camera pi updates...
[2026-10-28 05:35:07,780.780 INFO    ] 200
[2026-10-28 05:35:07,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:35:07,826.826 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:35:07,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:35:07,914.914 INFO    ] No camera update needed
[2026-10-28 05:35:07,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:35:07,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:35:07,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:35:07,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:35:09,971.971 INFO    ] ================================================
[2026-10-28 05:35:09,987.987 INFO    ] Launching Daemon at Wed Oct 28 05:35:09 IST 2026
[2026-10-28 05:35:10,998.998 INFO    ] ================================================
[2026-10-28 05:35:10,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:35:10
[2026-10-28 05:35:11,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:35:11,462.462 INFO    ] Initializing speech engine...
[2026-10-28 05:35:11,481.481 INFO    ] 2026-10-28 05:35:11
[2026-10-28 05:35:11,731.731 INFO    ] 2026-10-28 05:35:11
[2026-10-28 05:35:11,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:35:12,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:35:12,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:35:12,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:35:12,299.299 INFO    ] time= 28/10/2026 05:35:12
[2026-10-28 05:35:12,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:35:12,324.324 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:35:12,462.462 INFO    ] No existing commands found in stream
[2026-10-28 05:35:17,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:35:17,494.494 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 05:35:21,221.221 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:35:21,224.224 INFO    ] Checking for system updates...
[2026-10-28 05:35:21,259.259 INFO    ] 200
[2026-10-28 05:35:21,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:35:21,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:35:21,316.316 INFO    ] No update needed
[2026-10-28 05:35:21,319.319 INFO    ] Checking for camera pi updates...
[2026-10-28 05:35:21,352.352 INFO    ] 200
[2026-10-28 05:35:21,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:35:21,398.398 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:35:21,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:35:21,488.488 INFO    ] No camera update needed
[2026-10-28 05:35:21,490.490 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:35:21,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:35:21,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:35:21,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:35:23,544.544 INFO    ] ================================================
[2026-10-28 05:35:23,560.560 INFO    ] Launching Daemon at Wed Oct 28 05:35:23 IST 2026
[2026-10-28 05:35:23,571.571 INFO    ] ================================================
[2026-10-28 05:35:24,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:35:24
[2026-10-28 05:35:24,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:35:25,029.029 INFO    ] Initializing speech engine...
[2026-10-28 05:35:25,036.036 INFO    ] 2026-10-28 05:35:25
[2026-10-28 05:35:25,302.302 INFO    ] 2026-10-28 05:35:25
[2026-10-28 05:35:25,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:35:25,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:35:25,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:35:25,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:35:25,872.872 INFO    ] time= 28/10/2026 05:35:25
[2026-10-28 05:35:25,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:35:25,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:35:26,035.035 INFO    ] No existing commands found in stream
[2026-10-28 05:35:31,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:35:31,058.058 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-28 05:35:32,768.768 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:35:32,772.772 INFO    ] Checking for system updates...
[2026-10-28 05:35:32,814.814 INFO    ] 200
[2026-10-28 05:35:32,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:35:32,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:35:32,879.879 INFO    ] No update needed
[2026-10-28 05:35:32,882.882 INFO    ] Checking for camera pi updates...
[2026-10-28 05:35:32,923.923 INFO    ] 200
[2026-10-28 05:35:32,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:35:32,975.975 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:35:33,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:35:33,096.096 INFO    ] No camera update needed
[2026-10-28 05:35:33,099.099 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:35:33,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:35:33,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:35:33,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:35:35,158.158 INFO    ] ================================================
[2026-10-28 05:35:35,173.173 INFO    ] Launching Daemon at Wed Oct 28 05:35:35 IST 2026
[2026-10-28 05:35:35,184.184 INFO    ] ================================================
[2026-10-28 05:35:35,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:35:35
[2026-10-28 05:35:36,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:35:36,617.617 INFO    ] Initializing speech engine...
[2026-10-28 05:35:36,626.626 INFO    ] 2026-10-28 05:35:36
[2026-10-28 05:35:36,871.871 INFO    ] 2026-10-28 05:35:36
[2026-10-28 05:35:36,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:35:37,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:35:37,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:35:37,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:35:37,474.474 INFO    ] time= 28/10/2026 05:35:37
[2026-10-28 05:35:37,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:35:37,546.546 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:35:37,675.675 INFO    ] No existing commands found in stream
[2026-10-28 05:35:42,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:35:42,692.692 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-28 05:35:46,008.008 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:35:46,011.011 INFO    ] Checking for system updates...
[2026-10-28 05:35:46,054.054 INFO    ] 200
[2026-10-28 05:35:46,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:35:46,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:35:46,117.117 INFO    ] No update needed
[2026-10-28 05:35:46,120.120 INFO    ] Checking for camera pi updates...
[2026-10-28 05:35:46,158.158 INFO    ] 200
[2026-10-28 05:35:46,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:35:46,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:35:46,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:35:46,292.292 INFO    ] No camera update needed
[2026-10-28 05:35:46,295.295 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:35:46,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:35:46,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:35:46,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:35:48,350.350 INFO    ] ================================================
[2026-10-28 05:35:48,366.366 INFO    ] Launching Daemon at Wed Oct 28 05:35:48 IST 2026
[2026-10-28 05:35:48,377.377 INFO    ] ================================================
[2026-10-28 05:35:48,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:35:48
[2026-10-28 05:35:49,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:35:49,829.829 INFO    ] Initializing speech engine...
[2026-10-28 05:35:49,838.838 INFO    ] 2026-10-28 05:35:49
[2026-10-28 05:35:50,087.087 INFO    ] 2026-10-28 05:35:50
[2026-10-28 05:35:50,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:35:50,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:35:50,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:35:50,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:35:50,657.657 INFO    ] time= 28/10/2026 05:35:50
[2026-10-28 05:35:50,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:35:50,698.698 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:35:50,819.819 INFO    ] No existing commands found in stream
[2026-10-28 05:35:55,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:35:55,846.846 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 05:35:59,805.805 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:35:59,808.808 INFO    ] Checking for system updates...
[2026-10-28 05:35:59,844.844 INFO    ] 200
[2026-10-28 05:35:59,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:35:59,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:35:59,901.901 INFO    ] No update needed
[2026-10-28 05:35:59,903.903 INFO    ] Checking for camera pi updates...
[2026-10-28 05:35:59,940.940 INFO    ] 200
[2026-10-28 05:35:59,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:35:59,987.987 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:36:00,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:36:00,189.189 INFO    ] No camera update needed
[2026-10-28 05:36:00,191.191 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:36:00,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:36:00,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:36:00,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:36:02,261.261 INFO    ] ================================================
[2026-10-28 05:36:02,284.284 INFO    ] Launching Daemon at Wed Oct 28 05:36:02 IST 2026
[2026-10-28 05:36:02,301.301 INFO    ] ================================================
[2026-10-28 05:36:02,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:36:02
[2026-10-28 05:36:03,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:36:03,821.821 INFO    ] Initializing speech engine...
[2026-10-28 05:36:03,844.844 INFO    ] 2026-10-28 05:36:03
[2026-10-28 05:36:04,101.101 INFO    ] 2026-10-28 05:36:04
[2026-10-28 05:36:04,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:36:04,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:36:04,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:36:04,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:36:04,670.670 INFO    ] time= 28/10/2026 05:36:04
[2026-10-28 05:36:04,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:36:04,695.695 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:36:04,826.826 INFO    ] No existing commands found in stream
[2026-10-28 05:36:09,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:36:09,845.845 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-28 05:36:13,326.326 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:36:13,328.328 INFO    ] Checking for system updates...
[2026-10-28 05:36:13,368.368 INFO    ] 200
[2026-10-28 05:36:13,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:36:13,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:36:13,425.425 INFO    ] No update needed
[2026-10-28 05:36:13,428.428 INFO    ] Checking for camera pi updates...
[2026-10-28 05:36:13,466.466 INFO    ] 200
[2026-10-28 05:36:13,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:36:13,508.508 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:36:13,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:36:13,609.609 INFO    ] No camera update needed
[2026-10-28 05:36:13,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:36:13,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:36:13,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:36:13,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:36:15,663.663 INFO    ] ================================================
[2026-10-28 05:36:15,678.678 INFO    ] Launching Daemon at Wed Oct 28 05:36:15 IST 2026
[2026-10-28 05:36:15,689.689 INFO    ] ================================================
[2026-10-28 05:36:16,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:36:16
[2026-10-28 05:36:16,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:36:17,139.139 INFO    ] Initializing speech engine...
[2026-10-28 05:36:17,147.147 INFO    ] 2026-10-28 05:36:17
[2026-10-28 05:36:17,408.408 INFO    ] 2026-10-28 05:36:17
[2026-10-28 05:36:17,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:36:17,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:36:17,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:36:17,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:36:17,951.951 INFO    ] time= 28/10/2026 05:36:17
[2026-10-28 05:36:17,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:36:17,977.977 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:36:18,105.105 INFO    ] No existing commands found in stream
[2026-10-28 05:36:23,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:36:23,125.125 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-28 05:36:27,284.284 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:36:27,286.286 INFO    ] Checking for system updates...
[2026-10-28 05:36:27,327.327 INFO    ] 200
[2026-10-28 05:36:27,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:36:27,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:36:27,392.392 INFO    ] No update needed
[2026-10-28 05:36:27,395.395 INFO    ] Checking for camera pi updates...
[2026-10-28 05:36:27,434.434 INFO    ] 200
[2026-10-28 05:36:27,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:36:27,483.483 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:36:27,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:36:27,567.567 INFO    ] No camera update needed
[2026-10-28 05:36:27,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:36:27,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:36:27,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:36:27,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:36:29,626.626 INFO    ] ================================================
[2026-10-28 05:36:29,642.642 INFO    ] Launching Daemon at Wed Oct 28 05:36:29 IST 2026
[2026-10-28 05:36:29,652.652 INFO    ] ================================================
[2026-10-28 05:36:30,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:36:30
[2026-10-28 05:36:30,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:36:31,162.162 INFO    ] Initializing speech engine...
[2026-10-28 05:36:31,176.176 INFO    ] 2026-10-28 05:36:31
[2026-10-28 05:36:31,460.460 INFO    ] 2026-10-28 05:36:31
[2026-10-28 05:36:31,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:36:31,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:36:31,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:36:32,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:36:32,047.047 INFO    ] time= 28/10/2026 05:36:32
[2026-10-28 05:36:32,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:36:32,096.096 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:36:32,214.214 INFO    ] No existing commands found in stream
[2026-10-28 05:36:37,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:36:37,252.252 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-28 05:36:40,220.220 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:36:40,222.222 INFO    ] Checking for system updates...
[2026-10-28 05:36:40,263.263 INFO    ] 200
[2026-10-28 05:36:40,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:36:40,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:36:40,320.320 INFO    ] No update needed
[2026-10-28 05:36:40,323.323 INFO    ] Checking for camera pi updates...
[2026-10-28 05:36:40,361.361 INFO    ] 200
[2026-10-28 05:36:40,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:36:40,410.410 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:36:40,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:36:40,493.493 INFO    ] No camera update needed
[2026-10-28 05:36:40,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:36:40,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:36:40,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:36:40,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:36:42,548.548 INFO    ] ================================================
[2026-10-28 05:36:42,566.566 INFO    ] Launching Daemon at Wed Oct 28 05:36:42 IST 2026
[2026-10-28 05:36:42,577.577 INFO    ] ================================================
[2026-10-28 05:36:43,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:36:43
[2026-10-28 05:36:43,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:36:44,235.235 INFO    ] Initializing speech engine...
[2026-10-28 05:36:44,249.249 INFO    ] 2026-10-28 05:36:44
[2026-10-28 05:36:44,539.539 INFO    ] 2026-10-28 05:36:44
[2026-10-28 05:36:44,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:36:44,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:36:44,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:36:45,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:36:45,084.084 INFO    ] time= 28/10/2026 05:36:45
[2026-10-28 05:36:45,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:36:45,121.121 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:36:45,238.238 INFO    ] No existing commands found in stream
[2026-10-28 05:36:50,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:36:50,272.272 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 05:36:52,763.763 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:36:52,766.766 INFO    ] Checking for system updates...
[2026-10-28 05:36:52,802.802 INFO    ] 200
[2026-10-28 05:36:52,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:36:52,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:36:52,867.867 INFO    ] No update needed
[2026-10-28 05:36:52,869.869 INFO    ] Checking for camera pi updates...
[2026-10-28 05:36:52,907.907 INFO    ] 200
[2026-10-28 05:36:52,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:36:52,955.955 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:36:53,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:36:53,029.029 INFO    ] No camera update needed
[2026-10-28 05:36:53,031.031 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:36:53,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:36:53,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:36:53,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:36:55,083.083 INFO    ] ================================================
[2026-10-28 05:36:55,098.098 INFO    ] Launching Daemon at Wed Oct 28 05:36:55 IST 2026
[2026-10-28 05:36:55,109.109 INFO    ] ================================================
[2026-10-28 05:36:55,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:36:55
[2026-10-28 05:36:56,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:36:56,589.589 INFO    ] Initializing speech engine...
[2026-10-28 05:36:56,600.600 INFO    ] 2026-10-28 05:36:56
[2026-10-28 05:36:56,844.844 INFO    ] 2026-10-28 05:36:56
[2026-10-28 05:36:56,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:36:57,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:36:57,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:36:57,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:36:57,396.396 INFO    ] time= 28/10/2026 05:36:57
[2026-10-28 05:36:57,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:36:57,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:36:57,549.549 INFO    ] No existing commands found in stream
[2026-10-28 05:37:02,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:37:02,572.572 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 05:37:06,488.488 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:37:06,490.490 INFO    ] Checking for system updates...
[2026-10-28 05:37:06,529.529 INFO    ] 200
[2026-10-28 05:37:06,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:37:06,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:37:06,590.590 INFO    ] No update needed
[2026-10-28 05:37:06,592.592 INFO    ] Checking for camera pi updates...
[2026-10-28 05:37:06,629.629 INFO    ] 200
[2026-10-28 05:37:06,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:37:06,675.675 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:37:06,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:37:06,753.753 INFO    ] No camera update needed
[2026-10-28 05:37:06,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:37:06,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:37:06,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:37:06,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:37:08,809.809 INFO    ] ================================================
[2026-10-28 05:37:08,824.824 INFO    ] Launching Daemon at Wed Oct 28 05:37:08 IST 2026
[2026-10-28 05:37:08,834.834 INFO    ] ================================================
[2026-10-28 05:37:09,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:37:09
[2026-10-28 05:37:10,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:37:10,340.340 INFO    ] Initializing speech engine...
[2026-10-28 05:37:10,347.347 INFO    ] 2026-10-28 05:37:10
[2026-10-28 05:37:10,616.616 INFO    ] 2026-10-28 05:37:10
[2026-10-28 05:37:10,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:37:10,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:37:10,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:37:11,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:37:11,175.175 INFO    ] time= 28/10/2026 05:37:11
[2026-10-28 05:37:11,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:37:11,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:37:11,333.333 INFO    ] No existing commands found in stream
[2026-10-28 05:37:16,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:37:16,359.359 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 05:37:17,998.998 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:37:18,001.001 INFO    ] Checking for system updates...
[2026-10-28 05:37:18,040.040 INFO    ] 200
[2026-10-28 05:37:18,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:37:18,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:37:18,105.105 INFO    ] No update needed
[2026-10-28 05:37:18,108.108 INFO    ] Checking for camera pi updates...
[2026-10-28 05:37:18,145.145 INFO    ] 200
[2026-10-28 05:37:18,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:37:18,189.189 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:37:18,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:37:18,277.277 INFO    ] No camera update needed
[2026-10-28 05:37:18,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:37:18,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:37:18,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:37:18,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:37:20,334.334 INFO    ] ================================================
[2026-10-28 05:37:20,349.349 INFO    ] Launching Daemon at Wed Oct 28 05:37:20 IST 2026
[2026-10-28 05:37:20,360.360 INFO    ] ================================================
[2026-10-28 05:37:20,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:37:20
[2026-10-28 05:37:21,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:37:21,794.794 INFO    ] Initializing speech engine...
[2026-10-28 05:37:21,803.803 INFO    ] 2026-10-28 05:37:21
[2026-10-28 05:37:22,051.051 INFO    ] 2026-10-28 05:37:22
[2026-10-28 05:37:22,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:37:22,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:37:22,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:37:22,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:37:22,616.616 INFO    ] time= 28/10/2026 05:37:22
[2026-10-28 05:37:22,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:37:22,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:37:22,762.762 INFO    ] No existing commands found in stream
[2026-10-28 05:37:27,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:37:27,785.785 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 05:37:31,018.018 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:37:31,021.021 INFO    ] Checking for system updates...
[2026-10-28 05:37:31,060.060 INFO    ] 200
[2026-10-28 05:37:31,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:37:31,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:37:31,124.124 INFO    ] No update needed
[2026-10-28 05:37:31,127.127 INFO    ] Checking for camera pi updates...
[2026-10-28 05:37:31,165.165 INFO    ] 200
[2026-10-28 05:37:31,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:37:31,213.213 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:37:31,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:37:31,289.289 INFO    ] No camera update needed
[2026-10-28 05:37:31,292.292 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:37:31,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:37:31,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:37:31,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:37:33,348.348 INFO    ] ================================================
[2026-10-28 05:37:33,363.363 INFO    ] Launching Daemon at Wed Oct 28 05:37:33 IST 2026
[2026-10-28 05:37:33,374.374 INFO    ] ================================================
[2026-10-28 05:37:33,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:37:33
[2026-10-28 05:37:34,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:37:34,828.828 INFO    ] Initializing speech engine...
[2026-10-28 05:37:34,837.837 INFO    ] 2026-10-28 05:37:34
[2026-10-28 05:37:35,096.096 INFO    ] 2026-10-28 05:37:35
[2026-10-28 05:37:35,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:37:35,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:37:35,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:37:35,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:37:35,643.643 INFO    ] time= 28/10/2026 05:37:35
[2026-10-28 05:37:35,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:37:35,685.685 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:37:35,822.822 INFO    ] No existing commands found in stream
[2026-10-28 05:37:40,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:37:40,849.849 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-28 05:37:43,268.268 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:37:43,271.271 INFO    ] Checking for system updates...
[2026-10-28 05:37:43,306.306 INFO    ] 200
[2026-10-28 05:37:43,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:37:43,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:37:43,369.369 INFO    ] No update needed
[2026-10-28 05:37:43,372.372 INFO    ] Checking for camera pi updates...
[2026-10-28 05:37:43,411.411 INFO    ] 200
[2026-10-28 05:37:43,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:37:43,464.464 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:37:43,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:37:43,548.548 INFO    ] No camera update needed
[2026-10-28 05:37:43,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:37:43,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:37:43,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:37:43,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:37:45,606.606 INFO    ] ================================================
[2026-10-28 05:37:45,621.621 INFO    ] Launching Daemon at Wed Oct 28 05:37:45 IST 2026
[2026-10-28 05:37:45,632.632 INFO    ] ================================================
[2026-10-28 05:37:46,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:37:46
[2026-10-28 05:37:46,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:37:47,222.222 INFO    ] Initializing speech engine...
[2026-10-28 05:37:47,231.231 INFO    ] 2026-10-28 05:37:47
[2026-10-28 05:37:47,516.516 INFO    ] 2026-10-28 05:37:47
[2026-10-28 05:37:47,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:37:47,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:37:47,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:37:48,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:37:48,250.250 INFO    ] time= 28/10/2026 05:37:48
[2026-10-28 05:37:48,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:37:48,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:37:48,512.512 INFO    ] No existing commands found in stream
[2026-10-28 05:37:53,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:37:53,530.530 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-28 05:37:55,661.661 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:37:55,664.664 INFO    ] Checking for system updates...
[2026-10-28 05:37:55,702.702 INFO    ] 200
[2026-10-28 05:37:55,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:37:55,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:37:55,759.759 INFO    ] No update needed
[2026-10-28 05:37:55,761.761 INFO    ] Checking for camera pi updates...
[2026-10-28 05:37:55,794.794 INFO    ] 200
[2026-10-28 05:37:55,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:37:55,837.837 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:37:55,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:37:55,936.936 INFO    ] No camera update needed
[2026-10-28 05:37:55,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:37:55,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:37:55,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:37:55,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:37:58,998.998 INFO    ] ================================================
[2026-10-28 05:37:58,013.013 INFO    ] Launching Daemon at Wed Oct 28 05:37:58 IST 2026
[2026-10-28 05:37:58,024.024 INFO    ] ================================================
[2026-10-28 05:37:58,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:37:58
[2026-10-28 05:37:59,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:37:59,561.561 INFO    ] Initializing speech engine...
[2026-10-28 05:37:59,570.570 INFO    ] 2026-10-28 05:37:59
[2026-10-28 05:37:59,830.830 INFO    ] 2026-10-28 05:37:59
[2026-10-28 05:37:59,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:38:00,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:38:00,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:38:00,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:38:00,308.308 INFO    ] time= 28/10/2026 05:38:00
[2026-10-28 05:38:00,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:38:00,406.406 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:38:00,510.510 INFO    ] No existing commands found in stream
[2026-10-28 05:38:05,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:38:05,525.525 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-28 05:38:07,005.005 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:38:07,008.008 INFO    ] Checking for system updates...
[2026-10-28 05:38:07,044.044 INFO    ] 200
[2026-10-28 05:38:07,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:38:07,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:38:07,110.110 INFO    ] No update needed
[2026-10-28 05:38:07,113.113 INFO    ] Checking for camera pi updates...
[2026-10-28 05:38:07,147.147 INFO    ] 200
[2026-10-28 05:38:07,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:38:07,196.196 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:38:07,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:38:07,298.298 INFO    ] No camera update needed
[2026-10-28 05:38:07,301.301 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:38:07,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:38:07,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:38:07,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:38:09,356.356 INFO    ] ================================================
[2026-10-28 05:38:09,370.370 INFO    ] Launching Daemon at Wed Oct 28 05:38:09 IST 2026
[2026-10-28 05:38:09,381.381 INFO    ] ================================================
[2026-10-28 05:38:09,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:38:09
[2026-10-28 05:38:10,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:38:10,823.823 INFO    ] Initializing speech engine...
[2026-10-28 05:38:10,833.833 INFO    ] 2026-10-28 05:38:10
[2026-10-28 05:38:11,090.090 INFO    ] 2026-10-28 05:38:11
[2026-10-28 05:38:11,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:38:11,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:38:11,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:38:11,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:38:11,631.631 INFO    ] time= 28/10/2026 05:38:11
[2026-10-28 05:38:11,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:38:11,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:38:11,784.784 INFO    ] No existing commands found in stream
[2026-10-28 05:38:16,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:38:16,800.800 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 05:38:19,877.877 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:38:19,881.881 INFO    ] Checking for system updates...
[2026-10-28 05:38:19,922.922 INFO    ] 200
[2026-10-28 05:38:19,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:38:19,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:38:19,986.986 INFO    ] No update needed
[2026-10-28 05:38:19,989.989 INFO    ] Checking for camera pi updates...
[2026-10-28 05:38:20,023.023 INFO    ] 200
[2026-10-28 05:38:20,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:38:20,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:38:20,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:38:20,168.168 INFO    ] No camera update needed
[2026-10-28 05:38:20,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:38:20,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:38:20,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:38:20,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:38:22,225.225 INFO    ] ================================================
[2026-10-28 05:38:22,240.240 INFO    ] Launching Daemon at Wed Oct 28 05:38:22 IST 2026
[2026-10-28 05:38:22,251.251 INFO    ] ================================================
[2026-10-28 05:38:22,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:38:22
[2026-10-28 05:38:23,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:38:23,679.679 INFO    ] Initializing speech engine...
[2026-10-28 05:38:23,686.686 INFO    ] 2026-10-28 05:38:23
[2026-10-28 05:38:23,945.945 INFO    ] 2026-10-28 05:38:23
[2026-10-28 05:38:23,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:38:24,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:38:24,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:38:24,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:38:24,490.490 INFO    ] time= 28/10/2026 05:38:24
[2026-10-28 05:38:24,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:38:24,517.517 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:38:24,643.643 INFO    ] No existing commands found in stream
[2026-10-28 05:38:29,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:38:29,661.661 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-28 05:38:32,764.764 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:38:32,767.767 INFO    ] Checking for system updates...
[2026-10-28 05:38:32,804.804 INFO    ] 200
[2026-10-28 05:38:32,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:38:32,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:38:32,861.861 INFO    ] No update needed
[2026-10-28 05:38:32,864.864 INFO    ] Checking for camera pi updates...
[2026-10-28 05:38:32,897.897 INFO    ] 200
[2026-10-28 05:38:32,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:38:32,940.940 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:38:33,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:38:33,036.036 INFO    ] No camera update needed
[2026-10-28 05:38:33,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:38:33,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:38:33,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:38:33,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:38:35,093.093 INFO    ] ================================================
[2026-10-28 05:38:35,108.108 INFO    ] Launching Daemon at Wed Oct 28 05:38:35 IST 2026
[2026-10-28 05:38:35,119.119 INFO    ] ================================================
[2026-10-28 05:38:35,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:38:35
[2026-10-28 05:38:36,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:38:36,541.541 INFO    ] Initializing speech engine...
[2026-10-28 05:38:36,548.548 INFO    ] 2026-10-28 05:38:36
[2026-10-28 05:38:36,805.805 INFO    ] 2026-10-28 05:38:36
[2026-10-28 05:38:36,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:38:37,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:38:37,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:38:37,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:38:37,344.344 INFO    ] time= 28/10/2026 05:38:37
[2026-10-28 05:38:37,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:38:37,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:38:37,499.499 INFO    ] No existing commands found in stream
[2026-10-28 05:38:42,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:38:42,524.524 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-28 05:38:44,163.163 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:38:44,166.166 INFO    ] Checking for system updates...
[2026-10-28 05:38:44,202.202 INFO    ] 200
[2026-10-28 05:38:44,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:38:44,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:38:44,260.260 INFO    ] No update needed
[2026-10-28 05:38:44,263.263 INFO    ] Checking for camera pi updates...
[2026-10-28 05:38:44,297.297 INFO    ] 200
[2026-10-28 05:38:44,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:38:44,342.342 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:38:44,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:38:44,436.436 INFO    ] No camera update needed
[2026-10-28 05:38:44,439.439 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:38:44,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:38:44,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:38:44,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:38:46,496.496 INFO    ] ================================================
[2026-10-28 05:38:46,511.511 INFO    ] Launching Daemon at Wed Oct 28 05:38:46 IST 2026
[2026-10-28 05:38:46,522.522 INFO    ] ================================================
[2026-10-28 05:38:47,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:38:47
[2026-10-28 05:38:47,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:38:47,937.937 INFO    ] Initializing speech engine...
[2026-10-28 05:38:47,955.955 INFO    ] 2026-10-28 05:38:47
[2026-10-28 05:38:48,226.226 INFO    ] 2026-10-28 05:38:48
[2026-10-28 05:38:48,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:38:48,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:38:48,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:38:48,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:38:48,735.735 INFO    ] time= 28/10/2026 05:38:48
[2026-10-28 05:38:48,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:38:48,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:38:49,006.006 INFO    ] No existing commands found in stream
[2026-10-28 05:38:54,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:38:54,026.026 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-28 05:38:56,263.263 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:38:56,266.266 INFO    ] Checking for system updates...
[2026-10-28 05:38:56,302.302 INFO    ] 200
[2026-10-28 05:38:56,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:38:56,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:38:56,369.369 INFO    ] No update needed
[2026-10-28 05:38:56,371.371 INFO    ] Checking for camera pi updates...
[2026-10-28 05:38:56,408.408 INFO    ] 200
[2026-10-28 05:38:56,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:38:56,455.455 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:38:56,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:38:56,526.526 INFO    ] No camera update needed
[2026-10-28 05:38:56,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:38:56,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:38:56,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:38:56,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:38:58,581.581 INFO    ] ================================================
[2026-10-28 05:38:58,596.596 INFO    ] Launching Daemon at Wed Oct 28 05:38:58 IST 2026
[2026-10-28 05:38:58,606.606 INFO    ] ================================================
[2026-10-28 05:38:59,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:38:59
[2026-10-28 05:38:59,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:39:00,014.014 INFO    ] Initializing speech engine...
[2026-10-28 05:39:00,027.027 INFO    ] 2026-10-28 05:39:00
[2026-10-28 05:39:00,312.312 INFO    ] 2026-10-28 05:39:00
[2026-10-28 05:39:00,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:39:00,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:39:00,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:39:00,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:39:00,932.932 INFO    ] time= 28/10/2026 05:39:00
[2026-10-28 05:39:00,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:39:00,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:39:01,121.121 INFO    ] No existing commands found in stream
[2026-10-28 05:39:06,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:39:06,140.140 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-28 05:39:09,447.447 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:39:09,450.450 INFO    ] Checking for system updates...
[2026-10-28 05:39:09,488.488 INFO    ] 200
[2026-10-28 05:39:09,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:39:09,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:39:09,545.545 INFO    ] No update needed
[2026-10-28 05:39:09,548.548 INFO    ] Checking for camera pi updates...
[2026-10-28 05:39:09,581.581 INFO    ] 200
[2026-10-28 05:39:09,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:39:09,626.626 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:39:09,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:39:09,721.721 INFO    ] No camera update needed
[2026-10-28 05:39:09,724.724 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:39:09,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:39:09,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:39:09,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:39:11,777.777 INFO    ] ================================================
[2026-10-28 05:39:11,792.792 INFO    ] Launching Daemon at Wed Oct 28 05:39:11 IST 2026
[2026-10-28 05:39:11,803.803 INFO    ] ================================================
[2026-10-28 05:39:12,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:39:12
[2026-10-28 05:39:12,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:39:13,216.216 INFO    ] Initializing speech engine...
[2026-10-28 05:39:13,232.232 INFO    ] 2026-10-28 05:39:13
[2026-10-28 05:39:13,511.511 INFO    ] 2026-10-28 05:39:13
[2026-10-28 05:39:13,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:39:13,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:39:13,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:39:13,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:39:13,996.996 INFO    ] time= 28/10/2026 05:39:13
[2026-10-28 05:39:14,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:39:14,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:39:14,198.198 INFO    ] No existing commands found in stream
[2026-10-28 05:39:19,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:39:19,208.208 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-28 05:39:20,841.841 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:39:20,843.843 INFO    ] Checking for system updates...
[2026-10-28 05:39:20,878.878 INFO    ] 200
[2026-10-28 05:39:20,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:39:20,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:39:20,935.935 INFO    ] No update needed
[2026-10-28 05:39:20,937.937 INFO    ] Checking for camera pi updates...
[2026-10-28 05:39:20,974.974 INFO    ] 200
[2026-10-28 05:39:20,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:39:21,016.016 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:39:21,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:39:21,099.099 INFO    ] No camera update needed
[2026-10-28 05:39:21,101.101 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:39:21,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:39:21,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:39:21,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:39:23,156.156 INFO    ] ================================================
[2026-10-28 05:39:23,170.170 INFO    ] Launching Daemon at Wed Oct 28 05:39:23 IST 2026
[2026-10-28 05:39:23,181.181 INFO    ] ================================================
[2026-10-28 05:39:23,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:39:23
[2026-10-28 05:39:24,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:39:24,773.773 INFO    ] Initializing speech engine...
[2026-10-28 05:39:24,781.781 INFO    ] 2026-10-28 05:39:24
[2026-10-28 05:39:25,056.056 INFO    ] 2026-10-28 05:39:25
[2026-10-28 05:39:25,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:39:25,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:39:25,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:39:25,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:39:25,617.617 INFO    ] time= 28/10/2026 05:39:25
[2026-10-28 05:39:25,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:39:25,656.656 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:39:25,783.783 INFO    ] No existing commands found in stream
[2026-10-28 05:39:30,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:39:30,817.817 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 05:39:31,941.941 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:39:31,945.945 INFO    ] Checking for system updates...
[2026-10-28 05:39:31,986.986 INFO    ] 200
[2026-10-28 05:39:31,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:39:32,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:39:32,047.047 INFO    ] No update needed
[2026-10-28 05:39:32,050.050 INFO    ] Checking for camera pi updates...
[2026-10-28 05:39:32,092.092 INFO    ] 200
[2026-10-28 05:39:32,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:39:32,141.141 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:39:32,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:39:32,245.245 INFO    ] No camera update needed
[2026-10-28 05:39:32,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:39:32,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:39:32,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:39:32,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:39:34,304.304 INFO    ] ================================================
[2026-10-28 05:39:34,320.320 INFO    ] Launching Daemon at Wed Oct 28 05:39:34 IST 2026
[2026-10-28 05:39:34,330.330 INFO    ] ================================================
[2026-10-28 05:39:34,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:39:34
[2026-10-28 05:39:35,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:39:35,932.932 INFO    ] Initializing speech engine...
[2026-10-28 05:39:35,943.943 INFO    ] 2026-10-28 05:39:35
[2026-10-28 05:39:36,250.250 INFO    ] 2026-10-28 05:39:36
[2026-10-28 05:39:36,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:39:36,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:39:36,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:39:36,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:39:36,847.847 INFO    ] time= 28/10/2026 05:39:36
[2026-10-28 05:39:36,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:39:36,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:39:37,098.098 INFO    ] No existing commands found in stream
[2026-10-28 05:39:42,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:39:42,132.132 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 05:39:43,911.911 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:39:43,914.914 INFO    ] Checking for system updates...
[2026-10-28 05:39:43,950.950 INFO    ] 200
[2026-10-28 05:39:43,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:39:44,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:39:44,009.009 INFO    ] No update needed
[2026-10-28 05:39:44,011.011 INFO    ] Checking for camera pi updates...
[2026-10-28 05:39:44,045.045 INFO    ] 200
[2026-10-28 05:39:44,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:39:44,089.089 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:39:44,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:39:44,183.183 INFO    ] No camera update needed
[2026-10-28 05:39:44,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:39:44,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:39:44,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:39:44,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:39:46,241.241 INFO    ] ================================================
[2026-10-28 05:39:46,256.256 INFO    ] Launching Daemon at Wed Oct 28 05:39:46 IST 2026
[2026-10-28 05:39:46,267.267 INFO    ] ================================================
[2026-10-28 05:39:46,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:39:46
[2026-10-28 05:39:47,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:39:47,858.858 INFO    ] Initializing speech engine...
[2026-10-28 05:39:47,871.871 INFO    ] 2026-10-28 05:39:47
[2026-10-28 05:39:48,177.177 INFO    ] 2026-10-28 05:39:48
[2026-10-28 05:39:48,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:39:48,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:39:48,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:39:48,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:39:48,679.679 INFO    ] time= 28/10/2026 05:39:48
[2026-10-28 05:39:48,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:39:48,727.727 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:39:48,847.847 INFO    ] No existing commands found in stream
[2026-10-28 05:39:53,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:39:53,881.881 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-28 05:39:58,301.301 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:39:58,304.304 INFO    ] Checking for system updates...
[2026-10-28 05:39:58,339.339 INFO    ] 200
[2026-10-28 05:39:58,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:39:58,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:39:58,400.400 INFO    ] No update needed
[2026-10-28 05:39:58,402.402 INFO    ] Checking for camera pi updates...
[2026-10-28 05:39:58,435.435 INFO    ] 200
[2026-10-28 05:39:58,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:39:58,486.486 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:39:58,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:39:58,568.568 INFO    ] No camera update needed
[2026-10-28 05:39:58,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:39:58,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:39:58,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:39:58,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:40:00,624.624 INFO    ] ================================================
[2026-10-28 05:40:00,639.639 INFO    ] Launching Daemon at Wed Oct 28 05:40:00 IST 2026
[2026-10-28 05:40:00,650.650 INFO    ] ================================================
[2026-10-28 05:40:01,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:40:01
[2026-10-28 05:40:01,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:40:02,899.899 INFO    ] Initializing speech engine...
[2026-10-28 05:40:02,903.903 INFO    ] 2026-10-28 05:40:02
[2026-10-28 05:40:03,324.324 INFO    ] 2026-10-28 05:40:03
[2026-10-28 05:40:03,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:40:03,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:40:03,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:40:03,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:40:03,984.984 INFO    ] time= 28/10/2026 05:40:03
[2026-10-28 05:40:04,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:40:04,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:40:04,196.196 INFO    ] No existing commands found in stream
[2026-10-28 05:40:09,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:40:09,220.220 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-28 05:40:12,401.401 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:40:12,403.403 INFO    ] Checking for system updates...
[2026-10-28 05:40:12,439.439 INFO    ] 200
[2026-10-28 05:40:12,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:40:12,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:40:12,502.502 INFO    ] No update needed
[2026-10-28 05:40:12,504.504 INFO    ] Checking for camera pi updates...
[2026-10-28 05:40:12,538.538 INFO    ] 200
[2026-10-28 05:40:12,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:40:12,580.580 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:40:12,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:40:12,767.767 INFO    ] No camera update needed
[2026-10-28 05:40:12,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:40:12,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:40:12,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:40:12,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:40:14,824.824 INFO    ] ================================================
[2026-10-28 05:40:14,839.839 INFO    ] Launching Daemon at Wed Oct 28 05:40:14 IST 2026
[2026-10-28 05:40:14,849.849 INFO    ] ================================================
[2026-10-28 05:40:15,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:40:15
[2026-10-28 05:40:16,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:40:16,446.446 INFO    ] Initializing speech engine...
[2026-10-28 05:40:16,457.457 INFO    ] 2026-10-28 05:40:16
[2026-10-28 05:40:16,733.733 INFO    ] 2026-10-28 05:40:16
[2026-10-28 05:40:16,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:40:17,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:40:17,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:40:17,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:40:17,300.300 INFO    ] time= 28/10/2026 05:40:17
[2026-10-28 05:40:17,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:40:17,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:40:17,489.489 INFO    ] No existing commands found in stream
[2026-10-28 05:40:22,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:40:22,503.503 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-28 05:40:23,219.219 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:40:23,222.222 INFO    ] Checking for system updates...
[2026-10-28 05:40:23,259.259 INFO    ] 200
[2026-10-28 05:40:23,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:40:23,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:40:23,317.317 INFO    ] No update needed
[2026-10-28 05:40:23,320.320 INFO    ] Checking for camera pi updates...
[2026-10-28 05:40:23,354.354 INFO    ] 200
[2026-10-28 05:40:23,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:40:23,398.398 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:40:23,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:40:23,480.480 INFO    ] No camera update needed
[2026-10-28 05:40:23,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:40:23,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:40:23,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:40:23,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:40:25,541.541 INFO    ] ================================================
[2026-10-28 05:40:25,557.557 INFO    ] Launching Daemon at Wed Oct 28 05:40:25 IST 2026
[2026-10-28 05:40:25,568.568 INFO    ] ================================================
[2026-10-28 05:40:26,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:40:26
[2026-10-28 05:40:26,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:40:26,975.975 INFO    ] Initializing speech engine...
[2026-10-28 05:40:26,981.981 INFO    ] 2026-10-28 05:40:26
[2026-10-28 05:40:27,253.253 INFO    ] 2026-10-28 05:40:27
[2026-10-28 05:40:27,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:40:27,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:40:27,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:40:27,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:40:27,824.824 INFO    ] time= 28/10/2026 05:40:27
[2026-10-28 05:40:27,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:40:27,871.871 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:40:28,009.009 INFO    ] No existing commands found in stream
[2026-10-28 05:40:33,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:40:33,037.037 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 05:40:34,765.765 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:40:34,767.767 INFO    ] Checking for system updates...
[2026-10-28 05:40:34,807.807 INFO    ] 200
[2026-10-28 05:40:34,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:40:34,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:40:34,869.869 INFO    ] No update needed
[2026-10-28 05:40:34,872.872 INFO    ] Checking for camera pi updates...
[2026-10-28 05:40:34,909.909 INFO    ] 200
[2026-10-28 05:40:34,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:40:34,953.953 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:40:35,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:40:35,036.036 INFO    ] No camera update needed
[2026-10-28 05:40:35,039.039 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:40:35,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:40:35,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:40:35,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:40:37,095.095 INFO    ] ================================================
[2026-10-28 05:40:37,111.111 INFO    ] Launching Daemon at Wed Oct 28 05:40:37 IST 2026
[2026-10-28 05:40:37,122.122 INFO    ] ================================================
[2026-10-28 05:40:37,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:40:37
[2026-10-28 05:40:38,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:40:38,550.550 INFO    ] Initializing speech engine...
[2026-10-28 05:40:38,563.563 INFO    ] 2026-10-28 05:40:38
[2026-10-28 05:40:38,844.844 INFO    ] 2026-10-28 05:40:38
[2026-10-28 05:40:38,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:40:39,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:40:39,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:40:39,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:40:39,460.460 INFO    ] time= 28/10/2026 05:40:39
[2026-10-28 05:40:39,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:40:39,479.479 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:40:39,624.624 INFO    ] No existing commands found in stream
[2026-10-28 05:40:44,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:40:44,653.653 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-28 05:40:46,499.499 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:40:46,502.502 INFO    ] Checking for system updates...
[2026-10-28 05:40:46,542.542 INFO    ] 200
[2026-10-28 05:40:46,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:40:46,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:40:46,600.600 INFO    ] No update needed
[2026-10-28 05:40:46,603.603 INFO    ] Checking for camera pi updates...
[2026-10-28 05:40:46,640.640 INFO    ] 200
[2026-10-28 05:40:46,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:40:46,689.689 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:40:46,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:40:46,774.774 INFO    ] No camera update needed
[2026-10-28 05:40:46,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:40:46,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:40:46,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:40:46,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:40:48,832.832 INFO    ] ================================================
[2026-10-28 05:40:48,847.847 INFO    ] Launching Daemon at Wed Oct 28 05:40:48 IST 2026
[2026-10-28 05:40:48,858.858 INFO    ] ================================================
[2026-10-28 05:40:49,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:40:49
[2026-10-28 05:40:50,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:40:50,454.454 INFO    ] Initializing speech engine...
[2026-10-28 05:40:50,467.467 INFO    ] 2026-10-28 05:40:50
[2026-10-28 05:40:50,746.746 INFO    ] 2026-10-28 05:40:50
[2026-10-28 05:40:50,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:40:51,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:40:51,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:40:51,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:40:51,286.286 INFO    ] time= 28/10/2026 05:40:51
[2026-10-28 05:40:51,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:40:51,333.333 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:40:51,470.470 INFO    ] No existing commands found in stream
[2026-10-28 05:40:56,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:40:56,504.504 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-28 05:41:00,089.089 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:41:00,091.091 INFO    ] Checking for system updates...
[2026-10-28 05:41:00,128.128 INFO    ] 200
[2026-10-28 05:41:00,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:41:00,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:41:00,186.186 INFO    ] No update needed
[2026-10-28 05:41:00,189.189 INFO    ] Checking for camera pi updates...
[2026-10-28 05:41:00,223.223 INFO    ] 200
[2026-10-28 05:41:00,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:41:00,267.267 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:41:00,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:41:00,359.359 INFO    ] No camera update needed
[2026-10-28 05:41:00,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:41:00,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:41:00,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:41:00,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:41:02,436.436 INFO    ] ================================================
[2026-10-28 05:41:02,459.459 INFO    ] Launching Daemon at Wed Oct 28 05:41:02 IST 2026
[2026-10-28 05:41:02,472.472 INFO    ] ================================================
[2026-10-28 05:41:03,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:41:03
[2026-10-28 05:41:03,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:41:04,038.038 INFO    ] Initializing speech engine...
[2026-10-28 05:41:04,047.047 INFO    ] 2026-10-28 05:41:04
[2026-10-28 05:41:04,304.304 INFO    ] 2026-10-28 05:41:04
[2026-10-28 05:41:04,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:41:04,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:41:04,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:41:04,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:41:04,847.847 INFO    ] time= 28/10/2026 05:41:04
[2026-10-28 05:41:04,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:41:04,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:41:05,064.064 INFO    ] No existing commands found in stream
[2026-10-28 05:41:10,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:41:10,098.098 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 05:41:13,141.141 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:41:13,144.144 INFO    ] Checking for system updates...
[2026-10-28 05:41:13,179.179 INFO    ] 200
[2026-10-28 05:41:13,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:41:13,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:41:13,238.238 INFO    ] No update needed
[2026-10-28 05:41:13,241.241 INFO    ] Checking for camera pi updates...
[2026-10-28 05:41:13,274.274 INFO    ] 200
[2026-10-28 05:41:13,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:41:13,317.317 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:41:13,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:41:13,404.404 INFO    ] No camera update needed
[2026-10-28 05:41:13,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:41:13,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:41:13,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:41:13,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:41:15,460.460 INFO    ] ================================================
[2026-10-28 05:41:15,476.476 INFO    ] Launching Daemon at Wed Oct 28 05:41:15 IST 2026
[2026-10-28 05:41:15,488.488 INFO    ] ================================================
[2026-10-28 05:41:16,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:41:16
[2026-10-28 05:41:16,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:41:16,913.913 INFO    ] Initializing speech engine...
[2026-10-28 05:41:16,918.918 INFO    ] 2026-10-28 05:41:16
[2026-10-28 05:41:17,176.176 INFO    ] 2026-10-28 05:41:17
[2026-10-28 05:41:17,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:41:17,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:41:17,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:41:17,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:41:17,719.719 INFO    ] time= 28/10/2026 05:41:17
[2026-10-28 05:41:17,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:41:17,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:41:17,873.873 INFO    ] No existing commands found in stream
[2026-10-28 05:41:22,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:41:22,890.890 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-28 05:41:27,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:41:27,109.109 INFO    ] Checking for system updates...
[2026-10-28 05:41:27,144.144 INFO    ] 200
[2026-10-28 05:41:27,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:41:27,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:41:27,201.201 INFO    ] No update needed
[2026-10-28 05:41:27,204.204 INFO    ] Checking for camera pi updates...
[2026-10-28 05:41:27,237.237 INFO    ] 200
[2026-10-28 05:41:27,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:41:27,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:41:27,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:41:27,362.362 INFO    ] No camera update needed
[2026-10-28 05:41:27,364.364 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:41:27,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:41:27,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:41:27,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:41:29,419.419 INFO    ] ================================================
[2026-10-28 05:41:29,435.435 INFO    ] Launching Daemon at Wed Oct 28 05:41:29 IST 2026
[2026-10-28 05:41:29,445.445 INFO    ] ================================================
[2026-10-28 05:41:30,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:41:30
[2026-10-28 05:41:30,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:41:30,892.892 INFO    ] Initializing speech engine...
[2026-10-28 05:41:30,902.902 INFO    ] 2026-10-28 05:41:30
[2026-10-28 05:41:31,158.158 INFO    ] 2026-10-28 05:41:31
[2026-10-28 05:41:31,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:41:31,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:41:31,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:41:31,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:41:31,724.724 INFO    ] time= 28/10/2026 05:41:31
[2026-10-28 05:41:31,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:41:31,752.752 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:41:31,882.882 INFO    ] No existing commands found in stream
[2026-10-28 05:41:36,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:41:36,901.901 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-28 05:41:41,430.430 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:41:41,433.433 INFO    ] Checking for system updates...
[2026-10-28 05:41:41,469.469 INFO    ] 200
[2026-10-28 05:41:41,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:41:41,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:41:41,526.526 INFO    ] No update needed
[2026-10-28 05:41:41,528.528 INFO    ] Checking for camera pi updates...
[2026-10-28 05:41:41,562.562 INFO    ] 200
[2026-10-28 05:41:41,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:41:41,608.608 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:41:41,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:41:41,700.700 INFO    ] No camera update needed
[2026-10-28 05:41:41,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:41:41,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:41:41,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:41:41,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:41:43,757.757 INFO    ] ================================================
[2026-10-28 05:41:43,773.773 INFO    ] Launching Daemon at Wed Oct 28 05:41:43 IST 2026
[2026-10-28 05:41:43,784.784 INFO    ] ================================================
[2026-10-28 05:41:44,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:41:44
[2026-10-28 05:41:44,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:41:45,217.217 INFO    ] Initializing speech engine...
[2026-10-28 05:41:45,226.226 INFO    ] 2026-10-28 05:41:45
[2026-10-28 05:41:45,482.482 INFO    ] 2026-10-28 05:41:45
[2026-10-28 05:41:45,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:41:45,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:41:45,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:41:46,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:41:46,025.025 INFO    ] time= 28/10/2026 05:41:46
[2026-10-28 05:41:46,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:41:46,049.049 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:41:46,177.177 INFO    ] No existing commands found in stream
[2026-10-28 05:41:51,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:41:51,193.193 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 05:41:54,864.864 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:41:54,867.867 INFO    ] Checking for system updates...
[2026-10-28 05:41:54,903.903 INFO    ] 200
[2026-10-28 05:41:54,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:41:54,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:41:54,970.970 INFO    ] No update needed
[2026-10-28 05:41:54,973.973 INFO    ] Checking for camera pi updates...
[2026-10-28 05:41:55,008.008 INFO    ] 200
[2026-10-28 05:41:55,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:41:55,057.057 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:41:55,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:41:55,140.140 INFO    ] No camera update needed
[2026-10-28 05:41:55,142.142 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:41:55,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:41:55,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:41:55,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:41:57,199.199 INFO    ] ================================================
[2026-10-28 05:41:57,215.215 INFO    ] Launching Daemon at Wed Oct 28 05:41:57 IST 2026
[2026-10-28 05:41:57,225.225 INFO    ] ================================================
[2026-10-28 05:41:57,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:41:57
[2026-10-28 05:41:58,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:41:58,644.644 INFO    ] Initializing speech engine...
[2026-10-28 05:41:58,653.653 INFO    ] 2026-10-28 05:41:58
[2026-10-28 05:41:58,950.950 INFO    ] 2026-10-28 05:41:58
[2026-10-28 05:41:58,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:41:59,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:41:59,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:41:59,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:41:59,450.450 INFO    ] time= 28/10/2026 05:41:59
[2026-10-28 05:41:59,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:41:59,542.542 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:41:59,730.730 INFO    ] No existing commands found in stream
[2026-10-28 05:42:04,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:42:04,746.746 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-28 05:42:08,363.363 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:42:08,365.365 INFO    ] Checking for system updates...
[2026-10-28 05:42:08,401.401 INFO    ] 200
[2026-10-28 05:42:08,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:42:08,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:42:08,458.458 INFO    ] No update needed
[2026-10-28 05:42:08,460.460 INFO    ] Checking for camera pi updates...
[2026-10-28 05:42:08,493.493 INFO    ] 200
[2026-10-28 05:42:08,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:42:08,535.535 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:42:08,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:42:08,616.616 INFO    ] No camera update needed
[2026-10-28 05:42:08,618.618 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:42:08,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:42:08,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:42:08,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:42:10,670.670 INFO    ] ================================================
[2026-10-28 05:42:10,686.686 INFO    ] Launching Daemon at Wed Oct 28 05:42:10 IST 2026
[2026-10-28 05:42:10,696.696 INFO    ] ================================================
[2026-10-28 05:42:11,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:42:11
[2026-10-28 05:42:11,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:42:12,131.131 INFO    ] Initializing speech engine...
[2026-10-28 05:42:12,140.140 INFO    ] 2026-10-28 05:42:12
[2026-10-28 05:42:12,391.391 INFO    ] 2026-10-28 05:42:12
[2026-10-28 05:42:12,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:42:12,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:42:12,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:42:12,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:42:12,937.937 INFO    ] time= 28/10/2026 05:42:12
[2026-10-28 05:42:12,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:42:12,966.966 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:42:13,093.093 INFO    ] No existing commands found in stream
[2026-10-28 05:42:18,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:42:18,124.124 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 05:42:20,661.661 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:42:20,664.664 INFO    ] Checking for system updates...
[2026-10-28 05:42:20,700.700 INFO    ] 200
[2026-10-28 05:42:20,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:42:20,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:42:20,773.773 INFO    ] No update needed
[2026-10-28 05:42:20,775.775 INFO    ] Checking for camera pi updates...
[2026-10-28 05:42:20,812.812 INFO    ] 200
[2026-10-28 05:42:20,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:42:20,856.856 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:42:21,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:42:21,005.005 INFO    ] No camera update needed
[2026-10-28 05:42:21,008.008 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:42:21,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:42:21,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:42:21,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:42:23,062.062 INFO    ] ================================================
[2026-10-28 05:42:23,077.077 INFO    ] Launching Daemon at Wed Oct 28 05:42:23 IST 2026
[2026-10-28 05:42:23,088.088 INFO    ] ================================================
[2026-10-28 05:42:23,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:42:23
[2026-10-28 05:42:24,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:42:24,528.528 INFO    ] Initializing speech engine...
[2026-10-28 05:42:24,538.538 INFO    ] 2026-10-28 05:42:24
[2026-10-28 05:42:24,782.782 INFO    ] 2026-10-28 05:42:24
[2026-10-28 05:42:24,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:42:25,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:42:25,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:42:25,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:42:25,340.340 INFO    ] time= 28/10/2026 05:42:25
[2026-10-28 05:42:25,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:42:25,361.361 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:42:25,491.491 INFO    ] No existing commands found in stream
[2026-10-28 05:42:30,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:42:30,506.506 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-28 05:42:33,205.205 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:42:33,208.208 INFO    ] Checking for system updates...
[2026-10-28 05:42:33,254.254 INFO    ] 200
[2026-10-28 05:42:33,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:42:33,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:42:33,322.322 INFO    ] No update needed
[2026-10-28 05:42:33,324.324 INFO    ] Checking for camera pi updates...
[2026-10-28 05:42:33,359.359 INFO    ] 200
[2026-10-28 05:42:33,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:42:33,403.403 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:42:33,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:42:33,483.483 INFO    ] No camera update needed
[2026-10-28 05:42:33,485.485 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:42:33,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:42:33,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:42:33,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:42:35,541.541 INFO    ] ================================================
[2026-10-28 05:42:35,557.557 INFO    ] Launching Daemon at Wed Oct 28 05:42:35 IST 2026
[2026-10-28 05:42:35,567.567 INFO    ] ================================================
[2026-10-28 05:42:36,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:42:36
[2026-10-28 05:42:36,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:42:37,204.204 INFO    ] Initializing speech engine...
[2026-10-28 05:42:37,210.210 INFO    ] 2026-10-28 05:42:37
[2026-10-28 05:42:37,477.477 INFO    ] 2026-10-28 05:42:37
[2026-10-28 05:42:37,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:42:37,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:42:37,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:42:37,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:42:38,045.045 INFO    ] time= 28/10/2026 05:42:37
[2026-10-28 05:42:38,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:42:38,126.126 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:42:38,273.273 INFO    ] No existing commands found in stream
[2026-10-28 05:42:43,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:42:43,306.306 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 05:42:47,700.700 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:42:47,703.703 INFO    ] Checking for system updates...
[2026-10-28 05:42:47,739.739 INFO    ] 200
[2026-10-28 05:42:47,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:42:47,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:42:47,801.801 INFO    ] No update needed
[2026-10-28 05:42:47,803.803 INFO    ] Checking for camera pi updates...
[2026-10-28 05:42:47,837.837 INFO    ] 200
[2026-10-28 05:42:47,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:42:47,884.884 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:42:47,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:42:47,965.965 INFO    ] No camera update needed
[2026-10-28 05:42:47,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:42:47,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:42:47,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:42:47,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:42:50,021.021 INFO    ] ================================================
[2026-10-28 05:42:50,037.037 INFO    ] Launching Daemon at Wed Oct 28 05:42:50 IST 2026
[2026-10-28 05:42:50,047.047 INFO    ] ================================================
[2026-10-28 05:42:50,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:42:50
[2026-10-28 05:42:51,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:42:51,459.459 INFO    ] Initializing speech engine...
[2026-10-28 05:42:51,467.467 INFO    ] 2026-10-28 05:42:51
[2026-10-28 05:42:51,766.766 INFO    ] 2026-10-28 05:42:51
[2026-10-28 05:42:51,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:42:52,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:42:52,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:42:52,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:42:52,316.316 INFO    ] time= 28/10/2026 05:42:52
[2026-10-28 05:42:52,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:42:52,418.418 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:42:52,561.561 INFO    ] No existing commands found in stream
[2026-10-28 05:42:57,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:42:57,589.589 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 05:42:58,674.674 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:42:58,677.677 INFO    ] Checking for system updates...
[2026-10-28 05:42:58,713.713 INFO    ] 200
[2026-10-28 05:42:58,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:42:58,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:42:58,779.779 INFO    ] No update needed
[2026-10-28 05:42:58,781.781 INFO    ] Checking for camera pi updates...
[2026-10-28 05:42:58,818.818 INFO    ] 200
[2026-10-28 05:42:58,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:42:58,861.861 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:42:58,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:42:58,992.992 INFO    ] No camera update needed
[2026-10-28 05:42:58,994.994 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:42:58,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:42:59,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:42:59,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:43:01,047.047 INFO    ] ================================================
[2026-10-28 05:43:01,062.062 INFO    ] Launching Daemon at Wed Oct 28 05:43:01 IST 2026
[2026-10-28 05:43:01,073.073 INFO    ] ================================================
[2026-10-28 05:43:01,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:43:01
[2026-10-28 05:43:02,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:43:02,727.727 INFO    ] Initializing speech engine...
[2026-10-28 05:43:02,739.739 INFO    ] 2026-10-28 05:43:02
[2026-10-28 05:43:03,071.071 INFO    ] 2026-10-28 05:43:03
[2026-10-28 05:43:03,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:43:03,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:43:03,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:43:03,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:43:03,610.610 INFO    ] time= 28/10/2026 05:43:03
[2026-10-28 05:43:03,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:43:03,656.656 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:43:03,771.771 INFO    ] No existing commands found in stream
[2026-10-28 05:43:08,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:43:08,792.792 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-28 05:43:12,439.439 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:43:12,442.442 INFO    ] Checking for system updates...
[2026-10-28 05:43:12,477.477 INFO    ] 200
[2026-10-28 05:43:12,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:43:12,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:43:12,534.534 INFO    ] No update needed
[2026-10-28 05:43:12,537.537 INFO    ] Checking for camera pi updates...
[2026-10-28 05:43:12,574.574 INFO    ] 200
[2026-10-28 05:43:12,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:43:12,616.616 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:43:12,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:43:12,699.699 INFO    ] No camera update needed
[2026-10-28 05:43:12,701.701 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:43:12,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:43:12,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:43:12,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:43:14,754.754 INFO    ] ================================================
[2026-10-28 05:43:14,769.769 INFO    ] Launching Daemon at Wed Oct 28 05:43:14 IST 2026
[2026-10-28 05:43:14,780.780 INFO    ] ================================================
[2026-10-28 05:43:15,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:43:15
[2026-10-28 05:43:15,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:43:16,202.202 INFO    ] Initializing speech engine...
[2026-10-28 05:43:16,220.220 INFO    ] 2026-10-28 05:43:16
[2026-10-28 05:43:16,489.489 INFO    ] 2026-10-28 05:43:16
[2026-10-28 05:43:16,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:43:16,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:43:16,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:43:16,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:43:17,016.016 INFO    ] time= 28/10/2026 05:43:16
[2026-10-28 05:43:17,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:43:17,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:43:17,263.263 INFO    ] No existing commands found in stream
[2026-10-28 05:43:22,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:43:22,278.278 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 05:43:23,404.404 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:43:23,406.406 INFO    ] Checking for system updates...
[2026-10-28 05:43:23,442.442 INFO    ] 200
[2026-10-28 05:43:23,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:43:23,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:43:23,499.499 INFO    ] No update needed
[2026-10-28 05:43:23,501.501 INFO    ] Checking for camera pi updates...
[2026-10-28 05:43:23,538.538 INFO    ] 200
[2026-10-28 05:43:23,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:43:23,580.580 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:43:23,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:43:23,662.662 INFO    ] No camera update needed
[2026-10-28 05:43:23,664.664 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:43:23,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:43:23,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:43:23,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:43:25,718.718 INFO    ] ================================================
[2026-10-28 05:43:25,733.733 INFO    ] Launching Daemon at Wed Oct 28 05:43:25 IST 2026
[2026-10-28 05:43:25,744.744 INFO    ] ================================================
[2026-10-28 05:43:26,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:43:26
[2026-10-28 05:43:27,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:43:27,361.361 INFO    ] Initializing speech engine...
[2026-10-28 05:43:27,369.369 INFO    ] 2026-10-28 05:43:27
[2026-10-28 05:43:27,641.641 INFO    ] 2026-10-28 05:43:27
[2026-10-28 05:43:27,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:43:27,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:43:27,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:43:28,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:43:28,189.189 INFO    ] time= 28/10/2026 05:43:28
[2026-10-28 05:43:28,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:43:28,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:43:28,366.366 INFO    ] No existing commands found in stream
[2026-10-28 05:43:33,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:43:33,396.396 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-28 05:43:35,157.157 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:43:35,160.160 INFO    ] Checking for system updates...
[2026-10-28 05:43:35,200.200 INFO    ] 200
[2026-10-28 05:43:35,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:43:35,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:43:35,263.263 INFO    ] No update needed
[2026-10-28 05:43:35,265.265 INFO    ] Checking for camera pi updates...
[2026-10-28 05:43:35,300.300 INFO    ] 200
[2026-10-28 05:43:35,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:43:35,342.342 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:43:35,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:43:35,427.427 INFO    ] No camera update needed
[2026-10-28 05:43:35,430.430 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:43:35,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:43:35,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:43:35,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:43:37,485.485 INFO    ] ================================================
[2026-10-28 05:43:37,500.500 INFO    ] Launching Daemon at Wed Oct 28 05:43:37 IST 2026
[2026-10-28 05:43:37,510.510 INFO    ] ================================================
[2026-10-28 05:43:38,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:43:38
[2026-10-28 05:43:38,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:43:38,912.912 INFO    ] Initializing speech engine...
[2026-10-28 05:43:38,930.930 INFO    ] 2026-10-28 05:43:38
[2026-10-28 05:43:39,175.175 INFO    ] 2026-10-28 05:43:39
[2026-10-28 05:43:39,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:43:39,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:43:39,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:43:39,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:43:39,728.728 INFO    ] time= 28/10/2026 05:43:39
[2026-10-28 05:43:39,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:43:39,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:43:39,885.885 INFO    ] No existing commands found in stream
[2026-10-28 05:43:44,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:43:44,911.911 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-28 05:43:46,062.062 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:43:46,065.065 INFO    ] Checking for system updates...
[2026-10-28 05:43:46,104.104 INFO    ] 200
[2026-10-28 05:43:46,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:43:46,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:43:46,160.160 INFO    ] No update needed
[2026-10-28 05:43:46,163.163 INFO    ] Checking for camera pi updates...
[2026-10-28 05:43:46,196.196 INFO    ] 200
[2026-10-28 05:43:46,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:43:46,238.238 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:43:46,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:43:46,320.320 INFO    ] No camera update needed
[2026-10-28 05:43:46,322.322 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:43:46,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:43:46,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:43:46,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:43:48,376.376 INFO    ] ================================================
[2026-10-28 05:43:48,391.391 INFO    ] Launching Daemon at Wed Oct 28 05:43:48 IST 2026
[2026-10-28 05:43:48,408.408 INFO    ] ================================================
[2026-10-28 05:43:48,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:43:48
[2026-10-28 05:43:49,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:43:49,811.811 INFO    ] Initializing speech engine...
[2026-10-28 05:43:49,838.838 INFO    ] 2026-10-28 05:43:49
[2026-10-28 05:43:50,107.107 INFO    ] 2026-10-28 05:43:50
[2026-10-28 05:43:50,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:43:50,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:43:50,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:43:50,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:43:50,734.734 INFO    ] time= 28/10/2026 05:43:50
[2026-10-28 05:43:50,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:43:50,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:43:50,908.908 INFO    ] No existing commands found in stream
[2026-10-28 05:43:55,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:43:55,924.924 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-28 05:43:57,784.784 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:43:57,786.786 INFO    ] Checking for system updates...
[2026-10-28 05:43:57,821.821 INFO    ] 200
[2026-10-28 05:43:57,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:43:57,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:43:57,879.879 INFO    ] No update needed
[2026-10-28 05:43:57,881.881 INFO    ] Checking for camera pi updates...
[2026-10-28 05:43:57,914.914 INFO    ] 200
[2026-10-28 05:43:57,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:43:57,961.961 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:43:58,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:43:58,048.048 INFO    ] No camera update needed
[2026-10-28 05:43:58,050.050 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:43:58,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:43:58,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:43:58,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:44:00,103.103 INFO    ] ================================================
[2026-10-28 05:44:00,118.118 INFO    ] Launching Daemon at Wed Oct 28 05:44:00 IST 2026
[2026-10-28 05:44:00,129.129 INFO    ] ================================================
[2026-10-28 05:44:00,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:44:00
[2026-10-28 05:44:01,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:44:01,525.525 INFO    ] Initializing speech engine...
[2026-10-28 05:44:01,531.531 INFO    ] 2026-10-28 05:44:01
[2026-10-28 05:44:01,802.802 INFO    ] 2026-10-28 05:44:01
[2026-10-28 05:44:01,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:44:02,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:44:02,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:44:02,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:44:02,382.382 INFO    ] time= 28/10/2026 05:44:02
[2026-10-28 05:44:02,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:44:02,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:44:02,663.663 INFO    ] No existing commands found in stream
[2026-10-28 05:44:07,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:44:07,697.697 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-28 05:44:11,522.522 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:44:11,525.525 INFO    ] Checking for system updates...
[2026-10-28 05:44:11,564.564 INFO    ] 200
[2026-10-28 05:44:11,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:44:11,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:44:11,623.623 INFO    ] No update needed
[2026-10-28 05:44:11,626.626 INFO    ] Checking for camera pi updates...
[2026-10-28 05:44:11,660.660 INFO    ] 200
[2026-10-28 05:44:11,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:44:11,704.704 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:44:11,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:44:11,783.783 INFO    ] No camera update needed
[2026-10-28 05:44:11,786.786 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:44:11,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:44:11,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:44:11,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:44:13,841.841 INFO    ] ================================================
[2026-10-28 05:44:13,857.857 INFO    ] Launching Daemon at Wed Oct 28 05:44:13 IST 2026
[2026-10-28 05:44:13,867.867 INFO    ] ================================================
[2026-10-28 05:44:14,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:44:14
[2026-10-28 05:44:15,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:44:15,268.268 INFO    ] Initializing speech engine...
[2026-10-28 05:44:15,277.277 INFO    ] 2026-10-28 05:44:15
[2026-10-28 05:44:15,565.565 INFO    ] 2026-10-28 05:44:15
[2026-10-28 05:44:15,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:44:15,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:44:15,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:44:16,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:44:16,151.151 INFO    ] time= 28/10/2026 05:44:16
[2026-10-28 05:44:16,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:44:16,193.193 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:44:16,325.325 INFO    ] No existing commands found in stream
[2026-10-28 05:44:21,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:44:21,353.353 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 05:44:24,515.515 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:44:24,517.517 INFO    ] Checking for system updates...
[2026-10-28 05:44:24,554.554 INFO    ] 200
[2026-10-28 05:44:24,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:44:24,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:44:24,610.610 INFO    ] No update needed
[2026-10-28 05:44:24,612.612 INFO    ] Checking for camera pi updates...
[2026-10-28 05:44:24,646.646 INFO    ] 200
[2026-10-28 05:44:24,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:44:24,688.688 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:44:24,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:44:24,867.867 INFO    ] No camera update needed
[2026-10-28 05:44:24,870.870 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:44:24,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:44:24,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:44:24,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:44:26,923.923 INFO    ] ================================================
[2026-10-28 05:44:26,939.939 INFO    ] Launching Daemon at Wed Oct 28 05:44:26 IST 2026
[2026-10-28 05:44:26,950.950 INFO    ] ================================================
[2026-10-28 05:44:27,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:44:27
[2026-10-28 05:44:28,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:44:28,542.542 INFO    ] Initializing speech engine...
[2026-10-28 05:44:28,550.550 INFO    ] 2026-10-28 05:44:28
[2026-10-28 05:44:28,830.830 INFO    ] 2026-10-28 05:44:28
[2026-10-28 05:44:28,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:44:29,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:44:29,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:44:29,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:44:29,378.378 INFO    ] time= 28/10/2026 05:44:29
[2026-10-28 05:44:29,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:44:29,416.416 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:44:29,541.541 INFO    ] No existing commands found in stream
[2026-10-28 05:44:34,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:44:34,572.572 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-28 05:44:37,998.998 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:44:38,001.001 INFO    ] Checking for system updates...
[2026-10-28 05:44:38,038.038 INFO    ] 200
[2026-10-28 05:44:38,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:44:38,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:44:38,096.096 INFO    ] No update needed
[2026-10-28 05:44:38,099.099 INFO    ] Checking for camera pi updates...
[2026-10-28 05:44:38,137.137 INFO    ] 200
[2026-10-28 05:44:38,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:44:38,185.185 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:44:38,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:44:38,272.272 INFO    ] No camera update needed
[2026-10-28 05:44:38,275.275 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:44:38,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:44:38,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:44:38,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:44:40,330.330 INFO    ] ================================================
[2026-10-28 05:44:40,346.346 INFO    ] Launching Daemon at Wed Oct 28 05:44:40 IST 2026
[2026-10-28 05:44:40,356.356 INFO    ] ================================================
[2026-10-28 05:44:40,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:44:40
[2026-10-28 05:44:41,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:44:41,766.766 INFO    ] Initializing speech engine...
[2026-10-28 05:44:41,791.791 INFO    ] 2026-10-28 05:44:41
[2026-10-28 05:44:42,061.061 INFO    ] 2026-10-28 05:44:42
[2026-10-28 05:44:42,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:44:42,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:44:42,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:44:42,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:44:42,476.476 INFO    ] time= 28/10/2026 05:44:42
[2026-10-28 05:44:42,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:44:42,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:44:42,671.671 INFO    ] No existing commands found in stream
[2026-10-28 05:44:47,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:44:47,699.699 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-28 05:44:51,202.202 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:44:51,204.204 INFO    ] Checking for system updates...
[2026-10-28 05:44:51,241.241 INFO    ] 200
[2026-10-28 05:44:51,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:44:51,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:44:51,299.299 INFO    ] No update needed
[2026-10-28 05:44:51,302.302 INFO    ] Checking for camera pi updates...
[2026-10-28 05:44:51,337.337 INFO    ] 200
[2026-10-28 05:44:51,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:44:51,380.380 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:44:51,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:44:51,457.457 INFO    ] No camera update needed
[2026-10-28 05:44:51,459.459 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:44:51,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:44:51,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:44:51,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:44:53,511.511 INFO    ] ================================================
[2026-10-28 05:44:53,526.526 INFO    ] Launching Daemon at Wed Oct 28 05:44:53 IST 2026
[2026-10-28 05:44:53,536.536 INFO    ] ================================================
[2026-10-28 05:44:54,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:44:54
[2026-10-28 05:44:54,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:44:55,135.135 INFO    ] Initializing speech engine...
[2026-10-28 05:44:55,142.142 INFO    ] 2026-10-28 05:44:55
[2026-10-28 05:44:55,435.435 INFO    ] 2026-10-28 05:44:55
[2026-10-28 05:44:55,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:44:55,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:44:55,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:44:56,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:44:56,017.017 INFO    ] time= 28/10/2026 05:44:56
[2026-10-28 05:44:56,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:44:56,112.112 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:44:56,217.217 INFO    ] No existing commands found in stream
[2026-10-28 05:45:01,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:45:01,249.249 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 05:45:05,085.085 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:45:05,088.088 INFO    ] Checking for system updates...
[2026-10-28 05:45:05,125.125 INFO    ] 200
[2026-10-28 05:45:05,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:45:05,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:45:05,187.187 INFO    ] No update needed
[2026-10-28 05:45:05,189.189 INFO    ] Checking for camera pi updates...
[2026-10-28 05:45:05,223.223 INFO    ] 200
[2026-10-28 05:45:05,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:45:05,266.266 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:45:05,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:45:05,348.348 INFO    ] No camera update needed
[2026-10-28 05:45:05,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:45:05,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:45:05,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:45:05,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:45:07,403.403 INFO    ] ================================================
[2026-10-28 05:45:07,417.417 INFO    ] Launching Daemon at Wed Oct 28 05:45:07 IST 2026
[2026-10-28 05:45:07,428.428 INFO    ] ================================================
[2026-10-28 05:45:08,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:45:08
[2026-10-28 05:45:08,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:45:09,050.050 INFO    ] Initializing speech engine...
[2026-10-28 05:45:09,064.064 INFO    ] 2026-10-28 05:45:09
[2026-10-28 05:45:09,376.376 INFO    ] 2026-10-28 05:45:09
[2026-10-28 05:45:09,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:45:09,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:45:09,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:45:09,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:45:09,932.932 INFO    ] time= 28/10/2026 05:45:09
[2026-10-28 05:45:09,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:45:10,032.032 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:45:10,155.155 INFO    ] No existing commands found in stream
[2026-10-28 05:45:15,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:45:15,200.200 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-28 05:45:17,908.908 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:45:17,912.912 INFO    ] Checking for system updates...
[2026-10-28 05:45:17,949.949 INFO    ] 200
[2026-10-28 05:45:17,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:45:18,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:45:18,006.006 INFO    ] No update needed
[2026-10-28 05:45:18,009.009 INFO    ] Checking for camera pi updates...
[2026-10-28 05:45:18,042.042 INFO    ] 200
[2026-10-28 05:45:18,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:45:18,085.085 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:45:18,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:45:18,142.142 INFO    ] No camera update needed
[2026-10-28 05:45:18,145.145 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:45:18,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:45:18,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:45:18,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:45:20,196.196 INFO    ] ================================================
[2026-10-28 05:45:20,211.211 INFO    ] Launching Daemon at Wed Oct 28 05:45:20 IST 2026
[2026-10-28 05:45:20,222.222 INFO    ] ================================================
[2026-10-28 05:45:20,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:45:20
[2026-10-28 05:45:21,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:45:21,667.667 INFO    ] Initializing speech engine...
[2026-10-28 05:45:21,675.675 INFO    ] 2026-10-28 05:45:21
[2026-10-28 05:45:21,956.956 INFO    ] 2026-10-28 05:45:21
[2026-10-28 05:45:22,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:45:22,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:45:22,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:45:22,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:45:22,683.683 INFO    ] time= 28/10/2026 05:45:22
[2026-10-28 05:45:22,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:45:22,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:45:22,908.908 INFO    ] No existing commands found in stream
[2026-10-28 05:45:27,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:45:27,925.925 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 05:45:30,322.322 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:45:30,325.325 INFO    ] Checking for system updates...
[2026-10-28 05:45:30,366.366 INFO    ] 200
[2026-10-28 05:45:30,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:45:30,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:45:30,429.429 INFO    ] No update needed
[2026-10-28 05:45:30,432.432 INFO    ] Checking for camera pi updates...
[2026-10-28 05:45:30,467.467 INFO    ] 200
[2026-10-28 05:45:30,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:45:30,512.512 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:45:30,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:45:30,595.595 INFO    ] No camera update needed
[2026-10-28 05:45:30,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:45:30,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:45:30,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:45:30,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:45:32,661.661 INFO    ] ================================================
[2026-10-28 05:45:32,677.677 INFO    ] Launching Daemon at Wed Oct 28 05:45:32 IST 2026
[2026-10-28 05:45:32,729.729 INFO    ] ================================================
[2026-10-28 05:45:33,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:45:33
[2026-10-28 05:45:34,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:45:34,360.360 INFO    ] Initializing speech engine...
[2026-10-28 05:45:34,367.367 INFO    ] 2026-10-28 05:45:34
[2026-10-28 05:45:34,651.651 INFO    ] 2026-10-28 05:45:34
[2026-10-28 05:45:34,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:45:35,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:45:35,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:45:35,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:45:35,343.343 INFO    ] time= 28/10/2026 05:45:35
[2026-10-28 05:45:35,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:45:35,435.435 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:45:35,592.592 INFO    ] No existing commands found in stream
[2026-10-28 05:45:40,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:45:40,628.628 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-28 05:45:42,585.585 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:45:42,588.588 INFO    ] Checking for system updates...
[2026-10-28 05:45:42,625.625 INFO    ] 200
[2026-10-28 05:45:42,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:45:42,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:45:42,687.687 INFO    ] No update needed
[2026-10-28 05:45:42,690.690 INFO    ] Checking for camera pi updates...
[2026-10-28 05:45:42,725.725 INFO    ] 200
[2026-10-28 05:45:42,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:45:42,773.773 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:45:42,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:45:42,840.840 INFO    ] No camera update needed
[2026-10-28 05:45:42,842.842 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:45:42,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:45:42,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:45:42,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:45:44,901.901 INFO    ] ================================================
[2026-10-28 05:45:44,916.916 INFO    ] Launching Daemon at Wed Oct 28 05:45:44 IST 2026
[2026-10-28 05:45:44,927.927 INFO    ] ================================================
[2026-10-28 05:45:45,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:45:45
[2026-10-28 05:45:46,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:45:46,360.360 INFO    ] Initializing speech engine...
[2026-10-28 05:45:46,369.369 INFO    ] 2026-10-28 05:45:46
[2026-10-28 05:45:46,615.615 INFO    ] 2026-10-28 05:45:46
[2026-10-28 05:45:46,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:45:46,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:45:46,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:45:47,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:45:47,169.169 INFO    ] time= 28/10/2026 05:45:47
[2026-10-28 05:45:47,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:45:47,192.192 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:45:47,320.320 INFO    ] No existing commands found in stream
[2026-10-28 05:45:52,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:45:52,337.337 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-28 05:45:53,142.142 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:45:53,145.145 INFO    ] Checking for system updates...
[2026-10-28 05:45:53,181.181 INFO    ] 200
[2026-10-28 05:45:53,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:45:53,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:45:53,238.238 INFO    ] No update needed
[2026-10-28 05:45:53,240.240 INFO    ] Checking for camera pi updates...
[2026-10-28 05:45:53,274.274 INFO    ] 200
[2026-10-28 05:45:53,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:45:53,318.318 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:45:53,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:45:53,408.408 INFO    ] No camera update needed
[2026-10-28 05:45:53,410.410 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:45:53,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:45:53,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:45:53,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:45:55,465.465 INFO    ] ================================================
[2026-10-28 05:45:55,480.480 INFO    ] Launching Daemon at Wed Oct 28 05:45:55 IST 2026
[2026-10-28 05:45:55,490.490 INFO    ] ================================================
[2026-10-28 05:45:56,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:45:56
[2026-10-28 05:45:56,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:45:56,918.918 INFO    ] Initializing speech engine...
[2026-10-28 05:45:56,926.926 INFO    ] 2026-10-28 05:45:56
[2026-10-28 05:45:57,184.184 INFO    ] 2026-10-28 05:45:57
[2026-10-28 05:45:57,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:45:57,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:45:57,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:45:57,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:45:57,723.723 INFO    ] time= 28/10/2026 05:45:57
[2026-10-28 05:45:57,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:45:57,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:45:57,875.875 INFO    ] No existing commands found in stream
[2026-10-28 05:46:02,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:46:02,889.889 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 05:46:06,921.921 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:46:06,924.924 INFO    ] Checking for system updates...
[2026-10-28 05:46:06,963.963 INFO    ] 200
[2026-10-28 05:46:06,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:46:07,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:46:07,020.020 INFO    ] No update needed
[2026-10-28 05:46:07,022.022 INFO    ] Checking for camera pi updates...
[2026-10-28 05:46:07,056.056 INFO    ] 200
[2026-10-28 05:46:07,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:46:07,098.098 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:46:07,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:46:07,168.168 INFO    ] No camera update needed
[2026-10-28 05:46:07,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:46:07,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:46:07,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:46:07,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:46:09,224.224 INFO    ] ================================================
[2026-10-28 05:46:09,239.239 INFO    ] Launching Daemon at Wed Oct 28 05:46:09 IST 2026
[2026-10-28 05:46:09,250.250 INFO    ] ================================================
[2026-10-28 05:46:09,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:46:09
[2026-10-28 05:46:10,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:46:10,672.672 INFO    ] Initializing speech engine...
[2026-10-28 05:46:10,690.690 INFO    ] 2026-10-28 05:46:10
[2026-10-28 05:46:10,957.957 INFO    ] 2026-10-28 05:46:10
[2026-10-28 05:46:10,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:46:11,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:46:11,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:46:11,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:46:11,460.460 INFO    ] time= 28/10/2026 05:46:11
[2026-10-28 05:46:11,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:46:11,584.584 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:46:11,720.720 INFO    ] No existing commands found in stream
[2026-10-28 05:46:16,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:46:16,745.745 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 05:46:20,423.423 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:46:20,426.426 INFO    ] Checking for system updates...
[2026-10-28 05:46:20,462.462 INFO    ] 200
[2026-10-28 05:46:20,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:46:20,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:46:20,528.528 INFO    ] No update needed
[2026-10-28 05:46:20,531.531 INFO    ] Checking for camera pi updates...
[2026-10-28 05:46:20,569.569 INFO    ] 200
[2026-10-28 05:46:20,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:46:20,613.613 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:46:20,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:46:20,668.668 INFO    ] No camera update needed
[2026-10-28 05:46:20,671.671 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:46:20,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:46:20,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:46:20,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:46:22,725.725 INFO    ] ================================================
[2026-10-28 05:46:22,740.740 INFO    ] Launching Daemon at Wed Oct 28 05:46:22 IST 2026
[2026-10-28 05:46:22,751.751 INFO    ] ================================================
[2026-10-28 05:46:23,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:46:23
[2026-10-28 05:46:23,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:46:24,163.163 INFO    ] Initializing speech engine...
[2026-10-28 05:46:24,171.171 INFO    ] 2026-10-28 05:46:24
[2026-10-28 05:46:24,446.446 INFO    ] 2026-10-28 05:46:24
[2026-10-28 05:46:24,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:46:24,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:46:24,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:46:24,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:46:25,015.015 INFO    ] time= 28/10/2026 05:46:24
[2026-10-28 05:46:25,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:46:25,051.051 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:46:25,157.157 INFO    ] No existing commands found in stream
[2026-10-28 05:46:30,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:46:30,181.181 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 05:46:34,266.266 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:46:34,270.270 INFO    ] Checking for system updates...
[2026-10-28 05:46:34,309.309 INFO    ] 200
[2026-10-28 05:46:34,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:46:34,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:46:34,373.373 INFO    ] No update needed
[2026-10-28 05:46:34,376.376 INFO    ] Checking for camera pi updates...
[2026-10-28 05:46:34,414.414 INFO    ] 200
[2026-10-28 05:46:34,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:46:34,463.463 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:46:34,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:46:34,549.549 INFO    ] No camera update needed
[2026-10-28 05:46:34,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:46:34,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:46:34,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:46:34,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:46:36,611.611 INFO    ] ================================================
[2026-10-28 05:46:36,626.626 INFO    ] Launching Daemon at Wed Oct 28 05:46:36 IST 2026
[2026-10-28 05:46:36,637.637 INFO    ] ================================================
[2026-10-28 05:46:37,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:46:37
[2026-10-28 05:46:37,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:46:38,274.274 INFO    ] Initializing speech engine...
[2026-10-28 05:46:38,294.294 INFO    ] 2026-10-28 05:46:38
[2026-10-28 05:46:38,562.562 INFO    ] 2026-10-28 05:46:38
[2026-10-28 05:46:38,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:46:38,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:46:38,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:46:39,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:46:39,138.138 INFO    ] time= 28/10/2026 05:46:39
[2026-10-28 05:46:39,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:46:39,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:46:39,319.319 INFO    ] No existing commands found in stream
[2026-10-28 05:46:44,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:46:44,353.353 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-28 05:46:46,306.306 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:46:46,309.309 INFO    ] Checking for system updates...
[2026-10-28 05:46:46,346.346 INFO    ] 200
[2026-10-28 05:46:46,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:46:46,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:46:46,413.413 INFO    ] No update needed
[2026-10-28 05:46:46,416.416 INFO    ] Checking for camera pi updates...
[2026-10-28 05:46:46,451.451 INFO    ] 200
[2026-10-28 05:46:46,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:46:46,497.497 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:46:46,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:46:46,584.584 INFO    ] No camera update needed
[2026-10-28 05:46:46,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:46:46,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:46:46,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:46:46,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:46:48,644.644 INFO    ] ================================================
[2026-10-28 05:46:48,659.659 INFO    ] Launching Daemon at Wed Oct 28 05:46:48 IST 2026
[2026-10-28 05:46:48,670.670 INFO    ] ================================================
[2026-10-28 05:46:49,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:46:49
[2026-10-28 05:46:49,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:46:50,093.093 INFO    ] Initializing speech engine...
[2026-10-28 05:46:50,101.101 INFO    ] 2026-10-28 05:46:50
[2026-10-28 05:46:50,398.398 INFO    ] 2026-10-28 05:46:50
[2026-10-28 05:46:50,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:46:50,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:46:50,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:46:50,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:46:50,899.899 INFO    ] time= 28/10/2026 05:46:50
[2026-10-28 05:46:50,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:46:50,954.954 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:46:51,055.055 INFO    ] No existing commands found in stream
[2026-10-28 05:46:56,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:46:56,069.069 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 05:46:59,490.490 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:46:59,493.493 INFO    ] Checking for system updates...
[2026-10-28 05:46:59,529.529 INFO    ] 200
[2026-10-28 05:46:59,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:46:59,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:46:59,587.587 INFO    ] No update needed
[2026-10-28 05:46:59,589.589 INFO    ] Checking for camera pi updates...
[2026-10-28 05:46:59,623.623 INFO    ] 200
[2026-10-28 05:46:59,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:46:59,666.666 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:46:59,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:46:59,764.764 INFO    ] No camera update needed
[2026-10-28 05:46:59,766.766 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:46:59,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:46:59,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:46:59,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:47:01,818.818 INFO    ] ================================================
[2026-10-28 05:47:01,834.834 INFO    ] Launching Daemon at Wed Oct 28 05:47:01 IST 2026
[2026-10-28 05:47:01,845.845 INFO    ] ================================================
[2026-10-28 05:47:02,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:47:02
[2026-10-28 05:47:03,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:47:03,652.652 INFO    ] Initializing speech engine...
[2026-10-28 05:47:03,664.664 INFO    ] 2026-10-28 05:47:03
[2026-10-28 05:47:03,928.928 INFO    ] 2026-10-28 05:47:03
[2026-10-28 05:47:04,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:47:04,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:47:04,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:47:04,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:47:04,526.526 INFO    ] time= 28/10/2026 05:47:04
[2026-10-28 05:47:04,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:47:04,553.553 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:47:04,677.677 INFO    ] No existing commands found in stream
[2026-10-28 05:47:09,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:47:09,695.695 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 05:47:13,153.153 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:47:13,155.155 INFO    ] Checking for system updates...
[2026-10-28 05:47:13,192.192 INFO    ] 200
[2026-10-28 05:47:13,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:47:13,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:47:13,250.250 INFO    ] No update needed
[2026-10-28 05:47:13,253.253 INFO    ] Checking for camera pi updates...
[2026-10-28 05:47:13,286.286 INFO    ] 200
[2026-10-28 05:47:13,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:47:13,335.335 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:47:13,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:47:13,419.419 INFO    ] No camera update needed
[2026-10-28 05:47:13,422.422 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:47:13,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:47:13,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:47:13,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:47:15,474.474 INFO    ] ================================================
[2026-10-28 05:47:15,491.491 INFO    ] Launching Daemon at Wed Oct 28 05:47:15 IST 2026
[2026-10-28 05:47:15,501.501 INFO    ] ================================================
[2026-10-28 05:47:16,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:47:16
[2026-10-28 05:47:16,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:47:16,918.918 INFO    ] Initializing speech engine...
[2026-10-28 05:47:16,928.928 INFO    ] 2026-10-28 05:47:16
[2026-10-28 05:47:17,186.186 INFO    ] 2026-10-28 05:47:17
[2026-10-28 05:47:17,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:47:17,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:47:17,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:47:17,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:47:17,871.871 INFO    ] time= 28/10/2026 05:47:17
[2026-10-28 05:47:17,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:47:17,969.969 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:47:18,130.130 INFO    ] No existing commands found in stream
[2026-10-28 05:47:23,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:47:23,155.155 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-28 05:47:27,304.304 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:47:27,306.306 INFO    ] Checking for system updates...
[2026-10-28 05:47:27,342.342 INFO    ] 200
[2026-10-28 05:47:27,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:47:27,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:47:27,400.400 INFO    ] No update needed
[2026-10-28 05:47:27,402.402 INFO    ] Checking for camera pi updates...
[2026-10-28 05:47:27,437.437 INFO    ] 200
[2026-10-28 05:47:27,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:47:27,479.479 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:47:27,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:47:27,568.568 INFO    ] No camera update needed
[2026-10-28 05:47:27,571.571 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:47:27,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:47:27,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:47:27,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:47:29,624.624 INFO    ] ================================================
[2026-10-28 05:47:29,640.640 INFO    ] Launching Daemon at Wed Oct 28 05:47:29 IST 2026
[2026-10-28 05:47:29,652.652 INFO    ] ================================================
[2026-10-28 05:47:30,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:47:30
[2026-10-28 05:47:30,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:47:31,116.116 INFO    ] Initializing speech engine...
[2026-10-28 05:47:31,125.125 INFO    ] 2026-10-28 05:47:31
[2026-10-28 05:47:31,371.371 INFO    ] 2026-10-28 05:47:31
[2026-10-28 05:47:31,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:47:31,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:47:31,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:47:31,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:47:31,925.925 INFO    ] time= 28/10/2026 05:47:31
[2026-10-28 05:47:31,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:47:31,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:47:32,106.106 INFO    ] No existing commands found in stream
[2026-10-28 05:47:37,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:47:37,144.144 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 05:47:37,768.768 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:47:37,771.771 INFO    ] Checking for system updates...
[2026-10-28 05:47:37,811.811 INFO    ] 200
[2026-10-28 05:47:37,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:47:37,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:47:37,868.868 INFO    ] No update needed
[2026-10-28 05:47:37,871.871 INFO    ] Checking for camera pi updates...
[2026-10-28 05:47:37,908.908 INFO    ] 200
[2026-10-28 05:47:37,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:47:37,950.950 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:47:38,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:47:38,033.033 INFO    ] No camera update needed
[2026-10-28 05:47:38,036.036 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:47:38,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:47:38,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:47:38,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:47:40,090.090 INFO    ] ================================================
[2026-10-28 05:47:40,105.105 INFO    ] Launching Daemon at Wed Oct 28 05:47:40 IST 2026
[2026-10-28 05:47:40,116.116 INFO    ] ================================================
[2026-10-28 05:47:40,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:47:40
[2026-10-28 05:47:41,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:47:41,538.538 INFO    ] Initializing speech engine...
[2026-10-28 05:47:41,553.553 INFO    ] 2026-10-28 05:47:41
[2026-10-28 05:47:41,844.844 INFO    ] 2026-10-28 05:47:41
[2026-10-28 05:47:41,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:47:42,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:47:42,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:47:42,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:47:42,447.447 INFO    ] time= 28/10/2026 05:47:42
[2026-10-28 05:47:42,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:47:42,480.480 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:47:42,580.580 INFO    ] No existing commands found in stream
[2026-10-28 05:47:47,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:47:47,593.593 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-28 05:47:48,494.494 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:47:48,497.497 INFO    ] Checking for system updates...
[2026-10-28 05:47:48,539.539 INFO    ] 200
[2026-10-28 05:47:48,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:47:48,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:47:48,600.600 INFO    ] No update needed
[2026-10-28 05:47:48,602.602 INFO    ] Checking for camera pi updates...
[2026-10-28 05:47:48,638.638 INFO    ] 200
[2026-10-28 05:47:48,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:47:48,684.684 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:47:48,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:47:48,769.769 INFO    ] No camera update needed
[2026-10-28 05:47:48,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:47:48,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:47:48,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:47:48,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:47:50,829.829 INFO    ] ================================================
[2026-10-28 05:47:50,845.845 INFO    ] Launching Daemon at Wed Oct 28 05:47:50 IST 2026
[2026-10-28 05:47:50,856.856 INFO    ] ================================================
[2026-10-28 05:47:51,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:47:51
[2026-10-28 05:47:52,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:47:52,272.272 INFO    ] Initializing speech engine...
[2026-10-28 05:47:52,288.288 INFO    ] 2026-10-28 05:47:52
[2026-10-28 05:47:52,541.541 INFO    ] 2026-10-28 05:47:52
[2026-10-28 05:47:52,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:47:52,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:47:52,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:47:53,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:47:53,102.102 INFO    ] time= 28/10/2026 05:47:53
[2026-10-28 05:47:53,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:47:53,126.126 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:47:53,256.256 INFO    ] No existing commands found in stream
[2026-10-28 05:47:58,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:47:58,274.274 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-28 05:47:59,865.865 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:47:59,868.868 INFO    ] Checking for system updates...
[2026-10-28 05:47:59,903.903 INFO    ] 200
[2026-10-28 05:47:59,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:47:59,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:47:59,961.961 INFO    ] No update needed
[2026-10-28 05:47:59,964.964 INFO    ] Checking for camera pi updates...
[2026-10-28 05:47:59,997.997 INFO    ] 200
[2026-10-28 05:48:00,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:48:00,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:48:00,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:48:00,126.126 INFO    ] No camera update needed
[2026-10-28 05:48:00,128.128 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:48:00,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:48:00,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:48:00,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:48:02,186.186 INFO    ] ================================================
[2026-10-28 05:48:02,210.210 INFO    ] Launching Daemon at Wed Oct 28 05:48:02 IST 2026
[2026-10-28 05:48:02,229.229 INFO    ] ================================================
[2026-10-28 05:48:02,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:48:02
[2026-10-28 05:48:03,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:48:03,777.777 INFO    ] Initializing speech engine...
[2026-10-28 05:48:03,787.787 INFO    ] 2026-10-28 05:48:03
[2026-10-28 05:48:04,048.048 INFO    ] 2026-10-28 05:48:04
[2026-10-28 05:48:04,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:48:04,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:48:04,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:48:04,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:48:04,593.593 INFO    ] time= 28/10/2026 05:48:04
[2026-10-28 05:48:04,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:48:04,618.618 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:48:04,748.748 INFO    ] No existing commands found in stream
[2026-10-28 05:48:09,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:48:09,773.773 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-28 05:48:11,410.410 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:48:11,413.413 INFO    ] Checking for system updates...
[2026-10-28 05:48:11,455.455 INFO    ] 200
[2026-10-28 05:48:11,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:48:11,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:48:11,522.522 INFO    ] No update needed
[2026-10-28 05:48:11,524.524 INFO    ] Checking for camera pi updates...
[2026-10-28 05:48:11,559.559 INFO    ] 200
[2026-10-28 05:48:11,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:48:11,604.604 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:48:11,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:48:11,689.689 INFO    ] No camera update needed
[2026-10-28 05:48:11,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:48:11,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:48:11,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:48:11,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:48:13,749.749 INFO    ] ================================================
[2026-10-28 05:48:13,764.764 INFO    ] Launching Daemon at Wed Oct 28 05:48:13 IST 2026
[2026-10-28 05:48:13,776.776 INFO    ] ================================================
[2026-10-28 05:48:14,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:48:14
[2026-10-28 05:48:14,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:48:15,234.234 INFO    ] Initializing speech engine...
[2026-10-28 05:48:15,240.240 INFO    ] 2026-10-28 05:48:15
[2026-10-28 05:48:15,503.503 INFO    ] 2026-10-28 05:48:15
[2026-10-28 05:48:15,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:48:15,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:48:15,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:48:16,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:48:16,048.048 INFO    ] time= 28/10/2026 05:48:16
[2026-10-28 05:48:16,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:48:16,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:48:16,196.196 INFO    ] No existing commands found in stream
[2026-10-28 05:48:21,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:48:21,214.214 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-28 05:48:25,666.666 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:48:25,669.669 INFO    ] Checking for system updates...
[2026-10-28 05:48:25,705.705 INFO    ] 200
[2026-10-28 05:48:25,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:48:25,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:48:25,763.763 INFO    ] No update needed
[2026-10-28 05:48:25,766.766 INFO    ] Checking for camera pi updates...
[2026-10-28 05:48:25,798.798 INFO    ] 200
[2026-10-28 05:48:25,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:48:25,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:48:25,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:48:25,925.925 INFO    ] No camera update needed
[2026-10-28 05:48:25,927.927 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:48:25,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:48:25,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:48:25,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:48:27,983.983 INFO    ] ================================================
[2026-10-28 05:48:28,999.999 INFO    ] Launching Daemon at Wed Oct 28 05:48:27 IST 2026
[2026-10-28 05:48:28,010.010 INFO    ] ================================================
[2026-10-28 05:48:28,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:48:28
[2026-10-28 05:48:29,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:48:29,626.626 INFO    ] Initializing speech engine...
[2026-10-28 05:48:29,640.640 INFO    ] 2026-10-28 05:48:29
[2026-10-28 05:48:29,931.931 INFO    ] 2026-10-28 05:48:29
[2026-10-28 05:48:30,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:48:30,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:48:30,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:48:30,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:48:30,541.541 INFO    ] time= 28/10/2026 05:48:30
[2026-10-28 05:48:30,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:48:30,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:48:30,803.803 INFO    ] No existing commands found in stream
[2026-10-28 05:48:35,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:48:35,838.838 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-28 05:48:36,788.788 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:48:36,791.791 INFO    ] Checking for system updates...
[2026-10-28 05:48:36,829.829 INFO    ] 200
[2026-10-28 05:48:36,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:48:36,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:48:36,888.888 INFO    ] No update needed
[2026-10-28 05:48:36,891.891 INFO    ] Checking for camera pi updates...
[2026-10-28 05:48:36,926.926 INFO    ] 200
[2026-10-28 05:48:36,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:48:36,971.971 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:48:37,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:48:37,164.164 INFO    ] No camera update needed
[2026-10-28 05:48:37,167.167 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:48:37,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:48:37,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:48:37,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:48:39,225.225 INFO    ] ================================================
[2026-10-28 05:48:39,240.240 INFO    ] Launching Daemon at Wed Oct 28 05:48:39 IST 2026
[2026-10-28 05:48:39,252.252 INFO    ] ================================================
[2026-10-28 05:48:39,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:48:39
[2026-10-28 05:48:40,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:48:40,674.674 INFO    ] Initializing speech engine...
[2026-10-28 05:48:40,694.694 INFO    ] 2026-10-28 05:48:40
[2026-10-28 05:48:40,963.963 INFO    ] 2026-10-28 05:48:40
[2026-10-28 05:48:41,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:48:41,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:48:41,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:48:41,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:48:41,467.467 INFO    ] time= 28/10/2026 05:48:41
[2026-10-28 05:48:41,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:48:41,576.576 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:48:41,677.677 INFO    ] No existing commands found in stream
[2026-10-28 05:48:46,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:48:46,701.701 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-28 05:48:47,966.966 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:48:47,969.969 INFO    ] Checking for system updates...
[2026-10-28 05:48:48,008.008 INFO    ] 200
[2026-10-28 05:48:48,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:48:48,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:48:48,065.065 INFO    ] No update needed
[2026-10-28 05:48:48,067.067 INFO    ] Checking for camera pi updates...
[2026-10-28 05:48:48,100.100 INFO    ] 200
[2026-10-28 05:48:48,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:48:48,142.142 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:48:48,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:48:48,237.237 INFO    ] No camera update needed
[2026-10-28 05:48:48,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:48:48,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:48:48,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:48:48,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:48:50,293.293 INFO    ] ================================================
[2026-10-28 05:48:50,309.309 INFO    ] Launching Daemon at Wed Oct 28 05:48:50 IST 2026
[2026-10-28 05:48:50,320.320 INFO    ] ================================================
[2026-10-28 05:48:50,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:48:50
[2026-10-28 05:48:51,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:48:51,730.730 INFO    ] Initializing speech engine...
[2026-10-28 05:48:51,739.739 INFO    ] 2026-10-28 05:48:51
[2026-10-28 05:48:52,034.034 INFO    ] 2026-10-28 05:48:52
[2026-10-28 05:48:52,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:48:52,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:48:52,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:48:52,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:48:52,536.536 INFO    ] time= 28/10/2026 05:48:52
[2026-10-28 05:48:52,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:48:52,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:48:52,743.743 INFO    ] No existing commands found in stream
[2026-10-28 05:48:57,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:48:57,758.758 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-28 05:49:00,946.946 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:49:00,949.949 INFO    ] Checking for system updates...
[2026-10-28 05:49:00,985.985 INFO    ] 200
[2026-10-28 05:49:00,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:49:01,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:49:01,042.042 INFO    ] No update needed
[2026-10-28 05:49:01,045.045 INFO    ] Checking for camera pi updates...
[2026-10-28 05:49:01,078.078 INFO    ] 200
[2026-10-28 05:49:01,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:49:01,121.121 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:49:01,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:49:01,204.204 INFO    ] No camera update needed
[2026-10-28 05:49:01,206.206 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:49:01,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:49:01,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:49:01,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:49:03,261.261 INFO    ] ================================================
[2026-10-28 05:49:03,279.279 INFO    ] Launching Daemon at Wed Oct 28 05:49:03 IST 2026
[2026-10-28 05:49:03,290.290 INFO    ] ================================================
[2026-10-28 05:49:03,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:49:03
[2026-10-28 05:49:04,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:49:04,739.739 INFO    ] Initializing speech engine...
[2026-10-28 05:49:04,749.749 INFO    ] 2026-10-28 05:49:04
[2026-10-28 05:49:04,997.997 INFO    ] 2026-10-28 05:49:04
[2026-10-28 05:49:05,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:49:05,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:49:05,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:49:05,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:49:05,554.554 INFO    ] time= 28/10/2026 05:49:05
[2026-10-28 05:49:05,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:49:05,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:49:05,709.709 INFO    ] No existing commands found in stream
[2026-10-28 05:49:10,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:49:10,740.740 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 05:49:13,628.628 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:49:13,631.631 INFO    ] Checking for system updates...
[2026-10-28 05:49:13,666.666 INFO    ] 200
[2026-10-28 05:49:13,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:49:13,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:49:13,723.723 INFO    ] No update needed
[2026-10-28 05:49:13,725.725 INFO    ] Checking for camera pi updates...
[2026-10-28 05:49:13,759.759 INFO    ] 200
[2026-10-28 05:49:13,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:49:13,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:49:13,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:49:13,892.892 INFO    ] No camera update needed
[2026-10-28 05:49:13,894.894 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:49:13,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:49:13,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:49:13,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:49:15,949.949 INFO    ] ================================================
[2026-10-28 05:49:15,965.965 INFO    ] Launching Daemon at Wed Oct 28 05:49:15 IST 2026
[2026-10-28 05:49:15,976.976 INFO    ] ================================================
[2026-10-28 05:49:16,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:49:16
[2026-10-28 05:49:17,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:49:17,380.380 INFO    ] Initializing speech engine...
[2026-10-28 05:49:17,393.393 INFO    ] 2026-10-28 05:49:17
[2026-10-28 05:49:17,659.659 INFO    ] 2026-10-28 05:49:17
[2026-10-28 05:49:17,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:49:17,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:49:17,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:49:18,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:49:18,228.228 INFO    ] time= 28/10/2026 05:49:18
[2026-10-28 05:49:18,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:49:18,276.276 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:49:18,400.400 INFO    ] No existing commands found in stream
[2026-10-28 05:49:23,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:49:23,433.433 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 05:49:25,866.866 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:49:25,869.869 INFO    ] Checking for system updates...
[2026-10-28 05:49:25,904.904 INFO    ] 200
[2026-10-28 05:49:25,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:49:25,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:49:25,960.960 INFO    ] No update needed
[2026-10-28 05:49:25,962.962 INFO    ] Checking for camera pi updates...
[2026-10-28 05:49:25,998.998 INFO    ] 200
[2026-10-28 05:49:26,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:49:26,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:49:26,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:49:26,127.127 INFO    ] No camera update needed
[2026-10-28 05:49:26,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:49:26,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:49:26,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:49:26,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:49:28,180.180 INFO    ] ================================================
[2026-10-28 05:49:28,195.195 INFO    ] Launching Daemon at Wed Oct 28 05:49:28 IST 2026
[2026-10-28 05:49:28,206.206 INFO    ] ================================================
[2026-10-28 05:49:28,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:49:28
[2026-10-28 05:49:29,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:49:29,620.620 INFO    ] Initializing speech engine...
[2026-10-28 05:49:29,643.643 INFO    ] 2026-10-28 05:49:29
[2026-10-28 05:49:29,900.900 INFO    ] 2026-10-28 05:49:29
[2026-10-28 05:49:29,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:49:30,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:49:30,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:49:30,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:49:30,470.470 INFO    ] time= 28/10/2026 05:49:30
[2026-10-28 05:49:30,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:49:30,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:49:30,651.651 INFO    ] No existing commands found in stream
[2026-10-28 05:49:35,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:49:35,684.684 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 05:49:39,787.787 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:49:39,789.789 INFO    ] Checking for system updates...
[2026-10-28 05:49:39,827.827 INFO    ] 200
[2026-10-28 05:49:39,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:49:39,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:49:39,884.884 INFO    ] No update needed
[2026-10-28 05:49:39,886.886 INFO    ] Checking for camera pi updates...
[2026-10-28 05:49:39,926.926 INFO    ] 200
[2026-10-28 05:49:39,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:49:39,969.969 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:49:40,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:49:40,052.052 INFO    ] No camera update needed
[2026-10-28 05:49:40,054.054 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:49:40,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:49:40,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:49:40,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:49:42,109.109 INFO    ] ================================================
[2026-10-28 05:49:42,125.125 INFO    ] Launching Daemon at Wed Oct 28 05:49:42 IST 2026
[2026-10-28 05:49:42,136.136 INFO    ] ================================================
[2026-10-28 05:49:42,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:49:42
[2026-10-28 05:49:43,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:49:43,646.646 INFO    ] Initializing speech engine...
[2026-10-28 05:49:43,654.654 INFO    ] 2026-10-28 05:49:43
[2026-10-28 05:49:43,925.925 INFO    ] 2026-10-28 05:49:43
[2026-10-28 05:49:43,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:49:44,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:49:44,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:49:44,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:49:44,483.483 INFO    ] time= 28/10/2026 05:49:44
[2026-10-28 05:49:44,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:49:44,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:49:44,676.676 INFO    ] No existing commands found in stream
[2026-10-28 05:49:49,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:49:49,716.716 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-28 05:49:52,227.227 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:49:52,230.230 INFO    ] Checking for system updates...
[2026-10-28 05:49:52,266.266 INFO    ] 200
[2026-10-28 05:49:52,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:49:52,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:49:52,325.325 INFO    ] No update needed
[2026-10-28 05:49:52,327.327 INFO    ] Checking for camera pi updates...
[2026-10-28 05:49:52,361.361 INFO    ] 200
[2026-10-28 05:49:52,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:49:52,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:49:52,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:49:52,493.493 INFO    ] No camera update needed
[2026-10-28 05:49:52,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:49:52,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:49:52,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:49:52,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:49:54,551.551 INFO    ] ================================================
[2026-10-28 05:49:54,566.566 INFO    ] Launching Daemon at Wed Oct 28 05:49:54 IST 2026
[2026-10-28 05:49:54,577.577 INFO    ] ================================================
[2026-10-28 05:49:55,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:49:55
[2026-10-28 05:49:55,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:49:56,030.030 INFO    ] Initializing speech engine...
[2026-10-28 05:49:56,039.039 INFO    ] 2026-10-28 05:49:56
[2026-10-28 05:49:56,296.296 INFO    ] 2026-10-28 05:49:56
[2026-10-28 05:49:56,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:49:56,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:49:56,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:49:56,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:49:56,854.854 INFO    ] time= 28/10/2026 05:49:56
[2026-10-28 05:49:56,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:49:56,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:49:56,995.995 INFO    ] No existing commands found in stream
[2026-10-28 05:50:02,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:50:02,028.028 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-28 05:50:08,627.627 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:50:08,629.629 INFO    ] Checking for system updates...
[2026-10-28 05:50:08,668.668 INFO    ] 200
[2026-10-28 05:50:08,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:50:08,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:50:08,724.724 INFO    ] No update needed
[2026-10-28 05:50:08,726.726 INFO    ] Checking for camera pi updates...
[2026-10-28 05:50:08,764.764 INFO    ] 200
[2026-10-28 05:50:08,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:50:08,806.806 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:50:08,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:50:08,889.889 INFO    ] No camera update needed
[2026-10-28 05:50:08,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:50:08,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:50:08,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:50:08,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:50:10,945.945 INFO    ] ================================================
[2026-10-28 05:50:10,961.961 INFO    ] Launching Daemon at Wed Oct 28 05:50:10 IST 2026
[2026-10-28 05:50:10,972.972 INFO    ] ================================================
[2026-10-28 05:50:11,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:50:11
[2026-10-28 05:50:12,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:50:12,520.520 INFO    ] Initializing speech engine...
[2026-10-28 05:50:12,526.526 INFO    ] 2026-10-28 05:50:12
[2026-10-28 05:50:12,799.799 INFO    ] 2026-10-28 05:50:12
[2026-10-28 05:50:12,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:50:13,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:50:13,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:50:13,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:50:13,375.375 INFO    ] time= 28/10/2026 05:50:13
[2026-10-28 05:50:13,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:50:13,410.410 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:50:13,541.541 INFO    ] No existing commands found in stream
[2026-10-28 05:50:18,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:50:18,575.575 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 05:50:19,388.388 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:50:19,390.390 INFO    ] Checking for system updates...
[2026-10-28 05:50:19,427.427 INFO    ] 200
[2026-10-28 05:50:19,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:50:19,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:50:19,484.484 INFO    ] No update needed
[2026-10-28 05:50:19,487.487 INFO    ] Checking for camera pi updates...
[2026-10-28 05:50:19,523.523 INFO    ] 200
[2026-10-28 05:50:19,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:50:19,571.571 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:50:19,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:50:19,657.657 INFO    ] No camera update needed
[2026-10-28 05:50:19,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:50:19,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:50:19,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:50:19,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:50:21,715.715 INFO    ] ================================================
[2026-10-28 05:50:21,730.730 INFO    ] Launching Daemon at Wed Oct 28 05:50:21 IST 2026
[2026-10-28 05:50:21,741.741 INFO    ] ================================================
[2026-10-28 05:50:22,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:50:22
[2026-10-28 05:50:22,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:50:23,157.157 INFO    ] Initializing speech engine...
[2026-10-28 05:50:23,176.176 INFO    ] 2026-10-28 05:50:23
[2026-10-28 05:50:23,426.426 INFO    ] 2026-10-28 05:50:23
[2026-10-28 05:50:23,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:50:23,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:50:23,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:50:23,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:50:23,989.989 INFO    ] time= 28/10/2026 05:50:23
[2026-10-28 05:50:23,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:50:24,012.012 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:50:24,161.161 INFO    ] No existing commands found in stream
[2026-10-28 05:50:29,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:50:29,188.188 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-28 05:50:31,465.465 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:50:31,468.468 INFO    ] Checking for system updates...
[2026-10-28 05:50:31,503.503 INFO    ] 200
[2026-10-28 05:50:31,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:50:31,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:50:31,571.571 INFO    ] No update needed
[2026-10-28 05:50:31,574.574 INFO    ] Checking for camera pi updates...
[2026-10-28 05:50:31,615.615 INFO    ] 200
[2026-10-28 05:50:31,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:50:31,665.665 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:50:31,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:50:31,754.754 INFO    ] No camera update needed
[2026-10-28 05:50:31,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:50:31,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:50:31,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:50:31,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:50:33,813.813 INFO    ] ================================================
[2026-10-28 05:50:33,828.828 INFO    ] Launching Daemon at Wed Oct 28 05:50:33 IST 2026
[2026-10-28 05:50:33,839.839 INFO    ] ================================================
[2026-10-28 05:50:34,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:50:34
[2026-10-28 05:50:35,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:50:35,283.283 INFO    ] Initializing speech engine...
[2026-10-28 05:50:35,291.291 INFO    ] 2026-10-28 05:50:35
[2026-10-28 05:50:35,542.542 INFO    ] 2026-10-28 05:50:35
[2026-10-28 05:50:35,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:50:35,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:50:35,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:50:36,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:50:36,043.043 INFO    ] time= 28/10/2026 05:50:36
[2026-10-28 05:50:36,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:50:36,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:50:36,240.240 INFO    ] No existing commands found in stream
[2026-10-28 05:50:41,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:50:41,267.267 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-28 05:50:42,965.965 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:50:42,968.968 INFO    ] Checking for system updates...
[2026-10-28 05:50:43,004.004 INFO    ] 200
[2026-10-28 05:50:43,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:50:43,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:50:43,062.062 INFO    ] No update needed
[2026-10-28 05:50:43,064.064 INFO    ] Checking for camera pi updates...
[2026-10-28 05:50:43,098.098 INFO    ] 200
[2026-10-28 05:50:43,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:50:43,159.159 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:50:43,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:50:43,339.339 INFO    ] No camera update needed
[2026-10-28 05:50:43,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:50:43,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:50:43,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:50:43,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:50:45,394.394 INFO    ] ================================================
[2026-10-28 05:50:45,410.410 INFO    ] Launching Daemon at Wed Oct 28 05:50:45 IST 2026
[2026-10-28 05:50:45,421.421 INFO    ] ================================================
[2026-10-28 05:50:46,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:50:46
[2026-10-28 05:50:46,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:50:46,913.913 INFO    ] Initializing speech engine...
[2026-10-28 05:50:46,938.938 INFO    ] 2026-10-28 05:50:46
[2026-10-28 05:50:47,207.207 INFO    ] 2026-10-28 05:50:47
[2026-10-28 05:50:47,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:50:47,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:50:47,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:50:47,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:50:47,781.781 INFO    ] time= 28/10/2026 05:50:47
[2026-10-28 05:50:47,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:50:47,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:50:47,940.940 INFO    ] No existing commands found in stream
[2026-10-28 05:50:52,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:50:52,984.984 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-28 05:50:54,091.091 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:50:54,093.093 INFO    ] Checking for system updates...
[2026-10-28 05:50:54,130.130 INFO    ] 200
[2026-10-28 05:50:54,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:50:54,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:50:54,188.188 INFO    ] No update needed
[2026-10-28 05:50:54,190.190 INFO    ] Checking for camera pi updates...
[2026-10-28 05:50:54,227.227 INFO    ] 200
[2026-10-28 05:50:54,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:50:54,270.270 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:50:54,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:50:54,373.373 INFO    ] No camera update needed
[2026-10-28 05:50:54,376.376 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:50:54,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:50:54,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:50:54,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:50:56,429.429 INFO    ] ================================================
[2026-10-28 05:50:56,444.444 INFO    ] Launching Daemon at Wed Oct 28 05:50:56 IST 2026
[2026-10-28 05:50:56,455.455 INFO    ] ================================================
[2026-10-28 05:50:57,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:50:57
[2026-10-28 05:50:57,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:50:57,962.962 INFO    ] Initializing speech engine...
[2026-10-28 05:50:57,970.970 INFO    ] 2026-10-28 05:50:57
[2026-10-28 05:50:58,244.244 INFO    ] 2026-10-28 05:50:58
[2026-10-28 05:50:58,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:50:58,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:50:58,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:50:58,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:50:58,745.745 INFO    ] time= 28/10/2026 05:50:58
[2026-10-28 05:50:58,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:50:58,819.819 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:50:58,950.950 INFO    ] No existing commands found in stream
[2026-10-28 05:51:03,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:51:03,981.981 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-28 05:51:06,677.677 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:51:06,679.679 INFO    ] Checking for system updates...
[2026-10-28 05:51:06,715.715 INFO    ] 200
[2026-10-28 05:51:06,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:51:06,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:51:06,779.779 INFO    ] No update needed
[2026-10-28 05:51:06,781.781 INFO    ] Checking for camera pi updates...
[2026-10-28 05:51:06,814.814 INFO    ] 200
[2026-10-28 05:51:06,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:51:06,857.857 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:51:06,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:51:06,939.939 INFO    ] No camera update needed
[2026-10-28 05:51:06,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:51:06,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:51:06,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:51:06,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:51:08,994.994 INFO    ] ================================================
[2026-10-28 05:51:09,009.009 INFO    ] Launching Daemon at Wed Oct 28 05:51:09 IST 2026
[2026-10-28 05:51:09,019.019 INFO    ] ================================================
[2026-10-28 05:51:09,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:51:09
[2026-10-28 05:51:10,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:51:10,474.474 INFO    ] Initializing speech engine...
[2026-10-28 05:51:10,482.482 INFO    ] 2026-10-28 05:51:10
[2026-10-28 05:51:10,742.742 INFO    ] 2026-10-28 05:51:10
[2026-10-28 05:51:10,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:51:11,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:51:11,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:51:11,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:51:11,286.286 INFO    ] time= 28/10/2026 05:51:11
[2026-10-28 05:51:11,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:51:11,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:51:11,439.439 INFO    ] No existing commands found in stream
[2026-10-28 05:51:16,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:51:16,464.464 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-28 05:51:20,653.653 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:51:20,656.656 INFO    ] Checking for system updates...
[2026-10-28 05:51:20,697.697 INFO    ] 200
[2026-10-28 05:51:20,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:51:20,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:51:20,754.754 INFO    ] No update needed
[2026-10-28 05:51:20,757.757 INFO    ] Checking for camera pi updates...
[2026-10-28 05:51:20,790.790 INFO    ] 200
[2026-10-28 05:51:20,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:51:20,839.839 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:51:20,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:51:20,937.937 INFO    ] No camera update needed
[2026-10-28 05:51:20,940.940 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:51:20,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:51:20,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:51:20,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:51:23,995.995 INFO    ] ================================================
[2026-10-28 05:51:23,010.010 INFO    ] Launching Daemon at Wed Oct 28 05:51:23 IST 2026
[2026-10-28 05:51:23,021.021 INFO    ] ================================================
[2026-10-28 05:51:23,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:51:23
[2026-10-28 05:51:24,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:51:24,426.426 INFO    ] Initializing speech engine...
[2026-10-28 05:51:24,449.449 INFO    ] 2026-10-28 05:51:24
[2026-10-28 05:51:24,701.701 INFO    ] 2026-10-28 05:51:24
[2026-10-28 05:51:24,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:51:24,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:51:24,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:51:25,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:51:25,262.262 INFO    ] time= 28/10/2026 05:51:25
[2026-10-28 05:51:25,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:51:25,286.286 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:51:25,421.421 INFO    ] No existing commands found in stream
[2026-10-28 05:51:30,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:51:30,438.438 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 05:51:33,506.506 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:51:33,509.509 INFO    ] Checking for system updates...
[2026-10-28 05:51:33,551.551 INFO    ] 200
[2026-10-28 05:51:33,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:51:33,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:51:33,608.608 INFO    ] No update needed
[2026-10-28 05:51:33,611.611 INFO    ] Checking for camera pi updates...
[2026-10-28 05:51:33,649.649 INFO    ] 200
[2026-10-28 05:51:33,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:51:33,691.691 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:51:33,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:51:33,779.779 INFO    ] No camera update needed
[2026-10-28 05:51:33,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:51:33,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:51:33,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:51:33,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:51:35,836.836 INFO    ] ================================================
[2026-10-28 05:51:35,851.851 INFO    ] Launching Daemon at Wed Oct 28 05:51:35 IST 2026
[2026-10-28 05:51:35,862.862 INFO    ] ================================================
[2026-10-28 05:51:36,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:51:36
[2026-10-28 05:51:37,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:51:37,265.265 INFO    ] Initializing speech engine...
[2026-10-28 05:51:37,279.279 INFO    ] 2026-10-28 05:51:37
[2026-10-28 05:51:37,544.544 INFO    ] 2026-10-28 05:51:37
[2026-10-28 05:51:37,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:51:37,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:51:37,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:51:38,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:51:38,110.110 INFO    ] time= 28/10/2026 05:51:38
[2026-10-28 05:51:38,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:51:38,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:51:38,296.296 INFO    ] No existing commands found in stream
[2026-10-28 05:51:43,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:51:43,328.328 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-28 05:51:44,755.755 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:51:44,757.757 INFO    ] Checking for system updates...
[2026-10-28 05:51:44,793.793 INFO    ] 200
[2026-10-28 05:51:44,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:51:44,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:51:44,851.851 INFO    ] No update needed
[2026-10-28 05:51:44,853.853 INFO    ] Checking for camera pi updates...
[2026-10-28 05:51:44,891.891 INFO    ] 200
[2026-10-28 05:51:44,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:51:44,933.933 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:51:45,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:51:45,019.019 INFO    ] No camera update needed
[2026-10-28 05:51:45,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:51:45,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:51:45,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:51:45,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:51:47,074.074 INFO    ] ================================================
[2026-10-28 05:51:47,089.089 INFO    ] Launching Daemon at Wed Oct 28 05:51:47 IST 2026
[2026-10-28 05:51:47,099.099 INFO    ] ================================================
[2026-10-28 05:51:47,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:51:47
[2026-10-28 05:51:48,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:51:48,522.522 INFO    ] Initializing speech engine...
[2026-10-28 05:51:48,528.528 INFO    ] 2026-10-28 05:51:48
[2026-10-28 05:51:48,833.833 INFO    ] 2026-10-28 05:51:48
[2026-10-28 05:51:48,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:51:49,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:51:49,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:51:49,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:51:49,338.338 INFO    ] time= 28/10/2026 05:51:49
[2026-10-28 05:51:49,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:51:49,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:51:49,513.513 INFO    ] No existing commands found in stream
[2026-10-28 05:51:54,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:51:54,528.528 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-28 05:51:56,747.747 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:51:56,749.749 INFO    ] Checking for system updates...
[2026-10-28 05:51:56,789.789 INFO    ] 200
[2026-10-28 05:51:56,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:51:56,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:51:56,846.846 INFO    ] No update needed
[2026-10-28 05:51:56,849.849 INFO    ] Checking for camera pi updates...
[2026-10-28 05:51:56,886.886 INFO    ] 200
[2026-10-28 05:51:56,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:51:56,929.929 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:51:57,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:51:57,010.010 INFO    ] No camera update needed
[2026-10-28 05:51:57,012.012 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:51:57,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:51:57,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:51:57,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:51:59,065.065 INFO    ] ================================================
[2026-10-28 05:51:59,080.080 INFO    ] Launching Daemon at Wed Oct 28 05:51:59 IST 2026
[2026-10-28 05:51:59,091.091 INFO    ] ================================================
[2026-10-28 05:51:59,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:51:59
[2026-10-28 05:52:00,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:52:00,495.495 INFO    ] Initializing speech engine...
[2026-10-28 05:52:00,511.511 INFO    ] 2026-10-28 05:52:00
[2026-10-28 05:52:00,763.763 INFO    ] 2026-10-28 05:52:00
[2026-10-28 05:52:00,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:52:01,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:52:01,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:52:01,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:52:01,325.325 INFO    ] time= 28/10/2026 05:52:01
[2026-10-28 05:52:01,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:52:01,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:52:01,469.469 INFO    ] No existing commands found in stream
[2026-10-28 05:52:06,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:52:06,491.491 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 05:52:09,200.200 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:52:09,203.203 INFO    ] Checking for system updates...
[2026-10-28 05:52:09,240.240 INFO    ] 200
[2026-10-28 05:52:09,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:52:09,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:52:09,305.305 INFO    ] No update needed
[2026-10-28 05:52:09,308.308 INFO    ] Checking for camera pi updates...
[2026-10-28 05:52:09,342.342 INFO    ] 200
[2026-10-28 05:52:09,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:52:09,387.387 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:52:09,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:52:09,480.480 INFO    ] No camera update needed
[2026-10-28 05:52:09,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:52:09,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:52:09,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:52:09,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:52:11,538.538 INFO    ] ================================================
[2026-10-28 05:52:11,553.553 INFO    ] Launching Daemon at Wed Oct 28 05:52:11 IST 2026
[2026-10-28 05:52:11,565.565 INFO    ] ================================================
[2026-10-28 05:52:12,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:52:12
[2026-10-28 05:52:12,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:52:13,202.202 INFO    ] Initializing speech engine...
[2026-10-28 05:52:13,214.214 INFO    ] 2026-10-28 05:52:13
[2026-10-28 05:52:13,483.483 INFO    ] 2026-10-28 05:52:13
[2026-10-28 05:52:13,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:52:13,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:52:13,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:52:14,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:52:14,039.039 INFO    ] time= 28/10/2026 05:52:14
[2026-10-28 05:52:14,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:52:14,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:52:14,210.210 INFO    ] No existing commands found in stream
[2026-10-28 05:52:19,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:52:19,244.244 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-28 05:52:20,123.123 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:52:20,126.126 INFO    ] Checking for system updates...
[2026-10-28 05:52:20,163.163 INFO    ] 200
[2026-10-28 05:52:20,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:52:20,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:52:20,222.222 INFO    ] No update needed
[2026-10-28 05:52:20,225.225 INFO    ] Checking for camera pi updates...
[2026-10-28 05:52:20,260.260 INFO    ] 200
[2026-10-28 05:52:20,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:52:20,309.309 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:52:20,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:52:20,416.416 INFO    ] No camera update needed
[2026-10-28 05:52:20,419.419 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:52:20,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:52:20,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:52:20,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:52:22,483.483 INFO    ] ================================================
[2026-10-28 05:52:22,498.498 INFO    ] Launching Daemon at Wed Oct 28 05:52:22 IST 2026
[2026-10-28 05:52:22,509.509 INFO    ] ================================================
[2026-10-28 05:52:23,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:52:23
[2026-10-28 05:52:23,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:52:24,024.024 INFO    ] Initializing speech engine...
[2026-10-28 05:52:24,034.034 INFO    ] 2026-10-28 05:52:24
[2026-10-28 05:52:24,296.296 INFO    ] 2026-10-28 05:52:24
[2026-10-28 05:52:24,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:52:24,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:52:24,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:52:24,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:52:24,841.841 INFO    ] time= 28/10/2026 05:52:24
[2026-10-28 05:52:24,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:52:24,889.889 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:52:24,999.999 INFO    ] No existing commands found in stream
[2026-10-28 05:52:30,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:52:30,026.026 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-28 05:52:32,767.767 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:52:32,770.770 INFO    ] Checking for system updates...
[2026-10-28 05:52:32,808.808 INFO    ] 200
[2026-10-28 05:52:32,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:52:32,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:52:32,878.878 INFO    ] No update needed
[2026-10-28 05:52:32,881.881 INFO    ] Checking for camera pi updates...
[2026-10-28 05:52:32,920.920 INFO    ] 200
[2026-10-28 05:52:32,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:52:32,976.976 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:52:33,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:52:33,065.065 INFO    ] No camera update needed
[2026-10-28 05:52:33,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:52:33,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:52:33,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:52:33,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:52:35,122.122 INFO    ] ================================================
[2026-10-28 05:52:35,137.137 INFO    ] Launching Daemon at Wed Oct 28 05:52:35 IST 2026
[2026-10-28 05:52:35,148.148 INFO    ] ================================================
[2026-10-28 05:52:35,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:52:35
[2026-10-28 05:52:36,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:52:36,614.614 INFO    ] Initializing speech engine...
[2026-10-28 05:52:36,628.628 INFO    ] 2026-10-28 05:52:36
[2026-10-28 05:52:36,913.913 INFO    ] 2026-10-28 05:52:36
[2026-10-28 05:52:36,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:52:37,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:52:37,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:52:37,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:52:37,332.332 INFO    ] time= 28/10/2026 05:52:37
[2026-10-28 05:52:37,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:52:37,361.361 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:52:37,538.538 INFO    ] No existing commands found in stream
[2026-10-28 05:52:42,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:52:42,566.566 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 05:52:44,882.882 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:52:44,885.885 INFO    ] Checking for system updates...
[2026-10-28 05:52:44,921.921 INFO    ] 200
[2026-10-28 05:52:44,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:52:44,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:52:44,985.985 INFO    ] No update needed
[2026-10-28 05:52:44,987.987 INFO    ] Checking for camera pi updates...
[2026-10-28 05:52:45,020.020 INFO    ] 200
[2026-10-28 05:52:45,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:52:45,063.063 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:52:45,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:52:45,245.245 INFO    ] No camera update needed
[2026-10-28 05:52:45,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:52:45,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:52:45,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:52:45,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:52:47,301.301 INFO    ] ================================================
[2026-10-28 05:52:47,318.318 INFO    ] Launching Daemon at Wed Oct 28 05:52:47 IST 2026
[2026-10-28 05:52:47,329.329 INFO    ] ================================================
[2026-10-28 05:52:47,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:52:47
[2026-10-28 05:52:48,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:52:48,804.804 INFO    ] Initializing speech engine...
[2026-10-28 05:52:48,822.822 INFO    ] 2026-10-28 05:52:48
[2026-10-28 05:52:49,101.101 INFO    ] 2026-10-28 05:52:49
[2026-10-28 05:52:49,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:52:49,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:52:49,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:52:49,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:52:49,661.661 INFO    ] time= 28/10/2026 05:52:49
[2026-10-28 05:52:49,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:52:49,745.745 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:52:49,881.881 INFO    ] No existing commands found in stream
[2026-10-28 05:52:54,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:52:54,906.906 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-28 05:52:56,628.628 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:52:56,631.631 INFO    ] Checking for system updates...
[2026-10-28 05:52:56,668.668 INFO    ] 200
[2026-10-28 05:52:56,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:52:56,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:52:56,735.735 INFO    ] No update needed
[2026-10-28 05:52:56,738.738 INFO    ] Checking for camera pi updates...
[2026-10-28 05:52:56,773.773 INFO    ] 200
[2026-10-28 05:52:56,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:52:56,817.817 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:52:56,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:52:56,905.905 INFO    ] No camera update needed
[2026-10-28 05:52:56,907.907 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:52:56,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:52:56,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:52:56,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:52:58,967.967 INFO    ] ================================================
[2026-10-28 05:52:58,982.982 INFO    ] Launching Daemon at Wed Oct 28 05:52:58 IST 2026
[2026-10-28 05:52:58,992.992 INFO    ] ================================================
[2026-10-28 05:52:59,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:52:59
[2026-10-28 05:53:00,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:53:00,423.423 INFO    ] Initializing speech engine...
[2026-10-28 05:53:00,432.432 INFO    ] 2026-10-28 05:53:00
[2026-10-28 05:53:00,691.691 INFO    ] 2026-10-28 05:53:00
[2026-10-28 05:53:00,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:53:01,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:53:01,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:53:01,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:53:01,318.318 INFO    ] time= 28/10/2026 05:53:01
[2026-10-28 05:53:01,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:53:01,324.324 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:53:01,404.404 INFO    ] No existing commands found in stream
[2026-10-28 05:53:06,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:53:06,417.417 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 05:53:08,751.751 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:53:08,754.754 INFO    ] Checking for system updates...
[2026-10-28 05:53:08,799.799 INFO    ] 200
[2026-10-28 05:53:08,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:53:08,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:53:08,857.857 INFO    ] No update needed
[2026-10-28 05:53:08,859.859 INFO    ] Checking for camera pi updates...
[2026-10-28 05:53:08,893.893 INFO    ] 200
[2026-10-28 05:53:08,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:53:08,940.940 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:53:09,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:53:09,038.038 INFO    ] No camera update needed
[2026-10-28 05:53:09,041.041 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:53:09,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:53:09,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:53:09,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:53:11,094.094 INFO    ] ================================================
[2026-10-28 05:53:11,110.110 INFO    ] Launching Daemon at Wed Oct 28 05:53:11 IST 2026
[2026-10-28 05:53:11,120.120 INFO    ] ================================================
[2026-10-28 05:53:11,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:53:11
[2026-10-28 05:53:12,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:53:12,724.724 INFO    ] Initializing speech engine...
[2026-10-28 05:53:12,735.735 INFO    ] 2026-10-28 05:53:12
[2026-10-28 05:53:12,997.997 INFO    ] 2026-10-28 05:53:12
[2026-10-28 05:53:13,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:53:13,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:53:13,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:53:13,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:53:13,532.532 INFO    ] time= 28/10/2026 05:53:13
[2026-10-28 05:53:13,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:53:13,567.567 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:53:13,704.704 INFO    ] No existing commands found in stream
[2026-10-28 05:53:18,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:53:18,737.737 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-28 05:53:20,755.755 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:53:20,758.758 INFO    ] Checking for system updates...
[2026-10-28 05:53:20,794.794 INFO    ] 200
[2026-10-28 05:53:20,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:53:20,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:53:20,851.851 INFO    ] No update needed
[2026-10-28 05:53:20,854.854 INFO    ] Checking for camera pi updates...
[2026-10-28 05:53:20,887.887 INFO    ] 200
[2026-10-28 05:53:20,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:53:20,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:53:21,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:53:21,028.028 INFO    ] No camera update needed
[2026-10-28 05:53:21,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:53:21,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:53:21,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:53:21,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:53:23,085.085 INFO    ] ================================================
[2026-10-28 05:53:23,099.099 INFO    ] Launching Daemon at Wed Oct 28 05:53:23 IST 2026
[2026-10-28 05:53:23,110.110 INFO    ] ================================================
[2026-10-28 05:53:23,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:53:23
[2026-10-28 05:53:24,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:53:24,735.735 INFO    ] Initializing speech engine...
[2026-10-28 05:53:24,744.744 INFO    ] 2026-10-28 05:53:24
[2026-10-28 05:53:25,018.018 INFO    ] 2026-10-28 05:53:25
[2026-10-28 05:53:25,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:53:25,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:53:25,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:53:25,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:53:25,590.590 INFO    ] time= 28/10/2026 05:53:25
[2026-10-28 05:53:25,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:53:25,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:53:25,768.768 INFO    ] No existing commands found in stream
[2026-10-28 05:53:30,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:53:30,802.802 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-28 05:53:33,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:53:33,442.442 INFO    ] Checking for system updates...
[2026-10-28 05:53:33,479.479 INFO    ] 200
[2026-10-28 05:53:33,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:53:33,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:53:33,537.537 INFO    ] No update needed
[2026-10-28 05:53:33,539.539 INFO    ] Checking for camera pi updates...
[2026-10-28 05:53:33,573.573 INFO    ] 200
[2026-10-28 05:53:33,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:53:33,615.615 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:53:33,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:53:33,702.702 INFO    ] No camera update needed
[2026-10-28 05:53:33,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:53:33,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:53:33,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:53:33,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:53:35,758.758 INFO    ] ================================================
[2026-10-28 05:53:35,773.773 INFO    ] Launching Daemon at Wed Oct 28 05:53:35 IST 2026
[2026-10-28 05:53:35,784.784 INFO    ] ================================================
[2026-10-28 05:53:36,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:53:36
[2026-10-28 05:53:37,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:53:37,271.271 INFO    ] Initializing speech engine...
[2026-10-28 05:53:37,281.281 INFO    ] 2026-10-28 05:53:37
[2026-10-28 05:53:37,530.530 INFO    ] 2026-10-28 05:53:37
[2026-10-28 05:53:37,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:53:37,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:53:37,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:53:38,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:53:38,084.084 INFO    ] time= 28/10/2026 05:53:38
[2026-10-28 05:53:38,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:53:38,110.110 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:53:38,228.228 INFO    ] No existing commands found in stream
[2026-10-28 05:53:43,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:53:43,252.252 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-28 05:53:45,828.828 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:53:45,830.830 INFO    ] Checking for system updates...
[2026-10-28 05:53:45,875.875 INFO    ] 200
[2026-10-28 05:53:45,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:53:45,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:53:45,933.933 INFO    ] No update needed
[2026-10-28 05:53:45,935.935 INFO    ] Checking for camera pi updates...
[2026-10-28 05:53:45,972.972 INFO    ] 200
[2026-10-28 05:53:45,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:53:46,016.016 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:53:46,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:53:46,102.102 INFO    ] No camera update needed
[2026-10-28 05:53:46,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:53:46,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:53:46,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:53:46,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:53:48,156.156 INFO    ] ================================================
[2026-10-28 05:53:48,171.171 INFO    ] Launching Daemon at Wed Oct 28 05:53:48 IST 2026
[2026-10-28 05:53:48,183.183 INFO    ] ================================================
[2026-10-28 05:53:48,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:53:48
[2026-10-28 05:53:49,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:53:49,606.606 INFO    ] Initializing speech engine...
[2026-10-28 05:53:49,616.616 INFO    ] 2026-10-28 05:53:49
[2026-10-28 05:53:49,860.860 INFO    ] 2026-10-28 05:53:49
[2026-10-28 05:53:49,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:53:50,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:53:50,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:53:50,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:53:50,332.332 INFO    ] time= 28/10/2026 05:53:50
[2026-10-28 05:53:50,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:53:50,425.425 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:53:50,567.567 INFO    ] No existing commands found in stream
[2026-10-28 05:53:55,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:53:55,586.586 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-28 05:53:59,467.467 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:53:59,470.470 INFO    ] Checking for system updates...
[2026-10-28 05:53:59,510.510 INFO    ] 200
[2026-10-28 05:53:59,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:53:59,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:53:59,567.567 INFO    ] No update needed
[2026-10-28 05:53:59,569.569 INFO    ] Checking for camera pi updates...
[2026-10-28 05:53:59,610.610 INFO    ] 200
[2026-10-28 05:53:59,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:53:59,653.653 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:53:59,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:53:59,744.744 INFO    ] No camera update needed
[2026-10-28 05:53:59,746.746 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:53:59,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:53:59,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:53:59,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:54:01,801.801 INFO    ] ================================================
[2026-10-28 05:54:01,822.822 INFO    ] Launching Daemon at Wed Oct 28 05:54:01 IST 2026
[2026-10-28 05:54:01,837.837 INFO    ] ================================================
[2026-10-28 05:54:02,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:54:02
[2026-10-28 05:54:03,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:54:03,466.466 INFO    ] Initializing speech engine...
[2026-10-28 05:54:03,495.495 INFO    ] 2026-10-28 05:54:03
[2026-10-28 05:54:03,772.772 INFO    ] 2026-10-28 05:54:03
[2026-10-28 05:54:03,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:54:04,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:54:04,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:54:04,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:54:04,380.380 INFO    ] time= 28/10/2026 05:54:04
[2026-10-28 05:54:04,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:54:04,409.409 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:54:04,568.568 INFO    ] No existing commands found in stream
[2026-10-28 05:54:09,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:54:09,608.608 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-28 05:54:14,167.167 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:54:14,170.170 INFO    ] Checking for system updates...
[2026-10-28 05:54:14,206.206 INFO    ] 200
[2026-10-28 05:54:14,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:54:14,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:54:14,262.262 INFO    ] No update needed
[2026-10-28 05:54:14,265.265 INFO    ] Checking for camera pi updates...
[2026-10-28 05:54:14,303.303 INFO    ] 200
[2026-10-28 05:54:14,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:54:14,347.347 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:54:14,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:54:14,431.431 INFO    ] No camera update needed
[2026-10-28 05:54:14,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:54:14,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:54:14,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:54:14,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:54:16,488.488 INFO    ] ================================================
[2026-10-28 05:54:16,503.503 INFO    ] Launching Daemon at Wed Oct 28 05:54:16 IST 2026
[2026-10-28 05:54:16,515.515 INFO    ] ================================================
[2026-10-28 05:54:17,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:54:17
[2026-10-28 05:54:17,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:54:17,983.983 INFO    ] Initializing speech engine...
[2026-10-28 05:54:17,998.998 INFO    ] 2026-10-28 05:54:17
[2026-10-28 05:54:18,275.275 INFO    ] 2026-10-28 05:54:18
[2026-10-28 05:54:18,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:54:18,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:54:18,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:54:18,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:54:18,894.894 INFO    ] time= 28/10/2026 05:54:18
[2026-10-28 05:54:18,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:54:18,934.934 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:54:19,079.079 INFO    ] No existing commands found in stream
[2026-10-28 05:54:24,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:54:24,096.096 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-28 05:54:25,045.045 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:54:25,047.047 INFO    ] Checking for system updates...
[2026-10-28 05:54:25,084.084 INFO    ] 200
[2026-10-28 05:54:25,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:54:25,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:54:25,142.142 INFO    ] No update needed
[2026-10-28 05:54:25,145.145 INFO    ] Checking for camera pi updates...
[2026-10-28 05:54:25,182.182 INFO    ] 200
[2026-10-28 05:54:25,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:54:25,230.230 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:54:25,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:54:25,287.287 INFO    ] No camera update needed
[2026-10-28 05:54:25,290.290 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:54:25,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:54:25,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:54:25,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:54:27,342.342 INFO    ] ================================================
[2026-10-28 05:54:27,358.358 INFO    ] Launching Daemon at Wed Oct 28 05:54:27 IST 2026
[2026-10-28 05:54:27,369.369 INFO    ] ================================================
[2026-10-28 05:54:27,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:54:27
[2026-10-28 05:54:28,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:54:28,776.776 INFO    ] Initializing speech engine...
[2026-10-28 05:54:28,783.783 INFO    ] 2026-10-28 05:54:28
[2026-10-28 05:54:29,075.075 INFO    ] 2026-10-28 05:54:29
[2026-10-28 05:54:29,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:54:29,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:54:29,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:54:29,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:54:29,593.593 INFO    ] time= 28/10/2026 05:54:29
[2026-10-28 05:54:29,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:54:29,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:54:29,797.797 INFO    ] No existing commands found in stream
[2026-10-28 05:54:34,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:54:34,821.821 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 05:54:35,589.589 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:54:35,592.592 INFO    ] Checking for system updates...
[2026-10-28 05:54:35,631.631 INFO    ] 200
[2026-10-28 05:54:35,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:54:35,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:54:35,687.687 INFO    ] No update needed
[2026-10-28 05:54:35,690.690 INFO    ] Checking for camera pi updates...
[2026-10-28 05:54:35,723.723 INFO    ] 200
[2026-10-28 05:54:35,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:54:35,770.770 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:54:35,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:54:35,868.868 INFO    ] No camera update needed
[2026-10-28 05:54:35,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:54:35,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:54:35,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:54:35,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:54:37,924.924 INFO    ] ================================================
[2026-10-28 05:54:37,940.940 INFO    ] Launching Daemon at Wed Oct 28 05:54:37 IST 2026
[2026-10-28 05:54:37,951.951 INFO    ] ================================================
[2026-10-28 05:54:38,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:54:38
[2026-10-28 05:54:39,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:54:39,567.567 INFO    ] Initializing speech engine...
[2026-10-28 05:54:39,572.572 INFO    ] 2026-10-28 05:54:39
[2026-10-28 05:54:39,826.826 INFO    ] 2026-10-28 05:54:39
[2026-10-28 05:54:39,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:54:40,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:54:40,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:54:40,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:54:40,392.392 INFO    ] time= 28/10/2026 05:54:40
[2026-10-28 05:54:40,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:54:40,428.428 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:54:40,559.559 INFO    ] No existing commands found in stream
[2026-10-28 05:54:45,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:54:45,592.592 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 05:54:46,920.920 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:54:46,923.923 INFO    ] Checking for system updates...
[2026-10-28 05:54:46,958.958 INFO    ] 200
[2026-10-28 05:54:46,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:54:47,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:54:47,022.022 INFO    ] No update needed
[2026-10-28 05:54:47,025.025 INFO    ] Checking for camera pi updates...
[2026-10-28 05:54:47,059.059 INFO    ] 200
[2026-10-28 05:54:47,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:54:47,106.106 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:54:47,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:54:47,195.195 INFO    ] No camera update needed
[2026-10-28 05:54:47,197.197 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:54:47,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:54:47,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:54:47,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:54:49,253.253 INFO    ] ================================================
[2026-10-28 05:54:49,268.268 INFO    ] Launching Daemon at Wed Oct 28 05:54:49 IST 2026
[2026-10-28 05:54:49,279.279 INFO    ] ================================================
[2026-10-28 05:54:49,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:54:49
[2026-10-28 05:54:50,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:54:50,710.710 INFO    ] Initializing speech engine...
[2026-10-28 05:54:50,726.726 INFO    ] 2026-10-28 05:54:50
[2026-10-28 05:54:50,982.982 INFO    ] 2026-10-28 05:54:50
[2026-10-28 05:54:51,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:54:51,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:54:51,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:54:51,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:54:51,542.542 INFO    ] time= 28/10/2026 05:54:51
[2026-10-28 05:54:51,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:54:51,571.571 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:54:51,702.702 INFO    ] No existing commands found in stream
[2026-10-28 05:54:56,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:54:56,719.719 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-28 05:54:58,212.212 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:54:58,215.215 INFO    ] Checking for system updates...
[2026-10-28 05:54:58,255.255 INFO    ] 200
[2026-10-28 05:54:58,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:54:58,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:54:58,313.313 INFO    ] No update needed
[2026-10-28 05:54:58,316.316 INFO    ] Checking for camera pi updates...
[2026-10-28 05:54:58,349.349 INFO    ] 200
[2026-10-28 05:54:58,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:54:58,397.397 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:54:58,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:54:58,578.578 INFO    ] No camera update needed
[2026-10-28 05:54:58,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:54:58,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:54:58,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:54:58,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:55:00,634.634 INFO    ] ================================================
[2026-10-28 05:55:00,649.649 INFO    ] Launching Daemon at Wed Oct 28 05:55:00 IST 2026
[2026-10-28 05:55:00,661.661 INFO    ] ================================================
[2026-10-28 05:55:01,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:55:01
[2026-10-28 05:55:02,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:55:02,451.451 INFO    ] Initializing speech engine...
[2026-10-28 05:55:02,461.461 INFO    ] 2026-10-28 05:55:02
[2026-10-28 05:55:02,802.802 INFO    ] 2026-10-28 05:55:02
[2026-10-28 05:55:02,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:55:03,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:55:03,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:55:03,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:55:03,389.389 INFO    ] time= 28/10/2026 05:55:03
[2026-10-28 05:55:03,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:55:03,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:55:03,557.557 INFO    ] No existing commands found in stream
[2026-10-28 05:55:08,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:55:08,587.587 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 05:55:11,610.610 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:55:11,613.613 INFO    ] Checking for system updates...
[2026-10-28 05:55:11,656.656 INFO    ] 200
[2026-10-28 05:55:11,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:55:11,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:55:11,713.713 INFO    ] No update needed
[2026-10-28 05:55:11,716.716 INFO    ] Checking for camera pi updates...
[2026-10-28 05:55:11,753.753 INFO    ] 200
[2026-10-28 05:55:11,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:55:11,800.800 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:55:11,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:55:11,883.883 INFO    ] No camera update needed
[2026-10-28 05:55:11,886.886 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:55:11,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:55:11,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:55:11,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:55:13,938.938 INFO    ] ================================================
[2026-10-28 05:55:13,954.954 INFO    ] Launching Daemon at Wed Oct 28 05:55:13 IST 2026
[2026-10-28 05:55:13,965.965 INFO    ] ================================================
[2026-10-28 05:55:14,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:55:14
[2026-10-28 05:55:15,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:55:15,371.371 INFO    ] Initializing speech engine...
[2026-10-28 05:55:15,380.380 INFO    ] 2026-10-28 05:55:15
[2026-10-28 05:55:15,672.672 INFO    ] 2026-10-28 05:55:15
[2026-10-28 05:55:15,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:55:15,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:55:15,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:55:16,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:55:16,152.152 INFO    ] time= 28/10/2026 05:55:16
[2026-10-28 05:55:16,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:55:16,254.254 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:55:16,406.406 INFO    ] No existing commands found in stream
[2026-10-28 05:55:21,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:55:21,439.439 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-28 05:55:25,727.727 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:55:25,729.729 INFO    ] Checking for system updates...
[2026-10-28 05:55:25,769.769 INFO    ] 200
[2026-10-28 05:55:25,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:55:25,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:55:25,828.828 INFO    ] No update needed
[2026-10-28 05:55:25,830.830 INFO    ] Checking for camera pi updates...
[2026-10-28 05:55:25,867.867 INFO    ] 200
[2026-10-28 05:55:25,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:55:25,911.911 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:55:25,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:55:25,994.994 INFO    ] No camera update needed
[2026-10-28 05:55:25,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:55:25,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:55:26,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:55:26,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:55:28,049.049 INFO    ] ================================================
[2026-10-28 05:55:28,064.064 INFO    ] Launching Daemon at Wed Oct 28 05:55:28 IST 2026
[2026-10-28 05:55:28,076.076 INFO    ] ================================================
[2026-10-28 05:55:28,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:55:28
[2026-10-28 05:55:29,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:55:29,719.719 INFO    ] Initializing speech engine...
[2026-10-28 05:55:29,728.728 INFO    ] 2026-10-28 05:55:29
[2026-10-28 05:55:30,003.003 INFO    ] 2026-10-28 05:55:29
[2026-10-28 05:55:30,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:55:30,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:55:30,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:55:30,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:55:30,576.576 INFO    ] time= 28/10/2026 05:55:30
[2026-10-28 05:55:30,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:55:30,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:55:30,735.735 INFO    ] No existing commands found in stream
[2026-10-28 05:55:35,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:55:35,770.770 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-28 05:55:36,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:55:36,793.793 INFO    ] Checking for system updates...
[2026-10-28 05:55:36,829.829 INFO    ] 200
[2026-10-28 05:55:36,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:55:36,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:55:36,894.894 INFO    ] No update needed
[2026-10-28 05:55:36,896.896 INFO    ] Checking for camera pi updates...
[2026-10-28 05:55:36,938.938 INFO    ] 200
[2026-10-28 05:55:36,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:55:36,985.985 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:55:37,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:55:37,072.072 INFO    ] No camera update needed
[2026-10-28 05:55:37,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:55:37,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:55:37,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:55:37,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:55:39,134.134 INFO    ] ================================================
[2026-10-28 05:55:39,149.149 INFO    ] Launching Daemon at Wed Oct 28 05:55:39 IST 2026
[2026-10-28 05:55:39,160.160 INFO    ] ================================================
[2026-10-28 05:55:39,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:55:39
[2026-10-28 05:55:40,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:55:40,606.606 INFO    ] Initializing speech engine...
[2026-10-28 05:55:40,622.622 INFO    ] 2026-10-28 05:55:40
[2026-10-28 05:55:40,875.875 INFO    ] 2026-10-28 05:55:40
[2026-10-28 05:55:40,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:55:41,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:55:41,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:55:41,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:55:41,431.431 INFO    ] time= 28/10/2026 05:55:41
[2026-10-28 05:55:41,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:55:41,454.454 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:55:41,576.576 INFO    ] No existing commands found in stream
[2026-10-28 05:55:46,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:55:46,596.596 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 05:55:50,202.202 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:55:50,205.205 INFO    ] Checking for system updates...
[2026-10-28 05:55:50,241.241 INFO    ] 200
[2026-10-28 05:55:50,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:55:50,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:55:50,297.297 INFO    ] No update needed
[2026-10-28 05:55:50,300.300 INFO    ] Checking for camera pi updates...
[2026-10-28 05:55:50,334.334 INFO    ] 200
[2026-10-28 05:55:50,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:55:50,382.382 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:55:50,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:55:50,464.464 INFO    ] No camera update needed
[2026-10-28 05:55:50,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:55:50,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:55:50,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:55:50,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:55:52,520.520 INFO    ] ================================================
[2026-10-28 05:55:52,536.536 INFO    ] Launching Daemon at Wed Oct 28 05:55:52 IST 2026
[2026-10-28 05:55:52,546.546 INFO    ] ================================================
[2026-10-28 05:55:53,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:55:53
[2026-10-28 05:55:53,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:55:53,948.948 INFO    ] Initializing speech engine...
[2026-10-28 05:55:53,962.962 INFO    ] 2026-10-28 05:55:53
[2026-10-28 05:55:54,229.229 INFO    ] 2026-10-28 05:55:54
[2026-10-28 05:55:54,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:55:54,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:55:54,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:55:54,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:55:54,804.804 INFO    ] time= 28/10/2026 05:55:54
[2026-10-28 05:55:54,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:55:54,828.828 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:55:54,966.966 INFO    ] No existing commands found in stream
[2026-10-28 05:55:59,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:55:59,988.988 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 05:56:00,604.604 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:56:00,606.606 INFO    ] Checking for system updates...
[2026-10-28 05:56:00,643.643 INFO    ] 200
[2026-10-28 05:56:00,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:56:00,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:56:00,708.708 INFO    ] No update needed
[2026-10-28 05:56:00,710.710 INFO    ] Checking for camera pi updates...
[2026-10-28 05:56:00,745.745 INFO    ] 200
[2026-10-28 05:56:00,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:56:00,794.794 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:56:00,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:56:00,902.902 INFO    ] No camera update needed
[2026-10-28 05:56:00,905.905 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:56:00,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:56:00,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:56:00,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:56:02,959.959 INFO    ] ================================================
[2026-10-28 05:56:02,974.974 INFO    ] Launching Daemon at Wed Oct 28 05:56:02 IST 2026
[2026-10-28 05:56:02,989.989 INFO    ] ================================================
[2026-10-28 05:56:03,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:56:03
[2026-10-28 05:56:04,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:56:04,591.591 INFO    ] Initializing speech engine...
[2026-10-28 05:56:04,601.601 INFO    ] 2026-10-28 05:56:04
[2026-10-28 05:56:04,872.872 INFO    ] 2026-10-28 05:56:04
[2026-10-28 05:56:04,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:56:05,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:56:05,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:56:05,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:56:05,497.497 INFO    ] time= 28/10/2026 05:56:05
[2026-10-28 05:56:05,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:56:05,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:56:05,650.650 INFO    ] No existing commands found in stream
[2026-10-28 05:56:10,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:56:10,666.666 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 05:56:14,497.497 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:56:14,500.500 INFO    ] Checking for system updates...
[2026-10-28 05:56:14,541.541 INFO    ] 200
[2026-10-28 05:56:14,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:56:14,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:56:14,609.609 INFO    ] No update needed
[2026-10-28 05:56:14,611.611 INFO    ] Checking for camera pi updates...
[2026-10-28 05:56:14,651.651 INFO    ] 200
[2026-10-28 05:56:14,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:56:14,707.707 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:56:14,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:56:14,791.791 INFO    ] No camera update needed
[2026-10-28 05:56:14,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:56:14,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:56:14,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:56:14,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:56:16,846.846 INFO    ] ================================================
[2026-10-28 05:56:16,862.862 INFO    ] Launching Daemon at Wed Oct 28 05:56:16 IST 2026
[2026-10-28 05:56:16,872.872 INFO    ] ================================================
[2026-10-28 05:56:17,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:56:17
[2026-10-28 05:56:18,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:56:18,585.585 INFO    ] Initializing speech engine...
[2026-10-28 05:56:18,598.598 INFO    ] 2026-10-28 05:56:18
[2026-10-28 05:56:18,878.878 INFO    ] 2026-10-28 05:56:18
[2026-10-28 05:56:18,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:56:19,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:56:19,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:56:19,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:56:19,454.454 INFO    ] time= 28/10/2026 05:56:19
[2026-10-28 05:56:19,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:56:19,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:56:19,642.642 INFO    ] No existing commands found in stream
[2026-10-28 05:56:24,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:56:24,681.681 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-28 05:56:26,367.367 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:56:26,370.370 INFO    ] Checking for system updates...
[2026-10-28 05:56:26,406.406 INFO    ] 200
[2026-10-28 05:56:26,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:56:26,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:56:26,467.467 INFO    ] No update needed
[2026-10-28 05:56:26,469.469 INFO    ] Checking for camera pi updates...
[2026-10-28 05:56:26,509.509 INFO    ] 200
[2026-10-28 05:56:26,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:56:26,558.558 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:56:26,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:56:26,656.656 INFO    ] No camera update needed
[2026-10-28 05:56:26,658.658 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:56:26,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:56:26,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:56:26,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:56:28,715.715 INFO    ] ================================================
[2026-10-28 05:56:28,730.730 INFO    ] Launching Daemon at Wed Oct 28 05:56:28 IST 2026
[2026-10-28 05:56:28,742.742 INFO    ] ================================================
[2026-10-28 05:56:29,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:56:29
[2026-10-28 05:56:29,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:56:30,171.171 INFO    ] Initializing speech engine...
[2026-10-28 05:56:30,185.185 INFO    ] 2026-10-28 05:56:30
[2026-10-28 05:56:30,452.452 INFO    ] 2026-10-28 05:56:30
[2026-10-28 05:56:30,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:56:30,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:56:30,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:56:30,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:56:31,021.021 INFO    ] time= 28/10/2026 05:56:30
[2026-10-28 05:56:31,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:56:31,044.044 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:56:31,148.148 INFO    ] No existing commands found in stream
[2026-10-28 05:56:36,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:56:36,180.180 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-28 05:56:39,749.749 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:56:39,752.752 INFO    ] Checking for system updates...
[2026-10-28 05:56:39,807.807 INFO    ] 200
[2026-10-28 05:56:39,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:56:39,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:56:39,872.872 INFO    ] No update needed
[2026-10-28 05:56:39,875.875 INFO    ] Checking for camera pi updates...
[2026-10-28 05:56:39,913.913 INFO    ] 200
[2026-10-28 05:56:39,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:56:39,956.956 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:56:40,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:56:40,007.007 INFO    ] No camera update needed
[2026-10-28 05:56:40,010.010 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:56:40,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:56:40,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:56:40,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:56:42,063.063 INFO    ] ================================================
[2026-10-28 05:56:42,079.079 INFO    ] Launching Daemon at Wed Oct 28 05:56:42 IST 2026
[2026-10-28 05:56:42,090.090 INFO    ] ================================================
[2026-10-28 05:56:42,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:56:42
[2026-10-28 05:56:43,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:56:43,595.595 INFO    ] Initializing speech engine...
[2026-10-28 05:56:43,604.604 INFO    ] 2026-10-28 05:56:43
[2026-10-28 05:56:43,849.849 INFO    ] 2026-10-28 05:56:43
[2026-10-28 05:56:43,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:56:44,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:56:44,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:56:44,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:56:44,403.403 INFO    ] time= 28/10/2026 05:56:44
[2026-10-28 05:56:44,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:56:44,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:56:44,569.569 INFO    ] No existing commands found in stream
[2026-10-28 05:56:49,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:56:49,602.602 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-28 05:56:50,526.526 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 05:56:50,529.529 INFO    ] Checking for system updates...
[2026-10-28 05:56:50,564.564 INFO    ] 200
[2026-10-28 05:56:50,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:56:50,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:56:50,621.621 INFO    ] No update needed
[2026-10-28 05:56:50,624.624 INFO    ] Checking for camera pi updates...
[2026-10-28 05:56:50,661.661 INFO    ] 200
[2026-10-28 05:56:50,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:56:50,710.710 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:56:50,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:56:50,785.785 INFO    ] No camera update needed
[2026-10-28 05:56:50,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:56:50,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:56:50,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:56:50,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:56:52,841.841 INFO    ] ================================================
[2026-10-28 05:56:52,858.858 INFO    ] Launching Daemon at Wed Oct 28 05:56:52 IST 2026
[2026-10-28 05:56:52,869.869 INFO    ] ================================================
[2026-10-28 05:56:53,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:56:53
[2026-10-28 05:56:54,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:56:54,266.266 INFO    ] Initializing speech engine...
[2026-10-28 05:56:54,289.289 INFO    ] 2026-10-28 05:56:54
[2026-10-28 05:56:54,540.540 INFO    ] 2026-10-28 05:56:54
[2026-10-28 05:56:54,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:56:54,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:56:54,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:56:55,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:56:55,101.101 INFO    ] time= 28/10/2026 05:56:55
[2026-10-28 05:56:55,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:56:55,121.121 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:56:55,245.245 INFO    ] No existing commands found in stream
[2026-10-28 05:57:00,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:57:00,275.275 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-28 05:57:02,215.215 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:57:02,218.218 INFO    ] Checking for system updates...
[2026-10-28 05:57:02,259.259 INFO    ] 200
[2026-10-28 05:57:02,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:57:02,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:57:02,328.328 INFO    ] No update needed
[2026-10-28 05:57:02,330.330 INFO    ] Checking for camera pi updates...
[2026-10-28 05:57:02,369.369 INFO    ] 200
[2026-10-28 05:57:02,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:57:02,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:57:02,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:57:02,619.619 INFO    ] No camera update needed
[2026-10-28 05:57:02,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:57:02,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:57:02,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:57:02,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:57:04,674.674 INFO    ] ================================================
[2026-10-28 05:57:04,690.690 INFO    ] Launching Daemon at Wed Oct 28 05:57:04 IST 2026
[2026-10-28 05:57:04,702.702 INFO    ] ================================================
[2026-10-28 05:57:05,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:57:05
[2026-10-28 05:57:06,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:57:06,353.353 INFO    ] Initializing speech engine...
[2026-10-28 05:57:06,365.365 INFO    ] 2026-10-28 05:57:06
[2026-10-28 05:57:06,678.678 INFO    ] 2026-10-28 05:57:06
[2026-10-28 05:57:06,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:57:07,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:57:07,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:57:07,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:57:07,363.363 INFO    ] time= 28/10/2026 05:57:07
[2026-10-28 05:57:07,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:57:07,460.460 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:57:07,618.618 INFO    ] No existing commands found in stream
[2026-10-28 05:57:12,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:57:12,639.639 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 05:57:13,987.987 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:57:13,990.990 INFO    ] Checking for system updates...
[2026-10-28 05:57:14,031.031 INFO    ] 200
[2026-10-28 05:57:14,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:57:14,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:57:14,103.103 INFO    ] No update needed
[2026-10-28 05:57:14,106.106 INFO    ] Checking for camera pi updates...
[2026-10-28 05:57:14,145.145 INFO    ] 200
[2026-10-28 05:57:14,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:57:14,195.195 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:57:14,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:57:14,300.300 INFO    ] No camera update needed
[2026-10-28 05:57:14,303.303 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:57:14,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:57:14,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:57:14,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:57:16,362.362 INFO    ] ================================================
[2026-10-28 05:57:16,378.378 INFO    ] Launching Daemon at Wed Oct 28 05:57:16 IST 2026
[2026-10-28 05:57:16,390.390 INFO    ] ================================================
[2026-10-28 05:57:16,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:57:16
[2026-10-28 05:57:17,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:57:17,798.798 INFO    ] Initializing speech engine...
[2026-10-28 05:57:17,816.816 INFO    ] 2026-10-28 05:57:17
[2026-10-28 05:57:18,065.065 INFO    ] 2026-10-28 05:57:18
[2026-10-28 05:57:18,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:57:18,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:57:18,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:57:18,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:57:18,616.616 INFO    ] time= 28/10/2026 05:57:18
[2026-10-28 05:57:18,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:57:18,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:57:18,792.792 INFO    ] No existing commands found in stream
[2026-10-28 05:57:23,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:57:23,825.825 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 05:57:26,695.695 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:57:26,697.697 INFO    ] Checking for system updates...
[2026-10-28 05:57:26,739.739 INFO    ] 200
[2026-10-28 05:57:26,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:57:26,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:57:26,807.807 INFO    ] No update needed
[2026-10-28 05:57:26,810.810 INFO    ] Checking for camera pi updates...
[2026-10-28 05:57:26,850.850 INFO    ] 200
[2026-10-28 05:57:26,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:57:26,899.899 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:57:26,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:57:26,983.983 INFO    ] No camera update needed
[2026-10-28 05:57:26,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:57:26,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:57:26,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:57:27,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:57:29,043.043 INFO    ] ================================================
[2026-10-28 05:57:29,058.058 INFO    ] Launching Daemon at Wed Oct 28 05:57:29 IST 2026
[2026-10-28 05:57:29,069.069 INFO    ] ================================================
[2026-10-28 05:57:29,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:57:29
[2026-10-28 05:57:30,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:57:30,464.464 INFO    ] Initializing speech engine...
[2026-10-28 05:57:30,479.479 INFO    ] 2026-10-28 05:57:30
[2026-10-28 05:57:30,743.743 INFO    ] 2026-10-28 05:57:30
[2026-10-28 05:57:30,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:57:31,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:57:31,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:57:31,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:57:31,272.272 INFO    ] time= 28/10/2026 05:57:31
[2026-10-28 05:57:31,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:57:31,378.378 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:57:31,535.535 INFO    ] No existing commands found in stream
[2026-10-28 05:57:36,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:57:36,570.570 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-28 05:57:41,116.116 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:57:41,119.119 INFO    ] Checking for system updates...
[2026-10-28 05:57:41,154.154 INFO    ] 200
[2026-10-28 05:57:41,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:57:41,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:57:41,215.215 INFO    ] No update needed
[2026-10-28 05:57:41,218.218 INFO    ] Checking for camera pi updates...
[2026-10-28 05:57:41,251.251 INFO    ] 200
[2026-10-28 05:57:41,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:57:41,294.294 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:57:41,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:57:41,377.377 INFO    ] No camera update needed
[2026-10-28 05:57:41,379.379 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:57:41,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:57:41,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:57:41,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:57:43,434.434 INFO    ] ================================================
[2026-10-28 05:57:43,450.450 INFO    ] Launching Daemon at Wed Oct 28 05:57:43 IST 2026
[2026-10-28 05:57:43,461.461 INFO    ] ================================================
[2026-10-28 05:57:44,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:57:44
[2026-10-28 05:57:44,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:57:45,036.036 INFO    ] Initializing speech engine...
[2026-10-28 05:57:45,044.044 INFO    ] 2026-10-28 05:57:45
[2026-10-28 05:57:45,321.321 INFO    ] 2026-10-28 05:57:45
[2026-10-28 05:57:45,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:57:45,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:57:45,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:57:45,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:57:45,912.912 INFO    ] time= 28/10/2026 05:57:45
[2026-10-28 05:57:45,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:57:45,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:57:46,076.076 INFO    ] No existing commands found in stream
[2026-10-28 05:57:51,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:57:51,106.106 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-28 05:57:53,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 05:57:53,135.135 INFO    ] Checking for system updates...
[2026-10-28 05:57:53,177.177 INFO    ] 200
[2026-10-28 05:57:53,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:57:53,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:57:53,248.248 INFO    ] No update needed
[2026-10-28 05:57:53,251.251 INFO    ] Checking for camera pi updates...
[2026-10-28 05:57:53,285.285 INFO    ] 200
[2026-10-28 05:57:53,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:57:53,335.335 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:57:53,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:57:53,438.438 INFO    ] No camera update needed
[2026-10-28 05:57:53,441.441 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:57:53,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:57:53,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:57:53,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:57:55,498.498 INFO    ] ================================================
[2026-10-28 05:57:55,514.514 INFO    ] Launching Daemon at Wed Oct 28 05:57:55 IST 2026
[2026-10-28 05:57:55,526.526 INFO    ] ================================================
[2026-10-28 05:57:56,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:57:56
[2026-10-28 05:57:56,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:57:57,014.014 INFO    ] Initializing speech engine...
[2026-10-28 05:57:57,021.021 INFO    ] 2026-10-28 05:57:57
[2026-10-28 05:57:57,319.319 INFO    ] 2026-10-28 05:57:57
[2026-10-28 05:57:57,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:57:57,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:57:57,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:57:57,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:57:57,747.747 INFO    ] time= 28/10/2026 05:57:57
[2026-10-28 05:57:57,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:57:57,758.758 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:57:57,893.893 INFO    ] No existing commands found in stream
[2026-10-28 05:58:02,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:58:02,918.918 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 05:58:04,559.559 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:58:04,562.562 INFO    ] Checking for system updates...
[2026-10-28 05:58:04,598.598 INFO    ] 200
[2026-10-28 05:58:04,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:58:04,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:58:04,661.661 INFO    ] No update needed
[2026-10-28 05:58:04,664.664 INFO    ] Checking for camera pi updates...
[2026-10-28 05:58:04,697.697 INFO    ] 200
[2026-10-28 05:58:04,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:58:04,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:58:04,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:58:04,827.827 INFO    ] No camera update needed
[2026-10-28 05:58:04,830.830 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:58:04,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:58:04,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:58:04,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:58:06,886.886 INFO    ] ================================================
[2026-10-28 05:58:06,902.902 INFO    ] Launching Daemon at Wed Oct 28 05:58:06 IST 2026
[2026-10-28 05:58:06,913.913 INFO    ] ================================================
[2026-10-28 05:58:07,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:58:07
[2026-10-28 05:58:08,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:58:08,332.332 INFO    ] Initializing speech engine...
[2026-10-28 05:58:08,341.341 INFO    ] 2026-10-28 05:58:08
[2026-10-28 05:58:08,586.586 INFO    ] 2026-10-28 05:58:08
[2026-10-28 05:58:08,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:58:08,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:58:08,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:58:09,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:58:09,141.141 INFO    ] time= 28/10/2026 05:58:09
[2026-10-28 05:58:09,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:58:09,176.176 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:58:09,304.304 INFO    ] No existing commands found in stream
[2026-10-28 05:58:14,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:58:14,336.336 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-28 05:58:16,427.427 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:58:16,430.430 INFO    ] Checking for system updates...
[2026-10-28 05:58:16,466.466 INFO    ] 200
[2026-10-28 05:58:16,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:58:16,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:58:16,525.525 INFO    ] No update needed
[2026-10-28 05:58:16,528.528 INFO    ] Checking for camera pi updates...
[2026-10-28 05:58:16,561.561 INFO    ] 200
[2026-10-28 05:58:16,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:58:16,608.608 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:58:16,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:58:16,690.690 INFO    ] No camera update needed
[2026-10-28 05:58:16,693.693 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:58:16,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:58:16,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:58:16,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:58:18,745.745 INFO    ] ================================================
[2026-10-28 05:58:18,761.761 INFO    ] Launching Daemon at Wed Oct 28 05:58:18 IST 2026
[2026-10-28 05:58:18,772.772 INFO    ] ================================================
[2026-10-28 05:58:19,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:58:19
[2026-10-28 05:58:19,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:58:20,179.179 INFO    ] Initializing speech engine...
[2026-10-28 05:58:20,202.202 INFO    ] 2026-10-28 05:58:20
[2026-10-28 05:58:20,458.458 INFO    ] 2026-10-28 05:58:20
[2026-10-28 05:58:20,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:58:20,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:58:20,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:58:21,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:58:21,024.024 INFO    ] time= 28/10/2026 05:58:21
[2026-10-28 05:58:21,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:58:21,065.065 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:58:21,181.181 INFO    ] No existing commands found in stream
[2026-10-28 05:58:26,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:58:26,199.199 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 05:58:28,189.189 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:58:28,192.192 INFO    ] Checking for system updates...
[2026-10-28 05:58:28,227.227 INFO    ] 200
[2026-10-28 05:58:28,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:58:28,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:58:28,284.284 INFO    ] No update needed
[2026-10-28 05:58:28,286.286 INFO    ] Checking for camera pi updates...
[2026-10-28 05:58:28,320.320 INFO    ] 200
[2026-10-28 05:58:28,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:58:28,363.363 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:58:28,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:58:28,447.447 INFO    ] No camera update needed
[2026-10-28 05:58:28,449.449 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:58:28,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:58:28,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:58:28,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:58:30,503.503 INFO    ] ================================================
[2026-10-28 05:58:30,519.519 INFO    ] Launching Daemon at Wed Oct 28 05:58:30 IST 2026
[2026-10-28 05:58:30,530.530 INFO    ] ================================================
[2026-10-28 05:58:31,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:58:31
[2026-10-28 05:58:31,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:58:32,231.231 INFO    ] Initializing speech engine...
[2026-10-28 05:58:32,238.238 INFO    ] 2026-10-28 05:58:32
[2026-10-28 05:58:32,524.524 INFO    ] 2026-10-28 05:58:32
[2026-10-28 05:58:32,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:58:32,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:58:32,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:58:33,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:58:33,090.090 INFO    ] time= 28/10/2026 05:58:33
[2026-10-28 05:58:33,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:58:33,137.137 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:58:33,300.300 INFO    ] No existing commands found in stream
[2026-10-28 05:58:38,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:58:38,334.334 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-28 05:58:39,685.685 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:58:39,688.688 INFO    ] Checking for system updates...
[2026-10-28 05:58:39,724.724 INFO    ] 200
[2026-10-28 05:58:39,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:58:39,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:58:39,791.791 INFO    ] No update needed
[2026-10-28 05:58:39,794.794 INFO    ] Checking for camera pi updates...
[2026-10-28 05:58:39,831.831 INFO    ] 200
[2026-10-28 05:58:39,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:58:39,880.880 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:58:39,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:58:39,978.978 INFO    ] No camera update needed
[2026-10-28 05:58:39,980.980 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:58:39,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:58:39,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:58:39,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:58:42,037.037 INFO    ] ================================================
[2026-10-28 05:58:42,053.053 INFO    ] Launching Daemon at Wed Oct 28 05:58:42 IST 2026
[2026-10-28 05:58:42,064.064 INFO    ] ================================================
[2026-10-28 05:58:42,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:58:42
[2026-10-28 05:58:43,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:58:43,488.488 INFO    ] Initializing speech engine...
[2026-10-28 05:58:43,498.498 INFO    ] 2026-10-28 05:58:43
[2026-10-28 05:58:43,756.756 INFO    ] 2026-10-28 05:58:43
[2026-10-28 05:58:43,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:58:44,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:58:44,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:58:44,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:58:44,296.296 INFO    ] time= 28/10/2026 05:58:44
[2026-10-28 05:58:44,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:58:44,320.320 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:58:44,451.451 INFO    ] No existing commands found in stream
[2026-10-28 05:58:49,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:58:49,466.466 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-28 05:58:50,387.387 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:58:50,390.390 INFO    ] Checking for system updates...
[2026-10-28 05:58:50,439.439 INFO    ] 200
[2026-10-28 05:58:50,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:58:50,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:58:50,496.496 INFO    ] No update needed
[2026-10-28 05:58:50,498.498 INFO    ] Checking for camera pi updates...
[2026-10-28 05:58:50,531.531 INFO    ] 200
[2026-10-28 05:58:50,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:58:50,574.574 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:58:50,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:58:50,645.645 INFO    ] No camera update needed
[2026-10-28 05:58:50,648.648 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:58:50,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:58:50,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:58:50,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:58:52,701.701 INFO    ] ================================================
[2026-10-28 05:58:52,716.716 INFO    ] Launching Daemon at Wed Oct 28 05:58:52 IST 2026
[2026-10-28 05:58:52,728.728 INFO    ] ================================================
[2026-10-28 05:58:53,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:58:53
[2026-10-28 05:58:53,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:58:54,170.170 INFO    ] Initializing speech engine...
[2026-10-28 05:58:54,176.176 INFO    ] 2026-10-28 05:58:54
[2026-10-28 05:58:54,468.468 INFO    ] 2026-10-28 05:58:54
[2026-10-28 05:58:54,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:58:54,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:58:54,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:58:54,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:58:54,988.988 INFO    ] time= 28/10/2026 05:58:54
[2026-10-28 05:58:55,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:58:55,086.086 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:58:55,254.254 INFO    ] No existing commands found in stream
[2026-10-28 05:59:00,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:59:00,278.278 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-28 05:59:02,719.719 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 05:59:02,722.722 INFO    ] Checking for system updates...
[2026-10-28 05:59:02,773.773 INFO    ] 200
[2026-10-28 05:59:02,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:59:02,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:59:02,842.842 INFO    ] No update needed
[2026-10-28 05:59:02,845.845 INFO    ] Checking for camera pi updates...
[2026-10-28 05:59:02,883.883 INFO    ] 200
[2026-10-28 05:59:02,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:59:02,941.941 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:59:03,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:59:03,049.049 INFO    ] No camera update needed
[2026-10-28 05:59:03,052.052 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:59:03,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:59:03,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:59:03,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:59:05,111.111 INFO    ] ================================================
[2026-10-28 05:59:05,126.126 INFO    ] Launching Daemon at Wed Oct 28 05:59:05 IST 2026
[2026-10-28 05:59:05,138.138 INFO    ] ================================================
[2026-10-28 05:59:05,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:59:05
[2026-10-28 05:59:06,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:59:06,568.568 INFO    ] Initializing speech engine...
[2026-10-28 05:59:06,579.579 INFO    ] 2026-10-28 05:59:06
[2026-10-28 05:59:06,837.837 INFO    ] 2026-10-28 05:59:06
[2026-10-28 05:59:06,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:59:07,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:59:07,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:59:07,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:59:07,382.382 INFO    ] time= 28/10/2026 05:59:07
[2026-10-28 05:59:07,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:59:07,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:59:07,556.556 INFO    ] No existing commands found in stream
[2026-10-28 05:59:12,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:59:12,584.584 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 05:59:16,349.349 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:59:16,351.351 INFO    ] Checking for system updates...
[2026-10-28 05:59:16,387.387 INFO    ] 200
[2026-10-28 05:59:16,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:59:16,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:59:16,450.450 INFO    ] No update needed
[2026-10-28 05:59:16,452.452 INFO    ] Checking for camera pi updates...
[2026-10-28 05:59:16,486.486 INFO    ] 200
[2026-10-28 05:59:16,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:59:16,529.529 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:59:16,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:59:16,713.713 INFO    ] No camera update needed
[2026-10-28 05:59:16,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:59:16,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:59:16,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:59:16,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:59:18,769.769 INFO    ] ================================================
[2026-10-28 05:59:18,785.785 INFO    ] Launching Daemon at Wed Oct 28 05:59:18 IST 2026
[2026-10-28 05:59:18,796.796 INFO    ] ================================================
[2026-10-28 05:59:19,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:59:19
[2026-10-28 05:59:20,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:59:20,398.398 INFO    ] Initializing speech engine...
[2026-10-28 05:59:20,405.405 INFO    ] 2026-10-28 05:59:20
[2026-10-28 05:59:20,700.700 INFO    ] 2026-10-28 05:59:20
[2026-10-28 05:59:20,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:59:21,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:59:21,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:59:21,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:59:21,249.249 INFO    ] time= 28/10/2026 05:59:21
[2026-10-28 05:59:21,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:59:21,286.286 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:59:21,410.410 INFO    ] No existing commands found in stream
[2026-10-28 05:59:26,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:59:26,445.445 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-28 05:59:29,792.792 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 05:59:29,795.795 INFO    ] Checking for system updates...
[2026-10-28 05:59:29,832.832 INFO    ] 200
[2026-10-28 05:59:29,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:59:29,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:59:29,892.892 INFO    ] No update needed
[2026-10-28 05:59:29,895.895 INFO    ] Checking for camera pi updates...
[2026-10-28 05:59:29,928.928 INFO    ] 200
[2026-10-28 05:59:29,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:59:29,976.976 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:59:30,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 05:59:30,063.063 INFO    ] No camera update needed
[2026-10-28 05:59:30,066.066 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:59:30,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:59:30,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:59:30,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:59:32,127.127 INFO    ] ================================================
[2026-10-28 05:59:32,144.144 INFO    ] Launching Daemon at Wed Oct 28 05:59:32 IST 2026
[2026-10-28 05:59:32,157.157 INFO    ] ================================================
[2026-10-28 05:59:32,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:59:32
[2026-10-28 05:59:33,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:59:33,665.665 INFO    ] Initializing speech engine...
[2026-10-28 05:59:33,679.679 INFO    ] 2026-10-28 05:59:33
[2026-10-28 05:59:33,939.939 INFO    ] 2026-10-28 05:59:33
[2026-10-28 05:59:33,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:59:34,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:59:34,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:59:34,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:59:34,492.492 INFO    ] time= 28/10/2026 05:59:34
[2026-10-28 05:59:34,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:59:34,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:59:34,654.654 INFO    ] No existing commands found in stream
[2026-10-28 05:59:39,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:59:39,686.686 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-28 05:59:45,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 05:59:45,177.177 INFO    ] Checking for system updates...
[2026-10-28 05:59:45,213.213 INFO    ] 200
[2026-10-28 05:59:45,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:59:45,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:59:45,269.269 INFO    ] No update needed
[2026-10-28 05:59:45,272.272 INFO    ] Checking for camera pi updates...
[2026-10-28 05:59:45,306.306 INFO    ] 200
[2026-10-28 05:59:45,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:59:45,349.349 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:59:45,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:59:45,429.429 INFO    ] No camera update needed
[2026-10-28 05:59:45,431.431 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:59:45,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:59:45,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:59:45,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 05:59:47,488.488 INFO    ] ================================================
[2026-10-28 05:59:47,504.504 INFO    ] Launching Daemon at Wed Oct 28 05:59:47 IST 2026
[2026-10-28 05:59:47,515.515 INFO    ] ================================================
[2026-10-28 05:59:48,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 05:59:48
[2026-10-28 05:59:48,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 05:59:49,164.164 INFO    ] Initializing speech engine...
[2026-10-28 05:59:49,177.177 INFO    ] 2026-10-28 05:59:49
[2026-10-28 05:59:49,448.448 INFO    ] 2026-10-28 05:59:49
[2026-10-28 05:59:49,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 05:59:49,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 05:59:49,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 05:59:50,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 05:59:50,055.055 INFO    ] time= 28/10/2026 05:59:50
[2026-10-28 05:59:50,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 05:59:50,089.089 INFO    ] Checking for existing commands in stream...
[2026-10-28 05:59:50,212.212 INFO    ] No existing commands found in stream
[2026-10-28 05:59:55,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 05:59:55,235.235 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 05:59:58,892.892 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 05:59:58,895.895 INFO    ] Checking for system updates...
[2026-10-28 05:59:58,930.930 INFO    ] 200
[2026-10-28 05:59:58,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:59:58,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:59:58,988.988 INFO    ] No update needed
[2026-10-28 05:59:58,990.990 INFO    ] Checking for camera pi updates...
[2026-10-28 05:59:59,027.027 INFO    ] 200
[2026-10-28 05:59:59,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 05:59:59,071.071 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 05:59:59,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 05:59:59,153.153 INFO    ] No camera update needed
[2026-10-28 05:59:59,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-28 05:59:59,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 05:59:59,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 05:59:59,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:00:01,210.210 INFO    ] ================================================
[2026-10-28 06:00:01,225.225 INFO    ] Launching Daemon at Wed Oct 28 06:00:01 IST 2026
[2026-10-28 06:00:01,236.236 INFO    ] ================================================
[2026-10-28 06:00:02,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:00:02
[2026-10-28 06:00:04,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:00:06,192.192 INFO    ] Initializing speech engine...
[2026-10-28 06:00:06,201.201 INFO    ] 2026-10-28 06:00:06
[2026-10-28 06:00:06,672.672 INFO    ] 2026-10-28 06:00:06
[2026-10-28 06:00:06,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:00:07,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:00:07,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:00:07,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:00:07,378.378 INFO    ] time= 28/10/2026 06:00:07
[2026-10-28 06:00:07,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:00:07,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:00:07,634.634 INFO    ] No existing commands found in stream
[2026-10-28 06:00:12,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:00:12,660.660 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 06:00:13,988.988 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:00:13,991.991 INFO    ] Checking for system updates...
[2026-10-28 06:00:14,030.030 INFO    ] 200
[2026-10-28 06:00:14,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:00:14,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:00:14,088.088 INFO    ] No update needed
[2026-10-28 06:00:14,091.091 INFO    ] Checking for camera pi updates...
[2026-10-28 06:00:14,126.126 INFO    ] 200
[2026-10-28 06:00:14,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:00:14,174.174 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:00:14,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:00:14,273.273 INFO    ] No camera update needed
[2026-10-28 06:00:14,275.275 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:00:14,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:00:14,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:00:14,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:00:16,328.328 INFO    ] ================================================
[2026-10-28 06:00:16,344.344 INFO    ] Launching Daemon at Wed Oct 28 06:00:16 IST 2026
[2026-10-28 06:00:16,354.354 INFO    ] ================================================
[2026-10-28 06:00:16,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:00:16
[2026-10-28 06:00:17,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:00:17,839.839 INFO    ] Initializing speech engine...
[2026-10-28 06:00:17,856.856 INFO    ] 2026-10-28 06:00:17
[2026-10-28 06:00:18,137.137 INFO    ] 2026-10-28 06:00:18
[2026-10-28 06:00:18,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:00:18,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:00:18,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:00:18,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:00:18,745.745 INFO    ] time= 28/10/2026 06:00:18
[2026-10-28 06:00:18,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:00:18,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:00:18,917.917 INFO    ] No existing commands found in stream
[2026-10-28 06:00:23,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:00:23,940.940 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-28 06:00:26,975.975 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:00:26,977.977 INFO    ] Checking for system updates...
[2026-10-28 06:00:27,013.013 INFO    ] 200
[2026-10-28 06:00:27,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:00:27,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:00:27,074.074 INFO    ] No update needed
[2026-10-28 06:00:27,077.077 INFO    ] Checking for camera pi updates...
[2026-10-28 06:00:27,110.110 INFO    ] 200
[2026-10-28 06:00:27,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:00:27,152.152 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:00:27,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:00:27,234.234 INFO    ] No camera update needed
[2026-10-28 06:00:27,236.236 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:00:27,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:00:27,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:00:27,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:00:29,290.290 INFO    ] ================================================
[2026-10-28 06:00:29,305.305 INFO    ] Launching Daemon at Wed Oct 28 06:00:29 IST 2026
[2026-10-28 06:00:29,317.317 INFO    ] ================================================
[2026-10-28 06:00:29,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:00:29
[2026-10-28 06:00:30,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:00:30,896.896 INFO    ] Initializing speech engine...
[2026-10-28 06:00:30,912.912 INFO    ] 2026-10-28 06:00:30
[2026-10-28 06:00:31,223.223 INFO    ] 2026-10-28 06:00:31
[2026-10-28 06:00:31,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:00:31,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:00:31,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:00:31,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:00:31,903.903 INFO    ] time= 28/10/2026 06:00:31
[2026-10-28 06:00:31,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:00:32,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:00:32,178.178 INFO    ] No existing commands found in stream
[2026-10-28 06:00:37,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:00:37,216.216 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 06:00:39,971.971 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:00:39,974.974 INFO    ] Checking for system updates...
[2026-10-28 06:00:40,010.010 INFO    ] 200
[2026-10-28 06:00:40,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:00:40,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:00:40,069.069 INFO    ] No update needed
[2026-10-28 06:00:40,071.071 INFO    ] Checking for camera pi updates...
[2026-10-28 06:00:40,105.105 INFO    ] 200
[2026-10-28 06:00:40,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:00:40,147.147 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:00:40,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:00:40,250.250 INFO    ] No camera update needed
[2026-10-28 06:00:40,252.252 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:00:40,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:00:40,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:00:40,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:00:42,307.307 INFO    ] ================================================
[2026-10-28 06:00:42,322.322 INFO    ] Launching Daemon at Wed Oct 28 06:00:42 IST 2026
[2026-10-28 06:00:42,334.334 INFO    ] ================================================
[2026-10-28 06:00:42,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:00:42
[2026-10-28 06:00:43,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:00:43,791.791 INFO    ] Initializing speech engine...
[2026-10-28 06:00:43,800.800 INFO    ] 2026-10-28 06:00:43
[2026-10-28 06:00:44,059.059 INFO    ] 2026-10-28 06:00:44
[2026-10-28 06:00:44,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:00:44,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:00:44,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:00:44,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:00:44,606.606 INFO    ] time= 28/10/2026 06:00:44
[2026-10-28 06:00:44,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:00:44,646.646 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:00:44,759.759 INFO    ] No existing commands found in stream
[2026-10-28 06:00:49,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:00:49,791.791 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-28 06:00:50,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:00:50,971.971 INFO    ] Checking for system updates...
[2026-10-28 06:00:51,015.015 INFO    ] 200
[2026-10-28 06:00:51,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:00:51,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:00:51,073.073 INFO    ] No update needed
[2026-10-28 06:00:51,076.076 INFO    ] Checking for camera pi updates...
[2026-10-28 06:00:51,112.112 INFO    ] 200
[2026-10-28 06:00:51,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:00:51,156.156 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:00:51,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:00:51,245.245 INFO    ] No camera update needed
[2026-10-28 06:00:51,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:00:51,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:00:51,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:00:51,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:00:53,302.302 INFO    ] ================================================
[2026-10-28 06:00:53,317.317 INFO    ] Launching Daemon at Wed Oct 28 06:00:53 IST 2026
[2026-10-28 06:00:53,328.328 INFO    ] ================================================
[2026-10-28 06:00:53,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:00:53
[2026-10-28 06:00:54,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:00:54,936.936 INFO    ] Initializing speech engine...
[2026-10-28 06:00:54,944.944 INFO    ] 2026-10-28 06:00:54
[2026-10-28 06:00:55,234.234 INFO    ] 2026-10-28 06:00:55
[2026-10-28 06:00:55,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:00:55,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:00:55,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:00:55,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:00:55,801.801 INFO    ] time= 28/10/2026 06:00:55
[2026-10-28 06:00:55,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:00:55,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:00:55,979.979 INFO    ] No existing commands found in stream
[2026-10-28 06:01:01,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:01:01,018.018 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-28 06:01:02,078.078 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:01:02,082.082 INFO    ] Checking for system updates...
[2026-10-28 06:01:02,155.155 INFO    ] 200
[2026-10-28 06:01:02,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:01:02,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:01:02,265.265 INFO    ] No update needed
[2026-10-28 06:01:02,268.268 INFO    ] Checking for camera pi updates...
[2026-10-28 06:01:02,324.324 INFO    ] 200
[2026-10-28 06:01:02,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:01:02,374.374 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:01:02,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:01:02,466.466 INFO    ] No camera update needed
[2026-10-28 06:01:02,469.469 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:01:02,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:01:02,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:01:02,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:01:04,524.524 INFO    ] ================================================
[2026-10-28 06:01:04,540.540 INFO    ] Launching Daemon at Wed Oct 28 06:01:04 IST 2026
[2026-10-28 06:01:04,551.551 INFO    ] ================================================
[2026-10-28 06:01:05,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:01:05
[2026-10-28 06:01:05,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:01:06,004.004 INFO    ] Initializing speech engine...
[2026-10-28 06:01:06,014.014 INFO    ] 2026-10-28 06:01:06
[2026-10-28 06:01:06,300.300 INFO    ] 2026-10-28 06:01:06
[2026-10-28 06:01:06,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:01:06,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:01:06,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:01:06,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:01:06,899.899 INFO    ] time= 28/10/2026 06:01:06
[2026-10-28 06:01:06,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:01:06,923.923 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:01:07,057.057 INFO    ] No existing commands found in stream
[2026-10-28 06:01:12,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:01:12,085.085 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-28 06:01:14,430.430 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:01:14,432.432 INFO    ] Checking for system updates...
[2026-10-28 06:01:14,468.468 INFO    ] 200
[2026-10-28 06:01:14,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:01:14,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:01:14,526.526 INFO    ] No update needed
[2026-10-28 06:01:14,528.528 INFO    ] Checking for camera pi updates...
[2026-10-28 06:01:14,565.565 INFO    ] 200
[2026-10-28 06:01:14,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:01:14,608.608 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:01:14,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:01:14,695.695 INFO    ] No camera update needed
[2026-10-28 06:01:14,697.697 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:01:14,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:01:14,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:01:14,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:01:16,750.750 INFO    ] ================================================
[2026-10-28 06:01:16,766.766 INFO    ] Launching Daemon at Wed Oct 28 06:01:16 IST 2026
[2026-10-28 06:01:16,777.777 INFO    ] ================================================
[2026-10-28 06:01:17,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:01:17
[2026-10-28 06:01:17,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:01:18,198.198 INFO    ] Initializing speech engine...
[2026-10-28 06:01:18,221.221 INFO    ] 2026-10-28 06:01:18
[2026-10-28 06:01:18,496.496 INFO    ] 2026-10-28 06:01:18
[2026-10-28 06:01:18,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:01:18,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:01:18,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:01:19,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:01:19,084.084 INFO    ] time= 28/10/2026 06:01:19
[2026-10-28 06:01:19,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:01:19,133.133 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:01:19,273.273 INFO    ] No existing commands found in stream
[2026-10-28 06:01:24,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:01:24,301.301 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 06:01:27,310.310 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:01:27,312.312 INFO    ] Checking for system updates...
[2026-10-28 06:01:27,351.351 INFO    ] 200
[2026-10-28 06:01:27,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:01:27,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:01:27,408.408 INFO    ] No update needed
[2026-10-28 06:01:27,410.410 INFO    ] Checking for camera pi updates...
[2026-10-28 06:01:27,447.447 INFO    ] 200
[2026-10-28 06:01:27,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:01:27,490.490 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:01:27,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:01:27,690.690 INFO    ] No camera update needed
[2026-10-28 06:01:27,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:01:27,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:01:27,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:01:27,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:01:29,746.746 INFO    ] ================================================
[2026-10-28 06:01:29,762.762 INFO    ] Launching Daemon at Wed Oct 28 06:01:29 IST 2026
[2026-10-28 06:01:29,773.773 INFO    ] ================================================
[2026-10-28 06:01:30,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:01:30
[2026-10-28 06:01:30,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:01:31,214.214 INFO    ] Initializing speech engine...
[2026-10-28 06:01:31,223.223 INFO    ] 2026-10-28 06:01:31
[2026-10-28 06:01:31,487.487 INFO    ] 2026-10-28 06:01:31
[2026-10-28 06:01:31,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:01:31,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:01:31,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:01:32,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:01:32,078.078 INFO    ] time= 28/10/2026 06:01:32
[2026-10-28 06:01:32,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:01:32,139.139 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:01:32,278.278 INFO    ] No existing commands found in stream
[2026-10-28 06:01:37,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:01:37,306.306 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 06:01:41,269.269 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:01:41,271.271 INFO    ] Checking for system updates...
[2026-10-28 06:01:41,308.308 INFO    ] 200
[2026-10-28 06:01:41,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:01:41,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:01:41,365.365 INFO    ] No update needed
[2026-10-28 06:01:41,367.367 INFO    ] Checking for camera pi updates...
[2026-10-28 06:01:41,405.405 INFO    ] 200
[2026-10-28 06:01:41,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:01:41,451.451 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:01:41,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:01:41,543.543 INFO    ] No camera update needed
[2026-10-28 06:01:41,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:01:41,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:01:41,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:01:41,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:01:43,601.601 INFO    ] ================================================
[2026-10-28 06:01:43,618.618 INFO    ] Launching Daemon at Wed Oct 28 06:01:43 IST 2026
[2026-10-28 06:01:43,629.629 INFO    ] ================================================
[2026-10-28 06:01:44,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:01:44
[2026-10-28 06:01:44,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:01:45,190.190 INFO    ] Initializing speech engine...
[2026-10-28 06:01:45,204.204 INFO    ] 2026-10-28 06:01:45
[2026-10-28 06:01:45,474.474 INFO    ] 2026-10-28 06:01:45
[2026-10-28 06:01:45,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:01:45,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:01:45,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:01:46,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:01:46,034.034 INFO    ] time= 28/10/2026 06:01:46
[2026-10-28 06:01:46,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:01:46,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:01:46,182.182 INFO    ] No existing commands found in stream
[2026-10-28 06:01:51,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:01:51,216.216 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-28 06:01:52,084.084 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:01:52,087.087 INFO    ] Checking for system updates...
[2026-10-28 06:01:52,125.125 INFO    ] 200
[2026-10-28 06:01:52,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:01:52,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:01:52,184.184 INFO    ] No update needed
[2026-10-28 06:01:52,187.187 INFO    ] Checking for camera pi updates...
[2026-10-28 06:01:52,226.226 INFO    ] 200
[2026-10-28 06:01:52,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:01:52,276.276 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:01:52,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:01:52,377.377 INFO    ] No camera update needed
[2026-10-28 06:01:52,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:01:52,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:01:52,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:01:52,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:01:54,437.437 INFO    ] ================================================
[2026-10-28 06:01:54,452.452 INFO    ] Launching Daemon at Wed Oct 28 06:01:54 IST 2026
[2026-10-28 06:01:54,463.463 INFO    ] ================================================
[2026-10-28 06:01:55,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:01:55
[2026-10-28 06:01:55,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:01:56,105.105 INFO    ] Initializing speech engine...
[2026-10-28 06:01:56,116.116 INFO    ] 2026-10-28 06:01:56
[2026-10-28 06:01:56,390.390 INFO    ] 2026-10-28 06:01:56
[2026-10-28 06:01:56,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:01:56,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:01:56,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:01:56,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:01:56,913.913 INFO    ] time= 28/10/2026 06:01:56
[2026-10-28 06:01:56,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:01:56,938.938 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:01:57,064.064 INFO    ] No existing commands found in stream
[2026-10-28 06:02:02,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:02:02,081.081 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-28 06:02:04,794.794 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:02:04,797.797 INFO    ] Checking for system updates...
[2026-10-28 06:02:04,833.833 INFO    ] 200
[2026-10-28 06:02:04,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:02:04,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:02:04,892.892 INFO    ] No update needed
[2026-10-28 06:02:04,895.895 INFO    ] Checking for camera pi updates...
[2026-10-28 06:02:04,928.928 INFO    ] 200
[2026-10-28 06:02:04,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:02:04,976.976 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:02:05,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:02:05,057.057 INFO    ] No camera update needed
[2026-10-28 06:02:05,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:02:05,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:02:05,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:02:05,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:02:07,113.113 INFO    ] ================================================
[2026-10-28 06:02:07,128.128 INFO    ] Launching Daemon at Wed Oct 28 06:02:07 IST 2026
[2026-10-28 06:02:07,139.139 INFO    ] ================================================
[2026-10-28 06:02:07,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:02:07
[2026-10-28 06:02:08,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:02:08,550.550 INFO    ] Initializing speech engine...
[2026-10-28 06:02:08,569.569 INFO    ] 2026-10-28 06:02:08
[2026-10-28 06:02:08,820.820 INFO    ] 2026-10-28 06:02:08
[2026-10-28 06:02:08,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:02:09,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:02:09,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:02:09,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:02:09,309.309 INFO    ] time= 28/10/2026 06:02:09
[2026-10-28 06:02:09,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:02:09,390.390 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:02:09,512.512 INFO    ] No existing commands found in stream
[2026-10-28 06:02:14,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:02:14,540.540 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-28 06:02:16,588.588 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:02:16,591.591 INFO    ] Checking for system updates...
[2026-10-28 06:02:16,627.627 INFO    ] 200
[2026-10-28 06:02:16,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:02:16,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:02:16,689.689 INFO    ] No update needed
[2026-10-28 06:02:16,691.691 INFO    ] Checking for camera pi updates...
[2026-10-28 06:02:16,725.725 INFO    ] 200
[2026-10-28 06:02:16,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:02:16,773.773 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:02:16,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:02:16,854.854 INFO    ] No camera update needed
[2026-10-28 06:02:16,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:02:16,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:02:16,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:02:16,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:02:18,910.910 INFO    ] ================================================
[2026-10-28 06:02:18,925.925 INFO    ] Launching Daemon at Wed Oct 28 06:02:18 IST 2026
[2026-10-28 06:02:18,936.936 INFO    ] ================================================
[2026-10-28 06:02:19,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:02:19
[2026-10-28 06:02:20,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:02:20,414.414 INFO    ] Initializing speech engine...
[2026-10-28 06:02:20,423.423 INFO    ] 2026-10-28 06:02:20
[2026-10-28 06:02:20,687.687 INFO    ] 2026-10-28 06:02:20
[2026-10-28 06:02:20,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:02:21,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:02:21,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:02:21,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:02:21,280.280 INFO    ] time= 28/10/2026 06:02:21
[2026-10-28 06:02:21,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:02:21,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:02:21,414.414 INFO    ] No existing commands found in stream
[2026-10-28 06:02:26,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:02:26,448.448 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-28 06:02:30,723.723 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:02:30,726.726 INFO    ] Checking for system updates...
[2026-10-28 06:02:30,761.761 INFO    ] 200
[2026-10-28 06:02:30,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:02:30,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:02:30,818.818 INFO    ] No update needed
[2026-10-28 06:02:30,820.820 INFO    ] Checking for camera pi updates...
[2026-10-28 06:02:30,857.857 INFO    ] 200
[2026-10-28 06:02:30,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:02:30,901.901 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:02:30,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:02:30,985.985 INFO    ] No camera update needed
[2026-10-28 06:02:30,987.987 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:02:30,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:02:30,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:02:31,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:02:33,040.040 INFO    ] ================================================
[2026-10-28 06:02:33,056.056 INFO    ] Launching Daemon at Wed Oct 28 06:02:33 IST 2026
[2026-10-28 06:02:33,067.067 INFO    ] ================================================
[2026-10-28 06:02:33,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:02:33
[2026-10-28 06:02:34,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:02:34,512.512 INFO    ] Initializing speech engine...
[2026-10-28 06:02:34,531.531 INFO    ] 2026-10-28 06:02:34
[2026-10-28 06:02:34,779.779 INFO    ] 2026-10-28 06:02:34
[2026-10-28 06:02:34,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:02:35,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:02:35,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:02:35,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:02:35,337.337 INFO    ] time= 28/10/2026 06:02:35
[2026-10-28 06:02:35,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:02:35,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:02:35,500.500 INFO    ] No existing commands found in stream
[2026-10-28 06:02:40,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:02:40,527.527 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-28 06:02:44,401.401 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:02:44,404.404 INFO    ] Checking for system updates...
[2026-10-28 06:02:44,440.440 INFO    ] 200
[2026-10-28 06:02:44,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:02:44,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:02:44,499.499 INFO    ] No update needed
[2026-10-28 06:02:44,501.501 INFO    ] Checking for camera pi updates...
[2026-10-28 06:02:44,536.536 INFO    ] 200
[2026-10-28 06:02:44,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:02:44,583.583 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:02:44,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:02:44,668.668 INFO    ] No camera update needed
[2026-10-28 06:02:44,670.670 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:02:44,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:02:44,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:02:44,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:02:46,725.725 INFO    ] ================================================
[2026-10-28 06:02:46,740.740 INFO    ] Launching Daemon at Wed Oct 28 06:02:46 IST 2026
[2026-10-28 06:02:46,751.751 INFO    ] ================================================
[2026-10-28 06:02:47,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:02:47
[2026-10-28 06:02:47,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:02:48,201.201 INFO    ] Initializing speech engine...
[2026-10-28 06:02:48,207.207 INFO    ] 2026-10-28 06:02:48
[2026-10-28 06:02:48,452.452 INFO    ] 2026-10-28 06:02:48
[2026-10-28 06:02:48,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:02:48,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:02:48,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:02:48,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:02:49,010.010 INFO    ] time= 28/10/2026 06:02:48
[2026-10-28 06:02:49,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:02:49,033.033 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:02:49,161.161 INFO    ] No existing commands found in stream
[2026-10-28 06:02:54,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:02:54,179.179 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-28 06:02:54,910.910 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:02:54,913.913 INFO    ] Checking for system updates...
[2026-10-28 06:02:54,949.949 INFO    ] 200
[2026-10-28 06:02:54,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:02:55,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:02:55,007.007 INFO    ] No update needed
[2026-10-28 06:02:55,009.009 INFO    ] Checking for camera pi updates...
[2026-10-28 06:02:55,043.043 INFO    ] 200
[2026-10-28 06:02:55,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:02:55,086.086 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:02:55,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:02:55,181.181 INFO    ] No camera update needed
[2026-10-28 06:02:55,183.183 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:02:55,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:02:55,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:02:55,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:02:57,237.237 INFO    ] ================================================
[2026-10-28 06:02:57,252.252 INFO    ] Launching Daemon at Wed Oct 28 06:02:57 IST 2026
[2026-10-28 06:02:57,262.262 INFO    ] ================================================
[2026-10-28 06:02:57,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:02:57
[2026-10-28 06:02:58,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:02:58,669.669 INFO    ] Initializing speech engine...
[2026-10-28 06:02:58,675.675 INFO    ] 2026-10-28 06:02:58
[2026-10-28 06:02:58,970.970 INFO    ] 2026-10-28 06:02:58
[2026-10-28 06:02:58,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:02:59,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:02:59,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:02:59,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:02:59,394.394 INFO    ] time= 28/10/2026 06:02:59
[2026-10-28 06:02:59,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:02:59,469.469 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:02:59,595.595 INFO    ] No existing commands found in stream
[2026-10-28 06:03:04,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:03:04,627.627 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-28 06:03:06,970.970 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:03:06,973.973 INFO    ] Checking for system updates...
[2026-10-28 06:03:07,015.015 INFO    ] 200
[2026-10-28 06:03:07,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:03:07,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:03:07,091.091 INFO    ] No update needed
[2026-10-28 06:03:07,093.093 INFO    ] Checking for camera pi updates...
[2026-10-28 06:03:07,129.129 INFO    ] 200
[2026-10-28 06:03:07,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:03:07,175.175 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:03:07,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:03:07,260.260 INFO    ] No camera update needed
[2026-10-28 06:03:07,262.262 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:03:07,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:03:07,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:03:07,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:03:09,318.318 INFO    ] ================================================
[2026-10-28 06:03:09,333.333 INFO    ] Launching Daemon at Wed Oct 28 06:03:09 IST 2026
[2026-10-28 06:03:09,344.344 INFO    ] ================================================
[2026-10-28 06:03:09,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:03:09
[2026-10-28 06:03:10,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:03:10,769.769 INFO    ] Initializing speech engine...
[2026-10-28 06:03:10,775.775 INFO    ] 2026-10-28 06:03:10
[2026-10-28 06:03:11,020.020 INFO    ] 2026-10-28 06:03:11
[2026-10-28 06:03:11,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:03:11,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:03:11,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:03:11,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:03:11,575.575 INFO    ] time= 28/10/2026 06:03:11
[2026-10-28 06:03:11,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:03:11,615.615 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:03:11,744.744 INFO    ] No existing commands found in stream
[2026-10-28 06:03:16,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:03:16,772.772 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-28 06:03:20,030.030 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:03:20,033.033 INFO    ] Checking for system updates...
[2026-10-28 06:03:20,069.069 INFO    ] 200
[2026-10-28 06:03:20,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:03:20,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:03:20,134.134 INFO    ] No update needed
[2026-10-28 06:03:20,137.137 INFO    ] Checking for camera pi updates...
[2026-10-28 06:03:20,170.170 INFO    ] 200
[2026-10-28 06:03:20,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:03:20,213.213 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:03:20,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:03:20,306.306 INFO    ] No camera update needed
[2026-10-28 06:03:20,308.308 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:03:20,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:03:20,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:03:20,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:03:22,361.361 INFO    ] ================================================
[2026-10-28 06:03:22,376.376 INFO    ] Launching Daemon at Wed Oct 28 06:03:22 IST 2026
[2026-10-28 06:03:22,387.387 INFO    ] ================================================
[2026-10-28 06:03:22,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:03:22
[2026-10-28 06:03:23,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:03:23,798.798 INFO    ] Initializing speech engine...
[2026-10-28 06:03:23,823.823 INFO    ] 2026-10-28 06:03:23
[2026-10-28 06:03:24,095.095 INFO    ] 2026-10-28 06:03:24
[2026-10-28 06:03:24,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:03:24,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:03:24,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:03:24,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:03:24,683.683 INFO    ] time= 28/10/2026 06:03:24
[2026-10-28 06:03:24,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:03:24,727.727 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:03:24,801.801 INFO    ] No existing commands found in stream
[2026-10-28 06:03:29,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:03:29,839.839 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-28 06:03:33,206.206 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:03:33,209.209 INFO    ] Checking for system updates...
[2026-10-28 06:03:33,245.245 INFO    ] 200
[2026-10-28 06:03:33,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:03:33,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:03:33,306.306 INFO    ] No update needed
[2026-10-28 06:03:33,309.309 INFO    ] Checking for camera pi updates...
[2026-10-28 06:03:33,349.349 INFO    ] 200
[2026-10-28 06:03:33,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:03:33,397.397 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:03:33,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:03:33,479.479 INFO    ] No camera update needed
[2026-10-28 06:03:33,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:03:33,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:03:33,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:03:33,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:03:35,534.534 INFO    ] ================================================
[2026-10-28 06:03:35,549.549 INFO    ] Launching Daemon at Wed Oct 28 06:03:35 IST 2026
[2026-10-28 06:03:35,559.559 INFO    ] ================================================
[2026-10-28 06:03:36,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:03:36
[2026-10-28 06:03:36,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:03:37,163.163 INFO    ] Initializing speech engine...
[2026-10-28 06:03:37,173.173 INFO    ] 2026-10-28 06:03:37
[2026-10-28 06:03:37,446.446 INFO    ] 2026-10-28 06:03:37
[2026-10-28 06:03:37,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:03:37,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:03:37,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:03:37,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:03:37,994.994 INFO    ] time= 28/10/2026 06:03:37
[2026-10-28 06:03:38,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:03:38,043.043 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:03:38,158.158 INFO    ] No existing commands found in stream
[2026-10-28 06:03:43,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:03:43,194.194 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 06:03:46,710.710 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:03:46,713.713 INFO    ] Checking for system updates...
[2026-10-28 06:03:46,754.754 INFO    ] 200
[2026-10-28 06:03:46,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:03:46,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:03:46,815.815 INFO    ] No update needed
[2026-10-28 06:03:46,817.817 INFO    ] Checking for camera pi updates...
[2026-10-28 06:03:46,861.861 INFO    ] 200
[2026-10-28 06:03:46,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:03:46,910.910 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:03:46,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:03:46,992.992 INFO    ] No camera update needed
[2026-10-28 06:03:46,995.995 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:03:46,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:03:47,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:03:47,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:03:49,051.051 INFO    ] ================================================
[2026-10-28 06:03:49,066.066 INFO    ] Launching Daemon at Wed Oct 28 06:03:49 IST 2026
[2026-10-28 06:03:49,076.076 INFO    ] ================================================
[2026-10-28 06:03:49,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:03:49
[2026-10-28 06:03:50,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:03:50,680.680 INFO    ] Initializing speech engine...
[2026-10-28 06:03:50,694.694 INFO    ] 2026-10-28 06:03:50
[2026-10-28 06:03:50,963.963 INFO    ] 2026-10-28 06:03:50
[2026-10-28 06:03:51,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:03:51,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:03:51,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:03:51,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:03:51,516.516 INFO    ] time= 28/10/2026 06:03:51
[2026-10-28 06:03:51,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:03:51,563.563 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:03:51,680.680 INFO    ] No existing commands found in stream
[2026-10-28 06:03:56,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:03:56,715.715 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-28 06:03:58,670.670 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:03:58,673.673 INFO    ] Checking for system updates...
[2026-10-28 06:03:58,711.711 INFO    ] 200
[2026-10-28 06:03:58,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:03:58,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:03:58,769.769 INFO    ] No update needed
[2026-10-28 06:03:58,771.771 INFO    ] Checking for camera pi updates...
[2026-10-28 06:03:58,807.807 INFO    ] 200
[2026-10-28 06:03:58,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:03:58,850.850 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:03:58,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:03:58,947.947 INFO    ] No camera update needed
[2026-10-28 06:03:58,949.949 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:03:58,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:03:58,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:03:58,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:04:01,001.001 INFO    ] ================================================
[2026-10-28 06:04:01,016.016 INFO    ] Launching Daemon at Wed Oct 28 06:04:01 IST 2026
[2026-10-28 06:04:01,027.027 INFO    ] ================================================
[2026-10-28 06:04:01,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:04:01
[2026-10-28 06:04:02,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:04:02,893.893 INFO    ] Initializing speech engine...
[2026-10-28 06:04:02,904.904 INFO    ] 2026-10-28 06:04:02
[2026-10-28 06:04:03,163.163 INFO    ] 2026-10-28 06:04:03
[2026-10-28 06:04:03,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:04:03,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:04:03,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:04:03,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:04:03,876.876 INFO    ] time= 28/10/2026 06:04:03
[2026-10-28 06:04:03,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:04:03,955.955 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:04:04,090.090 INFO    ] No existing commands found in stream
[2026-10-28 06:04:09,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:04:09,123.123 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-28 06:04:12,241.241 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:04:12,244.244 INFO    ] Checking for system updates...
[2026-10-28 06:04:12,280.280 INFO    ] 200
[2026-10-28 06:04:12,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:04:12,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:04:12,336.336 INFO    ] No update needed
[2026-10-28 06:04:12,338.338 INFO    ] Checking for camera pi updates...
[2026-10-28 06:04:12,372.372 INFO    ] 200
[2026-10-28 06:04:12,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:04:12,414.414 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:04:12,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:04:12,513.513 INFO    ] No camera update needed
[2026-10-28 06:04:12,515.515 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:04:12,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:04:12,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:04:12,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:04:14,570.570 INFO    ] ================================================
[2026-10-28 06:04:14,584.584 INFO    ] Launching Daemon at Wed Oct 28 06:04:14 IST 2026
[2026-10-28 06:04:14,595.595 INFO    ] ================================================
[2026-10-28 06:04:15,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:04:15
[2026-10-28 06:04:15,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:04:16,187.187 INFO    ] Initializing speech engine...
[2026-10-28 06:04:16,190.190 INFO    ] 2026-10-28 06:04:16
[2026-10-28 06:04:16,451.451 INFO    ] 2026-10-28 06:04:16
[2026-10-28 06:04:16,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:04:16,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:04:16,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:04:16,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:04:17,009.009 INFO    ] time= 28/10/2026 06:04:16
[2026-10-28 06:04:17,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:04:17,141.141 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:04:17,271.271 INFO    ] No existing commands found in stream
[2026-10-28 06:04:22,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:04:22,299.299 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-28 06:04:24,455.455 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:04:24,458.458 INFO    ] Checking for system updates...
[2026-10-28 06:04:24,494.494 INFO    ] 200
[2026-10-28 06:04:24,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:04:24,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:04:24,552.552 INFO    ] No update needed
[2026-10-28 06:04:24,555.555 INFO    ] Checking for camera pi updates...
[2026-10-28 06:04:24,593.593 INFO    ] 200
[2026-10-28 06:04:24,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:04:24,636.636 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:04:24,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:04:24,719.719 INFO    ] No camera update needed
[2026-10-28 06:04:24,721.721 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:04:24,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:04:24,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:04:24,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:04:26,775.775 INFO    ] ================================================
[2026-10-28 06:04:26,790.790 INFO    ] Launching Daemon at Wed Oct 28 06:04:26 IST 2026
[2026-10-28 06:04:26,801.801 INFO    ] ================================================
[2026-10-28 06:04:27,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:04:27
[2026-10-28 06:04:27,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:04:28,284.284 INFO    ] Initializing speech engine...
[2026-10-28 06:04:28,298.298 INFO    ] 2026-10-28 06:04:28
[2026-10-28 06:04:28,602.602 INFO    ] 2026-10-28 06:04:28
[2026-10-28 06:04:28,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:04:28,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:04:28,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:04:29,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:04:29,116.116 INFO    ] time= 28/10/2026 06:04:29
[2026-10-28 06:04:29,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:04:29,152.152 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:04:29,269.269 INFO    ] No existing commands found in stream
[2026-10-28 06:04:34,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:04:34,302.302 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 06:04:36,032.032 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:04:36,035.035 INFO    ] Checking for system updates...
[2026-10-28 06:04:36,072.072 INFO    ] 200
[2026-10-28 06:04:36,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:04:36,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:04:36,137.137 INFO    ] No update needed
[2026-10-28 06:04:36,140.140 INFO    ] Checking for camera pi updates...
[2026-10-28 06:04:36,174.174 INFO    ] 200
[2026-10-28 06:04:36,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:04:36,219.219 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:04:36,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:04:36,271.271 INFO    ] No camera update needed
[2026-10-28 06:04:36,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:04:36,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:04:36,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:04:36,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:04:38,331.331 INFO    ] ================================================
[2026-10-28 06:04:38,346.346 INFO    ] Launching Daemon at Wed Oct 28 06:04:38 IST 2026
[2026-10-28 06:04:38,356.356 INFO    ] ================================================
[2026-10-28 06:04:38,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:04:38
[2026-10-28 06:04:39,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:04:39,768.768 INFO    ] Initializing speech engine...
[2026-10-28 06:04:39,777.777 INFO    ] 2026-10-28 06:04:39
[2026-10-28 06:04:40,036.036 INFO    ] 2026-10-28 06:04:40
[2026-10-28 06:04:40,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:04:40,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:04:40,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:04:40,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:04:40,576.576 INFO    ] time= 28/10/2026 06:04:40
[2026-10-28 06:04:40,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:04:40,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:04:40,730.730 INFO    ] No existing commands found in stream
[2026-10-28 06:04:45,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:04:45,745.745 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 06:04:48,606.606 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:04:48,609.609 INFO    ] Checking for system updates...
[2026-10-28 06:04:48,645.645 INFO    ] 200
[2026-10-28 06:04:48,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:04:48,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:04:48,709.709 INFO    ] No update needed
[2026-10-28 06:04:48,712.712 INFO    ] Checking for camera pi updates...
[2026-10-28 06:04:48,746.746 INFO    ] 200
[2026-10-28 06:04:48,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:04:48,790.790 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:04:48,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:04:48,873.873 INFO    ] No camera update needed
[2026-10-28 06:04:48,876.876 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:04:48,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:04:48,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:04:48,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:04:50,930.930 INFO    ] ================================================
[2026-10-28 06:04:50,946.946 INFO    ] Launching Daemon at Wed Oct 28 06:04:50 IST 2026
[2026-10-28 06:04:50,957.957 INFO    ] ================================================
[2026-10-28 06:04:51,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:04:51
[2026-10-28 06:04:52,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:04:52,380.380 INFO    ] Initializing speech engine...
[2026-10-28 06:04:52,390.390 INFO    ] 2026-10-28 06:04:52
[2026-10-28 06:04:52,650.650 INFO    ] 2026-10-28 06:04:52
[2026-10-28 06:04:52,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:04:52,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:04:52,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:04:53,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:04:53,200.200 INFO    ] time= 28/10/2026 06:04:53
[2026-10-28 06:04:53,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:04:53,245.245 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:04:53,359.359 INFO    ] No existing commands found in stream
[2026-10-28 06:04:58,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:04:58,391.391 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-28 06:04:59,267.267 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:04:59,270.270 INFO    ] Checking for system updates...
[2026-10-28 06:04:59,306.306 INFO    ] 200
[2026-10-28 06:04:59,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:04:59,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:04:59,366.366 INFO    ] No update needed
[2026-10-28 06:04:59,368.368 INFO    ] Checking for camera pi updates...
[2026-10-28 06:04:59,402.402 INFO    ] 200
[2026-10-28 06:04:59,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:04:59,450.450 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:04:59,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:04:59,526.526 INFO    ] No camera update needed
[2026-10-28 06:04:59,529.529 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:04:59,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:04:59,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:04:59,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:05:01,597.597 INFO    ] ================================================
[2026-10-28 06:05:01,639.639 INFO    ] Launching Daemon at Wed Oct 28 06:05:01 IST 2026
[2026-10-28 06:05:01,706.706 INFO    ] ================================================
[2026-10-28 06:05:02,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:05:02
[2026-10-28 06:05:03,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:05:03,484.484 INFO    ] Initializing speech engine...
[2026-10-28 06:05:03,494.494 INFO    ] 2026-10-28 06:05:03
[2026-10-28 06:05:03,776.776 INFO    ] 2026-10-28 06:05:03
[2026-10-28 06:05:03,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:05:04,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:05:04,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:05:04,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:05:04,342.342 INFO    ] time= 28/10/2026 06:05:04
[2026-10-28 06:05:04,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:05:04,377.377 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:05:04,500.500 INFO    ] No existing commands found in stream
[2026-10-28 06:05:09,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:05:09,539.539 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 06:05:10,993.993 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:05:10,996.996 INFO    ] Checking for system updates...
[2026-10-28 06:05:11,034.034 INFO    ] 200
[2026-10-28 06:05:11,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:05:11,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:05:11,093.093 INFO    ] No update needed
[2026-10-28 06:05:11,096.096 INFO    ] Checking for camera pi updates...
[2026-10-28 06:05:11,131.131 INFO    ] 200
[2026-10-28 06:05:11,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:05:11,175.175 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:05:11,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:05:11,265.265 INFO    ] No camera update needed
[2026-10-28 06:05:11,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:05:11,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:05:11,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:05:11,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:05:13,324.324 INFO    ] ================================================
[2026-10-28 06:05:13,339.339 INFO    ] Launching Daemon at Wed Oct 28 06:05:13 IST 2026
[2026-10-28 06:05:13,350.350 INFO    ] ================================================
[2026-10-28 06:05:13,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:05:13
[2026-10-28 06:05:14,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:05:14,745.745 INFO    ] Initializing speech engine...
[2026-10-28 06:05:14,768.768 INFO    ] 2026-10-28 06:05:14
[2026-10-28 06:05:15,019.019 INFO    ] 2026-10-28 06:05:15
[2026-10-28 06:05:15,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:05:15,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:05:15,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:05:15,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:05:15,572.572 INFO    ] time= 28/10/2026 06:05:15
[2026-10-28 06:05:15,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:05:15,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:05:15,728.728 INFO    ] No existing commands found in stream
[2026-10-28 06:05:20,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:05:20,758.758 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 06:05:23,907.907 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:05:23,910.910 INFO    ] Checking for system updates...
[2026-10-28 06:05:23,947.947 INFO    ] 200
[2026-10-28 06:05:23,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:05:24,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:05:24,059.059 INFO    ] No update needed
[2026-10-28 06:05:24,062.062 INFO    ] Checking for camera pi updates...
[2026-10-28 06:05:24,095.095 INFO    ] 200
[2026-10-28 06:05:24,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:05:24,139.139 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:05:24,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:05:24,226.226 INFO    ] No camera update needed
[2026-10-28 06:05:24,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:05:24,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:05:24,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:05:24,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:05:26,281.281 INFO    ] ================================================
[2026-10-28 06:05:26,297.297 INFO    ] Launching Daemon at Wed Oct 28 06:05:26 IST 2026
[2026-10-28 06:05:26,309.309 INFO    ] ================================================
[2026-10-28 06:05:26,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:05:26
[2026-10-28 06:05:27,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:05:27,726.726 INFO    ] Initializing speech engine...
[2026-10-28 06:05:27,751.751 INFO    ] 2026-10-28 06:05:27
[2026-10-28 06:05:28,019.019 INFO    ] 2026-10-28 06:05:27
[2026-10-28 06:05:28,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:05:28,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:05:28,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:05:28,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:05:28,601.601 INFO    ] time= 28/10/2026 06:05:28
[2026-10-28 06:05:28,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:05:28,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:05:28,797.797 INFO    ] No existing commands found in stream
[2026-10-28 06:05:33,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:05:33,826.826 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-28 06:05:35,468.468 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:05:35,471.471 INFO    ] Checking for system updates...
[2026-10-28 06:05:35,507.507 INFO    ] 200
[2026-10-28 06:05:35,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:05:35,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:05:35,565.565 INFO    ] No update needed
[2026-10-28 06:05:35,567.567 INFO    ] Checking for camera pi updates...
[2026-10-28 06:05:35,601.601 INFO    ] 200
[2026-10-28 06:05:35,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:05:35,646.646 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:05:35,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:05:35,826.826 INFO    ] No camera update needed
[2026-10-28 06:05:35,828.828 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:05:35,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:05:35,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:05:35,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:05:37,880.880 INFO    ] ================================================
[2026-10-28 06:05:37,895.895 INFO    ] Launching Daemon at Wed Oct 28 06:05:37 IST 2026
[2026-10-28 06:05:37,907.907 INFO    ] ================================================
[2026-10-28 06:05:38,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:05:38
[2026-10-28 06:05:39,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:05:39,328.328 INFO    ] Initializing speech engine...
[2026-10-28 06:05:39,337.337 INFO    ] 2026-10-28 06:05:39
[2026-10-28 06:05:39,594.594 INFO    ] 2026-10-28 06:05:39
[2026-10-28 06:05:39,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:05:39,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:05:39,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:05:40,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:05:40,136.136 INFO    ] time= 28/10/2026 06:05:40
[2026-10-28 06:05:40,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:05:40,162.162 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:05:40,290.290 INFO    ] No existing commands found in stream
[2026-10-28 06:05:45,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:05:45,309.309 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-28 06:05:47,917.917 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:05:47,920.920 INFO    ] Checking for system updates...
[2026-10-28 06:05:47,956.956 INFO    ] 200
[2026-10-28 06:05:47,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:05:48,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:05:48,021.021 INFO    ] No update needed
[2026-10-28 06:05:48,023.023 INFO    ] Checking for camera pi updates...
[2026-10-28 06:05:48,057.057 INFO    ] 200
[2026-10-28 06:05:48,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:05:48,100.100 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:05:48,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:05:48,194.194 INFO    ] No camera update needed
[2026-10-28 06:05:48,196.196 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:05:48,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:05:48,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:05:48,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:05:50,251.251 INFO    ] ================================================
[2026-10-28 06:05:50,266.266 INFO    ] Launching Daemon at Wed Oct 28 06:05:50 IST 2026
[2026-10-28 06:05:50,277.277 INFO    ] ================================================
[2026-10-28 06:05:50,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:05:50
[2026-10-28 06:05:51,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:05:51,686.686 INFO    ] Initializing speech engine...
[2026-10-28 06:05:51,694.694 INFO    ] 2026-10-28 06:05:51
[2026-10-28 06:05:51,968.968 INFO    ] 2026-10-28 06:05:51
[2026-10-28 06:05:52,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:05:52,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:05:52,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:05:52,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:05:52,517.517 INFO    ] time= 28/10/2026 06:05:52
[2026-10-28 06:05:52,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:05:52,545.545 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:05:52,689.689 INFO    ] No existing commands found in stream
[2026-10-28 06:05:57,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:05:57,711.711 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-28 06:05:58,509.509 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:05:58,511.511 INFO    ] Checking for system updates...
[2026-10-28 06:05:58,550.550 INFO    ] 200
[2026-10-28 06:05:58,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:05:58,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:05:58,608.608 INFO    ] No update needed
[2026-10-28 06:05:58,610.610 INFO    ] Checking for camera pi updates...
[2026-10-28 06:05:58,645.645 INFO    ] 200
[2026-10-28 06:05:58,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:05:58,687.687 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:05:58,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:05:58,768.768 INFO    ] No camera update needed
[2026-10-28 06:05:58,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:05:58,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:05:58,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:05:58,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:06:00,822.822 INFO    ] ================================================
[2026-10-28 06:06:00,838.838 INFO    ] Launching Daemon at Wed Oct 28 06:06:00 IST 2026
[2026-10-28 06:06:00,850.850 INFO    ] ================================================
[2026-10-28 06:06:01,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:06:01
[2026-10-28 06:06:02,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:06:02,512.512 INFO    ] Initializing speech engine...
[2026-10-28 06:06:02,528.528 INFO    ] 2026-10-28 06:06:02
[2026-10-28 06:06:02,818.818 INFO    ] 2026-10-28 06:06:02
[2026-10-28 06:06:02,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:06:03,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:06:03,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:06:03,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:06:03,407.407 INFO    ] time= 28/10/2026 06:06:03
[2026-10-28 06:06:03,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:06:03,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:06:03,612.612 INFO    ] No existing commands found in stream
[2026-10-28 06:06:08,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:06:08,638.638 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-28 06:06:09,496.496 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:06:09,499.499 INFO    ] Checking for system updates...
[2026-10-28 06:06:09,535.535 INFO    ] 200
[2026-10-28 06:06:09,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:06:09,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:06:09,591.591 INFO    ] No update needed
[2026-10-28 06:06:09,594.594 INFO    ] Checking for camera pi updates...
[2026-10-28 06:06:09,628.628 INFO    ] 200
[2026-10-28 06:06:09,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:06:09,678.678 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:06:09,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:06:09,760.760 INFO    ] No camera update needed
[2026-10-28 06:06:09,762.762 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:06:09,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:06:09,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:06:09,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:06:11,815.815 INFO    ] ================================================
[2026-10-28 06:06:11,831.831 INFO    ] Launching Daemon at Wed Oct 28 06:06:11 IST 2026
[2026-10-28 06:06:11,843.843 INFO    ] ================================================
[2026-10-28 06:06:12,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:06:12
[2026-10-28 06:06:13,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:06:13,336.336 INFO    ] Initializing speech engine...
[2026-10-28 06:06:13,344.344 INFO    ] 2026-10-28 06:06:13
[2026-10-28 06:06:13,617.617 INFO    ] 2026-10-28 06:06:13
[2026-10-28 06:06:13,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:06:13,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:06:13,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:06:14,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:06:14,178.178 INFO    ] time= 28/10/2026 06:06:14
[2026-10-28 06:06:14,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:06:14,214.214 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:06:14,334.334 INFO    ] No existing commands found in stream
[2026-10-28 06:06:19,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:06:19,363.363 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-28 06:06:20,609.609 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:06:20,612.612 INFO    ] Checking for system updates...
[2026-10-28 06:06:20,649.649 INFO    ] 200
[2026-10-28 06:06:20,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:06:20,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:06:20,709.709 INFO    ] No update needed
[2026-10-28 06:06:20,711.711 INFO    ] Checking for camera pi updates...
[2026-10-28 06:06:20,746.746 INFO    ] 200
[2026-10-28 06:06:20,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:06:20,794.794 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:06:20,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:06:20,897.897 INFO    ] No camera update needed
[2026-10-28 06:06:20,900.900 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:06:20,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:06:20,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:06:20,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:06:22,956.956 INFO    ] ================================================
[2026-10-28 06:06:22,971.971 INFO    ] Launching Daemon at Wed Oct 28 06:06:22 IST 2026
[2026-10-28 06:06:22,982.982 INFO    ] ================================================
[2026-10-28 06:06:23,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:06:23
[2026-10-28 06:06:24,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:06:24,570.570 INFO    ] Initializing speech engine...
[2026-10-28 06:06:24,577.577 INFO    ] 2026-10-28 06:06:24
[2026-10-28 06:06:24,860.860 INFO    ] 2026-10-28 06:06:24
[2026-10-28 06:06:24,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:06:25,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:06:25,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:06:25,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:06:25,398.398 INFO    ] time= 28/10/2026 06:06:25
[2026-10-28 06:06:25,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:06:25,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:06:25,551.551 INFO    ] No existing commands found in stream
[2026-10-28 06:06:30,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:06:30,571.571 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 06:06:33,419.419 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:06:33,422.422 INFO    ] Checking for system updates...
[2026-10-28 06:06:33,459.459 INFO    ] 200
[2026-10-28 06:06:33,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:06:33,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:06:33,520.520 INFO    ] No update needed
[2026-10-28 06:06:33,522.522 INFO    ] Checking for camera pi updates...
[2026-10-28 06:06:33,557.557 INFO    ] 200
[2026-10-28 06:06:33,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:06:33,601.601 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:06:33,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:06:33,682.682 INFO    ] No camera update needed
[2026-10-28 06:06:33,685.685 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:06:33,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:06:33,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:06:33,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:06:35,738.738 INFO    ] ================================================
[2026-10-28 06:06:35,754.754 INFO    ] Launching Daemon at Wed Oct 28 06:06:35 IST 2026
[2026-10-28 06:06:35,765.765 INFO    ] ================================================
[2026-10-28 06:06:36,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:06:36
[2026-10-28 06:06:37,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:06:37,373.373 INFO    ] Initializing speech engine...
[2026-10-28 06:06:37,381.381 INFO    ] 2026-10-28 06:06:37
[2026-10-28 06:06:37,650.650 INFO    ] 2026-10-28 06:06:37
[2026-10-28 06:06:37,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:06:37,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:06:37,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:06:38,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:06:38,223.223 INFO    ] time= 28/10/2026 06:06:38
[2026-10-28 06:06:38,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:06:38,259.259 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:06:38,390.390 INFO    ] No existing commands found in stream
[2026-10-28 06:06:43,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:06:43,419.419 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 06:06:47,740.740 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:06:47,743.743 INFO    ] Checking for system updates...
[2026-10-28 06:06:47,783.783 INFO    ] 200
[2026-10-28 06:06:47,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:06:47,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:06:47,841.841 INFO    ] No update needed
[2026-10-28 06:06:47,844.844 INFO    ] Checking for camera pi updates...
[2026-10-28 06:06:47,878.878 INFO    ] 200
[2026-10-28 06:06:47,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:06:47,927.927 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:06:48,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:06:48,013.013 INFO    ] No camera update needed
[2026-10-28 06:06:48,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:06:48,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:06:48,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:06:48,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:06:50,067.067 INFO    ] ================================================
[2026-10-28 06:06:50,082.082 INFO    ] Launching Daemon at Wed Oct 28 06:06:50 IST 2026
[2026-10-28 06:06:50,094.094 INFO    ] ================================================
[2026-10-28 06:06:50,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:06:50
[2026-10-28 06:06:51,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:06:51,701.701 INFO    ] Initializing speech engine...
[2026-10-28 06:06:51,707.707 INFO    ] 2026-10-28 06:06:51
[2026-10-28 06:06:52,010.010 INFO    ] 2026-10-28 06:06:51
[2026-10-28 06:06:52,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:06:52,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:06:52,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:06:52,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:06:52,526.526 INFO    ] time= 28/10/2026 06:06:52
[2026-10-28 06:06:52,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:06:52,565.565 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:06:52,680.680 INFO    ] No existing commands found in stream
[2026-10-28 06:06:57,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:06:57,708.708 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-28 06:07:01,632.632 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:07:01,635.635 INFO    ] Checking for system updates...
[2026-10-28 06:07:01,671.671 INFO    ] 200
[2026-10-28 06:07:01,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:07:01,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:07:01,728.728 INFO    ] No update needed
[2026-10-28 06:07:01,730.730 INFO    ] Checking for camera pi updates...
[2026-10-28 06:07:01,764.764 INFO    ] 200
[2026-10-28 06:07:01,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:07:01,846.846 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:07:01,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:07:01,939.939 INFO    ] No camera update needed
[2026-10-28 06:07:01,943.943 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:07:01,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:07:01,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:07:01,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:07:04,007.007 INFO    ] ================================================
[2026-10-28 06:07:04,022.022 INFO    ] Launching Daemon at Wed Oct 28 06:07:04 IST 2026
[2026-10-28 06:07:04,033.033 INFO    ] ================================================
[2026-10-28 06:07:04,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:07:04
[2026-10-28 06:07:05,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:07:05,599.599 INFO    ] Initializing speech engine...
[2026-10-28 06:07:05,616.616 INFO    ] 2026-10-28 06:07:05
[2026-10-28 06:07:05,880.880 INFO    ] 2026-10-28 06:07:05
[2026-10-28 06:07:05,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:07:06,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:07:06,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:07:06,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:07:06,674.674 INFO    ] time= 28/10/2026 06:07:06
[2026-10-28 06:07:06,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:07:06,781.781 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:07:06,979.979 INFO    ] No existing commands found in stream
[2026-10-28 06:07:12,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:07:12,008.008 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 06:07:12,800.800 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:07:12,803.803 INFO    ] Checking for system updates...
[2026-10-28 06:07:12,839.839 INFO    ] 200
[2026-10-28 06:07:12,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:07:12,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:07:12,899.899 INFO    ] No update needed
[2026-10-28 06:07:12,902.902 INFO    ] Checking for camera pi updates...
[2026-10-28 06:07:12,940.940 INFO    ] 200
[2026-10-28 06:07:12,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:07:12,996.996 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:07:13,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:07:13,096.096 INFO    ] No camera update needed
[2026-10-28 06:07:13,099.099 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:07:13,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:07:13,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:07:13,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:07:15,152.152 INFO    ] ================================================
[2026-10-28 06:07:15,167.167 INFO    ] Launching Daemon at Wed Oct 28 06:07:15 IST 2026
[2026-10-28 06:07:15,178.178 INFO    ] ================================================
[2026-10-28 06:07:15,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:07:15
[2026-10-28 06:07:16,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:07:16,787.787 INFO    ] Initializing speech engine...
[2026-10-28 06:07:16,798.798 INFO    ] 2026-10-28 06:07:16
[2026-10-28 06:07:17,077.077 INFO    ] 2026-10-28 06:07:17
[2026-10-28 06:07:17,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:07:17,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:07:17,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:07:17,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:07:17,683.683 INFO    ] time= 28/10/2026 06:07:17
[2026-10-28 06:07:17,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:07:17,701.701 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:07:17,848.848 INFO    ] No existing commands found in stream
[2026-10-28 06:07:22,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:07:22,877.877 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-28 06:07:27,359.359 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:07:27,362.362 INFO    ] Checking for system updates...
[2026-10-28 06:07:27,399.399 INFO    ] 200
[2026-10-28 06:07:27,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:07:27,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:07:27,463.463 INFO    ] No update needed
[2026-10-28 06:07:27,466.466 INFO    ] Checking for camera pi updates...
[2026-10-28 06:07:27,502.502 INFO    ] 200
[2026-10-28 06:07:27,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:07:27,546.546 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:07:27,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:07:27,637.637 INFO    ] No camera update needed
[2026-10-28 06:07:27,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:07:27,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:07:27,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:07:27,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:07:29,693.693 INFO    ] ================================================
[2026-10-28 06:07:29,708.708 INFO    ] Launching Daemon at Wed Oct 28 06:07:29 IST 2026
[2026-10-28 06:07:29,718.718 INFO    ] ================================================
[2026-10-28 06:07:30,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:07:30
[2026-10-28 06:07:31,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:07:31,321.321 INFO    ] Initializing speech engine...
[2026-10-28 06:07:31,335.335 INFO    ] 2026-10-28 06:07:31
[2026-10-28 06:07:31,607.607 INFO    ] 2026-10-28 06:07:31
[2026-10-28 06:07:31,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:07:31,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:07:31,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:07:32,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:07:32,211.211 INFO    ] time= 28/10/2026 06:07:32
[2026-10-28 06:07:32,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:07:32,250.250 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:07:32,406.406 INFO    ] No existing commands found in stream
[2026-10-28 06:07:37,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:07:37,446.446 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 06:07:38,852.852 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:07:38,855.855 INFO    ] Checking for system updates...
[2026-10-28 06:07:38,891.891 INFO    ] 200
[2026-10-28 06:07:38,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:07:38,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:07:38,950.950 INFO    ] No update needed
[2026-10-28 06:07:38,953.953 INFO    ] Checking for camera pi updates...
[2026-10-28 06:07:38,987.987 INFO    ] 200
[2026-10-28 06:07:38,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:07:39,032.032 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:07:39,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:07:39,214.214 INFO    ] No camera update needed
[2026-10-28 06:07:39,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:07:39,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:07:39,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:07:39,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:07:41,269.269 INFO    ] ================================================
[2026-10-28 06:07:41,284.284 INFO    ] Launching Daemon at Wed Oct 28 06:07:41 IST 2026
[2026-10-28 06:07:41,295.295 INFO    ] ================================================
[2026-10-28 06:07:41,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:07:41
[2026-10-28 06:07:42,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:07:42,742.742 INFO    ] Initializing speech engine...
[2026-10-28 06:07:42,749.749 INFO    ] 2026-10-28 06:07:42
[2026-10-28 06:07:43,010.010 INFO    ] 2026-10-28 06:07:43
[2026-10-28 06:07:43,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:07:43,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:07:43,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:07:43,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:07:43,555.555 INFO    ] time= 28/10/2026 06:07:43
[2026-10-28 06:07:43,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:07:43,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:07:43,715.715 INFO    ] No existing commands found in stream
[2026-10-28 06:07:48,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:07:48,748.748 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 06:07:52,975.975 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:07:52,978.978 INFO    ] Checking for system updates...
[2026-10-28 06:07:53,017.017 INFO    ] 200
[2026-10-28 06:07:53,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:07:53,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:07:53,078.078 INFO    ] No update needed
[2026-10-28 06:07:53,081.081 INFO    ] Checking for camera pi updates...
[2026-10-28 06:07:53,123.123 INFO    ] 200
[2026-10-28 06:07:53,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:07:53,188.188 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:07:53,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:07:53,281.281 INFO    ] No camera update needed
[2026-10-28 06:07:53,284.284 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:07:53,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:07:53,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:07:53,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:07:55,339.339 INFO    ] ================================================
[2026-10-28 06:07:55,355.355 INFO    ] Launching Daemon at Wed Oct 28 06:07:55 IST 2026
[2026-10-28 06:07:55,366.366 INFO    ] ================================================
[2026-10-28 06:07:55,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:07:55
[2026-10-28 06:07:56,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:07:56,841.841 INFO    ] Initializing speech engine...
[2026-10-28 06:07:56,865.865 INFO    ] 2026-10-28 06:07:56
[2026-10-28 06:07:57,137.137 INFO    ] 2026-10-28 06:07:57
[2026-10-28 06:07:57,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:07:57,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:07:57,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:07:57,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:07:57,755.755 INFO    ] time= 28/10/2026 06:07:57
[2026-10-28 06:07:57,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:07:57,781.781 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:07:57,914.914 INFO    ] No existing commands found in stream
[2026-10-28 06:08:02,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:08:02,929.929 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 06:08:07,310.310 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:08:07,313.313 INFO    ] Checking for system updates...
[2026-10-28 06:08:07,348.348 INFO    ] 200
[2026-10-28 06:08:07,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:08:07,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:08:07,410.410 INFO    ] No update needed
[2026-10-28 06:08:07,412.412 INFO    ] Checking for camera pi updates...
[2026-10-28 06:08:07,445.445 INFO    ] 200
[2026-10-28 06:08:07,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:08:07,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:08:07,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:08:07,569.569 INFO    ] No camera update needed
[2026-10-28 06:08:07,571.571 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:08:07,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:08:07,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:08:07,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:08:09,625.625 INFO    ] ================================================
[2026-10-28 06:08:09,640.640 INFO    ] Launching Daemon at Wed Oct 28 06:08:09 IST 2026
[2026-10-28 06:08:09,650.650 INFO    ] ================================================
[2026-10-28 06:08:10,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:08:10
[2026-10-28 06:08:10,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:08:11,044.044 INFO    ] Initializing speech engine...
[2026-10-28 06:08:11,057.057 INFO    ] 2026-10-28 06:08:11
[2026-10-28 06:08:11,318.318 INFO    ] 2026-10-28 06:08:11
[2026-10-28 06:08:11,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:08:11,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:08:11,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:08:11,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:08:11,873.873 INFO    ] time= 28/10/2026 06:08:11
[2026-10-28 06:08:11,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:08:11,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:08:12,056.056 INFO    ] No existing commands found in stream
[2026-10-28 06:08:17,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:08:17,089.089 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-28 06:08:19,560.560 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:08:19,563.563 INFO    ] Checking for system updates...
[2026-10-28 06:08:19,600.600 INFO    ] 200
[2026-10-28 06:08:19,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:08:19,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:08:19,659.659 INFO    ] No update needed
[2026-10-28 06:08:19,661.661 INFO    ] Checking for camera pi updates...
[2026-10-28 06:08:19,694.694 INFO    ] 200
[2026-10-28 06:08:19,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:08:19,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:08:19,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:08:19,820.820 INFO    ] No camera update needed
[2026-10-28 06:08:19,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:08:19,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:08:19,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:08:19,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:08:21,874.874 INFO    ] ================================================
[2026-10-28 06:08:21,890.890 INFO    ] Launching Daemon at Wed Oct 28 06:08:21 IST 2026
[2026-10-28 06:08:21,900.900 INFO    ] ================================================
[2026-10-28 06:08:22,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:08:22
[2026-10-28 06:08:23,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:08:23,485.485 INFO    ] Initializing speech engine...
[2026-10-28 06:08:23,493.493 INFO    ] 2026-10-28 06:08:23
[2026-10-28 06:08:23,766.766 INFO    ] 2026-10-28 06:08:23
[2026-10-28 06:08:23,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:08:24,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:08:24,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:08:24,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:08:24,311.311 INFO    ] time= 28/10/2026 06:08:24
[2026-10-28 06:08:24,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:08:24,358.358 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:08:24,485.485 INFO    ] No existing commands found in stream
[2026-10-28 06:08:29,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:08:29,514.514 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-28 06:08:30,673.673 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:08:30,676.676 INFO    ] Checking for system updates...
[2026-10-28 06:08:30,712.712 INFO    ] 200
[2026-10-28 06:08:30,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:08:30,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:08:30,772.772 INFO    ] No update needed
[2026-10-28 06:08:30,775.775 INFO    ] Checking for camera pi updates...
[2026-10-28 06:08:30,812.812 INFO    ] 200
[2026-10-28 06:08:30,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:08:30,859.859 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:08:30,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:08:30,947.947 INFO    ] No camera update needed
[2026-10-28 06:08:30,949.949 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:08:30,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:08:30,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:08:30,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:08:33,003.003 INFO    ] ================================================
[2026-10-28 06:08:33,019.019 INFO    ] Launching Daemon at Wed Oct 28 06:08:33 IST 2026
[2026-10-28 06:08:33,030.030 INFO    ] ================================================
[2026-10-28 06:08:33,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:08:33
[2026-10-28 06:08:34,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:08:34,458.458 INFO    ] Initializing speech engine...
[2026-10-28 06:08:34,464.464 INFO    ] 2026-10-28 06:08:34
[2026-10-28 06:08:34,754.754 INFO    ] 2026-10-28 06:08:34
[2026-10-28 06:08:34,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:08:34,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:08:35,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:08:35,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:08:35,168.168 INFO    ] time= 28/10/2026 06:08:35
[2026-10-28 06:08:35,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:08:35,224.224 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:08:35,364.364 INFO    ] No existing commands found in stream
[2026-10-28 06:08:40,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:08:40,392.392 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-28 06:08:41,966.966 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:08:41,969.969 INFO    ] Checking for system updates...
[2026-10-28 06:08:42,005.005 INFO    ] 200
[2026-10-28 06:08:42,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:08:42,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:08:42,075.075 INFO    ] No update needed
[2026-10-28 06:08:42,078.078 INFO    ] Checking for camera pi updates...
[2026-10-28 06:08:42,122.122 INFO    ] 200
[2026-10-28 06:08:42,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:08:42,176.176 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:08:42,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:08:42,256.256 INFO    ] No camera update needed
[2026-10-28 06:08:42,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:08:42,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:08:42,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:08:42,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:08:44,317.317 INFO    ] ================================================
[2026-10-28 06:08:44,332.332 INFO    ] Launching Daemon at Wed Oct 28 06:08:44 IST 2026
[2026-10-28 06:08:44,344.344 INFO    ] ================================================
[2026-10-28 06:08:45,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:08:45
[2026-10-28 06:08:45,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:08:46,030.030 INFO    ] Initializing speech engine...
[2026-10-28 06:08:46,044.044 INFO    ] 2026-10-28 06:08:46
[2026-10-28 06:08:46,330.330 INFO    ] 2026-10-28 06:08:46
[2026-10-28 06:08:46,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:08:46,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:08:46,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:08:46,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:08:46,873.873 INFO    ] time= 28/10/2026 06:08:46
[2026-10-28 06:08:46,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:08:46,921.921 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:08:47,040.040 INFO    ] No existing commands found in stream
[2026-10-28 06:08:52,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:08:52,068.068 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 06:08:53,230.230 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:08:53,233.233 INFO    ] Checking for system updates...
[2026-10-28 06:08:53,274.274 INFO    ] 200
[2026-10-28 06:08:53,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:08:53,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:08:53,331.331 INFO    ] No update needed
[2026-10-28 06:08:53,333.333 INFO    ] Checking for camera pi updates...
[2026-10-28 06:08:53,367.367 INFO    ] 200
[2026-10-28 06:08:53,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:08:53,409.409 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:08:53,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:08:53,491.491 INFO    ] No camera update needed
[2026-10-28 06:08:53,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:08:53,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:08:53,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:08:53,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:08:55,547.547 INFO    ] ================================================
[2026-10-28 06:08:55,562.562 INFO    ] Launching Daemon at Wed Oct 28 06:08:55 IST 2026
[2026-10-28 06:08:55,573.573 INFO    ] ================================================
[2026-10-28 06:08:56,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:08:56
[2026-10-28 06:08:56,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:08:56,980.980 INFO    ] Initializing speech engine...
[2026-10-28 06:08:56,986.986 INFO    ] 2026-10-28 06:08:56
[2026-10-28 06:08:57,283.283 INFO    ] 2026-10-28 06:08:57
[2026-10-28 06:08:57,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:08:57,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:08:57,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:08:57,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:08:57,804.804 INFO    ] time= 28/10/2026 06:08:57
[2026-10-28 06:08:57,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:08:57,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:08:58,029.029 INFO    ] No existing commands found in stream
[2026-10-28 06:09:03,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:09:03,052.052 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-28 06:09:04,933.933 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:09:04,936.936 INFO    ] Checking for system updates...
[2026-10-28 06:09:04,974.974 INFO    ] 200
[2026-10-28 06:09:04,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:09:05,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:09:05,030.030 INFO    ] No update needed
[2026-10-28 06:09:05,033.033 INFO    ] Checking for camera pi updates...
[2026-10-28 06:09:05,066.066 INFO    ] 200
[2026-10-28 06:09:05,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:09:05,111.111 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:09:05,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:09:05,204.204 INFO    ] No camera update needed
[2026-10-28 06:09:05,206.206 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:09:05,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:09:05,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:09:05,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:09:07,259.259 INFO    ] ================================================
[2026-10-28 06:09:07,274.274 INFO    ] Launching Daemon at Wed Oct 28 06:09:07 IST 2026
[2026-10-28 06:09:07,285.285 INFO    ] ================================================
[2026-10-28 06:09:07,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:09:07
[2026-10-28 06:09:08,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:09:08,736.736 INFO    ] Initializing speech engine...
[2026-10-28 06:09:08,745.745 INFO    ] 2026-10-28 06:09:08
[2026-10-28 06:09:08,993.993 INFO    ] 2026-10-28 06:09:08
[2026-10-28 06:09:09,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:09:09,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:09:09,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:09:09,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:09:09,545.545 INFO    ] time= 28/10/2026 06:09:09
[2026-10-28 06:09:09,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:09:09,572.572 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:09:09,705.705 INFO    ] No existing commands found in stream
[2026-10-28 06:09:14,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:09:14,736.736 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 06:09:16,252.252 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:09:16,254.254 INFO    ] Checking for system updates...
[2026-10-28 06:09:16,293.293 INFO    ] 200
[2026-10-28 06:09:16,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:09:16,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:09:16,350.350 INFO    ] No update needed
[2026-10-28 06:09:16,352.352 INFO    ] Checking for camera pi updates...
[2026-10-28 06:09:16,387.387 INFO    ] 200
[2026-10-28 06:09:16,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:09:16,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:09:16,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:09:16,512.512 INFO    ] No camera update needed
[2026-10-28 06:09:16,515.515 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:09:16,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:09:16,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:09:16,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:09:18,567.567 INFO    ] ================================================
[2026-10-28 06:09:18,581.581 INFO    ] Launching Daemon at Wed Oct 28 06:09:18 IST 2026
[2026-10-28 06:09:18,606.606 INFO    ] ================================================
[2026-10-28 06:09:19,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:09:19
[2026-10-28 06:09:19,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:09:20,115.115 INFO    ] Initializing speech engine...
[2026-10-28 06:09:20,126.126 INFO    ] 2026-10-28 06:09:20
[2026-10-28 06:09:20,399.399 INFO    ] 2026-10-28 06:09:20
[2026-10-28 06:09:20,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:09:20,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:09:20,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:09:20,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:09:20,966.966 INFO    ] time= 28/10/2026 06:09:20
[2026-10-28 06:09:20,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:09:21,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:09:21,120.120 INFO    ] No existing commands found in stream
[2026-10-28 06:09:26,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:09:26,141.141 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-28 06:09:26,993.993 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:09:26,996.996 INFO    ] Checking for system updates...
[2026-10-28 06:09:27,033.033 INFO    ] 200
[2026-10-28 06:09:27,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:09:27,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:09:27,091.091 INFO    ] No update needed
[2026-10-28 06:09:27,094.094 INFO    ] Checking for camera pi updates...
[2026-10-28 06:09:27,128.128 INFO    ] 200
[2026-10-28 06:09:27,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:09:27,170.170 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:09:27,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:09:27,263.263 INFO    ] No camera update needed
[2026-10-28 06:09:27,265.265 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:09:27,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:09:27,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:09:27,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:09:29,317.317 INFO    ] ================================================
[2026-10-28 06:09:29,332.332 INFO    ] Launching Daemon at Wed Oct 28 06:09:29 IST 2026
[2026-10-28 06:09:29,344.344 INFO    ] ================================================
[2026-10-28 06:09:29,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:09:29
[2026-10-28 06:09:30,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:09:30,969.969 INFO    ] Initializing speech engine...
[2026-10-28 06:09:30,975.975 INFO    ] 2026-10-28 06:09:30
[2026-10-28 06:09:31,269.269 INFO    ] 2026-10-28 06:09:31
[2026-10-28 06:09:31,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:09:31,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:09:31,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:09:31,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:09:31,818.818 INFO    ] time= 28/10/2026 06:09:31
[2026-10-28 06:09:31,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:09:31,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:09:31,954.954 INFO    ] No existing commands found in stream
[2026-10-28 06:09:36,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:09:36,968.968 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-28 06:09:40,950.950 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:09:40,952.952 INFO    ] Checking for system updates...
[2026-10-28 06:09:40,992.992 INFO    ] 200
[2026-10-28 06:09:40,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:09:41,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:09:41,056.056 INFO    ] No update needed
[2026-10-28 06:09:41,058.058 INFO    ] Checking for camera pi updates...
[2026-10-28 06:09:41,092.092 INFO    ] 200
[2026-10-28 06:09:41,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:09:41,136.136 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:09:41,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:09:41,218.218 INFO    ] No camera update needed
[2026-10-28 06:09:41,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:09:41,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:09:41,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:09:41,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:09:43,273.273 INFO    ] ================================================
[2026-10-28 06:09:43,289.289 INFO    ] Launching Daemon at Wed Oct 28 06:09:43 IST 2026
[2026-10-28 06:09:43,300.300 INFO    ] ================================================
[2026-10-28 06:09:43,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:09:43
[2026-10-28 06:09:44,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:09:44,715.715 INFO    ] Initializing speech engine...
[2026-10-28 06:09:44,721.721 INFO    ] 2026-10-28 06:09:44
[2026-10-28 06:09:45,014.014 INFO    ] 2026-10-28 06:09:44
[2026-10-28 06:09:45,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:09:45,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:09:45,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:09:45,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:09:45,627.627 INFO    ] time= 28/10/2026 06:09:45
[2026-10-28 06:09:45,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:09:45,674.674 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:09:45,791.791 INFO    ] No existing commands found in stream
[2026-10-28 06:09:50,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:09:50,817.817 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 06:09:54,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:09:54,451.451 INFO    ] Checking for system updates...
[2026-10-28 06:09:54,490.490 INFO    ] 200
[2026-10-28 06:09:54,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:09:54,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:09:54,554.554 INFO    ] No update needed
[2026-10-28 06:09:54,556.556 INFO    ] Checking for camera pi updates...
[2026-10-28 06:09:54,590.590 INFO    ] 200
[2026-10-28 06:09:54,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:09:54,638.638 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:09:54,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:09:54,820.820 INFO    ] No camera update needed
[2026-10-28 06:09:54,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:09:54,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:09:54,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:09:54,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:09:56,876.876 INFO    ] ================================================
[2026-10-28 06:09:56,891.891 INFO    ] Launching Daemon at Wed Oct 28 06:09:56 IST 2026
[2026-10-28 06:09:56,902.902 INFO    ] ================================================
[2026-10-28 06:09:57,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:09:57
[2026-10-28 06:09:58,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:09:58,519.519 INFO    ] Initializing speech engine...
[2026-10-28 06:09:58,527.527 INFO    ] 2026-10-28 06:09:58
[2026-10-28 06:09:58,818.818 INFO    ] 2026-10-28 06:09:58
[2026-10-28 06:09:58,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:09:59,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:09:59,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:09:59,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:09:59,517.517 INFO    ] time= 28/10/2026 06:09:59
[2026-10-28 06:09:59,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:09:59,604.604 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:09:59,747.747 INFO    ] No existing commands found in stream
[2026-10-28 06:10:04,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:10:04,770.770 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 06:10:08,551.551 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:10:08,554.554 INFO    ] Checking for system updates...
[2026-10-28 06:10:08,595.595 INFO    ] 200
[2026-10-28 06:10:08,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:10:08,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:10:08,654.654 INFO    ] No update needed
[2026-10-28 06:10:08,657.657 INFO    ] Checking for camera pi updates...
[2026-10-28 06:10:08,695.695 INFO    ] 200
[2026-10-28 06:10:08,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:10:08,743.743 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:10:08,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:10:08,828.828 INFO    ] No camera update needed
[2026-10-28 06:10:08,831.831 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:10:08,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:10:08,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:10:08,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:10:10,886.886 INFO    ] ================================================
[2026-10-28 06:10:10,901.901 INFO    ] Launching Daemon at Wed Oct 28 06:10:10 IST 2026
[2026-10-28 06:10:10,912.912 INFO    ] ================================================
[2026-10-28 06:10:11,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:10:11
[2026-10-28 06:10:12,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:10:12,495.495 INFO    ] Initializing speech engine...
[2026-10-28 06:10:12,502.502 INFO    ] 2026-10-28 06:10:12
[2026-10-28 06:10:12,764.764 INFO    ] 2026-10-28 06:10:12
[2026-10-28 06:10:12,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:10:13,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:10:13,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:10:13,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:10:13,453.453 INFO    ] time= 28/10/2026 06:10:13
[2026-10-28 06:10:13,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:10:13,559.559 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:10:13,706.706 INFO    ] No existing commands found in stream
[2026-10-28 06:10:18,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:10:18,723.723 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 06:10:22,292.292 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:10:22,295.295 INFO    ] Checking for system updates...
[2026-10-28 06:10:22,333.333 INFO    ] 200
[2026-10-28 06:10:22,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:10:22,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:10:22,400.400 INFO    ] No update needed
[2026-10-28 06:10:22,403.403 INFO    ] Checking for camera pi updates...
[2026-10-28 06:10:22,442.442 INFO    ] 200
[2026-10-28 06:10:22,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:10:22,496.496 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:10:22,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:10:22,581.581 INFO    ] No camera update needed
[2026-10-28 06:10:22,584.584 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:10:22,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:10:22,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:10:22,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:10:24,639.639 INFO    ] ================================================
[2026-10-28 06:10:24,654.654 INFO    ] Launching Daemon at Wed Oct 28 06:10:24 IST 2026
[2026-10-28 06:10:24,665.665 INFO    ] ================================================
[2026-10-28 06:10:25,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:10:25
[2026-10-28 06:10:25,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:10:26,083.083 INFO    ] Initializing speech engine...
[2026-10-28 06:10:26,092.092 INFO    ] 2026-10-28 06:10:26
[2026-10-28 06:10:26,338.338 INFO    ] 2026-10-28 06:10:26
[2026-10-28 06:10:26,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:10:26,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:10:26,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:10:26,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:10:26,890.890 INFO    ] time= 28/10/2026 06:10:26
[2026-10-28 06:10:26,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:10:26,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:10:27,044.044 INFO    ] No existing commands found in stream
[2026-10-28 06:10:32,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:10:32,059.059 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-28 06:10:33,170.170 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:10:33,173.173 INFO    ] Checking for system updates...
[2026-10-28 06:10:33,215.215 INFO    ] 200
[2026-10-28 06:10:33,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:10:33,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:10:33,282.282 INFO    ] No update needed
[2026-10-28 06:10:33,284.284 INFO    ] Checking for camera pi updates...
[2026-10-28 06:10:33,327.327 INFO    ] 200
[2026-10-28 06:10:33,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:10:33,374.374 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:10:33,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:10:33,461.461 INFO    ] No camera update needed
[2026-10-28 06:10:33,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:10:33,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:10:33,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:10:33,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:10:35,527.527 INFO    ] ================================================
[2026-10-28 06:10:35,541.541 INFO    ] Launching Daemon at Wed Oct 28 06:10:35 IST 2026
[2026-10-28 06:10:35,552.552 INFO    ] ================================================
[2026-10-28 06:10:36,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:10:36
[2026-10-28 06:10:36,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:10:36,972.972 INFO    ] Initializing speech engine...
[2026-10-28 06:10:36,979.979 INFO    ] 2026-10-28 06:10:36
[2026-10-28 06:10:37,223.223 INFO    ] 2026-10-28 06:10:37
[2026-10-28 06:10:37,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:10:37,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:10:37,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:10:37,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:10:37,776.776 INFO    ] time= 28/10/2026 06:10:37
[2026-10-28 06:10:37,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:10:37,806.806 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:10:37,948.948 INFO    ] No existing commands found in stream
[2026-10-28 06:10:42,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:10:42,976.976 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 06:10:45,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:10:45,792.792 INFO    ] Checking for system updates...
[2026-10-28 06:10:45,829.829 INFO    ] 200
[2026-10-28 06:10:45,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:10:45,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:10:45,886.886 INFO    ] No update needed
[2026-10-28 06:10:45,888.888 INFO    ] Checking for camera pi updates...
[2026-10-28 06:10:45,921.921 INFO    ] 200
[2026-10-28 06:10:45,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:10:45,966.966 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:10:46,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:10:46,017.017 INFO    ] No camera update needed
[2026-10-28 06:10:46,019.019 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:10:46,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:10:46,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:10:46,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:10:48,074.074 INFO    ] ================================================
[2026-10-28 06:10:48,089.089 INFO    ] Launching Daemon at Wed Oct 28 06:10:48 IST 2026
[2026-10-28 06:10:48,100.100 INFO    ] ================================================
[2026-10-28 06:10:48,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:10:48
[2026-10-28 06:10:49,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:10:49,516.516 INFO    ] Initializing speech engine...
[2026-10-28 06:10:49,540.540 INFO    ] 2026-10-28 06:10:49
[2026-10-28 06:10:49,795.795 INFO    ] 2026-10-28 06:10:49
[2026-10-28 06:10:49,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:10:50,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:10:50,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:10:50,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:10:50,349.349 INFO    ] time= 28/10/2026 06:10:50
[2026-10-28 06:10:50,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:10:50,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:10:50,485.485 INFO    ] No existing commands found in stream
[2026-10-28 06:10:55,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:10:55,510.510 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-28 06:10:57,366.366 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:10:57,369.369 INFO    ] Checking for system updates...
[2026-10-28 06:10:57,406.406 INFO    ] 200
[2026-10-28 06:10:57,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:10:57,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:10:57,466.466 INFO    ] No update needed
[2026-10-28 06:10:57,469.469 INFO    ] Checking for camera pi updates...
[2026-10-28 06:10:57,503.503 INFO    ] 200
[2026-10-28 06:10:57,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:10:57,547.547 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:10:57,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:10:57,636.636 INFO    ] No camera update needed
[2026-10-28 06:10:57,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:10:57,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:10:57,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:10:57,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:10:59,694.694 INFO    ] ================================================
[2026-10-28 06:10:59,710.710 INFO    ] Launching Daemon at Wed Oct 28 06:10:59 IST 2026
[2026-10-28 06:10:59,720.720 INFO    ] ================================================
[2026-10-28 06:11:00,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:11:00
[2026-10-28 06:11:00,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:11:01,266.266 INFO    ] Initializing speech engine...
[2026-10-28 06:11:01,277.277 INFO    ] 2026-10-28 06:11:01
[2026-10-28 06:11:01,700.700 INFO    ] 2026-10-28 06:11:01
[2026-10-28 06:11:01,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:11:02,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:11:02,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:11:02,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:11:02,295.295 INFO    ] time= 28/10/2026 06:11:02
[2026-10-28 06:11:02,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:11:02,379.379 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:11:02,520.520 INFO    ] No existing commands found in stream
[2026-10-28 06:11:07,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:11:07,557.557 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-28 06:11:09,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:11:09,012.012 INFO    ] Checking for system updates...
[2026-10-28 06:11:09,047.047 INFO    ] 200
[2026-10-28 06:11:09,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:11:09,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:11:09,133.133 INFO    ] No update needed
[2026-10-28 06:11:09,136.136 INFO    ] Checking for camera pi updates...
[2026-10-28 06:11:09,169.169 INFO    ] 200
[2026-10-28 06:11:09,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:11:09,213.213 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:11:09,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:11:09,300.300 INFO    ] No camera update needed
[2026-10-28 06:11:09,302.302 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:11:09,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:11:09,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:11:09,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:11:11,357.357 INFO    ] ================================================
[2026-10-28 06:11:11,372.372 INFO    ] Launching Daemon at Wed Oct 28 06:11:11 IST 2026
[2026-10-28 06:11:11,384.384 INFO    ] ================================================
[2026-10-28 06:11:12,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:11:12
[2026-10-28 06:11:12,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:11:12,937.937 INFO    ] Initializing speech engine...
[2026-10-28 06:11:12,942.942 INFO    ] 2026-10-28 06:11:12
[2026-10-28 06:11:13,211.211 INFO    ] 2026-10-28 06:11:13
[2026-10-28 06:11:13,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:11:13,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:11:13,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:11:13,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:11:13,773.773 INFO    ] time= 28/10/2026 06:11:13
[2026-10-28 06:11:13,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:11:13,807.807 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:11:13,926.926 INFO    ] No existing commands found in stream
[2026-10-28 06:11:18,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:11:18,959.959 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-28 06:11:19,971.971 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:11:19,974.974 INFO    ] Checking for system updates...
[2026-10-28 06:11:20,010.010 INFO    ] 200
[2026-10-28 06:11:20,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:11:20,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:11:20,070.070 INFO    ] No update needed
[2026-10-28 06:11:20,072.072 INFO    ] Checking for camera pi updates...
[2026-10-28 06:11:20,107.107 INFO    ] 200
[2026-10-28 06:11:20,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:11:20,150.150 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:11:20,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:11:20,257.257 INFO    ] No camera update needed
[2026-10-28 06:11:20,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:11:20,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:11:20,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:11:20,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:11:22,314.314 INFO    ] ================================================
[2026-10-28 06:11:22,330.330 INFO    ] Launching Daemon at Wed Oct 28 06:11:22 IST 2026
[2026-10-28 06:11:22,340.340 INFO    ] ================================================
[2026-10-28 06:11:22,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:11:22
[2026-10-28 06:11:23,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:11:23,746.746 INFO    ] Initializing speech engine...
[2026-10-28 06:11:23,754.754 INFO    ] 2026-10-28 06:11:23
[2026-10-28 06:11:24,041.041 INFO    ] 2026-10-28 06:11:24
[2026-10-28 06:11:24,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:11:24,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:11:24,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:11:24,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:11:24,589.589 INFO    ] time= 28/10/2026 06:11:24
[2026-10-28 06:11:24,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:11:24,658.658 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:11:24,773.773 INFO    ] No existing commands found in stream
[2026-10-28 06:11:29,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:11:29,796.796 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-28 06:11:34,110.110 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:11:34,113.113 INFO    ] Checking for system updates...
[2026-10-28 06:11:34,150.150 INFO    ] 200
[2026-10-28 06:11:34,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:11:34,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:11:34,226.226 INFO    ] No update needed
[2026-10-28 06:11:34,229.229 INFO    ] Checking for camera pi updates...
[2026-10-28 06:11:34,262.262 INFO    ] 200
[2026-10-28 06:11:34,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:11:34,305.305 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:11:34,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:11:34,392.392 INFO    ] No camera update needed
[2026-10-28 06:11:34,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:11:34,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:11:34,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:11:34,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:11:36,450.450 INFO    ] ================================================
[2026-10-28 06:11:36,465.465 INFO    ] Launching Daemon at Wed Oct 28 06:11:36 IST 2026
[2026-10-28 06:11:36,476.476 INFO    ] ================================================
[2026-10-28 06:11:37,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:11:37
[2026-10-28 06:11:37,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:11:38,005.005 INFO    ] Initializing speech engine...
[2026-10-28 06:11:38,014.014 INFO    ] 2026-10-28 06:11:38
[2026-10-28 06:11:38,283.283 INFO    ] 2026-10-28 06:11:38
[2026-10-28 06:11:38,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:11:38,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:11:38,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:11:38,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:11:38,835.835 INFO    ] time= 28/10/2026 06:11:38
[2026-10-28 06:11:38,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:11:38,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:11:38,990.990 INFO    ] No existing commands found in stream
[2026-10-28 06:11:44,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:11:44,018.018 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-28 06:11:47,791.791 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:11:47,794.794 INFO    ] Checking for system updates...
[2026-10-28 06:11:47,834.834 INFO    ] 200
[2026-10-28 06:11:47,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:11:47,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:11:47,892.892 INFO    ] No update needed
[2026-10-28 06:11:47,895.895 INFO    ] Checking for camera pi updates...
[2026-10-28 06:11:47,932.932 INFO    ] 200
[2026-10-28 06:11:47,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:11:47,978.978 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:11:48,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:11:48,061.061 INFO    ] No camera update needed
[2026-10-28 06:11:48,064.064 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:11:48,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:11:48,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:11:48,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:11:50,119.119 INFO    ] ================================================
[2026-10-28 06:11:50,134.134 INFO    ] Launching Daemon at Wed Oct 28 06:11:50 IST 2026
[2026-10-28 06:11:50,145.145 INFO    ] ================================================
[2026-10-28 06:11:50,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:11:50
[2026-10-28 06:11:51,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:11:51,568.568 INFO    ] Initializing speech engine...
[2026-10-28 06:11:51,577.577 INFO    ] 2026-10-28 06:11:51
[2026-10-28 06:11:51,821.821 INFO    ] 2026-10-28 06:11:51
[2026-10-28 06:11:51,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:11:52,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:11:52,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:11:52,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:11:52,375.375 INFO    ] time= 28/10/2026 06:11:52
[2026-10-28 06:11:52,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:11:52,401.401 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:11:52,532.532 INFO    ] No existing commands found in stream
[2026-10-28 06:11:57,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:11:57,559.559 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-28 06:11:58,435.435 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:11:58,438.438 INFO    ] Checking for system updates...
[2026-10-28 06:11:58,473.473 INFO    ] 200
[2026-10-28 06:11:58,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:11:58,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:11:58,539.539 INFO    ] No update needed
[2026-10-28 06:11:58,542.542 INFO    ] Checking for camera pi updates...
[2026-10-28 06:11:58,576.576 INFO    ] 200
[2026-10-28 06:11:58,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:11:58,621.621 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:11:58,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:11:58,804.804 INFO    ] No camera update needed
[2026-10-28 06:11:58,807.807 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:11:58,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:11:58,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:11:58,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:12:00,861.861 INFO    ] ================================================
[2026-10-28 06:12:00,876.876 INFO    ] Launching Daemon at Wed Oct 28 06:12:00 IST 2026
[2026-10-28 06:12:00,887.887 INFO    ] ================================================
[2026-10-28 06:12:01,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:12:01
[2026-10-28 06:12:02,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:12:02,585.585 INFO    ] Initializing speech engine...
[2026-10-28 06:12:02,595.595 INFO    ] 2026-10-28 06:12:02
[2026-10-28 06:12:02,955.955 INFO    ] 2026-10-28 06:12:02
[2026-10-28 06:12:03,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:12:03,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:12:03,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:12:03,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:12:03,503.503 INFO    ] time= 28/10/2026 06:12:03
[2026-10-28 06:12:03,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:12:03,591.591 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:12:03,742.742 INFO    ] No existing commands found in stream
[2026-10-28 06:12:08,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:12:08,765.765 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 06:12:10,531.531 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:12:10,534.534 INFO    ] Checking for system updates...
[2026-10-28 06:12:10,570.570 INFO    ] 200
[2026-10-28 06:12:10,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:12:10,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:12:10,631.631 INFO    ] No update needed
[2026-10-28 06:12:10,634.634 INFO    ] Checking for camera pi updates...
[2026-10-28 06:12:10,668.668 INFO    ] 200
[2026-10-28 06:12:10,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:12:10,715.715 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:12:10,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:12:10,801.801 INFO    ] No camera update needed
[2026-10-28 06:12:10,803.803 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:12:10,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:12:10,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:12:10,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:12:12,860.860 INFO    ] ================================================
[2026-10-28 06:12:12,875.875 INFO    ] Launching Daemon at Wed Oct 28 06:12:12 IST 2026
[2026-10-28 06:12:12,886.886 INFO    ] ================================================
[2026-10-28 06:12:13,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:12:13
[2026-10-28 06:12:14,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:12:14,305.305 INFO    ] Initializing speech engine...
[2026-10-28 06:12:14,314.314 INFO    ] 2026-10-28 06:12:14
[2026-10-28 06:12:14,561.561 INFO    ] 2026-10-28 06:12:14
[2026-10-28 06:12:14,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:12:14,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:12:14,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:12:15,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:12:15,115.115 INFO    ] time= 28/10/2026 06:12:15
[2026-10-28 06:12:15,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:12:15,139.139 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:12:15,303.303 INFO    ] No existing commands found in stream
[2026-10-28 06:12:20,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:12:20,327.327 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 06:12:23,016.016 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:12:23,019.019 INFO    ] Checking for system updates...
[2026-10-28 06:12:23,057.057 INFO    ] 200
[2026-10-28 06:12:23,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:12:23,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:12:23,113.113 INFO    ] No update needed
[2026-10-28 06:12:23,116.116 INFO    ] Checking for camera pi updates...
[2026-10-28 06:12:23,150.150 INFO    ] 200
[2026-10-28 06:12:23,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:12:23,192.192 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:12:23,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:12:23,273.273 INFO    ] No camera update needed
[2026-10-28 06:12:23,276.276 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:12:23,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:12:23,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:12:23,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:12:25,328.328 INFO    ] ================================================
[2026-10-28 06:12:25,343.343 INFO    ] Launching Daemon at Wed Oct 28 06:12:25 IST 2026
[2026-10-28 06:12:25,353.353 INFO    ] ================================================
[2026-10-28 06:12:25,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:12:25
[2026-10-28 06:12:26,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:12:26,810.810 INFO    ] Initializing speech engine...
[2026-10-28 06:12:26,827.827 INFO    ] 2026-10-28 06:12:26
[2026-10-28 06:12:27,101.101 INFO    ] 2026-10-28 06:12:27
[2026-10-28 06:12:27,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:12:27,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:12:27,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:12:27,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:12:27,585.585 INFO    ] time= 28/10/2026 06:12:27
[2026-10-28 06:12:27,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:12:27,670.670 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:12:27,771.771 INFO    ] No existing commands found in stream
[2026-10-28 06:12:32,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:12:32,788.788 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 06:12:35,909.909 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:12:35,911.911 INFO    ] Checking for system updates...
[2026-10-28 06:12:35,947.947 INFO    ] 200
[2026-10-28 06:12:35,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:12:36,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:12:36,003.003 INFO    ] No update needed
[2026-10-28 06:12:36,006.006 INFO    ] Checking for camera pi updates...
[2026-10-28 06:12:36,040.040 INFO    ] 200
[2026-10-28 06:12:36,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:12:36,084.084 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:12:36,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:12:36,137.137 INFO    ] No camera update needed
[2026-10-28 06:12:36,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:12:36,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:12:36,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:12:36,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:12:38,195.195 INFO    ] ================================================
[2026-10-28 06:12:38,217.217 INFO    ] Launching Daemon at Wed Oct 28 06:12:38 IST 2026
[2026-10-28 06:12:38,227.227 INFO    ] ================================================
[2026-10-28 06:12:38,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:12:38
[2026-10-28 06:12:39,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:12:39,848.848 INFO    ] Initializing speech engine...
[2026-10-28 06:12:39,856.856 INFO    ] 2026-10-28 06:12:39
[2026-10-28 06:12:40,140.140 INFO    ] 2026-10-28 06:12:40
[2026-10-28 06:12:40,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:12:40,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:12:40,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:12:40,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:12:40,675.675 INFO    ] time= 28/10/2026 06:12:40
[2026-10-28 06:12:40,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:12:40,700.700 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:12:40,832.832 INFO    ] No existing commands found in stream
[2026-10-28 06:12:45,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:12:45,859.859 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-28 06:12:48,529.529 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:12:48,532.532 INFO    ] Checking for system updates...
[2026-10-28 06:12:48,568.568 INFO    ] 200
[2026-10-28 06:12:48,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:12:48,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:12:48,627.627 INFO    ] No update needed
[2026-10-28 06:12:48,631.631 INFO    ] Checking for camera pi updates...
[2026-10-28 06:12:48,666.666 INFO    ] 200
[2026-10-28 06:12:48,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:12:48,710.710 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:12:48,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:12:48,818.818 INFO    ] No camera update needed
[2026-10-28 06:12:48,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:12:48,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:12:48,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:12:48,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:12:50,876.876 INFO    ] ================================================
[2026-10-28 06:12:50,890.890 INFO    ] Launching Daemon at Wed Oct 28 06:12:50 IST 2026
[2026-10-28 06:12:50,901.901 INFO    ] ================================================
[2026-10-28 06:12:51,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:12:51
[2026-10-28 06:12:52,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:12:52,333.333 INFO    ] Initializing speech engine...
[2026-10-28 06:12:52,343.343 INFO    ] 2026-10-28 06:12:52
[2026-10-28 06:12:52,588.588 INFO    ] 2026-10-28 06:12:52
[2026-10-28 06:12:52,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:12:52,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:12:52,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:12:53,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:12:53,143.143 INFO    ] time= 28/10/2026 06:12:53
[2026-10-28 06:12:53,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:12:53,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:12:53,282.282 INFO    ] No existing commands found in stream
[2026-10-28 06:12:58,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:12:58,307.307 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 06:13:02,112.112 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:13:02,115.115 INFO    ] Checking for system updates...
[2026-10-28 06:13:02,155.155 INFO    ] 200
[2026-10-28 06:13:02,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:13:02,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:13:02,221.221 INFO    ] No update needed
[2026-10-28 06:13:02,224.224 INFO    ] Checking for camera pi updates...
[2026-10-28 06:13:02,261.261 INFO    ] 200
[2026-10-28 06:13:02,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:13:02,313.313 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:13:02,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:13:02,408.408 INFO    ] No camera update needed
[2026-10-28 06:13:02,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:13:02,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:13:02,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:13:02,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:13:04,474.474 INFO    ] ================================================
[2026-10-28 06:13:04,489.489 INFO    ] Launching Daemon at Wed Oct 28 06:13:04 IST 2026
[2026-10-28 06:13:04,499.499 INFO    ] ================================================
[2026-10-28 06:13:05,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:13:05
[2026-10-28 06:13:05,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:13:05,932.932 INFO    ] Initializing speech engine...
[2026-10-28 06:13:05,939.939 INFO    ] 2026-10-28 06:13:05
[2026-10-28 06:13:06,234.234 INFO    ] 2026-10-28 06:13:06
[2026-10-28 06:13:06,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:13:06,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:13:06,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:13:06,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:13:06,781.781 INFO    ] time= 28/10/2026 06:13:06
[2026-10-28 06:13:06,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:13:06,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:13:07,026.026 INFO    ] No existing commands found in stream
[2026-10-28 06:13:12,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:13:12,041.041 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-28 06:13:14,529.529 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:13:14,532.532 INFO    ] Checking for system updates...
[2026-10-28 06:13:14,567.567 INFO    ] 200
[2026-10-28 06:13:14,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:13:14,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:13:14,625.625 INFO    ] No update needed
[2026-10-28 06:13:14,627.627 INFO    ] Checking for camera pi updates...
[2026-10-28 06:13:14,671.671 INFO    ] 200
[2026-10-28 06:13:14,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:13:14,719.719 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:13:14,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:13:14,820.820 INFO    ] No camera update needed
[2026-10-28 06:13:14,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:13:14,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:13:14,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:13:14,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:13:16,875.875 INFO    ] ================================================
[2026-10-28 06:13:16,890.890 INFO    ] Launching Daemon at Wed Oct 28 06:13:16 IST 2026
[2026-10-28 06:13:16,900.900 INFO    ] ================================================
[2026-10-28 06:13:17,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:13:17
[2026-10-28 06:13:18,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:13:18,314.314 INFO    ] Initializing speech engine...
[2026-10-28 06:13:18,323.323 INFO    ] 2026-10-28 06:13:18
[2026-10-28 06:13:18,568.568 INFO    ] 2026-10-28 06:13:18
[2026-10-28 06:13:18,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:13:18,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:13:18,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:13:19,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:13:19,123.123 INFO    ] time= 28/10/2026 06:13:19
[2026-10-28 06:13:19,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:13:19,144.144 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:13:19,276.276 INFO    ] No existing commands found in stream
[2026-10-28 06:13:24,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:13:24,293.293 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 06:13:26,949.949 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:13:26,952.952 INFO    ] Checking for system updates...
[2026-10-28 06:13:26,987.987 INFO    ] 200
[2026-10-28 06:13:26,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:13:27,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:13:27,045.045 INFO    ] No update needed
[2026-10-28 06:13:27,048.048 INFO    ] Checking for camera pi updates...
[2026-10-28 06:13:27,080.080 INFO    ] 200
[2026-10-28 06:13:27,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:13:27,123.123 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:13:27,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:13:27,180.180 INFO    ] No camera update needed
[2026-10-28 06:13:27,182.182 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:13:27,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:13:27,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:13:27,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:13:29,236.236 INFO    ] ================================================
[2026-10-28 06:13:29,252.252 INFO    ] Launching Daemon at Wed Oct 28 06:13:29 IST 2026
[2026-10-28 06:13:29,263.263 INFO    ] ================================================
[2026-10-28 06:13:29,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:13:29
[2026-10-28 06:13:30,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:13:30,745.745 INFO    ] Initializing speech engine...
[2026-10-28 06:13:30,754.754 INFO    ] 2026-10-28 06:13:30
[2026-10-28 06:13:31,014.014 INFO    ] 2026-10-28 06:13:31
[2026-10-28 06:13:31,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:13:31,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:13:31,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:13:31,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:13:31,559.559 INFO    ] time= 28/10/2026 06:13:31
[2026-10-28 06:13:31,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:13:31,585.585 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:13:31,715.715 INFO    ] No existing commands found in stream
[2026-10-28 06:13:36,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:13:36,746.746 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 06:13:39,234.234 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:13:39,237.237 INFO    ] Checking for system updates...
[2026-10-28 06:13:39,272.272 INFO    ] 200
[2026-10-28 06:13:39,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:13:39,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:13:39,331.331 INFO    ] No update needed
[2026-10-28 06:13:39,333.333 INFO    ] Checking for camera pi updates...
[2026-10-28 06:13:39,367.367 INFO    ] 200
[2026-10-28 06:13:39,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:13:39,410.410 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:13:39,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:13:39,502.502 INFO    ] No camera update needed
[2026-10-28 06:13:39,504.504 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:13:39,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:13:39,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:13:39,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:13:41,560.560 INFO    ] ================================================
[2026-10-28 06:13:41,575.575 INFO    ] Launching Daemon at Wed Oct 28 06:13:41 IST 2026
[2026-10-28 06:13:41,586.586 INFO    ] ================================================
[2026-10-28 06:13:42,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:13:42
[2026-10-28 06:13:42,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:13:42,997.997 INFO    ] Initializing speech engine...
[2026-10-28 06:13:43,010.010 INFO    ] 2026-10-28 06:13:42
[2026-10-28 06:13:43,300.300 INFO    ] 2026-10-28 06:13:43
[2026-10-28 06:13:43,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:13:43,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:13:43,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:13:43,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:13:43,771.771 INFO    ] time= 28/10/2026 06:13:43
[2026-10-28 06:13:43,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:13:43,863.863 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:13:43,961.961 INFO    ] No existing commands found in stream
[2026-10-28 06:13:48,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:13:48,988.988 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-28 06:13:51,191.191 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:13:51,194.194 INFO    ] Checking for system updates...
[2026-10-28 06:13:51,231.231 INFO    ] 200
[2026-10-28 06:13:51,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:13:51,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:13:51,288.288 INFO    ] No update needed
[2026-10-28 06:13:51,291.291 INFO    ] Checking for camera pi updates...
[2026-10-28 06:13:51,324.324 INFO    ] 200
[2026-10-28 06:13:51,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:13:51,367.367 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:13:51,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:13:51,451.451 INFO    ] No camera update needed
[2026-10-28 06:13:51,453.453 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:13:51,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:13:51,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:13:51,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:13:53,506.506 INFO    ] ================================================
[2026-10-28 06:13:53,521.521 INFO    ] Launching Daemon at Wed Oct 28 06:13:53 IST 2026
[2026-10-28 06:13:53,531.531 INFO    ] ================================================
[2026-10-28 06:13:54,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:13:54
[2026-10-28 06:13:54,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:13:55,007.007 INFO    ] Initializing speech engine...
[2026-10-28 06:13:55,015.015 INFO    ] 2026-10-28 06:13:55
[2026-10-28 06:13:55,270.270 INFO    ] 2026-10-28 06:13:55
[2026-10-28 06:13:55,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:13:55,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:13:55,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:13:55,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:13:55,849.849 INFO    ] time= 28/10/2026 06:13:55
[2026-10-28 06:13:55,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:13:55,874.874 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:13:55,999.999 INFO    ] No existing commands found in stream
[2026-10-28 06:14:01,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:14:01,019.019 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-28 06:14:01,831.831 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:14:01,834.834 INFO    ] Checking for system updates...
[2026-10-28 06:14:01,869.869 INFO    ] 200
[2026-10-28 06:14:01,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:14:01,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:14:01,955.955 INFO    ] No update needed
[2026-10-28 06:14:01,960.960 INFO    ] Checking for camera pi updates...
[2026-10-28 06:14:02,057.057 INFO    ] 200
[2026-10-28 06:14:02,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:14:02,146.146 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:14:02,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:14:02,383.383 INFO    ] No camera update needed
[2026-10-28 06:14:02,386.386 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:14:02,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:14:02,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:14:02,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:14:04,446.446 INFO    ] ================================================
[2026-10-28 06:14:04,462.462 INFO    ] Launching Daemon at Wed Oct 28 06:14:04 IST 2026
[2026-10-28 06:14:04,473.473 INFO    ] ================================================
[2026-10-28 06:14:05,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:14:05
[2026-10-28 06:14:05,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:14:05,898.898 INFO    ] Initializing speech engine...
[2026-10-28 06:14:05,904.904 INFO    ] 2026-10-28 06:14:05
[2026-10-28 06:14:06,201.201 INFO    ] 2026-10-28 06:14:06
[2026-10-28 06:14:06,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:14:06,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:14:06,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:14:06,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:14:06,677.677 INFO    ] time= 28/10/2026 06:14:06
[2026-10-28 06:14:06,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:14:06,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:14:06,850.850 INFO    ] No existing commands found in stream
[2026-10-28 06:14:11,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:14:11,863.863 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 06:14:14,926.926 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:14:14,928.928 INFO    ] Checking for system updates...
[2026-10-28 06:14:14,964.964 INFO    ] 200
[2026-10-28 06:14:14,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:14:15,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:14:15,036.036 INFO    ] No update needed
[2026-10-28 06:14:15,038.038 INFO    ] Checking for camera pi updates...
[2026-10-28 06:14:15,072.072 INFO    ] 200
[2026-10-28 06:14:15,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:14:15,116.116 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:14:15,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:14:15,202.202 INFO    ] No camera update needed
[2026-10-28 06:14:15,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:14:15,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:14:15,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:14:15,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:14:17,258.258 INFO    ] ================================================
[2026-10-28 06:14:17,274.274 INFO    ] Launching Daemon at Wed Oct 28 06:14:17 IST 2026
[2026-10-28 06:14:17,285.285 INFO    ] ================================================
[2026-10-28 06:14:17,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:14:17
[2026-10-28 06:14:18,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:14:18,720.720 INFO    ] Initializing speech engine...
[2026-10-28 06:14:18,729.729 INFO    ] 2026-10-28 06:14:18
[2026-10-28 06:14:18,984.984 INFO    ] 2026-10-28 06:14:18
[2026-10-28 06:14:19,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:14:19,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:14:19,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:14:19,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:14:19,533.533 INFO    ] time= 28/10/2026 06:14:19
[2026-10-28 06:14:19,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:14:19,567.567 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:14:19,724.724 INFO    ] No existing commands found in stream
[2026-10-28 06:14:24,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:14:24,757.757 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-28 06:14:28,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:14:28,561.561 INFO    ] Checking for system updates...
[2026-10-28 06:14:28,597.597 INFO    ] 200
[2026-10-28 06:14:28,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:14:28,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:14:28,658.658 INFO    ] No update needed
[2026-10-28 06:14:28,661.661 INFO    ] Checking for camera pi updates...
[2026-10-28 06:14:28,694.694 INFO    ] 200
[2026-10-28 06:14:28,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:14:28,737.737 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:14:28,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:14:28,819.819 INFO    ] No camera update needed
[2026-10-28 06:14:28,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:14:28,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:14:28,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:14:28,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:14:30,879.879 INFO    ] ================================================
[2026-10-28 06:14:30,894.894 INFO    ] Launching Daemon at Wed Oct 28 06:14:30 IST 2026
[2026-10-28 06:14:30,905.905 INFO    ] ================================================
[2026-10-28 06:14:31,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:14:31
[2026-10-28 06:14:32,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:14:32,377.377 INFO    ] Initializing speech engine...
[2026-10-28 06:14:32,386.386 INFO    ] 2026-10-28 06:14:32
[2026-10-28 06:14:32,675.675 INFO    ] 2026-10-28 06:14:32
[2026-10-28 06:14:32,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:14:32,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:14:32,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:14:33,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:14:33,214.214 INFO    ] time= 28/10/2026 06:14:33
[2026-10-28 06:14:33,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:14:33,277.277 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:14:33,363.363 INFO    ] No existing commands found in stream
[2026-10-28 06:14:38,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:14:38,377.377 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-28 06:14:40,471.471 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:14:40,474.474 INFO    ] Checking for system updates...
[2026-10-28 06:14:40,511.511 INFO    ] 200
[2026-10-28 06:14:40,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:14:40,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:14:40,569.569 INFO    ] No update needed
[2026-10-28 06:14:40,571.571 INFO    ] Checking for camera pi updates...
[2026-10-28 06:14:40,608.608 INFO    ] 200
[2026-10-28 06:14:40,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:14:40,651.651 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:14:40,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:14:40,745.745 INFO    ] No camera update needed
[2026-10-28 06:14:40,747.747 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:14:40,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:14:40,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:14:40,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:14:42,799.799 INFO    ] ================================================
[2026-10-28 06:14:42,814.814 INFO    ] Launching Daemon at Wed Oct 28 06:14:42 IST 2026
[2026-10-28 06:14:42,825.825 INFO    ] ================================================
[2026-10-28 06:14:43,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:14:43
[2026-10-28 06:14:43,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:14:44,235.235 INFO    ] Initializing speech engine...
[2026-10-28 06:14:44,244.244 INFO    ] 2026-10-28 06:14:44
[2026-10-28 06:14:44,533.533 INFO    ] 2026-10-28 06:14:44
[2026-10-28 06:14:44,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:14:44,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:14:44,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:14:45,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:14:45,120.120 INFO    ] time= 28/10/2026 06:14:45
[2026-10-28 06:14:45,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:14:45,138.138 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:14:45,280.280 INFO    ] No existing commands found in stream
[2026-10-28 06:14:50,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:14:50,299.299 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 06:14:52,614.614 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:14:52,617.617 INFO    ] Checking for system updates...
[2026-10-28 06:14:52,654.654 INFO    ] 200
[2026-10-28 06:14:52,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:14:52,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:14:52,711.711 INFO    ] No update needed
[2026-10-28 06:14:52,714.714 INFO    ] Checking for camera pi updates...
[2026-10-28 06:14:52,747.747 INFO    ] 200
[2026-10-28 06:14:52,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:14:52,790.790 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:14:52,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:14:52,855.855 INFO    ] No camera update needed
[2026-10-28 06:14:52,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:14:52,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:14:52,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:14:52,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:14:54,913.913 INFO    ] ================================================
[2026-10-28 06:14:54,933.933 INFO    ] Launching Daemon at Wed Oct 28 06:14:54 IST 2026
[2026-10-28 06:14:54,944.944 INFO    ] ================================================
[2026-10-28 06:14:55,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:14:55
[2026-10-28 06:14:56,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:14:56,567.567 INFO    ] Initializing speech engine...
[2026-10-28 06:14:56,578.578 INFO    ] 2026-10-28 06:14:56
[2026-10-28 06:14:56,889.889 INFO    ] 2026-10-28 06:14:56
[2026-10-28 06:14:56,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:14:57,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:14:57,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:14:57,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:14:57,564.564 INFO    ] time= 28/10/2026 06:14:57
[2026-10-28 06:14:57,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:14:57,645.645 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:14:57,808.808 INFO    ] No existing commands found in stream
[2026-10-28 06:15:02,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:15:02,847.847 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 06:15:05,757.757 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:15:05,760.760 INFO    ] Checking for system updates...
[2026-10-28 06:15:05,798.798 INFO    ] 200
[2026-10-28 06:15:05,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:15:05,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:15:05,856.856 INFO    ] No update needed
[2026-10-28 06:15:05,859.859 INFO    ] Checking for camera pi updates...
[2026-10-28 06:15:05,893.893 INFO    ] 200
[2026-10-28 06:15:05,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:15:05,937.937 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:15:06,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:15:06,017.017 INFO    ] No camera update needed
[2026-10-28 06:15:06,019.019 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:15:06,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:15:06,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:15:06,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:15:08,073.073 INFO    ] ================================================
[2026-10-28 06:15:08,088.088 INFO    ] Launching Daemon at Wed Oct 28 06:15:08 IST 2026
[2026-10-28 06:15:08,099.099 INFO    ] ================================================
[2026-10-28 06:15:08,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:15:08
[2026-10-28 06:15:09,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:15:09,702.702 INFO    ] Initializing speech engine...
[2026-10-28 06:15:09,716.716 INFO    ] 2026-10-28 06:15:09
[2026-10-28 06:15:09,975.975 INFO    ] 2026-10-28 06:15:09
[2026-10-28 06:15:10,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:15:10,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:15:10,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:15:10,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:15:10,544.544 INFO    ] time= 28/10/2026 06:15:10
[2026-10-28 06:15:10,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:15:10,571.571 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:15:10,699.699 INFO    ] No existing commands found in stream
[2026-10-28 06:15:15,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:15:15,719.719 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-28 06:15:16,964.964 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:15:16,966.966 INFO    ] Checking for system updates...
[2026-10-28 06:15:17,003.003 INFO    ] 200
[2026-10-28 06:15:17,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:15:17,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:15:17,069.069 INFO    ] No update needed
[2026-10-28 06:15:17,072.072 INFO    ] Checking for camera pi updates...
[2026-10-28 06:15:17,105.105 INFO    ] 200
[2026-10-28 06:15:17,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:15:17,154.154 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:15:17,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:15:17,251.251 INFO    ] No camera update needed
[2026-10-28 06:15:17,254.254 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:15:17,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:15:17,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:15:17,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:15:19,309.309 INFO    ] ================================================
[2026-10-28 06:15:19,324.324 INFO    ] Launching Daemon at Wed Oct 28 06:15:19 IST 2026
[2026-10-28 06:15:19,335.335 INFO    ] ================================================
[2026-10-28 06:15:19,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:15:19
[2026-10-28 06:15:20,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:15:20,845.845 INFO    ] Initializing speech engine...
[2026-10-28 06:15:20,852.852 INFO    ] 2026-10-28 06:15:20
[2026-10-28 06:15:21,134.134 INFO    ] 2026-10-28 06:15:21
[2026-10-28 06:15:21,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:15:21,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:15:21,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:15:21,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:15:21,711.711 INFO    ] time= 28/10/2026 06:15:21
[2026-10-28 06:15:21,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:15:21,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:15:21,900.900 INFO    ] No existing commands found in stream
[2026-10-28 06:15:26,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:15:26,930.930 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-28 06:15:27,813.813 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:15:27,816.816 INFO    ] Checking for system updates...
[2026-10-28 06:15:27,853.853 INFO    ] 200
[2026-10-28 06:15:27,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:15:27,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:15:27,912.912 INFO    ] No update needed
[2026-10-28 06:15:27,916.916 INFO    ] Checking for camera pi updates...
[2026-10-28 06:15:27,950.950 INFO    ] 200
[2026-10-28 06:15:27,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:15:27,995.995 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:15:28,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:15:28,081.081 INFO    ] No camera update needed
[2026-10-28 06:15:28,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:15:28,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:15:28,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:15:28,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:15:30,140.140 INFO    ] ================================================
[2026-10-28 06:15:30,156.156 INFO    ] Launching Daemon at Wed Oct 28 06:15:30 IST 2026
[2026-10-28 06:15:30,166.166 INFO    ] ================================================
[2026-10-28 06:15:30,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:15:30
[2026-10-28 06:15:31,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:15:31,641.641 INFO    ] Initializing speech engine...
[2026-10-28 06:15:31,648.648 INFO    ] 2026-10-28 06:15:31
[2026-10-28 06:15:31,966.966 INFO    ] 2026-10-28 06:15:31
[2026-10-28 06:15:32,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:15:32,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:15:32,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:15:32,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:15:32,499.499 INFO    ] time= 28/10/2026 06:15:32
[2026-10-28 06:15:32,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:15:32,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:15:32,726.726 INFO    ] No existing commands found in stream
[2026-10-28 06:15:37,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:15:37,746.746 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-28 06:15:38,994.994 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:15:38,997.997 INFO    ] Checking for system updates...
[2026-10-28 06:15:39,034.034 INFO    ] 200
[2026-10-28 06:15:39,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:15:39,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:15:39,094.094 INFO    ] No update needed
[2026-10-28 06:15:39,097.097 INFO    ] Checking for camera pi updates...
[2026-10-28 06:15:39,131.131 INFO    ] 200
[2026-10-28 06:15:39,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:15:39,177.177 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:15:39,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:15:39,282.282 INFO    ] No camera update needed
[2026-10-28 06:15:39,285.285 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:15:39,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:15:39,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:15:39,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:15:41,343.343 INFO    ] ================================================
[2026-10-28 06:15:41,358.358 INFO    ] Launching Daemon at Wed Oct 28 06:15:41 IST 2026
[2026-10-28 06:15:41,369.369 INFO    ] ================================================
[2026-10-28 06:15:41,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:15:41
[2026-10-28 06:15:42,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:15:42,772.772 INFO    ] Initializing speech engine...
[2026-10-28 06:15:42,781.781 INFO    ] 2026-10-28 06:15:42
[2026-10-28 06:15:43,055.055 INFO    ] 2026-10-28 06:15:43
[2026-10-28 06:15:43,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:15:43,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:15:43,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:15:43,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:15:43,625.625 INFO    ] time= 28/10/2026 06:15:43
[2026-10-28 06:15:43,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:15:43,652.652 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:15:43,767.767 INFO    ] No existing commands found in stream
[2026-10-28 06:15:48,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:15:48,793.793 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-28 06:15:51,574.574 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:15:51,577.577 INFO    ] Checking for system updates...
[2026-10-28 06:15:51,613.613 INFO    ] 200
[2026-10-28 06:15:51,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:15:51,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:15:51,671.671 INFO    ] No update needed
[2026-10-28 06:15:51,673.673 INFO    ] Checking for camera pi updates...
[2026-10-28 06:15:51,711.711 INFO    ] 200
[2026-10-28 06:15:51,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:15:51,754.754 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:15:51,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:15:51,839.839 INFO    ] No camera update needed
[2026-10-28 06:15:51,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:15:51,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:15:51,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:15:51,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:15:53,896.896 INFO    ] ================================================
[2026-10-28 06:15:53,912.912 INFO    ] Launching Daemon at Wed Oct 28 06:15:53 IST 2026
[2026-10-28 06:15:53,923.923 INFO    ] ================================================
[2026-10-28 06:15:54,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:15:54
[2026-10-28 06:15:55,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:15:55,579.579 INFO    ] Initializing speech engine...
[2026-10-28 06:15:55,593.593 INFO    ] 2026-10-28 06:15:55
[2026-10-28 06:15:55,875.875 INFO    ] 2026-10-28 06:15:55
[2026-10-28 06:15:55,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:15:56,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:15:56,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:15:56,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:15:56,439.439 INFO    ] time= 28/10/2026 06:15:56
[2026-10-28 06:15:56,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:15:56,478.478 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:15:56,609.609 INFO    ] No existing commands found in stream
[2026-10-28 06:16:01,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:16:01,663.663 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-28 06:16:04,640.640 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:16:04,643.643 INFO    ] Checking for system updates...
[2026-10-28 06:16:04,680.680 INFO    ] 200
[2026-10-28 06:16:04,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:16:04,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:16:04,743.743 INFO    ] No update needed
[2026-10-28 06:16:04,746.746 INFO    ] Checking for camera pi updates...
[2026-10-28 06:16:04,781.781 INFO    ] 200
[2026-10-28 06:16:04,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:16:04,831.831 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:16:05,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:16:05,015.015 INFO    ] No camera update needed
[2026-10-28 06:16:05,018.018 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:16:05,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:16:05,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:16:05,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:16:07,077.077 INFO    ] ================================================
[2026-10-28 06:16:07,092.092 INFO    ] Launching Daemon at Wed Oct 28 06:16:07 IST 2026
[2026-10-28 06:16:07,105.105 INFO    ] ================================================
[2026-10-28 06:16:07,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:16:07
[2026-10-28 06:16:08,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:16:08,767.767 INFO    ] Initializing speech engine...
[2026-10-28 06:16:08,780.780 INFO    ] 2026-10-28 06:16:08
[2026-10-28 06:16:09,062.062 INFO    ] 2026-10-28 06:16:09
[2026-10-28 06:16:09,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:16:09,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:16:09,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:16:09,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:16:09,597.597 INFO    ] time= 28/10/2026 06:16:09
[2026-10-28 06:16:09,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:16:09,645.645 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:16:09,757.757 INFO    ] No existing commands found in stream
[2026-10-28 06:16:14,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:16:14,791.791 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-28 06:16:15,633.633 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:16:15,636.636 INFO    ] Checking for system updates...
[2026-10-28 06:16:15,673.673 INFO    ] 200
[2026-10-28 06:16:15,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:16:15,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:16:15,732.732 INFO    ] No update needed
[2026-10-28 06:16:15,735.735 INFO    ] Checking for camera pi updates...
[2026-10-28 06:16:15,771.771 INFO    ] 200
[2026-10-28 06:16:15,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:16:15,816.816 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:16:15,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:16:15,901.901 INFO    ] No camera update needed
[2026-10-28 06:16:15,904.904 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:16:15,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:16:15,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:16:15,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:16:17,963.963 INFO    ] ================================================
[2026-10-28 06:16:17,979.979 INFO    ] Launching Daemon at Wed Oct 28 06:16:17 IST 2026
[2026-10-28 06:16:17,991.991 INFO    ] ================================================
[2026-10-28 06:16:18,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:16:18
[2026-10-28 06:16:19,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:16:19,411.411 INFO    ] Initializing speech engine...
[2026-10-28 06:16:19,427.427 INFO    ] 2026-10-28 06:16:19
[2026-10-28 06:16:19,715.715 INFO    ] 2026-10-28 06:16:19
[2026-10-28 06:16:19,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:16:19,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:16:20,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:16:20,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:16:20,301.301 INFO    ] time= 28/10/2026 06:16:20
[2026-10-28 06:16:20,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:16:20,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:16:20,476.476 INFO    ] No existing commands found in stream
[2026-10-28 06:16:25,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:16:25,504.504 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-28 06:16:27,529.529 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:16:27,532.532 INFO    ] Checking for system updates...
[2026-10-28 06:16:27,569.569 INFO    ] 200
[2026-10-28 06:16:27,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:16:27,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:16:27,633.633 INFO    ] No update needed
[2026-10-28 06:16:27,635.635 INFO    ] Checking for camera pi updates...
[2026-10-28 06:16:27,669.669 INFO    ] 200
[2026-10-28 06:16:27,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:16:27,716.716 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:16:27,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:16:27,812.812 INFO    ] No camera update needed
[2026-10-28 06:16:27,815.815 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:16:27,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:16:27,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:16:27,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:16:29,869.869 INFO    ] ================================================
[2026-10-28 06:16:29,884.884 INFO    ] Launching Daemon at Wed Oct 28 06:16:29 IST 2026
[2026-10-28 06:16:29,895.895 INFO    ] ================================================
[2026-10-28 06:16:30,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:16:30
[2026-10-28 06:16:31,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:16:31,296.296 INFO    ] Initializing speech engine...
[2026-10-28 06:16:31,301.301 INFO    ] 2026-10-28 06:16:31
[2026-10-28 06:16:31,605.605 INFO    ] 2026-10-28 06:16:31
[2026-10-28 06:16:31,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:16:31,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:16:31,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:16:32,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:16:32,218.218 INFO    ] time= 28/10/2026 06:16:32
[2026-10-28 06:16:32,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:16:32,246.246 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:16:32,384.384 INFO    ] No existing commands found in stream
[2026-10-28 06:16:37,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:16:37,408.408 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-28 06:16:38,429.429 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:16:38,432.432 INFO    ] Checking for system updates...
[2026-10-28 06:16:38,468.468 INFO    ] 200
[2026-10-28 06:16:38,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:16:38,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:16:38,525.525 INFO    ] No update needed
[2026-10-28 06:16:38,527.527 INFO    ] Checking for camera pi updates...
[2026-10-28 06:16:38,564.564 INFO    ] 200
[2026-10-28 06:16:38,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:16:38,607.607 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:16:38,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:16:38,696.696 INFO    ] No camera update needed
[2026-10-28 06:16:38,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:16:38,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:16:38,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:16:38,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:16:40,757.757 INFO    ] ================================================
[2026-10-28 06:16:40,772.772 INFO    ] Launching Daemon at Wed Oct 28 06:16:40 IST 2026
[2026-10-28 06:16:40,784.784 INFO    ] ================================================
[2026-10-28 06:16:41,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:16:41
[2026-10-28 06:16:42,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:16:42,426.426 INFO    ] Initializing speech engine...
[2026-10-28 06:16:42,440.440 INFO    ] 2026-10-28 06:16:42
[2026-10-28 06:16:42,756.756 INFO    ] 2026-10-28 06:16:42
[2026-10-28 06:16:42,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:16:43,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:16:43,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:16:43,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:16:43,296.296 INFO    ] time= 28/10/2026 06:16:43
[2026-10-28 06:16:43,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:16:43,337.337 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:16:43,464.464 INFO    ] No existing commands found in stream
[2026-10-28 06:16:48,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:16:48,499.499 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 06:16:52,614.614 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:16:52,617.617 INFO    ] Checking for system updates...
[2026-10-28 06:16:52,654.654 INFO    ] 200
[2026-10-28 06:16:52,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:16:52,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:16:52,713.713 INFO    ] No update needed
[2026-10-28 06:16:52,715.715 INFO    ] Checking for camera pi updates...
[2026-10-28 06:16:52,748.748 INFO    ] 200
[2026-10-28 06:16:52,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:16:52,792.792 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:16:52,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:16:52,876.876 INFO    ] No camera update needed
[2026-10-28 06:16:52,878.878 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:16:52,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:16:52,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:16:52,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:16:54,932.932 INFO    ] ================================================
[2026-10-28 06:16:54,947.947 INFO    ] Launching Daemon at Wed Oct 28 06:16:54 IST 2026
[2026-10-28 06:16:54,958.958 INFO    ] ================================================
[2026-10-28 06:16:55,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:16:55
[2026-10-28 06:16:56,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:16:56,382.382 INFO    ] Initializing speech engine...
[2026-10-28 06:16:56,392.392 INFO    ] 2026-10-28 06:16:56
[2026-10-28 06:16:56,637.637 INFO    ] 2026-10-28 06:16:56
[2026-10-28 06:16:56,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:16:56,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:16:56,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:16:57,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:16:57,192.192 INFO    ] time= 28/10/2026 06:16:57
[2026-10-28 06:16:57,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:16:57,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:16:57,343.343 INFO    ] No existing commands found in stream
[2026-10-28 06:17:02,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:17:02,359.359 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 06:17:03,734.734 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:17:03,737.737 INFO    ] Checking for system updates...
[2026-10-28 06:17:03,777.777 INFO    ] 200
[2026-10-28 06:17:03,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:17:03,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:17:03,834.834 INFO    ] No update needed
[2026-10-28 06:17:03,836.836 INFO    ] Checking for camera pi updates...
[2026-10-28 06:17:03,873.873 INFO    ] 200
[2026-10-28 06:17:03,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:17:03,921.921 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:17:04,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:17:04,007.007 INFO    ] No camera update needed
[2026-10-28 06:17:04,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:17:04,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:17:04,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:17:04,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:17:06,063.063 INFO    ] ================================================
[2026-10-28 06:17:06,078.078 INFO    ] Launching Daemon at Wed Oct 28 06:17:06 IST 2026
[2026-10-28 06:17:06,089.089 INFO    ] ================================================
[2026-10-28 06:17:06,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:17:06
[2026-10-28 06:17:07,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:17:07,542.542 INFO    ] Initializing speech engine...
[2026-10-28 06:17:07,547.547 INFO    ] 2026-10-28 06:17:07
[2026-10-28 06:17:07,808.808 INFO    ] 2026-10-28 06:17:07
[2026-10-28 06:17:07,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:17:08,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:17:08,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:17:08,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:17:08,354.354 INFO    ] time= 28/10/2026 06:17:08
[2026-10-28 06:17:08,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:17:08,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:17:08,508.508 INFO    ] No existing commands found in stream
[2026-10-28 06:17:13,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:17:13,540.540 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-28 06:17:17,593.593 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:17:17,596.596 INFO    ] Checking for system updates...
[2026-10-28 06:17:17,631.631 INFO    ] 200
[2026-10-28 06:17:17,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:17:17,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:17:17,688.688 INFO    ] No update needed
[2026-10-28 06:17:17,690.690 INFO    ] Checking for camera pi updates...
[2026-10-28 06:17:17,723.723 INFO    ] 200
[2026-10-28 06:17:17,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:17:17,767.767 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:17:17,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:17:17,868.868 INFO    ] No camera update needed
[2026-10-28 06:17:17,870.870 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:17:17,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:17:17,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:17:17,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:17:19,924.924 INFO    ] ================================================
[2026-10-28 06:17:19,940.940 INFO    ] Launching Daemon at Wed Oct 28 06:17:19 IST 2026
[2026-10-28 06:17:19,951.951 INFO    ] ================================================
[2026-10-28 06:17:20,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:17:20
[2026-10-28 06:17:21,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:17:21,351.351 INFO    ] Initializing speech engine...
[2026-10-28 06:17:21,364.364 INFO    ] 2026-10-28 06:17:21
[2026-10-28 06:17:21,626.626 INFO    ] 2026-10-28 06:17:21
[2026-10-28 06:17:21,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:17:21,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:17:21,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:17:22,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:17:22,180.180 INFO    ] time= 28/10/2026 06:17:22
[2026-10-28 06:17:22,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:17:22,205.205 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:17:22,336.336 INFO    ] No existing commands found in stream
[2026-10-28 06:17:27,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:17:27,358.358 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-28 06:17:29,697.697 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:17:29,700.700 INFO    ] Checking for system updates...
[2026-10-28 06:17:29,741.741 INFO    ] 200
[2026-10-28 06:17:29,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:17:29,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:17:29,801.801 INFO    ] No update needed
[2026-10-28 06:17:29,804.804 INFO    ] Checking for camera pi updates...
[2026-10-28 06:17:29,839.839 INFO    ] 200
[2026-10-28 06:17:29,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:17:29,884.884 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:17:29,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:17:29,973.973 INFO    ] No camera update needed
[2026-10-28 06:17:29,976.976 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:17:29,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:17:29,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:17:29,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:17:32,033.033 INFO    ] ================================================
[2026-10-28 06:17:32,049.049 INFO    ] Launching Daemon at Wed Oct 28 06:17:32 IST 2026
[2026-10-28 06:17:32,061.061 INFO    ] ================================================
[2026-10-28 06:17:32,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:17:32
[2026-10-28 06:17:33,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:17:33,604.604 INFO    ] Initializing speech engine...
[2026-10-28 06:17:33,623.623 INFO    ] 2026-10-28 06:17:33
[2026-10-28 06:17:33,883.883 INFO    ] 2026-10-28 06:17:33
[2026-10-28 06:17:33,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:17:34,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:17:34,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:17:34,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:17:34,448.448 INFO    ] time= 28/10/2026 06:17:34
[2026-10-28 06:17:34,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:17:34,472.472 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:17:34,603.603 INFO    ] No existing commands found in stream
[2026-10-28 06:17:39,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:17:39,619.619 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-28 06:17:42,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:17:42,205.205 INFO    ] Checking for system updates...
[2026-10-28 06:17:42,240.240 INFO    ] 200
[2026-10-28 06:17:42,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:17:42,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:17:42,302.302 INFO    ] No update needed
[2026-10-28 06:17:42,304.304 INFO    ] Checking for camera pi updates...
[2026-10-28 06:17:42,340.340 INFO    ] 200
[2026-10-28 06:17:42,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:17:42,383.383 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:17:42,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:17:42,481.481 INFO    ] No camera update needed
[2026-10-28 06:17:42,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:17:42,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:17:42,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:17:42,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:17:44,536.536 INFO    ] ================================================
[2026-10-28 06:17:44,551.551 INFO    ] Launching Daemon at Wed Oct 28 06:17:44 IST 2026
[2026-10-28 06:17:44,562.562 INFO    ] ================================================
[2026-10-28 06:17:45,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:17:45
[2026-10-28 06:17:45,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:17:46,017.017 INFO    ] Initializing speech engine...
[2026-10-28 06:17:46,032.032 INFO    ] 2026-10-28 06:17:46
[2026-10-28 06:17:46,330.330 INFO    ] 2026-10-28 06:17:46
[2026-10-28 06:17:46,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:17:46,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:17:46,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:17:46,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:17:46,984.984 INFO    ] time= 28/10/2026 06:17:46
[2026-10-28 06:17:47,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:17:47,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:17:47,216.216 INFO    ] No existing commands found in stream
[2026-10-28 06:17:52,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:17:52,239.239 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-28 06:17:55,318.318 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:17:55,321.321 INFO    ] Checking for system updates...
[2026-10-28 06:17:55,356.356 INFO    ] 200
[2026-10-28 06:17:55,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:17:55,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:17:55,420.420 INFO    ] No update needed
[2026-10-28 06:17:55,422.422 INFO    ] Checking for camera pi updates...
[2026-10-28 06:17:55,455.455 INFO    ] 200
[2026-10-28 06:17:55,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:17:55,498.498 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:17:55,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:17:55,591.591 INFO    ] No camera update needed
[2026-10-28 06:17:55,594.594 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:17:55,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:17:55,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:17:55,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:17:57,648.648 INFO    ] ================================================
[2026-10-28 06:17:57,663.663 INFO    ] Launching Daemon at Wed Oct 28 06:17:57 IST 2026
[2026-10-28 06:17:57,674.674 INFO    ] ================================================
[2026-10-28 06:17:58,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:17:58
[2026-10-28 06:17:58,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:17:59,112.112 INFO    ] Initializing speech engine...
[2026-10-28 06:17:59,127.127 INFO    ] 2026-10-28 06:17:59
[2026-10-28 06:17:59,382.382 INFO    ] 2026-10-28 06:17:59
[2026-10-28 06:17:59,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:17:59,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:17:59,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:17:59,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:17:59,936.936 INFO    ] time= 28/10/2026 06:17:59
[2026-10-28 06:17:59,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:17:59,959.959 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:18:00,085.085 INFO    ] No existing commands found in stream
[2026-10-28 06:18:05,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:18:05,101.101 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-28 06:18:05,895.895 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:18:05,898.898 INFO    ] Checking for system updates...
[2026-10-28 06:18:05,934.934 INFO    ] 200
[2026-10-28 06:18:05,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:18:05,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:18:06,000.000 INFO    ] No update needed
[2026-10-28 06:18:06,002.002 INFO    ] Checking for camera pi updates...
[2026-10-28 06:18:06,039.039 INFO    ] 200
[2026-10-28 06:18:06,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:18:06,085.085 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:18:06,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:18:06,197.197 INFO    ] No camera update needed
[2026-10-28 06:18:06,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:18:06,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:18:06,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:18:06,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:18:08,252.252 INFO    ] ================================================
[2026-10-28 06:18:08,267.267 INFO    ] Launching Daemon at Wed Oct 28 06:18:08 IST 2026
[2026-10-28 06:18:08,277.277 INFO    ] ================================================
[2026-10-28 06:18:08,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:18:08
[2026-10-28 06:18:09,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:18:09,694.694 INFO    ] Initializing speech engine...
[2026-10-28 06:18:09,703.703 INFO    ] 2026-10-28 06:18:09
[2026-10-28 06:18:09,949.949 INFO    ] 2026-10-28 06:18:09
[2026-10-28 06:18:10,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:18:10,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:18:10,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:18:10,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:18:10,503.503 INFO    ] time= 28/10/2026 06:18:10
[2026-10-28 06:18:10,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:18:10,550.550 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:18:10,670.670 INFO    ] No existing commands found in stream
[2026-10-28 06:18:15,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:18:15,703.703 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-28 06:18:19,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:18:19,975.975 INFO    ] Checking for system updates...
[2026-10-28 06:18:20,014.014 INFO    ] 200
[2026-10-28 06:18:20,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:18:20,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:18:20,077.077 INFO    ] No update needed
[2026-10-28 06:18:20,080.080 INFO    ] Checking for camera pi updates...
[2026-10-28 06:18:20,117.117 INFO    ] 200
[2026-10-28 06:18:20,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:18:20,165.165 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:18:20,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:18:20,326.326 INFO    ] No camera update needed
[2026-10-28 06:18:20,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:18:20,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:18:20,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:18:20,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:18:22,385.385 INFO    ] ================================================
[2026-10-28 06:18:22,401.401 INFO    ] Launching Daemon at Wed Oct 28 06:18:22 IST 2026
[2026-10-28 06:18:22,411.411 INFO    ] ================================================
[2026-10-28 06:18:22,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:18:22
[2026-10-28 06:18:23,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:18:23,863.863 INFO    ] Initializing speech engine...
[2026-10-28 06:18:23,874.874 INFO    ] 2026-10-28 06:18:23
[2026-10-28 06:18:24,120.120 INFO    ] 2026-10-28 06:18:24
[2026-10-28 06:18:24,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:18:24,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:18:24,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:18:24,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:18:24,674.674 INFO    ] time= 28/10/2026 06:18:24
[2026-10-28 06:18:24,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:18:24,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:18:24,809.809 INFO    ] No existing commands found in stream
[2026-10-28 06:18:29,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:18:29,836.836 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-28 06:18:34,215.215 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:18:34,218.218 INFO    ] Checking for system updates...
[2026-10-28 06:18:34,257.257 INFO    ] 200
[2026-10-28 06:18:34,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:18:34,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:18:34,317.317 INFO    ] No update needed
[2026-10-28 06:18:34,319.319 INFO    ] Checking for camera pi updates...
[2026-10-28 06:18:34,353.353 INFO    ] 200
[2026-10-28 06:18:34,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:18:34,397.397 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:18:34,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:18:34,483.483 INFO    ] No camera update needed
[2026-10-28 06:18:34,485.485 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:18:34,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:18:34,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:18:34,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:18:36,542.542 INFO    ] ================================================
[2026-10-28 06:18:36,557.557 INFO    ] Launching Daemon at Wed Oct 28 06:18:36 IST 2026
[2026-10-28 06:18:36,567.567 INFO    ] ================================================
[2026-10-28 06:18:37,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:18:37
[2026-10-28 06:18:37,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:18:38,131.131 INFO    ] Initializing speech engine...
[2026-10-28 06:18:38,148.148 INFO    ] 2026-10-28 06:18:38
[2026-10-28 06:18:38,418.418 INFO    ] 2026-10-28 06:18:38
[2026-10-28 06:18:38,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:18:38,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:18:38,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:18:38,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:18:38,971.971 INFO    ] time= 28/10/2026 06:18:38
[2026-10-28 06:18:38,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:18:39,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:18:39,140.140 INFO    ] No existing commands found in stream
[2026-10-28 06:18:44,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:18:44,174.174 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 06:18:46,522.522 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:18:46,525.525 INFO    ] Checking for system updates...
[2026-10-28 06:18:46,562.562 INFO    ] 200
[2026-10-28 06:18:46,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:18:46,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:18:46,621.621 INFO    ] No update needed
[2026-10-28 06:18:46,624.624 INFO    ] Checking for camera pi updates...
[2026-10-28 06:18:46,661.661 INFO    ] 200
[2026-10-28 06:18:46,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:18:46,709.709 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:18:46,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:18:46,798.798 INFO    ] No camera update needed
[2026-10-28 06:18:46,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:18:46,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:18:46,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:18:46,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:18:48,855.855 INFO    ] ================================================
[2026-10-28 06:18:48,870.870 INFO    ] Launching Daemon at Wed Oct 28 06:18:48 IST 2026
[2026-10-28 06:18:48,880.880 INFO    ] ================================================
[2026-10-28 06:18:49,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:18:49
[2026-10-28 06:18:50,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:18:50,282.282 INFO    ] Initializing speech engine...
[2026-10-28 06:18:50,297.297 INFO    ] 2026-10-28 06:18:50
[2026-10-28 06:18:50,578.578 INFO    ] 2026-10-28 06:18:50
[2026-10-28 06:18:50,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:18:50,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:18:50,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:18:51,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:18:51,117.117 INFO    ] time= 28/10/2026 06:18:51
[2026-10-28 06:18:51,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:18:51,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:18:51,321.321 INFO    ] No existing commands found in stream
[2026-10-28 06:18:56,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:18:56,342.342 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 06:19:00,371.371 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:19:00,374.374 INFO    ] Checking for system updates...
[2026-10-28 06:19:00,412.412 INFO    ] 200
[2026-10-28 06:19:00,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:19:00,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:19:00,474.474 INFO    ] No update needed
[2026-10-28 06:19:00,476.476 INFO    ] Checking for camera pi updates...
[2026-10-28 06:19:00,509.509 INFO    ] 200
[2026-10-28 06:19:00,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:19:00,552.552 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:19:00,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:19:00,637.637 INFO    ] No camera update needed
[2026-10-28 06:19:00,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:19:00,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:19:00,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:19:00,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:19:02,697.697 INFO    ] ================================================
[2026-10-28 06:19:02,716.716 INFO    ] Launching Daemon at Wed Oct 28 06:19:02 IST 2026
[2026-10-28 06:19:02,736.736 INFO    ] ================================================
[2026-10-28 06:19:03,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:19:03
[2026-10-28 06:19:04,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:19:04,321.321 INFO    ] Initializing speech engine...
[2026-10-28 06:19:04,327.327 INFO    ] 2026-10-28 06:19:04
[2026-10-28 06:19:04,625.625 INFO    ] 2026-10-28 06:19:04
[2026-10-28 06:19:04,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:19:04,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:19:04,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:19:05,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:19:05,164.164 INFO    ] time= 28/10/2026 06:19:05
[2026-10-28 06:19:05,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:19:05,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:19:05,377.377 INFO    ] No existing commands found in stream
[2026-10-28 06:19:10,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:19:10,407.407 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-28 06:19:11,072.072 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:19:11,075.075 INFO    ] Checking for system updates...
[2026-10-28 06:19:11,110.110 INFO    ] 200
[2026-10-28 06:19:11,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:19:11,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:19:11,168.168 INFO    ] No update needed
[2026-10-28 06:19:11,171.171 INFO    ] Checking for camera pi updates...
[2026-10-28 06:19:11,205.205 INFO    ] 200
[2026-10-28 06:19:11,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:19:11,248.248 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:19:11,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:19:11,334.334 INFO    ] No camera update needed
[2026-10-28 06:19:11,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:19:11,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:19:11,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:19:11,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:19:13,389.389 INFO    ] ================================================
[2026-10-28 06:19:13,404.404 INFO    ] Launching Daemon at Wed Oct 28 06:19:13 IST 2026
[2026-10-28 06:19:13,415.415 INFO    ] ================================================
[2026-10-28 06:19:13,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:19:13
[2026-10-28 06:19:14,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:19:14,824.824 INFO    ] Initializing speech engine...
[2026-10-28 06:19:14,838.838 INFO    ] 2026-10-28 06:19:14
[2026-10-28 06:19:15,106.106 INFO    ] 2026-10-28 06:19:15
[2026-10-28 06:19:15,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:19:15,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:19:15,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:19:15,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:19:15,676.676 INFO    ] time= 28/10/2026 06:19:15
[2026-10-28 06:19:15,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:19:15,698.698 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:19:15,825.825 INFO    ] No existing commands found in stream
[2026-10-28 06:19:20,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:19:20,846.846 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 06:19:23,165.165 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:19:23,168.168 INFO    ] Checking for system updates...
[2026-10-28 06:19:23,205.205 INFO    ] 200
[2026-10-28 06:19:23,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:19:23,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:19:23,269.269 INFO    ] No update needed
[2026-10-28 06:19:23,272.272 INFO    ] Checking for camera pi updates...
[2026-10-28 06:19:23,310.310 INFO    ] 200
[2026-10-28 06:19:23,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:19:23,358.358 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:19:23,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:19:23,442.442 INFO    ] No camera update needed
[2026-10-28 06:19:23,444.444 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:19:23,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:19:23,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:19:23,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:19:25,499.499 INFO    ] ================================================
[2026-10-28 06:19:25,514.514 INFO    ] Launching Daemon at Wed Oct 28 06:19:25 IST 2026
[2026-10-28 06:19:25,524.524 INFO    ] ================================================
[2026-10-28 06:19:26,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:19:26
[2026-10-28 06:19:26,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:19:26,954.954 INFO    ] Initializing speech engine...
[2026-10-28 06:19:26,961.961 INFO    ] 2026-10-28 06:19:26
[2026-10-28 06:19:27,269.269 INFO    ] 2026-10-28 06:19:27
[2026-10-28 06:19:27,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:19:27,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:19:27,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:19:27,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:19:27,730.730 INFO    ] time= 28/10/2026 06:19:27
[2026-10-28 06:19:27,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:19:27,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:19:27,884.884 INFO    ] No existing commands found in stream
[2026-10-28 06:19:32,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:19:32,926.926 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-28 06:19:37,059.059 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:19:37,062.062 INFO    ] Checking for system updates...
[2026-10-28 06:19:37,098.098 INFO    ] 200
[2026-10-28 06:19:37,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:19:37,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:19:37,157.157 INFO    ] No update needed
[2026-10-28 06:19:37,160.160 INFO    ] Checking for camera pi updates...
[2026-10-28 06:19:37,193.193 INFO    ] 200
[2026-10-28 06:19:37,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:19:37,236.236 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:19:37,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:19:37,333.333 INFO    ] No camera update needed
[2026-10-28 06:19:37,336.336 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:19:37,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:19:37,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:19:37,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:19:39,388.388 INFO    ] ================================================
[2026-10-28 06:19:39,403.403 INFO    ] Launching Daemon at Wed Oct 28 06:19:39 IST 2026
[2026-10-28 06:19:39,414.414 INFO    ] ================================================
[2026-10-28 06:19:39,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:19:39
[2026-10-28 06:19:40,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:19:40,875.875 INFO    ] Initializing speech engine...
[2026-10-28 06:19:40,881.881 INFO    ] 2026-10-28 06:19:40
[2026-10-28 06:19:41,142.142 INFO    ] 2026-10-28 06:19:41
[2026-10-28 06:19:41,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:19:41,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:19:41,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:19:41,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:19:41,690.690 INFO    ] time= 28/10/2026 06:19:41
[2026-10-28 06:19:41,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:19:41,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:19:41,882.882 INFO    ] No existing commands found in stream
[2026-10-28 06:19:46,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:19:46,916.916 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-28 06:19:50,219.219 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:19:50,221.221 INFO    ] Checking for system updates...
[2026-10-28 06:19:50,258.258 INFO    ] 200
[2026-10-28 06:19:50,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:19:50,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:19:50,317.317 INFO    ] No update needed
[2026-10-28 06:19:50,319.319 INFO    ] Checking for camera pi updates...
[2026-10-28 06:19:50,353.353 INFO    ] 200
[2026-10-28 06:19:50,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:19:50,401.401 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:19:50,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:19:50,477.477 INFO    ] No camera update needed
[2026-10-28 06:19:50,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:19:50,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:19:50,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:19:50,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:19:52,535.535 INFO    ] ================================================
[2026-10-28 06:19:52,549.549 INFO    ] Launching Daemon at Wed Oct 28 06:19:52 IST 2026
[2026-10-28 06:19:52,560.560 INFO    ] ================================================
[2026-10-28 06:19:53,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:19:53
[2026-10-28 06:19:53,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:19:54,214.214 INFO    ] Initializing speech engine...
[2026-10-28 06:19:54,222.222 INFO    ] 2026-10-28 06:19:54
[2026-10-28 06:19:54,530.530 INFO    ] 2026-10-28 06:19:54
[2026-10-28 06:19:54,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:19:54,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:19:54,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:19:55,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:19:55,052.052 INFO    ] time= 28/10/2026 06:19:55
[2026-10-28 06:19:55,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:19:55,090.090 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:19:55,226.226 INFO    ] No existing commands found in stream
[2026-10-28 06:20:00,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:20:00,260.260 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-28 06:20:02,556.556 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:20:02,562.562 INFO    ] Checking for system updates...
[2026-10-28 06:20:02,737.737 INFO    ] 200
[2026-10-28 06:20:02,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:20:02,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:20:02,858.858 INFO    ] No update needed
[2026-10-28 06:20:02,861.861 INFO    ] Checking for camera pi updates...
[2026-10-28 06:20:02,930.930 INFO    ] 200
[2026-10-28 06:20:02,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:20:02,987.987 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:20:03,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:20:03,390.390 INFO    ] No camera update needed
[2026-10-28 06:20:03,393.393 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:20:03,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:20:03,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:20:03,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:20:05,455.455 INFO    ] ================================================
[2026-10-28 06:20:05,469.469 INFO    ] Launching Daemon at Wed Oct 28 06:20:05 IST 2026
[2026-10-28 06:20:05,480.480 INFO    ] ================================================
[2026-10-28 06:20:06,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:20:06
[2026-10-28 06:20:06,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:20:06,904.904 INFO    ] Initializing speech engine...
[2026-10-28 06:20:06,913.913 INFO    ] 2026-10-28 06:20:06
[2026-10-28 06:20:07,159.159 INFO    ] 2026-10-28 06:20:07
[2026-10-28 06:20:07,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:20:07,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:20:07,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:20:07,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:20:07,716.716 INFO    ] time= 28/10/2026 06:20:07
[2026-10-28 06:20:07,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:20:07,740.740 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:20:07,872.872 INFO    ] No existing commands found in stream
[2026-10-28 06:20:12,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:20:12,898.898 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 06:20:13,576.576 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:20:13,578.578 INFO    ] Checking for system updates...
[2026-10-28 06:20:13,614.614 INFO    ] 200
[2026-10-28 06:20:13,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:20:13,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:20:13,671.671 INFO    ] No update needed
[2026-10-28 06:20:13,673.673 INFO    ] Checking for camera pi updates...
[2026-10-28 06:20:13,707.707 INFO    ] 200
[2026-10-28 06:20:13,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:20:13,749.749 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:20:13,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:20:13,834.834 INFO    ] No camera update needed
[2026-10-28 06:20:13,836.836 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:20:13,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:20:13,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:20:13,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:20:15,891.891 INFO    ] ================================================
[2026-10-28 06:20:15,906.906 INFO    ] Launching Daemon at Wed Oct 28 06:20:15 IST 2026
[2026-10-28 06:20:15,917.917 INFO    ] ================================================
[2026-10-28 06:20:16,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:20:16
[2026-10-28 06:20:17,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:20:17,412.412 INFO    ] Initializing speech engine...
[2026-10-28 06:20:17,418.418 INFO    ] 2026-10-28 06:20:17
[2026-10-28 06:20:17,729.729 INFO    ] 2026-10-28 06:20:17
[2026-10-28 06:20:17,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:20:18,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:20:18,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:20:18,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:20:18,247.247 INFO    ] time= 28/10/2026 06:20:18
[2026-10-28 06:20:18,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:20:18,286.286 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:20:18,414.414 INFO    ] No existing commands found in stream
[2026-10-28 06:20:23,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:20:23,448.448 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-28 06:20:27,933.933 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:20:27,936.936 INFO    ] Checking for system updates...
[2026-10-28 06:20:27,972.972 INFO    ] 200
[2026-10-28 06:20:27,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:20:28,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:20:28,032.032 INFO    ] No update needed
[2026-10-28 06:20:28,035.035 INFO    ] Checking for camera pi updates...
[2026-10-28 06:20:28,069.069 INFO    ] 200
[2026-10-28 06:20:28,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:20:28,112.112 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:20:28,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:20:28,296.296 INFO    ] No camera update needed
[2026-10-28 06:20:28,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:20:28,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:20:28,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:20:28,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:20:30,353.353 INFO    ] ================================================
[2026-10-28 06:20:30,368.368 INFO    ] Launching Daemon at Wed Oct 28 06:20:30 IST 2026
[2026-10-28 06:20:30,379.379 INFO    ] ================================================
[2026-10-28 06:20:31,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:20:31
[2026-10-28 06:20:31,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:20:32,001.001 INFO    ] Initializing speech engine...
[2026-10-28 06:20:32,010.010 INFO    ] 2026-10-28 06:20:32
[2026-10-28 06:20:32,301.301 INFO    ] 2026-10-28 06:20:32
[2026-10-28 06:20:32,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:20:32,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:20:32,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:20:32,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:20:32,856.856 INFO    ] time= 28/10/2026 06:20:32
[2026-10-28 06:20:32,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:20:32,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:20:33,037.037 INFO    ] No existing commands found in stream
[2026-10-28 06:20:38,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:20:38,070.070 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-28 06:20:42,448.448 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:20:42,451.451 INFO    ] Checking for system updates...
[2026-10-28 06:20:42,489.489 INFO    ] 200
[2026-10-28 06:20:42,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:20:42,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:20:42,547.547 INFO    ] No update needed
[2026-10-28 06:20:42,550.550 INFO    ] Checking for camera pi updates...
[2026-10-28 06:20:42,586.586 INFO    ] 200
[2026-10-28 06:20:42,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:20:42,637.637 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:20:42,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:20:42,727.727 INFO    ] No camera update needed
[2026-10-28 06:20:42,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:20:42,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:20:42,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:20:42,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:20:44,785.785 INFO    ] ================================================
[2026-10-28 06:20:44,800.800 INFO    ] Launching Daemon at Wed Oct 28 06:20:44 IST 2026
[2026-10-28 06:20:44,811.811 INFO    ] ================================================
[2026-10-28 06:20:45,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:20:45
[2026-10-28 06:20:46,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:20:46,451.451 INFO    ] Initializing speech engine...
[2026-10-28 06:20:46,465.465 INFO    ] 2026-10-28 06:20:46
[2026-10-28 06:20:46,782.782 INFO    ] 2026-10-28 06:20:46
[2026-10-28 06:20:46,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:20:47,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:20:47,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:20:47,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:20:47,302.302 INFO    ] time= 28/10/2026 06:20:47
[2026-10-28 06:20:47,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:20:47,343.343 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:20:47,470.470 INFO    ] No existing commands found in stream
[2026-10-28 06:20:52,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:20:52,499.499 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-28 06:20:56,533.533 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:20:56,536.536 INFO    ] Checking for system updates...
[2026-10-28 06:20:56,573.573 INFO    ] 200
[2026-10-28 06:20:56,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:20:56,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:20:56,631.631 INFO    ] No update needed
[2026-10-28 06:20:56,634.634 INFO    ] Checking for camera pi updates...
[2026-10-28 06:20:56,673.673 INFO    ] 200
[2026-10-28 06:20:56,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:20:56,723.723 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:20:56,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:20:56,830.830 INFO    ] No camera update needed
[2026-10-28 06:20:56,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:20:56,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:20:56,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:20:56,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:20:58,892.892 INFO    ] ================================================
[2026-10-28 06:20:58,907.907 INFO    ] Launching Daemon at Wed Oct 28 06:20:58 IST 2026
[2026-10-28 06:20:58,918.918 INFO    ] ================================================
[2026-10-28 06:20:59,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:20:59
[2026-10-28 06:21:00,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:21:00,550.550 INFO    ] Initializing speech engine...
[2026-10-28 06:21:00,557.557 INFO    ] 2026-10-28 06:21:00
[2026-10-28 06:21:00,838.838 INFO    ] 2026-10-28 06:21:00
[2026-10-28 06:21:00,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:21:01,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:21:01,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:21:01,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:21:01,400.400 INFO    ] time= 28/10/2026 06:21:01
[2026-10-28 06:21:01,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:21:01,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:21:01,565.565 INFO    ] No existing commands found in stream
[2026-10-28 06:21:06,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:21:06,599.599 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-28 06:21:10,657.657 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:21:10,660.660 INFO    ] Checking for system updates...
[2026-10-28 06:21:10,697.697 INFO    ] 200
[2026-10-28 06:21:10,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:21:10,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:21:10,755.755 INFO    ] No update needed
[2026-10-28 06:21:10,758.758 INFO    ] Checking for camera pi updates...
[2026-10-28 06:21:10,795.795 INFO    ] 200
[2026-10-28 06:21:10,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:21:10,844.844 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:21:10,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:21:10,928.928 INFO    ] No camera update needed
[2026-10-28 06:21:10,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:21:10,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:21:10,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:21:10,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:21:12,985.985 INFO    ] ================================================
[2026-10-28 06:21:13,000.000 INFO    ] Launching Daemon at Wed Oct 28 06:21:12 IST 2026
[2026-10-28 06:21:13,011.011 INFO    ] ================================================
[2026-10-28 06:21:13,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:21:13
[2026-10-28 06:21:14,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:21:14,614.614 INFO    ] Initializing speech engine...
[2026-10-28 06:21:14,628.628 INFO    ] 2026-10-28 06:21:14
[2026-10-28 06:21:14,910.910 INFO    ] 2026-10-28 06:21:14
[2026-10-28 06:21:15,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:21:15,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:21:15,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:21:15,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:21:15,452.452 INFO    ] time= 28/10/2026 06:21:15
[2026-10-28 06:21:15,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:21:15,491.491 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:21:15,596.596 INFO    ] No existing commands found in stream
[2026-10-28 06:21:20,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:21:20,615.615 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-28 06:21:25,235.235 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:21:25,238.238 INFO    ] Checking for system updates...
[2026-10-28 06:21:25,275.275 INFO    ] 200
[2026-10-28 06:21:25,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:21:25,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:21:25,335.335 INFO    ] No update needed
[2026-10-28 06:21:25,338.338 INFO    ] Checking for camera pi updates...
[2026-10-28 06:21:25,372.372 INFO    ] 200
[2026-10-28 06:21:25,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:21:25,416.416 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:21:25,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:21:25,518.518 INFO    ] No camera update needed
[2026-10-28 06:21:25,521.521 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:21:25,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:21:25,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:21:25,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:21:27,576.576 INFO    ] ================================================
[2026-10-28 06:21:27,591.591 INFO    ] Launching Daemon at Wed Oct 28 06:21:27 IST 2026
[2026-10-28 06:21:27,601.601 INFO    ] ================================================
[2026-10-28 06:21:28,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:21:28
[2026-10-28 06:21:28,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:21:29,005.005 INFO    ] Initializing speech engine...
[2026-10-28 06:21:29,018.018 INFO    ] 2026-10-28 06:21:29
[2026-10-28 06:21:29,300.300 INFO    ] 2026-10-28 06:21:29
[2026-10-28 06:21:29,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:21:29,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:21:29,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:21:29,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:21:29,918.918 INFO    ] time= 28/10/2026 06:21:29
[2026-10-28 06:21:29,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:21:29,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:21:30,098.098 INFO    ] No existing commands found in stream
[2026-10-28 06:21:35,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:21:35,120.120 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 06:21:39,334.334 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:21:39,337.337 INFO    ] Checking for system updates...
[2026-10-28 06:21:39,372.372 INFO    ] 200
[2026-10-28 06:21:39,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:21:39,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:21:39,430.430 INFO    ] No update needed
[2026-10-28 06:21:39,432.432 INFO    ] Checking for camera pi updates...
[2026-10-28 06:21:39,466.466 INFO    ] 200
[2026-10-28 06:21:39,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:21:39,509.509 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:21:39,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:21:39,593.593 INFO    ] No camera update needed
[2026-10-28 06:21:39,595.595 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:21:39,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:21:39,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:21:39,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:21:41,647.647 INFO    ] ================================================
[2026-10-28 06:21:41,662.662 INFO    ] Launching Daemon at Wed Oct 28 06:21:41 IST 2026
[2026-10-28 06:21:41,672.672 INFO    ] ================================================
[2026-10-28 06:21:42,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:21:42
[2026-10-28 06:21:42,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:21:43,175.175 INFO    ] Initializing speech engine...
[2026-10-28 06:21:43,180.180 INFO    ] 2026-10-28 06:21:43
[2026-10-28 06:21:43,440.440 INFO    ] 2026-10-28 06:21:43
[2026-10-28 06:21:43,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:21:43,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:21:43,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:21:43,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:21:44,000.000 INFO    ] time= 28/10/2026 06:21:43
[2026-10-28 06:21:44,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:21:44,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:21:44,156.156 INFO    ] No existing commands found in stream
[2026-10-28 06:21:49,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:21:49,184.184 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 06:21:52,006.006 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:21:52,009.009 INFO    ] Checking for system updates...
[2026-10-28 06:21:52,045.045 INFO    ] 200
[2026-10-28 06:21:52,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:21:52,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:21:52,123.123 INFO    ] No update needed
[2026-10-28 06:21:52,125.125 INFO    ] Checking for camera pi updates...
[2026-10-28 06:21:52,159.159 INFO    ] 200
[2026-10-28 06:21:52,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:21:52,209.209 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:21:52,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:21:52,313.313 INFO    ] No camera update needed
[2026-10-28 06:21:52,316.316 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:21:52,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:21:52,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:21:52,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:21:54,370.370 INFO    ] ================================================
[2026-10-28 06:21:54,385.385 INFO    ] Launching Daemon at Wed Oct 28 06:21:54 IST 2026
[2026-10-28 06:21:54,395.395 INFO    ] ================================================
[2026-10-28 06:21:54,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:21:54
[2026-10-28 06:21:55,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:21:55,806.806 INFO    ] Initializing speech engine...
[2026-10-28 06:21:55,818.818 INFO    ] 2026-10-28 06:21:55
[2026-10-28 06:21:56,084.084 INFO    ] 2026-10-28 06:21:56
[2026-10-28 06:21:56,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:21:56,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:21:56,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:21:56,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:21:56,577.577 INFO    ] time= 28/10/2026 06:21:56
[2026-10-28 06:21:56,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:21:56,655.655 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:21:56,775.775 INFO    ] No existing commands found in stream
[2026-10-28 06:22:01,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:22:01,808.808 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-28 06:22:04,769.769 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:22:04,772.772 INFO    ] Checking for system updates...
[2026-10-28 06:22:04,808.808 INFO    ] 200
[2026-10-28 06:22:04,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:22:04,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:22:04,865.865 INFO    ] No update needed
[2026-10-28 06:22:04,867.867 INFO    ] Checking for camera pi updates...
[2026-10-28 06:22:04,900.900 INFO    ] 200
[2026-10-28 06:22:04,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:22:04,942.942 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:22:05,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:22:05,028.028 INFO    ] No camera update needed
[2026-10-28 06:22:05,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:22:05,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:22:05,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:22:05,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:22:07,083.083 INFO    ] ================================================
[2026-10-28 06:22:07,098.098 INFO    ] Launching Daemon at Wed Oct 28 06:22:07 IST 2026
[2026-10-28 06:22:07,109.109 INFO    ] ================================================
[2026-10-28 06:22:07,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:22:07
[2026-10-28 06:22:08,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:22:08,515.515 INFO    ] Initializing speech engine...
[2026-10-28 06:22:08,528.528 INFO    ] 2026-10-28 06:22:08
[2026-10-28 06:22:08,807.807 INFO    ] 2026-10-28 06:22:08
[2026-10-28 06:22:08,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:22:09,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:22:09,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:22:09,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:22:09,220.220 INFO    ] time= 28/10/2026 06:22:09
[2026-10-28 06:22:09,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:22:09,283.283 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:22:09,417.417 INFO    ] No existing commands found in stream
[2026-10-28 06:22:14,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:22:14,445.445 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 06:22:16,771.771 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:22:16,773.773 INFO    ] Checking for system updates...
[2026-10-28 06:22:16,811.811 INFO    ] 200
[2026-10-28 06:22:16,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:22:16,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:22:16,870.870 INFO    ] No update needed
[2026-10-28 06:22:16,872.872 INFO    ] Checking for camera pi updates...
[2026-10-28 06:22:16,906.906 INFO    ] 200
[2026-10-28 06:22:16,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:22:16,948.948 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:22:17,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:22:17,044.044 INFO    ] No camera update needed
[2026-10-28 06:22:17,047.047 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:22:17,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:22:17,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:22:17,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:22:19,098.098 INFO    ] ================================================
[2026-10-28 06:22:19,114.114 INFO    ] Launching Daemon at Wed Oct 28 06:22:19 IST 2026
[2026-10-28 06:22:19,124.124 INFO    ] ================================================
[2026-10-28 06:22:19,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:22:19
[2026-10-28 06:22:20,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:22:20,529.529 INFO    ] Initializing speech engine...
[2026-10-28 06:22:20,535.535 INFO    ] 2026-10-28 06:22:20
[2026-10-28 06:22:20,805.805 INFO    ] 2026-10-28 06:22:20
[2026-10-28 06:22:20,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:22:21,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:22:21,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:22:21,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:22:21,375.375 INFO    ] time= 28/10/2026 06:22:21
[2026-10-28 06:22:21,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:22:21,402.402 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:22:21,528.528 INFO    ] No existing commands found in stream
[2026-10-28 06:22:26,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:22:26,543.543 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-28 06:22:27,901.901 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:22:27,904.904 INFO    ] Checking for system updates...
[2026-10-28 06:22:27,943.943 INFO    ] 200
[2026-10-28 06:22:27,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:22:27,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:22:28,000.000 INFO    ] No update needed
[2026-10-28 06:22:28,002.002 INFO    ] Checking for camera pi updates...
[2026-10-28 06:22:28,039.039 INFO    ] 200
[2026-10-28 06:22:28,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:22:28,082.082 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:22:28,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:22:28,166.166 INFO    ] No camera update needed
[2026-10-28 06:22:28,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:22:28,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:22:28,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:22:28,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:22:30,223.223 INFO    ] ================================================
[2026-10-28 06:22:30,238.238 INFO    ] Launching Daemon at Wed Oct 28 06:22:30 IST 2026
[2026-10-28 06:22:30,248.248 INFO    ] ================================================
[2026-10-28 06:22:30,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:22:30
[2026-10-28 06:22:31,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:22:31,688.688 INFO    ] Initializing speech engine...
[2026-10-28 06:22:31,703.703 INFO    ] 2026-10-28 06:22:31
[2026-10-28 06:22:31,990.990 INFO    ] 2026-10-28 06:22:31
[2026-10-28 06:22:32,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:22:32,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:22:32,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:22:32,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:22:32,596.596 INFO    ] time= 28/10/2026 06:22:32
[2026-10-28 06:22:32,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:22:32,622.622 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:22:32,780.780 INFO    ] No existing commands found in stream
[2026-10-28 06:22:37,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:22:37,813.813 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-28 06:22:40,099.099 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:22:40,102.102 INFO    ] Checking for system updates...
[2026-10-28 06:22:40,137.137 INFO    ] 200
[2026-10-28 06:22:40,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:22:40,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:22:40,196.196 INFO    ] No update needed
[2026-10-28 06:22:40,198.198 INFO    ] Checking for camera pi updates...
[2026-10-28 06:22:40,231.231 INFO    ] 200
[2026-10-28 06:22:40,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:22:40,278.278 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:22:40,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:22:40,473.473 INFO    ] No camera update needed
[2026-10-28 06:22:40,475.475 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:22:40,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:22:40,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:22:40,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:22:42,529.529 INFO    ] ================================================
[2026-10-28 06:22:42,544.544 INFO    ] Launching Daemon at Wed Oct 28 06:22:42 IST 2026
[2026-10-28 06:22:42,555.555 INFO    ] ================================================
[2026-10-28 06:22:43,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:22:43
[2026-10-28 06:22:43,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:22:44,022.022 INFO    ] Initializing speech engine...
[2026-10-28 06:22:44,031.031 INFO    ] 2026-10-28 06:22:44
[2026-10-28 06:22:44,304.304 INFO    ] 2026-10-28 06:22:44
[2026-10-28 06:22:44,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:22:44,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:22:44,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:22:44,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:22:44,773.773 INFO    ] time= 28/10/2026 06:22:44
[2026-10-28 06:22:44,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:22:44,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:22:45,039.039 INFO    ] No existing commands found in stream
[2026-10-28 06:22:50,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:22:50,062.062 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 06:22:51,245.245 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:22:51,247.247 INFO    ] Checking for system updates...
[2026-10-28 06:22:51,283.283 INFO    ] 200
[2026-10-28 06:22:51,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:22:51,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:22:51,340.340 INFO    ] No update needed
[2026-10-28 06:22:51,342.342 INFO    ] Checking for camera pi updates...
[2026-10-28 06:22:51,376.376 INFO    ] 200
[2026-10-28 06:22:51,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:22:51,419.419 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:22:51,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:22:51,507.507 INFO    ] No camera update needed
[2026-10-28 06:22:51,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:22:51,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:22:51,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:22:51,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:22:53,561.561 INFO    ] ================================================
[2026-10-28 06:22:53,576.576 INFO    ] Launching Daemon at Wed Oct 28 06:22:53 IST 2026
[2026-10-28 06:22:53,586.586 INFO    ] ================================================
[2026-10-28 06:22:54,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:22:54
[2026-10-28 06:22:54,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:22:55,002.002 INFO    ] Initializing speech engine...
[2026-10-28 06:22:55,025.025 INFO    ] 2026-10-28 06:22:55
[2026-10-28 06:22:55,280.280 INFO    ] 2026-10-28 06:22:55
[2026-10-28 06:22:55,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:22:55,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:22:55,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:22:55,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:22:55,854.854 INFO    ] time= 28/10/2026 06:22:55
[2026-10-28 06:22:55,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:22:55,878.878 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:22:56,005.005 INFO    ] No existing commands found in stream
[2026-10-28 06:23:01,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:23:01,026.026 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-28 06:23:01,781.781 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:23:01,784.784 INFO    ] Checking for system updates...
[2026-10-28 06:23:01,826.826 INFO    ] 200
[2026-10-28 06:23:01,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:23:01,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:23:01,911.911 INFO    ] No update needed
[2026-10-28 06:23:01,915.915 INFO    ] Checking for camera pi updates...
[2026-10-28 06:23:01,959.959 INFO    ] 200
[2026-10-28 06:23:01,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:23:02,010.010 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:23:02,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:23:02,152.152 INFO    ] No camera update needed
[2026-10-28 06:23:02,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:23:02,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:23:02,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:23:02,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:23:04,218.218 INFO    ] ================================================
[2026-10-28 06:23:04,234.234 INFO    ] Launching Daemon at Wed Oct 28 06:23:04 IST 2026
[2026-10-28 06:23:04,245.245 INFO    ] ================================================
[2026-10-28 06:23:04,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:23:04
[2026-10-28 06:23:05,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:23:05,712.712 INFO    ] Initializing speech engine...
[2026-10-28 06:23:05,721.721 INFO    ] 2026-10-28 06:23:05
[2026-10-28 06:23:05,966.966 INFO    ] 2026-10-28 06:23:05
[2026-10-28 06:23:06,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:23:06,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:23:06,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:23:06,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:23:06,522.522 INFO    ] time= 28/10/2026 06:23:06
[2026-10-28 06:23:06,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:23:06,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:23:06,685.685 INFO    ] No existing commands found in stream
[2026-10-28 06:23:11,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:23:11,717.717 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 06:23:14,717.717 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:23:14,721.721 INFO    ] Checking for system updates...
[2026-10-28 06:23:14,769.769 INFO    ] 200
[2026-10-28 06:23:14,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:23:14,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:23:14,840.840 INFO    ] No update needed
[2026-10-28 06:23:14,843.843 INFO    ] Checking for camera pi updates...
[2026-10-28 06:23:14,880.880 INFO    ] 200
[2026-10-28 06:23:14,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:23:14,927.927 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:23:15,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:23:15,030.030 INFO    ] No camera update needed
[2026-10-28 06:23:15,033.033 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:23:15,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:23:15,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:23:15,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:23:17,093.093 INFO    ] ================================================
[2026-10-28 06:23:17,108.108 INFO    ] Launching Daemon at Wed Oct 28 06:23:17 IST 2026
[2026-10-28 06:23:17,120.120 INFO    ] ================================================
[2026-10-28 06:23:17,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:23:17
[2026-10-28 06:23:18,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:23:18,718.718 INFO    ] Initializing speech engine...
[2026-10-28 06:23:18,729.729 INFO    ] 2026-10-28 06:23:18
[2026-10-28 06:23:19,036.036 INFO    ] 2026-10-28 06:23:19
[2026-10-28 06:23:19,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:23:19,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:23:19,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:23:19,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:23:19,541.541 INFO    ] time= 28/10/2026 06:23:19
[2026-10-28 06:23:19,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:23:19,587.587 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:23:19,708.708 INFO    ] No existing commands found in stream
[2026-10-28 06:23:24,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:23:24,742.742 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-28 06:23:28,198.198 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:23:28,201.201 INFO    ] Checking for system updates...
[2026-10-28 06:23:28,247.247 INFO    ] 200
[2026-10-28 06:23:28,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:23:28,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:23:28,324.324 INFO    ] No update needed
[2026-10-28 06:23:28,326.326 INFO    ] Checking for camera pi updates...
[2026-10-28 06:23:28,359.359 INFO    ] 200
[2026-10-28 06:23:28,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:23:28,402.402 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:23:28,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:23:28,484.484 INFO    ] No camera update needed
[2026-10-28 06:23:28,487.487 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:23:28,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:23:28,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:23:28,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:23:30,541.541 INFO    ] ================================================
[2026-10-28 06:23:30,556.556 INFO    ] Launching Daemon at Wed Oct 28 06:23:30 IST 2026
[2026-10-28 06:23:30,567.567 INFO    ] ================================================
[2026-10-28 06:23:31,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:23:31
[2026-10-28 06:23:31,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:23:32,222.222 INFO    ] Initializing speech engine...
[2026-10-28 06:23:32,236.236 INFO    ] 2026-10-28 06:23:32
[2026-10-28 06:23:32,522.522 INFO    ] 2026-10-28 06:23:32
[2026-10-28 06:23:32,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:23:32,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:23:32,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:23:33,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:23:33,075.075 INFO    ] time= 28/10/2026 06:23:33
[2026-10-28 06:23:33,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:23:33,102.102 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:23:33,235.235 INFO    ] No existing commands found in stream
[2026-10-28 06:23:38,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:23:38,261.261 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-28 06:23:39,848.848 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:23:39,850.850 INFO    ] Checking for system updates...
[2026-10-28 06:23:39,887.887 INFO    ] 200
[2026-10-28 06:23:39,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:23:39,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:23:39,947.947 INFO    ] No update needed
[2026-10-28 06:23:39,950.950 INFO    ] Checking for camera pi updates...
[2026-10-28 06:23:39,983.983 INFO    ] 200
[2026-10-28 06:23:39,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:23:40,033.033 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:23:40,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:23:40,129.129 INFO    ] No camera update needed
[2026-10-28 06:23:40,131.131 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:23:40,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:23:40,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:23:40,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:23:42,184.184 INFO    ] ================================================
[2026-10-28 06:23:42,201.201 INFO    ] Launching Daemon at Wed Oct 28 06:23:42 IST 2026
[2026-10-28 06:23:42,213.213 INFO    ] ================================================
[2026-10-28 06:23:42,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:23:42
[2026-10-28 06:23:43,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:23:43,630.630 INFO    ] Initializing speech engine...
[2026-10-28 06:23:43,639.639 INFO    ] 2026-10-28 06:23:43
[2026-10-28 06:23:43,885.885 INFO    ] 2026-10-28 06:23:43
[2026-10-28 06:23:43,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:23:44,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:23:44,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:23:44,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:23:44,451.451 INFO    ] time= 28/10/2026 06:23:44
[2026-10-28 06:23:44,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:23:44,477.477 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:23:44,605.605 INFO    ] No existing commands found in stream
[2026-10-28 06:23:49,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:23:49,623.623 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-28 06:23:51,135.135 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:23:51,138.138 INFO    ] Checking for system updates...
[2026-10-28 06:23:51,173.173 INFO    ] 200
[2026-10-28 06:23:51,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:23:51,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:23:51,235.235 INFO    ] No update needed
[2026-10-28 06:23:51,238.238 INFO    ] Checking for camera pi updates...
[2026-10-28 06:23:51,274.274 INFO    ] 200
[2026-10-28 06:23:51,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:23:51,316.316 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:23:51,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:23:51,402.402 INFO    ] No camera update needed
[2026-10-28 06:23:51,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:23:51,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:23:51,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:23:51,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:23:53,459.459 INFO    ] ================================================
[2026-10-28 06:23:53,475.475 INFO    ] Launching Daemon at Wed Oct 28 06:23:53 IST 2026
[2026-10-28 06:23:53,486.486 INFO    ] ================================================
[2026-10-28 06:23:54,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:23:54
[2026-10-28 06:23:54,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:23:55,016.016 INFO    ] Initializing speech engine...
[2026-10-28 06:23:55,038.038 INFO    ] 2026-10-28 06:23:55
[2026-10-28 06:23:55,321.321 INFO    ] 2026-10-28 06:23:55
[2026-10-28 06:23:55,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:23:55,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:23:55,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:23:55,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:23:55,888.888 INFO    ] time= 28/10/2026 06:23:55
[2026-10-28 06:23:55,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:23:55,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:23:56,120.120 INFO    ] No existing commands found in stream
[2026-10-28 06:24:01,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:24:01,143.143 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-28 06:24:04,939.939 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:24:04,942.942 INFO    ] Checking for system updates...
[2026-10-28 06:24:04,977.977 INFO    ] 200
[2026-10-28 06:24:04,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:24:05,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:24:05,034.034 INFO    ] No update needed
[2026-10-28 06:24:05,036.036 INFO    ] Checking for camera pi updates...
[2026-10-28 06:24:05,076.076 INFO    ] 200
[2026-10-28 06:24:05,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:24:05,118.118 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:24:05,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:24:05,207.207 INFO    ] No camera update needed
[2026-10-28 06:24:05,209.209 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:24:05,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:24:05,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:24:05,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:24:07,265.265 INFO    ] ================================================
[2026-10-28 06:24:07,281.281 INFO    ] Launching Daemon at Wed Oct 28 06:24:07 IST 2026
[2026-10-28 06:24:07,292.292 INFO    ] ================================================
[2026-10-28 06:24:07,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:24:07
[2026-10-28 06:24:08,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:24:08,770.770 INFO    ] Initializing speech engine...
[2026-10-28 06:24:08,777.777 INFO    ] 2026-10-28 06:24:08
[2026-10-28 06:24:09,038.038 INFO    ] 2026-10-28 06:24:09
[2026-10-28 06:24:09,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:24:09,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:24:09,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:24:09,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:24:09,595.595 INFO    ] time= 28/10/2026 06:24:09
[2026-10-28 06:24:09,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:24:09,631.631 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:24:09,756.756 INFO    ] No existing commands found in stream
[2026-10-28 06:24:14,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:24:14,794.794 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-28 06:24:18,192.192 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:24:18,195.195 INFO    ] Checking for system updates...
[2026-10-28 06:24:18,230.230 INFO    ] 200
[2026-10-28 06:24:18,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:24:18,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:24:18,295.295 INFO    ] No update needed
[2026-10-28 06:24:18,298.298 INFO    ] Checking for camera pi updates...
[2026-10-28 06:24:18,332.332 INFO    ] 200
[2026-10-28 06:24:18,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:24:18,378.378 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:24:18,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:24:18,450.450 INFO    ] No camera update needed
[2026-10-28 06:24:18,452.452 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:24:18,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:24:18,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:24:18,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:24:20,508.508 INFO    ] ================================================
[2026-10-28 06:24:20,523.523 INFO    ] Launching Daemon at Wed Oct 28 06:24:20 IST 2026
[2026-10-28 06:24:20,534.534 INFO    ] ================================================
[2026-10-28 06:24:21,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:24:21
[2026-10-28 06:24:21,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:24:22,015.015 INFO    ] Initializing speech engine...
[2026-10-28 06:24:22,029.029 INFO    ] 2026-10-28 06:24:22
[2026-10-28 06:24:22,334.334 INFO    ] 2026-10-28 06:24:22
[2026-10-28 06:24:22,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:24:22,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:24:22,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:24:22,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:24:22,860.860 INFO    ] time= 28/10/2026 06:24:22
[2026-10-28 06:24:22,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:24:22,896.896 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:24:23,036.036 INFO    ] No existing commands found in stream
[2026-10-28 06:24:28,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:24:28,069.069 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 06:24:31,940.940 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:24:31,943.943 INFO    ] Checking for system updates...
[2026-10-28 06:24:31,985.985 INFO    ] 200
[2026-10-28 06:24:31,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:24:32,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:24:32,058.058 INFO    ] No update needed
[2026-10-28 06:24:32,061.061 INFO    ] Checking for camera pi updates...
[2026-10-28 06:24:32,099.099 INFO    ] 200
[2026-10-28 06:24:32,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:24:32,147.147 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:24:32,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:24:32,251.251 INFO    ] No camera update needed
[2026-10-28 06:24:32,254.254 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:24:32,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:24:32,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:24:32,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:24:34,310.310 INFO    ] ================================================
[2026-10-28 06:24:34,326.326 INFO    ] Launching Daemon at Wed Oct 28 06:24:34 IST 2026
[2026-10-28 06:24:34,337.337 INFO    ] ================================================
[2026-10-28 06:24:34,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:24:34
[2026-10-28 06:24:35,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:24:35,787.787 INFO    ] Initializing speech engine...
[2026-10-28 06:24:35,797.797 INFO    ] 2026-10-28 06:24:35
[2026-10-28 06:24:36,060.060 INFO    ] 2026-10-28 06:24:36
[2026-10-28 06:24:36,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:24:36,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:24:36,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:24:36,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:24:36,623.623 INFO    ] time= 28/10/2026 06:24:36
[2026-10-28 06:24:36,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:24:36,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:24:36,804.804 INFO    ] No existing commands found in stream
[2026-10-28 06:24:41,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:24:41,838.838 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-28 06:24:44,875.875 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:24:44,878.878 INFO    ] Checking for system updates...
[2026-10-28 06:24:44,915.915 INFO    ] 200
[2026-10-28 06:24:44,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:24:44,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:24:44,973.973 INFO    ] No update needed
[2026-10-28 06:24:44,976.976 INFO    ] Checking for camera pi updates...
[2026-10-28 06:24:45,013.013 INFO    ] 200
[2026-10-28 06:24:45,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:24:45,060.060 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:24:45,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:24:45,241.241 INFO    ] No camera update needed
[2026-10-28 06:24:45,244.244 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:24:45,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:24:45,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:24:45,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:24:47,296.296 INFO    ] ================================================
[2026-10-28 06:24:47,312.312 INFO    ] Launching Daemon at Wed Oct 28 06:24:47 IST 2026
[2026-10-28 06:24:47,322.322 INFO    ] ================================================
[2026-10-28 06:24:47,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:24:47
[2026-10-28 06:24:48,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:24:48,937.937 INFO    ] Initializing speech engine...
[2026-10-28 06:24:48,949.949 INFO    ] 2026-10-28 06:24:48
[2026-10-28 06:24:49,260.260 INFO    ] 2026-10-28 06:24:49
[2026-10-28 06:24:49,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:24:49,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:24:49,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:24:49,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:24:49,774.774 INFO    ] time= 28/10/2026 06:24:49
[2026-10-28 06:24:49,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:24:49,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:24:49,916.916 INFO    ] No existing commands found in stream
[2026-10-28 06:24:54,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:24:54,940.940 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-28 06:24:55,854.854 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:24:55,857.857 INFO    ] Checking for system updates...
[2026-10-28 06:24:55,894.894 INFO    ] 200
[2026-10-28 06:24:55,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:24:55,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:24:55,954.954 INFO    ] No update needed
[2026-10-28 06:24:55,956.956 INFO    ] Checking for camera pi updates...
[2026-10-28 06:24:55,993.993 INFO    ] 200
[2026-10-28 06:24:55,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:24:56,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:24:56,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:24:56,142.142 INFO    ] No camera update needed
[2026-10-28 06:24:56,145.145 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:24:56,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:24:56,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:24:56,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:24:58,199.199 INFO    ] ================================================
[2026-10-28 06:24:58,214.214 INFO    ] Launching Daemon at Wed Oct 28 06:24:58 IST 2026
[2026-10-28 06:24:58,225.225 INFO    ] ================================================
[2026-10-28 06:24:58,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:24:58
[2026-10-28 06:24:59,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:24:59,728.728 INFO    ] Initializing speech engine...
[2026-10-28 06:24:59,735.735 INFO    ] 2026-10-28 06:24:59
[2026-10-28 06:24:59,995.995 INFO    ] 2026-10-28 06:24:59
[2026-10-28 06:25:00,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:25:00,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:25:00,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:25:00,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:25:00,536.536 INFO    ] time= 28/10/2026 06:25:00
[2026-10-28 06:25:00,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:25:00,571.571 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:25:00,708.708 INFO    ] No existing commands found in stream
[2026-10-28 06:25:05,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:25:05,741.741 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 06:25:08,153.153 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:25:08,155.155 INFO    ] Checking for system updates...
[2026-10-28 06:25:08,191.191 INFO    ] 200
[2026-10-28 06:25:08,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:25:08,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:25:08,253.253 INFO    ] No update needed
[2026-10-28 06:25:08,255.255 INFO    ] Checking for camera pi updates...
[2026-10-28 06:25:08,291.291 INFO    ] 200
[2026-10-28 06:25:08,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:25:08,337.337 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:25:08,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:25:08,427.427 INFO    ] No camera update needed
[2026-10-28 06:25:08,429.429 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:25:08,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:25:08,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:25:08,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:25:10,481.481 INFO    ] ================================================
[2026-10-28 06:25:10,496.496 INFO    ] Launching Daemon at Wed Oct 28 06:25:10 IST 2026
[2026-10-28 06:25:10,507.507 INFO    ] ================================================
[2026-10-28 06:25:11,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:25:11
[2026-10-28 06:25:11,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:25:11,941.941 INFO    ] Initializing speech engine...
[2026-10-28 06:25:11,964.964 INFO    ] 2026-10-28 06:25:11
[2026-10-28 06:25:12,235.235 INFO    ] 2026-10-28 06:25:12
[2026-10-28 06:25:12,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:25:12,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:25:12,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:25:12,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:25:12,718.718 INFO    ] time= 28/10/2026 06:25:12
[2026-10-28 06:25:12,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:25:12,816.816 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:25:12,917.917 INFO    ] No existing commands found in stream
[2026-10-28 06:25:17,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:25:17,928.928 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-28 06:25:22,113.113 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:25:22,116.116 INFO    ] Checking for system updates...
[2026-10-28 06:25:22,154.154 INFO    ] 200
[2026-10-28 06:25:22,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:25:22,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:25:22,211.211 INFO    ] No update needed
[2026-10-28 06:25:22,213.213 INFO    ] Checking for camera pi updates...
[2026-10-28 06:25:22,253.253 INFO    ] 200
[2026-10-28 06:25:22,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:25:22,299.299 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:25:22,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:25:22,393.393 INFO    ] No camera update needed
[2026-10-28 06:25:22,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:25:22,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:25:22,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:25:22,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:25:24,449.449 INFO    ] ================================================
[2026-10-28 06:25:24,465.465 INFO    ] Launching Daemon at Wed Oct 28 06:25:24 IST 2026
[2026-10-28 06:25:24,476.476 INFO    ] ================================================
[2026-10-28 06:25:25,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:25:25
[2026-10-28 06:25:25,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:25:26,041.041 INFO    ] Initializing speech engine...
[2026-10-28 06:25:26,051.051 INFO    ] 2026-10-28 06:25:26
[2026-10-28 06:25:26,322.322 INFO    ] 2026-10-28 06:25:26
[2026-10-28 06:25:26,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:25:26,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:25:26,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:25:26,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:25:26,886.886 INFO    ] time= 28/10/2026 06:25:26
[2026-10-28 06:25:26,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:25:26,924.924 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:25:27,040.040 INFO    ] No existing commands found in stream
[2026-10-28 06:25:32,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:25:32,070.070 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 06:25:34,160.160 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:25:34,163.163 INFO    ] Checking for system updates...
[2026-10-28 06:25:34,201.201 INFO    ] 200
[2026-10-28 06:25:34,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:25:34,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:25:34,258.258 INFO    ] No update needed
[2026-10-28 06:25:34,260.260 INFO    ] Checking for camera pi updates...
[2026-10-28 06:25:34,297.297 INFO    ] 200
[2026-10-28 06:25:34,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:25:34,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:25:34,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:25:34,433.433 INFO    ] No camera update needed
[2026-10-28 06:25:34,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:25:34,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:25:34,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:25:34,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:25:36,495.495 INFO    ] ================================================
[2026-10-28 06:25:36,510.510 INFO    ] Launching Daemon at Wed Oct 28 06:25:36 IST 2026
[2026-10-28 06:25:36,521.521 INFO    ] ================================================
[2026-10-28 06:25:37,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:25:37
[2026-10-28 06:25:37,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:25:37,931.931 INFO    ] Initializing speech engine...
[2026-10-28 06:25:37,943.943 INFO    ] 2026-10-28 06:25:37
[2026-10-28 06:25:38,200.200 INFO    ] 2026-10-28 06:25:38
[2026-10-28 06:25:38,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:25:38,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:25:38,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:25:38,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:25:38,693.693 INFO    ] time= 28/10/2026 06:25:38
[2026-10-28 06:25:38,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:25:38,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:25:38,916.916 INFO    ] No existing commands found in stream
[2026-10-28 06:25:43,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:25:43,932.932 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-28 06:25:45,849.849 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:25:45,851.851 INFO    ] Checking for system updates...
[2026-10-28 06:25:45,886.886 INFO    ] 200
[2026-10-28 06:25:45,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:25:45,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:25:45,942.942 INFO    ] No update needed
[2026-10-28 06:25:45,945.945 INFO    ] Checking for camera pi updates...
[2026-10-28 06:25:45,978.978 INFO    ] 200
[2026-10-28 06:25:45,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:25:46,027.027 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:25:46,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:25:46,125.125 INFO    ] No camera update needed
[2026-10-28 06:25:46,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:25:46,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:25:46,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:25:46,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:25:48,180.180 INFO    ] ================================================
[2026-10-28 06:25:48,194.194 INFO    ] Launching Daemon at Wed Oct 28 06:25:48 IST 2026
[2026-10-28 06:25:48,205.205 INFO    ] ================================================
[2026-10-28 06:25:48,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:25:48
[2026-10-28 06:25:49,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:25:49,755.755 INFO    ] Initializing speech engine...
[2026-10-28 06:25:49,763.763 INFO    ] 2026-10-28 06:25:49
[2026-10-28 06:25:50,043.043 INFO    ] 2026-10-28 06:25:50
[2026-10-28 06:25:50,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:25:50,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:25:50,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:25:50,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:25:50,580.580 INFO    ] time= 28/10/2026 06:25:50
[2026-10-28 06:25:50,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:25:50,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:25:50,758.758 INFO    ] No existing commands found in stream
[2026-10-28 06:25:55,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:25:55,797.797 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-28 06:25:57,772.772 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:25:57,775.775 INFO    ] Checking for system updates...
[2026-10-28 06:25:57,811.811 INFO    ] 200
[2026-10-28 06:25:57,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:25:57,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:25:57,875.875 INFO    ] No update needed
[2026-10-28 06:25:57,878.878 INFO    ] Checking for camera pi updates...
[2026-10-28 06:25:57,912.912 INFO    ] 200
[2026-10-28 06:25:57,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:25:57,959.959 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:25:58,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:25:58,048.048 INFO    ] No camera update needed
[2026-10-28 06:25:58,050.050 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:25:58,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:25:58,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:25:58,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:26:00,103.103 INFO    ] ================================================
[2026-10-28 06:26:00,118.118 INFO    ] Launching Daemon at Wed Oct 28 06:26:00 IST 2026
[2026-10-28 06:26:00,128.128 INFO    ] ================================================
[2026-10-28 06:26:00,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:26:00
[2026-10-28 06:26:01,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:26:01,770.770 INFO    ] Initializing speech engine...
[2026-10-28 06:26:01,782.782 INFO    ] 2026-10-28 06:26:01
[2026-10-28 06:26:02,075.075 INFO    ] 2026-10-28 06:26:02
[2026-10-28 06:26:02,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:26:02,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:26:02,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:26:02,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:26:02,704.704 INFO    ] time= 28/10/2026 06:26:02
[2026-10-28 06:26:02,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:26:02,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:26:02,934.934 INFO    ] No existing commands found in stream
[2026-10-28 06:26:07,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:26:07,953.953 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-28 06:26:11,693.693 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:26:11,696.696 INFO    ] Checking for system updates...
[2026-10-28 06:26:11,734.734 INFO    ] 200
[2026-10-28 06:26:11,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:26:11,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:26:11,795.795 INFO    ] No update needed
[2026-10-28 06:26:11,797.797 INFO    ] Checking for camera pi updates...
[2026-10-28 06:26:11,832.832 INFO    ] 200
[2026-10-28 06:26:11,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:26:11,879.879 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:26:11,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:26:11,954.954 INFO    ] No camera update needed
[2026-10-28 06:26:11,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:26:11,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:26:11,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:26:11,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:26:14,010.010 INFO    ] ================================================
[2026-10-28 06:26:14,025.025 INFO    ] Launching Daemon at Wed Oct 28 06:26:14 IST 2026
[2026-10-28 06:26:14,035.035 INFO    ] ================================================
[2026-10-28 06:26:14,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:26:14
[2026-10-28 06:26:15,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:26:15,643.643 INFO    ] Initializing speech engine...
[2026-10-28 06:26:15,650.650 INFO    ] 2026-10-28 06:26:15
[2026-10-28 06:26:15,937.937 INFO    ] 2026-10-28 06:26:15
[2026-10-28 06:26:15,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:26:16,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:26:16,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:26:16,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:26:16,489.489 INFO    ] time= 28/10/2026 06:26:16
[2026-10-28 06:26:16,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:26:16,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:26:16,647.647 INFO    ] No existing commands found in stream
[2026-10-28 06:26:21,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:26:21,676.676 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-28 06:26:25,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:26:25,367.367 INFO    ] Checking for system updates...
[2026-10-28 06:26:25,404.404 INFO    ] 200
[2026-10-28 06:26:25,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:26:25,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:26:25,463.463 INFO    ] No update needed
[2026-10-28 06:26:25,466.466 INFO    ] Checking for camera pi updates...
[2026-10-28 06:26:25,503.503 INFO    ] 200
[2026-10-28 06:26:25,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:26:25,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:26:25,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:26:25,658.658 INFO    ] No camera update needed
[2026-10-28 06:26:25,660.660 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:26:25,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:26:25,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:26:25,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:26:27,716.716 INFO    ] ================================================
[2026-10-28 06:26:27,730.730 INFO    ] Launching Daemon at Wed Oct 28 06:26:27 IST 2026
[2026-10-28 06:26:27,741.741 INFO    ] ================================================
[2026-10-28 06:26:28,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:26:28
[2026-10-28 06:26:29,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:26:29,360.360 INFO    ] Initializing speech engine...
[2026-10-28 06:26:29,369.369 INFO    ] 2026-10-28 06:26:29
[2026-10-28 06:26:29,649.649 INFO    ] 2026-10-28 06:26:29
[2026-10-28 06:26:29,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:26:29,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:26:29,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:26:30,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:26:30,223.223 INFO    ] time= 28/10/2026 06:26:30
[2026-10-28 06:26:30,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:26:30,260.260 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:26:30,390.390 INFO    ] No existing commands found in stream
[2026-10-28 06:26:35,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:26:35,419.419 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 06:26:39,212.212 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:26:39,215.215 INFO    ] Checking for system updates...
[2026-10-28 06:26:39,252.252 INFO    ] 200
[2026-10-28 06:26:39,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:26:39,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:26:39,310.310 INFO    ] No update needed
[2026-10-28 06:26:39,313.313 INFO    ] Checking for camera pi updates...
[2026-10-28 06:26:39,350.350 INFO    ] 200
[2026-10-28 06:26:39,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:26:39,402.402 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:26:39,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:26:39,491.491 INFO    ] No camera update needed
[2026-10-28 06:26:39,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:26:39,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:26:39,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:26:39,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:26:41,549.549 INFO    ] ================================================
[2026-10-28 06:26:41,565.565 INFO    ] Launching Daemon at Wed Oct 28 06:26:41 IST 2026
[2026-10-28 06:26:41,575.575 INFO    ] ================================================
[2026-10-28 06:26:42,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:26:42
[2026-10-28 06:26:42,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:26:43,014.014 INFO    ] Initializing speech engine...
[2026-10-28 06:26:43,034.034 INFO    ] 2026-10-28 06:26:43
[2026-10-28 06:26:43,298.298 INFO    ] 2026-10-28 06:26:43
[2026-10-28 06:26:43,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:26:43,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:26:43,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:26:43,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:26:43,822.822 INFO    ] time= 28/10/2026 06:26:43
[2026-10-28 06:26:43,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:26:43,930.930 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:26:44,053.053 INFO    ] No existing commands found in stream
[2026-10-28 06:26:49,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:26:49,072.072 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-28 06:26:50,216.216 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:26:50,219.219 INFO    ] Checking for system updates...
[2026-10-28 06:26:50,255.255 INFO    ] 200
[2026-10-28 06:26:50,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:26:50,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:26:50,313.313 INFO    ] No update needed
[2026-10-28 06:26:50,316.316 INFO    ] Checking for camera pi updates...
[2026-10-28 06:26:50,353.353 INFO    ] 200
[2026-10-28 06:26:50,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:26:50,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:26:50,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:26:50,489.489 INFO    ] No camera update needed
[2026-10-28 06:26:50,492.492 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:26:50,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:26:50,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:26:50,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:26:52,546.546 INFO    ] ================================================
[2026-10-28 06:26:52,561.561 INFO    ] Launching Daemon at Wed Oct 28 06:26:52 IST 2026
[2026-10-28 06:26:52,571.571 INFO    ] ================================================
[2026-10-28 06:26:53,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:26:53
[2026-10-28 06:26:53,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:26:54,155.155 INFO    ] Initializing speech engine...
[2026-10-28 06:26:54,163.163 INFO    ] 2026-10-28 06:26:54
[2026-10-28 06:26:54,478.478 INFO    ] 2026-10-28 06:26:54
[2026-10-28 06:26:54,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:26:54,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:26:54,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:26:54,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:26:55,005.005 INFO    ] time= 28/10/2026 06:26:54
[2026-10-28 06:26:55,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:26:55,042.042 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:26:55,169.169 INFO    ] No existing commands found in stream
[2026-10-28 06:27:00,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:27:00,203.203 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-28 06:27:01,210.210 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:27:01,213.213 INFO    ] Checking for system updates...
[2026-10-28 06:27:01,249.249 INFO    ] 200
[2026-10-28 06:27:01,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:27:01,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:27:01,313.313 INFO    ] No update needed
[2026-10-28 06:27:01,316.316 INFO    ] Checking for camera pi updates...
[2026-10-28 06:27:01,352.352 INFO    ] 200
[2026-10-28 06:27:01,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:27:01,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:27:01,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:27:01,671.671 INFO    ] No camera update needed
[2026-10-28 06:27:01,674.674 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:27:01,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:27:01,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:27:01,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:27:03,736.736 INFO    ] ================================================
[2026-10-28 06:27:03,873.873 INFO    ] Launching Daemon at Wed Oct 28 06:27:03 IST 2026
[2026-10-28 06:27:03,884.884 INFO    ] ================================================
[2026-10-28 06:27:04,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:27:04
[2026-10-28 06:27:05,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:27:05,302.302 INFO    ] Initializing speech engine...
[2026-10-28 06:27:05,308.308 INFO    ] 2026-10-28 06:27:05
[2026-10-28 06:27:05,605.605 INFO    ] 2026-10-28 06:27:05
[2026-10-28 06:27:05,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:27:05,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:27:05,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:27:06,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:27:06,124.124 INFO    ] time= 28/10/2026 06:27:06
[2026-10-28 06:27:06,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:27:06,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:27:06,370.370 INFO    ] No existing commands found in stream
[2026-10-28 06:27:11,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:27:11,398.398 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 06:27:13,496.496 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:27:13,499.499 INFO    ] Checking for system updates...
[2026-10-28 06:27:13,536.536 INFO    ] 200
[2026-10-28 06:27:13,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:27:13,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:27:13,592.592 INFO    ] No update needed
[2026-10-28 06:27:13,595.595 INFO    ] Checking for camera pi updates...
[2026-10-28 06:27:13,631.631 INFO    ] 200
[2026-10-28 06:27:13,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:27:13,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:27:13,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:27:13,775.775 INFO    ] No camera update needed
[2026-10-28 06:27:13,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:27:13,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:27:13,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:27:13,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:27:15,829.829 INFO    ] ================================================
[2026-10-28 06:27:15,845.845 INFO    ] Launching Daemon at Wed Oct 28 06:27:15 IST 2026
[2026-10-28 06:27:15,855.855 INFO    ] ================================================
[2026-10-28 06:27:16,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:27:16
[2026-10-28 06:27:17,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:27:17,469.469 INFO    ] Initializing speech engine...
[2026-10-28 06:27:17,481.481 INFO    ] 2026-10-28 06:27:17
[2026-10-28 06:27:17,764.764 INFO    ] 2026-10-28 06:27:17
[2026-10-28 06:27:17,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:27:18,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:27:18,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:27:18,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:27:18,314.314 INFO    ] time= 28/10/2026 06:27:18
[2026-10-28 06:27:18,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:27:18,363.363 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:27:18,492.492 INFO    ] No existing commands found in stream
[2026-10-28 06:27:23,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:27:23,526.526 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-28 06:27:25,543.543 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:27:25,546.546 INFO    ] Checking for system updates...
[2026-10-28 06:27:25,583.583 INFO    ] 200
[2026-10-28 06:27:25,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:27:25,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:27:25,648.648 INFO    ] No update needed
[2026-10-28 06:27:25,654.654 INFO    ] Checking for camera pi updates...
[2026-10-28 06:27:25,688.688 INFO    ] 200
[2026-10-28 06:27:25,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:27:25,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:27:25,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:27:25,815.815 INFO    ] No camera update needed
[2026-10-28 06:27:25,818.818 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:27:25,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:27:25,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:27:25,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:27:27,870.870 INFO    ] ================================================
[2026-10-28 06:27:27,885.885 INFO    ] Launching Daemon at Wed Oct 28 06:27:27 IST 2026
[2026-10-28 06:27:27,896.896 INFO    ] ================================================
[2026-10-28 06:27:28,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:27:28
[2026-10-28 06:27:29,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:27:29,478.478 INFO    ] Initializing speech engine...
[2026-10-28 06:27:29,487.487 INFO    ] 2026-10-28 06:27:29
[2026-10-28 06:27:29,756.756 INFO    ] 2026-10-28 06:27:29
[2026-10-28 06:27:29,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:27:30,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:27:30,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:27:30,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:27:30,319.319 INFO    ] time= 28/10/2026 06:27:30
[2026-10-28 06:27:30,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:27:30,345.345 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:27:30,481.481 INFO    ] No existing commands found in stream
[2026-10-28 06:27:35,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:27:35,507.507 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-28 06:27:37,475.475 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:27:37,478.478 INFO    ] Checking for system updates...
[2026-10-28 06:27:37,515.515 INFO    ] 200
[2026-10-28 06:27:37,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:27:37,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:27:37,576.576 INFO    ] No update needed
[2026-10-28 06:27:37,579.579 INFO    ] Checking for camera pi updates...
[2026-10-28 06:27:37,612.612 INFO    ] 200
[2026-10-28 06:27:37,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:27:37,655.655 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:27:37,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:27:37,737.737 INFO    ] No camera update needed
[2026-10-28 06:27:37,740.740 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:27:37,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:27:37,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:27:37,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:27:39,794.794 INFO    ] ================================================
[2026-10-28 06:27:39,810.810 INFO    ] Launching Daemon at Wed Oct 28 06:27:39 IST 2026
[2026-10-28 06:27:39,820.820 INFO    ] ================================================
[2026-10-28 06:27:40,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:27:40
[2026-10-28 06:27:40,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:27:41,275.275 INFO    ] Initializing speech engine...
[2026-10-28 06:27:41,282.282 INFO    ] 2026-10-28 06:27:41
[2026-10-28 06:27:41,541.541 INFO    ] 2026-10-28 06:27:41
[2026-10-28 06:27:41,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:27:41,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:27:41,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:27:42,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:27:42,090.090 INFO    ] time= 28/10/2026 06:27:42
[2026-10-28 06:27:42,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:27:42,136.136 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:27:42,244.244 INFO    ] No existing commands found in stream
[2026-10-28 06:27:47,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:27:47,270.270 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-28 06:27:50,569.569 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:27:50,571.571 INFO    ] Checking for system updates...
[2026-10-28 06:27:50,610.610 INFO    ] 200
[2026-10-28 06:27:50,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:27:50,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:27:50,669.669 INFO    ] No update needed
[2026-10-28 06:27:50,671.671 INFO    ] Checking for camera pi updates...
[2026-10-28 06:27:50,706.706 INFO    ] 200
[2026-10-28 06:27:50,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:27:50,752.752 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:27:50,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:27:50,810.810 INFO    ] No camera update needed
[2026-10-28 06:27:50,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:27:50,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:27:50,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:27:50,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:27:52,868.868 INFO    ] ================================================
[2026-10-28 06:27:52,883.883 INFO    ] Launching Daemon at Wed Oct 28 06:27:52 IST 2026
[2026-10-28 06:27:52,893.893 INFO    ] ================================================
[2026-10-28 06:27:53,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:27:53
[2026-10-28 06:27:54,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:27:54,474.474 INFO    ] Initializing speech engine...
[2026-10-28 06:27:54,481.481 INFO    ] 2026-10-28 06:27:54
[2026-10-28 06:27:54,754.754 INFO    ] 2026-10-28 06:27:54
[2026-10-28 06:27:54,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:27:55,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:27:55,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:27:55,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:27:55,334.334 INFO    ] time= 28/10/2026 06:27:55
[2026-10-28 06:27:55,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:27:55,362.362 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:27:55,495.495 INFO    ] No existing commands found in stream
[2026-10-28 06:28:00,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:28:00,528.528 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 06:28:01,857.857 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:28:01,861.861 INFO    ] Checking for system updates...
[2026-10-28 06:28:01,913.913 INFO    ] 200
[2026-10-28 06:28:01,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:28:01,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:28:01,988.988 INFO    ] No update needed
[2026-10-28 06:28:01,991.991 INFO    ] Checking for camera pi updates...
[2026-10-28 06:28:02,044.044 INFO    ] 200
[2026-10-28 06:28:02,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:28:02,092.092 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:28:02,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:28:02,225.225 INFO    ] No camera update needed
[2026-10-28 06:28:02,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:28:02,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:28:02,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:28:02,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:28:04,290.290 INFO    ] ================================================
[2026-10-28 06:28:04,305.305 INFO    ] Launching Daemon at Wed Oct 28 06:28:04 IST 2026
[2026-10-28 06:28:04,316.316 INFO    ] ================================================
[2026-10-28 06:28:04,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:28:04
[2026-10-28 06:28:05,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:28:05,781.781 INFO    ] Initializing speech engine...
[2026-10-28 06:28:05,789.789 INFO    ] 2026-10-28 06:28:05
[2026-10-28 06:28:06,048.048 INFO    ] 2026-10-28 06:28:06
[2026-10-28 06:28:06,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:28:06,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:28:06,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:28:06,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:28:06,738.738 INFO    ] time= 28/10/2026 06:28:06
[2026-10-28 06:28:06,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:28:06,842.842 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:28:06,973.973 INFO    ] No existing commands found in stream
[2026-10-28 06:28:11,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:28:12,002.002 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-28 06:28:13,213.213 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:28:13,216.216 INFO    ] Checking for system updates...
[2026-10-28 06:28:13,251.251 INFO    ] 200
[2026-10-28 06:28:13,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:28:13,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:28:13,309.309 INFO    ] No update needed
[2026-10-28 06:28:13,311.311 INFO    ] Checking for camera pi updates...
[2026-10-28 06:28:13,344.344 INFO    ] 200
[2026-10-28 06:28:13,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:28:13,387.387 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:28:13,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:28:13,447.447 INFO    ] No camera update needed
[2026-10-28 06:28:13,450.450 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:28:13,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:28:13,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:28:13,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:28:15,503.503 INFO    ] ================================================
[2026-10-28 06:28:15,518.518 INFO    ] Launching Daemon at Wed Oct 28 06:28:15 IST 2026
[2026-10-28 06:28:15,528.528 INFO    ] ================================================
[2026-10-28 06:28:16,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:28:16
[2026-10-28 06:28:16,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:28:16,931.931 INFO    ] Initializing speech engine...
[2026-10-28 06:28:16,944.944 INFO    ] 2026-10-28 06:28:16
[2026-10-28 06:28:17,223.223 INFO    ] 2026-10-28 06:28:17
[2026-10-28 06:28:17,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:28:17,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:28:17,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:28:17,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:28:17,808.808 INFO    ] time= 28/10/2026 06:28:17
[2026-10-28 06:28:17,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:28:17,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:28:17,971.971 INFO    ] No existing commands found in stream
[2026-10-28 06:28:22,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:28:22,996.996 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-28 06:28:26,491.491 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:28:26,494.494 INFO    ] Checking for system updates...
[2026-10-28 06:28:26,534.534 INFO    ] 200
[2026-10-28 06:28:26,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:28:26,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:28:26,591.591 INFO    ] No update needed
[2026-10-28 06:28:26,594.594 INFO    ] Checking for camera pi updates...
[2026-10-28 06:28:26,630.630 INFO    ] 200
[2026-10-28 06:28:26,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:28:26,673.673 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:28:26,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:28:26,749.749 INFO    ] No camera update needed
[2026-10-28 06:28:26,752.752 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:28:26,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:28:26,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:28:26,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:28:28,805.805 INFO    ] ================================================
[2026-10-28 06:28:28,820.820 INFO    ] Launching Daemon at Wed Oct 28 06:28:28 IST 2026
[2026-10-28 06:28:28,830.830 INFO    ] ================================================
[2026-10-28 06:28:29,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:28:29
[2026-10-28 06:28:29,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:28:30,283.283 INFO    ] Initializing speech engine...
[2026-10-28 06:28:30,291.291 INFO    ] 2026-10-28 06:28:30
[2026-10-28 06:28:30,551.551 INFO    ] 2026-10-28 06:28:30
[2026-10-28 06:28:30,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:28:30,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:28:30,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:28:31,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:28:31,045.045 INFO    ] time= 28/10/2026 06:28:31
[2026-10-28 06:28:31,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:28:31,154.154 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:28:31,299.299 INFO    ] No existing commands found in stream
[2026-10-28 06:28:36,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:28:36,324.324 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 06:28:39,722.722 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:28:39,725.725 INFO    ] Checking for system updates...
[2026-10-28 06:28:39,764.764 INFO    ] 200
[2026-10-28 06:28:39,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:28:39,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:28:39,821.821 INFO    ] No update needed
[2026-10-28 06:28:39,824.824 INFO    ] Checking for camera pi updates...
[2026-10-28 06:28:39,860.860 INFO    ] 200
[2026-10-28 06:28:39,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:28:39,903.903 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:28:40,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:28:40,008.008 INFO    ] No camera update needed
[2026-10-28 06:28:40,010.010 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:28:40,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:28:40,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:28:40,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:28:42,065.065 INFO    ] ================================================
[2026-10-28 06:28:42,080.080 INFO    ] Launching Daemon at Wed Oct 28 06:28:42 IST 2026
[2026-10-28 06:28:42,090.090 INFO    ] ================================================
[2026-10-28 06:28:42,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:28:42
[2026-10-28 06:28:43,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:28:43,494.494 INFO    ] Initializing speech engine...
[2026-10-28 06:28:43,500.500 INFO    ] 2026-10-28 06:28:43
[2026-10-28 06:28:43,792.792 INFO    ] 2026-10-28 06:28:43
[2026-10-28 06:28:43,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:28:44,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:28:44,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:28:44,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:28:44,311.311 INFO    ] time= 28/10/2026 06:28:44
[2026-10-28 06:28:44,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:28:44,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:28:44,540.540 INFO    ] No existing commands found in stream
[2026-10-28 06:28:49,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:28:49,561.561 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 06:28:51,717.717 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:28:51,719.719 INFO    ] Checking for system updates...
[2026-10-28 06:28:51,756.756 INFO    ] 200
[2026-10-28 06:28:51,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:28:51,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:28:51,812.812 INFO    ] No update needed
[2026-10-28 06:28:51,814.814 INFO    ] Checking for camera pi updates...
[2026-10-28 06:28:51,847.847 INFO    ] 200
[2026-10-28 06:28:51,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:28:51,890.890 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:28:51,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:28:51,971.971 INFO    ] No camera update needed
[2026-10-28 06:28:51,973.973 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:28:51,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:28:51,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:28:51,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:28:54,026.026 INFO    ] ================================================
[2026-10-28 06:28:54,041.041 INFO    ] Launching Daemon at Wed Oct 28 06:28:54 IST 2026
[2026-10-28 06:28:54,051.051 INFO    ] ================================================
[2026-10-28 06:28:54,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:28:54
[2026-10-28 06:28:55,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:28:55,491.491 INFO    ] Initializing speech engine...
[2026-10-28 06:28:55,499.499 INFO    ] 2026-10-28 06:28:55
[2026-10-28 06:28:55,790.790 INFO    ] 2026-10-28 06:28:55
[2026-10-28 06:28:55,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:28:56,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:28:56,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:28:56,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:28:56,384.384 INFO    ] time= 28/10/2026 06:28:56
[2026-10-28 06:28:56,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:28:56,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:28:56,541.541 INFO    ] No existing commands found in stream
[2026-10-28 06:29:01,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:29:01,578.578 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-28 06:29:05,482.482 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:29:05,485.485 INFO    ] Checking for system updates...
[2026-10-28 06:29:05,522.522 INFO    ] 200
[2026-10-28 06:29:05,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:29:05,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:29:05,584.584 INFO    ] No update needed
[2026-10-28 06:29:05,586.586 INFO    ] Checking for camera pi updates...
[2026-10-28 06:29:05,620.620 INFO    ] 200
[2026-10-28 06:29:05,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:29:05,664.664 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:29:05,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:29:05,864.864 INFO    ] No camera update needed
[2026-10-28 06:29:05,867.867 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:29:05,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:29:05,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:29:05,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:29:07,920.920 INFO    ] ================================================
[2026-10-28 06:29:07,936.936 INFO    ] Launching Daemon at Wed Oct 28 06:29:07 IST 2026
[2026-10-28 06:29:07,947.947 INFO    ] ================================================
[2026-10-28 06:29:08,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:29:08
[2026-10-28 06:29:09,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:29:09,388.388 INFO    ] Initializing speech engine...
[2026-10-28 06:29:09,412.412 INFO    ] 2026-10-28 06:29:09
[2026-10-28 06:29:09,679.679 INFO    ] 2026-10-28 06:29:09
[2026-10-28 06:29:09,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:29:09,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:29:10,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:29:10,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:29:10,285.285 INFO    ] time= 28/10/2026 06:29:10
[2026-10-28 06:29:10,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:29:10,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:29:10,450.450 INFO    ] No existing commands found in stream
[2026-10-28 06:29:15,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:29:15,468.468 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-28 06:29:16,818.818 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:29:16,821.821 INFO    ] Checking for system updates...
[2026-10-28 06:29:16,858.858 INFO    ] 200
[2026-10-28 06:29:16,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:29:16,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:29:16,920.920 INFO    ] No update needed
[2026-10-28 06:29:16,922.922 INFO    ] Checking for camera pi updates...
[2026-10-28 06:29:16,958.958 INFO    ] 200
[2026-10-28 06:29:16,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:29:17,001.001 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:29:17,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:29:17,093.093 INFO    ] No camera update needed
[2026-10-28 06:29:17,096.096 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:29:17,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:29:17,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:29:17,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:29:19,150.150 INFO    ] ================================================
[2026-10-28 06:29:19,166.166 INFO    ] Launching Daemon at Wed Oct 28 06:29:19 IST 2026
[2026-10-28 06:29:19,177.177 INFO    ] ================================================
[2026-10-28 06:29:19,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:29:19
[2026-10-28 06:29:20,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:29:20,612.612 INFO    ] Initializing speech engine...
[2026-10-28 06:29:20,633.633 INFO    ] 2026-10-28 06:29:20
[2026-10-28 06:29:20,904.904 INFO    ] 2026-10-28 06:29:20
[2026-10-28 06:29:20,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:29:21,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:29:21,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:29:21,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:29:21,505.505 INFO    ] time= 28/10/2026 06:29:21
[2026-10-28 06:29:21,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:29:21,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:29:21,646.646 INFO    ] No existing commands found in stream
[2026-10-28 06:29:26,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:29:26,674.674 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 06:29:30,607.607 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:29:30,610.610 INFO    ] Checking for system updates...
[2026-10-28 06:29:30,646.646 INFO    ] 200
[2026-10-28 06:29:30,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:29:30,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:29:30,706.706 INFO    ] No update needed
[2026-10-28 06:29:30,709.709 INFO    ] Checking for camera pi updates...
[2026-10-28 06:29:30,742.742 INFO    ] 200
[2026-10-28 06:29:30,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:29:30,784.784 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:29:30,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:29:30,854.854 INFO    ] No camera update needed
[2026-10-28 06:29:30,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:29:30,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:29:30,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:29:30,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:29:32,909.909 INFO    ] ================================================
[2026-10-28 06:29:32,924.924 INFO    ] Launching Daemon at Wed Oct 28 06:29:32 IST 2026
[2026-10-28 06:29:32,935.935 INFO    ] ================================================
[2026-10-28 06:29:33,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:29:33
[2026-10-28 06:29:34,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:29:34,357.357 INFO    ] Initializing speech engine...
[2026-10-28 06:29:34,378.378 INFO    ] 2026-10-28 06:29:34
[2026-10-28 06:29:34,637.637 INFO    ] 2026-10-28 06:29:34
[2026-10-28 06:29:34,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:29:34,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:29:34,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:29:35,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:29:35,236.236 INFO    ] time= 28/10/2026 06:29:35
[2026-10-28 06:29:35,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:29:35,255.255 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:29:35,402.402 INFO    ] No existing commands found in stream
[2026-10-28 06:29:40,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:29:40,430.430 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-28 06:29:42,395.395 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:29:42,397.397 INFO    ] Checking for system updates...
[2026-10-28 06:29:42,433.433 INFO    ] 200
[2026-10-28 06:29:42,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:29:42,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:29:42,490.490 INFO    ] No update needed
[2026-10-28 06:29:42,492.492 INFO    ] Checking for camera pi updates...
[2026-10-28 06:29:42,527.527 INFO    ] 200
[2026-10-28 06:29:42,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:29:42,570.570 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:29:42,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:29:42,652.652 INFO    ] No camera update needed
[2026-10-28 06:29:42,654.654 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:29:42,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:29:42,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:29:42,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:29:44,708.708 INFO    ] ================================================
[2026-10-28 06:29:44,724.724 INFO    ] Launching Daemon at Wed Oct 28 06:29:44 IST 2026
[2026-10-28 06:29:44,735.735 INFO    ] ================================================
[2026-10-28 06:29:45,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:29:45
[2026-10-28 06:29:45,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:29:46,232.232 INFO    ] Initializing speech engine...
[2026-10-28 06:29:46,240.240 INFO    ] 2026-10-28 06:29:46
[2026-10-28 06:29:46,525.525 INFO    ] 2026-10-28 06:29:46
[2026-10-28 06:29:46,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:29:46,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:29:46,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:29:47,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:29:47,070.070 INFO    ] time= 28/10/2026 06:29:47
[2026-10-28 06:29:47,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:29:47,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:29:47,242.242 INFO    ] No existing commands found in stream
[2026-10-28 06:29:52,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:29:52,266.266 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 06:29:53,617.617 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:29:53,620.620 INFO    ] Checking for system updates...
[2026-10-28 06:29:53,659.659 INFO    ] 200
[2026-10-28 06:29:53,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:29:53,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:29:53,719.719 INFO    ] No update needed
[2026-10-28 06:29:53,722.722 INFO    ] Checking for camera pi updates...
[2026-10-28 06:29:53,755.755 INFO    ] 200
[2026-10-28 06:29:53,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:29:53,799.799 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:29:53,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:29:53,881.881 INFO    ] No camera update needed
[2026-10-28 06:29:53,884.884 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:29:53,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:29:53,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:29:53,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:29:55,940.940 INFO    ] ================================================
[2026-10-28 06:29:55,956.956 INFO    ] Launching Daemon at Wed Oct 28 06:29:55 IST 2026
[2026-10-28 06:29:55,967.967 INFO    ] ================================================
[2026-10-28 06:29:56,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:29:56
[2026-10-28 06:29:57,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:29:57,510.510 INFO    ] Initializing speech engine...
[2026-10-28 06:29:57,517.517 INFO    ] 2026-10-28 06:29:57
[2026-10-28 06:29:57,800.800 INFO    ] 2026-10-28 06:29:57
[2026-10-28 06:29:57,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:29:58,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:29:58,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:29:58,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:29:58,348.348 INFO    ] time= 28/10/2026 06:29:58
[2026-10-28 06:29:58,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:29:58,396.396 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:29:58,505.505 INFO    ] No existing commands found in stream
[2026-10-28 06:30:03,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:30:03,539.539 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-28 06:30:09,517.517 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:30:09,520.520 INFO    ] Checking for system updates...
[2026-10-28 06:30:09,561.561 INFO    ] 200
[2026-10-28 06:30:09,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:30:09,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:30:09,619.619 INFO    ] No update needed
[2026-10-28 06:30:09,621.621 INFO    ] Checking for camera pi updates...
[2026-10-28 06:30:09,658.658 INFO    ] 200
[2026-10-28 06:30:09,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:30:09,701.701 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:30:09,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:30:09,784.784 INFO    ] No camera update needed
[2026-10-28 06:30:09,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:30:09,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:30:09,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:30:09,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:30:11,840.840 INFO    ] ================================================
[2026-10-28 06:30:11,856.856 INFO    ] Launching Daemon at Wed Oct 28 06:30:11 IST 2026
[2026-10-28 06:30:11,867.867 INFO    ] ================================================
[2026-10-28 06:30:12,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:30:12
[2026-10-28 06:30:13,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:30:13,270.270 INFO    ] Initializing speech engine...
[2026-10-28 06:30:13,292.292 INFO    ] 2026-10-28 06:30:13
[2026-10-28 06:30:13,542.542 INFO    ] 2026-10-28 06:30:13
[2026-10-28 06:30:13,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:30:13,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:30:13,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:30:14,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:30:14,117.117 INFO    ] time= 28/10/2026 06:30:14
[2026-10-28 06:30:14,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:30:14,147.147 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:30:14,281.281 INFO    ] No existing commands found in stream
[2026-10-28 06:30:19,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:30:19,319.319 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-28 06:30:22,516.516 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:30:22,519.519 INFO    ] Checking for system updates...
[2026-10-28 06:30:22,555.555 INFO    ] 200
[2026-10-28 06:30:22,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:30:22,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:30:22,613.613 INFO    ] No update needed
[2026-10-28 06:30:22,615.615 INFO    ] Checking for camera pi updates...
[2026-10-28 06:30:22,648.648 INFO    ] 200
[2026-10-28 06:30:22,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:30:22,691.691 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:30:22,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:30:22,774.774 INFO    ] No camera update needed
[2026-10-28 06:30:22,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:30:22,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:30:22,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:30:22,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:30:24,831.831 INFO    ] ================================================
[2026-10-28 06:30:24,847.847 INFO    ] Launching Daemon at Wed Oct 28 06:30:24 IST 2026
[2026-10-28 06:30:24,858.858 INFO    ] ================================================
[2026-10-28 06:30:25,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:30:25
[2026-10-28 06:30:26,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:30:26,408.408 INFO    ] Initializing speech engine...
[2026-10-28 06:30:26,419.419 INFO    ] 2026-10-28 06:30:26
[2026-10-28 06:30:26,689.689 INFO    ] 2026-10-28 06:30:26
[2026-10-28 06:30:26,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:30:27,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:30:27,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:30:27,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:30:27,252.252 INFO    ] time= 28/10/2026 06:30:27
[2026-10-28 06:30:27,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:30:27,299.299 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:30:27,442.442 INFO    ] No existing commands found in stream
[2026-10-28 06:30:32,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:30:32,477.477 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 06:30:36,778.778 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:30:36,781.781 INFO    ] Checking for system updates...
[2026-10-28 06:30:36,818.818 INFO    ] 200
[2026-10-28 06:30:36,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:30:36,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:30:36,875.875 INFO    ] No update needed
[2026-10-28 06:30:36,878.878 INFO    ] Checking for camera pi updates...
[2026-10-28 06:30:36,914.914 INFO    ] 200
[2026-10-28 06:30:36,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:30:36,956.956 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:30:37,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:30:37,056.056 INFO    ] No camera update needed
[2026-10-28 06:30:37,058.058 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:30:37,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:30:37,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:30:37,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:30:39,111.111 INFO    ] ================================================
[2026-10-28 06:30:39,127.127 INFO    ] Launching Daemon at Wed Oct 28 06:30:39 IST 2026
[2026-10-28 06:30:39,139.139 INFO    ] ================================================
[2026-10-28 06:30:39,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:30:39
[2026-10-28 06:30:40,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:30:40,583.583 INFO    ] Initializing speech engine...
[2026-10-28 06:30:40,591.591 INFO    ] 2026-10-28 06:30:40
[2026-10-28 06:30:40,884.884 INFO    ] 2026-10-28 06:30:40
[2026-10-28 06:30:40,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:30:41,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:30:41,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:30:41,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:30:41,479.479 INFO    ] time= 28/10/2026 06:30:41
[2026-10-28 06:30:41,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:30:41,517.517 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:30:41,657.657 INFO    ] No existing commands found in stream
[2026-10-28 06:30:46,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:30:46,685.685 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 06:30:47,395.395 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:30:47,397.397 INFO    ] Checking for system updates...
[2026-10-28 06:30:47,433.433 INFO    ] 200
[2026-10-28 06:30:47,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:30:47,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:30:47,491.491 INFO    ] No update needed
[2026-10-28 06:30:47,494.494 INFO    ] Checking for camera pi updates...
[2026-10-28 06:30:47,531.531 INFO    ] 200
[2026-10-28 06:30:47,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:30:47,575.575 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:30:47,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:30:47,658.658 INFO    ] No camera update needed
[2026-10-28 06:30:47,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:30:47,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:30:47,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:30:47,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:30:49,714.714 INFO    ] ================================================
[2026-10-28 06:30:49,729.729 INFO    ] Launching Daemon at Wed Oct 28 06:30:49 IST 2026
[2026-10-28 06:30:49,741.741 INFO    ] ================================================
[2026-10-28 06:30:50,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:30:50
[2026-10-28 06:30:50,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:30:51,214.214 INFO    ] Initializing speech engine...
[2026-10-28 06:30:51,223.223 INFO    ] 2026-10-28 06:30:51
[2026-10-28 06:30:51,471.471 INFO    ] 2026-10-28 06:30:51
[2026-10-28 06:30:51,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:30:51,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:30:51,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:30:51,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:30:52,027.027 INFO    ] time= 28/10/2026 06:30:51
[2026-10-28 06:30:52,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:30:52,052.052 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:30:52,282.282 INFO    ] No existing commands found in stream
[2026-10-28 06:30:57,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:30:57,298.298 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-28 06:31:01,413.413 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:31:01,416.416 INFO    ] Checking for system updates...
[2026-10-28 06:31:01,468.468 INFO    ] 200
[2026-10-28 06:31:01,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:31:01,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:31:01,590.590 INFO    ] No update needed
[2026-10-28 06:31:01,595.595 INFO    ] Checking for camera pi updates...
[2026-10-28 06:31:01,650.650 INFO    ] 200
[2026-10-28 06:31:01,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:31:01,768.768 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:31:01,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:31:01,890.890 INFO    ] No camera update needed
[2026-10-28 06:31:01,895.895 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:31:01,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:31:01,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:31:01,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:31:03,963.963 INFO    ] ================================================
[2026-10-28 06:31:03,978.978 INFO    ] Launching Daemon at Wed Oct 28 06:31:03 IST 2026
[2026-10-28 06:31:03,990.990 INFO    ] ================================================
[2026-10-28 06:31:04,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:31:04
[2026-10-28 06:31:05,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:31:05,587.587 INFO    ] Initializing speech engine...
[2026-10-28 06:31:05,595.595 INFO    ] 2026-10-28 06:31:05
[2026-10-28 06:31:05,872.872 INFO    ] 2026-10-28 06:31:05
[2026-10-28 06:31:05,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:31:06,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:31:06,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:31:06,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:31:06,454.454 INFO    ] time= 28/10/2026 06:31:06
[2026-10-28 06:31:06,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:31:06,496.496 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:31:06,624.624 INFO    ] No existing commands found in stream
[2026-10-28 06:31:11,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:31:11,649.649 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-28 06:31:12,527.527 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:31:12,530.530 INFO    ] Checking for system updates...
[2026-10-28 06:31:12,568.568 INFO    ] 200
[2026-10-28 06:31:12,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:31:12,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:31:12,630.630 INFO    ] No update needed
[2026-10-28 06:31:12,633.633 INFO    ] Checking for camera pi updates...
[2026-10-28 06:31:12,667.667 INFO    ] 200
[2026-10-28 06:31:12,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:31:12,709.709 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:31:12,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:31:12,901.901 INFO    ] No camera update needed
[2026-10-28 06:31:12,903.903 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:31:12,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:31:12,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:31:12,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:31:14,956.956 INFO    ] ================================================
[2026-10-28 06:31:14,971.971 INFO    ] Launching Daemon at Wed Oct 28 06:31:14 IST 2026
[2026-10-28 06:31:14,982.982 INFO    ] ================================================
[2026-10-28 06:31:15,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:31:15
[2026-10-28 06:31:16,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:31:16,580.580 INFO    ] Initializing speech engine...
[2026-10-28 06:31:16,594.594 INFO    ] 2026-10-28 06:31:16
[2026-10-28 06:31:16,904.904 INFO    ] 2026-10-28 06:31:16
[2026-10-28 06:31:16,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:31:17,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:31:17,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:31:17,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:31:17,436.436 INFO    ] time= 28/10/2026 06:31:17
[2026-10-28 06:31:17,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:31:17,472.472 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:31:17,609.609 INFO    ] No existing commands found in stream
[2026-10-28 06:31:22,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:31:22,642.642 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 06:31:26,557.557 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:31:26,560.560 INFO    ] Checking for system updates...
[2026-10-28 06:31:26,597.597 INFO    ] 200
[2026-10-28 06:31:26,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:31:26,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:31:26,655.655 INFO    ] No update needed
[2026-10-28 06:31:26,658.658 INFO    ] Checking for camera pi updates...
[2026-10-28 06:31:26,694.694 INFO    ] 200
[2026-10-28 06:31:26,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:31:26,741.741 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:31:26,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:31:26,829.829 INFO    ] No camera update needed
[2026-10-28 06:31:26,832.832 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:31:26,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:31:26,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:31:26,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:31:28,889.889 INFO    ] ================================================
[2026-10-28 06:31:28,904.904 INFO    ] Launching Daemon at Wed Oct 28 06:31:28 IST 2026
[2026-10-28 06:31:28,915.915 INFO    ] ================================================
[2026-10-28 06:31:29,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:31:29
[2026-10-28 06:31:30,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:31:30,508.508 INFO    ] Initializing speech engine...
[2026-10-28 06:31:30,517.517 INFO    ] 2026-10-28 06:31:30
[2026-10-28 06:31:30,788.788 INFO    ] 2026-10-28 06:31:30
[2026-10-28 06:31:30,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:31:31,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:31:31,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:31:31,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:31:31,358.358 INFO    ] time= 28/10/2026 06:31:31
[2026-10-28 06:31:31,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:31:31,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:31:31,522.522 INFO    ] No existing commands found in stream
[2026-10-28 06:31:36,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:31:36,544.544 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-28 06:31:39,608.608 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:31:39,611.611 INFO    ] Checking for system updates...
[2026-10-28 06:31:39,648.648 INFO    ] 200
[2026-10-28 06:31:39,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:31:39,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:31:39,707.707 INFO    ] No update needed
[2026-10-28 06:31:39,710.710 INFO    ] Checking for camera pi updates...
[2026-10-28 06:31:39,751.751 INFO    ] 200
[2026-10-28 06:31:39,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:31:39,800.800 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:31:39,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:31:39,896.896 INFO    ] No camera update needed
[2026-10-28 06:31:39,899.899 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:31:39,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:31:39,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:31:39,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:31:41,956.956 INFO    ] ================================================
[2026-10-28 06:31:41,972.972 INFO    ] Launching Daemon at Wed Oct 28 06:31:41 IST 2026
[2026-10-28 06:31:41,983.983 INFO    ] ================================================
[2026-10-28 06:31:42,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:31:42
[2026-10-28 06:31:43,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:31:43,512.512 INFO    ] Initializing speech engine...
[2026-10-28 06:31:43,534.534 INFO    ] 2026-10-28 06:31:43
[2026-10-28 06:31:43,789.789 INFO    ] 2026-10-28 06:31:43
[2026-10-28 06:31:43,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:31:44,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:31:44,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:31:44,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:31:44,349.349 INFO    ] time= 28/10/2026 06:31:44
[2026-10-28 06:31:44,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:31:44,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:31:44,496.496 INFO    ] No existing commands found in stream
[2026-10-28 06:31:49,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:31:49,515.515 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 06:31:50,691.691 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:31:50,694.694 INFO    ] Checking for system updates...
[2026-10-28 06:31:50,731.731 INFO    ] 200
[2026-10-28 06:31:50,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:31:50,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:31:50,797.797 INFO    ] No update needed
[2026-10-28 06:31:50,800.800 INFO    ] Checking for camera pi updates...
[2026-10-28 06:31:50,837.837 INFO    ] 200
[2026-10-28 06:31:50,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:31:50,899.899 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:31:50,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:31:50,987.987 INFO    ] No camera update needed
[2026-10-28 06:31:50,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:31:50,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:31:50,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:31:51,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:31:53,047.047 INFO    ] ================================================
[2026-10-28 06:31:53,062.062 INFO    ] Launching Daemon at Wed Oct 28 06:31:53 IST 2026
[2026-10-28 06:31:53,073.073 INFO    ] ================================================
[2026-10-28 06:31:53,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:31:53
[2026-10-28 06:31:54,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:31:54,677.677 INFO    ] Initializing speech engine...
[2026-10-28 06:31:54,687.687 INFO    ] 2026-10-28 06:31:54
[2026-10-28 06:31:54,962.962 INFO    ] 2026-10-28 06:31:54
[2026-10-28 06:31:55,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:31:55,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:31:55,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:31:55,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:31:55,518.518 INFO    ] time= 28/10/2026 06:31:55
[2026-10-28 06:31:55,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:31:55,558.558 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:31:55,663.663 INFO    ] No existing commands found in stream
[2026-10-28 06:32:00,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:32:00,699.699 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-28 06:32:04,916.916 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:32:04,919.919 INFO    ] Checking for system updates...
[2026-10-28 06:32:04,955.955 INFO    ] 200
[2026-10-28 06:32:04,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:32:05,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:32:05,014.014 INFO    ] No update needed
[2026-10-28 06:32:05,022.022 INFO    ] Checking for camera pi updates...
[2026-10-28 06:32:05,057.057 INFO    ] 200
[2026-10-28 06:32:05,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:32:05,107.107 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:32:05,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:32:05,209.209 INFO    ] No camera update needed
[2026-10-28 06:32:05,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:32:05,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:32:05,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:32:05,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:32:07,265.265 INFO    ] ================================================
[2026-10-28 06:32:07,281.281 INFO    ] Launching Daemon at Wed Oct 28 06:32:07 IST 2026
[2026-10-28 06:32:07,292.292 INFO    ] ================================================
[2026-10-28 06:32:07,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:32:07
[2026-10-28 06:32:08,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:32:08,938.938 INFO    ] Initializing speech engine...
[2026-10-28 06:32:08,942.942 INFO    ] 2026-10-28 06:32:08
[2026-10-28 06:32:09,223.223 INFO    ] 2026-10-28 06:32:09
[2026-10-28 06:32:09,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:32:09,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:32:09,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:32:09,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:32:09,823.823 INFO    ] time= 28/10/2026 06:32:09
[2026-10-28 06:32:09,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:32:09,852.852 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:32:09,968.968 INFO    ] No existing commands found in stream
[2026-10-28 06:32:14,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:32:14,996.996 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-28 06:32:19,235.235 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:32:19,237.237 INFO    ] Checking for system updates...
[2026-10-28 06:32:19,274.274 INFO    ] 200
[2026-10-28 06:32:19,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:32:19,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:32:19,332.332 INFO    ] No update needed
[2026-10-28 06:32:19,334.334 INFO    ] Checking for camera pi updates...
[2026-10-28 06:32:19,368.368 INFO    ] 200
[2026-10-28 06:32:19,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:32:19,411.411 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:32:19,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:32:19,494.494 INFO    ] No camera update needed
[2026-10-28 06:32:19,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:32:19,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:32:19,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:32:19,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:32:21,549.549 INFO    ] ================================================
[2026-10-28 06:32:21,564.564 INFO    ] Launching Daemon at Wed Oct 28 06:32:21 IST 2026
[2026-10-28 06:32:21,576.576 INFO    ] ================================================
[2026-10-28 06:32:22,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:32:22
[2026-10-28 06:32:22,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:32:23,029.029 INFO    ] Initializing speech engine...
[2026-10-28 06:32:23,035.035 INFO    ] 2026-10-28 06:32:23
[2026-10-28 06:32:23,303.303 INFO    ] 2026-10-28 06:32:23
[2026-10-28 06:32:23,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:32:23,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:32:23,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:32:23,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:32:23,854.854 INFO    ] time= 28/10/2026 06:32:23
[2026-10-28 06:32:23,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:32:23,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:32:24,010.010 INFO    ] No existing commands found in stream
[2026-10-28 06:32:29,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:32:29,029.029 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-28 06:32:31,236.236 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:32:31,239.239 INFO    ] Checking for system updates...
[2026-10-28 06:32:31,275.275 INFO    ] 200
[2026-10-28 06:32:31,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:32:31,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:32:31,334.334 INFO    ] No update needed
[2026-10-28 06:32:31,337.337 INFO    ] Checking for camera pi updates...
[2026-10-28 06:32:31,375.375 INFO    ] 200
[2026-10-28 06:32:31,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:32:31,418.418 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:32:31,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:32:31,507.507 INFO    ] No camera update needed
[2026-10-28 06:32:31,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:32:31,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:32:31,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:32:31,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:32:33,565.565 INFO    ] ================================================
[2026-10-28 06:32:33,581.581 INFO    ] Launching Daemon at Wed Oct 28 06:32:33 IST 2026
[2026-10-28 06:32:33,592.592 INFO    ] ================================================
[2026-10-28 06:32:34,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:32:34
[2026-10-28 06:32:34,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:32:35,252.252 INFO    ] Initializing speech engine...
[2026-10-28 06:32:35,274.274 INFO    ] 2026-10-28 06:32:35
[2026-10-28 06:32:35,552.552 INFO    ] 2026-10-28 06:32:35
[2026-10-28 06:32:35,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:32:35,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:32:35,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:32:36,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:32:36,068.068 INFO    ] time= 28/10/2026 06:32:36
[2026-10-28 06:32:36,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:32:36,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:32:36,368.368 INFO    ] No existing commands found in stream
[2026-10-28 06:32:41,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:32:41,406.406 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-28 06:32:45,575.575 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:32:45,578.578 INFO    ] Checking for system updates...
[2026-10-28 06:32:45,614.614 INFO    ] 200
[2026-10-28 06:32:45,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:32:45,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:32:45,675.675 INFO    ] No update needed
[2026-10-28 06:32:45,678.678 INFO    ] Checking for camera pi updates...
[2026-10-28 06:32:45,716.716 INFO    ] 200
[2026-10-28 06:32:45,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:32:45,762.762 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:32:45,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:32:45,868.868 INFO    ] No camera update needed
[2026-10-28 06:32:45,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:32:45,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:32:45,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:32:45,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:32:47,931.931 INFO    ] ================================================
[2026-10-28 06:32:47,947.947 INFO    ] Launching Daemon at Wed Oct 28 06:32:47 IST 2026
[2026-10-28 06:32:47,958.958 INFO    ] ================================================
[2026-10-28 06:32:48,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:32:48
[2026-10-28 06:32:49,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:32:49,389.389 INFO    ] Initializing speech engine...
[2026-10-28 06:32:49,396.396 INFO    ] 2026-10-28 06:32:49
[2026-10-28 06:32:49,660.660 INFO    ] 2026-10-28 06:32:49
[2026-10-28 06:32:49,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:32:50,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:32:50,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:32:50,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:32:50,377.377 INFO    ] time= 28/10/2026 06:32:50
[2026-10-28 06:32:50,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:32:50,454.454 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:32:50,599.599 INFO    ] No existing commands found in stream
[2026-10-28 06:32:55,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:32:55,615.615 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 06:32:58,813.813 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:32:58,816.816 INFO    ] Checking for system updates...
[2026-10-28 06:32:58,856.856 INFO    ] 200
[2026-10-28 06:32:58,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:32:58,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:32:58,915.915 INFO    ] No update needed
[2026-10-28 06:32:58,918.918 INFO    ] Checking for camera pi updates...
[2026-10-28 06:32:58,952.952 INFO    ] 200
[2026-10-28 06:32:58,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:32:58,996.996 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:32:59,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:32:59,088.088 INFO    ] No camera update needed
[2026-10-28 06:32:59,091.091 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:32:59,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:32:59,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:32:59,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:33:01,146.146 INFO    ] ================================================
[2026-10-28 06:33:01,165.165 INFO    ] Launching Daemon at Wed Oct 28 06:33:01 IST 2026
[2026-10-28 06:33:01,176.176 INFO    ] ================================================
[2026-10-28 06:33:01,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:33:01
[2026-10-28 06:33:02,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:33:02,941.941 INFO    ] Initializing speech engine...
[2026-10-28 06:33:02,960.960 INFO    ] 2026-10-28 06:33:02
[2026-10-28 06:33:03,291.291 INFO    ] 2026-10-28 06:33:03
[2026-10-28 06:33:03,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:33:03,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:33:03,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:33:03,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:33:03,751.751 INFO    ] time= 28/10/2026 06:33:03
[2026-10-28 06:33:03,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:33:03,815.815 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:33:03,941.941 INFO    ] No existing commands found in stream
[2026-10-28 06:33:08,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:33:08,956.956 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-28 06:33:11,393.393 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:33:11,396.396 INFO    ] Checking for system updates...
[2026-10-28 06:33:11,431.431 INFO    ] 200
[2026-10-28 06:33:11,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:33:11,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:33:11,495.495 INFO    ] No update needed
[2026-10-28 06:33:11,497.497 INFO    ] Checking for camera pi updates...
[2026-10-28 06:33:11,530.530 INFO    ] 200
[2026-10-28 06:33:11,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:33:11,582.582 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:33:11,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:33:11,679.679 INFO    ] No camera update needed
[2026-10-28 06:33:11,682.682 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:33:11,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:33:11,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:33:11,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:33:13,735.735 INFO    ] ================================================
[2026-10-28 06:33:13,750.750 INFO    ] Launching Daemon at Wed Oct 28 06:33:13 IST 2026
[2026-10-28 06:33:13,761.761 INFO    ] ================================================
[2026-10-28 06:33:14,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:33:14
[2026-10-28 06:33:14,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:33:15,167.167 INFO    ] Initializing speech engine...
[2026-10-28 06:33:15,174.174 INFO    ] 2026-10-28 06:33:15
[2026-10-28 06:33:15,472.472 INFO    ] 2026-10-28 06:33:15
[2026-10-28 06:33:15,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:33:15,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:33:15,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:33:16,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:33:16,061.061 INFO    ] time= 28/10/2026 06:33:16
[2026-10-28 06:33:16,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:33:16,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:33:16,243.243 INFO    ] No existing commands found in stream
[2026-10-28 06:33:21,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:33:21,274.274 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 06:33:23,005.005 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:33:23,008.008 INFO    ] Checking for system updates...
[2026-10-28 06:33:23,043.043 INFO    ] 200
[2026-10-28 06:33:23,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:33:23,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:33:23,101.101 INFO    ] No update needed
[2026-10-28 06:33:23,103.103 INFO    ] Checking for camera pi updates...
[2026-10-28 06:33:23,137.137 INFO    ] 200
[2026-10-28 06:33:23,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:33:23,180.180 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:33:23,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:33:23,364.364 INFO    ] No camera update needed
[2026-10-28 06:33:23,367.367 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:33:23,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:33:23,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:33:23,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:33:25,420.420 INFO    ] ================================================
[2026-10-28 06:33:25,435.435 INFO    ] Launching Daemon at Wed Oct 28 06:33:25 IST 2026
[2026-10-28 06:33:25,446.446 INFO    ] ================================================
[2026-10-28 06:33:26,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:33:26
[2026-10-28 06:33:26,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:33:26,875.875 INFO    ] Initializing speech engine...
[2026-10-28 06:33:26,884.884 INFO    ] 2026-10-28 06:33:26
[2026-10-28 06:33:27,135.135 INFO    ] 2026-10-28 06:33:27
[2026-10-28 06:33:27,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:33:27,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:33:27,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:33:27,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:33:27,707.707 INFO    ] time= 28/10/2026 06:33:27
[2026-10-28 06:33:27,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:33:27,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:33:27,863.863 INFO    ] No existing commands found in stream
[2026-10-28 06:33:32,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:33:32,881.881 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-28 06:33:34,054.054 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:33:34,056.056 INFO    ] Checking for system updates...
[2026-10-28 06:33:34,096.096 INFO    ] 200
[2026-10-28 06:33:34,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:33:34,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:33:34,160.160 INFO    ] No update needed
[2026-10-28 06:33:34,162.162 INFO    ] Checking for camera pi updates...
[2026-10-28 06:33:34,200.200 INFO    ] 200
[2026-10-28 06:33:34,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:33:34,242.242 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:33:34,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:33:34,329.329 INFO    ] No camera update needed
[2026-10-28 06:33:34,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:33:34,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:33:34,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:33:34,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:33:36,386.386 INFO    ] ================================================
[2026-10-28 06:33:36,401.401 INFO    ] Launching Daemon at Wed Oct 28 06:33:36 IST 2026
[2026-10-28 06:33:36,412.412 INFO    ] ================================================
[2026-10-28 06:33:36,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:33:36
[2026-10-28 06:33:37,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:33:37,863.863 INFO    ] Initializing speech engine...
[2026-10-28 06:33:37,872.872 INFO    ] 2026-10-28 06:33:37
[2026-10-28 06:33:38,121.121 INFO    ] 2026-10-28 06:33:38
[2026-10-28 06:33:38,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:33:38,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:33:38,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:33:38,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:33:38,678.678 INFO    ] time= 28/10/2026 06:33:38
[2026-10-28 06:33:38,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:33:38,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:33:38,860.860 INFO    ] No existing commands found in stream
[2026-10-28 06:33:43,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:33:43,898.898 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 06:33:47,355.355 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:33:47,357.357 INFO    ] Checking for system updates...
[2026-10-28 06:33:47,397.397 INFO    ] 200
[2026-10-28 06:33:47,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:33:47,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:33:47,456.456 INFO    ] No update needed
[2026-10-28 06:33:47,458.458 INFO    ] Checking for camera pi updates...
[2026-10-28 06:33:47,495.495 INFO    ] 200
[2026-10-28 06:33:47,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:33:47,537.537 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:33:47,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:33:47,625.625 INFO    ] No camera update needed
[2026-10-28 06:33:47,627.627 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:33:47,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:33:47,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:33:47,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:33:49,680.680 INFO    ] ================================================
[2026-10-28 06:33:49,696.696 INFO    ] Launching Daemon at Wed Oct 28 06:33:49 IST 2026
[2026-10-28 06:33:49,707.707 INFO    ] ================================================
[2026-10-28 06:33:50,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:33:50
[2026-10-28 06:33:50,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:33:51,176.176 INFO    ] Initializing speech engine...
[2026-10-28 06:33:51,189.189 INFO    ] 2026-10-28 06:33:51
[2026-10-28 06:33:51,472.472 INFO    ] 2026-10-28 06:33:51
[2026-10-28 06:33:51,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:33:51,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:33:51,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:33:51,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:33:52,018.018 INFO    ] time= 28/10/2026 06:33:52
[2026-10-28 06:33:52,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:33:52,057.057 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:33:52,184.184 INFO    ] No existing commands found in stream
[2026-10-28 06:33:57,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:33:57,218.218 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 06:34:00,901.901 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:34:00,904.904 INFO    ] Checking for system updates...
[2026-10-28 06:34:00,941.941 INFO    ] 200
[2026-10-28 06:34:00,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:34:01,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:34:01,005.005 INFO    ] No update needed
[2026-10-28 06:34:01,008.008 INFO    ] Checking for camera pi updates...
[2026-10-28 06:34:01,046.046 INFO    ] 200
[2026-10-28 06:34:01,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:34:01,090.090 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:34:01,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:34:01,188.188 INFO    ] No camera update needed
[2026-10-28 06:34:01,190.190 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:34:01,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:34:01,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:34:01,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:34:03,252.252 INFO    ] ================================================
[2026-10-28 06:34:03,269.269 INFO    ] Launching Daemon at Wed Oct 28 06:34:03 IST 2026
[2026-10-28 06:34:03,284.284 INFO    ] ================================================
[2026-10-28 06:34:03,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:34:03
[2026-10-28 06:34:04,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:34:04,777.777 INFO    ] Initializing speech engine...
[2026-10-28 06:34:04,782.782 INFO    ] 2026-10-28 06:34:04
[2026-10-28 06:34:05,032.032 INFO    ] 2026-10-28 06:34:05
[2026-10-28 06:34:05,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:34:05,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:34:05,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:34:05,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:34:05,592.592 INFO    ] time= 28/10/2026 06:34:05
[2026-10-28 06:34:05,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:34:05,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:34:05,769.769 INFO    ] No existing commands found in stream
[2026-10-28 06:34:10,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:34:10,802.802 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-28 06:34:14,924.924 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:34:14,927.927 INFO    ] Checking for system updates...
[2026-10-28 06:34:14,966.966 INFO    ] 200
[2026-10-28 06:34:14,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:34:15,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:34:15,029.029 INFO    ] No update needed
[2026-10-28 06:34:15,031.031 INFO    ] Checking for camera pi updates...
[2026-10-28 06:34:15,065.065 INFO    ] 200
[2026-10-28 06:34:15,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:34:15,111.111 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:34:15,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:34:15,193.193 INFO    ] No camera update needed
[2026-10-28 06:34:15,196.196 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:34:15,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:34:15,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:34:15,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:34:17,250.250 INFO    ] ================================================
[2026-10-28 06:34:17,265.265 INFO    ] Launching Daemon at Wed Oct 28 06:34:17 IST 2026
[2026-10-28 06:34:17,276.276 INFO    ] ================================================
[2026-10-28 06:34:17,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:34:17
[2026-10-28 06:34:18,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:34:18,692.692 INFO    ] Initializing speech engine...
[2026-10-28 06:34:18,701.701 INFO    ] 2026-10-28 06:34:18
[2026-10-28 06:34:18,950.950 INFO    ] 2026-10-28 06:34:18
[2026-10-28 06:34:18,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:34:19,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:34:19,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:34:19,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:34:19,515.515 INFO    ] time= 28/10/2026 06:34:19
[2026-10-28 06:34:19,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:34:19,542.542 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:34:19,646.646 INFO    ] No existing commands found in stream
[2026-10-28 06:34:24,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:34:24,685.685 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 06:34:25,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:34:25,814.814 INFO    ] Checking for system updates...
[2026-10-28 06:34:25,850.850 INFO    ] 200
[2026-10-28 06:34:25,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:34:25,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:34:25,914.914 INFO    ] No update needed
[2026-10-28 06:34:25,916.916 INFO    ] Checking for camera pi updates...
[2026-10-28 06:34:25,949.949 INFO    ] 200
[2026-10-28 06:34:25,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:34:25,996.996 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:34:26,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:34:26,082.082 INFO    ] No camera update needed
[2026-10-28 06:34:26,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:34:26,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:34:26,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:34:26,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:34:28,139.139 INFO    ] ================================================
[2026-10-28 06:34:28,156.156 INFO    ] Launching Daemon at Wed Oct 28 06:34:28 IST 2026
[2026-10-28 06:34:28,166.166 INFO    ] ================================================
[2026-10-28 06:34:28,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:34:28
[2026-10-28 06:34:29,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:34:29,620.620 INFO    ] Initializing speech engine...
[2026-10-28 06:34:29,631.631 INFO    ] 2026-10-28 06:34:29
[2026-10-28 06:34:29,892.892 INFO    ] 2026-10-28 06:34:29
[2026-10-28 06:34:29,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:34:30,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:34:30,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:34:30,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:34:30,437.437 INFO    ] time= 28/10/2026 06:34:30
[2026-10-28 06:34:30,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:34:30,477.477 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:34:30,592.592 INFO    ] No existing commands found in stream
[2026-10-28 06:34:35,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:34:35,615.615 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-28 06:34:36,195.195 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:34:36,198.198 INFO    ] Checking for system updates...
[2026-10-28 06:34:36,237.237 INFO    ] 200
[2026-10-28 06:34:36,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:34:36,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:34:36,294.294 INFO    ] No update needed
[2026-10-28 06:34:36,297.297 INFO    ] Checking for camera pi updates...
[2026-10-28 06:34:36,330.330 INFO    ] 200
[2026-10-28 06:34:36,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:34:36,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:34:36,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:34:36,477.477 INFO    ] No camera update needed
[2026-10-28 06:34:36,479.479 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:34:36,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:34:36,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:34:36,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:34:38,532.532 INFO    ] ================================================
[2026-10-28 06:34:38,548.548 INFO    ] Launching Daemon at Wed Oct 28 06:34:38 IST 2026
[2026-10-28 06:34:38,558.558 INFO    ] ================================================
[2026-10-28 06:34:39,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:34:39
[2026-10-28 06:34:39,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:34:40,142.142 INFO    ] Initializing speech engine...
[2026-10-28 06:34:40,150.150 INFO    ] 2026-10-28 06:34:40
[2026-10-28 06:34:40,405.405 INFO    ] 2026-10-28 06:34:40
[2026-10-28 06:34:40,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:34:40,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:34:40,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:34:40,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:34:40,978.978 INFO    ] time= 28/10/2026 06:34:40
[2026-10-28 06:34:40,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:34:41,025.025 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:34:41,150.150 INFO    ] No existing commands found in stream
[2026-10-28 06:34:46,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:34:46,179.179 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-28 06:34:49,767.767 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:34:49,769.769 INFO    ] Checking for system updates...
[2026-10-28 06:34:49,812.812 INFO    ] 200
[2026-10-28 06:34:49,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:34:49,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:34:49,869.869 INFO    ] No update needed
[2026-10-28 06:34:49,871.871 INFO    ] Checking for camera pi updates...
[2026-10-28 06:34:49,907.907 INFO    ] 200
[2026-10-28 06:34:49,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:34:49,954.954 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:34:50,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:34:50,037.037 INFO    ] No camera update needed
[2026-10-28 06:34:50,039.039 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:34:50,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:34:50,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:34:50,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:34:52,092.092 INFO    ] ================================================
[2026-10-28 06:34:52,107.107 INFO    ] Launching Daemon at Wed Oct 28 06:34:52 IST 2026
[2026-10-28 06:34:52,118.118 INFO    ] ================================================
[2026-10-28 06:34:52,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:34:52
[2026-10-28 06:34:53,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:34:53,539.539 INFO    ] Initializing speech engine...
[2026-10-28 06:34:53,555.555 INFO    ] 2026-10-28 06:34:53
[2026-10-28 06:34:53,825.825 INFO    ] 2026-10-28 06:34:53
[2026-10-28 06:34:53,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:34:54,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:34:54,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:34:54,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:34:54,357.357 INFO    ] time= 28/10/2026 06:34:54
[2026-10-28 06:34:54,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:34:54,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:34:54,609.609 INFO    ] No existing commands found in stream
[2026-10-28 06:34:59,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:34:59,637.637 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-28 06:35:01,582.582 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:35:01,584.584 INFO    ] Checking for system updates...
[2026-10-28 06:35:01,624.624 INFO    ] 200
[2026-10-28 06:35:01,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:35:01,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:35:01,687.687 INFO    ] No update needed
[2026-10-28 06:35:01,689.689 INFO    ] Checking for camera pi updates...
[2026-10-28 06:35:01,726.726 INFO    ] 200
[2026-10-28 06:35:01,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:35:01,772.772 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:35:01,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:35:01,937.937 INFO    ] No camera update needed
[2026-10-28 06:35:01,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:35:01,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:35:01,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:35:02,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:35:04,061.061 INFO    ] ================================================
[2026-10-28 06:35:04,076.076 INFO    ] Launching Daemon at Wed Oct 28 06:35:04 IST 2026
[2026-10-28 06:35:04,086.086 INFO    ] ================================================
[2026-10-28 06:35:04,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:35:04
[2026-10-28 06:35:05,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:35:05,597.597 INFO    ] Initializing speech engine...
[2026-10-28 06:35:05,620.620 INFO    ] 2026-10-28 06:35:05
[2026-10-28 06:35:05,874.874 INFO    ] 2026-10-28 06:35:05
[2026-10-28 06:35:05,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:35:06,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:35:06,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:35:06,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:35:06,439.439 INFO    ] time= 28/10/2026 06:35:06
[2026-10-28 06:35:06,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:35:06,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:35:06,604.604 INFO    ] No existing commands found in stream
[2026-10-28 06:35:11,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:35:11,638.638 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-28 06:35:12,623.623 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:35:12,626.626 INFO    ] Checking for system updates...
[2026-10-28 06:35:12,672.672 INFO    ] 200
[2026-10-28 06:35:12,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:35:12,734.734 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:35:12,736.736 INFO    ] No update needed
[2026-10-28 06:35:12,738.738 INFO    ] Checking for camera pi updates...
[2026-10-28 06:35:12,776.776 INFO    ] 200
[2026-10-28 06:35:12,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:35:12,818.818 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:35:12,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:35:12,901.901 INFO    ] No camera update needed
[2026-10-28 06:35:12,904.904 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:35:12,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:35:12,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:35:12,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:35:14,956.956 INFO    ] ================================================
[2026-10-28 06:35:14,971.971 INFO    ] Launching Daemon at Wed Oct 28 06:35:14 IST 2026
[2026-10-28 06:35:14,982.982 INFO    ] ================================================
[2026-10-28 06:35:15,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:35:15
[2026-10-28 06:35:16,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:35:16,448.448 INFO    ] Initializing speech engine...
[2026-10-28 06:35:16,457.457 INFO    ] 2026-10-28 06:35:16
[2026-10-28 06:35:16,711.711 INFO    ] 2026-10-28 06:35:16
[2026-10-28 06:35:16,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:35:16,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:35:17,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:35:17,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:35:17,182.182 INFO    ] time= 28/10/2026 06:35:17
[2026-10-28 06:35:17,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:35:17,280.280 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:35:17,416.416 INFO    ] No existing commands found in stream
[2026-10-28 06:35:22,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:35:22,438.438 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-28 06:35:26,335.335 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:35:26,337.337 INFO    ] Checking for system updates...
[2026-10-28 06:35:26,376.376 INFO    ] 200
[2026-10-28 06:35:26,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:35:26,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:35:26,435.435 INFO    ] No update needed
[2026-10-28 06:35:26,437.437 INFO    ] Checking for camera pi updates...
[2026-10-28 06:35:26,475.475 INFO    ] 200
[2026-10-28 06:35:26,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:35:26,522.522 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:35:26,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:35:26,707.707 INFO    ] No camera update needed
[2026-10-28 06:35:26,709.709 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:35:26,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:35:26,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:35:26,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:35:28,762.762 INFO    ] ================================================
[2026-10-28 06:35:28,777.777 INFO    ] Launching Daemon at Wed Oct 28 06:35:28 IST 2026
[2026-10-28 06:35:28,788.788 INFO    ] ================================================
[2026-10-28 06:35:29,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:35:29
[2026-10-28 06:35:29,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:35:30,207.207 INFO    ] Initializing speech engine...
[2026-10-28 06:35:30,216.216 INFO    ] 2026-10-28 06:35:30
[2026-10-28 06:35:30,464.464 INFO    ] 2026-10-28 06:35:30
[2026-10-28 06:35:30,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:35:30,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:35:30,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:35:31,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:35:31,029.029 INFO    ] time= 28/10/2026 06:35:31
[2026-10-28 06:35:31,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:35:31,080.080 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:35:31,179.179 INFO    ] No existing commands found in stream
[2026-10-28 06:35:36,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:35:36,199.199 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-28 06:35:40,619.619 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:35:40,622.622 INFO    ] Checking for system updates...
[2026-10-28 06:35:40,659.659 INFO    ] 200
[2026-10-28 06:35:40,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:35:40,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:35:40,728.728 INFO    ] No update needed
[2026-10-28 06:35:40,731.731 INFO    ] Checking for camera pi updates...
[2026-10-28 06:35:40,770.770 INFO    ] 200
[2026-10-28 06:35:40,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:35:40,824.824 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:35:40,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:35:40,917.917 INFO    ] No camera update needed
[2026-10-28 06:35:40,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:35:40,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:35:40,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:35:40,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:35:42,977.977 INFO    ] ================================================
[2026-10-28 06:35:42,992.992 INFO    ] Launching Daemon at Wed Oct 28 06:35:42 IST 2026
[2026-10-28 06:35:43,003.003 INFO    ] ================================================
[2026-10-28 06:35:43,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:35:43
[2026-10-28 06:35:44,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:35:44,408.408 INFO    ] Initializing speech engine...
[2026-10-28 06:35:44,414.414 INFO    ] 2026-10-28 06:35:44
[2026-10-28 06:35:44,711.711 INFO    ] 2026-10-28 06:35:44
[2026-10-28 06:35:44,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:35:45,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:35:45,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:35:45,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:35:45,425.425 INFO    ] time= 28/10/2026 06:35:45
[2026-10-28 06:35:45,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:35:45,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:35:45,657.657 INFO    ] No existing commands found in stream
[2026-10-28 06:35:50,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:35:50,679.679 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-28 06:35:52,941.941 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:35:52,944.944 INFO    ] Checking for system updates...
[2026-10-28 06:35:52,982.982 INFO    ] 200
[2026-10-28 06:35:52,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:35:53,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:35:53,050.050 INFO    ] No update needed
[2026-10-28 06:35:53,052.052 INFO    ] Checking for camera pi updates...
[2026-10-28 06:35:53,092.092 INFO    ] 200
[2026-10-28 06:35:53,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:35:53,143.143 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:35:53,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:35:53,233.233 INFO    ] No camera update needed
[2026-10-28 06:35:53,236.236 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:35:53,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:35:53,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:35:53,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:35:55,291.291 INFO    ] ================================================
[2026-10-28 06:35:55,306.306 INFO    ] Launching Daemon at Wed Oct 28 06:35:55 IST 2026
[2026-10-28 06:35:55,318.318 INFO    ] ================================================
[2026-10-28 06:35:55,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:35:55
[2026-10-28 06:35:56,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:35:56,822.822 INFO    ] Initializing speech engine...
[2026-10-28 06:35:56,831.831 INFO    ] 2026-10-28 06:35:56
[2026-10-28 06:35:57,123.123 INFO    ] 2026-10-28 06:35:57
[2026-10-28 06:35:57,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:35:57,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:35:57,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:35:57,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:35:57,698.698 INFO    ] time= 28/10/2026 06:35:57
[2026-10-28 06:35:57,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:35:57,725.725 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:35:57,853.853 INFO    ] No existing commands found in stream
[2026-10-28 06:36:02,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:36:02,868.868 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-28 06:36:07,356.356 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:36:07,358.358 INFO    ] Checking for system updates...
[2026-10-28 06:36:07,397.397 INFO    ] 200
[2026-10-28 06:36:07,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:36:07,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:36:07,459.459 INFO    ] No update needed
[2026-10-28 06:36:07,462.462 INFO    ] Checking for camera pi updates...
[2026-10-28 06:36:07,495.495 INFO    ] 200
[2026-10-28 06:36:07,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:36:07,538.538 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:36:07,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:36:07,622.622 INFO    ] No camera update needed
[2026-10-28 06:36:07,624.624 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:36:07,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:36:07,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:36:07,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:36:09,677.677 INFO    ] ================================================
[2026-10-28 06:36:09,692.692 INFO    ] Launching Daemon at Wed Oct 28 06:36:09 IST 2026
[2026-10-28 06:36:09,702.702 INFO    ] ================================================
[2026-10-28 06:36:10,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:36:10
[2026-10-28 06:36:10,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:36:11,092.092 INFO    ] Initializing speech engine...
[2026-10-28 06:36:11,101.101 INFO    ] 2026-10-28 06:36:11
[2026-10-28 06:36:11,375.375 INFO    ] 2026-10-28 06:36:11
[2026-10-28 06:36:11,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:36:11,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:36:11,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:36:11,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:36:11,874.874 INFO    ] time= 28/10/2026 06:36:11
[2026-10-28 06:36:11,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:36:11,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:36:12,093.093 INFO    ] No existing commands found in stream
[2026-10-28 06:36:17,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:36:17,112.112 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 06:36:18,840.840 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:36:18,842.842 INFO    ] Checking for system updates...
[2026-10-28 06:36:18,879.879 INFO    ] 200
[2026-10-28 06:36:18,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:36:18,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:36:18,935.935 INFO    ] No update needed
[2026-10-28 06:36:18,938.938 INFO    ] Checking for camera pi updates...
[2026-10-28 06:36:18,972.972 INFO    ] 200
[2026-10-28 06:36:18,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:36:19,015.015 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:36:19,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:36:19,101.101 INFO    ] No camera update needed
[2026-10-28 06:36:19,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:36:19,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:36:19,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:36:19,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:36:21,157.157 INFO    ] ================================================
[2026-10-28 06:36:21,171.171 INFO    ] Launching Daemon at Wed Oct 28 06:36:21 IST 2026
[2026-10-28 06:36:21,182.182 INFO    ] ================================================
[2026-10-28 06:36:21,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:36:21
[2026-10-28 06:36:22,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:36:22,600.600 INFO    ] Initializing speech engine...
[2026-10-28 06:36:22,608.608 INFO    ] 2026-10-28 06:36:22
[2026-10-28 06:36:22,858.858 INFO    ] 2026-10-28 06:36:22
[2026-10-28 06:36:22,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:36:23,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:36:23,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:36:23,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:36:23,422.422 INFO    ] time= 28/10/2026 06:36:23
[2026-10-28 06:36:23,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:36:23,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:36:23,580.580 INFO    ] No existing commands found in stream
[2026-10-28 06:36:28,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:36:28,595.595 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-28 06:36:30,756.756 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:36:30,759.759 INFO    ] Checking for system updates...
[2026-10-28 06:36:30,797.797 INFO    ] 200
[2026-10-28 06:36:30,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:36:30,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:36:30,860.860 INFO    ] No update needed
[2026-10-28 06:36:30,863.863 INFO    ] Checking for camera pi updates...
[2026-10-28 06:36:30,899.899 INFO    ] 200
[2026-10-28 06:36:30,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:36:30,945.945 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:36:31,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:36:31,033.033 INFO    ] No camera update needed
[2026-10-28 06:36:31,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:36:31,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:36:31,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:36:31,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:36:33,095.095 INFO    ] ================================================
[2026-10-28 06:36:33,110.110 INFO    ] Launching Daemon at Wed Oct 28 06:36:33 IST 2026
[2026-10-28 06:36:33,121.121 INFO    ] ================================================
[2026-10-28 06:36:33,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:36:33
[2026-10-28 06:36:34,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:36:34,526.526 INFO    ] Initializing speech engine...
[2026-10-28 06:36:34,541.541 INFO    ] 2026-10-28 06:36:34
[2026-10-28 06:36:34,810.810 INFO    ] 2026-10-28 06:36:34
[2026-10-28 06:36:34,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:36:35,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:36:35,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:36:35,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:36:35,328.328 INFO    ] time= 28/10/2026 06:36:35
[2026-10-28 06:36:35,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:36:35,392.392 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:36:35,542.542 INFO    ] No existing commands found in stream
[2026-10-28 06:36:40,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:36:40,557.557 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 06:36:41,102.102 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:36:41,105.105 INFO    ] Checking for system updates...
[2026-10-28 06:36:41,144.144 INFO    ] 200
[2026-10-28 06:36:41,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:36:41,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:36:41,202.202 INFO    ] No update needed
[2026-10-28 06:36:41,205.205 INFO    ] Checking for camera pi updates...
[2026-10-28 06:36:41,238.238 INFO    ] 200
[2026-10-28 06:36:41,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:36:41,286.286 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:36:41,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:36:41,377.377 INFO    ] No camera update needed
[2026-10-28 06:36:41,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:36:41,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:36:41,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:36:41,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:36:43,433.433 INFO    ] ================================================
[2026-10-28 06:36:43,448.448 INFO    ] Launching Daemon at Wed Oct 28 06:36:43 IST 2026
[2026-10-28 06:36:43,459.459 INFO    ] ================================================
[2026-10-28 06:36:44,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:36:44
[2026-10-28 06:36:44,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:36:44,914.914 INFO    ] Initializing speech engine...
[2026-10-28 06:36:44,923.923 INFO    ] 2026-10-28 06:36:44
[2026-10-28 06:36:45,171.171 INFO    ] 2026-10-28 06:36:45
[2026-10-28 06:36:45,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:36:45,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:36:45,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:36:45,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:36:45,726.726 INFO    ] time= 28/10/2026 06:36:45
[2026-10-28 06:36:45,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:36:45,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:36:45,881.881 INFO    ] No existing commands found in stream
[2026-10-28 06:36:50,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:36:50,899.899 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 06:36:55,048.048 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:36:55,051.051 INFO    ] Checking for system updates...
[2026-10-28 06:36:55,087.087 INFO    ] 200
[2026-10-28 06:36:55,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:36:55,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:36:55,145.145 INFO    ] No update needed
[2026-10-28 06:36:55,148.148 INFO    ] Checking for camera pi updates...
[2026-10-28 06:36:55,182.182 INFO    ] 200
[2026-10-28 06:36:55,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:36:55,227.227 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:36:55,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:36:55,309.309 INFO    ] No camera update needed
[2026-10-28 06:36:55,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:36:55,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:36:55,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:36:55,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:36:57,363.363 INFO    ] ================================================
[2026-10-28 06:36:57,378.378 INFO    ] Launching Daemon at Wed Oct 28 06:36:57 IST 2026
[2026-10-28 06:36:57,388.388 INFO    ] ================================================
[2026-10-28 06:36:57,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:36:57
[2026-10-28 06:36:58,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:36:58,843.843 INFO    ] Initializing speech engine...
[2026-10-28 06:36:58,848.848 INFO    ] 2026-10-28 06:36:58
[2026-10-28 06:36:59,096.096 INFO    ] 2026-10-28 06:36:59
[2026-10-28 06:36:59,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:36:59,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:36:59,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:36:59,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:36:59,650.650 INFO    ] time= 28/10/2026 06:36:59
[2026-10-28 06:36:59,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:36:59,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:36:59,773.773 INFO    ] No existing commands found in stream
[2026-10-28 06:37:04,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:37:04,798.798 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 06:37:06,772.772 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:37:06,776.776 INFO    ] Checking for system updates...
[2026-10-28 06:37:06,816.816 INFO    ] 200
[2026-10-28 06:37:06,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:37:06,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:37:06,876.876 INFO    ] No update needed
[2026-10-28 06:37:06,879.879 INFO    ] Checking for camera pi updates...
[2026-10-28 06:37:06,917.917 INFO    ] 200
[2026-10-28 06:37:06,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:37:06,971.971 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:37:07,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:37:07,057.057 INFO    ] No camera update needed
[2026-10-28 06:37:07,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:37:07,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:37:07,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:37:07,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:37:09,111.111 INFO    ] ================================================
[2026-10-28 06:37:09,127.127 INFO    ] Launching Daemon at Wed Oct 28 06:37:09 IST 2026
[2026-10-28 06:37:09,137.137 INFO    ] ================================================
[2026-10-28 06:37:09,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:37:09
[2026-10-28 06:37:10,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:37:10,741.741 INFO    ] Initializing speech engine...
[2026-10-28 06:37:10,748.748 INFO    ] 2026-10-28 06:37:10
[2026-10-28 06:37:11,027.027 INFO    ] 2026-10-28 06:37:11
[2026-10-28 06:37:11,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:37:11,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:37:11,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:37:11,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:37:11,602.602 INFO    ] time= 28/10/2026 06:37:11
[2026-10-28 06:37:11,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:37:11,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:37:11,821.821 INFO    ] No existing commands found in stream
[2026-10-28 06:37:16,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:37:16,849.849 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 06:37:17,456.456 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:37:17,459.459 INFO    ] Checking for system updates...
[2026-10-28 06:37:17,499.499 INFO    ] 200
[2026-10-28 06:37:17,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:37:17,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:37:17,572.572 INFO    ] No update needed
[2026-10-28 06:37:17,574.574 INFO    ] Checking for camera pi updates...
[2026-10-28 06:37:17,611.611 INFO    ] 200
[2026-10-28 06:37:17,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:37:17,654.654 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:37:17,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:37:17,756.756 INFO    ] No camera update needed
[2026-10-28 06:37:17,758.758 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:37:17,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:37:17,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:37:17,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:37:19,811.811 INFO    ] ================================================
[2026-10-28 06:37:19,826.826 INFO    ] Launching Daemon at Wed Oct 28 06:37:19 IST 2026
[2026-10-28 06:37:19,837.837 INFO    ] ================================================
[2026-10-28 06:37:20,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:37:20
[2026-10-28 06:37:21,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:37:21,434.434 INFO    ] Initializing speech engine...
[2026-10-28 06:37:21,441.441 INFO    ] 2026-10-28 06:37:21
[2026-10-28 06:37:21,726.726 INFO    ] 2026-10-28 06:37:21
[2026-10-28 06:37:21,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:37:22,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:37:22,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:37:22,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:37:22,288.288 INFO    ] time= 28/10/2026 06:37:22
[2026-10-28 06:37:22,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:37:22,337.337 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:37:22,467.467 INFO    ] No existing commands found in stream
[2026-10-28 06:37:27,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:37:27,497.497 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 06:37:31,981.981 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:37:31,985.985 INFO    ] Checking for system updates...
[2026-10-28 06:37:32,028.028 INFO    ] 200
[2026-10-28 06:37:32,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:37:32,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:37:32,103.103 INFO    ] No update needed
[2026-10-28 06:37:32,107.107 INFO    ] Checking for camera pi updates...
[2026-10-28 06:37:32,145.145 INFO    ] 200
[2026-10-28 06:37:32,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:37:32,199.199 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:37:32,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:37:32,363.363 INFO    ] No camera update needed
[2026-10-28 06:37:32,366.366 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:37:32,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:37:32,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:37:32,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:37:34,424.424 INFO    ] ================================================
[2026-10-28 06:37:34,439.439 INFO    ] Launching Daemon at Wed Oct 28 06:37:34 IST 2026
[2026-10-28 06:37:34,449.449 INFO    ] ================================================
[2026-10-28 06:37:35,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:37:35
[2026-10-28 06:37:35,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:37:35,889.889 INFO    ] Initializing speech engine...
[2026-10-28 06:37:35,898.898 INFO    ] 2026-10-28 06:37:35
[2026-10-28 06:37:36,195.195 INFO    ] 2026-10-28 06:37:36
[2026-10-28 06:37:36,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:37:36,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:37:36,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:37:36,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:37:36,712.712 INFO    ] time= 28/10/2026 06:37:36
[2026-10-28 06:37:36,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:37:36,842.842 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:37:36,984.984 INFO    ] No existing commands found in stream
[2026-10-28 06:37:42,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:37:42,012.012 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 06:37:44,954.954 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:37:44,957.957 INFO    ] Checking for system updates...
[2026-10-28 06:37:44,992.992 INFO    ] 200
[2026-10-28 06:37:44,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:37:45,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:37:45,049.049 INFO    ] No update needed
[2026-10-28 06:37:45,051.051 INFO    ] Checking for camera pi updates...
[2026-10-28 06:37:45,089.089 INFO    ] 200
[2026-10-28 06:37:45,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:37:45,137.137 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:37:45,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:37:45,223.223 INFO    ] No camera update needed
[2026-10-28 06:37:45,226.226 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:37:45,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:37:45,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:37:45,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:37:47,280.280 INFO    ] ================================================
[2026-10-28 06:37:47,296.296 INFO    ] Launching Daemon at Wed Oct 28 06:37:47 IST 2026
[2026-10-28 06:37:47,306.306 INFO    ] ================================================
[2026-10-28 06:37:47,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:37:47
[2026-10-28 06:37:48,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:37:48,951.951 INFO    ] Initializing speech engine...
[2026-10-28 06:37:48,963.963 INFO    ] 2026-10-28 06:37:48
[2026-10-28 06:37:49,248.248 INFO    ] 2026-10-28 06:37:49
[2026-10-28 06:37:49,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:37:49,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:37:49,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:37:49,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:37:49,784.784 INFO    ] time= 28/10/2026 06:37:49
[2026-10-28 06:37:49,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:37:49,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:37:49,944.944 INFO    ] No existing commands found in stream
[2026-10-28 06:37:54,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:37:54,978.978 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-28 06:37:58,996.996 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:37:58,999.999 INFO    ] Checking for system updates...
[2026-10-28 06:37:59,040.040 INFO    ] 200
[2026-10-28 06:37:59,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:37:59,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:37:59,106.106 INFO    ] No update needed
[2026-10-28 06:37:59,109.109 INFO    ] Checking for camera pi updates...
[2026-10-28 06:37:59,144.144 INFO    ] 200
[2026-10-28 06:37:59,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:37:59,188.188 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:37:59,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:37:59,275.275 INFO    ] No camera update needed
[2026-10-28 06:37:59,278.278 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:37:59,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:37:59,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:37:59,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:38:01,335.335 INFO    ] ================================================
[2026-10-28 06:38:01,350.350 INFO    ] Launching Daemon at Wed Oct 28 06:38:01 IST 2026
[2026-10-28 06:38:01,361.361 INFO    ] ================================================
[2026-10-28 06:38:02,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:38:02
[2026-10-28 06:38:02,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:38:03,182.182 INFO    ] Initializing speech engine...
[2026-10-28 06:38:03,191.191 INFO    ] 2026-10-28 06:38:03
[2026-10-28 06:38:03,470.470 INFO    ] 2026-10-28 06:38:03
[2026-10-28 06:38:03,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:38:03,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:38:03,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:38:04,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:38:04,068.068 INFO    ] time= 28/10/2026 06:38:04
[2026-10-28 06:38:04,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:38:04,105.105 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:38:04,253.253 INFO    ] No existing commands found in stream
[2026-10-28 06:38:09,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:38:09,292.292 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-28 06:38:11,733.733 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:38:11,736.736 INFO    ] Checking for system updates...
[2026-10-28 06:38:11,776.776 INFO    ] 200
[2026-10-28 06:38:11,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:38:11,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:38:11,841.841 INFO    ] No update needed
[2026-10-28 06:38:11,844.844 INFO    ] Checking for camera pi updates...
[2026-10-28 06:38:11,878.878 INFO    ] 200
[2026-10-28 06:38:11,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:38:11,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:38:12,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:38:12,007.007 INFO    ] No camera update needed
[2026-10-28 06:38:12,010.010 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:38:12,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:38:12,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:38:12,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:38:14,065.065 INFO    ] ================================================
[2026-10-28 06:38:14,080.080 INFO    ] Launching Daemon at Wed Oct 28 06:38:14 IST 2026
[2026-10-28 06:38:14,090.090 INFO    ] ================================================
[2026-10-28 06:38:14,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:38:14
[2026-10-28 06:38:15,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:38:15,548.548 INFO    ] Initializing speech engine...
[2026-10-28 06:38:15,556.556 INFO    ] 2026-10-28 06:38:15
[2026-10-28 06:38:15,828.828 INFO    ] 2026-10-28 06:38:15
[2026-10-28 06:38:15,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:38:16,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:38:16,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:38:16,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:38:16,358.358 INFO    ] time= 28/10/2026 06:38:16
[2026-10-28 06:38:16,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:38:16,382.382 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:38:16,509.509 INFO    ] No existing commands found in stream
[2026-10-28 06:38:21,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:38:21,526.526 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-28 06:38:24,936.936 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:38:24,939.939 INFO    ] Checking for system updates...
[2026-10-28 06:38:24,976.976 INFO    ] 200
[2026-10-28 06:38:24,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:38:25,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:38:25,036.036 INFO    ] No update needed
[2026-10-28 06:38:25,039.039 INFO    ] Checking for camera pi updates...
[2026-10-28 06:38:25,074.074 INFO    ] 200
[2026-10-28 06:38:25,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:38:25,117.117 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:38:25,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:38:25,202.202 INFO    ] No camera update needed
[2026-10-28 06:38:25,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:38:25,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:38:25,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:38:25,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:38:27,262.262 INFO    ] ================================================
[2026-10-28 06:38:27,277.277 INFO    ] Launching Daemon at Wed Oct 28 06:38:27 IST 2026
[2026-10-28 06:38:27,288.288 INFO    ] ================================================
[2026-10-28 06:38:27,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:38:27
[2026-10-28 06:38:28,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:38:28,894.894 INFO    ] Initializing speech engine...
[2026-10-28 06:38:28,906.906 INFO    ] 2026-10-28 06:38:28
[2026-10-28 06:38:29,191.191 INFO    ] 2026-10-28 06:38:29
[2026-10-28 06:38:29,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:38:29,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:38:29,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:38:29,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:38:29,732.732 INFO    ] time= 28/10/2026 06:38:29
[2026-10-28 06:38:29,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:38:29,768.768 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:38:29,875.875 INFO    ] No existing commands found in stream
[2026-10-28 06:38:34,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:38:34,903.903 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 06:38:35,540.540 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:38:35,544.544 INFO    ] Checking for system updates...
[2026-10-28 06:38:35,580.580 INFO    ] 200
[2026-10-28 06:38:35,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:38:35,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:38:35,637.637 INFO    ] No update needed
[2026-10-28 06:38:35,640.640 INFO    ] Checking for camera pi updates...
[2026-10-28 06:38:35,676.676 INFO    ] 200
[2026-10-28 06:38:35,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:38:35,723.723 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:38:35,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:38:35,815.815 INFO    ] No camera update needed
[2026-10-28 06:38:35,818.818 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:38:35,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:38:35,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:38:35,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:38:37,871.871 INFO    ] ================================================
[2026-10-28 06:38:37,890.890 INFO    ] Launching Daemon at Wed Oct 28 06:38:37 IST 2026
[2026-10-28 06:38:37,906.906 INFO    ] ================================================
[2026-10-28 06:38:38,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:38:38
[2026-10-28 06:38:39,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:38:39,331.331 INFO    ] Initializing speech engine...
[2026-10-28 06:38:39,337.337 INFO    ] 2026-10-28 06:38:39
[2026-10-28 06:38:39,631.631 INFO    ] 2026-10-28 06:38:39
[2026-10-28 06:38:39,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:38:39,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:38:39,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:38:40,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:38:40,120.120 INFO    ] time= 28/10/2026 06:38:40
[2026-10-28 06:38:40,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:38:40,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:38:40,395.395 INFO    ] No existing commands found in stream
[2026-10-28 06:38:45,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:38:45,416.416 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-28 06:38:47,767.767 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:38:47,770.770 INFO    ] Checking for system updates...
[2026-10-28 06:38:47,805.805 INFO    ] 200
[2026-10-28 06:38:47,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:38:47,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:38:47,861.861 INFO    ] No update needed
[2026-10-28 06:38:47,864.864 INFO    ] Checking for camera pi updates...
[2026-10-28 06:38:47,898.898 INFO    ] 200
[2026-10-28 06:38:47,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:38:47,959.959 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:38:48,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:38:48,046.046 INFO    ] No camera update needed
[2026-10-28 06:38:48,049.049 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:38:48,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:38:48,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:38:48,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:38:50,102.102 INFO    ] ================================================
[2026-10-28 06:38:50,117.117 INFO    ] Launching Daemon at Wed Oct 28 06:38:50 IST 2026
[2026-10-28 06:38:50,128.128 INFO    ] ================================================
[2026-10-28 06:38:50,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:38:50
[2026-10-28 06:38:51,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:38:51,521.521 INFO    ] Initializing speech engine...
[2026-10-28 06:38:51,529.529 INFO    ] 2026-10-28 06:38:51
[2026-10-28 06:38:51,800.800 INFO    ] 2026-10-28 06:38:51
[2026-10-28 06:38:51,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:38:52,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:38:52,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:38:52,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:38:52,352.352 INFO    ] time= 28/10/2026 06:38:52
[2026-10-28 06:38:52,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:38:52,378.378 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:38:52,502.502 INFO    ] No existing commands found in stream
[2026-10-28 06:38:57,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:38:57,524.524 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 06:38:58,661.661 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:38:58,664.664 INFO    ] Checking for system updates...
[2026-10-28 06:38:58,701.701 INFO    ] 200
[2026-10-28 06:38:58,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:38:58,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:38:58,760.760 INFO    ] No update needed
[2026-10-28 06:38:58,763.763 INFO    ] Checking for camera pi updates...
[2026-10-28 06:38:58,798.798 INFO    ] 200
[2026-10-28 06:38:58,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:38:58,845.845 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:38:58,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:38:58,934.934 INFO    ] No camera update needed
[2026-10-28 06:38:58,937.937 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:38:58,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:38:58,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:38:58,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:39:00,993.993 INFO    ] ================================================
[2026-10-28 06:39:01,008.008 INFO    ] Launching Daemon at Wed Oct 28 06:39:01 IST 2026
[2026-10-28 06:39:01,019.019 INFO    ] ================================================
[2026-10-28 06:39:01,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:39:01
[2026-10-28 06:39:02,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:39:02,668.668 INFO    ] Initializing speech engine...
[2026-10-28 06:39:02,685.685 INFO    ] 2026-10-28 06:39:02
[2026-10-28 06:39:03,039.039 INFO    ] 2026-10-28 06:39:02
[2026-10-28 06:39:03,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:39:03,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:39:03,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:39:03,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:39:03,601.601 INFO    ] time= 28/10/2026 06:39:03
[2026-10-28 06:39:03,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:39:03,685.685 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:39:03,835.835 INFO    ] No existing commands found in stream
[2026-10-28 06:39:08,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:39:08,853.853 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-28 06:39:13,836.836 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:39:13,839.839 INFO    ] Checking for system updates...
[2026-10-28 06:39:13,881.881 INFO    ] 200
[2026-10-28 06:39:13,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:39:13,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:39:13,939.939 INFO    ] No update needed
[2026-10-28 06:39:13,942.942 INFO    ] Checking for camera pi updates...
[2026-10-28 06:39:13,979.979 INFO    ] 200
[2026-10-28 06:39:13,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:39:14,024.024 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:39:14,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:39:14,115.115 INFO    ] No camera update needed
[2026-10-28 06:39:14,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:39:14,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:39:14,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:39:14,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:39:16,170.170 INFO    ] ================================================
[2026-10-28 06:39:16,185.185 INFO    ] Launching Daemon at Wed Oct 28 06:39:16 IST 2026
[2026-10-28 06:39:16,196.196 INFO    ] ================================================
[2026-10-28 06:39:16,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:39:16
[2026-10-28 06:39:17,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:39:17,622.622 INFO    ] Initializing speech engine...
[2026-10-28 06:39:17,628.628 INFO    ] 2026-10-28 06:39:17
[2026-10-28 06:39:17,932.932 INFO    ] 2026-10-28 06:39:17
[2026-10-28 06:39:17,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:39:18,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:39:18,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:39:18,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:39:18,370.370 INFO    ] time= 28/10/2026 06:39:18
[2026-10-28 06:39:18,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:39:18,401.401 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:39:18,533.533 INFO    ] No existing commands found in stream
[2026-10-28 06:39:23,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:39:23,561.561 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-28 06:39:25,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:39:25,295.295 INFO    ] Checking for system updates...
[2026-10-28 06:39:25,330.330 INFO    ] 200
[2026-10-28 06:39:25,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:39:25,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:39:25,390.390 INFO    ] No update needed
[2026-10-28 06:39:25,392.392 INFO    ] Checking for camera pi updates...
[2026-10-28 06:39:25,426.426 INFO    ] 200
[2026-10-28 06:39:25,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:39:25,468.468 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:39:25,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:39:25,555.555 INFO    ] No camera update needed
[2026-10-28 06:39:25,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:39:25,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:39:25,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:39:25,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:39:27,612.612 INFO    ] ================================================
[2026-10-28 06:39:27,628.628 INFO    ] Launching Daemon at Wed Oct 28 06:39:27 IST 2026
[2026-10-28 06:39:27,639.639 INFO    ] ================================================
[2026-10-28 06:39:28,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:39:28
[2026-10-28 06:39:28,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:39:29,153.153 INFO    ] Initializing speech engine...
[2026-10-28 06:39:29,162.162 INFO    ] 2026-10-28 06:39:29
[2026-10-28 06:39:29,408.408 INFO    ] 2026-10-28 06:39:29
[2026-10-28 06:39:29,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:39:29,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:39:29,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:39:29,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:39:29,968.968 INFO    ] time= 28/10/2026 06:39:29
[2026-10-28 06:39:29,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:39:29,991.991 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:39:30,144.144 INFO    ] No existing commands found in stream
[2026-10-28 06:39:35,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:39:35,172.172 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-28 06:39:39,242.242 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:39:39,245.245 INFO    ] Checking for system updates...
[2026-10-28 06:39:39,281.281 INFO    ] 200
[2026-10-28 06:39:39,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:39:39,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:39:39,347.347 INFO    ] No update needed
[2026-10-28 06:39:39,350.350 INFO    ] Checking for camera pi updates...
[2026-10-28 06:39:39,387.387 INFO    ] 200
[2026-10-28 06:39:39,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:39:39,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:39:39,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:39:39,610.610 INFO    ] No camera update needed
[2026-10-28 06:39:39,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:39:39,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:39:39,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:39:39,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:39:41,667.667 INFO    ] ================================================
[2026-10-28 06:39:41,682.682 INFO    ] Launching Daemon at Wed Oct 28 06:39:41 IST 2026
[2026-10-28 06:39:41,693.693 INFO    ] ================================================
[2026-10-28 06:39:42,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:39:42
[2026-10-28 06:39:42,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:39:43,119.119 INFO    ] Initializing speech engine...
[2026-10-28 06:39:43,128.128 INFO    ] 2026-10-28 06:39:43
[2026-10-28 06:39:43,426.426 INFO    ] 2026-10-28 06:39:43
[2026-10-28 06:39:43,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:39:43,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:39:43,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:39:43,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:39:43,972.972 INFO    ] time= 28/10/2026 06:39:43
[2026-10-28 06:39:43,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:39:43,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:39:44,131.131 INFO    ] No existing commands found in stream
[2026-10-28 06:39:49,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:39:49,151.151 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 06:39:50,938.938 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:39:50,941.941 INFO    ] Checking for system updates...
[2026-10-28 06:39:50,977.977 INFO    ] 200
[2026-10-28 06:39:50,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:39:51,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:39:51,038.038 INFO    ] No update needed
[2026-10-28 06:39:51,040.040 INFO    ] Checking for camera pi updates...
[2026-10-28 06:39:51,074.074 INFO    ] 200
[2026-10-28 06:39:51,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:39:51,122.122 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:39:51,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:39:51,211.211 INFO    ] No camera update needed
[2026-10-28 06:39:51,213.213 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:39:51,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:39:51,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:39:51,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:39:53,265.265 INFO    ] ================================================
[2026-10-28 06:39:53,280.280 INFO    ] Launching Daemon at Wed Oct 28 06:39:53 IST 2026
[2026-10-28 06:39:53,290.290 INFO    ] ================================================
[2026-10-28 06:39:53,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:39:53
[2026-10-28 06:39:54,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:39:54,726.726 INFO    ] Initializing speech engine...
[2026-10-28 06:39:54,736.736 INFO    ] 2026-10-28 06:39:54
[2026-10-28 06:39:55,000.000 INFO    ] 2026-10-28 06:39:54
[2026-10-28 06:39:55,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:39:55,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:39:55,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:39:55,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:39:55,545.545 INFO    ] time= 28/10/2026 06:39:55
[2026-10-28 06:39:55,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:39:55,593.593 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:39:55,712.712 INFO    ] No existing commands found in stream
[2026-10-28 06:40:00,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:40:00,746.746 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 06:40:03,896.896 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:40:03,899.899 INFO    ] Checking for system updates...
[2026-10-28 06:40:03,935.935 INFO    ] 200
[2026-10-28 06:40:03,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:40:03,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:40:03,999.999 INFO    ] No update needed
[2026-10-28 06:40:04,002.002 INFO    ] Checking for camera pi updates...
[2026-10-28 06:40:04,039.039 INFO    ] 200
[2026-10-28 06:40:04,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:40:04,081.081 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:40:04,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:40:04,203.203 INFO    ] No camera update needed
[2026-10-28 06:40:04,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:40:04,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:40:04,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:40:04,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:40:06,260.260 INFO    ] ================================================
[2026-10-28 06:40:06,275.275 INFO    ] Launching Daemon at Wed Oct 28 06:40:06 IST 2026
[2026-10-28 06:40:06,286.286 INFO    ] ================================================
[2026-10-28 06:40:06,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:40:06
[2026-10-28 06:40:07,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:40:07,699.699 INFO    ] Initializing speech engine...
[2026-10-28 06:40:07,712.712 INFO    ] 2026-10-28 06:40:07
[2026-10-28 06:40:07,996.996 INFO    ] 2026-10-28 06:40:07
[2026-10-28 06:40:08,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:40:08,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:40:08,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:40:08,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:40:08,470.470 INFO    ] time= 28/10/2026 06:40:08
[2026-10-28 06:40:08,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:40:08,517.517 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:40:08,626.626 INFO    ] No existing commands found in stream
[2026-10-28 06:40:13,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:40:13,641.641 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-28 06:40:14,753.753 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:40:14,755.755 INFO    ] Checking for system updates...
[2026-10-28 06:40:14,790.790 INFO    ] 200
[2026-10-28 06:40:14,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:40:14,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:40:14,847.847 INFO    ] No update needed
[2026-10-28 06:40:14,850.850 INFO    ] Checking for camera pi updates...
[2026-10-28 06:40:14,884.884 INFO    ] 200
[2026-10-28 06:40:14,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:40:14,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:40:15,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:40:15,012.012 INFO    ] No camera update needed
[2026-10-28 06:40:15,014.014 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:40:15,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:40:15,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:40:15,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:40:17,068.068 INFO    ] ================================================
[2026-10-28 06:40:17,083.083 INFO    ] Launching Daemon at Wed Oct 28 06:40:17 IST 2026
[2026-10-28 06:40:17,094.094 INFO    ] ================================================
[2026-10-28 06:40:17,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:40:17
[2026-10-28 06:40:18,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:40:18,557.557 INFO    ] Initializing speech engine...
[2026-10-28 06:40:18,564.564 INFO    ] 2026-10-28 06:40:18
[2026-10-28 06:40:18,813.813 INFO    ] 2026-10-28 06:40:18
[2026-10-28 06:40:18,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:40:19,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:40:19,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:40:19,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:40:19,382.382 INFO    ] time= 28/10/2026 06:40:19
[2026-10-28 06:40:19,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:40:19,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:40:19,548.548 INFO    ] No existing commands found in stream
[2026-10-28 06:40:24,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:40:24,581.581 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-28 06:40:25,341.341 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:40:25,344.344 INFO    ] Checking for system updates...
[2026-10-28 06:40:25,379.379 INFO    ] 200
[2026-10-28 06:40:25,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:40:25,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:40:25,437.437 INFO    ] No update needed
[2026-10-28 06:40:25,439.439 INFO    ] Checking for camera pi updates...
[2026-10-28 06:40:25,473.473 INFO    ] 200
[2026-10-28 06:40:25,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:40:25,516.516 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:40:25,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:40:25,609.609 INFO    ] No camera update needed
[2026-10-28 06:40:25,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:40:25,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:40:25,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:40:25,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:40:27,666.666 INFO    ] ================================================
[2026-10-28 06:40:27,681.681 INFO    ] Launching Daemon at Wed Oct 28 06:40:27 IST 2026
[2026-10-28 06:40:27,692.692 INFO    ] ================================================
[2026-10-28 06:40:28,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:40:28
[2026-10-28 06:40:28,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:40:29,087.087 INFO    ] Initializing speech engine...
[2026-10-28 06:40:29,096.096 INFO    ] 2026-10-28 06:40:29
[2026-10-28 06:40:29,369.369 INFO    ] 2026-10-28 06:40:29
[2026-10-28 06:40:29,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:40:29,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:40:29,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:40:29,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:40:29,939.939 INFO    ] time= 28/10/2026 06:40:29
[2026-10-28 06:40:29,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:40:29,959.959 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:40:30,080.080 INFO    ] No existing commands found in stream
[2026-10-28 06:40:35,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:40:35,105.105 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-28 06:40:38,618.618 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:40:38,621.621 INFO    ] Checking for system updates...
[2026-10-28 06:40:38,662.662 INFO    ] 200
[2026-10-28 06:40:38,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:40:38,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:40:38,726.726 INFO    ] No update needed
[2026-10-28 06:40:38,729.729 INFO    ] Checking for camera pi updates...
[2026-10-28 06:40:38,762.762 INFO    ] 200
[2026-10-28 06:40:38,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:40:38,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:40:38,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:40:38,888.888 INFO    ] No camera update needed
[2026-10-28 06:40:38,890.890 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:40:38,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:40:38,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:40:38,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:40:40,944.944 INFO    ] ================================================
[2026-10-28 06:40:40,959.959 INFO    ] Launching Daemon at Wed Oct 28 06:40:40 IST 2026
[2026-10-28 06:40:40,970.970 INFO    ] ================================================
[2026-10-28 06:40:41,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:40:41
[2026-10-28 06:40:42,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:40:42,605.605 INFO    ] Initializing speech engine...
[2026-10-28 06:40:42,614.614 INFO    ] 2026-10-28 06:40:42
[2026-10-28 06:40:42,907.907 INFO    ] 2026-10-28 06:40:42
[2026-10-28 06:40:43,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:40:43,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:40:43,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:40:43,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:40:43,516.516 INFO    ] time= 28/10/2026 06:40:43
[2026-10-28 06:40:43,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:40:43,635.635 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:40:43,821.821 INFO    ] No existing commands found in stream
[2026-10-28 06:40:48,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:40:48,850.850 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-28 06:40:49,793.793 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:40:49,796.796 INFO    ] Checking for system updates...
[2026-10-28 06:40:49,836.836 INFO    ] 200
[2026-10-28 06:40:49,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:40:49,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:40:49,894.894 INFO    ] No update needed
[2026-10-28 06:40:49,897.897 INFO    ] Checking for camera pi updates...
[2026-10-28 06:40:49,935.935 INFO    ] 200
[2026-10-28 06:40:49,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:40:49,978.978 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:40:50,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:40:50,061.061 INFO    ] No camera update needed
[2026-10-28 06:40:50,064.064 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:40:50,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:40:50,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:40:50,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:40:52,115.115 INFO    ] ================================================
[2026-10-28 06:40:52,131.131 INFO    ] Launching Daemon at Wed Oct 28 06:40:52 IST 2026
[2026-10-28 06:40:52,142.142 INFO    ] ================================================
[2026-10-28 06:40:52,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:40:52
[2026-10-28 06:40:53,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:40:53,696.696 INFO    ] Initializing speech engine...
[2026-10-28 06:40:53,706.706 INFO    ] 2026-10-28 06:40:53
[2026-10-28 06:40:53,967.967 INFO    ] 2026-10-28 06:40:53
[2026-10-28 06:40:54,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:40:54,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:40:54,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:40:54,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:40:54,509.509 INFO    ] time= 28/10/2026 06:40:54
[2026-10-28 06:40:54,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:40:54,534.534 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:40:54,648.648 INFO    ] No existing commands found in stream
[2026-10-28 06:40:59,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:40:59,676.676 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-28 06:41:01,463.463 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:41:01,466.466 INFO    ] Checking for system updates...
[2026-10-28 06:41:01,503.503 INFO    ] 200
[2026-10-28 06:41:01,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:41:01,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:41:01,560.560 INFO    ] No update needed
[2026-10-28 06:41:01,563.563 INFO    ] Checking for camera pi updates...
[2026-10-28 06:41:01,620.620 INFO    ] 200
[2026-10-28 06:41:01,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:41:01,708.708 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:41:01,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:41:01,818.818 INFO    ] No camera update needed
[2026-10-28 06:41:01,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:41:01,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:41:01,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:41:01,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:41:03,893.893 INFO    ] ================================================
[2026-10-28 06:41:03,909.909 INFO    ] Launching Daemon at Wed Oct 28 06:41:03 IST 2026
[2026-10-28 06:41:03,925.925 INFO    ] ================================================
[2026-10-28 06:41:04,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:41:04
[2026-10-28 06:41:05,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:41:05,615.615 INFO    ] Initializing speech engine...
[2026-10-28 06:41:05,627.627 INFO    ] 2026-10-28 06:41:05
[2026-10-28 06:41:05,917.917 INFO    ] 2026-10-28 06:41:05
[2026-10-28 06:41:05,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:41:06,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:41:06,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:41:06,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:41:06,461.461 INFO    ] time= 28/10/2026 06:41:06
[2026-10-28 06:41:06,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:41:06,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:41:06,667.667 INFO    ] No existing commands found in stream
[2026-10-28 06:41:11,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:41:11,697.697 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-28 06:41:14,098.098 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:41:14,101.101 INFO    ] Checking for system updates...
[2026-10-28 06:41:14,145.145 INFO    ] 200
[2026-10-28 06:41:14,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:41:14,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:41:14,216.216 INFO    ] No update needed
[2026-10-28 06:41:14,218.218 INFO    ] Checking for camera pi updates...
[2026-10-28 06:41:14,257.257 INFO    ] 200
[2026-10-28 06:41:14,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:41:14,299.299 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:41:14,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:41:14,384.384 INFO    ] No camera update needed
[2026-10-28 06:41:14,386.386 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:41:14,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:41:14,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:41:14,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:41:16,438.438 INFO    ] ================================================
[2026-10-28 06:41:16,453.453 INFO    ] Launching Daemon at Wed Oct 28 06:41:16 IST 2026
[2026-10-28 06:41:16,464.464 INFO    ] ================================================
[2026-10-28 06:41:17,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:41:17
[2026-10-28 06:41:17,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:41:17,944.944 INFO    ] Initializing speech engine...
[2026-10-28 06:41:17,953.953 INFO    ] 2026-10-28 06:41:17
[2026-10-28 06:41:18,214.214 INFO    ] 2026-10-28 06:41:18
[2026-10-28 06:41:18,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:41:18,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:41:18,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:41:18,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:41:18,761.761 INFO    ] time= 28/10/2026 06:41:18
[2026-10-28 06:41:18,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:41:18,808.808 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:41:18,917.917 INFO    ] No existing commands found in stream
[2026-10-28 06:41:23,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:41:23,944.944 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 06:41:27,250.250 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:41:27,253.253 INFO    ] Checking for system updates...
[2026-10-28 06:41:27,291.291 INFO    ] 200
[2026-10-28 06:41:27,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:41:27,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:41:27,361.361 INFO    ] No update needed
[2026-10-28 06:41:27,363.363 INFO    ] Checking for camera pi updates...
[2026-10-28 06:41:27,398.398 INFO    ] 200
[2026-10-28 06:41:27,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:41:27,445.445 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:41:27,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:41:27,528.528 INFO    ] No camera update needed
[2026-10-28 06:41:27,530.530 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:41:27,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:41:27,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:41:27,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:41:29,587.587 INFO    ] ================================================
[2026-10-28 06:41:29,602.602 INFO    ] Launching Daemon at Wed Oct 28 06:41:29 IST 2026
[2026-10-28 06:41:29,613.613 INFO    ] ================================================
[2026-10-28 06:41:30,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:41:30
[2026-10-28 06:41:30,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:41:31,278.278 INFO    ] Initializing speech engine...
[2026-10-28 06:41:31,291.291 INFO    ] 2026-10-28 06:41:31
[2026-10-28 06:41:31,604.604 INFO    ] 2026-10-28 06:41:31
[2026-10-28 06:41:31,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:41:31,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:41:31,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:41:32,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:41:32,207.207 INFO    ] time= 28/10/2026 06:41:32
[2026-10-28 06:41:32,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:41:32,225.225 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:41:32,391.391 INFO    ] No existing commands found in stream
[2026-10-28 06:41:37,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:41:37,424.424 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-28 06:41:39,817.817 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:41:39,820.820 INFO    ] Checking for system updates...
[2026-10-28 06:41:39,855.855 INFO    ] 200
[2026-10-28 06:41:39,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:41:39,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:41:39,917.917 INFO    ] No update needed
[2026-10-28 06:41:39,919.919 INFO    ] Checking for camera pi updates...
[2026-10-28 06:41:39,952.952 INFO    ] 200
[2026-10-28 06:41:39,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:41:40,001.001 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:41:40,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:41:40,086.086 INFO    ] No camera update needed
[2026-10-28 06:41:40,089.089 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:41:40,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:41:40,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:41:40,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:41:42,143.143 INFO    ] ================================================
[2026-10-28 06:41:42,158.158 INFO    ] Launching Daemon at Wed Oct 28 06:41:42 IST 2026
[2026-10-28 06:41:42,169.169 INFO    ] ================================================
[2026-10-28 06:41:42,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:41:42
[2026-10-28 06:41:43,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:41:43,837.837 INFO    ] Initializing speech engine...
[2026-10-28 06:41:43,849.849 INFO    ] 2026-10-28 06:41:43
[2026-10-28 06:41:44,137.137 INFO    ] 2026-10-28 06:41:44
[2026-10-28 06:41:44,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:41:44,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:41:44,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:41:44,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:41:44,663.663 INFO    ] time= 28/10/2026 06:41:44
[2026-10-28 06:41:44,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:41:44,710.710 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:41:44,852.852 INFO    ] No existing commands found in stream
[2026-10-28 06:41:49,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:41:49,885.885 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-28 06:41:51,080.080 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:41:51,082.082 INFO    ] Checking for system updates...
[2026-10-28 06:41:51,124.124 INFO    ] 200
[2026-10-28 06:41:51,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:41:51,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:41:51,190.190 INFO    ] No update needed
[2026-10-28 06:41:51,192.192 INFO    ] Checking for camera pi updates...
[2026-10-28 06:41:51,230.230 INFO    ] 200
[2026-10-28 06:41:51,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:41:51,279.279 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:41:51,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:41:51,461.461 INFO    ] No camera update needed
[2026-10-28 06:41:51,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:41:51,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:41:51,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:41:51,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:41:53,516.516 INFO    ] ================================================
[2026-10-28 06:41:53,532.532 INFO    ] Launching Daemon at Wed Oct 28 06:41:53 IST 2026
[2026-10-28 06:41:53,543.543 INFO    ] ================================================
[2026-10-28 06:41:54,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:41:54
[2026-10-28 06:41:54,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:41:54,990.990 INFO    ] Initializing speech engine...
[2026-10-28 06:41:54,998.998 INFO    ] 2026-10-28 06:41:54
[2026-10-28 06:41:55,256.256 INFO    ] 2026-10-28 06:41:55
[2026-10-28 06:41:55,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:41:55,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:41:55,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:41:55,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:41:55,798.798 INFO    ] time= 28/10/2026 06:41:55
[2026-10-28 06:41:55,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:41:55,824.824 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:41:55,952.952 INFO    ] No existing commands found in stream
[2026-10-28 06:42:00,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:42:00,975.975 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 06:42:05,218.218 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:42:05,221.221 INFO    ] Checking for system updates...
[2026-10-28 06:42:05,265.265 INFO    ] 200
[2026-10-28 06:42:05,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:42:05,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:42:05,323.323 INFO    ] No update needed
[2026-10-28 06:42:05,326.326 INFO    ] Checking for camera pi updates...
[2026-10-28 06:42:05,360.360 INFO    ] 200
[2026-10-28 06:42:05,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:42:05,403.403 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:42:05,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:42:05,488.488 INFO    ] No camera update needed
[2026-10-28 06:42:05,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:42:05,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:42:05,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:42:05,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:42:07,545.545 INFO    ] ================================================
[2026-10-28 06:42:07,560.560 INFO    ] Launching Daemon at Wed Oct 28 06:42:07 IST 2026
[2026-10-28 06:42:07,570.570 INFO    ] ================================================
[2026-10-28 06:42:08,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:42:08
[2026-10-28 06:42:08,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:42:09,089.089 INFO    ] Initializing speech engine...
[2026-10-28 06:42:09,098.098 INFO    ] 2026-10-28 06:42:09
[2026-10-28 06:42:09,390.390 INFO    ] 2026-10-28 06:42:09
[2026-10-28 06:42:09,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:42:09,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:42:09,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:42:09,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:42:09,953.953 INFO    ] time= 28/10/2026 06:42:09
[2026-10-28 06:42:09,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:42:09,993.993 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:42:10,118.118 INFO    ] No existing commands found in stream
[2026-10-28 06:42:15,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:42:15,158.158 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-28 06:42:16,398.398 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:42:16,401.401 INFO    ] Checking for system updates...
[2026-10-28 06:42:16,444.444 INFO    ] 200
[2026-10-28 06:42:16,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:42:16,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:42:16,504.504 INFO    ] No update needed
[2026-10-28 06:42:16,507.507 INFO    ] Checking for camera pi updates...
[2026-10-28 06:42:16,547.547 INFO    ] 200
[2026-10-28 06:42:16,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:42:16,594.594 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:42:16,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:42:16,672.672 INFO    ] No camera update needed
[2026-10-28 06:42:16,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:42:16,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:42:16,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:42:16,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:42:18,729.729 INFO    ] ================================================
[2026-10-28 06:42:18,744.744 INFO    ] Launching Daemon at Wed Oct 28 06:42:18 IST 2026
[2026-10-28 06:42:18,756.756 INFO    ] ================================================
[2026-10-28 06:42:19,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:42:19
[2026-10-28 06:42:20,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:42:20,440.440 INFO    ] Initializing speech engine...
[2026-10-28 06:42:20,454.454 INFO    ] 2026-10-28 06:42:20
[2026-10-28 06:42:20,746.746 INFO    ] 2026-10-28 06:42:20
[2026-10-28 06:42:20,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:42:21,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:42:21,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:42:21,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:42:21,327.327 INFO    ] time= 28/10/2026 06:42:21
[2026-10-28 06:42:21,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:42:21,363.363 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:42:21,491.491 INFO    ] No existing commands found in stream
[2026-10-28 06:42:26,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:42:26,520.520 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-28 06:42:30,740.740 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:42:30,742.742 INFO    ] Checking for system updates...
[2026-10-28 06:42:30,783.783 INFO    ] 200
[2026-10-28 06:42:30,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:42:30,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:42:30,849.849 INFO    ] No update needed
[2026-10-28 06:42:30,851.851 INFO    ] Checking for camera pi updates...
[2026-10-28 06:42:30,889.889 INFO    ] 200
[2026-10-28 06:42:30,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:42:30,938.938 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:42:31,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:42:31,026.026 INFO    ] No camera update needed
[2026-10-28 06:42:31,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:42:31,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:42:31,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:42:31,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:42:33,084.084 INFO    ] ================================================
[2026-10-28 06:42:33,100.100 INFO    ] Launching Daemon at Wed Oct 28 06:42:33 IST 2026
[2026-10-28 06:42:33,111.111 INFO    ] ================================================
[2026-10-28 06:42:33,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:42:33
[2026-10-28 06:42:34,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:42:34,759.759 INFO    ] Initializing speech engine...
[2026-10-28 06:42:34,772.772 INFO    ] 2026-10-28 06:42:34
[2026-10-28 06:42:35,090.090 INFO    ] 2026-10-28 06:42:35
[2026-10-28 06:42:35,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:42:35,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:42:35,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:42:35,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:42:35,602.602 INFO    ] time= 28/10/2026 06:42:35
[2026-10-28 06:42:35,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:42:35,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:42:35,757.757 INFO    ] No existing commands found in stream
[2026-10-28 06:42:40,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:42:40,776.776 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-28 06:42:41,557.557 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:42:41,559.559 INFO    ] Checking for system updates...
[2026-10-28 06:42:41,595.595 INFO    ] 200
[2026-10-28 06:42:41,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:42:41,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:42:41,661.661 INFO    ] No update needed
[2026-10-28 06:42:41,663.663 INFO    ] Checking for camera pi updates...
[2026-10-28 06:42:41,697.697 INFO    ] 200
[2026-10-28 06:42:41,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:42:41,743.743 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:42:41,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:42:41,839.839 INFO    ] No camera update needed
[2026-10-28 06:42:41,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:42:41,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:42:41,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:42:41,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:42:43,896.896 INFO    ] ================================================
[2026-10-28 06:42:43,912.912 INFO    ] Launching Daemon at Wed Oct 28 06:42:43 IST 2026
[2026-10-28 06:42:43,924.924 INFO    ] ================================================
[2026-10-28 06:42:44,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:42:44
[2026-10-28 06:42:45,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:42:45,378.378 INFO    ] Initializing speech engine...
[2026-10-28 06:42:45,388.388 INFO    ] 2026-10-28 06:42:45
[2026-10-28 06:42:45,649.649 INFO    ] 2026-10-28 06:42:45
[2026-10-28 06:42:45,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:42:45,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:42:45,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:42:46,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:42:46,197.197 INFO    ] time= 28/10/2026 06:42:46
[2026-10-28 06:42:46,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:42:46,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:42:46,355.355 INFO    ] No existing commands found in stream
[2026-10-28 06:42:51,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:42:51,387.387 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 06:42:52,379.379 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:42:52,381.381 INFO    ] Checking for system updates...
[2026-10-28 06:42:52,422.422 INFO    ] 200
[2026-10-28 06:42:52,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:42:52,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:42:52,479.479 INFO    ] No update needed
[2026-10-28 06:42:52,482.482 INFO    ] Checking for camera pi updates...
[2026-10-28 06:42:52,515.515 INFO    ] 200
[2026-10-28 06:42:52,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:42:52,564.564 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:42:52,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:42:52,644.644 INFO    ] No camera update needed
[2026-10-28 06:42:52,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:42:52,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:42:52,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:42:52,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:42:54,702.702 INFO    ] ================================================
[2026-10-28 06:42:54,718.718 INFO    ] Launching Daemon at Wed Oct 28 06:42:54 IST 2026
[2026-10-28 06:42:54,729.729 INFO    ] ================================================
[2026-10-28 06:42:55,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:42:55
[2026-10-28 06:42:55,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:42:56,181.181 INFO    ] Initializing speech engine...
[2026-10-28 06:42:56,187.187 INFO    ] 2026-10-28 06:42:56
[2026-10-28 06:42:56,450.450 INFO    ] 2026-10-28 06:42:56
[2026-10-28 06:42:56,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:42:56,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:42:56,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:42:56,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:42:57,005.005 INFO    ] time= 28/10/2026 06:42:56
[2026-10-28 06:42:57,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:42:57,042.042 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:42:57,150.150 INFO    ] No existing commands found in stream
[2026-10-28 06:43:02,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:43:02,170.170 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-28 06:43:02,841.841 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:43:02,845.845 INFO    ] Checking for system updates...
[2026-10-28 06:43:02,888.888 INFO    ] 200
[2026-10-28 06:43:02,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:43:02,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:43:02,958.958 INFO    ] No update needed
[2026-10-28 06:43:02,961.961 INFO    ] Checking for camera pi updates...
[2026-10-28 06:43:03,011.011 INFO    ] 200
[2026-10-28 06:43:03,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:43:03,078.078 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:43:03,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:43:03,178.178 INFO    ] No camera update needed
[2026-10-28 06:43:03,181.181 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:43:03,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:43:03,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:43:03,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:43:05,239.239 INFO    ] ================================================
[2026-10-28 06:43:05,254.254 INFO    ] Launching Daemon at Wed Oct 28 06:43:05 IST 2026
[2026-10-28 06:43:05,265.265 INFO    ] ================================================
[2026-10-28 06:43:05,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:43:05
[2026-10-28 06:43:06,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:43:06,889.889 INFO    ] Initializing speech engine...
[2026-10-28 06:43:06,903.903 INFO    ] 2026-10-28 06:43:06
[2026-10-28 06:43:07,178.178 INFO    ] 2026-10-28 06:43:07
[2026-10-28 06:43:07,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:43:07,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:43:07,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:43:07,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:43:07,777.777 INFO    ] time= 28/10/2026 06:43:07
[2026-10-28 06:43:07,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:43:07,796.796 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:43:07,916.916 INFO    ] No existing commands found in stream
[2026-10-28 06:43:12,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:43:12,950.950 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-28 06:43:16,933.933 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:43:16,936.936 INFO    ] Checking for system updates...
[2026-10-28 06:43:16,977.977 INFO    ] 200
[2026-10-28 06:43:16,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:43:17,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:43:17,037.037 INFO    ] No update needed
[2026-10-28 06:43:17,040.040 INFO    ] Checking for camera pi updates...
[2026-10-28 06:43:17,074.074 INFO    ] 200
[2026-10-28 06:43:17,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:43:17,118.118 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:43:17,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:43:17,199.199 INFO    ] No camera update needed
[2026-10-28 06:43:17,202.202 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:43:17,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:43:17,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:43:17,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:43:19,265.265 INFO    ] ================================================
[2026-10-28 06:43:19,280.280 INFO    ] Launching Daemon at Wed Oct 28 06:43:19 IST 2026
[2026-10-28 06:43:19,291.291 INFO    ] ================================================
[2026-10-28 06:43:19,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:43:19
[2026-10-28 06:43:20,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:43:20,730.730 INFO    ] Initializing speech engine...
[2026-10-28 06:43:20,737.737 INFO    ] 2026-10-28 06:43:20
[2026-10-28 06:43:21,037.037 INFO    ] 2026-10-28 06:43:21
[2026-10-28 06:43:21,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:43:21,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:43:21,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:43:21,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:43:21,539.539 INFO    ] time= 28/10/2026 06:43:21
[2026-10-28 06:43:21,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:43:21,633.633 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:43:21,742.742 INFO    ] No existing commands found in stream
[2026-10-28 06:43:26,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:43:26,757.757 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-28 06:43:29,620.620 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:43:29,623.623 INFO    ] Checking for system updates...
[2026-10-28 06:43:29,658.658 INFO    ] 200
[2026-10-28 06:43:29,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:43:29,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:43:29,715.715 INFO    ] No update needed
[2026-10-28 06:43:29,717.717 INFO    ] Checking for camera pi updates...
[2026-10-28 06:43:29,754.754 INFO    ] 200
[2026-10-28 06:43:29,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:43:29,797.797 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:43:29,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:43:29,892.892 INFO    ] No camera update needed
[2026-10-28 06:43:29,895.895 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:43:29,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:43:29,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:43:29,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:43:31,952.952 INFO    ] ================================================
[2026-10-28 06:43:31,970.970 INFO    ] Launching Daemon at Wed Oct 28 06:43:31 IST 2026
[2026-10-28 06:43:31,982.982 INFO    ] ================================================
[2026-10-28 06:43:32,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:43:32
[2026-10-28 06:43:33,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:43:33,508.508 INFO    ] Initializing speech engine...
[2026-10-28 06:43:33,530.530 INFO    ] 2026-10-28 06:43:33
[2026-10-28 06:43:33,802.802 INFO    ] 2026-10-28 06:43:33
[2026-10-28 06:43:33,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:43:34,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:43:34,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:43:34,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:43:34,452.452 INFO    ] time= 28/10/2026 06:43:34
[2026-10-28 06:43:34,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:43:34,476.476 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:43:34,594.594 INFO    ] No existing commands found in stream
[2026-10-28 06:43:39,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:43:39,620.620 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-28 06:43:40,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:43:40,645.645 INFO    ] Checking for system updates...
[2026-10-28 06:43:40,681.681 INFO    ] 200
[2026-10-28 06:43:40,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:43:40,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:43:40,738.738 INFO    ] No update needed
[2026-10-28 06:43:40,740.740 INFO    ] Checking for camera pi updates...
[2026-10-28 06:43:40,778.778 INFO    ] 200
[2026-10-28 06:43:40,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:43:40,822.822 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:43:40,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:43:40,907.907 INFO    ] No camera update needed
[2026-10-28 06:43:40,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:43:40,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:43:40,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:43:40,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:43:42,963.963 INFO    ] ================================================
[2026-10-28 06:43:42,978.978 INFO    ] Launching Daemon at Wed Oct 28 06:43:42 IST 2026
[2026-10-28 06:43:42,988.988 INFO    ] ================================================
[2026-10-28 06:43:43,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:43:43
[2026-10-28 06:43:44,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:43:44,394.394 INFO    ] Initializing speech engine...
[2026-10-28 06:43:44,402.402 INFO    ] 2026-10-28 06:43:44
[2026-10-28 06:43:44,694.694 INFO    ] 2026-10-28 06:43:44
[2026-10-28 06:43:44,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:43:44,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:43:45,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:43:45,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:43:45,220.220 INFO    ] time= 28/10/2026 06:43:45
[2026-10-28 06:43:45,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:43:45,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:43:45,428.428 INFO    ] No existing commands found in stream
[2026-10-28 06:43:50,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:43:50,441.441 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 06:43:51,836.836 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:43:51,839.839 INFO    ] Checking for system updates...
[2026-10-28 06:43:51,877.877 INFO    ] 200
[2026-10-28 06:43:51,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:43:51,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:43:51,939.939 INFO    ] No update needed
[2026-10-28 06:43:51,942.942 INFO    ] Checking for camera pi updates...
[2026-10-28 06:43:51,976.976 INFO    ] 200
[2026-10-28 06:43:51,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:43:52,021.021 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:43:52,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:43:52,109.109 INFO    ] No camera update needed
[2026-10-28 06:43:52,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:43:52,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:43:52,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:43:52,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:43:54,169.169 INFO    ] ================================================
[2026-10-28 06:43:54,184.184 INFO    ] Launching Daemon at Wed Oct 28 06:43:54 IST 2026
[2026-10-28 06:43:54,195.195 INFO    ] ================================================
[2026-10-28 06:43:54,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:43:54
[2026-10-28 06:43:55,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:43:55,880.880 INFO    ] Initializing speech engine...
[2026-10-28 06:43:55,892.892 INFO    ] 2026-10-28 06:43:55
[2026-10-28 06:43:56,208.208 INFO    ] 2026-10-28 06:43:56
[2026-10-28 06:43:56,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:43:56,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:43:56,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:43:56,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:43:56,744.744 INFO    ] time= 28/10/2026 06:43:56
[2026-10-28 06:43:56,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:43:56,781.781 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:43:56,941.941 INFO    ] No existing commands found in stream
[2026-10-28 06:44:01,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:44:01,982.982 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-28 06:44:04,982.982 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:44:04,985.985 INFO    ] Checking for system updates...
[2026-10-28 06:44:05,022.022 INFO    ] 200
[2026-10-28 06:44:05,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:44:05,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:44:05,091.091 INFO    ] No update needed
[2026-10-28 06:44:05,094.094 INFO    ] Checking for camera pi updates...
[2026-10-28 06:44:05,128.128 INFO    ] 200
[2026-10-28 06:44:05,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:44:05,173.173 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:44:05,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:44:05,228.228 INFO    ] No camera update needed
[2026-10-28 06:44:05,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:44:05,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:44:05,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:44:05,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:44:07,283.283 INFO    ] ================================================
[2026-10-28 06:44:07,298.298 INFO    ] Launching Daemon at Wed Oct 28 06:44:07 IST 2026
[2026-10-28 06:44:07,309.309 INFO    ] ================================================
[2026-10-28 06:44:07,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:44:07
[2026-10-28 06:44:08,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:44:08,767.767 INFO    ] Initializing speech engine...
[2026-10-28 06:44:08,772.772 INFO    ] 2026-10-28 06:44:08
[2026-10-28 06:44:09,027.027 INFO    ] 2026-10-28 06:44:09
[2026-10-28 06:44:09,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:44:09,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:44:09,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:44:09,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:44:09,748.748 INFO    ] time= 28/10/2026 06:44:09
[2026-10-28 06:44:09,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:44:09,858.858 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:44:09,991.991 INFO    ] No existing commands found in stream
[2026-10-28 06:44:15,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:44:15,030.030 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-28 06:44:19,459.459 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:44:19,463.463 INFO    ] Checking for system updates...
[2026-10-28 06:44:19,505.505 INFO    ] 200
[2026-10-28 06:44:19,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:44:19,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:44:19,565.565 INFO    ] No update needed
[2026-10-28 06:44:19,568.568 INFO    ] Checking for camera pi updates...
[2026-10-28 06:44:19,607.607 INFO    ] 200
[2026-10-28 06:44:19,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:44:19,651.651 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:44:19,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:44:19,736.736 INFO    ] No camera update needed
[2026-10-28 06:44:19,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:44:19,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:44:19,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:44:19,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:44:21,796.796 INFO    ] ================================================
[2026-10-28 06:44:21,811.811 INFO    ] Launching Daemon at Wed Oct 28 06:44:21 IST 2026
[2026-10-28 06:44:21,822.822 INFO    ] ================================================
[2026-10-28 06:44:22,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:44:22
[2026-10-28 06:44:22,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:44:23,212.212 INFO    ] Initializing speech engine...
[2026-10-28 06:44:23,233.233 INFO    ] 2026-10-28 06:44:23
[2026-10-28 06:44:23,487.487 INFO    ] 2026-10-28 06:44:23
[2026-10-28 06:44:23,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:44:23,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:44:23,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:44:24,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:44:24,039.039 INFO    ] time= 28/10/2026 06:44:24
[2026-10-28 06:44:24,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:44:24,065.065 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:44:24,194.194 INFO    ] No existing commands found in stream
[2026-10-28 06:44:29,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:44:29,215.215 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-28 06:44:33,478.478 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:44:33,480.480 INFO    ] Checking for system updates...
[2026-10-28 06:44:33,517.517 INFO    ] 200
[2026-10-28 06:44:33,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:44:33,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:44:33,573.573 INFO    ] No update needed
[2026-10-28 06:44:33,576.576 INFO    ] Checking for camera pi updates...
[2026-10-28 06:44:33,609.609 INFO    ] 200
[2026-10-28 06:44:33,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:44:33,651.651 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:44:33,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:44:33,750.750 INFO    ] No camera update needed
[2026-10-28 06:44:33,752.752 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:44:33,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:44:33,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:44:33,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:44:35,805.805 INFO    ] ================================================
[2026-10-28 06:44:35,820.820 INFO    ] Launching Daemon at Wed Oct 28 06:44:35 IST 2026
[2026-10-28 06:44:35,831.831 INFO    ] ================================================
[2026-10-28 06:44:36,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:44:36
[2026-10-28 06:44:36,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:44:37,243.243 INFO    ] Initializing speech engine...
[2026-10-28 06:44:37,252.252 INFO    ] 2026-10-28 06:44:37
[2026-10-28 06:44:37,497.497 INFO    ] 2026-10-28 06:44:37
[2026-10-28 06:44:37,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:44:37,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:44:37,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:44:38,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:44:38,048.048 INFO    ] time= 28/10/2026 06:44:38
[2026-10-28 06:44:38,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:44:38,073.073 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:44:38,201.201 INFO    ] No existing commands found in stream
[2026-10-28 06:44:43,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:44:43,217.217 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-28 06:44:45,076.076 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:44:45,078.078 INFO    ] Checking for system updates...
[2026-10-28 06:44:45,113.113 INFO    ] 200
[2026-10-28 06:44:45,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:44:45,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:44:45,170.170 INFO    ] No update needed
[2026-10-28 06:44:45,172.172 INFO    ] Checking for camera pi updates...
[2026-10-28 06:44:45,206.206 INFO    ] 200
[2026-10-28 06:44:45,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:44:45,249.249 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:44:45,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:44:45,301.301 INFO    ] No camera update needed
[2026-10-28 06:44:45,303.303 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:44:45,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:44:45,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:44:45,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:44:47,358.358 INFO    ] ================================================
[2026-10-28 06:44:47,374.374 INFO    ] Launching Daemon at Wed Oct 28 06:44:47 IST 2026
[2026-10-28 06:44:47,384.384 INFO    ] ================================================
[2026-10-28 06:44:47,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:44:47
[2026-10-28 06:44:48,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:44:48,796.796 INFO    ] Initializing speech engine...
[2026-10-28 06:44:48,805.805 INFO    ] 2026-10-28 06:44:48
[2026-10-28 06:44:49,052.052 INFO    ] 2026-10-28 06:44:49
[2026-10-28 06:44:49,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:44:49,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:44:49,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:44:49,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:44:49,606.606 INFO    ] time= 28/10/2026 06:44:49
[2026-10-28 06:44:49,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:44:49,652.652 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:44:49,804.804 INFO    ] No existing commands found in stream
[2026-10-28 06:44:54,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:44:54,832.832 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 06:44:57,942.942 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:44:57,944.944 INFO    ] Checking for system updates...
[2026-10-28 06:44:57,981.981 INFO    ] 200
[2026-10-28 06:44:57,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:44:58,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:44:58,037.037 INFO    ] No update needed
[2026-10-28 06:44:58,040.040 INFO    ] Checking for camera pi updates...
[2026-10-28 06:44:58,080.080 INFO    ] 200
[2026-10-28 06:44:58,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:44:58,124.124 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:44:58,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:44:58,208.208 INFO    ] No camera update needed
[2026-10-28 06:44:58,210.210 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:44:58,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:44:58,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:44:58,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:45:00,265.265 INFO    ] ================================================
[2026-10-28 06:45:00,280.280 INFO    ] Launching Daemon at Wed Oct 28 06:45:00 IST 2026
[2026-10-28 06:45:00,291.291 INFO    ] ================================================
[2026-10-28 06:45:00,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:45:00
[2026-10-28 06:45:02,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:45:02,416.416 INFO    ] Initializing speech engine...
[2026-10-28 06:45:02,434.434 INFO    ] 2026-10-28 06:45:02
[2026-10-28 06:45:02,744.744 INFO    ] 2026-10-28 06:45:02
[2026-10-28 06:45:02,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:45:03,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:45:03,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:45:03,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:45:03,282.282 INFO    ] time= 28/10/2026 06:45:03
[2026-10-28 06:45:03,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:45:03,305.305 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:45:03,453.453 INFO    ] No existing commands found in stream
[2026-10-28 06:45:08,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:45:08,468.468 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 06:45:09,143.143 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:45:09,146.146 INFO    ] Checking for system updates...
[2026-10-28 06:45:09,182.182 INFO    ] 200
[2026-10-28 06:45:09,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:45:09,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:45:09,240.240 INFO    ] No update needed
[2026-10-28 06:45:09,243.243 INFO    ] Checking for camera pi updates...
[2026-10-28 06:45:09,276.276 INFO    ] 200
[2026-10-28 06:45:09,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:45:09,319.319 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:45:09,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:45:09,403.403 INFO    ] No camera update needed
[2026-10-28 06:45:09,405.405 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:45:09,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:45:09,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:45:09,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:45:11,459.459 INFO    ] ================================================
[2026-10-28 06:45:11,475.475 INFO    ] Launching Daemon at Wed Oct 28 06:45:11 IST 2026
[2026-10-28 06:45:11,486.486 INFO    ] ================================================
[2026-10-28 06:45:12,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:45:12
[2026-10-28 06:45:12,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:45:12,977.977 INFO    ] Initializing speech engine...
[2026-10-28 06:45:12,985.985 INFO    ] 2026-10-28 06:45:12
[2026-10-28 06:45:13,292.292 INFO    ] 2026-10-28 06:45:13
[2026-10-28 06:45:13,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:45:13,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:45:13,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:45:13,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:45:13,805.805 INFO    ] time= 28/10/2026 06:45:13
[2026-10-28 06:45:13,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:45:13,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:45:13,944.944 INFO    ] No existing commands found in stream
[2026-10-28 06:45:18,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:45:18,958.958 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 06:45:21,454.454 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:45:21,457.457 INFO    ] Checking for system updates...
[2026-10-28 06:45:21,493.493 INFO    ] 200
[2026-10-28 06:45:21,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:45:21,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:45:21,552.552 INFO    ] No update needed
[2026-10-28 06:45:21,554.554 INFO    ] Checking for camera pi updates...
[2026-10-28 06:45:21,588.588 INFO    ] 200
[2026-10-28 06:45:21,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:45:21,632.632 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:45:21,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:45:21,737.737 INFO    ] No camera update needed
[2026-10-28 06:45:21,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:45:21,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:45:21,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:45:21,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:45:23,794.794 INFO    ] ================================================
[2026-10-28 06:45:23,810.810 INFO    ] Launching Daemon at Wed Oct 28 06:45:23 IST 2026
[2026-10-28 06:45:23,821.821 INFO    ] ================================================
[2026-10-28 06:45:24,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:45:24
[2026-10-28 06:45:24,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:45:25,236.236 INFO    ] Initializing speech engine...
[2026-10-28 06:45:25,246.246 INFO    ] 2026-10-28 06:45:25
[2026-10-28 06:45:25,492.492 INFO    ] 2026-10-28 06:45:25
[2026-10-28 06:45:25,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:45:25,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:45:25,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:45:25,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:45:26,044.044 INFO    ] time= 28/10/2026 06:45:25
[2026-10-28 06:45:26,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:45:26,068.068 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:45:26,200.200 INFO    ] No existing commands found in stream
[2026-10-28 06:45:31,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:45:31,225.225 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-28 06:45:33,079.079 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:45:33,081.081 INFO    ] Checking for system updates...
[2026-10-28 06:45:33,117.117 INFO    ] 200
[2026-10-28 06:45:33,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:45:33,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:45:33,175.175 INFO    ] No update needed
[2026-10-28 06:45:33,178.178 INFO    ] Checking for camera pi updates...
[2026-10-28 06:45:33,211.211 INFO    ] 200
[2026-10-28 06:45:33,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:45:33,255.255 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:45:33,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:45:33,339.339 INFO    ] No camera update needed
[2026-10-28 06:45:33,345.345 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:45:33,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:45:33,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:45:33,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:45:35,402.402 INFO    ] ================================================
[2026-10-28 06:45:35,417.417 INFO    ] Launching Daemon at Wed Oct 28 06:45:35 IST 2026
[2026-10-28 06:45:35,427.427 INFO    ] ================================================
[2026-10-28 06:45:36,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:45:36
[2026-10-28 06:45:36,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:45:36,873.873 INFO    ] Initializing speech engine...
[2026-10-28 06:45:36,882.882 INFO    ] 2026-10-28 06:45:36
[2026-10-28 06:45:37,148.148 INFO    ] 2026-10-28 06:45:37
[2026-10-28 06:45:37,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:45:37,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:45:37,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:45:37,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:45:37,698.698 INFO    ] time= 28/10/2026 06:45:37
[2026-10-28 06:45:37,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:45:37,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:45:37,918.918 INFO    ] No existing commands found in stream
[2026-10-28 06:45:42,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:45:42,934.934 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-28 06:45:44,772.772 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:45:44,774.774 INFO    ] Checking for system updates...
[2026-10-28 06:45:44,810.810 INFO    ] 200
[2026-10-28 06:45:44,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:45:44,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:45:44,867.867 INFO    ] No update needed
[2026-10-28 06:45:44,869.869 INFO    ] Checking for camera pi updates...
[2026-10-28 06:45:44,907.907 INFO    ] 200
[2026-10-28 06:45:44,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:45:44,958.958 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:45:45,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:45:45,040.040 INFO    ] No camera update needed
[2026-10-28 06:45:45,042.042 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:45:45,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:45:45,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:45:45,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:45:47,095.095 INFO    ] ================================================
[2026-10-28 06:45:47,110.110 INFO    ] Launching Daemon at Wed Oct 28 06:45:47 IST 2026
[2026-10-28 06:45:47,122.122 INFO    ] ================================================
[2026-10-28 06:45:47,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:45:47
[2026-10-28 06:45:48,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:45:48,532.532 INFO    ] Initializing speech engine...
[2026-10-28 06:45:48,552.552 INFO    ] 2026-10-28 06:45:48
[2026-10-28 06:45:48,801.801 INFO    ] 2026-10-28 06:45:48
[2026-10-28 06:45:48,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:45:49,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:45:49,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:45:49,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:45:49,284.284 INFO    ] time= 28/10/2026 06:45:49
[2026-10-28 06:45:49,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:45:49,362.362 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:45:49,451.451 INFO    ] No existing commands found in stream
[2026-10-28 06:45:54,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:45:54,464.464 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 06:45:55,877.877 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:45:55,880.880 INFO    ] Checking for system updates...
[2026-10-28 06:45:55,919.919 INFO    ] 200
[2026-10-28 06:45:55,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:45:55,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:45:55,982.982 INFO    ] No update needed
[2026-10-28 06:45:55,984.984 INFO    ] Checking for camera pi updates...
[2026-10-28 06:45:56,021.021 INFO    ] 200
[2026-10-28 06:45:56,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:45:56,064.064 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:45:56,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:45:56,164.164 INFO    ] No camera update needed
[2026-10-28 06:45:56,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:45:56,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:45:56,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:45:56,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:45:58,218.218 INFO    ] ================================================
[2026-10-28 06:45:58,234.234 INFO    ] Launching Daemon at Wed Oct 28 06:45:58 IST 2026
[2026-10-28 06:45:58,246.246 INFO    ] ================================================
[2026-10-28 06:45:58,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:45:58
[2026-10-28 06:45:59,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:45:59,695.695 INFO    ] Initializing speech engine...
[2026-10-28 06:45:59,709.709 INFO    ] 2026-10-28 06:45:59
[2026-10-28 06:46:00,028.028 INFO    ] 2026-10-28 06:45:59
[2026-10-28 06:46:00,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:46:00,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:46:00,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:46:00,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:46:00,566.566 INFO    ] time= 28/10/2026 06:46:00
[2026-10-28 06:46:00,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:46:00,604.604 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:46:00,736.736 INFO    ] No existing commands found in stream
[2026-10-28 06:46:05,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:46:05,770.770 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-28 06:46:06,739.739 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:46:06,742.742 INFO    ] Checking for system updates...
[2026-10-28 06:46:06,778.778 INFO    ] 200
[2026-10-28 06:46:06,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:46:06,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:46:06,836.836 INFO    ] No update needed
[2026-10-28 06:46:06,838.838 INFO    ] Checking for camera pi updates...
[2026-10-28 06:46:06,872.872 INFO    ] 200
[2026-10-28 06:46:06,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:46:06,914.914 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:46:07,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:46:07,096.096 INFO    ] No camera update needed
[2026-10-28 06:46:07,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:46:07,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:46:07,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:46:07,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:46:09,151.151 INFO    ] ================================================
[2026-10-28 06:46:09,166.166 INFO    ] Launching Daemon at Wed Oct 28 06:46:09 IST 2026
[2026-10-28 06:46:09,178.178 INFO    ] ================================================
[2026-10-28 06:46:09,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:46:09
[2026-10-28 06:46:10,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:46:10,627.627 INFO    ] Initializing speech engine...
[2026-10-28 06:46:10,636.636 INFO    ] 2026-10-28 06:46:10
[2026-10-28 06:46:10,892.892 INFO    ] 2026-10-28 06:46:10
[2026-10-28 06:46:10,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:46:11,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:46:11,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:46:11,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:46:11,445.445 INFO    ] time= 28/10/2026 06:46:11
[2026-10-28 06:46:11,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:46:11,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:46:11,599.599 INFO    ] No existing commands found in stream
[2026-10-28 06:46:16,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:46:16,627.627 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-28 06:46:19,811.811 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:46:19,814.814 INFO    ] Checking for system updates...
[2026-10-28 06:46:19,849.849 INFO    ] 200
[2026-10-28 06:46:19,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:46:19,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:46:19,908.908 INFO    ] No update needed
[2026-10-28 06:46:19,911.911 INFO    ] Checking for camera pi updates...
[2026-10-28 06:46:19,951.951 INFO    ] 200
[2026-10-28 06:46:19,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:46:19,998.998 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:46:20,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:46:20,082.082 INFO    ] No camera update needed
[2026-10-28 06:46:20,085.085 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:46:20,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:46:20,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:46:20,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:46:22,138.138 INFO    ] ================================================
[2026-10-28 06:46:22,154.154 INFO    ] Launching Daemon at Wed Oct 28 06:46:22 IST 2026
[2026-10-28 06:46:22,165.165 INFO    ] ================================================
[2026-10-28 06:46:22,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:46:22
[2026-10-28 06:46:23,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:46:23,602.602 INFO    ] Initializing speech engine...
[2026-10-28 06:46:23,617.617 INFO    ] 2026-10-28 06:46:23
[2026-10-28 06:46:23,873.873 INFO    ] 2026-10-28 06:46:23
[2026-10-28 06:46:23,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:46:24,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:46:24,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:46:24,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:46:24,433.433 INFO    ] time= 28/10/2026 06:46:24
[2026-10-28 06:46:24,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:46:24,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:46:24,609.609 INFO    ] No existing commands found in stream
[2026-10-28 06:46:29,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:46:29,643.643 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-28 06:46:33,358.358 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:46:33,361.361 INFO    ] Checking for system updates...
[2026-10-28 06:46:33,400.400 INFO    ] 200
[2026-10-28 06:46:33,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:46:33,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:46:33,463.463 INFO    ] No update needed
[2026-10-28 06:46:33,465.465 INFO    ] Checking for camera pi updates...
[2026-10-28 06:46:33,503.503 INFO    ] 200
[2026-10-28 06:46:33,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:46:33,547.547 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:46:33,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:46:33,634.634 INFO    ] No camera update needed
[2026-10-28 06:46:33,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:46:33,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:46:33,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:46:33,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:46:35,690.690 INFO    ] ================================================
[2026-10-28 06:46:35,706.706 INFO    ] Launching Daemon at Wed Oct 28 06:46:35 IST 2026
[2026-10-28 06:46:35,717.717 INFO    ] ================================================
[2026-10-28 06:46:36,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:46:36
[2026-10-28 06:46:36,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:46:37,178.178 INFO    ] Initializing speech engine...
[2026-10-28 06:46:37,187.187 INFO    ] 2026-10-28 06:46:37
[2026-10-28 06:46:37,443.443 INFO    ] 2026-10-28 06:46:37
[2026-10-28 06:46:37,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:46:37,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:46:37,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:46:37,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:46:38,004.004 INFO    ] time= 28/10/2026 06:46:37
[2026-10-28 06:46:38,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:46:38,029.029 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:46:38,164.164 INFO    ] No existing commands found in stream
[2026-10-28 06:46:43,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:46:43,178.178 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-28 06:46:45,437.437 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:46:45,439.439 INFO    ] Checking for system updates...
[2026-10-28 06:46:45,476.476 INFO    ] 200
[2026-10-28 06:46:45,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:46:45,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:46:45,540.540 INFO    ] No update needed
[2026-10-28 06:46:45,542.542 INFO    ] Checking for camera pi updates...
[2026-10-28 06:46:45,575.575 INFO    ] 200
[2026-10-28 06:46:45,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:46:45,618.618 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:46:45,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:46:45,741.741 INFO    ] No camera update needed
[2026-10-28 06:46:45,743.743 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:46:45,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:46:45,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:46:45,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:46:47,797.797 INFO    ] ================================================
[2026-10-28 06:46:47,812.812 INFO    ] Launching Daemon at Wed Oct 28 06:46:47 IST 2026
[2026-10-28 06:46:47,823.823 INFO    ] ================================================
[2026-10-28 06:46:48,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:46:48
[2026-10-28 06:46:49,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:46:49,367.367 INFO    ] Initializing speech engine...
[2026-10-28 06:46:49,375.375 INFO    ] 2026-10-28 06:46:49
[2026-10-28 06:46:49,662.662 INFO    ] 2026-10-28 06:46:49
[2026-10-28 06:46:49,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:46:50,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:46:50,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:46:50,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:46:50,390.390 INFO    ] time= 28/10/2026 06:46:50
[2026-10-28 06:46:50,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:46:50,478.478 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:46:50,620.620 INFO    ] No existing commands found in stream
[2026-10-28 06:46:55,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:46:55,656.656 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-28 06:46:58,375.375 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:46:58,377.377 INFO    ] Checking for system updates...
[2026-10-28 06:46:58,414.414 INFO    ] 200
[2026-10-28 06:46:58,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:46:58,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:46:58,471.471 INFO    ] No update needed
[2026-10-28 06:46:58,474.474 INFO    ] Checking for camera pi updates...
[2026-10-28 06:46:58,508.508 INFO    ] 200
[2026-10-28 06:46:58,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:46:58,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:46:58,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:46:58,639.639 INFO    ] No camera update needed
[2026-10-28 06:46:58,641.641 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:46:58,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:46:58,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:46:58,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:47:00,697.697 INFO    ] ================================================
[2026-10-28 06:47:00,714.714 INFO    ] Launching Daemon at Wed Oct 28 06:47:00 IST 2026
[2026-10-28 06:47:00,725.725 INFO    ] ================================================
[2026-10-28 06:47:01,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:47:01
[2026-10-28 06:47:02,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:47:02,571.571 INFO    ] Initializing speech engine...
[2026-10-28 06:47:02,580.580 INFO    ] 2026-10-28 06:47:02
[2026-10-28 06:47:02,869.869 INFO    ] 2026-10-28 06:47:02
[2026-10-28 06:47:02,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:47:03,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:47:03,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:47:03,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:47:03,360.360 INFO    ] time= 28/10/2026 06:47:03
[2026-10-28 06:47:03,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:47:03,368.368 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:47:03,442.442 INFO    ] No existing commands found in stream
[2026-10-28 06:47:08,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:47:08,466.466 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-28 06:47:10,451.451 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:47:10,454.454 INFO    ] Checking for system updates...
[2026-10-28 06:47:10,490.490 INFO    ] 200
[2026-10-28 06:47:10,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:47:10,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:47:10,548.548 INFO    ] No update needed
[2026-10-28 06:47:10,550.550 INFO    ] Checking for camera pi updates...
[2026-10-28 06:47:10,584.584 INFO    ] 200
[2026-10-28 06:47:10,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:47:10,626.626 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:47:10,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:47:10,718.718 INFO    ] No camera update needed
[2026-10-28 06:47:10,720.720 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:47:10,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:47:10,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:47:10,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:47:12,774.774 INFO    ] ================================================
[2026-10-28 06:47:12,796.796 INFO    ] Launching Daemon at Wed Oct 28 06:47:12 IST 2026
[2026-10-28 06:47:12,807.807 INFO    ] ================================================
[2026-10-28 06:47:13,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:47:13
[2026-10-28 06:47:13,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:47:14,258.258 INFO    ] Initializing speech engine...
[2026-10-28 06:47:14,267.267 INFO    ] 2026-10-28 06:47:14
[2026-10-28 06:47:14,525.525 INFO    ] 2026-10-28 06:47:14
[2026-10-28 06:47:14,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:47:14,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:47:14,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:47:15,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:47:15,066.066 INFO    ] time= 28/10/2026 06:47:15
[2026-10-28 06:47:15,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:47:15,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:47:15,241.241 INFO    ] No existing commands found in stream
[2026-10-28 06:47:20,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:47:20,264.264 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 06:47:23,756.756 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:47:23,759.759 INFO    ] Checking for system updates...
[2026-10-28 06:47:23,804.804 INFO    ] 200
[2026-10-28 06:47:23,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:47:23,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:47:23,872.872 INFO    ] No update needed
[2026-10-28 06:47:23,875.875 INFO    ] Checking for camera pi updates...
[2026-10-28 06:47:23,915.915 INFO    ] 200
[2026-10-28 06:47:23,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:47:23,961.961 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:47:24,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:47:24,024.024 INFO    ] No camera update needed
[2026-10-28 06:47:24,027.027 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:47:24,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:47:24,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:47:24,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:47:26,080.080 INFO    ] ================================================
[2026-10-28 06:47:26,095.095 INFO    ] Launching Daemon at Wed Oct 28 06:47:26 IST 2026
[2026-10-28 06:47:26,106.106 INFO    ] ================================================
[2026-10-28 06:47:26,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:47:26
[2026-10-28 06:47:27,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:47:27,648.648 INFO    ] Initializing speech engine...
[2026-10-28 06:47:27,663.663 INFO    ] 2026-10-28 06:47:27
[2026-10-28 06:47:27,934.934 INFO    ] 2026-10-28 06:47:27
[2026-10-28 06:47:27,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:47:28,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:47:28,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:47:28,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:47:28,546.546 INFO    ] time= 28/10/2026 06:47:28
[2026-10-28 06:47:28,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:47:28,576.576 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:47:28,710.710 INFO    ] No existing commands found in stream
[2026-10-28 06:47:33,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:47:33,738.738 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-28 06:47:36,098.098 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:47:36,101.101 INFO    ] Checking for system updates...
[2026-10-28 06:47:36,139.139 INFO    ] 200
[2026-10-28 06:47:36,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:47:36,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:47:36,202.202 INFO    ] No update needed
[2026-10-28 06:47:36,204.204 INFO    ] Checking for camera pi updates...
[2026-10-28 06:47:36,241.241 INFO    ] 200
[2026-10-28 06:47:36,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:47:36,288.288 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:47:36,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:47:36,372.372 INFO    ] No camera update needed
[2026-10-28 06:47:36,374.374 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:47:36,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:47:36,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:47:36,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:47:38,427.427 INFO    ] ================================================
[2026-10-28 06:47:38,442.442 INFO    ] Launching Daemon at Wed Oct 28 06:47:38 IST 2026
[2026-10-28 06:47:38,456.456 INFO    ] ================================================
[2026-10-28 06:47:39,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:47:39
[2026-10-28 06:47:39,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:47:39,908.908 INFO    ] Initializing speech engine...
[2026-10-28 06:47:39,922.922 INFO    ] 2026-10-28 06:47:39
[2026-10-28 06:47:40,176.176 INFO    ] 2026-10-28 06:47:40
[2026-10-28 06:47:40,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:47:40,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:47:40,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:47:40,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:47:40,749.749 INFO    ] time= 28/10/2026 06:47:40
[2026-10-28 06:47:40,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:47:40,796.796 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:47:40,926.926 INFO    ] No existing commands found in stream
[2026-10-28 06:47:45,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:47:45,959.959 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-28 06:47:46,796.796 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:47:46,799.799 INFO    ] Checking for system updates...
[2026-10-28 06:47:46,834.834 INFO    ] 200
[2026-10-28 06:47:46,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:47:46,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:47:46,893.893 INFO    ] No update needed
[2026-10-28 06:47:46,895.895 INFO    ] Checking for camera pi updates...
[2026-10-28 06:47:46,928.928 INFO    ] 200
[2026-10-28 06:47:46,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:47:46,971.971 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:47:47,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:47:47,057.057 INFO    ] No camera update needed
[2026-10-28 06:47:47,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:47:47,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:47:47,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:47:47,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:47:49,117.117 INFO    ] ================================================
[2026-10-28 06:47:49,132.132 INFO    ] Launching Daemon at Wed Oct 28 06:47:49 IST 2026
[2026-10-28 06:47:49,142.142 INFO    ] ================================================
[2026-10-28 06:47:49,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:47:49
[2026-10-28 06:47:50,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:47:50,613.613 INFO    ] Initializing speech engine...
[2026-10-28 06:47:50,627.627 INFO    ] 2026-10-28 06:47:50
[2026-10-28 06:47:50,895.895 INFO    ] 2026-10-28 06:47:50
[2026-10-28 06:47:50,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:47:51,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:47:51,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:47:51,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:47:51,455.455 INFO    ] time= 28/10/2026 06:47:51
[2026-10-28 06:47:51,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:47:51,527.527 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:47:51,658.658 INFO    ] No existing commands found in stream
[2026-10-28 06:47:56,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:47:56,683.683 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 06:48:00,556.556 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:48:00,559.559 INFO    ] Checking for system updates...
[2026-10-28 06:48:00,601.601 INFO    ] 200
[2026-10-28 06:48:00,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:48:00,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:48:00,658.658 INFO    ] No update needed
[2026-10-28 06:48:00,661.661 INFO    ] Checking for camera pi updates...
[2026-10-28 06:48:00,694.694 INFO    ] 200
[2026-10-28 06:48:00,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:48:00,737.737 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:48:00,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:48:00,833.833 INFO    ] No camera update needed
[2026-10-28 06:48:00,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:48:00,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:48:00,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:48:00,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:48:02,893.893 INFO    ] ================================================
[2026-10-28 06:48:02,908.908 INFO    ] Launching Daemon at Wed Oct 28 06:48:02 IST 2026
[2026-10-28 06:48:02,919.919 INFO    ] ================================================
[2026-10-28 06:48:03,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:48:03
[2026-10-28 06:48:04,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:48:04,518.518 INFO    ] Initializing speech engine...
[2026-10-28 06:48:04,532.532 INFO    ] 2026-10-28 06:48:04
[2026-10-28 06:48:04,819.819 INFO    ] 2026-10-28 06:48:04
[2026-10-28 06:48:04,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:48:05,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:48:05,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:48:05,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:48:05,414.414 INFO    ] time= 28/10/2026 06:48:05
[2026-10-28 06:48:05,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:48:05,515.515 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:48:05,653.653 INFO    ] No existing commands found in stream
[2026-10-28 06:48:10,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:48:10,687.687 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 06:48:14,489.489 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:48:14,492.492 INFO    ] Checking for system updates...
[2026-10-28 06:48:14,532.532 INFO    ] 200
[2026-10-28 06:48:14,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:48:14,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:48:14,594.594 INFO    ] No update needed
[2026-10-28 06:48:14,597.597 INFO    ] Checking for camera pi updates...
[2026-10-28 06:48:14,632.632 INFO    ] 200
[2026-10-28 06:48:14,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:48:14,675.675 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:48:14,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:48:14,867.867 INFO    ] No camera update needed
[2026-10-28 06:48:14,870.870 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:48:14,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:48:14,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:48:14,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:48:16,923.923 INFO    ] ================================================
[2026-10-28 06:48:16,938.938 INFO    ] Launching Daemon at Wed Oct 28 06:48:16 IST 2026
[2026-10-28 06:48:16,953.953 INFO    ] ================================================
[2026-10-28 06:48:17,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:48:17
[2026-10-28 06:48:18,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:48:18,391.391 INFO    ] Initializing speech engine...
[2026-10-28 06:48:18,400.400 INFO    ] 2026-10-28 06:48:18
[2026-10-28 06:48:18,649.649 INFO    ] 2026-10-28 06:48:18
[2026-10-28 06:48:18,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:48:18,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:48:18,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:48:19,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:48:19,221.221 INFO    ] time= 28/10/2026 06:48:19
[2026-10-28 06:48:19,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:48:19,245.245 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:48:19,360.360 INFO    ] No existing commands found in stream
[2026-10-28 06:48:24,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:48:24,388.388 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 06:48:25,050.050 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:48:25,053.053 INFO    ] Checking for system updates...
[2026-10-28 06:48:25,092.092 INFO    ] 200
[2026-10-28 06:48:25,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:48:25,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:48:25,155.155 INFO    ] No update needed
[2026-10-28 06:48:25,157.157 INFO    ] Checking for camera pi updates...
[2026-10-28 06:48:25,190.190 INFO    ] 200
[2026-10-28 06:48:25,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:48:25,233.233 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:48:25,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:48:25,319.319 INFO    ] No camera update needed
[2026-10-28 06:48:25,322.322 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:48:25,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:48:25,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:48:25,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:48:27,374.374 INFO    ] ================================================
[2026-10-28 06:48:27,392.392 INFO    ] Launching Daemon at Wed Oct 28 06:48:27 IST 2026
[2026-10-28 06:48:27,403.403 INFO    ] ================================================
[2026-10-28 06:48:27,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:48:27
[2026-10-28 06:48:28,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:48:28,802.802 INFO    ] Initializing speech engine...
[2026-10-28 06:48:28,808.808 INFO    ] 2026-10-28 06:48:28
[2026-10-28 06:48:29,100.100 INFO    ] 2026-10-28 06:48:29
[2026-10-28 06:48:29,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:48:29,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:48:29,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:48:29,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:48:29,703.703 INFO    ] time= 28/10/2026 06:48:29
[2026-10-28 06:48:29,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:48:29,746.746 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:48:29,888.888 INFO    ] No existing commands found in stream
[2026-10-28 06:48:34,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:48:34,911.911 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-28 06:48:38,294.294 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:48:38,296.296 INFO    ] Checking for system updates...
[2026-10-28 06:48:38,332.332 INFO    ] 200
[2026-10-28 06:48:38,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:48:38,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:48:38,389.389 INFO    ] No update needed
[2026-10-28 06:48:38,391.391 INFO    ] Checking for camera pi updates...
[2026-10-28 06:48:38,424.424 INFO    ] 200
[2026-10-28 06:48:38,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:48:38,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:48:38,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:48:38,556.556 INFO    ] No camera update needed
[2026-10-28 06:48:38,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:48:38,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:48:38,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:48:38,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:48:40,614.614 INFO    ] ================================================
[2026-10-28 06:48:40,629.629 INFO    ] Launching Daemon at Wed Oct 28 06:48:40 IST 2026
[2026-10-28 06:48:40,640.640 INFO    ] ================================================
[2026-10-28 06:48:41,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:48:41
[2026-10-28 06:48:41,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:48:42,102.102 INFO    ] Initializing speech engine...
[2026-10-28 06:48:42,110.110 INFO    ] 2026-10-28 06:48:42
[2026-10-28 06:48:42,384.384 INFO    ] 2026-10-28 06:48:42
[2026-10-28 06:48:42,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:48:42,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:48:42,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:48:43,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:48:43,115.115 INFO    ] time= 28/10/2026 06:48:43
[2026-10-28 06:48:43,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:48:43,212.212 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:48:43,371.371 INFO    ] No existing commands found in stream
[2026-10-28 06:48:48,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:48:48,390.390 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-28 06:48:49,092.092 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:48:49,095.095 INFO    ] Checking for system updates...
[2026-10-28 06:48:49,132.132 INFO    ] 200
[2026-10-28 06:48:49,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:48:49,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:48:49,191.191 INFO    ] No update needed
[2026-10-28 06:48:49,194.194 INFO    ] Checking for camera pi updates...
[2026-10-28 06:48:49,228.228 INFO    ] 200
[2026-10-28 06:48:49,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:48:49,272.272 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:48:49,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:48:49,363.363 INFO    ] No camera update needed
[2026-10-28 06:48:49,366.366 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:48:49,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:48:49,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:48:49,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:48:51,421.421 INFO    ] ================================================
[2026-10-28 06:48:51,437.437 INFO    ] Launching Daemon at Wed Oct 28 06:48:51 IST 2026
[2026-10-28 06:48:51,447.447 INFO    ] ================================================
[2026-10-28 06:48:52,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:48:52
[2026-10-28 06:48:52,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:48:53,052.052 INFO    ] Initializing speech engine...
[2026-10-28 06:48:53,066.066 INFO    ] 2026-10-28 06:48:53
[2026-10-28 06:48:53,357.357 INFO    ] 2026-10-28 06:48:53
[2026-10-28 06:48:53,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:48:53,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:48:53,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:48:53,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:48:53,910.910 INFO    ] time= 28/10/2026 06:48:53
[2026-10-28 06:48:53,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:48:53,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:48:54,096.096 INFO    ] No existing commands found in stream
[2026-10-28 06:48:59,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:48:59,125.125 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 06:49:03,198.198 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:49:03,202.202 INFO    ] Checking for system updates...
[2026-10-28 06:49:03,245.245 INFO    ] 200
[2026-10-28 06:49:03,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:49:03,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:49:03,304.304 INFO    ] No update needed
[2026-10-28 06:49:03,307.307 INFO    ] Checking for camera pi updates...
[2026-10-28 06:49:03,356.356 INFO    ] 200
[2026-10-28 06:49:03,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:49:03,419.419 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:49:03,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:49:03,507.507 INFO    ] No camera update needed
[2026-10-28 06:49:03,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:49:03,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:49:03,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:49:03,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:49:05,566.566 INFO    ] ================================================
[2026-10-28 06:49:05,581.581 INFO    ] Launching Daemon at Wed Oct 28 06:49:05 IST 2026
[2026-10-28 06:49:05,591.591 INFO    ] ================================================
[2026-10-28 06:49:06,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:49:06
[2026-10-28 06:49:06,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:49:07,043.043 INFO    ] Initializing speech engine...
[2026-10-28 06:49:07,052.052 INFO    ] 2026-10-28 06:49:07
[2026-10-28 06:49:07,306.306 INFO    ] 2026-10-28 06:49:07
[2026-10-28 06:49:07,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:49:07,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:49:07,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:49:07,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:49:07,867.867 INFO    ] time= 28/10/2026 06:49:07
[2026-10-28 06:49:07,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:49:07,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:49:08,043.043 INFO    ] No existing commands found in stream
[2026-10-28 06:49:13,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:49:13,071.071 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-28 06:49:16,915.915 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:49:16,918.918 INFO    ] Checking for system updates...
[2026-10-28 06:49:16,953.953 INFO    ] 200
[2026-10-28 06:49:16,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:49:17,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:49:17,010.010 INFO    ] No update needed
[2026-10-28 06:49:17,012.012 INFO    ] Checking for camera pi updates...
[2026-10-28 06:49:17,049.049 INFO    ] 200
[2026-10-28 06:49:17,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:49:17,096.096 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:49:17,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:49:17,178.178 INFO    ] No camera update needed
[2026-10-28 06:49:17,180.180 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:49:17,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:49:17,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:49:17,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:49:19,235.235 INFO    ] ================================================
[2026-10-28 06:49:19,250.250 INFO    ] Launching Daemon at Wed Oct 28 06:49:19 IST 2026
[2026-10-28 06:49:19,260.260 INFO    ] ================================================
[2026-10-28 06:49:19,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:49:19
[2026-10-28 06:49:20,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:49:20,888.888 INFO    ] Initializing speech engine...
[2026-10-28 06:49:20,896.896 INFO    ] 2026-10-28 06:49:20
[2026-10-28 06:49:21,170.170 INFO    ] 2026-10-28 06:49:21
[2026-10-28 06:49:21,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:49:21,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:49:21,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:49:21,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:49:21,738.738 INFO    ] time= 28/10/2026 06:49:21
[2026-10-28 06:49:21,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:49:21,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:49:21,917.917 INFO    ] No existing commands found in stream
[2026-10-28 06:49:26,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:49:26,951.951 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 06:49:30,135.135 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:49:30,138.138 INFO    ] Checking for system updates...
[2026-10-28 06:49:30,174.174 INFO    ] 200
[2026-10-28 06:49:30,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:49:30,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:49:30,235.235 INFO    ] No update needed
[2026-10-28 06:49:30,237.237 INFO    ] Checking for camera pi updates...
[2026-10-28 06:49:30,272.272 INFO    ] 200
[2026-10-28 06:49:30,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:49:30,318.318 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:49:30,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:49:30,406.406 INFO    ] No camera update needed
[2026-10-28 06:49:30,408.408 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:49:30,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:49:30,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:49:30,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:49:32,472.472 INFO    ] ================================================
[2026-10-28 06:49:32,489.489 INFO    ] Launching Daemon at Wed Oct 28 06:49:32 IST 2026
[2026-10-28 06:49:32,503.503 INFO    ] ================================================
[2026-10-28 06:49:33,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:49:33
[2026-10-28 06:49:33,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:49:34,049.049 INFO    ] Initializing speech engine...
[2026-10-28 06:49:34,061.061 INFO    ] 2026-10-28 06:49:34
[2026-10-28 06:49:34,346.346 INFO    ] 2026-10-28 06:49:34
[2026-10-28 06:49:34,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:49:34,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:49:34,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:49:34,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:49:34,787.787 INFO    ] time= 28/10/2026 06:49:34
[2026-10-28 06:49:34,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:49:34,858.858 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:49:34,979.979 INFO    ] No existing commands found in stream
[2026-10-28 06:49:40,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:49:40,004.004 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-28 06:49:41,520.520 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:49:41,523.523 INFO    ] Checking for system updates...
[2026-10-28 06:49:41,559.559 INFO    ] 200
[2026-10-28 06:49:41,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:49:41,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:49:41,616.616 INFO    ] No update needed
[2026-10-28 06:49:41,618.618 INFO    ] Checking for camera pi updates...
[2026-10-28 06:49:41,652.652 INFO    ] 200
[2026-10-28 06:49:41,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:49:41,695.695 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:49:41,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:49:41,782.782 INFO    ] No camera update needed
[2026-10-28 06:49:41,784.784 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:49:41,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:49:41,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:49:41,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:49:43,836.836 INFO    ] ================================================
[2026-10-28 06:49:43,851.851 INFO    ] Launching Daemon at Wed Oct 28 06:49:43 IST 2026
[2026-10-28 06:49:43,862.862 INFO    ] ================================================
[2026-10-28 06:49:44,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:49:44
[2026-10-28 06:49:45,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:49:45,500.500 INFO    ] Initializing speech engine...
[2026-10-28 06:49:45,511.511 INFO    ] 2026-10-28 06:49:45
[2026-10-28 06:49:45,797.797 INFO    ] 2026-10-28 06:49:45
[2026-10-28 06:49:45,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:49:46,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:49:46,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:49:46,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:49:46,343.343 INFO    ] time= 28/10/2026 06:49:46
[2026-10-28 06:49:46,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:49:46,382.382 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:49:46,487.487 INFO    ] No existing commands found in stream
[2026-10-28 06:49:51,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:49:51,519.519 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 06:49:54,157.157 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:49:54,159.159 INFO    ] Checking for system updates...
[2026-10-28 06:49:54,196.196 INFO    ] 200
[2026-10-28 06:49:54,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:49:54,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:49:54,257.257 INFO    ] No update needed
[2026-10-28 06:49:54,259.259 INFO    ] Checking for camera pi updates...
[2026-10-28 06:49:54,293.293 INFO    ] 200
[2026-10-28 06:49:54,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:49:54,337.337 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:49:54,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:49:54,424.424 INFO    ] No camera update needed
[2026-10-28 06:49:54,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:49:54,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:49:54,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:49:54,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:49:56,481.481 INFO    ] ================================================
[2026-10-28 06:49:56,496.496 INFO    ] Launching Daemon at Wed Oct 28 06:49:56 IST 2026
[2026-10-28 06:49:56,506.506 INFO    ] ================================================
[2026-10-28 06:49:57,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:49:57
[2026-10-28 06:49:57,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:49:57,973.973 INFO    ] Initializing speech engine...
[2026-10-28 06:49:57,982.982 INFO    ] 2026-10-28 06:49:57
[2026-10-28 06:49:58,256.256 INFO    ] 2026-10-28 06:49:58
[2026-10-28 06:49:58,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:49:58,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:49:58,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:49:58,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:49:58,788.788 INFO    ] time= 28/10/2026 06:49:58
[2026-10-28 06:49:58,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:49:58,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:49:58,954.954 INFO    ] No existing commands found in stream
[2026-10-28 06:50:03,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:50:03,987.987 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 06:50:07,258.258 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:50:07,261.261 INFO    ] Checking for system updates...
[2026-10-28 06:50:07,302.302 INFO    ] 200
[2026-10-28 06:50:07,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:50:07,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:50:07,366.366 INFO    ] No update needed
[2026-10-28 06:50:07,369.369 INFO    ] Checking for camera pi updates...
[2026-10-28 06:50:07,401.401 INFO    ] 200
[2026-10-28 06:50:07,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:50:07,444.444 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:50:07,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:50:07,536.536 INFO    ] No camera update needed
[2026-10-28 06:50:07,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:50:07,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:50:07,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:50:07,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:50:09,592.592 INFO    ] ================================================
[2026-10-28 06:50:09,607.607 INFO    ] Launching Daemon at Wed Oct 28 06:50:09 IST 2026
[2026-10-28 06:50:09,623.623 INFO    ] ================================================
[2026-10-28 06:50:10,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:50:10
[2026-10-28 06:50:10,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:50:11,031.031 INFO    ] Initializing speech engine...
[2026-10-28 06:50:11,038.038 INFO    ] 2026-10-28 06:50:11
[2026-10-28 06:50:11,334.334 INFO    ] 2026-10-28 06:50:11
[2026-10-28 06:50:11,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:50:11,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:50:11,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:50:11,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:50:11,791.791 INFO    ] time= 28/10/2026 06:50:11
[2026-10-28 06:50:11,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:50:11,804.804 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:50:11,935.935 INFO    ] No existing commands found in stream
[2026-10-28 06:50:16,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:50:16,958.958 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-28 06:50:17,662.662 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:50:17,665.665 INFO    ] Checking for system updates...
[2026-10-28 06:50:17,701.701 INFO    ] 200
[2026-10-28 06:50:17,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:50:17,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:50:17,759.759 INFO    ] No update needed
[2026-10-28 06:50:17,764.764 INFO    ] Checking for camera pi updates...
[2026-10-28 06:50:17,802.802 INFO    ] 200
[2026-10-28 06:50:17,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:50:17,846.846 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:50:18,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:50:18,026.026 INFO    ] No camera update needed
[2026-10-28 06:50:18,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:50:18,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:50:18,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:50:18,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:50:20,084.084 INFO    ] ================================================
[2026-10-28 06:50:20,099.099 INFO    ] Launching Daemon at Wed Oct 28 06:50:20 IST 2026
[2026-10-28 06:50:20,110.110 INFO    ] ================================================
[2026-10-28 06:50:20,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:50:20
[2026-10-28 06:50:21,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:50:21,569.569 INFO    ] Initializing speech engine...
[2026-10-28 06:50:21,577.577 INFO    ] 2026-10-28 06:50:21
[2026-10-28 06:50:21,861.861 INFO    ] 2026-10-28 06:50:21
[2026-10-28 06:50:21,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:50:22,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:50:22,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:50:22,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:50:22,412.412 INFO    ] time= 28/10/2026 06:50:22
[2026-10-28 06:50:22,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:50:22,452.452 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:50:22,580.580 INFO    ] No existing commands found in stream
[2026-10-28 06:50:27,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:50:27,610.610 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-28 06:50:31,296.296 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:50:31,299.299 INFO    ] Checking for system updates...
[2026-10-28 06:50:31,336.336 INFO    ] 200
[2026-10-28 06:50:31,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:50:31,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:50:31,396.396 INFO    ] No update needed
[2026-10-28 06:50:31,399.399 INFO    ] Checking for camera pi updates...
[2026-10-28 06:50:31,438.438 INFO    ] 200
[2026-10-28 06:50:31,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:50:31,482.482 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:50:31,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:50:31,573.573 INFO    ] No camera update needed
[2026-10-28 06:50:31,576.576 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:50:31,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:50:31,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:50:31,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:50:33,640.640 INFO    ] ================================================
[2026-10-28 06:50:33,656.656 INFO    ] Launching Daemon at Wed Oct 28 06:50:33 IST 2026
[2026-10-28 06:50:33,666.666 INFO    ] ================================================
[2026-10-28 06:50:34,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:50:34
[2026-10-28 06:50:34,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:50:35,084.084 INFO    ] Initializing speech engine...
[2026-10-28 06:50:35,103.103 INFO    ] 2026-10-28 06:50:35
[2026-10-28 06:50:35,355.355 INFO    ] 2026-10-28 06:50:35
[2026-10-28 06:50:35,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:50:35,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:50:35,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:50:35,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:50:35,922.922 INFO    ] time= 28/10/2026 06:50:35
[2026-10-28 06:50:35,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:50:35,948.948 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:50:36,109.109 INFO    ] No existing commands found in stream
[2026-10-28 06:50:41,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:50:41,138.138 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-28 06:50:41,983.983 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:50:41,985.985 INFO    ] Checking for system updates...
[2026-10-28 06:50:42,025.025 INFO    ] 200
[2026-10-28 06:50:42,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:50:42,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:50:42,082.082 INFO    ] No update needed
[2026-10-28 06:50:42,084.084 INFO    ] Checking for camera pi updates...
[2026-10-28 06:50:42,123.123 INFO    ] 200
[2026-10-28 06:50:42,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:50:42,171.171 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:50:42,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:50:42,254.254 INFO    ] No camera update needed
[2026-10-28 06:50:42,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:50:42,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:50:42,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:50:42,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:50:44,308.308 INFO    ] ================================================
[2026-10-28 06:50:44,323.323 INFO    ] Launching Daemon at Wed Oct 28 06:50:44 IST 2026
[2026-10-28 06:50:44,334.334 INFO    ] ================================================
[2026-10-28 06:50:44,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:50:44
[2026-10-28 06:50:45,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:50:46,006.006 INFO    ] Initializing speech engine...
[2026-10-28 06:50:46,013.013 INFO    ] 2026-10-28 06:50:46
[2026-10-28 06:50:46,306.306 INFO    ] 2026-10-28 06:50:46
[2026-10-28 06:50:46,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:50:46,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:50:46,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:50:46,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:50:46,879.879 INFO    ] time= 28/10/2026 06:50:46
[2026-10-28 06:50:46,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:50:46,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:50:47,055.055 INFO    ] No existing commands found in stream
[2026-10-28 06:50:52,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:50:52,084.084 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-28 06:50:55,540.540 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:50:55,543.543 INFO    ] Checking for system updates...
[2026-10-28 06:50:55,580.580 INFO    ] 200
[2026-10-28 06:50:55,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:50:55,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:50:55,642.642 INFO    ] No update needed
[2026-10-28 06:50:55,645.645 INFO    ] Checking for camera pi updates...
[2026-10-28 06:50:55,678.678 INFO    ] 200
[2026-10-28 06:50:55,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:50:55,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:50:55,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:50:55,817.817 INFO    ] No camera update needed
[2026-10-28 06:50:55,819.819 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:50:55,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:50:55,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:50:55,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:50:57,873.873 INFO    ] ================================================
[2026-10-28 06:50:57,888.888 INFO    ] Launching Daemon at Wed Oct 28 06:50:57 IST 2026
[2026-10-28 06:50:57,899.899 INFO    ] ================================================
[2026-10-28 06:50:58,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:50:58
[2026-10-28 06:50:59,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:50:59,350.350 INFO    ] Initializing speech engine...
[2026-10-28 06:50:59,359.359 INFO    ] 2026-10-28 06:50:59
[2026-10-28 06:50:59,607.607 INFO    ] 2026-10-28 06:50:59
[2026-10-28 06:50:59,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:50:59,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:50:59,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:51:00,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:51:00,163.163 INFO    ] time= 28/10/2026 06:51:00
[2026-10-28 06:51:00,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:51:00,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:51:00,317.317 INFO    ] No existing commands found in stream
[2026-10-28 06:51:05,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:51:05,339.339 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-28 06:51:06,411.411 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:51:06,414.414 INFO    ] Checking for system updates...
[2026-10-28 06:51:06,460.460 INFO    ] 200
[2026-10-28 06:51:06,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:51:06,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:51:06,520.520 INFO    ] No update needed
[2026-10-28 06:51:06,523.523 INFO    ] Checking for camera pi updates...
[2026-10-28 06:51:06,558.558 INFO    ] 200
[2026-10-28 06:51:06,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:51:06,606.606 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:51:06,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:51:06,688.688 INFO    ] No camera update needed
[2026-10-28 06:51:06,691.691 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:51:06,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:51:06,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:51:06,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:51:08,743.743 INFO    ] ================================================
[2026-10-28 06:51:08,758.758 INFO    ] Launching Daemon at Wed Oct 28 06:51:08 IST 2026
[2026-10-28 06:51:08,768.768 INFO    ] ================================================
[2026-10-28 06:51:09,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:51:09
[2026-10-28 06:51:09,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:51:10,252.252 INFO    ] Initializing speech engine...
[2026-10-28 06:51:10,260.260 INFO    ] 2026-10-28 06:51:10
[2026-10-28 06:51:10,519.519 INFO    ] 2026-10-28 06:51:10
[2026-10-28 06:51:10,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:51:10,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:51:10,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:51:11,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:51:11,077.077 INFO    ] time= 28/10/2026 06:51:11
[2026-10-28 06:51:11,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:51:11,115.115 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:51:11,219.219 INFO    ] No existing commands found in stream
[2026-10-28 06:51:16,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:51:16,245.245 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-28 06:51:19,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:51:20,001.001 INFO    ] Checking for system updates...
[2026-10-28 06:51:20,038.038 INFO    ] 200
[2026-10-28 06:51:20,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:51:20,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:51:20,104.104 INFO    ] No update needed
[2026-10-28 06:51:20,107.107 INFO    ] Checking for camera pi updates...
[2026-10-28 06:51:20,147.147 INFO    ] 200
[2026-10-28 06:51:20,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:51:20,200.200 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:51:20,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:51:20,271.271 INFO    ] No camera update needed
[2026-10-28 06:51:20,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:51:20,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:51:20,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:51:20,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:51:22,333.333 INFO    ] ================================================
[2026-10-28 06:51:22,350.350 INFO    ] Launching Daemon at Wed Oct 28 06:51:22 IST 2026
[2026-10-28 06:51:22,363.363 INFO    ] ================================================
[2026-10-28 06:51:22,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:51:22
[2026-10-28 06:51:23,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:51:23,776.776 INFO    ] Initializing speech engine...
[2026-10-28 06:51:23,788.788 INFO    ] 2026-10-28 06:51:23
[2026-10-28 06:51:24,054.054 INFO    ] 2026-10-28 06:51:24
[2026-10-28 06:51:24,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:51:24,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:51:24,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:51:24,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:51:24,550.550 INFO    ] time= 28/10/2026 06:51:24
[2026-10-28 06:51:24,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:51:24,628.628 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:51:24,778.778 INFO    ] No existing commands found in stream
[2026-10-28 06:51:29,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:51:29,795.795 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-28 06:51:33,972.972 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:51:33,975.975 INFO    ] Checking for system updates...
[2026-10-28 06:51:34,011.011 INFO    ] 200
[2026-10-28 06:51:34,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:51:34,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:51:34,075.075 INFO    ] No update needed
[2026-10-28 06:51:34,078.078 INFO    ] Checking for camera pi updates...
[2026-10-28 06:51:34,115.115 INFO    ] 200
[2026-10-28 06:51:34,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:51:34,158.158 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:51:34,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:51:34,240.240 INFO    ] No camera update needed
[2026-10-28 06:51:34,242.242 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:51:34,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:51:34,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:51:34,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:51:36,296.296 INFO    ] ================================================
[2026-10-28 06:51:36,311.311 INFO    ] Launching Daemon at Wed Oct 28 06:51:36 IST 2026
[2026-10-28 06:51:36,322.322 INFO    ] ================================================
[2026-10-28 06:51:36,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:51:36
[2026-10-28 06:51:37,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:51:37,752.752 INFO    ] Initializing speech engine...
[2026-10-28 06:51:37,761.761 INFO    ] 2026-10-28 06:51:37
[2026-10-28 06:51:38,031.031 INFO    ] 2026-10-28 06:51:38
[2026-10-28 06:51:38,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:51:38,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:51:38,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:51:38,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:51:38,599.599 INFO    ] time= 28/10/2026 06:51:38
[2026-10-28 06:51:38,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:51:38,648.648 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:51:38,846.846 INFO    ] No existing commands found in stream
[2026-10-28 06:51:43,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:51:43,870.870 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 06:51:44,539.539 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:51:44,542.542 INFO    ] Checking for system updates...
[2026-10-28 06:51:44,578.578 INFO    ] 200
[2026-10-28 06:51:44,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:51:44,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:51:44,636.636 INFO    ] No update needed
[2026-10-28 06:51:44,638.638 INFO    ] Checking for camera pi updates...
[2026-10-28 06:51:44,673.673 INFO    ] 200
[2026-10-28 06:51:44,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:51:44,717.717 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:51:44,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:51:44,802.802 INFO    ] No camera update needed
[2026-10-28 06:51:44,805.805 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:51:44,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:51:44,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:51:44,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:51:46,856.856 INFO    ] ================================================
[2026-10-28 06:51:46,872.872 INFO    ] Launching Daemon at Wed Oct 28 06:51:46 IST 2026
[2026-10-28 06:51:46,883.883 INFO    ] ================================================
[2026-10-28 06:51:47,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:51:47
[2026-10-28 06:51:48,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:51:48,517.517 INFO    ] Initializing speech engine...
[2026-10-28 06:51:48,526.526 INFO    ] 2026-10-28 06:51:48
[2026-10-28 06:51:48,816.816 INFO    ] 2026-10-28 06:51:48
[2026-10-28 06:51:48,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:51:49,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:51:49,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:51:49,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:51:49,385.385 INFO    ] time= 28/10/2026 06:51:49
[2026-10-28 06:51:49,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:51:49,423.423 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:51:49,541.541 INFO    ] No existing commands found in stream
[2026-10-28 06:51:54,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:51:54,570.570 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 06:51:56,257.257 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:51:56,261.261 INFO    ] Checking for system updates...
[2026-10-28 06:51:56,302.302 INFO    ] 200
[2026-10-28 06:51:56,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:51:56,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:51:56,367.367 INFO    ] No update needed
[2026-10-28 06:51:56,369.369 INFO    ] Checking for camera pi updates...
[2026-10-28 06:51:56,404.404 INFO    ] 200
[2026-10-28 06:51:56,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:51:56,448.448 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:51:56,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:51:56,533.533 INFO    ] No camera update needed
[2026-10-28 06:51:56,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:51:56,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:51:56,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:51:56,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:51:58,589.589 INFO    ] ================================================
[2026-10-28 06:51:58,605.605 INFO    ] Launching Daemon at Wed Oct 28 06:51:58 IST 2026
[2026-10-28 06:51:58,616.616 INFO    ] ================================================
[2026-10-28 06:51:59,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:51:59
[2026-10-28 06:51:59,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:52:00,084.084 INFO    ] Initializing speech engine...
[2026-10-28 06:52:00,090.090 INFO    ] 2026-10-28 06:52:00
[2026-10-28 06:52:00,362.362 INFO    ] 2026-10-28 06:52:00
[2026-10-28 06:52:00,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:52:00,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:52:00,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:52:00,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:52:00,930.930 INFO    ] time= 28/10/2026 06:52:00
[2026-10-28 06:52:00,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:52:00,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:52:01,095.095 INFO    ] No existing commands found in stream
[2026-10-28 06:52:06,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:52:06,128.128 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 06:52:08,160.160 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:52:08,162.162 INFO    ] Checking for system updates...
[2026-10-28 06:52:08,203.203 INFO    ] 200
[2026-10-28 06:52:08,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:52:08,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:52:08,268.268 INFO    ] No update needed
[2026-10-28 06:52:08,271.271 INFO    ] Checking for camera pi updates...
[2026-10-28 06:52:08,306.306 INFO    ] 200
[2026-10-28 06:52:08,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:52:08,351.351 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:52:08,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:52:08,449.449 INFO    ] No camera update needed
[2026-10-28 06:52:08,452.452 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:52:08,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:52:08,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:52:08,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:52:10,512.512 INFO    ] ================================================
[2026-10-28 06:52:10,528.528 INFO    ] Launching Daemon at Wed Oct 28 06:52:10 IST 2026
[2026-10-28 06:52:10,540.540 INFO    ] ================================================
[2026-10-28 06:52:11,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:52:11
[2026-10-28 06:52:11,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:52:11,993.993 INFO    ] Initializing speech engine...
[2026-10-28 06:52:12,002.002 INFO    ] 2026-10-28 06:52:11
[2026-10-28 06:52:12,251.251 INFO    ] 2026-10-28 06:52:12
[2026-10-28 06:52:12,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:52:12,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:52:12,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:52:12,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:52:12,823.823 INFO    ] time= 28/10/2026 06:52:12
[2026-10-28 06:52:12,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:52:12,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:52:12,977.977 INFO    ] No existing commands found in stream
[2026-10-28 06:52:18,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:52:18,010.010 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-28 06:52:20,917.917 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:52:20,919.919 INFO    ] Checking for system updates...
[2026-10-28 06:52:20,958.958 INFO    ] 200
[2026-10-28 06:52:20,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:52:21,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:52:21,017.017 INFO    ] No update needed
[2026-10-28 06:52:21,020.020 INFO    ] Checking for camera pi updates...
[2026-10-28 06:52:21,053.053 INFO    ] 200
[2026-10-28 06:52:21,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:52:21,100.100 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:52:21,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:52:21,284.284 INFO    ] No camera update needed
[2026-10-28 06:52:21,287.287 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:52:21,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:52:21,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:52:21,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:52:23,348.348 INFO    ] ================================================
[2026-10-28 06:52:23,364.364 INFO    ] Launching Daemon at Wed Oct 28 06:52:23 IST 2026
[2026-10-28 06:52:23,376.376 INFO    ] ================================================
[2026-10-28 06:52:23,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:52:23
[2026-10-28 06:52:24,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:52:24,810.810 INFO    ] Initializing speech engine...
[2026-10-28 06:52:24,819.819 INFO    ] 2026-10-28 06:52:24
[2026-10-28 06:52:25,069.069 INFO    ] 2026-10-28 06:52:25
[2026-10-28 06:52:25,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:52:25,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:52:25,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:52:25,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:52:25,635.635 INFO    ] time= 28/10/2026 06:52:25
[2026-10-28 06:52:25,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:52:25,660.660 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:52:25,809.809 INFO    ] No existing commands found in stream
[2026-10-28 06:52:30,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:52:30,848.848 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-28 06:52:34,798.798 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:52:34,800.800 INFO    ] Checking for system updates...
[2026-10-28 06:52:34,836.836 INFO    ] 200
[2026-10-28 06:52:34,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:52:34,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:52:34,900.900 INFO    ] No update needed
[2026-10-28 06:52:34,902.902 INFO    ] Checking for camera pi updates...
[2026-10-28 06:52:34,939.939 INFO    ] 200
[2026-10-28 06:52:34,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:52:34,983.983 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:52:35,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:52:35,066.066 INFO    ] No camera update needed
[2026-10-28 06:52:35,069.069 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:52:35,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:52:35,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:52:35,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:52:37,125.125 INFO    ] ================================================
[2026-10-28 06:52:37,140.140 INFO    ] Launching Daemon at Wed Oct 28 06:52:37 IST 2026
[2026-10-28 06:52:37,150.150 INFO    ] ================================================
[2026-10-28 06:52:37,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:52:37
[2026-10-28 06:52:38,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:52:38,544.544 INFO    ] Initializing speech engine...
[2026-10-28 06:52:38,552.552 INFO    ] 2026-10-28 06:52:38
[2026-10-28 06:52:38,827.827 INFO    ] 2026-10-28 06:52:38
[2026-10-28 06:52:38,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:52:39,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:52:39,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:52:39,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:52:39,395.395 INFO    ] time= 28/10/2026 06:52:39
[2026-10-28 06:52:39,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:52:39,419.419 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:52:39,552.552 INFO    ] No existing commands found in stream
[2026-10-28 06:52:44,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:52:44,569.569 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-28 06:52:47,863.863 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:52:47,866.866 INFO    ] Checking for system updates...
[2026-10-28 06:52:47,904.904 INFO    ] 200
[2026-10-28 06:52:47,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:52:47,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:52:47,963.963 INFO    ] No update needed
[2026-10-28 06:52:47,966.966 INFO    ] Checking for camera pi updates...
[2026-10-28 06:52:48,001.001 INFO    ] 200
[2026-10-28 06:52:48,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:52:48,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:52:48,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:52:48,141.141 INFO    ] No camera update needed
[2026-10-28 06:52:48,144.144 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:52:48,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:52:48,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:52:48,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:52:50,200.200 INFO    ] ================================================
[2026-10-28 06:52:50,215.215 INFO    ] Launching Daemon at Wed Oct 28 06:52:50 IST 2026
[2026-10-28 06:52:50,226.226 INFO    ] ================================================
[2026-10-28 06:52:50,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:52:50
[2026-10-28 06:52:51,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:52:51,671.671 INFO    ] Initializing speech engine...
[2026-10-28 06:52:51,677.677 INFO    ] 2026-10-28 06:52:51
[2026-10-28 06:52:51,994.994 INFO    ] 2026-10-28 06:52:51
[2026-10-28 06:52:52,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:52:52,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:52:52,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:52:52,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:52:52,519.519 INFO    ] time= 28/10/2026 06:52:52
[2026-10-28 06:52:52,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:52:52,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:52:52,698.698 INFO    ] No existing commands found in stream
[2026-10-28 06:52:57,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:52:57,715.715 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-28 06:52:59,756.756 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:52:59,759.759 INFO    ] Checking for system updates...
[2026-10-28 06:52:59,797.797 INFO    ] 200
[2026-10-28 06:52:59,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:52:59,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:52:59,855.855 INFO    ] No update needed
[2026-10-28 06:52:59,857.857 INFO    ] Checking for camera pi updates...
[2026-10-28 06:52:59,890.890 INFO    ] 200
[2026-10-28 06:52:59,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:52:59,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:53:00,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:53:00,016.016 INFO    ] No camera update needed
[2026-10-28 06:53:00,019.019 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:53:00,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:53:00,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:53:00,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:53:02,075.075 INFO    ] ================================================
[2026-10-28 06:53:02,096.096 INFO    ] Launching Daemon at Wed Oct 28 06:53:02 IST 2026
[2026-10-28 06:53:02,112.112 INFO    ] ================================================
[2026-10-28 06:53:02,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:53:02
[2026-10-28 06:53:03,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:53:03,694.694 INFO    ] Initializing speech engine...
[2026-10-28 06:53:03,703.703 INFO    ] 2026-10-28 06:53:03
[2026-10-28 06:53:03,948.948 INFO    ] 2026-10-28 06:53:03
[2026-10-28 06:53:04,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:53:04,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:53:04,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:53:04,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:53:04,446.446 INFO    ] time= 28/10/2026 06:53:04
[2026-10-28 06:53:04,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:53:04,510.510 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:53:04,653.653 INFO    ] No existing commands found in stream
[2026-10-28 06:53:09,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:53:09,669.669 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-28 06:53:12,691.691 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:53:12,693.693 INFO    ] Checking for system updates...
[2026-10-28 06:53:12,729.729 INFO    ] 200
[2026-10-28 06:53:12,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:53:12,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:53:12,792.792 INFO    ] No update needed
[2026-10-28 06:53:12,794.794 INFO    ] Checking for camera pi updates...
[2026-10-28 06:53:12,830.830 INFO    ] 200
[2026-10-28 06:53:12,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:53:12,875.875 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:53:12,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:53:12,956.956 INFO    ] No camera update needed
[2026-10-28 06:53:12,958.958 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:53:12,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:53:12,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:53:12,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:53:15,011.011 INFO    ] ================================================
[2026-10-28 06:53:15,026.026 INFO    ] Launching Daemon at Wed Oct 28 06:53:15 IST 2026
[2026-10-28 06:53:15,037.037 INFO    ] ================================================
[2026-10-28 06:53:15,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:53:15
[2026-10-28 06:53:16,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:53:16,467.467 INFO    ] Initializing speech engine...
[2026-10-28 06:53:16,474.474 INFO    ] 2026-10-28 06:53:16
[2026-10-28 06:53:16,734.734 INFO    ] 2026-10-28 06:53:16
[2026-10-28 06:53:16,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:53:17,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:53:17,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:53:17,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:53:17,277.277 INFO    ] time= 28/10/2026 06:53:17
[2026-10-28 06:53:17,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:53:17,312.312 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:53:17,439.439 INFO    ] No existing commands found in stream
[2026-10-28 06:53:22,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:53:22,466.466 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-28 06:53:25,881.881 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:53:25,884.884 INFO    ] Checking for system updates...
[2026-10-28 06:53:25,919.919 INFO    ] 200
[2026-10-28 06:53:25,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:53:25,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:53:25,976.976 INFO    ] No update needed
[2026-10-28 06:53:25,978.978 INFO    ] Checking for camera pi updates...
[2026-10-28 06:53:26,015.015 INFO    ] 200
[2026-10-28 06:53:26,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:53:26,061.061 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:53:26,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:53:26,146.146 INFO    ] No camera update needed
[2026-10-28 06:53:26,148.148 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:53:26,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:53:26,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:53:26,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:53:28,201.201 INFO    ] ================================================
[2026-10-28 06:53:28,217.217 INFO    ] Launching Daemon at Wed Oct 28 06:53:28 IST 2026
[2026-10-28 06:53:28,228.228 INFO    ] ================================================
[2026-10-28 06:53:28,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:53:28
[2026-10-28 06:53:29,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:53:29,658.658 INFO    ] Initializing speech engine...
[2026-10-28 06:53:29,667.667 INFO    ] 2026-10-28 06:53:29
[2026-10-28 06:53:29,920.920 INFO    ] 2026-10-28 06:53:29
[2026-10-28 06:53:29,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:53:30,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:53:30,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:53:30,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:53:30,635.635 INFO    ] time= 28/10/2026 06:53:30
[2026-10-28 06:53:30,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:53:30,716.716 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:53:30,865.865 INFO    ] No existing commands found in stream
[2026-10-28 06:53:35,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:53:35,885.885 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 06:53:38,420.420 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:53:38,422.422 INFO    ] Checking for system updates...
[2026-10-28 06:53:38,459.459 INFO    ] 200
[2026-10-28 06:53:38,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:53:38,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:53:38,517.517 INFO    ] No update needed
[2026-10-28 06:53:38,520.520 INFO    ] Checking for camera pi updates...
[2026-10-28 06:53:38,554.554 INFO    ] 200
[2026-10-28 06:53:38,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:53:38,598.598 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:53:38,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:53:38,663.663 INFO    ] No camera update needed
[2026-10-28 06:53:38,666.666 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:53:38,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:53:38,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:53:38,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:53:40,720.720 INFO    ] ================================================
[2026-10-28 06:53:40,735.735 INFO    ] Launching Daemon at Wed Oct 28 06:53:40 IST 2026
[2026-10-28 06:53:40,746.746 INFO    ] ================================================
[2026-10-28 06:53:41,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:53:41
[2026-10-28 06:53:41,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:53:42,148.148 INFO    ] Initializing speech engine...
[2026-10-28 06:53:42,156.156 INFO    ] 2026-10-28 06:53:42
[2026-10-28 06:53:42,442.442 INFO    ] 2026-10-28 06:53:42
[2026-10-28 06:53:42,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:53:42,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:53:42,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:53:42,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:53:43,031.031 INFO    ] time= 28/10/2026 06:53:42
[2026-10-28 06:53:43,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:53:43,056.056 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:53:43,197.197 INFO    ] No existing commands found in stream
[2026-10-28 06:53:48,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:53:48,229.229 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-28 06:53:49,139.139 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:53:49,141.141 INFO    ] Checking for system updates...
[2026-10-28 06:53:49,176.176 INFO    ] 200
[2026-10-28 06:53:49,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:53:49,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:53:49,234.234 INFO    ] No update needed
[2026-10-28 06:53:49,236.236 INFO    ] Checking for camera pi updates...
[2026-10-28 06:53:49,272.272 INFO    ] 200
[2026-10-28 06:53:49,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:53:49,317.317 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:53:49,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:53:49,402.402 INFO    ] No camera update needed
[2026-10-28 06:53:49,405.405 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:53:49,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:53:49,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:53:49,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:53:51,457.457 INFO    ] ================================================
[2026-10-28 06:53:51,473.473 INFO    ] Launching Daemon at Wed Oct 28 06:53:51 IST 2026
[2026-10-28 06:53:51,484.484 INFO    ] ================================================
[2026-10-28 06:53:52,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:53:52
[2026-10-28 06:53:52,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:53:52,989.989 INFO    ] Initializing speech engine...
[2026-10-28 06:53:52,997.997 INFO    ] 2026-10-28 06:53:52
[2026-10-28 06:53:53,278.278 INFO    ] 2026-10-28 06:53:53
[2026-10-28 06:53:53,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:53:53,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:53:53,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:53:53,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:53:53,830.830 INFO    ] time= 28/10/2026 06:53:53
[2026-10-28 06:53:53,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:53:53,866.866 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:53:53,986.986 INFO    ] No existing commands found in stream
[2026-10-28 06:53:59,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:53:59,019.019 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-28 06:54:00,183.183 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:54:00,186.186 INFO    ] Checking for system updates...
[2026-10-28 06:54:00,222.222 INFO    ] 200
[2026-10-28 06:54:00,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:54:00,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:54:00,285.285 INFO    ] No update needed
[2026-10-28 06:54:00,287.287 INFO    ] Checking for camera pi updates...
[2026-10-28 06:54:00,324.324 INFO    ] 200
[2026-10-28 06:54:00,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:54:00,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:54:00,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:54:00,454.454 INFO    ] No camera update needed
[2026-10-28 06:54:00,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:54:00,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:54:00,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:54:00,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:54:02,517.517 INFO    ] ================================================
[2026-10-28 06:54:02,532.532 INFO    ] Launching Daemon at Wed Oct 28 06:54:02 IST 2026
[2026-10-28 06:54:02,544.544 INFO    ] ================================================
[2026-10-28 06:54:03,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:54:03
[2026-10-28 06:54:03,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:54:04,013.013 INFO    ] Initializing speech engine...
[2026-10-28 06:54:04,037.037 INFO    ] 2026-10-28 06:54:04
[2026-10-28 06:54:04,303.303 INFO    ] 2026-10-28 06:54:04
[2026-10-28 06:54:04,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:54:04,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:54:04,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:54:04,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:54:04,921.921 INFO    ] time= 28/10/2026 06:54:04
[2026-10-28 06:54:04,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:54:04,946.946 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:54:05,090.090 INFO    ] No existing commands found in stream
[2026-10-28 06:54:10,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:54:10,107.107 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-28 06:54:11,620.620 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:54:11,623.623 INFO    ] Checking for system updates...
[2026-10-28 06:54:11,659.659 INFO    ] 200
[2026-10-28 06:54:11,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:54:11,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:54:11,717.717 INFO    ] No update needed
[2026-10-28 06:54:11,719.719 INFO    ] Checking for camera pi updates...
[2026-10-28 06:54:11,753.753 INFO    ] 200
[2026-10-28 06:54:11,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:54:11,796.796 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:54:11,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:54:11,877.877 INFO    ] No camera update needed
[2026-10-28 06:54:11,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:54:11,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:54:11,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:54:11,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:54:13,934.934 INFO    ] ================================================
[2026-10-28 06:54:13,950.950 INFO    ] Launching Daemon at Wed Oct 28 06:54:13 IST 2026
[2026-10-28 06:54:13,961.961 INFO    ] ================================================
[2026-10-28 06:54:14,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:54:14
[2026-10-28 06:54:15,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:54:15,540.540 INFO    ] Initializing speech engine...
[2026-10-28 06:54:15,550.550 INFO    ] 2026-10-28 06:54:15
[2026-10-28 06:54:15,834.834 INFO    ] 2026-10-28 06:54:15
[2026-10-28 06:54:15,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:54:16,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:54:16,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:54:16,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:54:16,387.387 INFO    ] time= 28/10/2026 06:54:16
[2026-10-28 06:54:16,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:54:16,412.412 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:54:16,528.528 INFO    ] No existing commands found in stream
[2026-10-28 06:54:21,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:54:21,559.559 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-28 06:54:23,315.315 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:54:23,318.318 INFO    ] Checking for system updates...
[2026-10-28 06:54:23,355.355 INFO    ] 200
[2026-10-28 06:54:23,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:54:23,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:54:23,416.416 INFO    ] No update needed
[2026-10-28 06:54:23,418.418 INFO    ] Checking for camera pi updates...
[2026-10-28 06:54:23,459.459 INFO    ] 200
[2026-10-28 06:54:23,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:54:23,502.502 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:54:23,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:54:23,682.682 INFO    ] No camera update needed
[2026-10-28 06:54:23,684.684 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:54:23,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:54:23,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:54:23,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:54:25,737.737 INFO    ] ================================================
[2026-10-28 06:54:25,753.753 INFO    ] Launching Daemon at Wed Oct 28 06:54:25 IST 2026
[2026-10-28 06:54:25,763.763 INFO    ] ================================================
[2026-10-28 06:54:26,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:54:26
[2026-10-28 06:54:27,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:54:27,340.340 INFO    ] Initializing speech engine...
[2026-10-28 06:54:27,350.350 INFO    ] 2026-10-28 06:54:27
[2026-10-28 06:54:27,624.624 INFO    ] 2026-10-28 06:54:27
[2026-10-28 06:54:27,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:54:27,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:54:27,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:54:28,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:54:28,175.175 INFO    ] time= 28/10/2026 06:54:28
[2026-10-28 06:54:28,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:54:28,222.222 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:54:28,355.355 INFO    ] No existing commands found in stream
[2026-10-28 06:54:33,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:54:33,388.388 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-28 06:54:35,038.038 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:54:35,041.041 INFO    ] Checking for system updates...
[2026-10-28 06:54:35,077.077 INFO    ] 200
[2026-10-28 06:54:35,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:54:35,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:54:35,140.140 INFO    ] No update needed
[2026-10-28 06:54:35,143.143 INFO    ] Checking for camera pi updates...
[2026-10-28 06:54:35,180.180 INFO    ] 200
[2026-10-28 06:54:35,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:54:35,224.224 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:54:35,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:54:35,316.316 INFO    ] No camera update needed
[2026-10-28 06:54:35,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:54:35,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:54:35,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:54:35,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:54:37,376.376 INFO    ] ================================================
[2026-10-28 06:54:37,390.390 INFO    ] Launching Daemon at Wed Oct 28 06:54:37 IST 2026
[2026-10-28 06:54:37,401.401 INFO    ] ================================================
[2026-10-28 06:54:37,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:54:37
[2026-10-28 06:54:38,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:54:38,822.822 INFO    ] Initializing speech engine...
[2026-10-28 06:54:38,832.832 INFO    ] 2026-10-28 06:54:38
[2026-10-28 06:54:39,077.077 INFO    ] 2026-10-28 06:54:39
[2026-10-28 06:54:39,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:54:39,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:54:39,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:54:39,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:54:39,650.650 INFO    ] time= 28/10/2026 06:54:39
[2026-10-28 06:54:39,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:54:39,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:54:39,804.804 INFO    ] No existing commands found in stream
[2026-10-28 06:54:44,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:54:44,818.818 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 06:54:48,474.474 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:54:48,477.477 INFO    ] Checking for system updates...
[2026-10-28 06:54:48,512.512 INFO    ] 200
[2026-10-28 06:54:48,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:54:48,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:54:48,570.570 INFO    ] No update needed
[2026-10-28 06:54:48,573.573 INFO    ] Checking for camera pi updates...
[2026-10-28 06:54:48,606.606 INFO    ] 200
[2026-10-28 06:54:48,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:54:48,648.648 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:54:48,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:54:48,715.715 INFO    ] No camera update needed
[2026-10-28 06:54:48,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:54:48,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:54:48,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:54:48,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:54:50,769.769 INFO    ] ================================================
[2026-10-28 06:54:50,784.784 INFO    ] Launching Daemon at Wed Oct 28 06:54:50 IST 2026
[2026-10-28 06:54:50,794.794 INFO    ] ================================================
[2026-10-28 06:54:51,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:54:51
[2026-10-28 06:54:51,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:54:52,205.205 INFO    ] Initializing speech engine...
[2026-10-28 06:54:52,223.223 INFO    ] 2026-10-28 06:54:52
[2026-10-28 06:54:52,478.478 INFO    ] 2026-10-28 06:54:52
[2026-10-28 06:54:52,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:54:52,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:54:52,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:54:53,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:54:53,046.046 INFO    ] time= 28/10/2026 06:54:53
[2026-10-28 06:54:53,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:54:53,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:54:53,204.204 INFO    ] No existing commands found in stream
[2026-10-28 06:54:58,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:54:58,225.225 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-28 06:54:59,177.177 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:54:59,180.180 INFO    ] Checking for system updates...
[2026-10-28 06:54:59,215.215 INFO    ] 200
[2026-10-28 06:54:59,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:54:59,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:54:59,274.274 INFO    ] No update needed
[2026-10-28 06:54:59,277.277 INFO    ] Checking for camera pi updates...
[2026-10-28 06:54:59,310.310 INFO    ] 200
[2026-10-28 06:54:59,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:54:59,352.352 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:54:59,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:54:59,460.460 INFO    ] No camera update needed
[2026-10-28 06:54:59,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:54:59,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:54:59,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:54:59,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:55:01,542.542 INFO    ] ================================================
[2026-10-28 06:55:01,595.595 INFO    ] Launching Daemon at Wed Oct 28 06:55:01 IST 2026
[2026-10-28 06:55:01,618.618 INFO    ] ================================================
[2026-10-28 06:55:02,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:55:02
[2026-10-28 06:55:03,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:55:03,363.363 INFO    ] Initializing speech engine...
[2026-10-28 06:55:03,369.369 INFO    ] 2026-10-28 06:55:03
[2026-10-28 06:55:03,626.626 INFO    ] 2026-10-28 06:55:03
[2026-10-28 06:55:03,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:55:03,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:55:03,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:55:04,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:55:04,186.186 INFO    ] time= 28/10/2026 06:55:04
[2026-10-28 06:55:04,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:55:04,232.232 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:55:04,363.363 INFO    ] No existing commands found in stream
[2026-10-28 06:55:09,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:55:09,391.391 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 06:55:15,421.421 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:55:15,424.424 INFO    ] Checking for system updates...
[2026-10-28 06:55:15,460.460 INFO    ] 200
[2026-10-28 06:55:15,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:55:15,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:55:15,519.519 INFO    ] No update needed
[2026-10-28 06:55:15,521.521 INFO    ] Checking for camera pi updates...
[2026-10-28 06:55:15,556.556 INFO    ] 200
[2026-10-28 06:55:15,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:55:15,599.599 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:55:15,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:55:15,666.666 INFO    ] No camera update needed
[2026-10-28 06:55:15,668.668 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:55:15,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:55:15,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:55:15,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:55:17,720.720 INFO    ] ================================================
[2026-10-28 06:55:17,736.736 INFO    ] Launching Daemon at Wed Oct 28 06:55:17 IST 2026
[2026-10-28 06:55:17,746.746 INFO    ] ================================================
[2026-10-28 06:55:18,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:55:18
[2026-10-28 06:55:18,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:55:19,193.193 INFO    ] Initializing speech engine...
[2026-10-28 06:55:19,200.200 INFO    ] 2026-10-28 06:55:19
[2026-10-28 06:55:19,461.461 INFO    ] 2026-10-28 06:55:19
[2026-10-28 06:55:19,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:55:19,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:55:19,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:55:19,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:55:20,006.006 INFO    ] time= 28/10/2026 06:55:19
[2026-10-28 06:55:20,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:55:20,030.030 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:55:20,162.162 INFO    ] No existing commands found in stream
[2026-10-28 06:55:25,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:55:25,187.187 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 06:55:27,276.276 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:55:27,278.278 INFO    ] Checking for system updates...
[2026-10-28 06:55:27,315.315 INFO    ] 200
[2026-10-28 06:55:27,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:55:27,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:55:27,372.372 INFO    ] No update needed
[2026-10-28 06:55:27,374.374 INFO    ] Checking for camera pi updates...
[2026-10-28 06:55:27,411.411 INFO    ] 200
[2026-10-28 06:55:27,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:55:27,454.454 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:55:27,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:55:27,546.546 INFO    ] No camera update needed
[2026-10-28 06:55:27,548.548 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:55:27,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:55:27,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:55:27,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:55:29,602.602 INFO    ] ================================================
[2026-10-28 06:55:29,618.618 INFO    ] Launching Daemon at Wed Oct 28 06:55:29 IST 2026
[2026-10-28 06:55:29,629.629 INFO    ] ================================================
[2026-10-28 06:55:30,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:55:30
[2026-10-28 06:55:30,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:55:31,039.039 INFO    ] Initializing speech engine...
[2026-10-28 06:55:31,046.046 INFO    ] 2026-10-28 06:55:31
[2026-10-28 06:55:31,329.329 INFO    ] 2026-10-28 06:55:31
[2026-10-28 06:55:31,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:55:31,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:55:31,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:55:31,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:55:31,881.881 INFO    ] time= 28/10/2026 06:55:31
[2026-10-28 06:55:31,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:55:31,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:55:32,147.147 INFO    ] No existing commands found in stream
[2026-10-28 06:55:37,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:55:37,173.173 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-28 06:55:40,448.448 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:55:40,451.451 INFO    ] Checking for system updates...
[2026-10-28 06:55:40,486.486 INFO    ] 200
[2026-10-28 06:55:40,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:55:40,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:55:40,548.548 INFO    ] No update needed
[2026-10-28 06:55:40,550.550 INFO    ] Checking for camera pi updates...
[2026-10-28 06:55:40,583.583 INFO    ] 200
[2026-10-28 06:55:40,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:55:40,629.629 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:55:40,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:55:40,714.714 INFO    ] No camera update needed
[2026-10-28 06:55:40,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:55:40,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:55:40,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:55:40,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:55:42,769.769 INFO    ] ================================================
[2026-10-28 06:55:42,784.784 INFO    ] Launching Daemon at Wed Oct 28 06:55:42 IST 2026
[2026-10-28 06:55:42,794.794 INFO    ] ================================================
[2026-10-28 06:55:43,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:55:43
[2026-10-28 06:55:43,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:55:44,266.266 INFO    ] Initializing speech engine...
[2026-10-28 06:55:44,276.276 INFO    ] 2026-10-28 06:55:44
[2026-10-28 06:55:44,541.541 INFO    ] 2026-10-28 06:55:44
[2026-10-28 06:55:44,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:55:44,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:55:44,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:55:45,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:55:45,046.046 INFO    ] time= 28/10/2026 06:55:45
[2026-10-28 06:55:45,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:55:45,139.139 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:55:45,282.282 INFO    ] No existing commands found in stream
[2026-10-28 06:55:50,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:55:50,312.312 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 06:55:54,573.573 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 06:55:54,576.576 INFO    ] Checking for system updates...
[2026-10-28 06:55:54,615.615 INFO    ] 200
[2026-10-28 06:55:54,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:55:54,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:55:54,678.678 INFO    ] No update needed
[2026-10-28 06:55:54,681.681 INFO    ] Checking for camera pi updates...
[2026-10-28 06:55:54,717.717 INFO    ] 200
[2026-10-28 06:55:54,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:55:54,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:55:54,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:55:54,844.844 INFO    ] No camera update needed
[2026-10-28 06:55:54,847.847 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:55:54,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:55:54,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:55:54,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:55:56,902.902 INFO    ] ================================================
[2026-10-28 06:55:56,917.917 INFO    ] Launching Daemon at Wed Oct 28 06:55:56 IST 2026
[2026-10-28 06:55:56,928.928 INFO    ] ================================================
[2026-10-28 06:55:57,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:55:57
[2026-10-28 06:55:58,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:55:58,477.477 INFO    ] Initializing speech engine...
[2026-10-28 06:55:58,491.491 INFO    ] 2026-10-28 06:55:58
[2026-10-28 06:55:58,793.793 INFO    ] 2026-10-28 06:55:58
[2026-10-28 06:55:58,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:55:59,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:55:59,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:55:59,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:55:59,310.310 INFO    ] time= 28/10/2026 06:55:59
[2026-10-28 06:55:59,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:55:59,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:55:59,475.475 INFO    ] No existing commands found in stream
[2026-10-28 06:56:04,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:56:04,515.515 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 06:56:05,557.557 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:56:05,560.560 INFO    ] Checking for system updates...
[2026-10-28 06:56:05,596.596 INFO    ] 200
[2026-10-28 06:56:05,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:56:05,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:56:05,660.660 INFO    ] No update needed
[2026-10-28 06:56:05,663.663 INFO    ] Checking for camera pi updates...
[2026-10-28 06:56:05,701.701 INFO    ] 200
[2026-10-28 06:56:05,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:56:05,746.746 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:56:05,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:56:05,850.850 INFO    ] No camera update needed
[2026-10-28 06:56:05,853.853 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:56:05,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:56:05,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:56:05,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:56:07,907.907 INFO    ] ================================================
[2026-10-28 06:56:07,922.922 INFO    ] Launching Daemon at Wed Oct 28 06:56:07 IST 2026
[2026-10-28 06:56:07,932.932 INFO    ] ================================================
[2026-10-28 06:56:08,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:56:08
[2026-10-28 06:56:09,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:56:09,335.335 INFO    ] Initializing speech engine...
[2026-10-28 06:56:09,343.343 INFO    ] 2026-10-28 06:56:09
[2026-10-28 06:56:09,615.615 INFO    ] 2026-10-28 06:56:09
[2026-10-28 06:56:09,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:56:09,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:56:09,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:56:10,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:56:10,185.185 INFO    ] time= 28/10/2026 06:56:10
[2026-10-28 06:56:10,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:56:10,209.209 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:56:10,340.340 INFO    ] No existing commands found in stream
[2026-10-28 06:56:15,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:56:15,357.357 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 06:56:17,812.812 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:56:17,815.815 INFO    ] Checking for system updates...
[2026-10-28 06:56:17,867.867 INFO    ] 200
[2026-10-28 06:56:17,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:56:17,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:56:17,923.923 INFO    ] No update needed
[2026-10-28 06:56:17,926.926 INFO    ] Checking for camera pi updates...
[2026-10-28 06:56:17,962.962 INFO    ] 200
[2026-10-28 06:56:17,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:56:18,008.008 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:56:18,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:56:18,116.116 INFO    ] No camera update needed
[2026-10-28 06:56:18,119.119 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:56:18,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:56:18,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:56:18,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:56:20,173.173 INFO    ] ================================================
[2026-10-28 06:56:20,188.188 INFO    ] Launching Daemon at Wed Oct 28 06:56:20 IST 2026
[2026-10-28 06:56:20,199.199 INFO    ] ================================================
[2026-10-28 06:56:20,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:56:20
[2026-10-28 06:56:21,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:56:21,768.768 INFO    ] Initializing speech engine...
[2026-10-28 06:56:21,777.777 INFO    ] 2026-10-28 06:56:21
[2026-10-28 06:56:22,047.047 INFO    ] 2026-10-28 06:56:22
[2026-10-28 06:56:22,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:56:22,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:56:22,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:56:22,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:56:22,626.626 INFO    ] time= 28/10/2026 06:56:22
[2026-10-28 06:56:22,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:56:22,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:56:22,812.812 INFO    ] No existing commands found in stream
[2026-10-28 06:56:27,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:56:27,841.841 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 06:56:29,965.965 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:56:29,968.968 INFO    ] Checking for system updates...
[2026-10-28 06:56:30,004.004 INFO    ] 200
[2026-10-28 06:56:30,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:56:30,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:56:30,062.062 INFO    ] No update needed
[2026-10-28 06:56:30,065.065 INFO    ] Checking for camera pi updates...
[2026-10-28 06:56:30,099.099 INFO    ] 200
[2026-10-28 06:56:30,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:56:30,144.144 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:56:30,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:56:30,346.346 INFO    ] No camera update needed
[2026-10-28 06:56:30,349.349 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:56:30,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:56:30,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:56:30,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:56:32,406.406 INFO    ] ================================================
[2026-10-28 06:56:32,423.423 INFO    ] Launching Daemon at Wed Oct 28 06:56:32 IST 2026
[2026-10-28 06:56:32,435.435 INFO    ] ================================================
[2026-10-28 06:56:33,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:56:33
[2026-10-28 06:56:33,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:56:33,935.935 INFO    ] Initializing speech engine...
[2026-10-28 06:56:33,941.941 INFO    ] 2026-10-28 06:56:33
[2026-10-28 06:56:34,227.227 INFO    ] 2026-10-28 06:56:34
[2026-10-28 06:56:34,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:56:34,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:56:34,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:56:34,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:56:34,842.842 INFO    ] time= 28/10/2026 06:56:34
[2026-10-28 06:56:34,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:56:34,866.866 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:56:35,000.000 INFO    ] No existing commands found in stream
[2026-10-28 06:56:40,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:56:40,026.026 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 06:56:42,369.369 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:56:42,371.371 INFO    ] Checking for system updates...
[2026-10-28 06:56:42,410.410 INFO    ] 200
[2026-10-28 06:56:42,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:56:42,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:56:42,466.466 INFO    ] No update needed
[2026-10-28 06:56:42,469.469 INFO    ] Checking for camera pi updates...
[2026-10-28 06:56:42,503.503 INFO    ] 200
[2026-10-28 06:56:42,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:56:42,550.550 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:56:42,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:56:42,634.634 INFO    ] No camera update needed
[2026-10-28 06:56:42,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:56:42,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:56:42,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:56:42,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:56:44,690.690 INFO    ] ================================================
[2026-10-28 06:56:44,705.705 INFO    ] Launching Daemon at Wed Oct 28 06:56:44 IST 2026
[2026-10-28 06:56:44,716.716 INFO    ] ================================================
[2026-10-28 06:56:45,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:56:45
[2026-10-28 06:56:45,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:56:46,187.187 INFO    ] Initializing speech engine...
[2026-10-28 06:56:46,197.197 INFO    ] 2026-10-28 06:56:46
[2026-10-28 06:56:46,460.460 INFO    ] 2026-10-28 06:56:46
[2026-10-28 06:56:46,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:56:46,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:56:46,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:56:47,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:56:47,074.074 INFO    ] time= 28/10/2026 06:56:47
[2026-10-28 06:56:47,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:56:47,101.101 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:56:47,238.238 INFO    ] No existing commands found in stream
[2026-10-28 06:56:52,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:56:52,260.260 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-28 06:56:54,257.257 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:56:54,259.259 INFO    ] Checking for system updates...
[2026-10-28 06:56:54,295.295 INFO    ] 200
[2026-10-28 06:56:54,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:56:54,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:56:54,361.361 INFO    ] No update needed
[2026-10-28 06:56:54,364.364 INFO    ] Checking for camera pi updates...
[2026-10-28 06:56:54,397.397 INFO    ] 200
[2026-10-28 06:56:54,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:56:54,443.443 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:56:54,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:56:54,550.550 INFO    ] No camera update needed
[2026-10-28 06:56:54,553.553 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:56:54,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:56:54,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:56:54,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:56:56,606.606 INFO    ] ================================================
[2026-10-28 06:56:56,620.620 INFO    ] Launching Daemon at Wed Oct 28 06:56:56 IST 2026
[2026-10-28 06:56:56,631.631 INFO    ] ================================================
[2026-10-28 06:56:57,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:56:57
[2026-10-28 06:56:57,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:56:58,072.072 INFO    ] Initializing speech engine...
[2026-10-28 06:56:58,097.097 INFO    ] 2026-10-28 06:56:58
[2026-10-28 06:56:58,366.366 INFO    ] 2026-10-28 06:56:58
[2026-10-28 06:56:58,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:56:58,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:56:58,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:56:58,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:56:58,978.978 INFO    ] time= 28/10/2026 06:56:58
[2026-10-28 06:56:58,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:56:59,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:56:59,116.116 INFO    ] No existing commands found in stream
[2026-10-28 06:57:04,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:57:04,144.144 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-28 06:57:06,715.715 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:57:06,718.718 INFO    ] Checking for system updates...
[2026-10-28 06:57:06,753.753 INFO    ] 200
[2026-10-28 06:57:06,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:57:06,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:57:06,810.810 INFO    ] No update needed
[2026-10-28 06:57:06,812.812 INFO    ] Checking for camera pi updates...
[2026-10-28 06:57:06,846.846 INFO    ] 200
[2026-10-28 06:57:06,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:57:06,889.889 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:57:06,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:57:06,976.976 INFO    ] No camera update needed
[2026-10-28 06:57:06,978.978 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:57:06,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:57:06,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:57:06,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:57:09,032.032 INFO    ] ================================================
[2026-10-28 06:57:09,048.048 INFO    ] Launching Daemon at Wed Oct 28 06:57:09 IST 2026
[2026-10-28 06:57:09,059.059 INFO    ] ================================================
[2026-10-28 06:57:09,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:57:09
[2026-10-28 06:57:10,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:57:10,511.511 INFO    ] Initializing speech engine...
[2026-10-28 06:57:10,522.522 INFO    ] 2026-10-28 06:57:10
[2026-10-28 06:57:10,782.782 INFO    ] 2026-10-28 06:57:10
[2026-10-28 06:57:10,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:57:11,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:57:11,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:57:11,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:57:11,337.337 INFO    ] time= 28/10/2026 06:57:11
[2026-10-28 06:57:11,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:57:11,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:57:11,492.492 INFO    ] No existing commands found in stream
[2026-10-28 06:57:16,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:57:16,520.520 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-28 06:57:17,554.554 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:57:17,557.557 INFO    ] Checking for system updates...
[2026-10-28 06:57:17,592.592 INFO    ] 200
[2026-10-28 06:57:17,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:57:17,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:57:17,651.651 INFO    ] No update needed
[2026-10-28 06:57:17,653.653 INFO    ] Checking for camera pi updates...
[2026-10-28 06:57:17,686.686 INFO    ] 200
[2026-10-28 06:57:17,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:57:17,729.729 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:57:17,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:57:17,809.809 INFO    ] No camera update needed
[2026-10-28 06:57:17,812.812 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:57:17,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:57:17,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:57:17,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:57:19,866.866 INFO    ] ================================================
[2026-10-28 06:57:19,881.881 INFO    ] Launching Daemon at Wed Oct 28 06:57:19 IST 2026
[2026-10-28 06:57:19,891.891 INFO    ] ================================================
[2026-10-28 06:57:20,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:57:20
[2026-10-28 06:57:21,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:57:21,351.351 INFO    ] Initializing speech engine...
[2026-10-28 06:57:21,361.361 INFO    ] 2026-10-28 06:57:21
[2026-10-28 06:57:21,626.626 INFO    ] 2026-10-28 06:57:21
[2026-10-28 06:57:21,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:57:21,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:57:21,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:57:22,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:57:22,234.234 INFO    ] time= 28/10/2026 06:57:22
[2026-10-28 06:57:22,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:57:22,264.264 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:57:22,404.404 INFO    ] No existing commands found in stream
[2026-10-28 06:57:27,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:57:27,425.425 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-28 06:57:29,114.114 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:57:29,117.117 INFO    ] Checking for system updates...
[2026-10-28 06:57:29,157.157 INFO    ] 200
[2026-10-28 06:57:29,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:57:29,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:57:29,219.219 INFO    ] No update needed
[2026-10-28 06:57:29,222.222 INFO    ] Checking for camera pi updates...
[2026-10-28 06:57:29,259.259 INFO    ] 200
[2026-10-28 06:57:29,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:57:29,311.311 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:57:29,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:57:29,397.397 INFO    ] No camera update needed
[2026-10-28 06:57:29,399.399 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:57:29,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:57:29,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:57:29,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:57:31,454.454 INFO    ] ================================================
[2026-10-28 06:57:31,475.475 INFO    ] Launching Daemon at Wed Oct 28 06:57:31 IST 2026
[2026-10-28 06:57:31,486.486 INFO    ] ================================================
[2026-10-28 06:57:32,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:57:32
[2026-10-28 06:57:32,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:57:32,988.988 INFO    ] Initializing speech engine...
[2026-10-28 06:57:32,999.999 INFO    ] 2026-10-28 06:57:32
[2026-10-28 06:57:33,273.273 INFO    ] 2026-10-28 06:57:33
[2026-10-28 06:57:33,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:57:33,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:57:33,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:57:33,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:57:33,851.851 INFO    ] time= 28/10/2026 06:57:33
[2026-10-28 06:57:33,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:57:33,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:57:34,047.047 INFO    ] No existing commands found in stream
[2026-10-28 06:57:39,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:57:39,070.070 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-28 06:57:42,494.494 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:57:42,497.497 INFO    ] Checking for system updates...
[2026-10-28 06:57:42,532.532 INFO    ] 200
[2026-10-28 06:57:42,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:57:42,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:57:42,592.592 INFO    ] No update needed
[2026-10-28 06:57:42,594.594 INFO    ] Checking for camera pi updates...
[2026-10-28 06:57:42,627.627 INFO    ] 200
[2026-10-28 06:57:42,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:57:42,669.669 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:57:42,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:57:42,771.771 INFO    ] No camera update needed
[2026-10-28 06:57:42,773.773 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:57:42,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:57:42,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:57:42,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:57:44,825.825 INFO    ] ================================================
[2026-10-28 06:57:44,840.840 INFO    ] Launching Daemon at Wed Oct 28 06:57:44 IST 2026
[2026-10-28 06:57:44,850.850 INFO    ] ================================================
[2026-10-28 06:57:45,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:57:45
[2026-10-28 06:57:45,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:57:46,261.261 INFO    ] Initializing speech engine...
[2026-10-28 06:57:46,278.278 INFO    ] 2026-10-28 06:57:46
[2026-10-28 06:57:46,543.543 INFO    ] 2026-10-28 06:57:46
[2026-10-28 06:57:46,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:57:46,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:57:46,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:57:47,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:57:47,071.071 INFO    ] time= 28/10/2026 06:57:47
[2026-10-28 06:57:47,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:57:47,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:57:47,297.297 INFO    ] No existing commands found in stream
[2026-10-28 06:57:52,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:57:52,328.328 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-28 06:57:55,672.672 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:57:55,675.675 INFO    ] Checking for system updates...
[2026-10-28 06:57:55,712.712 INFO    ] 200
[2026-10-28 06:57:55,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:57:55,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:57:55,775.775 INFO    ] No update needed
[2026-10-28 06:57:55,777.777 INFO    ] Checking for camera pi updates...
[2026-10-28 06:57:55,811.811 INFO    ] 200
[2026-10-28 06:57:55,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:57:55,853.853 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:57:55,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:57:55,932.932 INFO    ] No camera update needed
[2026-10-28 06:57:55,934.934 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:57:55,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:57:55,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:57:55,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:57:57,986.986 INFO    ] ================================================
[2026-10-28 06:57:58,001.001 INFO    ] Launching Daemon at Wed Oct 28 06:57:57 IST 2026
[2026-10-28 06:57:58,012.012 INFO    ] ================================================
[2026-10-28 06:57:58,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:57:58
[2026-10-28 06:57:59,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:57:59,435.435 INFO    ] Initializing speech engine...
[2026-10-28 06:57:59,451.451 INFO    ] 2026-10-28 06:57:59
[2026-10-28 06:57:59,713.713 INFO    ] 2026-10-28 06:57:59
[2026-10-28 06:57:59,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:58:00,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:58:00,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:58:00,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:58:00,310.310 INFO    ] time= 28/10/2026 06:58:00
[2026-10-28 06:58:00,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:58:00,340.340 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:58:00,475.475 INFO    ] No existing commands found in stream
[2026-10-28 06:58:05,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:58:05,500.500 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 06:58:07,128.128 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:58:07,131.131 INFO    ] Checking for system updates...
[2026-10-28 06:58:07,172.172 INFO    ] 200
[2026-10-28 06:58:07,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:58:07,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:58:07,233.233 INFO    ] No update needed
[2026-10-28 06:58:07,236.236 INFO    ] Checking for camera pi updates...
[2026-10-28 06:58:07,269.269 INFO    ] 200
[2026-10-28 06:58:07,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:58:07,314.314 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:58:07,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:58:07,415.415 INFO    ] No camera update needed
[2026-10-28 06:58:07,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:58:07,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:58:07,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:58:07,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:58:09,470.470 INFO    ] ================================================
[2026-10-28 06:58:09,485.485 INFO    ] Launching Daemon at Wed Oct 28 06:58:09 IST 2026
[2026-10-28 06:58:09,496.496 INFO    ] ================================================
[2026-10-28 06:58:10,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:58:10
[2026-10-28 06:58:10,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:58:10,892.892 INFO    ] Initializing speech engine...
[2026-10-28 06:58:10,900.900 INFO    ] 2026-10-28 06:58:10
[2026-10-28 06:58:11,183.183 INFO    ] 2026-10-28 06:58:11
[2026-10-28 06:58:11,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:58:11,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:58:11,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:58:11,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:58:11,787.787 INFO    ] time= 28/10/2026 06:58:11
[2026-10-28 06:58:11,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:58:11,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:58:11,957.957 INFO    ] No existing commands found in stream
[2026-10-28 06:58:16,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:58:16,979.979 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-28 06:58:19,275.275 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:58:19,278.278 INFO    ] Checking for system updates...
[2026-10-28 06:58:19,313.313 INFO    ] 200
[2026-10-28 06:58:19,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:58:19,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:58:19,370.370 INFO    ] No update needed
[2026-10-28 06:58:19,372.372 INFO    ] Checking for camera pi updates...
[2026-10-28 06:58:19,405.405 INFO    ] 200
[2026-10-28 06:58:19,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:58:19,447.447 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:58:19,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:58:19,529.529 INFO    ] No camera update needed
[2026-10-28 06:58:19,531.531 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:58:19,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:58:19,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:58:19,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:58:21,585.585 INFO    ] ================================================
[2026-10-28 06:58:21,601.601 INFO    ] Launching Daemon at Wed Oct 28 06:58:21 IST 2026
[2026-10-28 06:58:21,612.612 INFO    ] ================================================
[2026-10-28 06:58:22,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:58:22
[2026-10-28 06:58:22,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:58:23,167.167 INFO    ] Initializing speech engine...
[2026-10-28 06:58:23,174.174 INFO    ] 2026-10-28 06:58:23
[2026-10-28 06:58:23,445.445 INFO    ] 2026-10-28 06:58:23
[2026-10-28 06:58:23,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:58:23,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:58:23,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:58:23,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:58:24,001.001 INFO    ] time= 28/10/2026 06:58:23
[2026-10-28 06:58:24,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:58:24,040.040 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:58:24,163.163 INFO    ] No existing commands found in stream
[2026-10-28 06:58:29,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:58:29,198.198 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-28 06:58:31,663.663 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:58:31,666.666 INFO    ] Checking for system updates...
[2026-10-28 06:58:31,705.705 INFO    ] 200
[2026-10-28 06:58:31,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:58:31,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:58:31,772.772 INFO    ] No update needed
[2026-10-28 06:58:31,774.774 INFO    ] Checking for camera pi updates...
[2026-10-28 06:58:31,814.814 INFO    ] 200
[2026-10-28 06:58:31,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:58:31,870.870 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:58:31,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:58:31,972.972 INFO    ] No camera update needed
[2026-10-28 06:58:31,976.976 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:58:31,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:58:31,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:58:31,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:58:34,033.033 INFO    ] ================================================
[2026-10-28 06:58:34,048.048 INFO    ] Launching Daemon at Wed Oct 28 06:58:34 IST 2026
[2026-10-28 06:58:34,059.059 INFO    ] ================================================
[2026-10-28 06:58:34,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:58:34
[2026-10-28 06:58:35,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:58:35,522.522 INFO    ] Initializing speech engine...
[2026-10-28 06:58:35,529.529 INFO    ] 2026-10-28 06:58:35
[2026-10-28 06:58:35,791.791 INFO    ] 2026-10-28 06:58:35
[2026-10-28 06:58:35,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:58:36,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:58:36,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:58:36,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:58:36,337.337 INFO    ] time= 28/10/2026 06:58:36
[2026-10-28 06:58:36,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:58:36,386.386 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:58:36,515.515 INFO    ] No existing commands found in stream
[2026-10-28 06:58:41,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:58:41,548.548 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-28 06:58:42,611.611 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:58:42,614.614 INFO    ] Checking for system updates...
[2026-10-28 06:58:42,652.652 INFO    ] 200
[2026-10-28 06:58:42,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:58:42,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:58:42,709.709 INFO    ] No update needed
[2026-10-28 06:58:42,712.712 INFO    ] Checking for camera pi updates...
[2026-10-28 06:58:42,750.750 INFO    ] 200
[2026-10-28 06:58:42,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:58:42,792.792 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:58:42,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:58:42,879.879 INFO    ] No camera update needed
[2026-10-28 06:58:42,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:58:42,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:58:42,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:58:42,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:58:44,935.935 INFO    ] ================================================
[2026-10-28 06:58:44,950.950 INFO    ] Launching Daemon at Wed Oct 28 06:58:44 IST 2026
[2026-10-28 06:58:44,962.962 INFO    ] ================================================
[2026-10-28 06:58:45,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:58:45
[2026-10-28 06:58:46,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:58:46,358.358 INFO    ] Initializing speech engine...
[2026-10-28 06:58:46,366.366 INFO    ] 2026-10-28 06:58:46
[2026-10-28 06:58:46,651.651 INFO    ] 2026-10-28 06:58:46
[2026-10-28 06:58:46,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:58:46,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:58:46,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:58:47,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:58:47,241.241 INFO    ] time= 28/10/2026 06:58:47
[2026-10-28 06:58:47,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:58:47,276.276 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:58:47,384.384 INFO    ] No existing commands found in stream
[2026-10-28 06:58:52,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:58:52,409.409 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 06:58:56,395.395 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 06:58:56,398.398 INFO    ] Checking for system updates...
[2026-10-28 06:58:56,433.433 INFO    ] 200
[2026-10-28 06:58:56,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:58:56,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:58:56,492.492 INFO    ] No update needed
[2026-10-28 06:58:56,495.495 INFO    ] Checking for camera pi updates...
[2026-10-28 06:58:56,528.528 INFO    ] 200
[2026-10-28 06:58:56,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:58:56,570.570 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:58:56,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:58:56,664.664 INFO    ] No camera update needed
[2026-10-28 06:58:56,666.666 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:58:56,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:58:56,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:58:56,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:58:58,719.719 INFO    ] ================================================
[2026-10-28 06:58:58,735.735 INFO    ] Launching Daemon at Wed Oct 28 06:58:58 IST 2026
[2026-10-28 06:58:58,746.746 INFO    ] ================================================
[2026-10-28 06:58:59,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:58:59
[2026-10-28 06:59:00,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:59:00,310.310 INFO    ] Initializing speech engine...
[2026-10-28 06:59:00,316.316 INFO    ] 2026-10-28 06:59:00
[2026-10-28 06:59:00,591.591 INFO    ] 2026-10-28 06:59:00
[2026-10-28 06:59:00,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:59:00,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:59:00,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:59:01,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:59:01,151.151 INFO    ] time= 28/10/2026 06:59:01
[2026-10-28 06:59:01,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:59:01,187.187 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:59:01,321.321 INFO    ] No existing commands found in stream
[2026-10-28 06:59:06,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:59:06,355.355 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 06:59:09,219.219 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:59:09,222.222 INFO    ] Checking for system updates...
[2026-10-28 06:59:09,259.259 INFO    ] 200
[2026-10-28 06:59:09,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:59:09,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:59:09,317.317 INFO    ] No update needed
[2026-10-28 06:59:09,320.320 INFO    ] Checking for camera pi updates...
[2026-10-28 06:59:09,355.355 INFO    ] 200
[2026-10-28 06:59:09,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:59:09,398.398 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:59:09,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:59:09,503.503 INFO    ] No camera update needed
[2026-10-28 06:59:09,506.506 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:59:09,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:59:09,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:59:09,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:59:11,560.560 INFO    ] ================================================
[2026-10-28 06:59:11,575.575 INFO    ] Launching Daemon at Wed Oct 28 06:59:11 IST 2026
[2026-10-28 06:59:11,587.587 INFO    ] ================================================
[2026-10-28 06:59:12,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:59:12
[2026-10-28 06:59:12,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:59:13,038.038 INFO    ] Initializing speech engine...
[2026-10-28 06:59:13,043.043 INFO    ] 2026-10-28 06:59:13
[2026-10-28 06:59:13,292.292 INFO    ] 2026-10-28 06:59:13
[2026-10-28 06:59:13,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:59:13,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:59:13,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:59:13,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:59:13,818.818 INFO    ] time= 28/10/2026 06:59:13
[2026-10-28 06:59:13,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:59:13,864.864 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:59:14,010.010 INFO    ] No existing commands found in stream
[2026-10-28 06:59:19,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:59:19,027.027 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 06:59:22,058.058 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 06:59:22,061.061 INFO    ] Checking for system updates...
[2026-10-28 06:59:22,100.100 INFO    ] 200
[2026-10-28 06:59:22,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:59:22,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:59:22,165.165 INFO    ] No update needed
[2026-10-28 06:59:22,167.167 INFO    ] Checking for camera pi updates...
[2026-10-28 06:59:22,200.200 INFO    ] 200
[2026-10-28 06:59:22,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:59:22,242.242 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:59:22,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:59:22,332.332 INFO    ] No camera update needed
[2026-10-28 06:59:22,335.335 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:59:22,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:59:22,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:59:22,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:59:24,386.386 INFO    ] ================================================
[2026-10-28 06:59:24,401.401 INFO    ] Launching Daemon at Wed Oct 28 06:59:24 IST 2026
[2026-10-28 06:59:24,412.412 INFO    ] ================================================
[2026-10-28 06:59:25,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:59:25
[2026-10-28 06:59:25,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:59:26,015.015 INFO    ] Initializing speech engine...
[2026-10-28 06:59:26,020.020 INFO    ] 2026-10-28 06:59:26
[2026-10-28 06:59:26,294.294 INFO    ] 2026-10-28 06:59:26
[2026-10-28 06:59:26,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:59:26,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:59:26,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:59:26,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:59:26,863.863 INFO    ] time= 28/10/2026 06:59:26
[2026-10-28 06:59:26,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:59:26,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:59:27,053.053 INFO    ] No existing commands found in stream
[2026-10-28 06:59:32,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:59:32,087.087 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-28 06:59:33,997.997 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 06:59:34,000.000 INFO    ] Checking for system updates...
[2026-10-28 06:59:34,037.037 INFO    ] 200
[2026-10-28 06:59:34,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:59:34,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:59:34,097.097 INFO    ] No update needed
[2026-10-28 06:59:34,099.099 INFO    ] Checking for camera pi updates...
[2026-10-28 06:59:34,134.134 INFO    ] 200
[2026-10-28 06:59:34,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:59:34,178.178 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:59:34,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:59:34,244.244 INFO    ] No camera update needed
[2026-10-28 06:59:34,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:59:34,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:59:34,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:59:34,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:59:36,303.303 INFO    ] ================================================
[2026-10-28 06:59:36,319.319 INFO    ] Launching Daemon at Wed Oct 28 06:59:36 IST 2026
[2026-10-28 06:59:36,330.330 INFO    ] ================================================
[2026-10-28 06:59:36,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:59:36
[2026-10-28 06:59:37,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:59:37,772.772 INFO    ] Initializing speech engine...
[2026-10-28 06:59:37,781.781 INFO    ] 2026-10-28 06:59:37
[2026-10-28 06:59:38,076.076 INFO    ] 2026-10-28 06:59:38
[2026-10-28 06:59:38,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:59:38,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:59:38,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:59:38,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:59:38,691.691 INFO    ] time= 28/10/2026 06:59:38
[2026-10-28 06:59:38,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:59:38,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:59:38,884.884 INFO    ] No existing commands found in stream
[2026-10-28 06:59:43,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:59:43,899.899 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-28 06:59:46,650.650 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 06:59:46,653.653 INFO    ] Checking for system updates...
[2026-10-28 06:59:46,693.693 INFO    ] 200
[2026-10-28 06:59:46,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:59:46,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:59:46,753.753 INFO    ] No update needed
[2026-10-28 06:59:46,756.756 INFO    ] Checking for camera pi updates...
[2026-10-28 06:59:46,790.790 INFO    ] 200
[2026-10-28 06:59:46,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:59:46,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:59:46,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 06:59:46,919.919 INFO    ] No camera update needed
[2026-10-28 06:59:46,922.922 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:59:46,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:59:46,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:59:46,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 06:59:48,979.979 INFO    ] ================================================
[2026-10-28 06:59:49,995.995 INFO    ] Launching Daemon at Wed Oct 28 06:59:48 IST 2026
[2026-10-28 06:59:49,005.005 INFO    ] ================================================
[2026-10-28 06:59:49,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 06:59:49
[2026-10-28 06:59:50,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 06:59:50,405.405 INFO    ] Initializing speech engine...
[2026-10-28 06:59:50,427.427 INFO    ] 2026-10-28 06:59:50
[2026-10-28 06:59:50,686.686 INFO    ] 2026-10-28 06:59:50
[2026-10-28 06:59:50,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 06:59:50,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 06:59:50,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 06:59:51,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 06:59:51,252.252 INFO    ] time= 28/10/2026 06:59:51
[2026-10-28 06:59:51,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 06:59:51,276.276 INFO    ] Checking for existing commands in stream...
[2026-10-28 06:59:51,411.411 INFO    ] No existing commands found in stream
[2026-10-28 06:59:56,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 06:59:56,432.432 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-28 06:59:59,163.163 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 06:59:59,166.166 INFO    ] Checking for system updates...
[2026-10-28 06:59:59,206.206 INFO    ] 200
[2026-10-28 06:59:59,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:59:59,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:59:59,271.271 INFO    ] No update needed
[2026-10-28 06:59:59,273.273 INFO    ] Checking for camera pi updates...
[2026-10-28 06:59:59,311.311 INFO    ] 200
[2026-10-28 06:59:59,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 06:59:59,359.359 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 06:59:59,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 06:59:59,453.453 INFO    ] No camera update needed
[2026-10-28 06:59:59,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-28 06:59:59,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 06:59:59,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 06:59:59,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:00:01,512.512 INFO    ] ================================================
[2026-10-28 07:00:01,528.528 INFO    ] Launching Daemon at Wed Oct 28 07:00:01 IST 2026
[2026-10-28 07:00:01,538.538 INFO    ] ================================================
[2026-10-28 07:00:02,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:00:02
[2026-10-28 07:00:04,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:00:06,650.650 INFO    ] Initializing speech engine...
[2026-10-28 07:00:06,656.656 INFO    ] 2026-10-28 07:00:06
[2026-10-28 07:00:07,060.060 INFO    ] 2026-10-28 07:00:07
[2026-10-28 07:00:07,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:00:07,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:00:07,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:00:07,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:00:07,570.570 INFO    ] time= 28/10/2026 07:00:07
[2026-10-28 07:00:07,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:00:07,595.595 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:00:07,708.708 INFO    ] No existing commands found in stream
[2026-10-28 07:00:12,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:00:12,743.743 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 07:00:13,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:00:13,423.423 INFO    ] Checking for system updates...
[2026-10-28 07:00:13,464.464 INFO    ] 200
[2026-10-28 07:00:13,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:00:13,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:00:13,522.522 INFO    ] No update needed
[2026-10-28 07:00:13,524.524 INFO    ] Checking for camera pi updates...
[2026-10-28 07:00:13,558.558 INFO    ] 200
[2026-10-28 07:00:13,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:00:13,602.602 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:00:13,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:00:13,691.691 INFO    ] No camera update needed
[2026-10-28 07:00:13,694.694 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:00:13,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:00:13,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:00:13,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:00:15,749.749 INFO    ] ================================================
[2026-10-28 07:00:15,766.766 INFO    ] Launching Daemon at Wed Oct 28 07:00:15 IST 2026
[2026-10-28 07:00:15,778.778 INFO    ] ================================================
[2026-10-28 07:00:16,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:00:16
[2026-10-28 07:00:17,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:00:17,322.322 INFO    ] Initializing speech engine...
[2026-10-28 07:00:17,331.331 INFO    ] 2026-10-28 07:00:17
[2026-10-28 07:00:17,639.639 INFO    ] 2026-10-28 07:00:17
[2026-10-28 07:00:17,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:00:17,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:00:17,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:00:18,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:00:18,104.104 INFO    ] time= 28/10/2026 07:00:18
[2026-10-28 07:00:18,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:00:18,140.140 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:00:18,297.297 INFO    ] No existing commands found in stream
[2026-10-28 07:00:23,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:00:23,325.325 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-28 07:00:25,339.339 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:00:25,342.342 INFO    ] Checking for system updates...
[2026-10-28 07:00:25,382.382 INFO    ] 200
[2026-10-28 07:00:25,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:00:25,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:00:25,440.440 INFO    ] No update needed
[2026-10-28 07:00:25,442.442 INFO    ] Checking for camera pi updates...
[2026-10-28 07:00:25,478.478 INFO    ] 200
[2026-10-28 07:00:25,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:00:25,521.521 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:00:25,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:00:25,604.604 INFO    ] No camera update needed
[2026-10-28 07:00:25,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:00:25,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:00:25,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:00:25,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:00:27,662.662 INFO    ] ================================================
[2026-10-28 07:00:27,677.677 INFO    ] Launching Daemon at Wed Oct 28 07:00:27 IST 2026
[2026-10-28 07:00:27,688.688 INFO    ] ================================================
[2026-10-28 07:00:28,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:00:28
[2026-10-28 07:00:28,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:00:29,133.133 INFO    ] Initializing speech engine...
[2026-10-28 07:00:29,140.140 INFO    ] 2026-10-28 07:00:29
[2026-10-28 07:00:29,451.451 INFO    ] 2026-10-28 07:00:29
[2026-10-28 07:00:29,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:00:29,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:00:29,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:00:29,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:00:29,892.892 INFO    ] time= 28/10/2026 07:00:29
[2026-10-28 07:00:29,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:00:29,970.970 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:00:30,081.081 INFO    ] No existing commands found in stream
[2026-10-28 07:00:35,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:00:35,115.115 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-28 07:00:37,878.878 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:00:37,881.881 INFO    ] Checking for system updates...
[2026-10-28 07:00:37,919.919 INFO    ] 200
[2026-10-28 07:00:37,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:00:37,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:00:37,976.976 INFO    ] No update needed
[2026-10-28 07:00:37,978.978 INFO    ] Checking for camera pi updates...
[2026-10-28 07:00:38,013.013 INFO    ] 200
[2026-10-28 07:00:38,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:00:38,058.058 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:00:38,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:00:38,242.242 INFO    ] No camera update needed
[2026-10-28 07:00:38,245.245 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:00:38,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:00:38,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:00:38,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:00:40,298.298 INFO    ] ================================================
[2026-10-28 07:00:40,316.316 INFO    ] Launching Daemon at Wed Oct 28 07:00:40 IST 2026
[2026-10-28 07:00:40,327.327 INFO    ] ================================================
[2026-10-28 07:00:40,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:00:40
[2026-10-28 07:00:41,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:00:41,762.762 INFO    ] Initializing speech engine...
[2026-10-28 07:00:41,785.785 INFO    ] 2026-10-28 07:00:41
[2026-10-28 07:00:42,040.040 INFO    ] 2026-10-28 07:00:42
[2026-10-28 07:00:42,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:00:42,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:00:42,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:00:42,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:00:42,577.577 INFO    ] time= 28/10/2026 07:00:42
[2026-10-28 07:00:42,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:00:42,621.621 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:00:42,792.792 INFO    ] No existing commands found in stream
[2026-10-28 07:00:47,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:00:47,830.830 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 07:00:52,334.334 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:00:52,337.337 INFO    ] Checking for system updates...
[2026-10-28 07:00:52,374.374 INFO    ] 200
[2026-10-28 07:00:52,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:00:52,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:00:52,436.436 INFO    ] No update needed
[2026-10-28 07:00:52,438.438 INFO    ] Checking for camera pi updates...
[2026-10-28 07:00:52,471.471 INFO    ] 200
[2026-10-28 07:00:52,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:00:52,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:00:52,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:00:52,629.629 INFO    ] No camera update needed
[2026-10-28 07:00:52,631.631 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:00:52,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:00:52,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:00:52,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:00:54,686.686 INFO    ] ================================================
[2026-10-28 07:00:54,702.702 INFO    ] Launching Daemon at Wed Oct 28 07:00:54 IST 2026
[2026-10-28 07:00:54,714.714 INFO    ] ================================================
[2026-10-28 07:00:55,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:00:55
[2026-10-28 07:00:55,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:00:56,171.171 INFO    ] Initializing speech engine...
[2026-10-28 07:00:56,180.180 INFO    ] 2026-10-28 07:00:56
[2026-10-28 07:00:56,485.485 INFO    ] 2026-10-28 07:00:56
[2026-10-28 07:00:56,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:00:56,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:00:56,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:00:56,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:00:57,015.015 INFO    ] time= 28/10/2026 07:00:56
[2026-10-28 07:00:57,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:00:57,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:00:57,212.212 INFO    ] No existing commands found in stream
[2026-10-28 07:01:02,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:01:02,229.229 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 07:01:04,294.294 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:01:04,297.297 INFO    ] Checking for system updates...
[2026-10-28 07:01:04,333.333 INFO    ] 200
[2026-10-28 07:01:04,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:01:04,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:01:04,396.396 INFO    ] No update needed
[2026-10-28 07:01:04,399.399 INFO    ] Checking for camera pi updates...
[2026-10-28 07:01:04,432.432 INFO    ] 200
[2026-10-28 07:01:04,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:01:04,475.475 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:01:04,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:01:04,551.551 INFO    ] No camera update needed
[2026-10-28 07:01:04,554.554 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:01:04,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:01:04,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:01:04,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:01:06,608.608 INFO    ] ================================================
[2026-10-28 07:01:06,624.624 INFO    ] Launching Daemon at Wed Oct 28 07:01:06 IST 2026
[2026-10-28 07:01:06,635.635 INFO    ] ================================================
[2026-10-28 07:01:07,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:01:07
[2026-10-28 07:01:07,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:01:08,038.038 INFO    ] Initializing speech engine...
[2026-10-28 07:01:08,044.044 INFO    ] 2026-10-28 07:01:08
[2026-10-28 07:01:08,318.318 INFO    ] 2026-10-28 07:01:08
[2026-10-28 07:01:08,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:01:08,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:01:08,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:01:08,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:01:08,867.867 INFO    ] time= 28/10/2026 07:01:08
[2026-10-28 07:01:08,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:01:08,900.900 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:01:09,050.050 INFO    ] No existing commands found in stream
[2026-10-28 07:01:14,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:01:14,065.065 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-28 07:01:17,196.196 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:01:17,199.199 INFO    ] Checking for system updates...
[2026-10-28 07:01:17,235.235 INFO    ] 200
[2026-10-28 07:01:17,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:01:17,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:01:17,293.293 INFO    ] No update needed
[2026-10-28 07:01:17,296.296 INFO    ] Checking for camera pi updates...
[2026-10-28 07:01:17,329.329 INFO    ] 200
[2026-10-28 07:01:17,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:01:17,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:01:17,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:01:17,472.472 INFO    ] No camera update needed
[2026-10-28 07:01:17,474.474 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:01:17,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:01:17,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:01:17,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:01:19,530.530 INFO    ] ================================================
[2026-10-28 07:01:19,546.546 INFO    ] Launching Daemon at Wed Oct 28 07:01:19 IST 2026
[2026-10-28 07:01:19,557.557 INFO    ] ================================================
[2026-10-28 07:01:20,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:01:20
[2026-10-28 07:01:20,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:01:21,228.228 INFO    ] Initializing speech engine...
[2026-10-28 07:01:21,242.242 INFO    ] 2026-10-28 07:01:21
[2026-10-28 07:01:21,562.562 INFO    ] 2026-10-28 07:01:21
[2026-10-28 07:01:21,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:01:21,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:01:21,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:01:22,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:01:22,133.133 INFO    ] time= 28/10/2026 07:01:22
[2026-10-28 07:01:22,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:01:22,232.232 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:01:22,349.349 INFO    ] No existing commands found in stream
[2026-10-28 07:01:27,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:01:27,377.377 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-28 07:01:30,717.717 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:01:30,720.720 INFO    ] Checking for system updates...
[2026-10-28 07:01:30,757.757 INFO    ] 200
[2026-10-28 07:01:30,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:01:30,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:01:30,816.816 INFO    ] No update needed
[2026-10-28 07:01:30,819.819 INFO    ] Checking for camera pi updates...
[2026-10-28 07:01:30,860.860 INFO    ] 200
[2026-10-28 07:01:30,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:01:30,910.910 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:01:31,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:01:31,003.003 INFO    ] No camera update needed
[2026-10-28 07:01:31,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:01:31,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:01:31,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:01:31,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:01:33,065.065 INFO    ] ================================================
[2026-10-28 07:01:33,081.081 INFO    ] Launching Daemon at Wed Oct 28 07:01:33 IST 2026
[2026-10-28 07:01:33,092.092 INFO    ] ================================================
[2026-10-28 07:01:33,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:01:33
[2026-10-28 07:01:34,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:01:34,763.763 INFO    ] Initializing speech engine...
[2026-10-28 07:01:34,778.778 INFO    ] 2026-10-28 07:01:34
[2026-10-28 07:01:35,063.063 INFO    ] 2026-10-28 07:01:35
[2026-10-28 07:01:35,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:01:35,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:01:35,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:01:35,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:01:35,618.618 INFO    ] time= 28/10/2026 07:01:35
[2026-10-28 07:01:35,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:01:35,655.655 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:01:35,762.762 INFO    ] No existing commands found in stream
[2026-10-28 07:01:40,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:01:40,802.802 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-28 07:01:43,820.820 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:01:43,824.824 INFO    ] Checking for system updates...
[2026-10-28 07:01:43,861.861 INFO    ] 200
[2026-10-28 07:01:43,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:01:43,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:01:43,919.919 INFO    ] No update needed
[2026-10-28 07:01:43,922.922 INFO    ] Checking for camera pi updates...
[2026-10-28 07:01:43,956.956 INFO    ] 200
[2026-10-28 07:01:43,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:01:43,998.998 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:01:44,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:01:44,081.081 INFO    ] No camera update needed
[2026-10-28 07:01:44,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:01:44,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:01:44,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:01:44,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:01:46,138.138 INFO    ] ================================================
[2026-10-28 07:01:46,154.154 INFO    ] Launching Daemon at Wed Oct 28 07:01:46 IST 2026
[2026-10-28 07:01:46,165.165 INFO    ] ================================================
[2026-10-28 07:01:46,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:01:46
[2026-10-28 07:01:47,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:01:47,845.845 INFO    ] Initializing speech engine...
[2026-10-28 07:01:47,854.854 INFO    ] 2026-10-28 07:01:47
[2026-10-28 07:01:48,151.151 INFO    ] 2026-10-28 07:01:48
[2026-10-28 07:01:48,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:01:48,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:01:48,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:01:48,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:01:48,720.720 INFO    ] time= 28/10/2026 07:01:48
[2026-10-28 07:01:48,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:01:48,758.758 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:01:48,869.869 INFO    ] No existing commands found in stream
[2026-10-28 07:01:53,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:01:53,903.903 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 07:01:57,700.700 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:01:57,703.703 INFO    ] Checking for system updates...
[2026-10-28 07:01:57,740.740 INFO    ] 200
[2026-10-28 07:01:57,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:01:57,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:01:57,800.800 INFO    ] No update needed
[2026-10-28 07:01:57,803.803 INFO    ] Checking for camera pi updates...
[2026-10-28 07:01:57,841.841 INFO    ] 200
[2026-10-28 07:01:57,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:01:57,885.885 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:01:57,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:01:57,966.966 INFO    ] No camera update needed
[2026-10-28 07:01:57,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:01:57,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:01:57,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:01:57,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:02:00,022.022 INFO    ] ================================================
[2026-10-28 07:02:00,037.037 INFO    ] Launching Daemon at Wed Oct 28 07:02:00 IST 2026
[2026-10-28 07:02:00,049.049 INFO    ] ================================================
[2026-10-28 07:02:00,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:02:00
[2026-10-28 07:02:01,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:02:01,952.952 INFO    ] Initializing speech engine...
[2026-10-28 07:02:01,965.965 INFO    ] 2026-10-28 07:02:01
[2026-10-28 07:02:02,377.377 INFO    ] 2026-10-28 07:02:02
[2026-10-28 07:02:02,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:02:02,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:02:02,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:02:02,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:02:03,025.025 INFO    ] time= 28/10/2026 07:02:02
[2026-10-28 07:02:03,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:02:03,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:02:03,249.249 INFO    ] No existing commands found in stream
[2026-10-28 07:02:08,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:02:08,277.277 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-28 07:02:12,570.570 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:02:12,573.573 INFO    ] Checking for system updates...
[2026-10-28 07:02:12,608.608 INFO    ] 200
[2026-10-28 07:02:12,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:02:12,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:02:12,665.665 INFO    ] No update needed
[2026-10-28 07:02:12,668.668 INFO    ] Checking for camera pi updates...
[2026-10-28 07:02:12,701.701 INFO    ] 200
[2026-10-28 07:02:12,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:02:12,746.746 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:02:12,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:02:12,832.832 INFO    ] No camera update needed
[2026-10-28 07:02:12,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:02:12,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:02:12,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:02:12,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:02:14,888.888 INFO    ] ================================================
[2026-10-28 07:02:14,905.905 INFO    ] Launching Daemon at Wed Oct 28 07:02:14 IST 2026
[2026-10-28 07:02:14,915.915 INFO    ] ================================================
[2026-10-28 07:02:15,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:02:15
[2026-10-28 07:02:16,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:02:16,375.375 INFO    ] Initializing speech engine...
[2026-10-28 07:02:16,398.398 INFO    ] 2026-10-28 07:02:16
[2026-10-28 07:02:16,656.656 INFO    ] 2026-10-28 07:02:16
[2026-10-28 07:02:16,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:02:16,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:02:16,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:02:17,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:02:17,214.214 INFO    ] time= 28/10/2026 07:02:17
[2026-10-28 07:02:17,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:02:17,240.240 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:02:17,358.358 INFO    ] No existing commands found in stream
[2026-10-28 07:02:22,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:02:22,382.382 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-28 07:02:26,460.460 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:02:26,462.462 INFO    ] Checking for system updates...
[2026-10-28 07:02:26,498.498 INFO    ] 200
[2026-10-28 07:02:26,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:02:26,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:02:26,555.555 INFO    ] No update needed
[2026-10-28 07:02:26,558.558 INFO    ] Checking for camera pi updates...
[2026-10-28 07:02:26,591.591 INFO    ] 200
[2026-10-28 07:02:26,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:02:26,634.634 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:02:26,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:02:26,716.716 INFO    ] No camera update needed
[2026-10-28 07:02:26,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:02:26,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:02:26,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:02:26,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:02:28,772.772 INFO    ] ================================================
[2026-10-28 07:02:28,787.787 INFO    ] Launching Daemon at Wed Oct 28 07:02:28 IST 2026
[2026-10-28 07:02:28,798.798 INFO    ] ================================================
[2026-10-28 07:02:29,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:02:29
[2026-10-28 07:02:29,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:02:30,223.223 INFO    ] Initializing speech engine...
[2026-10-28 07:02:30,232.232 INFO    ] 2026-10-28 07:02:30
[2026-10-28 07:02:30,482.482 INFO    ] 2026-10-28 07:02:30
[2026-10-28 07:02:30,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:02:30,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:02:30,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:02:30,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:02:30,987.987 INFO    ] time= 28/10/2026 07:02:30
[2026-10-28 07:02:31,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:02:31,058.058 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:02:31,190.190 INFO    ] No existing commands found in stream
[2026-10-28 07:02:36,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:02:36,216.216 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-28 07:02:40,194.194 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:02:40,197.197 INFO    ] Checking for system updates...
[2026-10-28 07:02:40,233.233 INFO    ] 200
[2026-10-28 07:02:40,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:02:40,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:02:40,302.302 INFO    ] No update needed
[2026-10-28 07:02:40,305.305 INFO    ] Checking for camera pi updates...
[2026-10-28 07:02:40,338.338 INFO    ] 200
[2026-10-28 07:02:40,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:02:40,380.380 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:02:40,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:02:40,467.467 INFO    ] No camera update needed
[2026-10-28 07:02:40,469.469 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:02:40,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:02:40,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:02:40,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:02:42,525.525 INFO    ] ================================================
[2026-10-28 07:02:42,540.540 INFO    ] Launching Daemon at Wed Oct 28 07:02:42 IST 2026
[2026-10-28 07:02:42,550.550 INFO    ] ================================================
[2026-10-28 07:02:43,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:02:43
[2026-10-28 07:02:43,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:02:43,964.964 INFO    ] Initializing speech engine...
[2026-10-28 07:02:43,982.982 INFO    ] 2026-10-28 07:02:43
[2026-10-28 07:02:44,232.232 INFO    ] 2026-10-28 07:02:44
[2026-10-28 07:02:44,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:02:44,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:02:44,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:02:44,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:02:44,801.801 INFO    ] time= 28/10/2026 07:02:44
[2026-10-28 07:02:44,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:02:44,827.827 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:02:44,964.964 INFO    ] No existing commands found in stream
[2026-10-28 07:02:49,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:02:49,987.987 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-28 07:02:54,034.034 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:02:54,037.037 INFO    ] Checking for system updates...
[2026-10-28 07:02:54,073.073 INFO    ] 200
[2026-10-28 07:02:54,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:02:54,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:02:54,138.138 INFO    ] No update needed
[2026-10-28 07:02:54,141.141 INFO    ] Checking for camera pi updates...
[2026-10-28 07:02:54,176.176 INFO    ] 200
[2026-10-28 07:02:54,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:02:54,220.220 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:02:54,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:02:54,428.428 INFO    ] No camera update needed
[2026-10-28 07:02:54,430.430 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:02:54,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:02:54,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:02:54,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:02:56,489.489 INFO    ] ================================================
[2026-10-28 07:02:56,504.504 INFO    ] Launching Daemon at Wed Oct 28 07:02:56 IST 2026
[2026-10-28 07:02:56,514.514 INFO    ] ================================================
[2026-10-28 07:02:57,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:02:57
[2026-10-28 07:02:57,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:02:57,948.948 INFO    ] Initializing speech engine...
[2026-10-28 07:02:57,957.957 INFO    ] 2026-10-28 07:02:57
[2026-10-28 07:02:58,257.257 INFO    ] 2026-10-28 07:02:58
[2026-10-28 07:02:58,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:02:58,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:02:58,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:02:58,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:02:58,796.796 INFO    ] time= 28/10/2026 07:02:58
[2026-10-28 07:02:58,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:02:58,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:02:58,976.976 INFO    ] No existing commands found in stream
[2026-10-28 07:03:03,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:03:03,988.988 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-28 07:03:05,725.725 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:03:05,727.727 INFO    ] Checking for system updates...
[2026-10-28 07:03:05,765.765 INFO    ] 200
[2026-10-28 07:03:05,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:03:05,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:03:05,826.826 INFO    ] No update needed
[2026-10-28 07:03:05,828.828 INFO    ] Checking for camera pi updates...
[2026-10-28 07:03:05,864.864 INFO    ] 200
[2026-10-28 07:03:05,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:03:05,912.912 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:03:06,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:03:06,007.007 INFO    ] No camera update needed
[2026-10-28 07:03:06,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:03:06,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:03:06,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:03:06,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:03:08,062.062 INFO    ] ================================================
[2026-10-28 07:03:08,077.077 INFO    ] Launching Daemon at Wed Oct 28 07:03:08 IST 2026
[2026-10-28 07:03:08,088.088 INFO    ] ================================================
[2026-10-28 07:03:08,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:03:08
[2026-10-28 07:03:09,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:03:09,509.509 INFO    ] Initializing speech engine...
[2026-10-28 07:03:09,519.519 INFO    ] 2026-10-28 07:03:09
[2026-10-28 07:03:09,784.784 INFO    ] 2026-10-28 07:03:09
[2026-10-28 07:03:09,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:03:10,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:03:10,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:03:10,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:03:10,285.285 INFO    ] time= 28/10/2026 07:03:10
[2026-10-28 07:03:10,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:03:10,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:03:10,488.488 INFO    ] No existing commands found in stream
[2026-10-28 07:03:15,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:03:15,504.504 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-28 07:03:20,012.012 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:03:20,015.015 INFO    ] Checking for system updates...
[2026-10-28 07:03:20,054.054 INFO    ] 200
[2026-10-28 07:03:20,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:03:20,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:03:20,118.118 INFO    ] No update needed
[2026-10-28 07:03:20,121.121 INFO    ] Checking for camera pi updates...
[2026-10-28 07:03:20,158.158 INFO    ] 200
[2026-10-28 07:03:20,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:03:20,201.201 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:03:20,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:03:20,290.290 INFO    ] No camera update needed
[2026-10-28 07:03:20,293.293 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:03:20,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:03:20,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:03:20,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:03:22,348.348 INFO    ] ================================================
[2026-10-28 07:03:22,364.364 INFO    ] Launching Daemon at Wed Oct 28 07:03:22 IST 2026
[2026-10-28 07:03:22,375.375 INFO    ] ================================================
[2026-10-28 07:03:22,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:03:22
[2026-10-28 07:03:23,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:03:23,800.800 INFO    ] Initializing speech engine...
[2026-10-28 07:03:23,809.809 INFO    ] 2026-10-28 07:03:23
[2026-10-28 07:03:24,056.056 INFO    ] 2026-10-28 07:03:24
[2026-10-28 07:03:24,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:03:24,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:03:24,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:03:24,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:03:24,608.608 INFO    ] time= 28/10/2026 07:03:24
[2026-10-28 07:03:24,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:03:24,633.633 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:03:24,784.784 INFO    ] No existing commands found in stream
[2026-10-28 07:03:29,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:03:29,817.817 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-28 07:03:32,370.370 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:03:32,373.373 INFO    ] Checking for system updates...
[2026-10-28 07:03:32,418.418 INFO    ] 200
[2026-10-28 07:03:32,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:03:32,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:03:32,491.491 INFO    ] No update needed
[2026-10-28 07:03:32,493.493 INFO    ] Checking for camera pi updates...
[2026-10-28 07:03:32,529.529 INFO    ] 200
[2026-10-28 07:03:32,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:03:32,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:03:32,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:03:32,665.665 INFO    ] No camera update needed
[2026-10-28 07:03:32,668.668 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:03:32,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:03:32,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:03:32,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:03:34,725.725 INFO    ] ================================================
[2026-10-28 07:03:34,741.741 INFO    ] Launching Daemon at Wed Oct 28 07:03:34 IST 2026
[2026-10-28 07:03:34,751.751 INFO    ] ================================================
[2026-10-28 07:03:35,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:03:35
[2026-10-28 07:03:36,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:03:36,398.398 INFO    ] Initializing speech engine...
[2026-10-28 07:03:36,406.406 INFO    ] 2026-10-28 07:03:36
[2026-10-28 07:03:36,695.695 INFO    ] 2026-10-28 07:03:36
[2026-10-28 07:03:36,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:03:37,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:03:37,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:03:37,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:03:37,405.405 INFO    ] time= 28/10/2026 07:03:37
[2026-10-28 07:03:37,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:03:37,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:03:37,668.668 INFO    ] No existing commands found in stream
[2026-10-28 07:03:42,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:03:42,692.692 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-28 07:03:43,884.884 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:03:43,887.887 INFO    ] Checking for system updates...
[2026-10-28 07:03:43,922.922 INFO    ] 200
[2026-10-28 07:03:43,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:03:43,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:03:43,986.986 INFO    ] No update needed
[2026-10-28 07:03:43,989.989 INFO    ] Checking for camera pi updates...
[2026-10-28 07:03:44,022.022 INFO    ] 200
[2026-10-28 07:03:44,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:03:44,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:03:44,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:03:44,149.149 INFO    ] No camera update needed
[2026-10-28 07:03:44,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:03:44,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:03:44,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:03:44,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:03:46,204.204 INFO    ] ================================================
[2026-10-28 07:03:46,219.219 INFO    ] Launching Daemon at Wed Oct 28 07:03:46 IST 2026
[2026-10-28 07:03:46,230.230 INFO    ] ================================================
[2026-10-28 07:03:46,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:03:46
[2026-10-28 07:03:47,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:03:47,648.648 INFO    ] Initializing speech engine...
[2026-10-28 07:03:47,654.654 INFO    ] 2026-10-28 07:03:47
[2026-10-28 07:03:47,949.949 INFO    ] 2026-10-28 07:03:47
[2026-10-28 07:03:47,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:03:48,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:03:48,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:03:48,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:03:48,450.450 INFO    ] time= 28/10/2026 07:03:48
[2026-10-28 07:03:48,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:03:48,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:03:48,672.672 INFO    ] No existing commands found in stream
[2026-10-28 07:03:53,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:03:53,700.700 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-28 07:03:55,141.141 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:03:55,143.143 INFO    ] Checking for system updates...
[2026-10-28 07:03:55,179.179 INFO    ] 200
[2026-10-28 07:03:55,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:03:55,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:03:55,244.244 INFO    ] No update needed
[2026-10-28 07:03:55,246.246 INFO    ] Checking for camera pi updates...
[2026-10-28 07:03:55,284.284 INFO    ] 200
[2026-10-28 07:03:55,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:03:55,332.332 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:03:55,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:03:55,435.435 INFO    ] No camera update needed
[2026-10-28 07:03:55,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:03:55,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:03:55,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:03:55,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:03:57,490.490 INFO    ] ================================================
[2026-10-28 07:03:57,506.506 INFO    ] Launching Daemon at Wed Oct 28 07:03:57 IST 2026
[2026-10-28 07:03:57,517.517 INFO    ] ================================================
[2026-10-28 07:03:58,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:03:58
[2026-10-28 07:03:58,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:03:58,923.923 INFO    ] Initializing speech engine...
[2026-10-28 07:03:58,937.937 INFO    ] 2026-10-28 07:03:58
[2026-10-28 07:03:59,189.189 INFO    ] 2026-10-28 07:03:59
[2026-10-28 07:03:59,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:03:59,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:03:59,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:03:59,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:03:59,724.724 INFO    ] time= 28/10/2026 07:03:59
[2026-10-28 07:03:59,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:03:59,755.755 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:03:59,899.899 INFO    ] No existing commands found in stream
[2026-10-28 07:04:04,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:04:04,917.917 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 07:04:06,594.594 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:04:06,596.596 INFO    ] Checking for system updates...
[2026-10-28 07:04:06,632.632 INFO    ] 200
[2026-10-28 07:04:06,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:04:06,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:04:06,689.689 INFO    ] No update needed
[2026-10-28 07:04:06,691.691 INFO    ] Checking for camera pi updates...
[2026-10-28 07:04:06,725.725 INFO    ] 200
[2026-10-28 07:04:06,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:04:06,768.768 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:04:06,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:04:06,854.854 INFO    ] No camera update needed
[2026-10-28 07:04:06,856.856 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:04:06,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:04:06,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:04:06,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:04:08,912.912 INFO    ] ================================================
[2026-10-28 07:04:08,929.929 INFO    ] Launching Daemon at Wed Oct 28 07:04:08 IST 2026
[2026-10-28 07:04:08,940.940 INFO    ] ================================================
[2026-10-28 07:04:09,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:04:09
[2026-10-28 07:04:10,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:04:10,343.343 INFO    ] Initializing speech engine...
[2026-10-28 07:04:10,361.361 INFO    ] 2026-10-28 07:04:10
[2026-10-28 07:04:10,619.619 INFO    ] 2026-10-28 07:04:10
[2026-10-28 07:04:10,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:04:10,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:04:10,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:04:11,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:04:11,178.178 INFO    ] time= 28/10/2026 07:04:11
[2026-10-28 07:04:11,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:04:11,202.202 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:04:11,329.329 INFO    ] No existing commands found in stream
[2026-10-28 07:04:16,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:04:16,347.347 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-28 07:04:18,859.859 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:04:18,862.862 INFO    ] Checking for system updates...
[2026-10-28 07:04:18,905.905 INFO    ] 200
[2026-10-28 07:04:18,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:04:18,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:04:18,965.965 INFO    ] No update needed
[2026-10-28 07:04:18,968.968 INFO    ] Checking for camera pi updates...
[2026-10-28 07:04:19,004.004 INFO    ] 200
[2026-10-28 07:04:19,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:04:19,053.053 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:04:19,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:04:19,135.135 INFO    ] No camera update needed
[2026-10-28 07:04:19,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:04:19,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:04:19,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:04:19,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:04:21,192.192 INFO    ] ================================================
[2026-10-28 07:04:21,208.208 INFO    ] Launching Daemon at Wed Oct 28 07:04:21 IST 2026
[2026-10-28 07:04:21,220.220 INFO    ] ================================================
[2026-10-28 07:04:21,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:04:21
[2026-10-28 07:04:22,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:04:22,890.890 INFO    ] Initializing speech engine...
[2026-10-28 07:04:22,904.904 INFO    ] 2026-10-28 07:04:22
[2026-10-28 07:04:23,220.220 INFO    ] 2026-10-28 07:04:23
[2026-10-28 07:04:23,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:04:23,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:04:23,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:04:23,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:04:23,767.767 INFO    ] time= 28/10/2026 07:04:23
[2026-10-28 07:04:23,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:04:23,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:04:23,954.954 INFO    ] No existing commands found in stream
[2026-10-28 07:04:28,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:04:28,989.989 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 07:04:30,565.565 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:04:30,568.568 INFO    ] Checking for system updates...
[2026-10-28 07:04:30,610.610 INFO    ] 200
[2026-10-28 07:04:30,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:04:30,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:04:30,667.667 INFO    ] No update needed
[2026-10-28 07:04:30,669.669 INFO    ] Checking for camera pi updates...
[2026-10-28 07:04:30,703.703 INFO    ] 200
[2026-10-28 07:04:30,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:04:30,752.752 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:04:30,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:04:30,831.831 INFO    ] No camera update needed
[2026-10-28 07:04:30,833.833 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:04:30,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:04:30,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:04:30,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:04:32,889.889 INFO    ] ================================================
[2026-10-28 07:04:32,907.907 INFO    ] Launching Daemon at Wed Oct 28 07:04:32 IST 2026
[2026-10-28 07:04:32,919.919 INFO    ] ================================================
[2026-10-28 07:04:33,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:04:33
[2026-10-28 07:04:34,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:04:34,598.598 INFO    ] Initializing speech engine...
[2026-10-28 07:04:34,611.611 INFO    ] 2026-10-28 07:04:34
[2026-10-28 07:04:34,886.886 INFO    ] 2026-10-28 07:04:34
[2026-10-28 07:04:34,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:04:35,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:04:35,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:04:35,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:04:35,463.463 INFO    ] time= 28/10/2026 07:04:35
[2026-10-28 07:04:35,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:04:35,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:04:35,631.631 INFO    ] No existing commands found in stream
[2026-10-28 07:04:40,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:04:40,666.666 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-28 07:04:43,698.698 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:04:43,701.701 INFO    ] Checking for system updates...
[2026-10-28 07:04:43,739.739 INFO    ] 200
[2026-10-28 07:04:43,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:04:43,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:04:43,799.799 INFO    ] No update needed
[2026-10-28 07:04:43,802.802 INFO    ] Checking for camera pi updates...
[2026-10-28 07:04:43,836.836 INFO    ] 200
[2026-10-28 07:04:43,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:04:43,886.886 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:04:43,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:04:43,970.970 INFO    ] No camera update needed
[2026-10-28 07:04:43,972.972 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:04:43,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:04:43,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:04:43,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:04:46,024.024 INFO    ] ================================================
[2026-10-28 07:04:46,040.040 INFO    ] Launching Daemon at Wed Oct 28 07:04:46 IST 2026
[2026-10-28 07:04:46,051.051 INFO    ] ================================================
[2026-10-28 07:04:46,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:04:46
[2026-10-28 07:04:47,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:04:47,493.493 INFO    ] Initializing speech engine...
[2026-10-28 07:04:47,502.502 INFO    ] 2026-10-28 07:04:47
[2026-10-28 07:04:47,751.751 INFO    ] 2026-10-28 07:04:47
[2026-10-28 07:04:47,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:04:48,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:04:48,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:04:48,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:04:48,308.308 INFO    ] time= 28/10/2026 07:04:48
[2026-10-28 07:04:48,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:04:48,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:04:48,485.485 INFO    ] No existing commands found in stream
[2026-10-28 07:04:53,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:04:53,523.523 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-28 07:04:55,137.137 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:04:55,139.139 INFO    ] Checking for system updates...
[2026-10-28 07:04:55,177.177 INFO    ] 200
[2026-10-28 07:04:55,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:04:55,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:04:55,243.243 INFO    ] No update needed
[2026-10-28 07:04:55,246.246 INFO    ] Checking for camera pi updates...
[2026-10-28 07:04:55,283.283 INFO    ] 200
[2026-10-28 07:04:55,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:04:55,332.332 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:04:55,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:04:55,416.416 INFO    ] No camera update needed
[2026-10-28 07:04:55,419.419 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:04:55,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:04:55,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:04:55,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:04:57,474.474 INFO    ] ================================================
[2026-10-28 07:04:57,490.490 INFO    ] Launching Daemon at Wed Oct 28 07:04:57 IST 2026
[2026-10-28 07:04:57,500.500 INFO    ] ================================================
[2026-10-28 07:04:58,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:04:58
[2026-10-28 07:04:58,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:04:58,891.891 INFO    ] Initializing speech engine...
[2026-10-28 07:04:58,899.899 INFO    ] 2026-10-28 07:04:58
[2026-10-28 07:04:59,172.172 INFO    ] 2026-10-28 07:04:59
[2026-10-28 07:04:59,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:04:59,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:04:59,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:04:59,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:04:59,740.740 INFO    ] time= 28/10/2026 07:04:59
[2026-10-28 07:04:59,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:04:59,765.765 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:04:59,921.921 INFO    ] No existing commands found in stream
[2026-10-28 07:05:04,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:05:04,954.954 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-28 07:05:05,776.776 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:05:05,779.779 INFO    ] Checking for system updates...
[2026-10-28 07:05:05,817.817 INFO    ] 200
[2026-10-28 07:05:05,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:05:05,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:05:05,876.876 INFO    ] No update needed
[2026-10-28 07:05:05,878.878 INFO    ] Checking for camera pi updates...
[2026-10-28 07:05:05,912.912 INFO    ] 200
[2026-10-28 07:05:05,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:05:05,955.955 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:05:06,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:05:06,041.041 INFO    ] No camera update needed
[2026-10-28 07:05:06,043.043 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:05:06,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:05:06,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:05:06,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:05:08,097.097 INFO    ] ================================================
[2026-10-28 07:05:08,113.113 INFO    ] Launching Daemon at Wed Oct 28 07:05:08 IST 2026
[2026-10-28 07:05:08,124.124 INFO    ] ================================================
[2026-10-28 07:05:08,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:05:08
[2026-10-28 07:05:09,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:05:09,578.578 INFO    ] Initializing speech engine...
[2026-10-28 07:05:09,587.587 INFO    ] 2026-10-28 07:05:09
[2026-10-28 07:05:09,836.836 INFO    ] 2026-10-28 07:05:09
[2026-10-28 07:05:09,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:05:10,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:05:10,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:05:10,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:05:10,395.395 INFO    ] time= 28/10/2026 07:05:10
[2026-10-28 07:05:10,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:05:10,430.430 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:05:10,563.563 INFO    ] No existing commands found in stream
[2026-10-28 07:05:15,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:05:15,591.591 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-28 07:05:19,474.474 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:05:19,477.477 INFO    ] Checking for system updates...
[2026-10-28 07:05:19,517.517 INFO    ] 200
[2026-10-28 07:05:19,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:05:19,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:05:19,574.574 INFO    ] No update needed
[2026-10-28 07:05:19,576.576 INFO    ] Checking for camera pi updates...
[2026-10-28 07:05:19,614.614 INFO    ] 200
[2026-10-28 07:05:19,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:05:19,658.658 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:05:19,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:05:19,740.740 INFO    ] No camera update needed
[2026-10-28 07:05:19,742.742 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:05:19,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:05:19,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:05:19,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:05:21,798.798 INFO    ] ================================================
[2026-10-28 07:05:21,813.813 INFO    ] Launching Daemon at Wed Oct 28 07:05:21 IST 2026
[2026-10-28 07:05:21,824.824 INFO    ] ================================================
[2026-10-28 07:05:22,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:05:22
[2026-10-28 07:05:23,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:05:23,457.457 INFO    ] Initializing speech engine...
[2026-10-28 07:05:23,471.471 INFO    ] 2026-10-28 07:05:23
[2026-10-28 07:05:23,745.745 INFO    ] 2026-10-28 07:05:23
[2026-10-28 07:05:23,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:05:24,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:05:24,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:05:24,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:05:24,310.310 INFO    ] time= 28/10/2026 07:05:24
[2026-10-28 07:05:24,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:05:24,357.357 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:05:24,469.469 INFO    ] No existing commands found in stream
[2026-10-28 07:05:29,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:05:29,497.497 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-28 07:05:33,890.890 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:05:33,893.893 INFO    ] Checking for system updates...
[2026-10-28 07:05:33,928.928 INFO    ] 200
[2026-10-28 07:05:33,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:05:33,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:05:33,992.992 INFO    ] No update needed
[2026-10-28 07:05:33,994.994 INFO    ] Checking for camera pi updates...
[2026-10-28 07:05:34,027.027 INFO    ] 200
[2026-10-28 07:05:34,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:05:34,075.075 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:05:34,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:05:34,163.163 INFO    ] No camera update needed
[2026-10-28 07:05:34,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:05:34,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:05:34,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:05:34,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:05:36,219.219 INFO    ] ================================================
[2026-10-28 07:05:36,235.235 INFO    ] Launching Daemon at Wed Oct 28 07:05:36 IST 2026
[2026-10-28 07:05:36,246.246 INFO    ] ================================================
[2026-10-28 07:05:36,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:05:36
[2026-10-28 07:05:37,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:05:37,877.877 INFO    ] Initializing speech engine...
[2026-10-28 07:05:37,892.892 INFO    ] 2026-10-28 07:05:37
[2026-10-28 07:05:38,172.172 INFO    ] 2026-10-28 07:05:38
[2026-10-28 07:05:38,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:05:38,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:05:38,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:05:38,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:05:38,896.896 INFO    ] time= 28/10/2026 07:05:38
[2026-10-28 07:05:38,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:05:38,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:05:39,109.109 INFO    ] No existing commands found in stream
[2026-10-28 07:05:44,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:05:44,149.149 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 07:05:44,743.743 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:05:44,746.746 INFO    ] Checking for system updates...
[2026-10-28 07:05:44,784.784 INFO    ] 200
[2026-10-28 07:05:44,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:05:44,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:05:44,850.850 INFO    ] No update needed
[2026-10-28 07:05:44,852.852 INFO    ] Checking for camera pi updates...
[2026-10-28 07:05:44,889.889 INFO    ] 200
[2026-10-28 07:05:44,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:05:44,933.933 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:05:45,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:05:45,035.035 INFO    ] No camera update needed
[2026-10-28 07:05:45,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:05:45,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:05:45,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:05:45,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:05:47,095.095 INFO    ] ================================================
[2026-10-28 07:05:47,111.111 INFO    ] Launching Daemon at Wed Oct 28 07:05:47 IST 2026
[2026-10-28 07:05:47,122.122 INFO    ] ================================================
[2026-10-28 07:05:47,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:05:47
[2026-10-28 07:05:48,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:05:48,757.757 INFO    ] Initializing speech engine...
[2026-10-28 07:05:48,769.769 INFO    ] 2026-10-28 07:05:48
[2026-10-28 07:05:49,057.057 INFO    ] 2026-10-28 07:05:49
[2026-10-28 07:05:49,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:05:49,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:05:49,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:05:49,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:05:49,607.607 INFO    ] time= 28/10/2026 07:05:49
[2026-10-28 07:05:49,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:05:49,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:05:49,790.790 INFO    ] No existing commands found in stream
[2026-10-28 07:05:54,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:05:54,824.824 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 07:05:57,566.566 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:05:57,569.569 INFO    ] Checking for system updates...
[2026-10-28 07:05:57,607.607 INFO    ] 200
[2026-10-28 07:05:57,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:05:57,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:05:57,675.675 INFO    ] No update needed
[2026-10-28 07:05:57,678.678 INFO    ] Checking for camera pi updates...
[2026-10-28 07:05:57,713.713 INFO    ] 200
[2026-10-28 07:05:57,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:05:57,764.764 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:05:57,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:05:57,847.847 INFO    ] No camera update needed
[2026-10-28 07:05:57,849.849 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:05:57,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:05:57,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:05:57,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:05:59,906.906 INFO    ] ================================================
[2026-10-28 07:05:59,921.921 INFO    ] Launching Daemon at Wed Oct 28 07:05:59 IST 2026
[2026-10-28 07:05:59,932.932 INFO    ] ================================================
[2026-10-28 07:06:00,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:06:00
[2026-10-28 07:06:01,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:06:01,626.626 INFO    ] Initializing speech engine...
[2026-10-28 07:06:01,629.629 INFO    ] 2026-10-28 07:06:01
[2026-10-28 07:06:02,035.035 INFO    ] 2026-10-28 07:06:01
[2026-10-28 07:06:02,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:06:02,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:06:02,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:06:02,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:06:02,602.602 INFO    ] time= 28/10/2026 07:06:02
[2026-10-28 07:06:02,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:06:02,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:06:02,779.779 INFO    ] No existing commands found in stream
[2026-10-28 07:06:07,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:06:07,824.824 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 07:06:08,496.496 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:06:08,499.499 INFO    ] Checking for system updates...
[2026-10-28 07:06:08,539.539 INFO    ] 200
[2026-10-28 07:06:08,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:06:08,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:06:08,599.599 INFO    ] No update needed
[2026-10-28 07:06:08,602.602 INFO    ] Checking for camera pi updates...
[2026-10-28 07:06:08,639.639 INFO    ] 200
[2026-10-28 07:06:08,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:06:08,685.685 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:06:08,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:06:08,760.760 INFO    ] No camera update needed
[2026-10-28 07:06:08,763.763 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:06:08,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:06:08,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:06:08,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:06:10,819.819 INFO    ] ================================================
[2026-10-28 07:06:10,834.834 INFO    ] Launching Daemon at Wed Oct 28 07:06:10 IST 2026
[2026-10-28 07:06:10,844.844 INFO    ] ================================================
[2026-10-28 07:06:11,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:06:11
[2026-10-28 07:06:12,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:06:12,291.291 INFO    ] Initializing speech engine...
[2026-10-28 07:06:12,301.301 INFO    ] 2026-10-28 07:06:12
[2026-10-28 07:06:12,549.549 INFO    ] 2026-10-28 07:06:12
[2026-10-28 07:06:12,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:06:12,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:06:12,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:06:13,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:06:13,103.103 INFO    ] time= 28/10/2026 07:06:13
[2026-10-28 07:06:13,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:06:13,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:06:13,295.295 INFO    ] No existing commands found in stream
[2026-10-28 07:06:18,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:06:18,323.323 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-28 07:06:21,570.570 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:06:21,572.572 INFO    ] Checking for system updates...
[2026-10-28 07:06:21,609.609 INFO    ] 200
[2026-10-28 07:06:21,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:06:21,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:06:21,666.666 INFO    ] No update needed
[2026-10-28 07:06:21,669.669 INFO    ] Checking for camera pi updates...
[2026-10-28 07:06:21,702.702 INFO    ] 200
[2026-10-28 07:06:21,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:06:21,745.745 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:06:21,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:06:21,801.801 INFO    ] No camera update needed
[2026-10-28 07:06:21,803.803 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:06:21,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:06:21,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:06:21,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:06:23,857.857 INFO    ] ================================================
[2026-10-28 07:06:23,872.872 INFO    ] Launching Daemon at Wed Oct 28 07:06:23 IST 2026
[2026-10-28 07:06:23,883.883 INFO    ] ================================================
[2026-10-28 07:06:24,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:06:24
[2026-10-28 07:06:25,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:06:25,336.336 INFO    ] Initializing speech engine...
[2026-10-28 07:06:25,341.341 INFO    ] 2026-10-28 07:06:25
[2026-10-28 07:06:25,603.603 INFO    ] 2026-10-28 07:06:25
[2026-10-28 07:06:25,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:06:25,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:06:25,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:06:26,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:06:26,145.145 INFO    ] time= 28/10/2026 07:06:26
[2026-10-28 07:06:26,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:06:26,169.169 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:06:26,286.286 INFO    ] No existing commands found in stream
[2026-10-28 07:06:31,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:06:31,308.308 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-28 07:06:35,155.155 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:06:35,158.158 INFO    ] Checking for system updates...
[2026-10-28 07:06:35,195.195 INFO    ] 200
[2026-10-28 07:06:35,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:06:35,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:06:35,252.252 INFO    ] No update needed
[2026-10-28 07:06:35,254.254 INFO    ] Checking for camera pi updates...
[2026-10-28 07:06:35,288.288 INFO    ] 200
[2026-10-28 07:06:35,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:06:35,330.330 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:06:35,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:06:35,402.402 INFO    ] No camera update needed
[2026-10-28 07:06:35,405.405 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:06:35,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:06:35,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:06:35,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:06:37,459.459 INFO    ] ================================================
[2026-10-28 07:06:37,473.473 INFO    ] Launching Daemon at Wed Oct 28 07:06:37 IST 2026
[2026-10-28 07:06:37,484.484 INFO    ] ================================================
[2026-10-28 07:06:38,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:06:38
[2026-10-28 07:06:38,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:06:38,924.924 INFO    ] Initializing speech engine...
[2026-10-28 07:06:38,930.930 INFO    ] 2026-10-28 07:06:38
[2026-10-28 07:06:39,225.225 INFO    ] 2026-10-28 07:06:39
[2026-10-28 07:06:39,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:06:39,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:06:39,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:06:39,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:06:39,731.731 INFO    ] time= 28/10/2026 07:06:39
[2026-10-28 07:06:39,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:06:39,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:06:39,974.974 INFO    ] No existing commands found in stream
[2026-10-28 07:06:45,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:06:45,004.004 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-28 07:06:48,618.618 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:06:48,620.620 INFO    ] Checking for system updates...
[2026-10-28 07:06:48,659.659 INFO    ] 200
[2026-10-28 07:06:48,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:06:48,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:06:48,722.722 INFO    ] No update needed
[2026-10-28 07:06:48,724.724 INFO    ] Checking for camera pi updates...
[2026-10-28 07:06:48,758.758 INFO    ] 200
[2026-10-28 07:06:48,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:06:48,801.801 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:06:48,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:06:48,854.854 INFO    ] No camera update needed
[2026-10-28 07:06:48,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:06:48,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:06:48,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:06:48,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:06:50,913.913 INFO    ] ================================================
[2026-10-28 07:06:50,928.928 INFO    ] Launching Daemon at Wed Oct 28 07:06:50 IST 2026
[2026-10-28 07:06:50,939.939 INFO    ] ================================================
[2026-10-28 07:06:51,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:06:51
[2026-10-28 07:06:52,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:06:52,339.339 INFO    ] Initializing speech engine...
[2026-10-28 07:06:52,355.355 INFO    ] 2026-10-28 07:06:52
[2026-10-28 07:06:52,634.634 INFO    ] 2026-10-28 07:06:52
[2026-10-28 07:06:52,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:06:52,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:06:52,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:06:53,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:06:53,121.121 INFO    ] time= 28/10/2026 07:06:53
[2026-10-28 07:06:53,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:06:53,230.230 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:06:53,326.326 INFO    ] No existing commands found in stream
[2026-10-28 07:06:58,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:06:58,340.340 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-28 07:07:01,020.020 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:07:01,023.023 INFO    ] Checking for system updates...
[2026-10-28 07:07:01,058.058 INFO    ] 200
[2026-10-28 07:07:01,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:07:01,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:07:01,115.115 INFO    ] No update needed
[2026-10-28 07:07:01,118.118 INFO    ] Checking for camera pi updates...
[2026-10-28 07:07:01,151.151 INFO    ] 200
[2026-10-28 07:07:01,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:07:01,193.193 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:07:01,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:07:01,256.256 INFO    ] No camera update needed
[2026-10-28 07:07:01,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:07:01,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:07:01,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:07:01,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:07:03,313.313 INFO    ] ================================================
[2026-10-28 07:07:03,329.329 INFO    ] Launching Daemon at Wed Oct 28 07:07:03 IST 2026
[2026-10-28 07:07:03,339.339 INFO    ] ================================================
[2026-10-28 07:07:04,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:07:04
[2026-10-28 07:07:04,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:07:04,996.996 INFO    ] Initializing speech engine...
[2026-10-28 07:07:05,009.009 INFO    ] 2026-10-28 07:07:04
[2026-10-28 07:07:05,283.283 INFO    ] 2026-10-28 07:07:05
[2026-10-28 07:07:05,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:07:05,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:07:05,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:07:05,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:07:06,029.029 INFO    ] time= 28/10/2026 07:07:05
[2026-10-28 07:07:06,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:07:06,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:07:06,264.264 INFO    ] No existing commands found in stream
[2026-10-28 07:07:11,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:07:11,299.299 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 07:07:14,917.917 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:07:14,920.920 INFO    ] Checking for system updates...
[2026-10-28 07:07:14,956.956 INFO    ] 200
[2026-10-28 07:07:14,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:07:15,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:07:15,021.021 INFO    ] No update needed
[2026-10-28 07:07:15,024.024 INFO    ] Checking for camera pi updates...
[2026-10-28 07:07:15,059.059 INFO    ] 200
[2026-10-28 07:07:15,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:07:15,107.107 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:07:15,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:07:15,296.296 INFO    ] No camera update needed
[2026-10-28 07:07:15,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:07:15,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:07:15,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:07:15,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:07:17,355.355 INFO    ] ================================================
[2026-10-28 07:07:17,370.370 INFO    ] Launching Daemon at Wed Oct 28 07:07:17 IST 2026
[2026-10-28 07:07:17,381.381 INFO    ] ================================================
[2026-10-28 07:07:17,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:07:17
[2026-10-28 07:07:18,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:07:18,808.808 INFO    ] Initializing speech engine...
[2026-10-28 07:07:18,836.836 INFO    ] 2026-10-28 07:07:18
[2026-10-28 07:07:19,115.115 INFO    ] 2026-10-28 07:07:19
[2026-10-28 07:07:19,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:07:19,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:07:19,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:07:19,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:07:19,747.747 INFO    ] time= 28/10/2026 07:07:19
[2026-10-28 07:07:19,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:07:19,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:07:19,884.884 INFO    ] No existing commands found in stream
[2026-10-28 07:07:24,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:07:24,917.917 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 07:07:26,314.314 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:07:26,316.316 INFO    ] Checking for system updates...
[2026-10-28 07:07:26,357.357 INFO    ] 200
[2026-10-28 07:07:26,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:07:26,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:07:26,439.439 INFO    ] No update needed
[2026-10-28 07:07:26,441.441 INFO    ] Checking for camera pi updates...
[2026-10-28 07:07:26,496.496 INFO    ] 200
[2026-10-28 07:07:26,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:07:26,539.539 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:07:26,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:07:26,645.645 INFO    ] No camera update needed
[2026-10-28 07:07:26,648.648 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:07:26,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:07:26,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:07:26,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:07:28,706.706 INFO    ] ================================================
[2026-10-28 07:07:28,722.722 INFO    ] Launching Daemon at Wed Oct 28 07:07:28 IST 2026
[2026-10-28 07:07:28,734.734 INFO    ] ================================================
[2026-10-28 07:07:29,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:07:29
[2026-10-28 07:07:30,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:07:30,397.397 INFO    ] Initializing speech engine...
[2026-10-28 07:07:30,404.404 INFO    ] 2026-10-28 07:07:30
[2026-10-28 07:07:30,686.686 INFO    ] 2026-10-28 07:07:30
[2026-10-28 07:07:30,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:07:30,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:07:30,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:07:31,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:07:31,219.219 INFO    ] time= 28/10/2026 07:07:31
[2026-10-28 07:07:31,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:07:31,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:07:31,402.402 INFO    ] No existing commands found in stream
[2026-10-28 07:07:36,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:07:36,420.420 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 07:07:38,697.697 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:07:38,699.699 INFO    ] Checking for system updates...
[2026-10-28 07:07:38,735.735 INFO    ] 200
[2026-10-28 07:07:38,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:07:38,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:07:38,796.796 INFO    ] No update needed
[2026-10-28 07:07:38,798.798 INFO    ] Checking for camera pi updates...
[2026-10-28 07:07:38,831.831 INFO    ] 200
[2026-10-28 07:07:38,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:07:38,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:07:38,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:07:38,956.956 INFO    ] No camera update needed
[2026-10-28 07:07:38,959.959 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:07:38,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:07:38,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:07:38,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:07:41,013.013 INFO    ] ================================================
[2026-10-28 07:07:41,028.028 INFO    ] Launching Daemon at Wed Oct 28 07:07:41 IST 2026
[2026-10-28 07:07:41,038.038 INFO    ] ================================================
[2026-10-28 07:07:41,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:07:41
[2026-10-28 07:07:42,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:07:42,459.459 INFO    ] Initializing speech engine...
[2026-10-28 07:07:42,485.485 INFO    ] 2026-10-28 07:07:42
[2026-10-28 07:07:42,759.759 INFO    ] 2026-10-28 07:07:42
[2026-10-28 07:07:42,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:07:43,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:07:43,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:07:43,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:07:43,397.397 INFO    ] time= 28/10/2026 07:07:43
[2026-10-28 07:07:43,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:07:43,420.420 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:07:43,555.555 INFO    ] No existing commands found in stream
[2026-10-28 07:07:48,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:07:48,578.578 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-28 07:07:51,652.652 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:07:51,655.655 INFO    ] Checking for system updates...
[2026-10-28 07:07:51,690.690 INFO    ] 200
[2026-10-28 07:07:51,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:07:51,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:07:51,748.748 INFO    ] No update needed
[2026-10-28 07:07:51,750.750 INFO    ] Checking for camera pi updates...
[2026-10-28 07:07:51,785.785 INFO    ] 200
[2026-10-28 07:07:51,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:07:51,827.827 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:07:51,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:07:51,910.910 INFO    ] No camera update needed
[2026-10-28 07:07:51,913.913 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:07:51,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:07:51,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:07:51,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:07:53,967.967 INFO    ] ================================================
[2026-10-28 07:07:53,982.982 INFO    ] Launching Daemon at Wed Oct 28 07:07:53 IST 2026
[2026-10-28 07:07:53,993.993 INFO    ] ================================================
[2026-10-28 07:07:54,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:07:54
[2026-10-28 07:07:55,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:07:55,461.461 INFO    ] Initializing speech engine...
[2026-10-28 07:07:55,468.468 INFO    ] 2026-10-28 07:07:55
[2026-10-28 07:07:55,761.761 INFO    ] 2026-10-28 07:07:55
[2026-10-28 07:07:55,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:07:56,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:07:56,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:07:56,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:07:56,296.296 INFO    ] time= 28/10/2026 07:07:56
[2026-10-28 07:07:56,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:07:56,347.347 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:07:56,470.470 INFO    ] No existing commands found in stream
[2026-10-28 07:08:01,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:08:01,500.500 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-28 07:08:02,377.377 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:08:02,381.381 INFO    ] Checking for system updates...
[2026-10-28 07:08:02,420.420 INFO    ] 200
[2026-10-28 07:08:02,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:08:02,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:08:02,491.491 INFO    ] No update needed
[2026-10-28 07:08:02,494.494 INFO    ] Checking for camera pi updates...
[2026-10-28 07:08:02,537.537 INFO    ] 200
[2026-10-28 07:08:02,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:08:02,589.589 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:08:02,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:08:02,690.690 INFO    ] No camera update needed
[2026-10-28 07:08:02,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:08:02,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:08:02,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:08:02,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:08:04,751.751 INFO    ] ================================================
[2026-10-28 07:08:04,767.767 INFO    ] Launching Daemon at Wed Oct 28 07:08:04 IST 2026
[2026-10-28 07:08:04,778.778 INFO    ] ================================================
[2026-10-28 07:08:05,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:08:05
[2026-10-28 07:08:05,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:08:06,261.261 INFO    ] Initializing speech engine...
[2026-10-28 07:08:06,271.271 INFO    ] 2026-10-28 07:08:06
[2026-10-28 07:08:06,521.521 INFO    ] 2026-10-28 07:08:06
[2026-10-28 07:08:06,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:08:06,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:08:06,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:08:07,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:08:07,088.088 INFO    ] time= 28/10/2026 07:08:07
[2026-10-28 07:08:07,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:08:07,112.112 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:08:07,246.246 INFO    ] No existing commands found in stream
[2026-10-28 07:08:12,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:08:12,263.263 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-28 07:08:14,339.339 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:08:14,342.342 INFO    ] Checking for system updates...
[2026-10-28 07:08:14,377.377 INFO    ] 200
[2026-10-28 07:08:14,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:08:14,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:08:14,435.435 INFO    ] No update needed
[2026-10-28 07:08:14,437.437 INFO    ] Checking for camera pi updates...
[2026-10-28 07:08:14,471.471 INFO    ] 200
[2026-10-28 07:08:14,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:08:14,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:08:14,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:08:14,565.565 INFO    ] No camera update needed
[2026-10-28 07:08:14,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:08:14,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:08:14,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:08:14,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:08:16,621.621 INFO    ] ================================================
[2026-10-28 07:08:16,636.636 INFO    ] Launching Daemon at Wed Oct 28 07:08:16 IST 2026
[2026-10-28 07:08:16,648.648 INFO    ] ================================================
[2026-10-28 07:08:17,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:08:17
[2026-10-28 07:08:17,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:08:18,304.304 INFO    ] Initializing speech engine...
[2026-10-28 07:08:18,316.316 INFO    ] 2026-10-28 07:08:18
[2026-10-28 07:08:18,629.629 INFO    ] 2026-10-28 07:08:18
[2026-10-28 07:08:18,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:08:18,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:08:18,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:08:19,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:08:19,181.181 INFO    ] time= 28/10/2026 07:08:19
[2026-10-28 07:08:19,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:08:19,240.240 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:08:19,388.388 INFO    ] No existing commands found in stream
[2026-10-28 07:08:24,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:08:24,416.416 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 07:08:28,215.215 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:08:28,219.219 INFO    ] Checking for system updates...
[2026-10-28 07:08:28,257.257 INFO    ] 200
[2026-10-28 07:08:28,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:08:28,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:08:28,317.317 INFO    ] No update needed
[2026-10-28 07:08:28,320.320 INFO    ] Checking for camera pi updates...
[2026-10-28 07:08:28,354.354 INFO    ] 200
[2026-10-28 07:08:28,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:08:28,397.397 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:08:28,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:08:28,489.489 INFO    ] No camera update needed
[2026-10-28 07:08:28,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:08:28,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:08:28,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:08:28,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:08:30,545.545 INFO    ] ================================================
[2026-10-28 07:08:30,561.561 INFO    ] Launching Daemon at Wed Oct 28 07:08:30 IST 2026
[2026-10-28 07:08:30,572.572 INFO    ] ================================================
[2026-10-28 07:08:31,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:08:31
[2026-10-28 07:08:31,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:08:32,195.195 INFO    ] Initializing speech engine...
[2026-10-28 07:08:32,202.202 INFO    ] 2026-10-28 07:08:32
[2026-10-28 07:08:32,495.495 INFO    ] 2026-10-28 07:08:32
[2026-10-28 07:08:32,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:08:32,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:08:32,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:08:33,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:08:33,148.148 INFO    ] time= 28/10/2026 07:08:33
[2026-10-28 07:08:33,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:08:33,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:08:33,313.313 INFO    ] No existing commands found in stream
[2026-10-28 07:08:38,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:08:38,330.330 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-28 07:08:40,298.298 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:08:40,301.301 INFO    ] Checking for system updates...
[2026-10-28 07:08:40,337.337 INFO    ] 200
[2026-10-28 07:08:40,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:08:40,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:08:40,393.393 INFO    ] No update needed
[2026-10-28 07:08:40,396.396 INFO    ] Checking for camera pi updates...
[2026-10-28 07:08:40,429.429 INFO    ] 200
[2026-10-28 07:08:40,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:08:40,471.471 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:08:40,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:08:40,577.577 INFO    ] No camera update needed
[2026-10-28 07:08:40,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:08:40,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:08:40,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:08:40,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:08:42,633.633 INFO    ] ================================================
[2026-10-28 07:08:42,649.649 INFO    ] Launching Daemon at Wed Oct 28 07:08:42 IST 2026
[2026-10-28 07:08:42,663.663 INFO    ] ================================================
[2026-10-28 07:08:43,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:08:43
[2026-10-28 07:08:43,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:08:44,116.116 INFO    ] Initializing speech engine...
[2026-10-28 07:08:44,125.125 INFO    ] 2026-10-28 07:08:44
[2026-10-28 07:08:44,380.380 INFO    ] 2026-10-28 07:08:44
[2026-10-28 07:08:44,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:08:44,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:08:44,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:08:44,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:08:44,928.928 INFO    ] time= 28/10/2026 07:08:44
[2026-10-28 07:08:44,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:08:44,953.953 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:08:45,085.085 INFO    ] No existing commands found in stream
[2026-10-28 07:08:50,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:08:50,111.111 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 07:08:50,699.699 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:08:50,702.702 INFO    ] Checking for system updates...
[2026-10-28 07:08:50,739.739 INFO    ] 200
[2026-10-28 07:08:50,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:08:50,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:08:50,798.798 INFO    ] No update needed
[2026-10-28 07:08:50,801.801 INFO    ] Checking for camera pi updates...
[2026-10-28 07:08:50,837.837 INFO    ] 200
[2026-10-28 07:08:50,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:08:50,882.882 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:08:50,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:08:50,993.993 INFO    ] No camera update needed
[2026-10-28 07:08:50,996.996 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:08:50,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:08:51,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:08:51,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:08:53,055.055 INFO    ] ================================================
[2026-10-28 07:08:53,071.071 INFO    ] Launching Daemon at Wed Oct 28 07:08:53 IST 2026
[2026-10-28 07:08:53,083.083 INFO    ] ================================================
[2026-10-28 07:08:53,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:08:53
[2026-10-28 07:08:54,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:08:54,674.674 INFO    ] Initializing speech engine...
[2026-10-28 07:08:54,683.683 INFO    ] 2026-10-28 07:08:54
[2026-10-28 07:08:54,944.944 INFO    ] 2026-10-28 07:08:54
[2026-10-28 07:08:54,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:08:55,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:08:55,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:08:55,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:08:55,486.486 INFO    ] time= 28/10/2026 07:08:55
[2026-10-28 07:08:55,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:08:55,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:08:55,641.641 INFO    ] No existing commands found in stream
[2026-10-28 07:09:00,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:09:00,659.659 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-28 07:09:04,849.849 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:09:04,852.852 INFO    ] Checking for system updates...
[2026-10-28 07:09:04,887.887 INFO    ] 200
[2026-10-28 07:09:04,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:09:04,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:09:04,945.945 INFO    ] No update needed
[2026-10-28 07:09:04,947.947 INFO    ] Checking for camera pi updates...
[2026-10-28 07:09:04,981.981 INFO    ] 200
[2026-10-28 07:09:04,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:09:05,024.024 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:09:05,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:09:05,075.075 INFO    ] No camera update needed
[2026-10-28 07:09:05,078.078 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:09:05,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:09:05,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:09:05,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:09:07,132.132 INFO    ] ================================================
[2026-10-28 07:09:07,147.147 INFO    ] Launching Daemon at Wed Oct 28 07:09:07 IST 2026
[2026-10-28 07:09:07,158.158 INFO    ] ================================================
[2026-10-28 07:09:07,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:09:07
[2026-10-28 07:09:08,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:09:08,595.595 INFO    ] Initializing speech engine...
[2026-10-28 07:09:08,618.618 INFO    ] 2026-10-28 07:09:08
[2026-10-28 07:09:08,874.874 INFO    ] 2026-10-28 07:09:08
[2026-10-28 07:09:08,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:09:09,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:09:09,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:09:09,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:09:09,435.435 INFO    ] time= 28/10/2026 07:09:09
[2026-10-28 07:09:09,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:09:09,460.460 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:09:09,587.587 INFO    ] No existing commands found in stream
[2026-10-28 07:09:14,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:09:14,603.603 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-28 07:09:18,113.113 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:09:18,116.116 INFO    ] Checking for system updates...
[2026-10-28 07:09:18,151.151 INFO    ] 200
[2026-10-28 07:09:18,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:09:18,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:09:18,209.209 INFO    ] No update needed
[2026-10-28 07:09:18,212.212 INFO    ] Checking for camera pi updates...
[2026-10-28 07:09:18,245.245 INFO    ] 200
[2026-10-28 07:09:18,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:09:18,291.291 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:09:18,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:09:18,463.463 INFO    ] No camera update needed
[2026-10-28 07:09:18,465.465 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:09:18,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:09:18,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:09:18,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:09:20,518.518 INFO    ] ================================================
[2026-10-28 07:09:20,533.533 INFO    ] Launching Daemon at Wed Oct 28 07:09:20 IST 2026
[2026-10-28 07:09:20,544.544 INFO    ] ================================================
[2026-10-28 07:09:21,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:09:21
[2026-10-28 07:09:21,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:09:22,118.118 INFO    ] Initializing speech engine...
[2026-10-28 07:09:22,132.132 INFO    ] 2026-10-28 07:09:22
[2026-10-28 07:09:22,400.400 INFO    ] 2026-10-28 07:09:22
[2026-10-28 07:09:22,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:09:22,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:09:22,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:09:22,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:09:22,999.999 INFO    ] time= 28/10/2026 07:09:22
[2026-10-28 07:09:23,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:09:23,022.022 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:09:23,183.183 INFO    ] No existing commands found in stream
[2026-10-28 07:09:28,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:09:28,218.218 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-28 07:09:29,216.216 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:09:29,219.219 INFO    ] Checking for system updates...
[2026-10-28 07:09:29,265.265 INFO    ] 200
[2026-10-28 07:09:29,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:09:29,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:09:29,342.342 INFO    ] No update needed
[2026-10-28 07:09:29,345.345 INFO    ] Checking for camera pi updates...
[2026-10-28 07:09:29,382.382 INFO    ] 200
[2026-10-28 07:09:29,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:09:29,425.425 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:09:29,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:09:29,509.509 INFO    ] No camera update needed
[2026-10-28 07:09:29,511.511 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:09:29,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:09:29,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:09:29,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:09:31,567.567 INFO    ] ================================================
[2026-10-28 07:09:31,583.583 INFO    ] Launching Daemon at Wed Oct 28 07:09:31 IST 2026
[2026-10-28 07:09:31,595.595 INFO    ] ================================================
[2026-10-28 07:09:32,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:09:32
[2026-10-28 07:09:32,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:09:33,142.142 INFO    ] Initializing speech engine...
[2026-10-28 07:09:33,152.152 INFO    ] 2026-10-28 07:09:33
[2026-10-28 07:09:33,441.441 INFO    ] 2026-10-28 07:09:33
[2026-10-28 07:09:33,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:09:33,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:09:33,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:09:34,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:09:34,008.008 INFO    ] time= 28/10/2026 07:09:34
[2026-10-28 07:09:34,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:09:34,032.032 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:09:34,164.164 INFO    ] No existing commands found in stream
[2026-10-28 07:09:39,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:09:39,182.182 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-28 07:09:40,992.992 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:09:40,995.995 INFO    ] Checking for system updates...
[2026-10-28 07:09:41,030.030 INFO    ] 200
[2026-10-28 07:09:41,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:09:41,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:09:41,088.088 INFO    ] No update needed
[2026-10-28 07:09:41,090.090 INFO    ] Checking for camera pi updates...
[2026-10-28 07:09:41,123.123 INFO    ] 200
[2026-10-28 07:09:41,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:09:41,170.170 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:09:41,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:09:41,256.256 INFO    ] No camera update needed
[2026-10-28 07:09:41,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:09:41,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:09:41,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:09:41,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:09:43,310.310 INFO    ] ================================================
[2026-10-28 07:09:43,325.325 INFO    ] Launching Daemon at Wed Oct 28 07:09:43 IST 2026
[2026-10-28 07:09:43,336.336 INFO    ] ================================================
[2026-10-28 07:09:43,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:09:43
[2026-10-28 07:09:44,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:09:44,803.803 INFO    ] Initializing speech engine...
[2026-10-28 07:09:44,810.810 INFO    ] 2026-10-28 07:09:44
[2026-10-28 07:09:45,076.076 INFO    ] 2026-10-28 07:09:45
[2026-10-28 07:09:45,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:09:45,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:09:45,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:09:45,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:09:45,610.610 INFO    ] time= 28/10/2026 07:09:45
[2026-10-28 07:09:45,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:09:45,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:09:45,837.837 INFO    ] No existing commands found in stream
[2026-10-28 07:09:50,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:09:50,862.862 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 07:09:54,607.607 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:09:54,610.610 INFO    ] Checking for system updates...
[2026-10-28 07:09:54,646.646 INFO    ] 200
[2026-10-28 07:09:54,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:09:54,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:09:54,703.703 INFO    ] No update needed
[2026-10-28 07:09:54,705.705 INFO    ] Checking for camera pi updates...
[2026-10-28 07:09:54,738.738 INFO    ] 200
[2026-10-28 07:09:54,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:09:54,781.781 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:09:54,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:09:54,891.891 INFO    ] No camera update needed
[2026-10-28 07:09:54,893.893 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:09:54,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:09:54,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:09:54,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:09:56,946.946 INFO    ] ================================================
[2026-10-28 07:09:56,961.961 INFO    ] Launching Daemon at Wed Oct 28 07:09:56 IST 2026
[2026-10-28 07:09:56,972.972 INFO    ] ================================================
[2026-10-28 07:09:57,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:09:57
[2026-10-28 07:09:58,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:09:58,431.431 INFO    ] Initializing speech engine...
[2026-10-28 07:09:58,441.441 INFO    ] 2026-10-28 07:09:58
[2026-10-28 07:09:58,700.700 INFO    ] 2026-10-28 07:09:58
[2026-10-28 07:09:58,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:09:59,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:09:59,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:09:59,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:09:59,350.350 INFO    ] time= 28/10/2026 07:09:59
[2026-10-28 07:09:59,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:09:59,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:09:59,611.611 INFO    ] No existing commands found in stream
[2026-10-28 07:10:04,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:10:04,639.639 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-28 07:10:08,954.954 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:10:08,957.957 INFO    ] Checking for system updates...
[2026-10-28 07:10:08,992.992 INFO    ] 200
[2026-10-28 07:10:08,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:10:09,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:10:09,049.049 INFO    ] No update needed
[2026-10-28 07:10:09,051.051 INFO    ] Checking for camera pi updates...
[2026-10-28 07:10:09,085.085 INFO    ] 200
[2026-10-28 07:10:09,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:10:09,128.128 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:10:09,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:10:09,187.187 INFO    ] No camera update needed
[2026-10-28 07:10:09,190.190 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:10:09,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:10:09,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:10:09,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:10:11,243.243 INFO    ] ================================================
[2026-10-28 07:10:11,258.258 INFO    ] Launching Daemon at Wed Oct 28 07:10:11 IST 2026
[2026-10-28 07:10:11,270.270 INFO    ] ================================================
[2026-10-28 07:10:11,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:10:11
[2026-10-28 07:10:12,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:10:12,715.715 INFO    ] Initializing speech engine...
[2026-10-28 07:10:12,729.729 INFO    ] 2026-10-28 07:10:12
[2026-10-28 07:10:12,983.983 INFO    ] 2026-10-28 07:10:12
[2026-10-28 07:10:13,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:10:13,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:10:13,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:10:13,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:10:13,539.539 INFO    ] time= 28/10/2026 07:10:13
[2026-10-28 07:10:13,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:10:13,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:10:13,695.695 INFO    ] No existing commands found in stream
[2026-10-28 07:10:18,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:10:18,712.712 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-28 07:10:21,051.051 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:10:21,054.054 INFO    ] Checking for system updates...
[2026-10-28 07:10:21,090.090 INFO    ] 200
[2026-10-28 07:10:21,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:10:21,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:10:21,148.148 INFO    ] No update needed
[2026-10-28 07:10:21,151.151 INFO    ] Checking for camera pi updates...
[2026-10-28 07:10:21,184.184 INFO    ] 200
[2026-10-28 07:10:21,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:10:21,226.226 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:10:21,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:10:21,309.309 INFO    ] No camera update needed
[2026-10-28 07:10:21,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:10:21,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:10:21,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:10:21,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:10:23,364.364 INFO    ] ================================================
[2026-10-28 07:10:23,379.379 INFO    ] Launching Daemon at Wed Oct 28 07:10:23 IST 2026
[2026-10-28 07:10:23,390.390 INFO    ] ================================================
[2026-10-28 07:10:24,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:10:24
[2026-10-28 07:10:24,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:10:24,978.978 INFO    ] Initializing speech engine...
[2026-10-28 07:10:24,988.988 INFO    ] 2026-10-28 07:10:24
[2026-10-28 07:10:25,276.276 INFO    ] 2026-10-28 07:10:25
[2026-10-28 07:10:25,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:10:25,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:10:25,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:10:25,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:10:26,023.023 INFO    ] time= 28/10/2026 07:10:25
[2026-10-28 07:10:26,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:10:26,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:10:26,285.285 INFO    ] No existing commands found in stream
[2026-10-28 07:10:31,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:10:31,298.298 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 07:10:35,818.818 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:10:35,821.821 INFO    ] Checking for system updates...
[2026-10-28 07:10:35,857.857 INFO    ] 200
[2026-10-28 07:10:35,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:10:35,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:10:35,917.917 INFO    ] No update needed
[2026-10-28 07:10:35,920.920 INFO    ] Checking for camera pi updates...
[2026-10-28 07:10:35,953.953 INFO    ] 200
[2026-10-28 07:10:35,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:10:35,995.995 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:10:36,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:10:36,077.077 INFO    ] No camera update needed
[2026-10-28 07:10:36,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:10:36,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:10:36,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:10:36,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:10:38,131.131 INFO    ] ================================================
[2026-10-28 07:10:38,147.147 INFO    ] Launching Daemon at Wed Oct 28 07:10:38 IST 2026
[2026-10-28 07:10:38,158.158 INFO    ] ================================================
[2026-10-28 07:10:38,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:10:38
[2026-10-28 07:10:39,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:10:39,611.611 INFO    ] Initializing speech engine...
[2026-10-28 07:10:39,617.617 INFO    ] 2026-10-28 07:10:39
[2026-10-28 07:10:39,879.879 INFO    ] 2026-10-28 07:10:39
[2026-10-28 07:10:39,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:10:40,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:10:40,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:10:40,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:10:40,426.426 INFO    ] time= 28/10/2026 07:10:40
[2026-10-28 07:10:40,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:10:40,450.450 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:10:40,531.531 INFO    ] No existing commands found in stream
[2026-10-28 07:10:45,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:10:45,556.556 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-28 07:10:47,395.395 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:10:47,398.398 INFO    ] Checking for system updates...
[2026-10-28 07:10:47,434.434 INFO    ] 200
[2026-10-28 07:10:47,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:10:47,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:10:47,490.490 INFO    ] No update needed
[2026-10-28 07:10:47,493.493 INFO    ] Checking for camera pi updates...
[2026-10-28 07:10:47,526.526 INFO    ] 200
[2026-10-28 07:10:47,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:10:47,569.569 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:10:47,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:10:47,675.675 INFO    ] No camera update needed
[2026-10-28 07:10:47,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:10:47,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:10:47,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:10:47,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:10:49,730.730 INFO    ] ================================================
[2026-10-28 07:10:49,746.746 INFO    ] Launching Daemon at Wed Oct 28 07:10:49 IST 2026
[2026-10-28 07:10:49,757.757 INFO    ] ================================================
[2026-10-28 07:10:50,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:10:50
[2026-10-28 07:10:50,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:10:51,183.183 INFO    ] Initializing speech engine...
[2026-10-28 07:10:51,192.192 INFO    ] 2026-10-28 07:10:51
[2026-10-28 07:10:51,474.474 INFO    ] 2026-10-28 07:10:51
[2026-10-28 07:10:51,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:10:51,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:10:51,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:10:51,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:10:52,031.031 INFO    ] time= 28/10/2026 07:10:51
[2026-10-28 07:10:52,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:10:52,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:10:52,161.161 INFO    ] No existing commands found in stream
[2026-10-28 07:10:57,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:10:57,184.184 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 07:11:01,456.456 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:11:01,460.460 INFO    ] Checking for system updates...
[2026-10-28 07:11:01,531.531 INFO    ] 200
[2026-10-28 07:11:01,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:11:01,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:11:01,610.610 INFO    ] No update needed
[2026-10-28 07:11:01,614.614 INFO    ] Checking for camera pi updates...
[2026-10-28 07:11:01,683.683 INFO    ] 200
[2026-10-28 07:11:01,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:11:01,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:11:01,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:11:01,856.856 INFO    ] No camera update needed
[2026-10-28 07:11:01,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:11:01,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:11:01,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:11:01,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:11:03,923.923 INFO    ] ================================================
[2026-10-28 07:11:03,937.937 INFO    ] Launching Daemon at Wed Oct 28 07:11:03 IST 2026
[2026-10-28 07:11:03,948.948 INFO    ] ================================================
[2026-10-28 07:11:04,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:11:04
[2026-10-28 07:11:05,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:11:05,392.392 INFO    ] Initializing speech engine...
[2026-10-28 07:11:05,408.408 INFO    ] 2026-10-28 07:11:05
[2026-10-28 07:11:05,691.691 INFO    ] 2026-10-28 07:11:05
[2026-10-28 07:11:05,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:11:06,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:11:06,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:11:06,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:11:06,304.304 INFO    ] time= 28/10/2026 07:11:06
[2026-10-28 07:11:06,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:11:06,327.327 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:11:06,474.474 INFO    ] No existing commands found in stream
[2026-10-28 07:11:11,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:11:11,490.490 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-28 07:11:17,340.340 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:11:17,342.342 INFO    ] Checking for system updates...
[2026-10-28 07:11:17,378.378 INFO    ] 200
[2026-10-28 07:11:17,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:11:17,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:11:17,435.435 INFO    ] No update needed
[2026-10-28 07:11:17,438.438 INFO    ] Checking for camera pi updates...
[2026-10-28 07:11:17,472.472 INFO    ] 200
[2026-10-28 07:11:17,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:11:17,522.522 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:11:17,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:11:17,602.602 INFO    ] No camera update needed
[2026-10-28 07:11:17,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:11:17,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:11:17,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:11:17,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:11:19,657.657 INFO    ] ================================================
[2026-10-28 07:11:19,671.671 INFO    ] Launching Daemon at Wed Oct 28 07:11:19 IST 2026
[2026-10-28 07:11:19,682.682 INFO    ] ================================================
[2026-10-28 07:11:20,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:11:20
[2026-10-28 07:11:20,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:11:21,256.256 INFO    ] Initializing speech engine...
[2026-10-28 07:11:21,267.267 INFO    ] 2026-10-28 07:11:21
[2026-10-28 07:11:21,542.542 INFO    ] 2026-10-28 07:11:21
[2026-10-28 07:11:21,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:11:21,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:11:21,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:11:22,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:11:22,104.104 INFO    ] time= 28/10/2026 07:11:22
[2026-10-28 07:11:22,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:11:22,131.131 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:11:22,243.243 INFO    ] No existing commands found in stream
[2026-10-28 07:11:27,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:11:27,272.272 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 07:11:29,374.374 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:11:29,377.377 INFO    ] Checking for system updates...
[2026-10-28 07:11:29,413.413 INFO    ] 200
[2026-10-28 07:11:29,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:11:29,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:11:29,472.472 INFO    ] No update needed
[2026-10-28 07:11:29,475.475 INFO    ] Checking for camera pi updates...
[2026-10-28 07:11:29,509.509 INFO    ] 200
[2026-10-28 07:11:29,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:11:29,553.553 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:11:29,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:11:29,760.760 INFO    ] No camera update needed
[2026-10-28 07:11:29,762.762 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:11:29,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:11:29,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:11:29,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:11:31,819.819 INFO    ] ================================================
[2026-10-28 07:11:31,836.836 INFO    ] Launching Daemon at Wed Oct 28 07:11:31 IST 2026
[2026-10-28 07:11:31,848.848 INFO    ] ================================================
[2026-10-28 07:11:32,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:11:32
[2026-10-28 07:11:33,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:11:33,357.357 INFO    ] Initializing speech engine...
[2026-10-28 07:11:33,362.362 INFO    ] 2026-10-28 07:11:33
[2026-10-28 07:11:33,611.611 INFO    ] 2026-10-28 07:11:33
[2026-10-28 07:11:33,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:11:33,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:11:33,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:11:34,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:11:34,179.179 INFO    ] time= 28/10/2026 07:11:34
[2026-10-28 07:11:34,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:11:34,213.213 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:11:34,334.334 INFO    ] No existing commands found in stream
[2026-10-28 07:11:39,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:11:39,362.362 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-28 07:11:41,955.955 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:11:41,958.958 INFO    ] Checking for system updates...
[2026-10-28 07:11:41,994.994 INFO    ] 200
[2026-10-28 07:11:41,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:11:42,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:11:42,050.050 INFO    ] No update needed
[2026-10-28 07:11:42,052.052 INFO    ] Checking for camera pi updates...
[2026-10-28 07:11:42,097.097 INFO    ] 200
[2026-10-28 07:11:42,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:11:42,140.140 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:11:42,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:11:42,224.224 INFO    ] No camera update needed
[2026-10-28 07:11:42,226.226 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:11:42,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:11:42,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:11:42,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:11:44,280.280 INFO    ] ================================================
[2026-10-28 07:11:44,300.300 INFO    ] Launching Daemon at Wed Oct 28 07:11:44 IST 2026
[2026-10-28 07:11:44,311.311 INFO    ] ================================================
[2026-10-28 07:11:44,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:11:44
[2026-10-28 07:11:45,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:11:45,761.761 INFO    ] Initializing speech engine...
[2026-10-28 07:11:45,766.766 INFO    ] 2026-10-28 07:11:45
[2026-10-28 07:11:46,028.028 INFO    ] 2026-10-28 07:11:46
[2026-10-28 07:11:46,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:11:46,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:11:46,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:11:46,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:11:46,612.612 INFO    ] time= 28/10/2026 07:11:46
[2026-10-28 07:11:46,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:11:46,629.629 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:11:46,789.789 INFO    ] No existing commands found in stream
[2026-10-28 07:11:51,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:11:51,818.818 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-28 07:11:54,115.115 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:11:54,118.118 INFO    ] Checking for system updates...
[2026-10-28 07:11:54,157.157 INFO    ] 200
[2026-10-28 07:11:54,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:11:54,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:11:54,213.213 INFO    ] No update needed
[2026-10-28 07:11:54,216.216 INFO    ] Checking for camera pi updates...
[2026-10-28 07:11:54,250.250 INFO    ] 200
[2026-10-28 07:11:54,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:11:54,293.293 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:11:54,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:11:54,385.385 INFO    ] No camera update needed
[2026-10-28 07:11:54,388.388 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:11:54,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:11:54,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:11:54,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:11:56,440.440 INFO    ] ================================================
[2026-10-28 07:11:56,456.456 INFO    ] Launching Daemon at Wed Oct 28 07:11:56 IST 2026
[2026-10-28 07:11:56,467.467 INFO    ] ================================================
[2026-10-28 07:11:57,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:11:57
[2026-10-28 07:11:57,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:11:57,932.932 INFO    ] Initializing speech engine...
[2026-10-28 07:11:57,940.940 INFO    ] 2026-10-28 07:11:57
[2026-10-28 07:11:58,216.216 INFO    ] 2026-10-28 07:11:58
[2026-10-28 07:11:58,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:11:58,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:11:58,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:11:58,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:11:58,821.821 INFO    ] time= 28/10/2026 07:11:58
[2026-10-28 07:11:58,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:11:58,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:11:58,992.992 INFO    ] No existing commands found in stream
[2026-10-28 07:12:04,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:12:04,020.020 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-28 07:12:06,556.556 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:12:06,558.558 INFO    ] Checking for system updates...
[2026-10-28 07:12:06,595.595 INFO    ] 200
[2026-10-28 07:12:06,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:12:06,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:12:06,652.652 INFO    ] No update needed
[2026-10-28 07:12:06,655.655 INFO    ] Checking for camera pi updates...
[2026-10-28 07:12:06,689.689 INFO    ] 200
[2026-10-28 07:12:06,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:12:06,732.732 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:12:06,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:12:06,820.820 INFO    ] No camera update needed
[2026-10-28 07:12:06,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:12:06,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:12:06,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:12:06,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:12:08,877.877 INFO    ] ================================================
[2026-10-28 07:12:08,892.892 INFO    ] Launching Daemon at Wed Oct 28 07:12:08 IST 2026
[2026-10-28 07:12:08,903.903 INFO    ] ================================================
[2026-10-28 07:12:09,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:12:09
[2026-10-28 07:12:10,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:12:10,331.331 INFO    ] Initializing speech engine...
[2026-10-28 07:12:10,341.341 INFO    ] 2026-10-28 07:12:10
[2026-10-28 07:12:10,592.592 INFO    ] 2026-10-28 07:12:10
[2026-10-28 07:12:10,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:12:10,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:12:10,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:12:11,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:12:11,160.160 INFO    ] time= 28/10/2026 07:12:11
[2026-10-28 07:12:11,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:12:11,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:12:11,331.331 INFO    ] No existing commands found in stream
[2026-10-28 07:12:16,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:12:16,354.354 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-28 07:12:19,334.334 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:12:19,337.337 INFO    ] Checking for system updates...
[2026-10-28 07:12:19,375.375 INFO    ] 200
[2026-10-28 07:12:19,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:12:19,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:12:19,432.432 INFO    ] No update needed
[2026-10-28 07:12:19,435.435 INFO    ] Checking for camera pi updates...
[2026-10-28 07:12:19,469.469 INFO    ] 200
[2026-10-28 07:12:19,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:12:19,512.512 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:12:19,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:12:19,587.587 INFO    ] No camera update needed
[2026-10-28 07:12:19,589.589 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:12:19,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:12:19,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:12:19,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:12:21,645.645 INFO    ] ================================================
[2026-10-28 07:12:21,661.661 INFO    ] Launching Daemon at Wed Oct 28 07:12:21 IST 2026
[2026-10-28 07:12:21,672.672 INFO    ] ================================================
[2026-10-28 07:12:22,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:12:22
[2026-10-28 07:12:22,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:12:23,076.076 INFO    ] Initializing speech engine...
[2026-10-28 07:12:23,085.085 INFO    ] 2026-10-28 07:12:23
[2026-10-28 07:12:23,369.369 INFO    ] 2026-10-28 07:12:23
[2026-10-28 07:12:23,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:12:23,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:12:23,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:12:23,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:12:23,981.981 INFO    ] time= 28/10/2026 07:12:23
[2026-10-28 07:12:23,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:12:23,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:12:24,138.138 INFO    ] No existing commands found in stream
[2026-10-28 07:12:29,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:12:29,169.169 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-28 07:12:30,758.758 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:12:30,760.760 INFO    ] Checking for system updates...
[2026-10-28 07:12:30,797.797 INFO    ] 200
[2026-10-28 07:12:30,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:12:30,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:12:30,854.854 INFO    ] No update needed
[2026-10-28 07:12:30,856.856 INFO    ] Checking for camera pi updates...
[2026-10-28 07:12:30,889.889 INFO    ] 200
[2026-10-28 07:12:30,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:12:30,935.935 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:12:31,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:12:31,019.019 INFO    ] No camera update needed
[2026-10-28 07:12:31,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:12:31,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:12:31,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:12:31,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:12:33,075.075 INFO    ] ================================================
[2026-10-28 07:12:33,090.090 INFO    ] Launching Daemon at Wed Oct 28 07:12:33 IST 2026
[2026-10-28 07:12:33,101.101 INFO    ] ================================================
[2026-10-28 07:12:33,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:12:33
[2026-10-28 07:12:34,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:12:34,659.659 INFO    ] Initializing speech engine...
[2026-10-28 07:12:34,667.667 INFO    ] 2026-10-28 07:12:34
[2026-10-28 07:12:34,946.946 INFO    ] 2026-10-28 07:12:34
[2026-10-28 07:12:34,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:12:35,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:12:35,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:12:35,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:12:35,486.486 INFO    ] time= 28/10/2026 07:12:35
[2026-10-28 07:12:35,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:12:35,534.534 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:12:35,637.637 INFO    ] No existing commands found in stream
[2026-10-28 07:12:40,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:12:40,656.656 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-28 07:12:43,075.075 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:12:43,077.077 INFO    ] Checking for system updates...
[2026-10-28 07:12:43,114.114 INFO    ] 200
[2026-10-28 07:12:43,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:12:43,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:12:43,171.171 INFO    ] No update needed
[2026-10-28 07:12:43,174.174 INFO    ] Checking for camera pi updates...
[2026-10-28 07:12:43,208.208 INFO    ] 200
[2026-10-28 07:12:43,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:12:43,252.252 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:12:43,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:12:43,336.336 INFO    ] No camera update needed
[2026-10-28 07:12:43,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:12:43,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:12:43,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:12:43,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:12:45,394.394 INFO    ] ================================================
[2026-10-28 07:12:45,411.411 INFO    ] Launching Daemon at Wed Oct 28 07:12:45 IST 2026
[2026-10-28 07:12:45,423.423 INFO    ] ================================================
[2026-10-28 07:12:46,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:12:45
[2026-10-28 07:12:46,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:12:46,859.859 INFO    ] Initializing speech engine...
[2026-10-28 07:12:46,875.875 INFO    ] 2026-10-28 07:12:46
[2026-10-28 07:12:47,126.126 INFO    ] 2026-10-28 07:12:47
[2026-10-28 07:12:47,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:12:47,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:12:47,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:12:47,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:12:47,698.698 INFO    ] time= 28/10/2026 07:12:47
[2026-10-28 07:12:47,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:12:47,733.733 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:12:47,852.852 INFO    ] No existing commands found in stream
[2026-10-28 07:12:52,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:12:52,885.885 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-28 07:12:56,610.610 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:12:56,613.613 INFO    ] Checking for system updates...
[2026-10-28 07:12:56,652.652 INFO    ] 200
[2026-10-28 07:12:56,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:12:56,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:12:56,721.721 INFO    ] No update needed
[2026-10-28 07:12:56,724.724 INFO    ] Checking for camera pi updates...
[2026-10-28 07:12:56,759.759 INFO    ] 200
[2026-10-28 07:12:56,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:12:56,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:12:56,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:12:56,895.895 INFO    ] No camera update needed
[2026-10-28 07:12:56,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:12:56,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:12:56,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:12:56,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:12:58,953.953 INFO    ] ================================================
[2026-10-28 07:12:58,969.969 INFO    ] Launching Daemon at Wed Oct 28 07:12:58 IST 2026
[2026-10-28 07:12:58,980.980 INFO    ] ================================================
[2026-10-28 07:12:59,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:12:59
[2026-10-28 07:13:00,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:13:00,464.464 INFO    ] Initializing speech engine...
[2026-10-28 07:13:00,472.472 INFO    ] 2026-10-28 07:13:00
[2026-10-28 07:13:00,722.722 INFO    ] 2026-10-28 07:13:00
[2026-10-28 07:13:00,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:13:01,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:13:01,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:13:01,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:13:01,310.310 INFO    ] time= 28/10/2026 07:13:01
[2026-10-28 07:13:01,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:13:01,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:13:01,455.455 INFO    ] No existing commands found in stream
[2026-10-28 07:13:06,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:13:06,483.483 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 07:13:10,208.208 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:13:10,211.211 INFO    ] Checking for system updates...
[2026-10-28 07:13:10,246.246 INFO    ] 200
[2026-10-28 07:13:10,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:13:10,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:13:10,304.304 INFO    ] No update needed
[2026-10-28 07:13:10,306.306 INFO    ] Checking for camera pi updates...
[2026-10-28 07:13:10,342.342 INFO    ] 200
[2026-10-28 07:13:10,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:13:10,388.388 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:13:10,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:13:10,465.465 INFO    ] No camera update needed
[2026-10-28 07:13:10,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:13:10,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:13:10,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:13:10,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:13:12,521.521 INFO    ] ================================================
[2026-10-28 07:13:12,537.537 INFO    ] Launching Daemon at Wed Oct 28 07:13:12 IST 2026
[2026-10-28 07:13:12,548.548 INFO    ] ================================================
[2026-10-28 07:13:13,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:13:13
[2026-10-28 07:13:13,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:13:14,013.013 INFO    ] Initializing speech engine...
[2026-10-28 07:13:14,023.023 INFO    ] 2026-10-28 07:13:14
[2026-10-28 07:13:14,287.287 INFO    ] 2026-10-28 07:13:14
[2026-10-28 07:13:14,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:13:14,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:13:14,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:13:14,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:13:14,796.796 INFO    ] time= 28/10/2026 07:13:14
[2026-10-28 07:13:14,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:13:14,895.895 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:13:15,057.057 INFO    ] No existing commands found in stream
[2026-10-28 07:13:20,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:13:20,088.088 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 07:13:22,435.435 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:13:22,438.438 INFO    ] Checking for system updates...
[2026-10-28 07:13:22,473.473 INFO    ] 200
[2026-10-28 07:13:22,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:13:22,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:13:22,537.537 INFO    ] No update needed
[2026-10-28 07:13:22,540.540 INFO    ] Checking for camera pi updates...
[2026-10-28 07:13:22,573.573 INFO    ] 200
[2026-10-28 07:13:22,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:13:22,616.616 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:13:22,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:13:22,697.697 INFO    ] No camera update needed
[2026-10-28 07:13:22,700.700 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:13:22,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:13:22,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:13:22,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:13:24,754.754 INFO    ] ================================================
[2026-10-28 07:13:24,769.769 INFO    ] Launching Daemon at Wed Oct 28 07:13:24 IST 2026
[2026-10-28 07:13:24,780.780 INFO    ] ================================================
[2026-10-28 07:13:25,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:13:25
[2026-10-28 07:13:25,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:13:26,238.238 INFO    ] Initializing speech engine...
[2026-10-28 07:13:26,247.247 INFO    ] 2026-10-28 07:13:26
[2026-10-28 07:13:26,506.506 INFO    ] 2026-10-28 07:13:26
[2026-10-28 07:13:26,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:13:26,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:13:26,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:13:27,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:13:27,063.063 INFO    ] time= 28/10/2026 07:13:27
[2026-10-28 07:13:27,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:13:27,098.098 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:13:27,234.234 INFO    ] No existing commands found in stream
[2026-10-28 07:13:32,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:13:32,272.272 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 07:13:34,835.835 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:13:34,838.838 INFO    ] Checking for system updates...
[2026-10-28 07:13:34,873.873 INFO    ] 200
[2026-10-28 07:13:34,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:13:34,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:13:34,931.931 INFO    ] No update needed
[2026-10-28 07:13:34,933.933 INFO    ] Checking for camera pi updates...
[2026-10-28 07:13:34,973.973 INFO    ] 200
[2026-10-28 07:13:34,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:13:35,016.016 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:13:35,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:13:35,104.104 INFO    ] No camera update needed
[2026-10-28 07:13:35,106.106 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:13:35,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:13:35,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:13:35,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:13:37,159.159 INFO    ] ================================================
[2026-10-28 07:13:37,175.175 INFO    ] Launching Daemon at Wed Oct 28 07:13:37 IST 2026
[2026-10-28 07:13:37,185.185 INFO    ] ================================================
[2026-10-28 07:13:37,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:13:37
[2026-10-28 07:13:38,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:13:38,741.741 INFO    ] Initializing speech engine...
[2026-10-28 07:13:38,749.749 INFO    ] 2026-10-28 07:13:38
[2026-10-28 07:13:39,016.016 INFO    ] 2026-10-28 07:13:39
[2026-10-28 07:13:39,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:13:39,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:13:39,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:13:39,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:13:39,567.567 INFO    ] time= 28/10/2026 07:13:39
[2026-10-28 07:13:39,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:13:39,608.608 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:13:39,741.741 INFO    ] No existing commands found in stream
[2026-10-28 07:13:44,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:13:44,775.775 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-28 07:13:47,221.221 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:13:47,224.224 INFO    ] Checking for system updates...
[2026-10-28 07:13:47,260.260 INFO    ] 200
[2026-10-28 07:13:47,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:13:47,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:13:47,318.318 INFO    ] No update needed
[2026-10-28 07:13:47,321.321 INFO    ] Checking for camera pi updates...
[2026-10-28 07:13:47,358.358 INFO    ] 200
[2026-10-28 07:13:47,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:13:47,406.406 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:13:47,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:13:47,509.509 INFO    ] No camera update needed
[2026-10-28 07:13:47,512.512 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:13:47,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:13:47,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:13:47,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:13:49,567.567 INFO    ] ================================================
[2026-10-28 07:13:49,583.583 INFO    ] Launching Daemon at Wed Oct 28 07:13:49 IST 2026
[2026-10-28 07:13:49,594.594 INFO    ] ================================================
[2026-10-28 07:13:50,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:13:50
[2026-10-28 07:13:50,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:13:51,075.075 INFO    ] Initializing speech engine...
[2026-10-28 07:13:51,081.081 INFO    ] 2026-10-28 07:13:51
[2026-10-28 07:13:51,369.369 INFO    ] 2026-10-28 07:13:51
[2026-10-28 07:13:51,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:13:51,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:13:51,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:13:51,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:13:51,982.982 INFO    ] time= 28/10/2026 07:13:51
[2026-10-28 07:13:51,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:13:52,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:13:52,260.260 INFO    ] No existing commands found in stream
[2026-10-28 07:13:57,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:13:57,272.272 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-28 07:14:01,495.495 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:14:01,498.498 INFO    ] Checking for system updates...
[2026-10-28 07:14:01,533.533 INFO    ] 200
[2026-10-28 07:14:01,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:14:01,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:14:01,594.594 INFO    ] No update needed
[2026-10-28 07:14:01,597.597 INFO    ] Checking for camera pi updates...
[2026-10-28 07:14:01,630.630 INFO    ] 200
[2026-10-28 07:14:01,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:14:01,672.672 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:14:01,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:14:01,769.769 INFO    ] No camera update needed
[2026-10-28 07:14:01,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:14:01,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:14:01,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:14:01,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:14:03,862.862 INFO    ] ================================================
[2026-10-28 07:14:03,877.877 INFO    ] Launching Daemon at Wed Oct 28 07:14:03 IST 2026
[2026-10-28 07:14:03,887.887 INFO    ] ================================================
[2026-10-28 07:14:04,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:14:04
[2026-10-28 07:14:05,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:14:05,299.299 INFO    ] Initializing speech engine...
[2026-10-28 07:14:05,311.311 INFO    ] 2026-10-28 07:14:05
[2026-10-28 07:14:05,560.560 INFO    ] 2026-10-28 07:14:05
[2026-10-28 07:14:05,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:14:05,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:14:05,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:14:06,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:14:06,126.126 INFO    ] time= 28/10/2026 07:14:06
[2026-10-28 07:14:06,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:14:06,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:14:06,295.295 INFO    ] No existing commands found in stream
[2026-10-28 07:14:11,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:14:11,330.330 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-28 07:14:13,915.915 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:14:13,918.918 INFO    ] Checking for system updates...
[2026-10-28 07:14:13,954.954 INFO    ] 200
[2026-10-28 07:14:13,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:14:14,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:14:14,016.016 INFO    ] No update needed
[2026-10-28 07:14:14,018.018 INFO    ] Checking for camera pi updates...
[2026-10-28 07:14:14,055.055 INFO    ] 200
[2026-10-28 07:14:14,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:14:14,101.101 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:14:14,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:14:14,190.190 INFO    ] No camera update needed
[2026-10-28 07:14:14,192.192 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:14:14,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:14:14,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:14:14,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:14:16,245.245 INFO    ] ================================================
[2026-10-28 07:14:16,260.260 INFO    ] Launching Daemon at Wed Oct 28 07:14:16 IST 2026
[2026-10-28 07:14:16,270.270 INFO    ] ================================================
[2026-10-28 07:14:16,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:14:16
[2026-10-28 07:14:17,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:14:17,817.817 INFO    ] Initializing speech engine...
[2026-10-28 07:14:17,826.826 INFO    ] 2026-10-28 07:14:17
[2026-10-28 07:14:18,106.106 INFO    ] 2026-10-28 07:14:18
[2026-10-28 07:14:18,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:14:18,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:14:18,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:14:18,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:14:18,664.664 INFO    ] time= 28/10/2026 07:14:18
[2026-10-28 07:14:18,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:14:18,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:14:18,842.842 INFO    ] No existing commands found in stream
[2026-10-28 07:14:23,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:14:23,870.870 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-28 07:14:28,456.456 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:14:28,459.459 INFO    ] Checking for system updates...
[2026-10-28 07:14:28,495.495 INFO    ] 200
[2026-10-28 07:14:28,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:14:28,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:14:28,552.552 INFO    ] No update needed
[2026-10-28 07:14:28,555.555 INFO    ] Checking for camera pi updates...
[2026-10-28 07:14:28,589.589 INFO    ] 200
[2026-10-28 07:14:28,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:14:28,635.635 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:14:28,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:14:28,721.721 INFO    ] No camera update needed
[2026-10-28 07:14:28,724.724 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:14:28,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:14:28,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:14:28,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:14:30,775.775 INFO    ] ================================================
[2026-10-28 07:14:30,790.790 INFO    ] Launching Daemon at Wed Oct 28 07:14:30 IST 2026
[2026-10-28 07:14:30,801.801 INFO    ] ================================================
[2026-10-28 07:14:31,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:14:31
[2026-10-28 07:14:32,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:14:32,411.411 INFO    ] Initializing speech engine...
[2026-10-28 07:14:32,417.417 INFO    ] 2026-10-28 07:14:32
[2026-10-28 07:14:32,708.708 INFO    ] 2026-10-28 07:14:32
[2026-10-28 07:14:32,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:14:33,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:14:33,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:14:33,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:14:33,300.300 INFO    ] time= 28/10/2026 07:14:33
[2026-10-28 07:14:33,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:14:33,341.341 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:14:33,483.483 INFO    ] No existing commands found in stream
[2026-10-28 07:14:38,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:14:38,517.517 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 07:14:41,450.450 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:14:41,453.453 INFO    ] Checking for system updates...
[2026-10-28 07:14:41,489.489 INFO    ] 200
[2026-10-28 07:14:41,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:14:41,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:14:41,547.547 INFO    ] No update needed
[2026-10-28 07:14:41,550.550 INFO    ] Checking for camera pi updates...
[2026-10-28 07:14:41,584.584 INFO    ] 200
[2026-10-28 07:14:41,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:14:41,627.627 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:14:41,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:14:41,714.714 INFO    ] No camera update needed
[2026-10-28 07:14:41,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:14:41,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:14:41,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:14:41,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:14:43,771.771 INFO    ] ================================================
[2026-10-28 07:14:43,786.786 INFO    ] Launching Daemon at Wed Oct 28 07:14:43 IST 2026
[2026-10-28 07:14:43,797.797 INFO    ] ================================================
[2026-10-28 07:14:44,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:14:44
[2026-10-28 07:14:45,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:14:45,303.303 INFO    ] Initializing speech engine...
[2026-10-28 07:14:45,312.312 INFO    ] 2026-10-28 07:14:45
[2026-10-28 07:14:45,591.591 INFO    ] 2026-10-28 07:14:45
[2026-10-28 07:14:45,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:14:45,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:14:45,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:14:46,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:14:46,150.150 INFO    ] time= 28/10/2026 07:14:46
[2026-10-28 07:14:46,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:14:46,199.199 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:14:46,308.308 INFO    ] No existing commands found in stream
[2026-10-28 07:14:51,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:14:51,336.336 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-28 07:14:55,435.435 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:14:55,438.438 INFO    ] Checking for system updates...
[2026-10-28 07:14:55,474.474 INFO    ] 200
[2026-10-28 07:14:55,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:14:55,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:14:55,537.537 INFO    ] No update needed
[2026-10-28 07:14:55,539.539 INFO    ] Checking for camera pi updates...
[2026-10-28 07:14:55,572.572 INFO    ] 200
[2026-10-28 07:14:55,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:14:55,619.619 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:14:55,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:14:55,711.711 INFO    ] No camera update needed
[2026-10-28 07:14:55,714.714 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:14:55,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:14:55,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:14:55,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:14:57,766.766 INFO    ] ================================================
[2026-10-28 07:14:57,781.781 INFO    ] Launching Daemon at Wed Oct 28 07:14:57 IST 2026
[2026-10-28 07:14:57,792.792 INFO    ] ================================================
[2026-10-28 07:14:58,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:14:58
[2026-10-28 07:14:58,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:14:59,256.256 INFO    ] Initializing speech engine...
[2026-10-28 07:14:59,265.265 INFO    ] 2026-10-28 07:14:59
[2026-10-28 07:14:59,513.513 INFO    ] 2026-10-28 07:14:59
[2026-10-28 07:14:59,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:14:59,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:14:59,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:15:00,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:15:00,079.079 INFO    ] time= 28/10/2026 07:15:00
[2026-10-28 07:15:00,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:15:00,103.103 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:15:00,237.237 INFO    ] No existing commands found in stream
[2026-10-28 07:15:05,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:15:05,260.260 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 07:15:09,781.781 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:15:09,784.784 INFO    ] Checking for system updates...
[2026-10-28 07:15:09,822.822 INFO    ] 200
[2026-10-28 07:15:09,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:15:09,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:15:09,879.879 INFO    ] No update needed
[2026-10-28 07:15:09,881.881 INFO    ] Checking for camera pi updates...
[2026-10-28 07:15:09,914.914 INFO    ] 200
[2026-10-28 07:15:09,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:15:09,956.956 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:15:10,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:15:10,029.029 INFO    ] No camera update needed
[2026-10-28 07:15:10,032.032 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:15:10,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:15:10,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:15:10,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:15:12,087.087 INFO    ] ================================================
[2026-10-28 07:15:12,102.102 INFO    ] Launching Daemon at Wed Oct 28 07:15:12 IST 2026
[2026-10-28 07:15:12,112.112 INFO    ] ================================================
[2026-10-28 07:15:12,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:15:12
[2026-10-28 07:15:13,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:15:13,576.576 INFO    ] Initializing speech engine...
[2026-10-28 07:15:13,579.579 INFO    ] 2026-10-28 07:15:13
[2026-10-28 07:15:13,837.837 INFO    ] 2026-10-28 07:15:13
[2026-10-28 07:15:13,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:15:14,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:15:14,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:15:14,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:15:14,377.377 INFO    ] time= 28/10/2026 07:15:14
[2026-10-28 07:15:14,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:15:14,382.382 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:15:14,541.541 INFO    ] No existing commands found in stream
[2026-10-28 07:15:19,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:15:19,564.564 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-28 07:15:23,814.814 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:15:23,816.816 INFO    ] Checking for system updates...
[2026-10-28 07:15:23,852.852 INFO    ] 200
[2026-10-28 07:15:23,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:15:23,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:15:23,908.908 INFO    ] No update needed
[2026-10-28 07:15:23,910.910 INFO    ] Checking for camera pi updates...
[2026-10-28 07:15:23,944.944 INFO    ] 200
[2026-10-28 07:15:23,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:15:23,990.990 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:15:24,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:15:24,096.096 INFO    ] No camera update needed
[2026-10-28 07:15:24,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:15:24,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:15:24,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:15:24,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:15:26,151.151 INFO    ] ================================================
[2026-10-28 07:15:26,166.166 INFO    ] Launching Daemon at Wed Oct 28 07:15:26 IST 2026
[2026-10-28 07:15:26,176.176 INFO    ] ================================================
[2026-10-28 07:15:26,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:15:26
[2026-10-28 07:15:27,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:15:27,596.596 INFO    ] Initializing speech engine...
[2026-10-28 07:15:27,606.606 INFO    ] 2026-10-28 07:15:27
[2026-10-28 07:15:27,851.851 INFO    ] 2026-10-28 07:15:27
[2026-10-28 07:15:27,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:15:28,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:15:28,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:15:28,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:15:28,406.406 INFO    ] time= 28/10/2026 07:15:28
[2026-10-28 07:15:28,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:15:28,431.431 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:15:28,570.570 INFO    ] No existing commands found in stream
[2026-10-28 07:15:33,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:15:33,597.597 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 07:15:37,645.645 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:15:37,647.647 INFO    ] Checking for system updates...
[2026-10-28 07:15:37,683.683 INFO    ] 200
[2026-10-28 07:15:37,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:15:37,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:15:37,743.743 INFO    ] No update needed
[2026-10-28 07:15:37,746.746 INFO    ] Checking for camera pi updates...
[2026-10-28 07:15:37,779.779 INFO    ] 200
[2026-10-28 07:15:37,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:15:37,823.823 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:15:38,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:15:38,018.018 INFO    ] No camera update needed
[2026-10-28 07:15:38,020.020 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:15:38,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:15:38,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:15:38,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:15:40,073.073 INFO    ] ================================================
[2026-10-28 07:15:40,089.089 INFO    ] Launching Daemon at Wed Oct 28 07:15:40 IST 2026
[2026-10-28 07:15:40,099.099 INFO    ] ================================================
[2026-10-28 07:15:40,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:15:40
[2026-10-28 07:15:41,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:15:41,518.518 INFO    ] Initializing speech engine...
[2026-10-28 07:15:41,534.534 INFO    ] 2026-10-28 07:15:41
[2026-10-28 07:15:41,800.800 INFO    ] 2026-10-28 07:15:41
[2026-10-28 07:15:41,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:15:42,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:15:42,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:15:42,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:15:42,415.415 INFO    ] time= 28/10/2026 07:15:42
[2026-10-28 07:15:42,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:15:42,438.438 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:15:42,557.557 INFO    ] No existing commands found in stream
[2026-10-28 07:15:47,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:15:47,590.590 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 07:15:51,762.762 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:15:51,765.765 INFO    ] Checking for system updates...
[2026-10-28 07:15:51,801.801 INFO    ] 200
[2026-10-28 07:15:51,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:15:51,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:15:51,857.857 INFO    ] No update needed
[2026-10-28 07:15:51,860.860 INFO    ] Checking for camera pi updates...
[2026-10-28 07:15:51,893.893 INFO    ] 200
[2026-10-28 07:15:51,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:15:51,935.935 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:15:52,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:15:52,021.021 INFO    ] No camera update needed
[2026-10-28 07:15:52,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:15:52,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:15:52,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:15:52,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:15:54,076.076 INFO    ] ================================================
[2026-10-28 07:15:54,091.091 INFO    ] Launching Daemon at Wed Oct 28 07:15:54 IST 2026
[2026-10-28 07:15:54,101.101 INFO    ] ================================================
[2026-10-28 07:15:54,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:15:54
[2026-10-28 07:15:55,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:15:55,523.523 INFO    ] Initializing speech engine...
[2026-10-28 07:15:55,539.539 INFO    ] 2026-10-28 07:15:55
[2026-10-28 07:15:55,805.805 INFO    ] 2026-10-28 07:15:55
[2026-10-28 07:15:55,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:15:56,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:15:56,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:15:56,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:15:56,379.379 INFO    ] time= 28/10/2026 07:15:56
[2026-10-28 07:15:56,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:15:56,430.430 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:15:56,562.562 INFO    ] No existing commands found in stream
[2026-10-28 07:16:01,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:16:01,594.594 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-28 07:16:03,220.220 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:16:03,223.223 INFO    ] Checking for system updates...
[2026-10-28 07:16:03,269.269 INFO    ] 200
[2026-10-28 07:16:03,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:16:03,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:16:03,326.326 INFO    ] No update needed
[2026-10-28 07:16:03,328.328 INFO    ] Checking for camera pi updates...
[2026-10-28 07:16:03,362.362 INFO    ] 200
[2026-10-28 07:16:03,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:16:03,415.415 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:16:03,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:16:03,522.522 INFO    ] No camera update needed
[2026-10-28 07:16:03,525.525 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:16:03,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:16:03,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:16:03,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:16:05,589.589 INFO    ] ================================================
[2026-10-28 07:16:05,605.605 INFO    ] Launching Daemon at Wed Oct 28 07:16:05 IST 2026
[2026-10-28 07:16:05,615.615 INFO    ] ================================================
[2026-10-28 07:16:06,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:16:06
[2026-10-28 07:16:06,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:16:07,036.036 INFO    ] Initializing speech engine...
[2026-10-28 07:16:07,042.042 INFO    ] 2026-10-28 07:16:07
[2026-10-28 07:16:07,301.301 INFO    ] 2026-10-28 07:16:07
[2026-10-28 07:16:07,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:16:07,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:16:07,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:16:07,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:16:07,846.846 INFO    ] time= 28/10/2026 07:16:07
[2026-10-28 07:16:07,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:16:07,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:16:07,998.998 INFO    ] No existing commands found in stream
[2026-10-28 07:16:13,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:16:13,012.012 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 07:16:16,367.367 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:16:16,370.370 INFO    ] Checking for system updates...
[2026-10-28 07:16:16,405.405 INFO    ] 200
[2026-10-28 07:16:16,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:16:16,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:16:16,463.463 INFO    ] No update needed
[2026-10-28 07:16:16,466.466 INFO    ] Checking for camera pi updates...
[2026-10-28 07:16:16,499.499 INFO    ] 200
[2026-10-28 07:16:16,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:16:16,546.546 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:16:16,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:16:16,632.632 INFO    ] No camera update needed
[2026-10-28 07:16:16,634.634 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:16:16,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:16:16,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:16:16,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:16:18,688.688 INFO    ] ================================================
[2026-10-28 07:16:18,703.703 INFO    ] Launching Daemon at Wed Oct 28 07:16:18 IST 2026
[2026-10-28 07:16:18,713.713 INFO    ] ================================================
[2026-10-28 07:16:19,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:16:19
[2026-10-28 07:16:19,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:16:20,156.156 INFO    ] Initializing speech engine...
[2026-10-28 07:16:20,166.166 INFO    ] 2026-10-28 07:16:20
[2026-10-28 07:16:20,409.409 INFO    ] 2026-10-28 07:16:20
[2026-10-28 07:16:20,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:16:20,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:16:20,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:16:20,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:16:20,968.968 INFO    ] time= 28/10/2026 07:16:20
[2026-10-28 07:16:20,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:16:21,014.014 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:16:21,134.134 INFO    ] No existing commands found in stream
[2026-10-28 07:16:26,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:16:26,162.162 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-28 07:16:27,152.152 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:16:27,155.155 INFO    ] Checking for system updates...
[2026-10-28 07:16:27,190.190 INFO    ] 200
[2026-10-28 07:16:27,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:16:27,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:16:27,248.248 INFO    ] No update needed
[2026-10-28 07:16:27,251.251 INFO    ] Checking for camera pi updates...
[2026-10-28 07:16:27,284.284 INFO    ] 200
[2026-10-28 07:16:27,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:16:27,326.326 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:16:27,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:16:27,416.416 INFO    ] No camera update needed
[2026-10-28 07:16:27,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:16:27,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:16:27,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:16:27,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:16:29,474.474 INFO    ] ================================================
[2026-10-28 07:16:29,490.490 INFO    ] Launching Daemon at Wed Oct 28 07:16:29 IST 2026
[2026-10-28 07:16:29,500.500 INFO    ] ================================================
[2026-10-28 07:16:30,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:16:30
[2026-10-28 07:16:30,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:16:30,919.919 INFO    ] Initializing speech engine...
[2026-10-28 07:16:30,940.940 INFO    ] 2026-10-28 07:16:30
[2026-10-28 07:16:31,203.203 INFO    ] 2026-10-28 07:16:31
[2026-10-28 07:16:31,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:16:31,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:16:31,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:16:31,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:16:31,839.839 INFO    ] time= 28/10/2026 07:16:31
[2026-10-28 07:16:31,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:16:31,867.867 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:16:32,026.026 INFO    ] No existing commands found in stream
[2026-10-28 07:16:37,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:16:37,049.049 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-28 07:16:38,915.915 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:16:38,918.918 INFO    ] Checking for system updates...
[2026-10-28 07:16:38,953.953 INFO    ] 200
[2026-10-28 07:16:38,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:16:39,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:16:39,021.021 INFO    ] No update needed
[2026-10-28 07:16:39,023.023 INFO    ] Checking for camera pi updates...
[2026-10-28 07:16:39,056.056 INFO    ] 200
[2026-10-28 07:16:39,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:16:39,098.098 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:16:39,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:16:39,204.204 INFO    ] No camera update needed
[2026-10-28 07:16:39,206.206 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:16:39,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:16:39,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:16:39,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:16:41,258.258 INFO    ] ================================================
[2026-10-28 07:16:41,274.274 INFO    ] Launching Daemon at Wed Oct 28 07:16:41 IST 2026
[2026-10-28 07:16:41,284.284 INFO    ] ================================================
[2026-10-28 07:16:41,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:16:41
[2026-10-28 07:16:42,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:16:42,811.811 INFO    ] Initializing speech engine...
[2026-10-28 07:16:42,830.830 INFO    ] 2026-10-28 07:16:42
[2026-10-28 07:16:43,101.101 INFO    ] 2026-10-28 07:16:43
[2026-10-28 07:16:43,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:16:43,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:16:43,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:16:43,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:16:43,667.667 INFO    ] time= 28/10/2026 07:16:43
[2026-10-28 07:16:43,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:16:43,714.714 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:16:43,893.893 INFO    ] No existing commands found in stream
[2026-10-28 07:16:48,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:16:48,927.927 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 07:16:52,489.489 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:16:52,491.491 INFO    ] Checking for system updates...
[2026-10-28 07:16:52,528.528 INFO    ] 200
[2026-10-28 07:16:52,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:16:52,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:16:52,587.587 INFO    ] No update needed
[2026-10-28 07:16:52,590.590 INFO    ] Checking for camera pi updates...
[2026-10-28 07:16:52,627.627 INFO    ] 200
[2026-10-28 07:16:52,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:16:52,675.675 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:16:52,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:16:52,757.757 INFO    ] No camera update needed
[2026-10-28 07:16:52,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:16:52,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:16:52,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:16:52,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:16:54,817.817 INFO    ] ================================================
[2026-10-28 07:16:54,833.833 INFO    ] Launching Daemon at Wed Oct 28 07:16:54 IST 2026
[2026-10-28 07:16:54,843.843 INFO    ] ================================================
[2026-10-28 07:16:55,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:16:55
[2026-10-28 07:16:56,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:16:56,421.421 INFO    ] Initializing speech engine...
[2026-10-28 07:16:56,430.430 INFO    ] 2026-10-28 07:16:56
[2026-10-28 07:16:56,700.700 INFO    ] 2026-10-28 07:16:56
[2026-10-28 07:16:56,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:16:57,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:16:57,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:16:57,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:16:57,259.259 INFO    ] time= 28/10/2026 07:16:57
[2026-10-28 07:16:57,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:16:57,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:16:57,417.417 INFO    ] No existing commands found in stream
[2026-10-28 07:17:02,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:17:02,447.447 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-28 07:17:04,331.331 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:17:04,334.334 INFO    ] Checking for system updates...
[2026-10-28 07:17:04,371.371 INFO    ] 200
[2026-10-28 07:17:04,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:17:04,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:17:04,429.429 INFO    ] No update needed
[2026-10-28 07:17:04,431.431 INFO    ] Checking for camera pi updates...
[2026-10-28 07:17:04,465.465 INFO    ] 200
[2026-10-28 07:17:04,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:17:04,512.512 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:17:04,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:17:04,597.597 INFO    ] No camera update needed
[2026-10-28 07:17:04,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:17:04,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:17:04,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:17:04,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:17:06,653.653 INFO    ] ================================================
[2026-10-28 07:17:06,668.668 INFO    ] Launching Daemon at Wed Oct 28 07:17:06 IST 2026
[2026-10-28 07:17:06,680.680 INFO    ] ================================================
[2026-10-28 07:17:07,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:17:07
[2026-10-28 07:17:07,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:17:08,078.078 INFO    ] Initializing speech engine...
[2026-10-28 07:17:08,091.091 INFO    ] 2026-10-28 07:17:08
[2026-10-28 07:17:08,352.352 INFO    ] 2026-10-28 07:17:08
[2026-10-28 07:17:08,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:17:08,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:17:08,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:17:08,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:17:08,918.918 INFO    ] time= 28/10/2026 07:17:08
[2026-10-28 07:17:08,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:17:08,948.948 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:17:09,080.080 INFO    ] No existing commands found in stream
[2026-10-28 07:17:14,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:17:14,104.104 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-28 07:17:17,621.621 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:17:17,624.624 INFO    ] Checking for system updates...
[2026-10-28 07:17:17,662.662 INFO    ] 200
[2026-10-28 07:17:17,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:17:17,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:17:17,726.726 INFO    ] No update needed
[2026-10-28 07:17:17,729.729 INFO    ] Checking for camera pi updates...
[2026-10-28 07:17:17,762.762 INFO    ] 200
[2026-10-28 07:17:17,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:17:17,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:17:17,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:17:17,918.918 INFO    ] No camera update needed
[2026-10-28 07:17:17,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:17:17,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:17:17,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:17:17,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:17:19,974.974 INFO    ] ================================================
[2026-10-28 07:17:19,989.989 INFO    ] Launching Daemon at Wed Oct 28 07:17:19 IST 2026
[2026-10-28 07:17:20,001.001 INFO    ] ================================================
[2026-10-28 07:17:20,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:17:20
[2026-10-28 07:17:21,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:17:21,602.602 INFO    ] Initializing speech engine...
[2026-10-28 07:17:21,608.608 INFO    ] 2026-10-28 07:17:21
[2026-10-28 07:17:21,885.885 INFO    ] 2026-10-28 07:17:21
[2026-10-28 07:17:21,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:17:22,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:17:22,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:17:22,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:17:22,439.439 INFO    ] time= 28/10/2026 07:17:22
[2026-10-28 07:17:22,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:17:22,463.463 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:17:22,594.594 INFO    ] No existing commands found in stream
[2026-10-28 07:17:27,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:17:27,611.611 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 07:17:30,972.972 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:17:30,974.974 INFO    ] Checking for system updates...
[2026-10-28 07:17:31,010.010 INFO    ] 200
[2026-10-28 07:17:31,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:17:31,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:17:31,073.073 INFO    ] No update needed
[2026-10-28 07:17:31,076.076 INFO    ] Checking for camera pi updates...
[2026-10-28 07:17:31,110.110 INFO    ] 200
[2026-10-28 07:17:31,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:17:31,156.156 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:17:31,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:17:31,230.230 INFO    ] No camera update needed
[2026-10-28 07:17:31,232.232 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:17:31,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:17:31,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:17:31,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:17:33,286.286 INFO    ] ================================================
[2026-10-28 07:17:33,301.301 INFO    ] Launching Daemon at Wed Oct 28 07:17:33 IST 2026
[2026-10-28 07:17:33,312.312 INFO    ] ================================================
[2026-10-28 07:17:33,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:17:33
[2026-10-28 07:17:34,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:17:34,742.742 INFO    ] Initializing speech engine...
[2026-10-28 07:17:34,749.749 INFO    ] 2026-10-28 07:17:34
[2026-10-28 07:17:35,045.045 INFO    ] 2026-10-28 07:17:35
[2026-10-28 07:17:35,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:17:35,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:17:35,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:17:35,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:17:35,537.537 INFO    ] time= 28/10/2026 07:17:35
[2026-10-28 07:17:35,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:17:35,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:17:35,814.814 INFO    ] No existing commands found in stream
[2026-10-28 07:17:40,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:17:40,847.847 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-28 07:17:41,795.795 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:17:41,798.798 INFO    ] Checking for system updates...
[2026-10-28 07:17:41,834.834 INFO    ] 200
[2026-10-28 07:17:41,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:17:41,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:17:41,897.897 INFO    ] No update needed
[2026-10-28 07:17:41,900.900 INFO    ] Checking for camera pi updates...
[2026-10-28 07:17:41,938.938 INFO    ] 200
[2026-10-28 07:17:41,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:17:41,986.986 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:17:42,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:17:42,166.166 INFO    ] No camera update needed
[2026-10-28 07:17:42,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:17:42,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:17:42,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:17:42,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:17:44,221.221 INFO    ] ================================================
[2026-10-28 07:17:44,236.236 INFO    ] Launching Daemon at Wed Oct 28 07:17:44 IST 2026
[2026-10-28 07:17:44,246.246 INFO    ] ================================================
[2026-10-28 07:17:44,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:17:44
[2026-10-28 07:17:45,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:17:45,853.853 INFO    ] Initializing speech engine...
[2026-10-28 07:17:45,866.866 INFO    ] 2026-10-28 07:17:45
[2026-10-28 07:17:46,180.180 INFO    ] 2026-10-28 07:17:46
[2026-10-28 07:17:46,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:17:46,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:17:46,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:17:46,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:17:46,741.741 INFO    ] time= 28/10/2026 07:17:46
[2026-10-28 07:17:46,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:17:46,758.758 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:17:46,882.882 INFO    ] No existing commands found in stream
[2026-10-28 07:17:51,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:17:51,922.922 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 07:17:55,654.654 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:17:55,657.657 INFO    ] Checking for system updates...
[2026-10-28 07:17:55,692.692 INFO    ] 200
[2026-10-28 07:17:55,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:17:55,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:17:55,750.750 INFO    ] No update needed
[2026-10-28 07:17:55,753.753 INFO    ] Checking for camera pi updates...
[2026-10-28 07:17:55,786.786 INFO    ] 200
[2026-10-28 07:17:55,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:17:55,834.834 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:17:55,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:17:55,916.916 INFO    ] No camera update needed
[2026-10-28 07:17:55,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:17:55,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:17:55,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:17:55,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:17:57,973.973 INFO    ] ================================================
[2026-10-28 07:17:57,988.988 INFO    ] Launching Daemon at Wed Oct 28 07:17:57 IST 2026
[2026-10-28 07:17:58,999.999 INFO    ] ================================================
[2026-10-28 07:17:58,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:17:58
[2026-10-28 07:17:59,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:17:59,617.617 INFO    ] Initializing speech engine...
[2026-10-28 07:17:59,626.626 INFO    ] 2026-10-28 07:17:59
[2026-10-28 07:17:59,897.897 INFO    ] 2026-10-28 07:17:59
[2026-10-28 07:17:59,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:18:00,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:18:00,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:18:00,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:18:00,448.448 INFO    ] time= 28/10/2026 07:18:00
[2026-10-28 07:18:00,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:18:00,496.496 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:18:00,627.627 INFO    ] No existing commands found in stream
[2026-10-28 07:18:05,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:18:05,662.662 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 07:18:09,451.451 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:18:09,454.454 INFO    ] Checking for system updates...
[2026-10-28 07:18:09,495.495 INFO    ] 200
[2026-10-28 07:18:09,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:18:09,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:18:09,552.552 INFO    ] No update needed
[2026-10-28 07:18:09,554.554 INFO    ] Checking for camera pi updates...
[2026-10-28 07:18:09,588.588 INFO    ] 200
[2026-10-28 07:18:09,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:18:09,630.630 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:18:09,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:18:09,713.713 INFO    ] No camera update needed
[2026-10-28 07:18:09,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:18:09,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:18:09,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:18:09,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:18:11,769.769 INFO    ] ================================================
[2026-10-28 07:18:11,784.784 INFO    ] Launching Daemon at Wed Oct 28 07:18:11 IST 2026
[2026-10-28 07:18:11,794.794 INFO    ] ================================================
[2026-10-28 07:18:12,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:18:12
[2026-10-28 07:18:12,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:18:13,262.262 INFO    ] Initializing speech engine...
[2026-10-28 07:18:13,268.268 INFO    ] 2026-10-28 07:18:13
[2026-10-28 07:18:13,515.515 INFO    ] 2026-10-28 07:18:13
[2026-10-28 07:18:13,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:18:13,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:18:13,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:18:14,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:18:14,078.078 INFO    ] time= 28/10/2026 07:18:14
[2026-10-28 07:18:14,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:18:14,103.103 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:18:14,247.247 INFO    ] No existing commands found in stream
[2026-10-28 07:18:19,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:18:19,280.280 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-28 07:18:20,289.289 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:18:20,291.291 INFO    ] Checking for system updates...
[2026-10-28 07:18:20,332.332 INFO    ] 200
[2026-10-28 07:18:20,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:18:20,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:18:20,391.391 INFO    ] No update needed
[2026-10-28 07:18:20,394.394 INFO    ] Checking for camera pi updates...
[2026-10-28 07:18:20,429.429 INFO    ] 200
[2026-10-28 07:18:20,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:18:20,473.473 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:18:20,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:18:20,543.543 INFO    ] No camera update needed
[2026-10-28 07:18:20,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:18:20,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:18:20,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:18:20,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:18:22,600.600 INFO    ] ================================================
[2026-10-28 07:18:22,615.615 INFO    ] Launching Daemon at Wed Oct 28 07:18:22 IST 2026
[2026-10-28 07:18:22,626.626 INFO    ] ================================================
[2026-10-28 07:18:23,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:18:23
[2026-10-28 07:18:23,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:18:24,283.283 INFO    ] Initializing speech engine...
[2026-10-28 07:18:24,293.293 INFO    ] 2026-10-28 07:18:24
[2026-10-28 07:18:24,567.567 INFO    ] 2026-10-28 07:18:24
[2026-10-28 07:18:24,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:18:24,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:18:24,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:18:25,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:18:25,135.135 INFO    ] time= 28/10/2026 07:18:25
[2026-10-28 07:18:25,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:18:25,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:18:25,290.290 INFO    ] No existing commands found in stream
[2026-10-28 07:18:30,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:18:30,318.318 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-28 07:18:34,734.734 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:18:34,737.737 INFO    ] Checking for system updates...
[2026-10-28 07:18:34,775.775 INFO    ] 200
[2026-10-28 07:18:34,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:18:34,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:18:34,836.836 INFO    ] No update needed
[2026-10-28 07:18:34,838.838 INFO    ] Checking for camera pi updates...
[2026-10-28 07:18:34,877.877 INFO    ] 200
[2026-10-28 07:18:34,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:18:34,923.923 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:18:35,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:18:35,010.010 INFO    ] No camera update needed
[2026-10-28 07:18:35,013.013 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:18:35,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:18:35,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:18:35,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:18:37,076.076 INFO    ] ================================================
[2026-10-28 07:18:37,092.092 INFO    ] Launching Daemon at Wed Oct 28 07:18:37 IST 2026
[2026-10-28 07:18:37,103.103 INFO    ] ================================================
[2026-10-28 07:18:37,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:18:37
[2026-10-28 07:18:38,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:18:38,601.601 INFO    ] Initializing speech engine...
[2026-10-28 07:18:38,610.610 INFO    ] 2026-10-28 07:18:38
[2026-10-28 07:18:38,874.874 INFO    ] 2026-10-28 07:18:38
[2026-10-28 07:18:38,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:18:39,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:18:39,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:18:39,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:18:39,421.421 INFO    ] time= 28/10/2026 07:18:39
[2026-10-28 07:18:39,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:18:39,456.456 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:18:39,605.605 INFO    ] No existing commands found in stream
[2026-10-28 07:18:44,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:18:44,633.633 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-28 07:18:48,296.296 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:18:48,298.298 INFO    ] Checking for system updates...
[2026-10-28 07:18:48,337.337 INFO    ] 200
[2026-10-28 07:18:48,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:18:48,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:18:48,395.395 INFO    ] No update needed
[2026-10-28 07:18:48,398.398 INFO    ] Checking for camera pi updates...
[2026-10-28 07:18:48,431.431 INFO    ] 200
[2026-10-28 07:18:48,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:18:48,474.474 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:18:48,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:18:48,576.576 INFO    ] No camera update needed
[2026-10-28 07:18:48,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:18:48,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:18:48,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:18:48,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:18:50,633.633 INFO    ] ================================================
[2026-10-28 07:18:50,648.648 INFO    ] Launching Daemon at Wed Oct 28 07:18:50 IST 2026
[2026-10-28 07:18:50,659.659 INFO    ] ================================================
[2026-10-28 07:18:51,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:18:51
[2026-10-28 07:18:51,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:18:52,110.110 INFO    ] Initializing speech engine...
[2026-10-28 07:18:52,130.130 INFO    ] 2026-10-28 07:18:52
[2026-10-28 07:18:52,397.397 INFO    ] 2026-10-28 07:18:52
[2026-10-28 07:18:52,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:18:52,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:18:52,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:18:52,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:18:52,916.916 INFO    ] time= 28/10/2026 07:18:52
[2026-10-28 07:18:52,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:18:53,027.027 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:18:53,160.160 INFO    ] No existing commands found in stream
[2026-10-28 07:18:58,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:18:58,188.188 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-28 07:19:01,378.378 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:19:01,380.380 INFO    ] Checking for system updates...
[2026-10-28 07:19:01,417.417 INFO    ] 200
[2026-10-28 07:19:01,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:19:01,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:19:01,475.475 INFO    ] No update needed
[2026-10-28 07:19:01,477.477 INFO    ] Checking for camera pi updates...
[2026-10-28 07:19:01,511.511 INFO    ] 200
[2026-10-28 07:19:01,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:19:01,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:19:01,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:19:01,656.656 INFO    ] No camera update needed
[2026-10-28 07:19:01,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:19:01,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:19:01,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:19:01,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:19:03,715.715 INFO    ] ================================================
[2026-10-28 07:19:03,733.733 INFO    ] Launching Daemon at Wed Oct 28 07:19:03 IST 2026
[2026-10-28 07:19:03,745.745 INFO    ] ================================================
[2026-10-28 07:19:04,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:19:04
[2026-10-28 07:19:04,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:19:05,192.192 INFO    ] Initializing speech engine...
[2026-10-28 07:19:05,201.201 INFO    ] 2026-10-28 07:19:05
[2026-10-28 07:19:05,448.448 INFO    ] 2026-10-28 07:19:05
[2026-10-28 07:19:05,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:19:05,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:19:05,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:19:06,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:19:06,057.057 INFO    ] time= 28/10/2026 07:19:06
[2026-10-28 07:19:06,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:19:06,080.080 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:19:06,212.212 INFO    ] No existing commands found in stream
[2026-10-28 07:19:11,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:19:11,238.238 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-28 07:19:14,515.515 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:19:14,518.518 INFO    ] Checking for system updates...
[2026-10-28 07:19:14,558.558 INFO    ] 200
[2026-10-28 07:19:14,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:19:14,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:19:14,615.615 INFO    ] No update needed
[2026-10-28 07:19:14,617.617 INFO    ] Checking for camera pi updates...
[2026-10-28 07:19:14,654.654 INFO    ] 200
[2026-10-28 07:19:14,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:19:14,697.697 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:19:14,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:19:14,771.771 INFO    ] No camera update needed
[2026-10-28 07:19:14,773.773 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:19:14,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:19:14,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:19:14,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:19:16,826.826 INFO    ] ================================================
[2026-10-28 07:19:16,841.841 INFO    ] Launching Daemon at Wed Oct 28 07:19:16 IST 2026
[2026-10-28 07:19:16,852.852 INFO    ] ================================================
[2026-10-28 07:19:17,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:19:17
[2026-10-28 07:19:18,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:19:18,427.427 INFO    ] Initializing speech engine...
[2026-10-28 07:19:18,438.438 INFO    ] 2026-10-28 07:19:18
[2026-10-28 07:19:18,724.724 INFO    ] 2026-10-28 07:19:18
[2026-10-28 07:19:18,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:19:19,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:19:19,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:19:19,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:19:19,248.248 INFO    ] time= 28/10/2026 07:19:19
[2026-10-28 07:19:19,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:19:19,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:19:19,407.407 INFO    ] No existing commands found in stream
[2026-10-28 07:19:24,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:19:24,438.438 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-28 07:19:25,893.893 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:19:25,896.896 INFO    ] Checking for system updates...
[2026-10-28 07:19:25,931.931 INFO    ] 200
[2026-10-28 07:19:25,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:19:25,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:19:25,988.988 INFO    ] No update needed
[2026-10-28 07:19:25,990.990 INFO    ] Checking for camera pi updates...
[2026-10-28 07:19:26,023.023 INFO    ] 200
[2026-10-28 07:19:26,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:19:26,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:19:26,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:19:26,158.158 INFO    ] No camera update needed
[2026-10-28 07:19:26,160.160 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:19:26,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:19:26,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:19:26,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:19:28,215.215 INFO    ] ================================================
[2026-10-28 07:19:28,230.230 INFO    ] Launching Daemon at Wed Oct 28 07:19:28 IST 2026
[2026-10-28 07:19:28,241.241 INFO    ] ================================================
[2026-10-28 07:19:28,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:19:28
[2026-10-28 07:19:29,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:19:29,904.904 INFO    ] Initializing speech engine...
[2026-10-28 07:19:29,913.913 INFO    ] 2026-10-28 07:19:29
[2026-10-28 07:19:30,218.218 INFO    ] 2026-10-28 07:19:30
[2026-10-28 07:19:30,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:19:30,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:19:30,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:19:30,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:19:30,966.966 INFO    ] time= 28/10/2026 07:19:30
[2026-10-28 07:19:30,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:19:31,049.049 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:19:31,166.166 INFO    ] No existing commands found in stream
[2026-10-28 07:19:36,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:19:36,189.189 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-28 07:19:38,137.137 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:19:38,140.140 INFO    ] Checking for system updates...
[2026-10-28 07:19:38,178.178 INFO    ] 200
[2026-10-28 07:19:38,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:19:38,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:19:38,238.238 INFO    ] No update needed
[2026-10-28 07:19:38,241.241 INFO    ] Checking for camera pi updates...
[2026-10-28 07:19:38,276.276 INFO    ] 200
[2026-10-28 07:19:38,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:19:38,325.325 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:19:38,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:19:38,410.410 INFO    ] No camera update needed
[2026-10-28 07:19:38,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:19:38,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:19:38,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:19:38,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:19:40,470.470 INFO    ] ================================================
[2026-10-28 07:19:40,485.485 INFO    ] Launching Daemon at Wed Oct 28 07:19:40 IST 2026
[2026-10-28 07:19:40,496.496 INFO    ] ================================================
[2026-10-28 07:19:41,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:19:41
[2026-10-28 07:19:41,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:19:41,931.931 INFO    ] Initializing speech engine...
[2026-10-28 07:19:41,940.940 INFO    ] 2026-10-28 07:19:41
[2026-10-28 07:19:42,198.198 INFO    ] 2026-10-28 07:19:42
[2026-10-28 07:19:42,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:19:42,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:19:42,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:19:42,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:19:42,763.763 INFO    ] time= 28/10/2026 07:19:42
[2026-10-28 07:19:42,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:19:42,788.788 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:19:42,925.925 INFO    ] No existing commands found in stream
[2026-10-28 07:19:47,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:19:47,946.946 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-28 07:19:50,475.475 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:19:50,478.478 INFO    ] Checking for system updates...
[2026-10-28 07:19:50,514.514 INFO    ] 200
[2026-10-28 07:19:50,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:19:50,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:19:50,573.573 INFO    ] No update needed
[2026-10-28 07:19:50,576.576 INFO    ] Checking for camera pi updates...
[2026-10-28 07:19:50,610.610 INFO    ] 200
[2026-10-28 07:19:50,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:19:50,656.656 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:19:50,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:19:50,837.837 INFO    ] No camera update needed
[2026-10-28 07:19:50,840.840 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:19:50,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:19:50,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:19:50,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:19:52,898.898 INFO    ] ================================================
[2026-10-28 07:19:52,914.914 INFO    ] Launching Daemon at Wed Oct 28 07:19:52 IST 2026
[2026-10-28 07:19:52,925.925 INFO    ] ================================================
[2026-10-28 07:19:53,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:19:53
[2026-10-28 07:19:54,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:19:54,329.329 INFO    ] Initializing speech engine...
[2026-10-28 07:19:54,337.337 INFO    ] 2026-10-28 07:19:54
[2026-10-28 07:19:54,611.611 INFO    ] 2026-10-28 07:19:54
[2026-10-28 07:19:54,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:19:54,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:19:54,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:19:55,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:19:55,236.236 INFO    ] time= 28/10/2026 07:19:55
[2026-10-28 07:19:55,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:19:55,260.260 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:19:55,404.404 INFO    ] No existing commands found in stream
[2026-10-28 07:20:00,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:20:00,428.428 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-28 07:20:02,458.458 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:20:02,493.493 INFO    ] Checking for system updates...
[2026-10-28 07:20:02,615.615 INFO    ] 200
[2026-10-28 07:20:02,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:20:02,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:20:02,778.778 INFO    ] No update needed
[2026-10-28 07:20:02,815.815 INFO    ] Checking for camera pi updates...
[2026-10-28 07:20:02,881.881 INFO    ] 200
[2026-10-28 07:20:02,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:20:02,968.968 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:20:03,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:20:03,339.339 INFO    ] No camera update needed
[2026-10-28 07:20:03,343.343 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:20:03,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:20:03,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:20:03,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:20:05,410.410 INFO    ] ================================================
[2026-10-28 07:20:05,426.426 INFO    ] Launching Daemon at Wed Oct 28 07:20:05 IST 2026
[2026-10-28 07:20:05,437.437 INFO    ] ================================================
[2026-10-28 07:20:06,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:20:06
[2026-10-28 07:20:06,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:20:06,906.906 INFO    ] Initializing speech engine...
[2026-10-28 07:20:06,917.917 INFO    ] 2026-10-28 07:20:06
[2026-10-28 07:20:07,204.204 INFO    ] 2026-10-28 07:20:07
[2026-10-28 07:20:07,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:20:07,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:20:07,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:20:07,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:20:07,791.791 INFO    ] time= 28/10/2026 07:20:07
[2026-10-28 07:20:07,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:20:07,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:20:07,985.985 INFO    ] No existing commands found in stream
[2026-10-28 07:20:13,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:20:13,012.012 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-28 07:20:17,363.363 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:20:17,365.365 INFO    ] Checking for system updates...
[2026-10-28 07:20:17,400.400 INFO    ] 200
[2026-10-28 07:20:17,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:20:17,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:20:17,458.458 INFO    ] No update needed
[2026-10-28 07:20:17,461.461 INFO    ] Checking for camera pi updates...
[2026-10-28 07:20:17,494.494 INFO    ] 200
[2026-10-28 07:20:17,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:20:17,538.538 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:20:17,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:20:17,630.630 INFO    ] No camera update needed
[2026-10-28 07:20:17,633.633 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:20:17,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:20:17,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:20:17,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:20:19,686.686 INFO    ] ================================================
[2026-10-28 07:20:19,701.701 INFO    ] Launching Daemon at Wed Oct 28 07:20:19 IST 2026
[2026-10-28 07:20:19,712.712 INFO    ] ================================================
[2026-10-28 07:20:20,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:20:20
[2026-10-28 07:20:21,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:20:21,360.360 INFO    ] Initializing speech engine...
[2026-10-28 07:20:21,372.372 INFO    ] 2026-10-28 07:20:21
[2026-10-28 07:20:21,683.683 INFO    ] 2026-10-28 07:20:21
[2026-10-28 07:20:21,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:20:22,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:20:22,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:20:22,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:20:22,304.304 INFO    ] time= 28/10/2026 07:20:22
[2026-10-28 07:20:22,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:20:22,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:20:22,588.588 INFO    ] No existing commands found in stream
[2026-10-28 07:20:27,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:20:27,610.610 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 07:20:29,037.037 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:20:29,040.040 INFO    ] Checking for system updates...
[2026-10-28 07:20:29,081.081 INFO    ] 200
[2026-10-28 07:20:29,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:20:29,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:20:29,148.148 INFO    ] No update needed
[2026-10-28 07:20:29,151.151 INFO    ] Checking for camera pi updates...
[2026-10-28 07:20:29,186.186 INFO    ] 200
[2026-10-28 07:20:29,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:20:29,229.229 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:20:29,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:20:29,294.294 INFO    ] No camera update needed
[2026-10-28 07:20:29,296.296 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:20:29,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:20:29,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:20:29,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:20:31,348.348 INFO    ] ================================================
[2026-10-28 07:20:31,364.364 INFO    ] Launching Daemon at Wed Oct 28 07:20:31 IST 2026
[2026-10-28 07:20:31,375.375 INFO    ] ================================================
[2026-10-28 07:20:31,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:20:31
[2026-10-28 07:20:32,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:20:32,874.874 INFO    ] Initializing speech engine...
[2026-10-28 07:20:32,885.885 INFO    ] 2026-10-28 07:20:32
[2026-10-28 07:20:33,146.146 INFO    ] 2026-10-28 07:20:33
[2026-10-28 07:20:33,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:20:33,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:20:33,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:20:33,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:20:33,762.762 INFO    ] time= 28/10/2026 07:20:33
[2026-10-28 07:20:33,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:20:33,805.805 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:20:33,958.958 INFO    ] No existing commands found in stream
[2026-10-28 07:20:38,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:20:38,988.988 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-28 07:20:42,731.731 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:20:42,733.733 INFO    ] Checking for system updates...
[2026-10-28 07:20:42,774.774 INFO    ] 200
[2026-10-28 07:20:42,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:20:42,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:20:42,839.839 INFO    ] No update needed
[2026-10-28 07:20:42,841.841 INFO    ] Checking for camera pi updates...
[2026-10-28 07:20:42,878.878 INFO    ] 200
[2026-10-28 07:20:42,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:20:42,921.921 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:20:43,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:20:43,021.021 INFO    ] No camera update needed
[2026-10-28 07:20:43,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:20:43,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:20:43,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:20:43,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:20:45,077.077 INFO    ] ================================================
[2026-10-28 07:20:45,093.093 INFO    ] Launching Daemon at Wed Oct 28 07:20:45 IST 2026
[2026-10-28 07:20:45,104.104 INFO    ] ================================================
[2026-10-28 07:20:45,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:20:45
[2026-10-28 07:20:46,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:20:46,625.625 INFO    ] Initializing speech engine...
[2026-10-28 07:20:46,634.634 INFO    ] 2026-10-28 07:20:46
[2026-10-28 07:20:46,893.893 INFO    ] 2026-10-28 07:20:46
[2026-10-28 07:20:46,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:20:47,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:20:47,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:20:47,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:20:47,447.447 INFO    ] time= 28/10/2026 07:20:47
[2026-10-28 07:20:47,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:20:47,483.483 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:20:47,590.590 INFO    ] No existing commands found in stream
[2026-10-28 07:20:52,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:20:52,617.617 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 07:20:55,723.723 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:20:55,726.726 INFO    ] Checking for system updates...
[2026-10-28 07:20:55,761.761 INFO    ] 200
[2026-10-28 07:20:55,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:20:55,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:20:55,818.818 INFO    ] No update needed
[2026-10-28 07:20:55,821.821 INFO    ] Checking for camera pi updates...
[2026-10-28 07:20:55,855.855 INFO    ] 200
[2026-10-28 07:20:55,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:20:55,898.898 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:20:55,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:20:55,984.984 INFO    ] No camera update needed
[2026-10-28 07:20:55,987.987 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:20:55,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:20:55,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:20:56,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:20:58,041.041 INFO    ] ================================================
[2026-10-28 07:20:58,057.057 INFO    ] Launching Daemon at Wed Oct 28 07:20:58 IST 2026
[2026-10-28 07:20:58,068.068 INFO    ] ================================================
[2026-10-28 07:20:58,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:20:58
[2026-10-28 07:20:59,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:20:59,470.470 INFO    ] Initializing speech engine...
[2026-10-28 07:20:59,493.493 INFO    ] 2026-10-28 07:20:59
[2026-10-28 07:20:59,750.750 INFO    ] 2026-10-28 07:20:59
[2026-10-28 07:20:59,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:21:00,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:21:00,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:21:00,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:21:00,327.327 INFO    ] time= 28/10/2026 07:21:00
[2026-10-28 07:21:00,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:21:00,363.363 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:21:00,555.555 INFO    ] No existing commands found in stream
[2026-10-28 07:21:05,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:21:05,590.590 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 07:21:07,238.238 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:21:07,241.241 INFO    ] Checking for system updates...
[2026-10-28 07:21:07,283.283 INFO    ] 200
[2026-10-28 07:21:07,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:21:07,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:21:07,348.348 INFO    ] No update needed
[2026-10-28 07:21:07,351.351 INFO    ] Checking for camera pi updates...
[2026-10-28 07:21:07,385.385 INFO    ] 200
[2026-10-28 07:21:07,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:21:07,429.429 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:21:07,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:21:07,515.515 INFO    ] No camera update needed
[2026-10-28 07:21:07,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:21:07,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:21:07,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:21:07,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:21:09,574.574 INFO    ] ================================================
[2026-10-28 07:21:09,589.589 INFO    ] Launching Daemon at Wed Oct 28 07:21:09 IST 2026
[2026-10-28 07:21:09,600.600 INFO    ] ================================================
[2026-10-28 07:21:10,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:21:10
[2026-10-28 07:21:10,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:21:11,058.058 INFO    ] Initializing speech engine...
[2026-10-28 07:21:11,065.065 INFO    ] 2026-10-28 07:21:11
[2026-10-28 07:21:11,324.324 INFO    ] 2026-10-28 07:21:11
[2026-10-28 07:21:11,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:21:11,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:21:11,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:21:11,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:21:12,014.014 INFO    ] time= 28/10/2026 07:21:11
[2026-10-28 07:21:12,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:21:12,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:21:12,252.252 INFO    ] No existing commands found in stream
[2026-10-28 07:21:17,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:21:17,280.280 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-28 07:21:18,754.754 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:21:18,757.757 INFO    ] Checking for system updates...
[2026-10-28 07:21:18,792.792 INFO    ] 200
[2026-10-28 07:21:18,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:21:18,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:21:18,850.850 INFO    ] No update needed
[2026-10-28 07:21:18,853.853 INFO    ] Checking for camera pi updates...
[2026-10-28 07:21:18,891.891 INFO    ] 200
[2026-10-28 07:21:18,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:21:18,939.939 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:21:19,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:21:19,022.022 INFO    ] No camera update needed
[2026-10-28 07:21:19,025.025 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:21:19,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:21:19,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:21:19,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:21:21,078.078 INFO    ] ================================================
[2026-10-28 07:21:21,094.094 INFO    ] Launching Daemon at Wed Oct 28 07:21:21 IST 2026
[2026-10-28 07:21:21,105.105 INFO    ] ================================================
[2026-10-28 07:21:21,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:21:21
[2026-10-28 07:21:22,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:21:22,614.614 INFO    ] Initializing speech engine...
[2026-10-28 07:21:22,624.624 INFO    ] 2026-10-28 07:21:22
[2026-10-28 07:21:22,875.875 INFO    ] 2026-10-28 07:21:22
[2026-10-28 07:21:22,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:21:23,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:21:23,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:21:23,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:21:23,390.390 INFO    ] time= 28/10/2026 07:21:23
[2026-10-28 07:21:23,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:21:23,452.452 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:21:23,598.598 INFO    ] No existing commands found in stream
[2026-10-28 07:21:28,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:21:28,615.615 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-28 07:21:32,457.457 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:21:32,460.460 INFO    ] Checking for system updates...
[2026-10-28 07:21:32,521.521 INFO    ] 200
[2026-10-28 07:21:32,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:21:32,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:21:32,618.618 INFO    ] No update needed
[2026-10-28 07:21:32,621.621 INFO    ] Checking for camera pi updates...
[2026-10-28 07:21:32,660.660 INFO    ] 200
[2026-10-28 07:21:32,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:21:32,709.709 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:21:32,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:21:32,820.820 INFO    ] No camera update needed
[2026-10-28 07:21:32,824.824 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:21:32,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:21:32,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:21:32,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:21:34,886.886 INFO    ] ================================================
[2026-10-28 07:21:34,902.902 INFO    ] Launching Daemon at Wed Oct 28 07:21:34 IST 2026
[2026-10-28 07:21:34,913.913 INFO    ] ================================================
[2026-10-28 07:21:35,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:21:35
[2026-10-28 07:21:36,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:21:36,338.338 INFO    ] Initializing speech engine...
[2026-10-28 07:21:36,347.347 INFO    ] 2026-10-28 07:21:36
[2026-10-28 07:21:36,592.592 INFO    ] 2026-10-28 07:21:36
[2026-10-28 07:21:36,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:21:36,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:21:36,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:21:37,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:21:37,150.150 INFO    ] time= 28/10/2026 07:21:37
[2026-10-28 07:21:37,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:21:37,185.185 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:21:37,328.328 INFO    ] No existing commands found in stream
[2026-10-28 07:21:42,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:21:42,358.358 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-28 07:21:45,873.873 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:21:45,875.875 INFO    ] Checking for system updates...
[2026-10-28 07:21:45,912.912 INFO    ] 200
[2026-10-28 07:21:45,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:21:45,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:21:45,969.969 INFO    ] No update needed
[2026-10-28 07:21:45,972.972 INFO    ] Checking for camera pi updates...
[2026-10-28 07:21:46,005.005 INFO    ] 200
[2026-10-28 07:21:46,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:21:46,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:21:46,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:21:46,132.132 INFO    ] No camera update needed
[2026-10-28 07:21:46,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:21:46,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:21:46,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:21:46,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:21:48,189.189 INFO    ] ================================================
[2026-10-28 07:21:48,204.204 INFO    ] Launching Daemon at Wed Oct 28 07:21:48 IST 2026
[2026-10-28 07:21:48,216.216 INFO    ] ================================================
[2026-10-28 07:21:48,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:21:48
[2026-10-28 07:21:49,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:21:49,822.822 INFO    ] Initializing speech engine...
[2026-10-28 07:21:49,830.830 INFO    ] 2026-10-28 07:21:49
[2026-10-28 07:21:50,081.081 INFO    ] 2026-10-28 07:21:50
[2026-10-28 07:21:50,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:21:50,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:21:50,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:21:50,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:21:50,653.653 INFO    ] time= 28/10/2026 07:21:50
[2026-10-28 07:21:50,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:21:50,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:21:50,805.805 INFO    ] No existing commands found in stream
[2026-10-28 07:21:55,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:21:55,825.825 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 07:21:59,277.277 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:21:59,280.280 INFO    ] Checking for system updates...
[2026-10-28 07:21:59,318.318 INFO    ] 200
[2026-10-28 07:21:59,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:21:59,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:21:59,378.378 INFO    ] No update needed
[2026-10-28 07:21:59,380.380 INFO    ] Checking for camera pi updates...
[2026-10-28 07:21:59,414.414 INFO    ] 200
[2026-10-28 07:21:59,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:21:59,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:21:59,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:21:59,661.661 INFO    ] No camera update needed
[2026-10-28 07:21:59,663.663 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:21:59,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:21:59,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:21:59,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:22:01,768.768 INFO    ] ================================================
[2026-10-28 07:22:01,864.864 INFO    ] Launching Daemon at Wed Oct 28 07:22:01 IST 2026
[2026-10-28 07:22:01,897.897 INFO    ] ================================================
[2026-10-28 07:22:02,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:22:02
[2026-10-28 07:22:03,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:22:04,067.067 INFO    ] Initializing speech engine...
[2026-10-28 07:22:04,082.082 INFO    ] 2026-10-28 07:22:04
[2026-10-28 07:22:04,365.365 INFO    ] 2026-10-28 07:22:04
[2026-10-28 07:22:04,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:22:04,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:22:04,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:22:04,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:22:04,920.920 INFO    ] time= 28/10/2026 07:22:04
[2026-10-28 07:22:04,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:22:04,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:22:05,092.092 INFO    ] No existing commands found in stream
[2026-10-28 07:22:10,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:22:10,127.127 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-28 07:22:13,641.641 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:22:13,645.645 INFO    ] Checking for system updates...
[2026-10-28 07:22:13,682.682 INFO    ] 200
[2026-10-28 07:22:13,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:22:13,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:22:13,740.740 INFO    ] No update needed
[2026-10-28 07:22:13,742.742 INFO    ] Checking for camera pi updates...
[2026-10-28 07:22:13,775.775 INFO    ] 200
[2026-10-28 07:22:13,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:22:13,818.818 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:22:13,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:22:13,908.908 INFO    ] No camera update needed
[2026-10-28 07:22:13,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:22:13,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:22:13,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:22:13,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:22:15,962.962 INFO    ] ================================================
[2026-10-28 07:22:15,978.978 INFO    ] Launching Daemon at Wed Oct 28 07:22:15 IST 2026
[2026-10-28 07:22:15,990.990 INFO    ] ================================================
[2026-10-28 07:22:16,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:22:16
[2026-10-28 07:22:17,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:22:17,389.389 INFO    ] Initializing speech engine...
[2026-10-28 07:22:17,412.412 INFO    ] 2026-10-28 07:22:17
[2026-10-28 07:22:17,665.665 INFO    ] 2026-10-28 07:22:17
[2026-10-28 07:22:17,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:22:17,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:22:17,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:22:18,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:22:18,226.226 INFO    ] time= 28/10/2026 07:22:18
[2026-10-28 07:22:18,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:22:18,255.255 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:22:18,383.383 INFO    ] No existing commands found in stream
[2026-10-28 07:22:23,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:22:23,402.402 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-28 07:22:24,674.674 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:22:24,677.677 INFO    ] Checking for system updates...
[2026-10-28 07:22:24,718.718 INFO    ] 200
[2026-10-28 07:22:24,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:22:24,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:22:24,787.787 INFO    ] No update needed
[2026-10-28 07:22:24,793.793 INFO    ] Checking for camera pi updates...
[2026-10-28 07:22:24,827.827 INFO    ] 200
[2026-10-28 07:22:24,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:22:24,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:22:24,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:22:24,951.951 INFO    ] No camera update needed
[2026-10-28 07:22:24,954.954 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:22:24,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:22:24,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:22:24,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:22:27,006.006 INFO    ] ================================================
[2026-10-28 07:22:27,021.021 INFO    ] Launching Daemon at Wed Oct 28 07:22:27 IST 2026
[2026-10-28 07:22:27,032.032 INFO    ] ================================================
[2026-10-28 07:22:27,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:22:27
[2026-10-28 07:22:28,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:22:28,499.499 INFO    ] Initializing speech engine...
[2026-10-28 07:22:28,506.506 INFO    ] 2026-10-28 07:22:28
[2026-10-28 07:22:28,750.750 INFO    ] 2026-10-28 07:22:28
[2026-10-28 07:22:28,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:22:29,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:22:29,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:22:29,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:22:29,305.305 INFO    ] time= 28/10/2026 07:22:29
[2026-10-28 07:22:29,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:22:29,352.352 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:22:29,472.472 INFO    ] No existing commands found in stream
[2026-10-28 07:22:34,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:22:34,499.499 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-28 07:22:37,195.195 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:22:37,197.197 INFO    ] Checking for system updates...
[2026-10-28 07:22:37,236.236 INFO    ] 200
[2026-10-28 07:22:37,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:22:37,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:22:37,292.292 INFO    ] No update needed
[2026-10-28 07:22:37,295.295 INFO    ] Checking for camera pi updates...
[2026-10-28 07:22:37,332.332 INFO    ] 200
[2026-10-28 07:22:37,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:22:37,375.375 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:22:37,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:22:37,465.465 INFO    ] No camera update needed
[2026-10-28 07:22:37,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:22:37,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:22:37,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:22:37,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:22:39,519.519 INFO    ] ================================================
[2026-10-28 07:22:39,535.535 INFO    ] Launching Daemon at Wed Oct 28 07:22:39 IST 2026
[2026-10-28 07:22:39,546.546 INFO    ] ================================================
[2026-10-28 07:22:40,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:22:40
[2026-10-28 07:22:40,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:22:40,962.962 INFO    ] Initializing speech engine...
[2026-10-28 07:22:40,971.971 INFO    ] 2026-10-28 07:22:40
[2026-10-28 07:22:41,231.231 INFO    ] 2026-10-28 07:22:41
[2026-10-28 07:22:41,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:22:41,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:22:41,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:22:41,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:22:41,787.787 INFO    ] time= 28/10/2026 07:22:41
[2026-10-28 07:22:41,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:22:41,821.821 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:22:41,953.953 INFO    ] No existing commands found in stream
[2026-10-28 07:22:46,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:22:46,981.981 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-28 07:22:48,221.221 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:22:48,224.224 INFO    ] Checking for system updates...
[2026-10-28 07:22:48,264.264 INFO    ] 200
[2026-10-28 07:22:48,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:22:48,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:22:48,323.323 INFO    ] No update needed
[2026-10-28 07:22:48,325.325 INFO    ] Checking for camera pi updates...
[2026-10-28 07:22:48,363.363 INFO    ] 200
[2026-10-28 07:22:48,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:22:48,411.411 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:22:48,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:22:48,503.503 INFO    ] No camera update needed
[2026-10-28 07:22:48,505.505 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:22:48,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:22:48,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:22:48,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:22:50,557.557 INFO    ] ================================================
[2026-10-28 07:22:50,572.572 INFO    ] Launching Daemon at Wed Oct 28 07:22:50 IST 2026
[2026-10-28 07:22:50,583.583 INFO    ] ================================================
[2026-10-28 07:22:51,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:22:51
[2026-10-28 07:22:51,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:22:51,983.983 INFO    ] Initializing speech engine...
[2026-10-28 07:22:51,998.998 INFO    ] 2026-10-28 07:22:51
[2026-10-28 07:22:52,265.265 INFO    ] 2026-10-28 07:22:52
[2026-10-28 07:22:52,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:22:52,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:22:52,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:22:52,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:22:52,835.835 INFO    ] time= 28/10/2026 07:22:52
[2026-10-28 07:22:52,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:22:52,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:22:52,994.994 INFO    ] No existing commands found in stream
[2026-10-28 07:22:58,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:22:58,008.008 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 07:22:59,420.420 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:22:59,423.423 INFO    ] Checking for system updates...
[2026-10-28 07:22:59,464.464 INFO    ] 200
[2026-10-28 07:22:59,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:22:59,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:22:59,520.520 INFO    ] No update needed
[2026-10-28 07:22:59,522.522 INFO    ] Checking for camera pi updates...
[2026-10-28 07:22:59,561.561 INFO    ] 200
[2026-10-28 07:22:59,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:22:59,603.603 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:22:59,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:22:59,690.690 INFO    ] No camera update needed
[2026-10-28 07:22:59,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:22:59,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:22:59,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:22:59,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:23:01,752.752 INFO    ] ================================================
[2026-10-28 07:23:01,775.775 INFO    ] Launching Daemon at Wed Oct 28 07:23:01 IST 2026
[2026-10-28 07:23:01,786.786 INFO    ] ================================================
[2026-10-28 07:23:02,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:23:02
[2026-10-28 07:23:03,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:23:03,359.359 INFO    ] Initializing speech engine...
[2026-10-28 07:23:03,384.384 INFO    ] 2026-10-28 07:23:03
[2026-10-28 07:23:03,665.665 INFO    ] 2026-10-28 07:23:03
[2026-10-28 07:23:03,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:23:03,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:23:03,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:23:04,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:23:04,261.261 INFO    ] time= 28/10/2026 07:23:04
[2026-10-28 07:23:04,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:23:04,286.286 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:23:04,412.412 INFO    ] No existing commands found in stream
[2026-10-28 07:23:09,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:23:09,431.431 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-28 07:23:13,367.367 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:23:13,370.370 INFO    ] Checking for system updates...
[2026-10-28 07:23:13,406.406 INFO    ] 200
[2026-10-28 07:23:13,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:23:13,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:23:13,471.471 INFO    ] No update needed
[2026-10-28 07:23:13,473.473 INFO    ] Checking for camera pi updates...
[2026-10-28 07:23:13,511.511 INFO    ] 200
[2026-10-28 07:23:13,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:23:13,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:23:13,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:23:13,657.657 INFO    ] No camera update needed
[2026-10-28 07:23:13,660.660 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:23:13,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:23:13,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:23:13,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:23:15,711.711 INFO    ] ================================================
[2026-10-28 07:23:15,727.727 INFO    ] Launching Daemon at Wed Oct 28 07:23:15 IST 2026
[2026-10-28 07:23:15,737.737 INFO    ] ================================================
[2026-10-28 07:23:16,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:23:16
[2026-10-28 07:23:17,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:23:17,295.295 INFO    ] Initializing speech engine...
[2026-10-28 07:23:17,314.314 INFO    ] 2026-10-28 07:23:17
[2026-10-28 07:23:17,565.565 INFO    ] 2026-10-28 07:23:17
[2026-10-28 07:23:17,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:23:17,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:23:17,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:23:18,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:23:18,134.134 INFO    ] time= 28/10/2026 07:23:18
[2026-10-28 07:23:18,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:23:18,158.158 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:23:18,283.283 INFO    ] No existing commands found in stream
[2026-10-28 07:23:23,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:23:23,302.302 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 07:23:26,415.415 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:23:26,418.418 INFO    ] Checking for system updates...
[2026-10-28 07:23:26,457.457 INFO    ] 200
[2026-10-28 07:23:26,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:23:26,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:23:26,522.522 INFO    ] No update needed
[2026-10-28 07:23:26,524.524 INFO    ] Checking for camera pi updates...
[2026-10-28 07:23:26,558.558 INFO    ] 200
[2026-10-28 07:23:26,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:23:26,600.600 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:23:26,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:23:26,684.684 INFO    ] No camera update needed
[2026-10-28 07:23:26,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:23:26,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:23:26,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:23:26,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:23:28,738.738 INFO    ] ================================================
[2026-10-28 07:23:28,753.753 INFO    ] Launching Daemon at Wed Oct 28 07:23:28 IST 2026
[2026-10-28 07:23:28,763.763 INFO    ] ================================================
[2026-10-28 07:23:29,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:23:29
[2026-10-28 07:23:29,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:23:30,202.202 INFO    ] Initializing speech engine...
[2026-10-28 07:23:30,211.211 INFO    ] 2026-10-28 07:23:30
[2026-10-28 07:23:30,500.500 INFO    ] 2026-10-28 07:23:30
[2026-10-28 07:23:30,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:23:30,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:23:30,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:23:30,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:23:30,974.974 INFO    ] time= 28/10/2026 07:23:30
[2026-10-28 07:23:31,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:23:31,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:23:31,194.194 INFO    ] No existing commands found in stream
[2026-10-28 07:23:36,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:23:36,218.218 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-28 07:23:40,495.495 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:23:40,497.497 INFO    ] Checking for system updates...
[2026-10-28 07:23:40,538.538 INFO    ] 200
[2026-10-28 07:23:40,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:23:40,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:23:40,604.604 INFO    ] No update needed
[2026-10-28 07:23:40,607.607 INFO    ] Checking for camera pi updates...
[2026-10-28 07:23:40,641.641 INFO    ] 200
[2026-10-28 07:23:40,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:23:40,690.690 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:23:40,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:23:40,745.745 INFO    ] No camera update needed
[2026-10-28 07:23:40,750.750 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:23:40,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:23:40,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:23:40,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:23:42,803.803 INFO    ] ================================================
[2026-10-28 07:23:42,818.818 INFO    ] Launching Daemon at Wed Oct 28 07:23:42 IST 2026
[2026-10-28 07:23:42,829.829 INFO    ] ================================================
[2026-10-28 07:23:43,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:23:43
[2026-10-28 07:23:44,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:23:44,320.320 INFO    ] Initializing speech engine...
[2026-10-28 07:23:44,329.329 INFO    ] 2026-10-28 07:23:44
[2026-10-28 07:23:44,609.609 INFO    ] 2026-10-28 07:23:44
[2026-10-28 07:23:44,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:23:44,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:23:44,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:23:45,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:23:45,177.177 INFO    ] time= 28/10/2026 07:23:45
[2026-10-28 07:23:45,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:23:45,215.215 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:23:45,342.342 INFO    ] No existing commands found in stream
[2026-10-28 07:23:50,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:23:50,376.376 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-28 07:23:54,217.217 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:23:54,220.220 INFO    ] Checking for system updates...
[2026-10-28 07:23:54,258.258 INFO    ] 200
[2026-10-28 07:23:54,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:23:54,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:23:54,324.324 INFO    ] No update needed
[2026-10-28 07:23:54,327.327 INFO    ] Checking for camera pi updates...
[2026-10-28 07:23:54,366.366 INFO    ] 200
[2026-10-28 07:23:54,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:23:54,415.415 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:23:54,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:23:54,467.467 INFO    ] No camera update needed
[2026-10-28 07:23:54,469.469 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:23:54,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:23:54,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:23:54,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:23:56,523.523 INFO    ] ================================================
[2026-10-28 07:23:56,538.538 INFO    ] Launching Daemon at Wed Oct 28 07:23:56 IST 2026
[2026-10-28 07:23:56,549.549 INFO    ] ================================================
[2026-10-28 07:23:57,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:23:57
[2026-10-28 07:23:57,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:23:58,008.008 INFO    ] Initializing speech engine...
[2026-10-28 07:23:58,015.015 INFO    ] 2026-10-28 07:23:58
[2026-10-28 07:23:58,278.278 INFO    ] 2026-10-28 07:23:58
[2026-10-28 07:23:58,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:23:58,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:23:58,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:23:58,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:23:58,825.825 INFO    ] time= 28/10/2026 07:23:58
[2026-10-28 07:23:58,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:23:58,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:23:59,004.004 INFO    ] No existing commands found in stream
[2026-10-28 07:24:04,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:24:04,042.042 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-28 07:24:04,794.794 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:24:04,797.797 INFO    ] Checking for system updates...
[2026-10-28 07:24:04,832.832 INFO    ] 200
[2026-10-28 07:24:04,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:24:04,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:24:04,900.900 INFO    ] No update needed
[2026-10-28 07:24:04,903.903 INFO    ] Checking for camera pi updates...
[2026-10-28 07:24:04,940.940 INFO    ] 200
[2026-10-28 07:24:04,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:24:04,988.988 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:24:05,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:24:05,100.100 INFO    ] No camera update needed
[2026-10-28 07:24:05,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:24:05,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:24:05,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:24:05,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:24:07,157.157 INFO    ] ================================================
[2026-10-28 07:24:07,172.172 INFO    ] Launching Daemon at Wed Oct 28 07:24:07 IST 2026
[2026-10-28 07:24:07,183.183 INFO    ] ================================================
[2026-10-28 07:24:07,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:24:07
[2026-10-28 07:24:08,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:24:08,673.673 INFO    ] Initializing speech engine...
[2026-10-28 07:24:08,682.682 INFO    ] 2026-10-28 07:24:08
[2026-10-28 07:24:08,932.932 INFO    ] 2026-10-28 07:24:08
[2026-10-28 07:24:08,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:24:09,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:24:09,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:24:09,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:24:09,497.497 INFO    ] time= 28/10/2026 07:24:09
[2026-10-28 07:24:09,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:24:09,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:24:09,648.648 INFO    ] No existing commands found in stream
[2026-10-28 07:24:14,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:24:14,666.666 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-28 07:24:15,633.633 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:24:15,636.636 INFO    ] Checking for system updates...
[2026-10-28 07:24:15,675.675 INFO    ] 200
[2026-10-28 07:24:15,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:24:15,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:24:15,738.738 INFO    ] No update needed
[2026-10-28 07:24:15,740.740 INFO    ] Checking for camera pi updates...
[2026-10-28 07:24:15,777.777 INFO    ] 200
[2026-10-28 07:24:15,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:24:15,825.825 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:24:15,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:24:15,905.905 INFO    ] No camera update needed
[2026-10-28 07:24:15,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:24:15,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:24:15,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:24:15,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:24:17,963.963 INFO    ] ================================================
[2026-10-28 07:24:17,978.978 INFO    ] Launching Daemon at Wed Oct 28 07:24:17 IST 2026
[2026-10-28 07:24:17,989.989 INFO    ] ================================================
[2026-10-28 07:24:18,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:24:18
[2026-10-28 07:24:19,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:24:19,405.405 INFO    ] Initializing speech engine...
[2026-10-28 07:24:19,414.414 INFO    ] 2026-10-28 07:24:19
[2026-10-28 07:24:19,660.660 INFO    ] 2026-10-28 07:24:19
[2026-10-28 07:24:19,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:24:19,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:24:19,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:24:20,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:24:20,210.210 INFO    ] time= 28/10/2026 07:24:20
[2026-10-28 07:24:20,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:24:20,237.237 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:24:20,363.363 INFO    ] No existing commands found in stream
[2026-10-28 07:24:25,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:24:25,379.379 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 07:24:28,081.081 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:24:28,083.083 INFO    ] Checking for system updates...
[2026-10-28 07:24:28,122.122 INFO    ] 200
[2026-10-28 07:24:28,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:24:28,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:24:28,181.181 INFO    ] No update needed
[2026-10-28 07:24:28,183.183 INFO    ] Checking for camera pi updates...
[2026-10-28 07:24:28,219.219 INFO    ] 200
[2026-10-28 07:24:28,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:24:28,261.261 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:24:28,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:24:28,348.348 INFO    ] No camera update needed
[2026-10-28 07:24:28,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:24:28,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:24:28,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:24:28,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:24:30,404.404 INFO    ] ================================================
[2026-10-28 07:24:30,419.419 INFO    ] Launching Daemon at Wed Oct 28 07:24:30 IST 2026
[2026-10-28 07:24:30,430.430 INFO    ] ================================================
[2026-10-28 07:24:30,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:24:30
[2026-10-28 07:24:31,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:24:31,989.989 INFO    ] Initializing speech engine...
[2026-10-28 07:24:32,002.002 INFO    ] 2026-10-28 07:24:31
[2026-10-28 07:24:32,328.328 INFO    ] 2026-10-28 07:24:32
[2026-10-28 07:24:32,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:24:32,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:24:32,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:24:32,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:24:32,872.872 INFO    ] time= 28/10/2026 07:24:32
[2026-10-28 07:24:32,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:24:32,909.909 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:24:32,996.996 INFO    ] No existing commands found in stream
[2026-10-28 07:24:38,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:24:38,009.009 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 07:24:41,674.674 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:24:41,677.677 INFO    ] Checking for system updates...
[2026-10-28 07:24:41,717.717 INFO    ] 200
[2026-10-28 07:24:41,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:24:41,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:24:41,774.774 INFO    ] No update needed
[2026-10-28 07:24:41,776.776 INFO    ] Checking for camera pi updates...
[2026-10-28 07:24:41,814.814 INFO    ] 200
[2026-10-28 07:24:41,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:24:41,861.861 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:24:41,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:24:41,945.945 INFO    ] No camera update needed
[2026-10-28 07:24:41,948.948 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:24:41,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:24:41,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:24:41,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:24:44,002.002 INFO    ] ================================================
[2026-10-28 07:24:44,016.016 INFO    ] Launching Daemon at Wed Oct 28 07:24:44 IST 2026
[2026-10-28 07:24:44,027.027 INFO    ] ================================================
[2026-10-28 07:24:44,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:24:44
[2026-10-28 07:24:45,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:24:45,444.444 INFO    ] Initializing speech engine...
[2026-10-28 07:24:45,453.453 INFO    ] 2026-10-28 07:24:45
[2026-10-28 07:24:45,697.697 INFO    ] 2026-10-28 07:24:45
[2026-10-28 07:24:45,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:24:46,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:24:46,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:24:46,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:24:46,298.298 INFO    ] time= 28/10/2026 07:24:46
[2026-10-28 07:24:46,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:24:46,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:24:46,447.447 INFO    ] No existing commands found in stream
[2026-10-28 07:24:51,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:24:51,475.475 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 07:24:55,332.332 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:24:55,334.334 INFO    ] Checking for system updates...
[2026-10-28 07:24:55,374.374 INFO    ] 200
[2026-10-28 07:24:55,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:24:55,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:24:55,435.435 INFO    ] No update needed
[2026-10-28 07:24:55,437.437 INFO    ] Checking for camera pi updates...
[2026-10-28 07:24:55,471.471 INFO    ] 200
[2026-10-28 07:24:55,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:24:55,519.519 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:24:55,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:24:55,603.603 INFO    ] No camera update needed
[2026-10-28 07:24:55,605.605 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:24:55,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:24:55,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:24:55,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:24:57,659.659 INFO    ] ================================================
[2026-10-28 07:24:57,674.674 INFO    ] Launching Daemon at Wed Oct 28 07:24:57 IST 2026
[2026-10-28 07:24:57,685.685 INFO    ] ================================================
[2026-10-28 07:24:58,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:24:58
[2026-10-28 07:24:58,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:24:59,129.129 INFO    ] Initializing speech engine...
[2026-10-28 07:24:59,137.137 INFO    ] 2026-10-28 07:24:59
[2026-10-28 07:24:59,387.387 INFO    ] 2026-10-28 07:24:59
[2026-10-28 07:24:59,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:24:59,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:24:59,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:24:59,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:24:59,919.919 INFO    ] time= 28/10/2026 07:24:59
[2026-10-28 07:24:59,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:24:59,999.999 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:25:00,138.138 INFO    ] No existing commands found in stream
[2026-10-28 07:25:05,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:25:05,170.170 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 07:25:05,773.773 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:25:05,776.776 INFO    ] Checking for system updates...
[2026-10-28 07:25:05,812.812 INFO    ] 200
[2026-10-28 07:25:05,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:25:05,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:25:05,872.872 INFO    ] No update needed
[2026-10-28 07:25:05,875.875 INFO    ] Checking for camera pi updates...
[2026-10-28 07:25:05,913.913 INFO    ] 200
[2026-10-28 07:25:05,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:25:05,957.957 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:25:06,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:25:06,011.011 INFO    ] No camera update needed
[2026-10-28 07:25:06,013.013 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:25:06,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:25:06,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:25:06,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:25:08,068.068 INFO    ] ================================================
[2026-10-28 07:25:08,084.084 INFO    ] Launching Daemon at Wed Oct 28 07:25:08 IST 2026
[2026-10-28 07:25:08,094.094 INFO    ] ================================================
[2026-10-28 07:25:08,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:25:08
[2026-10-28 07:25:09,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:25:09,586.586 INFO    ] Initializing speech engine...
[2026-10-28 07:25:09,594.594 INFO    ] 2026-10-28 07:25:09
[2026-10-28 07:25:09,868.868 INFO    ] 2026-10-28 07:25:09
[2026-10-28 07:25:09,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:25:10,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:25:10,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:25:10,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:25:10,436.436 INFO    ] time= 28/10/2026 07:25:10
[2026-10-28 07:25:10,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:25:10,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:25:10,591.591 INFO    ] No existing commands found in stream
[2026-10-28 07:25:15,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:25:15,607.607 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-28 07:25:17,211.211 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:25:17,214.214 INFO    ] Checking for system updates...
[2026-10-28 07:25:17,254.254 INFO    ] 200
[2026-10-28 07:25:17,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:25:17,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:25:17,319.319 INFO    ] No update needed
[2026-10-28 07:25:17,322.322 INFO    ] Checking for camera pi updates...
[2026-10-28 07:25:17,360.360 INFO    ] 200
[2026-10-28 07:25:17,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:25:17,408.408 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:25:17,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:25:17,514.514 INFO    ] No camera update needed
[2026-10-28 07:25:17,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:25:17,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:25:17,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:25:17,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:25:19,573.573 INFO    ] ================================================
[2026-10-28 07:25:19,589.589 INFO    ] Launching Daemon at Wed Oct 28 07:25:19 IST 2026
[2026-10-28 07:25:19,600.600 INFO    ] ================================================
[2026-10-28 07:25:20,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:25:20
[2026-10-28 07:25:20,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:25:21,002.002 INFO    ] Initializing speech engine...
[2026-10-28 07:25:21,025.025 INFO    ] 2026-10-28 07:25:21
[2026-10-28 07:25:21,282.282 INFO    ] 2026-10-28 07:25:21
[2026-10-28 07:25:21,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:25:21,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:25:21,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:25:21,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:25:21,846.846 INFO    ] time= 28/10/2026 07:25:21
[2026-10-28 07:25:21,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:25:21,871.871 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:25:21,994.994 INFO    ] No existing commands found in stream
[2026-10-28 07:25:27,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:25:27,017.017 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 07:25:28,393.393 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:25:28,396.396 INFO    ] Checking for system updates...
[2026-10-28 07:25:28,436.436 INFO    ] 200
[2026-10-28 07:25:28,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:25:28,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:25:28,501.501 INFO    ] No update needed
[2026-10-28 07:25:28,504.504 INFO    ] Checking for camera pi updates...
[2026-10-28 07:25:28,542.542 INFO    ] 200
[2026-10-28 07:25:28,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:25:28,594.594 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:25:28,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:25:28,681.681 INFO    ] No camera update needed
[2026-10-28 07:25:28,684.684 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:25:28,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:25:28,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:25:28,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:25:30,737.737 INFO    ] ================================================
[2026-10-28 07:25:30,753.753 INFO    ] Launching Daemon at Wed Oct 28 07:25:30 IST 2026
[2026-10-28 07:25:30,764.764 INFO    ] ================================================
[2026-10-28 07:25:31,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:25:31
[2026-10-28 07:25:31,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:25:32,268.268 INFO    ] Initializing speech engine...
[2026-10-28 07:25:32,274.274 INFO    ] 2026-10-28 07:25:32
[2026-10-28 07:25:32,547.547 INFO    ] 2026-10-28 07:25:32
[2026-10-28 07:25:32,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:25:32,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:25:32,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:25:33,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:25:33,123.123 INFO    ] time= 28/10/2026 07:25:33
[2026-10-28 07:25:33,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:25:33,153.153 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:25:33,286.286 INFO    ] No existing commands found in stream
[2026-10-28 07:25:38,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:25:38,305.305 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-28 07:25:39,114.114 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:25:39,117.117 INFO    ] Checking for system updates...
[2026-10-28 07:25:39,154.154 INFO    ] 200
[2026-10-28 07:25:39,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:25:39,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:25:39,214.214 INFO    ] No update needed
[2026-10-28 07:25:39,217.217 INFO    ] Checking for camera pi updates...
[2026-10-28 07:25:39,250.250 INFO    ] 200
[2026-10-28 07:25:39,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:25:39,297.297 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:25:39,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:25:39,399.399 INFO    ] No camera update needed
[2026-10-28 07:25:39,402.402 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:25:39,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:25:39,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:25:39,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:25:41,455.455 INFO    ] ================================================
[2026-10-28 07:25:41,471.471 INFO    ] Launching Daemon at Wed Oct 28 07:25:41 IST 2026
[2026-10-28 07:25:41,482.482 INFO    ] ================================================
[2026-10-28 07:25:42,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:25:42
[2026-10-28 07:25:42,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:25:42,888.888 INFO    ] Initializing speech engine...
[2026-10-28 07:25:42,896.896 INFO    ] 2026-10-28 07:25:42
[2026-10-28 07:25:43,186.186 INFO    ] 2026-10-28 07:25:43
[2026-10-28 07:25:43,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:25:43,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:25:43,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:25:43,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:25:43,724.724 INFO    ] time= 28/10/2026 07:25:43
[2026-10-28 07:25:43,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:25:43,817.817 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:25:43,965.965 INFO    ] No existing commands found in stream
[2026-10-28 07:25:48,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:25:48,993.993 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-28 07:25:52,292.292 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:25:52,294.294 INFO    ] Checking for system updates...
[2026-10-28 07:25:52,332.332 INFO    ] 200
[2026-10-28 07:25:52,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:25:52,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:25:52,393.393 INFO    ] No update needed
[2026-10-28 07:25:52,396.396 INFO    ] Checking for camera pi updates...
[2026-10-28 07:25:52,429.429 INFO    ] 200
[2026-10-28 07:25:52,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:25:52,472.472 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:25:52,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:25:52,576.576 INFO    ] No camera update needed
[2026-10-28 07:25:52,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:25:52,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:25:52,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:25:52,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:25:54,631.631 INFO    ] ================================================
[2026-10-28 07:25:54,645.645 INFO    ] Launching Daemon at Wed Oct 28 07:25:54 IST 2026
[2026-10-28 07:25:54,656.656 INFO    ] ================================================
[2026-10-28 07:25:55,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:25:55
[2026-10-28 07:25:55,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:25:56,073.073 INFO    ] Initializing speech engine...
[2026-10-28 07:25:56,091.091 INFO    ] 2026-10-28 07:25:56
[2026-10-28 07:25:56,342.342 INFO    ] 2026-10-28 07:25:56
[2026-10-28 07:25:56,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:25:56,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:25:56,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:25:56,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:25:56,919.919 INFO    ] time= 28/10/2026 07:25:56
[2026-10-28 07:25:56,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:25:56,941.941 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:25:57,084.084 INFO    ] No existing commands found in stream
[2026-10-28 07:26:02,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:26:02,108.108 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-28 07:26:06,577.577 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:26:06,579.579 INFO    ] Checking for system updates...
[2026-10-28 07:26:06,614.614 INFO    ] 200
[2026-10-28 07:26:06,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:26:06,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:26:06,678.678 INFO    ] No update needed
[2026-10-28 07:26:06,680.680 INFO    ] Checking for camera pi updates...
[2026-10-28 07:26:06,718.718 INFO    ] 200
[2026-10-28 07:26:06,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:26:06,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:26:06,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:26:06,942.942 INFO    ] No camera update needed
[2026-10-28 07:26:06,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:26:06,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:26:06,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:26:06,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:26:09,000.000 INFO    ] ================================================
[2026-10-28 07:26:09,016.016 INFO    ] Launching Daemon at Wed Oct 28 07:26:09 IST 2026
[2026-10-28 07:26:09,027.027 INFO    ] ================================================
[2026-10-28 07:26:09,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:26:09
[2026-10-28 07:26:10,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:26:10,658.658 INFO    ] Initializing speech engine...
[2026-10-28 07:26:10,671.671 INFO    ] 2026-10-28 07:26:10
[2026-10-28 07:26:10,946.946 INFO    ] 2026-10-28 07:26:10
[2026-10-28 07:26:10,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:26:11,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:26:11,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:26:11,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:26:11,519.519 INFO    ] time= 28/10/2026 07:26:11
[2026-10-28 07:26:11,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:26:11,557.557 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:26:11,677.677 INFO    ] No existing commands found in stream
[2026-10-28 07:26:16,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:26:16,716.716 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 07:26:18,192.192 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:26:18,195.195 INFO    ] Checking for system updates...
[2026-10-28 07:26:18,232.232 INFO    ] 200
[2026-10-28 07:26:18,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:26:18,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:26:18,290.290 INFO    ] No update needed
[2026-10-28 07:26:18,293.293 INFO    ] Checking for camera pi updates...
[2026-10-28 07:26:18,332.332 INFO    ] 200
[2026-10-28 07:26:18,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:26:18,380.380 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:26:18,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:26:18,463.463 INFO    ] No camera update needed
[2026-10-28 07:26:18,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:26:18,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:26:18,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:26:18,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:26:20,521.521 INFO    ] ================================================
[2026-10-28 07:26:20,536.536 INFO    ] Launching Daemon at Wed Oct 28 07:26:20 IST 2026
[2026-10-28 07:26:20,547.547 INFO    ] ================================================
[2026-10-28 07:26:21,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:26:21
[2026-10-28 07:26:21,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:26:21,981.981 INFO    ] Initializing speech engine...
[2026-10-28 07:26:21,991.991 INFO    ] 2026-10-28 07:26:21
[2026-10-28 07:26:22,262.262 INFO    ] 2026-10-28 07:26:22
[2026-10-28 07:26:22,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:26:22,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:26:22,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:26:22,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:26:22,824.824 INFO    ] time= 28/10/2026 07:26:22
[2026-10-28 07:26:22,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:26:22,910.910 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:26:23,052.052 INFO    ] No existing commands found in stream
[2026-10-28 07:26:28,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:26:28,080.080 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-28 07:26:29,683.683 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:26:29,685.685 INFO    ] Checking for system updates...
[2026-10-28 07:26:29,721.721 INFO    ] 200
[2026-10-28 07:26:29,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:26:29,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:26:29,779.779 INFO    ] No update needed
[2026-10-28 07:26:29,781.781 INFO    ] Checking for camera pi updates...
[2026-10-28 07:26:29,814.814 INFO    ] 200
[2026-10-28 07:26:29,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:26:29,857.857 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:26:29,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:26:29,936.936 INFO    ] No camera update needed
[2026-10-28 07:26:29,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:26:29,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:26:29,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:26:29,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:26:31,993.993 INFO    ] ================================================
[2026-10-28 07:26:32,009.009 INFO    ] Launching Daemon at Wed Oct 28 07:26:32 IST 2026
[2026-10-28 07:26:32,021.021 INFO    ] ================================================
[2026-10-28 07:26:32,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:26:32
[2026-10-28 07:26:33,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:26:33,524.524 INFO    ] Initializing speech engine...
[2026-10-28 07:26:33,531.531 INFO    ] 2026-10-28 07:26:33
[2026-10-28 07:26:33,775.775 INFO    ] 2026-10-28 07:26:33
[2026-10-28 07:26:33,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:26:34,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:26:34,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:26:34,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:26:34,372.372 INFO    ] time= 28/10/2026 07:26:34
[2026-10-28 07:26:34,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:26:34,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:26:34,534.534 INFO    ] No existing commands found in stream
[2026-10-28 07:26:39,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:26:39,567.567 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-28 07:26:40,431.431 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:26:40,434.434 INFO    ] Checking for system updates...
[2026-10-28 07:26:40,472.472 INFO    ] 200
[2026-10-28 07:26:40,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:26:40,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:26:40,529.529 INFO    ] No update needed
[2026-10-28 07:26:40,532.532 INFO    ] Checking for camera pi updates...
[2026-10-28 07:26:40,569.569 INFO    ] 200
[2026-10-28 07:26:40,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:26:40,617.617 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:26:40,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:26:40,704.704 INFO    ] No camera update needed
[2026-10-28 07:26:40,707.707 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:26:40,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:26:40,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:26:40,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:26:42,760.760 INFO    ] ================================================
[2026-10-28 07:26:42,775.775 INFO    ] Launching Daemon at Wed Oct 28 07:26:42 IST 2026
[2026-10-28 07:26:42,786.786 INFO    ] ================================================
[2026-10-28 07:26:43,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:26:43
[2026-10-28 07:26:44,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:26:44,424.424 INFO    ] Initializing speech engine...
[2026-10-28 07:26:44,436.436 INFO    ] 2026-10-28 07:26:44
[2026-10-28 07:26:44,712.712 INFO    ] 2026-10-28 07:26:44
[2026-10-28 07:26:44,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:26:45,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:26:45,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:26:45,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:26:45,277.277 INFO    ] time= 28/10/2026 07:26:45
[2026-10-28 07:26:45,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:26:45,326.326 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:26:45,525.525 INFO    ] No existing commands found in stream
[2026-10-28 07:26:50,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:26:50,549.549 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 07:26:51,575.575 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:26:51,578.578 INFO    ] Checking for system updates...
[2026-10-28 07:26:51,615.615 INFO    ] 200
[2026-10-28 07:26:51,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:26:51,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:26:51,673.673 INFO    ] No update needed
[2026-10-28 07:26:51,675.675 INFO    ] Checking for camera pi updates...
[2026-10-28 07:26:51,708.708 INFO    ] 200
[2026-10-28 07:26:51,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:26:51,759.759 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:26:51,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:26:51,843.843 INFO    ] No camera update needed
[2026-10-28 07:26:51,845.845 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:26:51,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:26:51,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:26:51,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:26:53,897.897 INFO    ] ================================================
[2026-10-28 07:26:53,912.912 INFO    ] Launching Daemon at Wed Oct 28 07:26:53 IST 2026
[2026-10-28 07:26:53,922.922 INFO    ] ================================================
[2026-10-28 07:26:54,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:26:54
[2026-10-28 07:26:55,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:26:55,351.351 INFO    ] Initializing speech engine...
[2026-10-28 07:26:55,358.358 INFO    ] 2026-10-28 07:26:55
[2026-10-28 07:26:55,652.652 INFO    ] 2026-10-28 07:26:55
[2026-10-28 07:26:55,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:26:55,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:26:55,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:26:56,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:26:56,289.289 INFO    ] time= 28/10/2026 07:26:56
[2026-10-28 07:26:56,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:26:56,311.311 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:26:56,436.436 INFO    ] No existing commands found in stream
[2026-10-28 07:27:01,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:27:01,469.469 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-28 07:27:04,751.751 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:27:04,753.753 INFO    ] Checking for system updates...
[2026-10-28 07:27:04,789.789 INFO    ] 200
[2026-10-28 07:27:04,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:27:04,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:27:04,846.846 INFO    ] No update needed
[2026-10-28 07:27:04,848.848 INFO    ] Checking for camera pi updates...
[2026-10-28 07:27:04,882.882 INFO    ] 200
[2026-10-28 07:27:04,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:27:04,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:27:05,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:27:05,035.035 INFO    ] No camera update needed
[2026-10-28 07:27:05,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:27:05,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:27:05,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:27:05,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:27:07,091.091 INFO    ] ================================================
[2026-10-28 07:27:07,106.106 INFO    ] Launching Daemon at Wed Oct 28 07:27:07 IST 2026
[2026-10-28 07:27:07,117.117 INFO    ] ================================================
[2026-10-28 07:27:07,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:27:07
[2026-10-28 07:27:08,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:27:08,575.575 INFO    ] Initializing speech engine...
[2026-10-28 07:27:08,580.580 INFO    ] 2026-10-28 07:27:08
[2026-10-28 07:27:08,828.828 INFO    ] 2026-10-28 07:27:08
[2026-10-28 07:27:08,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:27:09,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:27:09,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:27:09,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:27:09,387.387 INFO    ] time= 28/10/2026 07:27:09
[2026-10-28 07:27:09,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:27:09,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:27:09,570.570 INFO    ] No existing commands found in stream
[2026-10-28 07:27:14,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:27:14,608.608 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 07:27:17,870.870 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:27:17,872.872 INFO    ] Checking for system updates...
[2026-10-28 07:27:17,908.908 INFO    ] 200
[2026-10-28 07:27:17,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:27:17,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:27:17,973.973 INFO    ] No update needed
[2026-10-28 07:27:17,975.975 INFO    ] Checking for camera pi updates...
[2026-10-28 07:27:18,012.012 INFO    ] 200
[2026-10-28 07:27:18,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:27:18,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:27:18,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:27:18,143.143 INFO    ] No camera update needed
[2026-10-28 07:27:18,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:27:18,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:27:18,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:27:18,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:27:20,198.198 INFO    ] ================================================
[2026-10-28 07:27:20,213.213 INFO    ] Launching Daemon at Wed Oct 28 07:27:20 IST 2026
[2026-10-28 07:27:20,224.224 INFO    ] ================================================
[2026-10-28 07:27:20,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:27:20
[2026-10-28 07:27:21,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:27:21,662.662 INFO    ] Initializing speech engine...
[2026-10-28 07:27:21,679.679 INFO    ] 2026-10-28 07:27:21
[2026-10-28 07:27:21,967.967 INFO    ] 2026-10-28 07:27:21
[2026-10-28 07:27:21,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:27:22,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:27:22,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:27:22,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:27:22,468.468 INFO    ] time= 28/10/2026 07:27:22
[2026-10-28 07:27:22,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:27:22,572.572 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:27:22,699.699 INFO    ] No existing commands found in stream
[2026-10-28 07:27:27,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:27:27,732.732 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 07:27:28,395.395 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:27:28,397.397 INFO    ] Checking for system updates...
[2026-10-28 07:27:28,437.437 INFO    ] 200
[2026-10-28 07:27:28,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:27:28,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:27:28,501.501 INFO    ] No update needed
[2026-10-28 07:27:28,503.503 INFO    ] Checking for camera pi updates...
[2026-10-28 07:27:28,541.541 INFO    ] 200
[2026-10-28 07:27:28,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:27:28,585.585 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:27:28,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:27:28,667.667 INFO    ] No camera update needed
[2026-10-28 07:27:28,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:27:28,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:27:28,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:27:28,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:27:30,723.723 INFO    ] ================================================
[2026-10-28 07:27:30,738.738 INFO    ] Launching Daemon at Wed Oct 28 07:27:30 IST 2026
[2026-10-28 07:27:30,749.749 INFO    ] ================================================
[2026-10-28 07:27:31,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:27:31
[2026-10-28 07:27:32,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:27:32,371.371 INFO    ] Initializing speech engine...
[2026-10-28 07:27:32,379.379 INFO    ] 2026-10-28 07:27:32
[2026-10-28 07:27:32,702.702 INFO    ] 2026-10-28 07:27:32
[2026-10-28 07:27:32,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:27:32,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:27:32,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:27:33,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:27:33,234.234 INFO    ] time= 28/10/2026 07:27:33
[2026-10-28 07:27:33,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:27:33,350.350 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:27:33,496.496 INFO    ] No existing commands found in stream
[2026-10-28 07:27:38,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:27:38,521.521 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-28 07:27:39,895.895 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:27:39,898.898 INFO    ] Checking for system updates...
[2026-10-28 07:27:39,933.933 INFO    ] 200
[2026-10-28 07:27:39,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:27:39,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:27:39,990.990 INFO    ] No update needed
[2026-10-28 07:27:39,992.992 INFO    ] Checking for camera pi updates...
[2026-10-28 07:27:40,025.025 INFO    ] 200
[2026-10-28 07:27:40,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:27:40,067.067 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:27:40,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:27:40,153.153 INFO    ] No camera update needed
[2026-10-28 07:27:40,155.155 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:27:40,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:27:40,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:27:40,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:27:42,207.207 INFO    ] ================================================
[2026-10-28 07:27:42,222.222 INFO    ] Launching Daemon at Wed Oct 28 07:27:42 IST 2026
[2026-10-28 07:27:42,232.232 INFO    ] ================================================
[2026-10-28 07:27:42,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:27:42
[2026-10-28 07:27:43,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:27:43,682.682 INFO    ] Initializing speech engine...
[2026-10-28 07:27:43,689.689 INFO    ] 2026-10-28 07:27:43
[2026-10-28 07:27:43,992.992 INFO    ] 2026-10-28 07:27:43
[2026-10-28 07:27:44,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:27:44,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:27:44,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:27:44,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:27:44,518.518 INFO    ] time= 28/10/2026 07:27:44
[2026-10-28 07:27:44,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:27:44,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:27:44,771.771 INFO    ] No existing commands found in stream
[2026-10-28 07:27:49,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:27:49,792.792 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-28 07:27:54,171.171 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:27:54,173.173 INFO    ] Checking for system updates...
[2026-10-28 07:27:54,209.209 INFO    ] 200
[2026-10-28 07:27:54,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:27:54,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:27:54,266.266 INFO    ] No update needed
[2026-10-28 07:27:54,268.268 INFO    ] Checking for camera pi updates...
[2026-10-28 07:27:54,306.306 INFO    ] 200
[2026-10-28 07:27:54,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:27:54,354.354 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:27:54,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:27:54,431.431 INFO    ] No camera update needed
[2026-10-28 07:27:54,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:27:54,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:27:54,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:27:54,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:27:56,486.486 INFO    ] ================================================
[2026-10-28 07:27:56,502.502 INFO    ] Launching Daemon at Wed Oct 28 07:27:56 IST 2026
[2026-10-28 07:27:56,513.513 INFO    ] ================================================
[2026-10-28 07:27:57,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:27:57
[2026-10-28 07:27:57,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:27:57,939.939 INFO    ] Initializing speech engine...
[2026-10-28 07:27:57,949.949 INFO    ] 2026-10-28 07:27:57
[2026-10-28 07:27:58,200.200 INFO    ] 2026-10-28 07:27:58
[2026-10-28 07:27:58,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:27:58,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:27:58,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:27:58,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:27:58,777.777 INFO    ] time= 28/10/2026 07:27:58
[2026-10-28 07:27:58,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:27:58,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:27:58,934.934 INFO    ] No existing commands found in stream
[2026-10-28 07:28:03,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:28:03,948.948 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-28 07:28:06,528.528 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:28:06,531.531 INFO    ] Checking for system updates...
[2026-10-28 07:28:06,571.571 INFO    ] 200
[2026-10-28 07:28:06,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:28:06,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:28:06,636.636 INFO    ] No update needed
[2026-10-28 07:28:06,638.638 INFO    ] Checking for camera pi updates...
[2026-10-28 07:28:06,672.672 INFO    ] 200
[2026-10-28 07:28:06,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:28:06,720.720 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:28:06,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:28:06,800.800 INFO    ] No camera update needed
[2026-10-28 07:28:06,802.802 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:28:06,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:28:06,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:28:06,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:28:08,857.857 INFO    ] ================================================
[2026-10-28 07:28:08,872.872 INFO    ] Launching Daemon at Wed Oct 28 07:28:08 IST 2026
[2026-10-28 07:28:08,884.884 INFO    ] ================================================
[2026-10-28 07:28:09,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:28:09
[2026-10-28 07:28:10,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:28:10,330.330 INFO    ] Initializing speech engine...
[2026-10-28 07:28:10,341.341 INFO    ] 2026-10-28 07:28:10
[2026-10-28 07:28:10,598.598 INFO    ] 2026-10-28 07:28:10
[2026-10-28 07:28:10,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:28:10,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:28:10,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:28:11,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:28:11,158.158 INFO    ] time= 28/10/2026 07:28:11
[2026-10-28 07:28:11,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:28:11,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:28:11,299.299 INFO    ] No existing commands found in stream
[2026-10-28 07:28:16,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:28:16,324.324 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 07:28:20,565.565 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:28:20,568.568 INFO    ] Checking for system updates...
[2026-10-28 07:28:20,604.604 INFO    ] 200
[2026-10-28 07:28:20,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:28:20,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:28:20,669.669 INFO    ] No update needed
[2026-10-28 07:28:20,671.671 INFO    ] Checking for camera pi updates...
[2026-10-28 07:28:20,705.705 INFO    ] 200
[2026-10-28 07:28:20,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:28:20,755.755 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:28:20,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:28:20,935.935 INFO    ] No camera update needed
[2026-10-28 07:28:20,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:28:20,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:28:20,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:28:20,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:28:23,995.995 INFO    ] ================================================
[2026-10-28 07:28:23,010.010 INFO    ] Launching Daemon at Wed Oct 28 07:28:23 IST 2026
[2026-10-28 07:28:23,021.021 INFO    ] ================================================
[2026-10-28 07:28:23,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:28:23
[2026-10-28 07:28:24,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:28:24,476.476 INFO    ] Initializing speech engine...
[2026-10-28 07:28:24,496.496 INFO    ] 2026-10-28 07:28:24
[2026-10-28 07:28:24,770.770 INFO    ] 2026-10-28 07:28:24
[2026-10-28 07:28:24,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:28:25,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:28:25,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:28:25,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:28:25,402.402 INFO    ] time= 28/10/2026 07:28:25
[2026-10-28 07:28:25,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:28:25,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:28:25,569.569 INFO    ] No existing commands found in stream
[2026-10-28 07:28:30,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:28:30,597.597 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-28 07:28:34,731.731 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:28:34,734.734 INFO    ] Checking for system updates...
[2026-10-28 07:28:34,771.771 INFO    ] 200
[2026-10-28 07:28:34,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:28:34,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:28:34,837.837 INFO    ] No update needed
[2026-10-28 07:28:34,840.840 INFO    ] Checking for camera pi updates...
[2026-10-28 07:28:34,879.879 INFO    ] 200
[2026-10-28 07:28:34,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:28:34,923.923 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:28:35,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:28:35,027.027 INFO    ] No camera update needed
[2026-10-28 07:28:35,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:28:35,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:28:35,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:28:35,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:28:37,083.083 INFO    ] ================================================
[2026-10-28 07:28:37,098.098 INFO    ] Launching Daemon at Wed Oct 28 07:28:37 IST 2026
[2026-10-28 07:28:37,109.109 INFO    ] ================================================
[2026-10-28 07:28:37,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:28:37
[2026-10-28 07:28:38,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:28:38,756.756 INFO    ] Initializing speech engine...
[2026-10-28 07:28:38,766.766 INFO    ] 2026-10-28 07:28:38
[2026-10-28 07:28:39,074.074 INFO    ] 2026-10-28 07:28:39
[2026-10-28 07:28:39,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:28:39,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:28:39,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:28:39,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:28:39,596.596 INFO    ] time= 28/10/2026 07:28:39
[2026-10-28 07:28:39,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:28:39,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:28:39,752.752 INFO    ] No existing commands found in stream
[2026-10-28 07:28:44,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:28:44,792.792 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-28 07:28:47,429.429 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:28:47,432.432 INFO    ] Checking for system updates...
[2026-10-28 07:28:47,473.473 INFO    ] 200
[2026-10-28 07:28:47,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:28:47,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:28:47,540.540 INFO    ] No update needed
[2026-10-28 07:28:47,542.542 INFO    ] Checking for camera pi updates...
[2026-10-28 07:28:47,582.582 INFO    ] 200
[2026-10-28 07:28:47,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:28:47,626.626 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:28:47,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:28:47,712.712 INFO    ] No camera update needed
[2026-10-28 07:28:47,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:28:47,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:28:47,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:28:47,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:28:49,771.771 INFO    ] ================================================
[2026-10-28 07:28:49,787.787 INFO    ] Launching Daemon at Wed Oct 28 07:28:49 IST 2026
[2026-10-28 07:28:49,798.798 INFO    ] ================================================
[2026-10-28 07:28:50,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:28:50
[2026-10-28 07:28:50,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:28:51,266.266 INFO    ] Initializing speech engine...
[2026-10-28 07:28:51,272.272 INFO    ] 2026-10-28 07:28:51
[2026-10-28 07:28:51,534.534 INFO    ] 2026-10-28 07:28:51
[2026-10-28 07:28:51,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:28:51,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:28:51,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:28:52,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:28:52,083.083 INFO    ] time= 28/10/2026 07:28:52
[2026-10-28 07:28:52,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:28:52,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:28:52,251.251 INFO    ] No existing commands found in stream
[2026-10-28 07:28:57,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:28:57,285.285 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 07:28:58,469.469 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:28:58,471.471 INFO    ] Checking for system updates...
[2026-10-28 07:28:58,507.507 INFO    ] 200
[2026-10-28 07:28:58,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:28:58,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:28:58,565.565 INFO    ] No update needed
[2026-10-28 07:28:58,568.568 INFO    ] Checking for camera pi updates...
[2026-10-28 07:28:58,607.607 INFO    ] 200
[2026-10-28 07:28:58,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:28:58,651.651 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:28:58,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:28:58,734.734 INFO    ] No camera update needed
[2026-10-28 07:28:58,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:28:58,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:28:58,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:28:58,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:29:00,795.795 INFO    ] ================================================
[2026-10-28 07:29:00,810.810 INFO    ] Launching Daemon at Wed Oct 28 07:29:00 IST 2026
[2026-10-28 07:29:00,820.820 INFO    ] ================================================
[2026-10-28 07:29:01,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:29:01
[2026-10-28 07:29:02,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:29:02,563.563 INFO    ] Initializing speech engine...
[2026-10-28 07:29:02,576.576 INFO    ] 2026-10-28 07:29:02
[2026-10-28 07:29:02,928.928 INFO    ] 2026-10-28 07:29:02
[2026-10-28 07:29:03,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:29:03,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:29:03,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:29:03,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:29:03,507.507 INFO    ] time= 28/10/2026 07:29:03
[2026-10-28 07:29:03,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:29:03,536.536 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:29:03,675.675 INFO    ] No existing commands found in stream
[2026-10-28 07:29:08,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:29:08,699.699 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 07:29:10,129.129 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:29:10,132.132 INFO    ] Checking for system updates...
[2026-10-28 07:29:10,168.168 INFO    ] 200
[2026-10-28 07:29:10,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:29:10,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:29:10,226.226 INFO    ] No update needed
[2026-10-28 07:29:10,228.228 INFO    ] Checking for camera pi updates...
[2026-10-28 07:29:10,261.261 INFO    ] 200
[2026-10-28 07:29:10,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:29:10,304.304 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:29:10,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:29:10,393.393 INFO    ] No camera update needed
[2026-10-28 07:29:10,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:29:10,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:29:10,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:29:10,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:29:12,449.449 INFO    ] ================================================
[2026-10-28 07:29:12,465.465 INFO    ] Launching Daemon at Wed Oct 28 07:29:12 IST 2026
[2026-10-28 07:29:12,476.476 INFO    ] ================================================
[2026-10-28 07:29:13,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:29:13
[2026-10-28 07:29:13,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:29:14,110.110 INFO    ] Initializing speech engine...
[2026-10-28 07:29:14,120.120 INFO    ] 2026-10-28 07:29:14
[2026-10-28 07:29:14,405.405 INFO    ] 2026-10-28 07:29:14
[2026-10-28 07:29:14,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:29:14,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:29:14,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:29:15,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:29:15,179.179 INFO    ] time= 28/10/2026 07:29:15
[2026-10-28 07:29:15,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:29:15,281.281 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:29:15,415.415 INFO    ] No existing commands found in stream
[2026-10-28 07:29:20,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:29:20,429.429 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-28 07:29:24,523.523 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:29:24,527.527 INFO    ] Checking for system updates...
[2026-10-28 07:29:24,564.564 INFO    ] 200
[2026-10-28 07:29:24,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:29:24,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:29:24,623.623 INFO    ] No update needed
[2026-10-28 07:29:24,626.626 INFO    ] Checking for camera pi updates...
[2026-10-28 07:29:24,660.660 INFO    ] 200
[2026-10-28 07:29:24,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:29:24,710.710 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:29:24,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:29:24,798.798 INFO    ] No camera update needed
[2026-10-28 07:29:24,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:29:24,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:29:24,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:29:24,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:29:26,858.858 INFO    ] ================================================
[2026-10-28 07:29:26,874.874 INFO    ] Launching Daemon at Wed Oct 28 07:29:26 IST 2026
[2026-10-28 07:29:26,885.885 INFO    ] ================================================
[2026-10-28 07:29:27,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:29:27
[2026-10-28 07:29:28,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:29:28,507.507 INFO    ] Initializing speech engine...
[2026-10-28 07:29:28,517.517 INFO    ] 2026-10-28 07:29:28
[2026-10-28 07:29:28,812.812 INFO    ] 2026-10-28 07:29:28
[2026-10-28 07:29:28,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:29:29,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:29:29,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:29:29,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:29:29,529.529 INFO    ] time= 28/10/2026 07:29:29
[2026-10-28 07:29:29,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:29:29,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:29:29,808.808 INFO    ] No existing commands found in stream
[2026-10-28 07:29:34,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:29:34,822.822 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-28 07:29:38,209.209 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:29:38,212.212 INFO    ] Checking for system updates...
[2026-10-28 07:29:38,251.251 INFO    ] 200
[2026-10-28 07:29:38,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:29:38,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:29:38,319.319 INFO    ] No update needed
[2026-10-28 07:29:38,322.322 INFO    ] Checking for camera pi updates...
[2026-10-28 07:29:38,357.357 INFO    ] 200
[2026-10-28 07:29:38,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:29:38,401.401 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:29:38,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:29:38,489.489 INFO    ] No camera update needed
[2026-10-28 07:29:38,492.492 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:29:38,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:29:38,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:29:38,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:29:40,548.548 INFO    ] ================================================
[2026-10-28 07:29:40,564.564 INFO    ] Launching Daemon at Wed Oct 28 07:29:40 IST 2026
[2026-10-28 07:29:40,574.574 INFO    ] ================================================
[2026-10-28 07:29:41,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:29:41
[2026-10-28 07:29:41,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:29:42,255.255 INFO    ] Initializing speech engine...
[2026-10-28 07:29:42,262.262 INFO    ] 2026-10-28 07:29:42
[2026-10-28 07:29:42,558.558 INFO    ] 2026-10-28 07:29:42
[2026-10-28 07:29:42,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:29:42,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:29:42,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:29:43,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:29:43,134.134 INFO    ] time= 28/10/2026 07:29:43
[2026-10-28 07:29:43,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:29:43,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:29:43,306.306 INFO    ] No existing commands found in stream
[2026-10-28 07:29:48,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:29:48,349.349 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-28 07:29:52,009.009 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:29:52,011.011 INFO    ] Checking for system updates...
[2026-10-28 07:29:52,048.048 INFO    ] 200
[2026-10-28 07:29:52,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:29:52,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:29:52,106.106 INFO    ] No update needed
[2026-10-28 07:29:52,108.108 INFO    ] Checking for camera pi updates...
[2026-10-28 07:29:52,142.142 INFO    ] 200
[2026-10-28 07:29:52,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:29:52,185.185 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:29:52,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:29:52,287.287 INFO    ] No camera update needed
[2026-10-28 07:29:52,290.290 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:29:52,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:29:52,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:29:52,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:29:54,343.343 INFO    ] ================================================
[2026-10-28 07:29:54,359.359 INFO    ] Launching Daemon at Wed Oct 28 07:29:54 IST 2026
[2026-10-28 07:29:54,370.370 INFO    ] ================================================
[2026-10-28 07:29:54,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:29:54
[2026-10-28 07:29:55,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:29:55,799.799 INFO    ] Initializing speech engine...
[2026-10-28 07:29:55,808.808 INFO    ] 2026-10-28 07:29:55
[2026-10-28 07:29:56,056.056 INFO    ] 2026-10-28 07:29:56
[2026-10-28 07:29:56,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:29:56,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:29:56,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:29:56,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:29:56,624.624 INFO    ] time= 28/10/2026 07:29:56
[2026-10-28 07:29:56,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:29:56,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:29:56,777.777 INFO    ] No existing commands found in stream
[2026-10-28 07:30:01,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:30:01,798.798 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 07:30:05,122.122 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:30:05,125.125 INFO    ] Checking for system updates...
[2026-10-28 07:30:05,160.160 INFO    ] 200
[2026-10-28 07:30:05,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:30:05,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:30:05,216.216 INFO    ] No update needed
[2026-10-28 07:30:05,219.219 INFO    ] Checking for camera pi updates...
[2026-10-28 07:30:05,252.252 INFO    ] 200
[2026-10-28 07:30:05,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:30:05,294.294 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:30:05,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:30:05,397.397 INFO    ] No camera update needed
[2026-10-28 07:30:05,399.399 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:30:05,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:30:05,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:30:05,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:30:07,451.451 INFO    ] ================================================
[2026-10-28 07:30:07,466.466 INFO    ] Launching Daemon at Wed Oct 28 07:30:07 IST 2026
[2026-10-28 07:30:07,477.477 INFO    ] ================================================
[2026-10-28 07:30:08,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:30:08
[2026-10-28 07:30:08,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:30:08,936.936 INFO    ] Initializing speech engine...
[2026-10-28 07:30:08,942.942 INFO    ] 2026-10-28 07:30:08
[2026-10-28 07:30:09,230.230 INFO    ] 2026-10-28 07:30:09
[2026-10-28 07:30:09,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:30:09,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:30:09,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:30:09,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:30:09,833.833 INFO    ] time= 28/10/2026 07:30:09
[2026-10-28 07:30:09,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:30:09,863.863 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:30:09,997.997 INFO    ] No existing commands found in stream
[2026-10-28 07:30:15,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:30:15,022.022 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 07:30:18,687.687 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:30:18,689.689 INFO    ] Checking for system updates...
[2026-10-28 07:30:18,726.726 INFO    ] 200
[2026-10-28 07:30:18,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:30:18,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:30:18,789.789 INFO    ] No update needed
[2026-10-28 07:30:18,792.792 INFO    ] Checking for camera pi updates...
[2026-10-28 07:30:18,826.826 INFO    ] 200
[2026-10-28 07:30:18,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:30:18,869.869 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:30:18,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:30:18,957.957 INFO    ] No camera update needed
[2026-10-28 07:30:18,959.959 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:30:18,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:30:18,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:30:18,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:30:21,013.013 INFO    ] ================================================
[2026-10-28 07:30:21,028.028 INFO    ] Launching Daemon at Wed Oct 28 07:30:21 IST 2026
[2026-10-28 07:30:21,039.039 INFO    ] ================================================
[2026-10-28 07:30:21,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:30:21
[2026-10-28 07:30:22,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:30:22,488.488 INFO    ] Initializing speech engine...
[2026-10-28 07:30:22,507.507 INFO    ] 2026-10-28 07:30:22
[2026-10-28 07:30:22,757.757 INFO    ] 2026-10-28 07:30:22
[2026-10-28 07:30:22,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:30:23,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:30:23,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:30:23,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:30:23,312.312 INFO    ] time= 28/10/2026 07:30:23
[2026-10-28 07:30:23,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:30:23,337.337 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:30:23,466.466 INFO    ] No existing commands found in stream
[2026-10-28 07:30:28,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:30:28,497.497 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 07:30:29,984.984 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:30:29,986.986 INFO    ] Checking for system updates...
[2026-10-28 07:30:30,022.022 INFO    ] 200
[2026-10-28 07:30:30,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:30:30,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:30:30,079.079 INFO    ] No update needed
[2026-10-28 07:30:30,082.082 INFO    ] Checking for camera pi updates...
[2026-10-28 07:30:30,115.115 INFO    ] 200
[2026-10-28 07:30:30,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:30:30,158.158 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:30:30,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:30:30,340.340 INFO    ] No camera update needed
[2026-10-28 07:30:30,343.343 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:30:30,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:30:30,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:30:30,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:30:32,399.399 INFO    ] ================================================
[2026-10-28 07:30:32,414.414 INFO    ] Launching Daemon at Wed Oct 28 07:30:32 IST 2026
[2026-10-28 07:30:32,426.426 INFO    ] ================================================
[2026-10-28 07:30:33,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:30:33
[2026-10-28 07:30:33,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:30:34,058.058 INFO    ] Initializing speech engine...
[2026-10-28 07:30:34,070.070 INFO    ] 2026-10-28 07:30:34
[2026-10-28 07:30:34,345.345 INFO    ] 2026-10-28 07:30:34
[2026-10-28 07:30:34,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:30:34,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:30:34,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:30:35,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:30:35,086.086 INFO    ] time= 28/10/2026 07:30:35
[2026-10-28 07:30:35,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:30:35,177.177 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:30:35,314.314 INFO    ] No existing commands found in stream
[2026-10-28 07:30:40,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:30:40,333.333 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 07:30:42,527.527 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:30:42,536.536 INFO    ] Checking for system updates...
[2026-10-28 07:30:42,585.585 INFO    ] 200
[2026-10-28 07:30:42,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:30:42,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:30:42,642.642 INFO    ] No update needed
[2026-10-28 07:30:42,645.645 INFO    ] Checking for camera pi updates...
[2026-10-28 07:30:42,679.679 INFO    ] 200
[2026-10-28 07:30:42,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:30:42,722.722 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:30:42,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:30:42,805.805 INFO    ] No camera update needed
[2026-10-28 07:30:42,807.807 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:30:42,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:30:42,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:30:42,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:30:44,860.860 INFO    ] ================================================
[2026-10-28 07:30:44,876.876 INFO    ] Launching Daemon at Wed Oct 28 07:30:44 IST 2026
[2026-10-28 07:30:44,887.887 INFO    ] ================================================
[2026-10-28 07:30:45,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:30:45
[2026-10-28 07:30:46,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:30:46,344.344 INFO    ] Initializing speech engine...
[2026-10-28 07:30:46,353.353 INFO    ] 2026-10-28 07:30:46
[2026-10-28 07:30:46,611.611 INFO    ] 2026-10-28 07:30:46
[2026-10-28 07:30:46,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:30:46,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:30:46,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:30:47,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:30:47,159.159 INFO    ] time= 28/10/2026 07:30:47
[2026-10-28 07:30:47,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:30:47,194.194 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:30:47,313.313 INFO    ] No existing commands found in stream
[2026-10-28 07:30:52,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:30:52,336.336 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-28 07:30:56,252.252 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:30:56,256.256 INFO    ] Checking for system updates...
[2026-10-28 07:30:56,293.293 INFO    ] 200
[2026-10-28 07:30:56,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:30:56,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:30:56,360.360 INFO    ] No update needed
[2026-10-28 07:30:56,363.363 INFO    ] Checking for camera pi updates...
[2026-10-28 07:30:56,396.396 INFO    ] 200
[2026-10-28 07:30:56,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:30:56,440.440 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:30:56,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:30:56,530.530 INFO    ] No camera update needed
[2026-10-28 07:30:56,533.533 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:30:56,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:30:56,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:30:56,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:30:58,587.587 INFO    ] ================================================
[2026-10-28 07:30:58,603.603 INFO    ] Launching Daemon at Wed Oct 28 07:30:58 IST 2026
[2026-10-28 07:30:58,615.615 INFO    ] ================================================
[2026-10-28 07:30:59,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:30:59
[2026-10-28 07:30:59,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:31:00,070.070 INFO    ] Initializing speech engine...
[2026-10-28 07:31:00,076.076 INFO    ] 2026-10-28 07:31:00
[2026-10-28 07:31:00,351.351 INFO    ] 2026-10-28 07:31:00
[2026-10-28 07:31:00,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:31:00,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:31:00,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:31:00,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:31:00,884.884 INFO    ] time= 28/10/2026 07:31:00
[2026-10-28 07:31:00,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:31:00,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:31:01,058.058 INFO    ] No existing commands found in stream
[2026-10-28 07:31:06,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:31:06,097.097 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 07:31:06,866.866 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:31:06,869.869 INFO    ] Checking for system updates...
[2026-10-28 07:31:06,904.904 INFO    ] 200
[2026-10-28 07:31:06,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:31:06,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:31:06,961.961 INFO    ] No update needed
[2026-10-28 07:31:06,964.964 INFO    ] Checking for camera pi updates...
[2026-10-28 07:31:06,998.998 INFO    ] 200
[2026-10-28 07:31:07,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:31:07,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:31:07,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:31:07,117.117 INFO    ] No camera update needed
[2026-10-28 07:31:07,119.119 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:31:07,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:31:07,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:31:07,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:31:09,174.174 INFO    ] ================================================
[2026-10-28 07:31:09,189.189 INFO    ] Launching Daemon at Wed Oct 28 07:31:09 IST 2026
[2026-10-28 07:31:09,200.200 INFO    ] ================================================
[2026-10-28 07:31:09,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:31:09
[2026-10-28 07:31:10,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:31:10,654.654 INFO    ] Initializing speech engine...
[2026-10-28 07:31:10,661.661 INFO    ] 2026-10-28 07:31:10
[2026-10-28 07:31:10,931.931 INFO    ] 2026-10-28 07:31:10
[2026-10-28 07:31:10,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:31:11,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:31:11,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:31:11,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:31:11,484.484 INFO    ] time= 28/10/2026 07:31:11
[2026-10-28 07:31:11,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:31:11,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:31:11,640.640 INFO    ] No existing commands found in stream
[2026-10-28 07:31:16,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:31:16,659.659 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-28 07:31:20,867.867 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:31:20,870.870 INFO    ] Checking for system updates...
[2026-10-28 07:31:20,907.907 INFO    ] 200
[2026-10-28 07:31:20,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:31:20,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:31:20,965.965 INFO    ] No update needed
[2026-10-28 07:31:20,967.967 INFO    ] Checking for camera pi updates...
[2026-10-28 07:31:21,001.001 INFO    ] 200
[2026-10-28 07:31:21,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:31:21,045.045 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:31:21,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:31:21,154.154 INFO    ] No camera update needed
[2026-10-28 07:31:21,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:31:21,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:31:21,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:31:21,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:31:23,212.212 INFO    ] ================================================
[2026-10-28 07:31:23,228.228 INFO    ] Launching Daemon at Wed Oct 28 07:31:23 IST 2026
[2026-10-28 07:31:23,239.239 INFO    ] ================================================
[2026-10-28 07:31:23,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:31:23
[2026-10-28 07:31:24,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:31:24,688.688 INFO    ] Initializing speech engine...
[2026-10-28 07:31:24,697.697 INFO    ] 2026-10-28 07:31:24
[2026-10-28 07:31:24,955.955 INFO    ] 2026-10-28 07:31:24
[2026-10-28 07:31:25,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:31:25,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:31:25,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:31:25,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:31:25,511.511 INFO    ] time= 28/10/2026 07:31:25
[2026-10-28 07:31:25,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:31:25,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:31:25,678.678 INFO    ] No existing commands found in stream
[2026-10-28 07:31:30,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:31:30,711.711 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 07:31:34,931.931 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:31:34,934.934 INFO    ] Checking for system updates...
[2026-10-28 07:31:34,969.969 INFO    ] 200
[2026-10-28 07:31:34,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:31:35,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:31:35,034.034 INFO    ] No update needed
[2026-10-28 07:31:35,036.036 INFO    ] Checking for camera pi updates...
[2026-10-28 07:31:35,071.071 INFO    ] 200
[2026-10-28 07:31:35,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:31:35,115.115 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:31:35,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:31:35,209.209 INFO    ] No camera update needed
[2026-10-28 07:31:35,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:31:35,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:31:35,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:31:35,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:31:37,267.267 INFO    ] ================================================
[2026-10-28 07:31:37,283.283 INFO    ] Launching Daemon at Wed Oct 28 07:31:37 IST 2026
[2026-10-28 07:31:37,295.295 INFO    ] ================================================
[2026-10-28 07:31:37,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:31:37
[2026-10-28 07:31:38,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:31:38,934.934 INFO    ] Initializing speech engine...
[2026-10-28 07:31:38,943.943 INFO    ] 2026-10-28 07:31:38
[2026-10-28 07:31:39,216.216 INFO    ] 2026-10-28 07:31:39
[2026-10-28 07:31:39,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:31:39,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:31:39,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:31:39,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:31:39,801.801 INFO    ] time= 28/10/2026 07:31:39
[2026-10-28 07:31:39,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:31:39,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:31:39,951.951 INFO    ] No existing commands found in stream
[2026-10-28 07:31:44,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:31:44,975.975 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 07:31:48,505.505 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:31:48,508.508 INFO    ] Checking for system updates...
[2026-10-28 07:31:48,546.546 INFO    ] 200
[2026-10-28 07:31:48,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:31:48,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:31:48,603.603 INFO    ] No update needed
[2026-10-28 07:31:48,606.606 INFO    ] Checking for camera pi updates...
[2026-10-28 07:31:48,639.639 INFO    ] 200
[2026-10-28 07:31:48,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:31:48,683.683 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:31:48,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:31:48,799.799 INFO    ] No camera update needed
[2026-10-28 07:31:48,801.801 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:31:48,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:31:48,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:31:48,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:31:50,853.853 INFO    ] ================================================
[2026-10-28 07:31:50,868.868 INFO    ] Launching Daemon at Wed Oct 28 07:31:50 IST 2026
[2026-10-28 07:31:50,879.879 INFO    ] ================================================
[2026-10-28 07:31:51,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:31:51
[2026-10-28 07:31:52,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:31:52,551.551 INFO    ] Initializing speech engine...
[2026-10-28 07:31:52,562.562 INFO    ] 2026-10-28 07:31:52
[2026-10-28 07:31:52,858.858 INFO    ] 2026-10-28 07:31:52
[2026-10-28 07:31:52,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:31:53,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:31:53,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:31:53,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:31:53,594.594 INFO    ] time= 28/10/2026 07:31:53
[2026-10-28 07:31:53,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:31:53,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:31:53,874.874 INFO    ] No existing commands found in stream
[2026-10-28 07:31:58,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:31:58,891.891 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-28 07:32:01,172.172 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:32:01,176.176 INFO    ] Checking for system updates...
[2026-10-28 07:32:01,216.216 INFO    ] 200
[2026-10-28 07:32:01,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:32:01,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:32:01,285.285 INFO    ] No update needed
[2026-10-28 07:32:01,289.289 INFO    ] Checking for camera pi updates...
[2026-10-28 07:32:01,329.329 INFO    ] 200
[2026-10-28 07:32:01,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:32:01,384.384 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:32:01,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:32:01,466.466 INFO    ] No camera update needed
[2026-10-28 07:32:01,468.468 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:32:01,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:32:01,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:32:01,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:32:03,524.524 INFO    ] ================================================
[2026-10-28 07:32:03,539.539 INFO    ] Launching Daemon at Wed Oct 28 07:32:03 IST 2026
[2026-10-28 07:32:03,553.553 INFO    ] ================================================
[2026-10-28 07:32:04,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:32:04
[2026-10-28 07:32:04,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:32:05,065.065 INFO    ] Initializing speech engine...
[2026-10-28 07:32:05,076.076 INFO    ] 2026-10-28 07:32:05
[2026-10-28 07:32:05,387.387 INFO    ] 2026-10-28 07:32:05
[2026-10-28 07:32:05,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:32:05,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:32:05,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:32:06,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:32:06,087.087 INFO    ] time= 28/10/2026 07:32:06
[2026-10-28 07:32:06,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:32:06,173.173 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:32:06,326.326 INFO    ] No existing commands found in stream
[2026-10-28 07:32:11,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:32:11,348.348 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 07:32:13,023.023 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:32:13,027.027 INFO    ] Checking for system updates...
[2026-10-28 07:32:13,067.067 INFO    ] 200
[2026-10-28 07:32:13,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:32:13,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:32:13,127.127 INFO    ] No update needed
[2026-10-28 07:32:13,130.130 INFO    ] Checking for camera pi updates...
[2026-10-28 07:32:13,164.164 INFO    ] 200
[2026-10-28 07:32:13,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:32:13,209.209 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:32:13,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:32:13,295.295 INFO    ] No camera update needed
[2026-10-28 07:32:13,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:32:13,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:32:13,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:32:13,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:32:15,355.355 INFO    ] ================================================
[2026-10-28 07:32:15,371.371 INFO    ] Launching Daemon at Wed Oct 28 07:32:15 IST 2026
[2026-10-28 07:32:15,382.382 INFO    ] ================================================
[2026-10-28 07:32:15,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:32:15
[2026-10-28 07:32:16,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:32:16,847.847 INFO    ] Initializing speech engine...
[2026-10-28 07:32:16,857.857 INFO    ] 2026-10-28 07:32:16
[2026-10-28 07:32:17,118.118 INFO    ] 2026-10-28 07:32:17
[2026-10-28 07:32:17,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:32:17,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:32:17,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:32:17,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:32:17,664.664 INFO    ] time= 28/10/2026 07:32:17
[2026-10-28 07:32:17,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:32:17,686.686 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:32:17,816.816 INFO    ] No existing commands found in stream
[2026-10-28 07:32:22,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:32:22,834.834 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-28 07:32:27,067.067 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:32:27,070.070 INFO    ] Checking for system updates...
[2026-10-28 07:32:27,111.111 INFO    ] 200
[2026-10-28 07:32:27,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:32:27,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:32:27,178.178 INFO    ] No update needed
[2026-10-28 07:32:27,181.181 INFO    ] Checking for camera pi updates...
[2026-10-28 07:32:27,216.216 INFO    ] 200
[2026-10-28 07:32:27,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:32:27,261.261 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:32:27,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:32:27,349.349 INFO    ] No camera update needed
[2026-10-28 07:32:27,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:32:27,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:32:27,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:32:27,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:32:29,409.409 INFO    ] ================================================
[2026-10-28 07:32:29,425.425 INFO    ] Launching Daemon at Wed Oct 28 07:32:29 IST 2026
[2026-10-28 07:32:29,435.435 INFO    ] ================================================
[2026-10-28 07:32:30,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:32:30
[2026-10-28 07:32:30,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:32:30,903.903 INFO    ] Initializing speech engine...
[2026-10-28 07:32:30,914.914 INFO    ] 2026-10-28 07:32:30
[2026-10-28 07:32:31,177.177 INFO    ] 2026-10-28 07:32:31
[2026-10-28 07:32:31,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:32:31,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:32:31,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:32:31,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:32:31,728.728 INFO    ] time= 28/10/2026 07:32:31
[2026-10-28 07:32:31,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:32:31,774.774 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:32:31,896.896 INFO    ] No existing commands found in stream
[2026-10-28 07:32:36,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:32:36,924.924 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-28 07:32:39,319.319 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:32:39,322.322 INFO    ] Checking for system updates...
[2026-10-28 07:32:39,362.362 INFO    ] 200
[2026-10-28 07:32:39,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:32:39,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:32:39,420.420 INFO    ] No update needed
[2026-10-28 07:32:39,423.423 INFO    ] Checking for camera pi updates...
[2026-10-28 07:32:39,457.457 INFO    ] 200
[2026-10-28 07:32:39,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:32:39,500.500 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:32:39,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:32:39,592.592 INFO    ] No camera update needed
[2026-10-28 07:32:39,594.594 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:32:39,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:32:39,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:32:39,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:32:41,647.647 INFO    ] ================================================
[2026-10-28 07:32:41,663.663 INFO    ] Launching Daemon at Wed Oct 28 07:32:41 IST 2026
[2026-10-28 07:32:41,674.674 INFO    ] ================================================
[2026-10-28 07:32:42,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:32:42
[2026-10-28 07:32:42,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:32:43,102.102 INFO    ] Initializing speech engine...
[2026-10-28 07:32:43,115.115 INFO    ] 2026-10-28 07:32:43
[2026-10-28 07:32:43,373.373 INFO    ] 2026-10-28 07:32:43
[2026-10-28 07:32:43,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:32:43,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:32:43,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:32:43,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:32:43,912.912 INFO    ] time= 28/10/2026 07:32:43
[2026-10-28 07:32:43,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:32:43,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:32:44,063.063 INFO    ] No existing commands found in stream
[2026-10-28 07:32:49,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:32:49,081.081 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-28 07:32:52,973.973 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:32:52,976.976 INFO    ] Checking for system updates...
[2026-10-28 07:32:53,014.014 INFO    ] 200
[2026-10-28 07:32:53,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:32:53,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:32:53,072.072 INFO    ] No update needed
[2026-10-28 07:32:53,075.075 INFO    ] Checking for camera pi updates...
[2026-10-28 07:32:53,108.108 INFO    ] 200
[2026-10-28 07:32:53,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:32:53,160.160 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:32:53,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:32:53,258.258 INFO    ] No camera update needed
[2026-10-28 07:32:53,260.260 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:32:53,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:32:53,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:32:53,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:32:55,312.312 INFO    ] ================================================
[2026-10-28 07:32:55,327.327 INFO    ] Launching Daemon at Wed Oct 28 07:32:55 IST 2026
[2026-10-28 07:32:55,338.338 INFO    ] ================================================
[2026-10-28 07:32:56,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:32:56
[2026-10-28 07:32:56,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:32:57,012.012 INFO    ] Initializing speech engine...
[2026-10-28 07:32:57,019.019 INFO    ] 2026-10-28 07:32:57
[2026-10-28 07:32:57,338.338 INFO    ] 2026-10-28 07:32:57
[2026-10-28 07:32:57,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:32:57,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:32:57,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:32:57,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:32:57,866.866 INFO    ] time= 28/10/2026 07:32:57
[2026-10-28 07:32:57,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:32:57,905.905 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:32:58,017.017 INFO    ] No existing commands found in stream
[2026-10-28 07:33:03,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:33:03,057.057 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-28 07:33:05,285.285 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:33:05,288.288 INFO    ] Checking for system updates...
[2026-10-28 07:33:05,326.326 INFO    ] 200
[2026-10-28 07:33:05,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:33:05,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:33:05,385.385 INFO    ] No update needed
[2026-10-28 07:33:05,388.388 INFO    ] Checking for camera pi updates...
[2026-10-28 07:33:05,421.421 INFO    ] 200
[2026-10-28 07:33:05,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:33:05,469.469 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:33:05,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:33:05,551.551 INFO    ] No camera update needed
[2026-10-28 07:33:05,553.553 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:33:05,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:33:05,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:33:05,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:33:07,604.604 INFO    ] ================================================
[2026-10-28 07:33:07,619.619 INFO    ] Launching Daemon at Wed Oct 28 07:33:07 IST 2026
[2026-10-28 07:33:07,630.630 INFO    ] ================================================
[2026-10-28 07:33:08,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:33:08
[2026-10-28 07:33:08,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:33:09,058.058 INFO    ] Initializing speech engine...
[2026-10-28 07:33:09,064.064 INFO    ] 2026-10-28 07:33:09
[2026-10-28 07:33:09,324.324 INFO    ] 2026-10-28 07:33:09
[2026-10-28 07:33:09,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:33:09,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:33:09,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:33:09,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:33:09,870.870 INFO    ] time= 28/10/2026 07:33:09
[2026-10-28 07:33:09,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:33:09,905.905 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:33:10,053.053 INFO    ] No existing commands found in stream
[2026-10-28 07:33:15,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:33:15,086.086 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-28 07:33:17,078.078 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:33:17,080.080 INFO    ] Checking for system updates...
[2026-10-28 07:33:17,116.116 INFO    ] 200
[2026-10-28 07:33:17,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:33:17,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:33:17,173.173 INFO    ] No update needed
[2026-10-28 07:33:17,176.176 INFO    ] Checking for camera pi updates...
[2026-10-28 07:33:17,209.209 INFO    ] 200
[2026-10-28 07:33:17,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:33:17,254.254 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:33:17,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:33:17,307.307 INFO    ] No camera update needed
[2026-10-28 07:33:17,310.310 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:33:17,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:33:17,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:33:17,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:33:19,362.362 INFO    ] ================================================
[2026-10-28 07:33:19,377.377 INFO    ] Launching Daemon at Wed Oct 28 07:33:19 IST 2026
[2026-10-28 07:33:19,387.387 INFO    ] ================================================
[2026-10-28 07:33:20,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:33:20
[2026-10-28 07:33:20,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:33:21,021.021 INFO    ] Initializing speech engine...
[2026-10-28 07:33:21,033.033 INFO    ] 2026-10-28 07:33:21
[2026-10-28 07:33:21,317.317 INFO    ] 2026-10-28 07:33:21
[2026-10-28 07:33:21,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:33:21,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:33:21,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:33:21,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:33:21,859.859 INFO    ] time= 28/10/2026 07:33:21
[2026-10-28 07:33:21,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:33:21,898.898 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:33:22,023.023 INFO    ] No existing commands found in stream
[2026-10-28 07:33:27,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:33:27,058.058 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-28 07:33:27,839.839 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:33:27,842.842 INFO    ] Checking for system updates...
[2026-10-28 07:33:27,884.884 INFO    ] 200
[2026-10-28 07:33:27,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:33:27,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:33:27,947.947 INFO    ] No update needed
[2026-10-28 07:33:27,950.950 INFO    ] Checking for camera pi updates...
[2026-10-28 07:33:27,985.985 INFO    ] 200
[2026-10-28 07:33:27,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:33:28,029.029 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:33:28,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:33:28,119.119 INFO    ] No camera update needed
[2026-10-28 07:33:28,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:33:28,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:33:28,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:33:28,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:33:30,176.176 INFO    ] ================================================
[2026-10-28 07:33:30,190.190 INFO    ] Launching Daemon at Wed Oct 28 07:33:30 IST 2026
[2026-10-28 07:33:30,201.201 INFO    ] ================================================
[2026-10-28 07:33:30,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:33:30
[2026-10-28 07:33:31,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:33:31,650.650 INFO    ] Initializing speech engine...
[2026-10-28 07:33:31,667.667 INFO    ] 2026-10-28 07:33:31
[2026-10-28 07:33:31,977.977 INFO    ] 2026-10-28 07:33:31
[2026-10-28 07:33:32,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:33:32,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:33:32,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:33:32,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:33:32,548.548 INFO    ] time= 28/10/2026 07:33:32
[2026-10-28 07:33:32,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:33:32,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:33:32,805.805 INFO    ] No existing commands found in stream
[2026-10-28 07:33:37,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:33:37,835.835 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 07:33:41,968.968 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:33:41,970.970 INFO    ] Checking for system updates...
[2026-10-28 07:33:42,007.007 INFO    ] 200
[2026-10-28 07:33:42,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:33:42,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:33:42,064.064 INFO    ] No update needed
[2026-10-28 07:33:42,066.066 INFO    ] Checking for camera pi updates...
[2026-10-28 07:33:42,104.104 INFO    ] 200
[2026-10-28 07:33:42,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:33:42,146.146 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:33:42,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:33:42,232.232 INFO    ] No camera update needed
[2026-10-28 07:33:42,234.234 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:33:42,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:33:42,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:33:42,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:33:44,286.286 INFO    ] ================================================
[2026-10-28 07:33:44,301.301 INFO    ] Launching Daemon at Wed Oct 28 07:33:44 IST 2026
[2026-10-28 07:33:44,311.311 INFO    ] ================================================
[2026-10-28 07:33:44,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:33:44
[2026-10-28 07:33:45,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:33:45,891.891 INFO    ] Initializing speech engine...
[2026-10-28 07:33:45,904.904 INFO    ] 2026-10-28 07:33:45
[2026-10-28 07:33:46,184.184 INFO    ] 2026-10-28 07:33:46
[2026-10-28 07:33:46,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:33:46,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:33:46,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:33:46,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:33:46,736.736 INFO    ] time= 28/10/2026 07:33:46
[2026-10-28 07:33:46,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:33:46,773.773 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:33:46,926.926 INFO    ] No existing commands found in stream
[2026-10-28 07:33:51,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:33:51,955.955 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 07:33:55,582.582 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:33:55,586.586 INFO    ] Checking for system updates...
[2026-10-28 07:33:55,625.625 INFO    ] 200
[2026-10-28 07:33:55,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:33:55,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:33:55,687.687 INFO    ] No update needed
[2026-10-28 07:33:55,690.690 INFO    ] Checking for camera pi updates...
[2026-10-28 07:33:55,723.723 INFO    ] 200
[2026-10-28 07:33:55,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:33:55,770.770 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:33:55,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:33:55,855.855 INFO    ] No camera update needed
[2026-10-28 07:33:55,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:33:55,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:33:55,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:33:55,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:33:57,909.909 INFO    ] ================================================
[2026-10-28 07:33:57,924.924 INFO    ] Launching Daemon at Wed Oct 28 07:33:57 IST 2026
[2026-10-28 07:33:57,935.935 INFO    ] ================================================
[2026-10-28 07:33:58,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:33:58
[2026-10-28 07:33:59,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:33:59,421.421 INFO    ] Initializing speech engine...
[2026-10-28 07:33:59,428.428 INFO    ] 2026-10-28 07:33:59
[2026-10-28 07:33:59,671.671 INFO    ] 2026-10-28 07:33:59
[2026-10-28 07:33:59,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:33:59,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:33:59,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:34:00,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:34:00,165.165 INFO    ] time= 28/10/2026 07:34:00
[2026-10-28 07:34:00,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:34:00,230.230 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:34:00,358.358 INFO    ] No existing commands found in stream
[2026-10-28 07:34:05,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:34:05,388.388 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-28 07:34:09,244.244 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:34:09,247.247 INFO    ] Checking for system updates...
[2026-10-28 07:34:09,282.282 INFO    ] 200
[2026-10-28 07:34:09,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:34:09,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:34:09,342.342 INFO    ] No update needed
[2026-10-28 07:34:09,344.344 INFO    ] Checking for camera pi updates...
[2026-10-28 07:34:09,382.382 INFO    ] 200
[2026-10-28 07:34:09,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:34:09,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:34:09,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:34:09,494.494 INFO    ] No camera update needed
[2026-10-28 07:34:09,497.497 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:34:09,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:34:09,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:34:09,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:34:11,551.551 INFO    ] ================================================
[2026-10-28 07:34:11,567.567 INFO    ] Launching Daemon at Wed Oct 28 07:34:11 IST 2026
[2026-10-28 07:34:11,577.577 INFO    ] ================================================
[2026-10-28 07:34:12,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:34:12
[2026-10-28 07:34:12,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:34:12,999.999 INFO    ] Initializing speech engine...
[2026-10-28 07:34:13,016.016 INFO    ] 2026-10-28 07:34:13
[2026-10-28 07:34:13,290.290 INFO    ] 2026-10-28 07:34:13
[2026-10-28 07:34:13,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:34:13,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:34:13,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:34:13,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:34:13,882.882 INFO    ] time= 28/10/2026 07:34:13
[2026-10-28 07:34:13,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:34:13,905.905 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:34:14,038.038 INFO    ] No existing commands found in stream
[2026-10-28 07:34:19,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:34:19,063.063 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 07:34:21,863.863 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:34:21,865.865 INFO    ] Checking for system updates...
[2026-10-28 07:34:21,905.905 INFO    ] 200
[2026-10-28 07:34:21,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:34:21,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:34:21,970.970 INFO    ] No update needed
[2026-10-28 07:34:21,973.973 INFO    ] Checking for camera pi updates...
[2026-10-28 07:34:22,010.010 INFO    ] 200
[2026-10-28 07:34:22,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:34:22,057.057 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:34:22,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:34:22,159.159 INFO    ] No camera update needed
[2026-10-28 07:34:22,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:34:22,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:34:22,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:34:22,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:34:24,214.214 INFO    ] ================================================
[2026-10-28 07:34:24,229.229 INFO    ] Launching Daemon at Wed Oct 28 07:34:24 IST 2026
[2026-10-28 07:34:24,240.240 INFO    ] ================================================
[2026-10-28 07:34:24,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:34:24
[2026-10-28 07:34:25,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:34:25,724.724 INFO    ] Initializing speech engine...
[2026-10-28 07:34:25,733.733 INFO    ] 2026-10-28 07:34:25
[2026-10-28 07:34:26,007.007 INFO    ] 2026-10-28 07:34:26
[2026-10-28 07:34:26,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:34:26,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:34:26,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:34:26,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:34:26,516.516 INFO    ] time= 28/10/2026 07:34:26
[2026-10-28 07:34:26,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:34:26,620.620 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:34:26,754.754 INFO    ] No existing commands found in stream
[2026-10-28 07:34:31,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:34:31,782.782 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 07:34:35,381.381 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:34:35,384.384 INFO    ] Checking for system updates...
[2026-10-28 07:34:35,423.423 INFO    ] 200
[2026-10-28 07:34:35,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:34:35,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:34:35,480.480 INFO    ] No update needed
[2026-10-28 07:34:35,482.482 INFO    ] Checking for camera pi updates...
[2026-10-28 07:34:35,518.518 INFO    ] 200
[2026-10-28 07:34:35,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:34:35,567.567 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:34:35,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:34:35,734.734 INFO    ] No camera update needed
[2026-10-28 07:34:35,736.736 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:34:35,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:34:35,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:34:35,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:34:37,791.791 INFO    ] ================================================
[2026-10-28 07:34:37,806.806 INFO    ] Launching Daemon at Wed Oct 28 07:34:37 IST 2026
[2026-10-28 07:34:37,816.816 INFO    ] ================================================
[2026-10-28 07:34:38,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:34:38
[2026-10-28 07:34:38,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:34:39,235.235 INFO    ] Initializing speech engine...
[2026-10-28 07:34:39,244.244 INFO    ] 2026-10-28 07:34:39
[2026-10-28 07:34:39,489.489 INFO    ] 2026-10-28 07:34:39
[2026-10-28 07:34:39,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:34:39,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:34:39,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:34:40,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:34:40,042.042 INFO    ] time= 28/10/2026 07:34:40
[2026-10-28 07:34:40,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:34:40,067.067 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:34:40,195.195 INFO    ] No existing commands found in stream
[2026-10-28 07:34:45,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:34:45,213.213 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-28 07:34:49,237.237 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:34:49,239.239 INFO    ] Checking for system updates...
[2026-10-28 07:34:49,275.275 INFO    ] 200
[2026-10-28 07:34:49,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:34:49,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:34:49,333.333 INFO    ] No update needed
[2026-10-28 07:34:49,335.335 INFO    ] Checking for camera pi updates...
[2026-10-28 07:34:49,369.369 INFO    ] 200
[2026-10-28 07:34:49,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:34:49,416.416 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:34:49,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:34:49,505.505 INFO    ] No camera update needed
[2026-10-28 07:34:49,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:34:49,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:34:49,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:34:49,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:34:51,564.564 INFO    ] ================================================
[2026-10-28 07:34:51,579.579 INFO    ] Launching Daemon at Wed Oct 28 07:34:51 IST 2026
[2026-10-28 07:34:51,589.589 INFO    ] ================================================
[2026-10-28 07:34:52,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:34:52
[2026-10-28 07:34:52,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:34:53,194.194 INFO    ] Initializing speech engine...
[2026-10-28 07:34:53,202.202 INFO    ] 2026-10-28 07:34:53
[2026-10-28 07:34:53,481.481 INFO    ] 2026-10-28 07:34:53
[2026-10-28 07:34:53,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:34:53,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:34:53,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:34:54,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:34:54,044.044 INFO    ] time= 28/10/2026 07:34:54
[2026-10-28 07:34:54,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:34:54,085.085 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:34:54,232.232 INFO    ] No existing commands found in stream
[2026-10-28 07:34:59,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:34:59,267.267 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 07:35:00,720.720 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:35:00,723.723 INFO    ] Checking for system updates...
[2026-10-28 07:35:00,764.764 INFO    ] 200
[2026-10-28 07:35:00,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:35:00,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:35:00,828.828 INFO    ] No update needed
[2026-10-28 07:35:00,831.831 INFO    ] Checking for camera pi updates...
[2026-10-28 07:35:00,868.868 INFO    ] 200
[2026-10-28 07:35:00,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:35:00,911.911 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:35:00,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:35:01,000.000 INFO    ] No camera update needed
[2026-10-28 07:35:01,003.003 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:35:01,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:35:01,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:35:01,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:35:03,066.066 INFO    ] ================================================
[2026-10-28 07:35:03,083.083 INFO    ] Launching Daemon at Wed Oct 28 07:35:03 IST 2026
[2026-10-28 07:35:03,096.096 INFO    ] ================================================
[2026-10-28 07:35:03,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:35:03
[2026-10-28 07:35:04,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:35:04,748.748 INFO    ] Initializing speech engine...
[2026-10-28 07:35:04,759.759 INFO    ] 2026-10-28 07:35:04
[2026-10-28 07:35:05,029.029 INFO    ] 2026-10-28 07:35:05
[2026-10-28 07:35:05,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:35:05,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:35:05,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:35:05,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:35:05,574.574 INFO    ] time= 28/10/2026 07:35:05
[2026-10-28 07:35:05,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:35:05,610.610 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:35:05,739.739 INFO    ] No existing commands found in stream
[2026-10-28 07:35:10,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:35:10,767.767 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 07:35:12,064.064 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:35:12,066.066 INFO    ] Checking for system updates...
[2026-10-28 07:35:12,104.104 INFO    ] 200
[2026-10-28 07:35:12,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:35:12,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:35:12,168.168 INFO    ] No update needed
[2026-10-28 07:35:12,170.170 INFO    ] Checking for camera pi updates...
[2026-10-28 07:35:12,206.206 INFO    ] 200
[2026-10-28 07:35:12,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:35:12,249.249 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:35:12,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:35:12,330.330 INFO    ] No camera update needed
[2026-10-28 07:35:12,333.333 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:35:12,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:35:12,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:35:12,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:35:14,384.384 INFO    ] ================================================
[2026-10-28 07:35:14,399.399 INFO    ] Launching Daemon at Wed Oct 28 07:35:14 IST 2026
[2026-10-28 07:35:14,410.410 INFO    ] ================================================
[2026-10-28 07:35:14,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:35:14
[2026-10-28 07:35:15,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:35:15,800.800 INFO    ] Initializing speech engine...
[2026-10-28 07:35:15,815.815 INFO    ] 2026-10-28 07:35:15
[2026-10-28 07:35:16,082.082 INFO    ] 2026-10-28 07:35:16
[2026-10-28 07:35:16,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:35:16,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:35:16,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:35:16,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:35:16,649.649 INFO    ] time= 28/10/2026 07:35:16
[2026-10-28 07:35:16,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:35:16,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:35:16,791.791 INFO    ] No existing commands found in stream
[2026-10-28 07:35:21,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:35:21,816.816 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-28 07:35:25,341.341 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:35:25,344.344 INFO    ] Checking for system updates...
[2026-10-28 07:35:25,383.383 INFO    ] 200
[2026-10-28 07:35:25,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:35:25,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:35:25,446.446 INFO    ] No update needed
[2026-10-28 07:35:25,449.449 INFO    ] Checking for camera pi updates...
[2026-10-28 07:35:25,483.483 INFO    ] 200
[2026-10-28 07:35:25,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:35:25,530.530 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:35:25,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:35:25,585.585 INFO    ] No camera update needed
[2026-10-28 07:35:25,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:35:25,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:35:25,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:35:25,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:35:27,639.639 INFO    ] ================================================
[2026-10-28 07:35:27,654.654 INFO    ] Launching Daemon at Wed Oct 28 07:35:27 IST 2026
[2026-10-28 07:35:27,664.664 INFO    ] ================================================
[2026-10-28 07:35:28,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:35:28
[2026-10-28 07:35:28,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:35:29,115.115 INFO    ] Initializing speech engine...
[2026-10-28 07:35:29,126.126 INFO    ] 2026-10-28 07:35:29
[2026-10-28 07:35:29,387.387 INFO    ] 2026-10-28 07:35:29
[2026-10-28 07:35:29,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:35:29,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:35:29,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:35:29,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:35:29,971.971 INFO    ] time= 28/10/2026 07:35:29
[2026-10-28 07:35:29,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:35:29,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:35:30,108.108 INFO    ] No existing commands found in stream
[2026-10-28 07:35:35,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:35:35,140.140 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 07:35:39,182.182 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:35:39,185.185 INFO    ] Checking for system updates...
[2026-10-28 07:35:39,221.221 INFO    ] 200
[2026-10-28 07:35:39,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:35:39,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:35:39,278.278 INFO    ] No update needed
[2026-10-28 07:35:39,281.281 INFO    ] Checking for camera pi updates...
[2026-10-28 07:35:39,314.314 INFO    ] 200
[2026-10-28 07:35:39,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:35:39,363.363 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:35:39,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:35:39,439.439 INFO    ] No camera update needed
[2026-10-28 07:35:39,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:35:39,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:35:39,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:35:39,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:35:41,499.499 INFO    ] ================================================
[2026-10-28 07:35:41,514.514 INFO    ] Launching Daemon at Wed Oct 28 07:35:41 IST 2026
[2026-10-28 07:35:41,525.525 INFO    ] ================================================
[2026-10-28 07:35:42,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:35:42
[2026-10-28 07:35:42,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:35:43,116.116 INFO    ] Initializing speech engine...
[2026-10-28 07:35:43,126.126 INFO    ] 2026-10-28 07:35:43
[2026-10-28 07:35:43,388.388 INFO    ] 2026-10-28 07:35:43
[2026-10-28 07:35:43,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:35:43,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:35:43,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:35:44,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:35:44,154.154 INFO    ] time= 28/10/2026 07:35:44
[2026-10-28 07:35:44,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:35:44,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:35:44,432.432 INFO    ] No existing commands found in stream
[2026-10-28 07:35:49,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:35:49,445.445 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 07:35:51,220.220 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:35:51,223.223 INFO    ] Checking for system updates...
[2026-10-28 07:35:51,261.261 INFO    ] 200
[2026-10-28 07:35:51,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:35:51,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:35:51,324.324 INFO    ] No update needed
[2026-10-28 07:35:51,327.327 INFO    ] Checking for camera pi updates...
[2026-10-28 07:35:51,360.360 INFO    ] 200
[2026-10-28 07:35:51,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:35:51,413.413 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:35:51,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:35:51,520.520 INFO    ] No camera update needed
[2026-10-28 07:35:51,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:35:51,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:35:51,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:35:51,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:35:53,575.575 INFO    ] ================================================
[2026-10-28 07:35:53,590.590 INFO    ] Launching Daemon at Wed Oct 28 07:35:53 IST 2026
[2026-10-28 07:35:53,601.601 INFO    ] ================================================
[2026-10-28 07:35:54,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:35:54
[2026-10-28 07:35:54,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:35:55,205.205 INFO    ] Initializing speech engine...
[2026-10-28 07:35:55,214.214 INFO    ] 2026-10-28 07:35:55
[2026-10-28 07:35:55,500.500 INFO    ] 2026-10-28 07:35:55
[2026-10-28 07:35:55,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:35:55,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:35:56,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:35:56,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:35:56,365.365 INFO    ] time= 28/10/2026 07:35:56
[2026-10-28 07:35:56,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:35:56,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:35:56,657.657 INFO    ] No existing commands found in stream
[2026-10-28 07:36:01,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:36:01,691.691 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 07:36:04,462.462 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:36:04,465.465 INFO    ] Checking for system updates...
[2026-10-28 07:36:04,502.502 INFO    ] 200
[2026-10-28 07:36:04,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:36:04,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:36:04,561.561 INFO    ] No update needed
[2026-10-28 07:36:04,564.564 INFO    ] Checking for camera pi updates...
[2026-10-28 07:36:04,598.598 INFO    ] 200
[2026-10-28 07:36:04,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:36:04,641.641 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:36:04,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:36:04,744.744 INFO    ] No camera update needed
[2026-10-28 07:36:04,747.747 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:36:04,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:36:04,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:36:04,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:36:06,799.799 INFO    ] ================================================
[2026-10-28 07:36:06,814.814 INFO    ] Launching Daemon at Wed Oct 28 07:36:06 IST 2026
[2026-10-28 07:36:06,824.824 INFO    ] ================================================
[2026-10-28 07:36:07,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:36:07
[2026-10-28 07:36:08,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:36:08,470.470 INFO    ] Initializing speech engine...
[2026-10-28 07:36:08,479.479 INFO    ] 2026-10-28 07:36:08
[2026-10-28 07:36:08,796.796 INFO    ] 2026-10-28 07:36:08
[2026-10-28 07:36:08,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:36:09,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:36:09,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:36:09,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:36:09,491.491 INFO    ] time= 28/10/2026 07:36:09
[2026-10-28 07:36:09,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:36:09,604.604 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:36:09,750.750 INFO    ] No existing commands found in stream
[2026-10-28 07:36:14,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:36:14,764.764 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-28 07:36:16,729.729 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:36:16,732.732 INFO    ] Checking for system updates...
[2026-10-28 07:36:16,775.775 INFO    ] 200
[2026-10-28 07:36:16,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:36:16,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:36:16,841.841 INFO    ] No update needed
[2026-10-28 07:36:16,843.843 INFO    ] Checking for camera pi updates...
[2026-10-28 07:36:16,877.877 INFO    ] 200
[2026-10-28 07:36:16,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:36:16,920.920 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:36:16,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:36:17,001.001 INFO    ] No camera update needed
[2026-10-28 07:36:17,003.003 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:36:17,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:36:17,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:36:17,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:36:19,056.056 INFO    ] ================================================
[2026-10-28 07:36:19,072.072 INFO    ] Launching Daemon at Wed Oct 28 07:36:19 IST 2026
[2026-10-28 07:36:19,084.084 INFO    ] ================================================
[2026-10-28 07:36:19,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:36:19
[2026-10-28 07:36:20,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:36:20,605.605 INFO    ] Initializing speech engine...
[2026-10-28 07:36:20,614.614 INFO    ] 2026-10-28 07:36:20
[2026-10-28 07:36:20,875.875 INFO    ] 2026-10-28 07:36:20
[2026-10-28 07:36:20,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:36:21,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:36:21,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:36:21,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:36:21,441.441 INFO    ] time= 28/10/2026 07:36:21
[2026-10-28 07:36:21,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:36:21,475.475 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:36:21,622.622 INFO    ] No existing commands found in stream
[2026-10-28 07:36:26,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:36:26,644.644 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 07:36:27,790.790 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:36:27,793.793 INFO    ] Checking for system updates...
[2026-10-28 07:36:27,828.828 INFO    ] 200
[2026-10-28 07:36:27,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:36:27,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:36:27,885.885 INFO    ] No update needed
[2026-10-28 07:36:27,887.887 INFO    ] Checking for camera pi updates...
[2026-10-28 07:36:27,921.921 INFO    ] 200
[2026-10-28 07:36:27,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:36:27,965.965 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:36:28,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:36:28,048.048 INFO    ] No camera update needed
[2026-10-28 07:36:28,051.051 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:36:28,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:36:28,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:36:28,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:36:30,103.103 INFO    ] ================================================
[2026-10-28 07:36:30,119.119 INFO    ] Launching Daemon at Wed Oct 28 07:36:30 IST 2026
[2026-10-28 07:36:30,131.131 INFO    ] ================================================
[2026-10-28 07:36:30,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:36:30
[2026-10-28 07:36:31,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:36:31,533.533 INFO    ] Initializing speech engine...
[2026-10-28 07:36:31,539.539 INFO    ] 2026-10-28 07:36:31
[2026-10-28 07:36:31,811.811 INFO    ] 2026-10-28 07:36:31
[2026-10-28 07:36:31,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:36:32,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:36:32,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:36:32,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:36:32,408.408 INFO    ] time= 28/10/2026 07:36:32
[2026-10-28 07:36:32,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:36:32,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:36:32,599.599 INFO    ] No existing commands found in stream
[2026-10-28 07:36:37,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:36:37,646.646 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 07:36:40,824.824 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:36:40,827.827 INFO    ] Checking for system updates...
[2026-10-28 07:36:40,863.863 INFO    ] 200
[2026-10-28 07:36:40,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:36:40,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:36:40,921.921 INFO    ] No update needed
[2026-10-28 07:36:40,923.923 INFO    ] Checking for camera pi updates...
[2026-10-28 07:36:40,957.957 INFO    ] 200
[2026-10-28 07:36:40,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:36:40,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:36:41,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:36:41,149.149 INFO    ] No camera update needed
[2026-10-28 07:36:41,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:36:41,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:36:41,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:36:41,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:36:43,205.205 INFO    ] ================================================
[2026-10-28 07:36:43,220.220 INFO    ] Launching Daemon at Wed Oct 28 07:36:43 IST 2026
[2026-10-28 07:36:43,231.231 INFO    ] ================================================
[2026-10-28 07:36:43,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:36:43
[2026-10-28 07:36:44,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:36:44,640.640 INFO    ] Initializing speech engine...
[2026-10-28 07:36:44,655.655 INFO    ] 2026-10-28 07:36:44
[2026-10-28 07:36:44,920.920 INFO    ] 2026-10-28 07:36:44
[2026-10-28 07:36:44,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:36:45,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:36:45,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:36:45,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:36:45,485.485 INFO    ] time= 28/10/2026 07:36:45
[2026-10-28 07:36:45,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:36:45,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:36:45,646.646 INFO    ] No existing commands found in stream
[2026-10-28 07:36:50,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:36:50,678.678 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-28 07:36:52,106.106 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:36:52,109.109 INFO    ] Checking for system updates...
[2026-10-28 07:36:52,150.150 INFO    ] 200
[2026-10-28 07:36:52,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:36:52,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:36:52,209.209 INFO    ] No update needed
[2026-10-28 07:36:52,212.212 INFO    ] Checking for camera pi updates...
[2026-10-28 07:36:52,249.249 INFO    ] 200
[2026-10-28 07:36:52,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:36:52,296.296 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:36:52,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:36:52,379.379 INFO    ] No camera update needed
[2026-10-28 07:36:52,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:36:52,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:36:52,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:36:52,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:36:54,435.435 INFO    ] ================================================
[2026-10-28 07:36:54,451.451 INFO    ] Launching Daemon at Wed Oct 28 07:36:54 IST 2026
[2026-10-28 07:36:54,462.462 INFO    ] ================================================
[2026-10-28 07:36:55,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:36:55
[2026-10-28 07:36:55,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:36:55,860.860 INFO    ] Initializing speech engine...
[2026-10-28 07:36:55,874.874 INFO    ] 2026-10-28 07:36:55
[2026-10-28 07:36:56,138.138 INFO    ] 2026-10-28 07:36:56
[2026-10-28 07:36:56,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:36:56,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:36:56,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:36:56,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:36:56,692.692 INFO    ] time= 28/10/2026 07:36:56
[2026-10-28 07:36:56,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:36:56,715.715 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:36:56,843.843 INFO    ] No existing commands found in stream
[2026-10-28 07:37:01,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:37:01,859.859 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-28 07:37:03,619.619 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:37:03,622.622 INFO    ] Checking for system updates...
[2026-10-28 07:37:03,657.657 INFO    ] 200
[2026-10-28 07:37:03,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:37:03,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:37:03,718.718 INFO    ] No update needed
[2026-10-28 07:37:03,720.720 INFO    ] Checking for camera pi updates...
[2026-10-28 07:37:03,754.754 INFO    ] 200
[2026-10-28 07:37:03,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:37:03,797.797 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:37:03,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:37:03,875.875 INFO    ] No camera update needed
[2026-10-28 07:37:03,877.877 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:37:03,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:37:03,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:37:03,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:37:05,933.933 INFO    ] ================================================
[2026-10-28 07:37:05,950.950 INFO    ] Launching Daemon at Wed Oct 28 07:37:05 IST 2026
[2026-10-28 07:37:05,961.961 INFO    ] ================================================
[2026-10-28 07:37:06,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:37:06
[2026-10-28 07:37:07,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:37:07,538.538 INFO    ] Initializing speech engine...
[2026-10-28 07:37:07,557.557 INFO    ] 2026-10-28 07:37:07
[2026-10-28 07:37:07,806.806 INFO    ] 2026-10-28 07:37:07
[2026-10-28 07:37:07,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:37:08,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:37:08,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:37:08,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:37:08,371.371 INFO    ] time= 28/10/2026 07:37:08
[2026-10-28 07:37:08,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:37:08,392.392 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:37:08,522.522 INFO    ] No existing commands found in stream
[2026-10-28 07:37:13,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:37:13,543.543 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-28 07:37:14,660.660 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:37:14,662.662 INFO    ] Checking for system updates...
[2026-10-28 07:37:14,698.698 INFO    ] 200
[2026-10-28 07:37:14,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:37:14,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:37:14,755.755 INFO    ] No update needed
[2026-10-28 07:37:14,758.758 INFO    ] Checking for camera pi updates...
[2026-10-28 07:37:14,791.791 INFO    ] 200
[2026-10-28 07:37:14,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:37:14,834.834 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:37:14,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:37:14,939.939 INFO    ] No camera update needed
[2026-10-28 07:37:14,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:37:14,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:37:14,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:37:14,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:37:16,994.994 INFO    ] ================================================
[2026-10-28 07:37:17,009.009 INFO    ] Launching Daemon at Wed Oct 28 07:37:17 IST 2026
[2026-10-28 07:37:17,020.020 INFO    ] ================================================
[2026-10-28 07:37:17,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:37:17
[2026-10-28 07:37:18,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:37:18,500.500 INFO    ] Initializing speech engine...
[2026-10-28 07:37:18,518.518 INFO    ] 2026-10-28 07:37:18
[2026-10-28 07:37:18,819.819 INFO    ] 2026-10-28 07:37:18
[2026-10-28 07:37:18,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:37:19,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:37:19,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:37:19,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:37:19,401.401 INFO    ] time= 28/10/2026 07:37:19
[2026-10-28 07:37:19,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:37:19,419.419 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:37:19,509.509 INFO    ] No existing commands found in stream
[2026-10-28 07:37:24,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:37:24,523.523 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-28 07:37:27,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:37:27,611.611 INFO    ] Checking for system updates...
[2026-10-28 07:37:27,646.646 INFO    ] 200
[2026-10-28 07:37:27,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:37:27,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:37:27,710.710 INFO    ] No update needed
[2026-10-28 07:37:27,713.713 INFO    ] Checking for camera pi updates...
[2026-10-28 07:37:27,750.750 INFO    ] 200
[2026-10-28 07:37:27,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:37:27,792.792 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:37:27,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:37:27,876.876 INFO    ] No camera update needed
[2026-10-28 07:37:27,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:37:27,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:37:27,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:37:27,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:37:29,931.931 INFO    ] ================================================
[2026-10-28 07:37:29,946.946 INFO    ] Launching Daemon at Wed Oct 28 07:37:29 IST 2026
[2026-10-28 07:37:29,957.957 INFO    ] ================================================
[2026-10-28 07:37:30,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:37:30
[2026-10-28 07:37:31,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:37:31,383.383 INFO    ] Initializing speech engine...
[2026-10-28 07:37:31,397.397 INFO    ] 2026-10-28 07:37:31
[2026-10-28 07:37:31,676.676 INFO    ] 2026-10-28 07:37:31
[2026-10-28 07:37:31,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:37:31,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:37:31,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:37:32,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:37:32,278.278 INFO    ] time= 28/10/2026 07:37:32
[2026-10-28 07:37:32,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:37:32,307.307 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:37:32,440.440 INFO    ] No existing commands found in stream
[2026-10-28 07:37:37,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:37:37,458.458 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 07:37:39,871.871 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:37:39,873.873 INFO    ] Checking for system updates...
[2026-10-28 07:37:39,909.909 INFO    ] 200
[2026-10-28 07:37:39,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:37:39,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:37:39,972.972 INFO    ] No update needed
[2026-10-28 07:37:39,975.975 INFO    ] Checking for camera pi updates...
[2026-10-28 07:37:40,009.009 INFO    ] 200
[2026-10-28 07:37:40,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:37:40,052.052 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:37:40,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:37:40,137.137 INFO    ] No camera update needed
[2026-10-28 07:37:40,139.139 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:37:40,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:37:40,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:37:40,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:37:42,192.192 INFO    ] ================================================
[2026-10-28 07:37:42,207.207 INFO    ] Launching Daemon at Wed Oct 28 07:37:42 IST 2026
[2026-10-28 07:37:42,218.218 INFO    ] ================================================
[2026-10-28 07:37:42,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:37:42
[2026-10-28 07:37:43,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:37:43,831.831 INFO    ] Initializing speech engine...
[2026-10-28 07:37:43,844.844 INFO    ] 2026-10-28 07:37:43
[2026-10-28 07:37:44,124.124 INFO    ] 2026-10-28 07:37:44
[2026-10-28 07:37:44,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:37:44,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:37:44,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:37:44,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:37:44,673.673 INFO    ] time= 28/10/2026 07:37:44
[2026-10-28 07:37:44,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:37:44,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:37:44,829.829 INFO    ] No existing commands found in stream
[2026-10-28 07:37:49,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:37:49,863.863 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-28 07:37:54,343.343 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:37:54,346.346 INFO    ] Checking for system updates...
[2026-10-28 07:37:54,387.387 INFO    ] 200
[2026-10-28 07:37:54,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:37:54,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:37:54,448.448 INFO    ] No update needed
[2026-10-28 07:37:54,451.451 INFO    ] Checking for camera pi updates...
[2026-10-28 07:37:54,484.484 INFO    ] 200
[2026-10-28 07:37:54,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:37:54,527.527 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:37:54,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:37:54,640.640 INFO    ] No camera update needed
[2026-10-28 07:37:54,643.643 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:37:54,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:37:54,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:37:54,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:37:56,696.696 INFO    ] ================================================
[2026-10-28 07:37:56,711.711 INFO    ] Launching Daemon at Wed Oct 28 07:37:56 IST 2026
[2026-10-28 07:37:56,722.722 INFO    ] ================================================
[2026-10-28 07:37:57,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:37:57
[2026-10-28 07:37:57,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:37:58,180.180 INFO    ] Initializing speech engine...
[2026-10-28 07:37:58,186.186 INFO    ] 2026-10-28 07:37:58
[2026-10-28 07:37:58,449.449 INFO    ] 2026-10-28 07:37:58
[2026-10-28 07:37:58,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:37:58,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:37:58,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:37:58,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:37:59,014.014 INFO    ] time= 28/10/2026 07:37:59
[2026-10-28 07:37:59,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:37:59,047.047 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:37:59,150.150 INFO    ] No existing commands found in stream
[2026-10-28 07:38:04,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:38:04,177.177 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 07:38:05,350.350 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:38:05,352.352 INFO    ] Checking for system updates...
[2026-10-28 07:38:05,391.391 INFO    ] 200
[2026-10-28 07:38:05,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:38:05,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:38:05,453.453 INFO    ] No update needed
[2026-10-28 07:38:05,456.456 INFO    ] Checking for camera pi updates...
[2026-10-28 07:38:05,489.489 INFO    ] 200
[2026-10-28 07:38:05,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:38:05,532.532 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:38:05,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:38:05,613.613 INFO    ] No camera update needed
[2026-10-28 07:38:05,616.616 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:38:05,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:38:05,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:38:05,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:38:07,669.669 INFO    ] ================================================
[2026-10-28 07:38:07,684.684 INFO    ] Launching Daemon at Wed Oct 28 07:38:07 IST 2026
[2026-10-28 07:38:07,694.694 INFO    ] ================================================
[2026-10-28 07:38:08,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:38:08
[2026-10-28 07:38:08,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:38:09,099.099 INFO    ] Initializing speech engine...
[2026-10-28 07:38:09,112.112 INFO    ] 2026-10-28 07:38:09
[2026-10-28 07:38:09,392.392 INFO    ] 2026-10-28 07:38:09
[2026-10-28 07:38:09,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:38:09,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:38:09,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:38:09,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:38:09,878.878 INFO    ] time= 28/10/2026 07:38:09
[2026-10-28 07:38:09,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:38:10,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:38:10,161.161 INFO    ] No existing commands found in stream
[2026-10-28 07:38:15,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:38:15,194.194 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 07:38:17,833.833 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:38:17,836.836 INFO    ] Checking for system updates...
[2026-10-28 07:38:17,874.874 INFO    ] 200
[2026-10-28 07:38:17,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:38:17,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:38:17,931.931 INFO    ] No update needed
[2026-10-28 07:38:17,934.934 INFO    ] Checking for camera pi updates...
[2026-10-28 07:38:17,968.968 INFO    ] 200
[2026-10-28 07:38:17,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:38:18,010.010 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:38:18,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:38:18,092.092 INFO    ] No camera update needed
[2026-10-28 07:38:18,094.094 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:38:18,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:38:18,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:38:18,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:38:20,148.148 INFO    ] ================================================
[2026-10-28 07:38:20,163.163 INFO    ] Launching Daemon at Wed Oct 28 07:38:20 IST 2026
[2026-10-28 07:38:20,174.174 INFO    ] ================================================
[2026-10-28 07:38:20,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:38:20
[2026-10-28 07:38:21,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:38:21,572.572 INFO    ] Initializing speech engine...
[2026-10-28 07:38:21,581.581 INFO    ] 2026-10-28 07:38:21
[2026-10-28 07:38:21,869.869 INFO    ] 2026-10-28 07:38:21
[2026-10-28 07:38:21,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:38:22,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:38:22,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:38:22,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:38:22,487.487 INFO    ] time= 28/10/2026 07:38:22
[2026-10-28 07:38:22,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:38:22,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:38:22,660.660 INFO    ] No existing commands found in stream
[2026-10-28 07:38:27,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:38:27,683.683 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-28 07:38:29,165.165 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:38:29,168.168 INFO    ] Checking for system updates...
[2026-10-28 07:38:29,205.205 INFO    ] 200
[2026-10-28 07:38:29,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:38:29,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:38:29,266.266 INFO    ] No update needed
[2026-10-28 07:38:29,268.268 INFO    ] Checking for camera pi updates...
[2026-10-28 07:38:29,302.302 INFO    ] 200
[2026-10-28 07:38:29,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:38:29,345.345 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:38:29,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:38:29,417.417 INFO    ] No camera update needed
[2026-10-28 07:38:29,419.419 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:38:29,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:38:29,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:38:29,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:38:31,473.473 INFO    ] ================================================
[2026-10-28 07:38:31,489.489 INFO    ] Launching Daemon at Wed Oct 28 07:38:31 IST 2026
[2026-10-28 07:38:31,500.500 INFO    ] ================================================
[2026-10-28 07:38:32,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:38:32
[2026-10-28 07:38:32,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:38:33,151.151 INFO    ] Initializing speech engine...
[2026-10-28 07:38:33,161.161 INFO    ] 2026-10-28 07:38:33
[2026-10-28 07:38:33,427.427 INFO    ] 2026-10-28 07:38:33
[2026-10-28 07:38:33,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:38:33,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:38:33,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:38:33,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:38:33,996.996 INFO    ] time= 28/10/2026 07:38:33
[2026-10-28 07:38:34,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:38:34,046.046 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:38:34,155.155 INFO    ] No existing commands found in stream
[2026-10-28 07:38:39,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:38:39,180.180 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 07:38:43,764.764 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:38:43,767.767 INFO    ] Checking for system updates...
[2026-10-28 07:38:43,804.804 INFO    ] 200
[2026-10-28 07:38:43,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:38:43,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:38:43,864.864 INFO    ] No update needed
[2026-10-28 07:38:43,867.867 INFO    ] Checking for camera pi updates...
[2026-10-28 07:38:43,900.900 INFO    ] 200
[2026-10-28 07:38:43,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:38:43,944.944 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:38:44,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:38:44,124.124 INFO    ] No camera update needed
[2026-10-28 07:38:44,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:38:44,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:38:44,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:38:44,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:38:46,181.181 INFO    ] ================================================
[2026-10-28 07:38:46,196.196 INFO    ] Launching Daemon at Wed Oct 28 07:38:46 IST 2026
[2026-10-28 07:38:46,207.207 INFO    ] ================================================
[2026-10-28 07:38:46,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:38:46
[2026-10-28 07:38:47,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:38:47,686.686 INFO    ] Initializing speech engine...
[2026-10-28 07:38:47,698.698 INFO    ] 2026-10-28 07:38:47
[2026-10-28 07:38:47,948.948 INFO    ] 2026-10-28 07:38:47
[2026-10-28 07:38:47,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:38:48,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:38:48,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:38:48,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:38:48,517.517 INFO    ] time= 28/10/2026 07:38:48
[2026-10-28 07:38:48,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:38:48,541.541 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:38:48,672.672 INFO    ] No existing commands found in stream
[2026-10-28 07:38:53,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:38:53,689.689 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-28 07:38:56,299.299 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:38:56,302.302 INFO    ] Checking for system updates...
[2026-10-28 07:38:56,338.338 INFO    ] 200
[2026-10-28 07:38:56,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:38:56,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:38:56,394.394 INFO    ] No update needed
[2026-10-28 07:38:56,397.397 INFO    ] Checking for camera pi updates...
[2026-10-28 07:38:56,430.430 INFO    ] 200
[2026-10-28 07:38:56,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:38:56,473.473 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:38:56,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:38:56,561.561 INFO    ] No camera update needed
[2026-10-28 07:38:56,564.564 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:38:56,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:38:56,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:38:56,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:38:58,619.619 INFO    ] ================================================
[2026-10-28 07:38:58,634.634 INFO    ] Launching Daemon at Wed Oct 28 07:38:58 IST 2026
[2026-10-28 07:38:58,645.645 INFO    ] ================================================
[2026-10-28 07:38:59,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:38:59
[2026-10-28 07:38:59,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:39:00,077.077 INFO    ] Initializing speech engine...
[2026-10-28 07:39:00,086.086 INFO    ] 2026-10-28 07:39:00
[2026-10-28 07:39:00,349.349 INFO    ] 2026-10-28 07:39:00
[2026-10-28 07:39:00,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:39:00,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:39:00,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:39:00,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:39:00,832.832 INFO    ] time= 28/10/2026 07:39:00
[2026-10-28 07:39:00,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:39:00,930.930 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:39:01,032.032 INFO    ] No existing commands found in stream
[2026-10-28 07:39:06,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:39:06,048.048 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-28 07:39:09,393.393 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:39:09,395.395 INFO    ] Checking for system updates...
[2026-10-28 07:39:09,436.436 INFO    ] 200
[2026-10-28 07:39:09,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:39:09,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:39:09,501.501 INFO    ] No update needed
[2026-10-28 07:39:09,503.503 INFO    ] Checking for camera pi updates...
[2026-10-28 07:39:09,538.538 INFO    ] 200
[2026-10-28 07:39:09,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:39:09,581.581 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:39:09,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:39:09,679.679 INFO    ] No camera update needed
[2026-10-28 07:39:09,682.682 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:39:09,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:39:09,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:39:09,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:39:11,738.738 INFO    ] ================================================
[2026-10-28 07:39:11,754.754 INFO    ] Launching Daemon at Wed Oct 28 07:39:11 IST 2026
[2026-10-28 07:39:11,765.765 INFO    ] ================================================
[2026-10-28 07:39:12,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:39:12
[2026-10-28 07:39:12,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:39:13,165.165 INFO    ] Initializing speech engine...
[2026-10-28 07:39:13,172.172 INFO    ] 2026-10-28 07:39:13
[2026-10-28 07:39:13,447.447 INFO    ] 2026-10-28 07:39:13
[2026-10-28 07:39:13,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:39:13,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:39:13,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:39:13,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:39:14,002.002 INFO    ] time= 28/10/2026 07:39:13
[2026-10-28 07:39:14,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:39:14,039.039 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:39:14,184.184 INFO    ] No existing commands found in stream
[2026-10-28 07:39:19,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:39:19,217.217 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-28 07:39:21,525.525 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:39:21,528.528 INFO    ] Checking for system updates...
[2026-10-28 07:39:21,564.564 INFO    ] 200
[2026-10-28 07:39:21,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:39:21,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:39:21,628.628 INFO    ] No update needed
[2026-10-28 07:39:21,630.630 INFO    ] Checking for camera pi updates...
[2026-10-28 07:39:21,664.664 INFO    ] 200
[2026-10-28 07:39:21,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:39:21,707.707 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:39:21,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:39:21,845.845 INFO    ] No camera update needed
[2026-10-28 07:39:21,848.848 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:39:21,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:39:21,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:39:21,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:39:23,902.902 INFO    ] ================================================
[2026-10-28 07:39:23,918.918 INFO    ] Launching Daemon at Wed Oct 28 07:39:23 IST 2026
[2026-10-28 07:39:23,929.929 INFO    ] ================================================
[2026-10-28 07:39:24,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:39:24
[2026-10-28 07:39:25,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:39:25,383.383 INFO    ] Initializing speech engine...
[2026-10-28 07:39:25,392.392 INFO    ] 2026-10-28 07:39:25
[2026-10-28 07:39:25,649.649 INFO    ] 2026-10-28 07:39:25
[2026-10-28 07:39:25,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:39:25,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:39:25,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:39:26,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:39:26,196.196 INFO    ] time= 28/10/2026 07:39:26
[2026-10-28 07:39:26,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:39:26,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:39:26,380.380 INFO    ] No existing commands found in stream
[2026-10-28 07:39:31,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:39:31,419.419 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-28 07:39:32,275.275 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:39:32,278.278 INFO    ] Checking for system updates...
[2026-10-28 07:39:32,323.323 INFO    ] 200
[2026-10-28 07:39:32,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:39:32,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:39:32,390.390 INFO    ] No update needed
[2026-10-28 07:39:32,393.393 INFO    ] Checking for camera pi updates...
[2026-10-28 07:39:32,431.431 INFO    ] 200
[2026-10-28 07:39:32,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:39:32,480.480 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:39:32,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:39:32,581.581 INFO    ] No camera update needed
[2026-10-28 07:39:32,594.594 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:39:32,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:39:32,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:39:32,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:39:34,653.653 INFO    ] ================================================
[2026-10-28 07:39:34,669.669 INFO    ] Launching Daemon at Wed Oct 28 07:39:34 IST 2026
[2026-10-28 07:39:34,680.680 INFO    ] ================================================
[2026-10-28 07:39:35,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:39:35
[2026-10-28 07:39:35,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:39:36,210.210 INFO    ] Initializing speech engine...
[2026-10-28 07:39:36,221.221 INFO    ] 2026-10-28 07:39:36
[2026-10-28 07:39:36,483.483 INFO    ] 2026-10-28 07:39:36
[2026-10-28 07:39:36,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:39:36,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:39:36,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:39:36,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:39:37,029.029 INFO    ] time= 28/10/2026 07:39:36
[2026-10-28 07:39:37,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:39:37,053.053 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:39:37,186.186 INFO    ] No existing commands found in stream
[2026-10-28 07:39:42,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:39:42,217.217 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-28 07:39:43,361.361 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:39:43,364.364 INFO    ] Checking for system updates...
[2026-10-28 07:39:43,400.400 INFO    ] 200
[2026-10-28 07:39:43,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:39:43,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:39:43,457.457 INFO    ] No update needed
[2026-10-28 07:39:43,459.459 INFO    ] Checking for camera pi updates...
[2026-10-28 07:39:43,492.492 INFO    ] 200
[2026-10-28 07:39:43,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:39:43,537.537 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:39:43,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:39:43,635.635 INFO    ] No camera update needed
[2026-10-28 07:39:43,637.637 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:39:43,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:39:43,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:39:43,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:39:45,691.691 INFO    ] ================================================
[2026-10-28 07:39:45,706.706 INFO    ] Launching Daemon at Wed Oct 28 07:39:45 IST 2026
[2026-10-28 07:39:45,717.717 INFO    ] ================================================
[2026-10-28 07:39:46,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:39:46
[2026-10-28 07:39:46,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:39:47,171.171 INFO    ] Initializing speech engine...
[2026-10-28 07:39:47,180.180 INFO    ] 2026-10-28 07:39:47
[2026-10-28 07:39:47,441.441 INFO    ] 2026-10-28 07:39:47
[2026-10-28 07:39:47,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:39:47,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:39:47,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:39:47,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:39:47,987.987 INFO    ] time= 28/10/2026 07:39:47
[2026-10-28 07:39:48,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:39:48,033.033 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:39:48,149.149 INFO    ] No existing commands found in stream
[2026-10-28 07:39:53,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:39:53,181.181 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-28 07:39:54,584.584 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:39:54,587.587 INFO    ] Checking for system updates...
[2026-10-28 07:39:54,629.629 INFO    ] 200
[2026-10-28 07:39:54,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:39:54,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:39:54,689.689 INFO    ] No update needed
[2026-10-28 07:39:54,692.692 INFO    ] Checking for camera pi updates...
[2026-10-28 07:39:54,727.727 INFO    ] 200
[2026-10-28 07:39:54,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:39:54,772.772 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:39:54,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:39:54,869.869 INFO    ] No camera update needed
[2026-10-28 07:39:54,872.872 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:39:54,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:39:54,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:39:54,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:39:56,928.928 INFO    ] ================================================
[2026-10-28 07:39:56,944.944 INFO    ] Launching Daemon at Wed Oct 28 07:39:56 IST 2026
[2026-10-28 07:39:56,955.955 INFO    ] ================================================
[2026-10-28 07:39:57,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:39:57
[2026-10-28 07:39:58,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:39:58,578.578 INFO    ] Initializing speech engine...
[2026-10-28 07:39:58,589.589 INFO    ] 2026-10-28 07:39:58
[2026-10-28 07:39:58,869.869 INFO    ] 2026-10-28 07:39:58
[2026-10-28 07:39:58,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:39:59,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:39:59,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:39:59,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:39:59,423.423 INFO    ] time= 28/10/2026 07:39:59
[2026-10-28 07:39:59,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:39:59,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:39:59,581.581 INFO    ] No existing commands found in stream
[2026-10-28 07:40:04,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:40:04,610.610 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-28 07:40:08,981.981 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:40:08,985.985 INFO    ] Checking for system updates...
[2026-10-28 07:40:09,021.021 INFO    ] 200
[2026-10-28 07:40:09,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:40:09,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:40:09,078.078 INFO    ] No update needed
[2026-10-28 07:40:09,080.080 INFO    ] Checking for camera pi updates...
[2026-10-28 07:40:09,114.114 INFO    ] 200
[2026-10-28 07:40:09,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:40:09,157.157 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:40:09,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:40:09,209.209 INFO    ] No camera update needed
[2026-10-28 07:40:09,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:40:09,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:40:09,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:40:09,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:40:11,266.266 INFO    ] ================================================
[2026-10-28 07:40:11,282.282 INFO    ] Launching Daemon at Wed Oct 28 07:40:11 IST 2026
[2026-10-28 07:40:11,292.292 INFO    ] ================================================
[2026-10-28 07:40:11,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:40:11
[2026-10-28 07:40:12,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:40:12,916.916 INFO    ] Initializing speech engine...
[2026-10-28 07:40:12,925.925 INFO    ] 2026-10-28 07:40:12
[2026-10-28 07:40:13,212.212 INFO    ] 2026-10-28 07:40:13
[2026-10-28 07:40:13,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:40:13,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:40:13,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:40:13,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:40:13,924.924 INFO    ] time= 28/10/2026 07:40:13
[2026-10-28 07:40:13,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:40:14,025.025 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:40:14,194.194 INFO    ] No existing commands found in stream
[2026-10-28 07:40:19,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:40:19,211.211 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-28 07:40:21,142.142 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:40:21,145.145 INFO    ] Checking for system updates...
[2026-10-28 07:40:21,186.186 INFO    ] 200
[2026-10-28 07:40:21,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:40:21,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:40:21,247.247 INFO    ] No update needed
[2026-10-28 07:40:21,249.249 INFO    ] Checking for camera pi updates...
[2026-10-28 07:40:21,284.284 INFO    ] 200
[2026-10-28 07:40:21,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:40:21,329.329 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:40:21,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:40:21,395.395 INFO    ] No camera update needed
[2026-10-28 07:40:21,398.398 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:40:21,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:40:21,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:40:21,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:40:23,454.454 INFO    ] ================================================
[2026-10-28 07:40:23,468.468 INFO    ] Launching Daemon at Wed Oct 28 07:40:23 IST 2026
[2026-10-28 07:40:23,479.479 INFO    ] ================================================
[2026-10-28 07:40:24,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:40:24
[2026-10-28 07:40:24,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:40:24,904.904 INFO    ] Initializing speech engine...
[2026-10-28 07:40:24,913.913 INFO    ] 2026-10-28 07:40:24
[2026-10-28 07:40:25,173.173 INFO    ] 2026-10-28 07:40:25
[2026-10-28 07:40:25,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:40:25,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:40:25,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:40:25,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:40:25,738.738 INFO    ] time= 28/10/2026 07:40:25
[2026-10-28 07:40:25,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:40:25,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:40:25,896.896 INFO    ] No existing commands found in stream
[2026-10-28 07:40:30,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:40:30,919.919 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-28 07:40:33,561.561 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:40:33,564.564 INFO    ] Checking for system updates...
[2026-10-28 07:40:33,601.601 INFO    ] 200
[2026-10-28 07:40:33,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:40:33,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:40:33,662.662 INFO    ] No update needed
[2026-10-28 07:40:33,664.664 INFO    ] Checking for camera pi updates...
[2026-10-28 07:40:33,700.700 INFO    ] 200
[2026-10-28 07:40:33,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:40:33,744.744 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:40:33,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:40:33,835.835 INFO    ] No camera update needed
[2026-10-28 07:40:33,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:40:33,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:40:33,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:40:33,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:40:35,894.894 INFO    ] ================================================
[2026-10-28 07:40:35,910.910 INFO    ] Launching Daemon at Wed Oct 28 07:40:35 IST 2026
[2026-10-28 07:40:35,921.921 INFO    ] ================================================
[2026-10-28 07:40:36,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:40:36
[2026-10-28 07:40:37,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:40:37,539.539 INFO    ] Initializing speech engine...
[2026-10-28 07:40:37,551.551 INFO    ] 2026-10-28 07:40:37
[2026-10-28 07:40:37,819.819 INFO    ] 2026-10-28 07:40:37
[2026-10-28 07:40:37,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:40:38,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:40:38,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:40:38,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:40:38,565.565 INFO    ] time= 28/10/2026 07:40:38
[2026-10-28 07:40:38,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:40:38,667.667 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:40:38,806.806 INFO    ] No existing commands found in stream
[2026-10-28 07:40:43,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:40:43,828.828 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 07:40:48,382.382 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:40:48,386.386 INFO    ] Checking for system updates...
[2026-10-28 07:40:48,422.422 INFO    ] 200
[2026-10-28 07:40:48,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:40:48,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:40:48,488.488 INFO    ] No update needed
[2026-10-28 07:40:48,490.490 INFO    ] Checking for camera pi updates...
[2026-10-28 07:40:48,524.524 INFO    ] 200
[2026-10-28 07:40:48,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:40:48,566.566 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:40:48,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:40:48,746.746 INFO    ] No camera update needed
[2026-10-28 07:40:48,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:40:48,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:40:48,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:40:48,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:40:50,803.803 INFO    ] ================================================
[2026-10-28 07:40:50,819.819 INFO    ] Launching Daemon at Wed Oct 28 07:40:50 IST 2026
[2026-10-28 07:40:50,830.830 INFO    ] ================================================
[2026-10-28 07:40:51,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:40:51
[2026-10-28 07:40:51,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:40:52,258.258 INFO    ] Initializing speech engine...
[2026-10-28 07:40:52,271.271 INFO    ] 2026-10-28 07:40:52
[2026-10-28 07:40:52,536.536 INFO    ] 2026-10-28 07:40:52
[2026-10-28 07:40:52,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:40:52,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:40:52,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:40:53,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:40:53,122.122 INFO    ] time= 28/10/2026 07:40:53
[2026-10-28 07:40:53,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:40:53,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:40:53,328.328 INFO    ] No existing commands found in stream
[2026-10-28 07:40:58,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:40:58,357.357 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-28 07:41:00,435.435 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:41:00,438.438 INFO    ] Checking for system updates...
[2026-10-28 07:41:00,475.475 INFO    ] 200
[2026-10-28 07:41:00,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:41:00,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:41:00,533.533 INFO    ] No update needed
[2026-10-28 07:41:00,536.536 INFO    ] Checking for camera pi updates...
[2026-10-28 07:41:00,570.570 INFO    ] 200
[2026-10-28 07:41:00,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:41:00,612.612 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:41:00,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:41:00,699.699 INFO    ] No camera update needed
[2026-10-28 07:41:00,701.701 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:41:00,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:41:00,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:41:00,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:41:02,759.759 INFO    ] ================================================
[2026-10-28 07:41:02,779.779 INFO    ] Launching Daemon at Wed Oct 28 07:41:02 IST 2026
[2026-10-28 07:41:02,791.791 INFO    ] ================================================
[2026-10-28 07:41:03,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:41:03
[2026-10-28 07:41:04,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:41:04,332.332 INFO    ] Initializing speech engine...
[2026-10-28 07:41:04,343.343 INFO    ] 2026-10-28 07:41:04
[2026-10-28 07:41:04,631.631 INFO    ] 2026-10-28 07:41:04
[2026-10-28 07:41:04,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:41:04,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:41:04,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:41:05,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:41:05,131.131 INFO    ] time= 28/10/2026 07:41:05
[2026-10-28 07:41:05,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:41:05,218.218 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:41:05,341.341 INFO    ] No existing commands found in stream
[2026-10-28 07:41:10,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:41:10,355.355 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 07:41:14,074.074 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:41:14,077.077 INFO    ] Checking for system updates...
[2026-10-28 07:41:14,113.113 INFO    ] 200
[2026-10-28 07:41:14,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:41:14,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:41:14,171.171 INFO    ] No update needed
[2026-10-28 07:41:14,173.173 INFO    ] Checking for camera pi updates...
[2026-10-28 07:41:14,206.206 INFO    ] 200
[2026-10-28 07:41:14,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:41:14,249.249 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:41:14,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:41:14,342.342 INFO    ] No camera update needed
[2026-10-28 07:41:14,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:41:14,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:41:14,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:41:14,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:41:16,396.396 INFO    ] ================================================
[2026-10-28 07:41:16,411.411 INFO    ] Launching Daemon at Wed Oct 28 07:41:16 IST 2026
[2026-10-28 07:41:16,422.422 INFO    ] ================================================
[2026-10-28 07:41:17,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:41:17
[2026-10-28 07:41:17,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:41:17,878.878 INFO    ] Initializing speech engine...
[2026-10-28 07:41:17,888.888 INFO    ] 2026-10-28 07:41:17
[2026-10-28 07:41:18,140.140 INFO    ] 2026-10-28 07:41:18
[2026-10-28 07:41:18,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:41:18,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:41:18,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:41:18,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:41:18,727.727 INFO    ] time= 28/10/2026 07:41:18
[2026-10-28 07:41:18,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:41:18,751.751 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:41:18,874.874 INFO    ] No existing commands found in stream
[2026-10-28 07:41:23,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:41:23,895.895 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-28 07:41:26,700.700 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:41:26,703.703 INFO    ] Checking for system updates...
[2026-10-28 07:41:26,743.743 INFO    ] 200
[2026-10-28 07:41:26,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:41:26,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:41:26,800.800 INFO    ] No update needed
[2026-10-28 07:41:26,803.803 INFO    ] Checking for camera pi updates...
[2026-10-28 07:41:26,836.836 INFO    ] 200
[2026-10-28 07:41:26,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:41:26,879.879 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:41:26,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:41:26,962.962 INFO    ] No camera update needed
[2026-10-28 07:41:26,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:41:26,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:41:26,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:41:26,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:41:29,017.017 INFO    ] ================================================
[2026-10-28 07:41:29,032.032 INFO    ] Launching Daemon at Wed Oct 28 07:41:29 IST 2026
[2026-10-28 07:41:29,043.043 INFO    ] ================================================
[2026-10-28 07:41:29,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:41:29
[2026-10-28 07:41:30,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:41:30,679.679 INFO    ] Initializing speech engine...
[2026-10-28 07:41:30,693.693 INFO    ] 2026-10-28 07:41:30
[2026-10-28 07:41:30,976.976 INFO    ] 2026-10-28 07:41:30
[2026-10-28 07:41:31,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:41:31,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:41:31,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:41:31,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:41:31,517.517 INFO    ] time= 28/10/2026 07:41:31
[2026-10-28 07:41:31,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:41:31,558.558 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:41:31,675.675 INFO    ] No existing commands found in stream
[2026-10-28 07:41:36,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:41:36,714.714 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 07:41:38,499.499 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:41:38,502.502 INFO    ] Checking for system updates...
[2026-10-28 07:41:38,539.539 INFO    ] 200
[2026-10-28 07:41:38,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:41:38,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:41:38,599.599 INFO    ] No update needed
[2026-10-28 07:41:38,602.602 INFO    ] Checking for camera pi updates...
[2026-10-28 07:41:38,639.639 INFO    ] 200
[2026-10-28 07:41:38,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:41:38,682.682 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:41:38,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:41:38,770.770 INFO    ] No camera update needed
[2026-10-28 07:41:38,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:41:38,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:41:38,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:41:38,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:41:40,824.824 INFO    ] ================================================
[2026-10-28 07:41:40,839.839 INFO    ] Launching Daemon at Wed Oct 28 07:41:40 IST 2026
[2026-10-28 07:41:40,850.850 INFO    ] ================================================
[2026-10-28 07:41:41,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:41:41
[2026-10-28 07:41:42,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:41:42,282.282 INFO    ] Initializing speech engine...
[2026-10-28 07:41:42,291.291 INFO    ] 2026-10-28 07:41:42
[2026-10-28 07:41:42,542.542 INFO    ] 2026-10-28 07:41:42
[2026-10-28 07:41:42,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:41:42,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:41:42,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:41:43,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:41:43,115.115 INFO    ] time= 28/10/2026 07:41:43
[2026-10-28 07:41:43,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:41:43,138.138 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:41:43,265.265 INFO    ] No existing commands found in stream
[2026-10-28 07:41:48,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:41:48,282.282 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 07:41:52,542.542 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:41:52,545.545 INFO    ] Checking for system updates...
[2026-10-28 07:41:52,587.587 INFO    ] 200
[2026-10-28 07:41:52,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:41:52,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:41:52,650.650 INFO    ] No update needed
[2026-10-28 07:41:52,653.653 INFO    ] Checking for camera pi updates...
[2026-10-28 07:41:52,687.687 INFO    ] 200
[2026-10-28 07:41:52,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:41:52,734.734 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:41:52,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:41:52,820.820 INFO    ] No camera update needed
[2026-10-28 07:41:52,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:41:52,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:41:52,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:41:52,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:41:54,877.877 INFO    ] ================================================
[2026-10-28 07:41:54,891.891 INFO    ] Launching Daemon at Wed Oct 28 07:41:54 IST 2026
[2026-10-28 07:41:54,902.902 INFO    ] ================================================
[2026-10-28 07:41:55,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:41:55
[2026-10-28 07:41:56,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:41:56,434.434 INFO    ] Initializing speech engine...
[2026-10-28 07:41:56,445.445 INFO    ] 2026-10-28 07:41:56
[2026-10-28 07:41:56,692.692 INFO    ] 2026-10-28 07:41:56
[2026-10-28 07:41:56,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:41:56,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:41:56,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:41:57,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:41:57,251.251 INFO    ] time= 28/10/2026 07:41:57
[2026-10-28 07:41:57,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:41:57,297.297 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:41:57,405.405 INFO    ] No existing commands found in stream
[2026-10-28 07:42:02,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:42:02,429.429 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-28 07:42:03,740.740 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:42:03,743.743 INFO    ] Checking for system updates...
[2026-10-28 07:42:03,779.779 INFO    ] 200
[2026-10-28 07:42:03,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:42:03,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:42:03,839.839 INFO    ] No update needed
[2026-10-28 07:42:03,843.843 INFO    ] Checking for camera pi updates...
[2026-10-28 07:42:03,877.877 INFO    ] 200
[2026-10-28 07:42:03,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:42:03,926.926 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:42:04,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:42:04,027.027 INFO    ] No camera update needed
[2026-10-28 07:42:04,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:42:04,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:42:04,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:42:04,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:42:06,085.085 INFO    ] ================================================
[2026-10-28 07:42:06,100.100 INFO    ] Launching Daemon at Wed Oct 28 07:42:06 IST 2026
[2026-10-28 07:42:06,111.111 INFO    ] ================================================
[2026-10-28 07:42:06,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:42:06
[2026-10-28 07:42:07,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:42:07,747.747 INFO    ] Initializing speech engine...
[2026-10-28 07:42:07,761.761 INFO    ] 2026-10-28 07:42:07
[2026-10-28 07:42:08,036.036 INFO    ] 2026-10-28 07:42:08
[2026-10-28 07:42:08,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:42:08,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:42:08,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:42:08,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:42:08,607.607 INFO    ] time= 28/10/2026 07:42:08
[2026-10-28 07:42:08,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:42:08,648.648 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:42:08,794.794 INFO    ] No existing commands found in stream
[2026-10-28 07:42:13,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:42:13,828.828 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-28 07:42:15,807.807 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:42:15,810.810 INFO    ] Checking for system updates...
[2026-10-28 07:42:15,846.846 INFO    ] 200
[2026-10-28 07:42:15,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:42:15,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:42:15,911.911 INFO    ] No update needed
[2026-10-28 07:42:15,913.913 INFO    ] Checking for camera pi updates...
[2026-10-28 07:42:15,950.950 INFO    ] 200
[2026-10-28 07:42:15,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:42:15,994.994 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:42:16,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:42:16,080.080 INFO    ] No camera update needed
[2026-10-28 07:42:16,082.082 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:42:16,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:42:16,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:42:16,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:42:18,134.134 INFO    ] ================================================
[2026-10-28 07:42:18,148.148 INFO    ] Launching Daemon at Wed Oct 28 07:42:18 IST 2026
[2026-10-28 07:42:18,159.159 INFO    ] ================================================
[2026-10-28 07:42:18,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:42:18
[2026-10-28 07:42:19,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:42:19,555.555 INFO    ] Initializing speech engine...
[2026-10-28 07:42:19,568.568 INFO    ] 2026-10-28 07:42:19
[2026-10-28 07:42:19,829.829 INFO    ] 2026-10-28 07:42:19
[2026-10-28 07:42:19,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:42:20,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:42:20,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:42:20,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:42:20,397.397 INFO    ] time= 28/10/2026 07:42:20
[2026-10-28 07:42:20,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:42:20,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:42:20,533.533 INFO    ] No existing commands found in stream
[2026-10-28 07:42:25,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:42:25,567.567 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-28 07:42:26,420.420 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:42:26,422.422 INFO    ] Checking for system updates...
[2026-10-28 07:42:26,462.462 INFO    ] 200
[2026-10-28 07:42:26,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:42:26,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:42:26,520.520 INFO    ] No update needed
[2026-10-28 07:42:26,522.522 INFO    ] Checking for camera pi updates...
[2026-10-28 07:42:26,556.556 INFO    ] 200
[2026-10-28 07:42:26,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:42:26,598.598 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:42:26,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:42:26,680.680 INFO    ] No camera update needed
[2026-10-28 07:42:26,682.682 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:42:26,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:42:26,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:42:26,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:42:28,743.743 INFO    ] ================================================
[2026-10-28 07:42:28,758.758 INFO    ] Launching Daemon at Wed Oct 28 07:42:28 IST 2026
[2026-10-28 07:42:28,768.768 INFO    ] ================================================
[2026-10-28 07:42:29,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:42:29
[2026-10-28 07:42:29,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:42:30,166.166 INFO    ] Initializing speech engine...
[2026-10-28 07:42:30,188.188 INFO    ] 2026-10-28 07:42:30
[2026-10-28 07:42:30,443.443 INFO    ] 2026-10-28 07:42:30
[2026-10-28 07:42:30,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:42:30,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:42:30,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:42:30,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:42:31,011.011 INFO    ] time= 28/10/2026 07:42:30
[2026-10-28 07:42:31,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:42:31,038.038 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:42:31,163.163 INFO    ] No existing commands found in stream
[2026-10-28 07:42:36,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:42:36,182.182 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 07:42:37,760.760 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:42:37,762.762 INFO    ] Checking for system updates...
[2026-10-28 07:42:37,802.802 INFO    ] 200
[2026-10-28 07:42:37,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:42:37,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:42:37,859.859 INFO    ] No update needed
[2026-10-28 07:42:37,862.862 INFO    ] Checking for camera pi updates...
[2026-10-28 07:42:37,895.895 INFO    ] 200
[2026-10-28 07:42:37,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:42:37,938.938 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:42:38,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:42:38,024.024 INFO    ] No camera update needed
[2026-10-28 07:42:38,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:42:38,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:42:38,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:42:38,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:42:40,082.082 INFO    ] ================================================
[2026-10-28 07:42:40,097.097 INFO    ] Launching Daemon at Wed Oct 28 07:42:40 IST 2026
[2026-10-28 07:42:40,108.108 INFO    ] ================================================
[2026-10-28 07:42:40,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:42:40
[2026-10-28 07:42:41,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:42:41,584.584 INFO    ] Initializing speech engine...
[2026-10-28 07:42:41,593.593 INFO    ] 2026-10-28 07:42:41
[2026-10-28 07:42:41,880.880 INFO    ] 2026-10-28 07:42:41
[2026-10-28 07:42:41,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:42:42,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:42:42,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:42:42,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:42:42,460.460 INFO    ] time= 28/10/2026 07:42:42
[2026-10-28 07:42:42,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:42:42,475.475 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:42:42,646.646 INFO    ] No existing commands found in stream
[2026-10-28 07:42:47,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:42:47,680.680 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-28 07:42:49,981.981 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:42:49,984.984 INFO    ] Checking for system updates...
[2026-10-28 07:42:50,021.021 INFO    ] 200
[2026-10-28 07:42:50,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:42:50,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:42:50,078.078 INFO    ] No update needed
[2026-10-28 07:42:50,081.081 INFO    ] Checking for camera pi updates...
[2026-10-28 07:42:50,118.118 INFO    ] 200
[2026-10-28 07:42:50,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:42:50,161.161 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:42:50,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:42:50,345.345 INFO    ] No camera update needed
[2026-10-28 07:42:50,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:42:50,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:42:50,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:42:50,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:42:52,401.401 INFO    ] ================================================
[2026-10-28 07:42:52,416.416 INFO    ] Launching Daemon at Wed Oct 28 07:42:52 IST 2026
[2026-10-28 07:42:52,427.427 INFO    ] ================================================
[2026-10-28 07:42:52,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:42:52
[2026-10-28 07:42:53,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:42:53,828.828 INFO    ] Initializing speech engine...
[2026-10-28 07:42:53,849.849 INFO    ] 2026-10-28 07:42:53
[2026-10-28 07:42:54,107.107 INFO    ] 2026-10-28 07:42:54
[2026-10-28 07:42:54,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:42:54,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:42:54,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:42:54,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:42:54,677.677 INFO    ] time= 28/10/2026 07:42:54
[2026-10-28 07:42:54,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:42:54,724.724 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:42:54,849.849 INFO    ] No existing commands found in stream
[2026-10-28 07:42:59,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:42:59,877.877 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-28 07:43:03,607.607 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:43:03,610.610 INFO    ] Checking for system updates...
[2026-10-28 07:43:03,646.646 INFO    ] 200
[2026-10-28 07:43:03,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:43:03,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:43:03,705.705 INFO    ] No update needed
[2026-10-28 07:43:03,707.707 INFO    ] Checking for camera pi updates...
[2026-10-28 07:43:03,740.740 INFO    ] 200
[2026-10-28 07:43:03,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:43:03,787.787 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:43:03,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:43:03,867.867 INFO    ] No camera update needed
[2026-10-28 07:43:03,870.870 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:43:03,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:43:03,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:43:03,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:43:05,926.926 INFO    ] ================================================
[2026-10-28 07:43:05,941.941 INFO    ] Launching Daemon at Wed Oct 28 07:43:05 IST 2026
[2026-10-28 07:43:05,952.952 INFO    ] ================================================
[2026-10-28 07:43:06,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:43:06
[2026-10-28 07:43:07,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:43:07,551.551 INFO    ] Initializing speech engine...
[2026-10-28 07:43:07,560.560 INFO    ] 2026-10-28 07:43:07
[2026-10-28 07:43:07,875.875 INFO    ] 2026-10-28 07:43:07
[2026-10-28 07:43:07,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:43:08,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:43:08,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:43:08,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:43:08,557.557 INFO    ] time= 28/10/2026 07:43:08
[2026-10-28 07:43:08,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:43:08,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:43:08,790.790 INFO    ] No existing commands found in stream
[2026-10-28 07:43:13,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:43:13,850.850 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 07:43:17,803.803 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:43:17,806.806 INFO    ] Checking for system updates...
[2026-10-28 07:43:17,842.842 INFO    ] 200
[2026-10-28 07:43:17,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:43:17,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:43:17,899.899 INFO    ] No update needed
[2026-10-28 07:43:17,902.902 INFO    ] Checking for camera pi updates...
[2026-10-28 07:43:17,938.938 INFO    ] 200
[2026-10-28 07:43:17,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:43:17,985.985 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:43:18,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:43:18,065.065 INFO    ] No camera update needed
[2026-10-28 07:43:18,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:43:18,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:43:18,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:43:18,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:43:20,120.120 INFO    ] ================================================
[2026-10-28 07:43:20,135.135 INFO    ] Launching Daemon at Wed Oct 28 07:43:20 IST 2026
[2026-10-28 07:43:20,145.145 INFO    ] ================================================
[2026-10-28 07:43:20,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:43:20
[2026-10-28 07:43:21,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:43:21,599.599 INFO    ] Initializing speech engine...
[2026-10-28 07:43:21,605.605 INFO    ] 2026-10-28 07:43:21
[2026-10-28 07:43:21,866.866 INFO    ] 2026-10-28 07:43:21
[2026-10-28 07:43:21,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:43:22,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:43:22,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:43:22,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:43:22,412.412 INFO    ] time= 28/10/2026 07:43:22
[2026-10-28 07:43:22,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:43:22,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:43:22,603.603 INFO    ] No existing commands found in stream
[2026-10-28 07:43:27,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:43:27,631.631 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 07:43:31,029.029 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:43:31,032.032 INFO    ] Checking for system updates...
[2026-10-28 07:43:31,067.067 INFO    ] 200
[2026-10-28 07:43:31,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:43:31,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:43:31,146.146 INFO    ] No update needed
[2026-10-28 07:43:31,148.148 INFO    ] Checking for camera pi updates...
[2026-10-28 07:43:31,181.181 INFO    ] 200
[2026-10-28 07:43:31,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:43:31,224.224 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:43:31,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:43:31,329.329 INFO    ] No camera update needed
[2026-10-28 07:43:31,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:43:31,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:43:31,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:43:31,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:43:33,389.389 INFO    ] ================================================
[2026-10-28 07:43:33,404.404 INFO    ] Launching Daemon at Wed Oct 28 07:43:33 IST 2026
[2026-10-28 07:43:33,414.414 INFO    ] ================================================
[2026-10-28 07:43:34,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:43:34
[2026-10-28 07:43:34,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:43:35,049.049 INFO    ] Initializing speech engine...
[2026-10-28 07:43:35,056.056 INFO    ] 2026-10-28 07:43:35
[2026-10-28 07:43:35,331.331 INFO    ] 2026-10-28 07:43:35
[2026-10-28 07:43:35,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:43:35,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:43:35,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:43:35,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:43:35,901.901 INFO    ] time= 28/10/2026 07:43:35
[2026-10-28 07:43:35,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:43:35,953.953 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:43:36,109.109 INFO    ] No existing commands found in stream
[2026-10-28 07:43:41,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:43:41,146.146 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 07:43:43,476.476 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:43:43,479.479 INFO    ] Checking for system updates...
[2026-10-28 07:43:43,521.521 INFO    ] 200
[2026-10-28 07:43:43,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:43:43,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:43:43,592.592 INFO    ] No update needed
[2026-10-28 07:43:43,595.595 INFO    ] Checking for camera pi updates...
[2026-10-28 07:43:43,629.629 INFO    ] 200
[2026-10-28 07:43:43,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:43:43,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:43:43,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:43:43,769.769 INFO    ] No camera update needed
[2026-10-28 07:43:43,771.771 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:43:43,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:43:43,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:43:43,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:43:45,823.823 INFO    ] ================================================
[2026-10-28 07:43:45,838.838 INFO    ] Launching Daemon at Wed Oct 28 07:43:45 IST 2026
[2026-10-28 07:43:45,849.849 INFO    ] ================================================
[2026-10-28 07:43:46,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:43:46
[2026-10-28 07:43:47,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:43:47,301.301 INFO    ] Initializing speech engine...
[2026-10-28 07:43:47,307.307 INFO    ] 2026-10-28 07:43:47
[2026-10-28 07:43:47,559.559 INFO    ] 2026-10-28 07:43:47
[2026-10-28 07:43:47,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:43:47,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:43:47,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:43:48,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:43:48,110.110 INFO    ] time= 28/10/2026 07:43:48
[2026-10-28 07:43:48,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:43:48,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:43:48,282.282 INFO    ] No existing commands found in stream
[2026-10-28 07:43:53,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:43:53,310.310 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-28 07:43:55,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:43:55,516.516 INFO    ] Checking for system updates...
[2026-10-28 07:43:55,552.552 INFO    ] 200
[2026-10-28 07:43:55,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:43:55,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:43:55,618.618 INFO    ] No update needed
[2026-10-28 07:43:55,620.620 INFO    ] Checking for camera pi updates...
[2026-10-28 07:43:55,658.658 INFO    ] 200
[2026-10-28 07:43:55,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:43:55,707.707 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:43:55,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:43:55,793.793 INFO    ] No camera update needed
[2026-10-28 07:43:55,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:43:55,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:43:55,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:43:55,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:43:57,852.852 INFO    ] ================================================
[2026-10-28 07:43:57,867.867 INFO    ] Launching Daemon at Wed Oct 28 07:43:57 IST 2026
[2026-10-28 07:43:57,878.878 INFO    ] ================================================
[2026-10-28 07:43:58,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:43:58
[2026-10-28 07:43:59,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:43:59,282.282 INFO    ] Initializing speech engine...
[2026-10-28 07:43:59,290.290 INFO    ] 2026-10-28 07:43:59
[2026-10-28 07:43:59,588.588 INFO    ] 2026-10-28 07:43:59
[2026-10-28 07:43:59,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:43:59,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:43:59,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:44:00,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:44:00,170.170 INFO    ] time= 28/10/2026 07:44:00
[2026-10-28 07:44:00,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:44:00,242.242 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:44:00,365.365 INFO    ] No existing commands found in stream
[2026-10-28 07:44:05,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:44:05,391.391 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 07:44:07,940.940 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:44:07,942.942 INFO    ] Checking for system updates...
[2026-10-28 07:44:07,983.983 INFO    ] 200
[2026-10-28 07:44:07,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:44:08,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:44:08,040.040 INFO    ] No update needed
[2026-10-28 07:44:08,042.042 INFO    ] Checking for camera pi updates...
[2026-10-28 07:44:08,076.076 INFO    ] 200
[2026-10-28 07:44:08,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:44:08,125.125 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:44:08,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:44:08,209.209 INFO    ] No camera update needed
[2026-10-28 07:44:08,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:44:08,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:44:08,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:44:08,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:44:10,263.263 INFO    ] ================================================
[2026-10-28 07:44:10,278.278 INFO    ] Launching Daemon at Wed Oct 28 07:44:10 IST 2026
[2026-10-28 07:44:10,289.289 INFO    ] ================================================
[2026-10-28 07:44:10,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:44:10
[2026-10-28 07:44:11,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:44:11,702.702 INFO    ] Initializing speech engine...
[2026-10-28 07:44:11,708.708 INFO    ] 2026-10-28 07:44:11
[2026-10-28 07:44:12,006.006 INFO    ] 2026-10-28 07:44:11
[2026-10-28 07:44:12,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:44:12,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:44:12,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:44:12,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:44:12,432.432 INFO    ] time= 28/10/2026 07:44:12
[2026-10-28 07:44:12,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:44:12,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:44:12,640.640 INFO    ] No existing commands found in stream
[2026-10-28 07:44:17,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:44:17,668.668 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-28 07:44:21,994.994 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:44:21,996.996 INFO    ] Checking for system updates...
[2026-10-28 07:44:22,032.032 INFO    ] 200
[2026-10-28 07:44:22,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:44:22,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:44:22,097.097 INFO    ] No update needed
[2026-10-28 07:44:22,100.100 INFO    ] Checking for camera pi updates...
[2026-10-28 07:44:22,133.133 INFO    ] 200
[2026-10-28 07:44:22,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:44:22,182.182 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:44:22,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:44:22,234.234 INFO    ] No camera update needed
[2026-10-28 07:44:22,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:44:22,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:44:22,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:44:22,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:44:24,289.289 INFO    ] ================================================
[2026-10-28 07:44:24,304.304 INFO    ] Launching Daemon at Wed Oct 28 07:44:24 IST 2026
[2026-10-28 07:44:24,314.314 INFO    ] ================================================
[2026-10-28 07:44:24,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:44:24
[2026-10-28 07:44:25,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:44:25,773.773 INFO    ] Initializing speech engine...
[2026-10-28 07:44:25,783.783 INFO    ] 2026-10-28 07:44:25
[2026-10-28 07:44:26,055.055 INFO    ] 2026-10-28 07:44:26
[2026-10-28 07:44:26,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:44:26,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:44:26,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:44:26,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:44:26,616.616 INFO    ] time= 28/10/2026 07:44:26
[2026-10-28 07:44:26,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:44:26,701.701 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:44:26,870.870 INFO    ] No existing commands found in stream
[2026-10-28 07:44:31,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:44:31,888.888 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-28 07:44:36,005.005 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:44:36,008.008 INFO    ] Checking for system updates...
[2026-10-28 07:44:36,047.047 INFO    ] 200
[2026-10-28 07:44:36,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:44:36,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:44:36,112.112 INFO    ] No update needed
[2026-10-28 07:44:36,114.114 INFO    ] Checking for camera pi updates...
[2026-10-28 07:44:36,152.152 INFO    ] 200
[2026-10-28 07:44:36,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:44:36,199.199 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:44:36,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:44:36,285.285 INFO    ] No camera update needed
[2026-10-28 07:44:36,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:44:36,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:44:36,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:44:36,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:44:38,342.342 INFO    ] ================================================
[2026-10-28 07:44:38,358.358 INFO    ] Launching Daemon at Wed Oct 28 07:44:38 IST 2026
[2026-10-28 07:44:38,369.369 INFO    ] ================================================
[2026-10-28 07:44:38,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:44:38
[2026-10-28 07:44:39,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:44:39,770.770 INFO    ] Initializing speech engine...
[2026-10-28 07:44:39,790.790 INFO    ] 2026-10-28 07:44:39
[2026-10-28 07:44:40,050.050 INFO    ] 2026-10-28 07:44:40
[2026-10-28 07:44:40,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:44:40,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:44:40,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:44:40,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:44:40,624.624 INFO    ] time= 28/10/2026 07:44:40
[2026-10-28 07:44:40,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:44:40,647.647 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:44:40,773.773 INFO    ] No existing commands found in stream
[2026-10-28 07:44:45,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:44:45,792.792 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-28 07:44:47,579.579 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:44:47,582.582 INFO    ] Checking for system updates...
[2026-10-28 07:44:47,618.618 INFO    ] 200
[2026-10-28 07:44:47,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:44:47,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:44:47,683.683 INFO    ] No update needed
[2026-10-28 07:44:47,685.685 INFO    ] Checking for camera pi updates...
[2026-10-28 07:44:47,719.719 INFO    ] 200
[2026-10-28 07:44:47,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:44:47,762.762 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:44:47,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:44:47,846.846 INFO    ] No camera update needed
[2026-10-28 07:44:47,848.848 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:44:47,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:44:47,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:44:47,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:44:49,900.900 INFO    ] ================================================
[2026-10-28 07:44:49,916.916 INFO    ] Launching Daemon at Wed Oct 28 07:44:49 IST 2026
[2026-10-28 07:44:49,927.927 INFO    ] ================================================
[2026-10-28 07:44:50,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:44:50
[2026-10-28 07:44:51,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:44:51,347.347 INFO    ] Initializing speech engine...
[2026-10-28 07:44:51,358.358 INFO    ] 2026-10-28 07:44:51
[2026-10-28 07:44:51,607.607 INFO    ] 2026-10-28 07:44:51
[2026-10-28 07:44:51,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:44:51,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:44:51,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:44:52,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:44:52,164.164 INFO    ] time= 28/10/2026 07:44:52
[2026-10-28 07:44:52,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:44:52,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:44:52,326.326 INFO    ] No existing commands found in stream
[2026-10-28 07:44:57,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:44:57,347.347 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-28 07:45:01,379.379 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:45:01,381.381 INFO    ] Checking for system updates...
[2026-10-28 07:45:01,417.417 INFO    ] 200
[2026-10-28 07:45:01,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:45:01,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:45:01,476.476 INFO    ] No update needed
[2026-10-28 07:45:01,478.478 INFO    ] Checking for camera pi updates...
[2026-10-28 07:45:01,528.528 INFO    ] 200
[2026-10-28 07:45:01,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:45:01,907.907 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:45:02,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:45:02,185.185 INFO    ] No camera update needed
[2026-10-28 07:45:02,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:45:02,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:45:02,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:45:02,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:45:04,301.301 INFO    ] ================================================
[2026-10-28 07:45:04,317.317 INFO    ] Launching Daemon at Wed Oct 28 07:45:04 IST 2026
[2026-10-28 07:45:04,329.329 INFO    ] ================================================
[2026-10-28 07:45:04,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:45:04
[2026-10-28 07:45:05,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:45:05,769.769 INFO    ] Initializing speech engine...
[2026-10-28 07:45:05,778.778 INFO    ] 2026-10-28 07:45:05
[2026-10-28 07:45:06,084.084 INFO    ] 2026-10-28 07:45:06
[2026-10-28 07:45:06,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:45:06,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:45:06,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:45:06,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:45:06,727.727 INFO    ] time= 28/10/2026 07:45:06
[2026-10-28 07:45:06,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:45:06,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:45:06,865.865 INFO    ] No existing commands found in stream
[2026-10-28 07:45:11,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:45:11,886.886 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 07:45:15,633.633 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:45:15,636.636 INFO    ] Checking for system updates...
[2026-10-28 07:45:15,676.676 INFO    ] 200
[2026-10-28 07:45:15,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:45:15,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:45:15,740.740 INFO    ] No update needed
[2026-10-28 07:45:15,742.742 INFO    ] Checking for camera pi updates...
[2026-10-28 07:45:15,775.775 INFO    ] 200
[2026-10-28 07:45:15,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:45:15,824.824 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:45:15,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:45:15,908.908 INFO    ] No camera update needed
[2026-10-28 07:45:15,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:45:15,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:45:15,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:45:15,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:45:17,965.965 INFO    ] ================================================
[2026-10-28 07:45:17,980.980 INFO    ] Launching Daemon at Wed Oct 28 07:45:17 IST 2026
[2026-10-28 07:45:17,992.992 INFO    ] ================================================
[2026-10-28 07:45:18,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:45:18
[2026-10-28 07:45:19,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:45:19,427.427 INFO    ] Initializing speech engine...
[2026-10-28 07:45:19,448.448 INFO    ] 2026-10-28 07:45:19
[2026-10-28 07:45:19,728.728 INFO    ] 2026-10-28 07:45:19
[2026-10-28 07:45:19,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:45:19,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:45:20,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:45:20,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:45:20,227.227 INFO    ] time= 28/10/2026 07:45:20
[2026-10-28 07:45:20,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:45:20,308.308 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:45:20,433.433 INFO    ] No existing commands found in stream
[2026-10-28 07:45:25,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:45:25,447.447 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 07:45:27,939.939 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:45:27,942.942 INFO    ] Checking for system updates...
[2026-10-28 07:45:27,985.985 INFO    ] 200
[2026-10-28 07:45:27,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:45:28,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:45:28,056.056 INFO    ] No update needed
[2026-10-28 07:45:28,058.058 INFO    ] Checking for camera pi updates...
[2026-10-28 07:45:28,098.098 INFO    ] 200
[2026-10-28 07:45:28,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:45:28,144.144 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:45:28,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:45:28,203.203 INFO    ] No camera update needed
[2026-10-28 07:45:28,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:45:28,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:45:28,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:45:28,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:45:30,268.268 INFO    ] ================================================
[2026-10-28 07:45:30,284.284 INFO    ] Launching Daemon at Wed Oct 28 07:45:30 IST 2026
[2026-10-28 07:45:30,295.295 INFO    ] ================================================
[2026-10-28 07:45:30,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:45:30
[2026-10-28 07:45:31,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:45:32,024.024 INFO    ] Initializing speech engine...
[2026-10-28 07:45:32,037.037 INFO    ] 2026-10-28 07:45:32
[2026-10-28 07:45:32,370.370 INFO    ] 2026-10-28 07:45:32
[2026-10-28 07:45:32,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:45:32,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:45:32,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:45:32,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:45:32,975.975 INFO    ] time= 28/10/2026 07:45:32
[2026-10-28 07:45:32,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:45:33,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:45:33,189.189 INFO    ] No existing commands found in stream
[2026-10-28 07:45:38,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:45:38,218.218 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-28 07:45:40,638.638 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:45:40,641.641 INFO    ] Checking for system updates...
[2026-10-28 07:45:40,682.682 INFO    ] 200
[2026-10-28 07:45:40,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:45:40,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:45:40,750.750 INFO    ] No update needed
[2026-10-28 07:45:40,752.752 INFO    ] Checking for camera pi updates...
[2026-10-28 07:45:40,791.791 INFO    ] 200
[2026-10-28 07:45:40,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:45:40,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:45:40,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:45:40,921.921 INFO    ] No camera update needed
[2026-10-28 07:45:40,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:45:40,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:45:40,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:45:40,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:45:42,980.980 INFO    ] ================================================
[2026-10-28 07:45:43,996.996 INFO    ] Launching Daemon at Wed Oct 28 07:45:42 IST 2026
[2026-10-28 07:45:43,007.007 INFO    ] ================================================
[2026-10-28 07:45:43,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:45:43
[2026-10-28 07:45:44,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:45:44,656.656 INFO    ] Initializing speech engine...
[2026-10-28 07:45:44,665.665 INFO    ] 2026-10-28 07:45:44
[2026-10-28 07:45:44,936.936 INFO    ] 2026-10-28 07:45:44
[2026-10-28 07:45:44,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:45:45,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:45:45,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:45:45,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:45:45,674.674 INFO    ] time= 28/10/2026 07:45:45
[2026-10-28 07:45:45,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:45:45,764.764 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:45:45,915.915 INFO    ] No existing commands found in stream
[2026-10-28 07:45:50,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:45:50,940.940 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 07:45:54,481.481 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:45:54,484.484 INFO    ] Checking for system updates...
[2026-10-28 07:45:54,525.525 INFO    ] 200
[2026-10-28 07:45:54,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:45:54,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:45:54,591.591 INFO    ] No update needed
[2026-10-28 07:45:54,594.594 INFO    ] Checking for camera pi updates...
[2026-10-28 07:45:54,633.633 INFO    ] 200
[2026-10-28 07:45:54,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:45:54,678.678 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:45:54,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:45:54,768.768 INFO    ] No camera update needed
[2026-10-28 07:45:54,771.771 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:45:54,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:45:54,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:45:54,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:45:56,829.829 INFO    ] ================================================
[2026-10-28 07:45:56,845.845 INFO    ] Launching Daemon at Wed Oct 28 07:45:56 IST 2026
[2026-10-28 07:45:56,856.856 INFO    ] ================================================
[2026-10-28 07:45:57,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:45:57
[2026-10-28 07:45:58,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:45:58,505.505 INFO    ] Initializing speech engine...
[2026-10-28 07:45:58,519.519 INFO    ] 2026-10-28 07:45:58
[2026-10-28 07:45:58,791.791 INFO    ] 2026-10-28 07:45:58
[2026-10-28 07:45:58,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:45:59,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:45:59,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:45:59,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:45:59,560.560 INFO    ] time= 28/10/2026 07:45:59
[2026-10-28 07:45:59,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:45:59,666.666 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:45:59,804.804 INFO    ] No existing commands found in stream
[2026-10-28 07:46:04,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:46:04,827.827 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-28 07:46:05,526.526 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:46:05,529.529 INFO    ] Checking for system updates...
[2026-10-28 07:46:05,569.569 INFO    ] 200
[2026-10-28 07:46:05,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:46:05,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:46:05,635.635 INFO    ] No update needed
[2026-10-28 07:46:05,638.638 INFO    ] Checking for camera pi updates...
[2026-10-28 07:46:05,673.673 INFO    ] 200
[2026-10-28 07:46:05,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:46:05,722.722 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:46:05,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:46:05,811.811 INFO    ] No camera update needed
[2026-10-28 07:46:05,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:46:05,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:46:05,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:46:05,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:46:07,871.871 INFO    ] ================================================
[2026-10-28 07:46:07,886.886 INFO    ] Launching Daemon at Wed Oct 28 07:46:07 IST 2026
[2026-10-28 07:46:07,897.897 INFO    ] ================================================
[2026-10-28 07:46:08,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:46:08
[2026-10-28 07:46:09,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:46:09,308.308 INFO    ] Initializing speech engine...
[2026-10-28 07:46:09,331.331 INFO    ] 2026-10-28 07:46:09
[2026-10-28 07:46:09,589.589 INFO    ] 2026-10-28 07:46:09
[2026-10-28 07:46:09,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:46:09,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:46:09,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:46:10,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:46:10,159.159 INFO    ] time= 28/10/2026 07:46:10
[2026-10-28 07:46:10,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:46:10,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:46:10,327.327 INFO    ] No existing commands found in stream
[2026-10-28 07:46:15,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:46:15,350.350 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-28 07:46:18,503.503 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:46:18,506.506 INFO    ] Checking for system updates...
[2026-10-28 07:46:18,544.544 INFO    ] 200
[2026-10-28 07:46:18,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:46:18,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:46:18,603.603 INFO    ] No update needed
[2026-10-28 07:46:18,606.606 INFO    ] Checking for camera pi updates...
[2026-10-28 07:46:18,641.641 INFO    ] 200
[2026-10-28 07:46:18,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:46:18,685.685 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:46:18,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:46:18,749.749 INFO    ] No camera update needed
[2026-10-28 07:46:18,752.752 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:46:18,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:46:18,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:46:18,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:46:20,809.809 INFO    ] ================================================
[2026-10-28 07:46:20,824.824 INFO    ] Launching Daemon at Wed Oct 28 07:46:20 IST 2026
[2026-10-28 07:46:20,835.835 INFO    ] ================================================
[2026-10-28 07:46:21,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:46:21
[2026-10-28 07:46:22,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:46:22,279.279 INFO    ] Initializing speech engine...
[2026-10-28 07:46:22,285.285 INFO    ] 2026-10-28 07:46:22
[2026-10-28 07:46:22,578.578 INFO    ] 2026-10-28 07:46:22
[2026-10-28 07:46:22,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:46:22,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:46:22,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:46:23,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:46:23,088.088 INFO    ] time= 28/10/2026 07:46:23
[2026-10-28 07:46:23,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:46:23,187.187 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:46:23,269.269 INFO    ] No existing commands found in stream
[2026-10-28 07:46:28,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:46:28,284.284 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 07:46:29,785.785 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:46:29,788.788 INFO    ] Checking for system updates...
[2026-10-28 07:46:29,824.824 INFO    ] 200
[2026-10-28 07:46:29,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:46:29,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:46:29,882.882 INFO    ] No update needed
[2026-10-28 07:46:29,888.888 INFO    ] Checking for camera pi updates...
[2026-10-28 07:46:29,921.921 INFO    ] 200
[2026-10-28 07:46:29,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:46:29,969.969 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:46:30,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:46:30,072.072 INFO    ] No camera update needed
[2026-10-28 07:46:30,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:46:30,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:46:30,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:46:30,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:46:32,128.128 INFO    ] ================================================
[2026-10-28 07:46:32,145.145 INFO    ] Launching Daemon at Wed Oct 28 07:46:32 IST 2026
[2026-10-28 07:46:32,157.157 INFO    ] ================================================
[2026-10-28 07:46:32,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:46:32
[2026-10-28 07:46:33,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:46:33,621.621 INFO    ] Initializing speech engine...
[2026-10-28 07:46:33,628.628 INFO    ] 2026-10-28 07:46:33
[2026-10-28 07:46:33,918.918 INFO    ] 2026-10-28 07:46:33
[2026-10-28 07:46:33,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:46:34,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:46:34,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:46:34,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:46:34,521.521 INFO    ] time= 28/10/2026 07:46:34
[2026-10-28 07:46:34,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:46:34,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:46:34,714.714 INFO    ] No existing commands found in stream
[2026-10-28 07:46:39,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:46:39,730.730 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-28 07:46:40,778.778 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:46:40,781.781 INFO    ] Checking for system updates...
[2026-10-28 07:46:40,821.821 INFO    ] 200
[2026-10-28 07:46:40,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:46:40,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:46:40,885.885 INFO    ] No update needed
[2026-10-28 07:46:40,888.888 INFO    ] Checking for camera pi updates...
[2026-10-28 07:46:40,922.922 INFO    ] 200
[2026-10-28 07:46:40,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:46:40,967.967 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:46:41,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:46:41,051.051 INFO    ] No camera update needed
[2026-10-28 07:46:41,054.054 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:46:41,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:46:41,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:46:41,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:46:43,110.110 INFO    ] ================================================
[2026-10-28 07:46:43,125.125 INFO    ] Launching Daemon at Wed Oct 28 07:46:43 IST 2026
[2026-10-28 07:46:43,136.136 INFO    ] ================================================
[2026-10-28 07:46:43,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:46:43
[2026-10-28 07:46:44,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:46:44,586.586 INFO    ] Initializing speech engine...
[2026-10-28 07:46:44,595.595 INFO    ] 2026-10-28 07:46:44
[2026-10-28 07:46:44,849.849 INFO    ] 2026-10-28 07:46:44
[2026-10-28 07:46:44,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:46:45,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:46:45,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:46:45,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:46:45,398.398 INFO    ] time= 28/10/2026 07:46:45
[2026-10-28 07:46:45,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:46:45,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:46:45,575.575 INFO    ] No existing commands found in stream
[2026-10-28 07:46:50,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:46:50,603.603 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 07:46:54,657.657 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:46:54,659.659 INFO    ] Checking for system updates...
[2026-10-28 07:46:54,695.695 INFO    ] 200
[2026-10-28 07:46:54,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:46:54,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:46:54,757.757 INFO    ] No update needed
[2026-10-28 07:46:54,760.760 INFO    ] Checking for camera pi updates...
[2026-10-28 07:46:54,798.798 INFO    ] 200
[2026-10-28 07:46:54,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:46:54,840.840 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:46:54,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:46:54,914.914 INFO    ] No camera update needed
[2026-10-28 07:46:54,917.917 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:46:54,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:46:54,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:46:54,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:46:56,972.972 INFO    ] ================================================
[2026-10-28 07:46:56,988.988 INFO    ] Launching Daemon at Wed Oct 28 07:46:56 IST 2026
[2026-10-28 07:46:57,998.998 INFO    ] ================================================
[2026-10-28 07:46:57,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:46:57
[2026-10-28 07:46:58,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:46:58,415.415 INFO    ] Initializing speech engine...
[2026-10-28 07:46:58,429.429 INFO    ] 2026-10-28 07:46:58
[2026-10-28 07:46:58,685.685 INFO    ] 2026-10-28 07:46:58
[2026-10-28 07:46:58,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:46:59,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:46:59,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:46:59,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:46:59,254.254 INFO    ] time= 28/10/2026 07:46:59
[2026-10-28 07:46:59,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:46:59,284.284 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:46:59,436.436 INFO    ] No existing commands found in stream
[2026-10-28 07:47:04,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:47:04,464.464 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-28 07:47:07,215.215 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:47:07,218.218 INFO    ] Checking for system updates...
[2026-10-28 07:47:07,254.254 INFO    ] 200
[2026-10-28 07:47:07,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:47:07,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:47:07,311.311 INFO    ] No update needed
[2026-10-28 07:47:07,313.313 INFO    ] Checking for camera pi updates...
[2026-10-28 07:47:07,351.351 INFO    ] 200
[2026-10-28 07:47:07,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:47:07,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:47:07,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:47:07,587.587 INFO    ] No camera update needed
[2026-10-28 07:47:07,589.589 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:47:07,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:47:07,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:47:07,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:47:09,644.644 INFO    ] ================================================
[2026-10-28 07:47:09,659.659 INFO    ] Launching Daemon at Wed Oct 28 07:47:09 IST 2026
[2026-10-28 07:47:09,671.671 INFO    ] ================================================
[2026-10-28 07:47:10,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:47:10
[2026-10-28 07:47:10,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:47:11,119.119 INFO    ] Initializing speech engine...
[2026-10-28 07:47:11,131.131 INFO    ] 2026-10-28 07:47:11
[2026-10-28 07:47:11,419.419 INFO    ] 2026-10-28 07:47:11
[2026-10-28 07:47:11,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:47:11,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:47:11,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:47:11,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:47:11,965.965 INFO    ] time= 28/10/2026 07:47:11
[2026-10-28 07:47:12,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:47:12,060.060 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:47:12,197.197 INFO    ] No existing commands found in stream
[2026-10-28 07:47:17,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:47:17,231.231 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-28 07:47:21,077.077 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:47:21,079.079 INFO    ] Checking for system updates...
[2026-10-28 07:47:21,115.115 INFO    ] 200
[2026-10-28 07:47:21,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:47:21,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:47:21,171.171 INFO    ] No update needed
[2026-10-28 07:47:21,174.174 INFO    ] Checking for camera pi updates...
[2026-10-28 07:47:21,211.211 INFO    ] 200
[2026-10-28 07:47:21,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:47:21,254.254 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:47:21,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:47:21,347.347 INFO    ] No camera update needed
[2026-10-28 07:47:21,349.349 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:47:21,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:47:21,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:47:21,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:47:23,402.402 INFO    ] ================================================
[2026-10-28 07:47:23,418.418 INFO    ] Launching Daemon at Wed Oct 28 07:47:23 IST 2026
[2026-10-28 07:47:23,429.429 INFO    ] ================================================
[2026-10-28 07:47:24,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:47:24
[2026-10-28 07:47:24,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:47:24,869.869 INFO    ] Initializing speech engine...
[2026-10-28 07:47:24,878.878 INFO    ] 2026-10-28 07:47:24
[2026-10-28 07:47:25,136.136 INFO    ] 2026-10-28 07:47:25
[2026-10-28 07:47:25,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:47:25,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:47:25,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:47:25,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:47:25,694.694 INFO    ] time= 28/10/2026 07:47:25
[2026-10-28 07:47:25,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:47:25,741.741 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:47:25,865.865 INFO    ] No existing commands found in stream
[2026-10-28 07:47:30,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:47:30,898.898 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-28 07:47:34,944.944 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:47:34,947.947 INFO    ] Checking for system updates...
[2026-10-28 07:47:34,983.983 INFO    ] 200
[2026-10-28 07:47:34,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:47:35,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:47:35,047.047 INFO    ] No update needed
[2026-10-28 07:47:35,050.050 INFO    ] Checking for camera pi updates...
[2026-10-28 07:47:35,083.083 INFO    ] 200
[2026-10-28 07:47:35,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:47:35,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:47:35,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:47:35,208.208 INFO    ] No camera update needed
[2026-10-28 07:47:35,210.210 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:47:35,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:47:35,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:47:35,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:47:37,266.266 INFO    ] ================================================
[2026-10-28 07:47:37,281.281 INFO    ] Launching Daemon at Wed Oct 28 07:47:37 IST 2026
[2026-10-28 07:47:37,293.293 INFO    ] ================================================
[2026-10-28 07:47:37,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:47:37
[2026-10-28 07:47:38,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:47:38,731.731 INFO    ] Initializing speech engine...
[2026-10-28 07:47:38,737.737 INFO    ] 2026-10-28 07:47:38
[2026-10-28 07:47:38,985.985 INFO    ] 2026-10-28 07:47:38
[2026-10-28 07:47:39,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:47:39,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:47:39,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:47:39,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:47:39,546.546 INFO    ] time= 28/10/2026 07:47:39
[2026-10-28 07:47:39,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:47:39,577.577 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:47:39,735.735 INFO    ] No existing commands found in stream
[2026-10-28 07:47:44,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:47:44,768.768 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-28 07:47:48,560.560 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:47:48,563.563 INFO    ] Checking for system updates...
[2026-10-28 07:47:48,602.602 INFO    ] 200
[2026-10-28 07:47:48,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:47:48,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:47:48,660.660 INFO    ] No update needed
[2026-10-28 07:47:48,662.662 INFO    ] Checking for camera pi updates...
[2026-10-28 07:47:48,699.699 INFO    ] 200
[2026-10-28 07:47:48,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:47:48,750.750 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:47:48,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:47:48,836.836 INFO    ] No camera update needed
[2026-10-28 07:47:48,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:47:48,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:47:48,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:47:48,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:47:50,893.893 INFO    ] ================================================
[2026-10-28 07:47:50,908.908 INFO    ] Launching Daemon at Wed Oct 28 07:47:50 IST 2026
[2026-10-28 07:47:50,919.919 INFO    ] ================================================
[2026-10-28 07:47:51,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:47:51
[2026-10-28 07:47:52,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:47:52,381.381 INFO    ] Initializing speech engine...
[2026-10-28 07:47:52,387.387 INFO    ] 2026-10-28 07:47:52
[2026-10-28 07:47:52,648.648 INFO    ] 2026-10-28 07:47:52
[2026-10-28 07:47:52,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:47:52,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:47:52,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:47:53,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:47:53,265.265 INFO    ] time= 28/10/2026 07:47:53
[2026-10-28 07:47:53,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:47:53,292.292 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:47:53,430.430 INFO    ] No existing commands found in stream
[2026-10-28 07:47:58,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:47:58,459.459 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 07:48:01,308.308 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:48:01,311.311 INFO    ] Checking for system updates...
[2026-10-28 07:48:01,346.346 INFO    ] 200
[2026-10-28 07:48:01,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:48:01,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:48:01,411.411 INFO    ] No update needed
[2026-10-28 07:48:01,414.414 INFO    ] Checking for camera pi updates...
[2026-10-28 07:48:01,447.447 INFO    ] 200
[2026-10-28 07:48:01,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:48:01,500.500 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:48:01,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:48:01,658.658 INFO    ] No camera update needed
[2026-10-28 07:48:01,662.662 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:48:01,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:48:01,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:48:01,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:48:03,743.743 INFO    ] ================================================
[2026-10-28 07:48:03,758.758 INFO    ] Launching Daemon at Wed Oct 28 07:48:03 IST 2026
[2026-10-28 07:48:03,769.769 INFO    ] ================================================
[2026-10-28 07:48:04,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:48:04
[2026-10-28 07:48:04,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:48:05,190.190 INFO    ] Initializing speech engine...
[2026-10-28 07:48:05,200.200 INFO    ] 2026-10-28 07:48:05
[2026-10-28 07:48:05,450.450 INFO    ] 2026-10-28 07:48:05
[2026-10-28 07:48:05,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:48:05,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:48:05,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:48:06,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:48:06,080.080 INFO    ] time= 28/10/2026 07:48:06
[2026-10-28 07:48:06,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:48:06,129.129 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:48:06,257.257 INFO    ] No existing commands found in stream
[2026-10-28 07:48:11,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:48:11,277.277 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 07:48:12,058.058 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:48:12,061.061 INFO    ] Checking for system updates...
[2026-10-28 07:48:12,102.102 INFO    ] 200
[2026-10-28 07:48:12,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:48:12,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:48:12,160.160 INFO    ] No update needed
[2026-10-28 07:48:12,163.163 INFO    ] Checking for camera pi updates...
[2026-10-28 07:48:12,199.199 INFO    ] 200
[2026-10-28 07:48:12,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:48:12,249.249 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:48:12,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:48:12,339.339 INFO    ] No camera update needed
[2026-10-28 07:48:12,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:48:12,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:48:12,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:48:12,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:48:14,397.397 INFO    ] ================================================
[2026-10-28 07:48:14,413.413 INFO    ] Launching Daemon at Wed Oct 28 07:48:14 IST 2026
[2026-10-28 07:48:14,424.424 INFO    ] ================================================
[2026-10-28 07:48:15,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:48:15
[2026-10-28 07:48:15,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:48:16,073.073 INFO    ] Initializing speech engine...
[2026-10-28 07:48:16,079.079 INFO    ] 2026-10-28 07:48:16
[2026-10-28 07:48:16,404.404 INFO    ] 2026-10-28 07:48:16
[2026-10-28 07:48:16,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:48:16,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:48:16,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:48:16,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:48:16,942.942 INFO    ] time= 28/10/2026 07:48:16
[2026-10-28 07:48:16,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:48:16,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:48:17,115.115 INFO    ] No existing commands found in stream
[2026-10-28 07:48:22,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:48:22,133.133 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 07:48:23,313.313 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:48:23,317.317 INFO    ] Checking for system updates...
[2026-10-28 07:48:23,358.358 INFO    ] 200
[2026-10-28 07:48:23,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:48:23,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:48:23,417.417 INFO    ] No update needed
[2026-10-28 07:48:23,420.420 INFO    ] Checking for camera pi updates...
[2026-10-28 07:48:23,459.459 INFO    ] 200
[2026-10-28 07:48:23,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:48:23,513.513 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:48:23,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:48:23,618.618 INFO    ] No camera update needed
[2026-10-28 07:48:23,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:48:23,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:48:23,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:48:23,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:48:25,680.680 INFO    ] ================================================
[2026-10-28 07:48:25,697.697 INFO    ] Launching Daemon at Wed Oct 28 07:48:25 IST 2026
[2026-10-28 07:48:25,708.708 INFO    ] ================================================
[2026-10-28 07:48:26,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:48:26
[2026-10-28 07:48:26,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:48:27,261.261 INFO    ] Initializing speech engine...
[2026-10-28 07:48:27,274.274 INFO    ] 2026-10-28 07:48:27
[2026-10-28 07:48:27,586.586 INFO    ] 2026-10-28 07:48:27
[2026-10-28 07:48:27,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:48:27,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:48:27,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:48:28,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:48:28,159.159 INFO    ] time= 28/10/2026 07:48:28
[2026-10-28 07:48:28,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:48:28,215.215 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:48:28,368.368 INFO    ] No existing commands found in stream
[2026-10-28 07:48:33,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:48:33,387.387 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-28 07:48:35,280.280 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:48:35,283.283 INFO    ] Checking for system updates...
[2026-10-28 07:48:35,325.325 INFO    ] 200
[2026-10-28 07:48:35,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:48:35,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:48:35,388.388 INFO    ] No update needed
[2026-10-28 07:48:35,391.391 INFO    ] Checking for camera pi updates...
[2026-10-28 07:48:35,425.425 INFO    ] 200
[2026-10-28 07:48:35,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:48:35,469.469 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:48:35,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:48:35,556.556 INFO    ] No camera update needed
[2026-10-28 07:48:35,559.559 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:48:35,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:48:35,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:48:35,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:48:37,614.614 INFO    ] ================================================
[2026-10-28 07:48:37,630.630 INFO    ] Launching Daemon at Wed Oct 28 07:48:37 IST 2026
[2026-10-28 07:48:37,641.641 INFO    ] ================================================
[2026-10-28 07:48:38,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:48:38
[2026-10-28 07:48:38,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:48:39,096.096 INFO    ] Initializing speech engine...
[2026-10-28 07:48:39,121.121 INFO    ] 2026-10-28 07:48:39
[2026-10-28 07:48:39,394.394 INFO    ] 2026-10-28 07:48:39
[2026-10-28 07:48:39,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:48:39,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:48:39,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:48:39,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:48:39,973.973 INFO    ] time= 28/10/2026 07:48:39
[2026-10-28 07:48:39,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:48:40,010.010 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:48:40,132.132 INFO    ] No existing commands found in stream
[2026-10-28 07:48:45,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:48:45,156.156 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-28 07:48:46,379.379 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:48:46,382.382 INFO    ] Checking for system updates...
[2026-10-28 07:48:46,417.417 INFO    ] 200
[2026-10-28 07:48:46,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:48:46,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:48:46,479.479 INFO    ] No update needed
[2026-10-28 07:48:46,482.482 INFO    ] Checking for camera pi updates...
[2026-10-28 07:48:46,518.518 INFO    ] 200
[2026-10-28 07:48:46,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:48:46,560.560 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:48:46,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:48:46,626.626 INFO    ] No camera update needed
[2026-10-28 07:48:46,628.628 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:48:46,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:48:46,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:48:46,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:48:48,682.682 INFO    ] ================================================
[2026-10-28 07:48:48,698.698 INFO    ] Launching Daemon at Wed Oct 28 07:48:48 IST 2026
[2026-10-28 07:48:48,709.709 INFO    ] ================================================
[2026-10-28 07:48:49,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:48:49
[2026-10-28 07:48:49,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:48:50,120.120 INFO    ] Initializing speech engine...
[2026-10-28 07:48:50,140.140 INFO    ] 2026-10-28 07:48:50
[2026-10-28 07:48:50,390.390 INFO    ] 2026-10-28 07:48:50
[2026-10-28 07:48:50,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:48:50,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:48:50,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:48:50,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:48:50,959.959 INFO    ] time= 28/10/2026 07:48:50
[2026-10-28 07:48:50,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:48:50,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:48:51,115.115 INFO    ] No existing commands found in stream
[2026-10-28 07:48:56,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:48:56,132.132 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-28 07:48:59,203.203 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:48:59,206.206 INFO    ] Checking for system updates...
[2026-10-28 07:48:59,242.242 INFO    ] 200
[2026-10-28 07:48:59,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:48:59,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:48:59,299.299 INFO    ] No update needed
[2026-10-28 07:48:59,301.301 INFO    ] Checking for camera pi updates...
[2026-10-28 07:48:59,338.338 INFO    ] 200
[2026-10-28 07:48:59,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:48:59,381.381 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:48:59,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:48:59,485.485 INFO    ] No camera update needed
[2026-10-28 07:48:59,488.488 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:48:59,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:48:59,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:48:59,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:49:01,542.542 INFO    ] ================================================
[2026-10-28 07:49:01,557.557 INFO    ] Launching Daemon at Wed Oct 28 07:49:01 IST 2026
[2026-10-28 07:49:01,568.568 INFO    ] ================================================
[2026-10-28 07:49:02,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:49:02
[2026-10-28 07:49:02,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:49:03,341.341 INFO    ] Initializing speech engine...
[2026-10-28 07:49:03,350.350 INFO    ] 2026-10-28 07:49:03
[2026-10-28 07:49:03,639.639 INFO    ] 2026-10-28 07:49:03
[2026-10-28 07:49:03,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:49:03,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:49:03,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:49:04,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:49:04,080.080 INFO    ] time= 28/10/2026 07:49:04
[2026-10-28 07:49:04,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:49:04,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:49:04,246.246 INFO    ] No existing commands found in stream
[2026-10-28 07:49:09,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:49:09,279.279 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-28 07:49:13,477.477 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:49:13,480.480 INFO    ] Checking for system updates...
[2026-10-28 07:49:13,516.516 INFO    ] 200
[2026-10-28 07:49:13,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:49:13,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:49:13,577.577 INFO    ] No update needed
[2026-10-28 07:49:13,580.580 INFO    ] Checking for camera pi updates...
[2026-10-28 07:49:13,619.619 INFO    ] 200
[2026-10-28 07:49:13,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:49:13,670.670 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:49:13,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:49:13,853.853 INFO    ] No camera update needed
[2026-10-28 07:49:13,856.856 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:49:13,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:49:13,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:49:13,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:49:15,913.913 INFO    ] ================================================
[2026-10-28 07:49:15,929.929 INFO    ] Launching Daemon at Wed Oct 28 07:49:15 IST 2026
[2026-10-28 07:49:15,940.940 INFO    ] ================================================
[2026-10-28 07:49:16,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:49:16
[2026-10-28 07:49:17,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:49:17,381.381 INFO    ] Initializing speech engine...
[2026-10-28 07:49:17,387.387 INFO    ] 2026-10-28 07:49:17
[2026-10-28 07:49:17,635.635 INFO    ] 2026-10-28 07:49:17
[2026-10-28 07:49:17,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:49:17,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:49:17,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:49:18,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:49:18,205.205 INFO    ] time= 28/10/2026 07:49:18
[2026-10-28 07:49:18,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:49:18,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:49:18,357.357 INFO    ] No existing commands found in stream
[2026-10-28 07:49:23,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:49:23,374.374 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 07:49:26,102.102 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:49:26,105.105 INFO    ] Checking for system updates...
[2026-10-28 07:49:26,147.147 INFO    ] 200
[2026-10-28 07:49:26,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:49:26,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:49:26,215.215 INFO    ] No update needed
[2026-10-28 07:49:26,218.218 INFO    ] Checking for camera pi updates...
[2026-10-28 07:49:26,253.253 INFO    ] 200
[2026-10-28 07:49:26,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:49:26,304.304 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:49:26,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:49:26,394.394 INFO    ] No camera update needed
[2026-10-28 07:49:26,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:49:26,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:49:26,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:49:26,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:49:28,453.453 INFO    ] ================================================
[2026-10-28 07:49:28,469.469 INFO    ] Launching Daemon at Wed Oct 28 07:49:28 IST 2026
[2026-10-28 07:49:28,481.481 INFO    ] ================================================
[2026-10-28 07:49:29,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:49:29
[2026-10-28 07:49:29,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:49:29,928.928 INFO    ] Initializing speech engine...
[2026-10-28 07:49:29,943.943 INFO    ] 2026-10-28 07:49:29
[2026-10-28 07:49:30,234.234 INFO    ] 2026-10-28 07:49:30
[2026-10-28 07:49:30,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:49:30,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:49:30,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:49:30,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:49:30,862.862 INFO    ] time= 28/10/2026 07:49:30
[2026-10-28 07:49:30,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:49:30,895.895 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:49:31,027.027 INFO    ] No existing commands found in stream
[2026-10-28 07:49:36,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:49:36,057.057 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-28 07:49:37,460.460 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:49:37,462.462 INFO    ] Checking for system updates...
[2026-10-28 07:49:37,499.499 INFO    ] 200
[2026-10-28 07:49:37,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:49:37,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:49:37,566.566 INFO    ] No update needed
[2026-10-28 07:49:37,570.570 INFO    ] Checking for camera pi updates...
[2026-10-28 07:49:37,605.605 INFO    ] 200
[2026-10-28 07:49:37,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:49:37,650.650 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:49:37,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:49:37,729.729 INFO    ] No camera update needed
[2026-10-28 07:49:37,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:49:37,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:49:37,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:49:37,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:49:39,791.791 INFO    ] ================================================
[2026-10-28 07:49:39,807.807 INFO    ] Launching Daemon at Wed Oct 28 07:49:39 IST 2026
[2026-10-28 07:49:39,818.818 INFO    ] ================================================
[2026-10-28 07:49:40,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:49:40
[2026-10-28 07:49:40,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:49:41,215.215 INFO    ] Initializing speech engine...
[2026-10-28 07:49:41,230.230 INFO    ] 2026-10-28 07:49:41
[2026-10-28 07:49:41,496.496 INFO    ] 2026-10-28 07:49:41
[2026-10-28 07:49:41,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:49:41,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:49:41,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:49:42,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:49:42,068.068 INFO    ] time= 28/10/2026 07:49:42
[2026-10-28 07:49:42,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:49:42,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:49:42,228.228 INFO    ] No existing commands found in stream
[2026-10-28 07:49:47,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:49:47,246.246 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-28 07:49:48,059.059 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:49:48,061.061 INFO    ] Checking for system updates...
[2026-10-28 07:49:48,098.098 INFO    ] 200
[2026-10-28 07:49:48,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:49:48,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:49:48,158.158 INFO    ] No update needed
[2026-10-28 07:49:48,161.161 INFO    ] Checking for camera pi updates...
[2026-10-28 07:49:48,195.195 INFO    ] 200
[2026-10-28 07:49:48,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:49:48,238.238 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:49:48,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:49:48,349.349 INFO    ] No camera update needed
[2026-10-28 07:49:48,352.352 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:49:48,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:49:48,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:49:48,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:49:50,408.408 INFO    ] ================================================
[2026-10-28 07:49:50,424.424 INFO    ] Launching Daemon at Wed Oct 28 07:49:50 IST 2026
[2026-10-28 07:49:50,435.435 INFO    ] ================================================
[2026-10-28 07:49:51,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:49:51
[2026-10-28 07:49:51,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:49:52,127.127 INFO    ] Initializing speech engine...
[2026-10-28 07:49:52,137.137 INFO    ] 2026-10-28 07:49:52
[2026-10-28 07:49:52,435.435 INFO    ] 2026-10-28 07:49:52
[2026-10-28 07:49:52,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:49:52,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:49:52,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:49:53,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:49:53,189.189 INFO    ] time= 28/10/2026 07:49:53
[2026-10-28 07:49:53,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:49:53,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:49:53,454.454 INFO    ] No existing commands found in stream
[2026-10-28 07:49:58,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:49:58,468.468 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 07:50:02,518.518 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:50:02,523.523 INFO    ] Checking for system updates...
[2026-10-28 07:50:02,596.596 INFO    ] 200
[2026-10-28 07:50:02,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:50:02,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:50:02,748.748 INFO    ] No update needed
[2026-10-28 07:50:02,752.752 INFO    ] Checking for camera pi updates...
[2026-10-28 07:50:02,811.811 INFO    ] 200
[2026-10-28 07:50:02,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:50:02,876.876 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:50:03,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:50:03,099.099 INFO    ] No camera update needed
[2026-10-28 07:50:03,103.103 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:50:03,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:50:03,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:50:03,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:50:05,166.166 INFO    ] ================================================
[2026-10-28 07:50:05,182.182 INFO    ] Launching Daemon at Wed Oct 28 07:50:05 IST 2026
[2026-10-28 07:50:05,193.193 INFO    ] ================================================
[2026-10-28 07:50:05,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:50:05
[2026-10-28 07:50:06,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:50:06,606.606 INFO    ] Initializing speech engine...
[2026-10-28 07:50:06,627.627 INFO    ] 2026-10-28 07:50:06
[2026-10-28 07:50:06,888.888 INFO    ] 2026-10-28 07:50:06
[2026-10-28 07:50:06,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:50:07,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:50:07,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:50:07,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:50:07,460.460 INFO    ] time= 28/10/2026 07:50:07
[2026-10-28 07:50:07,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:50:07,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:50:07,626.626 INFO    ] No existing commands found in stream
[2026-10-28 07:50:12,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:50:12,649.649 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-28 07:50:14,256.256 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:50:14,258.258 INFO    ] Checking for system updates...
[2026-10-28 07:50:14,294.294 INFO    ] 200
[2026-10-28 07:50:14,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:50:14,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:50:14,351.351 INFO    ] No update needed
[2026-10-28 07:50:14,354.354 INFO    ] Checking for camera pi updates...
[2026-10-28 07:50:14,388.388 INFO    ] 200
[2026-10-28 07:50:14,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:50:14,436.436 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:50:14,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:50:14,527.527 INFO    ] No camera update needed
[2026-10-28 07:50:14,529.529 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:50:14,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:50:14,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:50:14,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:50:16,583.583 INFO    ] ================================================
[2026-10-28 07:50:16,598.598 INFO    ] Launching Daemon at Wed Oct 28 07:50:16 IST 2026
[2026-10-28 07:50:16,609.609 INFO    ] ================================================
[2026-10-28 07:50:17,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:50:17
[2026-10-28 07:50:17,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:50:18,064.064 INFO    ] Initializing speech engine...
[2026-10-28 07:50:18,071.071 INFO    ] 2026-10-28 07:50:18
[2026-10-28 07:50:18,335.335 INFO    ] 2026-10-28 07:50:18
[2026-10-28 07:50:18,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:50:18,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:50:18,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:50:18,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:50:18,878.878 INFO    ] time= 28/10/2026 07:50:18
[2026-10-28 07:50:18,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:50:18,903.903 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:50:19,034.034 INFO    ] No existing commands found in stream
[2026-10-28 07:50:24,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:50:24,059.059 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-28 07:50:25,524.524 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:50:25,527.527 INFO    ] Checking for system updates...
[2026-10-28 07:50:25,564.564 INFO    ] 200
[2026-10-28 07:50:25,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:50:25,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:50:25,626.626 INFO    ] No update needed
[2026-10-28 07:50:25,628.628 INFO    ] Checking for camera pi updates...
[2026-10-28 07:50:25,662.662 INFO    ] 200
[2026-10-28 07:50:25,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:50:25,711.711 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:50:25,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:50:25,817.817 INFO    ] No camera update needed
[2026-10-28 07:50:25,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:50:25,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:50:25,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:50:25,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:50:27,873.873 INFO    ] ================================================
[2026-10-28 07:50:27,888.888 INFO    ] Launching Daemon at Wed Oct 28 07:50:27 IST 2026
[2026-10-28 07:50:27,899.899 INFO    ] ================================================
[2026-10-28 07:50:28,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:50:28
[2026-10-28 07:50:29,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:50:29,554.554 INFO    ] Initializing speech engine...
[2026-10-28 07:50:29,562.562 INFO    ] 2026-10-28 07:50:29
[2026-10-28 07:50:29,846.846 INFO    ] 2026-10-28 07:50:29
[2026-10-28 07:50:29,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:50:30,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:50:30,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:50:30,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:50:30,482.482 INFO    ] time= 28/10/2026 07:50:30
[2026-10-28 07:50:30,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:50:30,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:50:30,648.648 INFO    ] No existing commands found in stream
[2026-10-28 07:50:35,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:50:35,683.683 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 07:50:36,859.859 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:50:36,862.862 INFO    ] Checking for system updates...
[2026-10-28 07:50:36,900.900 INFO    ] 200
[2026-10-28 07:50:36,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:50:36,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:50:36,957.957 INFO    ] No update needed
[2026-10-28 07:50:36,959.959 INFO    ] Checking for camera pi updates...
[2026-10-28 07:50:36,994.994 INFO    ] 200
[2026-10-28 07:50:36,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:50:37,037.037 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:50:37,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:50:37,117.117 INFO    ] No camera update needed
[2026-10-28 07:50:37,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:50:37,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:50:37,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:50:37,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:50:39,174.174 INFO    ] ================================================
[2026-10-28 07:50:39,189.189 INFO    ] Launching Daemon at Wed Oct 28 07:50:39 IST 2026
[2026-10-28 07:50:39,200.200 INFO    ] ================================================
[2026-10-28 07:50:39,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:50:39
[2026-10-28 07:50:40,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:50:40,656.656 INFO    ] Initializing speech engine...
[2026-10-28 07:50:40,663.663 INFO    ] 2026-10-28 07:50:40
[2026-10-28 07:50:40,969.969 INFO    ] 2026-10-28 07:50:40
[2026-10-28 07:50:41,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:50:41,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:50:41,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:50:41,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:50:41,560.560 INFO    ] time= 28/10/2026 07:50:41
[2026-10-28 07:50:41,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:50:41,653.653 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:50:41,851.851 INFO    ] No existing commands found in stream
[2026-10-28 07:50:46,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:50:46,877.877 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-28 07:50:48,160.160 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:50:48,163.163 INFO    ] Checking for system updates...
[2026-10-28 07:50:48,202.202 INFO    ] 200
[2026-10-28 07:50:48,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:50:48,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:50:48,259.259 INFO    ] No update needed
[2026-10-28 07:50:48,261.261 INFO    ] Checking for camera pi updates...
[2026-10-28 07:50:48,296.296 INFO    ] 200
[2026-10-28 07:50:48,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:50:48,343.343 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:50:48,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:50:48,427.427 INFO    ] No camera update needed
[2026-10-28 07:50:48,429.429 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:50:48,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:50:48,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:50:48,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:50:50,482.482 INFO    ] ================================================
[2026-10-28 07:50:50,498.498 INFO    ] Launching Daemon at Wed Oct 28 07:50:50 IST 2026
[2026-10-28 07:50:50,509.509 INFO    ] ================================================
[2026-10-28 07:50:51,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:50:51
[2026-10-28 07:50:51,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:50:52,141.141 INFO    ] Initializing speech engine...
[2026-10-28 07:50:52,154.154 INFO    ] 2026-10-28 07:50:52
[2026-10-28 07:50:52,471.471 INFO    ] 2026-10-28 07:50:52
[2026-10-28 07:50:52,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:50:52,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:50:52,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:50:53,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:50:53,150.150 INFO    ] time= 28/10/2026 07:50:53
[2026-10-28 07:50:53,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:50:53,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:50:53,386.386 INFO    ] No existing commands found in stream
[2026-10-28 07:50:58,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:50:58,418.418 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-28 07:50:59,183.183 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:50:59,186.186 INFO    ] Checking for system updates...
[2026-10-28 07:50:59,225.225 INFO    ] 200
[2026-10-28 07:50:59,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:50:59,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:50:59,290.290 INFO    ] No update needed
[2026-10-28 07:50:59,292.292 INFO    ] Checking for camera pi updates...
[2026-10-28 07:50:59,330.330 INFO    ] 200
[2026-10-28 07:50:59,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:50:59,377.377 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:50:59,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:50:59,479.479 INFO    ] No camera update needed
[2026-10-28 07:50:59,482.482 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:50:59,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:50:59,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:50:59,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:51:01,571.571 INFO    ] ================================================
[2026-10-28 07:51:01,608.608 INFO    ] Launching Daemon at Wed Oct 28 07:51:01 IST 2026
[2026-10-28 07:51:01,640.640 INFO    ] ================================================
[2026-10-28 07:51:02,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:51:02
[2026-10-28 07:51:02,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:51:03,338.338 INFO    ] Initializing speech engine...
[2026-10-28 07:51:03,357.357 INFO    ] 2026-10-28 07:51:03
[2026-10-28 07:51:03,656.656 INFO    ] 2026-10-28 07:51:03
[2026-10-28 07:51:03,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:51:03,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:51:03,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:51:04,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:51:04,184.184 INFO    ] time= 28/10/2026 07:51:04
[2026-10-28 07:51:04,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:51:04,256.256 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:51:04,361.361 INFO    ] No existing commands found in stream
[2026-10-28 07:51:09,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:51:09,377.377 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-28 07:51:13,044.044 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:51:13,047.047 INFO    ] Checking for system updates...
[2026-10-28 07:51:13,083.083 INFO    ] 200
[2026-10-28 07:51:13,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:51:13,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:51:13,141.141 INFO    ] No update needed
[2026-10-28 07:51:13,144.144 INFO    ] Checking for camera pi updates...
[2026-10-28 07:51:13,182.182 INFO    ] 200
[2026-10-28 07:51:13,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:51:13,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:51:13,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:51:13,317.317 INFO    ] No camera update needed
[2026-10-28 07:51:13,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:51:13,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:51:13,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:51:13,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:51:15,373.373 INFO    ] ================================================
[2026-10-28 07:51:15,388.388 INFO    ] Launching Daemon at Wed Oct 28 07:51:15 IST 2026
[2026-10-28 07:51:15,399.399 INFO    ] ================================================
[2026-10-28 07:51:15,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:51:15
[2026-10-28 07:51:16,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:51:16,839.839 INFO    ] Initializing speech engine...
[2026-10-28 07:51:16,847.847 INFO    ] 2026-10-28 07:51:16
[2026-10-28 07:51:17,149.149 INFO    ] 2026-10-28 07:51:17
[2026-10-28 07:51:17,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:51:17,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:51:17,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:51:17,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:51:17,748.748 INFO    ] time= 28/10/2026 07:51:17
[2026-10-28 07:51:17,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:51:17,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:51:17,960.960 INFO    ] No existing commands found in stream
[2026-10-28 07:51:22,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:51:22,988.988 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 07:51:27,496.496 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:51:27,498.498 INFO    ] Checking for system updates...
[2026-10-28 07:51:27,534.534 INFO    ] 200
[2026-10-28 07:51:27,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:51:27,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:51:27,592.592 INFO    ] No update needed
[2026-10-28 07:51:27,595.595 INFO    ] Checking for camera pi updates...
[2026-10-28 07:51:27,633.633 INFO    ] 200
[2026-10-28 07:51:27,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:51:27,682.682 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:51:27,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:51:27,863.863 INFO    ] No camera update needed
[2026-10-28 07:51:27,866.866 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:51:27,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:51:27,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:51:27,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:51:29,918.918 INFO    ] ================================================
[2026-10-28 07:51:29,934.934 INFO    ] Launching Daemon at Wed Oct 28 07:51:29 IST 2026
[2026-10-28 07:51:29,944.944 INFO    ] ================================================
[2026-10-28 07:51:30,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:51:30
[2026-10-28 07:51:31,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:51:31,621.621 INFO    ] Initializing speech engine...
[2026-10-28 07:51:31,630.630 INFO    ] 2026-10-28 07:51:31
[2026-10-28 07:51:31,909.909 INFO    ] 2026-10-28 07:51:31
[2026-10-28 07:51:31,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:51:32,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:51:32,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:51:32,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:51:32,473.473 INFO    ] time= 28/10/2026 07:51:32
[2026-10-28 07:51:32,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:51:32,521.521 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:51:32,688.688 INFO    ] No existing commands found in stream
[2026-10-28 07:51:37,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:51:37,706.706 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-28 07:51:39,857.857 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:51:39,860.860 INFO    ] Checking for system updates...
[2026-10-28 07:51:39,900.900 INFO    ] 200
[2026-10-28 07:51:39,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:51:39,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:51:39,957.957 INFO    ] No update needed
[2026-10-28 07:51:39,959.959 INFO    ] Checking for camera pi updates...
[2026-10-28 07:51:39,998.998 INFO    ] 200
[2026-10-28 07:51:40,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:51:40,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:51:40,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:51:40,142.142 INFO    ] No camera update needed
[2026-10-28 07:51:40,145.145 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:51:40,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:51:40,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:51:40,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:51:42,199.199 INFO    ] ================================================
[2026-10-28 07:51:42,214.214 INFO    ] Launching Daemon at Wed Oct 28 07:51:42 IST 2026
[2026-10-28 07:51:42,226.226 INFO    ] ================================================
[2026-10-28 07:51:42,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:51:42
[2026-10-28 07:51:43,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:51:43,668.668 INFO    ] Initializing speech engine...
[2026-10-28 07:51:43,677.677 INFO    ] 2026-10-28 07:51:43
[2026-10-28 07:51:43,977.977 INFO    ] 2026-10-28 07:51:43
[2026-10-28 07:51:44,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:51:44,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:51:44,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:51:44,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:51:44,478.478 INFO    ] time= 28/10/2026 07:51:44
[2026-10-28 07:51:44,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:51:44,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:51:44,759.759 INFO    ] No existing commands found in stream
[2026-10-28 07:51:49,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:51:49,784.784 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-28 07:51:53,617.617 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:51:53,620.620 INFO    ] Checking for system updates...
[2026-10-28 07:51:53,656.656 INFO    ] 200
[2026-10-28 07:51:53,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:51:53,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:51:53,720.720 INFO    ] No update needed
[2026-10-28 07:51:53,722.722 INFO    ] Checking for camera pi updates...
[2026-10-28 07:51:53,760.760 INFO    ] 200
[2026-10-28 07:51:53,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:51:53,821.821 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:51:53,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:51:53,908.908 INFO    ] No camera update needed
[2026-10-28 07:51:53,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:51:53,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:51:53,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:51:53,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:51:55,968.968 INFO    ] ================================================
[2026-10-28 07:51:56,990.990 INFO    ] Launching Daemon at Wed Oct 28 07:51:55 IST 2026
[2026-10-28 07:51:56,008.008 INFO    ] ================================================
[2026-10-28 07:51:56,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:51:56
[2026-10-28 07:51:57,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:51:57,712.712 INFO    ] Initializing speech engine...
[2026-10-28 07:51:57,723.723 INFO    ] 2026-10-28 07:51:57
[2026-10-28 07:51:58,021.021 INFO    ] 2026-10-28 07:51:58
[2026-10-28 07:51:58,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:51:58,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:51:58,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:51:58,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:51:58,581.581 INFO    ] time= 28/10/2026 07:51:58
[2026-10-28 07:51:58,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:51:58,620.620 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:51:58,769.769 INFO    ] No existing commands found in stream
[2026-10-28 07:52:03,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:52:03,799.799 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-28 07:52:07,936.936 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:52:07,939.939 INFO    ] Checking for system updates...
[2026-10-28 07:52:07,976.976 INFO    ] 200
[2026-10-28 07:52:07,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:52:08,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:52:08,035.035 INFO    ] No update needed
[2026-10-28 07:52:08,038.038 INFO    ] Checking for camera pi updates...
[2026-10-28 07:52:08,079.079 INFO    ] 200
[2026-10-28 07:52:08,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:52:08,124.124 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:52:08,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:52:08,207.207 INFO    ] No camera update needed
[2026-10-28 07:52:08,210.210 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:52:08,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:52:08,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:52:08,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:52:10,266.266 INFO    ] ================================================
[2026-10-28 07:52:10,282.282 INFO    ] Launching Daemon at Wed Oct 28 07:52:10 IST 2026
[2026-10-28 07:52:10,292.292 INFO    ] ================================================
[2026-10-28 07:52:10,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:52:10
[2026-10-28 07:52:11,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:52:11,934.934 INFO    ] Initializing speech engine...
[2026-10-28 07:52:11,945.945 INFO    ] 2026-10-28 07:52:11
[2026-10-28 07:52:12,255.255 INFO    ] 2026-10-28 07:52:12
[2026-10-28 07:52:12,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:52:12,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:52:12,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:52:12,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:52:12,777.777 INFO    ] time= 28/10/2026 07:52:12
[2026-10-28 07:52:12,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:52:12,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:52:12,968.968 INFO    ] No existing commands found in stream
[2026-10-28 07:52:17,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:52:17,997.997 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-28 07:52:22,517.517 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:52:22,520.520 INFO    ] Checking for system updates...
[2026-10-28 07:52:22,559.559 INFO    ] 200
[2026-10-28 07:52:22,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:52:22,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:52:22,624.624 INFO    ] No update needed
[2026-10-28 07:52:22,627.627 INFO    ] Checking for camera pi updates...
[2026-10-28 07:52:22,659.659 INFO    ] 200
[2026-10-28 07:52:22,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:52:22,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:52:22,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:52:22,758.758 INFO    ] No camera update needed
[2026-10-28 07:52:22,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:52:22,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:52:22,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:52:22,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:52:24,815.815 INFO    ] ================================================
[2026-10-28 07:52:24,830.830 INFO    ] Launching Daemon at Wed Oct 28 07:52:24 IST 2026
[2026-10-28 07:52:24,841.841 INFO    ] ================================================
[2026-10-28 07:52:25,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:52:25
[2026-10-28 07:52:26,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:52:26,512.512 INFO    ] Initializing speech engine...
[2026-10-28 07:52:26,523.523 INFO    ] 2026-10-28 07:52:26
[2026-10-28 07:52:26,800.800 INFO    ] 2026-10-28 07:52:26
[2026-10-28 07:52:26,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:52:27,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:52:27,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:52:27,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:52:27,411.411 INFO    ] time= 28/10/2026 07:52:27
[2026-10-28 07:52:27,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:52:27,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:52:27,549.549 INFO    ] No existing commands found in stream
[2026-10-28 07:52:32,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:52:32,585.585 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-28 07:52:33,619.619 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:52:33,622.622 INFO    ] Checking for system updates...
[2026-10-28 07:52:33,660.660 INFO    ] 200
[2026-10-28 07:52:33,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:52:33,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:52:33,728.728 INFO    ] No update needed
[2026-10-28 07:52:33,731.731 INFO    ] Checking for camera pi updates...
[2026-10-28 07:52:33,766.766 INFO    ] 200
[2026-10-28 07:52:33,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:52:33,815.815 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:52:33,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:52:33,904.904 INFO    ] No camera update needed
[2026-10-28 07:52:33,906.906 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:52:33,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:52:33,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:52:33,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:52:35,960.960 INFO    ] ================================================
[2026-10-28 07:52:35,976.976 INFO    ] Launching Daemon at Wed Oct 28 07:52:35 IST 2026
[2026-10-28 07:52:35,988.988 INFO    ] ================================================
[2026-10-28 07:52:36,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:52:36
[2026-10-28 07:52:37,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:52:37,438.438 INFO    ] Initializing speech engine...
[2026-10-28 07:52:37,451.451 INFO    ] 2026-10-28 07:52:37
[2026-10-28 07:52:37,701.701 INFO    ] 2026-10-28 07:52:37
[2026-10-28 07:52:37,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:52:38,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:52:38,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:52:38,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:52:38,256.256 INFO    ] time= 28/10/2026 07:52:38
[2026-10-28 07:52:38,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:52:38,302.302 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:52:38,427.427 INFO    ] No existing commands found in stream
[2026-10-28 07:52:43,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:52:43,460.460 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 07:52:45,152.152 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:52:45,154.154 INFO    ] Checking for system updates...
[2026-10-28 07:52:45,190.190 INFO    ] 200
[2026-10-28 07:52:45,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:52:45,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:52:45,249.249 INFO    ] No update needed
[2026-10-28 07:52:45,251.251 INFO    ] Checking for camera pi updates...
[2026-10-28 07:52:45,285.285 INFO    ] 200
[2026-10-28 07:52:45,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:52:45,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:52:45,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:52:45,427.427 INFO    ] No camera update needed
[2026-10-28 07:52:45,430.430 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:52:45,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:52:45,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:52:45,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:52:47,485.485 INFO    ] ================================================
[2026-10-28 07:52:47,500.500 INFO    ] Launching Daemon at Wed Oct 28 07:52:47 IST 2026
[2026-10-28 07:52:47,511.511 INFO    ] ================================================
[2026-10-28 07:52:48,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:52:48
[2026-10-28 07:52:48,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:52:49,082.082 INFO    ] Initializing speech engine...
[2026-10-28 07:52:49,091.091 INFO    ] 2026-10-28 07:52:49
[2026-10-28 07:52:49,355.355 INFO    ] 2026-10-28 07:52:49
[2026-10-28 07:52:49,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:52:49,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:52:49,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:52:49,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:52:50,045.045 INFO    ] time= 28/10/2026 07:52:50
[2026-10-28 07:52:50,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:52:50,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:52:50,303.303 INFO    ] No existing commands found in stream
[2026-10-28 07:52:55,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:52:55,324.324 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-28 07:52:57,393.393 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:52:57,396.396 INFO    ] Checking for system updates...
[2026-10-28 07:52:57,436.436 INFO    ] 200
[2026-10-28 07:52:57,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:52:57,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:52:57,502.502 INFO    ] No update needed
[2026-10-28 07:52:57,504.504 INFO    ] Checking for camera pi updates...
[2026-10-28 07:52:57,542.542 INFO    ] 200
[2026-10-28 07:52:57,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:52:57,585.585 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:52:57,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:52:57,668.668 INFO    ] No camera update needed
[2026-10-28 07:52:57,670.670 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:52:57,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:52:57,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:52:57,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:52:59,725.725 INFO    ] ================================================
[2026-10-28 07:52:59,741.741 INFO    ] Launching Daemon at Wed Oct 28 07:52:59 IST 2026
[2026-10-28 07:52:59,751.751 INFO    ] ================================================
[2026-10-28 07:53:00,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:53:00
[2026-10-28 07:53:01,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:53:01,414.414 INFO    ] Initializing speech engine...
[2026-10-28 07:53:01,424.424 INFO    ] 2026-10-28 07:53:01
[2026-10-28 07:53:01,707.707 INFO    ] 2026-10-28 07:53:01
[2026-10-28 07:53:01,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:53:02,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:53:02,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:53:02,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:53:02,269.269 INFO    ] time= 28/10/2026 07:53:02
[2026-10-28 07:53:02,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:53:02,302.302 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:53:02,435.435 INFO    ] No existing commands found in stream
[2026-10-28 07:53:07,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:53:07,451.451 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-28 07:53:10,221.221 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:53:10,224.224 INFO    ] Checking for system updates...
[2026-10-28 07:53:10,259.259 INFO    ] 200
[2026-10-28 07:53:10,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:53:10,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:53:10,315.315 INFO    ] No update needed
[2026-10-28 07:53:10,318.318 INFO    ] Checking for camera pi updates...
[2026-10-28 07:53:10,355.355 INFO    ] 200
[2026-10-28 07:53:10,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:53:10,401.401 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:53:10,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:53:10,489.489 INFO    ] No camera update needed
[2026-10-28 07:53:10,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:53:10,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:53:10,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:53:10,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:53:12,544.544 INFO    ] ================================================
[2026-10-28 07:53:12,559.559 INFO    ] Launching Daemon at Wed Oct 28 07:53:12 IST 2026
[2026-10-28 07:53:12,570.570 INFO    ] ================================================
[2026-10-28 07:53:13,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:53:13
[2026-10-28 07:53:13,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:53:14,187.187 INFO    ] Initializing speech engine...
[2026-10-28 07:53:14,201.201 INFO    ] 2026-10-28 07:53:14
[2026-10-28 07:53:14,487.487 INFO    ] 2026-10-28 07:53:14
[2026-10-28 07:53:14,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:53:14,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:53:14,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:53:15,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:53:15,234.234 INFO    ] time= 28/10/2026 07:53:15
[2026-10-28 07:53:15,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:53:15,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:53:15,487.487 INFO    ] No existing commands found in stream
[2026-10-28 07:53:20,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:53:20,509.509 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-28 07:53:23,456.456 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:53:23,459.459 INFO    ] Checking for system updates...
[2026-10-28 07:53:23,499.499 INFO    ] 200
[2026-10-28 07:53:23,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:53:23,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:53:23,559.559 INFO    ] No update needed
[2026-10-28 07:53:23,562.562 INFO    ] Checking for camera pi updates...
[2026-10-28 07:53:23,596.596 INFO    ] 200
[2026-10-28 07:53:23,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:53:23,640.640 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:53:23,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:53:23,737.737 INFO    ] No camera update needed
[2026-10-28 07:53:23,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:53:23,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:53:23,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:53:23,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:53:25,794.794 INFO    ] ================================================
[2026-10-28 07:53:25,809.809 INFO    ] Launching Daemon at Wed Oct 28 07:53:25 IST 2026
[2026-10-28 07:53:25,821.821 INFO    ] ================================================
[2026-10-28 07:53:26,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:53:26
[2026-10-28 07:53:26,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:53:27,219.219 INFO    ] Initializing speech engine...
[2026-10-28 07:53:27,242.242 INFO    ] 2026-10-28 07:53:27
[2026-10-28 07:53:27,497.497 INFO    ] 2026-10-28 07:53:27
[2026-10-28 07:53:27,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:53:27,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:53:27,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:53:28,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:53:28,062.062 INFO    ] time= 28/10/2026 07:53:28
[2026-10-28 07:53:28,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:53:28,089.089 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:53:28,221.221 INFO    ] No existing commands found in stream
[2026-10-28 07:53:33,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:53:33,235.235 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-28 07:53:34,178.178 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:53:34,180.180 INFO    ] Checking for system updates...
[2026-10-28 07:53:34,225.225 INFO    ] 200
[2026-10-28 07:53:34,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:53:34,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:53:34,302.302 INFO    ] No update needed
[2026-10-28 07:53:34,305.305 INFO    ] Checking for camera pi updates...
[2026-10-28 07:53:34,338.338 INFO    ] 200
[2026-10-28 07:53:34,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:53:34,381.381 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:53:34,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:53:34,488.488 INFO    ] No camera update needed
[2026-10-28 07:53:34,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:53:34,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:53:34,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:53:34,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:53:36,545.545 INFO    ] ================================================
[2026-10-28 07:53:36,560.560 INFO    ] Launching Daemon at Wed Oct 28 07:53:36 IST 2026
[2026-10-28 07:53:36,571.571 INFO    ] ================================================
[2026-10-28 07:53:37,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:53:37
[2026-10-28 07:53:37,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:53:37,991.991 INFO    ] Initializing speech engine...
[2026-10-28 07:53:38,002.002 INFO    ] 2026-10-28 07:53:37
[2026-10-28 07:53:38,252.252 INFO    ] 2026-10-28 07:53:38
[2026-10-28 07:53:38,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:53:38,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:53:38,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:53:38,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:53:38,818.818 INFO    ] time= 28/10/2026 07:53:38
[2026-10-28 07:53:38,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:53:38,841.841 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:53:38,994.994 INFO    ] No existing commands found in stream
[2026-10-28 07:53:44,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:53:44,034.034 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-28 07:53:45,295.295 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:53:45,298.298 INFO    ] Checking for system updates...
[2026-10-28 07:53:45,334.334 INFO    ] 200
[2026-10-28 07:53:45,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:53:45,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:53:45,390.390 INFO    ] No update needed
[2026-10-28 07:53:45,393.393 INFO    ] Checking for camera pi updates...
[2026-10-28 07:53:45,430.430 INFO    ] 200
[2026-10-28 07:53:45,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:53:45,476.476 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:53:45,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:53:45,561.561 INFO    ] No camera update needed
[2026-10-28 07:53:45,564.564 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:53:45,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:53:45,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:53:45,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:53:47,618.618 INFO    ] ================================================
[2026-10-28 07:53:47,634.634 INFO    ] Launching Daemon at Wed Oct 28 07:53:47 IST 2026
[2026-10-28 07:53:47,645.645 INFO    ] ================================================
[2026-10-28 07:53:48,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:53:48
[2026-10-28 07:53:48,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:53:49,112.112 INFO    ] Initializing speech engine...
[2026-10-28 07:53:49,135.135 INFO    ] 2026-10-28 07:53:49
[2026-10-28 07:53:49,392.392 INFO    ] 2026-10-28 07:53:49
[2026-10-28 07:53:49,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:53:49,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:53:49,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:53:49,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:53:49,948.948 INFO    ] time= 28/10/2026 07:53:49
[2026-10-28 07:53:49,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:53:49,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:53:50,101.101 INFO    ] No existing commands found in stream
[2026-10-28 07:53:55,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:53:55,133.133 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-28 07:53:56,099.099 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:53:56,102.102 INFO    ] Checking for system updates...
[2026-10-28 07:53:56,137.137 INFO    ] 200
[2026-10-28 07:53:56,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:53:56,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:53:56,194.194 INFO    ] No update needed
[2026-10-28 07:53:56,196.196 INFO    ] Checking for camera pi updates...
[2026-10-28 07:53:56,231.231 INFO    ] 200
[2026-10-28 07:53:56,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:53:56,282.282 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:53:56,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:53:56,368.368 INFO    ] No camera update needed
[2026-10-28 07:53:56,371.371 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:53:56,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:53:56,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:53:56,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:53:58,424.424 INFO    ] ================================================
[2026-10-28 07:53:58,439.439 INFO    ] Launching Daemon at Wed Oct 28 07:53:58 IST 2026
[2026-10-28 07:53:58,450.450 INFO    ] ================================================
[2026-10-28 07:53:59,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:53:59
[2026-10-28 07:53:59,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:53:59,876.876 INFO    ] Initializing speech engine...
[2026-10-28 07:53:59,885.885 INFO    ] 2026-10-28 07:53:59
[2026-10-28 07:54:00,134.134 INFO    ] 2026-10-28 07:54:00
[2026-10-28 07:54:00,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:54:00,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:54:00,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:54:00,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:54:00,676.676 INFO    ] time= 28/10/2026 07:54:00
[2026-10-28 07:54:00,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:54:00,700.700 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:54:00,828.828 INFO    ] No existing commands found in stream
[2026-10-28 07:54:05,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:54:05,845.845 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-28 07:54:07,941.941 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:54:07,944.944 INFO    ] Checking for system updates...
[2026-10-28 07:54:07,981.981 INFO    ] 200
[2026-10-28 07:54:07,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:54:08,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:54:08,043.043 INFO    ] No update needed
[2026-10-28 07:54:08,046.046 INFO    ] Checking for camera pi updates...
[2026-10-28 07:54:08,082.082 INFO    ] 200
[2026-10-28 07:54:08,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:54:08,125.125 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:54:08,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:54:08,245.245 INFO    ] No camera update needed
[2026-10-28 07:54:08,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:54:08,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:54:08,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:54:08,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:54:10,302.302 INFO    ] ================================================
[2026-10-28 07:54:10,317.317 INFO    ] Launching Daemon at Wed Oct 28 07:54:10 IST 2026
[2026-10-28 07:54:10,328.328 INFO    ] ================================================
[2026-10-28 07:54:10,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:54:10
[2026-10-28 07:54:11,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:54:11,777.777 INFO    ] Initializing speech engine...
[2026-10-28 07:54:11,784.784 INFO    ] 2026-10-28 07:54:11
[2026-10-28 07:54:12,048.048 INFO    ] 2026-10-28 07:54:12
[2026-10-28 07:54:12,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:54:12,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:54:12,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:54:12,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:54:12,662.662 INFO    ] time= 28/10/2026 07:54:12
[2026-10-28 07:54:12,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:54:12,689.689 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:54:12,826.826 INFO    ] No existing commands found in stream
[2026-10-28 07:54:17,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:54:17,848.848 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-28 07:54:20,443.443 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:54:20,446.446 INFO    ] Checking for system updates...
[2026-10-28 07:54:20,485.485 INFO    ] 200
[2026-10-28 07:54:20,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:54:20,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:54:20,542.542 INFO    ] No update needed
[2026-10-28 07:54:20,545.545 INFO    ] Checking for camera pi updates...
[2026-10-28 07:54:20,578.578 INFO    ] 200
[2026-10-28 07:54:20,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:54:20,620.620 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:54:20,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:54:20,712.712 INFO    ] No camera update needed
[2026-10-28 07:54:20,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:54:20,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:54:20,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:54:20,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:54:22,768.768 INFO    ] ================================================
[2026-10-28 07:54:22,784.784 INFO    ] Launching Daemon at Wed Oct 28 07:54:22 IST 2026
[2026-10-28 07:54:22,799.799 INFO    ] ================================================
[2026-10-28 07:54:23,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:54:23
[2026-10-28 07:54:23,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:54:24,266.266 INFO    ] Initializing speech engine...
[2026-10-28 07:54:24,276.276 INFO    ] 2026-10-28 07:54:24
[2026-10-28 07:54:24,544.544 INFO    ] 2026-10-28 07:54:24
[2026-10-28 07:54:24,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:54:24,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:54:24,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:54:25,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:54:25,143.143 INFO    ] time= 28/10/2026 07:54:25
[2026-10-28 07:54:25,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:54:25,169.169 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:54:25,333.333 INFO    ] No existing commands found in stream
[2026-10-28 07:54:30,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:54:30,356.356 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-28 07:54:31,414.414 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:54:31,417.417 INFO    ] Checking for system updates...
[2026-10-28 07:54:31,452.452 INFO    ] 200
[2026-10-28 07:54:31,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:54:31,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:54:31,510.510 INFO    ] No update needed
[2026-10-28 07:54:31,512.512 INFO    ] Checking for camera pi updates...
[2026-10-28 07:54:31,548.548 INFO    ] 200
[2026-10-28 07:54:31,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:54:31,595.595 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:54:31,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:54:31,651.651 INFO    ] No camera update needed
[2026-10-28 07:54:31,654.654 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:54:31,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:54:31,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:54:31,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:54:33,708.708 INFO    ] ================================================
[2026-10-28 07:54:33,723.723 INFO    ] Launching Daemon at Wed Oct 28 07:54:33 IST 2026
[2026-10-28 07:54:33,734.734 INFO    ] ================================================
[2026-10-28 07:54:34,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:54:34
[2026-10-28 07:54:34,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:54:35,178.178 INFO    ] Initializing speech engine...
[2026-10-28 07:54:35,198.198 INFO    ] 2026-10-28 07:54:35
[2026-10-28 07:54:35,462.462 INFO    ] 2026-10-28 07:54:35
[2026-10-28 07:54:35,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:54:35,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:54:35,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:54:35,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:54:35,961.961 INFO    ] time= 28/10/2026 07:54:35
[2026-10-28 07:54:36,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:54:36,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:54:36,227.227 INFO    ] No existing commands found in stream
[2026-10-28 07:54:41,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:54:41,242.242 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-28 07:54:44,519.519 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:54:44,522.522 INFO    ] Checking for system updates...
[2026-10-28 07:54:44,567.567 INFO    ] 200
[2026-10-28 07:54:44,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:54:44,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:54:44,628.628 INFO    ] No update needed
[2026-10-28 07:54:44,630.630 INFO    ] Checking for camera pi updates...
[2026-10-28 07:54:44,667.667 INFO    ] 200
[2026-10-28 07:54:44,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:54:44,714.714 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:54:44,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:54:44,789.789 INFO    ] No camera update needed
[2026-10-28 07:54:44,791.791 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:54:44,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:54:44,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:54:44,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:54:46,846.846 INFO    ] ================================================
[2026-10-28 07:54:46,862.862 INFO    ] Launching Daemon at Wed Oct 28 07:54:46 IST 2026
[2026-10-28 07:54:46,872.872 INFO    ] ================================================
[2026-10-28 07:54:47,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:54:47
[2026-10-28 07:54:48,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:54:48,477.477 INFO    ] Initializing speech engine...
[2026-10-28 07:54:48,486.486 INFO    ] 2026-10-28 07:54:48
[2026-10-28 07:54:48,759.759 INFO    ] 2026-10-28 07:54:48
[2026-10-28 07:54:48,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:54:49,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:54:49,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:54:49,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:54:49,318.318 INFO    ] time= 28/10/2026 07:54:49
[2026-10-28 07:54:49,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:54:49,353.353 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:54:49,510.510 INFO    ] No existing commands found in stream
[2026-10-28 07:54:54,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:54:54,550.550 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-28 07:54:57,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:54:57,750.750 INFO    ] Checking for system updates...
[2026-10-28 07:54:57,790.790 INFO    ] 200
[2026-10-28 07:54:57,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:54:57,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:54:57,856.856 INFO    ] No update needed
[2026-10-28 07:54:57,859.859 INFO    ] Checking for camera pi updates...
[2026-10-28 07:54:57,893.893 INFO    ] 200
[2026-10-28 07:54:57,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:54:57,941.941 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:54:58,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:54:58,042.042 INFO    ] No camera update needed
[2026-10-28 07:54:58,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:54:58,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:54:58,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:54:58,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:55:00,102.102 INFO    ] ================================================
[2026-10-28 07:55:00,117.117 INFO    ] Launching Daemon at Wed Oct 28 07:55:00 IST 2026
[2026-10-28 07:55:00,128.128 INFO    ] ================================================
[2026-10-28 07:55:00,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:55:00
[2026-10-28 07:55:01,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:55:01,963.963 INFO    ] Initializing speech engine...
[2026-10-28 07:55:01,971.971 INFO    ] 2026-10-28 07:55:01
[2026-10-28 07:55:02,378.378 INFO    ] 2026-10-28 07:55:02
[2026-10-28 07:55:02,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:55:02,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:55:02,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:55:02,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:55:02,859.859 INFO    ] time= 28/10/2026 07:55:02
[2026-10-28 07:55:02,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:55:02,923.923 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:55:03,101.101 INFO    ] No existing commands found in stream
[2026-10-28 07:55:08,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:55:08,135.135 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 07:55:10,138.138 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:55:10,141.141 INFO    ] Checking for system updates...
[2026-10-28 07:55:10,182.182 INFO    ] 200
[2026-10-28 07:55:10,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:55:10,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:55:10,247.247 INFO    ] No update needed
[2026-10-28 07:55:10,250.250 INFO    ] Checking for camera pi updates...
[2026-10-28 07:55:10,284.284 INFO    ] 200
[2026-10-28 07:55:10,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:55:10,327.327 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:55:10,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:55:10,414.414 INFO    ] No camera update needed
[2026-10-28 07:55:10,416.416 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:55:10,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:55:10,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:55:10,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:55:12,469.469 INFO    ] ================================================
[2026-10-28 07:55:12,484.484 INFO    ] Launching Daemon at Wed Oct 28 07:55:12 IST 2026
[2026-10-28 07:55:12,495.495 INFO    ] ================================================
[2026-10-28 07:55:13,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:55:13
[2026-10-28 07:55:13,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:55:14,111.111 INFO    ] Initializing speech engine...
[2026-10-28 07:55:14,124.124 INFO    ] 2026-10-28 07:55:14
[2026-10-28 07:55:14,436.436 INFO    ] 2026-10-28 07:55:14
[2026-10-28 07:55:14,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:55:14,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:55:14,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:55:15,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:55:15,202.202 INFO    ] time= 28/10/2026 07:55:15
[2026-10-28 07:55:15,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:55:15,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:55:15,480.480 INFO    ] No existing commands found in stream
[2026-10-28 07:55:20,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:55:20,520.520 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-28 07:55:23,307.307 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:55:23,309.309 INFO    ] Checking for system updates...
[2026-10-28 07:55:23,351.351 INFO    ] 200
[2026-10-28 07:55:23,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:55:23,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:55:23,413.413 INFO    ] No update needed
[2026-10-28 07:55:23,415.415 INFO    ] Checking for camera pi updates...
[2026-10-28 07:55:23,449.449 INFO    ] 200
[2026-10-28 07:55:23,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:55:23,491.491 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:55:23,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:55:23,587.587 INFO    ] No camera update needed
[2026-10-28 07:55:23,589.589 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:55:23,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:55:23,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:55:23,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:55:25,643.643 INFO    ] ================================================
[2026-10-28 07:55:25,659.659 INFO    ] Launching Daemon at Wed Oct 28 07:55:25 IST 2026
[2026-10-28 07:55:25,670.670 INFO    ] ================================================
[2026-10-28 07:55:26,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:55:26
[2026-10-28 07:55:26,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:55:27,065.065 INFO    ] Initializing speech engine...
[2026-10-28 07:55:27,088.088 INFO    ] 2026-10-28 07:55:27
[2026-10-28 07:55:27,338.338 INFO    ] 2026-10-28 07:55:27
[2026-10-28 07:55:27,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:55:27,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:55:27,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:55:27,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:55:27,858.858 INFO    ] time= 28/10/2026 07:55:27
[2026-10-28 07:55:27,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:55:27,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:55:28,027.027 INFO    ] No existing commands found in stream
[2026-10-28 07:55:33,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:55:33,041.041 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-28 07:55:37,348.348 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:55:37,351.351 INFO    ] Checking for system updates...
[2026-10-28 07:55:37,394.394 INFO    ] 200
[2026-10-28 07:55:37,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:55:37,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:55:37,456.456 INFO    ] No update needed
[2026-10-28 07:55:37,458.458 INFO    ] Checking for camera pi updates...
[2026-10-28 07:55:37,491.491 INFO    ] 200
[2026-10-28 07:55:37,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:55:37,538.538 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:55:37,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:55:37,719.719 INFO    ] No camera update needed
[2026-10-28 07:55:37,721.721 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:55:37,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:55:37,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:55:37,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:55:39,775.775 INFO    ] ================================================
[2026-10-28 07:55:39,794.794 INFO    ] Launching Daemon at Wed Oct 28 07:55:39 IST 2026
[2026-10-28 07:55:39,806.806 INFO    ] ================================================
[2026-10-28 07:55:40,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:55:40
[2026-10-28 07:55:41,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:55:41,396.396 INFO    ] Initializing speech engine...
[2026-10-28 07:55:41,404.404 INFO    ] 2026-10-28 07:55:41
[2026-10-28 07:55:41,690.690 INFO    ] 2026-10-28 07:55:41
[2026-10-28 07:55:41,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:55:42,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:55:42,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:55:42,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:55:42,376.376 INFO    ] time= 28/10/2026 07:55:42
[2026-10-28 07:55:42,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:55:42,467.467 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:55:42,612.612 INFO    ] No existing commands found in stream
[2026-10-28 07:55:47,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:55:47,629.629 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 07:55:50,555.555 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:55:50,558.558 INFO    ] Checking for system updates...
[2026-10-28 07:55:50,594.594 INFO    ] 200
[2026-10-28 07:55:50,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:55:50,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:55:50,651.651 INFO    ] No update needed
[2026-10-28 07:55:50,653.653 INFO    ] Checking for camera pi updates...
[2026-10-28 07:55:50,686.686 INFO    ] 200
[2026-10-28 07:55:50,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:55:50,729.729 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:55:50,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:55:50,812.812 INFO    ] No camera update needed
[2026-10-28 07:55:50,815.815 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:55:50,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:55:50,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:55:50,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:55:52,868.868 INFO    ] ================================================
[2026-10-28 07:55:52,883.883 INFO    ] Launching Daemon at Wed Oct 28 07:55:52 IST 2026
[2026-10-28 07:55:52,893.893 INFO    ] ================================================
[2026-10-28 07:55:53,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:55:53
[2026-10-28 07:55:54,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:55:54,350.350 INFO    ] Initializing speech engine...
[2026-10-28 07:55:54,356.356 INFO    ] 2026-10-28 07:55:54
[2026-10-28 07:55:54,602.602 INFO    ] 2026-10-28 07:55:54
[2026-10-28 07:55:54,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:55:54,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:55:54,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:55:55,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:55:55,295.295 INFO    ] time= 28/10/2026 07:55:55
[2026-10-28 07:55:55,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:55:55,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:55:55,568.568 INFO    ] No existing commands found in stream
[2026-10-28 07:56:00,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:56:00,607.607 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-28 07:56:03,259.259 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:56:03,262.262 INFO    ] Checking for system updates...
[2026-10-28 07:56:03,302.302 INFO    ] 200
[2026-10-28 07:56:03,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:56:03,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:56:03,369.369 INFO    ] No update needed
[2026-10-28 07:56:03,371.371 INFO    ] Checking for camera pi updates...
[2026-10-28 07:56:03,410.410 INFO    ] 200
[2026-10-28 07:56:03,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:56:03,462.462 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:56:03,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:56:03,545.545 INFO    ] No camera update needed
[2026-10-28 07:56:03,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:56:03,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:56:03,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:56:03,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:56:05,600.600 INFO    ] ================================================
[2026-10-28 07:56:05,615.615 INFO    ] Launching Daemon at Wed Oct 28 07:56:05 IST 2026
[2026-10-28 07:56:05,625.625 INFO    ] ================================================
[2026-10-28 07:56:06,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:56:06
[2026-10-28 07:56:06,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:56:07,080.080 INFO    ] Initializing speech engine...
[2026-10-28 07:56:07,087.087 INFO    ] 2026-10-28 07:56:07
[2026-10-28 07:56:07,347.347 INFO    ] 2026-10-28 07:56:07
[2026-10-28 07:56:07,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:56:07,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:56:07,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:56:08,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:56:08,099.099 INFO    ] time= 28/10/2026 07:56:08
[2026-10-28 07:56:08,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:56:08,200.200 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:56:08,327.327 INFO    ] No existing commands found in stream
[2026-10-28 07:56:13,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:56:13,348.348 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-28 07:56:17,058.058 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:56:17,061.061 INFO    ] Checking for system updates...
[2026-10-28 07:56:17,100.100 INFO    ] 200
[2026-10-28 07:56:17,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:56:17,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:56:17,163.163 INFO    ] No update needed
[2026-10-28 07:56:17,166.166 INFO    ] Checking for camera pi updates...
[2026-10-28 07:56:17,199.199 INFO    ] 200
[2026-10-28 07:56:17,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:56:17,241.241 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:56:17,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:56:17,343.343 INFO    ] No camera update needed
[2026-10-28 07:56:17,345.345 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:56:17,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:56:17,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:56:17,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:56:19,397.397 INFO    ] ================================================
[2026-10-28 07:56:19,412.412 INFO    ] Launching Daemon at Wed Oct 28 07:56:19 IST 2026
[2026-10-28 07:56:19,423.423 INFO    ] ================================================
[2026-10-28 07:56:20,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:56:20
[2026-10-28 07:56:20,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:56:20,870.870 INFO    ] Initializing speech engine...
[2026-10-28 07:56:20,879.879 INFO    ] 2026-10-28 07:56:20
[2026-10-28 07:56:21,140.140 INFO    ] 2026-10-28 07:56:21
[2026-10-28 07:56:21,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:56:21,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:56:21,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:56:21,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:56:21,724.724 INFO    ] time= 28/10/2026 07:56:21
[2026-10-28 07:56:21,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:56:21,738.738 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:56:21,875.875 INFO    ] No existing commands found in stream
[2026-10-28 07:56:26,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:56:26,903.903 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 07:56:29,440.440 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:56:29,442.442 INFO    ] Checking for system updates...
[2026-10-28 07:56:29,478.478 INFO    ] 200
[2026-10-28 07:56:29,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:56:29,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:56:29,541.541 INFO    ] No update needed
[2026-10-28 07:56:29,543.543 INFO    ] Checking for camera pi updates...
[2026-10-28 07:56:29,580.580 INFO    ] 200
[2026-10-28 07:56:29,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:56:29,624.624 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:56:29,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:56:29,714.714 INFO    ] No camera update needed
[2026-10-28 07:56:29,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:56:29,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:56:29,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:56:29,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:56:31,768.768 INFO    ] ================================================
[2026-10-28 07:56:31,784.784 INFO    ] Launching Daemon at Wed Oct 28 07:56:31 IST 2026
[2026-10-28 07:56:31,795.795 INFO    ] ================================================
[2026-10-28 07:56:32,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:56:32
[2026-10-28 07:56:33,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:56:33,493.493 INFO    ] Initializing speech engine...
[2026-10-28 07:56:33,498.498 INFO    ] 2026-10-28 07:56:33
[2026-10-28 07:56:33,771.771 INFO    ] 2026-10-28 07:56:33
[2026-10-28 07:56:33,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:56:34,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:56:34,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:56:34,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:56:34,504.504 INFO    ] time= 28/10/2026 07:56:34
[2026-10-28 07:56:34,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:56:34,571.571 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:56:34,715.715 INFO    ] No existing commands found in stream
[2026-10-28 07:56:39,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:56:39,736.736 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-28 07:56:43,297.297 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:56:43,300.300 INFO    ] Checking for system updates...
[2026-10-28 07:56:43,336.336 INFO    ] 200
[2026-10-28 07:56:43,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:56:43,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:56:43,394.394 INFO    ] No update needed
[2026-10-28 07:56:43,397.397 INFO    ] Checking for camera pi updates...
[2026-10-28 07:56:43,435.435 INFO    ] 200
[2026-10-28 07:56:43,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:56:43,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:56:43,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:56:43,573.573 INFO    ] No camera update needed
[2026-10-28 07:56:43,576.576 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:56:43,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:56:43,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:56:43,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:56:45,633.633 INFO    ] ================================================
[2026-10-28 07:56:45,648.648 INFO    ] Launching Daemon at Wed Oct 28 07:56:45 IST 2026
[2026-10-28 07:56:45,659.659 INFO    ] ================================================
[2026-10-28 07:56:46,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:56:46
[2026-10-28 07:56:46,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:56:47,085.085 INFO    ] Initializing speech engine...
[2026-10-28 07:56:47,110.110 INFO    ] 2026-10-28 07:56:47
[2026-10-28 07:56:47,386.386 INFO    ] 2026-10-28 07:56:47
[2026-10-28 07:56:47,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:56:47,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:56:47,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:56:47,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:56:47,925.925 INFO    ] time= 28/10/2026 07:56:47
[2026-10-28 07:56:47,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:56:48,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:56:48,177.177 INFO    ] No existing commands found in stream
[2026-10-28 07:56:53,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:56:53,198.198 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-28 07:56:55,203.203 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:56:55,205.205 INFO    ] Checking for system updates...
[2026-10-28 07:56:55,241.241 INFO    ] 200
[2026-10-28 07:56:55,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:56:55,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:56:55,304.304 INFO    ] No update needed
[2026-10-28 07:56:55,306.306 INFO    ] Checking for camera pi updates...
[2026-10-28 07:56:55,339.339 INFO    ] 200
[2026-10-28 07:56:55,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:56:55,386.386 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:56:55,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:56:55,491.491 INFO    ] No camera update needed
[2026-10-28 07:56:55,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:56:55,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:56:55,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:56:55,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:56:57,546.546 INFO    ] ================================================
[2026-10-28 07:56:57,565.565 INFO    ] Launching Daemon at Wed Oct 28 07:56:57 IST 2026
[2026-10-28 07:56:57,576.576 INFO    ] ================================================
[2026-10-28 07:56:58,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:56:58
[2026-10-28 07:56:58,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:56:59,033.033 INFO    ] Initializing speech engine...
[2026-10-28 07:56:59,041.041 INFO    ] 2026-10-28 07:56:59
[2026-10-28 07:56:59,291.291 INFO    ] 2026-10-28 07:56:59
[2026-10-28 07:56:59,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:56:59,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:56:59,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:56:59,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:56:59,844.844 INFO    ] time= 28/10/2026 07:56:59
[2026-10-28 07:56:59,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:56:59,870.870 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:56:59,999.999 INFO    ] No existing commands found in stream
[2026-10-28 07:57:05,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:57:05,017.017 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-28 07:57:06,594.594 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:57:06,596.596 INFO    ] Checking for system updates...
[2026-10-28 07:57:06,632.632 INFO    ] 200
[2026-10-28 07:57:06,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:57:06,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:57:06,689.689 INFO    ] No update needed
[2026-10-28 07:57:06,691.691 INFO    ] Checking for camera pi updates...
[2026-10-28 07:57:06,724.724 INFO    ] 200
[2026-10-28 07:57:06,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:57:06,771.771 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:57:06,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:57:06,858.858 INFO    ] No camera update needed
[2026-10-28 07:57:06,860.860 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:57:06,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:57:06,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:57:06,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:57:08,915.915 INFO    ] ================================================
[2026-10-28 07:57:08,930.930 INFO    ] Launching Daemon at Wed Oct 28 07:57:08 IST 2026
[2026-10-28 07:57:08,940.940 INFO    ] ================================================
[2026-10-28 07:57:09,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:57:09
[2026-10-28 07:57:10,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:57:10,388.388 INFO    ] Initializing speech engine...
[2026-10-28 07:57:10,396.396 INFO    ] 2026-10-28 07:57:10
[2026-10-28 07:57:10,672.672 INFO    ] 2026-10-28 07:57:10
[2026-10-28 07:57:10,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:57:11,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:57:11,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:57:11,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:57:11,279.279 INFO    ] time= 28/10/2026 07:57:11
[2026-10-28 07:57:11,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:57:11,297.297 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:57:11,496.496 INFO    ] No existing commands found in stream
[2026-10-28 07:57:16,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:57:16,516.516 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-28 07:57:19,299.299 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:57:19,302.302 INFO    ] Checking for system updates...
[2026-10-28 07:57:19,339.339 INFO    ] 200
[2026-10-28 07:57:19,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:57:19,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:57:19,406.406 INFO    ] No update needed
[2026-10-28 07:57:19,409.409 INFO    ] Checking for camera pi updates...
[2026-10-28 07:57:19,447.447 INFO    ] 200
[2026-10-28 07:57:19,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:57:19,490.490 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:57:19,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:57:19,611.611 INFO    ] No camera update needed
[2026-10-28 07:57:19,614.614 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:57:19,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:57:19,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:57:19,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:57:21,666.666 INFO    ] ================================================
[2026-10-28 07:57:21,681.681 INFO    ] Launching Daemon at Wed Oct 28 07:57:21 IST 2026
[2026-10-28 07:57:21,691.691 INFO    ] ================================================
[2026-10-28 07:57:22,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:57:22
[2026-10-28 07:57:23,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:57:23,328.328 INFO    ] Initializing speech engine...
[2026-10-28 07:57:23,336.336 INFO    ] 2026-10-28 07:57:23
[2026-10-28 07:57:23,615.615 INFO    ] 2026-10-28 07:57:23
[2026-10-28 07:57:23,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:57:23,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:57:23,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:57:24,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:57:24,179.179 INFO    ] time= 28/10/2026 07:57:24
[2026-10-28 07:57:24,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:57:24,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:57:24,345.345 INFO    ] No existing commands found in stream
[2026-10-28 07:57:29,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:57:29,373.373 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 07:57:31,377.377 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:57:31,380.380 INFO    ] Checking for system updates...
[2026-10-28 07:57:31,420.420 INFO    ] 200
[2026-10-28 07:57:31,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:57:31,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:57:31,477.477 INFO    ] No update needed
[2026-10-28 07:57:31,479.479 INFO    ] Checking for camera pi updates...
[2026-10-28 07:57:31,516.516 INFO    ] 200
[2026-10-28 07:57:31,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:57:31,563.563 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:57:31,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:57:31,649.649 INFO    ] No camera update needed
[2026-10-28 07:57:31,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:57:31,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:57:31,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:57:31,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:57:33,705.705 INFO    ] ================================================
[2026-10-28 07:57:33,721.721 INFO    ] Launching Daemon at Wed Oct 28 07:57:33 IST 2026
[2026-10-28 07:57:33,732.732 INFO    ] ================================================
[2026-10-28 07:57:34,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:57:34
[2026-10-28 07:57:35,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:57:35,397.397 INFO    ] Initializing speech engine...
[2026-10-28 07:57:35,409.409 INFO    ] 2026-10-28 07:57:35
[2026-10-28 07:57:35,681.681 INFO    ] 2026-10-28 07:57:35
[2026-10-28 07:57:35,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:57:35,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:57:36,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:57:36,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:57:36,247.247 INFO    ] time= 28/10/2026 07:57:36
[2026-10-28 07:57:36,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:57:36,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:57:36,426.426 INFO    ] No existing commands found in stream
[2026-10-28 07:57:41,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:57:41,460.460 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-28 07:57:45,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:57:45,424.424 INFO    ] Checking for system updates...
[2026-10-28 07:57:45,461.461 INFO    ] 200
[2026-10-28 07:57:45,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:57:45,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:57:45,520.520 INFO    ] No update needed
[2026-10-28 07:57:45,523.523 INFO    ] Checking for camera pi updates...
[2026-10-28 07:57:45,556.556 INFO    ] 200
[2026-10-28 07:57:45,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:57:45,599.599 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:57:45,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:57:45,802.802 INFO    ] No camera update needed
[2026-10-28 07:57:45,804.804 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:57:45,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:57:45,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:57:45,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:57:47,857.857 INFO    ] ================================================
[2026-10-28 07:57:47,872.872 INFO    ] Launching Daemon at Wed Oct 28 07:57:47 IST 2026
[2026-10-28 07:57:47,882.882 INFO    ] ================================================
[2026-10-28 07:57:48,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:57:48
[2026-10-28 07:57:49,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:57:49,341.341 INFO    ] Initializing speech engine...
[2026-10-28 07:57:49,350.350 INFO    ] 2026-10-28 07:57:49
[2026-10-28 07:57:49,608.608 INFO    ] 2026-10-28 07:57:49
[2026-10-28 07:57:49,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:57:49,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:57:49,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:57:50,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:57:50,150.150 INFO    ] time= 28/10/2026 07:57:50
[2026-10-28 07:57:50,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:57:50,176.176 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:57:50,328.328 INFO    ] No existing commands found in stream
[2026-10-28 07:57:55,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:57:55,361.361 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-28 07:57:59,041.041 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:57:59,043.043 INFO    ] Checking for system updates...
[2026-10-28 07:57:59,079.079 INFO    ] 200
[2026-10-28 07:57:59,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:57:59,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:57:59,135.135 INFO    ] No update needed
[2026-10-28 07:57:59,137.137 INFO    ] Checking for camera pi updates...
[2026-10-28 07:57:59,171.171 INFO    ] 200
[2026-10-28 07:57:59,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:57:59,217.217 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:57:59,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:57:59,315.315 INFO    ] No camera update needed
[2026-10-28 07:57:59,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:57:59,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:57:59,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:57:59,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:58:01,370.370 INFO    ] ================================================
[2026-10-28 07:58:01,386.386 INFO    ] Launching Daemon at Wed Oct 28 07:58:01 IST 2026
[2026-10-28 07:58:01,397.397 INFO    ] ================================================
[2026-10-28 07:58:01,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:58:01
[2026-10-28 07:58:02,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:58:03,168.168 INFO    ] Initializing speech engine...
[2026-10-28 07:58:03,180.180 INFO    ] 2026-10-28 07:58:03
[2026-10-28 07:58:03,467.467 INFO    ] 2026-10-28 07:58:03
[2026-10-28 07:58:03,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:58:03,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:58:03,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:58:03,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:58:04,037.037 INFO    ] time= 28/10/2026 07:58:03
[2026-10-28 07:58:04,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:58:04,124.124 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:58:04,227.227 INFO    ] No existing commands found in stream
[2026-10-28 07:58:09,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:58:09,245.245 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-28 07:58:12,434.434 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 07:58:12,436.436 INFO    ] Checking for system updates...
[2026-10-28 07:58:12,473.473 INFO    ] 200
[2026-10-28 07:58:12,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:58:12,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:58:12,539.539 INFO    ] No update needed
[2026-10-28 07:58:12,542.542 INFO    ] Checking for camera pi updates...
[2026-10-28 07:58:12,580.580 INFO    ] 200
[2026-10-28 07:58:12,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:58:12,630.630 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:58:12,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:58:12,723.723 INFO    ] No camera update needed
[2026-10-28 07:58:12,725.725 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:58:12,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:58:12,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:58:12,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:58:14,778.778 INFO    ] ================================================
[2026-10-28 07:58:14,793.793 INFO    ] Launching Daemon at Wed Oct 28 07:58:14 IST 2026
[2026-10-28 07:58:14,804.804 INFO    ] ================================================
[2026-10-28 07:58:15,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:58:15
[2026-10-28 07:58:15,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:58:16,223.223 INFO    ] Initializing speech engine...
[2026-10-28 07:58:16,231.231 INFO    ] 2026-10-28 07:58:16
[2026-10-28 07:58:16,482.482 INFO    ] 2026-10-28 07:58:16
[2026-10-28 07:58:16,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:58:16,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:58:16,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:58:17,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:58:17,046.046 INFO    ] time= 28/10/2026 07:58:17
[2026-10-28 07:58:17,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:58:17,091.091 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:58:17,204.204 INFO    ] No existing commands found in stream
[2026-10-28 07:58:22,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:58:22,231.231 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-28 07:58:25,404.404 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 07:58:25,407.407 INFO    ] Checking for system updates...
[2026-10-28 07:58:25,442.442 INFO    ] 200
[2026-10-28 07:58:25,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:58:25,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:58:25,506.506 INFO    ] No update needed
[2026-10-28 07:58:25,508.508 INFO    ] Checking for camera pi updates...
[2026-10-28 07:58:25,546.546 INFO    ] 200
[2026-10-28 07:58:25,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:58:25,601.601 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:58:25,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:58:25,700.700 INFO    ] No camera update needed
[2026-10-28 07:58:25,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:58:25,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:58:25,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:58:25,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:58:27,757.757 INFO    ] ================================================
[2026-10-28 07:58:27,778.778 INFO    ] Launching Daemon at Wed Oct 28 07:58:27 IST 2026
[2026-10-28 07:58:27,789.789 INFO    ] ================================================
[2026-10-28 07:58:28,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:58:28
[2026-10-28 07:58:28,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:58:29,242.242 INFO    ] Initializing speech engine...
[2026-10-28 07:58:29,263.263 INFO    ] 2026-10-28 07:58:29
[2026-10-28 07:58:29,547.547 INFO    ] 2026-10-28 07:58:29
[2026-10-28 07:58:29,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:58:29,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:58:29,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:58:30,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:58:30,055.055 INFO    ] time= 28/10/2026 07:58:30
[2026-10-28 07:58:30,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:58:30,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:58:30,303.303 INFO    ] No existing commands found in stream
[2026-10-28 07:58:35,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:58:35,332.332 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-28 07:58:36,965.965 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:58:36,967.967 INFO    ] Checking for system updates...
[2026-10-28 07:58:37,003.003 INFO    ] 200
[2026-10-28 07:58:37,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:58:37,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:58:37,060.060 INFO    ] No update needed
[2026-10-28 07:58:37,063.063 INFO    ] Checking for camera pi updates...
[2026-10-28 07:58:37,096.096 INFO    ] 200
[2026-10-28 07:58:37,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:58:37,139.139 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:58:37,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:58:37,225.225 INFO    ] No camera update needed
[2026-10-28 07:58:37,227.227 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:58:37,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:58:37,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:58:37,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:58:39,282.282 INFO    ] ================================================
[2026-10-28 07:58:39,297.297 INFO    ] Launching Daemon at Wed Oct 28 07:58:39 IST 2026
[2026-10-28 07:58:39,307.307 INFO    ] ================================================
[2026-10-28 07:58:39,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:58:39
[2026-10-28 07:58:40,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:58:40,718.718 INFO    ] Initializing speech engine...
[2026-10-28 07:58:40,733.733 INFO    ] 2026-10-28 07:58:40
[2026-10-28 07:58:40,993.993 INFO    ] 2026-10-28 07:58:40
[2026-10-28 07:58:41,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:58:41,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:58:41,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:58:41,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:58:41,549.549 INFO    ] time= 28/10/2026 07:58:41
[2026-10-28 07:58:41,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:58:41,573.573 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:58:41,765.765 INFO    ] No existing commands found in stream
[2026-10-28 07:58:46,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:58:46,792.792 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 07:58:50,400.400 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:58:50,403.403 INFO    ] Checking for system updates...
[2026-10-28 07:58:50,442.442 INFO    ] 200
[2026-10-28 07:58:50,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:58:50,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:58:50,499.499 INFO    ] No update needed
[2026-10-28 07:58:50,501.501 INFO    ] Checking for camera pi updates...
[2026-10-28 07:58:50,539.539 INFO    ] 200
[2026-10-28 07:58:50,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:58:50,581.581 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:58:50,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:58:50,665.665 INFO    ] No camera update needed
[2026-10-28 07:58:50,670.670 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:58:50,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:58:50,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:58:50,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:58:52,726.726 INFO    ] ================================================
[2026-10-28 07:58:52,741.741 INFO    ] Launching Daemon at Wed Oct 28 07:58:52 IST 2026
[2026-10-28 07:58:52,751.751 INFO    ] ================================================
[2026-10-28 07:58:53,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:58:53
[2026-10-28 07:58:53,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:58:54,202.202 INFO    ] Initializing speech engine...
[2026-10-28 07:58:54,209.209 INFO    ] 2026-10-28 07:58:54
[2026-10-28 07:58:54,470.470 INFO    ] 2026-10-28 07:58:54
[2026-10-28 07:58:54,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:58:54,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:58:54,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:58:55,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:58:55,015.015 INFO    ] time= 28/10/2026 07:58:55
[2026-10-28 07:58:55,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:58:55,061.061 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:58:55,167.167 INFO    ] No existing commands found in stream
[2026-10-28 07:59:00,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:59:00,191.191 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-28 07:59:01,746.746 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 07:59:01,749.749 INFO    ] Checking for system updates...
[2026-10-28 07:59:01,799.799 INFO    ] 200
[2026-10-28 07:59:01,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:59:01,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:59:01,875.875 INFO    ] No update needed
[2026-10-28 07:59:01,879.879 INFO    ] Checking for camera pi updates...
[2026-10-28 07:59:01,923.923 INFO    ] 200
[2026-10-28 07:59:01,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:59:01,989.989 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:59:02,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:59:02,113.113 INFO    ] No camera update needed
[2026-10-28 07:59:02,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:59:02,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:59:02,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:59:02,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:59:04,177.177 INFO    ] ================================================
[2026-10-28 07:59:04,193.193 INFO    ] Launching Daemon at Wed Oct 28 07:59:04 IST 2026
[2026-10-28 07:59:04,204.204 INFO    ] ================================================
[2026-10-28 07:59:04,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:59:04
[2026-10-28 07:59:05,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:59:05,651.651 INFO    ] Initializing speech engine...
[2026-10-28 07:59:05,656.656 INFO    ] 2026-10-28 07:59:05
[2026-10-28 07:59:05,906.906 INFO    ] 2026-10-28 07:59:05
[2026-10-28 07:59:05,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:59:06,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:59:06,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:59:06,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:59:06,476.476 INFO    ] time= 28/10/2026 07:59:06
[2026-10-28 07:59:06,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:59:06,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:59:06,632.632 INFO    ] No existing commands found in stream
[2026-10-28 07:59:11,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:59:11,647.647 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-28 07:59:13,637.637 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 07:59:13,639.639 INFO    ] Checking for system updates...
[2026-10-28 07:59:13,675.675 INFO    ] 200
[2026-10-28 07:59:13,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:59:13,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:59:13,731.731 INFO    ] No update needed
[2026-10-28 07:59:13,734.734 INFO    ] Checking for camera pi updates...
[2026-10-28 07:59:13,767.767 INFO    ] 200
[2026-10-28 07:59:13,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:59:13,809.809 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:59:13,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:59:13,891.891 INFO    ] No camera update needed
[2026-10-28 07:59:13,894.894 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:59:13,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:59:13,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:59:13,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:59:15,948.948 INFO    ] ================================================
[2026-10-28 07:59:15,963.963 INFO    ] Launching Daemon at Wed Oct 28 07:59:15 IST 2026
[2026-10-28 07:59:15,975.975 INFO    ] ================================================
[2026-10-28 07:59:16,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:59:16
[2026-10-28 07:59:17,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:59:17,426.426 INFO    ] Initializing speech engine...
[2026-10-28 07:59:17,437.437 INFO    ] 2026-10-28 07:59:17
[2026-10-28 07:59:17,698.698 INFO    ] 2026-10-28 07:59:17
[2026-10-28 07:59:17,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:59:18,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:59:18,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:59:18,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:59:18,256.256 INFO    ] time= 28/10/2026 07:59:18
[2026-10-28 07:59:18,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:59:18,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:59:18,449.449 INFO    ] No existing commands found in stream
[2026-10-28 07:59:23,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:59:23,477.477 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-28 07:59:27,979.979 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 07:59:27,982.982 INFO    ] Checking for system updates...
[2026-10-28 07:59:28,023.023 INFO    ] 200
[2026-10-28 07:59:28,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:59:28,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:59:28,087.087 INFO    ] No update needed
[2026-10-28 07:59:28,089.089 INFO    ] Checking for camera pi updates...
[2026-10-28 07:59:28,123.123 INFO    ] 200
[2026-10-28 07:59:28,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:59:28,170.170 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:59:28,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:59:28,254.254 INFO    ] No camera update needed
[2026-10-28 07:59:28,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:59:28,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:59:28,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:59:28,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:59:30,311.311 INFO    ] ================================================
[2026-10-28 07:59:30,327.327 INFO    ] Launching Daemon at Wed Oct 28 07:59:30 IST 2026
[2026-10-28 07:59:30,338.338 INFO    ] ================================================
[2026-10-28 07:59:30,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:59:30
[2026-10-28 07:59:31,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:59:31,914.914 INFO    ] Initializing speech engine...
[2026-10-28 07:59:31,930.930 INFO    ] 2026-10-28 07:59:31
[2026-10-28 07:59:32,202.202 INFO    ] 2026-10-28 07:59:32
[2026-10-28 07:59:32,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:59:32,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:59:32,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:59:32,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:59:32,699.699 INFO    ] time= 28/10/2026 07:59:32
[2026-10-28 07:59:32,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:59:32,795.795 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:59:32,934.934 INFO    ] No existing commands found in stream
[2026-10-28 07:59:37,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:59:37,956.956 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 07:59:40,808.808 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:59:40,810.810 INFO    ] Checking for system updates...
[2026-10-28 07:59:40,847.847 INFO    ] 200
[2026-10-28 07:59:40,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:59:40,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:59:40,925.925 INFO    ] No update needed
[2026-10-28 07:59:40,932.932 INFO    ] Checking for camera pi updates...
[2026-10-28 07:59:40,967.967 INFO    ] 200
[2026-10-28 07:59:40,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:59:41,016.016 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:59:41,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 07:59:41,073.073 INFO    ] No camera update needed
[2026-10-28 07:59:41,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:59:41,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:59:41,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:59:41,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:59:43,135.135 INFO    ] ================================================
[2026-10-28 07:59:43,152.152 INFO    ] Launching Daemon at Wed Oct 28 07:59:43 IST 2026
[2026-10-28 07:59:43,163.163 INFO    ] ================================================
[2026-10-28 07:59:43,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:59:43
[2026-10-28 07:59:44,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:59:44,614.614 INFO    ] Initializing speech engine...
[2026-10-28 07:59:44,623.623 INFO    ] 2026-10-28 07:59:44
[2026-10-28 07:59:44,873.873 INFO    ] 2026-10-28 07:59:44
[2026-10-28 07:59:44,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:59:45,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:59:45,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:59:45,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:59:45,427.427 INFO    ] time= 28/10/2026 07:59:45
[2026-10-28 07:59:45,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:59:45,453.453 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:59:45,578.578 INFO    ] No existing commands found in stream
[2026-10-28 07:59:50,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 07:59:50,595.595 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 07:59:52,341.341 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 07:59:52,344.344 INFO    ] Checking for system updates...
[2026-10-28 07:59:52,381.381 INFO    ] 200
[2026-10-28 07:59:52,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:59:52,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:59:52,438.438 INFO    ] No update needed
[2026-10-28 07:59:52,441.441 INFO    ] Checking for camera pi updates...
[2026-10-28 07:59:52,474.474 INFO    ] 200
[2026-10-28 07:59:52,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 07:59:52,517.517 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 07:59:52,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 07:59:52,701.701 INFO    ] No camera update needed
[2026-10-28 07:59:52,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-28 07:59:52,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 07:59:52,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 07:59:52,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 07:59:54,758.758 INFO    ] ================================================
[2026-10-28 07:59:54,776.776 INFO    ] Launching Daemon at Wed Oct 28 07:59:54 IST 2026
[2026-10-28 07:59:54,788.788 INFO    ] ================================================
[2026-10-28 07:59:55,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 07:59:55
[2026-10-28 07:59:55,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 07:59:56,237.237 INFO    ] Initializing speech engine...
[2026-10-28 07:59:56,244.244 INFO    ] 2026-10-28 07:59:56
[2026-10-28 07:59:56,545.545 INFO    ] 2026-10-28 07:59:56
[2026-10-28 07:59:56,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 07:59:56,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 07:59:56,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 07:59:57,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 07:59:57,060.060 INFO    ] time= 28/10/2026 07:59:57
[2026-10-28 07:59:57,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 07:59:57,158.158 INFO    ] Checking for existing commands in stream...
[2026-10-28 07:59:57,259.259 INFO    ] No existing commands found in stream
[2026-10-28 08:00:02,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:00:02,276.276 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 08:00:07,710.710 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:00:07,713.713 INFO    ] Checking for system updates...
[2026-10-28 08:00:07,753.753 INFO    ] 200
[2026-10-28 08:00:07,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:00:07,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:00:07,810.810 INFO    ] No update needed
[2026-10-28 08:00:07,812.812 INFO    ] Checking for camera pi updates...
[2026-10-28 08:00:07,846.846 INFO    ] 200
[2026-10-28 08:00:07,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:00:07,893.893 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:00:07,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:00:07,990.990 INFO    ] No camera update needed
[2026-10-28 08:00:07,992.992 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:00:07,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:00:08,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:00:08,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:00:10,048.048 INFO    ] ================================================
[2026-10-28 08:00:10,065.065 INFO    ] Launching Daemon at Wed Oct 28 08:00:10 IST 2026
[2026-10-28 08:00:10,076.076 INFO    ] ================================================
[2026-10-28 08:00:10,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:00:10
[2026-10-28 08:00:11,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:00:11,503.503 INFO    ] Initializing speech engine...
[2026-10-28 08:00:11,512.512 INFO    ] 2026-10-28 08:00:11
[2026-10-28 08:00:11,760.760 INFO    ] 2026-10-28 08:00:11
[2026-10-28 08:00:11,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:00:12,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:00:12,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:00:12,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:00:12,319.319 INFO    ] time= 28/10/2026 08:00:12
[2026-10-28 08:00:12,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:00:12,359.359 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:00:12,491.491 INFO    ] No existing commands found in stream
[2026-10-28 08:00:17,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:00:17,519.519 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-28 08:00:19,467.467 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:00:19,470.470 INFO    ] Checking for system updates...
[2026-10-28 08:00:19,507.507 INFO    ] 200
[2026-10-28 08:00:19,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:00:19,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:00:19,566.566 INFO    ] No update needed
[2026-10-28 08:00:19,569.569 INFO    ] Checking for camera pi updates...
[2026-10-28 08:00:19,607.607 INFO    ] 200
[2026-10-28 08:00:19,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:00:19,653.653 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:00:19,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:00:19,752.752 INFO    ] No camera update needed
[2026-10-28 08:00:19,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:00:19,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:00:19,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:00:19,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:00:21,812.812 INFO    ] ================================================
[2026-10-28 08:00:21,827.827 INFO    ] Launching Daemon at Wed Oct 28 08:00:21 IST 2026
[2026-10-28 08:00:21,837.837 INFO    ] ================================================
[2026-10-28 08:00:22,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:00:22
[2026-10-28 08:00:23,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:00:23,299.299 INFO    ] Initializing speech engine...
[2026-10-28 08:00:23,307.307 INFO    ] 2026-10-28 08:00:23
[2026-10-28 08:00:23,565.565 INFO    ] 2026-10-28 08:00:23
[2026-10-28 08:00:23,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:00:23,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:00:23,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:00:24,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:00:24,108.108 INFO    ] time= 28/10/2026 08:00:24
[2026-10-28 08:00:24,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:00:24,154.154 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:00:24,356.356 INFO    ] No existing commands found in stream
[2026-10-28 08:00:29,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:00:29,376.376 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-28 08:00:32,876.876 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:00:32,879.879 INFO    ] Checking for system updates...
[2026-10-28 08:00:32,917.917 INFO    ] 200
[2026-10-28 08:00:32,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:00:32,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:00:32,978.978 INFO    ] No update needed
[2026-10-28 08:00:32,981.981 INFO    ] Checking for camera pi updates...
[2026-10-28 08:00:33,020.020 INFO    ] 200
[2026-10-28 08:00:33,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:00:33,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:00:33,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:00:33,179.179 INFO    ] No camera update needed
[2026-10-28 08:00:33,182.182 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:00:33,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:00:33,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:00:33,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:00:35,241.241 INFO    ] ================================================
[2026-10-28 08:00:35,258.258 INFO    ] Launching Daemon at Wed Oct 28 08:00:35 IST 2026
[2026-10-28 08:00:35,271.271 INFO    ] ================================================
[2026-10-28 08:00:35,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:00:35
[2026-10-28 08:00:36,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:00:36,712.712 INFO    ] Initializing speech engine...
[2026-10-28 08:00:36,735.735 INFO    ] 2026-10-28 08:00:36
[2026-10-28 08:00:36,990.990 INFO    ] 2026-10-28 08:00:36
[2026-10-28 08:00:37,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:00:37,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:00:37,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:00:37,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:00:37,588.588 INFO    ] time= 28/10/2026 08:00:37
[2026-10-28 08:00:37,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:00:37,604.604 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:00:37,761.761 INFO    ] No existing commands found in stream
[2026-10-28 08:00:42,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:00:42,796.796 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-28 08:00:46,521.521 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:00:46,524.524 INFO    ] Checking for system updates...
[2026-10-28 08:00:46,560.560 INFO    ] 200
[2026-10-28 08:00:46,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:00:46,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:00:46,619.619 INFO    ] No update needed
[2026-10-28 08:00:46,622.622 INFO    ] Checking for camera pi updates...
[2026-10-28 08:00:46,660.660 INFO    ] 200
[2026-10-28 08:00:46,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:00:46,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:00:46,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:00:46,802.802 INFO    ] No camera update needed
[2026-10-28 08:00:46,804.804 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:00:46,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:00:46,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:00:46,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:00:48,862.862 INFO    ] ================================================
[2026-10-28 08:00:48,877.877 INFO    ] Launching Daemon at Wed Oct 28 08:00:48 IST 2026
[2026-10-28 08:00:48,889.889 INFO    ] ================================================
[2026-10-28 08:00:49,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:00:49
[2026-10-28 08:00:50,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:00:50,304.304 INFO    ] Initializing speech engine...
[2026-10-28 08:00:50,318.318 INFO    ] 2026-10-28 08:00:50
[2026-10-28 08:00:50,580.580 INFO    ] 2026-10-28 08:00:50
[2026-10-28 08:00:50,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:00:50,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:00:50,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:00:51,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:00:51,133.133 INFO    ] time= 28/10/2026 08:00:51
[2026-10-28 08:00:51,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:00:51,158.158 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:00:51,276.276 INFO    ] No existing commands found in stream
[2026-10-28 08:00:56,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:00:56,300.300 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-28 08:01:00,049.049 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:01:00,052.052 INFO    ] Checking for system updates...
[2026-10-28 08:01:00,088.088 INFO    ] 200
[2026-10-28 08:01:00,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:01:00,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:01:00,147.147 INFO    ] No update needed
[2026-10-28 08:01:00,150.150 INFO    ] Checking for camera pi updates...
[2026-10-28 08:01:00,184.184 INFO    ] 200
[2026-10-28 08:01:00,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:01:00,228.228 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:01:00,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:01:00,311.311 INFO    ] No camera update needed
[2026-10-28 08:01:00,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:01:00,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:01:00,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:01:00,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:01:02,391.391 INFO    ] ================================================
[2026-10-28 08:01:02,416.416 INFO    ] Launching Daemon at Wed Oct 28 08:01:02 IST 2026
[2026-10-28 08:01:02,438.438 INFO    ] ================================================
[2026-10-28 08:01:03,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:01:03
[2026-10-28 08:01:03,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:01:03,919.919 INFO    ] Initializing speech engine...
[2026-10-28 08:01:03,925.925 INFO    ] 2026-10-28 08:01:03
[2026-10-28 08:01:04,213.213 INFO    ] 2026-10-28 08:01:04
[2026-10-28 08:01:04,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:01:04,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:01:04,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:01:04,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:01:04,839.839 INFO    ] time= 28/10/2026 08:01:04
[2026-10-28 08:01:04,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:01:04,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:01:04,984.984 INFO    ] No existing commands found in stream
[2026-10-28 08:01:10,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:01:10,007.007 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-28 08:01:12,065.065 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:01:12,068.068 INFO    ] Checking for system updates...
[2026-10-28 08:01:12,103.103 INFO    ] 200
[2026-10-28 08:01:12,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:01:12,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:01:12,164.164 INFO    ] No update needed
[2026-10-28 08:01:12,166.166 INFO    ] Checking for camera pi updates...
[2026-10-28 08:01:12,203.203 INFO    ] 200
[2026-10-28 08:01:12,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:01:12,245.245 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:01:12,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:01:12,332.332 INFO    ] No camera update needed
[2026-10-28 08:01:12,334.334 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:01:12,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:01:12,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:01:12,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:01:14,389.389 INFO    ] ================================================
[2026-10-28 08:01:14,405.405 INFO    ] Launching Daemon at Wed Oct 28 08:01:14 IST 2026
[2026-10-28 08:01:14,416.416 INFO    ] ================================================
[2026-10-28 08:01:15,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:01:15
[2026-10-28 08:01:15,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:01:15,989.989 INFO    ] Initializing speech engine...
[2026-10-28 08:01:15,998.998 INFO    ] 2026-10-28 08:01:15
[2026-10-28 08:01:16,270.270 INFO    ] 2026-10-28 08:01:16
[2026-10-28 08:01:16,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:01:16,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:01:16,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:01:16,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:01:16,804.804 INFO    ] time= 28/10/2026 08:01:16
[2026-10-28 08:01:16,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:01:16,851.851 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:01:16,990.990 INFO    ] No existing commands found in stream
[2026-10-28 08:01:22,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:01:22,018.018 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 08:01:23,982.982 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:01:23,985.985 INFO    ] Checking for system updates...
[2026-10-28 08:01:24,020.020 INFO    ] 200
[2026-10-28 08:01:24,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:01:24,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:01:24,078.078 INFO    ] No update needed
[2026-10-28 08:01:24,081.081 INFO    ] Checking for camera pi updates...
[2026-10-28 08:01:24,118.118 INFO    ] 200
[2026-10-28 08:01:24,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:01:24,160.160 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:01:24,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:01:24,248.248 INFO    ] No camera update needed
[2026-10-28 08:01:24,251.251 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:01:24,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:01:24,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:01:24,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:01:26,305.305 INFO    ] ================================================
[2026-10-28 08:01:26,320.320 INFO    ] Launching Daemon at Wed Oct 28 08:01:26 IST 2026
[2026-10-28 08:01:26,331.331 INFO    ] ================================================
[2026-10-28 08:01:26,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:01:26
[2026-10-28 08:01:27,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:01:27,735.735 INFO    ] Initializing speech engine...
[2026-10-28 08:01:27,741.741 INFO    ] 2026-10-28 08:01:27
[2026-10-28 08:01:28,033.033 INFO    ] 2026-10-28 08:01:27
[2026-10-28 08:01:28,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:01:28,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:01:28,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:01:28,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:01:28,656.656 INFO    ] time= 28/10/2026 08:01:28
[2026-10-28 08:01:28,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:01:28,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:01:28,826.826 INFO    ] No existing commands found in stream
[2026-10-28 08:01:33,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:01:33,845.845 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-28 08:01:34,731.731 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:01:34,733.733 INFO    ] Checking for system updates...
[2026-10-28 08:01:34,769.769 INFO    ] 200
[2026-10-28 08:01:34,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:01:34,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:01:34,826.826 INFO    ] No update needed
[2026-10-28 08:01:34,828.828 INFO    ] Checking for camera pi updates...
[2026-10-28 08:01:34,866.866 INFO    ] 200
[2026-10-28 08:01:34,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:01:34,909.909 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:01:34,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:01:35,001.001 INFO    ] No camera update needed
[2026-10-28 08:01:35,004.004 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:01:35,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:01:35,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:01:35,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:01:37,057.057 INFO    ] ================================================
[2026-10-28 08:01:37,073.073 INFO    ] Launching Daemon at Wed Oct 28 08:01:37 IST 2026
[2026-10-28 08:01:37,083.083 INFO    ] ================================================
[2026-10-28 08:01:37,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:01:37
[2026-10-28 08:01:38,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:01:38,669.669 INFO    ] Initializing speech engine...
[2026-10-28 08:01:38,676.676 INFO    ] 2026-10-28 08:01:38
[2026-10-28 08:01:38,965.965 INFO    ] 2026-10-28 08:01:38
[2026-10-28 08:01:39,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:01:39,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:01:39,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:01:39,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:01:39,652.652 INFO    ] time= 28/10/2026 08:01:39
[2026-10-28 08:01:39,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:01:39,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:01:39,894.894 INFO    ] No existing commands found in stream
[2026-10-28 08:01:44,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:01:44,926.926 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-28 08:01:47,866.866 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:01:47,868.868 INFO    ] Checking for system updates...
[2026-10-28 08:01:47,905.905 INFO    ] 200
[2026-10-28 08:01:47,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:01:47,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:01:47,970.970 INFO    ] No update needed
[2026-10-28 08:01:47,972.972 INFO    ] Checking for camera pi updates...
[2026-10-28 08:01:48,006.006 INFO    ] 200
[2026-10-28 08:01:48,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:01:48,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:01:48,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:01:48,131.131 INFO    ] No camera update needed
[2026-10-28 08:01:48,134.134 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:01:48,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:01:48,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:01:48,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:01:50,187.187 INFO    ] ================================================
[2026-10-28 08:01:50,203.203 INFO    ] Launching Daemon at Wed Oct 28 08:01:50 IST 2026
[2026-10-28 08:01:50,215.215 INFO    ] ================================================
[2026-10-28 08:01:50,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:01:50
[2026-10-28 08:01:51,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:01:51,640.640 INFO    ] Initializing speech engine...
[2026-10-28 08:01:51,650.650 INFO    ] 2026-10-28 08:01:51
[2026-10-28 08:01:51,896.896 INFO    ] 2026-10-28 08:01:51
[2026-10-28 08:01:51,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:01:52,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:01:52,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:01:52,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:01:52,452.452 INFO    ] time= 28/10/2026 08:01:52
[2026-10-28 08:01:52,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:01:52,476.476 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:01:52,591.591 INFO    ] No existing commands found in stream
[2026-10-28 08:01:57,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:01:57,618.618 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-28 08:01:59,921.921 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:01:59,924.924 INFO    ] Checking for system updates...
[2026-10-28 08:01:59,959.959 INFO    ] 200
[2026-10-28 08:01:59,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:02:00,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:02:00,017.017 INFO    ] No update needed
[2026-10-28 08:02:00,019.019 INFO    ] Checking for camera pi updates...
[2026-10-28 08:02:00,053.053 INFO    ] 200
[2026-10-28 08:02:00,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:02:00,097.097 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:02:00,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:02:00,307.307 INFO    ] No camera update needed
[2026-10-28 08:02:00,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:02:00,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:02:00,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:02:00,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:02:02,384.384 INFO    ] ================================================
[2026-10-28 08:02:02,406.406 INFO    ] Launching Daemon at Wed Oct 28 08:02:02 IST 2026
[2026-10-28 08:02:02,421.421 INFO    ] ================================================
[2026-10-28 08:02:03,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:02:03
[2026-10-28 08:02:03,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:02:04,089.089 INFO    ] Initializing speech engine...
[2026-10-28 08:02:04,103.103 INFO    ] 2026-10-28 08:02:04
[2026-10-28 08:02:04,382.382 INFO    ] 2026-10-28 08:02:04
[2026-10-28 08:02:04,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:02:04,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:02:04,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:02:04,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:02:04,947.947 INFO    ] time= 28/10/2026 08:02:04
[2026-10-28 08:02:04,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:02:04,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:02:05,167.167 INFO    ] No existing commands found in stream
[2026-10-28 08:02:10,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:02:10,201.201 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 08:02:13,132.132 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:02:13,136.136 INFO    ] Checking for system updates...
[2026-10-28 08:02:13,172.172 INFO    ] 200
[2026-10-28 08:02:13,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:02:13,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:02:13,232.232 INFO    ] No update needed
[2026-10-28 08:02:13,235.235 INFO    ] Checking for camera pi updates...
[2026-10-28 08:02:13,269.269 INFO    ] 200
[2026-10-28 08:02:13,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:02:13,318.318 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:02:13,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:02:13,398.398 INFO    ] No camera update needed
[2026-10-28 08:02:13,400.400 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:02:13,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:02:13,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:02:13,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:02:15,452.452 INFO    ] ================================================
[2026-10-28 08:02:15,468.468 INFO    ] Launching Daemon at Wed Oct 28 08:02:15 IST 2026
[2026-10-28 08:02:15,480.480 INFO    ] ================================================
[2026-10-28 08:02:16,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:02:16
[2026-10-28 08:02:16,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:02:16,896.896 INFO    ] Initializing speech engine...
[2026-10-28 08:02:16,919.919 INFO    ] 2026-10-28 08:02:16
[2026-10-28 08:02:17,175.175 INFO    ] 2026-10-28 08:02:17
[2026-10-28 08:02:17,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:02:17,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:02:17,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:02:17,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:02:17,746.746 INFO    ] time= 28/10/2026 08:02:17
[2026-10-28 08:02:17,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:02:17,777.777 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:02:17,930.930 INFO    ] No existing commands found in stream
[2026-10-28 08:02:22,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:02:22,958.958 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-28 08:02:24,303.303 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:02:24,306.306 INFO    ] Checking for system updates...
[2026-10-28 08:02:24,341.341 INFO    ] 200
[2026-10-28 08:02:24,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:02:24,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:02:24,398.398 INFO    ] No update needed
[2026-10-28 08:02:24,401.401 INFO    ] Checking for camera pi updates...
[2026-10-28 08:02:24,435.435 INFO    ] 200
[2026-10-28 08:02:24,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:02:24,483.483 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:02:24,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:02:24,563.563 INFO    ] No camera update needed
[2026-10-28 08:02:24,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:02:24,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:02:24,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:02:24,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:02:26,618.618 INFO    ] ================================================
[2026-10-28 08:02:26,634.634 INFO    ] Launching Daemon at Wed Oct 28 08:02:26 IST 2026
[2026-10-28 08:02:26,645.645 INFO    ] ================================================
[2026-10-28 08:02:27,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:02:27
[2026-10-28 08:02:27,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:02:28,055.055 INFO    ] Initializing speech engine...
[2026-10-28 08:02:28,075.075 INFO    ] 2026-10-28 08:02:28
[2026-10-28 08:02:28,324.324 INFO    ] 2026-10-28 08:02:28
[2026-10-28 08:02:28,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:02:28,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:02:28,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:02:28,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:02:28,894.894 INFO    ] time= 28/10/2026 08:02:28
[2026-10-28 08:02:28,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:02:28,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:02:29,046.046 INFO    ] No existing commands found in stream
[2026-10-28 08:02:34,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:02:34,068.068 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-28 08:02:35,931.931 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:02:35,934.934 INFO    ] Checking for system updates...
[2026-10-28 08:02:35,969.969 INFO    ] 200
[2026-10-28 08:02:35,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:02:36,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:02:36,035.035 INFO    ] No update needed
[2026-10-28 08:02:36,037.037 INFO    ] Checking for camera pi updates...
[2026-10-28 08:02:36,074.074 INFO    ] 200
[2026-10-28 08:02:36,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:02:36,118.118 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:02:36,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:02:36,213.213 INFO    ] No camera update needed
[2026-10-28 08:02:36,216.216 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:02:36,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:02:36,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:02:36,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:02:38,274.274 INFO    ] ================================================
[2026-10-28 08:02:38,290.290 INFO    ] Launching Daemon at Wed Oct 28 08:02:38 IST 2026
[2026-10-28 08:02:38,301.301 INFO    ] ================================================
[2026-10-28 08:02:38,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:02:38
[2026-10-28 08:02:39,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:02:39,897.897 INFO    ] Initializing speech engine...
[2026-10-28 08:02:39,906.906 INFO    ] 2026-10-28 08:02:39
[2026-10-28 08:02:40,179.179 INFO    ] 2026-10-28 08:02:40
[2026-10-28 08:02:40,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:02:40,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:02:40,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:02:40,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:02:40,731.731 INFO    ] time= 28/10/2026 08:02:40
[2026-10-28 08:02:40,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:02:40,779.779 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:02:40,915.915 INFO    ] No existing commands found in stream
[2026-10-28 08:02:45,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:02:45,949.949 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-28 08:02:49,121.121 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:02:49,124.124 INFO    ] Checking for system updates...
[2026-10-28 08:02:49,164.164 INFO    ] 200
[2026-10-28 08:02:49,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:02:49,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:02:49,228.228 INFO    ] No update needed
[2026-10-28 08:02:49,230.230 INFO    ] Checking for camera pi updates...
[2026-10-28 08:02:49,265.265 INFO    ] 200
[2026-10-28 08:02:49,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:02:49,309.309 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:02:49,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:02:49,394.394 INFO    ] No camera update needed
[2026-10-28 08:02:49,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:02:49,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:02:49,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:02:49,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:02:51,454.454 INFO    ] ================================================
[2026-10-28 08:02:51,469.469 INFO    ] Launching Daemon at Wed Oct 28 08:02:51 IST 2026
[2026-10-28 08:02:51,481.481 INFO    ] ================================================
[2026-10-28 08:02:52,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:02:52
[2026-10-28 08:02:52,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:02:53,086.086 INFO    ] Initializing speech engine...
[2026-10-28 08:02:53,095.095 INFO    ] 2026-10-28 08:02:53
[2026-10-28 08:02:53,380.380 INFO    ] 2026-10-28 08:02:53
[2026-10-28 08:02:53,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:02:53,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:02:53,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:02:53,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:02:53,968.968 INFO    ] time= 28/10/2026 08:02:53
[2026-10-28 08:02:54,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:02:54,052.052 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:02:54,180.180 INFO    ] No existing commands found in stream
[2026-10-28 08:02:59,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:02:59,217.217 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 08:03:02,150.150 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:03:02,153.153 INFO    ] Checking for system updates...
[2026-10-28 08:03:02,210.210 INFO    ] 200
[2026-10-28 08:03:02,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:03:02,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:03:02,284.284 INFO    ] No update needed
[2026-10-28 08:03:02,290.290 INFO    ] Checking for camera pi updates...
[2026-10-28 08:03:02,330.330 INFO    ] 200
[2026-10-28 08:03:02,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:03:02,389.389 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:03:02,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:03:02,510.510 INFO    ] No camera update needed
[2026-10-28 08:03:02,513.513 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:03:02,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:03:02,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:03:02,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:03:04,572.572 INFO    ] ================================================
[2026-10-28 08:03:04,587.587 INFO    ] Launching Daemon at Wed Oct 28 08:03:04 IST 2026
[2026-10-28 08:03:04,597.597 INFO    ] ================================================
[2026-10-28 08:03:05,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:03:05
[2026-10-28 08:03:05,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:03:06,000.000 INFO    ] Initializing speech engine...
[2026-10-28 08:03:06,008.008 INFO    ] 2026-10-28 08:03:06
[2026-10-28 08:03:06,298.298 INFO    ] 2026-10-28 08:03:06
[2026-10-28 08:03:06,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:03:06,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:03:06,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:03:06,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:03:06,864.864 INFO    ] time= 28/10/2026 08:03:06
[2026-10-28 08:03:06,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:03:06,928.928 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:03:07,057.057 INFO    ] No existing commands found in stream
[2026-10-28 08:03:12,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:03:12,095.095 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-28 08:03:14,247.247 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:03:14,249.249 INFO    ] Checking for system updates...
[2026-10-28 08:03:14,285.285 INFO    ] 200
[2026-10-28 08:03:14,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:03:14,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:03:14,341.341 INFO    ] No update needed
[2026-10-28 08:03:14,343.343 INFO    ] Checking for camera pi updates...
[2026-10-28 08:03:14,382.382 INFO    ] 200
[2026-10-28 08:03:14,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:03:14,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:03:14,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:03:14,508.508 INFO    ] No camera update needed
[2026-10-28 08:03:14,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:03:14,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:03:14,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:03:14,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:03:16,563.563 INFO    ] ================================================
[2026-10-28 08:03:16,577.577 INFO    ] Launching Daemon at Wed Oct 28 08:03:16 IST 2026
[2026-10-28 08:03:16,588.588 INFO    ] ================================================
[2026-10-28 08:03:17,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:03:17
[2026-10-28 08:03:17,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:03:18,037.037 INFO    ] Initializing speech engine...
[2026-10-28 08:03:18,045.045 INFO    ] 2026-10-28 08:03:18
[2026-10-28 08:03:18,305.305 INFO    ] 2026-10-28 08:03:18
[2026-10-28 08:03:18,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:03:18,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:03:18,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:03:18,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:03:18,843.843 INFO    ] time= 28/10/2026 08:03:18
[2026-10-28 08:03:18,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:03:18,869.869 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:03:18,999.999 INFO    ] No existing commands found in stream
[2026-10-28 08:03:24,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:03:24,016.016 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 08:03:28,589.589 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:03:28,592.592 INFO    ] Checking for system updates...
[2026-10-28 08:03:28,628.628 INFO    ] 200
[2026-10-28 08:03:28,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:03:28,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:03:28,686.686 INFO    ] No update needed
[2026-10-28 08:03:28,688.688 INFO    ] Checking for camera pi updates...
[2026-10-28 08:03:28,722.722 INFO    ] 200
[2026-10-28 08:03:28,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:03:28,765.765 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:03:28,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:03:28,857.857 INFO    ] No camera update needed
[2026-10-28 08:03:28,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:03:28,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:03:28,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:03:28,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:03:30,911.911 INFO    ] ================================================
[2026-10-28 08:03:30,930.930 INFO    ] Launching Daemon at Wed Oct 28 08:03:30 IST 2026
[2026-10-28 08:03:30,941.941 INFO    ] ================================================
[2026-10-28 08:03:31,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:03:31
[2026-10-28 08:03:32,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:03:32,399.399 INFO    ] Initializing speech engine...
[2026-10-28 08:03:32,405.405 INFO    ] 2026-10-28 08:03:32
[2026-10-28 08:03:32,690.690 INFO    ] 2026-10-28 08:03:32
[2026-10-28 08:03:32,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:03:32,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:03:33,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:03:33,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:03:33,259.259 INFO    ] time= 28/10/2026 08:03:33
[2026-10-28 08:03:33,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:03:33,282.282 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:03:33,415.415 INFO    ] No existing commands found in stream
[2026-10-28 08:03:38,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:03:38,437.437 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-28 08:03:40,028.028 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:03:40,031.031 INFO    ] Checking for system updates...
[2026-10-28 08:03:40,066.066 INFO    ] 200
[2026-10-28 08:03:40,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:03:40,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:03:40,130.130 INFO    ] No update needed
[2026-10-28 08:03:40,132.132 INFO    ] Checking for camera pi updates...
[2026-10-28 08:03:40,165.165 INFO    ] 200
[2026-10-28 08:03:40,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:03:40,207.207 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:03:40,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:03:40,299.299 INFO    ] No camera update needed
[2026-10-28 08:03:40,301.301 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:03:40,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:03:40,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:03:40,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:03:42,353.353 INFO    ] ================================================
[2026-10-28 08:03:42,368.368 INFO    ] Launching Daemon at Wed Oct 28 08:03:42 IST 2026
[2026-10-28 08:03:42,378.378 INFO    ] ================================================
[2026-10-28 08:03:42,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:03:42
[2026-10-28 08:03:43,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:03:43,823.823 INFO    ] Initializing speech engine...
[2026-10-28 08:03:43,832.832 INFO    ] 2026-10-28 08:03:43
[2026-10-28 08:03:44,118.118 INFO    ] 2026-10-28 08:03:44
[2026-10-28 08:03:44,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:03:44,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:03:44,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:03:44,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:03:44,727.727 INFO    ] time= 28/10/2026 08:03:44
[2026-10-28 08:03:44,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:03:44,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:03:44,895.895 INFO    ] No existing commands found in stream
[2026-10-28 08:03:49,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:03:49,912.912 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-28 08:03:51,807.807 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:03:51,810.810 INFO    ] Checking for system updates...
[2026-10-28 08:03:51,846.846 INFO    ] 200
[2026-10-28 08:03:51,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:03:51,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:03:51,904.904 INFO    ] No update needed
[2026-10-28 08:03:51,906.906 INFO    ] Checking for camera pi updates...
[2026-10-28 08:03:51,942.942 INFO    ] 200
[2026-10-28 08:03:51,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:03:51,985.985 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:03:52,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:03:52,071.071 INFO    ] No camera update needed
[2026-10-28 08:03:52,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:03:52,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:03:52,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:03:52,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:03:54,129.129 INFO    ] ================================================
[2026-10-28 08:03:54,144.144 INFO    ] Launching Daemon at Wed Oct 28 08:03:54 IST 2026
[2026-10-28 08:03:54,154.154 INFO    ] ================================================
[2026-10-28 08:03:54,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:03:54
[2026-10-28 08:03:55,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:03:55,564.564 INFO    ] Initializing speech engine...
[2026-10-28 08:03:55,585.585 INFO    ] 2026-10-28 08:03:55
[2026-10-28 08:03:55,842.842 INFO    ] 2026-10-28 08:03:55
[2026-10-28 08:03:55,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:03:56,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:03:56,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:03:56,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:03:56,346.346 INFO    ] time= 28/10/2026 08:03:56
[2026-10-28 08:03:56,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:03:56,418.418 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:03:56,568.568 INFO    ] No existing commands found in stream
[2026-10-28 08:04:01,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:04:01,597.597 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 08:04:05,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:04:05,311.311 INFO    ] Checking for system updates...
[2026-10-28 08:04:05,347.347 INFO    ] 200
[2026-10-28 08:04:05,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:04:05,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:04:05,413.413 INFO    ] No update needed
[2026-10-28 08:04:05,416.416 INFO    ] Checking for camera pi updates...
[2026-10-28 08:04:05,450.450 INFO    ] 200
[2026-10-28 08:04:05,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:04:05,499.499 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:04:05,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:04:05,588.588 INFO    ] No camera update needed
[2026-10-28 08:04:05,590.590 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:04:05,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:04:05,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:04:05,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:04:07,651.651 INFO    ] ================================================
[2026-10-28 08:04:07,666.666 INFO    ] Launching Daemon at Wed Oct 28 08:04:07 IST 2026
[2026-10-28 08:04:07,676.676 INFO    ] ================================================
[2026-10-28 08:04:08,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:04:08
[2026-10-28 08:04:08,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:04:09,140.140 INFO    ] Initializing speech engine...
[2026-10-28 08:04:09,146.146 INFO    ] 2026-10-28 08:04:09
[2026-10-28 08:04:09,407.407 INFO    ] 2026-10-28 08:04:09
[2026-10-28 08:04:09,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:04:09,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:04:09,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:04:09,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:04:09,967.967 INFO    ] time= 28/10/2026 08:04:09
[2026-10-28 08:04:09,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:04:10,004.004 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:04:10,124.124 INFO    ] No existing commands found in stream
[2026-10-28 08:04:15,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:04:15,151.151 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 08:04:18,684.684 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:04:18,686.686 INFO    ] Checking for system updates...
[2026-10-28 08:04:18,723.723 INFO    ] 200
[2026-10-28 08:04:18,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:04:18,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:04:18,780.780 INFO    ] No update needed
[2026-10-28 08:04:18,782.782 INFO    ] Checking for camera pi updates...
[2026-10-28 08:04:18,820.820 INFO    ] 200
[2026-10-28 08:04:18,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:04:18,868.868 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:04:18,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:04:18,950.950 INFO    ] No camera update needed
[2026-10-28 08:04:18,953.953 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:04:18,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:04:18,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:04:18,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:04:21,006.006 INFO    ] ================================================
[2026-10-28 08:04:21,022.022 INFO    ] Launching Daemon at Wed Oct 28 08:04:21 IST 2026
[2026-10-28 08:04:21,033.033 INFO    ] ================================================
[2026-10-28 08:04:21,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:04:21
[2026-10-28 08:04:22,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:04:22,625.625 INFO    ] Initializing speech engine...
[2026-10-28 08:04:22,634.634 INFO    ] 2026-10-28 08:04:22
[2026-10-28 08:04:22,917.917 INFO    ] 2026-10-28 08:04:22
[2026-10-28 08:04:22,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:04:23,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:04:23,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:04:23,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:04:23,492.492 INFO    ] time= 28/10/2026 08:04:23
[2026-10-28 08:04:23,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:04:23,528.528 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:04:23,657.657 INFO    ] No existing commands found in stream
[2026-10-28 08:04:28,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:04:28,687.687 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 08:04:31,229.229 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:04:31,233.233 INFO    ] Checking for system updates...
[2026-10-28 08:04:31,270.270 INFO    ] 200
[2026-10-28 08:04:31,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:04:31,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:04:31,329.329 INFO    ] No update needed
[2026-10-28 08:04:31,331.331 INFO    ] Checking for camera pi updates...
[2026-10-28 08:04:31,370.370 INFO    ] 200
[2026-10-28 08:04:31,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:04:31,415.415 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:04:31,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:04:31,512.512 INFO    ] No camera update needed
[2026-10-28 08:04:31,515.515 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:04:31,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:04:31,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:04:31,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:04:33,573.573 INFO    ] ================================================
[2026-10-28 08:04:33,589.589 INFO    ] Launching Daemon at Wed Oct 28 08:04:33 IST 2026
[2026-10-28 08:04:33,600.600 INFO    ] ================================================
[2026-10-28 08:04:34,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:04:34
[2026-10-28 08:04:34,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:04:35,057.057 INFO    ] Initializing speech engine...
[2026-10-28 08:04:35,064.064 INFO    ] 2026-10-28 08:04:35
[2026-10-28 08:04:35,327.327 INFO    ] 2026-10-28 08:04:35
[2026-10-28 08:04:35,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:04:35,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:04:35,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:04:35,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:04:35,877.877 INFO    ] time= 28/10/2026 08:04:35
[2026-10-28 08:04:35,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:04:35,903.903 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:04:36,051.051 INFO    ] No existing commands found in stream
[2026-10-28 08:04:41,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:04:41,085.085 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-28 08:04:45,188.188 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:04:45,191.191 INFO    ] Checking for system updates...
[2026-10-28 08:04:45,226.226 INFO    ] 200
[2026-10-28 08:04:45,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:04:45,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:04:45,283.283 INFO    ] No update needed
[2026-10-28 08:04:45,286.286 INFO    ] Checking for camera pi updates...
[2026-10-28 08:04:45,319.319 INFO    ] 200
[2026-10-28 08:04:45,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:04:45,361.361 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:04:45,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:04:45,459.459 INFO    ] No camera update needed
[2026-10-28 08:04:45,461.461 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:04:45,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:04:45,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:04:45,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:04:47,514.514 INFO    ] ================================================
[2026-10-28 08:04:47,529.529 INFO    ] Launching Daemon at Wed Oct 28 08:04:47 IST 2026
[2026-10-28 08:04:47,540.540 INFO    ] ================================================
[2026-10-28 08:04:48,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:04:48
[2026-10-28 08:04:48,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:04:49,007.007 INFO    ] Initializing speech engine...
[2026-10-28 08:04:49,016.016 INFO    ] 2026-10-28 08:04:49
[2026-10-28 08:04:49,270.270 INFO    ] 2026-10-28 08:04:49
[2026-10-28 08:04:49,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:04:49,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:04:49,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:04:49,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:04:49,836.836 INFO    ] time= 28/10/2026 08:04:49
[2026-10-28 08:04:49,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:04:49,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:04:50,009.009 INFO    ] No existing commands found in stream
[2026-10-28 08:04:55,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:04:55,043.043 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 08:04:57,392.392 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:04:57,395.395 INFO    ] Checking for system updates...
[2026-10-28 08:04:57,435.435 INFO    ] 200
[2026-10-28 08:04:57,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:04:57,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:04:57,493.493 INFO    ] No update needed
[2026-10-28 08:04:57,496.496 INFO    ] Checking for camera pi updates...
[2026-10-28 08:04:57,530.530 INFO    ] 200
[2026-10-28 08:04:57,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:04:57,578.578 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:04:57,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:04:57,662.662 INFO    ] No camera update needed
[2026-10-28 08:04:57,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:04:57,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:04:57,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:04:57,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:04:59,721.721 INFO    ] ================================================
[2026-10-28 08:04:59,737.737 INFO    ] Launching Daemon at Wed Oct 28 08:04:59 IST 2026
[2026-10-28 08:04:59,748.748 INFO    ] ================================================
[2026-10-28 08:05:00,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:05:00
[2026-10-28 08:05:00,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:05:01,151.151 INFO    ] Initializing speech engine...
[2026-10-28 08:05:01,174.174 INFO    ] 2026-10-28 08:05:01
[2026-10-28 08:05:01,427.427 INFO    ] 2026-10-28 08:05:01
[2026-10-28 08:05:01,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:05:01,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:05:01,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:05:02,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:05:02,125.125 INFO    ] time= 28/10/2026 08:05:02
[2026-10-28 08:05:02,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:05:02,131.131 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:05:02,256.256 INFO    ] No existing commands found in stream
[2026-10-28 08:05:07,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:05:07,269.269 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-28 08:05:09,088.088 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:05:09,091.091 INFO    ] Checking for system updates...
[2026-10-28 08:05:09,126.126 INFO    ] 200
[2026-10-28 08:05:09,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:05:09,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:05:09,183.183 INFO    ] No update needed
[2026-10-28 08:05:09,185.185 INFO    ] Checking for camera pi updates...
[2026-10-28 08:05:09,218.218 INFO    ] 200
[2026-10-28 08:05:09,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:05:09,260.260 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:05:09,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:05:09,361.361 INFO    ] No camera update needed
[2026-10-28 08:05:09,363.363 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:05:09,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:05:09,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:05:09,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:05:11,418.418 INFO    ] ================================================
[2026-10-28 08:05:11,434.434 INFO    ] Launching Daemon at Wed Oct 28 08:05:11 IST 2026
[2026-10-28 08:05:11,445.445 INFO    ] ================================================
[2026-10-28 08:05:12,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:05:12
[2026-10-28 08:05:12,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:05:12,907.907 INFO    ] Initializing speech engine...
[2026-10-28 08:05:12,916.916 INFO    ] 2026-10-28 08:05:12
[2026-10-28 08:05:13,177.177 INFO    ] 2026-10-28 08:05:13
[2026-10-28 08:05:13,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:05:13,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:05:13,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:05:13,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:05:13,773.773 INFO    ] time= 28/10/2026 08:05:13
[2026-10-28 08:05:13,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:05:13,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:05:13,910.910 INFO    ] No existing commands found in stream
[2026-10-28 08:05:18,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:05:18,949.949 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-28 08:05:23,292.292 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:05:23,295.295 INFO    ] Checking for system updates...
[2026-10-28 08:05:23,331.331 INFO    ] 200
[2026-10-28 08:05:23,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:05:23,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:05:23,388.388 INFO    ] No update needed
[2026-10-28 08:05:23,391.391 INFO    ] Checking for camera pi updates...
[2026-10-28 08:05:23,426.426 INFO    ] 200
[2026-10-28 08:05:23,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:05:23,471.471 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:05:23,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:05:23,562.562 INFO    ] No camera update needed
[2026-10-28 08:05:23,565.565 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:05:23,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:05:23,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:05:23,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:05:25,617.617 INFO    ] ================================================
[2026-10-28 08:05:25,632.632 INFO    ] Launching Daemon at Wed Oct 28 08:05:25 IST 2026
[2026-10-28 08:05:25,644.644 INFO    ] ================================================
[2026-10-28 08:05:26,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:05:26
[2026-10-28 08:05:26,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:05:27,087.087 INFO    ] Initializing speech engine...
[2026-10-28 08:05:27,096.096 INFO    ] 2026-10-28 08:05:27
[2026-10-28 08:05:27,350.350 INFO    ] 2026-10-28 08:05:27
[2026-10-28 08:05:27,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:05:27,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:05:27,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:05:27,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:05:27,898.898 INFO    ] time= 28/10/2026 08:05:27
[2026-10-28 08:05:27,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:05:27,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:05:28,061.061 INFO    ] No existing commands found in stream
[2026-10-28 08:05:33,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:05:33,089.089 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-28 08:05:36,844.844 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:05:36,846.846 INFO    ] Checking for system updates...
[2026-10-28 08:05:36,886.886 INFO    ] 200
[2026-10-28 08:05:36,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:05:36,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:05:36,944.944 INFO    ] No update needed
[2026-10-28 08:05:36,946.946 INFO    ] Checking for camera pi updates...
[2026-10-28 08:05:36,980.980 INFO    ] 200
[2026-10-28 08:05:36,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:05:37,026.026 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:05:37,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:05:37,108.108 INFO    ] No camera update needed
[2026-10-28 08:05:37,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:05:37,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:05:37,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:05:37,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:05:39,164.164 INFO    ] ================================================
[2026-10-28 08:05:39,179.179 INFO    ] Launching Daemon at Wed Oct 28 08:05:39 IST 2026
[2026-10-28 08:05:39,190.190 INFO    ] ================================================
[2026-10-28 08:05:39,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:05:39
[2026-10-28 08:05:40,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:05:40,609.609 INFO    ] Initializing speech engine...
[2026-10-28 08:05:40,618.618 INFO    ] 2026-10-28 08:05:40
[2026-10-28 08:05:40,875.875 INFO    ] 2026-10-28 08:05:40
[2026-10-28 08:05:40,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:05:41,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:05:41,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:05:41,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:05:41,421.421 INFO    ] time= 28/10/2026 08:05:41
[2026-10-28 08:05:41,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:05:41,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:05:41,594.594 INFO    ] No existing commands found in stream
[2026-10-28 08:05:46,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:05:46,627.627 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-28 08:05:51,112.112 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:05:51,116.116 INFO    ] Checking for system updates...
[2026-10-28 08:05:51,152.152 INFO    ] 200
[2026-10-28 08:05:51,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:05:51,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:05:51,210.210 INFO    ] No update needed
[2026-10-28 08:05:51,212.212 INFO    ] Checking for camera pi updates...
[2026-10-28 08:05:51,246.246 INFO    ] 200
[2026-10-28 08:05:51,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:05:51,289.289 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:05:51,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:05:51,375.375 INFO    ] No camera update needed
[2026-10-28 08:05:51,377.377 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:05:51,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:05:51,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:05:51,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:05:53,432.432 INFO    ] ================================================
[2026-10-28 08:05:53,448.448 INFO    ] Launching Daemon at Wed Oct 28 08:05:53 IST 2026
[2026-10-28 08:05:53,459.459 INFO    ] ================================================
[2026-10-28 08:05:54,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:05:54
[2026-10-28 08:05:54,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:05:54,873.873 INFO    ] Initializing speech engine...
[2026-10-28 08:05:54,888.888 INFO    ] 2026-10-28 08:05:54
[2026-10-28 08:05:55,156.156 INFO    ] 2026-10-28 08:05:55
[2026-10-28 08:05:55,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:05:55,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:05:55,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:05:55,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:05:55,726.726 INFO    ] time= 28/10/2026 08:05:55
[2026-10-28 08:05:55,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:05:55,757.757 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:05:55,879.879 INFO    ] No existing commands found in stream
[2026-10-28 08:06:00,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:06:00,908.908 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-28 08:06:04,692.692 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:06:04,695.695 INFO    ] Checking for system updates...
[2026-10-28 08:06:04,730.730 INFO    ] 200
[2026-10-28 08:06:04,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:06:04,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:06:04,795.795 INFO    ] No update needed
[2026-10-28 08:06:04,797.797 INFO    ] Checking for camera pi updates...
[2026-10-28 08:06:04,834.834 INFO    ] 200
[2026-10-28 08:06:04,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:06:04,877.877 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:06:05,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:06:05,059.059 INFO    ] No camera update needed
[2026-10-28 08:06:05,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:06:05,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:06:05,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:06:05,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:06:07,116.116 INFO    ] ================================================
[2026-10-28 08:06:07,131.131 INFO    ] Launching Daemon at Wed Oct 28 08:06:07 IST 2026
[2026-10-28 08:06:07,141.141 INFO    ] ================================================
[2026-10-28 08:06:07,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:06:07
[2026-10-28 08:06:08,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:06:08,735.735 INFO    ] Initializing speech engine...
[2026-10-28 08:06:08,742.742 INFO    ] 2026-10-28 08:06:08
[2026-10-28 08:06:09,025.025 INFO    ] 2026-10-28 08:06:09
[2026-10-28 08:06:09,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:06:09,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:06:09,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:06:09,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:06:09,589.589 INFO    ] time= 28/10/2026 08:06:09
[2026-10-28 08:06:09,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:06:09,638.638 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:06:09,751.751 INFO    ] No existing commands found in stream
[2026-10-28 08:06:14,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:06:14,767.767 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-28 08:06:19,001.001 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:06:19,004.004 INFO    ] Checking for system updates...
[2026-10-28 08:06:19,044.044 INFO    ] 200
[2026-10-28 08:06:19,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:06:19,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:06:19,104.104 INFO    ] No update needed
[2026-10-28 08:06:19,106.106 INFO    ] Checking for camera pi updates...
[2026-10-28 08:06:19,141.141 INFO    ] 200
[2026-10-28 08:06:19,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:06:19,185.185 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:06:19,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:06:19,270.270 INFO    ] No camera update needed
[2026-10-28 08:06:19,272.272 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:06:19,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:06:19,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:06:19,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:06:21,327.327 INFO    ] ================================================
[2026-10-28 08:06:21,341.341 INFO    ] Launching Daemon at Wed Oct 28 08:06:21 IST 2026
[2026-10-28 08:06:21,352.352 INFO    ] ================================================
[2026-10-28 08:06:21,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:06:21
[2026-10-28 08:06:22,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:06:22,783.783 INFO    ] Initializing speech engine...
[2026-10-28 08:06:22,792.792 INFO    ] 2026-10-28 08:06:22
[2026-10-28 08:06:23,041.041 INFO    ] 2026-10-28 08:06:23
[2026-10-28 08:06:23,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:06:23,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:06:23,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:06:23,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:06:23,596.596 INFO    ] time= 28/10/2026 08:06:23
[2026-10-28 08:06:23,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:06:23,618.618 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:06:23,748.748 INFO    ] No existing commands found in stream
[2026-10-28 08:06:28,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:06:28,765.765 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 08:06:32,191.191 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:06:32,194.194 INFO    ] Checking for system updates...
[2026-10-28 08:06:32,233.233 INFO    ] 200
[2026-10-28 08:06:32,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:06:32,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:06:32,302.302 INFO    ] No update needed
[2026-10-28 08:06:32,305.305 INFO    ] Checking for camera pi updates...
[2026-10-28 08:06:32,345.345 INFO    ] 200
[2026-10-28 08:06:32,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:06:32,400.400 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:06:32,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:06:32,506.506 INFO    ] No camera update needed
[2026-10-28 08:06:32,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:06:32,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:06:32,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:06:32,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:06:34,563.563 INFO    ] ================================================
[2026-10-28 08:06:34,578.578 INFO    ] Launching Daemon at Wed Oct 28 08:06:34 IST 2026
[2026-10-28 08:06:34,589.589 INFO    ] ================================================
[2026-10-28 08:06:35,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:06:35
[2026-10-28 08:06:35,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:06:35,988.988 INFO    ] Initializing speech engine...
[2026-10-28 08:06:35,997.997 INFO    ] 2026-10-28 08:06:35
[2026-10-28 08:06:36,287.287 INFO    ] 2026-10-28 08:06:36
[2026-10-28 08:06:36,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:06:36,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:06:36,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:06:36,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:06:36,912.912 INFO    ] time= 28/10/2026 08:06:36
[2026-10-28 08:06:36,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:06:36,935.935 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:06:37,080.080 INFO    ] No existing commands found in stream
[2026-10-28 08:06:42,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:06:42,097.097 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-28 08:06:46,232.232 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:06:46,235.235 INFO    ] Checking for system updates...
[2026-10-28 08:06:46,274.274 INFO    ] 200
[2026-10-28 08:06:46,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:06:46,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:06:46,336.336 INFO    ] No update needed
[2026-10-28 08:06:46,338.338 INFO    ] Checking for camera pi updates...
[2026-10-28 08:06:46,372.372 INFO    ] 200
[2026-10-28 08:06:46,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:06:46,414.414 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:06:46,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:06:46,487.487 INFO    ] No camera update needed
[2026-10-28 08:06:46,489.489 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:06:46,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:06:46,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:06:46,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:06:48,541.541 INFO    ] ================================================
[2026-10-28 08:06:48,556.556 INFO    ] Launching Daemon at Wed Oct 28 08:06:48 IST 2026
[2026-10-28 08:06:48,566.566 INFO    ] ================================================
[2026-10-28 08:06:49,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:06:49
[2026-10-28 08:06:49,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:06:49,970.970 INFO    ] Initializing speech engine...
[2026-10-28 08:06:49,994.994 INFO    ] 2026-10-28 08:06:49
[2026-10-28 08:06:50,246.246 INFO    ] 2026-10-28 08:06:50
[2026-10-28 08:06:50,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:06:50,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:06:50,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:06:50,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:06:50,819.819 INFO    ] time= 28/10/2026 08:06:50
[2026-10-28 08:06:50,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:06:50,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:06:50,973.973 INFO    ] No existing commands found in stream
[2026-10-28 08:06:55,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:06:56,001.001 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-28 08:06:56,910.910 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:06:56,913.913 INFO    ] Checking for system updates...
[2026-10-28 08:06:56,949.949 INFO    ] 200
[2026-10-28 08:06:56,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:06:57,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:06:57,006.006 INFO    ] No update needed
[2026-10-28 08:06:57,008.008 INFO    ] Checking for camera pi updates...
[2026-10-28 08:06:57,043.043 INFO    ] 200
[2026-10-28 08:06:57,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:06:57,086.086 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:06:57,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:06:57,179.179 INFO    ] No camera update needed
[2026-10-28 08:06:57,181.181 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:06:57,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:06:57,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:06:57,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:06:59,235.235 INFO    ] ================================================
[2026-10-28 08:06:59,250.250 INFO    ] Launching Daemon at Wed Oct 28 08:06:59 IST 2026
[2026-10-28 08:06:59,261.261 INFO    ] ================================================
[2026-10-28 08:06:59,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:06:59
[2026-10-28 08:07:00,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:07:00,713.713 INFO    ] Initializing speech engine...
[2026-10-28 08:07:00,722.722 INFO    ] 2026-10-28 08:07:00
[2026-10-28 08:07:00,973.973 INFO    ] 2026-10-28 08:07:00
[2026-10-28 08:07:01,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:07:01,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:07:01,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:07:01,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:07:01,531.531 INFO    ] time= 28/10/2026 08:07:01
[2026-10-28 08:07:01,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:07:01,539.539 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:07:01,676.676 INFO    ] No existing commands found in stream
[2026-10-28 08:07:06,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:07:06,705.705 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 08:07:08,713.713 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:07:08,715.715 INFO    ] Checking for system updates...
[2026-10-28 08:07:08,752.752 INFO    ] 200
[2026-10-28 08:07:08,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:07:08,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:07:08,809.809 INFO    ] No update needed
[2026-10-28 08:07:08,811.811 INFO    ] Checking for camera pi updates...
[2026-10-28 08:07:08,845.845 INFO    ] 200
[2026-10-28 08:07:08,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:07:08,888.888 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:07:08,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:07:08,963.963 INFO    ] No camera update needed
[2026-10-28 08:07:08,966.966 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:07:08,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:07:08,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:07:08,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:07:11,019.019 INFO    ] ================================================
[2026-10-28 08:07:11,035.035 INFO    ] Launching Daemon at Wed Oct 28 08:07:11 IST 2026
[2026-10-28 08:07:11,046.046 INFO    ] ================================================
[2026-10-28 08:07:11,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:07:11
[2026-10-28 08:07:12,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:07:12,476.476 INFO    ] Initializing speech engine...
[2026-10-28 08:07:12,485.485 INFO    ] 2026-10-28 08:07:12
[2026-10-28 08:07:12,734.734 INFO    ] 2026-10-28 08:07:12
[2026-10-28 08:07:12,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:07:13,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:07:13,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:07:13,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:07:13,294.294 INFO    ] time= 28/10/2026 08:07:13
[2026-10-28 08:07:13,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:07:13,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:07:13,485.485 INFO    ] No existing commands found in stream
[2026-10-28 08:07:18,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:07:18,518.518 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-28 08:07:20,179.179 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:07:20,181.181 INFO    ] Checking for system updates...
[2026-10-28 08:07:20,219.219 INFO    ] 200
[2026-10-28 08:07:20,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:07:20,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:07:20,276.276 INFO    ] No update needed
[2026-10-28 08:07:20,278.278 INFO    ] Checking for camera pi updates...
[2026-10-28 08:07:20,312.312 INFO    ] 200
[2026-10-28 08:07:20,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:07:20,358.358 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:07:20,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:07:20,441.441 INFO    ] No camera update needed
[2026-10-28 08:07:20,443.443 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:07:20,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:07:20,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:07:20,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:07:22,498.498 INFO    ] ================================================
[2026-10-28 08:07:22,513.513 INFO    ] Launching Daemon at Wed Oct 28 08:07:22 IST 2026
[2026-10-28 08:07:22,524.524 INFO    ] ================================================
[2026-10-28 08:07:23,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:07:23
[2026-10-28 08:07:23,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:07:23,948.948 INFO    ] Initializing speech engine...
[2026-10-28 08:07:23,956.956 INFO    ] 2026-10-28 08:07:23
[2026-10-28 08:07:24,250.250 INFO    ] 2026-10-28 08:07:24
[2026-10-28 08:07:24,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:07:24,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:07:24,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:07:24,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:07:24,861.861 INFO    ] time= 28/10/2026 08:07:24
[2026-10-28 08:07:24,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:07:24,897.897 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:07:25,028.028 INFO    ] No existing commands found in stream
[2026-10-28 08:07:30,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:07:30,058.058 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-28 08:07:33,017.017 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:07:33,019.019 INFO    ] Checking for system updates...
[2026-10-28 08:07:33,078.078 INFO    ] 200
[2026-10-28 08:07:33,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:07:33,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:07:33,146.146 INFO    ] No update needed
[2026-10-28 08:07:33,149.149 INFO    ] Checking for camera pi updates...
[2026-10-28 08:07:33,185.185 INFO    ] 200
[2026-10-28 08:07:33,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:07:33,236.236 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:07:33,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:07:33,336.336 INFO    ] No camera update needed
[2026-10-28 08:07:33,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:07:33,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:07:33,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:07:33,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:07:35,396.396 INFO    ] ================================================
[2026-10-28 08:07:35,412.412 INFO    ] Launching Daemon at Wed Oct 28 08:07:35 IST 2026
[2026-10-28 08:07:35,422.422 INFO    ] ================================================
[2026-10-28 08:07:35,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:07:35
[2026-10-28 08:07:36,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:07:36,864.864 INFO    ] Initializing speech engine...
[2026-10-28 08:07:36,890.890 INFO    ] 2026-10-28 08:07:36
[2026-10-28 08:07:37,164.164 INFO    ] 2026-10-28 08:07:37
[2026-10-28 08:07:37,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:07:37,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:07:37,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:07:37,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:07:37,661.661 INFO    ] time= 28/10/2026 08:07:37
[2026-10-28 08:07:37,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:07:37,765.765 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:07:37,869.869 INFO    ] No existing commands found in stream
[2026-10-28 08:07:42,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:07:42,881.881 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-28 08:07:45,153.153 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:07:45,155.155 INFO    ] Checking for system updates...
[2026-10-28 08:07:45,195.195 INFO    ] 200
[2026-10-28 08:07:45,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:07:45,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:07:45,251.251 INFO    ] No update needed
[2026-10-28 08:07:45,254.254 INFO    ] Checking for camera pi updates...
[2026-10-28 08:07:45,287.287 INFO    ] 200
[2026-10-28 08:07:45,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:07:45,333.333 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:07:45,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:07:45,415.415 INFO    ] No camera update needed
[2026-10-28 08:07:45,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:07:45,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:07:45,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:07:45,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:07:47,471.471 INFO    ] ================================================
[2026-10-28 08:07:47,487.487 INFO    ] Launching Daemon at Wed Oct 28 08:07:47 IST 2026
[2026-10-28 08:07:47,498.498 INFO    ] ================================================
[2026-10-28 08:07:48,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:07:48
[2026-10-28 08:07:48,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:07:48,912.912 INFO    ] Initializing speech engine...
[2026-10-28 08:07:48,937.937 INFO    ] 2026-10-28 08:07:48
[2026-10-28 08:07:49,208.208 INFO    ] 2026-10-28 08:07:49
[2026-10-28 08:07:49,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:07:49,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:07:49,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:07:49,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:07:49,839.839 INFO    ] time= 28/10/2026 08:07:49
[2026-10-28 08:07:49,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:07:49,863.863 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:07:49,982.982 INFO    ] No existing commands found in stream
[2026-10-28 08:07:55,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:07:55,019.019 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-28 08:07:57,324.324 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:07:57,326.326 INFO    ] Checking for system updates...
[2026-10-28 08:07:57,362.362 INFO    ] 200
[2026-10-28 08:07:57,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:07:57,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:07:57,420.420 INFO    ] No update needed
[2026-10-28 08:07:57,422.422 INFO    ] Checking for camera pi updates...
[2026-10-28 08:07:57,455.455 INFO    ] 200
[2026-10-28 08:07:57,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:07:57,498.498 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:07:57,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:07:57,582.582 INFO    ] No camera update needed
[2026-10-28 08:07:57,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:07:57,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:07:57,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:07:57,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:07:59,638.638 INFO    ] ================================================
[2026-10-28 08:07:59,653.653 INFO    ] Launching Daemon at Wed Oct 28 08:07:59 IST 2026
[2026-10-28 08:07:59,665.665 INFO    ] ================================================
[2026-10-28 08:08:00,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:08:00
[2026-10-28 08:08:00,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:08:01,088.088 INFO    ] Initializing speech engine...
[2026-10-28 08:08:01,107.107 INFO    ] 2026-10-28 08:08:01
[2026-10-28 08:08:01,371.371 INFO    ] 2026-10-28 08:08:01
[2026-10-28 08:08:01,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:08:01,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:08:01,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:08:01,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:08:02,059.059 INFO    ] time= 28/10/2026 08:08:01
[2026-10-28 08:08:02,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:08:02,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:08:02,326.326 INFO    ] No existing commands found in stream
[2026-10-28 08:08:07,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:08:07,363.363 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-28 08:08:09,460.460 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:08:09,463.463 INFO    ] Checking for system updates...
[2026-10-28 08:08:09,501.501 INFO    ] 200
[2026-10-28 08:08:09,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:08:09,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:08:09,560.560 INFO    ] No update needed
[2026-10-28 08:08:09,563.563 INFO    ] Checking for camera pi updates...
[2026-10-28 08:08:09,598.598 INFO    ] 200
[2026-10-28 08:08:09,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:08:09,647.647 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:08:09,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:08:09,846.846 INFO    ] No camera update needed
[2026-10-28 08:08:09,849.849 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:08:09,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:08:09,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:08:09,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:08:11,904.904 INFO    ] ================================================
[2026-10-28 08:08:11,920.920 INFO    ] Launching Daemon at Wed Oct 28 08:08:11 IST 2026
[2026-10-28 08:08:11,931.931 INFO    ] ================================================
[2026-10-28 08:08:12,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:08:12
[2026-10-28 08:08:13,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:08:13,449.449 INFO    ] Initializing speech engine...
[2026-10-28 08:08:13,457.457 INFO    ] 2026-10-28 08:08:13
[2026-10-28 08:08:13,729.729 INFO    ] 2026-10-28 08:08:13
[2026-10-28 08:08:13,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:08:14,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:08:14,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:08:14,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:08:14,294.294 INFO    ] time= 28/10/2026 08:08:14
[2026-10-28 08:08:14,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:08:14,332.332 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:08:14,447.447 INFO    ] No existing commands found in stream
[2026-10-28 08:08:19,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:08:19,486.486 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 08:08:23,155.155 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:08:23,158.158 INFO    ] Checking for system updates...
[2026-10-28 08:08:23,200.200 INFO    ] 200
[2026-10-28 08:08:23,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:08:23,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:08:23,273.273 INFO    ] No update needed
[2026-10-28 08:08:23,277.277 INFO    ] Checking for camera pi updates...
[2026-10-28 08:08:23,321.321 INFO    ] 200
[2026-10-28 08:08:23,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:08:23,366.366 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:08:23,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:08:23,446.446 INFO    ] No camera update needed
[2026-10-28 08:08:23,449.449 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:08:23,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:08:23,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:08:23,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:08:25,505.505 INFO    ] ================================================
[2026-10-28 08:08:25,520.520 INFO    ] Launching Daemon at Wed Oct 28 08:08:25 IST 2026
[2026-10-28 08:08:25,531.531 INFO    ] ================================================
[2026-10-28 08:08:26,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:08:26
[2026-10-28 08:08:26,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:08:26,984.984 INFO    ] Initializing speech engine...
[2026-10-28 08:08:27,010.010 INFO    ] 2026-10-28 08:08:26
[2026-10-28 08:08:27,286.286 INFO    ] 2026-10-28 08:08:27
[2026-10-28 08:08:27,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:08:27,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:08:27,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:08:27,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:08:27,831.831 INFO    ] time= 28/10/2026 08:08:27
[2026-10-28 08:08:27,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:08:27,929.929 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:08:28,004.004 INFO    ] No existing commands found in stream
[2026-10-28 08:08:33,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:08:33,042.042 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-28 08:08:34,232.232 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:08:34,235.235 INFO    ] Checking for system updates...
[2026-10-28 08:08:34,271.271 INFO    ] 200
[2026-10-28 08:08:34,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:08:34,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:08:34,328.328 INFO    ] No update needed
[2026-10-28 08:08:34,330.330 INFO    ] Checking for camera pi updates...
[2026-10-28 08:08:34,364.364 INFO    ] 200
[2026-10-28 08:08:34,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:08:34,406.406 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:08:34,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:08:34,499.499 INFO    ] No camera update needed
[2026-10-28 08:08:34,502.502 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:08:34,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:08:34,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:08:34,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:08:36,555.555 INFO    ] ================================================
[2026-10-28 08:08:36,570.570 INFO    ] Launching Daemon at Wed Oct 28 08:08:36 IST 2026
[2026-10-28 08:08:36,581.581 INFO    ] ================================================
[2026-10-28 08:08:37,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:08:37
[2026-10-28 08:08:37,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:08:37,982.982 INFO    ] Initializing speech engine...
[2026-10-28 08:08:37,991.991 INFO    ] 2026-10-28 08:08:37
[2026-10-28 08:08:38,286.286 INFO    ] 2026-10-28 08:08:38
[2026-10-28 08:08:38,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:08:38,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:08:38,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:08:38,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:08:38,809.809 INFO    ] time= 28/10/2026 08:08:38
[2026-10-28 08:08:38,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:08:38,930.930 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:08:39,099.099 INFO    ] No existing commands found in stream
[2026-10-28 08:08:44,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:08:44,116.116 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-28 08:08:47,619.619 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:08:47,622.622 INFO    ] Checking for system updates...
[2026-10-28 08:08:47,657.657 INFO    ] 200
[2026-10-28 08:08:47,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:08:47,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:08:47,716.716 INFO    ] No update needed
[2026-10-28 08:08:47,719.719 INFO    ] Checking for camera pi updates...
[2026-10-28 08:08:47,753.753 INFO    ] 200
[2026-10-28 08:08:47,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:08:47,795.795 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:08:47,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:08:47,879.879 INFO    ] No camera update needed
[2026-10-28 08:08:47,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:08:47,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:08:47,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:08:47,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:08:49,935.935 INFO    ] ================================================
[2026-10-28 08:08:49,950.950 INFO    ] Launching Daemon at Wed Oct 28 08:08:49 IST 2026
[2026-10-28 08:08:49,961.961 INFO    ] ================================================
[2026-10-28 08:08:50,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:08:50
[2026-10-28 08:08:51,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:08:51,456.456 INFO    ] Initializing speech engine...
[2026-10-28 08:08:51,468.468 INFO    ] 2026-10-28 08:08:51
[2026-10-28 08:08:51,742.742 INFO    ] 2026-10-28 08:08:51
[2026-10-28 08:08:51,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:08:52,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:08:52,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:08:52,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:08:52,323.323 INFO    ] time= 28/10/2026 08:08:52
[2026-10-28 08:08:52,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:08:52,360.360 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:08:52,499.499 INFO    ] No existing commands found in stream
[2026-10-28 08:08:57,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:08:57,528.528 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 08:08:58,919.919 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:08:58,922.922 INFO    ] Checking for system updates...
[2026-10-28 08:08:58,963.963 INFO    ] 200
[2026-10-28 08:08:58,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:08:59,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:08:59,023.023 INFO    ] No update needed
[2026-10-28 08:08:59,026.026 INFO    ] Checking for camera pi updates...
[2026-10-28 08:08:59,060.060 INFO    ] 200
[2026-10-28 08:08:59,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:08:59,105.105 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:08:59,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:08:59,201.201 INFO    ] No camera update needed
[2026-10-28 08:08:59,204.204 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:08:59,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:08:59,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:08:59,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:09:01,261.261 INFO    ] ================================================
[2026-10-28 08:09:01,276.276 INFO    ] Launching Daemon at Wed Oct 28 08:09:01 IST 2026
[2026-10-28 08:09:01,287.287 INFO    ] ================================================
[2026-10-28 08:09:01,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:09:01
[2026-10-28 08:09:02,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:09:02,922.922 INFO    ] Initializing speech engine...
[2026-10-28 08:09:02,928.928 INFO    ] 2026-10-28 08:09:02
[2026-10-28 08:09:03,272.272 INFO    ] 2026-10-28 08:09:03
[2026-10-28 08:09:03,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:09:03,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:09:03,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:09:03,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:09:03,771.771 INFO    ] time= 28/10/2026 08:09:03
[2026-10-28 08:09:03,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:09:03,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:09:04,048.048 INFO    ] No existing commands found in stream
[2026-10-28 08:09:09,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:09:09,065.065 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-28 08:09:11,753.753 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:09:11,756.756 INFO    ] Checking for system updates...
[2026-10-28 08:09:11,791.791 INFO    ] 200
[2026-10-28 08:09:11,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:09:11,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:09:11,850.850 INFO    ] No update needed
[2026-10-28 08:09:11,852.852 INFO    ] Checking for camera pi updates...
[2026-10-28 08:09:11,885.885 INFO    ] 200
[2026-10-28 08:09:11,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:09:11,927.927 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:09:12,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:09:12,015.015 INFO    ] No camera update needed
[2026-10-28 08:09:12,018.018 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:09:12,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:09:12,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:09:12,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:09:14,071.071 INFO    ] ================================================
[2026-10-28 08:09:14,086.086 INFO    ] Launching Daemon at Wed Oct 28 08:09:14 IST 2026
[2026-10-28 08:09:14,097.097 INFO    ] ================================================
[2026-10-28 08:09:14,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:09:14
[2026-10-28 08:09:15,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:09:15,552.552 INFO    ] Initializing speech engine...
[2026-10-28 08:09:15,560.560 INFO    ] 2026-10-28 08:09:15
[2026-10-28 08:09:15,818.818 INFO    ] 2026-10-28 08:09:15
[2026-10-28 08:09:15,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:09:16,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:09:16,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:09:16,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:09:16,364.364 INFO    ] time= 28/10/2026 08:09:16
[2026-10-28 08:09:16,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:09:16,409.409 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:09:16,531.531 INFO    ] No existing commands found in stream
[2026-10-28 08:09:21,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:09:21,565.565 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 08:09:22,755.755 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:09:22,757.757 INFO    ] Checking for system updates...
[2026-10-28 08:09:22,793.793 INFO    ] 200
[2026-10-28 08:09:22,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:09:22,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:09:22,852.852 INFO    ] No update needed
[2026-10-28 08:09:22,854.854 INFO    ] Checking for camera pi updates...
[2026-10-28 08:09:22,891.891 INFO    ] 200
[2026-10-28 08:09:22,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:09:22,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:09:23,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:09:23,031.031 INFO    ] No camera update needed
[2026-10-28 08:09:23,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:09:23,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:09:23,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:09:23,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:09:25,087.087 INFO    ] ================================================
[2026-10-28 08:09:25,103.103 INFO    ] Launching Daemon at Wed Oct 28 08:09:25 IST 2026
[2026-10-28 08:09:25,114.114 INFO    ] ================================================
[2026-10-28 08:09:25,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:09:25
[2026-10-28 08:09:26,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:09:26,723.723 INFO    ] Initializing speech engine...
[2026-10-28 08:09:26,730.730 INFO    ] 2026-10-28 08:09:26
[2026-10-28 08:09:27,005.005 INFO    ] 2026-10-28 08:09:26
[2026-10-28 08:09:27,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:09:27,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:09:27,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:09:27,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:09:27,582.582 INFO    ] time= 28/10/2026 08:09:27
[2026-10-28 08:09:27,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:09:27,621.621 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:09:27,755.755 INFO    ] No existing commands found in stream
[2026-10-28 08:09:32,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:09:32,791.791 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-28 08:09:36,576.576 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:09:36,579.579 INFO    ] Checking for system updates...
[2026-10-28 08:09:36,617.617 INFO    ] 200
[2026-10-28 08:09:36,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:09:36,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:09:36,676.676 INFO    ] No update needed
[2026-10-28 08:09:36,679.679 INFO    ] Checking for camera pi updates...
[2026-10-28 08:09:36,713.713 INFO    ] 200
[2026-10-28 08:09:36,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:09:36,761.761 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:09:36,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:09:36,847.847 INFO    ] No camera update needed
[2026-10-28 08:09:36,850.850 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:09:36,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:09:36,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:09:36,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:09:38,906.906 INFO    ] ================================================
[2026-10-28 08:09:38,920.920 INFO    ] Launching Daemon at Wed Oct 28 08:09:38 IST 2026
[2026-10-28 08:09:38,931.931 INFO    ] ================================================
[2026-10-28 08:09:39,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:09:39
[2026-10-28 08:09:40,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:09:40,336.336 INFO    ] Initializing speech engine...
[2026-10-28 08:09:40,358.358 INFO    ] 2026-10-28 08:09:40
[2026-10-28 08:09:40,632.632 INFO    ] 2026-10-28 08:09:40
[2026-10-28 08:09:40,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:09:40,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:09:40,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:09:41,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:09:41,228.228 INFO    ] time= 28/10/2026 08:09:41
[2026-10-28 08:09:41,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:09:41,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:09:41,396.396 INFO    ] No existing commands found in stream
[2026-10-28 08:09:46,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:09:46,429.429 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-28 08:09:48,457.457 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:09:48,460.460 INFO    ] Checking for system updates...
[2026-10-28 08:09:48,500.500 INFO    ] 200
[2026-10-28 08:09:48,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:09:48,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:09:48,560.560 INFO    ] No update needed
[2026-10-28 08:09:48,562.562 INFO    ] Checking for camera pi updates...
[2026-10-28 08:09:48,597.597 INFO    ] 200
[2026-10-28 08:09:48,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:09:48,647.647 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:09:48,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:09:48,742.742 INFO    ] No camera update needed
[2026-10-28 08:09:48,745.745 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:09:48,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:09:48,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:09:48,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:09:50,802.802 INFO    ] ================================================
[2026-10-28 08:09:50,817.817 INFO    ] Launching Daemon at Wed Oct 28 08:09:50 IST 2026
[2026-10-28 08:09:50,828.828 INFO    ] ================================================
[2026-10-28 08:09:51,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:09:51
[2026-10-28 08:09:52,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:09:52,283.283 INFO    ] Initializing speech engine...
[2026-10-28 08:09:52,292.292 INFO    ] 2026-10-28 08:09:52
[2026-10-28 08:09:52,540.540 INFO    ] 2026-10-28 08:09:52
[2026-10-28 08:09:52,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:09:52,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:09:52,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:09:53,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:09:53,272.272 INFO    ] time= 28/10/2026 08:09:53
[2026-10-28 08:09:53,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:09:53,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:09:53,497.497 INFO    ] No existing commands found in stream
[2026-10-28 08:09:58,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:09:58,512.512 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 08:10:01,395.395 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:10:01,398.398 INFO    ] Checking for system updates...
[2026-10-28 08:10:01,433.433 INFO    ] 200
[2026-10-28 08:10:01,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:10:01,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:10:01,496.496 INFO    ] No update needed
[2026-10-28 08:10:01,499.499 INFO    ] Checking for camera pi updates...
[2026-10-28 08:10:01,532.532 INFO    ] 200
[2026-10-28 08:10:01,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:10:01,575.575 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:10:01,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:10:01,872.872 INFO    ] No camera update needed
[2026-10-28 08:10:01,876.876 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:10:01,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:10:01,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:10:01,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:10:04,035.035 INFO    ] ================================================
[2026-10-28 08:10:04,057.057 INFO    ] Launching Daemon at Wed Oct 28 08:10:04 IST 2026
[2026-10-28 08:10:04,069.069 INFO    ] ================================================
[2026-10-28 08:10:04,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:10:04
[2026-10-28 08:10:05,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:10:05,590.590 INFO    ] Initializing speech engine...
[2026-10-28 08:10:05,599.599 INFO    ] 2026-10-28 08:10:05
[2026-10-28 08:10:05,856.856 INFO    ] 2026-10-28 08:10:05
[2026-10-28 08:10:05,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:10:06,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:10:06,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:10:06,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:10:06,444.444 INFO    ] time= 28/10/2026 08:10:06
[2026-10-28 08:10:06,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:10:06,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:10:06,613.613 INFO    ] No existing commands found in stream
[2026-10-28 08:10:11,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:10:11,630.630 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-28 08:10:14,834.834 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:10:14,837.837 INFO    ] Checking for system updates...
[2026-10-28 08:10:14,873.873 INFO    ] 200
[2026-10-28 08:10:14,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:10:14,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:10:14,931.931 INFO    ] No update needed
[2026-10-28 08:10:14,935.935 INFO    ] Checking for camera pi updates...
[2026-10-28 08:10:14,969.969 INFO    ] 200
[2026-10-28 08:10:14,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:10:15,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:10:15,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:10:15,196.196 INFO    ] No camera update needed
[2026-10-28 08:10:15,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:10:15,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:10:15,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:10:15,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:10:17,255.255 INFO    ] ================================================
[2026-10-28 08:10:17,271.271 INFO    ] Launching Daemon at Wed Oct 28 08:10:17 IST 2026
[2026-10-28 08:10:17,283.283 INFO    ] ================================================
[2026-10-28 08:10:17,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:10:17
[2026-10-28 08:10:18,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:10:18,899.899 INFO    ] Initializing speech engine...
[2026-10-28 08:10:18,912.912 INFO    ] 2026-10-28 08:10:18
[2026-10-28 08:10:19,199.199 INFO    ] 2026-10-28 08:10:19
[2026-10-28 08:10:19,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:10:19,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:10:19,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:10:19,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:10:19,749.749 INFO    ] time= 28/10/2026 08:10:19
[2026-10-28 08:10:19,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:10:19,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:10:19,934.934 INFO    ] No existing commands found in stream
[2026-10-28 08:10:24,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:10:24,968.968 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 08:10:29,314.314 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:10:29,317.317 INFO    ] Checking for system updates...
[2026-10-28 08:10:29,353.353 INFO    ] 200
[2026-10-28 08:10:29,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:10:29,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:10:29,419.419 INFO    ] No update needed
[2026-10-28 08:10:29,422.422 INFO    ] Checking for camera pi updates...
[2026-10-28 08:10:29,455.455 INFO    ] 200
[2026-10-28 08:10:29,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:10:29,497.497 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:10:29,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:10:29,579.579 INFO    ] No camera update needed
[2026-10-28 08:10:29,581.581 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:10:29,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:10:29,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:10:29,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:10:31,635.635 INFO    ] ================================================
[2026-10-28 08:10:31,650.650 INFO    ] Launching Daemon at Wed Oct 28 08:10:31 IST 2026
[2026-10-28 08:10:31,661.661 INFO    ] ================================================
[2026-10-28 08:10:32,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:10:32
[2026-10-28 08:10:32,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:10:33,184.184 INFO    ] Initializing speech engine...
[2026-10-28 08:10:33,192.192 INFO    ] 2026-10-28 08:10:33
[2026-10-28 08:10:33,481.481 INFO    ] 2026-10-28 08:10:33
[2026-10-28 08:10:33,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:10:33,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:10:33,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:10:34,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:10:34,072.072 INFO    ] time= 28/10/2026 08:10:34
[2026-10-28 08:10:34,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:10:34,099.099 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:10:34,229.229 INFO    ] No existing commands found in stream
[2026-10-28 08:10:39,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:10:39,254.254 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 08:10:42,834.834 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:10:42,836.836 INFO    ] Checking for system updates...
[2026-10-28 08:10:42,872.872 INFO    ] 200
[2026-10-28 08:10:42,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:10:42,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:10:42,929.929 INFO    ] No update needed
[2026-10-28 08:10:42,931.931 INFO    ] Checking for camera pi updates...
[2026-10-28 08:10:42,965.965 INFO    ] 200
[2026-10-28 08:10:42,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:10:43,007.007 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:10:43,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:10:43,071.071 INFO    ] No camera update needed
[2026-10-28 08:10:43,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:10:43,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:10:43,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:10:43,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:10:45,127.127 INFO    ] ================================================
[2026-10-28 08:10:45,143.143 INFO    ] Launching Daemon at Wed Oct 28 08:10:45 IST 2026
[2026-10-28 08:10:45,154.154 INFO    ] ================================================
[2026-10-28 08:10:45,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:10:45
[2026-10-28 08:10:46,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:10:46,557.557 INFO    ] Initializing speech engine...
[2026-10-28 08:10:46,566.566 INFO    ] 2026-10-28 08:10:46
[2026-10-28 08:10:46,858.858 INFO    ] 2026-10-28 08:10:46
[2026-10-28 08:10:46,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:10:47,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:10:47,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:10:47,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:10:47,478.478 INFO    ] time= 28/10/2026 08:10:47
[2026-10-28 08:10:47,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:10:47,505.505 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:10:47,654.654 INFO    ] No existing commands found in stream
[2026-10-28 08:10:52,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:10:52,681.681 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 08:10:53,916.916 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:10:53,919.919 INFO    ] Checking for system updates...
[2026-10-28 08:10:53,954.954 INFO    ] 200
[2026-10-28 08:10:53,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:10:54,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:10:54,035.035 INFO    ] No update needed
[2026-10-28 08:10:54,037.037 INFO    ] Checking for camera pi updates...
[2026-10-28 08:10:54,070.070 INFO    ] 200
[2026-10-28 08:10:54,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:10:54,113.113 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:10:54,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:10:54,187.187 INFO    ] No camera update needed
[2026-10-28 08:10:54,190.190 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:10:54,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:10:54,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:10:54,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:10:56,242.242 INFO    ] ================================================
[2026-10-28 08:10:56,257.257 INFO    ] Launching Daemon at Wed Oct 28 08:10:56 IST 2026
[2026-10-28 08:10:56,268.268 INFO    ] ================================================
[2026-10-28 08:10:56,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:10:56
[2026-10-28 08:10:57,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:10:57,710.710 INFO    ] Initializing speech engine...
[2026-10-28 08:10:57,724.724 INFO    ] 2026-10-28 08:10:57
[2026-10-28 08:10:58,008.008 INFO    ] 2026-10-28 08:10:57
[2026-10-28 08:10:58,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:10:58,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:10:58,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:10:58,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:10:58,639.639 INFO    ] time= 28/10/2026 08:10:58
[2026-10-28 08:10:58,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:10:58,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:10:58,814.814 INFO    ] No existing commands found in stream
[2026-10-28 08:11:03,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:11:03,831.831 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-28 08:11:07,010.010 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:11:07,013.013 INFO    ] Checking for system updates...
[2026-10-28 08:11:07,052.052 INFO    ] 200
[2026-10-28 08:11:07,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:11:07,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:11:07,109.109 INFO    ] No update needed
[2026-10-28 08:11:07,111.111 INFO    ] Checking for camera pi updates...
[2026-10-28 08:11:07,145.145 INFO    ] 200
[2026-10-28 08:11:07,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:11:07,192.192 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:11:07,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:11:07,271.271 INFO    ] No camera update needed
[2026-10-28 08:11:07,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:11:07,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:11:07,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:11:07,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:11:09,326.326 INFO    ] ================================================
[2026-10-28 08:11:09,341.341 INFO    ] Launching Daemon at Wed Oct 28 08:11:09 IST 2026
[2026-10-28 08:11:09,352.352 INFO    ] ================================================
[2026-10-28 08:11:09,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:11:09
[2026-10-28 08:11:10,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:11:10,911.911 INFO    ] Initializing speech engine...
[2026-10-28 08:11:10,918.918 INFO    ] 2026-10-28 08:11:10
[2026-10-28 08:11:11,202.202 INFO    ] 2026-10-28 08:11:11
[2026-10-28 08:11:11,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:11:11,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:11:11,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:11:11,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:11:11,797.797 INFO    ] time= 28/10/2026 08:11:11
[2026-10-28 08:11:11,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:11:11,851.851 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:11:12,008.008 INFO    ] No existing commands found in stream
[2026-10-28 08:11:17,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:11:17,035.035 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 08:11:19,557.557 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:11:19,559.559 INFO    ] Checking for system updates...
[2026-10-28 08:11:19,594.594 INFO    ] 200
[2026-10-28 08:11:19,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:11:19,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:11:19,651.651 INFO    ] No update needed
[2026-10-28 08:11:19,653.653 INFO    ] Checking for camera pi updates...
[2026-10-28 08:11:19,691.691 INFO    ] 200
[2026-10-28 08:11:19,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:11:19,734.734 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:11:19,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:11:19,817.817 INFO    ] No camera update needed
[2026-10-28 08:11:19,819.819 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:11:19,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:11:19,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:11:19,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:11:21,871.871 INFO    ] ================================================
[2026-10-28 08:11:21,888.888 INFO    ] Launching Daemon at Wed Oct 28 08:11:21 IST 2026
[2026-10-28 08:11:21,899.899 INFO    ] ================================================
[2026-10-28 08:11:22,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:11:22
[2026-10-28 08:11:23,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:11:23,397.397 INFO    ] Initializing speech engine...
[2026-10-28 08:11:23,404.404 INFO    ] 2026-10-28 08:11:23
[2026-10-28 08:11:23,671.671 INFO    ] 2026-10-28 08:11:23
[2026-10-28 08:11:23,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:11:23,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:11:23,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:11:24,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:11:24,237.237 INFO    ] time= 28/10/2026 08:11:24
[2026-10-28 08:11:24,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:11:24,261.261 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:11:24,424.424 INFO    ] No existing commands found in stream
[2026-10-28 08:11:29,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:11:29,453.453 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-28 08:11:30,517.517 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:11:30,519.519 INFO    ] Checking for system updates...
[2026-10-28 08:11:30,555.555 INFO    ] 200
[2026-10-28 08:11:30,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:11:30,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:11:30,611.611 INFO    ] No update needed
[2026-10-28 08:11:30,613.613 INFO    ] Checking for camera pi updates...
[2026-10-28 08:11:30,647.647 INFO    ] 200
[2026-10-28 08:11:30,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:11:30,689.689 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:11:30,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:11:30,777.777 INFO    ] No camera update needed
[2026-10-28 08:11:30,779.779 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:11:30,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:11:30,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:11:30,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:11:32,831.831 INFO    ] ================================================
[2026-10-28 08:11:32,846.846 INFO    ] Launching Daemon at Wed Oct 28 08:11:32 IST 2026
[2026-10-28 08:11:32,858.858 INFO    ] ================================================
[2026-10-28 08:11:33,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:11:33
[2026-10-28 08:11:34,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:11:34,383.383 INFO    ] Initializing speech engine...
[2026-10-28 08:11:34,392.392 INFO    ] 2026-10-28 08:11:34
[2026-10-28 08:11:34,655.655 INFO    ] 2026-10-28 08:11:34
[2026-10-28 08:11:34,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:11:34,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:11:35,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:11:35,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:11:35,216.216 INFO    ] time= 28/10/2026 08:11:35
[2026-10-28 08:11:35,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:11:35,250.250 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:11:35,381.381 INFO    ] No existing commands found in stream
[2026-10-28 08:11:40,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:11:40,409.409 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-28 08:11:44,856.856 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:11:44,858.858 INFO    ] Checking for system updates...
[2026-10-28 08:11:44,896.896 INFO    ] 200
[2026-10-28 08:11:44,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:11:44,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:11:44,958.958 INFO    ] No update needed
[2026-10-28 08:11:44,961.961 INFO    ] Checking for camera pi updates...
[2026-10-28 08:11:44,994.994 INFO    ] 200
[2026-10-28 08:11:44,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:11:45,037.037 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:11:45,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:11:45,117.117 INFO    ] No camera update needed
[2026-10-28 08:11:45,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:11:45,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:11:45,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:11:45,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:11:47,174.174 INFO    ] ================================================
[2026-10-28 08:11:47,189.189 INFO    ] Launching Daemon at Wed Oct 28 08:11:47 IST 2026
[2026-10-28 08:11:47,200.200 INFO    ] ================================================
[2026-10-28 08:11:47,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:11:47
[2026-10-28 08:11:48,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:11:48,662.662 INFO    ] Initializing speech engine...
[2026-10-28 08:11:48,672.672 INFO    ] 2026-10-28 08:11:48
[2026-10-28 08:11:48,940.940 INFO    ] 2026-10-28 08:11:48
[2026-10-28 08:11:48,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:11:49,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:11:49,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:11:49,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:11:49,540.540 INFO    ] time= 28/10/2026 08:11:49
[2026-10-28 08:11:49,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:11:49,567.567 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:11:49,711.711 INFO    ] No existing commands found in stream
[2026-10-28 08:11:54,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:11:54,738.738 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 08:11:58,769.769 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:11:58,772.772 INFO    ] Checking for system updates...
[2026-10-28 08:11:58,807.807 INFO    ] 200
[2026-10-28 08:11:58,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:11:58,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:11:58,864.864 INFO    ] No update needed
[2026-10-28 08:11:58,866.866 INFO    ] Checking for camera pi updates...
[2026-10-28 08:11:58,900.900 INFO    ] 200
[2026-10-28 08:11:58,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:11:58,949.949 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:11:59,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:11:59,040.040 INFO    ] No camera update needed
[2026-10-28 08:11:59,043.043 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:11:59,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:11:59,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:11:59,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:12:01,096.096 INFO    ] ================================================
[2026-10-28 08:12:01,112.112 INFO    ] Launching Daemon at Wed Oct 28 08:12:01 IST 2026
[2026-10-28 08:12:01,122.122 INFO    ] ================================================
[2026-10-28 08:12:01,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:12:01
[2026-10-28 08:12:02,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:12:02,829.829 INFO    ] Initializing speech engine...
[2026-10-28 08:12:02,839.839 INFO    ] 2026-10-28 08:12:02
[2026-10-28 08:12:03,132.132 INFO    ] 2026-10-28 08:12:03
[2026-10-28 08:12:03,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:12:03,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:12:03,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:12:03,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:12:03,683.683 INFO    ] time= 28/10/2026 08:12:03
[2026-10-28 08:12:03,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:12:03,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:12:03,893.893 INFO    ] No existing commands found in stream
[2026-10-28 08:12:08,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:12:08,912.912 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 08:12:13,326.326 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:12:13,328.328 INFO    ] Checking for system updates...
[2026-10-28 08:12:13,364.364 INFO    ] 200
[2026-10-28 08:12:13,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:12:13,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:12:13,421.421 INFO    ] No update needed
[2026-10-28 08:12:13,424.424 INFO    ] Checking for camera pi updates...
[2026-10-28 08:12:13,457.457 INFO    ] 200
[2026-10-28 08:12:13,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:12:13,504.504 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:12:13,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:12:13,611.611 INFO    ] No camera update needed
[2026-10-28 08:12:13,614.614 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:12:13,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:12:13,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:12:13,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:12:15,668.668 INFO    ] ================================================
[2026-10-28 08:12:15,683.683 INFO    ] Launching Daemon at Wed Oct 28 08:12:15 IST 2026
[2026-10-28 08:12:15,694.694 INFO    ] ================================================
[2026-10-28 08:12:16,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:12:16
[2026-10-28 08:12:16,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:12:17,190.190 INFO    ] Initializing speech engine...
[2026-10-28 08:12:17,203.203 INFO    ] 2026-10-28 08:12:17
[2026-10-28 08:12:17,482.482 INFO    ] 2026-10-28 08:12:17
[2026-10-28 08:12:17,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:12:17,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:12:17,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:12:18,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:12:18,034.034 INFO    ] time= 28/10/2026 08:12:18
[2026-10-28 08:12:18,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:12:18,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:12:18,203.203 INFO    ] No existing commands found in stream
[2026-10-28 08:12:23,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:12:23,231.231 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 08:12:24,006.006 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:12:24,009.009 INFO    ] Checking for system updates...
[2026-10-28 08:12:24,049.049 INFO    ] 200
[2026-10-28 08:12:24,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:12:24,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:12:24,109.109 INFO    ] No update needed
[2026-10-28 08:12:24,111.111 INFO    ] Checking for camera pi updates...
[2026-10-28 08:12:24,151.151 INFO    ] 200
[2026-10-28 08:12:24,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:12:24,198.198 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:12:24,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:12:24,305.305 INFO    ] No camera update needed
[2026-10-28 08:12:24,308.308 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:12:24,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:12:24,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:12:24,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:12:26,360.360 INFO    ] ================================================
[2026-10-28 08:12:26,376.376 INFO    ] Launching Daemon at Wed Oct 28 08:12:26 IST 2026
[2026-10-28 08:12:26,387.387 INFO    ] ================================================
[2026-10-28 08:12:26,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:12:26
[2026-10-28 08:12:27,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:12:27,798.798 INFO    ] Initializing speech engine...
[2026-10-28 08:12:27,813.813 INFO    ] 2026-10-28 08:12:27
[2026-10-28 08:12:28,097.097 INFO    ] 2026-10-28 08:12:28
[2026-10-28 08:12:28,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:12:28,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:12:28,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:12:28,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:12:28,714.714 INFO    ] time= 28/10/2026 08:12:28
[2026-10-28 08:12:28,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:12:28,739.739 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:12:28,889.889 INFO    ] No existing commands found in stream
[2026-10-28 08:12:33,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:12:33,907.907 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-28 08:12:37,197.197 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:12:37,200.200 INFO    ] Checking for system updates...
[2026-10-28 08:12:37,235.235 INFO    ] 200
[2026-10-28 08:12:37,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:12:37,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:12:37,292.292 INFO    ] No update needed
[2026-10-28 08:12:37,295.295 INFO    ] Checking for camera pi updates...
[2026-10-28 08:12:37,327.327 INFO    ] 200
[2026-10-28 08:12:37,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:12:37,370.370 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:12:37,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:12:37,467.467 INFO    ] No camera update needed
[2026-10-28 08:12:37,470.470 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:12:37,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:12:37,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:12:37,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:12:39,523.523 INFO    ] ================================================
[2026-10-28 08:12:39,538.538 INFO    ] Launching Daemon at Wed Oct 28 08:12:39 IST 2026
[2026-10-28 08:12:39,549.549 INFO    ] ================================================
[2026-10-28 08:12:40,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:12:40
[2026-10-28 08:12:40,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:12:40,957.957 INFO    ] Initializing speech engine...
[2026-10-28 08:12:40,979.979 INFO    ] 2026-10-28 08:12:40
[2026-10-28 08:12:41,235.235 INFO    ] 2026-10-28 08:12:41
[2026-10-28 08:12:41,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:12:41,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:12:41,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:12:41,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:12:41,720.720 INFO    ] time= 28/10/2026 08:12:41
[2026-10-28 08:12:41,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:12:41,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:12:41,941.941 INFO    ] No existing commands found in stream
[2026-10-28 08:12:46,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:12:46,971.971 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-28 08:12:51,009.009 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:12:51,011.011 INFO    ] Checking for system updates...
[2026-10-28 08:12:51,047.047 INFO    ] 200
[2026-10-28 08:12:51,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:12:51,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:12:51,104.104 INFO    ] No update needed
[2026-10-28 08:12:51,106.106 INFO    ] Checking for camera pi updates...
[2026-10-28 08:12:51,139.139 INFO    ] 200
[2026-10-28 08:12:51,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:12:51,181.181 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:12:51,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:12:51,263.263 INFO    ] No camera update needed
[2026-10-28 08:12:51,265.265 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:12:51,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:12:51,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:12:51,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:12:53,318.318 INFO    ] ================================================
[2026-10-28 08:12:53,334.334 INFO    ] Launching Daemon at Wed Oct 28 08:12:53 IST 2026
[2026-10-28 08:12:53,345.345 INFO    ] ================================================
[2026-10-28 08:12:53,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:12:53
[2026-10-28 08:12:54,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:12:54,749.749 INFO    ] Initializing speech engine...
[2026-10-28 08:12:54,760.760 INFO    ] 2026-10-28 08:12:54
[2026-10-28 08:12:55,052.052 INFO    ] 2026-10-28 08:12:55
[2026-10-28 08:12:55,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:12:55,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:12:55,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:12:55,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:12:55,641.641 INFO    ] time= 28/10/2026 08:12:55
[2026-10-28 08:12:55,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:12:55,686.686 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:12:55,846.846 INFO    ] No existing commands found in stream
[2026-10-28 08:13:00,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:13:00,865.865 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-28 08:13:03,097.097 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:13:03,100.100 INFO    ] Checking for system updates...
[2026-10-28 08:13:03,141.141 INFO    ] 200
[2026-10-28 08:13:03,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:13:03,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:13:03,206.206 INFO    ] No update needed
[2026-10-28 08:13:03,209.209 INFO    ] Checking for camera pi updates...
[2026-10-28 08:13:03,252.252 INFO    ] 200
[2026-10-28 08:13:03,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:13:03,294.294 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:13:03,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:13:03,383.383 INFO    ] No camera update needed
[2026-10-28 08:13:03,386.386 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:13:03,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:13:03,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:13:03,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:13:05,442.442 INFO    ] ================================================
[2026-10-28 08:13:05,458.458 INFO    ] Launching Daemon at Wed Oct 28 08:13:05 IST 2026
[2026-10-28 08:13:05,469.469 INFO    ] ================================================
[2026-10-28 08:13:06,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:13:06
[2026-10-28 08:13:06,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:13:06,924.924 INFO    ] Initializing speech engine...
[2026-10-28 08:13:06,931.931 INFO    ] 2026-10-28 08:13:06
[2026-10-28 08:13:07,193.193 INFO    ] 2026-10-28 08:13:07
[2026-10-28 08:13:07,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:13:07,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:13:07,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:13:07,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:13:07,738.738 INFO    ] time= 28/10/2026 08:13:07
[2026-10-28 08:13:07,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:13:07,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:13:07,915.915 INFO    ] No existing commands found in stream
[2026-10-28 08:13:12,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:13:12,948.948 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-28 08:13:14,457.457 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:13:14,459.459 INFO    ] Checking for system updates...
[2026-10-28 08:13:14,497.497 INFO    ] 200
[2026-10-28 08:13:14,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:13:14,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:13:14,555.555 INFO    ] No update needed
[2026-10-28 08:13:14,557.557 INFO    ] Checking for camera pi updates...
[2026-10-28 08:13:14,591.591 INFO    ] 200
[2026-10-28 08:13:14,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:13:14,635.635 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:13:14,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:13:14,708.708 INFO    ] No camera update needed
[2026-10-28 08:13:14,711.711 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:13:14,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:13:14,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:13:14,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:13:16,765.765 INFO    ] ================================================
[2026-10-28 08:13:16,780.780 INFO    ] Launching Daemon at Wed Oct 28 08:13:16 IST 2026
[2026-10-28 08:13:16,791.791 INFO    ] ================================================
[2026-10-28 08:13:17,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:13:17
[2026-10-28 08:13:17,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:13:18,249.249 INFO    ] Initializing speech engine...
[2026-10-28 08:13:18,256.256 INFO    ] 2026-10-28 08:13:18
[2026-10-28 08:13:18,518.518 INFO    ] 2026-10-28 08:13:18
[2026-10-28 08:13:18,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:13:18,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:13:18,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:13:19,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:13:19,064.064 INFO    ] time= 28/10/2026 08:13:19
[2026-10-28 08:13:19,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:13:19,088.088 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:13:19,218.218 INFO    ] No existing commands found in stream
[2026-10-28 08:13:24,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:13:24,234.234 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 08:13:28,464.464 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:13:28,466.466 INFO    ] Checking for system updates...
[2026-10-28 08:13:28,501.501 INFO    ] 200
[2026-10-28 08:13:28,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:13:28,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:13:28,558.558 INFO    ] No update needed
[2026-10-28 08:13:28,561.561 INFO    ] Checking for camera pi updates...
[2026-10-28 08:13:28,594.594 INFO    ] 200
[2026-10-28 08:13:28,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:13:28,641.641 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:13:28,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:13:28,726.726 INFO    ] No camera update needed
[2026-10-28 08:13:28,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:13:28,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:13:28,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:13:28,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:13:30,784.784 INFO    ] ================================================
[2026-10-28 08:13:30,800.800 INFO    ] Launching Daemon at Wed Oct 28 08:13:30 IST 2026
[2026-10-28 08:13:30,811.811 INFO    ] ================================================
[2026-10-28 08:13:31,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:13:31
[2026-10-28 08:13:32,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:13:32,491.491 INFO    ] Initializing speech engine...
[2026-10-28 08:13:32,501.501 INFO    ] 2026-10-28 08:13:32
[2026-10-28 08:13:32,786.786 INFO    ] 2026-10-28 08:13:32
[2026-10-28 08:13:32,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:13:33,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:13:33,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:13:33,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:13:33,387.387 INFO    ] time= 28/10/2026 08:13:33
[2026-10-28 08:13:33,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:13:33,424.424 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:13:33,596.596 INFO    ] No existing commands found in stream
[2026-10-28 08:13:38,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:13:38,626.626 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 08:13:40,624.624 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:13:40,627.627 INFO    ] Checking for system updates...
[2026-10-28 08:13:40,664.664 INFO    ] 200
[2026-10-28 08:13:40,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:13:40,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:13:40,729.729 INFO    ] No update needed
[2026-10-28 08:13:40,731.731 INFO    ] Checking for camera pi updates...
[2026-10-28 08:13:40,772.772 INFO    ] 200
[2026-10-28 08:13:40,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:13:40,821.821 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:13:40,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:13:40,918.918 INFO    ] No camera update needed
[2026-10-28 08:13:40,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:13:40,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:13:40,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:13:40,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:13:42,972.972 INFO    ] ================================================
[2026-10-28 08:13:42,988.988 INFO    ] Launching Daemon at Wed Oct 28 08:13:42 IST 2026
[2026-10-28 08:13:43,999.999 INFO    ] ================================================
[2026-10-28 08:13:43,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:13:43
[2026-10-28 08:13:44,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:13:44,449.449 INFO    ] Initializing speech engine...
[2026-10-28 08:13:44,458.458 INFO    ] 2026-10-28 08:13:44
[2026-10-28 08:13:44,707.707 INFO    ] 2026-10-28 08:13:44
[2026-10-28 08:13:44,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:13:44,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:13:45,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:13:45,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:13:45,265.265 INFO    ] time= 28/10/2026 08:13:45
[2026-10-28 08:13:45,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:13:45,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:13:45,419.419 INFO    ] No existing commands found in stream
[2026-10-28 08:13:50,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:13:50,451.451 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 08:13:53,998.998 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:13:54,001.001 INFO    ] Checking for system updates...
[2026-10-28 08:13:54,036.036 INFO    ] 200
[2026-10-28 08:13:54,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:13:54,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:13:54,099.099 INFO    ] No update needed
[2026-10-28 08:13:54,102.102 INFO    ] Checking for camera pi updates...
[2026-10-28 08:13:54,135.135 INFO    ] 200
[2026-10-28 08:13:54,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:13:54,182.182 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:13:54,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:13:54,266.266 INFO    ] No camera update needed
[2026-10-28 08:13:54,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:13:54,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:13:54,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:13:54,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:13:56,322.322 INFO    ] ================================================
[2026-10-28 08:13:56,337.337 INFO    ] Launching Daemon at Wed Oct 28 08:13:56 IST 2026
[2026-10-28 08:13:56,347.347 INFO    ] ================================================
[2026-10-28 08:13:56,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:13:56
[2026-10-28 08:13:57,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:13:57,802.802 INFO    ] Initializing speech engine...
[2026-10-28 08:13:57,812.812 INFO    ] 2026-10-28 08:13:57
[2026-10-28 08:13:58,060.060 INFO    ] 2026-10-28 08:13:58
[2026-10-28 08:13:58,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:13:58,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:13:58,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:13:58,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:13:58,611.611 INFO    ] time= 28/10/2026 08:13:58
[2026-10-28 08:13:58,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:13:58,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:13:58,784.784 INFO    ] No existing commands found in stream
[2026-10-28 08:14:03,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:14:03,818.818 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 08:14:07,367.367 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:14:07,370.370 INFO    ] Checking for system updates...
[2026-10-28 08:14:07,405.405 INFO    ] 200
[2026-10-28 08:14:07,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:14:07,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:14:07,462.462 INFO    ] No update needed
[2026-10-28 08:14:07,464.464 INFO    ] Checking for camera pi updates...
[2026-10-28 08:14:07,502.502 INFO    ] 200
[2026-10-28 08:14:07,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:14:07,549.549 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:14:07,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:14:07,627.627 INFO    ] No camera update needed
[2026-10-28 08:14:07,630.630 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:14:07,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:14:07,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:14:07,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:14:09,686.686 INFO    ] ================================================
[2026-10-28 08:14:09,701.701 INFO    ] Launching Daemon at Wed Oct 28 08:14:09 IST 2026
[2026-10-28 08:14:09,712.712 INFO    ] ================================================
[2026-10-28 08:14:10,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:14:10
[2026-10-28 08:14:11,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:14:11,312.312 INFO    ] Initializing speech engine...
[2026-10-28 08:14:11,325.325 INFO    ] 2026-10-28 08:14:11
[2026-10-28 08:14:11,606.606 INFO    ] 2026-10-28 08:14:11
[2026-10-28 08:14:11,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:14:12,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:14:12,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:14:12,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:14:12,373.373 INFO    ] time= 28/10/2026 08:14:12
[2026-10-28 08:14:12,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:14:12,474.474 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:14:12,599.599 INFO    ] No existing commands found in stream
[2026-10-28 08:14:17,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:14:17,621.621 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-28 08:14:18,962.962 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:14:18,965.965 INFO    ] Checking for system updates...
[2026-10-28 08:14:19,001.001 INFO    ] 200
[2026-10-28 08:14:19,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:14:19,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:14:19,058.058 INFO    ] No update needed
[2026-10-28 08:14:19,060.060 INFO    ] Checking for camera pi updates...
[2026-10-28 08:14:19,096.096 INFO    ] 200
[2026-10-28 08:14:19,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:14:19,138.138 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:14:19,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:14:19,230.230 INFO    ] No camera update needed
[2026-10-28 08:14:19,233.233 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:14:19,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:14:19,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:14:19,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:14:21,286.286 INFO    ] ================================================
[2026-10-28 08:14:21,301.301 INFO    ] Launching Daemon at Wed Oct 28 08:14:21 IST 2026
[2026-10-28 08:14:21,313.313 INFO    ] ================================================
[2026-10-28 08:14:21,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:14:21
[2026-10-28 08:14:22,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:14:22,920.920 INFO    ] Initializing speech engine...
[2026-10-28 08:14:22,935.935 INFO    ] 2026-10-28 08:14:22
[2026-10-28 08:14:23,215.215 INFO    ] 2026-10-28 08:14:23
[2026-10-28 08:14:23,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:14:23,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:14:23,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:14:23,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:14:23,778.778 INFO    ] time= 28/10/2026 08:14:23
[2026-10-28 08:14:23,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:14:23,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:14:23,924.924 INFO    ] No existing commands found in stream
[2026-10-28 08:14:28,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:14:28,958.958 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 08:14:31,019.019 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:14:31,022.022 INFO    ] Checking for system updates...
[2026-10-28 08:14:31,064.064 INFO    ] 200
[2026-10-28 08:14:31,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:14:31,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:14:31,123.123 INFO    ] No update needed
[2026-10-28 08:14:31,126.126 INFO    ] Checking for camera pi updates...
[2026-10-28 08:14:31,164.164 INFO    ] 200
[2026-10-28 08:14:31,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:14:31,208.208 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:14:31,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:14:31,391.391 INFO    ] No camera update needed
[2026-10-28 08:14:31,394.394 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:14:31,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:14:31,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:14:31,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:14:33,450.450 INFO    ] ================================================
[2026-10-28 08:14:33,466.466 INFO    ] Launching Daemon at Wed Oct 28 08:14:33 IST 2026
[2026-10-28 08:14:33,477.477 INFO    ] ================================================
[2026-10-28 08:14:34,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:14:34
[2026-10-28 08:14:34,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:14:34,946.946 INFO    ] Initializing speech engine...
[2026-10-28 08:14:34,956.956 INFO    ] 2026-10-28 08:14:34
[2026-10-28 08:14:35,221.221 INFO    ] 2026-10-28 08:14:35
[2026-10-28 08:14:35,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:14:35,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:14:35,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:14:35,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:14:35,823.823 INFO    ] time= 28/10/2026 08:14:35
[2026-10-28 08:14:35,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:14:35,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:14:35,993.993 INFO    ] No existing commands found in stream
[2026-10-28 08:14:41,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:14:41,027.027 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-28 08:14:44,294.294 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:14:44,297.297 INFO    ] Checking for system updates...
[2026-10-28 08:14:44,335.335 INFO    ] 200
[2026-10-28 08:14:44,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:14:44,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:14:44,393.393 INFO    ] No update needed
[2026-10-28 08:14:44,396.396 INFO    ] Checking for camera pi updates...
[2026-10-28 08:14:44,431.431 INFO    ] 200
[2026-10-28 08:14:44,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:14:44,480.480 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:14:44,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:14:44,574.574 INFO    ] No camera update needed
[2026-10-28 08:14:44,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:14:44,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:14:44,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:14:44,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:14:46,634.634 INFO    ] ================================================
[2026-10-28 08:14:46,650.650 INFO    ] Launching Daemon at Wed Oct 28 08:14:46 IST 2026
[2026-10-28 08:14:46,662.662 INFO    ] ================================================
[2026-10-28 08:14:47,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:14:47
[2026-10-28 08:14:47,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:14:48,109.109 INFO    ] Initializing speech engine...
[2026-10-28 08:14:48,118.118 INFO    ] 2026-10-28 08:14:48
[2026-10-28 08:14:48,395.395 INFO    ] 2026-10-28 08:14:48
[2026-10-28 08:14:48,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:14:48,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:14:48,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:14:48,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:14:48,957.957 INFO    ] time= 28/10/2026 08:14:48
[2026-10-28 08:14:48,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:14:49,005.005 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:14:49,130.130 INFO    ] No existing commands found in stream
[2026-10-28 08:14:54,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:14:54,163.163 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-28 08:14:58,452.452 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:14:58,455.455 INFO    ] Checking for system updates...
[2026-10-28 08:14:58,492.492 INFO    ] 200
[2026-10-28 08:14:58,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:14:58,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:14:58,559.559 INFO    ] No update needed
[2026-10-28 08:14:58,562.562 INFO    ] Checking for camera pi updates...
[2026-10-28 08:14:58,598.598 INFO    ] 200
[2026-10-28 08:14:58,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:14:58,648.648 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:14:58,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:14:58,734.734 INFO    ] No camera update needed
[2026-10-28 08:14:58,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:14:58,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:14:58,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:14:58,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:15:00,794.794 INFO    ] ================================================
[2026-10-28 08:15:00,810.810 INFO    ] Launching Daemon at Wed Oct 28 08:15:00 IST 2026
[2026-10-28 08:15:00,821.821 INFO    ] ================================================
[2026-10-28 08:15:01,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:15:01
[2026-10-28 08:15:02,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:15:03,084.084 INFO    ] Initializing speech engine...
[2026-10-28 08:15:03,089.089 INFO    ] 2026-10-28 08:15:03
[2026-10-28 08:15:03,450.450 INFO    ] 2026-10-28 08:15:03
[2026-10-28 08:15:03,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:15:03,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:15:03,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:15:04,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:15:04,129.129 INFO    ] time= 28/10/2026 08:15:04
[2026-10-28 08:15:04,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:15:04,212.212 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:15:04,336.336 INFO    ] No existing commands found in stream
[2026-10-28 08:15:09,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:15:09,366.366 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-28 08:15:13,652.652 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:15:13,654.654 INFO    ] Checking for system updates...
[2026-10-28 08:15:13,689.689 INFO    ] 200
[2026-10-28 08:15:13,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:15:13,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:15:13,750.750 INFO    ] No update needed
[2026-10-28 08:15:13,753.753 INFO    ] Checking for camera pi updates...
[2026-10-28 08:15:13,786.786 INFO    ] 200
[2026-10-28 08:15:13,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:15:13,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:15:13,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:15:13,906.906 INFO    ] No camera update needed
[2026-10-28 08:15:13,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:15:13,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:15:13,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:15:13,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:15:15,960.960 INFO    ] ================================================
[2026-10-28 08:15:15,975.975 INFO    ] Launching Daemon at Wed Oct 28 08:15:15 IST 2026
[2026-10-28 08:15:15,986.986 INFO    ] ================================================
[2026-10-28 08:15:16,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:15:16
[2026-10-28 08:15:17,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:15:17,434.434 INFO    ] Initializing speech engine...
[2026-10-28 08:15:17,443.443 INFO    ] 2026-10-28 08:15:17
[2026-10-28 08:15:17,704.704 INFO    ] 2026-10-28 08:15:17
[2026-10-28 08:15:17,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:15:18,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:15:18,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:15:18,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:15:18,249.249 INFO    ] time= 28/10/2026 08:15:18
[2026-10-28 08:15:18,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:15:18,278.278 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:15:18,400.400 INFO    ] No existing commands found in stream
[2026-10-28 08:15:23,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:15:23,418.418 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-28 08:15:24,341.341 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:15:24,343.343 INFO    ] Checking for system updates...
[2026-10-28 08:15:24,380.380 INFO    ] 200
[2026-10-28 08:15:24,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:15:24,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:15:24,445.445 INFO    ] No update needed
[2026-10-28 08:15:24,448.448 INFO    ] Checking for camera pi updates...
[2026-10-28 08:15:24,485.485 INFO    ] 200
[2026-10-28 08:15:24,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:15:24,528.528 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:15:24,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:15:24,630.630 INFO    ] No camera update needed
[2026-10-28 08:15:24,632.632 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:15:24,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:15:24,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:15:24,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:15:26,684.684 INFO    ] ================================================
[2026-10-28 08:15:26,699.699 INFO    ] Launching Daemon at Wed Oct 28 08:15:26 IST 2026
[2026-10-28 08:15:26,710.710 INFO    ] ================================================
[2026-10-28 08:15:27,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:15:27
[2026-10-28 08:15:27,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:15:28,295.295 INFO    ] Initializing speech engine...
[2026-10-28 08:15:28,308.308 INFO    ] 2026-10-28 08:15:28
[2026-10-28 08:15:28,593.593 INFO    ] 2026-10-28 08:15:28
[2026-10-28 08:15:28,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:15:28,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:15:28,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:15:29,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:15:29,150.150 INFO    ] time= 28/10/2026 08:15:29
[2026-10-28 08:15:29,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:15:29,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:15:29,299.299 INFO    ] No existing commands found in stream
[2026-10-28 08:15:34,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:15:34,328.328 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-28 08:15:38,358.358 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:15:38,361.361 INFO    ] Checking for system updates...
[2026-10-28 08:15:38,398.398 INFO    ] 200
[2026-10-28 08:15:38,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:15:38,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:15:38,463.463 INFO    ] No update needed
[2026-10-28 08:15:38,466.466 INFO    ] Checking for camera pi updates...
[2026-10-28 08:15:38,501.501 INFO    ] 200
[2026-10-28 08:15:38,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:15:38,546.546 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:15:38,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:15:38,632.632 INFO    ] No camera update needed
[2026-10-28 08:15:38,635.635 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:15:38,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:15:38,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:15:38,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:15:40,692.692 INFO    ] ================================================
[2026-10-28 08:15:40,707.707 INFO    ] Launching Daemon at Wed Oct 28 08:15:40 IST 2026
[2026-10-28 08:15:40,718.718 INFO    ] ================================================
[2026-10-28 08:15:41,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:15:41
[2026-10-28 08:15:41,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:15:42,278.278 INFO    ] Initializing speech engine...
[2026-10-28 08:15:42,293.293 INFO    ] 2026-10-28 08:15:42
[2026-10-28 08:15:42,565.565 INFO    ] 2026-10-28 08:15:42
[2026-10-28 08:15:42,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:15:42,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:15:42,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:15:43,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:15:43,123.123 INFO    ] time= 28/10/2026 08:15:43
[2026-10-28 08:15:43,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:15:43,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:15:43,289.289 INFO    ] No existing commands found in stream
[2026-10-28 08:15:48,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:15:48,317.317 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-28 08:15:51,377.377 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:15:51,380.380 INFO    ] Checking for system updates...
[2026-10-28 08:15:51,419.419 INFO    ] 200
[2026-10-28 08:15:51,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:15:51,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:15:51,476.476 INFO    ] No update needed
[2026-10-28 08:15:51,478.478 INFO    ] Checking for camera pi updates...
[2026-10-28 08:15:51,511.511 INFO    ] 200
[2026-10-28 08:15:51,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:15:51,559.559 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:15:51,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:15:51,644.644 INFO    ] No camera update needed
[2026-10-28 08:15:51,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:15:51,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:15:51,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:15:51,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:15:53,700.700 INFO    ] ================================================
[2026-10-28 08:15:53,715.715 INFO    ] Launching Daemon at Wed Oct 28 08:15:53 IST 2026
[2026-10-28 08:15:53,726.726 INFO    ] ================================================
[2026-10-28 08:15:54,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:15:54
[2026-10-28 08:15:55,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:15:55,340.340 INFO    ] Initializing speech engine...
[2026-10-28 08:15:55,348.348 INFO    ] 2026-10-28 08:15:55
[2026-10-28 08:15:55,631.631 INFO    ] 2026-10-28 08:15:55
[2026-10-28 08:15:55,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:15:55,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:15:55,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:15:56,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:15:56,241.241 INFO    ] time= 28/10/2026 08:15:56
[2026-10-28 08:15:56,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:15:56,342.342 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:15:56,479.479 INFO    ] No existing commands found in stream
[2026-10-28 08:16:01,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:16:01,508.508 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-28 08:16:03,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:16:03,081.081 INFO    ] Checking for system updates...
[2026-10-28 08:16:03,136.136 INFO    ] 200
[2026-10-28 08:16:03,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:16:03,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:16:03,212.212 INFO    ] No update needed
[2026-10-28 08:16:03,215.215 INFO    ] Checking for camera pi updates...
[2026-10-28 08:16:03,249.249 INFO    ] 200
[2026-10-28 08:16:03,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:16:03,297.297 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:16:03,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:16:03,420.420 INFO    ] No camera update needed
[2026-10-28 08:16:03,423.423 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:16:03,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:16:03,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:16:03,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:16:05,476.476 INFO    ] ================================================
[2026-10-28 08:16:05,491.491 INFO    ] Launching Daemon at Wed Oct 28 08:16:05 IST 2026
[2026-10-28 08:16:05,501.501 INFO    ] ================================================
[2026-10-28 08:16:06,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:16:06
[2026-10-28 08:16:06,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:16:07,224.224 INFO    ] Initializing speech engine...
[2026-10-28 08:16:07,231.231 INFO    ] 2026-10-28 08:16:07
[2026-10-28 08:16:07,505.505 INFO    ] 2026-10-28 08:16:07
[2026-10-28 08:16:07,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:16:07,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:16:07,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:16:08,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:16:08,072.072 INFO    ] time= 28/10/2026 08:16:08
[2026-10-28 08:16:08,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:16:08,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:16:08,292.292 INFO    ] No existing commands found in stream
[2026-10-28 08:16:13,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:16:13,326.326 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-28 08:16:17,786.786 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:16:17,789.789 INFO    ] Checking for system updates...
[2026-10-28 08:16:17,830.830 INFO    ] 200
[2026-10-28 08:16:17,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:16:17,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:16:17,889.889 INFO    ] No update needed
[2026-10-28 08:16:17,891.891 INFO    ] Checking for camera pi updates...
[2026-10-28 08:16:17,928.928 INFO    ] 200
[2026-10-28 08:16:17,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:16:17,975.975 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:16:18,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:16:18,063.063 INFO    ] No camera update needed
[2026-10-28 08:16:18,066.066 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:16:18,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:16:18,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:16:18,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:16:20,122.122 INFO    ] ================================================
[2026-10-28 08:16:20,138.138 INFO    ] Launching Daemon at Wed Oct 28 08:16:20 IST 2026
[2026-10-28 08:16:20,148.148 INFO    ] ================================================
[2026-10-28 08:16:20,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:16:20
[2026-10-28 08:16:21,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:16:21,604.604 INFO    ] Initializing speech engine...
[2026-10-28 08:16:21,614.614 INFO    ] 2026-10-28 08:16:21
[2026-10-28 08:16:21,862.862 INFO    ] 2026-10-28 08:16:21
[2026-10-28 08:16:21,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:16:22,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:16:22,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:16:22,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:16:22,431.431 INFO    ] time= 28/10/2026 08:16:22
[2026-10-28 08:16:22,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:16:22,466.466 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:16:22,591.591 INFO    ] No existing commands found in stream
[2026-10-28 08:16:27,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:16:27,620.620 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-28 08:16:29,039.039 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:16:29,041.041 INFO    ] Checking for system updates...
[2026-10-28 08:16:29,077.077 INFO    ] 200
[2026-10-28 08:16:29,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:16:29,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:16:29,134.134 INFO    ] No update needed
[2026-10-28 08:16:29,136.136 INFO    ] Checking for camera pi updates...
[2026-10-28 08:16:29,171.171 INFO    ] 200
[2026-10-28 08:16:29,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:16:29,214.214 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:16:29,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:16:29,295.295 INFO    ] No camera update needed
[2026-10-28 08:16:29,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:16:29,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:16:29,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:16:29,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:16:31,352.352 INFO    ] ================================================
[2026-10-28 08:16:31,368.368 INFO    ] Launching Daemon at Wed Oct 28 08:16:31 IST 2026
[2026-10-28 08:16:31,378.378 INFO    ] ================================================
[2026-10-28 08:16:31,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:16:31
[2026-10-28 08:16:32,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:16:32,888.888 INFO    ] Initializing speech engine...
[2026-10-28 08:16:32,894.894 INFO    ] 2026-10-28 08:16:32
[2026-10-28 08:16:33,166.166 INFO    ] 2026-10-28 08:16:33
[2026-10-28 08:16:33,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:16:33,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:16:33,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:16:33,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:16:33,738.738 INFO    ] time= 28/10/2026 08:16:33
[2026-10-28 08:16:33,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:16:33,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:16:33,894.894 INFO    ] No existing commands found in stream
[2026-10-28 08:16:38,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:16:38,910.910 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-28 08:16:41,438.438 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:16:41,441.441 INFO    ] Checking for system updates...
[2026-10-28 08:16:41,477.477 INFO    ] 200
[2026-10-28 08:16:41,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:16:41,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:16:41,534.534 INFO    ] No update needed
[2026-10-28 08:16:41,537.537 INFO    ] Checking for camera pi updates...
[2026-10-28 08:16:41,574.574 INFO    ] 200
[2026-10-28 08:16:41,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:16:41,623.623 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:16:41,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:16:41,716.716 INFO    ] No camera update needed
[2026-10-28 08:16:41,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:16:41,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:16:41,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:16:41,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:16:43,771.771 INFO    ] ================================================
[2026-10-28 08:16:43,786.786 INFO    ] Launching Daemon at Wed Oct 28 08:16:43 IST 2026
[2026-10-28 08:16:43,797.797 INFO    ] ================================================
[2026-10-28 08:16:44,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:16:44
[2026-10-28 08:16:44,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:16:45,240.240 INFO    ] Initializing speech engine...
[2026-10-28 08:16:45,247.247 INFO    ] 2026-10-28 08:16:45
[2026-10-28 08:16:45,495.495 INFO    ] 2026-10-28 08:16:45
[2026-10-28 08:16:45,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:16:45,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:16:45,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:16:46,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:16:46,065.065 INFO    ] time= 28/10/2026 08:16:46
[2026-10-28 08:16:46,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:16:46,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:16:46,255.255 INFO    ] No existing commands found in stream
[2026-10-28 08:16:51,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:16:51,283.283 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-28 08:16:55,081.081 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:16:55,084.084 INFO    ] Checking for system updates...
[2026-10-28 08:16:55,123.123 INFO    ] 200
[2026-10-28 08:16:55,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:16:55,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:16:55,180.180 INFO    ] No update needed
[2026-10-28 08:16:55,182.182 INFO    ] Checking for camera pi updates...
[2026-10-28 08:16:55,219.219 INFO    ] 200
[2026-10-28 08:16:55,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:16:55,261.261 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:16:55,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:16:55,354.354 INFO    ] No camera update needed
[2026-10-28 08:16:55,357.357 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:16:55,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:16:55,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:16:55,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:16:57,411.411 INFO    ] ================================================
[2026-10-28 08:16:57,426.426 INFO    ] Launching Daemon at Wed Oct 28 08:16:57 IST 2026
[2026-10-28 08:16:57,437.437 INFO    ] ================================================
[2026-10-28 08:16:58,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:16:58
[2026-10-28 08:16:58,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:16:58,895.895 INFO    ] Initializing speech engine...
[2026-10-28 08:16:58,905.905 INFO    ] 2026-10-28 08:16:58
[2026-10-28 08:16:59,167.167 INFO    ] 2026-10-28 08:16:59
[2026-10-28 08:16:59,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:16:59,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:16:59,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:16:59,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:16:59,715.715 INFO    ] time= 28/10/2026 08:16:59
[2026-10-28 08:16:59,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:16:59,739.739 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:16:59,865.865 INFO    ] No existing commands found in stream
[2026-10-28 08:17:04,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:17:04,882.882 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-28 08:17:05,901.901 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:17:05,904.904 INFO    ] Checking for system updates...
[2026-10-28 08:17:05,940.940 INFO    ] 200
[2026-10-28 08:17:05,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:17:05,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:17:05,996.996 INFO    ] No update needed
[2026-10-28 08:17:05,999.999 INFO    ] Checking for camera pi updates...
[2026-10-28 08:17:06,033.033 INFO    ] 200
[2026-10-28 08:17:06,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:17:06,075.075 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:17:06,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:17:06,162.162 INFO    ] No camera update needed
[2026-10-28 08:17:06,165.165 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:17:06,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:17:06,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:17:06,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:17:08,217.217 INFO    ] ================================================
[2026-10-28 08:17:08,232.232 INFO    ] Launching Daemon at Wed Oct 28 08:17:08 IST 2026
[2026-10-28 08:17:08,242.242 INFO    ] ================================================
[2026-10-28 08:17:08,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:17:08
[2026-10-28 08:17:09,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:17:09,732.732 INFO    ] Initializing speech engine...
[2026-10-28 08:17:09,746.746 INFO    ] 2026-10-28 08:17:09
[2026-10-28 08:17:10,067.067 INFO    ] 2026-10-28 08:17:10
[2026-10-28 08:17:10,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:17:10,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:17:10,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:17:10,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:17:10,772.772 INFO    ] time= 28/10/2026 08:17:10
[2026-10-28 08:17:10,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:17:10,918.918 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:17:11,127.127 INFO    ] No existing commands found in stream
[2026-10-28 08:17:16,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:17:16,161.161 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-28 08:17:17,241.241 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:17:17,244.244 INFO    ] Checking for system updates...
[2026-10-28 08:17:17,282.282 INFO    ] 200
[2026-10-28 08:17:17,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:17:17,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:17:17,348.348 INFO    ] No update needed
[2026-10-28 08:17:17,350.350 INFO    ] Checking for camera pi updates...
[2026-10-28 08:17:17,384.384 INFO    ] 200
[2026-10-28 08:17:17,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:17:17,426.426 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:17:17,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:17:17,536.536 INFO    ] No camera update needed
[2026-10-28 08:17:17,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:17:17,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:17:17,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:17:17,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:17:19,591.591 INFO    ] ================================================
[2026-10-28 08:17:19,607.607 INFO    ] Launching Daemon at Wed Oct 28 08:17:19 IST 2026
[2026-10-28 08:17:19,618.618 INFO    ] ================================================
[2026-10-28 08:17:20,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:17:20
[2026-10-28 08:17:20,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:17:21,300.300 INFO    ] Initializing speech engine...
[2026-10-28 08:17:21,311.311 INFO    ] 2026-10-28 08:17:21
[2026-10-28 08:17:21,596.596 INFO    ] 2026-10-28 08:17:21
[2026-10-28 08:17:21,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:17:21,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:17:21,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:17:22,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:17:22,195.195 INFO    ] time= 28/10/2026 08:17:22
[2026-10-28 08:17:22,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:17:22,215.215 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:17:22,390.390 INFO    ] No existing commands found in stream
[2026-10-28 08:17:27,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:17:27,421.421 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 08:17:28,480.480 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:17:28,483.483 INFO    ] Checking for system updates...
[2026-10-28 08:17:28,521.521 INFO    ] 200
[2026-10-28 08:17:28,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:17:28,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:17:28,578.578 INFO    ] No update needed
[2026-10-28 08:17:28,580.580 INFO    ] Checking for camera pi updates...
[2026-10-28 08:17:28,614.614 INFO    ] 200
[2026-10-28 08:17:28,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:17:28,656.656 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:17:28,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:17:28,742.742 INFO    ] No camera update needed
[2026-10-28 08:17:28,745.745 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:17:28,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:17:28,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:17:28,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:17:30,799.799 INFO    ] ================================================
[2026-10-28 08:17:30,815.815 INFO    ] Launching Daemon at Wed Oct 28 08:17:30 IST 2026
[2026-10-28 08:17:30,826.826 INFO    ] ================================================
[2026-10-28 08:17:31,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:17:31
[2026-10-28 08:17:32,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:17:32,299.299 INFO    ] Initializing speech engine...
[2026-10-28 08:17:32,313.313 INFO    ] 2026-10-28 08:17:32
[2026-10-28 08:17:32,580.580 INFO    ] 2026-10-28 08:17:32
[2026-10-28 08:17:32,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:17:32,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:17:32,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:17:33,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:17:33,185.185 INFO    ] time= 28/10/2026 08:17:33
[2026-10-28 08:17:33,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:17:33,249.249 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:17:33,403.403 INFO    ] No existing commands found in stream
[2026-10-28 08:17:38,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:17:38,432.432 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 08:17:42,458.458 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:17:42,461.461 INFO    ] Checking for system updates...
[2026-10-28 08:17:42,498.498 INFO    ] 200
[2026-10-28 08:17:42,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:17:42,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:17:42,565.565 INFO    ] No update needed
[2026-10-28 08:17:42,568.568 INFO    ] Checking for camera pi updates...
[2026-10-28 08:17:42,602.602 INFO    ] 200
[2026-10-28 08:17:42,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:17:42,645.645 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:17:42,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:17:42,731.731 INFO    ] No camera update needed
[2026-10-28 08:17:42,733.733 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:17:42,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:17:42,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:17:42,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:17:44,786.786 INFO    ] ================================================
[2026-10-28 08:17:44,802.802 INFO    ] Launching Daemon at Wed Oct 28 08:17:44 IST 2026
[2026-10-28 08:17:44,812.812 INFO    ] ================================================
[2026-10-28 08:17:45,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:17:45
[2026-10-28 08:17:45,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:17:46,274.274 INFO    ] Initializing speech engine...
[2026-10-28 08:17:46,284.284 INFO    ] 2026-10-28 08:17:46
[2026-10-28 08:17:46,533.533 INFO    ] 2026-10-28 08:17:46
[2026-10-28 08:17:46,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:17:46,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:17:46,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:17:47,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:17:47,089.089 INFO    ] time= 28/10/2026 08:17:47
[2026-10-28 08:17:47,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:17:47,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:17:47,246.246 INFO    ] No existing commands found in stream
[2026-10-28 08:17:52,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:17:52,271.271 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 08:17:55,760.760 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:17:55,763.763 INFO    ] Checking for system updates...
[2026-10-28 08:17:55,800.800 INFO    ] 200
[2026-10-28 08:17:55,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:17:55,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:17:55,858.858 INFO    ] No update needed
[2026-10-28 08:17:55,861.861 INFO    ] Checking for camera pi updates...
[2026-10-28 08:17:55,898.898 INFO    ] 200
[2026-10-28 08:17:55,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:17:55,941.941 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:17:56,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:17:56,027.027 INFO    ] No camera update needed
[2026-10-28 08:17:56,031.031 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:17:56,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:17:56,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:17:56,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:17:58,087.087 INFO    ] ================================================
[2026-10-28 08:17:58,103.103 INFO    ] Launching Daemon at Wed Oct 28 08:17:58 IST 2026
[2026-10-28 08:17:58,114.114 INFO    ] ================================================
[2026-10-28 08:17:58,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:17:58
[2026-10-28 08:17:59,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:17:59,546.546 INFO    ] Initializing speech engine...
[2026-10-28 08:17:59,569.569 INFO    ] 2026-10-28 08:17:59
[2026-10-28 08:17:59,830.830 INFO    ] 2026-10-28 08:17:59
[2026-10-28 08:17:59,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:18:00,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:18:00,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:18:00,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:18:00,389.389 INFO    ] time= 28/10/2026 08:18:00
[2026-10-28 08:18:00,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:18:00,424.424 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:18:00,576.576 INFO    ] No existing commands found in stream
[2026-10-28 08:18:05,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:18:05,589.589 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-28 08:18:06,957.957 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:18:06,959.959 INFO    ] Checking for system updates...
[2026-10-28 08:18:06,995.995 INFO    ] 200
[2026-10-28 08:18:06,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:18:07,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:18:07,052.052 INFO    ] No update needed
[2026-10-28 08:18:07,055.055 INFO    ] Checking for camera pi updates...
[2026-10-28 08:18:07,088.088 INFO    ] 200
[2026-10-28 08:18:07,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:18:07,130.130 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:18:07,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:18:07,216.216 INFO    ] No camera update needed
[2026-10-28 08:18:07,218.218 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:18:07,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:18:07,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:18:07,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:18:09,270.270 INFO    ] ================================================
[2026-10-28 08:18:09,286.286 INFO    ] Launching Daemon at Wed Oct 28 08:18:09 IST 2026
[2026-10-28 08:18:09,297.297 INFO    ] ================================================
[2026-10-28 08:18:09,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:18:09
[2026-10-28 08:18:10,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:18:10,692.692 INFO    ] Initializing speech engine...
[2026-10-28 08:18:10,713.713 INFO    ] 2026-10-28 08:18:10
[2026-10-28 08:18:10,968.968 INFO    ] 2026-10-28 08:18:10
[2026-10-28 08:18:11,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:18:11,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:18:11,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:18:11,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:18:11,539.539 INFO    ] time= 28/10/2026 08:18:11
[2026-10-28 08:18:11,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:18:11,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:18:11,694.694 INFO    ] No existing commands found in stream
[2026-10-28 08:18:16,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:18:16,708.708 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 08:18:20,157.157 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:18:20,160.160 INFO    ] Checking for system updates...
[2026-10-28 08:18:20,196.196 INFO    ] 200
[2026-10-28 08:18:20,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:18:20,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:18:20,258.258 INFO    ] No update needed
[2026-10-28 08:18:20,261.261 INFO    ] Checking for camera pi updates...
[2026-10-28 08:18:20,295.295 INFO    ] 200
[2026-10-28 08:18:20,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:18:20,341.341 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:18:20,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:18:20,423.423 INFO    ] No camera update needed
[2026-10-28 08:18:20,425.425 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:18:20,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:18:20,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:18:20,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:18:22,479.479 INFO    ] ================================================
[2026-10-28 08:18:22,495.495 INFO    ] Launching Daemon at Wed Oct 28 08:18:22 IST 2026
[2026-10-28 08:18:22,505.505 INFO    ] ================================================
[2026-10-28 08:18:23,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:18:23
[2026-10-28 08:18:23,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:18:23,963.963 INFO    ] Initializing speech engine...
[2026-10-28 08:18:23,973.973 INFO    ] 2026-10-28 08:18:23
[2026-10-28 08:18:24,222.222 INFO    ] 2026-10-28 08:18:24
[2026-10-28 08:18:24,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:18:24,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:18:24,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:18:24,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:18:24,782.782 INFO    ] time= 28/10/2026 08:18:24
[2026-10-28 08:18:24,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:18:24,807.807 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:18:24,965.965 INFO    ] No existing commands found in stream
[2026-10-28 08:18:29,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:18:29,993.993 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 08:18:33,808.808 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:18:33,811.811 INFO    ] Checking for system updates...
[2026-10-28 08:18:33,847.847 INFO    ] 200
[2026-10-28 08:18:33,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:18:33,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:18:33,910.910 INFO    ] No update needed
[2026-10-28 08:18:33,913.913 INFO    ] Checking for camera pi updates...
[2026-10-28 08:18:33,946.946 INFO    ] 200
[2026-10-28 08:18:33,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:18:33,988.988 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:18:34,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:18:34,073.073 INFO    ] No camera update needed
[2026-10-28 08:18:34,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:18:34,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:18:34,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:18:34,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:18:36,130.130 INFO    ] ================================================
[2026-10-28 08:18:36,145.145 INFO    ] Launching Daemon at Wed Oct 28 08:18:36 IST 2026
[2026-10-28 08:18:36,157.157 INFO    ] ================================================
[2026-10-28 08:18:36,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:18:36
[2026-10-28 08:18:37,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:18:37,614.614 INFO    ] Initializing speech engine...
[2026-10-28 08:18:37,623.623 INFO    ] 2026-10-28 08:18:37
[2026-10-28 08:18:37,882.882 INFO    ] 2026-10-28 08:18:37
[2026-10-28 08:18:37,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:18:38,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:18:38,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:18:38,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:18:38,440.440 INFO    ] time= 28/10/2026 08:18:38
[2026-10-28 08:18:38,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:18:38,475.475 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:18:38,653.653 INFO    ] No existing commands found in stream
[2026-10-28 08:18:43,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:18:43,687.687 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 08:18:47,703.703 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:18:47,705.705 INFO    ] Checking for system updates...
[2026-10-28 08:18:47,745.745 INFO    ] 200
[2026-10-28 08:18:47,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:18:47,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:18:47,801.801 INFO    ] No update needed
[2026-10-28 08:18:47,804.804 INFO    ] Checking for camera pi updates...
[2026-10-28 08:18:47,837.837 INFO    ] 200
[2026-10-28 08:18:47,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:18:47,885.885 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:18:48,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:18:48,076.076 INFO    ] No camera update needed
[2026-10-28 08:18:48,078.078 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:18:48,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:18:48,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:18:48,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:18:50,131.131 INFO    ] ================================================
[2026-10-28 08:18:50,147.147 INFO    ] Launching Daemon at Wed Oct 28 08:18:50 IST 2026
[2026-10-28 08:18:50,158.158 INFO    ] ================================================
[2026-10-28 08:18:50,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:18:50
[2026-10-28 08:18:51,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:18:51,791.791 INFO    ] Initializing speech engine...
[2026-10-28 08:18:51,802.802 INFO    ] 2026-10-28 08:18:51
[2026-10-28 08:18:52,079.079 INFO    ] 2026-10-28 08:18:52
[2026-10-28 08:18:52,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:18:52,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:18:52,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:18:52,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:18:52,791.791 INFO    ] time= 28/10/2026 08:18:52
[2026-10-28 08:18:52,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:18:52,897.897 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:18:53,079.079 INFO    ] No existing commands found in stream
[2026-10-28 08:18:58,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:18:58,103.103 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-28 08:19:00,881.881 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:19:00,884.884 INFO    ] Checking for system updates...
[2026-10-28 08:19:00,921.921 INFO    ] 200
[2026-10-28 08:19:00,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:19:00,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:19:00,980.980 INFO    ] No update needed
[2026-10-28 08:19:00,983.983 INFO    ] Checking for camera pi updates...
[2026-10-28 08:19:01,021.021 INFO    ] 200
[2026-10-28 08:19:01,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:19:01,066.066 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:19:01,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:19:01,187.187 INFO    ] No camera update needed
[2026-10-28 08:19:01,193.193 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:19:01,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:19:01,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:19:01,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:19:03,270.270 INFO    ] ================================================
[2026-10-28 08:19:03,288.288 INFO    ] Launching Daemon at Wed Oct 28 08:19:03 IST 2026
[2026-10-28 08:19:03,300.300 INFO    ] ================================================
[2026-10-28 08:19:03,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:19:03
[2026-10-28 08:19:04,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:19:04,756.756 INFO    ] Initializing speech engine...
[2026-10-28 08:19:04,763.763 INFO    ] 2026-10-28 08:19:04
[2026-10-28 08:19:05,022.022 INFO    ] 2026-10-28 08:19:05
[2026-10-28 08:19:05,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:19:05,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:19:05,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:19:05,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:19:05,564.564 INFO    ] time= 28/10/2026 08:19:05
[2026-10-28 08:19:05,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:19:05,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:19:05,718.718 INFO    ] No existing commands found in stream
[2026-10-28 08:19:10,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:19:10,733.733 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 08:19:14,142.142 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:19:14,145.145 INFO    ] Checking for system updates...
[2026-10-28 08:19:14,183.183 INFO    ] 200
[2026-10-28 08:19:14,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:19:14,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:19:14,240.240 INFO    ] No update needed
[2026-10-28 08:19:14,247.247 INFO    ] Checking for camera pi updates...
[2026-10-28 08:19:14,280.280 INFO    ] 200
[2026-10-28 08:19:14,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:19:14,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:19:14,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:19:14,416.416 INFO    ] No camera update needed
[2026-10-28 08:19:14,419.419 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:19:14,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:19:14,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:19:14,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:19:16,472.472 INFO    ] ================================================
[2026-10-28 08:19:16,488.488 INFO    ] Launching Daemon at Wed Oct 28 08:19:16 IST 2026
[2026-10-28 08:19:16,498.498 INFO    ] ================================================
[2026-10-28 08:19:17,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:19:17
[2026-10-28 08:19:17,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:19:18,099.099 INFO    ] Initializing speech engine...
[2026-10-28 08:19:18,110.110 INFO    ] 2026-10-28 08:19:18
[2026-10-28 08:19:18,416.416 INFO    ] 2026-10-28 08:19:18
[2026-10-28 08:19:18,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:19:18,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:19:18,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:19:18,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:19:18,891.891 INFO    ] time= 28/10/2026 08:19:18
[2026-10-28 08:19:18,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:19:18,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:19:19,077.077 INFO    ] No existing commands found in stream
[2026-10-28 08:19:24,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:19:24,097.097 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-28 08:19:28,168.168 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:19:28,171.171 INFO    ] Checking for system updates...
[2026-10-28 08:19:28,212.212 INFO    ] 200
[2026-10-28 08:19:28,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:19:28,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:19:28,271.271 INFO    ] No update needed
[2026-10-28 08:19:28,274.274 INFO    ] Checking for camera pi updates...
[2026-10-28 08:19:28,308.308 INFO    ] 200
[2026-10-28 08:19:28,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:19:28,352.352 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:19:28,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:19:28,442.442 INFO    ] No camera update needed
[2026-10-28 08:19:28,444.444 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:19:28,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:19:28,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:19:28,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:19:30,502.502 INFO    ] ================================================
[2026-10-28 08:19:30,516.516 INFO    ] Launching Daemon at Wed Oct 28 08:19:30 IST 2026
[2026-10-28 08:19:30,528.528 INFO    ] ================================================
[2026-10-28 08:19:31,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:19:31
[2026-10-28 08:19:31,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:19:31,977.977 INFO    ] Initializing speech engine...
[2026-10-28 08:19:32,003.003 INFO    ] 2026-10-28 08:19:31
[2026-10-28 08:19:32,293.293 INFO    ] 2026-10-28 08:19:32
[2026-10-28 08:19:32,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:19:32,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:19:32,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:19:32,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:19:32,801.801 INFO    ] time= 28/10/2026 08:19:32
[2026-10-28 08:19:32,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:19:32,903.903 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:19:33,065.065 INFO    ] No existing commands found in stream
[2026-10-28 08:19:38,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:19:38,090.090 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 08:19:40,640.640 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:19:40,643.643 INFO    ] Checking for system updates...
[2026-10-28 08:19:40,679.679 INFO    ] 200
[2026-10-28 08:19:40,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:19:40,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:19:40,740.740 INFO    ] No update needed
[2026-10-28 08:19:40,742.742 INFO    ] Checking for camera pi updates...
[2026-10-28 08:19:40,776.776 INFO    ] 200
[2026-10-28 08:19:40,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:19:40,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:19:40,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:19:40,910.910 INFO    ] No camera update needed
[2026-10-28 08:19:40,913.913 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:19:40,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:19:40,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:19:40,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:19:42,967.967 INFO    ] ================================================
[2026-10-28 08:19:42,982.982 INFO    ] Launching Daemon at Wed Oct 28 08:19:42 IST 2026
[2026-10-28 08:19:42,993.993 INFO    ] ================================================
[2026-10-28 08:19:43,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:19:43
[2026-10-28 08:19:44,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:19:44,413.413 INFO    ] Initializing speech engine...
[2026-10-28 08:19:44,422.422 INFO    ] 2026-10-28 08:19:44
[2026-10-28 08:19:44,673.673 INFO    ] 2026-10-28 08:19:44
[2026-10-28 08:19:44,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:19:44,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:19:45,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:19:45,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:19:45,242.242 INFO    ] time= 28/10/2026 08:19:45
[2026-10-28 08:19:45,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:19:45,283.283 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:19:45,454.454 INFO    ] No existing commands found in stream
[2026-10-28 08:19:50,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:19:50,482.482 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 08:19:52,328.328 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:19:52,331.331 INFO    ] Checking for system updates...
[2026-10-28 08:19:52,370.370 INFO    ] 200
[2026-10-28 08:19:52,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:19:52,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:19:52,434.434 INFO    ] No update needed
[2026-10-28 08:19:52,436.436 INFO    ] Checking for camera pi updates...
[2026-10-28 08:19:52,471.471 INFO    ] 200
[2026-10-28 08:19:52,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:19:52,515.515 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:19:52,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:19:52,604.604 INFO    ] No camera update needed
[2026-10-28 08:19:52,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:19:52,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:19:52,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:19:52,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:19:54,665.665 INFO    ] ================================================
[2026-10-28 08:19:54,681.681 INFO    ] Launching Daemon at Wed Oct 28 08:19:54 IST 2026
[2026-10-28 08:19:54,692.692 INFO    ] ================================================
[2026-10-28 08:19:55,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:19:55
[2026-10-28 08:19:56,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:19:56,327.327 INFO    ] Initializing speech engine...
[2026-10-28 08:19:56,337.337 INFO    ] 2026-10-28 08:19:56
[2026-10-28 08:19:56,644.644 INFO    ] 2026-10-28 08:19:56
[2026-10-28 08:19:56,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:19:56,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:19:57,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:19:57,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:19:57,292.292 INFO    ] time= 28/10/2026 08:19:57
[2026-10-28 08:19:57,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:19:57,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:19:57,537.537 INFO    ] No existing commands found in stream
[2026-10-28 08:20:02,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:20:02,566.566 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-28 08:20:07,318.318 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:20:07,321.321 INFO    ] Checking for system updates...
[2026-10-28 08:20:07,357.357 INFO    ] 200
[2026-10-28 08:20:07,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:20:07,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:20:07,418.418 INFO    ] No update needed
[2026-10-28 08:20:07,421.421 INFO    ] Checking for camera pi updates...
[2026-10-28 08:20:07,454.454 INFO    ] 200
[2026-10-28 08:20:07,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:20:07,499.499 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:20:07,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:20:07,585.585 INFO    ] No camera update needed
[2026-10-28 08:20:07,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:20:07,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:20:07,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:20:07,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:20:09,640.640 INFO    ] ================================================
[2026-10-28 08:20:09,656.656 INFO    ] Launching Daemon at Wed Oct 28 08:20:09 IST 2026
[2026-10-28 08:20:09,667.667 INFO    ] ================================================
[2026-10-28 08:20:10,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:20:10
[2026-10-28 08:20:10,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:20:11,122.122 INFO    ] Initializing speech engine...
[2026-10-28 08:20:11,132.132 INFO    ] 2026-10-28 08:20:11
[2026-10-28 08:20:11,382.382 INFO    ] 2026-10-28 08:20:11
[2026-10-28 08:20:11,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:20:11,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:20:11,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:20:11,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:20:11,944.944 INFO    ] time= 28/10/2026 08:20:11
[2026-10-28 08:20:11,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:20:11,979.979 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:20:12,137.137 INFO    ] No existing commands found in stream
[2026-10-28 08:20:17,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:20:17,176.176 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 08:20:17,868.868 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:20:17,871.871 INFO    ] Checking for system updates...
[2026-10-28 08:20:17,907.907 INFO    ] 200
[2026-10-28 08:20:17,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:20:17,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:20:17,970.970 INFO    ] No update needed
[2026-10-28 08:20:17,973.973 INFO    ] Checking for camera pi updates...
[2026-10-28 08:20:18,009.009 INFO    ] 200
[2026-10-28 08:20:18,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:20:18,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:20:18,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:20:18,142.142 INFO    ] No camera update needed
[2026-10-28 08:20:18,145.145 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:20:18,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:20:18,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:20:18,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:20:20,198.198 INFO    ] ================================================
[2026-10-28 08:20:20,214.214 INFO    ] Launching Daemon at Wed Oct 28 08:20:20 IST 2026
[2026-10-28 08:20:20,225.225 INFO    ] ================================================
[2026-10-28 08:20:20,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:20:20
[2026-10-28 08:20:21,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:20:21,710.710 INFO    ] Initializing speech engine...
[2026-10-28 08:20:21,718.718 INFO    ] 2026-10-28 08:20:21
[2026-10-28 08:20:21,987.987 INFO    ] 2026-10-28 08:20:21
[2026-10-28 08:20:22,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:20:22,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:20:22,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:20:22,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:20:22,550.550 INFO    ] time= 28/10/2026 08:20:22
[2026-10-28 08:20:22,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:20:22,587.587 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:20:22,718.718 INFO    ] No existing commands found in stream
[2026-10-28 08:20:27,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:20:27,757.757 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-28 08:20:32,240.240 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:20:32,243.243 INFO    ] Checking for system updates...
[2026-10-28 08:20:32,286.286 INFO    ] 200
[2026-10-28 08:20:32,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:20:32,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:20:32,369.369 INFO    ] No update needed
[2026-10-28 08:20:32,372.372 INFO    ] Checking for camera pi updates...
[2026-10-28 08:20:32,408.408 INFO    ] 200
[2026-10-28 08:20:32,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:20:32,453.453 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:20:32,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:20:32,543.543 INFO    ] No camera update needed
[2026-10-28 08:20:32,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:20:32,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:20:32,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:20:32,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:20:34,607.607 INFO    ] ================================================
[2026-10-28 08:20:34,622.622 INFO    ] Launching Daemon at Wed Oct 28 08:20:34 IST 2026
[2026-10-28 08:20:34,633.633 INFO    ] ================================================
[2026-10-28 08:20:35,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:20:35
[2026-10-28 08:20:35,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:20:36,038.038 INFO    ] Initializing speech engine...
[2026-10-28 08:20:36,047.047 INFO    ] 2026-10-28 08:20:36
[2026-10-28 08:20:36,330.330 INFO    ] 2026-10-28 08:20:36
[2026-10-28 08:20:36,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:20:36,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:20:36,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:20:36,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:20:36,817.817 INFO    ] time= 28/10/2026 08:20:36
[2026-10-28 08:20:36,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:20:36,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:20:37,013.013 INFO    ] No existing commands found in stream
[2026-10-28 08:20:42,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:20:42,035.035 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-28 08:20:46,177.177 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:20:46,179.179 INFO    ] Checking for system updates...
[2026-10-28 08:20:46,217.217 INFO    ] 200
[2026-10-28 08:20:46,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:20:46,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:20:46,278.278 INFO    ] No update needed
[2026-10-28 08:20:46,280.280 INFO    ] Checking for camera pi updates...
[2026-10-28 08:20:46,313.313 INFO    ] 200
[2026-10-28 08:20:46,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:20:46,357.357 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:20:46,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:20:46,440.440 INFO    ] No camera update needed
[2026-10-28 08:20:46,443.443 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:20:46,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:20:46,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:20:46,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:20:48,496.496 INFO    ] ================================================
[2026-10-28 08:20:48,512.512 INFO    ] Launching Daemon at Wed Oct 28 08:20:48 IST 2026
[2026-10-28 08:20:48,523.523 INFO    ] ================================================
[2026-10-28 08:20:49,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:20:49
[2026-10-28 08:20:49,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:20:49,958.958 INFO    ] Initializing speech engine...
[2026-10-28 08:20:49,974.974 INFO    ] 2026-10-28 08:20:49
[2026-10-28 08:20:50,243.243 INFO    ] 2026-10-28 08:20:50
[2026-10-28 08:20:50,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:20:50,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:20:50,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:20:50,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:20:50,843.843 INFO    ] time= 28/10/2026 08:20:50
[2026-10-28 08:20:50,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:20:50,877.877 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:20:51,022.022 INFO    ] No existing commands found in stream
[2026-10-28 08:20:56,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:20:56,044.044 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-28 08:20:59,285.285 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:20:59,288.288 INFO    ] Checking for system updates...
[2026-10-28 08:20:59,326.326 INFO    ] 200
[2026-10-28 08:20:59,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:20:59,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:20:59,383.383 INFO    ] No update needed
[2026-10-28 08:20:59,385.385 INFO    ] Checking for camera pi updates...
[2026-10-28 08:20:59,419.419 INFO    ] 200
[2026-10-28 08:20:59,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:20:59,462.462 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:20:59,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:20:59,642.642 INFO    ] No camera update needed
[2026-10-28 08:20:59,645.645 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:20:59,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:20:59,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:20:59,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:21:01,698.698 INFO    ] ================================================
[2026-10-28 08:21:01,714.714 INFO    ] Launching Daemon at Wed Oct 28 08:21:01 IST 2026
[2026-10-28 08:21:01,725.725 INFO    ] ================================================
[2026-10-28 08:21:02,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:21:02
[2026-10-28 08:21:03,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:21:03,393.393 INFO    ] Initializing speech engine...
[2026-10-28 08:21:03,403.403 INFO    ] 2026-10-28 08:21:03
[2026-10-28 08:21:03,692.692 INFO    ] 2026-10-28 08:21:03
[2026-10-28 08:21:03,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:21:04,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:21:04,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:21:04,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:21:04,247.247 INFO    ] time= 28/10/2026 08:21:04
[2026-10-28 08:21:04,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:21:04,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:21:04,434.434 INFO    ] No existing commands found in stream
[2026-10-28 08:21:09,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:21:09,465.465 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-28 08:21:10,481.481 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:21:10,484.484 INFO    ] Checking for system updates...
[2026-10-28 08:21:10,520.520 INFO    ] 200
[2026-10-28 08:21:10,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:21:10,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:21:10,586.586 INFO    ] No update needed
[2026-10-28 08:21:10,589.589 INFO    ] Checking for camera pi updates...
[2026-10-28 08:21:10,624.624 INFO    ] 200
[2026-10-28 08:21:10,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:21:10,671.671 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:21:10,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:21:10,760.760 INFO    ] No camera update needed
[2026-10-28 08:21:10,762.762 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:21:10,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:21:10,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:21:10,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:21:12,817.817 INFO    ] ================================================
[2026-10-28 08:21:12,832.832 INFO    ] Launching Daemon at Wed Oct 28 08:21:12 IST 2026
[2026-10-28 08:21:12,844.844 INFO    ] ================================================
[2026-10-28 08:21:13,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:21:13
[2026-10-28 08:21:13,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:21:14,267.267 INFO    ] Initializing speech engine...
[2026-10-28 08:21:14,279.279 INFO    ] 2026-10-28 08:21:14
[2026-10-28 08:21:14,526.526 INFO    ] 2026-10-28 08:21:14
[2026-10-28 08:21:14,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:21:14,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:21:14,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:21:15,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:21:15,093.093 INFO    ] time= 28/10/2026 08:21:15
[2026-10-28 08:21:15,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:21:15,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:21:15,253.253 INFO    ] No existing commands found in stream
[2026-10-28 08:21:20,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:21:20,284.284 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-28 08:21:23,569.569 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:21:23,571.571 INFO    ] Checking for system updates...
[2026-10-28 08:21:23,610.610 INFO    ] 200
[2026-10-28 08:21:23,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:21:23,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:21:23,667.667 INFO    ] No update needed
[2026-10-28 08:21:23,670.670 INFO    ] Checking for camera pi updates...
[2026-10-28 08:21:23,704.704 INFO    ] 200
[2026-10-28 08:21:23,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:21:23,747.747 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:21:23,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:21:23,848.848 INFO    ] No camera update needed
[2026-10-28 08:21:23,850.850 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:21:23,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:21:23,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:21:23,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:21:25,908.908 INFO    ] ================================================
[2026-10-28 08:21:25,924.924 INFO    ] Launching Daemon at Wed Oct 28 08:21:25 IST 2026
[2026-10-28 08:21:25,936.936 INFO    ] ================================================
[2026-10-28 08:21:26,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:21:26
[2026-10-28 08:21:27,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:21:27,572.572 INFO    ] Initializing speech engine...
[2026-10-28 08:21:27,586.586 INFO    ] 2026-10-28 08:21:27
[2026-10-28 08:21:27,861.861 INFO    ] 2026-10-28 08:21:27
[2026-10-28 08:21:27,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:21:28,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:21:28,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:21:28,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:21:28,464.464 INFO    ] time= 28/10/2026 08:21:28
[2026-10-28 08:21:28,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:21:28,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:21:28,618.618 INFO    ] No existing commands found in stream
[2026-10-28 08:21:33,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:21:33,647.647 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-28 08:21:35,203.203 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:21:35,206.206 INFO    ] Checking for system updates...
[2026-10-28 08:21:35,243.243 INFO    ] 200
[2026-10-28 08:21:35,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:21:35,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:21:35,302.302 INFO    ] No update needed
[2026-10-28 08:21:35,305.305 INFO    ] Checking for camera pi updates...
[2026-10-28 08:21:35,340.340 INFO    ] 200
[2026-10-28 08:21:35,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:21:35,388.388 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:21:35,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:21:35,475.475 INFO    ] No camera update needed
[2026-10-28 08:21:35,478.478 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:21:35,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:21:35,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:21:35,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:21:37,535.535 INFO    ] ================================================
[2026-10-28 08:21:37,550.550 INFO    ] Launching Daemon at Wed Oct 28 08:21:37 IST 2026
[2026-10-28 08:21:37,561.561 INFO    ] ================================================
[2026-10-28 08:21:38,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:21:38
[2026-10-28 08:21:38,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:21:39,180.180 INFO    ] Initializing speech engine...
[2026-10-28 08:21:39,194.194 INFO    ] 2026-10-28 08:21:39
[2026-10-28 08:21:39,475.475 INFO    ] 2026-10-28 08:21:39
[2026-10-28 08:21:39,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:21:39,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:21:39,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:21:40,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:21:40,070.070 INFO    ] time= 28/10/2026 08:21:40
[2026-10-28 08:21:40,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:21:40,085.085 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:21:40,203.203 INFO    ] No existing commands found in stream
[2026-10-28 08:21:45,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:21:45,237.237 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 08:21:46,262.262 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:21:46,265.265 INFO    ] Checking for system updates...
[2026-10-28 08:21:46,301.301 INFO    ] 200
[2026-10-28 08:21:46,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:21:46,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:21:46,358.358 INFO    ] No update needed
[2026-10-28 08:21:46,360.360 INFO    ] Checking for camera pi updates...
[2026-10-28 08:21:46,394.394 INFO    ] 200
[2026-10-28 08:21:46,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:21:46,442.442 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:21:46,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:21:46,531.531 INFO    ] No camera update needed
[2026-10-28 08:21:46,534.534 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:21:46,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:21:46,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:21:46,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:21:48,586.586 INFO    ] ================================================
[2026-10-28 08:21:48,602.602 INFO    ] Launching Daemon at Wed Oct 28 08:21:48 IST 2026
[2026-10-28 08:21:48,613.613 INFO    ] ================================================
[2026-10-28 08:21:49,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:21:49
[2026-10-28 08:21:49,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:21:50,053.053 INFO    ] Initializing speech engine...
[2026-10-28 08:21:50,063.063 INFO    ] 2026-10-28 08:21:50
[2026-10-28 08:21:50,324.324 INFO    ] 2026-10-28 08:21:50
[2026-10-28 08:21:50,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:21:50,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:21:50,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:21:50,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:21:50,879.879 INFO    ] time= 28/10/2026 08:21:50
[2026-10-28 08:21:50,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:21:50,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:21:51,043.043 INFO    ] No existing commands found in stream
[2026-10-28 08:21:56,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:21:56,076.076 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 08:21:58,762.762 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:21:58,764.764 INFO    ] Checking for system updates...
[2026-10-28 08:21:58,804.804 INFO    ] 200
[2026-10-28 08:21:58,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:21:58,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:21:58,862.862 INFO    ] No update needed
[2026-10-28 08:21:58,865.865 INFO    ] Checking for camera pi updates...
[2026-10-28 08:21:58,902.902 INFO    ] 200
[2026-10-28 08:21:58,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:21:58,954.954 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:21:59,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:21:59,043.043 INFO    ] No camera update needed
[2026-10-28 08:21:59,046.046 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:21:59,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:21:59,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:21:59,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:22:01,103.103 INFO    ] ================================================
[2026-10-28 08:22:01,119.119 INFO    ] Launching Daemon at Wed Oct 28 08:22:01 IST 2026
[2026-10-28 08:22:01,130.130 INFO    ] ================================================
[2026-10-28 08:22:01,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:22:01
[2026-10-28 08:22:02,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:22:02,854.854 INFO    ] Initializing speech engine...
[2026-10-28 08:22:02,884.884 INFO    ] 2026-10-28 08:22:02
[2026-10-28 08:22:03,161.161 INFO    ] 2026-10-28 08:22:03
[2026-10-28 08:22:03,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:22:03,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:22:03,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:22:03,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:22:03,747.747 INFO    ] time= 28/10/2026 08:22:03
[2026-10-28 08:22:03,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:22:03,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:22:03,902.902 INFO    ] No existing commands found in stream
[2026-10-28 08:22:08,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:22:08,918.918 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 08:22:12,067.067 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:22:12,069.069 INFO    ] Checking for system updates...
[2026-10-28 08:22:12,105.105 INFO    ] 200
[2026-10-28 08:22:12,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:22:12,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:22:12,163.163 INFO    ] No update needed
[2026-10-28 08:22:12,166.166 INFO    ] Checking for camera pi updates...
[2026-10-28 08:22:12,199.199 INFO    ] 200
[2026-10-28 08:22:12,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:22:12,242.242 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:22:12,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:22:12,332.332 INFO    ] No camera update needed
[2026-10-28 08:22:12,335.335 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:22:12,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:22:12,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:22:12,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:22:14,390.390 INFO    ] ================================================
[2026-10-28 08:22:14,406.406 INFO    ] Launching Daemon at Wed Oct 28 08:22:14 IST 2026
[2026-10-28 08:22:14,417.417 INFO    ] ================================================
[2026-10-28 08:22:15,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:22:15
[2026-10-28 08:22:15,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:22:15,995.995 INFO    ] Initializing speech engine...
[2026-10-28 08:22:16,002.002 INFO    ] 2026-10-28 08:22:15
[2026-10-28 08:22:16,278.278 INFO    ] 2026-10-28 08:22:16
[2026-10-28 08:22:16,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:22:16,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:22:16,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:22:16,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:22:16,838.838 INFO    ] time= 28/10/2026 08:22:16
[2026-10-28 08:22:16,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:22:16,866.866 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:22:17,000.000 INFO    ] No existing commands found in stream
[2026-10-28 08:22:22,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:22:22,032.032 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-28 08:22:23,620.620 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:22:23,623.623 INFO    ] Checking for system updates...
[2026-10-28 08:22:23,660.660 INFO    ] 200
[2026-10-28 08:22:23,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:22:23,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:22:23,717.717 INFO    ] No update needed
[2026-10-28 08:22:23,719.719 INFO    ] Checking for camera pi updates...
[2026-10-28 08:22:23,760.760 INFO    ] 200
[2026-10-28 08:22:23,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:22:23,807.807 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:22:23,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:22:23,919.919 INFO    ] No camera update needed
[2026-10-28 08:22:23,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:22:23,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:22:23,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:22:23,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:22:25,975.975 INFO    ] ================================================
[2026-10-28 08:22:25,991.991 INFO    ] Launching Daemon at Wed Oct 28 08:22:25 IST 2026
[2026-10-28 08:22:26,002.002 INFO    ] ================================================
[2026-10-28 08:22:26,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:22:26
[2026-10-28 08:22:27,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:22:27,434.434 INFO    ] Initializing speech engine...
[2026-10-28 08:22:27,443.443 INFO    ] 2026-10-28 08:22:27
[2026-10-28 08:22:27,694.694 INFO    ] 2026-10-28 08:22:27
[2026-10-28 08:22:27,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:22:27,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:22:27,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:22:28,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:22:28,258.258 INFO    ] time= 28/10/2026 08:22:28
[2026-10-28 08:22:28,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:22:28,280.280 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:22:28,411.411 INFO    ] No existing commands found in stream
[2026-10-28 08:22:33,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:22:33,430.430 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 08:22:35,704.704 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:22:35,707.707 INFO    ] Checking for system updates...
[2026-10-28 08:22:35,743.743 INFO    ] 200
[2026-10-28 08:22:35,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:22:35,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:22:35,805.805 INFO    ] No update needed
[2026-10-28 08:22:35,807.807 INFO    ] Checking for camera pi updates...
[2026-10-28 08:22:35,840.840 INFO    ] 200
[2026-10-28 08:22:35,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:22:35,883.883 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:22:35,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:22:35,966.966 INFO    ] No camera update needed
[2026-10-28 08:22:35,969.969 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:22:35,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:22:35,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:22:35,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:22:38,026.026 INFO    ] ================================================
[2026-10-28 08:22:38,044.044 INFO    ] Launching Daemon at Wed Oct 28 08:22:38 IST 2026
[2026-10-28 08:22:38,055.055 INFO    ] ================================================
[2026-10-28 08:22:38,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:22:38
[2026-10-28 08:22:39,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:22:39,496.496 INFO    ] Initializing speech engine...
[2026-10-28 08:22:39,505.505 INFO    ] 2026-10-28 08:22:39
[2026-10-28 08:22:39,797.797 INFO    ] 2026-10-28 08:22:39
[2026-10-28 08:22:39,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:22:40,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:22:40,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:22:40,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:22:40,405.405 INFO    ] time= 28/10/2026 08:22:40
[2026-10-28 08:22:40,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:22:40,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:22:40,595.595 INFO    ] No existing commands found in stream
[2026-10-28 08:22:45,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:22:45,629.629 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-28 08:22:48,188.188 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:22:48,191.191 INFO    ] Checking for system updates...
[2026-10-28 08:22:48,227.227 INFO    ] 200
[2026-10-28 08:22:48,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:22:48,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:22:48,288.288 INFO    ] No update needed
[2026-10-28 08:22:48,290.290 INFO    ] Checking for camera pi updates...
[2026-10-28 08:22:48,323.323 INFO    ] 200
[2026-10-28 08:22:48,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:22:48,366.366 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:22:48,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:22:48,466.466 INFO    ] No camera update needed
[2026-10-28 08:22:48,468.468 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:22:48,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:22:48,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:22:48,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:22:50,521.521 INFO    ] ================================================
[2026-10-28 08:22:50,537.537 INFO    ] Launching Daemon at Wed Oct 28 08:22:50 IST 2026
[2026-10-28 08:22:50,548.548 INFO    ] ================================================
[2026-10-28 08:22:51,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:22:51
[2026-10-28 08:22:51,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:22:51,984.984 INFO    ] Initializing speech engine...
[2026-10-28 08:22:52,007.007 INFO    ] 2026-10-28 08:22:51
[2026-10-28 08:22:52,284.284 INFO    ] 2026-10-28 08:22:52
[2026-10-28 08:22:52,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:22:52,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:22:52,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:22:52,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:22:52,839.839 INFO    ] time= 28/10/2026 08:22:52
[2026-10-28 08:22:52,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:22:52,899.899 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:22:53,067.067 INFO    ] No existing commands found in stream
[2026-10-28 08:22:58,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:22:58,106.106 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-28 08:23:03,284.284 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:23:03,287.287 INFO    ] Checking for system updates...
[2026-10-28 08:23:03,323.323 INFO    ] 200
[2026-10-28 08:23:03,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:23:03,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:23:03,392.392 INFO    ] No update needed
[2026-10-28 08:23:03,395.395 INFO    ] Checking for camera pi updates...
[2026-10-28 08:23:03,429.429 INFO    ] 200
[2026-10-28 08:23:03,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:23:03,471.471 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:23:03,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:23:03,560.560 INFO    ] No camera update needed
[2026-10-28 08:23:03,564.564 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:23:03,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:23:03,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:23:03,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:23:05,617.617 INFO    ] ================================================
[2026-10-28 08:23:05,632.632 INFO    ] Launching Daemon at Wed Oct 28 08:23:05 IST 2026
[2026-10-28 08:23:05,644.644 INFO    ] ================================================
[2026-10-28 08:23:06,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:23:06
[2026-10-28 08:23:06,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:23:07,155.155 INFO    ] Initializing speech engine...
[2026-10-28 08:23:07,162.162 INFO    ] 2026-10-28 08:23:07
[2026-10-28 08:23:07,430.430 INFO    ] 2026-10-28 08:23:07
[2026-10-28 08:23:07,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:23:07,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:23:07,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:23:07,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:23:07,996.996 INFO    ] time= 28/10/2026 08:23:07
[2026-10-28 08:23:08,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:23:08,032.032 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:23:08,159.159 INFO    ] No existing commands found in stream
[2026-10-28 08:23:13,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:23:13,192.192 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-28 08:23:14,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:23:14,787.787 INFO    ] Checking for system updates...
[2026-10-28 08:23:14,827.827 INFO    ] 200
[2026-10-28 08:23:14,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:23:14,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:23:14,890.890 INFO    ] No update needed
[2026-10-28 08:23:14,893.893 INFO    ] Checking for camera pi updates...
[2026-10-28 08:23:14,953.953 INFO    ] 200
[2026-10-28 08:23:14,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:23:15,021.021 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:23:15,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:23:15,096.096 INFO    ] No camera update needed
[2026-10-28 08:23:15,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:23:15,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:23:15,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:23:15,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:23:17,152.152 INFO    ] ================================================
[2026-10-28 08:23:17,167.167 INFO    ] Launching Daemon at Wed Oct 28 08:23:17 IST 2026
[2026-10-28 08:23:17,178.178 INFO    ] ================================================
[2026-10-28 08:23:17,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:23:17
[2026-10-28 08:23:18,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:23:18,637.637 INFO    ] Initializing speech engine...
[2026-10-28 08:23:18,644.644 INFO    ] 2026-10-28 08:23:18
[2026-10-28 08:23:18,901.901 INFO    ] 2026-10-28 08:23:18
[2026-10-28 08:23:18,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:23:19,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:23:19,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:23:19,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:23:19,485.485 INFO    ] time= 28/10/2026 08:23:19
[2026-10-28 08:23:19,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:23:19,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:23:19,636.636 INFO    ] No existing commands found in stream
[2026-10-28 08:23:24,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:23:24,674.674 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 08:23:26,334.334 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:23:26,336.336 INFO    ] Checking for system updates...
[2026-10-28 08:23:26,371.371 INFO    ] 200
[2026-10-28 08:23:26,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:23:26,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:23:26,428.428 INFO    ] No update needed
[2026-10-28 08:23:26,431.431 INFO    ] Checking for camera pi updates...
[2026-10-28 08:23:26,465.465 INFO    ] 200
[2026-10-28 08:23:26,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:23:26,507.507 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:23:26,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:23:26,596.596 INFO    ] No camera update needed
[2026-10-28 08:23:26,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:23:26,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:23:26,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:23:26,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:23:28,652.652 INFO    ] ================================================
[2026-10-28 08:23:28,667.667 INFO    ] Launching Daemon at Wed Oct 28 08:23:28 IST 2026
[2026-10-28 08:23:28,678.678 INFO    ] ================================================
[2026-10-28 08:23:29,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:23:29
[2026-10-28 08:23:29,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:23:30,077.077 INFO    ] Initializing speech engine...
[2026-10-28 08:23:30,091.091 INFO    ] 2026-10-28 08:23:30
[2026-10-28 08:23:30,368.368 INFO    ] 2026-10-28 08:23:30
[2026-10-28 08:23:30,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:23:30,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:23:30,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:23:30,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:23:30,971.971 INFO    ] time= 28/10/2026 08:23:30
[2026-10-28 08:23:30,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:23:30,995.995 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:23:31,139.139 INFO    ] No existing commands found in stream
[2026-10-28 08:23:36,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:23:36,155.155 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 08:23:39,484.484 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:23:39,487.487 INFO    ] Checking for system updates...
[2026-10-28 08:23:39,522.522 INFO    ] 200
[2026-10-28 08:23:39,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:23:39,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:23:39,579.579 INFO    ] No update needed
[2026-10-28 08:23:39,582.582 INFO    ] Checking for camera pi updates...
[2026-10-28 08:23:39,615.615 INFO    ] 200
[2026-10-28 08:23:39,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:23:39,658.658 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:23:39,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:23:39,741.741 INFO    ] No camera update needed
[2026-10-28 08:23:39,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:23:39,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:23:39,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:23:39,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:23:41,798.798 INFO    ] ================================================
[2026-10-28 08:23:41,814.814 INFO    ] Launching Daemon at Wed Oct 28 08:23:41 IST 2026
[2026-10-28 08:23:41,824.824 INFO    ] ================================================
[2026-10-28 08:23:42,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:23:42
[2026-10-28 08:23:43,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:23:43,290.290 INFO    ] Initializing speech engine...
[2026-10-28 08:23:43,301.301 INFO    ] 2026-10-28 08:23:43
[2026-10-28 08:23:43,569.569 INFO    ] 2026-10-28 08:23:43
[2026-10-28 08:23:43,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:23:43,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:23:43,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:23:44,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:23:44,148.148 INFO    ] time= 28/10/2026 08:23:44
[2026-10-28 08:23:44,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:23:44,183.183 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:23:44,347.347 INFO    ] No existing commands found in stream
[2026-10-28 08:23:49,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:23:49,376.376 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-28 08:23:51,898.898 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:23:51,901.901 INFO    ] Checking for system updates...
[2026-10-28 08:23:51,937.937 INFO    ] 200
[2026-10-28 08:23:51,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:23:51,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:23:51,999.999 INFO    ] No update needed
[2026-10-28 08:23:52,001.001 INFO    ] Checking for camera pi updates...
[2026-10-28 08:23:52,036.036 INFO    ] 200
[2026-10-28 08:23:52,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:23:52,079.079 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:23:52,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:23:52,184.184 INFO    ] No camera update needed
[2026-10-28 08:23:52,187.187 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:23:52,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:23:52,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:23:52,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:23:54,241.241 INFO    ] ================================================
[2026-10-28 08:23:54,257.257 INFO    ] Launching Daemon at Wed Oct 28 08:23:54 IST 2026
[2026-10-28 08:23:54,268.268 INFO    ] ================================================
[2026-10-28 08:23:54,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:23:54
[2026-10-28 08:23:55,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:23:55,701.701 INFO    ] Initializing speech engine...
[2026-10-28 08:23:55,708.708 INFO    ] 2026-10-28 08:23:55
[2026-10-28 08:23:55,968.968 INFO    ] 2026-10-28 08:23:55
[2026-10-28 08:23:56,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:23:56,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:23:56,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:23:56,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:23:56,509.509 INFO    ] time= 28/10/2026 08:23:56
[2026-10-28 08:23:56,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:23:56,533.533 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:23:56,623.623 INFO    ] No existing commands found in stream
[2026-10-28 08:24:01,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:24:01,648.648 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 08:24:02,256.256 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:24:02,260.260 INFO    ] Checking for system updates...
[2026-10-28 08:24:02,308.308 INFO    ] 200
[2026-10-28 08:24:02,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:24:02,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:24:02,385.385 INFO    ] No update needed
[2026-10-28 08:24:02,389.389 INFO    ] Checking for camera pi updates...
[2026-10-28 08:24:02,434.434 INFO    ] 200
[2026-10-28 08:24:02,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:24:02,489.489 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:24:02,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:24:02,580.580 INFO    ] No camera update needed
[2026-10-28 08:24:02,583.583 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:24:02,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:24:02,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:24:02,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:24:04,644.644 INFO    ] ================================================
[2026-10-28 08:24:04,659.659 INFO    ] Launching Daemon at Wed Oct 28 08:24:04 IST 2026
[2026-10-28 08:24:04,670.670 INFO    ] ================================================
[2026-10-28 08:24:05,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:24:05
[2026-10-28 08:24:05,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:24:06,068.068 INFO    ] Initializing speech engine...
[2026-10-28 08:24:06,076.076 INFO    ] 2026-10-28 08:24:06
[2026-10-28 08:24:06,366.366 INFO    ] 2026-10-28 08:24:06
[2026-10-28 08:24:06,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:24:06,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:24:06,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:24:06,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:24:06,866.866 INFO    ] time= 28/10/2026 08:24:06
[2026-10-28 08:24:06,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:24:06,986.986 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:24:07,135.135 INFO    ] No existing commands found in stream
[2026-10-28 08:24:12,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:24:12,164.164 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-28 08:24:13,695.695 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:24:13,698.698 INFO    ] Checking for system updates...
[2026-10-28 08:24:13,733.733 INFO    ] 200
[2026-10-28 08:24:13,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:24:13,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:24:13,789.789 INFO    ] No update needed
[2026-10-28 08:24:13,792.792 INFO    ] Checking for camera pi updates...
[2026-10-28 08:24:13,824.824 INFO    ] 200
[2026-10-28 08:24:13,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:24:13,867.867 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:24:13,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:24:13,934.934 INFO    ] No camera update needed
[2026-10-28 08:24:13,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:24:13,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:24:13,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:24:13,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:24:15,989.989 INFO    ] ================================================
[2026-10-28 08:24:16,005.005 INFO    ] Launching Daemon at Wed Oct 28 08:24:15 IST 2026
[2026-10-28 08:24:16,016.016 INFO    ] ================================================
[2026-10-28 08:24:16,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:24:16
[2026-10-28 08:24:17,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:24:17,450.450 INFO    ] Initializing speech engine...
[2026-10-28 08:24:17,459.459 INFO    ] 2026-10-28 08:24:17
[2026-10-28 08:24:17,707.707 INFO    ] 2026-10-28 08:24:17
[2026-10-28 08:24:17,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:24:17,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:24:17,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:24:18,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:24:18,261.261 INFO    ] time= 28/10/2026 08:24:18
[2026-10-28 08:24:18,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:24:18,288.288 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:24:18,413.413 INFO    ] No existing commands found in stream
[2026-10-28 08:24:23,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:24:23,433.433 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-28 08:24:26,788.788 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:24:26,790.790 INFO    ] Checking for system updates...
[2026-10-28 08:24:26,826.826 INFO    ] 200
[2026-10-28 08:24:26,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:24:26,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:24:26,883.883 INFO    ] No update needed
[2026-10-28 08:24:26,885.885 INFO    ] Checking for camera pi updates...
[2026-10-28 08:24:26,919.919 INFO    ] 200
[2026-10-28 08:24:26,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:24:26,961.961 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:24:27,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:24:27,046.046 INFO    ] No camera update needed
[2026-10-28 08:24:27,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:24:27,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:24:27,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:24:27,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:24:29,103.103 INFO    ] ================================================
[2026-10-28 08:24:29,119.119 INFO    ] Launching Daemon at Wed Oct 28 08:24:29 IST 2026
[2026-10-28 08:24:29,131.131 INFO    ] ================================================
[2026-10-28 08:24:29,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:24:29
[2026-10-28 08:24:30,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:24:30,781.781 INFO    ] Initializing speech engine...
[2026-10-28 08:24:30,787.787 INFO    ] 2026-10-28 08:24:30
[2026-10-28 08:24:31,063.063 INFO    ] 2026-10-28 08:24:31
[2026-10-28 08:24:31,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:24:31,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:24:31,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:24:31,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:24:31,768.768 INFO    ] time= 28/10/2026 08:24:31
[2026-10-28 08:24:31,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:24:31,889.889 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:24:32,077.077 INFO    ] No existing commands found in stream
[2026-10-28 08:24:37,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:24:37,110.110 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-28 08:24:39,323.323 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:24:39,326.326 INFO    ] Checking for system updates...
[2026-10-28 08:24:39,363.363 INFO    ] 200
[2026-10-28 08:24:39,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:24:39,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:24:39,423.423 INFO    ] No update needed
[2026-10-28 08:24:39,426.426 INFO    ] Checking for camera pi updates...
[2026-10-28 08:24:39,460.460 INFO    ] 200
[2026-10-28 08:24:39,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:24:39,507.507 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:24:39,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:24:39,595.595 INFO    ] No camera update needed
[2026-10-28 08:24:39,597.597 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:24:39,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:24:39,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:24:39,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:24:41,651.651 INFO    ] ================================================
[2026-10-28 08:24:41,667.667 INFO    ] Launching Daemon at Wed Oct 28 08:24:41 IST 2026
[2026-10-28 08:24:41,679.679 INFO    ] ================================================
[2026-10-28 08:24:42,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:24:42
[2026-10-28 08:24:42,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:24:43,287.287 INFO    ] Initializing speech engine...
[2026-10-28 08:24:43,296.296 INFO    ] 2026-10-28 08:24:43
[2026-10-28 08:24:43,575.575 INFO    ] 2026-10-28 08:24:43
[2026-10-28 08:24:43,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:24:43,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:24:43,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:24:44,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:24:44,157.157 INFO    ] time= 28/10/2026 08:24:44
[2026-10-28 08:24:44,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:24:44,198.198 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:24:44,375.375 INFO    ] No existing commands found in stream
[2026-10-28 08:24:49,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:24:49,410.410 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-28 08:24:51,391.391 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:24:51,394.394 INFO    ] Checking for system updates...
[2026-10-28 08:24:51,433.433 INFO    ] 200
[2026-10-28 08:24:51,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:24:51,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:24:51,491.491 INFO    ] No update needed
[2026-10-28 08:24:51,493.493 INFO    ] Checking for camera pi updates...
[2026-10-28 08:24:51,527.527 INFO    ] 200
[2026-10-28 08:24:51,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:24:51,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:24:51,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:24:51,657.657 INFO    ] No camera update needed
[2026-10-28 08:24:51,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:24:51,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:24:51,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:24:51,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:24:53,714.714 INFO    ] ================================================
[2026-10-28 08:24:53,730.730 INFO    ] Launching Daemon at Wed Oct 28 08:24:53 IST 2026
[2026-10-28 08:24:53,741.741 INFO    ] ================================================
[2026-10-28 08:24:54,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:24:54
[2026-10-28 08:24:54,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:24:55,190.190 INFO    ] Initializing speech engine...
[2026-10-28 08:24:55,197.197 INFO    ] 2026-10-28 08:24:55
[2026-10-28 08:24:55,459.459 INFO    ] 2026-10-28 08:24:55
[2026-10-28 08:24:55,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:24:55,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:24:55,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:24:56,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:24:56,020.020 INFO    ] time= 28/10/2026 08:24:56
[2026-10-28 08:24:56,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:24:56,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:24:56,186.186 INFO    ] No existing commands found in stream
[2026-10-28 08:25:01,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:25:01,225.225 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-28 08:25:02,792.792 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:25:02,795.795 INFO    ] Checking for system updates...
[2026-10-28 08:25:02,837.837 INFO    ] 200
[2026-10-28 08:25:02,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:25:02,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:25:02,914.914 INFO    ] No update needed
[2026-10-28 08:25:02,917.917 INFO    ] Checking for camera pi updates...
[2026-10-28 08:25:02,962.962 INFO    ] 200
[2026-10-28 08:25:02,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:25:03,013.013 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:25:03,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:25:03,155.155 INFO    ] No camera update needed
[2026-10-28 08:25:03,158.158 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:25:03,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:25:03,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:25:03,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:25:05,214.214 INFO    ] ================================================
[2026-10-28 08:25:05,229.229 INFO    ] Launching Daemon at Wed Oct 28 08:25:05 IST 2026
[2026-10-28 08:25:05,240.240 INFO    ] ================================================
[2026-10-28 08:25:05,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:25:05
[2026-10-28 08:25:06,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:25:06,903.903 INFO    ] Initializing speech engine...
[2026-10-28 08:25:06,915.915 INFO    ] 2026-10-28 08:25:06
[2026-10-28 08:25:07,226.226 INFO    ] 2026-10-28 08:25:07
[2026-10-28 08:25:07,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:25:07,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:25:07,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:25:07,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:25:07,903.903 INFO    ] time= 28/10/2026 08:25:07
[2026-10-28 08:25:07,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:25:07,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:25:08,132.132 INFO    ] No existing commands found in stream
[2026-10-28 08:25:13,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:25:13,179.179 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 08:25:16,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:25:16,670.670 INFO    ] Checking for system updates...
[2026-10-28 08:25:16,707.707 INFO    ] 200
[2026-10-28 08:25:16,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:25:16,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:25:16,766.766 INFO    ] No update needed
[2026-10-28 08:25:16,769.769 INFO    ] Checking for camera pi updates...
[2026-10-28 08:25:16,804.804 INFO    ] 200
[2026-10-28 08:25:16,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:25:16,853.853 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:25:17,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:25:17,032.032 INFO    ] No camera update needed
[2026-10-28 08:25:17,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:25:17,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:25:17,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:25:17,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:25:19,092.092 INFO    ] ================================================
[2026-10-28 08:25:19,108.108 INFO    ] Launching Daemon at Wed Oct 28 08:25:19 IST 2026
[2026-10-28 08:25:19,119.119 INFO    ] ================================================
[2026-10-28 08:25:19,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:25:19
[2026-10-28 08:25:20,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:25:20,542.542 INFO    ] Initializing speech engine...
[2026-10-28 08:25:20,551.551 INFO    ] 2026-10-28 08:25:20
[2026-10-28 08:25:20,810.810 INFO    ] 2026-10-28 08:25:20
[2026-10-28 08:25:20,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:25:21,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:25:21,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:25:21,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:25:21,366.366 INFO    ] time= 28/10/2026 08:25:21
[2026-10-28 08:25:21,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:25:21,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:25:21,523.523 INFO    ] No existing commands found in stream
[2026-10-28 08:25:26,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:25:26,550.550 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 08:25:29,415.415 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:25:29,418.418 INFO    ] Checking for system updates...
[2026-10-28 08:25:29,456.456 INFO    ] 200
[2026-10-28 08:25:29,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:25:29,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:25:29,514.514 INFO    ] No update needed
[2026-10-28 08:25:29,517.517 INFO    ] Checking for camera pi updates...
[2026-10-28 08:25:29,551.551 INFO    ] 200
[2026-10-28 08:25:29,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:25:29,597.597 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:25:29,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:25:29,684.684 INFO    ] No camera update needed
[2026-10-28 08:25:29,687.687 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:25:29,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:25:29,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:25:29,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:25:31,742.742 INFO    ] ================================================
[2026-10-28 08:25:31,757.757 INFO    ] Launching Daemon at Wed Oct 28 08:25:31 IST 2026
[2026-10-28 08:25:31,769.769 INFO    ] ================================================
[2026-10-28 08:25:32,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:25:32
[2026-10-28 08:25:33,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:25:33,303.303 INFO    ] Initializing speech engine...
[2026-10-28 08:25:33,309.309 INFO    ] 2026-10-28 08:25:33
[2026-10-28 08:25:33,588.588 INFO    ] 2026-10-28 08:25:33
[2026-10-28 08:25:33,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:25:33,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:25:33,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:25:34,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:25:34,162.162 INFO    ] time= 28/10/2026 08:25:34
[2026-10-28 08:25:34,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:25:34,184.184 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:25:34,314.314 INFO    ] No existing commands found in stream
[2026-10-28 08:25:39,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:25:39,331.331 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-28 08:25:40,642.642 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:25:40,645.645 INFO    ] Checking for system updates...
[2026-10-28 08:25:40,684.684 INFO    ] 200
[2026-10-28 08:25:40,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:25:40,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:25:40,741.741 INFO    ] No update needed
[2026-10-28 08:25:40,743.743 INFO    ] Checking for camera pi updates...
[2026-10-28 08:25:40,780.780 INFO    ] 200
[2026-10-28 08:25:40,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:25:40,827.827 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:25:40,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:25:40,904.904 INFO    ] No camera update needed
[2026-10-28 08:25:40,907.907 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:25:40,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:25:40,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:25:40,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:25:42,959.959 INFO    ] ================================================
[2026-10-28 08:25:42,975.975 INFO    ] Launching Daemon at Wed Oct 28 08:25:42 IST 2026
[2026-10-28 08:25:42,986.986 INFO    ] ================================================
[2026-10-28 08:25:43,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:25:43
[2026-10-28 08:25:44,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:25:44,400.400 INFO    ] Initializing speech engine...
[2026-10-28 08:25:44,408.408 INFO    ] 2026-10-28 08:25:44
[2026-10-28 08:25:44,682.682 INFO    ] 2026-10-28 08:25:44
[2026-10-28 08:25:44,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:25:44,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:25:44,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:25:45,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:25:45,252.252 INFO    ] time= 28/10/2026 08:25:45
[2026-10-28 08:25:45,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:25:45,278.278 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:25:45,413.413 INFO    ] No existing commands found in stream
[2026-10-28 08:25:50,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:25:50,438.438 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 08:25:51,080.080 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:25:51,082.082 INFO    ] Checking for system updates...
[2026-10-28 08:25:51,121.121 INFO    ] 200
[2026-10-28 08:25:51,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:25:51,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:25:51,178.178 INFO    ] No update needed
[2026-10-28 08:25:51,181.181 INFO    ] Checking for camera pi updates...
[2026-10-28 08:25:51,214.214 INFO    ] 200
[2026-10-28 08:25:51,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:25:51,257.257 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:25:51,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:25:51,340.340 INFO    ] No camera update needed
[2026-10-28 08:25:51,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:25:51,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:25:51,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:25:51,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:25:53,394.394 INFO    ] ================================================
[2026-10-28 08:25:53,409.409 INFO    ] Launching Daemon at Wed Oct 28 08:25:53 IST 2026
[2026-10-28 08:25:53,420.420 INFO    ] ================================================
[2026-10-28 08:25:54,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:25:54
[2026-10-28 08:25:54,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:25:55,091.091 INFO    ] Initializing speech engine...
[2026-10-28 08:25:55,106.106 INFO    ] 2026-10-28 08:25:55
[2026-10-28 08:25:55,382.382 INFO    ] 2026-10-28 08:25:55
[2026-10-28 08:25:55,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:25:55,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:25:55,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:25:55,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:25:55,959.959 INFO    ] time= 28/10/2026 08:25:55
[2026-10-28 08:25:55,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:25:56,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:25:56,150.150 INFO    ] No existing commands found in stream
[2026-10-28 08:26:01,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:26:01,196.196 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 08:26:02,031.031 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:26:02,034.034 INFO    ] Checking for system updates...
[2026-10-28 08:26:02,077.077 INFO    ] 200
[2026-10-28 08:26:02,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:26:02,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:26:02,152.152 INFO    ] No update needed
[2026-10-28 08:26:02,155.155 INFO    ] Checking for camera pi updates...
[2026-10-28 08:26:02,205.205 INFO    ] 200
[2026-10-28 08:26:02,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:26:02,260.260 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:26:02,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:26:02,364.364 INFO    ] No camera update needed
[2026-10-28 08:26:02,367.367 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:26:02,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:26:02,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:26:02,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:26:04,426.426 INFO    ] ================================================
[2026-10-28 08:26:04,441.441 INFO    ] Launching Daemon at Wed Oct 28 08:26:04 IST 2026
[2026-10-28 08:26:04,452.452 INFO    ] ================================================
[2026-10-28 08:26:05,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:26:05
[2026-10-28 08:26:05,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:26:06,083.083 INFO    ] Initializing speech engine...
[2026-10-28 08:26:06,092.092 INFO    ] 2026-10-28 08:26:06
[2026-10-28 08:26:06,368.368 INFO    ] 2026-10-28 08:26:06
[2026-10-28 08:26:06,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:26:06,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:26:06,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:26:06,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:26:06,935.935 INFO    ] time= 28/10/2026 08:26:06
[2026-10-28 08:26:06,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:26:06,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:26:07,106.106 INFO    ] No existing commands found in stream
[2026-10-28 08:26:12,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:26:12,136.136 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-28 08:26:15,973.973 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:26:15,976.976 INFO    ] Checking for system updates...
[2026-10-28 08:26:16,016.016 INFO    ] 200
[2026-10-28 08:26:16,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:26:16,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:26:16,082.082 INFO    ] No update needed
[2026-10-28 08:26:16,085.085 INFO    ] Checking for camera pi updates...
[2026-10-28 08:26:16,123.123 INFO    ] 200
[2026-10-28 08:26:16,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:26:16,171.171 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:26:16,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:26:16,259.259 INFO    ] No camera update needed
[2026-10-28 08:26:16,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:26:16,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:26:16,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:26:16,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:26:18,318.318 INFO    ] ================================================
[2026-10-28 08:26:18,333.333 INFO    ] Launching Daemon at Wed Oct 28 08:26:18 IST 2026
[2026-10-28 08:26:18,343.343 INFO    ] ================================================
[2026-10-28 08:26:18,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:26:18
[2026-10-28 08:26:19,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:26:19,762.762 INFO    ] Initializing speech engine...
[2026-10-28 08:26:19,773.773 INFO    ] 2026-10-28 08:26:19
[2026-10-28 08:26:20,031.031 INFO    ] 2026-10-28 08:26:20
[2026-10-28 08:26:20,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:26:20,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:26:20,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:26:20,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:26:20,591.591 INFO    ] time= 28/10/2026 08:26:20
[2026-10-28 08:26:20,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:26:20,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:26:20,750.750 INFO    ] No existing commands found in stream
[2026-10-28 08:26:25,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:26:25,771.771 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 08:26:27,180.180 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:26:27,183.183 INFO    ] Checking for system updates...
[2026-10-28 08:26:27,220.220 INFO    ] 200
[2026-10-28 08:26:27,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:26:27,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:26:27,279.279 INFO    ] No update needed
[2026-10-28 08:26:27,282.282 INFO    ] Checking for camera pi updates...
[2026-10-28 08:26:27,317.317 INFO    ] 200
[2026-10-28 08:26:27,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:26:27,367.367 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:26:27,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:26:27,460.460 INFO    ] No camera update needed
[2026-10-28 08:26:27,463.463 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:26:27,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:26:27,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:26:27,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:26:29,517.517 INFO    ] ================================================
[2026-10-28 08:26:29,532.532 INFO    ] Launching Daemon at Wed Oct 28 08:26:29 IST 2026
[2026-10-28 08:26:29,543.543 INFO    ] ================================================
[2026-10-28 08:26:30,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:26:30
[2026-10-28 08:26:30,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:26:31,201.201 INFO    ] Initializing speech engine...
[2026-10-28 08:26:31,215.215 INFO    ] 2026-10-28 08:26:31
[2026-10-28 08:26:31,513.513 INFO    ] 2026-10-28 08:26:31
[2026-10-28 08:26:31,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:26:31,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:26:31,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:26:31,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:26:32,017.017 INFO    ] time= 28/10/2026 08:26:31
[2026-10-28 08:26:32,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:26:32,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:26:32,207.207 INFO    ] No existing commands found in stream
[2026-10-28 08:26:37,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:26:37,220.220 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 08:26:37,842.842 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:26:37,845.845 INFO    ] Checking for system updates...
[2026-10-28 08:26:37,886.886 INFO    ] 200
[2026-10-28 08:26:37,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:26:37,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:26:37,943.943 INFO    ] No update needed
[2026-10-28 08:26:37,946.946 INFO    ] Checking for camera pi updates...
[2026-10-28 08:26:37,979.979 INFO    ] 200
[2026-10-28 08:26:37,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:26:38,027.027 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:26:38,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:26:38,110.110 INFO    ] No camera update needed
[2026-10-28 08:26:38,112.112 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:26:38,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:26:38,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:26:38,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:26:40,166.166 INFO    ] ================================================
[2026-10-28 08:26:40,181.181 INFO    ] Launching Daemon at Wed Oct 28 08:26:40 IST 2026
[2026-10-28 08:26:40,193.193 INFO    ] ================================================
[2026-10-28 08:26:40,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:26:40
[2026-10-28 08:26:41,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:26:41,618.618 INFO    ] Initializing speech engine...
[2026-10-28 08:26:41,627.627 INFO    ] 2026-10-28 08:26:41
[2026-10-28 08:26:41,886.886 INFO    ] 2026-10-28 08:26:41
[2026-10-28 08:26:41,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:26:42,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:26:42,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:26:42,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:26:42,426.426 INFO    ] time= 28/10/2026 08:26:42
[2026-10-28 08:26:42,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:26:42,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:26:42,588.588 INFO    ] No existing commands found in stream
[2026-10-28 08:26:47,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:26:47,621.621 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-28 08:26:49,257.257 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:26:49,260.260 INFO    ] Checking for system updates...
[2026-10-28 08:26:49,300.300 INFO    ] 200
[2026-10-28 08:26:49,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:26:49,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:26:49,358.358 INFO    ] No update needed
[2026-10-28 08:26:49,361.361 INFO    ] Checking for camera pi updates...
[2026-10-28 08:26:49,396.396 INFO    ] 200
[2026-10-28 08:26:49,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:26:49,440.440 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:26:49,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:26:49,527.527 INFO    ] No camera update needed
[2026-10-28 08:26:49,529.529 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:26:49,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:26:49,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:26:49,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:26:51,587.587 INFO    ] ================================================
[2026-10-28 08:26:51,603.603 INFO    ] Launching Daemon at Wed Oct 28 08:26:51 IST 2026
[2026-10-28 08:26:51,614.614 INFO    ] ================================================
[2026-10-28 08:26:52,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:26:52
[2026-10-28 08:26:52,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:26:53,016.016 INFO    ] Initializing speech engine...
[2026-10-28 08:26:53,023.023 INFO    ] 2026-10-28 08:26:53
[2026-10-28 08:26:53,321.321 INFO    ] 2026-10-28 08:26:53
[2026-10-28 08:26:53,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:26:53,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:26:53,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:26:53,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:26:53,750.750 INFO    ] time= 28/10/2026 08:26:53
[2026-10-28 08:26:53,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:26:53,806.806 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:26:53,931.931 INFO    ] No existing commands found in stream
[2026-10-28 08:26:58,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:26:58,959.959 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 08:26:59,584.584 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:26:59,587.587 INFO    ] Checking for system updates...
[2026-10-28 08:26:59,627.627 INFO    ] 200
[2026-10-28 08:26:59,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:26:59,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:26:59,690.690 INFO    ] No update needed
[2026-10-28 08:26:59,692.692 INFO    ] Checking for camera pi updates...
[2026-10-28 08:26:59,726.726 INFO    ] 200
[2026-10-28 08:26:59,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:26:59,769.769 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:26:59,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:26:59,870.870 INFO    ] No camera update needed
[2026-10-28 08:26:59,873.873 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:26:59,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:26:59,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:26:59,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:27:01,933.933 INFO    ] ================================================
[2026-10-28 08:27:01,954.954 INFO    ] Launching Daemon at Wed Oct 28 08:27:01 IST 2026
[2026-10-28 08:27:01,968.968 INFO    ] ================================================
[2026-10-28 08:27:02,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:27:02
[2026-10-28 08:27:03,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:27:03,555.555 INFO    ] Initializing speech engine...
[2026-10-28 08:27:03,564.564 INFO    ] 2026-10-28 08:27:03
[2026-10-28 08:27:03,860.860 INFO    ] 2026-10-28 08:27:03
[2026-10-28 08:27:03,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:27:04,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:27:04,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:27:04,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:27:04,416.416 INFO    ] time= 28/10/2026 08:27:04
[2026-10-28 08:27:04,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:27:04,437.437 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:27:04,571.571 INFO    ] No existing commands found in stream
[2026-10-28 08:27:09,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:27:09,596.596 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-28 08:27:13,346.346 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:27:13,348.348 INFO    ] Checking for system updates...
[2026-10-28 08:27:13,384.384 INFO    ] 200
[2026-10-28 08:27:13,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:27:13,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:27:13,441.441 INFO    ] No update needed
[2026-10-28 08:27:13,443.443 INFO    ] Checking for camera pi updates...
[2026-10-28 08:27:13,481.481 INFO    ] 200
[2026-10-28 08:27:13,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:27:13,530.530 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:27:13,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:27:13,633.633 INFO    ] No camera update needed
[2026-10-28 08:27:13,635.635 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:27:13,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:27:13,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:27:13,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:27:15,689.689 INFO    ] ================================================
[2026-10-28 08:27:15,705.705 INFO    ] Launching Daemon at Wed Oct 28 08:27:15 IST 2026
[2026-10-28 08:27:15,716.716 INFO    ] ================================================
[2026-10-28 08:27:16,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:27:16
[2026-10-28 08:27:16,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:27:17,178.178 INFO    ] Initializing speech engine...
[2026-10-28 08:27:17,188.188 INFO    ] 2026-10-28 08:27:17
[2026-10-28 08:27:17,451.451 INFO    ] 2026-10-28 08:27:17
[2026-10-28 08:27:17,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:27:17,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:27:17,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:27:18,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:27:18,112.112 INFO    ] time= 28/10/2026 08:27:18
[2026-10-28 08:27:18,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:27:18,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:27:18,346.346 INFO    ] No existing commands found in stream
[2026-10-28 08:27:23,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:27:23,375.375 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-28 08:27:25,379.379 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:27:25,382.382 INFO    ] Checking for system updates...
[2026-10-28 08:27:25,419.419 INFO    ] 200
[2026-10-28 08:27:25,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:27:25,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:27:25,486.486 INFO    ] No update needed
[2026-10-28 08:27:25,489.489 INFO    ] Checking for camera pi updates...
[2026-10-28 08:27:25,524.524 INFO    ] 200
[2026-10-28 08:27:25,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:27:25,568.568 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:27:25,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:27:25,754.754 INFO    ] No camera update needed
[2026-10-28 08:27:25,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:27:25,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:27:25,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:27:25,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:27:27,815.815 INFO    ] ================================================
[2026-10-28 08:27:27,829.829 INFO    ] Launching Daemon at Wed Oct 28 08:27:27 IST 2026
[2026-10-28 08:27:27,841.841 INFO    ] ================================================
[2026-10-28 08:27:28,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:27:28
[2026-10-28 08:27:29,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:27:29,271.271 INFO    ] Initializing speech engine...
[2026-10-28 08:27:29,294.294 INFO    ] 2026-10-28 08:27:29
[2026-10-28 08:27:29,551.551 INFO    ] 2026-10-28 08:27:29
[2026-10-28 08:27:29,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:27:29,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:27:29,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:27:30,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:27:30,120.120 INFO    ] time= 28/10/2026 08:27:30
[2026-10-28 08:27:30,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:27:30,142.142 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:27:30,262.262 INFO    ] No existing commands found in stream
[2026-10-28 08:27:35,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:27:35,290.290 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 08:27:37,337.337 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:27:37,340.340 INFO    ] Checking for system updates...
[2026-10-28 08:27:37,379.379 INFO    ] 200
[2026-10-28 08:27:37,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:27:37,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:27:37,438.438 INFO    ] No update needed
[2026-10-28 08:27:37,440.440 INFO    ] Checking for camera pi updates...
[2026-10-28 08:27:37,474.474 INFO    ] 200
[2026-10-28 08:27:37,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:27:37,523.523 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:27:37,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:27:37,606.606 INFO    ] No camera update needed
[2026-10-28 08:27:37,609.609 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:27:37,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:27:37,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:27:37,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:27:39,664.664 INFO    ] ================================================
[2026-10-28 08:27:39,679.679 INFO    ] Launching Daemon at Wed Oct 28 08:27:39 IST 2026
[2026-10-28 08:27:39,691.691 INFO    ] ================================================
[2026-10-28 08:27:40,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:27:40
[2026-10-28 08:27:40,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:27:41,093.093 INFO    ] Initializing speech engine...
[2026-10-28 08:27:41,114.114 INFO    ] 2026-10-28 08:27:41
[2026-10-28 08:27:41,374.374 INFO    ] 2026-10-28 08:27:41
[2026-10-28 08:27:41,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:27:41,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:27:41,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:27:41,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:27:41,942.942 INFO    ] time= 28/10/2026 08:27:41
[2026-10-28 08:27:41,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:27:41,969.969 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:27:42,102.102 INFO    ] No existing commands found in stream
[2026-10-28 08:27:47,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:27:47,117.117 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-28 08:27:50,522.522 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:27:50,524.524 INFO    ] Checking for system updates...
[2026-10-28 08:27:50,565.565 INFO    ] 200
[2026-10-28 08:27:50,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:27:50,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:27:50,622.622 INFO    ] No update needed
[2026-10-28 08:27:50,625.625 INFO    ] Checking for camera pi updates...
[2026-10-28 08:27:50,658.658 INFO    ] 200
[2026-10-28 08:27:50,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:27:50,707.707 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:27:50,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:27:50,804.804 INFO    ] No camera update needed
[2026-10-28 08:27:50,806.806 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:27:50,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:27:50,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:27:50,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:27:52,859.859 INFO    ] ================================================
[2026-10-28 08:27:52,875.875 INFO    ] Launching Daemon at Wed Oct 28 08:27:52 IST 2026
[2026-10-28 08:27:52,887.887 INFO    ] ================================================
[2026-10-28 08:27:53,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:27:53
[2026-10-28 08:27:54,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:27:54,407.407 INFO    ] Initializing speech engine...
[2026-10-28 08:27:54,420.420 INFO    ] 2026-10-28 08:27:54
[2026-10-28 08:27:54,704.704 INFO    ] 2026-10-28 08:27:54
[2026-10-28 08:27:54,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:27:55,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:27:55,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:27:55,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:27:55,270.270 INFO    ] time= 28/10/2026 08:27:55
[2026-10-28 08:27:55,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:27:55,307.307 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:27:55,463.463 INFO    ] No existing commands found in stream
[2026-10-28 08:28:00,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:28:00,497.497 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 08:28:02,226.226 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:28:02,229.229 INFO    ] Checking for system updates...
[2026-10-28 08:28:02,273.273 INFO    ] 200
[2026-10-28 08:28:02,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:28:02,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:28:02,345.345 INFO    ] No update needed
[2026-10-28 08:28:02,347.347 INFO    ] Checking for camera pi updates...
[2026-10-28 08:28:02,389.389 INFO    ] 200
[2026-10-28 08:28:02,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:28:02,452.452 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:28:02,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:28:02,545.545 INFO    ] No camera update needed
[2026-10-28 08:28:02,549.549 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:28:02,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:28:02,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:28:02,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:28:04,610.610 INFO    ] ================================================
[2026-10-28 08:28:04,625.625 INFO    ] Launching Daemon at Wed Oct 28 08:28:04 IST 2026
[2026-10-28 08:28:04,636.636 INFO    ] ================================================
[2026-10-28 08:28:05,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:28:05
[2026-10-28 08:28:05,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:28:06,039.039 INFO    ] Initializing speech engine...
[2026-10-28 08:28:06,054.054 INFO    ] 2026-10-28 08:28:06
[2026-10-28 08:28:06,319.319 INFO    ] 2026-10-28 08:28:06
[2026-10-28 08:28:06,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:28:06,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:28:06,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:28:06,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:28:06,835.835 INFO    ] time= 28/10/2026 08:28:06
[2026-10-28 08:28:06,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:28:06,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:28:06,929.929 INFO    ] No existing commands found in stream
[2026-10-28 08:28:11,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:28:11,946.946 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-28 08:28:15,927.927 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:28:15,929.929 INFO    ] Checking for system updates...
[2026-10-28 08:28:15,965.965 INFO    ] 200
[2026-10-28 08:28:15,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:28:16,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:28:16,022.022 INFO    ] No update needed
[2026-10-28 08:28:16,025.025 INFO    ] Checking for camera pi updates...
[2026-10-28 08:28:16,062.062 INFO    ] 200
[2026-10-28 08:28:16,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:28:16,110.110 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:28:16,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:28:16,191.191 INFO    ] No camera update needed
[2026-10-28 08:28:16,194.194 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:28:16,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:28:16,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:28:16,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:28:18,250.250 INFO    ] ================================================
[2026-10-28 08:28:18,265.265 INFO    ] Launching Daemon at Wed Oct 28 08:28:18 IST 2026
[2026-10-28 08:28:18,275.275 INFO    ] ================================================
[2026-10-28 08:28:18,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:28:18
[2026-10-28 08:28:19,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:28:19,926.926 INFO    ] Initializing speech engine...
[2026-10-28 08:28:19,938.938 INFO    ] 2026-10-28 08:28:19
[2026-10-28 08:28:20,213.213 INFO    ] 2026-10-28 08:28:20
[2026-10-28 08:28:20,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:28:20,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:28:20,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:28:20,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:28:20,799.799 INFO    ] time= 28/10/2026 08:28:20
[2026-10-28 08:28:20,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:28:20,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:28:20,957.957 INFO    ] No existing commands found in stream
[2026-10-28 08:28:25,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:28:25,991.991 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-28 08:28:28,269.269 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:28:28,272.272 INFO    ] Checking for system updates...
[2026-10-28 08:28:28,309.309 INFO    ] 200
[2026-10-28 08:28:28,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:28:28,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:28:28,376.376 INFO    ] No update needed
[2026-10-28 08:28:28,378.378 INFO    ] Checking for camera pi updates...
[2026-10-28 08:28:28,412.412 INFO    ] 200
[2026-10-28 08:28:28,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:28:28,459.459 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:28:28,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:28:28,547.547 INFO    ] No camera update needed
[2026-10-28 08:28:28,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:28:28,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:28:28,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:28:28,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:28:30,602.602 INFO    ] ================================================
[2026-10-28 08:28:30,617.617 INFO    ] Launching Daemon at Wed Oct 28 08:28:30 IST 2026
[2026-10-28 08:28:30,628.628 INFO    ] ================================================
[2026-10-28 08:28:31,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:28:31
[2026-10-28 08:28:31,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:28:32,125.125 INFO    ] Initializing speech engine...
[2026-10-28 08:28:32,134.134 INFO    ] 2026-10-28 08:28:32
[2026-10-28 08:28:32,412.412 INFO    ] 2026-10-28 08:28:32
[2026-10-28 08:28:32,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:28:32,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:28:32,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:28:33,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:28:33,070.070 INFO    ] time= 28/10/2026 08:28:33
[2026-10-28 08:28:33,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:28:33,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:28:33,272.272 INFO    ] No existing commands found in stream
[2026-10-28 08:28:38,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:28:38,297.297 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-28 08:28:40,857.857 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:28:40,860.860 INFO    ] Checking for system updates...
[2026-10-28 08:28:40,897.897 INFO    ] 200
[2026-10-28 08:28:40,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:28:40,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:28:40,961.961 INFO    ] No update needed
[2026-10-28 08:28:40,963.963 INFO    ] Checking for camera pi updates...
[2026-10-28 08:28:41,001.001 INFO    ] 200
[2026-10-28 08:28:41,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:28:41,048.048 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:28:41,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:28:41,153.153 INFO    ] No camera update needed
[2026-10-28 08:28:41,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:28:41,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:28:41,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:28:41,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:28:43,209.209 INFO    ] ================================================
[2026-10-28 08:28:43,224.224 INFO    ] Launching Daemon at Wed Oct 28 08:28:43 IST 2026
[2026-10-28 08:28:43,235.235 INFO    ] ================================================
[2026-10-28 08:28:43,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:28:43
[2026-10-28 08:28:44,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:28:44,752.752 INFO    ] Initializing speech engine...
[2026-10-28 08:28:44,766.766 INFO    ] 2026-10-28 08:28:44
[2026-10-28 08:28:45,076.076 INFO    ] 2026-10-28 08:28:45
[2026-10-28 08:28:45,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:28:45,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:28:45,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:28:45,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:28:45,771.771 INFO    ] time= 28/10/2026 08:28:45
[2026-10-28 08:28:45,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:28:45,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:28:46,020.020 INFO    ] No existing commands found in stream
[2026-10-28 08:28:51,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:28:51,035.035 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-28 08:28:53,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:28:53,746.746 INFO    ] Checking for system updates...
[2026-10-28 08:28:53,784.784 INFO    ] 200
[2026-10-28 08:28:53,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:28:53,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:28:53,850.850 INFO    ] No update needed
[2026-10-28 08:28:53,853.853 INFO    ] Checking for camera pi updates...
[2026-10-28 08:28:53,892.892 INFO    ] 200
[2026-10-28 08:28:53,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:28:53,941.941 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:28:54,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:28:54,032.032 INFO    ] No camera update needed
[2026-10-28 08:28:54,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:28:54,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:28:54,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:28:54,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:28:56,090.090 INFO    ] ================================================
[2026-10-28 08:28:56,105.105 INFO    ] Launching Daemon at Wed Oct 28 08:28:56 IST 2026
[2026-10-28 08:28:56,115.115 INFO    ] ================================================
[2026-10-28 08:28:56,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:28:56
[2026-10-28 08:28:57,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:28:57,517.517 INFO    ] Initializing speech engine...
[2026-10-28 08:28:57,522.522 INFO    ] 2026-10-28 08:28:57
[2026-10-28 08:28:57,794.794 INFO    ] 2026-10-28 08:28:57
[2026-10-28 08:28:57,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:28:58,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:28:58,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:28:58,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:28:58,354.354 INFO    ] time= 28/10/2026 08:28:58
[2026-10-28 08:28:58,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:28:58,399.399 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:28:58,532.532 INFO    ] No existing commands found in stream
[2026-10-28 08:29:03,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:29:03,566.566 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 08:29:07,527.527 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:29:07,530.530 INFO    ] Checking for system updates...
[2026-10-28 08:29:07,569.569 INFO    ] 200
[2026-10-28 08:29:07,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:29:07,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:29:07,626.626 INFO    ] No update needed
[2026-10-28 08:29:07,628.628 INFO    ] Checking for camera pi updates...
[2026-10-28 08:29:07,662.662 INFO    ] 200
[2026-10-28 08:29:07,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:29:07,704.704 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:29:07,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:29:07,766.766 INFO    ] No camera update needed
[2026-10-28 08:29:07,769.769 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:29:07,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:29:07,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:29:07,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:29:09,822.822 INFO    ] ================================================
[2026-10-28 08:29:09,836.836 INFO    ] Launching Daemon at Wed Oct 28 08:29:09 IST 2026
[2026-10-28 08:29:09,847.847 INFO    ] ================================================
[2026-10-28 08:29:10,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:29:10
[2026-10-28 08:29:11,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:29:11,305.305 INFO    ] Initializing speech engine...
[2026-10-28 08:29:11,314.314 INFO    ] 2026-10-28 08:29:11
[2026-10-28 08:29:11,573.573 INFO    ] 2026-10-28 08:29:11
[2026-10-28 08:29:11,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:29:11,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:29:11,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:29:12,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:29:12,120.120 INFO    ] time= 28/10/2026 08:29:12
[2026-10-28 08:29:12,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:29:12,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:29:12,275.275 INFO    ] No existing commands found in stream
[2026-10-28 08:29:17,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:29:17,293.293 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 08:29:18,983.983 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:29:18,986.986 INFO    ] Checking for system updates...
[2026-10-28 08:29:19,022.022 INFO    ] 200
[2026-10-28 08:29:19,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:29:19,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:29:19,087.087 INFO    ] No update needed
[2026-10-28 08:29:19,089.089 INFO    ] Checking for camera pi updates...
[2026-10-28 08:29:19,123.123 INFO    ] 200
[2026-10-28 08:29:19,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:29:19,167.167 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:29:19,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:29:19,261.261 INFO    ] No camera update needed
[2026-10-28 08:29:19,263.263 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:29:19,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:29:19,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:29:19,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:29:21,322.322 INFO    ] ================================================
[2026-10-28 08:29:21,337.337 INFO    ] Launching Daemon at Wed Oct 28 08:29:21 IST 2026
[2026-10-28 08:29:21,348.348 INFO    ] ================================================
[2026-10-28 08:29:21,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:29:21
[2026-10-28 08:29:22,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:29:22,758.758 INFO    ] Initializing speech engine...
[2026-10-28 08:29:22,777.777 INFO    ] 2026-10-28 08:29:22
[2026-10-28 08:29:23,028.028 INFO    ] 2026-10-28 08:29:23
[2026-10-28 08:29:23,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:29:23,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:29:23,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:29:23,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:29:23,597.597 INFO    ] time= 28/10/2026 08:29:23
[2026-10-28 08:29:23,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:29:23,622.622 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:29:23,738.738 INFO    ] No existing commands found in stream
[2026-10-28 08:29:28,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:29:28,764.764 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 08:29:31,603.603 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:29:31,606.606 INFO    ] Checking for system updates...
[2026-10-28 08:29:31,643.643 INFO    ] 200
[2026-10-28 08:29:31,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:29:31,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:29:31,701.701 INFO    ] No update needed
[2026-10-28 08:29:31,704.704 INFO    ] Checking for camera pi updates...
[2026-10-28 08:29:31,737.737 INFO    ] 200
[2026-10-28 08:29:31,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:29:31,785.785 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:29:31,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:29:31,974.974 INFO    ] No camera update needed
[2026-10-28 08:29:31,976.976 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:29:31,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:29:31,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:29:31,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:29:34,028.028 INFO    ] ================================================
[2026-10-28 08:29:34,042.042 INFO    ] Launching Daemon at Wed Oct 28 08:29:34 IST 2026
[2026-10-28 08:29:34,053.053 INFO    ] ================================================
[2026-10-28 08:29:34,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:29:34
[2026-10-28 08:29:35,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:29:35,548.548 INFO    ] Initializing speech engine...
[2026-10-28 08:29:35,557.557 INFO    ] 2026-10-28 08:29:35
[2026-10-28 08:29:35,817.817 INFO    ] 2026-10-28 08:29:35
[2026-10-28 08:29:35,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:29:36,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:29:36,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:29:36,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:29:36,514.514 INFO    ] time= 28/10/2026 08:29:36
[2026-10-28 08:29:36,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:29:36,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:29:36,758.758 INFO    ] No existing commands found in stream
[2026-10-28 08:29:41,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:29:41,774.774 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 08:29:43,903.903 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:29:43,906.906 INFO    ] Checking for system updates...
[2026-10-28 08:29:43,941.941 INFO    ] 200
[2026-10-28 08:29:43,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:29:44,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:29:44,005.005 INFO    ] No update needed
[2026-10-28 08:29:44,008.008 INFO    ] Checking for camera pi updates...
[2026-10-28 08:29:44,041.041 INFO    ] 200
[2026-10-28 08:29:44,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:29:44,085.085 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:29:44,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:29:44,190.190 INFO    ] No camera update needed
[2026-10-28 08:29:44,192.192 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:29:44,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:29:44,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:29:44,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:29:46,246.246 INFO    ] ================================================
[2026-10-28 08:29:46,261.261 INFO    ] Launching Daemon at Wed Oct 28 08:29:46 IST 2026
[2026-10-28 08:29:46,272.272 INFO    ] ================================================
[2026-10-28 08:29:46,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:29:46
[2026-10-28 08:29:47,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:29:47,729.729 INFO    ] Initializing speech engine...
[2026-10-28 08:29:47,735.735 INFO    ] 2026-10-28 08:29:47
[2026-10-28 08:29:48,001.001 INFO    ] 2026-10-28 08:29:47
[2026-10-28 08:29:48,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:29:48,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:29:48,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:29:48,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:29:48,548.548 INFO    ] time= 28/10/2026 08:29:48
[2026-10-28 08:29:48,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:29:48,641.641 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:29:48,786.786 INFO    ] No existing commands found in stream
[2026-10-28 08:29:53,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:29:53,814.814 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 08:29:54,525.525 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:29:54,527.527 INFO    ] Checking for system updates...
[2026-10-28 08:29:54,563.563 INFO    ] 200
[2026-10-28 08:29:54,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:29:54,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:29:54,620.620 INFO    ] No update needed
[2026-10-28 08:29:54,623.623 INFO    ] Checking for camera pi updates...
[2026-10-28 08:29:54,660.660 INFO    ] 200
[2026-10-28 08:29:54,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:29:54,708.708 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:29:54,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:29:54,787.787 INFO    ] No camera update needed
[2026-10-28 08:29:54,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:29:54,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:29:54,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:29:54,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:29:56,843.843 INFO    ] ================================================
[2026-10-28 08:29:56,858.858 INFO    ] Launching Daemon at Wed Oct 28 08:29:56 IST 2026
[2026-10-28 08:29:56,868.868 INFO    ] ================================================
[2026-10-28 08:29:57,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:29:57
[2026-10-28 08:29:58,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:29:58,486.486 INFO    ] Initializing speech engine...
[2026-10-28 08:29:58,494.494 INFO    ] 2026-10-28 08:29:58
[2026-10-28 08:29:58,771.771 INFO    ] 2026-10-28 08:29:58
[2026-10-28 08:29:58,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:29:59,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:29:59,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:29:59,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:29:59,313.313 INFO    ] time= 28/10/2026 08:29:59
[2026-10-28 08:29:59,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:29:59,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:29:59,501.501 INFO    ] No existing commands found in stream
[2026-10-28 08:30:04,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:30:04,527.527 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-28 08:30:08,851.851 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:30:08,854.854 INFO    ] Checking for system updates...
[2026-10-28 08:30:08,894.894 INFO    ] 200
[2026-10-28 08:30:08,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:30:08,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:30:08,958.958 INFO    ] No update needed
[2026-10-28 08:30:08,961.961 INFO    ] Checking for camera pi updates...
[2026-10-28 08:30:08,995.995 INFO    ] 200
[2026-10-28 08:30:08,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:30:09,042.042 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:30:09,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:30:09,141.141 INFO    ] No camera update needed
[2026-10-28 08:30:09,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:30:09,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:30:09,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:30:09,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:30:11,198.198 INFO    ] ================================================
[2026-10-28 08:30:11,213.213 INFO    ] Launching Daemon at Wed Oct 28 08:30:11 IST 2026
[2026-10-28 08:30:11,224.224 INFO    ] ================================================
[2026-10-28 08:30:11,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:30:11
[2026-10-28 08:30:12,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:30:12,641.641 INFO    ] Initializing speech engine...
[2026-10-28 08:30:12,650.650 INFO    ] 2026-10-28 08:30:12
[2026-10-28 08:30:12,897.897 INFO    ] 2026-10-28 08:30:12
[2026-10-28 08:30:12,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:30:13,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:30:13,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:30:13,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:30:13,456.456 INFO    ] time= 28/10/2026 08:30:13
[2026-10-28 08:30:13,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:30:13,491.491 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:30:13,634.634 INFO    ] No existing commands found in stream
[2026-10-28 08:30:18,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:30:18,662.662 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 08:30:20,190.190 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:30:20,193.193 INFO    ] Checking for system updates...
[2026-10-28 08:30:20,231.231 INFO    ] 200
[2026-10-28 08:30:20,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:30:20,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:30:20,287.287 INFO    ] No update needed
[2026-10-28 08:30:20,290.290 INFO    ] Checking for camera pi updates...
[2026-10-28 08:30:20,326.326 INFO    ] 200
[2026-10-28 08:30:20,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:30:20,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:30:20,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:30:20,471.471 INFO    ] No camera update needed
[2026-10-28 08:30:20,474.474 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:30:20,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:30:20,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:30:20,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:30:22,527.527 INFO    ] ================================================
[2026-10-28 08:30:22,542.542 INFO    ] Launching Daemon at Wed Oct 28 08:30:22 IST 2026
[2026-10-28 08:30:22,552.552 INFO    ] ================================================
[2026-10-28 08:30:23,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:30:23
[2026-10-28 08:30:23,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:30:24,009.009 INFO    ] Initializing speech engine...
[2026-10-28 08:30:24,018.018 INFO    ] 2026-10-28 08:30:24
[2026-10-28 08:30:24,276.276 INFO    ] 2026-10-28 08:30:24
[2026-10-28 08:30:24,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:30:24,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:30:24,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:30:24,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:30:24,824.824 INFO    ] time= 28/10/2026 08:30:24
[2026-10-28 08:30:24,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:30:24,850.850 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:30:24,991.991 INFO    ] No existing commands found in stream
[2026-10-28 08:30:30,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:30:30,026.026 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-28 08:30:33,536.536 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:30:33,539.539 INFO    ] Checking for system updates...
[2026-10-28 08:30:33,574.574 INFO    ] 200
[2026-10-28 08:30:33,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:30:33,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:30:33,636.636 INFO    ] No update needed
[2026-10-28 08:30:33,639.639 INFO    ] Checking for camera pi updates...
[2026-10-28 08:30:33,673.673 INFO    ] 200
[2026-10-28 08:30:33,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:30:33,716.716 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:30:33,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:30:33,802.802 INFO    ] No camera update needed
[2026-10-28 08:30:33,805.805 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:30:33,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:30:33,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:30:33,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:30:35,859.859 INFO    ] ================================================
[2026-10-28 08:30:35,874.874 INFO    ] Launching Daemon at Wed Oct 28 08:30:35 IST 2026
[2026-10-28 08:30:35,885.885 INFO    ] ================================================
[2026-10-28 08:30:36,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:30:36
[2026-10-28 08:30:37,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:30:37,336.336 INFO    ] Initializing speech engine...
[2026-10-28 08:30:37,344.344 INFO    ] 2026-10-28 08:30:37
[2026-10-28 08:30:37,595.595 INFO    ] 2026-10-28 08:30:37
[2026-10-28 08:30:37,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:30:37,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:30:37,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:30:38,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:30:38,151.151 INFO    ] time= 28/10/2026 08:30:38
[2026-10-28 08:30:38,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:30:38,197.197 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:30:38,323.323 INFO    ] No existing commands found in stream
[2026-10-28 08:30:43,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:30:43,351.351 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 08:30:47,606.606 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:30:47,608.608 INFO    ] Checking for system updates...
[2026-10-28 08:30:47,645.645 INFO    ] 200
[2026-10-28 08:30:47,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:30:47,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:30:47,701.701 INFO    ] No update needed
[2026-10-28 08:30:47,704.704 INFO    ] Checking for camera pi updates...
[2026-10-28 08:30:47,738.738 INFO    ] 200
[2026-10-28 08:30:47,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:30:47,788.788 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:30:47,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:30:47,874.874 INFO    ] No camera update needed
[2026-10-28 08:30:47,876.876 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:30:47,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:30:47,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:30:47,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:30:49,929.929 INFO    ] ================================================
[2026-10-28 08:30:49,944.944 INFO    ] Launching Daemon at Wed Oct 28 08:30:49 IST 2026
[2026-10-28 08:30:49,954.954 INFO    ] ================================================
[2026-10-28 08:30:50,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:30:50
[2026-10-28 08:30:51,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:30:51,428.428 INFO    ] Initializing speech engine...
[2026-10-28 08:30:51,439.439 INFO    ] 2026-10-28 08:30:51
[2026-10-28 08:30:51,743.743 INFO    ] 2026-10-28 08:30:51
[2026-10-28 08:30:51,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:30:52,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:30:52,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:30:52,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:30:52,415.415 INFO    ] time= 28/10/2026 08:30:52
[2026-10-28 08:30:52,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:30:52,503.503 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:30:52,632.632 INFO    ] No existing commands found in stream
[2026-10-28 08:30:57,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:30:57,657.657 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 08:31:01,124.124 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:31:01,127.127 INFO    ] Checking for system updates...
[2026-10-28 08:31:01,165.165 INFO    ] 200
[2026-10-28 08:31:01,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:31:01,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:31:01,232.232 INFO    ] No update needed
[2026-10-28 08:31:01,234.234 INFO    ] Checking for camera pi updates...
[2026-10-28 08:31:01,272.272 INFO    ] 200
[2026-10-28 08:31:01,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:31:01,318.318 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:31:01,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:31:01,402.402 INFO    ] No camera update needed
[2026-10-28 08:31:01,405.405 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:31:01,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:31:01,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:31:01,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:31:03,459.459 INFO    ] ================================================
[2026-10-28 08:31:03,474.474 INFO    ] Launching Daemon at Wed Oct 28 08:31:03 IST 2026
[2026-10-28 08:31:03,487.487 INFO    ] ================================================
[2026-10-28 08:31:04,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:31:04
[2026-10-28 08:31:04,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:31:05,029.029 INFO    ] Initializing speech engine...
[2026-10-28 08:31:05,043.043 INFO    ] 2026-10-28 08:31:05
[2026-10-28 08:31:05,316.316 INFO    ] 2026-10-28 08:31:05
[2026-10-28 08:31:05,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:31:05,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:31:05,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:31:05,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:31:05,893.893 INFO    ] time= 28/10/2026 08:31:05
[2026-10-28 08:31:05,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:31:05,910.910 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:31:06,070.070 INFO    ] No existing commands found in stream
[2026-10-28 08:31:11,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:31:11,104.104 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 08:31:14,566.566 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:31:14,569.569 INFO    ] Checking for system updates...
[2026-10-28 08:31:14,606.606 INFO    ] 200
[2026-10-28 08:31:14,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:31:14,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:31:14,663.663 INFO    ] No update needed
[2026-10-28 08:31:14,666.666 INFO    ] Checking for camera pi updates...
[2026-10-28 08:31:14,702.702 INFO    ] 200
[2026-10-28 08:31:14,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:31:14,745.745 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:31:14,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:31:14,827.827 INFO    ] No camera update needed
[2026-10-28 08:31:14,830.830 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:31:14,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:31:14,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:31:14,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:31:16,884.884 INFO    ] ================================================
[2026-10-28 08:31:16,901.901 INFO    ] Launching Daemon at Wed Oct 28 08:31:16 IST 2026
[2026-10-28 08:31:16,911.911 INFO    ] ================================================
[2026-10-28 08:31:17,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:31:17
[2026-10-28 08:31:18,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:31:18,367.367 INFO    ] Initializing speech engine...
[2026-10-28 08:31:18,376.376 INFO    ] 2026-10-28 08:31:18
[2026-10-28 08:31:18,640.640 INFO    ] 2026-10-28 08:31:18
[2026-10-28 08:31:18,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:31:18,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:31:18,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:31:19,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:31:19,230.230 INFO    ] time= 28/10/2026 08:31:19
[2026-10-28 08:31:19,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:31:19,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:31:19,375.375 INFO    ] No existing commands found in stream
[2026-10-28 08:31:24,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:31:24,408.408 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 08:31:26,944.944 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:31:26,947.947 INFO    ] Checking for system updates...
[2026-10-28 08:31:26,985.985 INFO    ] 200
[2026-10-28 08:31:26,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:31:27,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:31:27,046.046 INFO    ] No update needed
[2026-10-28 08:31:27,048.048 INFO    ] Checking for camera pi updates...
[2026-10-28 08:31:27,081.081 INFO    ] 200
[2026-10-28 08:31:27,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:31:27,128.128 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:31:27,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:31:27,233.233 INFO    ] No camera update needed
[2026-10-28 08:31:27,236.236 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:31:27,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:31:27,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:31:27,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:31:29,289.289 INFO    ] ================================================
[2026-10-28 08:31:29,304.304 INFO    ] Launching Daemon at Wed Oct 28 08:31:29 IST 2026
[2026-10-28 08:31:29,314.314 INFO    ] ================================================
[2026-10-28 08:31:29,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:31:29
[2026-10-28 08:31:30,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:31:30,738.738 INFO    ] Initializing speech engine...
[2026-10-28 08:31:30,756.756 INFO    ] 2026-10-28 08:31:30
[2026-10-28 08:31:31,016.016 INFO    ] 2026-10-28 08:31:30
[2026-10-28 08:31:31,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:31:31,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:31:31,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:31:31,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:31:31,506.506 INFO    ] time= 28/10/2026 08:31:31
[2026-10-28 08:31:31,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:31:31,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:31:31,779.779 INFO    ] No existing commands found in stream
[2026-10-28 08:31:36,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:31:36,805.805 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 08:31:40,770.770 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:31:40,773.773 INFO    ] Checking for system updates...
[2026-10-28 08:31:40,809.809 INFO    ] 200
[2026-10-28 08:31:40,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:31:40,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:31:40,866.866 INFO    ] No update needed
[2026-10-28 08:31:40,868.868 INFO    ] Checking for camera pi updates...
[2026-10-28 08:31:40,902.902 INFO    ] 200
[2026-10-28 08:31:40,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:31:40,954.954 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:31:41,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:31:41,156.156 INFO    ] No camera update needed
[2026-10-28 08:31:41,158.158 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:31:41,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:31:41,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:31:41,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:31:43,213.213 INFO    ] ================================================
[2026-10-28 08:31:43,228.228 INFO    ] Launching Daemon at Wed Oct 28 08:31:43 IST 2026
[2026-10-28 08:31:43,239.239 INFO    ] ================================================
[2026-10-28 08:31:43,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:31:43
[2026-10-28 08:31:44,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:31:44,651.651 INFO    ] Initializing speech engine...
[2026-10-28 08:31:44,660.660 INFO    ] 2026-10-28 08:31:44
[2026-10-28 08:31:44,949.949 INFO    ] 2026-10-28 08:31:44
[2026-10-28 08:31:44,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:31:45,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:31:45,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:31:45,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:31:45,555.555 INFO    ] time= 28/10/2026 08:31:45
[2026-10-28 08:31:45,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:31:45,583.583 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:31:45,725.725 INFO    ] No existing commands found in stream
[2026-10-28 08:31:50,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:31:50,751.751 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-28 08:31:53,789.789 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:31:53,791.791 INFO    ] Checking for system updates...
[2026-10-28 08:31:53,826.826 INFO    ] 200
[2026-10-28 08:31:53,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:31:53,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:31:53,884.884 INFO    ] No update needed
[2026-10-28 08:31:53,886.886 INFO    ] Checking for camera pi updates...
[2026-10-28 08:31:53,921.921 INFO    ] 200
[2026-10-28 08:31:53,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:31:53,967.967 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:31:54,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:31:54,023.023 INFO    ] No camera update needed
[2026-10-28 08:31:54,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:31:54,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:31:54,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:31:54,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:31:56,077.077 INFO    ] ================================================
[2026-10-28 08:31:56,092.092 INFO    ] Launching Daemon at Wed Oct 28 08:31:56 IST 2026
[2026-10-28 08:31:56,102.102 INFO    ] ================================================
[2026-10-28 08:31:56,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:31:56
[2026-10-28 08:31:57,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:31:57,539.539 INFO    ] Initializing speech engine...
[2026-10-28 08:31:57,557.557 INFO    ] 2026-10-28 08:31:57
[2026-10-28 08:31:57,807.807 INFO    ] 2026-10-28 08:31:57
[2026-10-28 08:31:57,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:31:58,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:31:58,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:31:58,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:31:58,380.380 INFO    ] time= 28/10/2026 08:31:58
[2026-10-28 08:31:58,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:31:58,414.414 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:31:58,551.551 INFO    ] No existing commands found in stream
[2026-10-28 08:32:03,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:32:03,584.584 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-28 08:32:08,019.019 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:32:08,021.021 INFO    ] Checking for system updates...
[2026-10-28 08:32:08,057.057 INFO    ] 200
[2026-10-28 08:32:08,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:32:08,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:32:08,114.114 INFO    ] No update needed
[2026-10-28 08:32:08,117.117 INFO    ] Checking for camera pi updates...
[2026-10-28 08:32:08,151.151 INFO    ] 200
[2026-10-28 08:32:08,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:32:08,194.194 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:32:08,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:32:08,292.292 INFO    ] No camera update needed
[2026-10-28 08:32:08,294.294 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:32:08,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:32:08,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:32:08,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:32:10,346.346 INFO    ] ================================================
[2026-10-28 08:32:10,361.361 INFO    ] Launching Daemon at Wed Oct 28 08:32:10 IST 2026
[2026-10-28 08:32:10,371.371 INFO    ] ================================================
[2026-10-28 08:32:10,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:32:10
[2026-10-28 08:32:11,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:32:11,899.899 INFO    ] Initializing speech engine...
[2026-10-28 08:32:11,907.907 INFO    ] 2026-10-28 08:32:11
[2026-10-28 08:32:12,195.195 INFO    ] 2026-10-28 08:32:12
[2026-10-28 08:32:12,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:32:12,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:32:12,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:32:12,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:32:12,868.868 INFO    ] time= 28/10/2026 08:32:12
[2026-10-28 08:32:12,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:32:12,970.970 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:32:13,108.108 INFO    ] No existing commands found in stream
[2026-10-28 08:32:18,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:32:18,131.131 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-28 08:32:19,642.642 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:32:19,645.645 INFO    ] Checking for system updates...
[2026-10-28 08:32:19,680.680 INFO    ] 200
[2026-10-28 08:32:19,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:32:19,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:32:19,737.737 INFO    ] No update needed
[2026-10-28 08:32:19,740.740 INFO    ] Checking for camera pi updates...
[2026-10-28 08:32:19,773.773 INFO    ] 200
[2026-10-28 08:32:19,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:32:19,816.816 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:32:19,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:32:19,917.917 INFO    ] No camera update needed
[2026-10-28 08:32:19,919.919 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:32:19,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:32:19,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:32:19,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:32:21,970.970 INFO    ] ================================================
[2026-10-28 08:32:21,986.986 INFO    ] Launching Daemon at Wed Oct 28 08:32:21 IST 2026
[2026-10-28 08:32:22,996.996 INFO    ] ================================================
[2026-10-28 08:32:22,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:32:22
[2026-10-28 08:32:23,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:32:23,455.455 INFO    ] Initializing speech engine...
[2026-10-28 08:32:23,461.461 INFO    ] 2026-10-28 08:32:23
[2026-10-28 08:32:23,708.708 INFO    ] 2026-10-28 08:32:23
[2026-10-28 08:32:23,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:32:23,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:32:24,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:32:24,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:32:24,274.274 INFO    ] time= 28/10/2026 08:32:24
[2026-10-28 08:32:24,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:32:24,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:32:24,426.426 INFO    ] No existing commands found in stream
[2026-10-28 08:32:29,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:32:29,445.445 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-28 08:32:30,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:32:30,664.664 INFO    ] Checking for system updates...
[2026-10-28 08:32:30,700.700 INFO    ] 200
[2026-10-28 08:32:30,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:32:30,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:32:30,762.762 INFO    ] No update needed
[2026-10-28 08:32:30,764.764 INFO    ] Checking for camera pi updates...
[2026-10-28 08:32:30,800.800 INFO    ] 200
[2026-10-28 08:32:30,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:32:30,843.843 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:32:30,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:32:30,924.924 INFO    ] No camera update needed
[2026-10-28 08:32:30,927.927 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:32:30,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:32:30,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:32:30,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:32:32,979.979 INFO    ] ================================================
[2026-10-28 08:32:32,994.994 INFO    ] Launching Daemon at Wed Oct 28 08:32:32 IST 2026
[2026-10-28 08:32:33,005.005 INFO    ] ================================================
[2026-10-28 08:32:33,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:32:33
[2026-10-28 08:32:34,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:32:34,475.475 INFO    ] Initializing speech engine...
[2026-10-28 08:32:34,481.481 INFO    ] 2026-10-28 08:32:34
[2026-10-28 08:32:34,756.756 INFO    ] 2026-10-28 08:32:34
[2026-10-28 08:32:34,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:32:35,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:32:35,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:32:35,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:32:35,321.321 INFO    ] time= 28/10/2026 08:32:35
[2026-10-28 08:32:35,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:32:35,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:32:35,478.478 INFO    ] No existing commands found in stream
[2026-10-28 08:32:40,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:32:40,496.496 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 08:32:41,322.322 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:32:41,324.324 INFO    ] Checking for system updates...
[2026-10-28 08:32:41,363.363 INFO    ] 200
[2026-10-28 08:32:41,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:32:41,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:32:41,421.421 INFO    ] No update needed
[2026-10-28 08:32:41,423.423 INFO    ] Checking for camera pi updates...
[2026-10-28 08:32:41,456.456 INFO    ] 200
[2026-10-28 08:32:41,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:32:41,500.500 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:32:41,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:32:41,598.598 INFO    ] No camera update needed
[2026-10-28 08:32:41,600.600 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:32:41,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:32:41,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:32:41,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:32:43,652.652 INFO    ] ================================================
[2026-10-28 08:32:43,667.667 INFO    ] Launching Daemon at Wed Oct 28 08:32:43 IST 2026
[2026-10-28 08:32:43,677.677 INFO    ] ================================================
[2026-10-28 08:32:44,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:32:44
[2026-10-28 08:32:44,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:32:45,102.102 INFO    ] Initializing speech engine...
[2026-10-28 08:32:45,123.123 INFO    ] 2026-10-28 08:32:45
[2026-10-28 08:32:45,387.387 INFO    ] 2026-10-28 08:32:45
[2026-10-28 08:32:45,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:32:45,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:32:45,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:32:45,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:32:45,950.950 INFO    ] time= 28/10/2026 08:32:45
[2026-10-28 08:32:45,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:32:45,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:32:46,126.126 INFO    ] No existing commands found in stream
[2026-10-28 08:32:51,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:32:51,161.161 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 08:32:52,923.923 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:32:52,926.926 INFO    ] Checking for system updates...
[2026-10-28 08:32:52,965.965 INFO    ] 200
[2026-10-28 08:32:52,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:32:53,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:32:53,028.028 INFO    ] No update needed
[2026-10-28 08:32:53,030.030 INFO    ] Checking for camera pi updates...
[2026-10-28 08:32:53,067.067 INFO    ] 200
[2026-10-28 08:32:53,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:32:53,114.114 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:32:53,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:32:53,216.216 INFO    ] No camera update needed
[2026-10-28 08:32:53,218.218 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:32:53,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:32:53,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:32:53,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:32:55,270.270 INFO    ] ================================================
[2026-10-28 08:32:55,290.290 INFO    ] Launching Daemon at Wed Oct 28 08:32:55 IST 2026
[2026-10-28 08:32:55,303.303 INFO    ] ================================================
[2026-10-28 08:32:55,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:32:55
[2026-10-28 08:32:56,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:32:56,900.900 INFO    ] Initializing speech engine...
[2026-10-28 08:32:56,906.906 INFO    ] 2026-10-28 08:32:56
[2026-10-28 08:32:57,170.170 INFO    ] 2026-10-28 08:32:57
[2026-10-28 08:32:57,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:32:57,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:32:57,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:32:57,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:32:57,695.695 INFO    ] time= 28/10/2026 08:32:57
[2026-10-28 08:32:57,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:32:57,802.802 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:32:57,942.942 INFO    ] No existing commands found in stream
[2026-10-28 08:33:02,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:33:02,965.965 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-28 08:33:05,762.762 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:33:05,765.765 INFO    ] Checking for system updates...
[2026-10-28 08:33:05,803.803 INFO    ] 200
[2026-10-28 08:33:05,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:33:05,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:33:05,866.866 INFO    ] No update needed
[2026-10-28 08:33:05,869.869 INFO    ] Checking for camera pi updates...
[2026-10-28 08:33:05,902.902 INFO    ] 200
[2026-10-28 08:33:05,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:33:05,949.949 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:33:06,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:33:06,016.016 INFO    ] No camera update needed
[2026-10-28 08:33:06,018.018 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:33:06,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:33:06,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:33:06,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:33:08,070.070 INFO    ] ================================================
[2026-10-28 08:33:08,086.086 INFO    ] Launching Daemon at Wed Oct 28 08:33:08 IST 2026
[2026-10-28 08:33:08,097.097 INFO    ] ================================================
[2026-10-28 08:33:08,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:33:08
[2026-10-28 08:33:09,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:33:09,494.494 INFO    ] Initializing speech engine...
[2026-10-28 08:33:09,507.507 INFO    ] 2026-10-28 08:33:09
[2026-10-28 08:33:09,772.772 INFO    ] 2026-10-28 08:33:09
[2026-10-28 08:33:09,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:33:10,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:33:10,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:33:10,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:33:10,274.274 INFO    ] time= 28/10/2026 08:33:10
[2026-10-28 08:33:10,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:33:10,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:33:10,479.479 INFO    ] No existing commands found in stream
[2026-10-28 08:33:15,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:33:15,507.507 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 08:33:16,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:33:16,122.122 INFO    ] Checking for system updates...
[2026-10-28 08:33:16,159.159 INFO    ] 200
[2026-10-28 08:33:16,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:33:16,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:33:16,217.217 INFO    ] No update needed
[2026-10-28 08:33:16,220.220 INFO    ] Checking for camera pi updates...
[2026-10-28 08:33:16,255.255 INFO    ] 200
[2026-10-28 08:33:16,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:33:16,299.299 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:33:16,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:33:16,390.390 INFO    ] No camera update needed
[2026-10-28 08:33:16,392.392 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:33:16,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:33:16,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:33:16,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:33:18,448.448 INFO    ] ================================================
[2026-10-28 08:33:18,465.465 INFO    ] Launching Daemon at Wed Oct 28 08:33:18 IST 2026
[2026-10-28 08:33:18,476.476 INFO    ] ================================================
[2026-10-28 08:33:19,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:33:19
[2026-10-28 08:33:19,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:33:19,921.921 INFO    ] Initializing speech engine...
[2026-10-28 08:33:19,940.940 INFO    ] 2026-10-28 08:33:19
[2026-10-28 08:33:20,191.191 INFO    ] 2026-10-28 08:33:20
[2026-10-28 08:33:20,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:33:20,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:33:20,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:33:20,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:33:20,794.794 INFO    ] time= 28/10/2026 08:33:20
[2026-10-28 08:33:20,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:33:20,817.817 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:33:20,961.961 INFO    ] No existing commands found in stream
[2026-10-28 08:33:25,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:33:25,984.984 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 08:33:26,804.804 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:33:26,806.806 INFO    ] Checking for system updates...
[2026-10-28 08:33:26,846.846 INFO    ] 200
[2026-10-28 08:33:26,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:33:26,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:33:26,909.909 INFO    ] No update needed
[2026-10-28 08:33:26,912.912 INFO    ] Checking for camera pi updates...
[2026-10-28 08:33:26,948.948 INFO    ] 200
[2026-10-28 08:33:26,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:33:26,992.992 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:33:27,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:33:27,090.090 INFO    ] No camera update needed
[2026-10-28 08:33:27,093.093 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:33:27,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:33:27,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:33:27,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:33:29,147.147 INFO    ] ================================================
[2026-10-28 08:33:29,162.162 INFO    ] Launching Daemon at Wed Oct 28 08:33:29 IST 2026
[2026-10-28 08:33:29,173.173 INFO    ] ================================================
[2026-10-28 08:33:29,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:33:29
[2026-10-28 08:33:30,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:33:30,815.815 INFO    ] Initializing speech engine...
[2026-10-28 08:33:30,822.822 INFO    ] 2026-10-28 08:33:30
[2026-10-28 08:33:31,097.097 INFO    ] 2026-10-28 08:33:31
[2026-10-28 08:33:31,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:33:31,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:33:31,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:33:31,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:33:31,712.712 INFO    ] time= 28/10/2026 08:33:31
[2026-10-28 08:33:31,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:33:31,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:33:31,912.912 INFO    ] No existing commands found in stream
[2026-10-28 08:33:36,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:33:36,947.947 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-28 08:33:38,851.851 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:33:38,855.855 INFO    ] Checking for system updates...
[2026-10-28 08:33:38,896.896 INFO    ] 200
[2026-10-28 08:33:38,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:33:38,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:33:38,962.962 INFO    ] No update needed
[2026-10-28 08:33:38,964.964 INFO    ] Checking for camera pi updates...
[2026-10-28 08:33:39,001.001 INFO    ] 200
[2026-10-28 08:33:39,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:33:39,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:33:39,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:33:39,146.146 INFO    ] No camera update needed
[2026-10-28 08:33:39,148.148 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:33:39,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:33:39,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:33:39,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:33:41,202.202 INFO    ] ================================================
[2026-10-28 08:33:41,218.218 INFO    ] Launching Daemon at Wed Oct 28 08:33:41 IST 2026
[2026-10-28 08:33:41,230.230 INFO    ] ================================================
[2026-10-28 08:33:41,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:33:41
[2026-10-28 08:33:42,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:33:42,675.675 INFO    ] Initializing speech engine...
[2026-10-28 08:33:42,696.696 INFO    ] 2026-10-28 08:33:42
[2026-10-28 08:33:42,977.977 INFO    ] 2026-10-28 08:33:42
[2026-10-28 08:33:43,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:33:43,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:33:43,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:33:43,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:33:43,592.592 INFO    ] time= 28/10/2026 08:33:43
[2026-10-28 08:33:43,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:33:43,631.631 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:33:43,782.782 INFO    ] No existing commands found in stream
[2026-10-28 08:33:48,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:33:48,799.799 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-28 08:33:51,319.319 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:33:51,321.321 INFO    ] Checking for system updates...
[2026-10-28 08:33:51,360.360 INFO    ] 200
[2026-10-28 08:33:51,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:33:51,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:33:51,419.419 INFO    ] No update needed
[2026-10-28 08:33:51,422.422 INFO    ] Checking for camera pi updates...
[2026-10-28 08:33:51,456.456 INFO    ] 200
[2026-10-28 08:33:51,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:33:51,503.503 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:33:51,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:33:51,591.591 INFO    ] No camera update needed
[2026-10-28 08:33:51,594.594 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:33:51,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:33:51,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:33:51,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:33:53,648.648 INFO    ] ================================================
[2026-10-28 08:33:53,665.665 INFO    ] Launching Daemon at Wed Oct 28 08:33:53 IST 2026
[2026-10-28 08:33:53,675.675 INFO    ] ================================================
[2026-10-28 08:33:54,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:33:54
[2026-10-28 08:33:54,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:33:55,281.281 INFO    ] Initializing speech engine...
[2026-10-28 08:33:55,289.289 INFO    ] 2026-10-28 08:33:55
[2026-10-28 08:33:55,559.559 INFO    ] 2026-10-28 08:33:55
[2026-10-28 08:33:55,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:33:55,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:33:55,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:33:56,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:33:56,127.127 INFO    ] time= 28/10/2026 08:33:56
[2026-10-28 08:33:56,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:33:56,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:33:56,311.311 INFO    ] No existing commands found in stream
[2026-10-28 08:34:01,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:34:01,351.351 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 08:34:05,918.918 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:34:05,920.920 INFO    ] Checking for system updates...
[2026-10-28 08:34:05,957.957 INFO    ] 200
[2026-10-28 08:34:05,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:34:06,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:34:06,021.021 INFO    ] No update needed
[2026-10-28 08:34:06,024.024 INFO    ] Checking for camera pi updates...
[2026-10-28 08:34:06,058.058 INFO    ] 200
[2026-10-28 08:34:06,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:34:06,106.106 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:34:06,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:34:06,197.197 INFO    ] No camera update needed
[2026-10-28 08:34:06,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:34:06,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:34:06,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:34:06,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:34:08,252.252 INFO    ] ================================================
[2026-10-28 08:34:08,268.268 INFO    ] Launching Daemon at Wed Oct 28 08:34:08 IST 2026
[2026-10-28 08:34:08,278.278 INFO    ] ================================================
[2026-10-28 08:34:08,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:34:08
[2026-10-28 08:34:09,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:34:09,685.685 INFO    ] Initializing speech engine...
[2026-10-28 08:34:09,698.698 INFO    ] 2026-10-28 08:34:09
[2026-10-28 08:34:09,974.974 INFO    ] 2026-10-28 08:34:09
[2026-10-28 08:34:10,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:34:10,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:34:10,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:34:10,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:34:10,510.510 INFO    ] time= 28/10/2026 08:34:10
[2026-10-28 08:34:10,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:34:10,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:34:10,721.721 INFO    ] No existing commands found in stream
[2026-10-28 08:34:15,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:34:15,749.749 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-28 08:34:18,880.880 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:34:18,882.882 INFO    ] Checking for system updates...
[2026-10-28 08:34:18,925.925 INFO    ] 200
[2026-10-28 08:34:18,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:34:18,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:34:18,985.985 INFO    ] No update needed
[2026-10-28 08:34:18,988.988 INFO    ] Checking for camera pi updates...
[2026-10-28 08:34:19,023.023 INFO    ] 200
[2026-10-28 08:34:19,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:34:19,066.066 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:34:19,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:34:19,148.148 INFO    ] No camera update needed
[2026-10-28 08:34:19,150.150 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:34:19,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:34:19,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:34:19,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:34:21,203.203 INFO    ] ================================================
[2026-10-28 08:34:21,219.219 INFO    ] Launching Daemon at Wed Oct 28 08:34:21 IST 2026
[2026-10-28 08:34:21,230.230 INFO    ] ================================================
[2026-10-28 08:34:21,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:34:21
[2026-10-28 08:34:22,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:34:22,666.666 INFO    ] Initializing speech engine...
[2026-10-28 08:34:22,682.682 INFO    ] 2026-10-28 08:34:22
[2026-10-28 08:34:22,960.960 INFO    ] 2026-10-28 08:34:22
[2026-10-28 08:34:22,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:34:23,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:34:23,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:34:23,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:34:23,554.554 INFO    ] time= 28/10/2026 08:34:23
[2026-10-28 08:34:23,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:34:23,577.577 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:34:23,742.742 INFO    ] No existing commands found in stream
[2026-10-28 08:34:28,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:34:28,766.766 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-28 08:34:31,462.462 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:34:31,465.465 INFO    ] Checking for system updates...
[2026-10-28 08:34:31,506.506 INFO    ] 200
[2026-10-28 08:34:31,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:34:31,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:34:31,573.573 INFO    ] No update needed
[2026-10-28 08:34:31,576.576 INFO    ] Checking for camera pi updates...
[2026-10-28 08:34:31,612.612 INFO    ] 200
[2026-10-28 08:34:31,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:34:31,658.658 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:34:31,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:34:31,762.762 INFO    ] No camera update needed
[2026-10-28 08:34:31,765.765 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:34:31,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:34:31,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:34:31,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:34:33,821.821 INFO    ] ================================================
[2026-10-28 08:34:33,837.837 INFO    ] Launching Daemon at Wed Oct 28 08:34:33 IST 2026
[2026-10-28 08:34:33,850.850 INFO    ] ================================================
[2026-10-28 08:34:34,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:34:34
[2026-10-28 08:34:35,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:34:35,446.446 INFO    ] Initializing speech engine...
[2026-10-28 08:34:35,459.459 INFO    ] 2026-10-28 08:34:35
[2026-10-28 08:34:35,770.770 INFO    ] 2026-10-28 08:34:35
[2026-10-28 08:34:35,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:34:36,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:34:36,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:34:36,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:34:36,299.299 INFO    ] time= 28/10/2026 08:34:36
[2026-10-28 08:34:36,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:34:36,339.339 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:34:36,440.440 INFO    ] No existing commands found in stream
[2026-10-28 08:34:41,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:34:41,458.458 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-28 08:34:44,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:34:44,896.896 INFO    ] Checking for system updates...
[2026-10-28 08:34:44,936.936 INFO    ] 200
[2026-10-28 08:34:44,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:34:44,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:34:44,999.999 INFO    ] No update needed
[2026-10-28 08:34:45,002.002 INFO    ] Checking for camera pi updates...
[2026-10-28 08:34:45,038.038 INFO    ] 200
[2026-10-28 08:34:45,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:34:45,085.085 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:34:45,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:34:45,169.169 INFO    ] No camera update needed
[2026-10-28 08:34:45,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:34:45,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:34:45,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:34:45,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:34:47,223.223 INFO    ] ================================================
[2026-10-28 08:34:47,239.239 INFO    ] Launching Daemon at Wed Oct 28 08:34:47 IST 2026
[2026-10-28 08:34:47,250.250 INFO    ] ================================================
[2026-10-28 08:34:47,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:34:47
[2026-10-28 08:34:48,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:34:48,695.695 INFO    ] Initializing speech engine...
[2026-10-28 08:34:48,704.704 INFO    ] 2026-10-28 08:34:48
[2026-10-28 08:34:48,966.966 INFO    ] 2026-10-28 08:34:48
[2026-10-28 08:34:49,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:34:49,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:34:49,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:34:49,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:34:49,548.548 INFO    ] time= 28/10/2026 08:34:49
[2026-10-28 08:34:49,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:34:49,565.565 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:34:49,675.675 INFO    ] No existing commands found in stream
[2026-10-28 08:34:54,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:34:54,703.703 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 08:34:58,607.607 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:34:58,610.610 INFO    ] Checking for system updates...
[2026-10-28 08:34:58,646.646 INFO    ] 200
[2026-10-28 08:34:58,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:34:58,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:34:58,704.704 INFO    ] No update needed
[2026-10-28 08:34:58,706.706 INFO    ] Checking for camera pi updates...
[2026-10-28 08:34:58,742.742 INFO    ] 200
[2026-10-28 08:34:58,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:34:58,784.784 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:34:58,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:34:58,889.889 INFO    ] No camera update needed
[2026-10-28 08:34:58,891.891 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:34:58,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:34:58,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:34:58,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:35:00,944.944 INFO    ] ================================================
[2026-10-28 08:35:00,960.960 INFO    ] Launching Daemon at Wed Oct 28 08:35:00 IST 2026
[2026-10-28 08:35:00,971.971 INFO    ] ================================================
[2026-10-28 08:35:01,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:35:01
[2026-10-28 08:35:02,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:35:02,819.819 INFO    ] Initializing speech engine...
[2026-10-28 08:35:02,838.838 INFO    ] 2026-10-28 08:35:02
[2026-10-28 08:35:03,161.161 INFO    ] 2026-10-28 08:35:03
[2026-10-28 08:35:03,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:35:03,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:35:03,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:35:03,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:35:03,737.737 INFO    ] time= 28/10/2026 08:35:03
[2026-10-28 08:35:03,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:35:03,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:35:03,895.895 INFO    ] No existing commands found in stream
[2026-10-28 08:35:08,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:35:08,912.912 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 08:35:12,758.758 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:35:12,760.760 INFO    ] Checking for system updates...
[2026-10-28 08:35:12,796.796 INFO    ] 200
[2026-10-28 08:35:12,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:35:12,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:35:12,852.852 INFO    ] No update needed
[2026-10-28 08:35:12,855.855 INFO    ] Checking for camera pi updates...
[2026-10-28 08:35:12,890.890 INFO    ] 200
[2026-10-28 08:35:12,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:35:12,933.933 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:35:13,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:35:13,026.026 INFO    ] No camera update needed
[2026-10-28 08:35:13,028.028 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:35:13,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:35:13,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:35:13,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:35:15,084.084 INFO    ] ================================================
[2026-10-28 08:35:15,100.100 INFO    ] Launching Daemon at Wed Oct 28 08:35:15 IST 2026
[2026-10-28 08:35:15,111.111 INFO    ] ================================================
[2026-10-28 08:35:15,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:35:15
[2026-10-28 08:35:16,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:35:16,558.558 INFO    ] Initializing speech engine...
[2026-10-28 08:35:16,568.568 INFO    ] 2026-10-28 08:35:16
[2026-10-28 08:35:16,822.822 INFO    ] 2026-10-28 08:35:16
[2026-10-28 08:35:16,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:35:17,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:35:17,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:35:17,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:35:17,390.390 INFO    ] time= 28/10/2026 08:35:17
[2026-10-28 08:35:17,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:35:17,422.422 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:35:17,528.528 INFO    ] No existing commands found in stream
[2026-10-28 08:35:22,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:35:22,544.544 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 08:35:26,080.080 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:35:26,083.083 INFO    ] Checking for system updates...
[2026-10-28 08:35:26,122.122 INFO    ] 200
[2026-10-28 08:35:26,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:35:26,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:35:26,187.187 INFO    ] No update needed
[2026-10-28 08:35:26,190.190 INFO    ] Checking for camera pi updates...
[2026-10-28 08:35:26,227.227 INFO    ] 200
[2026-10-28 08:35:26,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:35:26,271.271 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:35:26,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:35:26,365.365 INFO    ] No camera update needed
[2026-10-28 08:35:26,368.368 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:35:26,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:35:26,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:35:26,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:35:28,424.424 INFO    ] ================================================
[2026-10-28 08:35:28,440.440 INFO    ] Launching Daemon at Wed Oct 28 08:35:28 IST 2026
[2026-10-28 08:35:28,451.451 INFO    ] ================================================
[2026-10-28 08:35:29,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:35:29
[2026-10-28 08:35:29,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:35:29,910.910 INFO    ] Initializing speech engine...
[2026-10-28 08:35:29,919.919 INFO    ] 2026-10-28 08:35:29
[2026-10-28 08:35:30,188.188 INFO    ] 2026-10-28 08:35:30
[2026-10-28 08:35:30,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:35:30,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:35:30,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:35:30,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:35:30,747.747 INFO    ] time= 28/10/2026 08:35:30
[2026-10-28 08:35:30,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:35:30,782.782 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:35:30,917.917 INFO    ] No existing commands found in stream
[2026-10-28 08:35:35,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:35:35,951.951 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 08:35:37,940.940 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:35:37,943.943 INFO    ] Checking for system updates...
[2026-10-28 08:35:37,979.979 INFO    ] 200
[2026-10-28 08:35:37,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:35:38,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:35:38,041.041 INFO    ] No update needed
[2026-10-28 08:35:38,044.044 INFO    ] Checking for camera pi updates...
[2026-10-28 08:35:38,079.079 INFO    ] 200
[2026-10-28 08:35:38,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:35:38,123.123 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:35:38,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:35:38,178.178 INFO    ] No camera update needed
[2026-10-28 08:35:38,181.181 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:35:38,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:35:38,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:35:38,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:35:40,236.236 INFO    ] ================================================
[2026-10-28 08:35:40,251.251 INFO    ] Launching Daemon at Wed Oct 28 08:35:40 IST 2026
[2026-10-28 08:35:40,261.261 INFO    ] ================================================
[2026-10-28 08:35:40,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:35:40
[2026-10-28 08:35:41,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:35:41,823.823 INFO    ] Initializing speech engine...
[2026-10-28 08:35:41,831.831 INFO    ] 2026-10-28 08:35:41
[2026-10-28 08:35:42,105.105 INFO    ] 2026-10-28 08:35:42
[2026-10-28 08:35:42,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:35:42,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:35:42,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:35:42,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:35:42,676.676 INFO    ] time= 28/10/2026 08:35:42
[2026-10-28 08:35:42,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:35:42,716.716 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:35:42,856.856 INFO    ] No existing commands found in stream
[2026-10-28 08:35:47,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:35:47,896.896 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-28 08:35:50,957.957 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:35:50,960.960 INFO    ] Checking for system updates...
[2026-10-28 08:35:50,996.996 INFO    ] 200
[2026-10-28 08:35:50,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:35:51,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:35:51,053.053 INFO    ] No update needed
[2026-10-28 08:35:51,055.055 INFO    ] Checking for camera pi updates...
[2026-10-28 08:35:51,088.088 INFO    ] 200
[2026-10-28 08:35:51,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:35:51,149.149 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:35:51,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:35:51,240.240 INFO    ] No camera update needed
[2026-10-28 08:35:51,242.242 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:35:51,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:35:51,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:35:51,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:35:53,294.294 INFO    ] ================================================
[2026-10-28 08:35:53,309.309 INFO    ] Launching Daemon at Wed Oct 28 08:35:53 IST 2026
[2026-10-28 08:35:53,320.320 INFO    ] ================================================
[2026-10-28 08:35:53,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:35:53
[2026-10-28 08:35:54,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:35:54,887.887 INFO    ] Initializing speech engine...
[2026-10-28 08:35:54,904.904 INFO    ] 2026-10-28 08:35:54
[2026-10-28 08:35:55,170.170 INFO    ] 2026-10-28 08:35:55
[2026-10-28 08:35:55,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:35:55,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:35:55,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:35:55,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:35:55,925.925 INFO    ] time= 28/10/2026 08:35:55
[2026-10-28 08:35:55,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:35:56,043.043 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:35:56,187.187 INFO    ] No existing commands found in stream
[2026-10-28 08:36:01,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:36:01,200.200 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-28 08:36:04,316.316 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:36:04,319.319 INFO    ] Checking for system updates...
[2026-10-28 08:36:04,357.357 INFO    ] 200
[2026-10-28 08:36:04,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:36:04,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:36:04,423.423 INFO    ] No update needed
[2026-10-28 08:36:04,426.426 INFO    ] Checking for camera pi updates...
[2026-10-28 08:36:04,461.461 INFO    ] 200
[2026-10-28 08:36:04,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:36:04,510.510 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:36:04,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:36:04,618.618 INFO    ] No camera update needed
[2026-10-28 08:36:04,620.620 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:36:04,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:36:04,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:36:04,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:36:06,672.672 INFO    ] ================================================
[2026-10-28 08:36:06,687.687 INFO    ] Launching Daemon at Wed Oct 28 08:36:06 IST 2026
[2026-10-28 08:36:06,698.698 INFO    ] ================================================
[2026-10-28 08:36:07,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:36:07
[2026-10-28 08:36:08,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:36:08,297.297 INFO    ] Initializing speech engine...
[2026-10-28 08:36:08,305.305 INFO    ] 2026-10-28 08:36:08
[2026-10-28 08:36:08,574.574 INFO    ] 2026-10-28 08:36:08
[2026-10-28 08:36:08,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:36:08,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:36:08,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:36:09,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:36:09,137.137 INFO    ] time= 28/10/2026 08:36:09
[2026-10-28 08:36:09,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:36:09,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:36:09,302.302 INFO    ] No existing commands found in stream
[2026-10-28 08:36:14,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:36:14,336.336 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-28 08:36:15,261.261 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:36:15,265.265 INFO    ] Checking for system updates...
[2026-10-28 08:36:15,300.300 INFO    ] 200
[2026-10-28 08:36:15,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:36:15,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:36:15,358.358 INFO    ] No update needed
[2026-10-28 08:36:15,361.361 INFO    ] Checking for camera pi updates...
[2026-10-28 08:36:15,394.394 INFO    ] 200
[2026-10-28 08:36:15,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:36:15,441.441 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:36:15,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:36:15,621.621 INFO    ] No camera update needed
[2026-10-28 08:36:15,624.624 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:36:15,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:36:15,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:36:15,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:36:17,675.675 INFO    ] ================================================
[2026-10-28 08:36:17,690.690 INFO    ] Launching Daemon at Wed Oct 28 08:36:17 IST 2026
[2026-10-28 08:36:17,700.700 INFO    ] ================================================
[2026-10-28 08:36:18,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:36:18
[2026-10-28 08:36:19,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:36:19,299.299 INFO    ] Initializing speech engine...
[2026-10-28 08:36:19,313.313 INFO    ] 2026-10-28 08:36:19
[2026-10-28 08:36:19,624.624 INFO    ] 2026-10-28 08:36:19
[2026-10-28 08:36:19,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:36:19,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:36:20,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:36:20,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:36:20,319.319 INFO    ] time= 28/10/2026 08:36:20
[2026-10-28 08:36:20,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:36:20,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:36:20,555.555 INFO    ] No existing commands found in stream
[2026-10-28 08:36:25,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:36:25,583.583 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-28 08:36:28,818.818 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:36:28,824.824 INFO    ] Checking for system updates...
[2026-10-28 08:36:28,859.859 INFO    ] 200
[2026-10-28 08:36:28,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:36:28,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:36:28,916.916 INFO    ] No update needed
[2026-10-28 08:36:28,918.918 INFO    ] Checking for camera pi updates...
[2026-10-28 08:36:28,955.955 INFO    ] 200
[2026-10-28 08:36:28,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:36:28,998.998 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:36:29,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:36:29,086.086 INFO    ] No camera update needed
[2026-10-28 08:36:29,089.089 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:36:29,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:36:29,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:36:29,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:36:31,144.144 INFO    ] ================================================
[2026-10-28 08:36:31,159.159 INFO    ] Launching Daemon at Wed Oct 28 08:36:31 IST 2026
[2026-10-28 08:36:31,170.170 INFO    ] ================================================
[2026-10-28 08:36:31,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:36:31
[2026-10-28 08:36:32,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:36:32,729.729 INFO    ] Initializing speech engine...
[2026-10-28 08:36:32,744.744 INFO    ] 2026-10-28 08:36:32
[2026-10-28 08:36:33,007.007 INFO    ] 2026-10-28 08:36:32
[2026-10-28 08:36:33,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:36:33,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:36:33,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:36:33,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:36:33,590.590 INFO    ] time= 28/10/2026 08:36:33
[2026-10-28 08:36:33,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:36:33,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:36:33,738.738 INFO    ] No existing commands found in stream
[2026-10-28 08:36:38,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:36:38,756.756 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-28 08:36:43,076.076 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:36:43,079.079 INFO    ] Checking for system updates...
[2026-10-28 08:36:43,115.115 INFO    ] 200
[2026-10-28 08:36:43,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:36:43,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:36:43,173.173 INFO    ] No update needed
[2026-10-28 08:36:43,176.176 INFO    ] Checking for camera pi updates...
[2026-10-28 08:36:43,210.210 INFO    ] 200
[2026-10-28 08:36:43,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:36:43,263.263 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:36:43,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:36:43,349.349 INFO    ] No camera update needed
[2026-10-28 08:36:43,352.352 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:36:43,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:36:43,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:36:43,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:36:45,407.407 INFO    ] ================================================
[2026-10-28 08:36:45,422.422 INFO    ] Launching Daemon at Wed Oct 28 08:36:45 IST 2026
[2026-10-28 08:36:45,433.433 INFO    ] ================================================
[2026-10-28 08:36:46,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:36:46
[2026-10-28 08:36:46,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:36:46,868.868 INFO    ] Initializing speech engine...
[2026-10-28 08:36:46,878.878 INFO    ] 2026-10-28 08:36:46
[2026-10-28 08:36:47,125.125 INFO    ] 2026-10-28 08:36:47
[2026-10-28 08:36:47,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:36:47,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:36:47,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:36:47,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:36:47,692.692 INFO    ] time= 28/10/2026 08:36:47
[2026-10-28 08:36:47,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:36:47,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:36:47,861.861 INFO    ] No existing commands found in stream
[2026-10-28 08:36:52,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:36:52,889.889 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-28 08:36:55,331.331 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:36:55,334.334 INFO    ] Checking for system updates...
[2026-10-28 08:36:55,369.369 INFO    ] 200
[2026-10-28 08:36:55,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:36:55,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:36:55,426.426 INFO    ] No update needed
[2026-10-28 08:36:55,429.429 INFO    ] Checking for camera pi updates...
[2026-10-28 08:36:55,467.467 INFO    ] 200
[2026-10-28 08:36:55,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:36:55,510.510 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:36:55,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:36:55,638.638 INFO    ] No camera update needed
[2026-10-28 08:36:55,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:36:55,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:36:55,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:36:55,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:36:57,699.699 INFO    ] ================================================
[2026-10-28 08:36:57,714.714 INFO    ] Launching Daemon at Wed Oct 28 08:36:57 IST 2026
[2026-10-28 08:36:57,725.725 INFO    ] ================================================
[2026-10-28 08:36:58,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:36:58
[2026-10-28 08:36:59,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:36:59,333.333 INFO    ] Initializing speech engine...
[2026-10-28 08:36:59,346.346 INFO    ] 2026-10-28 08:36:59
[2026-10-28 08:36:59,615.615 INFO    ] 2026-10-28 08:36:59
[2026-10-28 08:36:59,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:36:59,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:36:59,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:37:00,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:37:00,185.185 INFO    ] time= 28/10/2026 08:37:00
[2026-10-28 08:37:00,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:37:00,221.221 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:37:00,362.362 INFO    ] No existing commands found in stream
[2026-10-28 08:37:05,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:37:05,396.396 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-28 08:37:07,959.959 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:37:07,962.962 INFO    ] Checking for system updates...
[2026-10-28 08:37:07,999.999 INFO    ] 200
[2026-10-28 08:37:08,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:37:08,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:37:08,063.063 INFO    ] No update needed
[2026-10-28 08:37:08,066.066 INFO    ] Checking for camera pi updates...
[2026-10-28 08:37:08,100.100 INFO    ] 200
[2026-10-28 08:37:08,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:37:08,144.144 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:37:08,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:37:08,226.226 INFO    ] No camera update needed
[2026-10-28 08:37:08,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:37:08,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:37:08,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:37:08,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:37:10,280.280 INFO    ] ================================================
[2026-10-28 08:37:10,295.295 INFO    ] Launching Daemon at Wed Oct 28 08:37:10 IST 2026
[2026-10-28 08:37:10,306.306 INFO    ] ================================================
[2026-10-28 08:37:10,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:37:10
[2026-10-28 08:37:11,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:37:11,906.906 INFO    ] Initializing speech engine...
[2026-10-28 08:37:11,919.919 INFO    ] 2026-10-28 08:37:11
[2026-10-28 08:37:12,205.205 INFO    ] 2026-10-28 08:37:12
[2026-10-28 08:37:12,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:37:12,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:37:12,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:37:12,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:37:12,778.778 INFO    ] time= 28/10/2026 08:37:12
[2026-10-28 08:37:12,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:37:12,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:37:12,986.986 INFO    ] No existing commands found in stream
[2026-10-28 08:37:18,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:37:18,020.020 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 08:37:21,921.921 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:37:21,924.924 INFO    ] Checking for system updates...
[2026-10-28 08:37:21,960.960 INFO    ] 200
[2026-10-28 08:37:21,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:37:22,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:37:22,025.025 INFO    ] No update needed
[2026-10-28 08:37:22,027.027 INFO    ] Checking for camera pi updates...
[2026-10-28 08:37:22,060.060 INFO    ] 200
[2026-10-28 08:37:22,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:37:22,108.108 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:37:22,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:37:22,164.164 INFO    ] No camera update needed
[2026-10-28 08:37:22,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:37:22,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:37:22,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:37:22,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:37:24,218.218 INFO    ] ================================================
[2026-10-28 08:37:24,233.233 INFO    ] Launching Daemon at Wed Oct 28 08:37:24 IST 2026
[2026-10-28 08:37:24,244.244 INFO    ] ================================================
[2026-10-28 08:37:24,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:37:24
[2026-10-28 08:37:25,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:37:25,891.891 INFO    ] Initializing speech engine...
[2026-10-28 08:37:25,904.904 INFO    ] 2026-10-28 08:37:25
[2026-10-28 08:37:26,191.191 INFO    ] 2026-10-28 08:37:26
[2026-10-28 08:37:26,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:37:26,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:37:26,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:37:28,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:37:28,016.016 INFO    ] time= 28/10/2026 08:37:28
[2026-10-28 08:37:28,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:37:28,025.025 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:37:28,138.138 INFO    ] No existing commands found in stream
[2026-10-28 08:37:33,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:37:33,167.167 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-28 08:37:37,316.316 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:37:37,395.395 INFO    ] Checking for system updates...
[2026-10-28 08:37:37,432.432 INFO    ] 200
[2026-10-28 08:37:37,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:37:37,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:37:37,490.490 INFO    ] No update needed
[2026-10-28 08:37:37,492.492 INFO    ] Checking for camera pi updates...
[2026-10-28 08:37:37,560.560 INFO    ] 200
[2026-10-28 08:37:37,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:37:37,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:37:37,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:37:37,716.716 INFO    ] No camera update needed
[2026-10-28 08:37:37,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:37:37,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:37:37,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:37:37,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:37:39,770.770 INFO    ] ================================================
[2026-10-28 08:37:39,785.785 INFO    ] Launching Daemon at Wed Oct 28 08:37:39 IST 2026
[2026-10-28 08:37:39,798.798 INFO    ] ================================================
[2026-10-28 08:37:40,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:37:40
[2026-10-28 08:37:41,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:37:41,436.436 INFO    ] Initializing speech engine...
[2026-10-28 08:37:41,449.449 INFO    ] 2026-10-28 08:37:41
[2026-10-28 08:37:41,742.742 INFO    ] 2026-10-28 08:37:41
[2026-10-28 08:37:41,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:37:42,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:37:42,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:37:42,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:37:42,320.320 INFO    ] time= 28/10/2026 08:37:42
[2026-10-28 08:37:42,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:37:42,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:37:42,683.683 INFO    ] No existing commands found in stream
[2026-10-28 08:37:47,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:37:47,725.725 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-28 08:37:49,891.891 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:37:49,894.894 INFO    ] Checking for system updates...
[2026-10-28 08:37:49,931.931 INFO    ] 200
[2026-10-28 08:37:49,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:37:49,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:37:49,990.990 INFO    ] No update needed
[2026-10-28 08:37:49,993.993 INFO    ] Checking for camera pi updates...
[2026-10-28 08:37:50,030.030 INFO    ] 200
[2026-10-28 08:37:50,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:37:50,083.083 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:37:50,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:37:50,168.168 INFO    ] No camera update needed
[2026-10-28 08:37:50,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:37:50,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:37:50,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:37:50,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:37:52,226.226 INFO    ] ================================================
[2026-10-28 08:37:52,241.241 INFO    ] Launching Daemon at Wed Oct 28 08:37:52 IST 2026
[2026-10-28 08:37:52,252.252 INFO    ] ================================================
[2026-10-28 08:37:52,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:37:52
[2026-10-28 08:37:53,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:37:53,715.715 INFO    ] Initializing speech engine...
[2026-10-28 08:37:53,734.734 INFO    ] 2026-10-28 08:37:53
[2026-10-28 08:37:53,995.995 INFO    ] 2026-10-28 08:37:53
[2026-10-28 08:37:54,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:37:54,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:37:54,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:37:54,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:37:54,713.713 INFO    ] time= 28/10/2026 08:37:54
[2026-10-28 08:37:54,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:37:54,798.798 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:37:54,938.938 INFO    ] No existing commands found in stream
[2026-10-28 08:37:59,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:37:59,964.964 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-28 08:38:02,222.222 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:38:02,225.225 INFO    ] Checking for system updates...
[2026-10-28 08:38:02,300.300 INFO    ] 200
[2026-10-28 08:38:02,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:38:02,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:38:02,406.406 INFO    ] No update needed
[2026-10-28 08:38:02,409.409 INFO    ] Checking for camera pi updates...
[2026-10-28 08:38:02,447.447 INFO    ] 200
[2026-10-28 08:38:02,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:38:02,500.500 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:38:02,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:38:02,608.608 INFO    ] No camera update needed
[2026-10-28 08:38:02,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:38:02,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:38:02,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:38:02,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:38:04,674.674 INFO    ] ================================================
[2026-10-28 08:38:04,689.689 INFO    ] Launching Daemon at Wed Oct 28 08:38:04 IST 2026
[2026-10-28 08:38:04,701.701 INFO    ] ================================================
[2026-10-28 08:38:05,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:38:05
[2026-10-28 08:38:05,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:38:06,110.110 INFO    ] Initializing speech engine...
[2026-10-28 08:38:06,116.116 INFO    ] 2026-10-28 08:38:06
[2026-10-28 08:38:06,420.420 INFO    ] 2026-10-28 08:38:06
[2026-10-28 08:38:06,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:38:06,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:38:06,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:38:06,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:38:06,997.997 INFO    ] time= 28/10/2026 08:38:06
[2026-10-28 08:38:07,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:38:07,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:38:07,201.201 INFO    ] No existing commands found in stream
[2026-10-28 08:38:12,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:38:12,216.216 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-28 08:38:13,126.126 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:38:13,128.128 INFO    ] Checking for system updates...
[2026-10-28 08:38:13,189.189 INFO    ] 200
[2026-10-28 08:38:13,191.191 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 08:38:13,194.194 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-28 08:38:13,197.197 INFO    ] Checking for camera pi updates...
[2026-10-28 08:38:13,248.248 INFO    ] 200
[2026-10-28 08:38:13,263.263 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 08:38:13,266.266 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-28 08:38:13,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:38:13,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:38:13,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:38:13,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:38:15,325.325 INFO    ] ================================================
[2026-10-28 08:38:15,340.340 INFO    ] Launching Daemon at Wed Oct 28 08:38:15 IST 2026
[2026-10-28 08:38:15,352.352 INFO    ] ================================================
[2026-10-28 08:38:15,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:38:15
[2026-10-28 08:38:16,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:38:16,807.807 INFO    ] Initializing speech engine...
[2026-10-28 08:38:16,817.817 INFO    ] 2026-10-28 08:38:16
[2026-10-28 08:38:17,078.078 INFO    ] 2026-10-28 08:38:17
[2026-10-28 08:38:17,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:38:17,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:38:17,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:38:17,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:38:17,623.623 INFO    ] time= 28/10/2026 08:38:17
[2026-10-28 08:38:17,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:38:17,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:38:17,796.796 INFO    ] No existing commands found in stream
[2026-10-28 08:38:22,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:38:22,824.824 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-28 08:38:24,318.318 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:38:24,320.320 INFO    ] Checking for system updates...
[2026-10-28 08:38:24,356.356 INFO    ] 200
[2026-10-28 08:38:24,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:38:24,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:38:24,421.421 INFO    ] No update needed
[2026-10-28 08:38:24,423.423 INFO    ] Checking for camera pi updates...
[2026-10-28 08:38:24,457.457 INFO    ] 200
[2026-10-28 08:38:24,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:38:24,506.506 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:38:24,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:38:24,703.703 INFO    ] No camera update needed
[2026-10-28 08:38:24,706.706 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:38:24,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:38:24,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:38:24,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:38:26,764.764 INFO    ] ================================================
[2026-10-28 08:38:26,780.780 INFO    ] Launching Daemon at Wed Oct 28 08:38:26 IST 2026
[2026-10-28 08:38:26,791.791 INFO    ] ================================================
[2026-10-28 08:38:27,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:38:27
[2026-10-28 08:38:28,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:38:28,365.365 INFO    ] Initializing speech engine...
[2026-10-28 08:38:28,376.376 INFO    ] 2026-10-28 08:38:28
[2026-10-28 08:38:28,664.664 INFO    ] 2026-10-28 08:38:28
[2026-10-28 08:38:28,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:38:28,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:38:28,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:38:29,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:38:29,234.234 INFO    ] time= 28/10/2026 08:38:29
[2026-10-28 08:38:29,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:38:29,258.258 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:38:29,396.396 INFO    ] No existing commands found in stream
[2026-10-28 08:38:34,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:38:34,414.414 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 08:38:35,008.008 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:38:35,010.010 INFO    ] Checking for system updates...
[2026-10-28 08:38:35,050.050 INFO    ] 200
[2026-10-28 08:38:35,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:38:35,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:38:35,115.115 INFO    ] No update needed
[2026-10-28 08:38:35,117.117 INFO    ] Checking for camera pi updates...
[2026-10-28 08:38:35,155.155 INFO    ] 200
[2026-10-28 08:38:35,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:38:35,197.197 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:38:35,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:38:35,279.279 INFO    ] No camera update needed
[2026-10-28 08:38:35,281.281 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:38:35,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:38:35,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:38:35,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:38:37,333.333 INFO    ] ================================================
[2026-10-28 08:38:37,349.349 INFO    ] Launching Daemon at Wed Oct 28 08:38:37 IST 2026
[2026-10-28 08:38:37,361.361 INFO    ] ================================================
[2026-10-28 08:38:37,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:38:37
[2026-10-28 08:38:38,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:38:38,772.772 INFO    ] Initializing speech engine...
[2026-10-28 08:38:38,792.792 INFO    ] 2026-10-28 08:38:38
[2026-10-28 08:38:39,040.040 INFO    ] 2026-10-28 08:38:39
[2026-10-28 08:38:39,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:38:39,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:38:39,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:38:39,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:38:39,611.611 INFO    ] time= 28/10/2026 08:38:39
[2026-10-28 08:38:39,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:38:39,636.636 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:38:39,767.767 INFO    ] No existing commands found in stream
[2026-10-28 08:38:44,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:38:44,781.781 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-28 08:38:47,006.006 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:38:47,009.009 INFO    ] Checking for system updates...
[2026-10-28 08:38:47,045.045 INFO    ] 200
[2026-10-28 08:38:47,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:38:47,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:38:47,101.101 INFO    ] No update needed
[2026-10-28 08:38:47,104.104 INFO    ] Checking for camera pi updates...
[2026-10-28 08:38:47,137.137 INFO    ] 200
[2026-10-28 08:38:47,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:38:47,181.181 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:38:47,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:38:47,289.289 INFO    ] No camera update needed
[2026-10-28 08:38:47,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:38:47,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:38:47,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:38:47,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:38:49,345.345 INFO    ] ================================================
[2026-10-28 08:38:49,361.361 INFO    ] Launching Daemon at Wed Oct 28 08:38:49 IST 2026
[2026-10-28 08:38:49,372.372 INFO    ] ================================================
[2026-10-28 08:38:49,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:38:49
[2026-10-28 08:38:50,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:38:50,861.861 INFO    ] Initializing speech engine...
[2026-10-28 08:38:50,870.870 INFO    ] 2026-10-28 08:38:50
[2026-10-28 08:38:51,161.161 INFO    ] 2026-10-28 08:38:51
[2026-10-28 08:38:51,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:38:51,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:38:51,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:38:51,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:38:51,709.709 INFO    ] time= 28/10/2026 08:38:51
[2026-10-28 08:38:51,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:38:51,748.748 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:38:51,894.894 INFO    ] No existing commands found in stream
[2026-10-28 08:38:56,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:38:56,928.928 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 08:38:58,602.602 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:38:58,605.605 INFO    ] Checking for system updates...
[2026-10-28 08:38:58,640.640 INFO    ] 200
[2026-10-28 08:38:58,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:38:58,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:38:58,697.697 INFO    ] No update needed
[2026-10-28 08:38:58,699.699 INFO    ] Checking for camera pi updates...
[2026-10-28 08:38:58,736.736 INFO    ] 200
[2026-10-28 08:38:58,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:38:58,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:38:58,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:38:58,897.897 INFO    ] No camera update needed
[2026-10-28 08:38:58,899.899 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:38:58,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:38:58,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:38:58,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:39:00,951.951 INFO    ] ================================================
[2026-10-28 08:39:00,967.967 INFO    ] Launching Daemon at Wed Oct 28 08:39:00 IST 2026
[2026-10-28 08:39:00,978.978 INFO    ] ================================================
[2026-10-28 08:39:01,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:39:01
[2026-10-28 08:39:02,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:39:02,751.751 INFO    ] Initializing speech engine...
[2026-10-28 08:39:02,756.756 INFO    ] 2026-10-28 08:39:02
[2026-10-28 08:39:03,030.030 INFO    ] 2026-10-28 08:39:03
[2026-10-28 08:39:03,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:39:03,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:39:03,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:39:03,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:39:03,485.485 INFO    ] time= 28/10/2026 08:39:03
[2026-10-28 08:39:03,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:39:03,552.552 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:39:03,653.653 INFO    ] No existing commands found in stream
[2026-10-28 08:39:08,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:39:08,686.686 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-28 08:39:09,685.685 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:39:09,688.688 INFO    ] Checking for system updates...
[2026-10-28 08:39:09,728.728 INFO    ] 200
[2026-10-28 08:39:09,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:39:09,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:39:09,792.792 INFO    ] No update needed
[2026-10-28 08:39:09,795.795 INFO    ] Checking for camera pi updates...
[2026-10-28 08:39:09,835.835 INFO    ] 200
[2026-10-28 08:39:09,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:39:09,883.883 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:39:09,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:39:09,965.965 INFO    ] No camera update needed
[2026-10-28 08:39:09,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:39:09,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:39:09,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:39:09,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:39:12,021.021 INFO    ] ================================================
[2026-10-28 08:39:12,036.036 INFO    ] Launching Daemon at Wed Oct 28 08:39:12 IST 2026
[2026-10-28 08:39:12,047.047 INFO    ] ================================================
[2026-10-28 08:39:12,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:39:12
[2026-10-28 08:39:13,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:39:13,543.543 INFO    ] Initializing speech engine...
[2026-10-28 08:39:13,553.553 INFO    ] 2026-10-28 08:39:13
[2026-10-28 08:39:13,867.867 INFO    ] 2026-10-28 08:39:13
[2026-10-28 08:39:13,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:39:14,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:39:14,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:39:14,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:39:14,522.522 INFO    ] time= 28/10/2026 08:39:14
[2026-10-28 08:39:14,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:39:14,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:39:14,791.791 INFO    ] No existing commands found in stream
[2026-10-28 08:39:19,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:39:19,816.816 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-28 08:39:20,764.764 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:39:20,768.768 INFO    ] Checking for system updates...
[2026-10-28 08:39:20,809.809 INFO    ] 200
[2026-10-28 08:39:20,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:39:20,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:39:20,874.874 INFO    ] No update needed
[2026-10-28 08:39:20,877.877 INFO    ] Checking for camera pi updates...
[2026-10-28 08:39:20,912.912 INFO    ] 200
[2026-10-28 08:39:20,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:39:20,956.956 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:39:21,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:39:21,058.058 INFO    ] No camera update needed
[2026-10-28 08:39:21,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:39:21,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:39:21,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:39:21,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:39:23,112.112 INFO    ] ================================================
[2026-10-28 08:39:23,127.127 INFO    ] Launching Daemon at Wed Oct 28 08:39:23 IST 2026
[2026-10-28 08:39:23,138.138 INFO    ] ================================================
[2026-10-28 08:39:23,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:39:23
[2026-10-28 08:39:24,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:39:24,665.665 INFO    ] Initializing speech engine...
[2026-10-28 08:39:24,670.670 INFO    ] 2026-10-28 08:39:24
[2026-10-28 08:39:24,970.970 INFO    ] 2026-10-28 08:39:24
[2026-10-28 08:39:25,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:39:25,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:39:25,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:39:25,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:39:25,481.481 INFO    ] time= 28/10/2026 08:39:25
[2026-10-28 08:39:25,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:39:25,590.590 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:39:25,679.679 INFO    ] No existing commands found in stream
[2026-10-28 08:39:30,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:39:30,694.694 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-28 08:39:34,642.642 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:39:34,645.645 INFO    ] Checking for system updates...
[2026-10-28 08:39:34,684.684 INFO    ] 200
[2026-10-28 08:39:34,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:39:34,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:39:34,749.749 INFO    ] No update needed
[2026-10-28 08:39:34,751.751 INFO    ] Checking for camera pi updates...
[2026-10-28 08:39:34,788.788 INFO    ] 200
[2026-10-28 08:39:34,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:39:34,836.836 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:39:34,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:39:34,941.941 INFO    ] No camera update needed
[2026-10-28 08:39:34,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:39:34,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:39:34,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:39:34,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:39:37,996.996 INFO    ] ================================================
[2026-10-28 08:39:37,011.011 INFO    ] Launching Daemon at Wed Oct 28 08:39:37 IST 2026
[2026-10-28 08:39:37,022.022 INFO    ] ================================================
[2026-10-28 08:39:37,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:39:37
[2026-10-28 08:39:38,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:39:38,489.489 INFO    ] Initializing speech engine...
[2026-10-28 08:39:38,498.498 INFO    ] 2026-10-28 08:39:38
[2026-10-28 08:39:38,756.756 INFO    ] 2026-10-28 08:39:38
[2026-10-28 08:39:38,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:39:39,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:39:39,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:39:39,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:39:39,312.312 INFO    ] time= 28/10/2026 08:39:39
[2026-10-28 08:39:39,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:39:39,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:39:39,464.464 INFO    ] No existing commands found in stream
[2026-10-28 08:39:44,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:39:44,496.496 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-28 08:39:47,179.179 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:39:47,181.181 INFO    ] Checking for system updates...
[2026-10-28 08:39:47,222.222 INFO    ] 200
[2026-10-28 08:39:47,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:39:47,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:39:47,287.287 INFO    ] No update needed
[2026-10-28 08:39:47,289.289 INFO    ] Checking for camera pi updates...
[2026-10-28 08:39:47,328.328 INFO    ] 200
[2026-10-28 08:39:47,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:39:47,370.370 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:39:47,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:39:47,455.455 INFO    ] No camera update needed
[2026-10-28 08:39:47,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:39:47,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:39:47,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:39:47,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:39:49,514.514 INFO    ] ================================================
[2026-10-28 08:39:49,529.529 INFO    ] Launching Daemon at Wed Oct 28 08:39:49 IST 2026
[2026-10-28 08:39:49,540.540 INFO    ] ================================================
[2026-10-28 08:39:50,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:39:50
[2026-10-28 08:39:50,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:39:51,044.044 INFO    ] Initializing speech engine...
[2026-10-28 08:39:51,050.050 INFO    ] 2026-10-28 08:39:51
[2026-10-28 08:39:51,347.347 INFO    ] 2026-10-28 08:39:51
[2026-10-28 08:39:51,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:39:51,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:39:51,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:39:51,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:39:51,885.885 INFO    ] time= 28/10/2026 08:39:51
[2026-10-28 08:39:51,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:39:51,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:39:52,168.168 INFO    ] No existing commands found in stream
[2026-10-28 08:39:57,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:39:57,187.187 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-28 08:40:00,939.939 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:40:00,942.942 INFO    ] Checking for system updates...
[2026-10-28 08:40:00,982.982 INFO    ] 200
[2026-10-28 08:40:00,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:40:01,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:40:01,040.040 INFO    ] No update needed
[2026-10-28 08:40:01,042.042 INFO    ] Checking for camera pi updates...
[2026-10-28 08:40:01,076.076 INFO    ] 200
[2026-10-28 08:40:01,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:40:01,124.124 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:40:01,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:40:01,207.207 INFO    ] No camera update needed
[2026-10-28 08:40:01,209.209 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:40:01,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:40:01,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:40:01,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:40:03,267.267 INFO    ] ================================================
[2026-10-28 08:40:03,283.283 INFO    ] Launching Daemon at Wed Oct 28 08:40:03 IST 2026
[2026-10-28 08:40:03,294.294 INFO    ] ================================================
[2026-10-28 08:40:03,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:40:03
[2026-10-28 08:40:04,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:40:04,759.759 INFO    ] Initializing speech engine...
[2026-10-28 08:40:04,775.775 INFO    ] 2026-10-28 08:40:04
[2026-10-28 08:40:05,032.032 INFO    ] 2026-10-28 08:40:05
[2026-10-28 08:40:05,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:40:05,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:40:05,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:40:05,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:40:05,604.604 INFO    ] time= 28/10/2026 08:40:05
[2026-10-28 08:40:05,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:40:05,631.631 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:40:05,762.762 INFO    ] No existing commands found in stream
[2026-10-28 08:40:10,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:40:10,778.778 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-28 08:40:11,812.812 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:40:11,815.815 INFO    ] Checking for system updates...
[2026-10-28 08:40:11,854.854 INFO    ] 200
[2026-10-28 08:40:11,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:40:11,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:40:11,919.919 INFO    ] No update needed
[2026-10-28 08:40:11,921.921 INFO    ] Checking for camera pi updates...
[2026-10-28 08:40:11,959.959 INFO    ] 200
[2026-10-28 08:40:11,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:40:12,006.006 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:40:12,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:40:12,094.094 INFO    ] No camera update needed
[2026-10-28 08:40:12,096.096 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:40:12,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:40:12,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:40:12,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:40:14,148.148 INFO    ] ================================================
[2026-10-28 08:40:14,164.164 INFO    ] Launching Daemon at Wed Oct 28 08:40:14 IST 2026
[2026-10-28 08:40:14,175.175 INFO    ] ================================================
[2026-10-28 08:40:14,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:40:14
[2026-10-28 08:40:15,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:40:15,572.572 INFO    ] Initializing speech engine...
[2026-10-28 08:40:15,587.587 INFO    ] 2026-10-28 08:40:15
[2026-10-28 08:40:15,854.854 INFO    ] 2026-10-28 08:40:15
[2026-10-28 08:40:15,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:40:16,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:40:16,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:40:16,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:40:16,419.419 INFO    ] time= 28/10/2026 08:40:16
[2026-10-28 08:40:16,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:40:16,443.443 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:40:16,580.580 INFO    ] No existing commands found in stream
[2026-10-28 08:40:21,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:40:21,605.605 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-28 08:40:23,016.016 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:40:23,019.019 INFO    ] Checking for system updates...
[2026-10-28 08:40:23,056.056 INFO    ] 200
[2026-10-28 08:40:23,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:40:23,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:40:23,123.123 INFO    ] No update needed
[2026-10-28 08:40:23,126.126 INFO    ] Checking for camera pi updates...
[2026-10-28 08:40:23,163.163 INFO    ] 200
[2026-10-28 08:40:23,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:40:23,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:40:23,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:40:23,293.293 INFO    ] No camera update needed
[2026-10-28 08:40:23,295.295 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:40:23,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:40:23,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:40:23,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:40:25,350.350 INFO    ] ================================================
[2026-10-28 08:40:25,366.366 INFO    ] Launching Daemon at Wed Oct 28 08:40:25 IST 2026
[2026-10-28 08:40:25,377.377 INFO    ] ================================================
[2026-10-28 08:40:25,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:40:25
[2026-10-28 08:40:26,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:40:26,810.810 INFO    ] Initializing speech engine...
[2026-10-28 08:40:26,820.820 INFO    ] 2026-10-28 08:40:26
[2026-10-28 08:40:27,080.080 INFO    ] 2026-10-28 08:40:27
[2026-10-28 08:40:27,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:40:27,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:40:27,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:40:27,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:40:27,619.619 INFO    ] time= 28/10/2026 08:40:27
[2026-10-28 08:40:27,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:40:27,648.648 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:40:27,776.776 INFO    ] No existing commands found in stream
[2026-10-28 08:40:32,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:40:32,798.798 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-28 08:40:33,510.510 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:40:33,513.513 INFO    ] Checking for system updates...
[2026-10-28 08:40:33,552.552 INFO    ] 200
[2026-10-28 08:40:33,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:40:33,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:40:33,617.617 INFO    ] No update needed
[2026-10-28 08:40:33,620.620 INFO    ] Checking for camera pi updates...
[2026-10-28 08:40:33,657.657 INFO    ] 200
[2026-10-28 08:40:33,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:40:33,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:40:33,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:40:33,783.783 INFO    ] No camera update needed
[2026-10-28 08:40:33,786.786 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:40:33,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:40:33,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:40:33,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:40:35,840.840 INFO    ] ================================================
[2026-10-28 08:40:35,855.855 INFO    ] Launching Daemon at Wed Oct 28 08:40:35 IST 2026
[2026-10-28 08:40:35,866.866 INFO    ] ================================================
[2026-10-28 08:40:36,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:40:36
[2026-10-28 08:40:37,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:40:37,281.281 INFO    ] Initializing speech engine...
[2026-10-28 08:40:37,306.306 INFO    ] 2026-10-28 08:40:37
[2026-10-28 08:40:37,580.580 INFO    ] 2026-10-28 08:40:37
[2026-10-28 08:40:37,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:40:37,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:40:37,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:40:38,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:40:38,208.208 INFO    ] time= 28/10/2026 08:40:38
[2026-10-28 08:40:38,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:40:38,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:40:38,359.359 INFO    ] No existing commands found in stream
[2026-10-28 08:40:43,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:40:43,374.374 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-28 08:40:46,112.112 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:40:46,116.116 INFO    ] Checking for system updates...
[2026-10-28 08:40:46,157.157 INFO    ] 200
[2026-10-28 08:40:46,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:40:46,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:40:46,224.224 INFO    ] No update needed
[2026-10-28 08:40:46,228.228 INFO    ] Checking for camera pi updates...
[2026-10-28 08:40:46,267.267 INFO    ] 200
[2026-10-28 08:40:46,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:40:46,320.320 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:40:46,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:40:46,429.429 INFO    ] No camera update needed
[2026-10-28 08:40:46,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:40:46,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:40:46,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:40:46,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:40:48,488.488 INFO    ] ================================================
[2026-10-28 08:40:48,504.504 INFO    ] Launching Daemon at Wed Oct 28 08:40:48 IST 2026
[2026-10-28 08:40:48,515.515 INFO    ] ================================================
[2026-10-28 08:40:49,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:40:49
[2026-10-28 08:40:49,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:40:50,173.173 INFO    ] Initializing speech engine...
[2026-10-28 08:40:50,184.184 INFO    ] 2026-10-28 08:40:50
[2026-10-28 08:40:50,470.470 INFO    ] 2026-10-28 08:40:50
[2026-10-28 08:40:50,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:40:50,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:40:50,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:40:51,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:40:51,207.207 INFO    ] time= 28/10/2026 08:40:51
[2026-10-28 08:40:51,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:40:51,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:40:51,441.441 INFO    ] No existing commands found in stream
[2026-10-28 08:40:56,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:40:56,464.464 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 08:40:57,277.277 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:40:57,280.280 INFO    ] Checking for system updates...
[2026-10-28 08:40:57,323.323 INFO    ] 200
[2026-10-28 08:40:57,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:40:57,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:40:57,382.382 INFO    ] No update needed
[2026-10-28 08:40:57,385.385 INFO    ] Checking for camera pi updates...
[2026-10-28 08:40:57,425.425 INFO    ] 200
[2026-10-28 08:40:57,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:40:57,481.481 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:40:57,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:40:57,576.576 INFO    ] No camera update needed
[2026-10-28 08:40:57,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:40:57,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:40:57,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:40:57,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:40:59,635.635 INFO    ] ================================================
[2026-10-28 08:40:59,650.650 INFO    ] Launching Daemon at Wed Oct 28 08:40:59 IST 2026
[2026-10-28 08:40:59,661.661 INFO    ] ================================================
[2026-10-28 08:41:00,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:41:00
[2026-10-28 08:41:00,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:41:01,118.118 INFO    ] Initializing speech engine...
[2026-10-28 08:41:01,128.128 INFO    ] 2026-10-28 08:41:01
[2026-10-28 08:41:01,397.397 INFO    ] 2026-10-28 08:41:01
[2026-10-28 08:41:01,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:41:01,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:41:01,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:41:01,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:41:01,955.955 INFO    ] time= 28/10/2026 08:41:01
[2026-10-28 08:41:01,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:41:01,993.993 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:41:02,079.079 INFO    ] No existing commands found in stream
[2026-10-28 08:41:07,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:41:07,092.092 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-28 08:41:09,790.790 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:41:09,792.792 INFO    ] Checking for system updates...
[2026-10-28 08:41:09,832.832 INFO    ] 200
[2026-10-28 08:41:09,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:41:09,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:41:09,897.897 INFO    ] No update needed
[2026-10-28 08:41:09,900.900 INFO    ] Checking for camera pi updates...
[2026-10-28 08:41:09,934.934 INFO    ] 200
[2026-10-28 08:41:09,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:41:09,977.977 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:41:10,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:41:10,081.081 INFO    ] No camera update needed
[2026-10-28 08:41:10,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:41:10,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:41:10,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:41:10,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:41:12,139.139 INFO    ] ================================================
[2026-10-28 08:41:12,155.155 INFO    ] Launching Daemon at Wed Oct 28 08:41:12 IST 2026
[2026-10-28 08:41:12,166.166 INFO    ] ================================================
[2026-10-28 08:41:12,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:41:12
[2026-10-28 08:41:13,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:41:13,822.822 INFO    ] Initializing speech engine...
[2026-10-28 08:41:13,834.834 INFO    ] 2026-10-28 08:41:13
[2026-10-28 08:41:14,120.120 INFO    ] 2026-10-28 08:41:14
[2026-10-28 08:41:14,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:41:14,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:41:14,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:41:14,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:41:14,703.703 INFO    ] time= 28/10/2026 08:41:14
[2026-10-28 08:41:14,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:41:14,815.815 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:41:14,973.973 INFO    ] No existing commands found in stream
[2026-10-28 08:41:19,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:41:20,002.002 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-28 08:41:21,650.650 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:41:21,653.653 INFO    ] Checking for system updates...
[2026-10-28 08:41:21,691.691 INFO    ] 200
[2026-10-28 08:41:21,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:41:21,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:41:21,758.758 INFO    ] No update needed
[2026-10-28 08:41:21,760.760 INFO    ] Checking for camera pi updates...
[2026-10-28 08:41:21,796.796 INFO    ] 200
[2026-10-28 08:41:21,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:41:21,840.840 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:41:21,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:41:21,947.947 INFO    ] No camera update needed
[2026-10-28 08:41:21,950.950 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:41:21,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:41:21,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:41:21,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:41:24,005.005 INFO    ] ================================================
[2026-10-28 08:41:24,021.021 INFO    ] Launching Daemon at Wed Oct 28 08:41:24 IST 2026
[2026-10-28 08:41:24,032.032 INFO    ] ================================================
[2026-10-28 08:41:24,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:41:24
[2026-10-28 08:41:25,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:41:25,520.520 INFO    ] Initializing speech engine...
[2026-10-28 08:41:25,534.534 INFO    ] 2026-10-28 08:41:25
[2026-10-28 08:41:25,849.849 INFO    ] 2026-10-28 08:41:25
[2026-10-28 08:41:25,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:41:26,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:41:26,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:41:26,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:41:26,504.504 INFO    ] time= 28/10/2026 08:41:26
[2026-10-28 08:41:26,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:41:26,610.610 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:41:26,763.763 INFO    ] No existing commands found in stream
[2026-10-28 08:41:31,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:41:31,790.790 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-28 08:41:33,490.490 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:41:33,493.493 INFO    ] Checking for system updates...
[2026-10-28 08:41:33,531.531 INFO    ] 200
[2026-10-28 08:41:33,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:41:33,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:41:33,591.591 INFO    ] No update needed
[2026-10-28 08:41:33,593.593 INFO    ] Checking for camera pi updates...
[2026-10-28 08:41:33,628.628 INFO    ] 200
[2026-10-28 08:41:33,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:41:33,676.676 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:41:33,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:41:33,779.779 INFO    ] No camera update needed
[2026-10-28 08:41:33,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:41:33,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:41:33,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:41:33,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:41:35,834.834 INFO    ] ================================================
[2026-10-28 08:41:35,850.850 INFO    ] Launching Daemon at Wed Oct 28 08:41:35 IST 2026
[2026-10-28 08:41:35,861.861 INFO    ] ================================================
[2026-10-28 08:41:36,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:41:36
[2026-10-28 08:41:37,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:41:37,302.302 INFO    ] Initializing speech engine...
[2026-10-28 08:41:37,308.308 INFO    ] 2026-10-28 08:41:37
[2026-10-28 08:41:37,612.612 INFO    ] 2026-10-28 08:41:37
[2026-10-28 08:41:37,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:41:37,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:41:37,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:41:38,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:41:38,155.155 INFO    ] time= 28/10/2026 08:41:38
[2026-10-28 08:41:38,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:41:38,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:41:38,403.403 INFO    ] No existing commands found in stream
[2026-10-28 08:41:43,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:41:43,424.424 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 08:41:44,854.854 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:41:44,856.856 INFO    ] Checking for system updates...
[2026-10-28 08:41:44,897.897 INFO    ] 200
[2026-10-28 08:41:44,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:41:44,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:41:44,964.964 INFO    ] No update needed
[2026-10-28 08:41:44,966.966 INFO    ] Checking for camera pi updates...
[2026-10-28 08:41:45,005.005 INFO    ] 200
[2026-10-28 08:41:45,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:41:45,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:41:45,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:41:45,139.139 INFO    ] No camera update needed
[2026-10-28 08:41:45,141.141 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:41:45,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:41:45,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:41:45,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:41:47,197.197 INFO    ] ================================================
[2026-10-28 08:41:47,212.212 INFO    ] Launching Daemon at Wed Oct 28 08:41:47 IST 2026
[2026-10-28 08:41:47,222.222 INFO    ] ================================================
[2026-10-28 08:41:47,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:41:47
[2026-10-28 08:41:48,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:41:48,908.908 INFO    ] Initializing speech engine...
[2026-10-28 08:41:48,919.919 INFO    ] 2026-10-28 08:41:48
[2026-10-28 08:41:49,237.237 INFO    ] 2026-10-28 08:41:49
[2026-10-28 08:41:49,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:41:49,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:41:49,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:41:49,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:41:49,792.792 INFO    ] time= 28/10/2026 08:41:49
[2026-10-28 08:41:49,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:41:49,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:41:49,998.998 INFO    ] No existing commands found in stream
[2026-10-28 08:41:55,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:41:55,020.020 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-28 08:41:57,651.651 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:41:57,654.654 INFO    ] Checking for system updates...
[2026-10-28 08:41:57,692.692 INFO    ] 200
[2026-10-28 08:41:57,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:41:57,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:41:57,751.751 INFO    ] No update needed
[2026-10-28 08:41:57,754.754 INFO    ] Checking for camera pi updates...
[2026-10-28 08:41:57,788.788 INFO    ] 200
[2026-10-28 08:41:57,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:41:57,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:41:57,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:41:57,917.917 INFO    ] No camera update needed
[2026-10-28 08:41:57,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:41:57,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:41:57,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:41:57,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:41:59,974.974 INFO    ] ================================================
[2026-10-28 08:41:59,989.989 INFO    ] Launching Daemon at Wed Oct 28 08:41:59 IST 2026
[2026-10-28 08:42:00,999.999 INFO    ] ================================================
[2026-10-28 08:42:00,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:42:00
[2026-10-28 08:42:01,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:42:01,452.452 INFO    ] Initializing speech engine...
[2026-10-28 08:42:01,460.460 INFO    ] 2026-10-28 08:42:01
[2026-10-28 08:42:01,720.720 INFO    ] 2026-10-28 08:42:01
[2026-10-28 08:42:01,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:42:02,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:42:02,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:42:02,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:42:02,259.259 INFO    ] time= 28/10/2026 08:42:02
[2026-10-28 08:42:02,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:42:02,278.278 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:42:02,401.401 INFO    ] No existing commands found in stream
[2026-10-28 08:42:07,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:42:07,414.414 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 08:42:09,797.797 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:42:09,800.800 INFO    ] Checking for system updates...
[2026-10-28 08:42:09,835.835 INFO    ] 200
[2026-10-28 08:42:09,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:42:09,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:42:09,891.891 INFO    ] No update needed
[2026-10-28 08:42:09,894.894 INFO    ] Checking for camera pi updates...
[2026-10-28 08:42:09,930.930 INFO    ] 200
[2026-10-28 08:42:09,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:42:09,974.974 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:42:10,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:42:10,058.058 INFO    ] No camera update needed
[2026-10-28 08:42:10,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:42:10,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:42:10,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:42:10,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:42:12,116.116 INFO    ] ================================================
[2026-10-28 08:42:12,131.131 INFO    ] Launching Daemon at Wed Oct 28 08:42:12 IST 2026
[2026-10-28 08:42:12,142.142 INFO    ] ================================================
[2026-10-28 08:42:12,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:42:12
[2026-10-28 08:42:13,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:42:13,549.549 INFO    ] Initializing speech engine...
[2026-10-28 08:42:13,567.567 INFO    ] 2026-10-28 08:42:13
[2026-10-28 08:42:13,818.818 INFO    ] 2026-10-28 08:42:13
[2026-10-28 08:42:13,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:42:14,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:42:14,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:42:14,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:42:14,388.388 INFO    ] time= 28/10/2026 08:42:14
[2026-10-28 08:42:14,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:42:14,437.437 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:42:14,583.583 INFO    ] No existing commands found in stream
[2026-10-28 08:42:19,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:42:19,617.617 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 08:42:23,295.295 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:42:23,298.298 INFO    ] Checking for system updates...
[2026-10-28 08:42:23,340.340 INFO    ] 200
[2026-10-28 08:42:23,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:42:23,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:42:23,411.411 INFO    ] No update needed
[2026-10-28 08:42:23,414.414 INFO    ] Checking for camera pi updates...
[2026-10-28 08:42:23,448.448 INFO    ] 200
[2026-10-28 08:42:23,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:42:23,492.492 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:42:23,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:42:23,579.579 INFO    ] No camera update needed
[2026-10-28 08:42:23,581.581 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:42:23,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:42:23,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:42:23,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:42:25,633.633 INFO    ] ================================================
[2026-10-28 08:42:25,648.648 INFO    ] Launching Daemon at Wed Oct 28 08:42:25 IST 2026
[2026-10-28 08:42:25,659.659 INFO    ] ================================================
[2026-10-28 08:42:26,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:42:26
[2026-10-28 08:42:26,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:42:27,117.117 INFO    ] Initializing speech engine...
[2026-10-28 08:42:27,122.122 INFO    ] 2026-10-28 08:42:27
[2026-10-28 08:42:27,371.371 INFO    ] 2026-10-28 08:42:27
[2026-10-28 08:42:27,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:42:27,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:42:27,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:42:27,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:42:27,940.940 INFO    ] time= 28/10/2026 08:42:27
[2026-10-28 08:42:27,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:42:27,976.976 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:42:28,133.133 INFO    ] No existing commands found in stream
[2026-10-28 08:42:33,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:42:33,167.167 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-28 08:42:36,469.469 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:42:36,471.471 INFO    ] Checking for system updates...
[2026-10-28 08:42:36,508.508 INFO    ] 200
[2026-10-28 08:42:36,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:42:36,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:42:36,567.567 INFO    ] No update needed
[2026-10-28 08:42:36,569.569 INFO    ] Checking for camera pi updates...
[2026-10-28 08:42:36,604.604 INFO    ] 200
[2026-10-28 08:42:36,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:42:36,646.646 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:42:36,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:42:36,830.830 INFO    ] No camera update needed
[2026-10-28 08:42:36,832.832 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:42:36,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:42:36,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:42:36,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:42:38,885.885 INFO    ] ================================================
[2026-10-28 08:42:38,900.900 INFO    ] Launching Daemon at Wed Oct 28 08:42:38 IST 2026
[2026-10-28 08:42:38,911.911 INFO    ] ================================================
[2026-10-28 08:42:39,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:42:39
[2026-10-28 08:42:40,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:42:40,343.343 INFO    ] Initializing speech engine...
[2026-10-28 08:42:40,358.358 INFO    ] 2026-10-28 08:42:40
[2026-10-28 08:42:40,637.637 INFO    ] 2026-10-28 08:42:40
[2026-10-28 08:42:40,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:42:40,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:42:40,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:42:41,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:42:41,268.268 INFO    ] time= 28/10/2026 08:42:41
[2026-10-28 08:42:41,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:42:41,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:42:41,428.428 INFO    ] No existing commands found in stream
[2026-10-28 08:42:46,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:42:46,450.450 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-28 08:42:49,654.654 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:42:49,656.656 INFO    ] Checking for system updates...
[2026-10-28 08:42:49,692.692 INFO    ] 200
[2026-10-28 08:42:49,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:42:49,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:42:49,754.754 INFO    ] No update needed
[2026-10-28 08:42:49,756.756 INFO    ] Checking for camera pi updates...
[2026-10-28 08:42:49,794.794 INFO    ] 200
[2026-10-28 08:42:49,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:42:49,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:42:49,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:42:49,909.909 INFO    ] No camera update needed
[2026-10-28 08:42:49,911.911 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:42:49,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:42:49,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:42:49,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:42:51,966.966 INFO    ] ================================================
[2026-10-28 08:42:51,981.981 INFO    ] Launching Daemon at Wed Oct 28 08:42:51 IST 2026
[2026-10-28 08:42:51,992.992 INFO    ] ================================================
[2026-10-28 08:42:52,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:42:52
[2026-10-28 08:42:53,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:42:53,402.402 INFO    ] Initializing speech engine...
[2026-10-28 08:42:53,415.415 INFO    ] 2026-10-28 08:42:53
[2026-10-28 08:42:53,661.661 INFO    ] 2026-10-28 08:42:53
[2026-10-28 08:42:53,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:42:53,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:42:53,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:42:54,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:42:54,222.222 INFO    ] time= 28/10/2026 08:42:54
[2026-10-28 08:42:54,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:42:54,250.250 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:42:54,407.407 INFO    ] No existing commands found in stream
[2026-10-28 08:42:59,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:42:59,447.447 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-28 08:43:00,640.640 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:43:00,643.643 INFO    ] Checking for system updates...
[2026-10-28 08:43:00,684.684 INFO    ] 200
[2026-10-28 08:43:00,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:43:00,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:43:00,744.744 INFO    ] No update needed
[2026-10-28 08:43:00,747.747 INFO    ] Checking for camera pi updates...
[2026-10-28 08:43:00,781.781 INFO    ] 200
[2026-10-28 08:43:00,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:43:00,825.825 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:43:00,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:43:00,897.897 INFO    ] No camera update needed
[2026-10-28 08:43:00,900.900 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:43:00,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:43:00,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:43:00,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:43:02,962.962 INFO    ] ================================================
[2026-10-28 08:43:02,977.977 INFO    ] Launching Daemon at Wed Oct 28 08:43:02 IST 2026
[2026-10-28 08:43:02,988.988 INFO    ] ================================================
[2026-10-28 08:43:03,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:43:03
[2026-10-28 08:43:04,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:43:04,656.656 INFO    ] Initializing speech engine...
[2026-10-28 08:43:04,669.669 INFO    ] 2026-10-28 08:43:04
[2026-10-28 08:43:04,955.955 INFO    ] 2026-10-28 08:43:04
[2026-10-28 08:43:04,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:43:05,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:43:05,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:43:05,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:43:05,499.499 INFO    ] time= 28/10/2026 08:43:05
[2026-10-28 08:43:05,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:43:05,536.536 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:43:05,678.678 INFO    ] No existing commands found in stream
[2026-10-28 08:43:10,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:43:10,712.712 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-28 08:43:12,679.679 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:43:12,683.683 INFO    ] Checking for system updates...
[2026-10-28 08:43:12,719.719 INFO    ] 200
[2026-10-28 08:43:12,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:43:12,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:43:12,778.778 INFO    ] No update needed
[2026-10-28 08:43:12,781.781 INFO    ] Checking for camera pi updates...
[2026-10-28 08:43:12,816.816 INFO    ] 200
[2026-10-28 08:43:12,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:43:12,865.865 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:43:12,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:43:12,952.952 INFO    ] No camera update needed
[2026-10-28 08:43:12,954.954 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:43:12,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:43:12,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:43:12,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:43:15,008.008 INFO    ] ================================================
[2026-10-28 08:43:15,024.024 INFO    ] Launching Daemon at Wed Oct 28 08:43:15 IST 2026
[2026-10-28 08:43:15,035.035 INFO    ] ================================================
[2026-10-28 08:43:15,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:43:15
[2026-10-28 08:43:16,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:43:16,676.676 INFO    ] Initializing speech engine...
[2026-10-28 08:43:16,691.691 INFO    ] 2026-10-28 08:43:16
[2026-10-28 08:43:16,975.975 INFO    ] 2026-10-28 08:43:16
[2026-10-28 08:43:17,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:43:17,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:43:17,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:43:17,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:43:17,530.530 INFO    ] time= 28/10/2026 08:43:17
[2026-10-28 08:43:17,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:43:17,579.579 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:43:17,718.718 INFO    ] No existing commands found in stream
[2026-10-28 08:43:22,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:43:22,748.748 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-28 08:43:23,988.988 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:43:23,991.991 INFO    ] Checking for system updates...
[2026-10-28 08:43:24,026.026 INFO    ] 200
[2026-10-28 08:43:24,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:43:24,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:43:24,090.090 INFO    ] No update needed
[2026-10-28 08:43:24,093.093 INFO    ] Checking for camera pi updates...
[2026-10-28 08:43:24,130.130 INFO    ] 200
[2026-10-28 08:43:24,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:43:24,173.173 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:43:24,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:43:24,273.273 INFO    ] No camera update needed
[2026-10-28 08:43:24,275.275 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:43:24,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:43:24,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:43:24,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:43:26,328.328 INFO    ] ================================================
[2026-10-28 08:43:26,344.344 INFO    ] Launching Daemon at Wed Oct 28 08:43:26 IST 2026
[2026-10-28 08:43:26,355.355 INFO    ] ================================================
[2026-10-28 08:43:27,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:43:27
[2026-10-28 08:43:27,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:43:28,002.002 INFO    ] Initializing speech engine...
[2026-10-28 08:43:28,008.008 INFO    ] 2026-10-28 08:43:28
[2026-10-28 08:43:28,281.281 INFO    ] 2026-10-28 08:43:28
[2026-10-28 08:43:28,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:43:28,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:43:28,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:43:28,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:43:28,850.850 INFO    ] time= 28/10/2026 08:43:28
[2026-10-28 08:43:28,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:43:28,902.902 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:43:29,040.040 INFO    ] No existing commands found in stream
[2026-10-28 08:43:34,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:43:34,069.069 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-28 08:43:36,442.442 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:43:36,445.445 INFO    ] Checking for system updates...
[2026-10-28 08:43:36,482.482 INFO    ] 200
[2026-10-28 08:43:36,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:43:36,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:43:36,540.540 INFO    ] No update needed
[2026-10-28 08:43:36,542.542 INFO    ] Checking for camera pi updates...
[2026-10-28 08:43:36,576.576 INFO    ] 200
[2026-10-28 08:43:36,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:43:36,619.619 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:43:36,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:43:36,704.704 INFO    ] No camera update needed
[2026-10-28 08:43:36,706.706 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:43:36,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:43:36,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:43:36,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:43:38,759.759 INFO    ] ================================================
[2026-10-28 08:43:38,775.775 INFO    ] Launching Daemon at Wed Oct 28 08:43:38 IST 2026
[2026-10-28 08:43:38,785.785 INFO    ] ================================================
[2026-10-28 08:43:39,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:43:39
[2026-10-28 08:43:40,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:43:40,430.430 INFO    ] Initializing speech engine...
[2026-10-28 08:43:40,442.442 INFO    ] 2026-10-28 08:43:40
[2026-10-28 08:43:40,726.726 INFO    ] 2026-10-28 08:43:40
[2026-10-28 08:43:40,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:43:41,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:43:41,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:43:41,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:43:41,277.277 INFO    ] time= 28/10/2026 08:43:41
[2026-10-28 08:43:41,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:43:41,328.328 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:43:41,466.466 INFO    ] No existing commands found in stream
[2026-10-28 08:43:46,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:43:46,500.500 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 08:43:51,152.152 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:43:51,155.155 INFO    ] Checking for system updates...
[2026-10-28 08:43:51,192.192 INFO    ] 200
[2026-10-28 08:43:51,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:43:51,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:43:51,250.250 INFO    ] No update needed
[2026-10-28 08:43:51,252.252 INFO    ] Checking for camera pi updates...
[2026-10-28 08:43:51,286.286 INFO    ] 200
[2026-10-28 08:43:51,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:43:51,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:43:51,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:43:51,413.413 INFO    ] No camera update needed
[2026-10-28 08:43:51,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:43:51,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:43:51,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:43:51,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:43:53,467.467 INFO    ] ================================================
[2026-10-28 08:43:53,483.483 INFO    ] Launching Daemon at Wed Oct 28 08:43:53 IST 2026
[2026-10-28 08:43:53,495.495 INFO    ] ================================================
[2026-10-28 08:43:54,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:43:54
[2026-10-28 08:43:54,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:43:55,146.146 INFO    ] Initializing speech engine...
[2026-10-28 08:43:55,153.153 INFO    ] 2026-10-28 08:43:55
[2026-10-28 08:43:55,469.469 INFO    ] 2026-10-28 08:43:55
[2026-10-28 08:43:55,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:43:55,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:43:55,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:43:56,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:43:56,197.197 INFO    ] time= 28/10/2026 08:43:56
[2026-10-28 08:43:56,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:43:56,287.287 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:43:56,438.438 INFO    ] No existing commands found in stream
[2026-10-28 08:44:01,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:44:01,452.452 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-28 08:44:05,126.126 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:44:05,129.129 INFO    ] Checking for system updates...
[2026-10-28 08:44:05,171.171 INFO    ] 200
[2026-10-28 08:44:05,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:44:05,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:44:05,238.238 INFO    ] No update needed
[2026-10-28 08:44:05,241.241 INFO    ] Checking for camera pi updates...
[2026-10-28 08:44:05,275.275 INFO    ] 200
[2026-10-28 08:44:05,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:44:05,320.320 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:44:05,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:44:05,402.402 INFO    ] No camera update needed
[2026-10-28 08:44:05,405.405 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:44:05,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:44:05,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:44:05,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:44:07,458.458 INFO    ] ================================================
[2026-10-28 08:44:07,473.473 INFO    ] Launching Daemon at Wed Oct 28 08:44:07 IST 2026
[2026-10-28 08:44:07,484.484 INFO    ] ================================================
[2026-10-28 08:44:08,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:44:08
[2026-10-28 08:44:08,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:44:09,095.095 INFO    ] Initializing speech engine...
[2026-10-28 08:44:09,104.104 INFO    ] 2026-10-28 08:44:09
[2026-10-28 08:44:09,385.385 INFO    ] 2026-10-28 08:44:09
[2026-10-28 08:44:09,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:44:09,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:44:09,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:44:09,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:44:09,953.953 INFO    ] time= 28/10/2026 08:44:09
[2026-10-28 08:44:09,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:44:10,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:44:10,125.125 INFO    ] No existing commands found in stream
[2026-10-28 08:44:15,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:44:15,159.159 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-28 08:44:18,578.578 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:44:18,581.581 INFO    ] Checking for system updates...
[2026-10-28 08:44:18,623.623 INFO    ] 200
[2026-10-28 08:44:18,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:44:18,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:44:18,682.682 INFO    ] No update needed
[2026-10-28 08:44:18,685.685 INFO    ] Checking for camera pi updates...
[2026-10-28 08:44:18,719.719 INFO    ] 200
[2026-10-28 08:44:18,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:44:18,766.766 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:44:18,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:44:18,894.894 INFO    ] No camera update needed
[2026-10-28 08:44:18,896.896 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:44:18,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:44:18,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:44:18,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:44:20,951.951 INFO    ] ================================================
[2026-10-28 08:44:20,966.966 INFO    ] Launching Daemon at Wed Oct 28 08:44:20 IST 2026
[2026-10-28 08:44:20,976.976 INFO    ] ================================================
[2026-10-28 08:44:21,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:44:21
[2026-10-28 08:44:22,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:44:22,377.377 INFO    ] Initializing speech engine...
[2026-10-28 08:44:22,383.383 INFO    ] 2026-10-28 08:44:22
[2026-10-28 08:44:22,658.658 INFO    ] 2026-10-28 08:44:22
[2026-10-28 08:44:22,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:44:22,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:44:22,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:44:23,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:44:23,230.230 INFO    ] time= 28/10/2026 08:44:23
[2026-10-28 08:44:23,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:44:23,254.254 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:44:23,390.390 INFO    ] No existing commands found in stream
[2026-10-28 08:44:28,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:44:28,411.411 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 08:44:30,057.057 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:44:30,060.060 INFO    ] Checking for system updates...
[2026-10-28 08:44:30,095.095 INFO    ] 200
[2026-10-28 08:44:30,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:44:30,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:44:30,152.152 INFO    ] No update needed
[2026-10-28 08:44:30,155.155 INFO    ] Checking for camera pi updates...
[2026-10-28 08:44:30,188.188 INFO    ] 200
[2026-10-28 08:44:30,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:44:30,236.236 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:44:30,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:44:30,292.292 INFO    ] No camera update needed
[2026-10-28 08:44:30,294.294 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:44:30,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:44:30,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:44:30,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:44:32,349.349 INFO    ] ================================================
[2026-10-28 08:44:32,365.365 INFO    ] Launching Daemon at Wed Oct 28 08:44:32 IST 2026
[2026-10-28 08:44:32,377.377 INFO    ] ================================================
[2026-10-28 08:44:32,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:44:32
[2026-10-28 08:44:33,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:44:33,805.805 INFO    ] Initializing speech engine...
[2026-10-28 08:44:33,812.812 INFO    ] 2026-10-28 08:44:33
[2026-10-28 08:44:34,112.112 INFO    ] 2026-10-28 08:44:34
[2026-10-28 08:44:34,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:44:34,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:44:34,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:44:34,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:44:34,662.662 INFO    ] time= 28/10/2026 08:44:34
[2026-10-28 08:44:34,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:44:34,768.768 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:44:34,876.876 INFO    ] No existing commands found in stream
[2026-10-28 08:44:39,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:44:39,910.910 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-28 08:44:42,930.930 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:44:42,933.933 INFO    ] Checking for system updates...
[2026-10-28 08:44:42,969.969 INFO    ] 200
[2026-10-28 08:44:42,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:44:43,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:44:43,028.028 INFO    ] No update needed
[2026-10-28 08:44:43,030.030 INFO    ] Checking for camera pi updates...
[2026-10-28 08:44:43,064.064 INFO    ] 200
[2026-10-28 08:44:43,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:44:43,112.112 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:44:43,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:44:43,294.294 INFO    ] No camera update needed
[2026-10-28 08:44:43,296.296 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:44:43,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:44:43,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:44:43,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:44:45,349.349 INFO    ] ================================================
[2026-10-28 08:44:45,364.364 INFO    ] Launching Daemon at Wed Oct 28 08:44:45 IST 2026
[2026-10-28 08:44:45,375.375 INFO    ] ================================================
[2026-10-28 08:44:45,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:44:45
[2026-10-28 08:44:46,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:44:46,790.790 INFO    ] Initializing speech engine...
[2026-10-28 08:44:46,797.797 INFO    ] 2026-10-28 08:44:46
[2026-10-28 08:44:47,055.055 INFO    ] 2026-10-28 08:44:47
[2026-10-28 08:44:47,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:44:47,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:44:47,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:44:47,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:44:47,598.598 INFO    ] time= 28/10/2026 08:44:47
[2026-10-28 08:44:47,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:44:47,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:44:47,747.747 INFO    ] No existing commands found in stream
[2026-10-28 08:44:52,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:44:52,764.764 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 08:44:55,278.278 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:44:55,281.281 INFO    ] Checking for system updates...
[2026-10-28 08:44:55,317.317 INFO    ] 200
[2026-10-28 08:44:55,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:44:55,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:44:55,376.376 INFO    ] No update needed
[2026-10-28 08:44:55,379.379 INFO    ] Checking for camera pi updates...
[2026-10-28 08:44:55,414.414 INFO    ] 200
[2026-10-28 08:44:55,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:44:55,464.464 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:44:55,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:44:55,561.561 INFO    ] No camera update needed
[2026-10-28 08:44:55,564.564 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:44:55,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:44:55,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:44:55,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:44:57,621.621 INFO    ] ================================================
[2026-10-28 08:44:57,636.636 INFO    ] Launching Daemon at Wed Oct 28 08:44:57 IST 2026
[2026-10-28 08:44:57,647.647 INFO    ] ================================================
[2026-10-28 08:44:58,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:44:58
[2026-10-28 08:44:58,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:44:59,103.103 INFO    ] Initializing speech engine...
[2026-10-28 08:44:59,112.112 INFO    ] 2026-10-28 08:44:59
[2026-10-28 08:44:59,369.369 INFO    ] 2026-10-28 08:44:59
[2026-10-28 08:44:59,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:44:59,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:44:59,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:44:59,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:44:59,915.915 INFO    ] time= 28/10/2026 08:44:59
[2026-10-28 08:44:59,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:44:59,955.955 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:45:00,088.088 INFO    ] No existing commands found in stream
[2026-10-28 08:45:05,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:45:05,121.121 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 08:45:07,775.775 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:45:07,777.777 INFO    ] Checking for system updates...
[2026-10-28 08:45:07,817.817 INFO    ] 200
[2026-10-28 08:45:07,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:45:07,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:45:07,874.874 INFO    ] No update needed
[2026-10-28 08:45:07,877.877 INFO    ] Checking for camera pi updates...
[2026-10-28 08:45:07,911.911 INFO    ] 200
[2026-10-28 08:45:07,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:45:07,954.954 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:45:08,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:45:08,043.043 INFO    ] No camera update needed
[2026-10-28 08:45:08,046.046 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:45:08,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:45:08,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:45:08,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:45:10,098.098 INFO    ] ================================================
[2026-10-28 08:45:10,114.114 INFO    ] Launching Daemon at Wed Oct 28 08:45:10 IST 2026
[2026-10-28 08:45:10,124.124 INFO    ] ================================================
[2026-10-28 08:45:10,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:45:10
[2026-10-28 08:45:11,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:45:11,654.654 INFO    ] Initializing speech engine...
[2026-10-28 08:45:11,660.660 INFO    ] 2026-10-28 08:45:11
[2026-10-28 08:45:11,968.968 INFO    ] 2026-10-28 08:45:11
[2026-10-28 08:45:12,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:45:12,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:45:12,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:45:12,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:45:12,540.540 INFO    ] time= 28/10/2026 08:45:12
[2026-10-28 08:45:12,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:45:12,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:45:12,725.725 INFO    ] No existing commands found in stream
[2026-10-28 08:45:17,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:45:17,759.759 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 08:45:18,529.529 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:45:18,532.532 INFO    ] Checking for system updates...
[2026-10-28 08:45:18,569.569 INFO    ] 200
[2026-10-28 08:45:18,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:45:18,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:45:18,625.625 INFO    ] No update needed
[2026-10-28 08:45:18,628.628 INFO    ] Checking for camera pi updates...
[2026-10-28 08:45:18,661.661 INFO    ] 200
[2026-10-28 08:45:18,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:45:18,708.708 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:45:18,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:45:18,789.789 INFO    ] No camera update needed
[2026-10-28 08:45:18,791.791 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:45:18,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:45:18,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:45:18,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:45:20,848.848 INFO    ] ================================================
[2026-10-28 08:45:20,863.863 INFO    ] Launching Daemon at Wed Oct 28 08:45:20 IST 2026
[2026-10-28 08:45:20,873.873 INFO    ] ================================================
[2026-10-28 08:45:21,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:45:21
[2026-10-28 08:45:22,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:45:22,409.409 INFO    ] Initializing speech engine...
[2026-10-28 08:45:22,419.419 INFO    ] 2026-10-28 08:45:22
[2026-10-28 08:45:22,672.672 INFO    ] 2026-10-28 08:45:22
[2026-10-28 08:45:22,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:45:22,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:45:22,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:45:23,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:45:23,245.245 INFO    ] time= 28/10/2026 08:45:23
[2026-10-28 08:45:23,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:45:23,269.269 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:45:23,405.405 INFO    ] No existing commands found in stream
[2026-10-28 08:45:28,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:45:28,422.422 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-28 08:45:29,510.510 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:45:29,513.513 INFO    ] Checking for system updates...
[2026-10-28 08:45:29,553.553 INFO    ] 200
[2026-10-28 08:45:29,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:45:29,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:45:29,610.610 INFO    ] No update needed
[2026-10-28 08:45:29,613.613 INFO    ] Checking for camera pi updates...
[2026-10-28 08:45:29,650.650 INFO    ] 200
[2026-10-28 08:45:29,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:45:29,693.693 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:45:29,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:45:29,798.798 INFO    ] No camera update needed
[2026-10-28 08:45:29,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:45:29,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:45:29,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:45:29,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:45:31,855.855 INFO    ] ================================================
[2026-10-28 08:45:31,873.873 INFO    ] Launching Daemon at Wed Oct 28 08:45:31 IST 2026
[2026-10-28 08:45:31,885.885 INFO    ] ================================================
[2026-10-28 08:45:32,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:45:32
[2026-10-28 08:45:33,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:45:33,389.389 INFO    ] Initializing speech engine...
[2026-10-28 08:45:33,405.405 INFO    ] 2026-10-28 08:45:33
[2026-10-28 08:45:33,688.688 INFO    ] 2026-10-28 08:45:33
[2026-10-28 08:45:33,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:45:34,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:45:34,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:45:34,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:45:34,308.308 INFO    ] time= 28/10/2026 08:45:34
[2026-10-28 08:45:34,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:45:34,339.339 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:45:34,482.482 INFO    ] No existing commands found in stream
[2026-10-28 08:45:39,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:45:39,501.501 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-28 08:45:43,831.831 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:45:43,834.834 INFO    ] Checking for system updates...
[2026-10-28 08:45:43,872.872 INFO    ] 200
[2026-10-28 08:45:43,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:45:43,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:45:43,935.935 INFO    ] No update needed
[2026-10-28 08:45:43,938.938 INFO    ] Checking for camera pi updates...
[2026-10-28 08:45:43,971.971 INFO    ] 200
[2026-10-28 08:45:43,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:45:44,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:45:44,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:45:44,116.116 INFO    ] No camera update needed
[2026-10-28 08:45:44,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:45:44,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:45:44,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:45:44,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:45:46,171.171 INFO    ] ================================================
[2026-10-28 08:45:46,186.186 INFO    ] Launching Daemon at Wed Oct 28 08:45:46 IST 2026
[2026-10-28 08:45:46,197.197 INFO    ] ================================================
[2026-10-28 08:45:46,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:45:46
[2026-10-28 08:45:47,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:45:47,644.644 INFO    ] Initializing speech engine...
[2026-10-28 08:45:47,650.650 INFO    ] 2026-10-28 08:45:47
[2026-10-28 08:45:47,911.911 INFO    ] 2026-10-28 08:45:47
[2026-10-28 08:45:47,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:45:48,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:45:48,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:45:48,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:45:48,465.465 INFO    ] time= 28/10/2026 08:45:48
[2026-10-28 08:45:48,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:45:48,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:45:48,632.632 INFO    ] No existing commands found in stream
[2026-10-28 08:45:53,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:45:53,657.657 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 08:45:56,157.157 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:45:56,160.160 INFO    ] Checking for system updates...
[2026-10-28 08:45:56,198.198 INFO    ] 200
[2026-10-28 08:45:56,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:45:56,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:45:56,262.262 INFO    ] No update needed
[2026-10-28 08:45:56,265.265 INFO    ] Checking for camera pi updates...
[2026-10-28 08:45:56,300.300 INFO    ] 200
[2026-10-28 08:45:56,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:45:56,349.349 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:45:56,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:45:56,430.430 INFO    ] No camera update needed
[2026-10-28 08:45:56,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:45:56,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:45:56,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:45:56,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:45:58,486.486 INFO    ] ================================================
[2026-10-28 08:45:58,502.502 INFO    ] Launching Daemon at Wed Oct 28 08:45:58 IST 2026
[2026-10-28 08:45:58,513.513 INFO    ] ================================================
[2026-10-28 08:45:59,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:45:59
[2026-10-28 08:45:59,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:46:00,000.000 INFO    ] Initializing speech engine...
[2026-10-28 08:46:00,010.010 INFO    ] 2026-10-28 08:46:00
[2026-10-28 08:46:00,272.272 INFO    ] 2026-10-28 08:46:00
[2026-10-28 08:46:00,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:46:00,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:46:00,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:46:00,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:46:00,832.832 INFO    ] time= 28/10/2026 08:46:00
[2026-10-28 08:46:00,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:46:00,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:46:00,994.994 INFO    ] No existing commands found in stream
[2026-10-28 08:46:06,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:46:06,022.022 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-28 08:46:10,550.550 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:46:10,552.552 INFO    ] Checking for system updates...
[2026-10-28 08:46:10,588.588 INFO    ] 200
[2026-10-28 08:46:10,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:46:10,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:46:10,646.646 INFO    ] No update needed
[2026-10-28 08:46:10,648.648 INFO    ] Checking for camera pi updates...
[2026-10-28 08:46:10,684.684 INFO    ] 200
[2026-10-28 08:46:10,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:46:10,731.731 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:46:10,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:46:10,818.818 INFO    ] No camera update needed
[2026-10-28 08:46:10,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:46:10,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:46:10,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:46:10,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:46:12,874.874 INFO    ] ================================================
[2026-10-28 08:46:12,890.890 INFO    ] Launching Daemon at Wed Oct 28 08:46:12 IST 2026
[2026-10-28 08:46:12,901.901 INFO    ] ================================================
[2026-10-28 08:46:13,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:46:13
[2026-10-28 08:46:14,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:46:14,319.319 INFO    ] Initializing speech engine...
[2026-10-28 08:46:14,334.334 INFO    ] 2026-10-28 08:46:14
[2026-10-28 08:46:14,599.599 INFO    ] 2026-10-28 08:46:14
[2026-10-28 08:46:14,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:46:14,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:46:14,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:46:15,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:46:15,167.167 INFO    ] time= 28/10/2026 08:46:15
[2026-10-28 08:46:15,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:46:15,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:46:15,303.303 INFO    ] No existing commands found in stream
[2026-10-28 08:46:20,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:46:20,328.328 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 08:46:21,372.372 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:46:21,375.375 INFO    ] Checking for system updates...
[2026-10-28 08:46:21,411.411 INFO    ] 200
[2026-10-28 08:46:21,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:46:21,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:46:21,477.477 INFO    ] No update needed
[2026-10-28 08:46:21,480.480 INFO    ] Checking for camera pi updates...
[2026-10-28 08:46:21,514.514 INFO    ] 200
[2026-10-28 08:46:21,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:46:21,557.557 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:46:21,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:46:21,638.638 INFO    ] No camera update needed
[2026-10-28 08:46:21,641.641 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:46:21,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:46:21,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:46:21,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:46:23,698.698 INFO    ] ================================================
[2026-10-28 08:46:23,712.712 INFO    ] Launching Daemon at Wed Oct 28 08:46:23 IST 2026
[2026-10-28 08:46:23,724.724 INFO    ] ================================================
[2026-10-28 08:46:24,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:46:24
[2026-10-28 08:46:24,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:46:25,143.143 INFO    ] Initializing speech engine...
[2026-10-28 08:46:25,151.151 INFO    ] 2026-10-28 08:46:25
[2026-10-28 08:46:25,407.407 INFO    ] 2026-10-28 08:46:25
[2026-10-28 08:46:25,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:46:25,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:46:25,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:46:25,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:46:25,975.975 INFO    ] time= 28/10/2026 08:46:25
[2026-10-28 08:46:25,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:46:26,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:46:26,152.152 INFO    ] No existing commands found in stream
[2026-10-28 08:46:31,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:46:31,185.185 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-28 08:46:33,749.749 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:46:33,751.751 INFO    ] Checking for system updates...
[2026-10-28 08:46:33,787.787 INFO    ] 200
[2026-10-28 08:46:33,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:46:33,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:46:33,849.849 INFO    ] No update needed
[2026-10-28 08:46:33,851.851 INFO    ] Checking for camera pi updates...
[2026-10-28 08:46:33,888.888 INFO    ] 200
[2026-10-28 08:46:33,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:46:33,935.935 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:46:34,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:46:34,019.019 INFO    ] No camera update needed
[2026-10-28 08:46:34,022.022 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:46:34,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:46:34,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:46:34,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:46:36,076.076 INFO    ] ================================================
[2026-10-28 08:46:36,091.091 INFO    ] Launching Daemon at Wed Oct 28 08:46:36 IST 2026
[2026-10-28 08:46:36,101.101 INFO    ] ================================================
[2026-10-28 08:46:36,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:46:36
[2026-10-28 08:46:37,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:46:37,682.682 INFO    ] Initializing speech engine...
[2026-10-28 08:46:37,690.690 INFO    ] 2026-10-28 08:46:37
[2026-10-28 08:46:37,964.964 INFO    ] 2026-10-28 08:46:37
[2026-10-28 08:46:38,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:46:38,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:46:38,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:46:38,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:46:38,662.662 INFO    ] time= 28/10/2026 08:46:38
[2026-10-28 08:46:38,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:46:38,758.758 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:46:38,904.904 INFO    ] No existing commands found in stream
[2026-10-28 08:46:43,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:46:43,921.921 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 08:46:44,611.611 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:46:44,614.614 INFO    ] Checking for system updates...
[2026-10-28 08:46:44,655.655 INFO    ] 200
[2026-10-28 08:46:44,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:46:44,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:46:44,715.715 INFO    ] No update needed
[2026-10-28 08:46:44,717.717 INFO    ] Checking for camera pi updates...
[2026-10-28 08:46:44,751.751 INFO    ] 200
[2026-10-28 08:46:44,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:46:44,800.800 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:46:44,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:46:44,882.882 INFO    ] No camera update needed
[2026-10-28 08:46:44,885.885 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:46:44,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:46:44,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:46:44,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:46:46,941.941 INFO    ] ================================================
[2026-10-28 08:46:46,956.956 INFO    ] Launching Daemon at Wed Oct 28 08:46:46 IST 2026
[2026-10-28 08:46:46,967.967 INFO    ] ================================================
[2026-10-28 08:46:47,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:46:47
[2026-10-28 08:46:48,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:46:48,568.568 INFO    ] Initializing speech engine...
[2026-10-28 08:46:48,581.581 INFO    ] 2026-10-28 08:46:48
[2026-10-28 08:46:48,859.859 INFO    ] 2026-10-28 08:46:48
[2026-10-28 08:46:48,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:46:49,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:46:49,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:46:49,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:46:49,395.395 INFO    ] time= 28/10/2026 08:46:49
[2026-10-28 08:46:49,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:46:49,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:46:49,551.551 INFO    ] No existing commands found in stream
[2026-10-28 08:46:54,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:46:54,592.592 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-28 08:46:55,407.407 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:46:55,410.410 INFO    ] Checking for system updates...
[2026-10-28 08:46:55,445.445 INFO    ] 200
[2026-10-28 08:46:55,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:46:55,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:46:55,502.502 INFO    ] No update needed
[2026-10-28 08:46:55,505.505 INFO    ] Checking for camera pi updates...
[2026-10-28 08:46:55,541.541 INFO    ] 200
[2026-10-28 08:46:55,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:46:55,584.584 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:46:55,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:46:55,785.785 INFO    ] No camera update needed
[2026-10-28 08:46:55,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:46:55,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:46:55,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:46:55,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:46:57,839.839 INFO    ] ================================================
[2026-10-28 08:46:57,854.854 INFO    ] Launching Daemon at Wed Oct 28 08:46:57 IST 2026
[2026-10-28 08:46:57,865.865 INFO    ] ================================================
[2026-10-28 08:46:58,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:46:58
[2026-10-28 08:46:59,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:46:59,286.286 INFO    ] Initializing speech engine...
[2026-10-28 08:46:59,303.303 INFO    ] 2026-10-28 08:46:59
[2026-10-28 08:46:59,572.572 INFO    ] 2026-10-28 08:46:59
[2026-10-28 08:46:59,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:46:59,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:46:59,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:47:00,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:47:00,180.180 INFO    ] time= 28/10/2026 08:47:00
[2026-10-28 08:47:00,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:47:00,213.213 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:47:00,376.376 INFO    ] No existing commands found in stream
[2026-10-28 08:47:05,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:47:05,392.392 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-28 08:47:08,494.494 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:47:08,497.497 INFO    ] Checking for system updates...
[2026-10-28 08:47:08,533.533 INFO    ] 200
[2026-10-28 08:47:08,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:47:08,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:47:08,600.600 INFO    ] No update needed
[2026-10-28 08:47:08,603.603 INFO    ] Checking for camera pi updates...
[2026-10-28 08:47:08,639.639 INFO    ] 200
[2026-10-28 08:47:08,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:47:08,682.682 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:47:08,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:47:08,774.774 INFO    ] No camera update needed
[2026-10-28 08:47:08,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:47:08,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:47:08,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:47:08,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:47:10,832.832 INFO    ] ================================================
[2026-10-28 08:47:10,847.847 INFO    ] Launching Daemon at Wed Oct 28 08:47:10 IST 2026
[2026-10-28 08:47:10,858.858 INFO    ] ================================================
[2026-10-28 08:47:11,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:47:11
[2026-10-28 08:47:12,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:47:12,451.451 INFO    ] Initializing speech engine...
[2026-10-28 08:47:12,458.458 INFO    ] 2026-10-28 08:47:12
[2026-10-28 08:47:12,729.729 INFO    ] 2026-10-28 08:47:12
[2026-10-28 08:47:12,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:47:13,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:47:13,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:47:13,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:47:13,279.279 INFO    ] time= 28/10/2026 08:47:13
[2026-10-28 08:47:13,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:47:13,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:47:13,435.435 INFO    ] No existing commands found in stream
[2026-10-28 08:47:18,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:47:18,477.477 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-28 08:47:21,675.675 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:47:21,678.678 INFO    ] Checking for system updates...
[2026-10-28 08:47:21,714.714 INFO    ] 200
[2026-10-28 08:47:21,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:47:21,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:47:21,773.773 INFO    ] No update needed
[2026-10-28 08:47:21,775.775 INFO    ] Checking for camera pi updates...
[2026-10-28 08:47:21,811.811 INFO    ] 200
[2026-10-28 08:47:21,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:47:21,859.859 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:47:21,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:47:21,947.947 INFO    ] No camera update needed
[2026-10-28 08:47:21,950.950 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:47:21,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:47:21,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:47:21,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:47:24,006.006 INFO    ] ================================================
[2026-10-28 08:47:24,022.022 INFO    ] Launching Daemon at Wed Oct 28 08:47:24 IST 2026
[2026-10-28 08:47:24,033.033 INFO    ] ================================================
[2026-10-28 08:47:24,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:47:24
[2026-10-28 08:47:25,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:47:25,485.485 INFO    ] Initializing speech engine...
[2026-10-28 08:47:25,510.510 INFO    ] 2026-10-28 08:47:25
[2026-10-28 08:47:25,786.786 INFO    ] 2026-10-28 08:47:25
[2026-10-28 08:47:25,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:47:26,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:47:26,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:47:26,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:47:26,410.410 INFO    ] time= 28/10/2026 08:47:26
[2026-10-28 08:47:26,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:47:26,437.437 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:47:26,560.560 INFO    ] No existing commands found in stream
[2026-10-28 08:47:31,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:47:31,588.588 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 08:47:37,494.494 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:47:37,497.497 INFO    ] Checking for system updates...
[2026-10-28 08:47:37,532.532 INFO    ] 200
[2026-10-28 08:47:37,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:47:37,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:47:37,590.590 INFO    ] No update needed
[2026-10-28 08:47:37,592.592 INFO    ] Checking for camera pi updates...
[2026-10-28 08:47:37,626.626 INFO    ] 200
[2026-10-28 08:47:37,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:47:37,669.669 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:47:37,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:47:37,753.753 INFO    ] No camera update needed
[2026-10-28 08:47:37,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:47:37,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:47:37,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:47:37,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:47:39,809.809 INFO    ] ================================================
[2026-10-28 08:47:39,825.825 INFO    ] Launching Daemon at Wed Oct 28 08:47:39 IST 2026
[2026-10-28 08:47:39,836.836 INFO    ] ================================================
[2026-10-28 08:47:40,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:47:40
[2026-10-28 08:47:41,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:47:41,299.299 INFO    ] Initializing speech engine...
[2026-10-28 08:47:41,306.306 INFO    ] 2026-10-28 08:47:41
[2026-10-28 08:47:41,614.614 INFO    ] 2026-10-28 08:47:41
[2026-10-28 08:47:41,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:47:41,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:47:41,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:47:42,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:47:42,209.209 INFO    ] time= 28/10/2026 08:47:42
[2026-10-28 08:47:42,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:47:42,250.250 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:47:42,367.367 INFO    ] No existing commands found in stream
[2026-10-28 08:47:47,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:47:47,381.381 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 08:47:50,630.630 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:47:50,632.632 INFO    ] Checking for system updates...
[2026-10-28 08:47:50,673.673 INFO    ] 200
[2026-10-28 08:47:50,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:47:50,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:47:50,738.738 INFO    ] No update needed
[2026-10-28 08:47:50,741.741 INFO    ] Checking for camera pi updates...
[2026-10-28 08:47:50,774.774 INFO    ] 200
[2026-10-28 08:47:50,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:47:50,818.818 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:47:50,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:47:50,905.905 INFO    ] No camera update needed
[2026-10-28 08:47:50,907.907 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:47:50,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:47:50,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:47:50,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:47:52,960.960 INFO    ] ================================================
[2026-10-28 08:47:52,976.976 INFO    ] Launching Daemon at Wed Oct 28 08:47:52 IST 2026
[2026-10-28 08:47:52,987.987 INFO    ] ================================================
[2026-10-28 08:47:53,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:47:53
[2026-10-28 08:47:54,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:47:54,430.430 INFO    ] Initializing speech engine...
[2026-10-28 08:47:54,439.439 INFO    ] 2026-10-28 08:47:54
[2026-10-28 08:47:54,740.740 INFO    ] 2026-10-28 08:47:54
[2026-10-28 08:47:54,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:47:55,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:47:55,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:47:55,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:47:55,297.297 INFO    ] time= 28/10/2026 08:47:55
[2026-10-28 08:47:55,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:47:55,320.320 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:47:55,463.463 INFO    ] No existing commands found in stream
[2026-10-28 08:48:00,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:48:00,497.497 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-28 08:48:03,949.949 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:48:03,951.951 INFO    ] Checking for system updates...
[2026-10-28 08:48:03,986.986 INFO    ] 200
[2026-10-28 08:48:03,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:48:04,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:48:04,045.045 INFO    ] No update needed
[2026-10-28 08:48:04,047.047 INFO    ] Checking for camera pi updates...
[2026-10-28 08:48:04,080.080 INFO    ] 200
[2026-10-28 08:48:04,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:48:04,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:48:04,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:48:04,210.210 INFO    ] No camera update needed
[2026-10-28 08:48:04,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:48:04,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:48:04,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:48:04,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:48:06,265.265 INFO    ] ================================================
[2026-10-28 08:48:06,281.281 INFO    ] Launching Daemon at Wed Oct 28 08:48:06 IST 2026
[2026-10-28 08:48:06,292.292 INFO    ] ================================================
[2026-10-28 08:48:06,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:48:06
[2026-10-28 08:48:07,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:48:07,729.729 INFO    ] Initializing speech engine...
[2026-10-28 08:48:07,736.736 INFO    ] 2026-10-28 08:48:07
[2026-10-28 08:48:07,998.998 INFO    ] 2026-10-28 08:48:07
[2026-10-28 08:48:08,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:48:08,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:48:08,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:48:08,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:48:08,545.545 INFO    ] time= 28/10/2026 08:48:08
[2026-10-28 08:48:08,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:48:08,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:48:08,718.718 INFO    ] No existing commands found in stream
[2026-10-28 08:48:13,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:48:13,756.756 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-28 08:48:17,747.747 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:48:17,749.749 INFO    ] Checking for system updates...
[2026-10-28 08:48:17,785.785 INFO    ] 200
[2026-10-28 08:48:17,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:48:17,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:48:17,841.841 INFO    ] No update needed
[2026-10-28 08:48:17,844.844 INFO    ] Checking for camera pi updates...
[2026-10-28 08:48:17,877.877 INFO    ] 200
[2026-10-28 08:48:17,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:48:17,920.920 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:48:18,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:48:18,016.016 INFO    ] No camera update needed
[2026-10-28 08:48:18,019.019 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:48:18,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:48:18,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:48:18,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:48:20,074.074 INFO    ] ================================================
[2026-10-28 08:48:20,089.089 INFO    ] Launching Daemon at Wed Oct 28 08:48:20 IST 2026
[2026-10-28 08:48:20,101.101 INFO    ] ================================================
[2026-10-28 08:48:20,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:48:20
[2026-10-28 08:48:21,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:48:21,574.574 INFO    ] Initializing speech engine...
[2026-10-28 08:48:21,579.579 INFO    ] 2026-10-28 08:48:21
[2026-10-28 08:48:21,842.842 INFO    ] 2026-10-28 08:48:21
[2026-10-28 08:48:21,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:48:22,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:48:22,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:48:22,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:48:22,406.406 INFO    ] time= 28/10/2026 08:48:22
[2026-10-28 08:48:22,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:48:22,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:48:22,573.573 INFO    ] No existing commands found in stream
[2026-10-28 08:48:27,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:48:27,607.607 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 08:48:28,886.886 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:48:28,889.889 INFO    ] Checking for system updates...
[2026-10-28 08:48:28,931.931 INFO    ] 200
[2026-10-28 08:48:28,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:48:28,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:48:28,995.995 INFO    ] No update needed
[2026-10-28 08:48:28,998.998 INFO    ] Checking for camera pi updates...
[2026-10-28 08:48:29,032.032 INFO    ] 200
[2026-10-28 08:48:29,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:48:29,076.076 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:48:29,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:48:29,154.154 INFO    ] No camera update needed
[2026-10-28 08:48:29,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:48:29,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:48:29,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:48:29,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:48:31,216.216 INFO    ] ================================================
[2026-10-28 08:48:31,231.231 INFO    ] Launching Daemon at Wed Oct 28 08:48:31 IST 2026
[2026-10-28 08:48:31,242.242 INFO    ] ================================================
[2026-10-28 08:48:31,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:48:31
[2026-10-28 08:48:32,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:48:32,789.789 INFO    ] Initializing speech engine...
[2026-10-28 08:48:32,796.796 INFO    ] 2026-10-28 08:48:32
[2026-10-28 08:48:33,111.111 INFO    ] 2026-10-28 08:48:33
[2026-10-28 08:48:33,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:48:33,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:48:33,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:48:33,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:48:33,608.608 INFO    ] time= 28/10/2026 08:48:33
[2026-10-28 08:48:33,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:48:33,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:48:33,811.811 INFO    ] No existing commands found in stream
[2026-10-28 08:48:38,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:48:38,826.826 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-28 08:48:40,491.491 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:48:40,494.494 INFO    ] Checking for system updates...
[2026-10-28 08:48:40,530.530 INFO    ] 200
[2026-10-28 08:48:40,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:48:40,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:48:40,587.587 INFO    ] No update needed
[2026-10-28 08:48:40,589.589 INFO    ] Checking for camera pi updates...
[2026-10-28 08:48:40,623.623 INFO    ] 200
[2026-10-28 08:48:40,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:48:40,665.665 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:48:40,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:48:40,757.757 INFO    ] No camera update needed
[2026-10-28 08:48:40,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:48:40,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:48:40,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:48:40,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:48:42,813.813 INFO    ] ================================================
[2026-10-28 08:48:42,828.828 INFO    ] Launching Daemon at Wed Oct 28 08:48:42 IST 2026
[2026-10-28 08:48:42,840.840 INFO    ] ================================================
[2026-10-28 08:48:43,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:48:43
[2026-10-28 08:48:44,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:48:44,472.472 INFO    ] Initializing speech engine...
[2026-10-28 08:48:44,485.485 INFO    ] 2026-10-28 08:48:44
[2026-10-28 08:48:44,767.767 INFO    ] 2026-10-28 08:48:44
[2026-10-28 08:48:44,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:48:45,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:48:45,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:48:45,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:48:45,516.516 INFO    ] time= 28/10/2026 08:48:45
[2026-10-28 08:48:45,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:48:45,630.630 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:48:45,779.779 INFO    ] No existing commands found in stream
[2026-10-28 08:48:50,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:48:50,799.799 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-28 08:48:53,952.952 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:48:53,955.955 INFO    ] Checking for system updates...
[2026-10-28 08:48:53,992.992 INFO    ] 200
[2026-10-28 08:48:53,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:48:54,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:48:54,051.051 INFO    ] No update needed
[2026-10-28 08:48:54,054.054 INFO    ] Checking for camera pi updates...
[2026-10-28 08:48:54,088.088 INFO    ] 200
[2026-10-28 08:48:54,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:48:54,132.132 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:48:54,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:48:54,222.222 INFO    ] No camera update needed
[2026-10-28 08:48:54,225.225 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:48:54,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:48:54,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:48:54,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:48:56,282.282 INFO    ] ================================================
[2026-10-28 08:48:56,297.297 INFO    ] Launching Daemon at Wed Oct 28 08:48:56 IST 2026
[2026-10-28 08:48:56,308.308 INFO    ] ================================================
[2026-10-28 08:48:56,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:48:56
[2026-10-28 08:48:57,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:48:57,710.710 INFO    ] Initializing speech engine...
[2026-10-28 08:48:57,719.719 INFO    ] 2026-10-28 08:48:57
[2026-10-28 08:48:58,018.018 INFO    ] 2026-10-28 08:48:57
[2026-10-28 08:48:58,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:48:58,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:48:58,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:48:58,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:48:58,620.620 INFO    ] time= 28/10/2026 08:48:58
[2026-10-28 08:48:58,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:48:58,656.656 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:48:58,767.767 INFO    ] No existing commands found in stream
[2026-10-28 08:49:03,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:49:03,798.798 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-28 08:49:06,672.672 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:49:06,674.674 INFO    ] Checking for system updates...
[2026-10-28 08:49:06,710.710 INFO    ] 200
[2026-10-28 08:49:06,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:49:06,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:49:06,768.768 INFO    ] No update needed
[2026-10-28 08:49:06,770.770 INFO    ] Checking for camera pi updates...
[2026-10-28 08:49:06,804.804 INFO    ] 200
[2026-10-28 08:49:06,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:49:06,847.847 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:49:06,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:49:06,930.930 INFO    ] No camera update needed
[2026-10-28 08:49:06,932.932 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:49:06,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:49:06,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:49:06,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:49:08,986.986 INFO    ] ================================================
[2026-10-28 08:49:09,001.001 INFO    ] Launching Daemon at Wed Oct 28 08:49:08 IST 2026
[2026-10-28 08:49:09,012.012 INFO    ] ================================================
[2026-10-28 08:49:09,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:49:09
[2026-10-28 08:49:10,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:49:10,625.625 INFO    ] Initializing speech engine...
[2026-10-28 08:49:10,637.637 INFO    ] 2026-10-28 08:49:10
[2026-10-28 08:49:10,910.910 INFO    ] 2026-10-28 08:49:10
[2026-10-28 08:49:10,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:49:11,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:49:11,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:49:11,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:49:11,476.476 INFO    ] time= 28/10/2026 08:49:11
[2026-10-28 08:49:11,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:49:11,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:49:11,634.634 INFO    ] No existing commands found in stream
[2026-10-28 08:49:16,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:49:16,657.657 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-28 08:49:19,431.431 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:49:19,434.434 INFO    ] Checking for system updates...
[2026-10-28 08:49:19,471.471 INFO    ] 200
[2026-10-28 08:49:19,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:49:19,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:49:19,531.531 INFO    ] No update needed
[2026-10-28 08:49:19,534.534 INFO    ] Checking for camera pi updates...
[2026-10-28 08:49:19,568.568 INFO    ] 200
[2026-10-28 08:49:19,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:49:19,617.617 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:49:19,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:49:19,689.689 INFO    ] No camera update needed
[2026-10-28 08:49:19,691.691 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:49:19,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:49:19,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:49:19,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:49:21,744.744 INFO    ] ================================================
[2026-10-28 08:49:21,759.759 INFO    ] Launching Daemon at Wed Oct 28 08:49:21 IST 2026
[2026-10-28 08:49:21,770.770 INFO    ] ================================================
[2026-10-28 08:49:22,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:49:22
[2026-10-28 08:49:22,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:49:23,170.170 INFO    ] Initializing speech engine...
[2026-10-28 08:49:23,178.178 INFO    ] 2026-10-28 08:49:23
[2026-10-28 08:49:23,472.472 INFO    ] 2026-10-28 08:49:23
[2026-10-28 08:49:23,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:49:23,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:49:23,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:49:23,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:49:23,887.887 INFO    ] time= 28/10/2026 08:49:23
[2026-10-28 08:49:23,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:49:23,898.898 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:49:23,972.972 INFO    ] No existing commands found in stream
[2026-10-28 08:49:29,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:49:29,011.011 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 08:49:31,053.053 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:49:31,056.056 INFO    ] Checking for system updates...
[2026-10-28 08:49:31,092.092 INFO    ] 200
[2026-10-28 08:49:31,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:49:31,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:49:31,152.152 INFO    ] No update needed
[2026-10-28 08:49:31,154.154 INFO    ] Checking for camera pi updates...
[2026-10-28 08:49:31,192.192 INFO    ] 200
[2026-10-28 08:49:31,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:49:31,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:49:31,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:49:31,328.328 INFO    ] No camera update needed
[2026-10-28 08:49:31,331.331 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:49:31,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:49:31,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:49:31,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:49:33,389.389 INFO    ] ================================================
[2026-10-28 08:49:33,405.405 INFO    ] Launching Daemon at Wed Oct 28 08:49:33 IST 2026
[2026-10-28 08:49:33,416.416 INFO    ] ================================================
[2026-10-28 08:49:33,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:49:33
[2026-10-28 08:49:34,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:49:34,832.832 INFO    ] Initializing speech engine...
[2026-10-28 08:49:34,841.841 INFO    ] 2026-10-28 08:49:34
[2026-10-28 08:49:35,086.086 INFO    ] 2026-10-28 08:49:35
[2026-10-28 08:49:35,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:49:35,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:49:35,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:49:35,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:49:35,640.640 INFO    ] time= 28/10/2026 08:49:35
[2026-10-28 08:49:35,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:49:35,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:49:35,818.818 INFO    ] No existing commands found in stream
[2026-10-28 08:49:40,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:49:40,851.851 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-28 08:49:45,398.398 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:49:45,401.401 INFO    ] Checking for system updates...
[2026-10-28 08:49:45,436.436 INFO    ] 200
[2026-10-28 08:49:45,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:49:45,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:49:45,493.493 INFO    ] No update needed
[2026-10-28 08:49:45,496.496 INFO    ] Checking for camera pi updates...
[2026-10-28 08:49:45,530.530 INFO    ] 200
[2026-10-28 08:49:45,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:49:45,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:49:45,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:49:45,668.668 INFO    ] No camera update needed
[2026-10-28 08:49:45,671.671 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:49:45,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:49:45,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:49:45,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:49:47,728.728 INFO    ] ================================================
[2026-10-28 08:49:47,744.744 INFO    ] Launching Daemon at Wed Oct 28 08:49:47 IST 2026
[2026-10-28 08:49:47,755.755 INFO    ] ================================================
[2026-10-28 08:49:48,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:49:48
[2026-10-28 08:49:48,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:49:49,162.162 INFO    ] Initializing speech engine...
[2026-10-28 08:49:49,181.181 INFO    ] 2026-10-28 08:49:49
[2026-10-28 08:49:49,433.433 INFO    ] 2026-10-28 08:49:49
[2026-10-28 08:49:49,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:49:49,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:49:49,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:49:49,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:49:49,983.983 INFO    ] time= 28/10/2026 08:49:49
[2026-10-28 08:49:49,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:49:50,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:49:50,162.162 INFO    ] No existing commands found in stream
[2026-10-28 08:49:55,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:49:55,195.195 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-28 08:49:56,808.808 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:49:56,811.811 INFO    ] Checking for system updates...
[2026-10-28 08:49:56,849.849 INFO    ] 200
[2026-10-28 08:49:56,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:49:56,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:49:56,909.909 INFO    ] No update needed
[2026-10-28 08:49:56,912.912 INFO    ] Checking for camera pi updates...
[2026-10-28 08:49:56,950.950 INFO    ] 200
[2026-10-28 08:49:56,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:49:56,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:49:57,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:49:57,105.105 INFO    ] No camera update needed
[2026-10-28 08:49:57,108.108 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:49:57,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:49:57,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:49:57,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:49:59,165.165 INFO    ] ================================================
[2026-10-28 08:49:59,181.181 INFO    ] Launching Daemon at Wed Oct 28 08:49:59 IST 2026
[2026-10-28 08:49:59,192.192 INFO    ] ================================================
[2026-10-28 08:49:59,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:49:59
[2026-10-28 08:50:00,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:50:00,725.725 INFO    ] Initializing speech engine...
[2026-10-28 08:50:00,732.732 INFO    ] 2026-10-28 08:50:00
[2026-10-28 08:50:00,993.993 INFO    ] 2026-10-28 08:50:00
[2026-10-28 08:50:01,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:50:01,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:50:01,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:50:01,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:50:01,586.586 INFO    ] time= 28/10/2026 08:50:01
[2026-10-28 08:50:01,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:50:01,612.612 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:50:01,735.735 INFO    ] No existing commands found in stream
[2026-10-28 08:50:06,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:50:06,767.767 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-28 08:50:08,988.988 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:50:08,990.990 INFO    ] Checking for system updates...
[2026-10-28 08:50:09,026.026 INFO    ] 200
[2026-10-28 08:50:09,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:50:09,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:50:09,085.085 INFO    ] No update needed
[2026-10-28 08:50:09,087.087 INFO    ] Checking for camera pi updates...
[2026-10-28 08:50:09,122.122 INFO    ] 200
[2026-10-28 08:50:09,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:50:09,166.166 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:50:09,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:50:09,251.251 INFO    ] No camera update needed
[2026-10-28 08:50:09,254.254 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:50:09,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:50:09,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:50:09,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:50:11,311.311 INFO    ] ================================================
[2026-10-28 08:50:11,327.327 INFO    ] Launching Daemon at Wed Oct 28 08:50:11 IST 2026
[2026-10-28 08:50:11,339.339 INFO    ] ================================================
[2026-10-28 08:50:11,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:50:11
[2026-10-28 08:50:12,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:50:12,797.797 INFO    ] Initializing speech engine...
[2026-10-28 08:50:12,807.807 INFO    ] 2026-10-28 08:50:12
[2026-10-28 08:50:13,070.070 INFO    ] 2026-10-28 08:50:13
[2026-10-28 08:50:13,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:50:13,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:50:13,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:50:13,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:50:13,621.621 INFO    ] time= 28/10/2026 08:50:13
[2026-10-28 08:50:13,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:50:13,667.667 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:50:13,777.777 INFO    ] No existing commands found in stream
[2026-10-28 08:50:18,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:50:18,809.809 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-28 08:50:21,534.534 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:50:21,537.537 INFO    ] Checking for system updates...
[2026-10-28 08:50:21,574.574 INFO    ] 200
[2026-10-28 08:50:21,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:50:21,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:50:21,633.633 INFO    ] No update needed
[2026-10-28 08:50:21,636.636 INFO    ] Checking for camera pi updates...
[2026-10-28 08:50:21,675.675 INFO    ] 200
[2026-10-28 08:50:21,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:50:21,724.724 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:50:21,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:50:21,790.790 INFO    ] No camera update needed
[2026-10-28 08:50:21,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:50:21,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:50:21,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:50:21,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:50:23,850.850 INFO    ] ================================================
[2026-10-28 08:50:23,866.866 INFO    ] Launching Daemon at Wed Oct 28 08:50:23 IST 2026
[2026-10-28 08:50:23,876.876 INFO    ] ================================================
[2026-10-28 08:50:24,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:50:24
[2026-10-28 08:50:25,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:50:25,335.335 INFO    ] Initializing speech engine...
[2026-10-28 08:50:25,345.345 INFO    ] 2026-10-28 08:50:25
[2026-10-28 08:50:25,607.607 INFO    ] 2026-10-28 08:50:25
[2026-10-28 08:50:25,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:50:25,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:50:25,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:50:26,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:50:26,154.154 INFO    ] time= 28/10/2026 08:50:26
[2026-10-28 08:50:26,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:50:26,200.200 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:50:26,356.356 INFO    ] No existing commands found in stream
[2026-10-28 08:50:31,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:50:31,389.389 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-28 08:50:32,412.412 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:50:32,415.415 INFO    ] Checking for system updates...
[2026-10-28 08:50:32,455.455 INFO    ] 200
[2026-10-28 08:50:32,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:50:32,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:50:32,520.520 INFO    ] No update needed
[2026-10-28 08:50:32,523.523 INFO    ] Checking for camera pi updates...
[2026-10-28 08:50:32,561.561 INFO    ] 200
[2026-10-28 08:50:32,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:50:32,616.616 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:50:32,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:50:32,728.728 INFO    ] No camera update needed
[2026-10-28 08:50:32,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:50:32,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:50:32,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:50:32,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:50:34,786.786 INFO    ] ================================================
[2026-10-28 08:50:34,802.802 INFO    ] Launching Daemon at Wed Oct 28 08:50:34 IST 2026
[2026-10-28 08:50:34,812.812 INFO    ] ================================================
[2026-10-28 08:50:35,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:50:35
[2026-10-28 08:50:36,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:50:36,322.322 INFO    ] Initializing speech engine...
[2026-10-28 08:50:36,334.334 INFO    ] 2026-10-28 08:50:36
[2026-10-28 08:50:36,617.617 INFO    ] 2026-10-28 08:50:36
[2026-10-28 08:50:36,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:50:36,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:50:36,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:50:37,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:50:37,144.144 INFO    ] time= 28/10/2026 08:50:37
[2026-10-28 08:50:37,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:50:37,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:50:37,291.291 INFO    ] No existing commands found in stream
[2026-10-28 08:50:42,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:50:42,308.308 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 08:50:45,692.692 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:50:45,695.695 INFO    ] Checking for system updates...
[2026-10-28 08:50:45,731.731 INFO    ] 200
[2026-10-28 08:50:45,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:50:45,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:50:45,790.790 INFO    ] No update needed
[2026-10-28 08:50:45,793.793 INFO    ] Checking for camera pi updates...
[2026-10-28 08:50:45,827.827 INFO    ] 200
[2026-10-28 08:50:45,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:50:45,871.871 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:50:45,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:50:45,953.953 INFO    ] No camera update needed
[2026-10-28 08:50:45,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:50:45,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:50:45,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:50:45,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:50:48,014.014 INFO    ] ================================================
[2026-10-28 08:50:48,029.029 INFO    ] Launching Daemon at Wed Oct 28 08:50:48 IST 2026
[2026-10-28 08:50:48,040.040 INFO    ] ================================================
[2026-10-28 08:50:48,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:50:48
[2026-10-28 08:50:49,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:50:49,462.462 INFO    ] Initializing speech engine...
[2026-10-28 08:50:49,472.472 INFO    ] 2026-10-28 08:50:49
[2026-10-28 08:50:49,723.723 INFO    ] 2026-10-28 08:50:49
[2026-10-28 08:50:49,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:50:50,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:50:50,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:50:50,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:50:50,298.298 INFO    ] time= 28/10/2026 08:50:50
[2026-10-28 08:50:50,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:50:50,343.343 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:50:50,466.466 INFO    ] No existing commands found in stream
[2026-10-28 08:50:55,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:50:55,488.488 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 08:50:57,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:50:57,726.726 INFO    ] Checking for system updates...
[2026-10-28 08:50:57,762.762 INFO    ] 200
[2026-10-28 08:50:57,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:50:57,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:50:57,821.821 INFO    ] No update needed
[2026-10-28 08:50:57,823.823 INFO    ] Checking for camera pi updates...
[2026-10-28 08:50:57,856.856 INFO    ] 200
[2026-10-28 08:50:57,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:50:57,904.904 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:50:57,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:50:57,994.994 INFO    ] No camera update needed
[2026-10-28 08:50:57,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:50:57,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:50:58,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:50:58,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:51:00,050.050 INFO    ] ================================================
[2026-10-28 08:51:00,065.065 INFO    ] Launching Daemon at Wed Oct 28 08:51:00 IST 2026
[2026-10-28 08:51:00,077.077 INFO    ] ================================================
[2026-10-28 08:51:00,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:51:00
[2026-10-28 08:51:01,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:51:01,994.994 INFO    ] Initializing speech engine...
[2026-10-28 08:51:01,998.998 INFO    ] 2026-10-28 08:51:01
[2026-10-28 08:51:02,357.357 INFO    ] 2026-10-28 08:51:02
[2026-10-28 08:51:02,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:51:02,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:51:02,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:51:02,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:51:02,990.990 INFO    ] time= 28/10/2026 08:51:02
[2026-10-28 08:51:03,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:51:03,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:51:03,279.279 INFO    ] No existing commands found in stream
[2026-10-28 08:51:08,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:51:08,302.302 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-28 08:51:12,855.855 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:51:12,857.857 INFO    ] Checking for system updates...
[2026-10-28 08:51:12,893.893 INFO    ] 200
[2026-10-28 08:51:12,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:51:12,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:51:12,949.949 INFO    ] No update needed
[2026-10-28 08:51:12,952.952 INFO    ] Checking for camera pi updates...
[2026-10-28 08:51:12,989.989 INFO    ] 200
[2026-10-28 08:51:12,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:51:13,036.036 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:51:13,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:51:13,217.217 INFO    ] No camera update needed
[2026-10-28 08:51:13,219.219 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:51:13,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:51:13,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:51:13,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:51:15,272.272 INFO    ] ================================================
[2026-10-28 08:51:15,287.287 INFO    ] Launching Daemon at Wed Oct 28 08:51:15 IST 2026
[2026-10-28 08:51:15,297.297 INFO    ] ================================================
[2026-10-28 08:51:15,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:51:15
[2026-10-28 08:51:16,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:51:16,703.703 INFO    ] Initializing speech engine...
[2026-10-28 08:51:16,709.709 INFO    ] 2026-10-28 08:51:16
[2026-10-28 08:51:17,001.001 INFO    ] 2026-10-28 08:51:16
[2026-10-28 08:51:17,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:51:17,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:51:17,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:51:17,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:51:17,526.526 INFO    ] time= 28/10/2026 08:51:17
[2026-10-28 08:51:17,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:51:17,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:51:17,760.760 INFO    ] No existing commands found in stream
[2026-10-28 08:51:22,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:51:22,791.791 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-28 08:51:23,828.828 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:51:23,831.831 INFO    ] Checking for system updates...
[2026-10-28 08:51:23,866.866 INFO    ] 200
[2026-10-28 08:51:23,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:51:23,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:51:23,924.924 INFO    ] No update needed
[2026-10-28 08:51:23,927.927 INFO    ] Checking for camera pi updates...
[2026-10-28 08:51:23,961.961 INFO    ] 200
[2026-10-28 08:51:23,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:51:24,006.006 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:51:24,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:51:24,098.098 INFO    ] No camera update needed
[2026-10-28 08:51:24,100.100 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:51:24,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:51:24,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:51:24,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:51:26,155.155 INFO    ] ================================================
[2026-10-28 08:51:26,171.171 INFO    ] Launching Daemon at Wed Oct 28 08:51:26 IST 2026
[2026-10-28 08:51:26,182.182 INFO    ] ================================================
[2026-10-28 08:51:26,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:51:26
[2026-10-28 08:51:27,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:51:27,599.599 INFO    ] Initializing speech engine...
[2026-10-28 08:51:27,613.613 INFO    ] 2026-10-28 08:51:27
[2026-10-28 08:51:27,870.870 INFO    ] 2026-10-28 08:51:27
[2026-10-28 08:51:27,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:51:28,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:51:28,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:51:28,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:51:28,371.371 INFO    ] time= 28/10/2026 08:51:28
[2026-10-28 08:51:28,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:51:28,448.448 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:51:28,598.598 INFO    ] No existing commands found in stream
[2026-10-28 08:51:33,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:51:33,614.614 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 08:51:37,615.615 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:51:37,617.617 INFO    ] Checking for system updates...
[2026-10-28 08:51:37,656.656 INFO    ] 200
[2026-10-28 08:51:37,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:51:37,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:51:37,713.713 INFO    ] No update needed
[2026-10-28 08:51:37,715.715 INFO    ] Checking for camera pi updates...
[2026-10-28 08:51:37,748.748 INFO    ] 200
[2026-10-28 08:51:37,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:51:37,790.790 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:51:37,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:51:37,877.877 INFO    ] No camera update needed
[2026-10-28 08:51:37,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:51:37,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:51:37,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:51:37,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:51:39,932.932 INFO    ] ================================================
[2026-10-28 08:51:39,948.948 INFO    ] Launching Daemon at Wed Oct 28 08:51:39 IST 2026
[2026-10-28 08:51:39,959.959 INFO    ] ================================================
[2026-10-28 08:51:40,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:51:40
[2026-10-28 08:51:41,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:51:41,562.562 INFO    ] Initializing speech engine...
[2026-10-28 08:51:41,575.575 INFO    ] 2026-10-28 08:51:41
[2026-10-28 08:51:41,848.848 INFO    ] 2026-10-28 08:51:41
[2026-10-28 08:51:41,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:51:42,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:51:42,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:51:42,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:51:42,603.603 INFO    ] time= 28/10/2026 08:51:42
[2026-10-28 08:51:42,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:51:42,732.732 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:51:42,894.894 INFO    ] No existing commands found in stream
[2026-10-28 08:51:47,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:51:47,912.912 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-28 08:51:48,471.471 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:51:48,473.473 INFO    ] Checking for system updates...
[2026-10-28 08:51:48,509.509 INFO    ] 200
[2026-10-28 08:51:48,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:51:48,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:51:48,571.571 INFO    ] No update needed
[2026-10-28 08:51:48,573.573 INFO    ] Checking for camera pi updates...
[2026-10-28 08:51:48,607.607 INFO    ] 200
[2026-10-28 08:51:48,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:51:48,656.656 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:51:48,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:51:48,711.711 INFO    ] No camera update needed
[2026-10-28 08:51:48,714.714 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:51:48,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:51:48,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:51:48,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:51:50,769.769 INFO    ] ================================================
[2026-10-28 08:51:50,789.789 INFO    ] Launching Daemon at Wed Oct 28 08:51:50 IST 2026
[2026-10-28 08:51:50,805.805 INFO    ] ================================================
[2026-10-28 08:51:51,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:51:51
[2026-10-28 08:51:51,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:51:52,269.269 INFO    ] Initializing speech engine...
[2026-10-28 08:51:52,279.279 INFO    ] 2026-10-28 08:51:52
[2026-10-28 08:51:52,542.542 INFO    ] 2026-10-28 08:51:52
[2026-10-28 08:51:52,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:51:52,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:51:52,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:51:53,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:51:53,132.132 INFO    ] time= 28/10/2026 08:51:53
[2026-10-28 08:51:53,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:51:53,160.160 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:51:53,336.336 INFO    ] No existing commands found in stream
[2026-10-28 08:51:58,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:51:58,349.349 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-28 08:51:59,428.428 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:51:59,430.430 INFO    ] Checking for system updates...
[2026-10-28 08:51:59,465.465 INFO    ] 200
[2026-10-28 08:51:59,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:51:59,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:51:59,522.522 INFO    ] No update needed
[2026-10-28 08:51:59,524.524 INFO    ] Checking for camera pi updates...
[2026-10-28 08:51:59,557.557 INFO    ] 200
[2026-10-28 08:51:59,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:51:59,600.600 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:51:59,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:51:59,682.682 INFO    ] No camera update needed
[2026-10-28 08:51:59,685.685 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:51:59,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:51:59,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:51:59,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:52:01,756.756 INFO    ] ================================================
[2026-10-28 08:52:01,808.808 INFO    ] Launching Daemon at Wed Oct 28 08:52:01 IST 2026
[2026-10-28 08:52:01,825.825 INFO    ] ================================================
[2026-10-28 08:52:02,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:52:02
[2026-10-28 08:52:03,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:52:03,543.543 INFO    ] Initializing speech engine...
[2026-10-28 08:52:03,549.549 INFO    ] 2026-10-28 08:52:03
[2026-10-28 08:52:03,810.810 INFO    ] 2026-10-28 08:52:03
[2026-10-28 08:52:03,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:52:04,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:52:04,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:52:04,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:52:04,430.430 INFO    ] time= 28/10/2026 08:52:04
[2026-10-28 08:52:04,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:52:04,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:52:04,623.623 INFO    ] No existing commands found in stream
[2026-10-28 08:52:09,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:52:09,641.641 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-28 08:52:13,601.601 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:52:13,603.603 INFO    ] Checking for system updates...
[2026-10-28 08:52:13,638.638 INFO    ] 200
[2026-10-28 08:52:13,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:52:13,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:52:13,698.698 INFO    ] No update needed
[2026-10-28 08:52:13,701.701 INFO    ] Checking for camera pi updates...
[2026-10-28 08:52:13,734.734 INFO    ] 200
[2026-10-28 08:52:13,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:52:13,777.777 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:52:13,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:52:13,859.859 INFO    ] No camera update needed
[2026-10-28 08:52:13,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:52:13,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:52:13,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:52:13,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:52:15,914.914 INFO    ] ================================================
[2026-10-28 08:52:15,930.930 INFO    ] Launching Daemon at Wed Oct 28 08:52:15 IST 2026
[2026-10-28 08:52:15,940.940 INFO    ] ================================================
[2026-10-28 08:52:16,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:52:16
[2026-10-28 08:52:17,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:52:17,392.392 INFO    ] Initializing speech engine...
[2026-10-28 08:52:17,399.399 INFO    ] 2026-10-28 08:52:17
[2026-10-28 08:52:17,660.660 INFO    ] 2026-10-28 08:52:17
[2026-10-28 08:52:17,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:52:17,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:52:17,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:52:18,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:52:18,219.219 INFO    ] time= 28/10/2026 08:52:18
[2026-10-28 08:52:18,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:52:18,255.255 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:52:18,362.362 INFO    ] No existing commands found in stream
[2026-10-28 08:52:23,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:52:23,391.391 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-28 08:52:27,546.546 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:52:27,549.549 INFO    ] Checking for system updates...
[2026-10-28 08:52:27,585.585 INFO    ] 200
[2026-10-28 08:52:27,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:52:27,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:52:27,647.647 INFO    ] No update needed
[2026-10-28 08:52:27,650.650 INFO    ] Checking for camera pi updates...
[2026-10-28 08:52:27,683.683 INFO    ] 200
[2026-10-28 08:52:27,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:52:27,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:52:27,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:52:27,812.812 INFO    ] No camera update needed
[2026-10-28 08:52:27,815.815 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:52:27,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:52:27,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:52:27,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:52:29,869.869 INFO    ] ================================================
[2026-10-28 08:52:29,885.885 INFO    ] Launching Daemon at Wed Oct 28 08:52:29 IST 2026
[2026-10-28 08:52:29,895.895 INFO    ] ================================================
[2026-10-28 08:52:30,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:52:30
[2026-10-28 08:52:31,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:52:31,468.468 INFO    ] Initializing speech engine...
[2026-10-28 08:52:31,484.484 INFO    ] 2026-10-28 08:52:31
[2026-10-28 08:52:31,778.778 INFO    ] 2026-10-28 08:52:31
[2026-10-28 08:52:31,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:52:32,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:52:32,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:52:32,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:52:32,391.391 INFO    ] time= 28/10/2026 08:52:32
[2026-10-28 08:52:32,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:52:32,418.418 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:52:32,558.558 INFO    ] No existing commands found in stream
[2026-10-28 08:52:37,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:52:37,575.575 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-28 08:52:40,626.626 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:52:40,629.629 INFO    ] Checking for system updates...
[2026-10-28 08:52:40,665.665 INFO    ] 200
[2026-10-28 08:52:40,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:52:40,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:52:40,721.721 INFO    ] No update needed
[2026-10-28 08:52:40,724.724 INFO    ] Checking for camera pi updates...
[2026-10-28 08:52:40,760.760 INFO    ] 200
[2026-10-28 08:52:40,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:52:40,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:52:40,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:52:40,888.888 INFO    ] No camera update needed
[2026-10-28 08:52:40,890.890 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:52:40,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:52:40,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:52:40,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:52:42,943.943 INFO    ] ================================================
[2026-10-28 08:52:42,958.958 INFO    ] Launching Daemon at Wed Oct 28 08:52:42 IST 2026
[2026-10-28 08:52:42,968.968 INFO    ] ================================================
[2026-10-28 08:52:43,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:52:43
[2026-10-28 08:52:44,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:52:44,412.412 INFO    ] Initializing speech engine...
[2026-10-28 08:52:44,425.425 INFO    ] 2026-10-28 08:52:44
[2026-10-28 08:52:44,713.713 INFO    ] 2026-10-28 08:52:44
[2026-10-28 08:52:44,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:52:44,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:52:44,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:52:45,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:52:45,133.133 INFO    ] time= 28/10/2026 08:52:45
[2026-10-28 08:52:45,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:52:45,189.189 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:52:45,358.358 INFO    ] No existing commands found in stream
[2026-10-28 08:52:50,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:52:50,372.372 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-28 08:52:54,510.510 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:52:54,512.512 INFO    ] Checking for system updates...
[2026-10-28 08:52:54,548.548 INFO    ] 200
[2026-10-28 08:52:54,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:52:54,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:52:54,604.604 INFO    ] No update needed
[2026-10-28 08:52:54,607.607 INFO    ] Checking for camera pi updates...
[2026-10-28 08:52:54,640.640 INFO    ] 200
[2026-10-28 08:52:54,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:52:54,684.684 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:52:54,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:52:54,770.770 INFO    ] No camera update needed
[2026-10-28 08:52:54,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:52:54,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:52:54,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:52:54,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:52:56,825.825 INFO    ] ================================================
[2026-10-28 08:52:56,841.841 INFO    ] Launching Daemon at Wed Oct 28 08:52:56 IST 2026
[2026-10-28 08:52:56,851.851 INFO    ] ================================================
[2026-10-28 08:52:57,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:52:57
[2026-10-28 08:52:58,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:52:58,482.482 INFO    ] Initializing speech engine...
[2026-10-28 08:52:58,492.492 INFO    ] 2026-10-28 08:52:58
[2026-10-28 08:52:58,773.773 INFO    ] 2026-10-28 08:52:58
[2026-10-28 08:52:58,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:52:59,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:52:59,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:52:59,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:52:59,351.351 INFO    ] time= 28/10/2026 08:52:59
[2026-10-28 08:52:59,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:52:59,390.390 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:52:59,506.506 INFO    ] No existing commands found in stream
[2026-10-28 08:53:04,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:53:04,534.534 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-28 08:53:09,033.033 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:53:09,036.036 INFO    ] Checking for system updates...
[2026-10-28 08:53:09,073.073 INFO    ] 200
[2026-10-28 08:53:09,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:53:09,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:53:09,134.134 INFO    ] No update needed
[2026-10-28 08:53:09,137.137 INFO    ] Checking for camera pi updates...
[2026-10-28 08:53:09,172.172 INFO    ] 200
[2026-10-28 08:53:09,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:53:09,221.221 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:53:09,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:53:09,310.310 INFO    ] No camera update needed
[2026-10-28 08:53:09,312.312 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:53:09,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:53:09,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:53:09,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:53:11,365.365 INFO    ] ================================================
[2026-10-28 08:53:11,380.380 INFO    ] Launching Daemon at Wed Oct 28 08:53:11 IST 2026
[2026-10-28 08:53:11,391.391 INFO    ] ================================================
[2026-10-28 08:53:11,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:53:11
[2026-10-28 08:53:12,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:53:12,808.808 INFO    ] Initializing speech engine...
[2026-10-28 08:53:12,827.827 INFO    ] 2026-10-28 08:53:12
[2026-10-28 08:53:13,074.074 INFO    ] 2026-10-28 08:53:13
[2026-10-28 08:53:13,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:53:13,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:53:13,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:53:13,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:53:13,640.640 INFO    ] time= 28/10/2026 08:53:13
[2026-10-28 08:53:13,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:53:13,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:53:13,795.795 INFO    ] No existing commands found in stream
[2026-10-28 08:53:18,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:53:18,822.822 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 08:53:21,266.266 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:53:21,268.268 INFO    ] Checking for system updates...
[2026-10-28 08:53:21,304.304 INFO    ] 200
[2026-10-28 08:53:21,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:53:21,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:53:21,361.361 INFO    ] No update needed
[2026-10-28 08:53:21,363.363 INFO    ] Checking for camera pi updates...
[2026-10-28 08:53:21,396.396 INFO    ] 200
[2026-10-28 08:53:21,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:53:21,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:53:21,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:53:21,620.620 INFO    ] No camera update needed
[2026-10-28 08:53:21,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:53:21,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:53:21,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:53:21,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:53:23,678.678 INFO    ] ================================================
[2026-10-28 08:53:23,693.693 INFO    ] Launching Daemon at Wed Oct 28 08:53:23 IST 2026
[2026-10-28 08:53:23,704.704 INFO    ] ================================================
[2026-10-28 08:53:24,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:53:24
[2026-10-28 08:53:24,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:53:25,126.126 INFO    ] Initializing speech engine...
[2026-10-28 08:53:25,142.142 INFO    ] 2026-10-28 08:53:25
[2026-10-28 08:53:25,415.415 INFO    ] 2026-10-28 08:53:25
[2026-10-28 08:53:25,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:53:25,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:53:25,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:53:25,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:53:26,025.025 INFO    ] time= 28/10/2026 08:53:25
[2026-10-28 08:53:26,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:53:26,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:53:26,227.227 INFO    ] No existing commands found in stream
[2026-10-28 08:53:31,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:53:31,243.243 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-28 08:53:32,853.853 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:53:32,856.856 INFO    ] Checking for system updates...
[2026-10-28 08:53:32,894.894 INFO    ] 200
[2026-10-28 08:53:32,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:53:32,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:53:32,959.959 INFO    ] No update needed
[2026-10-28 08:53:32,961.961 INFO    ] Checking for camera pi updates...
[2026-10-28 08:53:32,999.999 INFO    ] 200
[2026-10-28 08:53:33,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:53:33,048.048 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:53:33,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:53:33,151.151 INFO    ] No camera update needed
[2026-10-28 08:53:33,154.154 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:53:33,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:53:33,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:53:33,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:53:35,207.207 INFO    ] ================================================
[2026-10-28 08:53:35,222.222 INFO    ] Launching Daemon at Wed Oct 28 08:53:35 IST 2026
[2026-10-28 08:53:35,233.233 INFO    ] ================================================
[2026-10-28 08:53:35,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:53:35
[2026-10-28 08:53:36,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:53:36,651.651 INFO    ] Initializing speech engine...
[2026-10-28 08:53:36,660.660 INFO    ] 2026-10-28 08:53:36
[2026-10-28 08:53:36,910.910 INFO    ] 2026-10-28 08:53:36
[2026-10-28 08:53:36,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:53:37,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:53:37,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:53:37,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:53:37,478.478 INFO    ] time= 28/10/2026 08:53:37
[2026-10-28 08:53:37,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:53:37,519.519 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:53:37,635.635 INFO    ] No existing commands found in stream
[2026-10-28 08:53:42,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:53:42,657.657 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 08:53:46,284.284 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:53:46,287.287 INFO    ] Checking for system updates...
[2026-10-28 08:53:46,322.322 INFO    ] 200
[2026-10-28 08:53:46,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:53:46,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:53:46,378.378 INFO    ] No update needed
[2026-10-28 08:53:46,381.381 INFO    ] Checking for camera pi updates...
[2026-10-28 08:53:46,415.415 INFO    ] 200
[2026-10-28 08:53:46,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:53:46,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:53:46,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:53:46,545.545 INFO    ] No camera update needed
[2026-10-28 08:53:46,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:53:46,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:53:46,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:53:46,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:53:48,602.602 INFO    ] ================================================
[2026-10-28 08:53:48,617.617 INFO    ] Launching Daemon at Wed Oct 28 08:53:48 IST 2026
[2026-10-28 08:53:48,628.628 INFO    ] ================================================
[2026-10-28 08:53:49,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:53:49
[2026-10-28 08:53:49,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:53:50,267.267 INFO    ] Initializing speech engine...
[2026-10-28 08:53:50,274.274 INFO    ] 2026-10-28 08:53:50
[2026-10-28 08:53:50,519.519 INFO    ] 2026-10-28 08:53:50
[2026-10-28 08:53:50,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:53:50,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:53:50,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:53:51,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:53:51,075.075 INFO    ] time= 28/10/2026 08:53:51
[2026-10-28 08:53:51,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:53:51,098.098 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:53:51,234.234 INFO    ] No existing commands found in stream
[2026-10-28 08:53:56,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:53:56,268.268 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-28 08:53:59,829.829 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:53:59,831.831 INFO    ] Checking for system updates...
[2026-10-28 08:53:59,867.867 INFO    ] 200
[2026-10-28 08:53:59,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:53:59,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:53:59,926.926 INFO    ] No update needed
[2026-10-28 08:53:59,928.928 INFO    ] Checking for camera pi updates...
[2026-10-28 08:53:59,962.962 INFO    ] 200
[2026-10-28 08:53:59,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:54:00,005.005 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:54:00,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:54:00,104.104 INFO    ] No camera update needed
[2026-10-28 08:54:00,106.106 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:54:00,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:54:00,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:54:00,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:54:02,174.174 INFO    ] ================================================
[2026-10-28 08:54:02,205.205 INFO    ] Launching Daemon at Wed Oct 28 08:54:02 IST 2026
[2026-10-28 08:54:02,221.221 INFO    ] ================================================
[2026-10-28 08:54:02,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:54:02
[2026-10-28 08:54:03,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:54:03,842.842 INFO    ] Initializing speech engine...
[2026-10-28 08:54:03,852.852 INFO    ] 2026-10-28 08:54:03
[2026-10-28 08:54:04,146.146 INFO    ] 2026-10-28 08:54:04
[2026-10-28 08:54:04,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:54:04,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:54:04,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:54:04,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:54:04,703.703 INFO    ] time= 28/10/2026 08:54:04
[2026-10-28 08:54:04,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:54:04,739.739 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:54:04,880.880 INFO    ] No existing commands found in stream
[2026-10-28 08:54:09,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:54:09,914.914 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 08:54:13,297.297 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:54:13,300.300 INFO    ] Checking for system updates...
[2026-10-28 08:54:13,336.336 INFO    ] 200
[2026-10-28 08:54:13,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:54:13,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:54:13,401.401 INFO    ] No update needed
[2026-10-28 08:54:13,404.404 INFO    ] Checking for camera pi updates...
[2026-10-28 08:54:13,438.438 INFO    ] 200
[2026-10-28 08:54:13,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:54:13,486.486 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:54:13,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:54:13,579.579 INFO    ] No camera update needed
[2026-10-28 08:54:13,581.581 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:54:13,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:54:13,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:54:13,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:54:15,633.633 INFO    ] ================================================
[2026-10-28 08:54:15,648.648 INFO    ] Launching Daemon at Wed Oct 28 08:54:15 IST 2026
[2026-10-28 08:54:15,658.658 INFO    ] ================================================
[2026-10-28 08:54:16,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:54:16
[2026-10-28 08:54:16,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:54:17,109.109 INFO    ] Initializing speech engine...
[2026-10-28 08:54:17,119.119 INFO    ] 2026-10-28 08:54:17
[2026-10-28 08:54:17,384.384 INFO    ] 2026-10-28 08:54:17
[2026-10-28 08:54:17,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:54:17,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:54:17,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:54:17,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:54:17,925.925 INFO    ] time= 28/10/2026 08:54:17
[2026-10-28 08:54:17,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:54:17,949.949 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:54:18,077.077 INFO    ] No existing commands found in stream
[2026-10-28 08:54:23,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:54:23,098.098 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-28 08:54:26,719.719 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:54:26,722.722 INFO    ] Checking for system updates...
[2026-10-28 08:54:26,757.757 INFO    ] 200
[2026-10-28 08:54:26,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:54:26,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:54:26,815.815 INFO    ] No update needed
[2026-10-28 08:54:26,818.818 INFO    ] Checking for camera pi updates...
[2026-10-28 08:54:26,852.852 INFO    ] 200
[2026-10-28 08:54:26,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:54:26,899.899 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:54:26,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:54:26,986.986 INFO    ] No camera update needed
[2026-10-28 08:54:26,988.988 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:54:26,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:54:26,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:54:27,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:54:29,042.042 INFO    ] ================================================
[2026-10-28 08:54:29,058.058 INFO    ] Launching Daemon at Wed Oct 28 08:54:29 IST 2026
[2026-10-28 08:54:29,069.069 INFO    ] ================================================
[2026-10-28 08:54:29,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:54:29
[2026-10-28 08:54:30,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:54:30,512.512 INFO    ] Initializing speech engine...
[2026-10-28 08:54:30,521.521 INFO    ] 2026-10-28 08:54:30
[2026-10-28 08:54:30,771.771 INFO    ] 2026-10-28 08:54:30
[2026-10-28 08:54:30,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:54:31,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:54:31,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:54:31,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:54:31,345.345 INFO    ] time= 28/10/2026 08:54:31
[2026-10-28 08:54:31,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:54:31,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:54:31,539.539 INFO    ] No existing commands found in stream
[2026-10-28 08:54:36,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:54:36,554.554 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-28 08:54:37,789.789 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:54:37,791.791 INFO    ] Checking for system updates...
[2026-10-28 08:54:37,827.827 INFO    ] 200
[2026-10-28 08:54:37,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:54:37,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:54:37,884.884 INFO    ] No update needed
[2026-10-28 08:54:37,886.886 INFO    ] Checking for camera pi updates...
[2026-10-28 08:54:37,919.919 INFO    ] 200
[2026-10-28 08:54:37,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:54:37,965.965 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:54:38,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:54:38,092.092 INFO    ] No camera update needed
[2026-10-28 08:54:38,094.094 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:54:38,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:54:38,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:54:38,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:54:40,147.147 INFO    ] ================================================
[2026-10-28 08:54:40,163.163 INFO    ] Launching Daemon at Wed Oct 28 08:54:40 IST 2026
[2026-10-28 08:54:40,174.174 INFO    ] ================================================
[2026-10-28 08:54:40,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:54:40
[2026-10-28 08:54:41,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:54:41,587.587 INFO    ] Initializing speech engine...
[2026-10-28 08:54:41,595.595 INFO    ] 2026-10-28 08:54:41
[2026-10-28 08:54:41,840.840 INFO    ] 2026-10-28 08:54:41
[2026-10-28 08:54:41,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:54:42,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:54:42,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:54:42,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:54:42,300.300 INFO    ] time= 28/10/2026 08:54:42
[2026-10-28 08:54:42,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:54:42,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:54:42,531.531 INFO    ] No existing commands found in stream
[2026-10-28 08:54:47,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:54:47,547.547 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-28 08:54:48,289.289 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:54:48,291.291 INFO    ] Checking for system updates...
[2026-10-28 08:54:48,331.331 INFO    ] 200
[2026-10-28 08:54:48,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:54:48,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:54:48,388.388 INFO    ] No update needed
[2026-10-28 08:54:48,390.390 INFO    ] Checking for camera pi updates...
[2026-10-28 08:54:48,427.427 INFO    ] 200
[2026-10-28 08:54:48,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:54:48,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:54:48,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:54:48,576.576 INFO    ] No camera update needed
[2026-10-28 08:54:48,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:54:48,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:54:48,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:54:48,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:54:50,632.632 INFO    ] ================================================
[2026-10-28 08:54:50,648.648 INFO    ] Launching Daemon at Wed Oct 28 08:54:50 IST 2026
[2026-10-28 08:54:50,659.659 INFO    ] ================================================
[2026-10-28 08:54:51,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:54:51
[2026-10-28 08:54:51,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:54:52,083.083 INFO    ] Initializing speech engine...
[2026-10-28 08:54:52,103.103 INFO    ] 2026-10-28 08:54:52
[2026-10-28 08:54:52,373.373 INFO    ] 2026-10-28 08:54:52
[2026-10-28 08:54:52,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:54:52,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:54:52,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:54:52,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:54:53,003.003 INFO    ] time= 28/10/2026 08:54:52
[2026-10-28 08:54:53,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:54:53,032.032 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:54:53,149.149 INFO    ] No existing commands found in stream
[2026-10-28 08:54:58,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:54:58,172.172 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-28 08:55:01,220.220 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:55:01,224.224 INFO    ] Checking for system updates...
[2026-10-28 08:55:01,362.362 INFO    ] 200
[2026-10-28 08:55:01,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:55:01,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:55:01,585.585 INFO    ] No update needed
[2026-10-28 08:55:01,589.589 INFO    ] Checking for camera pi updates...
[2026-10-28 08:55:01,638.638 INFO    ] 200
[2026-10-28 08:55:01,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:55:01,715.715 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:55:01,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:55:01,970.970 INFO    ] No camera update needed
[2026-10-28 08:55:01,973.973 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:55:01,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:55:01,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:55:01,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:55:04,036.036 INFO    ] ================================================
[2026-10-28 08:55:04,051.051 INFO    ] Launching Daemon at Wed Oct 28 08:55:04 IST 2026
[2026-10-28 08:55:04,062.062 INFO    ] ================================================
[2026-10-28 08:55:04,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:55:04
[2026-10-28 08:55:05,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:55:05,475.475 INFO    ] Initializing speech engine...
[2026-10-28 08:55:05,484.484 INFO    ] 2026-10-28 08:55:05
[2026-10-28 08:55:05,776.776 INFO    ] 2026-10-28 08:55:05
[2026-10-28 08:55:05,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:55:06,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:55:06,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:55:06,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:55:06,332.332 INFO    ] time= 28/10/2026 08:55:06
[2026-10-28 08:55:06,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:55:06,414.414 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:55:06,540.540 INFO    ] No existing commands found in stream
[2026-10-28 08:55:11,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:55:11,562.562 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-28 08:55:15,030.030 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:55:15,033.033 INFO    ] Checking for system updates...
[2026-10-28 08:55:15,068.068 INFO    ] 200
[2026-10-28 08:55:15,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:55:15,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:55:15,126.126 INFO    ] No update needed
[2026-10-28 08:55:15,132.132 INFO    ] Checking for camera pi updates...
[2026-10-28 08:55:15,169.169 INFO    ] 200
[2026-10-28 08:55:15,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:55:15,214.214 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:55:15,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:55:15,318.318 INFO    ] No camera update needed
[2026-10-28 08:55:15,321.321 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:55:15,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:55:15,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:55:15,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:55:17,377.377 INFO    ] ================================================
[2026-10-28 08:55:17,394.394 INFO    ] Launching Daemon at Wed Oct 28 08:55:17 IST 2026
[2026-10-28 08:55:17,405.405 INFO    ] ================================================
[2026-10-28 08:55:18,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:55:18
[2026-10-28 08:55:18,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:55:19,061.061 INFO    ] Initializing speech engine...
[2026-10-28 08:55:19,073.073 INFO    ] 2026-10-28 08:55:19
[2026-10-28 08:55:19,358.358 INFO    ] 2026-10-28 08:55:19
[2026-10-28 08:55:19,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:55:19,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:55:19,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:55:19,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:55:19,924.924 INFO    ] time= 28/10/2026 08:55:19
[2026-10-28 08:55:19,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:55:19,963.963 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:55:20,090.090 INFO    ] No existing commands found in stream
[2026-10-28 08:55:25,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:55:25,129.129 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-28 08:55:28,955.955 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:55:28,958.958 INFO    ] Checking for system updates...
[2026-10-28 08:55:28,995.995 INFO    ] 200
[2026-10-28 08:55:28,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:55:29,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:55:29,055.055 INFO    ] No update needed
[2026-10-28 08:55:29,058.058 INFO    ] Checking for camera pi updates...
[2026-10-28 08:55:29,097.097 INFO    ] 200
[2026-10-28 08:55:29,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:55:29,146.146 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:55:29,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:55:29,329.329 INFO    ] No camera update needed
[2026-10-28 08:55:29,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:55:29,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:55:29,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:55:29,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:55:31,392.392 INFO    ] ================================================
[2026-10-28 08:55:31,409.409 INFO    ] Launching Daemon at Wed Oct 28 08:55:31 IST 2026
[2026-10-28 08:55:31,420.420 INFO    ] ================================================
[2026-10-28 08:55:32,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:55:32
[2026-10-28 08:55:32,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:55:33,140.140 INFO    ] Initializing speech engine...
[2026-10-28 08:55:33,148.148 INFO    ] 2026-10-28 08:55:33
[2026-10-28 08:55:33,442.442 INFO    ] 2026-10-28 08:55:33
[2026-10-28 08:55:33,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:55:33,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:55:33,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:55:34,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:55:34,025.025 INFO    ] time= 28/10/2026 08:55:34
[2026-10-28 08:55:34,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:55:34,124.124 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:55:34,293.293 INFO    ] No existing commands found in stream
[2026-10-28 08:55:39,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:55:39,322.322 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-28 08:55:42,567.567 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:55:42,569.569 INFO    ] Checking for system updates...
[2026-10-28 08:55:42,607.607 INFO    ] 200
[2026-10-28 08:55:42,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:55:42,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:55:42,666.666 INFO    ] No update needed
[2026-10-28 08:55:42,668.668 INFO    ] Checking for camera pi updates...
[2026-10-28 08:55:42,703.703 INFO    ] 200
[2026-10-28 08:55:42,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:55:42,747.747 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:55:42,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:55:42,832.832 INFO    ] No camera update needed
[2026-10-28 08:55:42,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:55:42,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:55:42,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:55:42,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:55:44,893.893 INFO    ] ================================================
[2026-10-28 08:55:44,908.908 INFO    ] Launching Daemon at Wed Oct 28 08:55:44 IST 2026
[2026-10-28 08:55:44,919.919 INFO    ] ================================================
[2026-10-28 08:55:45,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:55:45
[2026-10-28 08:55:46,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:55:46,558.558 INFO    ] Initializing speech engine...
[2026-10-28 08:55:46,570.570 INFO    ] 2026-10-28 08:55:46
[2026-10-28 08:55:46,845.845 INFO    ] 2026-10-28 08:55:46
[2026-10-28 08:55:46,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:55:47,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:55:47,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:55:47,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:55:47,415.415 INFO    ] time= 28/10/2026 08:55:47
[2026-10-28 08:55:47,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:55:47,466.466 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:55:47,605.605 INFO    ] No existing commands found in stream
[2026-10-28 08:55:52,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:55:52,640.640 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-28 08:55:55,129.129 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:55:55,132.132 INFO    ] Checking for system updates...
[2026-10-28 08:55:55,173.173 INFO    ] 200
[2026-10-28 08:55:55,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:55:55,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:55:55,238.238 INFO    ] No update needed
[2026-10-28 08:55:55,241.241 INFO    ] Checking for camera pi updates...
[2026-10-28 08:55:55,276.276 INFO    ] 200
[2026-10-28 08:55:55,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:55:55,325.325 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:55:55,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:55:55,409.409 INFO    ] No camera update needed
[2026-10-28 08:55:55,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:55:55,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:55:55,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:55:55,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:55:57,470.470 INFO    ] ================================================
[2026-10-28 08:55:57,485.485 INFO    ] Launching Daemon at Wed Oct 28 08:55:57 IST 2026
[2026-10-28 08:55:57,496.496 INFO    ] ================================================
[2026-10-28 08:55:58,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:55:58
[2026-10-28 08:55:58,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:55:58,908.908 INFO    ] Initializing speech engine...
[2026-10-28 08:55:58,917.917 INFO    ] 2026-10-28 08:55:58
[2026-10-28 08:55:59,211.211 INFO    ] 2026-10-28 08:55:59
[2026-10-28 08:55:59,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:55:59,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:55:59,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:55:59,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:55:59,734.734 INFO    ] time= 28/10/2026 08:55:59
[2026-10-28 08:55:59,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:55:59,848.848 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:55:59,990.990 INFO    ] No existing commands found in stream
[2026-10-28 08:56:05,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:56:05,011.011 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 08:56:08,556.556 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 08:56:08,559.559 INFO    ] Checking for system updates...
[2026-10-28 08:56:08,595.595 INFO    ] 200
[2026-10-28 08:56:08,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:56:08,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:56:08,658.658 INFO    ] No update needed
[2026-10-28 08:56:08,660.660 INFO    ] Checking for camera pi updates...
[2026-10-28 08:56:08,694.694 INFO    ] 200
[2026-10-28 08:56:08,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:56:08,737.737 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:56:08,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:56:08,824.824 INFO    ] No camera update needed
[2026-10-28 08:56:08,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:56:08,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:56:08,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:56:08,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:56:10,879.879 INFO    ] ================================================
[2026-10-28 08:56:10,895.895 INFO    ] Launching Daemon at Wed Oct 28 08:56:10 IST 2026
[2026-10-28 08:56:10,906.906 INFO    ] ================================================
[2026-10-28 08:56:11,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:56:11
[2026-10-28 08:56:12,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:56:12,298.298 INFO    ] Initializing speech engine...
[2026-10-28 08:56:12,312.312 INFO    ] 2026-10-28 08:56:12
[2026-10-28 08:56:12,581.581 INFO    ] 2026-10-28 08:56:12
[2026-10-28 08:56:12,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:56:12,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:56:12,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:56:13,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:56:13,137.137 INFO    ] time= 28/10/2026 08:56:13
[2026-10-28 08:56:13,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:56:13,160.160 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:56:13,283.283 INFO    ] No existing commands found in stream
[2026-10-28 08:56:18,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:56:18,307.307 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 08:56:21,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 08:56:21,842.842 INFO    ] Checking for system updates...
[2026-10-28 08:56:21,878.878 INFO    ] 200
[2026-10-28 08:56:21,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:56:21,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:56:21,935.935 INFO    ] No update needed
[2026-10-28 08:56:21,938.938 INFO    ] Checking for camera pi updates...
[2026-10-28 08:56:21,971.971 INFO    ] 200
[2026-10-28 08:56:21,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:56:22,015.015 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:56:22,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:56:22,102.102 INFO    ] No camera update needed
[2026-10-28 08:56:22,105.105 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:56:22,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:56:22,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:56:22,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:56:24,159.159 INFO    ] ================================================
[2026-10-28 08:56:24,174.174 INFO    ] Launching Daemon at Wed Oct 28 08:56:24 IST 2026
[2026-10-28 08:56:24,184.184 INFO    ] ================================================
[2026-10-28 08:56:24,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:56:24
[2026-10-28 08:56:25,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:56:25,636.636 INFO    ] Initializing speech engine...
[2026-10-28 08:56:25,652.652 INFO    ] 2026-10-28 08:56:25
[2026-10-28 08:56:25,944.944 INFO    ] 2026-10-28 08:56:25
[2026-10-28 08:56:25,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:56:26,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:56:26,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:56:26,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:56:26,456.456 INFO    ] time= 28/10/2026 08:56:26
[2026-10-28 08:56:26,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:56:26,580.580 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:56:26,741.741 INFO    ] No existing commands found in stream
[2026-10-28 08:56:31,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:56:31,769.769 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-28 08:56:34,600.600 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:56:34,602.602 INFO    ] Checking for system updates...
[2026-10-28 08:56:34,638.638 INFO    ] 200
[2026-10-28 08:56:34,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:56:34,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:56:34,695.695 INFO    ] No update needed
[2026-10-28 08:56:34,697.697 INFO    ] Checking for camera pi updates...
[2026-10-28 08:56:34,730.730 INFO    ] 200
[2026-10-28 08:56:34,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:56:34,774.774 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:56:34,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:56:34,857.857 INFO    ] No camera update needed
[2026-10-28 08:56:34,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:56:34,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:56:34,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:56:34,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:56:36,913.913 INFO    ] ================================================
[2026-10-28 08:56:36,928.928 INFO    ] Launching Daemon at Wed Oct 28 08:56:36 IST 2026
[2026-10-28 08:56:36,939.939 INFO    ] ================================================
[2026-10-28 08:56:37,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:56:37
[2026-10-28 08:56:38,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:56:38,370.370 INFO    ] Initializing speech engine...
[2026-10-28 08:56:38,384.384 INFO    ] 2026-10-28 08:56:38
[2026-10-28 08:56:38,640.640 INFO    ] 2026-10-28 08:56:38
[2026-10-28 08:56:38,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:56:38,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:56:38,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:56:39,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:56:39,211.211 INFO    ] time= 28/10/2026 08:56:39
[2026-10-28 08:56:39,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:56:39,259.259 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:56:39,379.379 INFO    ] No existing commands found in stream
[2026-10-28 08:56:44,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:56:44,406.406 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 08:56:46,107.107 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:56:46,109.109 INFO    ] Checking for system updates...
[2026-10-28 08:56:46,146.146 INFO    ] 200
[2026-10-28 08:56:46,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:56:46,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:56:46,204.204 INFO    ] No update needed
[2026-10-28 08:56:46,207.207 INFO    ] Checking for camera pi updates...
[2026-10-28 08:56:46,244.244 INFO    ] 200
[2026-10-28 08:56:46,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:56:46,287.287 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:56:46,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:56:46,395.395 INFO    ] No camera update needed
[2026-10-28 08:56:46,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:56:46,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:56:46,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:56:46,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:56:48,451.451 INFO    ] ================================================
[2026-10-28 08:56:48,466.466 INFO    ] Launching Daemon at Wed Oct 28 08:56:48 IST 2026
[2026-10-28 08:56:48,476.476 INFO    ] ================================================
[2026-10-28 08:56:49,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:56:49
[2026-10-28 08:56:49,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:56:49,897.897 INFO    ] Initializing speech engine...
[2026-10-28 08:56:49,905.905 INFO    ] 2026-10-28 08:56:49
[2026-10-28 08:56:50,156.156 INFO    ] 2026-10-28 08:56:50
[2026-10-28 08:56:50,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:56:50,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:56:50,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:56:50,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:56:50,723.723 INFO    ] time= 28/10/2026 08:56:50
[2026-10-28 08:56:50,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:56:50,748.748 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:56:50,880.880 INFO    ] No existing commands found in stream
[2026-10-28 08:56:55,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:56:55,900.900 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-28 08:56:57,122.122 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:56:57,125.125 INFO    ] Checking for system updates...
[2026-10-28 08:56:57,161.161 INFO    ] 200
[2026-10-28 08:56:57,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:56:57,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:56:57,218.218 INFO    ] No update needed
[2026-10-28 08:56:57,220.220 INFO    ] Checking for camera pi updates...
[2026-10-28 08:56:57,257.257 INFO    ] 200
[2026-10-28 08:56:57,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:56:57,304.304 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:56:57,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:56:57,390.390 INFO    ] No camera update needed
[2026-10-28 08:56:57,392.392 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:56:57,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:56:57,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:56:57,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:56:59,445.445 INFO    ] ================================================
[2026-10-28 08:56:59,461.461 INFO    ] Launching Daemon at Wed Oct 28 08:56:59 IST 2026
[2026-10-28 08:56:59,472.472 INFO    ] ================================================
[2026-10-28 08:57:00,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:57:00
[2026-10-28 08:57:00,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:57:00,882.882 INFO    ] Initializing speech engine...
[2026-10-28 08:57:00,891.891 INFO    ] 2026-10-28 08:57:00
[2026-10-28 08:57:01,192.192 INFO    ] 2026-10-28 08:57:01
[2026-10-28 08:57:01,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:57:01,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:57:01,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:57:01,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:57:01,698.698 INFO    ] time= 28/10/2026 08:57:01
[2026-10-28 08:57:01,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:57:01,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:57:01,914.914 INFO    ] No existing commands found in stream
[2026-10-28 08:57:06,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:57:06,953.953 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 08:57:08,629.629 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:57:08,631.631 INFO    ] Checking for system updates...
[2026-10-28 08:57:08,667.667 INFO    ] 200
[2026-10-28 08:57:08,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:57:08,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:57:08,724.724 INFO    ] No update needed
[2026-10-28 08:57:08,727.727 INFO    ] Checking for camera pi updates...
[2026-10-28 08:57:08,763.763 INFO    ] 200
[2026-10-28 08:57:08,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:57:08,809.809 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:57:08,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:57:08,888.888 INFO    ] No camera update needed
[2026-10-28 08:57:08,890.890 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:57:08,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:57:08,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:57:08,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:57:10,943.943 INFO    ] ================================================
[2026-10-28 08:57:10,958.958 INFO    ] Launching Daemon at Wed Oct 28 08:57:10 IST 2026
[2026-10-28 08:57:10,969.969 INFO    ] ================================================
[2026-10-28 08:57:11,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:57:11
[2026-10-28 08:57:12,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:57:12,382.382 INFO    ] Initializing speech engine...
[2026-10-28 08:57:12,395.395 INFO    ] 2026-10-28 08:57:12
[2026-10-28 08:57:12,644.644 INFO    ] 2026-10-28 08:57:12
[2026-10-28 08:57:12,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:57:12,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:57:12,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:57:13,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:57:13,216.216 INFO    ] time= 28/10/2026 08:57:13
[2026-10-28 08:57:13,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:57:13,252.252 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:57:13,358.358 INFO    ] No existing commands found in stream
[2026-10-28 08:57:18,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:57:18,380.380 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-28 08:57:20,432.432 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:57:20,435.435 INFO    ] Checking for system updates...
[2026-10-28 08:57:20,471.471 INFO    ] 200
[2026-10-28 08:57:20,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:57:20,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:57:20,534.534 INFO    ] No update needed
[2026-10-28 08:57:20,536.536 INFO    ] Checking for camera pi updates...
[2026-10-28 08:57:20,570.570 INFO    ] 200
[2026-10-28 08:57:20,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:57:20,612.612 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:57:20,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:57:20,703.703 INFO    ] No camera update needed
[2026-10-28 08:57:20,706.706 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:57:20,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:57:20,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:57:20,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:57:22,758.758 INFO    ] ================================================
[2026-10-28 08:57:22,772.772 INFO    ] Launching Daemon at Wed Oct 28 08:57:22 IST 2026
[2026-10-28 08:57:22,783.783 INFO    ] ================================================
[2026-10-28 08:57:23,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:57:23
[2026-10-28 08:57:23,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:57:24,193.193 INFO    ] Initializing speech engine...
[2026-10-28 08:57:24,206.206 INFO    ] 2026-10-28 08:57:24
[2026-10-28 08:57:24,471.471 INFO    ] 2026-10-28 08:57:24
[2026-10-28 08:57:24,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:57:24,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:57:24,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:57:25,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:57:25,077.077 INFO    ] time= 28/10/2026 08:57:25
[2026-10-28 08:57:25,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:57:25,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:57:25,259.259 INFO    ] No existing commands found in stream
[2026-10-28 08:57:30,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:57:30,277.277 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-28 08:57:32,212.212 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:57:32,215.215 INFO    ] Checking for system updates...
[2026-10-28 08:57:32,254.254 INFO    ] 200
[2026-10-28 08:57:32,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:57:32,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:57:32,324.324 INFO    ] No update needed
[2026-10-28 08:57:32,326.326 INFO    ] Checking for camera pi updates...
[2026-10-28 08:57:32,366.366 INFO    ] 200
[2026-10-28 08:57:32,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:57:32,418.418 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:57:32,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:57:32,565.565 INFO    ] No camera update needed
[2026-10-28 08:57:32,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:57:32,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:57:32,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:57:32,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:57:34,622.622 INFO    ] ================================================
[2026-10-28 08:57:34,637.637 INFO    ] Launching Daemon at Wed Oct 28 08:57:34 IST 2026
[2026-10-28 08:57:34,648.648 INFO    ] ================================================
[2026-10-28 08:57:35,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:57:35
[2026-10-28 08:57:35,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:57:36,082.082 INFO    ] Initializing speech engine...
[2026-10-28 08:57:36,092.092 INFO    ] 2026-10-28 08:57:36
[2026-10-28 08:57:36,341.341 INFO    ] 2026-10-28 08:57:36
[2026-10-28 08:57:36,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:57:36,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:57:36,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:57:36,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:57:36,900.900 INFO    ] time= 28/10/2026 08:57:36
[2026-10-28 08:57:36,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:57:36,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:57:37,053.053 INFO    ] No existing commands found in stream
[2026-10-28 08:57:42,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:57:42,084.084 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 08:57:45,809.809 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:57:45,812.812 INFO    ] Checking for system updates...
[2026-10-28 08:57:45,847.847 INFO    ] 200
[2026-10-28 08:57:45,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:57:45,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:57:45,906.906 INFO    ] No update needed
[2026-10-28 08:57:45,908.908 INFO    ] Checking for camera pi updates...
[2026-10-28 08:57:45,941.941 INFO    ] 200
[2026-10-28 08:57:45,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:57:45,984.984 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:57:46,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:57:46,065.065 INFO    ] No camera update needed
[2026-10-28 08:57:46,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:57:46,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:57:46,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:57:46,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:57:48,127.127 INFO    ] ================================================
[2026-10-28 08:57:48,143.143 INFO    ] Launching Daemon at Wed Oct 28 08:57:48 IST 2026
[2026-10-28 08:57:48,154.154 INFO    ] ================================================
[2026-10-28 08:57:48,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:57:48
[2026-10-28 08:57:49,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:57:49,753.753 INFO    ] Initializing speech engine...
[2026-10-28 08:57:49,762.762 INFO    ] 2026-10-28 08:57:49
[2026-10-28 08:57:50,048.048 INFO    ] 2026-10-28 08:57:50
[2026-10-28 08:57:50,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:57:50,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:57:50,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:57:50,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:57:50,626.626 INFO    ] time= 28/10/2026 08:57:50
[2026-10-28 08:57:50,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:57:50,641.641 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:57:50,768.768 INFO    ] No existing commands found in stream
[2026-10-28 08:57:55,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:57:55,807.807 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 08:57:58,325.325 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:57:58,328.328 INFO    ] Checking for system updates...
[2026-10-28 08:57:58,364.364 INFO    ] 200
[2026-10-28 08:57:58,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:57:58,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:57:58,421.421 INFO    ] No update needed
[2026-10-28 08:57:58,424.424 INFO    ] Checking for camera pi updates...
[2026-10-28 08:57:58,461.461 INFO    ] 200
[2026-10-28 08:57:58,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:57:58,505.505 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:57:58,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:57:58,590.590 INFO    ] No camera update needed
[2026-10-28 08:57:58,592.592 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:57:58,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:57:58,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:57:58,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:58:00,646.646 INFO    ] ================================================
[2026-10-28 08:58:00,661.661 INFO    ] Launching Daemon at Wed Oct 28 08:58:00 IST 2026
[2026-10-28 08:58:00,672.672 INFO    ] ================================================
[2026-10-28 08:58:01,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:58:01
[2026-10-28 08:58:02,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:58:02,506.506 INFO    ] Initializing speech engine...
[2026-10-28 08:58:02,516.516 INFO    ] 2026-10-28 08:58:02
[2026-10-28 08:58:02,851.851 INFO    ] 2026-10-28 08:58:02
[2026-10-28 08:58:02,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:58:03,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:58:03,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:58:03,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:58:03,438.438 INFO    ] time= 28/10/2026 08:58:03
[2026-10-28 08:58:03,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:58:03,466.466 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:58:03,598.598 INFO    ] No existing commands found in stream
[2026-10-28 08:58:08,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:58:08,626.626 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-28 08:58:12,668.668 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:58:12,671.671 INFO    ] Checking for system updates...
[2026-10-28 08:58:12,709.709 INFO    ] 200
[2026-10-28 08:58:12,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:58:12,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:58:12,773.773 INFO    ] No update needed
[2026-10-28 08:58:12,775.775 INFO    ] Checking for camera pi updates...
[2026-10-28 08:58:12,812.812 INFO    ] 200
[2026-10-28 08:58:12,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:58:12,854.854 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:58:12,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:58:12,941.941 INFO    ] No camera update needed
[2026-10-28 08:58:12,943.943 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:58:12,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:58:12,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:58:12,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:58:15,996.996 INFO    ] ================================================
[2026-10-28 08:58:15,011.011 INFO    ] Launching Daemon at Wed Oct 28 08:58:15 IST 2026
[2026-10-28 08:58:15,022.022 INFO    ] ================================================
[2026-10-28 08:58:15,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:58:15
[2026-10-28 08:58:16,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:58:16,626.626 INFO    ] Initializing speech engine...
[2026-10-28 08:58:16,635.635 INFO    ] 2026-10-28 08:58:16
[2026-10-28 08:58:16,919.919 INFO    ] 2026-10-28 08:58:16
[2026-10-28 08:58:16,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:58:17,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:58:17,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:58:17,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:58:17,475.475 INFO    ] time= 28/10/2026 08:58:17
[2026-10-28 08:58:17,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:58:17,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:58:17,615.615 INFO    ] No existing commands found in stream
[2026-10-28 08:58:22,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:58:22,642.642 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 08:58:25,108.108 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:58:25,110.110 INFO    ] Checking for system updates...
[2026-10-28 08:58:25,146.146 INFO    ] 200
[2026-10-28 08:58:25,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:58:25,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:58:25,202.202 INFO    ] No update needed
[2026-10-28 08:58:25,205.205 INFO    ] Checking for camera pi updates...
[2026-10-28 08:58:25,238.238 INFO    ] 200
[2026-10-28 08:58:25,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:58:25,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:58:25,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:58:25,383.383 INFO    ] No camera update needed
[2026-10-28 08:58:25,385.385 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:58:25,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:58:25,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:58:25,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:58:27,438.438 INFO    ] ================================================
[2026-10-28 08:58:27,454.454 INFO    ] Launching Daemon at Wed Oct 28 08:58:27 IST 2026
[2026-10-28 08:58:27,464.464 INFO    ] ================================================
[2026-10-28 08:58:28,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:58:28
[2026-10-28 08:58:28,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:58:28,975.975 INFO    ] Initializing speech engine...
[2026-10-28 08:58:28,997.997 INFO    ] 2026-10-28 08:58:28
[2026-10-28 08:58:29,251.251 INFO    ] 2026-10-28 08:58:29
[2026-10-28 08:58:29,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:58:29,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:58:29,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:58:29,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:58:29,808.808 INFO    ] time= 28/10/2026 08:58:29
[2026-10-28 08:58:29,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:58:29,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:58:29,971.971 INFO    ] No existing commands found in stream
[2026-10-28 08:58:34,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:58:34,998.998 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 08:58:36,588.588 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:58:36,590.590 INFO    ] Checking for system updates...
[2026-10-28 08:58:36,626.626 INFO    ] 200
[2026-10-28 08:58:36,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:58:36,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:58:36,689.689 INFO    ] No update needed
[2026-10-28 08:58:36,692.692 INFO    ] Checking for camera pi updates...
[2026-10-28 08:58:36,725.725 INFO    ] 200
[2026-10-28 08:58:36,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:58:36,767.767 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:58:36,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:58:36,844.844 INFO    ] No camera update needed
[2026-10-28 08:58:36,846.846 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:58:36,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:58:36,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:58:36,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:58:38,900.900 INFO    ] ================================================
[2026-10-28 08:58:38,915.915 INFO    ] Launching Daemon at Wed Oct 28 08:58:38 IST 2026
[2026-10-28 08:58:38,926.926 INFO    ] ================================================
[2026-10-28 08:58:39,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:58:39
[2026-10-28 08:58:40,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:58:40,392.392 INFO    ] Initializing speech engine...
[2026-10-28 08:58:40,399.399 INFO    ] 2026-10-28 08:58:40
[2026-10-28 08:58:40,658.658 INFO    ] 2026-10-28 08:58:40
[2026-10-28 08:58:40,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:58:40,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:58:41,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:58:41,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:58:41,217.217 INFO    ] time= 28/10/2026 08:58:41
[2026-10-28 08:58:41,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:58:41,253.253 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:58:41,361.361 INFO    ] No existing commands found in stream
[2026-10-28 08:58:46,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:58:46,387.387 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 08:58:48,068.068 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:58:48,070.070 INFO    ] Checking for system updates...
[2026-10-28 08:58:48,110.110 INFO    ] 200
[2026-10-28 08:58:48,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:58:48,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:58:48,173.173 INFO    ] No update needed
[2026-10-28 08:58:48,176.176 INFO    ] Checking for camera pi updates...
[2026-10-28 08:58:48,209.209 INFO    ] 200
[2026-10-28 08:58:48,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:58:48,251.251 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:58:48,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:58:48,317.317 INFO    ] No camera update needed
[2026-10-28 08:58:48,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:58:48,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:58:48,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:58:48,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:58:50,372.372 INFO    ] ================================================
[2026-10-28 08:58:50,387.387 INFO    ] Launching Daemon at Wed Oct 28 08:58:50 IST 2026
[2026-10-28 08:58:50,398.398 INFO    ] ================================================
[2026-10-28 08:58:51,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:58:51
[2026-10-28 08:58:51,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:58:51,980.980 INFO    ] Initializing speech engine...
[2026-10-28 08:58:51,989.989 INFO    ] 2026-10-28 08:58:51
[2026-10-28 08:58:52,270.270 INFO    ] 2026-10-28 08:58:52
[2026-10-28 08:58:52,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:58:52,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:58:52,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:58:52,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:58:52,827.827 INFO    ] time= 28/10/2026 08:58:52
[2026-10-28 08:58:52,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:58:52,865.865 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:58:53,004.004 INFO    ] No existing commands found in stream
[2026-10-28 08:58:58,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:58:58,038.038 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 08:58:59,231.231 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 08:58:59,234.234 INFO    ] Checking for system updates...
[2026-10-28 08:58:59,279.279 INFO    ] 200
[2026-10-28 08:58:59,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:58:59,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:58:59,348.348 INFO    ] No update needed
[2026-10-28 08:58:59,350.350 INFO    ] Checking for camera pi updates...
[2026-10-28 08:58:59,388.388 INFO    ] 200
[2026-10-28 08:58:59,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:58:59,431.431 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:58:59,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:58:59,506.506 INFO    ] No camera update needed
[2026-10-28 08:58:59,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:58:59,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:58:59,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:58:59,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:59:01,561.561 INFO    ] ================================================
[2026-10-28 08:59:01,576.576 INFO    ] Launching Daemon at Wed Oct 28 08:59:01 IST 2026
[2026-10-28 08:59:01,586.586 INFO    ] ================================================
[2026-10-28 08:59:02,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:59:02
[2026-10-28 08:59:02,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:59:03,278.278 INFO    ] Initializing speech engine...
[2026-10-28 08:59:03,293.293 INFO    ] 2026-10-28 08:59:03
[2026-10-28 08:59:03,616.616 INFO    ] 2026-10-28 08:59:03
[2026-10-28 08:59:03,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:59:03,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:59:03,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:59:04,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:59:04,215.215 INFO    ] time= 28/10/2026 08:59:04
[2026-10-28 08:59:04,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:59:04,252.252 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:59:04,371.371 INFO    ] No existing commands found in stream
[2026-10-28 08:59:09,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:59:09,405.405 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 08:59:12,589.589 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 08:59:12,592.592 INFO    ] Checking for system updates...
[2026-10-28 08:59:12,629.629 INFO    ] 200
[2026-10-28 08:59:12,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:59:12,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:59:12,689.689 INFO    ] No update needed
[2026-10-28 08:59:12,692.692 INFO    ] Checking for camera pi updates...
[2026-10-28 08:59:12,726.726 INFO    ] 200
[2026-10-28 08:59:12,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:59:12,774.774 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:59:12,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:59:12,866.866 INFO    ] No camera update needed
[2026-10-28 08:59:12,868.868 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:59:12,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:59:12,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:59:12,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:59:14,925.925 INFO    ] ================================================
[2026-10-28 08:59:14,941.941 INFO    ] Launching Daemon at Wed Oct 28 08:59:14 IST 2026
[2026-10-28 08:59:14,952.952 INFO    ] ================================================
[2026-10-28 08:59:15,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:59:15
[2026-10-28 08:59:16,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:59:16,359.359 INFO    ] Initializing speech engine...
[2026-10-28 08:59:16,375.375 INFO    ] 2026-10-28 08:59:16
[2026-10-28 08:59:16,630.630 INFO    ] 2026-10-28 08:59:16
[2026-10-28 08:59:16,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:59:16,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:59:16,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:59:17,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:59:17,195.195 INFO    ] time= 28/10/2026 08:59:17
[2026-10-28 08:59:17,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:59:17,219.219 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:59:17,342.342 INFO    ] No existing commands found in stream
[2026-10-28 08:59:22,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:59:22,367.367 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-28 08:59:26,487.487 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:59:26,489.489 INFO    ] Checking for system updates...
[2026-10-28 08:59:26,528.528 INFO    ] 200
[2026-10-28 08:59:26,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:59:26,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:59:26,591.591 INFO    ] No update needed
[2026-10-28 08:59:26,594.594 INFO    ] Checking for camera pi updates...
[2026-10-28 08:59:26,628.628 INFO    ] 200
[2026-10-28 08:59:26,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:59:26,670.670 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:59:26,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 08:59:26,775.775 INFO    ] No camera update needed
[2026-10-28 08:59:26,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:59:26,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:59:26,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:59:26,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:59:28,829.829 INFO    ] ================================================
[2026-10-28 08:59:28,844.844 INFO    ] Launching Daemon at Wed Oct 28 08:59:28 IST 2026
[2026-10-28 08:59:28,855.855 INFO    ] ================================================
[2026-10-28 08:59:29,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:59:29
[2026-10-28 08:59:30,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:59:30,483.483 INFO    ] Initializing speech engine...
[2026-10-28 08:59:30,497.497 INFO    ] 2026-10-28 08:59:30
[2026-10-28 08:59:30,766.766 INFO    ] 2026-10-28 08:59:30
[2026-10-28 08:59:30,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:59:31,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:59:31,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:59:31,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:59:31,369.369 INFO    ] time= 28/10/2026 08:59:31
[2026-10-28 08:59:31,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:59:31,400.400 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:59:31,561.561 INFO    ] No existing commands found in stream
[2026-10-28 08:59:36,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:59:36,579.579 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 08:59:41,068.068 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 08:59:41,070.070 INFO    ] Checking for system updates...
[2026-10-28 08:59:41,110.110 INFO    ] 200
[2026-10-28 08:59:41,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:59:41,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:59:41,173.173 INFO    ] No update needed
[2026-10-28 08:59:41,176.176 INFO    ] Checking for camera pi updates...
[2026-10-28 08:59:41,210.210 INFO    ] 200
[2026-10-28 08:59:41,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:59:41,252.252 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:59:41,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:59:41,437.437 INFO    ] No camera update needed
[2026-10-28 08:59:41,439.439 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:59:41,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:59:41,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:59:41,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:59:43,491.491 INFO    ] ================================================
[2026-10-28 08:59:43,507.507 INFO    ] Launching Daemon at Wed Oct 28 08:59:43 IST 2026
[2026-10-28 08:59:43,518.518 INFO    ] ================================================
[2026-10-28 08:59:44,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:59:44
[2026-10-28 08:59:44,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:59:45,131.131 INFO    ] Initializing speech engine...
[2026-10-28 08:59:45,139.139 INFO    ] 2026-10-28 08:59:45
[2026-10-28 08:59:45,411.411 INFO    ] 2026-10-28 08:59:45
[2026-10-28 08:59:45,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 08:59:45,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 08:59:45,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 08:59:45,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 08:59:45,979.979 INFO    ] time= 28/10/2026 08:59:45
[2026-10-28 08:59:45,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 08:59:46,027.027 INFO    ] Checking for existing commands in stream...
[2026-10-28 08:59:46,138.138 INFO    ] No existing commands found in stream
[2026-10-28 08:59:51,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 08:59:51,162.162 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-28 08:59:55,629.629 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 08:59:55,631.631 INFO    ] Checking for system updates...
[2026-10-28 08:59:55,667.667 INFO    ] 200
[2026-10-28 08:59:55,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:59:55,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:59:55,724.724 INFO    ] No update needed
[2026-10-28 08:59:55,726.726 INFO    ] Checking for camera pi updates...
[2026-10-28 08:59:55,760.760 INFO    ] 200
[2026-10-28 08:59:55,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 08:59:55,810.810 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 08:59:55,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 08:59:55,890.890 INFO    ] No camera update needed
[2026-10-28 08:59:55,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-28 08:59:55,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 08:59:55,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 08:59:55,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 08:59:57,945.945 INFO    ] ================================================
[2026-10-28 08:59:57,961.961 INFO    ] Launching Daemon at Wed Oct 28 08:59:57 IST 2026
[2026-10-28 08:59:57,971.971 INFO    ] ================================================
[2026-10-28 08:59:58,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 08:59:58
[2026-10-28 08:59:59,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 08:59:59,484.484 INFO    ] Initializing speech engine...
[2026-10-28 08:59:59,499.499 INFO    ] 2026-10-28 08:59:59
[2026-10-28 08:59:59,764.764 INFO    ] 2026-10-28 08:59:59
[2026-10-28 08:59:59,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:00:00,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:00:00,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:00:00,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:00:00,328.328 INFO    ] time= 28/10/2026 09:00:00
[2026-10-28 09:00:00,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:00:00,350.350 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:00:00,487.487 INFO    ] No existing commands found in stream
[2026-10-28 09:00:05,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:00:05,517.517 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-28 09:00:11,784.784 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:00:11,787.787 INFO    ] Checking for system updates...
[2026-10-28 09:00:11,822.822 INFO    ] 200
[2026-10-28 09:00:11,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:00:11,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:00:11,886.886 INFO    ] No update needed
[2026-10-28 09:00:11,888.888 INFO    ] Checking for camera pi updates...
[2026-10-28 09:00:11,924.924 INFO    ] 200
[2026-10-28 09:00:11,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:00:11,970.970 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:00:12,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:00:12,061.061 INFO    ] No camera update needed
[2026-10-28 09:00:12,063.063 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:00:12,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:00:12,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:00:12,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:00:14,116.116 INFO    ] ================================================
[2026-10-28 09:00:14,131.131 INFO    ] Launching Daemon at Wed Oct 28 09:00:14 IST 2026
[2026-10-28 09:00:14,142.142 INFO    ] ================================================
[2026-10-28 09:00:14,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:00:14
[2026-10-28 09:00:15,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:00:15,605.605 INFO    ] Initializing speech engine...
[2026-10-28 09:00:15,611.611 INFO    ] 2026-10-28 09:00:15
[2026-10-28 09:00:15,862.862 INFO    ] 2026-10-28 09:00:15
[2026-10-28 09:00:15,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:00:16,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:00:16,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:00:16,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:00:16,478.478 INFO    ] time= 28/10/2026 09:00:16
[2026-10-28 09:00:16,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:00:16,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:00:16,619.619 INFO    ] No existing commands found in stream
[2026-10-28 09:00:21,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:00:21,647.647 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 09:00:24,252.252 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:00:24,255.255 INFO    ] Checking for system updates...
[2026-10-28 09:00:24,292.292 INFO    ] 200
[2026-10-28 09:00:24,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:00:24,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:00:24,356.356 INFO    ] No update needed
[2026-10-28 09:00:24,359.359 INFO    ] Checking for camera pi updates...
[2026-10-28 09:00:24,394.394 INFO    ] 200
[2026-10-28 09:00:24,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:00:24,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:00:24,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:00:24,538.538 INFO    ] No camera update needed
[2026-10-28 09:00:24,540.540 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:00:24,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:00:24,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:00:24,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:00:26,597.597 INFO    ] ================================================
[2026-10-28 09:00:26,612.612 INFO    ] Launching Daemon at Wed Oct 28 09:00:26 IST 2026
[2026-10-28 09:00:26,623.623 INFO    ] ================================================
[2026-10-28 09:00:27,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:00:27
[2026-10-28 09:00:27,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:00:28,043.043 INFO    ] Initializing speech engine...
[2026-10-28 09:00:28,061.061 INFO    ] 2026-10-28 09:00:28
[2026-10-28 09:00:28,313.313 INFO    ] 2026-10-28 09:00:28
[2026-10-28 09:00:28,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:00:28,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:00:28,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:00:28,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:00:28,880.880 INFO    ] time= 28/10/2026 09:00:28
[2026-10-28 09:00:28,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:00:28,905.905 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:00:29,034.034 INFO    ] No existing commands found in stream
[2026-10-28 09:00:34,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:00:34,052.052 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 09:00:38,689.689 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:00:38,696.696 INFO    ] Checking for system updates...
[2026-10-28 09:00:38,747.747 INFO    ] 200
[2026-10-28 09:00:38,749.749 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 09:00:38,752.752 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-28 09:00:38,755.755 INFO    ] Checking for camera pi updates...
[2026-10-28 09:00:38,816.816 INFO    ] 200
[2026-10-28 09:00:38,819.819 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 09:00:38,822.822 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-28 09:00:38,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:00:38,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:00:38,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:00:38,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:00:40,882.882 INFO    ] ================================================
[2026-10-28 09:00:40,898.898 INFO    ] Launching Daemon at Wed Oct 28 09:00:40 IST 2026
[2026-10-28 09:00:40,909.909 INFO    ] ================================================
[2026-10-28 09:00:41,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:00:41
[2026-10-28 09:00:42,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:00:42,513.513 INFO    ] Initializing speech engine...
[2026-10-28 09:00:42,523.523 INFO    ] 2026-10-28 09:00:42
[2026-10-28 09:00:42,794.794 INFO    ] 2026-10-28 09:00:42
[2026-10-28 09:00:42,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:00:43,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:00:43,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:00:43,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:00:43,376.376 INFO    ] time= 28/10/2026 09:00:43
[2026-10-28 09:00:43,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:00:43,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:00:43,554.554 INFO    ] No existing commands found in stream
[2026-10-28 09:00:48,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:00:48,583.583 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-28 09:00:51,709.709 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:00:51,712.712 INFO    ] Checking for system updates...
[2026-10-28 09:00:51,749.749 INFO    ] 200
[2026-10-28 09:00:51,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:00:51,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:00:51,808.808 INFO    ] No update needed
[2026-10-28 09:00:51,811.811 INFO    ] Checking for camera pi updates...
[2026-10-28 09:00:51,849.849 INFO    ] 200
[2026-10-28 09:00:51,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:00:51,897.897 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:00:51,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:00:51,986.986 INFO    ] No camera update needed
[2026-10-28 09:00:51,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:00:51,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:00:51,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:00:52,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:00:54,045.045 INFO    ] ================================================
[2026-10-28 09:00:54,064.064 INFO    ] Launching Daemon at Wed Oct 28 09:00:54 IST 2026
[2026-10-28 09:00:54,075.075 INFO    ] ================================================
[2026-10-28 09:00:54,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:00:54
[2026-10-28 09:00:55,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:00:55,513.513 INFO    ] Initializing speech engine...
[2026-10-28 09:00:55,520.520 INFO    ] 2026-10-28 09:00:55
[2026-10-28 09:00:55,818.818 INFO    ] 2026-10-28 09:00:55
[2026-10-28 09:00:55,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:00:56,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:00:56,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:00:56,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:00:56,407.407 INFO    ] time= 28/10/2026 09:00:56
[2026-10-28 09:00:56,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:00:56,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:00:56,617.617 INFO    ] No existing commands found in stream
[2026-10-28 09:01:01,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:01:01,648.648 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-28 09:01:02,638.638 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:01:02,641.641 INFO    ] Checking for system updates...
[2026-10-28 09:01:02,685.685 INFO    ] 200
[2026-10-28 09:01:02,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:01:02,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:01:02,764.764 INFO    ] No update needed
[2026-10-28 09:01:02,768.768 INFO    ] Checking for camera pi updates...
[2026-10-28 09:01:02,815.815 INFO    ] 200
[2026-10-28 09:01:02,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:01:02,880.880 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:01:02,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:01:02,989.989 INFO    ] No camera update needed
[2026-10-28 09:01:02,991.991 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:01:02,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:01:02,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:01:03,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:01:05,044.044 INFO    ] ================================================
[2026-10-28 09:01:05,060.060 INFO    ] Launching Daemon at Wed Oct 28 09:01:05 IST 2026
[2026-10-28 09:01:05,071.071 INFO    ] ================================================
[2026-10-28 09:01:05,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:01:05
[2026-10-28 09:01:06,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:01:06,522.522 INFO    ] Initializing speech engine...
[2026-10-28 09:01:06,532.532 INFO    ] 2026-10-28 09:01:06
[2026-10-28 09:01:06,780.780 INFO    ] 2026-10-28 09:01:06
[2026-10-28 09:01:06,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:01:07,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:01:07,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:01:07,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:01:07,335.335 INFO    ] time= 28/10/2026 09:01:07
[2026-10-28 09:01:07,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:01:07,375.375 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:01:07,567.567 INFO    ] No existing commands found in stream
[2026-10-28 09:01:12,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:01:12,595.595 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 09:01:14,465.465 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:01:14,467.467 INFO    ] Checking for system updates...
[2026-10-28 09:01:14,504.504 INFO    ] 200
[2026-10-28 09:01:14,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:01:14,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:01:14,561.561 INFO    ] No update needed
[2026-10-28 09:01:14,564.564 INFO    ] Checking for camera pi updates...
[2026-10-28 09:01:14,601.601 INFO    ] 200
[2026-10-28 09:01:14,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:01:14,648.648 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:01:14,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:01:14,741.741 INFO    ] No camera update needed
[2026-10-28 09:01:14,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:01:14,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:01:14,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:01:14,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:01:16,800.800 INFO    ] ================================================
[2026-10-28 09:01:16,816.816 INFO    ] Launching Daemon at Wed Oct 28 09:01:16 IST 2026
[2026-10-28 09:01:16,827.827 INFO    ] ================================================
[2026-10-28 09:01:17,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:01:17
[2026-10-28 09:01:18,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:01:18,286.286 INFO    ] Initializing speech engine...
[2026-10-28 09:01:18,291.291 INFO    ] 2026-10-28 09:01:18
[2026-10-28 09:01:18,540.540 INFO    ] 2026-10-28 09:01:18
[2026-10-28 09:01:18,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:01:18,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:01:18,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:01:19,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:01:19,102.102 INFO    ] time= 28/10/2026 09:01:19
[2026-10-28 09:01:19,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:01:19,148.148 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:01:19,287.287 INFO    ] No existing commands found in stream
[2026-10-28 09:01:24,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:01:24,315.315 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 09:01:24,987.987 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:01:24,990.990 INFO    ] Checking for system updates...
[2026-10-28 09:01:25,026.026 INFO    ] 200
[2026-10-28 09:01:25,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:01:25,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:01:25,084.084 INFO    ] No update needed
[2026-10-28 09:01:25,087.087 INFO    ] Checking for camera pi updates...
[2026-10-28 09:01:25,121.121 INFO    ] 200
[2026-10-28 09:01:25,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:01:25,167.167 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:01:25,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:01:25,271.271 INFO    ] No camera update needed
[2026-10-28 09:01:25,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:01:25,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:01:25,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:01:25,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:01:27,328.328 INFO    ] ================================================
[2026-10-28 09:01:27,344.344 INFO    ] Launching Daemon at Wed Oct 28 09:01:27 IST 2026
[2026-10-28 09:01:27,356.356 INFO    ] ================================================
[2026-10-28 09:01:27,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:01:27
[2026-10-28 09:01:28,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:01:28,807.807 INFO    ] Initializing speech engine...
[2026-10-28 09:01:28,819.819 INFO    ] 2026-10-28 09:01:28
[2026-10-28 09:01:29,075.075 INFO    ] 2026-10-28 09:01:29
[2026-10-28 09:01:29,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:01:29,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:01:29,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:01:29,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:01:29,623.623 INFO    ] time= 28/10/2026 09:01:29
[2026-10-28 09:01:29,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:01:29,670.670 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:01:29,801.801 INFO    ] No existing commands found in stream
[2026-10-28 09:01:34,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:01:34,830.830 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 09:01:37,199.199 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:01:37,202.202 INFO    ] Checking for system updates...
[2026-10-28 09:01:37,239.239 INFO    ] 200
[2026-10-28 09:01:37,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:01:37,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:01:37,298.298 INFO    ] No update needed
[2026-10-28 09:01:37,301.301 INFO    ] Checking for camera pi updates...
[2026-10-28 09:01:37,336.336 INFO    ] 200
[2026-10-28 09:01:37,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:01:37,383.383 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:01:37,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:01:37,480.480 INFO    ] No camera update needed
[2026-10-28 09:01:37,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:01:37,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:01:37,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:01:37,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:01:39,537.537 INFO    ] ================================================
[2026-10-28 09:01:39,553.553 INFO    ] Launching Daemon at Wed Oct 28 09:01:39 IST 2026
[2026-10-28 09:01:39,564.564 INFO    ] ================================================
[2026-10-28 09:01:40,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:01:40
[2026-10-28 09:01:40,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:01:40,993.993 INFO    ] Initializing speech engine...
[2026-10-28 09:01:41,007.007 INFO    ] 2026-10-28 09:01:40
[2026-10-28 09:01:41,289.289 INFO    ] 2026-10-28 09:01:41
[2026-10-28 09:01:41,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:01:41,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:01:41,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:01:41,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:01:41,794.794 INFO    ] time= 28/10/2026 09:01:41
[2026-10-28 09:01:41,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:01:41,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:01:42,010.010 INFO    ] No existing commands found in stream
[2026-10-28 09:01:47,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:01:47,043.043 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 09:01:49,510.510 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:01:49,512.512 INFO    ] Checking for system updates...
[2026-10-28 09:01:49,548.548 INFO    ] 200
[2026-10-28 09:01:49,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:01:49,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:01:49,611.611 INFO    ] No update needed
[2026-10-28 09:01:49,614.614 INFO    ] Checking for camera pi updates...
[2026-10-28 09:01:49,650.650 INFO    ] 200
[2026-10-28 09:01:49,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:01:49,693.693 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:01:49,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:01:49,898.898 INFO    ] No camera update needed
[2026-10-28 09:01:49,901.901 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:01:49,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:01:49,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:01:49,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:01:51,954.954 INFO    ] ================================================
[2026-10-28 09:01:51,970.970 INFO    ] Launching Daemon at Wed Oct 28 09:01:51 IST 2026
[2026-10-28 09:01:51,981.981 INFO    ] ================================================
[2026-10-28 09:01:52,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:01:52
[2026-10-28 09:01:53,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:01:53,560.560 INFO    ] Initializing speech engine...
[2026-10-28 09:01:53,568.568 INFO    ] 2026-10-28 09:01:53
[2026-10-28 09:01:53,851.851 INFO    ] 2026-10-28 09:01:53
[2026-10-28 09:01:53,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:01:54,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:01:54,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:01:54,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:01:54,556.556 INFO    ] time= 28/10/2026 09:01:54
[2026-10-28 09:01:54,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:01:54,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:01:54,788.788 INFO    ] No existing commands found in stream
[2026-10-28 09:01:59,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:01:59,823.823 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 09:02:04,229.229 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:02:04,232.232 INFO    ] Checking for system updates...
[2026-10-28 09:02:04,272.272 INFO    ] 200
[2026-10-28 09:02:04,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:02:04,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:02:04,331.331 INFO    ] No update needed
[2026-10-28 09:02:04,334.334 INFO    ] Checking for camera pi updates...
[2026-10-28 09:02:04,383.383 INFO    ] 200
[2026-10-28 09:02:04,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:02:04,426.426 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:02:04,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:02:04,523.523 INFO    ] No camera update needed
[2026-10-28 09:02:04,525.525 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:02:04,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:02:04,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:02:04,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:02:06,579.579 INFO    ] ================================================
[2026-10-28 09:02:06,595.595 INFO    ] Launching Daemon at Wed Oct 28 09:02:06 IST 2026
[2026-10-28 09:02:06,606.606 INFO    ] ================================================
[2026-10-28 09:02:07,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:02:07
[2026-10-28 09:02:07,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:02:08,186.186 INFO    ] Initializing speech engine...
[2026-10-28 09:02:08,192.192 INFO    ] 2026-10-28 09:02:08
[2026-10-28 09:02:08,469.469 INFO    ] 2026-10-28 09:02:08
[2026-10-28 09:02:08,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:02:08,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:02:08,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:02:09,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:02:09,045.045 INFO    ] time= 28/10/2026 09:02:09
[2026-10-28 09:02:09,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:02:09,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:02:09,243.243 INFO    ] No existing commands found in stream
[2026-10-28 09:02:14,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:02:14,277.277 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 09:02:18,389.389 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:02:18,392.392 INFO    ] Checking for system updates...
[2026-10-28 09:02:18,433.433 INFO    ] 200
[2026-10-28 09:02:18,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:02:18,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:02:18,492.492 INFO    ] No update needed
[2026-10-28 09:02:18,495.495 INFO    ] Checking for camera pi updates...
[2026-10-28 09:02:18,533.533 INFO    ] 200
[2026-10-28 09:02:18,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:02:18,581.581 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:02:18,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:02:18,668.668 INFO    ] No camera update needed
[2026-10-28 09:02:18,670.670 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:02:18,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:02:18,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:02:18,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:02:20,724.724 INFO    ] ================================================
[2026-10-28 09:02:20,740.740 INFO    ] Launching Daemon at Wed Oct 28 09:02:20 IST 2026
[2026-10-28 09:02:20,751.751 INFO    ] ================================================
[2026-10-28 09:02:21,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:02:21
[2026-10-28 09:02:21,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:02:22,225.225 INFO    ] Initializing speech engine...
[2026-10-28 09:02:22,234.234 INFO    ] 2026-10-28 09:02:22
[2026-10-28 09:02:22,491.491 INFO    ] 2026-10-28 09:02:22
[2026-10-28 09:02:22,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:02:22,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:02:22,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:02:22,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:02:23,053.053 INFO    ] time= 28/10/2026 09:02:23
[2026-10-28 09:02:23,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:02:23,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:02:23,203.203 INFO    ] No existing commands found in stream
[2026-10-28 09:02:28,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:02:28,229.229 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 09:02:32,157.157 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:02:32,161.161 INFO    ] Checking for system updates...
[2026-10-28 09:02:32,205.205 INFO    ] 200
[2026-10-28 09:02:32,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:02:32,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:02:32,268.268 INFO    ] No update needed
[2026-10-28 09:02:32,271.271 INFO    ] Checking for camera pi updates...
[2026-10-28 09:02:32,306.306 INFO    ] 200
[2026-10-28 09:02:32,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:02:32,358.358 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:02:32,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:02:32,475.475 INFO    ] No camera update needed
[2026-10-28 09:02:32,478.478 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:02:32,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:02:32,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:02:32,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:02:34,535.535 INFO    ] ================================================
[2026-10-28 09:02:34,550.550 INFO    ] Launching Daemon at Wed Oct 28 09:02:34 IST 2026
[2026-10-28 09:02:34,562.562 INFO    ] ================================================
[2026-10-28 09:02:35,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:02:35
[2026-10-28 09:02:35,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:02:35,968.968 INFO    ] Initializing speech engine...
[2026-10-28 09:02:35,982.982 INFO    ] 2026-10-28 09:02:35
[2026-10-28 09:02:36,239.239 INFO    ] 2026-10-28 09:02:36
[2026-10-28 09:02:36,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:02:36,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:02:36,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:02:36,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:02:36,810.810 INFO    ] time= 28/10/2026 09:02:36
[2026-10-28 09:02:36,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:02:36,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:02:36,964.964 INFO    ] No existing commands found in stream
[2026-10-28 09:02:41,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:02:41,980.980 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-28 09:02:46,467.467 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:02:46,469.469 INFO    ] Checking for system updates...
[2026-10-28 09:02:46,505.505 INFO    ] 200
[2026-10-28 09:02:46,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:02:46,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:02:46,562.562 INFO    ] No update needed
[2026-10-28 09:02:46,564.564 INFO    ] Checking for camera pi updates...
[2026-10-28 09:02:46,599.599 INFO    ] 200
[2026-10-28 09:02:46,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:02:46,644.644 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:02:46,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:02:46,725.725 INFO    ] No camera update needed
[2026-10-28 09:02:46,727.727 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:02:46,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:02:46,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:02:46,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:02:48,781.781 INFO    ] ================================================
[2026-10-28 09:02:48,796.796 INFO    ] Launching Daemon at Wed Oct 28 09:02:48 IST 2026
[2026-10-28 09:02:48,807.807 INFO    ] ================================================
[2026-10-28 09:02:49,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:02:49
[2026-10-28 09:02:49,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:02:50,203.203 INFO    ] Initializing speech engine...
[2026-10-28 09:02:50,212.212 INFO    ] 2026-10-28 09:02:50
[2026-10-28 09:02:50,486.486 INFO    ] 2026-10-28 09:02:50
[2026-10-28 09:02:50,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:02:50,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:02:50,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:02:50,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:02:51,053.053 INFO    ] time= 28/10/2026 09:02:51
[2026-10-28 09:02:51,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:02:51,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:02:51,234.234 INFO    ] No existing commands found in stream
[2026-10-28 09:02:56,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:02:56,262.262 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 09:02:57,464.464 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:02:57,467.467 INFO    ] Checking for system updates...
[2026-10-28 09:02:57,503.503 INFO    ] 200
[2026-10-28 09:02:57,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:02:57,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:02:57,559.559 INFO    ] No update needed
[2026-10-28 09:02:57,562.562 INFO    ] Checking for camera pi updates...
[2026-10-28 09:02:57,599.599 INFO    ] 200
[2026-10-28 09:02:57,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:02:57,647.647 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:02:57,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:02:57,731.731 INFO    ] No camera update needed
[2026-10-28 09:02:57,733.733 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:02:57,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:02:57,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:02:57,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:02:59,786.786 INFO    ] ================================================
[2026-10-28 09:02:59,801.801 INFO    ] Launching Daemon at Wed Oct 28 09:02:59 IST 2026
[2026-10-28 09:02:59,812.812 INFO    ] ================================================
[2026-10-28 09:03:00,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:03:00
[2026-10-28 09:03:00,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:03:01,212.212 INFO    ] Initializing speech engine...
[2026-10-28 09:03:01,226.226 INFO    ] 2026-10-28 09:03:01
[2026-10-28 09:03:01,492.492 INFO    ] 2026-10-28 09:03:01
[2026-10-28 09:03:01,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:03:01,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:03:01,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:03:01,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:03:01,966.966 INFO    ] time= 28/10/2026 09:03:01
[2026-10-28 09:03:01,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:03:01,972.972 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:03:02,079.079 INFO    ] No existing commands found in stream
[2026-10-28 09:03:07,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:03:07,092.092 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-28 09:03:09,389.389 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:03:09,392.392 INFO    ] Checking for system updates...
[2026-10-28 09:03:09,431.431 INFO    ] 200
[2026-10-28 09:03:09,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:03:09,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:03:09,490.490 INFO    ] No update needed
[2026-10-28 09:03:09,492.492 INFO    ] Checking for camera pi updates...
[2026-10-28 09:03:09,530.530 INFO    ] 200
[2026-10-28 09:03:09,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:03:09,572.572 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:03:09,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:03:09,660.660 INFO    ] No camera update needed
[2026-10-28 09:03:09,663.663 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:03:09,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:03:09,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:03:09,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:03:11,716.716 INFO    ] ================================================
[2026-10-28 09:03:11,732.732 INFO    ] Launching Daemon at Wed Oct 28 09:03:11 IST 2026
[2026-10-28 09:03:11,743.743 INFO    ] ================================================
[2026-10-28 09:03:12,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:03:12
[2026-10-28 09:03:12,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:03:13,232.232 INFO    ] Initializing speech engine...
[2026-10-28 09:03:13,241.241 INFO    ] 2026-10-28 09:03:13
[2026-10-28 09:03:13,500.500 INFO    ] 2026-10-28 09:03:13
[2026-10-28 09:03:13,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:03:13,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:03:13,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:03:14,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:03:14,045.045 INFO    ] time= 28/10/2026 09:03:14
[2026-10-28 09:03:14,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:03:14,070.070 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:03:14,198.198 INFO    ] No existing commands found in stream
[2026-10-28 09:03:19,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:03:19,216.216 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 09:03:22,108.108 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:03:22,111.111 INFO    ] Checking for system updates...
[2026-10-28 09:03:22,153.153 INFO    ] 200
[2026-10-28 09:03:22,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:03:22,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:03:22,211.211 INFO    ] No update needed
[2026-10-28 09:03:22,213.213 INFO    ] Checking for camera pi updates...
[2026-10-28 09:03:22,247.247 INFO    ] 200
[2026-10-28 09:03:22,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:03:22,290.290 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:03:22,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:03:22,395.395 INFO    ] No camera update needed
[2026-10-28 09:03:22,398.398 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:03:22,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:03:22,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:03:22,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:03:24,451.451 INFO    ] ================================================
[2026-10-28 09:03:24,466.466 INFO    ] Launching Daemon at Wed Oct 28 09:03:24 IST 2026
[2026-10-28 09:03:24,477.477 INFO    ] ================================================
[2026-10-28 09:03:25,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:03:25
[2026-10-28 09:03:25,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:03:25,936.936 INFO    ] Initializing speech engine...
[2026-10-28 09:03:25,941.941 INFO    ] 2026-10-28 09:03:25
[2026-10-28 09:03:26,191.191 INFO    ] 2026-10-28 09:03:26
[2026-10-28 09:03:26,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:03:26,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:03:26,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:03:26,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:03:26,750.750 INFO    ] time= 28/10/2026 09:03:26
[2026-10-28 09:03:26,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:03:26,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:03:26,905.905 INFO    ] No existing commands found in stream
[2026-10-28 09:03:31,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:03:31,928.928 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-28 09:03:34,692.692 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:03:34,694.694 INFO    ] Checking for system updates...
[2026-10-28 09:03:34,734.734 INFO    ] 200
[2026-10-28 09:03:34,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:03:34,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:03:34,814.814 INFO    ] No update needed
[2026-10-28 09:03:34,816.816 INFO    ] Checking for camera pi updates...
[2026-10-28 09:03:34,854.854 INFO    ] 200
[2026-10-28 09:03:34,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:03:34,897.897 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:03:34,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:03:34,982.982 INFO    ] No camera update needed
[2026-10-28 09:03:34,985.985 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:03:34,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:03:34,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:03:34,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:03:37,040.040 INFO    ] ================================================
[2026-10-28 09:03:37,056.056 INFO    ] Launching Daemon at Wed Oct 28 09:03:37 IST 2026
[2026-10-28 09:03:37,067.067 INFO    ] ================================================
[2026-10-28 09:03:37,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:03:37
[2026-10-28 09:03:38,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:03:38,543.543 INFO    ] Initializing speech engine...
[2026-10-28 09:03:38,553.553 INFO    ] 2026-10-28 09:03:38
[2026-10-28 09:03:38,799.799 INFO    ] 2026-10-28 09:03:38
[2026-10-28 09:03:38,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:03:39,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:03:39,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:03:39,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:03:39,356.356 INFO    ] time= 28/10/2026 09:03:39
[2026-10-28 09:03:39,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:03:39,382.382 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:03:39,504.504 INFO    ] No existing commands found in stream
[2026-10-28 09:03:44,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:03:44,523.523 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-28 09:03:47,671.671 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:03:47,674.674 INFO    ] Checking for system updates...
[2026-10-28 09:03:47,711.711 INFO    ] 200
[2026-10-28 09:03:47,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:03:47,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:03:47,777.777 INFO    ] No update needed
[2026-10-28 09:03:47,780.780 INFO    ] Checking for camera pi updates...
[2026-10-28 09:03:47,813.813 INFO    ] 200
[2026-10-28 09:03:47,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:03:47,861.861 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:03:47,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:03:47,948.948 INFO    ] No camera update needed
[2026-10-28 09:03:47,951.951 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:03:47,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:03:47,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:03:47,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:03:50,006.006 INFO    ] ================================================
[2026-10-28 09:03:50,021.021 INFO    ] Launching Daemon at Wed Oct 28 09:03:50 IST 2026
[2026-10-28 09:03:50,032.032 INFO    ] ================================================
[2026-10-28 09:03:50,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:03:50
[2026-10-28 09:03:51,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:03:51,531.531 INFO    ] Initializing speech engine...
[2026-10-28 09:03:51,537.537 INFO    ] 2026-10-28 09:03:51
[2026-10-28 09:03:51,802.802 INFO    ] 2026-10-28 09:03:51
[2026-10-28 09:03:51,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:03:52,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:03:52,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:03:52,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:03:52,354.354 INFO    ] time= 28/10/2026 09:03:52
[2026-10-28 09:03:52,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:03:52,400.400 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:03:52,533.533 INFO    ] No existing commands found in stream
[2026-10-28 09:03:57,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:03:57,561.561 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 09:04:00,547.547 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:04:00,550.550 INFO    ] Checking for system updates...
[2026-10-28 09:04:00,586.586 INFO    ] 200
[2026-10-28 09:04:00,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:04:00,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:04:00,651.651 INFO    ] No update needed
[2026-10-28 09:04:00,653.653 INFO    ] Checking for camera pi updates...
[2026-10-28 09:04:00,686.686 INFO    ] 200
[2026-10-28 09:04:00,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:04:00,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:04:00,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:04:00,920.920 INFO    ] No camera update needed
[2026-10-28 09:04:00,922.922 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:04:00,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:04:00,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:04:00,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:04:02,988.988 INFO    ] ================================================
[2026-10-28 09:04:03,012.012 INFO    ] Launching Daemon at Wed Oct 28 09:04:03 IST 2026
[2026-10-28 09:04:03,024.024 INFO    ] ================================================
[2026-10-28 09:04:03,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:04:03
[2026-10-28 09:04:04,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:04:04,564.564 INFO    ] Initializing speech engine...
[2026-10-28 09:04:04,573.573 INFO    ] 2026-10-28 09:04:04
[2026-10-28 09:04:04,820.820 INFO    ] 2026-10-28 09:04:04
[2026-10-28 09:04:04,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:04:05,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:04:05,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:04:05,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:04:05,363.363 INFO    ] time= 28/10/2026 09:04:05
[2026-10-28 09:04:05,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:04:05,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:04:05,544.544 INFO    ] No existing commands found in stream
[2026-10-28 09:04:10,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:04:10,560.560 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-28 09:04:15,114.114 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:04:15,117.117 INFO    ] Checking for system updates...
[2026-10-28 09:04:15,152.152 INFO    ] 200
[2026-10-28 09:04:15,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:04:15,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:04:15,209.209 INFO    ] No update needed
[2026-10-28 09:04:15,211.211 INFO    ] Checking for camera pi updates...
[2026-10-28 09:04:15,245.245 INFO    ] 200
[2026-10-28 09:04:15,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:04:15,293.293 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:04:15,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:04:15,377.377 INFO    ] No camera update needed
[2026-10-28 09:04:15,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:04:15,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:04:15,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:04:15,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:04:17,434.434 INFO    ] ================================================
[2026-10-28 09:04:17,450.450 INFO    ] Launching Daemon at Wed Oct 28 09:04:17 IST 2026
[2026-10-28 09:04:17,461.461 INFO    ] ================================================
[2026-10-28 09:04:18,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:04:18
[2026-10-28 09:04:18,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:04:18,898.898 INFO    ] Initializing speech engine...
[2026-10-28 09:04:18,908.908 INFO    ] 2026-10-28 09:04:18
[2026-10-28 09:04:19,159.159 INFO    ] 2026-10-28 09:04:19
[2026-10-28 09:04:19,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:04:19,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:04:19,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:04:19,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:04:19,728.728 INFO    ] time= 28/10/2026 09:04:19
[2026-10-28 09:04:19,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:04:19,753.753 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:04:19,874.874 INFO    ] No existing commands found in stream
[2026-10-28 09:04:24,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:04:24,898.898 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-28 09:04:27,921.921 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:04:27,924.924 INFO    ] Checking for system updates...
[2026-10-28 09:04:27,963.963 INFO    ] 200
[2026-10-28 09:04:27,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:04:28,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:04:28,020.020 INFO    ] No update needed
[2026-10-28 09:04:28,022.022 INFO    ] Checking for camera pi updates...
[2026-10-28 09:04:28,057.057 INFO    ] 200
[2026-10-28 09:04:28,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:04:28,105.105 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:04:28,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:04:28,189.189 INFO    ] No camera update needed
[2026-10-28 09:04:28,191.191 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:04:28,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:04:28,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:04:28,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:04:30,245.245 INFO    ] ================================================
[2026-10-28 09:04:30,261.261 INFO    ] Launching Daemon at Wed Oct 28 09:04:30 IST 2026
[2026-10-28 09:04:30,272.272 INFO    ] ================================================
[2026-10-28 09:04:30,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:04:30
[2026-10-28 09:04:31,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:04:31,736.736 INFO    ] Initializing speech engine...
[2026-10-28 09:04:31,745.745 INFO    ] 2026-10-28 09:04:31
[2026-10-28 09:04:32,007.007 INFO    ] 2026-10-28 09:04:32
[2026-10-28 09:04:32,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:04:32,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:04:32,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:04:32,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:04:32,507.507 INFO    ] time= 28/10/2026 09:04:32
[2026-10-28 09:04:32,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:04:32,611.611 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:04:32,753.753 INFO    ] No existing commands found in stream
[2026-10-28 09:04:37,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:04:37,780.780 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 09:04:38,526.526 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:04:38,529.529 INFO    ] Checking for system updates...
[2026-10-28 09:04:38,569.569 INFO    ] 200
[2026-10-28 09:04:38,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:04:38,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:04:38,627.627 INFO    ] No update needed
[2026-10-28 09:04:38,629.629 INFO    ] Checking for camera pi updates...
[2026-10-28 09:04:38,663.663 INFO    ] 200
[2026-10-28 09:04:38,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:04:38,712.712 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:04:38,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:04:38,795.795 INFO    ] No camera update needed
[2026-10-28 09:04:38,797.797 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:04:38,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:04:38,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:04:38,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:04:40,852.852 INFO    ] ================================================
[2026-10-28 09:04:40,868.868 INFO    ] Launching Daemon at Wed Oct 28 09:04:40 IST 2026
[2026-10-28 09:04:40,883.883 INFO    ] ================================================
[2026-10-28 09:04:41,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:04:41
[2026-10-28 09:04:42,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:04:42,374.374 INFO    ] Initializing speech engine...
[2026-10-28 09:04:42,383.383 INFO    ] 2026-10-28 09:04:42
[2026-10-28 09:04:42,635.635 INFO    ] 2026-10-28 09:04:42
[2026-10-28 09:04:42,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:04:42,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:04:42,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:04:43,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:04:43,204.204 INFO    ] time= 28/10/2026 09:04:43
[2026-10-28 09:04:43,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:04:43,230.230 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:04:43,362.362 INFO    ] No existing commands found in stream
[2026-10-28 09:04:48,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:04:48,378.378 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-28 09:04:51,146.146 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:04:51,149.149 INFO    ] Checking for system updates...
[2026-10-28 09:04:51,185.185 INFO    ] 200
[2026-10-28 09:04:51,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:04:51,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:04:51,244.244 INFO    ] No update needed
[2026-10-28 09:04:51,247.247 INFO    ] Checking for camera pi updates...
[2026-10-28 09:04:51,287.287 INFO    ] 200
[2026-10-28 09:04:51,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:04:51,336.336 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:04:51,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:04:51,427.427 INFO    ] No camera update needed
[2026-10-28 09:04:51,430.430 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:04:51,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:04:51,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:04:51,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:04:53,485.485 INFO    ] ================================================
[2026-10-28 09:04:53,501.501 INFO    ] Launching Daemon at Wed Oct 28 09:04:53 IST 2026
[2026-10-28 09:04:53,512.512 INFO    ] ================================================
[2026-10-28 09:04:54,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:04:54
[2026-10-28 09:04:54,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:04:54,912.912 INFO    ] Initializing speech engine...
[2026-10-28 09:04:54,920.920 INFO    ] 2026-10-28 09:04:54
[2026-10-28 09:04:55,198.198 INFO    ] 2026-10-28 09:04:55
[2026-10-28 09:04:55,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:04:55,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:04:55,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:04:55,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:04:55,768.768 INFO    ] time= 28/10/2026 09:04:55
[2026-10-28 09:04:55,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:04:55,790.790 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:04:55,933.933 INFO    ] No existing commands found in stream
[2026-10-28 09:05:00,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:05:00,962.962 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-28 09:05:04,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:05:04,332.332 INFO    ] Checking for system updates...
[2026-10-28 09:05:04,375.375 INFO    ] 200
[2026-10-28 09:05:04,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:05:04,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:05:04,431.431 INFO    ] No update needed
[2026-10-28 09:05:04,434.434 INFO    ] Checking for camera pi updates...
[2026-10-28 09:05:04,471.471 INFO    ] 200
[2026-10-28 09:05:04,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:05:04,529.529 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:05:04,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:05:04,611.611 INFO    ] No camera update needed
[2026-10-28 09:05:04,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:05:04,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:05:04,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:05:04,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:05:06,675.675 INFO    ] ================================================
[2026-10-28 09:05:06,692.692 INFO    ] Launching Daemon at Wed Oct 28 09:05:06 IST 2026
[2026-10-28 09:05:06,702.702 INFO    ] ================================================
[2026-10-28 09:05:07,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:05:07
[2026-10-28 09:05:08,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:05:08,397.397 INFO    ] Initializing speech engine...
[2026-10-28 09:05:08,409.409 INFO    ] 2026-10-28 09:05:08
[2026-10-28 09:05:08,719.719 INFO    ] 2026-10-28 09:05:08
[2026-10-28 09:05:08,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:05:09,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:05:09,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:05:09,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:05:09,381.381 INFO    ] time= 28/10/2026 09:05:09
[2026-10-28 09:05:09,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:05:09,477.477 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:05:09,605.605 INFO    ] No existing commands found in stream
[2026-10-28 09:05:14,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:05:14,637.637 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-28 09:05:17,757.757 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:05:17,760.760 INFO    ] Checking for system updates...
[2026-10-28 09:05:17,795.795 INFO    ] 200
[2026-10-28 09:05:17,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:05:17,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:05:17,852.852 INFO    ] No update needed
[2026-10-28 09:05:17,855.855 INFO    ] Checking for camera pi updates...
[2026-10-28 09:05:17,890.890 INFO    ] 200
[2026-10-28 09:05:17,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:05:17,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:05:18,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:05:18,025.025 INFO    ] No camera update needed
[2026-10-28 09:05:18,028.028 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:05:18,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:05:18,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:05:18,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:05:20,085.085 INFO    ] ================================================
[2026-10-28 09:05:20,100.100 INFO    ] Launching Daemon at Wed Oct 28 09:05:20 IST 2026
[2026-10-28 09:05:20,111.111 INFO    ] ================================================
[2026-10-28 09:05:20,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:05:20
[2026-10-28 09:05:21,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:05:21,609.609 INFO    ] Initializing speech engine...
[2026-10-28 09:05:21,615.615 INFO    ] 2026-10-28 09:05:21
[2026-10-28 09:05:21,895.895 INFO    ] 2026-10-28 09:05:21
[2026-10-28 09:05:21,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:05:22,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:05:22,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:05:22,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:05:22,591.591 INFO    ] time= 28/10/2026 09:05:22
[2026-10-28 09:05:22,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:05:22,693.693 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:05:22,840.840 INFO    ] No existing commands found in stream
[2026-10-28 09:05:27,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:05:27,859.859 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-28 09:05:30,950.950 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:05:30,953.953 INFO    ] Checking for system updates...
[2026-10-28 09:05:30,988.988 INFO    ] 200
[2026-10-28 09:05:30,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:05:31,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:05:31,053.053 INFO    ] No update needed
[2026-10-28 09:05:31,056.056 INFO    ] Checking for camera pi updates...
[2026-10-28 09:05:31,089.089 INFO    ] 200
[2026-10-28 09:05:31,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:05:31,132.132 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:05:31,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:05:31,232.232 INFO    ] No camera update needed
[2026-10-28 09:05:31,235.235 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:05:31,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:05:31,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:05:31,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:05:33,295.295 INFO    ] ================================================
[2026-10-28 09:05:33,313.313 INFO    ] Launching Daemon at Wed Oct 28 09:05:33 IST 2026
[2026-10-28 09:05:33,324.324 INFO    ] ================================================
[2026-10-28 09:05:33,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:05:33
[2026-10-28 09:05:34,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:05:34,741.741 INFO    ] Initializing speech engine...
[2026-10-28 09:05:34,751.751 INFO    ] 2026-10-28 09:05:34
[2026-10-28 09:05:35,001.001 INFO    ] 2026-10-28 09:05:34
[2026-10-28 09:05:35,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:05:35,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:05:35,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:05:35,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:05:35,586.586 INFO    ] time= 28/10/2026 09:05:35
[2026-10-28 09:05:35,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:05:35,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:05:35,791.791 INFO    ] No existing commands found in stream
[2026-10-28 09:05:40,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:05:40,803.803 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-28 09:05:43,228.228 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:05:43,231.231 INFO    ] Checking for system updates...
[2026-10-28 09:05:43,267.267 INFO    ] 200
[2026-10-28 09:05:43,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:05:43,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:05:43,331.331 INFO    ] No update needed
[2026-10-28 09:05:43,333.333 INFO    ] Checking for camera pi updates...
[2026-10-28 09:05:43,366.366 INFO    ] 200
[2026-10-28 09:05:43,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:05:43,408.408 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:05:43,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:05:43,490.490 INFO    ] No camera update needed
[2026-10-28 09:05:43,493.493 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:05:43,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:05:43,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:05:43,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:05:45,547.547 INFO    ] ================================================
[2026-10-28 09:05:45,562.562 INFO    ] Launching Daemon at Wed Oct 28 09:05:45 IST 2026
[2026-10-28 09:05:45,574.574 INFO    ] ================================================
[2026-10-28 09:05:46,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:05:46
[2026-10-28 09:05:46,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:05:47,024.024 INFO    ] Initializing speech engine...
[2026-10-28 09:05:47,037.037 INFO    ] 2026-10-28 09:05:47
[2026-10-28 09:05:47,283.283 INFO    ] 2026-10-28 09:05:47
[2026-10-28 09:05:47,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:05:47,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:05:47,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:05:47,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:05:47,838.838 INFO    ] time= 28/10/2026 09:05:47
[2026-10-28 09:05:47,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:05:47,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:05:47,992.992 INFO    ] No existing commands found in stream
[2026-10-28 09:05:53,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:05:53,018.018 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-28 09:05:56,426.426 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:05:56,428.428 INFO    ] Checking for system updates...
[2026-10-28 09:05:56,464.464 INFO    ] 200
[2026-10-28 09:05:56,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:05:56,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:05:56,521.521 INFO    ] No update needed
[2026-10-28 09:05:56,524.524 INFO    ] Checking for camera pi updates...
[2026-10-28 09:05:56,557.557 INFO    ] 200
[2026-10-28 09:05:56,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:05:56,604.604 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:05:56,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:05:56,681.681 INFO    ] No camera update needed
[2026-10-28 09:05:56,684.684 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:05:56,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:05:56,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:05:56,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:05:58,737.737 INFO    ] ================================================
[2026-10-28 09:05:58,752.752 INFO    ] Launching Daemon at Wed Oct 28 09:05:58 IST 2026
[2026-10-28 09:05:58,764.764 INFO    ] ================================================
[2026-10-28 09:05:59,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:05:59
[2026-10-28 09:06:00,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:06:00,257.257 INFO    ] Initializing speech engine...
[2026-10-28 09:06:00,280.280 INFO    ] 2026-10-28 09:06:00
[2026-10-28 09:06:00,536.536 INFO    ] 2026-10-28 09:06:00
[2026-10-28 09:06:00,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:06:00,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:06:00,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:06:01,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:06:01,105.105 INFO    ] time= 28/10/2026 09:06:01
[2026-10-28 09:06:01,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:06:01,130.130 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:06:01,460.460 INFO    ] No existing commands found in stream
[2026-10-28 09:06:06,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:06:06,494.494 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-28 09:06:08,127.127 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:06:08,130.130 INFO    ] Checking for system updates...
[2026-10-28 09:06:08,166.166 INFO    ] 200
[2026-10-28 09:06:08,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:06:08,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:06:08,229.229 INFO    ] No update needed
[2026-10-28 09:06:08,231.231 INFO    ] Checking for camera pi updates...
[2026-10-28 09:06:08,264.264 INFO    ] 200
[2026-10-28 09:06:08,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:06:08,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:06:08,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:06:08,393.393 INFO    ] No camera update needed
[2026-10-28 09:06:08,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:06:08,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:06:08,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:06:08,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:06:10,447.447 INFO    ] ================================================
[2026-10-28 09:06:10,467.467 INFO    ] Launching Daemon at Wed Oct 28 09:06:10 IST 2026
[2026-10-28 09:06:10,479.479 INFO    ] ================================================
[2026-10-28 09:06:11,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:06:11
[2026-10-28 09:06:11,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:06:11,933.933 INFO    ] Initializing speech engine...
[2026-10-28 09:06:11,942.942 INFO    ] 2026-10-28 09:06:11
[2026-10-28 09:06:12,191.191 INFO    ] 2026-10-28 09:06:12
[2026-10-28 09:06:12,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:06:12,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:06:12,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:06:12,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:06:12,746.746 INFO    ] time= 28/10/2026 09:06:12
[2026-10-28 09:06:12,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:06:12,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:06:12,914.914 INFO    ] No existing commands found in stream
[2026-10-28 09:06:17,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:06:17,949.949 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 09:06:22,165.165 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:06:22,167.167 INFO    ] Checking for system updates...
[2026-10-28 09:06:22,208.208 INFO    ] 200
[2026-10-28 09:06:22,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:06:22,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:06:22,269.269 INFO    ] No update needed
[2026-10-28 09:06:22,272.272 INFO    ] Checking for camera pi updates...
[2026-10-28 09:06:22,309.309 INFO    ] 200
[2026-10-28 09:06:22,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:06:22,359.359 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:06:22,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:06:22,442.442 INFO    ] No camera update needed
[2026-10-28 09:06:22,445.445 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:06:22,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:06:22,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:06:22,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:06:24,501.501 INFO    ] ================================================
[2026-10-28 09:06:24,516.516 INFO    ] Launching Daemon at Wed Oct 28 09:06:24 IST 2026
[2026-10-28 09:06:24,527.527 INFO    ] ================================================
[2026-10-28 09:06:25,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:06:25
[2026-10-28 09:06:25,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:06:25,921.921 INFO    ] Initializing speech engine...
[2026-10-28 09:06:25,929.929 INFO    ] 2026-10-28 09:06:25
[2026-10-28 09:06:26,205.205 INFO    ] 2026-10-28 09:06:26
[2026-10-28 09:06:26,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:06:26,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:06:26,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:06:26,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:06:26,702.702 INFO    ] time= 28/10/2026 09:06:26
[2026-10-28 09:06:26,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:06:26,805.805 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:06:26,937.937 INFO    ] No existing commands found in stream
[2026-10-28 09:06:31,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:06:31,958.958 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-28 09:06:32,948.948 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:06:32,951.951 INFO    ] Checking for system updates...
[2026-10-28 09:06:33,002.002 INFO    ] 200
[2026-10-28 09:06:33,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:06:33,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:06:33,071.071 INFO    ] No update needed
[2026-10-28 09:06:33,074.074 INFO    ] Checking for camera pi updates...
[2026-10-28 09:06:33,111.111 INFO    ] 200
[2026-10-28 09:06:33,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:06:33,153.153 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:06:33,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:06:33,253.253 INFO    ] No camera update needed
[2026-10-28 09:06:33,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:06:33,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:06:33,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:06:33,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:06:35,308.308 INFO    ] ================================================
[2026-10-28 09:06:35,323.323 INFO    ] Launching Daemon at Wed Oct 28 09:06:35 IST 2026
[2026-10-28 09:06:35,334.334 INFO    ] ================================================
[2026-10-28 09:06:35,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:06:35
[2026-10-28 09:06:36,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:06:36,923.923 INFO    ] Initializing speech engine...
[2026-10-28 09:06:36,941.941 INFO    ] 2026-10-28 09:06:36
[2026-10-28 09:06:37,218.218 INFO    ] 2026-10-28 09:06:37
[2026-10-28 09:06:37,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:06:37,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:06:37,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:06:37,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:06:37,800.800 INFO    ] time= 28/10/2026 09:06:37
[2026-10-28 09:06:37,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:06:37,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:06:37,971.971 INFO    ] No existing commands found in stream
[2026-10-28 09:06:42,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:06:42,986.986 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-28 09:06:44,913.913 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:06:44,917.917 INFO    ] Checking for system updates...
[2026-10-28 09:06:44,958.958 INFO    ] 200
[2026-10-28 09:06:44,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:06:45,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:06:45,022.022 INFO    ] No update needed
[2026-10-28 09:06:45,025.025 INFO    ] Checking for camera pi updates...
[2026-10-28 09:06:45,059.059 INFO    ] 200
[2026-10-28 09:06:45,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:06:45,109.109 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:06:45,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:06:45,219.219 INFO    ] No camera update needed
[2026-10-28 09:06:45,222.222 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:06:45,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:06:45,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:06:45,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:06:47,277.277 INFO    ] ================================================
[2026-10-28 09:06:47,293.293 INFO    ] Launching Daemon at Wed Oct 28 09:06:47 IST 2026
[2026-10-28 09:06:47,304.304 INFO    ] ================================================
[2026-10-28 09:06:47,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:06:47
[2026-10-28 09:06:48,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:06:48,952.952 INFO    ] Initializing speech engine...
[2026-10-28 09:06:48,957.957 INFO    ] 2026-10-28 09:06:48
[2026-10-28 09:06:49,272.272 INFO    ] 2026-10-28 09:06:49
[2026-10-28 09:06:49,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:06:49,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:06:49,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:06:49,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:06:49,792.792 INFO    ] time= 28/10/2026 09:06:49
[2026-10-28 09:06:49,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:06:49,828.828 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:06:49,947.947 INFO    ] No existing commands found in stream
[2026-10-28 09:06:54,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:06:54,986.986 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-28 09:06:57,654.654 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:06:57,657.657 INFO    ] Checking for system updates...
[2026-10-28 09:06:57,694.694 INFO    ] 200
[2026-10-28 09:06:57,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:06:57,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:06:57,754.754 INFO    ] No update needed
[2026-10-28 09:06:57,757.757 INFO    ] Checking for camera pi updates...
[2026-10-28 09:06:57,790.790 INFO    ] 200
[2026-10-28 09:06:57,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:06:57,834.834 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:06:57,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:06:57,912.912 INFO    ] No camera update needed
[2026-10-28 09:06:57,915.915 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:06:57,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:06:57,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:06:57,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:06:59,967.967 INFO    ] ================================================
[2026-10-28 09:06:59,982.982 INFO    ] Launching Daemon at Wed Oct 28 09:06:59 IST 2026
[2026-10-28 09:06:59,992.992 INFO    ] ================================================
[2026-10-28 09:07:00,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:07:00
[2026-10-28 09:07:01,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:07:01,881.881 INFO    ] Initializing speech engine...
[2026-10-28 09:07:01,888.888 INFO    ] 2026-10-28 09:07:01
[2026-10-28 09:07:02,301.301 INFO    ] 2026-10-28 09:07:02
[2026-10-28 09:07:02,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:07:02,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:07:02,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:07:02,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:07:02,901.901 INFO    ] time= 28/10/2026 09:07:02
[2026-10-28 09:07:02,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:07:02,956.956 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:07:03,042.042 INFO    ] No existing commands found in stream
[2026-10-28 09:07:08,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:07:08,069.069 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-28 09:07:12,628.628 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:07:12,630.630 INFO    ] Checking for system updates...
[2026-10-28 09:07:12,669.669 INFO    ] 200
[2026-10-28 09:07:12,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:07:12,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:07:12,726.726 INFO    ] No update needed
[2026-10-28 09:07:12,729.729 INFO    ] Checking for camera pi updates...
[2026-10-28 09:07:12,765.765 INFO    ] 200
[2026-10-28 09:07:12,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:07:12,807.807 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:07:12,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:07:12,894.894 INFO    ] No camera update needed
[2026-10-28 09:07:12,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:07:12,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:07:12,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:07:12,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:07:14,951.951 INFO    ] ================================================
[2026-10-28 09:07:14,967.967 INFO    ] Launching Daemon at Wed Oct 28 09:07:14 IST 2026
[2026-10-28 09:07:14,977.977 INFO    ] ================================================
[2026-10-28 09:07:15,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:07:15
[2026-10-28 09:07:16,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:07:16,467.467 INFO    ] Initializing speech engine...
[2026-10-28 09:07:16,479.479 INFO    ] 2026-10-28 09:07:16
[2026-10-28 09:07:16,784.784 INFO    ] 2026-10-28 09:07:16
[2026-10-28 09:07:16,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:07:17,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:07:17,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:07:17,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:07:17,290.290 INFO    ] time= 28/10/2026 09:07:17
[2026-10-28 09:07:17,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:07:17,340.340 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:07:17,472.472 INFO    ] No existing commands found in stream
[2026-10-28 09:07:22,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:07:22,512.512 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 09:07:23,950.950 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:07:23,953.953 INFO    ] Checking for system updates...
[2026-10-28 09:07:23,990.990 INFO    ] 200
[2026-10-28 09:07:23,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:07:24,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:07:24,050.050 INFO    ] No update needed
[2026-10-28 09:07:24,053.053 INFO    ] Checking for camera pi updates...
[2026-10-28 09:07:24,091.091 INFO    ] 200
[2026-10-28 09:07:24,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:07:24,139.139 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:07:24,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:07:24,230.230 INFO    ] No camera update needed
[2026-10-28 09:07:24,232.232 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:07:24,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:07:24,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:07:24,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:07:26,285.285 INFO    ] ================================================
[2026-10-28 09:07:26,299.299 INFO    ] Launching Daemon at Wed Oct 28 09:07:26 IST 2026
[2026-10-28 09:07:26,310.310 INFO    ] ================================================
[2026-10-28 09:07:26,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:07:26
[2026-10-28 09:07:27,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:07:27,731.731 INFO    ] Initializing speech engine...
[2026-10-28 09:07:27,740.740 INFO    ] 2026-10-28 09:07:27
[2026-10-28 09:07:27,993.993 INFO    ] 2026-10-28 09:07:27
[2026-10-28 09:07:28,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:07:28,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:07:28,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:07:28,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:07:28,743.743 INFO    ] time= 28/10/2026 09:07:28
[2026-10-28 09:07:28,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:07:28,822.822 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:07:28,988.988 INFO    ] No existing commands found in stream
[2026-10-28 09:07:34,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:07:34,024.024 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-28 09:07:37,663.663 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:07:37,666.666 INFO    ] Checking for system updates...
[2026-10-28 09:07:37,702.702 INFO    ] 200
[2026-10-28 09:07:37,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:07:37,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:07:37,760.760 INFO    ] No update needed
[2026-10-28 09:07:37,763.763 INFO    ] Checking for camera pi updates...
[2026-10-28 09:07:37,800.800 INFO    ] 200
[2026-10-28 09:07:37,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:07:37,844.844 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:07:37,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:07:37,928.928 INFO    ] No camera update needed
[2026-10-28 09:07:37,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:07:37,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:07:37,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:07:37,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:07:39,982.982 INFO    ] ================================================
[2026-10-28 09:07:40,997.997 INFO    ] Launching Daemon at Wed Oct 28 09:07:39 IST 2026
[2026-10-28 09:07:40,007.007 INFO    ] ================================================
[2026-10-28 09:07:40,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:07:40
[2026-10-28 09:07:41,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:07:41,429.429 INFO    ] Initializing speech engine...
[2026-10-28 09:07:41,439.439 INFO    ] 2026-10-28 09:07:41
[2026-10-28 09:07:41,687.687 INFO    ] 2026-10-28 09:07:41
[2026-10-28 09:07:41,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:07:41,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:07:41,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:07:42,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:07:42,251.251 INFO    ] time= 28/10/2026 09:07:42
[2026-10-28 09:07:42,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:07:42,278.278 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:07:42,410.410 INFO    ] No existing commands found in stream
[2026-10-28 09:07:47,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:07:47,426.426 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-28 09:07:50,411.411 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:07:50,414.414 INFO    ] Checking for system updates...
[2026-10-28 09:07:50,449.449 INFO    ] 200
[2026-10-28 09:07:50,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:07:50,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:07:50,514.514 INFO    ] No update needed
[2026-10-28 09:07:50,516.516 INFO    ] Checking for camera pi updates...
[2026-10-28 09:07:50,549.549 INFO    ] 200
[2026-10-28 09:07:50,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:07:50,592.592 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:07:50,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:07:50,681.681 INFO    ] No camera update needed
[2026-10-28 09:07:50,684.684 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:07:50,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:07:50,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:07:50,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:07:52,737.737 INFO    ] ================================================
[2026-10-28 09:07:52,752.752 INFO    ] Launching Daemon at Wed Oct 28 09:07:52 IST 2026
[2026-10-28 09:07:52,763.763 INFO    ] ================================================
[2026-10-28 09:07:53,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:07:53
[2026-10-28 09:07:54,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:07:54,355.355 INFO    ] Initializing speech engine...
[2026-10-28 09:07:54,365.365 INFO    ] 2026-10-28 09:07:54
[2026-10-28 09:07:54,648.648 INFO    ] 2026-10-28 09:07:54
[2026-10-28 09:07:54,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:07:54,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:07:54,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:07:55,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:07:55,195.195 INFO    ] time= 28/10/2026 09:07:55
[2026-10-28 09:07:55,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:07:55,231.231 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:07:55,338.338 INFO    ] No existing commands found in stream
[2026-10-28 09:08:00,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:08:00,370.370 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 09:08:04,929.929 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:08:04,932.932 INFO    ] Checking for system updates...
[2026-10-28 09:08:04,989.989 INFO    ] 200
[2026-10-28 09:08:04,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:08:05,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:08:05,055.055 INFO    ] No update needed
[2026-10-28 09:08:05,058.058 INFO    ] Checking for camera pi updates...
[2026-10-28 09:08:05,092.092 INFO    ] 200
[2026-10-28 09:08:05,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:08:05,140.140 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:08:05,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:08:05,343.343 INFO    ] No camera update needed
[2026-10-28 09:08:05,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:08:05,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:08:05,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:08:05,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:08:07,400.400 INFO    ] ================================================
[2026-10-28 09:08:07,415.415 INFO    ] Launching Daemon at Wed Oct 28 09:08:07 IST 2026
[2026-10-28 09:08:07,426.426 INFO    ] ================================================
[2026-10-28 09:08:08,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:08:08
[2026-10-28 09:08:08,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:08:09,074.074 INFO    ] Initializing speech engine...
[2026-10-28 09:08:09,088.088 INFO    ] 2026-10-28 09:08:09
[2026-10-28 09:08:09,399.399 INFO    ] 2026-10-28 09:08:09
[2026-10-28 09:08:09,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:08:09,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:08:09,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:08:09,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:08:09,922.922 INFO    ] time= 28/10/2026 09:08:09
[2026-10-28 09:08:09,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:08:09,960.960 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:08:10,093.093 INFO    ] No existing commands found in stream
[2026-10-28 09:08:15,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:08:15,122.122 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-28 09:08:17,023.023 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:08:17,026.026 INFO    ] Checking for system updates...
[2026-10-28 09:08:17,063.063 INFO    ] 200
[2026-10-28 09:08:17,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:08:17,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:08:17,127.127 INFO    ] No update needed
[2026-10-28 09:08:17,129.129 INFO    ] Checking for camera pi updates...
[2026-10-28 09:08:17,162.162 INFO    ] 200
[2026-10-28 09:08:17,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:08:17,210.210 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:08:17,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:08:17,307.307 INFO    ] No camera update needed
[2026-10-28 09:08:17,310.310 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:08:17,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:08:17,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:08:17,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:08:19,363.363 INFO    ] ================================================
[2026-10-28 09:08:19,378.378 INFO    ] Launching Daemon at Wed Oct 28 09:08:19 IST 2026
[2026-10-28 09:08:19,389.389 INFO    ] ================================================
[2026-10-28 09:08:20,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:08:20
[2026-10-28 09:08:20,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:08:21,050.050 INFO    ] Initializing speech engine...
[2026-10-28 09:08:21,065.065 INFO    ] 2026-10-28 09:08:21
[2026-10-28 09:08:21,353.353 INFO    ] 2026-10-28 09:08:21
[2026-10-28 09:08:21,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:08:21,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:08:21,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:08:21,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:08:21,930.930 INFO    ] time= 28/10/2026 09:08:21
[2026-10-28 09:08:21,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:08:21,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:08:22,126.126 INFO    ] No existing commands found in stream
[2026-10-28 09:08:27,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:08:27,149.149 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 09:08:30,813.813 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:08:30,816.816 INFO    ] Checking for system updates...
[2026-10-28 09:08:30,854.854 INFO    ] 200
[2026-10-28 09:08:30,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:08:30,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:08:30,921.921 INFO    ] No update needed
[2026-10-28 09:08:30,924.924 INFO    ] Checking for camera pi updates...
[2026-10-28 09:08:30,963.963 INFO    ] 200
[2026-10-28 09:08:30,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:08:31,007.007 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:08:31,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:08:31,094.094 INFO    ] No camera update needed
[2026-10-28 09:08:31,096.096 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:08:31,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:08:31,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:08:31,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:08:33,156.156 INFO    ] ================================================
[2026-10-28 09:08:33,172.172 INFO    ] Launching Daemon at Wed Oct 28 09:08:33 IST 2026
[2026-10-28 09:08:33,183.183 INFO    ] ================================================
[2026-10-28 09:08:33,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:08:33
[2026-10-28 09:08:34,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:08:34,842.842 INFO    ] Initializing speech engine...
[2026-10-28 09:08:34,850.850 INFO    ] 2026-10-28 09:08:34
[2026-10-28 09:08:35,165.165 INFO    ] 2026-10-28 09:08:35
[2026-10-28 09:08:35,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:08:35,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:08:35,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:08:35,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:08:35,691.691 INFO    ] time= 28/10/2026 09:08:35
[2026-10-28 09:08:35,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:08:35,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:08:35,833.833 INFO    ] No existing commands found in stream
[2026-10-28 09:08:40,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:08:40,876.876 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-28 09:08:42,428.428 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:08:42,431.431 INFO    ] Checking for system updates...
[2026-10-28 09:08:42,468.468 INFO    ] 200
[2026-10-28 09:08:42,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:08:42,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:08:42,527.527 INFO    ] No update needed
[2026-10-28 09:08:42,530.530 INFO    ] Checking for camera pi updates...
[2026-10-28 09:08:42,564.564 INFO    ] 200
[2026-10-28 09:08:42,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:08:42,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:08:42,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:08:42,698.698 INFO    ] No camera update needed
[2026-10-28 09:08:42,701.701 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:08:42,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:08:42,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:08:42,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:08:44,759.759 INFO    ] ================================================
[2026-10-28 09:08:44,774.774 INFO    ] Launching Daemon at Wed Oct 28 09:08:44 IST 2026
[2026-10-28 09:08:44,785.785 INFO    ] ================================================
[2026-10-28 09:08:45,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:08:45
[2026-10-28 09:08:45,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:08:46,262.262 INFO    ] Initializing speech engine...
[2026-10-28 09:08:46,269.269 INFO    ] 2026-10-28 09:08:46
[2026-10-28 09:08:46,541.541 INFO    ] 2026-10-28 09:08:46
[2026-10-28 09:08:46,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:08:46,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:08:46,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:08:47,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:08:47,070.070 INFO    ] time= 28/10/2026 09:08:47
[2026-10-28 09:08:47,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:08:47,094.094 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:08:47,263.263 INFO    ] No existing commands found in stream
[2026-10-28 09:08:52,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:08:52,291.291 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-28 09:08:55,910.910 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:08:55,914.914 INFO    ] Checking for system updates...
[2026-10-28 09:08:55,956.956 INFO    ] 200
[2026-10-28 09:08:55,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:08:56,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:08:56,015.015 INFO    ] No update needed
[2026-10-28 09:08:56,018.018 INFO    ] Checking for camera pi updates...
[2026-10-28 09:08:56,056.056 INFO    ] 200
[2026-10-28 09:08:56,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:08:56,099.099 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:08:56,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:08:56,184.184 INFO    ] No camera update needed
[2026-10-28 09:08:56,187.187 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:08:56,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:08:56,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:08:56,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:08:58,241.241 INFO    ] ================================================
[2026-10-28 09:08:58,257.257 INFO    ] Launching Daemon at Wed Oct 28 09:08:58 IST 2026
[2026-10-28 09:08:58,268.268 INFO    ] ================================================
[2026-10-28 09:08:58,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:08:58
[2026-10-28 09:08:59,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:08:59,724.724 INFO    ] Initializing speech engine...
[2026-10-28 09:08:59,740.740 INFO    ] 2026-10-28 09:08:59
[2026-10-28 09:09:00,021.021 INFO    ] 2026-10-28 09:08:59
[2026-10-28 09:09:00,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:09:00,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:09:00,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:09:00,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:09:00,607.607 INFO    ] time= 28/10/2026 09:09:00
[2026-10-28 09:09:00,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:09:00,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:09:00,856.856 INFO    ] No existing commands found in stream
[2026-10-28 09:09:05,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:09:05,896.896 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 09:09:08,082.082 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:09:08,085.085 INFO    ] Checking for system updates...
[2026-10-28 09:09:08,121.121 INFO    ] 200
[2026-10-28 09:09:08,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:09:08,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:09:08,179.179 INFO    ] No update needed
[2026-10-28 09:09:08,182.182 INFO    ] Checking for camera pi updates...
[2026-10-28 09:09:08,215.215 INFO    ] 200
[2026-10-28 09:09:08,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:09:08,259.259 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:09:08,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:09:08,346.346 INFO    ] No camera update needed
[2026-10-28 09:09:08,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:09:08,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:09:08,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:09:08,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:09:10,400.400 INFO    ] ================================================
[2026-10-28 09:09:10,416.416 INFO    ] Launching Daemon at Wed Oct 28 09:09:10 IST 2026
[2026-10-28 09:09:10,427.427 INFO    ] ================================================
[2026-10-28 09:09:11,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:09:11
[2026-10-28 09:09:11,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:09:11,881.881 INFO    ] Initializing speech engine...
[2026-10-28 09:09:11,891.891 INFO    ] 2026-10-28 09:09:11
[2026-10-28 09:09:12,154.154 INFO    ] 2026-10-28 09:09:12
[2026-10-28 09:09:12,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:09:12,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:09:12,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:09:12,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:09:12,697.697 INFO    ] time= 28/10/2026 09:09:12
[2026-10-28 09:09:12,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:09:12,732.732 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:09:12,864.864 INFO    ] No existing commands found in stream
[2026-10-28 09:09:17,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:09:17,897.897 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-28 09:09:21,994.994 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:09:21,996.996 INFO    ] Checking for system updates...
[2026-10-28 09:09:22,034.034 INFO    ] 200
[2026-10-28 09:09:22,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:09:22,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:09:22,102.102 INFO    ] No update needed
[2026-10-28 09:09:22,104.104 INFO    ] Checking for camera pi updates...
[2026-10-28 09:09:22,141.141 INFO    ] 200
[2026-10-28 09:09:22,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:09:22,185.185 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:09:22,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:09:22,271.271 INFO    ] No camera update needed
[2026-10-28 09:09:22,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:09:22,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:09:22,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:09:22,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:09:24,328.328 INFO    ] ================================================
[2026-10-28 09:09:24,344.344 INFO    ] Launching Daemon at Wed Oct 28 09:09:24 IST 2026
[2026-10-28 09:09:24,355.355 INFO    ] ================================================
[2026-10-28 09:09:25,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:09:25
[2026-10-28 09:09:25,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:09:25,989.989 INFO    ] Initializing speech engine...
[2026-10-28 09:09:26,001.001 INFO    ] 2026-10-28 09:09:25
[2026-10-28 09:09:26,285.285 INFO    ] 2026-10-28 09:09:26
[2026-10-28 09:09:26,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:09:26,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:09:26,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:09:26,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:09:26,836.836 INFO    ] time= 28/10/2026 09:09:26
[2026-10-28 09:09:26,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:09:26,875.875 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:09:26,996.996 INFO    ] No existing commands found in stream
[2026-10-28 09:09:32,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:09:32,030.030 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-28 09:09:36,318.318 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:09:36,321.321 INFO    ] Checking for system updates...
[2026-10-28 09:09:36,382.382 INFO    ] 200
[2026-10-28 09:09:36,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:09:36,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:09:36,447.447 INFO    ] No update needed
[2026-10-28 09:09:36,450.450 INFO    ] Checking for camera pi updates...
[2026-10-28 09:09:36,489.489 INFO    ] 200
[2026-10-28 09:09:36,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:09:36,539.539 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:09:36,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:09:36,625.625 INFO    ] No camera update needed
[2026-10-28 09:09:36,628.628 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:09:36,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:09:36,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:09:36,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:09:38,685.685 INFO    ] ================================================
[2026-10-28 09:09:38,700.700 INFO    ] Launching Daemon at Wed Oct 28 09:09:38 IST 2026
[2026-10-28 09:09:38,711.711 INFO    ] ================================================
[2026-10-28 09:09:39,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:09:39
[2026-10-28 09:09:39,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:09:40,204.204 INFO    ] Initializing speech engine...
[2026-10-28 09:09:40,213.213 INFO    ] 2026-10-28 09:09:40
[2026-10-28 09:09:40,459.459 INFO    ] 2026-10-28 09:09:40
[2026-10-28 09:09:40,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:09:40,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:09:40,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:09:40,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:09:41,012.012 INFO    ] time= 28/10/2026 09:09:41
[2026-10-28 09:09:41,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:09:41,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:09:41,168.168 INFO    ] No existing commands found in stream
[2026-10-28 09:09:46,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:09:46,192.192 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-28 09:09:49,788.788 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:09:49,791.791 INFO    ] Checking for system updates...
[2026-10-28 09:09:49,832.832 INFO    ] 200
[2026-10-28 09:09:49,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:09:49,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:09:49,889.889 INFO    ] No update needed
[2026-10-28 09:09:49,891.891 INFO    ] Checking for camera pi updates...
[2026-10-28 09:09:49,924.924 INFO    ] 200
[2026-10-28 09:09:49,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:09:49,966.966 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:09:50,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:09:50,060.060 INFO    ] No camera update needed
[2026-10-28 09:09:50,062.062 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:09:50,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:09:50,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:09:50,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:09:52,116.116 INFO    ] ================================================
[2026-10-28 09:09:52,132.132 INFO    ] Launching Daemon at Wed Oct 28 09:09:52 IST 2026
[2026-10-28 09:09:52,144.144 INFO    ] ================================================
[2026-10-28 09:09:52,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:09:52
[2026-10-28 09:09:53,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:09:53,790.790 INFO    ] Initializing speech engine...
[2026-10-28 09:09:53,802.802 INFO    ] 2026-10-28 09:09:53
[2026-10-28 09:09:54,116.116 INFO    ] 2026-10-28 09:09:54
[2026-10-28 09:09:54,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:09:54,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:09:54,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:09:54,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:09:54,788.788 INFO    ] time= 28/10/2026 09:09:54
[2026-10-28 09:09:54,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:09:54,885.885 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:09:55,058.058 INFO    ] No existing commands found in stream
[2026-10-28 09:10:00,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:10:00,080.080 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-28 09:10:01,189.189 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:10:01,192.192 INFO    ] Checking for system updates...
[2026-10-28 09:10:01,230.230 INFO    ] 200
[2026-10-28 09:10:01,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:10:01,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:10:01,289.289 INFO    ] No update needed
[2026-10-28 09:10:01,292.292 INFO    ] Checking for camera pi updates...
[2026-10-28 09:10:01,329.329 INFO    ] 200
[2026-10-28 09:10:01,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:10:01,377.377 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:10:01,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:10:01,678.678 INFO    ] No camera update needed
[2026-10-28 09:10:01,681.681 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:10:01,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:10:01,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:10:01,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:10:03,736.736 INFO    ] ================================================
[2026-10-28 09:10:03,756.756 INFO    ] Launching Daemon at Wed Oct 28 09:10:03 IST 2026
[2026-10-28 09:10:03,767.767 INFO    ] ================================================
[2026-10-28 09:10:04,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:10:04
[2026-10-28 09:10:05,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:10:05,439.439 INFO    ] Initializing speech engine...
[2026-10-28 09:10:05,448.448 INFO    ] 2026-10-28 09:10:05
[2026-10-28 09:10:05,724.724 INFO    ] 2026-10-28 09:10:05
[2026-10-28 09:10:05,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:10:06,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:10:06,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:10:06,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:10:06,291.291 INFO    ] time= 28/10/2026 09:10:06
[2026-10-28 09:10:06,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:10:06,326.326 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:10:06,471.471 INFO    ] No existing commands found in stream
[2026-10-28 09:10:11,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:10:11,514.514 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-28 09:10:15,115.115 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:10:15,118.118 INFO    ] Checking for system updates...
[2026-10-28 09:10:15,156.156 INFO    ] 200
[2026-10-28 09:10:15,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:10:15,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:10:15,215.215 INFO    ] No update needed
[2026-10-28 09:10:15,218.218 INFO    ] Checking for camera pi updates...
[2026-10-28 09:10:15,256.256 INFO    ] 200
[2026-10-28 09:10:15,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:10:15,301.301 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:10:15,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:10:15,482.482 INFO    ] No camera update needed
[2026-10-28 09:10:15,485.485 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:10:15,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:10:15,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:10:15,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:10:17,542.542 INFO    ] ================================================
[2026-10-28 09:10:17,558.558 INFO    ] Launching Daemon at Wed Oct 28 09:10:17 IST 2026
[2026-10-28 09:10:17,568.568 INFO    ] ================================================
[2026-10-28 09:10:18,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:10:18
[2026-10-28 09:10:18,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:10:19,035.035 INFO    ] Initializing speech engine...
[2026-10-28 09:10:19,044.044 INFO    ] 2026-10-28 09:10:19
[2026-10-28 09:10:19,295.295 INFO    ] 2026-10-28 09:10:19
[2026-10-28 09:10:19,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:10:19,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:10:19,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:10:19,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:10:19,851.851 INFO    ] time= 28/10/2026 09:10:19
[2026-10-28 09:10:19,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:10:19,875.875 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:10:20,000.000 INFO    ] No existing commands found in stream
[2026-10-28 09:10:25,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:10:25,017.017 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-28 09:10:26,551.551 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:10:26,554.554 INFO    ] Checking for system updates...
[2026-10-28 09:10:26,589.589 INFO    ] 200
[2026-10-28 09:10:26,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:10:26,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:10:26,669.669 INFO    ] No update needed
[2026-10-28 09:10:26,671.671 INFO    ] Checking for camera pi updates...
[2026-10-28 09:10:26,705.705 INFO    ] 200
[2026-10-28 09:10:26,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:10:26,748.748 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:10:26,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:10:26,832.832 INFO    ] No camera update needed
[2026-10-28 09:10:26,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:10:26,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:10:26,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:10:26,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:10:28,887.887 INFO    ] ================================================
[2026-10-28 09:10:28,902.902 INFO    ] Launching Daemon at Wed Oct 28 09:10:28 IST 2026
[2026-10-28 09:10:28,913.913 INFO    ] ================================================
[2026-10-28 09:10:29,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:10:29
[2026-10-28 09:10:30,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:10:30,329.329 INFO    ] Initializing speech engine...
[2026-10-28 09:10:30,339.339 INFO    ] 2026-10-28 09:10:30
[2026-10-28 09:10:30,591.591 INFO    ] 2026-10-28 09:10:30
[2026-10-28 09:10:30,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:10:30,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:10:30,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:10:31,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:10:31,140.140 INFO    ] time= 28/10/2026 09:10:31
[2026-10-28 09:10:31,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:10:31,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:10:31,357.357 INFO    ] No existing commands found in stream
[2026-10-28 09:10:36,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:10:36,391.391 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 09:10:39,528.528 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:10:39,531.531 INFO    ] Checking for system updates...
[2026-10-28 09:10:39,570.570 INFO    ] 200
[2026-10-28 09:10:39,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:10:39,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:10:39,627.627 INFO    ] No update needed
[2026-10-28 09:10:39,630.630 INFO    ] Checking for camera pi updates...
[2026-10-28 09:10:39,667.667 INFO    ] 200
[2026-10-28 09:10:39,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:10:39,714.714 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:10:39,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:10:39,798.798 INFO    ] No camera update needed
[2026-10-28 09:10:39,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:10:39,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:10:39,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:10:39,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:10:41,856.856 INFO    ] ================================================
[2026-10-28 09:10:41,871.871 INFO    ] Launching Daemon at Wed Oct 28 09:10:41 IST 2026
[2026-10-28 09:10:41,882.882 INFO    ] ================================================
[2026-10-28 09:10:42,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:10:42
[2026-10-28 09:10:43,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:10:43,287.287 INFO    ] Initializing speech engine...
[2026-10-28 09:10:43,296.296 INFO    ] 2026-10-28 09:10:43
[2026-10-28 09:10:43,592.592 INFO    ] 2026-10-28 09:10:43
[2026-10-28 09:10:43,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:10:43,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:10:43,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:10:44,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:10:44,215.215 INFO    ] time= 28/10/2026 09:10:44
[2026-10-28 09:10:44,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:10:44,239.239 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:10:44,368.368 INFO    ] No existing commands found in stream
[2026-10-28 09:10:49,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:10:49,396.396 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-28 09:10:52,344.344 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:10:52,347.347 INFO    ] Checking for system updates...
[2026-10-28 09:10:52,386.386 INFO    ] 200
[2026-10-28 09:10:52,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:10:52,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:10:52,444.444 INFO    ] No update needed
[2026-10-28 09:10:52,447.447 INFO    ] Checking for camera pi updates...
[2026-10-28 09:10:52,480.480 INFO    ] 200
[2026-10-28 09:10:52,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:10:52,524.524 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:10:52,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:10:52,614.614 INFO    ] No camera update needed
[2026-10-28 09:10:52,617.617 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:10:52,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:10:52,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:10:52,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:10:54,672.672 INFO    ] ================================================
[2026-10-28 09:10:54,688.688 INFO    ] Launching Daemon at Wed Oct 28 09:10:54 IST 2026
[2026-10-28 09:10:54,698.698 INFO    ] ================================================
[2026-10-28 09:10:55,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:10:55
[2026-10-28 09:10:55,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:10:56,115.115 INFO    ] Initializing speech engine...
[2026-10-28 09:10:56,125.125 INFO    ] 2026-10-28 09:10:56
[2026-10-28 09:10:56,373.373 INFO    ] 2026-10-28 09:10:56
[2026-10-28 09:10:56,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:10:56,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:10:56,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:10:56,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:10:56,944.944 INFO    ] time= 28/10/2026 09:10:56
[2026-10-28 09:10:56,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:10:56,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:10:57,094.094 INFO    ] No existing commands found in stream
[2026-10-28 09:11:02,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:11:02,114.114 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 09:11:02,770.770 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:11:02,773.773 INFO    ] Checking for system updates...
[2026-10-28 09:11:02,829.829 INFO    ] 200
[2026-10-28 09:11:02,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:11:02,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:11:02,907.907 INFO    ] No update needed
[2026-10-28 09:11:02,909.909 INFO    ] Checking for camera pi updates...
[2026-10-28 09:11:02,949.949 INFO    ] 200
[2026-10-28 09:11:02,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:11:02,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:11:03,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:11:03,089.089 INFO    ] No camera update needed
[2026-10-28 09:11:03,091.091 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:11:03,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:11:03,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:11:03,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:11:05,143.143 INFO    ] ================================================
[2026-10-28 09:11:05,158.158 INFO    ] Launching Daemon at Wed Oct 28 09:11:05 IST 2026
[2026-10-28 09:11:05,169.169 INFO    ] ================================================
[2026-10-28 09:11:05,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:11:05
[2026-10-28 09:11:06,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:11:06,624.624 INFO    ] Initializing speech engine...
[2026-10-28 09:11:06,638.638 INFO    ] 2026-10-28 09:11:06
[2026-10-28 09:11:06,918.918 INFO    ] 2026-10-28 09:11:06
[2026-10-28 09:11:06,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:11:07,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:11:07,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:11:07,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:11:07,469.469 INFO    ] time= 28/10/2026 09:11:07
[2026-10-28 09:11:07,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:11:07,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:11:07,625.625 INFO    ] No existing commands found in stream
[2026-10-28 09:11:12,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:11:12,655.655 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-28 09:11:14,561.561 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:11:14,564.564 INFO    ] Checking for system updates...
[2026-10-28 09:11:14,600.600 INFO    ] 200
[2026-10-28 09:11:14,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:11:14,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:11:14,674.674 INFO    ] No update needed
[2026-10-28 09:11:14,678.678 INFO    ] Checking for camera pi updates...
[2026-10-28 09:11:14,716.716 INFO    ] 200
[2026-10-28 09:11:14,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:11:14,763.763 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:11:14,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:11:14,860.860 INFO    ] No camera update needed
[2026-10-28 09:11:14,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:11:14,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:11:14,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:11:14,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:11:16,916.916 INFO    ] ================================================
[2026-10-28 09:11:16,930.930 INFO    ] Launching Daemon at Wed Oct 28 09:11:16 IST 2026
[2026-10-28 09:11:16,941.941 INFO    ] ================================================
[2026-10-28 09:11:17,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:11:17
[2026-10-28 09:11:18,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:11:18,581.581 INFO    ] Initializing speech engine...
[2026-10-28 09:11:18,592.592 INFO    ] 2026-10-28 09:11:18
[2026-10-28 09:11:18,911.911 INFO    ] 2026-10-28 09:11:18
[2026-10-28 09:11:18,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:11:19,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:11:19,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:11:19,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:11:19,611.611 INFO    ] time= 28/10/2026 09:11:19
[2026-10-28 09:11:19,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:11:19,729.729 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:11:19,857.857 INFO    ] No existing commands found in stream
[2026-10-28 09:11:24,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:11:24,880.880 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-28 09:11:27,666.666 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:11:27,669.669 INFO    ] Checking for system updates...
[2026-10-28 09:11:27,706.706 INFO    ] 200
[2026-10-28 09:11:27,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:11:27,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:11:27,765.765 INFO    ] No update needed
[2026-10-28 09:11:27,768.768 INFO    ] Checking for camera pi updates...
[2026-10-28 09:11:27,803.803 INFO    ] 200
[2026-10-28 09:11:27,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:11:27,847.847 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:11:27,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:11:27,932.932 INFO    ] No camera update needed
[2026-10-28 09:11:27,935.935 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:11:27,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:11:27,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:11:27,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:11:29,993.993 INFO    ] ================================================
[2026-10-28 09:11:30,008.008 INFO    ] Launching Daemon at Wed Oct 28 09:11:30 IST 2026
[2026-10-28 09:11:30,019.019 INFO    ] ================================================
[2026-10-28 09:11:30,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:11:30
[2026-10-28 09:11:31,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:11:31,675.675 INFO    ] Initializing speech engine...
[2026-10-28 09:11:31,681.681 INFO    ] 2026-10-28 09:11:31
[2026-10-28 09:11:31,987.987 INFO    ] 2026-10-28 09:11:31
[2026-10-28 09:11:32,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:11:32,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:11:32,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:11:32,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:11:32,588.588 INFO    ] time= 28/10/2026 09:11:32
[2026-10-28 09:11:32,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:11:32,605.605 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:11:32,715.715 INFO    ] No existing commands found in stream
[2026-10-28 09:11:37,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:11:37,748.748 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-28 09:11:39,945.945 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:11:39,948.948 INFO    ] Checking for system updates...
[2026-10-28 09:11:39,987.987 INFO    ] 200
[2026-10-28 09:11:39,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:11:40,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:11:40,051.051 INFO    ] No update needed
[2026-10-28 09:11:40,054.054 INFO    ] Checking for camera pi updates...
[2026-10-28 09:11:40,087.087 INFO    ] 200
[2026-10-28 09:11:40,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:11:40,130.130 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:11:40,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:11:40,209.209 INFO    ] No camera update needed
[2026-10-28 09:11:40,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:11:40,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:11:40,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:11:40,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:11:42,264.264 INFO    ] ================================================
[2026-10-28 09:11:42,279.279 INFO    ] Launching Daemon at Wed Oct 28 09:11:42 IST 2026
[2026-10-28 09:11:42,290.290 INFO    ] ================================================
[2026-10-28 09:11:42,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:11:42
[2026-10-28 09:11:43,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:11:43,913.913 INFO    ] Initializing speech engine...
[2026-10-28 09:11:43,926.926 INFO    ] 2026-10-28 09:11:43
[2026-10-28 09:11:44,240.240 INFO    ] 2026-10-28 09:11:44
[2026-10-28 09:11:44,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:11:44,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:11:44,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:11:44,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:11:44,776.776 INFO    ] time= 28/10/2026 09:11:44
[2026-10-28 09:11:44,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:11:44,815.815 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:11:44,949.949 INFO    ] No existing commands found in stream
[2026-10-28 09:11:49,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:11:49,983.983 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-28 09:11:51,916.916 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:11:51,918.918 INFO    ] Checking for system updates...
[2026-10-28 09:11:51,960.960 INFO    ] 200
[2026-10-28 09:11:51,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:11:52,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:11:52,048.048 INFO    ] No update needed
[2026-10-28 09:11:52,050.050 INFO    ] Checking for camera pi updates...
[2026-10-28 09:11:52,084.084 INFO    ] 200
[2026-10-28 09:11:52,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:11:52,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:11:52,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:11:52,222.222 INFO    ] No camera update needed
[2026-10-28 09:11:52,225.225 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:11:52,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:11:52,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:11:52,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:11:54,277.277 INFO    ] ================================================
[2026-10-28 09:11:54,292.292 INFO    ] Launching Daemon at Wed Oct 28 09:11:54 IST 2026
[2026-10-28 09:11:54,303.303 INFO    ] ================================================
[2026-10-28 09:11:54,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:11:54
[2026-10-28 09:11:55,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:11:55,708.708 INFO    ] Initializing speech engine...
[2026-10-28 09:11:55,731.731 INFO    ] 2026-10-28 09:11:55
[2026-10-28 09:11:55,987.987 INFO    ] 2026-10-28 09:11:55
[2026-10-28 09:11:56,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:11:56,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:11:56,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:11:56,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:11:56,556.556 INFO    ] time= 28/10/2026 09:11:56
[2026-10-28 09:11:56,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:11:56,583.583 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:11:56,716.716 INFO    ] No existing commands found in stream
[2026-10-28 09:12:01,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:12:01,739.739 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-28 09:12:05,088.088 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:12:05,090.090 INFO    ] Checking for system updates...
[2026-10-28 09:12:05,127.127 INFO    ] 200
[2026-10-28 09:12:05,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:12:05,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:12:05,195.195 INFO    ] No update needed
[2026-10-28 09:12:05,198.198 INFO    ] Checking for camera pi updates...
[2026-10-28 09:12:05,232.232 INFO    ] 200
[2026-10-28 09:12:05,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:12:05,282.282 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:12:05,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:12:05,369.369 INFO    ] No camera update needed
[2026-10-28 09:12:05,371.371 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:12:05,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:12:05,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:12:05,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:12:07,427.427 INFO    ] ================================================
[2026-10-28 09:12:07,442.442 INFO    ] Launching Daemon at Wed Oct 28 09:12:07 IST 2026
[2026-10-28 09:12:07,453.453 INFO    ] ================================================
[2026-10-28 09:12:08,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:12:08
[2026-10-28 09:12:08,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:12:09,109.109 INFO    ] Initializing speech engine...
[2026-10-28 09:12:09,118.118 INFO    ] 2026-10-28 09:12:09
[2026-10-28 09:12:09,399.399 INFO    ] 2026-10-28 09:12:09
[2026-10-28 09:12:09,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:12:09,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:12:09,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:12:09,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:12:09,975.975 INFO    ] time= 28/10/2026 09:12:09
[2026-10-28 09:12:09,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:12:10,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:12:10,146.146 INFO    ] No existing commands found in stream
[2026-10-28 09:12:15,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:12:15,181.181 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 09:12:19,826.826 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:12:19,829.829 INFO    ] Checking for system updates...
[2026-10-28 09:12:19,871.871 INFO    ] 200
[2026-10-28 09:12:19,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:12:19,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:12:19,934.934 INFO    ] No update needed
[2026-10-28 09:12:19,937.937 INFO    ] Checking for camera pi updates...
[2026-10-28 09:12:19,971.971 INFO    ] 200
[2026-10-28 09:12:19,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:12:20,023.023 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:12:20,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:12:20,209.209 INFO    ] No camera update needed
[2026-10-28 09:12:20,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:12:20,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:12:20,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:12:20,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:12:22,265.265 INFO    ] ================================================
[2026-10-28 09:12:22,281.281 INFO    ] Launching Daemon at Wed Oct 28 09:12:22 IST 2026
[2026-10-28 09:12:22,292.292 INFO    ] ================================================
[2026-10-28 09:12:22,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:12:22
[2026-10-28 09:12:23,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:12:23,928.928 INFO    ] Initializing speech engine...
[2026-10-28 09:12:23,939.939 INFO    ] 2026-10-28 09:12:23
[2026-10-28 09:12:24,213.213 INFO    ] 2026-10-28 09:12:24
[2026-10-28 09:12:24,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:12:24,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:12:24,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:12:24,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:12:24,714.714 INFO    ] time= 28/10/2026 09:12:24
[2026-10-28 09:12:24,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:12:24,801.801 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:12:24,933.933 INFO    ] No existing commands found in stream
[2026-10-28 09:12:29,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:12:29,961.961 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-28 09:12:31,758.758 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:12:31,761.761 INFO    ] Checking for system updates...
[2026-10-28 09:12:31,804.804 INFO    ] 200
[2026-10-28 09:12:31,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:12:31,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:12:31,869.869 INFO    ] No update needed
[2026-10-28 09:12:31,871.871 INFO    ] Checking for camera pi updates...
[2026-10-28 09:12:31,906.906 INFO    ] 200
[2026-10-28 09:12:31,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:12:31,953.953 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:12:32,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:12:32,047.047 INFO    ] No camera update needed
[2026-10-28 09:12:32,049.049 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:12:32,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:12:32,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:12:32,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:12:34,105.105 INFO    ] ================================================
[2026-10-28 09:12:34,121.121 INFO    ] Launching Daemon at Wed Oct 28 09:12:34 IST 2026
[2026-10-28 09:12:34,131.131 INFO    ] ================================================
[2026-10-28 09:12:34,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:12:34
[2026-10-28 09:12:35,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:12:35,752.752 INFO    ] Initializing speech engine...
[2026-10-28 09:12:35,761.761 INFO    ] 2026-10-28 09:12:35
[2026-10-28 09:12:36,032.032 INFO    ] 2026-10-28 09:12:36
[2026-10-28 09:12:36,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:12:36,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:12:36,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:12:36,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:12:36,758.758 INFO    ] time= 28/10/2026 09:12:36
[2026-10-28 09:12:36,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:12:36,858.858 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:12:37,006.006 INFO    ] No existing commands found in stream
[2026-10-28 09:12:42,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:12:42,022.022 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 09:12:43,627.627 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:12:43,630.630 INFO    ] Checking for system updates...
[2026-10-28 09:12:43,669.669 INFO    ] 200
[2026-10-28 09:12:43,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:12:43,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:12:43,726.726 INFO    ] No update needed
[2026-10-28 09:12:43,728.728 INFO    ] Checking for camera pi updates...
[2026-10-28 09:12:43,766.766 INFO    ] 200
[2026-10-28 09:12:43,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:12:43,812.812 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:12:43,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:12:43,900.900 INFO    ] No camera update needed
[2026-10-28 09:12:43,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:12:43,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:12:43,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:12:43,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:12:45,954.954 INFO    ] ================================================
[2026-10-28 09:12:45,969.969 INFO    ] Launching Daemon at Wed Oct 28 09:12:45 IST 2026
[2026-10-28 09:12:45,980.980 INFO    ] ================================================
[2026-10-28 09:12:46,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:12:46
[2026-10-28 09:12:47,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:12:47,433.433 INFO    ] Initializing speech engine...
[2026-10-28 09:12:47,442.442 INFO    ] 2026-10-28 09:12:47
[2026-10-28 09:12:47,704.704 INFO    ] 2026-10-28 09:12:47
[2026-10-28 09:12:47,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:12:48,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:12:48,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:12:48,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:12:48,289.289 INFO    ] time= 28/10/2026 09:12:48
[2026-10-28 09:12:48,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:12:48,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:12:48,488.488 INFO    ] No existing commands found in stream
[2026-10-28 09:12:53,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:12:53,511.511 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-28 09:12:55,638.638 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:12:55,640.640 INFO    ] Checking for system updates...
[2026-10-28 09:12:55,681.681 INFO    ] 200
[2026-10-28 09:12:55,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:12:55,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:12:55,745.745 INFO    ] No update needed
[2026-10-28 09:12:55,748.748 INFO    ] Checking for camera pi updates...
[2026-10-28 09:12:55,781.781 INFO    ] 200
[2026-10-28 09:12:55,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:12:55,824.824 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:12:55,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:12:55,879.879 INFO    ] No camera update needed
[2026-10-28 09:12:55,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:12:55,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:12:55,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:12:55,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:12:57,934.934 INFO    ] ================================================
[2026-10-28 09:12:57,949.949 INFO    ] Launching Daemon at Wed Oct 28 09:12:57 IST 2026
[2026-10-28 09:12:57,960.960 INFO    ] ================================================
[2026-10-28 09:12:58,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:12:58
[2026-10-28 09:12:59,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:12:59,381.381 INFO    ] Initializing speech engine...
[2026-10-28 09:12:59,390.390 INFO    ] 2026-10-28 09:12:59
[2026-10-28 09:12:59,640.640 INFO    ] 2026-10-28 09:12:59
[2026-10-28 09:12:59,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:12:59,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:12:59,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:13:00,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:13:00,205.205 INFO    ] time= 28/10/2026 09:13:00
[2026-10-28 09:13:00,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:13:00,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:13:00,359.359 INFO    ] No existing commands found in stream
[2026-10-28 09:13:05,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:13:05,377.377 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-28 09:13:08,024.024 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:13:08,027.027 INFO    ] Checking for system updates...
[2026-10-28 09:13:08,063.063 INFO    ] 200
[2026-10-28 09:13:08,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:13:08,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:13:08,120.120 INFO    ] No update needed
[2026-10-28 09:13:08,122.122 INFO    ] Checking for camera pi updates...
[2026-10-28 09:13:08,156.156 INFO    ] 200
[2026-10-28 09:13:08,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:13:08,203.203 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:13:08,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:13:08,309.309 INFO    ] No camera update needed
[2026-10-28 09:13:08,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:13:08,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:13:08,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:13:08,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:13:10,366.366 INFO    ] ================================================
[2026-10-28 09:13:10,381.381 INFO    ] Launching Daemon at Wed Oct 28 09:13:10 IST 2026
[2026-10-28 09:13:10,392.392 INFO    ] ================================================
[2026-10-28 09:13:11,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:13:11
[2026-10-28 09:13:11,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:13:12,006.006 INFO    ] Initializing speech engine...
[2026-10-28 09:13:12,014.014 INFO    ] 2026-10-28 09:13:12
[2026-10-28 09:13:12,298.298 INFO    ] 2026-10-28 09:13:12
[2026-10-28 09:13:12,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:13:12,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:13:12,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:13:12,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:13:12,859.859 INFO    ] time= 28/10/2026 09:13:12
[2026-10-28 09:13:12,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:13:12,897.897 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:13:13,066.066 INFO    ] No existing commands found in stream
[2026-10-28 09:13:18,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:13:18,100.100 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-28 09:13:22,483.483 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:13:22,486.486 INFO    ] Checking for system updates...
[2026-10-28 09:13:22,527.527 INFO    ] 200
[2026-10-28 09:13:22,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:13:22,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:13:22,593.593 INFO    ] No update needed
[2026-10-28 09:13:22,596.596 INFO    ] Checking for camera pi updates...
[2026-10-28 09:13:22,631.631 INFO    ] 200
[2026-10-28 09:13:22,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:13:22,680.680 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:13:22,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:13:22,776.776 INFO    ] No camera update needed
[2026-10-28 09:13:22,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:13:22,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:13:22,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:13:22,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:13:24,834.834 INFO    ] ================================================
[2026-10-28 09:13:24,850.850 INFO    ] Launching Daemon at Wed Oct 28 09:13:24 IST 2026
[2026-10-28 09:13:24,861.861 INFO    ] ================================================
[2026-10-28 09:13:25,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:13:25
[2026-10-28 09:13:26,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:13:26,313.313 INFO    ] Initializing speech engine...
[2026-10-28 09:13:26,339.339 INFO    ] 2026-10-28 09:13:26
[2026-10-28 09:13:26,617.617 INFO    ] 2026-10-28 09:13:26
[2026-10-28 09:13:26,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:13:26,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:13:26,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:13:27,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:13:27,218.218 INFO    ] time= 28/10/2026 09:13:27
[2026-10-28 09:13:27,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:13:27,261.261 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:13:27,390.390 INFO    ] No existing commands found in stream
[2026-10-28 09:13:32,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:13:32,426.426 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-28 09:13:36,546.546 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:13:36,548.548 INFO    ] Checking for system updates...
[2026-10-28 09:13:36,589.589 INFO    ] 200
[2026-10-28 09:13:36,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:13:36,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:13:36,645.645 INFO    ] No update needed
[2026-10-28 09:13:36,648.648 INFO    ] Checking for camera pi updates...
[2026-10-28 09:13:36,681.681 INFO    ] 200
[2026-10-28 09:13:36,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:13:36,729.729 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:13:36,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:13:36,813.813 INFO    ] No camera update needed
[2026-10-28 09:13:36,815.815 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:13:36,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:13:36,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:13:36,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:13:38,870.870 INFO    ] ================================================
[2026-10-28 09:13:38,886.886 INFO    ] Launching Daemon at Wed Oct 28 09:13:38 IST 2026
[2026-10-28 09:13:38,897.897 INFO    ] ================================================
[2026-10-28 09:13:39,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:13:39
[2026-10-28 09:13:40,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:13:40,337.337 INFO    ] Initializing speech engine...
[2026-10-28 09:13:40,360.360 INFO    ] 2026-10-28 09:13:40
[2026-10-28 09:13:40,616.616 INFO    ] 2026-10-28 09:13:40
[2026-10-28 09:13:40,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:13:40,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:13:40,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:13:41,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:13:41,170.170 INFO    ] time= 28/10/2026 09:13:41
[2026-10-28 09:13:41,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:13:41,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:13:41,322.322 INFO    ] No existing commands found in stream
[2026-10-28 09:13:46,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:13:46,339.339 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 09:13:47,905.905 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:13:47,908.908 INFO    ] Checking for system updates...
[2026-10-28 09:13:47,948.948 INFO    ] 200
[2026-10-28 09:13:47,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:13:48,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:13:48,011.011 INFO    ] No update needed
[2026-10-28 09:13:48,014.014 INFO    ] Checking for camera pi updates...
[2026-10-28 09:13:48,048.048 INFO    ] 200
[2026-10-28 09:13:48,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:13:48,097.097 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:13:48,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:13:48,187.187 INFO    ] No camera update needed
[2026-10-28 09:13:48,190.190 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:13:48,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:13:48,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:13:48,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:13:50,248.248 INFO    ] ================================================
[2026-10-28 09:13:50,263.263 INFO    ] Launching Daemon at Wed Oct 28 09:13:50 IST 2026
[2026-10-28 09:13:50,274.274 INFO    ] ================================================
[2026-10-28 09:13:50,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:13:50
[2026-10-28 09:13:51,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:13:51,900.900 INFO    ] Initializing speech engine...
[2026-10-28 09:13:51,915.915 INFO    ] 2026-10-28 09:13:51
[2026-10-28 09:13:52,192.192 INFO    ] 2026-10-28 09:13:52
[2026-10-28 09:13:52,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:13:52,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:13:52,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:13:52,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:13:52,703.703 INFO    ] time= 28/10/2026 09:13:52
[2026-10-28 09:13:52,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:13:52,765.765 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:13:52,899.899 INFO    ] No existing commands found in stream
[2026-10-28 09:13:57,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:13:57,918.918 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-28 09:14:00,922.922 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:14:00,925.925 INFO    ] Checking for system updates...
[2026-10-28 09:14:00,960.960 INFO    ] 200
[2026-10-28 09:14:00,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:14:01,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:14:01,018.018 INFO    ] No update needed
[2026-10-28 09:14:01,020.020 INFO    ] Checking for camera pi updates...
[2026-10-28 09:14:01,053.053 INFO    ] 200
[2026-10-28 09:14:01,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:14:01,097.097 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:14:01,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:14:01,182.182 INFO    ] No camera update needed
[2026-10-28 09:14:01,185.185 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:14:01,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:14:01,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:14:01,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:14:03,241.241 INFO    ] ================================================
[2026-10-28 09:14:03,256.256 INFO    ] Launching Daemon at Wed Oct 28 09:14:03 IST 2026
[2026-10-28 09:14:03,268.268 INFO    ] ================================================
[2026-10-28 09:14:03,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:14:03
[2026-10-28 09:14:04,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:14:04,712.712 INFO    ] Initializing speech engine...
[2026-10-28 09:14:04,732.732 INFO    ] 2026-10-28 09:14:04
[2026-10-28 09:14:04,984.984 INFO    ] 2026-10-28 09:14:04
[2026-10-28 09:14:05,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:14:05,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:14:05,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:14:05,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:14:05,550.550 INFO    ] time= 28/10/2026 09:14:05
[2026-10-28 09:14:05,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:14:05,573.573 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:14:05,710.710 INFO    ] No existing commands found in stream
[2026-10-28 09:14:10,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:14:10,739.739 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-28 09:14:15,224.224 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:14:15,227.227 INFO    ] Checking for system updates...
[2026-10-28 09:14:15,266.266 INFO    ] 200
[2026-10-28 09:14:15,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:14:15,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:14:15,323.323 INFO    ] No update needed
[2026-10-28 09:14:15,326.326 INFO    ] Checking for camera pi updates...
[2026-10-28 09:14:15,363.363 INFO    ] 200
[2026-10-28 09:14:15,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:14:15,408.408 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:14:15,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:14:15,494.494 INFO    ] No camera update needed
[2026-10-28 09:14:15,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:14:15,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:14:15,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:14:15,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:14:17,551.551 INFO    ] ================================================
[2026-10-28 09:14:17,566.566 INFO    ] Launching Daemon at Wed Oct 28 09:14:17 IST 2026
[2026-10-28 09:14:17,577.577 INFO    ] ================================================
[2026-10-28 09:14:18,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:14:18
[2026-10-28 09:14:18,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:14:19,005.005 INFO    ] Initializing speech engine...
[2026-10-28 09:14:19,012.012 INFO    ] 2026-10-28 09:14:19
[2026-10-28 09:14:19,262.262 INFO    ] 2026-10-28 09:14:19
[2026-10-28 09:14:19,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:14:19,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:14:19,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:14:19,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:14:19,832.832 INFO    ] time= 28/10/2026 09:14:19
[2026-10-28 09:14:19,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:14:19,874.874 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:14:19,990.990 INFO    ] No existing commands found in stream
[2026-10-28 09:14:25,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:14:25,005.005 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 09:14:28,262.262 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:14:28,264.264 INFO    ] Checking for system updates...
[2026-10-28 09:14:28,301.301 INFO    ] 200
[2026-10-28 09:14:28,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:14:28,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:14:28,365.365 INFO    ] No update needed
[2026-10-28 09:14:28,367.367 INFO    ] Checking for camera pi updates...
[2026-10-28 09:14:28,406.406 INFO    ] 200
[2026-10-28 09:14:28,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:14:28,454.454 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:14:28,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:14:28,641.641 INFO    ] No camera update needed
[2026-10-28 09:14:28,644.644 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:14:28,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:14:28,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:14:28,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:14:30,699.699 INFO    ] ================================================
[2026-10-28 09:14:30,718.718 INFO    ] Launching Daemon at Wed Oct 28 09:14:30 IST 2026
[2026-10-28 09:14:30,729.729 INFO    ] ================================================
[2026-10-28 09:14:31,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:14:31
[2026-10-28 09:14:31,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:14:32,222.222 INFO    ] Initializing speech engine...
[2026-10-28 09:14:32,230.230 INFO    ] 2026-10-28 09:14:32
[2026-10-28 09:14:32,495.495 INFO    ] 2026-10-28 09:14:32
[2026-10-28 09:14:32,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:14:32,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:14:32,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:14:33,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:14:33,086.086 INFO    ] time= 28/10/2026 09:14:33
[2026-10-28 09:14:33,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:14:33,129.129 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:14:33,269.269 INFO    ] No existing commands found in stream
[2026-10-28 09:14:38,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:14:38,291.291 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-28 09:14:39,712.712 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:14:39,715.715 INFO    ] Checking for system updates...
[2026-10-28 09:14:39,750.750 INFO    ] 200
[2026-10-28 09:14:39,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:14:39,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:14:39,807.807 INFO    ] No update needed
[2026-10-28 09:14:39,810.810 INFO    ] Checking for camera pi updates...
[2026-10-28 09:14:39,846.846 INFO    ] 200
[2026-10-28 09:14:39,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:14:39,892.892 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:14:39,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:14:40,000.000 INFO    ] No camera update needed
[2026-10-28 09:14:40,003.003 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:14:40,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:14:40,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:14:40,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:14:42,057.057 INFO    ] ================================================
[2026-10-28 09:14:42,072.072 INFO    ] Launching Daemon at Wed Oct 28 09:14:42 IST 2026
[2026-10-28 09:14:42,082.082 INFO    ] ================================================
[2026-10-28 09:14:42,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:14:42
[2026-10-28 09:14:43,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:14:43,641.641 INFO    ] Initializing speech engine...
[2026-10-28 09:14:43,654.654 INFO    ] 2026-10-28 09:14:43
[2026-10-28 09:14:43,916.916 INFO    ] 2026-10-28 09:14:43
[2026-10-28 09:14:43,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:14:44,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:14:44,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:14:44,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:14:44,604.604 INFO    ] time= 28/10/2026 09:14:44
[2026-10-28 09:14:44,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:14:44,715.715 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:14:44,859.859 INFO    ] No existing commands found in stream
[2026-10-28 09:14:49,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:14:49,881.881 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 09:14:52,425.425 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:14:52,428.428 INFO    ] Checking for system updates...
[2026-10-28 09:14:52,464.464 INFO    ] 200
[2026-10-28 09:14:52,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:14:52,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:14:52,528.528 INFO    ] No update needed
[2026-10-28 09:14:52,530.530 INFO    ] Checking for camera pi updates...
[2026-10-28 09:14:52,564.564 INFO    ] 200
[2026-10-28 09:14:52,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:14:52,606.606 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:14:52,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:14:52,687.687 INFO    ] No camera update needed
[2026-10-28 09:14:52,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:14:52,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:14:52,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:14:52,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:14:54,743.743 INFO    ] ================================================
[2026-10-28 09:14:54,758.758 INFO    ] Launching Daemon at Wed Oct 28 09:14:54 IST 2026
[2026-10-28 09:14:54,774.774 INFO    ] ================================================
[2026-10-28 09:14:55,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:14:55
[2026-10-28 09:14:56,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:14:56,361.361 INFO    ] Initializing speech engine...
[2026-10-28 09:14:56,376.376 INFO    ] 2026-10-28 09:14:56
[2026-10-28 09:14:56,663.663 INFO    ] 2026-10-28 09:14:56
[2026-10-28 09:14:56,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:14:56,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:14:56,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:14:57,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:14:57,204.204 INFO    ] time= 28/10/2026 09:14:57
[2026-10-28 09:14:57,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:14:57,245.245 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:14:57,381.381 INFO    ] No existing commands found in stream
[2026-10-28 09:15:02,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:15:02,428.428 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-28 09:15:06,464.464 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:15:06,467.467 INFO    ] Checking for system updates...
[2026-10-28 09:15:06,504.504 INFO    ] 200
[2026-10-28 09:15:06,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:15:06,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:15:06,562.562 INFO    ] No update needed
[2026-10-28 09:15:06,565.565 INFO    ] Checking for camera pi updates...
[2026-10-28 09:15:06,599.599 INFO    ] 200
[2026-10-28 09:15:06,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:15:06,648.648 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:15:06,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:15:06,801.801 INFO    ] No camera update needed
[2026-10-28 09:15:06,803.803 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:15:06,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:15:06,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:15:06,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:15:08,857.857 INFO    ] ================================================
[2026-10-28 09:15:08,872.872 INFO    ] Launching Daemon at Wed Oct 28 09:15:08 IST 2026
[2026-10-28 09:15:08,882.882 INFO    ] ================================================
[2026-10-28 09:15:09,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:15:09
[2026-10-28 09:15:10,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:15:10,325.325 INFO    ] Initializing speech engine...
[2026-10-28 09:15:10,340.340 INFO    ] 2026-10-28 09:15:10
[2026-10-28 09:15:10,606.606 INFO    ] 2026-10-28 09:15:10
[2026-10-28 09:15:10,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:15:10,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:15:10,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:15:11,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:15:11,146.146 INFO    ] time= 28/10/2026 09:15:11
[2026-10-28 09:15:11,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:15:11,214.214 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:15:11,312.312 INFO    ] No existing commands found in stream
[2026-10-28 09:15:16,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:15:16,340.340 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-28 09:15:17,127.127 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:15:17,130.130 INFO    ] Checking for system updates...
[2026-10-28 09:15:17,169.169 INFO    ] 200
[2026-10-28 09:15:17,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:15:17,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:15:17,233.233 INFO    ] No update needed
[2026-10-28 09:15:17,236.236 INFO    ] Checking for camera pi updates...
[2026-10-28 09:15:17,269.269 INFO    ] 200
[2026-10-28 09:15:17,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:15:17,320.320 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:15:17,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:15:17,402.402 INFO    ] No camera update needed
[2026-10-28 09:15:17,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:15:17,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:15:17,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:15:17,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:15:19,458.458 INFO    ] ================================================
[2026-10-28 09:15:19,473.473 INFO    ] Launching Daemon at Wed Oct 28 09:15:19 IST 2026
[2026-10-28 09:15:19,484.484 INFO    ] ================================================
[2026-10-28 09:15:20,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:15:20
[2026-10-28 09:15:20,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:15:21,131.131 INFO    ] Initializing speech engine...
[2026-10-28 09:15:21,143.143 INFO    ] 2026-10-28 09:15:21
[2026-10-28 09:15:21,431.431 INFO    ] 2026-10-28 09:15:21
[2026-10-28 09:15:21,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:15:21,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:15:21,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:15:21,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:15:22,008.008 INFO    ] time= 28/10/2026 09:15:21
[2026-10-28 09:15:22,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:15:22,044.044 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:15:22,200.200 INFO    ] No existing commands found in stream
[2026-10-28 09:15:27,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:15:27,233.233 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-28 09:15:30,118.118 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:15:30,121.121 INFO    ] Checking for system updates...
[2026-10-28 09:15:30,157.157 INFO    ] 200
[2026-10-28 09:15:30,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:15:30,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:15:30,217.217 INFO    ] No update needed
[2026-10-28 09:15:30,219.219 INFO    ] Checking for camera pi updates...
[2026-10-28 09:15:30,258.258 INFO    ] 200
[2026-10-28 09:15:30,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:15:30,302.302 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:15:30,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:15:30,389.389 INFO    ] No camera update needed
[2026-10-28 09:15:30,392.392 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:15:30,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:15:30,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:15:30,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:15:32,450.450 INFO    ] ================================================
[2026-10-28 09:15:32,467.467 INFO    ] Launching Daemon at Wed Oct 28 09:15:32 IST 2026
[2026-10-28 09:15:32,478.478 INFO    ] ================================================
[2026-10-28 09:15:33,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:15:33
[2026-10-28 09:15:33,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:15:34,075.075 INFO    ] Initializing speech engine...
[2026-10-28 09:15:34,080.080 INFO    ] 2026-10-28 09:15:34
[2026-10-28 09:15:34,341.341 INFO    ] 2026-10-28 09:15:34
[2026-10-28 09:15:34,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:15:34,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:15:34,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:15:34,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:15:34,911.911 INFO    ] time= 28/10/2026 09:15:34
[2026-10-28 09:15:34,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:15:34,926.926 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:15:35,068.068 INFO    ] No existing commands found in stream
[2026-10-28 09:15:40,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:15:40,101.101 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 09:15:40,831.831 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:15:40,834.834 INFO    ] Checking for system updates...
[2026-10-28 09:15:40,869.869 INFO    ] 200
[2026-10-28 09:15:40,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:15:40,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:15:40,926.926 INFO    ] No update needed
[2026-10-28 09:15:40,928.928 INFO    ] Checking for camera pi updates...
[2026-10-28 09:15:40,972.972 INFO    ] 200
[2026-10-28 09:15:40,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:15:41,024.024 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:15:41,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:15:41,108.108 INFO    ] No camera update needed
[2026-10-28 09:15:41,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:15:41,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:15:41,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:15:41,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:15:43,167.167 INFO    ] ================================================
[2026-10-28 09:15:43,182.182 INFO    ] Launching Daemon at Wed Oct 28 09:15:43 IST 2026
[2026-10-28 09:15:43,193.193 INFO    ] ================================================
[2026-10-28 09:15:43,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:15:43
[2026-10-28 09:15:44,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:15:44,620.620 INFO    ] Initializing speech engine...
[2026-10-28 09:15:44,627.627 INFO    ] 2026-10-28 09:15:44
[2026-10-28 09:15:44,870.870 INFO    ] 2026-10-28 09:15:44
[2026-10-28 09:15:44,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:15:45,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:15:45,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:15:45,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:15:45,426.426 INFO    ] time= 28/10/2026 09:15:45
[2026-10-28 09:15:45,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:15:45,466.466 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:15:45,607.607 INFO    ] No existing commands found in stream
[2026-10-28 09:15:50,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:15:50,635.635 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 09:15:54,625.625 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:15:54,628.628 INFO    ] Checking for system updates...
[2026-10-28 09:15:54,667.667 INFO    ] 200
[2026-10-28 09:15:54,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:15:54,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:15:54,724.724 INFO    ] No update needed
[2026-10-28 09:15:54,726.726 INFO    ] Checking for camera pi updates...
[2026-10-28 09:15:54,760.760 INFO    ] 200
[2026-10-28 09:15:54,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:15:54,803.803 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:15:54,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:15:54,909.909 INFO    ] No camera update needed
[2026-10-28 09:15:54,912.912 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:15:54,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:15:54,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:15:54,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:15:56,966.966 INFO    ] ================================================
[2026-10-28 09:15:56,982.982 INFO    ] Launching Daemon at Wed Oct 28 09:15:56 IST 2026
[2026-10-28 09:15:56,993.993 INFO    ] ================================================
[2026-10-28 09:15:57,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:15:57
[2026-10-28 09:15:58,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:15:58,449.449 INFO    ] Initializing speech engine...
[2026-10-28 09:15:58,458.458 INFO    ] 2026-10-28 09:15:58
[2026-10-28 09:15:58,720.720 INFO    ] 2026-10-28 09:15:58
[2026-10-28 09:15:58,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:15:59,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:15:59,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:15:59,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:15:59,270.270 INFO    ] time= 28/10/2026 09:15:59
[2026-10-28 09:15:59,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:15:59,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:15:59,471.471 INFO    ] No existing commands found in stream
[2026-10-28 09:16:04,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:16:04,499.499 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 09:16:09,041.041 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:16:09,044.044 INFO    ] Checking for system updates...
[2026-10-28 09:16:09,080.080 INFO    ] 200
[2026-10-28 09:16:09,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:16:09,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:16:09,144.144 INFO    ] No update needed
[2026-10-28 09:16:09,147.147 INFO    ] Checking for camera pi updates...
[2026-10-28 09:16:09,180.180 INFO    ] 200
[2026-10-28 09:16:09,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:16:09,223.223 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:16:09,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:16:09,305.305 INFO    ] No camera update needed
[2026-10-28 09:16:09,307.307 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:16:09,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:16:09,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:16:09,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:16:11,362.362 INFO    ] ================================================
[2026-10-28 09:16:11,378.378 INFO    ] Launching Daemon at Wed Oct 28 09:16:11 IST 2026
[2026-10-28 09:16:11,388.388 INFO    ] ================================================
[2026-10-28 09:16:11,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:16:11
[2026-10-28 09:16:12,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:16:12,795.795 INFO    ] Initializing speech engine...
[2026-10-28 09:16:12,808.808 INFO    ] 2026-10-28 09:16:12
[2026-10-28 09:16:13,091.091 INFO    ] 2026-10-28 09:16:13
[2026-10-28 09:16:13,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:16:13,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:16:13,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:16:13,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:16:13,579.579 INFO    ] time= 28/10/2026 09:16:13
[2026-10-28 09:16:13,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:16:13,660.660 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:16:13,759.759 INFO    ] No existing commands found in stream
[2026-10-28 09:16:18,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:16:18,772.772 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-28 09:16:21,104.104 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:16:21,107.107 INFO    ] Checking for system updates...
[2026-10-28 09:16:21,143.143 INFO    ] 200
[2026-10-28 09:16:21,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:16:21,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:16:21,200.200 INFO    ] No update needed
[2026-10-28 09:16:21,202.202 INFO    ] Checking for camera pi updates...
[2026-10-28 09:16:21,239.239 INFO    ] 200
[2026-10-28 09:16:21,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:16:21,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:16:21,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:16:21,376.376 INFO    ] No camera update needed
[2026-10-28 09:16:21,379.379 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:16:21,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:16:21,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:16:21,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:16:23,431.431 INFO    ] ================================================
[2026-10-28 09:16:23,447.447 INFO    ] Launching Daemon at Wed Oct 28 09:16:23 IST 2026
[2026-10-28 09:16:23,458.458 INFO    ] ================================================
[2026-10-28 09:16:24,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:16:24
[2026-10-28 09:16:24,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:16:24,912.912 INFO    ] Initializing speech engine...
[2026-10-28 09:16:24,922.922 INFO    ] 2026-10-28 09:16:24
[2026-10-28 09:16:25,184.184 INFO    ] 2026-10-28 09:16:25
[2026-10-28 09:16:25,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:16:25,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:16:25,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:16:25,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:16:25,727.727 INFO    ] time= 28/10/2026 09:16:25
[2026-10-28 09:16:25,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:16:25,752.752 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:16:25,895.895 INFO    ] No existing commands found in stream
[2026-10-28 09:16:30,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:16:30,918.918 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-28 09:16:31,905.905 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:16:31,908.908 INFO    ] Checking for system updates...
[2026-10-28 09:16:31,951.951 INFO    ] 200
[2026-10-28 09:16:31,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:16:32,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:16:32,014.014 INFO    ] No update needed
[2026-10-28 09:16:32,016.016 INFO    ] Checking for camera pi updates...
[2026-10-28 09:16:32,052.052 INFO    ] 200
[2026-10-28 09:16:32,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:16:32,098.098 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:16:32,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:16:32,350.350 INFO    ] No camera update needed
[2026-10-28 09:16:32,353.353 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:16:32,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:16:32,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:16:32,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:16:34,411.411 INFO    ] ================================================
[2026-10-28 09:16:34,426.426 INFO    ] Launching Daemon at Wed Oct 28 09:16:34 IST 2026
[2026-10-28 09:16:34,436.436 INFO    ] ================================================
[2026-10-28 09:16:35,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:16:35
[2026-10-28 09:16:35,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:16:35,865.865 INFO    ] Initializing speech engine...
[2026-10-28 09:16:35,873.873 INFO    ] 2026-10-28 09:16:35
[2026-10-28 09:16:36,124.124 INFO    ] 2026-10-28 09:16:36
[2026-10-28 09:16:36,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:16:36,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:16:36,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:16:36,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:16:36,697.697 INFO    ] time= 28/10/2026 09:16:36
[2026-10-28 09:16:36,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:16:36,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:16:36,855.855 INFO    ] No existing commands found in stream
[2026-10-28 09:16:41,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:16:41,878.878 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-28 09:16:44,584.584 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:16:44,586.586 INFO    ] Checking for system updates...
[2026-10-28 09:16:44,626.626 INFO    ] 200
[2026-10-28 09:16:44,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:16:44,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:16:44,682.682 INFO    ] No update needed
[2026-10-28 09:16:44,685.685 INFO    ] Checking for camera pi updates...
[2026-10-28 09:16:44,718.718 INFO    ] 200
[2026-10-28 09:16:44,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:16:44,765.765 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:16:44,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:16:44,865.865 INFO    ] No camera update needed
[2026-10-28 09:16:44,868.868 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:16:44,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:16:44,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:16:44,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:16:46,921.921 INFO    ] ================================================
[2026-10-28 09:16:46,936.936 INFO    ] Launching Daemon at Wed Oct 28 09:16:46 IST 2026
[2026-10-28 09:16:46,947.947 INFO    ] ================================================
[2026-10-28 09:16:47,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:16:47
[2026-10-28 09:16:48,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:16:48,491.491 INFO    ] Initializing speech engine...
[2026-10-28 09:16:48,499.499 INFO    ] 2026-10-28 09:16:48
[2026-10-28 09:16:48,784.784 INFO    ] 2026-10-28 09:16:48
[2026-10-28 09:16:48,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:16:49,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:16:49,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:16:49,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:16:49,328.328 INFO    ] time= 28/10/2026 09:16:49
[2026-10-28 09:16:49,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:16:49,367.367 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:16:49,497.497 INFO    ] No existing commands found in stream
[2026-10-28 09:16:54,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:16:54,527.527 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 09:16:56,745.745 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:16:56,748.748 INFO    ] Checking for system updates...
[2026-10-28 09:16:56,788.788 INFO    ] 200
[2026-10-28 09:16:56,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:16:56,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:16:56,852.852 INFO    ] No update needed
[2026-10-28 09:16:56,856.856 INFO    ] Checking for camera pi updates...
[2026-10-28 09:16:56,890.890 INFO    ] 200
[2026-10-28 09:16:56,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:16:56,938.938 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:16:57,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:16:57,018.018 INFO    ] No camera update needed
[2026-10-28 09:16:57,020.020 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:16:57,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:16:57,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:16:57,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:16:59,073.073 INFO    ] ================================================
[2026-10-28 09:16:59,088.088 INFO    ] Launching Daemon at Wed Oct 28 09:16:59 IST 2026
[2026-10-28 09:16:59,100.100 INFO    ] ================================================
[2026-10-28 09:16:59,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:16:59
[2026-10-28 09:17:00,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:17:00,551.551 INFO    ] Initializing speech engine...
[2026-10-28 09:17:00,558.558 INFO    ] 2026-10-28 09:17:00
[2026-10-28 09:17:00,819.819 INFO    ] 2026-10-28 09:17:00
[2026-10-28 09:17:00,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:17:01,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:17:01,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:17:01,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:17:01,424.424 INFO    ] time= 28/10/2026 09:17:01
[2026-10-28 09:17:01,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:17:01,435.435 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:17:01,525.525 INFO    ] No existing commands found in stream
[2026-10-28 09:17:06,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:17:06,538.538 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-28 09:17:10,585.585 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:17:10,588.588 INFO    ] Checking for system updates...
[2026-10-28 09:17:10,623.623 INFO    ] 200
[2026-10-28 09:17:10,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:17:10,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:17:10,688.688 INFO    ] No update needed
[2026-10-28 09:17:10,691.691 INFO    ] Checking for camera pi updates...
[2026-10-28 09:17:10,728.728 INFO    ] 200
[2026-10-28 09:17:10,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:17:10,770.770 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:17:10,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:17:10,866.866 INFO    ] No camera update needed
[2026-10-28 09:17:10,868.868 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:17:10,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:17:10,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:17:10,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:17:12,922.922 INFO    ] ================================================
[2026-10-28 09:17:12,937.937 INFO    ] Launching Daemon at Wed Oct 28 09:17:12 IST 2026
[2026-10-28 09:17:12,948.948 INFO    ] ================================================
[2026-10-28 09:17:13,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:17:13
[2026-10-28 09:17:14,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:17:14,428.428 INFO    ] Initializing speech engine...
[2026-10-28 09:17:14,445.445 INFO    ] 2026-10-28 09:17:14
[2026-10-28 09:17:14,715.715 INFO    ] 2026-10-28 09:17:14
[2026-10-28 09:17:14,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:17:15,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:17:15,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:17:15,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:17:15,290.290 INFO    ] time= 28/10/2026 09:17:15
[2026-10-28 09:17:15,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:17:15,339.339 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:17:15,529.529 INFO    ] No existing commands found in stream
[2026-10-28 09:17:20,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:17:20,563.563 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-28 09:17:21,866.866 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:17:21,869.869 INFO    ] Checking for system updates...
[2026-10-28 09:17:21,909.909 INFO    ] 200
[2026-10-28 09:17:21,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:17:21,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:17:21,971.971 INFO    ] No update needed
[2026-10-28 09:17:21,974.974 INFO    ] Checking for camera pi updates...
[2026-10-28 09:17:22,012.012 INFO    ] 200
[2026-10-28 09:17:22,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:17:22,061.061 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:17:22,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:17:22,160.160 INFO    ] No camera update needed
[2026-10-28 09:17:22,163.163 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:17:22,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:17:22,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:17:22,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:17:24,219.219 INFO    ] ================================================
[2026-10-28 09:17:24,235.235 INFO    ] Launching Daemon at Wed Oct 28 09:17:24 IST 2026
[2026-10-28 09:17:24,247.247 INFO    ] ================================================
[2026-10-28 09:17:24,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:17:24
[2026-10-28 09:17:25,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:17:25,697.697 INFO    ] Initializing speech engine...
[2026-10-28 09:17:25,708.708 INFO    ] 2026-10-28 09:17:25
[2026-10-28 09:17:25,969.969 INFO    ] 2026-10-28 09:17:25
[2026-10-28 09:17:25,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:17:26,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:17:26,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:17:26,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:17:26,696.696 INFO    ] time= 28/10/2026 09:17:26
[2026-10-28 09:17:26,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:17:26,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:17:26,908.908 INFO    ] No existing commands found in stream
[2026-10-28 09:17:31,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:17:31,924.924 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-28 09:17:33,902.902 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:17:33,905.905 INFO    ] Checking for system updates...
[2026-10-28 09:17:33,944.944 INFO    ] 200
[2026-10-28 09:17:33,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:17:33,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:17:34,001.001 INFO    ] No update needed
[2026-10-28 09:17:34,003.003 INFO    ] Checking for camera pi updates...
[2026-10-28 09:17:34,037.037 INFO    ] 200
[2026-10-28 09:17:34,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:17:34,079.079 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:17:34,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:17:34,179.179 INFO    ] No camera update needed
[2026-10-28 09:17:34,181.181 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:17:34,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:17:34,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:17:34,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:17:36,233.233 INFO    ] ================================================
[2026-10-28 09:17:36,249.249 INFO    ] Launching Daemon at Wed Oct 28 09:17:36 IST 2026
[2026-10-28 09:17:36,260.260 INFO    ] ================================================
[2026-10-28 09:17:36,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:17:36
[2026-10-28 09:17:37,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:17:37,729.729 INFO    ] Initializing speech engine...
[2026-10-28 09:17:37,740.740 INFO    ] 2026-10-28 09:17:37
[2026-10-28 09:17:38,005.005 INFO    ] 2026-10-28 09:17:37
[2026-10-28 09:17:38,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:17:38,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:17:38,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:17:38,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:17:38,638.638 INFO    ] time= 28/10/2026 09:17:38
[2026-10-28 09:17:38,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:17:38,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:17:38,805.805 INFO    ] No existing commands found in stream
[2026-10-28 09:17:43,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:17:43,825.825 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 09:17:46,356.356 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:17:46,358.358 INFO    ] Checking for system updates...
[2026-10-28 09:17:46,395.395 INFO    ] 200
[2026-10-28 09:17:46,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:17:46,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:17:46,452.452 INFO    ] No update needed
[2026-10-28 09:17:46,454.454 INFO    ] Checking for camera pi updates...
[2026-10-28 09:17:46,491.491 INFO    ] 200
[2026-10-28 09:17:46,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:17:46,539.539 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:17:46,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:17:46,625.625 INFO    ] No camera update needed
[2026-10-28 09:17:46,627.627 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:17:46,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:17:46,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:17:46,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:17:48,681.681 INFO    ] ================================================
[2026-10-28 09:17:48,697.697 INFO    ] Launching Daemon at Wed Oct 28 09:17:48 IST 2026
[2026-10-28 09:17:48,707.707 INFO    ] ================================================
[2026-10-28 09:17:49,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:17:49
[2026-10-28 09:17:49,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:17:50,149.149 INFO    ] Initializing speech engine...
[2026-10-28 09:17:50,168.168 INFO    ] 2026-10-28 09:17:50
[2026-10-28 09:17:50,418.418 INFO    ] 2026-10-28 09:17:50
[2026-10-28 09:17:50,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:17:50,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:17:50,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:17:50,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:17:50,971.971 INFO    ] time= 28/10/2026 09:17:50
[2026-10-28 09:17:50,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:17:50,999.999 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:17:51,150.150 INFO    ] No existing commands found in stream
[2026-10-28 09:17:56,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:17:56,183.183 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-28 09:18:00,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:18:00,228.228 INFO    ] Checking for system updates...
[2026-10-28 09:18:00,265.265 INFO    ] 200
[2026-10-28 09:18:00,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:18:00,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:18:00,329.329 INFO    ] No update needed
[2026-10-28 09:18:00,332.332 INFO    ] Checking for camera pi updates...
[2026-10-28 09:18:00,365.365 INFO    ] 200
[2026-10-28 09:18:00,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:18:00,417.417 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:18:00,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:18:00,499.499 INFO    ] No camera update needed
[2026-10-28 09:18:00,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:18:00,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:18:00,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:18:00,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:18:02,557.557 INFO    ] ================================================
[2026-10-28 09:18:02,578.578 INFO    ] Launching Daemon at Wed Oct 28 09:18:02 IST 2026
[2026-10-28 09:18:02,590.590 INFO    ] ================================================
[2026-10-28 09:18:03,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:18:03
[2026-10-28 09:18:03,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:18:04,098.098 INFO    ] Initializing speech engine...
[2026-10-28 09:18:04,104.104 INFO    ] 2026-10-28 09:18:04
[2026-10-28 09:18:04,378.378 INFO    ] 2026-10-28 09:18:04
[2026-10-28 09:18:04,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:18:04,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:18:04,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:18:04,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:18:04,938.938 INFO    ] time= 28/10/2026 09:18:04
[2026-10-28 09:18:04,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:18:04,969.969 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:18:05,096.096 INFO    ] No existing commands found in stream
[2026-10-28 09:18:10,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:18:10,115.115 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 09:18:12,743.743 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:18:12,746.746 INFO    ] Checking for system updates...
[2026-10-28 09:18:12,782.782 INFO    ] 200
[2026-10-28 09:18:12,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:18:12,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:18:12,844.844 INFO    ] No update needed
[2026-10-28 09:18:12,846.846 INFO    ] Checking for camera pi updates...
[2026-10-28 09:18:12,879.879 INFO    ] 200
[2026-10-28 09:18:12,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:18:12,922.922 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:18:13,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:18:13,023.023 INFO    ] No camera update needed
[2026-10-28 09:18:13,025.025 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:18:13,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:18:13,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:18:13,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:18:15,079.079 INFO    ] ================================================
[2026-10-28 09:18:15,094.094 INFO    ] Launching Daemon at Wed Oct 28 09:18:15 IST 2026
[2026-10-28 09:18:15,105.105 INFO    ] ================================================
[2026-10-28 09:18:15,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:18:15
[2026-10-28 09:18:16,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:18:16,547.547 INFO    ] Initializing speech engine...
[2026-10-28 09:18:16,572.572 INFO    ] 2026-10-28 09:18:16
[2026-10-28 09:18:16,849.849 INFO    ] 2026-10-28 09:18:16
[2026-10-28 09:18:16,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:18:17,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:18:17,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:18:17,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:18:17,472.472 INFO    ] time= 28/10/2026 09:18:17
[2026-10-28 09:18:17,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:18:17,503.503 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:18:17,640.640 INFO    ] No existing commands found in stream
[2026-10-28 09:18:22,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:18:22,669.669 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-28 09:18:26,486.486 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:18:26,488.488 INFO    ] Checking for system updates...
[2026-10-28 09:18:26,524.524 INFO    ] 200
[2026-10-28 09:18:26,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:18:26,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:18:26,588.588 INFO    ] No update needed
[2026-10-28 09:18:26,590.590 INFO    ] Checking for camera pi updates...
[2026-10-28 09:18:26,624.624 INFO    ] 200
[2026-10-28 09:18:26,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:18:26,671.671 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:18:26,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:18:26,754.754 INFO    ] No camera update needed
[2026-10-28 09:18:26,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:18:26,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:18:26,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:18:26,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:18:28,809.809 INFO    ] ================================================
[2026-10-28 09:18:28,824.824 INFO    ] Launching Daemon at Wed Oct 28 09:18:28 IST 2026
[2026-10-28 09:18:28,835.835 INFO    ] ================================================
[2026-10-28 09:18:29,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:18:29
[2026-10-28 09:18:30,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:18:30,337.337 INFO    ] Initializing speech engine...
[2026-10-28 09:18:30,341.341 INFO    ] 2026-10-28 09:18:30
[2026-10-28 09:18:30,604.604 INFO    ] 2026-10-28 09:18:30
[2026-10-28 09:18:30,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:18:31,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:18:31,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:18:31,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:18:31,196.196 INFO    ] time= 28/10/2026 09:18:31
[2026-10-28 09:18:31,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:18:31,284.284 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:18:31,399.399 INFO    ] No existing commands found in stream
[2026-10-28 09:18:36,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:18:36,418.418 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-28 09:18:37,443.443 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:18:37,446.446 INFO    ] Checking for system updates...
[2026-10-28 09:18:37,485.485 INFO    ] 200
[2026-10-28 09:18:37,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:18:37,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:18:37,549.549 INFO    ] No update needed
[2026-10-28 09:18:37,552.552 INFO    ] Checking for camera pi updates...
[2026-10-28 09:18:37,585.585 INFO    ] 200
[2026-10-28 09:18:37,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:18:37,628.628 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:18:37,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:18:37,808.808 INFO    ] No camera update needed
[2026-10-28 09:18:37,811.811 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:18:37,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:18:37,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:18:37,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:18:39,865.865 INFO    ] ================================================
[2026-10-28 09:18:39,881.881 INFO    ] Launching Daemon at Wed Oct 28 09:18:39 IST 2026
[2026-10-28 09:18:39,891.891 INFO    ] ================================================
[2026-10-28 09:18:40,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:18:40
[2026-10-28 09:18:41,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:18:41,296.296 INFO    ] Initializing speech engine...
[2026-10-28 09:18:41,308.308 INFO    ] 2026-10-28 09:18:41
[2026-10-28 09:18:41,570.570 INFO    ] 2026-10-28 09:18:41
[2026-10-28 09:18:41,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:18:41,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:18:41,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:18:42,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:18:42,127.127 INFO    ] time= 28/10/2026 09:18:42
[2026-10-28 09:18:42,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:18:42,172.172 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:18:42,318.318 INFO    ] No existing commands found in stream
[2026-10-28 09:18:47,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:18:47,346.346 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-28 09:18:50,383.383 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:18:50,386.386 INFO    ] Checking for system updates...
[2026-10-28 09:18:50,421.421 INFO    ] 200
[2026-10-28 09:18:50,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:18:50,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:18:50,479.479 INFO    ] No update needed
[2026-10-28 09:18:50,481.481 INFO    ] Checking for camera pi updates...
[2026-10-28 09:18:50,514.514 INFO    ] 200
[2026-10-28 09:18:50,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:18:50,564.564 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:18:50,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:18:50,673.673 INFO    ] No camera update needed
[2026-10-28 09:18:50,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:18:50,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:18:50,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:18:50,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:18:52,729.729 INFO    ] ================================================
[2026-10-28 09:18:52,744.744 INFO    ] Launching Daemon at Wed Oct 28 09:18:52 IST 2026
[2026-10-28 09:18:52,755.755 INFO    ] ================================================
[2026-10-28 09:18:53,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:18:53
[2026-10-28 09:18:53,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:18:54,152.152 INFO    ] Initializing speech engine...
[2026-10-28 09:18:54,161.161 INFO    ] 2026-10-28 09:18:54
[2026-10-28 09:18:54,436.436 INFO    ] 2026-10-28 09:18:54
[2026-10-28 09:18:54,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:18:54,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:18:54,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:18:54,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:18:55,001.001 INFO    ] time= 28/10/2026 09:18:54
[2026-10-28 09:18:55,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:18:55,025.025 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:18:55,148.148 INFO    ] No existing commands found in stream
[2026-10-28 09:19:00,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:19:00,172.172 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-28 09:19:00,863.863 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:19:00,866.866 INFO    ] Checking for system updates...
[2026-10-28 09:19:00,901.901 INFO    ] 200
[2026-10-28 09:19:00,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:19:00,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:19:00,960.960 INFO    ] No update needed
[2026-10-28 09:19:00,962.962 INFO    ] Checking for camera pi updates...
[2026-10-28 09:19:00,999.999 INFO    ] 200
[2026-10-28 09:19:01,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:19:01,042.042 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:19:01,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:19:01,130.130 INFO    ] No camera update needed
[2026-10-28 09:19:01,132.132 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:19:01,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:19:01,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:19:01,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:19:03,193.193 INFO    ] ================================================
[2026-10-28 09:19:03,210.210 INFO    ] Launching Daemon at Wed Oct 28 09:19:03 IST 2026
[2026-10-28 09:19:03,222.222 INFO    ] ================================================
[2026-10-28 09:19:03,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:19:03
[2026-10-28 09:19:04,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:19:04,729.729 INFO    ] Initializing speech engine...
[2026-10-28 09:19:04,738.738 INFO    ] 2026-10-28 09:19:04
[2026-10-28 09:19:04,998.998 INFO    ] 2026-10-28 09:19:04
[2026-10-28 09:19:05,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:19:05,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:19:05,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:19:05,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:19:05,542.542 INFO    ] time= 28/10/2026 09:19:05
[2026-10-28 09:19:05,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:19:05,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:19:05,696.696 INFO    ] No existing commands found in stream
[2026-10-28 09:19:10,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:19:10,719.719 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 09:19:13,545.545 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:19:13,548.548 INFO    ] Checking for system updates...
[2026-10-28 09:19:13,586.586 INFO    ] 200
[2026-10-28 09:19:13,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:19:13,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:19:13,643.643 INFO    ] No update needed
[2026-10-28 09:19:13,645.645 INFO    ] Checking for camera pi updates...
[2026-10-28 09:19:13,679.679 INFO    ] 200
[2026-10-28 09:19:13,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:19:13,721.721 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:19:13,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:19:13,806.806 INFO    ] No camera update needed
[2026-10-28 09:19:13,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:19:13,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:19:13,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:19:13,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:19:15,861.861 INFO    ] ================================================
[2026-10-28 09:19:15,876.876 INFO    ] Launching Daemon at Wed Oct 28 09:19:15 IST 2026
[2026-10-28 09:19:15,887.887 INFO    ] ================================================
[2026-10-28 09:19:16,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:19:16
[2026-10-28 09:19:17,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:19:17,287.287 INFO    ] Initializing speech engine...
[2026-10-28 09:19:17,310.310 INFO    ] 2026-10-28 09:19:17
[2026-10-28 09:19:17,574.574 INFO    ] 2026-10-28 09:19:17
[2026-10-28 09:19:17,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:19:17,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:19:17,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:19:18,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:19:18,181.181 INFO    ] time= 28/10/2026 09:19:18
[2026-10-28 09:19:18,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:19:18,204.204 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:19:18,351.351 INFO    ] No existing commands found in stream
[2026-10-28 09:19:23,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:19:23,373.373 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-28 09:19:25,423.423 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:19:25,426.426 INFO    ] Checking for system updates...
[2026-10-28 09:19:25,461.461 INFO    ] 200
[2026-10-28 09:19:25,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:19:25,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:19:25,521.521 INFO    ] No update needed
[2026-10-28 09:19:25,523.523 INFO    ] Checking for camera pi updates...
[2026-10-28 09:19:25,556.556 INFO    ] 200
[2026-10-28 09:19:25,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:19:25,598.598 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:19:25,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:19:25,682.682 INFO    ] No camera update needed
[2026-10-28 09:19:25,684.684 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:19:25,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:19:25,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:19:25,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:19:27,737.737 INFO    ] ================================================
[2026-10-28 09:19:27,752.752 INFO    ] Launching Daemon at Wed Oct 28 09:19:27 IST 2026
[2026-10-28 09:19:27,763.763 INFO    ] ================================================
[2026-10-28 09:19:28,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:19:28
[2026-10-28 09:19:29,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:19:29,342.342 INFO    ] Initializing speech engine...
[2026-10-28 09:19:29,348.348 INFO    ] 2026-10-28 09:19:29
[2026-10-28 09:19:29,622.622 INFO    ] 2026-10-28 09:19:29
[2026-10-28 09:19:29,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:19:29,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:19:29,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:19:30,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:19:30,181.181 INFO    ] time= 28/10/2026 09:19:30
[2026-10-28 09:19:30,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:19:30,219.219 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:19:30,339.339 INFO    ] No existing commands found in stream
[2026-10-28 09:19:35,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:19:35,373.373 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-28 09:19:38,249.249 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:19:38,252.252 INFO    ] Checking for system updates...
[2026-10-28 09:19:38,289.289 INFO    ] 200
[2026-10-28 09:19:38,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:19:38,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:19:38,352.352 INFO    ] No update needed
[2026-10-28 09:19:38,355.355 INFO    ] Checking for camera pi updates...
[2026-10-28 09:19:38,390.390 INFO    ] 200
[2026-10-28 09:19:38,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:19:38,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:19:38,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:19:38,521.521 INFO    ] No camera update needed
[2026-10-28 09:19:38,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:19:38,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:19:38,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:19:38,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:19:40,579.579 INFO    ] ================================================
[2026-10-28 09:19:40,594.594 INFO    ] Launching Daemon at Wed Oct 28 09:19:40 IST 2026
[2026-10-28 09:19:40,605.605 INFO    ] ================================================
[2026-10-28 09:19:41,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:19:41
[2026-10-28 09:19:41,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:19:42,179.179 INFO    ] Initializing speech engine...
[2026-10-28 09:19:42,193.193 INFO    ] 2026-10-28 09:19:42
[2026-10-28 09:19:42,499.499 INFO    ] 2026-10-28 09:19:42
[2026-10-28 09:19:42,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:19:42,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:19:42,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:19:43,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:19:43,195.195 INFO    ] time= 28/10/2026 09:19:43
[2026-10-28 09:19:43,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:19:43,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:19:43,438.438 INFO    ] No existing commands found in stream
[2026-10-28 09:19:48,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:19:48,457.457 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 09:19:51,009.009 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:19:51,012.012 INFO    ] Checking for system updates...
[2026-10-28 09:19:51,048.048 INFO    ] 200
[2026-10-28 09:19:51,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:19:51,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:19:51,106.106 INFO    ] No update needed
[2026-10-28 09:19:51,109.109 INFO    ] Checking for camera pi updates...
[2026-10-28 09:19:51,143.143 INFO    ] 200
[2026-10-28 09:19:51,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:19:51,188.188 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:19:51,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:19:51,280.280 INFO    ] No camera update needed
[2026-10-28 09:19:51,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:19:51,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:19:51,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:19:51,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:19:53,337.337 INFO    ] ================================================
[2026-10-28 09:19:53,353.353 INFO    ] Launching Daemon at Wed Oct 28 09:19:53 IST 2026
[2026-10-28 09:19:53,363.363 INFO    ] ================================================
[2026-10-28 09:19:53,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:19:53
[2026-10-28 09:19:54,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:19:54,789.789 INFO    ] Initializing speech engine...
[2026-10-28 09:19:54,797.797 INFO    ] 2026-10-28 09:19:54
[2026-10-28 09:19:55,058.058 INFO    ] 2026-10-28 09:19:55
[2026-10-28 09:19:55,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:19:55,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:19:55,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:19:55,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:19:55,621.621 INFO    ] time= 28/10/2026 09:19:55
[2026-10-28 09:19:55,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:19:55,685.685 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:19:55,773.773 INFO    ] No existing commands found in stream
[2026-10-28 09:20:00,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:20:00,811.811 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 09:20:07,594.594 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:20:07,597.597 INFO    ] Checking for system updates...
[2026-10-28 09:20:07,633.633 INFO    ] 200
[2026-10-28 09:20:07,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:20:07,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:20:07,696.696 INFO    ] No update needed
[2026-10-28 09:20:07,698.698 INFO    ] Checking for camera pi updates...
[2026-10-28 09:20:07,732.732 INFO    ] 200
[2026-10-28 09:20:07,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:20:07,774.774 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:20:07,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:20:07,856.856 INFO    ] No camera update needed
[2026-10-28 09:20:07,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:20:07,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:20:07,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:20:07,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:20:09,911.911 INFO    ] ================================================
[2026-10-28 09:20:09,927.927 INFO    ] Launching Daemon at Wed Oct 28 09:20:09 IST 2026
[2026-10-28 09:20:09,938.938 INFO    ] ================================================
[2026-10-28 09:20:10,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:20:10
[2026-10-28 09:20:11,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:20:11,352.352 INFO    ] Initializing speech engine...
[2026-10-28 09:20:11,361.361 INFO    ] 2026-10-28 09:20:11
[2026-10-28 09:20:11,652.652 INFO    ] 2026-10-28 09:20:11
[2026-10-28 09:20:11,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:20:11,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:20:11,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:20:12,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:20:12,265.265 INFO    ] time= 28/10/2026 09:20:12
[2026-10-28 09:20:12,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:20:12,301.301 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:20:12,452.452 INFO    ] No existing commands found in stream
[2026-10-28 09:20:17,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:20:17,467.467 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 09:20:20,883.883 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:20:20,886.886 INFO    ] Checking for system updates...
[2026-10-28 09:20:20,922.922 INFO    ] 200
[2026-10-28 09:20:20,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:20:20,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:20:20,985.985 INFO    ] No update needed
[2026-10-28 09:20:20,987.987 INFO    ] Checking for camera pi updates...
[2026-10-28 09:20:21,020.020 INFO    ] 200
[2026-10-28 09:20:21,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:20:21,063.063 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:20:21,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:20:21,156.156 INFO    ] No camera update needed
[2026-10-28 09:20:21,159.159 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:20:21,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:20:21,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:20:21,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:20:23,213.213 INFO    ] ================================================
[2026-10-28 09:20:23,228.228 INFO    ] Launching Daemon at Wed Oct 28 09:20:23 IST 2026
[2026-10-28 09:20:23,239.239 INFO    ] ================================================
[2026-10-28 09:20:23,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:20:23
[2026-10-28 09:20:24,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:20:24,658.658 INFO    ] Initializing speech engine...
[2026-10-28 09:20:24,673.673 INFO    ] 2026-10-28 09:20:24
[2026-10-28 09:20:24,944.944 INFO    ] 2026-10-28 09:20:24
[2026-10-28 09:20:24,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:20:25,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:20:25,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:20:25,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:20:25,462.462 INFO    ] time= 28/10/2026 09:20:25
[2026-10-28 09:20:25,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:20:25,555.555 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:20:25,705.705 INFO    ] No existing commands found in stream
[2026-10-28 09:20:30,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:20:30,725.725 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-28 09:20:33,069.069 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:20:33,071.071 INFO    ] Checking for system updates...
[2026-10-28 09:20:33,110.110 INFO    ] 200
[2026-10-28 09:20:33,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:20:33,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:20:33,190.190 INFO    ] No update needed
[2026-10-28 09:20:33,193.193 INFO    ] Checking for camera pi updates...
[2026-10-28 09:20:33,232.232 INFO    ] 200
[2026-10-28 09:20:33,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:20:33,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:20:33,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:20:33,399.399 INFO    ] No camera update needed
[2026-10-28 09:20:33,401.401 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:20:33,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:20:33,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:20:33,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:20:35,456.456 INFO    ] ================================================
[2026-10-28 09:20:35,473.473 INFO    ] Launching Daemon at Wed Oct 28 09:20:35 IST 2026
[2026-10-28 09:20:35,485.485 INFO    ] ================================================
[2026-10-28 09:20:36,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:20:36
[2026-10-28 09:20:36,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:20:36,976.976 INFO    ] Initializing speech engine...
[2026-10-28 09:20:36,991.991 INFO    ] 2026-10-28 09:20:36
[2026-10-28 09:20:37,267.267 INFO    ] 2026-10-28 09:20:37
[2026-10-28 09:20:37,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:20:37,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:20:37,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:20:38,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:20:38,196.196 INFO    ] time= 28/10/2026 09:20:38
[2026-10-28 09:20:38,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:20:38,259.259 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:20:38,393.393 INFO    ] No existing commands found in stream
[2026-10-28 09:20:43,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:20:43,410.410 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-28 09:20:45,782.782 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:20:45,785.785 INFO    ] Checking for system updates...
[2026-10-28 09:20:45,824.824 INFO    ] 200
[2026-10-28 09:20:45,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:20:45,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:20:45,881.881 INFO    ] No update needed
[2026-10-28 09:20:45,884.884 INFO    ] Checking for camera pi updates...
[2026-10-28 09:20:45,917.917 INFO    ] 200
[2026-10-28 09:20:45,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:20:45,960.960 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:20:46,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:20:46,146.146 INFO    ] No camera update needed
[2026-10-28 09:20:46,148.148 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:20:46,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:20:46,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:20:46,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:20:48,201.201 INFO    ] ================================================
[2026-10-28 09:20:48,216.216 INFO    ] Launching Daemon at Wed Oct 28 09:20:48 IST 2026
[2026-10-28 09:20:48,227.227 INFO    ] ================================================
[2026-10-28 09:20:48,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:20:48
[2026-10-28 09:20:49,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:20:49,640.640 INFO    ] Initializing speech engine...
[2026-10-28 09:20:49,655.655 INFO    ] 2026-10-28 09:20:49
[2026-10-28 09:20:49,938.938 INFO    ] 2026-10-28 09:20:49
[2026-10-28 09:20:49,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:20:50,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:20:50,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:20:50,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:20:50,555.555 INFO    ] time= 28/10/2026 09:20:50
[2026-10-28 09:20:50,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:20:50,571.571 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:20:50,699.699 INFO    ] No existing commands found in stream
[2026-10-28 09:20:55,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:20:55,719.719 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-28 09:21:00,236.236 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:21:00,238.238 INFO    ] Checking for system updates...
[2026-10-28 09:21:00,277.277 INFO    ] 200
[2026-10-28 09:21:00,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:21:00,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:21:00,333.333 INFO    ] No update needed
[2026-10-28 09:21:00,336.336 INFO    ] Checking for camera pi updates...
[2026-10-28 09:21:00,369.369 INFO    ] 200
[2026-10-28 09:21:00,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:21:00,416.416 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:21:00,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:21:00,504.504 INFO    ] No camera update needed
[2026-10-28 09:21:00,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:21:00,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:21:00,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:21:00,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:21:02,564.564 INFO    ] ================================================
[2026-10-28 09:21:02,584.584 INFO    ] Launching Daemon at Wed Oct 28 09:21:02 IST 2026
[2026-10-28 09:21:02,597.597 INFO    ] ================================================
[2026-10-28 09:21:03,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:21:03
[2026-10-28 09:21:03,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:21:04,160.160 INFO    ] Initializing speech engine...
[2026-10-28 09:21:04,170.170 INFO    ] 2026-10-28 09:21:04
[2026-10-28 09:21:04,438.438 INFO    ] 2026-10-28 09:21:04
[2026-10-28 09:21:04,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:21:04,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:21:04,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:21:05,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:21:05,160.160 INFO    ] time= 28/10/2026 09:21:05
[2026-10-28 09:21:05,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:21:05,248.248 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:21:05,398.398 INFO    ] No existing commands found in stream
[2026-10-28 09:21:10,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:21:10,426.426 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-28 09:21:13,139.139 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:21:13,142.142 INFO    ] Checking for system updates...
[2026-10-28 09:21:13,177.177 INFO    ] 200
[2026-10-28 09:21:13,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:21:13,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:21:13,241.241 INFO    ] No update needed
[2026-10-28 09:21:13,243.243 INFO    ] Checking for camera pi updates...
[2026-10-28 09:21:13,277.277 INFO    ] 200
[2026-10-28 09:21:13,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:21:13,320.320 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:21:13,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:21:13,404.404 INFO    ] No camera update needed
[2026-10-28 09:21:13,406.406 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:21:13,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:21:13,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:21:13,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:21:15,460.460 INFO    ] ================================================
[2026-10-28 09:21:15,476.476 INFO    ] Launching Daemon at Wed Oct 28 09:21:15 IST 2026
[2026-10-28 09:21:15,487.487 INFO    ] ================================================
[2026-10-28 09:21:16,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:21:16
[2026-10-28 09:21:16,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:21:16,894.894 INFO    ] Initializing speech engine...
[2026-10-28 09:21:16,901.901 INFO    ] 2026-10-28 09:21:16
[2026-10-28 09:21:17,174.174 INFO    ] 2026-10-28 09:21:17
[2026-10-28 09:21:17,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:21:17,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:21:17,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:21:17,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:21:17,643.643 INFO    ] time= 28/10/2026 09:21:17
[2026-10-28 09:21:17,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:21:17,739.739 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:21:17,883.883 INFO    ] No existing commands found in stream
[2026-10-28 09:21:22,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:21:22,901.901 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-28 09:21:27,225.225 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:21:27,228.228 INFO    ] Checking for system updates...
[2026-10-28 09:21:27,265.265 INFO    ] 200
[2026-10-28 09:21:27,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:21:27,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:21:27,330.330 INFO    ] No update needed
[2026-10-28 09:21:27,333.333 INFO    ] Checking for camera pi updates...
[2026-10-28 09:21:27,368.368 INFO    ] 200
[2026-10-28 09:21:27,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:21:27,411.411 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:21:27,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:21:27,496.496 INFO    ] No camera update needed
[2026-10-28 09:21:27,499.499 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:21:27,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:21:27,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:21:27,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:21:29,555.555 INFO    ] ================================================
[2026-10-28 09:21:29,570.570 INFO    ] Launching Daemon at Wed Oct 28 09:21:29 IST 2026
[2026-10-28 09:21:29,580.580 INFO    ] ================================================
[2026-10-28 09:21:30,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:21:30
[2026-10-28 09:21:30,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:21:31,189.189 INFO    ] Initializing speech engine...
[2026-10-28 09:21:31,201.201 INFO    ] 2026-10-28 09:21:31
[2026-10-28 09:21:31,517.517 INFO    ] 2026-10-28 09:21:31
[2026-10-28 09:21:31,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:21:32,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:21:32,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:21:32,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:21:32,392.392 INFO    ] time= 28/10/2026 09:21:32
[2026-10-28 09:21:32,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:21:32,439.439 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:21:32,656.656 INFO    ] No existing commands found in stream
[2026-10-28 09:21:37,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:21:37,670.670 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-28 09:21:40,543.543 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:21:40,546.546 INFO    ] Checking for system updates...
[2026-10-28 09:21:40,582.582 INFO    ] 200
[2026-10-28 09:21:40,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:21:40,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:21:40,648.648 INFO    ] No update needed
[2026-10-28 09:21:40,651.651 INFO    ] Checking for camera pi updates...
[2026-10-28 09:21:40,686.686 INFO    ] 200
[2026-10-28 09:21:40,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:21:40,729.729 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:21:40,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:21:40,817.817 INFO    ] No camera update needed
[2026-10-28 09:21:40,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:21:40,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:21:40,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:21:40,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:21:42,875.875 INFO    ] ================================================
[2026-10-28 09:21:42,890.890 INFO    ] Launching Daemon at Wed Oct 28 09:21:42 IST 2026
[2026-10-28 09:21:42,900.900 INFO    ] ================================================
[2026-10-28 09:21:43,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:21:43
[2026-10-28 09:21:44,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:21:44,332.332 INFO    ] Initializing speech engine...
[2026-10-28 09:21:44,341.341 INFO    ] 2026-10-28 09:21:44
[2026-10-28 09:21:44,600.600 INFO    ] 2026-10-28 09:21:44
[2026-10-28 09:21:44,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:21:44,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:21:44,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:21:45,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:21:45,230.230 INFO    ] time= 28/10/2026 09:21:45
[2026-10-28 09:21:45,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:21:45,240.240 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:21:45,417.417 INFO    ] No existing commands found in stream
[2026-10-28 09:21:50,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:21:50,447.447 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-28 09:21:51,344.344 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:21:51,347.347 INFO    ] Checking for system updates...
[2026-10-28 09:21:51,382.382 INFO    ] 200
[2026-10-28 09:21:51,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:21:51,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:21:51,439.439 INFO    ] No update needed
[2026-10-28 09:21:51,441.441 INFO    ] Checking for camera pi updates...
[2026-10-28 09:21:51,478.478 INFO    ] 200
[2026-10-28 09:21:51,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:21:51,521.521 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:21:51,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:21:51,620.620 INFO    ] No camera update needed
[2026-10-28 09:21:51,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:21:51,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:21:51,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:21:51,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:21:53,676.676 INFO    ] ================================================
[2026-10-28 09:21:53,691.691 INFO    ] Launching Daemon at Wed Oct 28 09:21:53 IST 2026
[2026-10-28 09:21:53,702.702 INFO    ] ================================================
[2026-10-28 09:21:54,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:21:54
[2026-10-28 09:21:54,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:21:55,117.117 INFO    ] Initializing speech engine...
[2026-10-28 09:21:55,142.142 INFO    ] 2026-10-28 09:21:55
[2026-10-28 09:21:55,414.414 INFO    ] 2026-10-28 09:21:55
[2026-10-28 09:21:55,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:21:55,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:21:55,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:21:55,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:21:56,013.013 INFO    ] time= 28/10/2026 09:21:55
[2026-10-28 09:21:56,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:21:56,070.070 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:21:56,229.229 INFO    ] No existing commands found in stream
[2026-10-28 09:22:01,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:22:01,254.254 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 09:22:04,022.022 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:22:04,024.024 INFO    ] Checking for system updates...
[2026-10-28 09:22:04,060.060 INFO    ] 200
[2026-10-28 09:22:04,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:22:04,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:22:04,118.118 INFO    ] No update needed
[2026-10-28 09:22:04,120.120 INFO    ] Checking for camera pi updates...
[2026-10-28 09:22:04,153.153 INFO    ] 200
[2026-10-28 09:22:04,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:22:04,211.211 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:22:04,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:22:04,298.298 INFO    ] No camera update needed
[2026-10-28 09:22:04,300.300 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:22:04,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:22:04,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:22:04,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:22:06,352.352 INFO    ] ================================================
[2026-10-28 09:22:06,366.366 INFO    ] Launching Daemon at Wed Oct 28 09:22:06 IST 2026
[2026-10-28 09:22:06,377.377 INFO    ] ================================================
[2026-10-28 09:22:06,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:22:06
[2026-10-28 09:22:07,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:22:07,935.935 INFO    ] Initializing speech engine...
[2026-10-28 09:22:07,948.948 INFO    ] 2026-10-28 09:22:07
[2026-10-28 09:22:08,217.217 INFO    ] 2026-10-28 09:22:08
[2026-10-28 09:22:08,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:22:08,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:22:08,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:22:08,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:22:08,940.940 INFO    ] time= 28/10/2026 09:22:08
[2026-10-28 09:22:08,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:22:09,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:22:09,209.209 INFO    ] No existing commands found in stream
[2026-10-28 09:22:14,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:22:14,223.223 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 09:22:15,385.385 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:22:15,388.388 INFO    ] Checking for system updates...
[2026-10-28 09:22:15,424.424 INFO    ] 200
[2026-10-28 09:22:15,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:22:15,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:22:15,482.482 INFO    ] No update needed
[2026-10-28 09:22:15,485.485 INFO    ] Checking for camera pi updates...
[2026-10-28 09:22:15,518.518 INFO    ] 200
[2026-10-28 09:22:15,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:22:15,560.560 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:22:15,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:22:15,653.653 INFO    ] No camera update needed
[2026-10-28 09:22:15,656.656 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:22:15,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:22:15,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:22:15,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:22:17,709.709 INFO    ] ================================================
[2026-10-28 09:22:17,725.725 INFO    ] Launching Daemon at Wed Oct 28 09:22:17 IST 2026
[2026-10-28 09:22:17,736.736 INFO    ] ================================================
[2026-10-28 09:22:18,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:22:18
[2026-10-28 09:22:18,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:22:19,240.240 INFO    ] Initializing speech engine...
[2026-10-28 09:22:19,247.247 INFO    ] 2026-10-28 09:22:19
[2026-10-28 09:22:19,495.495 INFO    ] 2026-10-28 09:22:19
[2026-10-28 09:22:19,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:22:19,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:22:19,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:22:20,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:22:20,060.060 INFO    ] time= 28/10/2026 09:22:20
[2026-10-28 09:22:20,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:22:20,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:22:20,232.232 INFO    ] No existing commands found in stream
[2026-10-28 09:22:25,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:22:25,265.265 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-28 09:22:28,102.102 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:22:28,105.105 INFO    ] Checking for system updates...
[2026-10-28 09:22:28,142.142 INFO    ] 200
[2026-10-28 09:22:28,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:22:28,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:22:28,201.201 INFO    ] No update needed
[2026-10-28 09:22:28,203.203 INFO    ] Checking for camera pi updates...
[2026-10-28 09:22:28,237.237 INFO    ] 200
[2026-10-28 09:22:28,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:22:28,282.282 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:22:28,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:22:28,370.370 INFO    ] No camera update needed
[2026-10-28 09:22:28,372.372 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:22:28,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:22:28,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:22:28,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:22:30,425.425 INFO    ] ================================================
[2026-10-28 09:22:30,440.440 INFO    ] Launching Daemon at Wed Oct 28 09:22:30 IST 2026
[2026-10-28 09:22:30,451.451 INFO    ] ================================================
[2026-10-28 09:22:31,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:22:31
[2026-10-28 09:22:31,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:22:31,931.931 INFO    ] Initializing speech engine...
[2026-10-28 09:22:31,945.945 INFO    ] 2026-10-28 09:22:31
[2026-10-28 09:22:32,233.233 INFO    ] 2026-10-28 09:22:32
[2026-10-28 09:22:32,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:22:32,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:22:32,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:22:32,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:22:32,755.755 INFO    ] time= 28/10/2026 09:22:32
[2026-10-28 09:22:32,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:22:32,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:22:32,990.990 INFO    ] No existing commands found in stream
[2026-10-28 09:22:38,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:22:38,021.021 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 09:22:40,065.065 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:22:40,068.068 INFO    ] Checking for system updates...
[2026-10-28 09:22:40,122.122 INFO    ] 200
[2026-10-28 09:22:40,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:22:40,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:22:40,226.226 INFO    ] No update needed
[2026-10-28 09:22:40,229.229 INFO    ] Checking for camera pi updates...
[2026-10-28 09:22:40,269.269 INFO    ] 200
[2026-10-28 09:22:40,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:22:40,315.315 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:22:40,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:22:40,405.405 INFO    ] No camera update needed
[2026-10-28 09:22:40,408.408 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:22:40,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:22:40,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:22:40,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:22:42,465.465 INFO    ] ================================================
[2026-10-28 09:22:42,481.481 INFO    ] Launching Daemon at Wed Oct 28 09:22:42 IST 2026
[2026-10-28 09:22:42,491.491 INFO    ] ================================================
[2026-10-28 09:22:43,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:22:43
[2026-10-28 09:22:43,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:22:44,159.159 INFO    ] Initializing speech engine...
[2026-10-28 09:22:44,173.173 INFO    ] 2026-10-28 09:22:44
[2026-10-28 09:22:44,460.460 INFO    ] 2026-10-28 09:22:44
[2026-10-28 09:22:44,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:22:44,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:22:44,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:22:45,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:22:45,205.205 INFO    ] time= 28/10/2026 09:22:45
[2026-10-28 09:22:45,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:22:45,284.284 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:22:45,467.467 INFO    ] No existing commands found in stream
[2026-10-28 09:22:50,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:22:50,487.487 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 09:22:53,232.232 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:22:53,236.236 INFO    ] Checking for system updates...
[2026-10-28 09:22:53,272.272 INFO    ] 200
[2026-10-28 09:22:53,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:22:53,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:22:53,331.331 INFO    ] No update needed
[2026-10-28 09:22:53,334.334 INFO    ] Checking for camera pi updates...
[2026-10-28 09:22:53,369.369 INFO    ] 200
[2026-10-28 09:22:53,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:22:53,419.419 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:22:53,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:22:53,606.606 INFO    ] No camera update needed
[2026-10-28 09:22:53,609.609 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:22:53,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:22:53,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:22:53,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:22:55,666.666 INFO    ] ================================================
[2026-10-28 09:22:55,681.681 INFO    ] Launching Daemon at Wed Oct 28 09:22:55 IST 2026
[2026-10-28 09:22:55,692.692 INFO    ] ================================================
[2026-10-28 09:22:56,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:22:56
[2026-10-28 09:22:56,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:22:57,118.118 INFO    ] Initializing speech engine...
[2026-10-28 09:22:57,124.124 INFO    ] 2026-10-28 09:22:57
[2026-10-28 09:22:57,373.373 INFO    ] 2026-10-28 09:22:57
[2026-10-28 09:22:57,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:22:57,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:22:57,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:22:57,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:22:57,943.943 INFO    ] time= 28/10/2026 09:22:57
[2026-10-28 09:22:57,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:22:57,967.967 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:22:58,101.101 INFO    ] No existing commands found in stream
[2026-10-28 09:23:03,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:23:03,135.135 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-28 09:23:07,466.466 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:23:07,469.469 INFO    ] Checking for system updates...
[2026-10-28 09:23:07,504.504 INFO    ] 200
[2026-10-28 09:23:07,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:23:07,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:23:07,562.562 INFO    ] No update needed
[2026-10-28 09:23:07,565.565 INFO    ] Checking for camera pi updates...
[2026-10-28 09:23:07,598.598 INFO    ] 200
[2026-10-28 09:23:07,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:23:07,645.645 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:23:07,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:23:07,720.720 INFO    ] No camera update needed
[2026-10-28 09:23:07,722.722 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:23:07,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:23:07,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:23:07,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:23:09,777.777 INFO    ] ================================================
[2026-10-28 09:23:09,793.793 INFO    ] Launching Daemon at Wed Oct 28 09:23:09 IST 2026
[2026-10-28 09:23:09,804.804 INFO    ] ================================================
[2026-10-28 09:23:10,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:23:10
[2026-10-28 09:23:10,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:23:11,234.234 INFO    ] Initializing speech engine...
[2026-10-28 09:23:11,247.247 INFO    ] 2026-10-28 09:23:11
[2026-10-28 09:23:11,512.512 INFO    ] 2026-10-28 09:23:11
[2026-10-28 09:23:11,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:23:11,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:23:11,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:23:12,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:23:12,079.079 INFO    ] time= 28/10/2026 09:23:12
[2026-10-28 09:23:12,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:23:12,102.102 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:23:12,238.238 INFO    ] No existing commands found in stream
[2026-10-28 09:23:17,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:23:17,269.269 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-28 09:23:19,756.756 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:23:19,758.758 INFO    ] Checking for system updates...
[2026-10-28 09:23:19,794.794 INFO    ] 200
[2026-10-28 09:23:19,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:23:19,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:23:19,851.851 INFO    ] No update needed
[2026-10-28 09:23:19,854.854 INFO    ] Checking for camera pi updates...
[2026-10-28 09:23:19,888.888 INFO    ] 200
[2026-10-28 09:23:19,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:23:19,936.936 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:23:20,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:23:20,024.024 INFO    ] No camera update needed
[2026-10-28 09:23:20,027.027 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:23:20,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:23:20,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:23:20,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:23:22,079.079 INFO    ] ================================================
[2026-10-28 09:23:22,095.095 INFO    ] Launching Daemon at Wed Oct 28 09:23:22 IST 2026
[2026-10-28 09:23:22,106.106 INFO    ] ================================================
[2026-10-28 09:23:22,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:23:22
[2026-10-28 09:23:23,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:23:23,553.553 INFO    ] Initializing speech engine...
[2026-10-28 09:23:23,572.572 INFO    ] 2026-10-28 09:23:23
[2026-10-28 09:23:23,824.824 INFO    ] 2026-10-28 09:23:23
[2026-10-28 09:23:23,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:23:24,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:23:24,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:23:24,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:23:24,374.374 INFO    ] time= 28/10/2026 09:23:24
[2026-10-28 09:23:24,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:23:24,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:23:24,552.552 INFO    ] No existing commands found in stream
[2026-10-28 09:23:29,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:23:29,580.580 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 09:23:34,121.121 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:23:34,124.124 INFO    ] Checking for system updates...
[2026-10-28 09:23:34,159.159 INFO    ] 200
[2026-10-28 09:23:34,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:23:34,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:23:34,216.216 INFO    ] No update needed
[2026-10-28 09:23:34,219.219 INFO    ] Checking for camera pi updates...
[2026-10-28 09:23:34,252.252 INFO    ] 200
[2026-10-28 09:23:34,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:23:34,294.294 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:23:34,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:23:34,378.378 INFO    ] No camera update needed
[2026-10-28 09:23:34,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:23:34,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:23:34,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:23:34,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:23:36,434.434 INFO    ] ================================================
[2026-10-28 09:23:36,449.449 INFO    ] Launching Daemon at Wed Oct 28 09:23:36 IST 2026
[2026-10-28 09:23:36,460.460 INFO    ] ================================================
[2026-10-28 09:23:37,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:23:37
[2026-10-28 09:23:37,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:23:37,993.993 INFO    ] Initializing speech engine...
[2026-10-28 09:23:37,998.998 INFO    ] 2026-10-28 09:23:37
[2026-10-28 09:23:38,250.250 INFO    ] 2026-10-28 09:23:38
[2026-10-28 09:23:38,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:23:38,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:23:38,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:23:38,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:23:38,803.803 INFO    ] time= 28/10/2026 09:23:38
[2026-10-28 09:23:38,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:23:38,828.828 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:23:38,938.938 INFO    ] No existing commands found in stream
[2026-10-28 09:23:43,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:23:43,968.968 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-28 09:23:47,276.276 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:23:47,279.279 INFO    ] Checking for system updates...
[2026-10-28 09:23:47,315.315 INFO    ] 200
[2026-10-28 09:23:47,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:23:47,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:23:47,372.372 INFO    ] No update needed
[2026-10-28 09:23:47,375.375 INFO    ] Checking for camera pi updates...
[2026-10-28 09:23:47,409.409 INFO    ] 200
[2026-10-28 09:23:47,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:23:47,455.455 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:23:47,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:23:47,538.538 INFO    ] No camera update needed
[2026-10-28 09:23:47,540.540 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:23:47,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:23:47,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:23:47,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:23:49,594.594 INFO    ] ================================================
[2026-10-28 09:23:49,608.608 INFO    ] Launching Daemon at Wed Oct 28 09:23:49 IST 2026
[2026-10-28 09:23:49,619.619 INFO    ] ================================================
[2026-10-28 09:23:50,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:23:50
[2026-10-28 09:23:50,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:23:51,089.089 INFO    ] Initializing speech engine...
[2026-10-28 09:23:51,102.102 INFO    ] 2026-10-28 09:23:51
[2026-10-28 09:23:51,384.384 INFO    ] 2026-10-28 09:23:51
[2026-10-28 09:23:51,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:23:51,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:23:51,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:23:52,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:23:52,038.038 INFO    ] time= 28/10/2026 09:23:52
[2026-10-28 09:23:52,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:23:52,070.070 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:23:52,196.196 INFO    ] No existing commands found in stream
[2026-10-28 09:23:57,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:23:57,216.216 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 09:24:00,645.645 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:24:00,648.648 INFO    ] Checking for system updates...
[2026-10-28 09:24:00,687.687 INFO    ] 200
[2026-10-28 09:24:00,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:24:00,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:24:00,748.748 INFO    ] No update needed
[2026-10-28 09:24:00,750.750 INFO    ] Checking for camera pi updates...
[2026-10-28 09:24:00,790.790 INFO    ] 200
[2026-10-28 09:24:00,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:24:00,834.834 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:24:00,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:24:00,924.924 INFO    ] No camera update needed
[2026-10-28 09:24:00,927.927 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:24:00,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:24:00,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:24:00,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:24:02,984.984 INFO    ] ================================================
[2026-10-28 09:24:03,999.999 INFO    ] Launching Daemon at Wed Oct 28 09:24:02 IST 2026
[2026-10-28 09:24:03,009.009 INFO    ] ================================================
[2026-10-28 09:24:03,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:24:03
[2026-10-28 09:24:04,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:24:04,457.457 INFO    ] Initializing speech engine...
[2026-10-28 09:24:04,479.479 INFO    ] 2026-10-28 09:24:04
[2026-10-28 09:24:04,731.731 INFO    ] 2026-10-28 09:24:04
[2026-10-28 09:24:04,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:24:05,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:24:05,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:24:05,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:24:05,289.289 INFO    ] time= 28/10/2026 09:24:05
[2026-10-28 09:24:05,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:24:05,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:24:05,472.472 INFO    ] No existing commands found in stream
[2026-10-28 09:24:10,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:24:10,499.499 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 09:24:13,463.463 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:24:13,466.466 INFO    ] Checking for system updates...
[2026-10-28 09:24:13,501.501 INFO    ] 200
[2026-10-28 09:24:13,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:24:13,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:24:13,559.559 INFO    ] No update needed
[2026-10-28 09:24:13,562.562 INFO    ] Checking for camera pi updates...
[2026-10-28 09:24:13,595.595 INFO    ] 200
[2026-10-28 09:24:13,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:24:13,637.637 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:24:13,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:24:13,721.721 INFO    ] No camera update needed
[2026-10-28 09:24:13,724.724 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:24:13,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:24:13,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:24:13,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:24:15,779.779 INFO    ] ================================================
[2026-10-28 09:24:15,794.794 INFO    ] Launching Daemon at Wed Oct 28 09:24:15 IST 2026
[2026-10-28 09:24:15,805.805 INFO    ] ================================================
[2026-10-28 09:24:16,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:24:16
[2026-10-28 09:24:16,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:24:17,232.232 INFO    ] Initializing speech engine...
[2026-10-28 09:24:17,239.239 INFO    ] 2026-10-28 09:24:17
[2026-10-28 09:24:17,522.522 INFO    ] 2026-10-28 09:24:17
[2026-10-28 09:24:17,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:24:17,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:24:17,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:24:18,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:24:18,202.202 INFO    ] time= 28/10/2026 09:24:18
[2026-10-28 09:24:18,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:24:18,304.304 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:24:18,441.441 INFO    ] No existing commands found in stream
[2026-10-28 09:24:23,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:24:23,458.458 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-28 09:24:24,716.716 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:24:24,719.719 INFO    ] Checking for system updates...
[2026-10-28 09:24:24,756.756 INFO    ] 200
[2026-10-28 09:24:24,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:24:24,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:24:24,824.824 INFO    ] No update needed
[2026-10-28 09:24:24,827.827 INFO    ] Checking for camera pi updates...
[2026-10-28 09:24:24,861.861 INFO    ] 200
[2026-10-28 09:24:24,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:24:24,906.906 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:24:24,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:24:24,994.994 INFO    ] No camera update needed
[2026-10-28 09:24:24,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:24:25,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:24:25,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:24:25,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:24:27,056.056 INFO    ] ================================================
[2026-10-28 09:24:27,071.071 INFO    ] Launching Daemon at Wed Oct 28 09:24:27 IST 2026
[2026-10-28 09:24:27,081.081 INFO    ] ================================================
[2026-10-28 09:24:27,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:24:27
[2026-10-28 09:24:28,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:24:28,755.755 INFO    ] Initializing speech engine...
[2026-10-28 09:24:28,761.761 INFO    ] 2026-10-28 09:24:28
[2026-10-28 09:24:29,074.074 INFO    ] 2026-10-28 09:24:29
[2026-10-28 09:24:29,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:24:29,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:24:29,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:24:29,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:24:29,606.606 INFO    ] time= 28/10/2026 09:24:29
[2026-10-28 09:24:29,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:24:29,642.642 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:24:29,798.798 INFO    ] No existing commands found in stream
[2026-10-28 09:24:34,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:24:34,832.832 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-28 09:24:35,946.946 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:24:35,949.949 INFO    ] Checking for system updates...
[2026-10-28 09:24:35,988.988 INFO    ] 200
[2026-10-28 09:24:35,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:24:36,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:24:36,049.049 INFO    ] No update needed
[2026-10-28 09:24:36,052.052 INFO    ] Checking for camera pi updates...
[2026-10-28 09:24:36,086.086 INFO    ] 200
[2026-10-28 09:24:36,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:24:36,130.130 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:24:36,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:24:36,215.215 INFO    ] No camera update needed
[2026-10-28 09:24:36,218.218 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:24:36,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:24:36,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:24:36,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:24:38,275.275 INFO    ] ================================================
[2026-10-28 09:24:38,290.290 INFO    ] Launching Daemon at Wed Oct 28 09:24:38 IST 2026
[2026-10-28 09:24:38,301.301 INFO    ] ================================================
[2026-10-28 09:24:38,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:24:38
[2026-10-28 09:24:39,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:24:39,699.699 INFO    ] Initializing speech engine...
[2026-10-28 09:24:39,722.722 INFO    ] 2026-10-28 09:24:39
[2026-10-28 09:24:39,976.976 INFO    ] 2026-10-28 09:24:39
[2026-10-28 09:24:40,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:24:40,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:24:40,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:24:40,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:24:40,522.522 INFO    ] time= 28/10/2026 09:24:40
[2026-10-28 09:24:40,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:24:40,554.554 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:24:40,696.696 INFO    ] No existing commands found in stream
[2026-10-28 09:24:45,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:24:45,738.738 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-28 09:24:50,032.032 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:24:50,035.035 INFO    ] Checking for system updates...
[2026-10-28 09:24:50,077.077 INFO    ] 200
[2026-10-28 09:24:50,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:24:50,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:24:50,144.144 INFO    ] No update needed
[2026-10-28 09:24:50,147.147 INFO    ] Checking for camera pi updates...
[2026-10-28 09:24:50,186.186 INFO    ] 200
[2026-10-28 09:24:50,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:24:50,232.232 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:24:50,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:24:50,324.324 INFO    ] No camera update needed
[2026-10-28 09:24:50,327.327 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:24:50,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:24:50,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:24:50,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:24:52,383.383 INFO    ] ================================================
[2026-10-28 09:24:52,398.398 INFO    ] Launching Daemon at Wed Oct 28 09:24:52 IST 2026
[2026-10-28 09:24:52,409.409 INFO    ] ================================================
[2026-10-28 09:24:53,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:24:53
[2026-10-28 09:24:53,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:24:53,972.972 INFO    ] Initializing speech engine...
[2026-10-28 09:24:53,985.985 INFO    ] 2026-10-28 09:24:53
[2026-10-28 09:24:54,251.251 INFO    ] 2026-10-28 09:24:54
[2026-10-28 09:24:54,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:24:54,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:24:54,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:24:54,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:24:54,820.820 INFO    ] time= 28/10/2026 09:24:54
[2026-10-28 09:24:54,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:24:54,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:24:54,982.982 INFO    ] No existing commands found in stream
[2026-10-28 09:25:00,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:25:00,007.007 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-28 09:25:01,242.242 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:25:01,244.244 INFO    ] Checking for system updates...
[2026-10-28 09:25:01,281.281 INFO    ] 200
[2026-10-28 09:25:01,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:25:01,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:25:01,341.341 INFO    ] No update needed
[2026-10-28 09:25:01,344.344 INFO    ] Checking for camera pi updates...
[2026-10-28 09:25:01,379.379 INFO    ] 200
[2026-10-28 09:25:01,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:25:01,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:25:01,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:25:01,617.617 INFO    ] No camera update needed
[2026-10-28 09:25:01,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:25:01,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:25:01,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:25:01,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:25:03,703.703 INFO    ] ================================================
[2026-10-28 09:25:03,720.720 INFO    ] Launching Daemon at Wed Oct 28 09:25:03 IST 2026
[2026-10-28 09:25:03,732.732 INFO    ] ================================================
[2026-10-28 09:25:04,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:25:04
[2026-10-28 09:25:05,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:25:05,317.317 INFO    ] Initializing speech engine...
[2026-10-28 09:25:05,326.326 INFO    ] 2026-10-28 09:25:05
[2026-10-28 09:25:05,577.577 INFO    ] 2026-10-28 09:25:05
[2026-10-28 09:25:05,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:25:05,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:25:05,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:25:06,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:25:06,140.140 INFO    ] time= 28/10/2026 09:25:06
[2026-10-28 09:25:06,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:25:06,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:25:06,304.304 INFO    ] No existing commands found in stream
[2026-10-28 09:25:11,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:25:11,333.333 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-28 09:25:13,470.470 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:25:13,472.472 INFO    ] Checking for system updates...
[2026-10-28 09:25:13,512.512 INFO    ] 200
[2026-10-28 09:25:13,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:25:13,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:25:13,578.578 INFO    ] No update needed
[2026-10-28 09:25:13,580.580 INFO    ] Checking for camera pi updates...
[2026-10-28 09:25:13,613.613 INFO    ] 200
[2026-10-28 09:25:13,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:25:13,655.655 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:25:13,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:25:13,722.722 INFO    ] No camera update needed
[2026-10-28 09:25:13,725.725 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:25:13,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:25:13,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:25:13,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:25:15,779.779 INFO    ] ================================================
[2026-10-28 09:25:15,794.794 INFO    ] Launching Daemon at Wed Oct 28 09:25:15 IST 2026
[2026-10-28 09:25:15,805.805 INFO    ] ================================================
[2026-10-28 09:25:16,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:25:16
[2026-10-28 09:25:16,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:25:17,268.268 INFO    ] Initializing speech engine...
[2026-10-28 09:25:17,273.273 INFO    ] 2026-10-28 09:25:17
[2026-10-28 09:25:17,536.536 INFO    ] 2026-10-28 09:25:17
[2026-10-28 09:25:17,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:25:17,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:25:17,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:25:18,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:25:18,081.081 INFO    ] time= 28/10/2026 09:25:18
[2026-10-28 09:25:18,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:25:18,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:25:18,259.259 INFO    ] No existing commands found in stream
[2026-10-28 09:25:23,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:25:23,292.292 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-28 09:25:26,305.305 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:25:26,308.308 INFO    ] Checking for system updates...
[2026-10-28 09:25:26,344.344 INFO    ] 200
[2026-10-28 09:25:26,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:25:26,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:25:26,401.401 INFO    ] No update needed
[2026-10-28 09:25:26,404.404 INFO    ] Checking for camera pi updates...
[2026-10-28 09:25:26,438.438 INFO    ] 200
[2026-10-28 09:25:26,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:25:26,483.483 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:25:26,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:25:26,571.571 INFO    ] No camera update needed
[2026-10-28 09:25:26,574.574 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:25:26,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:25:26,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:25:26,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:25:28,632.632 INFO    ] ================================================
[2026-10-28 09:25:28,647.647 INFO    ] Launching Daemon at Wed Oct 28 09:25:28 IST 2026
[2026-10-28 09:25:28,658.658 INFO    ] ================================================
[2026-10-28 09:25:29,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:25:29
[2026-10-28 09:25:30,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:25:30,314.314 INFO    ] Initializing speech engine...
[2026-10-28 09:25:30,324.324 INFO    ] 2026-10-28 09:25:30
[2026-10-28 09:25:30,601.601 INFO    ] 2026-10-28 09:25:30
[2026-10-28 09:25:30,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:25:30,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:25:30,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:25:31,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:25:31,181.181 INFO    ] time= 28/10/2026 09:25:31
[2026-10-28 09:25:31,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:25:31,221.221 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:25:31,393.393 INFO    ] No existing commands found in stream
[2026-10-28 09:25:36,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:25:36,421.421 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-28 09:25:40,024.024 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:25:40,027.027 INFO    ] Checking for system updates...
[2026-10-28 09:25:40,065.065 INFO    ] 200
[2026-10-28 09:25:40,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:25:40,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:25:40,124.124 INFO    ] No update needed
[2026-10-28 09:25:40,127.127 INFO    ] Checking for camera pi updates...
[2026-10-28 09:25:40,162.162 INFO    ] 200
[2026-10-28 09:25:40,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:25:40,212.212 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:25:40,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:25:40,317.317 INFO    ] No camera update needed
[2026-10-28 09:25:40,320.320 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:25:40,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:25:40,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:25:40,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:25:42,379.379 INFO    ] ================================================
[2026-10-28 09:25:42,394.394 INFO    ] Launching Daemon at Wed Oct 28 09:25:42 IST 2026
[2026-10-28 09:25:42,405.405 INFO    ] ================================================
[2026-10-28 09:25:43,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:25:43
[2026-10-28 09:25:43,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:25:43,941.941 INFO    ] Initializing speech engine...
[2026-10-28 09:25:43,950.950 INFO    ] 2026-10-28 09:25:43
[2026-10-28 09:25:44,200.200 INFO    ] 2026-10-28 09:25:44
[2026-10-28 09:25:44,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:25:44,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:25:44,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:25:44,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:25:44,773.773 INFO    ] time= 28/10/2026 09:25:44
[2026-10-28 09:25:44,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:25:44,798.798 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:25:44,936.936 INFO    ] No existing commands found in stream
[2026-10-28 09:25:49,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:25:49,958.958 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-28 09:25:50,841.841 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:25:50,844.844 INFO    ] Checking for system updates...
[2026-10-28 09:25:50,879.879 INFO    ] 200
[2026-10-28 09:25:50,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:25:50,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:25:50,945.945 INFO    ] No update needed
[2026-10-28 09:25:50,947.947 INFO    ] Checking for camera pi updates...
[2026-10-28 09:25:50,985.985 INFO    ] 200
[2026-10-28 09:25:50,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:25:51,050.050 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:25:51,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:25:51,131.131 INFO    ] No camera update needed
[2026-10-28 09:25:51,133.133 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:25:51,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:25:51,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:25:51,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:25:53,189.189 INFO    ] ================================================
[2026-10-28 09:25:53,204.204 INFO    ] Launching Daemon at Wed Oct 28 09:25:53 IST 2026
[2026-10-28 09:25:53,214.214 INFO    ] ================================================
[2026-10-28 09:25:53,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:25:53
[2026-10-28 09:25:54,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:25:54,671.671 INFO    ] Initializing speech engine...
[2026-10-28 09:25:54,678.678 INFO    ] 2026-10-28 09:25:54
[2026-10-28 09:25:54,939.939 INFO    ] 2026-10-28 09:25:54
[2026-10-28 09:25:54,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:25:55,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:25:55,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:25:55,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:25:55,483.483 INFO    ] time= 28/10/2026 09:25:55
[2026-10-28 09:25:55,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:25:55,530.530 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:25:55,661.661 INFO    ] No existing commands found in stream
[2026-10-28 09:26:00,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:26:00,689.689 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-28 09:26:03,385.385 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:26:03,388.388 INFO    ] Checking for system updates...
[2026-10-28 09:26:03,423.423 INFO    ] 200
[2026-10-28 09:26:03,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:26:03,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:26:03,480.480 INFO    ] No update needed
[2026-10-28 09:26:03,483.483 INFO    ] Checking for camera pi updates...
[2026-10-28 09:26:03,516.516 INFO    ] 200
[2026-10-28 09:26:03,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:26:03,559.559 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:26:03,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:26:03,652.652 INFO    ] No camera update needed
[2026-10-28 09:26:03,654.654 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:26:03,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:26:03,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:26:03,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:26:05,708.708 INFO    ] ================================================
[2026-10-28 09:26:05,723.723 INFO    ] Launching Daemon at Wed Oct 28 09:26:05 IST 2026
[2026-10-28 09:26:05,734.734 INFO    ] ================================================
[2026-10-28 09:26:06,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:26:06
[2026-10-28 09:26:06,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:26:07,197.197 INFO    ] Initializing speech engine...
[2026-10-28 09:26:07,203.203 INFO    ] 2026-10-28 09:26:07
[2026-10-28 09:26:07,477.477 INFO    ] 2026-10-28 09:26:07
[2026-10-28 09:26:07,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:26:07,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:26:07,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:26:08,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:26:08,062.062 INFO    ] time= 28/10/2026 09:26:08
[2026-10-28 09:26:08,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:26:08,096.096 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:26:08,226.226 INFO    ] No existing commands found in stream
[2026-10-28 09:26:13,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:26:13,259.259 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-28 09:26:16,122.122 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:26:16,124.124 INFO    ] Checking for system updates...
[2026-10-28 09:26:16,162.162 INFO    ] 200
[2026-10-28 09:26:16,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:26:16,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:26:16,234.234 INFO    ] No update needed
[2026-10-28 09:26:16,236.236 INFO    ] Checking for camera pi updates...
[2026-10-28 09:26:16,270.270 INFO    ] 200
[2026-10-28 09:26:16,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:26:16,313.313 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:26:16,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:26:16,411.411 INFO    ] No camera update needed
[2026-10-28 09:26:16,414.414 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:26:16,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:26:16,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:26:16,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:26:18,472.472 INFO    ] ================================================
[2026-10-28 09:26:18,486.486 INFO    ] Launching Daemon at Wed Oct 28 09:26:18 IST 2026
[2026-10-28 09:26:18,497.497 INFO    ] ================================================
[2026-10-28 09:26:19,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:26:19
[2026-10-28 09:26:19,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:26:19,946.946 INFO    ] Initializing speech engine...
[2026-10-28 09:26:19,955.955 INFO    ] 2026-10-28 09:26:19
[2026-10-28 09:26:20,218.218 INFO    ] 2026-10-28 09:26:20
[2026-10-28 09:26:20,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:26:20,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:26:20,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:26:20,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:26:20,760.760 INFO    ] time= 28/10/2026 09:26:20
[2026-10-28 09:26:20,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:26:20,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:26:21,000.000 INFO    ] No existing commands found in stream
[2026-10-28 09:26:26,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:26:26,034.034 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-28 09:26:28,242.242 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:26:28,245.245 INFO    ] Checking for system updates...
[2026-10-28 09:26:28,285.285 INFO    ] 200
[2026-10-28 09:26:28,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:26:28,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:26:28,351.351 INFO    ] No update needed
[2026-10-28 09:26:28,353.353 INFO    ] Checking for camera pi updates...
[2026-10-28 09:26:28,391.391 INFO    ] 200
[2026-10-28 09:26:28,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:26:28,434.434 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:26:28,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:26:28,519.519 INFO    ] No camera update needed
[2026-10-28 09:26:28,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:26:28,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:26:28,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:26:28,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:26:30,577.577 INFO    ] ================================================
[2026-10-28 09:26:30,592.592 INFO    ] Launching Daemon at Wed Oct 28 09:26:30 IST 2026
[2026-10-28 09:26:30,602.602 INFO    ] ================================================
[2026-10-28 09:26:31,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:26:31
[2026-10-28 09:26:31,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:26:32,216.216 INFO    ] Initializing speech engine...
[2026-10-28 09:26:32,226.226 INFO    ] 2026-10-28 09:26:32
[2026-10-28 09:26:32,564.564 INFO    ] 2026-10-28 09:26:32
[2026-10-28 09:26:32,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:26:32,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:26:32,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:26:33,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:26:33,106.106 INFO    ] time= 28/10/2026 09:26:33
[2026-10-28 09:26:33,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:26:33,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:26:33,266.266 INFO    ] No existing commands found in stream
[2026-10-28 09:26:38,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:26:38,301.301 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-28 09:26:39,202.202 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:26:39,205.205 INFO    ] Checking for system updates...
[2026-10-28 09:26:39,243.243 INFO    ] 200
[2026-10-28 09:26:39,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:26:39,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:26:39,308.308 INFO    ] No update needed
[2026-10-28 09:26:39,310.310 INFO    ] Checking for camera pi updates...
[2026-10-28 09:26:39,344.344 INFO    ] 200
[2026-10-28 09:26:39,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:26:39,387.387 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:26:39,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:26:39,476.476 INFO    ] No camera update needed
[2026-10-28 09:26:39,478.478 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:26:39,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:26:39,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:26:39,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:26:41,530.530 INFO    ] ================================================
[2026-10-28 09:26:41,545.545 INFO    ] Launching Daemon at Wed Oct 28 09:26:41 IST 2026
[2026-10-28 09:26:41,556.556 INFO    ] ================================================
[2026-10-28 09:26:42,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:26:42
[2026-10-28 09:26:42,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:26:43,016.016 INFO    ] Initializing speech engine...
[2026-10-28 09:26:43,030.030 INFO    ] 2026-10-28 09:26:43
[2026-10-28 09:26:43,299.299 INFO    ] 2026-10-28 09:26:43
[2026-10-28 09:26:43,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:26:43,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:26:43,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:26:43,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:26:43,921.921 INFO    ] time= 28/10/2026 09:26:43
[2026-10-28 09:26:43,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:26:43,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:26:44,071.071 INFO    ] No existing commands found in stream
[2026-10-28 09:26:49,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:26:49,094.094 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 09:26:52,104.104 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:26:52,107.107 INFO    ] Checking for system updates...
[2026-10-28 09:26:52,143.143 INFO    ] 200
[2026-10-28 09:26:52,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:26:52,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:26:52,201.201 INFO    ] No update needed
[2026-10-28 09:26:52,203.203 INFO    ] Checking for camera pi updates...
[2026-10-28 09:26:52,237.237 INFO    ] 200
[2026-10-28 09:26:52,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:26:52,284.284 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:26:52,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:26:52,371.371 INFO    ] No camera update needed
[2026-10-28 09:26:52,373.373 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:26:52,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:26:52,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:26:52,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:26:54,430.430 INFO    ] ================================================
[2026-10-28 09:26:54,445.445 INFO    ] Launching Daemon at Wed Oct 28 09:26:54 IST 2026
[2026-10-28 09:26:54,456.456 INFO    ] ================================================
[2026-10-28 09:26:55,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:26:55
[2026-10-28 09:26:55,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:26:56,053.053 INFO    ] Initializing speech engine...
[2026-10-28 09:26:56,062.062 INFO    ] 2026-10-28 09:26:56
[2026-10-28 09:26:56,330.330 INFO    ] 2026-10-28 09:26:56
[2026-10-28 09:26:56,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:26:56,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:26:56,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:26:57,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:26:57,052.052 INFO    ] time= 28/10/2026 09:26:57
[2026-10-28 09:26:57,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:26:57,141.141 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:26:57,312.312 INFO    ] No existing commands found in stream
[2026-10-28 09:27:02,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:27:02,341.341 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-28 09:27:05,640.640 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:27:05,642.642 INFO    ] Checking for system updates...
[2026-10-28 09:27:05,678.678 INFO    ] 200
[2026-10-28 09:27:05,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:27:05,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:27:05,739.739 INFO    ] No update needed
[2026-10-28 09:27:05,742.742 INFO    ] Checking for camera pi updates...
[2026-10-28 09:27:05,775.775 INFO    ] 200
[2026-10-28 09:27:05,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:27:05,821.821 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:27:05,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:27:05,903.903 INFO    ] No camera update needed
[2026-10-28 09:27:05,906.906 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:27:05,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:27:05,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:27:05,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:27:07,958.958 INFO    ] ================================================
[2026-10-28 09:27:07,973.973 INFO    ] Launching Daemon at Wed Oct 28 09:27:07 IST 2026
[2026-10-28 09:27:07,983.983 INFO    ] ================================================
[2026-10-28 09:27:08,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:27:08
[2026-10-28 09:27:09,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:27:09,430.430 INFO    ] Initializing speech engine...
[2026-10-28 09:27:09,438.438 INFO    ] 2026-10-28 09:27:09
[2026-10-28 09:27:09,701.701 INFO    ] 2026-10-28 09:27:09
[2026-10-28 09:27:09,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:27:10,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:27:10,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:27:10,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:27:10,256.256 INFO    ] time= 28/10/2026 09:27:10
[2026-10-28 09:27:10,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:27:10,290.290 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:27:10,433.433 INFO    ] No existing commands found in stream
[2026-10-28 09:27:15,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:27:15,466.466 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 09:27:17,408.408 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:27:17,411.411 INFO    ] Checking for system updates...
[2026-10-28 09:27:17,449.449 INFO    ] 200
[2026-10-28 09:27:17,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:27:17,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:27:17,507.507 INFO    ] No update needed
[2026-10-28 09:27:17,510.510 INFO    ] Checking for camera pi updates...
[2026-10-28 09:27:17,545.545 INFO    ] 200
[2026-10-28 09:27:17,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:27:17,587.587 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:27:17,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:27:17,678.678 INFO    ] No camera update needed
[2026-10-28 09:27:17,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:27:17,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:27:17,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:27:17,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:27:19,733.733 INFO    ] ================================================
[2026-10-28 09:27:19,748.748 INFO    ] Launching Daemon at Wed Oct 28 09:27:19 IST 2026
[2026-10-28 09:27:19,758.758 INFO    ] ================================================
[2026-10-28 09:27:20,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:27:20
[2026-10-28 09:27:20,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:27:21,147.147 INFO    ] Initializing speech engine...
[2026-10-28 09:27:21,159.159 INFO    ] 2026-10-28 09:27:21
[2026-10-28 09:27:21,423.423 INFO    ] 2026-10-28 09:27:21
[2026-10-28 09:27:21,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:27:21,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:27:21,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:27:21,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:27:21,978.978 INFO    ] time= 28/10/2026 09:27:21
[2026-10-28 09:27:21,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:27:22,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:27:22,135.135 INFO    ] No existing commands found in stream
[2026-10-28 09:27:27,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:27:27,157.157 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 09:27:30,247.247 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:27:30,250.250 INFO    ] Checking for system updates...
[2026-10-28 09:27:30,285.285 INFO    ] 200
[2026-10-28 09:27:30,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:27:30,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:27:30,346.346 INFO    ] No update needed
[2026-10-28 09:27:30,348.348 INFO    ] Checking for camera pi updates...
[2026-10-28 09:27:30,384.384 INFO    ] 200
[2026-10-28 09:27:30,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:27:30,429.429 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:27:30,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:27:30,512.512 INFO    ] No camera update needed
[2026-10-28 09:27:30,515.515 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:27:30,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:27:30,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:27:30,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:27:32,569.569 INFO    ] ================================================
[2026-10-28 09:27:32,586.586 INFO    ] Launching Daemon at Wed Oct 28 09:27:32 IST 2026
[2026-10-28 09:27:32,598.598 INFO    ] ================================================
[2026-10-28 09:27:33,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:27:33
[2026-10-28 09:27:33,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:27:34,150.150 INFO    ] Initializing speech engine...
[2026-10-28 09:27:34,161.161 INFO    ] 2026-10-28 09:27:34
[2026-10-28 09:27:34,433.433 INFO    ] 2026-10-28 09:27:34
[2026-10-28 09:27:34,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:27:34,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:27:34,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:27:34,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:27:34,979.979 INFO    ] time= 28/10/2026 09:27:34
[2026-10-28 09:27:34,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:27:35,015.015 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:27:35,142.142 INFO    ] No existing commands found in stream
[2026-10-28 09:27:40,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:27:40,176.176 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-28 09:27:42,220.220 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:27:42,222.222 INFO    ] Checking for system updates...
[2026-10-28 09:27:42,260.260 INFO    ] 200
[2026-10-28 09:27:42,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:27:42,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:27:42,317.317 INFO    ] No update needed
[2026-10-28 09:27:42,319.319 INFO    ] Checking for camera pi updates...
[2026-10-28 09:27:42,354.354 INFO    ] 200
[2026-10-28 09:27:42,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:27:42,401.401 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:27:42,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:27:42,489.489 INFO    ] No camera update needed
[2026-10-28 09:27:42,492.492 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:27:42,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:27:42,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:27:42,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:27:44,544.544 INFO    ] ================================================
[2026-10-28 09:27:44,559.559 INFO    ] Launching Daemon at Wed Oct 28 09:27:44 IST 2026
[2026-10-28 09:27:44,569.569 INFO    ] ================================================
[2026-10-28 09:27:45,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:27:45
[2026-10-28 09:27:45,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:27:46,120.120 INFO    ] Initializing speech engine...
[2026-10-28 09:27:46,128.128 INFO    ] 2026-10-28 09:27:46
[2026-10-28 09:27:46,411.411 INFO    ] 2026-10-28 09:27:46
[2026-10-28 09:27:46,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:27:46,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:27:46,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:27:47,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:27:47,102.102 INFO    ] time= 28/10/2026 09:27:47
[2026-10-28 09:27:47,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:27:47,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:27:47,335.335 INFO    ] No existing commands found in stream
[2026-10-28 09:27:52,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:27:52,352.352 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-28 09:27:54,325.325 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:27:54,327.327 INFO    ] Checking for system updates...
[2026-10-28 09:27:54,364.364 INFO    ] 200
[2026-10-28 09:27:54,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:27:54,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:27:54,429.429 INFO    ] No update needed
[2026-10-28 09:27:54,431.431 INFO    ] Checking for camera pi updates...
[2026-10-28 09:27:54,465.465 INFO    ] 200
[2026-10-28 09:27:54,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:27:54,510.510 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:27:54,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:27:54,598.598 INFO    ] No camera update needed
[2026-10-28 09:27:54,601.601 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:27:54,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:27:54,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:27:54,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:27:56,659.659 INFO    ] ================================================
[2026-10-28 09:27:56,675.675 INFO    ] Launching Daemon at Wed Oct 28 09:27:56 IST 2026
[2026-10-28 09:27:56,685.685 INFO    ] ================================================
[2026-10-28 09:27:57,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:27:57
[2026-10-28 09:27:57,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:27:58,128.128 INFO    ] Initializing speech engine...
[2026-10-28 09:27:58,137.137 INFO    ] 2026-10-28 09:27:58
[2026-10-28 09:27:58,409.409 INFO    ] 2026-10-28 09:27:58
[2026-10-28 09:27:58,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:27:58,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:27:58,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:27:58,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:27:58,951.951 INFO    ] time= 28/10/2026 09:27:58
[2026-10-28 09:27:58,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:27:58,986.986 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:27:59,093.093 INFO    ] No existing commands found in stream
[2026-10-28 09:28:04,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:28:04,125.125 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-28 09:28:05,242.242 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:28:05,245.245 INFO    ] Checking for system updates...
[2026-10-28 09:28:05,283.283 INFO    ] 200
[2026-10-28 09:28:05,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:28:05,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:28:05,344.344 INFO    ] No update needed
[2026-10-28 09:28:05,347.347 INFO    ] Checking for camera pi updates...
[2026-10-28 09:28:05,382.382 INFO    ] 200
[2026-10-28 09:28:05,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:28:05,428.428 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:28:05,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:28:05,494.494 INFO    ] No camera update needed
[2026-10-28 09:28:05,497.497 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:28:05,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:28:05,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:28:05,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:28:07,551.551 INFO    ] ================================================
[2026-10-28 09:28:07,567.567 INFO    ] Launching Daemon at Wed Oct 28 09:28:07 IST 2026
[2026-10-28 09:28:07,577.577 INFO    ] ================================================
[2026-10-28 09:28:08,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:28:08
[2026-10-28 09:28:08,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:28:09,009.009 INFO    ] Initializing speech engine...
[2026-10-28 09:28:09,018.018 INFO    ] 2026-10-28 09:28:09
[2026-10-28 09:28:09,266.266 INFO    ] 2026-10-28 09:28:09
[2026-10-28 09:28:09,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:28:09,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:28:09,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:28:09,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:28:09,820.820 INFO    ] time= 28/10/2026 09:28:09
[2026-10-28 09:28:09,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:28:09,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:28:09,976.976 INFO    ] No existing commands found in stream
[2026-10-28 09:28:14,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:28:15,000.000 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-28 09:28:17,979.979 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:28:17,982.982 INFO    ] Checking for system updates...
[2026-10-28 09:28:18,018.018 INFO    ] 200
[2026-10-28 09:28:18,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:28:18,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:28:18,076.076 INFO    ] No update needed
[2026-10-28 09:28:18,078.078 INFO    ] Checking for camera pi updates...
[2026-10-28 09:28:18,115.115 INFO    ] 200
[2026-10-28 09:28:18,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:28:18,160.160 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:28:18,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:28:18,237.237 INFO    ] No camera update needed
[2026-10-28 09:28:18,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:28:18,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:28:18,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:28:18,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:28:20,291.291 INFO    ] ================================================
[2026-10-28 09:28:20,306.306 INFO    ] Launching Daemon at Wed Oct 28 09:28:20 IST 2026
[2026-10-28 09:28:20,317.317 INFO    ] ================================================
[2026-10-28 09:28:20,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:28:20
[2026-10-28 09:28:21,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:28:21,864.864 INFO    ] Initializing speech engine...
[2026-10-28 09:28:21,872.872 INFO    ] 2026-10-28 09:28:21
[2026-10-28 09:28:22,177.177 INFO    ] 2026-10-28 09:28:22
[2026-10-28 09:28:22,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:28:22,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:28:22,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:28:22,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:28:22,883.883 INFO    ] time= 28/10/2026 09:28:22
[2026-10-28 09:28:22,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:28:22,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:28:23,113.113 INFO    ] No existing commands found in stream
[2026-10-28 09:28:28,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:28:28,126.126 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 09:28:29,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:28:29,593.593 INFO    ] Checking for system updates...
[2026-10-28 09:28:29,631.631 INFO    ] 200
[2026-10-28 09:28:29,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:28:29,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:28:29,688.688 INFO    ] No update needed
[2026-10-28 09:28:29,690.690 INFO    ] Checking for camera pi updates...
[2026-10-28 09:28:29,725.725 INFO    ] 200
[2026-10-28 09:28:29,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:28:29,768.768 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:28:29,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:28:29,854.854 INFO    ] No camera update needed
[2026-10-28 09:28:29,856.856 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:28:29,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:28:29,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:28:29,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:28:31,911.911 INFO    ] ================================================
[2026-10-28 09:28:31,926.926 INFO    ] Launching Daemon at Wed Oct 28 09:28:31 IST 2026
[2026-10-28 09:28:31,937.937 INFO    ] ================================================
[2026-10-28 09:28:32,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:28:32
[2026-10-28 09:28:33,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:28:33,407.407 INFO    ] Initializing speech engine...
[2026-10-28 09:28:33,415.415 INFO    ] 2026-10-28 09:28:33
[2026-10-28 09:28:33,709.709 INFO    ] 2026-10-28 09:28:33
[2026-10-28 09:28:33,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:28:34,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:28:34,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:28:34,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:28:34,323.323 INFO    ] time= 28/10/2026 09:28:34
[2026-10-28 09:28:34,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:28:34,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:28:34,490.490 INFO    ] No existing commands found in stream
[2026-10-28 09:28:39,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:28:39,508.508 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-28 09:28:41,709.709 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:28:41,712.712 INFO    ] Checking for system updates...
[2026-10-28 09:28:41,747.747 INFO    ] 200
[2026-10-28 09:28:41,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:28:41,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:28:41,810.810 INFO    ] No update needed
[2026-10-28 09:28:41,812.812 INFO    ] Checking for camera pi updates...
[2026-10-28 09:28:41,848.848 INFO    ] 200
[2026-10-28 09:28:41,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:28:41,896.896 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:28:41,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:28:41,984.984 INFO    ] No camera update needed
[2026-10-28 09:28:41,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:28:41,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:28:41,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:28:41,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:28:44,039.039 INFO    ] ================================================
[2026-10-28 09:28:44,054.054 INFO    ] Launching Daemon at Wed Oct 28 09:28:44 IST 2026
[2026-10-28 09:28:44,065.065 INFO    ] ================================================
[2026-10-28 09:28:44,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:28:44
[2026-10-28 09:28:45,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:28:45,641.641 INFO    ] Initializing speech engine...
[2026-10-28 09:28:45,649.649 INFO    ] 2026-10-28 09:28:45
[2026-10-28 09:28:45,919.919 INFO    ] 2026-10-28 09:28:45
[2026-10-28 09:28:45,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:28:46,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:28:46,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:28:46,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:28:46,487.487 INFO    ] time= 28/10/2026 09:28:46
[2026-10-28 09:28:46,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:28:46,535.535 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:28:46,675.675 INFO    ] No existing commands found in stream
[2026-10-28 09:28:51,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:28:51,703.703 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 09:28:54,569.569 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:28:54,572.572 INFO    ] Checking for system updates...
[2026-10-28 09:28:54,608.608 INFO    ] 200
[2026-10-28 09:28:54,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:28:54,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:28:54,666.666 INFO    ] No update needed
[2026-10-28 09:28:54,668.668 INFO    ] Checking for camera pi updates...
[2026-10-28 09:28:54,709.709 INFO    ] 200
[2026-10-28 09:28:54,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:28:54,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:28:54,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:28:54,839.839 INFO    ] No camera update needed
[2026-10-28 09:28:54,842.842 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:28:54,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:28:54,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:28:54,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:28:56,895.895 INFO    ] ================================================
[2026-10-28 09:28:56,910.910 INFO    ] Launching Daemon at Wed Oct 28 09:28:56 IST 2026
[2026-10-28 09:28:56,921.921 INFO    ] ================================================
[2026-10-28 09:28:57,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:28:57
[2026-10-28 09:28:58,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:28:58,346.346 INFO    ] Initializing speech engine...
[2026-10-28 09:28:58,355.355 INFO    ] 2026-10-28 09:28:58
[2026-10-28 09:28:58,604.604 INFO    ] 2026-10-28 09:28:58
[2026-10-28 09:28:58,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:28:58,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:28:58,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:28:59,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:28:59,174.174 INFO    ] time= 28/10/2026 09:28:59
[2026-10-28 09:28:59,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:28:59,198.198 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:28:59,316.316 INFO    ] No existing commands found in stream
[2026-10-28 09:29:04,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:29:04,339.339 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-28 09:29:06,665.665 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:29:06,667.667 INFO    ] Checking for system updates...
[2026-10-28 09:29:06,703.703 INFO    ] 200
[2026-10-28 09:29:06,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:29:06,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:29:06,766.766 INFO    ] No update needed
[2026-10-28 09:29:06,768.768 INFO    ] Checking for camera pi updates...
[2026-10-28 09:29:06,802.802 INFO    ] 200
[2026-10-28 09:29:06,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:29:06,849.849 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:29:07,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:29:07,051.051 INFO    ] No camera update needed
[2026-10-28 09:29:07,053.053 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:29:07,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:29:07,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:29:07,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:29:09,111.111 INFO    ] ================================================
[2026-10-28 09:29:09,127.127 INFO    ] Launching Daemon at Wed Oct 28 09:29:09 IST 2026
[2026-10-28 09:29:09,139.139 INFO    ] ================================================
[2026-10-28 09:29:09,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:29:09
[2026-10-28 09:29:10,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:29:10,606.606 INFO    ] Initializing speech engine...
[2026-10-28 09:29:10,620.620 INFO    ] 2026-10-28 09:29:10
[2026-10-28 09:29:10,878.878 INFO    ] 2026-10-28 09:29:10
[2026-10-28 09:29:10,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:29:11,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:29:11,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:29:11,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:29:11,461.461 INFO    ] time= 28/10/2026 09:29:11
[2026-10-28 09:29:11,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:29:11,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:29:11,621.621 INFO    ] No existing commands found in stream
[2026-10-28 09:29:16,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:29:16,642.642 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 09:29:18,222.222 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:29:18,225.225 INFO    ] Checking for system updates...
[2026-10-28 09:29:18,261.261 INFO    ] 200
[2026-10-28 09:29:18,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:29:18,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:29:18,318.318 INFO    ] No update needed
[2026-10-28 09:29:18,320.320 INFO    ] Checking for camera pi updates...
[2026-10-28 09:29:18,360.360 INFO    ] 200
[2026-10-28 09:29:18,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:29:18,402.402 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:29:18,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:29:18,492.492 INFO    ] No camera update needed
[2026-10-28 09:29:18,495.495 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:29:18,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:29:18,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:29:18,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:29:20,547.547 INFO    ] ================================================
[2026-10-28 09:29:20,562.562 INFO    ] Launching Daemon at Wed Oct 28 09:29:20 IST 2026
[2026-10-28 09:29:20,572.572 INFO    ] ================================================
[2026-10-28 09:29:21,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:29:21
[2026-10-28 09:29:21,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:29:22,017.017 INFO    ] Initializing speech engine...
[2026-10-28 09:29:22,026.026 INFO    ] 2026-10-28 09:29:22
[2026-10-28 09:29:22,275.275 INFO    ] 2026-10-28 09:29:22
[2026-10-28 09:29:22,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:29:22,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:29:22,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:29:22,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:29:22,826.826 INFO    ] time= 28/10/2026 09:29:22
[2026-10-28 09:29:22,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:29:22,850.850 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:29:22,970.970 INFO    ] No existing commands found in stream
[2026-10-28 09:29:27,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:29:27,993.993 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-28 09:29:29,619.619 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:29:29,621.621 INFO    ] Checking for system updates...
[2026-10-28 09:29:29,657.657 INFO    ] 200
[2026-10-28 09:29:29,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:29:29,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:29:29,720.720 INFO    ] No update needed
[2026-10-28 09:29:29,722.722 INFO    ] Checking for camera pi updates...
[2026-10-28 09:29:29,755.755 INFO    ] 200
[2026-10-28 09:29:29,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:29:29,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:29:29,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:29:29,879.879 INFO    ] No camera update needed
[2026-10-28 09:29:29,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:29:29,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:29:29,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:29:29,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:29:31,934.934 INFO    ] ================================================
[2026-10-28 09:29:31,950.950 INFO    ] Launching Daemon at Wed Oct 28 09:29:31 IST 2026
[2026-10-28 09:29:31,961.961 INFO    ] ================================================
[2026-10-28 09:29:32,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:29:32
[2026-10-28 09:29:33,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:29:33,509.509 INFO    ] Initializing speech engine...
[2026-10-28 09:29:33,514.514 INFO    ] 2026-10-28 09:29:33
[2026-10-28 09:29:33,784.784 INFO    ] 2026-10-28 09:29:33
[2026-10-28 09:29:33,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:29:34,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:29:34,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:29:34,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:29:34,485.485 INFO    ] time= 28/10/2026 09:29:34
[2026-10-28 09:29:34,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:29:34,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:29:34,751.751 INFO    ] No existing commands found in stream
[2026-10-28 09:29:39,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:29:39,780.780 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-28 09:29:41,088.088 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:29:41,091.091 INFO    ] Checking for system updates...
[2026-10-28 09:29:41,132.132 INFO    ] 200
[2026-10-28 09:29:41,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:29:41,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:29:41,195.195 INFO    ] No update needed
[2026-10-28 09:29:41,198.198 INFO    ] Checking for camera pi updates...
[2026-10-28 09:29:41,236.236 INFO    ] 200
[2026-10-28 09:29:41,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:29:41,288.288 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:29:41,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:29:41,357.357 INFO    ] No camera update needed
[2026-10-28 09:29:41,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:29:41,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:29:41,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:29:41,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:29:43,414.414 INFO    ] ================================================
[2026-10-28 09:29:43,429.429 INFO    ] Launching Daemon at Wed Oct 28 09:29:43 IST 2026
[2026-10-28 09:29:43,439.439 INFO    ] ================================================
[2026-10-28 09:29:44,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:29:44
[2026-10-28 09:29:44,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:29:44,858.858 INFO    ] Initializing speech engine...
[2026-10-28 09:29:44,863.863 INFO    ] 2026-10-28 09:29:44
[2026-10-28 09:29:45,115.115 INFO    ] 2026-10-28 09:29:45
[2026-10-28 09:29:45,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:29:45,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:29:45,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:29:45,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:29:45,663.663 INFO    ] time= 28/10/2026 09:29:45
[2026-10-28 09:29:45,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:29:45,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:29:45,834.834 INFO    ] No existing commands found in stream
[2026-10-28 09:29:50,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:29:50,867.867 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-28 09:29:52,379.379 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:29:52,382.382 INFO    ] Checking for system updates...
[2026-10-28 09:29:52,417.417 INFO    ] 200
[2026-10-28 09:29:52,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:29:52,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:29:52,479.479 INFO    ] No update needed
[2026-10-28 09:29:52,481.481 INFO    ] Checking for camera pi updates...
[2026-10-28 09:29:52,517.517 INFO    ] 200
[2026-10-28 09:29:52,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:29:52,564.564 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:29:52,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:29:52,648.648 INFO    ] No camera update needed
[2026-10-28 09:29:52,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:29:52,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:29:52,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:29:52,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:29:54,703.703 INFO    ] ================================================
[2026-10-28 09:29:54,718.718 INFO    ] Launching Daemon at Wed Oct 28 09:29:54 IST 2026
[2026-10-28 09:29:54,728.728 INFO    ] ================================================
[2026-10-28 09:29:55,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:29:55
[2026-10-28 09:29:55,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:29:56,136.136 INFO    ] Initializing speech engine...
[2026-10-28 09:29:56,154.154 INFO    ] 2026-10-28 09:29:56
[2026-10-28 09:29:56,408.408 INFO    ] 2026-10-28 09:29:56
[2026-10-28 09:29:56,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:29:56,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:29:56,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:29:56,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:29:56,968.968 INFO    ] time= 28/10/2026 09:29:56
[2026-10-28 09:29:56,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:29:57,003.003 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:29:57,110.110 INFO    ] No existing commands found in stream
[2026-10-28 09:30:02,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:30:02,130.130 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-28 09:30:08,232.232 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:30:08,235.235 INFO    ] Checking for system updates...
[2026-10-28 09:30:08,276.276 INFO    ] 200
[2026-10-28 09:30:08,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:30:08,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:30:08,335.335 INFO    ] No update needed
[2026-10-28 09:30:08,338.338 INFO    ] Checking for camera pi updates...
[2026-10-28 09:30:08,373.373 INFO    ] 200
[2026-10-28 09:30:08,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:30:08,418.418 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:30:08,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:30:08,507.507 INFO    ] No camera update needed
[2026-10-28 09:30:08,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:30:08,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:30:08,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:30:08,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:30:10,567.567 INFO    ] ================================================
[2026-10-28 09:30:10,582.582 INFO    ] Launching Daemon at Wed Oct 28 09:30:10 IST 2026
[2026-10-28 09:30:10,593.593 INFO    ] ================================================
[2026-10-28 09:30:11,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:30:11
[2026-10-28 09:30:11,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:30:11,986.986 INFO    ] Initializing speech engine...
[2026-10-28 09:30:11,998.998 INFO    ] 2026-10-28 09:30:11
[2026-10-28 09:30:12,278.278 INFO    ] 2026-10-28 09:30:12
[2026-10-28 09:30:12,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:30:12,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:30:12,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:30:12,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:30:12,787.787 INFO    ] time= 28/10/2026 09:30:12
[2026-10-28 09:30:12,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:30:12,895.895 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:30:12,993.993 INFO    ] No existing commands found in stream
[2026-10-28 09:30:18,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:30:18,007.007 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-28 09:30:22,381.381 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:30:22,384.384 INFO    ] Checking for system updates...
[2026-10-28 09:30:22,419.419 INFO    ] 200
[2026-10-28 09:30:22,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:30:22,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:30:22,496.496 INFO    ] No update needed
[2026-10-28 09:30:22,498.498 INFO    ] Checking for camera pi updates...
[2026-10-28 09:30:22,531.531 INFO    ] 200
[2026-10-28 09:30:22,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:30:22,580.580 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:30:22,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:30:22,683.683 INFO    ] No camera update needed
[2026-10-28 09:30:22,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:30:22,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:30:22,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:30:22,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:30:24,738.738 INFO    ] ================================================
[2026-10-28 09:30:24,753.753 INFO    ] Launching Daemon at Wed Oct 28 09:30:24 IST 2026
[2026-10-28 09:30:24,764.764 INFO    ] ================================================
[2026-10-28 09:30:25,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:30:25
[2026-10-28 09:30:26,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:30:26,398.398 INFO    ] Initializing speech engine...
[2026-10-28 09:30:26,407.407 INFO    ] 2026-10-28 09:30:26
[2026-10-28 09:30:26,698.698 INFO    ] 2026-10-28 09:30:26
[2026-10-28 09:30:26,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:30:27,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:30:27,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:30:27,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:30:27,434.434 INFO    ] time= 28/10/2026 09:30:27
[2026-10-28 09:30:27,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:30:27,515.515 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:30:27,634.634 INFO    ] No existing commands found in stream
[2026-10-28 09:30:32,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:30:32,669.669 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-28 09:30:35,528.528 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:30:35,531.531 INFO    ] Checking for system updates...
[2026-10-28 09:30:35,567.567 INFO    ] 200
[2026-10-28 09:30:35,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:30:35,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:30:35,624.624 INFO    ] No update needed
[2026-10-28 09:30:35,626.626 INFO    ] Checking for camera pi updates...
[2026-10-28 09:30:35,660.660 INFO    ] 200
[2026-10-28 09:30:35,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:30:35,706.706 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:30:35,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:30:35,805.805 INFO    ] No camera update needed
[2026-10-28 09:30:35,807.807 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:30:35,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:30:35,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:30:35,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:30:37,859.859 INFO    ] ================================================
[2026-10-28 09:30:37,874.874 INFO    ] Launching Daemon at Wed Oct 28 09:30:37 IST 2026
[2026-10-28 09:30:37,885.885 INFO    ] ================================================
[2026-10-28 09:30:38,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:30:38
[2026-10-28 09:30:39,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:30:39,486.486 INFO    ] Initializing speech engine...
[2026-10-28 09:30:39,497.497 INFO    ] 2026-10-28 09:30:39
[2026-10-28 09:30:39,803.803 INFO    ] 2026-10-28 09:30:39
[2026-10-28 09:30:39,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:30:40,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:30:40,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:30:40,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:30:40,351.351 INFO    ] time= 28/10/2026 09:30:40
[2026-10-28 09:30:40,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:30:40,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:30:40,486.486 INFO    ] No existing commands found in stream
[2026-10-28 09:30:45,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:30:45,520.520 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-28 09:30:48,384.384 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:30:48,387.387 INFO    ] Checking for system updates...
[2026-10-28 09:30:48,423.423 INFO    ] 200
[2026-10-28 09:30:48,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:30:48,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:30:48,480.480 INFO    ] No update needed
[2026-10-28 09:30:48,483.483 INFO    ] Checking for camera pi updates...
[2026-10-28 09:30:48,518.518 INFO    ] 200
[2026-10-28 09:30:48,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:30:48,566.566 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:30:48,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:30:48,669.669 INFO    ] No camera update needed
[2026-10-28 09:30:48,672.672 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:30:48,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:30:48,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:30:48,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:30:50,724.724 INFO    ] ================================================
[2026-10-28 09:30:50,739.739 INFO    ] Launching Daemon at Wed Oct 28 09:30:50 IST 2026
[2026-10-28 09:30:50,749.749 INFO    ] ================================================
[2026-10-28 09:30:51,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:30:51
[2026-10-28 09:30:51,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:30:52,206.206 INFO    ] Initializing speech engine...
[2026-10-28 09:30:52,215.215 INFO    ] 2026-10-28 09:30:52
[2026-10-28 09:30:52,464.464 INFO    ] 2026-10-28 09:30:52
[2026-10-28 09:30:52,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:30:52,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:30:52,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:30:52,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:30:53,018.018 INFO    ] time= 28/10/2026 09:30:52
[2026-10-28 09:30:53,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:30:53,043.043 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:30:53,173.173 INFO    ] No existing commands found in stream
[2026-10-28 09:30:58,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:30:58,190.190 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-28 09:31:02,468.468 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:31:02,472.472 INFO    ] Checking for system updates...
[2026-10-28 09:31:02,527.527 INFO    ] 200
[2026-10-28 09:31:02,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:31:02,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:31:02,620.620 INFO    ] No update needed
[2026-10-28 09:31:02,623.623 INFO    ] Checking for camera pi updates...
[2026-10-28 09:31:02,683.683 INFO    ] 200
[2026-10-28 09:31:02,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:31:02,738.738 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:31:02,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:31:02,868.868 INFO    ] No camera update needed
[2026-10-28 09:31:02,870.870 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:31:02,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:31:02,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:31:02,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:31:04,925.925 INFO    ] ================================================
[2026-10-28 09:31:04,940.940 INFO    ] Launching Daemon at Wed Oct 28 09:31:04 IST 2026
[2026-10-28 09:31:04,951.951 INFO    ] ================================================
[2026-10-28 09:31:05,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:31:05
[2026-10-28 09:31:06,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:31:06,557.557 INFO    ] Initializing speech engine...
[2026-10-28 09:31:06,564.564 INFO    ] 2026-10-28 09:31:06
[2026-10-28 09:31:06,850.850 INFO    ] 2026-10-28 09:31:06
[2026-10-28 09:31:06,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:31:07,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:31:07,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:31:07,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:31:07,561.561 INFO    ] time= 28/10/2026 09:31:07
[2026-10-28 09:31:07,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:31:07,655.655 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:31:07,800.800 INFO    ] No existing commands found in stream
[2026-10-28 09:31:12,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:31:12,837.837 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-28 09:31:13,765.765 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:31:13,768.768 INFO    ] Checking for system updates...
[2026-10-28 09:31:13,805.805 INFO    ] 200
[2026-10-28 09:31:13,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:31:13,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:31:13,865.865 INFO    ] No update needed
[2026-10-28 09:31:13,867.867 INFO    ] Checking for camera pi updates...
[2026-10-28 09:31:13,904.904 INFO    ] 200
[2026-10-28 09:31:13,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:31:13,953.953 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:31:14,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:31:14,121.121 INFO    ] No camera update needed
[2026-10-28 09:31:14,124.124 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:31:14,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:31:14,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:31:14,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:31:16,177.177 INFO    ] ================================================
[2026-10-28 09:31:16,192.192 INFO    ] Launching Daemon at Wed Oct 28 09:31:16 IST 2026
[2026-10-28 09:31:16,203.203 INFO    ] ================================================
[2026-10-28 09:31:16,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:31:16
[2026-10-28 09:31:17,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:31:17,609.609 INFO    ] Initializing speech engine...
[2026-10-28 09:31:17,615.615 INFO    ] 2026-10-28 09:31:17
[2026-10-28 09:31:17,921.921 INFO    ] 2026-10-28 09:31:17
[2026-10-28 09:31:17,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:31:18,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:31:18,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:31:18,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:31:18,529.529 INFO    ] time= 28/10/2026 09:31:18
[2026-10-28 09:31:18,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:31:18,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:31:18,714.714 INFO    ] No existing commands found in stream
[2026-10-28 09:31:23,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:31:23,745.745 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-28 09:31:27,059.059 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:31:27,062.062 INFO    ] Checking for system updates...
[2026-10-28 09:31:27,101.101 INFO    ] 200
[2026-10-28 09:31:27,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:31:27,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:31:27,167.167 INFO    ] No update needed
[2026-10-28 09:31:27,169.169 INFO    ] Checking for camera pi updates...
[2026-10-28 09:31:27,207.207 INFO    ] 200
[2026-10-28 09:31:27,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:31:27,255.255 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:31:27,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:31:27,351.351 INFO    ] No camera update needed
[2026-10-28 09:31:27,353.353 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:31:27,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:31:27,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:31:27,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:31:29,407.407 INFO    ] ================================================
[2026-10-28 09:31:29,424.424 INFO    ] Launching Daemon at Wed Oct 28 09:31:29 IST 2026
[2026-10-28 09:31:29,435.435 INFO    ] ================================================
[2026-10-28 09:31:30,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:31:30
[2026-10-28 09:31:30,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:31:31,002.002 INFO    ] Initializing speech engine...
[2026-10-28 09:31:31,014.014 INFO    ] 2026-10-28 09:31:31
[2026-10-28 09:31:31,311.311 INFO    ] 2026-10-28 09:31:31
[2026-10-28 09:31:31,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:31:31,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:31:31,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:31:31,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:31:31,918.918 INFO    ] time= 28/10/2026 09:31:31
[2026-10-28 09:31:31,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:31:31,957.957 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:31:32,164.164 INFO    ] No existing commands found in stream
[2026-10-28 09:31:37,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:31:37,197.197 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-28 09:31:41,309.309 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:31:41,312.312 INFO    ] Checking for system updates...
[2026-10-28 09:31:41,348.348 INFO    ] 200
[2026-10-28 09:31:41,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:31:41,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:31:41,407.407 INFO    ] No update needed
[2026-10-28 09:31:41,409.409 INFO    ] Checking for camera pi updates...
[2026-10-28 09:31:41,444.444 INFO    ] 200
[2026-10-28 09:31:41,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:31:41,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:31:41,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:31:41,574.574 INFO    ] No camera update needed
[2026-10-28 09:31:41,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:31:41,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:31:41,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:31:41,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:31:43,637.637 INFO    ] ================================================
[2026-10-28 09:31:43,652.652 INFO    ] Launching Daemon at Wed Oct 28 09:31:43 IST 2026
[2026-10-28 09:31:43,663.663 INFO    ] ================================================
[2026-10-28 09:31:44,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:31:44
[2026-10-28 09:31:44,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:31:45,061.061 INFO    ] Initializing speech engine...
[2026-10-28 09:31:45,075.075 INFO    ] 2026-10-28 09:31:45
[2026-10-28 09:31:45,342.342 INFO    ] 2026-10-28 09:31:45
[2026-10-28 09:31:45,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:31:45,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:31:45,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:31:45,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:31:45,871.871 INFO    ] time= 28/10/2026 09:31:45
[2026-10-28 09:31:45,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:31:45,918.918 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:31:46,051.051 INFO    ] No existing commands found in stream
[2026-10-28 09:31:51,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:31:51,080.080 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-28 09:31:52,788.788 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:31:52,791.791 INFO    ] Checking for system updates...
[2026-10-28 09:31:52,827.827 INFO    ] 200
[2026-10-28 09:31:52,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:31:52,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:31:52,904.904 INFO    ] No update needed
[2026-10-28 09:31:52,907.907 INFO    ] Checking for camera pi updates...
[2026-10-28 09:31:52,945.945 INFO    ] 200
[2026-10-28 09:31:52,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:31:52,993.993 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:31:53,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:31:53,078.078 INFO    ] No camera update needed
[2026-10-28 09:31:53,080.080 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:31:53,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:31:53,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:31:53,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:31:55,135.135 INFO    ] ================================================
[2026-10-28 09:31:55,150.150 INFO    ] Launching Daemon at Wed Oct 28 09:31:55 IST 2026
[2026-10-28 09:31:55,161.161 INFO    ] ================================================
[2026-10-28 09:31:55,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:31:55
[2026-10-28 09:31:56,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:31:56,704.704 INFO    ] Initializing speech engine...
[2026-10-28 09:31:56,713.713 INFO    ] 2026-10-28 09:31:56
[2026-10-28 09:31:56,981.981 INFO    ] 2026-10-28 09:31:56
[2026-10-28 09:31:57,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:31:57,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:31:57,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:31:57,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:31:57,478.478 INFO    ] time= 28/10/2026 09:31:57
[2026-10-28 09:31:57,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:31:57,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:31:57,683.683 INFO    ] No existing commands found in stream
[2026-10-28 09:32:02,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:32:02,709.709 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 09:32:04,440.440 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:32:04,443.443 INFO    ] Checking for system updates...
[2026-10-28 09:32:04,482.482 INFO    ] 200
[2026-10-28 09:32:04,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:32:04,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:32:04,539.539 INFO    ] No update needed
[2026-10-28 09:32:04,542.542 INFO    ] Checking for camera pi updates...
[2026-10-28 09:32:04,575.575 INFO    ] 200
[2026-10-28 09:32:04,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:32:04,617.617 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:32:04,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:32:04,692.692 INFO    ] No camera update needed
[2026-10-28 09:32:04,695.695 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:32:04,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:32:04,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:32:04,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:32:06,747.747 INFO    ] ================================================
[2026-10-28 09:32:06,763.763 INFO    ] Launching Daemon at Wed Oct 28 09:32:06 IST 2026
[2026-10-28 09:32:06,773.773 INFO    ] ================================================
[2026-10-28 09:32:07,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:32:07
[2026-10-28 09:32:07,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:32:08,215.215 INFO    ] Initializing speech engine...
[2026-10-28 09:32:08,229.229 INFO    ] 2026-10-28 09:32:08
[2026-10-28 09:32:08,515.515 INFO    ] 2026-10-28 09:32:08
[2026-10-28 09:32:08,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:32:08,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:32:08,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:32:09,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:32:09,109.109 INFO    ] time= 28/10/2026 09:32:09
[2026-10-28 09:32:09,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:32:09,154.154 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:32:09,305.305 INFO    ] No existing commands found in stream
[2026-10-28 09:32:14,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:32:14,329.329 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-28 09:32:18,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:32:18,906.906 INFO    ] Checking for system updates...
[2026-10-28 09:32:18,941.941 INFO    ] 200
[2026-10-28 09:32:18,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:32:18,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:32:18,999.999 INFO    ] No update needed
[2026-10-28 09:32:19,001.001 INFO    ] Checking for camera pi updates...
[2026-10-28 09:32:19,038.038 INFO    ] 200
[2026-10-28 09:32:19,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:32:19,085.085 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:32:19,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:32:19,171.171 INFO    ] No camera update needed
[2026-10-28 09:32:19,173.173 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:32:19,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:32:19,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:32:19,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:32:21,227.227 INFO    ] ================================================
[2026-10-28 09:32:21,242.242 INFO    ] Launching Daemon at Wed Oct 28 09:32:21 IST 2026
[2026-10-28 09:32:21,253.253 INFO    ] ================================================
[2026-10-28 09:32:21,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:32:21
[2026-10-28 09:32:22,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:32:22,702.702 INFO    ] Initializing speech engine...
[2026-10-28 09:32:22,717.717 INFO    ] 2026-10-28 09:32:22
[2026-10-28 09:32:22,996.996 INFO    ] 2026-10-28 09:32:22
[2026-10-28 09:32:23,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:32:23,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:32:23,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:32:23,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:32:23,478.478 INFO    ] time= 28/10/2026 09:32:23
[2026-10-28 09:32:23,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:32:23,527.527 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:32:23,642.642 INFO    ] No existing commands found in stream
[2026-10-28 09:32:28,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:32:28,658.658 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-28 09:32:36,108.108 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:32:36,112.112 INFO    ] Checking for system updates...
[2026-10-28 09:32:36,157.157 INFO    ] 200
[2026-10-28 09:32:36,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:32:36,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:32:36,240.240 INFO    ] No update needed
[2026-10-28 09:32:36,247.247 INFO    ] Checking for camera pi updates...
[2026-10-28 09:32:36,287.287 INFO    ] 200
[2026-10-28 09:32:36,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:32:36,357.357 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:32:36,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:32:36,415.415 INFO    ] No camera update needed
[2026-10-28 09:32:36,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:32:36,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:32:36,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:32:36,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:32:38,471.471 INFO    ] ================================================
[2026-10-28 09:32:38,486.486 INFO    ] Launching Daemon at Wed Oct 28 09:32:38 IST 2026
[2026-10-28 09:32:38,496.496 INFO    ] ================================================
[2026-10-28 09:32:39,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:32:39
[2026-10-28 09:32:39,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:32:39,902.902 INFO    ] Initializing speech engine...
[2026-10-28 09:32:39,926.926 INFO    ] 2026-10-28 09:32:39
[2026-10-28 09:32:40,186.186 INFO    ] 2026-10-28 09:32:40
[2026-10-28 09:32:40,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:32:40,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:32:40,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:32:40,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:32:40,797.797 INFO    ] time= 28/10/2026 09:32:40
[2026-10-28 09:32:40,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:32:40,821.821 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:32:40,967.967 INFO    ] No existing commands found in stream
[2026-10-28 09:32:45,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:32:45,986.986 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 09:32:49,647.647 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:32:49,649.649 INFO    ] Checking for system updates...
[2026-10-28 09:32:49,684.684 INFO    ] 200
[2026-10-28 09:32:49,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:32:49,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:32:49,741.741 INFO    ] No update needed
[2026-10-28 09:32:49,744.744 INFO    ] Checking for camera pi updates...
[2026-10-28 09:32:49,783.783 INFO    ] 200
[2026-10-28 09:32:49,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:32:49,826.826 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:32:49,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:32:49,915.915 INFO    ] No camera update needed
[2026-10-28 09:32:49,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:32:49,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:32:49,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:32:49,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:32:51,970.970 INFO    ] ================================================
[2026-10-28 09:32:51,985.985 INFO    ] Launching Daemon at Wed Oct 28 09:32:51 IST 2026
[2026-10-28 09:32:52,996.996 INFO    ] ================================================
[2026-10-28 09:32:52,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:32:52
[2026-10-28 09:32:53,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:32:53,446.446 INFO    ] Initializing speech engine...
[2026-10-28 09:32:53,454.454 INFO    ] 2026-10-28 09:32:53
[2026-10-28 09:32:53,717.717 INFO    ] 2026-10-28 09:32:53
[2026-10-28 09:32:53,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:32:54,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:32:54,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:32:54,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:32:54,340.340 INFO    ] time= 28/10/2026 09:32:54
[2026-10-28 09:32:54,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:32:54,363.363 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:32:54,494.494 INFO    ] No existing commands found in stream
[2026-10-28 09:32:59,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:32:59,522.522 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-28 09:33:02,886.886 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:33:02,888.888 INFO    ] Checking for system updates...
[2026-10-28 09:33:02,934.934 INFO    ] 200
[2026-10-28 09:33:02,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:33:02,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:33:02,997.997 INFO    ] No update needed
[2026-10-28 09:33:02,999.999 INFO    ] Checking for camera pi updates...
[2026-10-28 09:33:03,039.039 INFO    ] 200
[2026-10-28 09:33:03,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:33:03,092.092 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:33:03,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:33:03,193.193 INFO    ] No camera update needed
[2026-10-28 09:33:03,196.196 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:33:03,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:33:03,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:33:03,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:33:05,250.250 INFO    ] ================================================
[2026-10-28 09:33:05,266.266 INFO    ] Launching Daemon at Wed Oct 28 09:33:05 IST 2026
[2026-10-28 09:33:05,277.277 INFO    ] ================================================
[2026-10-28 09:33:05,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:33:05
[2026-10-28 09:33:06,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:33:06,703.703 INFO    ] Initializing speech engine...
[2026-10-28 09:33:06,713.713 INFO    ] 2026-10-28 09:33:06
[2026-10-28 09:33:06,976.976 INFO    ] 2026-10-28 09:33:06
[2026-10-28 09:33:07,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:33:07,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:33:07,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:33:07,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:33:07,492.492 INFO    ] time= 28/10/2026 09:33:07
[2026-10-28 09:33:07,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:33:07,591.591 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:33:07,734.734 INFO    ] No existing commands found in stream
[2026-10-28 09:33:12,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:33:12,764.764 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-28 09:33:15,226.226 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:33:15,228.228 INFO    ] Checking for system updates...
[2026-10-28 09:33:15,264.264 INFO    ] 200
[2026-10-28 09:33:15,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:33:15,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:33:15,320.320 INFO    ] No update needed
[2026-10-28 09:33:15,323.323 INFO    ] Checking for camera pi updates...
[2026-10-28 09:33:15,359.359 INFO    ] 200
[2026-10-28 09:33:15,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:33:15,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:33:15,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:33:15,507.507 INFO    ] No camera update needed
[2026-10-28 09:33:15,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:33:15,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:33:15,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:33:15,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:33:17,562.562 INFO    ] ================================================
[2026-10-28 09:33:17,577.577 INFO    ] Launching Daemon at Wed Oct 28 09:33:17 IST 2026
[2026-10-28 09:33:17,588.588 INFO    ] ================================================
[2026-10-28 09:33:18,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:33:18
[2026-10-28 09:33:18,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:33:18,999.999 INFO    ] Initializing speech engine...
[2026-10-28 09:33:19,024.024 INFO    ] 2026-10-28 09:33:19
[2026-10-28 09:33:19,296.296 INFO    ] 2026-10-28 09:33:19
[2026-10-28 09:33:19,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:33:19,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:33:19,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:33:19,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:33:19,816.816 INFO    ] time= 28/10/2026 09:33:19
[2026-10-28 09:33:19,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:33:19,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:33:20,072.072 INFO    ] No existing commands found in stream
[2026-10-28 09:33:25,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:33:25,098.098 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-28 09:33:28,700.700 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:33:28,702.702 INFO    ] Checking for system updates...
[2026-10-28 09:33:28,739.739 INFO    ] 200
[2026-10-28 09:33:28,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:33:28,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:33:28,802.802 INFO    ] No update needed
[2026-10-28 09:33:28,805.805 INFO    ] Checking for camera pi updates...
[2026-10-28 09:33:28,839.839 INFO    ] 200
[2026-10-28 09:33:28,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:33:28,884.884 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:33:29,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:33:29,067.067 INFO    ] No camera update needed
[2026-10-28 09:33:29,069.069 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:33:29,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:33:29,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:33:29,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:33:31,124.124 INFO    ] ================================================
[2026-10-28 09:33:31,140.140 INFO    ] Launching Daemon at Wed Oct 28 09:33:31 IST 2026
[2026-10-28 09:33:31,151.151 INFO    ] ================================================
[2026-10-28 09:33:31,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:33:31
[2026-10-28 09:33:32,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:33:32,680.680 INFO    ] Initializing speech engine...
[2026-10-28 09:33:32,690.690 INFO    ] 2026-10-28 09:33:32
[2026-10-28 09:33:33,001.001 INFO    ] 2026-10-28 09:33:32
[2026-10-28 09:33:33,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:33:33,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:33:33,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:33:33,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:33:33,573.573 INFO    ] time= 28/10/2026 09:33:33
[2026-10-28 09:33:33,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:33:33,598.598 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:33:33,706.706 INFO    ] No existing commands found in stream
[2026-10-28 09:33:38,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:33:38,740.740 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 09:33:42,956.956 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:33:42,959.959 INFO    ] Checking for system updates...
[2026-10-28 09:33:42,995.995 INFO    ] 200
[2026-10-28 09:33:42,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:33:43,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:33:43,058.058 INFO    ] No update needed
[2026-10-28 09:33:43,060.060 INFO    ] Checking for camera pi updates...
[2026-10-28 09:33:43,095.095 INFO    ] 200
[2026-10-28 09:33:43,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:33:43,142.142 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:33:43,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:33:43,226.226 INFO    ] No camera update needed
[2026-10-28 09:33:43,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:33:43,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:33:43,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:33:43,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:33:45,280.280 INFO    ] ================================================
[2026-10-28 09:33:45,296.296 INFO    ] Launching Daemon at Wed Oct 28 09:33:45 IST 2026
[2026-10-28 09:33:45,307.307 INFO    ] ================================================
[2026-10-28 09:33:45,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:33:45
[2026-10-28 09:33:46,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:33:46,752.752 INFO    ] Initializing speech engine...
[2026-10-28 09:33:46,759.759 INFO    ] 2026-10-28 09:33:46
[2026-10-28 09:33:47,056.056 INFO    ] 2026-10-28 09:33:47
[2026-10-28 09:33:47,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:33:47,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:33:47,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:33:47,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:33:47,614.614 INFO    ] time= 28/10/2026 09:33:47
[2026-10-28 09:33:47,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:33:47,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:33:47,838.838 INFO    ] No existing commands found in stream
[2026-10-28 09:33:52,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:33:52,869.869 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-28 09:33:56,949.949 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:33:56,951.951 INFO    ] Checking for system updates...
[2026-10-28 09:33:56,987.987 INFO    ] 200
[2026-10-28 09:33:56,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:33:57,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:33:57,050.050 INFO    ] No update needed
[2026-10-28 09:33:57,052.052 INFO    ] Checking for camera pi updates...
[2026-10-28 09:33:57,085.085 INFO    ] 200
[2026-10-28 09:33:57,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:33:57,134.134 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:33:57,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:33:57,215.215 INFO    ] No camera update needed
[2026-10-28 09:33:57,218.218 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:33:57,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:33:57,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:33:57,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:33:59,270.270 INFO    ] ================================================
[2026-10-28 09:33:59,286.286 INFO    ] Launching Daemon at Wed Oct 28 09:33:59 IST 2026
[2026-10-28 09:33:59,297.297 INFO    ] ================================================
[2026-10-28 09:33:59,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:33:59
[2026-10-28 09:34:00,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:34:00,755.755 INFO    ] Initializing speech engine...
[2026-10-28 09:34:00,765.765 INFO    ] 2026-10-28 09:34:00
[2026-10-28 09:34:01,027.027 INFO    ] 2026-10-28 09:34:01
[2026-10-28 09:34:01,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:34:01,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:34:01,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:34:01,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:34:01,637.637 INFO    ] time= 28/10/2026 09:34:01
[2026-10-28 09:34:01,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:34:01,659.659 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:34:01,755.755 INFO    ] No existing commands found in stream
[2026-10-28 09:34:06,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:34:06,768.768 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 09:34:09,422.422 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:34:09,424.424 INFO    ] Checking for system updates...
[2026-10-28 09:34:09,463.463 INFO    ] 200
[2026-10-28 09:34:09,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:34:09,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:34:09,526.526 INFO    ] No update needed
[2026-10-28 09:34:09,528.528 INFO    ] Checking for camera pi updates...
[2026-10-28 09:34:09,562.562 INFO    ] 200
[2026-10-28 09:34:09,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:34:09,605.605 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:34:09,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:34:09,678.678 INFO    ] No camera update needed
[2026-10-28 09:34:09,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:34:09,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:34:09,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:34:09,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:34:11,735.735 INFO    ] ================================================
[2026-10-28 09:34:11,750.750 INFO    ] Launching Daemon at Wed Oct 28 09:34:11 IST 2026
[2026-10-28 09:34:11,761.761 INFO    ] ================================================
[2026-10-28 09:34:12,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:34:12
[2026-10-28 09:34:12,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:34:13,217.217 INFO    ] Initializing speech engine...
[2026-10-28 09:34:13,223.223 INFO    ] 2026-10-28 09:34:13
[2026-10-28 09:34:13,483.483 INFO    ] 2026-10-28 09:34:13
[2026-10-28 09:34:13,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:34:13,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:34:13,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:34:14,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:34:14,027.027 INFO    ] time= 28/10/2026 09:34:14
[2026-10-28 09:34:14,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:34:14,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:34:14,181.181 INFO    ] No existing commands found in stream
[2026-10-28 09:34:19,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:34:19,208.208 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 09:34:23,830.830 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:34:23,833.833 INFO    ] Checking for system updates...
[2026-10-28 09:34:23,872.872 INFO    ] 200
[2026-10-28 09:34:23,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:34:23,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:34:23,930.930 INFO    ] No update needed
[2026-10-28 09:34:23,932.932 INFO    ] Checking for camera pi updates...
[2026-10-28 09:34:23,968.968 INFO    ] 200
[2026-10-28 09:34:23,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:34:24,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:34:24,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:34:24,096.096 INFO    ] No camera update needed
[2026-10-28 09:34:24,099.099 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:34:24,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:34:24,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:34:24,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:34:26,154.154 INFO    ] ================================================
[2026-10-28 09:34:26,169.169 INFO    ] Launching Daemon at Wed Oct 28 09:34:26 IST 2026
[2026-10-28 09:34:26,180.180 INFO    ] ================================================
[2026-10-28 09:34:26,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:34:26
[2026-10-28 09:34:27,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:34:27,587.587 INFO    ] Initializing speech engine...
[2026-10-28 09:34:27,602.602 INFO    ] 2026-10-28 09:34:27
[2026-10-28 09:34:27,868.868 INFO    ] 2026-10-28 09:34:27
[2026-10-28 09:34:27,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:34:28,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:34:28,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:34:28,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:34:28,435.435 INFO    ] time= 28/10/2026 09:34:28
[2026-10-28 09:34:28,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:34:28,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:34:28,577.577 INFO    ] No existing commands found in stream
[2026-10-28 09:34:33,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:34:33,603.603 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 09:34:34,261.261 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:34:34,264.264 INFO    ] Checking for system updates...
[2026-10-28 09:34:34,302.302 INFO    ] 200
[2026-10-28 09:34:34,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:34:34,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:34:34,366.366 INFO    ] No update needed
[2026-10-28 09:34:34,368.368 INFO    ] Checking for camera pi updates...
[2026-10-28 09:34:34,406.406 INFO    ] 200
[2026-10-28 09:34:34,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:34:34,449.449 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:34:34,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:34:34,532.532 INFO    ] No camera update needed
[2026-10-28 09:34:34,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:34:34,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:34:34,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:34:34,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:34:36,589.589 INFO    ] ================================================
[2026-10-28 09:34:36,604.604 INFO    ] Launching Daemon at Wed Oct 28 09:34:36 IST 2026
[2026-10-28 09:34:36,616.616 INFO    ] ================================================
[2026-10-28 09:34:37,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:34:37
[2026-10-28 09:34:37,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:34:38,056.056 INFO    ] Initializing speech engine...
[2026-10-28 09:34:38,062.062 INFO    ] 2026-10-28 09:34:38
[2026-10-28 09:34:38,360.360 INFO    ] 2026-10-28 09:34:38
[2026-10-28 09:34:38,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:34:38,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:34:38,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:34:38,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:34:38,894.894 INFO    ] time= 28/10/2026 09:34:38
[2026-10-28 09:34:38,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:34:39,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:34:39,159.159 INFO    ] No existing commands found in stream
[2026-10-28 09:34:44,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:34:44,182.182 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 09:34:48,243.243 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:34:48,245.245 INFO    ] Checking for system updates...
[2026-10-28 09:34:48,284.284 INFO    ] 200
[2026-10-28 09:34:48,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:34:48,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:34:48,341.341 INFO    ] No update needed
[2026-10-28 09:34:48,344.344 INFO    ] Checking for camera pi updates...
[2026-10-28 09:34:48,377.377 INFO    ] 200
[2026-10-28 09:34:48,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:34:48,420.420 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:34:48,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:34:48,513.513 INFO    ] No camera update needed
[2026-10-28 09:34:48,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:34:48,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:34:48,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:34:48,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:34:50,569.569 INFO    ] ================================================
[2026-10-28 09:34:50,585.585 INFO    ] Launching Daemon at Wed Oct 28 09:34:50 IST 2026
[2026-10-28 09:34:50,596.596 INFO    ] ================================================
[2026-10-28 09:34:51,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:34:51
[2026-10-28 09:34:51,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:34:52,049.049 INFO    ] Initializing speech engine...
[2026-10-28 09:34:52,056.056 INFO    ] 2026-10-28 09:34:52
[2026-10-28 09:34:52,318.318 INFO    ] 2026-10-28 09:34:52
[2026-10-28 09:34:52,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:34:52,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:34:52,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:34:52,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:34:52,906.906 INFO    ] time= 28/10/2026 09:34:52
[2026-10-28 09:34:52,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:34:52,923.923 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:34:53,072.072 INFO    ] No existing commands found in stream
[2026-10-28 09:34:58,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:34:58,107.107 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-28 09:35:01,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:35:01,310.310 INFO    ] Checking for system updates...
[2026-10-28 09:35:01,346.346 INFO    ] 200
[2026-10-28 09:35:01,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:35:01,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:35:01,403.403 INFO    ] No update needed
[2026-10-28 09:35:01,405.405 INFO    ] Checking for camera pi updates...
[2026-10-28 09:35:01,442.442 INFO    ] 200
[2026-10-28 09:35:01,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:35:01,489.489 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:35:01,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:35:01,649.649 INFO    ] No camera update needed
[2026-10-28 09:35:01,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:35:01,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:35:01,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:35:01,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:35:03,714.714 INFO    ] ================================================
[2026-10-28 09:35:03,731.731 INFO    ] Launching Daemon at Wed Oct 28 09:35:03 IST 2026
[2026-10-28 09:35:03,745.745 INFO    ] ================================================
[2026-10-28 09:35:04,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:35:04
[2026-10-28 09:35:04,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:35:05,207.207 INFO    ] Initializing speech engine...
[2026-10-28 09:35:05,221.221 INFO    ] 2026-10-28 09:35:05
[2026-10-28 09:35:05,501.501 INFO    ] 2026-10-28 09:35:05
[2026-10-28 09:35:05,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:35:05,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:35:05,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:35:05,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:35:06,043.043 INFO    ] time= 28/10/2026 09:35:05
[2026-10-28 09:35:06,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:35:06,124.124 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:35:06,247.247 INFO    ] No existing commands found in stream
[2026-10-28 09:35:11,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:35:11,273.273 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 09:35:13,044.044 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:35:13,046.046 INFO    ] Checking for system updates...
[2026-10-28 09:35:13,100.100 INFO    ] 200
[2026-10-28 09:35:13,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:35:13,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:35:13,194.194 INFO    ] No update needed
[2026-10-28 09:35:13,196.196 INFO    ] Checking for camera pi updates...
[2026-10-28 09:35:13,230.230 INFO    ] 200
[2026-10-28 09:35:13,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:35:13,274.274 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:35:13,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:35:13,360.360 INFO    ] No camera update needed
[2026-10-28 09:35:13,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:35:13,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:35:13,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:35:13,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:35:15,415.415 INFO    ] ================================================
[2026-10-28 09:35:15,431.431 INFO    ] Launching Daemon at Wed Oct 28 09:35:15 IST 2026
[2026-10-28 09:35:15,441.441 INFO    ] ================================================
[2026-10-28 09:35:16,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:35:16
[2026-10-28 09:35:16,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:35:16,890.890 INFO    ] Initializing speech engine...
[2026-10-28 09:35:16,901.901 INFO    ] 2026-10-28 09:35:16
[2026-10-28 09:35:17,159.159 INFO    ] 2026-10-28 09:35:17
[2026-10-28 09:35:17,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:35:17,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:35:17,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:35:17,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:35:17,704.704 INFO    ] time= 28/10/2026 09:35:17
[2026-10-28 09:35:17,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:35:17,727.727 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:35:17,860.860 INFO    ] No existing commands found in stream
[2026-10-28 09:35:22,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:35:22,877.877 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-28 09:35:25,590.590 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:35:25,593.593 INFO    ] Checking for system updates...
[2026-10-28 09:35:25,632.632 INFO    ] 200
[2026-10-28 09:35:25,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:35:25,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:35:25,695.695 INFO    ] No update needed
[2026-10-28 09:35:25,697.697 INFO    ] Checking for camera pi updates...
[2026-10-28 09:35:25,731.731 INFO    ] 200
[2026-10-28 09:35:25,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:35:25,773.773 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:35:25,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:35:25,867.867 INFO    ] No camera update needed
[2026-10-28 09:35:25,869.869 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:35:25,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:35:25,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:35:25,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:35:27,925.925 INFO    ] ================================================
[2026-10-28 09:35:27,945.945 INFO    ] Launching Daemon at Wed Oct 28 09:35:27 IST 2026
[2026-10-28 09:35:27,956.956 INFO    ] ================================================
[2026-10-28 09:35:28,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:35:28
[2026-10-28 09:35:29,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:35:29,398.398 INFO    ] Initializing speech engine...
[2026-10-28 09:35:29,404.404 INFO    ] 2026-10-28 09:35:29
[2026-10-28 09:35:29,695.695 INFO    ] 2026-10-28 09:35:29
[2026-10-28 09:35:29,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:35:29,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:35:29,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:35:30,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:35:30,225.225 INFO    ] time= 28/10/2026 09:35:30
[2026-10-28 09:35:30,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:35:30,320.320 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:35:30,449.449 INFO    ] No existing commands found in stream
[2026-10-28 09:35:35,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:35:35,475.475 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-28 09:35:37,324.324 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:35:37,327.327 INFO    ] Checking for system updates...
[2026-10-28 09:35:37,368.368 INFO    ] 200
[2026-10-28 09:35:37,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:35:37,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:35:37,426.426 INFO    ] No update needed
[2026-10-28 09:35:37,429.429 INFO    ] Checking for camera pi updates...
[2026-10-28 09:35:37,465.465 INFO    ] 200
[2026-10-28 09:35:37,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:35:37,508.508 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:35:37,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:35:37,589.589 INFO    ] No camera update needed
[2026-10-28 09:35:37,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:35:37,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:35:37,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:35:37,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:35:39,644.644 INFO    ] ================================================
[2026-10-28 09:35:39,659.659 INFO    ] Launching Daemon at Wed Oct 28 09:35:39 IST 2026
[2026-10-28 09:35:39,670.670 INFO    ] ================================================
[2026-10-28 09:35:40,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:35:40
[2026-10-28 09:35:40,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:35:41,193.193 INFO    ] Initializing speech engine...
[2026-10-28 09:35:41,209.209 INFO    ] 2026-10-28 09:35:41
[2026-10-28 09:35:41,479.479 INFO    ] 2026-10-28 09:35:41
[2026-10-28 09:35:41,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:35:41,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:35:41,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:35:42,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:35:42,093.093 INFO    ] time= 28/10/2026 09:35:42
[2026-10-28 09:35:42,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:35:42,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:35:42,228.228 INFO    ] No existing commands found in stream
[2026-10-28 09:35:47,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:35:47,260.260 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-28 09:35:51,551.551 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:35:51,553.553 INFO    ] Checking for system updates...
[2026-10-28 09:35:51,589.589 INFO    ] 200
[2026-10-28 09:35:51,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:35:51,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:35:51,646.646 INFO    ] No update needed
[2026-10-28 09:35:51,649.649 INFO    ] Checking for camera pi updates...
[2026-10-28 09:35:51,682.682 INFO    ] 200
[2026-10-28 09:35:51,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:35:51,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:35:51,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:35:51,815.815 INFO    ] No camera update needed
[2026-10-28 09:35:51,817.817 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:35:51,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:35:51,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:35:51,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:35:53,870.870 INFO    ] ================================================
[2026-10-28 09:35:53,887.887 INFO    ] Launching Daemon at Wed Oct 28 09:35:53 IST 2026
[2026-10-28 09:35:53,898.898 INFO    ] ================================================
[2026-10-28 09:35:54,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:35:54
[2026-10-28 09:35:55,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:35:55,482.482 INFO    ] Initializing speech engine...
[2026-10-28 09:35:55,490.490 INFO    ] 2026-10-28 09:35:55
[2026-10-28 09:35:55,764.764 INFO    ] 2026-10-28 09:35:55
[2026-10-28 09:35:55,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:35:56,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:35:56,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:35:56,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:35:56,549.549 INFO    ] time= 28/10/2026 09:35:56
[2026-10-28 09:35:56,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:35:56,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:35:56,774.774 INFO    ] No existing commands found in stream
[2026-10-28 09:36:01,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:36:01,796.796 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-28 09:36:04,710.710 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:36:04,713.713 INFO    ] Checking for system updates...
[2026-10-28 09:36:04,749.749 INFO    ] 200
[2026-10-28 09:36:04,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:36:04,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:36:04,812.812 INFO    ] No update needed
[2026-10-28 09:36:04,815.815 INFO    ] Checking for camera pi updates...
[2026-10-28 09:36:04,850.850 INFO    ] 200
[2026-10-28 09:36:04,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:36:04,893.893 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:36:04,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:36:04,976.976 INFO    ] No camera update needed
[2026-10-28 09:36:04,978.978 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:36:04,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:36:04,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:36:04,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:36:07,033.033 INFO    ] ================================================
[2026-10-28 09:36:07,048.048 INFO    ] Launching Daemon at Wed Oct 28 09:36:07 IST 2026
[2026-10-28 09:36:07,059.059 INFO    ] ================================================
[2026-10-28 09:36:07,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:36:07
[2026-10-28 09:36:08,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:36:08,634.634 INFO    ] Initializing speech engine...
[2026-10-28 09:36:08,641.641 INFO    ] 2026-10-28 09:36:08
[2026-10-28 09:36:08,910.910 INFO    ] 2026-10-28 09:36:08
[2026-10-28 09:36:08,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:36:09,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:36:09,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:36:09,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:36:09,475.475 INFO    ] time= 28/10/2026 09:36:09
[2026-10-28 09:36:09,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:36:09,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:36:09,633.633 INFO    ] No existing commands found in stream
[2026-10-28 09:36:14,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:36:14,652.652 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 09:36:19,119.119 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:36:19,122.122 INFO    ] Checking for system updates...
[2026-10-28 09:36:19,159.159 INFO    ] 200
[2026-10-28 09:36:19,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:36:19,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:36:19,222.222 INFO    ] No update needed
[2026-10-28 09:36:19,225.225 INFO    ] Checking for camera pi updates...
[2026-10-28 09:36:19,262.262 INFO    ] 200
[2026-10-28 09:36:19,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:36:19,307.307 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:36:19,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:36:19,404.404 INFO    ] No camera update needed
[2026-10-28 09:36:19,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:36:19,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:36:19,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:36:19,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:36:21,462.462 INFO    ] ================================================
[2026-10-28 09:36:21,477.477 INFO    ] Launching Daemon at Wed Oct 28 09:36:21 IST 2026
[2026-10-28 09:36:21,488.488 INFO    ] ================================================
[2026-10-28 09:36:22,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:36:22
[2026-10-28 09:36:22,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:36:23,071.071 INFO    ] Initializing speech engine...
[2026-10-28 09:36:23,078.078 INFO    ] 2026-10-28 09:36:23
[2026-10-28 09:36:23,355.355 INFO    ] 2026-10-28 09:36:23
[2026-10-28 09:36:23,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:36:23,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:36:23,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:36:23,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:36:23,936.936 INFO    ] time= 28/10/2026 09:36:23
[2026-10-28 09:36:23,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:36:23,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:36:24,112.112 INFO    ] No existing commands found in stream
[2026-10-28 09:36:29,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:36:29,146.146 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-28 09:36:31,863.863 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:36:31,866.866 INFO    ] Checking for system updates...
[2026-10-28 09:36:31,902.902 INFO    ] 200
[2026-10-28 09:36:31,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:36:31,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:36:31,966.966 INFO    ] No update needed
[2026-10-28 09:36:31,969.969 INFO    ] Checking for camera pi updates...
[2026-10-28 09:36:32,004.004 INFO    ] 200
[2026-10-28 09:36:32,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:36:32,060.060 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:36:32,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:36:32,171.171 INFO    ] No camera update needed
[2026-10-28 09:36:32,174.174 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:36:32,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:36:32,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:36:32,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:36:34,236.236 INFO    ] ================================================
[2026-10-28 09:36:34,251.251 INFO    ] Launching Daemon at Wed Oct 28 09:36:34 IST 2026
[2026-10-28 09:36:34,261.261 INFO    ] ================================================
[2026-10-28 09:36:34,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:36:34
[2026-10-28 09:36:35,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:36:35,661.661 INFO    ] Initializing speech engine...
[2026-10-28 09:36:35,667.667 INFO    ] 2026-10-28 09:36:35
[2026-10-28 09:36:35,958.958 INFO    ] 2026-10-28 09:36:35
[2026-10-28 09:36:35,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:36:36,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:36:36,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:36:36,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:36:36,575.575 INFO    ] time= 28/10/2026 09:36:36
[2026-10-28 09:36:36,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:36:36,604.604 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:36:36,733.733 INFO    ] No existing commands found in stream
[2026-10-28 09:36:41,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:36:41,758.758 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-28 09:36:44,462.462 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:36:44,465.465 INFO    ] Checking for system updates...
[2026-10-28 09:36:44,501.501 INFO    ] 200
[2026-10-28 09:36:44,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:36:44,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:36:44,558.558 INFO    ] No update needed
[2026-10-28 09:36:44,561.561 INFO    ] Checking for camera pi updates...
[2026-10-28 09:36:44,594.594 INFO    ] 200
[2026-10-28 09:36:44,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:36:44,636.636 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:36:44,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:36:44,724.724 INFO    ] No camera update needed
[2026-10-28 09:36:44,727.727 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:36:44,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:36:44,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:36:44,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:36:46,780.780 INFO    ] ================================================
[2026-10-28 09:36:46,795.795 INFO    ] Launching Daemon at Wed Oct 28 09:36:46 IST 2026
[2026-10-28 09:36:46,805.805 INFO    ] ================================================
[2026-10-28 09:36:47,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:36:47
[2026-10-28 09:36:47,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:36:48,270.270 INFO    ] Initializing speech engine...
[2026-10-28 09:36:48,276.276 INFO    ] 2026-10-28 09:36:48
[2026-10-28 09:36:48,537.537 INFO    ] 2026-10-28 09:36:48
[2026-10-28 09:36:48,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:36:48,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:36:48,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:36:49,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:36:49,095.095 INFO    ] time= 28/10/2026 09:36:49
[2026-10-28 09:36:49,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:36:49,135.135 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:36:49,262.262 INFO    ] No existing commands found in stream
[2026-10-28 09:36:54,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:36:54,295.295 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 09:36:56,287.287 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:36:56,290.290 INFO    ] Checking for system updates...
[2026-10-28 09:36:56,330.330 INFO    ] 200
[2026-10-28 09:36:56,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:36:56,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:36:56,390.390 INFO    ] No update needed
[2026-10-28 09:36:56,393.393 INFO    ] Checking for camera pi updates...
[2026-10-28 09:36:56,427.427 INFO    ] 200
[2026-10-28 09:36:56,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:36:56,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:36:56,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:36:56,555.555 INFO    ] No camera update needed
[2026-10-28 09:36:56,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:36:56,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:36:56,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:36:56,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:36:58,614.614 INFO    ] ================================================
[2026-10-28 09:36:58,629.629 INFO    ] Launching Daemon at Wed Oct 28 09:36:58 IST 2026
[2026-10-28 09:36:58,639.639 INFO    ] ================================================
[2026-10-28 09:36:59,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:36:59
[2026-10-28 09:36:59,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:37:00,065.065 INFO    ] Initializing speech engine...
[2026-10-28 09:37:00,083.083 INFO    ] 2026-10-28 09:37:00
[2026-10-28 09:37:00,335.335 INFO    ] 2026-10-28 09:37:00
[2026-10-28 09:37:00,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:37:00,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:37:00,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:37:00,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:37:00,900.900 INFO    ] time= 28/10/2026 09:37:00
[2026-10-28 09:37:00,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:37:00,924.924 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:37:01,054.054 INFO    ] No existing commands found in stream
[2026-10-28 09:37:06,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:37:06,071.071 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 09:37:08,509.509 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:37:08,511.511 INFO    ] Checking for system updates...
[2026-10-28 09:37:08,546.546 INFO    ] 200
[2026-10-28 09:37:08,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:37:08,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:37:08,606.606 INFO    ] No update needed
[2026-10-28 09:37:08,608.608 INFO    ] Checking for camera pi updates...
[2026-10-28 09:37:08,642.642 INFO    ] 200
[2026-10-28 09:37:08,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:37:08,688.688 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:37:08,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:37:08,762.762 INFO    ] No camera update needed
[2026-10-28 09:37:08,765.765 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:37:08,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:37:08,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:37:08,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:37:10,818.818 INFO    ] ================================================
[2026-10-28 09:37:10,833.833 INFO    ] Launching Daemon at Wed Oct 28 09:37:10 IST 2026
[2026-10-28 09:37:10,844.844 INFO    ] ================================================
[2026-10-28 09:37:11,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:37:11
[2026-10-28 09:37:12,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:37:12,302.302 INFO    ] Initializing speech engine...
[2026-10-28 09:37:12,309.309 INFO    ] 2026-10-28 09:37:12
[2026-10-28 09:37:12,571.571 INFO    ] 2026-10-28 09:37:12
[2026-10-28 09:37:12,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:37:12,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:37:12,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:37:13,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:37:13,116.116 INFO    ] time= 28/10/2026 09:37:13
[2026-10-28 09:37:13,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:37:13,141.141 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:37:13,267.267 INFO    ] No existing commands found in stream
[2026-10-28 09:37:18,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:37:18,284.284 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 09:37:21,642.642 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:37:21,645.645 INFO    ] Checking for system updates...
[2026-10-28 09:37:21,681.681 INFO    ] 200
[2026-10-28 09:37:21,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:37:21,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:37:21,738.738 INFO    ] No update needed
[2026-10-28 09:37:21,740.740 INFO    ] Checking for camera pi updates...
[2026-10-28 09:37:21,774.774 INFO    ] 200
[2026-10-28 09:37:21,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:37:21,816.816 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:37:21,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:37:21,904.904 INFO    ] No camera update needed
[2026-10-28 09:37:21,907.907 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:37:21,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:37:21,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:37:21,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:37:23,961.961 INFO    ] ================================================
[2026-10-28 09:37:23,976.976 INFO    ] Launching Daemon at Wed Oct 28 09:37:23 IST 2026
[2026-10-28 09:37:23,987.987 INFO    ] ================================================
[2026-10-28 09:37:24,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:37:24
[2026-10-28 09:37:25,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:37:25,564.564 INFO    ] Initializing speech engine...
[2026-10-28 09:37:25,578.578 INFO    ] 2026-10-28 09:37:25
[2026-10-28 09:37:25,858.858 INFO    ] 2026-10-28 09:37:25
[2026-10-28 09:37:25,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:37:26,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:37:26,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:37:26,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:37:26,437.437 INFO    ] time= 28/10/2026 09:37:26
[2026-10-28 09:37:26,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:37:26,534.534 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:37:26,731.731 INFO    ] No existing commands found in stream
[2026-10-28 09:37:31,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:37:31,760.760 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-28 09:37:36,139.139 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:37:36,142.142 INFO    ] Checking for system updates...
[2026-10-28 09:37:36,178.178 INFO    ] 200
[2026-10-28 09:37:36,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:37:36,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:37:36,234.234 INFO    ] No update needed
[2026-10-28 09:37:36,236.236 INFO    ] Checking for camera pi updates...
[2026-10-28 09:37:36,270.270 INFO    ] 200
[2026-10-28 09:37:36,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:37:36,314.314 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:37:36,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:37:36,471.471 INFO    ] No camera update needed
[2026-10-28 09:37:36,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:37:36,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:37:36,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:37:36,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:37:38,526.526 INFO    ] ================================================
[2026-10-28 09:37:38,541.541 INFO    ] Launching Daemon at Wed Oct 28 09:37:38 IST 2026
[2026-10-28 09:37:38,552.552 INFO    ] ================================================
[2026-10-28 09:37:39,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:37:39
[2026-10-28 09:37:39,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:37:39,984.984 INFO    ] Initializing speech engine...
[2026-10-28 09:37:39,992.992 INFO    ] 2026-10-28 09:37:39
[2026-10-28 09:37:40,281.281 INFO    ] 2026-10-28 09:37:40
[2026-10-28 09:37:40,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:37:40,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:37:40,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:37:40,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:37:40,897.897 INFO    ] time= 28/10/2026 09:37:40
[2026-10-28 09:37:40,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:37:40,918.918 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:37:41,037.037 INFO    ] No existing commands found in stream
[2026-10-28 09:37:46,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:37:46,066.066 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 09:37:49,977.977 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:37:49,980.980 INFO    ] Checking for system updates...
[2026-10-28 09:37:50,015.015 INFO    ] 200
[2026-10-28 09:37:50,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:37:50,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:37:50,072.072 INFO    ] No update needed
[2026-10-28 09:37:50,074.074 INFO    ] Checking for camera pi updates...
[2026-10-28 09:37:50,108.108 INFO    ] 200
[2026-10-28 09:37:50,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:37:50,151.151 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:37:50,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:37:50,233.233 INFO    ] No camera update needed
[2026-10-28 09:37:50,235.235 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:37:50,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:37:50,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:37:50,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:37:52,288.288 INFO    ] ================================================
[2026-10-28 09:37:52,303.303 INFO    ] Launching Daemon at Wed Oct 28 09:37:52 IST 2026
[2026-10-28 09:37:52,313.313 INFO    ] ================================================
[2026-10-28 09:37:52,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:37:52
[2026-10-28 09:37:53,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:37:53,738.738 INFO    ] Initializing speech engine...
[2026-10-28 09:37:53,754.754 INFO    ] 2026-10-28 09:37:53
[2026-10-28 09:37:54,019.019 INFO    ] 2026-10-28 09:37:54
[2026-10-28 09:37:54,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:37:54,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:37:54,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:37:54,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:37:54,569.569 INFO    ] time= 28/10/2026 09:37:54
[2026-10-28 09:37:54,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:37:54,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:37:54,772.772 INFO    ] No existing commands found in stream
[2026-10-28 09:37:59,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:37:59,787.787 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-28 09:38:00,926.926 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:38:00,928.928 INFO    ] Checking for system updates...
[2026-10-28 09:38:00,964.964 INFO    ] 200
[2026-10-28 09:38:00,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:38:01,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:38:01,021.021 INFO    ] No update needed
[2026-10-28 09:38:01,023.023 INFO    ] Checking for camera pi updates...
[2026-10-28 09:38:01,056.056 INFO    ] 200
[2026-10-28 09:38:01,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:38:01,102.102 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:38:01,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:38:01,231.231 INFO    ] No camera update needed
[2026-10-28 09:38:01,233.233 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:38:01,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:38:01,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:38:01,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:38:03,289.289 INFO    ] ================================================
[2026-10-28 09:38:03,304.304 INFO    ] Launching Daemon at Wed Oct 28 09:38:03 IST 2026
[2026-10-28 09:38:03,314.314 INFO    ] ================================================
[2026-10-28 09:38:03,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:38:03
[2026-10-28 09:38:04,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:38:04,753.753 INFO    ] Initializing speech engine...
[2026-10-28 09:38:04,762.762 INFO    ] 2026-10-28 09:38:04
[2026-10-28 09:38:05,009.009 INFO    ] 2026-10-28 09:38:05
[2026-10-28 09:38:05,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:38:05,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:38:05,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:38:05,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:38:05,569.569 INFO    ] time= 28/10/2026 09:38:05
[2026-10-28 09:38:05,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:38:05,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:38:05,726.726 INFO    ] No existing commands found in stream
[2026-10-28 09:38:10,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:38:10,740.740 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-28 09:38:13,784.784 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:38:13,787.787 INFO    ] Checking for system updates...
[2026-10-28 09:38:13,821.821 INFO    ] 200
[2026-10-28 09:38:13,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:38:13,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:38:13,878.878 INFO    ] No update needed
[2026-10-28 09:38:13,880.880 INFO    ] Checking for camera pi updates...
[2026-10-28 09:38:13,914.914 INFO    ] 200
[2026-10-28 09:38:13,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:38:13,956.956 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:38:14,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:38:14,058.058 INFO    ] No camera update needed
[2026-10-28 09:38:14,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:38:14,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:38:14,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:38:14,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:38:16,113.113 INFO    ] ================================================
[2026-10-28 09:38:16,134.134 INFO    ] Launching Daemon at Wed Oct 28 09:38:16 IST 2026
[2026-10-28 09:38:16,144.144 INFO    ] ================================================
[2026-10-28 09:38:16,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:38:16
[2026-10-28 09:38:17,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:38:17,602.602 INFO    ] Initializing speech engine...
[2026-10-28 09:38:17,611.611 INFO    ] 2026-10-28 09:38:17
[2026-10-28 09:38:17,875.875 INFO    ] 2026-10-28 09:38:17
[2026-10-28 09:38:17,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:38:18,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:38:18,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:38:18,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:38:18,418.418 INFO    ] time= 28/10/2026 09:38:18
[2026-10-28 09:38:18,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:38:18,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:38:18,566.566 INFO    ] No existing commands found in stream
[2026-10-28 09:38:23,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:38:23,585.585 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-28 09:38:26,307.307 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:38:26,310.310 INFO    ] Checking for system updates...
[2026-10-28 09:38:26,345.345 INFO    ] 200
[2026-10-28 09:38:26,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:38:26,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:38:26,402.402 INFO    ] No update needed
[2026-10-28 09:38:26,405.405 INFO    ] Checking for camera pi updates...
[2026-10-28 09:38:26,438.438 INFO    ] 200
[2026-10-28 09:38:26,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:38:26,484.484 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:38:26,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:38:26,565.565 INFO    ] No camera update needed
[2026-10-28 09:38:26,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:38:26,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:38:26,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:38:26,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:38:28,620.620 INFO    ] ================================================
[2026-10-28 09:38:28,635.635 INFO    ] Launching Daemon at Wed Oct 28 09:38:28 IST 2026
[2026-10-28 09:38:28,645.645 INFO    ] ================================================
[2026-10-28 09:38:29,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:38:29
[2026-10-28 09:38:29,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:38:30,101.101 INFO    ] Initializing speech engine...
[2026-10-28 09:38:30,111.111 INFO    ] 2026-10-28 09:38:30
[2026-10-28 09:38:30,373.373 INFO    ] 2026-10-28 09:38:30
[2026-10-28 09:38:30,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:38:30,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:38:30,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:38:30,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:38:30,930.930 INFO    ] time= 28/10/2026 09:38:30
[2026-10-28 09:38:30,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:38:30,965.965 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:38:31,096.096 INFO    ] No existing commands found in stream
[2026-10-28 09:38:36,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:38:36,129.129 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-28 09:38:40,579.579 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:38:40,581.581 INFO    ] Checking for system updates...
[2026-10-28 09:38:40,622.622 INFO    ] 200
[2026-10-28 09:38:40,625.625 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 09:38:40,628.628 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-28 09:38:40,631.631 INFO    ] Checking for camera pi updates...
[2026-10-28 09:38:40,686.686 INFO    ] 200
[2026-10-28 09:38:40,688.688 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 09:38:40,691.691 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-28 09:38:40,693.693 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:38:40,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:38:40,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:38:40,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:38:42,746.746 INFO    ] ================================================
[2026-10-28 09:38:42,761.761 INFO    ] Launching Daemon at Wed Oct 28 09:38:42 IST 2026
[2026-10-28 09:38:42,771.771 INFO    ] ================================================
[2026-10-28 09:38:43,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:38:43
[2026-10-28 09:38:43,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:38:44,182.182 INFO    ] Initializing speech engine...
[2026-10-28 09:38:44,189.189 INFO    ] 2026-10-28 09:38:44
[2026-10-28 09:38:44,484.484 INFO    ] 2026-10-28 09:38:44
[2026-10-28 09:38:44,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:38:44,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:38:44,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:38:45,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:38:45,106.106 INFO    ] time= 28/10/2026 09:38:45
[2026-10-28 09:38:45,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:38:45,132.132 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:38:45,260.260 INFO    ] No existing commands found in stream
[2026-10-28 09:38:50,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:38:50,292.292 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-28 09:38:54,795.795 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:38:54,797.797 INFO    ] Checking for system updates...
[2026-10-28 09:38:54,835.835 INFO    ] 200
[2026-10-28 09:38:54,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:38:54,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:38:54,893.893 INFO    ] No update needed
[2026-10-28 09:38:54,895.895 INFO    ] Checking for camera pi updates...
[2026-10-28 09:38:54,928.928 INFO    ] 200
[2026-10-28 09:38:54,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:38:54,973.973 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:38:55,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:38:55,064.064 INFO    ] No camera update needed
[2026-10-28 09:38:55,066.066 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:38:55,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:38:55,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:38:55,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:38:57,119.119 INFO    ] ================================================
[2026-10-28 09:38:57,134.134 INFO    ] Launching Daemon at Wed Oct 28 09:38:57 IST 2026
[2026-10-28 09:38:57,145.145 INFO    ] ================================================
[2026-10-28 09:38:57,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:38:57
[2026-10-28 09:38:58,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:38:58,613.613 INFO    ] Initializing speech engine...
[2026-10-28 09:38:58,620.620 INFO    ] 2026-10-28 09:38:58
[2026-10-28 09:38:58,882.882 INFO    ] 2026-10-28 09:38:58
[2026-10-28 09:38:58,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:38:59,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:38:59,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:38:59,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:38:59,469.469 INFO    ] time= 28/10/2026 09:38:59
[2026-10-28 09:38:59,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:38:59,485.485 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:38:59,616.616 INFO    ] No existing commands found in stream
[2026-10-28 09:39:04,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:39:04,644.644 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 09:39:07,101.101 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:39:07,103.103 INFO    ] Checking for system updates...
[2026-10-28 09:39:07,142.142 INFO    ] 200
[2026-10-28 09:39:07,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:39:07,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:39:07,201.201 INFO    ] No update needed
[2026-10-28 09:39:07,203.203 INFO    ] Checking for camera pi updates...
[2026-10-28 09:39:07,236.236 INFO    ] 200
[2026-10-28 09:39:07,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:39:07,278.278 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:39:07,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:39:07,380.380 INFO    ] No camera update needed
[2026-10-28 09:39:07,382.382 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:39:07,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:39:07,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:39:07,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:39:09,437.437 INFO    ] ================================================
[2026-10-28 09:39:09,451.451 INFO    ] Launching Daemon at Wed Oct 28 09:39:09 IST 2026
[2026-10-28 09:39:09,462.462 INFO    ] ================================================
[2026-10-28 09:39:10,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:39:10
[2026-10-28 09:39:10,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:39:10,912.912 INFO    ] Initializing speech engine...
[2026-10-28 09:39:10,919.919 INFO    ] 2026-10-28 09:39:10
[2026-10-28 09:39:11,213.213 INFO    ] 2026-10-28 09:39:11
[2026-10-28 09:39:11,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:39:11,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:39:11,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:39:11,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:39:11,813.813 INFO    ] time= 28/10/2026 09:39:11
[2026-10-28 09:39:11,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:39:11,850.850 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:39:11,984.984 INFO    ] No existing commands found in stream
[2026-10-28 09:39:17,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:39:17,012.012 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-28 09:39:20,838.838 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:39:20,840.840 INFO    ] Checking for system updates...
[2026-10-28 09:39:20,876.876 INFO    ] 200
[2026-10-28 09:39:20,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:39:20,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:39:20,933.933 INFO    ] No update needed
[2026-10-28 09:39:20,935.935 INFO    ] Checking for camera pi updates...
[2026-10-28 09:39:20,969.969 INFO    ] 200
[2026-10-28 09:39:20,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:39:21,011.011 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:39:21,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:39:21,092.092 INFO    ] No camera update needed
[2026-10-28 09:39:21,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:39:21,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:39:21,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:39:21,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:39:23,148.148 INFO    ] ================================================
[2026-10-28 09:39:23,163.163 INFO    ] Launching Daemon at Wed Oct 28 09:39:23 IST 2026
[2026-10-28 09:39:23,174.174 INFO    ] ================================================
[2026-10-28 09:39:23,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:39:23
[2026-10-28 09:39:24,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:39:24,587.587 INFO    ] Initializing speech engine...
[2026-10-28 09:39:24,597.597 INFO    ] 2026-10-28 09:39:24
[2026-10-28 09:39:24,892.892 INFO    ] 2026-10-28 09:39:24
[2026-10-28 09:39:24,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:39:25,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:39:25,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:39:25,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:39:25,440.440 INFO    ] time= 28/10/2026 09:39:25
[2026-10-28 09:39:25,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:39:25,528.528 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:39:25,695.695 INFO    ] No existing commands found in stream
[2026-10-28 09:39:30,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:39:30,709.709 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 09:39:34,886.886 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:39:34,889.889 INFO    ] Checking for system updates...
[2026-10-28 09:39:34,925.925 INFO    ] 200
[2026-10-28 09:39:34,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:39:34,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:39:34,982.982 INFO    ] No update needed
[2026-10-28 09:39:34,985.985 INFO    ] Checking for camera pi updates...
[2026-10-28 09:39:35,018.018 INFO    ] 200
[2026-10-28 09:39:35,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:39:35,061.061 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:39:35,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:39:35,145.145 INFO    ] No camera update needed
[2026-10-28 09:39:35,147.147 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:39:35,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:39:35,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:39:35,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:39:37,199.199 INFO    ] ================================================
[2026-10-28 09:39:37,214.214 INFO    ] Launching Daemon at Wed Oct 28 09:39:37 IST 2026
[2026-10-28 09:39:37,225.225 INFO    ] ================================================
[2026-10-28 09:39:37,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:39:37
[2026-10-28 09:39:38,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:39:38,678.678 INFO    ] Initializing speech engine...
[2026-10-28 09:39:38,687.687 INFO    ] 2026-10-28 09:39:38
[2026-10-28 09:39:38,949.949 INFO    ] 2026-10-28 09:39:38
[2026-10-28 09:39:39,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:39:39,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:39:39,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:39:39,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:39:39,504.504 INFO    ] time= 28/10/2026 09:39:39
[2026-10-28 09:39:39,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:39:39,539.539 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:39:39,664.664 INFO    ] No existing commands found in stream
[2026-10-28 09:39:44,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:39:44,697.697 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-28 09:39:45,421.421 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:39:45,423.423 INFO    ] Checking for system updates...
[2026-10-28 09:39:45,459.459 INFO    ] 200
[2026-10-28 09:39:45,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:39:45,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:39:45,516.516 INFO    ] No update needed
[2026-10-28 09:39:45,518.518 INFO    ] Checking for camera pi updates...
[2026-10-28 09:39:45,551.551 INFO    ] 200
[2026-10-28 09:39:45,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:39:45,594.594 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:39:45,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:39:45,781.781 INFO    ] No camera update needed
[2026-10-28 09:39:45,784.784 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:39:45,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:39:45,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:39:45,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:39:47,837.837 INFO    ] ================================================
[2026-10-28 09:39:47,853.853 INFO    ] Launching Daemon at Wed Oct 28 09:39:47 IST 2026
[2026-10-28 09:39:47,864.864 INFO    ] ================================================
[2026-10-28 09:39:48,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:39:48
[2026-10-28 09:39:49,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:39:49,308.308 INFO    ] Initializing speech engine...
[2026-10-28 09:39:49,323.323 INFO    ] 2026-10-28 09:39:49
[2026-10-28 09:39:49,607.607 INFO    ] 2026-10-28 09:39:49
[2026-10-28 09:39:49,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:39:49,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:39:49,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:39:50,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:39:50,217.217 INFO    ] time= 28/10/2026 09:39:50
[2026-10-28 09:39:50,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:39:50,245.245 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:39:50,372.372 INFO    ] No existing commands found in stream
[2026-10-28 09:39:55,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:39:55,402.402 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-28 09:39:57,581.581 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:39:57,584.584 INFO    ] Checking for system updates...
[2026-10-28 09:39:57,619.619 INFO    ] 200
[2026-10-28 09:39:57,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:39:57,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:39:57,678.678 INFO    ] No update needed
[2026-10-28 09:39:57,681.681 INFO    ] Checking for camera pi updates...
[2026-10-28 09:39:57,715.715 INFO    ] 200
[2026-10-28 09:39:57,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:39:57,757.757 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:39:57,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:39:57,844.844 INFO    ] No camera update needed
[2026-10-28 09:39:57,846.846 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:39:57,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:39:57,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:39:57,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:39:59,899.899 INFO    ] ================================================
[2026-10-28 09:39:59,915.915 INFO    ] Launching Daemon at Wed Oct 28 09:39:59 IST 2026
[2026-10-28 09:39:59,926.926 INFO    ] ================================================
[2026-10-28 09:40:00,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:40:00
[2026-10-28 09:40:01,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:40:01,530.530 INFO    ] Initializing speech engine...
[2026-10-28 09:40:01,538.538 INFO    ] 2026-10-28 09:40:01
[2026-10-28 09:40:02,096.096 INFO    ] 2026-10-28 09:40:02
[2026-10-28 09:40:02,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:40:02,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:40:02,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:40:02,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:40:02,782.782 INFO    ] time= 28/10/2026 09:40:02
[2026-10-28 09:40:02,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:40:02,792.792 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:40:02,981.981 INFO    ] No existing commands found in stream
[2026-10-28 09:40:08,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:40:08,016.016 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-28 09:40:10,072.072 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:40:10,076.076 INFO    ] Checking for system updates...
[2026-10-28 09:40:10,112.112 INFO    ] 200
[2026-10-28 09:40:10,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:40:10,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:40:10,177.177 INFO    ] No update needed
[2026-10-28 09:40:10,179.179 INFO    ] Checking for camera pi updates...
[2026-10-28 09:40:10,213.213 INFO    ] 200
[2026-10-28 09:40:10,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:40:10,257.257 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:40:10,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:40:10,337.337 INFO    ] No camera update needed
[2026-10-28 09:40:10,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:40:10,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:40:10,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:40:10,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:40:12,394.394 INFO    ] ================================================
[2026-10-28 09:40:12,409.409 INFO    ] Launching Daemon at Wed Oct 28 09:40:12 IST 2026
[2026-10-28 09:40:12,420.420 INFO    ] ================================================
[2026-10-28 09:40:13,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:40:13
[2026-10-28 09:40:13,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:40:14,038.038 INFO    ] Initializing speech engine...
[2026-10-28 09:40:14,046.046 INFO    ] 2026-10-28 09:40:14
[2026-10-28 09:40:14,365.365 INFO    ] 2026-10-28 09:40:14
[2026-10-28 09:40:14,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:40:14,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:40:14,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:40:15,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:40:15,047.047 INFO    ] time= 28/10/2026 09:40:15
[2026-10-28 09:40:15,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:40:15,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:40:15,303.303 INFO    ] No existing commands found in stream
[2026-10-28 09:40:20,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:40:20,344.344 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 09:40:21,864.864 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:40:21,866.866 INFO    ] Checking for system updates...
[2026-10-28 09:40:21,903.903 INFO    ] 200
[2026-10-28 09:40:21,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:40:21,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:40:21,960.960 INFO    ] No update needed
[2026-10-28 09:40:21,962.962 INFO    ] Checking for camera pi updates...
[2026-10-28 09:40:21,995.995 INFO    ] 200
[2026-10-28 09:40:21,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:40:22,039.039 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:40:22,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:40:22,138.138 INFO    ] No camera update needed
[2026-10-28 09:40:22,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:40:22,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:40:22,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:40:22,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:40:24,193.193 INFO    ] ================================================
[2026-10-28 09:40:24,208.208 INFO    ] Launching Daemon at Wed Oct 28 09:40:24 IST 2026
[2026-10-28 09:40:24,219.219 INFO    ] ================================================
[2026-10-28 09:40:24,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:40:24
[2026-10-28 09:40:25,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:40:25,850.850 INFO    ] Initializing speech engine...
[2026-10-28 09:40:25,864.864 INFO    ] 2026-10-28 09:40:25
[2026-10-28 09:40:26,151.151 INFO    ] 2026-10-28 09:40:26
[2026-10-28 09:40:26,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:40:26,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:40:26,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:40:26,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:40:26,712.712 INFO    ] time= 28/10/2026 09:40:26
[2026-10-28 09:40:26,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:40:26,751.751 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:40:26,883.883 INFO    ] No existing commands found in stream
[2026-10-28 09:40:31,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:40:31,911.911 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-28 09:40:33,746.746 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:40:33,749.749 INFO    ] Checking for system updates...
[2026-10-28 09:40:33,785.785 INFO    ] 200
[2026-10-28 09:40:33,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:40:33,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:40:33,843.843 INFO    ] No update needed
[2026-10-28 09:40:33,846.846 INFO    ] Checking for camera pi updates...
[2026-10-28 09:40:33,878.878 INFO    ] 200
[2026-10-28 09:40:33,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:40:33,921.921 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:40:34,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:40:34,024.024 INFO    ] No camera update needed
[2026-10-28 09:40:34,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:40:34,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:40:34,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:40:34,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:40:36,086.086 INFO    ] ================================================
[2026-10-28 09:40:36,101.101 INFO    ] Launching Daemon at Wed Oct 28 09:40:36 IST 2026
[2026-10-28 09:40:36,111.111 INFO    ] ================================================
[2026-10-28 09:40:36,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:40:36
[2026-10-28 09:40:37,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:40:37,528.528 INFO    ] Initializing speech engine...
[2026-10-28 09:40:37,540.540 INFO    ] 2026-10-28 09:40:37
[2026-10-28 09:40:37,808.808 INFO    ] 2026-10-28 09:40:37
[2026-10-28 09:40:37,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:40:38,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:40:38,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:40:38,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:40:38,377.377 INFO    ] time= 28/10/2026 09:40:38
[2026-10-28 09:40:38,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:40:38,401.401 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:40:38,522.522 INFO    ] No existing commands found in stream
[2026-10-28 09:40:43,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:40:43,547.547 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-28 09:40:46,475.475 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:40:46,478.478 INFO    ] Checking for system updates...
[2026-10-28 09:40:46,514.514 INFO    ] 200
[2026-10-28 09:40:46,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:40:46,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:40:46,572.572 INFO    ] No update needed
[2026-10-28 09:40:46,575.575 INFO    ] Checking for camera pi updates...
[2026-10-28 09:40:46,613.613 INFO    ] 200
[2026-10-28 09:40:46,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:40:46,658.658 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:40:46,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:40:46,742.742 INFO    ] No camera update needed
[2026-10-28 09:40:46,745.745 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:40:46,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:40:46,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:40:46,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:40:48,803.803 INFO    ] ================================================
[2026-10-28 09:40:48,818.818 INFO    ] Launching Daemon at Wed Oct 28 09:40:48 IST 2026
[2026-10-28 09:40:48,829.829 INFO    ] ================================================
[2026-10-28 09:40:49,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:40:49
[2026-10-28 09:40:49,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:40:50,274.274 INFO    ] Initializing speech engine...
[2026-10-28 09:40:50,290.290 INFO    ] 2026-10-28 09:40:50
[2026-10-28 09:40:50,564.564 INFO    ] 2026-10-28 09:40:50
[2026-10-28 09:40:50,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:40:50,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:40:50,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:40:51,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:40:51,201.201 INFO    ] time= 28/10/2026 09:40:51
[2026-10-28 09:40:51,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:40:51,227.227 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:40:51,353.353 INFO    ] No existing commands found in stream
[2026-10-28 09:40:56,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:40:56,376.376 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-28 09:41:00,545.545 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:41:00,548.548 INFO    ] Checking for system updates...
[2026-10-28 09:41:00,583.583 INFO    ] 200
[2026-10-28 09:41:00,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:41:00,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:41:00,641.641 INFO    ] No update needed
[2026-10-28 09:41:00,643.643 INFO    ] Checking for camera pi updates...
[2026-10-28 09:41:00,676.676 INFO    ] 200
[2026-10-28 09:41:00,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:41:00,718.718 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:41:00,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:41:00,804.804 INFO    ] No camera update needed
[2026-10-28 09:41:00,807.807 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:41:00,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:41:00,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:41:00,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:41:02,862.862 INFO    ] ================================================
[2026-10-28 09:41:02,878.878 INFO    ] Launching Daemon at Wed Oct 28 09:41:02 IST 2026
[2026-10-28 09:41:02,889.889 INFO    ] ================================================
[2026-10-28 09:41:03,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:41:03
[2026-10-28 09:41:04,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:41:04,540.540 INFO    ] Initializing speech engine...
[2026-10-28 09:41:04,547.547 INFO    ] 2026-10-28 09:41:04
[2026-10-28 09:41:04,826.826 INFO    ] 2026-10-28 09:41:04
[2026-10-28 09:41:04,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:41:05,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:41:05,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:41:05,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:41:05,402.402 INFO    ] time= 28/10/2026 09:41:05
[2026-10-28 09:41:05,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:41:05,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:41:05,560.560 INFO    ] No existing commands found in stream
[2026-10-28 09:41:10,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:41:10,588.588 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-28 09:41:12,201.201 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:41:12,204.204 INFO    ] Checking for system updates...
[2026-10-28 09:41:12,241.241 INFO    ] 200
[2026-10-28 09:41:12,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:41:12,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:41:12,299.299 INFO    ] No update needed
[2026-10-28 09:41:12,302.302 INFO    ] Checking for camera pi updates...
[2026-10-28 09:41:12,337.337 INFO    ] 200
[2026-10-28 09:41:12,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:41:12,380.380 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:41:12,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:41:12,466.466 INFO    ] No camera update needed
[2026-10-28 09:41:12,469.469 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:41:12,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:41:12,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:41:12,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:41:14,520.520 INFO    ] ================================================
[2026-10-28 09:41:14,535.535 INFO    ] Launching Daemon at Wed Oct 28 09:41:14 IST 2026
[2026-10-28 09:41:14,546.546 INFO    ] ================================================
[2026-10-28 09:41:15,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:41:15
[2026-10-28 09:41:15,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:41:16,007.007 INFO    ] Initializing speech engine...
[2026-10-28 09:41:16,014.014 INFO    ] 2026-10-28 09:41:16
[2026-10-28 09:41:16,277.277 INFO    ] 2026-10-28 09:41:16
[2026-10-28 09:41:16,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:41:16,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:41:16,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:41:16,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:41:16,865.865 INFO    ] time= 28/10/2026 09:41:16
[2026-10-28 09:41:16,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:41:16,927.927 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:41:17,076.076 INFO    ] No existing commands found in stream
[2026-10-28 09:41:22,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:41:22,105.105 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-28 09:41:26,432.432 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:41:26,435.435 INFO    ] Checking for system updates...
[2026-10-28 09:41:26,471.471 INFO    ] 200
[2026-10-28 09:41:26,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:41:26,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:41:26,530.530 INFO    ] No update needed
[2026-10-28 09:41:26,532.532 INFO    ] Checking for camera pi updates...
[2026-10-28 09:41:26,571.571 INFO    ] 200
[2026-10-28 09:41:26,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:41:26,617.617 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:41:26,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:41:26,710.710 INFO    ] No camera update needed
[2026-10-28 09:41:26,712.712 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:41:26,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:41:26,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:41:26,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:41:28,764.764 INFO    ] ================================================
[2026-10-28 09:41:28,779.779 INFO    ] Launching Daemon at Wed Oct 28 09:41:28 IST 2026
[2026-10-28 09:41:28,789.789 INFO    ] ================================================
[2026-10-28 09:41:29,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:41:29
[2026-10-28 09:41:30,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:41:30,409.409 INFO    ] Initializing speech engine...
[2026-10-28 09:41:30,422.422 INFO    ] 2026-10-28 09:41:30
[2026-10-28 09:41:30,679.679 INFO    ] 2026-10-28 09:41:30
[2026-10-28 09:41:30,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:41:30,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:41:30,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:41:31,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:41:31,221.221 INFO    ] time= 28/10/2026 09:41:31
[2026-10-28 09:41:31,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:41:31,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:41:31,379.379 INFO    ] No existing commands found in stream
[2026-10-28 09:41:36,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:41:36,397.397 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-28 09:41:37,287.287 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:41:37,289.289 INFO    ] Checking for system updates...
[2026-10-28 09:41:37,326.326 INFO    ] 200
[2026-10-28 09:41:37,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:41:37,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:41:37,387.387 INFO    ] No update needed
[2026-10-28 09:41:37,390.390 INFO    ] Checking for camera pi updates...
[2026-10-28 09:41:37,427.427 INFO    ] 200
[2026-10-28 09:41:37,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:41:37,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:41:37,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:41:37,556.556 INFO    ] No camera update needed
[2026-10-28 09:41:37,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:41:37,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:41:37,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:41:37,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:41:39,611.611 INFO    ] ================================================
[2026-10-28 09:41:39,627.627 INFO    ] Launching Daemon at Wed Oct 28 09:41:39 IST 2026
[2026-10-28 09:41:39,637.637 INFO    ] ================================================
[2026-10-28 09:41:40,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:41:40
[2026-10-28 09:41:40,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:41:41,047.047 INFO    ] Initializing speech engine...
[2026-10-28 09:41:41,053.053 INFO    ] 2026-10-28 09:41:41
[2026-10-28 09:41:41,345.345 INFO    ] 2026-10-28 09:41:41
[2026-10-28 09:41:41,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:41:41,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:41:41,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:41:41,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:41:41,770.770 INFO    ] time= 28/10/2026 09:41:41
[2026-10-28 09:41:41,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:41:41,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:41:41,968.968 INFO    ] No existing commands found in stream
[2026-10-28 09:41:46,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:41:46,991.991 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-28 09:41:48,589.589 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:41:48,591.591 INFO    ] Checking for system updates...
[2026-10-28 09:41:48,628.628 INFO    ] 200
[2026-10-28 09:41:48,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:41:48,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:41:48,687.687 INFO    ] No update needed
[2026-10-28 09:41:48,689.689 INFO    ] Checking for camera pi updates...
[2026-10-28 09:41:48,727.727 INFO    ] 200
[2026-10-28 09:41:48,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:41:48,770.770 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:41:48,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:41:48,952.952 INFO    ] No camera update needed
[2026-10-28 09:41:48,955.955 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:41:48,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:41:48,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:41:48,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:41:51,008.008 INFO    ] ================================================
[2026-10-28 09:41:51,024.024 INFO    ] Launching Daemon at Wed Oct 28 09:41:51 IST 2026
[2026-10-28 09:41:51,035.035 INFO    ] ================================================
[2026-10-28 09:41:51,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:41:51
[2026-10-28 09:41:52,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:41:52,452.452 INFO    ] Initializing speech engine...
[2026-10-28 09:41:52,461.461 INFO    ] 2026-10-28 09:41:52
[2026-10-28 09:41:52,707.707 INFO    ] 2026-10-28 09:41:52
[2026-10-28 09:41:52,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:41:53,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:41:53,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:41:53,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:41:53,261.261 INFO    ] time= 28/10/2026 09:41:53
[2026-10-28 09:41:53,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:41:53,300.300 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:41:53,433.433 INFO    ] No existing commands found in stream
[2026-10-28 09:41:58,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:41:58,462.462 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 09:42:00,241.241 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:42:00,243.243 INFO    ] Checking for system updates...
[2026-10-28 09:42:00,282.282 INFO    ] 200
[2026-10-28 09:42:00,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:42:00,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:42:00,342.342 INFO    ] No update needed
[2026-10-28 09:42:00,345.345 INFO    ] Checking for camera pi updates...
[2026-10-28 09:42:00,380.380 INFO    ] 200
[2026-10-28 09:42:00,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:42:00,431.431 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:42:00,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:42:00,527.527 INFO    ] No camera update needed
[2026-10-28 09:42:00,530.530 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:42:00,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:42:00,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:42:00,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:42:02,602.602 INFO    ] ================================================
[2026-10-28 09:42:02,623.623 INFO    ] Launching Daemon at Wed Oct 28 09:42:02 IST 2026
[2026-10-28 09:42:02,638.638 INFO    ] ================================================
[2026-10-28 09:42:03,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:42:03
[2026-10-28 09:42:03,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:42:04,280.280 INFO    ] Initializing speech engine...
[2026-10-28 09:42:04,291.291 INFO    ] 2026-10-28 09:42:04
[2026-10-28 09:42:04,600.600 INFO    ] 2026-10-28 09:42:04
[2026-10-28 09:42:04,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:42:04,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:42:04,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:42:05,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:42:05,214.214 INFO    ] time= 28/10/2026 09:42:05
[2026-10-28 09:42:05,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:42:05,322.322 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:42:05,545.545 INFO    ] No existing commands found in stream
[2026-10-28 09:42:10,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:42:10,559.559 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-28 09:42:13,644.644 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:42:13,647.647 INFO    ] Checking for system updates...
[2026-10-28 09:42:13,682.682 INFO    ] 200
[2026-10-28 09:42:13,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:42:13,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:42:13,747.747 INFO    ] No update needed
[2026-10-28 09:42:13,750.750 INFO    ] Checking for camera pi updates...
[2026-10-28 09:42:13,783.783 INFO    ] 200
[2026-10-28 09:42:13,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:42:13,825.825 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:42:13,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:42:13,910.910 INFO    ] No camera update needed
[2026-10-28 09:42:13,913.913 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:42:13,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:42:13,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:42:13,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:42:15,967.967 INFO    ] ================================================
[2026-10-28 09:42:15,982.982 INFO    ] Launching Daemon at Wed Oct 28 09:42:15 IST 2026
[2026-10-28 09:42:15,992.992 INFO    ] ================================================
[2026-10-28 09:42:16,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:42:16
[2026-10-28 09:42:17,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:42:17,462.462 INFO    ] Initializing speech engine...
[2026-10-28 09:42:17,468.468 INFO    ] 2026-10-28 09:42:17
[2026-10-28 09:42:17,730.730 INFO    ] 2026-10-28 09:42:17
[2026-10-28 09:42:17,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:42:18,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:42:18,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:42:18,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:42:18,270.270 INFO    ] time= 28/10/2026 09:42:18
[2026-10-28 09:42:18,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:42:18,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:42:18,428.428 INFO    ] No existing commands found in stream
[2026-10-28 09:42:23,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:42:23,456.456 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 09:42:24,948.948 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:42:24,951.951 INFO    ] Checking for system updates...
[2026-10-28 09:42:24,987.987 INFO    ] 200
[2026-10-28 09:42:24,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:42:25,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:42:25,043.043 INFO    ] No update needed
[2026-10-28 09:42:25,045.045 INFO    ] Checking for camera pi updates...
[2026-10-28 09:42:25,078.078 INFO    ] 200
[2026-10-28 09:42:25,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:42:25,130.130 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:42:25,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:42:25,213.213 INFO    ] No camera update needed
[2026-10-28 09:42:25,216.216 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:42:25,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:42:25,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:42:25,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:42:27,270.270 INFO    ] ================================================
[2026-10-28 09:42:27,286.286 INFO    ] Launching Daemon at Wed Oct 28 09:42:27 IST 2026
[2026-10-28 09:42:27,296.296 INFO    ] ================================================
[2026-10-28 09:42:27,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:42:27
[2026-10-28 09:42:28,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:42:28,743.743 INFO    ] Initializing speech engine...
[2026-10-28 09:42:28,749.749 INFO    ] 2026-10-28 09:42:28
[2026-10-28 09:42:29,010.010 INFO    ] 2026-10-28 09:42:29
[2026-10-28 09:42:29,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:42:29,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:42:29,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:42:29,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:42:29,555.555 INFO    ] time= 28/10/2026 09:42:29
[2026-10-28 09:42:29,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:42:29,595.595 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:42:29,737.737 INFO    ] No existing commands found in stream
[2026-10-28 09:42:34,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:42:34,770.770 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-28 09:42:37,677.677 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:42:37,680.680 INFO    ] Checking for system updates...
[2026-10-28 09:42:37,715.715 INFO    ] 200
[2026-10-28 09:42:37,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:42:37,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:42:37,774.774 INFO    ] No update needed
[2026-10-28 09:42:37,776.776 INFO    ] Checking for camera pi updates...
[2026-10-28 09:42:37,814.814 INFO    ] 200
[2026-10-28 09:42:37,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:42:37,857.857 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:42:37,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:42:37,941.941 INFO    ] No camera update needed
[2026-10-28 09:42:37,943.943 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:42:37,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:42:37,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:42:37,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:42:40,997.997 INFO    ] ================================================
[2026-10-28 09:42:40,012.012 INFO    ] Launching Daemon at Wed Oct 28 09:42:40 IST 2026
[2026-10-28 09:42:40,022.022 INFO    ] ================================================
[2026-10-28 09:42:40,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:42:40
[2026-10-28 09:42:41,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:42:41,486.486 INFO    ] Initializing speech engine...
[2026-10-28 09:42:41,495.495 INFO    ] 2026-10-28 09:42:41
[2026-10-28 09:42:41,752.752 INFO    ] 2026-10-28 09:42:41
[2026-10-28 09:42:41,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:42:42,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:42:42,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:42:42,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:42:42,324.324 INFO    ] time= 28/10/2026 09:42:42
[2026-10-28 09:42:42,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:42:42,359.359 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:42:42,466.466 INFO    ] No existing commands found in stream
[2026-10-28 09:42:47,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:42:47,485.485 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-28 09:42:51,866.866 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:42:51,869.869 INFO    ] Checking for system updates...
[2026-10-28 09:42:51,905.905 INFO    ] 200
[2026-10-28 09:42:51,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:42:51,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:42:51,963.963 INFO    ] No update needed
[2026-10-28 09:42:51,965.965 INFO    ] Checking for camera pi updates...
[2026-10-28 09:42:52,003.003 INFO    ] 200
[2026-10-28 09:42:52,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:42:52,045.045 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:42:52,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:42:52,150.150 INFO    ] No camera update needed
[2026-10-28 09:42:52,152.152 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:42:52,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:42:52,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:42:52,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:42:54,207.207 INFO    ] ================================================
[2026-10-28 09:42:54,222.222 INFO    ] Launching Daemon at Wed Oct 28 09:42:54 IST 2026
[2026-10-28 09:42:54,233.233 INFO    ] ================================================
[2026-10-28 09:42:54,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:42:54
[2026-10-28 09:42:55,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:42:55,662.662 INFO    ] Initializing speech engine...
[2026-10-28 09:42:55,671.671 INFO    ] 2026-10-28 09:42:55
[2026-10-28 09:42:55,970.970 INFO    ] 2026-10-28 09:42:55
[2026-10-28 09:42:56,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:42:56,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:42:56,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:42:56,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:42:56,586.586 INFO    ] time= 28/10/2026 09:42:56
[2026-10-28 09:42:56,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:42:56,626.626 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:42:56,770.770 INFO    ] No existing commands found in stream
[2026-10-28 09:43:01,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:43:01,801.801 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-28 09:43:03,907.907 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:43:03,909.909 INFO    ] Checking for system updates...
[2026-10-28 09:43:03,945.945 INFO    ] 200
[2026-10-28 09:43:03,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:43:04,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:43:04,003.003 INFO    ] No update needed
[2026-10-28 09:43:04,005.005 INFO    ] Checking for camera pi updates...
[2026-10-28 09:43:04,043.043 INFO    ] 200
[2026-10-28 09:43:04,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:43:04,086.086 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:43:04,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:43:04,170.170 INFO    ] No camera update needed
[2026-10-28 09:43:04,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:43:04,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:43:04,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:43:04,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:43:06,225.225 INFO    ] ================================================
[2026-10-28 09:43:06,240.240 INFO    ] Launching Daemon at Wed Oct 28 09:43:06 IST 2026
[2026-10-28 09:43:06,250.250 INFO    ] ================================================
[2026-10-28 09:43:06,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:43:06
[2026-10-28 09:43:07,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:43:07,682.682 INFO    ] Initializing speech engine...
[2026-10-28 09:43:07,691.691 INFO    ] 2026-10-28 09:43:07
[2026-10-28 09:43:07,949.949 INFO    ] 2026-10-28 09:43:07
[2026-10-28 09:43:08,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:43:08,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:43:08,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:43:08,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:43:08,492.492 INFO    ] time= 28/10/2026 09:43:08
[2026-10-28 09:43:08,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:43:08,516.516 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:43:08,648.648 INFO    ] No existing commands found in stream
[2026-10-28 09:43:13,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:43:13,670.670 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-28 09:43:15,317.317 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:43:15,320.320 INFO    ] Checking for system updates...
[2026-10-28 09:43:15,355.355 INFO    ] 200
[2026-10-28 09:43:15,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:43:15,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:43:15,420.420 INFO    ] No update needed
[2026-10-28 09:43:15,422.422 INFO    ] Checking for camera pi updates...
[2026-10-28 09:43:15,456.456 INFO    ] 200
[2026-10-28 09:43:15,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:43:15,502.502 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:43:15,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:43:15,584.584 INFO    ] No camera update needed
[2026-10-28 09:43:15,586.586 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:43:15,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:43:15,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:43:15,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:43:17,646.646 INFO    ] ================================================
[2026-10-28 09:43:17,661.661 INFO    ] Launching Daemon at Wed Oct 28 09:43:17 IST 2026
[2026-10-28 09:43:17,671.671 INFO    ] ================================================
[2026-10-28 09:43:18,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:43:18
[2026-10-28 09:43:19,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:43:19,323.323 INFO    ] Initializing speech engine...
[2026-10-28 09:43:19,329.329 INFO    ] 2026-10-28 09:43:19
[2026-10-28 09:43:19,612.612 INFO    ] 2026-10-28 09:43:19
[2026-10-28 09:43:19,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:43:20,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:43:20,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:43:20,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:43:20,284.284 INFO    ] time= 28/10/2026 09:43:20
[2026-10-28 09:43:20,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:43:20,370.370 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:43:20,539.539 INFO    ] No existing commands found in stream
[2026-10-28 09:43:25,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:43:25,558.558 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 09:43:26,170.170 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:43:26,173.173 INFO    ] Checking for system updates...
[2026-10-28 09:43:26,209.209 INFO    ] 200
[2026-10-28 09:43:26,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:43:26,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:43:26,273.273 INFO    ] No update needed
[2026-10-28 09:43:26,275.275 INFO    ] Checking for camera pi updates...
[2026-10-28 09:43:26,308.308 INFO    ] 200
[2026-10-28 09:43:26,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:43:26,351.351 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:43:26,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:43:26,437.437 INFO    ] No camera update needed
[2026-10-28 09:43:26,439.439 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:43:26,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:43:26,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:43:26,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:43:28,497.497 INFO    ] ================================================
[2026-10-28 09:43:28,512.512 INFO    ] Launching Daemon at Wed Oct 28 09:43:28 IST 2026
[2026-10-28 09:43:28,522.522 INFO    ] ================================================
[2026-10-28 09:43:29,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:43:29
[2026-10-28 09:43:29,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:43:29,926.926 INFO    ] Initializing speech engine...
[2026-10-28 09:43:29,932.932 INFO    ] 2026-10-28 09:43:29
[2026-10-28 09:43:30,228.228 INFO    ] 2026-10-28 09:43:30
[2026-10-28 09:43:30,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:43:30,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:43:30,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:43:30,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:43:30,830.830 INFO    ] time= 28/10/2026 09:43:30
[2026-10-28 09:43:30,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:43:30,875.875 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:43:30,988.988 INFO    ] No existing commands found in stream
[2026-10-28 09:43:36,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:43:36,014.014 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 09:43:38,650.650 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:43:38,653.653 INFO    ] Checking for system updates...
[2026-10-28 09:43:38,689.689 INFO    ] 200
[2026-10-28 09:43:38,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:43:38,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:43:38,746.746 INFO    ] No update needed
[2026-10-28 09:43:38,749.749 INFO    ] Checking for camera pi updates...
[2026-10-28 09:43:38,782.782 INFO    ] 200
[2026-10-28 09:43:38,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:43:38,830.830 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:43:38,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:43:38,913.913 INFO    ] No camera update needed
[2026-10-28 09:43:38,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:43:38,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:43:38,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:43:38,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:43:40,970.970 INFO    ] ================================================
[2026-10-28 09:43:40,985.985 INFO    ] Launching Daemon at Wed Oct 28 09:43:40 IST 2026
[2026-10-28 09:43:41,996.996 INFO    ] ================================================
[2026-10-28 09:43:41,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:43:41
[2026-10-28 09:43:42,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:43:42,457.457 INFO    ] Initializing speech engine...
[2026-10-28 09:43:42,465.465 INFO    ] 2026-10-28 09:43:42
[2026-10-28 09:43:42,724.724 INFO    ] 2026-10-28 09:43:42
[2026-10-28 09:43:42,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:43:43,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:43:43,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:43:43,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:43:43,313.313 INFO    ] time= 28/10/2026 09:43:43
[2026-10-28 09:43:43,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:43:43,329.329 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:43:43,445.445 INFO    ] No existing commands found in stream
[2026-10-28 09:43:48,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:43:48,472.472 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-28 09:43:50,786.786 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:43:50,789.789 INFO    ] Checking for system updates...
[2026-10-28 09:43:50,824.824 INFO    ] 200
[2026-10-28 09:43:50,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:43:50,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:43:50,888.888 INFO    ] No update needed
[2026-10-28 09:43:50,891.891 INFO    ] Checking for camera pi updates...
[2026-10-28 09:43:50,930.930 INFO    ] 200
[2026-10-28 09:43:50,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:43:50,980.980 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:43:51,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:43:51,167.167 INFO    ] No camera update needed
[2026-10-28 09:43:51,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:43:51,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:43:51,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:43:51,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:43:53,222.222 INFO    ] ================================================
[2026-10-28 09:43:53,238.238 INFO    ] Launching Daemon at Wed Oct 28 09:43:53 IST 2026
[2026-10-28 09:43:53,248.248 INFO    ] ================================================
[2026-10-28 09:43:53,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:43:53
[2026-10-28 09:43:54,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:43:54,668.668 INFO    ] Initializing speech engine...
[2026-10-28 09:43:54,679.679 INFO    ] 2026-10-28 09:43:54
[2026-10-28 09:43:54,943.943 INFO    ] 2026-10-28 09:43:54
[2026-10-28 09:43:54,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:43:55,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:43:55,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:43:55,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:43:55,534.534 INFO    ] time= 28/10/2026 09:43:55
[2026-10-28 09:43:55,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:43:55,558.558 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:43:55,709.709 INFO    ] No existing commands found in stream
[2026-10-28 09:44:00,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:44:00,739.739 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 09:44:04,999.999 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:44:05,002.002 INFO    ] Checking for system updates...
[2026-10-28 09:44:05,040.040 INFO    ] 200
[2026-10-28 09:44:05,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:44:05,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:44:05,099.099 INFO    ] No update needed
[2026-10-28 09:44:05,101.101 INFO    ] Checking for camera pi updates...
[2026-10-28 09:44:05,135.135 INFO    ] 200
[2026-10-28 09:44:05,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:44:05,184.184 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:44:05,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:44:05,265.265 INFO    ] No camera update needed
[2026-10-28 09:44:05,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:44:05,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:44:05,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:44:05,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:44:07,320.320 INFO    ] ================================================
[2026-10-28 09:44:07,336.336 INFO    ] Launching Daemon at Wed Oct 28 09:44:07 IST 2026
[2026-10-28 09:44:07,350.350 INFO    ] ================================================
[2026-10-28 09:44:08,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:44:08
[2026-10-28 09:44:08,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:44:08,895.895 INFO    ] Initializing speech engine...
[2026-10-28 09:44:08,904.904 INFO    ] 2026-10-28 09:44:08
[2026-10-28 09:44:09,161.161 INFO    ] 2026-10-28 09:44:09
[2026-10-28 09:44:09,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:44:09,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:44:09,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:44:09,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:44:09,707.707 INFO    ] time= 28/10/2026 09:44:09
[2026-10-28 09:44:09,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:44:09,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:44:09,861.861 INFO    ] No existing commands found in stream
[2026-10-28 09:44:14,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:44:14,893.893 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-28 09:44:17,394.394 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:44:17,397.397 INFO    ] Checking for system updates...
[2026-10-28 09:44:17,432.432 INFO    ] 200
[2026-10-28 09:44:17,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:44:17,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:44:17,496.496 INFO    ] No update needed
[2026-10-28 09:44:17,499.499 INFO    ] Checking for camera pi updates...
[2026-10-28 09:44:17,536.536 INFO    ] 200
[2026-10-28 09:44:17,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:44:17,578.578 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:44:17,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:44:17,658.658 INFO    ] No camera update needed
[2026-10-28 09:44:17,660.660 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:44:17,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:44:17,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:44:17,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:44:19,713.713 INFO    ] ================================================
[2026-10-28 09:44:19,729.729 INFO    ] Launching Daemon at Wed Oct 28 09:44:19 IST 2026
[2026-10-28 09:44:19,741.741 INFO    ] ================================================
[2026-10-28 09:44:20,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:44:20
[2026-10-28 09:44:20,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:44:21,207.207 INFO    ] Initializing speech engine...
[2026-10-28 09:44:21,214.214 INFO    ] 2026-10-28 09:44:21
[2026-10-28 09:44:21,477.477 INFO    ] 2026-10-28 09:44:21
[2026-10-28 09:44:21,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:44:21,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:44:21,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:44:22,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:44:22,036.036 INFO    ] time= 28/10/2026 09:44:22
[2026-10-28 09:44:22,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:44:22,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:44:22,175.175 INFO    ] No existing commands found in stream
[2026-10-28 09:44:27,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:44:27,202.202 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 09:44:30,717.717 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:44:30,720.720 INFO    ] Checking for system updates...
[2026-10-28 09:44:30,756.756 INFO    ] 200
[2026-10-28 09:44:30,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:44:30,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:44:30,815.815 INFO    ] No update needed
[2026-10-28 09:44:30,818.818 INFO    ] Checking for camera pi updates...
[2026-10-28 09:44:30,852.852 INFO    ] 200
[2026-10-28 09:44:30,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:44:30,896.896 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:44:30,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:44:30,984.984 INFO    ] No camera update needed
[2026-10-28 09:44:30,987.987 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:44:30,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:44:30,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:44:31,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:44:33,047.047 INFO    ] ================================================
[2026-10-28 09:44:33,067.067 INFO    ] Launching Daemon at Wed Oct 28 09:44:33 IST 2026
[2026-10-28 09:44:33,078.078 INFO    ] ================================================
[2026-10-28 09:44:33,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:44:33
[2026-10-28 09:44:34,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:44:34,480.480 INFO    ] Initializing speech engine...
[2026-10-28 09:44:34,493.493 INFO    ] 2026-10-28 09:44:34
[2026-10-28 09:44:34,758.758 INFO    ] 2026-10-28 09:44:34
[2026-10-28 09:44:34,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:44:35,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:44:35,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:44:35,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:44:35,324.324 INFO    ] time= 28/10/2026 09:44:35
[2026-10-28 09:44:35,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:44:35,347.347 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:44:35,480.480 INFO    ] No existing commands found in stream
[2026-10-28 09:44:40,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:44:40,496.496 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-28 09:44:42,509.509 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:44:42,512.512 INFO    ] Checking for system updates...
[2026-10-28 09:44:42,551.551 INFO    ] 200
[2026-10-28 09:44:42,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:44:42,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:44:42,609.609 INFO    ] No update needed
[2026-10-28 09:44:42,611.611 INFO    ] Checking for camera pi updates...
[2026-10-28 09:44:42,649.649 INFO    ] 200
[2026-10-28 09:44:42,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:44:42,697.697 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:44:42,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:44:42,783.783 INFO    ] No camera update needed
[2026-10-28 09:44:42,786.786 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:44:42,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:44:42,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:44:42,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:44:44,841.841 INFO    ] ================================================
[2026-10-28 09:44:44,857.857 INFO    ] Launching Daemon at Wed Oct 28 09:44:44 IST 2026
[2026-10-28 09:44:44,868.868 INFO    ] ================================================
[2026-10-28 09:44:45,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:44:45
[2026-10-28 09:44:46,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:44:46,326.326 INFO    ] Initializing speech engine...
[2026-10-28 09:44:46,334.334 INFO    ] 2026-10-28 09:44:46
[2026-10-28 09:44:46,591.591 INFO    ] 2026-10-28 09:44:46
[2026-10-28 09:44:46,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:44:46,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:44:46,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:44:47,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:44:47,135.135 INFO    ] time= 28/10/2026 09:44:47
[2026-10-28 09:44:47,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:44:47,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:44:47,311.311 INFO    ] No existing commands found in stream
[2026-10-28 09:44:52,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:44:52,344.344 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 09:44:54,476.476 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:44:54,479.479 INFO    ] Checking for system updates...
[2026-10-28 09:44:54,515.515 INFO    ] 200
[2026-10-28 09:44:54,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:44:54,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:44:54,572.572 INFO    ] No update needed
[2026-10-28 09:44:54,575.575 INFO    ] Checking for camera pi updates...
[2026-10-28 09:44:54,612.612 INFO    ] 200
[2026-10-28 09:44:54,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:44:54,661.661 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:44:54,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:44:54,759.759 INFO    ] No camera update needed
[2026-10-28 09:44:54,762.762 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:44:54,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:44:54,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:44:54,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:44:56,815.815 INFO    ] ================================================
[2026-10-28 09:44:56,830.830 INFO    ] Launching Daemon at Wed Oct 28 09:44:56 IST 2026
[2026-10-28 09:44:56,842.842 INFO    ] ================================================
[2026-10-28 09:44:57,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:44:57
[2026-10-28 09:44:58,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:44:58,428.428 INFO    ] Initializing speech engine...
[2026-10-28 09:44:58,438.438 INFO    ] 2026-10-28 09:44:58
[2026-10-28 09:44:58,683.683 INFO    ] 2026-10-28 09:44:58
[2026-10-28 09:44:58,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:44:58,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:44:58,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:44:59,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:44:59,174.174 INFO    ] time= 28/10/2026 09:44:59
[2026-10-28 09:44:59,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:44:59,248.248 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:44:59,393.393 INFO    ] No existing commands found in stream
[2026-10-28 09:45:04,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:45:04,410.410 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-28 09:45:08,195.195 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:45:08,197.197 INFO    ] Checking for system updates...
[2026-10-28 09:45:08,233.233 INFO    ] 200
[2026-10-28 09:45:08,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:45:08,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:45:08,290.290 INFO    ] No update needed
[2026-10-28 09:45:08,292.292 INFO    ] Checking for camera pi updates...
[2026-10-28 09:45:08,330.330 INFO    ] 200
[2026-10-28 09:45:08,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:45:08,373.373 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:45:08,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:45:08,465.465 INFO    ] No camera update needed
[2026-10-28 09:45:08,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:45:08,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:45:08,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:45:08,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:45:10,522.522 INFO    ] ================================================
[2026-10-28 09:45:10,538.538 INFO    ] Launching Daemon at Wed Oct 28 09:45:10 IST 2026
[2026-10-28 09:45:10,549.549 INFO    ] ================================================
[2026-10-28 09:45:11,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:45:11
[2026-10-28 09:45:11,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:45:12,009.009 INFO    ] Initializing speech engine...
[2026-10-28 09:45:12,018.018 INFO    ] 2026-10-28 09:45:12
[2026-10-28 09:45:12,276.276 INFO    ] 2026-10-28 09:45:12
[2026-10-28 09:45:12,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:45:12,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:45:12,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:45:12,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:45:12,969.969 INFO    ] time= 28/10/2026 09:45:12
[2026-10-28 09:45:13,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:45:13,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:45:13,235.235 INFO    ] No existing commands found in stream
[2026-10-28 09:45:18,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:45:18,275.275 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-28 09:45:20,350.350 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:45:20,353.353 INFO    ] Checking for system updates...
[2026-10-28 09:45:20,392.392 INFO    ] 200
[2026-10-28 09:45:20,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:45:20,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:45:20,455.455 INFO    ] No update needed
[2026-10-28 09:45:20,457.457 INFO    ] Checking for camera pi updates...
[2026-10-28 09:45:20,494.494 INFO    ] 200
[2026-10-28 09:45:20,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:45:20,537.537 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:45:20,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:45:20,607.607 INFO    ] No camera update needed
[2026-10-28 09:45:20,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:45:20,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:45:20,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:45:20,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:45:22,664.664 INFO    ] ================================================
[2026-10-28 09:45:22,680.680 INFO    ] Launching Daemon at Wed Oct 28 09:45:22 IST 2026
[2026-10-28 09:45:22,691.691 INFO    ] ================================================
[2026-10-28 09:45:23,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:45:23
[2026-10-28 09:45:23,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:45:24,148.148 INFO    ] Initializing speech engine...
[2026-10-28 09:45:24,157.157 INFO    ] 2026-10-28 09:45:24
[2026-10-28 09:45:24,429.429 INFO    ] 2026-10-28 09:45:24
[2026-10-28 09:45:24,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:45:24,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:45:24,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:45:24,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:45:24,961.961 INFO    ] time= 28/10/2026 09:45:24
[2026-10-28 09:45:24,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:45:25,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:45:25,124.124 INFO    ] No existing commands found in stream
[2026-10-28 09:45:30,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:45:30,157.157 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 09:45:33,914.914 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:45:33,916.916 INFO    ] Checking for system updates...
[2026-10-28 09:45:33,956.956 INFO    ] 200
[2026-10-28 09:45:33,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:45:34,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:45:34,016.016 INFO    ] No update needed
[2026-10-28 09:45:34,018.018 INFO    ] Checking for camera pi updates...
[2026-10-28 09:45:34,056.056 INFO    ] 200
[2026-10-28 09:45:34,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:45:34,098.098 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:45:34,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:45:34,185.185 INFO    ] No camera update needed
[2026-10-28 09:45:34,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:45:34,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:45:34,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:45:34,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:45:36,242.242 INFO    ] ================================================
[2026-10-28 09:45:36,258.258 INFO    ] Launching Daemon at Wed Oct 28 09:45:36 IST 2026
[2026-10-28 09:45:36,269.269 INFO    ] ================================================
[2026-10-28 09:45:36,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:45:36
[2026-10-28 09:45:37,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:45:37,680.680 INFO    ] Initializing speech engine...
[2026-10-28 09:45:37,703.703 INFO    ] 2026-10-28 09:45:37
[2026-10-28 09:45:37,959.959 INFO    ] 2026-10-28 09:45:37
[2026-10-28 09:45:37,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:45:38,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:45:38,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:45:38,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:45:38,525.525 INFO    ] time= 28/10/2026 09:45:38
[2026-10-28 09:45:38,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:45:38,565.565 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:45:38,716.716 INFO    ] No existing commands found in stream
[2026-10-28 09:45:43,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:45:43,744.744 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-28 09:45:47,951.951 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:45:47,953.953 INFO    ] Checking for system updates...
[2026-10-28 09:45:47,990.990 INFO    ] 200
[2026-10-28 09:45:47,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:45:48,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:45:48,048.048 INFO    ] No update needed
[2026-10-28 09:45:48,050.050 INFO    ] Checking for camera pi updates...
[2026-10-28 09:45:48,088.088 INFO    ] 200
[2026-10-28 09:45:48,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:45:48,136.136 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:45:48,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:45:48,212.212 INFO    ] No camera update needed
[2026-10-28 09:45:48,215.215 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:45:48,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:45:48,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:45:48,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:45:50,268.268 INFO    ] ================================================
[2026-10-28 09:45:50,283.283 INFO    ] Launching Daemon at Wed Oct 28 09:45:50 IST 2026
[2026-10-28 09:45:50,295.295 INFO    ] ================================================
[2026-10-28 09:45:50,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:45:50
[2026-10-28 09:45:51,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:45:51,717.717 INFO    ] Initializing speech engine...
[2026-10-28 09:45:51,730.730 INFO    ] 2026-10-28 09:45:51
[2026-10-28 09:45:51,978.978 INFO    ] 2026-10-28 09:45:51
[2026-10-28 09:45:52,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:45:52,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:45:52,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:45:52,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:45:52,595.595 INFO    ] time= 28/10/2026 09:45:52
[2026-10-28 09:45:52,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:45:52,659.659 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:45:52,804.804 INFO    ] No existing commands found in stream
[2026-10-28 09:45:57,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:45:57,827.827 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 09:46:00,094.094 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:46:00,096.096 INFO    ] Checking for system updates...
[2026-10-28 09:46:00,132.132 INFO    ] 200
[2026-10-28 09:46:00,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:46:00,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:46:00,196.196 INFO    ] No update needed
[2026-10-28 09:46:00,199.199 INFO    ] Checking for camera pi updates...
[2026-10-28 09:46:00,236.236 INFO    ] 200
[2026-10-28 09:46:00,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:46:00,289.289 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:46:00,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:46:00,472.472 INFO    ] No camera update needed
[2026-10-28 09:46:00,475.475 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:46:00,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:46:00,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:46:00,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:46:02,534.534 INFO    ] ================================================
[2026-10-28 09:46:02,552.552 INFO    ] Launching Daemon at Wed Oct 28 09:46:02 IST 2026
[2026-10-28 09:46:02,564.564 INFO    ] ================================================
[2026-10-28 09:46:03,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:46:03
[2026-10-28 09:46:03,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:46:04,089.089 INFO    ] Initializing speech engine...
[2026-10-28 09:46:04,109.109 INFO    ] 2026-10-28 09:46:04
[2026-10-28 09:46:04,384.384 INFO    ] 2026-10-28 09:46:04
[2026-10-28 09:46:04,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:46:04,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:46:04,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:46:04,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:46:04,965.965 INFO    ] time= 28/10/2026 09:46:04
[2026-10-28 09:46:04,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:46:05,004.004 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:46:05,152.152 INFO    ] No existing commands found in stream
[2026-10-28 09:46:10,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:46:10,170.170 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-28 09:46:11,604.604 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:46:11,606.606 INFO    ] Checking for system updates...
[2026-10-28 09:46:11,643.643 INFO    ] 200
[2026-10-28 09:46:11,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:46:11,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:46:11,709.709 INFO    ] No update needed
[2026-10-28 09:46:11,711.711 INFO    ] Checking for camera pi updates...
[2026-10-28 09:46:11,757.757 INFO    ] 200
[2026-10-28 09:46:11,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:46:11,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:46:11,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:46:11,891.891 INFO    ] No camera update needed
[2026-10-28 09:46:11,894.894 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:46:11,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:46:11,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:46:11,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:46:13,949.949 INFO    ] ================================================
[2026-10-28 09:46:13,965.965 INFO    ] Launching Daemon at Wed Oct 28 09:46:13 IST 2026
[2026-10-28 09:46:13,976.976 INFO    ] ================================================
[2026-10-28 09:46:14,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:46:14
[2026-10-28 09:46:15,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:46:15,409.409 INFO    ] Initializing speech engine...
[2026-10-28 09:46:15,432.432 INFO    ] 2026-10-28 09:46:15
[2026-10-28 09:46:15,685.685 INFO    ] 2026-10-28 09:46:15
[2026-10-28 09:46:15,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:46:15,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:46:15,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:46:16,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:46:16,244.244 INFO    ] time= 28/10/2026 09:46:16
[2026-10-28 09:46:16,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:46:16,290.290 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:46:16,420.420 INFO    ] No existing commands found in stream
[2026-10-28 09:46:21,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:46:21,448.448 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-28 09:46:25,910.910 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:46:25,912.912 INFO    ] Checking for system updates...
[2026-10-28 09:46:25,952.952 INFO    ] 200
[2026-10-28 09:46:25,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:46:26,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:46:26,017.017 INFO    ] No update needed
[2026-10-28 09:46:26,019.019 INFO    ] Checking for camera pi updates...
[2026-10-28 09:46:26,056.056 INFO    ] 200
[2026-10-28 09:46:26,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:46:26,099.099 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:46:26,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:46:26,200.200 INFO    ] No camera update needed
[2026-10-28 09:46:26,202.202 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:46:26,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:46:26,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:46:26,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:46:28,254.254 INFO    ] ================================================
[2026-10-28 09:46:28,270.270 INFO    ] Launching Daemon at Wed Oct 28 09:46:28 IST 2026
[2026-10-28 09:46:28,282.282 INFO    ] ================================================
[2026-10-28 09:46:28,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:46:28
[2026-10-28 09:46:29,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:46:29,922.922 INFO    ] Initializing speech engine...
[2026-10-28 09:46:29,931.931 INFO    ] 2026-10-28 09:46:29
[2026-10-28 09:46:30,218.218 INFO    ] 2026-10-28 09:46:30
[2026-10-28 09:46:30,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:46:30,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:46:30,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:46:30,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:46:30,765.765 INFO    ] time= 28/10/2026 09:46:30
[2026-10-28 09:46:30,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:46:30,804.804 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:46:30,913.913 INFO    ] No existing commands found in stream
[2026-10-28 09:46:35,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:46:35,939.939 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 09:46:39,314.314 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:46:39,317.317 INFO    ] Checking for system updates...
[2026-10-28 09:46:39,354.354 INFO    ] 200
[2026-10-28 09:46:39,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:46:39,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:46:39,411.411 INFO    ] No update needed
[2026-10-28 09:46:39,414.414 INFO    ] Checking for camera pi updates...
[2026-10-28 09:46:39,451.451 INFO    ] 200
[2026-10-28 09:46:39,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:46:39,493.493 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:46:39,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:46:39,604.604 INFO    ] No camera update needed
[2026-10-28 09:46:39,606.606 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:46:39,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:46:39,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:46:39,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:46:41,659.659 INFO    ] ================================================
[2026-10-28 09:46:41,675.675 INFO    ] Launching Daemon at Wed Oct 28 09:46:41 IST 2026
[2026-10-28 09:46:41,687.687 INFO    ] ================================================
[2026-10-28 09:46:42,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:46:42
[2026-10-28 09:46:42,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:46:43,156.156 INFO    ] Initializing speech engine...
[2026-10-28 09:46:43,166.166 INFO    ] 2026-10-28 09:46:43
[2026-10-28 09:46:43,416.416 INFO    ] 2026-10-28 09:46:43
[2026-10-28 09:46:43,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:46:43,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:46:43,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:46:43,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:46:43,986.986 INFO    ] time= 28/10/2026 09:46:43
[2026-10-28 09:46:43,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:46:44,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:46:44,146.146 INFO    ] No existing commands found in stream
[2026-10-28 09:46:49,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:46:49,174.174 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-28 09:46:50,713.713 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:46:50,716.716 INFO    ] Checking for system updates...
[2026-10-28 09:46:50,751.751 INFO    ] 200
[2026-10-28 09:46:50,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:46:50,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:46:50,808.808 INFO    ] No update needed
[2026-10-28 09:46:50,810.810 INFO    ] Checking for camera pi updates...
[2026-10-28 09:46:50,844.844 INFO    ] 200
[2026-10-28 09:46:50,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:46:50,887.887 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:46:50,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:46:50,970.970 INFO    ] No camera update needed
[2026-10-28 09:46:50,972.972 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:46:50,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:46:50,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:46:50,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:46:53,026.026 INFO    ] ================================================
[2026-10-28 09:46:53,041.041 INFO    ] Launching Daemon at Wed Oct 28 09:46:53 IST 2026
[2026-10-28 09:46:53,052.052 INFO    ] ================================================
[2026-10-28 09:46:53,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:46:53
[2026-10-28 09:46:54,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:46:54,471.471 INFO    ] Initializing speech engine...
[2026-10-28 09:46:54,480.480 INFO    ] 2026-10-28 09:46:54
[2026-10-28 09:46:54,730.730 INFO    ] 2026-10-28 09:46:54
[2026-10-28 09:46:54,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:46:55,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:46:55,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:46:55,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:46:55,297.297 INFO    ] time= 28/10/2026 09:46:55
[2026-10-28 09:46:55,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:46:55,322.322 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:46:55,464.464 INFO    ] No existing commands found in stream
[2026-10-28 09:47:00,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:47:00,491.491 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-28 09:47:01,311.311 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:47:01,314.314 INFO    ] Checking for system updates...
[2026-10-28 09:47:01,355.355 INFO    ] 200
[2026-10-28 09:47:01,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:47:01,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:47:01,428.428 INFO    ] No update needed
[2026-10-28 09:47:01,431.431 INFO    ] Checking for camera pi updates...
[2026-10-28 09:47:01,467.467 INFO    ] 200
[2026-10-28 09:47:01,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:47:01,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:47:01,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:47:01,598.598 INFO    ] No camera update needed
[2026-10-28 09:47:01,600.600 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:47:01,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:47:01,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:47:01,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:47:03,660.660 INFO    ] ================================================
[2026-10-28 09:47:03,678.678 INFO    ] Launching Daemon at Wed Oct 28 09:47:03 IST 2026
[2026-10-28 09:47:03,693.693 INFO    ] ================================================
[2026-10-28 09:47:04,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:47:04
[2026-10-28 09:47:04,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:47:05,175.175 INFO    ] Initializing speech engine...
[2026-10-28 09:47:05,182.182 INFO    ] 2026-10-28 09:47:05
[2026-10-28 09:47:05,441.441 INFO    ] 2026-10-28 09:47:05
[2026-10-28 09:47:05,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:47:05,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:47:05,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:47:06,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:47:06,031.031 INFO    ] time= 28/10/2026 09:47:06
[2026-10-28 09:47:06,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:47:06,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:47:06,234.234 INFO    ] No existing commands found in stream
[2026-10-28 09:47:11,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:47:11,247.247 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-28 09:47:12,332.332 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:47:12,334.334 INFO    ] Checking for system updates...
[2026-10-28 09:47:12,370.370 INFO    ] 200
[2026-10-28 09:47:12,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:47:12,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:47:12,430.430 INFO    ] No update needed
[2026-10-28 09:47:12,432.432 INFO    ] Checking for camera pi updates...
[2026-10-28 09:47:12,466.466 INFO    ] 200
[2026-10-28 09:47:12,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:47:12,508.508 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:47:12,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:47:12,593.593 INFO    ] No camera update needed
[2026-10-28 09:47:12,595.595 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:47:12,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:47:12,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:47:12,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:47:14,650.650 INFO    ] ================================================
[2026-10-28 09:47:14,665.665 INFO    ] Launching Daemon at Wed Oct 28 09:47:14 IST 2026
[2026-10-28 09:47:14,676.676 INFO    ] ================================================
[2026-10-28 09:47:15,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:47:15
[2026-10-28 09:47:15,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:47:16,160.160 INFO    ] Initializing speech engine...
[2026-10-28 09:47:16,175.175 INFO    ] 2026-10-28 09:47:16
[2026-10-28 09:47:16,430.430 INFO    ] 2026-10-28 09:47:16
[2026-10-28 09:47:16,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:47:16,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:47:16,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:47:16,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:47:16,986.986 INFO    ] time= 28/10/2026 09:47:16
[2026-10-28 09:47:17,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:47:17,034.034 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:47:17,191.191 INFO    ] No existing commands found in stream
[2026-10-28 09:47:22,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:47:22,218.218 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-28 09:47:24,858.858 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:47:24,861.861 INFO    ] Checking for system updates...
[2026-10-28 09:47:24,897.897 INFO    ] 200
[2026-10-28 09:47:24,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:47:24,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:47:24,958.958 INFO    ] No update needed
[2026-10-28 09:47:24,960.960 INFO    ] Checking for camera pi updates...
[2026-10-28 09:47:24,998.998 INFO    ] 200
[2026-10-28 09:47:25,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:47:25,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:47:25,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:47:25,132.132 INFO    ] No camera update needed
[2026-10-28 09:47:25,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:47:25,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:47:25,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:47:25,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:47:27,187.187 INFO    ] ================================================
[2026-10-28 09:47:27,202.202 INFO    ] Launching Daemon at Wed Oct 28 09:47:27 IST 2026
[2026-10-28 09:47:27,213.213 INFO    ] ================================================
[2026-10-28 09:47:27,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:47:27
[2026-10-28 09:47:28,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:47:28,805.805 INFO    ] Initializing speech engine...
[2026-10-28 09:47:28,815.815 INFO    ] 2026-10-28 09:47:28
[2026-10-28 09:47:29,077.077 INFO    ] 2026-10-28 09:47:29
[2026-10-28 09:47:29,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:47:29,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:47:29,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:47:29,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:47:29,857.857 INFO    ] time= 28/10/2026 09:47:29
[2026-10-28 09:47:29,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:47:29,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:47:30,165.165 INFO    ] No existing commands found in stream
[2026-10-28 09:47:35,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:47:35,193.193 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-28 09:47:37,688.688 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:47:37,690.690 INFO    ] Checking for system updates...
[2026-10-28 09:47:37,730.730 INFO    ] 200
[2026-10-28 09:47:37,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:47:37,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:47:37,788.788 INFO    ] No update needed
[2026-10-28 09:47:37,790.790 INFO    ] Checking for camera pi updates...
[2026-10-28 09:47:37,828.828 INFO    ] 200
[2026-10-28 09:47:37,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:47:37,872.872 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:47:37,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:47:37,957.957 INFO    ] No camera update needed
[2026-10-28 09:47:37,959.959 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:47:37,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:47:37,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:47:37,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:47:40,018.018 INFO    ] ================================================
[2026-10-28 09:47:40,033.033 INFO    ] Launching Daemon at Wed Oct 28 09:47:40 IST 2026
[2026-10-28 09:47:40,043.043 INFO    ] ================================================
[2026-10-28 09:47:40,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:47:40
[2026-10-28 09:47:41,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:47:41,494.494 INFO    ] Initializing speech engine...
[2026-10-28 09:47:41,519.519 INFO    ] 2026-10-28 09:47:41
[2026-10-28 09:47:41,796.796 INFO    ] 2026-10-28 09:47:41
[2026-10-28 09:47:41,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:47:42,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:47:42,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:47:42,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:47:42,397.397 INFO    ] time= 28/10/2026 09:47:42
[2026-10-28 09:47:42,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:47:42,445.445 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:47:42,576.576 INFO    ] No existing commands found in stream
[2026-10-28 09:47:47,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:47:47,605.605 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-28 09:47:49,518.518 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:47:49,521.521 INFO    ] Checking for system updates...
[2026-10-28 09:47:49,562.562 INFO    ] 200
[2026-10-28 09:47:49,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:47:49,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:47:49,626.626 INFO    ] No update needed
[2026-10-28 09:47:49,628.628 INFO    ] Checking for camera pi updates...
[2026-10-28 09:47:49,662.662 INFO    ] 200
[2026-10-28 09:47:49,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:47:49,708.708 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:47:49,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:47:49,810.810 INFO    ] No camera update needed
[2026-10-28 09:47:49,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:47:49,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:47:49,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:47:49,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:47:51,870.870 INFO    ] ================================================
[2026-10-28 09:47:51,885.885 INFO    ] Launching Daemon at Wed Oct 28 09:47:51 IST 2026
[2026-10-28 09:47:51,896.896 INFO    ] ================================================
[2026-10-28 09:47:52,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:47:52
[2026-10-28 09:47:53,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:47:53,293.293 INFO    ] Initializing speech engine...
[2026-10-28 09:47:53,301.301 INFO    ] 2026-10-28 09:47:53
[2026-10-28 09:47:53,582.582 INFO    ] 2026-10-28 09:47:53
[2026-10-28 09:47:53,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:47:53,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:47:53,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:47:54,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:47:54,151.151 INFO    ] time= 28/10/2026 09:47:54
[2026-10-28 09:47:54,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:47:54,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:47:54,322.322 INFO    ] No existing commands found in stream
[2026-10-28 09:47:59,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:47:59,350.350 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-28 09:48:02,798.798 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:48:02,802.802 INFO    ] Checking for system updates...
[2026-10-28 09:48:02,847.847 INFO    ] 200
[2026-10-28 09:48:02,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:48:02,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:48:02,925.925 INFO    ] No update needed
[2026-10-28 09:48:02,928.928 INFO    ] Checking for camera pi updates...
[2026-10-28 09:48:02,977.977 INFO    ] 200
[2026-10-28 09:48:02,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:48:03,033.033 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:48:03,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:48:03,130.130 INFO    ] No camera update needed
[2026-10-28 09:48:03,133.133 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:48:03,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:48:03,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:48:03,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:48:05,200.200 INFO    ] ================================================
[2026-10-28 09:48:05,214.214 INFO    ] Launching Daemon at Wed Oct 28 09:48:05 IST 2026
[2026-10-28 09:48:05,225.225 INFO    ] ================================================
[2026-10-28 09:48:05,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:48:05
[2026-10-28 09:48:06,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:48:06,644.644 INFO    ] Initializing speech engine...
[2026-10-28 09:48:06,650.650 INFO    ] 2026-10-28 09:48:06
[2026-10-28 09:48:06,908.908 INFO    ] 2026-10-28 09:48:06
[2026-10-28 09:48:06,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:48:07,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:48:07,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:48:07,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:48:07,465.465 INFO    ] time= 28/10/2026 09:48:07
[2026-10-28 09:48:07,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:48:07,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:48:07,621.621 INFO    ] No existing commands found in stream
[2026-10-28 09:48:12,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:48:12,654.654 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 09:48:15,087.087 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:48:15,089.089 INFO    ] Checking for system updates...
[2026-10-28 09:48:15,125.125 INFO    ] 200
[2026-10-28 09:48:15,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:48:15,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:48:15,191.191 INFO    ] No update needed
[2026-10-28 09:48:15,194.194 INFO    ] Checking for camera pi updates...
[2026-10-28 09:48:15,227.227 INFO    ] 200
[2026-10-28 09:48:15,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:48:15,268.268 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:48:15,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:48:15,358.358 INFO    ] No camera update needed
[2026-10-28 09:48:15,361.361 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:48:15,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:48:15,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:48:15,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:48:17,414.414 INFO    ] ================================================
[2026-10-28 09:48:17,428.428 INFO    ] Launching Daemon at Wed Oct 28 09:48:17 IST 2026
[2026-10-28 09:48:17,439.439 INFO    ] ================================================
[2026-10-28 09:48:18,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:48:18
[2026-10-28 09:48:18,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:48:18,905.905 INFO    ] Initializing speech engine...
[2026-10-28 09:48:18,914.914 INFO    ] 2026-10-28 09:48:18
[2026-10-28 09:48:19,175.175 INFO    ] 2026-10-28 09:48:19
[2026-10-28 09:48:19,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:48:19,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:48:19,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:48:19,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:48:19,731.731 INFO    ] time= 28/10/2026 09:48:19
[2026-10-28 09:48:19,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:48:19,801.801 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:48:19,929.929 INFO    ] No existing commands found in stream
[2026-10-28 09:48:24,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:48:24,955.955 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 09:48:26,539.539 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:48:26,541.541 INFO    ] Checking for system updates...
[2026-10-28 09:48:26,579.579 INFO    ] 200
[2026-10-28 09:48:26,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:48:26,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:48:26,637.637 INFO    ] No update needed
[2026-10-28 09:48:26,639.639 INFO    ] Checking for camera pi updates...
[2026-10-28 09:48:26,676.676 INFO    ] 200
[2026-10-28 09:48:26,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:48:26,723.723 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:48:26,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:48:26,805.805 INFO    ] No camera update needed
[2026-10-28 09:48:26,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:48:26,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:48:26,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:48:26,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:48:28,860.860 INFO    ] ================================================
[2026-10-28 09:48:28,876.876 INFO    ] Launching Daemon at Wed Oct 28 09:48:28 IST 2026
[2026-10-28 09:48:28,886.886 INFO    ] ================================================
[2026-10-28 09:48:29,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:48:29
[2026-10-28 09:48:30,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:48:30,330.330 INFO    ] Initializing speech engine...
[2026-10-28 09:48:30,354.354 INFO    ] 2026-10-28 09:48:30
[2026-10-28 09:48:30,626.626 INFO    ] 2026-10-28 09:48:30
[2026-10-28 09:48:30,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:48:30,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:48:30,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:48:31,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:48:31,244.244 INFO    ] time= 28/10/2026 09:48:31
[2026-10-28 09:48:31,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:48:31,276.276 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:48:31,426.426 INFO    ] No existing commands found in stream
[2026-10-28 09:48:36,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:48:36,454.454 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-28 09:48:38,362.362 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:48:38,365.365 INFO    ] Checking for system updates...
[2026-10-28 09:48:38,400.400 INFO    ] 200
[2026-10-28 09:48:38,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:48:38,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:48:38,463.463 INFO    ] No update needed
[2026-10-28 09:48:38,466.466 INFO    ] Checking for camera pi updates...
[2026-10-28 09:48:38,499.499 INFO    ] 200
[2026-10-28 09:48:38,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:48:38,546.546 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:48:38,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:48:38,631.631 INFO    ] No camera update needed
[2026-10-28 09:48:38,634.634 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:48:38,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:48:38,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:48:38,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:48:40,687.687 INFO    ] ================================================
[2026-10-28 09:48:40,701.701 INFO    ] Launching Daemon at Wed Oct 28 09:48:40 IST 2026
[2026-10-28 09:48:40,712.712 INFO    ] ================================================
[2026-10-28 09:48:41,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:48:41
[2026-10-28 09:48:41,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:48:42,148.148 INFO    ] Initializing speech engine...
[2026-10-28 09:48:42,157.157 INFO    ] 2026-10-28 09:48:42
[2026-10-28 09:48:42,404.404 INFO    ] 2026-10-28 09:48:42
[2026-10-28 09:48:42,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:48:42,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:48:42,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:48:42,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:48:42,991.991 INFO    ] time= 28/10/2026 09:48:42
[2026-10-28 09:48:43,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:48:43,027.027 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:48:43,138.138 INFO    ] No existing commands found in stream
[2026-10-28 09:48:48,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:48:48,160.160 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-28 09:48:51,130.130 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:48:51,133.133 INFO    ] Checking for system updates...
[2026-10-28 09:48:51,172.172 INFO    ] 200
[2026-10-28 09:48:51,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:48:51,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:48:51,229.229 INFO    ] No update needed
[2026-10-28 09:48:51,232.232 INFO    ] Checking for camera pi updates...
[2026-10-28 09:48:51,273.273 INFO    ] 200
[2026-10-28 09:48:51,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:48:51,320.320 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:48:51,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:48:51,404.404 INFO    ] No camera update needed
[2026-10-28 09:48:51,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:48:51,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:48:51,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:48:51,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:48:53,462.462 INFO    ] ================================================
[2026-10-28 09:48:53,477.477 INFO    ] Launching Daemon at Wed Oct 28 09:48:53 IST 2026
[2026-10-28 09:48:53,488.488 INFO    ] ================================================
[2026-10-28 09:48:54,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:48:54
[2026-10-28 09:48:54,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:48:54,933.933 INFO    ] Initializing speech engine...
[2026-10-28 09:48:54,939.939 INFO    ] 2026-10-28 09:48:54
[2026-10-28 09:48:55,239.239 INFO    ] 2026-10-28 09:48:55
[2026-10-28 09:48:55,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:48:55,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:48:55,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:48:55,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:48:55,865.865 INFO    ] time= 28/10/2026 09:48:55
[2026-10-28 09:48:55,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:48:55,896.896 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:48:56,029.029 INFO    ] No existing commands found in stream
[2026-10-28 09:49:01,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:49:01,059.059 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-28 09:49:03,900.900 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:49:03,903.903 INFO    ] Checking for system updates...
[2026-10-28 09:49:03,947.947 INFO    ] 200
[2026-10-28 09:49:03,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:49:04,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:49:04,027.027 INFO    ] No update needed
[2026-10-28 09:49:04,029.029 INFO    ] Checking for camera pi updates...
[2026-10-28 09:49:04,062.062 INFO    ] 200
[2026-10-28 09:49:04,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:49:04,113.113 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:49:04,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:49:04,220.220 INFO    ] No camera update needed
[2026-10-28 09:49:04,222.222 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:49:04,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:49:04,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:49:04,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:49:06,276.276 INFO    ] ================================================
[2026-10-28 09:49:06,291.291 INFO    ] Launching Daemon at Wed Oct 28 09:49:06 IST 2026
[2026-10-28 09:49:06,303.303 INFO    ] ================================================
[2026-10-28 09:49:07,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:49:06
[2026-10-28 09:49:07,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:49:07,905.905 INFO    ] Initializing speech engine...
[2026-10-28 09:49:07,914.914 INFO    ] 2026-10-28 09:49:07
[2026-10-28 09:49:08,165.165 INFO    ] 2026-10-28 09:49:08
[2026-10-28 09:49:08,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:49:08,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:49:08,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:49:08,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:49:08,728.728 INFO    ] time= 28/10/2026 09:49:08
[2026-10-28 09:49:08,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:49:08,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:49:08,883.883 INFO    ] No existing commands found in stream
[2026-10-28 09:49:13,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:49:13,899.899 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-28 09:49:18,115.115 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:49:18,117.117 INFO    ] Checking for system updates...
[2026-10-28 09:49:18,155.155 INFO    ] 200
[2026-10-28 09:49:18,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:49:18,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:49:18,212.212 INFO    ] No update needed
[2026-10-28 09:49:18,214.214 INFO    ] Checking for camera pi updates...
[2026-10-28 09:49:18,250.250 INFO    ] 200
[2026-10-28 09:49:18,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:49:18,292.292 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:49:18,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:49:18,375.375 INFO    ] No camera update needed
[2026-10-28 09:49:18,377.377 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:49:18,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:49:18,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:49:18,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:49:20,431.431 INFO    ] ================================================
[2026-10-28 09:49:20,447.447 INFO    ] Launching Daemon at Wed Oct 28 09:49:20 IST 2026
[2026-10-28 09:49:20,458.458 INFO    ] ================================================
[2026-10-28 09:49:21,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:49:21
[2026-10-28 09:49:21,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:49:21,906.906 INFO    ] Initializing speech engine...
[2026-10-28 09:49:21,911.911 INFO    ] 2026-10-28 09:49:21
[2026-10-28 09:49:22,157.157 INFO    ] 2026-10-28 09:49:22
[2026-10-28 09:49:22,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:49:22,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:49:22,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:49:22,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:49:22,714.714 INFO    ] time= 28/10/2026 09:49:22
[2026-10-28 09:49:22,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:49:22,739.739 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:49:22,852.852 INFO    ] No existing commands found in stream
[2026-10-28 09:49:27,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:49:27,877.877 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-28 09:49:29,516.516 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:49:29,519.519 INFO    ] Checking for system updates...
[2026-10-28 09:49:29,554.554 INFO    ] 200
[2026-10-28 09:49:29,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:49:29,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:49:29,611.611 INFO    ] No update needed
[2026-10-28 09:49:29,613.613 INFO    ] Checking for camera pi updates...
[2026-10-28 09:49:29,649.649 INFO    ] 200
[2026-10-28 09:49:29,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:49:29,695.695 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:49:29,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:49:29,782.782 INFO    ] No camera update needed
[2026-10-28 09:49:29,784.784 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:49:29,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:49:29,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:49:29,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:49:31,838.838 INFO    ] ================================================
[2026-10-28 09:49:31,854.854 INFO    ] Launching Daemon at Wed Oct 28 09:49:31 IST 2026
[2026-10-28 09:49:31,865.865 INFO    ] ================================================
[2026-10-28 09:49:32,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:49:32
[2026-10-28 09:49:33,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:49:33,502.502 INFO    ] Initializing speech engine...
[2026-10-28 09:49:33,508.508 INFO    ] 2026-10-28 09:49:33
[2026-10-28 09:49:33,791.791 INFO    ] 2026-10-28 09:49:33
[2026-10-28 09:49:33,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:49:34,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:49:34,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:49:34,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:49:34,363.363 INFO    ] time= 28/10/2026 09:49:34
[2026-10-28 09:49:34,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:49:34,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:49:34,534.534 INFO    ] No existing commands found in stream
[2026-10-28 09:49:39,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:49:39,563.563 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-28 09:49:43,077.077 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:49:43,080.080 INFO    ] Checking for system updates...
[2026-10-28 09:49:43,117.117 INFO    ] 200
[2026-10-28 09:49:43,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:49:43,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:49:43,175.175 INFO    ] No update needed
[2026-10-28 09:49:43,177.177 INFO    ] Checking for camera pi updates...
[2026-10-28 09:49:43,214.214 INFO    ] 200
[2026-10-28 09:49:43,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:49:43,258.258 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:49:43,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:49:43,338.338 INFO    ] No camera update needed
[2026-10-28 09:49:43,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:49:43,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:49:43,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:49:43,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:49:45,397.397 INFO    ] ================================================
[2026-10-28 09:49:45,412.412 INFO    ] Launching Daemon at Wed Oct 28 09:49:45 IST 2026
[2026-10-28 09:49:45,422.422 INFO    ] ================================================
[2026-10-28 09:49:46,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:49:45
[2026-10-28 09:49:46,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:49:46,870.870 INFO    ] Initializing speech engine...
[2026-10-28 09:49:46,893.893 INFO    ] 2026-10-28 09:49:46
[2026-10-28 09:49:47,164.164 INFO    ] 2026-10-28 09:49:47
[2026-10-28 09:49:47,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:49:47,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:49:47,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:49:47,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:49:47,705.705 INFO    ] time= 28/10/2026 09:49:47
[2026-10-28 09:49:47,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:49:47,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:49:48,060.060 INFO    ] No existing commands found in stream
[2026-10-28 09:49:53,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:49:53,074.074 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-28 09:49:54,315.315 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:49:54,318.318 INFO    ] Checking for system updates...
[2026-10-28 09:49:54,354.354 INFO    ] 200
[2026-10-28 09:49:54,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:49:54,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:49:54,416.416 INFO    ] No update needed
[2026-10-28 09:49:54,418.418 INFO    ] Checking for camera pi updates...
[2026-10-28 09:49:54,452.452 INFO    ] 200
[2026-10-28 09:49:54,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:49:54,498.498 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:49:54,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:49:54,581.581 INFO    ] No camera update needed
[2026-10-28 09:49:54,583.583 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:49:54,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:49:54,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:49:54,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:49:56,638.638 INFO    ] ================================================
[2026-10-28 09:49:56,654.654 INFO    ] Launching Daemon at Wed Oct 28 09:49:56 IST 2026
[2026-10-28 09:49:56,665.665 INFO    ] ================================================
[2026-10-28 09:49:57,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:49:57
[2026-10-28 09:49:57,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:49:58,084.084 INFO    ] Initializing speech engine...
[2026-10-28 09:49:58,104.104 INFO    ] 2026-10-28 09:49:58
[2026-10-28 09:49:58,377.377 INFO    ] 2026-10-28 09:49:58
[2026-10-28 09:49:58,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:49:58,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:49:58,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:49:58,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:49:58,863.863 INFO    ] time= 28/10/2026 09:49:58
[2026-10-28 09:49:58,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:49:58,972.972 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:49:59,069.069 INFO    ] No existing commands found in stream
[2026-10-28 09:50:04,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:50:04,083.083 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-28 09:50:09,522.522 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:50:09,525.525 INFO    ] Checking for system updates...
[2026-10-28 09:50:09,564.564 INFO    ] 200
[2026-10-28 09:50:09,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:50:09,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:50:09,622.622 INFO    ] No update needed
[2026-10-28 09:50:09,625.625 INFO    ] Checking for camera pi updates...
[2026-10-28 09:50:09,658.658 INFO    ] 200
[2026-10-28 09:50:09,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:50:09,701.701 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:50:09,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:50:09,889.889 INFO    ] No camera update needed
[2026-10-28 09:50:09,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:50:09,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:50:09,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:50:09,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:50:11,946.946 INFO    ] ================================================
[2026-10-28 09:50:11,961.961 INFO    ] Launching Daemon at Wed Oct 28 09:50:11 IST 2026
[2026-10-28 09:50:11,972.972 INFO    ] ================================================
[2026-10-28 09:50:12,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:50:12
[2026-10-28 09:50:13,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:50:13,576.576 INFO    ] Initializing speech engine...
[2026-10-28 09:50:13,584.584 INFO    ] 2026-10-28 09:50:13
[2026-10-28 09:50:13,855.855 INFO    ] 2026-10-28 09:50:13
[2026-10-28 09:50:13,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:50:14,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:50:14,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:50:14,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:50:14,419.419 INFO    ] time= 28/10/2026 09:50:14
[2026-10-28 09:50:14,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:50:14,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:50:14,563.563 INFO    ] No existing commands found in stream
[2026-10-28 09:50:19,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:50:19,600.600 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-28 09:50:20,997.997 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:50:20,999.999 INFO    ] Checking for system updates...
[2026-10-28 09:50:21,036.036 INFO    ] 200
[2026-10-28 09:50:21,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:50:21,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:50:21,097.097 INFO    ] No update needed
[2026-10-28 09:50:21,099.099 INFO    ] Checking for camera pi updates...
[2026-10-28 09:50:21,133.133 INFO    ] 200
[2026-10-28 09:50:21,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:50:21,179.179 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:50:21,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:50:21,259.259 INFO    ] No camera update needed
[2026-10-28 09:50:21,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:50:21,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:50:21,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:50:21,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:50:23,315.315 INFO    ] ================================================
[2026-10-28 09:50:23,330.330 INFO    ] Launching Daemon at Wed Oct 28 09:50:23 IST 2026
[2026-10-28 09:50:23,341.341 INFO    ] ================================================
[2026-10-28 09:50:23,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:50:23
[2026-10-28 09:50:24,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:50:24,748.748 INFO    ] Initializing speech engine...
[2026-10-28 09:50:24,770.770 INFO    ] 2026-10-28 09:50:24
[2026-10-28 09:50:25,025.025 INFO    ] 2026-10-28 09:50:25
[2026-10-28 09:50:25,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:50:25,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:50:25,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:50:25,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:50:25,595.595 INFO    ] time= 28/10/2026 09:50:25
[2026-10-28 09:50:25,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:50:25,617.617 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:50:26,021.021 INFO    ] No existing commands found in stream
[2026-10-28 09:50:31,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:50:31,049.049 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-28 09:50:33,436.436 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:50:33,439.439 INFO    ] Checking for system updates...
[2026-10-28 09:50:33,479.479 INFO    ] 200
[2026-10-28 09:50:33,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:50:33,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:50:33,537.537 INFO    ] No update needed
[2026-10-28 09:50:33,540.540 INFO    ] Checking for camera pi updates...
[2026-10-28 09:50:33,573.573 INFO    ] 200
[2026-10-28 09:50:33,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:50:33,621.621 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:50:33,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:50:33,702.702 INFO    ] No camera update needed
[2026-10-28 09:50:33,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:50:33,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:50:33,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:50:33,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:50:35,758.758 INFO    ] ================================================
[2026-10-28 09:50:35,773.773 INFO    ] Launching Daemon at Wed Oct 28 09:50:35 IST 2026
[2026-10-28 09:50:35,784.784 INFO    ] ================================================
[2026-10-28 09:50:36,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:50:36
[2026-10-28 09:50:36,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:50:37,274.274 INFO    ] Initializing speech engine...
[2026-10-28 09:50:37,284.284 INFO    ] 2026-10-28 09:50:37
[2026-10-28 09:50:37,567.567 INFO    ] 2026-10-28 09:50:37
[2026-10-28 09:50:37,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:50:37,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:50:37,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:50:38,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:50:38,127.127 INFO    ] time= 28/10/2026 09:50:38
[2026-10-28 09:50:38,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:50:38,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:50:38,283.283 INFO    ] No existing commands found in stream
[2026-10-28 09:50:43,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:50:43,312.312 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-28 09:50:45,006.006 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:50:45,009.009 INFO    ] Checking for system updates...
[2026-10-28 09:50:45,049.049 INFO    ] 200
[2026-10-28 09:50:45,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:50:45,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:50:45,105.105 INFO    ] No update needed
[2026-10-28 09:50:45,108.108 INFO    ] Checking for camera pi updates...
[2026-10-28 09:50:45,151.151 INFO    ] 200
[2026-10-28 09:50:45,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:50:45,194.194 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:50:45,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:50:45,274.274 INFO    ] No camera update needed
[2026-10-28 09:50:45,276.276 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:50:45,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:50:45,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:50:45,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:50:47,329.329 INFO    ] ================================================
[2026-10-28 09:50:47,345.345 INFO    ] Launching Daemon at Wed Oct 28 09:50:47 IST 2026
[2026-10-28 09:50:47,356.356 INFO    ] ================================================
[2026-10-28 09:50:47,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:50:47
[2026-10-28 09:50:48,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:50:48,962.962 INFO    ] Initializing speech engine...
[2026-10-28 09:50:48,973.973 INFO    ] 2026-10-28 09:50:48
[2026-10-28 09:50:49,280.280 INFO    ] 2026-10-28 09:50:49
[2026-10-28 09:50:49,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:50:49,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:50:49,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:50:49,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:50:49,942.942 INFO    ] time= 28/10/2026 09:50:49
[2026-10-28 09:50:49,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:50:50,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:50:50,202.202 INFO    ] No existing commands found in stream
[2026-10-28 09:50:55,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:50:55,236.236 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 09:50:58,919.919 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:50:58,922.922 INFO    ] Checking for system updates...
[2026-10-28 09:50:58,958.958 INFO    ] 200
[2026-10-28 09:50:58,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:50:59,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:50:59,015.015 INFO    ] No update needed
[2026-10-28 09:50:59,018.018 INFO    ] Checking for camera pi updates...
[2026-10-28 09:50:59,051.051 INFO    ] 200
[2026-10-28 09:50:59,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:50:59,094.094 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:50:59,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:50:59,196.196 INFO    ] No camera update needed
[2026-10-28 09:50:59,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:50:59,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:50:59,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:50:59,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:51:01,251.251 INFO    ] ================================================
[2026-10-28 09:51:01,266.266 INFO    ] Launching Daemon at Wed Oct 28 09:51:01 IST 2026
[2026-10-28 09:51:01,277.277 INFO    ] ================================================
[2026-10-28 09:51:01,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:51:01
[2026-10-28 09:51:02,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:51:02,876.876 INFO    ] Initializing speech engine...
[2026-10-28 09:51:02,900.900 INFO    ] 2026-10-28 09:51:02
[2026-10-28 09:51:03,194.194 INFO    ] 2026-10-28 09:51:03
[2026-10-28 09:51:03,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:51:03,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:51:03,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:51:03,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:51:03,802.802 INFO    ] time= 28/10/2026 09:51:03
[2026-10-28 09:51:03,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:51:03,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:51:03,974.974 INFO    ] No existing commands found in stream
[2026-10-28 09:51:08,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:51:08,997.997 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 09:51:10,434.434 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:51:10,437.437 INFO    ] Checking for system updates...
[2026-10-28 09:51:10,477.477 INFO    ] 200
[2026-10-28 09:51:10,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:51:10,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:51:10,534.534 INFO    ] No update needed
[2026-10-28 09:51:10,536.536 INFO    ] Checking for camera pi updates...
[2026-10-28 09:51:10,574.574 INFO    ] 200
[2026-10-28 09:51:10,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:51:10,617.617 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:51:10,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:51:10,693.693 INFO    ] No camera update needed
[2026-10-28 09:51:10,695.695 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:51:10,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:51:10,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:51:10,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:51:12,749.749 INFO    ] ================================================
[2026-10-28 09:51:12,765.765 INFO    ] Launching Daemon at Wed Oct 28 09:51:12 IST 2026
[2026-10-28 09:51:12,776.776 INFO    ] ================================================
[2026-10-28 09:51:13,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:51:13
[2026-10-28 09:51:14,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:51:14,322.322 INFO    ] Initializing speech engine...
[2026-10-28 09:51:14,329.329 INFO    ] 2026-10-28 09:51:14
[2026-10-28 09:51:14,621.621 INFO    ] 2026-10-28 09:51:14
[2026-10-28 09:51:14,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:51:14,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:51:14,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:51:15,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:51:15,238.238 INFO    ] time= 28/10/2026 09:51:15
[2026-10-28 09:51:15,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:51:15,278.278 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:51:15,469.469 INFO    ] No existing commands found in stream
[2026-10-28 09:51:20,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:51:20,499.499 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-28 09:51:21,719.719 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:51:21,722.722 INFO    ] Checking for system updates...
[2026-10-28 09:51:21,762.762 INFO    ] 200
[2026-10-28 09:51:21,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:51:21,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:51:21,826.826 INFO    ] No update needed
[2026-10-28 09:51:21,828.828 INFO    ] Checking for camera pi updates...
[2026-10-28 09:51:21,861.861 INFO    ] 200
[2026-10-28 09:51:21,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:51:21,904.904 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:51:21,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:51:21,982.982 INFO    ] No camera update needed
[2026-10-28 09:51:21,985.985 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:51:21,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:51:21,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:51:21,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:51:24,040.040 INFO    ] ================================================
[2026-10-28 09:51:24,056.056 INFO    ] Launching Daemon at Wed Oct 28 09:51:24 IST 2026
[2026-10-28 09:51:24,067.067 INFO    ] ================================================
[2026-10-28 09:51:24,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:51:24
[2026-10-28 09:51:25,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:51:25,479.479 INFO    ] Initializing speech engine...
[2026-10-28 09:51:25,489.489 INFO    ] 2026-10-28 09:51:25
[2026-10-28 09:51:25,742.742 INFO    ] 2026-10-28 09:51:25
[2026-10-28 09:51:25,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:51:26,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:51:26,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:51:26,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:51:26,316.316 INFO    ] time= 28/10/2026 09:51:26
[2026-10-28 09:51:26,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:51:26,345.345 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:51:26,488.488 INFO    ] No existing commands found in stream
[2026-10-28 09:51:31,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:51:31,505.505 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 09:51:35,688.688 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:51:35,691.691 INFO    ] Checking for system updates...
[2026-10-28 09:51:35,730.730 INFO    ] 200
[2026-10-28 09:51:35,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:51:35,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:51:35,787.787 INFO    ] No update needed
[2026-10-28 09:51:35,789.789 INFO    ] Checking for camera pi updates...
[2026-10-28 09:51:35,826.826 INFO    ] 200
[2026-10-28 09:51:35,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:51:35,868.868 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:51:35,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:51:35,937.937 INFO    ] No camera update needed
[2026-10-28 09:51:35,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:51:35,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:51:35,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:51:35,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:51:37,994.994 INFO    ] ================================================
[2026-10-28 09:51:38,009.009 INFO    ] Launching Daemon at Wed Oct 28 09:51:38 IST 2026
[2026-10-28 09:51:38,020.020 INFO    ] ================================================
[2026-10-28 09:51:38,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:51:38
[2026-10-28 09:51:39,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:51:39,443.443 INFO    ] Initializing speech engine...
[2026-10-28 09:51:39,452.452 INFO    ] 2026-10-28 09:51:39
[2026-10-28 09:51:39,702.702 INFO    ] 2026-10-28 09:51:39
[2026-10-28 09:51:39,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:51:39,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:51:40,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:51:40,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:51:40,273.273 INFO    ] time= 28/10/2026 09:51:40
[2026-10-28 09:51:40,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:51:40,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:51:40,432.432 INFO    ] No existing commands found in stream
[2026-10-28 09:51:45,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:51:45,454.454 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 09:51:48,382.382 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:51:48,385.385 INFO    ] Checking for system updates...
[2026-10-28 09:51:48,424.424 INFO    ] 200
[2026-10-28 09:51:48,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:51:48,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:51:48,506.506 INFO    ] No update needed
[2026-10-28 09:51:48,509.509 INFO    ] Checking for camera pi updates...
[2026-10-28 09:51:48,542.542 INFO    ] 200
[2026-10-28 09:51:48,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:51:48,584.584 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:51:48,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:51:48,692.692 INFO    ] No camera update needed
[2026-10-28 09:51:48,694.694 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:51:48,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:51:48,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:51:48,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:51:50,749.749 INFO    ] ================================================
[2026-10-28 09:51:50,765.765 INFO    ] Launching Daemon at Wed Oct 28 09:51:50 IST 2026
[2026-10-28 09:51:50,775.775 INFO    ] ================================================
[2026-10-28 09:51:51,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:51:51
[2026-10-28 09:51:52,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:51:52,295.295 INFO    ] Initializing speech engine...
[2026-10-28 09:51:52,306.306 INFO    ] 2026-10-28 09:51:52
[2026-10-28 09:51:52,567.567 INFO    ] 2026-10-28 09:51:52
[2026-10-28 09:51:52,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:51:52,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:51:52,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:51:53,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:51:53,258.258 INFO    ] time= 28/10/2026 09:51:53
[2026-10-28 09:51:53,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:51:53,361.361 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:51:53,507.507 INFO    ] No existing commands found in stream
[2026-10-28 09:51:58,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:51:58,526.526 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-28 09:52:02,898.898 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:52:02,901.901 INFO    ] Checking for system updates...
[2026-10-28 09:52:02,943.943 INFO    ] 200
[2026-10-28 09:52:02,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:52:03,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:52:03,016.016 INFO    ] No update needed
[2026-10-28 09:52:03,020.020 INFO    ] Checking for camera pi updates...
[2026-10-28 09:52:03,057.057 INFO    ] 200
[2026-10-28 09:52:03,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:52:03,115.115 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:52:03,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:52:03,220.220 INFO    ] No camera update needed
[2026-10-28 09:52:03,222.222 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:52:03,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:52:03,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:52:03,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:52:05,281.281 INFO    ] ================================================
[2026-10-28 09:52:05,297.297 INFO    ] Launching Daemon at Wed Oct 28 09:52:05 IST 2026
[2026-10-28 09:52:05,308.308 INFO    ] ================================================
[2026-10-28 09:52:05,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:52:05
[2026-10-28 09:52:06,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:52:06,773.773 INFO    ] Initializing speech engine...
[2026-10-28 09:52:06,782.782 INFO    ] 2026-10-28 09:52:06
[2026-10-28 09:52:07,032.032 INFO    ] 2026-10-28 09:52:07
[2026-10-28 09:52:07,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:52:07,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:52:07,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:52:07,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:52:07,591.591 INFO    ] time= 28/10/2026 09:52:07
[2026-10-28 09:52:07,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:52:07,636.636 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:52:07,745.745 INFO    ] No existing commands found in stream
[2026-10-28 09:52:12,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:52:12,771.771 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-28 09:52:13,677.677 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:52:13,680.680 INFO    ] Checking for system updates...
[2026-10-28 09:52:13,719.719 INFO    ] 200
[2026-10-28 09:52:13,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:52:13,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:52:13,783.783 INFO    ] No update needed
[2026-10-28 09:52:13,786.786 INFO    ] Checking for camera pi updates...
[2026-10-28 09:52:13,819.819 INFO    ] 200
[2026-10-28 09:52:13,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:52:13,867.867 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:52:14,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:52:14,062.062 INFO    ] No camera update needed
[2026-10-28 09:52:14,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:52:14,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:52:14,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:52:14,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:52:16,118.118 INFO    ] ================================================
[2026-10-28 09:52:16,134.134 INFO    ] Launching Daemon at Wed Oct 28 09:52:16 IST 2026
[2026-10-28 09:52:16,144.144 INFO    ] ================================================
[2026-10-28 09:52:16,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:52:16
[2026-10-28 09:52:17,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:52:17,569.569 INFO    ] Initializing speech engine...
[2026-10-28 09:52:17,591.591 INFO    ] 2026-10-28 09:52:17
[2026-10-28 09:52:17,836.836 INFO    ] 2026-10-28 09:52:17
[2026-10-28 09:52:17,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:52:18,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:52:18,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:52:18,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:52:18,304.304 INFO    ] time= 28/10/2026 09:52:18
[2026-10-28 09:52:18,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:52:18,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:52:18,496.496 INFO    ] No existing commands found in stream
[2026-10-28 09:52:23,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:52:23,510.510 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 09:52:25,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:52:25,839.839 INFO    ] Checking for system updates...
[2026-10-28 09:52:25,875.875 INFO    ] 200
[2026-10-28 09:52:25,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:52:25,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:52:25,935.935 INFO    ] No update needed
[2026-10-28 09:52:25,937.937 INFO    ] Checking for camera pi updates...
[2026-10-28 09:52:25,970.970 INFO    ] 200
[2026-10-28 09:52:25,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:52:26,014.014 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:52:26,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:52:26,128.128 INFO    ] No camera update needed
[2026-10-28 09:52:26,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:52:26,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:52:26,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:52:26,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:52:28,184.184 INFO    ] ================================================
[2026-10-28 09:52:28,200.200 INFO    ] Launching Daemon at Wed Oct 28 09:52:28 IST 2026
[2026-10-28 09:52:28,211.211 INFO    ] ================================================
[2026-10-28 09:52:28,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:52:28
[2026-10-28 09:52:29,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:52:29,637.637 INFO    ] Initializing speech engine...
[2026-10-28 09:52:29,646.646 INFO    ] 2026-10-28 09:52:29
[2026-10-28 09:52:29,909.909 INFO    ] 2026-10-28 09:52:29
[2026-10-28 09:52:29,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:52:30,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:52:30,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:52:30,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:52:30,466.466 INFO    ] time= 28/10/2026 09:52:30
[2026-10-28 09:52:30,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:52:30,506.506 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:52:30,663.663 INFO    ] No existing commands found in stream
[2026-10-28 09:52:35,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:52:35,692.692 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-28 09:52:39,735.735 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:52:39,738.738 INFO    ] Checking for system updates...
[2026-10-28 09:52:39,775.775 INFO    ] 200
[2026-10-28 09:52:39,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:52:39,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:52:39,834.834 INFO    ] No update needed
[2026-10-28 09:52:39,837.837 INFO    ] Checking for camera pi updates...
[2026-10-28 09:52:39,875.875 INFO    ] 200
[2026-10-28 09:52:39,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:52:39,927.927 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:52:40,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:52:40,015.015 INFO    ] No camera update needed
[2026-10-28 09:52:40,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:52:40,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:52:40,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:52:40,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:52:42,072.072 INFO    ] ================================================
[2026-10-28 09:52:42,088.088 INFO    ] Launching Daemon at Wed Oct 28 09:52:42 IST 2026
[2026-10-28 09:52:42,100.100 INFO    ] ================================================
[2026-10-28 09:52:42,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:52:42
[2026-10-28 09:52:43,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:52:43,570.570 INFO    ] Initializing speech engine...
[2026-10-28 09:52:43,579.579 INFO    ] 2026-10-28 09:52:43
[2026-10-28 09:52:43,847.847 INFO    ] 2026-10-28 09:52:43
[2026-10-28 09:52:43,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:52:44,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:52:44,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:52:44,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:52:44,446.446 INFO    ] time= 28/10/2026 09:52:44
[2026-10-28 09:52:44,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:52:44,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:52:44,618.618 INFO    ] No existing commands found in stream
[2026-10-28 09:52:49,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:52:49,641.641 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 09:52:52,062.062 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:52:52,065.065 INFO    ] Checking for system updates...
[2026-10-28 09:52:52,104.104 INFO    ] 200
[2026-10-28 09:52:52,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:52:52,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:52:52,161.161 INFO    ] No update needed
[2026-10-28 09:52:52,163.163 INFO    ] Checking for camera pi updates...
[2026-10-28 09:52:52,199.199 INFO    ] 200
[2026-10-28 09:52:52,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:52:52,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:52:52,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:52:52,301.301 INFO    ] No camera update needed
[2026-10-28 09:52:52,303.303 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:52:52,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:52:52,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:52:52,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:52:54,356.356 INFO    ] ================================================
[2026-10-28 09:52:54,371.371 INFO    ] Launching Daemon at Wed Oct 28 09:52:54 IST 2026
[2026-10-28 09:52:54,382.382 INFO    ] ================================================
[2026-10-28 09:52:54,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:52:54
[2026-10-28 09:52:55,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:52:55,811.811 INFO    ] Initializing speech engine...
[2026-10-28 09:52:55,818.818 INFO    ] 2026-10-28 09:52:55
[2026-10-28 09:52:56,116.116 INFO    ] 2026-10-28 09:52:56
[2026-10-28 09:52:56,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:52:56,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:52:56,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:52:56,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:52:56,667.667 INFO    ] time= 28/10/2026 09:52:56
[2026-10-28 09:52:56,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:52:56,748.748 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:52:56,905.905 INFO    ] No existing commands found in stream
[2026-10-28 09:53:01,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:53:01,927.927 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 09:53:05,718.718 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:53:05,720.720 INFO    ] Checking for system updates...
[2026-10-28 09:53:05,756.756 INFO    ] 200
[2026-10-28 09:53:05,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:53:05,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:53:05,814.814 INFO    ] No update needed
[2026-10-28 09:53:05,817.817 INFO    ] Checking for camera pi updates...
[2026-10-28 09:53:05,851.851 INFO    ] 200
[2026-10-28 09:53:05,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:53:05,896.896 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:53:05,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:53:05,984.984 INFO    ] No camera update needed
[2026-10-28 09:53:05,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:53:05,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:53:05,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:53:06,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:53:08,041.041 INFO    ] ================================================
[2026-10-28 09:53:08,056.056 INFO    ] Launching Daemon at Wed Oct 28 09:53:08 IST 2026
[2026-10-28 09:53:08,067.067 INFO    ] ================================================
[2026-10-28 09:53:08,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:53:08
[2026-10-28 09:53:09,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:53:09,640.640 INFO    ] Initializing speech engine...
[2026-10-28 09:53:09,647.647 INFO    ] 2026-10-28 09:53:09
[2026-10-28 09:53:09,908.908 INFO    ] 2026-10-28 09:53:09
[2026-10-28 09:53:09,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:53:10,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:53:10,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:53:10,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:53:10,499.499 INFO    ] time= 28/10/2026 09:53:10
[2026-10-28 09:53:10,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:53:10,536.536 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:53:10,667.667 INFO    ] No existing commands found in stream
[2026-10-28 09:53:15,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:53:15,707.707 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 09:53:19,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:53:19,762.762 INFO    ] Checking for system updates...
[2026-10-28 09:53:19,799.799 INFO    ] 200
[2026-10-28 09:53:19,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:53:19,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:53:19,863.863 INFO    ] No update needed
[2026-10-28 09:53:19,866.866 INFO    ] Checking for camera pi updates...
[2026-10-28 09:53:19,904.904 INFO    ] 200
[2026-10-28 09:53:19,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:53:19,952.952 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:53:20,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:53:20,040.040 INFO    ] No camera update needed
[2026-10-28 09:53:20,042.042 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:53:20,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:53:20,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:53:20,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:53:22,094.094 INFO    ] ================================================
[2026-10-28 09:53:22,109.109 INFO    ] Launching Daemon at Wed Oct 28 09:53:22 IST 2026
[2026-10-28 09:53:22,120.120 INFO    ] ================================================
[2026-10-28 09:53:22,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:53:22
[2026-10-28 09:53:23,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:53:23,538.538 INFO    ] Initializing speech engine...
[2026-10-28 09:53:23,547.547 INFO    ] 2026-10-28 09:53:23
[2026-10-28 09:53:23,796.796 INFO    ] 2026-10-28 09:53:23
[2026-10-28 09:53:23,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:53:24,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:53:24,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:53:24,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:53:24,365.365 INFO    ] time= 28/10/2026 09:53:24
[2026-10-28 09:53:24,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:53:24,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:53:24,514.514 INFO    ] No existing commands found in stream
[2026-10-28 09:53:29,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:53:29,533.533 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 09:53:30,564.564 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:53:30,566.566 INFO    ] Checking for system updates...
[2026-10-28 09:53:30,609.609 INFO    ] 200
[2026-10-28 09:53:30,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:53:30,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:53:30,670.670 INFO    ] No update needed
[2026-10-28 09:53:30,672.672 INFO    ] Checking for camera pi updates...
[2026-10-28 09:53:30,707.707 INFO    ] 200
[2026-10-28 09:53:30,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:53:30,757.757 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:53:30,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:53:30,856.856 INFO    ] No camera update needed
[2026-10-28 09:53:30,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:53:30,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:53:30,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:53:30,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:53:32,917.917 INFO    ] ================================================
[2026-10-28 09:53:32,932.932 INFO    ] Launching Daemon at Wed Oct 28 09:53:32 IST 2026
[2026-10-28 09:53:32,942.942 INFO    ] ================================================
[2026-10-28 09:53:33,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:53:33
[2026-10-28 09:53:34,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:53:34,401.401 INFO    ] Initializing speech engine...
[2026-10-28 09:53:34,408.408 INFO    ] 2026-10-28 09:53:34
[2026-10-28 09:53:34,668.668 INFO    ] 2026-10-28 09:53:34
[2026-10-28 09:53:34,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:53:34,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:53:34,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:53:35,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:53:35,286.286 INFO    ] time= 28/10/2026 09:53:35
[2026-10-28 09:53:35,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:53:35,316.316 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:53:35,458.458 INFO    ] No existing commands found in stream
[2026-10-28 09:53:40,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:53:40,478.478 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 09:53:41,198.198 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:53:41,201.201 INFO    ] Checking for system updates...
[2026-10-28 09:53:41,245.245 INFO    ] 200
[2026-10-28 09:53:41,248.248 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 09:53:41,251.251 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-28 09:53:41,253.253 INFO    ] Checking for camera pi updates...
[2026-10-28 09:53:41,301.301 INFO    ] 200
[2026-10-28 09:53:41,304.304 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 09:53:41,307.307 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-28 09:53:41,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:53:41,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:53:41,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:53:41,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:53:43,366.366 INFO    ] ================================================
[2026-10-28 09:53:43,381.381 INFO    ] Launching Daemon at Wed Oct 28 09:53:43 IST 2026
[2026-10-28 09:53:43,392.392 INFO    ] ================================================
[2026-10-28 09:53:44,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:53:44
[2026-10-28 09:53:44,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:53:44,985.985 INFO    ] Initializing speech engine...
[2026-10-28 09:53:44,996.996 INFO    ] 2026-10-28 09:53:44
[2026-10-28 09:53:45,240.240 INFO    ] 2026-10-28 09:53:45
[2026-10-28 09:53:45,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:53:45,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:53:45,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:53:45,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:53:45,848.848 INFO    ] time= 28/10/2026 09:53:45
[2026-10-28 09:53:45,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:53:45,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:53:46,048.048 INFO    ] No existing commands found in stream
[2026-10-28 09:53:51,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:53:51,075.075 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-28 09:53:52,696.696 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:53:52,698.698 INFO    ] Checking for system updates...
[2026-10-28 09:53:52,738.738 INFO    ] 200
[2026-10-28 09:53:52,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:53:52,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:53:52,800.800 INFO    ] No update needed
[2026-10-28 09:53:52,803.803 INFO    ] Checking for camera pi updates...
[2026-10-28 09:53:52,838.838 INFO    ] 200
[2026-10-28 09:53:52,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:53:52,882.882 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:53:52,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:53:52,980.980 INFO    ] No camera update needed
[2026-10-28 09:53:52,983.983 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:53:52,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:53:52,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:53:52,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:53:55,040.040 INFO    ] ================================================
[2026-10-28 09:53:55,056.056 INFO    ] Launching Daemon at Wed Oct 28 09:53:55 IST 2026
[2026-10-28 09:53:55,067.067 INFO    ] ================================================
[2026-10-28 09:53:55,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:53:55
[2026-10-28 09:53:56,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:53:56,522.522 INFO    ] Initializing speech engine...
[2026-10-28 09:53:56,548.548 INFO    ] 2026-10-28 09:53:56
[2026-10-28 09:53:56,802.802 INFO    ] 2026-10-28 09:53:56
[2026-10-28 09:53:56,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:53:57,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:53:57,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:53:57,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:53:57,361.361 INFO    ] time= 28/10/2026 09:53:57
[2026-10-28 09:53:57,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:53:57,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:53:57,516.516 INFO    ] No existing commands found in stream
[2026-10-28 09:54:02,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:54:02,529.529 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-28 09:54:03,757.757 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:54:03,759.759 INFO    ] Checking for system updates...
[2026-10-28 09:54:03,795.795 INFO    ] 200
[2026-10-28 09:54:03,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:54:03,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:54:03,854.854 INFO    ] No update needed
[2026-10-28 09:54:03,857.857 INFO    ] Checking for camera pi updates...
[2026-10-28 09:54:03,890.890 INFO    ] 200
[2026-10-28 09:54:03,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:54:03,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:54:04,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:54:04,015.015 INFO    ] No camera update needed
[2026-10-28 09:54:04,018.018 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:54:04,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:54:04,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:54:04,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:54:06,074.074 INFO    ] ================================================
[2026-10-28 09:54:06,089.089 INFO    ] Launching Daemon at Wed Oct 28 09:54:06 IST 2026
[2026-10-28 09:54:06,100.100 INFO    ] ================================================
[2026-10-28 09:54:06,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:54:06
[2026-10-28 09:54:07,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:54:07,586.586 INFO    ] Initializing speech engine...
[2026-10-28 09:54:07,599.599 INFO    ] 2026-10-28 09:54:07
[2026-10-28 09:54:07,862.862 INFO    ] 2026-10-28 09:54:07
[2026-10-28 09:54:07,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:54:08,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:54:08,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:54:08,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:54:08,436.436 INFO    ] time= 28/10/2026 09:54:08
[2026-10-28 09:54:08,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:54:08,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:54:08,598.598 INFO    ] No existing commands found in stream
[2026-10-28 09:54:13,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:54:13,631.631 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-28 09:54:15,401.401 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:54:15,403.403 INFO    ] Checking for system updates...
[2026-10-28 09:54:15,442.442 INFO    ] 200
[2026-10-28 09:54:15,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:54:15,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:54:15,499.499 INFO    ] No update needed
[2026-10-28 09:54:15,502.502 INFO    ] Checking for camera pi updates...
[2026-10-28 09:54:15,538.538 INFO    ] 200
[2026-10-28 09:54:15,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:54:15,582.582 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:54:15,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:54:15,779.779 INFO    ] No camera update needed
[2026-10-28 09:54:15,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:54:15,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:54:15,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:54:15,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:54:17,836.836 INFO    ] ================================================
[2026-10-28 09:54:17,851.851 INFO    ] Launching Daemon at Wed Oct 28 09:54:17 IST 2026
[2026-10-28 09:54:17,861.861 INFO    ] ================================================
[2026-10-28 09:54:18,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:54:18
[2026-10-28 09:54:19,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:54:19,324.324 INFO    ] Initializing speech engine...
[2026-10-28 09:54:19,335.335 INFO    ] 2026-10-28 09:54:19
[2026-10-28 09:54:19,643.643 INFO    ] 2026-10-28 09:54:19
[2026-10-28 09:54:19,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:54:20,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:54:20,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:54:20,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:54:20,359.359 INFO    ] time= 28/10/2026 09:54:20
[2026-10-28 09:54:20,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:54:20,453.453 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:54:20,565.565 INFO    ] No existing commands found in stream
[2026-10-28 09:54:25,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:54:25,581.581 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 09:54:28,817.817 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:54:28,820.820 INFO    ] Checking for system updates...
[2026-10-28 09:54:28,856.856 INFO    ] 200
[2026-10-28 09:54:28,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:54:28,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:54:28,922.922 INFO    ] No update needed
[2026-10-28 09:54:28,925.925 INFO    ] Checking for camera pi updates...
[2026-10-28 09:54:28,963.963 INFO    ] 200
[2026-10-28 09:54:28,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:54:29,007.007 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:54:29,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:54:29,101.101 INFO    ] No camera update needed
[2026-10-28 09:54:29,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:54:29,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:54:29,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:54:29,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:54:31,160.160 INFO    ] ================================================
[2026-10-28 09:54:31,176.176 INFO    ] Launching Daemon at Wed Oct 28 09:54:31 IST 2026
[2026-10-28 09:54:31,186.186 INFO    ] ================================================
[2026-10-28 09:54:31,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:54:31
[2026-10-28 09:54:32,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:54:32,689.689 INFO    ] Initializing speech engine...
[2026-10-28 09:54:32,708.708 INFO    ] 2026-10-28 09:54:32
[2026-10-28 09:54:32,958.958 INFO    ] 2026-10-28 09:54:32
[2026-10-28 09:54:32,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:54:33,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:54:33,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:54:33,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:54:33,528.528 INFO    ] time= 28/10/2026 09:54:33
[2026-10-28 09:54:33,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:54:33,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:54:33,687.687 INFO    ] No existing commands found in stream
[2026-10-28 09:54:38,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:54:38,702.702 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-28 09:54:41,334.334 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:54:41,337.337 INFO    ] Checking for system updates...
[2026-10-28 09:54:41,372.372 INFO    ] 200
[2026-10-28 09:54:41,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:54:41,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:54:41,429.429 INFO    ] No update needed
[2026-10-28 09:54:41,431.431 INFO    ] Checking for camera pi updates...
[2026-10-28 09:54:41,464.464 INFO    ] 200
[2026-10-28 09:54:41,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:54:41,507.507 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:54:41,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:54:41,586.586 INFO    ] No camera update needed
[2026-10-28 09:54:41,588.588 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:54:41,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:54:41,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:54:41,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:54:43,640.640 INFO    ] ================================================
[2026-10-28 09:54:43,656.656 INFO    ] Launching Daemon at Wed Oct 28 09:54:43 IST 2026
[2026-10-28 09:54:43,667.667 INFO    ] ================================================
[2026-10-28 09:54:44,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:54:44
[2026-10-28 09:54:44,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:54:45,093.093 INFO    ] Initializing speech engine...
[2026-10-28 09:54:45,102.102 INFO    ] 2026-10-28 09:54:45
[2026-10-28 09:54:45,351.351 INFO    ] 2026-10-28 09:54:45
[2026-10-28 09:54:45,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:54:45,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:54:45,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:54:45,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:54:45,926.926 INFO    ] time= 28/10/2026 09:54:45
[2026-10-28 09:54:45,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:54:45,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:54:46,103.103 INFO    ] No existing commands found in stream
[2026-10-28 09:54:51,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:54:51,143.143 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-28 09:54:53,496.496 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:54:53,499.499 INFO    ] Checking for system updates...
[2026-10-28 09:54:53,536.536 INFO    ] 200
[2026-10-28 09:54:53,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:54:53,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:54:53,602.602 INFO    ] No update needed
[2026-10-28 09:54:53,605.605 INFO    ] Checking for camera pi updates...
[2026-10-28 09:54:53,639.639 INFO    ] 200
[2026-10-28 09:54:53,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:54:53,688.688 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:54:53,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:54:53,777.777 INFO    ] No camera update needed
[2026-10-28 09:54:53,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:54:53,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:54:53,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:54:53,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:54:55,836.836 INFO    ] ================================================
[2026-10-28 09:54:55,852.852 INFO    ] Launching Daemon at Wed Oct 28 09:54:55 IST 2026
[2026-10-28 09:54:55,863.863 INFO    ] ================================================
[2026-10-28 09:54:56,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:54:56
[2026-10-28 09:54:57,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:54:57,492.492 INFO    ] Initializing speech engine...
[2026-10-28 09:54:57,501.501 INFO    ] 2026-10-28 09:54:57
[2026-10-28 09:54:57,791.791 INFO    ] 2026-10-28 09:54:57
[2026-10-28 09:54:57,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:54:58,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:54:58,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:54:58,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:54:58,391.391 INFO    ] time= 28/10/2026 09:54:58
[2026-10-28 09:54:58,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:54:58,409.409 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:54:58,580.580 INFO    ] No existing commands found in stream
[2026-10-28 09:55:03,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:55:03,616.616 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-28 09:55:07,680.680 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:55:07,683.683 INFO    ] Checking for system updates...
[2026-10-28 09:55:07,720.720 INFO    ] 200
[2026-10-28 09:55:07,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:55:07,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:55:07,780.780 INFO    ] No update needed
[2026-10-28 09:55:07,782.782 INFO    ] Checking for camera pi updates...
[2026-10-28 09:55:07,820.820 INFO    ] 200
[2026-10-28 09:55:07,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:55:07,868.868 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:55:07,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:55:07,964.964 INFO    ] No camera update needed
[2026-10-28 09:55:07,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:55:07,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:55:07,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:55:07,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:55:10,020.020 INFO    ] ================================================
[2026-10-28 09:55:10,035.035 INFO    ] Launching Daemon at Wed Oct 28 09:55:10 IST 2026
[2026-10-28 09:55:10,046.046 INFO    ] ================================================
[2026-10-28 09:55:10,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:55:10
[2026-10-28 09:55:11,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:55:11,667.667 INFO    ] Initializing speech engine...
[2026-10-28 09:55:11,678.678 INFO    ] 2026-10-28 09:55:11
[2026-10-28 09:55:11,958.958 INFO    ] 2026-10-28 09:55:11
[2026-10-28 09:55:12,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:55:12,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:55:12,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:55:12,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:55:12,511.511 INFO    ] time= 28/10/2026 09:55:12
[2026-10-28 09:55:12,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:55:12,559.559 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:55:12,690.690 INFO    ] No existing commands found in stream
[2026-10-28 09:55:17,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:55:17,724.724 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 09:55:21,040.040 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:55:21,043.043 INFO    ] Checking for system updates...
[2026-10-28 09:55:21,084.084 INFO    ] 200
[2026-10-28 09:55:21,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:55:21,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:55:21,142.142 INFO    ] No update needed
[2026-10-28 09:55:21,145.145 INFO    ] Checking for camera pi updates...
[2026-10-28 09:55:21,180.180 INFO    ] 200
[2026-10-28 09:55:21,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:55:21,224.224 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:55:21,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:55:21,308.308 INFO    ] No camera update needed
[2026-10-28 09:55:21,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:55:21,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:55:21,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:55:21,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:55:23,367.367 INFO    ] ================================================
[2026-10-28 09:55:23,382.382 INFO    ] Launching Daemon at Wed Oct 28 09:55:23 IST 2026
[2026-10-28 09:55:23,393.393 INFO    ] ================================================
[2026-10-28 09:55:24,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:55:24
[2026-10-28 09:55:24,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:55:24,959.959 INFO    ] Initializing speech engine...
[2026-10-28 09:55:24,977.977 INFO    ] 2026-10-28 09:55:24
[2026-10-28 09:55:25,228.228 INFO    ] 2026-10-28 09:55:25
[2026-10-28 09:55:25,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:55:25,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:55:25,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:55:25,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:55:25,781.781 INFO    ] time= 28/10/2026 09:55:25
[2026-10-28 09:55:25,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:55:25,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:55:25,933.933 INFO    ] No existing commands found in stream
[2026-10-28 09:55:30,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:55:30,964.964 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-28 09:55:32,664.664 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:55:32,667.667 INFO    ] Checking for system updates...
[2026-10-28 09:55:32,703.703 INFO    ] 200
[2026-10-28 09:55:32,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:55:32,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:55:32,759.759 INFO    ] No update needed
[2026-10-28 09:55:32,762.762 INFO    ] Checking for camera pi updates...
[2026-10-28 09:55:32,795.795 INFO    ] 200
[2026-10-28 09:55:32,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:55:32,838.838 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:55:32,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:55:32,919.919 INFO    ] No camera update needed
[2026-10-28 09:55:32,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:55:32,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:55:32,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:55:32,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:55:34,975.975 INFO    ] ================================================
[2026-10-28 09:55:34,990.990 INFO    ] Launching Daemon at Wed Oct 28 09:55:34 IST 2026
[2026-10-28 09:55:35,001.001 INFO    ] ================================================
[2026-10-28 09:55:35,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:55:35
[2026-10-28 09:55:36,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:55:36,465.465 INFO    ] Initializing speech engine...
[2026-10-28 09:55:36,470.470 INFO    ] 2026-10-28 09:55:36
[2026-10-28 09:55:36,722.722 INFO    ] 2026-10-28 09:55:36
[2026-10-28 09:55:36,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:55:37,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:55:37,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:55:37,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:55:37,276.276 INFO    ] time= 28/10/2026 09:55:37
[2026-10-28 09:55:37,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:55:37,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:55:37,433.433 INFO    ] No existing commands found in stream
[2026-10-28 09:55:42,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:55:42,458.458 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-28 09:55:45,100.100 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:55:45,103.103 INFO    ] Checking for system updates...
[2026-10-28 09:55:45,139.139 INFO    ] 200
[2026-10-28 09:55:45,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:55:45,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:55:45,197.197 INFO    ] No update needed
[2026-10-28 09:55:45,199.199 INFO    ] Checking for camera pi updates...
[2026-10-28 09:55:45,236.236 INFO    ] 200
[2026-10-28 09:55:45,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:55:45,284.284 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:55:45,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:55:45,366.366 INFO    ] No camera update needed
[2026-10-28 09:55:45,368.368 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:55:45,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:55:45,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:55:45,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:55:47,422.422 INFO    ] ================================================
[2026-10-28 09:55:47,437.437 INFO    ] Launching Daemon at Wed Oct 28 09:55:47 IST 2026
[2026-10-28 09:55:47,448.448 INFO    ] ================================================
[2026-10-28 09:55:48,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:55:48
[2026-10-28 09:55:48,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:55:48,892.892 INFO    ] Initializing speech engine...
[2026-10-28 09:55:48,908.908 INFO    ] 2026-10-28 09:55:48
[2026-10-28 09:55:49,193.193 INFO    ] 2026-10-28 09:55:49
[2026-10-28 09:55:49,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:55:49,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:55:49,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:55:49,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:55:49,767.767 INFO    ] time= 28/10/2026 09:55:49
[2026-10-28 09:55:49,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:55:49,811.811 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:55:49,961.961 INFO    ] No existing commands found in stream
[2026-10-28 09:55:54,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:55:54,987.987 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-28 09:55:59,490.490 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:55:59,494.494 INFO    ] Checking for system updates...
[2026-10-28 09:55:59,530.530 INFO    ] 200
[2026-10-28 09:55:59,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:55:59,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:55:59,589.589 INFO    ] No update needed
[2026-10-28 09:55:59,592.592 INFO    ] Checking for camera pi updates...
[2026-10-28 09:55:59,641.641 INFO    ] 200
[2026-10-28 09:55:59,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:55:59,685.685 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:55:59,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:55:59,787.787 INFO    ] No camera update needed
[2026-10-28 09:55:59,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:55:59,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:55:59,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:55:59,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:56:01,856.856 INFO    ] ================================================
[2026-10-28 09:56:01,903.903 INFO    ] Launching Daemon at Wed Oct 28 09:56:01 IST 2026
[2026-10-28 09:56:01,917.917 INFO    ] ================================================
[2026-10-28 09:56:02,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:56:02
[2026-10-28 09:56:03,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:56:03,612.612 INFO    ] Initializing speech engine...
[2026-10-28 09:56:03,621.621 INFO    ] 2026-10-28 09:56:03
[2026-10-28 09:56:03,904.904 INFO    ] 2026-10-28 09:56:03
[2026-10-28 09:56:03,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:56:04,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:56:04,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:56:04,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:56:04,465.465 INFO    ] time= 28/10/2026 09:56:04
[2026-10-28 09:56:04,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:56:04,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:56:04,624.624 INFO    ] No existing commands found in stream
[2026-10-28 09:56:09,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:56:09,651.651 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 09:56:12,942.942 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:56:12,944.944 INFO    ] Checking for system updates...
[2026-10-28 09:56:12,980.980 INFO    ] 200
[2026-10-28 09:56:12,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:56:13,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:56:13,043.043 INFO    ] No update needed
[2026-10-28 09:56:13,046.046 INFO    ] Checking for camera pi updates...
[2026-10-28 09:56:13,082.082 INFO    ] 200
[2026-10-28 09:56:13,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:56:13,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:56:13,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:56:13,209.209 INFO    ] No camera update needed
[2026-10-28 09:56:13,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:56:13,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:56:13,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:56:13,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:56:15,264.264 INFO    ] ================================================
[2026-10-28 09:56:15,280.280 INFO    ] Launching Daemon at Wed Oct 28 09:56:15 IST 2026
[2026-10-28 09:56:15,292.292 INFO    ] ================================================
[2026-10-28 09:56:15,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:56:15
[2026-10-28 09:56:16,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:56:16,939.939 INFO    ] Initializing speech engine...
[2026-10-28 09:56:16,948.948 INFO    ] 2026-10-28 09:56:16
[2026-10-28 09:56:17,228.228 INFO    ] 2026-10-28 09:56:17
[2026-10-28 09:56:17,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:56:17,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:56:17,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:56:17,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:56:17,971.971 INFO    ] time= 28/10/2026 09:56:17
[2026-10-28 09:56:18,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:56:18,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:56:18,239.239 INFO    ] No existing commands found in stream
[2026-10-28 09:56:23,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:56:23,259.259 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 09:56:26,969.969 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:56:26,972.972 INFO    ] Checking for system updates...
[2026-10-28 09:56:27,009.009 INFO    ] 200
[2026-10-28 09:56:27,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:56:27,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:56:27,069.069 INFO    ] No update needed
[2026-10-28 09:56:27,072.072 INFO    ] Checking for camera pi updates...
[2026-10-28 09:56:27,111.111 INFO    ] 200
[2026-10-28 09:56:27,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:56:27,164.164 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:56:27,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:56:27,352.352 INFO    ] No camera update needed
[2026-10-28 09:56:27,355.355 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:56:27,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:56:27,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:56:27,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:56:29,411.411 INFO    ] ================================================
[2026-10-28 09:56:29,427.427 INFO    ] Launching Daemon at Wed Oct 28 09:56:29 IST 2026
[2026-10-28 09:56:29,438.438 INFO    ] ================================================
[2026-10-28 09:56:30,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:56:30
[2026-10-28 09:56:30,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:56:30,896.896 INFO    ] Initializing speech engine...
[2026-10-28 09:56:30,905.905 INFO    ] 2026-10-28 09:56:30
[2026-10-28 09:56:31,167.167 INFO    ] 2026-10-28 09:56:31
[2026-10-28 09:56:31,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:56:31,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:56:31,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:56:31,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:56:31,713.713 INFO    ] time= 28/10/2026 09:56:31
[2026-10-28 09:56:31,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:56:31,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:56:31,899.899 INFO    ] No existing commands found in stream
[2026-10-28 09:56:36,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:56:36,939.939 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-28 09:56:39,226.226 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:56:39,229.229 INFO    ] Checking for system updates...
[2026-10-28 09:56:39,265.265 INFO    ] 200
[2026-10-28 09:56:39,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:56:39,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:56:39,321.321 INFO    ] No update needed
[2026-10-28 09:56:39,324.324 INFO    ] Checking for camera pi updates...
[2026-10-28 09:56:39,358.358 INFO    ] 200
[2026-10-28 09:56:39,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:56:39,401.401 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:56:39,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:56:39,467.467 INFO    ] No camera update needed
[2026-10-28 09:56:39,470.470 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:56:39,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:56:39,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:56:39,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:56:41,524.524 INFO    ] ================================================
[2026-10-28 09:56:41,539.539 INFO    ] Launching Daemon at Wed Oct 28 09:56:41 IST 2026
[2026-10-28 09:56:41,551.551 INFO    ] ================================================
[2026-10-28 09:56:42,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:56:42
[2026-10-28 09:56:42,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:56:43,020.020 INFO    ] Initializing speech engine...
[2026-10-28 09:56:43,027.027 INFO    ] 2026-10-28 09:56:43
[2026-10-28 09:56:43,291.291 INFO    ] 2026-10-28 09:56:43
[2026-10-28 09:56:43,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:56:43,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:56:43,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:56:43,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:56:43,848.848 INFO    ] time= 28/10/2026 09:56:43
[2026-10-28 09:56:43,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:56:43,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:56:44,006.006 INFO    ] No existing commands found in stream
[2026-10-28 09:56:49,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:56:49,039.039 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-28 09:56:50,785.785 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:56:50,787.787 INFO    ] Checking for system updates...
[2026-10-28 09:56:50,826.826 INFO    ] 200
[2026-10-28 09:56:50,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:56:50,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:56:50,884.884 INFO    ] No update needed
[2026-10-28 09:56:50,887.887 INFO    ] Checking for camera pi updates...
[2026-10-28 09:56:50,925.925 INFO    ] 200
[2026-10-28 09:56:50,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:56:50,973.973 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:56:51,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:56:51,050.050 INFO    ] No camera update needed
[2026-10-28 09:56:51,052.052 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:56:51,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:56:51,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:56:51,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:56:53,105.105 INFO    ] ================================================
[2026-10-28 09:56:53,121.121 INFO    ] Launching Daemon at Wed Oct 28 09:56:53 IST 2026
[2026-10-28 09:56:53,132.132 INFO    ] ================================================
[2026-10-28 09:56:53,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:56:53
[2026-10-28 09:56:54,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:56:54,558.558 INFO    ] Initializing speech engine...
[2026-10-28 09:56:54,563.563 INFO    ] 2026-10-28 09:56:54
[2026-10-28 09:56:54,859.859 INFO    ] 2026-10-28 09:56:54
[2026-10-28 09:56:54,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:56:55,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:56:55,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:56:55,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:56:55,506.506 INFO    ] time= 28/10/2026 09:56:55
[2026-10-28 09:56:55,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:56:55,529.529 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:56:55,655.655 INFO    ] No existing commands found in stream
[2026-10-28 09:57:00,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:57:00,688.688 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-28 09:57:02,204.204 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:57:02,208.208 INFO    ] Checking for system updates...
[2026-10-28 09:57:02,278.278 INFO    ] 200
[2026-10-28 09:57:02,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:57:02,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:57:02,385.385 INFO    ] No update needed
[2026-10-28 09:57:02,388.388 INFO    ] Checking for camera pi updates...
[2026-10-28 09:57:02,429.429 INFO    ] 200
[2026-10-28 09:57:02,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:57:02,478.478 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:57:02,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:57:02,530.530 INFO    ] No camera update needed
[2026-10-28 09:57:02,533.533 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:57:02,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:57:02,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:57:02,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:57:04,591.591 INFO    ] ================================================
[2026-10-28 09:57:04,607.607 INFO    ] Launching Daemon at Wed Oct 28 09:57:04 IST 2026
[2026-10-28 09:57:04,618.618 INFO    ] ================================================
[2026-10-28 09:57:05,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:57:05
[2026-10-28 09:57:05,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:57:06,017.017 INFO    ] Initializing speech engine...
[2026-10-28 09:57:06,038.038 INFO    ] 2026-10-28 09:57:06
[2026-10-28 09:57:06,299.299 INFO    ] 2026-10-28 09:57:06
[2026-10-28 09:57:06,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:57:06,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:57:06,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:57:06,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:57:06,882.882 INFO    ] time= 28/10/2026 09:57:06
[2026-10-28 09:57:06,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:57:06,918.918 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:57:07,082.082 INFO    ] No existing commands found in stream
[2026-10-28 09:57:12,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:57:12,115.115 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 09:57:15,566.566 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:57:15,569.569 INFO    ] Checking for system updates...
[2026-10-28 09:57:15,608.608 INFO    ] 200
[2026-10-28 09:57:15,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:57:15,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:57:15,665.665 INFO    ] No update needed
[2026-10-28 09:57:15,668.668 INFO    ] Checking for camera pi updates...
[2026-10-28 09:57:15,705.705 INFO    ] 200
[2026-10-28 09:57:15,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:57:15,753.753 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:57:15,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:57:15,859.859 INFO    ] No camera update needed
[2026-10-28 09:57:15,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:57:15,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:57:15,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:57:15,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:57:17,917.917 INFO    ] ================================================
[2026-10-28 09:57:17,932.932 INFO    ] Launching Daemon at Wed Oct 28 09:57:17 IST 2026
[2026-10-28 09:57:17,943.943 INFO    ] ================================================
[2026-10-28 09:57:18,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:57:18
[2026-10-28 09:57:19,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:57:19,370.370 INFO    ] Initializing speech engine...
[2026-10-28 09:57:19,383.383 INFO    ] 2026-10-28 09:57:19
[2026-10-28 09:57:19,633.633 INFO    ] 2026-10-28 09:57:19
[2026-10-28 09:57:19,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:57:20,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:57:20,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:57:20,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:57:20,270.270 INFO    ] time= 28/10/2026 09:57:20
[2026-10-28 09:57:20,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:57:20,340.340 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:57:20,488.488 INFO    ] No existing commands found in stream
[2026-10-28 09:57:25,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:57:25,520.520 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-28 09:57:26,482.482 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:57:26,485.485 INFO    ] Checking for system updates...
[2026-10-28 09:57:26,523.523 INFO    ] 200
[2026-10-28 09:57:26,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:57:26,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:57:26,582.582 INFO    ] No update needed
[2026-10-28 09:57:26,585.585 INFO    ] Checking for camera pi updates...
[2026-10-28 09:57:26,620.620 INFO    ] 200
[2026-10-28 09:57:26,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:57:26,664.664 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:57:26,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:57:26,753.753 INFO    ] No camera update needed
[2026-10-28 09:57:26,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:57:26,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:57:26,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:57:26,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:57:28,813.813 INFO    ] ================================================
[2026-10-28 09:57:28,828.828 INFO    ] Launching Daemon at Wed Oct 28 09:57:28 IST 2026
[2026-10-28 09:57:28,839.839 INFO    ] ================================================
[2026-10-28 09:57:29,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:57:29
[2026-10-28 09:57:30,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:57:30,304.304 INFO    ] Initializing speech engine...
[2026-10-28 09:57:30,314.314 INFO    ] 2026-10-28 09:57:30
[2026-10-28 09:57:30,563.563 INFO    ] 2026-10-28 09:57:30
[2026-10-28 09:57:30,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:57:30,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:57:30,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:57:31,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:57:31,119.119 INFO    ] time= 28/10/2026 09:57:31
[2026-10-28 09:57:31,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:57:31,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:57:31,267.267 INFO    ] No existing commands found in stream
[2026-10-28 09:57:36,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:57:36,285.285 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 09:57:38,288.288 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:57:38,291.291 INFO    ] Checking for system updates...
[2026-10-28 09:57:38,327.327 INFO    ] 200
[2026-10-28 09:57:38,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:57:38,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:57:38,385.385 INFO    ] No update needed
[2026-10-28 09:57:38,388.388 INFO    ] Checking for camera pi updates...
[2026-10-28 09:57:38,421.421 INFO    ] 200
[2026-10-28 09:57:38,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:57:38,464.464 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:57:38,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:57:38,518.518 INFO    ] No camera update needed
[2026-10-28 09:57:38,520.520 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:57:38,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:57:38,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:57:38,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:57:40,576.576 INFO    ] ================================================
[2026-10-28 09:57:40,591.591 INFO    ] Launching Daemon at Wed Oct 28 09:57:40 IST 2026
[2026-10-28 09:57:40,602.602 INFO    ] ================================================
[2026-10-28 09:57:41,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:57:41
[2026-10-28 09:57:41,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:57:42,049.049 INFO    ] Initializing speech engine...
[2026-10-28 09:57:42,057.057 INFO    ] 2026-10-28 09:57:42
[2026-10-28 09:57:42,320.320 INFO    ] 2026-10-28 09:57:42
[2026-10-28 09:57:42,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:57:42,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:57:42,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:57:42,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:57:42,863.863 INFO    ] time= 28/10/2026 09:57:42
[2026-10-28 09:57:42,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:57:42,889.889 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:57:43,024.024 INFO    ] No existing commands found in stream
[2026-10-28 09:57:48,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:57:48,057.057 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-28 09:57:50,865.865 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 09:57:50,867.867 INFO    ] Checking for system updates...
[2026-10-28 09:57:50,903.903 INFO    ] 200
[2026-10-28 09:57:50,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:57:50,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:57:50,968.968 INFO    ] No update needed
[2026-10-28 09:57:50,971.971 INFO    ] Checking for camera pi updates...
[2026-10-28 09:57:51,004.004 INFO    ] 200
[2026-10-28 09:57:51,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:57:51,052.052 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:57:51,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:57:51,163.163 INFO    ] No camera update needed
[2026-10-28 09:57:51,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:57:51,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:57:51,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:57:51,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:57:53,221.221 INFO    ] ================================================
[2026-10-28 09:57:53,237.237 INFO    ] Launching Daemon at Wed Oct 28 09:57:53 IST 2026
[2026-10-28 09:57:53,248.248 INFO    ] ================================================
[2026-10-28 09:57:53,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:57:53
[2026-10-28 09:57:54,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:57:54,670.670 INFO    ] Initializing speech engine...
[2026-10-28 09:57:54,694.694 INFO    ] 2026-10-28 09:57:54
[2026-10-28 09:57:54,980.980 INFO    ] 2026-10-28 09:57:54
[2026-10-28 09:57:55,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:57:55,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:57:55,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:57:55,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:57:55,555.555 INFO    ] time= 28/10/2026 09:57:55
[2026-10-28 09:57:55,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:57:55,604.604 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:57:55,788.788 INFO    ] No existing commands found in stream
[2026-10-28 09:58:00,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:58:00,818.818 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-28 09:58:04,735.735 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:58:04,738.738 INFO    ] Checking for system updates...
[2026-10-28 09:58:04,775.775 INFO    ] 200
[2026-10-28 09:58:04,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:58:04,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:58:04,835.835 INFO    ] No update needed
[2026-10-28 09:58:04,838.838 INFO    ] Checking for camera pi updates...
[2026-10-28 09:58:04,874.874 INFO    ] 200
[2026-10-28 09:58:04,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:58:04,918.918 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:58:05,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:58:05,021.021 INFO    ] No camera update needed
[2026-10-28 09:58:05,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:58:05,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:58:05,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:58:05,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:58:07,075.075 INFO    ] ================================================
[2026-10-28 09:58:07,090.090 INFO    ] Launching Daemon at Wed Oct 28 09:58:07 IST 2026
[2026-10-28 09:58:07,101.101 INFO    ] ================================================
[2026-10-28 09:58:07,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:58:07
[2026-10-28 09:58:08,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:58:08,522.522 INFO    ] Initializing speech engine...
[2026-10-28 09:58:08,531.531 INFO    ] 2026-10-28 09:58:08
[2026-10-28 09:58:08,783.783 INFO    ] 2026-10-28 09:58:08
[2026-10-28 09:58:08,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:58:09,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:58:09,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:58:09,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:58:09,332.332 INFO    ] time= 28/10/2026 09:58:09
[2026-10-28 09:58:09,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:58:09,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:58:09,560.560 INFO    ] No existing commands found in stream
[2026-10-28 09:58:14,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:58:14,589.589 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-28 09:58:16,325.325 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 09:58:16,328.328 INFO    ] Checking for system updates...
[2026-10-28 09:58:16,364.364 INFO    ] 200
[2026-10-28 09:58:16,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:58:16,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:58:16,420.420 INFO    ] No update needed
[2026-10-28 09:58:16,423.423 INFO    ] Checking for camera pi updates...
[2026-10-28 09:58:16,456.456 INFO    ] 200
[2026-10-28 09:58:16,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:58:16,498.498 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:58:16,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:58:16,587.587 INFO    ] No camera update needed
[2026-10-28 09:58:16,589.589 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:58:16,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:58:16,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:58:16,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:58:18,641.641 INFO    ] ================================================
[2026-10-28 09:58:18,656.656 INFO    ] Launching Daemon at Wed Oct 28 09:58:18 IST 2026
[2026-10-28 09:58:18,667.667 INFO    ] ================================================
[2026-10-28 09:58:19,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:58:19
[2026-10-28 09:58:19,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:58:20,275.275 INFO    ] Initializing speech engine...
[2026-10-28 09:58:20,305.305 INFO    ] 2026-10-28 09:58:20
[2026-10-28 09:58:20,601.601 INFO    ] 2026-10-28 09:58:20
[2026-10-28 09:58:20,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:58:20,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:58:21,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:58:21,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:58:21,287.287 INFO    ] time= 28/10/2026 09:58:21
[2026-10-28 09:58:21,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:58:21,390.390 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:58:21,544.544 INFO    ] No existing commands found in stream
[2026-10-28 09:58:26,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:58:26,566.566 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 09:58:29,883.883 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:58:29,886.886 INFO    ] Checking for system updates...
[2026-10-28 09:58:29,928.928 INFO    ] 200
[2026-10-28 09:58:29,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:58:29,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:58:29,991.991 INFO    ] No update needed
[2026-10-28 09:58:29,993.993 INFO    ] Checking for camera pi updates...
[2026-10-28 09:58:30,032.032 INFO    ] 200
[2026-10-28 09:58:30,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:58:30,088.088 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:58:30,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:58:30,272.272 INFO    ] No camera update needed
[2026-10-28 09:58:30,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:58:30,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:58:30,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:58:30,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:58:32,331.331 INFO    ] ================================================
[2026-10-28 09:58:32,347.347 INFO    ] Launching Daemon at Wed Oct 28 09:58:32 IST 2026
[2026-10-28 09:58:32,359.359 INFO    ] ================================================
[2026-10-28 09:58:32,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:58:32
[2026-10-28 09:58:33,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:58:33,841.841 INFO    ] Initializing speech engine...
[2026-10-28 09:58:33,851.851 INFO    ] 2026-10-28 09:58:33
[2026-10-28 09:58:34,100.100 INFO    ] 2026-10-28 09:58:34
[2026-10-28 09:58:34,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:58:34,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:58:34,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:58:34,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:58:34,676.676 INFO    ] time= 28/10/2026 09:58:34
[2026-10-28 09:58:34,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:58:34,710.710 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:58:34,846.846 INFO    ] No existing commands found in stream
[2026-10-28 09:58:39,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:58:39,879.879 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-28 09:58:41,681.681 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 09:58:41,684.684 INFO    ] Checking for system updates...
[2026-10-28 09:58:41,721.721 INFO    ] 200
[2026-10-28 09:58:41,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:58:41,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:58:41,779.779 INFO    ] No update needed
[2026-10-28 09:58:41,782.782 INFO    ] Checking for camera pi updates...
[2026-10-28 09:58:41,817.817 INFO    ] 200
[2026-10-28 09:58:41,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:58:41,865.865 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:58:41,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:58:41,955.955 INFO    ] No camera update needed
[2026-10-28 09:58:41,958.958 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:58:41,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:58:41,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:58:41,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:58:44,014.014 INFO    ] ================================================
[2026-10-28 09:58:44,030.030 INFO    ] Launching Daemon at Wed Oct 28 09:58:44 IST 2026
[2026-10-28 09:58:44,041.041 INFO    ] ================================================
[2026-10-28 09:58:44,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:58:44
[2026-10-28 09:58:45,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:58:45,462.462 INFO    ] Initializing speech engine...
[2026-10-28 09:58:45,483.483 INFO    ] 2026-10-28 09:58:45
[2026-10-28 09:58:45,732.732 INFO    ] 2026-10-28 09:58:45
[2026-10-28 09:58:45,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:58:46,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:58:46,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:58:46,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:58:46,306.306 INFO    ] time= 28/10/2026 09:58:46
[2026-10-28 09:58:46,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:58:46,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:58:46,469.469 INFO    ] No existing commands found in stream
[2026-10-28 09:58:51,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:58:51,496.496 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-28 09:58:55,904.904 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:58:55,906.906 INFO    ] Checking for system updates...
[2026-10-28 09:58:55,948.948 INFO    ] 200
[2026-10-28 09:58:55,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:58:56,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:58:56,013.013 INFO    ] No update needed
[2026-10-28 09:58:56,016.016 INFO    ] Checking for camera pi updates...
[2026-10-28 09:58:56,054.054 INFO    ] 200
[2026-10-28 09:58:56,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:58:56,106.106 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:58:56,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:58:56,191.191 INFO    ] No camera update needed
[2026-10-28 09:58:56,194.194 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:58:56,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:58:56,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:58:56,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:58:58,250.250 INFO    ] ================================================
[2026-10-28 09:58:58,266.266 INFO    ] Launching Daemon at Wed Oct 28 09:58:58 IST 2026
[2026-10-28 09:58:58,277.277 INFO    ] ================================================
[2026-10-28 09:58:58,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:58:58
[2026-10-28 09:58:59,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:58:59,676.676 INFO    ] Initializing speech engine...
[2026-10-28 09:58:59,691.691 INFO    ] 2026-10-28 09:58:59
[2026-10-28 09:58:59,957.957 INFO    ] 2026-10-28 09:58:59
[2026-10-28 09:58:59,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:59:00,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:59:00,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:59:00,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:59:00,527.527 INFO    ] time= 28/10/2026 09:59:00
[2026-10-28 09:59:00,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:59:00,554.554 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:59:00,705.705 INFO    ] No existing commands found in stream
[2026-10-28 09:59:05,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:59:05,734.734 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-28 09:59:10,001.001 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 09:59:10,004.004 INFO    ] Checking for system updates...
[2026-10-28 09:59:10,039.039 INFO    ] 200
[2026-10-28 09:59:10,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:59:10,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:59:10,095.095 INFO    ] No update needed
[2026-10-28 09:59:10,098.098 INFO    ] Checking for camera pi updates...
[2026-10-28 09:59:10,134.134 INFO    ] 200
[2026-10-28 09:59:10,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:59:10,176.176 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:59:10,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:59:10,282.282 INFO    ] No camera update needed
[2026-10-28 09:59:10,284.284 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:59:10,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:59:10,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:59:10,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:59:12,338.338 INFO    ] ================================================
[2026-10-28 09:59:12,354.354 INFO    ] Launching Daemon at Wed Oct 28 09:59:12 IST 2026
[2026-10-28 09:59:12,366.366 INFO    ] ================================================
[2026-10-28 09:59:12,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:59:12
[2026-10-28 09:59:13,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:59:13,770.770 INFO    ] Initializing speech engine...
[2026-10-28 09:59:13,794.794 INFO    ] 2026-10-28 09:59:13
[2026-10-28 09:59:14,051.051 INFO    ] 2026-10-28 09:59:14
[2026-10-28 09:59:14,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:59:14,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:59:14,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:59:14,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:59:14,620.620 INFO    ] time= 28/10/2026 09:59:14
[2026-10-28 09:59:14,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:59:14,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:59:14,774.774 INFO    ] No existing commands found in stream
[2026-10-28 09:59:19,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:59:19,791.791 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-28 09:59:22,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:59:22,565.565 INFO    ] Checking for system updates...
[2026-10-28 09:59:22,601.601 INFO    ] 200
[2026-10-28 09:59:22,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:59:22,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:59:22,658.658 INFO    ] No update needed
[2026-10-28 09:59:22,661.661 INFO    ] Checking for camera pi updates...
[2026-10-28 09:59:22,694.694 INFO    ] 200
[2026-10-28 09:59:22,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:59:22,736.736 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:59:22,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 09:59:22,821.821 INFO    ] No camera update needed
[2026-10-28 09:59:22,823.823 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:59:22,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:59:22,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:59:22,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:59:24,879.879 INFO    ] ================================================
[2026-10-28 09:59:24,894.894 INFO    ] Launching Daemon at Wed Oct 28 09:59:24 IST 2026
[2026-10-28 09:59:24,905.905 INFO    ] ================================================
[2026-10-28 09:59:25,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:59:25
[2026-10-28 09:59:26,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:59:26,304.304 INFO    ] Initializing speech engine...
[2026-10-28 09:59:26,318.318 INFO    ] 2026-10-28 09:59:26
[2026-10-28 09:59:26,599.599 INFO    ] 2026-10-28 09:59:26
[2026-10-28 09:59:26,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:59:26,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:59:26,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:59:27,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:59:27,215.215 INFO    ] time= 28/10/2026 09:59:27
[2026-10-28 09:59:27,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:59:27,239.239 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:59:27,389.389 INFO    ] No existing commands found in stream
[2026-10-28 09:59:32,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:59:32,409.409 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-28 09:59:35,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 09:59:35,843.843 INFO    ] Checking for system updates...
[2026-10-28 09:59:35,878.878 INFO    ] 200
[2026-10-28 09:59:35,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:59:35,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:59:35,940.940 INFO    ] No update needed
[2026-10-28 09:59:35,942.942 INFO    ] Checking for camera pi updates...
[2026-10-28 09:59:35,975.975 INFO    ] 200
[2026-10-28 09:59:35,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:59:36,023.023 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:59:36,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:59:36,105.105 INFO    ] No camera update needed
[2026-10-28 09:59:36,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:59:36,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:59:36,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:59:36,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:59:38,161.161 INFO    ] ================================================
[2026-10-28 09:59:38,176.176 INFO    ] Launching Daemon at Wed Oct 28 09:59:38 IST 2026
[2026-10-28 09:59:38,187.187 INFO    ] ================================================
[2026-10-28 09:59:38,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:59:38
[2026-10-28 09:59:39,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:59:39,638.638 INFO    ] Initializing speech engine...
[2026-10-28 09:59:39,658.658 INFO    ] 2026-10-28 09:59:39
[2026-10-28 09:59:39,922.922 INFO    ] 2026-10-28 09:59:39
[2026-10-28 09:59:39,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:59:40,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:59:40,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:59:40,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:59:40,540.540 INFO    ] time= 28/10/2026 09:59:40
[2026-10-28 09:59:40,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:59:40,567.567 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:59:40,704.704 INFO    ] No existing commands found in stream
[2026-10-28 09:59:45,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:59:45,722.722 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-28 09:59:49,011.011 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 09:59:49,014.014 INFO    ] Checking for system updates...
[2026-10-28 09:59:49,053.053 INFO    ] 200
[2026-10-28 09:59:49,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:59:49,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:59:49,110.110 INFO    ] No update needed
[2026-10-28 09:59:49,112.112 INFO    ] Checking for camera pi updates...
[2026-10-28 09:59:49,146.146 INFO    ] 200
[2026-10-28 09:59:49,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 09:59:49,192.192 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 09:59:49,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 09:59:49,266.266 INFO    ] No camera update needed
[2026-10-28 09:59:49,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-28 09:59:49,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 09:59:49,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 09:59:49,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 09:59:51,321.321 INFO    ] ================================================
[2026-10-28 09:59:51,336.336 INFO    ] Launching Daemon at Wed Oct 28 09:59:51 IST 2026
[2026-10-28 09:59:51,347.347 INFO    ] ================================================
[2026-10-28 09:59:51,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 09:59:51
[2026-10-28 09:59:52,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 09:59:52,926.926 INFO    ] Initializing speech engine...
[2026-10-28 09:59:52,936.936 INFO    ] 2026-10-28 09:59:52
[2026-10-28 09:59:53,209.209 INFO    ] 2026-10-28 09:59:53
[2026-10-28 09:59:53,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 09:59:53,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 09:59:53,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 09:59:53,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 09:59:53,767.767 INFO    ] time= 28/10/2026 09:59:53
[2026-10-28 09:59:53,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 09:59:53,792.792 INFO    ] Checking for existing commands in stream...
[2026-10-28 09:59:53,921.921 INFO    ] No existing commands found in stream
[2026-10-28 09:59:58,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 09:59:58,940.940 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-28 10:00:03,809.809 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:00:03,823.823 INFO    ] Checking for system updates...
[2026-10-28 10:00:04,023.023 INFO    ] 200
[2026-10-28 10:00:04,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:00:04,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:00:04,380.380 INFO    ] No update needed
[2026-10-28 10:00:04,422.422 INFO    ] Checking for camera pi updates...
[2026-10-28 10:00:04,589.589 INFO    ] 200
[2026-10-28 10:00:04,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:00:04,818.818 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:00:05,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:00:05,557.557 INFO    ] No camera update needed
[2026-10-28 10:00:05,562.562 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:00:05,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:00:05,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:00:05,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:00:07,672.672 INFO    ] ================================================
[2026-10-28 10:00:07,688.688 INFO    ] Launching Daemon at Wed Oct 28 10:00:07 IST 2026
[2026-10-28 10:00:07,699.699 INFO    ] ================================================
[2026-10-28 10:00:08,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:00:08
[2026-10-28 10:00:08,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:00:09,263.263 INFO    ] Initializing speech engine...
[2026-10-28 10:00:09,278.278 INFO    ] 2026-10-28 10:00:09
[2026-10-28 10:00:09,590.590 INFO    ] 2026-10-28 10:00:09
[2026-10-28 10:00:09,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:00:09,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:00:09,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:00:10,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:00:10,263.263 INFO    ] time= 28/10/2026 10:00:10
[2026-10-28 10:00:10,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:00:10,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:00:10,496.496 INFO    ] No existing commands found in stream
[2026-10-28 10:00:15,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:00:15,515.515 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-28 10:00:18,893.893 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:00:18,896.896 INFO    ] Checking for system updates...
[2026-10-28 10:00:18,934.934 INFO    ] 200
[2026-10-28 10:00:18,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:00:18,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:00:18,999.999 INFO    ] No update needed
[2026-10-28 10:00:19,002.002 INFO    ] Checking for camera pi updates...
[2026-10-28 10:00:19,039.039 INFO    ] 200
[2026-10-28 10:00:19,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:00:19,083.083 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:00:19,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:00:19,169.169 INFO    ] No camera update needed
[2026-10-28 10:00:19,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:00:19,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:00:19,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:00:19,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:00:21,227.227 INFO    ] ================================================
[2026-10-28 10:00:21,243.243 INFO    ] Launching Daemon at Wed Oct 28 10:00:21 IST 2026
[2026-10-28 10:00:21,254.254 INFO    ] ================================================
[2026-10-28 10:00:21,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:00:21
[2026-10-28 10:00:22,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:00:22,719.719 INFO    ] Initializing speech engine...
[2026-10-28 10:00:22,726.726 INFO    ] 2026-10-28 10:00:22
[2026-10-28 10:00:22,972.972 INFO    ] 2026-10-28 10:00:22
[2026-10-28 10:00:23,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:00:23,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:00:23,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:00:23,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:00:23,530.530 INFO    ] time= 28/10/2026 10:00:23
[2026-10-28 10:00:23,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:00:23,576.576 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:00:23,683.683 INFO    ] No existing commands found in stream
[2026-10-28 10:00:28,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:00:28,706.706 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-28 10:00:30,415.415 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:00:30,417.417 INFO    ] Checking for system updates...
[2026-10-28 10:00:30,457.457 INFO    ] 200
[2026-10-28 10:00:30,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:00:30,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:00:30,514.514 INFO    ] No update needed
[2026-10-28 10:00:30,516.516 INFO    ] Checking for camera pi updates...
[2026-10-28 10:00:30,550.550 INFO    ] 200
[2026-10-28 10:00:30,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:00:30,594.594 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:00:30,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:00:30,711.711 INFO    ] No camera update needed
[2026-10-28 10:00:30,714.714 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:00:30,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:00:30,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:00:30,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:00:32,770.770 INFO    ] ================================================
[2026-10-28 10:00:32,787.787 INFO    ] Launching Daemon at Wed Oct 28 10:00:32 IST 2026
[2026-10-28 10:00:32,800.800 INFO    ] ================================================
[2026-10-28 10:00:33,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:00:33
[2026-10-28 10:00:34,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:00:34,276.276 INFO    ] Initializing speech engine...
[2026-10-28 10:00:34,284.284 INFO    ] 2026-10-28 10:00:34
[2026-10-28 10:00:34,536.536 INFO    ] 2026-10-28 10:00:34
[2026-10-28 10:00:34,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:00:34,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:00:34,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:00:35,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:00:35,101.101 INFO    ] time= 28/10/2026 10:00:35
[2026-10-28 10:00:35,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:00:35,125.125 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:00:35,283.283 INFO    ] No existing commands found in stream
[2026-10-28 10:00:40,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:00:40,316.316 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-28 10:00:45,665.665 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:00:45,668.668 INFO    ] Checking for system updates...
[2026-10-28 10:00:45,705.705 INFO    ] 200
[2026-10-28 10:00:45,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:00:45,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:00:45,771.771 INFO    ] No update needed
[2026-10-28 10:00:45,775.775 INFO    ] Checking for camera pi updates...
[2026-10-28 10:00:45,809.809 INFO    ] 200
[2026-10-28 10:00:45,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:00:45,853.853 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:00:45,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:00:45,963.963 INFO    ] No camera update needed
[2026-10-28 10:00:45,966.966 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:00:45,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:00:45,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:00:45,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:00:48,028.028 INFO    ] ================================================
[2026-10-28 10:00:48,046.046 INFO    ] Launching Daemon at Wed Oct 28 10:00:48 IST 2026
[2026-10-28 10:00:48,058.058 INFO    ] ================================================
[2026-10-28 10:00:48,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:00:48
[2026-10-28 10:00:49,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:00:49,839.839 INFO    ] Initializing speech engine...
[2026-10-28 10:00:49,845.845 INFO    ] 2026-10-28 10:00:49
[2026-10-28 10:00:50,146.146 INFO    ] 2026-10-28 10:00:50
[2026-10-28 10:00:50,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:00:50,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:00:50,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:00:50,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:00:50,718.718 INFO    ] time= 28/10/2026 10:00:50
[2026-10-28 10:00:50,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:00:50,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:00:50,910.910 INFO    ] No existing commands found in stream
[2026-10-28 10:00:55,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:00:55,939.939 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-28 10:00:57,224.224 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:00:57,227.227 INFO    ] Checking for system updates...
[2026-10-28 10:00:57,263.263 INFO    ] 200
[2026-10-28 10:00:57,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:00:57,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:00:57,322.322 INFO    ] No update needed
[2026-10-28 10:00:57,325.325 INFO    ] Checking for camera pi updates...
[2026-10-28 10:00:57,359.359 INFO    ] 200
[2026-10-28 10:00:57,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:00:57,403.403 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:00:57,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:00:57,488.488 INFO    ] No camera update needed
[2026-10-28 10:00:57,490.490 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:00:57,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:00:57,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:00:57,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:00:59,546.546 INFO    ] ================================================
[2026-10-28 10:00:59,562.562 INFO    ] Launching Daemon at Wed Oct 28 10:00:59 IST 2026
[2026-10-28 10:00:59,573.573 INFO    ] ================================================
[2026-10-28 10:01:00,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:01:00
[2026-10-28 10:01:00,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:01:00,982.982 INFO    ] Initializing speech engine...
[2026-10-28 10:01:01,015.015 INFO    ] 2026-10-28 10:01:00
[2026-10-28 10:01:01,269.269 INFO    ] 2026-10-28 10:01:01
[2026-10-28 10:01:01,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:01:01,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:01:01,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:01:01,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:01:01,800.800 INFO    ] time= 28/10/2026 10:01:01
[2026-10-28 10:01:01,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:01:01,818.818 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:01:01,897.897 INFO    ] No existing commands found in stream
[2026-10-28 10:01:06,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:01:06,911.911 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-28 10:01:08,782.782 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:01:08,785.785 INFO    ] Checking for system updates...
[2026-10-28 10:01:08,822.822 INFO    ] 200
[2026-10-28 10:01:08,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:01:08,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:01:08,882.882 INFO    ] No update needed
[2026-10-28 10:01:08,884.884 INFO    ] Checking for camera pi updates...
[2026-10-28 10:01:08,918.918 INFO    ] 200
[2026-10-28 10:01:08,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:01:08,966.966 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:01:09,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:01:09,051.051 INFO    ] No camera update needed
[2026-10-28 10:01:09,053.053 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:01:09,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:01:09,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:01:09,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:01:11,106.106 INFO    ] ================================================
[2026-10-28 10:01:11,121.121 INFO    ] Launching Daemon at Wed Oct 28 10:01:11 IST 2026
[2026-10-28 10:01:11,132.132 INFO    ] ================================================
[2026-10-28 10:01:11,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:01:11
[2026-10-28 10:01:12,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:01:12,531.531 INFO    ] Initializing speech engine...
[2026-10-28 10:01:12,554.554 INFO    ] 2026-10-28 10:01:12
[2026-10-28 10:01:12,808.808 INFO    ] 2026-10-28 10:01:12
[2026-10-28 10:01:12,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:01:13,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:01:13,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:01:13,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:01:13,373.373 INFO    ] time= 28/10/2026 10:01:13
[2026-10-28 10:01:13,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:01:13,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:01:13,548.548 INFO    ] No existing commands found in stream
[2026-10-28 10:01:18,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:01:18,582.582 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 10:01:20,921.921 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:01:20,924.924 INFO    ] Checking for system updates...
[2026-10-28 10:01:20,963.963 INFO    ] 200
[2026-10-28 10:01:20,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:01:21,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:01:21,027.027 INFO    ] No update needed
[2026-10-28 10:01:21,030.030 INFO    ] Checking for camera pi updates...
[2026-10-28 10:01:21,065.065 INFO    ] 200
[2026-10-28 10:01:21,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:01:21,122.122 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:01:21,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:01:21,200.200 INFO    ] No camera update needed
[2026-10-28 10:01:21,203.203 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:01:21,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:01:21,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:01:21,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:01:23,258.258 INFO    ] ================================================
[2026-10-28 10:01:23,273.273 INFO    ] Launching Daemon at Wed Oct 28 10:01:23 IST 2026
[2026-10-28 10:01:23,285.285 INFO    ] ================================================
[2026-10-28 10:01:23,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:01:23
[2026-10-28 10:01:24,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:01:24,861.861 INFO    ] Initializing speech engine...
[2026-10-28 10:01:24,871.871 INFO    ] 2026-10-28 10:01:24
[2026-10-28 10:01:25,143.143 INFO    ] 2026-10-28 10:01:25
[2026-10-28 10:01:25,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:01:25,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:01:25,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:01:25,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:01:25,721.721 INFO    ] time= 28/10/2026 10:01:25
[2026-10-28 10:01:25,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:01:25,758.758 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:01:25,902.902 INFO    ] No existing commands found in stream
[2026-10-28 10:01:30,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:01:30,936.936 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-28 10:01:32,285.285 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:01:32,289.289 INFO    ] Checking for system updates...
[2026-10-28 10:01:32,328.328 INFO    ] 200
[2026-10-28 10:01:32,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:01:32,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:01:32,392.392 INFO    ] No update needed
[2026-10-28 10:01:32,395.395 INFO    ] Checking for camera pi updates...
[2026-10-28 10:01:32,431.431 INFO    ] 200
[2026-10-28 10:01:32,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:01:32,485.485 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:01:32,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:01:32,601.601 INFO    ] No camera update needed
[2026-10-28 10:01:32,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:01:32,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:01:32,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:01:32,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:01:34,658.658 INFO    ] ================================================
[2026-10-28 10:01:34,674.674 INFO    ] Launching Daemon at Wed Oct 28 10:01:34 IST 2026
[2026-10-28 10:01:34,685.685 INFO    ] ================================================
[2026-10-28 10:01:35,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:01:35
[2026-10-28 10:01:35,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:01:36,265.265 INFO    ] Initializing speech engine...
[2026-10-28 10:01:36,270.270 INFO    ] 2026-10-28 10:01:36
[2026-10-28 10:01:36,522.522 INFO    ] 2026-10-28 10:01:36
[2026-10-28 10:01:36,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:01:36,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:01:36,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:01:37,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:01:37,088.088 INFO    ] time= 28/10/2026 10:01:37
[2026-10-28 10:01:37,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:01:37,113.113 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:01:37,253.253 INFO    ] No existing commands found in stream
[2026-10-28 10:01:42,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:01:42,287.287 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-28 10:01:43,966.966 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:01:43,969.969 INFO    ] Checking for system updates...
[2026-10-28 10:01:44,007.007 INFO    ] 200
[2026-10-28 10:01:44,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:01:44,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:01:44,066.066 INFO    ] No update needed
[2026-10-28 10:01:44,068.068 INFO    ] Checking for camera pi updates...
[2026-10-28 10:01:44,102.102 INFO    ] 200
[2026-10-28 10:01:44,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:01:44,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:01:44,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:01:44,224.224 INFO    ] No camera update needed
[2026-10-28 10:01:44,227.227 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:01:44,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:01:44,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:01:44,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:01:46,279.279 INFO    ] ================================================
[2026-10-28 10:01:46,296.296 INFO    ] Launching Daemon at Wed Oct 28 10:01:46 IST 2026
[2026-10-28 10:01:46,307.307 INFO    ] ================================================
[2026-10-28 10:01:46,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:01:46
[2026-10-28 10:01:47,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:01:47,719.719 INFO    ] Initializing speech engine...
[2026-10-28 10:01:47,737.737 INFO    ] 2026-10-28 10:01:47
[2026-10-28 10:01:47,989.989 INFO    ] 2026-10-28 10:01:47
[2026-10-28 10:01:48,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:01:48,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:01:48,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:01:48,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:01:48,558.558 INFO    ] time= 28/10/2026 10:01:48
[2026-10-28 10:01:48,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:01:48,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:01:48,789.789 INFO    ] No existing commands found in stream
[2026-10-28 10:01:53,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:01:53,817.817 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-28 10:01:55,162.162 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:01:55,165.165 INFO    ] Checking for system updates...
[2026-10-28 10:01:55,201.201 INFO    ] 200
[2026-10-28 10:01:55,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:01:55,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:01:55,258.258 INFO    ] No update needed
[2026-10-28 10:01:55,261.261 INFO    ] Checking for camera pi updates...
[2026-10-28 10:01:55,294.294 INFO    ] 200
[2026-10-28 10:01:55,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:01:55,336.336 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:01:55,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:01:55,427.427 INFO    ] No camera update needed
[2026-10-28 10:01:55,430.430 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:01:55,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:01:55,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:01:55,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:01:57,483.483 INFO    ] ================================================
[2026-10-28 10:01:57,498.498 INFO    ] Launching Daemon at Wed Oct 28 10:01:57 IST 2026
[2026-10-28 10:01:57,509.509 INFO    ] ================================================
[2026-10-28 10:01:58,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:01:58
[2026-10-28 10:01:58,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:01:58,925.925 INFO    ] Initializing speech engine...
[2026-10-28 10:01:58,943.943 INFO    ] 2026-10-28 10:01:58
[2026-10-28 10:01:59,192.192 INFO    ] 2026-10-28 10:01:59
[2026-10-28 10:01:59,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:01:59,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:01:59,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:01:59,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:01:59,746.746 INFO    ] time= 28/10/2026 10:01:59
[2026-10-28 10:01:59,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:01:59,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:01:59,927.927 INFO    ] No existing commands found in stream
[2026-10-28 10:02:04,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:02:04,958.958 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-28 10:02:07,685.685 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:02:07,687.687 INFO    ] Checking for system updates...
[2026-10-28 10:02:07,723.723 INFO    ] 200
[2026-10-28 10:02:07,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:02:07,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:02:07,780.780 INFO    ] No update needed
[2026-10-28 10:02:07,782.782 INFO    ] Checking for camera pi updates...
[2026-10-28 10:02:07,820.820 INFO    ] 200
[2026-10-28 10:02:07,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:02:07,863.863 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:02:07,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:02:07,955.955 INFO    ] No camera update needed
[2026-10-28 10:02:07,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:02:07,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:02:07,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:02:07,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:02:10,011.011 INFO    ] ================================================
[2026-10-28 10:02:10,027.027 INFO    ] Launching Daemon at Wed Oct 28 10:02:10 IST 2026
[2026-10-28 10:02:10,039.039 INFO    ] ================================================
[2026-10-28 10:02:10,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:02:10
[2026-10-28 10:02:11,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:02:11,502.502 INFO    ] Initializing speech engine...
[2026-10-28 10:02:11,512.512 INFO    ] 2026-10-28 10:02:11
[2026-10-28 10:02:11,774.774 INFO    ] 2026-10-28 10:02:11
[2026-10-28 10:02:11,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:02:12,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:02:12,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:02:12,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:02:12,320.320 INFO    ] time= 28/10/2026 10:02:12
[2026-10-28 10:02:12,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:02:12,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:02:12,752.752 INFO    ] No existing commands found in stream
[2026-10-28 10:02:17,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:02:17,772.772 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 10:02:19,887.887 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:02:19,889.889 INFO    ] Checking for system updates...
[2026-10-28 10:02:19,930.930 INFO    ] 200
[2026-10-28 10:02:19,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:02:19,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:02:19,989.989 INFO    ] No update needed
[2026-10-28 10:02:19,992.992 INFO    ] Checking for camera pi updates...
[2026-10-28 10:02:20,030.030 INFO    ] 200
[2026-10-28 10:02:20,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:02:20,079.079 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:02:20,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:02:20,164.164 INFO    ] No camera update needed
[2026-10-28 10:02:20,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:02:20,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:02:20,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:02:20,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:02:22,221.221 INFO    ] ================================================
[2026-10-28 10:02:22,236.236 INFO    ] Launching Daemon at Wed Oct 28 10:02:22 IST 2026
[2026-10-28 10:02:22,247.247 INFO    ] ================================================
[2026-10-28 10:02:22,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:02:22
[2026-10-28 10:02:23,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:02:23,794.794 INFO    ] Initializing speech engine...
[2026-10-28 10:02:23,803.803 INFO    ] 2026-10-28 10:02:23
[2026-10-28 10:02:24,053.053 INFO    ] 2026-10-28 10:02:24
[2026-10-28 10:02:24,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:02:24,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:02:24,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:02:24,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:02:24,628.628 INFO    ] time= 28/10/2026 10:02:24
[2026-10-28 10:02:24,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:02:24,675.675 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:02:24,787.787 INFO    ] No existing commands found in stream
[2026-10-28 10:02:29,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:02:29,814.814 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-28 10:02:33,046.046 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:02:33,049.049 INFO    ] Checking for system updates...
[2026-10-28 10:02:33,099.099 INFO    ] 200
[2026-10-28 10:02:33,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:02:33,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:02:33,164.164 INFO    ] No update needed
[2026-10-28 10:02:33,166.166 INFO    ] Checking for camera pi updates...
[2026-10-28 10:02:33,199.199 INFO    ] 200
[2026-10-28 10:02:33,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:02:33,242.242 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:02:33,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:02:33,301.301 INFO    ] No camera update needed
[2026-10-28 10:02:33,303.303 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:02:33,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:02:33,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:02:33,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:02:35,357.357 INFO    ] ================================================
[2026-10-28 10:02:35,373.373 INFO    ] Launching Daemon at Wed Oct 28 10:02:35 IST 2026
[2026-10-28 10:02:35,385.385 INFO    ] ================================================
[2026-10-28 10:02:35,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:02:35
[2026-10-28 10:02:36,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:02:36,879.879 INFO    ] Initializing speech engine...
[2026-10-28 10:02:36,894.894 INFO    ] 2026-10-28 10:02:36
[2026-10-28 10:02:37,210.210 INFO    ] 2026-10-28 10:02:37
[2026-10-28 10:02:37,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:02:37,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:02:37,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:02:38,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:02:38,138.138 INFO    ] time= 28/10/2026 10:02:38
[2026-10-28 10:02:38,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:02:38,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:02:38,436.436 INFO    ] No existing commands found in stream
[2026-10-28 10:02:43,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:02:43,451.451 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-28 10:02:45,342.342 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:02:45,344.344 INFO    ] Checking for system updates...
[2026-10-28 10:02:45,385.385 INFO    ] 200
[2026-10-28 10:02:45,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:02:45,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:02:45,450.450 INFO    ] No update needed
[2026-10-28 10:02:45,452.452 INFO    ] Checking for camera pi updates...
[2026-10-28 10:02:45,486.486 INFO    ] 200
[2026-10-28 10:02:45,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:02:45,535.535 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:02:45,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:02:45,718.718 INFO    ] No camera update needed
[2026-10-28 10:02:45,720.720 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:02:45,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:02:45,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:02:45,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:02:47,778.778 INFO    ] ================================================
[2026-10-28 10:02:47,795.795 INFO    ] Launching Daemon at Wed Oct 28 10:02:47 IST 2026
[2026-10-28 10:02:47,807.807 INFO    ] ================================================
[2026-10-28 10:02:48,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:02:48
[2026-10-28 10:02:49,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:02:49,343.343 INFO    ] Initializing speech engine...
[2026-10-28 10:02:49,367.367 INFO    ] 2026-10-28 10:02:49
[2026-10-28 10:02:49,646.646 INFO    ] 2026-10-28 10:02:49
[2026-10-28 10:02:49,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:02:49,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:02:49,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:02:50,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:02:50,310.310 INFO    ] time= 28/10/2026 10:02:50
[2026-10-28 10:02:50,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:02:50,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:02:50,460.460 INFO    ] No existing commands found in stream
[2026-10-28 10:02:55,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:02:55,478.478 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-28 10:02:59,646.646 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:02:59,649.649 INFO    ] Checking for system updates...
[2026-10-28 10:02:59,689.689 INFO    ] 200
[2026-10-28 10:02:59,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:02:59,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:02:59,755.755 INFO    ] No update needed
[2026-10-28 10:02:59,757.757 INFO    ] Checking for camera pi updates...
[2026-10-28 10:02:59,795.795 INFO    ] 200
[2026-10-28 10:02:59,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:02:59,838.838 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:02:59,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:02:59,911.911 INFO    ] No camera update needed
[2026-10-28 10:02:59,913.913 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:02:59,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:02:59,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:02:59,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:03:02,003.003 INFO    ] ================================================
[2026-10-28 10:03:02,052.052 INFO    ] Launching Daemon at Wed Oct 28 10:03:02 IST 2026
[2026-10-28 10:03:02,085.085 INFO    ] ================================================
[2026-10-28 10:03:02,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:03:02
[2026-10-28 10:03:03,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:03:03,746.746 INFO    ] Initializing speech engine...
[2026-10-28 10:03:03,760.760 INFO    ] 2026-10-28 10:03:03
[2026-10-28 10:03:04,040.040 INFO    ] 2026-10-28 10:03:04
[2026-10-28 10:03:04,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:03:04,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:03:04,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:03:04,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:03:04,637.637 INFO    ] time= 28/10/2026 10:03:04
[2026-10-28 10:03:04,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:03:04,672.672 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:03:04,819.819 INFO    ] No existing commands found in stream
[2026-10-28 10:03:09,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:03:09,852.852 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-28 10:03:14,297.297 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:03:14,300.300 INFO    ] Checking for system updates...
[2026-10-28 10:03:14,336.336 INFO    ] 200
[2026-10-28 10:03:14,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:03:14,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:03:14,411.411 INFO    ] No update needed
[2026-10-28 10:03:14,413.413 INFO    ] Checking for camera pi updates...
[2026-10-28 10:03:14,446.446 INFO    ] 200
[2026-10-28 10:03:14,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:03:14,495.495 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:03:14,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:03:14,578.578 INFO    ] No camera update needed
[2026-10-28 10:03:14,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:03:14,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:03:14,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:03:14,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:03:16,641.641 INFO    ] ================================================
[2026-10-28 10:03:16,658.658 INFO    ] Launching Daemon at Wed Oct 28 10:03:16 IST 2026
[2026-10-28 10:03:16,670.670 INFO    ] ================================================
[2026-10-28 10:03:17,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:03:17
[2026-10-28 10:03:17,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:03:18,132.132 INFO    ] Initializing speech engine...
[2026-10-28 10:03:18,139.139 INFO    ] 2026-10-28 10:03:18
[2026-10-28 10:03:18,402.402 INFO    ] 2026-10-28 10:03:18
[2026-10-28 10:03:18,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:03:18,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:03:18,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:03:18,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:03:18,994.994 INFO    ] time= 28/10/2026 10:03:18
[2026-10-28 10:03:19,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:03:19,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:03:19,194.194 INFO    ] No existing commands found in stream
[2026-10-28 10:03:24,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:03:24,212.212 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 10:03:26,643.643 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:03:26,646.646 INFO    ] Checking for system updates...
[2026-10-28 10:03:26,697.697 INFO    ] 200
[2026-10-28 10:03:26,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:03:26,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:03:26,755.755 INFO    ] No update needed
[2026-10-28 10:03:26,757.757 INFO    ] Checking for camera pi updates...
[2026-10-28 10:03:26,790.790 INFO    ] 200
[2026-10-28 10:03:26,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:03:26,834.834 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:03:26,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:03:26,960.960 INFO    ] No camera update needed
[2026-10-28 10:03:26,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:03:26,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:03:26,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:03:26,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:03:29,018.018 INFO    ] ================================================
[2026-10-28 10:03:29,035.035 INFO    ] Launching Daemon at Wed Oct 28 10:03:29 IST 2026
[2026-10-28 10:03:29,046.046 INFO    ] ================================================
[2026-10-28 10:03:29,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:03:29
[2026-10-28 10:03:30,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:03:30,521.521 INFO    ] Initializing speech engine...
[2026-10-28 10:03:30,528.528 INFO    ] 2026-10-28 10:03:30
[2026-10-28 10:03:30,785.785 INFO    ] 2026-10-28 10:03:30
[2026-10-28 10:03:30,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:03:31,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:03:31,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:03:31,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:03:31,319.319 INFO    ] time= 28/10/2026 10:03:31
[2026-10-28 10:03:31,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:03:31,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:03:31,480.480 INFO    ] No existing commands found in stream
[2026-10-28 10:03:36,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:03:36,506.506 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-28 10:03:38,462.462 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:03:38,465.465 INFO    ] Checking for system updates...
[2026-10-28 10:03:38,504.504 INFO    ] 200
[2026-10-28 10:03:38,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:03:38,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:03:38,568.568 INFO    ] No update needed
[2026-10-28 10:03:38,570.570 INFO    ] Checking for camera pi updates...
[2026-10-28 10:03:38,607.607 INFO    ] 200
[2026-10-28 10:03:38,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:03:38,655.655 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:03:38,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:03:38,737.737 INFO    ] No camera update needed
[2026-10-28 10:03:38,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:03:38,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:03:38,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:03:38,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:03:40,792.792 INFO    ] ================================================
[2026-10-28 10:03:40,808.808 INFO    ] Launching Daemon at Wed Oct 28 10:03:40 IST 2026
[2026-10-28 10:03:40,819.819 INFO    ] ================================================
[2026-10-28 10:03:41,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:03:41
[2026-10-28 10:03:41,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:03:42,272.272 INFO    ] Initializing speech engine...
[2026-10-28 10:03:42,281.281 INFO    ] 2026-10-28 10:03:42
[2026-10-28 10:03:42,528.528 INFO    ] 2026-10-28 10:03:42
[2026-10-28 10:03:42,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:03:42,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:03:42,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:03:43,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:03:43,095.095 INFO    ] time= 28/10/2026 10:03:43
[2026-10-28 10:03:43,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:03:43,130.130 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:03:43,250.250 INFO    ] No existing commands found in stream
[2026-10-28 10:03:48,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:03:48,275.275 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-28 10:03:50,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:03:50,692.692 INFO    ] Checking for system updates...
[2026-10-28 10:03:50,731.731 INFO    ] 200
[2026-10-28 10:03:50,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:03:50,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:03:50,788.788 INFO    ] No update needed
[2026-10-28 10:03:50,791.791 INFO    ] Checking for camera pi updates...
[2026-10-28 10:03:50,828.828 INFO    ] 200
[2026-10-28 10:03:50,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:03:50,871.871 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:03:50,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:03:50,957.957 INFO    ] No camera update needed
[2026-10-28 10:03:50,959.959 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:03:50,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:03:50,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:03:50,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:03:53,013.013 INFO    ] ================================================
[2026-10-28 10:03:53,029.029 INFO    ] Launching Daemon at Wed Oct 28 10:03:53 IST 2026
[2026-10-28 10:03:53,040.040 INFO    ] ================================================
[2026-10-28 10:03:53,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:03:53
[2026-10-28 10:03:54,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:03:54,434.434 INFO    ] Initializing speech engine...
[2026-10-28 10:03:54,442.442 INFO    ] 2026-10-28 10:03:54
[2026-10-28 10:03:54,716.716 INFO    ] 2026-10-28 10:03:54
[2026-10-28 10:03:54,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:03:55,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:03:55,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:03:55,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:03:55,447.447 INFO    ] time= 28/10/2026 10:03:55
[2026-10-28 10:03:55,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:03:55,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:03:55,700.700 INFO    ] No existing commands found in stream
[2026-10-28 10:04:00,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:04:00,716.716 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 10:04:03,367.367 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:04:03,369.369 INFO    ] Checking for system updates...
[2026-10-28 10:04:03,410.410 INFO    ] 200
[2026-10-28 10:04:03,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:04:03,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:04:03,473.473 INFO    ] No update needed
[2026-10-28 10:04:03,476.476 INFO    ] Checking for camera pi updates...
[2026-10-28 10:04:03,510.510 INFO    ] 200
[2026-10-28 10:04:03,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:04:03,567.567 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:04:03,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:04:03,656.656 INFO    ] No camera update needed
[2026-10-28 10:04:03,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:04:03,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:04:03,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:04:03,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:04:05,716.716 INFO    ] ================================================
[2026-10-28 10:04:05,731.731 INFO    ] Launching Daemon at Wed Oct 28 10:04:05 IST 2026
[2026-10-28 10:04:05,743.743 INFO    ] ================================================
[2026-10-28 10:04:06,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:04:06
[2026-10-28 10:04:06,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:04:07,205.205 INFO    ] Initializing speech engine...
[2026-10-28 10:04:07,211.211 INFO    ] 2026-10-28 10:04:07
[2026-10-28 10:04:07,472.472 INFO    ] 2026-10-28 10:04:07
[2026-10-28 10:04:07,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:04:07,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:04:07,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:04:08,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:04:08,184.184 INFO    ] time= 28/10/2026 10:04:08
[2026-10-28 10:04:08,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:04:08,278.278 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:04:08,452.452 INFO    ] No existing commands found in stream
[2026-10-28 10:04:13,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:04:13,471.471 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 10:04:16,330.330 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:04:16,333.333 INFO    ] Checking for system updates...
[2026-10-28 10:04:16,372.372 INFO    ] 200
[2026-10-28 10:04:16,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:04:16,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:04:16,429.429 INFO    ] No update needed
[2026-10-28 10:04:16,432.432 INFO    ] Checking for camera pi updates...
[2026-10-28 10:04:16,468.468 INFO    ] 200
[2026-10-28 10:04:16,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:04:16,511.511 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:04:16,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:04:16,598.598 INFO    ] No camera update needed
[2026-10-28 10:04:16,601.601 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:04:16,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:04:16,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:04:16,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:04:18,656.656 INFO    ] ================================================
[2026-10-28 10:04:18,672.672 INFO    ] Launching Daemon at Wed Oct 28 10:04:18 IST 2026
[2026-10-28 10:04:18,690.690 INFO    ] ================================================
[2026-10-28 10:04:19,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:04:19
[2026-10-28 10:04:19,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:04:20,137.137 INFO    ] Initializing speech engine...
[2026-10-28 10:04:20,144.144 INFO    ] 2026-10-28 10:04:20
[2026-10-28 10:04:20,446.446 INFO    ] 2026-10-28 10:04:20
[2026-10-28 10:04:20,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:04:20,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:04:20,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:04:20,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:04:20,991.991 INFO    ] time= 28/10/2026 10:04:20
[2026-10-28 10:04:21,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:04:21,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:04:21,228.228 INFO    ] No existing commands found in stream
[2026-10-28 10:04:26,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:04:26,249.249 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-28 10:04:30,166.166 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:04:30,169.169 INFO    ] Checking for system updates...
[2026-10-28 10:04:30,205.205 INFO    ] 200
[2026-10-28 10:04:30,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:04:30,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:04:30,269.269 INFO    ] No update needed
[2026-10-28 10:04:30,272.272 INFO    ] Checking for camera pi updates...
[2026-10-28 10:04:30,310.310 INFO    ] 200
[2026-10-28 10:04:30,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:04:30,353.353 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:04:30,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:04:30,434.434 INFO    ] No camera update needed
[2026-10-28 10:04:30,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:04:30,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:04:30,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:04:30,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:04:32,491.491 INFO    ] ================================================
[2026-10-28 10:04:32,507.507 INFO    ] Launching Daemon at Wed Oct 28 10:04:32 IST 2026
[2026-10-28 10:04:32,518.518 INFO    ] ================================================
[2026-10-28 10:04:33,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:04:33
[2026-10-28 10:04:33,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:04:33,957.957 INFO    ] Initializing speech engine...
[2026-10-28 10:04:33,979.979 INFO    ] 2026-10-28 10:04:33
[2026-10-28 10:04:34,230.230 INFO    ] 2026-10-28 10:04:34
[2026-10-28 10:04:34,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:04:34,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:04:34,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:04:34,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:04:35,033.033 INFO    ] time= 28/10/2026 10:04:34
[2026-10-28 10:04:35,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:04:35,109.109 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:04:35,268.268 INFO    ] No existing commands found in stream
[2026-10-28 10:04:40,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:04:40,296.296 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-28 10:04:41,325.325 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:04:41,328.328 INFO    ] Checking for system updates...
[2026-10-28 10:04:41,363.363 INFO    ] 200
[2026-10-28 10:04:41,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:04:41,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:04:41,421.421 INFO    ] No update needed
[2026-10-28 10:04:41,423.423 INFO    ] Checking for camera pi updates...
[2026-10-28 10:04:41,456.456 INFO    ] 200
[2026-10-28 10:04:41,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:04:41,505.505 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:04:41,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:04:41,596.596 INFO    ] No camera update needed
[2026-10-28 10:04:41,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:04:41,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:04:41,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:04:41,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:04:43,652.652 INFO    ] ================================================
[2026-10-28 10:04:43,667.667 INFO    ] Launching Daemon at Wed Oct 28 10:04:43 IST 2026
[2026-10-28 10:04:43,679.679 INFO    ] ================================================
[2026-10-28 10:04:44,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:04:44
[2026-10-28 10:04:44,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:04:45,282.282 INFO    ] Initializing speech engine...
[2026-10-28 10:04:45,297.297 INFO    ] 2026-10-28 10:04:45
[2026-10-28 10:04:45,581.581 INFO    ] 2026-10-28 10:04:45
[2026-10-28 10:04:45,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:04:45,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:04:46,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:04:46,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:04:46,307.307 INFO    ] time= 28/10/2026 10:04:46
[2026-10-28 10:04:46,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:04:46,399.399 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:04:46,543.543 INFO    ] No existing commands found in stream
[2026-10-28 10:04:51,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:04:51,576.576 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-28 10:04:52,331.331 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:04:52,335.335 INFO    ] Checking for system updates...
[2026-10-28 10:04:52,379.379 INFO    ] 200
[2026-10-28 10:04:52,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:04:52,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:04:52,447.447 INFO    ] No update needed
[2026-10-28 10:04:52,450.450 INFO    ] Checking for camera pi updates...
[2026-10-28 10:04:52,484.484 INFO    ] 200
[2026-10-28 10:04:52,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:04:52,534.534 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:04:52,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:04:52,694.694 INFO    ] No camera update needed
[2026-10-28 10:04:52,697.697 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:04:52,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:04:52,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:04:52,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:04:54,755.755 INFO    ] ================================================
[2026-10-28 10:04:54,772.772 INFO    ] Launching Daemon at Wed Oct 28 10:04:54 IST 2026
[2026-10-28 10:04:54,783.783 INFO    ] ================================================
[2026-10-28 10:04:55,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:04:55
[2026-10-28 10:04:56,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:04:56,448.448 INFO    ] Initializing speech engine...
[2026-10-28 10:04:56,460.460 INFO    ] 2026-10-28 10:04:56
[2026-10-28 10:04:56,748.748 INFO    ] 2026-10-28 10:04:56
[2026-10-28 10:04:56,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:04:57,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:04:57,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:04:57,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:04:57,509.509 INFO    ] time= 28/10/2026 10:04:57
[2026-10-28 10:04:57,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:04:57,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:04:57,815.815 INFO    ] No existing commands found in stream
[2026-10-28 10:05:02,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:05:02,855.855 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 10:05:06,490.490 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:05:06,492.492 INFO    ] Checking for system updates...
[2026-10-28 10:05:06,529.529 INFO    ] 200
[2026-10-28 10:05:06,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:05:06,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:05:06,593.593 INFO    ] No update needed
[2026-10-28 10:05:06,596.596 INFO    ] Checking for camera pi updates...
[2026-10-28 10:05:06,634.634 INFO    ] 200
[2026-10-28 10:05:06,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:05:06,681.681 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:05:06,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:05:06,769.769 INFO    ] No camera update needed
[2026-10-28 10:05:06,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:05:06,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:05:06,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:05:06,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:05:08,828.828 INFO    ] ================================================
[2026-10-28 10:05:08,844.844 INFO    ] Launching Daemon at Wed Oct 28 10:05:08 IST 2026
[2026-10-28 10:05:08,855.855 INFO    ] ================================================
[2026-10-28 10:05:09,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:05:09
[2026-10-28 10:05:10,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:05:10,292.292 INFO    ] Initializing speech engine...
[2026-10-28 10:05:10,298.298 INFO    ] 2026-10-28 10:05:10
[2026-10-28 10:05:10,591.591 INFO    ] 2026-10-28 10:05:10
[2026-10-28 10:05:10,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:05:10,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:05:10,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:05:11,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:05:11,163.163 INFO    ] time= 28/10/2026 10:05:11
[2026-10-28 10:05:11,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:05:11,220.220 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:05:11,390.390 INFO    ] No existing commands found in stream
[2026-10-28 10:05:16,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:05:16,415.415 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-28 10:05:19,270.270 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:05:19,272.272 INFO    ] Checking for system updates...
[2026-10-28 10:05:19,312.312 INFO    ] 200
[2026-10-28 10:05:19,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:05:19,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:05:19,374.374 INFO    ] No update needed
[2026-10-28 10:05:19,377.377 INFO    ] Checking for camera pi updates...
[2026-10-28 10:05:19,410.410 INFO    ] 200
[2026-10-28 10:05:19,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:05:19,452.452 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:05:19,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:05:19,537.537 INFO    ] No camera update needed
[2026-10-28 10:05:19,539.539 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:05:19,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:05:19,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:05:19,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:05:21,591.591 INFO    ] ================================================
[2026-10-28 10:05:21,607.607 INFO    ] Launching Daemon at Wed Oct 28 10:05:21 IST 2026
[2026-10-28 10:05:21,617.617 INFO    ] ================================================
[2026-10-28 10:05:22,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:05:22
[2026-10-28 10:05:22,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:05:23,079.079 INFO    ] Initializing speech engine...
[2026-10-28 10:05:23,088.088 INFO    ] 2026-10-28 10:05:23
[2026-10-28 10:05:23,339.339 INFO    ] 2026-10-28 10:05:23
[2026-10-28 10:05:23,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:05:23,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:05:23,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:05:23,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:05:23,923.923 INFO    ] time= 28/10/2026 10:05:23
[2026-10-28 10:05:23,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:05:23,959.959 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:05:24,064.064 INFO    ] No existing commands found in stream
[2026-10-28 10:05:29,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:05:29,081.081 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 10:05:33,403.403 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:05:33,406.406 INFO    ] Checking for system updates...
[2026-10-28 10:05:33,443.443 INFO    ] 200
[2026-10-28 10:05:33,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:05:33,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:05:33,502.502 INFO    ] No update needed
[2026-10-28 10:05:33,505.505 INFO    ] Checking for camera pi updates...
[2026-10-28 10:05:33,542.542 INFO    ] 200
[2026-10-28 10:05:33,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:05:33,587.587 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:05:33,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:05:33,669.669 INFO    ] No camera update needed
[2026-10-28 10:05:33,672.672 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:05:33,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:05:33,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:05:33,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:05:35,727.727 INFO    ] ================================================
[2026-10-28 10:05:35,743.743 INFO    ] Launching Daemon at Wed Oct 28 10:05:35 IST 2026
[2026-10-28 10:05:35,754.754 INFO    ] ================================================
[2026-10-28 10:05:36,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:05:36
[2026-10-28 10:05:36,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:05:37,199.199 INFO    ] Initializing speech engine...
[2026-10-28 10:05:37,208.208 INFO    ] 2026-10-28 10:05:37
[2026-10-28 10:05:37,502.502 INFO    ] 2026-10-28 10:05:37
[2026-10-28 10:05:37,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:05:37,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:05:37,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:05:38,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:05:38,098.098 INFO    ] time= 28/10/2026 10:05:38
[2026-10-28 10:05:38,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:05:38,136.136 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:05:38,284.284 INFO    ] No existing commands found in stream
[2026-10-28 10:05:43,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:05:43,308.308 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 10:05:48,091.091 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:05:48,094.094 INFO    ] Checking for system updates...
[2026-10-28 10:05:48,129.129 INFO    ] 200
[2026-10-28 10:05:48,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:05:48,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:05:48,186.186 INFO    ] No update needed
[2026-10-28 10:05:48,189.189 INFO    ] Checking for camera pi updates...
[2026-10-28 10:05:48,222.222 INFO    ] 200
[2026-10-28 10:05:48,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:05:48,268.268 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:05:48,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:05:48,356.356 INFO    ] No camera update needed
[2026-10-28 10:05:48,359.359 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:05:48,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:05:48,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:05:48,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:05:50,411.411 INFO    ] ================================================
[2026-10-28 10:05:50,426.426 INFO    ] Launching Daemon at Wed Oct 28 10:05:50 IST 2026
[2026-10-28 10:05:50,438.438 INFO    ] ================================================
[2026-10-28 10:05:51,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:05:51
[2026-10-28 10:05:51,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:05:51,876.876 INFO    ] Initializing speech engine...
[2026-10-28 10:05:51,890.890 INFO    ] 2026-10-28 10:05:51
[2026-10-28 10:05:52,171.171 INFO    ] 2026-10-28 10:05:52
[2026-10-28 10:05:52,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:05:52,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:05:52,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:05:52,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:05:52,668.668 INFO    ] time= 28/10/2026 10:05:52
[2026-10-28 10:05:52,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:05:52,777.777 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:05:52,949.949 INFO    ] No existing commands found in stream
[2026-10-28 10:05:57,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:05:57,972.972 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-28 10:05:59,308.308 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:05:59,315.315 INFO    ] Checking for system updates...
[2026-10-28 10:05:59,354.354 INFO    ] 200
[2026-10-28 10:05:59,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:05:59,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:05:59,411.411 INFO    ] No update needed
[2026-10-28 10:05:59,417.417 INFO    ] Checking for camera pi updates...
[2026-10-28 10:05:59,454.454 INFO    ] 200
[2026-10-28 10:05:59,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:05:59,496.496 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:05:59,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:05:59,591.591 INFO    ] No camera update needed
[2026-10-28 10:05:59,593.593 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:05:59,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:05:59,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:05:59,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:06:01,647.647 INFO    ] ================================================
[2026-10-28 10:06:01,662.662 INFO    ] Launching Daemon at Wed Oct 28 10:06:01 IST 2026
[2026-10-28 10:06:01,674.674 INFO    ] ================================================
[2026-10-28 10:06:02,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:06:02
[2026-10-28 10:06:03,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:06:03,436.436 INFO    ] Initializing speech engine...
[2026-10-28 10:06:03,450.450 INFO    ] 2026-10-28 10:06:03
[2026-10-28 10:06:03,748.748 INFO    ] 2026-10-28 10:06:03
[2026-10-28 10:06:03,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:06:03,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:06:03,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:06:04,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:06:04,233.233 INFO    ] time= 28/10/2026 10:06:04
[2026-10-28 10:06:04,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:06:04,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:06:04,417.417 INFO    ] No existing commands found in stream
[2026-10-28 10:06:09,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:06:09,431.431 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-28 10:06:13,805.805 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:06:13,808.808 INFO    ] Checking for system updates...
[2026-10-28 10:06:13,843.843 INFO    ] 200
[2026-10-28 10:06:13,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:06:13,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:06:13,907.907 INFO    ] No update needed
[2026-10-28 10:06:13,909.909 INFO    ] Checking for camera pi updates...
[2026-10-28 10:06:13,942.942 INFO    ] 200
[2026-10-28 10:06:13,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:06:13,984.984 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:06:14,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:06:14,075.075 INFO    ] No camera update needed
[2026-10-28 10:06:14,077.077 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:06:14,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:06:14,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:06:14,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:06:16,130.130 INFO    ] ================================================
[2026-10-28 10:06:16,145.145 INFO    ] Launching Daemon at Wed Oct 28 10:06:16 IST 2026
[2026-10-28 10:06:16,159.159 INFO    ] ================================================
[2026-10-28 10:06:16,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:06:16
[2026-10-28 10:06:17,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:06:17,642.642 INFO    ] Initializing speech engine...
[2026-10-28 10:06:17,653.653 INFO    ] 2026-10-28 10:06:17
[2026-10-28 10:06:17,932.932 INFO    ] 2026-10-28 10:06:17
[2026-10-28 10:06:17,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:06:18,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:06:18,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:06:18,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:06:18,481.481 INFO    ] time= 28/10/2026 10:06:18
[2026-10-28 10:06:18,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:06:18,516.516 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:06:18,705.705 INFO    ] No existing commands found in stream
[2026-10-28 10:06:23,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:06:23,735.735 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-28 10:06:25,584.584 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:06:25,587.587 INFO    ] Checking for system updates...
[2026-10-28 10:06:25,624.624 INFO    ] 200
[2026-10-28 10:06:25,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:06:25,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:06:25,683.683 INFO    ] No update needed
[2026-10-28 10:06:25,686.686 INFO    ] Checking for camera pi updates...
[2026-10-28 10:06:25,725.725 INFO    ] 200
[2026-10-28 10:06:25,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:06:25,775.775 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:06:25,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:06:25,874.874 INFO    ] No camera update needed
[2026-10-28 10:06:25,877.877 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:06:25,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:06:25,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:06:25,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:06:27,932.932 INFO    ] ================================================
[2026-10-28 10:06:27,948.948 INFO    ] Launching Daemon at Wed Oct 28 10:06:27 IST 2026
[2026-10-28 10:06:27,959.959 INFO    ] ================================================
[2026-10-28 10:06:28,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:06:28
[2026-10-28 10:06:29,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:06:29,404.404 INFO    ] Initializing speech engine...
[2026-10-28 10:06:29,412.412 INFO    ] 2026-10-28 10:06:29
[2026-10-28 10:06:29,689.689 INFO    ] 2026-10-28 10:06:29
[2026-10-28 10:06:29,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:06:29,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:06:29,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:06:30,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:06:30,255.255 INFO    ] time= 28/10/2026 10:06:30
[2026-10-28 10:06:30,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:06:30,282.282 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:06:30,438.438 INFO    ] No existing commands found in stream
[2026-10-28 10:06:35,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:06:35,466.466 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 10:06:38,205.205 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:06:38,208.208 INFO    ] Checking for system updates...
[2026-10-28 10:06:38,247.247 INFO    ] 200
[2026-10-28 10:06:38,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:06:38,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:06:38,311.311 INFO    ] No update needed
[2026-10-28 10:06:38,313.313 INFO    ] Checking for camera pi updates...
[2026-10-28 10:06:38,347.347 INFO    ] 200
[2026-10-28 10:06:38,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:06:38,390.390 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:06:38,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:06:38,498.498 INFO    ] No camera update needed
[2026-10-28 10:06:38,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:06:38,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:06:38,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:06:38,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:06:40,555.555 INFO    ] ================================================
[2026-10-28 10:06:40,571.571 INFO    ] Launching Daemon at Wed Oct 28 10:06:40 IST 2026
[2026-10-28 10:06:40,582.582 INFO    ] ================================================
[2026-10-28 10:06:41,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:06:41
[2026-10-28 10:06:41,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:06:42,210.210 INFO    ] Initializing speech engine...
[2026-10-28 10:06:42,219.219 INFO    ] 2026-10-28 10:06:42
[2026-10-28 10:06:42,498.498 INFO    ] 2026-10-28 10:06:42
[2026-10-28 10:06:42,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:06:42,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:06:42,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:06:43,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:06:43,060.060 INFO    ] time= 28/10/2026 10:06:43
[2026-10-28 10:06:43,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:06:43,109.109 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:06:43,219.219 INFO    ] No existing commands found in stream
[2026-10-28 10:06:48,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:06:48,242.242 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-28 10:06:53,042.042 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:06:53,045.045 INFO    ] Checking for system updates...
[2026-10-28 10:06:53,079.079 INFO    ] 200
[2026-10-28 10:06:53,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:06:53,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:06:53,136.136 INFO    ] No update needed
[2026-10-28 10:06:53,138.138 INFO    ] Checking for camera pi updates...
[2026-10-28 10:06:53,176.176 INFO    ] 200
[2026-10-28 10:06:53,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:06:53,218.218 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:06:53,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:06:53,317.317 INFO    ] No camera update needed
[2026-10-28 10:06:53,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:06:53,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:06:53,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:06:53,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:06:55,373.373 INFO    ] ================================================
[2026-10-28 10:06:55,389.389 INFO    ] Launching Daemon at Wed Oct 28 10:06:55 IST 2026
[2026-10-28 10:06:55,400.400 INFO    ] ================================================
[2026-10-28 10:06:55,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:06:55
[2026-10-28 10:06:56,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:06:56,799.799 INFO    ] Initializing speech engine...
[2026-10-28 10:06:56,822.822 INFO    ] 2026-10-28 10:06:56
[2026-10-28 10:06:57,076.076 INFO    ] 2026-10-28 10:06:57
[2026-10-28 10:06:57,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:06:57,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:06:57,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:06:57,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:06:57,641.641 INFO    ] time= 28/10/2026 10:06:57
[2026-10-28 10:06:57,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:06:57,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:06:57,830.830 INFO    ] No existing commands found in stream
[2026-10-28 10:07:02,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:07:02,860.860 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 10:07:07,362.362 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:07:07,365.365 INFO    ] Checking for system updates...
[2026-10-28 10:07:07,403.403 INFO    ] 200
[2026-10-28 10:07:07,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:07:07,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:07:07,460.460 INFO    ] No update needed
[2026-10-28 10:07:07,462.462 INFO    ] Checking for camera pi updates...
[2026-10-28 10:07:07,499.499 INFO    ] 200
[2026-10-28 10:07:07,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:07:07,547.547 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:07:07,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:07:07,633.633 INFO    ] No camera update needed
[2026-10-28 10:07:07,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:07:07,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:07:07,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:07:07,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:07:09,690.690 INFO    ] ================================================
[2026-10-28 10:07:09,706.706 INFO    ] Launching Daemon at Wed Oct 28 10:07:09 IST 2026
[2026-10-28 10:07:09,717.717 INFO    ] ================================================
[2026-10-28 10:07:10,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:07:10
[2026-10-28 10:07:10,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:07:11,144.144 INFO    ] Initializing speech engine...
[2026-10-28 10:07:11,153.153 INFO    ] 2026-10-28 10:07:11
[2026-10-28 10:07:11,398.398 INFO    ] 2026-10-28 10:07:11
[2026-10-28 10:07:11,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:07:11,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:07:11,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:07:12,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:07:12,018.018 INFO    ] time= 28/10/2026 10:07:12
[2026-10-28 10:07:12,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:07:12,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:07:12,221.221 INFO    ] No existing commands found in stream
[2026-10-28 10:07:17,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:07:17,249.249 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-28 10:07:20,041.041 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:07:20,043.043 INFO    ] Checking for system updates...
[2026-10-28 10:07:20,079.079 INFO    ] 200
[2026-10-28 10:07:20,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:07:20,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:07:20,135.135 INFO    ] No update needed
[2026-10-28 10:07:20,137.137 INFO    ] Checking for camera pi updates...
[2026-10-28 10:07:20,172.172 INFO    ] 200
[2026-10-28 10:07:20,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:07:20,214.214 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:07:20,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:07:20,319.319 INFO    ] No camera update needed
[2026-10-28 10:07:20,321.321 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:07:20,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:07:20,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:07:20,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:07:22,374.374 INFO    ] ================================================
[2026-10-28 10:07:22,390.390 INFO    ] Launching Daemon at Wed Oct 28 10:07:22 IST 2026
[2026-10-28 10:07:22,401.401 INFO    ] ================================================
[2026-10-28 10:07:22,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:07:22
[2026-10-28 10:07:23,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:07:23,819.819 INFO    ] Initializing speech engine...
[2026-10-28 10:07:23,827.827 INFO    ] 2026-10-28 10:07:23
[2026-10-28 10:07:24,080.080 INFO    ] 2026-10-28 10:07:24
[2026-10-28 10:07:24,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:07:24,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:07:24,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:07:24,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:07:24,645.645 INFO    ] time= 28/10/2026 10:07:24
[2026-10-28 10:07:24,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:07:24,670.670 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:07:24,820.820 INFO    ] No existing commands found in stream
[2026-10-28 10:07:29,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:07:29,849.849 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-28 10:07:32,122.122 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:07:32,125.125 INFO    ] Checking for system updates...
[2026-10-28 10:07:32,166.166 INFO    ] 200
[2026-10-28 10:07:32,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:07:32,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:07:32,235.235 INFO    ] No update needed
[2026-10-28 10:07:32,238.238 INFO    ] Checking for camera pi updates...
[2026-10-28 10:07:32,273.273 INFO    ] 200
[2026-10-28 10:07:32,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:07:32,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:07:32,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:07:32,437.437 INFO    ] No camera update needed
[2026-10-28 10:07:32,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:07:32,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:07:32,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:07:32,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:07:34,505.505 INFO    ] ================================================
[2026-10-28 10:07:34,520.520 INFO    ] Launching Daemon at Wed Oct 28 10:07:34 IST 2026
[2026-10-28 10:07:34,531.531 INFO    ] ================================================
[2026-10-28 10:07:35,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:07:35
[2026-10-28 10:07:35,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:07:35,984.984 INFO    ] Initializing speech engine...
[2026-10-28 10:07:35,990.990 INFO    ] 2026-10-28 10:07:35
[2026-10-28 10:07:36,248.248 INFO    ] 2026-10-28 10:07:36
[2026-10-28 10:07:36,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:07:36,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:07:36,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:07:37,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:07:37,085.085 INFO    ] time= 28/10/2026 10:07:37
[2026-10-28 10:07:37,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:07:37,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:07:37,327.327 INFO    ] No existing commands found in stream
[2026-10-28 10:07:42,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:07:42,360.360 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 10:07:46,783.783 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:07:46,785.785 INFO    ] Checking for system updates...
[2026-10-28 10:07:46,821.821 INFO    ] 200
[2026-10-28 10:07:46,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:07:46,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:07:46,884.884 INFO    ] No update needed
[2026-10-28 10:07:46,887.887 INFO    ] Checking for camera pi updates...
[2026-10-28 10:07:46,920.920 INFO    ] 200
[2026-10-28 10:07:46,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:07:46,967.967 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:07:47,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:07:47,057.057 INFO    ] No camera update needed
[2026-10-28 10:07:47,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:07:47,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:07:47,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:07:47,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:07:49,115.115 INFO    ] ================================================
[2026-10-28 10:07:49,131.131 INFO    ] Launching Daemon at Wed Oct 28 10:07:49 IST 2026
[2026-10-28 10:07:49,142.142 INFO    ] ================================================
[2026-10-28 10:07:49,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:07:49
[2026-10-28 10:07:50,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:07:50,603.603 INFO    ] Initializing speech engine...
[2026-10-28 10:07:50,612.612 INFO    ] 2026-10-28 10:07:50
[2026-10-28 10:07:50,871.871 INFO    ] 2026-10-28 10:07:50
[2026-10-28 10:07:50,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:07:51,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:07:51,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:07:51,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:07:51,425.425 INFO    ] time= 28/10/2026 10:07:51
[2026-10-28 10:07:51,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:07:51,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:07:51,568.568 INFO    ] No existing commands found in stream
[2026-10-28 10:07:56,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:07:56,591.591 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-28 10:08:01,120.120 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:08:01,123.123 INFO    ] Checking for system updates...
[2026-10-28 10:08:01,159.159 INFO    ] 200
[2026-10-28 10:08:01,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:08:01,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:08:01,228.228 INFO    ] No update needed
[2026-10-28 10:08:01,231.231 INFO    ] Checking for camera pi updates...
[2026-10-28 10:08:01,274.274 INFO    ] 200
[2026-10-28 10:08:01,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:08:01,386.386 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:08:01,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:08:01,508.508 INFO    ] No camera update needed
[2026-10-28 10:08:01,511.511 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:08:01,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:08:01,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:08:01,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:08:03,574.574 INFO    ] ================================================
[2026-10-28 10:08:03,590.590 INFO    ] Launching Daemon at Wed Oct 28 10:08:03 IST 2026
[2026-10-28 10:08:03,601.601 INFO    ] ================================================
[2026-10-28 10:08:04,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:08:04
[2026-10-28 10:08:04,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:08:05,181.181 INFO    ] Initializing speech engine...
[2026-10-28 10:08:05,191.191 INFO    ] 2026-10-28 10:08:05
[2026-10-28 10:08:05,467.467 INFO    ] 2026-10-28 10:08:05
[2026-10-28 10:08:05,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:08:05,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:08:05,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:08:06,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:08:06,204.204 INFO    ] time= 28/10/2026 10:08:06
[2026-10-28 10:08:06,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:08:06,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:08:06,433.433 INFO    ] No existing commands found in stream
[2026-10-28 10:08:11,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:08:11,469.469 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-28 10:08:12,651.651 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:08:12,654.654 INFO    ] Checking for system updates...
[2026-10-28 10:08:12,694.694 INFO    ] 200
[2026-10-28 10:08:12,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:08:12,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:08:12,752.752 INFO    ] No update needed
[2026-10-28 10:08:12,756.756 INFO    ] Checking for camera pi updates...
[2026-10-28 10:08:12,793.793 INFO    ] 200
[2026-10-28 10:08:12,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:08:12,838.838 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:08:12,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:08:12,927.927 INFO    ] No camera update needed
[2026-10-28 10:08:12,929.929 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:08:12,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:08:12,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:08:12,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:08:14,983.983 INFO    ] ================================================
[2026-10-28 10:08:15,998.998 INFO    ] Launching Daemon at Wed Oct 28 10:08:14 IST 2026
[2026-10-28 10:08:15,009.009 INFO    ] ================================================
[2026-10-28 10:08:15,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:08:15
[2026-10-28 10:08:16,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:08:16,428.428 INFO    ] Initializing speech engine...
[2026-10-28 10:08:16,435.435 INFO    ] 2026-10-28 10:08:16
[2026-10-28 10:08:16,700.700 INFO    ] 2026-10-28 10:08:16
[2026-10-28 10:08:16,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:08:16,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:08:16,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:08:17,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:08:17,242.242 INFO    ] time= 28/10/2026 10:08:17
[2026-10-28 10:08:17,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:08:17,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:08:17,418.418 INFO    ] No existing commands found in stream
[2026-10-28 10:08:22,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:08:22,446.446 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 10:08:24,564.564 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:08:24,566.566 INFO    ] Checking for system updates...
[2026-10-28 10:08:24,604.604 INFO    ] 200
[2026-10-28 10:08:24,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:08:24,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:08:24,661.661 INFO    ] No update needed
[2026-10-28 10:08:24,664.664 INFO    ] Checking for camera pi updates...
[2026-10-28 10:08:24,700.700 INFO    ] 200
[2026-10-28 10:08:24,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:08:24,746.746 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:08:24,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:08:24,829.829 INFO    ] No camera update needed
[2026-10-28 10:08:24,831.831 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:08:24,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:08:24,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:08:24,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:08:26,885.885 INFO    ] ================================================
[2026-10-28 10:08:26,899.899 INFO    ] Launching Daemon at Wed Oct 28 10:08:26 IST 2026
[2026-10-28 10:08:26,910.910 INFO    ] ================================================
[2026-10-28 10:08:27,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:08:27
[2026-10-28 10:08:28,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:08:28,490.490 INFO    ] Initializing speech engine...
[2026-10-28 10:08:28,503.503 INFO    ] 2026-10-28 10:08:28
[2026-10-28 10:08:28,809.809 INFO    ] 2026-10-28 10:08:28
[2026-10-28 10:08:28,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:08:29,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:08:29,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:08:29,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:08:29,455.455 INFO    ] time= 28/10/2026 10:08:29
[2026-10-28 10:08:29,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:08:29,560.560 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:08:29,728.728 INFO    ] No existing commands found in stream
[2026-10-28 10:08:34,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:08:34,762.762 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-28 10:08:39,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:08:39,371.371 INFO    ] Checking for system updates...
[2026-10-28 10:08:39,410.410 INFO    ] 200
[2026-10-28 10:08:39,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:08:39,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:08:39,469.469 INFO    ] No update needed
[2026-10-28 10:08:39,471.471 INFO    ] Checking for camera pi updates...
[2026-10-28 10:08:39,508.508 INFO    ] 200
[2026-10-28 10:08:39,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:08:39,552.552 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:08:39,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:08:39,618.618 INFO    ] No camera update needed
[2026-10-28 10:08:39,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:08:39,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:08:39,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:08:39,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:08:41,676.676 INFO    ] ================================================
[2026-10-28 10:08:41,691.691 INFO    ] Launching Daemon at Wed Oct 28 10:08:41 IST 2026
[2026-10-28 10:08:41,704.704 INFO    ] ================================================
[2026-10-28 10:08:42,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:08:42
[2026-10-28 10:08:42,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:08:43,141.141 INFO    ] Initializing speech engine...
[2026-10-28 10:08:43,156.156 INFO    ] 2026-10-28 10:08:43
[2026-10-28 10:08:43,426.426 INFO    ] 2026-10-28 10:08:43
[2026-10-28 10:08:43,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:08:43,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:08:43,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:08:43,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:08:43,949.949 INFO    ] time= 28/10/2026 10:08:43
[2026-10-28 10:08:43,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:08:43,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:08:44,141.141 INFO    ] No existing commands found in stream
[2026-10-28 10:08:49,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:08:49,159.159 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 10:08:53,484.484 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:08:53,486.486 INFO    ] Checking for system updates...
[2026-10-28 10:08:53,522.522 INFO    ] 200
[2026-10-28 10:08:53,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:08:53,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:08:53,581.581 INFO    ] No update needed
[2026-10-28 10:08:53,583.583 INFO    ] Checking for camera pi updates...
[2026-10-28 10:08:53,617.617 INFO    ] 200
[2026-10-28 10:08:53,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:08:53,659.659 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:08:53,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:08:53,873.873 INFO    ] No camera update needed
[2026-10-28 10:08:53,876.876 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:08:53,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:08:53,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:08:53,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:08:55,932.932 INFO    ] ================================================
[2026-10-28 10:08:55,948.948 INFO    ] Launching Daemon at Wed Oct 28 10:08:55 IST 2026
[2026-10-28 10:08:55,959.959 INFO    ] ================================================
[2026-10-28 10:08:56,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:08:56
[2026-10-28 10:08:57,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:08:57,416.416 INFO    ] Initializing speech engine...
[2026-10-28 10:08:57,425.425 INFO    ] 2026-10-28 10:08:57
[2026-10-28 10:08:57,686.686 INFO    ] 2026-10-28 10:08:57
[2026-10-28 10:08:57,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:08:58,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:08:58,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:08:58,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:08:58,433.433 INFO    ] time= 28/10/2026 10:08:58
[2026-10-28 10:08:58,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:08:58,534.534 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:08:58,675.675 INFO    ] No existing commands found in stream
[2026-10-28 10:09:03,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:09:03,688.688 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-28 10:09:08,324.324 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:09:08,326.326 INFO    ] Checking for system updates...
[2026-10-28 10:09:08,365.365 INFO    ] 200
[2026-10-28 10:09:08,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:09:08,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:09:08,425.425 INFO    ] No update needed
[2026-10-28 10:09:08,428.428 INFO    ] Checking for camera pi updates...
[2026-10-28 10:09:08,465.465 INFO    ] 200
[2026-10-28 10:09:08,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:09:08,513.513 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:09:08,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:09:08,702.702 INFO    ] No camera update needed
[2026-10-28 10:09:08,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:09:08,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:09:08,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:09:08,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:09:10,762.762 INFO    ] ================================================
[2026-10-28 10:09:10,778.778 INFO    ] Launching Daemon at Wed Oct 28 10:09:10 IST 2026
[2026-10-28 10:09:10,788.788 INFO    ] ================================================
[2026-10-28 10:09:11,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:09:11
[2026-10-28 10:09:11,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:09:12,233.233 INFO    ] Initializing speech engine...
[2026-10-28 10:09:12,247.247 INFO    ] 2026-10-28 10:09:12
[2026-10-28 10:09:12,528.528 INFO    ] 2026-10-28 10:09:12
[2026-10-28 10:09:12,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:09:12,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:09:12,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:09:13,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:09:13,093.093 INFO    ] time= 28/10/2026 10:09:13
[2026-10-28 10:09:13,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:09:13,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:09:13,293.293 INFO    ] No existing commands found in stream
[2026-10-28 10:09:18,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:09:18,308.308 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-28 10:09:21,452.452 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:09:21,455.455 INFO    ] Checking for system updates...
[2026-10-28 10:09:21,491.491 INFO    ] 200
[2026-10-28 10:09:21,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:09:21,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:09:21,549.549 INFO    ] No update needed
[2026-10-28 10:09:21,552.552 INFO    ] Checking for camera pi updates...
[2026-10-28 10:09:21,586.586 INFO    ] 200
[2026-10-28 10:09:21,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:09:21,630.630 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:09:21,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:09:21,717.717 INFO    ] No camera update needed
[2026-10-28 10:09:21,720.720 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:09:21,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:09:21,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:09:21,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:09:23,775.775 INFO    ] ================================================
[2026-10-28 10:09:23,790.790 INFO    ] Launching Daemon at Wed Oct 28 10:09:23 IST 2026
[2026-10-28 10:09:23,802.802 INFO    ] ================================================
[2026-10-28 10:09:24,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:09:24
[2026-10-28 10:09:25,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:09:25,458.458 INFO    ] Initializing speech engine...
[2026-10-28 10:09:25,466.466 INFO    ] 2026-10-28 10:09:25
[2026-10-28 10:09:25,760.760 INFO    ] 2026-10-28 10:09:25
[2026-10-28 10:09:25,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:09:27,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:09:27,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:09:28,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:09:28,511.511 INFO    ] time= 28/10/2026 10:09:28
[2026-10-28 10:09:28,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:09:28,542.542 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:09:30,570.570 INFO    ] No existing commands found in stream
[2026-10-28 10:09:35,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:09:35,583.583 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-28 10:09:39,586.586 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:09:39,589.589 INFO    ] Checking for system updates...
[2026-10-28 10:09:39,626.626 INFO    ] 200
[2026-10-28 10:09:39,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:09:39,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:09:39,701.701 INFO    ] No update needed
[2026-10-28 10:09:39,705.705 INFO    ] Checking for camera pi updates...
[2026-10-28 10:09:39,746.746 INFO    ] 200
[2026-10-28 10:09:39,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:09:39,796.796 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:09:39,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:09:39,881.881 INFO    ] No camera update needed
[2026-10-28 10:09:39,884.884 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:09:39,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:09:39,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:09:39,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:09:41,940.940 INFO    ] ================================================
[2026-10-28 10:09:41,956.956 INFO    ] Launching Daemon at Wed Oct 28 10:09:41 IST 2026
[2026-10-28 10:09:41,967.967 INFO    ] ================================================
[2026-10-28 10:09:42,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:09:42
[2026-10-28 10:09:43,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:09:43,585.585 INFO    ] Initializing speech engine...
[2026-10-28 10:09:43,594.594 INFO    ] 2026-10-28 10:09:43
[2026-10-28 10:09:43,873.873 INFO    ] 2026-10-28 10:09:43
[2026-10-28 10:09:43,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:09:44,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:09:44,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:09:44,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:09:44,611.611 INFO    ] time= 28/10/2026 10:09:44
[2026-10-28 10:09:44,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:09:44,709.709 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:09:44,844.844 INFO    ] No existing commands found in stream
[2026-10-28 10:09:49,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:09:49,864.864 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-28 10:09:53,489.489 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:09:53,492.492 INFO    ] Checking for system updates...
[2026-10-28 10:09:53,529.529 INFO    ] 200
[2026-10-28 10:09:53,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:09:53,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:09:53,594.594 INFO    ] No update needed
[2026-10-28 10:09:53,597.597 INFO    ] Checking for camera pi updates...
[2026-10-28 10:09:53,631.631 INFO    ] 200
[2026-10-28 10:09:53,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:09:53,676.676 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:09:53,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:09:53,761.761 INFO    ] No camera update needed
[2026-10-28 10:09:53,763.763 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:09:53,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:09:53,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:09:53,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:09:55,818.818 INFO    ] ================================================
[2026-10-28 10:09:55,834.834 INFO    ] Launching Daemon at Wed Oct 28 10:09:55 IST 2026
[2026-10-28 10:09:55,845.845 INFO    ] ================================================
[2026-10-28 10:09:56,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:09:56
[2026-10-28 10:09:56,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:09:57,262.262 INFO    ] Initializing speech engine...
[2026-10-28 10:09:57,271.271 INFO    ] 2026-10-28 10:09:57
[2026-10-28 10:09:57,520.520 INFO    ] 2026-10-28 10:09:57
[2026-10-28 10:09:57,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:09:57,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:09:57,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:09:58,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:09:58,127.127 INFO    ] time= 28/10/2026 10:09:58
[2026-10-28 10:09:58,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:09:58,142.142 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:09:58,303.303 INFO    ] No existing commands found in stream
[2026-10-28 10:10:03,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:10:03,329.329 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-28 10:10:08,884.884 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:10:08,887.887 INFO    ] Checking for system updates...
[2026-10-28 10:10:08,922.922 INFO    ] 200
[2026-10-28 10:10:08,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:10:08,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:10:08,980.980 INFO    ] No update needed
[2026-10-28 10:10:08,982.982 INFO    ] Checking for camera pi updates...
[2026-10-28 10:10:09,015.015 INFO    ] 200
[2026-10-28 10:10:09,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:10:09,058.058 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:10:09,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:10:09,149.149 INFO    ] No camera update needed
[2026-10-28 10:10:09,152.152 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:10:09,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:10:09,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:10:09,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:10:11,206.206 INFO    ] ================================================
[2026-10-28 10:10:11,222.222 INFO    ] Launching Daemon at Wed Oct 28 10:10:11 IST 2026
[2026-10-28 10:10:11,232.232 INFO    ] ================================================
[2026-10-28 10:10:11,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:10:11
[2026-10-28 10:10:12,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:10:12,835.835 INFO    ] Initializing speech engine...
[2026-10-28 10:10:12,848.848 INFO    ] 2026-10-28 10:10:12
[2026-10-28 10:10:13,131.131 INFO    ] 2026-10-28 10:10:13
[2026-10-28 10:10:13,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:10:13,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:10:13,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:10:13,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:10:13,905.905 INFO    ] time= 28/10/2026 10:10:13
[2026-10-28 10:10:13,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:10:14,012.012 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:10:14,273.273 INFO    ] No existing commands found in stream
[2026-10-28 10:10:19,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:10:19,297.297 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-28 10:10:23,844.844 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:10:23,846.846 INFO    ] Checking for system updates...
[2026-10-28 10:10:23,882.882 INFO    ] 200
[2026-10-28 10:10:23,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:10:23,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:10:23,946.946 INFO    ] No update needed
[2026-10-28 10:10:23,948.948 INFO    ] Checking for camera pi updates...
[2026-10-28 10:10:23,982.982 INFO    ] 200
[2026-10-28 10:10:23,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:10:24,025.025 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:10:24,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:10:24,107.107 INFO    ] No camera update needed
[2026-10-28 10:10:24,109.109 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:10:24,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:10:24,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:10:24,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:10:26,164.164 INFO    ] ================================================
[2026-10-28 10:10:26,179.179 INFO    ] Launching Daemon at Wed Oct 28 10:10:26 IST 2026
[2026-10-28 10:10:26,191.191 INFO    ] ================================================
[2026-10-28 10:10:26,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:10:26
[2026-10-28 10:10:27,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:10:27,610.610 INFO    ] Initializing speech engine...
[2026-10-28 10:10:27,619.619 INFO    ] 2026-10-28 10:10:27
[2026-10-28 10:10:27,872.872 INFO    ] 2026-10-28 10:10:27
[2026-10-28 10:10:27,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:10:28,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:10:28,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:10:28,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:10:28,592.592 INFO    ] time= 28/10/2026 10:10:28
[2026-10-28 10:10:28,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:10:28,670.670 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:10:28,825.825 INFO    ] No existing commands found in stream
[2026-10-28 10:10:33,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:10:33,859.859 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-28 10:10:38,243.243 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:10:38,246.246 INFO    ] Checking for system updates...
[2026-10-28 10:10:38,282.282 INFO    ] 200
[2026-10-28 10:10:38,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:10:38,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:10:38,345.345 INFO    ] No update needed
[2026-10-28 10:10:38,347.347 INFO    ] Checking for camera pi updates...
[2026-10-28 10:10:38,382.382 INFO    ] 200
[2026-10-28 10:10:38,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:10:38,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:10:38,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:10:38,517.517 INFO    ] No camera update needed
[2026-10-28 10:10:38,519.519 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:10:38,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:10:38,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:10:38,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:10:40,574.574 INFO    ] ================================================
[2026-10-28 10:10:40,590.590 INFO    ] Launching Daemon at Wed Oct 28 10:10:40 IST 2026
[2026-10-28 10:10:40,601.601 INFO    ] ================================================
[2026-10-28 10:10:41,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:10:41
[2026-10-28 10:10:41,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:10:42,054.054 INFO    ] Initializing speech engine...
[2026-10-28 10:10:42,063.063 INFO    ] 2026-10-28 10:10:42
[2026-10-28 10:10:42,316.316 INFO    ] 2026-10-28 10:10:42
[2026-10-28 10:10:42,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:10:42,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:10:42,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:10:42,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:10:42,914.914 INFO    ] time= 28/10/2026 10:10:42
[2026-10-28 10:10:42,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:10:42,980.980 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:10:43,115.115 INFO    ] No existing commands found in stream
[2026-10-28 10:10:48,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:10:48,142.142 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-28 10:10:51,461.461 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:10:51,463.463 INFO    ] Checking for system updates...
[2026-10-28 10:10:51,500.500 INFO    ] 200
[2026-10-28 10:10:51,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:10:51,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:10:51,559.559 INFO    ] No update needed
[2026-10-28 10:10:51,561.561 INFO    ] Checking for camera pi updates...
[2026-10-28 10:10:51,595.595 INFO    ] 200
[2026-10-28 10:10:51,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:10:51,639.639 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:10:51,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:10:51,726.726 INFO    ] No camera update needed
[2026-10-28 10:10:51,728.728 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:10:51,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:10:51,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:10:51,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:10:53,783.783 INFO    ] ================================================
[2026-10-28 10:10:53,799.799 INFO    ] Launching Daemon at Wed Oct 28 10:10:53 IST 2026
[2026-10-28 10:10:53,810.810 INFO    ] ================================================
[2026-10-28 10:10:54,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:10:54
[2026-10-28 10:10:54,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:10:55,210.210 INFO    ] Initializing speech engine...
[2026-10-28 10:10:55,235.235 INFO    ] 2026-10-28 10:10:55
[2026-10-28 10:10:55,493.493 INFO    ] 2026-10-28 10:10:55
[2026-10-28 10:10:55,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:10:56,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:10:56,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:10:56,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:10:56,307.307 INFO    ] time= 28/10/2026 10:10:56
[2026-10-28 10:10:56,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:10:56,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:10:56,602.602 INFO    ] No existing commands found in stream
[2026-10-28 10:11:01,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:11:01,636.636 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 10:11:05,212.212 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:11:05,215.215 INFO    ] Checking for system updates...
[2026-10-28 10:11:05,257.257 INFO    ] 200
[2026-10-28 10:11:05,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:11:05,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:11:05,314.314 INFO    ] No update needed
[2026-10-28 10:11:05,317.317 INFO    ] Checking for camera pi updates...
[2026-10-28 10:11:05,354.354 INFO    ] 200
[2026-10-28 10:11:05,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:11:05,397.397 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:11:05,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:11:05,476.476 INFO    ] No camera update needed
[2026-10-28 10:11:05,479.479 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:11:05,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:11:05,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:11:05,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:11:07,532.532 INFO    ] ================================================
[2026-10-28 10:11:07,548.548 INFO    ] Launching Daemon at Wed Oct 28 10:11:07 IST 2026
[2026-10-28 10:11:07,559.559 INFO    ] ================================================
[2026-10-28 10:11:08,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:11:08
[2026-10-28 10:11:08,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:11:08,962.962 INFO    ] Initializing speech engine...
[2026-10-28 10:11:08,976.976 INFO    ] 2026-10-28 10:11:08
[2026-10-28 10:11:09,240.240 INFO    ] 2026-10-28 10:11:09
[2026-10-28 10:11:09,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:11:09,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:11:09,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:11:09,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:11:10,009.009 INFO    ] time= 28/10/2026 10:11:09
[2026-10-28 10:11:10,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:11:10,080.080 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:11:10,234.234 INFO    ] No existing commands found in stream
[2026-10-28 10:11:15,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:11:15,273.273 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-28 10:11:19,424.424 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:11:19,427.427 INFO    ] Checking for system updates...
[2026-10-28 10:11:19,465.465 INFO    ] 200
[2026-10-28 10:11:19,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:11:19,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:11:19,522.522 INFO    ] No update needed
[2026-10-28 10:11:19,524.524 INFO    ] Checking for camera pi updates...
[2026-10-28 10:11:19,560.560 INFO    ] 200
[2026-10-28 10:11:19,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:11:19,602.602 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:11:19,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:11:19,787.787 INFO    ] No camera update needed
[2026-10-28 10:11:19,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:11:19,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:11:19,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:11:19,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:11:21,841.841 INFO    ] ================================================
[2026-10-28 10:11:21,857.857 INFO    ] Launching Daemon at Wed Oct 28 10:11:21 IST 2026
[2026-10-28 10:11:21,868.868 INFO    ] ================================================
[2026-10-28 10:11:22,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:11:22
[2026-10-28 10:11:23,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:11:23,287.287 INFO    ] Initializing speech engine...
[2026-10-28 10:11:23,296.296 INFO    ] 2026-10-28 10:11:23
[2026-10-28 10:11:23,543.543 INFO    ] 2026-10-28 10:11:23
[2026-10-28 10:11:23,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:11:23,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:11:23,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:11:24,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:11:24,108.108 INFO    ] time= 28/10/2026 10:11:24
[2026-10-28 10:11:24,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:11:24,133.133 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:11:24,355.355 INFO    ] No existing commands found in stream
[2026-10-28 10:11:29,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:11:29,374.374 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-28 10:11:30,721.721 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:11:30,723.723 INFO    ] Checking for system updates...
[2026-10-28 10:11:30,759.759 INFO    ] 200
[2026-10-28 10:11:30,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:11:30,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:11:30,822.822 INFO    ] No update needed
[2026-10-28 10:11:30,825.825 INFO    ] Checking for camera pi updates...
[2026-10-28 10:11:30,858.858 INFO    ] 200
[2026-10-28 10:11:30,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:11:30,900.900 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:11:30,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:11:30,988.988 INFO    ] No camera update needed
[2026-10-28 10:11:30,991.991 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:11:30,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:11:30,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:11:31,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:11:33,045.045 INFO    ] ================================================
[2026-10-28 10:11:33,060.060 INFO    ] Launching Daemon at Wed Oct 28 10:11:33 IST 2026
[2026-10-28 10:11:33,070.070 INFO    ] ================================================
[2026-10-28 10:11:33,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:11:33
[2026-10-28 10:11:34,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:11:34,474.474 INFO    ] Initializing speech engine...
[2026-10-28 10:11:34,498.498 INFO    ] 2026-10-28 10:11:34
[2026-10-28 10:11:34,755.755 INFO    ] 2026-10-28 10:11:34
[2026-10-28 10:11:34,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:11:35,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:11:35,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:11:35,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:11:35,558.558 INFO    ] time= 28/10/2026 10:11:35
[2026-10-28 10:11:35,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:11:35,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:11:35,795.795 INFO    ] No existing commands found in stream
[2026-10-28 10:11:40,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:11:40,814.814 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-28 10:11:43,682.682 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:11:43,685.685 INFO    ] Checking for system updates...
[2026-10-28 10:11:43,722.722 INFO    ] 200
[2026-10-28 10:11:43,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:11:43,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:11:43,787.787 INFO    ] No update needed
[2026-10-28 10:11:43,790.790 INFO    ] Checking for camera pi updates...
[2026-10-28 10:11:43,828.828 INFO    ] 200
[2026-10-28 10:11:43,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:11:43,872.872 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:11:43,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:11:43,958.958 INFO    ] No camera update needed
[2026-10-28 10:11:43,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:11:43,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:11:43,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:11:43,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:11:46,015.015 INFO    ] ================================================
[2026-10-28 10:11:46,030.030 INFO    ] Launching Daemon at Wed Oct 28 10:11:46 IST 2026
[2026-10-28 10:11:46,040.040 INFO    ] ================================================
[2026-10-28 10:11:46,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:11:46
[2026-10-28 10:11:47,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:11:47,445.445 INFO    ] Initializing speech engine...
[2026-10-28 10:11:47,461.461 INFO    ] 2026-10-28 10:11:47
[2026-10-28 10:11:47,711.711 INFO    ] 2026-10-28 10:11:47
[2026-10-28 10:11:47,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:11:48,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:11:48,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:11:48,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:11:48,414.414 INFO    ] time= 28/10/2026 10:11:48
[2026-10-28 10:11:48,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:11:48,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:11:49,647.647 INFO    ] No existing commands found in stream
[2026-10-28 10:11:54,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:11:54,662.662 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 10:11:58,586.586 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:11:58,589.589 INFO    ] Checking for system updates...
[2026-10-28 10:11:58,625.625 INFO    ] 200
[2026-10-28 10:11:58,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:11:58,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:11:58,688.688 INFO    ] No update needed
[2026-10-28 10:11:58,690.690 INFO    ] Checking for camera pi updates...
[2026-10-28 10:11:58,728.728 INFO    ] 200
[2026-10-28 10:11:58,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:11:58,775.775 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:11:58,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:11:58,865.865 INFO    ] No camera update needed
[2026-10-28 10:11:58,868.868 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:11:58,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:11:58,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:11:58,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:12:00,922.922 INFO    ] ================================================
[2026-10-28 10:12:00,937.937 INFO    ] Launching Daemon at Wed Oct 28 10:12:00 IST 2026
[2026-10-28 10:12:00,947.947 INFO    ] ================================================
[2026-10-28 10:12:01,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:12:01
[2026-10-28 10:12:02,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:12:02,641.641 INFO    ] Initializing speech engine...
[2026-10-28 10:12:02,662.662 INFO    ] 2026-10-28 10:12:02
[2026-10-28 10:12:02,978.978 INFO    ] 2026-10-28 10:12:02
[2026-10-28 10:12:03,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:12:03,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:12:03,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:12:03,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:12:03,675.675 INFO    ] time= 28/10/2026 10:12:03
[2026-10-28 10:12:03,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:12:03,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:12:04,007.007 INFO    ] No existing commands found in stream
[2026-10-28 10:12:09,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:12:09,056.056 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-28 10:12:13,362.362 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:12:13,365.365 INFO    ] Checking for system updates...
[2026-10-28 10:12:13,405.405 INFO    ] 200
[2026-10-28 10:12:13,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:12:13,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:12:13,461.461 INFO    ] No update needed
[2026-10-28 10:12:13,464.464 INFO    ] Checking for camera pi updates...
[2026-10-28 10:12:13,497.497 INFO    ] 200
[2026-10-28 10:12:13,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:12:13,543.543 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:12:13,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:12:13,627.627 INFO    ] No camera update needed
[2026-10-28 10:12:13,629.629 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:12:13,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:12:13,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:12:13,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:12:15,681.681 INFO    ] ================================================
[2026-10-28 10:12:15,696.696 INFO    ] Launching Daemon at Wed Oct 28 10:12:15 IST 2026
[2026-10-28 10:12:15,706.706 INFO    ] ================================================
[2026-10-28 10:12:16,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:12:16
[2026-10-28 10:12:16,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:12:17,116.116 INFO    ] Initializing speech engine...
[2026-10-28 10:12:17,134.134 INFO    ] 2026-10-28 10:12:17
[2026-10-28 10:12:17,380.380 INFO    ] 2026-10-28 10:12:17
[2026-10-28 10:12:17,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:12:17,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:12:17,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:12:17,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:12:17,948.948 INFO    ] time= 28/10/2026 10:12:17
[2026-10-28 10:12:17,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:12:17,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:12:18,116.116 INFO    ] No existing commands found in stream
[2026-10-28 10:12:23,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:12:23,145.145 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-28 10:12:25,526.526 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:12:25,529.529 INFO    ] Checking for system updates...
[2026-10-28 10:12:25,568.568 INFO    ] 200
[2026-10-28 10:12:25,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:12:25,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:12:25,629.629 INFO    ] No update needed
[2026-10-28 10:12:25,631.631 INFO    ] Checking for camera pi updates...
[2026-10-28 10:12:25,667.667 INFO    ] 200
[2026-10-28 10:12:25,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:12:25,710.710 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:12:25,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:12:25,795.795 INFO    ] No camera update needed
[2026-10-28 10:12:25,797.797 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:12:25,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:12:25,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:12:25,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:12:27,853.853 INFO    ] ================================================
[2026-10-28 10:12:27,868.868 INFO    ] Launching Daemon at Wed Oct 28 10:12:27 IST 2026
[2026-10-28 10:12:27,879.879 INFO    ] ================================================
[2026-10-28 10:12:28,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:12:28
[2026-10-28 10:12:29,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:12:29,363.363 INFO    ] Initializing speech engine...
[2026-10-28 10:12:29,371.371 INFO    ] 2026-10-28 10:12:29
[2026-10-28 10:12:29,657.657 INFO    ] 2026-10-28 10:12:29
[2026-10-28 10:12:29,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:12:30,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:12:30,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:12:30,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:12:30,438.438 INFO    ] time= 28/10/2026 10:12:30
[2026-10-28 10:12:30,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:12:30,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:12:30,653.653 INFO    ] No existing commands found in stream
[2026-10-28 10:12:35,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:12:35,675.675 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 10:12:40,866.866 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:12:40,869.869 INFO    ] Checking for system updates...
[2026-10-28 10:12:40,905.905 INFO    ] 200
[2026-10-28 10:12:40,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:12:40,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:12:40,970.970 INFO    ] No update needed
[2026-10-28 10:12:40,973.973 INFO    ] Checking for camera pi updates...
[2026-10-28 10:12:41,011.011 INFO    ] 200
[2026-10-28 10:12:41,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:12:41,059.059 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:12:41,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:12:41,145.145 INFO    ] No camera update needed
[2026-10-28 10:12:41,148.148 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:12:41,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:12:41,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:12:41,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:12:43,202.202 INFO    ] ================================================
[2026-10-28 10:12:43,217.217 INFO    ] Launching Daemon at Wed Oct 28 10:12:43 IST 2026
[2026-10-28 10:12:43,228.228 INFO    ] ================================================
[2026-10-28 10:12:43,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:12:43
[2026-10-28 10:12:44,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:12:44,833.833 INFO    ] Initializing speech engine...
[2026-10-28 10:12:44,839.839 INFO    ] 2026-10-28 10:12:44
[2026-10-28 10:12:45,111.111 INFO    ] 2026-10-28 10:12:45
[2026-10-28 10:12:45,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:12:45,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:12:45,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:12:45,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:12:45,901.901 INFO    ] time= 28/10/2026 10:12:45
[2026-10-28 10:12:45,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:12:45,996.996 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:12:46,229.229 INFO    ] No existing commands found in stream
[2026-10-28 10:12:51,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:12:51,263.263 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-28 10:12:54,335.335 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:12:54,338.338 INFO    ] Checking for system updates...
[2026-10-28 10:12:54,374.374 INFO    ] 200
[2026-10-28 10:12:54,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:12:54,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:12:54,439.439 INFO    ] No update needed
[2026-10-28 10:12:54,442.442 INFO    ] Checking for camera pi updates...
[2026-10-28 10:12:54,476.476 INFO    ] 200
[2026-10-28 10:12:54,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:12:54,521.521 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:12:54,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:12:54,605.605 INFO    ] No camera update needed
[2026-10-28 10:12:54,608.608 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:12:54,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:12:54,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:12:54,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:12:56,662.662 INFO    ] ================================================
[2026-10-28 10:12:56,677.677 INFO    ] Launching Daemon at Wed Oct 28 10:12:56 IST 2026
[2026-10-28 10:12:56,688.688 INFO    ] ================================================
[2026-10-28 10:12:57,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:12:57
[2026-10-28 10:12:57,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:12:58,295.295 INFO    ] Initializing speech engine...
[2026-10-28 10:12:58,303.303 INFO    ] 2026-10-28 10:12:58
[2026-10-28 10:12:58,573.573 INFO    ] 2026-10-28 10:12:58
[2026-10-28 10:12:58,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:12:58,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:12:59,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:12:59,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:12:59,190.190 INFO    ] time= 28/10/2026 10:12:59
[2026-10-28 10:12:59,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:12:59,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:12:59,404.404 INFO    ] No existing commands found in stream
[2026-10-28 10:13:04,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:13:04,433.433 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-28 10:13:06,225.225 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:13:06,228.228 INFO    ] Checking for system updates...
[2026-10-28 10:13:06,265.265 INFO    ] 200
[2026-10-28 10:13:06,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:13:06,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:13:06,326.326 INFO    ] No update needed
[2026-10-28 10:13:06,329.329 INFO    ] Checking for camera pi updates...
[2026-10-28 10:13:06,363.363 INFO    ] 200
[2026-10-28 10:13:06,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:13:06,407.407 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:13:06,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:13:06,479.479 INFO    ] No camera update needed
[2026-10-28 10:13:06,482.482 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:13:06,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:13:06,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:13:06,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:13:08,537.537 INFO    ] ================================================
[2026-10-28 10:13:08,552.552 INFO    ] Launching Daemon at Wed Oct 28 10:13:08 IST 2026
[2026-10-28 10:13:08,563.563 INFO    ] ================================================
[2026-10-28 10:13:09,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:13:09
[2026-10-28 10:13:09,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:13:10,168.168 INFO    ] Initializing speech engine...
[2026-10-28 10:13:10,182.182 INFO    ] 2026-10-28 10:13:10
[2026-10-28 10:13:10,470.470 INFO    ] 2026-10-28 10:13:10
[2026-10-28 10:13:10,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:13:10,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:13:10,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:13:11,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:13:11,216.216 INFO    ] time= 28/10/2026 10:13:11
[2026-10-28 10:13:11,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:13:11,326.326 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:13:11,471.471 INFO    ] No existing commands found in stream
[2026-10-28 10:13:16,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:13:16,486.486 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 10:13:18,455.455 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:13:18,458.458 INFO    ] Checking for system updates...
[2026-10-28 10:13:18,496.496 INFO    ] 200
[2026-10-28 10:13:18,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:13:18,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:13:18,555.555 INFO    ] No update needed
[2026-10-28 10:13:18,557.557 INFO    ] Checking for camera pi updates...
[2026-10-28 10:13:18,592.592 INFO    ] 200
[2026-10-28 10:13:18,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:13:18,641.641 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:13:18,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:13:18,720.720 INFO    ] No camera update needed
[2026-10-28 10:13:18,722.722 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:13:18,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:13:18,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:13:18,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:13:20,776.776 INFO    ] ================================================
[2026-10-28 10:13:20,791.791 INFO    ] Launching Daemon at Wed Oct 28 10:13:20 IST 2026
[2026-10-28 10:13:20,801.801 INFO    ] ================================================
[2026-10-28 10:13:21,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:13:21
[2026-10-28 10:13:22,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:13:22,433.433 INFO    ] Initializing speech engine...
[2026-10-28 10:13:22,442.442 INFO    ] 2026-10-28 10:13:22
[2026-10-28 10:13:22,687.687 INFO    ] 2026-10-28 10:13:22
[2026-10-28 10:13:22,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:13:23,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:13:23,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:13:23,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:13:23,664.664 INFO    ] time= 28/10/2026 10:13:23
[2026-10-28 10:13:23,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:13:23,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:13:23,802.802 INFO    ] No existing commands found in stream
[2026-10-28 10:13:28,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:13:28,817.817 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-28 10:13:31,686.686 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:13:31,690.690 INFO    ] Checking for system updates...
[2026-10-28 10:13:31,730.730 INFO    ] 200
[2026-10-28 10:13:31,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:13:31,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:13:31,799.799 INFO    ] No update needed
[2026-10-28 10:13:31,803.803 INFO    ] Checking for camera pi updates...
[2026-10-28 10:13:31,844.844 INFO    ] 200
[2026-10-28 10:13:31,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:13:31,898.898 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:13:32,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:13:32,118.118 INFO    ] No camera update needed
[2026-10-28 10:13:32,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:13:32,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:13:32,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:13:32,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:13:34,175.175 INFO    ] ================================================
[2026-10-28 10:13:34,190.190 INFO    ] Launching Daemon at Wed Oct 28 10:13:34 IST 2026
[2026-10-28 10:13:34,201.201 INFO    ] ================================================
[2026-10-28 10:13:34,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:13:34
[2026-10-28 10:13:35,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:13:35,718.718 INFO    ] Initializing speech engine...
[2026-10-28 10:13:35,738.738 INFO    ] 2026-10-28 10:13:35
[2026-10-28 10:13:35,993.993 INFO    ] 2026-10-28 10:13:35
[2026-10-28 10:13:36,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:13:36,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:13:36,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:13:36,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:13:36,553.553 INFO    ] time= 28/10/2026 10:13:36
[2026-10-28 10:13:36,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:13:36,593.593 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:13:36,809.809 INFO    ] No existing commands found in stream
[2026-10-28 10:13:41,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:13:41,821.821 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-28 10:13:44,978.978 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:13:44,981.981 INFO    ] Checking for system updates...
[2026-10-28 10:13:45,016.016 INFO    ] 200
[2026-10-28 10:13:45,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:13:45,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:13:45,073.073 INFO    ] No update needed
[2026-10-28 10:13:45,076.076 INFO    ] Checking for camera pi updates...
[2026-10-28 10:13:45,110.110 INFO    ] 200
[2026-10-28 10:13:45,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:13:45,152.152 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:13:45,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:13:45,245.245 INFO    ] No camera update needed
[2026-10-28 10:13:45,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:13:45,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:13:45,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:13:45,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:13:47,301.301 INFO    ] ================================================
[2026-10-28 10:13:47,316.316 INFO    ] Launching Daemon at Wed Oct 28 10:13:47 IST 2026
[2026-10-28 10:13:47,327.327 INFO    ] ================================================
[2026-10-28 10:13:47,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:13:47
[2026-10-28 10:13:48,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:13:48,803.803 INFO    ] Initializing speech engine...
[2026-10-28 10:13:48,812.812 INFO    ] 2026-10-28 10:13:48
[2026-10-28 10:13:49,064.064 INFO    ] 2026-10-28 10:13:49
[2026-10-28 10:13:49,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:13:49,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:13:49,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:13:49,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:13:49,639.639 INFO    ] time= 28/10/2026 10:13:49
[2026-10-28 10:13:49,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:13:49,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:13:49,792.792 INFO    ] No existing commands found in stream
[2026-10-28 10:13:54,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:13:54,810.810 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 10:13:59,230.230 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:13:59,232.232 INFO    ] Checking for system updates...
[2026-10-28 10:13:59,270.270 INFO    ] 200
[2026-10-28 10:13:59,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:13:59,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:13:59,328.328 INFO    ] No update needed
[2026-10-28 10:13:59,331.331 INFO    ] Checking for camera pi updates...
[2026-10-28 10:13:59,364.364 INFO    ] 200
[2026-10-28 10:13:59,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:13:59,406.406 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:13:59,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:13:59,489.489 INFO    ] No camera update needed
[2026-10-28 10:13:59,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:13:59,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:13:59,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:13:59,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:14:01,559.559 INFO    ] ================================================
[2026-10-28 10:14:01,588.588 INFO    ] Launching Daemon at Wed Oct 28 10:14:01 IST 2026
[2026-10-28 10:14:01,605.605 INFO    ] ================================================
[2026-10-28 10:14:02,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:14:02
[2026-10-28 10:14:02,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:14:03,260.260 INFO    ] Initializing speech engine...
[2026-10-28 10:14:03,263.263 INFO    ] 2026-10-28 10:14:03
[2026-10-28 10:14:03,566.566 INFO    ] 2026-10-28 10:14:03
[2026-10-28 10:14:03,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:14:03,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:14:03,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:14:04,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:14:04,182.182 INFO    ] time= 28/10/2026 10:14:04
[2026-10-28 10:14:04,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:14:04,218.218 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:14:04,559.559 INFO    ] No existing commands found in stream
[2026-10-28 10:14:09,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:14:09,588.588 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-28 10:14:12,203.203 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:14:12,206.206 INFO    ] Checking for system updates...
[2026-10-28 10:14:12,241.241 INFO    ] 200
[2026-10-28 10:14:12,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:14:12,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:14:12,303.303 INFO    ] No update needed
[2026-10-28 10:14:12,306.306 INFO    ] Checking for camera pi updates...
[2026-10-28 10:14:12,343.343 INFO    ] 200
[2026-10-28 10:14:12,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:14:12,387.387 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:14:12,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:14:12,468.468 INFO    ] No camera update needed
[2026-10-28 10:14:12,471.471 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:14:12,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:14:12,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:14:12,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:14:14,525.525 INFO    ] ================================================
[2026-10-28 10:14:14,540.540 INFO    ] Launching Daemon at Wed Oct 28 10:14:14 IST 2026
[2026-10-28 10:14:14,551.551 INFO    ] ================================================
[2026-10-28 10:14:15,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:14:15
[2026-10-28 10:14:15,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:14:16,068.068 INFO    ] Initializing speech engine...
[2026-10-28 10:14:16,077.077 INFO    ] 2026-10-28 10:14:16
[2026-10-28 10:14:16,374.374 INFO    ] 2026-10-28 10:14:16
[2026-10-28 10:14:16,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:14:16,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:14:16,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:14:16,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:14:16,873.873 INFO    ] time= 28/10/2026 10:14:16
[2026-10-28 10:14:16,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:14:17,007.007 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:14:17,183.183 INFO    ] No existing commands found in stream
[2026-10-28 10:14:22,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:14:22,201.201 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 10:14:24,652.652 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:14:24,655.655 INFO    ] Checking for system updates...
[2026-10-28 10:14:24,694.694 INFO    ] 200
[2026-10-28 10:14:24,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:14:24,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:14:24,752.752 INFO    ] No update needed
[2026-10-28 10:14:24,755.755 INFO    ] Checking for camera pi updates...
[2026-10-28 10:14:24,788.788 INFO    ] 200
[2026-10-28 10:14:24,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:14:24,830.830 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:14:24,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:14:24,926.926 INFO    ] No camera update needed
[2026-10-28 10:14:24,928.928 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:14:24,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:14:24,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:14:24,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:14:26,983.983 INFO    ] ================================================
[2026-10-28 10:14:27,997.997 INFO    ] Launching Daemon at Wed Oct 28 10:14:26 IST 2026
[2026-10-28 10:14:27,008.008 INFO    ] ================================================
[2026-10-28 10:14:27,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:14:27
[2026-10-28 10:14:28,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:14:28,436.436 INFO    ] Initializing speech engine...
[2026-10-28 10:14:28,441.441 INFO    ] 2026-10-28 10:14:28
[2026-10-28 10:14:28,688.688 INFO    ] 2026-10-28 10:14:28
[2026-10-28 10:14:28,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:14:28,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:14:28,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:14:29,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:14:29,243.243 INFO    ] time= 28/10/2026 10:14:29
[2026-10-28 10:14:29,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:14:29,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:14:29,415.415 INFO    ] No existing commands found in stream
[2026-10-28 10:14:34,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:14:34,448.448 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-28 10:14:36,165.165 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:14:36,168.168 INFO    ] Checking for system updates...
[2026-10-28 10:14:36,204.204 INFO    ] 200
[2026-10-28 10:14:36,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:14:36,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:14:36,267.267 INFO    ] No update needed
[2026-10-28 10:14:36,269.269 INFO    ] Checking for camera pi updates...
[2026-10-28 10:14:36,303.303 INFO    ] 200
[2026-10-28 10:14:36,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:14:36,350.350 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:14:36,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:14:36,443.443 INFO    ] No camera update needed
[2026-10-28 10:14:36,446.446 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:14:36,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:14:36,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:14:36,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:14:38,499.499 INFO    ] ================================================
[2026-10-28 10:14:38,514.514 INFO    ] Launching Daemon at Wed Oct 28 10:14:38 IST 2026
[2026-10-28 10:14:38,525.525 INFO    ] ================================================
[2026-10-28 10:14:39,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:14:39
[2026-10-28 10:14:39,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:14:39,944.944 INFO    ] Initializing speech engine...
[2026-10-28 10:14:39,958.958 INFO    ] 2026-10-28 10:14:39
[2026-10-28 10:14:40,248.248 INFO    ] 2026-10-28 10:14:40
[2026-10-28 10:14:40,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:14:40,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:14:40,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:14:40,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:14:40,744.744 INFO    ] time= 28/10/2026 10:14:40
[2026-10-28 10:14:40,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:14:40,848.848 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:14:41,023.023 INFO    ] No existing commands found in stream
[2026-10-28 10:14:46,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:14:46,057.057 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-28 10:14:49,127.127 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:14:49,129.129 INFO    ] Checking for system updates...
[2026-10-28 10:14:49,165.165 INFO    ] 200
[2026-10-28 10:14:49,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:14:49,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:14:49,221.221 INFO    ] No update needed
[2026-10-28 10:14:49,224.224 INFO    ] Checking for camera pi updates...
[2026-10-28 10:14:49,258.258 INFO    ] 200
[2026-10-28 10:14:49,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:14:49,309.309 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:14:49,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:14:49,394.394 INFO    ] No camera update needed
[2026-10-28 10:14:49,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:14:49,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:14:49,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:14:49,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:14:51,449.449 INFO    ] ================================================
[2026-10-28 10:14:51,465.465 INFO    ] Launching Daemon at Wed Oct 28 10:14:51 IST 2026
[2026-10-28 10:14:51,476.476 INFO    ] ================================================
[2026-10-28 10:14:52,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:14:52
[2026-10-28 10:14:52,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:14:53,092.092 INFO    ] Initializing speech engine...
[2026-10-28 10:14:53,101.101 INFO    ] 2026-10-28 10:14:53
[2026-10-28 10:14:53,372.372 INFO    ] 2026-10-28 10:14:53
[2026-10-28 10:14:53,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:14:53,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:14:53,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:14:53,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:14:53,970.970 INFO    ] time= 28/10/2026 10:14:53
[2026-10-28 10:14:53,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:14:54,043.043 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:14:54,173.173 INFO    ] No existing commands found in stream
[2026-10-28 10:14:59,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:14:59,201.201 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 10:15:00,947.947 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:15:00,950.950 INFO    ] Checking for system updates...
[2026-10-28 10:15:00,985.985 INFO    ] 200
[2026-10-28 10:15:00,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:15:01,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:15:01,051.051 INFO    ] No update needed
[2026-10-28 10:15:01,054.054 INFO    ] Checking for camera pi updates...
[2026-10-28 10:15:01,088.088 INFO    ] 200
[2026-10-28 10:15:01,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:15:01,133.133 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:15:01,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:15:01,225.225 INFO    ] No camera update needed
[2026-10-28 10:15:01,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:15:01,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:15:01,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:15:01,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:15:03,297.297 INFO    ] ================================================
[2026-10-28 10:15:03,321.321 INFO    ] Launching Daemon at Wed Oct 28 10:15:03 IST 2026
[2026-10-28 10:15:03,337.337 INFO    ] ================================================
[2026-10-28 10:15:03,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:15:03
[2026-10-28 10:15:04,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:15:04,827.827 INFO    ] Initializing speech engine...
[2026-10-28 10:15:04,842.842 INFO    ] 2026-10-28 10:15:04
[2026-10-28 10:15:05,112.112 INFO    ] 2026-10-28 10:15:05
[2026-10-28 10:15:05,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:15:05,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:15:05,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:15:05,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:15:05,836.836 INFO    ] time= 28/10/2026 10:15:05
[2026-10-28 10:15:05,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:15:05,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:15:06,065.065 INFO    ] No existing commands found in stream
[2026-10-28 10:15:11,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:15:11,083.083 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 10:15:12,808.808 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:15:12,811.811 INFO    ] Checking for system updates...
[2026-10-28 10:15:12,851.851 INFO    ] 200
[2026-10-28 10:15:12,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:15:12,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:15:12,908.908 INFO    ] No update needed
[2026-10-28 10:15:12,910.910 INFO    ] Checking for camera pi updates...
[2026-10-28 10:15:12,943.943 INFO    ] 200
[2026-10-28 10:15:12,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:15:12,985.985 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:15:13,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:15:13,066.066 INFO    ] No camera update needed
[2026-10-28 10:15:13,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:15:13,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:15:13,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:15:13,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:15:15,121.121 INFO    ] ================================================
[2026-10-28 10:15:15,136.136 INFO    ] Launching Daemon at Wed Oct 28 10:15:15 IST 2026
[2026-10-28 10:15:15,146.146 INFO    ] ================================================
[2026-10-28 10:15:15,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:15:15
[2026-10-28 10:15:16,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:15:16,601.601 INFO    ] Initializing speech engine...
[2026-10-28 10:15:16,607.607 INFO    ] 2026-10-28 10:15:16
[2026-10-28 10:15:16,857.857 INFO    ] 2026-10-28 10:15:16
[2026-10-28 10:15:16,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:15:17,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:15:17,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:15:17,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:15:17,425.425 INFO    ] time= 28/10/2026 10:15:17
[2026-10-28 10:15:17,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:15:17,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:15:17,567.567 INFO    ] No existing commands found in stream
[2026-10-28 10:15:22,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:15:22,586.586 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-28 10:15:26,724.724 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:15:26,727.727 INFO    ] Checking for system updates...
[2026-10-28 10:15:26,763.763 INFO    ] 200
[2026-10-28 10:15:26,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:15:26,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:15:26,826.826 INFO    ] No update needed
[2026-10-28 10:15:26,828.828 INFO    ] Checking for camera pi updates...
[2026-10-28 10:15:26,861.861 INFO    ] 200
[2026-10-28 10:15:26,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:15:26,907.907 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:15:26,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:15:26,991.991 INFO    ] No camera update needed
[2026-10-28 10:15:26,993.993 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:15:26,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:15:27,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:15:27,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:15:29,046.046 INFO    ] ================================================
[2026-10-28 10:15:29,062.062 INFO    ] Launching Daemon at Wed Oct 28 10:15:29 IST 2026
[2026-10-28 10:15:29,074.074 INFO    ] ================================================
[2026-10-28 10:15:29,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:15:29
[2026-10-28 10:15:30,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:15:30,529.529 INFO    ] Initializing speech engine...
[2026-10-28 10:15:30,552.552 INFO    ] 2026-10-28 10:15:30
[2026-10-28 10:15:30,808.808 INFO    ] 2026-10-28 10:15:30
[2026-10-28 10:15:30,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:15:31,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:15:31,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:15:31,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:15:31,375.375 INFO    ] time= 28/10/2026 10:15:31
[2026-10-28 10:15:31,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:15:31,400.400 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:15:31,580.580 INFO    ] No existing commands found in stream
[2026-10-28 10:15:36,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:15:36,608.608 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-28 10:15:37,452.452 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:15:37,455.455 INFO    ] Checking for system updates...
[2026-10-28 10:15:37,491.491 INFO    ] 200
[2026-10-28 10:15:37,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:15:37,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:15:37,554.554 INFO    ] No update needed
[2026-10-28 10:15:37,556.556 INFO    ] Checking for camera pi updates...
[2026-10-28 10:15:37,590.590 INFO    ] 200
[2026-10-28 10:15:37,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:15:37,633.633 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:15:37,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:15:37,816.816 INFO    ] No camera update needed
[2026-10-28 10:15:37,819.819 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:15:37,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:15:37,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:15:37,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:15:39,875.875 INFO    ] ================================================
[2026-10-28 10:15:39,890.890 INFO    ] Launching Daemon at Wed Oct 28 10:15:39 IST 2026
[2026-10-28 10:15:39,902.902 INFO    ] ================================================
[2026-10-28 10:15:40,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:15:40
[2026-10-28 10:15:41,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:15:41,332.332 INFO    ] Initializing speech engine...
[2026-10-28 10:15:41,343.343 INFO    ] 2026-10-28 10:15:41
[2026-10-28 10:15:41,594.594 INFO    ] 2026-10-28 10:15:41
[2026-10-28 10:15:41,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:15:41,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:15:41,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:15:42,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:15:42,215.215 INFO    ] time= 28/10/2026 10:15:42
[2026-10-28 10:15:42,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:15:42,282.282 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:15:42,422.422 INFO    ] No existing commands found in stream
[2026-10-28 10:15:47,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:15:47,449.449 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-28 10:15:48,645.645 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:15:48,648.648 INFO    ] Checking for system updates...
[2026-10-28 10:15:48,683.683 INFO    ] 200
[2026-10-28 10:15:48,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:15:48,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:15:48,741.741 INFO    ] No update needed
[2026-10-28 10:15:48,744.744 INFO    ] Checking for camera pi updates...
[2026-10-28 10:15:48,780.780 INFO    ] 200
[2026-10-28 10:15:48,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:15:48,825.825 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:15:48,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:15:48,900.900 INFO    ] No camera update needed
[2026-10-28 10:15:48,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:15:48,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:15:48,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:15:48,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:15:50,962.962 INFO    ] ================================================
[2026-10-28 10:15:50,978.978 INFO    ] Launching Daemon at Wed Oct 28 10:15:50 IST 2026
[2026-10-28 10:15:50,990.990 INFO    ] ================================================
[2026-10-28 10:15:51,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:15:51
[2026-10-28 10:15:52,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:15:52,443.443 INFO    ] Initializing speech engine...
[2026-10-28 10:15:52,452.452 INFO    ] 2026-10-28 10:15:52
[2026-10-28 10:15:52,702.702 INFO    ] 2026-10-28 10:15:52
[2026-10-28 10:15:52,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:15:53,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:15:53,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:15:53,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:15:53,676.676 INFO    ] time= 28/10/2026 10:15:53
[2026-10-28 10:15:53,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:15:53,719.719 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:15:54,176.176 INFO    ] No existing commands found in stream
[2026-10-28 10:15:59,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:15:59,191.191 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 10:16:03,574.574 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:16:03,577.577 INFO    ] Checking for system updates...
[2026-10-28 10:16:03,612.612 INFO    ] 200
[2026-10-28 10:16:03,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:16:03,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:16:03,669.669 INFO    ] No update needed
[2026-10-28 10:16:03,671.671 INFO    ] Checking for camera pi updates...
[2026-10-28 10:16:03,709.709 INFO    ] 200
[2026-10-28 10:16:03,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:16:03,756.756 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:16:03,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:16:03,840.840 INFO    ] No camera update needed
[2026-10-28 10:16:03,842.842 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:16:03,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:16:03,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:16:03,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:16:05,897.897 INFO    ] ================================================
[2026-10-28 10:16:05,913.913 INFO    ] Launching Daemon at Wed Oct 28 10:16:05 IST 2026
[2026-10-28 10:16:05,925.925 INFO    ] ================================================
[2026-10-28 10:16:06,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:16:06
[2026-10-28 10:16:07,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:16:07,402.402 INFO    ] Initializing speech engine...
[2026-10-28 10:16:07,408.408 INFO    ] 2026-10-28 10:16:07
[2026-10-28 10:16:07,657.657 INFO    ] 2026-10-28 10:16:07
[2026-10-28 10:16:07,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:16:07,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:16:07,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:16:08,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:16:08,214.214 INFO    ] time= 28/10/2026 10:16:08
[2026-10-28 10:16:08,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:16:08,262.262 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:16:08,421.421 INFO    ] No existing commands found in stream
[2026-10-28 10:16:13,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:16:13,461.461 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-28 10:16:17,247.247 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:16:17,250.250 INFO    ] Checking for system updates...
[2026-10-28 10:16:17,287.287 INFO    ] 200
[2026-10-28 10:16:17,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:16:17,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:16:17,353.353 INFO    ] No update needed
[2026-10-28 10:16:17,356.356 INFO    ] Checking for camera pi updates...
[2026-10-28 10:16:17,391.391 INFO    ] 200
[2026-10-28 10:16:17,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:16:17,440.440 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:16:17,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:16:17,525.525 INFO    ] No camera update needed
[2026-10-28 10:16:17,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:16:17,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:16:17,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:16:17,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:16:19,584.584 INFO    ] ================================================
[2026-10-28 10:16:19,599.599 INFO    ] Launching Daemon at Wed Oct 28 10:16:19 IST 2026
[2026-10-28 10:16:19,611.611 INFO    ] ================================================
[2026-10-28 10:16:20,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:16:20
[2026-10-28 10:16:20,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:16:21,161.161 INFO    ] Initializing speech engine...
[2026-10-28 10:16:21,169.169 INFO    ] 2026-10-28 10:16:21
[2026-10-28 10:16:21,458.458 INFO    ] 2026-10-28 10:16:21
[2026-10-28 10:16:21,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:16:21,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:16:21,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:16:22,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:16:22,039.039 INFO    ] time= 28/10/2026 10:16:22
[2026-10-28 10:16:22,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:16:22,070.070 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:16:22,220.220 INFO    ] No existing commands found in stream
[2026-10-28 10:16:27,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:16:27,249.249 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 10:16:31,251.251 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:16:31,255.255 INFO    ] Checking for system updates...
[2026-10-28 10:16:31,307.307 INFO    ] 200
[2026-10-28 10:16:31,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:16:31,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:16:31,373.373 INFO    ] No update needed
[2026-10-28 10:16:31,376.376 INFO    ] Checking for camera pi updates...
[2026-10-28 10:16:31,414.414 INFO    ] 200
[2026-10-28 10:16:31,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:16:31,467.467 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:16:31,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:16:31,554.554 INFO    ] No camera update needed
[2026-10-28 10:16:31,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:16:31,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:16:31,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:16:31,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:16:33,613.613 INFO    ] ================================================
[2026-10-28 10:16:33,629.629 INFO    ] Launching Daemon at Wed Oct 28 10:16:33 IST 2026
[2026-10-28 10:16:33,640.640 INFO    ] ================================================
[2026-10-28 10:16:34,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:16:34
[2026-10-28 10:16:34,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:16:35,046.046 INFO    ] Initializing speech engine...
[2026-10-28 10:16:35,054.054 INFO    ] 2026-10-28 10:16:35
[2026-10-28 10:16:35,330.330 INFO    ] 2026-10-28 10:16:35
[2026-10-28 10:16:35,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:16:35,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:16:35,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:16:35,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:16:35,907.907 INFO    ] time= 28/10/2026 10:16:35
[2026-10-28 10:16:35,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:16:35,932.932 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:16:36,068.068 INFO    ] No existing commands found in stream
[2026-10-28 10:16:41,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:16:41,086.086 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-28 10:16:45,363.363 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:16:45,366.366 INFO    ] Checking for system updates...
[2026-10-28 10:16:45,401.401 INFO    ] 200
[2026-10-28 10:16:45,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:16:45,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:16:45,461.461 INFO    ] No update needed
[2026-10-28 10:16:45,463.463 INFO    ] Checking for camera pi updates...
[2026-10-28 10:16:45,497.497 INFO    ] 200
[2026-10-28 10:16:45,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:16:45,544.544 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:16:45,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:16:45,644.644 INFO    ] No camera update needed
[2026-10-28 10:16:45,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:16:45,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:16:45,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:16:45,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:16:47,700.700 INFO    ] ================================================
[2026-10-28 10:16:47,715.715 INFO    ] Launching Daemon at Wed Oct 28 10:16:47 IST 2026
[2026-10-28 10:16:47,725.725 INFO    ] ================================================
[2026-10-28 10:16:48,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:16:48
[2026-10-28 10:16:49,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:16:49,362.362 INFO    ] Initializing speech engine...
[2026-10-28 10:16:49,373.373 INFO    ] 2026-10-28 10:16:49
[2026-10-28 10:16:49,683.683 INFO    ] 2026-10-28 10:16:49
[2026-10-28 10:16:49,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:16:49,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:16:49,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:16:50,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:16:50,224.224 INFO    ] time= 28/10/2026 10:16:50
[2026-10-28 10:16:50,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:16:50,260.260 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:16:50,398.398 INFO    ] No existing commands found in stream
[2026-10-28 10:16:55,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:16:55,437.437 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-28 10:16:57,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:16:57,608.608 INFO    ] Checking for system updates...
[2026-10-28 10:16:57,646.646 INFO    ] 200
[2026-10-28 10:16:57,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:16:57,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:16:57,707.707 INFO    ] No update needed
[2026-10-28 10:16:57,709.709 INFO    ] Checking for camera pi updates...
[2026-10-28 10:16:57,744.744 INFO    ] 200
[2026-10-28 10:16:57,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:16:57,788.788 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:16:57,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:16:57,876.876 INFO    ] No camera update needed
[2026-10-28 10:16:57,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:16:57,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:16:57,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:16:57,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:16:59,938.938 INFO    ] ================================================
[2026-10-28 10:16:59,953.953 INFO    ] Launching Daemon at Wed Oct 28 10:16:59 IST 2026
[2026-10-28 10:16:59,964.964 INFO    ] ================================================
[2026-10-28 10:17:00,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:17:00
[2026-10-28 10:17:01,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:17:01,408.408 INFO    ] Initializing speech engine...
[2026-10-28 10:17:01,417.417 INFO    ] 2026-10-28 10:17:01
[2026-10-28 10:17:01,688.688 INFO    ] 2026-10-28 10:17:01
[2026-10-28 10:17:01,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:17:02,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:17:02,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:17:02,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:17:02,311.311 INFO    ] time= 28/10/2026 10:17:02
[2026-10-28 10:17:02,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:17:02,325.325 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:17:02,509.509 INFO    ] No existing commands found in stream
[2026-10-28 10:17:07,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:17:07,551.551 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 10:17:10,451.451 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:17:10,453.453 INFO    ] Checking for system updates...
[2026-10-28 10:17:10,493.493 INFO    ] 200
[2026-10-28 10:17:10,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:17:10,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:17:10,550.550 INFO    ] No update needed
[2026-10-28 10:17:10,553.553 INFO    ] Checking for camera pi updates...
[2026-10-28 10:17:10,590.590 INFO    ] 200
[2026-10-28 10:17:10,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:17:10,639.639 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:17:10,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:17:10,723.723 INFO    ] No camera update needed
[2026-10-28 10:17:10,726.726 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:17:10,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:17:10,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:17:10,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:17:12,779.779 INFO    ] ================================================
[2026-10-28 10:17:12,794.794 INFO    ] Launching Daemon at Wed Oct 28 10:17:12 IST 2026
[2026-10-28 10:17:12,805.805 INFO    ] ================================================
[2026-10-28 10:17:13,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:17:13
[2026-10-28 10:17:13,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:17:14,229.229 INFO    ] Initializing speech engine...
[2026-10-28 10:17:14,255.255 INFO    ] 2026-10-28 10:17:14
[2026-10-28 10:17:14,528.528 INFO    ] 2026-10-28 10:17:14
[2026-10-28 10:17:14,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:17:14,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:17:14,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:17:15,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:17:15,172.172 INFO    ] time= 28/10/2026 10:17:15
[2026-10-28 10:17:15,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:17:15,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:17:15,365.365 INFO    ] No existing commands found in stream
[2026-10-28 10:17:20,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:17:20,394.394 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 10:17:24,735.735 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:17:24,738.738 INFO    ] Checking for system updates...
[2026-10-28 10:17:24,775.775 INFO    ] 200
[2026-10-28 10:17:24,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:17:24,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:17:24,836.836 INFO    ] No update needed
[2026-10-28 10:17:24,839.839 INFO    ] Checking for camera pi updates...
[2026-10-28 10:17:24,877.877 INFO    ] 200
[2026-10-28 10:17:24,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:17:24,927.927 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:17:25,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:17:25,014.014 INFO    ] No camera update needed
[2026-10-28 10:17:25,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:17:25,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:17:25,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:17:25,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:17:27,073.073 INFO    ] ================================================
[2026-10-28 10:17:27,088.088 INFO    ] Launching Daemon at Wed Oct 28 10:17:27 IST 2026
[2026-10-28 10:17:27,099.099 INFO    ] ================================================
[2026-10-28 10:17:27,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:17:27
[2026-10-28 10:17:28,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:17:28,726.726 INFO    ] Initializing speech engine...
[2026-10-28 10:17:28,734.734 INFO    ] 2026-10-28 10:17:28
[2026-10-28 10:17:29,007.007 INFO    ] 2026-10-28 10:17:28
[2026-10-28 10:17:29,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:17:29,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:17:29,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:17:29,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:17:29,563.563 INFO    ] time= 28/10/2026 10:17:29
[2026-10-28 10:17:29,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:17:29,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:17:29,769.769 INFO    ] No existing commands found in stream
[2026-10-28 10:17:34,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:17:34,794.794 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-28 10:17:37,367.367 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:17:37,371.371 INFO    ] Checking for system updates...
[2026-10-28 10:17:37,409.409 INFO    ] 200
[2026-10-28 10:17:37,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:17:37,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:17:37,476.476 INFO    ] No update needed
[2026-10-28 10:17:37,479.479 INFO    ] Checking for camera pi updates...
[2026-10-28 10:17:37,517.517 INFO    ] 200
[2026-10-28 10:17:37,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:17:37,562.562 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:17:37,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:17:37,652.652 INFO    ] No camera update needed
[2026-10-28 10:17:37,655.655 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:17:37,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:17:37,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:17:37,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:17:39,711.711 INFO    ] ================================================
[2026-10-28 10:17:39,726.726 INFO    ] Launching Daemon at Wed Oct 28 10:17:39 IST 2026
[2026-10-28 10:17:39,737.737 INFO    ] ================================================
[2026-10-28 10:17:40,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:17:40
[2026-10-28 10:17:40,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:17:41,177.177 INFO    ] Initializing speech engine...
[2026-10-28 10:17:41,185.185 INFO    ] 2026-10-28 10:17:41
[2026-10-28 10:17:41,458.458 INFO    ] 2026-10-28 10:17:41
[2026-10-28 10:17:41,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:17:41,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:17:41,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:17:41,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:17:42,023.023 INFO    ] time= 28/10/2026 10:17:42
[2026-10-28 10:17:42,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:17:42,048.048 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:17:42,179.179 INFO    ] No existing commands found in stream
[2026-10-28 10:17:47,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:17:47,197.197 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-28 10:17:48,590.590 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:17:48,593.593 INFO    ] Checking for system updates...
[2026-10-28 10:17:48,629.629 INFO    ] 200
[2026-10-28 10:17:48,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:17:48,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:17:48,696.696 INFO    ] No update needed
[2026-10-28 10:17:48,699.699 INFO    ] Checking for camera pi updates...
[2026-10-28 10:17:48,738.738 INFO    ] 200
[2026-10-28 10:17:48,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:17:48,788.788 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:17:48,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:17:48,955.955 INFO    ] No camera update needed
[2026-10-28 10:17:48,958.958 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:17:48,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:17:48,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:17:48,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:17:51,015.015 INFO    ] ================================================
[2026-10-28 10:17:51,031.031 INFO    ] Launching Daemon at Wed Oct 28 10:17:51 IST 2026
[2026-10-28 10:17:51,041.041 INFO    ] ================================================
[2026-10-28 10:17:51,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:17:51
[2026-10-28 10:17:52,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:17:52,722.722 INFO    ] Initializing speech engine...
[2026-10-28 10:17:52,728.728 INFO    ] 2026-10-28 10:17:52
[2026-10-28 10:17:53,019.019 INFO    ] 2026-10-28 10:17:53
[2026-10-28 10:17:53,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:17:53,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:17:53,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:17:53,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:17:53,781.781 INFO    ] time= 28/10/2026 10:17:53
[2026-10-28 10:17:53,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:17:53,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:17:54,026.026 INFO    ] No existing commands found in stream
[2026-10-28 10:17:59,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:17:59,040.040 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 10:18:02,769.769 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:18:02,773.773 INFO    ] Checking for system updates...
[2026-10-28 10:18:02,819.819 INFO    ] 200
[2026-10-28 10:18:02,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:18:02,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:18:02,894.894 INFO    ] No update needed
[2026-10-28 10:18:02,902.902 INFO    ] Checking for camera pi updates...
[2026-10-28 10:18:02,938.938 INFO    ] 200
[2026-10-28 10:18:02,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:18:02,997.997 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:18:03,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:18:03,086.086 INFO    ] No camera update needed
[2026-10-28 10:18:03,090.090 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:18:03,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:18:03,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:18:03,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:18:05,155.155 INFO    ] ================================================
[2026-10-28 10:18:05,170.170 INFO    ] Launching Daemon at Wed Oct 28 10:18:05 IST 2026
[2026-10-28 10:18:05,181.181 INFO    ] ================================================
[2026-10-28 10:18:05,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:18:05
[2026-10-28 10:18:06,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:18:06,628.628 INFO    ] Initializing speech engine...
[2026-10-28 10:18:06,638.638 INFO    ] 2026-10-28 10:18:06
[2026-10-28 10:18:06,899.899 INFO    ] 2026-10-28 10:18:06
[2026-10-28 10:18:06,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:18:07,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:18:07,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:18:07,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:18:07,445.445 INFO    ] time= 28/10/2026 10:18:07
[2026-10-28 10:18:07,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:18:07,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:18:07,613.613 INFO    ] No existing commands found in stream
[2026-10-28 10:18:12,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:18:12,647.647 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-28 10:18:15,044.044 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:18:15,046.046 INFO    ] Checking for system updates...
[2026-10-28 10:18:15,083.083 INFO    ] 200
[2026-10-28 10:18:15,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:18:15,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:18:15,148.148 INFO    ] No update needed
[2026-10-28 10:18:15,150.150 INFO    ] Checking for camera pi updates...
[2026-10-28 10:18:15,184.184 INFO    ] 200
[2026-10-28 10:18:15,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:18:15,226.226 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:18:15,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:18:15,279.279 INFO    ] No camera update needed
[2026-10-28 10:18:15,281.281 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:18:15,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:18:15,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:18:15,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:18:17,335.335 INFO    ] ================================================
[2026-10-28 10:18:17,350.350 INFO    ] Launching Daemon at Wed Oct 28 10:18:17 IST 2026
[2026-10-28 10:18:17,361.361 INFO    ] ================================================
[2026-10-28 10:18:17,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:18:17
[2026-10-28 10:18:18,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:18:18,778.778 INFO    ] Initializing speech engine...
[2026-10-28 10:18:18,788.788 INFO    ] 2026-10-28 10:18:18
[2026-10-28 10:18:19,034.034 INFO    ] 2026-10-28 10:18:19
[2026-10-28 10:18:19,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:18:19,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:18:19,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:18:19,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:18:19,602.602 INFO    ] time= 28/10/2026 10:18:19
[2026-10-28 10:18:19,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:18:19,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:18:19,834.834 INFO    ] No existing commands found in stream
[2026-10-28 10:18:24,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:18:24,850.850 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-28 10:18:28,285.285 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:18:28,288.288 INFO    ] Checking for system updates...
[2026-10-28 10:18:28,323.323 INFO    ] 200
[2026-10-28 10:18:28,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:18:28,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:18:28,385.385 INFO    ] No update needed
[2026-10-28 10:18:28,387.387 INFO    ] Checking for camera pi updates...
[2026-10-28 10:18:28,420.420 INFO    ] 200
[2026-10-28 10:18:28,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:18:28,463.463 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:18:28,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:18:28,548.548 INFO    ] No camera update needed
[2026-10-28 10:18:28,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:18:28,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:18:28,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:18:28,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:18:30,604.604 INFO    ] ================================================
[2026-10-28 10:18:30,619.619 INFO    ] Launching Daemon at Wed Oct 28 10:18:30 IST 2026
[2026-10-28 10:18:30,630.630 INFO    ] ================================================
[2026-10-28 10:18:31,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:18:31
[2026-10-28 10:18:31,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:18:32,149.149 INFO    ] Initializing speech engine...
[2026-10-28 10:18:32,167.167 INFO    ] 2026-10-28 10:18:32
[2026-10-28 10:18:32,431.431 INFO    ] 2026-10-28 10:18:32
[2026-10-28 10:18:32,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:18:32,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:18:32,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:18:33,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:18:33,033.033 INFO    ] time= 28/10/2026 10:18:33
[2026-10-28 10:18:33,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:18:33,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:18:33,201.201 INFO    ] No existing commands found in stream
[2026-10-28 10:18:38,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:18:38,219.219 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 10:18:40,846.846 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:18:40,848.848 INFO    ] Checking for system updates...
[2026-10-28 10:18:40,884.884 INFO    ] 200
[2026-10-28 10:18:40,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:18:40,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:18:40,948.948 INFO    ] No update needed
[2026-10-28 10:18:40,950.950 INFO    ] Checking for camera pi updates...
[2026-10-28 10:18:40,984.984 INFO    ] 200
[2026-10-28 10:18:40,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:18:41,027.027 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:18:41,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:18:41,112.112 INFO    ] No camera update needed
[2026-10-28 10:18:41,115.115 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:18:41,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:18:41,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:18:41,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:18:43,171.171 INFO    ] ================================================
[2026-10-28 10:18:43,187.187 INFO    ] Launching Daemon at Wed Oct 28 10:18:43 IST 2026
[2026-10-28 10:18:43,198.198 INFO    ] ================================================
[2026-10-28 10:18:43,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:18:43
[2026-10-28 10:18:44,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:18:44,641.641 INFO    ] Initializing speech engine...
[2026-10-28 10:18:44,664.664 INFO    ] 2026-10-28 10:18:44
[2026-10-28 10:18:44,921.921 INFO    ] 2026-10-28 10:18:44
[2026-10-28 10:18:44,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:18:45,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:18:45,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:18:45,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:18:45,495.495 INFO    ] time= 28/10/2026 10:18:45
[2026-10-28 10:18:45,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:18:45,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:18:45,677.677 INFO    ] No existing commands found in stream
[2026-10-28 10:18:50,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:18:50,705.705 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-28 10:18:54,367.367 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:18:54,370.370 INFO    ] Checking for system updates...
[2026-10-28 10:18:54,407.407 INFO    ] 200
[2026-10-28 10:18:54,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:18:54,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:18:54,466.466 INFO    ] No update needed
[2026-10-28 10:18:54,469.469 INFO    ] Checking for camera pi updates...
[2026-10-28 10:18:54,503.503 INFO    ] 200
[2026-10-28 10:18:54,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:18:54,549.549 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:18:54,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:18:54,646.646 INFO    ] No camera update needed
[2026-10-28 10:18:54,648.648 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:18:54,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:18:54,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:18:54,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:18:56,705.705 INFO    ] ================================================
[2026-10-28 10:18:56,721.721 INFO    ] Launching Daemon at Wed Oct 28 10:18:56 IST 2026
[2026-10-28 10:18:56,732.732 INFO    ] ================================================
[2026-10-28 10:18:57,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:18:57
[2026-10-28 10:18:57,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:18:58,149.149 INFO    ] Initializing speech engine...
[2026-10-28 10:18:58,157.157 INFO    ] 2026-10-28 10:18:58
[2026-10-28 10:18:58,453.453 INFO    ] 2026-10-28 10:18:58
[2026-10-28 10:18:58,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:18:58,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:18:58,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:18:59,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:18:59,071.071 INFO    ] time= 28/10/2026 10:18:59
[2026-10-28 10:18:59,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:18:59,098.098 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:18:59,268.268 INFO    ] No existing commands found in stream
[2026-10-28 10:19:04,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:19:04,282.282 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 10:19:05,725.725 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:19:05,727.727 INFO    ] Checking for system updates...
[2026-10-28 10:19:05,763.763 INFO    ] 200
[2026-10-28 10:19:05,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:19:05,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:19:05,827.827 INFO    ] No update needed
[2026-10-28 10:19:05,829.829 INFO    ] Checking for camera pi updates...
[2026-10-28 10:19:05,870.870 INFO    ] 200
[2026-10-28 10:19:05,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:19:05,918.918 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:19:06,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:19:06,007.007 INFO    ] No camera update needed
[2026-10-28 10:19:06,010.010 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:19:06,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:19:06,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:19:06,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:19:08,064.064 INFO    ] ================================================
[2026-10-28 10:19:08,080.080 INFO    ] Launching Daemon at Wed Oct 28 10:19:08 IST 2026
[2026-10-28 10:19:08,091.091 INFO    ] ================================================
[2026-10-28 10:19:08,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:19:08
[2026-10-28 10:19:09,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:19:09,506.506 INFO    ] Initializing speech engine...
[2026-10-28 10:19:09,512.512 INFO    ] 2026-10-28 10:19:09
[2026-10-28 10:19:09,810.810 INFO    ] 2026-10-28 10:19:09
[2026-10-28 10:19:09,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:19:10,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:19:10,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:19:10,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:19:10,441.441 INFO    ] time= 28/10/2026 10:19:10
[2026-10-28 10:19:10,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:19:10,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:19:10,583.583 INFO    ] No existing commands found in stream
[2026-10-28 10:19:15,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:19:15,606.606 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 10:19:17,086.086 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:19:17,088.088 INFO    ] Checking for system updates...
[2026-10-28 10:19:17,123.123 INFO    ] 200
[2026-10-28 10:19:17,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:19:17,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:19:17,181.181 INFO    ] No update needed
[2026-10-28 10:19:17,184.184 INFO    ] Checking for camera pi updates...
[2026-10-28 10:19:17,220.220 INFO    ] 200
[2026-10-28 10:19:17,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:19:17,264.264 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:19:17,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:19:17,348.348 INFO    ] No camera update needed
[2026-10-28 10:19:17,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:19:17,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:19:17,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:19:17,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:19:19,406.406 INFO    ] ================================================
[2026-10-28 10:19:19,421.421 INFO    ] Launching Daemon at Wed Oct 28 10:19:19 IST 2026
[2026-10-28 10:19:19,431.431 INFO    ] ================================================
[2026-10-28 10:19:20,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:19:20
[2026-10-28 10:19:20,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:19:20,851.851 INFO    ] Initializing speech engine...
[2026-10-28 10:19:20,856.856 INFO    ] 2026-10-28 10:19:20
[2026-10-28 10:19:21,160.160 INFO    ] 2026-10-28 10:19:21
[2026-10-28 10:19:21,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:19:21,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:19:21,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:19:21,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:19:21,674.674 INFO    ] time= 28/10/2026 10:19:21
[2026-10-28 10:19:21,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:19:21,777.777 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:19:21,937.937 INFO    ] No existing commands found in stream
[2026-10-28 10:19:26,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:19:26,952.952 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-28 10:19:27,906.906 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:19:27,908.908 INFO    ] Checking for system updates...
[2026-10-28 10:19:27,944.944 INFO    ] 200
[2026-10-28 10:19:27,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:19:27,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:19:28,001.001 INFO    ] No update needed
[2026-10-28 10:19:28,003.003 INFO    ] Checking for camera pi updates...
[2026-10-28 10:19:28,037.037 INFO    ] 200
[2026-10-28 10:19:28,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:19:28,080.080 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:19:28,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:19:28,162.162 INFO    ] No camera update needed
[2026-10-28 10:19:28,164.164 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:19:28,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:19:28,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:19:28,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:19:30,217.217 INFO    ] ================================================
[2026-10-28 10:19:30,232.232 INFO    ] Launching Daemon at Wed Oct 28 10:19:30 IST 2026
[2026-10-28 10:19:30,242.242 INFO    ] ================================================
[2026-10-28 10:19:30,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:19:30
[2026-10-28 10:19:31,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:19:31,692.692 INFO    ] Initializing speech engine...
[2026-10-28 10:19:31,713.713 INFO    ] 2026-10-28 10:19:31
[2026-10-28 10:19:31,983.983 INFO    ] 2026-10-28 10:19:31
[2026-10-28 10:19:32,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:19:32,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:19:32,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:19:32,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:19:32,444.444 INFO    ] time= 28/10/2026 10:19:32
[2026-10-28 10:19:32,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:19:32,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:19:32,596.596 INFO    ] No existing commands found in stream
[2026-10-28 10:19:37,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:19:37,630.630 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-28 10:19:38,509.509 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:19:38,512.512 INFO    ] Checking for system updates...
[2026-10-28 10:19:38,547.547 INFO    ] 200
[2026-10-28 10:19:38,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:19:38,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:19:38,606.606 INFO    ] No update needed
[2026-10-28 10:19:38,608.608 INFO    ] Checking for camera pi updates...
[2026-10-28 10:19:38,649.649 INFO    ] 200
[2026-10-28 10:19:38,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:19:38,692.692 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:19:38,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:19:38,794.794 INFO    ] No camera update needed
[2026-10-28 10:19:38,797.797 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:19:38,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:19:38,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:19:38,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:19:40,852.852 INFO    ] ================================================
[2026-10-28 10:19:40,868.868 INFO    ] Launching Daemon at Wed Oct 28 10:19:40 IST 2026
[2026-10-28 10:19:40,879.879 INFO    ] ================================================
[2026-10-28 10:19:41,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:19:41
[2026-10-28 10:19:42,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:19:42,349.349 INFO    ] Initializing speech engine...
[2026-10-28 10:19:42,355.355 INFO    ] 2026-10-28 10:19:42
[2026-10-28 10:19:42,604.604 INFO    ] 2026-10-28 10:19:42
[2026-10-28 10:19:42,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:19:42,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:19:42,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:19:43,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:19:43,167.167 INFO    ] time= 28/10/2026 10:19:43
[2026-10-28 10:19:43,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:19:43,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:19:43,321.321 INFO    ] No existing commands found in stream
[2026-10-28 10:19:48,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:19:48,345.345 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-28 10:19:51,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:19:51,931.931 INFO    ] Checking for system updates...
[2026-10-28 10:19:51,970.970 INFO    ] 200
[2026-10-28 10:19:51,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:19:52,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:19:52,028.028 INFO    ] No update needed
[2026-10-28 10:19:52,030.030 INFO    ] Checking for camera pi updates...
[2026-10-28 10:19:52,065.065 INFO    ] 200
[2026-10-28 10:19:52,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:19:52,112.112 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:19:52,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:19:52,298.298 INFO    ] No camera update needed
[2026-10-28 10:19:52,301.301 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:19:52,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:19:52,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:19:52,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:19:54,356.356 INFO    ] ================================================
[2026-10-28 10:19:54,371.371 INFO    ] Launching Daemon at Wed Oct 28 10:19:54 IST 2026
[2026-10-28 10:19:54,383.383 INFO    ] ================================================
[2026-10-28 10:19:54,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:19:54
[2026-10-28 10:19:55,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:19:55,799.799 INFO    ] Initializing speech engine...
[2026-10-28 10:19:55,805.805 INFO    ] 2026-10-28 10:19:55
[2026-10-28 10:19:56,106.106 INFO    ] 2026-10-28 10:19:56
[2026-10-28 10:19:56,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:19:56,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:19:56,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:19:56,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:19:56,722.722 INFO    ] time= 28/10/2026 10:19:56
[2026-10-28 10:19:56,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:19:56,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:19:56,912.912 INFO    ] No existing commands found in stream
[2026-10-28 10:20:01,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:20:01,930.930 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-28 10:20:08,574.574 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:20:08,576.576 INFO    ] Checking for system updates...
[2026-10-28 10:20:08,612.612 INFO    ] 200
[2026-10-28 10:20:08,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:20:08,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:20:08,670.670 INFO    ] No update needed
[2026-10-28 10:20:08,672.672 INFO    ] Checking for camera pi updates...
[2026-10-28 10:20:08,706.706 INFO    ] 200
[2026-10-28 10:20:08,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:20:08,750.750 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:20:08,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:20:08,833.833 INFO    ] No camera update needed
[2026-10-28 10:20:08,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:20:08,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:20:08,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:20:08,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:20:10,890.890 INFO    ] ================================================
[2026-10-28 10:20:10,905.905 INFO    ] Launching Daemon at Wed Oct 28 10:20:10 IST 2026
[2026-10-28 10:20:10,916.916 INFO    ] ================================================
[2026-10-28 10:20:11,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:20:11
[2026-10-28 10:20:12,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:20:12,510.510 INFO    ] Initializing speech engine...
[2026-10-28 10:20:12,521.521 INFO    ] 2026-10-28 10:20:12
[2026-10-28 10:20:12,797.797 INFO    ] 2026-10-28 10:20:12
[2026-10-28 10:20:12,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:20:13,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:20:13,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:20:13,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:20:13,359.359 INFO    ] time= 28/10/2026 10:20:13
[2026-10-28 10:20:13,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:20:13,411.411 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:20:13,542.542 INFO    ] No existing commands found in stream
[2026-10-28 10:20:18,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:20:18,576.576 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-28 10:20:22,647.647 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:20:22,650.650 INFO    ] Checking for system updates...
[2026-10-28 10:20:22,720.720 INFO    ] 200
[2026-10-28 10:20:22,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:20:22,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:20:22,779.779 INFO    ] No update needed
[2026-10-28 10:20:22,781.781 INFO    ] Checking for camera pi updates...
[2026-10-28 10:20:22,824.824 INFO    ] 200
[2026-10-28 10:20:22,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:20:22,868.868 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:20:22,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:20:22,957.957 INFO    ] No camera update needed
[2026-10-28 10:20:22,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:20:22,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:20:22,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:20:22,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:20:25,017.017 INFO    ] ================================================
[2026-10-28 10:20:25,033.033 INFO    ] Launching Daemon at Wed Oct 28 10:20:25 IST 2026
[2026-10-28 10:20:25,045.045 INFO    ] ================================================
[2026-10-28 10:20:25,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:20:25
[2026-10-28 10:20:26,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:20:26,460.460 INFO    ] Initializing speech engine...
[2026-10-28 10:20:26,476.476 INFO    ] 2026-10-28 10:20:26
[2026-10-28 10:20:26,762.762 INFO    ] 2026-10-28 10:20:26
[2026-10-28 10:20:26,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:20:27,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:20:27,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:20:27,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:20:27,386.386 INFO    ] time= 28/10/2026 10:20:27
[2026-10-28 10:20:27,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:20:27,412.412 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:20:27,563.563 INFO    ] No existing commands found in stream
[2026-10-28 10:20:32,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:20:32,584.584 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-28 10:20:37,210.210 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:20:37,213.213 INFO    ] Checking for system updates...
[2026-10-28 10:20:37,248.248 INFO    ] 200
[2026-10-28 10:20:37,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:20:37,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:20:37,304.304 INFO    ] No update needed
[2026-10-28 10:20:37,307.307 INFO    ] Checking for camera pi updates...
[2026-10-28 10:20:37,339.339 INFO    ] 200
[2026-10-28 10:20:37,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:20:37,383.383 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:20:37,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:20:37,468.468 INFO    ] No camera update needed
[2026-10-28 10:20:37,470.470 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:20:37,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:20:37,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:20:37,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:20:39,523.523 INFO    ] ================================================
[2026-10-28 10:20:39,539.539 INFO    ] Launching Daemon at Wed Oct 28 10:20:39 IST 2026
[2026-10-28 10:20:39,550.550 INFO    ] ================================================
[2026-10-28 10:20:40,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:20:40
[2026-10-28 10:20:40,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:20:40,948.948 INFO    ] Initializing speech engine...
[2026-10-28 10:20:40,962.962 INFO    ] 2026-10-28 10:20:40
[2026-10-28 10:20:41,229.229 INFO    ] 2026-10-28 10:20:41
[2026-10-28 10:20:41,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:20:41,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:20:41,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:20:41,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:20:41,801.801 INFO    ] time= 28/10/2026 10:20:41
[2026-10-28 10:20:41,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:20:41,825.825 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:20:41,944.944 INFO    ] No existing commands found in stream
[2026-10-28 10:20:46,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:20:46,967.967 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-28 10:20:49,381.381 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:20:49,384.384 INFO    ] Checking for system updates...
[2026-10-28 10:20:49,419.419 INFO    ] 200
[2026-10-28 10:20:49,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:20:49,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:20:49,477.477 INFO    ] No update needed
[2026-10-28 10:20:49,479.479 INFO    ] Checking for camera pi updates...
[2026-10-28 10:20:49,516.516 INFO    ] 200
[2026-10-28 10:20:49,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:20:49,558.558 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:20:49,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:20:49,638.638 INFO    ] No camera update needed
[2026-10-28 10:20:49,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:20:49,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:20:49,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:20:49,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:20:51,696.696 INFO    ] ================================================
[2026-10-28 10:20:51,711.711 INFO    ] Launching Daemon at Wed Oct 28 10:20:51 IST 2026
[2026-10-28 10:20:51,721.721 INFO    ] ================================================
[2026-10-28 10:20:52,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:20:52
[2026-10-28 10:20:53,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:20:53,333.333 INFO    ] Initializing speech engine...
[2026-10-28 10:20:53,344.344 INFO    ] 2026-10-28 10:20:53
[2026-10-28 10:20:53,629.629 INFO    ] 2026-10-28 10:20:53
[2026-10-28 10:20:53,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:20:54,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:20:54,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:20:54,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:20:54,345.345 INFO    ] time= 28/10/2026 10:20:54
[2026-10-28 10:20:54,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:20:54,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:20:54,570.570 INFO    ] No existing commands found in stream
[2026-10-28 10:20:59,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:20:59,611.611 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-28 10:21:01,527.527 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:21:01,530.530 INFO    ] Checking for system updates...
[2026-10-28 10:21:01,567.567 INFO    ] 200
[2026-10-28 10:21:01,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:21:01,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:21:01,632.632 INFO    ] No update needed
[2026-10-28 10:21:01,635.635 INFO    ] Checking for camera pi updates...
[2026-10-28 10:21:01,673.673 INFO    ] 200
[2026-10-28 10:21:01,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:21:01,726.726 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:21:01,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:21:01,822.822 INFO    ] No camera update needed
[2026-10-28 10:21:01,828.828 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:21:01,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:21:01,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:21:01,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:21:03,903.903 INFO    ] ================================================
[2026-10-28 10:21:03,918.918 INFO    ] Launching Daemon at Wed Oct 28 10:21:03 IST 2026
[2026-10-28 10:21:03,929.929 INFO    ] ================================================
[2026-10-28 10:21:04,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:21:04
[2026-10-28 10:21:05,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:21:05,336.336 INFO    ] Initializing speech engine...
[2026-10-28 10:21:05,344.344 INFO    ] 2026-10-28 10:21:05
[2026-10-28 10:21:05,631.631 INFO    ] 2026-10-28 10:21:05
[2026-10-28 10:21:05,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:21:05,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:21:05,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:21:06,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:21:06,232.232 INFO    ] time= 28/10/2026 10:21:06
[2026-10-28 10:21:06,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:21:06,270.270 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:21:06,381.381 INFO    ] No existing commands found in stream
[2026-10-28 10:21:11,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:21:11,399.399 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 10:21:12,775.775 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:21:12,777.777 INFO    ] Checking for system updates...
[2026-10-28 10:21:12,814.814 INFO    ] 200
[2026-10-28 10:21:12,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:21:12,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:21:12,879.879 INFO    ] No update needed
[2026-10-28 10:21:12,881.881 INFO    ] Checking for camera pi updates...
[2026-10-28 10:21:12,915.915 INFO    ] 200
[2026-10-28 10:21:12,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:21:12,957.957 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:21:13,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:21:13,032.032 INFO    ] No camera update needed
[2026-10-28 10:21:13,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:21:13,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:21:13,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:21:13,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:21:15,089.089 INFO    ] ================================================
[2026-10-28 10:21:15,104.104 INFO    ] Launching Daemon at Wed Oct 28 10:21:15 IST 2026
[2026-10-28 10:21:15,120.120 INFO    ] ================================================
[2026-10-28 10:21:15,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:21:15
[2026-10-28 10:21:16,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:21:16,696.696 INFO    ] Initializing speech engine...
[2026-10-28 10:21:16,704.704 INFO    ] 2026-10-28 10:21:16
[2026-10-28 10:21:16,987.987 INFO    ] 2026-10-28 10:21:16
[2026-10-28 10:21:17,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:21:17,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:21:17,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:21:17,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:21:17,713.713 INFO    ] time= 28/10/2026 10:21:17
[2026-10-28 10:21:17,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:21:17,815.815 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:21:17,963.963 INFO    ] No existing commands found in stream
[2026-10-28 10:21:22,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:21:22,981.981 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 10:21:25,568.568 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:21:25,570.570 INFO    ] Checking for system updates...
[2026-10-28 10:21:25,607.607 INFO    ] 200
[2026-10-28 10:21:25,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:21:25,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:21:25,665.665 INFO    ] No update needed
[2026-10-28 10:21:25,668.668 INFO    ] Checking for camera pi updates...
[2026-10-28 10:21:25,704.704 INFO    ] 200
[2026-10-28 10:21:25,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:21:25,748.748 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:21:25,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:21:25,837.837 INFO    ] No camera update needed
[2026-10-28 10:21:25,840.840 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:21:25,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:21:25,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:21:25,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:21:27,894.894 INFO    ] ================================================
[2026-10-28 10:21:27,909.909 INFO    ] Launching Daemon at Wed Oct 28 10:21:27 IST 2026
[2026-10-28 10:21:27,919.919 INFO    ] ================================================
[2026-10-28 10:21:28,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:21:28
[2026-10-28 10:21:29,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:21:29,469.469 INFO    ] Initializing speech engine...
[2026-10-28 10:21:29,474.474 INFO    ] 2026-10-28 10:21:29
[2026-10-28 10:21:29,747.747 INFO    ] 2026-10-28 10:21:29
[2026-10-28 10:21:29,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:21:30,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:21:30,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:21:30,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:21:30,317.317 INFO    ] time= 28/10/2026 10:21:30
[2026-10-28 10:21:30,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:21:30,354.354 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:21:30,493.493 INFO    ] No existing commands found in stream
[2026-10-28 10:21:35,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:21:35,527.527 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 10:21:39,149.149 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:21:39,152.152 INFO    ] Checking for system updates...
[2026-10-28 10:21:39,192.192 INFO    ] 200
[2026-10-28 10:21:39,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:21:39,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:21:39,248.248 INFO    ] No update needed
[2026-10-28 10:21:39,251.251 INFO    ] Checking for camera pi updates...
[2026-10-28 10:21:39,284.284 INFO    ] 200
[2026-10-28 10:21:39,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:21:39,327.327 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:21:39,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:21:39,424.424 INFO    ] No camera update needed
[2026-10-28 10:21:39,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:21:39,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:21:39,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:21:39,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:21:41,478.478 INFO    ] ================================================
[2026-10-28 10:21:41,493.493 INFO    ] Launching Daemon at Wed Oct 28 10:21:41 IST 2026
[2026-10-28 10:21:41,504.504 INFO    ] ================================================
[2026-10-28 10:21:42,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:21:42
[2026-10-28 10:21:42,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:21:43,063.063 INFO    ] Initializing speech engine...
[2026-10-28 10:21:43,071.071 INFO    ] 2026-10-28 10:21:43
[2026-10-28 10:21:43,345.345 INFO    ] 2026-10-28 10:21:43
[2026-10-28 10:21:43,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:21:43,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:21:43,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:21:43,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:21:43,925.925 INFO    ] time= 28/10/2026 10:21:43
[2026-10-28 10:21:43,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:21:43,976.976 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:21:44,102.102 INFO    ] No existing commands found in stream
[2026-10-28 10:21:49,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:21:49,131.131 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 10:21:49,926.926 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:21:49,929.929 INFO    ] Checking for system updates...
[2026-10-28 10:21:49,967.967 INFO    ] 200
[2026-10-28 10:21:49,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:21:50,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:21:50,031.031 INFO    ] No update needed
[2026-10-28 10:21:50,033.033 INFO    ] Checking for camera pi updates...
[2026-10-28 10:21:50,066.066 INFO    ] 200
[2026-10-28 10:21:50,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:21:50,111.111 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:21:50,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:21:50,202.202 INFO    ] No camera update needed
[2026-10-28 10:21:50,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:21:50,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:21:50,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:21:50,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:21:52,257.257 INFO    ] ================================================
[2026-10-28 10:21:52,272.272 INFO    ] Launching Daemon at Wed Oct 28 10:21:52 IST 2026
[2026-10-28 10:21:52,283.283 INFO    ] ================================================
[2026-10-28 10:21:52,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:21:52
[2026-10-28 10:21:53,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:21:53,815.815 INFO    ] Initializing speech engine...
[2026-10-28 10:21:53,822.822 INFO    ] 2026-10-28 10:21:53
[2026-10-28 10:21:54,069.069 INFO    ] 2026-10-28 10:21:54
[2026-10-28 10:21:54,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:21:54,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:21:54,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:21:54,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:21:54,641.641 INFO    ] time= 28/10/2026 10:21:54
[2026-10-28 10:21:54,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:21:54,667.667 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:21:54,794.794 INFO    ] No existing commands found in stream
[2026-10-28 10:21:59,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:21:59,815.815 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-28 10:22:01,818.818 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:22:01,821.821 INFO    ] Checking for system updates...
[2026-10-28 10:22:01,857.857 INFO    ] 200
[2026-10-28 10:22:01,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:22:01,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:22:01,989.989 INFO    ] No update needed
[2026-10-28 10:22:02,001.001 INFO    ] Checking for camera pi updates...
[2026-10-28 10:22:02,081.081 INFO    ] 200
[2026-10-28 10:22:02,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:22:02,172.172 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:22:02,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:22:02,406.406 INFO    ] No camera update needed
[2026-10-28 10:22:02,409.409 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:22:02,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:22:02,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:22:02,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:22:04,470.470 INFO    ] ================================================
[2026-10-28 10:22:04,484.484 INFO    ] Launching Daemon at Wed Oct 28 10:22:04 IST 2026
[2026-10-28 10:22:04,495.495 INFO    ] ================================================
[2026-10-28 10:22:05,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:22:05
[2026-10-28 10:22:05,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:22:05,937.937 INFO    ] Initializing speech engine...
[2026-10-28 10:22:05,943.943 INFO    ] 2026-10-28 10:22:05
[2026-10-28 10:22:06,205.205 INFO    ] 2026-10-28 10:22:06
[2026-10-28 10:22:06,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:22:06,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:22:06,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:22:06,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:22:06,752.752 INFO    ] time= 28/10/2026 10:22:06
[2026-10-28 10:22:06,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:22:06,798.798 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:22:06,935.935 INFO    ] No existing commands found in stream
[2026-10-28 10:22:11,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:22:11,968.968 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-28 10:22:13,657.657 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:22:13,660.660 INFO    ] Checking for system updates...
[2026-10-28 10:22:13,697.697 INFO    ] 200
[2026-10-28 10:22:13,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:22:13,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:22:13,755.755 INFO    ] No update needed
[2026-10-28 10:22:13,757.757 INFO    ] Checking for camera pi updates...
[2026-10-28 10:22:13,795.795 INFO    ] 200
[2026-10-28 10:22:13,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:22:13,843.843 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:22:13,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:22:13,930.930 INFO    ] No camera update needed
[2026-10-28 10:22:13,932.932 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:22:13,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:22:13,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:22:13,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:22:15,988.988 INFO    ] ================================================
[2026-10-28 10:22:16,004.004 INFO    ] Launching Daemon at Wed Oct 28 10:22:15 IST 2026
[2026-10-28 10:22:16,014.014 INFO    ] ================================================
[2026-10-28 10:22:16,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:22:16
[2026-10-28 10:22:17,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:22:17,606.606 INFO    ] Initializing speech engine...
[2026-10-28 10:22:17,615.615 INFO    ] 2026-10-28 10:22:17
[2026-10-28 10:22:17,901.901 INFO    ] 2026-10-28 10:22:17
[2026-10-28 10:22:17,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:22:18,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:22:18,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:22:18,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:22:18,596.596 INFO    ] time= 28/10/2026 10:22:18
[2026-10-28 10:22:18,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:22:18,692.692 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:22:18,839.839 INFO    ] No existing commands found in stream
[2026-10-28 10:22:23,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:22:23,859.859 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 10:22:26,550.550 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:22:26,553.553 INFO    ] Checking for system updates...
[2026-10-28 10:22:26,593.593 INFO    ] 200
[2026-10-28 10:22:26,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:22:26,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:22:26,652.652 INFO    ] No update needed
[2026-10-28 10:22:26,654.654 INFO    ] Checking for camera pi updates...
[2026-10-28 10:22:26,688.688 INFO    ] 200
[2026-10-28 10:22:26,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:22:26,750.750 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:22:26,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:22:26,839.839 INFO    ] No camera update needed
[2026-10-28 10:22:26,842.842 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:22:26,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:22:26,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:22:26,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:22:28,894.894 INFO    ] ================================================
[2026-10-28 10:22:28,909.909 INFO    ] Launching Daemon at Wed Oct 28 10:22:28 IST 2026
[2026-10-28 10:22:28,919.919 INFO    ] ================================================
[2026-10-28 10:22:29,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:22:29
[2026-10-28 10:22:30,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:22:30,360.360 INFO    ] Initializing speech engine...
[2026-10-28 10:22:30,370.370 INFO    ] 2026-10-28 10:22:30
[2026-10-28 10:22:30,653.653 INFO    ] 2026-10-28 10:22:30
[2026-10-28 10:22:30,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:22:30,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:22:30,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:22:31,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:22:31,224.224 INFO    ] time= 28/10/2026 10:22:31
[2026-10-28 10:22:31,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:22:31,252.252 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:22:31,397.397 INFO    ] No existing commands found in stream
[2026-10-28 10:22:36,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:22:36,436.436 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-28 10:22:38,615.615 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:22:38,618.618 INFO    ] Checking for system updates...
[2026-10-28 10:22:38,660.660 INFO    ] 200
[2026-10-28 10:22:38,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:22:38,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:22:38,728.728 INFO    ] No update needed
[2026-10-28 10:22:38,730.730 INFO    ] Checking for camera pi updates...
[2026-10-28 10:22:38,763.763 INFO    ] 200
[2026-10-28 10:22:38,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:22:38,806.806 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:22:38,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:22:38,890.890 INFO    ] No camera update needed
[2026-10-28 10:22:38,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:22:38,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:22:38,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:22:38,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:22:40,944.944 INFO    ] ================================================
[2026-10-28 10:22:40,959.959 INFO    ] Launching Daemon at Wed Oct 28 10:22:40 IST 2026
[2026-10-28 10:22:40,970.970 INFO    ] ================================================
[2026-10-28 10:22:41,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:22:41
[2026-10-28 10:22:42,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:22:42,468.468 INFO    ] Initializing speech engine...
[2026-10-28 10:22:42,476.476 INFO    ] 2026-10-28 10:22:42
[2026-10-28 10:22:42,761.761 INFO    ] 2026-10-28 10:22:42
[2026-10-28 10:22:42,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:22:43,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:22:43,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:22:43,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:22:43,451.451 INFO    ] time= 28/10/2026 10:22:43
[2026-10-28 10:22:43,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:22:43,531.531 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:22:43,666.666 INFO    ] No existing commands found in stream
[2026-10-28 10:22:48,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:22:48,689.689 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 10:22:50,449.449 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:22:50,452.452 INFO    ] Checking for system updates...
[2026-10-28 10:22:50,489.489 INFO    ] 200
[2026-10-28 10:22:50,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:22:50,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:22:50,554.554 INFO    ] No update needed
[2026-10-28 10:22:50,557.557 INFO    ] Checking for camera pi updates...
[2026-10-28 10:22:50,590.590 INFO    ] 200
[2026-10-28 10:22:50,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:22:50,637.637 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:22:50,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:22:50,722.722 INFO    ] No camera update needed
[2026-10-28 10:22:50,724.724 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:22:50,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:22:50,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:22:50,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:22:52,777.777 INFO    ] ================================================
[2026-10-28 10:22:52,792.792 INFO    ] Launching Daemon at Wed Oct 28 10:22:52 IST 2026
[2026-10-28 10:22:52,802.802 INFO    ] ================================================
[2026-10-28 10:22:53,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:22:53
[2026-10-28 10:22:53,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:22:54,195.195 INFO    ] Initializing speech engine...
[2026-10-28 10:22:54,209.209 INFO    ] 2026-10-28 10:22:54
[2026-10-28 10:22:54,476.476 INFO    ] 2026-10-28 10:22:54
[2026-10-28 10:22:54,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:22:54,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:22:54,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:22:55,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:22:55,046.046 INFO    ] time= 28/10/2026 10:22:55
[2026-10-28 10:22:55,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:22:55,086.086 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:22:55,204.204 INFO    ] No existing commands found in stream
[2026-10-28 10:23:00,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:23:00,230.230 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-28 10:23:01,029.029 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:23:01,031.031 INFO    ] Checking for system updates...
[2026-10-28 10:23:01,067.067 INFO    ] 200
[2026-10-28 10:23:01,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:23:01,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:23:01,124.124 INFO    ] No update needed
[2026-10-28 10:23:01,127.127 INFO    ] Checking for camera pi updates...
[2026-10-28 10:23:01,185.185 INFO    ] 200
[2026-10-28 10:23:01,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:23:01,297.297 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:23:01,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:23:01,404.404 INFO    ] No camera update needed
[2026-10-28 10:23:01,408.408 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:23:01,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:23:01,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:23:01,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:23:03,485.485 INFO    ] ================================================
[2026-10-28 10:23:03,500.500 INFO    ] Launching Daemon at Wed Oct 28 10:23:03 IST 2026
[2026-10-28 10:23:03,511.511 INFO    ] ================================================
[2026-10-28 10:23:04,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:23:04
[2026-10-28 10:23:04,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:23:04,975.975 INFO    ] Initializing speech engine...
[2026-10-28 10:23:04,985.985 INFO    ] 2026-10-28 10:23:04
[2026-10-28 10:23:05,262.262 INFO    ] 2026-10-28 10:23:05
[2026-10-28 10:23:05,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:23:05,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:23:05,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:23:05,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:23:05,809.809 INFO    ] time= 28/10/2026 10:23:05
[2026-10-28 10:23:05,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:23:05,842.842 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:23:05,978.978 INFO    ] No existing commands found in stream
[2026-10-28 10:23:11,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:23:11,011.011 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 10:23:12,447.447 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:23:12,449.449 INFO    ] Checking for system updates...
[2026-10-28 10:23:12,485.485 INFO    ] 200
[2026-10-28 10:23:12,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:23:12,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:23:12,552.552 INFO    ] No update needed
[2026-10-28 10:23:12,555.555 INFO    ] Checking for camera pi updates...
[2026-10-28 10:23:12,593.593 INFO    ] 200
[2026-10-28 10:23:12,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:23:12,651.651 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:23:12,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:23:12,758.758 INFO    ] No camera update needed
[2026-10-28 10:23:12,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:23:12,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:23:12,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:23:12,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:23:14,814.814 INFO    ] ================================================
[2026-10-28 10:23:14,829.829 INFO    ] Launching Daemon at Wed Oct 28 10:23:14 IST 2026
[2026-10-28 10:23:14,841.841 INFO    ] ================================================
[2026-10-28 10:23:15,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:23:15
[2026-10-28 10:23:16,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:23:16,409.409 INFO    ] Initializing speech engine...
[2026-10-28 10:23:16,418.418 INFO    ] 2026-10-28 10:23:16
[2026-10-28 10:23:16,704.704 INFO    ] 2026-10-28 10:23:16
[2026-10-28 10:23:16,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:23:16,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:23:16,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:23:17,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:23:17,244.244 INFO    ] time= 28/10/2026 10:23:17
[2026-10-28 10:23:17,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:23:17,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:23:17,446.446 INFO    ] No existing commands found in stream
[2026-10-28 10:23:22,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:23:22,480.480 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 10:23:25,266.266 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:23:25,269.269 INFO    ] Checking for system updates...
[2026-10-28 10:23:25,310.310 INFO    ] 200
[2026-10-28 10:23:25,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:23:25,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:23:25,370.370 INFO    ] No update needed
[2026-10-28 10:23:25,373.373 INFO    ] Checking for camera pi updates...
[2026-10-28 10:23:25,406.406 INFO    ] 200
[2026-10-28 10:23:25,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:23:25,449.449 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:23:25,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:23:25,555.555 INFO    ] No camera update needed
[2026-10-28 10:23:25,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:23:25,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:23:25,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:23:25,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:23:27,613.613 INFO    ] ================================================
[2026-10-28 10:23:27,627.627 INFO    ] Launching Daemon at Wed Oct 28 10:23:27 IST 2026
[2026-10-28 10:23:27,638.638 INFO    ] ================================================
[2026-10-28 10:23:28,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:23:28
[2026-10-28 10:23:28,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:23:29,081.081 INFO    ] Initializing speech engine...
[2026-10-28 10:23:29,091.091 INFO    ] 2026-10-28 10:23:29
[2026-10-28 10:23:29,339.339 INFO    ] 2026-10-28 10:23:29
[2026-10-28 10:23:29,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:23:29,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:23:29,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:23:29,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:23:29,896.896 INFO    ] time= 28/10/2026 10:23:29
[2026-10-28 10:23:29,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:23:29,931.931 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:23:30,049.049 INFO    ] No existing commands found in stream
[2026-10-28 10:23:35,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:23:35,069.069 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-28 10:23:36,330.330 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:23:36,333.333 INFO    ] Checking for system updates...
[2026-10-28 10:23:36,380.380 INFO    ] 200
[2026-10-28 10:23:36,383.383 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 10:23:36,386.386 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-28 10:23:36,388.388 INFO    ] Checking for camera pi updates...
[2026-10-28 10:23:36,424.424 INFO    ] 200
[2026-10-28 10:23:36,427.427 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 10:23:36,430.430 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-28 10:23:36,433.433 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:23:36,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:23:36,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:23:36,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:23:38,487.487 INFO    ] ================================================
[2026-10-28 10:23:38,502.502 INFO    ] Launching Daemon at Wed Oct 28 10:23:38 IST 2026
[2026-10-28 10:23:38,513.513 INFO    ] ================================================
[2026-10-28 10:23:39,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:23:39
[2026-10-28 10:23:39,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:23:39,945.945 INFO    ] Initializing speech engine...
[2026-10-28 10:23:39,951.951 INFO    ] 2026-10-28 10:23:39
[2026-10-28 10:23:40,199.199 INFO    ] 2026-10-28 10:23:40
[2026-10-28 10:23:40,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:23:40,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:23:40,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:23:40,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:23:40,771.771 INFO    ] time= 28/10/2026 10:23:40
[2026-10-28 10:23:40,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:23:40,796.796 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:23:40,929.929 INFO    ] No existing commands found in stream
[2026-10-28 10:23:45,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:23:45,955.955 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-28 10:23:48,646.646 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:23:48,648.648 INFO    ] Checking for system updates...
[2026-10-28 10:23:48,684.684 INFO    ] 200
[2026-10-28 10:23:48,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:23:48,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:23:48,742.742 INFO    ] No update needed
[2026-10-28 10:23:48,745.745 INFO    ] Checking for camera pi updates...
[2026-10-28 10:23:48,778.778 INFO    ] 200
[2026-10-28 10:23:48,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:23:48,827.827 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:23:48,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:23:48,906.906 INFO    ] No camera update needed
[2026-10-28 10:23:48,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:23:48,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:23:48,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:23:48,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:23:50,961.961 INFO    ] ================================================
[2026-10-28 10:23:50,976.976 INFO    ] Launching Daemon at Wed Oct 28 10:23:50 IST 2026
[2026-10-28 10:23:50,988.988 INFO    ] ================================================
[2026-10-28 10:23:51,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:23:51
[2026-10-28 10:23:52,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:23:52,408.408 INFO    ] Initializing speech engine...
[2026-10-28 10:23:52,417.417 INFO    ] 2026-10-28 10:23:52
[2026-10-28 10:23:52,663.663 INFO    ] 2026-10-28 10:23:52
[2026-10-28 10:23:52,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:23:52,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:23:52,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:23:53,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:23:53,219.219 INFO    ] time= 28/10/2026 10:23:53
[2026-10-28 10:23:53,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:23:53,249.249 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:23:53,386.386 INFO    ] No existing commands found in stream
[2026-10-28 10:23:58,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:23:58,419.419 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 10:24:01,626.626 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:24:01,629.629 INFO    ] Checking for system updates...
[2026-10-28 10:24:01,676.676 INFO    ] 200
[2026-10-28 10:24:01,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:24:01,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:24:01,759.759 INFO    ] No update needed
[2026-10-28 10:24:01,761.761 INFO    ] Checking for camera pi updates...
[2026-10-28 10:24:01,814.814 INFO    ] 200
[2026-10-28 10:24:01,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:24:01,866.866 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:24:01,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:24:01,986.986 INFO    ] No camera update needed
[2026-10-28 10:24:01,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:24:01,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:24:02,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:24:02,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:24:04,047.047 INFO    ] ================================================
[2026-10-28 10:24:04,063.063 INFO    ] Launching Daemon at Wed Oct 28 10:24:04 IST 2026
[2026-10-28 10:24:04,073.073 INFO    ] ================================================
[2026-10-28 10:24:04,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:24:04
[2026-10-28 10:24:05,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:24:05,539.539 INFO    ] Initializing speech engine...
[2026-10-28 10:24:05,548.548 INFO    ] 2026-10-28 10:24:05
[2026-10-28 10:24:05,806.806 INFO    ] 2026-10-28 10:24:05
[2026-10-28 10:24:05,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:24:06,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:24:06,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:24:06,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:24:06,362.362 INFO    ] time= 28/10/2026 10:24:06
[2026-10-28 10:24:06,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:24:06,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:24:06,533.533 INFO    ] No existing commands found in stream
[2026-10-28 10:24:11,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:24:11,566.566 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 10:24:14,339.339 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:24:14,342.342 INFO    ] Checking for system updates...
[2026-10-28 10:24:14,386.386 INFO    ] 200
[2026-10-28 10:24:14,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:24:14,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:24:14,443.443 INFO    ] No update needed
[2026-10-28 10:24:14,446.446 INFO    ] Checking for camera pi updates...
[2026-10-28 10:24:14,484.484 INFO    ] 200
[2026-10-28 10:24:14,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:24:14,526.526 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:24:14,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:24:14,697.697 INFO    ] No camera update needed
[2026-10-28 10:24:14,700.700 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:24:14,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:24:14,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:24:14,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:24:16,753.753 INFO    ] ================================================
[2026-10-28 10:24:16,772.772 INFO    ] Launching Daemon at Wed Oct 28 10:24:16 IST 2026
[2026-10-28 10:24:16,783.783 INFO    ] ================================================
[2026-10-28 10:24:17,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:24:17
[2026-10-28 10:24:18,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:24:18,317.317 INFO    ] Initializing speech engine...
[2026-10-28 10:24:18,326.326 INFO    ] 2026-10-28 10:24:18
[2026-10-28 10:24:18,581.581 INFO    ] 2026-10-28 10:24:18
[2026-10-28 10:24:18,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:24:18,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:24:18,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:24:19,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:24:19,130.130 INFO    ] time= 28/10/2026 10:24:19
[2026-10-28 10:24:19,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:24:19,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:24:19,285.285 INFO    ] No existing commands found in stream
[2026-10-28 10:24:24,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:24:24,309.309 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-28 10:24:26,248.248 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:24:26,250.250 INFO    ] Checking for system updates...
[2026-10-28 10:24:26,290.290 INFO    ] 200
[2026-10-28 10:24:26,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:24:26,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:24:26,347.347 INFO    ] No update needed
[2026-10-28 10:24:26,350.350 INFO    ] Checking for camera pi updates...
[2026-10-28 10:24:26,395.395 INFO    ] 200
[2026-10-28 10:24:26,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:24:26,441.441 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:24:26,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:24:26,507.507 INFO    ] No camera update needed
[2026-10-28 10:24:26,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:24:26,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:24:26,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:24:26,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:24:28,562.562 INFO    ] ================================================
[2026-10-28 10:24:28,577.577 INFO    ] Launching Daemon at Wed Oct 28 10:24:28 IST 2026
[2026-10-28 10:24:28,588.588 INFO    ] ================================================
[2026-10-28 10:24:29,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:24:29
[2026-10-28 10:24:29,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:24:30,009.009 INFO    ] Initializing speech engine...
[2026-10-28 10:24:30,019.019 INFO    ] 2026-10-28 10:24:30
[2026-10-28 10:24:30,268.268 INFO    ] 2026-10-28 10:24:30
[2026-10-28 10:24:30,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:24:30,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:24:30,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:24:30,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:24:30,846.846 INFO    ] time= 28/10/2026 10:24:30
[2026-10-28 10:24:30,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:24:30,872.872 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:24:31,071.071 INFO    ] No existing commands found in stream
[2026-10-28 10:24:36,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:24:36,106.106 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 10:24:38,072.072 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:24:38,075.075 INFO    ] Checking for system updates...
[2026-10-28 10:24:38,112.112 INFO    ] 200
[2026-10-28 10:24:38,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:24:38,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:24:38,172.172 INFO    ] No update needed
[2026-10-28 10:24:38,175.175 INFO    ] Checking for camera pi updates...
[2026-10-28 10:24:38,213.213 INFO    ] 200
[2026-10-28 10:24:38,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:24:38,258.258 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:24:38,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:24:38,338.338 INFO    ] No camera update needed
[2026-10-28 10:24:38,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:24:38,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:24:38,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:24:38,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:24:40,396.396 INFO    ] ================================================
[2026-10-28 10:24:40,412.412 INFO    ] Launching Daemon at Wed Oct 28 10:24:40 IST 2026
[2026-10-28 10:24:40,426.426 INFO    ] ================================================
[2026-10-28 10:24:40,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:24:40
[2026-10-28 10:24:41,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:24:41,849.849 INFO    ] Initializing speech engine...
[2026-10-28 10:24:41,860.860 INFO    ] 2026-10-28 10:24:41
[2026-10-28 10:24:42,105.105 INFO    ] 2026-10-28 10:24:42
[2026-10-28 10:24:42,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:24:42,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:24:42,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:24:42,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:24:42,662.662 INFO    ] time= 28/10/2026 10:24:42
[2026-10-28 10:24:42,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:24:42,686.686 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:24:42,819.819 INFO    ] No existing commands found in stream
[2026-10-28 10:24:47,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:24:47,852.852 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 10:24:49,370.370 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:24:49,373.373 INFO    ] Checking for system updates...
[2026-10-28 10:24:49,412.412 INFO    ] 200
[2026-10-28 10:24:49,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:24:49,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:24:49,476.476 INFO    ] No update needed
[2026-10-28 10:24:49,478.478 INFO    ] Checking for camera pi updates...
[2026-10-28 10:24:49,511.511 INFO    ] 200
[2026-10-28 10:24:49,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:24:49,558.558 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:24:49,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:24:49,660.660 INFO    ] No camera update needed
[2026-10-28 10:24:49,662.662 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:24:49,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:24:49,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:24:49,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:24:51,718.718 INFO    ] ================================================
[2026-10-28 10:24:51,735.735 INFO    ] Launching Daemon at Wed Oct 28 10:24:51 IST 2026
[2026-10-28 10:24:51,747.747 INFO    ] ================================================
[2026-10-28 10:24:52,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:24:52
[2026-10-28 10:24:53,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:24:53,294.294 INFO    ] Initializing speech engine...
[2026-10-28 10:24:53,300.300 INFO    ] 2026-10-28 10:24:53
[2026-10-28 10:24:53,598.598 INFO    ] 2026-10-28 10:24:53
[2026-10-28 10:24:53,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:24:53,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:24:53,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:24:54,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:24:54,192.192 INFO    ] time= 28/10/2026 10:24:54
[2026-10-28 10:24:54,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:24:54,240.240 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:24:54,369.369 INFO    ] No existing commands found in stream
[2026-10-28 10:24:59,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:24:59,389.389 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-28 10:25:02,873.873 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:25:02,876.876 INFO    ] Checking for system updates...
[2026-10-28 10:25:02,925.925 INFO    ] 200
[2026-10-28 10:25:02,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:25:02,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:25:03,000.000 INFO    ] No update needed
[2026-10-28 10:25:03,002.002 INFO    ] Checking for camera pi updates...
[2026-10-28 10:25:03,036.036 INFO    ] 200
[2026-10-28 10:25:03,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:25:03,091.091 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:25:03,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:25:03,229.229 INFO    ] No camera update needed
[2026-10-28 10:25:03,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:25:03,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:25:03,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:25:03,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:25:05,283.283 INFO    ] ================================================
[2026-10-28 10:25:05,299.299 INFO    ] Launching Daemon at Wed Oct 28 10:25:05 IST 2026
[2026-10-28 10:25:05,309.309 INFO    ] ================================================
[2026-10-28 10:25:05,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:25:05
[2026-10-28 10:25:06,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:25:06,730.730 INFO    ] Initializing speech engine...
[2026-10-28 10:25:06,739.739 INFO    ] 2026-10-28 10:25:06
[2026-10-28 10:25:06,983.983 INFO    ] 2026-10-28 10:25:06
[2026-10-28 10:25:07,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:25:07,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:25:07,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:25:07,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:25:07,539.539 INFO    ] time= 28/10/2026 10:25:07
[2026-10-28 10:25:07,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:25:07,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:25:07,686.686 INFO    ] No existing commands found in stream
[2026-10-28 10:25:12,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:25:12,704.704 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-28 10:25:16,089.089 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:25:16,092.092 INFO    ] Checking for system updates...
[2026-10-28 10:25:16,127.127 INFO    ] 200
[2026-10-28 10:25:16,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:25:16,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:25:16,190.190 INFO    ] No update needed
[2026-10-28 10:25:16,192.192 INFO    ] Checking for camera pi updates...
[2026-10-28 10:25:16,225.225 INFO    ] 200
[2026-10-28 10:25:16,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:25:16,268.268 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:25:16,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:25:16,351.351 INFO    ] No camera update needed
[2026-10-28 10:25:16,353.353 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:25:16,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:25:16,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:25:16,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:25:18,408.408 INFO    ] ================================================
[2026-10-28 10:25:18,424.424 INFO    ] Launching Daemon at Wed Oct 28 10:25:18 IST 2026
[2026-10-28 10:25:18,434.434 INFO    ] ================================================
[2026-10-28 10:25:19,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:25:18
[2026-10-28 10:25:19,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:25:19,852.852 INFO    ] Initializing speech engine...
[2026-10-28 10:25:19,861.861 INFO    ] 2026-10-28 10:25:19
[2026-10-28 10:25:20,113.113 INFO    ] 2026-10-28 10:25:20
[2026-10-28 10:25:20,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:25:20,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:25:20,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:25:20,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:25:20,680.680 INFO    ] time= 28/10/2026 10:25:20
[2026-10-28 10:25:20,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:25:20,726.726 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:25:20,852.852 INFO    ] No existing commands found in stream
[2026-10-28 10:25:25,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:25:25,890.890 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-28 10:25:28,250.250 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:25:28,253.253 INFO    ] Checking for system updates...
[2026-10-28 10:25:28,288.288 INFO    ] 200
[2026-10-28 10:25:28,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:25:28,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:25:28,351.351 INFO    ] No update needed
[2026-10-28 10:25:28,353.353 INFO    ] Checking for camera pi updates...
[2026-10-28 10:25:28,387.387 INFO    ] 200
[2026-10-28 10:25:28,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:25:28,434.434 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:25:28,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:25:28,536.536 INFO    ] No camera update needed
[2026-10-28 10:25:28,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:25:28,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:25:28,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:25:28,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:25:30,594.594 INFO    ] ================================================
[2026-10-28 10:25:30,609.609 INFO    ] Launching Daemon at Wed Oct 28 10:25:30 IST 2026
[2026-10-28 10:25:30,620.620 INFO    ] ================================================
[2026-10-28 10:25:31,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:25:31
[2026-10-28 10:25:31,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:25:32,080.080 INFO    ] Initializing speech engine...
[2026-10-28 10:25:32,088.088 INFO    ] 2026-10-28 10:25:32
[2026-10-28 10:25:32,354.354 INFO    ] 2026-10-28 10:25:32
[2026-10-28 10:25:32,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:25:32,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:25:32,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:25:32,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:25:32,882.882 INFO    ] time= 28/10/2026 10:25:32
[2026-10-28 10:25:32,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:25:32,957.957 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:25:33,082.082 INFO    ] No existing commands found in stream
[2026-10-28 10:25:38,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:25:38,110.110 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-28 10:25:42,394.394 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:25:42,396.396 INFO    ] Checking for system updates...
[2026-10-28 10:25:42,432.432 INFO    ] 200
[2026-10-28 10:25:42,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:25:42,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:25:42,489.489 INFO    ] No update needed
[2026-10-28 10:25:42,491.491 INFO    ] Checking for camera pi updates...
[2026-10-28 10:25:42,524.524 INFO    ] 200
[2026-10-28 10:25:42,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:25:42,566.566 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:25:42,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:25:42,649.649 INFO    ] No camera update needed
[2026-10-28 10:25:42,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:25:42,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:25:42,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:25:42,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:25:44,705.705 INFO    ] ================================================
[2026-10-28 10:25:44,721.721 INFO    ] Launching Daemon at Wed Oct 28 10:25:44 IST 2026
[2026-10-28 10:25:44,732.732 INFO    ] ================================================
[2026-10-28 10:25:45,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:25:45
[2026-10-28 10:25:45,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:25:46,198.198 INFO    ] Initializing speech engine...
[2026-10-28 10:25:46,213.213 INFO    ] 2026-10-28 10:25:46
[2026-10-28 10:25:46,490.490 INFO    ] 2026-10-28 10:25:46
[2026-10-28 10:25:46,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:25:46,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:25:46,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:25:46,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:25:47,047.047 INFO    ] time= 28/10/2026 10:25:46
[2026-10-28 10:25:47,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:25:47,131.131 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:25:47,264.264 INFO    ] No existing commands found in stream
[2026-10-28 10:25:52,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:25:52,294.294 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 10:25:56,367.367 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:25:56,369.369 INFO    ] Checking for system updates...
[2026-10-28 10:25:56,409.409 INFO    ] 200
[2026-10-28 10:25:56,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:25:56,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:25:56,468.468 INFO    ] No update needed
[2026-10-28 10:25:56,474.474 INFO    ] Checking for camera pi updates...
[2026-10-28 10:25:56,512.512 INFO    ] 200
[2026-10-28 10:25:56,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:25:56,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:25:56,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:25:56,636.636 INFO    ] No camera update needed
[2026-10-28 10:25:56,638.638 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:25:56,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:25:56,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:25:56,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:25:58,691.691 INFO    ] ================================================
[2026-10-28 10:25:58,706.706 INFO    ] Launching Daemon at Wed Oct 28 10:25:58 IST 2026
[2026-10-28 10:25:58,717.717 INFO    ] ================================================
[2026-10-28 10:25:59,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:25:59
[2026-10-28 10:25:59,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:26:00,183.183 INFO    ] Initializing speech engine...
[2026-10-28 10:26:00,192.192 INFO    ] 2026-10-28 10:26:00
[2026-10-28 10:26:00,441.441 INFO    ] 2026-10-28 10:26:00
[2026-10-28 10:26:00,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:26:00,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:26:00,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:26:00,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:26:00,996.996 INFO    ] time= 28/10/2026 10:26:00
[2026-10-28 10:26:01,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:26:01,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:26:01,152.152 INFO    ] No existing commands found in stream
[2026-10-28 10:26:06,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:26:06,173.173 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 10:26:10,335.335 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:26:10,338.338 INFO    ] Checking for system updates...
[2026-10-28 10:26:10,377.377 INFO    ] 200
[2026-10-28 10:26:10,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:26:10,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:26:10,436.436 INFO    ] No update needed
[2026-10-28 10:26:10,438.438 INFO    ] Checking for camera pi updates...
[2026-10-28 10:26:10,475.475 INFO    ] 200
[2026-10-28 10:26:10,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:26:10,523.523 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:26:10,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:26:10,606.606 INFO    ] No camera update needed
[2026-10-28 10:26:10,608.608 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:26:10,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:26:10,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:26:10,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:26:12,663.663 INFO    ] ================================================
[2026-10-28 10:26:12,679.679 INFO    ] Launching Daemon at Wed Oct 28 10:26:12 IST 2026
[2026-10-28 10:26:12,690.690 INFO    ] ================================================
[2026-10-28 10:26:13,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:26:13
[2026-10-28 10:26:14,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:26:14,269.269 INFO    ] Initializing speech engine...
[2026-10-28 10:26:14,278.278 INFO    ] 2026-10-28 10:26:14
[2026-10-28 10:26:14,527.527 INFO    ] 2026-10-28 10:26:14
[2026-10-28 10:26:14,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:26:14,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:26:14,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:26:15,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:26:15,091.091 INFO    ] time= 28/10/2026 10:26:15
[2026-10-28 10:26:15,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:26:15,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:26:15,272.272 INFO    ] No existing commands found in stream
[2026-10-28 10:26:20,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:26:20,305.305 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-28 10:26:23,392.392 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:26:23,395.395 INFO    ] Checking for system updates...
[2026-10-28 10:26:23,430.430 INFO    ] 200
[2026-10-28 10:26:23,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:26:23,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:26:23,487.487 INFO    ] No update needed
[2026-10-28 10:26:23,489.489 INFO    ] Checking for camera pi updates...
[2026-10-28 10:26:23,523.523 INFO    ] 200
[2026-10-28 10:26:23,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:26:23,570.570 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:26:23,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:26:23,772.772 INFO    ] No camera update needed
[2026-10-28 10:26:23,775.775 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:26:23,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:26:23,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:26:23,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:26:25,828.828 INFO    ] ================================================
[2026-10-28 10:26:25,843.843 INFO    ] Launching Daemon at Wed Oct 28 10:26:25 IST 2026
[2026-10-28 10:26:25,853.853 INFO    ] ================================================
[2026-10-28 10:26:26,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:26:26
[2026-10-28 10:26:27,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:26:27,357.357 INFO    ] Initializing speech engine...
[2026-10-28 10:26:27,369.369 INFO    ] 2026-10-28 10:26:27
[2026-10-28 10:26:27,656.656 INFO    ] 2026-10-28 10:26:27
[2026-10-28 10:26:27,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:26:28,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:26:28,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:26:28,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:26:28,291.291 INFO    ] time= 28/10/2026 10:26:28
[2026-10-28 10:26:28,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:26:28,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:26:28,470.470 INFO    ] No existing commands found in stream
[2026-10-28 10:26:33,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:26:33,498.498 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 10:26:34,127.127 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:26:34,130.130 INFO    ] Checking for system updates...
[2026-10-28 10:26:34,166.166 INFO    ] 200
[2026-10-28 10:26:34,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:26:34,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:26:34,230.230 INFO    ] No update needed
[2026-10-28 10:26:34,232.232 INFO    ] Checking for camera pi updates...
[2026-10-28 10:26:34,266.266 INFO    ] 200
[2026-10-28 10:26:34,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:26:34,309.309 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:26:34,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:26:34,399.399 INFO    ] No camera update needed
[2026-10-28 10:26:34,401.401 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:26:34,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:26:34,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:26:34,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:26:36,454.454 INFO    ] ================================================
[2026-10-28 10:26:36,469.469 INFO    ] Launching Daemon at Wed Oct 28 10:26:36 IST 2026
[2026-10-28 10:26:36,479.479 INFO    ] ================================================
[2026-10-28 10:26:37,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:26:37
[2026-10-28 10:26:37,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:26:37,940.940 INFO    ] Initializing speech engine...
[2026-10-28 10:26:37,958.958 INFO    ] 2026-10-28 10:26:37
[2026-10-28 10:26:38,233.233 INFO    ] 2026-10-28 10:26:38
[2026-10-28 10:26:38,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:26:38,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:26:38,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:26:38,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:26:38,872.872 INFO    ] time= 28/10/2026 10:26:38
[2026-10-28 10:26:38,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:26:38,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:26:39,020.020 INFO    ] No existing commands found in stream
[2026-10-28 10:26:44,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:26:44,048.048 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 10:26:48,541.541 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:26:48,544.544 INFO    ] Checking for system updates...
[2026-10-28 10:26:48,579.579 INFO    ] 200
[2026-10-28 10:26:48,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:26:48,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:26:48,645.645 INFO    ] No update needed
[2026-10-28 10:26:48,647.647 INFO    ] Checking for camera pi updates...
[2026-10-28 10:26:48,680.680 INFO    ] 200
[2026-10-28 10:26:48,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:26:48,729.729 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:26:48,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:26:48,811.811 INFO    ] No camera update needed
[2026-10-28 10:26:48,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:26:48,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:26:48,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:26:48,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:26:50,866.866 INFO    ] ================================================
[2026-10-28 10:26:50,880.880 INFO    ] Launching Daemon at Wed Oct 28 10:26:50 IST 2026
[2026-10-28 10:26:50,891.891 INFO    ] ================================================
[2026-10-28 10:26:51,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:26:51
[2026-10-28 10:26:52,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:26:52,327.327 INFO    ] Initializing speech engine...
[2026-10-28 10:26:52,342.342 INFO    ] 2026-10-28 10:26:52
[2026-10-28 10:26:52,630.630 INFO    ] 2026-10-28 10:26:52
[2026-10-28 10:26:52,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:26:52,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:26:52,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:26:53,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:26:53,058.058 INFO    ] time= 28/10/2026 10:26:53
[2026-10-28 10:26:53,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:26:53,138.138 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:26:53,259.259 INFO    ] No existing commands found in stream
[2026-10-28 10:26:58,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:26:58,287.287 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-28 10:26:59,854.854 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:26:59,856.856 INFO    ] Checking for system updates...
[2026-10-28 10:26:59,893.893 INFO    ] 200
[2026-10-28 10:26:59,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:26:59,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:26:59,951.951 INFO    ] No update needed
[2026-10-28 10:26:59,954.954 INFO    ] Checking for camera pi updates...
[2026-10-28 10:26:59,987.987 INFO    ] 200
[2026-10-28 10:26:59,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:27:00,030.030 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:27:00,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:27:00,111.111 INFO    ] No camera update needed
[2026-10-28 10:27:00,113.113 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:27:00,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:27:00,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:27:00,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:27:02,174.174 INFO    ] ================================================
[2026-10-28 10:27:02,199.199 INFO    ] Launching Daemon at Wed Oct 28 10:27:02 IST 2026
[2026-10-28 10:27:02,216.216 INFO    ] ================================================
[2026-10-28 10:27:02,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:27:02
[2026-10-28 10:27:03,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:27:03,868.868 INFO    ] Initializing speech engine...
[2026-10-28 10:27:03,883.883 INFO    ] 2026-10-28 10:27:03
[2026-10-28 10:27:04,152.152 INFO    ] 2026-10-28 10:27:04
[2026-10-28 10:27:04,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:27:04,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:27:04,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:27:04,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:27:04,694.694 INFO    ] time= 28/10/2026 10:27:04
[2026-10-28 10:27:04,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:27:04,719.719 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:27:04,800.800 INFO    ] No existing commands found in stream
[2026-10-28 10:27:09,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:27:09,812.812 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-28 10:27:11,490.490 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:27:11,493.493 INFO    ] Checking for system updates...
[2026-10-28 10:27:11,531.531 INFO    ] 200
[2026-10-28 10:27:11,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:27:11,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:27:11,589.589 INFO    ] No update needed
[2026-10-28 10:27:11,591.591 INFO    ] Checking for camera pi updates...
[2026-10-28 10:27:11,625.625 INFO    ] 200
[2026-10-28 10:27:11,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:27:11,668.668 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:27:11,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:27:11,750.750 INFO    ] No camera update needed
[2026-10-28 10:27:11,752.752 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:27:11,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:27:11,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:27:11,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:27:13,804.804 INFO    ] ================================================
[2026-10-28 10:27:13,819.819 INFO    ] Launching Daemon at Wed Oct 28 10:27:13 IST 2026
[2026-10-28 10:27:13,830.830 INFO    ] ================================================
[2026-10-28 10:27:14,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:27:14
[2026-10-28 10:27:14,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:27:15,247.247 INFO    ] Initializing speech engine...
[2026-10-28 10:27:15,275.275 INFO    ] 2026-10-28 10:27:15
[2026-10-28 10:27:15,526.526 INFO    ] 2026-10-28 10:27:15
[2026-10-28 10:27:15,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:27:15,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:27:15,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:27:16,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:27:16,108.108 INFO    ] time= 28/10/2026 10:27:16
[2026-10-28 10:27:16,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:27:16,144.144 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:27:16,269.269 INFO    ] No existing commands found in stream
[2026-10-28 10:27:21,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:27:21,301.301 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-28 10:27:26,048.048 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:27:26,051.051 INFO    ] Checking for system updates...
[2026-10-28 10:27:26,090.090 INFO    ] 200
[2026-10-28 10:27:26,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:27:26,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:27:26,146.146 INFO    ] No update needed
[2026-10-28 10:27:26,149.149 INFO    ] Checking for camera pi updates...
[2026-10-28 10:27:26,189.189 INFO    ] 200
[2026-10-28 10:27:26,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:27:26,236.236 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:27:26,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:27:26,322.322 INFO    ] No camera update needed
[2026-10-28 10:27:26,324.324 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:27:26,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:27:26,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:27:26,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:27:28,379.379 INFO    ] ================================================
[2026-10-28 10:27:28,394.394 INFO    ] Launching Daemon at Wed Oct 28 10:27:28 IST 2026
[2026-10-28 10:27:28,404.404 INFO    ] ================================================
[2026-10-28 10:27:28,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:27:28
[2026-10-28 10:27:29,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:27:29,859.859 INFO    ] Initializing speech engine...
[2026-10-28 10:27:29,868.868 INFO    ] 2026-10-28 10:27:29
[2026-10-28 10:27:30,136.136 INFO    ] 2026-10-28 10:27:30
[2026-10-28 10:27:30,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:27:30,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:27:30,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:27:30,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:27:30,687.687 INFO    ] time= 28/10/2026 10:27:30
[2026-10-28 10:27:30,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:27:30,711.711 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:27:30,825.825 INFO    ] No existing commands found in stream
[2026-10-28 10:27:35,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:27:35,853.853 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 10:27:36,687.687 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:27:36,690.690 INFO    ] Checking for system updates...
[2026-10-28 10:27:36,726.726 INFO    ] 200
[2026-10-28 10:27:36,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:27:36,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:27:36,782.782 INFO    ] No update needed
[2026-10-28 10:27:36,785.785 INFO    ] Checking for camera pi updates...
[2026-10-28 10:27:36,818.818 INFO    ] 200
[2026-10-28 10:27:36,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:27:36,864.864 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:27:36,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:27:36,968.968 INFO    ] No camera update needed
[2026-10-28 10:27:36,970.970 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:27:36,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:27:36,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:27:36,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:27:39,024.024 INFO    ] ================================================
[2026-10-28 10:27:39,038.038 INFO    ] Launching Daemon at Wed Oct 28 10:27:39 IST 2026
[2026-10-28 10:27:39,049.049 INFO    ] ================================================
[2026-10-28 10:27:39,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:27:39
[2026-10-28 10:27:40,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:27:40,569.569 INFO    ] Initializing speech engine...
[2026-10-28 10:27:40,578.578 INFO    ] 2026-10-28 10:27:40
[2026-10-28 10:27:40,869.869 INFO    ] 2026-10-28 10:27:40
[2026-10-28 10:27:40,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:27:41,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:27:41,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:27:41,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:27:41,442.442 INFO    ] time= 28/10/2026 10:27:41
[2026-10-28 10:27:41,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:27:41,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:27:41,669.669 INFO    ] No existing commands found in stream
[2026-10-28 10:27:46,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:27:46,687.687 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-28 10:27:50,104.104 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:27:50,106.106 INFO    ] Checking for system updates...
[2026-10-28 10:27:50,143.143 INFO    ] 200
[2026-10-28 10:27:50,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:27:50,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:27:50,207.207 INFO    ] No update needed
[2026-10-28 10:27:50,210.210 INFO    ] Checking for camera pi updates...
[2026-10-28 10:27:50,245.245 INFO    ] 200
[2026-10-28 10:27:50,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:27:50,289.289 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:27:50,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:27:50,387.387 INFO    ] No camera update needed
[2026-10-28 10:27:50,390.390 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:27:50,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:27:50,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:27:50,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:27:52,446.446 INFO    ] ================================================
[2026-10-28 10:27:52,461.461 INFO    ] Launching Daemon at Wed Oct 28 10:27:52 IST 2026
[2026-10-28 10:27:52,472.472 INFO    ] ================================================
[2026-10-28 10:27:53,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:27:53
[2026-10-28 10:27:53,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:27:53,916.916 INFO    ] Initializing speech engine...
[2026-10-28 10:27:53,925.925 INFO    ] 2026-10-28 10:27:53
[2026-10-28 10:27:54,171.171 INFO    ] 2026-10-28 10:27:54
[2026-10-28 10:27:54,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:27:54,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:27:54,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:27:54,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:27:54,737.737 INFO    ] time= 28/10/2026 10:27:54
[2026-10-28 10:27:54,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:27:54,772.772 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:27:54,901.901 INFO    ] No existing commands found in stream
[2026-10-28 10:27:59,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:27:59,934.934 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-28 10:28:01,621.621 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:28:01,624.624 INFO    ] Checking for system updates...
[2026-10-28 10:28:01,659.659 INFO    ] 200
[2026-10-28 10:28:01,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:28:01,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:28:01,723.723 INFO    ] No update needed
[2026-10-28 10:28:01,725.725 INFO    ] Checking for camera pi updates...
[2026-10-28 10:28:01,758.758 INFO    ] 200
[2026-10-28 10:28:01,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:28:01,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:28:01,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:28:01,910.910 INFO    ] No camera update needed
[2026-10-28 10:28:01,912.912 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:28:01,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:28:01,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:28:01,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:28:03,970.970 INFO    ] ================================================
[2026-10-28 10:28:03,985.985 INFO    ] Launching Daemon at Wed Oct 28 10:28:03 IST 2026
[2026-10-28 10:28:04,996.996 INFO    ] ================================================
[2026-10-28 10:28:04,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:28:04
[2026-10-28 10:28:05,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:28:05,450.450 INFO    ] Initializing speech engine...
[2026-10-28 10:28:05,459.459 INFO    ] 2026-10-28 10:28:05
[2026-10-28 10:28:05,716.716 INFO    ] 2026-10-28 10:28:05
[2026-10-28 10:28:05,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:28:06,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:28:06,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:28:06,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:28:06,422.422 INFO    ] time= 28/10/2026 10:28:06
[2026-10-28 10:28:06,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:28:06,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:28:06,639.639 INFO    ] No existing commands found in stream
[2026-10-28 10:28:11,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:28:11,667.667 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 10:28:15,173.173 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:28:15,175.175 INFO    ] Checking for system updates...
[2026-10-28 10:28:15,210.210 INFO    ] 200
[2026-10-28 10:28:15,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:28:15,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:28:15,267.267 INFO    ] No update needed
[2026-10-28 10:28:15,270.270 INFO    ] Checking for camera pi updates...
[2026-10-28 10:28:15,307.307 INFO    ] 200
[2026-10-28 10:28:15,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:28:15,349.349 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:28:15,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:28:15,433.433 INFO    ] No camera update needed
[2026-10-28 10:28:15,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:28:15,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:28:15,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:28:15,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:28:17,488.488 INFO    ] ================================================
[2026-10-28 10:28:17,503.503 INFO    ] Launching Daemon at Wed Oct 28 10:28:17 IST 2026
[2026-10-28 10:28:17,514.514 INFO    ] ================================================
[2026-10-28 10:28:18,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:28:18
[2026-10-28 10:28:18,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:28:19,149.149 INFO    ] Initializing speech engine...
[2026-10-28 10:28:19,157.157 INFO    ] 2026-10-28 10:28:19
[2026-10-28 10:28:19,435.435 INFO    ] 2026-10-28 10:28:19
[2026-10-28 10:28:19,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:28:19,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:28:19,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:28:19,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:28:19,998.998 INFO    ] time= 28/10/2026 10:28:19
[2026-10-28 10:28:20,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:28:20,038.038 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:28:20,174.174 INFO    ] No existing commands found in stream
[2026-10-28 10:28:25,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:28:25,208.208 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-28 10:28:27,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:28:27,424.424 INFO    ] Checking for system updates...
[2026-10-28 10:28:27,461.461 INFO    ] 200
[2026-10-28 10:28:27,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:28:27,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:28:27,520.520 INFO    ] No update needed
[2026-10-28 10:28:27,523.523 INFO    ] Checking for camera pi updates...
[2026-10-28 10:28:27,561.561 INFO    ] 200
[2026-10-28 10:28:27,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:28:27,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:28:27,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:28:27,793.793 INFO    ] No camera update needed
[2026-10-28 10:28:27,795.795 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:28:27,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:28:27,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:28:27,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:28:29,848.848 INFO    ] ================================================
[2026-10-28 10:28:29,864.864 INFO    ] Launching Daemon at Wed Oct 28 10:28:29 IST 2026
[2026-10-28 10:28:29,874.874 INFO    ] ================================================
[2026-10-28 10:28:30,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:28:30
[2026-10-28 10:28:31,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:28:31,344.344 INFO    ] Initializing speech engine...
[2026-10-28 10:28:31,350.350 INFO    ] 2026-10-28 10:28:31
[2026-10-28 10:28:31,623.623 INFO    ] 2026-10-28 10:28:31
[2026-10-28 10:28:31,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:28:31,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:28:31,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:28:32,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:28:32,285.285 INFO    ] time= 28/10/2026 10:28:32
[2026-10-28 10:28:32,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:28:32,314.314 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:28:32,441.441 INFO    ] No existing commands found in stream
[2026-10-28 10:28:37,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:28:37,470.470 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-28 10:28:40,167.167 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:28:40,170.170 INFO    ] Checking for system updates...
[2026-10-28 10:28:40,220.220 INFO    ] 200
[2026-10-28 10:28:40,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:28:40,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:28:40,284.284 INFO    ] No update needed
[2026-10-28 10:28:40,287.287 INFO    ] Checking for camera pi updates...
[2026-10-28 10:28:40,320.320 INFO    ] 200
[2026-10-28 10:28:40,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:28:40,363.363 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:28:40,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:28:40,451.451 INFO    ] No camera update needed
[2026-10-28 10:28:40,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:28:40,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:28:40,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:28:40,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:28:42,508.508 INFO    ] ================================================
[2026-10-28 10:28:42,523.523 INFO    ] Launching Daemon at Wed Oct 28 10:28:42 IST 2026
[2026-10-28 10:28:42,534.534 INFO    ] ================================================
[2026-10-28 10:28:43,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:28:43
[2026-10-28 10:28:43,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:28:43,990.990 INFO    ] Initializing speech engine...
[2026-10-28 10:28:43,996.996 INFO    ] 2026-10-28 10:28:43
[2026-10-28 10:28:44,256.256 INFO    ] 2026-10-28 10:28:44
[2026-10-28 10:28:44,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:28:44,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:28:44,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:28:44,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:28:44,800.800 INFO    ] time= 28/10/2026 10:28:44
[2026-10-28 10:28:44,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:28:44,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:28:44,972.972 INFO    ] No existing commands found in stream
[2026-10-28 10:28:50,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:28:50,006.006 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-28 10:28:54,258.258 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:28:54,261.261 INFO    ] Checking for system updates...
[2026-10-28 10:28:54,296.296 INFO    ] 200
[2026-10-28 10:28:54,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:28:54,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:28:54,361.361 INFO    ] No update needed
[2026-10-28 10:28:54,363.363 INFO    ] Checking for camera pi updates...
[2026-10-28 10:28:54,396.396 INFO    ] 200
[2026-10-28 10:28:54,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:28:54,439.439 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:28:54,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:28:54,540.540 INFO    ] No camera update needed
[2026-10-28 10:28:54,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:28:54,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:28:54,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:28:54,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:28:56,596.596 INFO    ] ================================================
[2026-10-28 10:28:56,611.611 INFO    ] Launching Daemon at Wed Oct 28 10:28:56 IST 2026
[2026-10-28 10:28:56,621.621 INFO    ] ================================================
[2026-10-28 10:28:57,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:28:57
[2026-10-28 10:28:57,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:28:58,075.075 INFO    ] Initializing speech engine...
[2026-10-28 10:28:58,083.083 INFO    ] 2026-10-28 10:28:58
[2026-10-28 10:28:58,343.343 INFO    ] 2026-10-28 10:28:58
[2026-10-28 10:28:58,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:28:58,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:28:58,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:28:58,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:28:58,888.888 INFO    ] time= 28/10/2026 10:28:58
[2026-10-28 10:28:58,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:28:58,923.923 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:28:59,035.035 INFO    ] No existing commands found in stream
[2026-10-28 10:29:04,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:29:04,048.048 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 10:29:07,131.131 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:29:07,134.134 INFO    ] Checking for system updates...
[2026-10-28 10:29:07,169.169 INFO    ] 200
[2026-10-28 10:29:07,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:29:07,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:29:07,233.233 INFO    ] No update needed
[2026-10-28 10:29:07,236.236 INFO    ] Checking for camera pi updates...
[2026-10-28 10:29:07,273.273 INFO    ] 200
[2026-10-28 10:29:07,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:29:07,316.316 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:29:07,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:29:07,407.407 INFO    ] No camera update needed
[2026-10-28 10:29:07,409.409 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:29:07,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:29:07,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:29:07,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:29:09,465.465 INFO    ] ================================================
[2026-10-28 10:29:09,481.481 INFO    ] Launching Daemon at Wed Oct 28 10:29:09 IST 2026
[2026-10-28 10:29:09,492.492 INFO    ] ================================================
[2026-10-28 10:29:10,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:29:10
[2026-10-28 10:29:10,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:29:10,951.951 INFO    ] Initializing speech engine...
[2026-10-28 10:29:10,956.956 INFO    ] 2026-10-28 10:29:10
[2026-10-28 10:29:11,219.219 INFO    ] 2026-10-28 10:29:11
[2026-10-28 10:29:11,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:29:11,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:29:11,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:29:11,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:29:11,817.817 INFO    ] time= 28/10/2026 10:29:11
[2026-10-28 10:29:11,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:29:11,870.870 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:29:12,000.000 INFO    ] No existing commands found in stream
[2026-10-28 10:29:17,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:29:17,029.029 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-28 10:29:20,870.870 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:29:20,873.873 INFO    ] Checking for system updates...
[2026-10-28 10:29:20,912.912 INFO    ] 200
[2026-10-28 10:29:20,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:29:20,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:29:20,969.969 INFO    ] No update needed
[2026-10-28 10:29:20,972.972 INFO    ] Checking for camera pi updates...
[2026-10-28 10:29:21,005.005 INFO    ] 200
[2026-10-28 10:29:21,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:29:21,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:29:21,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:29:21,144.144 INFO    ] No camera update needed
[2026-10-28 10:29:21,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:29:21,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:29:21,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:29:21,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:29:23,199.199 INFO    ] ================================================
[2026-10-28 10:29:23,215.215 INFO    ] Launching Daemon at Wed Oct 28 10:29:23 IST 2026
[2026-10-28 10:29:23,226.226 INFO    ] ================================================
[2026-10-28 10:29:23,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:29:23
[2026-10-28 10:29:24,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:29:24,626.626 INFO    ] Initializing speech engine...
[2026-10-28 10:29:24,635.635 INFO    ] 2026-10-28 10:29:24
[2026-10-28 10:29:24,909.909 INFO    ] 2026-10-28 10:29:24
[2026-10-28 10:29:24,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:29:25,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:29:25,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:29:25,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:29:25,479.479 INFO    ] time= 28/10/2026 10:29:25
[2026-10-28 10:29:25,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:29:25,503.503 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:29:25,635.635 INFO    ] No existing commands found in stream
[2026-10-28 10:29:30,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:29:30,652.652 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 10:29:32,434.434 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:29:32,437.437 INFO    ] Checking for system updates...
[2026-10-28 10:29:32,484.484 INFO    ] 200
[2026-10-28 10:29:32,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:29:32,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:29:32,548.548 INFO    ] No update needed
[2026-10-28 10:29:32,551.551 INFO    ] Checking for camera pi updates...
[2026-10-28 10:29:32,588.588 INFO    ] 200
[2026-10-28 10:29:32,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:29:32,640.640 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:29:32,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:29:32,726.726 INFO    ] No camera update needed
[2026-10-28 10:29:32,730.730 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:29:32,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:29:32,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:29:32,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:29:34,790.790 INFO    ] ================================================
[2026-10-28 10:29:34,806.806 INFO    ] Launching Daemon at Wed Oct 28 10:29:34 IST 2026
[2026-10-28 10:29:34,817.817 INFO    ] ================================================
[2026-10-28 10:29:35,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:29:35
[2026-10-28 10:29:35,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:29:36,223.223 INFO    ] Initializing speech engine...
[2026-10-28 10:29:36,229.229 INFO    ] 2026-10-28 10:29:36
[2026-10-28 10:29:36,509.509 INFO    ] 2026-10-28 10:29:36
[2026-10-28 10:29:36,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:29:36,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:29:36,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:29:37,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:29:37,076.076 INFO    ] time= 28/10/2026 10:29:37
[2026-10-28 10:29:37,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:29:37,101.101 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:29:37,227.227 INFO    ] No existing commands found in stream
[2026-10-28 10:29:42,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:29:42,247.247 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-28 10:29:45,834.834 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:29:45,837.837 INFO    ] Checking for system updates...
[2026-10-28 10:29:45,872.872 INFO    ] 200
[2026-10-28 10:29:45,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:29:45,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:29:45,937.937 INFO    ] No update needed
[2026-10-28 10:29:45,939.939 INFO    ] Checking for camera pi updates...
[2026-10-28 10:29:45,978.978 INFO    ] 200
[2026-10-28 10:29:45,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:29:46,026.026 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:29:46,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:29:46,112.112 INFO    ] No camera update needed
[2026-10-28 10:29:46,114.114 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:29:46,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:29:46,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:29:46,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:29:48,170.170 INFO    ] ================================================
[2026-10-28 10:29:48,186.186 INFO    ] Launching Daemon at Wed Oct 28 10:29:48 IST 2026
[2026-10-28 10:29:48,197.197 INFO    ] ================================================
[2026-10-28 10:29:48,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:29:48
[2026-10-28 10:29:49,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:29:49,597.597 INFO    ] Initializing speech engine...
[2026-10-28 10:29:49,611.611 INFO    ] 2026-10-28 10:29:49
[2026-10-28 10:29:49,878.878 INFO    ] 2026-10-28 10:29:49
[2026-10-28 10:29:49,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:29:50,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:29:50,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:29:50,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:29:50,450.450 INFO    ] time= 28/10/2026 10:29:50
[2026-10-28 10:29:50,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:29:50,480.480 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:29:50,614.614 INFO    ] No existing commands found in stream
[2026-10-28 10:29:55,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:29:55,646.646 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-28 10:29:59,674.674 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:29:59,676.676 INFO    ] Checking for system updates...
[2026-10-28 10:29:59,716.716 INFO    ] 200
[2026-10-28 10:29:59,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:29:59,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:29:59,780.780 INFO    ] No update needed
[2026-10-28 10:29:59,782.782 INFO    ] Checking for camera pi updates...
[2026-10-28 10:29:59,815.815 INFO    ] 200
[2026-10-28 10:29:59,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:29:59,858.858 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:29:59,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:29:59,947.947 INFO    ] No camera update needed
[2026-10-28 10:29:59,950.950 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:29:59,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:29:59,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:29:59,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:30:02,009.009 INFO    ] ================================================
[2026-10-28 10:30:02,116.116 INFO    ] Launching Daemon at Wed Oct 28 10:30:02 IST 2026
[2026-10-28 10:30:02,151.151 INFO    ] ================================================
[2026-10-28 10:30:02,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:30:02
[2026-10-28 10:30:03,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:30:04,079.079 INFO    ] Initializing speech engine...
[2026-10-28 10:30:04,087.087 INFO    ] 2026-10-28 10:30:04
[2026-10-28 10:30:04,364.364 INFO    ] 2026-10-28 10:30:04
[2026-10-28 10:30:04,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:30:04,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:30:04,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:30:04,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:30:04,927.927 INFO    ] time= 28/10/2026 10:30:04
[2026-10-28 10:30:04,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:30:04,964.964 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:30:05,111.111 INFO    ] No existing commands found in stream
[2026-10-28 10:30:10,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:30:10,146.146 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-28 10:30:12,417.417 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:30:12,420.420 INFO    ] Checking for system updates...
[2026-10-28 10:30:12,457.457 INFO    ] 200
[2026-10-28 10:30:12,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:30:12,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:30:12,518.518 INFO    ] No update needed
[2026-10-28 10:30:12,520.520 INFO    ] Checking for camera pi updates...
[2026-10-28 10:30:12,555.555 INFO    ] 200
[2026-10-28 10:30:12,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:30:12,604.604 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:30:12,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:30:12,712.712 INFO    ] No camera update needed
[2026-10-28 10:30:12,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:30:12,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:30:12,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:30:12,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:30:14,771.771 INFO    ] ================================================
[2026-10-28 10:30:14,786.786 INFO    ] Launching Daemon at Wed Oct 28 10:30:14 IST 2026
[2026-10-28 10:30:14,797.797 INFO    ] ================================================
[2026-10-28 10:30:15,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:30:15
[2026-10-28 10:30:15,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:30:16,222.222 INFO    ] Initializing speech engine...
[2026-10-28 10:30:16,231.231 INFO    ] 2026-10-28 10:30:16
[2026-10-28 10:30:16,478.478 INFO    ] 2026-10-28 10:30:16
[2026-10-28 10:30:16,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:30:16,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:30:16,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:30:17,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:30:17,034.034 INFO    ] time= 28/10/2026 10:30:17
[2026-10-28 10:30:17,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:30:17,074.074 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:30:17,227.227 INFO    ] No existing commands found in stream
[2026-10-28 10:30:22,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:30:22,255.255 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 10:30:24,434.434 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:30:24,436.436 INFO    ] Checking for system updates...
[2026-10-28 10:30:24,476.476 INFO    ] 200
[2026-10-28 10:30:24,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:30:24,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:30:24,533.533 INFO    ] No update needed
[2026-10-28 10:30:24,535.535 INFO    ] Checking for camera pi updates...
[2026-10-28 10:30:24,572.572 INFO    ] 200
[2026-10-28 10:30:24,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:30:24,619.619 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:30:24,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:30:24,717.717 INFO    ] No camera update needed
[2026-10-28 10:30:24,720.720 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:30:24,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:30:24,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:30:24,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:30:26,774.774 INFO    ] ================================================
[2026-10-28 10:30:26,789.789 INFO    ] Launching Daemon at Wed Oct 28 10:30:26 IST 2026
[2026-10-28 10:30:26,800.800 INFO    ] ================================================
[2026-10-28 10:30:27,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:30:27
[2026-10-28 10:30:27,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:30:28,234.234 INFO    ] Initializing speech engine...
[2026-10-28 10:30:28,244.244 INFO    ] 2026-10-28 10:30:28
[2026-10-28 10:30:28,491.491 INFO    ] 2026-10-28 10:30:28
[2026-10-28 10:30:28,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:30:28,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:30:28,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:30:29,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:30:29,046.046 INFO    ] time= 28/10/2026 10:30:29
[2026-10-28 10:30:29,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:30:29,092.092 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:30:29,214.214 INFO    ] No existing commands found in stream
[2026-10-28 10:30:34,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:30:34,247.247 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-28 10:30:38,793.793 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:30:38,795.795 INFO    ] Checking for system updates...
[2026-10-28 10:30:38,830.830 INFO    ] 200
[2026-10-28 10:30:38,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:30:38,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:30:38,888.888 INFO    ] No update needed
[2026-10-28 10:30:38,891.891 INFO    ] Checking for camera pi updates...
[2026-10-28 10:30:38,924.924 INFO    ] 200
[2026-10-28 10:30:38,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:30:38,973.973 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:30:39,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:30:39,075.075 INFO    ] No camera update needed
[2026-10-28 10:30:39,077.077 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:30:39,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:30:39,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:30:39,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:30:41,131.131 INFO    ] ================================================
[2026-10-28 10:30:41,146.146 INFO    ] Launching Daemon at Wed Oct 28 10:30:41 IST 2026
[2026-10-28 10:30:41,157.157 INFO    ] ================================================
[2026-10-28 10:30:41,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:30:41
[2026-10-28 10:30:42,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:30:42,577.577 INFO    ] Initializing speech engine...
[2026-10-28 10:30:42,585.585 INFO    ] 2026-10-28 10:30:42
[2026-10-28 10:30:42,837.837 INFO    ] 2026-10-28 10:30:42
[2026-10-28 10:30:42,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:30:43,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:30:43,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:30:43,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:30:43,405.405 INFO    ] time= 28/10/2026 10:30:43
[2026-10-28 10:30:43,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:30:43,435.435 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:30:43,562.562 INFO    ] No existing commands found in stream
[2026-10-28 10:30:48,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:30:48,588.588 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 10:30:52,474.474 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:30:52,477.477 INFO    ] Checking for system updates...
[2026-10-28 10:30:52,517.517 INFO    ] 200
[2026-10-28 10:30:52,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:30:52,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:30:52,575.575 INFO    ] No update needed
[2026-10-28 10:30:52,577.577 INFO    ] Checking for camera pi updates...
[2026-10-28 10:30:52,611.611 INFO    ] 200
[2026-10-28 10:30:52,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:30:52,658.658 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:30:52,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:30:52,849.849 INFO    ] No camera update needed
[2026-10-28 10:30:52,851.851 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:30:52,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:30:52,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:30:52,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:30:54,904.904 INFO    ] ================================================
[2026-10-28 10:30:54,925.925 INFO    ] Launching Daemon at Wed Oct 28 10:30:54 IST 2026
[2026-10-28 10:30:54,936.936 INFO    ] ================================================
[2026-10-28 10:30:55,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:30:55
[2026-10-28 10:30:56,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:30:56,367.367 INFO    ] Initializing speech engine...
[2026-10-28 10:30:56,382.382 INFO    ] 2026-10-28 10:30:56
[2026-10-28 10:30:56,668.668 INFO    ] 2026-10-28 10:30:56
[2026-10-28 10:30:56,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:30:56,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:30:56,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:30:57,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:30:57,179.179 INFO    ] time= 28/10/2026 10:30:57
[2026-10-28 10:30:57,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:30:57,292.292 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:30:57,452.452 INFO    ] No existing commands found in stream
[2026-10-28 10:31:02,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:31:02,479.479 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-28 10:31:03,930.930 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:31:03,934.934 INFO    ] Checking for system updates...
[2026-10-28 10:31:03,974.974 INFO    ] 200
[2026-10-28 10:31:03,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:31:04,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:31:04,039.039 INFO    ] No update needed
[2026-10-28 10:31:04,041.041 INFO    ] Checking for camera pi updates...
[2026-10-28 10:31:04,074.074 INFO    ] 200
[2026-10-28 10:31:04,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:31:04,117.117 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:31:04,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:31:04,202.202 INFO    ] No camera update needed
[2026-10-28 10:31:04,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:31:04,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:31:04,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:31:04,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:31:06,259.259 INFO    ] ================================================
[2026-10-28 10:31:06,275.275 INFO    ] Launching Daemon at Wed Oct 28 10:31:06 IST 2026
[2026-10-28 10:31:06,286.286 INFO    ] ================================================
[2026-10-28 10:31:06,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:31:06
[2026-10-28 10:31:07,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:31:07,686.686 INFO    ] Initializing speech engine...
[2026-10-28 10:31:07,700.700 INFO    ] 2026-10-28 10:31:07
[2026-10-28 10:31:07,965.965 INFO    ] 2026-10-28 10:31:07
[2026-10-28 10:31:07,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:31:08,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:31:08,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:31:08,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:31:08,530.530 INFO    ] time= 28/10/2026 10:31:08
[2026-10-28 10:31:08,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:31:08,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:31:08,678.678 INFO    ] No existing commands found in stream
[2026-10-28 10:31:13,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:31:13,696.696 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-28 10:31:15,896.896 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:31:15,899.899 INFO    ] Checking for system updates...
[2026-10-28 10:31:15,952.952 INFO    ] 200
[2026-10-28 10:31:15,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:31:16,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:31:16,015.015 INFO    ] No update needed
[2026-10-28 10:31:16,018.018 INFO    ] Checking for camera pi updates...
[2026-10-28 10:31:16,051.051 INFO    ] 200
[2026-10-28 10:31:16,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:31:16,095.095 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:31:16,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:31:16,175.175 INFO    ] No camera update needed
[2026-10-28 10:31:16,178.178 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:31:16,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:31:16,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:31:16,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:31:18,230.230 INFO    ] ================================================
[2026-10-28 10:31:18,246.246 INFO    ] Launching Daemon at Wed Oct 28 10:31:18 IST 2026
[2026-10-28 10:31:18,257.257 INFO    ] ================================================
[2026-10-28 10:31:18,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:31:18
[2026-10-28 10:31:19,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:31:19,900.900 INFO    ] Initializing speech engine...
[2026-10-28 10:31:19,910.910 INFO    ] 2026-10-28 10:31:19
[2026-10-28 10:31:20,186.186 INFO    ] 2026-10-28 10:31:20
[2026-10-28 10:31:20,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:31:20,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:31:20,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:31:20,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:31:20,748.748 INFO    ] time= 28/10/2026 10:31:20
[2026-10-28 10:31:20,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:31:20,776.776 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:31:20,907.907 INFO    ] No existing commands found in stream
[2026-10-28 10:31:25,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:31:25,952.952 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-28 10:31:28,779.779 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:31:28,782.782 INFO    ] Checking for system updates...
[2026-10-28 10:31:28,818.818 INFO    ] 200
[2026-10-28 10:31:28,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:31:28,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:31:28,877.877 INFO    ] No update needed
[2026-10-28 10:31:28,880.880 INFO    ] Checking for camera pi updates...
[2026-10-28 10:31:28,917.917 INFO    ] 200
[2026-10-28 10:31:28,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:31:28,960.960 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:31:29,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:31:29,065.065 INFO    ] No camera update needed
[2026-10-28 10:31:29,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:31:29,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:31:29,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:31:29,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:31:31,121.121 INFO    ] ================================================
[2026-10-28 10:31:31,136.136 INFO    ] Launching Daemon at Wed Oct 28 10:31:31 IST 2026
[2026-10-28 10:31:31,146.146 INFO    ] ================================================
[2026-10-28 10:31:31,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:31:31
[2026-10-28 10:31:32,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:31:32,759.759 INFO    ] Initializing speech engine...
[2026-10-28 10:31:32,773.773 INFO    ] 2026-10-28 10:31:32
[2026-10-28 10:31:33,057.057 INFO    ] 2026-10-28 10:31:33
[2026-10-28 10:31:33,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:31:33,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:31:33,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:31:33,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:31:33,608.608 INFO    ] time= 28/10/2026 10:31:33
[2026-10-28 10:31:33,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:31:33,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:31:33,845.845 INFO    ] No existing commands found in stream
[2026-10-28 10:31:38,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:31:38,865.865 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-28 10:31:41,810.810 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:31:41,813.813 INFO    ] Checking for system updates...
[2026-10-28 10:31:41,854.854 INFO    ] 200
[2026-10-28 10:31:41,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:31:41,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:31:41,918.918 INFO    ] No update needed
[2026-10-28 10:31:41,920.920 INFO    ] Checking for camera pi updates...
[2026-10-28 10:31:41,958.958 INFO    ] 200
[2026-10-28 10:31:41,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:31:42,001.001 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:31:42,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:31:42,080.080 INFO    ] No camera update needed
[2026-10-28 10:31:42,083.083 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:31:42,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:31:42,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:31:42,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:31:44,140.140 INFO    ] ================================================
[2026-10-28 10:31:44,155.155 INFO    ] Launching Daemon at Wed Oct 28 10:31:44 IST 2026
[2026-10-28 10:31:44,166.166 INFO    ] ================================================
[2026-10-28 10:31:44,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:31:44
[2026-10-28 10:31:45,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:31:45,620.620 INFO    ] Initializing speech engine...
[2026-10-28 10:31:45,629.629 INFO    ] 2026-10-28 10:31:45
[2026-10-28 10:31:45,891.891 INFO    ] 2026-10-28 10:31:45
[2026-10-28 10:31:45,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:31:46,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:31:46,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:31:46,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:31:46,477.477 INFO    ] time= 28/10/2026 10:31:46
[2026-10-28 10:31:46,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:31:46,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:31:46,609.609 INFO    ] No existing commands found in stream
[2026-10-28 10:31:51,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:31:51,642.642 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-28 10:31:56,091.091 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:31:56,095.095 INFO    ] Checking for system updates...
[2026-10-28 10:31:56,143.143 INFO    ] 200
[2026-10-28 10:31:56,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:31:56,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:31:56,208.208 INFO    ] No update needed
[2026-10-28 10:31:56,210.210 INFO    ] Checking for camera pi updates...
[2026-10-28 10:31:56,248.248 INFO    ] 200
[2026-10-28 10:31:56,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:31:56,297.297 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:31:56,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:31:56,402.402 INFO    ] No camera update needed
[2026-10-28 10:31:56,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:31:56,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:31:56,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:31:56,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:31:58,459.459 INFO    ] ================================================
[2026-10-28 10:31:58,475.475 INFO    ] Launching Daemon at Wed Oct 28 10:31:58 IST 2026
[2026-10-28 10:31:58,486.486 INFO    ] ================================================
[2026-10-28 10:31:59,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:31:59
[2026-10-28 10:31:59,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:32:00,107.107 INFO    ] Initializing speech engine...
[2026-10-28 10:32:00,116.116 INFO    ] 2026-10-28 10:32:00
[2026-10-28 10:32:00,391.391 INFO    ] 2026-10-28 10:32:00
[2026-10-28 10:32:00,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:32:00,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:32:00,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:32:00,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:32:00,955.955 INFO    ] time= 28/10/2026 10:32:00
[2026-10-28 10:32:00,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:32:01,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:32:01,145.145 INFO    ] No existing commands found in stream
[2026-10-28 10:32:06,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:32:06,179.179 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-28 10:32:07,438.438 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:32:07,442.442 INFO    ] Checking for system updates...
[2026-10-28 10:32:07,479.479 INFO    ] 200
[2026-10-28 10:32:07,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:32:07,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:32:07,545.545 INFO    ] No update needed
[2026-10-28 10:32:07,547.547 INFO    ] Checking for camera pi updates...
[2026-10-28 10:32:07,584.584 INFO    ] 200
[2026-10-28 10:32:07,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:32:07,627.627 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:32:07,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:32:07,711.711 INFO    ] No camera update needed
[2026-10-28 10:32:07,713.713 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:32:07,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:32:07,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:32:07,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:32:09,766.766 INFO    ] ================================================
[2026-10-28 10:32:09,781.781 INFO    ] Launching Daemon at Wed Oct 28 10:32:09 IST 2026
[2026-10-28 10:32:09,792.792 INFO    ] ================================================
[2026-10-28 10:32:10,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:32:10
[2026-10-28 10:32:10,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:32:11,219.219 INFO    ] Initializing speech engine...
[2026-10-28 10:32:11,238.238 INFO    ] 2026-10-28 10:32:11
[2026-10-28 10:32:11,503.503 INFO    ] 2026-10-28 10:32:11
[2026-10-28 10:32:11,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:32:11,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:32:11,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:32:12,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:32:12,123.123 INFO    ] time= 28/10/2026 10:32:12
[2026-10-28 10:32:12,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:32:12,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:32:12,276.276 INFO    ] No existing commands found in stream
[2026-10-28 10:32:17,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:32:17,306.306 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 10:32:17,975.975 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:32:17,978.978 INFO    ] Checking for system updates...
[2026-10-28 10:32:18,016.016 INFO    ] 200
[2026-10-28 10:32:18,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:32:18,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:32:18,078.078 INFO    ] No update needed
[2026-10-28 10:32:18,081.081 INFO    ] Checking for camera pi updates...
[2026-10-28 10:32:18,114.114 INFO    ] 200
[2026-10-28 10:32:18,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:32:18,156.156 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:32:18,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:32:18,244.244 INFO    ] No camera update needed
[2026-10-28 10:32:18,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:32:18,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:32:18,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:32:18,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:32:20,300.300 INFO    ] ================================================
[2026-10-28 10:32:20,322.322 INFO    ] Launching Daemon at Wed Oct 28 10:32:20 IST 2026
[2026-10-28 10:32:20,333.333 INFO    ] ================================================
[2026-10-28 10:32:20,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:32:20
[2026-10-28 10:32:21,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:32:21,853.853 INFO    ] Initializing speech engine...
[2026-10-28 10:32:21,862.862 INFO    ] 2026-10-28 10:32:21
[2026-10-28 10:32:22,130.130 INFO    ] 2026-10-28 10:32:22
[2026-10-28 10:32:22,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:32:22,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:32:22,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:32:22,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:32:22,696.696 INFO    ] time= 28/10/2026 10:32:22
[2026-10-28 10:32:22,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:32:22,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:32:22,883.883 INFO    ] No existing commands found in stream
[2026-10-28 10:32:27,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:32:27,912.912 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 10:32:29,732.732 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:32:29,735.735 INFO    ] Checking for system updates...
[2026-10-28 10:32:29,775.775 INFO    ] 200
[2026-10-28 10:32:29,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:32:29,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:32:29,844.844 INFO    ] No update needed
[2026-10-28 10:32:29,847.847 INFO    ] Checking for camera pi updates...
[2026-10-28 10:32:29,885.885 INFO    ] 200
[2026-10-28 10:32:29,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:32:29,935.935 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:32:30,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:32:30,024.024 INFO    ] No camera update needed
[2026-10-28 10:32:30,027.027 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:32:30,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:32:30,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:32:30,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:32:32,084.084 INFO    ] ================================================
[2026-10-28 10:32:32,101.101 INFO    ] Launching Daemon at Wed Oct 28 10:32:32 IST 2026
[2026-10-28 10:32:32,113.113 INFO    ] ================================================
[2026-10-28 10:32:32,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:32:32
[2026-10-28 10:32:33,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:32:33,680.680 INFO    ] Initializing speech engine...
[2026-10-28 10:32:33,691.691 INFO    ] 2026-10-28 10:32:33
[2026-10-28 10:32:33,974.974 INFO    ] 2026-10-28 10:32:33
[2026-10-28 10:32:34,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:32:34,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:32:34,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:32:34,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:32:34,595.595 INFO    ] time= 28/10/2026 10:32:34
[2026-10-28 10:32:34,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:32:34,646.646 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:32:34,782.782 INFO    ] No existing commands found in stream
[2026-10-28 10:32:39,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:32:39,808.808 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-28 10:32:42,190.190 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:32:42,193.193 INFO    ] Checking for system updates...
[2026-10-28 10:32:42,235.235 INFO    ] 200
[2026-10-28 10:32:42,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:32:42,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:32:42,300.300 INFO    ] No update needed
[2026-10-28 10:32:42,302.302 INFO    ] Checking for camera pi updates...
[2026-10-28 10:32:42,340.340 INFO    ] 200
[2026-10-28 10:32:42,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:32:42,389.389 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:32:42,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:32:42,491.491 INFO    ] No camera update needed
[2026-10-28 10:32:42,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:32:42,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:32:42,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:32:42,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:32:44,547.547 INFO    ] ================================================
[2026-10-28 10:32:44,563.563 INFO    ] Launching Daemon at Wed Oct 28 10:32:44 IST 2026
[2026-10-28 10:32:44,574.574 INFO    ] ================================================
[2026-10-28 10:32:45,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:32:45
[2026-10-28 10:32:45,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:32:46,265.265 INFO    ] Initializing speech engine...
[2026-10-28 10:32:46,279.279 INFO    ] 2026-10-28 10:32:46
[2026-10-28 10:32:46,558.558 INFO    ] 2026-10-28 10:32:46
[2026-10-28 10:32:46,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:32:46,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:32:46,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:32:47,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:32:47,168.168 INFO    ] time= 28/10/2026 10:32:47
[2026-10-28 10:32:47,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:32:47,201.201 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:32:47,349.349 INFO    ] No existing commands found in stream
[2026-10-28 10:32:52,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:32:52,379.379 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-28 10:32:53,899.899 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:32:53,901.901 INFO    ] Checking for system updates...
[2026-10-28 10:32:53,937.937 INFO    ] 200
[2026-10-28 10:32:53,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:32:54,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:32:54,008.008 INFO    ] No update needed
[2026-10-28 10:32:54,010.010 INFO    ] Checking for camera pi updates...
[2026-10-28 10:32:54,048.048 INFO    ] 200
[2026-10-28 10:32:54,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:32:54,090.090 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:32:54,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:32:54,197.197 INFO    ] No camera update needed
[2026-10-28 10:32:54,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:32:54,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:32:54,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:32:54,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:32:56,251.251 INFO    ] ================================================
[2026-10-28 10:32:56,267.267 INFO    ] Launching Daemon at Wed Oct 28 10:32:56 IST 2026
[2026-10-28 10:32:56,279.279 INFO    ] ================================================
[2026-10-28 10:32:56,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:32:56
[2026-10-28 10:32:57,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:32:57,929.929 INFO    ] Initializing speech engine...
[2026-10-28 10:32:57,937.937 INFO    ] 2026-10-28 10:32:57
[2026-10-28 10:32:58,227.227 INFO    ] 2026-10-28 10:32:58
[2026-10-28 10:32:58,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:32:58,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:32:58,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:32:58,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:32:58,779.779 INFO    ] time= 28/10/2026 10:32:58
[2026-10-28 10:32:58,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:32:58,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:32:59,006.006 INFO    ] No existing commands found in stream
[2026-10-28 10:33:04,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:33:04,031.031 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-28 10:33:06,094.094 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:33:06,097.097 INFO    ] Checking for system updates...
[2026-10-28 10:33:06,139.139 INFO    ] 200
[2026-10-28 10:33:06,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:33:06,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:33:06,204.204 INFO    ] No update needed
[2026-10-28 10:33:06,207.207 INFO    ] Checking for camera pi updates...
[2026-10-28 10:33:06,245.245 INFO    ] 200
[2026-10-28 10:33:06,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:33:06,295.295 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:33:06,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:33:06,407.407 INFO    ] No camera update needed
[2026-10-28 10:33:06,416.416 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:33:06,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:33:06,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:33:06,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:33:08,475.475 INFO    ] ================================================
[2026-10-28 10:33:08,491.491 INFO    ] Launching Daemon at Wed Oct 28 10:33:08 IST 2026
[2026-10-28 10:33:08,502.502 INFO    ] ================================================
[2026-10-28 10:33:09,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:33:09
[2026-10-28 10:33:09,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:33:10,094.094 INFO    ] Initializing speech engine...
[2026-10-28 10:33:10,101.101 INFO    ] 2026-10-28 10:33:10
[2026-10-28 10:33:10,393.393 INFO    ] 2026-10-28 10:33:10
[2026-10-28 10:33:10,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:33:10,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:33:10,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:33:10,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:33:10,944.944 INFO    ] time= 28/10/2026 10:33:10
[2026-10-28 10:33:10,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:33:10,982.982 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:33:11,158.158 INFO    ] No existing commands found in stream
[2026-10-28 10:33:16,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:33:16,193.193 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-28 10:33:17,930.930 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:33:17,933.933 INFO    ] Checking for system updates...
[2026-10-28 10:33:17,973.973 INFO    ] 200
[2026-10-28 10:33:17,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:33:18,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:33:18,034.034 INFO    ] No update needed
[2026-10-28 10:33:18,037.037 INFO    ] Checking for camera pi updates...
[2026-10-28 10:33:18,078.078 INFO    ] 200
[2026-10-28 10:33:18,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:33:18,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:33:18,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:33:18,212.212 INFO    ] No camera update needed
[2026-10-28 10:33:18,215.215 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:33:18,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:33:18,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:33:18,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:33:20,271.271 INFO    ] ================================================
[2026-10-28 10:33:20,286.286 INFO    ] Launching Daemon at Wed Oct 28 10:33:20 IST 2026
[2026-10-28 10:33:20,297.297 INFO    ] ================================================
[2026-10-28 10:33:20,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:33:20
[2026-10-28 10:33:21,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:33:21,790.790 INFO    ] Initializing speech engine...
[2026-10-28 10:33:21,800.800 INFO    ] 2026-10-28 10:33:21
[2026-10-28 10:33:22,052.052 INFO    ] 2026-10-28 10:33:22
[2026-10-28 10:33:22,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:33:22,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:33:22,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:33:22,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:33:22,624.624 INFO    ] time= 28/10/2026 10:33:22
[2026-10-28 10:33:22,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:33:22,673.673 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:33:22,823.823 INFO    ] No existing commands found in stream
[2026-10-28 10:33:27,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:33:27,856.856 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-28 10:33:31,712.712 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:33:31,715.715 INFO    ] Checking for system updates...
[2026-10-28 10:33:31,755.755 INFO    ] 200
[2026-10-28 10:33:31,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:33:31,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:33:31,822.822 INFO    ] No update needed
[2026-10-28 10:33:31,825.825 INFO    ] Checking for camera pi updates...
[2026-10-28 10:33:31,860.860 INFO    ] 200
[2026-10-28 10:33:31,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:33:31,909.909 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:33:31,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:33:31,999.999 INFO    ] No camera update needed
[2026-10-28 10:33:32,002.002 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:33:32,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:33:32,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:33:32,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:33:34,058.058 INFO    ] ================================================
[2026-10-28 10:33:34,074.074 INFO    ] Launching Daemon at Wed Oct 28 10:33:34 IST 2026
[2026-10-28 10:33:34,084.084 INFO    ] ================================================
[2026-10-28 10:33:34,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:33:34
[2026-10-28 10:33:35,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:33:35,685.685 INFO    ] Initializing speech engine...
[2026-10-28 10:33:35,702.702 INFO    ] 2026-10-28 10:33:35
[2026-10-28 10:33:35,954.954 INFO    ] 2026-10-28 10:33:35
[2026-10-28 10:33:35,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:33:36,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:33:36,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:33:36,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:33:36,568.568 INFO    ] time= 28/10/2026 10:33:36
[2026-10-28 10:33:36,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:33:36,590.590 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:33:36,735.735 INFO    ] No existing commands found in stream
[2026-10-28 10:33:41,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:33:41,765.765 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-28 10:33:44,132.132 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:33:44,134.134 INFO    ] Checking for system updates...
[2026-10-28 10:33:44,170.170 INFO    ] 200
[2026-10-28 10:33:44,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:33:44,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:33:44,227.227 INFO    ] No update needed
[2026-10-28 10:33:44,229.229 INFO    ] Checking for camera pi updates...
[2026-10-28 10:33:44,262.262 INFO    ] 200
[2026-10-28 10:33:44,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:33:44,309.309 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:33:44,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:33:44,409.409 INFO    ] No camera update needed
[2026-10-28 10:33:44,412.412 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:33:44,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:33:44,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:33:44,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:33:46,465.465 INFO    ] ================================================
[2026-10-28 10:33:46,479.479 INFO    ] Launching Daemon at Wed Oct 28 10:33:46 IST 2026
[2026-10-28 10:33:46,490.490 INFO    ] ================================================
[2026-10-28 10:33:47,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:33:47
[2026-10-28 10:33:47,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:33:47,956.956 INFO    ] Initializing speech engine...
[2026-10-28 10:33:47,965.965 INFO    ] 2026-10-28 10:33:47
[2026-10-28 10:33:48,224.224 INFO    ] 2026-10-28 10:33:48
[2026-10-28 10:33:48,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:33:48,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:33:48,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:33:48,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:33:48,769.769 INFO    ] time= 28/10/2026 10:33:48
[2026-10-28 10:33:48,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:33:48,804.804 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:33:48,929.929 INFO    ] No existing commands found in stream
[2026-10-28 10:33:53,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:33:53,956.956 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-28 10:33:58,546.546 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:33:58,549.549 INFO    ] Checking for system updates...
[2026-10-28 10:33:58,585.585 INFO    ] 200
[2026-10-28 10:33:58,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:33:58,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:33:58,644.644 INFO    ] No update needed
[2026-10-28 10:33:58,646.646 INFO    ] Checking for camera pi updates...
[2026-10-28 10:33:58,680.680 INFO    ] 200
[2026-10-28 10:33:58,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:33:58,728.728 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:33:58,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:33:58,836.836 INFO    ] No camera update needed
[2026-10-28 10:33:58,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:33:58,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:33:58,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:33:58,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:34:00,891.891 INFO    ] ================================================
[2026-10-28 10:34:00,906.906 INFO    ] Launching Daemon at Wed Oct 28 10:34:00 IST 2026
[2026-10-28 10:34:00,916.916 INFO    ] ================================================
[2026-10-28 10:34:01,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:34:01
[2026-10-28 10:34:02,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:34:02,547.547 INFO    ] Initializing speech engine...
[2026-10-28 10:34:02,571.571 INFO    ] 2026-10-28 10:34:02
[2026-10-28 10:34:02,873.873 INFO    ] 2026-10-28 10:34:02
[2026-10-28 10:34:02,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:34:03,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:34:03,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:34:03,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:34:03,515.515 INFO    ] time= 28/10/2026 10:34:03
[2026-10-28 10:34:03,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:34:03,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:34:03,660.660 INFO    ] No existing commands found in stream
[2026-10-28 10:34:08,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:34:08,688.688 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-28 10:34:10,585.585 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:34:10,588.588 INFO    ] Checking for system updates...
[2026-10-28 10:34:10,626.626 INFO    ] 200
[2026-10-28 10:34:10,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:34:10,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:34:10,685.685 INFO    ] No update needed
[2026-10-28 10:34:10,687.687 INFO    ] Checking for camera pi updates...
[2026-10-28 10:34:10,722.722 INFO    ] 200
[2026-10-28 10:34:10,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:34:10,766.766 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:34:10,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:34:10,871.871 INFO    ] No camera update needed
[2026-10-28 10:34:10,874.874 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:34:10,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:34:10,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:34:10,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:34:12,931.931 INFO    ] ================================================
[2026-10-28 10:34:12,946.946 INFO    ] Launching Daemon at Wed Oct 28 10:34:12 IST 2026
[2026-10-28 10:34:12,957.957 INFO    ] ================================================
[2026-10-28 10:34:13,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:34:13
[2026-10-28 10:34:14,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:34:14,433.433 INFO    ] Initializing speech engine...
[2026-10-28 10:34:14,443.443 INFO    ] 2026-10-28 10:34:14
[2026-10-28 10:34:14,691.691 INFO    ] 2026-10-28 10:34:14
[2026-10-28 10:34:14,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:34:14,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:34:14,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:34:15,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:34:15,247.247 INFO    ] time= 28/10/2026 10:34:15
[2026-10-28 10:34:15,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:34:15,287.287 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:34:15,410.410 INFO    ] No existing commands found in stream
[2026-10-28 10:34:20,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:34:20,442.442 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-28 10:34:24,050.050 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:34:24,053.053 INFO    ] Checking for system updates...
[2026-10-28 10:34:24,090.090 INFO    ] 200
[2026-10-28 10:34:24,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:34:24,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:34:24,149.149 INFO    ] No update needed
[2026-10-28 10:34:24,152.152 INFO    ] Checking for camera pi updates...
[2026-10-28 10:34:24,186.186 INFO    ] 200
[2026-10-28 10:34:24,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:34:24,232.232 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:34:24,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:34:24,315.315 INFO    ] No camera update needed
[2026-10-28 10:34:24,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:34:24,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:34:24,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:34:24,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:34:26,375.375 INFO    ] ================================================
[2026-10-28 10:34:26,390.390 INFO    ] Launching Daemon at Wed Oct 28 10:34:26 IST 2026
[2026-10-28 10:34:26,401.401 INFO    ] ================================================
[2026-10-28 10:34:26,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:34:26
[2026-10-28 10:34:27,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:34:27,863.863 INFO    ] Initializing speech engine...
[2026-10-28 10:34:27,870.870 INFO    ] 2026-10-28 10:34:27
[2026-10-28 10:34:28,130.130 INFO    ] 2026-10-28 10:34:28
[2026-10-28 10:34:28,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:34:28,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:34:28,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:34:28,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:34:28,674.674 INFO    ] time= 28/10/2026 10:34:28
[2026-10-28 10:34:28,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:34:28,701.701 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:34:28,853.853 INFO    ] No existing commands found in stream
[2026-10-28 10:34:33,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:34:33,881.881 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-28 10:34:35,373.373 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:34:35,376.376 INFO    ] Checking for system updates...
[2026-10-28 10:34:35,411.411 INFO    ] 200
[2026-10-28 10:34:35,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:34:35,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:34:35,469.469 INFO    ] No update needed
[2026-10-28 10:34:35,472.472 INFO    ] Checking for camera pi updates...
[2026-10-28 10:34:35,508.508 INFO    ] 200
[2026-10-28 10:34:35,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:34:35,551.551 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:34:35,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:34:35,636.636 INFO    ] No camera update needed
[2026-10-28 10:34:35,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:34:35,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:34:35,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:34:35,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:34:37,694.694 INFO    ] ================================================
[2026-10-28 10:34:37,709.709 INFO    ] Launching Daemon at Wed Oct 28 10:34:37 IST 2026
[2026-10-28 10:34:37,720.720 INFO    ] ================================================
[2026-10-28 10:34:38,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:34:38
[2026-10-28 10:34:38,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:34:39,166.166 INFO    ] Initializing speech engine...
[2026-10-28 10:34:39,171.171 INFO    ] 2026-10-28 10:34:39
[2026-10-28 10:34:39,432.432 INFO    ] 2026-10-28 10:34:39
[2026-10-28 10:34:39,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:34:39,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:34:39,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:34:40,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:34:40,045.045 INFO    ] time= 28/10/2026 10:34:40
[2026-10-28 10:34:40,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:34:40,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:34:40,194.194 INFO    ] No existing commands found in stream
[2026-10-28 10:34:45,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:34:45,222.222 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-28 10:34:48,144.144 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:34:48,147.147 INFO    ] Checking for system updates...
[2026-10-28 10:34:48,182.182 INFO    ] 200
[2026-10-28 10:34:48,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:34:48,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:34:48,240.240 INFO    ] No update needed
[2026-10-28 10:34:48,242.242 INFO    ] Checking for camera pi updates...
[2026-10-28 10:34:48,278.278 INFO    ] 200
[2026-10-28 10:34:48,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:34:48,325.325 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:34:48,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:34:48,400.400 INFO    ] No camera update needed
[2026-10-28 10:34:48,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:34:48,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:34:48,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:34:48,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:34:50,456.456 INFO    ] ================================================
[2026-10-28 10:34:50,472.472 INFO    ] Launching Daemon at Wed Oct 28 10:34:50 IST 2026
[2026-10-28 10:34:50,482.482 INFO    ] ================================================
[2026-10-28 10:34:51,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:34:51
[2026-10-28 10:34:51,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:34:52,074.074 INFO    ] Initializing speech engine...
[2026-10-28 10:34:52,081.081 INFO    ] 2026-10-28 10:34:52
[2026-10-28 10:34:52,390.390 INFO    ] 2026-10-28 10:34:52
[2026-10-28 10:34:52,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:34:52,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:34:52,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:34:52,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:34:53,026.026 INFO    ] time= 28/10/2026 10:34:52
[2026-10-28 10:34:53,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:34:53,136.136 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:34:53,287.287 INFO    ] No existing commands found in stream
[2026-10-28 10:34:58,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:34:58,317.317 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-28 10:35:02,473.473 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:35:02,477.477 INFO    ] Checking for system updates...
[2026-10-28 10:35:02,524.524 INFO    ] 200
[2026-10-28 10:35:02,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:35:02,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:35:02,592.592 INFO    ] No update needed
[2026-10-28 10:35:02,596.596 INFO    ] Checking for camera pi updates...
[2026-10-28 10:35:02,639.639 INFO    ] 200
[2026-10-28 10:35:02,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:35:02,701.701 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:35:02,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:35:02,835.835 INFO    ] No camera update needed
[2026-10-28 10:35:02,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:35:02,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:35:02,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:35:02,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:35:04,899.899 INFO    ] ================================================
[2026-10-28 10:35:04,915.915 INFO    ] Launching Daemon at Wed Oct 28 10:35:04 IST 2026
[2026-10-28 10:35:04,926.926 INFO    ] ================================================
[2026-10-28 10:35:05,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:35:05
[2026-10-28 10:35:06,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:35:06,459.459 INFO    ] Initializing speech engine...
[2026-10-28 10:35:06,467.467 INFO    ] 2026-10-28 10:35:06
[2026-10-28 10:35:06,741.741 INFO    ] 2026-10-28 10:35:06
[2026-10-28 10:35:06,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:35:07,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:35:07,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:35:07,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:35:07,428.428 INFO    ] time= 28/10/2026 10:35:07
[2026-10-28 10:35:07,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:35:07,522.522 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:35:07,891.891 INFO    ] No existing commands found in stream
[2026-10-28 10:35:12,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:35:12,909.909 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 10:35:14,385.385 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:35:14,388.388 INFO    ] Checking for system updates...
[2026-10-28 10:35:14,423.423 INFO    ] 200
[2026-10-28 10:35:14,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:35:14,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:35:14,482.482 INFO    ] No update needed
[2026-10-28 10:35:14,484.484 INFO    ] Checking for camera pi updates...
[2026-10-28 10:35:14,522.522 INFO    ] 200
[2026-10-28 10:35:14,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:35:14,565.565 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:35:14,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:35:14,750.750 INFO    ] No camera update needed
[2026-10-28 10:35:14,752.752 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:35:14,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:35:14,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:35:14,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:35:16,806.806 INFO    ] ================================================
[2026-10-28 10:35:16,821.821 INFO    ] Launching Daemon at Wed Oct 28 10:35:16 IST 2026
[2026-10-28 10:35:16,832.832 INFO    ] ================================================
[2026-10-28 10:35:17,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:35:17
[2026-10-28 10:35:18,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:35:18,318.318 INFO    ] Initializing speech engine...
[2026-10-28 10:35:18,328.328 INFO    ] 2026-10-28 10:35:18
[2026-10-28 10:35:18,591.591 INFO    ] 2026-10-28 10:35:18
[2026-10-28 10:35:18,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:35:18,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:35:18,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:35:19,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:35:19,139.139 INFO    ] time= 28/10/2026 10:35:19
[2026-10-28 10:35:19,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:35:19,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:35:19,290.290 INFO    ] No existing commands found in stream
[2026-10-28 10:35:24,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:35:24,308.308 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-28 10:35:27,652.652 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:35:27,655.655 INFO    ] Checking for system updates...
[2026-10-28 10:35:27,691.691 INFO    ] 200
[2026-10-28 10:35:27,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:35:27,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:35:27,757.757 INFO    ] No update needed
[2026-10-28 10:35:27,760.760 INFO    ] Checking for camera pi updates...
[2026-10-28 10:35:27,794.794 INFO    ] 200
[2026-10-28 10:35:27,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:35:27,838.838 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:35:27,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:35:27,926.926 INFO    ] No camera update needed
[2026-10-28 10:35:27,929.929 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:35:27,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:35:27,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:35:27,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:35:29,986.986 INFO    ] ================================================
[2026-10-28 10:35:30,002.002 INFO    ] Launching Daemon at Wed Oct 28 10:35:29 IST 2026
[2026-10-28 10:35:30,013.013 INFO    ] ================================================
[2026-10-28 10:35:30,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:35:30
[2026-10-28 10:35:31,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:35:31,642.642 INFO    ] Initializing speech engine...
[2026-10-28 10:35:31,652.652 INFO    ] 2026-10-28 10:35:31
[2026-10-28 10:35:31,937.937 INFO    ] 2026-10-28 10:35:31
[2026-10-28 10:35:32,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:35:32,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:35:32,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:35:32,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:35:32,526.526 INFO    ] time= 28/10/2026 10:35:32
[2026-10-28 10:35:32,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:35:32,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:35:32,773.773 INFO    ] No existing commands found in stream
[2026-10-28 10:35:37,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:35:37,805.805 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 10:35:41,651.651 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:35:41,655.655 INFO    ] Checking for system updates...
[2026-10-28 10:35:41,691.691 INFO    ] 200
[2026-10-28 10:35:41,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:35:41,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:35:41,751.751 INFO    ] No update needed
[2026-10-28 10:35:41,754.754 INFO    ] Checking for camera pi updates...
[2026-10-28 10:35:41,788.788 INFO    ] 200
[2026-10-28 10:35:41,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:35:41,831.831 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:35:41,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:35:41,935.935 INFO    ] No camera update needed
[2026-10-28 10:35:41,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:35:41,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:35:41,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:35:41,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:35:43,990.990 INFO    ] ================================================
[2026-10-28 10:35:44,005.005 INFO    ] Launching Daemon at Wed Oct 28 10:35:43 IST 2026
[2026-10-28 10:35:44,015.015 INFO    ] ================================================
[2026-10-28 10:35:44,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:35:44
[2026-10-28 10:35:45,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:35:45,435.435 INFO    ] Initializing speech engine...
[2026-10-28 10:35:45,446.446 INFO    ] 2026-10-28 10:35:45
[2026-10-28 10:35:45,707.707 INFO    ] 2026-10-28 10:35:45
[2026-10-28 10:35:45,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:35:46,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:35:46,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:35:46,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:35:46,297.297 INFO    ] time= 28/10/2026 10:35:46
[2026-10-28 10:35:46,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:35:46,323.323 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:35:46,453.453 INFO    ] No existing commands found in stream
[2026-10-28 10:35:51,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:35:51,482.482 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-28 10:35:55,052.052 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:35:55,055.055 INFO    ] Checking for system updates...
[2026-10-28 10:35:55,095.095 INFO    ] 200
[2026-10-28 10:35:55,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:35:55,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:35:55,152.152 INFO    ] No update needed
[2026-10-28 10:35:55,154.154 INFO    ] Checking for camera pi updates...
[2026-10-28 10:35:55,188.188 INFO    ] 200
[2026-10-28 10:35:55,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:35:55,233.233 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:35:55,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:35:55,327.327 INFO    ] No camera update needed
[2026-10-28 10:35:55,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:35:55,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:35:55,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:35:55,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:35:57,385.385 INFO    ] ================================================
[2026-10-28 10:35:57,400.400 INFO    ] Launching Daemon at Wed Oct 28 10:35:57 IST 2026
[2026-10-28 10:35:57,411.411 INFO    ] ================================================
[2026-10-28 10:35:57,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:35:57
[2026-10-28 10:35:58,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:35:58,864.864 INFO    ] Initializing speech engine...
[2026-10-28 10:35:58,869.869 INFO    ] 2026-10-28 10:35:58
[2026-10-28 10:35:59,131.131 INFO    ] 2026-10-28 10:35:59
[2026-10-28 10:35:59,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:35:59,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:35:59,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:35:59,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:35:59,971.971 INFO    ] time= 28/10/2026 10:35:59
[2026-10-28 10:36:00,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:36:00,067.067 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:36:00,235.235 INFO    ] No existing commands found in stream
[2026-10-28 10:36:05,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:36:05,253.253 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-28 10:36:08,687.687 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:36:08,689.689 INFO    ] Checking for system updates...
[2026-10-28 10:36:08,726.726 INFO    ] 200
[2026-10-28 10:36:08,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:36:08,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:36:08,783.783 INFO    ] No update needed
[2026-10-28 10:36:08,786.786 INFO    ] Checking for camera pi updates...
[2026-10-28 10:36:08,819.819 INFO    ] 200
[2026-10-28 10:36:08,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:36:08,867.867 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:36:08,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:36:08,954.954 INFO    ] No camera update needed
[2026-10-28 10:36:08,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:36:08,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:36:08,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:36:08,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:36:11,011.011 INFO    ] ================================================
[2026-10-28 10:36:11,026.026 INFO    ] Launching Daemon at Wed Oct 28 10:36:11 IST 2026
[2026-10-28 10:36:11,036.036 INFO    ] ================================================
[2026-10-28 10:36:11,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:36:11
[2026-10-28 10:36:12,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:36:12,652.652 INFO    ] Initializing speech engine...
[2026-10-28 10:36:12,661.661 INFO    ] 2026-10-28 10:36:12
[2026-10-28 10:36:12,949.949 INFO    ] 2026-10-28 10:36:12
[2026-10-28 10:36:12,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:36:13,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:36:13,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:36:13,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:36:13,521.521 INFO    ] time= 28/10/2026 10:36:13
[2026-10-28 10:36:13,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:36:13,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:36:13,657.657 INFO    ] No existing commands found in stream
[2026-10-28 10:36:18,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:36:18,686.686 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-28 10:36:21,291.291 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:36:21,294.294 INFO    ] Checking for system updates...
[2026-10-28 10:36:21,331.331 INFO    ] 200
[2026-10-28 10:36:21,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:36:21,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:36:21,398.398 INFO    ] No update needed
[2026-10-28 10:36:21,400.400 INFO    ] Checking for camera pi updates...
[2026-10-28 10:36:21,436.436 INFO    ] 200
[2026-10-28 10:36:21,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:36:21,479.479 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:36:21,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:36:21,610.610 INFO    ] No camera update needed
[2026-10-28 10:36:21,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:36:21,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:36:21,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:36:21,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:36:23,670.670 INFO    ] ================================================
[2026-10-28 10:36:23,685.685 INFO    ] Launching Daemon at Wed Oct 28 10:36:23 IST 2026
[2026-10-28 10:36:23,696.696 INFO    ] ================================================
[2026-10-28 10:36:24,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:36:24
[2026-10-28 10:36:24,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:36:25,154.154 INFO    ] Initializing speech engine...
[2026-10-28 10:36:25,163.163 INFO    ] 2026-10-28 10:36:25
[2026-10-28 10:36:25,408.408 INFO    ] 2026-10-28 10:36:25
[2026-10-28 10:36:25,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:36:25,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:36:25,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:36:25,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:36:25,961.961 INFO    ] time= 28/10/2026 10:36:25
[2026-10-28 10:36:25,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:36:25,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:36:26,094.094 INFO    ] No existing commands found in stream
[2026-10-28 10:36:31,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:36:31,122.122 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 10:36:34,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:36:34,896.896 INFO    ] Checking for system updates...
[2026-10-28 10:36:34,932.932 INFO    ] 200
[2026-10-28 10:36:34,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:36:34,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:36:34,990.990 INFO    ] No update needed
[2026-10-28 10:36:34,992.992 INFO    ] Checking for camera pi updates...
[2026-10-28 10:36:35,029.029 INFO    ] 200
[2026-10-28 10:36:35,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:36:35,071.071 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:36:35,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:36:35,175.175 INFO    ] No camera update needed
[2026-10-28 10:36:35,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:36:35,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:36:35,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:36:35,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:36:37,231.231 INFO    ] ================================================
[2026-10-28 10:36:37,246.246 INFO    ] Launching Daemon at Wed Oct 28 10:36:37 IST 2026
[2026-10-28 10:36:37,256.256 INFO    ] ================================================
[2026-10-28 10:36:37,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:36:37
[2026-10-28 10:36:38,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:36:38,680.680 INFO    ] Initializing speech engine...
[2026-10-28 10:36:38,696.696 INFO    ] 2026-10-28 10:36:38
[2026-10-28 10:36:38,977.977 INFO    ] 2026-10-28 10:36:38
[2026-10-28 10:36:39,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:36:39,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:36:39,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:36:39,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:36:39,465.465 INFO    ] time= 28/10/2026 10:36:39
[2026-10-28 10:36:39,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:36:39,590.590 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:36:39,768.768 INFO    ] No existing commands found in stream
[2026-10-28 10:36:44,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:36:44,795.795 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-28 10:36:45,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:36:45,773.773 INFO    ] Checking for system updates...
[2026-10-28 10:36:45,810.810 INFO    ] 200
[2026-10-28 10:36:45,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:36:45,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:36:45,866.866 INFO    ] No update needed
[2026-10-28 10:36:45,869.869 INFO    ] Checking for camera pi updates...
[2026-10-28 10:36:45,903.903 INFO    ] 200
[2026-10-28 10:36:45,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:36:45,945.945 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:36:46,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:36:46,048.048 INFO    ] No camera update needed
[2026-10-28 10:36:46,050.050 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:36:46,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:36:46,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:36:46,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:36:48,108.108 INFO    ] ================================================
[2026-10-28 10:36:48,123.123 INFO    ] Launching Daemon at Wed Oct 28 10:36:48 IST 2026
[2026-10-28 10:36:48,149.149 INFO    ] ================================================
[2026-10-28 10:36:48,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:36:48
[2026-10-28 10:36:49,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:36:49,854.854 INFO    ] Initializing speech engine...
[2026-10-28 10:36:49,866.866 INFO    ] 2026-10-28 10:36:49
[2026-10-28 10:36:50,145.145 INFO    ] 2026-10-28 10:36:50
[2026-10-28 10:36:50,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:36:50,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:36:50,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:36:51,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:36:51,584.584 INFO    ] time= 28/10/2026 10:36:51
[2026-10-28 10:36:51,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:36:51,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:36:52,244.244 INFO    ] No existing commands found in stream
[2026-10-28 10:36:57,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:36:57,257.257 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-28 10:36:58,850.850 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:36:58,853.853 INFO    ] Checking for system updates...
[2026-10-28 10:36:58,889.889 INFO    ] 200
[2026-10-28 10:36:58,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:36:58,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:36:58,950.950 INFO    ] No update needed
[2026-10-28 10:36:58,952.952 INFO    ] Checking for camera pi updates...
[2026-10-28 10:36:58,986.986 INFO    ] 200
[2026-10-28 10:36:58,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:36:59,035.035 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:36:59,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:36:59,127.127 INFO    ] No camera update needed
[2026-10-28 10:36:59,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:36:59,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:36:59,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:36:59,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:37:01,182.182 INFO    ] ================================================
[2026-10-28 10:37:01,197.197 INFO    ] Launching Daemon at Wed Oct 28 10:37:01 IST 2026
[2026-10-28 10:37:01,207.207 INFO    ] ================================================
[2026-10-28 10:37:01,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:37:01
[2026-10-28 10:37:02,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:37:02,921.921 INFO    ] Initializing speech engine...
[2026-10-28 10:37:02,932.932 INFO    ] 2026-10-28 10:37:02
[2026-10-28 10:37:03,272.272 INFO    ] 2026-10-28 10:37:03
[2026-10-28 10:37:03,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:37:03,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:37:03,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:37:03,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:37:03,812.812 INFO    ] time= 28/10/2026 10:37:03
[2026-10-28 10:37:03,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:37:03,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:37:03,969.969 INFO    ] No existing commands found in stream
[2026-10-28 10:37:08,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:37:08,992.992 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 10:37:10,731.731 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:37:10,733.733 INFO    ] Checking for system updates...
[2026-10-28 10:37:10,774.774 INFO    ] 200
[2026-10-28 10:37:10,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:37:10,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:37:10,831.831 INFO    ] No update needed
[2026-10-28 10:37:10,833.833 INFO    ] Checking for camera pi updates...
[2026-10-28 10:37:10,871.871 INFO    ] 200
[2026-10-28 10:37:10,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:37:10,914.914 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:37:11,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:37:11,006.006 INFO    ] No camera update needed
[2026-10-28 10:37:11,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:37:11,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:37:11,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:37:11,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:37:13,067.067 INFO    ] ================================================
[2026-10-28 10:37:13,083.083 INFO    ] Launching Daemon at Wed Oct 28 10:37:13 IST 2026
[2026-10-28 10:37:13,094.094 INFO    ] ================================================
[2026-10-28 10:37:13,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:37:13
[2026-10-28 10:37:14,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:37:14,629.629 INFO    ] Initializing speech engine...
[2026-10-28 10:37:14,645.645 INFO    ] 2026-10-28 10:37:14
[2026-10-28 10:37:14,934.934 INFO    ] 2026-10-28 10:37:14
[2026-10-28 10:37:14,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:37:15,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:37:15,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:37:15,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:37:15,486.486 INFO    ] time= 28/10/2026 10:37:15
[2026-10-28 10:37:15,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:37:15,590.590 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:37:15,668.668 INFO    ] No existing commands found in stream
[2026-10-28 10:37:20,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:37:20,707.707 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 10:37:23,148.148 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:37:23,151.151 INFO    ] Checking for system updates...
[2026-10-28 10:37:23,187.187 INFO    ] 200
[2026-10-28 10:37:23,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:37:23,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:37:23,245.245 INFO    ] No update needed
[2026-10-28 10:37:23,248.248 INFO    ] Checking for camera pi updates...
[2026-10-28 10:37:23,285.285 INFO    ] 200
[2026-10-28 10:37:23,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:37:23,334.334 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:37:23,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:37:23,519.519 INFO    ] No camera update needed
[2026-10-28 10:37:23,521.521 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:37:23,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:37:23,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:37:23,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:37:25,574.574 INFO    ] ================================================
[2026-10-28 10:37:25,589.589 INFO    ] Launching Daemon at Wed Oct 28 10:37:25 IST 2026
[2026-10-28 10:37:25,601.601 INFO    ] ================================================
[2026-10-28 10:37:26,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:37:26
[2026-10-28 10:37:26,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:37:27,115.115 INFO    ] Initializing speech engine...
[2026-10-28 10:37:27,123.123 INFO    ] 2026-10-28 10:37:27
[2026-10-28 10:37:27,397.397 INFO    ] 2026-10-28 10:37:27
[2026-10-28 10:37:27,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:37:27,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:37:27,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:37:27,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:37:27,964.964 INFO    ] time= 28/10/2026 10:37:27
[2026-10-28 10:37:27,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:37:27,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:37:28,121.121 INFO    ] No existing commands found in stream
[2026-10-28 10:37:33,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:37:33,137.137 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-28 10:37:34,050.050 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:37:34,053.053 INFO    ] Checking for system updates...
[2026-10-28 10:37:34,093.093 INFO    ] 200
[2026-10-28 10:37:34,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:37:34,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:37:34,153.153 INFO    ] No update needed
[2026-10-28 10:37:34,156.156 INFO    ] Checking for camera pi updates...
[2026-10-28 10:37:34,190.190 INFO    ] 200
[2026-10-28 10:37:34,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:37:34,240.240 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:37:34,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:37:34,328.328 INFO    ] No camera update needed
[2026-10-28 10:37:34,330.330 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:37:34,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:37:34,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:37:34,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:37:36,384.384 INFO    ] ================================================
[2026-10-28 10:37:36,400.400 INFO    ] Launching Daemon at Wed Oct 28 10:37:36 IST 2026
[2026-10-28 10:37:36,411.411 INFO    ] ================================================
[2026-10-28 10:37:36,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:37:36
[2026-10-28 10:37:37,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:37:37,823.823 INFO    ] Initializing speech engine...
[2026-10-28 10:37:37,842.842 INFO    ] 2026-10-28 10:37:37
[2026-10-28 10:37:38,093.093 INFO    ] 2026-10-28 10:37:38
[2026-10-28 10:37:38,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:37:38,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:37:38,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:37:38,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:37:38,662.662 INFO    ] time= 28/10/2026 10:37:38
[2026-10-28 10:37:38,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:37:38,692.692 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:37:38,819.819 INFO    ] No existing commands found in stream
[2026-10-28 10:37:43,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:37:43,851.851 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-28 10:37:45,371.371 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:37:45,373.373 INFO    ] Checking for system updates...
[2026-10-28 10:37:45,414.414 INFO    ] 200
[2026-10-28 10:37:45,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:37:45,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:37:45,486.486 INFO    ] No update needed
[2026-10-28 10:37:45,489.489 INFO    ] Checking for camera pi updates...
[2026-10-28 10:37:45,528.528 INFO    ] 200
[2026-10-28 10:37:45,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:37:45,573.573 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:37:45,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:37:45,672.672 INFO    ] No camera update needed
[2026-10-28 10:37:45,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:37:45,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:37:45,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:37:45,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:37:47,734.734 INFO    ] ================================================
[2026-10-28 10:37:47,751.751 INFO    ] Launching Daemon at Wed Oct 28 10:37:47 IST 2026
[2026-10-28 10:37:47,762.762 INFO    ] ================================================
[2026-10-28 10:37:48,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:37:48
[2026-10-28 10:37:49,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:37:49,257.257 INFO    ] Initializing speech engine...
[2026-10-28 10:37:49,264.264 INFO    ] 2026-10-28 10:37:49
[2026-10-28 10:37:49,565.565 INFO    ] 2026-10-28 10:37:49
[2026-10-28 10:37:49,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:37:49,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:37:49,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:37:50,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:37:50,076.076 INFO    ] time= 28/10/2026 10:37:50
[2026-10-28 10:37:50,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:37:50,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:37:50,280.280 INFO    ] No existing commands found in stream
[2026-10-28 10:37:55,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:37:55,295.295 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-28 10:37:58,570.570 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:37:58,573.573 INFO    ] Checking for system updates...
[2026-10-28 10:37:58,615.615 INFO    ] 200
[2026-10-28 10:37:58,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:37:58,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:37:58,674.674 INFO    ] No update needed
[2026-10-28 10:37:58,677.677 INFO    ] Checking for camera pi updates...
[2026-10-28 10:37:58,711.711 INFO    ] 200
[2026-10-28 10:37:58,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:37:58,761.761 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:37:58,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:37:58,845.845 INFO    ] No camera update needed
[2026-10-28 10:37:58,848.848 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:37:58,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:37:58,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:37:58,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:38:00,905.905 INFO    ] ================================================
[2026-10-28 10:38:00,920.920 INFO    ] Launching Daemon at Wed Oct 28 10:38:00 IST 2026
[2026-10-28 10:38:00,931.931 INFO    ] ================================================
[2026-10-28 10:38:01,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:38:01
[2026-10-28 10:38:02,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:38:02,724.724 INFO    ] Initializing speech engine...
[2026-10-28 10:38:02,737.737 INFO    ] 2026-10-28 10:38:02
[2026-10-28 10:38:03,082.082 INFO    ] 2026-10-28 10:38:03
[2026-10-28 10:38:03,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:38:03,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:38:03,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:38:03,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:38:03,681.681 INFO    ] time= 28/10/2026 10:38:03
[2026-10-28 10:38:03,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:38:03,740.740 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:38:03,854.854 INFO    ] No existing commands found in stream
[2026-10-28 10:38:08,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:38:08,880.880 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 10:38:11,790.790 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:38:11,793.793 INFO    ] Checking for system updates...
[2026-10-28 10:38:11,829.829 INFO    ] 200
[2026-10-28 10:38:11,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:38:11,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:38:11,895.895 INFO    ] No update needed
[2026-10-28 10:38:11,897.897 INFO    ] Checking for camera pi updates...
[2026-10-28 10:38:11,935.935 INFO    ] 200
[2026-10-28 10:38:11,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:38:11,978.978 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:38:12,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:38:12,053.053 INFO    ] No camera update needed
[2026-10-28 10:38:12,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:38:12,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:38:12,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:38:12,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:38:14,110.110 INFO    ] ================================================
[2026-10-28 10:38:14,125.125 INFO    ] Launching Daemon at Wed Oct 28 10:38:14 IST 2026
[2026-10-28 10:38:14,136.136 INFO    ] ================================================
[2026-10-28 10:38:14,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:38:14
[2026-10-28 10:38:15,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:38:15,599.599 INFO    ] Initializing speech engine...
[2026-10-28 10:38:15,605.605 INFO    ] 2026-10-28 10:38:15
[2026-10-28 10:38:15,866.866 INFO    ] 2026-10-28 10:38:15
[2026-10-28 10:38:15,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:38:16,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:38:16,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:38:16,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:38:16,420.420 INFO    ] time= 28/10/2026 10:38:16
[2026-10-28 10:38:16,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:38:16,454.454 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:38:16,562.562 INFO    ] No existing commands found in stream
[2026-10-28 10:38:21,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:38:21,593.593 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 10:38:25,413.413 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:38:25,416.416 INFO    ] Checking for system updates...
[2026-10-28 10:38:25,453.453 INFO    ] 200
[2026-10-28 10:38:25,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:38:25,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:38:25,512.512 INFO    ] No update needed
[2026-10-28 10:38:25,515.515 INFO    ] Checking for camera pi updates...
[2026-10-28 10:38:25,550.550 INFO    ] 200
[2026-10-28 10:38:25,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:38:25,596.596 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:38:25,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:38:25,678.678 INFO    ] No camera update needed
[2026-10-28 10:38:25,681.681 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:38:25,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:38:25,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:38:25,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:38:27,738.738 INFO    ] ================================================
[2026-10-28 10:38:27,754.754 INFO    ] Launching Daemon at Wed Oct 28 10:38:27 IST 2026
[2026-10-28 10:38:27,765.765 INFO    ] ================================================
[2026-10-28 10:38:28,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:38:28
[2026-10-28 10:38:29,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:38:29,294.294 INFO    ] Initializing speech engine...
[2026-10-28 10:38:29,311.311 INFO    ] 2026-10-28 10:38:29
[2026-10-28 10:38:29,599.599 INFO    ] 2026-10-28 10:38:29
[2026-10-28 10:38:29,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:38:29,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:38:29,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:38:30,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:38:30,158.158 INFO    ] time= 28/10/2026 10:38:30
[2026-10-28 10:38:30,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:38:30,198.198 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:38:30,321.321 INFO    ] No existing commands found in stream
[2026-10-28 10:38:35,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:38:35,354.354 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-28 10:38:39,193.193 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:38:39,195.195 INFO    ] Checking for system updates...
[2026-10-28 10:38:39,233.233 INFO    ] 200
[2026-10-28 10:38:39,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:38:39,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:38:39,292.292 INFO    ] No update needed
[2026-10-28 10:38:39,295.295 INFO    ] Checking for camera pi updates...
[2026-10-28 10:38:39,331.331 INFO    ] 200
[2026-10-28 10:38:39,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:38:39,380.380 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:38:39,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:38:39,472.472 INFO    ] No camera update needed
[2026-10-28 10:38:39,475.475 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:38:39,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:38:39,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:38:39,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:38:41,533.533 INFO    ] ================================================
[2026-10-28 10:38:41,548.548 INFO    ] Launching Daemon at Wed Oct 28 10:38:41 IST 2026
[2026-10-28 10:38:41,559.559 INFO    ] ================================================
[2026-10-28 10:38:42,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:38:42
[2026-10-28 10:38:42,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:38:42,972.972 INFO    ] Initializing speech engine...
[2026-10-28 10:38:42,994.994 INFO    ] 2026-10-28 10:38:42
[2026-10-28 10:38:43,266.266 INFO    ] 2026-10-28 10:38:43
[2026-10-28 10:38:43,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:38:43,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:38:43,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:38:43,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:38:43,837.837 INFO    ] time= 28/10/2026 10:38:43
[2026-10-28 10:38:43,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:38:43,881.881 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:38:44,029.029 INFO    ] No existing commands found in stream
[2026-10-28 10:38:49,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:38:49,069.069 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-28 10:38:50,358.358 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:38:50,361.361 INFO    ] Checking for system updates...
[2026-10-28 10:38:50,398.398 INFO    ] 200
[2026-10-28 10:38:50,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:38:50,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:38:50,465.465 INFO    ] No update needed
[2026-10-28 10:38:50,468.468 INFO    ] Checking for camera pi updates...
[2026-10-28 10:38:50,507.507 INFO    ] 200
[2026-10-28 10:38:50,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:38:50,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:38:50,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:38:50,638.638 INFO    ] No camera update needed
[2026-10-28 10:38:50,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:38:50,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:38:50,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:38:50,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:38:52,694.694 INFO    ] ================================================
[2026-10-28 10:38:52,710.710 INFO    ] Launching Daemon at Wed Oct 28 10:38:52 IST 2026
[2026-10-28 10:38:52,721.721 INFO    ] ================================================
[2026-10-28 10:38:53,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:38:53
[2026-10-28 10:38:53,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:38:54,230.230 INFO    ] Initializing speech engine...
[2026-10-28 10:38:54,240.240 INFO    ] 2026-10-28 10:38:54
[2026-10-28 10:38:54,499.499 INFO    ] 2026-10-28 10:38:54
[2026-10-28 10:38:54,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:38:54,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:38:54,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:38:55,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:38:55,189.189 INFO    ] time= 28/10/2026 10:38:55
[2026-10-28 10:38:55,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:38:55,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:38:55,463.463 INFO    ] No existing commands found in stream
[2026-10-28 10:39:00,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:39:00,497.497 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-28 10:39:02,907.907 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:39:02,910.910 INFO    ] Checking for system updates...
[2026-10-28 10:39:02,949.949 INFO    ] 200
[2026-10-28 10:39:02,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:39:03,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:39:03,018.018 INFO    ] No update needed
[2026-10-28 10:39:03,021.021 INFO    ] Checking for camera pi updates...
[2026-10-28 10:39:03,084.084 INFO    ] 200
[2026-10-28 10:39:03,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:39:03,176.176 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:39:03,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:39:03,267.267 INFO    ] No camera update needed
[2026-10-28 10:39:03,270.270 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:39:03,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:39:03,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:39:03,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:39:05,330.330 INFO    ] ================================================
[2026-10-28 10:39:05,346.346 INFO    ] Launching Daemon at Wed Oct 28 10:39:05 IST 2026
[2026-10-28 10:39:05,357.357 INFO    ] ================================================
[2026-10-28 10:39:05,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:39:05
[2026-10-28 10:39:06,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:39:06,806.806 INFO    ] Initializing speech engine...
[2026-10-28 10:39:06,816.816 INFO    ] 2026-10-28 10:39:06
[2026-10-28 10:39:07,062.062 INFO    ] 2026-10-28 10:39:07
[2026-10-28 10:39:07,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:39:07,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:39:07,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:39:07,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:39:07,626.626 INFO    ] time= 28/10/2026 10:39:07
[2026-10-28 10:39:07,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:39:07,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:39:07,792.792 INFO    ] No existing commands found in stream
[2026-10-28 10:39:12,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:39:12,825.825 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-28 10:39:14,450.450 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:39:14,453.453 INFO    ] Checking for system updates...
[2026-10-28 10:39:14,489.489 INFO    ] 200
[2026-10-28 10:39:14,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:39:14,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:39:14,548.548 INFO    ] No update needed
[2026-10-28 10:39:14,550.550 INFO    ] Checking for camera pi updates...
[2026-10-28 10:39:14,584.584 INFO    ] 200
[2026-10-28 10:39:14,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:39:14,628.628 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:39:14,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:39:14,724.724 INFO    ] No camera update needed
[2026-10-28 10:39:14,726.726 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:39:14,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:39:14,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:39:14,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:39:16,778.778 INFO    ] ================================================
[2026-10-28 10:39:16,794.794 INFO    ] Launching Daemon at Wed Oct 28 10:39:16 IST 2026
[2026-10-28 10:39:16,805.805 INFO    ] ================================================
[2026-10-28 10:39:17,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:39:17
[2026-10-28 10:39:18,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:39:18,395.395 INFO    ] Initializing speech engine...
[2026-10-28 10:39:18,404.404 INFO    ] 2026-10-28 10:39:18
[2026-10-28 10:39:18,658.658 INFO    ] 2026-10-28 10:39:18
[2026-10-28 10:39:18,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:39:18,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:39:18,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:39:19,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:39:19,229.229 INFO    ] time= 28/10/2026 10:39:19
[2026-10-28 10:39:19,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:39:19,253.253 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:39:19,400.400 INFO    ] No existing commands found in stream
[2026-10-28 10:39:24,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:39:24,435.435 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 10:39:27,026.026 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:39:27,029.029 INFO    ] Checking for system updates...
[2026-10-28 10:39:27,068.068 INFO    ] 200
[2026-10-28 10:39:27,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:39:27,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:39:27,125.125 INFO    ] No update needed
[2026-10-28 10:39:27,127.127 INFO    ] Checking for camera pi updates...
[2026-10-28 10:39:27,160.160 INFO    ] 200
[2026-10-28 10:39:27,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:39:27,203.203 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:39:27,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:39:27,385.385 INFO    ] No camera update needed
[2026-10-28 10:39:27,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:39:27,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:39:27,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:39:27,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:39:29,442.442 INFO    ] ================================================
[2026-10-28 10:39:29,457.457 INFO    ] Launching Daemon at Wed Oct 28 10:39:29 IST 2026
[2026-10-28 10:39:29,469.469 INFO    ] ================================================
[2026-10-28 10:39:30,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:39:30
[2026-10-28 10:39:30,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:39:30,920.920 INFO    ] Initializing speech engine...
[2026-10-28 10:39:30,930.930 INFO    ] 2026-10-28 10:39:30
[2026-10-28 10:39:31,192.192 INFO    ] 2026-10-28 10:39:31
[2026-10-28 10:39:31,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:39:31,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:39:31,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:39:31,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:39:31,739.739 INFO    ] time= 28/10/2026 10:39:31
[2026-10-28 10:39:31,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:39:31,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:39:31,919.919 INFO    ] No existing commands found in stream
[2026-10-28 10:39:36,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:39:36,947.947 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-28 10:39:40,211.211 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:39:40,213.213 INFO    ] Checking for system updates...
[2026-10-28 10:39:40,250.250 INFO    ] 200
[2026-10-28 10:39:40,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:39:40,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:39:40,307.307 INFO    ] No update needed
[2026-10-28 10:39:40,309.309 INFO    ] Checking for camera pi updates...
[2026-10-28 10:39:40,343.343 INFO    ] 200
[2026-10-28 10:39:40,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:39:40,386.386 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:39:40,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:39:40,465.465 INFO    ] No camera update needed
[2026-10-28 10:39:40,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:39:40,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:39:40,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:39:40,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:39:42,521.521 INFO    ] ================================================
[2026-10-28 10:39:42,536.536 INFO    ] Launching Daemon at Wed Oct 28 10:39:42 IST 2026
[2026-10-28 10:39:42,547.547 INFO    ] ================================================
[2026-10-28 10:39:43,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:39:43
[2026-10-28 10:39:43,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:39:44,067.067 INFO    ] Initializing speech engine...
[2026-10-28 10:39:44,078.078 INFO    ] 2026-10-28 10:39:44
[2026-10-28 10:39:44,349.349 INFO    ] 2026-10-28 10:39:44
[2026-10-28 10:39:44,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:39:44,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:39:44,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:39:44,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:39:44,918.918 INFO    ] time= 28/10/2026 10:39:44
[2026-10-28 10:39:44,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:39:44,966.966 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:39:45,097.097 INFO    ] No existing commands found in stream
[2026-10-28 10:39:50,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:39:50,126.126 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-28 10:39:51,515.515 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:39:51,517.517 INFO    ] Checking for system updates...
[2026-10-28 10:39:51,553.553 INFO    ] 200
[2026-10-28 10:39:51,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:39:51,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:39:51,610.610 INFO    ] No update needed
[2026-10-28 10:39:51,612.612 INFO    ] Checking for camera pi updates...
[2026-10-28 10:39:51,649.649 INFO    ] 200
[2026-10-28 10:39:51,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:39:51,692.692 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:39:51,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:39:51,778.778 INFO    ] No camera update needed
[2026-10-28 10:39:51,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:39:51,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:39:51,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:39:51,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:39:53,834.834 INFO    ] ================================================
[2026-10-28 10:39:53,849.849 INFO    ] Launching Daemon at Wed Oct 28 10:39:53 IST 2026
[2026-10-28 10:39:53,860.860 INFO    ] ================================================
[2026-10-28 10:39:54,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:39:54
[2026-10-28 10:39:55,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:39:55,272.272 INFO    ] Initializing speech engine...
[2026-10-28 10:39:55,291.291 INFO    ] 2026-10-28 10:39:55
[2026-10-28 10:39:55,541.541 INFO    ] 2026-10-28 10:39:55
[2026-10-28 10:39:55,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:39:55,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:39:55,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:39:56,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:39:56,141.141 INFO    ] time= 28/10/2026 10:39:56
[2026-10-28 10:39:56,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:39:56,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:39:56,308.308 INFO    ] No existing commands found in stream
[2026-10-28 10:40:01,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:40:01,327.327 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-28 10:40:08,460.460 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:40:08,463.463 INFO    ] Checking for system updates...
[2026-10-28 10:40:08,498.498 INFO    ] 200
[2026-10-28 10:40:08,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:40:08,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:40:08,555.555 INFO    ] No update needed
[2026-10-28 10:40:08,557.557 INFO    ] Checking for camera pi updates...
[2026-10-28 10:40:08,590.590 INFO    ] 200
[2026-10-28 10:40:08,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:40:08,635.635 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:40:08,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:40:08,686.686 INFO    ] No camera update needed
[2026-10-28 10:40:08,688.688 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:40:08,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:40:08,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:40:08,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:40:10,742.742 INFO    ] ================================================
[2026-10-28 10:40:10,756.756 INFO    ] Launching Daemon at Wed Oct 28 10:40:10 IST 2026
[2026-10-28 10:40:10,767.767 INFO    ] ================================================
[2026-10-28 10:40:11,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:40:11
[2026-10-28 10:40:11,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:40:12,185.185 INFO    ] Initializing speech engine...
[2026-10-28 10:40:12,198.198 INFO    ] 2026-10-28 10:40:12
[2026-10-28 10:40:12,465.465 INFO    ] 2026-10-28 10:40:12
[2026-10-28 10:40:12,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:40:12,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:40:12,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:40:13,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:40:13,036.036 INFO    ] time= 28/10/2026 10:40:13
[2026-10-28 10:40:13,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:40:13,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:40:13,293.293 INFO    ] No existing commands found in stream
[2026-10-28 10:40:18,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:40:18,311.311 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-28 10:40:22,768.768 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:40:22,770.770 INFO    ] Checking for system updates...
[2026-10-28 10:40:22,806.806 INFO    ] 200
[2026-10-28 10:40:22,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:40:22,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:40:22,863.863 INFO    ] No update needed
[2026-10-28 10:40:22,865.865 INFO    ] Checking for camera pi updates...
[2026-10-28 10:40:22,901.901 INFO    ] 200
[2026-10-28 10:40:22,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:40:22,945.945 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:40:23,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:40:23,030.030 INFO    ] No camera update needed
[2026-10-28 10:40:23,032.032 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:40:23,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:40:23,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:40:23,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:40:25,086.086 INFO    ] ================================================
[2026-10-28 10:40:25,102.102 INFO    ] Launching Daemon at Wed Oct 28 10:40:25 IST 2026
[2026-10-28 10:40:25,113.113 INFO    ] ================================================
[2026-10-28 10:40:25,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:40:25
[2026-10-28 10:40:26,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:40:26,532.532 INFO    ] Initializing speech engine...
[2026-10-28 10:40:26,540.540 INFO    ] 2026-10-28 10:40:26
[2026-10-28 10:40:26,833.833 INFO    ] 2026-10-28 10:40:26
[2026-10-28 10:40:26,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:40:27,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:40:27,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:40:27,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:40:27,322.322 INFO    ] time= 28/10/2026 10:40:27
[2026-10-28 10:40:27,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:40:27,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:40:27,523.523 INFO    ] No existing commands found in stream
[2026-10-28 10:40:32,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:40:32,538.538 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-28 10:40:33,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:40:33,794.794 INFO    ] Checking for system updates...
[2026-10-28 10:40:33,834.834 INFO    ] 200
[2026-10-28 10:40:33,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:40:33,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:40:33,897.897 INFO    ] No update needed
[2026-10-28 10:40:33,899.899 INFO    ] Checking for camera pi updates...
[2026-10-28 10:40:33,933.933 INFO    ] 200
[2026-10-28 10:40:33,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:40:33,976.976 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:40:34,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:40:34,064.064 INFO    ] No camera update needed
[2026-10-28 10:40:34,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:40:34,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:40:34,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:40:34,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:40:36,120.120 INFO    ] ================================================
[2026-10-28 10:40:36,136.136 INFO    ] Launching Daemon at Wed Oct 28 10:40:36 IST 2026
[2026-10-28 10:40:36,148.148 INFO    ] ================================================
[2026-10-28 10:40:36,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:40:36
[2026-10-28 10:40:37,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:40:37,582.582 INFO    ] Initializing speech engine...
[2026-10-28 10:40:37,592.592 INFO    ] 2026-10-28 10:40:37
[2026-10-28 10:40:37,842.842 INFO    ] 2026-10-28 10:40:37
[2026-10-28 10:40:37,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:40:38,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:40:38,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:40:38,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:40:38,402.402 INFO    ] time= 28/10/2026 10:40:38
[2026-10-28 10:40:38,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:40:38,422.422 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:40:38,538.538 INFO    ] No existing commands found in stream
[2026-10-28 10:40:43,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:40:43,566.566 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-28 10:40:45,735.735 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:40:45,737.737 INFO    ] Checking for system updates...
[2026-10-28 10:40:45,773.773 INFO    ] 200
[2026-10-28 10:40:45,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:40:45,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:40:45,830.830 INFO    ] No update needed
[2026-10-28 10:40:45,833.833 INFO    ] Checking for camera pi updates...
[2026-10-28 10:40:45,866.866 INFO    ] 200
[2026-10-28 10:40:45,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:40:45,912.912 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:40:46,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:40:46,015.015 INFO    ] No camera update needed
[2026-10-28 10:40:46,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:40:46,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:40:46,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:40:46,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:40:48,069.069 INFO    ] ================================================
[2026-10-28 10:40:48,085.085 INFO    ] Launching Daemon at Wed Oct 28 10:40:48 IST 2026
[2026-10-28 10:40:48,096.096 INFO    ] ================================================
[2026-10-28 10:40:48,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:40:48
[2026-10-28 10:40:49,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:40:49,539.539 INFO    ] Initializing speech engine...
[2026-10-28 10:40:49,548.548 INFO    ] 2026-10-28 10:40:49
[2026-10-28 10:40:49,812.812 INFO    ] 2026-10-28 10:40:49
[2026-10-28 10:40:49,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:40:50,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:40:50,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:40:50,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:40:50,364.364 INFO    ] time= 28/10/2026 10:40:50
[2026-10-28 10:40:50,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:40:50,441.441 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:40:50,609.609 INFO    ] No existing commands found in stream
[2026-10-28 10:40:55,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:40:55,623.623 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-28 10:40:58,710.710 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:40:58,713.713 INFO    ] Checking for system updates...
[2026-10-28 10:40:58,748.748 INFO    ] 200
[2026-10-28 10:40:58,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:40:58,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:40:58,812.812 INFO    ] No update needed
[2026-10-28 10:40:58,814.814 INFO    ] Checking for camera pi updates...
[2026-10-28 10:40:58,848.848 INFO    ] 200
[2026-10-28 10:40:58,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:40:58,895.895 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:40:58,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:40:58,949.949 INFO    ] No camera update needed
[2026-10-28 10:40:58,951.951 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:40:58,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:40:58,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:40:58,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:41:01,006.006 INFO    ] ================================================
[2026-10-28 10:41:01,022.022 INFO    ] Launching Daemon at Wed Oct 28 10:41:01 IST 2026
[2026-10-28 10:41:01,034.034 INFO    ] ================================================
[2026-10-28 10:41:01,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:41:01
[2026-10-28 10:41:02,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:41:02,667.667 INFO    ] Initializing speech engine...
[2026-10-28 10:41:02,683.683 INFO    ] 2026-10-28 10:41:02
[2026-10-28 10:41:02,970.970 INFO    ] 2026-10-28 10:41:02
[2026-10-28 10:41:03,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:41:03,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:41:03,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:41:03,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:41:03,609.609 INFO    ] time= 28/10/2026 10:41:03
[2026-10-28 10:41:03,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:41:03,633.633 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:41:03,756.756 INFO    ] No existing commands found in stream
[2026-10-28 10:41:08,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:41:08,780.780 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-28 10:41:10,192.192 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:41:10,195.195 INFO    ] Checking for system updates...
[2026-10-28 10:41:10,230.230 INFO    ] 200
[2026-10-28 10:41:10,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:41:10,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:41:10,288.288 INFO    ] No update needed
[2026-10-28 10:41:10,290.290 INFO    ] Checking for camera pi updates...
[2026-10-28 10:41:10,323.323 INFO    ] 200
[2026-10-28 10:41:10,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:41:10,365.365 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:41:10,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:41:10,452.452 INFO    ] No camera update needed
[2026-10-28 10:41:10,455.455 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:41:10,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:41:10,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:41:10,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:41:12,508.508 INFO    ] ================================================
[2026-10-28 10:41:12,524.524 INFO    ] Launching Daemon at Wed Oct 28 10:41:12 IST 2026
[2026-10-28 10:41:12,535.535 INFO    ] ================================================
[2026-10-28 10:41:13,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:41:13
[2026-10-28 10:41:13,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:41:14,113.113 INFO    ] Initializing speech engine...
[2026-10-28 10:41:14,121.121 INFO    ] 2026-10-28 10:41:14
[2026-10-28 10:41:14,392.392 INFO    ] 2026-10-28 10:41:14
[2026-10-28 10:41:14,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:41:14,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:41:14,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:41:14,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:41:14,997.997 INFO    ] time= 28/10/2026 10:41:14
[2026-10-28 10:41:15,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:41:15,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:41:15,255.255 INFO    ] No existing commands found in stream
[2026-10-28 10:41:20,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:41:20,289.289 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-28 10:41:23,895.895 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:41:23,898.898 INFO    ] Checking for system updates...
[2026-10-28 10:41:23,934.934 INFO    ] 200
[2026-10-28 10:41:23,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:41:23,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:41:23,992.992 INFO    ] No update needed
[2026-10-28 10:41:23,995.995 INFO    ] Checking for camera pi updates...
[2026-10-28 10:41:24,033.033 INFO    ] 200
[2026-10-28 10:41:24,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:41:24,083.083 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:41:24,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:41:24,184.184 INFO    ] No camera update needed
[2026-10-28 10:41:24,187.187 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:41:24,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:41:24,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:41:24,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:41:26,249.249 INFO    ] ================================================
[2026-10-28 10:41:26,265.265 INFO    ] Launching Daemon at Wed Oct 28 10:41:26 IST 2026
[2026-10-28 10:41:26,275.275 INFO    ] ================================================
[2026-10-28 10:41:26,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:41:26
[2026-10-28 10:41:27,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:41:27,785.785 INFO    ] Initializing speech engine...
[2026-10-28 10:41:27,795.795 INFO    ] 2026-10-28 10:41:27
[2026-10-28 10:41:28,069.069 INFO    ] 2026-10-28 10:41:28
[2026-10-28 10:41:28,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:41:28,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:41:28,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:41:28,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:41:28,634.634 INFO    ] time= 28/10/2026 10:41:28
[2026-10-28 10:41:28,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:41:28,670.670 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:41:28,780.780 INFO    ] No existing commands found in stream
[2026-10-28 10:41:33,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:41:33,813.813 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-28 10:41:34,934.934 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:41:34,937.937 INFO    ] Checking for system updates...
[2026-10-28 10:41:34,977.977 INFO    ] 200
[2026-10-28 10:41:34,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:41:35,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:41:35,035.035 INFO    ] No update needed
[2026-10-28 10:41:35,038.038 INFO    ] Checking for camera pi updates...
[2026-10-28 10:41:35,075.075 INFO    ] 200
[2026-10-28 10:41:35,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:41:35,122.122 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:41:35,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:41:35,210.210 INFO    ] No camera update needed
[2026-10-28 10:41:35,213.213 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:41:35,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:41:35,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:41:35,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:41:37,268.268 INFO    ] ================================================
[2026-10-28 10:41:37,283.283 INFO    ] Launching Daemon at Wed Oct 28 10:41:37 IST 2026
[2026-10-28 10:41:37,294.294 INFO    ] ================================================
[2026-10-28 10:41:37,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:41:37
[2026-10-28 10:41:38,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:41:38,722.722 INFO    ] Initializing speech engine...
[2026-10-28 10:41:38,743.743 INFO    ] 2026-10-28 10:41:38
[2026-10-28 10:41:39,018.018 INFO    ] 2026-10-28 10:41:38
[2026-10-28 10:41:39,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:41:39,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:41:39,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:41:39,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:41:39,574.574 INFO    ] time= 28/10/2026 10:41:39
[2026-10-28 10:41:39,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:41:39,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:41:39,786.786 INFO    ] No existing commands found in stream
[2026-10-28 10:41:44,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:41:44,814.814 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 10:41:49,234.234 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:41:49,237.237 INFO    ] Checking for system updates...
[2026-10-28 10:41:49,272.272 INFO    ] 200
[2026-10-28 10:41:49,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:41:49,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:41:49,331.331 INFO    ] No update needed
[2026-10-28 10:41:49,333.333 INFO    ] Checking for camera pi updates...
[2026-10-28 10:41:49,366.366 INFO    ] 200
[2026-10-28 10:41:49,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:41:49,408.408 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:41:49,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:41:49,492.492 INFO    ] No camera update needed
[2026-10-28 10:41:49,495.495 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:41:49,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:41:49,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:41:49,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:41:51,548.548 INFO    ] ================================================
[2026-10-28 10:41:51,564.564 INFO    ] Launching Daemon at Wed Oct 28 10:41:51 IST 2026
[2026-10-28 10:41:51,575.575 INFO    ] ================================================
[2026-10-28 10:41:52,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:41:52
[2026-10-28 10:41:52,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:41:53,010.010 INFO    ] Initializing speech engine...
[2026-10-28 10:41:53,020.020 INFO    ] 2026-10-28 10:41:53
[2026-10-28 10:41:53,281.281 INFO    ] 2026-10-28 10:41:53
[2026-10-28 10:41:53,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:41:53,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:41:53,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:41:53,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:41:53,894.894 INFO    ] time= 28/10/2026 10:41:53
[2026-10-28 10:41:53,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:41:53,924.924 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:41:54,123.123 INFO    ] No existing commands found in stream
[2026-10-28 10:41:59,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:41:59,150.150 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-28 10:42:02,293.293 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:42:02,296.296 INFO    ] Checking for system updates...
[2026-10-28 10:42:02,339.339 INFO    ] 200
[2026-10-28 10:42:02,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:42:02,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:42:02,417.417 INFO    ] No update needed
[2026-10-28 10:42:02,425.425 INFO    ] Checking for camera pi updates...
[2026-10-28 10:42:02,469.469 INFO    ] 200
[2026-10-28 10:42:02,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:42:02,519.519 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:42:02,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:42:02,633.633 INFO    ] No camera update needed
[2026-10-28 10:42:02,637.637 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:42:02,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:42:02,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:42:02,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:42:04,695.695 INFO    ] ================================================
[2026-10-28 10:42:04,710.710 INFO    ] Launching Daemon at Wed Oct 28 10:42:04 IST 2026
[2026-10-28 10:42:04,721.721 INFO    ] ================================================
[2026-10-28 10:42:05,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:42:05
[2026-10-28 10:42:05,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:42:06,158.158 INFO    ] Initializing speech engine...
[2026-10-28 10:42:06,173.173 INFO    ] 2026-10-28 10:42:06
[2026-10-28 10:42:06,427.427 INFO    ] 2026-10-28 10:42:06
[2026-10-28 10:42:06,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:42:06,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:42:06,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:42:06,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:42:06,983.983 INFO    ] time= 28/10/2026 10:42:06
[2026-10-28 10:42:07,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:42:07,028.028 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:42:07,180.180 INFO    ] No existing commands found in stream
[2026-10-28 10:42:12,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:42:12,205.205 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 10:42:15,691.691 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:42:15,694.694 INFO    ] Checking for system updates...
[2026-10-28 10:42:15,729.729 INFO    ] 200
[2026-10-28 10:42:15,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:42:15,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:42:15,793.793 INFO    ] No update needed
[2026-10-28 10:42:15,796.796 INFO    ] Checking for camera pi updates...
[2026-10-28 10:42:15,830.830 INFO    ] 200
[2026-10-28 10:42:15,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:42:15,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:42:15,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:42:15,959.959 INFO    ] No camera update needed
[2026-10-28 10:42:15,962.962 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:42:15,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:42:15,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:42:15,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:42:18,014.014 INFO    ] ================================================
[2026-10-28 10:42:18,029.029 INFO    ] Launching Daemon at Wed Oct 28 10:42:18 IST 2026
[2026-10-28 10:42:18,040.040 INFO    ] ================================================
[2026-10-28 10:42:18,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:42:18
[2026-10-28 10:42:19,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:42:19,489.489 INFO    ] Initializing speech engine...
[2026-10-28 10:42:19,498.498 INFO    ] 2026-10-28 10:42:19
[2026-10-28 10:42:19,788.788 INFO    ] 2026-10-28 10:42:19
[2026-10-28 10:42:19,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:42:20,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:42:20,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:42:20,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:42:20,390.390 INFO    ] time= 28/10/2026 10:42:20
[2026-10-28 10:42:20,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:42:20,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:42:20,558.558 INFO    ] No existing commands found in stream
[2026-10-28 10:42:25,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:42:25,593.593 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-28 10:42:29,571.571 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:42:29,574.574 INFO    ] Checking for system updates...
[2026-10-28 10:42:29,610.610 INFO    ] 200
[2026-10-28 10:42:29,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:42:29,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:42:29,672.672 INFO    ] No update needed
[2026-10-28 10:42:29,674.674 INFO    ] Checking for camera pi updates...
[2026-10-28 10:42:29,708.708 INFO    ] 200
[2026-10-28 10:42:29,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:42:29,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:42:29,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:42:29,834.834 INFO    ] No camera update needed
[2026-10-28 10:42:29,837.837 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:42:29,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:42:29,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:42:29,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:42:31,891.891 INFO    ] ================================================
[2026-10-28 10:42:31,907.907 INFO    ] Launching Daemon at Wed Oct 28 10:42:31 IST 2026
[2026-10-28 10:42:31,919.919 INFO    ] ================================================
[2026-10-28 10:42:32,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:42:32
[2026-10-28 10:42:33,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:42:33,381.381 INFO    ] Initializing speech engine...
[2026-10-28 10:42:33,409.409 INFO    ] 2026-10-28 10:42:33
[2026-10-28 10:42:33,665.665 INFO    ] 2026-10-28 10:42:33
[2026-10-28 10:42:33,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:42:33,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:42:33,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:42:34,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:42:34,222.222 INFO    ] time= 28/10/2026 10:42:34
[2026-10-28 10:42:34,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:42:34,269.269 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:42:34,376.376 INFO    ] No existing commands found in stream
[2026-10-28 10:42:39,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:42:39,403.403 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-28 10:42:41,949.949 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:42:41,952.952 INFO    ] Checking for system updates...
[2026-10-28 10:42:41,988.988 INFO    ] 200
[2026-10-28 10:42:41,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:42:42,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:42:42,048.048 INFO    ] No update needed
[2026-10-28 10:42:42,051.051 INFO    ] Checking for camera pi updates...
[2026-10-28 10:42:42,084.084 INFO    ] 200
[2026-10-28 10:42:42,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:42:42,127.127 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:42:42,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:42:42,218.218 INFO    ] No camera update needed
[2026-10-28 10:42:42,221.221 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:42:42,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:42:42,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:42:42,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:42:44,274.274 INFO    ] ================================================
[2026-10-28 10:42:44,289.289 INFO    ] Launching Daemon at Wed Oct 28 10:42:44 IST 2026
[2026-10-28 10:42:44,300.300 INFO    ] ================================================
[2026-10-28 10:42:44,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:42:44
[2026-10-28 10:42:45,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:42:45,713.713 INFO    ] Initializing speech engine...
[2026-10-28 10:42:45,738.738 INFO    ] 2026-10-28 10:42:45
[2026-10-28 10:42:46,005.005 INFO    ] 2026-10-28 10:42:45
[2026-10-28 10:42:46,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:42:46,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:42:46,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:42:46,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:42:46,435.435 INFO    ] time= 28/10/2026 10:42:46
[2026-10-28 10:42:46,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:42:46,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:42:46,651.651 INFO    ] No existing commands found in stream
[2026-10-28 10:42:51,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:42:51,666.666 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-28 10:42:54,352.352 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:42:54,355.355 INFO    ] Checking for system updates...
[2026-10-28 10:42:54,390.390 INFO    ] 200
[2026-10-28 10:42:54,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:42:54,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:42:54,446.446 INFO    ] No update needed
[2026-10-28 10:42:54,449.449 INFO    ] Checking for camera pi updates...
[2026-10-28 10:42:54,486.486 INFO    ] 200
[2026-10-28 10:42:54,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:42:54,528.528 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:42:54,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:42:54,631.631 INFO    ] No camera update needed
[2026-10-28 10:42:54,633.633 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:42:54,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:42:54,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:42:54,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:42:56,687.687 INFO    ] ================================================
[2026-10-28 10:42:56,702.702 INFO    ] Launching Daemon at Wed Oct 28 10:42:56 IST 2026
[2026-10-28 10:42:56,713.713 INFO    ] ================================================
[2026-10-28 10:42:57,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:42:57
[2026-10-28 10:42:58,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:42:58,301.301 INFO    ] Initializing speech engine...
[2026-10-28 10:42:58,307.307 INFO    ] 2026-10-28 10:42:58
[2026-10-28 10:42:58,577.577 INFO    ] 2026-10-28 10:42:58
[2026-10-28 10:42:58,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:42:58,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:42:59,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:42:59,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:42:59,293.293 INFO    ] time= 28/10/2026 10:42:59
[2026-10-28 10:42:59,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:42:59,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:42:59,549.549 INFO    ] No existing commands found in stream
[2026-10-28 10:43:04,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:43:04,578.578 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 10:43:08,492.492 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:43:08,495.495 INFO    ] Checking for system updates...
[2026-10-28 10:43:08,532.532 INFO    ] 200
[2026-10-28 10:43:08,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:43:08,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:43:08,590.590 INFO    ] No update needed
[2026-10-28 10:43:08,593.593 INFO    ] Checking for camera pi updates...
[2026-10-28 10:43:08,628.628 INFO    ] 200
[2026-10-28 10:43:08,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:43:08,672.672 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:43:08,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:43:08,757.757 INFO    ] No camera update needed
[2026-10-28 10:43:08,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:43:08,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:43:08,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:43:08,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:43:10,816.816 INFO    ] ================================================
[2026-10-28 10:43:10,831.831 INFO    ] Launching Daemon at Wed Oct 28 10:43:10 IST 2026
[2026-10-28 10:43:10,841.841 INFO    ] ================================================
[2026-10-28 10:43:11,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:43:11
[2026-10-28 10:43:12,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:43:12,417.417 INFO    ] Initializing speech engine...
[2026-10-28 10:43:12,428.428 INFO    ] 2026-10-28 10:43:12
[2026-10-28 10:43:12,735.735 INFO    ] 2026-10-28 10:43:12
[2026-10-28 10:43:12,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:43:13,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:43:13,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:43:13,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:43:13,402.402 INFO    ] time= 28/10/2026 10:43:13
[2026-10-28 10:43:13,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:43:13,495.495 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:43:13,647.647 INFO    ] No existing commands found in stream
[2026-10-28 10:43:18,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:43:18,668.668 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 10:43:23,134.134 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:43:23,137.137 INFO    ] Checking for system updates...
[2026-10-28 10:43:23,174.174 INFO    ] 200
[2026-10-28 10:43:23,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:43:23,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:43:23,232.232 INFO    ] No update needed
[2026-10-28 10:43:23,235.235 INFO    ] Checking for camera pi updates...
[2026-10-28 10:43:23,269.269 INFO    ] 200
[2026-10-28 10:43:23,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:43:23,312.312 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:43:23,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:43:23,398.398 INFO    ] No camera update needed
[2026-10-28 10:43:23,401.401 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:43:23,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:43:23,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:43:23,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:43:25,456.456 INFO    ] ================================================
[2026-10-28 10:43:25,471.471 INFO    ] Launching Daemon at Wed Oct 28 10:43:25 IST 2026
[2026-10-28 10:43:25,482.482 INFO    ] ================================================
[2026-10-28 10:43:26,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:43:26
[2026-10-28 10:43:26,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:43:27,084.084 INFO    ] Initializing speech engine...
[2026-10-28 10:43:27,098.098 INFO    ] 2026-10-28 10:43:27
[2026-10-28 10:43:27,366.366 INFO    ] 2026-10-28 10:43:27
[2026-10-28 10:43:27,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:43:27,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:43:27,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:43:27,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:43:27,925.925 INFO    ] time= 28/10/2026 10:43:27
[2026-10-28 10:43:27,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:43:27,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:43:28,102.102 INFO    ] No existing commands found in stream
[2026-10-28 10:43:33,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:43:33,139.139 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-28 10:43:33,811.811 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:43:33,814.814 INFO    ] Checking for system updates...
[2026-10-28 10:43:33,850.850 INFO    ] 200
[2026-10-28 10:43:33,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:43:33,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:43:33,909.909 INFO    ] No update needed
[2026-10-28 10:43:33,912.912 INFO    ] Checking for camera pi updates...
[2026-10-28 10:43:33,947.947 INFO    ] 200
[2026-10-28 10:43:33,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:43:33,991.991 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:43:34,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:43:34,089.089 INFO    ] No camera update needed
[2026-10-28 10:43:34,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:43:34,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:43:34,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:43:34,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:43:36,150.150 INFO    ] ================================================
[2026-10-28 10:43:36,165.165 INFO    ] Launching Daemon at Wed Oct 28 10:43:36 IST 2026
[2026-10-28 10:43:36,176.176 INFO    ] ================================================
[2026-10-28 10:43:36,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:43:36
[2026-10-28 10:43:37,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:43:37,774.774 INFO    ] Initializing speech engine...
[2026-10-28 10:43:37,787.787 INFO    ] 2026-10-28 10:43:37
[2026-10-28 10:43:38,071.071 INFO    ] 2026-10-28 10:43:38
[2026-10-28 10:43:38,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:43:38,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:43:38,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:43:38,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:43:38,615.615 INFO    ] time= 28/10/2026 10:43:38
[2026-10-28 10:43:38,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:43:38,654.654 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:43:38,765.765 INFO    ] No existing commands found in stream
[2026-10-28 10:43:43,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:43:43,793.793 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-28 10:43:46,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:43:46,306.306 INFO    ] Checking for system updates...
[2026-10-28 10:43:46,346.346 INFO    ] 200
[2026-10-28 10:43:46,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:43:46,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:43:46,410.410 INFO    ] No update needed
[2026-10-28 10:43:46,412.412 INFO    ] Checking for camera pi updates...
[2026-10-28 10:43:46,446.446 INFO    ] 200
[2026-10-28 10:43:46,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:43:46,491.491 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:43:46,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:43:46,675.675 INFO    ] No camera update needed
[2026-10-28 10:43:46,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:43:46,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:43:46,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:43:46,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:43:48,734.734 INFO    ] ================================================
[2026-10-28 10:43:48,749.749 INFO    ] Launching Daemon at Wed Oct 28 10:43:48 IST 2026
[2026-10-28 10:43:48,760.760 INFO    ] ================================================
[2026-10-28 10:43:49,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:43:49
[2026-10-28 10:43:49,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:43:50,228.228 INFO    ] Initializing speech engine...
[2026-10-28 10:43:50,233.233 INFO    ] 2026-10-28 10:43:50
[2026-10-28 10:43:50,482.482 INFO    ] 2026-10-28 10:43:50
[2026-10-28 10:43:50,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:43:50,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:43:50,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:43:51,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:43:51,086.086 INFO    ] time= 28/10/2026 10:43:51
[2026-10-28 10:43:51,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:43:51,142.142 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:43:51,288.288 INFO    ] No existing commands found in stream
[2026-10-28 10:43:56,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:43:56,310.310 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-28 10:43:57,540.540 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:43:57,542.542 INFO    ] Checking for system updates...
[2026-10-28 10:43:57,578.578 INFO    ] 200
[2026-10-28 10:43:57,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:43:57,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:43:57,636.636 INFO    ] No update needed
[2026-10-28 10:43:57,638.638 INFO    ] Checking for camera pi updates...
[2026-10-28 10:43:57,671.671 INFO    ] 200
[2026-10-28 10:43:57,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:43:57,714.714 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:43:57,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:43:57,812.812 INFO    ] No camera update needed
[2026-10-28 10:43:57,815.815 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:43:57,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:43:57,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:43:57,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:43:59,869.869 INFO    ] ================================================
[2026-10-28 10:43:59,885.885 INFO    ] Launching Daemon at Wed Oct 28 10:43:59 IST 2026
[2026-10-28 10:43:59,896.896 INFO    ] ================================================
[2026-10-28 10:44:00,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:44:00
[2026-10-28 10:44:01,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:44:01,500.500 INFO    ] Initializing speech engine...
[2026-10-28 10:44:01,514.514 INFO    ] 2026-10-28 10:44:01
[2026-10-28 10:44:01,792.792 INFO    ] 2026-10-28 10:44:01
[2026-10-28 10:44:01,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:44:02,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:44:02,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:44:02,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:44:02,382.382 INFO    ] time= 28/10/2026 10:44:02
[2026-10-28 10:44:02,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:44:02,491.491 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:44:02,655.655 INFO    ] No existing commands found in stream
[2026-10-28 10:44:07,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:44:07,689.689 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-28 10:44:10,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:44:10,858.858 INFO    ] Checking for system updates...
[2026-10-28 10:44:10,893.893 INFO    ] 200
[2026-10-28 10:44:10,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:44:10,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:44:10,950.950 INFO    ] No update needed
[2026-10-28 10:44:10,952.952 INFO    ] Checking for camera pi updates...
[2026-10-28 10:44:10,985.985 INFO    ] 200
[2026-10-28 10:44:10,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:44:11,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:44:11,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:44:11,128.128 INFO    ] No camera update needed
[2026-10-28 10:44:11,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:44:11,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:44:11,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:44:11,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:44:13,182.182 INFO    ] ================================================
[2026-10-28 10:44:13,198.198 INFO    ] Launching Daemon at Wed Oct 28 10:44:13 IST 2026
[2026-10-28 10:44:13,210.210 INFO    ] ================================================
[2026-10-28 10:44:13,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:44:13
[2026-10-28 10:44:14,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:44:14,641.641 INFO    ] Initializing speech engine...
[2026-10-28 10:44:14,648.648 INFO    ] 2026-10-28 10:44:14
[2026-10-28 10:44:14,901.901 INFO    ] 2026-10-28 10:44:14
[2026-10-28 10:44:14,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:44:15,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:44:15,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:44:15,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:44:15,468.468 INFO    ] time= 28/10/2026 10:44:15
[2026-10-28 10:44:15,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:44:15,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:44:15,625.625 INFO    ] No existing commands found in stream
[2026-10-28 10:44:20,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:44:20,640.640 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-28 10:44:21,456.456 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:44:21,459.459 INFO    ] Checking for system updates...
[2026-10-28 10:44:21,495.495 INFO    ] 200
[2026-10-28 10:44:21,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:44:21,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:44:21,556.556 INFO    ] No update needed
[2026-10-28 10:44:21,558.558 INFO    ] Checking for camera pi updates...
[2026-10-28 10:44:21,592.592 INFO    ] 200
[2026-10-28 10:44:21,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:44:21,635.635 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:44:21,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:44:21,719.719 INFO    ] No camera update needed
[2026-10-28 10:44:21,721.721 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:44:21,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:44:21,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:44:21,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:44:23,774.774 INFO    ] ================================================
[2026-10-28 10:44:23,789.789 INFO    ] Launching Daemon at Wed Oct 28 10:44:23 IST 2026
[2026-10-28 10:44:23,800.800 INFO    ] ================================================
[2026-10-28 10:44:24,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:44:24
[2026-10-28 10:44:24,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:44:25,202.202 INFO    ] Initializing speech engine...
[2026-10-28 10:44:25,217.217 INFO    ] 2026-10-28 10:44:25
[2026-10-28 10:44:25,483.483 INFO    ] 2026-10-28 10:44:25
[2026-10-28 10:44:25,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:44:25,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:44:25,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:44:26,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:44:26,045.045 INFO    ] time= 28/10/2026 10:44:26
[2026-10-28 10:44:26,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:44:26,080.080 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:44:26,257.257 INFO    ] No existing commands found in stream
[2026-10-28 10:44:31,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:44:31,283.283 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-28 10:44:32,838.838 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:44:32,841.841 INFO    ] Checking for system updates...
[2026-10-28 10:44:32,891.891 INFO    ] 200
[2026-10-28 10:44:32,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:44:32,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:44:32,953.953 INFO    ] No update needed
[2026-10-28 10:44:32,956.956 INFO    ] Checking for camera pi updates...
[2026-10-28 10:44:32,991.991 INFO    ] 200
[2026-10-28 10:44:32,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:44:33,037.037 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:44:33,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:44:33,141.141 INFO    ] No camera update needed
[2026-10-28 10:44:33,144.144 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:44:33,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:44:33,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:44:33,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:44:35,205.205 INFO    ] ================================================
[2026-10-28 10:44:35,220.220 INFO    ] Launching Daemon at Wed Oct 28 10:44:35 IST 2026
[2026-10-28 10:44:35,231.231 INFO    ] ================================================
[2026-10-28 10:44:35,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:44:35
[2026-10-28 10:44:36,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:44:36,686.686 INFO    ] Initializing speech engine...
[2026-10-28 10:44:36,697.697 INFO    ] 2026-10-28 10:44:36
[2026-10-28 10:44:36,943.943 INFO    ] 2026-10-28 10:44:36
[2026-10-28 10:44:36,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:44:37,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:44:37,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:44:37,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:44:37,449.449 INFO    ] time= 28/10/2026 10:44:37
[2026-10-28 10:44:37,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:44:37,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:44:37,645.645 INFO    ] No existing commands found in stream
[2026-10-28 10:44:42,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:44:42,666.666 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-28 10:44:44,612.612 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:44:44,615.615 INFO    ] Checking for system updates...
[2026-10-28 10:44:44,650.650 INFO    ] 200
[2026-10-28 10:44:44,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:44:44,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:44:44,707.707 INFO    ] No update needed
[2026-10-28 10:44:44,709.709 INFO    ] Checking for camera pi updates...
[2026-10-28 10:44:44,743.743 INFO    ] 200
[2026-10-28 10:44:44,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:44:44,786.786 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:44:44,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:44:44,876.876 INFO    ] No camera update needed
[2026-10-28 10:44:44,878.878 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:44:44,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:44:44,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:44:44,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:44:46,931.931 INFO    ] ================================================
[2026-10-28 10:44:46,947.947 INFO    ] Launching Daemon at Wed Oct 28 10:44:46 IST 2026
[2026-10-28 10:44:46,957.957 INFO    ] ================================================
[2026-10-28 10:44:47,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:44:47
[2026-10-28 10:44:48,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:44:48,403.403 INFO    ] Initializing speech engine...
[2026-10-28 10:44:48,418.418 INFO    ] 2026-10-28 10:44:48
[2026-10-28 10:44:48,684.684 INFO    ] 2026-10-28 10:44:48
[2026-10-28 10:44:48,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:44:48,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:44:48,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:44:49,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:44:49,257.257 INFO    ] time= 28/10/2026 10:44:49
[2026-10-28 10:44:49,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:44:49,281.281 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:44:49,452.452 INFO    ] No existing commands found in stream
[2026-10-28 10:44:54,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:44:54,480.480 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-28 10:44:57,652.652 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:44:57,655.655 INFO    ] Checking for system updates...
[2026-10-28 10:44:57,694.694 INFO    ] 200
[2026-10-28 10:44:57,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:44:57,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:44:57,757.757 INFO    ] No update needed
[2026-10-28 10:44:57,760.760 INFO    ] Checking for camera pi updates...
[2026-10-28 10:44:57,797.797 INFO    ] 200
[2026-10-28 10:44:57,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:44:57,840.840 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:44:57,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:44:57,912.912 INFO    ] No camera update needed
[2026-10-28 10:44:57,915.915 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:44:57,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:44:57,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:44:57,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:44:59,970.970 INFO    ] ================================================
[2026-10-28 10:44:59,986.986 INFO    ] Launching Daemon at Wed Oct 28 10:44:59 IST 2026
[2026-10-28 10:45:00,997.997 INFO    ] ================================================
[2026-10-28 10:45:00,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:45:00
[2026-10-28 10:45:01,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:45:02,162.162 INFO    ] Initializing speech engine...
[2026-10-28 10:45:02,168.168 INFO    ] 2026-10-28 10:45:02
[2026-10-28 10:45:02,554.554 INFO    ] 2026-10-28 10:45:02
[2026-10-28 10:45:02,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:45:02,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:45:02,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:45:03,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:45:03,115.115 INFO    ] time= 28/10/2026 10:45:03
[2026-10-28 10:45:03,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:45:03,160.160 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:45:03,315.315 INFO    ] No existing commands found in stream
[2026-10-28 10:45:08,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:45:08,343.343 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-28 10:45:10,976.976 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:45:10,978.978 INFO    ] Checking for system updates...
[2026-10-28 10:45:11,016.016 INFO    ] 200
[2026-10-28 10:45:11,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:45:11,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:45:11,076.076 INFO    ] No update needed
[2026-10-28 10:45:11,078.078 INFO    ] Checking for camera pi updates...
[2026-10-28 10:45:11,113.113 INFO    ] 200
[2026-10-28 10:45:11,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:45:11,157.157 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:45:11,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:45:11,245.245 INFO    ] No camera update needed
[2026-10-28 10:45:11,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:45:11,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:45:11,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:45:11,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:45:13,303.303 INFO    ] ================================================
[2026-10-28 10:45:13,319.319 INFO    ] Launching Daemon at Wed Oct 28 10:45:13 IST 2026
[2026-10-28 10:45:13,330.330 INFO    ] ================================================
[2026-10-28 10:45:13,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:45:13
[2026-10-28 10:45:14,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:45:14,751.751 INFO    ] Initializing speech engine...
[2026-10-28 10:45:14,762.762 INFO    ] 2026-10-28 10:45:14
[2026-10-28 10:45:15,011.011 INFO    ] 2026-10-28 10:45:15
[2026-10-28 10:45:15,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:45:15,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:45:15,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:45:15,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:45:15,579.579 INFO    ] time= 28/10/2026 10:45:15
[2026-10-28 10:45:15,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:45:15,626.626 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:45:15,764.764 INFO    ] No existing commands found in stream
[2026-10-28 10:45:20,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:45:20,797.797 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 10:45:24,198.198 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:45:24,200.200 INFO    ] Checking for system updates...
[2026-10-28 10:45:24,236.236 INFO    ] 200
[2026-10-28 10:45:24,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:45:24,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:45:24,297.297 INFO    ] No update needed
[2026-10-28 10:45:24,299.299 INFO    ] Checking for camera pi updates...
[2026-10-28 10:45:24,336.336 INFO    ] 200
[2026-10-28 10:45:24,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:45:24,379.379 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:45:24,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:45:24,462.462 INFO    ] No camera update needed
[2026-10-28 10:45:24,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:45:24,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:45:24,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:45:24,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:45:26,518.518 INFO    ] ================================================
[2026-10-28 10:45:26,533.533 INFO    ] Launching Daemon at Wed Oct 28 10:45:26 IST 2026
[2026-10-28 10:45:26,545.545 INFO    ] ================================================
[2026-10-28 10:45:27,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:45:27
[2026-10-28 10:45:27,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:45:27,983.983 INFO    ] Initializing speech engine...
[2026-10-28 10:45:27,989.989 INFO    ] 2026-10-28 10:45:27
[2026-10-28 10:45:28,248.248 INFO    ] 2026-10-28 10:45:28
[2026-10-28 10:45:28,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:45:28,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:45:28,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:45:28,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:45:28,800.800 INFO    ] time= 28/10/2026 10:45:28
[2026-10-28 10:45:28,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:45:28,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:45:29,036.036 INFO    ] No existing commands found in stream
[2026-10-28 10:45:34,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:45:34,050.050 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-28 10:45:40,427.427 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:45:40,430.430 INFO    ] Checking for system updates...
[2026-10-28 10:45:40,466.466 INFO    ] 200
[2026-10-28 10:45:40,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:45:40,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:45:40,529.529 INFO    ] No update needed
[2026-10-28 10:45:40,531.531 INFO    ] Checking for camera pi updates...
[2026-10-28 10:45:40,564.564 INFO    ] 200
[2026-10-28 10:45:40,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:45:40,607.607 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:45:40,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:45:40,706.706 INFO    ] No camera update needed
[2026-10-28 10:45:40,709.709 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:45:40,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:45:40,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:45:40,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:45:42,762.762 INFO    ] ================================================
[2026-10-28 10:45:42,778.778 INFO    ] Launching Daemon at Wed Oct 28 10:45:42 IST 2026
[2026-10-28 10:45:42,788.788 INFO    ] ================================================
[2026-10-28 10:45:43,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:45:43
[2026-10-28 10:45:43,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:45:44,197.197 INFO    ] Initializing speech engine...
[2026-10-28 10:45:44,220.220 INFO    ] 2026-10-28 10:45:44
[2026-10-28 10:45:44,478.478 INFO    ] 2026-10-28 10:45:44
[2026-10-28 10:45:44,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:45:44,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:45:44,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:45:45,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:45:45,053.053 INFO    ] time= 28/10/2026 10:45:45
[2026-10-28 10:45:45,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:45:45,099.099 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:45:45,216.216 INFO    ] No existing commands found in stream
[2026-10-28 10:45:50,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:45:50,248.248 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-28 10:45:51,298.298 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:45:51,301.301 INFO    ] Checking for system updates...
[2026-10-28 10:45:51,337.337 INFO    ] 200
[2026-10-28 10:45:51,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:45:51,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:45:51,393.393 INFO    ] No update needed
[2026-10-28 10:45:51,396.396 INFO    ] Checking for camera pi updates...
[2026-10-28 10:45:51,429.429 INFO    ] 200
[2026-10-28 10:45:51,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:45:51,471.471 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:45:51,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:45:51,672.672 INFO    ] No camera update needed
[2026-10-28 10:45:51,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:45:51,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:45:51,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:45:51,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:45:53,729.729 INFO    ] ================================================
[2026-10-28 10:45:53,745.745 INFO    ] Launching Daemon at Wed Oct 28 10:45:53 IST 2026
[2026-10-28 10:45:53,756.756 INFO    ] ================================================
[2026-10-28 10:45:54,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:45:54
[2026-10-28 10:45:54,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:45:55,217.217 INFO    ] Initializing speech engine...
[2026-10-28 10:45:55,228.228 INFO    ] 2026-10-28 10:45:55
[2026-10-28 10:45:55,477.477 INFO    ] 2026-10-28 10:45:55
[2026-10-28 10:45:55,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:45:55,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:45:55,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:45:56,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:45:56,035.035 INFO    ] time= 28/10/2026 10:45:56
[2026-10-28 10:45:56,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:45:56,082.082 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:45:56,203.203 INFO    ] No existing commands found in stream
[2026-10-28 10:46:01,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:46:01,231.231 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 10:46:04,986.986 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:46:04,989.989 INFO    ] Checking for system updates...
[2026-10-28 10:46:05,025.025 INFO    ] 200
[2026-10-28 10:46:05,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:46:05,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:46:05,088.088 INFO    ] No update needed
[2026-10-28 10:46:05,091.091 INFO    ] Checking for camera pi updates...
[2026-10-28 10:46:05,128.128 INFO    ] 200
[2026-10-28 10:46:05,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:46:05,170.170 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:46:05,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:46:05,259.259 INFO    ] No camera update needed
[2026-10-28 10:46:05,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:46:05,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:46:05,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:46:05,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:46:07,316.316 INFO    ] ================================================
[2026-10-28 10:46:07,332.332 INFO    ] Launching Daemon at Wed Oct 28 10:46:07 IST 2026
[2026-10-28 10:46:07,344.344 INFO    ] ================================================
[2026-10-28 10:46:07,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:46:07
[2026-10-28 10:46:08,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:46:08,796.796 INFO    ] Initializing speech engine...
[2026-10-28 10:46:08,806.806 INFO    ] 2026-10-28 10:46:08
[2026-10-28 10:46:09,068.068 INFO    ] 2026-10-28 10:46:09
[2026-10-28 10:46:09,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:46:09,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:46:09,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:46:09,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:46:09,751.751 INFO    ] time= 28/10/2026 10:46:09
[2026-10-28 10:46:09,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:46:09,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:46:10,010.010 INFO    ] No existing commands found in stream
[2026-10-28 10:46:15,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:46:15,027.027 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 10:46:17,676.676 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:46:17,678.678 INFO    ] Checking for system updates...
[2026-10-28 10:46:17,717.717 INFO    ] 200
[2026-10-28 10:46:17,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:46:17,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:46:17,774.774 INFO    ] No update needed
[2026-10-28 10:46:17,777.777 INFO    ] Checking for camera pi updates...
[2026-10-28 10:46:17,810.810 INFO    ] 200
[2026-10-28 10:46:17,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:46:17,852.852 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:46:17,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:46:17,941.941 INFO    ] No camera update needed
[2026-10-28 10:46:17,943.943 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:46:17,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:46:17,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:46:17,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:46:20,997.997 INFO    ] ================================================
[2026-10-28 10:46:20,012.012 INFO    ] Launching Daemon at Wed Oct 28 10:46:20 IST 2026
[2026-10-28 10:46:20,024.024 INFO    ] ================================================
[2026-10-28 10:46:20,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:46:20
[2026-10-28 10:46:21,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:46:21,603.603 INFO    ] Initializing speech engine...
[2026-10-28 10:46:21,617.617 INFO    ] 2026-10-28 10:46:21
[2026-10-28 10:46:21,882.882 INFO    ] 2026-10-28 10:46:21
[2026-10-28 10:46:21,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:46:22,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:46:22,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:46:22,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:46:22,443.443 INFO    ] time= 28/10/2026 10:46:22
[2026-10-28 10:46:22,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:46:22,480.480 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:46:22,608.608 INFO    ] No existing commands found in stream
[2026-10-28 10:46:27,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:46:27,641.641 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-28 10:46:32,256.256 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:46:32,259.259 INFO    ] Checking for system updates...
[2026-10-28 10:46:32,298.298 INFO    ] 200
[2026-10-28 10:46:32,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:46:32,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:46:32,362.362 INFO    ] No update needed
[2026-10-28 10:46:32,365.365 INFO    ] Checking for camera pi updates...
[2026-10-28 10:46:32,401.401 INFO    ] 200
[2026-10-28 10:46:32,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:46:32,449.449 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:46:32,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:46:32,584.584 INFO    ] No camera update needed
[2026-10-28 10:46:32,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:46:32,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:46:32,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:46:32,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:46:34,645.645 INFO    ] ================================================
[2026-10-28 10:46:34,661.661 INFO    ] Launching Daemon at Wed Oct 28 10:46:34 IST 2026
[2026-10-28 10:46:34,673.673 INFO    ] ================================================
[2026-10-28 10:46:35,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:46:35
[2026-10-28 10:46:35,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:46:36,127.127 INFO    ] Initializing speech engine...
[2026-10-28 10:46:36,137.137 INFO    ] 2026-10-28 10:46:36
[2026-10-28 10:46:36,386.386 INFO    ] 2026-10-28 10:46:36
[2026-10-28 10:46:36,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:46:36,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:46:36,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:46:36,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:46:36,941.941 INFO    ] time= 28/10/2026 10:46:36
[2026-10-28 10:46:36,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:46:36,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:46:37,094.094 INFO    ] No existing commands found in stream
[2026-10-28 10:46:42,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:46:42,113.113 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 10:46:43,812.812 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:46:43,815.815 INFO    ] Checking for system updates...
[2026-10-28 10:46:43,854.854 INFO    ] 200
[2026-10-28 10:46:43,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:46:43,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:46:43,917.917 INFO    ] No update needed
[2026-10-28 10:46:43,919.919 INFO    ] Checking for camera pi updates...
[2026-10-28 10:46:43,956.956 INFO    ] 200
[2026-10-28 10:46:43,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:46:44,001.001 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:46:44,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:46:44,090.090 INFO    ] No camera update needed
[2026-10-28 10:46:44,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:46:44,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:46:44,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:46:44,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:46:46,149.149 INFO    ] ================================================
[2026-10-28 10:46:46,164.164 INFO    ] Launching Daemon at Wed Oct 28 10:46:46 IST 2026
[2026-10-28 10:46:46,175.175 INFO    ] ================================================
[2026-10-28 10:46:46,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:46:46
[2026-10-28 10:46:47,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:46:47,764.764 INFO    ] Initializing speech engine...
[2026-10-28 10:46:47,774.774 INFO    ] 2026-10-28 10:46:47
[2026-10-28 10:46:48,087.087 INFO    ] 2026-10-28 10:46:48
[2026-10-28 10:46:48,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:46:48,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:46:48,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:46:48,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:46:48,754.754 INFO    ] time= 28/10/2026 10:46:48
[2026-10-28 10:46:48,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:46:48,841.841 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:46:48,991.991 INFO    ] No existing commands found in stream
[2026-10-28 10:46:54,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:46:54,018.018 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 10:46:57,613.613 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:46:57,616.616 INFO    ] Checking for system updates...
[2026-10-28 10:46:57,654.654 INFO    ] 200
[2026-10-28 10:46:57,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:46:57,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:46:57,718.718 INFO    ] No update needed
[2026-10-28 10:46:57,725.725 INFO    ] Checking for camera pi updates...
[2026-10-28 10:46:57,759.759 INFO    ] 200
[2026-10-28 10:46:57,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:46:57,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:46:57,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:46:57,894.894 INFO    ] No camera update needed
[2026-10-28 10:46:57,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:46:57,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:46:57,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:46:57,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:46:59,951.951 INFO    ] ================================================
[2026-10-28 10:46:59,967.967 INFO    ] Launching Daemon at Wed Oct 28 10:46:59 IST 2026
[2026-10-28 10:46:59,977.977 INFO    ] ================================================
[2026-10-28 10:47:00,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:47:00
[2026-10-28 10:47:01,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:47:01,401.401 INFO    ] Initializing speech engine...
[2026-10-28 10:47:01,412.412 INFO    ] 2026-10-28 10:47:01
[2026-10-28 10:47:01,668.668 INFO    ] 2026-10-28 10:47:01
[2026-10-28 10:47:01,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:47:01,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:47:01,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:47:02,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:47:02,150.150 INFO    ] time= 28/10/2026 10:47:02
[2026-10-28 10:47:02,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:47:02,177.177 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:47:02,285.285 INFO    ] No existing commands found in stream
[2026-10-28 10:47:07,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:47:07,298.298 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 10:47:10,216.216 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:47:10,219.219 INFO    ] Checking for system updates...
[2026-10-28 10:47:10,255.255 INFO    ] 200
[2026-10-28 10:47:10,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:47:10,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:47:10,312.312 INFO    ] No update needed
[2026-10-28 10:47:10,314.314 INFO    ] Checking for camera pi updates...
[2026-10-28 10:47:10,351.351 INFO    ] 200
[2026-10-28 10:47:10,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:47:10,394.394 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:47:10,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:47:10,477.477 INFO    ] No camera update needed
[2026-10-28 10:47:10,479.479 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:47:10,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:47:10,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:47:10,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:47:12,532.532 INFO    ] ================================================
[2026-10-28 10:47:12,547.547 INFO    ] Launching Daemon at Wed Oct 28 10:47:12 IST 2026
[2026-10-28 10:47:12,558.558 INFO    ] ================================================
[2026-10-28 10:47:13,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:47:13
[2026-10-28 10:47:13,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:47:14,115.115 INFO    ] Initializing speech engine...
[2026-10-28 10:47:14,129.129 INFO    ] 2026-10-28 10:47:14
[2026-10-28 10:47:14,416.416 INFO    ] 2026-10-28 10:47:14
[2026-10-28 10:47:14,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:47:14,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:47:14,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:47:14,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:47:14,971.971 INFO    ] time= 28/10/2026 10:47:14
[2026-10-28 10:47:15,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:47:15,010.010 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:47:15,116.116 INFO    ] No existing commands found in stream
[2026-10-28 10:47:20,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:47:20,148.148 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-28 10:47:23,976.976 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:47:23,979.979 INFO    ] Checking for system updates...
[2026-10-28 10:47:24,018.018 INFO    ] 200
[2026-10-28 10:47:24,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:47:24,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:47:24,081.081 INFO    ] No update needed
[2026-10-28 10:47:24,084.084 INFO    ] Checking for camera pi updates...
[2026-10-28 10:47:24,118.118 INFO    ] 200
[2026-10-28 10:47:24,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:47:24,162.162 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:47:24,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:47:24,265.265 INFO    ] No camera update needed
[2026-10-28 10:47:24,267.267 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:47:24,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:47:24,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:47:24,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:47:26,321.321 INFO    ] ================================================
[2026-10-28 10:47:26,337.337 INFO    ] Launching Daemon at Wed Oct 28 10:47:26 IST 2026
[2026-10-28 10:47:26,348.348 INFO    ] ================================================
[2026-10-28 10:47:26,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:47:26
[2026-10-28 10:47:27,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:47:27,793.793 INFO    ] Initializing speech engine...
[2026-10-28 10:47:27,802.802 INFO    ] 2026-10-28 10:47:27
[2026-10-28 10:47:28,050.050 INFO    ] 2026-10-28 10:47:28
[2026-10-28 10:47:28,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:47:32,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:47:32,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:47:34,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:47:34,829.829 INFO    ] time= 28/10/2026 10:47:34
[2026-10-28 10:47:34,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:47:34,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:47:34,919.919 INFO    ] No existing commands found in stream
[2026-10-28 10:47:39,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:47:39,931.931 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-28 10:47:41,336.336 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:47:41,338.338 INFO    ] Checking for system updates...
[2026-10-28 10:47:41,376.376 INFO    ] 200
[2026-10-28 10:47:41,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:47:41,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:47:41,433.433 INFO    ] No update needed
[2026-10-28 10:47:41,435.435 INFO    ] Checking for camera pi updates...
[2026-10-28 10:47:41,468.468 INFO    ] 200
[2026-10-28 10:47:41,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:47:41,510.510 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:47:41,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:47:41,594.594 INFO    ] No camera update needed
[2026-10-28 10:47:41,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:47:41,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:47:41,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:47:41,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:47:43,649.649 INFO    ] ================================================
[2026-10-28 10:47:43,665.665 INFO    ] Launching Daemon at Wed Oct 28 10:47:43 IST 2026
[2026-10-28 10:47:43,676.676 INFO    ] ================================================
[2026-10-28 10:47:44,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:47:44
[2026-10-28 10:47:44,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:47:45,122.122 INFO    ] Initializing speech engine...
[2026-10-28 10:47:45,142.142 INFO    ] 2026-10-28 10:47:45
[2026-10-28 10:47:45,425.425 INFO    ] 2026-10-28 10:47:45
[2026-10-28 10:47:45,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:47:45,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:47:45,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:47:45,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:47:46,047.047 INFO    ] time= 28/10/2026 10:47:45
[2026-10-28 10:47:46,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:47:46,074.074 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:47:46,213.213 INFO    ] No existing commands found in stream
[2026-10-28 10:47:51,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:47:51,238.238 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-28 10:47:55,534.534 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:47:55,536.536 INFO    ] Checking for system updates...
[2026-10-28 10:47:55,572.572 INFO    ] 200
[2026-10-28 10:47:55,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:47:55,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:47:55,629.629 INFO    ] No update needed
[2026-10-28 10:47:55,631.631 INFO    ] Checking for camera pi updates...
[2026-10-28 10:47:55,665.665 INFO    ] 200
[2026-10-28 10:47:55,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:47:55,712.712 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:47:55,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:47:55,894.894 INFO    ] No camera update needed
[2026-10-28 10:47:55,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:47:55,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:47:55,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:47:55,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:47:57,948.948 INFO    ] ================================================
[2026-10-28 10:47:57,963.963 INFO    ] Launching Daemon at Wed Oct 28 10:47:57 IST 2026
[2026-10-28 10:47:57,974.974 INFO    ] ================================================
[2026-10-28 10:47:58,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:47:58
[2026-10-28 10:47:59,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:47:59,565.565 INFO    ] Initializing speech engine...
[2026-10-28 10:47:59,570.570 INFO    ] 2026-10-28 10:47:59
[2026-10-28 10:47:59,850.850 INFO    ] 2026-10-28 10:47:59
[2026-10-28 10:47:59,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:48:00,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:48:00,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:48:00,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:48:00,652.652 INFO    ] time= 28/10/2026 10:48:00
[2026-10-28 10:48:00,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:48:00,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:48:00,868.868 INFO    ] No existing commands found in stream
[2026-10-28 10:48:05,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:48:05,890.890 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-28 10:48:08,503.503 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:48:08,506.506 INFO    ] Checking for system updates...
[2026-10-28 10:48:08,543.543 INFO    ] 200
[2026-10-28 10:48:08,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:48:08,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:48:08,602.602 INFO    ] No update needed
[2026-10-28 10:48:08,605.605 INFO    ] Checking for camera pi updates...
[2026-10-28 10:48:08,642.642 INFO    ] 200
[2026-10-28 10:48:08,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:48:08,685.685 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:48:08,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:48:08,764.764 INFO    ] No camera update needed
[2026-10-28 10:48:08,766.766 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:48:08,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:48:08,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:48:08,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:48:10,819.819 INFO    ] ================================================
[2026-10-28 10:48:10,835.835 INFO    ] Launching Daemon at Wed Oct 28 10:48:10 IST 2026
[2026-10-28 10:48:10,847.847 INFO    ] ================================================
[2026-10-28 10:48:11,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:48:11
[2026-10-28 10:48:12,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:48:12,314.314 INFO    ] Initializing speech engine...
[2026-10-28 10:48:12,327.327 INFO    ] 2026-10-28 10:48:12
[2026-10-28 10:48:12,604.604 INFO    ] 2026-10-28 10:48:12
[2026-10-28 10:48:12,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:48:12,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:48:12,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:48:13,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:48:13,183.183 INFO    ] time= 28/10/2026 10:48:13
[2026-10-28 10:48:13,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:48:13,254.254 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:48:13,401.401 INFO    ] No existing commands found in stream
[2026-10-28 10:48:18,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:48:18,424.424 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-28 10:48:19,335.335 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:48:19,338.338 INFO    ] Checking for system updates...
[2026-10-28 10:48:19,374.374 INFO    ] 200
[2026-10-28 10:48:19,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:48:19,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:48:19,433.433 INFO    ] No update needed
[2026-10-28 10:48:19,435.435 INFO    ] Checking for camera pi updates...
[2026-10-28 10:48:19,469.469 INFO    ] 200
[2026-10-28 10:48:19,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:48:19,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:48:19,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:48:19,598.598 INFO    ] No camera update needed
[2026-10-28 10:48:19,600.600 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:48:19,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:48:19,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:48:19,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:48:21,655.655 INFO    ] ================================================
[2026-10-28 10:48:21,671.671 INFO    ] Launching Daemon at Wed Oct 28 10:48:21 IST 2026
[2026-10-28 10:48:21,682.682 INFO    ] ================================================
[2026-10-28 10:48:22,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:48:22
[2026-10-28 10:48:23,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:48:23,337.337 INFO    ] Initializing speech engine...
[2026-10-28 10:48:23,350.350 INFO    ] 2026-10-28 10:48:23
[2026-10-28 10:48:23,638.638 INFO    ] 2026-10-28 10:48:23
[2026-10-28 10:48:23,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:48:23,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:48:23,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:48:24,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:48:24,202.202 INFO    ] time= 28/10/2026 10:48:24
[2026-10-28 10:48:24,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:48:24,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:48:24,406.406 INFO    ] No existing commands found in stream
[2026-10-28 10:48:29,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:48:29,437.437 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-28 10:48:30,214.214 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:48:30,217.217 INFO    ] Checking for system updates...
[2026-10-28 10:48:30,254.254 INFO    ] 200
[2026-10-28 10:48:30,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:48:30,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:48:30,314.314 INFO    ] No update needed
[2026-10-28 10:48:30,317.317 INFO    ] Checking for camera pi updates...
[2026-10-28 10:48:30,355.355 INFO    ] 200
[2026-10-28 10:48:30,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:48:30,398.398 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:48:30,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:48:30,508.508 INFO    ] No camera update needed
[2026-10-28 10:48:30,525.525 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:48:30,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:48:30,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:48:30,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:48:32,582.582 INFO    ] ================================================
[2026-10-28 10:48:32,599.599 INFO    ] Launching Daemon at Wed Oct 28 10:48:32 IST 2026
[2026-10-28 10:48:32,610.610 INFO    ] ================================================
[2026-10-28 10:48:33,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:48:33
[2026-10-28 10:48:33,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:48:34,038.038 INFO    ] Initializing speech engine...
[2026-10-28 10:48:34,044.044 INFO    ] 2026-10-28 10:48:34
[2026-10-28 10:48:34,345.345 INFO    ] 2026-10-28 10:48:34
[2026-10-28 10:48:34,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:48:34,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:48:34,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:48:34,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:48:34,931.931 INFO    ] time= 28/10/2026 10:48:34
[2026-10-28 10:48:34,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:48:35,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:48:35,167.167 INFO    ] No existing commands found in stream
[2026-10-28 10:48:40,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:48:40,187.187 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 10:48:40,893.893 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:48:40,896.896 INFO    ] Checking for system updates...
[2026-10-28 10:48:40,931.931 INFO    ] 200
[2026-10-28 10:48:40,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:48:40,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:48:40,989.989 INFO    ] No update needed
[2026-10-28 10:48:40,991.991 INFO    ] Checking for camera pi updates...
[2026-10-28 10:48:41,025.025 INFO    ] 200
[2026-10-28 10:48:41,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:48:41,072.072 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:48:41,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:48:41,153.153 INFO    ] No camera update needed
[2026-10-28 10:48:41,155.155 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:48:41,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:48:41,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:48:41,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:48:43,208.208 INFO    ] ================================================
[2026-10-28 10:48:43,223.223 INFO    ] Launching Daemon at Wed Oct 28 10:48:43 IST 2026
[2026-10-28 10:48:43,233.233 INFO    ] ================================================
[2026-10-28 10:48:43,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:48:43
[2026-10-28 10:48:44,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:48:44,900.900 INFO    ] Initializing speech engine...
[2026-10-28 10:48:44,907.907 INFO    ] 2026-10-28 10:48:44
[2026-10-28 10:48:45,214.214 INFO    ] 2026-10-28 10:48:45
[2026-10-28 10:48:45,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:48:45,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:48:45,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:48:45,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:48:45,940.940 INFO    ] time= 28/10/2026 10:48:45
[2026-10-28 10:48:45,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:48:46,034.034 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:48:46,162.162 INFO    ] No existing commands found in stream
[2026-10-28 10:48:51,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:48:51,184.184 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-28 10:48:53,062.062 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:48:53,065.065 INFO    ] Checking for system updates...
[2026-10-28 10:48:53,101.101 INFO    ] 200
[2026-10-28 10:48:53,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:48:53,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:48:53,159.159 INFO    ] No update needed
[2026-10-28 10:48:53,162.162 INFO    ] Checking for camera pi updates...
[2026-10-28 10:48:53,195.195 INFO    ] 200
[2026-10-28 10:48:53,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:48:53,238.238 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:48:53,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:48:53,324.324 INFO    ] No camera update needed
[2026-10-28 10:48:53,326.326 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:48:53,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:48:53,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:48:53,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:48:55,379.379 INFO    ] ================================================
[2026-10-28 10:48:55,394.394 INFO    ] Launching Daemon at Wed Oct 28 10:48:55 IST 2026
[2026-10-28 10:48:55,404.404 INFO    ] ================================================
[2026-10-28 10:48:55,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:48:55
[2026-10-28 10:48:56,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:48:56,850.850 INFO    ] Initializing speech engine...
[2026-10-28 10:48:56,870.870 INFO    ] 2026-10-28 10:48:56
[2026-10-28 10:48:57,145.145 INFO    ] 2026-10-28 10:48:57
[2026-10-28 10:48:57,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:48:57,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:48:57,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:48:57,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:48:57,671.671 INFO    ] time= 28/10/2026 10:48:57
[2026-10-28 10:48:57,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:48:57,757.757 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:48:57,919.919 INFO    ] No existing commands found in stream
[2026-10-28 10:49:02,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:49:02,949.949 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-28 10:49:04,171.171 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:49:04,174.174 INFO    ] Checking for system updates...
[2026-10-28 10:49:04,214.214 INFO    ] 200
[2026-10-28 10:49:04,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:49:04,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:49:04,278.278 INFO    ] No update needed
[2026-10-28 10:49:04,280.280 INFO    ] Checking for camera pi updates...
[2026-10-28 10:49:04,314.314 INFO    ] 200
[2026-10-28 10:49:04,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:49:04,358.358 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:49:04,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:49:04,441.441 INFO    ] No camera update needed
[2026-10-28 10:49:04,444.444 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:49:04,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:49:04,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:49:04,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:49:06,498.498 INFO    ] ================================================
[2026-10-28 10:49:06,514.514 INFO    ] Launching Daemon at Wed Oct 28 10:49:06 IST 2026
[2026-10-28 10:49:06,525.525 INFO    ] ================================================
[2026-10-28 10:49:07,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:49:07
[2026-10-28 10:49:07,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:49:07,992.992 INFO    ] Initializing speech engine...
[2026-10-28 10:49:08,000.000 INFO    ] 2026-10-28 10:49:07
[2026-10-28 10:49:08,269.269 INFO    ] 2026-10-28 10:49:08
[2026-10-28 10:49:08,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:49:08,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:49:08,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:49:08,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:49:08,836.836 INFO    ] time= 28/10/2026 10:49:08
[2026-10-28 10:49:08,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:49:08,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:49:09,059.059 INFO    ] No existing commands found in stream
[2026-10-28 10:49:14,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:49:14,093.093 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-28 10:49:15,318.318 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:49:15,320.320 INFO    ] Checking for system updates...
[2026-10-28 10:49:15,360.360 INFO    ] 200
[2026-10-28 10:49:15,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:49:15,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:49:15,418.418 INFO    ] No update needed
[2026-10-28 10:49:15,420.420 INFO    ] Checking for camera pi updates...
[2026-10-28 10:49:15,457.457 INFO    ] 200
[2026-10-28 10:49:15,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:49:15,500.500 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:49:15,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:49:15,566.566 INFO    ] No camera update needed
[2026-10-28 10:49:15,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:49:15,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:49:15,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:49:15,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:49:17,623.623 INFO    ] ================================================
[2026-10-28 10:49:17,638.638 INFO    ] Launching Daemon at Wed Oct 28 10:49:17 IST 2026
[2026-10-28 10:49:17,648.648 INFO    ] ================================================
[2026-10-28 10:49:18,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:49:18
[2026-10-28 10:49:18,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:49:19,106.106 INFO    ] Initializing speech engine...
[2026-10-28 10:49:19,113.113 INFO    ] 2026-10-28 10:49:19
[2026-10-28 10:49:19,363.363 INFO    ] 2026-10-28 10:49:19
[2026-10-28 10:49:19,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:49:19,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:49:19,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:49:19,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:49:19,918.918 INFO    ] time= 28/10/2026 10:49:19
[2026-10-28 10:49:19,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:49:19,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:49:20,074.074 INFO    ] No existing commands found in stream
[2026-10-28 10:49:25,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:49:25,091.091 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-28 10:49:26,936.936 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:49:26,939.939 INFO    ] Checking for system updates...
[2026-10-28 10:49:26,975.975 INFO    ] 200
[2026-10-28 10:49:26,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:49:27,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:49:27,032.032 INFO    ] No update needed
[2026-10-28 10:49:27,034.034 INFO    ] Checking for camera pi updates...
[2026-10-28 10:49:27,067.067 INFO    ] 200
[2026-10-28 10:49:27,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:49:27,110.110 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:49:27,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:49:27,195.195 INFO    ] No camera update needed
[2026-10-28 10:49:27,197.197 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:49:27,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:49:27,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:49:27,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:49:29,251.251 INFO    ] ================================================
[2026-10-28 10:49:29,266.266 INFO    ] Launching Daemon at Wed Oct 28 10:49:29 IST 2026
[2026-10-28 10:49:29,277.277 INFO    ] ================================================
[2026-10-28 10:49:29,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:49:29
[2026-10-28 10:49:30,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:49:30,740.740 INFO    ] Initializing speech engine...
[2026-10-28 10:49:30,746.746 INFO    ] 2026-10-28 10:49:30
[2026-10-28 10:49:31,012.012 INFO    ] 2026-10-28 10:49:31
[2026-10-28 10:49:31,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:49:31,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:49:31,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:49:31,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:49:31,614.614 INFO    ] time= 28/10/2026 10:49:31
[2026-10-28 10:49:31,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:49:31,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:49:31,823.823 INFO    ] No existing commands found in stream
[2026-10-28 10:49:36,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:49:36,855.855 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-28 10:49:40,776.776 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:49:40,779.779 INFO    ] Checking for system updates...
[2026-10-28 10:49:40,815.815 INFO    ] 200
[2026-10-28 10:49:40,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:49:40,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:49:40,893.893 INFO    ] No update needed
[2026-10-28 10:49:40,896.896 INFO    ] Checking for camera pi updates...
[2026-10-28 10:49:40,933.933 INFO    ] 200
[2026-10-28 10:49:40,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:49:40,976.976 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:49:41,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:49:41,080.080 INFO    ] No camera update needed
[2026-10-28 10:49:41,083.083 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:49:41,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:49:41,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:49:41,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:49:43,135.135 INFO    ] ================================================
[2026-10-28 10:49:43,150.150 INFO    ] Launching Daemon at Wed Oct 28 10:49:43 IST 2026
[2026-10-28 10:49:43,161.161 INFO    ] ================================================
[2026-10-28 10:49:43,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:49:43
[2026-10-28 10:49:44,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:49:44,579.579 INFO    ] Initializing speech engine...
[2026-10-28 10:49:44,588.588 INFO    ] 2026-10-28 10:49:44
[2026-10-28 10:49:44,841.841 INFO    ] 2026-10-28 10:49:44
[2026-10-28 10:49:44,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:49:45,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:49:45,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:49:45,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:49:45,429.429 INFO    ] time= 28/10/2026 10:49:45
[2026-10-28 10:49:45,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:49:45,443.443 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:49:45,570.570 INFO    ] No existing commands found in stream
[2026-10-28 10:49:50,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:49:50,604.604 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 10:49:55,696.696 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:49:55,699.699 INFO    ] Checking for system updates...
[2026-10-28 10:49:55,735.735 INFO    ] 200
[2026-10-28 10:49:55,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:49:55,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:49:55,802.802 INFO    ] No update needed
[2026-10-28 10:49:55,805.805 INFO    ] Checking for camera pi updates...
[2026-10-28 10:49:55,839.839 INFO    ] 200
[2026-10-28 10:49:55,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:49:55,890.890 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:49:55,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:49:55,987.987 INFO    ] No camera update needed
[2026-10-28 10:49:55,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:49:55,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:49:55,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:49:56,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:49:58,043.043 INFO    ] ================================================
[2026-10-28 10:49:58,059.059 INFO    ] Launching Daemon at Wed Oct 28 10:49:58 IST 2026
[2026-10-28 10:49:58,069.069 INFO    ] ================================================
[2026-10-28 10:49:58,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:49:58
[2026-10-28 10:49:59,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:49:59,732.732 INFO    ] Initializing speech engine...
[2026-10-28 10:49:59,738.738 INFO    ] 2026-10-28 10:49:59
[2026-10-28 10:50:00,025.025 INFO    ] 2026-10-28 10:50:00
[2026-10-28 10:50:00,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:50:00,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:50:00,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:50:00,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:50:00,790.790 INFO    ] time= 28/10/2026 10:50:00
[2026-10-28 10:50:00,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:50:00,895.895 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:50:01,091.091 INFO    ] No existing commands found in stream
[2026-10-28 10:50:06,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:50:06,126.126 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-28 10:50:10,540.540 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:50:10,543.543 INFO    ] Checking for system updates...
[2026-10-28 10:50:10,579.579 INFO    ] 200
[2026-10-28 10:50:10,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:50:10,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:50:10,646.646 INFO    ] No update needed
[2026-10-28 10:50:10,649.649 INFO    ] Checking for camera pi updates...
[2026-10-28 10:50:10,687.687 INFO    ] 200
[2026-10-28 10:50:10,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:50:10,732.732 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:50:10,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:50:10,819.819 INFO    ] No camera update needed
[2026-10-28 10:50:10,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:50:10,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:50:10,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:50:10,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:50:12,879.879 INFO    ] ================================================
[2026-10-28 10:50:12,897.897 INFO    ] Launching Daemon at Wed Oct 28 10:50:12 IST 2026
[2026-10-28 10:50:12,908.908 INFO    ] ================================================
[2026-10-28 10:50:13,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:50:13
[2026-10-28 10:50:14,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:50:14,389.389 INFO    ] Initializing speech engine...
[2026-10-28 10:50:14,394.394 INFO    ] 2026-10-28 10:50:14
[2026-10-28 10:50:14,657.657 INFO    ] 2026-10-28 10:50:14
[2026-10-28 10:50:14,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:50:14,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:50:14,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:50:15,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:50:15,199.199 INFO    ] time= 28/10/2026 10:50:15
[2026-10-28 10:50:15,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:50:15,246.246 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:50:15,376.376 INFO    ] No existing commands found in stream
[2026-10-28 10:50:20,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:50:20,409.409 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-28 10:50:24,172.172 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:50:24,175.175 INFO    ] Checking for system updates...
[2026-10-28 10:50:24,211.211 INFO    ] 200
[2026-10-28 10:50:24,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:50:24,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:50:24,278.278 INFO    ] No update needed
[2026-10-28 10:50:24,281.281 INFO    ] Checking for camera pi updates...
[2026-10-28 10:50:24,315.315 INFO    ] 200
[2026-10-28 10:50:24,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:50:24,359.359 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:50:24,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:50:24,444.444 INFO    ] No camera update needed
[2026-10-28 10:50:24,447.447 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:50:24,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:50:24,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:50:24,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:50:26,504.504 INFO    ] ================================================
[2026-10-28 10:50:26,519.519 INFO    ] Launching Daemon at Wed Oct 28 10:50:26 IST 2026
[2026-10-28 10:50:26,530.530 INFO    ] ================================================
[2026-10-28 10:50:27,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:50:27
[2026-10-28 10:50:27,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:50:27,960.960 INFO    ] Initializing speech engine...
[2026-10-28 10:50:27,970.970 INFO    ] 2026-10-28 10:50:27
[2026-10-28 10:50:28,245.245 INFO    ] 2026-10-28 10:50:28
[2026-10-28 10:50:28,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:50:28,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:50:28,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:50:28,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:50:28,820.820 INFO    ] time= 28/10/2026 10:50:28
[2026-10-28 10:50:28,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:50:28,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:50:28,949.949 INFO    ] No existing commands found in stream
[2026-10-28 10:50:33,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:50:33,960.960 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-28 10:50:37,542.542 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:50:37,544.544 INFO    ] Checking for system updates...
[2026-10-28 10:50:37,581.581 INFO    ] 200
[2026-10-28 10:50:37,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:50:37,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:50:37,640.640 INFO    ] No update needed
[2026-10-28 10:50:37,643.643 INFO    ] Checking for camera pi updates...
[2026-10-28 10:50:37,677.677 INFO    ] 200
[2026-10-28 10:50:37,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:50:37,721.721 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:50:37,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:50:37,809.809 INFO    ] No camera update needed
[2026-10-28 10:50:37,811.811 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:50:37,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:50:37,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:50:37,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:50:39,868.868 INFO    ] ================================================
[2026-10-28 10:50:39,883.883 INFO    ] Launching Daemon at Wed Oct 28 10:50:39 IST 2026
[2026-10-28 10:50:39,894.894 INFO    ] ================================================
[2026-10-28 10:50:40,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:50:40
[2026-10-28 10:50:41,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:50:41,308.308 INFO    ] Initializing speech engine...
[2026-10-28 10:50:41,317.317 INFO    ] 2026-10-28 10:50:41
[2026-10-28 10:50:41,610.610 INFO    ] 2026-10-28 10:50:41
[2026-10-28 10:50:41,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:50:41,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:50:41,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:50:42,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:50:42,212.212 INFO    ] time= 28/10/2026 10:50:42
[2026-10-28 10:50:42,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:50:42,237.237 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:50:42,367.367 INFO    ] No existing commands found in stream
[2026-10-28 10:50:47,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:50:47,383.383 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 10:50:51,691.691 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:50:51,694.694 INFO    ] Checking for system updates...
[2026-10-28 10:50:51,729.729 INFO    ] 200
[2026-10-28 10:50:51,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:50:51,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:50:51,788.788 INFO    ] No update needed
[2026-10-28 10:50:51,790.790 INFO    ] Checking for camera pi updates...
[2026-10-28 10:50:51,824.824 INFO    ] 200
[2026-10-28 10:50:51,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:50:51,870.870 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:50:51,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:50:51,960.960 INFO    ] No camera update needed
[2026-10-28 10:50:51,962.962 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:50:51,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:50:51,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:50:51,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:50:54,015.015 INFO    ] ================================================
[2026-10-28 10:50:54,030.030 INFO    ] Launching Daemon at Wed Oct 28 10:50:54 IST 2026
[2026-10-28 10:50:54,040.040 INFO    ] ================================================
[2026-10-28 10:50:54,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:50:54
[2026-10-28 10:50:55,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:50:55,582.582 INFO    ] Initializing speech engine...
[2026-10-28 10:50:55,591.591 INFO    ] 2026-10-28 10:50:55
[2026-10-28 10:50:55,867.867 INFO    ] 2026-10-28 10:50:55
[2026-10-28 10:50:55,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:50:56,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:50:56,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:50:56,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:50:56,428.428 INFO    ] time= 28/10/2026 10:50:56
[2026-10-28 10:50:56,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:50:56,476.476 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:50:56,598.598 INFO    ] No existing commands found in stream
[2026-10-28 10:51:01,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:51:01,631.631 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-28 10:51:04,093.093 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:51:04,095.095 INFO    ] Checking for system updates...
[2026-10-28 10:51:04,131.131 INFO    ] 200
[2026-10-28 10:51:04,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:51:04,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:51:04,188.188 INFO    ] No update needed
[2026-10-28 10:51:04,191.191 INFO    ] Checking for camera pi updates...
[2026-10-28 10:51:04,224.224 INFO    ] 200
[2026-10-28 10:51:04,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:51:04,268.268 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:51:04,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:51:04,353.353 INFO    ] No camera update needed
[2026-10-28 10:51:04,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:51:04,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:51:04,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:51:04,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:51:06,411.411 INFO    ] ================================================
[2026-10-28 10:51:06,426.426 INFO    ] Launching Daemon at Wed Oct 28 10:51:06 IST 2026
[2026-10-28 10:51:06,436.436 INFO    ] ================================================
[2026-10-28 10:51:07,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:51:07
[2026-10-28 10:51:07,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:51:07,889.889 INFO    ] Initializing speech engine...
[2026-10-28 10:51:07,898.898 INFO    ] 2026-10-28 10:51:07
[2026-10-28 10:51:08,158.158 INFO    ] 2026-10-28 10:51:08
[2026-10-28 10:51:08,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:51:08,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:51:08,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:51:08,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:51:08,715.715 INFO    ] time= 28/10/2026 10:51:08
[2026-10-28 10:51:08,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:51:08,752.752 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:51:08,886.886 INFO    ] No existing commands found in stream
[2026-10-28 10:51:13,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:51:13,914.914 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 10:51:15,089.089 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:51:15,092.092 INFO    ] Checking for system updates...
[2026-10-28 10:51:15,128.128 INFO    ] 200
[2026-10-28 10:51:15,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:51:15,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:51:15,185.185 INFO    ] No update needed
[2026-10-28 10:51:15,187.187 INFO    ] Checking for camera pi updates...
[2026-10-28 10:51:15,221.221 INFO    ] 200
[2026-10-28 10:51:15,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:51:15,264.264 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:51:15,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:51:15,343.343 INFO    ] No camera update needed
[2026-10-28 10:51:15,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:51:15,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:51:15,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:51:15,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:51:17,400.400 INFO    ] ================================================
[2026-10-28 10:51:17,415.415 INFO    ] Launching Daemon at Wed Oct 28 10:51:17 IST 2026
[2026-10-28 10:51:17,426.426 INFO    ] ================================================
[2026-10-28 10:51:18,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:51:18
[2026-10-28 10:51:18,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:51:18,883.883 INFO    ] Initializing speech engine...
[2026-10-28 10:51:18,893.893 INFO    ] 2026-10-28 10:51:18
[2026-10-28 10:51:19,143.143 INFO    ] 2026-10-28 10:51:19
[2026-10-28 10:51:19,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:51:19,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:51:19,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:51:19,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:51:19,747.747 INFO    ] time= 28/10/2026 10:51:19
[2026-10-28 10:51:19,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:51:19,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:51:19,954.954 INFO    ] No existing commands found in stream
[2026-10-28 10:51:24,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:51:24,972.972 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-28 10:51:25,973.973 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:51:25,976.976 INFO    ] Checking for system updates...
[2026-10-28 10:51:26,012.012 INFO    ] 200
[2026-10-28 10:51:26,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:51:26,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:51:26,070.070 INFO    ] No update needed
[2026-10-28 10:51:26,072.072 INFO    ] Checking for camera pi updates...
[2026-10-28 10:51:26,106.106 INFO    ] 200
[2026-10-28 10:51:26,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:51:26,149.149 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:51:26,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:51:26,240.240 INFO    ] No camera update needed
[2026-10-28 10:51:26,242.242 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:51:26,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:51:26,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:51:26,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:51:28,297.297 INFO    ] ================================================
[2026-10-28 10:51:28,313.313 INFO    ] Launching Daemon at Wed Oct 28 10:51:28 IST 2026
[2026-10-28 10:51:28,324.324 INFO    ] ================================================
[2026-10-28 10:51:28,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:51:28
[2026-10-28 10:51:29,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:51:29,771.771 INFO    ] Initializing speech engine...
[2026-10-28 10:51:29,781.781 INFO    ] 2026-10-28 10:51:29
[2026-10-28 10:51:30,042.042 INFO    ] 2026-10-28 10:51:30
[2026-10-28 10:51:30,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:51:30,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:51:30,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:51:30,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:51:30,634.634 INFO    ] time= 28/10/2026 10:51:30
[2026-10-28 10:51:30,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:51:30,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:51:30,836.836 INFO    ] No existing commands found in stream
[2026-10-28 10:51:35,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:51:35,849.849 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-28 10:51:40,330.330 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:51:40,333.333 INFO    ] Checking for system updates...
[2026-10-28 10:51:40,369.369 INFO    ] 200
[2026-10-28 10:51:40,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:51:40,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:51:40,428.428 INFO    ] No update needed
[2026-10-28 10:51:40,431.431 INFO    ] Checking for camera pi updates...
[2026-10-28 10:51:40,464.464 INFO    ] 200
[2026-10-28 10:51:40,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:51:40,507.507 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:51:40,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:51:40,592.592 INFO    ] No camera update needed
[2026-10-28 10:51:40,595.595 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:51:40,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:51:40,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:51:40,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:51:42,649.649 INFO    ] ================================================
[2026-10-28 10:51:42,664.664 INFO    ] Launching Daemon at Wed Oct 28 10:51:42 IST 2026
[2026-10-28 10:51:42,675.675 INFO    ] ================================================
[2026-10-28 10:51:43,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:51:43
[2026-10-28 10:51:43,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:51:44,095.095 INFO    ] Initializing speech engine...
[2026-10-28 10:51:44,101.101 INFO    ] 2026-10-28 10:51:44
[2026-10-28 10:51:44,396.396 INFO    ] 2026-10-28 10:51:44
[2026-10-28 10:51:44,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:51:44,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:51:44,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:51:45,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:51:45,036.036 INFO    ] time= 28/10/2026 10:51:45
[2026-10-28 10:51:45,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:51:45,061.061 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:51:45,179.179 INFO    ] No existing commands found in stream
[2026-10-28 10:51:50,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:51:50,217.217 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-28 10:51:52,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:51:52,320.320 INFO    ] Checking for system updates...
[2026-10-28 10:51:52,355.355 INFO    ] 200
[2026-10-28 10:51:52,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:51:52,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:51:52,411.411 INFO    ] No update needed
[2026-10-28 10:51:52,414.414 INFO    ] Checking for camera pi updates...
[2026-10-28 10:51:52,447.447 INFO    ] 200
[2026-10-28 10:51:52,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:51:52,490.490 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:51:52,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:51:52,577.577 INFO    ] No camera update needed
[2026-10-28 10:51:52,579.579 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:51:52,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:51:52,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:51:52,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:51:54,632.632 INFO    ] ================================================
[2026-10-28 10:51:54,647.647 INFO    ] Launching Daemon at Wed Oct 28 10:51:54 IST 2026
[2026-10-28 10:51:54,658.658 INFO    ] ================================================
[2026-10-28 10:51:55,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:51:55
[2026-10-28 10:51:55,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:51:56,117.117 INFO    ] Initializing speech engine...
[2026-10-28 10:51:56,126.126 INFO    ] 2026-10-28 10:51:56
[2026-10-28 10:51:56,390.390 INFO    ] 2026-10-28 10:51:56
[2026-10-28 10:51:56,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:51:56,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:51:56,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:51:56,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:51:56,935.935 INFO    ] time= 28/10/2026 10:51:56
[2026-10-28 10:51:56,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:51:56,962.962 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:51:57,091.091 INFO    ] No existing commands found in stream
[2026-10-28 10:52:02,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:52:02,116.116 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 10:52:06,064.064 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:52:06,067.067 INFO    ] Checking for system updates...
[2026-10-28 10:52:06,102.102 INFO    ] 200
[2026-10-28 10:52:06,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:52:06,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:52:06,159.159 INFO    ] No update needed
[2026-10-28 10:52:06,161.161 INFO    ] Checking for camera pi updates...
[2026-10-28 10:52:06,195.195 INFO    ] 200
[2026-10-28 10:52:06,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:52:06,237.237 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:52:06,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:52:06,441.441 INFO    ] No camera update needed
[2026-10-28 10:52:06,444.444 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:52:06,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:52:06,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:52:06,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:52:08,501.501 INFO    ] ================================================
[2026-10-28 10:52:08,516.516 INFO    ] Launching Daemon at Wed Oct 28 10:52:08 IST 2026
[2026-10-28 10:52:08,527.527 INFO    ] ================================================
[2026-10-28 10:52:09,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:52:09
[2026-10-28 10:52:09,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:52:10,155.155 INFO    ] Initializing speech engine...
[2026-10-28 10:52:10,164.164 INFO    ] 2026-10-28 10:52:10
[2026-10-28 10:52:10,436.436 INFO    ] 2026-10-28 10:52:10
[2026-10-28 10:52:10,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:52:11,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:52:11,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:52:11,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:52:11,477.477 INFO    ] time= 28/10/2026 10:52:11
[2026-10-28 10:52:11,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:52:11,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:52:11,627.627 INFO    ] No existing commands found in stream
[2026-10-28 10:52:16,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:52:16,645.645 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 10:52:20,890.890 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:52:20,893.893 INFO    ] Checking for system updates...
[2026-10-28 10:52:20,931.931 INFO    ] 200
[2026-10-28 10:52:20,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:52:20,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:52:20,991.991 INFO    ] No update needed
[2026-10-28 10:52:20,994.994 INFO    ] Checking for camera pi updates...
[2026-10-28 10:52:21,029.029 INFO    ] 200
[2026-10-28 10:52:21,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:52:21,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:52:21,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:52:21,132.132 INFO    ] No camera update needed
[2026-10-28 10:52:21,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:52:21,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:52:21,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:52:21,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:52:23,196.196 INFO    ] ================================================
[2026-10-28 10:52:23,210.210 INFO    ] Launching Daemon at Wed Oct 28 10:52:23 IST 2026
[2026-10-28 10:52:23,221.221 INFO    ] ================================================
[2026-10-28 10:52:23,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:52:23
[2026-10-28 10:52:24,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:52:24,858.858 INFO    ] Initializing speech engine...
[2026-10-28 10:52:24,866.866 INFO    ] 2026-10-28 10:52:24
[2026-10-28 10:52:25,170.170 INFO    ] 2026-10-28 10:52:25
[2026-10-28 10:52:25,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:52:25,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:52:25,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:52:25,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:52:25,933.933 INFO    ] time= 28/10/2026 10:52:25
[2026-10-28 10:52:25,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:52:26,032.032 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:52:26,147.147 INFO    ] No existing commands found in stream
[2026-10-28 10:52:31,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:52:31,161.161 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 10:52:34,896.896 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:52:34,899.899 INFO    ] Checking for system updates...
[2026-10-28 10:52:34,936.936 INFO    ] 200
[2026-10-28 10:52:34,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:52:34,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:52:34,995.995 INFO    ] No update needed
[2026-10-28 10:52:34,998.998 INFO    ] Checking for camera pi updates...
[2026-10-28 10:52:35,032.032 INFO    ] 200
[2026-10-28 10:52:35,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:52:35,076.076 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:52:35,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:52:35,166.166 INFO    ] No camera update needed
[2026-10-28 10:52:35,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:52:35,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:52:35,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:52:35,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:52:37,226.226 INFO    ] ================================================
[2026-10-28 10:52:37,241.241 INFO    ] Launching Daemon at Wed Oct 28 10:52:37 IST 2026
[2026-10-28 10:52:37,254.254 INFO    ] ================================================
[2026-10-28 10:52:37,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:52:37
[2026-10-28 10:52:38,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:52:38,723.723 INFO    ] Initializing speech engine...
[2026-10-28 10:52:38,728.728 INFO    ] 2026-10-28 10:52:38
[2026-10-28 10:52:38,974.974 INFO    ] 2026-10-28 10:52:38
[2026-10-28 10:52:39,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:52:39,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:52:39,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:52:39,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:52:39,529.529 INFO    ] time= 28/10/2026 10:52:39
[2026-10-28 10:52:39,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:52:39,553.553 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:52:39,749.749 INFO    ] No existing commands found in stream
[2026-10-28 10:52:44,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:52:44,782.782 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 10:52:47,972.972 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:52:47,974.974 INFO    ] Checking for system updates...
[2026-10-28 10:52:48,011.011 INFO    ] 200
[2026-10-28 10:52:48,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:52:48,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:52:48,076.076 INFO    ] No update needed
[2026-10-28 10:52:48,078.078 INFO    ] Checking for camera pi updates...
[2026-10-28 10:52:48,112.112 INFO    ] 200
[2026-10-28 10:52:48,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:52:48,154.154 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:52:48,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:52:48,240.240 INFO    ] No camera update needed
[2026-10-28 10:52:48,242.242 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:52:48,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:52:48,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:52:48,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:52:50,296.296 INFO    ] ================================================
[2026-10-28 10:52:50,311.311 INFO    ] Launching Daemon at Wed Oct 28 10:52:50 IST 2026
[2026-10-28 10:52:50,322.322 INFO    ] ================================================
[2026-10-28 10:52:50,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:52:50
[2026-10-28 10:52:51,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:52:51,797.797 INFO    ] Initializing speech engine...
[2026-10-28 10:52:51,814.814 INFO    ] 2026-10-28 10:52:51
[2026-10-28 10:52:52,075.075 INFO    ] 2026-10-28 10:52:52
[2026-10-28 10:52:52,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:52:52,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:52:52,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:52:52,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:52:52,838.838 INFO    ] time= 28/10/2026 10:52:52
[2026-10-28 10:52:52,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:52:52,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:52:53,062.062 INFO    ] No existing commands found in stream
[2026-10-28 10:52:58,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:52:58,084.084 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 10:53:03,061.061 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:53:03,064.064 INFO    ] Checking for system updates...
[2026-10-28 10:53:03,107.107 INFO    ] 200
[2026-10-28 10:53:03,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:53:03,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:53:03,174.174 INFO    ] No update needed
[2026-10-28 10:53:03,177.177 INFO    ] Checking for camera pi updates...
[2026-10-28 10:53:03,216.216 INFO    ] 200
[2026-10-28 10:53:03,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:53:03,277.277 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:53:03,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:53:03,372.372 INFO    ] No camera update needed
[2026-10-28 10:53:03,376.376 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:53:03,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:53:03,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:53:03,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:53:05,438.438 INFO    ] ================================================
[2026-10-28 10:53:05,453.453 INFO    ] Launching Daemon at Wed Oct 28 10:53:05 IST 2026
[2026-10-28 10:53:05,463.463 INFO    ] ================================================
[2026-10-28 10:53:06,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:53:06
[2026-10-28 10:53:06,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:53:06,862.862 INFO    ] Initializing speech engine...
[2026-10-28 10:53:06,875.875 INFO    ] 2026-10-28 10:53:06
[2026-10-28 10:53:07,140.140 INFO    ] 2026-10-28 10:53:07
[2026-10-28 10:53:07,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:53:07,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:53:07,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:53:07,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:53:07,728.728 INFO    ] time= 28/10/2026 10:53:07
[2026-10-28 10:53:07,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:53:07,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:53:07,911.911 INFO    ] No existing commands found in stream
[2026-10-28 10:53:12,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:53:12,940.940 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-28 10:53:17,371.371 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:53:17,374.374 INFO    ] Checking for system updates...
[2026-10-28 10:53:17,410.410 INFO    ] 200
[2026-10-28 10:53:17,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:53:17,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:53:17,475.475 INFO    ] No update needed
[2026-10-28 10:53:17,478.478 INFO    ] Checking for camera pi updates...
[2026-10-28 10:53:17,513.513 INFO    ] 200
[2026-10-28 10:53:17,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:53:17,562.562 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:53:17,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:53:17,648.648 INFO    ] No camera update needed
[2026-10-28 10:53:17,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:53:17,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:53:17,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:53:17,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:53:19,708.708 INFO    ] ================================================
[2026-10-28 10:53:19,723.723 INFO    ] Launching Daemon at Wed Oct 28 10:53:19 IST 2026
[2026-10-28 10:53:19,736.736 INFO    ] ================================================
[2026-10-28 10:53:20,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:53:20
[2026-10-28 10:53:21,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:53:21,359.359 INFO    ] Initializing speech engine...
[2026-10-28 10:53:21,366.366 INFO    ] 2026-10-28 10:53:21
[2026-10-28 10:53:21,637.637 INFO    ] 2026-10-28 10:53:21
[2026-10-28 10:53:21,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:53:21,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:53:21,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:53:22,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:53:22,183.183 INFO    ] time= 28/10/2026 10:53:22
[2026-10-28 10:53:22,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:53:22,212.212 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:53:22,340.340 INFO    ] No existing commands found in stream
[2026-10-28 10:53:27,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:53:27,371.371 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-28 10:53:29,933.933 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:53:29,936.936 INFO    ] Checking for system updates...
[2026-10-28 10:53:29,971.971 INFO    ] 200
[2026-10-28 10:53:29,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:53:30,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:53:30,032.032 INFO    ] No update needed
[2026-10-28 10:53:30,035.035 INFO    ] Checking for camera pi updates...
[2026-10-28 10:53:30,069.069 INFO    ] 200
[2026-10-28 10:53:30,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:53:30,112.112 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:53:30,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:53:30,177.177 INFO    ] No camera update needed
[2026-10-28 10:53:30,179.179 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:53:30,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:53:30,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:53:30,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:53:32,234.234 INFO    ] ================================================
[2026-10-28 10:53:32,249.249 INFO    ] Launching Daemon at Wed Oct 28 10:53:32 IST 2026
[2026-10-28 10:53:32,260.260 INFO    ] ================================================
[2026-10-28 10:53:32,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:53:32
[2026-10-28 10:53:33,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:53:33,826.826 INFO    ] Initializing speech engine...
[2026-10-28 10:53:33,834.834 INFO    ] 2026-10-28 10:53:33
[2026-10-28 10:53:34,085.085 INFO    ] 2026-10-28 10:53:34
[2026-10-28 10:53:34,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:53:34,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:53:34,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:53:34,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:53:34,655.655 INFO    ] time= 28/10/2026 10:53:34
[2026-10-28 10:53:34,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:53:34,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:53:34,814.814 INFO    ] No existing commands found in stream
[2026-10-28 10:53:39,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:53:39,835.835 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 10:53:40,530.530 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:53:40,532.532 INFO    ] Checking for system updates...
[2026-10-28 10:53:40,568.568 INFO    ] 200
[2026-10-28 10:53:40,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:53:40,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:53:40,626.626 INFO    ] No update needed
[2026-10-28 10:53:40,628.628 INFO    ] Checking for camera pi updates...
[2026-10-28 10:53:40,661.661 INFO    ] 200
[2026-10-28 10:53:40,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:53:40,704.704 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:53:40,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:53:40,807.807 INFO    ] No camera update needed
[2026-10-28 10:53:40,809.809 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:53:40,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:53:40,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:53:40,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:53:42,866.866 INFO    ] ================================================
[2026-10-28 10:53:42,881.881 INFO    ] Launching Daemon at Wed Oct 28 10:53:42 IST 2026
[2026-10-28 10:53:42,891.891 INFO    ] ================================================
[2026-10-28 10:53:43,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:53:43
[2026-10-28 10:53:44,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:53:44,511.511 INFO    ] Initializing speech engine...
[2026-10-28 10:53:44,525.525 INFO    ] 2026-10-28 10:53:44
[2026-10-28 10:53:44,796.796 INFO    ] 2026-10-28 10:53:44
[2026-10-28 10:53:44,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:53:45,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:53:45,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:53:45,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:53:45,344.344 INFO    ] time= 28/10/2026 10:53:45
[2026-10-28 10:53:45,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:53:45,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:53:45,502.502 INFO    ] No existing commands found in stream
[2026-10-28 10:53:50,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:53:50,528.528 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-28 10:53:53,811.811 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:53:53,814.814 INFO    ] Checking for system updates...
[2026-10-28 10:53:53,850.850 INFO    ] 200
[2026-10-28 10:53:53,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:53:53,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:53:53,910.910 INFO    ] No update needed
[2026-10-28 10:53:53,913.913 INFO    ] Checking for camera pi updates...
[2026-10-28 10:53:53,947.947 INFO    ] 200
[2026-10-28 10:53:53,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:53:53,992.992 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:53:54,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:53:54,077.077 INFO    ] No camera update needed
[2026-10-28 10:53:54,080.080 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:53:54,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:53:54,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:53:54,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:53:56,136.136 INFO    ] ================================================
[2026-10-28 10:53:56,151.151 INFO    ] Launching Daemon at Wed Oct 28 10:53:56 IST 2026
[2026-10-28 10:53:56,162.162 INFO    ] ================================================
[2026-10-28 10:53:56,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:53:56
[2026-10-28 10:53:57,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:53:57,578.578 INFO    ] Initializing speech engine...
[2026-10-28 10:53:57,587.587 INFO    ] 2026-10-28 10:53:57
[2026-10-28 10:53:57,882.882 INFO    ] 2026-10-28 10:53:57
[2026-10-28 10:53:57,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:53:58,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:53:58,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:53:58,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:53:58,484.484 INFO    ] time= 28/10/2026 10:53:58
[2026-10-28 10:53:58,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:53:58,525.525 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:53:58,662.662 INFO    ] No existing commands found in stream
[2026-10-28 10:54:03,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:54:03,688.688 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-28 10:54:06,587.587 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:54:06,590.590 INFO    ] Checking for system updates...
[2026-10-28 10:54:06,626.626 INFO    ] 200
[2026-10-28 10:54:06,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:54:06,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:54:06,685.685 INFO    ] No update needed
[2026-10-28 10:54:06,688.688 INFO    ] Checking for camera pi updates...
[2026-10-28 10:54:06,722.722 INFO    ] 200
[2026-10-28 10:54:06,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:54:06,770.770 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:54:06,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:54:06,854.854 INFO    ] No camera update needed
[2026-10-28 10:54:06,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:54:06,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:54:06,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:54:06,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:54:08,908.908 INFO    ] ================================================
[2026-10-28 10:54:08,923.923 INFO    ] Launching Daemon at Wed Oct 28 10:54:08 IST 2026
[2026-10-28 10:54:08,934.934 INFO    ] ================================================
[2026-10-28 10:54:09,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:54:09
[2026-10-28 10:54:10,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:54:10,548.548 INFO    ] Initializing speech engine...
[2026-10-28 10:54:10,561.561 INFO    ] 2026-10-28 10:54:10
[2026-10-28 10:54:10,875.875 INFO    ] 2026-10-28 10:54:10
[2026-10-28 10:54:10,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:54:11,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:54:11,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:54:11,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:54:11,548.548 INFO    ] time= 28/10/2026 10:54:11
[2026-10-28 10:54:11,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:54:11,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:54:11,810.810 INFO    ] No existing commands found in stream
[2026-10-28 10:54:16,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:54:16,847.847 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-28 10:54:19,420.420 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:54:19,423.423 INFO    ] Checking for system updates...
[2026-10-28 10:54:19,461.461 INFO    ] 200
[2026-10-28 10:54:19,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:54:19,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:54:19,520.520 INFO    ] No update needed
[2026-10-28 10:54:19,522.522 INFO    ] Checking for camera pi updates...
[2026-10-28 10:54:19,556.556 INFO    ] 200
[2026-10-28 10:54:19,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:54:19,602.602 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:54:19,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:54:19,779.779 INFO    ] No camera update needed
[2026-10-28 10:54:19,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:54:19,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:54:19,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:54:19,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:54:21,835.835 INFO    ] ================================================
[2026-10-28 10:54:21,850.850 INFO    ] Launching Daemon at Wed Oct 28 10:54:21 IST 2026
[2026-10-28 10:54:21,862.862 INFO    ] ================================================
[2026-10-28 10:54:22,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:54:22
[2026-10-28 10:54:23,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:54:23,351.351 INFO    ] Initializing speech engine...
[2026-10-28 10:54:23,357.357 INFO    ] 2026-10-28 10:54:23
[2026-10-28 10:54:23,624.624 INFO    ] 2026-10-28 10:54:23
[2026-10-28 10:54:23,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:54:23,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:54:23,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:54:24,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:54:24,178.178 INFO    ] time= 28/10/2026 10:54:24
[2026-10-28 10:54:24,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:54:24,223.223 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:54:24,337.337 INFO    ] No existing commands found in stream
[2026-10-28 10:54:29,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:54:29,360.360 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-28 10:54:32,358.358 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:54:32,362.362 INFO    ] Checking for system updates...
[2026-10-28 10:54:32,400.400 INFO    ] 200
[2026-10-28 10:54:32,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:54:32,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:54:32,457.457 INFO    ] No update needed
[2026-10-28 10:54:32,460.460 INFO    ] Checking for camera pi updates...
[2026-10-28 10:54:32,497.497 INFO    ] 200
[2026-10-28 10:54:32,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:54:32,545.545 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:54:32,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:54:32,650.650 INFO    ] No camera update needed
[2026-10-28 10:54:32,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:54:32,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:54:32,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:54:32,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:54:34,709.709 INFO    ] ================================================
[2026-10-28 10:54:34,725.725 INFO    ] Launching Daemon at Wed Oct 28 10:54:34 IST 2026
[2026-10-28 10:54:34,736.736 INFO    ] ================================================
[2026-10-28 10:54:35,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:54:35
[2026-10-28 10:54:36,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:54:36,406.406 INFO    ] Initializing speech engine...
[2026-10-28 10:54:36,418.418 INFO    ] 2026-10-28 10:54:36
[2026-10-28 10:54:36,688.688 INFO    ] 2026-10-28 10:54:36
[2026-10-28 10:54:36,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:54:37,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:54:37,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:54:37,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:54:37,411.411 INFO    ] time= 28/10/2026 10:54:37
[2026-10-28 10:54:37,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:54:37,502.502 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:54:37,664.664 INFO    ] No existing commands found in stream
[2026-10-28 10:54:42,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:54:42,692.692 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-28 10:54:45,180.180 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:54:45,183.183 INFO    ] Checking for system updates...
[2026-10-28 10:54:45,225.225 INFO    ] 200
[2026-10-28 10:54:45,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:54:45,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:54:45,286.286 INFO    ] No update needed
[2026-10-28 10:54:45,289.289 INFO    ] Checking for camera pi updates...
[2026-10-28 10:54:45,328.328 INFO    ] 200
[2026-10-28 10:54:45,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:54:45,373.373 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:54:45,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:54:45,461.461 INFO    ] No camera update needed
[2026-10-28 10:54:45,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:54:45,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:54:45,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:54:45,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:54:47,520.520 INFO    ] ================================================
[2026-10-28 10:54:47,535.535 INFO    ] Launching Daemon at Wed Oct 28 10:54:47 IST 2026
[2026-10-28 10:54:47,547.547 INFO    ] ================================================
[2026-10-28 10:54:48,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:54:48
[2026-10-28 10:54:48,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:54:49,010.010 INFO    ] Initializing speech engine...
[2026-10-28 10:54:49,019.019 INFO    ] 2026-10-28 10:54:49
[2026-10-28 10:54:49,277.277 INFO    ] 2026-10-28 10:54:49
[2026-10-28 10:54:49,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:54:49,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:54:49,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:54:49,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:54:49,851.851 INFO    ] time= 28/10/2026 10:54:49
[2026-10-28 10:54:49,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:54:49,877.877 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:54:49,987.987 INFO    ] No existing commands found in stream
[2026-10-28 10:54:55,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:54:55,019.019 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-28 10:54:58,130.130 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:54:58,133.133 INFO    ] Checking for system updates...
[2026-10-28 10:54:58,170.170 INFO    ] 200
[2026-10-28 10:54:58,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:54:58,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:54:58,231.231 INFO    ] No update needed
[2026-10-28 10:54:58,233.233 INFO    ] Checking for camera pi updates...
[2026-10-28 10:54:58,267.267 INFO    ] 200
[2026-10-28 10:54:58,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:54:58,309.309 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:54:58,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:54:58,389.389 INFO    ] No camera update needed
[2026-10-28 10:54:58,392.392 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:54:58,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:54:58,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:54:58,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:55:00,447.447 INFO    ] ================================================
[2026-10-28 10:55:00,462.462 INFO    ] Launching Daemon at Wed Oct 28 10:55:00 IST 2026
[2026-10-28 10:55:00,472.472 INFO    ] ================================================
[2026-10-28 10:55:01,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:55:01
[2026-10-28 10:55:02,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:55:02,444.444 INFO    ] Initializing speech engine...
[2026-10-28 10:55:02,468.468 INFO    ] 2026-10-28 10:55:02
[2026-10-28 10:55:02,783.783 INFO    ] 2026-10-28 10:55:02
[2026-10-28 10:55:02,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:55:03,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:55:03,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:55:03,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:55:03,335.335 INFO    ] time= 28/10/2026 10:55:03
[2026-10-28 10:55:03,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:55:03,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:55:03,533.533 INFO    ] No existing commands found in stream
[2026-10-28 10:55:08,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:55:08,549.549 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-28 10:55:11,692.692 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:55:11,695.695 INFO    ] Checking for system updates...
[2026-10-28 10:55:11,736.736 INFO    ] 200
[2026-10-28 10:55:11,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:55:11,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:55:11,794.794 INFO    ] No update needed
[2026-10-28 10:55:11,797.797 INFO    ] Checking for camera pi updates...
[2026-10-28 10:55:11,831.831 INFO    ] 200
[2026-10-28 10:55:11,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:55:11,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:55:11,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:55:11,955.955 INFO    ] No camera update needed
[2026-10-28 10:55:11,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:55:11,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:55:11,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:55:11,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:55:14,012.012 INFO    ] ================================================
[2026-10-28 10:55:14,028.028 INFO    ] Launching Daemon at Wed Oct 28 10:55:14 IST 2026
[2026-10-28 10:55:14,039.039 INFO    ] ================================================
[2026-10-28 10:55:14,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:55:14
[2026-10-28 10:55:15,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:55:15,543.543 INFO    ] Initializing speech engine...
[2026-10-28 10:55:15,552.552 INFO    ] 2026-10-28 10:55:15
[2026-10-28 10:55:15,860.860 INFO    ] 2026-10-28 10:55:15
[2026-10-28 10:55:15,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:55:16,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:55:16,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:55:16,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:55:16,504.504 INFO    ] time= 28/10/2026 10:55:16
[2026-10-28 10:55:16,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:55:16,585.585 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:55:16,774.774 INFO    ] No existing commands found in stream
[2026-10-28 10:55:21,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:55:21,794.794 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-28 10:55:25,891.891 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:55:25,894.894 INFO    ] Checking for system updates...
[2026-10-28 10:55:25,931.931 INFO    ] 200
[2026-10-28 10:55:25,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:55:25,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:55:25,992.992 INFO    ] No update needed
[2026-10-28 10:55:25,995.995 INFO    ] Checking for camera pi updates...
[2026-10-28 10:55:26,035.035 INFO    ] 200
[2026-10-28 10:55:26,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:55:26,080.080 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:55:26,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:55:26,166.166 INFO    ] No camera update needed
[2026-10-28 10:55:26,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:55:26,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:55:26,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:55:26,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:55:28,227.227 INFO    ] ================================================
[2026-10-28 10:55:28,242.242 INFO    ] Launching Daemon at Wed Oct 28 10:55:28 IST 2026
[2026-10-28 10:55:28,253.253 INFO    ] ================================================
[2026-10-28 10:55:28,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:55:28
[2026-10-28 10:55:29,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:55:29,664.664 INFO    ] Initializing speech engine...
[2026-10-28 10:55:29,679.679 INFO    ] 2026-10-28 10:55:29
[2026-10-28 10:55:29,946.946 INFO    ] 2026-10-28 10:55:29
[2026-10-28 10:55:29,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:55:30,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:55:30,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:55:30,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:55:30,511.511 INFO    ] time= 28/10/2026 10:55:30
[2026-10-28 10:55:30,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:55:30,535.535 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:55:30,683.683 INFO    ] No existing commands found in stream
[2026-10-28 10:55:35,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:55:35,712.712 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-28 10:55:37,774.774 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:55:37,776.776 INFO    ] Checking for system updates...
[2026-10-28 10:55:37,812.812 INFO    ] 200
[2026-10-28 10:55:37,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:55:37,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:55:37,871.871 INFO    ] No update needed
[2026-10-28 10:55:37,876.876 INFO    ] Checking for camera pi updates...
[2026-10-28 10:55:37,910.910 INFO    ] 200
[2026-10-28 10:55:37,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:55:37,955.955 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:55:38,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:55:38,041.041 INFO    ] No camera update needed
[2026-10-28 10:55:38,044.044 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:55:38,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:55:38,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:55:38,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:55:40,099.099 INFO    ] ================================================
[2026-10-28 10:55:40,114.114 INFO    ] Launching Daemon at Wed Oct 28 10:55:40 IST 2026
[2026-10-28 10:55:40,125.125 INFO    ] ================================================
[2026-10-28 10:55:40,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:55:40
[2026-10-28 10:55:41,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:55:41,802.802 INFO    ] Initializing speech engine...
[2026-10-28 10:55:41,808.808 INFO    ] 2026-10-28 10:55:41
[2026-10-28 10:55:42,090.090 INFO    ] 2026-10-28 10:55:42
[2026-10-28 10:55:42,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:55:42,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:55:42,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:55:42,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:55:42,849.849 INFO    ] time= 28/10/2026 10:55:42
[2026-10-28 10:55:42,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:55:42,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:55:43,102.102 INFO    ] No existing commands found in stream
[2026-10-28 10:55:48,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:55:48,117.117 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-28 10:55:49,172.172 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:55:49,175.175 INFO    ] Checking for system updates...
[2026-10-28 10:55:49,217.217 INFO    ] 200
[2026-10-28 10:55:49,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:55:49,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:55:49,284.284 INFO    ] No update needed
[2026-10-28 10:55:49,287.287 INFO    ] Checking for camera pi updates...
[2026-10-28 10:55:49,323.323 INFO    ] 200
[2026-10-28 10:55:49,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:55:49,368.368 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:55:49,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:55:49,459.459 INFO    ] No camera update needed
[2026-10-28 10:55:49,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:55:49,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:55:49,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:55:49,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:55:51,518.518 INFO    ] ================================================
[2026-10-28 10:55:51,533.533 INFO    ] Launching Daemon at Wed Oct 28 10:55:51 IST 2026
[2026-10-28 10:55:51,543.543 INFO    ] ================================================
[2026-10-28 10:55:52,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:55:52
[2026-10-28 10:55:52,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:55:52,998.998 INFO    ] Initializing speech engine...
[2026-10-28 10:55:53,005.005 INFO    ] 2026-10-28 10:55:53
[2026-10-28 10:55:53,266.266 INFO    ] 2026-10-28 10:55:53
[2026-10-28 10:55:53,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:55:53,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:55:53,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:55:53,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:55:53,860.860 INFO    ] time= 28/10/2026 10:55:53
[2026-10-28 10:55:53,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:55:53,878.878 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:55:54,058.058 INFO    ] No existing commands found in stream
[2026-10-28 10:55:59,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:55:59,081.081 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-28 10:56:03,585.585 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:56:03,588.588 INFO    ] Checking for system updates...
[2026-10-28 10:56:03,626.626 INFO    ] 200
[2026-10-28 10:56:03,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:56:03,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:56:03,683.683 INFO    ] No update needed
[2026-10-28 10:56:03,686.686 INFO    ] Checking for camera pi updates...
[2026-10-28 10:56:03,727.727 INFO    ] 200
[2026-10-28 10:56:03,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:56:03,772.772 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:56:03,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:56:03,865.865 INFO    ] No camera update needed
[2026-10-28 10:56:03,868.868 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:56:03,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:56:03,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:56:03,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:56:05,928.928 INFO    ] ================================================
[2026-10-28 10:56:05,943.943 INFO    ] Launching Daemon at Wed Oct 28 10:56:05 IST 2026
[2026-10-28 10:56:05,953.953 INFO    ] ================================================
[2026-10-28 10:56:06,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:56:06
[2026-10-28 10:56:07,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:56:07,376.376 INFO    ] Initializing speech engine...
[2026-10-28 10:56:07,381.381 INFO    ] 2026-10-28 10:56:07
[2026-10-28 10:56:07,667.667 INFO    ] 2026-10-28 10:56:07
[2026-10-28 10:56:07,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:56:07,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:56:08,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:56:08,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:56:08,229.229 INFO    ] time= 28/10/2026 10:56:08
[2026-10-28 10:56:08,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:56:08,277.277 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:56:08,438.438 INFO    ] No existing commands found in stream
[2026-10-28 10:56:13,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:56:13,472.472 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-28 10:56:18,652.652 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:56:18,655.655 INFO    ] Checking for system updates...
[2026-10-28 10:56:18,691.691 INFO    ] 200
[2026-10-28 10:56:18,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:56:18,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:56:18,750.750 INFO    ] No update needed
[2026-10-28 10:56:18,752.752 INFO    ] Checking for camera pi updates...
[2026-10-28 10:56:18,787.787 INFO    ] 200
[2026-10-28 10:56:18,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:56:18,831.831 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:56:18,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:56:18,934.934 INFO    ] No camera update needed
[2026-10-28 10:56:18,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:56:18,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:56:18,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:56:18,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:56:20,991.991 INFO    ] ================================================
[2026-10-28 10:56:21,007.007 INFO    ] Launching Daemon at Wed Oct 28 10:56:21 IST 2026
[2026-10-28 10:56:21,018.018 INFO    ] ================================================
[2026-10-28 10:56:21,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:56:21
[2026-10-28 10:56:22,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:56:22,440.440 INFO    ] Initializing speech engine...
[2026-10-28 10:56:22,449.449 INFO    ] 2026-10-28 10:56:22
[2026-10-28 10:56:22,698.698 INFO    ] 2026-10-28 10:56:22
[2026-10-28 10:56:22,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:56:22,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:56:22,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:56:23,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:56:23,250.250 INFO    ] time= 28/10/2026 10:56:23
[2026-10-28 10:56:23,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:56:23,277.277 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:56:23,414.414 INFO    ] No existing commands found in stream
[2026-10-28 10:56:28,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:56:28,448.448 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 10:56:32,155.155 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:56:32,158.158 INFO    ] Checking for system updates...
[2026-10-28 10:56:32,198.198 INFO    ] 200
[2026-10-28 10:56:32,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:56:32,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:56:32,262.262 INFO    ] No update needed
[2026-10-28 10:56:32,265.265 INFO    ] Checking for camera pi updates...
[2026-10-28 10:56:32,302.302 INFO    ] 200
[2026-10-28 10:56:32,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:56:32,348.348 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:56:32,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:56:32,445.445 INFO    ] No camera update needed
[2026-10-28 10:56:32,448.448 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:56:32,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:56:32,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:56:32,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:56:34,504.504 INFO    ] ================================================
[2026-10-28 10:56:34,520.520 INFO    ] Launching Daemon at Wed Oct 28 10:56:34 IST 2026
[2026-10-28 10:56:34,531.531 INFO    ] ================================================
[2026-10-28 10:56:35,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:56:35
[2026-10-28 10:56:35,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:56:35,939.939 INFO    ] Initializing speech engine...
[2026-10-28 10:56:35,952.952 INFO    ] 2026-10-28 10:56:35
[2026-10-28 10:56:36,238.238 INFO    ] 2026-10-28 10:56:36
[2026-10-28 10:56:36,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:56:36,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:56:36,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:56:36,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:56:36,848.848 INFO    ] time= 28/10/2026 10:56:36
[2026-10-28 10:56:36,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:56:36,885.885 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:56:37,017.017 INFO    ] No existing commands found in stream
[2026-10-28 10:56:42,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:56:42,042.042 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-28 10:56:46,134.134 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:56:46,136.136 INFO    ] Checking for system updates...
[2026-10-28 10:56:46,171.171 INFO    ] 200
[2026-10-28 10:56:46,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:56:46,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:56:46,228.228 INFO    ] No update needed
[2026-10-28 10:56:46,231.231 INFO    ] Checking for camera pi updates...
[2026-10-28 10:56:46,264.264 INFO    ] 200
[2026-10-28 10:56:46,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:56:46,306.306 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:56:46,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:56:46,387.387 INFO    ] No camera update needed
[2026-10-28 10:56:46,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:56:46,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:56:46,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:56:46,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:56:48,441.441 INFO    ] ================================================
[2026-10-28 10:56:48,457.457 INFO    ] Launching Daemon at Wed Oct 28 10:56:48 IST 2026
[2026-10-28 10:56:48,467.467 INFO    ] ================================================
[2026-10-28 10:56:49,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:56:49
[2026-10-28 10:56:49,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:56:49,920.920 INFO    ] Initializing speech engine...
[2026-10-28 10:56:49,929.929 INFO    ] 2026-10-28 10:56:49
[2026-10-28 10:56:50,226.226 INFO    ] 2026-10-28 10:56:50
[2026-10-28 10:56:50,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:56:50,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:56:50,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:56:50,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:56:50,851.851 INFO    ] time= 28/10/2026 10:56:50
[2026-10-28 10:56:50,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:56:50,877.877 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:56:51,009.009 INFO    ] No existing commands found in stream
[2026-10-28 10:56:56,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:56:56,042.042 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-28 10:56:58,951.951 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:56:58,954.954 INFO    ] Checking for system updates...
[2026-10-28 10:56:58,993.993 INFO    ] 200
[2026-10-28 10:56:58,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:56:59,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:56:59,051.051 INFO    ] No update needed
[2026-10-28 10:56:59,053.053 INFO    ] Checking for camera pi updates...
[2026-10-28 10:56:59,087.087 INFO    ] 200
[2026-10-28 10:56:59,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:56:59,129.129 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:56:59,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:56:59,219.219 INFO    ] No camera update needed
[2026-10-28 10:56:59,221.221 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:56:59,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:56:59,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:56:59,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:57:01,296.296 INFO    ] ================================================
[2026-10-28 10:57:01,341.341 INFO    ] Launching Daemon at Wed Oct 28 10:57:01 IST 2026
[2026-10-28 10:57:01,373.373 INFO    ] ================================================
[2026-10-28 10:57:02,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:57:02
[2026-10-28 10:57:02,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:57:03,002.002 INFO    ] Initializing speech engine...
[2026-10-28 10:57:03,024.024 INFO    ] 2026-10-28 10:57:03
[2026-10-28 10:57:03,302.302 INFO    ] 2026-10-28 10:57:03
[2026-10-28 10:57:03,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:57:03,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:57:03,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:57:03,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:57:03,916.916 INFO    ] time= 28/10/2026 10:57:03
[2026-10-28 10:57:03,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:57:03,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:57:04,064.064 INFO    ] No existing commands found in stream
[2026-10-28 10:57:09,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:57:09,089.089 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 10:57:10,331.331 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:57:10,333.333 INFO    ] Checking for system updates...
[2026-10-28 10:57:10,371.371 INFO    ] 200
[2026-10-28 10:57:10,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:57:10,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:57:10,436.436 INFO    ] No update needed
[2026-10-28 10:57:10,439.439 INFO    ] Checking for camera pi updates...
[2026-10-28 10:57:10,476.476 INFO    ] 200
[2026-10-28 10:57:10,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:57:10,525.525 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:57:10,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:57:10,629.629 INFO    ] No camera update needed
[2026-10-28 10:57:10,631.631 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:57:10,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:57:10,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:57:10,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:57:12,687.687 INFO    ] ================================================
[2026-10-28 10:57:12,703.703 INFO    ] Launching Daemon at Wed Oct 28 10:57:12 IST 2026
[2026-10-28 10:57:12,714.714 INFO    ] ================================================
[2026-10-28 10:57:13,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:57:13
[2026-10-28 10:57:13,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:57:14,177.177 INFO    ] Initializing speech engine...
[2026-10-28 10:57:14,187.187 INFO    ] 2026-10-28 10:57:14
[2026-10-28 10:57:14,441.441 INFO    ] 2026-10-28 10:57:14
[2026-10-28 10:57:14,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:57:14,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:57:14,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:57:14,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:57:14,989.989 INFO    ] time= 28/10/2026 10:57:14
[2026-10-28 10:57:15,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:57:15,025.025 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:57:15,162.162 INFO    ] No existing commands found in stream
[2026-10-28 10:57:20,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:57:20,195.195 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 10:57:21,302.302 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:57:21,305.305 INFO    ] Checking for system updates...
[2026-10-28 10:57:21,341.341 INFO    ] 200
[2026-10-28 10:57:21,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:57:21,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:57:21,398.398 INFO    ] No update needed
[2026-10-28 10:57:21,400.400 INFO    ] Checking for camera pi updates...
[2026-10-28 10:57:21,436.436 INFO    ] 200
[2026-10-28 10:57:21,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:57:21,478.478 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:57:21,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:57:21,562.562 INFO    ] No camera update needed
[2026-10-28 10:57:21,564.564 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:57:21,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:57:21,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:57:21,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:57:23,617.617 INFO    ] ================================================
[2026-10-28 10:57:23,632.632 INFO    ] Launching Daemon at Wed Oct 28 10:57:23 IST 2026
[2026-10-28 10:57:23,643.643 INFO    ] ================================================
[2026-10-28 10:57:24,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:57:24
[2026-10-28 10:57:24,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:57:25,236.236 INFO    ] Initializing speech engine...
[2026-10-28 10:57:25,250.250 INFO    ] 2026-10-28 10:57:25
[2026-10-28 10:57:25,530.530 INFO    ] 2026-10-28 10:57:25
[2026-10-28 10:57:25,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:57:25,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:57:25,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:57:26,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:57:26,134.134 INFO    ] time= 28/10/2026 10:57:26
[2026-10-28 10:57:26,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:57:26,231.231 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:57:26,433.433 INFO    ] No existing commands found in stream
[2026-10-28 10:57:31,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:57:31,462.462 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 10:57:36,104.104 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:57:36,107.107 INFO    ] Checking for system updates...
[2026-10-28 10:57:36,147.147 INFO    ] 200
[2026-10-28 10:57:36,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:57:36,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:57:36,215.215 INFO    ] No update needed
[2026-10-28 10:57:36,219.219 INFO    ] Checking for camera pi updates...
[2026-10-28 10:57:36,253.253 INFO    ] 200
[2026-10-28 10:57:36,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:57:36,297.297 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:57:36,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:57:36,380.380 INFO    ] No camera update needed
[2026-10-28 10:57:36,383.383 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:57:36,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:57:36,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:57:36,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:57:38,437.437 INFO    ] ================================================
[2026-10-28 10:57:38,451.451 INFO    ] Launching Daemon at Wed Oct 28 10:57:38 IST 2026
[2026-10-28 10:57:38,462.462 INFO    ] ================================================
[2026-10-28 10:57:39,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:57:39
[2026-10-28 10:57:39,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:57:39,957.957 INFO    ] Initializing speech engine...
[2026-10-28 10:57:39,966.966 INFO    ] 2026-10-28 10:57:39
[2026-10-28 10:57:40,211.211 INFO    ] 2026-10-28 10:57:40
[2026-10-28 10:57:40,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:57:40,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:57:40,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:57:40,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:57:40,766.766 INFO    ] time= 28/10/2026 10:57:40
[2026-10-28 10:57:40,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:57:40,805.805 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:57:40,931.931 INFO    ] No existing commands found in stream
[2026-10-28 10:57:45,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:57:45,964.964 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 10:57:46,730.730 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:57:46,733.733 INFO    ] Checking for system updates...
[2026-10-28 10:57:46,773.773 INFO    ] 200
[2026-10-28 10:57:46,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:57:46,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:57:46,832.832 INFO    ] No update needed
[2026-10-28 10:57:46,834.834 INFO    ] Checking for camera pi updates...
[2026-10-28 10:57:46,867.867 INFO    ] 200
[2026-10-28 10:57:46,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:57:46,917.917 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:57:47,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:57:47,019.019 INFO    ] No camera update needed
[2026-10-28 10:57:47,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:57:47,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:57:47,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:57:47,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:57:49,075.075 INFO    ] ================================================
[2026-10-28 10:57:49,090.090 INFO    ] Launching Daemon at Wed Oct 28 10:57:49 IST 2026
[2026-10-28 10:57:49,101.101 INFO    ] ================================================
[2026-10-28 10:57:49,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:57:49
[2026-10-28 10:57:50,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:57:50,568.568 INFO    ] Initializing speech engine...
[2026-10-28 10:57:50,578.578 INFO    ] 2026-10-28 10:57:50
[2026-10-28 10:57:50,850.850 INFO    ] 2026-10-28 10:57:50
[2026-10-28 10:57:50,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:57:51,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:57:51,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:57:51,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:57:51,423.423 INFO    ] time= 28/10/2026 10:57:51
[2026-10-28 10:57:51,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:57:51,438.438 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:57:51,565.565 INFO    ] No existing commands found in stream
[2026-10-28 10:57:56,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:57:56,599.599 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-28 10:57:58,690.690 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:57:58,692.692 INFO    ] Checking for system updates...
[2026-10-28 10:57:58,729.729 INFO    ] 200
[2026-10-28 10:57:58,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:57:58,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:57:58,788.788 INFO    ] No update needed
[2026-10-28 10:57:58,791.791 INFO    ] Checking for camera pi updates...
[2026-10-28 10:57:58,832.832 INFO    ] 200
[2026-10-28 10:57:58,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:57:58,879.879 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:57:58,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:57:58,962.962 INFO    ] No camera update needed
[2026-10-28 10:57:58,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:57:58,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:57:58,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:57:58,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:58:01,020.020 INFO    ] ================================================
[2026-10-28 10:58:01,035.035 INFO    ] Launching Daemon at Wed Oct 28 10:58:01 IST 2026
[2026-10-28 10:58:01,046.046 INFO    ] ================================================
[2026-10-28 10:58:01,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:58:01
[2026-10-28 10:58:02,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:58:02,720.720 INFO    ] Initializing speech engine...
[2026-10-28 10:58:02,727.727 INFO    ] 2026-10-28 10:58:02
[2026-10-28 10:58:03,051.051 INFO    ] 2026-10-28 10:58:03
[2026-10-28 10:58:03,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:58:03,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:58:03,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:58:03,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:58:03,644.644 INFO    ] time= 28/10/2026 10:58:03
[2026-10-28 10:58:03,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:58:03,672.672 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:58:03,813.813 INFO    ] No existing commands found in stream
[2026-10-28 10:58:08,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:58:08,848.848 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 10:58:11,828.828 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 10:58:11,831.831 INFO    ] Checking for system updates...
[2026-10-28 10:58:11,866.866 INFO    ] 200
[2026-10-28 10:58:11,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:58:11,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:58:11,924.924 INFO    ] No update needed
[2026-10-28 10:58:11,926.926 INFO    ] Checking for camera pi updates...
[2026-10-28 10:58:11,959.959 INFO    ] 200
[2026-10-28 10:58:11,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:58:12,003.003 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:58:12,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:58:12,102.102 INFO    ] No camera update needed
[2026-10-28 10:58:12,105.105 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:58:12,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:58:12,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:58:12,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:58:14,158.158 INFO    ] ================================================
[2026-10-28 10:58:14,173.173 INFO    ] Launching Daemon at Wed Oct 28 10:58:14 IST 2026
[2026-10-28 10:58:14,184.184 INFO    ] ================================================
[2026-10-28 10:58:14,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:58:14
[2026-10-28 10:58:15,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:58:15,756.756 INFO    ] Initializing speech engine...
[2026-10-28 10:58:15,764.764 INFO    ] 2026-10-28 10:58:15
[2026-10-28 10:58:16,077.077 INFO    ] 2026-10-28 10:58:16
[2026-10-28 10:58:16,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:58:16,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:58:16,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:58:16,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:58:16,819.819 INFO    ] time= 28/10/2026 10:58:16
[2026-10-28 10:58:16,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:58:16,923.923 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:58:17,124.124 INFO    ] No existing commands found in stream
[2026-10-28 10:58:22,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:58:22,157.157 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-28 10:58:26,395.395 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 10:58:26,398.398 INFO    ] Checking for system updates...
[2026-10-28 10:58:26,435.435 INFO    ] 200
[2026-10-28 10:58:26,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:58:26,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:58:26,495.495 INFO    ] No update needed
[2026-10-28 10:58:26,498.498 INFO    ] Checking for camera pi updates...
[2026-10-28 10:58:26,535.535 INFO    ] 200
[2026-10-28 10:58:26,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:58:26,579.579 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:58:26,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:58:26,672.672 INFO    ] No camera update needed
[2026-10-28 10:58:26,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:58:26,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:58:26,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:58:26,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:58:28,730.730 INFO    ] ================================================
[2026-10-28 10:58:28,745.745 INFO    ] Launching Daemon at Wed Oct 28 10:58:28 IST 2026
[2026-10-28 10:58:28,756.756 INFO    ] ================================================
[2026-10-28 10:58:29,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:58:29
[2026-10-28 10:58:30,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:58:30,323.323 INFO    ] Initializing speech engine...
[2026-10-28 10:58:30,341.341 INFO    ] 2026-10-28 10:58:30
[2026-10-28 10:58:30,605.605 INFO    ] 2026-10-28 10:58:30
[2026-10-28 10:58:30,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:58:30,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:58:30,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:58:31,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:58:31,190.190 INFO    ] time= 28/10/2026 10:58:31
[2026-10-28 10:58:31,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:58:31,240.240 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:58:31,359.359 INFO    ] No existing commands found in stream
[2026-10-28 10:58:36,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:58:36,395.395 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 10:58:37,794.794 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 10:58:37,797.797 INFO    ] Checking for system updates...
[2026-10-28 10:58:37,834.834 INFO    ] 200
[2026-10-28 10:58:37,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:58:37,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:58:37,893.893 INFO    ] No update needed
[2026-10-28 10:58:37,896.896 INFO    ] Checking for camera pi updates...
[2026-10-28 10:58:37,930.930 INFO    ] 200
[2026-10-28 10:58:37,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:58:37,975.975 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:58:38,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:58:38,165.165 INFO    ] No camera update needed
[2026-10-28 10:58:38,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:58:38,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:58:38,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:58:38,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:58:40,223.223 INFO    ] ================================================
[2026-10-28 10:58:40,238.238 INFO    ] Launching Daemon at Wed Oct 28 10:58:40 IST 2026
[2026-10-28 10:58:40,249.249 INFO    ] ================================================
[2026-10-28 10:58:40,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:58:40
[2026-10-28 10:58:41,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:58:41,695.695 INFO    ] Initializing speech engine...
[2026-10-28 10:58:41,704.704 INFO    ] 2026-10-28 10:58:41
[2026-10-28 10:58:41,961.961 INFO    ] 2026-10-28 10:58:41
[2026-10-28 10:58:42,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:58:42,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:58:42,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:58:42,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:58:42,521.521 INFO    ] time= 28/10/2026 10:58:42
[2026-10-28 10:58:42,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:58:42,555.555 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:58:42,697.697 INFO    ] No existing commands found in stream
[2026-10-28 10:58:47,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:58:47,725.725 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-28 10:58:51,150.150 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:58:51,153.153 INFO    ] Checking for system updates...
[2026-10-28 10:58:51,189.189 INFO    ] 200
[2026-10-28 10:58:51,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:58:51,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:58:51,252.252 INFO    ] No update needed
[2026-10-28 10:58:51,255.255 INFO    ] Checking for camera pi updates...
[2026-10-28 10:58:51,293.293 INFO    ] 200
[2026-10-28 10:58:51,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:58:51,342.342 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:58:51,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:58:51,429.429 INFO    ] No camera update needed
[2026-10-28 10:58:51,431.431 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:58:51,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:58:51,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:58:51,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:58:53,485.485 INFO    ] ================================================
[2026-10-28 10:58:53,500.500 INFO    ] Launching Daemon at Wed Oct 28 10:58:53 IST 2026
[2026-10-28 10:58:53,511.511 INFO    ] ================================================
[2026-10-28 10:58:54,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:58:54
[2026-10-28 10:58:54,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:58:54,910.910 INFO    ] Initializing speech engine...
[2026-10-28 10:58:54,933.933 INFO    ] 2026-10-28 10:58:54
[2026-10-28 10:58:55,190.190 INFO    ] 2026-10-28 10:58:55
[2026-10-28 10:58:55,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:58:55,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:58:55,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:58:55,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:58:55,757.757 INFO    ] time= 28/10/2026 10:58:55
[2026-10-28 10:58:55,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:58:55,781.781 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:58:55,902.902 INFO    ] No existing commands found in stream
[2026-10-28 10:59:00,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:59:00,925.925 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 10:59:05,336.336 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 10:59:05,339.339 INFO    ] Checking for system updates...
[2026-10-28 10:59:05,374.374 INFO    ] 200
[2026-10-28 10:59:05,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:59:05,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:59:05,432.432 INFO    ] No update needed
[2026-10-28 10:59:05,434.434 INFO    ] Checking for camera pi updates...
[2026-10-28 10:59:05,468.468 INFO    ] 200
[2026-10-28 10:59:05,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:59:05,511.511 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:59:05,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 10:59:05,609.609 INFO    ] No camera update needed
[2026-10-28 10:59:05,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:59:05,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:59:05,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:59:05,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:59:07,664.664 INFO    ] ================================================
[2026-10-28 10:59:07,679.679 INFO    ] Launching Daemon at Wed Oct 28 10:59:07 IST 2026
[2026-10-28 10:59:07,690.690 INFO    ] ================================================
[2026-10-28 10:59:08,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:59:08
[2026-10-28 10:59:08,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:59:09,157.157 INFO    ] Initializing speech engine...
[2026-10-28 10:59:09,171.171 INFO    ] 2026-10-28 10:59:09
[2026-10-28 10:59:09,438.438 INFO    ] 2026-10-28 10:59:09
[2026-10-28 10:59:09,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:59:09,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:59:09,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:59:10,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:59:10,184.184 INFO    ] time= 28/10/2026 10:59:10
[2026-10-28 10:59:10,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:59:10,262.262 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:59:10,414.414 INFO    ] No existing commands found in stream
[2026-10-28 10:59:15,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:59:15,429.429 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 10:59:19,231.231 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:59:19,233.233 INFO    ] Checking for system updates...
[2026-10-28 10:59:19,269.269 INFO    ] 200
[2026-10-28 10:59:19,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:59:19,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:59:19,326.326 INFO    ] No update needed
[2026-10-28 10:59:19,328.328 INFO    ] Checking for camera pi updates...
[2026-10-28 10:59:19,365.365 INFO    ] 200
[2026-10-28 10:59:19,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:59:19,410.410 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:59:19,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:59:19,491.491 INFO    ] No camera update needed
[2026-10-28 10:59:19,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:59:19,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:59:19,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:59:19,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:59:21,548.548 INFO    ] ================================================
[2026-10-28 10:59:21,563.563 INFO    ] Launching Daemon at Wed Oct 28 10:59:21 IST 2026
[2026-10-28 10:59:21,574.574 INFO    ] ================================================
[2026-10-28 10:59:22,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:59:22
[2026-10-28 10:59:22,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:59:23,184.184 INFO    ] Initializing speech engine...
[2026-10-28 10:59:23,196.196 INFO    ] 2026-10-28 10:59:23
[2026-10-28 10:59:23,479.479 INFO    ] 2026-10-28 10:59:23
[2026-10-28 10:59:23,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:59:23,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:59:23,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:59:24,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:59:24,247.247 INFO    ] time= 28/10/2026 10:59:24
[2026-10-28 10:59:24,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:59:24,318.318 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:59:24,481.481 INFO    ] No existing commands found in stream
[2026-10-28 10:59:29,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:59:29,503.503 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-28 10:59:34,145.145 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 10:59:34,148.148 INFO    ] Checking for system updates...
[2026-10-28 10:59:34,184.184 INFO    ] 200
[2026-10-28 10:59:34,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:59:34,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:59:34,242.242 INFO    ] No update needed
[2026-10-28 10:59:34,245.245 INFO    ] Checking for camera pi updates...
[2026-10-28 10:59:34,281.281 INFO    ] 200
[2026-10-28 10:59:34,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:59:34,324.324 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:59:34,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:59:34,414.414 INFO    ] No camera update needed
[2026-10-28 10:59:34,416.416 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:59:34,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:59:34,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:59:34,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:59:36,469.469 INFO    ] ================================================
[2026-10-28 10:59:36,484.484 INFO    ] Launching Daemon at Wed Oct 28 10:59:36 IST 2026
[2026-10-28 10:59:36,495.495 INFO    ] ================================================
[2026-10-28 10:59:37,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:59:37
[2026-10-28 10:59:37,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:59:38,104.104 INFO    ] Initializing speech engine...
[2026-10-28 10:59:38,109.109 INFO    ] 2026-10-28 10:59:38
[2026-10-28 10:59:38,397.397 INFO    ] 2026-10-28 10:59:38
[2026-10-28 10:59:38,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:59:38,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:59:38,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:59:39,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:59:39,128.128 INFO    ] time= 28/10/2026 10:59:39
[2026-10-28 10:59:39,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:59:39,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:59:39,380.380 INFO    ] No existing commands found in stream
[2026-10-28 10:59:44,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:59:44,394.394 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 10:59:48,821.821 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 10:59:48,824.824 INFO    ] Checking for system updates...
[2026-10-28 10:59:48,861.861 INFO    ] 200
[2026-10-28 10:59:48,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:59:48,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:59:48,919.919 INFO    ] No update needed
[2026-10-28 10:59:48,922.922 INFO    ] Checking for camera pi updates...
[2026-10-28 10:59:48,957.957 INFO    ] 200
[2026-10-28 10:59:48,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 10:59:49,001.001 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 10:59:49,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 10:59:49,093.093 INFO    ] No camera update needed
[2026-10-28 10:59:49,096.096 INFO    ] Script finished. Safe exiting...
[2026-10-28 10:59:49,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 10:59:49,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 10:59:49,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 10:59:51,149.149 INFO    ] ================================================
[2026-10-28 10:59:51,165.165 INFO    ] Launching Daemon at Wed Oct 28 10:59:51 IST 2026
[2026-10-28 10:59:51,176.176 INFO    ] ================================================
[2026-10-28 10:59:51,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 10:59:51
[2026-10-28 10:59:52,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 10:59:52,760.760 INFO    ] Initializing speech engine...
[2026-10-28 10:59:52,767.767 INFO    ] 2026-10-28 10:59:52
[2026-10-28 10:59:53,038.038 INFO    ] 2026-10-28 10:59:53
[2026-10-28 10:59:53,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 10:59:53,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 10:59:53,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 10:59:53,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 10:59:53,588.588 INFO    ] time= 28/10/2026 10:59:53
[2026-10-28 10:59:53,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 10:59:53,636.636 INFO    ] Checking for existing commands in stream...
[2026-10-28 10:59:53,808.808 INFO    ] No existing commands found in stream
[2026-10-28 10:59:58,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 10:59:58,843.843 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 11:00:01,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:00:01,705.705 INFO    ] Checking for system updates...
[2026-10-28 11:00:01,803.803 INFO    ] 200
[2026-10-28 11:00:01,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:00:02,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:00:02,022.022 INFO    ] No update needed
[2026-10-28 11:00:02,026.026 INFO    ] Checking for camera pi updates...
[2026-10-28 11:00:02,203.203 INFO    ] 200
[2026-10-28 11:00:02,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:00:02,417.417 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:00:03,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:00:03,353.353 INFO    ] No camera update needed
[2026-10-28 11:00:03,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:00:03,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:00:03,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:00:03,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:00:05,541.541 INFO    ] ================================================
[2026-10-28 11:00:05,597.597 INFO    ] Launching Daemon at Wed Oct 28 11:00:05 IST 2026
[2026-10-28 11:00:05,676.676 INFO    ] ================================================
[2026-10-28 11:00:06,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:00:06
[2026-10-28 11:00:07,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:00:07,340.340 INFO    ] Initializing speech engine...
[2026-10-28 11:00:07,368.368 INFO    ] 2026-10-28 11:00:07
[2026-10-28 11:00:07,635.635 INFO    ] 2026-10-28 11:00:07
[2026-10-28 11:00:07,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:00:07,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:00:07,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:00:08,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:00:08,213.213 INFO    ] time= 28/10/2026 11:00:08
[2026-10-28 11:00:08,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:00:08,260.260 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:00:08,419.419 INFO    ] No existing commands found in stream
[2026-10-28 11:00:13,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:00:13,437.437 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-28 11:00:14,147.147 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:00:14,149.149 INFO    ] Checking for system updates...
[2026-10-28 11:00:14,186.186 INFO    ] 200
[2026-10-28 11:00:14,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:00:14,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:00:14,244.244 INFO    ] No update needed
[2026-10-28 11:00:14,247.247 INFO    ] Checking for camera pi updates...
[2026-10-28 11:00:14,280.280 INFO    ] 200
[2026-10-28 11:00:14,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:00:14,327.327 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:00:14,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:00:14,409.409 INFO    ] No camera update needed
[2026-10-28 11:00:14,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:00:14,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:00:14,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:00:14,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:00:16,464.464 INFO    ] ================================================
[2026-10-28 11:00:16,479.479 INFO    ] Launching Daemon at Wed Oct 28 11:00:16 IST 2026
[2026-10-28 11:00:16,489.489 INFO    ] ================================================
[2026-10-28 11:00:17,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:00:17
[2026-10-28 11:00:17,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:00:18,075.075 INFO    ] Initializing speech engine...
[2026-10-28 11:00:18,089.089 INFO    ] 2026-10-28 11:00:18
[2026-10-28 11:00:18,359.359 INFO    ] 2026-10-28 11:00:18
[2026-10-28 11:00:18,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:00:18,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:00:18,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:00:18,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:00:18,959.959 INFO    ] time= 28/10/2026 11:00:18
[2026-10-28 11:00:18,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:00:18,973.973 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:00:19,143.143 INFO    ] No existing commands found in stream
[2026-10-28 11:00:24,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:00:24,176.176 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 11:00:25,248.248 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:00:25,250.250 INFO    ] Checking for system updates...
[2026-10-28 11:00:25,287.287 INFO    ] 200
[2026-10-28 11:00:25,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:00:25,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:00:25,344.344 INFO    ] No update needed
[2026-10-28 11:00:25,347.347 INFO    ] Checking for camera pi updates...
[2026-10-28 11:00:25,380.380 INFO    ] 200
[2026-10-28 11:00:25,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:00:25,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:00:25,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:00:25,506.506 INFO    ] No camera update needed
[2026-10-28 11:00:25,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:00:25,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:00:25,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:00:25,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:00:27,561.561 INFO    ] ================================================
[2026-10-28 11:00:27,577.577 INFO    ] Launching Daemon at Wed Oct 28 11:00:27 IST 2026
[2026-10-28 11:00:27,588.588 INFO    ] ================================================
[2026-10-28 11:00:28,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:00:28
[2026-10-28 11:00:28,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:00:29,046.046 INFO    ] Initializing speech engine...
[2026-10-28 11:00:29,051.051 INFO    ] 2026-10-28 11:00:29
[2026-10-28 11:00:29,312.312 INFO    ] 2026-10-28 11:00:29
[2026-10-28 11:00:29,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:00:29,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:00:29,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:00:29,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:00:29,867.867 INFO    ] time= 28/10/2026 11:00:29
[2026-10-28 11:00:29,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:00:29,902.902 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:00:30,024.024 INFO    ] No existing commands found in stream
[2026-10-28 11:00:35,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:00:35,057.057 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 11:00:36,294.294 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:00:36,298.298 INFO    ] Checking for system updates...
[2026-10-28 11:00:36,333.333 INFO    ] 200
[2026-10-28 11:00:36,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:00:36,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:00:36,390.390 INFO    ] No update needed
[2026-10-28 11:00:36,393.393 INFO    ] Checking for camera pi updates...
[2026-10-28 11:00:36,426.426 INFO    ] 200
[2026-10-28 11:00:36,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:00:36,469.469 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:00:36,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:00:36,585.585 INFO    ] No camera update needed
[2026-10-28 11:00:36,588.588 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:00:36,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:00:36,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:00:36,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:00:38,645.645 INFO    ] ================================================
[2026-10-28 11:00:38,660.660 INFO    ] Launching Daemon at Wed Oct 28 11:00:38 IST 2026
[2026-10-28 11:00:38,672.672 INFO    ] ================================================
[2026-10-28 11:00:39,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:00:39
[2026-10-28 11:00:39,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:00:40,092.092 INFO    ] Initializing speech engine...
[2026-10-28 11:00:40,101.101 INFO    ] 2026-10-28 11:00:40
[2026-10-28 11:00:40,352.352 INFO    ] 2026-10-28 11:00:40
[2026-10-28 11:00:40,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:00:40,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:00:40,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:00:40,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:00:40,957.957 INFO    ] time= 28/10/2026 11:00:40
[2026-10-28 11:00:40,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:00:40,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:00:41,089.089 INFO    ] No existing commands found in stream
[2026-10-28 11:00:46,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:00:46,106.106 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-28 11:00:47,531.531 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:00:47,534.534 INFO    ] Checking for system updates...
[2026-10-28 11:00:47,570.570 INFO    ] 200
[2026-10-28 11:00:47,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:00:47,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:00:47,630.630 INFO    ] No update needed
[2026-10-28 11:00:47,632.632 INFO    ] Checking for camera pi updates...
[2026-10-28 11:00:47,666.666 INFO    ] 200
[2026-10-28 11:00:47,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:00:47,708.708 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:00:47,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:00:47,889.889 INFO    ] No camera update needed
[2026-10-28 11:00:47,891.891 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:00:47,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:00:47,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:00:47,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:00:49,945.945 INFO    ] ================================================
[2026-10-28 11:00:49,960.960 INFO    ] Launching Daemon at Wed Oct 28 11:00:49 IST 2026
[2026-10-28 11:00:49,972.972 INFO    ] ================================================
[2026-10-28 11:00:50,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:00:50
[2026-10-28 11:00:51,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:00:51,410.410 INFO    ] Initializing speech engine...
[2026-10-28 11:00:51,420.420 INFO    ] 2026-10-28 11:00:51
[2026-10-28 11:00:51,679.679 INFO    ] 2026-10-28 11:00:51
[2026-10-28 11:00:51,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:00:52,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:00:52,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:00:52,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:00:52,238.238 INFO    ] time= 28/10/2026 11:00:52
[2026-10-28 11:00:52,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:00:52,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:00:52,396.396 INFO    ] No existing commands found in stream
[2026-10-28 11:00:57,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:00:57,435.435 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-28 11:00:59,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:00:59,369.369 INFO    ] Checking for system updates...
[2026-10-28 11:00:59,405.405 INFO    ] 200
[2026-10-28 11:00:59,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:00:59,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:00:59,464.464 INFO    ] No update needed
[2026-10-28 11:00:59,466.466 INFO    ] Checking for camera pi updates...
[2026-10-28 11:00:59,500.500 INFO    ] 200
[2026-10-28 11:00:59,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:00:59,548.548 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:00:59,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:00:59,633.633 INFO    ] No camera update needed
[2026-10-28 11:00:59,635.635 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:00:59,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:00:59,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:00:59,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:01:01,738.738 INFO    ] ================================================
[2026-10-28 11:01:01,826.826 INFO    ] Launching Daemon at Wed Oct 28 11:01:01 IST 2026
[2026-10-28 11:01:01,878.878 INFO    ] ================================================
[2026-10-28 11:01:02,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:01:02
[2026-10-28 11:01:03,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:01:03,699.699 INFO    ] Initializing speech engine...
[2026-10-28 11:01:03,704.704 INFO    ] 2026-10-28 11:01:03
[2026-10-28 11:01:04,046.046 INFO    ] 2026-10-28 11:01:03
[2026-10-28 11:01:04,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:01:04,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:01:04,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:01:04,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:01:04,641.641 INFO    ] time= 28/10/2026 11:01:04
[2026-10-28 11:01:04,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:01:04,678.678 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:01:04,831.831 INFO    ] No existing commands found in stream
[2026-10-28 11:01:09,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:01:09,865.865 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-28 11:01:10,555.555 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:01:10,558.558 INFO    ] Checking for system updates...
[2026-10-28 11:01:10,594.594 INFO    ] 200
[2026-10-28 11:01:10,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:01:10,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:01:10,659.659 INFO    ] No update needed
[2026-10-28 11:01:10,662.662 INFO    ] Checking for camera pi updates...
[2026-10-28 11:01:10,699.699 INFO    ] 200
[2026-10-28 11:01:10,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:01:10,744.744 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:01:10,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:01:10,830.830 INFO    ] No camera update needed
[2026-10-28 11:01:10,833.833 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:01:10,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:01:10,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:01:10,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:01:12,885.885 INFO    ] ================================================
[2026-10-28 11:01:12,900.900 INFO    ] Launching Daemon at Wed Oct 28 11:01:12 IST 2026
[2026-10-28 11:01:12,911.911 INFO    ] ================================================
[2026-10-28 11:01:13,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:01:13
[2026-10-28 11:01:14,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:01:14,319.319 INFO    ] Initializing speech engine...
[2026-10-28 11:01:14,337.337 INFO    ] 2026-10-28 11:01:14
[2026-10-28 11:01:14,585.585 INFO    ] 2026-10-28 11:01:14
[2026-10-28 11:01:14,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:01:14,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:01:14,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:01:15,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:01:15,148.148 INFO    ] time= 28/10/2026 11:01:15
[2026-10-28 11:01:15,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:01:15,189.189 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:01:15,316.316 INFO    ] No existing commands found in stream
[2026-10-28 11:01:20,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:01:20,349.349 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-28 11:01:21,768.768 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:01:21,771.771 INFO    ] Checking for system updates...
[2026-10-28 11:01:21,806.806 INFO    ] 200
[2026-10-28 11:01:21,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:01:21,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:01:21,864.864 INFO    ] No update needed
[2026-10-28 11:01:21,867.867 INFO    ] Checking for camera pi updates...
[2026-10-28 11:01:21,901.901 INFO    ] 200
[2026-10-28 11:01:21,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:01:21,944.944 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:01:22,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:01:22,029.029 INFO    ] No camera update needed
[2026-10-28 11:01:22,031.031 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:01:22,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:01:22,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:01:22,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:01:24,083.083 INFO    ] ================================================
[2026-10-28 11:01:24,099.099 INFO    ] Launching Daemon at Wed Oct 28 11:01:24 IST 2026
[2026-10-28 11:01:24,110.110 INFO    ] ================================================
[2026-10-28 11:01:24,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:01:24
[2026-10-28 11:01:25,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:01:25,730.730 INFO    ] Initializing speech engine...
[2026-10-28 11:01:25,743.743 INFO    ] 2026-10-28 11:01:25
[2026-10-28 11:01:26,052.052 INFO    ] 2026-10-28 11:01:26
[2026-10-28 11:01:26,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:01:26,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:01:26,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:01:26,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:01:26,820.820 INFO    ] time= 28/10/2026 11:01:26
[2026-10-28 11:01:26,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:01:26,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:01:27,103.103 INFO    ] No existing commands found in stream
[2026-10-28 11:01:32,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:01:32,136.136 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-28 11:01:32,986.986 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:01:32,989.989 INFO    ] Checking for system updates...
[2026-10-28 11:01:33,030.030 INFO    ] 200
[2026-10-28 11:01:33,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:01:33,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:01:33,094.094 INFO    ] No update needed
[2026-10-28 11:01:33,096.096 INFO    ] Checking for camera pi updates...
[2026-10-28 11:01:33,130.130 INFO    ] 200
[2026-10-28 11:01:33,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:01:33,176.176 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:01:33,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:01:33,264.264 INFO    ] No camera update needed
[2026-10-28 11:01:33,266.266 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:01:33,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:01:33,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:01:33,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:01:35,318.318 INFO    ] ================================================
[2026-10-28 11:01:35,334.334 INFO    ] Launching Daemon at Wed Oct 28 11:01:35 IST 2026
[2026-10-28 11:01:35,345.345 INFO    ] ================================================
[2026-10-28 11:01:35,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:01:35
[2026-10-28 11:01:36,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:01:36,753.753 INFO    ] Initializing speech engine...
[2026-10-28 11:01:36,761.761 INFO    ] 2026-10-28 11:01:36
[2026-10-28 11:01:37,055.055 INFO    ] 2026-10-28 11:01:37
[2026-10-28 11:01:37,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:01:37,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:01:37,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:01:37,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:01:37,691.691 INFO    ] time= 28/10/2026 11:01:37
[2026-10-28 11:01:37,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:01:37,718.718 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:01:37,843.843 INFO    ] No existing commands found in stream
[2026-10-28 11:01:42,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:01:42,871.871 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-28 11:01:46,209.209 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:01:46,212.212 INFO    ] Checking for system updates...
[2026-10-28 11:01:46,248.248 INFO    ] 200
[2026-10-28 11:01:46,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:01:46,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:01:46,309.309 INFO    ] No update needed
[2026-10-28 11:01:46,311.311 INFO    ] Checking for camera pi updates...
[2026-10-28 11:01:46,344.344 INFO    ] 200
[2026-10-28 11:01:46,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:01:46,388.388 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:01:46,467.467 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:01:46,469.469 INFO    ] No camera update needed
[2026-10-28 11:01:46,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:01:46,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:01:46,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:01:46,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:01:48,524.524 INFO    ] ================================================
[2026-10-28 11:01:48,539.539 INFO    ] Launching Daemon at Wed Oct 28 11:01:48 IST 2026
[2026-10-28 11:01:48,550.550 INFO    ] ================================================
[2026-10-28 11:01:49,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:01:49
[2026-10-28 11:01:49,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:01:50,010.010 INFO    ] Initializing speech engine...
[2026-10-28 11:01:50,017.017 INFO    ] 2026-10-28 11:01:50
[2026-10-28 11:01:50,265.265 INFO    ] 2026-10-28 11:01:50
[2026-10-28 11:01:50,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:01:50,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:01:50,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:01:50,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:01:50,822.822 INFO    ] time= 28/10/2026 11:01:50
[2026-10-28 11:01:50,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:01:50,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:01:50,974.974 INFO    ] No existing commands found in stream
[2026-10-28 11:01:55,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:01:55,991.991 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-28 11:01:58,469.469 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:01:58,472.472 INFO    ] Checking for system updates...
[2026-10-28 11:01:58,509.509 INFO    ] 200
[2026-10-28 11:01:58,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:01:58,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:01:58,567.567 INFO    ] No update needed
[2026-10-28 11:01:58,569.569 INFO    ] Checking for camera pi updates...
[2026-10-28 11:01:58,603.603 INFO    ] 200
[2026-10-28 11:01:58,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:01:58,647.647 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:01:58,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:01:58,733.733 INFO    ] No camera update needed
[2026-10-28 11:01:58,735.735 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:01:58,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:01:58,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:01:58,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:02:00,789.789 INFO    ] ================================================
[2026-10-28 11:02:00,804.804 INFO    ] Launching Daemon at Wed Oct 28 11:02:00 IST 2026
[2026-10-28 11:02:00,814.814 INFO    ] ================================================
[2026-10-28 11:02:01,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:02:01
[2026-10-28 11:02:02,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:02:02,462.462 INFO    ] Initializing speech engine...
[2026-10-28 11:02:02,477.477 INFO    ] 2026-10-28 11:02:02
[2026-10-28 11:02:02,814.814 INFO    ] 2026-10-28 11:02:02
[2026-10-28 11:02:02,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:02:03,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:02:03,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:02:03,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:02:03,300.300 INFO    ] time= 28/10/2026 11:02:03
[2026-10-28 11:02:03,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:02:03,314.314 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:02:03,412.412 INFO    ] No existing commands found in stream
[2026-10-28 11:02:08,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:02:08,451.451 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-28 11:02:11,465.465 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:02:11,468.468 INFO    ] Checking for system updates...
[2026-10-28 11:02:11,507.507 INFO    ] 200
[2026-10-28 11:02:11,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:02:11,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:02:11,570.570 INFO    ] No update needed
[2026-10-28 11:02:11,573.573 INFO    ] Checking for camera pi updates...
[2026-10-28 11:02:11,611.611 INFO    ] 200
[2026-10-28 11:02:11,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:02:11,654.654 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:02:11,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:02:11,738.738 INFO    ] No camera update needed
[2026-10-28 11:02:11,740.740 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:02:11,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:02:11,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:02:11,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:02:13,794.794 INFO    ] ================================================
[2026-10-28 11:02:13,810.810 INFO    ] Launching Daemon at Wed Oct 28 11:02:13 IST 2026
[2026-10-28 11:02:13,821.821 INFO    ] ================================================
[2026-10-28 11:02:14,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:02:14
[2026-10-28 11:02:15,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:02:15,424.424 INFO    ] Initializing speech engine...
[2026-10-28 11:02:15,432.432 INFO    ] 2026-10-28 11:02:15
[2026-10-28 11:02:15,714.714 INFO    ] 2026-10-28 11:02:15
[2026-10-28 11:02:15,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:02:16,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:02:16,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:02:16,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:02:16,281.281 INFO    ] time= 28/10/2026 11:02:16
[2026-10-28 11:02:16,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:02:16,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:02:16,446.446 INFO    ] No existing commands found in stream
[2026-10-28 11:02:21,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:02:21,479.479 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-28 11:02:22,812.812 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:02:22,816.816 INFO    ] Checking for system updates...
[2026-10-28 11:02:22,859.859 INFO    ] 200
[2026-10-28 11:02:22,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:02:22,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:02:22,929.929 INFO    ] No update needed
[2026-10-28 11:02:22,932.932 INFO    ] Checking for camera pi updates...
[2026-10-28 11:02:22,967.967 INFO    ] 200
[2026-10-28 11:02:22,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:02:23,011.011 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:02:23,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:02:23,066.066 INFO    ] No camera update needed
[2026-10-28 11:02:23,069.069 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:02:23,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:02:23,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:02:23,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:02:25,125.125 INFO    ] ================================================
[2026-10-28 11:02:25,141.141 INFO    ] Launching Daemon at Wed Oct 28 11:02:25 IST 2026
[2026-10-28 11:02:25,152.152 INFO    ] ================================================
[2026-10-28 11:02:25,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:02:25
[2026-10-28 11:02:26,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:02:26,702.702 INFO    ] Initializing speech engine...
[2026-10-28 11:02:26,717.717 INFO    ] 2026-10-28 11:02:26
[2026-10-28 11:02:26,988.988 INFO    ] 2026-10-28 11:02:26
[2026-10-28 11:02:27,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:02:27,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:02:27,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:02:27,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:02:27,716.716 INFO    ] time= 28/10/2026 11:02:27
[2026-10-28 11:02:27,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:02:27,822.822 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:02:27,979.979 INFO    ] No existing commands found in stream
[2026-10-28 11:02:32,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:02:33,001.001 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 11:02:33,770.770 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:02:33,772.772 INFO    ] Checking for system updates...
[2026-10-28 11:02:33,808.808 INFO    ] 200
[2026-10-28 11:02:33,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:02:33,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:02:33,868.868 INFO    ] No update needed
[2026-10-28 11:02:33,870.870 INFO    ] Checking for camera pi updates...
[2026-10-28 11:02:33,904.904 INFO    ] 200
[2026-10-28 11:02:33,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:02:33,946.946 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:02:34,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:02:34,052.052 INFO    ] No camera update needed
[2026-10-28 11:02:34,055.055 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:02:34,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:02:34,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:02:34,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:02:36,109.109 INFO    ] ================================================
[2026-10-28 11:02:36,125.125 INFO    ] Launching Daemon at Wed Oct 28 11:02:36 IST 2026
[2026-10-28 11:02:36,135.135 INFO    ] ================================================
[2026-10-28 11:02:36,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:02:36
[2026-10-28 11:02:37,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:02:37,588.588 INFO    ] Initializing speech engine...
[2026-10-28 11:02:37,595.595 INFO    ] 2026-10-28 11:02:37
[2026-10-28 11:02:37,840.840 INFO    ] 2026-10-28 11:02:37
[2026-10-28 11:02:37,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:02:38,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:02:38,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:02:38,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:02:38,403.403 INFO    ] time= 28/10/2026 11:02:38
[2026-10-28 11:02:38,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:02:38,431.431 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:02:38,562.562 INFO    ] No existing commands found in stream
[2026-10-28 11:02:43,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:02:43,579.579 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 11:02:47,293.293 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:02:47,297.297 INFO    ] Checking for system updates...
[2026-10-28 11:02:47,334.334 INFO    ] 200
[2026-10-28 11:02:47,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:02:47,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:02:47,392.392 INFO    ] No update needed
[2026-10-28 11:02:47,395.395 INFO    ] Checking for camera pi updates...
[2026-10-28 11:02:47,431.431 INFO    ] 200
[2026-10-28 11:02:47,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:02:47,476.476 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:02:47,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:02:47,532.532 INFO    ] No camera update needed
[2026-10-28 11:02:47,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:02:47,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:02:47,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:02:47,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:02:49,593.593 INFO    ] ================================================
[2026-10-28 11:02:49,608.608 INFO    ] Launching Daemon at Wed Oct 28 11:02:49 IST 2026
[2026-10-28 11:02:49,619.619 INFO    ] ================================================
[2026-10-28 11:02:50,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:02:50
[2026-10-28 11:02:50,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:02:51,077.077 INFO    ] Initializing speech engine...
[2026-10-28 11:02:51,086.086 INFO    ] 2026-10-28 11:02:51
[2026-10-28 11:02:51,386.386 INFO    ] 2026-10-28 11:02:51
[2026-10-28 11:02:51,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:02:51,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:02:51,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:02:51,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:02:51,960.960 INFO    ] time= 28/10/2026 11:02:51
[2026-10-28 11:02:52,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:02:52,037.037 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:02:52,170.170 INFO    ] No existing commands found in stream
[2026-10-28 11:02:57,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:02:57,200.200 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 11:02:59,547.547 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:02:59,550.550 INFO    ] Checking for system updates...
[2026-10-28 11:02:59,585.585 INFO    ] 200
[2026-10-28 11:02:59,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:02:59,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:02:59,642.642 INFO    ] No update needed
[2026-10-28 11:02:59,645.645 INFO    ] Checking for camera pi updates...
[2026-10-28 11:02:59,678.678 INFO    ] 200
[2026-10-28 11:02:59,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:02:59,721.721 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:02:59,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:02:59,924.924 INFO    ] No camera update needed
[2026-10-28 11:02:59,927.927 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:02:59,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:02:59,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:02:59,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:03:01,982.982 INFO    ] ================================================
[2026-10-28 11:03:02,004.004 INFO    ] Launching Daemon at Wed Oct 28 11:03:01 IST 2026
[2026-10-28 11:03:02,022.022 INFO    ] ================================================
[2026-10-28 11:03:02,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:03:02
[2026-10-28 11:03:03,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:03:03,640.640 INFO    ] Initializing speech engine...
[2026-10-28 11:03:03,648.648 INFO    ] 2026-10-28 11:03:03
[2026-10-28 11:03:03,909.909 INFO    ] 2026-10-28 11:03:03
[2026-10-28 11:03:03,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:03:04,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:03:04,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:03:04,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:03:04,470.470 INFO    ] time= 28/10/2026 11:03:04
[2026-10-28 11:03:04,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:03:04,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:03:04,662.662 INFO    ] No existing commands found in stream
[2026-10-28 11:03:09,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:03:09,695.695 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 11:03:10,848.848 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:03:10,851.851 INFO    ] Checking for system updates...
[2026-10-28 11:03:10,886.886 INFO    ] 200
[2026-10-28 11:03:10,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:03:10,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:03:10,948.948 INFO    ] No update needed
[2026-10-28 11:03:10,951.951 INFO    ] Checking for camera pi updates...
[2026-10-28 11:03:10,984.984 INFO    ] 200
[2026-10-28 11:03:10,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:03:11,026.026 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:03:11,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:03:11,106.106 INFO    ] No camera update needed
[2026-10-28 11:03:11,109.109 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:03:11,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:03:11,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:03:11,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:03:13,162.162 INFO    ] ================================================
[2026-10-28 11:03:13,178.178 INFO    ] Launching Daemon at Wed Oct 28 11:03:13 IST 2026
[2026-10-28 11:03:13,189.189 INFO    ] ================================================
[2026-10-28 11:03:13,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:03:13
[2026-10-28 11:03:14,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:03:14,607.607 INFO    ] Initializing speech engine...
[2026-10-28 11:03:14,618.618 INFO    ] 2026-10-28 11:03:14
[2026-10-28 11:03:14,866.866 INFO    ] 2026-10-28 11:03:14
[2026-10-28 11:03:14,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:03:15,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:03:15,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:03:15,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:03:15,430.430 INFO    ] time= 28/10/2026 11:03:15
[2026-10-28 11:03:15,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:03:15,454.454 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:03:15,590.590 INFO    ] No existing commands found in stream
[2026-10-28 11:03:20,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:03:20,605.605 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-28 11:03:23,862.862 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:03:23,865.865 INFO    ] Checking for system updates...
[2026-10-28 11:03:23,900.900 INFO    ] 200
[2026-10-28 11:03:23,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:03:23,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:03:23,958.958 INFO    ] No update needed
[2026-10-28 11:03:23,960.960 INFO    ] Checking for camera pi updates...
[2026-10-28 11:03:23,994.994 INFO    ] 200
[2026-10-28 11:03:23,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:03:24,036.036 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:03:24,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:03:24,130.130 INFO    ] No camera update needed
[2026-10-28 11:03:24,133.133 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:03:24,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:03:24,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:03:24,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:03:26,186.186 INFO    ] ================================================
[2026-10-28 11:03:26,201.201 INFO    ] Launching Daemon at Wed Oct 28 11:03:26 IST 2026
[2026-10-28 11:03:26,212.212 INFO    ] ================================================
[2026-10-28 11:03:26,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:03:26
[2026-10-28 11:03:27,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:03:27,627.627 INFO    ] Initializing speech engine...
[2026-10-28 11:03:27,636.636 INFO    ] 2026-10-28 11:03:27
[2026-10-28 11:03:27,881.881 INFO    ] 2026-10-28 11:03:27
[2026-10-28 11:03:27,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:03:28,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:03:28,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:03:28,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:03:28,435.435 INFO    ] time= 28/10/2026 11:03:28
[2026-10-28 11:03:28,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:03:28,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:03:28,586.586 INFO    ] No existing commands found in stream
[2026-10-28 11:03:33,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:03:33,600.600 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 11:03:36,864.864 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:03:36,867.867 INFO    ] Checking for system updates...
[2026-10-28 11:03:36,902.902 INFO    ] 200
[2026-10-28 11:03:36,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:03:36,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:03:36,964.964 INFO    ] No update needed
[2026-10-28 11:03:36,967.967 INFO    ] Checking for camera pi updates...
[2026-10-28 11:03:37,000.000 INFO    ] 200
[2026-10-28 11:03:37,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:03:37,051.051 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:03:37,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:03:37,135.135 INFO    ] No camera update needed
[2026-10-28 11:03:37,137.137 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:03:37,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:03:37,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:03:37,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:03:39,190.190 INFO    ] ================================================
[2026-10-28 11:03:39,206.206 INFO    ] Launching Daemon at Wed Oct 28 11:03:39 IST 2026
[2026-10-28 11:03:39,222.222 INFO    ] ================================================
[2026-10-28 11:03:39,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:03:39
[2026-10-28 11:03:40,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:03:40,775.775 INFO    ] Initializing speech engine...
[2026-10-28 11:03:40,789.789 INFO    ] 2026-10-28 11:03:40
[2026-10-28 11:03:41,053.053 INFO    ] 2026-10-28 11:03:41
[2026-10-28 11:03:41,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:03:41,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:03:41,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:03:41,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:03:41,668.668 INFO    ] time= 28/10/2026 11:03:41
[2026-10-28 11:03:41,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:03:41,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:03:41,888.888 INFO    ] No existing commands found in stream
[2026-10-28 11:03:46,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:03:46,943.943 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-28 11:03:50,943.943 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:03:50,946.946 INFO    ] Checking for system updates...
[2026-10-28 11:03:50,984.984 INFO    ] 200
[2026-10-28 11:03:50,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:03:51,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:03:51,042.042 INFO    ] No update needed
[2026-10-28 11:03:51,046.046 INFO    ] Checking for camera pi updates...
[2026-10-28 11:03:51,080.080 INFO    ] 200
[2026-10-28 11:03:51,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:03:51,125.125 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:03:51,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:03:51,219.219 INFO    ] No camera update needed
[2026-10-28 11:03:51,222.222 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:03:51,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:03:51,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:03:51,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:03:53,288.288 INFO    ] ================================================
[2026-10-28 11:03:53,303.303 INFO    ] Launching Daemon at Wed Oct 28 11:03:53 IST 2026
[2026-10-28 11:03:53,314.314 INFO    ] ================================================
[2026-10-28 11:03:53,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:03:53
[2026-10-28 11:03:54,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:03:54,754.754 INFO    ] Initializing speech engine...
[2026-10-28 11:03:54,763.763 INFO    ] 2026-10-28 11:03:54
[2026-10-28 11:03:55,009.009 INFO    ] 2026-10-28 11:03:55
[2026-10-28 11:03:55,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:03:55,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:03:55,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:03:55,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:03:55,563.563 INFO    ] time= 28/10/2026 11:03:55
[2026-10-28 11:03:55,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:03:55,604.604 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:03:55,741.741 INFO    ] No existing commands found in stream
[2026-10-28 11:04:00,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:04:00,769.769 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-28 11:04:02,209.209 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:04:02,212.212 INFO    ] Checking for system updates...
[2026-10-28 11:04:02,255.255 INFO    ] 200
[2026-10-28 11:04:02,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:04:02,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:04:02,320.320 INFO    ] No update needed
[2026-10-28 11:04:02,323.323 INFO    ] Checking for camera pi updates...
[2026-10-28 11:04:02,372.372 INFO    ] 200
[2026-10-28 11:04:02,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:04:02,432.432 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:04:02,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:04:02,544.544 INFO    ] No camera update needed
[2026-10-28 11:04:02,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:04:02,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:04:02,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:04:02,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:04:04,605.605 INFO    ] ================================================
[2026-10-28 11:04:04,620.620 INFO    ] Launching Daemon at Wed Oct 28 11:04:04 IST 2026
[2026-10-28 11:04:04,630.630 INFO    ] ================================================
[2026-10-28 11:04:05,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:04:05
[2026-10-28 11:04:05,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:04:06,026.026 INFO    ] Initializing speech engine...
[2026-10-28 11:04:06,048.048 INFO    ] 2026-10-28 11:04:06
[2026-10-28 11:04:06,304.304 INFO    ] 2026-10-28 11:04:06
[2026-10-28 11:04:06,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:04:06,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:04:06,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:04:06,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:04:06,886.886 INFO    ] time= 28/10/2026 11:04:06
[2026-10-28 11:04:06,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:04:06,911.911 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:04:07,055.055 INFO    ] No existing commands found in stream
[2026-10-28 11:04:12,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:04:12,073.073 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-28 11:04:17,866.866 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:04:17,868.868 INFO    ] Checking for system updates...
[2026-10-28 11:04:17,906.906 INFO    ] 200
[2026-10-28 11:04:17,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:04:17,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:04:17,963.963 INFO    ] No update needed
[2026-10-28 11:04:17,965.965 INFO    ] Checking for camera pi updates...
[2026-10-28 11:04:17,999.999 INFO    ] 200
[2026-10-28 11:04:18,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:04:18,041.041 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:04:18,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:04:18,126.126 INFO    ] No camera update needed
[2026-10-28 11:04:18,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:04:18,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:04:18,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:04:18,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:04:20,181.181 INFO    ] ================================================
[2026-10-28 11:04:20,196.196 INFO    ] Launching Daemon at Wed Oct 28 11:04:20 IST 2026
[2026-10-28 11:04:20,206.206 INFO    ] ================================================
[2026-10-28 11:04:20,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:04:20
[2026-10-28 11:04:21,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:04:21,621.621 INFO    ] Initializing speech engine...
[2026-10-28 11:04:21,630.630 INFO    ] 2026-10-28 11:04:21
[2026-10-28 11:04:21,880.880 INFO    ] 2026-10-28 11:04:21
[2026-10-28 11:04:21,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:04:22,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:04:22,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:04:22,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:04:22,446.446 INFO    ] time= 28/10/2026 11:04:22
[2026-10-28 11:04:22,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:04:22,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:04:22,604.604 INFO    ] No existing commands found in stream
[2026-10-28 11:04:27,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:04:27,627.627 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-28 11:04:30,426.426 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:04:30,429.429 INFO    ] Checking for system updates...
[2026-10-28 11:04:30,465.465 INFO    ] 200
[2026-10-28 11:04:30,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:04:30,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:04:30,526.526 INFO    ] No update needed
[2026-10-28 11:04:30,529.529 INFO    ] Checking for camera pi updates...
[2026-10-28 11:04:30,568.568 INFO    ] 200
[2026-10-28 11:04:30,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:04:30,614.614 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:04:30,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:04:30,701.701 INFO    ] No camera update needed
[2026-10-28 11:04:30,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:04:30,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:04:30,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:04:30,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:04:32,760.760 INFO    ] ================================================
[2026-10-28 11:04:32,775.775 INFO    ] Launching Daemon at Wed Oct 28 11:04:32 IST 2026
[2026-10-28 11:04:32,786.786 INFO    ] ================================================
[2026-10-28 11:04:33,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:04:33
[2026-10-28 11:04:34,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:04:34,353.353 INFO    ] Initializing speech engine...
[2026-10-28 11:04:34,361.361 INFO    ] 2026-10-28 11:04:34
[2026-10-28 11:04:34,628.628 INFO    ] 2026-10-28 11:04:34
[2026-10-28 11:04:34,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:04:34,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:04:34,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:04:35,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:04:35,190.190 INFO    ] time= 28/10/2026 11:04:35
[2026-10-28 11:04:35,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:04:35,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:04:35,334.334 INFO    ] No existing commands found in stream
[2026-10-28 11:04:40,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:04:40,367.367 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-28 11:04:43,504.504 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:04:43,507.507 INFO    ] Checking for system updates...
[2026-10-28 11:04:43,547.547 INFO    ] 200
[2026-10-28 11:04:43,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:04:43,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:04:43,610.610 INFO    ] No update needed
[2026-10-28 11:04:43,612.612 INFO    ] Checking for camera pi updates...
[2026-10-28 11:04:43,650.650 INFO    ] 200
[2026-10-28 11:04:43,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:04:43,702.702 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:04:43,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:04:43,773.773 INFO    ] No camera update needed
[2026-10-28 11:04:43,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:04:43,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:04:43,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:04:43,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:04:45,832.832 INFO    ] ================================================
[2026-10-28 11:04:45,846.846 INFO    ] Launching Daemon at Wed Oct 28 11:04:45 IST 2026
[2026-10-28 11:04:45,857.857 INFO    ] ================================================
[2026-10-28 11:04:46,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:04:46
[2026-10-28 11:04:47,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:04:47,290.290 INFO    ] Initializing speech engine...
[2026-10-28 11:04:47,314.314 INFO    ] 2026-10-28 11:04:47
[2026-10-28 11:04:47,582.582 INFO    ] 2026-10-28 11:04:47
[2026-10-28 11:04:47,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:04:47,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:04:47,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:04:48,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:04:48,093.093 INFO    ] time= 28/10/2026 11:04:48
[2026-10-28 11:04:48,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:04:48,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:04:48,337.337 INFO    ] No existing commands found in stream
[2026-10-28 11:04:53,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:04:53,358.358 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-28 11:04:55,569.569 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:04:55,572.572 INFO    ] Checking for system updates...
[2026-10-28 11:04:55,610.610 INFO    ] 200
[2026-10-28 11:04:55,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:04:55,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:04:55,670.670 INFO    ] No update needed
[2026-10-28 11:04:55,672.672 INFO    ] Checking for camera pi updates...
[2026-10-28 11:04:55,705.705 INFO    ] 200
[2026-10-28 11:04:55,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:04:55,747.747 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:04:55,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:04:55,849.849 INFO    ] No camera update needed
[2026-10-28 11:04:55,851.851 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:04:55,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:04:55,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:04:55,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:04:57,903.903 INFO    ] ================================================
[2026-10-28 11:04:57,918.918 INFO    ] Launching Daemon at Wed Oct 28 11:04:57 IST 2026
[2026-10-28 11:04:57,928.928 INFO    ] ================================================
[2026-10-28 11:04:58,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:04:58
[2026-10-28 11:04:59,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:04:59,346.346 INFO    ] Initializing speech engine...
[2026-10-28 11:04:59,355.355 INFO    ] 2026-10-28 11:04:59
[2026-10-28 11:04:59,605.605 INFO    ] 2026-10-28 11:04:59
[2026-10-28 11:04:59,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:04:59,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:04:59,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:05:00,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:05:00,171.171 INFO    ] time= 28/10/2026 11:05:00
[2026-10-28 11:05:00,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:05:00,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:05:00,330.330 INFO    ] No existing commands found in stream
[2026-10-28 11:05:05,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:05:05,348.348 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-28 11:05:08,132.132 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:05:08,135.135 INFO    ] Checking for system updates...
[2026-10-28 11:05:08,170.170 INFO    ] 200
[2026-10-28 11:05:08,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:05:08,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:05:08,229.229 INFO    ] No update needed
[2026-10-28 11:05:08,232.232 INFO    ] Checking for camera pi updates...
[2026-10-28 11:05:08,269.269 INFO    ] 200
[2026-10-28 11:05:08,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:05:08,311.311 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:05:08,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:05:08,416.416 INFO    ] No camera update needed
[2026-10-28 11:05:08,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:05:08,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:05:08,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:05:08,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:05:10,472.472 INFO    ] ================================================
[2026-10-28 11:05:10,487.487 INFO    ] Launching Daemon at Wed Oct 28 11:05:10 IST 2026
[2026-10-28 11:05:10,498.498 INFO    ] ================================================
[2026-10-28 11:05:11,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:05:11
[2026-10-28 11:05:11,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:05:11,937.937 INFO    ] Initializing speech engine...
[2026-10-28 11:05:11,962.962 INFO    ] 2026-10-28 11:05:11
[2026-10-28 11:05:12,229.229 INFO    ] 2026-10-28 11:05:12
[2026-10-28 11:05:12,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:05:12,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:05:12,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:05:12,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:05:12,849.849 INFO    ] time= 28/10/2026 11:05:12
[2026-10-28 11:05:12,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:05:12,860.860 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:05:13,023.023 INFO    ] No existing commands found in stream
[2026-10-28 11:05:18,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:05:18,041.041 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-28 11:05:21,929.929 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:05:21,932.932 INFO    ] Checking for system updates...
[2026-10-28 11:05:21,967.967 INFO    ] 200
[2026-10-28 11:05:21,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:05:22,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:05:22,029.029 INFO    ] No update needed
[2026-10-28 11:05:22,031.031 INFO    ] Checking for camera pi updates...
[2026-10-28 11:05:22,068.068 INFO    ] 200
[2026-10-28 11:05:22,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:05:22,111.111 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:05:22,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:05:22,193.193 INFO    ] No camera update needed
[2026-10-28 11:05:22,195.195 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:05:22,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:05:22,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:05:22,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:05:24,248.248 INFO    ] ================================================
[2026-10-28 11:05:24,263.263 INFO    ] Launching Daemon at Wed Oct 28 11:05:24 IST 2026
[2026-10-28 11:05:24,274.274 INFO    ] ================================================
[2026-10-28 11:05:24,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:05:24
[2026-10-28 11:05:25,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:05:25,990.990 INFO    ] Initializing speech engine...
[2026-10-28 11:05:26,000.000 INFO    ] 2026-10-28 11:05:25
[2026-10-28 11:05:26,260.260 INFO    ] 2026-10-28 11:05:26
[2026-10-28 11:05:26,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:05:26,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:05:26,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:05:26,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:05:26,885.885 INFO    ] time= 28/10/2026 11:05:26
[2026-10-28 11:05:26,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:05:26,911.911 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:05:27,093.093 INFO    ] No existing commands found in stream
[2026-10-28 11:05:32,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:05:32,118.118 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 11:05:33,289.289 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:05:33,292.292 INFO    ] Checking for system updates...
[2026-10-28 11:05:33,332.332 INFO    ] 200
[2026-10-28 11:05:33,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:05:33,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:05:33,396.396 INFO    ] No update needed
[2026-10-28 11:05:33,398.398 INFO    ] Checking for camera pi updates...
[2026-10-28 11:05:33,435.435 INFO    ] 200
[2026-10-28 11:05:33,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:05:33,477.477 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:05:33,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:05:33,572.572 INFO    ] No camera update needed
[2026-10-28 11:05:33,575.575 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:05:33,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:05:33,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:05:33,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:05:35,630.630 INFO    ] ================================================
[2026-10-28 11:05:35,645.645 INFO    ] Launching Daemon at Wed Oct 28 11:05:35 IST 2026
[2026-10-28 11:05:35,655.655 INFO    ] ================================================
[2026-10-28 11:05:36,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:05:36
[2026-10-28 11:05:36,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:05:37,068.068 INFO    ] Initializing speech engine...
[2026-10-28 11:05:37,074.074 INFO    ] 2026-10-28 11:05:37
[2026-10-28 11:05:37,375.375 INFO    ] 2026-10-28 11:05:37
[2026-10-28 11:05:37,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:05:37,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:05:37,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:05:37,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:05:37,986.986 INFO    ] time= 28/10/2026 11:05:37
[2026-10-28 11:05:38,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:05:38,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:05:38,155.155 INFO    ] No existing commands found in stream
[2026-10-28 11:05:43,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:05:43,183.183 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 11:05:47,350.350 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:05:47,353.353 INFO    ] Checking for system updates...
[2026-10-28 11:05:47,388.388 INFO    ] 200
[2026-10-28 11:05:47,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:05:47,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:05:47,451.451 INFO    ] No update needed
[2026-10-28 11:05:47,453.453 INFO    ] Checking for camera pi updates...
[2026-10-28 11:05:47,490.490 INFO    ] 200
[2026-10-28 11:05:47,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:05:47,534.534 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:05:47,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:05:47,619.619 INFO    ] No camera update needed
[2026-10-28 11:05:47,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:05:47,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:05:47,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:05:47,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:05:49,674.674 INFO    ] ================================================
[2026-10-28 11:05:49,689.689 INFO    ] Launching Daemon at Wed Oct 28 11:05:49 IST 2026
[2026-10-28 11:05:49,700.700 INFO    ] ================================================
[2026-10-28 11:05:50,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:05:50
[2026-10-28 11:05:51,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:05:51,334.334 INFO    ] Initializing speech engine...
[2026-10-28 11:05:51,340.340 INFO    ] 2026-10-28 11:05:51
[2026-10-28 11:05:51,619.619 INFO    ] 2026-10-28 11:05:51
[2026-10-28 11:05:51,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:05:52,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:05:52,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:05:52,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:05:52,341.341 INFO    ] time= 28/10/2026 11:05:52
[2026-10-28 11:05:52,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:05:52,422.422 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:05:52,565.565 INFO    ] No existing commands found in stream
[2026-10-28 11:05:57,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:05:57,582.582 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-28 11:05:59,556.556 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:05:59,559.559 INFO    ] Checking for system updates...
[2026-10-28 11:05:59,597.597 INFO    ] 200
[2026-10-28 11:05:59,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:05:59,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:05:59,656.656 INFO    ] No update needed
[2026-10-28 11:05:59,658.658 INFO    ] Checking for camera pi updates...
[2026-10-28 11:05:59,693.693 INFO    ] 200
[2026-10-28 11:05:59,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:05:59,739.739 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:05:59,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:05:59,826.826 INFO    ] No camera update needed
[2026-10-28 11:05:59,829.829 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:05:59,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:05:59,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:05:59,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:06:01,887.887 INFO    ] ================================================
[2026-10-28 11:06:01,905.905 INFO    ] Launching Daemon at Wed Oct 28 11:06:01 IST 2026
[2026-10-28 11:06:01,919.919 INFO    ] ================================================
[2026-10-28 11:06:02,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:06:02
[2026-10-28 11:06:03,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:06:03,554.554 INFO    ] Initializing speech engine...
[2026-10-28 11:06:03,565.565 INFO    ] 2026-10-28 11:06:03
[2026-10-28 11:06:03,847.847 INFO    ] 2026-10-28 11:06:03
[2026-10-28 11:06:03,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:06:04,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:06:04,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:06:04,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:06:04,433.433 INFO    ] time= 28/10/2026 11:06:04
[2026-10-28 11:06:04,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:06:04,495.495 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:06:04,640.640 INFO    ] No existing commands found in stream
[2026-10-28 11:06:09,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:06:09,678.678 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-28 11:06:12,557.557 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:06:12,560.560 INFO    ] Checking for system updates...
[2026-10-28 11:06:12,597.597 INFO    ] 200
[2026-10-28 11:06:12,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:06:12,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:06:12,660.660 INFO    ] No update needed
[2026-10-28 11:06:12,663.663 INFO    ] Checking for camera pi updates...
[2026-10-28 11:06:12,696.696 INFO    ] 200
[2026-10-28 11:06:12,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:06:12,742.742 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:06:12,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:06:12,846.846 INFO    ] No camera update needed
[2026-10-28 11:06:12,849.849 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:06:12,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:06:12,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:06:12,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:06:14,900.900 INFO    ] ================================================
[2026-10-28 11:06:14,915.915 INFO    ] Launching Daemon at Wed Oct 28 11:06:14 IST 2026
[2026-10-28 11:06:14,925.925 INFO    ] ================================================
[2026-10-28 11:06:15,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:06:15
[2026-10-28 11:06:16,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:06:16,380.380 INFO    ] Initializing speech engine...
[2026-10-28 11:06:16,392.392 INFO    ] 2026-10-28 11:06:16
[2026-10-28 11:06:16,655.655 INFO    ] 2026-10-28 11:06:16
[2026-10-28 11:06:16,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:06:16,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:06:16,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:06:17,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:06:17,210.210 INFO    ] time= 28/10/2026 11:06:17
[2026-10-28 11:06:17,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:06:17,237.237 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:06:17,366.366 INFO    ] No existing commands found in stream
[2026-10-28 11:06:22,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:06:22,388.388 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 11:06:23,131.131 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:06:23,133.133 INFO    ] Checking for system updates...
[2026-10-28 11:06:23,169.169 INFO    ] 200
[2026-10-28 11:06:23,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:06:23,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:06:23,228.228 INFO    ] No update needed
[2026-10-28 11:06:23,230.230 INFO    ] Checking for camera pi updates...
[2026-10-28 11:06:23,267.267 INFO    ] 200
[2026-10-28 11:06:23,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:06:23,313.313 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:06:23,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:06:23,397.397 INFO    ] No camera update needed
[2026-10-28 11:06:23,399.399 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:06:23,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:06:23,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:06:23,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:06:25,451.451 INFO    ] ================================================
[2026-10-28 11:06:25,467.467 INFO    ] Launching Daemon at Wed Oct 28 11:06:25 IST 2026
[2026-10-28 11:06:25,477.477 INFO    ] ================================================
[2026-10-28 11:06:26,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:06:26
[2026-10-28 11:06:26,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:06:26,952.952 INFO    ] Initializing speech engine...
[2026-10-28 11:06:26,962.962 INFO    ] 2026-10-28 11:06:26
[2026-10-28 11:06:27,236.236 INFO    ] 2026-10-28 11:06:27
[2026-10-28 11:06:27,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:06:27,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:06:27,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:06:27,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:06:27,798.798 INFO    ] time= 28/10/2026 11:06:27
[2026-10-28 11:06:27,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:06:27,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:06:27,996.996 INFO    ] No existing commands found in stream
[2026-10-28 11:06:33,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:06:33,036.036 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-28 11:06:35,265.265 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:06:35,268.268 INFO    ] Checking for system updates...
[2026-10-28 11:06:35,306.306 INFO    ] 200
[2026-10-28 11:06:35,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:06:35,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:06:35,369.369 INFO    ] No update needed
[2026-10-28 11:06:35,371.371 INFO    ] Checking for camera pi updates...
[2026-10-28 11:06:35,408.408 INFO    ] 200
[2026-10-28 11:06:35,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:06:35,455.455 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:06:35,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:06:35,560.560 INFO    ] No camera update needed
[2026-10-28 11:06:35,562.562 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:06:35,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:06:35,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:06:35,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:06:37,616.616 INFO    ] ================================================
[2026-10-28 11:06:37,631.631 INFO    ] Launching Daemon at Wed Oct 28 11:06:37 IST 2026
[2026-10-28 11:06:37,641.641 INFO    ] ================================================
[2026-10-28 11:06:38,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:06:38
[2026-10-28 11:06:38,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:06:39,221.221 INFO    ] Initializing speech engine...
[2026-10-28 11:06:39,230.230 INFO    ] 2026-10-28 11:06:39
[2026-10-28 11:06:39,496.496 INFO    ] 2026-10-28 11:06:39
[2026-10-28 11:06:39,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:06:39,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:06:39,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:06:40,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:06:40,054.054 INFO    ] time= 28/10/2026 11:06:40
[2026-10-28 11:06:40,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:06:40,090.090 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:06:40,216.216 INFO    ] No existing commands found in stream
[2026-10-28 11:06:45,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:06:45,244.244 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-28 11:06:48,369.369 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:06:48,372.372 INFO    ] Checking for system updates...
[2026-10-28 11:06:48,411.411 INFO    ] 200
[2026-10-28 11:06:48,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:06:48,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:06:48,468.468 INFO    ] No update needed
[2026-10-28 11:06:48,470.470 INFO    ] Checking for camera pi updates...
[2026-10-28 11:06:48,510.510 INFO    ] 200
[2026-10-28 11:06:48,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:06:48,557.557 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:06:48,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:06:48,639.639 INFO    ] No camera update needed
[2026-10-28 11:06:48,641.641 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:06:48,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:06:48,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:06:48,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:06:50,695.695 INFO    ] ================================================
[2026-10-28 11:06:50,710.710 INFO    ] Launching Daemon at Wed Oct 28 11:06:50 IST 2026
[2026-10-28 11:06:50,721.721 INFO    ] ================================================
[2026-10-28 11:06:51,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:06:51
[2026-10-28 11:06:52,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:06:52,290.290 INFO    ] Initializing speech engine...
[2026-10-28 11:06:52,299.299 INFO    ] 2026-10-28 11:06:52
[2026-10-28 11:06:52,571.571 INFO    ] 2026-10-28 11:06:52
[2026-10-28 11:06:52,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:06:52,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:06:53,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:06:53,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:06:53,288.288 INFO    ] time= 28/10/2026 11:06:53
[2026-10-28 11:06:53,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:06:53,378.378 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:06:53,543.543 INFO    ] No existing commands found in stream
[2026-10-28 11:06:58,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:06:58,572.572 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-28 11:07:00,531.531 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:07:00,534.534 INFO    ] Checking for system updates...
[2026-10-28 11:07:00,574.574 INFO    ] 200
[2026-10-28 11:07:00,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:07:00,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:07:00,636.636 INFO    ] No update needed
[2026-10-28 11:07:00,639.639 INFO    ] Checking for camera pi updates...
[2026-10-28 11:07:00,675.675 INFO    ] 200
[2026-10-28 11:07:00,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:07:00,719.719 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:07:00,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:07:00,802.802 INFO    ] No camera update needed
[2026-10-28 11:07:00,805.805 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:07:00,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:07:00,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:07:00,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:07:02,860.860 INFO    ] ================================================
[2026-10-28 11:07:02,875.875 INFO    ] Launching Daemon at Wed Oct 28 11:07:02 IST 2026
[2026-10-28 11:07:02,890.890 INFO    ] ================================================
[2026-10-28 11:07:03,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:07:03
[2026-10-28 11:07:04,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:07:04,351.351 INFO    ] Initializing speech engine...
[2026-10-28 11:07:04,359.359 INFO    ] 2026-10-28 11:07:04
[2026-10-28 11:07:04,645.645 INFO    ] 2026-10-28 11:07:04
[2026-10-28 11:07:04,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:07:04,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:07:04,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:07:05,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:07:05,222.222 INFO    ] time= 28/10/2026 11:07:05
[2026-10-28 11:07:05,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:07:05,291.291 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:07:05,424.424 INFO    ] No existing commands found in stream
[2026-10-28 11:07:10,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:07:10,442.442 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-28 11:07:14,090.090 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:07:14,093.093 INFO    ] Checking for system updates...
[2026-10-28 11:07:14,132.132 INFO    ] 200
[2026-10-28 11:07:14,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:07:14,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:07:14,196.196 INFO    ] No update needed
[2026-10-28 11:07:14,199.199 INFO    ] Checking for camera pi updates...
[2026-10-28 11:07:14,236.236 INFO    ] 200
[2026-10-28 11:07:14,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:07:14,284.284 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:07:14,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:07:14,481.481 INFO    ] No camera update needed
[2026-10-28 11:07:14,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:07:14,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:07:14,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:07:14,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:07:16,536.536 INFO    ] ================================================
[2026-10-28 11:07:16,551.551 INFO    ] Launching Daemon at Wed Oct 28 11:07:16 IST 2026
[2026-10-28 11:07:16,562.562 INFO    ] ================================================
[2026-10-28 11:07:17,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:07:17
[2026-10-28 11:07:17,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:07:17,965.965 INFO    ] Initializing speech engine...
[2026-10-28 11:07:17,971.971 INFO    ] 2026-10-28 11:07:17
[2026-10-28 11:07:18,268.268 INFO    ] 2026-10-28 11:07:18
[2026-10-28 11:07:18,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:07:18,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:07:18,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:07:18,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:07:18,884.884 INFO    ] time= 28/10/2026 11:07:18
[2026-10-28 11:07:18,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:07:18,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:07:19,059.059 INFO    ] No existing commands found in stream
[2026-10-28 11:07:24,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:07:24,092.092 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-28 11:07:25,170.170 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:07:25,172.172 INFO    ] Checking for system updates...
[2026-10-28 11:07:25,212.212 INFO    ] 200
[2026-10-28 11:07:25,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:07:25,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:07:25,276.276 INFO    ] No update needed
[2026-10-28 11:07:25,278.278 INFO    ] Checking for camera pi updates...
[2026-10-28 11:07:25,312.312 INFO    ] 200
[2026-10-28 11:07:25,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:07:25,355.355 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:07:25,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:07:25,453.453 INFO    ] No camera update needed
[2026-10-28 11:07:25,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:07:25,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:07:25,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:07:25,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:07:27,508.508 INFO    ] ================================================
[2026-10-28 11:07:27,524.524 INFO    ] Launching Daemon at Wed Oct 28 11:07:27 IST 2026
[2026-10-28 11:07:27,535.535 INFO    ] ================================================
[2026-10-28 11:07:28,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:07:28
[2026-10-28 11:07:28,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:07:28,954.954 INFO    ] Initializing speech engine...
[2026-10-28 11:07:28,962.962 INFO    ] 2026-10-28 11:07:28
[2026-10-28 11:07:29,257.257 INFO    ] 2026-10-28 11:07:29
[2026-10-28 11:07:29,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:07:29,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:07:29,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:07:29,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:07:29,798.798 INFO    ] time= 28/10/2026 11:07:29
[2026-10-28 11:07:29,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:07:29,881.881 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:07:30,018.018 INFO    ] No existing commands found in stream
[2026-10-28 11:07:35,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:07:35,041.041 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-28 11:07:36,250.250 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:07:36,252.252 INFO    ] Checking for system updates...
[2026-10-28 11:07:36,289.289 INFO    ] 200
[2026-10-28 11:07:36,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:07:36,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:07:36,349.349 INFO    ] No update needed
[2026-10-28 11:07:36,351.351 INFO    ] Checking for camera pi updates...
[2026-10-28 11:07:36,388.388 INFO    ] 200
[2026-10-28 11:07:36,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:07:36,436.436 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:07:36,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:07:36,541.541 INFO    ] No camera update needed
[2026-10-28 11:07:36,543.543 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:07:36,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:07:36,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:07:36,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:07:38,595.595 INFO    ] ================================================
[2026-10-28 11:07:38,611.611 INFO    ] Launching Daemon at Wed Oct 28 11:07:38 IST 2026
[2026-10-28 11:07:38,621.621 INFO    ] ================================================
[2026-10-28 11:07:39,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:07:39
[2026-10-28 11:07:39,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:07:40,237.237 INFO    ] Initializing speech engine...
[2026-10-28 11:07:40,245.245 INFO    ] 2026-10-28 11:07:40
[2026-10-28 11:07:40,529.529 INFO    ] 2026-10-28 11:07:40
[2026-10-28 11:07:40,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:07:41,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:07:41,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:07:41,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:07:41,361.361 INFO    ] time= 28/10/2026 11:07:41
[2026-10-28 11:07:41,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:07:41,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:07:41,632.632 INFO    ] No existing commands found in stream
[2026-10-28 11:07:46,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:07:46,647.647 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-28 11:07:50,012.012 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:07:50,015.015 INFO    ] Checking for system updates...
[2026-10-28 11:07:50,052.052 INFO    ] 200
[2026-10-28 11:07:50,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:07:50,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:07:50,118.118 INFO    ] No update needed
[2026-10-28 11:07:50,121.121 INFO    ] Checking for camera pi updates...
[2026-10-28 11:07:50,155.155 INFO    ] 200
[2026-10-28 11:07:50,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:07:50,204.204 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:07:50,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:07:50,277.277 INFO    ] No camera update needed
[2026-10-28 11:07:50,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:07:50,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:07:50,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:07:50,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:07:52,335.335 INFO    ] ================================================
[2026-10-28 11:07:52,350.350 INFO    ] Launching Daemon at Wed Oct 28 11:07:52 IST 2026
[2026-10-28 11:07:52,361.361 INFO    ] ================================================
[2026-10-28 11:07:52,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:07:52
[2026-10-28 11:07:53,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:07:53,951.951 INFO    ] Initializing speech engine...
[2026-10-28 11:07:53,965.965 INFO    ] 2026-10-28 11:07:53
[2026-10-28 11:07:54,244.244 INFO    ] 2026-10-28 11:07:54
[2026-10-28 11:07:54,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:07:54,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:07:54,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:07:54,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:07:54,790.790 INFO    ] time= 28/10/2026 11:07:54
[2026-10-28 11:07:54,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:07:54,829.829 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:07:54,937.937 INFO    ] No existing commands found in stream
[2026-10-28 11:07:59,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:07:59,976.976 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 11:08:01,858.858 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:08:01,861.861 INFO    ] Checking for system updates...
[2026-10-28 11:08:01,906.906 INFO    ] 200
[2026-10-28 11:08:01,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:08:01,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:08:01,971.971 INFO    ] No update needed
[2026-10-28 11:08:01,974.974 INFO    ] Checking for camera pi updates...
[2026-10-28 11:08:02,012.012 INFO    ] 200
[2026-10-28 11:08:02,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:08:02,061.061 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:08:02,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:08:02,182.182 INFO    ] No camera update needed
[2026-10-28 11:08:02,185.185 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:08:02,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:08:02,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:08:02,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:08:04,246.246 INFO    ] ================================================
[2026-10-28 11:08:04,261.261 INFO    ] Launching Daemon at Wed Oct 28 11:08:04 IST 2026
[2026-10-28 11:08:04,271.271 INFO    ] ================================================
[2026-10-28 11:08:04,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:08:04
[2026-10-28 11:08:05,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:08:05,922.922 INFO    ] Initializing speech engine...
[2026-10-28 11:08:05,936.936 INFO    ] 2026-10-28 11:08:05
[2026-10-28 11:08:06,226.226 INFO    ] 2026-10-28 11:08:06
[2026-10-28 11:08:06,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:08:06,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:08:06,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:08:06,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:08:06,919.919 INFO    ] time= 28/10/2026 11:08:06
[2026-10-28 11:08:06,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:08:07,025.025 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:08:07,163.163 INFO    ] No existing commands found in stream
[2026-10-28 11:08:12,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:08:12,181.181 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-28 11:08:13,839.839 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:08:13,842.842 INFO    ] Checking for system updates...
[2026-10-28 11:08:13,880.880 INFO    ] 200
[2026-10-28 11:08:13,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:08:13,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:08:13,948.948 INFO    ] No update needed
[2026-10-28 11:08:13,951.951 INFO    ] Checking for camera pi updates...
[2026-10-28 11:08:13,989.989 INFO    ] 200
[2026-10-28 11:08:13,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:08:14,035.035 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:08:14,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:08:14,126.126 INFO    ] No camera update needed
[2026-10-28 11:08:14,128.128 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:08:14,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:08:14,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:08:14,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:08:16,184.184 INFO    ] ================================================
[2026-10-28 11:08:16,199.199 INFO    ] Launching Daemon at Wed Oct 28 11:08:16 IST 2026
[2026-10-28 11:08:16,209.209 INFO    ] ================================================
[2026-10-28 11:08:16,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:08:16
[2026-10-28 11:08:17,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:08:17,860.860 INFO    ] Initializing speech engine...
[2026-10-28 11:08:17,871.871 INFO    ] 2026-10-28 11:08:17
[2026-10-28 11:08:18,156.156 INFO    ] 2026-10-28 11:08:18
[2026-10-28 11:08:18,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:08:18,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:08:18,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:08:18,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:08:18,702.702 INFO    ] time= 28/10/2026 11:08:18
[2026-10-28 11:08:18,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:08:18,742.742 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:08:18,912.912 INFO    ] No existing commands found in stream
[2026-10-28 11:08:23,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:08:23,947.947 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-28 11:08:26,931.931 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:08:26,934.934 INFO    ] Checking for system updates...
[2026-10-28 11:08:26,972.972 INFO    ] 200
[2026-10-28 11:08:26,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:08:27,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:08:27,031.031 INFO    ] No update needed
[2026-10-28 11:08:27,034.034 INFO    ] Checking for camera pi updates...
[2026-10-28 11:08:27,069.069 INFO    ] 200
[2026-10-28 11:08:27,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:08:27,119.119 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:08:27,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:08:27,174.174 INFO    ] No camera update needed
[2026-10-28 11:08:27,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:08:27,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:08:27,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:08:27,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:08:29,235.235 INFO    ] ================================================
[2026-10-28 11:08:29,251.251 INFO    ] Launching Daemon at Wed Oct 28 11:08:29 IST 2026
[2026-10-28 11:08:29,261.261 INFO    ] ================================================
[2026-10-28 11:08:29,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:08:29
[2026-10-28 11:08:30,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:08:30,700.700 INFO    ] Initializing speech engine...
[2026-10-28 11:08:30,708.708 INFO    ] 2026-10-28 11:08:30
[2026-10-28 11:08:31,007.007 INFO    ] 2026-10-28 11:08:30
[2026-10-28 11:08:31,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:08:31,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:08:31,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:08:31,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:08:31,612.612 INFO    ] time= 28/10/2026 11:08:31
[2026-10-28 11:08:31,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:08:31,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:08:31,808.808 INFO    ] No existing commands found in stream
[2026-10-28 11:08:36,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:08:36,825.825 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 11:08:40,970.970 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:08:40,973.973 INFO    ] Checking for system updates...
[2026-10-28 11:08:41,010.010 INFO    ] 200
[2026-10-28 11:08:41,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:08:41,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:08:41,075.075 INFO    ] No update needed
[2026-10-28 11:08:41,078.078 INFO    ] Checking for camera pi updates...
[2026-10-28 11:08:41,116.116 INFO    ] 200
[2026-10-28 11:08:41,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:08:41,168.168 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:08:41,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:08:41,275.275 INFO    ] No camera update needed
[2026-10-28 11:08:41,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:08:41,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:08:41,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:08:41,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:08:43,334.334 INFO    ] ================================================
[2026-10-28 11:08:43,349.349 INFO    ] Launching Daemon at Wed Oct 28 11:08:43 IST 2026
[2026-10-28 11:08:43,360.360 INFO    ] ================================================
[2026-10-28 11:08:43,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:08:43
[2026-10-28 11:08:44,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:08:44,770.770 INFO    ] Initializing speech engine...
[2026-10-28 11:08:44,786.786 INFO    ] 2026-10-28 11:08:44
[2026-10-28 11:08:45,073.073 INFO    ] 2026-10-28 11:08:45
[2026-10-28 11:08:45,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:08:45,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:08:45,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:08:45,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:08:45,629.629 INFO    ] time= 28/10/2026 11:08:45
[2026-10-28 11:08:45,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:08:45,725.725 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:08:45,861.861 INFO    ] No existing commands found in stream
[2026-10-28 11:08:50,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:08:50,887.887 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-28 11:08:55,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:08:55,174.174 INFO    ] Checking for system updates...
[2026-10-28 11:08:55,219.219 INFO    ] 200
[2026-10-28 11:08:55,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:08:55,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:08:55,278.278 INFO    ] No update needed
[2026-10-28 11:08:55,280.280 INFO    ] Checking for camera pi updates...
[2026-10-28 11:08:55,316.316 INFO    ] 200
[2026-10-28 11:08:55,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:08:55,360.360 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:08:55,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:08:55,446.446 INFO    ] No camera update needed
[2026-10-28 11:08:55,449.449 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:08:55,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:08:55,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:08:55,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:08:57,504.504 INFO    ] ================================================
[2026-10-28 11:08:57,519.519 INFO    ] Launching Daemon at Wed Oct 28 11:08:57 IST 2026
[2026-10-28 11:08:57,530.530 INFO    ] ================================================
[2026-10-28 11:08:58,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:08:58
[2026-10-28 11:08:58,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:08:58,945.945 INFO    ] Initializing speech engine...
[2026-10-28 11:08:58,954.954 INFO    ] 2026-10-28 11:08:58
[2026-10-28 11:08:59,206.206 INFO    ] 2026-10-28 11:08:59
[2026-10-28 11:08:59,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:08:59,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:08:59,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:08:59,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:08:59,765.765 INFO    ] time= 28/10/2026 11:08:59
[2026-10-28 11:08:59,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:08:59,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:08:59,920.920 INFO    ] No existing commands found in stream
[2026-10-28 11:09:04,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:09:04,947.947 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-28 11:09:05,893.893 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:09:05,896.896 INFO    ] Checking for system updates...
[2026-10-28 11:09:05,931.931 INFO    ] 200
[2026-10-28 11:09:05,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:09:05,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:09:05,993.993 INFO    ] No update needed
[2026-10-28 11:09:05,996.996 INFO    ] Checking for camera pi updates...
[2026-10-28 11:09:06,031.031 INFO    ] 200
[2026-10-28 11:09:06,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:09:06,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:09:06,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:09:06,185.185 INFO    ] No camera update needed
[2026-10-28 11:09:06,190.190 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:09:06,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:09:06,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:09:06,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:09:08,246.246 INFO    ] ================================================
[2026-10-28 11:09:08,260.260 INFO    ] Launching Daemon at Wed Oct 28 11:09:08 IST 2026
[2026-10-28 11:09:08,271.271 INFO    ] ================================================
[2026-10-28 11:09:08,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:09:08
[2026-10-28 11:09:09,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:09:09,719.719 INFO    ] Initializing speech engine...
[2026-10-28 11:09:09,725.725 INFO    ] 2026-10-28 11:09:09
[2026-10-28 11:09:10,026.026 INFO    ] 2026-10-28 11:09:09
[2026-10-28 11:09:10,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:09:10,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:09:10,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:09:10,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:09:10,655.655 INFO    ] time= 28/10/2026 11:09:10
[2026-10-28 11:09:10,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:09:10,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:09:10,815.815 INFO    ] No existing commands found in stream
[2026-10-28 11:09:15,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:09:15,845.845 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 11:09:18,291.291 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:09:18,294.294 INFO    ] Checking for system updates...
[2026-10-28 11:09:18,332.332 INFO    ] 200
[2026-10-28 11:09:18,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:09:18,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:09:18,392.392 INFO    ] No update needed
[2026-10-28 11:09:18,395.395 INFO    ] Checking for camera pi updates...
[2026-10-28 11:09:18,429.429 INFO    ] 200
[2026-10-28 11:09:18,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:09:18,475.475 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:09:18,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:09:18,657.657 INFO    ] No camera update needed
[2026-10-28 11:09:18,660.660 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:09:18,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:09:18,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:09:18,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:09:20,716.716 INFO    ] ================================================
[2026-10-28 11:09:20,731.731 INFO    ] Launching Daemon at Wed Oct 28 11:09:20 IST 2026
[2026-10-28 11:09:20,741.741 INFO    ] ================================================
[2026-10-28 11:09:21,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:09:21
[2026-10-28 11:09:21,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:09:22,242.242 INFO    ] Initializing speech engine...
[2026-10-28 11:09:22,250.250 INFO    ] 2026-10-28 11:09:22
[2026-10-28 11:09:22,523.523 INFO    ] 2026-10-28 11:09:22
[2026-10-28 11:09:22,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:09:22,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:09:22,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:09:23,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:09:23,093.093 INFO    ] time= 28/10/2026 11:09:23
[2026-10-28 11:09:23,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:09:23,129.129 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:09:23,256.256 INFO    ] No existing commands found in stream
[2026-10-28 11:09:28,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:09:28,290.290 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 11:09:32,120.120 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:09:32,124.124 INFO    ] Checking for system updates...
[2026-10-28 11:09:32,164.164 INFO    ] 200
[2026-10-28 11:09:32,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:09:32,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:09:32,230.230 INFO    ] No update needed
[2026-10-28 11:09:32,234.234 INFO    ] Checking for camera pi updates...
[2026-10-28 11:09:32,274.274 INFO    ] 200
[2026-10-28 11:09:32,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:09:32,321.321 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:09:32,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:09:32,407.407 INFO    ] No camera update needed
[2026-10-28 11:09:32,410.410 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:09:32,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:09:32,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:09:32,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:09:34,465.465 INFO    ] ================================================
[2026-10-28 11:09:34,481.481 INFO    ] Launching Daemon at Wed Oct 28 11:09:34 IST 2026
[2026-10-28 11:09:34,493.493 INFO    ] ================================================
[2026-10-28 11:09:35,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:09:35
[2026-10-28 11:09:35,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:09:35,896.896 INFO    ] Initializing speech engine...
[2026-10-28 11:09:35,902.902 INFO    ] 2026-10-28 11:09:35
[2026-10-28 11:09:36,198.198 INFO    ] 2026-10-28 11:09:36
[2026-10-28 11:09:36,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:09:36,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:09:36,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:09:36,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:09:36,697.697 INFO    ] time= 28/10/2026 11:09:36
[2026-10-28 11:09:36,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:09:36,790.790 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:09:36,908.908 INFO    ] No existing commands found in stream
[2026-10-28 11:09:41,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:09:41,922.922 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 11:09:42,588.588 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:09:42,591.591 INFO    ] Checking for system updates...
[2026-10-28 11:09:42,627.627 INFO    ] 200
[2026-10-28 11:09:42,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:09:42,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:09:42,686.686 INFO    ] No update needed
[2026-10-28 11:09:42,689.689 INFO    ] Checking for camera pi updates...
[2026-10-28 11:09:42,724.724 INFO    ] 200
[2026-10-28 11:09:42,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:09:42,769.769 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:09:42,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:09:42,856.856 INFO    ] No camera update needed
[2026-10-28 11:09:42,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:09:42,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:09:42,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:09:42,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:09:44,914.914 INFO    ] ================================================
[2026-10-28 11:09:44,930.930 INFO    ] Launching Daemon at Wed Oct 28 11:09:44 IST 2026
[2026-10-28 11:09:44,941.941 INFO    ] ================================================
[2026-10-28 11:09:45,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:09:45
[2026-10-28 11:09:46,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:09:46,372.372 INFO    ] Initializing speech engine...
[2026-10-28 11:09:46,394.394 INFO    ] 2026-10-28 11:09:46
[2026-10-28 11:09:46,645.645 INFO    ] 2026-10-28 11:09:46
[2026-10-28 11:09:46,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:09:46,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:09:46,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:09:47,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:09:47,201.201 INFO    ] time= 28/10/2026 11:09:47
[2026-10-28 11:09:47,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:09:47,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:09:47,364.364 INFO    ] No existing commands found in stream
[2026-10-28 11:09:52,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:09:52,397.397 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-28 11:09:54,570.570 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:09:54,572.572 INFO    ] Checking for system updates...
[2026-10-28 11:09:54,608.608 INFO    ] 200
[2026-10-28 11:09:54,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:09:54,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:09:54,666.666 INFO    ] No update needed
[2026-10-28 11:09:54,668.668 INFO    ] Checking for camera pi updates...
[2026-10-28 11:09:54,702.702 INFO    ] 200
[2026-10-28 11:09:54,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:09:54,745.745 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:09:54,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:09:54,876.876 INFO    ] No camera update needed
[2026-10-28 11:09:54,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:09:54,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:09:54,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:09:54,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:09:56,932.932 INFO    ] ================================================
[2026-10-28 11:09:56,949.949 INFO    ] Launching Daemon at Wed Oct 28 11:09:56 IST 2026
[2026-10-28 11:09:56,959.959 INFO    ] ================================================
[2026-10-28 11:09:57,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:09:57
[2026-10-28 11:09:58,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:09:58,595.595 INFO    ] Initializing speech engine...
[2026-10-28 11:09:58,609.609 INFO    ] 2026-10-28 11:09:58
[2026-10-28 11:09:58,894.894 INFO    ] 2026-10-28 11:09:58
[2026-10-28 11:09:58,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:09:59,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:09:59,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:09:59,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:09:59,445.445 INFO    ] time= 28/10/2026 11:09:59
[2026-10-28 11:09:59,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:09:59,484.484 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:09:59,599.599 INFO    ] No existing commands found in stream
[2026-10-28 11:10:04,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:10:04,633.633 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-28 11:10:09,289.289 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:10:09,292.292 INFO    ] Checking for system updates...
[2026-10-28 11:10:09,328.328 INFO    ] 200
[2026-10-28 11:10:09,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:10:09,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:10:09,387.387 INFO    ] No update needed
[2026-10-28 11:10:09,390.390 INFO    ] Checking for camera pi updates...
[2026-10-28 11:10:09,425.425 INFO    ] 200
[2026-10-28 11:10:09,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:10:09,469.469 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:10:09,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:10:09,555.555 INFO    ] No camera update needed
[2026-10-28 11:10:09,557.557 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:10:09,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:10:09,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:10:09,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:10:11,613.613 INFO    ] ================================================
[2026-10-28 11:10:11,629.629 INFO    ] Launching Daemon at Wed Oct 28 11:10:11 IST 2026
[2026-10-28 11:10:11,640.640 INFO    ] ================================================
[2026-10-28 11:10:12,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:10:12
[2026-10-28 11:10:12,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:10:13,063.063 INFO    ] Initializing speech engine...
[2026-10-28 11:10:13,081.081 INFO    ] 2026-10-28 11:10:13
[2026-10-28 11:10:13,332.332 INFO    ] 2026-10-28 11:10:13
[2026-10-28 11:10:13,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:10:13,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:10:13,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:10:13,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:10:13,954.954 INFO    ] time= 28/10/2026 11:10:13
[2026-10-28 11:10:13,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:10:13,977.977 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:10:14,103.103 INFO    ] No existing commands found in stream
[2026-10-28 11:10:19,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:10:19,131.131 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-28 11:10:21,147.147 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:10:21,150.150 INFO    ] Checking for system updates...
[2026-10-28 11:10:21,185.185 INFO    ] 200
[2026-10-28 11:10:21,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:10:21,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:10:21,246.246 INFO    ] No update needed
[2026-10-28 11:10:21,248.248 INFO    ] Checking for camera pi updates...
[2026-10-28 11:10:21,281.281 INFO    ] 200
[2026-10-28 11:10:21,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:10:21,324.324 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:10:21,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:10:21,412.412 INFO    ] No camera update needed
[2026-10-28 11:10:21,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:10:21,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:10:21,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:10:21,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:10:23,470.470 INFO    ] ================================================
[2026-10-28 11:10:23,485.485 INFO    ] Launching Daemon at Wed Oct 28 11:10:23 IST 2026
[2026-10-28 11:10:23,496.496 INFO    ] ================================================
[2026-10-28 11:10:24,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:10:24
[2026-10-28 11:10:24,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:10:24,896.896 INFO    ] Initializing speech engine...
[2026-10-28 11:10:24,902.902 INFO    ] 2026-10-28 11:10:24
[2026-10-28 11:10:25,194.194 INFO    ] 2026-10-28 11:10:25
[2026-10-28 11:10:25,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:10:25,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:10:25,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:10:25,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:10:25,797.797 INFO    ] time= 28/10/2026 11:10:25
[2026-10-28 11:10:25,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:10:25,829.829 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:10:25,957.957 INFO    ] No existing commands found in stream
[2026-10-28 11:10:30,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:10:30,992.992 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-28 11:10:31,992.992 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:10:31,995.995 INFO    ] Checking for system updates...
[2026-10-28 11:10:32,034.034 INFO    ] 200
[2026-10-28 11:10:32,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:10:32,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:10:32,096.096 INFO    ] No update needed
[2026-10-28 11:10:32,098.098 INFO    ] Checking for camera pi updates...
[2026-10-28 11:10:32,139.139 INFO    ] 200
[2026-10-28 11:10:32,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:10:32,185.185 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:10:32,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:10:32,307.307 INFO    ] No camera update needed
[2026-10-28 11:10:32,310.310 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:10:32,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:10:32,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:10:32,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:10:34,369.369 INFO    ] ================================================
[2026-10-28 11:10:34,384.384 INFO    ] Launching Daemon at Wed Oct 28 11:10:34 IST 2026
[2026-10-28 11:10:34,395.395 INFO    ] ================================================
[2026-10-28 11:10:34,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:10:34
[2026-10-28 11:10:35,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:10:35,809.809 INFO    ] Initializing speech engine...
[2026-10-28 11:10:35,818.818 INFO    ] 2026-10-28 11:10:35
[2026-10-28 11:10:36,111.111 INFO    ] 2026-10-28 11:10:36
[2026-10-28 11:10:36,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:10:36,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:10:36,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:10:36,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:10:36,617.617 INFO    ] time= 28/10/2026 11:10:36
[2026-10-28 11:10:36,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:10:36,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:10:36,876.876 INFO    ] No existing commands found in stream
[2026-10-28 11:10:41,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:10:41,891.891 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-28 11:10:44,499.499 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:10:44,502.502 INFO    ] Checking for system updates...
[2026-10-28 11:10:44,539.539 INFO    ] 200
[2026-10-28 11:10:44,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:10:44,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:10:44,597.597 INFO    ] No update needed
[2026-10-28 11:10:44,600.600 INFO    ] Checking for camera pi updates...
[2026-10-28 11:10:44,634.634 INFO    ] 200
[2026-10-28 11:10:44,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:10:44,683.683 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:10:44,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:10:44,765.765 INFO    ] No camera update needed
[2026-10-28 11:10:44,768.768 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:10:44,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:10:44,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:10:44,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:10:46,826.826 INFO    ] ================================================
[2026-10-28 11:10:46,841.841 INFO    ] Launching Daemon at Wed Oct 28 11:10:46 IST 2026
[2026-10-28 11:10:46,852.852 INFO    ] ================================================
[2026-10-28 11:10:47,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:10:47
[2026-10-28 11:10:48,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:10:48,265.265 INFO    ] Initializing speech engine...
[2026-10-28 11:10:48,274.274 INFO    ] 2026-10-28 11:10:48
[2026-10-28 11:10:48,567.567 INFO    ] 2026-10-28 11:10:48
[2026-10-28 11:10:48,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:10:48,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:10:48,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:10:49,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:10:49,189.189 INFO    ] time= 28/10/2026 11:10:49
[2026-10-28 11:10:49,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:10:49,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:10:49,345.345 INFO    ] No existing commands found in stream
[2026-10-28 11:10:54,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:10:54,375.375 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 11:10:56,851.851 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:10:56,854.854 INFO    ] Checking for system updates...
[2026-10-28 11:10:56,890.890 INFO    ] 200
[2026-10-28 11:10:56,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:10:56,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:10:56,948.948 INFO    ] No update needed
[2026-10-28 11:10:56,950.950 INFO    ] Checking for camera pi updates...
[2026-10-28 11:10:56,988.988 INFO    ] 200
[2026-10-28 11:10:56,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:10:57,030.030 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:10:57,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:10:57,112.112 INFO    ] No camera update needed
[2026-10-28 11:10:57,114.114 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:10:57,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:10:57,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:10:57,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:10:59,166.166 INFO    ] ================================================
[2026-10-28 11:10:59,181.181 INFO    ] Launching Daemon at Wed Oct 28 11:10:59 IST 2026
[2026-10-28 11:10:59,193.193 INFO    ] ================================================
[2026-10-28 11:10:59,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:10:59
[2026-10-28 11:11:00,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:11:00,619.619 INFO    ] Initializing speech engine...
[2026-10-28 11:11:00,626.626 INFO    ] 2026-10-28 11:11:00
[2026-10-28 11:11:00,884.884 INFO    ] 2026-10-28 11:11:00
[2026-10-28 11:11:00,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:11:01,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:11:01,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:11:01,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:11:01,424.424 INFO    ] time= 28/10/2026 11:11:01
[2026-10-28 11:11:01,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:11:01,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:11:01,640.640 INFO    ] No existing commands found in stream
[2026-10-28 11:11:06,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:11:06,676.676 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-28 11:11:08,770.770 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:11:08,772.772 INFO    ] Checking for system updates...
[2026-10-28 11:11:08,807.807 INFO    ] 200
[2026-10-28 11:11:08,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:11:08,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:11:08,865.865 INFO    ] No update needed
[2026-10-28 11:11:08,868.868 INFO    ] Checking for camera pi updates...
[2026-10-28 11:11:08,901.901 INFO    ] 200
[2026-10-28 11:11:08,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:11:08,945.945 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:11:09,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:11:09,016.016 INFO    ] No camera update needed
[2026-10-28 11:11:09,018.018 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:11:09,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:11:09,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:11:09,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:11:11,071.071 INFO    ] ================================================
[2026-10-28 11:11:11,087.087 INFO    ] Launching Daemon at Wed Oct 28 11:11:11 IST 2026
[2026-10-28 11:11:11,098.098 INFO    ] ================================================
[2026-10-28 11:11:11,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:11:11
[2026-10-28 11:11:12,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:11:12,515.515 INFO    ] Initializing speech engine...
[2026-10-28 11:11:12,524.524 INFO    ] 2026-10-28 11:11:12
[2026-10-28 11:11:12,781.781 INFO    ] 2026-10-28 11:11:12
[2026-10-28 11:11:12,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:11:13,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:11:13,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:11:13,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:11:13,478.478 INFO    ] time= 28/10/2026 11:11:13
[2026-10-28 11:11:13,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:11:13,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:11:13,755.755 INFO    ] No existing commands found in stream
[2026-10-28 11:11:18,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:11:18,776.776 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-28 11:11:20,714.714 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:11:20,717.717 INFO    ] Checking for system updates...
[2026-10-28 11:11:20,753.753 INFO    ] 200
[2026-10-28 11:11:20,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:11:20,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:11:20,810.810 INFO    ] No update needed
[2026-10-28 11:11:20,812.812 INFO    ] Checking for camera pi updates...
[2026-10-28 11:11:20,845.845 INFO    ] 200
[2026-10-28 11:11:20,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:11:20,889.889 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:11:21,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:11:21,065.065 INFO    ] No camera update needed
[2026-10-28 11:11:21,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:11:21,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:11:21,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:11:21,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:11:23,121.121 INFO    ] ================================================
[2026-10-28 11:11:23,137.137 INFO    ] Launching Daemon at Wed Oct 28 11:11:23 IST 2026
[2026-10-28 11:11:23,148.148 INFO    ] ================================================
[2026-10-28 11:11:23,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:11:23
[2026-10-28 11:11:24,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:11:24,613.613 INFO    ] Initializing speech engine...
[2026-10-28 11:11:24,624.624 INFO    ] 2026-10-28 11:11:24
[2026-10-28 11:11:24,878.878 INFO    ] 2026-10-28 11:11:24
[2026-10-28 11:11:24,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:11:25,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:11:25,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:11:25,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:11:25,445.445 INFO    ] time= 28/10/2026 11:11:25
[2026-10-28 11:11:25,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:11:25,483.483 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:11:25,624.624 INFO    ] No existing commands found in stream
[2026-10-28 11:11:30,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:11:30,662.662 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-28 11:11:31,591.591 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:11:31,594.594 INFO    ] Checking for system updates...
[2026-10-28 11:11:31,630.630 INFO    ] 200
[2026-10-28 11:11:31,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:11:31,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:11:31,688.688 INFO    ] No update needed
[2026-10-28 11:11:31,690.690 INFO    ] Checking for camera pi updates...
[2026-10-28 11:11:31,724.724 INFO    ] 200
[2026-10-28 11:11:31,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:11:31,766.766 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:11:31,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:11:31,855.855 INFO    ] No camera update needed
[2026-10-28 11:11:31,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:11:31,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:11:31,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:11:31,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:11:33,911.911 INFO    ] ================================================
[2026-10-28 11:11:33,927.927 INFO    ] Launching Daemon at Wed Oct 28 11:11:33 IST 2026
[2026-10-28 11:11:33,938.938 INFO    ] ================================================
[2026-10-28 11:11:34,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:11:34
[2026-10-28 11:11:35,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:11:35,517.517 INFO    ] Initializing speech engine...
[2026-10-28 11:11:35,531.531 INFO    ] 2026-10-28 11:11:35
[2026-10-28 11:11:35,804.804 INFO    ] 2026-10-28 11:11:35
[2026-10-28 11:11:35,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:11:36,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:11:36,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:11:36,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:11:36,350.350 INFO    ] time= 28/10/2026 11:11:36
[2026-10-28 11:11:36,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:11:36,386.386 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:11:36,521.521 INFO    ] No existing commands found in stream
[2026-10-28 11:11:41,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:11:41,560.560 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-28 11:11:42,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:11:42,975.975 INFO    ] Checking for system updates...
[2026-10-28 11:11:43,012.012 INFO    ] 200
[2026-10-28 11:11:43,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:11:43,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:11:43,070.070 INFO    ] No update needed
[2026-10-28 11:11:43,072.072 INFO    ] Checking for camera pi updates...
[2026-10-28 11:11:43,107.107 INFO    ] 200
[2026-10-28 11:11:43,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:11:43,150.150 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:11:43,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:11:43,234.234 INFO    ] No camera update needed
[2026-10-28 11:11:43,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:11:43,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:11:43,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:11:43,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:11:45,291.291 INFO    ] ================================================
[2026-10-28 11:11:45,307.307 INFO    ] Launching Daemon at Wed Oct 28 11:11:45 IST 2026
[2026-10-28 11:11:45,318.318 INFO    ] ================================================
[2026-10-28 11:11:45,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:11:45
[2026-10-28 11:11:46,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:11:46,899.899 INFO    ] Initializing speech engine...
[2026-10-28 11:11:46,907.907 INFO    ] 2026-10-28 11:11:46
[2026-10-28 11:11:47,190.190 INFO    ] 2026-10-28 11:11:47
[2026-10-28 11:11:47,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:11:47,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:11:47,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:11:47,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:11:47,741.741 INFO    ] time= 28/10/2026 11:11:47
[2026-10-28 11:11:47,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:11:47,776.776 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:11:47,885.885 INFO    ] No existing commands found in stream
[2026-10-28 11:11:52,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:11:52,913.913 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 11:11:57,217.217 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:11:57,220.220 INFO    ] Checking for system updates...
[2026-10-28 11:11:57,259.259 INFO    ] 200
[2026-10-28 11:11:57,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:11:57,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:11:57,318.318 INFO    ] No update needed
[2026-10-28 11:11:57,321.321 INFO    ] Checking for camera pi updates...
[2026-10-28 11:11:57,356.356 INFO    ] 200
[2026-10-28 11:11:57,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:11:57,399.399 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:11:57,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:11:57,504.504 INFO    ] No camera update needed
[2026-10-28 11:11:57,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:11:57,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:11:57,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:11:57,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:11:59,563.563 INFO    ] ================================================
[2026-10-28 11:11:59,579.579 INFO    ] Launching Daemon at Wed Oct 28 11:11:59 IST 2026
[2026-10-28 11:11:59,591.591 INFO    ] ================================================
[2026-10-28 11:12:00,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:12:00
[2026-10-28 11:12:00,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:12:01,416.416 INFO    ] Initializing speech engine...
[2026-10-28 11:12:01,420.420 INFO    ] 2026-10-28 11:12:01
[2026-10-28 11:12:01,830.830 INFO    ] 2026-10-28 11:12:01
[2026-10-28 11:12:01,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:12:02,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:12:02,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:12:02,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:12:02,248.248 INFO    ] time= 28/10/2026 11:12:02
[2026-10-28 11:12:02,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:12:02,300.300 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:12:02,454.454 INFO    ] No existing commands found in stream
[2026-10-28 11:12:07,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:12:07,499.499 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-28 11:12:08,810.810 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:12:08,812.812 INFO    ] Checking for system updates...
[2026-10-28 11:12:08,848.848 INFO    ] 200
[2026-10-28 11:12:08,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:12:08,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:12:08,911.911 INFO    ] No update needed
[2026-10-28 11:12:08,914.914 INFO    ] Checking for camera pi updates...
[2026-10-28 11:12:08,948.948 INFO    ] 200
[2026-10-28 11:12:08,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:12:08,990.990 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:12:09,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:12:09,075.075 INFO    ] No camera update needed
[2026-10-28 11:12:09,078.078 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:12:09,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:12:09,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:12:09,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:12:11,132.132 INFO    ] ================================================
[2026-10-28 11:12:11,147.147 INFO    ] Launching Daemon at Wed Oct 28 11:12:11 IST 2026
[2026-10-28 11:12:11,158.158 INFO    ] ================================================
[2026-10-28 11:12:11,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:12:11
[2026-10-28 11:12:12,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:12:12,564.564 INFO    ] Initializing speech engine...
[2026-10-28 11:12:12,572.572 INFO    ] 2026-10-28 11:12:12
[2026-10-28 11:12:12,844.844 INFO    ] 2026-10-28 11:12:12
[2026-10-28 11:12:12,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:12:13,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:12:13,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:12:13,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:12:13,412.412 INFO    ] time= 28/10/2026 11:12:13
[2026-10-28 11:12:13,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:12:13,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:12:13,571.571 INFO    ] No existing commands found in stream
[2026-10-28 11:12:18,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:12:18,588.588 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 11:12:19,690.690 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:12:19,693.693 INFO    ] Checking for system updates...
[2026-10-28 11:12:19,728.728 INFO    ] 200
[2026-10-28 11:12:19,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:12:19,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:12:19,786.786 INFO    ] No update needed
[2026-10-28 11:12:19,788.788 INFO    ] Checking for camera pi updates...
[2026-10-28 11:12:19,822.822 INFO    ] 200
[2026-10-28 11:12:19,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:12:19,867.867 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:12:19,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:12:19,950.950 INFO    ] No camera update needed
[2026-10-28 11:12:19,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:12:19,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:12:19,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:12:19,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:12:22,010.010 INFO    ] ================================================
[2026-10-28 11:12:22,027.027 INFO    ] Launching Daemon at Wed Oct 28 11:12:22 IST 2026
[2026-10-28 11:12:22,038.038 INFO    ] ================================================
[2026-10-28 11:12:22,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:12:22
[2026-10-28 11:12:23,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:12:23,653.653 INFO    ] Initializing speech engine...
[2026-10-28 11:12:23,661.661 INFO    ] 2026-10-28 11:12:23
[2026-10-28 11:12:23,935.935 INFO    ] 2026-10-28 11:12:23
[2026-10-28 11:12:23,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:12:24,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:12:24,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:12:24,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:12:24,711.711 INFO    ] time= 28/10/2026 11:12:24
[2026-10-28 11:12:24,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:12:24,817.817 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:12:25,031.031 INFO    ] No existing commands found in stream
[2026-10-28 11:12:30,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:12:30,065.065 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-28 11:12:32,691.691 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:12:32,694.694 INFO    ] Checking for system updates...
[2026-10-28 11:12:32,731.731 INFO    ] 200
[2026-10-28 11:12:32,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:12:32,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:12:32,791.791 INFO    ] No update needed
[2026-10-28 11:12:32,794.794 INFO    ] Checking for camera pi updates...
[2026-10-28 11:12:32,828.828 INFO    ] 200
[2026-10-28 11:12:32,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:12:32,872.872 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:12:32,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:12:32,976.976 INFO    ] No camera update needed
[2026-10-28 11:12:32,979.979 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:12:32,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:12:32,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:12:32,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:12:35,036.036 INFO    ] ================================================
[2026-10-28 11:12:35,051.051 INFO    ] Launching Daemon at Wed Oct 28 11:12:35 IST 2026
[2026-10-28 11:12:35,062.062 INFO    ] ================================================
[2026-10-28 11:12:35,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:12:35
[2026-10-28 11:12:36,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:12:36,713.713 INFO    ] Initializing speech engine...
[2026-10-28 11:12:36,725.725 INFO    ] 2026-10-28 11:12:36
[2026-10-28 11:12:37,035.035 INFO    ] 2026-10-28 11:12:37
[2026-10-28 11:12:37,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:12:37,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:12:37,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:12:37,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:12:37,638.638 INFO    ] time= 28/10/2026 11:12:37
[2026-10-28 11:12:37,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:12:37,667.667 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:12:37,898.898 INFO    ] No existing commands found in stream
[2026-10-28 11:12:42,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:12:42,932.932 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-28 11:12:44,581.581 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:12:44,584.584 INFO    ] Checking for system updates...
[2026-10-28 11:12:44,620.620 INFO    ] 200
[2026-10-28 11:12:44,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:12:44,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:12:44,677.677 INFO    ] No update needed
[2026-10-28 11:12:44,679.679 INFO    ] Checking for camera pi updates...
[2026-10-28 11:12:44,713.713 INFO    ] 200
[2026-10-28 11:12:44,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:12:44,756.756 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:12:44,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:12:44,827.827 INFO    ] No camera update needed
[2026-10-28 11:12:44,830.830 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:12:44,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:12:44,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:12:44,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:12:46,882.882 INFO    ] ================================================
[2026-10-28 11:12:46,898.898 INFO    ] Launching Daemon at Wed Oct 28 11:12:46 IST 2026
[2026-10-28 11:12:46,910.910 INFO    ] ================================================
[2026-10-28 11:12:47,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:12:47
[2026-10-28 11:12:48,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:12:48,320.320 INFO    ] Initializing speech engine...
[2026-10-28 11:12:48,329.329 INFO    ] 2026-10-28 11:12:48
[2026-10-28 11:12:48,626.626 INFO    ] 2026-10-28 11:12:48
[2026-10-28 11:12:48,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:12:48,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:12:48,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:12:49,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:12:49,271.271 INFO    ] time= 28/10/2026 11:12:49
[2026-10-28 11:12:49,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:12:49,294.294 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:12:49,440.440 INFO    ] No existing commands found in stream
[2026-10-28 11:12:54,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:12:54,465.465 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-28 11:12:58,333.333 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:12:58,335.335 INFO    ] Checking for system updates...
[2026-10-28 11:12:58,371.371 INFO    ] 200
[2026-10-28 11:12:58,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:12:58,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:12:58,429.429 INFO    ] No update needed
[2026-10-28 11:12:58,431.431 INFO    ] Checking for camera pi updates...
[2026-10-28 11:12:58,465.465 INFO    ] 200
[2026-10-28 11:12:58,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:12:58,508.508 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:12:58,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:12:58,589.589 INFO    ] No camera update needed
[2026-10-28 11:12:58,592.592 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:12:58,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:12:58,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:12:58,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:13:00,646.646 INFO    ] ================================================
[2026-10-28 11:13:00,662.662 INFO    ] Launching Daemon at Wed Oct 28 11:13:00 IST 2026
[2026-10-28 11:13:00,673.673 INFO    ] ================================================
[2026-10-28 11:13:01,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:13:01
[2026-10-28 11:13:02,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:13:02,410.410 INFO    ] Initializing speech engine...
[2026-10-28 11:13:02,417.417 INFO    ] 2026-10-28 11:13:02
[2026-10-28 11:13:02,757.757 INFO    ] 2026-10-28 11:13:02
[2026-10-28 11:13:02,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:13:03,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:13:03,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:13:03,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:13:03,367.367 INFO    ] time= 28/10/2026 11:13:03
[2026-10-28 11:13:03,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:13:03,426.426 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:13:03,541.541 INFO    ] No existing commands found in stream
[2026-10-28 11:13:08,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:13:08,562.562 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-28 11:13:10,811.811 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:13:10,814.814 INFO    ] Checking for system updates...
[2026-10-28 11:13:10,849.849 INFO    ] 200
[2026-10-28 11:13:10,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:13:10,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:13:10,907.907 INFO    ] No update needed
[2026-10-28 11:13:10,909.909 INFO    ] Checking for camera pi updates...
[2026-10-28 11:13:10,942.942 INFO    ] 200
[2026-10-28 11:13:10,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:13:10,985.985 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:13:11,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:13:11,043.043 INFO    ] No camera update needed
[2026-10-28 11:13:11,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:13:11,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:13:11,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:13:11,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:13:13,100.100 INFO    ] ================================================
[2026-10-28 11:13:13,115.115 INFO    ] Launching Daemon at Wed Oct 28 11:13:13 IST 2026
[2026-10-28 11:13:13,126.126 INFO    ] ================================================
[2026-10-28 11:13:13,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:13:13
[2026-10-28 11:13:14,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:13:14,784.784 INFO    ] Initializing speech engine...
[2026-10-28 11:13:14,790.790 INFO    ] 2026-10-28 11:13:14
[2026-10-28 11:13:15,077.077 INFO    ] 2026-10-28 11:13:15
[2026-10-28 11:13:15,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:13:15,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:13:15,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:13:15,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:13:15,746.746 INFO    ] time= 28/10/2026 11:13:15
[2026-10-28 11:13:15,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:13:15,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:13:16,044.044 INFO    ] No existing commands found in stream
[2026-10-28 11:13:21,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:13:21,063.063 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-28 11:13:24,612.612 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:13:24,616.616 INFO    ] Checking for system updates...
[2026-10-28 11:13:24,653.653 INFO    ] 200
[2026-10-28 11:13:24,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:13:24,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:13:24,710.710 INFO    ] No update needed
[2026-10-28 11:13:24,713.713 INFO    ] Checking for camera pi updates...
[2026-10-28 11:13:24,746.746 INFO    ] 200
[2026-10-28 11:13:24,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:13:24,794.794 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:13:24,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:13:24,974.974 INFO    ] No camera update needed
[2026-10-28 11:13:24,976.976 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:13:24,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:13:24,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:13:24,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:13:27,028.028 INFO    ] ================================================
[2026-10-28 11:13:27,043.043 INFO    ] Launching Daemon at Wed Oct 28 11:13:27 IST 2026
[2026-10-28 11:13:27,061.061 INFO    ] ================================================
[2026-10-28 11:13:27,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:13:27
[2026-10-28 11:13:28,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:13:28,461.461 INFO    ] Initializing speech engine...
[2026-10-28 11:13:28,467.467 INFO    ] 2026-10-28 11:13:28
[2026-10-28 11:13:28,770.770 INFO    ] 2026-10-28 11:13:28
[2026-10-28 11:13:28,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:13:29,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:13:29,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:13:29,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:13:29,291.291 INFO    ] time= 28/10/2026 11:13:29
[2026-10-28 11:13:29,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:13:29,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:13:29,496.496 INFO    ] No existing commands found in stream
[2026-10-28 11:13:34,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:13:34,521.521 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-28 11:13:38,689.689 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:13:38,692.692 INFO    ] Checking for system updates...
[2026-10-28 11:13:38,732.732 INFO    ] 200
[2026-10-28 11:13:38,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:13:38,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:13:38,790.790 INFO    ] No update needed
[2026-10-28 11:13:38,792.792 INFO    ] Checking for camera pi updates...
[2026-10-28 11:13:38,826.826 INFO    ] 200
[2026-10-28 11:13:38,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:13:38,869.869 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:13:38,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:13:38,951.951 INFO    ] No camera update needed
[2026-10-28 11:13:38,953.953 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:13:38,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:13:38,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:13:38,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:13:41,005.005 INFO    ] ================================================
[2026-10-28 11:13:41,020.020 INFO    ] Launching Daemon at Wed Oct 28 11:13:41 IST 2026
[2026-10-28 11:13:41,030.030 INFO    ] ================================================
[2026-10-28 11:13:41,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:13:41
[2026-10-28 11:13:42,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:13:42,450.450 INFO    ] Initializing speech engine...
[2026-10-28 11:13:42,459.459 INFO    ] 2026-10-28 11:13:42
[2026-10-28 11:13:42,701.701 INFO    ] 2026-10-28 11:13:42
[2026-10-28 11:13:42,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:13:42,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:13:42,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:13:43,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:13:43,295.295 INFO    ] time= 28/10/2026 11:13:43
[2026-10-28 11:13:43,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:13:43,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:13:43,455.455 INFO    ] No existing commands found in stream
[2026-10-28 11:13:48,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:13:48,485.485 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 11:13:52,865.865 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:13:52,867.867 INFO    ] Checking for system updates...
[2026-10-28 11:13:52,903.903 INFO    ] 200
[2026-10-28 11:13:52,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:13:52,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:13:52,961.961 INFO    ] No update needed
[2026-10-28 11:13:52,964.964 INFO    ] Checking for camera pi updates...
[2026-10-28 11:13:52,997.997 INFO    ] 200
[2026-10-28 11:13:52,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:13:53,039.039 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:13:53,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:13:53,120.120 INFO    ] No camera update needed
[2026-10-28 11:13:53,123.123 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:13:53,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:13:53,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:13:53,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:13:55,174.174 INFO    ] ================================================
[2026-10-28 11:13:55,189.189 INFO    ] Launching Daemon at Wed Oct 28 11:13:55 IST 2026
[2026-10-28 11:13:55,200.200 INFO    ] ================================================
[2026-10-28 11:13:55,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:13:55
[2026-10-28 11:13:56,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:13:56,594.594 INFO    ] Initializing speech engine...
[2026-10-28 11:13:56,617.617 INFO    ] 2026-10-28 11:13:56
[2026-10-28 11:13:56,866.866 INFO    ] 2026-10-28 11:13:56
[2026-10-28 11:13:56,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:13:57,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:13:57,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:13:57,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:13:57,417.417 INFO    ] time= 28/10/2026 11:13:57
[2026-10-28 11:13:57,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:13:57,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:13:57,576.576 INFO    ] No existing commands found in stream
[2026-10-28 11:14:02,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:14:02,605.605 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 11:14:04,818.818 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:14:04,821.821 INFO    ] Checking for system updates...
[2026-10-28 11:14:04,861.861 INFO    ] 200
[2026-10-28 11:14:04,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:14:04,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:14:04,919.919 INFO    ] No update needed
[2026-10-28 11:14:04,921.921 INFO    ] Checking for camera pi updates...
[2026-10-28 11:14:04,960.960 INFO    ] 200
[2026-10-28 11:14:04,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:14:05,003.003 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:14:05,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:14:05,109.109 INFO    ] No camera update needed
[2026-10-28 11:14:05,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:14:05,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:14:05,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:14:05,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:14:07,165.165 INFO    ] ================================================
[2026-10-28 11:14:07,180.180 INFO    ] Launching Daemon at Wed Oct 28 11:14:07 IST 2026
[2026-10-28 11:14:07,191.191 INFO    ] ================================================
[2026-10-28 11:14:07,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:14:07
[2026-10-28 11:14:08,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:14:08,781.781 INFO    ] Initializing speech engine...
[2026-10-28 11:14:08,792.792 INFO    ] 2026-10-28 11:14:08
[2026-10-28 11:14:09,079.079 INFO    ] 2026-10-28 11:14:09
[2026-10-28 11:14:09,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:14:09,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:14:09,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:14:09,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:14:09,634.634 INFO    ] time= 28/10/2026 11:14:09
[2026-10-28 11:14:09,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:14:09,671.671 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:14:09,825.825 INFO    ] No existing commands found in stream
[2026-10-28 11:14:14,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:14:14,855.855 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-28 11:14:17,449.449 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:14:17,452.452 INFO    ] Checking for system updates...
[2026-10-28 11:14:17,490.490 INFO    ] 200
[2026-10-28 11:14:17,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:14:17,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:14:17,553.553 INFO    ] No update needed
[2026-10-28 11:14:17,556.556 INFO    ] Checking for camera pi updates...
[2026-10-28 11:14:17,605.605 INFO    ] 200
[2026-10-28 11:14:17,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:14:17,648.648 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:14:17,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:14:17,734.734 INFO    ] No camera update needed
[2026-10-28 11:14:17,736.736 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:14:17,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:14:17,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:14:17,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:14:19,796.796 INFO    ] ================================================
[2026-10-28 11:14:19,811.811 INFO    ] Launching Daemon at Wed Oct 28 11:14:19 IST 2026
[2026-10-28 11:14:19,822.822 INFO    ] ================================================
[2026-10-28 11:14:20,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:14:20
[2026-10-28 11:14:20,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:14:21,247.247 INFO    ] Initializing speech engine...
[2026-10-28 11:14:21,256.256 INFO    ] 2026-10-28 11:14:21
[2026-10-28 11:14:21,503.503 INFO    ] 2026-10-28 11:14:21
[2026-10-28 11:14:21,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:14:21,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:14:21,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:14:22,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:14:22,057.057 INFO    ] time= 28/10/2026 11:14:22
[2026-10-28 11:14:22,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:14:22,082.082 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:14:22,235.235 INFO    ] No existing commands found in stream
[2026-10-28 11:14:24,298.298 INFO    ] Received new command: ID=1793166263982-0
[2026-10-28 11:14:24,305.305 INFO    ] process_and_cleanup_command: msg_id=1793166263982-0
[2026-10-28 11:14:24,327.327 INFO    ] is_command_expired: timestamp=2026-10-28T05:44:26.969Z, expiry=30s
[2026-10-28 11:14:24,421.421 INFO    ] Command removed from stream: 1793166263982-0. returning for processing...
[2026-10-28 11:14:24,423.423 INFO    ] ***** get_valid_command
[2026-10-28 11:14:24,426.426 INFO    ] {'timestamp': '2026-10-28T05:44:26.969Z', 'command': 'start-order', 'source': 'webapp', 'data': '{"request_id":"start-order-1793166266969-fwzeacv7w","orderId":"TM08202202261028111313746","is_vending":false}', 'timeout': '10'}
[2026-10-28 11:14:24,428.428 INFO    ] ***** Parsed command data: {'orderId': 'TM08202202261028111313746', 'is_vending': False, 'request_id': 'start-order-1793166266969-fwzeacv7w'}
[2026-10-28 11:14:24,431.431 INFO    ] Handling start order...
[2026-10-28 11:14:24,433.433 INFO    ] handle_start_order_command
[2026-10-28 11:14:24,439.439 INFO    ] _send_start_order_success: request_id=start-order-1793166266969-fwzeacv7w, order_id=TM08202202261028111313746
[2026-10-28 11:14:24,441.441 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202202
[2026-10-28 11:14:24,556.556 INFO    ] [_send_start_order_success] Message added to stream with ID: 1793166264485-0
[2026-10-28 11:14:24,559.559 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-10-28 11:14:24,561.561 INFO    ] Checking for system updates...
[2026-10-28 11:14:24,604.604 INFO    ] 200
[2026-10-28 11:14:24,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:14:24,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:14:24,660.660 INFO    ] No update needed
[2026-10-28 11:14:24,662.662 INFO    ] Checking for camera pi updates...
[2026-10-28 11:14:24,696.696 INFO    ] 200
[2026-10-28 11:14:24,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:14:24,744.744 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:14:24,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:14:24,827.827 INFO    ] No camera update needed
[2026-10-28 11:14:24,829.829 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:14:24,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:14:24,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:14:24,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:14:26,882.882 INFO    ] ================================================
[2026-10-28 11:14:26,897.897 INFO    ] Launching Daemon at Wed Oct 28 11:14:26 IST 2026
[2026-10-28 11:14:26,908.908 INFO    ] ================================================
[2026-10-28 11:14:27,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:14:27
[2026-10-28 11:14:28,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:14:28,492.492 INFO    ] Initializing speech engine...
[2026-10-28 11:14:28,502.502 INFO    ] 2026-10-28 11:14:28
[2026-10-28 11:14:28,781.781 INFO    ] 2026-10-28 11:14:28
[2026-10-28 11:14:28,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:14:29,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:14:29,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:14:29,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:14:29,397.397 INFO    ] time= 28/10/2026 11:14:29
[2026-10-28 11:14:29,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:14:29,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:14:29,569.569 INFO    ] Found 2 existing command(s) in stream
[2026-10-28 11:14:29,635.635 INFO    ] Checking historical command: ID=1793166264485-0
[2026-10-28 11:14:29,656.656 INFO    ] process_and_cleanup_command: msg_id=1793166264485-0
[2026-10-28 11:14:29,721.721 INFO    ] is_command_expired: timestamp=2026-10-28T05:44:24.439935Z, expiry=30s
[2026-10-28 11:14:29,981.981 INFO    ] Command removed from stream: 1793166264485-0. returning for processing...
[2026-10-28 11:14:30,011.011 INFO    ] ***** get_valid_command
[2026-10-28 11:14:30,019.019 INFO    ] {'metadata_order_id': 'TM08202202261028111313746', 'imei': 'TM08202202', 'metadata_request_id': 'start-order-1793166266969-fwzeacv7w', 'timestamp': '2026-10-28T05:44:24.439935Z', 'message': 'start-order success', 'status': 'success', 'message_type': 'command_response'}
[2026-10-28 11:14:30,069.069 INFO    ] Checking historical command: ID=1793166267433-0
[2026-10-28 11:14:30,073.073 INFO    ] process_and_cleanup_command: msg_id=1793166267433-0
[2026-10-28 11:14:30,076.076 INFO    ] is_command_expired: timestamp=2026-10-28T05:44:30.530Z, expiry=30s
[2026-10-28 11:14:30,234.234 INFO    ] Command removed from stream: 1793166267433-0. returning for processing...
[2026-10-28 11:14:30,269.269 INFO    ] ***** get_valid_command
[2026-10-28 11:14:30,275.275 INFO    ] {'data': '{"request_id":"process-order-1793166270530-d8i2uj435","orderId":"TM08202202261028111313746","is_vending":false,"accessCode":"29409170"}', 'timestamp': '2026-10-28T05:44:30.530Z', 'timeout': '60', 'source': 'webapp', 'command': 'process-order'}
[2026-10-28 11:14:30,284.284 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1793166270530-d8i2uj435', 'orderId': 'TM08202202261028111313746', 'is_vending': False, 'accessCode': '29409170'}
[2026-10-28 11:14:30,292.292 INFO    ] Handling process order...
[2026-10-28 11:14:30,300.300 INFO    ] Processing process-order command...
[2026-10-28 11:14:30,308.308 INFO    ] 🔍 Lock file Order ID: TM08202202261028111313746, TS: 2026-10-28 11:14:24
[2026-10-28 11:14:30,326.326 INFO    ] ✅ Order lock valid for TM08202202261028111313746
[2026-10-28 11:14:30,332.332 INFO    ] Received access code in process-order, skipping PHP API call
[2026-10-28 11:14:30,339.339 INFO    ] processing access code 29409170 for order TM08202202261028111313746
[2026-10-28 11:14:30,346.346 INFO    ] 🔍 Lock file Order ID: TM08202202261028111313746, TS: 2026-10-28 11:14:24
[2026-10-28 11:14:30,353.353 INFO    ] ✅ Order lock valid for TM08202202261028111313746
[2026-10-28 11:14:30,360.360 INFO    ] 2026-10-28 11:14:30
[2026-10-28 11:14:30,415.415 INFO    ] 200
[2026-10-28 11:14:30,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:14:30,427.427 INFO    ] 29409170
[2026-10-28 11:14:30,432.432 INFO    ] 2026-10-28 11:14:30
[2026-10-28 11:14:30,438.438 INFO    ] session id :757096343
[2026-10-28 11:14:30,443.443 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=29409170&imei=TM08202202&session_id=757096343
[2026-10-28 11:14:31,916.916 INFO    ] 200
[2026-10-28 11:14:31,930.930 INFO    ] {"rstatus": true, "status": true, "msg": "Order Data", "data": {"proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500764-4671.webp", "skuid": "4500764", "qty": 1, "sku_total": 20, "offer_desc": "", "tray_id": "42", "name": "KitKat 2 finger 18 gm", "door_id": "2", "mrp": "20", "offer_id": "", "unit_price": 20}], "bill_amount": "20", "mobile": "9945573937", "invoice_bill": "20", "order_id": "TM08202202261028111313746", "access_code": "29409170"}}
[2026-10-28 11:14:31,935.935 INFO    ] 20
[2026-10-28 11:14:31,938.938 INFO    ] TM08202202261028111313746
[2026-10-28 11:14:31,941.941 INFO    ] 9945573937
[2026-10-28 11:14:31,944.944 INFO    ] 2026-10-28 11:14:31
[2026-10-28 11:14:31,948.948 INFO    ] Door Opening for user mobile ending with  three nine three seven 
[2026-10-28 11:14:31,951.951 INFO    ] Door Opening for user mobile ending with  three nine three seven 
[2026-10-28 11:14:31,955.955 INFO    ] 799b5c399008f77883f13cee6f9c3a38
[2026-10-28 11:14:31,958.958 INFO    ] 2026-10-28 11:14:31
[2026-10-28 11:14:31,961.961 INFO    ] playing audio file
[2026-10-28 11:14:31,979.979 INFO    ] 2026-10-28 11:14:31
[2026-10-28 11:14:31,983.983 INFO    ] 2026-10-28 11:14:31
[2026-10-28 11:14:31,988.988 INFO    ] publish_status: order_id=TM08202202261028111313746
[2026-10-28 11:14:31,991.991 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028111313746
[2026-10-28 11:14:32,574.574 INFO    ] [publish_status] Message added to stream with ID: 1793166272497-0
[2026-10-28 11:14:32,577.577 INFO    ] Published to order:TM08202202261028111313746: {'timestamp': '2026-10-28T05:44:31.985692Z', 'server_response': '{"data": {"bill_amount": "20", "order_id": "TM08202202261028111313746", "invoice_bill": "20", "proposed_sku_json": [{"skuid": "4500764", "qty": 1, "offer_id": "", "image_url": "https://images.tinymart.in/product/4500764-4671.webp", "door_id": "2", "sku_total": 20, "tray_id": "42", "name": "KitKat 2 finger 18 gm", "unit_price": 20, "mrp": "20", "offer_desc": ""}], "access_code": "29409170", "mobile": "9945573937"}, "rstatus": true, "status": true, "msg": "Order Data"}', 'order_id': 'TM08202202261028111313746', 'server_status': 'order-started'} (ID: 1793166272497-0)
[2026-10-28 11:14:33,565.565 INFO    ] {'server_response': {'data': {'bill_amount': '20', 'order_id': 'TM08202202261028111313746', 'invoice_bill': '20', 'proposed_sku_json': [{'skuid': '4500764', 'qty': 1, 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500764-4671.webp', 'door_id': '2', 'sku_total': 20, 'tray_id': '42', 'name': 'KitKat 2 finger 18 gm', 'unit_price': 20, 'mrp': '20', 'offer_desc': ''}], 'access_code': '29409170', 'mobile': '9945573937'}, 'rstatus': True, 'status': True, 'msg': 'Order Data'}, 'order_id': 'TM08202202261028111313746', 'server_status': 'order-started'}
[2026-10-28 11:14:33,568.568 INFO    ] 200
[2026-10-28 11:14:33,570.570 INFO    ] {"data":{"server_response":{"data":{"bill_amount":"20","order_id":"TM08202202261028111313746","invoice_bill":"20","proposed_sku_json":[{"skuid":"4500764","qty":1,"offer_id":"","image_url":"https:\/\/images.tinymart.in\/product\/4500764-4671.webp","door_id":"2","sku_total":20,"tray_id":"42","name":"KitKat 2 finger 18 gm","unit_price":20,"mrp":"20","offer_desc":""}],"access_code":"29409170","mobile":"9945573937"},"rstatus":true,"status":true,"msg":"Order Data"},"order_id":"TM08202202261028111313746","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 11:14:33,574.574 INFO    ] {'data': {'server_status': 'order-started', 'order_id': 'TM08202202261028111313746', 'server_response': {'data': {'mobile': '9945573937', 'bill_amount': '20', 'order_id': 'TM08202202261028111313746', 'invoice_bill': '20', 'proposed_sku_json': [{'skuid': '4500764', 'qty': 1, 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500764-4671.webp', 'door_id': '2', 'tray_id': '42', 'name': 'KitKat 2 finger 18 gm', 'unit_price': 20, 'offer_desc': '', 'mrp': '20', 'sku_total': 20}], 'access_code': '29409170'}, 'rstatus': True, 'status': True, 'msg': 'Order Data'}}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-10-28 11:14:33,577.577 INFO    ] 2026-10-28 11:14:33
[2026-10-28 11:14:33,640.640 INFO    ] 200
[2026-10-28 11:14:33,643.643 INFO    ] True
[2026-10-28 11:14:33,795.795 INFO    ] 200
[2026-10-28 11:14:33,798.798 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "SectionStatus": {"SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}}
[2026-10-28 11:14:33,801.801 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': ''}, 'voiceNote': 'Please Wait', 'rstatus': False, 'status': 'False'}
[2026-10-28 11:14:33,806.806 INFO    ] *** process_order ***
[2026-10-28 11:14:35,008.008 INFO    ] 200
[2026-10-28 11:14:35,011.011 INFO    ] {"rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "SectionStatus": {"SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}}
[2026-10-28 11:14:35,014.014 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'voiceNote': 'Please Wait', 'rstatus': True, 'status': 'True'}
[2026-10-28 11:14:35,016.016 INFO    ] *** process_order ***
[2026-10-28 11:14:35,019.019 INFO    ] publish_status: order_id=TM08202202261028111313746
[2026-10-28 11:14:35,021.021 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028111313746
[2026-10-28 11:14:35,175.175 INFO    ] [publish_status] Message added to stream with ID: 1793166275095-0
[2026-10-28 11:14:35,177.177 INFO    ] Published to order:TM08202202261028111313746: {'server_response': '{"delay": 0, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionStatus": {"Note": "", "SubHeader": "You can pull the door now.", "UI_Header": "", "Header": " Your order is under process  "}, "voiceNote": "Door is open...", "rstatus": true, "status": "True"}', 'order_id': 'TM08202202261028111313746', 'server_status': 'doorOpened'} (ID: 1793166275095-0)
[2026-10-28 11:14:36,266.266 INFO    ] 2026-10-28 11:14:36
[2026-10-28 11:14:36,269.269 INFO    ] publish_status: order_id=TM08202202261028111313746
[2026-10-28 11:14:36,272.272 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028111313746
[2026-10-28 11:14:36,397.397 INFO    ] [publish_status] Message added to stream with ID: 1793166276328-0
[2026-10-28 11:14:36,399.399 INFO    ] Published to order:TM08202202261028111313746: {'timestamp': '2026-10-28T05:44:36.267757Z', 'server_response': '{"SectionStatus": {"Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": ""}, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Please Wait", "rstatus": true, "status": "True"}', 'order_id': 'TM08202202261028111313746', 'server_status': 'processOrder'} (ID: 1793166276328-0)
[2026-10-28 11:14:36,682.682 INFO    ] {'server_response': {'SectionStatus': {'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'voiceNote': 'Please Wait', 'rstatus': True, 'status': 'True'}, 'order_id': 'TM08202202261028111313746', 'server_status': 'processOrder'}
[2026-10-28 11:14:36,685.685 INFO    ] 200
[2026-10-28 11:14:36,688.688 INFO    ] {"data":{"server_response":{"SectionStatus":{"Header":" Your order is under process  ","SubHeader":"Please wait while we process your order","UI_Header":"","Note":""},"SectionMain":{"Header":"Processing Order"},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"delay":0,"voiceNote":"Please Wait","rstatus":true,"status":"true"},"order_id":"TM08202202261028111313746","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 11:14:36,691.691 INFO    ] {'data': {'server_status': 'processOrder', 'order_id': 'TM08202202261028111313746', 'server_response': {'delay': 0, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionStatus': {'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': ''}, 'voiceNote': 'Please Wait', 'rstatus': True, 'status': 'true', 'SectionMain': {'Header': 'Processing Order'}}}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-10-28 11:14:36,694.694 INFO    ] 2026-10-28 11:14:36
[2026-10-28 11:14:36,697.697 INFO    ] None
[2026-10-28 11:14:36,700.700 INFO    ] Opening Door now
[2026-10-28 11:14:36,703.703 INFO    ] Opening Door now
[2026-10-28 11:14:36,706.706 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-10-28 11:14:36,708.708 INFO    ] 2026-10-28 11:14:36
[2026-10-28 11:14:36,711.711 INFO    ] playing audio file
[2026-10-28 11:14:36,729.729 INFO    ] 2026-10-28 11:14:36
[2026-10-28 11:14:36,733.733 INFO    ] 2026-10-28 11:14:36
[2026-10-28 11:14:39,851.851 INFO    ] 200
[2026-10-28 11:14:39,854.854 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KitKat 2 finger 18 gm", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 2 is open now", "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"}}
[2026-10-28 11:14:39,857.857 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}, 'voiceNote': 'Door 2 is open now', 'rstatus': False, 'status': 'False'}
[2026-10-28 11:14:42,927.927 INFO    ] 200
[2026-10-28 11:14:42,929.929 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KitKat 2 finger 18 gm", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 11:14:42,933.933 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'status': 'False'}
[2026-10-28 11:14:46,021.021 INFO    ] 200
[2026-10-28 11:14:46,024.024 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KitKat 2 finger 18 gm", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 11:14:46,027.027 INFO    ] Please close door 2
[2026-10-28 11:14:46,030.030 INFO    ] Please close door 2
[2026-10-28 11:14:46,033.033 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-10-28 11:14:46,036.036 INFO    ] 2026-10-28 11:14:46
[2026-10-28 11:14:46,038.038 INFO    ] playing audio file
[2026-10-28 11:14:46,072.072 INFO    ] 2026-10-28 11:14:46
[2026-10-28 11:14:46,076.076 INFO    ] publish_status: order_id=TM08202202261028111313746
[2026-10-28 11:14:46,079.079 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028111313746
[2026-10-28 11:14:46,215.215 INFO    ] [publish_status] Message added to stream with ID: 1793166286134-0
[2026-10-28 11:14:46,218.218 INFO    ] Published to order:TM08202202261028111313746: {'timestamp': '2026-10-28T05:44:46.074756Z', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "error": {"data": {}, "umessage": "In Progress", "tmessage": "In Progress", "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KitKat 2 finger 18 gm", "qty": 1}]}, "SectionStatus": {"Header": "Please Close Door 2", "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"}, "voiceNote": "Please close door 2", "rstatus": false, "status": "False"}', 'order_id': 'TM08202202261028111313746', 'server_status': 'OrderStatus'} (ID: 1793166286134-0)
[2026-10-28 11:14:46,966.966 INFO    ] {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'status': 'False'}, 'order_id': 'TM08202202261028111313746', 'server_status': 'OrderStatus'}
[2026-10-28 11:14:46,969.969 INFO    ] 200
[2026-10-28 11:14:46,971.971 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Door Open"},"error":{"data":[],"umessage":"In Progress","tmessage":"In Progress","code":20001},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"KitKat 2 finger 18 gm","qty":1}]},"SectionStatus":{"Header":"Please Close Door 2","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"},"voiceNote":"Please close door 2","rstatus":false,"status":"false"},"order_id":"TM08202202261028111313746","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 11:14:46,975.975 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202261028111313746', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'error': {'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}}}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-10-28 11:14:46,978.978 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'status': 'False'}
[2026-10-28 11:14:50,070.070 INFO    ] 200
[2026-10-28 11:14:50,072.072 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KitKat 2 finger 18 gm", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 11:14:50,076.076 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'status': 'False'}
[2026-10-28 11:14:53,135.135 INFO    ] 200
[2026-10-28 11:14:53,137.137 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KitKat 2 finger 18 gm", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 11:14:53,140.140 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'status': 'False'}
[2026-10-28 11:14:56,201.201 INFO    ] 200
[2026-10-28 11:14:56,204.204 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KitKat 2 finger 18 gm", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 11:14:56,207.207 INFO    ] Please close door 2
[2026-10-28 11:14:56,210.210 INFO    ] Please close door 2
[2026-10-28 11:14:56,212.212 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-10-28 11:14:56,215.215 INFO    ] 2026-10-28 11:14:56
[2026-10-28 11:14:56,218.218 INFO    ] playing audio file
[2026-10-28 11:14:56,237.237 INFO    ] 2026-10-28 11:14:56
[2026-10-28 11:14:56,240.240 INFO    ] publish_status: order_id=TM08202202261028111313746
[2026-10-28 11:14:56,243.243 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028111313746
[2026-10-28 11:14:56,375.375 INFO    ] [publish_status] Message added to stream with ID: 1793166296319-0
[2026-10-28 11:14:56,377.377 INFO    ] Published to order:TM08202202261028111313746: {'timestamp': '2026-10-28T05:44:56.238949Z', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "error": {"data": {}, "umessage": "In Progress", "tmessage": "In Progress", "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KitKat 2 finger 18 gm", "qty": 1}]}, "SectionStatus": {"Header": "Please Close Door 2", "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"}, "voiceNote": "Please close door 2", "rstatus": false, "status": "False"}', 'order_id': 'TM08202202261028111313746', 'server_status': 'OrderStatus'} (ID: 1793166296319-0)
[2026-10-28 11:14:58,056.056 INFO    ] {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'status': 'False'}, 'order_id': 'TM08202202261028111313746', 'server_status': 'OrderStatus'}
[2026-10-28 11:14:58,058.058 INFO    ] 200
[2026-10-28 11:14:58,061.061 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Door Open"},"error":{"data":[],"umessage":"In Progress","tmessage":"In Progress","code":20001},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"KitKat 2 finger 18 gm","qty":1}]},"SectionStatus":{"Header":"Please Close Door 2","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"},"voiceNote":"Please close door 2","rstatus":false,"status":"false"},"order_id":"TM08202202261028111313746","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 11:14:58,065.065 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202261028111313746', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'error': {'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}}}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-10-28 11:14:58,068.068 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'status': 'False'}
[2026-10-28 11:15:01,118.118 INFO    ] 200
[2026-10-28 11:15:01,120.120 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KitKat 2 finger 18 gm", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 11:15:01,123.123 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'status': 'False'}
[2026-10-28 11:15:04,287.287 INFO    ] 200
[2026-10-28 11:15:04,290.290 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KitKat 2 finger 18 gm", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 11:15:04,294.294 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'status': 'False'}
[2026-10-28 11:15:07,358.358 INFO    ] 200
[2026-10-28 11:15:07,360.360 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KitKat 2 finger 18 gm", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 11:15:07,363.363 INFO    ] Please close door 2
[2026-10-28 11:15:07,366.366 INFO    ] Please close door 2
[2026-10-28 11:15:07,369.369 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-10-28 11:15:07,371.371 INFO    ] 2026-10-28 11:15:07
[2026-10-28 11:15:07,374.374 INFO    ] playing audio file
[2026-10-28 11:15:07,391.391 INFO    ] 2026-10-28 11:15:07
[2026-10-28 11:15:07,395.395 INFO    ] publish_status: order_id=TM08202202261028111313746
[2026-10-28 11:15:07,398.398 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028111313746
[2026-10-28 11:15:07,542.542 INFO    ] [publish_status] Message added to stream with ID: 1793166307485-0
[2026-10-28 11:15:07,545.545 INFO    ] Published to order:TM08202202261028111313746: {'timestamp': '2026-10-28T05:45:07.393026Z', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "error": {"data": {}, "umessage": "In Progress", "tmessage": "In Progress", "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KitKat 2 finger 18 gm", "qty": 1}]}, "SectionStatus": {"Header": "Please Close Door 2", "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"}, "voiceNote": "Please close door 2", "rstatus": false, "status": "False"}', 'order_id': 'TM08202202261028111313746', 'server_status': 'OrderStatus'} (ID: 1793166307485-0)
[2026-10-28 11:15:08,286.286 INFO    ] {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'status': 'False'}, 'order_id': 'TM08202202261028111313746', 'server_status': 'OrderStatus'}
[2026-10-28 11:15:08,289.289 INFO    ] 200
[2026-10-28 11:15:08,292.292 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Door Open"},"error":{"data":[],"umessage":"In Progress","tmessage":"In Progress","code":20001},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"KitKat 2 finger 18 gm","qty":1}]},"SectionStatus":{"Header":"Please Close Door 2","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"},"voiceNote":"Please close door 2","rstatus":false,"status":"false"},"order_id":"TM08202202261028111313746","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 11:15:08,296.296 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202261028111313746', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'error': {'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}}}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-10-28 11:15:08,298.298 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'status': 'False'}
[2026-10-28 11:15:11,359.359 INFO    ] 200
[2026-10-28 11:15:11,361.361 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KitKat 2 finger 18 gm", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 11:15:11,365.365 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'status': 'False'}
[2026-10-28 11:15:14,442.442 INFO    ] 200
[2026-10-28 11:15:14,445.445 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KitKat 2 finger 18 gm", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 11:15:14,448.448 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Please Close Door 2', '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'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'status': 'False'}
[2026-10-28 11:15:17,509.509 INFO    ] 200
[2026-10-28 11:15:17,511.511 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KitKat 2 finger 18 gm", "qty": 1}]}, "status": "False", "delay": 1000, "SectionMain": {"Header": "Door Close"}, "voiceNote": "Door 2 is closed now", "SectionStatus": {"SubHeader": "Please wait for invoice to generate", "Header": "Door 2 is closed now", "Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "DOOR 2\nIS \nCLOSED \nNOW"}}
[2026-10-28 11:15:17,515.515 INFO    ] Door 2 is closed now
[2026-10-28 11:15:17,517.517 INFO    ] Door 2 is closed now
[2026-10-28 11:15:17,520.520 INFO    ] 58e552dbe68743127355b4d67ac73250
[2026-10-28 11:15:17,523.523 INFO    ] 2026-10-28 11:15:17
[2026-10-28 11:15:17,525.525 INFO    ] playing audio file
[2026-10-28 11:15:17,543.543 INFO    ] 2026-10-28 11:15:17
[2026-10-28 11:15:17,547.547 INFO    ] publish_status: order_id=TM08202202261028111313746
[2026-10-28 11:15:17,550.550 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028111313746
[2026-10-28 11:15:17,656.656 INFO    ] [publish_status] Message added to stream with ID: 1793166317600-0
[2026-10-28 11:15:17,659.659 INFO    ] Published to order:TM08202202261028111313746: {'timestamp': '2026-10-28T05:45:17.545419Z', 'server_response': '{"SectionStatus": {"Header": "Door 2 is closed now", "SubHeader": "Please wait for invoice to generate", "UI_Header": "DOOR 2\\nIS \\nCLOSED \\nNOW", "Note": "If any due amount, clear at https://go.tinymart.in"}, "delay": 1000, "error": {"data": {}, "umessage": "In Progress", "tmessage": "In Progress", "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "KitKat 2 finger 18 gm", "qty": 1}]}, "SectionMain": {"Header": "Door Close"}, "voiceNote": "Door 2 is closed now", "rstatus": false, "status": "False"}', 'order_id': 'TM08202202261028111313746', 'server_status': 'OrderStatus'} (ID: 1793166317600-0)
[2026-10-28 11:15:18,882.882 INFO    ] {'server_response': {'SectionStatus': {'Header': 'Door 2 is closed now', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': 'DOOR 2\nIS \nCLOSED \nNOW', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'delay': 1000, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Close'}, 'voiceNote': 'Door 2 is closed now', 'rstatus': False, 'status': 'False'}, 'order_id': 'TM08202202261028111313746', 'server_status': 'OrderStatus'}
[2026-10-28 11:15:18,885.885 INFO    ] 200
[2026-10-28 11:15:18,888.888 INFO    ] {"data":{"server_response":{"SectionStatus":{"Header":"Door 2 is closed now","SubHeader":"Please wait for invoice to generate","UI_Header":"DOOR 2\nIS \nCLOSED \nNOW","Note":"If any due amount, clear at https:\/\/go.tinymart.in"},"delay":1000,"error":{"data":[],"umessage":"In Progress","tmessage":"In Progress","code":20001},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"KitKat 2 finger 18 gm","qty":1}]},"SectionMain":{"Header":"Door Close"},"voiceNote":"Door 2 is closed now","rstatus":false,"status":"false"},"order_id":"TM08202202261028111313746","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 11:15:18,891.891 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202261028111313746', 'server_response': {'delay': 1000, 'SectionMain': {'Header': 'Door Close'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionStatus': {'Header': 'Door 2 is closed now', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': 'DOOR 2\nIS \nCLOSED \nNOW', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'voiceNote': 'Door 2 is closed now', 'rstatus': False, 'error': {'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}}}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-10-28 11:15:18,894.894 INFO    ] {'SectionStatus': {'Header': 'Door 2 is closed now', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': 'DOOR 2\nIS \nCLOSED \nNOW', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'delay': 1000, 'error': {'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'KitKat 2 finger 18 gm', 'qty': 1}]}, 'SectionMain': {'Header': 'Door Close'}, 'voiceNote': 'Door 2 is closed now', 'rstatus': False, 'status': 'False'}
[2026-10-28 11:15:21,956.956 INFO    ] 200
[2026-10-28 11:15:21,958.958 INFO    ] {"rstatus": true, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "status": "True", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed", "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": ""}}
[2026-10-28 11:15:21,961.961 INFO    ] {'SectionStatus': {'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'status': 'True'}
[2026-10-28 11:15:21,965.965 INFO    ] 2026-10-28 11:15:21
[2026-10-28 11:15:21,968.968 INFO    ] Order Completed 
[2026-10-28 11:15:21,970.970 INFO    ] Order Completed 
[2026-10-28 11:15:21,973.973 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-10-28 11:15:21,976.976 INFO    ] 2026-10-28 11:15:21
[2026-10-28 11:15:21,979.979 INFO    ] playing audio file
[2026-10-28 11:15:21,998.998 INFO    ] 2026-10-28 11:15:21
[2026-10-28 11:15:22,001.001 INFO    ] {'SectionStatus': {'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'status': 'True'}
[2026-10-28 11:15:22,004.004 INFO    ] 2026-10-28 11:15:22
[2026-10-28 11:15:22,479.479 INFO    ] 200
[2026-10-28 11:15:22,482.482 INFO    ] {"rstatus": true, "cart_offer_desc": "", "total_amount": 160, "skus": [{"image_url": "https://images.tinymart.in/product/4500678-5296.png", "skuid": "4500678", "qty": 2, "sku_total": 20, "tray_id": "41", "name": "Eat Bit Sesame  Chikki 32gm per peice", "door_id": "", "mrp": "10", "offer_id": "", "unit_price": "10"}, {"image_url": "https://images.tinymart.in/product/4500764-4671.webp", "skuid": "4500764", "qty": 7, "sku_total": 140, "tray_id": "42", "name": "KitKat 2 finger 18 gm per peice", "door_id": "", "mrp": "20", "offer_id": "", "unit_price": "20"}], "bill_amount": 160, "res": true, "anomaly": 0, "imei": "TM08202202", "orderId": "TM08202202261028111313746", "order_status": "", "userId": "9945573937"}
[2026-10-28 11:15:22,485.485 INFO    ] {'userId': '9945573937', 'res': True, 'total_amount': 160, 'imei': 'TM08202202', 'bill_amount': 160, 'orderId': 'TM08202202261028111313746', 'rstatus': True, 'anomaly': 0, 'cart_offer_desc': '', 'skus': [{'skuid': '4500678', 'qty': 2, 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500678-5296.png', 'sku_total': 20, 'tray_id': '41', 'name': 'Eat Bit Sesame  Chikki 32gm per peice', 'unit_price': '10', 'mrp': '10', 'door_id': ''}, {'skuid': '4500764', 'qty': 7, 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500764-4671.webp', 'sku_total': 140, 'tray_id': '42', 'name': 'KitKat 2 finger 18 gm per peice', 'unit_price': '20', 'mrp': '20', 'door_id': ''}], 'order_status': ''}
[2026-10-28 11:15:22,488.488 INFO    ] {'userId': '9945573937', 'res': True, 'total_amount': 160, 'imei': 'TM08202202', 'bill_amount': 160, 'orderId': 'TM08202202261028111313746', 'rstatus': True, 'anomaly': 0, 'cart_offer_desc': '', 'skus': [{'skuid': '4500678', 'qty': 2, 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500678-5296.png', 'sku_total': 20, 'tray_id': '41', 'name': 'Eat Bit Sesame  Chikki 32gm per peice', 'unit_price': '10', 'mrp': '10', 'door_id': ''}, {'skuid': '4500764', 'qty': 7, 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500764-4671.webp', 'sku_total': 140, 'tray_id': '42', 'name': 'KitKat 2 finger 18 gm per peice', 'unit_price': '20', 'mrp': '20', 'door_id': ''}], 'order_status': ''}
[2026-10-28 11:15:22,491.491 INFO    ] 2026-10-28 11:15:22
[2026-10-28 11:15:22,494.494 INFO    ] 2026-10-28 11:15:22
[2026-10-28 11:15:22,496.496 INFO    ] 20
[2026-10-28 11:15:22,498.498 INFO    ] 2026-10-28 11:15:22
[2026-10-28 11:15:22,501.501 INFO    ] 2026-10-28 11:15:22
[2026-10-28 11:15:22,503.503 INFO    ]  You had Picked Excess of 140 Your Bill Amount is 160
[2026-10-28 11:15:22,505.505 INFO    ]  You had Picked Excess of 140 Your Bill Amount is 160
[2026-10-28 11:15:22,508.508 INFO    ] 729470f9a3395c801acabbaa7cf18897
[2026-10-28 11:15:22,510.510 INFO    ] 2026-10-28 11:15:22
[2026-10-28 11:15:22,513.513 INFO    ] playing audio file
[2026-10-28 11:15:22,530.530 INFO    ] 2026-10-28 11:15:22
[2026-10-28 11:15:22,533.533 INFO    ] 2026-10-28 11:15:22
[2026-10-28 11:15:22,537.537 INFO    ] publish_status: order_id=TM08202202261028111313746
[2026-10-28 11:15:22,540.540 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028111313746
[2026-10-28 11:15:23,612.612 INFO    ] [publish_status] Message added to stream with ID: 1793166323524-0
[2026-10-28 11:15:23,615.615 INFO    ] Published to order:TM08202202261028111313746: {'timestamp': '2026-10-28T05:45:22.535565Z', 'server_response': '{"userId": "9945573937", "res": true, "total_amount": 160, "imei": "TM08202202", "bill_amount": 160, "orderId": "TM08202202261028111313746", "rstatus": true, "anomaly": 0, "cart_offer_desc": "", "skus": [{"skuid": "4500678", "qty": 2, "offer_id": "", "image_url": "https://images.tinymart.in/product/4500678-5296.png", "sku_total": 20, "tray_id": "41", "name": "Eat Bit Sesame  Chikki 32gm per peice", "unit_price": "10", "mrp": "10", "door_id": ""}, {"skuid": "4500764", "qty": 7, "offer_id": "", "image_url": "https://images.tinymart.in/product/4500764-4671.webp", "sku_total": 140, "tray_id": "42", "name": "KitKat 2 finger 18 gm per peice", "unit_price": "20", "mrp": "20", "door_id": ""}], "order_status": ""}', 'order_id': 'TM08202202261028111313746', 'server_status': 'invoiceOrder'} (ID: 1793166323524-0)
[2026-10-28 11:15:27,007.007 INFO    ] {'server_response': {'userId': '9945573937', 'res': True, 'total_amount': 160, 'imei': 'TM08202202', 'bill_amount': 160, 'orderId': 'TM08202202261028111313746', 'rstatus': True, 'anomaly': 0, 'cart_offer_desc': '', 'skus': [{'skuid': '4500678', 'qty': 2, 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500678-5296.png', 'sku_total': 20, 'tray_id': '41', 'name': 'Eat Bit Sesame  Chikki 32gm per peice', 'unit_price': '10', 'mrp': '10', 'door_id': ''}, {'skuid': '4500764', 'qty': 7, 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500764-4671.webp', 'sku_total': 140, 'tray_id': '42', 'name': 'KitKat 2 finger 18 gm per peice', 'unit_price': '20', 'mrp': '20', 'door_id': ''}], 'order_status': ''}, 'order_id': 'TM08202202261028111313746', 'server_status': 'invoiceOrder'}
[2026-10-28 11:15:27,009.009 INFO    ] 200
[2026-10-28 11:15:27,012.012 INFO    ] {"data":{"server_response":{"userId":"9945573937","res":true,"total_amount":160,"imei":"TM08202202","bill_amount":160,"orderId":"TM08202202261028111313746","rstatus":true,"anomaly":0,"cart_offer_desc":"","skus":[{"skuid":"4500678","qty":2,"offer_id":"","image_url":"https:\/\/images.tinymart.in\/product\/4500678-5296.png","sku_total":20,"tray_id":"41","name":"Eat Bit Sesame  Chikki 32gm per peice","unit_price":"10","mrp":"10","door_id":""},{"skuid":"4500764","qty":7,"offer_id":"","image_url":"https:\/\/images.tinymart.in\/product\/4500764-4671.webp","sku_total":140,"tray_id":"42","name":"KitKat 2 finger 18 gm per peice","unit_price":"20","mrp":"20","door_id":""}],"order_status":""},"order_id":"TM08202202261028111313746","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 11:15:27,015.015 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202202261028111313746', 'server_response': {'orderId': 'TM08202202261028111313746', 'total_amount': 160, 'imei': 'TM08202202', 'bill_amount': 160, 'order_status': '', 'rstatus': True, 'anomaly': 0, 'skus': [{'skuid': '4500678', 'qty': 2, 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500678-5296.png', 'sku_total': 20, 'tray_id': '41', 'name': 'Eat Bit Sesame  Chikki 32gm per peice', 'unit_price': '10', 'mrp': '10', 'door_id': ''}, {'skuid': '4500764', 'qty': 7, 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500764-4671.webp', 'sku_total': 140, 'tray_id': '42', 'name': 'KitKat 2 finger 18 gm per peice', 'unit_price': '20', 'mrp': '20', 'door_id': ''}], 'userId': '9945573937', 'res': True, 'cart_offer_desc': ''}}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-10-28 11:15:27,018.018 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202202261028111313746', 'server_response': {'orderId': 'TM08202202261028111313746', 'total_amount': 160, 'imei': 'TM08202202', 'bill_amount': 160, 'order_status': '', 'rstatus': True, 'anomaly': 0, 'skus': [{'skuid': '4500678', 'qty': 2, 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500678-5296.png', 'sku_total': 20, 'tray_id': '41', 'name': 'Eat Bit Sesame  Chikki 32gm per peice', 'unit_price': '10', 'mrp': '10', 'door_id': ''}, {'skuid': '4500764', 'qty': 7, 'offer_id': '', 'image_url': 'https://images.tinymart.in/product/4500764-4671.webp', 'sku_total': 140, 'tray_id': '42', 'name': 'KitKat 2 finger 18 gm per peice', 'unit_price': '20', 'mrp': '20', 'door_id': ''}], 'userId': '9945573937', 'res': True, 'cart_offer_desc': ''}}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-10-28 11:15:27,020.020 INFO    ] 2026-10-28 11:15:27
[2026-10-28 11:15:31,161.161 INFO    ] 200
[2026-10-28 11:15:31,163.163 INFO    ] {"orders": [], "tray_synced": ["TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746", "TM08202202261028111313746"], "orders_synced": [], "tray_sync": [], "order_items_synced": ["TM08202202261028111313746_0", "TM08202202261028111313746_1"], "status": true, "orders_data_synced": [], "order_items": [], "orders_data": []}
[2026-10-28 11:15:31,167.167 INFO    ] 2026-10-28 11:15:31
[2026-10-28 11:15:31,393.393 INFO    ] 200
[2026-10-28 11:15:31,397.397 INFO    ] True
[2026-10-28 11:15:31,400.400 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202202261028111313746
[2026-10-28 11:15:31,405.405 INFO    ] start order file deleted
[2026-10-28 11:15:31,408.408 INFO    ] Checking for system updates...
[2026-10-28 11:15:31,445.445 INFO    ] 200
[2026-10-28 11:15:31,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:15:31,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:15:31,511.511 INFO    ] No update needed
[2026-10-28 11:15:31,515.515 INFO    ] Checking for camera pi updates...
[2026-10-28 11:15:31,552.552 INFO    ] 200
[2026-10-28 11:15:31,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:15:31,602.602 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:15:31,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:15:31,690.690 INFO    ] No camera update needed
[2026-10-28 11:15:31,693.693 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:15:31,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:15:31,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:15:31,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:15:33,751.751 INFO    ] ================================================
[2026-10-28 11:15:33,768.768 INFO    ] Launching Daemon at Wed Oct 28 11:15:33 IST 2026
[2026-10-28 11:15:33,779.779 INFO    ] ================================================
[2026-10-28 11:15:34,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:15:34
[2026-10-28 11:15:34,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:15:35,225.225 INFO    ] Initializing speech engine...
[2026-10-28 11:15:35,233.233 INFO    ] 2026-10-28 11:15:35
[2026-10-28 11:15:35,505.505 INFO    ] 2026-10-28 11:15:35
[2026-10-28 11:15:35,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:15:35,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:15:35,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:15:36,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:15:36,054.054 INFO    ] time= 28/10/2026 11:15:36
[2026-10-28 11:15:36,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:15:36,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:15:36,239.239 INFO    ] No existing commands found in stream
[2026-10-28 11:15:41,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:15:41,278.278 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 11:15:43,371.371 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:15:43,374.374 INFO    ] Checking for system updates...
[2026-10-28 11:15:43,412.412 INFO    ] 200
[2026-10-28 11:15:43,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:15:43,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:15:43,469.469 INFO    ] No update needed
[2026-10-28 11:15:43,471.471 INFO    ] Checking for camera pi updates...
[2026-10-28 11:15:43,510.510 INFO    ] 200
[2026-10-28 11:15:43,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:15:43,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:15:43,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:15:43,650.650 INFO    ] No camera update needed
[2026-10-28 11:15:43,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:15:43,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:15:43,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:15:43,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:15:45,706.706 INFO    ] ================================================
[2026-10-28 11:15:45,722.722 INFO    ] Launching Daemon at Wed Oct 28 11:15:45 IST 2026
[2026-10-28 11:15:45,732.732 INFO    ] ================================================
[2026-10-28 11:15:46,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:15:46
[2026-10-28 11:15:46,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:15:47,290.290 INFO    ] Initializing speech engine...
[2026-10-28 11:15:47,298.298 INFO    ] 2026-10-28 11:15:47
[2026-10-28 11:15:47,568.568 INFO    ] 2026-10-28 11:15:47
[2026-10-28 11:15:47,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:15:47,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:15:47,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:15:48,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:15:48,130.130 INFO    ] time= 28/10/2026 11:15:48
[2026-10-28 11:15:48,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:15:48,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:15:48,355.355 INFO    ] No existing commands found in stream
[2026-10-28 11:15:53,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:15:53,385.385 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 11:15:56,610.610 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:15:56,613.613 INFO    ] Checking for system updates...
[2026-10-28 11:15:56,650.650 INFO    ] 200
[2026-10-28 11:15:56,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:15:56,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:15:56,708.708 INFO    ] No update needed
[2026-10-28 11:15:56,710.710 INFO    ] Checking for camera pi updates...
[2026-10-28 11:15:56,744.744 INFO    ] 200
[2026-10-28 11:15:56,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:15:56,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:15:56,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:15:56,876.876 INFO    ] No camera update needed
[2026-10-28 11:15:56,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:15:56,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:15:56,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:15:56,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:15:58,934.934 INFO    ] ================================================
[2026-10-28 11:15:58,949.949 INFO    ] Launching Daemon at Wed Oct 28 11:15:58 IST 2026
[2026-10-28 11:15:58,960.960 INFO    ] ================================================
[2026-10-28 11:15:59,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:15:59
[2026-10-28 11:16:00,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:16:00,514.514 INFO    ] Initializing speech engine...
[2026-10-28 11:16:00,521.521 INFO    ] 2026-10-28 11:16:00
[2026-10-28 11:16:00,786.786 INFO    ] 2026-10-28 11:16:00
[2026-10-28 11:16:00,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:16:01,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:16:01,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:16:01,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:16:01,340.340 INFO    ] time= 28/10/2026 11:16:01
[2026-10-28 11:16:01,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:16:01,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:16:01,542.542 INFO    ] No existing commands found in stream
[2026-10-28 11:16:06,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:16:06,555.555 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-28 11:16:09,971.971 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:16:09,974.974 INFO    ] Checking for system updates...
[2026-10-28 11:16:10,011.011 INFO    ] 200
[2026-10-28 11:16:10,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:16:10,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:16:10,070.070 INFO    ] No update needed
[2026-10-28 11:16:10,073.073 INFO    ] Checking for camera pi updates...
[2026-10-28 11:16:10,109.109 INFO    ] 200
[2026-10-28 11:16:10,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:16:10,155.155 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:16:10,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:16:10,256.256 INFO    ] No camera update needed
[2026-10-28 11:16:10,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:16:10,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:16:10,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:16:10,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:16:12,311.311 INFO    ] ================================================
[2026-10-28 11:16:12,326.326 INFO    ] Launching Daemon at Wed Oct 28 11:16:12 IST 2026
[2026-10-28 11:16:12,337.337 INFO    ] ================================================
[2026-10-28 11:16:12,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:16:12
[2026-10-28 11:16:13,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:16:13,763.763 INFO    ] Initializing speech engine...
[2026-10-28 11:16:13,772.772 INFO    ] 2026-10-28 11:16:13
[2026-10-28 11:16:14,022.022 INFO    ] 2026-10-28 11:16:14
[2026-10-28 11:16:14,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:16:14,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:16:14,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:16:14,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:16:14,590.590 INFO    ] time= 28/10/2026 11:16:14
[2026-10-28 11:16:14,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:16:14,615.615 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:16:14,749.749 INFO    ] No existing commands found in stream
[2026-10-28 11:16:19,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:16:19,765.765 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-28 11:16:21,049.049 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:16:21,051.051 INFO    ] Checking for system updates...
[2026-10-28 11:16:21,090.090 INFO    ] 200
[2026-10-28 11:16:21,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:16:21,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:16:21,152.152 INFO    ] No update needed
[2026-10-28 11:16:21,154.154 INFO    ] Checking for camera pi updates...
[2026-10-28 11:16:21,187.187 INFO    ] 200
[2026-10-28 11:16:21,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:16:21,229.229 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:16:21,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:16:21,324.324 INFO    ] No camera update needed
[2026-10-28 11:16:21,326.326 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:16:21,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:16:21,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:16:21,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:16:23,379.379 INFO    ] ================================================
[2026-10-28 11:16:23,394.394 INFO    ] Launching Daemon at Wed Oct 28 11:16:23 IST 2026
[2026-10-28 11:16:23,405.405 INFO    ] ================================================
[2026-10-28 11:16:23,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:16:23
[2026-10-28 11:16:24,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:16:24,802.802 INFO    ] Initializing speech engine...
[2026-10-28 11:16:24,814.814 INFO    ] 2026-10-28 11:16:24
[2026-10-28 11:16:25,077.077 INFO    ] 2026-10-28 11:16:25
[2026-10-28 11:16:25,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:16:25,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:16:25,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:16:25,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:16:25,630.630 INFO    ] time= 28/10/2026 11:16:25
[2026-10-28 11:16:25,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:16:25,654.654 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:16:25,811.811 INFO    ] No existing commands found in stream
[2026-10-28 11:16:30,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:16:30,844.844 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-28 11:16:34,230.230 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:16:34,233.233 INFO    ] Checking for system updates...
[2026-10-28 11:16:34,268.268 INFO    ] 200
[2026-10-28 11:16:34,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:16:34,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:16:34,326.326 INFO    ] No update needed
[2026-10-28 11:16:34,329.329 INFO    ] Checking for camera pi updates...
[2026-10-28 11:16:34,362.362 INFO    ] 200
[2026-10-28 11:16:34,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:16:34,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:16:34,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:16:34,496.496 INFO    ] No camera update needed
[2026-10-28 11:16:34,498.498 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:16:34,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:16:34,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:16:34,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:16:36,552.552 INFO    ] ================================================
[2026-10-28 11:16:36,567.567 INFO    ] Launching Daemon at Wed Oct 28 11:16:36 IST 2026
[2026-10-28 11:16:36,578.578 INFO    ] ================================================
[2026-10-28 11:16:37,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:16:37
[2026-10-28 11:16:37,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:16:38,003.003 INFO    ] Initializing speech engine...
[2026-10-28 11:16:38,012.012 INFO    ] 2026-10-28 11:16:38
[2026-10-28 11:16:38,262.262 INFO    ] 2026-10-28 11:16:38
[2026-10-28 11:16:38,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:16:38,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:16:38,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:16:38,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:16:38,840.840 INFO    ] time= 28/10/2026 11:16:38
[2026-10-28 11:16:38,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:16:38,880.880 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:16:39,016.016 INFO    ] No existing commands found in stream
[2026-10-28 11:16:44,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:16:44,049.049 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-28 11:16:47,497.497 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:16:47,500.500 INFO    ] Checking for system updates...
[2026-10-28 11:16:47,536.536 INFO    ] 200
[2026-10-28 11:16:47,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:16:47,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:16:47,602.602 INFO    ] No update needed
[2026-10-28 11:16:47,605.605 INFO    ] Checking for camera pi updates...
[2026-10-28 11:16:47,641.641 INFO    ] 200
[2026-10-28 11:16:47,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:16:47,687.687 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:16:47,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:16:47,790.790 INFO    ] No camera update needed
[2026-10-28 11:16:47,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:16:47,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:16:47,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:16:47,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:16:49,844.844 INFO    ] ================================================
[2026-10-28 11:16:49,859.859 INFO    ] Launching Daemon at Wed Oct 28 11:16:49 IST 2026
[2026-10-28 11:16:49,869.869 INFO    ] ================================================
[2026-10-28 11:16:50,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:16:50
[2026-10-28 11:16:51,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:16:51,281.281 INFO    ] Initializing speech engine...
[2026-10-28 11:16:51,304.304 INFO    ] 2026-10-28 11:16:51
[2026-10-28 11:16:51,560.560 INFO    ] 2026-10-28 11:16:51
[2026-10-28 11:16:51,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:16:51,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:16:51,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:16:52,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:16:52,132.132 INFO    ] time= 28/10/2026 11:16:52
[2026-10-28 11:16:52,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:16:52,158.158 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:16:52,299.299 INFO    ] No existing commands found in stream
[2026-10-28 11:16:57,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:16:57,326.326 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-28 11:16:59,310.310 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:16:59,312.312 INFO    ] Checking for system updates...
[2026-10-28 11:16:59,351.351 INFO    ] 200
[2026-10-28 11:16:59,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:16:59,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:16:59,408.408 INFO    ] No update needed
[2026-10-28 11:16:59,410.410 INFO    ] Checking for camera pi updates...
[2026-10-28 11:16:59,443.443 INFO    ] 200
[2026-10-28 11:16:59,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:16:59,485.485 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:16:59,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:16:59,571.571 INFO    ] No camera update needed
[2026-10-28 11:16:59,574.574 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:16:59,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:16:59,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:16:59,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:17:01,656.656 INFO    ] ================================================
[2026-10-28 11:17:01,682.682 INFO    ] Launching Daemon at Wed Oct 28 11:17:01 IST 2026
[2026-10-28 11:17:01,709.709 INFO    ] ================================================
[2026-10-28 11:17:02,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:17:02
[2026-10-28 11:17:03,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:17:03,504.504 INFO    ] Initializing speech engine...
[2026-10-28 11:17:03,514.514 INFO    ] 2026-10-28 11:17:03
[2026-10-28 11:17:03,818.818 INFO    ] 2026-10-28 11:17:03
[2026-10-28 11:17:03,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:17:04,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:17:04,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:17:04,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:17:04,348.348 INFO    ] time= 28/10/2026 11:17:04
[2026-10-28 11:17:04,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:17:04,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:17:04,522.522 INFO    ] No existing commands found in stream
[2026-10-28 11:17:09,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:17:09,555.555 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-28 11:17:12,569.569 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:17:12,572.572 INFO    ] Checking for system updates...
[2026-10-28 11:17:12,608.608 INFO    ] 200
[2026-10-28 11:17:12,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:17:12,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:17:12,669.669 INFO    ] No update needed
[2026-10-28 11:17:12,671.671 INFO    ] Checking for camera pi updates...
[2026-10-28 11:17:12,705.705 INFO    ] 200
[2026-10-28 11:17:12,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:17:12,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:17:12,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:17:12,816.816 INFO    ] No camera update needed
[2026-10-28 11:17:12,819.819 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:17:12,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:17:12,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:17:12,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:17:14,871.871 INFO    ] ================================================
[2026-10-28 11:17:14,886.886 INFO    ] Launching Daemon at Wed Oct 28 11:17:14 IST 2026
[2026-10-28 11:17:14,896.896 INFO    ] ================================================
[2026-10-28 11:17:15,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:17:15
[2026-10-28 11:17:16,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:17:16,354.354 INFO    ] Initializing speech engine...
[2026-10-28 11:17:16,366.366 INFO    ] 2026-10-28 11:17:16
[2026-10-28 11:17:16,627.627 INFO    ] 2026-10-28 11:17:16
[2026-10-28 11:17:16,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:17:16,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:17:16,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:17:17,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:17:17,205.205 INFO    ] time= 28/10/2026 11:17:17
[2026-10-28 11:17:17,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:17:17,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:17:17,388.388 INFO    ] No existing commands found in stream
[2026-10-28 11:17:22,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:17:22,414.414 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 11:17:23,078.078 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:17:23,081.081 INFO    ] Checking for system updates...
[2026-10-28 11:17:23,119.119 INFO    ] 200
[2026-10-28 11:17:23,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:17:23,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:17:23,180.180 INFO    ] No update needed
[2026-10-28 11:17:23,182.182 INFO    ] Checking for camera pi updates...
[2026-10-28 11:17:23,218.218 INFO    ] 200
[2026-10-28 11:17:23,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:17:23,265.265 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:17:23,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:17:23,349.349 INFO    ] No camera update needed
[2026-10-28 11:17:23,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:17:23,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:17:23,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:17:23,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:17:25,403.403 INFO    ] ================================================
[2026-10-28 11:17:25,418.418 INFO    ] Launching Daemon at Wed Oct 28 11:17:25 IST 2026
[2026-10-28 11:17:25,429.429 INFO    ] ================================================
[2026-10-28 11:17:25,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:17:25
[2026-10-28 11:17:26,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:17:26,847.847 INFO    ] Initializing speech engine...
[2026-10-28 11:17:26,857.857 INFO    ] 2026-10-28 11:17:26
[2026-10-28 11:17:27,115.115 INFO    ] 2026-10-28 11:17:27
[2026-10-28 11:17:27,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:17:27,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:17:27,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:17:27,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:17:27,825.825 INFO    ] time= 28/10/2026 11:17:27
[2026-10-28 11:17:27,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:17:27,906.906 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:17:28,063.063 INFO    ] No existing commands found in stream
[2026-10-28 11:17:33,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:17:33,102.102 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-28 11:17:37,778.778 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:17:37,781.781 INFO    ] Checking for system updates...
[2026-10-28 11:17:37,816.816 INFO    ] 200
[2026-10-28 11:17:37,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:17:37,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:17:37,874.874 INFO    ] No update needed
[2026-10-28 11:17:37,877.877 INFO    ] Checking for camera pi updates...
[2026-10-28 11:17:37,911.911 INFO    ] 200
[2026-10-28 11:17:37,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:17:37,954.954 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:17:38,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:17:38,147.147 INFO    ] No camera update needed
[2026-10-28 11:17:38,149.149 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:17:38,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:17:38,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:17:38,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:17:40,209.209 INFO    ] ================================================
[2026-10-28 11:17:40,224.224 INFO    ] Launching Daemon at Wed Oct 28 11:17:40 IST 2026
[2026-10-28 11:17:40,235.235 INFO    ] ================================================
[2026-10-28 11:17:40,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:17:40
[2026-10-28 11:17:41,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:17:41,673.673 INFO    ] Initializing speech engine...
[2026-10-28 11:17:41,694.694 INFO    ] 2026-10-28 11:17:41
[2026-10-28 11:17:41,953.953 INFO    ] 2026-10-28 11:17:41
[2026-10-28 11:17:41,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:17:42,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:17:42,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:17:42,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:17:42,560.560 INFO    ] time= 28/10/2026 11:17:42
[2026-10-28 11:17:42,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:17:42,585.585 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:17:42,721.721 INFO    ] No existing commands found in stream
[2026-10-28 11:17:47,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:17:47,744.744 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-28 11:17:53,215.215 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:17:53,218.218 INFO    ] Checking for system updates...
[2026-10-28 11:17:53,253.253 INFO    ] 200
[2026-10-28 11:17:53,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:17:53,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:17:53,312.312 INFO    ] No update needed
[2026-10-28 11:17:53,315.315 INFO    ] Checking for camera pi updates...
[2026-10-28 11:17:53,351.351 INFO    ] 200
[2026-10-28 11:17:53,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:17:53,396.396 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:17:53,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:17:53,479.479 INFO    ] No camera update needed
[2026-10-28 11:17:53,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:17:53,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:17:53,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:17:53,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:17:55,536.536 INFO    ] ================================================
[2026-10-28 11:17:55,552.552 INFO    ] Launching Daemon at Wed Oct 28 11:17:55 IST 2026
[2026-10-28 11:17:55,563.563 INFO    ] ================================================
[2026-10-28 11:17:56,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:17:56
[2026-10-28 11:17:56,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:17:56,989.989 INFO    ] Initializing speech engine...
[2026-10-28 11:17:56,995.995 INFO    ] 2026-10-28 11:17:56
[2026-10-28 11:17:57,252.252 INFO    ] 2026-10-28 11:17:57
[2026-10-28 11:17:57,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:17:57,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:17:57,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:17:57,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:17:57,810.810 INFO    ] time= 28/10/2026 11:17:57
[2026-10-28 11:17:57,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:17:57,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:17:57,975.975 INFO    ] No existing commands found in stream
[2026-10-28 11:18:02,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:18:02,998.998 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 11:18:06,900.900 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:18:06,903.903 INFO    ] Checking for system updates...
[2026-10-28 11:18:06,939.939 INFO    ] 200
[2026-10-28 11:18:06,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:18:06,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:18:06,996.996 INFO    ] No update needed
[2026-10-28 11:18:06,999.999 INFO    ] Checking for camera pi updates...
[2026-10-28 11:18:07,032.032 INFO    ] 200
[2026-10-28 11:18:07,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:18:07,077.077 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:18:07,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:18:07,169.169 INFO    ] No camera update needed
[2026-10-28 11:18:07,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:18:07,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:18:07,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:18:07,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:18:09,224.224 INFO    ] ================================================
[2026-10-28 11:18:09,240.240 INFO    ] Launching Daemon at Wed Oct 28 11:18:09 IST 2026
[2026-10-28 11:18:09,251.251 INFO    ] ================================================
[2026-10-28 11:18:09,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:18:09
[2026-10-28 11:18:10,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:18:10,670.670 INFO    ] Initializing speech engine...
[2026-10-28 11:18:10,679.679 INFO    ] 2026-10-28 11:18:10
[2026-10-28 11:18:10,927.927 INFO    ] 2026-10-28 11:18:10
[2026-10-28 11:18:10,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:18:11,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:18:11,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:18:11,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:18:11,506.506 INFO    ] time= 28/10/2026 11:18:11
[2026-10-28 11:18:11,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:18:11,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:18:11,651.651 INFO    ] No existing commands found in stream
[2026-10-28 11:18:16,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:18:16,667.667 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 11:18:18,690.690 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:18:18,693.693 INFO    ] Checking for system updates...
[2026-10-28 11:18:18,728.728 INFO    ] 200
[2026-10-28 11:18:18,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:18:18,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:18:18,786.786 INFO    ] No update needed
[2026-10-28 11:18:18,788.788 INFO    ] Checking for camera pi updates...
[2026-10-28 11:18:18,821.821 INFO    ] 200
[2026-10-28 11:18:18,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:18:18,864.864 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:18:18,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:18:19,053.053 INFO    ] No camera update needed
[2026-10-28 11:18:19,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:18:19,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:18:19,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:18:19,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:18:21,110.110 INFO    ] ================================================
[2026-10-28 11:18:21,126.126 INFO    ] Launching Daemon at Wed Oct 28 11:18:21 IST 2026
[2026-10-28 11:18:21,137.137 INFO    ] ================================================
[2026-10-28 11:18:21,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:18:21
[2026-10-28 11:18:22,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:18:22,556.556 INFO    ] Initializing speech engine...
[2026-10-28 11:18:22,566.566 INFO    ] 2026-10-28 11:18:22
[2026-10-28 11:18:22,810.810 INFO    ] 2026-10-28 11:18:22
[2026-10-28 11:18:22,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:18:23,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:18:23,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:18:23,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:18:23,283.283 INFO    ] time= 28/10/2026 11:18:23
[2026-10-28 11:18:23,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:18:23,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:18:23,456.456 INFO    ] No existing commands found in stream
[2026-10-28 11:18:28,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:18:28,468.468 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-28 11:18:33,010.010 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:18:33,013.013 INFO    ] Checking for system updates...
[2026-10-28 11:18:33,051.051 INFO    ] 200
[2026-10-28 11:18:33,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:18:33,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:18:33,119.119 INFO    ] No update needed
[2026-10-28 11:18:33,122.122 INFO    ] Checking for camera pi updates...
[2026-10-28 11:18:33,162.162 INFO    ] 200
[2026-10-28 11:18:33,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:18:33,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:18:33,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:18:33,289.289 INFO    ] No camera update needed
[2026-10-28 11:18:33,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:18:33,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:18:33,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:18:33,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:18:35,345.345 INFO    ] ================================================
[2026-10-28 11:18:35,360.360 INFO    ] Launching Daemon at Wed Oct 28 11:18:35 IST 2026
[2026-10-28 11:18:35,370.370 INFO    ] ================================================
[2026-10-28 11:18:36,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:18:36
[2026-10-28 11:18:36,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:18:36,968.968 INFO    ] Initializing speech engine...
[2026-10-28 11:18:36,982.982 INFO    ] 2026-10-28 11:18:36
[2026-10-28 11:18:37,289.289 INFO    ] 2026-10-28 11:18:37
[2026-10-28 11:18:37,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:18:37,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:18:37,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:18:37,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:18:37,960.960 INFO    ] time= 28/10/2026 11:18:37
[2026-10-28 11:18:38,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:18:38,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:18:38,190.190 INFO    ] No existing commands found in stream
[2026-10-28 11:18:43,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:18:43,211.211 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-28 11:18:44,493.493 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:18:44,496.496 INFO    ] Checking for system updates...
[2026-10-28 11:18:44,533.533 INFO    ] 200
[2026-10-28 11:18:44,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:18:44,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:18:44,591.591 INFO    ] No update needed
[2026-10-28 11:18:44,594.594 INFO    ] Checking for camera pi updates...
[2026-10-28 11:18:44,628.628 INFO    ] 200
[2026-10-28 11:18:44,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:18:44,672.672 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:18:44,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:18:44,773.773 INFO    ] No camera update needed
[2026-10-28 11:18:44,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:18:44,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:18:44,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:18:44,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:18:46,832.832 INFO    ] ================================================
[2026-10-28 11:18:46,847.847 INFO    ] Launching Daemon at Wed Oct 28 11:18:46 IST 2026
[2026-10-28 11:18:46,858.858 INFO    ] ================================================
[2026-10-28 11:18:47,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:18:47
[2026-10-28 11:18:48,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:18:48,443.443 INFO    ] Initializing speech engine...
[2026-10-28 11:18:48,451.451 INFO    ] 2026-10-28 11:18:48
[2026-10-28 11:18:48,716.716 INFO    ] 2026-10-28 11:18:48
[2026-10-28 11:18:48,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:18:49,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:18:49,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:18:49,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:18:49,317.317 INFO    ] time= 28/10/2026 11:18:49
[2026-10-28 11:18:49,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:18:49,360.360 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:18:49,498.498 INFO    ] No existing commands found in stream
[2026-10-28 11:18:54,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:18:54,521.521 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-28 11:18:57,553.553 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:18:57,555.555 INFO    ] Checking for system updates...
[2026-10-28 11:18:57,590.590 INFO    ] 200
[2026-10-28 11:18:57,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:18:57,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:18:57,654.654 INFO    ] No update needed
[2026-10-28 11:18:57,656.656 INFO    ] Checking for camera pi updates...
[2026-10-28 11:18:57,690.690 INFO    ] 200
[2026-10-28 11:18:57,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:18:57,732.732 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:18:57,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:18:57,813.813 INFO    ] No camera update needed
[2026-10-28 11:18:57,816.816 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:18:57,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:18:57,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:18:57,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:18:59,868.868 INFO    ] ================================================
[2026-10-28 11:18:59,884.884 INFO    ] Launching Daemon at Wed Oct 28 11:18:59 IST 2026
[2026-10-28 11:18:59,895.895 INFO    ] ================================================
[2026-10-28 11:19:00,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:19:00
[2026-10-28 11:19:01,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:19:01,318.318 INFO    ] Initializing speech engine...
[2026-10-28 11:19:01,328.328 INFO    ] 2026-10-28 11:19:01
[2026-10-28 11:19:01,574.574 INFO    ] 2026-10-28 11:19:01
[2026-10-28 11:19:01,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:19:01,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:19:01,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:19:02,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:19:02,128.128 INFO    ] time= 28/10/2026 11:19:02
[2026-10-28 11:19:02,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:19:02,135.135 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:19:02,253.253 INFO    ] No existing commands found in stream
[2026-10-28 11:19:07,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:19:07,266.266 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 11:19:08,342.342 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:19:08,345.345 INFO    ] Checking for system updates...
[2026-10-28 11:19:08,391.391 INFO    ] 200
[2026-10-28 11:19:08,393.393 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 11:19:08,396.396 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-28 11:19:08,399.399 INFO    ] Checking for camera pi updates...
[2026-10-28 11:19:08,444.444 INFO    ] 200
[2026-10-28 11:19:08,446.446 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 11:19:08,449.449 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-28 11:19:08,452.452 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:19:08,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:19:08,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:19:08,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:19:10,511.511 INFO    ] ================================================
[2026-10-28 11:19:10,527.527 INFO    ] Launching Daemon at Wed Oct 28 11:19:10 IST 2026
[2026-10-28 11:19:10,543.543 INFO    ] ================================================
[2026-10-28 11:19:11,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:19:11
[2026-10-28 11:19:11,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:19:12,002.002 INFO    ] Initializing speech engine...
[2026-10-28 11:19:12,008.008 INFO    ] 2026-10-28 11:19:12
[2026-10-28 11:19:12,307.307 INFO    ] 2026-10-28 11:19:12
[2026-10-28 11:19:12,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:19:12,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:19:12,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:19:12,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:19:12,930.930 INFO    ] time= 28/10/2026 11:19:12
[2026-10-28 11:19:12,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:19:12,954.954 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:19:13,100.100 INFO    ] No existing commands found in stream
[2026-10-28 11:19:18,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:19:18,118.118 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 11:19:20,739.739 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:19:20,741.741 INFO    ] Checking for system updates...
[2026-10-28 11:19:20,777.777 INFO    ] 200
[2026-10-28 11:19:20,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:19:20,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:19:20,834.834 INFO    ] No update needed
[2026-10-28 11:19:20,836.836 INFO    ] Checking for camera pi updates...
[2026-10-28 11:19:20,870.870 INFO    ] 200
[2026-10-28 11:19:20,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:19:20,917.917 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:19:20,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:19:20,969.969 INFO    ] No camera update needed
[2026-10-28 11:19:20,972.972 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:19:20,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:19:20,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:19:20,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:19:23,025.025 INFO    ] ================================================
[2026-10-28 11:19:23,040.040 INFO    ] Launching Daemon at Wed Oct 28 11:19:23 IST 2026
[2026-10-28 11:19:23,051.051 INFO    ] ================================================
[2026-10-28 11:19:23,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:19:23
[2026-10-28 11:19:24,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:19:24,516.516 INFO    ] Initializing speech engine...
[2026-10-28 11:19:24,532.532 INFO    ] 2026-10-28 11:19:24
[2026-10-28 11:19:24,808.808 INFO    ] 2026-10-28 11:19:24
[2026-10-28 11:19:24,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:19:25,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:19:25,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:19:25,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:19:25,335.335 INFO    ] time= 28/10/2026 11:19:25
[2026-10-28 11:19:25,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:19:25,435.435 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:19:25,568.568 INFO    ] No existing commands found in stream
[2026-10-28 11:19:30,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:19:30,589.589 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-28 11:19:34,408.408 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:19:34,411.411 INFO    ] Checking for system updates...
[2026-10-28 11:19:34,446.446 INFO    ] 200
[2026-10-28 11:19:34,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:19:34,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:19:34,510.510 INFO    ] No update needed
[2026-10-28 11:19:34,512.512 INFO    ] Checking for camera pi updates...
[2026-10-28 11:19:34,545.545 INFO    ] 200
[2026-10-28 11:19:34,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:19:34,587.587 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:19:34,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:19:34,649.649 INFO    ] No camera update needed
[2026-10-28 11:19:34,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:19:34,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:19:34,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:19:34,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:19:36,705.705 INFO    ] ================================================
[2026-10-28 11:19:36,720.720 INFO    ] Launching Daemon at Wed Oct 28 11:19:36 IST 2026
[2026-10-28 11:19:36,732.732 INFO    ] ================================================
[2026-10-28 11:19:37,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:19:37
[2026-10-28 11:19:37,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:19:38,251.251 INFO    ] Initializing speech engine...
[2026-10-28 11:19:38,262.262 INFO    ] 2026-10-28 11:19:38
[2026-10-28 11:19:38,533.533 INFO    ] 2026-10-28 11:19:38
[2026-10-28 11:19:38,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:19:38,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:19:38,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:19:39,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:19:39,260.260 INFO    ] time= 28/10/2026 11:19:39
[2026-10-28 11:19:39,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:19:39,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:19:39,501.501 INFO    ] No existing commands found in stream
[2026-10-28 11:19:44,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:19:44,524.524 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 11:19:45,650.650 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:19:45,653.653 INFO    ] Checking for system updates...
[2026-10-28 11:19:45,691.691 INFO    ] 200
[2026-10-28 11:19:45,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:19:45,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:19:45,750.750 INFO    ] No update needed
[2026-10-28 11:19:45,752.752 INFO    ] Checking for camera pi updates...
[2026-10-28 11:19:45,786.786 INFO    ] 200
[2026-10-28 11:19:45,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:19:45,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:19:46,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:19:46,012.012 INFO    ] No camera update needed
[2026-10-28 11:19:46,014.014 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:19:46,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:19:46,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:19:46,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:19:48,068.068 INFO    ] ================================================
[2026-10-28 11:19:48,084.084 INFO    ] Launching Daemon at Wed Oct 28 11:19:48 IST 2026
[2026-10-28 11:19:48,095.095 INFO    ] ================================================
[2026-10-28 11:19:48,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:19:48
[2026-10-28 11:19:49,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:19:49,715.715 INFO    ] Initializing speech engine...
[2026-10-28 11:19:49,723.723 INFO    ] 2026-10-28 11:19:49
[2026-10-28 11:19:50,000.000 INFO    ] 2026-10-28 11:19:49
[2026-10-28 11:19:50,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:19:50,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:19:50,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:19:50,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:19:50,712.712 INFO    ] time= 28/10/2026 11:19:50
[2026-10-28 11:19:50,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:19:50,821.821 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:19:50,976.976 INFO    ] No existing commands found in stream
[2026-10-28 11:19:56,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:19:56,013.013 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-28 11:19:59,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:19:59,931.931 INFO    ] Checking for system updates...
[2026-10-28 11:19:59,966.966 INFO    ] 200
[2026-10-28 11:19:59,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:20:00,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:20:00,024.024 INFO    ] No update needed
[2026-10-28 11:20:00,026.026 INFO    ] Checking for camera pi updates...
[2026-10-28 11:20:00,059.059 INFO    ] 200
[2026-10-28 11:20:00,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:20:00,102.102 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:20:00,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:20:00,191.191 INFO    ] No camera update needed
[2026-10-28 11:20:00,193.193 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:20:00,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:20:00,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:20:00,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:20:02,346.346 INFO    ] ================================================
[2026-10-28 11:20:02,417.417 INFO    ] Launching Daemon at Wed Oct 28 11:20:02 IST 2026
[2026-10-28 11:20:02,445.445 INFO    ] ================================================
[2026-10-28 11:20:03,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:20:03
[2026-10-28 11:20:03,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:20:04,274.274 INFO    ] Initializing speech engine...
[2026-10-28 11:20:04,295.295 INFO    ] 2026-10-28 11:20:04
[2026-10-28 11:20:04,564.564 INFO    ] 2026-10-28 11:20:04
[2026-10-28 11:20:04,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:20:04,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:20:04,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:20:05,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:20:05,120.120 INFO    ] time= 28/10/2026 11:20:05
[2026-10-28 11:20:05,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:20:05,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:20:05,250.250 INFO    ] No existing commands found in stream
[2026-10-28 11:20:10,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:20:10,283.283 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-28 11:20:14,592.592 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:20:14,595.595 INFO    ] Checking for system updates...
[2026-10-28 11:20:14,630.630 INFO    ] 200
[2026-10-28 11:20:14,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:20:14,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:20:14,687.687 INFO    ] No update needed
[2026-10-28 11:20:14,690.690 INFO    ] Checking for camera pi updates...
[2026-10-28 11:20:14,723.723 INFO    ] 200
[2026-10-28 11:20:14,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:20:14,769.769 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:20:14,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:20:14,840.840 INFO    ] No camera update needed
[2026-10-28 11:20:14,842.842 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:20:14,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:20:14,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:20:14,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:20:16,898.898 INFO    ] ================================================
[2026-10-28 11:20:16,914.914 INFO    ] Launching Daemon at Wed Oct 28 11:20:16 IST 2026
[2026-10-28 11:20:16,925.925 INFO    ] ================================================
[2026-10-28 11:20:17,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:20:17
[2026-10-28 11:20:18,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:20:18,346.346 INFO    ] Initializing speech engine...
[2026-10-28 11:20:18,353.353 INFO    ] 2026-10-28 11:20:18
[2026-10-28 11:20:18,610.610 INFO    ] 2026-10-28 11:20:18
[2026-10-28 11:20:18,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:20:18,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:20:18,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:20:19,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:20:19,161.161 INFO    ] time= 28/10/2026 11:20:19
[2026-10-28 11:20:19,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:20:19,197.197 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:20:19,342.342 INFO    ] No existing commands found in stream
[2026-10-28 11:20:24,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:20:24,371.371 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-28 11:20:25,009.009 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:20:25,011.011 INFO    ] Checking for system updates...
[2026-10-28 11:20:25,050.050 INFO    ] 200
[2026-10-28 11:20:25,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:20:25,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:20:25,108.108 INFO    ] No update needed
[2026-10-28 11:20:25,111.111 INFO    ] Checking for camera pi updates...
[2026-10-28 11:20:25,144.144 INFO    ] 200
[2026-10-28 11:20:25,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:20:25,191.191 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:20:25,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:20:25,273.273 INFO    ] No camera update needed
[2026-10-28 11:20:25,275.275 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:20:25,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:20:25,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:20:25,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:20:27,330.330 INFO    ] ================================================
[2026-10-28 11:20:27,346.346 INFO    ] Launching Daemon at Wed Oct 28 11:20:27 IST 2026
[2026-10-28 11:20:27,357.357 INFO    ] ================================================
[2026-10-28 11:20:27,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:20:27
[2026-10-28 11:20:28,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:20:28,771.771 INFO    ] Initializing speech engine...
[2026-10-28 11:20:28,785.785 INFO    ] 2026-10-28 11:20:28
[2026-10-28 11:20:29,070.070 INFO    ] 2026-10-28 11:20:29
[2026-10-28 11:20:29,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:20:29,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:20:29,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:20:29,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:20:29,700.700 INFO    ] time= 28/10/2026 11:20:29
[2026-10-28 11:20:29,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:20:29,730.730 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:20:29,879.879 INFO    ] No existing commands found in stream
[2026-10-28 11:20:34,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:20:34,898.898 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 11:20:35,731.731 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:20:35,734.734 INFO    ] Checking for system updates...
[2026-10-28 11:20:35,774.774 INFO    ] 200
[2026-10-28 11:20:35,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:20:35,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:20:35,838.838 INFO    ] No update needed
[2026-10-28 11:20:35,840.840 INFO    ] Checking for camera pi updates...
[2026-10-28 11:20:35,874.874 INFO    ] 200
[2026-10-28 11:20:35,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:20:35,916.916 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:20:35,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:20:35,999.999 INFO    ] No camera update needed
[2026-10-28 11:20:36,002.002 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:20:36,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:20:36,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:20:36,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:20:38,054.054 INFO    ] ================================================
[2026-10-28 11:20:38,071.071 INFO    ] Launching Daemon at Wed Oct 28 11:20:38 IST 2026
[2026-10-28 11:20:38,081.081 INFO    ] ================================================
[2026-10-28 11:20:38,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:20:38
[2026-10-28 11:20:39,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:20:39,725.725 INFO    ] Initializing speech engine...
[2026-10-28 11:20:39,737.737 INFO    ] 2026-10-28 11:20:39
[2026-10-28 11:20:40,020.020 INFO    ] 2026-10-28 11:20:40
[2026-10-28 11:20:40,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:20:40,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:20:40,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:20:40,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:20:40,578.578 INFO    ] time= 28/10/2026 11:20:40
[2026-10-28 11:20:40,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:20:40,615.615 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:20:40,734.734 INFO    ] No existing commands found in stream
[2026-10-28 11:20:45,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:20:45,768.768 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 11:20:47,180.180 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:20:47,183.183 INFO    ] Checking for system updates...
[2026-10-28 11:20:47,220.220 INFO    ] 200
[2026-10-28 11:20:47,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:20:47,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:20:47,286.286 INFO    ] No update needed
[2026-10-28 11:20:47,289.289 INFO    ] Checking for camera pi updates...
[2026-10-28 11:20:47,324.324 INFO    ] 200
[2026-10-28 11:20:47,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:20:47,369.369 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:20:47,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:20:47,454.454 INFO    ] No camera update needed
[2026-10-28 11:20:47,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:20:47,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:20:47,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:20:47,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:20:49,514.514 INFO    ] ================================================
[2026-10-28 11:20:49,529.529 INFO    ] Launching Daemon at Wed Oct 28 11:20:49 IST 2026
[2026-10-28 11:20:49,540.540 INFO    ] ================================================
[2026-10-28 11:20:50,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:20:50
[2026-10-28 11:20:50,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:20:51,029.029 INFO    ] Initializing speech engine...
[2026-10-28 11:20:51,036.036 INFO    ] 2026-10-28 11:20:51
[2026-10-28 11:20:51,298.298 INFO    ] 2026-10-28 11:20:51
[2026-10-28 11:20:51,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:20:51,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:20:51,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:20:51,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:20:51,845.845 INFO    ] time= 28/10/2026 11:20:51
[2026-10-28 11:20:51,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:20:51,891.891 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:20:52,052.052 INFO    ] No existing commands found in stream
[2026-10-28 11:20:57,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:20:57,085.085 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-28 11:20:58,436.436 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:20:58,439.439 INFO    ] Checking for system updates...
[2026-10-28 11:20:58,476.476 INFO    ] 200
[2026-10-28 11:20:58,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:20:58,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:20:58,542.542 INFO    ] No update needed
[2026-10-28 11:20:58,545.545 INFO    ] Checking for camera pi updates...
[2026-10-28 11:20:58,585.585 INFO    ] 200
[2026-10-28 11:20:58,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:20:58,634.634 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:20:58,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:20:58,716.716 INFO    ] No camera update needed
[2026-10-28 11:20:58,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:20:58,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:20:58,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:20:58,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:21:00,775.775 INFO    ] ================================================
[2026-10-28 11:21:00,790.790 INFO    ] Launching Daemon at Wed Oct 28 11:21:00 IST 2026
[2026-10-28 11:21:00,800.800 INFO    ] ================================================
[2026-10-28 11:21:01,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:21:01
[2026-10-28 11:21:02,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:21:02,498.498 INFO    ] Initializing speech engine...
[2026-10-28 11:21:02,520.520 INFO    ] 2026-10-28 11:21:02
[2026-10-28 11:21:02,801.801 INFO    ] 2026-10-28 11:21:02
[2026-10-28 11:21:02,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:21:03,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:21:03,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:21:03,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:21:03,428.428 INFO    ] time= 28/10/2026 11:21:03
[2026-10-28 11:21:03,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:21:03,452.452 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:21:03,569.569 INFO    ] No existing commands found in stream
[2026-10-28 11:21:08,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:21:08,597.597 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 11:21:12,911.911 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:21:12,914.914 INFO    ] Checking for system updates...
[2026-10-28 11:21:12,954.954 INFO    ] 200
[2026-10-28 11:21:12,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:21:13,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:21:13,017.017 INFO    ] No update needed
[2026-10-28 11:21:13,019.019 INFO    ] Checking for camera pi updates...
[2026-10-28 11:21:13,056.056 INFO    ] 200
[2026-10-28 11:21:13,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:21:13,099.099 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:21:13,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:21:13,180.180 INFO    ] No camera update needed
[2026-10-28 11:21:13,182.182 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:21:13,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:21:13,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:21:13,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:21:15,236.236 INFO    ] ================================================
[2026-10-28 11:21:15,251.251 INFO    ] Launching Daemon at Wed Oct 28 11:21:15 IST 2026
[2026-10-28 11:21:15,262.262 INFO    ] ================================================
[2026-10-28 11:21:15,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:21:15
[2026-10-28 11:21:16,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:21:16,677.677 INFO    ] Initializing speech engine...
[2026-10-28 11:21:16,687.687 INFO    ] 2026-10-28 11:21:16
[2026-10-28 11:21:16,930.930 INFO    ] 2026-10-28 11:21:16
[2026-10-28 11:21:16,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:21:17,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:21:17,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:21:17,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:21:17,481.481 INFO    ] time= 28/10/2026 11:21:17
[2026-10-28 11:21:17,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:21:17,505.505 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:21:17,636.636 INFO    ] No existing commands found in stream
[2026-10-28 11:21:22,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:21:22,660.660 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-28 11:21:24,594.594 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:21:24,597.597 INFO    ] Checking for system updates...
[2026-10-28 11:21:24,634.634 INFO    ] 200
[2026-10-28 11:21:24,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:21:24,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:21:24,691.691 INFO    ] No update needed
[2026-10-28 11:21:24,694.694 INFO    ] Checking for camera pi updates...
[2026-10-28 11:21:24,727.727 INFO    ] 200
[2026-10-28 11:21:24,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:21:24,770.770 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:21:24,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:21:24,855.855 INFO    ] No camera update needed
[2026-10-28 11:21:24,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:21:24,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:21:24,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:21:24,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:21:26,912.912 INFO    ] ================================================
[2026-10-28 11:21:26,927.927 INFO    ] Launching Daemon at Wed Oct 28 11:21:26 IST 2026
[2026-10-28 11:21:26,938.938 INFO    ] ================================================
[2026-10-28 11:21:27,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:21:27
[2026-10-28 11:21:28,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:21:28,361.361 INFO    ] Initializing speech engine...
[2026-10-28 11:21:28,371.371 INFO    ] 2026-10-28 11:21:28
[2026-10-28 11:21:28,615.615 INFO    ] 2026-10-28 11:21:28
[2026-10-28 11:21:28,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:21:29,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:21:29,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:21:29,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:21:29,276.276 INFO    ] time= 28/10/2026 11:21:29
[2026-10-28 11:21:29,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:21:29,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:21:29,509.509 INFO    ] No existing commands found in stream
[2026-10-28 11:21:34,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:21:34,537.537 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-28 11:21:35,837.837 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:21:35,840.840 INFO    ] Checking for system updates...
[2026-10-28 11:21:35,877.877 INFO    ] 200
[2026-10-28 11:21:35,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:21:35,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:21:35,946.946 INFO    ] No update needed
[2026-10-28 11:21:35,948.948 INFO    ] Checking for camera pi updates...
[2026-10-28 11:21:35,982.982 INFO    ] 200
[2026-10-28 11:21:35,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:21:36,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:21:36,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:21:36,107.107 INFO    ] No camera update needed
[2026-10-28 11:21:36,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:21:36,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:21:36,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:21:36,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:21:38,164.164 INFO    ] ================================================
[2026-10-28 11:21:38,179.179 INFO    ] Launching Daemon at Wed Oct 28 11:21:38 IST 2026
[2026-10-28 11:21:38,191.191 INFO    ] ================================================
[2026-10-28 11:21:38,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:21:38
[2026-10-28 11:21:39,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:21:39,802.802 INFO    ] Initializing speech engine...
[2026-10-28 11:21:39,809.809 INFO    ] 2026-10-28 11:21:39
[2026-10-28 11:21:40,071.071 INFO    ] 2026-10-28 11:21:40
[2026-10-28 11:21:40,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:21:40,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:21:40,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:21:40,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:21:40,556.556 INFO    ] time= 28/10/2026 11:21:40
[2026-10-28 11:21:40,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:21:40,660.660 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:21:40,751.751 INFO    ] No existing commands found in stream
[2026-10-28 11:21:45,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:21:45,766.766 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-28 11:21:47,892.892 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:21:47,895.895 INFO    ] Checking for system updates...
[2026-10-28 11:21:47,931.931 INFO    ] 200
[2026-10-28 11:21:47,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:21:47,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:21:47,995.995 INFO    ] No update needed
[2026-10-28 11:21:47,997.997 INFO    ] Checking for camera pi updates...
[2026-10-28 11:21:48,032.032 INFO    ] 200
[2026-10-28 11:21:48,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:21:48,082.082 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:21:48,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:21:48,266.266 INFO    ] No camera update needed
[2026-10-28 11:21:48,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:21:48,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:21:48,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:21:48,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:21:50,327.327 INFO    ] ================================================
[2026-10-28 11:21:50,344.344 INFO    ] Launching Daemon at Wed Oct 28 11:21:50 IST 2026
[2026-10-28 11:21:50,354.354 INFO    ] ================================================
[2026-10-28 11:21:50,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:21:50
[2026-10-28 11:21:51,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:21:51,844.844 INFO    ] Initializing speech engine...
[2026-10-28 11:21:51,860.860 INFO    ] 2026-10-28 11:21:51
[2026-10-28 11:21:52,146.146 INFO    ] 2026-10-28 11:21:52
[2026-10-28 11:21:52,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:21:52,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:21:52,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:21:52,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:21:52,715.715 INFO    ] time= 28/10/2026 11:21:52
[2026-10-28 11:21:52,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:21:52,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:21:52,932.932 INFO    ] No existing commands found in stream
[2026-10-28 11:21:57,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:21:57,962.962 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-28 11:22:01,300.300 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:22:01,303.303 INFO    ] Checking for system updates...
[2026-10-28 11:22:01,338.338 INFO    ] 200
[2026-10-28 11:22:01,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:22:01,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:22:01,395.395 INFO    ] No update needed
[2026-10-28 11:22:01,397.397 INFO    ] Checking for camera pi updates...
[2026-10-28 11:22:01,430.430 INFO    ] 200
[2026-10-28 11:22:01,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:22:01,473.473 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:22:01,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:22:01,594.594 INFO    ] No camera update needed
[2026-10-28 11:22:01,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:22:01,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:22:01,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:22:01,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:22:03,650.650 INFO    ] ================================================
[2026-10-28 11:22:03,666.666 INFO    ] Launching Daemon at Wed Oct 28 11:22:03 IST 2026
[2026-10-28 11:22:03,677.677 INFO    ] ================================================
[2026-10-28 11:22:04,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:22:04
[2026-10-28 11:22:04,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:22:05,256.256 INFO    ] Initializing speech engine...
[2026-10-28 11:22:05,267.267 INFO    ] 2026-10-28 11:22:05
[2026-10-28 11:22:05,544.544 INFO    ] 2026-10-28 11:22:05
[2026-10-28 11:22:05,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:22:05,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:22:05,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:22:06,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:22:06,127.127 INFO    ] time= 28/10/2026 11:22:06
[2026-10-28 11:22:06,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:22:06,153.153 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:22:06,335.335 INFO    ] No existing commands found in stream
[2026-10-28 11:22:11,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:22:11,355.355 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-28 11:22:14,827.827 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:22:14,830.830 INFO    ] Checking for system updates...
[2026-10-28 11:22:14,870.870 INFO    ] 200
[2026-10-28 11:22:14,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:22:14,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:22:14,927.927 INFO    ] No update needed
[2026-10-28 11:22:14,930.930 INFO    ] Checking for camera pi updates...
[2026-10-28 11:22:14,967.967 INFO    ] 200
[2026-10-28 11:22:14,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:22:15,014.014 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:22:15,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:22:15,098.098 INFO    ] No camera update needed
[2026-10-28 11:22:15,100.100 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:22:15,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:22:15,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:22:15,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:22:17,154.154 INFO    ] ================================================
[2026-10-28 11:22:17,170.170 INFO    ] Launching Daemon at Wed Oct 28 11:22:17 IST 2026
[2026-10-28 11:22:17,181.181 INFO    ] ================================================
[2026-10-28 11:22:17,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:22:17
[2026-10-28 11:22:18,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:22:18,612.612 INFO    ] Initializing speech engine...
[2026-10-28 11:22:18,621.621 INFO    ] 2026-10-28 11:22:18
[2026-10-28 11:22:18,868.868 INFO    ] 2026-10-28 11:22:18
[2026-10-28 11:22:18,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:22:19,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:22:19,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:22:19,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:22:19,428.428 INFO    ] time= 28/10/2026 11:22:19
[2026-10-28 11:22:19,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:22:19,453.453 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:22:19,580.580 INFO    ] No existing commands found in stream
[2026-10-28 11:22:24,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:22:24,599.599 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-28 11:22:26,456.456 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:22:26,459.459 INFO    ] Checking for system updates...
[2026-10-28 11:22:26,498.498 INFO    ] 200
[2026-10-28 11:22:26,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:22:26,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:22:26,556.556 INFO    ] No update needed
[2026-10-28 11:22:26,559.559 INFO    ] Checking for camera pi updates...
[2026-10-28 11:22:26,592.592 INFO    ] 200
[2026-10-28 11:22:26,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:22:26,640.640 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:22:26,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:22:26,727.727 INFO    ] No camera update needed
[2026-10-28 11:22:26,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:22:26,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:22:26,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:22:26,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:22:28,786.786 INFO    ] ================================================
[2026-10-28 11:22:28,802.802 INFO    ] Launching Daemon at Wed Oct 28 11:22:28 IST 2026
[2026-10-28 11:22:28,812.812 INFO    ] ================================================
[2026-10-28 11:22:29,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:22:29
[2026-10-28 11:22:30,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:22:30,431.431 INFO    ] Initializing speech engine...
[2026-10-28 11:22:30,443.443 INFO    ] 2026-10-28 11:22:30
[2026-10-28 11:22:30,755.755 INFO    ] 2026-10-28 11:22:30
[2026-10-28 11:22:30,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:22:31,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:22:31,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:22:31,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:22:31,304.304 INFO    ] time= 28/10/2026 11:22:31
[2026-10-28 11:22:31,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:22:31,322.322 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:22:31,489.489 INFO    ] No existing commands found in stream
[2026-10-28 11:22:36,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:22:36,523.523 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-28 11:22:39,891.891 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:22:39,895.895 INFO    ] Checking for system updates...
[2026-10-28 11:22:39,931.931 INFO    ] 200
[2026-10-28 11:22:39,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:22:39,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:22:39,992.992 INFO    ] No update needed
[2026-10-28 11:22:39,994.994 INFO    ] Checking for camera pi updates...
[2026-10-28 11:22:40,029.029 INFO    ] 200
[2026-10-28 11:22:40,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:22:40,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:22:40,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:22:40,168.168 INFO    ] No camera update needed
[2026-10-28 11:22:40,170.170 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:22:40,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:22:40,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:22:40,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:22:42,226.226 INFO    ] ================================================
[2026-10-28 11:22:42,241.241 INFO    ] Launching Daemon at Wed Oct 28 11:22:42 IST 2026
[2026-10-28 11:22:42,251.251 INFO    ] ================================================
[2026-10-28 11:22:42,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:22:42
[2026-10-28 11:22:43,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:22:43,675.675 INFO    ] Initializing speech engine...
[2026-10-28 11:22:43,684.684 INFO    ] 2026-10-28 11:22:43
[2026-10-28 11:22:43,936.936 INFO    ] 2026-10-28 11:22:43
[2026-10-28 11:22:43,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:22:44,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:22:44,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:22:44,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:22:44,485.485 INFO    ] time= 28/10/2026 11:22:44
[2026-10-28 11:22:44,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:22:44,531.531 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:22:44,666.666 INFO    ] No existing commands found in stream
[2026-10-28 11:22:49,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:22:49,694.694 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-28 11:22:52,812.812 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:22:52,815.815 INFO    ] Checking for system updates...
[2026-10-28 11:22:52,855.855 INFO    ] 200
[2026-10-28 11:22:52,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:22:52,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:22:52,918.918 INFO    ] No update needed
[2026-10-28 11:22:52,920.920 INFO    ] Checking for camera pi updates...
[2026-10-28 11:22:52,954.954 INFO    ] 200
[2026-10-28 11:22:52,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:22:53,002.002 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:22:53,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:22:53,070.070 INFO    ] No camera update needed
[2026-10-28 11:22:53,072.072 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:22:53,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:22:53,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:22:53,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:22:55,127.127 INFO    ] ================================================
[2026-10-28 11:22:55,142.142 INFO    ] Launching Daemon at Wed Oct 28 11:22:55 IST 2026
[2026-10-28 11:22:55,153.153 INFO    ] ================================================
[2026-10-28 11:22:55,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:22:55
[2026-10-28 11:22:56,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:22:56,721.721 INFO    ] Initializing speech engine...
[2026-10-28 11:22:56,734.734 INFO    ] 2026-10-28 11:22:56
[2026-10-28 11:22:57,014.014 INFO    ] 2026-10-28 11:22:56
[2026-10-28 11:22:57,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:22:57,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:22:57,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:22:57,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:22:57,762.762 INFO    ] time= 28/10/2026 11:22:57
[2026-10-28 11:22:57,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:22:57,869.869 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:22:58,000.000 INFO    ] No existing commands found in stream
[2026-10-28 11:23:03,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:23:03,015.015 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-28 11:23:07,009.009 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:23:07,012.012 INFO    ] Checking for system updates...
[2026-10-28 11:23:07,050.050 INFO    ] 200
[2026-10-28 11:23:07,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:23:07,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:23:07,107.107 INFO    ] No update needed
[2026-10-28 11:23:07,110.110 INFO    ] Checking for camera pi updates...
[2026-10-28 11:23:07,147.147 INFO    ] 200
[2026-10-28 11:23:07,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:23:07,191.191 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:23:07,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:23:07,291.291 INFO    ] No camera update needed
[2026-10-28 11:23:07,294.294 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:23:07,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:23:07,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:23:07,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:23:09,348.348 INFO    ] ================================================
[2026-10-28 11:23:09,363.363 INFO    ] Launching Daemon at Wed Oct 28 11:23:09 IST 2026
[2026-10-28 11:23:09,374.374 INFO    ] ================================================
[2026-10-28 11:23:09,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:23:09
[2026-10-28 11:23:10,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:23:10,797.797 INFO    ] Initializing speech engine...
[2026-10-28 11:23:10,818.818 INFO    ] 2026-10-28 11:23:10
[2026-10-28 11:23:11,084.084 INFO    ] 2026-10-28 11:23:11
[2026-10-28 11:23:11,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:23:11,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:23:11,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:23:11,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:23:11,653.653 INFO    ] time= 28/10/2026 11:23:11
[2026-10-28 11:23:11,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:23:11,678.678 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:23:11,809.809 INFO    ] No existing commands found in stream
[2026-10-28 11:23:16,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:23:16,828.828 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 11:23:23,589.589 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:23:23,592.592 INFO    ] Checking for system updates...
[2026-10-28 11:23:23,631.631 INFO    ] 200
[2026-10-28 11:23:23,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:23:23,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:23:23,694.694 INFO    ] No update needed
[2026-10-28 11:23:23,697.697 INFO    ] Checking for camera pi updates...
[2026-10-28 11:23:23,737.737 INFO    ] 200
[2026-10-28 11:23:23,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:23:23,786.786 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:23:23,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:23:23,879.879 INFO    ] No camera update needed
[2026-10-28 11:23:23,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:23:23,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:23:23,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:23:23,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:23:25,944.944 INFO    ] ================================================
[2026-10-28 11:23:25,959.959 INFO    ] Launching Daemon at Wed Oct 28 11:23:25 IST 2026
[2026-10-28 11:23:25,971.971 INFO    ] ================================================
[2026-10-28 11:23:26,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:23:26
[2026-10-28 11:23:27,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:23:27,392.392 INFO    ] Initializing speech engine...
[2026-10-28 11:23:27,398.398 INFO    ] 2026-10-28 11:23:27
[2026-10-28 11:23:27,698.698 INFO    ] 2026-10-28 11:23:27
[2026-10-28 11:23:27,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:23:27,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:23:27,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:23:28,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:23:28,227.227 INFO    ] time= 28/10/2026 11:23:28
[2026-10-28 11:23:28,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:23:28,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:23:28,384.384 INFO    ] No existing commands found in stream
[2026-10-28 11:23:33,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:23:33,400.400 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-28 11:23:35,469.469 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:23:35,472.472 INFO    ] Checking for system updates...
[2026-10-28 11:23:35,512.512 INFO    ] 200
[2026-10-28 11:23:35,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:23:35,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:23:35,572.572 INFO    ] No update needed
[2026-10-28 11:23:35,575.575 INFO    ] Checking for camera pi updates...
[2026-10-28 11:23:35,613.613 INFO    ] 200
[2026-10-28 11:23:35,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:23:35,663.663 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:23:35,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:23:35,762.762 INFO    ] No camera update needed
[2026-10-28 11:23:35,765.765 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:23:35,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:23:35,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:23:35,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:23:37,823.823 INFO    ] ================================================
[2026-10-28 11:23:37,839.839 INFO    ] Launching Daemon at Wed Oct 28 11:23:37 IST 2026
[2026-10-28 11:23:37,850.850 INFO    ] ================================================
[2026-10-28 11:23:38,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:23:38
[2026-10-28 11:23:39,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:23:39,497.497 INFO    ] Initializing speech engine...
[2026-10-28 11:23:39,504.504 INFO    ] 2026-10-28 11:23:39
[2026-10-28 11:23:39,825.825 INFO    ] 2026-10-28 11:23:39
[2026-10-28 11:23:39,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:23:40,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:23:40,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:23:40,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:23:40,520.520 INFO    ] time= 28/10/2026 11:23:40
[2026-10-28 11:23:40,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:23:40,609.609 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:23:40,778.778 INFO    ] No existing commands found in stream
[2026-10-28 11:23:45,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:23:45,812.812 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 11:23:47,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:23:47,371.371 INFO    ] Checking for system updates...
[2026-10-28 11:23:47,412.412 INFO    ] 200
[2026-10-28 11:23:47,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:23:47,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:23:47,471.471 INFO    ] No update needed
[2026-10-28 11:23:47,474.474 INFO    ] Checking for camera pi updates...
[2026-10-28 11:23:47,508.508 INFO    ] 200
[2026-10-28 11:23:47,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:23:47,558.558 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:23:47,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:23:47,634.634 INFO    ] No camera update needed
[2026-10-28 11:23:47,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:23:47,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:23:47,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:23:47,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:23:49,688.688 INFO    ] ================================================
[2026-10-28 11:23:49,703.703 INFO    ] Launching Daemon at Wed Oct 28 11:23:49 IST 2026
[2026-10-28 11:23:49,714.714 INFO    ] ================================================
[2026-10-28 11:23:50,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:23:50
[2026-10-28 11:23:50,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:23:51,122.122 INFO    ] Initializing speech engine...
[2026-10-28 11:23:51,130.130 INFO    ] 2026-10-28 11:23:51
[2026-10-28 11:23:51,407.407 INFO    ] 2026-10-28 11:23:51
[2026-10-28 11:23:51,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:23:51,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:23:51,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:23:51,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:23:51,967.967 INFO    ] time= 28/10/2026 11:23:51
[2026-10-28 11:23:51,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:23:52,007.007 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:23:52,115.115 INFO    ] No existing commands found in stream
[2026-10-28 11:23:57,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:23:57,132.132 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-28 11:23:59,348.348 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:23:59,350.350 INFO    ] Checking for system updates...
[2026-10-28 11:23:59,385.385 INFO    ] 200
[2026-10-28 11:23:59,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:23:59,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:23:59,447.447 INFO    ] No update needed
[2026-10-28 11:23:59,449.449 INFO    ] Checking for camera pi updates...
[2026-10-28 11:23:59,482.482 INFO    ] 200
[2026-10-28 11:23:59,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:23:59,526.526 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:23:59,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:23:59,721.721 INFO    ] No camera update needed
[2026-10-28 11:23:59,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:23:59,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:23:59,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:23:59,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:24:01,777.777 INFO    ] ================================================
[2026-10-28 11:24:01,794.794 INFO    ] Launching Daemon at Wed Oct 28 11:24:01 IST 2026
[2026-10-28 11:24:01,805.805 INFO    ] ================================================
[2026-10-28 11:24:02,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:24:02
[2026-10-28 11:24:03,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:24:03,501.501 INFO    ] Initializing speech engine...
[2026-10-28 11:24:03,508.508 INFO    ] 2026-10-28 11:24:03
[2026-10-28 11:24:03,809.809 INFO    ] 2026-10-28 11:24:03
[2026-10-28 11:24:03,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:24:04,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:24:04,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:24:04,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:24:04,333.333 INFO    ] time= 28/10/2026 11:24:04
[2026-10-28 11:24:04,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:24:04,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:24:04,533.533 INFO    ] No existing commands found in stream
[2026-10-28 11:24:09,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:24:09,547.547 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-28 11:24:11,591.591 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:24:11,594.594 INFO    ] Checking for system updates...
[2026-10-28 11:24:11,630.630 INFO    ] 200
[2026-10-28 11:24:11,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:24:11,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:24:11,688.688 INFO    ] No update needed
[2026-10-28 11:24:11,690.690 INFO    ] Checking for camera pi updates...
[2026-10-28 11:24:11,723.723 INFO    ] 200
[2026-10-28 11:24:11,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:24:11,766.766 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:24:11,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:24:11,854.854 INFO    ] No camera update needed
[2026-10-28 11:24:11,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:24:11,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:24:11,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:24:11,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:24:13,908.908 INFO    ] ================================================
[2026-10-28 11:24:13,924.924 INFO    ] Launching Daemon at Wed Oct 28 11:24:13 IST 2026
[2026-10-28 11:24:13,935.935 INFO    ] ================================================
[2026-10-28 11:24:14,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:24:14
[2026-10-28 11:24:15,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:24:15,481.481 INFO    ] Initializing speech engine...
[2026-10-28 11:24:15,502.502 INFO    ] 2026-10-28 11:24:15
[2026-10-28 11:24:15,758.758 INFO    ] 2026-10-28 11:24:15
[2026-10-28 11:24:15,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:24:16,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:24:16,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:24:16,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:24:16,319.319 INFO    ] time= 28/10/2026 11:24:16
[2026-10-28 11:24:16,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:24:16,364.364 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:24:16,474.474 INFO    ] No existing commands found in stream
[2026-10-28 11:24:21,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:24:21,500.500 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 11:24:28,507.507 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:24:28,510.510 INFO    ] Checking for system updates...
[2026-10-28 11:24:28,548.548 INFO    ] 200
[2026-10-28 11:24:28,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:24:28,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:24:28,605.605 INFO    ] No update needed
[2026-10-28 11:24:28,607.607 INFO    ] Checking for camera pi updates...
[2026-10-28 11:24:28,640.640 INFO    ] 200
[2026-10-28 11:24:28,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:24:28,685.685 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:24:28,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:24:28,767.767 INFO    ] No camera update needed
[2026-10-28 11:24:28,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:24:28,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:24:28,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:24:28,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:24:30,825.825 INFO    ] ================================================
[2026-10-28 11:24:30,840.840 INFO    ] Launching Daemon at Wed Oct 28 11:24:30 IST 2026
[2026-10-28 11:24:30,851.851 INFO    ] ================================================
[2026-10-28 11:24:31,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:24:31
[2026-10-28 11:24:32,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:24:32,467.467 INFO    ] Initializing speech engine...
[2026-10-28 11:24:32,475.475 INFO    ] 2026-10-28 11:24:32
[2026-10-28 11:24:32,740.740 INFO    ] 2026-10-28 11:24:32
[2026-10-28 11:24:32,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:24:35,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:24:35,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:24:37,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:24:37,998.998 INFO    ] time= 28/10/2026 11:24:37
[2026-10-28 11:24:38,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:24:38,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:24:38,874.874 INFO    ] No existing commands found in stream
[2026-10-28 11:24:43,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:24:43,886.886 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-28 11:24:47,304.304 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:24:47,307.307 INFO    ] Checking for system updates...
[2026-10-28 11:24:47,346.346 INFO    ] 200
[2026-10-28 11:24:47,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:24:47,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:24:47,402.402 INFO    ] No update needed
[2026-10-28 11:24:47,405.405 INFO    ] Checking for camera pi updates...
[2026-10-28 11:24:47,439.439 INFO    ] 200
[2026-10-28 11:24:47,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:24:47,482.482 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:24:47,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:24:47,594.594 INFO    ] No camera update needed
[2026-10-28 11:24:47,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:24:47,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:24:47,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:24:47,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:24:49,649.649 INFO    ] ================================================
[2026-10-28 11:24:49,665.665 INFO    ] Launching Daemon at Wed Oct 28 11:24:49 IST 2026
[2026-10-28 11:24:49,677.677 INFO    ] ================================================
[2026-10-28 11:24:50,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:24:50
[2026-10-28 11:24:50,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:24:51,106.106 INFO    ] Initializing speech engine...
[2026-10-28 11:24:51,111.111 INFO    ] 2026-10-28 11:24:51
[2026-10-28 11:24:51,410.410 INFO    ] 2026-10-28 11:24:51
[2026-10-28 11:24:51,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:24:51,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:24:51,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:24:52,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:24:52,058.058 INFO    ] time= 28/10/2026 11:24:52
[2026-10-28 11:24:52,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:24:52,099.099 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:24:52,231.231 INFO    ] No existing commands found in stream
[2026-10-28 11:24:57,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:24:57,254.254 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 11:25:01,464.464 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:25:01,468.468 INFO    ] Checking for system updates...
[2026-10-28 11:25:01,607.607 INFO    ] 200
[2026-10-28 11:25:01,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:25:01,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:25:01,697.697 INFO    ] No update needed
[2026-10-28 11:25:01,701.701 INFO    ] Checking for camera pi updates...
[2026-10-28 11:25:01,796.796 INFO    ] 200
[2026-10-28 11:25:01,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:25:01,873.873 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:25:01,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:25:01,962.962 INFO    ] No camera update needed
[2026-10-28 11:25:01,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:25:01,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:25:01,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:25:01,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:25:04,020.020 INFO    ] ================================================
[2026-10-28 11:25:04,036.036 INFO    ] Launching Daemon at Wed Oct 28 11:25:04 IST 2026
[2026-10-28 11:25:04,049.049 INFO    ] ================================================
[2026-10-28 11:25:04,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:25:04
[2026-10-28 11:25:05,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:25:05,740.740 INFO    ] Initializing speech engine...
[2026-10-28 11:25:05,752.752 INFO    ] 2026-10-28 11:25:05
[2026-10-28 11:25:06,069.069 INFO    ] 2026-10-28 11:25:06
[2026-10-28 11:25:06,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:25:09,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:25:09,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:25:13,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:25:13,513.513 INFO    ] time= 28/10/2026 11:25:13
[2026-10-28 11:25:13,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:25:13,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:25:18,015.015 INFO    ] No existing commands found in stream
[2026-10-28 11:25:23,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:25:23,027.027 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 11:25:27,252.252 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:25:27,255.255 INFO    ] Checking for system updates...
[2026-10-28 11:25:27,292.292 INFO    ] 200
[2026-10-28 11:25:27,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:25:27,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:25:27,360.360 INFO    ] No update needed
[2026-10-28 11:25:27,363.363 INFO    ] Checking for camera pi updates...
[2026-10-28 11:25:27,403.403 INFO    ] 200
[2026-10-28 11:25:27,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:25:27,448.448 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:25:27,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:25:27,502.502 INFO    ] No camera update needed
[2026-10-28 11:25:27,505.505 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:25:27,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:25:27,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:25:27,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:25:29,562.562 INFO    ] ================================================
[2026-10-28 11:25:29,578.578 INFO    ] Launching Daemon at Wed Oct 28 11:25:29 IST 2026
[2026-10-28 11:25:29,589.589 INFO    ] ================================================
[2026-10-28 11:25:30,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:25:30
[2026-10-28 11:25:30,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:25:31,043.043 INFO    ] Initializing speech engine...
[2026-10-28 11:25:31,054.054 INFO    ] 2026-10-28 11:25:31
[2026-10-28 11:25:31,314.314 INFO    ] 2026-10-28 11:25:31
[2026-10-28 11:25:31,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:25:31,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:25:31,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:25:31,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:25:31,914.914 INFO    ] time= 28/10/2026 11:25:31
[2026-10-28 11:25:31,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:25:31,952.952 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:25:32,116.116 INFO    ] No existing commands found in stream
[2026-10-28 11:25:37,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:25:37,156.156 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-28 11:25:39,092.092 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:25:39,095.095 INFO    ] Checking for system updates...
[2026-10-28 11:25:39,133.133 INFO    ] 200
[2026-10-28 11:25:39,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:25:39,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:25:39,195.195 INFO    ] No update needed
[2026-10-28 11:25:39,197.197 INFO    ] Checking for camera pi updates...
[2026-10-28 11:25:39,232.232 INFO    ] 200
[2026-10-28 11:25:39,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:25:39,277.277 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:25:39,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:25:39,352.352 INFO    ] No camera update needed
[2026-10-28 11:25:39,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:25:39,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:25:39,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:25:39,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:25:41,413.413 INFO    ] ================================================
[2026-10-28 11:25:41,428.428 INFO    ] Launching Daemon at Wed Oct 28 11:25:41 IST 2026
[2026-10-28 11:25:41,439.439 INFO    ] ================================================
[2026-10-28 11:25:42,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:25:42
[2026-10-28 11:25:42,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:25:42,903.903 INFO    ] Initializing speech engine...
[2026-10-28 11:25:42,909.909 INFO    ] 2026-10-28 11:25:42
[2026-10-28 11:25:43,171.171 INFO    ] 2026-10-28 11:25:43
[2026-10-28 11:25:43,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:25:43,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:25:43,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:25:43,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:25:43,717.717 INFO    ] time= 28/10/2026 11:25:43
[2026-10-28 11:25:43,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:25:43,765.765 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:25:43,889.889 INFO    ] No existing commands found in stream
[2026-10-28 11:25:48,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:25:48,918.918 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 11:25:52,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:25:52,945.945 INFO    ] Checking for system updates...
[2026-10-28 11:25:52,981.981 INFO    ] 200
[2026-10-28 11:25:52,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:25:53,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:25:53,043.043 INFO    ] No update needed
[2026-10-28 11:25:53,046.046 INFO    ] Checking for camera pi updates...
[2026-10-28 11:25:53,079.079 INFO    ] 200
[2026-10-28 11:25:53,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:25:53,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:25:53,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:25:53,216.216 INFO    ] No camera update needed
[2026-10-28 11:25:53,218.218 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:25:53,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:25:53,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:25:53,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:25:55,273.273 INFO    ] ================================================
[2026-10-28 11:25:55,288.288 INFO    ] Launching Daemon at Wed Oct 28 11:25:55 IST 2026
[2026-10-28 11:25:55,299.299 INFO    ] ================================================
[2026-10-28 11:25:55,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:25:55
[2026-10-28 11:25:56,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:25:56,703.703 INFO    ] Initializing speech engine...
[2026-10-28 11:25:56,716.716 INFO    ] 2026-10-28 11:25:56
[2026-10-28 11:25:56,982.982 INFO    ] 2026-10-28 11:25:56
[2026-10-28 11:25:57,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:25:57,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:25:57,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:25:57,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:25:57,510.510 INFO    ] time= 28/10/2026 11:25:57
[2026-10-28 11:25:57,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:25:57,561.561 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:25:57,695.695 INFO    ] No existing commands found in stream
[2026-10-28 11:26:02,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:26:02,719.719 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 11:26:06,462.462 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:26:06,465.465 INFO    ] Checking for system updates...
[2026-10-28 11:26:06,508.508 INFO    ] 200
[2026-10-28 11:26:06,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:26:06,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:26:06,565.565 INFO    ] No update needed
[2026-10-28 11:26:06,567.567 INFO    ] Checking for camera pi updates...
[2026-10-28 11:26:06,600.600 INFO    ] 200
[2026-10-28 11:26:06,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:26:06,644.644 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:26:06,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:26:06,728.728 INFO    ] No camera update needed
[2026-10-28 11:26:06,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:26:06,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:26:06,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:26:06,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:26:08,784.784 INFO    ] ================================================
[2026-10-28 11:26:08,799.799 INFO    ] Launching Daemon at Wed Oct 28 11:26:08 IST 2026
[2026-10-28 11:26:08,811.811 INFO    ] ================================================
[2026-10-28 11:26:09,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:26:09
[2026-10-28 11:26:09,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:26:10,270.270 INFO    ] Initializing speech engine...
[2026-10-28 11:26:10,275.275 INFO    ] 2026-10-28 11:26:10
[2026-10-28 11:26:10,535.535 INFO    ] 2026-10-28 11:26:10
[2026-10-28 11:26:10,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:26:10,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:26:10,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:26:11,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:26:11,075.075 INFO    ] time= 28/10/2026 11:26:11
[2026-10-28 11:26:11,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:26:11,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:26:11,231.231 INFO    ] No existing commands found in stream
[2026-10-28 11:26:16,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:26:16,261.261 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 11:26:18,319.319 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:26:18,322.322 INFO    ] Checking for system updates...
[2026-10-28 11:26:18,358.358 INFO    ] 200
[2026-10-28 11:26:18,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:26:18,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:26:18,416.416 INFO    ] No update needed
[2026-10-28 11:26:18,418.418 INFO    ] Checking for camera pi updates...
[2026-10-28 11:26:18,451.451 INFO    ] 200
[2026-10-28 11:26:18,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:26:18,495.495 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:26:18,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:26:18,592.592 INFO    ] No camera update needed
[2026-10-28 11:26:18,595.595 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:26:18,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:26:18,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:26:18,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:26:20,647.647 INFO    ] ================================================
[2026-10-28 11:26:20,662.662 INFO    ] Launching Daemon at Wed Oct 28 11:26:20 IST 2026
[2026-10-28 11:26:20,674.674 INFO    ] ================================================
[2026-10-28 11:26:21,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:26:21
[2026-10-28 11:26:21,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:26:22,229.229 INFO    ] Initializing speech engine...
[2026-10-28 11:26:22,235.235 INFO    ] 2026-10-28 11:26:22
[2026-10-28 11:26:22,493.493 INFO    ] 2026-10-28 11:26:22
[2026-10-28 11:26:22,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:26:22,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:26:22,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:26:23,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:26:23,054.054 INFO    ] time= 28/10/2026 11:26:23
[2026-10-28 11:26:23,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:26:23,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:26:23,230.230 INFO    ] No existing commands found in stream
[2026-10-28 11:26:28,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:26:28,258.258 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 11:26:32,359.359 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:26:32,362.362 INFO    ] Checking for system updates...
[2026-10-28 11:26:32,402.402 INFO    ] 200
[2026-10-28 11:26:32,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:26:32,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:26:32,467.467 INFO    ] No update needed
[2026-10-28 11:26:32,470.470 INFO    ] Checking for camera pi updates...
[2026-10-28 11:26:32,508.508 INFO    ] 200
[2026-10-28 11:26:32,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:26:32,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:26:32,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:26:32,673.673 INFO    ] No camera update needed
[2026-10-28 11:26:32,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:26:32,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:26:32,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:26:32,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:26:34,744.744 INFO    ] ================================================
[2026-10-28 11:26:34,759.759 INFO    ] Launching Daemon at Wed Oct 28 11:26:34 IST 2026
[2026-10-28 11:26:34,771.771 INFO    ] ================================================
[2026-10-28 11:26:35,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:26:35
[2026-10-28 11:26:35,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:26:36,231.231 INFO    ] Initializing speech engine...
[2026-10-28 11:26:36,238.238 INFO    ] 2026-10-28 11:26:36
[2026-10-28 11:26:36,498.498 INFO    ] 2026-10-28 11:26:36
[2026-10-28 11:26:36,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:26:36,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:26:36,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:26:37,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:26:37,061.061 INFO    ] time= 28/10/2026 11:26:37
[2026-10-28 11:26:37,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:26:37,097.097 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:26:37,223.223 INFO    ] No existing commands found in stream
[2026-10-28 11:26:42,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:26:42,257.257 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-28 11:26:43,942.942 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:26:43,945.945 INFO    ] Checking for system updates...
[2026-10-28 11:26:43,981.981 INFO    ] 200
[2026-10-28 11:26:43,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:26:44,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:26:44,047.047 INFO    ] No update needed
[2026-10-28 11:26:44,049.049 INFO    ] Checking for camera pi updates...
[2026-10-28 11:26:44,083.083 INFO    ] 200
[2026-10-28 11:26:44,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:26:44,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:26:44,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:26:44,208.208 INFO    ] No camera update needed
[2026-10-28 11:26:44,210.210 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:26:44,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:26:44,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:26:44,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:26:46,265.265 INFO    ] ================================================
[2026-10-28 11:26:46,281.281 INFO    ] Launching Daemon at Wed Oct 28 11:26:46 IST 2026
[2026-10-28 11:26:46,293.293 INFO    ] ================================================
[2026-10-28 11:26:46,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:26:46
[2026-10-28 11:26:47,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:26:47,936.936 INFO    ] Initializing speech engine...
[2026-10-28 11:26:47,943.943 INFO    ] 2026-10-28 11:26:47
[2026-10-28 11:26:48,259.259 INFO    ] 2026-10-28 11:26:48
[2026-10-28 11:26:48,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:26:48,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:26:48,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:26:48,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:26:48,808.808 INFO    ] time= 28/10/2026 11:26:48
[2026-10-28 11:26:48,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:26:48,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:26:48,994.994 INFO    ] No existing commands found in stream
[2026-10-28 11:26:54,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:26:54,029.029 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-28 11:26:57,408.408 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:26:57,411.411 INFO    ] Checking for system updates...
[2026-10-28 11:26:57,448.448 INFO    ] 200
[2026-10-28 11:26:57,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:26:57,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:26:57,515.515 INFO    ] No update needed
[2026-10-28 11:26:57,517.517 INFO    ] Checking for camera pi updates...
[2026-10-28 11:26:57,551.551 INFO    ] 200
[2026-10-28 11:26:57,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:26:57,594.594 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:26:57,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:26:57,678.678 INFO    ] No camera update needed
[2026-10-28 11:26:57,681.681 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:26:57,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:26:57,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:26:57,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:26:59,736.736 INFO    ] ================================================
[2026-10-28 11:26:59,751.751 INFO    ] Launching Daemon at Wed Oct 28 11:26:59 IST 2026
[2026-10-28 11:26:59,762.762 INFO    ] ================================================
[2026-10-28 11:27:00,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:27:00
[2026-10-28 11:27:00,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:27:01,478.478 INFO    ] Initializing speech engine...
[2026-10-28 11:27:01,482.482 INFO    ] 2026-10-28 11:27:01
[2026-10-28 11:27:01,814.814 INFO    ] 2026-10-28 11:27:01
[2026-10-28 11:27:01,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:27:02,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:27:02,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:27:02,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:27:02,509.509 INFO    ] time= 28/10/2026 11:27:02
[2026-10-28 11:27:02,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:27:02,624.624 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:27:02,719.719 INFO    ] No existing commands found in stream
[2026-10-28 11:27:07,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:27:07,747.747 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-28 11:27:09,959.959 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:27:09,961.961 INFO    ] Checking for system updates...
[2026-10-28 11:27:09,997.997 INFO    ] 200
[2026-10-28 11:27:09,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:27:10,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:27:10,055.055 INFO    ] No update needed
[2026-10-28 11:27:10,058.058 INFO    ] Checking for camera pi updates...
[2026-10-28 11:27:10,091.091 INFO    ] 200
[2026-10-28 11:27:10,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:27:10,134.134 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:27:10,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:27:10,215.215 INFO    ] No camera update needed
[2026-10-28 11:27:10,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:27:10,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:27:10,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:27:10,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:27:12,273.273 INFO    ] ================================================
[2026-10-28 11:27:12,289.289 INFO    ] Launching Daemon at Wed Oct 28 11:27:12 IST 2026
[2026-10-28 11:27:12,300.300 INFO    ] ================================================
[2026-10-28 11:27:12,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:27:12
[2026-10-28 11:27:13,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:27:13,937.937 INFO    ] Initializing speech engine...
[2026-10-28 11:27:13,949.949 INFO    ] 2026-10-28 11:27:13
[2026-10-28 11:27:14,257.257 INFO    ] 2026-10-28 11:27:14
[2026-10-28 11:27:14,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:27:14,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:27:14,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:27:14,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:27:14,781.781 INFO    ] time= 28/10/2026 11:27:14
[2026-10-28 11:27:14,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:27:14,816.816 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:27:14,944.944 INFO    ] No existing commands found in stream
[2026-10-28 11:27:19,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:27:19,972.972 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-28 11:27:23,168.168 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:27:23,171.171 INFO    ] Checking for system updates...
[2026-10-28 11:27:23,212.212 INFO    ] 200
[2026-10-28 11:27:23,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:27:23,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:27:23,271.271 INFO    ] No update needed
[2026-10-28 11:27:23,273.273 INFO    ] Checking for camera pi updates...
[2026-10-28 11:27:23,308.308 INFO    ] 200
[2026-10-28 11:27:23,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:27:23,353.353 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:27:23,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:27:23,434.434 INFO    ] No camera update needed
[2026-10-28 11:27:23,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:27:23,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:27:23,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:27:23,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:27:25,494.494 INFO    ] ================================================
[2026-10-28 11:27:25,509.509 INFO    ] Launching Daemon at Wed Oct 28 11:27:25 IST 2026
[2026-10-28 11:27:25,520.520 INFO    ] ================================================
[2026-10-28 11:27:26,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:27:26
[2026-10-28 11:27:26,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:27:26,942.942 INFO    ] Initializing speech engine...
[2026-10-28 11:27:26,951.951 INFO    ] 2026-10-28 11:27:26
[2026-10-28 11:27:27,197.197 INFO    ] 2026-10-28 11:27:27
[2026-10-28 11:27:27,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:27:27,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:27:27,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:27:27,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:27:27,752.752 INFO    ] time= 28/10/2026 11:27:27
[2026-10-28 11:27:27,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:27:27,776.776 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:27:27,902.902 INFO    ] No existing commands found in stream
[2026-10-28 11:27:32,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:27:32,918.918 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-28 11:27:35,675.675 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:27:35,678.678 INFO    ] Checking for system updates...
[2026-10-28 11:27:35,717.717 INFO    ] 200
[2026-10-28 11:27:35,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:27:35,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:27:35,779.779 INFO    ] No update needed
[2026-10-28 11:27:35,782.782 INFO    ] Checking for camera pi updates...
[2026-10-28 11:27:35,816.816 INFO    ] 200
[2026-10-28 11:27:35,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:27:35,859.859 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:27:35,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:27:35,941.941 INFO    ] No camera update needed
[2026-10-28 11:27:35,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:27:35,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:27:35,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:27:35,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:27:38,998.998 INFO    ] ================================================
[2026-10-28 11:27:38,014.014 INFO    ] Launching Daemon at Wed Oct 28 11:27:38 IST 2026
[2026-10-28 11:27:38,024.024 INFO    ] ================================================
[2026-10-28 11:27:38,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:27:38
[2026-10-28 11:27:39,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:27:39,631.631 INFO    ] Initializing speech engine...
[2026-10-28 11:27:39,641.641 INFO    ] 2026-10-28 11:27:39
[2026-10-28 11:27:39,913.913 INFO    ] 2026-10-28 11:27:39
[2026-10-28 11:27:39,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:27:40,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:27:40,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:27:40,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:27:40,478.478 INFO    ] time= 28/10/2026 11:27:40
[2026-10-28 11:27:40,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:27:40,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:27:40,664.664 INFO    ] No existing commands found in stream
[2026-10-28 11:27:45,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:27:45,698.698 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 11:27:49,358.358 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:27:49,361.361 INFO    ] Checking for system updates...
[2026-10-28 11:27:49,397.397 INFO    ] 200
[2026-10-28 11:27:49,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:27:49,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:27:49,454.454 INFO    ] No update needed
[2026-10-28 11:27:49,456.456 INFO    ] Checking for camera pi updates...
[2026-10-28 11:27:49,490.490 INFO    ] 200
[2026-10-28 11:27:49,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:27:49,540.540 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:27:49,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:27:49,644.644 INFO    ] No camera update needed
[2026-10-28 11:27:49,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:27:49,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:27:49,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:27:49,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:27:51,698.698 INFO    ] ================================================
[2026-10-28 11:27:51,714.714 INFO    ] Launching Daemon at Wed Oct 28 11:27:51 IST 2026
[2026-10-28 11:27:51,725.725 INFO    ] ================================================
[2026-10-28 11:27:52,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:27:52
[2026-10-28 11:27:53,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:27:53,291.291 INFO    ] Initializing speech engine...
[2026-10-28 11:27:53,301.301 INFO    ] 2026-10-28 11:27:53
[2026-10-28 11:27:53,569.569 INFO    ] 2026-10-28 11:27:53
[2026-10-28 11:27:53,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:27:53,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:27:53,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:27:54,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:27:54,109.109 INFO    ] time= 28/10/2026 11:27:54
[2026-10-28 11:27:54,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:27:54,208.208 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:27:54,345.345 INFO    ] No existing commands found in stream
[2026-10-28 11:27:59,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:27:59,370.370 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-28 11:28:03,061.061 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:28:03,063.063 INFO    ] Checking for system updates...
[2026-10-28 11:28:03,099.099 INFO    ] 200
[2026-10-28 11:28:03,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:28:03,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:28:03,160.160 INFO    ] No update needed
[2026-10-28 11:28:03,164.164 INFO    ] Checking for camera pi updates...
[2026-10-28 11:28:03,207.207 INFO    ] 200
[2026-10-28 11:28:03,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:28:03,251.251 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:28:03,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:28:03,345.345 INFO    ] No camera update needed
[2026-10-28 11:28:03,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:28:03,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:28:03,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:28:03,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:28:05,407.407 INFO    ] ================================================
[2026-10-28 11:28:05,423.423 INFO    ] Launching Daemon at Wed Oct 28 11:28:05 IST 2026
[2026-10-28 11:28:05,434.434 INFO    ] ================================================
[2026-10-28 11:28:06,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:28:06
[2026-10-28 11:28:06,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:28:06,851.851 INFO    ] Initializing speech engine...
[2026-10-28 11:28:06,876.876 INFO    ] 2026-10-28 11:28:06
[2026-10-28 11:28:07,149.149 INFO    ] 2026-10-28 11:28:07
[2026-10-28 11:28:07,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:28:07,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:28:07,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:28:07,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:28:07,669.669 INFO    ] time= 28/10/2026 11:28:07
[2026-10-28 11:28:07,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:28:07,752.752 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:28:07,908.908 INFO    ] No existing commands found in stream
[2026-10-28 11:28:12,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:28:12,941.941 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-28 11:28:15,156.156 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:28:15,159.159 INFO    ] Checking for system updates...
[2026-10-28 11:28:15,195.195 INFO    ] 200
[2026-10-28 11:28:15,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:28:15,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:28:15,252.252 INFO    ] No update needed
[2026-10-28 11:28:15,254.254 INFO    ] Checking for camera pi updates...
[2026-10-28 11:28:15,291.291 INFO    ] 200
[2026-10-28 11:28:15,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:28:15,334.334 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:28:15,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:28:15,532.532 INFO    ] No camera update needed
[2026-10-28 11:28:15,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:28:15,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:28:15,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:28:15,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:28:17,589.589 INFO    ] ================================================
[2026-10-28 11:28:17,606.606 INFO    ] Launching Daemon at Wed Oct 28 11:28:17 IST 2026
[2026-10-28 11:28:17,617.617 INFO    ] ================================================
[2026-10-28 11:28:18,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:28:18
[2026-10-28 11:28:18,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:28:19,029.029 INFO    ] Initializing speech engine...
[2026-10-28 11:28:19,053.053 INFO    ] 2026-10-28 11:28:19
[2026-10-28 11:28:19,321.321 INFO    ] 2026-10-28 11:28:19
[2026-10-28 11:28:19,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:28:19,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:28:19,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:28:19,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:28:19,893.893 INFO    ] time= 28/10/2026 11:28:19
[2026-10-28 11:28:19,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:28:19,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:28:20,090.090 INFO    ] No existing commands found in stream
[2026-10-28 11:28:25,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:28:25,118.118 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-28 11:28:28,973.973 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:28:28,976.976 INFO    ] Checking for system updates...
[2026-10-28 11:28:29,011.011 INFO    ] 200
[2026-10-28 11:28:29,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:28:29,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:28:29,069.069 INFO    ] No update needed
[2026-10-28 11:28:29,071.071 INFO    ] Checking for camera pi updates...
[2026-10-28 11:28:29,104.104 INFO    ] 200
[2026-10-28 11:28:29,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:28:29,147.147 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:28:29,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:28:29,228.228 INFO    ] No camera update needed
[2026-10-28 11:28:29,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:28:29,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:28:29,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:28:29,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:28:31,284.284 INFO    ] ================================================
[2026-10-28 11:28:31,300.300 INFO    ] Launching Daemon at Wed Oct 28 11:28:31 IST 2026
[2026-10-28 11:28:31,311.311 INFO    ] ================================================
[2026-10-28 11:28:32,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:28:32
[2026-10-28 11:28:32,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:28:33,022.022 INFO    ] Initializing speech engine...
[2026-10-28 11:28:33,031.031 INFO    ] 2026-10-28 11:28:33
[2026-10-28 11:28:33,300.300 INFO    ] 2026-10-28 11:28:33
[2026-10-28 11:28:33,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:28:33,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:28:33,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:28:33,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:28:33,873.873 INFO    ] time= 28/10/2026 11:28:33
[2026-10-28 11:28:33,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:28:33,912.912 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:28:34,035.035 INFO    ] No existing commands found in stream
[2026-10-28 11:28:39,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:28:39,069.069 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 11:28:43,742.742 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:28:43,745.745 INFO    ] Checking for system updates...
[2026-10-28 11:28:43,782.782 INFO    ] 200
[2026-10-28 11:28:43,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:28:43,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:28:43,841.841 INFO    ] No update needed
[2026-10-28 11:28:43,844.844 INFO    ] Checking for camera pi updates...
[2026-10-28 11:28:43,879.879 INFO    ] 200
[2026-10-28 11:28:43,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:28:43,922.922 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:28:44,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:28:44,010.010 INFO    ] No camera update needed
[2026-10-28 11:28:44,013.013 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:28:44,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:28:44,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:28:44,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:28:46,069.069 INFO    ] ================================================
[2026-10-28 11:28:46,085.085 INFO    ] Launching Daemon at Wed Oct 28 11:28:46 IST 2026
[2026-10-28 11:28:46,096.096 INFO    ] ================================================
[2026-10-28 11:28:46,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:28:46
[2026-10-28 11:28:47,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:28:47,533.533 INFO    ] Initializing speech engine...
[2026-10-28 11:28:47,542.542 INFO    ] 2026-10-28 11:28:47
[2026-10-28 11:28:47,806.806 INFO    ] 2026-10-28 11:28:47
[2026-10-28 11:28:47,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:28:48,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:28:48,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:28:48,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:28:48,424.424 INFO    ] time= 28/10/2026 11:28:48
[2026-10-28 11:28:48,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:28:48,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:28:48,572.572 INFO    ] No existing commands found in stream
[2026-10-28 11:28:53,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:28:53,606.606 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 11:28:57,858.858 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:28:57,861.861 INFO    ] Checking for system updates...
[2026-10-28 11:28:57,897.897 INFO    ] 200
[2026-10-28 11:28:57,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:28:57,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:28:57,954.954 INFO    ] No update needed
[2026-10-28 11:28:57,956.956 INFO    ] Checking for camera pi updates...
[2026-10-28 11:28:57,993.993 INFO    ] 200
[2026-10-28 11:28:57,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:28:58,036.036 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:28:58,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:28:58,134.134 INFO    ] No camera update needed
[2026-10-28 11:28:58,136.136 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:28:58,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:28:58,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:28:58,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:29:00,190.190 INFO    ] ================================================
[2026-10-28 11:29:00,205.205 INFO    ] Launching Daemon at Wed Oct 28 11:29:00 IST 2026
[2026-10-28 11:29:00,217.217 INFO    ] ================================================
[2026-10-28 11:29:00,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:29:00
[2026-10-28 11:29:01,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:29:01,907.907 INFO    ] Initializing speech engine...
[2026-10-28 11:29:01,911.911 INFO    ] 2026-10-28 11:29:01
[2026-10-28 11:29:02,333.333 INFO    ] 2026-10-28 11:29:02
[2026-10-28 11:29:02,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:29:02,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:29:02,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:29:02,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:29:03,023.023 INFO    ] time= 28/10/2026 11:29:02
[2026-10-28 11:29:03,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:29:03,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:29:03,232.232 INFO    ] No existing commands found in stream
[2026-10-28 11:29:08,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:29:08,252.252 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-28 11:29:11,515.515 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:29:11,518.518 INFO    ] Checking for system updates...
[2026-10-28 11:29:11,553.553 INFO    ] 200
[2026-10-28 11:29:11,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:29:11,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:29:11,610.610 INFO    ] No update needed
[2026-10-28 11:29:11,612.612 INFO    ] Checking for camera pi updates...
[2026-10-28 11:29:11,646.646 INFO    ] 200
[2026-10-28 11:29:11,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:29:11,696.696 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:29:11,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:29:11,797.797 INFO    ] No camera update needed
[2026-10-28 11:29:11,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:29:11,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:29:11,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:29:11,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:29:13,853.853 INFO    ] ================================================
[2026-10-28 11:29:13,869.869 INFO    ] Launching Daemon at Wed Oct 28 11:29:13 IST 2026
[2026-10-28 11:29:13,880.880 INFO    ] ================================================
[2026-10-28 11:29:14,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:29:14
[2026-10-28 11:29:15,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:29:15,300.300 INFO    ] Initializing speech engine...
[2026-10-28 11:29:15,309.309 INFO    ] 2026-10-28 11:29:15
[2026-10-28 11:29:15,555.555 INFO    ] 2026-10-28 11:29:15
[2026-10-28 11:29:15,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:29:15,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:29:15,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:29:16,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:29:16,123.123 INFO    ] time= 28/10/2026 11:29:16
[2026-10-28 11:29:16,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:29:16,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:29:16,284.284 INFO    ] No existing commands found in stream
[2026-10-28 11:29:21,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:29:21,317.317 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-28 11:29:23,674.674 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:29:23,677.677 INFO    ] Checking for system updates...
[2026-10-28 11:29:23,713.713 INFO    ] 200
[2026-10-28 11:29:23,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:29:23,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:29:23,771.771 INFO    ] No update needed
[2026-10-28 11:29:23,774.774 INFO    ] Checking for camera pi updates...
[2026-10-28 11:29:23,807.807 INFO    ] 200
[2026-10-28 11:29:23,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:29:23,850.850 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:29:23,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:29:23,934.934 INFO    ] No camera update needed
[2026-10-28 11:29:23,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:29:23,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:29:23,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:29:23,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:29:25,990.990 INFO    ] ================================================
[2026-10-28 11:29:26,005.005 INFO    ] Launching Daemon at Wed Oct 28 11:29:25 IST 2026
[2026-10-28 11:29:26,016.016 INFO    ] ================================================
[2026-10-28 11:29:26,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:29:26
[2026-10-28 11:29:27,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:29:27,436.436 INFO    ] Initializing speech engine...
[2026-10-28 11:29:27,445.445 INFO    ] 2026-10-28 11:29:27
[2026-10-28 11:29:27,691.691 INFO    ] 2026-10-28 11:29:27
[2026-10-28 11:29:27,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:29:27,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:29:27,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:29:28,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:29:28,244.244 INFO    ] time= 28/10/2026 11:29:28
[2026-10-28 11:29:28,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:29:28,279.279 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:29:28,398.398 INFO    ] No existing commands found in stream
[2026-10-28 11:29:33,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:29:33,424.424 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 11:29:37,093.093 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:29:37,096.096 INFO    ] Checking for system updates...
[2026-10-28 11:29:37,132.132 INFO    ] 200
[2026-10-28 11:29:37,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:29:37,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:29:37,195.195 INFO    ] No update needed
[2026-10-28 11:29:37,198.198 INFO    ] Checking for camera pi updates...
[2026-10-28 11:29:37,232.232 INFO    ] 200
[2026-10-28 11:29:37,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:29:37,280.280 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:29:37,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:29:37,369.369 INFO    ] No camera update needed
[2026-10-28 11:29:37,372.372 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:29:37,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:29:37,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:29:37,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:29:39,444.444 INFO    ] ================================================
[2026-10-28 11:29:39,460.460 INFO    ] Launching Daemon at Wed Oct 28 11:29:39 IST 2026
[2026-10-28 11:29:39,471.471 INFO    ] ================================================
[2026-10-28 11:29:40,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:29:40
[2026-10-28 11:29:40,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:29:40,862.862 INFO    ] Initializing speech engine...
[2026-10-28 11:29:40,875.875 INFO    ] 2026-10-28 11:29:40
[2026-10-28 11:29:41,136.136 INFO    ] 2026-10-28 11:29:41
[2026-10-28 11:29:41,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:29:41,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:29:41,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:29:41,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:29:41,690.690 INFO    ] time= 28/10/2026 11:29:41
[2026-10-28 11:29:41,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:29:41,725.725 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:29:41,842.842 INFO    ] No existing commands found in stream
[2026-10-28 11:29:46,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:29:46,861.861 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-28 11:29:47,802.802 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:29:47,805.805 INFO    ] Checking for system updates...
[2026-10-28 11:29:47,842.842 INFO    ] 200
[2026-10-28 11:29:47,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:29:47,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:29:47,900.900 INFO    ] No update needed
[2026-10-28 11:29:47,903.903 INFO    ] Checking for camera pi updates...
[2026-10-28 11:29:47,940.940 INFO    ] 200
[2026-10-28 11:29:47,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:29:47,989.989 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:29:48,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:29:48,072.072 INFO    ] No camera update needed
[2026-10-28 11:29:48,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:29:48,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:29:48,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:29:48,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:29:50,133.133 INFO    ] ================================================
[2026-10-28 11:29:50,148.148 INFO    ] Launching Daemon at Wed Oct 28 11:29:50 IST 2026
[2026-10-28 11:29:50,159.159 INFO    ] ================================================
[2026-10-28 11:29:50,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:29:50
[2026-10-28 11:29:51,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:29:51,560.560 INFO    ] Initializing speech engine...
[2026-10-28 11:29:51,566.566 INFO    ] 2026-10-28 11:29:51
[2026-10-28 11:29:51,860.860 INFO    ] 2026-10-28 11:29:51
[2026-10-28 11:29:51,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:29:52,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:29:52,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:29:52,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:29:52,348.348 INFO    ] time= 28/10/2026 11:29:52
[2026-10-28 11:29:52,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:29:52,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:29:52,594.594 INFO    ] No existing commands found in stream
[2026-10-28 11:29:57,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:29:57,622.622 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-28 11:30:02,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:30:02,147.147 INFO    ] Checking for system updates...
[2026-10-28 11:30:02,364.364 INFO    ] 200
[2026-10-28 11:30:02,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:30:02,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:30:02,675.675 INFO    ] No update needed
[2026-10-28 11:30:02,679.679 INFO    ] Checking for camera pi updates...
[2026-10-28 11:30:02,723.723 INFO    ] 200
[2026-10-28 11:30:02,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:30:02,780.780 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:30:03,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:30:03,054.054 INFO    ] No camera update needed
[2026-10-28 11:30:03,057.057 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:30:03,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:30:03,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:30:03,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:30:05,126.126 INFO    ] ================================================
[2026-10-28 11:30:05,142.142 INFO    ] Launching Daemon at Wed Oct 28 11:30:05 IST 2026
[2026-10-28 11:30:05,152.152 INFO    ] ================================================
[2026-10-28 11:30:05,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:30:05
[2026-10-28 11:30:06,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:30:06,560.560 INFO    ] Initializing speech engine...
[2026-10-28 11:30:06,575.575 INFO    ] 2026-10-28 11:30:06
[2026-10-28 11:30:06,843.843 INFO    ] 2026-10-28 11:30:06
[2026-10-28 11:30:06,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:30:07,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:30:07,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:30:07,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:30:07,424.424 INFO    ] time= 28/10/2026 11:30:07
[2026-10-28 11:30:07,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:30:07,451.451 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:30:07,581.581 INFO    ] No existing commands found in stream
[2026-10-28 11:30:12,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:30:12,611.611 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-28 11:30:15,001.001 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:30:15,004.004 INFO    ] Checking for system updates...
[2026-10-28 11:30:15,041.041 INFO    ] 200
[2026-10-28 11:30:15,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:30:15,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:30:15,110.110 INFO    ] No update needed
[2026-10-28 11:30:15,113.113 INFO    ] Checking for camera pi updates...
[2026-10-28 11:30:15,151.151 INFO    ] 200
[2026-10-28 11:30:15,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:30:15,199.199 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:30:15,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:30:15,308.308 INFO    ] No camera update needed
[2026-10-28 11:30:15,310.310 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:30:15,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:30:15,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:30:15,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:30:17,366.366 INFO    ] ================================================
[2026-10-28 11:30:17,381.381 INFO    ] Launching Daemon at Wed Oct 28 11:30:17 IST 2026
[2026-10-28 11:30:17,392.392 INFO    ] ================================================
[2026-10-28 11:30:17,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:30:17
[2026-10-28 11:30:18,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:30:18,805.805 INFO    ] Initializing speech engine...
[2026-10-28 11:30:18,819.819 INFO    ] 2026-10-28 11:30:18
[2026-10-28 11:30:19,086.086 INFO    ] 2026-10-28 11:30:19
[2026-10-28 11:30:19,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:30:19,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:30:19,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:30:19,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:30:19,652.652 INFO    ] time= 28/10/2026 11:30:19
[2026-10-28 11:30:19,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:30:19,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:30:19,807.807 INFO    ] No existing commands found in stream
[2026-10-28 11:30:24,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:30:24,826.826 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-28 11:30:27,790.790 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:30:27,793.793 INFO    ] Checking for system updates...
[2026-10-28 11:30:27,828.828 INFO    ] 200
[2026-10-28 11:30:27,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:30:27,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:30:27,885.885 INFO    ] No update needed
[2026-10-28 11:30:27,888.888 INFO    ] Checking for camera pi updates...
[2026-10-28 11:30:27,922.922 INFO    ] 200
[2026-10-28 11:30:27,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:30:27,965.965 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:30:28,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:30:28,135.135 INFO    ] No camera update needed
[2026-10-28 11:30:28,137.137 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:30:28,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:30:28,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:30:28,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:30:30,189.189 INFO    ] ================================================
[2026-10-28 11:30:30,204.204 INFO    ] Launching Daemon at Wed Oct 28 11:30:30 IST 2026
[2026-10-28 11:30:30,216.216 INFO    ] ================================================
[2026-10-28 11:30:30,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:30:30
[2026-10-28 11:30:31,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:30:31,888.888 INFO    ] Initializing speech engine...
[2026-10-28 11:30:31,900.900 INFO    ] 2026-10-28 11:30:31
[2026-10-28 11:30:32,192.192 INFO    ] 2026-10-28 11:30:32
[2026-10-28 11:30:32,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:30:32,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:30:32,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:30:32,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:30:32,842.842 INFO    ] time= 28/10/2026 11:30:32
[2026-10-28 11:30:32,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:30:32,933.933 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:30:33,144.144 INFO    ] No existing commands found in stream
[2026-10-28 11:30:38,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:30:38,179.179 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-28 11:30:42,754.754 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:30:42,757.757 INFO    ] Checking for system updates...
[2026-10-28 11:30:42,811.811 INFO    ] 200
[2026-10-28 11:30:42,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:30:42,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:30:42,869.869 INFO    ] No update needed
[2026-10-28 11:30:42,872.872 INFO    ] Checking for camera pi updates...
[2026-10-28 11:30:42,905.905 INFO    ] 200
[2026-10-28 11:30:42,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:30:42,950.950 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:30:43,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:30:43,050.050 INFO    ] No camera update needed
[2026-10-28 11:30:43,053.053 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:30:43,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:30:43,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:30:43,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:30:45,107.107 INFO    ] ================================================
[2026-10-28 11:30:45,123.123 INFO    ] Launching Daemon at Wed Oct 28 11:30:45 IST 2026
[2026-10-28 11:30:45,134.134 INFO    ] ================================================
[2026-10-28 11:30:45,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:30:45
[2026-10-28 11:30:46,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:30:46,748.748 INFO    ] Initializing speech engine...
[2026-10-28 11:30:46,763.763 INFO    ] 2026-10-28 11:30:46
[2026-10-28 11:30:47,030.030 INFO    ] 2026-10-28 11:30:47
[2026-10-28 11:30:47,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:30:47,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:30:47,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:30:47,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:30:47,638.638 INFO    ] time= 28/10/2026 11:30:47
[2026-10-28 11:30:47,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:30:47,709.709 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:30:47,845.845 INFO    ] No existing commands found in stream
[2026-10-28 11:30:52,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:30:52,879.879 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-28 11:30:55,619.619 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:30:55,622.622 INFO    ] Checking for system updates...
[2026-10-28 11:30:55,659.659 INFO    ] 200
[2026-10-28 11:30:55,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:30:55,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:30:55,723.723 INFO    ] No update needed
[2026-10-28 11:30:55,725.725 INFO    ] Checking for camera pi updates...
[2026-10-28 11:30:55,758.758 INFO    ] 200
[2026-10-28 11:30:55,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:30:55,806.806 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:30:55,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:30:55,871.871 INFO    ] No camera update needed
[2026-10-28 11:30:55,874.874 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:30:55,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:30:55,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:30:55,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:30:57,927.927 INFO    ] ================================================
[2026-10-28 11:30:57,942.942 INFO    ] Launching Daemon at Wed Oct 28 11:30:57 IST 2026
[2026-10-28 11:30:57,953.953 INFO    ] ================================================
[2026-10-28 11:30:58,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:30:58
[2026-10-28 11:30:59,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:30:59,356.356 INFO    ] Initializing speech engine...
[2026-10-28 11:30:59,369.369 INFO    ] 2026-10-28 11:30:59
[2026-10-28 11:30:59,636.636 INFO    ] 2026-10-28 11:30:59
[2026-10-28 11:30:59,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:30:59,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:30:59,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:31:00,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:31:00,208.208 INFO    ] time= 28/10/2026 11:31:00
[2026-10-28 11:31:00,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:31:00,233.233 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:31:00,364.364 INFO    ] No existing commands found in stream
[2026-10-28 11:31:05,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:31:05,380.380 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 11:31:08,630.630 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:31:08,633.633 INFO    ] Checking for system updates...
[2026-10-28 11:31:08,672.672 INFO    ] 200
[2026-10-28 11:31:08,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:31:08,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:31:08,731.731 INFO    ] No update needed
[2026-10-28 11:31:08,733.733 INFO    ] Checking for camera pi updates...
[2026-10-28 11:31:08,766.766 INFO    ] 200
[2026-10-28 11:31:08,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:31:08,809.809 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:31:08,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:31:08,895.895 INFO    ] No camera update needed
[2026-10-28 11:31:08,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:31:08,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:31:08,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:31:08,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:31:10,951.951 INFO    ] ================================================
[2026-10-28 11:31:10,967.967 INFO    ] Launching Daemon at Wed Oct 28 11:31:10 IST 2026
[2026-10-28 11:31:10,977.977 INFO    ] ================================================
[2026-10-28 11:31:11,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:31:11
[2026-10-28 11:31:12,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:31:12,542.542 INFO    ] Initializing speech engine...
[2026-10-28 11:31:12,547.547 INFO    ] 2026-10-28 11:31:12
[2026-10-28 11:31:12,856.856 INFO    ] 2026-10-28 11:31:12
[2026-10-28 11:31:12,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:31:13,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:31:13,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:31:13,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:31:13,362.362 INFO    ] time= 28/10/2026 11:31:13
[2026-10-28 11:31:13,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:31:13,410.410 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:31:13,566.566 INFO    ] No existing commands found in stream
[2026-10-28 11:31:18,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:31:18,600.600 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-28 11:31:20,236.236 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:31:20,239.239 INFO    ] Checking for system updates...
[2026-10-28 11:31:20,277.277 INFO    ] 200
[2026-10-28 11:31:20,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:31:20,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:31:20,343.343 INFO    ] No update needed
[2026-10-28 11:31:20,346.346 INFO    ] Checking for camera pi updates...
[2026-10-28 11:31:20,385.385 INFO    ] 200
[2026-10-28 11:31:20,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:31:20,432.432 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:31:20,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:31:20,521.521 INFO    ] No camera update needed
[2026-10-28 11:31:20,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:31:20,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:31:20,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:31:20,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:31:22,583.583 INFO    ] ================================================
[2026-10-28 11:31:22,598.598 INFO    ] Launching Daemon at Wed Oct 28 11:31:22 IST 2026
[2026-10-28 11:31:22,610.610 INFO    ] ================================================
[2026-10-28 11:31:23,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:31:23
[2026-10-28 11:31:23,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:31:24,022.022 INFO    ] Initializing speech engine...
[2026-10-28 11:31:24,037.037 INFO    ] 2026-10-28 11:31:24
[2026-10-28 11:31:24,325.325 INFO    ] 2026-10-28 11:31:24
[2026-10-28 11:31:24,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:31:24,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:31:24,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:31:24,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:31:24,960.960 INFO    ] time= 28/10/2026 11:31:24
[2026-10-28 11:31:24,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:31:24,982.982 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:31:25,149.149 INFO    ] No existing commands found in stream
[2026-10-28 11:31:30,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:31:30,166.166 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-28 11:31:31,922.922 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:31:31,926.926 INFO    ] Checking for system updates...
[2026-10-28 11:31:31,968.968 INFO    ] 200
[2026-10-28 11:31:31,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:31:32,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:31:32,029.029 INFO    ] No update needed
[2026-10-28 11:31:32,032.032 INFO    ] Checking for camera pi updates...
[2026-10-28 11:31:32,084.084 INFO    ] 200
[2026-10-28 11:31:32,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:31:32,130.130 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:31:32,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:31:32,217.217 INFO    ] No camera update needed
[2026-10-28 11:31:32,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:31:32,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:31:32,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:31:32,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:31:34,277.277 INFO    ] ================================================
[2026-10-28 11:31:34,293.293 INFO    ] Launching Daemon at Wed Oct 28 11:31:34 IST 2026
[2026-10-28 11:31:34,304.304 INFO    ] ================================================
[2026-10-28 11:31:34,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:31:34
[2026-10-28 11:31:35,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:31:35,722.722 INFO    ] Initializing speech engine...
[2026-10-28 11:31:35,732.732 INFO    ] 2026-10-28 11:31:35
[2026-10-28 11:31:35,979.979 INFO    ] 2026-10-28 11:31:35
[2026-10-28 11:31:36,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:31:36,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:31:36,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:31:36,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:31:36,600.600 INFO    ] time= 28/10/2026 11:31:36
[2026-10-28 11:31:36,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:31:36,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:31:36,815.815 INFO    ] No existing commands found in stream
[2026-10-28 11:31:41,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:31:41,841.841 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-28 11:31:43,720.720 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:31:43,723.723 INFO    ] Checking for system updates...
[2026-10-28 11:31:43,762.762 INFO    ] 200
[2026-10-28 11:31:43,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:31:43,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:31:43,827.827 INFO    ] No update needed
[2026-10-28 11:31:43,830.830 INFO    ] Checking for camera pi updates...
[2026-10-28 11:31:43,864.864 INFO    ] 200
[2026-10-28 11:31:43,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:31:43,907.907 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:31:44,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:31:44,009.009 INFO    ] No camera update needed
[2026-10-28 11:31:44,011.011 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:31:44,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:31:44,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:31:44,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:31:46,065.065 INFO    ] ================================================
[2026-10-28 11:31:46,082.082 INFO    ] Launching Daemon at Wed Oct 28 11:31:46 IST 2026
[2026-10-28 11:31:46,094.094 INFO    ] ================================================
[2026-10-28 11:31:46,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:31:46
[2026-10-28 11:31:47,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:31:47,755.755 INFO    ] Initializing speech engine...
[2026-10-28 11:31:47,767.767 INFO    ] 2026-10-28 11:31:47
[2026-10-28 11:31:48,077.077 INFO    ] 2026-10-28 11:31:48
[2026-10-28 11:31:48,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:31:48,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:31:48,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:31:48,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:31:48,600.600 INFO    ] time= 28/10/2026 11:31:48
[2026-10-28 11:31:48,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:31:48,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:31:48,765.765 INFO    ] No existing commands found in stream
[2026-10-28 11:31:53,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:31:53,800.800 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 11:31:56,236.236 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:31:56,239.239 INFO    ] Checking for system updates...
[2026-10-28 11:31:56,280.280 INFO    ] 200
[2026-10-28 11:31:56,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:31:56,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:31:56,339.339 INFO    ] No update needed
[2026-10-28 11:31:56,341.341 INFO    ] Checking for camera pi updates...
[2026-10-28 11:31:56,375.375 INFO    ] 200
[2026-10-28 11:31:56,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:31:56,418.418 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:31:56,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:31:56,505.505 INFO    ] No camera update needed
[2026-10-28 11:31:56,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:31:56,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:31:56,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:31:56,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:31:58,565.565 INFO    ] ================================================
[2026-10-28 11:31:58,581.581 INFO    ] Launching Daemon at Wed Oct 28 11:31:58 IST 2026
[2026-10-28 11:31:58,593.593 INFO    ] ================================================
[2026-10-28 11:31:59,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:31:59
[2026-10-28 11:31:59,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:32:00,004.004 INFO    ] Initializing speech engine...
[2026-10-28 11:32:00,025.025 INFO    ] 2026-10-28 11:32:00
[2026-10-28 11:32:00,294.294 INFO    ] 2026-10-28 11:32:00
[2026-10-28 11:32:00,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:32:00,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:32:00,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:32:00,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:32:00,875.875 INFO    ] time= 28/10/2026 11:32:00
[2026-10-28 11:32:00,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:32:00,922.922 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:32:01,074.074 INFO    ] No existing commands found in stream
[2026-10-28 11:32:06,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:32:06,108.108 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-28 11:32:10,079.079 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:32:10,082.082 INFO    ] Checking for system updates...
[2026-10-28 11:32:10,118.118 INFO    ] 200
[2026-10-28 11:32:10,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:32:10,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:32:10,178.178 INFO    ] No update needed
[2026-10-28 11:32:10,180.180 INFO    ] Checking for camera pi updates...
[2026-10-28 11:32:10,215.215 INFO    ] 200
[2026-10-28 11:32:10,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:32:10,262.262 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:32:10,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:32:10,348.348 INFO    ] No camera update needed
[2026-10-28 11:32:10,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:32:10,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:32:10,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:32:10,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:32:12,405.405 INFO    ] ================================================
[2026-10-28 11:32:12,421.421 INFO    ] Launching Daemon at Wed Oct 28 11:32:12 IST 2026
[2026-10-28 11:32:12,432.432 INFO    ] ================================================
[2026-10-28 11:32:13,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:32:12
[2026-10-28 11:32:13,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:32:13,837.837 INFO    ] Initializing speech engine...
[2026-10-28 11:32:13,851.851 INFO    ] 2026-10-28 11:32:13
[2026-10-28 11:32:14,116.116 INFO    ] 2026-10-28 11:32:14
[2026-10-28 11:32:14,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:32:14,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:32:14,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:32:14,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:32:14,686.686 INFO    ] time= 28/10/2026 11:32:14
[2026-10-28 11:32:14,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:32:14,733.733 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:32:14,852.852 INFO    ] No existing commands found in stream
[2026-10-28 11:32:19,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:32:19,879.879 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-28 11:32:20,682.682 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:32:20,685.685 INFO    ] Checking for system updates...
[2026-10-28 11:32:20,724.724 INFO    ] 200
[2026-10-28 11:32:20,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:32:20,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:32:20,781.781 INFO    ] No update needed
[2026-10-28 11:32:20,784.784 INFO    ] Checking for camera pi updates...
[2026-10-28 11:32:20,817.817 INFO    ] 200
[2026-10-28 11:32:20,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:32:20,859.859 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:32:20,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:32:20,951.951 INFO    ] No camera update needed
[2026-10-28 11:32:20,954.954 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:32:20,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:32:20,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:32:20,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:32:23,011.011 INFO    ] ================================================
[2026-10-28 11:32:23,028.028 INFO    ] Launching Daemon at Wed Oct 28 11:32:23 IST 2026
[2026-10-28 11:32:23,039.039 INFO    ] ================================================
[2026-10-28 11:32:23,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:32:23
[2026-10-28 11:32:24,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:32:24,446.446 INFO    ] Initializing speech engine...
[2026-10-28 11:32:24,454.454 INFO    ] 2026-10-28 11:32:24
[2026-10-28 11:32:24,744.744 INFO    ] 2026-10-28 11:32:24
[2026-10-28 11:32:24,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:32:25,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:32:25,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:32:25,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:32:25,354.354 INFO    ] time= 28/10/2026 11:32:25
[2026-10-28 11:32:25,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:32:25,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:32:25,518.518 INFO    ] No existing commands found in stream
[2026-10-28 11:32:30,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:32:30,549.549 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-28 11:32:33,638.638 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:32:33,641.641 INFO    ] Checking for system updates...
[2026-10-28 11:32:33,678.678 INFO    ] 200
[2026-10-28 11:32:33,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:32:33,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:32:33,738.738 INFO    ] No update needed
[2026-10-28 11:32:33,740.740 INFO    ] Checking for camera pi updates...
[2026-10-28 11:32:33,776.776 INFO    ] 200
[2026-10-28 11:32:33,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:32:33,836.836 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:32:33,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:32:33,917.917 INFO    ] No camera update needed
[2026-10-28 11:32:33,919.919 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:32:33,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:32:33,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:32:33,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:32:35,978.978 INFO    ] ================================================
[2026-10-28 11:32:35,993.993 INFO    ] Launching Daemon at Wed Oct 28 11:32:35 IST 2026
[2026-10-28 11:32:36,004.004 INFO    ] ================================================
[2026-10-28 11:32:36,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:32:36
[2026-10-28 11:32:37,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:32:37,553.553 INFO    ] Initializing speech engine...
[2026-10-28 11:32:37,561.561 INFO    ] 2026-10-28 11:32:37
[2026-10-28 11:32:37,839.839 INFO    ] 2026-10-28 11:32:37
[2026-10-28 11:32:37,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:32:38,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:32:38,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:32:38,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:32:38,545.545 INFO    ] time= 28/10/2026 11:32:38
[2026-10-28 11:32:38,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:32:38,631.631 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:32:38,772.772 INFO    ] No existing commands found in stream
[2026-10-28 11:32:43,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:32:43,808.808 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-28 11:32:48,046.046 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:32:48,049.049 INFO    ] Checking for system updates...
[2026-10-28 11:32:48,085.085 INFO    ] 200
[2026-10-28 11:32:48,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:32:48,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:32:48,145.145 INFO    ] No update needed
[2026-10-28 11:32:48,147.147 INFO    ] Checking for camera pi updates...
[2026-10-28 11:32:48,181.181 INFO    ] 200
[2026-10-28 11:32:48,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:32:48,229.229 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:32:48,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:32:48,310.310 INFO    ] No camera update needed
[2026-10-28 11:32:48,313.313 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:32:48,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:32:48,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:32:48,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:32:50,367.367 INFO    ] ================================================
[2026-10-28 11:32:50,383.383 INFO    ] Launching Daemon at Wed Oct 28 11:32:50 IST 2026
[2026-10-28 11:32:50,395.395 INFO    ] ================================================
[2026-10-28 11:32:50,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:32:50
[2026-10-28 11:32:51,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:32:51,831.831 INFO    ] Initializing speech engine...
[2026-10-28 11:32:51,840.840 INFO    ] 2026-10-28 11:32:51
[2026-10-28 11:32:52,128.128 INFO    ] 2026-10-28 11:32:52
[2026-10-28 11:32:52,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:32:52,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:32:52,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:32:52,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:32:52,732.732 INFO    ] time= 28/10/2026 11:32:52
[2026-10-28 11:32:52,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:32:52,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:32:52,896.896 INFO    ] No existing commands found in stream
[2026-10-28 11:32:57,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:32:57,918.918 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 11:32:59,430.430 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:32:59,433.433 INFO    ] Checking for system updates...
[2026-10-28 11:32:59,468.468 INFO    ] 200
[2026-10-28 11:32:59,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:32:59,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:32:59,530.530 INFO    ] No update needed
[2026-10-28 11:32:59,532.532 INFO    ] Checking for camera pi updates...
[2026-10-28 11:32:59,567.567 INFO    ] 200
[2026-10-28 11:32:59,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:32:59,614.614 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:32:59,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:32:59,721.721 INFO    ] No camera update needed
[2026-10-28 11:32:59,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:32:59,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:32:59,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:32:59,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:33:01,776.776 INFO    ] ================================================
[2026-10-28 11:33:01,791.791 INFO    ] Launching Daemon at Wed Oct 28 11:33:01 IST 2026
[2026-10-28 11:33:01,802.802 INFO    ] ================================================
[2026-10-28 11:33:02,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:33:02
[2026-10-28 11:33:03,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:33:03,738.738 INFO    ] Initializing speech engine...
[2026-10-28 11:33:03,753.753 INFO    ] 2026-10-28 11:33:03
[2026-10-28 11:33:04,017.017 INFO    ] 2026-10-28 11:33:04
[2026-10-28 11:33:04,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:33:04,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:33:04,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:33:04,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:33:04,599.599 INFO    ] time= 28/10/2026 11:33:04
[2026-10-28 11:33:04,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:33:04,621.621 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:33:04,715.715 INFO    ] No existing commands found in stream
[2026-10-28 11:33:09,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:33:09,727.727 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-28 11:33:13,244.244 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:33:13,246.246 INFO    ] Checking for system updates...
[2026-10-28 11:33:13,282.282 INFO    ] 200
[2026-10-28 11:33:13,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:33:13,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:33:13,339.339 INFO    ] No update needed
[2026-10-28 11:33:13,341.341 INFO    ] Checking for camera pi updates...
[2026-10-28 11:33:13,375.375 INFO    ] 200
[2026-10-28 11:33:13,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:33:13,418.418 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:33:13,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:33:13,520.520 INFO    ] No camera update needed
[2026-10-28 11:33:13,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:33:13,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:33:13,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:33:13,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:33:15,583.583 INFO    ] ================================================
[2026-10-28 11:33:15,598.598 INFO    ] Launching Daemon at Wed Oct 28 11:33:15 IST 2026
[2026-10-28 11:33:15,610.610 INFO    ] ================================================
[2026-10-28 11:33:16,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:33:16
[2026-10-28 11:33:16,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:33:17,061.061 INFO    ] Initializing speech engine...
[2026-10-28 11:33:17,069.069 INFO    ] 2026-10-28 11:33:17
[2026-10-28 11:33:17,332.332 INFO    ] 2026-10-28 11:33:17
[2026-10-28 11:33:17,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:33:17,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:33:17,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:33:17,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:33:17,888.888 INFO    ] time= 28/10/2026 11:33:17
[2026-10-28 11:33:17,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:33:17,924.924 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:33:18,050.050 INFO    ] No existing commands found in stream
[2026-10-28 11:33:23,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:33:23,078.078 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-28 11:33:26,171.171 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:33:26,174.174 INFO    ] Checking for system updates...
[2026-10-28 11:33:26,210.210 INFO    ] 200
[2026-10-28 11:33:26,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:33:26,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:33:26,268.268 INFO    ] No update needed
[2026-10-28 11:33:26,270.270 INFO    ] Checking for camera pi updates...
[2026-10-28 11:33:26,303.303 INFO    ] 200
[2026-10-28 11:33:26,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:33:26,351.351 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:33:26,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:33:26,444.444 INFO    ] No camera update needed
[2026-10-28 11:33:26,446.446 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:33:26,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:33:26,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:33:26,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:33:28,500.500 INFO    ] ================================================
[2026-10-28 11:33:28,516.516 INFO    ] Launching Daemon at Wed Oct 28 11:33:28 IST 2026
[2026-10-28 11:33:28,527.527 INFO    ] ================================================
[2026-10-28 11:33:29,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:33:29
[2026-10-28 11:33:29,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:33:29,926.926 INFO    ] Initializing speech engine...
[2026-10-28 11:33:29,930.930 INFO    ] 2026-10-28 11:33:29
[2026-10-28 11:33:30,200.200 INFO    ] 2026-10-28 11:33:30
[2026-10-28 11:33:30,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:33:30,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:33:30,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:33:30,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:33:30,771.771 INFO    ] time= 28/10/2026 11:33:30
[2026-10-28 11:33:30,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:33:30,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:33:30,930.930 INFO    ] No existing commands found in stream
[2026-10-28 11:33:35,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:33:35,957.957 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 11:33:39,949.949 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:33:39,952.952 INFO    ] Checking for system updates...
[2026-10-28 11:33:39,988.988 INFO    ] 200
[2026-10-28 11:33:39,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:33:40,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:33:40,046.046 INFO    ] No update needed
[2026-10-28 11:33:40,049.049 INFO    ] Checking for camera pi updates...
[2026-10-28 11:33:40,083.083 INFO    ] 200
[2026-10-28 11:33:40,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:33:40,127.127 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:33:40,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:33:40,211.211 INFO    ] No camera update needed
[2026-10-28 11:33:40,214.214 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:33:40,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:33:40,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:33:40,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:33:42,269.269 INFO    ] ================================================
[2026-10-28 11:33:42,286.286 INFO    ] Launching Daemon at Wed Oct 28 11:33:42 IST 2026
[2026-10-28 11:33:42,297.297 INFO    ] ================================================
[2026-10-28 11:33:42,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:33:42
[2026-10-28 11:33:43,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:33:43,852.852 INFO    ] Initializing speech engine...
[2026-10-28 11:33:43,867.867 INFO    ] 2026-10-28 11:33:43
[2026-10-28 11:33:44,147.147 INFO    ] 2026-10-28 11:33:44
[2026-10-28 11:33:44,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:33:44,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:33:44,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:33:44,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:33:44,721.721 INFO    ] time= 28/10/2026 11:33:44
[2026-10-28 11:33:44,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:33:44,758.758 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:33:44,900.900 INFO    ] No existing commands found in stream
[2026-10-28 11:33:49,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:33:49,939.939 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-28 11:33:53,833.833 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:33:53,836.836 INFO    ] Checking for system updates...
[2026-10-28 11:33:53,876.876 INFO    ] 200
[2026-10-28 11:33:53,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:33:53,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:33:53,935.935 INFO    ] No update needed
[2026-10-28 11:33:53,938.938 INFO    ] Checking for camera pi updates...
[2026-10-28 11:33:53,972.972 INFO    ] 200
[2026-10-28 11:33:53,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:33:54,022.022 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:33:54,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:33:54,126.126 INFO    ] No camera update needed
[2026-10-28 11:33:54,128.128 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:33:54,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:33:54,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:33:54,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:33:56,185.185 INFO    ] ================================================
[2026-10-28 11:33:56,201.201 INFO    ] Launching Daemon at Wed Oct 28 11:33:56 IST 2026
[2026-10-28 11:33:56,212.212 INFO    ] ================================================
[2026-10-28 11:33:56,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:33:56
[2026-10-28 11:33:57,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:33:57,629.629 INFO    ] Initializing speech engine...
[2026-10-28 11:33:57,639.639 INFO    ] 2026-10-28 11:33:57
[2026-10-28 11:33:57,882.882 INFO    ] 2026-10-28 11:33:57
[2026-10-28 11:33:57,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:33:58,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:33:58,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:33:58,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:33:58,433.433 INFO    ] time= 28/10/2026 11:33:58
[2026-10-28 11:33:58,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:33:58,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:33:58,588.588 INFO    ] No existing commands found in stream
[2026-10-28 11:34:03,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:34:03,611.611 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 11:34:07,310.310 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:34:07,313.313 INFO    ] Checking for system updates...
[2026-10-28 11:34:07,348.348 INFO    ] 200
[2026-10-28 11:34:07,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:34:07,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:34:07,405.405 INFO    ] No update needed
[2026-10-28 11:34:07,408.408 INFO    ] Checking for camera pi updates...
[2026-10-28 11:34:07,441.441 INFO    ] 200
[2026-10-28 11:34:07,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:34:07,485.485 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:34:07,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:34:07,569.569 INFO    ] No camera update needed
[2026-10-28 11:34:07,571.571 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:34:07,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:34:07,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:34:07,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:34:09,625.625 INFO    ] ================================================
[2026-10-28 11:34:09,641.641 INFO    ] Launching Daemon at Wed Oct 28 11:34:09 IST 2026
[2026-10-28 11:34:09,652.652 INFO    ] ================================================
[2026-10-28 11:34:10,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:34:10
[2026-10-28 11:34:10,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:34:11,245.245 INFO    ] Initializing speech engine...
[2026-10-28 11:34:11,255.255 INFO    ] 2026-10-28 11:34:11
[2026-10-28 11:34:11,529.529 INFO    ] 2026-10-28 11:34:11
[2026-10-28 11:34:11,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:34:11,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:34:11,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:34:12,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:34:12,100.100 INFO    ] time= 28/10/2026 11:34:12
[2026-10-28 11:34:12,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:34:12,139.139 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:34:12,252.252 INFO    ] No existing commands found in stream
[2026-10-28 11:34:17,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:34:17,281.281 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-28 11:34:20,753.753 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:34:20,756.756 INFO    ] Checking for system updates...
[2026-10-28 11:34:20,796.796 INFO    ] 200
[2026-10-28 11:34:20,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:34:20,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:34:20,858.858 INFO    ] No update needed
[2026-10-28 11:34:20,861.861 INFO    ] Checking for camera pi updates...
[2026-10-28 11:34:20,898.898 INFO    ] 200
[2026-10-28 11:34:20,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:34:20,946.946 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:34:21,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:34:21,054.054 INFO    ] No camera update needed
[2026-10-28 11:34:21,057.057 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:34:21,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:34:21,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:34:21,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:34:23,114.114 INFO    ] ================================================
[2026-10-28 11:34:23,129.129 INFO    ] Launching Daemon at Wed Oct 28 11:34:23 IST 2026
[2026-10-28 11:34:23,140.140 INFO    ] ================================================
[2026-10-28 11:34:23,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:34:23
[2026-10-28 11:34:24,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:34:24,744.744 INFO    ] Initializing speech engine...
[2026-10-28 11:34:24,752.752 INFO    ] 2026-10-28 11:34:24
[2026-10-28 11:34:25,020.020 INFO    ] 2026-10-28 11:34:25
[2026-10-28 11:34:25,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:34:25,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:34:25,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:34:25,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:34:25,632.632 INFO    ] time= 28/10/2026 11:34:25
[2026-10-28 11:34:25,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:34:25,659.659 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:34:25,824.824 INFO    ] No existing commands found in stream
[2026-10-28 11:34:30,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:34:30,853.853 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-28 11:34:32,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:34:32,207.207 INFO    ] Checking for system updates...
[2026-10-28 11:34:32,248.248 INFO    ] 200
[2026-10-28 11:34:32,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:34:32,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:34:32,312.312 INFO    ] No update needed
[2026-10-28 11:34:32,315.315 INFO    ] Checking for camera pi updates...
[2026-10-28 11:34:32,354.354 INFO    ] 200
[2026-10-28 11:34:32,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:34:32,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:34:32,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:34:32,499.499 INFO    ] No camera update needed
[2026-10-28 11:34:32,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:34:32,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:34:32,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:34:32,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:34:34,555.555 INFO    ] ================================================
[2026-10-28 11:34:34,570.570 INFO    ] Launching Daemon at Wed Oct 28 11:34:34 IST 2026
[2026-10-28 11:34:34,581.581 INFO    ] ================================================
[2026-10-28 11:34:35,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:34:35
[2026-10-28 11:34:35,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:34:36,035.035 INFO    ] Initializing speech engine...
[2026-10-28 11:34:36,042.042 INFO    ] 2026-10-28 11:34:36
[2026-10-28 11:34:36,309.309 INFO    ] 2026-10-28 11:34:36
[2026-10-28 11:34:36,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:34:36,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:34:36,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:34:36,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:34:36,860.860 INFO    ] time= 28/10/2026 11:34:36
[2026-10-28 11:34:36,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:34:36,906.906 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:34:37,036.036 INFO    ] No existing commands found in stream
[2026-10-28 11:34:42,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:34:42,069.069 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 11:34:45,630.630 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:34:45,632.632 INFO    ] Checking for system updates...
[2026-10-28 11:34:45,668.668 INFO    ] 200
[2026-10-28 11:34:45,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:34:45,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:34:45,725.725 INFO    ] No update needed
[2026-10-28 11:34:45,728.728 INFO    ] Checking for camera pi updates...
[2026-10-28 11:34:45,762.762 INFO    ] 200
[2026-10-28 11:34:45,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:34:45,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:34:45,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:34:45,990.990 INFO    ] No camera update needed
[2026-10-28 11:34:45,992.992 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:34:45,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:34:46,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:34:46,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:34:48,047.047 INFO    ] ================================================
[2026-10-28 11:34:48,062.062 INFO    ] Launching Daemon at Wed Oct 28 11:34:48 IST 2026
[2026-10-28 11:34:48,073.073 INFO    ] ================================================
[2026-10-28 11:34:48,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:34:48
[2026-10-28 11:34:49,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:34:49,498.498 INFO    ] Initializing speech engine...
[2026-10-28 11:34:49,507.507 INFO    ] 2026-10-28 11:34:49
[2026-10-28 11:34:49,809.809 INFO    ] 2026-10-28 11:34:49
[2026-10-28 11:34:49,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:34:50,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:34:50,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:34:50,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:34:50,388.388 INFO    ] time= 28/10/2026 11:34:50
[2026-10-28 11:34:50,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:34:50,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:34:50,627.627 INFO    ] No existing commands found in stream
[2026-10-28 11:34:55,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:34:55,642.642 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-28 11:34:59,030.030 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:34:59,032.032 INFO    ] Checking for system updates...
[2026-10-28 11:34:59,068.068 INFO    ] 200
[2026-10-28 11:34:59,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:34:59,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:34:59,126.126 INFO    ] No update needed
[2026-10-28 11:34:59,129.129 INFO    ] Checking for camera pi updates...
[2026-10-28 11:34:59,162.162 INFO    ] 200
[2026-10-28 11:34:59,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:34:59,209.209 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:34:59,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:34:59,300.300 INFO    ] No camera update needed
[2026-10-28 11:34:59,303.303 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:34:59,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:34:59,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:34:59,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:35:01,392.392 INFO    ] ================================================
[2026-10-28 11:35:01,455.455 INFO    ] Launching Daemon at Wed Oct 28 11:35:01 IST 2026
[2026-10-28 11:35:01,500.500 INFO    ] ================================================
[2026-10-28 11:35:02,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:35:02
[2026-10-28 11:35:02,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:35:03,294.294 INFO    ] Initializing speech engine...
[2026-10-28 11:35:03,299.299 INFO    ] 2026-10-28 11:35:03
[2026-10-28 11:35:03,577.577 INFO    ] 2026-10-28 11:35:03
[2026-10-28 11:35:03,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:35:03,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:35:03,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:35:04,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:35:04,137.137 INFO    ] time= 28/10/2026 11:35:04
[2026-10-28 11:35:04,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:35:04,162.162 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:35:04,289.289 INFO    ] No existing commands found in stream
[2026-10-28 11:35:09,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:35:09,306.306 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-28 11:35:11,287.287 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:35:11,290.290 INFO    ] Checking for system updates...
[2026-10-28 11:35:11,325.325 INFO    ] 200
[2026-10-28 11:35:11,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:35:11,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:35:11,390.390 INFO    ] No update needed
[2026-10-28 11:35:11,392.392 INFO    ] Checking for camera pi updates...
[2026-10-28 11:35:11,427.427 INFO    ] 200
[2026-10-28 11:35:11,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:35:11,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:35:11,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:35:11,557.557 INFO    ] No camera update needed
[2026-10-28 11:35:11,559.559 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:35:11,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:35:11,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:35:11,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:35:13,614.614 INFO    ] ================================================
[2026-10-28 11:35:13,630.630 INFO    ] Launching Daemon at Wed Oct 28 11:35:13 IST 2026
[2026-10-28 11:35:13,641.641 INFO    ] ================================================
[2026-10-28 11:35:14,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:35:14
[2026-10-28 11:35:14,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:35:15,057.057 INFO    ] Initializing speech engine...
[2026-10-28 11:35:15,066.066 INFO    ] 2026-10-28 11:35:15
[2026-10-28 11:35:15,310.310 INFO    ] 2026-10-28 11:35:15
[2026-10-28 11:35:15,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:35:15,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:35:15,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:35:15,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:35:15,864.864 INFO    ] time= 28/10/2026 11:35:15
[2026-10-28 11:35:15,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:35:15,886.886 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:35:16,017.017 INFO    ] No existing commands found in stream
[2026-10-28 11:35:21,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:35:21,048.048 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-28 11:35:24,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:35:24,992.992 INFO    ] Checking for system updates...
[2026-10-28 11:35:25,032.032 INFO    ] 200
[2026-10-28 11:35:25,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:35:25,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:35:25,090.090 INFO    ] No update needed
[2026-10-28 11:35:25,093.093 INFO    ] Checking for camera pi updates...
[2026-10-28 11:35:25,127.127 INFO    ] 200
[2026-10-28 11:35:25,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:35:25,172.172 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:35:25,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:35:25,276.276 INFO    ] No camera update needed
[2026-10-28 11:35:25,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:35:25,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:35:25,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:35:25,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:35:27,335.335 INFO    ] ================================================
[2026-10-28 11:35:27,350.350 INFO    ] Launching Daemon at Wed Oct 28 11:35:27 IST 2026
[2026-10-28 11:35:27,362.362 INFO    ] ================================================
[2026-10-28 11:35:27,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:35:27
[2026-10-28 11:35:28,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:35:28,770.770 INFO    ] Initializing speech engine...
[2026-10-28 11:35:28,779.779 INFO    ] 2026-10-28 11:35:28
[2026-10-28 11:35:29,072.072 INFO    ] 2026-10-28 11:35:29
[2026-10-28 11:35:29,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:35:29,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:35:29,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:35:29,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:35:29,606.606 INFO    ] time= 28/10/2026 11:35:29
[2026-10-28 11:35:29,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:35:29,714.714 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:35:29,843.843 INFO    ] No existing commands found in stream
[2026-10-28 11:35:34,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:35:34,861.861 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-28 11:35:37,252.252 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:35:37,254.254 INFO    ] Checking for system updates...
[2026-10-28 11:35:37,290.290 INFO    ] 200
[2026-10-28 11:35:37,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:35:37,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:35:37,347.347 INFO    ] No update needed
[2026-10-28 11:35:37,349.349 INFO    ] Checking for camera pi updates...
[2026-10-28 11:35:37,382.382 INFO    ] 200
[2026-10-28 11:35:37,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:35:37,425.425 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:35:37,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:35:37,508.508 INFO    ] No camera update needed
[2026-10-28 11:35:37,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:35:37,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:35:37,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:35:37,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:35:39,563.563 INFO    ] ================================================
[2026-10-28 11:35:39,579.579 INFO    ] Launching Daemon at Wed Oct 28 11:35:39 IST 2026
[2026-10-28 11:35:39,591.591 INFO    ] ================================================
[2026-10-28 11:35:40,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:35:40
[2026-10-28 11:35:40,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:35:41,018.018 INFO    ] Initializing speech engine...
[2026-10-28 11:35:41,027.027 INFO    ] 2026-10-28 11:35:41
[2026-10-28 11:35:41,280.280 INFO    ] 2026-10-28 11:35:41
[2026-10-28 11:35:41,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:35:41,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:35:41,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:35:41,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:35:41,874.874 INFO    ] time= 28/10/2026 11:35:41
[2026-10-28 11:35:41,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:35:41,948.948 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:35:42,076.076 INFO    ] No existing commands found in stream
[2026-10-28 11:35:47,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:35:47,089.089 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 11:35:50,407.407 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:35:50,410.410 INFO    ] Checking for system updates...
[2026-10-28 11:35:50,446.446 INFO    ] 200
[2026-10-28 11:35:50,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:35:50,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:35:50,512.512 INFO    ] No update needed
[2026-10-28 11:35:50,514.514 INFO    ] Checking for camera pi updates...
[2026-10-28 11:35:50,549.549 INFO    ] 200
[2026-10-28 11:35:50,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:35:50,596.596 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:35:50,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:35:50,727.727 INFO    ] No camera update needed
[2026-10-28 11:35:50,730.730 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:35:50,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:35:50,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:35:50,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:35:52,783.783 INFO    ] ================================================
[2026-10-28 11:35:52,799.799 INFO    ] Launching Daemon at Wed Oct 28 11:35:52 IST 2026
[2026-10-28 11:35:52,810.810 INFO    ] ================================================
[2026-10-28 11:35:53,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:35:53
[2026-10-28 11:35:53,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:35:54,221.221 INFO    ] Initializing speech engine...
[2026-10-28 11:35:54,228.228 INFO    ] 2026-10-28 11:35:54
[2026-10-28 11:35:54,524.524 INFO    ] 2026-10-28 11:35:54
[2026-10-28 11:35:54,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:35:54,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:35:54,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:35:54,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:35:55,017.017 INFO    ] time= 28/10/2026 11:35:54
[2026-10-28 11:35:55,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:35:55,058.058 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:35:55,222.222 INFO    ] No existing commands found in stream
[2026-10-28 11:36:00,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:36:00,237.237 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 11:36:03,550.550 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:36:03,552.552 INFO    ] Checking for system updates...
[2026-10-28 11:36:03,588.588 INFO    ] 200
[2026-10-28 11:36:03,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:36:03,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:36:03,650.650 INFO    ] No update needed
[2026-10-28 11:36:03,653.653 INFO    ] Checking for camera pi updates...
[2026-10-28 11:36:03,699.699 INFO    ] 200
[2026-10-28 11:36:03,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:36:03,752.752 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:36:03,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:36:03,846.846 INFO    ] No camera update needed
[2026-10-28 11:36:03,849.849 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:36:03,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:36:03,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:36:03,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:36:05,904.904 INFO    ] ================================================
[2026-10-28 11:36:05,920.920 INFO    ] Launching Daemon at Wed Oct 28 11:36:05 IST 2026
[2026-10-28 11:36:05,931.931 INFO    ] ================================================
[2026-10-28 11:36:06,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:36:06
[2026-10-28 11:36:07,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:36:07,349.349 INFO    ] Initializing speech engine...
[2026-10-28 11:36:07,367.367 INFO    ] 2026-10-28 11:36:07
[2026-10-28 11:36:07,637.637 INFO    ] 2026-10-28 11:36:07
[2026-10-28 11:36:07,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:36:07,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:36:07,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:36:08,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:36:08,249.249 INFO    ] time= 28/10/2026 11:36:08
[2026-10-28 11:36:08,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:36:08,287.287 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:36:08,433.433 INFO    ] No existing commands found in stream
[2026-10-28 11:36:13,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:36:13,455.455 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 11:36:16,267.267 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:36:16,269.269 INFO    ] Checking for system updates...
[2026-10-28 11:36:16,304.304 INFO    ] 200
[2026-10-28 11:36:16,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:36:16,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:36:16,367.367 INFO    ] No update needed
[2026-10-28 11:36:16,369.369 INFO    ] Checking for camera pi updates...
[2026-10-28 11:36:16,406.406 INFO    ] 200
[2026-10-28 11:36:16,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:36:16,453.453 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:36:16,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:36:16,533.533 INFO    ] No camera update needed
[2026-10-28 11:36:16,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:36:16,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:36:16,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:36:16,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:36:18,587.587 INFO    ] ================================================
[2026-10-28 11:36:18,603.603 INFO    ] Launching Daemon at Wed Oct 28 11:36:18 IST 2026
[2026-10-28 11:36:18,614.614 INFO    ] ================================================
[2026-10-28 11:36:19,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:36:19
[2026-10-28 11:36:19,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:36:20,024.024 INFO    ] Initializing speech engine...
[2026-10-28 11:36:20,030.030 INFO    ] 2026-10-28 11:36:20
[2026-10-28 11:36:20,323.323 INFO    ] 2026-10-28 11:36:20
[2026-10-28 11:36:20,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:36:20,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:36:20,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:36:20,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:36:20,846.846 INFO    ] time= 28/10/2026 11:36:20
[2026-10-28 11:36:20,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:36:20,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:36:21,118.118 INFO    ] No existing commands found in stream
[2026-10-28 11:36:26,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:36:26,136.136 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 11:36:30,006.006 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:36:30,008.008 INFO    ] Checking for system updates...
[2026-10-28 11:36:30,043.043 INFO    ] 200
[2026-10-28 11:36:30,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:36:30,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:36:30,101.101 INFO    ] No update needed
[2026-10-28 11:36:30,103.103 INFO    ] Checking for camera pi updates...
[2026-10-28 11:36:30,136.136 INFO    ] 200
[2026-10-28 11:36:30,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:36:30,179.179 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:36:30,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:36:30,269.269 INFO    ] No camera update needed
[2026-10-28 11:36:30,272.272 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:36:30,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:36:30,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:36:30,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:36:32,326.326 INFO    ] ================================================
[2026-10-28 11:36:32,342.342 INFO    ] Launching Daemon at Wed Oct 28 11:36:32 IST 2026
[2026-10-28 11:36:32,354.354 INFO    ] ================================================
[2026-10-28 11:36:32,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:36:32
[2026-10-28 11:36:33,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:36:33,789.789 INFO    ] Initializing speech engine...
[2026-10-28 11:36:33,798.798 INFO    ] 2026-10-28 11:36:33
[2026-10-28 11:36:34,087.087 INFO    ] 2026-10-28 11:36:34
[2026-10-28 11:36:34,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:36:34,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:36:34,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:36:34,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:36:34,711.711 INFO    ] time= 28/10/2026 11:36:34
[2026-10-28 11:36:34,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:36:34,738.738 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:36:34,881.881 INFO    ] No existing commands found in stream
[2026-10-28 11:36:39,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:36:39,899.899 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-28 11:36:43,748.748 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:36:43,750.750 INFO    ] Checking for system updates...
[2026-10-28 11:36:43,785.785 INFO    ] 200
[2026-10-28 11:36:43,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:36:43,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:36:43,844.844 INFO    ] No update needed
[2026-10-28 11:36:43,846.846 INFO    ] Checking for camera pi updates...
[2026-10-28 11:36:43,879.879 INFO    ] 200
[2026-10-28 11:36:43,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:36:43,922.922 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:36:44,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:36:44,022.022 INFO    ] No camera update needed
[2026-10-28 11:36:44,025.025 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:36:44,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:36:44,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:36:44,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:36:46,081.081 INFO    ] ================================================
[2026-10-28 11:36:46,097.097 INFO    ] Launching Daemon at Wed Oct 28 11:36:46 IST 2026
[2026-10-28 11:36:46,108.108 INFO    ] ================================================
[2026-10-28 11:36:46,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:36:46
[2026-10-28 11:36:47,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:36:47,644.644 INFO    ] Initializing speech engine...
[2026-10-28 11:36:47,649.649 INFO    ] 2026-10-28 11:36:47
[2026-10-28 11:36:47,901.901 INFO    ] 2026-10-28 11:36:47
[2026-10-28 11:36:47,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:36:48,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:36:48,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:36:48,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:36:48,448.448 INFO    ] time= 28/10/2026 11:36:48
[2026-10-28 11:36:48,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:36:48,495.495 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:36:48,610.610 INFO    ] No existing commands found in stream
[2026-10-28 11:36:53,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:36:53,638.638 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-28 11:36:55,986.986 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:36:55,989.989 INFO    ] Checking for system updates...
[2026-10-28 11:36:56,025.025 INFO    ] 200
[2026-10-28 11:36:56,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:36:56,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:36:56,082.082 INFO    ] No update needed
[2026-10-28 11:36:56,084.084 INFO    ] Checking for camera pi updates...
[2026-10-28 11:36:56,117.117 INFO    ] 200
[2026-10-28 11:36:56,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:36:56,165.165 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:36:56,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:36:56,345.345 INFO    ] No camera update needed
[2026-10-28 11:36:56,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:36:56,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:36:56,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:36:56,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:36:58,401.401 INFO    ] ================================================
[2026-10-28 11:36:58,416.416 INFO    ] Launching Daemon at Wed Oct 28 11:36:58 IST 2026
[2026-10-28 11:36:58,428.428 INFO    ] ================================================
[2026-10-28 11:36:59,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:36:59
[2026-10-28 11:36:59,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:37:00,050.050 INFO    ] Initializing speech engine...
[2026-10-28 11:37:00,059.059 INFO    ] 2026-10-28 11:37:00
[2026-10-28 11:37:00,328.328 INFO    ] 2026-10-28 11:37:00
[2026-10-28 11:37:00,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:37:00,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:37:00,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:37:00,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:37:00,934.934 INFO    ] time= 28/10/2026 11:37:00
[2026-10-28 11:37:00,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:37:01,029.029 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:37:01,214.214 INFO    ] No existing commands found in stream
[2026-10-28 11:37:06,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:37:06,248.248 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 11:37:09,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:37:09,162.162 INFO    ] Checking for system updates...
[2026-10-28 11:37:09,199.199 INFO    ] 200
[2026-10-28 11:37:09,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:37:09,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:37:09,260.260 INFO    ] No update needed
[2026-10-28 11:37:09,263.263 INFO    ] Checking for camera pi updates...
[2026-10-28 11:37:09,299.299 INFO    ] 200
[2026-10-28 11:37:09,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:37:09,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:37:09,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:37:09,436.436 INFO    ] No camera update needed
[2026-10-28 11:37:09,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:37:09,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:37:09,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:37:09,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:37:11,496.496 INFO    ] ================================================
[2026-10-28 11:37:11,511.511 INFO    ] Launching Daemon at Wed Oct 28 11:37:11 IST 2026
[2026-10-28 11:37:11,522.522 INFO    ] ================================================
[2026-10-28 11:37:12,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:37:12
[2026-10-28 11:37:12,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:37:13,163.163 INFO    ] Initializing speech engine...
[2026-10-28 11:37:13,172.172 INFO    ] 2026-10-28 11:37:13
[2026-10-28 11:37:13,492.492 INFO    ] 2026-10-28 11:37:13
[2026-10-28 11:37:13,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:37:13,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:37:13,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:37:14,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:37:14,209.209 INFO    ] time= 28/10/2026 11:37:14
[2026-10-28 11:37:14,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:37:14,317.317 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:37:14,455.455 INFO    ] No existing commands found in stream
[2026-10-28 11:37:19,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:37:19,469.469 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-28 11:37:22,442.442 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:37:22,445.445 INFO    ] Checking for system updates...
[2026-10-28 11:37:22,483.483 INFO    ] 200
[2026-10-28 11:37:22,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:37:22,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:37:22,550.550 INFO    ] No update needed
[2026-10-28 11:37:22,552.552 INFO    ] Checking for camera pi updates...
[2026-10-28 11:37:22,587.587 INFO    ] 200
[2026-10-28 11:37:22,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:37:22,630.630 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:37:22,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:37:22,734.734 INFO    ] No camera update needed
[2026-10-28 11:37:22,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:37:22,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:37:22,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:37:22,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:37:24,795.795 INFO    ] ================================================
[2026-10-28 11:37:24,810.810 INFO    ] Launching Daemon at Wed Oct 28 11:37:24 IST 2026
[2026-10-28 11:37:24,821.821 INFO    ] ================================================
[2026-10-28 11:37:25,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:37:25
[2026-10-28 11:37:25,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:37:26,256.256 INFO    ] Initializing speech engine...
[2026-10-28 11:37:26,265.265 INFO    ] 2026-10-28 11:37:26
[2026-10-28 11:37:26,508.508 INFO    ] 2026-10-28 11:37:26
[2026-10-28 11:37:26,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:37:26,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:37:26,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:37:27,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:37:27,061.061 INFO    ] time= 28/10/2026 11:37:27
[2026-10-28 11:37:27,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:37:27,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:37:27,235.235 INFO    ] No existing commands found in stream
[2026-10-28 11:37:32,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:37:32,268.268 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 11:37:35,106.106 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:37:35,109.109 INFO    ] Checking for system updates...
[2026-10-28 11:37:35,144.144 INFO    ] 200
[2026-10-28 11:37:35,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:37:35,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:37:35,202.202 INFO    ] No update needed
[2026-10-28 11:37:35,205.205 INFO    ] Checking for camera pi updates...
[2026-10-28 11:37:35,242.242 INFO    ] 200
[2026-10-28 11:37:35,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:37:35,289.289 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:37:35,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:37:35,390.390 INFO    ] No camera update needed
[2026-10-28 11:37:35,393.393 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:37:35,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:37:35,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:37:35,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:37:37,448.448 INFO    ] ================================================
[2026-10-28 11:37:37,463.463 INFO    ] Launching Daemon at Wed Oct 28 11:37:37 IST 2026
[2026-10-28 11:37:37,474.474 INFO    ] ================================================
[2026-10-28 11:37:38,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:37:38
[2026-10-28 11:37:38,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:37:38,965.965 INFO    ] Initializing speech engine...
[2026-10-28 11:37:38,973.973 INFO    ] 2026-10-28 11:37:38
[2026-10-28 11:37:39,232.232 INFO    ] 2026-10-28 11:37:39
[2026-10-28 11:37:39,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:37:39,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:37:39,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:37:39,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:37:39,787.787 INFO    ] time= 28/10/2026 11:37:39
[2026-10-28 11:37:39,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:37:39,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:37:39,938.938 INFO    ] No existing commands found in stream
[2026-10-28 11:37:44,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:37:44,966.966 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 11:37:49,443.443 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:37:49,446.446 INFO    ] Checking for system updates...
[2026-10-28 11:37:49,482.482 INFO    ] 200
[2026-10-28 11:37:49,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:37:49,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:37:49,541.541 INFO    ] No update needed
[2026-10-28 11:37:49,544.544 INFO    ] Checking for camera pi updates...
[2026-10-28 11:37:49,579.579 INFO    ] 200
[2026-10-28 11:37:49,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:37:49,625.625 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:37:49,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:37:49,712.712 INFO    ] No camera update needed
[2026-10-28 11:37:49,717.717 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:37:49,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:37:49,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:37:49,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:37:51,774.774 INFO    ] ================================================
[2026-10-28 11:37:51,790.790 INFO    ] Launching Daemon at Wed Oct 28 11:37:51 IST 2026
[2026-10-28 11:37:51,801.801 INFO    ] ================================================
[2026-10-28 11:37:52,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:37:52
[2026-10-28 11:37:52,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:37:53,234.234 INFO    ] Initializing speech engine...
[2026-10-28 11:37:53,242.242 INFO    ] 2026-10-28 11:37:53
[2026-10-28 11:37:53,510.510 INFO    ] 2026-10-28 11:37:53
[2026-10-28 11:37:53,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:37:53,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:37:53,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:37:54,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:37:54,142.142 INFO    ] time= 28/10/2026 11:37:54
[2026-10-28 11:37:54,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:37:54,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:37:54,349.349 INFO    ] No existing commands found in stream
[2026-10-28 11:37:59,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:37:59,383.383 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 11:38:00,514.514 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:38:00,517.517 INFO    ] Checking for system updates...
[2026-10-28 11:38:00,553.553 INFO    ] 200
[2026-10-28 11:38:00,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:38:00,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:38:00,614.614 INFO    ] No update needed
[2026-10-28 11:38:00,617.617 INFO    ] Checking for camera pi updates...
[2026-10-28 11:38:00,650.650 INFO    ] 200
[2026-10-28 11:38:00,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:38:00,693.693 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:38:00,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:38:00,781.781 INFO    ] No camera update needed
[2026-10-28 11:38:00,784.784 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:38:00,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:38:00,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:38:00,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:38:02,845.845 INFO    ] ================================================
[2026-10-28 11:38:02,865.865 INFO    ] Launching Daemon at Wed Oct 28 11:38:02 IST 2026
[2026-10-28 11:38:02,878.878 INFO    ] ================================================
[2026-10-28 11:38:03,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:38:03
[2026-10-28 11:38:04,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:38:04,460.460 INFO    ] Initializing speech engine...
[2026-10-28 11:38:04,467.467 INFO    ] 2026-10-28 11:38:04
[2026-10-28 11:38:04,774.774 INFO    ] 2026-10-28 11:38:04
[2026-10-28 11:38:04,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:38:05,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:38:05,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:38:05,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:38:05,367.367 INFO    ] time= 28/10/2026 11:38:05
[2026-10-28 11:38:05,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:38:05,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:38:05,559.559 INFO    ] No existing commands found in stream
[2026-10-28 11:38:10,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:38:10,578.578 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-28 11:38:12,265.265 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:38:12,268.268 INFO    ] Checking for system updates...
[2026-10-28 11:38:12,303.303 INFO    ] 200
[2026-10-28 11:38:12,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:38:12,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:38:12,368.368 INFO    ] No update needed
[2026-10-28 11:38:12,370.370 INFO    ] Checking for camera pi updates...
[2026-10-28 11:38:12,408.408 INFO    ] 200
[2026-10-28 11:38:12,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:38:12,451.451 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:38:12,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:38:12,536.536 INFO    ] No camera update needed
[2026-10-28 11:38:12,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:38:12,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:38:12,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:38:12,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:38:14,592.592 INFO    ] ================================================
[2026-10-28 11:38:14,608.608 INFO    ] Launching Daemon at Wed Oct 28 11:38:14 IST 2026
[2026-10-28 11:38:14,619.619 INFO    ] ================================================
[2026-10-28 11:38:15,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:38:15
[2026-10-28 11:38:15,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:38:16,027.027 INFO    ] Initializing speech engine...
[2026-10-28 11:38:16,042.042 INFO    ] 2026-10-28 11:38:16
[2026-10-28 11:38:16,311.311 INFO    ] 2026-10-28 11:38:16
[2026-10-28 11:38:16,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:38:16,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:38:16,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:38:16,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:38:16,889.889 INFO    ] time= 28/10/2026 11:38:16
[2026-10-28 11:38:16,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:38:16,923.923 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:38:17,049.049 INFO    ] No existing commands found in stream
[2026-10-28 11:38:22,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:38:22,082.082 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-28 11:38:24,120.120 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:38:24,122.122 INFO    ] Checking for system updates...
[2026-10-28 11:38:24,159.159 INFO    ] 200
[2026-10-28 11:38:24,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:38:24,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:38:24,218.218 INFO    ] No update needed
[2026-10-28 11:38:24,220.220 INFO    ] Checking for camera pi updates...
[2026-10-28 11:38:24,256.256 INFO    ] 200
[2026-10-28 11:38:24,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:38:24,300.300 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:38:24,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:38:24,378.378 INFO    ] No camera update needed
[2026-10-28 11:38:24,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:38:24,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:38:24,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:38:24,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:38:26,439.439 INFO    ] ================================================
[2026-10-28 11:38:26,455.455 INFO    ] Launching Daemon at Wed Oct 28 11:38:26 IST 2026
[2026-10-28 11:38:26,466.466 INFO    ] ================================================
[2026-10-28 11:38:27,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:38:27
[2026-10-28 11:38:27,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:38:28,122.122 INFO    ] Initializing speech engine...
[2026-10-28 11:38:28,128.128 INFO    ] 2026-10-28 11:38:28
[2026-10-28 11:38:28,406.406 INFO    ] 2026-10-28 11:38:28
[2026-10-28 11:38:28,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:38:28,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:38:28,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:38:28,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:38:28,980.980 INFO    ] time= 28/10/2026 11:38:28
[2026-10-28 11:38:29,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:38:29,028.028 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:38:29,148.148 INFO    ] No existing commands found in stream
[2026-10-28 11:38:34,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:38:34,182.182 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-28 11:38:37,990.990 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:38:37,993.993 INFO    ] Checking for system updates...
[2026-10-28 11:38:38,048.048 INFO    ] 200
[2026-10-28 11:38:38,051.051 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 11:38:38,055.055 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-28 11:38:38,058.058 INFO    ] Checking for camera pi updates...
[2026-10-28 11:38:38,095.095 INFO    ] 200
[2026-10-28 11:38:38,098.098 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 11:38:38,102.102 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-28 11:38:38,105.105 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:38:38,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:38:38,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:38:38,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:38:40,165.165 INFO    ] ================================================
[2026-10-28 11:38:40,181.181 INFO    ] Launching Daemon at Wed Oct 28 11:38:40 IST 2026
[2026-10-28 11:38:40,193.193 INFO    ] ================================================
[2026-10-28 11:38:40,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:38:40
[2026-10-28 11:38:41,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:38:41,787.787 INFO    ] Initializing speech engine...
[2026-10-28 11:38:41,800.800 INFO    ] 2026-10-28 11:38:41
[2026-10-28 11:38:42,138.138 INFO    ] 2026-10-28 11:38:42
[2026-10-28 11:38:42,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:38:42,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:38:42,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:38:42,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:38:42,702.702 INFO    ] time= 28/10/2026 11:38:42
[2026-10-28 11:38:42,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:38:42,739.739 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:38:42,869.869 INFO    ] No existing commands found in stream
[2026-10-28 11:38:47,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:38:47,901.901 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 11:38:48,763.763 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:38:48,766.766 INFO    ] Checking for system updates...
[2026-10-28 11:38:48,805.805 INFO    ] 200
[2026-10-28 11:38:48,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:38:48,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:38:48,870.870 INFO    ] No update needed
[2026-10-28 11:38:48,873.873 INFO    ] Checking for camera pi updates...
[2026-10-28 11:38:48,907.907 INFO    ] 200
[2026-10-28 11:38:48,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:38:48,950.950 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:38:49,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:38:49,051.051 INFO    ] No camera update needed
[2026-10-28 11:38:49,054.054 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:38:49,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:38:49,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:38:49,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:38:51,112.112 INFO    ] ================================================
[2026-10-28 11:38:51,127.127 INFO    ] Launching Daemon at Wed Oct 28 11:38:51 IST 2026
[2026-10-28 11:38:51,137.137 INFO    ] ================================================
[2026-10-28 11:38:51,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:38:51
[2026-10-28 11:38:52,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:38:52,538.538 INFO    ] Initializing speech engine...
[2026-10-28 11:38:52,552.552 INFO    ] 2026-10-28 11:38:52
[2026-10-28 11:38:52,832.832 INFO    ] 2026-10-28 11:38:52
[2026-10-28 11:38:52,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:38:53,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:38:53,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:38:53,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:38:53,472.472 INFO    ] time= 28/10/2026 11:38:53
[2026-10-28 11:38:53,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:38:53,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:38:53,624.624 INFO    ] No existing commands found in stream
[2026-10-28 11:38:58,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:38:58,657.657 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 11:39:00,446.446 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:39:00,449.449 INFO    ] Checking for system updates...
[2026-10-28 11:39:00,486.486 INFO    ] 200
[2026-10-28 11:39:00,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:39:00,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:39:00,545.545 INFO    ] No update needed
[2026-10-28 11:39:00,547.547 INFO    ] Checking for camera pi updates...
[2026-10-28 11:39:00,583.583 INFO    ] 200
[2026-10-28 11:39:00,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:39:00,632.632 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:39:00,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:39:00,819.819 INFO    ] No camera update needed
[2026-10-28 11:39:00,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:39:00,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:39:00,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:39:00,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:39:02,879.879 INFO    ] ================================================
[2026-10-28 11:39:02,894.894 INFO    ] Launching Daemon at Wed Oct 28 11:39:02 IST 2026
[2026-10-28 11:39:02,905.905 INFO    ] ================================================
[2026-10-28 11:39:03,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:39:03
[2026-10-28 11:39:04,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:39:04,475.475 INFO    ] Initializing speech engine...
[2026-10-28 11:39:04,488.488 INFO    ] 2026-10-28 11:39:04
[2026-10-28 11:39:04,801.801 INFO    ] 2026-10-28 11:39:04
[2026-10-28 11:39:04,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:39:05,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:39:05,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:39:05,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:39:05,521.521 INFO    ] time= 28/10/2026 11:39:05
[2026-10-28 11:39:05,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:39:05,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:39:05,773.773 INFO    ] No existing commands found in stream
[2026-10-28 11:39:10,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:39:10,792.792 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-28 11:39:12,026.026 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:39:12,029.029 INFO    ] Checking for system updates...
[2026-10-28 11:39:12,066.066 INFO    ] 200
[2026-10-28 11:39:12,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:39:12,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:39:12,125.125 INFO    ] No update needed
[2026-10-28 11:39:12,127.127 INFO    ] Checking for camera pi updates...
[2026-10-28 11:39:12,165.165 INFO    ] 200
[2026-10-28 11:39:12,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:39:12,213.213 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:39:12,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:39:12,297.297 INFO    ] No camera update needed
[2026-10-28 11:39:12,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:39:12,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:39:12,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:39:12,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:39:14,352.352 INFO    ] ================================================
[2026-10-28 11:39:14,371.371 INFO    ] Launching Daemon at Wed Oct 28 11:39:14 IST 2026
[2026-10-28 11:39:14,382.382 INFO    ] ================================================
[2026-10-28 11:39:14,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:39:14
[2026-10-28 11:39:15,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:39:15,790.790 INFO    ] Initializing speech engine...
[2026-10-28 11:39:15,815.815 INFO    ] 2026-10-28 11:39:15
[2026-10-28 11:39:16,087.087 INFO    ] 2026-10-28 11:39:16
[2026-10-28 11:39:16,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:39:16,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:39:16,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:39:16,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:39:16,717.717 INFO    ] time= 28/10/2026 11:39:16
[2026-10-28 11:39:16,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:39:16,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:39:16,874.874 INFO    ] No existing commands found in stream
[2026-10-28 11:39:21,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:39:21,902.902 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-28 11:39:28,625.625 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:39:28,627.627 INFO    ] Checking for system updates...
[2026-10-28 11:39:28,663.663 INFO    ] 200
[2026-10-28 11:39:28,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:39:28,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:39:28,720.720 INFO    ] No update needed
[2026-10-28 11:39:28,722.722 INFO    ] Checking for camera pi updates...
[2026-10-28 11:39:28,759.759 INFO    ] 200
[2026-10-28 11:39:28,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:39:28,803.803 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:39:28,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:39:28,889.889 INFO    ] No camera update needed
[2026-10-28 11:39:28,891.891 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:39:28,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:39:28,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:39:28,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:39:30,945.945 INFO    ] ================================================
[2026-10-28 11:39:30,960.960 INFO    ] Launching Daemon at Wed Oct 28 11:39:30 IST 2026
[2026-10-28 11:39:30,970.970 INFO    ] ================================================
[2026-10-28 11:39:31,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:39:31
[2026-10-28 11:39:32,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:39:32,656.656 INFO    ] Initializing speech engine...
[2026-10-28 11:39:32,665.665 INFO    ] 2026-10-28 11:39:32
[2026-10-28 11:39:32,910.910 INFO    ] 2026-10-28 11:39:32
[2026-10-28 11:39:32,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:39:33,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:39:33,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:39:33,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:39:33,485.485 INFO    ] time= 28/10/2026 11:39:33
[2026-10-28 11:39:33,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:39:33,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:39:33,651.651 INFO    ] No existing commands found in stream
[2026-10-28 11:39:38,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:39:38,684.684 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-28 11:39:40,941.941 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:39:40,944.944 INFO    ] Checking for system updates...
[2026-10-28 11:39:40,980.980 INFO    ] 200
[2026-10-28 11:39:40,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:39:41,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:39:41,039.039 INFO    ] No update needed
[2026-10-28 11:39:41,041.041 INFO    ] Checking for camera pi updates...
[2026-10-28 11:39:41,079.079 INFO    ] 200
[2026-10-28 11:39:41,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:39:41,127.127 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:39:41,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:39:41,213.213 INFO    ] No camera update needed
[2026-10-28 11:39:41,216.216 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:39:41,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:39:41,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:39:41,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:39:43,267.267 INFO    ] ================================================
[2026-10-28 11:39:43,282.282 INFO    ] Launching Daemon at Wed Oct 28 11:39:43 IST 2026
[2026-10-28 11:39:43,292.292 INFO    ] ================================================
[2026-10-28 11:39:43,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:39:43
[2026-10-28 11:39:44,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:39:44,883.883 INFO    ] Initializing speech engine...
[2026-10-28 11:39:44,892.892 INFO    ] 2026-10-28 11:39:44
[2026-10-28 11:39:45,139.139 INFO    ] 2026-10-28 11:39:45
[2026-10-28 11:39:45,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:39:45,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:39:45,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:39:45,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:39:45,699.699 INFO    ] time= 28/10/2026 11:39:45
[2026-10-28 11:39:45,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:39:45,722.722 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:39:45,840.840 INFO    ] No existing commands found in stream
[2026-10-28 11:39:50,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:39:50,864.864 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-28 11:39:55,224.224 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:39:55,227.227 INFO    ] Checking for system updates...
[2026-10-28 11:39:55,264.264 INFO    ] 200
[2026-10-28 11:39:55,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:39:55,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:39:55,324.324 INFO    ] No update needed
[2026-10-28 11:39:55,327.327 INFO    ] Checking for camera pi updates...
[2026-10-28 11:39:55,377.377 INFO    ] 200
[2026-10-28 11:39:55,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:39:55,425.425 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:39:55,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:39:55,511.511 INFO    ] No camera update needed
[2026-10-28 11:39:55,513.513 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:39:55,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:39:55,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:39:55,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:39:57,566.566 INFO    ] ================================================
[2026-10-28 11:39:57,581.581 INFO    ] Launching Daemon at Wed Oct 28 11:39:57 IST 2026
[2026-10-28 11:39:57,591.591 INFO    ] ================================================
[2026-10-28 11:39:58,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:39:58
[2026-10-28 11:39:58,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:39:58,996.996 INFO    ] Initializing speech engine...
[2026-10-28 11:39:59,010.010 INFO    ] 2026-10-28 11:39:58
[2026-10-28 11:39:59,276.276 INFO    ] 2026-10-28 11:39:59
[2026-10-28 11:39:59,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:39:59,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:39:59,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:39:59,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:39:59,848.848 INFO    ] time= 28/10/2026 11:39:59
[2026-10-28 11:39:59,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:39:59,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:40:00,006.006 INFO    ] No existing commands found in stream
[2026-10-28 11:40:05,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:40:05,020.020 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-28 11:40:09,269.269 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:40:09,271.271 INFO    ] Checking for system updates...
[2026-10-28 11:40:09,313.313 INFO    ] 200
[2026-10-28 11:40:09,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:40:09,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:40:09,370.370 INFO    ] No update needed
[2026-10-28 11:40:09,372.372 INFO    ] Checking for camera pi updates...
[2026-10-28 11:40:09,406.406 INFO    ] 200
[2026-10-28 11:40:09,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:40:09,449.449 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:40:09,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:40:09,550.550 INFO    ] No camera update needed
[2026-10-28 11:40:09,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:40:09,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:40:09,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:40:09,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:40:11,608.608 INFO    ] ================================================
[2026-10-28 11:40:11,623.623 INFO    ] Launching Daemon at Wed Oct 28 11:40:11 IST 2026
[2026-10-28 11:40:11,634.634 INFO    ] ================================================
[2026-10-28 11:40:12,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:40:12
[2026-10-28 11:40:12,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:40:13,096.096 INFO    ] Initializing speech engine...
[2026-10-28 11:40:13,102.102 INFO    ] 2026-10-28 11:40:13
[2026-10-28 11:40:13,371.371 INFO    ] 2026-10-28 11:40:13
[2026-10-28 11:40:13,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:40:13,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:40:13,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:40:13,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:40:13,995.995 INFO    ] time= 28/10/2026 11:40:13
[2026-10-28 11:40:14,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:40:14,022.022 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:40:14,147.147 INFO    ] No existing commands found in stream
[2026-10-28 11:40:19,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:40:19,176.176 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 11:40:23,545.545 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:40:23,548.548 INFO    ] Checking for system updates...
[2026-10-28 11:40:23,588.588 INFO    ] 200
[2026-10-28 11:40:23,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:40:23,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:40:23,645.645 INFO    ] No update needed
[2026-10-28 11:40:23,647.647 INFO    ] Checking for camera pi updates...
[2026-10-28 11:40:23,681.681 INFO    ] 200
[2026-10-28 11:40:23,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:40:23,723.723 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:40:23,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:40:23,809.809 INFO    ] No camera update needed
[2026-10-28 11:40:23,811.811 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:40:23,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:40:23,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:40:23,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:40:25,864.864 INFO    ] ================================================
[2026-10-28 11:40:25,879.879 INFO    ] Launching Daemon at Wed Oct 28 11:40:25 IST 2026
[2026-10-28 11:40:25,890.890 INFO    ] ================================================
[2026-10-28 11:40:26,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:40:26
[2026-10-28 11:40:27,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:40:27,307.307 INFO    ] Initializing speech engine...
[2026-10-28 11:40:27,327.327 INFO    ] 2026-10-28 11:40:27
[2026-10-28 11:40:27,581.581 INFO    ] 2026-10-28 11:40:27
[2026-10-28 11:40:27,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:40:27,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:40:27,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:40:28,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:40:28,151.151 INFO    ] time= 28/10/2026 11:40:28
[2026-10-28 11:40:28,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:40:28,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:40:28,310.310 INFO    ] No existing commands found in stream
[2026-10-28 11:40:33,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:40:33,332.332 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-28 11:40:34,102.102 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:40:34,104.104 INFO    ] Checking for system updates...
[2026-10-28 11:40:34,144.144 INFO    ] 200
[2026-10-28 11:40:34,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:40:34,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:40:34,208.208 INFO    ] No update needed
[2026-10-28 11:40:34,211.211 INFO    ] Checking for camera pi updates...
[2026-10-28 11:40:34,244.244 INFO    ] 200
[2026-10-28 11:40:34,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:40:34,291.291 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:40:34,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:40:34,395.395 INFO    ] No camera update needed
[2026-10-28 11:40:34,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:40:34,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:40:34,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:40:34,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:40:36,449.449 INFO    ] ================================================
[2026-10-28 11:40:36,464.464 INFO    ] Launching Daemon at Wed Oct 28 11:40:36 IST 2026
[2026-10-28 11:40:36,474.474 INFO    ] ================================================
[2026-10-28 11:40:37,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:40:37
[2026-10-28 11:40:37,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:40:37,944.944 INFO    ] Initializing speech engine...
[2026-10-28 11:40:37,962.962 INFO    ] 2026-10-28 11:40:37
[2026-10-28 11:40:38,215.215 INFO    ] 2026-10-28 11:40:38
[2026-10-28 11:40:38,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:40:38,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:40:38,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:40:38,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:40:38,799.799 INFO    ] time= 28/10/2026 11:40:38
[2026-10-28 11:40:38,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:40:38,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:40:39,002.002 INFO    ] No existing commands found in stream
[2026-10-28 11:40:44,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:40:44,029.029 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 11:40:45,238.238 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:40:45,241.241 INFO    ] Checking for system updates...
[2026-10-28 11:40:45,281.281 INFO    ] 200
[2026-10-28 11:40:45,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:40:45,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:40:45,345.345 INFO    ] No update needed
[2026-10-28 11:40:45,347.347 INFO    ] Checking for camera pi updates...
[2026-10-28 11:40:45,384.384 INFO    ] 200
[2026-10-28 11:40:45,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:40:45,427.427 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:40:45,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:40:45,514.514 INFO    ] No camera update needed
[2026-10-28 11:40:45,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:40:45,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:40:45,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:40:45,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:40:47,571.571 INFO    ] ================================================
[2026-10-28 11:40:47,586.586 INFO    ] Launching Daemon at Wed Oct 28 11:40:47 IST 2026
[2026-10-28 11:40:47,597.597 INFO    ] ================================================
[2026-10-28 11:40:48,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:40:48
[2026-10-28 11:40:48,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:40:49,020.020 INFO    ] Initializing speech engine...
[2026-10-28 11:40:49,027.027 INFO    ] 2026-10-28 11:40:49
[2026-10-28 11:40:49,283.283 INFO    ] 2026-10-28 11:40:49
[2026-10-28 11:40:49,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:40:49,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:40:49,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:40:49,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:40:49,827.827 INFO    ] time= 28/10/2026 11:40:49
[2026-10-28 11:40:49,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:40:49,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:40:49,993.993 INFO    ] No existing commands found in stream
[2026-10-28 11:40:55,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:40:55,026.026 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-28 11:40:57,984.984 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:40:57,987.987 INFO    ] Checking for system updates...
[2026-10-28 11:40:58,030.030 INFO    ] 200
[2026-10-28 11:40:58,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:40:58,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:40:58,097.097 INFO    ] No update needed
[2026-10-28 11:40:58,100.100 INFO    ] Checking for camera pi updates...
[2026-10-28 11:40:58,134.134 INFO    ] 200
[2026-10-28 11:40:58,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:40:58,177.177 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:40:58,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:40:58,229.229 INFO    ] No camera update needed
[2026-10-28 11:40:58,232.232 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:40:58,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:40:58,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:40:58,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:41:00,287.287 INFO    ] ================================================
[2026-10-28 11:41:00,302.302 INFO    ] Launching Daemon at Wed Oct 28 11:41:00 IST 2026
[2026-10-28 11:41:00,312.312 INFO    ] ================================================
[2026-10-28 11:41:00,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:41:00
[2026-10-28 11:41:01,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:41:01,749.749 INFO    ] Initializing speech engine...
[2026-10-28 11:41:01,758.758 INFO    ] 2026-10-28 11:41:01
[2026-10-28 11:41:02,012.012 INFO    ] 2026-10-28 11:41:02
[2026-10-28 11:41:02,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:41:02,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:41:02,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:41:02,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:41:02,602.602 INFO    ] time= 28/10/2026 11:41:02
[2026-10-28 11:41:02,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:41:02,716.716 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:41:02,859.859 INFO    ] No existing commands found in stream
[2026-10-28 11:41:07,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:41:07,872.872 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-28 11:41:10,801.801 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:41:10,804.804 INFO    ] Checking for system updates...
[2026-10-28 11:41:10,845.845 INFO    ] 200
[2026-10-28 11:41:10,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:41:10,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:41:10,902.902 INFO    ] No update needed
[2026-10-28 11:41:10,905.905 INFO    ] Checking for camera pi updates...
[2026-10-28 11:41:10,944.944 INFO    ] 200
[2026-10-28 11:41:10,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:41:10,993.993 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:41:11,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:41:11,173.173 INFO    ] No camera update needed
[2026-10-28 11:41:11,176.176 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:41:11,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:41:11,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:41:11,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:41:13,233.233 INFO    ] ================================================
[2026-10-28 11:41:13,249.249 INFO    ] Launching Daemon at Wed Oct 28 11:41:13 IST 2026
[2026-10-28 11:41:13,259.259 INFO    ] ================================================
[2026-10-28 11:41:13,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:41:13
[2026-10-28 11:41:14,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:41:14,681.681 INFO    ] Initializing speech engine...
[2026-10-28 11:41:14,690.690 INFO    ] 2026-10-28 11:41:14
[2026-10-28 11:41:14,944.944 INFO    ] 2026-10-28 11:41:14
[2026-10-28 11:41:14,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:41:15,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:41:15,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:41:15,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:41:15,515.515 INFO    ] time= 28/10/2026 11:41:15
[2026-10-28 11:41:15,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:41:15,539.539 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:41:15,673.673 INFO    ] No existing commands found in stream
[2026-10-28 11:41:20,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:41:20,688.688 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-28 11:41:23,868.868 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:41:23,872.872 INFO    ] Checking for system updates...
[2026-10-28 11:41:23,918.918 INFO    ] 200
[2026-10-28 11:41:23,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:41:23,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:41:23,984.984 INFO    ] No update needed
[2026-10-28 11:41:23,986.986 INFO    ] Checking for camera pi updates...
[2026-10-28 11:41:24,020.020 INFO    ] 200
[2026-10-28 11:41:24,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:41:24,064.064 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:41:24,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:41:24,158.158 INFO    ] No camera update needed
[2026-10-28 11:41:24,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:41:24,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:41:24,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:41:24,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:41:26,214.214 INFO    ] ================================================
[2026-10-28 11:41:26,229.229 INFO    ] Launching Daemon at Wed Oct 28 11:41:26 IST 2026
[2026-10-28 11:41:26,240.240 INFO    ] ================================================
[2026-10-28 11:41:26,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:41:26
[2026-10-28 11:41:27,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:41:27,656.656 INFO    ] Initializing speech engine...
[2026-10-28 11:41:27,665.665 INFO    ] 2026-10-28 11:41:27
[2026-10-28 11:41:27,923.923 INFO    ] 2026-10-28 11:41:27
[2026-10-28 11:41:27,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:41:28,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:41:28,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:41:28,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:41:28,556.556 INFO    ] time= 28/10/2026 11:41:28
[2026-10-28 11:41:28,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:41:28,638.638 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:41:28,803.803 INFO    ] No existing commands found in stream
[2026-10-28 11:41:33,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:41:33,836.836 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 11:41:38,107.107 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:41:38,109.109 INFO    ] Checking for system updates...
[2026-10-28 11:41:38,146.146 INFO    ] 200
[2026-10-28 11:41:38,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:41:38,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:41:38,203.203 INFO    ] No update needed
[2026-10-28 11:41:38,206.206 INFO    ] Checking for camera pi updates...
[2026-10-28 11:41:38,239.239 INFO    ] 200
[2026-10-28 11:41:38,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:41:38,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:41:38,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:41:38,351.351 INFO    ] No camera update needed
[2026-10-28 11:41:38,353.353 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:41:38,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:41:38,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:41:38,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:41:40,406.406 INFO    ] ================================================
[2026-10-28 11:41:40,422.422 INFO    ] Launching Daemon at Wed Oct 28 11:41:40 IST 2026
[2026-10-28 11:41:40,433.433 INFO    ] ================================================
[2026-10-28 11:41:41,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:41:41
[2026-10-28 11:41:41,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:41:41,909.909 INFO    ] Initializing speech engine...
[2026-10-28 11:41:41,929.929 INFO    ] 2026-10-28 11:41:41
[2026-10-28 11:41:42,178.178 INFO    ] 2026-10-28 11:41:42
[2026-10-28 11:41:42,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:41:42,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:41:42,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:41:42,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:41:42,748.748 INFO    ] time= 28/10/2026 11:41:42
[2026-10-28 11:41:42,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:41:42,789.789 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:41:42,965.965 INFO    ] No existing commands found in stream
[2026-10-28 11:41:47,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:41:47,993.993 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-28 11:41:50,553.553 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:41:50,555.555 INFO    ] Checking for system updates...
[2026-10-28 11:41:50,591.591 INFO    ] 200
[2026-10-28 11:41:50,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:41:50,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:41:50,656.656 INFO    ] No update needed
[2026-10-28 11:41:50,658.658 INFO    ] Checking for camera pi updates...
[2026-10-28 11:41:50,696.696 INFO    ] 200
[2026-10-28 11:41:50,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:41:50,745.745 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:41:50,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:41:50,832.832 INFO    ] No camera update needed
[2026-10-28 11:41:50,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:41:50,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:41:50,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:41:50,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:41:52,888.888 INFO    ] ================================================
[2026-10-28 11:41:52,903.903 INFO    ] Launching Daemon at Wed Oct 28 11:41:52 IST 2026
[2026-10-28 11:41:52,913.913 INFO    ] ================================================
[2026-10-28 11:41:53,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:41:53
[2026-10-28 11:41:54,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:41:54,542.542 INFO    ] Initializing speech engine...
[2026-10-28 11:41:54,556.556 INFO    ] 2026-10-28 11:41:54
[2026-10-28 11:41:54,847.847 INFO    ] 2026-10-28 11:41:54
[2026-10-28 11:41:54,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:41:55,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:41:55,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:41:55,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:41:55,446.446 INFO    ] time= 28/10/2026 11:41:55
[2026-10-28 11:41:55,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:41:55,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:41:55,660.660 INFO    ] No existing commands found in stream
[2026-10-28 11:42:00,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:42:00,694.694 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-28 11:42:03,382.382 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:42:03,385.385 INFO    ] Checking for system updates...
[2026-10-28 11:42:03,425.425 INFO    ] 200
[2026-10-28 11:42:03,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:42:03,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:42:03,482.482 INFO    ] No update needed
[2026-10-28 11:42:03,485.485 INFO    ] Checking for camera pi updates...
[2026-10-28 11:42:03,522.522 INFO    ] 200
[2026-10-28 11:42:03,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:42:03,564.564 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:42:03,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:42:03,650.650 INFO    ] No camera update needed
[2026-10-28 11:42:03,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:42:03,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:42:03,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:42:03,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:42:05,706.706 INFO    ] ================================================
[2026-10-28 11:42:05,721.721 INFO    ] Launching Daemon at Wed Oct 28 11:42:05 IST 2026
[2026-10-28 11:42:05,733.733 INFO    ] ================================================
[2026-10-28 11:42:06,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:42:06
[2026-10-28 11:42:06,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:42:07,141.141 INFO    ] Initializing speech engine...
[2026-10-28 11:42:07,147.147 INFO    ] 2026-10-28 11:42:07
[2026-10-28 11:42:07,443.443 INFO    ] 2026-10-28 11:42:07
[2026-10-28 11:42:07,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:42:07,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:42:07,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:42:08,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:42:08,072.072 INFO    ] time= 28/10/2026 11:42:08
[2026-10-28 11:42:08,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:42:08,096.096 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:42:08,274.274 INFO    ] No existing commands found in stream
[2026-10-28 11:42:13,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:42:13,309.309 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 11:42:14,684.684 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:42:14,687.687 INFO    ] Checking for system updates...
[2026-10-28 11:42:14,723.723 INFO    ] 200
[2026-10-28 11:42:14,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:42:14,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:42:14,787.787 INFO    ] No update needed
[2026-10-28 11:42:14,789.789 INFO    ] Checking for camera pi updates...
[2026-10-28 11:42:14,831.831 INFO    ] 200
[2026-10-28 11:42:14,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:42:14,878.878 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:42:14,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:42:14,979.979 INFO    ] No camera update needed
[2026-10-28 11:42:14,981.981 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:42:14,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:42:14,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:42:14,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:42:17,035.035 INFO    ] ================================================
[2026-10-28 11:42:17,051.051 INFO    ] Launching Daemon at Wed Oct 28 11:42:17 IST 2026
[2026-10-28 11:42:17,062.062 INFO    ] ================================================
[2026-10-28 11:42:17,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:42:17
[2026-10-28 11:42:18,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:42:18,487.487 INFO    ] Initializing speech engine...
[2026-10-28 11:42:18,509.509 INFO    ] 2026-10-28 11:42:18
[2026-10-28 11:42:18,761.761 INFO    ] 2026-10-28 11:42:18
[2026-10-28 11:42:18,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:42:19,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:42:19,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:42:19,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:42:19,324.324 INFO    ] time= 28/10/2026 11:42:19
[2026-10-28 11:42:19,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:42:19,347.347 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:42:19,502.502 INFO    ] No existing commands found in stream
[2026-10-28 11:42:24,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:42:24,539.539 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-28 11:42:25,632.632 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:42:25,634.634 INFO    ] Checking for system updates...
[2026-10-28 11:42:25,674.674 INFO    ] 200
[2026-10-28 11:42:25,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:42:25,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:42:25,739.739 INFO    ] No update needed
[2026-10-28 11:42:25,741.741 INFO    ] Checking for camera pi updates...
[2026-10-28 11:42:25,779.779 INFO    ] 200
[2026-10-28 11:42:25,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:42:25,827.827 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:42:25,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:42:25,910.910 INFO    ] No camera update needed
[2026-10-28 11:42:25,913.913 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:42:25,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:42:25,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:42:25,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:42:27,967.967 INFO    ] ================================================
[2026-10-28 11:42:27,983.983 INFO    ] Launching Daemon at Wed Oct 28 11:42:27 IST 2026
[2026-10-28 11:42:27,994.994 INFO    ] ================================================
[2026-10-28 11:42:28,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:42:28
[2026-10-28 11:42:29,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:42:29,424.424 INFO    ] Initializing speech engine...
[2026-10-28 11:42:29,433.433 INFO    ] 2026-10-28 11:42:29
[2026-10-28 11:42:29,678.678 INFO    ] 2026-10-28 11:42:29
[2026-10-28 11:42:29,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:42:29,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:42:29,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:42:30,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:42:30,230.230 INFO    ] time= 28/10/2026 11:42:30
[2026-10-28 11:42:30,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:42:30,253.253 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:42:30,383.383 INFO    ] No existing commands found in stream
[2026-10-28 11:42:35,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:42:35,398.398 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-28 11:42:37,544.544 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:42:37,547.547 INFO    ] Checking for system updates...
[2026-10-28 11:42:37,583.583 INFO    ] 200
[2026-10-28 11:42:37,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:42:37,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:42:37,651.651 INFO    ] No update needed
[2026-10-28 11:42:37,654.654 INFO    ] Checking for camera pi updates...
[2026-10-28 11:42:37,688.688 INFO    ] 200
[2026-10-28 11:42:37,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:42:37,736.736 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:42:37,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:42:37,822.822 INFO    ] No camera update needed
[2026-10-28 11:42:37,824.824 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:42:37,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:42:37,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:42:37,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:42:39,878.878 INFO    ] ================================================
[2026-10-28 11:42:39,894.894 INFO    ] Launching Daemon at Wed Oct 28 11:42:39 IST 2026
[2026-10-28 11:42:39,906.906 INFO    ] ================================================
[2026-10-28 11:42:40,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:42:40
[2026-10-28 11:42:41,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:42:41,326.326 INFO    ] Initializing speech engine...
[2026-10-28 11:42:41,333.333 INFO    ] 2026-10-28 11:42:41
[2026-10-28 11:42:41,579.579 INFO    ] 2026-10-28 11:42:41
[2026-10-28 11:42:41,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:42:41,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:42:41,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:42:42,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:42:42,143.143 INFO    ] time= 28/10/2026 11:42:42
[2026-10-28 11:42:42,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:42:42,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:42:42,359.359 INFO    ] No existing commands found in stream
[2026-10-28 11:42:47,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:42:47,387.387 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-28 11:42:48,305.305 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:42:48,307.307 INFO    ] Checking for system updates...
[2026-10-28 11:42:48,344.344 INFO    ] 200
[2026-10-28 11:42:48,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:42:48,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:42:48,411.411 INFO    ] No update needed
[2026-10-28 11:42:48,415.415 INFO    ] Checking for camera pi updates...
[2026-10-28 11:42:48,454.454 INFO    ] 200
[2026-10-28 11:42:48,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:42:48,508.508 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:42:48,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:42:48,633.633 INFO    ] No camera update needed
[2026-10-28 11:42:48,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:42:48,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:42:48,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:42:48,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:42:50,692.692 INFO    ] ================================================
[2026-10-28 11:42:50,707.707 INFO    ] Launching Daemon at Wed Oct 28 11:42:50 IST 2026
[2026-10-28 11:42:50,718.718 INFO    ] ================================================
[2026-10-28 11:42:51,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:42:51
[2026-10-28 11:42:51,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:42:52,204.204 INFO    ] Initializing speech engine...
[2026-10-28 11:42:52,213.213 INFO    ] 2026-10-28 11:42:52
[2026-10-28 11:42:52,472.472 INFO    ] 2026-10-28 11:42:52
[2026-10-28 11:42:52,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:42:52,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:42:52,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:42:53,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:42:53,028.028 INFO    ] time= 28/10/2026 11:42:53
[2026-10-28 11:42:53,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:42:53,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:42:53,188.188 INFO    ] No existing commands found in stream
[2026-10-28 11:42:58,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:42:58,221.221 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-28 11:43:00,089.089 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:43:00,092.092 INFO    ] Checking for system updates...
[2026-10-28 11:43:00,133.133 INFO    ] 200
[2026-10-28 11:43:00,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:43:00,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:43:00,198.198 INFO    ] No update needed
[2026-10-28 11:43:00,201.201 INFO    ] Checking for camera pi updates...
[2026-10-28 11:43:00,238.238 INFO    ] 200
[2026-10-28 11:43:00,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:43:00,287.287 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:43:00,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:43:00,371.371 INFO    ] No camera update needed
[2026-10-28 11:43:00,374.374 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:43:00,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:43:00,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:43:00,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:43:02,442.442 INFO    ] ================================================
[2026-10-28 11:43:02,463.463 INFO    ] Launching Daemon at Wed Oct 28 11:43:02 IST 2026
[2026-10-28 11:43:02,478.478 INFO    ] ================================================
[2026-10-28 11:43:03,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:43:03
[2026-10-28 11:43:03,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:43:04,030.030 INFO    ] Initializing speech engine...
[2026-10-28 11:43:04,050.050 INFO    ] 2026-10-28 11:43:04
[2026-10-28 11:43:04,321.321 INFO    ] 2026-10-28 11:43:04
[2026-10-28 11:43:04,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:43:04,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:43:04,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:43:04,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:43:04,965.965 INFO    ] time= 28/10/2026 11:43:04
[2026-10-28 11:43:04,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:43:04,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:43:05,127.127 INFO    ] No existing commands found in stream
[2026-10-28 11:43:10,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:43:10,155.155 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-28 11:43:10,964.964 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:43:10,966.966 INFO    ] Checking for system updates...
[2026-10-28 11:43:11,007.007 INFO    ] 200
[2026-10-28 11:43:11,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:43:11,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:43:11,072.072 INFO    ] No update needed
[2026-10-28 11:43:11,075.075 INFO    ] Checking for camera pi updates...
[2026-10-28 11:43:11,113.113 INFO    ] 200
[2026-10-28 11:43:11,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:43:11,162.162 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:43:11,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:43:11,272.272 INFO    ] No camera update needed
[2026-10-28 11:43:11,275.275 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:43:11,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:43:11,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:43:11,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:43:13,331.331 INFO    ] ================================================
[2026-10-28 11:43:13,347.347 INFO    ] Launching Daemon at Wed Oct 28 11:43:13 IST 2026
[2026-10-28 11:43:13,358.358 INFO    ] ================================================
[2026-10-28 11:43:14,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:43:14
[2026-10-28 11:43:14,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:43:15,044.044 INFO    ] Initializing speech engine...
[2026-10-28 11:43:15,058.058 INFO    ] 2026-10-28 11:43:15
[2026-10-28 11:43:15,370.370 INFO    ] 2026-10-28 11:43:15
[2026-10-28 11:43:15,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:43:15,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:43:15,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:43:16,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:43:16,094.094 INFO    ] time= 28/10/2026 11:43:16
[2026-10-28 11:43:16,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:43:16,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:43:16,370.370 INFO    ] No existing commands found in stream
[2026-10-28 11:43:21,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:43:21,415.415 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 11:43:24,113.113 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:43:24,117.117 INFO    ] Checking for system updates...
[2026-10-28 11:43:24,155.155 INFO    ] 200
[2026-10-28 11:43:24,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:43:24,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:43:24,218.218 INFO    ] No update needed
[2026-10-28 11:43:24,220.220 INFO    ] Checking for camera pi updates...
[2026-10-28 11:43:24,260.260 INFO    ] 200
[2026-10-28 11:43:24,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:43:24,311.311 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:43:24,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:43:24,497.497 INFO    ] No camera update needed
[2026-10-28 11:43:24,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:43:24,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:43:24,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:43:24,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:43:26,558.558 INFO    ] ================================================
[2026-10-28 11:43:26,574.574 INFO    ] Launching Daemon at Wed Oct 28 11:43:26 IST 2026
[2026-10-28 11:43:26,586.586 INFO    ] ================================================
[2026-10-28 11:43:27,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:43:27
[2026-10-28 11:43:27,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:43:28,006.006 INFO    ] Initializing speech engine...
[2026-10-28 11:43:28,015.015 INFO    ] 2026-10-28 11:43:28
[2026-10-28 11:43:28,268.268 INFO    ] 2026-10-28 11:43:28
[2026-10-28 11:43:28,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:43:28,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:43:28,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:43:28,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:43:28,831.831 INFO    ] time= 28/10/2026 11:43:28
[2026-10-28 11:43:28,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:43:28,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:43:29,011.011 INFO    ] No existing commands found in stream
[2026-10-28 11:43:34,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:43:34,044.044 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-28 11:43:35,800.800 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:43:35,803.803 INFO    ] Checking for system updates...
[2026-10-28 11:43:35,843.843 INFO    ] 200
[2026-10-28 11:43:35,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:43:35,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:43:35,908.908 INFO    ] No update needed
[2026-10-28 11:43:35,911.911 INFO    ] Checking for camera pi updates...
[2026-10-28 11:43:35,948.948 INFO    ] 200
[2026-10-28 11:43:35,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:43:35,997.997 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:43:36,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:43:36,062.062 INFO    ] No camera update needed
[2026-10-28 11:43:36,064.064 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:43:36,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:43:36,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:43:36,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:43:38,119.119 INFO    ] ================================================
[2026-10-28 11:43:38,135.135 INFO    ] Launching Daemon at Wed Oct 28 11:43:38 IST 2026
[2026-10-28 11:43:38,147.147 INFO    ] ================================================
[2026-10-28 11:43:38,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:43:38
[2026-10-28 11:43:39,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:43:39,805.805 INFO    ] Initializing speech engine...
[2026-10-28 11:43:39,814.814 INFO    ] 2026-10-28 11:43:39
[2026-10-28 11:43:40,087.087 INFO    ] 2026-10-28 11:43:40
[2026-10-28 11:43:40,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:43:40,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:43:40,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:43:40,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:43:40,814.814 INFO    ] time= 28/10/2026 11:43:40
[2026-10-28 11:43:40,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:43:40,913.913 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:43:41,070.070 INFO    ] No existing commands found in stream
[2026-10-28 11:43:46,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:43:46,106.106 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 11:43:47,691.691 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:43:47,694.694 INFO    ] Checking for system updates...
[2026-10-28 11:43:47,731.731 INFO    ] 200
[2026-10-28 11:43:47,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:43:47,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:43:47,799.799 INFO    ] No update needed
[2026-10-28 11:43:47,804.804 INFO    ] Checking for camera pi updates...
[2026-10-28 11:43:47,842.842 INFO    ] 200
[2026-10-28 11:43:47,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:43:47,891.891 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:43:47,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:43:47,982.982 INFO    ] No camera update needed
[2026-10-28 11:43:47,984.984 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:43:47,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:43:47,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:43:47,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:43:50,036.036 INFO    ] ================================================
[2026-10-28 11:43:50,052.052 INFO    ] Launching Daemon at Wed Oct 28 11:43:50 IST 2026
[2026-10-28 11:43:50,062.062 INFO    ] ================================================
[2026-10-28 11:43:50,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:43:50
[2026-10-28 11:43:51,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:43:51,744.744 INFO    ] Initializing speech engine...
[2026-10-28 11:43:51,759.759 INFO    ] 2026-10-28 11:43:51
[2026-10-28 11:43:52,054.054 INFO    ] 2026-10-28 11:43:52
[2026-10-28 11:43:52,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:43:52,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:43:52,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:43:52,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:43:52,777.777 INFO    ] time= 28/10/2026 11:43:52
[2026-10-28 11:43:52,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:43:52,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:43:53,052.052 INFO    ] No existing commands found in stream
[2026-10-28 11:43:58,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:43:58,072.072 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-28 11:44:02,167.167 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:44:02,171.171 INFO    ] Checking for system updates...
[2026-10-28 11:44:02,219.219 INFO    ] 200
[2026-10-28 11:44:02,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:44:02,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:44:02,290.290 INFO    ] No update needed
[2026-10-28 11:44:02,293.293 INFO    ] Checking for camera pi updates...
[2026-10-28 11:44:02,336.336 INFO    ] 200
[2026-10-28 11:44:02,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:44:02,385.385 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:44:02,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:44:02,531.531 INFO    ] No camera update needed
[2026-10-28 11:44:02,534.534 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:44:02,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:44:02,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:44:02,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:44:04,593.593 INFO    ] ================================================
[2026-10-28 11:44:04,608.608 INFO    ] Launching Daemon at Wed Oct 28 11:44:04 IST 2026
[2026-10-28 11:44:04,619.619 INFO    ] ================================================
[2026-10-28 11:44:05,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:44:05
[2026-10-28 11:44:05,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:44:06,062.062 INFO    ] Initializing speech engine...
[2026-10-28 11:44:06,069.069 INFO    ] 2026-10-28 11:44:06
[2026-10-28 11:44:06,369.369 INFO    ] 2026-10-28 11:44:06
[2026-10-28 11:44:06,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:44:06,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:44:06,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:44:06,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:44:06,968.968 INFO    ] time= 28/10/2026 11:44:06
[2026-10-28 11:44:06,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:44:06,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:44:07,162.162 INFO    ] No existing commands found in stream
[2026-10-28 11:44:12,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:44:12,197.197 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-28 11:44:13,346.346 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:44:13,349.349 INFO    ] Checking for system updates...
[2026-10-28 11:44:13,390.390 INFO    ] 200
[2026-10-28 11:44:13,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:44:13,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:44:13,456.456 INFO    ] No update needed
[2026-10-28 11:44:13,459.459 INFO    ] Checking for camera pi updates...
[2026-10-28 11:44:13,499.499 INFO    ] 200
[2026-10-28 11:44:13,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:44:13,543.543 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:44:13,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:44:13,622.622 INFO    ] No camera update needed
[2026-10-28 11:44:13,625.625 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:44:13,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:44:13,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:44:13,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:44:15,681.681 INFO    ] ================================================
[2026-10-28 11:44:15,696.696 INFO    ] Launching Daemon at Wed Oct 28 11:44:15 IST 2026
[2026-10-28 11:44:15,706.706 INFO    ] ================================================
[2026-10-28 11:44:16,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:44:16
[2026-10-28 11:44:16,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:44:17,132.132 INFO    ] Initializing speech engine...
[2026-10-28 11:44:17,141.141 INFO    ] 2026-10-28 11:44:17
[2026-10-28 11:44:17,391.391 INFO    ] 2026-10-28 11:44:17
[2026-10-28 11:44:17,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:44:17,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:44:17,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:44:17,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:44:17,958.958 INFO    ] time= 28/10/2026 11:44:17
[2026-10-28 11:44:17,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:44:18,003.003 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:44:18,133.133 INFO    ] No existing commands found in stream
[2026-10-28 11:44:23,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:44:23,161.161 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-28 11:44:24,473.473 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:44:24,476.476 INFO    ] Checking for system updates...
[2026-10-28 11:44:24,516.516 INFO    ] 200
[2026-10-28 11:44:24,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:44:24,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:44:24,581.581 INFO    ] No update needed
[2026-10-28 11:44:24,584.584 INFO    ] Checking for camera pi updates...
[2026-10-28 11:44:24,622.622 INFO    ] 200
[2026-10-28 11:44:24,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:44:24,671.671 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:44:24,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:44:24,768.768 INFO    ] No camera update needed
[2026-10-28 11:44:24,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:44:24,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:44:24,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:44:24,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:44:26,826.826 INFO    ] ================================================
[2026-10-28 11:44:26,840.840 INFO    ] Launching Daemon at Wed Oct 28 11:44:26 IST 2026
[2026-10-28 11:44:26,851.851 INFO    ] ================================================
[2026-10-28 11:44:27,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:44:27
[2026-10-28 11:44:28,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:44:28,483.483 INFO    ] Initializing speech engine...
[2026-10-28 11:44:28,495.495 INFO    ] 2026-10-28 11:44:28
[2026-10-28 11:44:28,812.812 INFO    ] 2026-10-28 11:44:28
[2026-10-28 11:44:28,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:44:29,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:44:29,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:44:29,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:44:29,540.540 INFO    ] time= 28/10/2026 11:44:29
[2026-10-28 11:44:29,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:44:29,646.646 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:44:29,784.784 INFO    ] No existing commands found in stream
[2026-10-28 11:44:34,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:44:34,804.804 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-28 11:44:38,208.208 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:44:38,211.211 INFO    ] Checking for system updates...
[2026-10-28 11:44:38,248.248 INFO    ] 200
[2026-10-28 11:44:38,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:44:38,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:44:38,307.307 INFO    ] No update needed
[2026-10-28 11:44:38,310.310 INFO    ] Checking for camera pi updates...
[2026-10-28 11:44:38,345.345 INFO    ] 200
[2026-10-28 11:44:38,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:44:38,389.389 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:44:38,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:44:38,496.496 INFO    ] No camera update needed
[2026-10-28 11:44:38,499.499 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:44:38,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:44:38,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:44:38,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:44:40,554.554 INFO    ] ================================================
[2026-10-28 11:44:40,570.570 INFO    ] Launching Daemon at Wed Oct 28 11:44:40 IST 2026
[2026-10-28 11:44:40,581.581 INFO    ] ================================================
[2026-10-28 11:44:41,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:44:41
[2026-10-28 11:44:41,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:44:42,036.036 INFO    ] Initializing speech engine...
[2026-10-28 11:44:42,045.045 INFO    ] 2026-10-28 11:44:42
[2026-10-28 11:44:42,293.293 INFO    ] 2026-10-28 11:44:42
[2026-10-28 11:44:42,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:44:42,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:44:42,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:44:42,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:44:42,848.848 INFO    ] time= 28/10/2026 11:44:42
[2026-10-28 11:44:42,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:44:42,895.895 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:44:43,007.007 INFO    ] No existing commands found in stream
[2026-10-28 11:44:48,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:44:48,035.035 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-28 11:44:52,031.031 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:44:52,035.035 INFO    ] Checking for system updates...
[2026-10-28 11:44:52,075.075 INFO    ] 200
[2026-10-28 11:44:52,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:44:52,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:44:52,146.146 INFO    ] No update needed
[2026-10-28 11:44:52,149.149 INFO    ] Checking for camera pi updates...
[2026-10-28 11:44:52,184.184 INFO    ] 200
[2026-10-28 11:44:52,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:44:52,228.228 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:44:52,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:44:52,315.315 INFO    ] No camera update needed
[2026-10-28 11:44:52,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:44:52,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:44:52,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:44:52,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:44:54,374.374 INFO    ] ================================================
[2026-10-28 11:44:54,392.392 INFO    ] Launching Daemon at Wed Oct 28 11:44:54 IST 2026
[2026-10-28 11:44:54,403.403 INFO    ] ================================================
[2026-10-28 11:44:55,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:44:55
[2026-10-28 11:44:55,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:44:56,056.056 INFO    ] Initializing speech engine...
[2026-10-28 11:44:56,068.068 INFO    ] 2026-10-28 11:44:56
[2026-10-28 11:44:56,382.382 INFO    ] 2026-10-28 11:44:56
[2026-10-28 11:44:56,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:44:56,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:44:56,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:44:56,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:44:57,046.046 INFO    ] time= 28/10/2026 11:44:57
[2026-10-28 11:44:57,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:44:57,160.160 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:44:57,344.344 INFO    ] No existing commands found in stream
[2026-10-28 11:45:02,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:45:02,374.374 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 11:45:06,843.843 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:45:06,846.846 INFO    ] Checking for system updates...
[2026-10-28 11:45:06,883.883 INFO    ] 200
[2026-10-28 11:45:06,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:45:06,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:45:06,948.948 INFO    ] No update needed
[2026-10-28 11:45:06,951.951 INFO    ] Checking for camera pi updates...
[2026-10-28 11:45:06,985.985 INFO    ] 200
[2026-10-28 11:45:06,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:45:07,030.030 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:45:07,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:45:07,110.110 INFO    ] No camera update needed
[2026-10-28 11:45:07,113.113 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:45:07,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:45:07,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:45:07,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:45:09,169.169 INFO    ] ================================================
[2026-10-28 11:45:09,185.185 INFO    ] Launching Daemon at Wed Oct 28 11:45:09 IST 2026
[2026-10-28 11:45:09,196.196 INFO    ] ================================================
[2026-10-28 11:45:09,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:45:09
[2026-10-28 11:45:10,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:45:10,637.637 INFO    ] Initializing speech engine...
[2026-10-28 11:45:10,653.653 INFO    ] 2026-10-28 11:45:10
[2026-10-28 11:45:10,908.908 INFO    ] 2026-10-28 11:45:10
[2026-10-28 11:45:10,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:45:11,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:45:11,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:45:11,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:45:11,521.521 INFO    ] time= 28/10/2026 11:45:11
[2026-10-28 11:45:11,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:45:11,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:45:11,730.730 INFO    ] No existing commands found in stream
[2026-10-28 11:45:16,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:45:16,762.762 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 11:45:20,756.756 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:45:20,759.759 INFO    ] Checking for system updates...
[2026-10-28 11:45:20,794.794 INFO    ] 200
[2026-10-28 11:45:20,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:45:20,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:45:20,852.852 INFO    ] No update needed
[2026-10-28 11:45:20,855.855 INFO    ] Checking for camera pi updates...
[2026-10-28 11:45:20,889.889 INFO    ] 200
[2026-10-28 11:45:20,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:45:20,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:45:21,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:45:21,019.019 INFO    ] No camera update needed
[2026-10-28 11:45:21,022.022 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:45:21,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:45:21,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:45:21,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:45:23,079.079 INFO    ] ================================================
[2026-10-28 11:45:23,095.095 INFO    ] Launching Daemon at Wed Oct 28 11:45:23 IST 2026
[2026-10-28 11:45:23,107.107 INFO    ] ================================================
[2026-10-28 11:45:23,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:45:23
[2026-10-28 11:45:24,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:45:24,566.566 INFO    ] Initializing speech engine...
[2026-10-28 11:45:24,576.576 INFO    ] 2026-10-28 11:45:24
[2026-10-28 11:45:24,825.825 INFO    ] 2026-10-28 11:45:24
[2026-10-28 11:45:24,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:45:25,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:45:25,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:45:25,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:45:25,451.451 INFO    ] time= 28/10/2026 11:45:25
[2026-10-28 11:45:25,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:45:25,475.475 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:45:25,623.623 INFO    ] No existing commands found in stream
[2026-10-28 11:45:30,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:45:30,643.643 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-28 11:45:34,500.500 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:45:34,503.503 INFO    ] Checking for system updates...
[2026-10-28 11:45:34,539.539 INFO    ] 200
[2026-10-28 11:45:34,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:45:34,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:45:34,596.596 INFO    ] No update needed
[2026-10-28 11:45:34,598.598 INFO    ] Checking for camera pi updates...
[2026-10-28 11:45:34,631.631 INFO    ] 200
[2026-10-28 11:45:34,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:45:34,675.675 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:45:34,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:45:34,778.778 INFO    ] No camera update needed
[2026-10-28 11:45:34,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:45:34,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:45:34,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:45:34,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:45:36,835.835 INFO    ] ================================================
[2026-10-28 11:45:36,850.850 INFO    ] Launching Daemon at Wed Oct 28 11:45:36 IST 2026
[2026-10-28 11:45:36,861.861 INFO    ] ================================================
[2026-10-28 11:45:37,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:45:37
[2026-10-28 11:45:38,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:45:38,504.504 INFO    ] Initializing speech engine...
[2026-10-28 11:45:38,513.513 INFO    ] 2026-10-28 11:45:38
[2026-10-28 11:45:38,790.790 INFO    ] 2026-10-28 11:45:38
[2026-10-28 11:45:38,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:45:39,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:45:39,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:45:39,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:45:39,387.387 INFO    ] time= 28/10/2026 11:45:39
[2026-10-28 11:45:39,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:45:39,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:45:39,578.578 INFO    ] No existing commands found in stream
[2026-10-28 11:45:44,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:45:44,607.607 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 11:45:48,105.105 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:45:48,108.108 INFO    ] Checking for system updates...
[2026-10-28 11:45:48,144.144 INFO    ] 200
[2026-10-28 11:45:48,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:45:48,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:45:48,201.201 INFO    ] No update needed
[2026-10-28 11:45:48,203.203 INFO    ] Checking for camera pi updates...
[2026-10-28 11:45:48,236.236 INFO    ] 200
[2026-10-28 11:45:48,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:45:48,279.279 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:45:48,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:45:48,372.372 INFO    ] No camera update needed
[2026-10-28 11:45:48,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:45:48,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:45:48,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:45:48,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:45:50,427.427 INFO    ] ================================================
[2026-10-28 11:45:50,443.443 INFO    ] Launching Daemon at Wed Oct 28 11:45:50 IST 2026
[2026-10-28 11:45:50,455.455 INFO    ] ================================================
[2026-10-28 11:45:51,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:45:51
[2026-10-28 11:45:51,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:45:52,085.085 INFO    ] Initializing speech engine...
[2026-10-28 11:45:52,098.098 INFO    ] 2026-10-28 11:45:52
[2026-10-28 11:45:52,367.367 INFO    ] 2026-10-28 11:45:52
[2026-10-28 11:45:52,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:45:52,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:45:52,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:45:52,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:45:52,993.993 INFO    ] time= 28/10/2026 11:45:52
[2026-10-28 11:45:52,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:45:53,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:45:53,172.172 INFO    ] No existing commands found in stream
[2026-10-28 11:45:58,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:45:58,196.196 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-28 11:45:58,984.984 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:45:58,987.987 INFO    ] Checking for system updates...
[2026-10-28 11:45:59,022.022 INFO    ] 200
[2026-10-28 11:45:59,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:45:59,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:45:59,084.084 INFO    ] No update needed
[2026-10-28 11:45:59,087.087 INFO    ] Checking for camera pi updates...
[2026-10-28 11:45:59,120.120 INFO    ] 200
[2026-10-28 11:45:59,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:45:59,163.163 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:45:59,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:45:59,241.241 INFO    ] No camera update needed
[2026-10-28 11:45:59,243.243 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:45:59,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:45:59,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:45:59,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:46:01,295.295 INFO    ] ================================================
[2026-10-28 11:46:01,312.312 INFO    ] Launching Daemon at Wed Oct 28 11:46:01 IST 2026
[2026-10-28 11:46:01,332.332 INFO    ] ================================================
[2026-10-28 11:46:02,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:46:02
[2026-10-28 11:46:02,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:46:03,115.115 INFO    ] Initializing speech engine...
[2026-10-28 11:46:03,126.126 INFO    ] 2026-10-28 11:46:03
[2026-10-28 11:46:03,426.426 INFO    ] 2026-10-28 11:46:03
[2026-10-28 11:46:03,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:46:03,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:46:03,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:46:04,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:46:04,053.053 INFO    ] time= 28/10/2026 11:46:04
[2026-10-28 11:46:04,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:46:04,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:46:04,209.209 INFO    ] No existing commands found in stream
[2026-10-28 11:46:09,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:46:09,233.233 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 11:46:11,025.025 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:46:11,027.027 INFO    ] Checking for system updates...
[2026-10-28 11:46:11,062.062 INFO    ] 200
[2026-10-28 11:46:11,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:46:11,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:46:11,124.124 INFO    ] No update needed
[2026-10-28 11:46:11,126.126 INFO    ] Checking for camera pi updates...
[2026-10-28 11:46:11,160.160 INFO    ] 200
[2026-10-28 11:46:11,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:46:11,203.203 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:46:11,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:46:11,269.269 INFO    ] No camera update needed
[2026-10-28 11:46:11,271.271 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:46:11,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:46:11,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:46:11,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:46:13,325.325 INFO    ] ================================================
[2026-10-28 11:46:13,340.340 INFO    ] Launching Daemon at Wed Oct 28 11:46:13 IST 2026
[2026-10-28 11:46:13,351.351 INFO    ] ================================================
[2026-10-28 11:46:13,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:46:13
[2026-10-28 11:46:14,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:46:14,746.746 INFO    ] Initializing speech engine...
[2026-10-28 11:46:14,755.755 INFO    ] 2026-10-28 11:46:14
[2026-10-28 11:46:15,044.044 INFO    ] 2026-10-28 11:46:15
[2026-10-28 11:46:15,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:46:15,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:46:15,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:46:15,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:46:15,662.662 INFO    ] time= 28/10/2026 11:46:15
[2026-10-28 11:46:15,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:46:15,689.689 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:46:15,819.819 INFO    ] No existing commands found in stream
[2026-10-28 11:46:20,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:46:20,848.848 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 11:46:21,460.460 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:46:21,463.463 INFO    ] Checking for system updates...
[2026-10-28 11:46:21,498.498 INFO    ] 200
[2026-10-28 11:46:21,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:46:21,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:46:21,555.555 INFO    ] No update needed
[2026-10-28 11:46:21,557.557 INFO    ] Checking for camera pi updates...
[2026-10-28 11:46:21,591.591 INFO    ] 200
[2026-10-28 11:46:21,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:46:21,633.633 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:46:21,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:46:21,715.715 INFO    ] No camera update needed
[2026-10-28 11:46:21,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:46:21,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:46:21,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:46:21,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:46:23,770.770 INFO    ] ================================================
[2026-10-28 11:46:23,785.785 INFO    ] Launching Daemon at Wed Oct 28 11:46:23 IST 2026
[2026-10-28 11:46:23,798.798 INFO    ] ================================================
[2026-10-28 11:46:24,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:46:24
[2026-10-28 11:46:25,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:46:25,392.392 INFO    ] Initializing speech engine...
[2026-10-28 11:46:25,405.405 INFO    ] 2026-10-28 11:46:25
[2026-10-28 11:46:25,687.687 INFO    ] 2026-10-28 11:46:25
[2026-10-28 11:46:25,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:46:26,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:46:26,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:46:26,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:46:26,457.457 INFO    ] time= 28/10/2026 11:46:26
[2026-10-28 11:46:26,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:46:26,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:46:26,753.753 INFO    ] No existing commands found in stream
[2026-10-28 11:46:31,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:46:31,792.792 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-28 11:46:36,244.244 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:46:36,247.247 INFO    ] Checking for system updates...
[2026-10-28 11:46:36,284.284 INFO    ] 200
[2026-10-28 11:46:36,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:46:36,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:46:36,342.342 INFO    ] No update needed
[2026-10-28 11:46:36,345.345 INFO    ] Checking for camera pi updates...
[2026-10-28 11:46:36,379.379 INFO    ] 200
[2026-10-28 11:46:36,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:46:36,423.423 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:46:36,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:46:36,507.507 INFO    ] No camera update needed
[2026-10-28 11:46:36,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:46:36,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:46:36,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:46:36,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:46:38,565.565 INFO    ] ================================================
[2026-10-28 11:46:38,581.581 INFO    ] Launching Daemon at Wed Oct 28 11:46:38 IST 2026
[2026-10-28 11:46:38,591.591 INFO    ] ================================================
[2026-10-28 11:46:39,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:46:39
[2026-10-28 11:46:39,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:46:40,010.010 INFO    ] Initializing speech engine...
[2026-10-28 11:46:40,018.018 INFO    ] 2026-10-28 11:46:40
[2026-10-28 11:46:40,311.311 INFO    ] 2026-10-28 11:46:40
[2026-10-28 11:46:40,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:46:40,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:46:40,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:46:40,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:46:40,929.929 INFO    ] time= 28/10/2026 11:46:40
[2026-10-28 11:46:40,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:46:40,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:46:41,104.104 INFO    ] No existing commands found in stream
[2026-10-28 11:46:46,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:46:46,122.122 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 11:46:47,239.239 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:46:47,246.246 INFO    ] Checking for system updates...
[2026-10-28 11:46:47,295.295 INFO    ] 200
[2026-10-28 11:46:47,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:46:47,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:46:47,352.352 INFO    ] No update needed
[2026-10-28 11:46:47,355.355 INFO    ] Checking for camera pi updates...
[2026-10-28 11:46:47,388.388 INFO    ] 200
[2026-10-28 11:46:47,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:46:47,431.431 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:46:47,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:46:47,514.514 INFO    ] No camera update needed
[2026-10-28 11:46:47,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:46:47,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:46:47,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:46:47,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:46:49,569.569 INFO    ] ================================================
[2026-10-28 11:46:49,584.584 INFO    ] Launching Daemon at Wed Oct 28 11:46:49 IST 2026
[2026-10-28 11:46:49,595.595 INFO    ] ================================================
[2026-10-28 11:46:50,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:46:50
[2026-10-28 11:46:50,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:46:51,064.064 INFO    ] Initializing speech engine...
[2026-10-28 11:46:51,068.068 INFO    ] 2026-10-28 11:46:51
[2026-10-28 11:46:51,319.319 INFO    ] 2026-10-28 11:46:51
[2026-10-28 11:46:51,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:46:51,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:46:51,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:46:51,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:46:51,922.922 INFO    ] time= 28/10/2026 11:46:51
[2026-10-28 11:46:51,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:46:52,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:46:52,196.196 INFO    ] No existing commands found in stream
[2026-10-28 11:46:57,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:46:57,224.224 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 11:46:59,660.660 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:46:59,662.662 INFO    ] Checking for system updates...
[2026-10-28 11:46:59,698.698 INFO    ] 200
[2026-10-28 11:46:59,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:46:59,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:46:59,755.755 INFO    ] No update needed
[2026-10-28 11:46:59,758.758 INFO    ] Checking for camera pi updates...
[2026-10-28 11:46:59,791.791 INFO    ] 200
[2026-10-28 11:46:59,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:46:59,833.833 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:46:59,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:46:59,906.906 INFO    ] No camera update needed
[2026-10-28 11:46:59,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:46:59,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:46:59,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:46:59,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:47:01,962.962 INFO    ] ================================================
[2026-10-28 11:47:01,982.982 INFO    ] Launching Daemon at Wed Oct 28 11:47:01 IST 2026
[2026-10-28 11:47:02,998.998 INFO    ] ================================================
[2026-10-28 11:47:02,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:47:02
[2026-10-28 11:47:03,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:47:03,584.584 INFO    ] Initializing speech engine...
[2026-10-28 11:47:03,590.590 INFO    ] 2026-10-28 11:47:03
[2026-10-28 11:47:03,866.866 INFO    ] 2026-10-28 11:47:03
[2026-10-28 11:47:03,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:47:04,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:47:04,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:47:04,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:47:04,423.423 INFO    ] time= 28/10/2026 11:47:04
[2026-10-28 11:47:04,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:47:04,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:47:04,628.628 INFO    ] No existing commands found in stream
[2026-10-28 11:47:09,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:47:09,661.661 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 11:47:11,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:47:11,473.473 INFO    ] Checking for system updates...
[2026-10-28 11:47:11,511.511 INFO    ] 200
[2026-10-28 11:47:11,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:47:11,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:47:11,569.569 INFO    ] No update needed
[2026-10-28 11:47:11,571.571 INFO    ] Checking for camera pi updates...
[2026-10-28 11:47:11,606.606 INFO    ] 200
[2026-10-28 11:47:11,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:47:11,649.649 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:47:11,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:47:11,704.704 INFO    ] No camera update needed
[2026-10-28 11:47:11,707.707 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:47:11,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:47:11,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:47:11,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:47:13,763.763 INFO    ] ================================================
[2026-10-28 11:47:13,780.780 INFO    ] Launching Daemon at Wed Oct 28 11:47:13 IST 2026
[2026-10-28 11:47:13,792.792 INFO    ] ================================================
[2026-10-28 11:47:14,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:47:14
[2026-10-28 11:47:15,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:47:15,309.309 INFO    ] Initializing speech engine...
[2026-10-28 11:47:15,316.316 INFO    ] 2026-10-28 11:47:15
[2026-10-28 11:47:15,599.599 INFO    ] 2026-10-28 11:47:15
[2026-10-28 11:47:15,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:47:15,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:47:15,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:47:16,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:47:16,169.169 INFO    ] time= 28/10/2026 11:47:16
[2026-10-28 11:47:16,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:47:16,205.205 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:47:16,322.322 INFO    ] No existing commands found in stream
[2026-10-28 11:47:21,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:47:21,350.350 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-28 11:47:24,780.780 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:47:24,783.783 INFO    ] Checking for system updates...
[2026-10-28 11:47:24,819.819 INFO    ] 200
[2026-10-28 11:47:24,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:47:24,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:47:24,878.878 INFO    ] No update needed
[2026-10-28 11:47:24,881.881 INFO    ] Checking for camera pi updates...
[2026-10-28 11:47:24,915.915 INFO    ] 200
[2026-10-28 11:47:24,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:47:24,958.958 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:47:25,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:47:25,054.054 INFO    ] No camera update needed
[2026-10-28 11:47:25,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:47:25,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:47:25,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:47:25,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:47:27,109.109 INFO    ] ================================================
[2026-10-28 11:47:27,125.125 INFO    ] Launching Daemon at Wed Oct 28 11:47:27 IST 2026
[2026-10-28 11:47:27,136.136 INFO    ] ================================================
[2026-10-28 11:47:27,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:47:27
[2026-10-28 11:47:28,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:47:28,568.568 INFO    ] Initializing speech engine...
[2026-10-28 11:47:28,581.581 INFO    ] 2026-10-28 11:47:28
[2026-10-28 11:47:28,846.846 INFO    ] 2026-10-28 11:47:28
[2026-10-28 11:47:28,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:47:29,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:47:29,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:47:29,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:47:29,450.450 INFO    ] time= 28/10/2026 11:47:29
[2026-10-28 11:47:29,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:47:29,534.534 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:47:29,678.678 INFO    ] No existing commands found in stream
[2026-10-28 11:47:34,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:47:34,716.716 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-28 11:47:36,899.899 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:47:36,902.902 INFO    ] Checking for system updates...
[2026-10-28 11:47:36,937.937 INFO    ] 200
[2026-10-28 11:47:36,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:47:36,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:47:36,995.995 INFO    ] No update needed
[2026-10-28 11:47:36,997.997 INFO    ] Checking for camera pi updates...
[2026-10-28 11:47:37,030.030 INFO    ] 200
[2026-10-28 11:47:37,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:47:37,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:47:37,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:47:37,167.167 INFO    ] No camera update needed
[2026-10-28 11:47:37,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:47:37,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:47:37,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:47:37,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:47:39,223.223 INFO    ] ================================================
[2026-10-28 11:47:39,238.238 INFO    ] Launching Daemon at Wed Oct 28 11:47:39 IST 2026
[2026-10-28 11:47:39,249.249 INFO    ] ================================================
[2026-10-28 11:47:39,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:47:39
[2026-10-28 11:47:40,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:47:40,705.705 INFO    ] Initializing speech engine...
[2026-10-28 11:47:40,710.710 INFO    ] 2026-10-28 11:47:40
[2026-10-28 11:47:40,972.972 INFO    ] 2026-10-28 11:47:40
[2026-10-28 11:47:41,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:47:41,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:47:41,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:47:41,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:47:41,732.732 INFO    ] time= 28/10/2026 11:47:41
[2026-10-28 11:47:41,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:47:41,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:47:41,973.973 INFO    ] No existing commands found in stream
[2026-10-28 11:47:46,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:47:46,987.987 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 11:47:49,579.579 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:47:49,582.582 INFO    ] Checking for system updates...
[2026-10-28 11:47:49,618.618 INFO    ] 200
[2026-10-28 11:47:49,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:47:49,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:47:49,675.675 INFO    ] No update needed
[2026-10-28 11:47:49,677.677 INFO    ] Checking for camera pi updates...
[2026-10-28 11:47:49,712.712 INFO    ] 200
[2026-10-28 11:47:49,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:47:49,756.756 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:47:49,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:47:49,954.954 INFO    ] No camera update needed
[2026-10-28 11:47:49,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:47:49,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:47:49,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:47:49,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:47:52,009.009 INFO    ] ================================================
[2026-10-28 11:47:52,024.024 INFO    ] Launching Daemon at Wed Oct 28 11:47:52 IST 2026
[2026-10-28 11:47:52,035.035 INFO    ] ================================================
[2026-10-28 11:47:52,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:47:52
[2026-10-28 11:47:53,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:47:53,447.447 INFO    ] Initializing speech engine...
[2026-10-28 11:47:53,454.454 INFO    ] 2026-10-28 11:47:53
[2026-10-28 11:47:53,701.701 INFO    ] 2026-10-28 11:47:53
[2026-10-28 11:47:53,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:47:54,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:47:54,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:47:54,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:47:54,302.302 INFO    ] time= 28/10/2026 11:47:54
[2026-10-28 11:47:54,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:47:54,369.369 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:47:54,506.506 INFO    ] No existing commands found in stream
[2026-10-28 11:47:59,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:47:59,531.531 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-28 11:48:00,742.742 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:48:00,745.745 INFO    ] Checking for system updates...
[2026-10-28 11:48:00,781.781 INFO    ] 200
[2026-10-28 11:48:00,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:48:00,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:48:00,839.839 INFO    ] No update needed
[2026-10-28 11:48:00,841.841 INFO    ] Checking for camera pi updates...
[2026-10-28 11:48:00,875.875 INFO    ] 200
[2026-10-28 11:48:00,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:48:00,922.922 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:48:01,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:48:01,006.006 INFO    ] No camera update needed
[2026-10-28 11:48:01,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:48:01,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:48:01,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:48:01,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:48:03,076.076 INFO    ] ================================================
[2026-10-28 11:48:03,102.102 INFO    ] Launching Daemon at Wed Oct 28 11:48:03 IST 2026
[2026-10-28 11:48:03,116.116 INFO    ] ================================================
[2026-10-28 11:48:03,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:48:03
[2026-10-28 11:48:04,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:48:04,599.599 INFO    ] Initializing speech engine...
[2026-10-28 11:48:04,622.622 INFO    ] 2026-10-28 11:48:04
[2026-10-28 11:48:04,876.876 INFO    ] 2026-10-28 11:48:04
[2026-10-28 11:48:04,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:48:05,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:48:05,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:48:05,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:48:05,465.465 INFO    ] time= 28/10/2026 11:48:05
[2026-10-28 11:48:05,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:48:05,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:48:05,667.667 INFO    ] No existing commands found in stream
[2026-10-28 11:48:10,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:48:10,700.700 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-28 11:48:15,231.231 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:48:15,234.234 INFO    ] Checking for system updates...
[2026-10-28 11:48:15,271.271 INFO    ] 200
[2026-10-28 11:48:15,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:48:15,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:48:15,328.328 INFO    ] No update needed
[2026-10-28 11:48:15,330.330 INFO    ] Checking for camera pi updates...
[2026-10-28 11:48:15,363.363 INFO    ] 200
[2026-10-28 11:48:15,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:48:15,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:48:15,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:48:15,488.488 INFO    ] No camera update needed
[2026-10-28 11:48:15,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:48:15,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:48:15,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:48:15,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:48:17,542.542 INFO    ] ================================================
[2026-10-28 11:48:17,557.557 INFO    ] Launching Daemon at Wed Oct 28 11:48:17 IST 2026
[2026-10-28 11:48:17,568.568 INFO    ] ================================================
[2026-10-28 11:48:18,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:48:18
[2026-10-28 11:48:18,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:48:19,023.023 INFO    ] Initializing speech engine...
[2026-10-28 11:48:19,029.029 INFO    ] 2026-10-28 11:48:19
[2026-10-28 11:48:19,300.300 INFO    ] 2026-10-28 11:48:19
[2026-10-28 11:48:19,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:48:19,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:48:19,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:48:19,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:48:19,879.879 INFO    ] time= 28/10/2026 11:48:19
[2026-10-28 11:48:19,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:48:19,908.908 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:48:20,072.072 INFO    ] No existing commands found in stream
[2026-10-28 11:48:25,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:48:25,105.105 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-28 11:48:26,348.348 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:48:26,350.350 INFO    ] Checking for system updates...
[2026-10-28 11:48:26,385.385 INFO    ] 200
[2026-10-28 11:48:26,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:48:26,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:48:26,442.442 INFO    ] No update needed
[2026-10-28 11:48:26,444.444 INFO    ] Checking for camera pi updates...
[2026-10-28 11:48:26,482.482 INFO    ] 200
[2026-10-28 11:48:26,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:48:26,530.530 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:48:26,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:48:26,614.614 INFO    ] No camera update needed
[2026-10-28 11:48:26,617.617 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:48:26,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:48:26,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:48:26,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:48:28,671.671 INFO    ] ================================================
[2026-10-28 11:48:28,686.686 INFO    ] Launching Daemon at Wed Oct 28 11:48:28 IST 2026
[2026-10-28 11:48:28,696.696 INFO    ] ================================================
[2026-10-28 11:48:29,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:48:29
[2026-10-28 11:48:30,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:48:30,299.299 INFO    ] Initializing speech engine...
[2026-10-28 11:48:30,307.307 INFO    ] 2026-10-28 11:48:30
[2026-10-28 11:48:30,550.550 INFO    ] 2026-10-28 11:48:30
[2026-10-28 11:48:30,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:48:30,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:48:30,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:48:31,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:48:31,108.108 INFO    ] time= 28/10/2026 11:48:31
[2026-10-28 11:48:31,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:48:31,155.155 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:48:31,262.262 INFO    ] No existing commands found in stream
[2026-10-28 11:48:36,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:48:36,294.294 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-28 11:48:37,148.148 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:48:37,151.151 INFO    ] Checking for system updates...
[2026-10-28 11:48:37,187.187 INFO    ] 200
[2026-10-28 11:48:37,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:48:37,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:48:37,245.245 INFO    ] No update needed
[2026-10-28 11:48:37,248.248 INFO    ] Checking for camera pi updates...
[2026-10-28 11:48:37,283.283 INFO    ] 200
[2026-10-28 11:48:37,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:48:37,328.328 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:48:37,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:48:37,412.412 INFO    ] No camera update needed
[2026-10-28 11:48:37,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:48:37,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:48:37,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:48:37,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:48:39,470.470 INFO    ] ================================================
[2026-10-28 11:48:39,485.485 INFO    ] Launching Daemon at Wed Oct 28 11:48:39 IST 2026
[2026-10-28 11:48:39,496.496 INFO    ] ================================================
[2026-10-28 11:48:40,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:48:40
[2026-10-28 11:48:40,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:48:41,093.093 INFO    ] Initializing speech engine...
[2026-10-28 11:48:41,101.101 INFO    ] 2026-10-28 11:48:41
[2026-10-28 11:48:41,416.416 INFO    ] 2026-10-28 11:48:41
[2026-10-28 11:48:41,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:48:41,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:48:41,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:48:42,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:48:42,155.155 INFO    ] time= 28/10/2026 11:48:42
[2026-10-28 11:48:42,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:48:42,231.231 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:48:42,449.449 INFO    ] No existing commands found in stream
[2026-10-28 11:48:47,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:48:47,483.483 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-28 11:48:50,501.501 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:48:50,504.504 INFO    ] Checking for system updates...
[2026-10-28 11:48:50,541.541 INFO    ] 200
[2026-10-28 11:48:50,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:48:50,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:48:50,599.599 INFO    ] No update needed
[2026-10-28 11:48:50,602.602 INFO    ] Checking for camera pi updates...
[2026-10-28 11:48:50,635.635 INFO    ] 200
[2026-10-28 11:48:50,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:48:50,681.681 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:48:50,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:48:50,768.768 INFO    ] No camera update needed
[2026-10-28 11:48:50,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:48:50,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:48:50,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:48:50,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:48:52,822.822 INFO    ] ================================================
[2026-10-28 11:48:52,838.838 INFO    ] Launching Daemon at Wed Oct 28 11:48:52 IST 2026
[2026-10-28 11:48:52,848.848 INFO    ] ================================================
[2026-10-28 11:48:53,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:48:53
[2026-10-28 11:48:54,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:48:54,253.253 INFO    ] Initializing speech engine...
[2026-10-28 11:48:54,276.276 INFO    ] 2026-10-28 11:48:54
[2026-10-28 11:48:54,527.527 INFO    ] 2026-10-28 11:48:54
[2026-10-28 11:48:54,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:48:54,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:48:54,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:48:55,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:48:55,093.093 INFO    ] time= 28/10/2026 11:48:55
[2026-10-28 11:48:55,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:48:55,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:48:55,279.279 INFO    ] No existing commands found in stream
[2026-10-28 11:49:00,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:49:00,312.312 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-28 11:49:01,352.352 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:49:01,355.355 INFO    ] Checking for system updates...
[2026-10-28 11:49:01,392.392 INFO    ] 200
[2026-10-28 11:49:01,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:49:01,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:49:01,449.449 INFO    ] No update needed
[2026-10-28 11:49:01,451.451 INFO    ] Checking for camera pi updates...
[2026-10-28 11:49:01,488.488 INFO    ] 200
[2026-10-28 11:49:01,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:49:01,530.530 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:49:01,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:49:01,618.618 INFO    ] No camera update needed
[2026-10-28 11:49:01,620.620 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:49:01,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:49:01,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:49:01,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:49:03,680.680 INFO    ] ================================================
[2026-10-28 11:49:03,695.695 INFO    ] Launching Daemon at Wed Oct 28 11:49:03 IST 2026
[2026-10-28 11:49:03,706.706 INFO    ] ================================================
[2026-10-28 11:49:04,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:49:04
[2026-10-28 11:49:04,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:49:05,175.175 INFO    ] Initializing speech engine...
[2026-10-28 11:49:05,181.181 INFO    ] 2026-10-28 11:49:05
[2026-10-28 11:49:05,439.439 INFO    ] 2026-10-28 11:49:05
[2026-10-28 11:49:05,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:49:05,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:49:05,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:49:05,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:49:05,982.982 INFO    ] time= 28/10/2026 11:49:05
[2026-10-28 11:49:05,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:49:06,011.011 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:49:06,158.158 INFO    ] No existing commands found in stream
[2026-10-28 11:49:11,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:49:11,191.191 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-28 11:49:12,204.204 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:49:12,206.206 INFO    ] Checking for system updates...
[2026-10-28 11:49:12,241.241 INFO    ] 200
[2026-10-28 11:49:12,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:49:12,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:49:12,299.299 INFO    ] No update needed
[2026-10-28 11:49:12,302.302 INFO    ] Checking for camera pi updates...
[2026-10-28 11:49:12,335.335 INFO    ] 200
[2026-10-28 11:49:12,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:49:12,378.378 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:49:12,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:49:12,460.460 INFO    ] No camera update needed
[2026-10-28 11:49:12,463.463 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:49:12,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:49:12,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:49:12,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:49:14,514.514 INFO    ] ================================================
[2026-10-28 11:49:14,529.529 INFO    ] Launching Daemon at Wed Oct 28 11:49:14 IST 2026
[2026-10-28 11:49:14,540.540 INFO    ] ================================================
[2026-10-28 11:49:15,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:49:15
[2026-10-28 11:49:15,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:49:16,146.146 INFO    ] Initializing speech engine...
[2026-10-28 11:49:16,153.153 INFO    ] 2026-10-28 11:49:16
[2026-10-28 11:49:16,414.414 INFO    ] 2026-10-28 11:49:16
[2026-10-28 11:49:16,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:49:16,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:49:16,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:49:16,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:49:16,985.985 INFO    ] time= 28/10/2026 11:49:16
[2026-10-28 11:49:17,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:49:17,056.056 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:49:17,206.206 INFO    ] No existing commands found in stream
[2026-10-28 11:49:22,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:49:22,220.220 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-28 11:49:24,982.982 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:49:24,985.985 INFO    ] Checking for system updates...
[2026-10-28 11:49:25,031.031 INFO    ] 200
[2026-10-28 11:49:25,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:49:25,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:49:25,096.096 INFO    ] No update needed
[2026-10-28 11:49:25,098.098 INFO    ] Checking for camera pi updates...
[2026-10-28 11:49:25,132.132 INFO    ] 200
[2026-10-28 11:49:25,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:49:25,175.175 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:49:25,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:49:25,254.254 INFO    ] No camera update needed
[2026-10-28 11:49:25,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:49:25,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:49:25,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:49:25,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:49:27,309.309 INFO    ] ================================================
[2026-10-28 11:49:27,325.325 INFO    ] Launching Daemon at Wed Oct 28 11:49:27 IST 2026
[2026-10-28 11:49:27,335.335 INFO    ] ================================================
[2026-10-28 11:49:27,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:49:27
[2026-10-28 11:49:28,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:49:28,843.843 INFO    ] Initializing speech engine...
[2026-10-28 11:49:28,857.857 INFO    ] 2026-10-28 11:49:28
[2026-10-28 11:49:29,142.142 INFO    ] 2026-10-28 11:49:29
[2026-10-28 11:49:29,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:49:29,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:49:29,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:49:29,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:49:29,624.624 INFO    ] time= 28/10/2026 11:49:29
[2026-10-28 11:49:29,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:49:29,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:49:29,899.899 INFO    ] No existing commands found in stream
[2026-10-28 11:49:34,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:49:34,918.918 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 11:49:39,300.300 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:49:39,303.303 INFO    ] Checking for system updates...
[2026-10-28 11:49:39,343.343 INFO    ] 200
[2026-10-28 11:49:39,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:49:39,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:49:39,407.407 INFO    ] No update needed
[2026-10-28 11:49:39,410.410 INFO    ] Checking for camera pi updates...
[2026-10-28 11:49:39,447.447 INFO    ] 200
[2026-10-28 11:49:39,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:49:39,496.496 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:49:39,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:49:39,580.580 INFO    ] No camera update needed
[2026-10-28 11:49:39,583.583 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:49:39,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:49:39,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:49:39,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:49:41,636.636 INFO    ] ================================================
[2026-10-28 11:49:41,652.652 INFO    ] Launching Daemon at Wed Oct 28 11:49:41 IST 2026
[2026-10-28 11:49:41,662.662 INFO    ] ================================================
[2026-10-28 11:49:42,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:49:42
[2026-10-28 11:49:42,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:49:43,137.137 INFO    ] Initializing speech engine...
[2026-10-28 11:49:43,145.145 INFO    ] 2026-10-28 11:49:43
[2026-10-28 11:49:43,404.404 INFO    ] 2026-10-28 11:49:43
[2026-10-28 11:49:43,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:49:43,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:49:43,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:49:43,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:49:43,985.985 INFO    ] time= 28/10/2026 11:49:43
[2026-10-28 11:49:43,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:49:44,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:49:44,178.178 INFO    ] No existing commands found in stream
[2026-10-28 11:49:49,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:49:49,206.206 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-28 11:49:52,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:49:52,463.463 INFO    ] Checking for system updates...
[2026-10-28 11:49:52,500.500 INFO    ] 200
[2026-10-28 11:49:52,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:49:52,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:49:52,564.564 INFO    ] No update needed
[2026-10-28 11:49:52,566.566 INFO    ] Checking for camera pi updates...
[2026-10-28 11:49:52,599.599 INFO    ] 200
[2026-10-28 11:49:52,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:49:52,641.641 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:49:52,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:49:52,824.824 INFO    ] No camera update needed
[2026-10-28 11:49:52,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:49:52,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:49:52,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:49:52,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:49:54,880.880 INFO    ] ================================================
[2026-10-28 11:49:54,895.895 INFO    ] Launching Daemon at Wed Oct 28 11:49:54 IST 2026
[2026-10-28 11:49:54,906.906 INFO    ] ================================================
[2026-10-28 11:49:55,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:49:55
[2026-10-28 11:49:56,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:49:56,321.321 INFO    ] Initializing speech engine...
[2026-10-28 11:49:56,331.331 INFO    ] 2026-10-28 11:49:56
[2026-10-28 11:49:56,576.576 INFO    ] 2026-10-28 11:49:56
[2026-10-28 11:49:56,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:49:56,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:49:56,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:49:57,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:49:57,143.143 INFO    ] time= 28/10/2026 11:49:57
[2026-10-28 11:49:57,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:49:57,179.179 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:49:57,347.347 INFO    ] No existing commands found in stream
[2026-10-28 11:50:02,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:50:02,379.379 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-28 11:50:08,200.200 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:50:08,203.203 INFO    ] Checking for system updates...
[2026-10-28 11:50:08,245.245 INFO    ] 200
[2026-10-28 11:50:08,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:50:08,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:50:08,307.307 INFO    ] No update needed
[2026-10-28 11:50:08,309.309 INFO    ] Checking for camera pi updates...
[2026-10-28 11:50:08,348.348 INFO    ] 200
[2026-10-28 11:50:08,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:50:08,396.396 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:50:08,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:50:08,498.498 INFO    ] No camera update needed
[2026-10-28 11:50:08,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:50:08,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:50:08,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:50:08,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:50:10,556.556 INFO    ] ================================================
[2026-10-28 11:50:10,571.571 INFO    ] Launching Daemon at Wed Oct 28 11:50:10 IST 2026
[2026-10-28 11:50:10,582.582 INFO    ] ================================================
[2026-10-28 11:50:11,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:50:11
[2026-10-28 11:50:11,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:50:12,004.004 INFO    ] Initializing speech engine...
[2026-10-28 11:50:12,014.014 INFO    ] 2026-10-28 11:50:12
[2026-10-28 11:50:12,265.265 INFO    ] 2026-10-28 11:50:12
[2026-10-28 11:50:12,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:50:12,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:50:12,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:50:12,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:50:12,863.863 INFO    ] time= 28/10/2026 11:50:12
[2026-10-28 11:50:12,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:50:12,909.909 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:50:13,054.054 INFO    ] No existing commands found in stream
[2026-10-28 11:50:18,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:50:18,085.085 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-28 11:50:20,994.994 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:50:20,996.996 INFO    ] Checking for system updates...
[2026-10-28 11:50:21,033.033 INFO    ] 200
[2026-10-28 11:50:21,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:50:21,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:50:21,098.098 INFO    ] No update needed
[2026-10-28 11:50:21,101.101 INFO    ] Checking for camera pi updates...
[2026-10-28 11:50:21,135.135 INFO    ] 200
[2026-10-28 11:50:21,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:50:21,179.179 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:50:21,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:50:21,263.263 INFO    ] No camera update needed
[2026-10-28 11:50:21,266.266 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:50:21,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:50:21,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:50:21,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:50:23,326.326 INFO    ] ================================================
[2026-10-28 11:50:23,341.341 INFO    ] Launching Daemon at Wed Oct 28 11:50:23 IST 2026
[2026-10-28 11:50:23,352.352 INFO    ] ================================================
[2026-10-28 11:50:23,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:50:23
[2026-10-28 11:50:24,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:50:24,754.754 INFO    ] Initializing speech engine...
[2026-10-28 11:50:24,777.777 INFO    ] 2026-10-28 11:50:24
[2026-10-28 11:50:25,029.029 INFO    ] 2026-10-28 11:50:25
[2026-10-28 11:50:25,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:50:25,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:50:25,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:50:25,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:50:25,753.753 INFO    ] time= 28/10/2026 11:50:25
[2026-10-28 11:50:25,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:50:25,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:50:25,983.983 INFO    ] No existing commands found in stream
[2026-10-28 11:50:31,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:50:31,003.003 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 11:50:35,458.458 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:50:35,461.461 INFO    ] Checking for system updates...
[2026-10-28 11:50:35,500.500 INFO    ] 200
[2026-10-28 11:50:35,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:50:35,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:50:35,559.559 INFO    ] No update needed
[2026-10-28 11:50:35,561.561 INFO    ] Checking for camera pi updates...
[2026-10-28 11:50:35,597.597 INFO    ] 200
[2026-10-28 11:50:35,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:50:35,641.641 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:50:35,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:50:35,725.725 INFO    ] No camera update needed
[2026-10-28 11:50:35,727.727 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:50:35,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:50:35,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:50:35,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:50:37,787.787 INFO    ] ================================================
[2026-10-28 11:50:37,802.802 INFO    ] Launching Daemon at Wed Oct 28 11:50:37 IST 2026
[2026-10-28 11:50:37,813.813 INFO    ] ================================================
[2026-10-28 11:50:38,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:50:38
[2026-10-28 11:50:39,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:50:39,382.382 INFO    ] Initializing speech engine...
[2026-10-28 11:50:39,393.393 INFO    ] 2026-10-28 11:50:39
[2026-10-28 11:50:39,681.681 INFO    ] 2026-10-28 11:50:39
[2026-10-28 11:50:39,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:50:40,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:50:40,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:50:40,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:50:40,450.450 INFO    ] time= 28/10/2026 11:50:40
[2026-10-28 11:50:40,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:50:40,576.576 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:50:40,776.776 INFO    ] No existing commands found in stream
[2026-10-28 11:50:45,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:50:45,794.794 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-28 11:50:50,126.126 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:50:50,129.129 INFO    ] Checking for system updates...
[2026-10-28 11:50:50,171.171 INFO    ] 200
[2026-10-28 11:50:50,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:50:50,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:50:50,230.230 INFO    ] No update needed
[2026-10-28 11:50:50,233.233 INFO    ] Checking for camera pi updates...
[2026-10-28 11:50:50,267.267 INFO    ] 200
[2026-10-28 11:50:50,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:50:50,309.309 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:50:50,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:50:50,396.396 INFO    ] No camera update needed
[2026-10-28 11:50:50,398.398 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:50:50,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:50:50,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:50:50,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:50:52,452.452 INFO    ] ================================================
[2026-10-28 11:50:52,467.467 INFO    ] Launching Daemon at Wed Oct 28 11:50:52 IST 2026
[2026-10-28 11:50:52,478.478 INFO    ] ================================================
[2026-10-28 11:50:53,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:50:53
[2026-10-28 11:50:53,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:50:54,070.070 INFO    ] Initializing speech engine...
[2026-10-28 11:50:54,077.077 INFO    ] 2026-10-28 11:50:54
[2026-10-28 11:50:54,339.339 INFO    ] 2026-10-28 11:50:54
[2026-10-28 11:50:54,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:50:54,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:50:54,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:50:54,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:50:54,928.928 INFO    ] time= 28/10/2026 11:50:54
[2026-10-28 11:50:54,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:50:54,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:50:55,066.066 INFO    ] No existing commands found in stream
[2026-10-28 11:51:00,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:51:00,095.095 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 11:51:01,265.265 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:51:01,267.267 INFO    ] Checking for system updates...
[2026-10-28 11:51:01,303.303 INFO    ] 200
[2026-10-28 11:51:01,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:51:01,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:51:01,360.360 INFO    ] No update needed
[2026-10-28 11:51:01,362.362 INFO    ] Checking for camera pi updates...
[2026-10-28 11:51:01,395.395 INFO    ] 200
[2026-10-28 11:51:01,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:51:01,454.454 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:51:01,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:51:01,626.626 INFO    ] No camera update needed
[2026-10-28 11:51:01,629.629 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:51:01,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:51:01,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:51:01,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:51:03,698.698 INFO    ] ================================================
[2026-10-28 11:51:03,713.713 INFO    ] Launching Daemon at Wed Oct 28 11:51:03 IST 2026
[2026-10-28 11:51:03,724.724 INFO    ] ================================================
[2026-10-28 11:51:04,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:51:04
[2026-10-28 11:51:04,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:51:05,163.163 INFO    ] Initializing speech engine...
[2026-10-28 11:51:05,177.177 INFO    ] 2026-10-28 11:51:05
[2026-10-28 11:51:05,467.467 INFO    ] 2026-10-28 11:51:05
[2026-10-28 11:51:05,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:51:05,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:51:05,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:51:06,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:51:06,100.100 INFO    ] time= 28/10/2026 11:51:06
[2026-10-28 11:51:06,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:51:06,126.126 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:51:06,253.253 INFO    ] No existing commands found in stream
[2026-10-28 11:51:11,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:51:11,287.287 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 11:51:15,657.657 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:51:15,659.659 INFO    ] Checking for system updates...
[2026-10-28 11:51:15,698.698 INFO    ] 200
[2026-10-28 11:51:15,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:51:15,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:51:15,757.757 INFO    ] No update needed
[2026-10-28 11:51:15,759.759 INFO    ] Checking for camera pi updates...
[2026-10-28 11:51:15,792.792 INFO    ] 200
[2026-10-28 11:51:15,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:51:15,840.840 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:51:15,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:51:15,930.930 INFO    ] No camera update needed
[2026-10-28 11:51:15,932.932 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:51:15,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:51:15,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:51:15,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:51:17,985.985 INFO    ] ================================================
[2026-10-28 11:51:18,000.000 INFO    ] Launching Daemon at Wed Oct 28 11:51:17 IST 2026
[2026-10-28 11:51:18,010.010 INFO    ] ================================================
[2026-10-28 11:51:18,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:51:18
[2026-10-28 11:51:19,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:51:19,429.429 INFO    ] Initializing speech engine...
[2026-10-28 11:51:19,439.439 INFO    ] 2026-10-28 11:51:19
[2026-10-28 11:51:19,736.736 INFO    ] 2026-10-28 11:51:19
[2026-10-28 11:51:19,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:51:20,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:51:20,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:51:20,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:51:20,376.376 INFO    ] time= 28/10/2026 11:51:20
[2026-10-28 11:51:20,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:51:20,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:51:20,557.557 INFO    ] No existing commands found in stream
[2026-10-28 11:51:25,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:51:25,572.572 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 11:51:29,505.505 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:51:29,507.507 INFO    ] Checking for system updates...
[2026-10-28 11:51:29,543.543 INFO    ] 200
[2026-10-28 11:51:29,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:51:29,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:51:29,604.604 INFO    ] No update needed
[2026-10-28 11:51:29,606.606 INFO    ] Checking for camera pi updates...
[2026-10-28 11:51:29,640.640 INFO    ] 200
[2026-10-28 11:51:29,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:51:29,688.688 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:51:29,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:51:29,796.796 INFO    ] No camera update needed
[2026-10-28 11:51:29,799.799 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:51:29,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:51:29,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:51:29,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:51:31,852.852 INFO    ] ================================================
[2026-10-28 11:51:31,868.868 INFO    ] Launching Daemon at Wed Oct 28 11:51:31 IST 2026
[2026-10-28 11:51:31,879.879 INFO    ] ================================================
[2026-10-28 11:51:32,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:51:32
[2026-10-28 11:51:33,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:51:33,554.554 INFO    ] Initializing speech engine...
[2026-10-28 11:51:33,565.565 INFO    ] 2026-10-28 11:51:33
[2026-10-28 11:51:33,829.829 INFO    ] 2026-10-28 11:51:33
[2026-10-28 11:51:33,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:51:34,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:51:34,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:51:34,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:51:34,438.438 INFO    ] time= 28/10/2026 11:51:34
[2026-10-28 11:51:34,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:51:34,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:51:34,611.611 INFO    ] No existing commands found in stream
[2026-10-28 11:51:39,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:51:39,630.630 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-28 11:51:43,187.187 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:51:43,190.190 INFO    ] Checking for system updates...
[2026-10-28 11:51:43,228.228 INFO    ] 200
[2026-10-28 11:51:43,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:51:43,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:51:43,294.294 INFO    ] No update needed
[2026-10-28 11:51:43,297.297 INFO    ] Checking for camera pi updates...
[2026-10-28 11:51:43,336.336 INFO    ] 200
[2026-10-28 11:51:43,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:51:43,391.391 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:51:43,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:51:43,494.494 INFO    ] No camera update needed
[2026-10-28 11:51:43,497.497 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:51:43,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:51:43,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:51:43,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:51:45,555.555 INFO    ] ================================================
[2026-10-28 11:51:45,570.570 INFO    ] Launching Daemon at Wed Oct 28 11:51:45 IST 2026
[2026-10-28 11:51:45,581.581 INFO    ] ================================================
[2026-10-28 11:51:46,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:51:46
[2026-10-28 11:51:46,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:51:46,996.996 INFO    ] Initializing speech engine...
[2026-10-28 11:51:47,006.006 INFO    ] 2026-10-28 11:51:47
[2026-10-28 11:51:47,250.250 INFO    ] 2026-10-28 11:51:47
[2026-10-28 11:51:47,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:51:47,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:51:47,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:51:47,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:51:47,999.999 INFO    ] time= 28/10/2026 11:51:47
[2026-10-28 11:51:48,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:51:48,089.089 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:51:48,347.347 INFO    ] No existing commands found in stream
[2026-10-28 11:51:53,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:51:53,380.380 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-28 11:51:54,231.231 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:51:54,234.234 INFO    ] Checking for system updates...
[2026-10-28 11:51:54,270.270 INFO    ] 200
[2026-10-28 11:51:54,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:51:54,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:51:54,327.327 INFO    ] No update needed
[2026-10-28 11:51:54,330.330 INFO    ] Checking for camera pi updates...
[2026-10-28 11:51:54,367.367 INFO    ] 200
[2026-10-28 11:51:54,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:51:54,409.409 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:51:54,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:51:54,605.605 INFO    ] No camera update needed
[2026-10-28 11:51:54,608.608 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:51:54,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:51:54,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:51:54,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:51:56,662.662 INFO    ] ================================================
[2026-10-28 11:51:56,678.678 INFO    ] Launching Daemon at Wed Oct 28 11:51:56 IST 2026
[2026-10-28 11:51:56,689.689 INFO    ] ================================================
[2026-10-28 11:51:57,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:51:57
[2026-10-28 11:51:57,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:51:58,093.093 INFO    ] Initializing speech engine...
[2026-10-28 11:51:58,116.116 INFO    ] 2026-10-28 11:51:58
[2026-10-28 11:51:58,370.370 INFO    ] 2026-10-28 11:51:58
[2026-10-28 11:51:58,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:51:58,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:51:58,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:51:58,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:51:58,966.966 INFO    ] time= 28/10/2026 11:51:58
[2026-10-28 11:51:58,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:51:58,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:51:59,158.158 INFO    ] No existing commands found in stream
[2026-10-28 11:52:04,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:52:04,195.195 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 11:52:07,441.441 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:52:07,444.444 INFO    ] Checking for system updates...
[2026-10-28 11:52:07,480.480 INFO    ] 200
[2026-10-28 11:52:07,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:52:07,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:52:07,538.538 INFO    ] No update needed
[2026-10-28 11:52:07,540.540 INFO    ] Checking for camera pi updates...
[2026-10-28 11:52:07,574.574 INFO    ] 200
[2026-10-28 11:52:07,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:52:07,617.617 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:52:07,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:52:07,700.700 INFO    ] No camera update needed
[2026-10-28 11:52:07,703.703 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:52:07,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:52:07,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:52:07,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:52:09,759.759 INFO    ] ================================================
[2026-10-28 11:52:09,775.775 INFO    ] Launching Daemon at Wed Oct 28 11:52:09 IST 2026
[2026-10-28 11:52:09,786.786 INFO    ] ================================================
[2026-10-28 11:52:10,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:52:10
[2026-10-28 11:52:10,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:52:11,181.181 INFO    ] Initializing speech engine...
[2026-10-28 11:52:11,188.188 INFO    ] 2026-10-28 11:52:11
[2026-10-28 11:52:11,471.471 INFO    ] 2026-10-28 11:52:11
[2026-10-28 11:52:11,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:52:11,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:52:11,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:52:12,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:52:12,082.082 INFO    ] time= 28/10/2026 11:52:12
[2026-10-28 11:52:12,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:52:12,098.098 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:52:12,227.227 INFO    ] No existing commands found in stream
[2026-10-28 11:52:17,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:52:17,239.239 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 11:52:18,000.000 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:52:18,003.003 INFO    ] Checking for system updates...
[2026-10-28 11:52:18,039.039 INFO    ] 200
[2026-10-28 11:52:18,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:52:18,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:52:18,102.102 INFO    ] No update needed
[2026-10-28 11:52:18,105.105 INFO    ] Checking for camera pi updates...
[2026-10-28 11:52:18,142.142 INFO    ] 200
[2026-10-28 11:52:18,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:52:18,190.190 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:52:18,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:52:18,301.301 INFO    ] No camera update needed
[2026-10-28 11:52:18,303.303 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:52:18,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:52:18,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:52:18,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:52:20,359.359 INFO    ] ================================================
[2026-10-28 11:52:20,376.376 INFO    ] Launching Daemon at Wed Oct 28 11:52:20 IST 2026
[2026-10-28 11:52:20,387.387 INFO    ] ================================================
[2026-10-28 11:52:20,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:52:20
[2026-10-28 11:52:21,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:52:21,977.977 INFO    ] Initializing speech engine...
[2026-10-28 11:52:21,987.987 INFO    ] 2026-10-28 11:52:21
[2026-10-28 11:52:22,258.258 INFO    ] 2026-10-28 11:52:22
[2026-10-28 11:52:22,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:52:22,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:52:22,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:52:22,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:52:22,841.841 INFO    ] time= 28/10/2026 11:52:22
[2026-10-28 11:52:22,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:52:22,876.876 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:52:23,040.040 INFO    ] No existing commands found in stream
[2026-10-28 11:52:28,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:52:28,074.074 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-28 11:52:30,378.378 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:52:30,380.380 INFO    ] Checking for system updates...
[2026-10-28 11:52:30,417.417 INFO    ] 200
[2026-10-28 11:52:30,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:52:30,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:52:30,482.482 INFO    ] No update needed
[2026-10-28 11:52:30,485.485 INFO    ] Checking for camera pi updates...
[2026-10-28 11:52:30,518.518 INFO    ] 200
[2026-10-28 11:52:30,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:52:30,561.561 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:52:30,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:52:30,644.644 INFO    ] No camera update needed
[2026-10-28 11:52:30,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:52:30,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:52:30,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:52:30,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:52:32,703.703 INFO    ] ================================================
[2026-10-28 11:52:32,721.721 INFO    ] Launching Daemon at Wed Oct 28 11:52:32 IST 2026
[2026-10-28 11:52:32,734.734 INFO    ] ================================================
[2026-10-28 11:52:33,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:52:33
[2026-10-28 11:52:33,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:52:34,174.174 INFO    ] Initializing speech engine...
[2026-10-28 11:52:34,180.180 INFO    ] 2026-10-28 11:52:34
[2026-10-28 11:52:34,486.486 INFO    ] 2026-10-28 11:52:34
[2026-10-28 11:52:34,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:52:35,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:52:35,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:52:36,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:52:36,241.241 INFO    ] time= 28/10/2026 11:52:36
[2026-10-28 11:52:36,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:52:36,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:52:36,437.437 INFO    ] No existing commands found in stream
[2026-10-28 11:52:41,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:52:41,450.450 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 11:52:43,259.259 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:52:43,262.262 INFO    ] Checking for system updates...
[2026-10-28 11:52:43,298.298 INFO    ] 200
[2026-10-28 11:52:43,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:52:43,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:52:43,362.362 INFO    ] No update needed
[2026-10-28 11:52:43,364.364 INFO    ] Checking for camera pi updates...
[2026-10-28 11:52:43,397.397 INFO    ] 200
[2026-10-28 11:52:43,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:52:43,440.440 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:52:43,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:52:43,522.522 INFO    ] No camera update needed
[2026-10-28 11:52:43,525.525 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:52:43,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:52:43,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:52:43,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:52:45,580.580 INFO    ] ================================================
[2026-10-28 11:52:45,596.596 INFO    ] Launching Daemon at Wed Oct 28 11:52:45 IST 2026
[2026-10-28 11:52:45,607.607 INFO    ] ================================================
[2026-10-28 11:52:46,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:52:46
[2026-10-28 11:52:46,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:52:47,042.042 INFO    ] Initializing speech engine...
[2026-10-28 11:52:47,049.049 INFO    ] 2026-10-28 11:52:47
[2026-10-28 11:52:47,293.293 INFO    ] 2026-10-28 11:52:47
[2026-10-28 11:52:47,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:52:47,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:52:47,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:52:47,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:52:47,854.854 INFO    ] time= 28/10/2026 11:52:47
[2026-10-28 11:52:47,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:52:47,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:52:48,066.066 INFO    ] No existing commands found in stream
[2026-10-28 11:52:53,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:52:53,089.089 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 11:53:01,145.145 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:53:01,148.148 INFO    ] Checking for system updates...
[2026-10-28 11:53:01,188.188 INFO    ] 200
[2026-10-28 11:53:01,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:53:01,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:53:01,252.252 INFO    ] No update needed
[2026-10-28 11:53:01,255.255 INFO    ] Checking for camera pi updates...
[2026-10-28 11:53:01,292.292 INFO    ] 200
[2026-10-28 11:53:01,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:53:01,336.336 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:53:01,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:53:01,445.445 INFO    ] No camera update needed
[2026-10-28 11:53:01,447.447 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:53:01,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:53:01,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:53:01,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:53:03,500.500 INFO    ] ================================================
[2026-10-28 11:53:03,515.515 INFO    ] Launching Daemon at Wed Oct 28 11:53:03 IST 2026
[2026-10-28 11:53:03,525.525 INFO    ] ================================================
[2026-10-28 11:53:04,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:53:04
[2026-10-28 11:53:04,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:53:05,078.078 INFO    ] Initializing speech engine...
[2026-10-28 11:53:05,091.091 INFO    ] 2026-10-28 11:53:05
[2026-10-28 11:53:05,373.373 INFO    ] 2026-10-28 11:53:05
[2026-10-28 11:53:05,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:53:05,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:53:05,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:53:06,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:53:06,358.358 INFO    ] time= 28/10/2026 11:53:06
[2026-10-28 11:53:06,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:53:06,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:53:06,544.544 INFO    ] No existing commands found in stream
[2026-10-28 11:53:11,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:53:11,558.558 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-28 11:53:13,028.028 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:53:13,031.031 INFO    ] Checking for system updates...
[2026-10-28 11:53:13,072.072 INFO    ] 200
[2026-10-28 11:53:13,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:53:13,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:53:13,131.131 INFO    ] No update needed
[2026-10-28 11:53:13,134.134 INFO    ] Checking for camera pi updates...
[2026-10-28 11:53:13,168.168 INFO    ] 200
[2026-10-28 11:53:13,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:53:13,218.218 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:53:13,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:53:13,306.306 INFO    ] No camera update needed
[2026-10-28 11:53:13,308.308 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:53:13,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:53:13,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:53:13,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:53:15,362.362 INFO    ] ================================================
[2026-10-28 11:53:15,377.377 INFO    ] Launching Daemon at Wed Oct 28 11:53:15 IST 2026
[2026-10-28 11:53:15,388.388 INFO    ] ================================================
[2026-10-28 11:53:15,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:53:15
[2026-10-28 11:53:16,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:53:16,812.812 INFO    ] Initializing speech engine...
[2026-10-28 11:53:16,822.822 INFO    ] 2026-10-28 11:53:16
[2026-10-28 11:53:17,071.071 INFO    ] 2026-10-28 11:53:17
[2026-10-28 11:53:17,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:53:17,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:53:17,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:53:17,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:53:17,642.642 INFO    ] time= 28/10/2026 11:53:17
[2026-10-28 11:53:17,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:53:17,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:53:17,814.814 INFO    ] No existing commands found in stream
[2026-10-28 11:53:22,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:53:22,847.847 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-28 11:53:24,439.439 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:53:24,441.441 INFO    ] Checking for system updates...
[2026-10-28 11:53:24,481.481 INFO    ] 200
[2026-10-28 11:53:24,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:53:24,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:53:24,538.538 INFO    ] No update needed
[2026-10-28 11:53:24,540.540 INFO    ] Checking for camera pi updates...
[2026-10-28 11:53:24,578.578 INFO    ] 200
[2026-10-28 11:53:24,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:53:24,622.622 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:53:24,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:53:24,699.699 INFO    ] No camera update needed
[2026-10-28 11:53:24,701.701 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:53:24,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:53:24,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:53:24,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:53:26,755.755 INFO    ] ================================================
[2026-10-28 11:53:26,770.770 INFO    ] Launching Daemon at Wed Oct 28 11:53:26 IST 2026
[2026-10-28 11:53:26,780.780 INFO    ] ================================================
[2026-10-28 11:53:27,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:53:27
[2026-10-28 11:53:27,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:53:28,213.213 INFO    ] Initializing speech engine...
[2026-10-28 11:53:28,234.234 INFO    ] 2026-10-28 11:53:28
[2026-10-28 11:53:28,501.501 INFO    ] 2026-10-28 11:53:28
[2026-10-28 11:53:28,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:53:28,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:53:28,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:53:29,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:53:29,206.206 INFO    ] time= 28/10/2026 11:53:29
[2026-10-28 11:53:29,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:53:29,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:53:29,400.400 INFO    ] No existing commands found in stream
[2026-10-28 11:53:34,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:53:34,433.433 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-28 11:53:35,339.339 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:53:35,342.342 INFO    ] Checking for system updates...
[2026-10-28 11:53:35,381.381 INFO    ] 200
[2026-10-28 11:53:35,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:53:35,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:53:35,446.446 INFO    ] No update needed
[2026-10-28 11:53:35,449.449 INFO    ] Checking for camera pi updates...
[2026-10-28 11:53:35,482.482 INFO    ] 200
[2026-10-28 11:53:35,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:53:35,525.525 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:53:35,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:53:35,606.606 INFO    ] No camera update needed
[2026-10-28 11:53:35,609.609 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:53:35,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:53:35,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:53:35,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:53:37,665.665 INFO    ] ================================================
[2026-10-28 11:53:37,680.680 INFO    ] Launching Daemon at Wed Oct 28 11:53:37 IST 2026
[2026-10-28 11:53:37,691.691 INFO    ] ================================================
[2026-10-28 11:53:38,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:53:38
[2026-10-28 11:53:38,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:53:39,095.095 INFO    ] Initializing speech engine...
[2026-10-28 11:53:39,101.101 INFO    ] 2026-10-28 11:53:39
[2026-10-28 11:53:39,415.415 INFO    ] 2026-10-28 11:53:39
[2026-10-28 11:53:39,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:53:39,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:53:39,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:53:40,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:53:40,051.051 INFO    ] time= 28/10/2026 11:53:40
[2026-10-28 11:53:40,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:53:40,060.060 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:53:40,190.190 INFO    ] No existing commands found in stream
[2026-10-28 11:53:45,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:53:45,216.216 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 11:53:46,422.422 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:53:46,425.425 INFO    ] Checking for system updates...
[2026-10-28 11:53:46,468.468 INFO    ] 200
[2026-10-28 11:53:46,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:53:46,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:53:46,527.527 INFO    ] No update needed
[2026-10-28 11:53:46,529.529 INFO    ] Checking for camera pi updates...
[2026-10-28 11:53:46,564.564 INFO    ] 200
[2026-10-28 11:53:46,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:53:46,608.608 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:53:46,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:53:46,702.702 INFO    ] No camera update needed
[2026-10-28 11:53:46,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:53:46,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:53:46,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:53:46,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:53:48,760.760 INFO    ] ================================================
[2026-10-28 11:53:48,775.775 INFO    ] Launching Daemon at Wed Oct 28 11:53:48 IST 2026
[2026-10-28 11:53:48,786.786 INFO    ] ================================================
[2026-10-28 11:53:49,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:53:49
[2026-10-28 11:53:50,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:53:50,428.428 INFO    ] Initializing speech engine...
[2026-10-28 11:53:50,443.443 INFO    ] 2026-10-28 11:53:50
[2026-10-28 11:53:50,718.718 INFO    ] 2026-10-28 11:53:50
[2026-10-28 11:53:50,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:53:51,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:53:51,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:53:51,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:53:51,328.328 INFO    ] time= 28/10/2026 11:53:51
[2026-10-28 11:53:51,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:53:51,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:53:51,537.537 INFO    ] No existing commands found in stream
[2026-10-28 11:53:56,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:53:56,566.566 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-28 11:53:57,300.300 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:53:57,303.303 INFO    ] Checking for system updates...
[2026-10-28 11:53:57,339.339 INFO    ] 200
[2026-10-28 11:53:57,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:53:57,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:53:57,406.406 INFO    ] No update needed
[2026-10-28 11:53:57,409.409 INFO    ] Checking for camera pi updates...
[2026-10-28 11:53:57,444.444 INFO    ] 200
[2026-10-28 11:53:57,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:53:57,493.493 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:53:57,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:53:57,691.691 INFO    ] No camera update needed
[2026-10-28 11:53:57,694.694 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:53:57,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:53:57,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:53:57,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:53:59,751.751 INFO    ] ================================================
[2026-10-28 11:53:59,766.766 INFO    ] Launching Daemon at Wed Oct 28 11:53:59 IST 2026
[2026-10-28 11:53:59,776.776 INFO    ] ================================================
[2026-10-28 11:54:00,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:54:00
[2026-10-28 11:54:00,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:54:01,199.199 INFO    ] Initializing speech engine...
[2026-10-28 11:54:01,205.205 INFO    ] 2026-10-28 11:54:01
[2026-10-28 11:54:01,502.502 INFO    ] 2026-10-28 11:54:01
[2026-10-28 11:54:01,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:54:01,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:54:01,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:54:02,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:54:02,097.097 INFO    ] time= 28/10/2026 11:54:02
[2026-10-28 11:54:02,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:54:02,103.103 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:54:02,251.251 INFO    ] No existing commands found in stream
[2026-10-28 11:54:07,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:54:07,268.268 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-28 11:54:11,240.240 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:54:11,243.243 INFO    ] Checking for system updates...
[2026-10-28 11:54:11,282.282 INFO    ] 200
[2026-10-28 11:54:11,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:54:11,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:54:11,345.345 INFO    ] No update needed
[2026-10-28 11:54:11,348.348 INFO    ] Checking for camera pi updates...
[2026-10-28 11:54:11,382.382 INFO    ] 200
[2026-10-28 11:54:11,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:54:11,426.426 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:54:11,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:54:11,525.525 INFO    ] No camera update needed
[2026-10-28 11:54:11,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:54:11,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:54:11,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:54:11,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:54:13,582.582 INFO    ] ================================================
[2026-10-28 11:54:13,597.597 INFO    ] Launching Daemon at Wed Oct 28 11:54:13 IST 2026
[2026-10-28 11:54:13,608.608 INFO    ] ================================================
[2026-10-28 11:54:14,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:54:14
[2026-10-28 11:54:14,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:54:15,051.051 INFO    ] Initializing speech engine...
[2026-10-28 11:54:15,071.071 INFO    ] 2026-10-28 11:54:15
[2026-10-28 11:54:15,331.331 INFO    ] 2026-10-28 11:54:15
[2026-10-28 11:54:15,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:54:15,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:54:15,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:54:15,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:54:15,889.889 INFO    ] time= 28/10/2026 11:54:15
[2026-10-28 11:54:15,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:54:15,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:54:16,074.074 INFO    ] No existing commands found in stream
[2026-10-28 11:54:21,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:54:21,107.107 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-28 11:54:25,144.144 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:54:25,147.147 INFO    ] Checking for system updates...
[2026-10-28 11:54:25,182.182 INFO    ] 200
[2026-10-28 11:54:25,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:54:25,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:54:25,243.243 INFO    ] No update needed
[2026-10-28 11:54:25,245.245 INFO    ] Checking for camera pi updates...
[2026-10-28 11:54:25,278.278 INFO    ] 200
[2026-10-28 11:54:25,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:54:25,324.324 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:54:25,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:54:25,410.410 INFO    ] No camera update needed
[2026-10-28 11:54:25,412.412 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:54:25,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:54:25,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:54:25,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:54:27,463.463 INFO    ] ================================================
[2026-10-28 11:54:27,479.479 INFO    ] Launching Daemon at Wed Oct 28 11:54:27 IST 2026
[2026-10-28 11:54:27,489.489 INFO    ] ================================================
[2026-10-28 11:54:28,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:54:28
[2026-10-28 11:54:28,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:54:28,984.984 INFO    ] Initializing speech engine...
[2026-10-28 11:54:28,996.996 INFO    ] 2026-10-28 11:54:28
[2026-10-28 11:54:29,267.267 INFO    ] 2026-10-28 11:54:29
[2026-10-28 11:54:29,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:54:29,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:54:29,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:54:29,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:54:30,000.000 INFO    ] time= 28/10/2026 11:54:29
[2026-10-28 11:54:30,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:54:30,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:54:30,238.238 INFO    ] No existing commands found in stream
[2026-10-28 11:54:35,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:54:35,269.269 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-28 11:54:36,544.544 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:54:36,547.547 INFO    ] Checking for system updates...
[2026-10-28 11:54:36,589.589 INFO    ] 200
[2026-10-28 11:54:36,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:54:36,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:54:36,652.652 INFO    ] No update needed
[2026-10-28 11:54:36,656.656 INFO    ] Checking for camera pi updates...
[2026-10-28 11:54:36,694.694 INFO    ] 200
[2026-10-28 11:54:36,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:54:36,738.738 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:54:36,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:54:36,825.825 INFO    ] No camera update needed
[2026-10-28 11:54:36,828.828 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:54:36,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:54:36,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:54:36,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:54:38,879.879 INFO    ] ================================================
[2026-10-28 11:54:38,894.894 INFO    ] Launching Daemon at Wed Oct 28 11:54:38 IST 2026
[2026-10-28 11:54:38,904.904 INFO    ] ================================================
[2026-10-28 11:54:39,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:54:39
[2026-10-28 11:54:40,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:54:40,349.349 INFO    ] Initializing speech engine...
[2026-10-28 11:54:40,358.358 INFO    ] 2026-10-28 11:54:40
[2026-10-28 11:54:40,607.607 INFO    ] 2026-10-28 11:54:40
[2026-10-28 11:54:40,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:54:40,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:54:40,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:54:41,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:54:41,160.160 INFO    ] time= 28/10/2026 11:54:41
[2026-10-28 11:54:41,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:54:41,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:54:41,367.367 INFO    ] No existing commands found in stream
[2026-10-28 11:54:46,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:54:46,395.395 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-28 11:54:50,341.341 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:54:50,344.344 INFO    ] Checking for system updates...
[2026-10-28 11:54:50,379.379 INFO    ] 200
[2026-10-28 11:54:50,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:54:50,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:54:50,436.436 INFO    ] No update needed
[2026-10-28 11:54:50,438.438 INFO    ] Checking for camera pi updates...
[2026-10-28 11:54:50,472.472 INFO    ] 200
[2026-10-28 11:54:50,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:54:50,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:54:50,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:54:50,602.602 INFO    ] No camera update needed
[2026-10-28 11:54:50,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:54:50,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:54:50,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:54:50,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:54:52,656.656 INFO    ] ================================================
[2026-10-28 11:54:52,671.671 INFO    ] Launching Daemon at Wed Oct 28 11:54:52 IST 2026
[2026-10-28 11:54:52,682.682 INFO    ] ================================================
[2026-10-28 11:54:53,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:54:53
[2026-10-28 11:54:53,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:54:54,132.132 INFO    ] Initializing speech engine...
[2026-10-28 11:54:54,142.142 INFO    ] 2026-10-28 11:54:54
[2026-10-28 11:54:54,404.404 INFO    ] 2026-10-28 11:54:54
[2026-10-28 11:54:54,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:54:54,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:54:54,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:54:55,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:54:55,113.113 INFO    ] time= 28/10/2026 11:54:55
[2026-10-28 11:54:55,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:54:55,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:54:55,354.354 INFO    ] No existing commands found in stream
[2026-10-28 11:55:00,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:55:00,388.388 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-28 11:55:03,978.978 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:55:03,981.981 INFO    ] Checking for system updates...
[2026-10-28 11:55:04,017.017 INFO    ] 200
[2026-10-28 11:55:04,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:55:04,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:55:04,074.074 INFO    ] No update needed
[2026-10-28 11:55:04,076.076 INFO    ] Checking for camera pi updates...
[2026-10-28 11:55:04,109.109 INFO    ] 200
[2026-10-28 11:55:04,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:55:04,157.157 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:55:04,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:55:04,244.244 INFO    ] No camera update needed
[2026-10-28 11:55:04,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:55:04,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:55:04,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:55:04,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:55:06,301.301 INFO    ] ================================================
[2026-10-28 11:55:06,316.316 INFO    ] Launching Daemon at Wed Oct 28 11:55:06 IST 2026
[2026-10-28 11:55:06,326.326 INFO    ] ================================================
[2026-10-28 11:55:06,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:55:06
[2026-10-28 11:55:07,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:55:07,740.740 INFO    ] Initializing speech engine...
[2026-10-28 11:55:07,749.749 INFO    ] 2026-10-28 11:55:07
[2026-10-28 11:55:07,993.993 INFO    ] 2026-10-28 11:55:07
[2026-10-28 11:55:08,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:55:08,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:55:08,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:55:08,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:55:08,548.548 INFO    ] time= 28/10/2026 11:55:08
[2026-10-28 11:55:08,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:55:08,583.583 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:55:08,706.706 INFO    ] No existing commands found in stream
[2026-10-28 11:55:13,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:55:13,738.738 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-28 11:55:16,776.776 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:55:16,779.779 INFO    ] Checking for system updates...
[2026-10-28 11:55:16,815.815 INFO    ] 200
[2026-10-28 11:55:16,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:55:16,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:55:16,877.877 INFO    ] No update needed
[2026-10-28 11:55:16,879.879 INFO    ] Checking for camera pi updates...
[2026-10-28 11:55:16,913.913 INFO    ] 200
[2026-10-28 11:55:16,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:55:16,956.956 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:55:17,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:55:17,047.047 INFO    ] No camera update needed
[2026-10-28 11:55:17,049.049 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:55:17,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:55:17,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:55:17,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:55:19,103.103 INFO    ] ================================================
[2026-10-28 11:55:19,118.118 INFO    ] Launching Daemon at Wed Oct 28 11:55:19 IST 2026
[2026-10-28 11:55:19,128.128 INFO    ] ================================================
[2026-10-28 11:55:19,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:55:19
[2026-10-28 11:55:20,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:55:20,625.625 INFO    ] Initializing speech engine...
[2026-10-28 11:55:20,633.633 INFO    ] 2026-10-28 11:55:20
[2026-10-28 11:55:20,892.892 INFO    ] 2026-10-28 11:55:20
[2026-10-28 11:55:20,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:55:21,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:55:21,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:55:21,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:55:21,480.480 INFO    ] time= 28/10/2026 11:55:21
[2026-10-28 11:55:21,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:55:21,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:55:21,646.646 INFO    ] No existing commands found in stream
[2026-10-28 11:55:26,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:55:26,674.674 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 11:55:30,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:55:30,471.471 INFO    ] Checking for system updates...
[2026-10-28 11:55:30,507.507 INFO    ] 200
[2026-10-28 11:55:30,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:55:30,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:55:30,566.566 INFO    ] No update needed
[2026-10-28 11:55:30,568.568 INFO    ] Checking for camera pi updates...
[2026-10-28 11:55:30,606.606 INFO    ] 200
[2026-10-28 11:55:30,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:55:30,658.658 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:55:30,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:55:30,744.744 INFO    ] No camera update needed
[2026-10-28 11:55:30,746.746 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:55:30,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:55:30,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:55:30,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:55:32,801.801 INFO    ] ================================================
[2026-10-28 11:55:32,817.817 INFO    ] Launching Daemon at Wed Oct 28 11:55:32 IST 2026
[2026-10-28 11:55:32,827.827 INFO    ] ================================================
[2026-10-28 11:55:33,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:55:33
[2026-10-28 11:55:33,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:55:34,244.244 INFO    ] Initializing speech engine...
[2026-10-28 11:55:34,253.253 INFO    ] 2026-10-28 11:55:34
[2026-10-28 11:55:34,501.501 INFO    ] 2026-10-28 11:55:34
[2026-10-28 11:55:34,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:55:34,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:55:34,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:55:35,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:55:35,215.215 INFO    ] time= 28/10/2026 11:55:35
[2026-10-28 11:55:35,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:55:35,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:55:35,456.456 INFO    ] No existing commands found in stream
[2026-10-28 11:55:40,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:55:40,477.477 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 11:55:43,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:55:43,108.108 INFO    ] Checking for system updates...
[2026-10-28 11:55:43,144.144 INFO    ] 200
[2026-10-28 11:55:43,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:55:43,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:55:43,201.201 INFO    ] No update needed
[2026-10-28 11:55:43,203.203 INFO    ] Checking for camera pi updates...
[2026-10-28 11:55:43,240.240 INFO    ] 200
[2026-10-28 11:55:43,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:55:43,283.283 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:55:43,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:55:43,367.367 INFO    ] No camera update needed
[2026-10-28 11:55:43,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:55:43,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:55:43,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:55:43,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:55:45,421.421 INFO    ] ================================================
[2026-10-28 11:55:45,437.437 INFO    ] Launching Daemon at Wed Oct 28 11:55:45 IST 2026
[2026-10-28 11:55:45,449.449 INFO    ] ================================================
[2026-10-28 11:55:46,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:55:46
[2026-10-28 11:55:46,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:55:46,977.977 INFO    ] Initializing speech engine...
[2026-10-28 11:55:46,986.986 INFO    ] 2026-10-28 11:55:46
[2026-10-28 11:55:47,231.231 INFO    ] 2026-10-28 11:55:47
[2026-10-28 11:55:47,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:55:47,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:55:47,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:55:47,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:55:47,791.791 INFO    ] time= 28/10/2026 11:55:47
[2026-10-28 11:55:47,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:55:47,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:55:47,970.970 INFO    ] No existing commands found in stream
[2026-10-28 11:55:53,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:55:53,003.003 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 11:55:54,559.559 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:55:54,562.562 INFO    ] Checking for system updates...
[2026-10-28 11:55:54,598.598 INFO    ] 200
[2026-10-28 11:55:54,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:55:54,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:55:54,658.658 INFO    ] No update needed
[2026-10-28 11:55:54,660.660 INFO    ] Checking for camera pi updates...
[2026-10-28 11:55:54,697.697 INFO    ] 200
[2026-10-28 11:55:54,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:55:54,739.739 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:55:54,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:55:54,866.866 INFO    ] No camera update needed
[2026-10-28 11:55:54,868.868 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:55:54,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:55:54,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:55:54,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:55:56,922.922 INFO    ] ================================================
[2026-10-28 11:55:56,939.939 INFO    ] Launching Daemon at Wed Oct 28 11:55:56 IST 2026
[2026-10-28 11:55:56,949.949 INFO    ] ================================================
[2026-10-28 11:55:57,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:55:57
[2026-10-28 11:55:58,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:55:58,428.428 INFO    ] Initializing speech engine...
[2026-10-28 11:55:58,451.451 INFO    ] 2026-10-28 11:55:58
[2026-10-28 11:55:58,704.704 INFO    ] 2026-10-28 11:55:58
[2026-10-28 11:55:58,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:55:59,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:55:59,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:55:59,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:55:59,286.286 INFO    ] time= 28/10/2026 11:55:59
[2026-10-28 11:55:59,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:55:59,321.321 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:55:59,496.496 INFO    ] No existing commands found in stream
[2026-10-28 11:56:04,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:56:04,529.529 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 11:56:08,320.320 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:56:08,323.323 INFO    ] Checking for system updates...
[2026-10-28 11:56:08,359.359 INFO    ] 200
[2026-10-28 11:56:08,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:56:08,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:56:08,424.424 INFO    ] No update needed
[2026-10-28 11:56:08,426.426 INFO    ] Checking for camera pi updates...
[2026-10-28 11:56:08,459.459 INFO    ] 200
[2026-10-28 11:56:08,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:56:08,502.502 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:56:08,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:56:08,594.594 INFO    ] No camera update needed
[2026-10-28 11:56:08,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:56:08,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:56:08,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:56:08,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:56:10,649.649 INFO    ] ================================================
[2026-10-28 11:56:10,664.664 INFO    ] Launching Daemon at Wed Oct 28 11:56:10 IST 2026
[2026-10-28 11:56:10,676.676 INFO    ] ================================================
[2026-10-28 11:56:11,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:56:11
[2026-10-28 11:56:11,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:56:12,130.130 INFO    ] Initializing speech engine...
[2026-10-28 11:56:12,137.137 INFO    ] 2026-10-28 11:56:12
[2026-10-28 11:56:12,395.395 INFO    ] 2026-10-28 11:56:12
[2026-10-28 11:56:12,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:56:12,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:56:12,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:56:12,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:56:12,978.978 INFO    ] time= 28/10/2026 11:56:12
[2026-10-28 11:56:12,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:56:12,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:56:13,115.115 INFO    ] No existing commands found in stream
[2026-10-28 11:56:18,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:56:18,148.148 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 11:56:19,620.620 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:56:19,622.622 INFO    ] Checking for system updates...
[2026-10-28 11:56:19,658.658 INFO    ] 200
[2026-10-28 11:56:19,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:56:19,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:56:19,721.721 INFO    ] No update needed
[2026-10-28 11:56:19,723.723 INFO    ] Checking for camera pi updates...
[2026-10-28 11:56:19,759.759 INFO    ] 200
[2026-10-28 11:56:19,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:56:19,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:56:19,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:56:19,893.893 INFO    ] No camera update needed
[2026-10-28 11:56:19,896.896 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:56:19,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:56:19,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:56:19,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:56:21,949.949 INFO    ] ================================================
[2026-10-28 11:56:21,964.964 INFO    ] Launching Daemon at Wed Oct 28 11:56:21 IST 2026
[2026-10-28 11:56:21,975.975 INFO    ] ================================================
[2026-10-28 11:56:22,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:56:22
[2026-10-28 11:56:23,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:56:23,431.431 INFO    ] Initializing speech engine...
[2026-10-28 11:56:23,438.438 INFO    ] 2026-10-28 11:56:23
[2026-10-28 11:56:23,692.692 INFO    ] 2026-10-28 11:56:23
[2026-10-28 11:56:23,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:56:23,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:56:23,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:56:24,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:56:24,251.251 INFO    ] time= 28/10/2026 11:56:24
[2026-10-28 11:56:24,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:56:24,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:56:24,430.430 INFO    ] No existing commands found in stream
[2026-10-28 11:56:29,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:56:29,458.458 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-28 11:56:30,497.497 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:56:30,499.499 INFO    ] Checking for system updates...
[2026-10-28 11:56:30,535.535 INFO    ] 200
[2026-10-28 11:56:30,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:56:30,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:56:30,597.597 INFO    ] No update needed
[2026-10-28 11:56:30,599.599 INFO    ] Checking for camera pi updates...
[2026-10-28 11:56:30,633.633 INFO    ] 200
[2026-10-28 11:56:30,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:56:30,676.676 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:56:30,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:56:30,760.760 INFO    ] No camera update needed
[2026-10-28 11:56:30,762.762 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:56:30,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:56:30,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:56:30,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:56:32,819.819 INFO    ] ================================================
[2026-10-28 11:56:32,835.835 INFO    ] Launching Daemon at Wed Oct 28 11:56:32 IST 2026
[2026-10-28 11:56:32,846.846 INFO    ] ================================================
[2026-10-28 11:56:33,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:56:33
[2026-10-28 11:56:34,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:56:34,418.418 INFO    ] Initializing speech engine...
[2026-10-28 11:56:34,430.430 INFO    ] 2026-10-28 11:56:34
[2026-10-28 11:56:34,706.706 INFO    ] 2026-10-28 11:56:34
[2026-10-28 11:56:34,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:56:35,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:56:35,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:56:35,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:56:35,532.532 INFO    ] time= 28/10/2026 11:56:35
[2026-10-28 11:56:35,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:56:35,629.629 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:56:35,802.802 INFO    ] No existing commands found in stream
[2026-10-28 11:56:40,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:56:40,817.817 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 11:56:41,578.578 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:56:41,581.581 INFO    ] Checking for system updates...
[2026-10-28 11:56:41,622.622 INFO    ] 200
[2026-10-28 11:56:41,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:56:41,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:56:41,684.684 INFO    ] No update needed
[2026-10-28 11:56:41,687.687 INFO    ] Checking for camera pi updates...
[2026-10-28 11:56:41,722.722 INFO    ] 200
[2026-10-28 11:56:41,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:56:41,767.767 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:56:41,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:56:41,851.851 INFO    ] No camera update needed
[2026-10-28 11:56:41,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:56:41,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:56:41,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:56:41,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:56:43,910.910 INFO    ] ================================================
[2026-10-28 11:56:43,926.926 INFO    ] Launching Daemon at Wed Oct 28 11:56:43 IST 2026
[2026-10-28 11:56:43,936.936 INFO    ] ================================================
[2026-10-28 11:56:44,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:56:44
[2026-10-28 11:56:45,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:56:45,379.379 INFO    ] Initializing speech engine...
[2026-10-28 11:56:45,388.388 INFO    ] 2026-10-28 11:56:45
[2026-10-28 11:56:45,637.637 INFO    ] 2026-10-28 11:56:45
[2026-10-28 11:56:45,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:56:45,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:56:45,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:56:46,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:56:46,196.196 INFO    ] time= 28/10/2026 11:56:46
[2026-10-28 11:56:46,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:56:46,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:56:46,363.363 INFO    ] No existing commands found in stream
[2026-10-28 11:56:51,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:56:51,397.397 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-28 11:56:55,441.441 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:56:55,444.444 INFO    ] Checking for system updates...
[2026-10-28 11:56:55,480.480 INFO    ] 200
[2026-10-28 11:56:55,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:56:55,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:56:55,543.543 INFO    ] No update needed
[2026-10-28 11:56:55,546.546 INFO    ] Checking for camera pi updates...
[2026-10-28 11:56:55,579.579 INFO    ] 200
[2026-10-28 11:56:55,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:56:55,626.626 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:56:55,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:56:55,713.713 INFO    ] No camera update needed
[2026-10-28 11:56:55,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:56:55,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:56:55,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:56:55,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:56:57,770.770 INFO    ] ================================================
[2026-10-28 11:56:57,785.785 INFO    ] Launching Daemon at Wed Oct 28 11:56:57 IST 2026
[2026-10-28 11:56:57,796.796 INFO    ] ================================================
[2026-10-28 11:56:58,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:56:58
[2026-10-28 11:56:58,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:56:59,206.206 INFO    ] Initializing speech engine...
[2026-10-28 11:56:59,215.215 INFO    ] 2026-10-28 11:56:59
[2026-10-28 11:56:59,510.510 INFO    ] 2026-10-28 11:56:59
[2026-10-28 11:56:59,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:56:59,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:56:59,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:57:00,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:57:00,141.141 INFO    ] time= 28/10/2026 11:57:00
[2026-10-28 11:57:00,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:57:00,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:57:00,315.315 INFO    ] No existing commands found in stream
[2026-10-28 11:57:05,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:57:05,334.334 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 11:57:06,980.980 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:57:06,983.983 INFO    ] Checking for system updates...
[2026-10-28 11:57:07,022.022 INFO    ] 200
[2026-10-28 11:57:07,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:57:07,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:57:07,081.081 INFO    ] No update needed
[2026-10-28 11:57:07,088.088 INFO    ] Checking for camera pi updates...
[2026-10-28 11:57:07,121.121 INFO    ] 200
[2026-10-28 11:57:07,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:57:07,163.163 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:57:07,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:57:07,248.248 INFO    ] No camera update needed
[2026-10-28 11:57:07,250.250 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:57:07,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:57:07,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:57:07,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:57:09,304.304 INFO    ] ================================================
[2026-10-28 11:57:09,320.320 INFO    ] Launching Daemon at Wed Oct 28 11:57:09 IST 2026
[2026-10-28 11:57:09,330.330 INFO    ] ================================================
[2026-10-28 11:57:09,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:57:09
[2026-10-28 11:57:10,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:57:10,793.793 INFO    ] Initializing speech engine...
[2026-10-28 11:57:10,801.801 INFO    ] 2026-10-28 11:57:10
[2026-10-28 11:57:11,054.054 INFO    ] 2026-10-28 11:57:11
[2026-10-28 11:57:11,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:57:11,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:57:11,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:57:11,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:57:11,612.612 INFO    ] time= 28/10/2026 11:57:11
[2026-10-28 11:57:11,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:57:11,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:57:11,760.760 INFO    ] No existing commands found in stream
[2026-10-28 11:57:16,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:57:16,787.787 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-28 11:57:17,826.826 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:57:17,828.828 INFO    ] Checking for system updates...
[2026-10-28 11:57:17,864.864 INFO    ] 200
[2026-10-28 11:57:17,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:57:17,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:57:17,921.921 INFO    ] No update needed
[2026-10-28 11:57:17,924.924 INFO    ] Checking for camera pi updates...
[2026-10-28 11:57:17,961.961 INFO    ] 200
[2026-10-28 11:57:17,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:57:18,009.009 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:57:18,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:57:18,082.082 INFO    ] No camera update needed
[2026-10-28 11:57:18,085.085 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:57:18,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:57:18,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:57:18,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:57:20,139.139 INFO    ] ================================================
[2026-10-28 11:57:20,155.155 INFO    ] Launching Daemon at Wed Oct 28 11:57:20 IST 2026
[2026-10-28 11:57:20,168.168 INFO    ] ================================================
[2026-10-28 11:57:20,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:57:20
[2026-10-28 11:57:21,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:57:21,775.775 INFO    ] Initializing speech engine...
[2026-10-28 11:57:21,784.784 INFO    ] 2026-10-28 11:57:21
[2026-10-28 11:57:22,055.055 INFO    ] 2026-10-28 11:57:22
[2026-10-28 11:57:22,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:57:22,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:57:22,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:57:22,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:57:22,641.641 INFO    ] time= 28/10/2026 11:57:22
[2026-10-28 11:57:22,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:57:22,678.678 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:57:22,820.820 INFO    ] No existing commands found in stream
[2026-10-28 11:57:27,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:57:27,855.855 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 11:57:30,113.113 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:57:30,116.116 INFO    ] Checking for system updates...
[2026-10-28 11:57:30,157.157 INFO    ] 200
[2026-10-28 11:57:30,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:57:30,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:57:30,220.220 INFO    ] No update needed
[2026-10-28 11:57:30,222.222 INFO    ] Checking for camera pi updates...
[2026-10-28 11:57:30,259.259 INFO    ] 200
[2026-10-28 11:57:30,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:57:30,301.301 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:57:30,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:57:30,366.366 INFO    ] No camera update needed
[2026-10-28 11:57:30,368.368 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:57:30,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:57:30,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:57:30,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:57:32,422.422 INFO    ] ================================================
[2026-10-28 11:57:32,438.438 INFO    ] Launching Daemon at Wed Oct 28 11:57:32 IST 2026
[2026-10-28 11:57:32,450.450 INFO    ] ================================================
[2026-10-28 11:57:33,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:57:33
[2026-10-28 11:57:33,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:57:33,922.922 INFO    ] Initializing speech engine...
[2026-10-28 11:57:33,931.931 INFO    ] 2026-10-28 11:57:33
[2026-10-28 11:57:34,181.181 INFO    ] 2026-10-28 11:57:34
[2026-10-28 11:57:34,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:57:34,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:57:34,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:57:34,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:57:34,984.984 INFO    ] time= 28/10/2026 11:57:34
[2026-10-28 11:57:34,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:57:35,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:57:35,291.291 INFO    ] No existing commands found in stream
[2026-10-28 11:57:40,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:57:40,319.319 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 11:57:41,182.182 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:57:41,185.185 INFO    ] Checking for system updates...
[2026-10-28 11:57:41,222.222 INFO    ] 200
[2026-10-28 11:57:41,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:57:41,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:57:41,287.287 INFO    ] No update needed
[2026-10-28 11:57:41,289.289 INFO    ] Checking for camera pi updates...
[2026-10-28 11:57:41,323.323 INFO    ] 200
[2026-10-28 11:57:41,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:57:41,366.366 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:57:41,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:57:41,455.455 INFO    ] No camera update needed
[2026-10-28 11:57:41,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:57:41,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:57:41,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:57:41,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:57:43,512.512 INFO    ] ================================================
[2026-10-28 11:57:43,528.528 INFO    ] Launching Daemon at Wed Oct 28 11:57:43 IST 2026
[2026-10-28 11:57:43,538.538 INFO    ] ================================================
[2026-10-28 11:57:44,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:57:44
[2026-10-28 11:57:44,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:57:44,936.936 INFO    ] Initializing speech engine...
[2026-10-28 11:57:44,950.950 INFO    ] 2026-10-28 11:57:44
[2026-10-28 11:57:45,214.214 INFO    ] 2026-10-28 11:57:45
[2026-10-28 11:57:45,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:57:45,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:57:45,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:57:45,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:57:45,829.829 INFO    ] time= 28/10/2026 11:57:45
[2026-10-28 11:57:45,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:57:45,869.869 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:57:45,994.994 INFO    ] No existing commands found in stream
[2026-10-28 11:57:51,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:57:51,014.014 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-28 11:57:54,842.842 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 11:57:54,845.845 INFO    ] Checking for system updates...
[2026-10-28 11:57:54,880.880 INFO    ] 200
[2026-10-28 11:57:54,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:57:54,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:57:54,937.937 INFO    ] No update needed
[2026-10-28 11:57:54,939.939 INFO    ] Checking for camera pi updates...
[2026-10-28 11:57:54,973.973 INFO    ] 200
[2026-10-28 11:57:54,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:57:55,022.022 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:57:55,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:57:55,110.110 INFO    ] No camera update needed
[2026-10-28 11:57:55,112.112 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:57:55,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:57:55,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:57:55,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:57:57,166.166 INFO    ] ================================================
[2026-10-28 11:57:57,181.181 INFO    ] Launching Daemon at Wed Oct 28 11:57:57 IST 2026
[2026-10-28 11:57:57,191.191 INFO    ] ================================================
[2026-10-28 11:57:57,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:57:57
[2026-10-28 11:57:58,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:57:58,830.830 INFO    ] Initializing speech engine...
[2026-10-28 11:57:58,840.840 INFO    ] 2026-10-28 11:57:58
[2026-10-28 11:57:59,115.115 INFO    ] 2026-10-28 11:57:59
[2026-10-28 11:57:59,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:57:59,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:57:59,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:57:59,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:57:59,755.755 INFO    ] time= 28/10/2026 11:57:59
[2026-10-28 11:57:59,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:57:59,781.781 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:57:59,927.927 INFO    ] No existing commands found in stream
[2026-10-28 11:58:04,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:58:04,958.958 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 11:58:05,820.820 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:58:05,823.823 INFO    ] Checking for system updates...
[2026-10-28 11:58:05,860.860 INFO    ] 200
[2026-10-28 11:58:05,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:58:05,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:58:05,930.930 INFO    ] No update needed
[2026-10-28 11:58:05,933.933 INFO    ] Checking for camera pi updates...
[2026-10-28 11:58:05,967.967 INFO    ] 200
[2026-10-28 11:58:05,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:58:06,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:58:06,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:58:06,202.202 INFO    ] No camera update needed
[2026-10-28 11:58:06,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:58:06,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:58:06,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:58:06,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:58:08,261.261 INFO    ] ================================================
[2026-10-28 11:58:08,276.276 INFO    ] Launching Daemon at Wed Oct 28 11:58:08 IST 2026
[2026-10-28 11:58:08,287.287 INFO    ] ================================================
[2026-10-28 11:58:08,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:58:08
[2026-10-28 11:58:09,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:58:09,713.713 INFO    ] Initializing speech engine...
[2026-10-28 11:58:09,721.721 INFO    ] 2026-10-28 11:58:09
[2026-10-28 11:58:09,982.982 INFO    ] 2026-10-28 11:58:09
[2026-10-28 11:58:10,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:58:10,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:58:10,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:58:10,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:58:10,720.720 INFO    ] time= 28/10/2026 11:58:10
[2026-10-28 11:58:10,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:58:10,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:58:10,969.969 INFO    ] No existing commands found in stream
[2026-10-28 11:58:15,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:58:15,981.981 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-28 11:58:19,981.981 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:58:19,984.984 INFO    ] Checking for system updates...
[2026-10-28 11:58:20,025.025 INFO    ] 200
[2026-10-28 11:58:20,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:58:20,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:58:20,093.093 INFO    ] No update needed
[2026-10-28 11:58:20,097.097 INFO    ] Checking for camera pi updates...
[2026-10-28 11:58:20,131.131 INFO    ] 200
[2026-10-28 11:58:20,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:58:20,175.175 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:58:20,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:58:20,260.260 INFO    ] No camera update needed
[2026-10-28 11:58:20,263.263 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:58:20,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:58:20,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:58:20,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:58:22,319.319 INFO    ] ================================================
[2026-10-28 11:58:22,334.334 INFO    ] Launching Daemon at Wed Oct 28 11:58:22 IST 2026
[2026-10-28 11:58:22,345.345 INFO    ] ================================================
[2026-10-28 11:58:22,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:58:22
[2026-10-28 11:58:23,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:58:23,802.802 INFO    ] Initializing speech engine...
[2026-10-28 11:58:23,809.809 INFO    ] 2026-10-28 11:58:23
[2026-10-28 11:58:24,069.069 INFO    ] 2026-10-28 11:58:24
[2026-10-28 11:58:24,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:58:24,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:58:24,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:58:24,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:58:24,657.657 INFO    ] time= 28/10/2026 11:58:24
[2026-10-28 11:58:24,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:58:24,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:58:24,809.809 INFO    ] No existing commands found in stream
[2026-10-28 11:58:29,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:58:29,842.842 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 11:58:31,503.503 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 11:58:31,506.506 INFO    ] Checking for system updates...
[2026-10-28 11:58:31,545.545 INFO    ] 200
[2026-10-28 11:58:31,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:58:31,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:58:31,602.602 INFO    ] No update needed
[2026-10-28 11:58:31,604.604 INFO    ] Checking for camera pi updates...
[2026-10-28 11:58:31,641.641 INFO    ] 200
[2026-10-28 11:58:31,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:58:31,689.689 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:58:31,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:58:31,775.775 INFO    ] No camera update needed
[2026-10-28 11:58:31,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:58:31,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:58:31,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:58:31,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:58:33,829.829 INFO    ] ================================================
[2026-10-28 11:58:33,844.844 INFO    ] Launching Daemon at Wed Oct 28 11:58:33 IST 2026
[2026-10-28 11:58:33,854.854 INFO    ] ================================================
[2026-10-28 11:58:34,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:58:34
[2026-10-28 11:58:35,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:58:35,260.260 INFO    ] Initializing speech engine...
[2026-10-28 11:58:35,275.275 INFO    ] 2026-10-28 11:58:35
[2026-10-28 11:58:35,542.542 INFO    ] 2026-10-28 11:58:35
[2026-10-28 11:58:35,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:58:35,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:58:35,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:58:36,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:58:36,115.115 INFO    ] time= 28/10/2026 11:58:36
[2026-10-28 11:58:36,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:58:36,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:58:36,277.277 INFO    ] No existing commands found in stream
[2026-10-28 11:58:41,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:58:41,305.305 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 11:58:45,028.028 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 11:58:45,031.031 INFO    ] Checking for system updates...
[2026-10-28 11:58:45,070.070 INFO    ] 200
[2026-10-28 11:58:45,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:58:45,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:58:45,128.128 INFO    ] No update needed
[2026-10-28 11:58:45,130.130 INFO    ] Checking for camera pi updates...
[2026-10-28 11:58:45,164.164 INFO    ] 200
[2026-10-28 11:58:45,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:58:45,207.207 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:58:45,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 11:58:45,299.299 INFO    ] No camera update needed
[2026-10-28 11:58:45,301.301 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:58:45,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:58:45,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:58:45,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:58:47,353.353 INFO    ] ================================================
[2026-10-28 11:58:47,368.368 INFO    ] Launching Daemon at Wed Oct 28 11:58:47 IST 2026
[2026-10-28 11:58:47,378.378 INFO    ] ================================================
[2026-10-28 11:58:47,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:58:47
[2026-10-28 11:58:48,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:58:48,794.794 INFO    ] Initializing speech engine...
[2026-10-28 11:58:48,803.803 INFO    ] 2026-10-28 11:58:48
[2026-10-28 11:58:49,062.062 INFO    ] 2026-10-28 11:58:49
[2026-10-28 11:58:49,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:58:49,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:58:49,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:58:49,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:58:49,798.798 INFO    ] time= 28/10/2026 11:58:49
[2026-10-28 11:58:49,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:58:49,872.872 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:58:50,019.019 INFO    ] No existing commands found in stream
[2026-10-28 11:58:55,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:58:55,043.043 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 11:58:59,302.302 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:58:59,305.305 INFO    ] Checking for system updates...
[2026-10-28 11:58:59,341.341 INFO    ] 200
[2026-10-28 11:58:59,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:58:59,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:58:59,404.404 INFO    ] No update needed
[2026-10-28 11:58:59,406.406 INFO    ] Checking for camera pi updates...
[2026-10-28 11:58:59,440.440 INFO    ] 200
[2026-10-28 11:58:59,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:58:59,487.487 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:58:59,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:58:59,577.577 INFO    ] No camera update needed
[2026-10-28 11:58:59,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:58:59,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:58:59,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:58:59,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:59:01,634.634 INFO    ] ================================================
[2026-10-28 11:59:01,649.649 INFO    ] Launching Daemon at Wed Oct 28 11:59:01 IST 2026
[2026-10-28 11:59:01,660.660 INFO    ] ================================================
[2026-10-28 11:59:02,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:59:02
[2026-10-28 11:59:02,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:59:03,271.271 INFO    ] Initializing speech engine...
[2026-10-28 11:59:03,279.279 INFO    ] 2026-10-28 11:59:03
[2026-10-28 11:59:03,615.615 INFO    ] 2026-10-28 11:59:03
[2026-10-28 11:59:03,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:59:03,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:59:03,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:59:04,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:59:04,223.223 INFO    ] time= 28/10/2026 11:59:04
[2026-10-28 11:59:04,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:59:04,263.263 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:59:04,421.421 INFO    ] No existing commands found in stream
[2026-10-28 11:59:09,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:59:09,454.454 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 11:59:10,228.228 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 11:59:10,231.231 INFO    ] Checking for system updates...
[2026-10-28 11:59:10,267.267 INFO    ] 200
[2026-10-28 11:59:10,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:59:10,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:59:10,331.331 INFO    ] No update needed
[2026-10-28 11:59:10,334.334 INFO    ] Checking for camera pi updates...
[2026-10-28 11:59:10,371.371 INFO    ] 200
[2026-10-28 11:59:10,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:59:10,414.414 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:59:10,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:59:10,486.486 INFO    ] No camera update needed
[2026-10-28 11:59:10,489.489 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:59:10,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:59:10,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:59:10,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:59:12,541.541 INFO    ] ================================================
[2026-10-28 11:59:12,558.558 INFO    ] Launching Daemon at Wed Oct 28 11:59:12 IST 2026
[2026-10-28 11:59:12,569.569 INFO    ] ================================================
[2026-10-28 11:59:13,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:59:13
[2026-10-28 11:59:13,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:59:13,966.966 INFO    ] Initializing speech engine...
[2026-10-28 11:59:13,987.987 INFO    ] 2026-10-28 11:59:13
[2026-10-28 11:59:14,244.244 INFO    ] 2026-10-28 11:59:14
[2026-10-28 11:59:14,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:59:14,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:59:14,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:59:14,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:59:14,813.813 INFO    ] time= 28/10/2026 11:59:14
[2026-10-28 11:59:14,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:59:14,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:59:14,995.995 INFO    ] No existing commands found in stream
[2026-10-28 11:59:20,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:59:20,028.028 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-28 11:59:22,262.262 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 11:59:22,265.265 INFO    ] Checking for system updates...
[2026-10-28 11:59:22,300.300 INFO    ] 200
[2026-10-28 11:59:22,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:59:22,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:59:22,358.358 INFO    ] No update needed
[2026-10-28 11:59:22,360.360 INFO    ] Checking for camera pi updates...
[2026-10-28 11:59:22,395.395 INFO    ] 200
[2026-10-28 11:59:22,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:59:22,437.437 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:59:22,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:59:22,523.523 INFO    ] No camera update needed
[2026-10-28 11:59:22,525.525 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:59:22,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:59:22,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:59:22,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:59:24,580.580 INFO    ] ================================================
[2026-10-28 11:59:24,596.596 INFO    ] Launching Daemon at Wed Oct 28 11:59:24 IST 2026
[2026-10-28 11:59:24,607.607 INFO    ] ================================================
[2026-10-28 11:59:25,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:59:25
[2026-10-28 11:59:25,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:59:26,054.054 INFO    ] Initializing speech engine...
[2026-10-28 11:59:26,063.063 INFO    ] 2026-10-28 11:59:26
[2026-10-28 11:59:26,359.359 INFO    ] 2026-10-28 11:59:26
[2026-10-28 11:59:26,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:59:26,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:59:26,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:59:26,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:59:26,995.995 INFO    ] time= 28/10/2026 11:59:26
[2026-10-28 11:59:27,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:59:27,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:59:27,146.146 INFO    ] No existing commands found in stream
[2026-10-28 11:59:32,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:59:32,179.179 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 11:59:32,986.986 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:59:32,989.989 INFO    ] Checking for system updates...
[2026-10-28 11:59:33,028.028 INFO    ] 200
[2026-10-28 11:59:33,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:59:33,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:59:33,088.088 INFO    ] No update needed
[2026-10-28 11:59:33,091.091 INFO    ] Checking for camera pi updates...
[2026-10-28 11:59:33,126.126 INFO    ] 200
[2026-10-28 11:59:33,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:59:33,177.177 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:59:33,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:59:33,298.298 INFO    ] No camera update needed
[2026-10-28 11:59:33,301.301 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:59:33,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:59:33,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:59:33,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:59:35,358.358 INFO    ] ================================================
[2026-10-28 11:59:35,374.374 INFO    ] Launching Daemon at Wed Oct 28 11:59:35 IST 2026
[2026-10-28 11:59:35,385.385 INFO    ] ================================================
[2026-10-28 11:59:36,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:59:36
[2026-10-28 11:59:36,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:59:37,014.014 INFO    ] Initializing speech engine...
[2026-10-28 11:59:37,021.021 INFO    ] 2026-10-28 11:59:37
[2026-10-28 11:59:37,296.296 INFO    ] 2026-10-28 11:59:37
[2026-10-28 11:59:37,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:59:37,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:59:37,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:59:38,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:59:38,063.063 INFO    ] time= 28/10/2026 11:59:38
[2026-10-28 11:59:38,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:59:38,142.142 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:59:38,311.311 INFO    ] No existing commands found in stream
[2026-10-28 11:59:43,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:59:43,326.326 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-28 11:59:45,913.913 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 11:59:45,916.916 INFO    ] Checking for system updates...
[2026-10-28 11:59:45,963.963 INFO    ] 200
[2026-10-28 11:59:45,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:59:46,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:59:46,023.023 INFO    ] No update needed
[2026-10-28 11:59:46,026.026 INFO    ] Checking for camera pi updates...
[2026-10-28 11:59:46,065.065 INFO    ] 200
[2026-10-28 11:59:46,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 11:59:46,114.114 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 11:59:46,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 11:59:46,192.192 INFO    ] No camera update needed
[2026-10-28 11:59:46,194.194 INFO    ] Script finished. Safe exiting...
[2026-10-28 11:59:46,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 11:59:46,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 11:59:46,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 11:59:48,247.247 INFO    ] ================================================
[2026-10-28 11:59:48,262.262 INFO    ] Launching Daemon at Wed Oct 28 11:59:48 IST 2026
[2026-10-28 11:59:48,273.273 INFO    ] ================================================
[2026-10-28 11:59:48,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 11:59:48
[2026-10-28 11:59:49,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 11:59:49,892.892 INFO    ] Initializing speech engine...
[2026-10-28 11:59:49,904.904 INFO    ] 2026-10-28 11:59:49
[2026-10-28 11:59:50,183.183 INFO    ] 2026-10-28 11:59:50
[2026-10-28 11:59:50,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 11:59:50,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 11:59:50,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 11:59:50,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 11:59:50,892.892 INFO    ] time= 28/10/2026 11:59:50
[2026-10-28 11:59:50,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 11:59:50,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-28 11:59:51,127.127 INFO    ] No existing commands found in stream
[2026-10-28 11:59:56,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 11:59:56,161.161 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 12:00:00,867.867 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:00:00,869.869 INFO    ] Checking for system updates...
[2026-10-28 12:00:00,905.905 INFO    ] 200
[2026-10-28 12:00:00,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:00:00,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:00:00,964.964 INFO    ] No update needed
[2026-10-28 12:00:00,967.967 INFO    ] Checking for camera pi updates...
[2026-10-28 12:00:01,000.000 INFO    ] 200
[2026-10-28 12:00:01,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:00:01,058.058 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:00:01,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:00:01,150.150 INFO    ] No camera update needed
[2026-10-28 12:00:01,152.152 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:00:01,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:00:01,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:00:01,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:00:03,326.326 INFO    ] ================================================
[2026-10-28 12:00:03,402.402 INFO    ] Launching Daemon at Wed Oct 28 12:00:03 IST 2026
[2026-10-28 12:00:03,444.444 INFO    ] ================================================
[2026-10-28 12:00:05,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:00:05
[2026-10-28 12:00:06,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:00:06,707.707 INFO    ] Initializing speech engine...
[2026-10-28 12:00:06,715.715 INFO    ] 2026-10-28 12:00:06
[2026-10-28 12:00:07,012.012 INFO    ] 2026-10-28 12:00:06
[2026-10-28 12:00:07,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:00:07,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:00:07,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:00:07,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:00:07,763.763 INFO    ] time= 28/10/2026 12:00:07
[2026-10-28 12:00:07,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:00:07,863.863 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:00:08,005.005 INFO    ] No existing commands found in stream
[2026-10-28 12:00:13,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:00:13,024.024 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-28 12:00:16,066.066 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:00:16,069.069 INFO    ] Checking for system updates...
[2026-10-28 12:00:16,108.108 INFO    ] 200
[2026-10-28 12:00:16,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:00:16,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:00:16,179.179 INFO    ] No update needed
[2026-10-28 12:00:16,183.183 INFO    ] Checking for camera pi updates...
[2026-10-28 12:00:16,217.217 INFO    ] 200
[2026-10-28 12:00:16,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:00:16,259.259 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:00:16,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:00:16,350.350 INFO    ] No camera update needed
[2026-10-28 12:00:16,352.352 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:00:16,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:00:16,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:00:16,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:00:18,405.405 INFO    ] ================================================
[2026-10-28 12:00:18,421.421 INFO    ] Launching Daemon at Wed Oct 28 12:00:18 IST 2026
[2026-10-28 12:00:18,433.433 INFO    ] ================================================
[2026-10-28 12:00:19,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:00:19
[2026-10-28 12:00:19,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:00:20,022.022 INFO    ] Initializing speech engine...
[2026-10-28 12:00:20,030.030 INFO    ] 2026-10-28 12:00:20
[2026-10-28 12:00:20,307.307 INFO    ] 2026-10-28 12:00:20
[2026-10-28 12:00:20,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:00:20,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:00:20,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:00:20,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:00:20,882.882 INFO    ] time= 28/10/2026 12:00:20
[2026-10-28 12:00:20,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:00:20,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:00:21,070.070 INFO    ] No existing commands found in stream
[2026-10-28 12:00:26,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:00:26,105.105 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 12:00:28,156.156 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:00:28,159.159 INFO    ] Checking for system updates...
[2026-10-28 12:00:28,198.198 INFO    ] 200
[2026-10-28 12:00:28,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:00:28,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:00:28,262.262 INFO    ] No update needed
[2026-10-28 12:00:28,265.265 INFO    ] Checking for camera pi updates...
[2026-10-28 12:00:28,298.298 INFO    ] 200
[2026-10-28 12:00:28,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:00:28,341.341 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:00:28,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:00:28,492.492 INFO    ] No camera update needed
[2026-10-28 12:00:28,495.495 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:00:28,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:00:28,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:00:28,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:00:30,548.548 INFO    ] ================================================
[2026-10-28 12:00:30,564.564 INFO    ] Launching Daemon at Wed Oct 28 12:00:30 IST 2026
[2026-10-28 12:00:30,575.575 INFO    ] ================================================
[2026-10-28 12:00:31,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:00:31
[2026-10-28 12:00:31,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:00:32,055.055 INFO    ] Initializing speech engine...
[2026-10-28 12:00:32,065.065 INFO    ] 2026-10-28 12:00:32
[2026-10-28 12:00:32,346.346 INFO    ] 2026-10-28 12:00:32
[2026-10-28 12:00:32,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:00:32,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:00:32,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:00:32,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:00:32,957.957 INFO    ] time= 28/10/2026 12:00:32
[2026-10-28 12:00:32,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:00:32,993.993 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:00:33,142.142 INFO    ] No existing commands found in stream
[2026-10-28 12:00:38,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:00:38,170.170 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-28 12:00:39,268.268 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:00:39,271.271 INFO    ] Checking for system updates...
[2026-10-28 12:00:39,308.308 INFO    ] 200
[2026-10-28 12:00:39,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:00:39,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:00:39,366.366 INFO    ] No update needed
[2026-10-28 12:00:39,369.369 INFO    ] Checking for camera pi updates...
[2026-10-28 12:00:39,402.402 INFO    ] 200
[2026-10-28 12:00:39,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:00:39,449.449 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:00:39,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:00:39,531.531 INFO    ] No camera update needed
[2026-10-28 12:00:39,534.534 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:00:39,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:00:39,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:00:39,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:00:41,587.587 INFO    ] ================================================
[2026-10-28 12:00:41,604.604 INFO    ] Launching Daemon at Wed Oct 28 12:00:41 IST 2026
[2026-10-28 12:00:41,615.615 INFO    ] ================================================
[2026-10-28 12:00:42,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:00:42
[2026-10-28 12:00:43,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:00:43,332.332 INFO    ] Initializing speech engine...
[2026-10-28 12:00:43,346.346 INFO    ] 2026-10-28 12:00:43
[2026-10-28 12:00:43,629.629 INFO    ] 2026-10-28 12:00:43
[2026-10-28 12:00:43,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:00:43,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:00:43,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:00:44,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:00:44,251.251 INFO    ] time= 28/10/2026 12:00:44
[2026-10-28 12:00:44,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:00:44,267.267 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:00:44,393.393 INFO    ] No existing commands found in stream
[2026-10-28 12:00:49,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:00:49,427.427 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-28 12:00:52,394.394 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:00:52,397.397 INFO    ] Checking for system updates...
[2026-10-28 12:00:52,432.432 INFO    ] 200
[2026-10-28 12:00:52,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:00:52,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:00:52,490.490 INFO    ] No update needed
[2026-10-28 12:00:52,492.492 INFO    ] Checking for camera pi updates...
[2026-10-28 12:00:52,525.525 INFO    ] 200
[2026-10-28 12:00:52,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:00:52,568.568 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:00:52,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:00:52,657.657 INFO    ] No camera update needed
[2026-10-28 12:00:52,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:00:52,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:00:52,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:00:52,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:00:54,712.712 INFO    ] ================================================
[2026-10-28 12:00:54,728.728 INFO    ] Launching Daemon at Wed Oct 28 12:00:54 IST 2026
[2026-10-28 12:00:54,739.739 INFO    ] ================================================
[2026-10-28 12:00:55,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:00:55
[2026-10-28 12:00:56,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:00:56,359.359 INFO    ] Initializing speech engine...
[2026-10-28 12:00:56,370.370 INFO    ] 2026-10-28 12:00:56
[2026-10-28 12:00:56,650.650 INFO    ] 2026-10-28 12:00:56
[2026-10-28 12:00:56,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:00:57,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:00:57,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:00:57,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:00:57,441.441 INFO    ] time= 28/10/2026 12:00:57
[2026-10-28 12:00:57,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:00:57,552.552 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:00:57,750.750 INFO    ] No existing commands found in stream
[2026-10-28 12:01:02,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:01:02,771.771 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-28 12:01:06,224.224 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:01:06,227.227 INFO    ] Checking for system updates...
[2026-10-28 12:01:06,268.268 INFO    ] 200
[2026-10-28 12:01:06,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:01:06,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:01:06,346.346 INFO    ] No update needed
[2026-10-28 12:01:06,349.349 INFO    ] Checking for camera pi updates...
[2026-10-28 12:01:06,384.384 INFO    ] 200
[2026-10-28 12:01:06,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:01:06,428.428 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:01:06,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:01:06,503.503 INFO    ] No camera update needed
[2026-10-28 12:01:06,506.506 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:01:06,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:01:06,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:01:06,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:01:08,563.563 INFO    ] ================================================
[2026-10-28 12:01:08,579.579 INFO    ] Launching Daemon at Wed Oct 28 12:01:08 IST 2026
[2026-10-28 12:01:08,590.590 INFO    ] ================================================
[2026-10-28 12:01:09,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:01:09
[2026-10-28 12:01:09,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:01:10,024.024 INFO    ] Initializing speech engine...
[2026-10-28 12:01:10,030.030 INFO    ] 2026-10-28 12:01:10
[2026-10-28 12:01:10,336.336 INFO    ] 2026-10-28 12:01:10
[2026-10-28 12:01:10,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:01:10,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:01:10,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:01:10,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:01:10,971.971 INFO    ] time= 28/10/2026 12:01:10
[2026-10-28 12:01:10,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:01:10,996.996 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:01:11,150.150 INFO    ] No existing commands found in stream
[2026-10-28 12:01:16,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:01:16,165.165 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 12:01:19,124.124 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:01:19,126.126 INFO    ] Checking for system updates...
[2026-10-28 12:01:19,166.166 INFO    ] 200
[2026-10-28 12:01:19,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:01:19,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:01:19,222.222 INFO    ] No update needed
[2026-10-28 12:01:19,225.225 INFO    ] Checking for camera pi updates...
[2026-10-28 12:01:19,262.262 INFO    ] 200
[2026-10-28 12:01:19,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:01:19,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:01:19,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:01:19,410.410 INFO    ] No camera update needed
[2026-10-28 12:01:19,412.412 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:01:19,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:01:19,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:01:19,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:01:21,466.466 INFO    ] ================================================
[2026-10-28 12:01:21,481.481 INFO    ] Launching Daemon at Wed Oct 28 12:01:21 IST 2026
[2026-10-28 12:01:21,493.493 INFO    ] ================================================
[2026-10-28 12:01:22,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:01:22
[2026-10-28 12:01:22,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:01:23,122.122 INFO    ] Initializing speech engine...
[2026-10-28 12:01:23,132.132 INFO    ] 2026-10-28 12:01:23
[2026-10-28 12:01:23,404.404 INFO    ] 2026-10-28 12:01:23
[2026-10-28 12:01:23,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:01:23,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:01:23,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:01:23,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:01:23,986.986 INFO    ] time= 28/10/2026 12:01:23
[2026-10-28 12:01:24,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:01:24,027.027 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:01:24,199.199 INFO    ] No existing commands found in stream
[2026-10-28 12:01:29,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:01:29,234.234 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-28 12:01:30,248.248 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:01:30,251.251 INFO    ] Checking for system updates...
[2026-10-28 12:01:30,288.288 INFO    ] 200
[2026-10-28 12:01:30,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:01:30,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:01:30,347.347 INFO    ] No update needed
[2026-10-28 12:01:30,349.349 INFO    ] Checking for camera pi updates...
[2026-10-28 12:01:30,389.389 INFO    ] 200
[2026-10-28 12:01:30,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:01:30,431.431 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:01:30,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:01:30,535.535 INFO    ] No camera update needed
[2026-10-28 12:01:30,537.537 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:01:30,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:01:30,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:01:30,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:01:32,595.595 INFO    ] ================================================
[2026-10-28 12:01:32,612.612 INFO    ] Launching Daemon at Wed Oct 28 12:01:32 IST 2026
[2026-10-28 12:01:32,624.624 INFO    ] ================================================
[2026-10-28 12:01:33,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:01:33
[2026-10-28 12:01:33,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:01:34,234.234 INFO    ] Initializing speech engine...
[2026-10-28 12:01:34,243.243 INFO    ] 2026-10-28 12:01:34
[2026-10-28 12:01:34,514.514 INFO    ] 2026-10-28 12:01:34
[2026-10-28 12:01:34,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:01:34,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:01:34,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:01:35,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:01:35,123.123 INFO    ] time= 28/10/2026 12:01:35
[2026-10-28 12:01:35,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:01:35,141.141 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:01:35,280.280 INFO    ] No existing commands found in stream
[2026-10-28 12:01:40,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:01:40,314.314 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 12:01:42,590.590 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:01:42,594.594 INFO    ] Checking for system updates...
[2026-10-28 12:01:42,634.634 INFO    ] 200
[2026-10-28 12:01:42,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:01:42,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:01:42,691.691 INFO    ] No update needed
[2026-10-28 12:01:42,693.693 INFO    ] Checking for camera pi updates...
[2026-10-28 12:01:42,730.730 INFO    ] 200
[2026-10-28 12:01:42,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:01:42,775.775 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:01:42,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:01:42,863.863 INFO    ] No camera update needed
[2026-10-28 12:01:42,866.866 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:01:42,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:01:42,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:01:42,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:01:44,917.917 INFO    ] ================================================
[2026-10-28 12:01:44,933.933 INFO    ] Launching Daemon at Wed Oct 28 12:01:44 IST 2026
[2026-10-28 12:01:44,944.944 INFO    ] ================================================
[2026-10-28 12:01:45,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:01:45
[2026-10-28 12:01:46,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:01:46,552.552 INFO    ] Initializing speech engine...
[2026-10-28 12:01:46,561.561 INFO    ] 2026-10-28 12:01:46
[2026-10-28 12:01:46,838.838 INFO    ] 2026-10-28 12:01:46
[2026-10-28 12:01:46,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:01:47,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:01:47,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:01:47,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:01:47,964.964 INFO    ] time= 28/10/2026 12:01:47
[2026-10-28 12:01:47,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:01:48,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:01:48,206.206 INFO    ] No existing commands found in stream
[2026-10-28 12:01:53,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:01:53,227.227 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-28 12:01:54,442.442 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:01:54,445.445 INFO    ] Checking for system updates...
[2026-10-28 12:01:54,481.481 INFO    ] 200
[2026-10-28 12:01:54,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:01:54,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:01:54,548.548 INFO    ] No update needed
[2026-10-28 12:01:54,550.550 INFO    ] Checking for camera pi updates...
[2026-10-28 12:01:54,584.584 INFO    ] 200
[2026-10-28 12:01:54,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:01:54,634.634 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:01:54,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:01:54,717.717 INFO    ] No camera update needed
[2026-10-28 12:01:54,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:01:54,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:01:54,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:01:54,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:01:56,772.772 INFO    ] ================================================
[2026-10-28 12:01:56,787.787 INFO    ] Launching Daemon at Wed Oct 28 12:01:56 IST 2026
[2026-10-28 12:01:56,797.797 INFO    ] ================================================
[2026-10-28 12:01:57,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:01:57
[2026-10-28 12:01:58,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:01:58,397.397 INFO    ] Initializing speech engine...
[2026-10-28 12:01:58,411.411 INFO    ] 2026-10-28 12:01:58
[2026-10-28 12:01:58,723.723 INFO    ] 2026-10-28 12:01:58
[2026-10-28 12:01:58,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:01:59,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:01:59,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:01:59,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:01:59,484.484 INFO    ] time= 28/10/2026 12:01:59
[2026-10-28 12:01:59,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:01:59,604.604 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:01:59,807.807 INFO    ] No existing commands found in stream
[2026-10-28 12:02:04,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:02:04,833.833 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-28 12:02:07,515.515 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:02:07,518.518 INFO    ] Checking for system updates...
[2026-10-28 12:02:07,554.554 INFO    ] 200
[2026-10-28 12:02:07,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:02:07,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:02:07,612.612 INFO    ] No update needed
[2026-10-28 12:02:07,615.615 INFO    ] Checking for camera pi updates...
[2026-10-28 12:02:07,654.654 INFO    ] 200
[2026-10-28 12:02:07,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:02:07,700.700 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:02:07,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:02:07,781.781 INFO    ] No camera update needed
[2026-10-28 12:02:07,784.784 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:02:07,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:02:07,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:02:07,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:02:09,835.835 INFO    ] ================================================
[2026-10-28 12:02:09,850.850 INFO    ] Launching Daemon at Wed Oct 28 12:02:09 IST 2026
[2026-10-28 12:02:09,861.861 INFO    ] ================================================
[2026-10-28 12:02:10,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:02:10
[2026-10-28 12:02:11,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:02:11,281.281 INFO    ] Initializing speech engine...
[2026-10-28 12:02:11,290.290 INFO    ] 2026-10-28 12:02:11
[2026-10-28 12:02:11,584.584 INFO    ] 2026-10-28 12:02:11
[2026-10-28 12:02:11,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:02:11,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:02:11,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:02:12,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:02:12,226.226 INFO    ] time= 28/10/2026 12:02:12
[2026-10-28 12:02:12,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:02:12,250.250 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:02:12,414.414 INFO    ] No existing commands found in stream
[2026-10-28 12:02:17,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:02:17,437.437 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-28 12:02:19,265.265 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:02:19,268.268 INFO    ] Checking for system updates...
[2026-10-28 12:02:19,307.307 INFO    ] 200
[2026-10-28 12:02:19,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:02:19,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:02:19,370.370 INFO    ] No update needed
[2026-10-28 12:02:19,373.373 INFO    ] Checking for camera pi updates...
[2026-10-28 12:02:19,410.410 INFO    ] 200
[2026-10-28 12:02:19,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:02:19,453.453 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:02:19,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:02:19,531.531 INFO    ] No camera update needed
[2026-10-28 12:02:19,534.534 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:02:19,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:02:19,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:02:19,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:02:21,586.586 INFO    ] ================================================
[2026-10-28 12:02:21,601.601 INFO    ] Launching Daemon at Wed Oct 28 12:02:21 IST 2026
[2026-10-28 12:02:21,612.612 INFO    ] ================================================
[2026-10-28 12:02:22,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:02:22
[2026-10-28 12:02:22,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:02:23,073.073 INFO    ] Initializing speech engine...
[2026-10-28 12:02:23,084.084 INFO    ] 2026-10-28 12:02:23
[2026-10-28 12:02:23,340.340 INFO    ] 2026-10-28 12:02:23
[2026-10-28 12:02:23,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:02:23,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:02:23,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:02:23,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:02:23,908.908 INFO    ] time= 28/10/2026 12:02:23
[2026-10-28 12:02:23,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:02:23,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:02:24,158.158 INFO    ] No existing commands found in stream
[2026-10-28 12:02:29,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:02:29,177.177 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 12:02:31,480.480 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:02:31,483.483 INFO    ] Checking for system updates...
[2026-10-28 12:02:31,524.524 INFO    ] 200
[2026-10-28 12:02:31,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:02:31,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:02:31,581.581 INFO    ] No update needed
[2026-10-28 12:02:31,583.583 INFO    ] Checking for camera pi updates...
[2026-10-28 12:02:31,620.620 INFO    ] 200
[2026-10-28 12:02:31,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:02:31,669.669 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:02:31,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:02:31,855.855 INFO    ] No camera update needed
[2026-10-28 12:02:31,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:02:31,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:02:31,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:02:31,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:02:33,915.915 INFO    ] ================================================
[2026-10-28 12:02:33,930.930 INFO    ] Launching Daemon at Wed Oct 28 12:02:33 IST 2026
[2026-10-28 12:02:33,941.941 INFO    ] ================================================
[2026-10-28 12:02:34,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:02:34
[2026-10-28 12:02:35,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:02:35,370.370 INFO    ] Initializing speech engine...
[2026-10-28 12:02:35,378.378 INFO    ] 2026-10-28 12:02:35
[2026-10-28 12:02:35,641.641 INFO    ] 2026-10-28 12:02:35
[2026-10-28 12:02:35,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:02:36,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:02:36,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:02:36,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:02:36,269.269 INFO    ] time= 28/10/2026 12:02:36
[2026-10-28 12:02:36,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:02:36,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:02:36,572.572 INFO    ] No existing commands found in stream
[2026-10-28 12:02:41,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:02:41,600.600 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 12:02:44,351.351 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:02:44,354.354 INFO    ] Checking for system updates...
[2026-10-28 12:02:44,390.390 INFO    ] 200
[2026-10-28 12:02:44,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:02:44,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:02:44,451.451 INFO    ] No update needed
[2026-10-28 12:02:44,454.454 INFO    ] Checking for camera pi updates...
[2026-10-28 12:02:44,487.487 INFO    ] 200
[2026-10-28 12:02:44,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:02:44,529.529 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:02:44,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:02:44,622.622 INFO    ] No camera update needed
[2026-10-28 12:02:44,624.624 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:02:44,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:02:44,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:02:44,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:02:46,677.677 INFO    ] ================================================
[2026-10-28 12:02:46,692.692 INFO    ] Launching Daemon at Wed Oct 28 12:02:46 IST 2026
[2026-10-28 12:02:46,703.703 INFO    ] ================================================
[2026-10-28 12:02:47,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:02:47
[2026-10-28 12:02:47,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:02:48,116.116 INFO    ] Initializing speech engine...
[2026-10-28 12:02:48,139.139 INFO    ] 2026-10-28 12:02:48
[2026-10-28 12:02:48,394.394 INFO    ] 2026-10-28 12:02:48
[2026-10-28 12:02:48,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:02:48,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:02:48,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:02:48,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:02:48,961.961 INFO    ] time= 28/10/2026 12:02:48
[2026-10-28 12:02:48,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:02:49,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:02:49,141.141 INFO    ] No existing commands found in stream
[2026-10-28 12:02:54,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:02:54,169.169 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-28 12:02:55,588.588 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:02:55,591.591 INFO    ] Checking for system updates...
[2026-10-28 12:02:55,630.630 INFO    ] 200
[2026-10-28 12:02:55,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:02:55,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:02:55,693.693 INFO    ] No update needed
[2026-10-28 12:02:55,695.695 INFO    ] Checking for camera pi updates...
[2026-10-28 12:02:55,732.732 INFO    ] 200
[2026-10-28 12:02:55,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:02:55,783.783 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:02:55,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:02:55,886.886 INFO    ] No camera update needed
[2026-10-28 12:02:55,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:02:55,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:02:55,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:02:55,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:02:57,942.942 INFO    ] ================================================
[2026-10-28 12:02:57,957.957 INFO    ] Launching Daemon at Wed Oct 28 12:02:57 IST 2026
[2026-10-28 12:02:57,968.968 INFO    ] ================================================
[2026-10-28 12:02:58,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:02:58
[2026-10-28 12:02:59,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:02:59,371.371 INFO    ] Initializing speech engine...
[2026-10-28 12:02:59,374.374 INFO    ] 2026-10-28 12:02:59
[2026-10-28 12:02:59,653.653 INFO    ] 2026-10-28 12:02:59
[2026-10-28 12:02:59,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:02:59,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:02:59,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:03:00,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:03:00,254.254 INFO    ] time= 28/10/2026 12:03:00
[2026-10-28 12:03:00,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:03:00,269.269 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:03:00,430.430 INFO    ] No existing commands found in stream
[2026-10-28 12:03:05,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:03:05,463.463 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-28 12:03:06,393.393 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:03:06,396.396 INFO    ] Checking for system updates...
[2026-10-28 12:03:06,431.431 INFO    ] 200
[2026-10-28 12:03:06,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:03:06,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:03:06,493.493 INFO    ] No update needed
[2026-10-28 12:03:06,496.496 INFO    ] Checking for camera pi updates...
[2026-10-28 12:03:06,531.531 INFO    ] 200
[2026-10-28 12:03:06,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:03:06,574.574 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:03:06,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:03:06,673.673 INFO    ] No camera update needed
[2026-10-28 12:03:06,676.676 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:03:06,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:03:06,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:03:06,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:03:08,727.727 INFO    ] ================================================
[2026-10-28 12:03:08,742.742 INFO    ] Launching Daemon at Wed Oct 28 12:03:08 IST 2026
[2026-10-28 12:03:08,753.753 INFO    ] ================================================
[2026-10-28 12:03:09,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:03:09
[2026-10-28 12:03:09,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:03:10,177.177 INFO    ] Initializing speech engine...
[2026-10-28 12:03:10,187.187 INFO    ] 2026-10-28 12:03:10
[2026-10-28 12:03:10,443.443 INFO    ] 2026-10-28 12:03:10
[2026-10-28 12:03:10,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:03:10,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:03:10,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:03:11,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:03:11,051.051 INFO    ] time= 28/10/2026 12:03:11
[2026-10-28 12:03:11,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:03:11,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:03:11,228.228 INFO    ] No existing commands found in stream
[2026-10-28 12:03:16,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:03:16,251.251 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-28 12:03:20,026.026 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:03:20,029.029 INFO    ] Checking for system updates...
[2026-10-28 12:03:20,065.065 INFO    ] 200
[2026-10-28 12:03:20,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:03:20,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:03:20,126.126 INFO    ] No update needed
[2026-10-28 12:03:20,129.129 INFO    ] Checking for camera pi updates...
[2026-10-28 12:03:20,162.162 INFO    ] 200
[2026-10-28 12:03:20,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:03:20,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:03:20,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:03:20,303.303 INFO    ] No camera update needed
[2026-10-28 12:03:20,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:03:20,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:03:20,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:03:20,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:03:22,357.357 INFO    ] ================================================
[2026-10-28 12:03:22,372.372 INFO    ] Launching Daemon at Wed Oct 28 12:03:22 IST 2026
[2026-10-28 12:03:22,383.383 INFO    ] ================================================
[2026-10-28 12:03:22,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:03:22
[2026-10-28 12:03:23,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:03:23,797.797 INFO    ] Initializing speech engine...
[2026-10-28 12:03:23,807.807 INFO    ] 2026-10-28 12:03:23
[2026-10-28 12:03:24,052.052 INFO    ] 2026-10-28 12:03:24
[2026-10-28 12:03:24,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:03:24,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:03:24,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:03:24,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:03:24,654.654 INFO    ] time= 28/10/2026 12:03:24
[2026-10-28 12:03:24,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:03:24,724.724 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:03:24,860.860 INFO    ] No existing commands found in stream
[2026-10-28 12:03:29,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:03:29,879.879 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-28 12:03:32,531.531 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:03:32,534.534 INFO    ] Checking for system updates...
[2026-10-28 12:03:32,577.577 INFO    ] 200
[2026-10-28 12:03:32,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:03:32,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:03:32,645.645 INFO    ] No update needed
[2026-10-28 12:03:32,647.647 INFO    ] Checking for camera pi updates...
[2026-10-28 12:03:32,683.683 INFO    ] 200
[2026-10-28 12:03:32,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:03:32,728.728 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:03:32,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:03:32,817.817 INFO    ] No camera update needed
[2026-10-28 12:03:32,819.819 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:03:32,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:03:32,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:03:32,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:03:34,875.875 INFO    ] ================================================
[2026-10-28 12:03:34,890.890 INFO    ] Launching Daemon at Wed Oct 28 12:03:34 IST 2026
[2026-10-28 12:03:34,900.900 INFO    ] ================================================
[2026-10-28 12:03:35,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:03:35
[2026-10-28 12:03:36,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:03:36,479.479 INFO    ] Initializing speech engine...
[2026-10-28 12:03:36,487.487 INFO    ] 2026-10-28 12:03:36
[2026-10-28 12:03:36,760.760 INFO    ] 2026-10-28 12:03:36
[2026-10-28 12:03:36,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:03:37,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:03:37,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:03:37,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:03:37,523.523 INFO    ] time= 28/10/2026 12:03:37
[2026-10-28 12:03:37,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:03:37,610.610 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:03:37,745.745 INFO    ] No existing commands found in stream
[2026-10-28 12:03:42,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:03:42,757.757 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-28 12:03:47,270.270 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:03:47,272.272 INFO    ] Checking for system updates...
[2026-10-28 12:03:47,311.311 INFO    ] 200
[2026-10-28 12:03:47,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:03:47,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:03:47,373.373 INFO    ] No update needed
[2026-10-28 12:03:47,376.376 INFO    ] Checking for camera pi updates...
[2026-10-28 12:03:47,409.409 INFO    ] 200
[2026-10-28 12:03:47,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:03:47,452.452 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:03:47,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:03:47,535.535 INFO    ] No camera update needed
[2026-10-28 12:03:47,537.537 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:03:47,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:03:47,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:03:47,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:03:49,590.590 INFO    ] ================================================
[2026-10-28 12:03:49,605.605 INFO    ] Launching Daemon at Wed Oct 28 12:03:49 IST 2026
[2026-10-28 12:03:49,615.615 INFO    ] ================================================
[2026-10-28 12:03:50,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:03:50
[2026-10-28 12:03:50,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:03:51,231.231 INFO    ] Initializing speech engine...
[2026-10-28 12:03:51,240.240 INFO    ] 2026-10-28 12:03:51
[2026-10-28 12:03:51,519.519 INFO    ] 2026-10-28 12:03:51
[2026-10-28 12:03:51,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:03:51,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:03:51,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:03:52,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:03:52,083.083 INFO    ] time= 28/10/2026 12:03:52
[2026-10-28 12:03:52,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:03:52,109.109 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:03:52,271.271 INFO    ] No existing commands found in stream
[2026-10-28 12:03:57,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:03:57,300.300 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 12:03:59,844.844 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:03:59,847.847 INFO    ] Checking for system updates...
[2026-10-28 12:03:59,890.890 INFO    ] 200
[2026-10-28 12:03:59,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:03:59,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:03:59,951.951 INFO    ] No update needed
[2026-10-28 12:03:59,954.954 INFO    ] Checking for camera pi updates...
[2026-10-28 12:03:59,989.989 INFO    ] 200
[2026-10-28 12:03:59,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:04:00,037.037 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:04:00,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:04:00,127.127 INFO    ] No camera update needed
[2026-10-28 12:04:00,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:04:00,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:04:00,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:04:00,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:04:02,186.186 INFO    ] ================================================
[2026-10-28 12:04:02,214.214 INFO    ] Launching Daemon at Wed Oct 28 12:04:02 IST 2026
[2026-10-28 12:04:02,228.228 INFO    ] ================================================
[2026-10-28 12:04:02,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:04:02
[2026-10-28 12:04:03,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:04:03,989.989 INFO    ] Initializing speech engine...
[2026-10-28 12:04:03,998.998 INFO    ] 2026-10-28 12:04:03
[2026-10-28 12:04:04,264.264 INFO    ] 2026-10-28 12:04:04
[2026-10-28 12:04:04,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:04:04,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:04:04,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:04:04,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:04:04,837.837 INFO    ] time= 28/10/2026 12:04:04
[2026-10-28 12:04:04,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:04:04,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:04:04,995.995 INFO    ] No existing commands found in stream
[2026-10-28 12:04:10,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:04:10,021.021 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-28 12:04:14,108.108 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:04:14,111.111 INFO    ] Checking for system updates...
[2026-10-28 12:04:14,147.147 INFO    ] 200
[2026-10-28 12:04:14,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:04:14,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:04:14,215.215 INFO    ] No update needed
[2026-10-28 12:04:14,217.217 INFO    ] Checking for camera pi updates...
[2026-10-28 12:04:14,254.254 INFO    ] 200
[2026-10-28 12:04:14,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:04:14,298.298 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:04:14,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:04:14,386.386 INFO    ] No camera update needed
[2026-10-28 12:04:14,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:04:14,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:04:14,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:04:14,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:04:16,445.445 INFO    ] ================================================
[2026-10-28 12:04:16,462.462 INFO    ] Launching Daemon at Wed Oct 28 12:04:16 IST 2026
[2026-10-28 12:04:16,472.472 INFO    ] ================================================
[2026-10-28 12:04:17,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:04:17
[2026-10-28 12:04:17,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:04:18,133.133 INFO    ] Initializing speech engine...
[2026-10-28 12:04:18,144.144 INFO    ] 2026-10-28 12:04:18
[2026-10-28 12:04:18,422.422 INFO    ] 2026-10-28 12:04:18
[2026-10-28 12:04:18,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:04:18,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:04:18,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:04:19,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:04:19,016.016 INFO    ] time= 28/10/2026 12:04:19
[2026-10-28 12:04:19,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:04:19,040.040 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:04:19,186.186 INFO    ] No existing commands found in stream
[2026-10-28 12:04:24,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:04:24,206.206 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 12:04:27,871.871 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:04:27,874.874 INFO    ] Checking for system updates...
[2026-10-28 12:04:27,914.914 INFO    ] 200
[2026-10-28 12:04:27,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:04:27,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:04:27,973.973 INFO    ] No update needed
[2026-10-28 12:04:27,976.976 INFO    ] Checking for camera pi updates...
[2026-10-28 12:04:28,013.013 INFO    ] 200
[2026-10-28 12:04:28,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:04:28,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:04:28,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:04:28,149.149 INFO    ] No camera update needed
[2026-10-28 12:04:28,152.152 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:04:28,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:04:28,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:04:28,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:04:30,206.206 INFO    ] ================================================
[2026-10-28 12:04:30,222.222 INFO    ] Launching Daemon at Wed Oct 28 12:04:30 IST 2026
[2026-10-28 12:04:30,233.233 INFO    ] ================================================
[2026-10-28 12:04:30,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:04:30
[2026-10-28 12:04:31,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:04:31,752.752 INFO    ] Initializing speech engine...
[2026-10-28 12:04:31,759.759 INFO    ] 2026-10-28 12:04:31
[2026-10-28 12:04:32,026.026 INFO    ] 2026-10-28 12:04:32
[2026-10-28 12:04:32,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:04:32,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:04:32,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:04:32,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:04:32,618.618 INFO    ] time= 28/10/2026 12:04:32
[2026-10-28 12:04:32,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:04:32,659.659 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:04:32,801.801 INFO    ] No existing commands found in stream
[2026-10-28 12:04:37,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:04:37,835.835 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-28 12:04:41,269.269 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:04:41,272.272 INFO    ] Checking for system updates...
[2026-10-28 12:04:41,307.307 INFO    ] 200
[2026-10-28 12:04:41,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:04:41,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:04:41,366.366 INFO    ] No update needed
[2026-10-28 12:04:41,369.369 INFO    ] Checking for camera pi updates...
[2026-10-28 12:04:41,410.410 INFO    ] 200
[2026-10-28 12:04:41,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:04:41,459.459 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:04:41,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:04:41,639.639 INFO    ] No camera update needed
[2026-10-28 12:04:41,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:04:41,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:04:41,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:04:41,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:04:43,698.698 INFO    ] ================================================
[2026-10-28 12:04:43,714.714 INFO    ] Launching Daemon at Wed Oct 28 12:04:43 IST 2026
[2026-10-28 12:04:43,725.725 INFO    ] ================================================
[2026-10-28 12:04:44,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:04:44
[2026-10-28 12:04:45,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:04:45,380.380 INFO    ] Initializing speech engine...
[2026-10-28 12:04:45,394.394 INFO    ] 2026-10-28 12:04:45
[2026-10-28 12:04:45,680.680 INFO    ] 2026-10-28 12:04:45
[2026-10-28 12:04:45,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:04:46,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:04:46,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:04:46,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:04:46,285.285 INFO    ] time= 28/10/2026 12:04:46
[2026-10-28 12:04:46,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:04:46,387.387 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:04:46,578.578 INFO    ] No existing commands found in stream
[2026-10-28 12:04:51,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:04:51,605.605 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-28 12:04:55,978.978 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:04:55,982.982 INFO    ] Checking for system updates...
[2026-10-28 12:04:56,028.028 INFO    ] 200
[2026-10-28 12:04:56,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:04:56,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:04:56,118.118 INFO    ] No update needed
[2026-10-28 12:04:56,121.121 INFO    ] Checking for camera pi updates...
[2026-10-28 12:04:56,159.159 INFO    ] 200
[2026-10-28 12:04:56,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:04:56,240.240 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:04:56,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:04:56,327.327 INFO    ] No camera update needed
[2026-10-28 12:04:56,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:04:56,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:04:56,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:04:56,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:04:58,387.387 INFO    ] ================================================
[2026-10-28 12:04:58,404.404 INFO    ] Launching Daemon at Wed Oct 28 12:04:58 IST 2026
[2026-10-28 12:04:58,416.416 INFO    ] ================================================
[2026-10-28 12:04:58,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:04:58
[2026-10-28 12:04:59,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:04:59,843.843 INFO    ] Initializing speech engine...
[2026-10-28 12:04:59,851.851 INFO    ] 2026-10-28 12:04:59
[2026-10-28 12:05:00,129.129 INFO    ] 2026-10-28 12:05:00
[2026-10-28 12:05:00,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:05:00,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:05:00,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:05:00,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:05:00,710.710 INFO    ] time= 28/10/2026 12:05:00
[2026-10-28 12:05:00,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:05:00,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:05:00,937.937 INFO    ] No existing commands found in stream
[2026-10-28 12:05:05,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:05:05,964.964 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 12:05:09,831.831 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:05:09,833.833 INFO    ] Checking for system updates...
[2026-10-28 12:05:09,869.869 INFO    ] 200
[2026-10-28 12:05:09,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:05:09,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:05:09,937.937 INFO    ] No update needed
[2026-10-28 12:05:09,939.939 INFO    ] Checking for camera pi updates...
[2026-10-28 12:05:09,972.972 INFO    ] 200
[2026-10-28 12:05:09,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:05:10,018.018 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:05:10,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:05:10,103.103 INFO    ] No camera update needed
[2026-10-28 12:05:10,105.105 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:05:10,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:05:10,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:05:10,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:05:12,158.158 INFO    ] ================================================
[2026-10-28 12:05:12,174.174 INFO    ] Launching Daemon at Wed Oct 28 12:05:12 IST 2026
[2026-10-28 12:05:12,185.185 INFO    ] ================================================
[2026-10-28 12:05:12,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:05:12
[2026-10-28 12:05:13,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:05:13,740.740 INFO    ] Initializing speech engine...
[2026-10-28 12:05:13,751.751 INFO    ] 2026-10-28 12:05:13
[2026-10-28 12:05:14,057.057 INFO    ] 2026-10-28 12:05:14
[2026-10-28 12:05:14,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:05:14,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:05:14,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:05:14,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:05:14,788.788 INFO    ] time= 28/10/2026 12:05:14
[2026-10-28 12:05:14,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:05:14,889.889 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:05:15,032.032 INFO    ] No existing commands found in stream
[2026-10-28 12:05:20,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:05:20,049.049 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-28 12:05:23,576.576 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:05:23,578.578 INFO    ] Checking for system updates...
[2026-10-28 12:05:23,615.615 INFO    ] 200
[2026-10-28 12:05:23,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:05:23,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:05:23,675.675 INFO    ] No update needed
[2026-10-28 12:05:23,678.678 INFO    ] Checking for camera pi updates...
[2026-10-28 12:05:23,712.712 INFO    ] 200
[2026-10-28 12:05:23,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:05:23,758.758 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:05:23,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:05:23,843.843 INFO    ] No camera update needed
[2026-10-28 12:05:23,845.845 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:05:23,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:05:23,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:05:23,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:05:25,903.903 INFO    ] ================================================
[2026-10-28 12:05:25,919.919 INFO    ] Launching Daemon at Wed Oct 28 12:05:25 IST 2026
[2026-10-28 12:05:25,930.930 INFO    ] ================================================
[2026-10-28 12:05:26,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:05:26
[2026-10-28 12:05:27,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:05:27,332.332 INFO    ] Initializing speech engine...
[2026-10-28 12:05:27,348.348 INFO    ] 2026-10-28 12:05:27
[2026-10-28 12:05:27,628.628 INFO    ] 2026-10-28 12:05:27
[2026-10-28 12:05:27,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:05:27,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:05:27,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:05:28,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:05:28,231.231 INFO    ] time= 28/10/2026 12:05:28
[2026-10-28 12:05:28,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:05:28,260.260 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:05:28,423.423 INFO    ] No existing commands found in stream
[2026-10-28 12:05:33,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:05:33,458.458 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-28 12:05:37,638.638 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:05:37,641.641 INFO    ] Checking for system updates...
[2026-10-28 12:05:37,677.677 INFO    ] 200
[2026-10-28 12:05:37,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:05:37,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:05:37,735.735 INFO    ] No update needed
[2026-10-28 12:05:37,737.737 INFO    ] Checking for camera pi updates...
[2026-10-28 12:05:37,774.774 INFO    ] 200
[2026-10-28 12:05:37,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:05:37,820.820 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:05:37,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:05:37,936.936 INFO    ] No camera update needed
[2026-10-28 12:05:37,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:05:37,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:05:37,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:05:37,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:05:39,992.992 INFO    ] ================================================
[2026-10-28 12:05:40,008.008 INFO    ] Launching Daemon at Wed Oct 28 12:05:40 IST 2026
[2026-10-28 12:05:40,019.019 INFO    ] ================================================
[2026-10-28 12:05:40,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:05:40
[2026-10-28 12:05:41,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:05:41,540.540 INFO    ] Initializing speech engine...
[2026-10-28 12:05:41,552.552 INFO    ] 2026-10-28 12:05:41
[2026-10-28 12:05:41,829.829 INFO    ] 2026-10-28 12:05:41
[2026-10-28 12:05:41,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:05:42,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:05:42,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:05:42,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:05:42,582.582 INFO    ] time= 28/10/2026 12:05:42
[2026-10-28 12:05:42,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:05:42,693.693 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:05:42,920.920 INFO    ] No existing commands found in stream
[2026-10-28 12:05:47,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:05:47,954.954 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 12:05:52,631.631 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:05:52,634.634 INFO    ] Checking for system updates...
[2026-10-28 12:05:52,673.673 INFO    ] 200
[2026-10-28 12:05:52,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:05:52,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:05:52,732.732 INFO    ] No update needed
[2026-10-28 12:05:52,736.736 INFO    ] Checking for camera pi updates...
[2026-10-28 12:05:52,773.773 INFO    ] 200
[2026-10-28 12:05:52,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:05:52,817.817 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:05:52,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:05:52,909.909 INFO    ] No camera update needed
[2026-10-28 12:05:52,912.912 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:05:52,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:05:52,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:05:52,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:05:54,966.966 INFO    ] ================================================
[2026-10-28 12:05:54,982.982 INFO    ] Launching Daemon at Wed Oct 28 12:05:54 IST 2026
[2026-10-28 12:05:54,994.994 INFO    ] ================================================
[2026-10-28 12:05:55,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:05:55
[2026-10-28 12:05:56,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:05:56,567.567 INFO    ] Initializing speech engine...
[2026-10-28 12:05:56,576.576 INFO    ] 2026-10-28 12:05:56
[2026-10-28 12:05:56,847.847 INFO    ] 2026-10-28 12:05:56
[2026-10-28 12:05:56,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:05:57,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:05:57,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:05:57,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:05:57,639.639 INFO    ] time= 28/10/2026 12:05:57
[2026-10-28 12:05:57,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:05:57,732.732 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:05:57,932.932 INFO    ] No existing commands found in stream
[2026-10-28 12:06:02,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:06:02,965.965 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 12:06:04,311.311 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:06:04,314.314 INFO    ] Checking for system updates...
[2026-10-28 12:06:04,351.351 INFO    ] 200
[2026-10-28 12:06:04,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:06:04,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:06:04,409.409 INFO    ] No update needed
[2026-10-28 12:06:04,411.411 INFO    ] Checking for camera pi updates...
[2026-10-28 12:06:04,445.445 INFO    ] 200
[2026-10-28 12:06:04,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:06:04,489.489 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:06:04,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:06:04,590.590 INFO    ] No camera update needed
[2026-10-28 12:06:04,593.593 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:06:04,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:06:04,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:06:04,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:06:06,649.649 INFO    ] ================================================
[2026-10-28 12:06:06,664.664 INFO    ] Launching Daemon at Wed Oct 28 12:06:06 IST 2026
[2026-10-28 12:06:06,675.675 INFO    ] ================================================
[2026-10-28 12:06:07,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:06:07
[2026-10-28 12:06:07,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:06:08,176.176 INFO    ] Initializing speech engine...
[2026-10-28 12:06:08,185.185 INFO    ] 2026-10-28 12:06:08
[2026-10-28 12:06:08,461.461 INFO    ] 2026-10-28 12:06:08
[2026-10-28 12:06:08,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:06:08,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:06:08,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:06:09,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:06:09,148.148 INFO    ] time= 28/10/2026 12:06:09
[2026-10-28 12:06:09,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:06:09,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:06:09,396.396 INFO    ] No existing commands found in stream
[2026-10-28 12:06:14,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:06:14,426.426 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-28 12:06:15,997.997 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:06:16,000.000 INFO    ] Checking for system updates...
[2026-10-28 12:06:16,035.035 INFO    ] 200
[2026-10-28 12:06:16,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:06:16,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:06:16,096.096 INFO    ] No update needed
[2026-10-28 12:06:16,098.098 INFO    ] Checking for camera pi updates...
[2026-10-28 12:06:16,134.134 INFO    ] 200
[2026-10-28 12:06:16,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:06:16,177.177 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:06:16,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:06:16,267.267 INFO    ] No camera update needed
[2026-10-28 12:06:16,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:06:16,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:06:16,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:06:16,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:06:18,321.321 INFO    ] ================================================
[2026-10-28 12:06:18,336.336 INFO    ] Launching Daemon at Wed Oct 28 12:06:18 IST 2026
[2026-10-28 12:06:18,347.347 INFO    ] ================================================
[2026-10-28 12:06:18,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:06:18
[2026-10-28 12:06:19,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:06:19,800.800 INFO    ] Initializing speech engine...
[2026-10-28 12:06:19,809.809 INFO    ] 2026-10-28 12:06:19
[2026-10-28 12:06:20,068.068 INFO    ] 2026-10-28 12:06:20
[2026-10-28 12:06:20,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:06:20,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:06:20,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:06:20,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:06:20,633.633 INFO    ] time= 28/10/2026 12:06:20
[2026-10-28 12:06:20,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:06:20,668.668 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:06:20,822.822 INFO    ] No existing commands found in stream
[2026-10-28 12:06:25,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:06:25,855.855 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-28 12:06:31,045.045 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:06:31,048.048 INFO    ] Checking for system updates...
[2026-10-28 12:06:31,084.084 INFO    ] 200
[2026-10-28 12:06:31,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:06:31,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:06:31,145.145 INFO    ] No update needed
[2026-10-28 12:06:31,147.147 INFO    ] Checking for camera pi updates...
[2026-10-28 12:06:31,181.181 INFO    ] 200
[2026-10-28 12:06:31,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:06:31,224.224 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:06:31,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:06:31,306.306 INFO    ] No camera update needed
[2026-10-28 12:06:31,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:06:31,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:06:31,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:06:31,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:06:33,363.363 INFO    ] ================================================
[2026-10-28 12:06:33,378.378 INFO    ] Launching Daemon at Wed Oct 28 12:06:33 IST 2026
[2026-10-28 12:06:33,389.389 INFO    ] ================================================
[2026-10-28 12:06:33,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:06:33
[2026-10-28 12:06:34,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:06:34,785.785 INFO    ] Initializing speech engine...
[2026-10-28 12:06:34,792.792 INFO    ] 2026-10-28 12:06:34
[2026-10-28 12:06:35,065.065 INFO    ] 2026-10-28 12:06:35
[2026-10-28 12:06:35,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:06:35,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:06:35,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:06:35,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:06:35,636.636 INFO    ] time= 28/10/2026 12:06:35
[2026-10-28 12:06:35,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:06:35,660.660 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:06:35,794.794 INFO    ] No existing commands found in stream
[2026-10-28 12:06:40,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:06:40,825.825 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 12:06:43,755.755 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:06:43,757.757 INFO    ] Checking for system updates...
[2026-10-28 12:06:43,794.794 INFO    ] 200
[2026-10-28 12:06:43,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:06:43,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:06:43,854.854 INFO    ] No update needed
[2026-10-28 12:06:43,857.857 INFO    ] Checking for camera pi updates...
[2026-10-28 12:06:43,891.891 INFO    ] 200
[2026-10-28 12:06:43,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:06:43,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:06:44,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:06:44,119.119 INFO    ] No camera update needed
[2026-10-28 12:06:44,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:06:44,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:06:44,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:06:44,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:06:46,180.180 INFO    ] ================================================
[2026-10-28 12:06:46,195.195 INFO    ] Launching Daemon at Wed Oct 28 12:06:46 IST 2026
[2026-10-28 12:06:46,205.205 INFO    ] ================================================
[2026-10-28 12:06:46,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:06:46
[2026-10-28 12:06:47,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:06:47,682.682 INFO    ] Initializing speech engine...
[2026-10-28 12:06:47,691.691 INFO    ] 2026-10-28 12:06:47
[2026-10-28 12:06:47,959.959 INFO    ] 2026-10-28 12:06:47
[2026-10-28 12:06:48,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:06:48,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:06:48,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:06:48,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:06:48,555.555 INFO    ] time= 28/10/2026 12:06:48
[2026-10-28 12:06:48,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:06:48,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:06:48,784.784 INFO    ] No existing commands found in stream
[2026-10-28 12:06:53,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:06:53,818.818 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-28 12:06:58,444.444 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:06:58,447.447 INFO    ] Checking for system updates...
[2026-10-28 12:06:58,483.483 INFO    ] 200
[2026-10-28 12:06:58,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:06:58,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:06:58,540.540 INFO    ] No update needed
[2026-10-28 12:06:58,542.542 INFO    ] Checking for camera pi updates...
[2026-10-28 12:06:58,575.575 INFO    ] 200
[2026-10-28 12:06:58,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:06:58,619.619 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:06:58,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:06:58,710.710 INFO    ] No camera update needed
[2026-10-28 12:06:58,712.712 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:06:58,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:06:58,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:06:58,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:07:00,766.766 INFO    ] ================================================
[2026-10-28 12:07:00,781.781 INFO    ] Launching Daemon at Wed Oct 28 12:07:00 IST 2026
[2026-10-28 12:07:00,792.792 INFO    ] ================================================
[2026-10-28 12:07:01,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:07:01
[2026-10-28 12:07:02,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:07:02,401.401 INFO    ] Initializing speech engine...
[2026-10-28 12:07:02,421.421 INFO    ] 2026-10-28 12:07:02
[2026-10-28 12:07:02,746.746 INFO    ] 2026-10-28 12:07:02
[2026-10-28 12:07:02,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:07:03,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:07:03,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:07:03,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:07:03,422.422 INFO    ] time= 28/10/2026 12:07:03
[2026-10-28 12:07:03,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:07:03,527.527 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:07:03,676.676 INFO    ] No existing commands found in stream
[2026-10-28 12:07:08,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:07:08,705.705 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 12:07:11,510.510 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:07:11,513.513 INFO    ] Checking for system updates...
[2026-10-28 12:07:11,549.549 INFO    ] 200
[2026-10-28 12:07:11,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:07:11,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:07:11,606.606 INFO    ] No update needed
[2026-10-28 12:07:11,609.609 INFO    ] Checking for camera pi updates...
[2026-10-28 12:07:11,643.643 INFO    ] 200
[2026-10-28 12:07:11,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:07:11,689.689 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:07:11,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:07:11,773.773 INFO    ] No camera update needed
[2026-10-28 12:07:11,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:07:11,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:07:11,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:07:11,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:07:13,831.831 INFO    ] ================================================
[2026-10-28 12:07:13,845.845 INFO    ] Launching Daemon at Wed Oct 28 12:07:13 IST 2026
[2026-10-28 12:07:13,856.856 INFO    ] ================================================
[2026-10-28 12:07:14,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:07:14
[2026-10-28 12:07:15,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:07:15,421.421 INFO    ] Initializing speech engine...
[2026-10-28 12:07:15,434.434 INFO    ] 2026-10-28 12:07:15
[2026-10-28 12:07:15,700.700 INFO    ] 2026-10-28 12:07:15
[2026-10-28 12:07:15,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:07:16,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:07:16,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:07:16,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:07:16,507.507 INFO    ] time= 28/10/2026 12:07:16
[2026-10-28 12:07:16,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:07:16,621.621 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:07:16,829.829 INFO    ] No existing commands found in stream
[2026-10-28 12:07:21,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:07:21,858.858 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 12:07:23,117.117 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:07:23,120.120 INFO    ] Checking for system updates...
[2026-10-28 12:07:23,157.157 INFO    ] 200
[2026-10-28 12:07:23,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:07:23,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:07:23,215.215 INFO    ] No update needed
[2026-10-28 12:07:23,217.217 INFO    ] Checking for camera pi updates...
[2026-10-28 12:07:23,254.254 INFO    ] 200
[2026-10-28 12:07:23,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:07:23,298.298 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:07:23,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:07:23,404.404 INFO    ] No camera update needed
[2026-10-28 12:07:23,406.406 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:07:23,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:07:23,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:07:23,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:07:25,458.458 INFO    ] ================================================
[2026-10-28 12:07:25,473.473 INFO    ] Launching Daemon at Wed Oct 28 12:07:25 IST 2026
[2026-10-28 12:07:25,484.484 INFO    ] ================================================
[2026-10-28 12:07:26,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:07:26
[2026-10-28 12:07:26,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:07:26,921.921 INFO    ] Initializing speech engine...
[2026-10-28 12:07:26,934.934 INFO    ] 2026-10-28 12:07:26
[2026-10-28 12:07:27,192.192 INFO    ] 2026-10-28 12:07:27
[2026-10-28 12:07:27,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:07:27,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:07:27,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:07:27,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:07:27,779.779 INFO    ] time= 28/10/2026 12:07:27
[2026-10-28 12:07:27,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:07:27,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:07:27,982.982 INFO    ] No existing commands found in stream
[2026-10-28 12:07:32,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:07:32,998.998 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 12:07:33,926.926 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:07:33,929.929 INFO    ] Checking for system updates...
[2026-10-28 12:07:33,965.965 INFO    ] 200
[2026-10-28 12:07:33,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:07:34,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:07:34,024.024 INFO    ] No update needed
[2026-10-28 12:07:34,027.027 INFO    ] Checking for camera pi updates...
[2026-10-28 12:07:34,064.064 INFO    ] 200
[2026-10-28 12:07:34,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:07:34,108.108 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:07:34,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:07:34,213.213 INFO    ] No camera update needed
[2026-10-28 12:07:34,216.216 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:07:34,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:07:34,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:07:34,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:07:36,271.271 INFO    ] ================================================
[2026-10-28 12:07:36,286.286 INFO    ] Launching Daemon at Wed Oct 28 12:07:36 IST 2026
[2026-10-28 12:07:36,296.296 INFO    ] ================================================
[2026-10-28 12:07:36,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:07:36
[2026-10-28 12:07:37,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:07:37,731.731 INFO    ] Initializing speech engine...
[2026-10-28 12:07:37,738.738 INFO    ] 2026-10-28 12:07:37
[2026-10-28 12:07:38,029.029 INFO    ] 2026-10-28 12:07:38
[2026-10-28 12:07:38,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:07:38,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:07:38,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:07:38,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:07:38,647.647 INFO    ] time= 28/10/2026 12:07:38
[2026-10-28 12:07:38,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:07:38,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:07:38,801.801 INFO    ] No existing commands found in stream
[2026-10-28 12:07:43,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:07:43,830.830 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-28 12:07:47,193.193 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:07:47,196.196 INFO    ] Checking for system updates...
[2026-10-28 12:07:47,231.231 INFO    ] 200
[2026-10-28 12:07:47,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:07:47,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:07:47,291.291 INFO    ] No update needed
[2026-10-28 12:07:47,294.294 INFO    ] Checking for camera pi updates...
[2026-10-28 12:07:47,326.326 INFO    ] 200
[2026-10-28 12:07:47,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:07:47,368.368 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:07:47,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:07:47,455.455 INFO    ] No camera update needed
[2026-10-28 12:07:47,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:07:47,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:07:47,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:07:47,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:07:49,510.510 INFO    ] ================================================
[2026-10-28 12:07:49,525.525 INFO    ] Launching Daemon at Wed Oct 28 12:07:49 IST 2026
[2026-10-28 12:07:49,536.536 INFO    ] ================================================
[2026-10-28 12:07:50,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:07:50
[2026-10-28 12:07:50,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:07:50,947.947 INFO    ] Initializing speech engine...
[2026-10-28 12:07:50,962.962 INFO    ] 2026-10-28 12:07:50
[2026-10-28 12:07:51,217.217 INFO    ] 2026-10-28 12:07:51
[2026-10-28 12:07:51,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:07:51,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:07:51,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:07:51,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:07:51,789.789 INFO    ] time= 28/10/2026 12:07:51
[2026-10-28 12:07:51,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:07:51,819.819 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:07:52,017.017 INFO    ] No existing commands found in stream
[2026-10-28 12:07:57,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:07:57,050.050 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-28 12:08:00,087.087 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:08:00,090.090 INFO    ] Checking for system updates...
[2026-10-28 12:08:00,130.130 INFO    ] 200
[2026-10-28 12:08:00,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:08:00,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:08:00,189.189 INFO    ] No update needed
[2026-10-28 12:08:00,192.192 INFO    ] Checking for camera pi updates...
[2026-10-28 12:08:00,227.227 INFO    ] 200
[2026-10-28 12:08:00,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:08:00,275.275 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:08:00,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:08:00,358.358 INFO    ] No camera update needed
[2026-10-28 12:08:00,361.361 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:08:00,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:08:00,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:08:00,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:08:02,418.418 INFO    ] ================================================
[2026-10-28 12:08:02,439.439 INFO    ] Launching Daemon at Wed Oct 28 12:08:02 IST 2026
[2026-10-28 12:08:02,456.456 INFO    ] ================================================
[2026-10-28 12:08:03,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:08:03
[2026-10-28 12:08:03,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:08:04,146.146 INFO    ] Initializing speech engine...
[2026-10-28 12:08:04,155.155 INFO    ] 2026-10-28 12:08:04
[2026-10-28 12:08:04,446.446 INFO    ] 2026-10-28 12:08:04
[2026-10-28 12:08:04,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:08:04,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:08:04,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:08:05,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:08:05,071.071 INFO    ] time= 28/10/2026 12:08:05
[2026-10-28 12:08:05,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:08:05,097.097 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:08:05,249.249 INFO    ] No existing commands found in stream
[2026-10-28 12:08:10,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:08:10,277.277 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-28 12:08:13,808.808 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:08:13,810.810 INFO    ] Checking for system updates...
[2026-10-28 12:08:13,846.846 INFO    ] 200
[2026-10-28 12:08:13,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:08:13,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:08:13,909.909 INFO    ] No update needed
[2026-10-28 12:08:13,911.911 INFO    ] Checking for camera pi updates...
[2026-10-28 12:08:13,945.945 INFO    ] 200
[2026-10-28 12:08:13,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:08:13,992.992 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:08:14,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:08:14,090.090 INFO    ] No camera update needed
[2026-10-28 12:08:14,093.093 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:08:14,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:08:14,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:08:14,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:08:16,146.146 INFO    ] ================================================
[2026-10-28 12:08:16,161.161 INFO    ] Launching Daemon at Wed Oct 28 12:08:16 IST 2026
[2026-10-28 12:08:16,172.172 INFO    ] ================================================
[2026-10-28 12:08:16,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:08:16
[2026-10-28 12:08:17,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:08:17,779.779 INFO    ] Initializing speech engine...
[2026-10-28 12:08:17,784.784 INFO    ] 2026-10-28 12:08:17
[2026-10-28 12:08:18,042.042 INFO    ] 2026-10-28 12:08:18
[2026-10-28 12:08:18,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:08:18,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:08:18,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:08:18,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:08:18,633.633 INFO    ] time= 28/10/2026 12:08:18
[2026-10-28 12:08:18,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:08:18,659.659 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:08:18,809.809 INFO    ] No existing commands found in stream
[2026-10-28 12:08:23,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:08:23,836.836 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 12:08:25,208.208 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:08:25,211.211 INFO    ] Checking for system updates...
[2026-10-28 12:08:25,248.248 INFO    ] 200
[2026-10-28 12:08:25,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:08:25,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:08:25,307.307 INFO    ] No update needed
[2026-10-28 12:08:25,309.309 INFO    ] Checking for camera pi updates...
[2026-10-28 12:08:25,344.344 INFO    ] 200
[2026-10-28 12:08:25,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:08:25,389.389 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:08:25,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:08:25,478.478 INFO    ] No camera update needed
[2026-10-28 12:08:25,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:08:25,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:08:25,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:08:25,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:08:27,538.538 INFO    ] ================================================
[2026-10-28 12:08:27,554.554 INFO    ] Launching Daemon at Wed Oct 28 12:08:27 IST 2026
[2026-10-28 12:08:27,565.565 INFO    ] ================================================
[2026-10-28 12:08:28,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:08:28
[2026-10-28 12:08:28,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:08:28,966.966 INFO    ] Initializing speech engine...
[2026-10-28 12:08:28,972.972 INFO    ] 2026-10-28 12:08:28
[2026-10-28 12:08:29,265.265 INFO    ] 2026-10-28 12:08:29
[2026-10-28 12:08:29,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:08:29,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:08:29,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:08:29,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:08:29,889.889 INFO    ] time= 28/10/2026 12:08:29
[2026-10-28 12:08:29,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:08:29,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:08:30,061.061 INFO    ] No existing commands found in stream
[2026-10-28 12:08:35,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:08:35,085.085 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-28 12:08:38,296.296 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:08:38,299.299 INFO    ] Checking for system updates...
[2026-10-28 12:08:38,335.335 INFO    ] 200
[2026-10-28 12:08:38,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:08:38,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:08:38,392.392 INFO    ] No update needed
[2026-10-28 12:08:38,395.395 INFO    ] Checking for camera pi updates...
[2026-10-28 12:08:38,428.428 INFO    ] 200
[2026-10-28 12:08:38,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:08:38,558.558 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:08:38,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:08:38,646.646 INFO    ] No camera update needed
[2026-10-28 12:08:38,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:08:38,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:08:38,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:08:38,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:08:40,703.703 INFO    ] ================================================
[2026-10-28 12:08:40,718.718 INFO    ] Launching Daemon at Wed Oct 28 12:08:40 IST 2026
[2026-10-28 12:08:40,730.730 INFO    ] ================================================
[2026-10-28 12:08:41,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:08:41
[2026-10-28 12:08:42,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:08:42,316.316 INFO    ] Initializing speech engine...
[2026-10-28 12:08:42,325.325 INFO    ] 2026-10-28 12:08:42
[2026-10-28 12:08:42,599.599 INFO    ] 2026-10-28 12:08:42
[2026-10-28 12:08:42,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:08:43,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:08:43,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:08:43,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:08:43,390.390 INFO    ] time= 28/10/2026 12:08:43
[2026-10-28 12:08:43,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:08:43,481.481 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:08:43,736.736 INFO    ] No existing commands found in stream
[2026-10-28 12:08:48,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:08:48,753.753 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-28 12:08:50,075.075 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:08:50,078.078 INFO    ] Checking for system updates...
[2026-10-28 12:08:50,114.114 INFO    ] 200
[2026-10-28 12:08:50,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:08:50,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:08:50,172.172 INFO    ] No update needed
[2026-10-28 12:08:50,174.174 INFO    ] Checking for camera pi updates...
[2026-10-28 12:08:50,210.210 INFO    ] 200
[2026-10-28 12:08:50,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:08:50,253.253 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:08:50,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:08:50,460.460 INFO    ] No camera update needed
[2026-10-28 12:08:50,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:08:50,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:08:50,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:08:50,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:08:52,517.517 INFO    ] ================================================
[2026-10-28 12:08:52,533.533 INFO    ] Launching Daemon at Wed Oct 28 12:08:52 IST 2026
[2026-10-28 12:08:52,544.544 INFO    ] ================================================
[2026-10-28 12:08:53,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:08:53
[2026-10-28 12:08:53,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:08:54,079.079 INFO    ] Initializing speech engine...
[2026-10-28 12:08:54,089.089 INFO    ] 2026-10-28 12:08:54
[2026-10-28 12:08:54,336.336 INFO    ] 2026-10-28 12:08:54
[2026-10-28 12:08:54,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:08:54,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:08:54,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:08:55,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:08:55,075.075 INFO    ] time= 28/10/2026 12:08:55
[2026-10-28 12:08:55,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:08:55,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:08:55,298.298 INFO    ] No existing commands found in stream
[2026-10-28 12:09:00,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:09:00,322.322 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 12:09:04,976.976 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:09:04,979.979 INFO    ] Checking for system updates...
[2026-10-28 12:09:05,014.014 INFO    ] 200
[2026-10-28 12:09:05,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:09:05,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:09:05,071.071 INFO    ] No update needed
[2026-10-28 12:09:05,074.074 INFO    ] Checking for camera pi updates...
[2026-10-28 12:09:05,109.109 INFO    ] 200
[2026-10-28 12:09:05,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:09:05,152.152 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:09:05,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:09:05,243.243 INFO    ] No camera update needed
[2026-10-28 12:09:05,246.246 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:09:05,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:09:05,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:09:05,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:09:07,297.297 INFO    ] ================================================
[2026-10-28 12:09:07,312.312 INFO    ] Launching Daemon at Wed Oct 28 12:09:07 IST 2026
[2026-10-28 12:09:07,323.323 INFO    ] ================================================
[2026-10-28 12:09:07,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:09:07
[2026-10-28 12:09:08,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:09:08,921.921 INFO    ] Initializing speech engine...
[2026-10-28 12:09:08,927.927 INFO    ] 2026-10-28 12:09:08
[2026-10-28 12:09:09,191.191 INFO    ] 2026-10-28 12:09:09
[2026-10-28 12:09:09,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:09:09,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:09:09,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:09:09,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:09:09,976.976 INFO    ] time= 28/10/2026 12:09:09
[2026-10-28 12:09:10,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:09:10,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:09:10,351.351 INFO    ] No existing commands found in stream
[2026-10-28 12:09:15,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:09:15,365.365 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 12:09:16,835.835 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:09:16,838.838 INFO    ] Checking for system updates...
[2026-10-28 12:09:16,874.874 INFO    ] 200
[2026-10-28 12:09:16,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:09:16,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:09:16,933.933 INFO    ] No update needed
[2026-10-28 12:09:16,936.936 INFO    ] Checking for camera pi updates...
[2026-10-28 12:09:16,971.971 INFO    ] 200
[2026-10-28 12:09:16,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:09:17,015.015 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:09:17,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:09:17,104.104 INFO    ] No camera update needed
[2026-10-28 12:09:17,106.106 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:09:17,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:09:17,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:09:17,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:09:19,158.158 INFO    ] ================================================
[2026-10-28 12:09:19,212.212 INFO    ] Launching Daemon at Wed Oct 28 12:09:19 IST 2026
[2026-10-28 12:09:19,222.222 INFO    ] ================================================
[2026-10-28 12:09:19,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:09:19
[2026-10-28 12:09:20,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:09:20,794.794 INFO    ] Initializing speech engine...
[2026-10-28 12:09:20,803.803 INFO    ] 2026-10-28 12:09:20
[2026-10-28 12:09:21,072.072 INFO    ] 2026-10-28 12:09:21
[2026-10-28 12:09:21,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:09:22,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:09:22,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:09:22,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:09:22,418.418 INFO    ] time= 28/10/2026 12:09:22
[2026-10-28 12:09:22,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:09:22,430.430 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:09:22,530.530 INFO    ] No existing commands found in stream
[2026-10-28 12:09:27,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:09:27,545.545 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-28 12:09:30,604.604 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:09:30,606.606 INFO    ] Checking for system updates...
[2026-10-28 12:09:30,642.642 INFO    ] 200
[2026-10-28 12:09:30,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:09:30,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:09:30,699.699 INFO    ] No update needed
[2026-10-28 12:09:30,702.702 INFO    ] Checking for camera pi updates...
[2026-10-28 12:09:30,735.735 INFO    ] 200
[2026-10-28 12:09:30,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:09:30,778.778 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:09:30,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:09:30,860.860 INFO    ] No camera update needed
[2026-10-28 12:09:30,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:09:30,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:09:30,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:09:30,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:09:32,916.916 INFO    ] ================================================
[2026-10-28 12:09:32,932.932 INFO    ] Launching Daemon at Wed Oct 28 12:09:32 IST 2026
[2026-10-28 12:09:32,943.943 INFO    ] ================================================
[2026-10-28 12:09:33,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:09:33
[2026-10-28 12:09:34,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:09:34,504.504 INFO    ] Initializing speech engine...
[2026-10-28 12:09:34,513.513 INFO    ] 2026-10-28 12:09:34
[2026-10-28 12:09:34,764.764 INFO    ] 2026-10-28 12:09:34
[2026-10-28 12:09:34,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:09:35,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:09:35,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:09:35,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:09:35,335.335 INFO    ] time= 28/10/2026 12:09:35
[2026-10-28 12:09:35,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:09:35,370.370 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:09:35,582.582 INFO    ] No existing commands found in stream
[2026-10-28 12:09:40,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:09:40,604.604 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-28 12:09:45,330.330 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:09:45,332.332 INFO    ] Checking for system updates...
[2026-10-28 12:09:45,367.367 INFO    ] 200
[2026-10-28 12:09:45,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:09:45,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:09:45,425.425 INFO    ] No update needed
[2026-10-28 12:09:45,427.427 INFO    ] Checking for camera pi updates...
[2026-10-28 12:09:45,461.461 INFO    ] 200
[2026-10-28 12:09:45,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:09:45,505.505 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:09:45,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:09:45,592.592 INFO    ] No camera update needed
[2026-10-28 12:09:45,595.595 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:09:45,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:09:45,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:09:45,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:09:47,648.648 INFO    ] ================================================
[2026-10-28 12:09:47,663.663 INFO    ] Launching Daemon at Wed Oct 28 12:09:47 IST 2026
[2026-10-28 12:09:47,674.674 INFO    ] ================================================
[2026-10-28 12:09:48,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:09:48
[2026-10-28 12:09:48,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:09:49,281.281 INFO    ] Initializing speech engine...
[2026-10-28 12:09:49,287.287 INFO    ] 2026-10-28 12:09:49
[2026-10-28 12:09:49,560.560 INFO    ] 2026-10-28 12:09:49
[2026-10-28 12:09:49,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:09:49,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:09:49,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:09:50,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:09:50,190.190 INFO    ] time= 28/10/2026 12:09:50
[2026-10-28 12:09:50,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:09:50,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:09:50,352.352 INFO    ] No existing commands found in stream
[2026-10-28 12:09:55,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:09:55,385.385 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-28 12:10:00,037.037 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:10:00,044.044 INFO    ] Checking for system updates...
[2026-10-28 12:10:00,090.090 INFO    ] 200
[2026-10-28 12:10:00,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:10:00,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:10:00,149.149 INFO    ] No update needed
[2026-10-28 12:10:00,151.151 INFO    ] Checking for camera pi updates...
[2026-10-28 12:10:00,185.185 INFO    ] 200
[2026-10-28 12:10:00,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:10:00,228.228 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:10:00,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:10:00,312.312 INFO    ] No camera update needed
[2026-10-28 12:10:00,315.315 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:10:00,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:10:00,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:10:00,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:10:02,376.376 INFO    ] ================================================
[2026-10-28 12:10:02,421.421 INFO    ] Launching Daemon at Wed Oct 28 12:10:02 IST 2026
[2026-10-28 12:10:02,451.451 INFO    ] ================================================
[2026-10-28 12:10:03,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:10:03
[2026-10-28 12:10:03,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:10:04,103.103 INFO    ] Initializing speech engine...
[2026-10-28 12:10:04,111.111 INFO    ] 2026-10-28 12:10:04
[2026-10-28 12:10:04,407.407 INFO    ] 2026-10-28 12:10:04
[2026-10-28 12:10:04,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:10:04,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:10:04,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:10:04,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:10:05,041.041 INFO    ] time= 28/10/2026 12:10:04
[2026-10-28 12:10:05,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:10:05,074.074 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:10:05,226.226 INFO    ] No existing commands found in stream
[2026-10-28 12:10:10,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:10:10,244.244 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 12:10:11,913.913 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:10:11,916.916 INFO    ] Checking for system updates...
[2026-10-28 12:10:11,953.953 INFO    ] 200
[2026-10-28 12:10:11,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:10:12,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:10:12,015.015 INFO    ] No update needed
[2026-10-28 12:10:12,017.017 INFO    ] Checking for camera pi updates...
[2026-10-28 12:10:12,051.051 INFO    ] 200
[2026-10-28 12:10:12,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:10:12,095.095 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:10:12,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:10:12,176.176 INFO    ] No camera update needed
[2026-10-28 12:10:12,179.179 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:10:12,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:10:12,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:10:12,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:10:14,235.235 INFO    ] ================================================
[2026-10-28 12:10:14,251.251 INFO    ] Launching Daemon at Wed Oct 28 12:10:14 IST 2026
[2026-10-28 12:10:14,261.261 INFO    ] ================================================
[2026-10-28 12:10:14,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:10:14
[2026-10-28 12:10:15,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:10:15,902.902 INFO    ] Initializing speech engine...
[2026-10-28 12:10:15,916.916 INFO    ] 2026-10-28 12:10:15
[2026-10-28 12:10:16,229.229 INFO    ] 2026-10-28 12:10:16
[2026-10-28 12:10:16,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:10:16,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:10:16,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:10:16,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:10:16,962.962 INFO    ] time= 28/10/2026 12:10:16
[2026-10-28 12:10:17,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:10:17,065.065 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:10:17,286.286 INFO    ] No existing commands found in stream
[2026-10-28 12:10:22,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:10:22,310.310 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-28 12:10:24,157.157 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:10:24,160.160 INFO    ] Checking for system updates...
[2026-10-28 12:10:24,197.197 INFO    ] 200
[2026-10-28 12:10:24,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:10:24,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:10:24,254.254 INFO    ] No update needed
[2026-10-28 12:10:24,257.257 INFO    ] Checking for camera pi updates...
[2026-10-28 12:10:24,290.290 INFO    ] 200
[2026-10-28 12:10:24,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:10:24,333.333 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:10:24,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:10:24,431.431 INFO    ] No camera update needed
[2026-10-28 12:10:24,433.433 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:10:24,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:10:24,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:10:24,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:10:26,486.486 INFO    ] ================================================
[2026-10-28 12:10:26,501.501 INFO    ] Launching Daemon at Wed Oct 28 12:10:26 IST 2026
[2026-10-28 12:10:26,512.512 INFO    ] ================================================
[2026-10-28 12:10:27,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:10:27
[2026-10-28 12:10:27,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:10:27,967.967 INFO    ] Initializing speech engine...
[2026-10-28 12:10:27,973.973 INFO    ] 2026-10-28 12:10:27
[2026-10-28 12:10:28,236.236 INFO    ] 2026-10-28 12:10:28
[2026-10-28 12:10:28,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:10:28,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:10:28,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:10:28,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:10:28,820.820 INFO    ] time= 28/10/2026 12:10:28
[2026-10-28 12:10:28,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:10:28,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:10:28,967.967 INFO    ] No existing commands found in stream
[2026-10-28 12:10:33,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:10:33,995.995 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 12:10:36,312.312 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:10:36,315.315 INFO    ] Checking for system updates...
[2026-10-28 12:10:36,351.351 INFO    ] 200
[2026-10-28 12:10:36,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:10:36,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:10:36,408.408 INFO    ] No update needed
[2026-10-28 12:10:36,411.411 INFO    ] Checking for camera pi updates...
[2026-10-28 12:10:36,449.449 INFO    ] 200
[2026-10-28 12:10:36,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:10:36,492.492 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:10:36,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:10:36,577.577 INFO    ] No camera update needed
[2026-10-28 12:10:36,579.579 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:10:36,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:10:36,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:10:36,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:10:38,635.635 INFO    ] ================================================
[2026-10-28 12:10:38,650.650 INFO    ] Launching Daemon at Wed Oct 28 12:10:38 IST 2026
[2026-10-28 12:10:38,660.660 INFO    ] ================================================
[2026-10-28 12:10:39,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:10:39
[2026-10-28 12:10:39,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:10:40,078.078 INFO    ] Initializing speech engine...
[2026-10-28 12:10:40,090.090 INFO    ] 2026-10-28 12:10:40
[2026-10-28 12:10:40,342.342 INFO    ] 2026-10-28 12:10:40
[2026-10-28 12:10:40,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:10:40,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:10:40,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:10:40,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:10:40,931.931 INFO    ] time= 28/10/2026 12:10:40
[2026-10-28 12:10:40,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:10:40,973.973 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:10:41,106.106 INFO    ] No existing commands found in stream
[2026-10-28 12:10:46,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:10:46,129.129 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 12:10:48,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:10:48,208.208 INFO    ] Checking for system updates...
[2026-10-28 12:10:48,246.246 INFO    ] 200
[2026-10-28 12:10:48,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:10:48,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:10:48,304.304 INFO    ] No update needed
[2026-10-28 12:10:48,306.306 INFO    ] Checking for camera pi updates...
[2026-10-28 12:10:48,340.340 INFO    ] 200
[2026-10-28 12:10:48,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:10:48,387.387 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:10:48,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:10:48,471.471 INFO    ] No camera update needed
[2026-10-28 12:10:48,474.474 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:10:48,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:10:48,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:10:48,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:10:50,529.529 INFO    ] ================================================
[2026-10-28 12:10:50,544.544 INFO    ] Launching Daemon at Wed Oct 28 12:10:50 IST 2026
[2026-10-28 12:10:50,555.555 INFO    ] ================================================
[2026-10-28 12:10:51,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:10:51
[2026-10-28 12:10:51,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:10:51,975.975 INFO    ] Initializing speech engine...
[2026-10-28 12:10:51,981.981 INFO    ] 2026-10-28 12:10:51
[2026-10-28 12:10:52,279.279 INFO    ] 2026-10-28 12:10:52
[2026-10-28 12:10:52,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:10:52,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:10:52,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:10:52,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:10:52,906.906 INFO    ] time= 28/10/2026 12:10:52
[2026-10-28 12:10:52,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:10:52,938.938 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:10:53,104.104 INFO    ] No existing commands found in stream
[2026-10-28 12:10:58,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:10:58,132.132 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-28 12:11:02,514.514 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:11:02,518.518 INFO    ] Checking for system updates...
[2026-10-28 12:11:02,567.567 INFO    ] 200
[2026-10-28 12:11:02,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:11:02,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:11:02,646.646 INFO    ] No update needed
[2026-10-28 12:11:02,649.649 INFO    ] Checking for camera pi updates...
[2026-10-28 12:11:02,690.690 INFO    ] 200
[2026-10-28 12:11:02,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:11:02,738.738 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:11:02,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:11:02,865.865 INFO    ] No camera update needed
[2026-10-28 12:11:02,868.868 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:11:02,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:11:02,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:11:02,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:11:04,920.920 INFO    ] ================================================
[2026-10-28 12:11:04,935.935 INFO    ] Launching Daemon at Wed Oct 28 12:11:04 IST 2026
[2026-10-28 12:11:04,945.945 INFO    ] ================================================
[2026-10-28 12:11:05,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:11:05
[2026-10-28 12:11:06,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:11:06,392.392 INFO    ] Initializing speech engine...
[2026-10-28 12:11:06,401.401 INFO    ] 2026-10-28 12:11:06
[2026-10-28 12:11:06,664.664 INFO    ] 2026-10-28 12:11:06
[2026-10-28 12:11:06,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:11:07,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:11:07,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:11:07,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:11:07,257.257 INFO    ] time= 28/10/2026 12:11:07
[2026-10-28 12:11:07,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:11:07,314.314 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:11:07,462.462 INFO    ] No existing commands found in stream
[2026-10-28 12:11:12,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:11:12,481.481 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 12:11:13,885.885 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:11:13,887.887 INFO    ] Checking for system updates...
[2026-10-28 12:11:13,926.926 INFO    ] 200
[2026-10-28 12:11:13,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:11:13,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:11:13,988.988 INFO    ] No update needed
[2026-10-28 12:11:13,991.991 INFO    ] Checking for camera pi updates...
[2026-10-28 12:11:14,027.027 INFO    ] 200
[2026-10-28 12:11:14,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:11:14,073.073 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:11:14,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:11:14,174.174 INFO    ] No camera update needed
[2026-10-28 12:11:14,176.176 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:11:14,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:11:14,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:11:14,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:11:16,231.231 INFO    ] ================================================
[2026-10-28 12:11:16,246.246 INFO    ] Launching Daemon at Wed Oct 28 12:11:16 IST 2026
[2026-10-28 12:11:16,257.257 INFO    ] ================================================
[2026-10-28 12:11:16,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:11:16
[2026-10-28 12:11:17,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:11:17,830.830 INFO    ] Initializing speech engine...
[2026-10-28 12:11:17,838.838 INFO    ] 2026-10-28 12:11:17
[2026-10-28 12:11:18,104.104 INFO    ] 2026-10-28 12:11:18
[2026-10-28 12:11:18,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:11:18,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:11:18,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:11:18,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:11:18,794.794 INFO    ] time= 28/10/2026 12:11:18
[2026-10-28 12:11:18,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:11:18,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:11:19,096.096 INFO    ] No existing commands found in stream
[2026-10-28 12:11:24,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:11:24,110.110 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-28 12:11:25,679.679 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:11:25,682.682 INFO    ] Checking for system updates...
[2026-10-28 12:11:25,717.717 INFO    ] 200
[2026-10-28 12:11:25,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:11:25,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:11:25,780.780 INFO    ] No update needed
[2026-10-28 12:11:25,782.782 INFO    ] Checking for camera pi updates...
[2026-10-28 12:11:25,818.818 INFO    ] 200
[2026-10-28 12:11:25,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:11:25,861.861 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:11:25,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:11:25,942.942 INFO    ] No camera update needed
[2026-10-28 12:11:25,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:11:25,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:11:25,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:11:25,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:11:28,997.997 INFO    ] ================================================
[2026-10-28 12:11:28,012.012 INFO    ] Launching Daemon at Wed Oct 28 12:11:28 IST 2026
[2026-10-28 12:11:28,022.022 INFO    ] ================================================
[2026-10-28 12:11:28,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:11:28
[2026-10-28 12:11:29,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:11:29,473.473 INFO    ] Initializing speech engine...
[2026-10-28 12:11:29,478.478 INFO    ] 2026-10-28 12:11:29
[2026-10-28 12:11:29,739.739 INFO    ] 2026-10-28 12:11:29
[2026-10-28 12:11:29,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:11:30,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:11:30,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:11:30,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:11:30,296.296 INFO    ] time= 28/10/2026 12:11:30
[2026-10-28 12:11:30,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:11:30,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:11:30,419.419 INFO    ] No existing commands found in stream
[2026-10-28 12:11:35,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:11:35,431.431 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 12:11:39,013.013 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:11:39,016.016 INFO    ] Checking for system updates...
[2026-10-28 12:11:39,054.054 INFO    ] 200
[2026-10-28 12:11:39,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:11:39,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:11:39,111.111 INFO    ] No update needed
[2026-10-28 12:11:39,113.113 INFO    ] Checking for camera pi updates...
[2026-10-28 12:11:39,147.147 INFO    ] 200
[2026-10-28 12:11:39,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:11:39,191.191 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:11:39,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:11:39,281.281 INFO    ] No camera update needed
[2026-10-28 12:11:39,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:11:39,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:11:39,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:11:39,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:11:41,340.340 INFO    ] ================================================
[2026-10-28 12:11:41,355.355 INFO    ] Launching Daemon at Wed Oct 28 12:11:41 IST 2026
[2026-10-28 12:11:41,366.366 INFO    ] ================================================
[2026-10-28 12:11:42,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:11:41
[2026-10-28 12:11:42,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:11:42,946.946 INFO    ] Initializing speech engine...
[2026-10-28 12:11:42,954.954 INFO    ] 2026-10-28 12:11:42
[2026-10-28 12:11:43,235.235 INFO    ] 2026-10-28 12:11:43
[2026-10-28 12:11:43,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:11:43,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:11:43,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:11:43,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:11:43,977.977 INFO    ] time= 28/10/2026 12:11:43
[2026-10-28 12:11:44,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:11:44,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:11:44,209.209 INFO    ] No existing commands found in stream
[2026-10-28 12:11:49,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:11:49,231.231 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-28 12:11:51,092.092 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:11:51,095.095 INFO    ] Checking for system updates...
[2026-10-28 12:11:51,132.132 INFO    ] 200
[2026-10-28 12:11:51,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:11:51,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:11:51,195.195 INFO    ] No update needed
[2026-10-28 12:11:51,197.197 INFO    ] Checking for camera pi updates...
[2026-10-28 12:11:51,234.234 INFO    ] 200
[2026-10-28 12:11:51,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:11:51,280.280 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:11:51,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:11:51,379.379 INFO    ] No camera update needed
[2026-10-28 12:11:51,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:11:51,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:11:51,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:11:51,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:11:53,435.435 INFO    ] ================================================
[2026-10-28 12:11:53,450.450 INFO    ] Launching Daemon at Wed Oct 28 12:11:53 IST 2026
[2026-10-28 12:11:53,461.461 INFO    ] ================================================
[2026-10-28 12:11:54,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:11:54
[2026-10-28 12:11:54,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:11:54,861.861 INFO    ] Initializing speech engine...
[2026-10-28 12:11:54,870.870 INFO    ] 2026-10-28 12:11:54
[2026-10-28 12:11:55,145.145 INFO    ] 2026-10-28 12:11:55
[2026-10-28 12:11:55,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:11:55,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:11:55,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:11:55,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:11:55,716.716 INFO    ] time= 28/10/2026 12:11:55
[2026-10-28 12:11:55,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:11:55,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:11:55,938.938 INFO    ] No existing commands found in stream
[2026-10-28 12:12:00,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:12:00,967.967 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-28 12:12:02,411.411 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:12:02,415.415 INFO    ] Checking for system updates...
[2026-10-28 12:12:02,457.457 INFO    ] 200
[2026-10-28 12:12:02,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:12:02,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:12:02,529.529 INFO    ] No update needed
[2026-10-28 12:12:02,533.533 INFO    ] Checking for camera pi updates...
[2026-10-28 12:12:02,571.571 INFO    ] 200
[2026-10-28 12:12:02,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:12:02,619.619 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:12:02,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:12:02,754.754 INFO    ] No camera update needed
[2026-10-28 12:12:02,759.759 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:12:02,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:12:02,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:12:02,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:12:04,826.826 INFO    ] ================================================
[2026-10-28 12:12:04,841.841 INFO    ] Launching Daemon at Wed Oct 28 12:12:04 IST 2026
[2026-10-28 12:12:04,852.852 INFO    ] ================================================
[2026-10-28 12:12:05,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:12:05
[2026-10-28 12:12:06,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:12:06,459.459 INFO    ] Initializing speech engine...
[2026-10-28 12:12:06,473.473 INFO    ] 2026-10-28 12:12:06
[2026-10-28 12:12:06,779.779 INFO    ] 2026-10-28 12:12:06
[2026-10-28 12:12:06,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:12:07,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:12:07,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:12:07,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:12:07,506.506 INFO    ] time= 28/10/2026 12:12:07
[2026-10-28 12:12:07,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:12:07,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:12:07,729.729 INFO    ] No existing commands found in stream
[2026-10-28 12:12:12,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:12:12,743.743 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-28 12:12:15,724.724 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:12:15,727.727 INFO    ] Checking for system updates...
[2026-10-28 12:12:15,764.764 INFO    ] 200
[2026-10-28 12:12:15,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:12:15,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:12:15,822.822 INFO    ] No update needed
[2026-10-28 12:12:15,825.825 INFO    ] Checking for camera pi updates...
[2026-10-28 12:12:15,859.859 INFO    ] 200
[2026-10-28 12:12:15,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:12:15,907.907 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:12:15,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:12:15,990.990 INFO    ] No camera update needed
[2026-10-28 12:12:15,992.992 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:12:15,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:12:16,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:12:16,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:12:18,047.047 INFO    ] ================================================
[2026-10-28 12:12:18,063.063 INFO    ] Launching Daemon at Wed Oct 28 12:12:18 IST 2026
[2026-10-28 12:12:18,073.073 INFO    ] ================================================
[2026-10-28 12:12:18,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:12:18
[2026-10-28 12:12:19,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:12:19,520.520 INFO    ] Initializing speech engine...
[2026-10-28 12:12:19,545.545 INFO    ] 2026-10-28 12:12:19
[2026-10-28 12:12:19,815.815 INFO    ] 2026-10-28 12:12:19
[2026-10-28 12:12:19,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:12:20,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:12:20,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:12:20,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:12:20,437.437 INFO    ] time= 28/10/2026 12:12:20
[2026-10-28 12:12:20,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:12:20,467.467 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:12:20,620.620 INFO    ] No existing commands found in stream
[2026-10-28 12:12:25,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:12:25,638.638 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 12:12:27,112.112 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:12:27,116.116 INFO    ] Checking for system updates...
[2026-10-28 12:12:27,156.156 INFO    ] 200
[2026-10-28 12:12:27,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:12:27,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:12:27,223.223 INFO    ] No update needed
[2026-10-28 12:12:27,225.225 INFO    ] Checking for camera pi updates...
[2026-10-28 12:12:27,261.261 INFO    ] 200
[2026-10-28 12:12:27,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:12:27,308.308 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:12:27,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:12:27,402.402 INFO    ] No camera update needed
[2026-10-28 12:12:27,405.405 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:12:27,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:12:27,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:12:27,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:12:29,457.457 INFO    ] ================================================
[2026-10-28 12:12:29,473.473 INFO    ] Launching Daemon at Wed Oct 28 12:12:29 IST 2026
[2026-10-28 12:12:29,484.484 INFO    ] ================================================
[2026-10-28 12:12:30,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:12:30
[2026-10-28 12:12:30,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:12:30,913.913 INFO    ] Initializing speech engine...
[2026-10-28 12:12:30,921.921 INFO    ] 2026-10-28 12:12:30
[2026-10-28 12:12:31,193.193 INFO    ] 2026-10-28 12:12:31
[2026-10-28 12:12:31,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:12:31,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:12:31,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:12:31,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:12:31,870.870 INFO    ] time= 28/10/2026 12:12:31
[2026-10-28 12:12:31,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:12:31,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:12:32,142.142 INFO    ] No existing commands found in stream
[2026-10-28 12:12:37,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:12:37,160.160 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-28 12:12:41,518.518 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:12:41,520.520 INFO    ] Checking for system updates...
[2026-10-28 12:12:41,558.558 INFO    ] 200
[2026-10-28 12:12:41,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:12:41,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:12:41,614.614 INFO    ] No update needed
[2026-10-28 12:12:41,617.617 INFO    ] Checking for camera pi updates...
[2026-10-28 12:12:41,652.652 INFO    ] 200
[2026-10-28 12:12:41,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:12:41,699.699 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:12:41,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:12:41,791.791 INFO    ] No camera update needed
[2026-10-28 12:12:41,794.794 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:12:41,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:12:41,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:12:41,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:12:43,849.849 INFO    ] ================================================
[2026-10-28 12:12:43,865.865 INFO    ] Launching Daemon at Wed Oct 28 12:12:43 IST 2026
[2026-10-28 12:12:43,876.876 INFO    ] ================================================
[2026-10-28 12:12:44,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:12:44
[2026-10-28 12:12:45,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:12:45,515.515 INFO    ] Initializing speech engine...
[2026-10-28 12:12:45,522.522 INFO    ] 2026-10-28 12:12:45
[2026-10-28 12:12:45,785.785 INFO    ] 2026-10-28 12:12:45
[2026-10-28 12:12:45,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:12:46,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:12:46,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:12:46,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:12:46,355.355 INFO    ] time= 28/10/2026 12:12:46
[2026-10-28 12:12:46,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:12:46,392.392 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:12:46,522.522 INFO    ] No existing commands found in stream
[2026-10-28 12:12:51,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:12:51,555.555 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-28 12:12:54,319.319 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:12:54,322.322 INFO    ] Checking for system updates...
[2026-10-28 12:12:54,361.361 INFO    ] 200
[2026-10-28 12:12:54,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:12:54,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:12:54,417.417 INFO    ] No update needed
[2026-10-28 12:12:54,420.420 INFO    ] Checking for camera pi updates...
[2026-10-28 12:12:54,455.455 INFO    ] 200
[2026-10-28 12:12:54,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:12:54,497.497 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:12:54,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:12:54,586.586 INFO    ] No camera update needed
[2026-10-28 12:12:54,588.588 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:12:54,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:12:54,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:12:54,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:12:56,642.642 INFO    ] ================================================
[2026-10-28 12:12:56,657.657 INFO    ] Launching Daemon at Wed Oct 28 12:12:56 IST 2026
[2026-10-28 12:12:56,669.669 INFO    ] ================================================
[2026-10-28 12:12:57,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:12:57
[2026-10-28 12:12:57,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:12:58,077.077 INFO    ] Initializing speech engine...
[2026-10-28 12:12:58,090.090 INFO    ] 2026-10-28 12:12:58
[2026-10-28 12:12:58,355.355 INFO    ] 2026-10-28 12:12:58
[2026-10-28 12:12:58,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:12:58,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:12:58,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:12:58,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:12:58,921.921 INFO    ] time= 28/10/2026 12:12:58
[2026-10-28 12:12:58,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:12:58,947.947 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:12:59,102.102 INFO    ] No existing commands found in stream
[2026-10-28 12:13:04,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:13:04,125.125 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-28 12:13:05,675.675 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:13:05,678.678 INFO    ] Checking for system updates...
[2026-10-28 12:13:05,717.717 INFO    ] 200
[2026-10-28 12:13:05,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:13:05,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:13:05,779.779 INFO    ] No update needed
[2026-10-28 12:13:05,782.782 INFO    ] Checking for camera pi updates...
[2026-10-28 12:13:05,818.818 INFO    ] 200
[2026-10-28 12:13:05,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:13:05,864.864 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:13:06,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:13:06,047.047 INFO    ] No camera update needed
[2026-10-28 12:13:06,049.049 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:13:06,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:13:06,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:13:06,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:13:08,103.103 INFO    ] ================================================
[2026-10-28 12:13:08,118.118 INFO    ] Launching Daemon at Wed Oct 28 12:13:08 IST 2026
[2026-10-28 12:13:08,129.129 INFO    ] ================================================
[2026-10-28 12:13:08,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:13:08
[2026-10-28 12:13:09,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:13:09,530.530 INFO    ] Initializing speech engine...
[2026-10-28 12:13:09,545.545 INFO    ] 2026-10-28 12:13:09
[2026-10-28 12:13:09,810.810 INFO    ] 2026-10-28 12:13:09
[2026-10-28 12:13:09,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:13:10,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:13:10,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:13:10,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:13:10,404.404 INFO    ] time= 28/10/2026 12:13:10
[2026-10-28 12:13:10,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:13:10,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:13:10,602.602 INFO    ] No existing commands found in stream
[2026-10-28 12:13:15,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:13:15,629.629 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-28 12:13:16,434.434 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:13:16,437.437 INFO    ] Checking for system updates...
[2026-10-28 12:13:16,473.473 INFO    ] 200
[2026-10-28 12:13:16,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:13:16,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:13:16,535.535 INFO    ] No update needed
[2026-10-28 12:13:16,538.538 INFO    ] Checking for camera pi updates...
[2026-10-28 12:13:16,571.571 INFO    ] 200
[2026-10-28 12:13:16,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:13:16,614.614 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:13:16,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:13:16,704.704 INFO    ] No camera update needed
[2026-10-28 12:13:16,706.706 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:13:16,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:13:16,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:13:16,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:13:18,762.762 INFO    ] ================================================
[2026-10-28 12:13:18,777.777 INFO    ] Launching Daemon at Wed Oct 28 12:13:18 IST 2026
[2026-10-28 12:13:18,788.788 INFO    ] ================================================
[2026-10-28 12:13:19,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:13:19
[2026-10-28 12:13:19,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:13:20,212.212 INFO    ] Initializing speech engine...
[2026-10-28 12:13:20,234.234 INFO    ] 2026-10-28 12:13:20
[2026-10-28 12:13:20,485.485 INFO    ] 2026-10-28 12:13:20
[2026-10-28 12:13:20,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:13:20,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:13:20,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:13:21,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:13:21,064.064 INFO    ] time= 28/10/2026 12:13:21
[2026-10-28 12:13:21,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:13:21,099.099 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:13:21,210.210 INFO    ] No existing commands found in stream
[2026-10-28 12:13:26,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:13:26,236.236 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 12:13:29,963.963 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:13:29,966.966 INFO    ] Checking for system updates...
[2026-10-28 12:13:30,002.002 INFO    ] 200
[2026-10-28 12:13:30,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:13:30,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:13:30,060.060 INFO    ] No update needed
[2026-10-28 12:13:30,063.063 INFO    ] Checking for camera pi updates...
[2026-10-28 12:13:30,098.098 INFO    ] 200
[2026-10-28 12:13:30,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:13:30,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:13:30,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:13:30,228.228 INFO    ] No camera update needed
[2026-10-28 12:13:30,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:13:30,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:13:30,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:13:30,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:13:32,286.286 INFO    ] ================================================
[2026-10-28 12:13:32,302.302 INFO    ] Launching Daemon at Wed Oct 28 12:13:32 IST 2026
[2026-10-28 12:13:32,314.314 INFO    ] ================================================
[2026-10-28 12:13:32,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:13:32
[2026-10-28 12:13:33,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:13:33,777.777 INFO    ] Initializing speech engine...
[2026-10-28 12:13:33,797.797 INFO    ] 2026-10-28 12:13:33
[2026-10-28 12:13:34,060.060 INFO    ] 2026-10-28 12:13:34
[2026-10-28 12:13:34,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:13:34,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:13:34,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:13:34,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:13:34,684.684 INFO    ] time= 28/10/2026 12:13:34
[2026-10-28 12:13:34,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:13:34,722.722 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:13:34,858.858 INFO    ] No existing commands found in stream
[2026-10-28 12:13:39,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:13:39,886.886 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-28 12:13:44,199.199 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:13:44,202.202 INFO    ] Checking for system updates...
[2026-10-28 12:13:44,240.240 INFO    ] 200
[2026-10-28 12:13:44,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:13:44,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:13:44,303.303 INFO    ] No update needed
[2026-10-28 12:13:44,306.306 INFO    ] Checking for camera pi updates...
[2026-10-28 12:13:44,343.343 INFO    ] 200
[2026-10-28 12:13:44,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:13:44,390.390 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:13:44,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:13:44,472.472 INFO    ] No camera update needed
[2026-10-28 12:13:44,475.475 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:13:44,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:13:44,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:13:44,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:13:46,528.528 INFO    ] ================================================
[2026-10-28 12:13:46,543.543 INFO    ] Launching Daemon at Wed Oct 28 12:13:46 IST 2026
[2026-10-28 12:13:46,553.553 INFO    ] ================================================
[2026-10-28 12:13:47,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:13:47
[2026-10-28 12:13:47,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:13:47,959.959 INFO    ] Initializing speech engine...
[2026-10-28 12:13:47,968.968 INFO    ] 2026-10-28 12:13:47
[2026-10-28 12:13:48,258.258 INFO    ] 2026-10-28 12:13:48
[2026-10-28 12:13:48,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:13:48,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:13:48,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:13:48,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:13:48,883.883 INFO    ] time= 28/10/2026 12:13:48
[2026-10-28 12:13:48,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:13:48,911.911 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:13:49,058.058 INFO    ] No existing commands found in stream
[2026-10-28 12:13:54,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:13:54,082.082 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-28 12:13:56,758.758 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:13:56,760.760 INFO    ] Checking for system updates...
[2026-10-28 12:13:56,797.797 INFO    ] 200
[2026-10-28 12:13:56,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:13:56,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:13:56,854.854 INFO    ] No update needed
[2026-10-28 12:13:56,856.856 INFO    ] Checking for camera pi updates...
[2026-10-28 12:13:56,890.890 INFO    ] 200
[2026-10-28 12:13:56,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:13:56,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:13:57,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:13:57,027.027 INFO    ] No camera update needed
[2026-10-28 12:13:57,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:13:57,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:13:57,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:13:57,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:13:59,080.080 INFO    ] ================================================
[2026-10-28 12:13:59,096.096 INFO    ] Launching Daemon at Wed Oct 28 12:13:59 IST 2026
[2026-10-28 12:13:59,106.106 INFO    ] ================================================
[2026-10-28 12:13:59,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:13:59
[2026-10-28 12:14:00,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:14:00,502.502 INFO    ] Initializing speech engine...
[2026-10-28 12:14:00,515.515 INFO    ] 2026-10-28 12:14:00
[2026-10-28 12:14:00,779.779 INFO    ] 2026-10-28 12:14:00
[2026-10-28 12:14:00,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:14:01,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:14:01,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:14:01,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:14:01,350.350 INFO    ] time= 28/10/2026 12:14:01
[2026-10-28 12:14:01,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:14:01,386.386 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:14:01,522.522 INFO    ] No existing commands found in stream
[2026-10-28 12:14:06,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:14:06,560.560 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 12:14:10,314.314 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:14:10,317.317 INFO    ] Checking for system updates...
[2026-10-28 12:14:10,352.352 INFO    ] 200
[2026-10-28 12:14:10,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:14:10,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:14:10,410.410 INFO    ] No update needed
[2026-10-28 12:14:10,412.412 INFO    ] Checking for camera pi updates...
[2026-10-28 12:14:10,446.446 INFO    ] 200
[2026-10-28 12:14:10,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:14:10,493.493 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:14:10,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:14:10,577.577 INFO    ] No camera update needed
[2026-10-28 12:14:10,579.579 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:14:10,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:14:10,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:14:10,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:14:12,635.635 INFO    ] ================================================
[2026-10-28 12:14:12,650.650 INFO    ] Launching Daemon at Wed Oct 28 12:14:12 IST 2026
[2026-10-28 12:14:12,661.661 INFO    ] ================================================
[2026-10-28 12:14:13,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:14:13
[2026-10-28 12:14:13,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:14:14,077.077 INFO    ] Initializing speech engine...
[2026-10-28 12:14:14,087.087 INFO    ] 2026-10-28 12:14:14
[2026-10-28 12:14:14,332.332 INFO    ] 2026-10-28 12:14:14
[2026-10-28 12:14:14,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:14:14,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:14:14,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:14:14,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:14:14,931.931 INFO    ] time= 28/10/2026 12:14:14
[2026-10-28 12:14:14,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:14:14,993.993 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:14:15,131.131 INFO    ] No existing commands found in stream
[2026-10-28 12:14:20,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:14:20,144.144 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 12:14:21,939.939 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:14:21,942.942 INFO    ] Checking for system updates...
[2026-10-28 12:14:21,982.982 INFO    ] 200
[2026-10-28 12:14:21,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:14:22,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:14:22,046.046 INFO    ] No update needed
[2026-10-28 12:14:22,048.048 INFO    ] Checking for camera pi updates...
[2026-10-28 12:14:22,086.086 INFO    ] 200
[2026-10-28 12:14:22,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:14:22,129.129 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:14:22,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:14:22,211.211 INFO    ] No camera update needed
[2026-10-28 12:14:22,213.213 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:14:22,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:14:22,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:14:22,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:14:24,267.267 INFO    ] ================================================
[2026-10-28 12:14:24,283.283 INFO    ] Launching Daemon at Wed Oct 28 12:14:24 IST 2026
[2026-10-28 12:14:24,293.293 INFO    ] ================================================
[2026-10-28 12:14:24,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:14:24
[2026-10-28 12:14:25,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:14:25,717.717 INFO    ] Initializing speech engine...
[2026-10-28 12:14:25,722.722 INFO    ] 2026-10-28 12:14:25
[2026-10-28 12:14:25,976.976 INFO    ] 2026-10-28 12:14:25
[2026-10-28 12:14:26,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:14:26,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:14:26,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:14:26,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:14:26,541.541 INFO    ] time= 28/10/2026 12:14:26
[2026-10-28 12:14:26,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:14:26,575.575 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:14:26,693.693 INFO    ] No existing commands found in stream
[2026-10-28 12:14:31,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:14:31,726.726 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-28 12:14:35,650.650 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:14:35,652.652 INFO    ] Checking for system updates...
[2026-10-28 12:14:35,688.688 INFO    ] 200
[2026-10-28 12:14:35,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:14:35,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:14:35,746.746 INFO    ] No update needed
[2026-10-28 12:14:35,748.748 INFO    ] Checking for camera pi updates...
[2026-10-28 12:14:35,786.786 INFO    ] 200
[2026-10-28 12:14:35,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:14:35,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:14:35,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:14:35,915.915 INFO    ] No camera update needed
[2026-10-28 12:14:35,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:14:35,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:14:35,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:14:35,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:14:37,969.969 INFO    ] ================================================
[2026-10-28 12:14:37,984.984 INFO    ] Launching Daemon at Wed Oct 28 12:14:37 IST 2026
[2026-10-28 12:14:38,995.995 INFO    ] ================================================
[2026-10-28 12:14:38,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:14:38
[2026-10-28 12:14:39,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:14:39,413.413 INFO    ] Initializing speech engine...
[2026-10-28 12:14:39,422.422 INFO    ] 2026-10-28 12:14:39
[2026-10-28 12:14:39,673.673 INFO    ] 2026-10-28 12:14:39
[2026-10-28 12:14:39,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:14:39,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:14:39,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:14:40,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:14:40,252.252 INFO    ] time= 28/10/2026 12:14:40
[2026-10-28 12:14:40,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:14:40,288.288 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:14:40,428.428 INFO    ] No existing commands found in stream
[2026-10-28 12:14:45,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:14:45,460.460 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 12:14:48,637.637 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:14:48,640.640 INFO    ] Checking for system updates...
[2026-10-28 12:14:48,675.675 INFO    ] 200
[2026-10-28 12:14:48,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:14:48,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:14:48,732.732 INFO    ] No update needed
[2026-10-28 12:14:48,735.735 INFO    ] Checking for camera pi updates...
[2026-10-28 12:14:48,768.768 INFO    ] 200
[2026-10-28 12:14:48,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:14:48,816.816 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:14:48,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:14:48,897.897 INFO    ] No camera update needed
[2026-10-28 12:14:48,899.899 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:14:48,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:14:48,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:14:48,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:14:50,959.959 INFO    ] ================================================
[2026-10-28 12:14:50,974.974 INFO    ] Launching Daemon at Wed Oct 28 12:14:50 IST 2026
[2026-10-28 12:14:50,985.985 INFO    ] ================================================
[2026-10-28 12:14:51,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:14:51
[2026-10-28 12:14:52,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:14:52,487.487 INFO    ] Initializing speech engine...
[2026-10-28 12:14:52,495.495 INFO    ] 2026-10-28 12:14:52
[2026-10-28 12:14:52,798.798 INFO    ] 2026-10-28 12:14:52
[2026-10-28 12:14:52,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:14:53,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:14:53,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:14:53,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:14:53,519.519 INFO    ] time= 28/10/2026 12:14:53
[2026-10-28 12:14:53,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:14:53,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:14:53,749.749 INFO    ] No existing commands found in stream
[2026-10-28 12:14:58,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:14:58,762.762 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 12:15:01,210.210 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:15:01,212.212 INFO    ] Checking for system updates...
[2026-10-28 12:15:01,251.251 INFO    ] 200
[2026-10-28 12:15:01,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:15:01,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:15:01,314.314 INFO    ] No update needed
[2026-10-28 12:15:01,316.316 INFO    ] Checking for camera pi updates...
[2026-10-28 12:15:01,349.349 INFO    ] 200
[2026-10-28 12:15:01,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:15:01,396.396 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:15:01,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:15:01,481.481 INFO    ] No camera update needed
[2026-10-28 12:15:01,484.484 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:15:01,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:15:01,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:15:01,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:15:03,562.562 INFO    ] ================================================
[2026-10-28 12:15:03,592.592 INFO    ] Launching Daemon at Wed Oct 28 12:15:03 IST 2026
[2026-10-28 12:15:03,612.612 INFO    ] ================================================
[2026-10-28 12:15:04,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:15:04
[2026-10-28 12:15:05,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:15:05,405.405 INFO    ] Initializing speech engine...
[2026-10-28 12:15:05,424.424 INFO    ] 2026-10-28 12:15:05
[2026-10-28 12:15:05,682.682 INFO    ] 2026-10-28 12:15:05
[2026-10-28 12:15:05,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:15:06,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:15:06,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:15:06,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:15:06,284.284 INFO    ] time= 28/10/2026 12:15:06
[2026-10-28 12:15:06,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:15:06,316.316 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:15:06,487.487 INFO    ] No existing commands found in stream
[2026-10-28 12:15:11,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:15:11,507.507 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-28 12:15:15,957.957 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:15:15,960.960 INFO    ] Checking for system updates...
[2026-10-28 12:15:15,999.999 INFO    ] 200
[2026-10-28 12:15:16,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:15:16,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:15:16,057.057 INFO    ] No update needed
[2026-10-28 12:15:16,059.059 INFO    ] Checking for camera pi updates...
[2026-10-28 12:15:16,093.093 INFO    ] 200
[2026-10-28 12:15:16,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:15:16,141.141 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:15:16,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:15:16,342.342 INFO    ] No camera update needed
[2026-10-28 12:15:16,345.345 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:15:16,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:15:16,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:15:16,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:15:18,399.399 INFO    ] ================================================
[2026-10-28 12:15:18,414.414 INFO    ] Launching Daemon at Wed Oct 28 12:15:18 IST 2026
[2026-10-28 12:15:18,425.425 INFO    ] ================================================
[2026-10-28 12:15:19,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:15:19
[2026-10-28 12:15:19,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:15:19,886.886 INFO    ] Initializing speech engine...
[2026-10-28 12:15:19,894.894 INFO    ] 2026-10-28 12:15:19
[2026-10-28 12:15:20,166.166 INFO    ] 2026-10-28 12:15:20
[2026-10-28 12:15:20,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:15:20,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:15:20,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:15:20,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:15:20,855.855 INFO    ] time= 28/10/2026 12:15:20
[2026-10-28 12:15:20,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:15:20,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:15:21,107.107 INFO    ] No existing commands found in stream
[2026-10-28 12:15:26,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:15:26,138.138 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-28 12:15:27,113.113 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:15:27,116.116 INFO    ] Checking for system updates...
[2026-10-28 12:15:27,155.155 INFO    ] 200
[2026-10-28 12:15:27,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:15:27,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:15:27,220.220 INFO    ] No update needed
[2026-10-28 12:15:27,222.222 INFO    ] Checking for camera pi updates...
[2026-10-28 12:15:27,256.256 INFO    ] 200
[2026-10-28 12:15:27,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:15:27,299.299 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:15:27,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:15:27,388.388 INFO    ] No camera update needed
[2026-10-28 12:15:27,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:15:27,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:15:27,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:15:27,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:15:29,448.448 INFO    ] ================================================
[2026-10-28 12:15:29,463.463 INFO    ] Launching Daemon at Wed Oct 28 12:15:29 IST 2026
[2026-10-28 12:15:29,474.474 INFO    ] ================================================
[2026-10-28 12:15:30,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:15:30
[2026-10-28 12:15:30,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:15:31,107.107 INFO    ] Initializing speech engine...
[2026-10-28 12:15:31,121.121 INFO    ] 2026-10-28 12:15:31
[2026-10-28 12:15:31,395.395 INFO    ] 2026-10-28 12:15:31
[2026-10-28 12:15:31,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:15:31,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:15:31,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:15:32,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:15:32,112.112 INFO    ] time= 28/10/2026 12:15:32
[2026-10-28 12:15:32,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:15:32,199.199 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:15:32,347.347 INFO    ] No existing commands found in stream
[2026-10-28 12:15:37,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:15:37,364.364 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-28 12:15:41,555.555 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:15:41,558.558 INFO    ] Checking for system updates...
[2026-10-28 12:15:41,604.604 INFO    ] 200
[2026-10-28 12:15:41,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:15:41,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:15:41,689.689 INFO    ] No update needed
[2026-10-28 12:15:41,693.693 INFO    ] Checking for camera pi updates...
[2026-10-28 12:15:41,733.733 INFO    ] 200
[2026-10-28 12:15:41,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:15:41,781.781 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:15:41,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:15:41,862.862 INFO    ] No camera update needed
[2026-10-28 12:15:41,864.864 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:15:41,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:15:41,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:15:41,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:15:43,916.916 INFO    ] ================================================
[2026-10-28 12:15:43,931.931 INFO    ] Launching Daemon at Wed Oct 28 12:15:43 IST 2026
[2026-10-28 12:15:43,942.942 INFO    ] ================================================
[2026-10-28 12:15:44,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:15:44
[2026-10-28 12:15:45,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:15:45,393.393 INFO    ] Initializing speech engine...
[2026-10-28 12:15:45,403.403 INFO    ] 2026-10-28 12:15:45
[2026-10-28 12:15:45,652.652 INFO    ] 2026-10-28 12:15:45
[2026-10-28 12:15:45,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:15:48,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:15:48,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:15:49,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:15:49,946.946 INFO    ] time= 28/10/2026 12:15:49
[2026-10-28 12:15:49,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:15:49,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:15:50,042.042 INFO    ] No existing commands found in stream
[2026-10-28 12:15:55,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:15:55,055.055 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 12:15:56,393.393 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:15:56,396.396 INFO    ] Checking for system updates...
[2026-10-28 12:15:56,442.442 INFO    ] 200
[2026-10-28 12:15:56,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:15:56,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:15:56,505.505 INFO    ] No update needed
[2026-10-28 12:15:56,507.507 INFO    ] Checking for camera pi updates...
[2026-10-28 12:15:56,541.541 INFO    ] 200
[2026-10-28 12:15:56,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:15:56,585.585 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:15:56,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:15:56,668.668 INFO    ] No camera update needed
[2026-10-28 12:15:56,670.670 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:15:56,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:15:56,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:15:56,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:15:58,721.721 INFO    ] ================================================
[2026-10-28 12:15:58,737.737 INFO    ] Launching Daemon at Wed Oct 28 12:15:58 IST 2026
[2026-10-28 12:15:58,747.747 INFO    ] ================================================
[2026-10-28 12:15:59,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:15:59
[2026-10-28 12:15:59,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:16:00,155.155 INFO    ] Initializing speech engine...
[2026-10-28 12:16:00,170.170 INFO    ] 2026-10-28 12:16:00
[2026-10-28 12:16:00,438.438 INFO    ] 2026-10-28 12:16:00
[2026-10-28 12:16:00,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:16:00,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:16:00,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:16:01,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:16:01,013.013 INFO    ] time= 28/10/2026 12:16:01
[2026-10-28 12:16:01,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:16:01,059.059 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:16:01,190.190 INFO    ] No existing commands found in stream
[2026-10-28 12:16:06,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:16:06,218.218 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-28 12:16:08,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:16:08,483.483 INFO    ] Checking for system updates...
[2026-10-28 12:16:08,524.524 INFO    ] 200
[2026-10-28 12:16:08,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:16:08,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:16:08,582.582 INFO    ] No update needed
[2026-10-28 12:16:08,584.584 INFO    ] Checking for camera pi updates...
[2026-10-28 12:16:08,618.618 INFO    ] 200
[2026-10-28 12:16:08,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:16:08,666.666 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:16:08,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:16:08,754.754 INFO    ] No camera update needed
[2026-10-28 12:16:08,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:16:08,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:16:08,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:16:08,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:16:10,808.808 INFO    ] ================================================
[2026-10-28 12:16:10,823.823 INFO    ] Launching Daemon at Wed Oct 28 12:16:10 IST 2026
[2026-10-28 12:16:10,834.834 INFO    ] ================================================
[2026-10-28 12:16:11,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:16:11
[2026-10-28 12:16:11,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:16:12,265.265 INFO    ] Initializing speech engine...
[2026-10-28 12:16:12,275.275 INFO    ] 2026-10-28 12:16:12
[2026-10-28 12:16:12,524.524 INFO    ] 2026-10-28 12:16:12
[2026-10-28 12:16:12,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:16:12,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:16:12,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:16:13,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:16:13,093.093 INFO    ] time= 28/10/2026 12:16:13
[2026-10-28 12:16:13,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:16:13,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:16:13,279.279 INFO    ] No existing commands found in stream
[2026-10-28 12:16:18,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:16:18,311.311 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 12:16:20,194.194 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:16:20,197.197 INFO    ] Checking for system updates...
[2026-10-28 12:16:20,232.232 INFO    ] 200
[2026-10-28 12:16:20,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:16:20,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:16:20,299.299 INFO    ] No update needed
[2026-10-28 12:16:20,301.301 INFO    ] Checking for camera pi updates...
[2026-10-28 12:16:20,339.339 INFO    ] 200
[2026-10-28 12:16:20,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:16:20,388.388 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:16:20,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:16:20,471.471 INFO    ] No camera update needed
[2026-10-28 12:16:20,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:16:20,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:16:20,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:16:20,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:16:22,525.525 INFO    ] ================================================
[2026-10-28 12:16:22,541.541 INFO    ] Launching Daemon at Wed Oct 28 12:16:22 IST 2026
[2026-10-28 12:16:22,551.551 INFO    ] ================================================
[2026-10-28 12:16:23,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:16:23
[2026-10-28 12:16:23,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:16:24,231.231 INFO    ] Initializing speech engine...
[2026-10-28 12:16:24,245.245 INFO    ] 2026-10-28 12:16:24
[2026-10-28 12:16:24,559.559 INFO    ] 2026-10-28 12:16:24
[2026-10-28 12:16:24,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:16:24,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:16:24,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:16:25,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:16:25,305.305 INFO    ] time= 28/10/2026 12:16:25
[2026-10-28 12:16:25,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:16:25,406.406 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:16:25,603.603 INFO    ] No existing commands found in stream
[2026-10-28 12:16:30,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:16:30,637.637 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 12:16:34,286.286 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:16:34,289.289 INFO    ] Checking for system updates...
[2026-10-28 12:16:34,333.333 INFO    ] 200
[2026-10-28 12:16:34,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:16:34,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:16:34,394.394 INFO    ] No update needed
[2026-10-28 12:16:34,397.397 INFO    ] Checking for camera pi updates...
[2026-10-28 12:16:34,433.433 INFO    ] 200
[2026-10-28 12:16:34,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:16:34,483.483 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:16:34,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:16:34,588.588 INFO    ] No camera update needed
[2026-10-28 12:16:34,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:16:34,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:16:34,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:16:34,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:16:36,643.643 INFO    ] ================================================
[2026-10-28 12:16:36,658.658 INFO    ] Launching Daemon at Wed Oct 28 12:16:36 IST 2026
[2026-10-28 12:16:36,669.669 INFO    ] ================================================
[2026-10-28 12:16:37,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:16:37
[2026-10-28 12:16:37,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:16:38,187.187 INFO    ] Initializing speech engine...
[2026-10-28 12:16:38,201.201 INFO    ] 2026-10-28 12:16:38
[2026-10-28 12:16:38,513.513 INFO    ] 2026-10-28 12:16:38
[2026-10-28 12:16:38,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:16:38,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:16:38,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:16:39,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:16:39,282.282 INFO    ] time= 28/10/2026 12:16:39
[2026-10-28 12:16:39,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:16:39,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:16:39,580.580 INFO    ] No existing commands found in stream
[2026-10-28 12:16:44,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:16:44,605.605 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 12:16:46,163.163 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:16:46,166.166 INFO    ] Checking for system updates...
[2026-10-28 12:16:46,209.209 INFO    ] 200
[2026-10-28 12:16:46,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:16:46,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:16:46,275.275 INFO    ] No update needed
[2026-10-28 12:16:46,278.278 INFO    ] Checking for camera pi updates...
[2026-10-28 12:16:46,316.316 INFO    ] 200
[2026-10-28 12:16:46,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:16:46,359.359 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:16:46,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:16:46,465.465 INFO    ] No camera update needed
[2026-10-28 12:16:46,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:16:46,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:16:46,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:16:46,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:16:48,520.520 INFO    ] ================================================
[2026-10-28 12:16:48,536.536 INFO    ] Launching Daemon at Wed Oct 28 12:16:48 IST 2026
[2026-10-28 12:16:48,548.548 INFO    ] ================================================
[2026-10-28 12:16:49,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:16:49
[2026-10-28 12:16:49,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:16:49,959.959 INFO    ] Initializing speech engine...
[2026-10-28 12:16:49,982.982 INFO    ] 2026-10-28 12:16:49
[2026-10-28 12:16:50,237.237 INFO    ] 2026-10-28 12:16:50
[2026-10-28 12:16:50,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:16:50,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:16:50,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:16:50,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:16:50,808.808 INFO    ] time= 28/10/2026 12:16:50
[2026-10-28 12:16:50,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:16:50,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:16:50,962.962 INFO    ] No existing commands found in stream
[2026-10-28 12:16:55,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:16:55,990.990 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-28 12:16:57,922.922 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:16:57,925.925 INFO    ] Checking for system updates...
[2026-10-28 12:16:57,960.960 INFO    ] 200
[2026-10-28 12:16:57,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:16:58,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:16:58,018.018 INFO    ] No update needed
[2026-10-28 12:16:58,020.020 INFO    ] Checking for camera pi updates...
[2026-10-28 12:16:58,058.058 INFO    ] 200
[2026-10-28 12:16:58,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:16:58,107.107 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:16:58,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:16:58,193.193 INFO    ] No camera update needed
[2026-10-28 12:16:58,196.196 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:16:58,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:16:58,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:16:58,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:17:00,250.250 INFO    ] ================================================
[2026-10-28 12:17:00,266.266 INFO    ] Launching Daemon at Wed Oct 28 12:17:00 IST 2026
[2026-10-28 12:17:00,278.278 INFO    ] ================================================
[2026-10-28 12:17:00,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:17:00
[2026-10-28 12:17:01,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:17:01,697.697 INFO    ] Initializing speech engine...
[2026-10-28 12:17:01,706.706 INFO    ] 2026-10-28 12:17:01
[2026-10-28 12:17:01,958.958 INFO    ] 2026-10-28 12:17:01
[2026-10-28 12:17:02,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:17:02,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:17:02,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:17:02,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:17:02,731.731 INFO    ] time= 28/10/2026 12:17:02
[2026-10-28 12:17:02,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:17:02,774.774 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:17:02,968.968 INFO    ] No existing commands found in stream
[2026-10-28 12:17:07,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:17:08,002.002 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 12:17:11,212.212 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:17:11,215.215 INFO    ] Checking for system updates...
[2026-10-28 12:17:11,250.250 INFO    ] 200
[2026-10-28 12:17:11,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:17:11,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:17:11,308.308 INFO    ] No update needed
[2026-10-28 12:17:11,311.311 INFO    ] Checking for camera pi updates...
[2026-10-28 12:17:11,349.349 INFO    ] 200
[2026-10-28 12:17:11,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:17:11,391.391 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:17:11,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:17:11,496.496 INFO    ] No camera update needed
[2026-10-28 12:17:11,498.498 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:17:11,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:17:11,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:17:11,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:17:13,552.552 INFO    ] ================================================
[2026-10-28 12:17:13,567.567 INFO    ] Launching Daemon at Wed Oct 28 12:17:13 IST 2026
[2026-10-28 12:17:13,579.579 INFO    ] ================================================
[2026-10-28 12:17:14,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:17:14
[2026-10-28 12:17:14,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:17:14,974.974 INFO    ] Initializing speech engine...
[2026-10-28 12:17:14,988.988 INFO    ] 2026-10-28 12:17:14
[2026-10-28 12:17:15,250.250 INFO    ] 2026-10-28 12:17:15
[2026-10-28 12:17:15,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:17:15,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:17:15,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:17:15,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:17:15,843.843 INFO    ] time= 28/10/2026 12:17:15
[2026-10-28 12:17:15,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:17:15,857.857 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:17:16,037.037 INFO    ] No existing commands found in stream
[2026-10-28 12:17:21,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:17:21,064.064 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 12:17:23,418.418 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:17:23,420.420 INFO    ] Checking for system updates...
[2026-10-28 12:17:23,458.458 INFO    ] 200
[2026-10-28 12:17:23,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:17:23,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:17:23,525.525 INFO    ] No update needed
[2026-10-28 12:17:23,528.528 INFO    ] Checking for camera pi updates...
[2026-10-28 12:17:23,567.567 INFO    ] 200
[2026-10-28 12:17:23,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:17:23,618.618 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:17:23,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:17:23,802.802 INFO    ] No camera update needed
[2026-10-28 12:17:23,804.804 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:17:23,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:17:23,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:17:23,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:17:25,861.861 INFO    ] ================================================
[2026-10-28 12:17:25,876.876 INFO    ] Launching Daemon at Wed Oct 28 12:17:25 IST 2026
[2026-10-28 12:17:25,888.888 INFO    ] ================================================
[2026-10-28 12:17:26,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:17:26
[2026-10-28 12:17:27,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:17:27,307.307 INFO    ] Initializing speech engine...
[2026-10-28 12:17:27,314.314 INFO    ] 2026-10-28 12:17:27
[2026-10-28 12:17:27,559.559 INFO    ] 2026-10-28 12:17:27
[2026-10-28 12:17:27,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:17:27,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:17:27,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:17:28,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:17:28,114.114 INFO    ] time= 28/10/2026 12:17:28
[2026-10-28 12:17:28,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:17:28,160.160 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:17:28,292.292 INFO    ] No existing commands found in stream
[2026-10-28 12:17:33,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:17:33,325.325 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-28 12:17:35,311.311 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:17:35,313.313 INFO    ] Checking for system updates...
[2026-10-28 12:17:35,355.355 INFO    ] 200
[2026-10-28 12:17:35,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:17:35,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:17:35,422.422 INFO    ] No update needed
[2026-10-28 12:17:35,425.425 INFO    ] Checking for camera pi updates...
[2026-10-28 12:17:35,459.459 INFO    ] 200
[2026-10-28 12:17:35,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:17:35,504.504 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:17:35,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:17:35,589.589 INFO    ] No camera update needed
[2026-10-28 12:17:35,592.592 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:17:35,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:17:35,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:17:35,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:17:37,649.649 INFO    ] ================================================
[2026-10-28 12:17:37,665.665 INFO    ] Launching Daemon at Wed Oct 28 12:17:37 IST 2026
[2026-10-28 12:17:37,677.677 INFO    ] ================================================
[2026-10-28 12:17:38,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:17:38
[2026-10-28 12:17:38,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:17:39,085.085 INFO    ] Initializing speech engine...
[2026-10-28 12:17:39,104.104 INFO    ] 2026-10-28 12:17:39
[2026-10-28 12:17:39,354.354 INFO    ] 2026-10-28 12:17:39
[2026-10-28 12:17:39,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:17:39,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:17:39,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:17:39,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:17:39,921.921 INFO    ] time= 28/10/2026 12:17:39
[2026-10-28 12:17:39,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:17:39,946.946 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:17:40,089.089 INFO    ] No existing commands found in stream
[2026-10-28 12:17:45,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:17:45,118.118 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-28 12:17:48,794.794 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:17:48,796.796 INFO    ] Checking for system updates...
[2026-10-28 12:17:48,833.833 INFO    ] 200
[2026-10-28 12:17:48,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:17:48,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:17:48,898.898 INFO    ] No update needed
[2026-10-28 12:17:48,900.900 INFO    ] Checking for camera pi updates...
[2026-10-28 12:17:48,937.937 INFO    ] 200
[2026-10-28 12:17:48,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:17:48,981.981 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:17:49,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:17:49,071.071 INFO    ] No camera update needed
[2026-10-28 12:17:49,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:17:49,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:17:49,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:17:49,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:17:51,127.127 INFO    ] ================================================
[2026-10-28 12:17:51,143.143 INFO    ] Launching Daemon at Wed Oct 28 12:17:51 IST 2026
[2026-10-28 12:17:51,155.155 INFO    ] ================================================
[2026-10-28 12:17:51,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:17:51
[2026-10-28 12:17:52,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:17:52,754.754 INFO    ] Initializing speech engine...
[2026-10-28 12:17:52,760.760 INFO    ] 2026-10-28 12:17:52
[2026-10-28 12:17:53,017.017 INFO    ] 2026-10-28 12:17:53
[2026-10-28 12:17:53,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:17:53,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:17:53,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:17:53,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:17:53,604.604 INFO    ] time= 28/10/2026 12:17:53
[2026-10-28 12:17:53,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:17:53,626.626 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:17:53,797.797 INFO    ] No existing commands found in stream
[2026-10-28 12:17:58,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:17:58,820.820 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-28 12:18:02,954.954 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:18:02,957.957 INFO    ] Checking for system updates...
[2026-10-28 12:18:02,992.992 INFO    ] 200
[2026-10-28 12:18:02,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:18:03,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:18:03,061.061 INFO    ] No update needed
[2026-10-28 12:18:03,064.064 INFO    ] Checking for camera pi updates...
[2026-10-28 12:18:03,098.098 INFO    ] 200
[2026-10-28 12:18:03,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:18:03,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:18:03,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:18:03,256.256 INFO    ] No camera update needed
[2026-10-28 12:18:03,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:18:03,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:18:03,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:18:03,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:18:05,311.311 INFO    ] ================================================
[2026-10-28 12:18:05,326.326 INFO    ] Launching Daemon at Wed Oct 28 12:18:05 IST 2026
[2026-10-28 12:18:05,337.337 INFO    ] ================================================
[2026-10-28 12:18:05,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:18:05
[2026-10-28 12:18:06,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:18:06,780.780 INFO    ] Initializing speech engine...
[2026-10-28 12:18:06,788.788 INFO    ] 2026-10-28 12:18:06
[2026-10-28 12:18:07,040.040 INFO    ] 2026-10-28 12:18:07
[2026-10-28 12:18:07,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:18:07,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:18:07,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:18:07,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:18:07,599.599 INFO    ] time= 28/10/2026 12:18:07
[2026-10-28 12:18:07,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:18:07,645.645 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:18:07,753.753 INFO    ] No existing commands found in stream
[2026-10-28 12:18:12,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:18:12,779.779 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 12:18:16,853.853 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:18:16,855.855 INFO    ] Checking for system updates...
[2026-10-28 12:18:16,893.893 INFO    ] 200
[2026-10-28 12:18:16,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:18:16,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:18:16,954.954 INFO    ] No update needed
[2026-10-28 12:18:16,957.957 INFO    ] Checking for camera pi updates...
[2026-10-28 12:18:16,990.990 INFO    ] 200
[2026-10-28 12:18:16,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:18:17,034.034 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:18:17,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:18:17,120.120 INFO    ] No camera update needed
[2026-10-28 12:18:17,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:18:17,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:18:17,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:18:17,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:18:19,178.178 INFO    ] ================================================
[2026-10-28 12:18:19,194.194 INFO    ] Launching Daemon at Wed Oct 28 12:18:19 IST 2026
[2026-10-28 12:18:19,205.205 INFO    ] ================================================
[2026-10-28 12:18:19,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:18:19
[2026-10-28 12:18:20,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:18:20,662.662 INFO    ] Initializing speech engine...
[2026-10-28 12:18:20,672.672 INFO    ] 2026-10-28 12:18:20
[2026-10-28 12:18:20,931.931 INFO    ] 2026-10-28 12:18:20
[2026-10-28 12:18:20,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:18:21,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:18:21,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:18:21,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:18:21,674.674 INFO    ] time= 28/10/2026 12:18:21
[2026-10-28 12:18:21,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:18:21,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:18:21,902.902 INFO    ] No existing commands found in stream
[2026-10-28 12:18:26,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:18:26,930.930 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-28 12:18:30,474.474 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:18:30,477.477 INFO    ] Checking for system updates...
[2026-10-28 12:18:30,513.513 INFO    ] 200
[2026-10-28 12:18:30,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:18:30,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:18:30,570.570 INFO    ] No update needed
[2026-10-28 12:18:30,572.572 INFO    ] Checking for camera pi updates...
[2026-10-28 12:18:30,610.610 INFO    ] 200
[2026-10-28 12:18:30,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:18:30,652.652 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:18:30,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:18:30,739.739 INFO    ] No camera update needed
[2026-10-28 12:18:30,741.741 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:18:30,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:18:30,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:18:30,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:18:32,797.797 INFO    ] ================================================
[2026-10-28 12:18:32,812.812 INFO    ] Launching Daemon at Wed Oct 28 12:18:32 IST 2026
[2026-10-28 12:18:32,828.828 INFO    ] ================================================
[2026-10-28 12:18:33,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:18:33
[2026-10-28 12:18:34,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:18:34,478.478 INFO    ] Initializing speech engine...
[2026-10-28 12:18:34,488.488 INFO    ] 2026-10-28 12:18:34
[2026-10-28 12:18:34,772.772 INFO    ] 2026-10-28 12:18:34
[2026-10-28 12:18:34,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:18:35,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:18:35,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:18:35,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:18:35,517.517 INFO    ] time= 28/10/2026 12:18:35
[2026-10-28 12:18:35,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:18:35,613.613 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:18:35,804.804 INFO    ] No existing commands found in stream
[2026-10-28 12:18:40,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:18:40,817.817 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-28 12:18:42,437.437 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:18:42,440.440 INFO    ] Checking for system updates...
[2026-10-28 12:18:42,479.479 INFO    ] 200
[2026-10-28 12:18:42,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:18:42,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:18:42,537.537 INFO    ] No update needed
[2026-10-28 12:18:42,540.540 INFO    ] Checking for camera pi updates...
[2026-10-28 12:18:42,574.574 INFO    ] 200
[2026-10-28 12:18:42,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:18:42,622.622 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:18:42,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:18:42,706.706 INFO    ] No camera update needed
[2026-10-28 12:18:42,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:18:42,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:18:42,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:18:42,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:18:44,762.762 INFO    ] ================================================
[2026-10-28 12:18:44,777.777 INFO    ] Launching Daemon at Wed Oct 28 12:18:44 IST 2026
[2026-10-28 12:18:44,789.789 INFO    ] ================================================
[2026-10-28 12:18:45,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:18:45
[2026-10-28 12:18:45,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:18:46,230.230 INFO    ] Initializing speech engine...
[2026-10-28 12:18:46,236.236 INFO    ] 2026-10-28 12:18:46
[2026-10-28 12:18:46,533.533 INFO    ] 2026-10-28 12:18:46
[2026-10-28 12:18:46,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:18:46,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:18:46,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:18:47,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:18:47,172.172 INFO    ] time= 28/10/2026 12:18:47
[2026-10-28 12:18:47,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:18:47,198.198 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:18:47,337.337 INFO    ] No existing commands found in stream
[2026-10-28 12:18:52,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:18:52,361.361 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-28 12:18:56,714.714 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:18:56,716.716 INFO    ] Checking for system updates...
[2026-10-28 12:18:56,752.752 INFO    ] 200
[2026-10-28 12:18:56,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:18:56,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:18:56,810.810 INFO    ] No update needed
[2026-10-28 12:18:56,812.812 INFO    ] Checking for camera pi updates...
[2026-10-28 12:18:56,850.850 INFO    ] 200
[2026-10-28 12:18:56,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:18:56,899.899 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:18:57,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:18:57,003.003 INFO    ] No camera update needed
[2026-10-28 12:18:57,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:18:57,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:18:57,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:18:57,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:18:59,059.059 INFO    ] ================================================
[2026-10-28 12:18:59,074.074 INFO    ] Launching Daemon at Wed Oct 28 12:18:59 IST 2026
[2026-10-28 12:18:59,085.085 INFO    ] ================================================
[2026-10-28 12:18:59,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:18:59
[2026-10-28 12:19:00,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:19:00,717.717 INFO    ] Initializing speech engine...
[2026-10-28 12:19:00,723.723 INFO    ] 2026-10-28 12:19:00
[2026-10-28 12:19:01,005.005 INFO    ] 2026-10-28 12:19:00
[2026-10-28 12:19:01,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:19:01,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:19:01,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:19:01,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:19:01,561.561 INFO    ] time= 28/10/2026 12:19:01
[2026-10-28 12:19:01,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:19:01,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:19:01,677.677 INFO    ] No existing commands found in stream
[2026-10-28 12:19:06,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:19:06,690.690 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-28 12:19:07,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:19:07,937.937 INFO    ] Checking for system updates...
[2026-10-28 12:19:07,977.977 INFO    ] 200
[2026-10-28 12:19:07,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:19:08,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:19:08,039.039 INFO    ] No update needed
[2026-10-28 12:19:08,042.042 INFO    ] Checking for camera pi updates...
[2026-10-28 12:19:08,077.077 INFO    ] 200
[2026-10-28 12:19:08,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:19:08,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:19:08,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:19:08,219.219 INFO    ] No camera update needed
[2026-10-28 12:19:08,221.221 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:19:08,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:19:08,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:19:08,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:19:10,274.274 INFO    ] ================================================
[2026-10-28 12:19:10,290.290 INFO    ] Launching Daemon at Wed Oct 28 12:19:10 IST 2026
[2026-10-28 12:19:10,301.301 INFO    ] ================================================
[2026-10-28 12:19:10,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:19:10
[2026-10-28 12:19:11,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:19:11,804.804 INFO    ] Initializing speech engine...
[2026-10-28 12:19:11,819.819 INFO    ] 2026-10-28 12:19:11
[2026-10-28 12:19:12,093.093 INFO    ] 2026-10-28 12:19:12
[2026-10-28 12:19:12,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:19:12,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:19:12,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:19:12,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:19:12,694.694 INFO    ] time= 28/10/2026 12:19:12
[2026-10-28 12:19:12,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:19:12,718.718 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:19:12,851.851 INFO    ] No existing commands found in stream
[2026-10-28 12:19:17,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:19:17,866.866 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-28 12:19:20,394.394 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:19:20,397.397 INFO    ] Checking for system updates...
[2026-10-28 12:19:20,434.434 INFO    ] 200
[2026-10-28 12:19:20,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:19:20,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:19:20,492.492 INFO    ] No update needed
[2026-10-28 12:19:20,495.495 INFO    ] Checking for camera pi updates...
[2026-10-28 12:19:20,529.529 INFO    ] 200
[2026-10-28 12:19:20,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:19:20,572.572 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:19:20,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:19:20,669.669 INFO    ] No camera update needed
[2026-10-28 12:19:20,671.671 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:19:20,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:19:20,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:19:20,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:19:22,727.727 INFO    ] ================================================
[2026-10-28 12:19:22,743.743 INFO    ] Launching Daemon at Wed Oct 28 12:19:22 IST 2026
[2026-10-28 12:19:22,754.754 INFO    ] ================================================
[2026-10-28 12:19:23,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:19:23
[2026-10-28 12:19:23,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:19:24,163.163 INFO    ] Initializing speech engine...
[2026-10-28 12:19:24,183.183 INFO    ] 2026-10-28 12:19:24
[2026-10-28 12:19:24,456.456 INFO    ] 2026-10-28 12:19:24
[2026-10-28 12:19:24,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:19:24,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:19:24,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:19:25,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:19:25,056.056 INFO    ] time= 28/10/2026 12:19:25
[2026-10-28 12:19:25,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:19:25,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:19:25,211.211 INFO    ] No existing commands found in stream
[2026-10-28 12:19:30,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:19:30,240.240 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-28 12:19:33,320.320 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:19:33,323.323 INFO    ] Checking for system updates...
[2026-10-28 12:19:33,358.358 INFO    ] 200
[2026-10-28 12:19:33,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:19:33,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:19:33,422.422 INFO    ] No update needed
[2026-10-28 12:19:33,424.424 INFO    ] Checking for camera pi updates...
[2026-10-28 12:19:33,458.458 INFO    ] 200
[2026-10-28 12:19:33,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:19:33,501.501 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:19:33,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:19:33,585.585 INFO    ] No camera update needed
[2026-10-28 12:19:33,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:19:33,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:19:33,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:19:33,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:19:35,641.641 INFO    ] ================================================
[2026-10-28 12:19:35,658.658 INFO    ] Launching Daemon at Wed Oct 28 12:19:35 IST 2026
[2026-10-28 12:19:35,669.669 INFO    ] ================================================
[2026-10-28 12:19:36,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:19:36
[2026-10-28 12:19:36,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:19:37,127.127 INFO    ] Initializing speech engine...
[2026-10-28 12:19:37,135.135 INFO    ] 2026-10-28 12:19:37
[2026-10-28 12:19:37,382.382 INFO    ] 2026-10-28 12:19:37
[2026-10-28 12:19:37,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:19:37,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:19:37,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:19:37,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:19:37,957.957 INFO    ] time= 28/10/2026 12:19:37
[2026-10-28 12:19:37,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:19:37,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:19:38,138.138 INFO    ] No existing commands found in stream
[2026-10-28 12:19:43,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:19:43,168.168 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 12:19:44,997.997 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:19:45,000.000 INFO    ] Checking for system updates...
[2026-10-28 12:19:45,039.039 INFO    ] 200
[2026-10-28 12:19:45,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:19:45,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:19:45,103.103 INFO    ] No update needed
[2026-10-28 12:19:45,105.105 INFO    ] Checking for camera pi updates...
[2026-10-28 12:19:45,139.139 INFO    ] 200
[2026-10-28 12:19:45,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:19:45,182.182 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:19:45,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:19:45,267.267 INFO    ] No camera update needed
[2026-10-28 12:19:45,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:19:45,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:19:45,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:19:45,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:19:47,323.323 INFO    ] ================================================
[2026-10-28 12:19:47,339.339 INFO    ] Launching Daemon at Wed Oct 28 12:19:47 IST 2026
[2026-10-28 12:19:47,351.351 INFO    ] ================================================
[2026-10-28 12:19:47,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:19:47
[2026-10-28 12:19:48,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:19:48,783.783 INFO    ] Initializing speech engine...
[2026-10-28 12:19:48,794.794 INFO    ] 2026-10-28 12:19:48
[2026-10-28 12:19:49,040.040 INFO    ] 2026-10-28 12:19:49
[2026-10-28 12:19:49,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:19:49,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:19:49,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:19:49,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:19:49,594.594 INFO    ] time= 28/10/2026 12:19:49
[2026-10-28 12:19:49,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:19:49,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:19:49,761.761 INFO    ] No existing commands found in stream
[2026-10-28 12:19:54,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:19:54,794.794 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-28 12:19:58,635.635 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:19:58,638.638 INFO    ] Checking for system updates...
[2026-10-28 12:19:58,673.673 INFO    ] 200
[2026-10-28 12:19:58,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:19:58,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:19:58,730.730 INFO    ] No update needed
[2026-10-28 12:19:58,732.732 INFO    ] Checking for camera pi updates...
[2026-10-28 12:19:58,766.766 INFO    ] 200
[2026-10-28 12:19:58,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:19:58,814.814 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:19:58,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:19:58,913.913 INFO    ] No camera update needed
[2026-10-28 12:19:58,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:19:58,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:19:58,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:19:58,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:20:00,970.970 INFO    ] ================================================
[2026-10-28 12:20:00,985.985 INFO    ] Launching Daemon at Wed Oct 28 12:20:00 IST 2026
[2026-10-28 12:20:01,996.996 INFO    ] ================================================
[2026-10-28 12:20:01,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:20:01
[2026-10-28 12:20:02,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:20:03,027.027 INFO    ] Initializing speech engine...
[2026-10-28 12:20:03,031.031 INFO    ] 2026-10-28 12:20:03
[2026-10-28 12:20:03,372.372 INFO    ] 2026-10-28 12:20:03
[2026-10-28 12:20:03,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:20:03,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:20:03,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:20:04,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:20:04,103.103 INFO    ] time= 28/10/2026 12:20:04
[2026-10-28 12:20:04,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:20:04,199.199 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:20:04,431.431 INFO    ] No existing commands found in stream
[2026-10-28 12:20:09,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:20:09,450.450 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-28 12:20:12,604.604 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:20:12,607.607 INFO    ] Checking for system updates...
[2026-10-28 12:20:12,644.644 INFO    ] 200
[2026-10-28 12:20:12,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:20:12,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:20:12,704.704 INFO    ] No update needed
[2026-10-28 12:20:12,707.707 INFO    ] Checking for camera pi updates...
[2026-10-28 12:20:12,746.746 INFO    ] 200
[2026-10-28 12:20:12,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:20:12,796.796 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:20:12,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:20:12,882.882 INFO    ] No camera update needed
[2026-10-28 12:20:12,884.884 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:20:12,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:20:12,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:20:12,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:20:14,941.941 INFO    ] ================================================
[2026-10-28 12:20:14,957.957 INFO    ] Launching Daemon at Wed Oct 28 12:20:14 IST 2026
[2026-10-28 12:20:14,968.968 INFO    ] ================================================
[2026-10-28 12:20:15,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:20:15
[2026-10-28 12:20:16,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:20:16,539.539 INFO    ] Initializing speech engine...
[2026-10-28 12:20:16,548.548 INFO    ] 2026-10-28 12:20:16
[2026-10-28 12:20:16,830.830 INFO    ] 2026-10-28 12:20:16
[2026-10-28 12:20:16,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:20:17,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:20:17,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:20:17,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:20:17,599.599 INFO    ] time= 28/10/2026 12:20:17
[2026-10-28 12:20:17,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:20:17,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:20:17,851.851 INFO    ] No existing commands found in stream
[2026-10-28 12:20:22,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:20:22,865.865 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-28 12:20:25,519.519 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:20:25,522.522 INFO    ] Checking for system updates...
[2026-10-28 12:20:25,559.559 INFO    ] 200
[2026-10-28 12:20:25,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:20:25,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:20:25,620.620 INFO    ] No update needed
[2026-10-28 12:20:25,622.622 INFO    ] Checking for camera pi updates...
[2026-10-28 12:20:25,657.657 INFO    ] 200
[2026-10-28 12:20:25,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:20:25,700.700 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:20:25,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:20:25,776.776 INFO    ] No camera update needed
[2026-10-28 12:20:25,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:20:25,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:20:25,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:20:25,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:20:27,831.831 INFO    ] ================================================
[2026-10-28 12:20:27,846.846 INFO    ] Launching Daemon at Wed Oct 28 12:20:27 IST 2026
[2026-10-28 12:20:27,856.856 INFO    ] ================================================
[2026-10-28 12:20:28,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:20:28
[2026-10-28 12:20:29,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:20:29,309.309 INFO    ] Initializing speech engine...
[2026-10-28 12:20:29,327.327 INFO    ] 2026-10-28 12:20:29
[2026-10-28 12:20:29,605.605 INFO    ] 2026-10-28 12:20:29
[2026-10-28 12:20:29,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:20:29,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:20:29,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:20:30,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:20:30,195.195 INFO    ] time= 28/10/2026 12:20:30
[2026-10-28 12:20:30,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:20:30,224.224 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:20:30,381.381 INFO    ] No existing commands found in stream
[2026-10-28 12:20:35,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:20:35,415.415 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 12:20:37,485.485 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:20:37,488.488 INFO    ] Checking for system updates...
[2026-10-28 12:20:37,528.528 INFO    ] 200
[2026-10-28 12:20:37,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:20:37,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:20:37,592.592 INFO    ] No update needed
[2026-10-28 12:20:37,595.595 INFO    ] Checking for camera pi updates...
[2026-10-28 12:20:37,629.629 INFO    ] 200
[2026-10-28 12:20:37,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:20:37,672.672 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:20:37,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:20:37,758.758 INFO    ] No camera update needed
[2026-10-28 12:20:37,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:20:37,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:20:37,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:20:37,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:20:39,815.815 INFO    ] ================================================
[2026-10-28 12:20:39,830.830 INFO    ] Launching Daemon at Wed Oct 28 12:20:39 IST 2026
[2026-10-28 12:20:39,840.840 INFO    ] ================================================
[2026-10-28 12:20:40,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:20:40
[2026-10-28 12:20:41,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:20:41,287.287 INFO    ] Initializing speech engine...
[2026-10-28 12:20:41,298.298 INFO    ] 2026-10-28 12:20:41
[2026-10-28 12:20:41,552.552 INFO    ] 2026-10-28 12:20:41
[2026-10-28 12:20:41,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:20:41,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:20:41,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:20:42,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:20:42,271.271 INFO    ] time= 28/10/2026 12:20:42
[2026-10-28 12:20:42,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:20:42,368.368 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:20:42,546.546 INFO    ] No existing commands found in stream
[2026-10-28 12:20:47,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:20:47,569.569 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-28 12:20:48,603.603 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:20:48,606.606 INFO    ] Checking for system updates...
[2026-10-28 12:20:48,642.642 INFO    ] 200
[2026-10-28 12:20:48,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:20:48,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:20:48,700.700 INFO    ] No update needed
[2026-10-28 12:20:48,702.702 INFO    ] Checking for camera pi updates...
[2026-10-28 12:20:48,736.736 INFO    ] 200
[2026-10-28 12:20:48,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:20:48,780.780 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:20:48,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:20:48,864.864 INFO    ] No camera update needed
[2026-10-28 12:20:48,867.867 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:20:48,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:20:48,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:20:48,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:20:50,922.922 INFO    ] ================================================
[2026-10-28 12:20:50,937.937 INFO    ] Launching Daemon at Wed Oct 28 12:20:50 IST 2026
[2026-10-28 12:20:50,949.949 INFO    ] ================================================
[2026-10-28 12:20:51,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:20:51
[2026-10-28 12:20:52,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:20:52,418.418 INFO    ] Initializing speech engine...
[2026-10-28 12:20:52,426.426 INFO    ] 2026-10-28 12:20:52
[2026-10-28 12:20:52,679.679 INFO    ] 2026-10-28 12:20:52
[2026-10-28 12:20:52,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:20:52,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:20:52,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:20:53,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:20:53,232.232 INFO    ] time= 28/10/2026 12:20:53
[2026-10-28 12:20:53,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:20:53,280.280 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:20:53,430.430 INFO    ] No existing commands found in stream
[2026-10-28 12:20:58,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:20:58,463.463 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-28 12:20:59,516.516 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:20:59,519.519 INFO    ] Checking for system updates...
[2026-10-28 12:20:59,559.559 INFO    ] 200
[2026-10-28 12:20:59,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:20:59,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:20:59,627.627 INFO    ] No update needed
[2026-10-28 12:20:59,630.630 INFO    ] Checking for camera pi updates...
[2026-10-28 12:20:59,670.670 INFO    ] 200
[2026-10-28 12:20:59,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:20:59,717.717 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:20:59,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:20:59,777.777 INFO    ] No camera update needed
[2026-10-28 12:20:59,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:20:59,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:20:59,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:20:59,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:21:01,847.847 INFO    ] ================================================
[2026-10-28 12:21:01,886.886 INFO    ] Launching Daemon at Wed Oct 28 12:21:01 IST 2026
[2026-10-28 12:21:01,904.904 INFO    ] ================================================
[2026-10-28 12:21:02,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:21:02
[2026-10-28 12:21:03,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:21:03,754.754 INFO    ] Initializing speech engine...
[2026-10-28 12:21:03,767.767 INFO    ] 2026-10-28 12:21:03
[2026-10-28 12:21:04,050.050 INFO    ] 2026-10-28 12:21:04
[2026-10-28 12:21:04,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:21:04,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:21:04,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:21:04,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:21:04,786.786 INFO    ] time= 28/10/2026 12:21:04
[2026-10-28 12:21:04,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:21:04,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:21:05,013.013 INFO    ] No existing commands found in stream
[2026-10-28 12:21:10,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:21:10,034.034 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 12:21:13,699.699 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:21:13,702.702 INFO    ] Checking for system updates...
[2026-10-28 12:21:13,739.739 INFO    ] 200
[2026-10-28 12:21:13,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:21:13,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:21:13,799.799 INFO    ] No update needed
[2026-10-28 12:21:13,802.802 INFO    ] Checking for camera pi updates...
[2026-10-28 12:21:13,837.837 INFO    ] 200
[2026-10-28 12:21:13,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:21:13,880.880 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:21:13,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:21:13,985.985 INFO    ] No camera update needed
[2026-10-28 12:21:13,987.987 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:21:13,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:21:13,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:21:14,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:21:16,044.044 INFO    ] ================================================
[2026-10-28 12:21:16,059.059 INFO    ] Launching Daemon at Wed Oct 28 12:21:16 IST 2026
[2026-10-28 12:21:16,069.069 INFO    ] ================================================
[2026-10-28 12:21:16,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:21:16
[2026-10-28 12:21:17,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:21:17,645.645 INFO    ] Initializing speech engine...
[2026-10-28 12:21:17,655.655 INFO    ] 2026-10-28 12:21:17
[2026-10-28 12:21:17,900.900 INFO    ] 2026-10-28 12:21:17
[2026-10-28 12:21:17,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:21:18,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:21:18,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:21:18,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:21:18,475.475 INFO    ] time= 28/10/2026 12:21:18
[2026-10-28 12:21:18,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:21:18,516.516 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:21:18,642.642 INFO    ] No existing commands found in stream
[2026-10-28 12:21:23,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:21:23,677.677 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 12:21:26,442.442 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:21:26,445.445 INFO    ] Checking for system updates...
[2026-10-28 12:21:26,480.480 INFO    ] 200
[2026-10-28 12:21:26,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:21:26,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:21:26,538.538 INFO    ] No update needed
[2026-10-28 12:21:26,540.540 INFO    ] Checking for camera pi updates...
[2026-10-28 12:21:26,575.575 INFO    ] 200
[2026-10-28 12:21:26,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:21:26,619.619 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:21:26,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:21:26,718.718 INFO    ] No camera update needed
[2026-10-28 12:21:26,721.721 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:21:26,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:21:26,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:21:26,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:21:28,775.775 INFO    ] ================================================
[2026-10-28 12:21:28,790.790 INFO    ] Launching Daemon at Wed Oct 28 12:21:28 IST 2026
[2026-10-28 12:21:28,800.800 INFO    ] ================================================
[2026-10-28 12:21:29,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:21:29
[2026-10-28 12:21:29,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:21:30,204.204 INFO    ] Initializing speech engine...
[2026-10-28 12:21:30,223.223 INFO    ] 2026-10-28 12:21:30
[2026-10-28 12:21:30,476.476 INFO    ] 2026-10-28 12:21:30
[2026-10-28 12:21:30,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:21:30,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:21:30,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:21:31,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:21:31,188.188 INFO    ] time= 28/10/2026 12:21:31
[2026-10-28 12:21:31,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:21:31,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:21:31,420.420 INFO    ] No existing commands found in stream
[2026-10-28 12:21:36,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:21:36,435.435 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 12:21:39,337.337 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:21:39,339.339 INFO    ] Checking for system updates...
[2026-10-28 12:21:39,378.378 INFO    ] 200
[2026-10-28 12:21:39,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:21:39,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:21:39,441.441 INFO    ] No update needed
[2026-10-28 12:21:39,444.444 INFO    ] Checking for camera pi updates...
[2026-10-28 12:21:39,477.477 INFO    ] 200
[2026-10-28 12:21:39,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:21:39,524.524 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:21:39,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:21:39,602.602 INFO    ] No camera update needed
[2026-10-28 12:21:39,605.605 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:21:39,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:21:39,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:21:39,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:21:41,658.658 INFO    ] ================================================
[2026-10-28 12:21:41,672.672 INFO    ] Launching Daemon at Wed Oct 28 12:21:41 IST 2026
[2026-10-28 12:21:41,687.687 INFO    ] ================================================
[2026-10-28 12:21:42,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:21:42
[2026-10-28 12:21:42,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:21:43,179.179 INFO    ] Initializing speech engine...
[2026-10-28 12:21:43,193.193 INFO    ] 2026-10-28 12:21:43
[2026-10-28 12:21:43,474.474 INFO    ] 2026-10-28 12:21:43
[2026-10-28 12:21:43,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:21:43,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:21:43,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:21:44,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:21:44,073.073 INFO    ] time= 28/10/2026 12:21:44
[2026-10-28 12:21:44,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:21:44,111.111 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:21:44,264.264 INFO    ] No existing commands found in stream
[2026-10-28 12:21:49,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:21:49,291.291 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-28 12:21:51,394.394 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:21:51,396.396 INFO    ] Checking for system updates...
[2026-10-28 12:21:51,433.433 INFO    ] 200
[2026-10-28 12:21:51,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:21:51,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:21:51,491.491 INFO    ] No update needed
[2026-10-28 12:21:51,493.493 INFO    ] Checking for camera pi updates...
[2026-10-28 12:21:51,527.527 INFO    ] 200
[2026-10-28 12:21:51,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:21:51,569.569 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:21:51,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:21:51,643.643 INFO    ] No camera update needed
[2026-10-28 12:21:51,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:21:51,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:21:51,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:21:51,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:21:53,699.699 INFO    ] ================================================
[2026-10-28 12:21:53,715.715 INFO    ] Launching Daemon at Wed Oct 28 12:21:53 IST 2026
[2026-10-28 12:21:53,726.726 INFO    ] ================================================
[2026-10-28 12:21:54,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:21:54
[2026-10-28 12:21:54,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:21:55,182.182 INFO    ] Initializing speech engine...
[2026-10-28 12:21:55,208.208 INFO    ] 2026-10-28 12:21:55
[2026-10-28 12:21:55,489.489 INFO    ] 2026-10-28 12:21:55
[2026-10-28 12:21:55,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:21:55,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:21:55,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:21:56,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:21:56,083.083 INFO    ] time= 28/10/2026 12:21:56
[2026-10-28 12:21:56,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:21:56,124.124 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:21:56,271.271 INFO    ] No existing commands found in stream
[2026-10-28 12:22:01,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:22:01,310.310 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 12:22:03,513.513 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:22:03,515.515 INFO    ] Checking for system updates...
[2026-10-28 12:22:03,560.560 INFO    ] 200
[2026-10-28 12:22:03,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:22:03,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:22:03,652.652 INFO    ] No update needed
[2026-10-28 12:22:03,655.655 INFO    ] Checking for camera pi updates...
[2026-10-28 12:22:03,690.690 INFO    ] 200
[2026-10-28 12:22:03,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:22:03,742.742 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:22:03,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:22:03,834.834 INFO    ] No camera update needed
[2026-10-28 12:22:03,837.837 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:22:03,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:22:03,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:22:03,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:22:05,897.897 INFO    ] ================================================
[2026-10-28 12:22:05,912.912 INFO    ] Launching Daemon at Wed Oct 28 12:22:05 IST 2026
[2026-10-28 12:22:05,923.923 INFO    ] ================================================
[2026-10-28 12:22:06,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:22:06
[2026-10-28 12:22:07,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:22:07,586.586 INFO    ] Initializing speech engine...
[2026-10-28 12:22:07,597.597 INFO    ] 2026-10-28 12:22:07
[2026-10-28 12:22:07,887.887 INFO    ] 2026-10-28 12:22:07
[2026-10-28 12:22:07,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:22:08,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:22:08,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:22:08,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:22:08,671.671 INFO    ] time= 28/10/2026 12:22:08
[2026-10-28 12:22:08,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:22:08,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:22:08,887.887 INFO    ] No existing commands found in stream
[2026-10-28 12:22:13,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:22:13,906.906 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-28 12:22:15,037.037 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:22:15,040.040 INFO    ] Checking for system updates...
[2026-10-28 12:22:15,077.077 INFO    ] 200
[2026-10-28 12:22:15,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:22:15,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:22:15,136.136 INFO    ] No update needed
[2026-10-28 12:22:15,138.138 INFO    ] Checking for camera pi updates...
[2026-10-28 12:22:15,174.174 INFO    ] 200
[2026-10-28 12:22:15,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:22:15,219.219 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:22:15,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:22:15,320.320 INFO    ] No camera update needed
[2026-10-28 12:22:15,322.322 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:22:15,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:22:15,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:22:15,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:22:17,376.376 INFO    ] ================================================
[2026-10-28 12:22:17,392.392 INFO    ] Launching Daemon at Wed Oct 28 12:22:17 IST 2026
[2026-10-28 12:22:17,402.402 INFO    ] ================================================
[2026-10-28 12:22:18,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:22:18
[2026-10-28 12:22:18,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:22:19,073.073 INFO    ] Initializing speech engine...
[2026-10-28 12:22:19,079.079 INFO    ] 2026-10-28 12:22:19
[2026-10-28 12:22:19,389.389 INFO    ] 2026-10-28 12:22:19
[2026-10-28 12:22:19,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:22:19,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:22:19,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:22:20,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:22:20,143.143 INFO    ] time= 28/10/2026 12:22:20
[2026-10-28 12:22:20,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:22:20,258.258 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:22:20,443.443 INFO    ] No existing commands found in stream
[2026-10-28 12:22:25,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:22:25,481.481 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 12:22:29,277.277 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:22:29,279.279 INFO    ] Checking for system updates...
[2026-10-28 12:22:29,319.319 INFO    ] 200
[2026-10-28 12:22:29,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:22:29,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:22:29,376.376 INFO    ] No update needed
[2026-10-28 12:22:29,379.379 INFO    ] Checking for camera pi updates...
[2026-10-28 12:22:29,412.412 INFO    ] 200
[2026-10-28 12:22:29,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:22:29,461.461 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:22:29,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:22:29,557.557 INFO    ] No camera update needed
[2026-10-28 12:22:29,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:22:29,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:22:29,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:22:29,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:22:31,613.613 INFO    ] ================================================
[2026-10-28 12:22:31,628.628 INFO    ] Launching Daemon at Wed Oct 28 12:22:31 IST 2026
[2026-10-28 12:22:31,639.639 INFO    ] ================================================
[2026-10-28 12:22:32,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:22:32
[2026-10-28 12:22:32,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:22:33,255.255 INFO    ] Initializing speech engine...
[2026-10-28 12:22:33,258.258 INFO    ] 2026-10-28 12:22:33
[2026-10-28 12:22:33,545.545 INFO    ] 2026-10-28 12:22:33
[2026-10-28 12:22:33,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:22:33,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:22:33,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:22:34,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:22:34,136.136 INFO    ] time= 28/10/2026 12:22:34
[2026-10-28 12:22:34,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:22:34,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:22:34,318.318 INFO    ] No existing commands found in stream
[2026-10-28 12:22:39,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:22:39,351.351 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-28 12:22:42,595.595 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:22:42,598.598 INFO    ] Checking for system updates...
[2026-10-28 12:22:42,634.634 INFO    ] 200
[2026-10-28 12:22:42,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:22:42,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:22:42,697.697 INFO    ] No update needed
[2026-10-28 12:22:42,700.700 INFO    ] Checking for camera pi updates...
[2026-10-28 12:22:42,733.733 INFO    ] 200
[2026-10-28 12:22:42,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:22:42,775.775 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:22:42,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:22:42,881.881 INFO    ] No camera update needed
[2026-10-28 12:22:42,883.883 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:22:42,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:22:42,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:22:42,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:22:44,935.935 INFO    ] ================================================
[2026-10-28 12:22:44,950.950 INFO    ] Launching Daemon at Wed Oct 28 12:22:44 IST 2026
[2026-10-28 12:22:44,961.961 INFO    ] ================================================
[2026-10-28 12:22:45,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:22:45
[2026-10-28 12:22:46,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:22:46,423.423 INFO    ] Initializing speech engine...
[2026-10-28 12:22:46,430.430 INFO    ] 2026-10-28 12:22:46
[2026-10-28 12:22:46,690.690 INFO    ] 2026-10-28 12:22:46
[2026-10-28 12:22:46,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:22:47,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:22:47,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:22:47,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:22:47,281.281 INFO    ] time= 28/10/2026 12:22:47
[2026-10-28 12:22:47,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:22:47,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:22:47,486.486 INFO    ] No existing commands found in stream
[2026-10-28 12:22:52,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:22:52,499.499 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-28 12:22:55,642.642 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:22:55,644.644 INFO    ] Checking for system updates...
[2026-10-28 12:22:55,682.682 INFO    ] 200
[2026-10-28 12:22:55,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:22:55,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:22:55,743.743 INFO    ] No update needed
[2026-10-28 12:22:55,746.746 INFO    ] Checking for camera pi updates...
[2026-10-28 12:22:55,780.780 INFO    ] 200
[2026-10-28 12:22:55,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:22:55,823.823 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:22:55,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:22:55,907.907 INFO    ] No camera update needed
[2026-10-28 12:22:55,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:22:55,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:22:55,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:22:55,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:22:57,961.961 INFO    ] ================================================
[2026-10-28 12:22:57,977.977 INFO    ] Launching Daemon at Wed Oct 28 12:22:57 IST 2026
[2026-10-28 12:22:57,987.987 INFO    ] ================================================
[2026-10-28 12:22:58,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:22:58
[2026-10-28 12:22:59,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:22:59,407.407 INFO    ] Initializing speech engine...
[2026-10-28 12:22:59,416.416 INFO    ] 2026-10-28 12:22:59
[2026-10-28 12:22:59,665.665 INFO    ] 2026-10-28 12:22:59
[2026-10-28 12:22:59,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:23:00,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:23:00,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:23:00,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:23:00,383.383 INFO    ] time= 28/10/2026 12:23:00
[2026-10-28 12:23:00,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:23:00,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:23:00,636.636 INFO    ] No existing commands found in stream
[2026-10-28 12:23:05,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:23:05,651.651 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 12:23:08,062.062 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:23:08,065.065 INFO    ] Checking for system updates...
[2026-10-28 12:23:08,104.104 INFO    ] 200
[2026-10-28 12:23:08,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:23:08,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:23:08,212.212 INFO    ] No update needed
[2026-10-28 12:23:08,215.215 INFO    ] Checking for camera pi updates...
[2026-10-28 12:23:08,258.258 INFO    ] 200
[2026-10-28 12:23:08,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:23:08,315.315 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:23:08,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:23:08,399.399 INFO    ] No camera update needed
[2026-10-28 12:23:08,402.402 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:23:08,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:23:08,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:23:08,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:23:10,466.466 INFO    ] ================================================
[2026-10-28 12:23:10,481.481 INFO    ] Launching Daemon at Wed Oct 28 12:23:10 IST 2026
[2026-10-28 12:23:10,492.492 INFO    ] ================================================
[2026-10-28 12:23:11,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:23:11
[2026-10-28 12:23:11,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:23:11,917.917 INFO    ] Initializing speech engine...
[2026-10-28 12:23:11,938.938 INFO    ] 2026-10-28 12:23:11
[2026-10-28 12:23:12,217.217 INFO    ] 2026-10-28 12:23:12
[2026-10-28 12:23:12,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:23:12,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:23:12,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:23:12,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:23:12,799.799 INFO    ] time= 28/10/2026 12:23:12
[2026-10-28 12:23:12,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:23:12,842.842 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:23:12,978.978 INFO    ] No existing commands found in stream
[2026-10-28 12:23:18,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:23:18,008.008 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 12:23:18,877.877 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:23:18,880.880 INFO    ] Checking for system updates...
[2026-10-28 12:23:18,918.918 INFO    ] 200
[2026-10-28 12:23:18,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:23:18,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:23:18,997.997 INFO    ] No update needed
[2026-10-28 12:23:19,000.000 INFO    ] Checking for camera pi updates...
[2026-10-28 12:23:19,035.035 INFO    ] 200
[2026-10-28 12:23:19,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:23:19,084.084 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:23:19,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:23:19,179.179 INFO    ] No camera update needed
[2026-10-28 12:23:19,181.181 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:23:19,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:23:19,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:23:19,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:23:21,236.236 INFO    ] ================================================
[2026-10-28 12:23:21,251.251 INFO    ] Launching Daemon at Wed Oct 28 12:23:21 IST 2026
[2026-10-28 12:23:21,262.262 INFO    ] ================================================
[2026-10-28 12:23:21,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:23:21
[2026-10-28 12:23:22,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:23:22,936.936 INFO    ] Initializing speech engine...
[2026-10-28 12:23:22,942.942 INFO    ] 2026-10-28 12:23:22
[2026-10-28 12:23:23,235.235 INFO    ] 2026-10-28 12:23:23
[2026-10-28 12:23:23,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:23:23,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:23:23,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:23:23,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:23:23,945.945 INFO    ] time= 28/10/2026 12:23:23
[2026-10-28 12:23:24,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:23:24,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:23:24,185.185 INFO    ] No existing commands found in stream
[2026-10-28 12:23:29,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:23:29,217.217 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-28 12:23:30,038.038 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:23:30,041.041 INFO    ] Checking for system updates...
[2026-10-28 12:23:30,078.078 INFO    ] 200
[2026-10-28 12:23:30,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:23:30,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:23:30,145.145 INFO    ] No update needed
[2026-10-28 12:23:30,148.148 INFO    ] Checking for camera pi updates...
[2026-10-28 12:23:30,182.182 INFO    ] 200
[2026-10-28 12:23:30,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:23:30,228.228 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:23:30,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:23:30,304.304 INFO    ] No camera update needed
[2026-10-28 12:23:30,306.306 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:23:30,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:23:30,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:23:30,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:23:32,366.366 INFO    ] ================================================
[2026-10-28 12:23:32,382.382 INFO    ] Launching Daemon at Wed Oct 28 12:23:32 IST 2026
[2026-10-28 12:23:32,394.394 INFO    ] ================================================
[2026-10-28 12:23:32,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:23:32
[2026-10-28 12:23:33,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:23:33,847.847 INFO    ] Initializing speech engine...
[2026-10-28 12:23:33,866.866 INFO    ] 2026-10-28 12:23:33
[2026-10-28 12:23:34,117.117 INFO    ] 2026-10-28 12:23:34
[2026-10-28 12:23:34,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:23:34,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:23:34,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:23:34,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:23:34,695.695 INFO    ] time= 28/10/2026 12:23:34
[2026-10-28 12:23:34,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:23:34,708.708 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:23:34,875.875 INFO    ] No existing commands found in stream
[2026-10-28 12:23:39,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:23:39,902.902 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 12:23:41,957.957 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:23:41,959.959 INFO    ] Checking for system updates...
[2026-10-28 12:23:42,000.000 INFO    ] 200
[2026-10-28 12:23:42,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:23:42,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:23:42,056.056 INFO    ] No update needed
[2026-10-28 12:23:42,059.059 INFO    ] Checking for camera pi updates...
[2026-10-28 12:23:42,092.092 INFO    ] 200
[2026-10-28 12:23:42,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:23:42,141.141 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:23:42,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:23:42,346.346 INFO    ] No camera update needed
[2026-10-28 12:23:42,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:23:42,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:23:42,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:23:42,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:23:44,401.401 INFO    ] ================================================
[2026-10-28 12:23:44,417.417 INFO    ] Launching Daemon at Wed Oct 28 12:23:44 IST 2026
[2026-10-28 12:23:44,428.428 INFO    ] ================================================
[2026-10-28 12:23:44,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:23:44
[2026-10-28 12:23:45,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:23:45,828.828 INFO    ] Initializing speech engine...
[2026-10-28 12:23:45,843.843 INFO    ] 2026-10-28 12:23:45
[2026-10-28 12:23:46,110.110 INFO    ] 2026-10-28 12:23:46
[2026-10-28 12:23:46,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:23:46,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:23:46,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:23:46,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:23:46,694.694 INFO    ] time= 28/10/2026 12:23:46
[2026-10-28 12:23:46,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:23:46,729.729 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:23:46,859.859 INFO    ] No existing commands found in stream
[2026-10-28 12:23:51,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:23:51,887.887 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-28 12:23:54,672.672 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:23:54,675.675 INFO    ] Checking for system updates...
[2026-10-28 12:23:54,710.710 INFO    ] 200
[2026-10-28 12:23:54,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:23:54,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:23:54,767.767 INFO    ] No update needed
[2026-10-28 12:23:54,770.770 INFO    ] Checking for camera pi updates...
[2026-10-28 12:23:54,807.807 INFO    ] 200
[2026-10-28 12:23:54,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:23:54,850.850 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:23:54,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:23:54,938.938 INFO    ] No camera update needed
[2026-10-28 12:23:54,940.940 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:23:54,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:23:54,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:23:54,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:23:57,995.995 INFO    ] ================================================
[2026-10-28 12:23:57,010.010 INFO    ] Launching Daemon at Wed Oct 28 12:23:57 IST 2026
[2026-10-28 12:23:57,021.021 INFO    ] ================================================
[2026-10-28 12:23:57,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:23:57
[2026-10-28 12:23:58,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:23:58,456.456 INFO    ] Initializing speech engine...
[2026-10-28 12:23:58,464.464 INFO    ] 2026-10-28 12:23:58
[2026-10-28 12:23:58,761.761 INFO    ] 2026-10-28 12:23:58
[2026-10-28 12:23:58,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:23:59,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:23:59,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:23:59,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:23:59,290.290 INFO    ] time= 28/10/2026 12:23:59
[2026-10-28 12:23:59,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:23:59,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:23:59,470.470 INFO    ] No existing commands found in stream
[2026-10-28 12:24:04,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:24:04,485.485 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-28 12:24:05,798.798 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:24:05,801.801 INFO    ] Checking for system updates...
[2026-10-28 12:24:05,837.837 INFO    ] 200
[2026-10-28 12:24:05,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:24:05,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:24:05,895.895 INFO    ] No update needed
[2026-10-28 12:24:05,897.897 INFO    ] Checking for camera pi updates...
[2026-10-28 12:24:05,932.932 INFO    ] 200
[2026-10-28 12:24:05,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:24:05,980.980 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:24:06,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:24:06,072.072 INFO    ] No camera update needed
[2026-10-28 12:24:06,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:24:06,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:24:06,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:24:06,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:24:08,128.128 INFO    ] ================================================
[2026-10-28 12:24:08,143.143 INFO    ] Launching Daemon at Wed Oct 28 12:24:08 IST 2026
[2026-10-28 12:24:08,154.154 INFO    ] ================================================
[2026-10-28 12:24:08,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:24:08
[2026-10-28 12:24:09,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:24:09,749.749 INFO    ] Initializing speech engine...
[2026-10-28 12:24:09,758.758 INFO    ] 2026-10-28 12:24:09
[2026-10-28 12:24:10,017.017 INFO    ] 2026-10-28 12:24:10
[2026-10-28 12:24:10,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:24:10,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:24:10,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:24:10,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:24:10,724.724 INFO    ] time= 28/10/2026 12:24:10
[2026-10-28 12:24:10,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:24:10,819.819 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:24:10,960.960 INFO    ] No existing commands found in stream
[2026-10-28 12:24:15,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:24:15,981.981 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-28 12:24:18,436.436 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:24:18,439.439 INFO    ] Checking for system updates...
[2026-10-28 12:24:18,479.479 INFO    ] 200
[2026-10-28 12:24:18,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:24:18,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:24:18,543.543 INFO    ] No update needed
[2026-10-28 12:24:18,545.545 INFO    ] Checking for camera pi updates...
[2026-10-28 12:24:18,583.583 INFO    ] 200
[2026-10-28 12:24:18,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:24:18,627.627 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:24:18,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:24:18,702.702 INFO    ] No camera update needed
[2026-10-28 12:24:18,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:24:18,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:24:18,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:24:18,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:24:20,760.760 INFO    ] ================================================
[2026-10-28 12:24:20,775.775 INFO    ] Launching Daemon at Wed Oct 28 12:24:20 IST 2026
[2026-10-28 12:24:20,786.786 INFO    ] ================================================
[2026-10-28 12:24:21,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:24:21
[2026-10-28 12:24:21,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:24:22,245.245 INFO    ] Initializing speech engine...
[2026-10-28 12:24:22,270.270 INFO    ] 2026-10-28 12:24:22
[2026-10-28 12:24:22,547.547 INFO    ] 2026-10-28 12:24:22
[2026-10-28 12:24:22,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:24:22,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:24:22,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:24:23,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:24:23,177.177 INFO    ] time= 28/10/2026 12:24:23
[2026-10-28 12:24:23,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:24:23,210.210 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:24:23,540.540 INFO    ] No existing commands found in stream
[2026-10-28 12:24:28,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:24:28,574.574 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-28 12:24:32,521.521 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:24:32,524.524 INFO    ] Checking for system updates...
[2026-10-28 12:24:32,559.559 INFO    ] 200
[2026-10-28 12:24:32,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:24:32,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:24:32,624.624 INFO    ] No update needed
[2026-10-28 12:24:32,626.626 INFO    ] Checking for camera pi updates...
[2026-10-28 12:24:32,660.660 INFO    ] 200
[2026-10-28 12:24:32,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:24:32,702.702 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:24:32,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:24:32,789.789 INFO    ] No camera update needed
[2026-10-28 12:24:32,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:24:32,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:24:32,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:24:32,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:24:34,844.844 INFO    ] ================================================
[2026-10-28 12:24:34,860.860 INFO    ] Launching Daemon at Wed Oct 28 12:24:34 IST 2026
[2026-10-28 12:24:34,872.872 INFO    ] ================================================
[2026-10-28 12:24:35,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:24:35
[2026-10-28 12:24:36,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:24:36,322.322 INFO    ] Initializing speech engine...
[2026-10-28 12:24:36,336.336 INFO    ] 2026-10-28 12:24:36
[2026-10-28 12:24:36,623.623 INFO    ] 2026-10-28 12:24:36
[2026-10-28 12:24:36,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:24:36,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:24:36,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:24:37,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:24:37,262.262 INFO    ] time= 28/10/2026 12:24:37
[2026-10-28 12:24:37,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:24:37,286.286 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:24:37,411.411 INFO    ] No existing commands found in stream
[2026-10-28 12:24:42,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:24:42,439.439 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-28 12:24:46,252.252 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:24:46,255.255 INFO    ] Checking for system updates...
[2026-10-28 12:24:46,291.291 INFO    ] 200
[2026-10-28 12:24:46,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:24:46,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:24:46,347.347 INFO    ] No update needed
[2026-10-28 12:24:46,354.354 INFO    ] Checking for camera pi updates...
[2026-10-28 12:24:46,387.387 INFO    ] 200
[2026-10-28 12:24:46,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:24:46,435.435 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:24:46,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:24:46,521.521 INFO    ] No camera update needed
[2026-10-28 12:24:46,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:24:46,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:24:46,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:24:46,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:24:48,576.576 INFO    ] ================================================
[2026-10-28 12:24:48,591.591 INFO    ] Launching Daemon at Wed Oct 28 12:24:48 IST 2026
[2026-10-28 12:24:48,602.602 INFO    ] ================================================
[2026-10-28 12:24:49,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:24:49
[2026-10-28 12:24:49,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:24:50,008.008 INFO    ] Initializing speech engine...
[2026-10-28 12:24:50,017.017 INFO    ] 2026-10-28 12:24:50
[2026-10-28 12:24:50,311.311 INFO    ] 2026-10-28 12:24:50
[2026-10-28 12:24:50,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:24:50,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:24:50,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:24:50,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:24:50,948.948 INFO    ] time= 28/10/2026 12:24:50
[2026-10-28 12:24:50,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:24:50,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:24:51,101.101 INFO    ] No existing commands found in stream
[2026-10-28 12:24:56,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:24:56,129.129 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-28 12:24:57,094.094 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:24:57,097.097 INFO    ] Checking for system updates...
[2026-10-28 12:24:57,136.136 INFO    ] 200
[2026-10-28 12:24:57,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:24:57,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:24:57,200.200 INFO    ] No update needed
[2026-10-28 12:24:57,202.202 INFO    ] Checking for camera pi updates...
[2026-10-28 12:24:57,236.236 INFO    ] 200
[2026-10-28 12:24:57,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:24:57,280.280 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:24:57,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:24:57,384.384 INFO    ] No camera update needed
[2026-10-28 12:24:57,386.386 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:24:57,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:24:57,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:24:57,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:24:59,441.441 INFO    ] ================================================
[2026-10-28 12:24:59,456.456 INFO    ] Launching Daemon at Wed Oct 28 12:24:59 IST 2026
[2026-10-28 12:24:59,467.467 INFO    ] ================================================
[2026-10-28 12:25:00,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:25:00
[2026-10-28 12:25:00,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:25:00,863.863 INFO    ] Initializing speech engine...
[2026-10-28 12:25:00,878.878 INFO    ] 2026-10-28 12:25:00
[2026-10-28 12:25:01,141.141 INFO    ] 2026-10-28 12:25:01
[2026-10-28 12:25:01,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:25:01,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:25:01,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:25:01,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:25:01,721.721 INFO    ] time= 28/10/2026 12:25:01
[2026-10-28 12:25:01,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:25:01,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:25:01,836.836 INFO    ] No existing commands found in stream
[2026-10-28 12:25:06,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:25:06,849.849 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-28 12:25:09,008.008 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:25:09,010.010 INFO    ] Checking for system updates...
[2026-10-28 12:25:09,046.046 INFO    ] 200
[2026-10-28 12:25:09,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:25:09,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:25:09,110.110 INFO    ] No update needed
[2026-10-28 12:25:09,112.112 INFO    ] Checking for camera pi updates...
[2026-10-28 12:25:09,146.146 INFO    ] 200
[2026-10-28 12:25:09,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:25:09,188.188 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:25:09,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:25:09,278.278 INFO    ] No camera update needed
[2026-10-28 12:25:09,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:25:09,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:25:09,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:25:09,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:25:11,335.335 INFO    ] ================================================
[2026-10-28 12:25:11,350.350 INFO    ] Launching Daemon at Wed Oct 28 12:25:11 IST 2026
[2026-10-28 12:25:11,361.361 INFO    ] ================================================
[2026-10-28 12:25:11,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:25:11
[2026-10-28 12:25:12,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:25:12,767.767 INFO    ] Initializing speech engine...
[2026-10-28 12:25:12,774.774 INFO    ] 2026-10-28 12:25:12
[2026-10-28 12:25:13,072.072 INFO    ] 2026-10-28 12:25:13
[2026-10-28 12:25:13,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:25:13,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:25:13,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:25:13,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:25:13,639.639 INFO    ] time= 28/10/2026 12:25:13
[2026-10-28 12:25:13,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:25:13,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:25:13,867.867 INFO    ] No existing commands found in stream
[2026-10-28 12:25:18,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:25:18,888.888 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-28 12:25:21,012.012 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:25:21,015.015 INFO    ] Checking for system updates...
[2026-10-28 12:25:21,055.055 INFO    ] 200
[2026-10-28 12:25:21,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:25:21,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:25:21,119.119 INFO    ] No update needed
[2026-10-28 12:25:21,121.121 INFO    ] Checking for camera pi updates...
[2026-10-28 12:25:21,159.159 INFO    ] 200
[2026-10-28 12:25:21,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:25:21,207.207 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:25:21,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:25:21,290.290 INFO    ] No camera update needed
[2026-10-28 12:25:21,292.292 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:25:21,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:25:21,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:25:21,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:25:23,346.346 INFO    ] ================================================
[2026-10-28 12:25:23,361.361 INFO    ] Launching Daemon at Wed Oct 28 12:25:23 IST 2026
[2026-10-28 12:25:23,372.372 INFO    ] ================================================
[2026-10-28 12:25:23,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:25:23
[2026-10-28 12:25:24,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:25:24,875.875 INFO    ] Initializing speech engine...
[2026-10-28 12:25:24,881.881 INFO    ] 2026-10-28 12:25:24
[2026-10-28 12:25:25,193.193 INFO    ] 2026-10-28 12:25:25
[2026-10-28 12:25:25,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:25:25,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:25:25,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:25:25,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:25:25,949.949 INFO    ] time= 28/10/2026 12:25:25
[2026-10-28 12:25:25,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:25:26,040.040 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:25:26,278.278 INFO    ] No existing commands found in stream
[2026-10-28 12:25:31,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:25:31,295.295 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-28 12:25:33,361.361 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:25:33,364.364 INFO    ] Checking for system updates...
[2026-10-28 12:25:33,401.401 INFO    ] 200
[2026-10-28 12:25:33,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:25:33,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:25:33,460.460 INFO    ] No update needed
[2026-10-28 12:25:33,462.462 INFO    ] Checking for camera pi updates...
[2026-10-28 12:25:33,501.501 INFO    ] 200
[2026-10-28 12:25:33,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:25:33,551.551 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:25:33,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:25:33,637.637 INFO    ] No camera update needed
[2026-10-28 12:25:33,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:25:33,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:25:33,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:25:33,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:25:35,698.698 INFO    ] ================================================
[2026-10-28 12:25:35,714.714 INFO    ] Launching Daemon at Wed Oct 28 12:25:35 IST 2026
[2026-10-28 12:25:35,725.725 INFO    ] ================================================
[2026-10-28 12:25:36,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:25:36
[2026-10-28 12:25:37,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:25:37,380.380 INFO    ] Initializing speech engine...
[2026-10-28 12:25:37,392.392 INFO    ] 2026-10-28 12:25:37
[2026-10-28 12:25:37,706.706 INFO    ] 2026-10-28 12:25:37
[2026-10-28 12:25:37,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:25:38,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:25:38,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:25:38,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:25:38,290.290 INFO    ] time= 28/10/2026 12:25:38
[2026-10-28 12:25:38,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:25:38,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:25:38,499.499 INFO    ] No existing commands found in stream
[2026-10-28 12:25:43,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:25:43,527.527 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-28 12:25:45,282.282 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:25:45,285.285 INFO    ] Checking for system updates...
[2026-10-28 12:25:45,327.327 INFO    ] 200
[2026-10-28 12:25:45,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:25:45,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:25:45,402.402 INFO    ] No update needed
[2026-10-28 12:25:45,405.405 INFO    ] Checking for camera pi updates...
[2026-10-28 12:25:45,444.444 INFO    ] 200
[2026-10-28 12:25:45,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:25:45,498.498 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:25:45,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:25:45,685.685 INFO    ] No camera update needed
[2026-10-28 12:25:45,688.688 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:25:45,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:25:45,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:25:45,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:25:47,744.744 INFO    ] ================================================
[2026-10-28 12:25:47,760.760 INFO    ] Launching Daemon at Wed Oct 28 12:25:47 IST 2026
[2026-10-28 12:25:47,771.771 INFO    ] ================================================
[2026-10-28 12:25:48,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:25:48
[2026-10-28 12:25:48,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:25:49,193.193 INFO    ] Initializing speech engine...
[2026-10-28 12:25:49,201.201 INFO    ] 2026-10-28 12:25:49
[2026-10-28 12:25:49,452.452 INFO    ] 2026-10-28 12:25:49
[2026-10-28 12:25:49,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:25:49,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:25:49,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:25:50,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:25:50,066.066 INFO    ] time= 28/10/2026 12:25:50
[2026-10-28 12:25:50,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:25:50,096.096 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:25:50,240.240 INFO    ] No existing commands found in stream
[2026-10-28 12:25:55,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:25:55,259.259 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-28 12:25:57,492.492 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:25:57,495.495 INFO    ] Checking for system updates...
[2026-10-28 12:25:57,530.530 INFO    ] 200
[2026-10-28 12:25:57,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:25:57,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:25:57,595.595 INFO    ] No update needed
[2026-10-28 12:25:57,597.597 INFO    ] Checking for camera pi updates...
[2026-10-28 12:25:57,634.634 INFO    ] 200
[2026-10-28 12:25:57,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:25:57,682.682 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:25:57,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:25:57,776.776 INFO    ] No camera update needed
[2026-10-28 12:25:57,778.778 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:25:57,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:25:57,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:25:57,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:25:59,834.834 INFO    ] ================================================
[2026-10-28 12:25:59,849.849 INFO    ] Launching Daemon at Wed Oct 28 12:25:59 IST 2026
[2026-10-28 12:25:59,860.860 INFO    ] ================================================
[2026-10-28 12:26:00,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:26:00
[2026-10-28 12:26:01,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:26:01,386.386 INFO    ] Initializing speech engine...
[2026-10-28 12:26:01,394.394 INFO    ] 2026-10-28 12:26:01
[2026-10-28 12:26:01,694.694 INFO    ] 2026-10-28 12:26:01
[2026-10-28 12:26:01,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:26:02,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:26:02,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:26:02,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:26:02,400.400 INFO    ] time= 28/10/2026 12:26:02
[2026-10-28 12:26:02,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:26:02,456.456 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:26:02,605.605 INFO    ] No existing commands found in stream
[2026-10-28 12:26:07,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:26:07,627.627 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 12:26:10,595.595 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:26:10,597.597 INFO    ] Checking for system updates...
[2026-10-28 12:26:10,637.637 INFO    ] 200
[2026-10-28 12:26:10,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:26:10,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:26:10,694.694 INFO    ] No update needed
[2026-10-28 12:26:10,697.697 INFO    ] Checking for camera pi updates...
[2026-10-28 12:26:10,730.730 INFO    ] 200
[2026-10-28 12:26:10,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:26:10,774.774 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:26:10,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:26:10,878.878 INFO    ] No camera update needed
[2026-10-28 12:26:10,880.880 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:26:10,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:26:10,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:26:10,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:26:12,933.933 INFO    ] ================================================
[2026-10-28 12:26:12,949.949 INFO    ] Launching Daemon at Wed Oct 28 12:26:12 IST 2026
[2026-10-28 12:26:12,960.960 INFO    ] ================================================
[2026-10-28 12:26:13,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:26:13
[2026-10-28 12:26:14,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:26:14,389.389 INFO    ] Initializing speech engine...
[2026-10-28 12:26:14,398.398 INFO    ] 2026-10-28 12:26:14
[2026-10-28 12:26:14,644.644 INFO    ] 2026-10-28 12:26:14
[2026-10-28 12:26:14,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:26:14,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:26:14,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:26:15,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:26:15,198.198 INFO    ] time= 28/10/2026 12:26:15
[2026-10-28 12:26:15,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:26:15,221.221 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:26:15,348.348 INFO    ] No existing commands found in stream
[2026-10-28 12:26:20,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:26:20,364.364 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-28 12:26:22,971.971 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:26:22,974.974 INFO    ] Checking for system updates...
[2026-10-28 12:26:23,011.011 INFO    ] 200
[2026-10-28 12:26:23,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:26:23,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:26:23,078.078 INFO    ] No update needed
[2026-10-28 12:26:23,081.081 INFO    ] Checking for camera pi updates...
[2026-10-28 12:26:23,118.118 INFO    ] 200
[2026-10-28 12:26:23,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:26:23,162.162 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:26:23,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:26:23,254.254 INFO    ] No camera update needed
[2026-10-28 12:26:23,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:26:23,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:26:23,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:26:23,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:26:25,313.313 INFO    ] ================================================
[2026-10-28 12:26:25,328.328 INFO    ] Launching Daemon at Wed Oct 28 12:26:25 IST 2026
[2026-10-28 12:26:25,339.339 INFO    ] ================================================
[2026-10-28 12:26:25,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:26:25
[2026-10-28 12:26:26,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:26:26,841.841 INFO    ] Initializing speech engine...
[2026-10-28 12:26:26,849.849 INFO    ] 2026-10-28 12:26:26
[2026-10-28 12:26:27,123.123 INFO    ] 2026-10-28 12:26:27
[2026-10-28 12:26:27,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:26:27,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:26:27,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:26:29,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:26:29,015.015 INFO    ] time= 28/10/2026 12:26:29
[2026-10-28 12:26:29,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:26:29,030.030 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:26:29,214.214 INFO    ] No existing commands found in stream
[2026-10-28 12:26:34,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:26:34,229.229 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-28 12:26:38,280.280 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:26:38,283.283 INFO    ] Checking for system updates...
[2026-10-28 12:26:38,325.325 INFO    ] 200
[2026-10-28 12:26:38,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:26:38,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:26:38,392.392 INFO    ] No update needed
[2026-10-28 12:26:38,395.395 INFO    ] Checking for camera pi updates...
[2026-10-28 12:26:38,430.430 INFO    ] 200
[2026-10-28 12:26:38,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:26:38,475.475 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:26:38,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:26:38,566.566 INFO    ] No camera update needed
[2026-10-28 12:26:38,569.569 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:26:38,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:26:38,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:26:38,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:26:40,626.626 INFO    ] ================================================
[2026-10-28 12:26:40,641.641 INFO    ] Launching Daemon at Wed Oct 28 12:26:40 IST 2026
[2026-10-28 12:26:40,652.652 INFO    ] ================================================
[2026-10-28 12:26:41,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:26:41
[2026-10-28 12:26:41,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:26:42,110.110 INFO    ] Initializing speech engine...
[2026-10-28 12:26:42,116.116 INFO    ] 2026-10-28 12:26:42
[2026-10-28 12:26:42,364.364 INFO    ] 2026-10-28 12:26:42
[2026-10-28 12:26:42,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:26:42,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:26:42,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:26:43,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:26:43,224.224 INFO    ] time= 28/10/2026 12:26:43
[2026-10-28 12:26:43,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:26:43,318.318 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:26:43,487.487 INFO    ] No existing commands found in stream
[2026-10-28 12:26:48,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:26:48,500.500 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 12:26:49,997.997 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:26:50,000.000 INFO    ] Checking for system updates...
[2026-10-28 12:26:50,047.047 INFO    ] 200
[2026-10-28 12:26:50,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:26:50,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:26:50,106.106 INFO    ] No update needed
[2026-10-28 12:26:50,109.109 INFO    ] Checking for camera pi updates...
[2026-10-28 12:26:50,143.143 INFO    ] 200
[2026-10-28 12:26:50,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:26:50,186.186 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:26:50,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:26:50,274.274 INFO    ] No camera update needed
[2026-10-28 12:26:50,276.276 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:26:50,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:26:50,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:26:50,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:26:52,332.332 INFO    ] ================================================
[2026-10-28 12:26:52,348.348 INFO    ] Launching Daemon at Wed Oct 28 12:26:52 IST 2026
[2026-10-28 12:26:52,359.359 INFO    ] ================================================
[2026-10-28 12:26:52,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:26:52
[2026-10-28 12:26:53,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:26:53,782.782 INFO    ] Initializing speech engine...
[2026-10-28 12:26:53,792.792 INFO    ] 2026-10-28 12:26:53
[2026-10-28 12:26:54,040.040 INFO    ] 2026-10-28 12:26:54
[2026-10-28 12:26:54,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:26:54,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:26:54,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:26:54,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:26:54,608.608 INFO    ] time= 28/10/2026 12:26:54
[2026-10-28 12:26:54,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:26:54,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:26:54,779.779 INFO    ] No existing commands found in stream
[2026-10-28 12:26:59,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:26:59,812.812 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-28 12:27:01,943.943 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:27:01,946.946 INFO    ] Checking for system updates...
[2026-10-28 12:27:01,989.989 INFO    ] 200
[2026-10-28 12:27:01,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:27:02,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:27:02,059.059 INFO    ] No update needed
[2026-10-28 12:27:02,062.062 INFO    ] Checking for camera pi updates...
[2026-10-28 12:27:02,100.100 INFO    ] 200
[2026-10-28 12:27:02,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:27:02,159.159 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:27:02,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:27:02,277.277 INFO    ] No camera update needed
[2026-10-28 12:27:02,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:27:02,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:27:02,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:27:02,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:27:04,339.339 INFO    ] ================================================
[2026-10-28 12:27:04,354.354 INFO    ] Launching Daemon at Wed Oct 28 12:27:04 IST 2026
[2026-10-28 12:27:04,365.365 INFO    ] ================================================
[2026-10-28 12:27:04,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:27:04
[2026-10-28 12:27:05,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:27:05,826.826 INFO    ] Initializing speech engine...
[2026-10-28 12:27:05,835.835 INFO    ] 2026-10-28 12:27:05
[2026-10-28 12:27:06,087.087 INFO    ] 2026-10-28 12:27:06
[2026-10-28 12:27:06,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:27:06,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:27:06,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:27:06,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:27:06,683.683 INFO    ] time= 28/10/2026 12:27:06
[2026-10-28 12:27:06,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:27:06,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:27:06,872.872 INFO    ] No existing commands found in stream
[2026-10-28 12:27:11,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:27:11,906.906 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 12:27:15,814.814 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:27:15,817.817 INFO    ] Checking for system updates...
[2026-10-28 12:27:15,852.852 INFO    ] 200
[2026-10-28 12:27:15,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:27:15,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:27:15,911.911 INFO    ] No update needed
[2026-10-28 12:27:15,913.913 INFO    ] Checking for camera pi updates...
[2026-10-28 12:27:15,948.948 INFO    ] 200
[2026-10-28 12:27:15,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:27:15,997.997 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:27:16,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:27:16,088.088 INFO    ] No camera update needed
[2026-10-28 12:27:16,090.090 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:27:16,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:27:16,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:27:16,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:27:18,145.145 INFO    ] ================================================
[2026-10-28 12:27:18,160.160 INFO    ] Launching Daemon at Wed Oct 28 12:27:18 IST 2026
[2026-10-28 12:27:18,170.170 INFO    ] ================================================
[2026-10-28 12:27:18,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:27:18
[2026-10-28 12:27:19,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:27:19,614.614 INFO    ] Initializing speech engine...
[2026-10-28 12:27:19,641.641 INFO    ] 2026-10-28 12:27:19
[2026-10-28 12:27:19,911.911 INFO    ] 2026-10-28 12:27:19
[2026-10-28 12:27:19,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:27:20,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:27:20,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:27:20,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:27:20,498.498 INFO    ] time= 28/10/2026 12:27:20
[2026-10-28 12:27:20,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:27:20,525.525 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:27:20,653.653 INFO    ] No existing commands found in stream
[2026-10-28 12:27:25,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:27:25,668.668 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-28 12:27:26,658.658 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:27:26,660.660 INFO    ] Checking for system updates...
[2026-10-28 12:27:26,699.699 INFO    ] 200
[2026-10-28 12:27:26,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:27:26,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:27:26,756.756 INFO    ] No update needed
[2026-10-28 12:27:26,759.759 INFO    ] Checking for camera pi updates...
[2026-10-28 12:27:26,793.793 INFO    ] 200
[2026-10-28 12:27:26,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:27:26,840.840 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:27:26,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:27:26,944.944 INFO    ] No camera update needed
[2026-10-28 12:27:26,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:27:26,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:27:26,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:27:26,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:27:29,999.999 INFO    ] ================================================
[2026-10-28 12:27:29,015.015 INFO    ] Launching Daemon at Wed Oct 28 12:27:29 IST 2026
[2026-10-28 12:27:29,025.025 INFO    ] ================================================
[2026-10-28 12:27:29,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:27:29
[2026-10-28 12:27:30,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:27:30,598.598 INFO    ] Initializing speech engine...
[2026-10-28 12:27:30,607.607 INFO    ] 2026-10-28 12:27:30
[2026-10-28 12:27:30,862.862 INFO    ] 2026-10-28 12:27:30
[2026-10-28 12:27:30,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:27:31,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:27:31,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:27:31,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:27:31,865.865 INFO    ] time= 28/10/2026 12:27:31
[2026-10-28 12:27:31,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:27:31,965.965 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:27:32,213.213 INFO    ] No existing commands found in stream
[2026-10-28 12:27:37,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:27:37,247.247 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-28 12:27:40,274.274 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:27:40,277.277 INFO    ] Checking for system updates...
[2026-10-28 12:27:40,313.313 INFO    ] 200
[2026-10-28 12:27:40,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:27:40,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:27:40,369.369 INFO    ] No update needed
[2026-10-28 12:27:40,372.372 INFO    ] Checking for camera pi updates...
[2026-10-28 12:27:40,406.406 INFO    ] 200
[2026-10-28 12:27:40,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:27:40,448.448 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:27:40,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:27:40,541.541 INFO    ] No camera update needed
[2026-10-28 12:27:40,543.543 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:27:40,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:27:40,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:27:40,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:27:42,600.600 INFO    ] ================================================
[2026-10-28 12:27:42,615.615 INFO    ] Launching Daemon at Wed Oct 28 12:27:42 IST 2026
[2026-10-28 12:27:42,625.625 INFO    ] ================================================
[2026-10-28 12:27:43,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:27:43
[2026-10-28 12:27:43,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:27:44,236.236 INFO    ] Initializing speech engine...
[2026-10-28 12:27:44,247.247 INFO    ] 2026-10-28 12:27:44
[2026-10-28 12:27:44,554.554 INFO    ] 2026-10-28 12:27:44
[2026-10-28 12:27:44,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:27:44,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:27:44,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:27:45,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:27:45,349.349 INFO    ] time= 28/10/2026 12:27:45
[2026-10-28 12:27:45,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:27:45,453.453 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:27:45,626.626 INFO    ] No existing commands found in stream
[2026-10-28 12:27:50,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:27:50,642.642 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-28 12:27:54,841.841 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:27:54,845.845 INFO    ] Checking for system updates...
[2026-10-28 12:27:54,881.881 INFO    ] 200
[2026-10-28 12:27:54,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:27:54,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:27:54,940.940 INFO    ] No update needed
[2026-10-28 12:27:54,943.943 INFO    ] Checking for camera pi updates...
[2026-10-28 12:27:54,983.983 INFO    ] 200
[2026-10-28 12:27:54,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:27:55,025.025 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:27:55,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:27:55,208.208 INFO    ] No camera update needed
[2026-10-28 12:27:55,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:27:55,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:27:55,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:27:55,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:27:57,262.262 INFO    ] ================================================
[2026-10-28 12:27:57,277.277 INFO    ] Launching Daemon at Wed Oct 28 12:27:57 IST 2026
[2026-10-28 12:27:57,288.288 INFO    ] ================================================
[2026-10-28 12:27:57,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:27:57
[2026-10-28 12:27:58,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:27:58,732.732 INFO    ] Initializing speech engine...
[2026-10-28 12:27:58,755.755 INFO    ] 2026-10-28 12:27:58
[2026-10-28 12:27:59,010.010 INFO    ] 2026-10-28 12:27:59
[2026-10-28 12:27:59,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:27:59,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:27:59,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:27:59,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:27:59,635.635 INFO    ] time= 28/10/2026 12:27:59
[2026-10-28 12:27:59,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:27:59,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:27:59,811.811 INFO    ] No existing commands found in stream
[2026-10-28 12:28:04,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:28:04,828.828 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 12:28:08,073.073 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:28:08,076.076 INFO    ] Checking for system updates...
[2026-10-28 12:28:08,112.112 INFO    ] 200
[2026-10-28 12:28:08,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:28:08,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:28:08,170.170 INFO    ] No update needed
[2026-10-28 12:28:08,173.173 INFO    ] Checking for camera pi updates...
[2026-10-28 12:28:08,208.208 INFO    ] 200
[2026-10-28 12:28:08,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:28:08,254.254 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:28:08,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:28:08,336.336 INFO    ] No camera update needed
[2026-10-28 12:28:08,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:28:08,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:28:08,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:28:08,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:28:10,391.391 INFO    ] ================================================
[2026-10-28 12:28:10,411.411 INFO    ] Launching Daemon at Wed Oct 28 12:28:10 IST 2026
[2026-10-28 12:28:10,423.423 INFO    ] ================================================
[2026-10-28 12:28:10,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:28:10
[2026-10-28 12:28:11,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:28:11,827.827 INFO    ] Initializing speech engine...
[2026-10-28 12:28:11,836.836 INFO    ] 2026-10-28 12:28:11
[2026-10-28 12:28:12,129.129 INFO    ] 2026-10-28 12:28:12
[2026-10-28 12:28:12,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:28:12,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:28:12,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:28:12,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:28:12,767.767 INFO    ] time= 28/10/2026 12:28:12
[2026-10-28 12:28:12,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:28:12,792.792 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:28:12,940.940 INFO    ] No existing commands found in stream
[2026-10-28 12:28:17,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:28:17,958.958 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-28 12:28:21,557.557 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:28:21,560.560 INFO    ] Checking for system updates...
[2026-10-28 12:28:21,599.599 INFO    ] 200
[2026-10-28 12:28:21,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:28:21,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:28:21,656.656 INFO    ] No update needed
[2026-10-28 12:28:21,658.658 INFO    ] Checking for camera pi updates...
[2026-10-28 12:28:21,692.692 INFO    ] 200
[2026-10-28 12:28:21,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:28:21,739.739 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:28:21,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:28:21,835.835 INFO    ] No camera update needed
[2026-10-28 12:28:21,837.837 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:28:21,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:28:21,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:28:21,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:28:23,890.890 INFO    ] ================================================
[2026-10-28 12:28:23,905.905 INFO    ] Launching Daemon at Wed Oct 28 12:28:23 IST 2026
[2026-10-28 12:28:23,916.916 INFO    ] ================================================
[2026-10-28 12:28:24,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:28:24
[2026-10-28 12:28:25,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:28:25,556.556 INFO    ] Initializing speech engine...
[2026-10-28 12:28:25,561.561 INFO    ] 2026-10-28 12:28:25
[2026-10-28 12:28:25,872.872 INFO    ] 2026-10-28 12:28:25
[2026-10-28 12:28:25,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:28:26,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:28:26,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:28:26,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:28:26,562.562 INFO    ] time= 28/10/2026 12:28:26
[2026-10-28 12:28:26,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:28:26,648.648 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:28:26,819.819 INFO    ] No existing commands found in stream
[2026-10-28 12:28:31,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:28:31,838.838 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 12:28:33,916.916 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:28:33,919.919 INFO    ] Checking for system updates...
[2026-10-28 12:28:33,956.956 INFO    ] 200
[2026-10-28 12:28:33,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:28:34,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:28:34,018.018 INFO    ] No update needed
[2026-10-28 12:28:34,020.020 INFO    ] Checking for camera pi updates...
[2026-10-28 12:28:34,057.057 INFO    ] 200
[2026-10-28 12:28:34,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:28:34,104.104 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:28:34,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:28:34,209.209 INFO    ] No camera update needed
[2026-10-28 12:28:34,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:28:34,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:28:34,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:28:34,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:28:36,264.264 INFO    ] ================================================
[2026-10-28 12:28:36,280.280 INFO    ] Launching Daemon at Wed Oct 28 12:28:36 IST 2026
[2026-10-28 12:28:36,291.291 INFO    ] ================================================
[2026-10-28 12:28:36,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:28:36
[2026-10-28 12:28:37,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:28:37,751.751 INFO    ] Initializing speech engine...
[2026-10-28 12:28:37,759.759 INFO    ] 2026-10-28 12:28:37
[2026-10-28 12:28:38,018.018 INFO    ] 2026-10-28 12:28:38
[2026-10-28 12:28:38,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:28:38,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:28:38,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:28:38,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:28:38,578.578 INFO    ] time= 28/10/2026 12:28:38
[2026-10-28 12:28:38,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:28:38,612.612 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:28:38,714.714 INFO    ] No existing commands found in stream
[2026-10-28 12:28:43,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:28:43,740.740 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-28 12:28:46,121.121 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:28:46,124.124 INFO    ] Checking for system updates...
[2026-10-28 12:28:46,165.165 INFO    ] 200
[2026-10-28 12:28:46,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:28:46,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:28:46,228.228 INFO    ] No update needed
[2026-10-28 12:28:46,231.231 INFO    ] Checking for camera pi updates...
[2026-10-28 12:28:46,269.269 INFO    ] 200
[2026-10-28 12:28:46,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:28:46,327.327 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:28:46,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:28:46,421.421 INFO    ] No camera update needed
[2026-10-28 12:28:46,424.424 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:28:46,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:28:46,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:28:46,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:28:48,481.481 INFO    ] ================================================
[2026-10-28 12:28:48,496.496 INFO    ] Launching Daemon at Wed Oct 28 12:28:48 IST 2026
[2026-10-28 12:28:48,508.508 INFO    ] ================================================
[2026-10-28 12:28:49,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:28:49
[2026-10-28 12:28:49,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:28:49,928.928 INFO    ] Initializing speech engine...
[2026-10-28 12:28:49,937.937 INFO    ] 2026-10-28 12:28:49
[2026-10-28 12:28:50,182.182 INFO    ] 2026-10-28 12:28:50
[2026-10-28 12:28:50,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:28:50,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:28:50,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:28:50,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:28:50,737.737 INFO    ] time= 28/10/2026 12:28:50
[2026-10-28 12:28:50,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:28:50,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:28:50,902.902 INFO    ] No existing commands found in stream
[2026-10-28 12:28:55,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:28:55,930.930 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-28 12:28:59,579.579 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:28:59,582.582 INFO    ] Checking for system updates...
[2026-10-28 12:28:59,619.619 INFO    ] 200
[2026-10-28 12:28:59,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:28:59,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:28:59,685.685 INFO    ] No update needed
[2026-10-28 12:28:59,688.688 INFO    ] Checking for camera pi updates...
[2026-10-28 12:28:59,727.727 INFO    ] 200
[2026-10-28 12:28:59,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:28:59,776.776 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:28:59,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:28:59,877.877 INFO    ] No camera update needed
[2026-10-28 12:28:59,880.880 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:28:59,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:28:59,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:28:59,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:29:01,958.958 INFO    ] ================================================
[2026-10-28 12:29:02,991.991 INFO    ] Launching Daemon at Wed Oct 28 12:29:01 IST 2026
[2026-10-28 12:29:02,013.013 INFO    ] ================================================
[2026-10-28 12:29:02,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:29:02
[2026-10-28 12:29:03,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:29:03,628.628 INFO    ] Initializing speech engine...
[2026-10-28 12:29:03,634.634 INFO    ] 2026-10-28 12:29:03
[2026-10-28 12:29:03,899.899 INFO    ] 2026-10-28 12:29:03
[2026-10-28 12:29:03,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:29:04,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:29:04,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:29:04,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:29:04,471.471 INFO    ] time= 28/10/2026 12:29:04
[2026-10-28 12:29:04,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:29:04,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:29:04,664.664 INFO    ] No existing commands found in stream
[2026-10-28 12:29:09,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:29:09,703.703 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-28 12:29:13,715.715 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:29:13,718.718 INFO    ] Checking for system updates...
[2026-10-28 12:29:13,755.755 INFO    ] 200
[2026-10-28 12:29:13,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:29:13,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:29:13,820.820 INFO    ] No update needed
[2026-10-28 12:29:13,823.823 INFO    ] Checking for camera pi updates...
[2026-10-28 12:29:13,862.862 INFO    ] 200
[2026-10-28 12:29:13,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:29:13,911.911 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:29:13,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:29:13,997.997 INFO    ] No camera update needed
[2026-10-28 12:29:14,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:29:14,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:29:14,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:29:14,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:29:16,056.056 INFO    ] ================================================
[2026-10-28 12:29:16,071.071 INFO    ] Launching Daemon at Wed Oct 28 12:29:16 IST 2026
[2026-10-28 12:29:16,082.082 INFO    ] ================================================
[2026-10-28 12:29:16,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:29:16
[2026-10-28 12:29:17,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:29:17,687.687 INFO    ] Initializing speech engine...
[2026-10-28 12:29:17,694.694 INFO    ] 2026-10-28 12:29:17
[2026-10-28 12:29:17,978.978 INFO    ] 2026-10-28 12:29:17
[2026-10-28 12:29:18,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:29:18,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:29:18,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:29:18,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:29:18,729.729 INFO    ] time= 28/10/2026 12:29:18
[2026-10-28 12:29:18,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:29:18,827.827 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:29:19,059.059 INFO    ] No existing commands found in stream
[2026-10-28 12:29:24,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:29:24,093.093 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-28 12:29:28,676.676 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:29:28,679.679 INFO    ] Checking for system updates...
[2026-10-28 12:29:28,715.715 INFO    ] 200
[2026-10-28 12:29:28,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:29:28,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:29:28,772.772 INFO    ] No update needed
[2026-10-28 12:29:28,775.775 INFO    ] Checking for camera pi updates...
[2026-10-28 12:29:28,810.810 INFO    ] 200
[2026-10-28 12:29:28,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:29:28,852.852 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:29:28,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:29:28,939.939 INFO    ] No camera update needed
[2026-10-28 12:29:28,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:29:28,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:29:28,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:29:28,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:29:30,994.994 INFO    ] ================================================
[2026-10-28 12:29:31,009.009 INFO    ] Launching Daemon at Wed Oct 28 12:29:31 IST 2026
[2026-10-28 12:29:31,021.021 INFO    ] ================================================
[2026-10-28 12:29:31,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:29:31
[2026-10-28 12:29:32,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:29:32,530.530 INFO    ] Initializing speech engine...
[2026-10-28 12:29:32,539.539 INFO    ] 2026-10-28 12:29:32
[2026-10-28 12:29:32,807.807 INFO    ] 2026-10-28 12:29:32
[2026-10-28 12:29:32,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:29:33,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:29:33,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:29:33,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:29:33,418.418 INFO    ] time= 28/10/2026 12:29:33
[2026-10-28 12:29:33,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:29:33,455.455 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:29:33,594.594 INFO    ] No existing commands found in stream
[2026-10-28 12:29:38,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:29:38,629.629 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-28 12:29:41,858.858 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:29:41,861.861 INFO    ] Checking for system updates...
[2026-10-28 12:29:41,898.898 INFO    ] 200
[2026-10-28 12:29:41,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:29:41,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:29:41,958.958 INFO    ] No update needed
[2026-10-28 12:29:41,960.960 INFO    ] Checking for camera pi updates...
[2026-10-28 12:29:41,998.998 INFO    ] 200
[2026-10-28 12:29:42,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:29:42,048.048 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:29:42,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:29:42,138.138 INFO    ] No camera update needed
[2026-10-28 12:29:42,141.141 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:29:42,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:29:42,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:29:42,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:29:44,194.194 INFO    ] ================================================
[2026-10-28 12:29:44,209.209 INFO    ] Launching Daemon at Wed Oct 28 12:29:44 IST 2026
[2026-10-28 12:29:44,221.221 INFO    ] ================================================
[2026-10-28 12:29:44,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:29:44
[2026-10-28 12:29:45,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:29:45,839.839 INFO    ] Initializing speech engine...
[2026-10-28 12:29:45,851.851 INFO    ] 2026-10-28 12:29:45
[2026-10-28 12:29:46,132.132 INFO    ] 2026-10-28 12:29:46
[2026-10-28 12:29:46,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:29:46,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:29:46,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:29:46,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:29:46,891.891 INFO    ] time= 28/10/2026 12:29:46
[2026-10-28 12:29:46,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:29:46,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:29:47,227.227 INFO    ] No existing commands found in stream
[2026-10-28 12:29:52,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:29:52,256.256 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-28 12:29:54,605.605 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:29:54,608.608 INFO    ] Checking for system updates...
[2026-10-28 12:29:54,645.645 INFO    ] 200
[2026-10-28 12:29:54,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:29:54,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:29:54,703.703 INFO    ] No update needed
[2026-10-28 12:29:54,706.706 INFO    ] Checking for camera pi updates...
[2026-10-28 12:29:54,739.739 INFO    ] 200
[2026-10-28 12:29:54,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:29:54,790.790 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:29:54,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:29:54,890.890 INFO    ] No camera update needed
[2026-10-28 12:29:54,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:29:54,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:29:54,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:29:54,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:29:56,945.945 INFO    ] ================================================
[2026-10-28 12:29:56,961.961 INFO    ] Launching Daemon at Wed Oct 28 12:29:56 IST 2026
[2026-10-28 12:29:56,972.972 INFO    ] ================================================
[2026-10-28 12:29:57,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:29:57
[2026-10-28 12:29:58,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:29:58,613.613 INFO    ] Initializing speech engine...
[2026-10-28 12:29:58,628.628 INFO    ] 2026-10-28 12:29:58
[2026-10-28 12:29:58,944.944 INFO    ] 2026-10-28 12:29:58
[2026-10-28 12:29:59,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:29:59,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:29:59,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:29:59,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:29:59,653.653 INFO    ] time= 28/10/2026 12:29:59
[2026-10-28 12:29:59,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:29:59,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:29:59,910.910 INFO    ] No existing commands found in stream
[2026-10-28 12:30:04,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:30:04,925.925 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-28 12:30:08,298.298 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:30:08,301.301 INFO    ] Checking for system updates...
[2026-10-28 12:30:08,339.339 INFO    ] 200
[2026-10-28 12:30:08,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:30:08,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:30:08,399.399 INFO    ] No update needed
[2026-10-28 12:30:08,402.402 INFO    ] Checking for camera pi updates...
[2026-10-28 12:30:08,436.436 INFO    ] 200
[2026-10-28 12:30:08,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:30:08,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:30:08,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:30:08,576.576 INFO    ] No camera update needed
[2026-10-28 12:30:08,579.579 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:30:08,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:30:08,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:30:08,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:30:10,634.634 INFO    ] ================================================
[2026-10-28 12:30:10,650.650 INFO    ] Launching Daemon at Wed Oct 28 12:30:10 IST 2026
[2026-10-28 12:30:10,662.662 INFO    ] ================================================
[2026-10-28 12:30:11,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:30:11
[2026-10-28 12:30:11,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:30:12,124.124 INFO    ] Initializing speech engine...
[2026-10-28 12:30:12,133.133 INFO    ] 2026-10-28 12:30:12
[2026-10-28 12:30:12,382.382 INFO    ] 2026-10-28 12:30:12
[2026-10-28 12:30:12,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:30:12,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:30:12,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:30:13,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:30:13,096.096 INFO    ] time= 28/10/2026 12:30:13
[2026-10-28 12:30:13,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:30:13,187.187 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:30:13,344.344 INFO    ] No existing commands found in stream
[2026-10-28 12:30:18,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:30:18,378.378 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-28 12:30:19,286.286 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:30:19,288.288 INFO    ] Checking for system updates...
[2026-10-28 12:30:19,326.326 INFO    ] 200
[2026-10-28 12:30:19,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:30:19,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:30:19,384.384 INFO    ] No update needed
[2026-10-28 12:30:19,386.386 INFO    ] Checking for camera pi updates...
[2026-10-28 12:30:19,420.420 INFO    ] 200
[2026-10-28 12:30:19,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:30:19,469.469 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:30:19,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:30:19,577.577 INFO    ] No camera update needed
[2026-10-28 12:30:19,579.579 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:30:19,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:30:19,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:30:19,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:30:21,634.634 INFO    ] ================================================
[2026-10-28 12:30:21,650.650 INFO    ] Launching Daemon at Wed Oct 28 12:30:21 IST 2026
[2026-10-28 12:30:21,661.661 INFO    ] ================================================
[2026-10-28 12:30:22,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:30:22
[2026-10-28 12:30:23,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:30:23,268.268 INFO    ] Initializing speech engine...
[2026-10-28 12:30:23,291.291 INFO    ] 2026-10-28 12:30:23
[2026-10-28 12:30:23,547.547 INFO    ] 2026-10-28 12:30:23
[2026-10-28 12:30:23,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:30:23,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:30:23,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:30:24,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:30:24,119.119 INFO    ] time= 28/10/2026 12:30:24
[2026-10-28 12:30:24,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:30:24,155.155 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:30:24,296.296 INFO    ] No existing commands found in stream
[2026-10-28 12:30:29,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:30:29,325.325 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-28 12:30:31,822.822 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:30:31,826.826 INFO    ] Checking for system updates...
[2026-10-28 12:30:31,862.862 INFO    ] 200
[2026-10-28 12:30:31,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:30:31,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:30:31,928.928 INFO    ] No update needed
[2026-10-28 12:30:31,931.931 INFO    ] Checking for camera pi updates...
[2026-10-28 12:30:31,969.969 INFO    ] 200
[2026-10-28 12:30:31,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:30:32,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:30:32,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:30:32,072.072 INFO    ] No camera update needed
[2026-10-28 12:30:32,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:30:32,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:30:32,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:30:32,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:30:34,130.130 INFO    ] ================================================
[2026-10-28 12:30:34,146.146 INFO    ] Launching Daemon at Wed Oct 28 12:30:34 IST 2026
[2026-10-28 12:30:34,156.156 INFO    ] ================================================
[2026-10-28 12:30:34,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:30:34
[2026-10-28 12:30:35,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:30:35,648.648 INFO    ] Initializing speech engine...
[2026-10-28 12:30:35,671.671 INFO    ] 2026-10-28 12:30:35
[2026-10-28 12:30:35,927.927 INFO    ] 2026-10-28 12:30:35
[2026-10-28 12:30:35,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:30:36,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:30:36,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:30:36,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:30:36,707.707 INFO    ] time= 28/10/2026 12:30:36
[2026-10-28 12:30:36,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:30:36,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:30:36,938.938 INFO    ] No existing commands found in stream
[2026-10-28 12:30:41,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:30:41,971.971 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 12:30:43,358.358 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:30:43,360.360 INFO    ] Checking for system updates...
[2026-10-28 12:30:43,402.402 INFO    ] 200
[2026-10-28 12:30:43,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:30:43,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:30:43,461.461 INFO    ] No update needed
[2026-10-28 12:30:43,464.464 INFO    ] Checking for camera pi updates...
[2026-10-28 12:30:43,504.504 INFO    ] 200
[2026-10-28 12:30:43,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:30:43,550.550 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:30:43,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:30:43,637.637 INFO    ] No camera update needed
[2026-10-28 12:30:43,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:30:43,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:30:43,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:30:43,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:30:45,698.698 INFO    ] ================================================
[2026-10-28 12:30:45,713.713 INFO    ] Launching Daemon at Wed Oct 28 12:30:45 IST 2026
[2026-10-28 12:30:45,724.724 INFO    ] ================================================
[2026-10-28 12:30:46,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:30:46
[2026-10-28 12:30:46,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:30:47,158.158 INFO    ] Initializing speech engine...
[2026-10-28 12:30:47,167.167 INFO    ] 2026-10-28 12:30:47
[2026-10-28 12:30:47,442.442 INFO    ] 2026-10-28 12:30:47
[2026-10-28 12:30:47,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:30:47,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:30:47,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:30:48,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:30:48,263.263 INFO    ] time= 28/10/2026 12:30:48
[2026-10-28 12:30:48,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:30:48,352.352 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:30:48,565.565 INFO    ] No existing commands found in stream
[2026-10-28 12:30:53,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:30:53,593.593 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-28 12:30:56,038.038 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:30:56,041.041 INFO    ] Checking for system updates...
[2026-10-28 12:30:56,078.078 INFO    ] 200
[2026-10-28 12:30:56,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:30:56,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:30:56,158.158 INFO    ] No update needed
[2026-10-28 12:30:56,161.161 INFO    ] Checking for camera pi updates...
[2026-10-28 12:30:56,196.196 INFO    ] 200
[2026-10-28 12:30:56,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:30:56,244.244 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:30:56,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:30:56,328.328 INFO    ] No camera update needed
[2026-10-28 12:30:56,331.331 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:30:56,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:30:56,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:30:56,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:30:58,389.389 INFO    ] ================================================
[2026-10-28 12:30:58,404.404 INFO    ] Launching Daemon at Wed Oct 28 12:30:58 IST 2026
[2026-10-28 12:30:58,415.415 INFO    ] ================================================
[2026-10-28 12:30:58,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:30:58
[2026-10-28 12:30:59,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:30:59,890.890 INFO    ] Initializing speech engine...
[2026-10-28 12:30:59,898.898 INFO    ] 2026-10-28 12:30:59
[2026-10-28 12:31:00,172.172 INFO    ] 2026-10-28 12:31:00
[2026-10-28 12:31:00,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:31:00,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:31:00,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:31:01,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:31:01,608.608 INFO    ] time= 28/10/2026 12:31:01
[2026-10-28 12:31:01,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:31:01,617.617 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:31:01,750.750 INFO    ] No existing commands found in stream
[2026-10-28 12:31:06,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:31:06,778.778 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-28 12:31:07,742.742 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:31:07,745.745 INFO    ] Checking for system updates...
[2026-10-28 12:31:07,785.785 INFO    ] 200
[2026-10-28 12:31:07,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:31:07,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:31:07,851.851 INFO    ] No update needed
[2026-10-28 12:31:07,853.853 INFO    ] Checking for camera pi updates...
[2026-10-28 12:31:07,891.891 INFO    ] 200
[2026-10-28 12:31:07,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:31:07,940.940 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:31:08,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:31:08,045.045 INFO    ] No camera update needed
[2026-10-28 12:31:08,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:31:08,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:31:08,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:31:08,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:31:10,102.102 INFO    ] ================================================
[2026-10-28 12:31:10,118.118 INFO    ] Launching Daemon at Wed Oct 28 12:31:10 IST 2026
[2026-10-28 12:31:10,128.128 INFO    ] ================================================
[2026-10-28 12:31:10,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:31:10
[2026-10-28 12:31:11,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:31:11,806.806 INFO    ] Initializing speech engine...
[2026-10-28 12:31:11,812.812 INFO    ] 2026-10-28 12:31:11
[2026-10-28 12:31:12,103.103 INFO    ] 2026-10-28 12:31:12
[2026-10-28 12:31:12,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:31:12,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:31:12,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:31:12,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:31:12,978.978 INFO    ] time= 28/10/2026 12:31:12
[2026-10-28 12:31:13,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:31:13,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:31:13,243.243 INFO    ] No existing commands found in stream
[2026-10-28 12:31:18,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:31:18,261.261 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 12:31:19,913.913 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:31:19,916.916 INFO    ] Checking for system updates...
[2026-10-28 12:31:19,951.951 INFO    ] 200
[2026-10-28 12:31:19,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:31:20,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:31:20,009.009 INFO    ] No update needed
[2026-10-28 12:31:20,011.011 INFO    ] Checking for camera pi updates...
[2026-10-28 12:31:20,045.045 INFO    ] 200
[2026-10-28 12:31:20,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:31:20,095.095 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:31:20,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:31:20,174.174 INFO    ] No camera update needed
[2026-10-28 12:31:20,176.176 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:31:20,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:31:20,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:31:20,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:31:22,231.231 INFO    ] ================================================
[2026-10-28 12:31:22,247.247 INFO    ] Launching Daemon at Wed Oct 28 12:31:22 IST 2026
[2026-10-28 12:31:22,258.258 INFO    ] ================================================
[2026-10-28 12:31:22,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:31:22
[2026-10-28 12:31:23,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:31:23,706.706 INFO    ] Initializing speech engine...
[2026-10-28 12:31:23,715.715 INFO    ] 2026-10-28 12:31:23
[2026-10-28 12:31:23,984.984 INFO    ] 2026-10-28 12:31:23
[2026-10-28 12:31:24,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:31:24,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:31:24,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:31:24,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:31:24,655.655 INFO    ] time= 28/10/2026 12:31:24
[2026-10-28 12:31:24,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:31:24,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:31:24,870.870 INFO    ] No existing commands found in stream
[2026-10-28 12:31:29,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:31:29,893.893 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 12:31:33,162.162 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:31:33,165.165 INFO    ] Checking for system updates...
[2026-10-28 12:31:33,201.201 INFO    ] 200
[2026-10-28 12:31:33,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:31:33,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:31:33,259.259 INFO    ] No update needed
[2026-10-28 12:31:33,261.261 INFO    ] Checking for camera pi updates...
[2026-10-28 12:31:33,295.295 INFO    ] 200
[2026-10-28 12:31:33,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:31:33,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:31:33,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:31:33,476.476 INFO    ] No camera update needed
[2026-10-28 12:31:33,478.478 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:31:33,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:31:33,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:31:33,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:31:35,536.536 INFO    ] ================================================
[2026-10-28 12:31:35,553.553 INFO    ] Launching Daemon at Wed Oct 28 12:31:35 IST 2026
[2026-10-28 12:31:35,564.564 INFO    ] ================================================
[2026-10-28 12:31:36,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:31:36
[2026-10-28 12:31:36,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:31:37,253.253 INFO    ] Initializing speech engine...
[2026-10-28 12:31:37,264.264 INFO    ] 2026-10-28 12:31:37
[2026-10-28 12:31:37,576.576 INFO    ] 2026-10-28 12:31:37
[2026-10-28 12:31:37,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:31:37,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:31:37,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:31:38,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:31:38,327.327 INFO    ] time= 28/10/2026 12:31:38
[2026-10-28 12:31:38,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:31:38,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:31:38,644.644 INFO    ] No existing commands found in stream
[2026-10-28 12:31:43,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:31:43,668.668 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-28 12:31:46,757.757 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:31:46,761.761 INFO    ] Checking for system updates...
[2026-10-28 12:31:46,804.804 INFO    ] 200
[2026-10-28 12:31:46,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:31:46,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:31:46,872.872 INFO    ] No update needed
[2026-10-28 12:31:46,875.875 INFO    ] Checking for camera pi updates...
[2026-10-28 12:31:46,915.915 INFO    ] 200
[2026-10-28 12:31:46,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:31:46,966.966 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:31:47,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:31:47,047.047 INFO    ] No camera update needed
[2026-10-28 12:31:47,050.050 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:31:47,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:31:47,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:31:47,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:31:49,108.108 INFO    ] ================================================
[2026-10-28 12:31:49,124.124 INFO    ] Launching Daemon at Wed Oct 28 12:31:49 IST 2026
[2026-10-28 12:31:49,137.137 INFO    ] ================================================
[2026-10-28 12:31:49,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:31:49
[2026-10-28 12:31:50,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:31:50,541.541 INFO    ] Initializing speech engine...
[2026-10-28 12:31:50,554.554 INFO    ] 2026-10-28 12:31:50
[2026-10-28 12:31:50,819.819 INFO    ] 2026-10-28 12:31:50
[2026-10-28 12:31:50,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:31:51,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:31:51,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:31:51,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:31:51,384.384 INFO    ] time= 28/10/2026 12:31:51
[2026-10-28 12:31:51,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:31:51,408.408 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:31:51,541.541 INFO    ] No existing commands found in stream
[2026-10-28 12:31:56,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:31:56,567.567 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 12:31:58,080.080 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:31:58,083.083 INFO    ] Checking for system updates...
[2026-10-28 12:31:58,124.124 INFO    ] 200
[2026-10-28 12:31:58,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:31:58,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:31:58,180.180 INFO    ] No update needed
[2026-10-28 12:31:58,182.182 INFO    ] Checking for camera pi updates...
[2026-10-28 12:31:58,216.216 INFO    ] 200
[2026-10-28 12:31:58,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:31:58,260.260 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:31:58,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:31:58,348.348 INFO    ] No camera update needed
[2026-10-28 12:31:58,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:31:58,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:31:58,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:31:58,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:32:00,404.404 INFO    ] ================================================
[2026-10-28 12:32:00,420.420 INFO    ] Launching Daemon at Wed Oct 28 12:32:00 IST 2026
[2026-10-28 12:32:00,431.431 INFO    ] ================================================
[2026-10-28 12:32:01,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:32:01
[2026-10-28 12:32:01,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:32:02,080.080 INFO    ] Initializing speech engine...
[2026-10-28 12:32:02,088.088 INFO    ] 2026-10-28 12:32:02
[2026-10-28 12:32:02,403.403 INFO    ] 2026-10-28 12:32:02
[2026-10-28 12:32:02,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:32:02,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:32:02,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:32:03,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:32:03,068.068 INFO    ] time= 28/10/2026 12:32:03
[2026-10-28 12:32:03,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:32:03,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:32:03,308.308 INFO    ] No existing commands found in stream
[2026-10-28 12:32:08,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:32:08,340.340 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-28 12:32:09,938.938 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:32:09,941.941 INFO    ] Checking for system updates...
[2026-10-28 12:32:09,976.976 INFO    ] 200
[2026-10-28 12:32:09,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:32:10,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:32:10,034.034 INFO    ] No update needed
[2026-10-28 12:32:10,036.036 INFO    ] Checking for camera pi updates...
[2026-10-28 12:32:10,074.074 INFO    ] 200
[2026-10-28 12:32:10,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:32:10,117.117 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:32:10,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:32:10,289.289 INFO    ] No camera update needed
[2026-10-28 12:32:10,292.292 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:32:10,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:32:10,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:32:10,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:32:12,345.345 INFO    ] ================================================
[2026-10-28 12:32:12,361.361 INFO    ] Launching Daemon at Wed Oct 28 12:32:12 IST 2026
[2026-10-28 12:32:12,372.372 INFO    ] ================================================
[2026-10-28 12:32:12,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:32:12
[2026-10-28 12:32:13,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:32:13,780.780 INFO    ] Initializing speech engine...
[2026-10-28 12:32:13,795.795 INFO    ] 2026-10-28 12:32:13
[2026-10-28 12:32:14,062.062 INFO    ] 2026-10-28 12:32:14
[2026-10-28 12:32:14,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:32:14,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:32:14,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:32:14,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:32:14,634.634 INFO    ] time= 28/10/2026 12:32:14
[2026-10-28 12:32:14,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:32:14,659.659 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:32:14,817.817 INFO    ] No existing commands found in stream
[2026-10-28 12:32:19,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:32:19,839.839 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-28 12:32:23,916.916 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:32:23,919.919 INFO    ] Checking for system updates...
[2026-10-28 12:32:23,956.956 INFO    ] 200
[2026-10-28 12:32:23,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:32:24,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:32:24,026.026 INFO    ] No update needed
[2026-10-28 12:32:24,029.029 INFO    ] Checking for camera pi updates...
[2026-10-28 12:32:24,066.066 INFO    ] 200
[2026-10-28 12:32:24,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:32:24,115.115 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:32:24,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:32:24,170.170 INFO    ] No camera update needed
[2026-10-28 12:32:24,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:32:24,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:32:24,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:32:24,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:32:26,228.228 INFO    ] ================================================
[2026-10-28 12:32:26,244.244 INFO    ] Launching Daemon at Wed Oct 28 12:32:26 IST 2026
[2026-10-28 12:32:26,256.256 INFO    ] ================================================
[2026-10-28 12:32:26,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:32:26
[2026-10-28 12:32:27,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:32:27,740.740 INFO    ] Initializing speech engine...
[2026-10-28 12:32:27,755.755 INFO    ] 2026-10-28 12:32:27
[2026-10-28 12:32:28,011.011 INFO    ] 2026-10-28 12:32:28
[2026-10-28 12:32:28,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:32:28,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:32:28,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:32:28,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:32:28,579.579 INFO    ] time= 28/10/2026 12:32:28
[2026-10-28 12:32:28,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:32:28,609.609 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:32:28,749.749 INFO    ] No existing commands found in stream
[2026-10-28 12:32:33,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:32:33,777.777 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-28 12:32:35,075.075 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:32:35,078.078 INFO    ] Checking for system updates...
[2026-10-28 12:32:35,113.113 INFO    ] 200
[2026-10-28 12:32:35,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:32:35,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:32:35,178.178 INFO    ] No update needed
[2026-10-28 12:32:35,180.180 INFO    ] Checking for camera pi updates...
[2026-10-28 12:32:35,214.214 INFO    ] 200
[2026-10-28 12:32:35,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:32:35,258.258 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:32:35,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:32:35,340.340 INFO    ] No camera update needed
[2026-10-28 12:32:35,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:32:35,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:32:35,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:32:35,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:32:37,398.398 INFO    ] ================================================
[2026-10-28 12:32:37,414.414 INFO    ] Launching Daemon at Wed Oct 28 12:32:37 IST 2026
[2026-10-28 12:32:37,426.426 INFO    ] ================================================
[2026-10-28 12:32:38,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:32:38
[2026-10-28 12:32:38,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:32:39,074.074 INFO    ] Initializing speech engine...
[2026-10-28 12:32:39,082.082 INFO    ] 2026-10-28 12:32:39
[2026-10-28 12:32:39,362.362 INFO    ] 2026-10-28 12:32:39
[2026-10-28 12:32:39,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:32:39,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:32:39,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:32:40,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:32:40,100.100 INFO    ] time= 28/10/2026 12:32:40
[2026-10-28 12:32:40,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:32:40,184.184 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:32:40,345.345 INFO    ] No existing commands found in stream
[2026-10-28 12:32:45,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:32:45,381.381 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-28 12:32:48,881.881 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:32:48,885.885 INFO    ] Checking for system updates...
[2026-10-28 12:32:48,921.921 INFO    ] 200
[2026-10-28 12:32:48,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:32:48,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:32:48,981.981 INFO    ] No update needed
[2026-10-28 12:32:48,984.984 INFO    ] Checking for camera pi updates...
[2026-10-28 12:32:49,019.019 INFO    ] 200
[2026-10-28 12:32:49,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:32:49,064.064 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:32:49,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:32:49,148.148 INFO    ] No camera update needed
[2026-10-28 12:32:49,150.150 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:32:49,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:32:49,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:32:49,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:32:51,208.208 INFO    ] ================================================
[2026-10-28 12:32:51,223.223 INFO    ] Launching Daemon at Wed Oct 28 12:32:51 IST 2026
[2026-10-28 12:32:51,234.234 INFO    ] ================================================
[2026-10-28 12:32:51,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:32:51
[2026-10-28 12:32:52,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:32:52,805.805 INFO    ] Initializing speech engine...
[2026-10-28 12:32:52,813.813 INFO    ] 2026-10-28 12:32:52
[2026-10-28 12:32:53,121.121 INFO    ] 2026-10-28 12:32:53
[2026-10-28 12:32:53,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:32:53,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:32:53,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:32:53,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:32:53,833.833 INFO    ] time= 28/10/2026 12:32:53
[2026-10-28 12:32:53,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:32:53,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:32:54,050.050 INFO    ] No existing commands found in stream
[2026-10-28 12:32:59,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:32:59,068.068 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 12:33:00,653.653 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:33:00,656.656 INFO    ] Checking for system updates...
[2026-10-28 12:33:00,695.695 INFO    ] 200
[2026-10-28 12:33:00,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:33:00,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:33:00,762.762 INFO    ] No update needed
[2026-10-28 12:33:00,764.764 INFO    ] Checking for camera pi updates...
[2026-10-28 12:33:00,801.801 INFO    ] 200
[2026-10-28 12:33:00,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:33:00,845.845 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:33:00,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:33:00,938.938 INFO    ] No camera update needed
[2026-10-28 12:33:00,940.940 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:33:00,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:33:00,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:33:00,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:33:03,006.006 INFO    ] ================================================
[2026-10-28 12:33:03,031.031 INFO    ] Launching Daemon at Wed Oct 28 12:33:03 IST 2026
[2026-10-28 12:33:03,059.059 INFO    ] ================================================
[2026-10-28 12:33:03,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:33:03
[2026-10-28 12:33:04,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:33:04,606.606 INFO    ] Initializing speech engine...
[2026-10-28 12:33:04,614.614 INFO    ] 2026-10-28 12:33:04
[2026-10-28 12:33:04,872.872 INFO    ] 2026-10-28 12:33:04
[2026-10-28 12:33:04,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:33:05,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:33:05,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:33:05,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:33:05,429.429 INFO    ] time= 28/10/2026 12:33:05
[2026-10-28 12:33:05,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:33:05,475.475 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:33:05,677.677 INFO    ] No existing commands found in stream
[2026-10-28 12:33:10,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:33:10,705.705 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 12:33:14,359.359 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:33:14,362.362 INFO    ] Checking for system updates...
[2026-10-28 12:33:14,399.399 INFO    ] 200
[2026-10-28 12:33:14,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:33:14,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:33:14,464.464 INFO    ] No update needed
[2026-10-28 12:33:14,468.468 INFO    ] Checking for camera pi updates...
[2026-10-28 12:33:14,502.502 INFO    ] 200
[2026-10-28 12:33:14,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:33:14,557.557 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:33:14,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:33:14,646.646 INFO    ] No camera update needed
[2026-10-28 12:33:14,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:33:14,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:33:14,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:33:14,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:33:16,703.703 INFO    ] ================================================
[2026-10-28 12:33:16,718.718 INFO    ] Launching Daemon at Wed Oct 28 12:33:16 IST 2026
[2026-10-28 12:33:16,729.729 INFO    ] ================================================
[2026-10-28 12:33:17,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:33:17
[2026-10-28 12:33:17,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:33:18,131.131 INFO    ] Initializing speech engine...
[2026-10-28 12:33:18,154.154 INFO    ] 2026-10-28 12:33:18
[2026-10-28 12:33:18,409.409 INFO    ] 2026-10-28 12:33:18
[2026-10-28 12:33:18,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:33:18,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:33:18,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:33:18,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:33:18,977.977 INFO    ] time= 28/10/2026 12:33:18
[2026-10-28 12:33:18,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:33:19,022.022 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:33:19,152.152 INFO    ] No existing commands found in stream
[2026-10-28 12:33:24,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:33:24,186.186 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 12:33:27,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:33:27,320.320 INFO    ] Checking for system updates...
[2026-10-28 12:33:27,357.357 INFO    ] 200
[2026-10-28 12:33:27,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:33:27,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:33:27,416.416 INFO    ] No update needed
[2026-10-28 12:33:27,419.419 INFO    ] Checking for camera pi updates...
[2026-10-28 12:33:27,454.454 INFO    ] 200
[2026-10-28 12:33:27,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:33:27,499.499 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:33:27,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:33:27,602.602 INFO    ] No camera update needed
[2026-10-28 12:33:27,605.605 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:33:27,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:33:27,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:33:27,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:33:29,660.660 INFO    ] ================================================
[2026-10-28 12:33:29,675.675 INFO    ] Launching Daemon at Wed Oct 28 12:33:29 IST 2026
[2026-10-28 12:33:29,686.686 INFO    ] ================================================
[2026-10-28 12:33:30,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:33:30
[2026-10-28 12:33:30,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:33:31,291.291 INFO    ] Initializing speech engine...
[2026-10-28 12:33:31,299.299 INFO    ] 2026-10-28 12:33:31
[2026-10-28 12:33:31,584.584 INFO    ] 2026-10-28 12:33:31
[2026-10-28 12:33:31,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:33:32,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:33:32,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:33:32,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:33:32,414.414 INFO    ] time= 28/10/2026 12:33:32
[2026-10-28 12:33:32,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:33:32,517.517 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:33:32,622.622 INFO    ] No existing commands found in stream
[2026-10-28 12:33:37,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:33:37,643.643 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-28 12:33:38,262.262 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:33:38,265.265 INFO    ] Checking for system updates...
[2026-10-28 12:33:38,305.305 INFO    ] 200
[2026-10-28 12:33:38,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:33:38,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:33:38,368.368 INFO    ] No update needed
[2026-10-28 12:33:38,371.371 INFO    ] Checking for camera pi updates...
[2026-10-28 12:33:38,405.405 INFO    ] 200
[2026-10-28 12:33:38,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:33:38,448.448 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:33:38,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:33:38,538.538 INFO    ] No camera update needed
[2026-10-28 12:33:38,540.540 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:33:38,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:33:38,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:33:38,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:33:40,593.593 INFO    ] ================================================
[2026-10-28 12:33:40,608.608 INFO    ] Launching Daemon at Wed Oct 28 12:33:40 IST 2026
[2026-10-28 12:33:40,619.619 INFO    ] ================================================
[2026-10-28 12:33:41,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:33:41
[2026-10-28 12:33:41,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:33:42,110.110 INFO    ] Initializing speech engine...
[2026-10-28 12:33:42,117.117 INFO    ] 2026-10-28 12:33:42
[2026-10-28 12:33:42,363.363 INFO    ] 2026-10-28 12:33:42
[2026-10-28 12:33:42,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:33:42,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:33:42,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:33:43,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:33:43,184.184 INFO    ] time= 28/10/2026 12:33:43
[2026-10-28 12:33:43,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:33:43,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:33:43,487.487 INFO    ] No existing commands found in stream
[2026-10-28 12:33:48,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:33:48,502.502 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-28 12:33:49,919.919 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:33:49,922.922 INFO    ] Checking for system updates...
[2026-10-28 12:33:49,958.958 INFO    ] 200
[2026-10-28 12:33:49,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:33:50,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:33:50,017.017 INFO    ] No update needed
[2026-10-28 12:33:50,019.019 INFO    ] Checking for camera pi updates...
[2026-10-28 12:33:50,053.053 INFO    ] 200
[2026-10-28 12:33:50,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:33:50,096.096 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:33:50,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:33:50,178.178 INFO    ] No camera update needed
[2026-10-28 12:33:50,180.180 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:33:50,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:33:50,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:33:50,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:33:52,237.237 INFO    ] ================================================
[2026-10-28 12:33:52,252.252 INFO    ] Launching Daemon at Wed Oct 28 12:33:52 IST 2026
[2026-10-28 12:33:52,263.263 INFO    ] ================================================
[2026-10-28 12:33:52,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:33:52
[2026-10-28 12:33:53,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:33:53,722.722 INFO    ] Initializing speech engine...
[2026-10-28 12:33:53,728.728 INFO    ] 2026-10-28 12:33:53
[2026-10-28 12:33:53,975.975 INFO    ] 2026-10-28 12:33:53
[2026-10-28 12:33:54,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:33:54,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:33:54,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:33:54,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:33:54,552.552 INFO    ] time= 28/10/2026 12:33:54
[2026-10-28 12:33:54,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:33:54,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:33:54,707.707 INFO    ] No existing commands found in stream
[2026-10-28 12:33:59,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:33:59,731.731 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 12:34:00,839.839 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:34:00,841.841 INFO    ] Checking for system updates...
[2026-10-28 12:34:00,877.877 INFO    ] 200
[2026-10-28 12:34:00,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:34:00,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:34:00,935.935 INFO    ] No update needed
[2026-10-28 12:34:00,937.937 INFO    ] Checking for camera pi updates...
[2026-10-28 12:34:00,971.971 INFO    ] 200
[2026-10-28 12:34:00,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:34:01,015.015 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:34:01,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:34:01,119.119 INFO    ] No camera update needed
[2026-10-28 12:34:01,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:34:01,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:34:01,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:34:01,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:34:03,173.173 INFO    ] ================================================
[2026-10-28 12:34:03,189.189 INFO    ] Launching Daemon at Wed Oct 28 12:34:03 IST 2026
[2026-10-28 12:34:03,201.201 INFO    ] ================================================
[2026-10-28 12:34:03,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:34:03
[2026-10-28 12:34:04,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:34:04,730.730 INFO    ] Initializing speech engine...
[2026-10-28 12:34:04,739.739 INFO    ] 2026-10-28 12:34:04
[2026-10-28 12:34:04,988.988 INFO    ] 2026-10-28 12:34:04
[2026-10-28 12:34:05,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:34:05,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:34:05,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:34:05,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:34:05,570.570 INFO    ] time= 28/10/2026 12:34:05
[2026-10-28 12:34:05,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:34:05,606.606 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:34:05,789.789 INFO    ] No existing commands found in stream
[2026-10-28 12:34:10,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:34:10,811.811 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-28 12:34:13,539.539 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:34:13,541.541 INFO    ] Checking for system updates...
[2026-10-28 12:34:13,581.581 INFO    ] 200
[2026-10-28 12:34:13,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:34:13,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:34:13,645.645 INFO    ] No update needed
[2026-10-28 12:34:13,648.648 INFO    ] Checking for camera pi updates...
[2026-10-28 12:34:13,685.685 INFO    ] 200
[2026-10-28 12:34:13,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:34:13,732.732 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:34:13,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:34:13,916.916 INFO    ] No camera update needed
[2026-10-28 12:34:13,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:34:13,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:34:13,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:34:13,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:34:15,972.972 INFO    ] ================================================
[2026-10-28 12:34:15,987.987 INFO    ] Launching Daemon at Wed Oct 28 12:34:15 IST 2026
[2026-10-28 12:34:16,998.998 INFO    ] ================================================
[2026-10-28 12:34:16,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:34:16
[2026-10-28 12:34:17,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:34:17,519.519 INFO    ] Initializing speech engine...
[2026-10-28 12:34:17,528.528 INFO    ] 2026-10-28 12:34:17
[2026-10-28 12:34:17,777.777 INFO    ] 2026-10-28 12:34:17
[2026-10-28 12:34:17,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:34:18,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:34:18,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:34:18,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:34:18,331.331 INFO    ] time= 28/10/2026 12:34:18
[2026-10-28 12:34:18,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:34:18,378.378 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:34:18,553.553 INFO    ] No existing commands found in stream
[2026-10-28 12:34:23,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:34:23,586.586 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-28 12:34:24,403.403 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:34:24,406.406 INFO    ] Checking for system updates...
[2026-10-28 12:34:24,446.446 INFO    ] 200
[2026-10-28 12:34:24,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:34:24,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:34:24,503.503 INFO    ] No update needed
[2026-10-28 12:34:24,505.505 INFO    ] Checking for camera pi updates...
[2026-10-28 12:34:24,539.539 INFO    ] 200
[2026-10-28 12:34:24,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:34:24,587.587 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:34:24,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:34:24,671.671 INFO    ] No camera update needed
[2026-10-28 12:34:24,674.674 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:34:24,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:34:24,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:34:24,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:34:26,730.730 INFO    ] ================================================
[2026-10-28 12:34:26,745.745 INFO    ] Launching Daemon at Wed Oct 28 12:34:26 IST 2026
[2026-10-28 12:34:26,756.756 INFO    ] ================================================
[2026-10-28 12:34:27,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:34:27
[2026-10-28 12:34:28,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:34:28,409.409 INFO    ] Initializing speech engine...
[2026-10-28 12:34:28,417.417 INFO    ] 2026-10-28 12:34:28
[2026-10-28 12:34:28,688.688 INFO    ] 2026-10-28 12:34:28
[2026-10-28 12:34:28,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:34:29,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:34:29,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:34:29,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:34:29,487.487 INFO    ] time= 28/10/2026 12:34:29
[2026-10-28 12:34:29,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:34:29,568.568 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:34:29,700.700 INFO    ] No existing commands found in stream
[2026-10-28 12:34:34,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:34:34,714.714 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-28 12:34:38,522.522 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:34:38,525.525 INFO    ] Checking for system updates...
[2026-10-28 12:34:38,562.562 INFO    ] 200
[2026-10-28 12:34:38,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:34:38,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:34:38,630.630 INFO    ] No update needed
[2026-10-28 12:34:38,633.633 INFO    ] Checking for camera pi updates...
[2026-10-28 12:34:38,672.672 INFO    ] 200
[2026-10-28 12:34:38,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:34:38,723.723 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:34:38,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:34:38,827.827 INFO    ] No camera update needed
[2026-10-28 12:34:38,829.829 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:34:38,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:34:38,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:34:38,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:34:40,883.883 INFO    ] ================================================
[2026-10-28 12:34:40,898.898 INFO    ] Launching Daemon at Wed Oct 28 12:34:40 IST 2026
[2026-10-28 12:34:40,909.909 INFO    ] ================================================
[2026-10-28 12:34:41,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:34:41
[2026-10-28 12:34:42,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:34:42,417.417 INFO    ] Initializing speech engine...
[2026-10-28 12:34:42,436.436 INFO    ] 2026-10-28 12:34:42
[2026-10-28 12:34:42,682.682 INFO    ] 2026-10-28 12:34:42
[2026-10-28 12:34:42,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:34:43,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:34:43,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:34:43,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:34:43,250.250 INFO    ] time= 28/10/2026 12:34:43
[2026-10-28 12:34:43,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:34:43,280.280 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:34:43,407.407 INFO    ] No existing commands found in stream
[2026-10-28 12:34:48,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:34:48,434.434 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 12:34:51,636.636 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:34:51,638.638 INFO    ] Checking for system updates...
[2026-10-28 12:34:51,678.678 INFO    ] 200
[2026-10-28 12:34:51,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:34:51,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:34:51,742.742 INFO    ] No update needed
[2026-10-28 12:34:51,745.745 INFO    ] Checking for camera pi updates...
[2026-10-28 12:34:51,783.783 INFO    ] 200
[2026-10-28 12:34:51,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:34:51,830.830 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:34:51,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:34:51,937.937 INFO    ] No camera update needed
[2026-10-28 12:34:51,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:34:51,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:34:51,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:34:51,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:34:53,993.993 INFO    ] ================================================
[2026-10-28 12:34:54,008.008 INFO    ] Launching Daemon at Wed Oct 28 12:34:54 IST 2026
[2026-10-28 12:34:54,019.019 INFO    ] ================================================
[2026-10-28 12:34:54,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:34:54
[2026-10-28 12:34:55,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:34:55,433.433 INFO    ] Initializing speech engine...
[2026-10-28 12:34:55,442.442 INFO    ] 2026-10-28 12:34:55
[2026-10-28 12:34:55,687.687 INFO    ] 2026-10-28 12:34:55
[2026-10-28 12:34:55,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:34:56,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:34:56,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:34:56,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:34:56,254.254 INFO    ] time= 28/10/2026 12:34:56
[2026-10-28 12:34:56,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:34:56,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:34:56,401.401 INFO    ] No existing commands found in stream
[2026-10-28 12:35:01,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:35:01,428.428 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-28 12:35:02,918.918 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:35:02,922.922 INFO    ] Checking for system updates...
[2026-10-28 12:35:02,966.966 INFO    ] 200
[2026-10-28 12:35:02,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:35:03,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:35:03,042.042 INFO    ] No update needed
[2026-10-28 12:35:03,045.045 INFO    ] Checking for camera pi updates...
[2026-10-28 12:35:03,086.086 INFO    ] 200
[2026-10-28 12:35:03,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:35:03,147.147 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:35:03,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:35:03,276.276 INFO    ] No camera update needed
[2026-10-28 12:35:03,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:35:03,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:35:03,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:35:03,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:35:05,344.344 INFO    ] ================================================
[2026-10-28 12:35:05,359.359 INFO    ] Launching Daemon at Wed Oct 28 12:35:05 IST 2026
[2026-10-28 12:35:05,370.370 INFO    ] ================================================
[2026-10-28 12:35:05,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:35:05
[2026-10-28 12:35:06,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:35:06,819.819 INFO    ] Initializing speech engine...
[2026-10-28 12:35:06,829.829 INFO    ] 2026-10-28 12:35:06
[2026-10-28 12:35:07,077.077 INFO    ] 2026-10-28 12:35:07
[2026-10-28 12:35:07,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:35:07,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:35:07,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:35:07,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:35:07,647.647 INFO    ] time= 28/10/2026 12:35:07
[2026-10-28 12:35:07,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:35:07,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:35:07,852.852 INFO    ] No existing commands found in stream
[2026-10-28 12:35:12,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:35:12,880.880 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-28 12:35:14,202.202 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:35:14,205.205 INFO    ] Checking for system updates...
[2026-10-28 12:35:14,241.241 INFO    ] 200
[2026-10-28 12:35:14,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:35:14,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:35:14,306.306 INFO    ] No update needed
[2026-10-28 12:35:14,309.309 INFO    ] Checking for camera pi updates...
[2026-10-28 12:35:14,347.347 INFO    ] 200
[2026-10-28 12:35:14,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:35:14,395.395 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:35:14,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:35:14,478.478 INFO    ] No camera update needed
[2026-10-28 12:35:14,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:35:14,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:35:14,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:35:14,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:35:16,534.534 INFO    ] ================================================
[2026-10-28 12:35:16,550.550 INFO    ] Launching Daemon at Wed Oct 28 12:35:16 IST 2026
[2026-10-28 12:35:16,561.561 INFO    ] ================================================
[2026-10-28 12:35:17,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:35:17
[2026-10-28 12:35:17,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:35:17,978.978 INFO    ] Initializing speech engine...
[2026-10-28 12:35:17,988.988 INFO    ] 2026-10-28 12:35:17
[2026-10-28 12:35:18,232.232 INFO    ] 2026-10-28 12:35:18
[2026-10-28 12:35:18,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:35:18,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:35:18,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:35:18,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:35:18,797.797 INFO    ] time= 28/10/2026 12:35:18
[2026-10-28 12:35:18,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:35:18,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:35:18,939.939 INFO    ] No existing commands found in stream
[2026-10-28 12:35:23,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:35:23,961.961 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-28 12:35:24,814.814 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:35:24,817.817 INFO    ] Checking for system updates...
[2026-10-28 12:35:24,856.856 INFO    ] 200
[2026-10-28 12:35:24,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:35:24,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:35:24,914.914 INFO    ] No update needed
[2026-10-28 12:35:24,917.917 INFO    ] Checking for camera pi updates...
[2026-10-28 12:35:24,954.954 INFO    ] 200
[2026-10-28 12:35:24,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:35:24,997.997 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:35:25,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:35:25,057.057 INFO    ] No camera update needed
[2026-10-28 12:35:25,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:35:25,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:35:25,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:35:25,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:35:27,114.114 INFO    ] ================================================
[2026-10-28 12:35:27,129.129 INFO    ] Launching Daemon at Wed Oct 28 12:35:27 IST 2026
[2026-10-28 12:35:27,141.141 INFO    ] ================================================
[2026-10-28 12:35:27,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:35:27
[2026-10-28 12:35:28,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:35:28,710.710 INFO    ] Initializing speech engine...
[2026-10-28 12:35:28,720.720 INFO    ] 2026-10-28 12:35:28
[2026-10-28 12:35:28,981.981 INFO    ] 2026-10-28 12:35:28
[2026-10-28 12:35:29,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:35:29,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:35:29,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:35:29,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:35:29,765.765 INFO    ] time= 28/10/2026 12:35:29
[2026-10-28 12:35:29,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:35:29,863.863 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:35:30,070.070 INFO    ] No existing commands found in stream
[2026-10-28 12:35:35,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:35:35,103.103 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-28 12:35:38,475.475 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:35:38,477.477 INFO    ] Checking for system updates...
[2026-10-28 12:35:38,512.512 INFO    ] 200
[2026-10-28 12:35:38,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:35:38,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:35:38,570.570 INFO    ] No update needed
[2026-10-28 12:35:38,572.572 INFO    ] Checking for camera pi updates...
[2026-10-28 12:35:38,606.606 INFO    ] 200
[2026-10-28 12:35:38,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:35:38,649.649 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:35:38,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:35:38,733.733 INFO    ] No camera update needed
[2026-10-28 12:35:38,735.735 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:35:38,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:35:38,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:35:38,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:35:40,791.791 INFO    ] ================================================
[2026-10-28 12:35:40,806.806 INFO    ] Launching Daemon at Wed Oct 28 12:35:40 IST 2026
[2026-10-28 12:35:40,817.817 INFO    ] ================================================
[2026-10-28 12:35:41,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:35:41
[2026-10-28 12:35:41,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:35:42,243.243 INFO    ] Initializing speech engine...
[2026-10-28 12:35:42,250.250 INFO    ] 2026-10-28 12:35:42
[2026-10-28 12:35:42,509.509 INFO    ] 2026-10-28 12:35:42
[2026-10-28 12:35:42,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:35:42,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:35:42,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:35:43,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:35:43,095.095 INFO    ] time= 28/10/2026 12:35:43
[2026-10-28 12:35:43,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:35:43,153.153 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:35:43,298.298 INFO    ] No existing commands found in stream
[2026-10-28 12:35:48,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:35:48,320.320 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-28 12:35:49,262.262 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:35:49,264.264 INFO    ] Checking for system updates...
[2026-10-28 12:35:49,304.304 INFO    ] 200
[2026-10-28 12:35:49,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:35:49,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:35:49,361.361 INFO    ] No update needed
[2026-10-28 12:35:49,363.363 INFO    ] Checking for camera pi updates...
[2026-10-28 12:35:49,397.397 INFO    ] 200
[2026-10-28 12:35:49,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:35:49,445.445 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:35:49,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:35:49,535.535 INFO    ] No camera update needed
[2026-10-28 12:35:49,537.537 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:35:49,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:35:49,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:35:49,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:35:51,593.593 INFO    ] ================================================
[2026-10-28 12:35:51,609.609 INFO    ] Launching Daemon at Wed Oct 28 12:35:51 IST 2026
[2026-10-28 12:35:51,620.620 INFO    ] ================================================
[2026-10-28 12:35:52,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:35:52
[2026-10-28 12:35:52,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:35:53,114.114 INFO    ] Initializing speech engine...
[2026-10-28 12:35:53,123.123 INFO    ] 2026-10-28 12:35:53
[2026-10-28 12:35:53,368.368 INFO    ] 2026-10-28 12:35:53
[2026-10-28 12:35:53,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:35:53,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:35:53,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:35:54,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:35:54,089.089 INFO    ] time= 28/10/2026 12:35:54
[2026-10-28 12:35:54,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:35:54,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:35:54,317.317 INFO    ] No existing commands found in stream
[2026-10-28 12:35:59,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:35:59,333.333 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-28 12:36:03,367.367 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:36:03,369.369 INFO    ] Checking for system updates...
[2026-10-28 12:36:03,405.405 INFO    ] 200
[2026-10-28 12:36:03,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:36:03,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:36:03,469.469 INFO    ] No update needed
[2026-10-28 12:36:03,471.471 INFO    ] Checking for camera pi updates...
[2026-10-28 12:36:03,504.504 INFO    ] 200
[2026-10-28 12:36:03,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:36:03,550.550 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:36:03,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:36:03,659.659 INFO    ] No camera update needed
[2026-10-28 12:36:03,662.662 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:36:03,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:36:03,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:36:03,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:36:05,716.716 INFO    ] ================================================
[2026-10-28 12:36:05,731.731 INFO    ] Launching Daemon at Wed Oct 28 12:36:05 IST 2026
[2026-10-28 12:36:05,742.742 INFO    ] ================================================
[2026-10-28 12:36:06,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:36:06
[2026-10-28 12:36:06,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:36:07,251.251 INFO    ] Initializing speech engine...
[2026-10-28 12:36:07,265.265 INFO    ] 2026-10-28 12:36:07
[2026-10-28 12:36:07,571.571 INFO    ] 2026-10-28 12:36:07
[2026-10-28 12:36:07,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:36:08,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:36:08,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:36:08,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:36:08,387.387 INFO    ] time= 28/10/2026 12:36:08
[2026-10-28 12:36:08,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:36:08,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:36:08,644.644 INFO    ] No existing commands found in stream
[2026-10-28 12:36:13,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:36:13,660.660 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 12:36:17,636.636 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:36:17,638.638 INFO    ] Checking for system updates...
[2026-10-28 12:36:17,679.679 INFO    ] 200
[2026-10-28 12:36:17,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:36:17,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:36:17,741.741 INFO    ] No update needed
[2026-10-28 12:36:17,744.744 INFO    ] Checking for camera pi updates...
[2026-10-28 12:36:17,782.782 INFO    ] 200
[2026-10-28 12:36:17,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:36:17,833.833 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:36:18,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:36:18,017.017 INFO    ] No camera update needed
[2026-10-28 12:36:18,020.020 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:36:18,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:36:18,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:36:18,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:36:20,074.074 INFO    ] ================================================
[2026-10-28 12:36:20,089.089 INFO    ] Launching Daemon at Wed Oct 28 12:36:20 IST 2026
[2026-10-28 12:36:20,100.100 INFO    ] ================================================
[2026-10-28 12:36:20,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:36:20
[2026-10-28 12:36:21,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:36:21,515.515 INFO    ] Initializing speech engine...
[2026-10-28 12:36:21,524.524 INFO    ] 2026-10-28 12:36:21
[2026-10-28 12:36:21,774.774 INFO    ] 2026-10-28 12:36:21
[2026-10-28 12:36:21,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:36:22,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:36:22,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:36:22,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:36:22,341.341 INFO    ] time= 28/10/2026 12:36:22
[2026-10-28 12:36:22,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:36:22,363.363 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:36:22,501.501 INFO    ] No existing commands found in stream
[2026-10-28 12:36:27,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:36:27,526.526 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-28 12:36:29,004.004 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:36:29,007.007 INFO    ] Checking for system updates...
[2026-10-28 12:36:29,046.046 INFO    ] 200
[2026-10-28 12:36:29,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:36:29,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:36:29,108.108 INFO    ] No update needed
[2026-10-28 12:36:29,111.111 INFO    ] Checking for camera pi updates...
[2026-10-28 12:36:29,144.144 INFO    ] 200
[2026-10-28 12:36:29,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:36:29,191.191 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:36:29,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:36:29,271.271 INFO    ] No camera update needed
[2026-10-28 12:36:29,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:36:29,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:36:29,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:36:29,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:36:31,328.328 INFO    ] ================================================
[2026-10-28 12:36:31,344.344 INFO    ] Launching Daemon at Wed Oct 28 12:36:31 IST 2026
[2026-10-28 12:36:31,355.355 INFO    ] ================================================
[2026-10-28 12:36:31,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:36:31
[2026-10-28 12:36:32,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:36:32,832.832 INFO    ] Initializing speech engine...
[2026-10-28 12:36:32,846.846 INFO    ] 2026-10-28 12:36:32
[2026-10-28 12:36:33,132.132 INFO    ] 2026-10-28 12:36:33
[2026-10-28 12:36:33,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:36:33,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:36:33,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:36:33,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:36:33,716.716 INFO    ] time= 28/10/2026 12:36:33
[2026-10-28 12:36:33,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:36:33,741.741 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:36:33,881.881 INFO    ] No existing commands found in stream
[2026-10-28 12:36:38,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:36:38,900.900 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 12:36:40,726.726 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:36:40,729.729 INFO    ] Checking for system updates...
[2026-10-28 12:36:40,768.768 INFO    ] 200
[2026-10-28 12:36:40,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:36:40,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:36:40,835.835 INFO    ] No update needed
[2026-10-28 12:36:40,838.838 INFO    ] Checking for camera pi updates...
[2026-10-28 12:36:40,874.874 INFO    ] 200
[2026-10-28 12:36:40,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:36:40,925.925 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:36:41,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:36:41,008.008 INFO    ] No camera update needed
[2026-10-28 12:36:41,012.012 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:36:41,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:36:41,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:36:41,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:36:43,068.068 INFO    ] ================================================
[2026-10-28 12:36:43,083.083 INFO    ] Launching Daemon at Wed Oct 28 12:36:43 IST 2026
[2026-10-28 12:36:43,093.093 INFO    ] ================================================
[2026-10-28 12:36:43,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:36:43
[2026-10-28 12:36:44,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:36:44,498.498 INFO    ] Initializing speech engine...
[2026-10-28 12:36:44,507.507 INFO    ] 2026-10-28 12:36:44
[2026-10-28 12:36:44,782.782 INFO    ] 2026-10-28 12:36:44
[2026-10-28 12:36:44,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:36:45,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:36:45,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:36:45,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:36:45,351.351 INFO    ] time= 28/10/2026 12:36:45
[2026-10-28 12:36:45,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:36:45,381.381 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:36:45,533.533 INFO    ] No existing commands found in stream
[2026-10-28 12:36:50,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:36:50,561.561 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-28 12:36:53,246.246 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:36:53,249.249 INFO    ] Checking for system updates...
[2026-10-28 12:36:53,293.293 INFO    ] 200
[2026-10-28 12:36:53,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:36:53,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:36:53,373.373 INFO    ] No update needed
[2026-10-28 12:36:53,377.377 INFO    ] Checking for camera pi updates...
[2026-10-28 12:36:53,415.415 INFO    ] 200
[2026-10-28 12:36:53,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:36:53,468.468 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:36:53,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:36:53,558.558 INFO    ] No camera update needed
[2026-10-28 12:36:53,561.561 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:36:53,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:36:53,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:36:53,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:36:55,619.619 INFO    ] ================================================
[2026-10-28 12:36:55,634.634 INFO    ] Launching Daemon at Wed Oct 28 12:36:55 IST 2026
[2026-10-28 12:36:55,644.644 INFO    ] ================================================
[2026-10-28 12:36:56,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:36:56
[2026-10-28 12:36:56,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:36:57,162.162 INFO    ] Initializing speech engine...
[2026-10-28 12:36:57,175.175 INFO    ] 2026-10-28 12:36:57
[2026-10-28 12:36:57,447.447 INFO    ] 2026-10-28 12:36:57
[2026-10-28 12:36:57,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:36:57,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:36:57,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:36:58,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:36:58,037.037 INFO    ] time= 28/10/2026 12:36:58
[2026-10-28 12:36:58,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:36:58,091.091 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:36:58,218.218 INFO    ] No existing commands found in stream
[2026-10-28 12:37:03,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:37:03,248.248 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-28 12:37:04,695.695 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:37:04,698.698 INFO    ] Checking for system updates...
[2026-10-28 12:37:04,734.734 INFO    ] 200
[2026-10-28 12:37:04,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:37:04,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:37:04,791.791 INFO    ] No update needed
[2026-10-28 12:37:04,794.794 INFO    ] Checking for camera pi updates...
[2026-10-28 12:37:04,827.827 INFO    ] 200
[2026-10-28 12:37:04,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:37:04,870.870 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:37:04,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:37:04,953.953 INFO    ] No camera update needed
[2026-10-28 12:37:04,955.955 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:37:04,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:37:04,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:37:04,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:37:07,010.010 INFO    ] ================================================
[2026-10-28 12:37:07,025.025 INFO    ] Launching Daemon at Wed Oct 28 12:37:07 IST 2026
[2026-10-28 12:37:07,036.036 INFO    ] ================================================
[2026-10-28 12:37:07,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:37:07
[2026-10-28 12:37:08,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:37:08,705.705 INFO    ] Initializing speech engine...
[2026-10-28 12:37:08,719.719 INFO    ] 2026-10-28 12:37:08
[2026-10-28 12:37:09,034.034 INFO    ] 2026-10-28 12:37:09
[2026-10-28 12:37:09,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:37:09,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:37:09,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:37:09,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:37:09,847.847 INFO    ] time= 28/10/2026 12:37:09
[2026-10-28 12:37:09,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:37:09,937.937 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:37:10,090.090 INFO    ] No existing commands found in stream
[2026-10-28 12:37:15,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:37:15,130.130 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-28 12:37:16,641.641 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:37:16,645.645 INFO    ] Checking for system updates...
[2026-10-28 12:37:16,682.682 INFO    ] 200
[2026-10-28 12:37:16,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:37:16,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:37:16,750.750 INFO    ] No update needed
[2026-10-28 12:37:16,753.753 INFO    ] Checking for camera pi updates...
[2026-10-28 12:37:16,788.788 INFO    ] 200
[2026-10-28 12:37:16,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:37:16,839.839 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:37:16,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:37:16,930.930 INFO    ] No camera update needed
[2026-10-28 12:37:16,933.933 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:37:16,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:37:16,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:37:16,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:37:18,992.992 INFO    ] ================================================
[2026-10-28 12:37:19,007.007 INFO    ] Launching Daemon at Wed Oct 28 12:37:19 IST 2026
[2026-10-28 12:37:19,018.018 INFO    ] ================================================
[2026-10-28 12:37:19,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:37:19
[2026-10-28 12:37:20,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:37:20,697.697 INFO    ] Initializing speech engine...
[2026-10-28 12:37:20,705.705 INFO    ] 2026-10-28 12:37:20
[2026-10-28 12:37:20,993.993 INFO    ] 2026-10-28 12:37:20
[2026-10-28 12:37:21,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:37:21,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:37:21,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:37:21,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:37:21,748.748 INFO    ] time= 28/10/2026 12:37:21
[2026-10-28 12:37:21,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:37:21,860.860 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:37:21,985.985 INFO    ] No existing commands found in stream
[2026-10-28 12:37:27,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:37:27,007.007 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 12:37:30,239.239 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:37:30,242.242 INFO    ] Checking for system updates...
[2026-10-28 12:37:30,285.285 INFO    ] 200
[2026-10-28 12:37:30,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:37:30,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:37:30,353.353 INFO    ] No update needed
[2026-10-28 12:37:30,357.357 INFO    ] Checking for camera pi updates...
[2026-10-28 12:37:30,391.391 INFO    ] 200
[2026-10-28 12:37:30,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:37:30,436.436 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:37:30,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:37:30,520.520 INFO    ] No camera update needed
[2026-10-28 12:37:30,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:37:30,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:37:30,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:37:30,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:37:32,583.583 INFO    ] ================================================
[2026-10-28 12:37:32,599.599 INFO    ] Launching Daemon at Wed Oct 28 12:37:32 IST 2026
[2026-10-28 12:37:32,610.610 INFO    ] ================================================
[2026-10-28 12:37:33,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:37:33
[2026-10-28 12:37:33,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:37:34,221.221 INFO    ] Initializing speech engine...
[2026-10-28 12:37:34,232.232 INFO    ] 2026-10-28 12:37:34
[2026-10-28 12:37:34,517.517 INFO    ] 2026-10-28 12:37:34
[2026-10-28 12:37:34,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:37:34,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:37:34,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:37:35,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:37:35,310.310 INFO    ] time= 28/10/2026 12:37:35
[2026-10-28 12:37:35,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:37:35,450.450 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:37:35,604.604 INFO    ] No existing commands found in stream
[2026-10-28 12:37:40,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:37:40,634.634 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 12:37:43,454.454 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:37:43,457.457 INFO    ] Checking for system updates...
[2026-10-28 12:37:43,498.498 INFO    ] 200
[2026-10-28 12:37:43,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:37:43,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:37:43,557.557 INFO    ] No update needed
[2026-10-28 12:37:43,560.560 INFO    ] Checking for camera pi updates...
[2026-10-28 12:37:43,595.595 INFO    ] 200
[2026-10-28 12:37:43,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:37:43,639.639 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:37:43,715.715 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:37:43,718.718 INFO    ] No camera update needed
[2026-10-28 12:37:43,720.720 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:37:43,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:37:43,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:37:43,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:37:45,778.778 INFO    ] ================================================
[2026-10-28 12:37:45,793.793 INFO    ] Launching Daemon at Wed Oct 28 12:37:45 IST 2026
[2026-10-28 12:37:45,804.804 INFO    ] ================================================
[2026-10-28 12:37:46,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:37:46
[2026-10-28 12:37:47,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:37:47,286.286 INFO    ] Initializing speech engine...
[2026-10-28 12:37:47,296.296 INFO    ] 2026-10-28 12:37:47
[2026-10-28 12:37:47,551.551 INFO    ] 2026-10-28 12:37:47
[2026-10-28 12:37:47,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:37:47,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:37:47,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:37:48,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:37:48,143.143 INFO    ] time= 28/10/2026 12:37:48
[2026-10-28 12:37:48,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:37:48,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:37:48,282.282 INFO    ] No existing commands found in stream
[2026-10-28 12:37:53,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:37:53,310.310 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-28 12:37:56,636.636 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:37:56,639.639 INFO    ] Checking for system updates...
[2026-10-28 12:37:56,675.675 INFO    ] 200
[2026-10-28 12:37:56,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:37:56,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:37:56,736.736 INFO    ] No update needed
[2026-10-28 12:37:56,738.738 INFO    ] Checking for camera pi updates...
[2026-10-28 12:37:56,771.771 INFO    ] 200
[2026-10-28 12:37:56,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:37:56,815.815 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:37:56,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:37:56,898.898 INFO    ] No camera update needed
[2026-10-28 12:37:56,900.900 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:37:56,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:37:56,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:37:56,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:37:58,955.955 INFO    ] ================================================
[2026-10-28 12:37:58,971.971 INFO    ] Launching Daemon at Wed Oct 28 12:37:58 IST 2026
[2026-10-28 12:37:58,982.982 INFO    ] ================================================
[2026-10-28 12:37:59,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:37:59
[2026-10-28 12:38:00,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:38:00,409.409 INFO    ] Initializing speech engine...
[2026-10-28 12:38:00,426.426 INFO    ] 2026-10-28 12:38:00
[2026-10-28 12:38:00,713.713 INFO    ] 2026-10-28 12:38:00
[2026-10-28 12:38:00,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:38:00,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:38:01,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:38:01,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:38:01,364.364 INFO    ] time= 28/10/2026 12:38:01
[2026-10-28 12:38:01,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:38:01,380.380 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:38:01,531.531 INFO    ] No existing commands found in stream
[2026-10-28 12:38:06,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:38:06,549.549 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-28 12:38:08,619.619 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:38:08,622.622 INFO    ] Checking for system updates...
[2026-10-28 12:38:08,657.657 INFO    ] 200
[2026-10-28 12:38:08,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:38:08,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:38:08,722.722 INFO    ] No update needed
[2026-10-28 12:38:08,725.725 INFO    ] Checking for camera pi updates...
[2026-10-28 12:38:08,759.759 INFO    ] 200
[2026-10-28 12:38:08,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:38:08,807.807 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:38:08,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:38:08,901.901 INFO    ] No camera update needed
[2026-10-28 12:38:08,904.904 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:38:08,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:38:08,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:38:08,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:38:10,960.960 INFO    ] ================================================
[2026-10-28 12:38:10,975.975 INFO    ] Launching Daemon at Wed Oct 28 12:38:10 IST 2026
[2026-10-28 12:38:10,985.985 INFO    ] ================================================
[2026-10-28 12:38:11,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:38:11
[2026-10-28 12:38:12,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:38:12,581.581 INFO    ] Initializing speech engine...
[2026-10-28 12:38:12,594.594 INFO    ] 2026-10-28 12:38:12
[2026-10-28 12:38:12,875.875 INFO    ] 2026-10-28 12:38:12
[2026-10-28 12:38:12,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:38:13,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:38:13,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:38:13,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:38:13,484.484 INFO    ] time= 28/10/2026 12:38:13
[2026-10-28 12:38:13,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:38:13,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:38:13,659.659 INFO    ] No existing commands found in stream
[2026-10-28 12:38:18,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:38:18,693.693 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 12:38:23,166.166 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:38:23,169.169 INFO    ] Checking for system updates...
[2026-10-28 12:38:23,205.205 INFO    ] 200
[2026-10-28 12:38:23,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:38:23,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:38:23,264.264 INFO    ] No update needed
[2026-10-28 12:38:23,267.267 INFO    ] Checking for camera pi updates...
[2026-10-28 12:38:23,300.300 INFO    ] 200
[2026-10-28 12:38:23,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:38:23,343.343 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:38:23,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:38:23,543.543 INFO    ] No camera update needed
[2026-10-28 12:38:23,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:38:23,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:38:23,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:38:23,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:38:25,600.600 INFO    ] ================================================
[2026-10-28 12:38:25,615.615 INFO    ] Launching Daemon at Wed Oct 28 12:38:25 IST 2026
[2026-10-28 12:38:25,626.626 INFO    ] ================================================
[2026-10-28 12:38:26,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:38:26
[2026-10-28 12:38:26,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:38:27,075.075 INFO    ] Initializing speech engine...
[2026-10-28 12:38:27,082.082 INFO    ] 2026-10-28 12:38:27
[2026-10-28 12:38:27,342.342 INFO    ] 2026-10-28 12:38:27
[2026-10-28 12:38:27,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:38:27,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:38:27,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:38:28,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:38:28,060.060 INFO    ] time= 28/10/2026 12:38:28
[2026-10-28 12:38:28,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:38:28,136.136 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:38:28,309.309 INFO    ] No existing commands found in stream
[2026-10-28 12:38:33,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:38:33,337.337 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-28 12:38:38,357.357 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:38:38,360.360 INFO    ] Checking for system updates...
[2026-10-28 12:38:38,397.397 INFO    ] 200
[2026-10-28 12:38:38,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:38:38,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:38:38,454.454 INFO    ] No update needed
[2026-10-28 12:38:38,456.456 INFO    ] Checking for camera pi updates...
[2026-10-28 12:38:38,490.490 INFO    ] 200
[2026-10-28 12:38:38,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:38:38,536.536 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:38:38,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:38:38,610.610 INFO    ] No camera update needed
[2026-10-28 12:38:38,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:38:38,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:38:38,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:38:38,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:38:40,665.665 INFO    ] ================================================
[2026-10-28 12:38:40,680.680 INFO    ] Launching Daemon at Wed Oct 28 12:38:40 IST 2026
[2026-10-28 12:38:40,690.690 INFO    ] ================================================
[2026-10-28 12:38:41,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:38:41
[2026-10-28 12:38:41,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:38:42,088.088 INFO    ] Initializing speech engine...
[2026-10-28 12:38:42,102.102 INFO    ] 2026-10-28 12:38:42
[2026-10-28 12:38:42,370.370 INFO    ] 2026-10-28 12:38:42
[2026-10-28 12:38:42,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:38:42,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:38:42,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:38:42,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:38:42,942.942 INFO    ] time= 28/10/2026 12:38:42
[2026-10-28 12:38:42,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:38:42,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:38:43,153.153 INFO    ] No existing commands found in stream
[2026-10-28 12:38:48,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:38:48,187.187 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-28 12:38:50,931.931 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:38:50,934.934 INFO    ] Checking for system updates...
[2026-10-28 12:38:50,969.969 INFO    ] 200
[2026-10-28 12:38:50,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:38:51,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:38:51,026.026 INFO    ] No update needed
[2026-10-28 12:38:51,028.028 INFO    ] Checking for camera pi updates...
[2026-10-28 12:38:51,061.061 INFO    ] 200
[2026-10-28 12:38:51,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:38:51,104.104 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:38:51,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:38:51,183.183 INFO    ] No camera update needed
[2026-10-28 12:38:51,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:38:51,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:38:51,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:38:51,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:38:53,238.238 INFO    ] ================================================
[2026-10-28 12:38:53,253.253 INFO    ] Launching Daemon at Wed Oct 28 12:38:53 IST 2026
[2026-10-28 12:38:53,263.263 INFO    ] ================================================
[2026-10-28 12:38:53,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:38:53
[2026-10-28 12:38:54,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:38:54,693.693 INFO    ] Initializing speech engine...
[2026-10-28 12:38:54,702.702 INFO    ] 2026-10-28 12:38:54
[2026-10-28 12:38:54,949.949 INFO    ] 2026-10-28 12:38:54
[2026-10-28 12:38:55,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:38:55,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:38:55,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:38:55,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:38:55,715.715 INFO    ] time= 28/10/2026 12:38:55
[2026-10-28 12:38:55,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:38:55,821.821 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:38:56,023.023 INFO    ] No existing commands found in stream
[2026-10-28 12:39:01,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:39:01,056.056 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 12:39:04,970.970 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:39:04,972.972 INFO    ] Checking for system updates...
[2026-10-28 12:39:05,009.009 INFO    ] 200
[2026-10-28 12:39:05,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:39:05,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:39:05,066.066 INFO    ] No update needed
[2026-10-28 12:39:05,068.068 INFO    ] Checking for camera pi updates...
[2026-10-28 12:39:05,102.102 INFO    ] 200
[2026-10-28 12:39:05,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:39:05,144.144 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:39:05,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:39:05,252.252 INFO    ] No camera update needed
[2026-10-28 12:39:05,254.254 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:39:05,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:39:05,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:39:05,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:39:07,307.307 INFO    ] ================================================
[2026-10-28 12:39:07,322.322 INFO    ] Launching Daemon at Wed Oct 28 12:39:07 IST 2026
[2026-10-28 12:39:07,333.333 INFO    ] ================================================
[2026-10-28 12:39:07,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:39:07
[2026-10-28 12:39:08,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:39:08,928.928 INFO    ] Initializing speech engine...
[2026-10-28 12:39:08,937.937 INFO    ] 2026-10-28 12:39:08
[2026-10-28 12:39:09,215.215 INFO    ] 2026-10-28 12:39:09
[2026-10-28 12:39:09,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:39:09,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:39:09,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:39:09,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:39:09,954.954 INFO    ] time= 28/10/2026 12:39:09
[2026-10-28 12:39:10,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:39:10,043.043 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:39:10,228.228 INFO    ] No existing commands found in stream
[2026-10-28 12:39:15,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:39:15,249.249 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-28 12:39:16,885.885 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:39:16,888.888 INFO    ] Checking for system updates...
[2026-10-28 12:39:16,924.924 INFO    ] 200
[2026-10-28 12:39:16,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:39:16,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:39:16,983.983 INFO    ] No update needed
[2026-10-28 12:39:16,986.986 INFO    ] Checking for camera pi updates...
[2026-10-28 12:39:17,021.021 INFO    ] 200
[2026-10-28 12:39:17,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:39:17,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:39:17,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:39:17,148.148 INFO    ] No camera update needed
[2026-10-28 12:39:17,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:39:17,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:39:17,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:39:17,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:39:19,206.206 INFO    ] ================================================
[2026-10-28 12:39:19,220.220 INFO    ] Launching Daemon at Wed Oct 28 12:39:19 IST 2026
[2026-10-28 12:39:19,231.231 INFO    ] ================================================
[2026-10-28 12:39:19,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:39:19
[2026-10-28 12:39:20,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:39:20,659.659 INFO    ] Initializing speech engine...
[2026-10-28 12:39:20,668.668 INFO    ] 2026-10-28 12:39:20
[2026-10-28 12:39:20,960.960 INFO    ] 2026-10-28 12:39:20
[2026-10-28 12:39:20,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:39:21,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:39:21,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:39:21,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:39:21,586.586 INFO    ] time= 28/10/2026 12:39:21
[2026-10-28 12:39:21,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:39:21,618.618 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:39:21,759.759 INFO    ] No existing commands found in stream
[2026-10-28 12:39:26,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:39:26,777.777 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-28 12:39:30,125.125 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:39:30,127.127 INFO    ] Checking for system updates...
[2026-10-28 12:39:30,163.163 INFO    ] 200
[2026-10-28 12:39:30,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:39:30,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:39:30,221.221 INFO    ] No update needed
[2026-10-28 12:39:30,224.224 INFO    ] Checking for camera pi updates...
[2026-10-28 12:39:30,261.261 INFO    ] 200
[2026-10-28 12:39:30,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:39:30,304.304 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:39:30,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:39:30,386.386 INFO    ] No camera update needed
[2026-10-28 12:39:30,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:39:30,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:39:30,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:39:30,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:39:32,443.443 INFO    ] ================================================
[2026-10-28 12:39:32,459.459 INFO    ] Launching Daemon at Wed Oct 28 12:39:32 IST 2026
[2026-10-28 12:39:32,471.471 INFO    ] ================================================
[2026-10-28 12:39:33,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:39:33
[2026-10-28 12:39:33,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:39:34,031.031 INFO    ] Initializing speech engine...
[2026-10-28 12:39:34,039.039 INFO    ] 2026-10-28 12:39:34
[2026-10-28 12:39:34,311.311 INFO    ] 2026-10-28 12:39:34
[2026-10-28 12:39:34,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:39:34,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:39:34,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:39:35,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:39:35,061.061 INFO    ] time= 28/10/2026 12:39:35
[2026-10-28 12:39:35,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:39:35,169.169 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:39:35,310.310 INFO    ] No existing commands found in stream
[2026-10-28 12:39:40,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:39:40,325.325 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 12:39:44,049.049 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:39:44,052.052 INFO    ] Checking for system updates...
[2026-10-28 12:39:44,089.089 INFO    ] 200
[2026-10-28 12:39:44,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:39:44,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:39:44,149.149 INFO    ] No update needed
[2026-10-28 12:39:44,152.152 INFO    ] Checking for camera pi updates...
[2026-10-28 12:39:44,186.186 INFO    ] 200
[2026-10-28 12:39:44,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:39:44,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:39:44,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:39:44,314.314 INFO    ] No camera update needed
[2026-10-28 12:39:44,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:39:44,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:39:44,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:39:44,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:39:46,374.374 INFO    ] ================================================
[2026-10-28 12:39:46,389.389 INFO    ] Launching Daemon at Wed Oct 28 12:39:46 IST 2026
[2026-10-28 12:39:46,399.399 INFO    ] ================================================
[2026-10-28 12:39:47,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:39:47
[2026-10-28 12:39:47,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:39:48,019.019 INFO    ] Initializing speech engine...
[2026-10-28 12:39:48,027.027 INFO    ] 2026-10-28 12:39:48
[2026-10-28 12:39:48,321.321 INFO    ] 2026-10-28 12:39:48
[2026-10-28 12:39:48,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:39:48,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:39:48,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:39:49,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:39:49,100.100 INFO    ] time= 28/10/2026 12:39:49
[2026-10-28 12:39:49,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:39:49,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:39:49,336.336 INFO    ] No existing commands found in stream
[2026-10-28 12:39:54,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:39:54,358.358 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-28 12:39:56,199.199 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:39:56,202.202 INFO    ] Checking for system updates...
[2026-10-28 12:39:56,239.239 INFO    ] 200
[2026-10-28 12:39:56,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:39:56,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:39:56,298.298 INFO    ] No update needed
[2026-10-28 12:39:56,300.300 INFO    ] Checking for camera pi updates...
[2026-10-28 12:39:56,335.335 INFO    ] 200
[2026-10-28 12:39:56,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:39:56,385.385 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:39:56,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:39:56,477.477 INFO    ] No camera update needed
[2026-10-28 12:39:56,479.479 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:39:56,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:39:56,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:39:56,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:39:58,532.532 INFO    ] ================================================
[2026-10-28 12:39:58,547.547 INFO    ] Launching Daemon at Wed Oct 28 12:39:58 IST 2026
[2026-10-28 12:39:58,558.558 INFO    ] ================================================
[2026-10-28 12:39:59,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:39:59
[2026-10-28 12:39:59,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:40:00,186.186 INFO    ] Initializing speech engine...
[2026-10-28 12:40:00,200.200 INFO    ] 2026-10-28 12:40:00
[2026-10-28 12:40:00,517.517 INFO    ] 2026-10-28 12:40:00
[2026-10-28 12:40:00,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:40:00,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:40:00,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:40:01,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:40:01,164.164 INFO    ] time= 28/10/2026 12:40:01
[2026-10-28 12:40:01,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:40:01,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:40:01,385.385 INFO    ] No existing commands found in stream
[2026-10-28 12:40:06,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:40:06,398.398 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-28 12:40:08,518.518 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:40:08,521.521 INFO    ] Checking for system updates...
[2026-10-28 12:40:08,573.573 INFO    ] 200
[2026-10-28 12:40:08,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:40:08,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:40:08,630.630 INFO    ] No update needed
[2026-10-28 12:40:08,633.633 INFO    ] Checking for camera pi updates...
[2026-10-28 12:40:08,666.666 INFO    ] 200
[2026-10-28 12:40:08,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:40:08,709.709 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:40:08,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:40:08,793.793 INFO    ] No camera update needed
[2026-10-28 12:40:08,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:40:08,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:40:08,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:40:08,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:40:10,847.847 INFO    ] ================================================
[2026-10-28 12:40:10,862.862 INFO    ] Launching Daemon at Wed Oct 28 12:40:10 IST 2026
[2026-10-28 12:40:10,873.873 INFO    ] ================================================
[2026-10-28 12:40:11,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:40:11
[2026-10-28 12:40:12,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:40:12,293.293 INFO    ] Initializing speech engine...
[2026-10-28 12:40:12,302.302 INFO    ] 2026-10-28 12:40:12
[2026-10-28 12:40:12,554.554 INFO    ] 2026-10-28 12:40:12
[2026-10-28 12:40:12,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:40:12,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:40:12,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:40:13,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:40:13,134.134 INFO    ] time= 28/10/2026 12:40:13
[2026-10-28 12:40:13,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:40:13,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:40:13,376.376 INFO    ] No existing commands found in stream
[2026-10-28 12:40:18,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:40:18,390.390 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-28 12:40:19,517.517 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:40:19,520.520 INFO    ] Checking for system updates...
[2026-10-28 12:40:19,556.556 INFO    ] 200
[2026-10-28 12:40:19,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:40:19,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:40:19,616.616 INFO    ] No update needed
[2026-10-28 12:40:19,619.619 INFO    ] Checking for camera pi updates...
[2026-10-28 12:40:19,653.653 INFO    ] 200
[2026-10-28 12:40:19,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:40:19,696.696 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:40:19,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:40:19,770.770 INFO    ] No camera update needed
[2026-10-28 12:40:19,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:40:19,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:40:19,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:40:19,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:40:21,825.825 INFO    ] ================================================
[2026-10-28 12:40:21,840.840 INFO    ] Launching Daemon at Wed Oct 28 12:40:21 IST 2026
[2026-10-28 12:40:21,851.851 INFO    ] ================================================
[2026-10-28 12:40:22,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:40:22
[2026-10-28 12:40:23,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:40:23,444.444 INFO    ] Initializing speech engine...
[2026-10-28 12:40:23,455.455 INFO    ] 2026-10-28 12:40:23
[2026-10-28 12:40:23,733.733 INFO    ] 2026-10-28 12:40:23
[2026-10-28 12:40:23,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:40:24,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:40:24,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:40:24,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:40:24,457.457 INFO    ] time= 28/10/2026 12:40:24
[2026-10-28 12:40:24,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:40:24,554.554 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:40:24,729.729 INFO    ] No existing commands found in stream
[2026-10-28 12:40:29,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:40:29,748.748 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 12:40:32,001.001 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:40:32,005.005 INFO    ] Checking for system updates...
[2026-10-28 12:40:32,047.047 INFO    ] 200
[2026-10-28 12:40:32,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:40:32,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:40:32,108.108 INFO    ] No update needed
[2026-10-28 12:40:32,111.111 INFO    ] Checking for camera pi updates...
[2026-10-28 12:40:32,147.147 INFO    ] 200
[2026-10-28 12:40:32,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:40:32,193.193 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:40:32,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:40:32,301.301 INFO    ] No camera update needed
[2026-10-28 12:40:32,304.304 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:40:32,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:40:32,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:40:32,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:40:34,360.360 INFO    ] ================================================
[2026-10-28 12:40:34,375.375 INFO    ] Launching Daemon at Wed Oct 28 12:40:34 IST 2026
[2026-10-28 12:40:34,386.386 INFO    ] ================================================
[2026-10-28 12:40:35,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:40:35
[2026-10-28 12:40:35,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:40:35,862.862 INFO    ] Initializing speech engine...
[2026-10-28 12:40:35,871.871 INFO    ] 2026-10-28 12:40:35
[2026-10-28 12:40:36,117.117 INFO    ] 2026-10-28 12:40:36
[2026-10-28 12:40:36,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:40:36,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:40:36,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:40:36,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:40:36,722.722 INFO    ] time= 28/10/2026 12:40:36
[2026-10-28 12:40:36,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:40:36,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:40:36,956.956 INFO    ] No existing commands found in stream
[2026-10-28 12:40:41,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:40:41,968.968 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 12:40:45,720.720 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:40:45,723.723 INFO    ] Checking for system updates...
[2026-10-28 12:40:45,760.760 INFO    ] 200
[2026-10-28 12:40:45,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:40:45,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:40:45,819.819 INFO    ] No update needed
[2026-10-28 12:40:45,822.822 INFO    ] Checking for camera pi updates...
[2026-10-28 12:40:45,856.856 INFO    ] 200
[2026-10-28 12:40:45,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:40:45,900.900 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:40:45,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:40:45,979.979 INFO    ] No camera update needed
[2026-10-28 12:40:45,982.982 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:40:45,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:40:45,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:40:45,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:40:48,039.039 INFO    ] ================================================
[2026-10-28 12:40:48,056.056 INFO    ] Launching Daemon at Wed Oct 28 12:40:48 IST 2026
[2026-10-28 12:40:48,067.067 INFO    ] ================================================
[2026-10-28 12:40:48,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:40:48
[2026-10-28 12:40:49,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:40:49,510.510 INFO    ] Initializing speech engine...
[2026-10-28 12:40:49,519.519 INFO    ] 2026-10-28 12:40:49
[2026-10-28 12:40:49,814.814 INFO    ] 2026-10-28 12:40:49
[2026-10-28 12:40:49,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:40:50,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:40:50,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:40:50,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:40:50,460.460 INFO    ] time= 28/10/2026 12:40:50
[2026-10-28 12:40:50,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:40:50,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:40:50,630.630 INFO    ] No existing commands found in stream
[2026-10-28 12:40:55,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:40:55,653.653 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-28 12:40:57,251.251 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:40:57,253.253 INFO    ] Checking for system updates...
[2026-10-28 12:40:57,289.289 INFO    ] 200
[2026-10-28 12:40:57,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:40:57,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:40:57,348.348 INFO    ] No update needed
[2026-10-28 12:40:57,351.351 INFO    ] Checking for camera pi updates...
[2026-10-28 12:40:57,384.384 INFO    ] 200
[2026-10-28 12:40:57,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:40:57,428.428 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:40:57,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:40:57,508.508 INFO    ] No camera update needed
[2026-10-28 12:40:57,511.511 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:40:57,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:40:57,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:40:57,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:40:59,564.564 INFO    ] ================================================
[2026-10-28 12:40:59,580.580 INFO    ] Launching Daemon at Wed Oct 28 12:40:59 IST 2026
[2026-10-28 12:40:59,592.592 INFO    ] ================================================
[2026-10-28 12:41:00,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:41:00
[2026-10-28 12:41:00,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:41:01,196.196 INFO    ] Initializing speech engine...
[2026-10-28 12:41:01,206.206 INFO    ] 2026-10-28 12:41:01
[2026-10-28 12:41:01,488.488 INFO    ] 2026-10-28 12:41:01
[2026-10-28 12:41:01,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:41:01,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:41:01,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:41:02,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:41:02,106.106 INFO    ] time= 28/10/2026 12:41:02
[2026-10-28 12:41:02,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:41:02,122.122 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:41:02,227.227 INFO    ] No existing commands found in stream
[2026-10-28 12:41:07,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:41:07,239.239 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-28 12:41:08,099.099 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:41:08,102.102 INFO    ] Checking for system updates...
[2026-10-28 12:41:08,137.137 INFO    ] 200
[2026-10-28 12:41:08,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:41:08,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:41:08,194.194 INFO    ] No update needed
[2026-10-28 12:41:08,197.197 INFO    ] Checking for camera pi updates...
[2026-10-28 12:41:08,230.230 INFO    ] 200
[2026-10-28 12:41:08,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:41:08,279.279 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:41:08,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:41:08,371.371 INFO    ] No camera update needed
[2026-10-28 12:41:08,373.373 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:41:08,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:41:08,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:41:08,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:41:10,427.427 INFO    ] ================================================
[2026-10-28 12:41:10,443.443 INFO    ] Launching Daemon at Wed Oct 28 12:41:10 IST 2026
[2026-10-28 12:41:10,454.454 INFO    ] ================================================
[2026-10-28 12:41:11,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:41:11
[2026-10-28 12:41:11,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:41:12,141.141 INFO    ] Initializing speech engine...
[2026-10-28 12:41:12,152.152 INFO    ] 2026-10-28 12:41:12
[2026-10-28 12:41:12,447.447 INFO    ] 2026-10-28 12:41:12
[2026-10-28 12:41:12,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:41:12,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:41:12,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:41:13,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:41:13,199.199 INFO    ] time= 28/10/2026 12:41:13
[2026-10-28 12:41:13,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:41:13,304.304 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:41:13,450.450 INFO    ] No existing commands found in stream
[2026-10-28 12:41:18,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:41:18,465.465 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-28 12:41:22,845.845 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:41:22,848.848 INFO    ] Checking for system updates...
[2026-10-28 12:41:22,885.885 INFO    ] 200
[2026-10-28 12:41:22,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:41:22,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:41:22,948.948 INFO    ] No update needed
[2026-10-28 12:41:22,950.950 INFO    ] Checking for camera pi updates...
[2026-10-28 12:41:22,984.984 INFO    ] 200
[2026-10-28 12:41:22,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:41:23,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:41:23,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:41:23,120.120 INFO    ] No camera update needed
[2026-10-28 12:41:23,123.123 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:41:23,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:41:23,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:41:23,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:41:25,176.176 INFO    ] ================================================
[2026-10-28 12:41:25,192.192 INFO    ] Launching Daemon at Wed Oct 28 12:41:25 IST 2026
[2026-10-28 12:41:25,202.202 INFO    ] ================================================
[2026-10-28 12:41:25,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:41:25
[2026-10-28 12:41:26,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:41:26,868.868 INFO    ] Initializing speech engine...
[2026-10-28 12:41:26,878.878 INFO    ] 2026-10-28 12:41:26
[2026-10-28 12:41:27,157.157 INFO    ] 2026-10-28 12:41:27
[2026-10-28 12:41:27,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:41:27,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:41:27,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:41:27,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:41:27,778.778 INFO    ] time= 28/10/2026 12:41:27
[2026-10-28 12:41:27,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:41:27,877.877 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:41:28,062.062 INFO    ] No existing commands found in stream
[2026-10-28 12:41:33,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:41:33,099.099 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-28 12:41:34,081.081 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:41:34,084.084 INFO    ] Checking for system updates...
[2026-10-28 12:41:34,127.127 INFO    ] 200
[2026-10-28 12:41:34,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:41:34,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:41:34,197.197 INFO    ] No update needed
[2026-10-28 12:41:34,200.200 INFO    ] Checking for camera pi updates...
[2026-10-28 12:41:34,233.233 INFO    ] 200
[2026-10-28 12:41:34,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:41:34,276.276 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:41:34,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:41:34,363.363 INFO    ] No camera update needed
[2026-10-28 12:41:34,365.365 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:41:34,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:41:34,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:41:34,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:41:36,417.417 INFO    ] ================================================
[2026-10-28 12:41:36,433.433 INFO    ] Launching Daemon at Wed Oct 28 12:41:36 IST 2026
[2026-10-28 12:41:36,444.444 INFO    ] ================================================
[2026-10-28 12:41:37,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:41:37
[2026-10-28 12:41:37,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:41:37,960.960 INFO    ] Initializing speech engine...
[2026-10-28 12:41:37,975.975 INFO    ] 2026-10-28 12:41:37
[2026-10-28 12:41:38,239.239 INFO    ] 2026-10-28 12:41:38
[2026-10-28 12:41:38,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:41:38,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:41:38,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:41:38,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:41:38,837.837 INFO    ] time= 28/10/2026 12:41:38
[2026-10-28 12:41:38,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:41:38,865.865 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:41:39,021.021 INFO    ] No existing commands found in stream
[2026-10-28 12:41:44,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:41:44,039.039 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-28 12:41:46,087.087 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:41:46,090.090 INFO    ] Checking for system updates...
[2026-10-28 12:41:46,126.126 INFO    ] 200
[2026-10-28 12:41:46,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:41:46,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:41:46,190.190 INFO    ] No update needed
[2026-10-28 12:41:46,192.192 INFO    ] Checking for camera pi updates...
[2026-10-28 12:41:46,230.230 INFO    ] 200
[2026-10-28 12:41:46,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:41:46,273.273 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:41:46,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:41:46,357.357 INFO    ] No camera update needed
[2026-10-28 12:41:46,359.359 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:41:46,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:41:46,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:41:46,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:41:48,415.415 INFO    ] ================================================
[2026-10-28 12:41:48,430.430 INFO    ] Launching Daemon at Wed Oct 28 12:41:48 IST 2026
[2026-10-28 12:41:48,440.440 INFO    ] ================================================
[2026-10-28 12:41:49,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:41:49
[2026-10-28 12:41:49,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:41:50,113.113 INFO    ] Initializing speech engine...
[2026-10-28 12:41:50,126.126 INFO    ] 2026-10-28 12:41:50
[2026-10-28 12:41:50,400.400 INFO    ] 2026-10-28 12:41:50
[2026-10-28 12:41:50,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:41:50,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:41:50,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:41:51,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:41:51,194.194 INFO    ] time= 28/10/2026 12:41:51
[2026-10-28 12:41:51,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:41:51,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:41:51,494.494 INFO    ] No existing commands found in stream
[2026-10-28 12:41:56,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:41:56,526.526 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-28 12:41:59,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:41:59,646.646 INFO    ] Checking for system updates...
[2026-10-28 12:41:59,683.683 INFO    ] 200
[2026-10-28 12:41:59,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:41:59,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:41:59,740.740 INFO    ] No update needed
[2026-10-28 12:41:59,743.743 INFO    ] Checking for camera pi updates...
[2026-10-28 12:41:59,776.776 INFO    ] 200
[2026-10-28 12:41:59,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:41:59,819.819 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:41:59,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:41:59,923.923 INFO    ] No camera update needed
[2026-10-28 12:41:59,926.926 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:41:59,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:41:59,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:41:59,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:42:01,982.982 INFO    ] ================================================
[2026-10-28 12:42:02,003.003 INFO    ] Launching Daemon at Wed Oct 28 12:42:01 IST 2026
[2026-10-28 12:42:02,016.016 INFO    ] ================================================
[2026-10-28 12:42:02,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:42:02
[2026-10-28 12:42:03,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:42:03,719.719 INFO    ] Initializing speech engine...
[2026-10-28 12:42:03,728.728 INFO    ] 2026-10-28 12:42:03
[2026-10-28 12:42:04,018.018 INFO    ] 2026-10-28 12:42:03
[2026-10-28 12:42:04,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:42:04,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:42:04,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:42:04,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:42:04,783.783 INFO    ] time= 28/10/2026 12:42:04
[2026-10-28 12:42:04,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:42:04,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:42:04,983.983 INFO    ] No existing commands found in stream
[2026-10-28 12:42:10,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:42:10,022.022 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-28 12:42:14,076.076 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:42:14,079.079 INFO    ] Checking for system updates...
[2026-10-28 12:42:14,121.121 INFO    ] 200
[2026-10-28 12:42:14,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:42:14,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:42:14,185.185 INFO    ] No update needed
[2026-10-28 12:42:14,188.188 INFO    ] Checking for camera pi updates...
[2026-10-28 12:42:14,225.225 INFO    ] 200
[2026-10-28 12:42:14,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:42:14,268.268 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:42:14,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:42:14,358.358 INFO    ] No camera update needed
[2026-10-28 12:42:14,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:42:14,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:42:14,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:42:14,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:42:16,416.416 INFO    ] ================================================
[2026-10-28 12:42:16,431.431 INFO    ] Launching Daemon at Wed Oct 28 12:42:16 IST 2026
[2026-10-28 12:42:16,443.443 INFO    ] ================================================
[2026-10-28 12:42:17,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:42:17
[2026-10-28 12:42:17,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:42:17,988.988 INFO    ] Initializing speech engine...
[2026-10-28 12:42:17,995.995 INFO    ] 2026-10-28 12:42:17
[2026-10-28 12:42:18,271.271 INFO    ] 2026-10-28 12:42:18
[2026-10-28 12:42:18,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:42:18,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:42:18,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:42:18,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:42:18,841.841 INFO    ] time= 28/10/2026 12:42:18
[2026-10-28 12:42:18,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:42:18,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:42:19,007.007 INFO    ] No existing commands found in stream
[2026-10-28 12:42:24,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:42:24,041.041 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-28 12:42:25,012.012 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:42:25,015.015 INFO    ] Checking for system updates...
[2026-10-28 12:42:25,056.056 INFO    ] 200
[2026-10-28 12:42:25,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:42:25,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:42:25,122.122 INFO    ] No update needed
[2026-10-28 12:42:25,125.125 INFO    ] Checking for camera pi updates...
[2026-10-28 12:42:25,159.159 INFO    ] 200
[2026-10-28 12:42:25,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:42:25,208.208 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:42:25,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:42:25,297.297 INFO    ] No camera update needed
[2026-10-28 12:42:25,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:42:25,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:42:25,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:42:25,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:42:27,353.353 INFO    ] ================================================
[2026-10-28 12:42:27,368.368 INFO    ] Launching Daemon at Wed Oct 28 12:42:27 IST 2026
[2026-10-28 12:42:27,380.380 INFO    ] ================================================
[2026-10-28 12:42:27,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:42:27
[2026-10-28 12:42:28,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:42:28,837.837 INFO    ] Initializing speech engine...
[2026-10-28 12:42:28,843.843 INFO    ] 2026-10-28 12:42:28
[2026-10-28 12:42:29,103.103 INFO    ] 2026-10-28 12:42:29
[2026-10-28 12:42:29,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:42:29,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:42:29,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:42:29,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:42:29,689.689 INFO    ] time= 28/10/2026 12:42:29
[2026-10-28 12:42:29,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:42:29,709.709 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:42:29,859.859 INFO    ] No existing commands found in stream
[2026-10-28 12:42:34,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:42:34,887.887 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-28 12:42:39,478.478 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:42:39,481.481 INFO    ] Checking for system updates...
[2026-10-28 12:42:39,516.516 INFO    ] 200
[2026-10-28 12:42:39,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:42:39,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:42:39,573.573 INFO    ] No update needed
[2026-10-28 12:42:39,576.576 INFO    ] Checking for camera pi updates...
[2026-10-28 12:42:39,609.609 INFO    ] 200
[2026-10-28 12:42:39,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:42:39,652.652 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:42:39,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:42:39,843.843 INFO    ] No camera update needed
[2026-10-28 12:42:39,846.846 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:42:39,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:42:39,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:42:39,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:42:41,898.898 INFO    ] ================================================
[2026-10-28 12:42:41,913.913 INFO    ] Launching Daemon at Wed Oct 28 12:42:41 IST 2026
[2026-10-28 12:42:41,924.924 INFO    ] ================================================
[2026-10-28 12:42:42,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:42:42
[2026-10-28 12:42:43,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:42:43,495.495 INFO    ] Initializing speech engine...
[2026-10-28 12:42:43,506.506 INFO    ] 2026-10-28 12:42:43
[2026-10-28 12:42:43,819.819 INFO    ] 2026-10-28 12:42:43
[2026-10-28 12:42:43,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:42:44,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:42:44,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:42:44,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:42:44,566.566 INFO    ] time= 28/10/2026 12:42:44
[2026-10-28 12:42:44,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:42:44,675.675 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:42:44,800.800 INFO    ] No existing commands found in stream
[2026-10-28 12:42:49,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:42:49,815.815 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-28 12:42:51,772.772 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:42:51,776.776 INFO    ] Checking for system updates...
[2026-10-28 12:42:51,813.813 INFO    ] 200
[2026-10-28 12:42:51,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:42:51,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:42:51,871.871 INFO    ] No update needed
[2026-10-28 12:42:51,873.873 INFO    ] Checking for camera pi updates...
[2026-10-28 12:42:51,906.906 INFO    ] 200
[2026-10-28 12:42:51,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:42:51,955.955 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:42:52,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:42:52,052.052 INFO    ] No camera update needed
[2026-10-28 12:42:52,054.054 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:42:52,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:42:52,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:42:52,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:42:54,107.107 INFO    ] ================================================
[2026-10-28 12:42:54,122.122 INFO    ] Launching Daemon at Wed Oct 28 12:42:54 IST 2026
[2026-10-28 12:42:54,134.134 INFO    ] ================================================
[2026-10-28 12:42:54,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:42:54
[2026-10-28 12:42:55,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:42:55,533.533 INFO    ] Initializing speech engine...
[2026-10-28 12:42:55,548.548 INFO    ] 2026-10-28 12:42:55
[2026-10-28 12:42:55,815.815 INFO    ] 2026-10-28 12:42:55
[2026-10-28 12:42:55,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:42:56,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:42:56,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:42:56,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:42:56,394.394 INFO    ] time= 28/10/2026 12:42:56
[2026-10-28 12:42:56,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:42:56,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:42:56,600.600 INFO    ] No existing commands found in stream
[2026-10-28 12:43:01,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:43:01,639.639 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 12:43:05,006.006 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:43:05,009.009 INFO    ] Checking for system updates...
[2026-10-28 12:43:05,046.046 INFO    ] 200
[2026-10-28 12:43:05,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:43:05,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:43:05,109.109 INFO    ] No update needed
[2026-10-28 12:43:05,112.112 INFO    ] Checking for camera pi updates...
[2026-10-28 12:43:05,151.151 INFO    ] 200
[2026-10-28 12:43:05,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:43:05,200.200 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:43:05,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:43:05,289.289 INFO    ] No camera update needed
[2026-10-28 12:43:05,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:43:05,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:43:05,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:43:05,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:43:07,347.347 INFO    ] ================================================
[2026-10-28 12:43:07,363.363 INFO    ] Launching Daemon at Wed Oct 28 12:43:07 IST 2026
[2026-10-28 12:43:07,374.374 INFO    ] ================================================
[2026-10-28 12:43:08,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:43:08
[2026-10-28 12:43:08,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:43:08,983.983 INFO    ] Initializing speech engine...
[2026-10-28 12:43:08,988.988 INFO    ] 2026-10-28 12:43:08
[2026-10-28 12:43:09,260.260 INFO    ] 2026-10-28 12:43:09
[2026-10-28 12:43:09,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:43:09,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:43:09,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:43:09,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:43:09,988.988 INFO    ] time= 28/10/2026 12:43:09
[2026-10-28 12:43:10,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:43:10,088.088 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:43:10,242.242 INFO    ] No existing commands found in stream
[2026-10-28 12:43:15,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:43:15,259.259 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 12:43:15,978.978 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:43:15,981.981 INFO    ] Checking for system updates...
[2026-10-28 12:43:16,022.022 INFO    ] 200
[2026-10-28 12:43:16,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:43:16,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:43:16,081.081 INFO    ] No update needed
[2026-10-28 12:43:16,084.084 INFO    ] Checking for camera pi updates...
[2026-10-28 12:43:16,121.121 INFO    ] 200
[2026-10-28 12:43:16,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:43:16,169.169 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:43:16,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:43:16,275.275 INFO    ] No camera update needed
[2026-10-28 12:43:16,278.278 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:43:16,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:43:16,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:43:16,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:43:18,332.332 INFO    ] ================================================
[2026-10-28 12:43:18,348.348 INFO    ] Launching Daemon at Wed Oct 28 12:43:18 IST 2026
[2026-10-28 12:43:18,359.359 INFO    ] ================================================
[2026-10-28 12:43:18,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:43:18
[2026-10-28 12:43:19,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:43:19,781.781 INFO    ] Initializing speech engine...
[2026-10-28 12:43:19,791.791 INFO    ] 2026-10-28 12:43:19
[2026-10-28 12:43:20,049.049 INFO    ] 2026-10-28 12:43:20
[2026-10-28 12:43:20,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:43:20,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:43:20,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:43:20,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:43:20,607.607 INFO    ] time= 28/10/2026 12:43:20
[2026-10-28 12:43:20,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:43:20,653.653 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:43:20,764.764 INFO    ] No existing commands found in stream
[2026-10-28 12:43:25,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:43:25,787.787 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 12:43:29,488.488 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:43:29,491.491 INFO    ] Checking for system updates...
[2026-10-28 12:43:29,540.540 INFO    ] 200
[2026-10-28 12:43:29,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:43:29,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:43:29,597.597 INFO    ] No update needed
[2026-10-28 12:43:29,600.600 INFO    ] Checking for camera pi updates...
[2026-10-28 12:43:29,636.636 INFO    ] 200
[2026-10-28 12:43:29,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:43:29,679.679 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:43:29,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:43:29,759.759 INFO    ] No camera update needed
[2026-10-28 12:43:29,761.761 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:43:29,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:43:29,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:43:29,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:43:31,816.816 INFO    ] ================================================
[2026-10-28 12:43:31,833.833 INFO    ] Launching Daemon at Wed Oct 28 12:43:31 IST 2026
[2026-10-28 12:43:31,845.845 INFO    ] ================================================
[2026-10-28 12:43:32,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:43:32
[2026-10-28 12:43:33,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:43:33,314.314 INFO    ] Initializing speech engine...
[2026-10-28 12:43:33,328.328 INFO    ] 2026-10-28 12:43:33
[2026-10-28 12:43:33,610.610 INFO    ] 2026-10-28 12:43:33
[2026-10-28 12:43:33,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:43:33,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:43:33,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:43:34,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:43:34,231.231 INFO    ] time= 28/10/2026 12:43:34
[2026-10-28 12:43:34,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:43:34,254.254 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:43:34,400.400 INFO    ] No existing commands found in stream
[2026-10-28 12:43:39,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:43:39,418.418 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-28 12:43:40,362.362 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:43:40,364.364 INFO    ] Checking for system updates...
[2026-10-28 12:43:40,400.400 INFO    ] 200
[2026-10-28 12:43:40,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:43:40,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:43:40,457.457 INFO    ] No update needed
[2026-10-28 12:43:40,460.460 INFO    ] Checking for camera pi updates...
[2026-10-28 12:43:40,494.494 INFO    ] 200
[2026-10-28 12:43:40,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:43:40,538.538 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:43:40,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:43:40,622.622 INFO    ] No camera update needed
[2026-10-28 12:43:40,625.625 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:43:40,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:43:40,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:43:40,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:43:42,677.677 INFO    ] ================================================
[2026-10-28 12:43:42,692.692 INFO    ] Launching Daemon at Wed Oct 28 12:43:42 IST 2026
[2026-10-28 12:43:42,704.704 INFO    ] ================================================
[2026-10-28 12:43:43,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:43:43
[2026-10-28 12:43:44,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:43:44,342.342 INFO    ] Initializing speech engine...
[2026-10-28 12:43:44,353.353 INFO    ] 2026-10-28 12:43:44
[2026-10-28 12:43:44,626.626 INFO    ] 2026-10-28 12:43:44
[2026-10-28 12:43:44,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:43:45,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:43:45,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:43:45,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:43:45,426.426 INFO    ] time= 28/10/2026 12:43:45
[2026-10-28 12:43:45,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:43:45,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:43:45,648.648 INFO    ] No existing commands found in stream
[2026-10-28 12:43:50,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:43:50,662.662 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-28 12:43:52,331.331 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:43:52,334.334 INFO    ] Checking for system updates...
[2026-10-28 12:43:52,371.371 INFO    ] 200
[2026-10-28 12:43:52,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:43:52,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:43:52,430.430 INFO    ] No update needed
[2026-10-28 12:43:52,433.433 INFO    ] Checking for camera pi updates...
[2026-10-28 12:43:52,467.467 INFO    ] 200
[2026-10-28 12:43:52,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:43:52,512.512 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:43:52,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:43:52,606.606 INFO    ] No camera update needed
[2026-10-28 12:43:52,608.608 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:43:52,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:43:52,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:43:52,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:43:54,667.667 INFO    ] ================================================
[2026-10-28 12:43:54,683.683 INFO    ] Launching Daemon at Wed Oct 28 12:43:54 IST 2026
[2026-10-28 12:43:54,694.694 INFO    ] ================================================
[2026-10-28 12:43:55,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:43:55
[2026-10-28 12:43:55,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:43:56,145.145 INFO    ] Initializing speech engine...
[2026-10-28 12:43:56,164.164 INFO    ] 2026-10-28 12:43:56
[2026-10-28 12:43:56,416.416 INFO    ] 2026-10-28 12:43:56
[2026-10-28 12:43:56,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:43:56,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:43:56,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:43:56,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:43:56,975.975 INFO    ] time= 28/10/2026 12:43:56
[2026-10-28 12:43:56,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:43:57,015.015 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:43:57,147.147 INFO    ] No existing commands found in stream
[2026-10-28 12:44:02,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:44:02,176.176 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-28 12:44:04,925.925 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:44:04,928.928 INFO    ] Checking for system updates...
[2026-10-28 12:44:04,963.963 INFO    ] 200
[2026-10-28 12:44:04,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:44:05,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:44:05,025.025 INFO    ] No update needed
[2026-10-28 12:44:05,027.027 INFO    ] Checking for camera pi updates...
[2026-10-28 12:44:05,063.063 INFO    ] 200
[2026-10-28 12:44:05,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:44:05,109.109 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:44:05,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:44:05,215.215 INFO    ] No camera update needed
[2026-10-28 12:44:05,218.218 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:44:05,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:44:05,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:44:05,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:44:07,271.271 INFO    ] ================================================
[2026-10-28 12:44:07,287.287 INFO    ] Launching Daemon at Wed Oct 28 12:44:07 IST 2026
[2026-10-28 12:44:07,298.298 INFO    ] ================================================
[2026-10-28 12:44:07,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:44:07
[2026-10-28 12:44:08,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:44:08,693.693 INFO    ] Initializing speech engine...
[2026-10-28 12:44:08,715.715 INFO    ] 2026-10-28 12:44:08
[2026-10-28 12:44:08,971.971 INFO    ] 2026-10-28 12:44:08
[2026-10-28 12:44:09,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:44:09,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:44:09,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:44:09,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:44:09,538.538 INFO    ] time= 28/10/2026 12:44:09
[2026-10-28 12:44:09,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:44:09,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:44:09,692.692 INFO    ] No existing commands found in stream
[2026-10-28 12:44:14,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:44:14,725.725 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-28 12:44:16,379.379 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:44:16,381.381 INFO    ] Checking for system updates...
[2026-10-28 12:44:16,418.418 INFO    ] 200
[2026-10-28 12:44:16,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:44:16,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:44:16,474.474 INFO    ] No update needed
[2026-10-28 12:44:16,476.476 INFO    ] Checking for camera pi updates...
[2026-10-28 12:44:16,509.509 INFO    ] 200
[2026-10-28 12:44:16,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:44:16,562.562 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:44:16,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:44:16,643.643 INFO    ] No camera update needed
[2026-10-28 12:44:16,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:44:16,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:44:16,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:44:16,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:44:18,698.698 INFO    ] ================================================
[2026-10-28 12:44:18,714.714 INFO    ] Launching Daemon at Wed Oct 28 12:44:18 IST 2026
[2026-10-28 12:44:18,725.725 INFO    ] ================================================
[2026-10-28 12:44:19,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:44:19
[2026-10-28 12:44:19,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:44:20,150.150 INFO    ] Initializing speech engine...
[2026-10-28 12:44:20,174.174 INFO    ] 2026-10-28 12:44:20
[2026-10-28 12:44:20,443.443 INFO    ] 2026-10-28 12:44:20
[2026-10-28 12:44:20,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:44:20,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:44:20,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:44:21,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:44:21,049.049 INFO    ] time= 28/10/2026 12:44:21
[2026-10-28 12:44:21,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:44:21,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:44:21,215.215 INFO    ] No existing commands found in stream
[2026-10-28 12:44:26,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:44:26,233.233 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-28 12:44:27,239.239 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:44:27,242.242 INFO    ] Checking for system updates...
[2026-10-28 12:44:27,277.277 INFO    ] 200
[2026-10-28 12:44:27,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:44:27,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:44:27,334.334 INFO    ] No update needed
[2026-10-28 12:44:27,336.336 INFO    ] Checking for camera pi updates...
[2026-10-28 12:44:27,369.369 INFO    ] 200
[2026-10-28 12:44:27,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:44:27,413.413 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:44:27,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:44:27,506.506 INFO    ] No camera update needed
[2026-10-28 12:44:27,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:44:27,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:44:27,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:44:27,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:44:29,561.561 INFO    ] ================================================
[2026-10-28 12:44:29,577.577 INFO    ] Launching Daemon at Wed Oct 28 12:44:29 IST 2026
[2026-10-28 12:44:29,588.588 INFO    ] ================================================
[2026-10-28 12:44:30,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:44:30
[2026-10-28 12:44:30,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:44:30,988.988 INFO    ] Initializing speech engine...
[2026-10-28 12:44:30,996.996 INFO    ] 2026-10-28 12:44:30
[2026-10-28 12:44:31,279.279 INFO    ] 2026-10-28 12:44:31
[2026-10-28 12:44:31,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:44:31,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:44:31,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:44:31,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:44:31,909.909 INFO    ] time= 28/10/2026 12:44:31
[2026-10-28 12:44:31,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:44:31,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:44:32,087.087 INFO    ] No existing commands found in stream
[2026-10-28 12:44:37,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:44:37,108.108 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-28 12:44:39,885.885 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:44:39,888.888 INFO    ] Checking for system updates...
[2026-10-28 12:44:39,925.925 INFO    ] 200
[2026-10-28 12:44:39,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:44:39,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:44:39,986.986 INFO    ] No update needed
[2026-10-28 12:44:39,988.988 INFO    ] Checking for camera pi updates...
[2026-10-28 12:44:40,024.024 INFO    ] 200
[2026-10-28 12:44:40,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:44:40,067.067 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:44:40,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:44:40,156.156 INFO    ] No camera update needed
[2026-10-28 12:44:40,159.159 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:44:40,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:44:40,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:44:40,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:44:42,210.210 INFO    ] ================================================
[2026-10-28 12:44:42,225.225 INFO    ] Launching Daemon at Wed Oct 28 12:44:42 IST 2026
[2026-10-28 12:44:42,236.236 INFO    ] ================================================
[2026-10-28 12:44:42,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:44:42
[2026-10-28 12:44:43,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:44:43,792.792 INFO    ] Initializing speech engine...
[2026-10-28 12:44:43,799.799 INFO    ] 2026-10-28 12:44:43
[2026-10-28 12:44:44,069.069 INFO    ] 2026-10-28 12:44:44
[2026-10-28 12:44:44,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:44:44,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:44:44,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:44:44,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:44:44,663.663 INFO    ] time= 28/10/2026 12:44:44
[2026-10-28 12:44:44,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:44:44,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:44:44,817.817 INFO    ] No existing commands found in stream
[2026-10-28 12:44:49,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:44:49,851.851 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-28 12:44:53,012.012 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:44:53,015.015 INFO    ] Checking for system updates...
[2026-10-28 12:44:53,051.051 INFO    ] 200
[2026-10-28 12:44:53,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:44:53,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:44:53,110.110 INFO    ] No update needed
[2026-10-28 12:44:53,113.113 INFO    ] Checking for camera pi updates...
[2026-10-28 12:44:53,147.147 INFO    ] 200
[2026-10-28 12:44:53,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:44:53,190.190 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:44:53,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:44:53,378.378 INFO    ] No camera update needed
[2026-10-28 12:44:53,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:44:53,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:44:53,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:44:53,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:44:55,435.435 INFO    ] ================================================
[2026-10-28 12:44:55,450.450 INFO    ] Launching Daemon at Wed Oct 28 12:44:55 IST 2026
[2026-10-28 12:44:55,461.461 INFO    ] ================================================
[2026-10-28 12:44:56,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:44:56
[2026-10-28 12:44:56,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:44:56,863.863 INFO    ] Initializing speech engine...
[2026-10-28 12:44:56,883.883 INFO    ] 2026-10-28 12:44:56
[2026-10-28 12:44:57,133.133 INFO    ] 2026-10-28 12:44:57
[2026-10-28 12:44:57,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:44:57,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:44:57,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:44:57,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:44:57,697.697 INFO    ] time= 28/10/2026 12:44:57
[2026-10-28 12:44:57,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:44:57,745.745 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:44:57,902.902 INFO    ] No existing commands found in stream
[2026-10-28 12:45:02,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:45:02,936.936 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 12:45:03,641.641 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:45:03,648.648 INFO    ] Checking for system updates...
[2026-10-28 12:45:03,692.692 INFO    ] 200
[2026-10-28 12:45:03,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:45:03,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:45:03,759.759 INFO    ] No update needed
[2026-10-28 12:45:03,762.762 INFO    ] Checking for camera pi updates...
[2026-10-28 12:45:03,798.798 INFO    ] 200
[2026-10-28 12:45:03,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:45:03,845.845 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:45:03,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:45:03,945.945 INFO    ] No camera update needed
[2026-10-28 12:45:03,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:45:03,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:45:03,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:45:03,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:45:06,003.003 INFO    ] ================================================
[2026-10-28 12:45:06,018.018 INFO    ] Launching Daemon at Wed Oct 28 12:45:06 IST 2026
[2026-10-28 12:45:06,029.029 INFO    ] ================================================
[2026-10-28 12:45:06,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:45:06
[2026-10-28 12:45:07,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:45:07,457.457 INFO    ] Initializing speech engine...
[2026-10-28 12:45:07,472.472 INFO    ] 2026-10-28 12:45:07
[2026-10-28 12:45:07,754.754 INFO    ] 2026-10-28 12:45:07
[2026-10-28 12:45:07,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:45:08,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:45:08,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:45:08,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:45:08,376.376 INFO    ] time= 28/10/2026 12:45:08
[2026-10-28 12:45:08,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:45:08,402.402 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:45:08,551.551 INFO    ] No existing commands found in stream
[2026-10-28 12:45:13,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:45:13,579.579 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-28 12:45:14,596.596 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:45:14,599.599 INFO    ] Checking for system updates...
[2026-10-28 12:45:14,634.634 INFO    ] 200
[2026-10-28 12:45:14,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:45:14,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:45:14,691.691 INFO    ] No update needed
[2026-10-28 12:45:14,693.693 INFO    ] Checking for camera pi updates...
[2026-10-28 12:45:14,726.726 INFO    ] 200
[2026-10-28 12:45:14,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:45:14,769.769 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:45:14,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:45:14,856.856 INFO    ] No camera update needed
[2026-10-28 12:45:14,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:45:14,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:45:14,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:45:14,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:45:16,912.912 INFO    ] ================================================
[2026-10-28 12:45:16,928.928 INFO    ] Launching Daemon at Wed Oct 28 12:45:16 IST 2026
[2026-10-28 12:45:16,939.939 INFO    ] ================================================
[2026-10-28 12:45:17,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:45:17
[2026-10-28 12:45:18,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:45:18,458.458 INFO    ] Initializing speech engine...
[2026-10-28 12:45:18,480.480 INFO    ] 2026-10-28 12:45:18
[2026-10-28 12:45:18,756.756 INFO    ] 2026-10-28 12:45:18
[2026-10-28 12:45:18,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:45:19,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:45:19,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:45:19,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:45:19,523.523 INFO    ] time= 28/10/2026 12:45:19
[2026-10-28 12:45:19,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:45:19,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:45:19,776.776 INFO    ] No existing commands found in stream
[2026-10-28 12:45:24,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:45:24,817.817 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-28 12:45:26,326.326 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:45:26,329.329 INFO    ] Checking for system updates...
[2026-10-28 12:45:26,366.366 INFO    ] 200
[2026-10-28 12:45:26,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:45:26,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:45:26,425.425 INFO    ] No update needed
[2026-10-28 12:45:26,427.427 INFO    ] Checking for camera pi updates...
[2026-10-28 12:45:26,460.460 INFO    ] 200
[2026-10-28 12:45:26,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:45:26,503.503 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:45:26,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:45:26,597.597 INFO    ] No camera update needed
[2026-10-28 12:45:26,600.600 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:45:26,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:45:26,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:45:26,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:45:28,654.654 INFO    ] ================================================
[2026-10-28 12:45:28,669.669 INFO    ] Launching Daemon at Wed Oct 28 12:45:28 IST 2026
[2026-10-28 12:45:28,680.680 INFO    ] ================================================
[2026-10-28 12:45:29,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:45:29
[2026-10-28 12:45:29,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:45:30,309.309 INFO    ] Initializing speech engine...
[2026-10-28 12:45:30,320.320 INFO    ] 2026-10-28 12:45:30
[2026-10-28 12:45:30,609.609 INFO    ] 2026-10-28 12:45:30
[2026-10-28 12:45:30,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:45:30,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:45:31,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:45:31,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:45:31,319.319 INFO    ] time= 28/10/2026 12:45:31
[2026-10-28 12:45:31,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:45:31,414.414 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:45:31,567.567 INFO    ] No existing commands found in stream
[2026-10-28 12:45:36,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:45:36,595.595 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-28 12:45:39,334.334 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:45:39,337.337 INFO    ] Checking for system updates...
[2026-10-28 12:45:39,373.373 INFO    ] 200
[2026-10-28 12:45:39,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:45:39,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:45:39,436.436 INFO    ] No update needed
[2026-10-28 12:45:39,439.439 INFO    ] Checking for camera pi updates...
[2026-10-28 12:45:39,472.472 INFO    ] 200
[2026-10-28 12:45:39,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:45:39,515.515 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:45:39,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:45:39,597.597 INFO    ] No camera update needed
[2026-10-28 12:45:39,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:45:39,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:45:39,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:45:39,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:45:41,651.651 INFO    ] ================================================
[2026-10-28 12:45:41,666.666 INFO    ] Launching Daemon at Wed Oct 28 12:45:41 IST 2026
[2026-10-28 12:45:41,677.677 INFO    ] ================================================
[2026-10-28 12:45:42,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:45:42
[2026-10-28 12:45:42,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:45:43,120.120 INFO    ] Initializing speech engine...
[2026-10-28 12:45:43,127.127 INFO    ] 2026-10-28 12:45:43
[2026-10-28 12:45:43,422.422 INFO    ] 2026-10-28 12:45:43
[2026-10-28 12:45:43,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:45:43,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:45:43,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:45:44,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:45:44,058.058 INFO    ] time= 28/10/2026 12:45:44
[2026-10-28 12:45:44,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:45:44,090.090 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:45:44,243.243 INFO    ] No existing commands found in stream
[2026-10-28 12:45:49,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:45:49,272.272 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-28 12:45:51,055.055 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:45:51,058.058 INFO    ] Checking for system updates...
[2026-10-28 12:45:51,094.094 INFO    ] 200
[2026-10-28 12:45:51,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:45:51,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:45:51,153.153 INFO    ] No update needed
[2026-10-28 12:45:51,156.156 INFO    ] Checking for camera pi updates...
[2026-10-28 12:45:51,191.191 INFO    ] 200
[2026-10-28 12:45:51,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:45:51,236.236 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:45:51,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:45:51,346.346 INFO    ] No camera update needed
[2026-10-28 12:45:51,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:45:51,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:45:51,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:45:51,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:45:53,404.404 INFO    ] ================================================
[2026-10-28 12:45:53,420.420 INFO    ] Launching Daemon at Wed Oct 28 12:45:53 IST 2026
[2026-10-28 12:45:53,431.431 INFO    ] ================================================
[2026-10-28 12:45:54,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:45:53
[2026-10-28 12:45:54,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:45:54,841.841 INFO    ] Initializing speech engine...
[2026-10-28 12:45:54,849.849 INFO    ] 2026-10-28 12:45:54
[2026-10-28 12:45:55,142.142 INFO    ] 2026-10-28 12:45:55
[2026-10-28 12:45:55,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:45:55,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:45:55,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:45:55,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:45:55,762.762 INFO    ] time= 28/10/2026 12:45:55
[2026-10-28 12:45:55,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:45:55,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:45:55,953.953 INFO    ] No existing commands found in stream
[2026-10-28 12:46:00,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:46:00,971.971 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 12:46:03,357.357 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:46:03,359.359 INFO    ] Checking for system updates...
[2026-10-28 12:46:03,394.394 INFO    ] 200
[2026-10-28 12:46:03,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:46:03,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:46:03,451.451 INFO    ] No update needed
[2026-10-28 12:46:03,453.453 INFO    ] Checking for camera pi updates...
[2026-10-28 12:46:03,487.487 INFO    ] 200
[2026-10-28 12:46:03,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:46:03,533.533 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:46:03,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:46:03,622.622 INFO    ] No camera update needed
[2026-10-28 12:46:03,624.624 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:46:03,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:46:03,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:46:03,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:46:05,678.678 INFO    ] ================================================
[2026-10-28 12:46:05,693.693 INFO    ] Launching Daemon at Wed Oct 28 12:46:05 IST 2026
[2026-10-28 12:46:05,704.704 INFO    ] ================================================
[2026-10-28 12:46:06,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:46:06
[2026-10-28 12:46:06,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:46:07,118.118 INFO    ] Initializing speech engine...
[2026-10-28 12:46:07,123.123 INFO    ] 2026-10-28 12:46:07
[2026-10-28 12:46:07,412.412 INFO    ] 2026-10-28 12:46:07
[2026-10-28 12:46:07,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:46:07,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:46:07,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:46:08,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:46:08,036.036 INFO    ] time= 28/10/2026 12:46:08
[2026-10-28 12:46:08,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:46:08,061.061 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:46:08,202.202 INFO    ] No existing commands found in stream
[2026-10-28 12:46:13,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:46:13,221.221 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 12:46:14,880.880 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:46:14,882.882 INFO    ] Checking for system updates...
[2026-10-28 12:46:14,921.921 INFO    ] 200
[2026-10-28 12:46:14,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:46:14,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:46:14,977.977 INFO    ] No update needed
[2026-10-28 12:46:14,980.980 INFO    ] Checking for camera pi updates...
[2026-10-28 12:46:15,013.013 INFO    ] 200
[2026-10-28 12:46:15,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:46:15,055.055 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:46:15,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:46:15,139.139 INFO    ] No camera update needed
[2026-10-28 12:46:15,141.141 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:46:15,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:46:15,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:46:15,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:46:17,194.194 INFO    ] ================================================
[2026-10-28 12:46:17,209.209 INFO    ] Launching Daemon at Wed Oct 28 12:46:17 IST 2026
[2026-10-28 12:46:17,220.220 INFO    ] ================================================
[2026-10-28 12:46:17,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:46:17
[2026-10-28 12:46:18,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:46:18,754.754 INFO    ] Initializing speech engine...
[2026-10-28 12:46:18,764.764 INFO    ] 2026-10-28 12:46:18
[2026-10-28 12:46:19,019.019 INFO    ] 2026-10-28 12:46:19
[2026-10-28 12:46:19,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:46:19,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:46:19,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:46:19,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:46:19,572.572 INFO    ] time= 28/10/2026 12:46:19
[2026-10-28 12:46:19,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:46:19,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:46:19,745.745 INFO    ] No existing commands found in stream
[2026-10-28 12:46:24,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:46:24,778.778 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-28 12:46:26,090.090 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:46:26,093.093 INFO    ] Checking for system updates...
[2026-10-28 12:46:26,129.129 INFO    ] 200
[2026-10-28 12:46:26,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:46:26,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:46:26,186.186 INFO    ] No update needed
[2026-10-28 12:46:26,189.189 INFO    ] Checking for camera pi updates...
[2026-10-28 12:46:26,222.222 INFO    ] 200
[2026-10-28 12:46:26,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:46:26,264.264 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:46:26,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:46:26,346.346 INFO    ] No camera update needed
[2026-10-28 12:46:26,349.349 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:46:26,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:46:26,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:46:26,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:46:28,400.400 INFO    ] ================================================
[2026-10-28 12:46:28,415.415 INFO    ] Launching Daemon at Wed Oct 28 12:46:28 IST 2026
[2026-10-28 12:46:28,426.426 INFO    ] ================================================
[2026-10-28 12:46:28,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:46:28
[2026-10-28 12:46:29,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:46:29,853.853 INFO    ] Initializing speech engine...
[2026-10-28 12:46:29,860.860 INFO    ] 2026-10-28 12:46:29
[2026-10-28 12:46:30,109.109 INFO    ] 2026-10-28 12:46:30
[2026-10-28 12:46:30,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:46:30,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:46:30,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:46:30,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:46:30,680.680 INFO    ] time= 28/10/2026 12:46:30
[2026-10-28 12:46:30,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:46:30,716.716 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:46:30,901.901 INFO    ] No existing commands found in stream
[2026-10-28 12:46:35,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:46:35,929.929 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 12:46:38,520.520 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:46:38,522.522 INFO    ] Checking for system updates...
[2026-10-28 12:46:38,558.558 INFO    ] 200
[2026-10-28 12:46:38,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:46:38,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:46:38,619.619 INFO    ] No update needed
[2026-10-28 12:46:38,621.621 INFO    ] Checking for camera pi updates...
[2026-10-28 12:46:38,658.658 INFO    ] 200
[2026-10-28 12:46:38,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:46:38,701.701 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:46:38,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:46:38,778.778 INFO    ] No camera update needed
[2026-10-28 12:46:38,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:46:38,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:46:38,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:46:38,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:46:40,835.835 INFO    ] ================================================
[2026-10-28 12:46:40,849.849 INFO    ] Launching Daemon at Wed Oct 28 12:46:40 IST 2026
[2026-10-28 12:46:40,860.860 INFO    ] ================================================
[2026-10-28 12:46:41,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:46:41
[2026-10-28 12:46:42,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:46:42,257.257 INFO    ] Initializing speech engine...
[2026-10-28 12:46:42,266.266 INFO    ] 2026-10-28 12:46:42
[2026-10-28 12:46:42,540.540 INFO    ] 2026-10-28 12:46:42
[2026-10-28 12:46:42,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:46:42,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:46:42,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:46:43,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:46:43,118.118 INFO    ] time= 28/10/2026 12:46:43
[2026-10-28 12:46:43,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:46:43,142.142 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:46:43,275.275 INFO    ] No existing commands found in stream
[2026-10-28 12:46:48,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:46:48,301.301 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-28 12:46:49,917.917 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:46:49,920.920 INFO    ] Checking for system updates...
[2026-10-28 12:46:49,959.959 INFO    ] 200
[2026-10-28 12:46:49,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:46:50,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:46:50,023.023 INFO    ] No update needed
[2026-10-28 12:46:50,026.026 INFO    ] Checking for camera pi updates...
[2026-10-28 12:46:50,059.059 INFO    ] 200
[2026-10-28 12:46:50,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:46:50,107.107 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:46:50,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:46:50,350.350 INFO    ] No camera update needed
[2026-10-28 12:46:50,353.353 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:46:50,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:46:50,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:46:50,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:46:52,405.405 INFO    ] ================================================
[2026-10-28 12:46:52,421.421 INFO    ] Launching Daemon at Wed Oct 28 12:46:52 IST 2026
[2026-10-28 12:46:52,433.433 INFO    ] ================================================
[2026-10-28 12:46:53,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:46:53
[2026-10-28 12:46:53,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:46:53,873.873 INFO    ] Initializing speech engine...
[2026-10-28 12:46:53,893.893 INFO    ] 2026-10-28 12:46:53
[2026-10-28 12:46:54,188.188 INFO    ] 2026-10-28 12:46:54
[2026-10-28 12:46:54,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:46:54,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:46:54,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:46:54,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:46:54,925.925 INFO    ] time= 28/10/2026 12:46:54
[2026-10-28 12:46:54,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:46:55,027.027 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:46:55,190.190 INFO    ] No existing commands found in stream
[2026-10-28 12:47:00,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:47:00,232.232 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-28 12:47:03,505.505 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:47:03,507.507 INFO    ] Checking for system updates...
[2026-10-28 12:47:03,543.543 INFO    ] 200
[2026-10-28 12:47:03,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:47:03,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:47:03,602.602 INFO    ] No update needed
[2026-10-28 12:47:03,604.604 INFO    ] Checking for camera pi updates...
[2026-10-28 12:47:03,642.642 INFO    ] 200
[2026-10-28 12:47:03,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:47:03,685.685 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:47:03,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:47:03,787.787 INFO    ] No camera update needed
[2026-10-28 12:47:03,790.790 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:47:03,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:47:03,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:47:03,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:47:05,843.843 INFO    ] ================================================
[2026-10-28 12:47:05,859.859 INFO    ] Launching Daemon at Wed Oct 28 12:47:05 IST 2026
[2026-10-28 12:47:05,870.870 INFO    ] ================================================
[2026-10-28 12:47:06,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:47:06
[2026-10-28 12:47:07,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:47:07,343.343 INFO    ] Initializing speech engine...
[2026-10-28 12:47:07,355.355 INFO    ] 2026-10-28 12:47:07
[2026-10-28 12:47:07,602.602 INFO    ] 2026-10-28 12:47:07
[2026-10-28 12:47:07,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:47:07,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:47:07,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:47:08,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:47:08,169.169 INFO    ] time= 28/10/2026 12:47:08
[2026-10-28 12:47:08,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:47:08,204.204 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:47:08,325.325 INFO    ] No existing commands found in stream
[2026-10-28 12:47:13,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:47:13,344.344 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-28 12:47:15,957.957 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:47:15,960.960 INFO    ] Checking for system updates...
[2026-10-28 12:47:15,996.996 INFO    ] 200
[2026-10-28 12:47:15,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:47:16,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:47:16,052.052 INFO    ] No update needed
[2026-10-28 12:47:16,055.055 INFO    ] Checking for camera pi updates...
[2026-10-28 12:47:16,096.096 INFO    ] 200
[2026-10-28 12:47:16,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:47:16,143.143 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:47:16,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:47:16,227.227 INFO    ] No camera update needed
[2026-10-28 12:47:16,230.230 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:47:16,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:47:16,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:47:16,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:47:18,285.285 INFO    ] ================================================
[2026-10-28 12:47:18,301.301 INFO    ] Launching Daemon at Wed Oct 28 12:47:18 IST 2026
[2026-10-28 12:47:18,312.312 INFO    ] ================================================
[2026-10-28 12:47:18,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:47:18
[2026-10-28 12:47:19,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:47:19,803.803 INFO    ] Initializing speech engine...
[2026-10-28 12:47:19,826.826 INFO    ] 2026-10-28 12:47:19
[2026-10-28 12:47:20,075.075 INFO    ] 2026-10-28 12:47:20
[2026-10-28 12:47:20,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:47:20,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:47:20,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:47:20,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:47:20,641.641 INFO    ] time= 28/10/2026 12:47:20
[2026-10-28 12:47:20,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:47:20,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:47:20,801.801 INFO    ] No existing commands found in stream
[2026-10-28 12:47:25,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:47:25,824.824 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-28 12:47:28,701.701 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:47:28,704.704 INFO    ] Checking for system updates...
[2026-10-28 12:47:28,744.744 INFO    ] 200
[2026-10-28 12:47:28,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:47:28,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:47:28,809.809 INFO    ] No update needed
[2026-10-28 12:47:28,812.812 INFO    ] Checking for camera pi updates...
[2026-10-28 12:47:28,851.851 INFO    ] 200
[2026-10-28 12:47:28,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:47:28,896.896 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:47:28,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:47:28,987.987 INFO    ] No camera update needed
[2026-10-28 12:47:28,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:47:28,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:47:28,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:47:29,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:47:31,054.054 INFO    ] ================================================
[2026-10-28 12:47:31,069.069 INFO    ] Launching Daemon at Wed Oct 28 12:47:31 IST 2026
[2026-10-28 12:47:31,080.080 INFO    ] ================================================
[2026-10-28 12:47:31,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:47:31
[2026-10-28 12:47:32,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:47:32,564.564 INFO    ] Initializing speech engine...
[2026-10-28 12:47:32,572.572 INFO    ] 2026-10-28 12:47:32
[2026-10-28 12:47:32,877.877 INFO    ] 2026-10-28 12:47:32
[2026-10-28 12:47:32,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:47:33,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:47:33,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:47:33,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:47:33,486.486 INFO    ] time= 28/10/2026 12:47:33
[2026-10-28 12:47:33,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:47:33,517.517 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:47:33,668.668 INFO    ] No existing commands found in stream
[2026-10-28 12:47:38,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:47:38,695.695 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-28 12:47:42,564.564 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:47:42,567.567 INFO    ] Checking for system updates...
[2026-10-28 12:47:42,602.602 INFO    ] 200
[2026-10-28 12:47:42,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:47:42,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:47:42,660.660 INFO    ] No update needed
[2026-10-28 12:47:42,662.662 INFO    ] Checking for camera pi updates...
[2026-10-28 12:47:42,697.697 INFO    ] 200
[2026-10-28 12:47:42,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:47:42,745.745 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:47:42,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:47:42,841.841 INFO    ] No camera update needed
[2026-10-28 12:47:42,844.844 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:47:42,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:47:42,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:47:42,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:47:44,897.897 INFO    ] ================================================
[2026-10-28 12:47:44,912.912 INFO    ] Launching Daemon at Wed Oct 28 12:47:44 IST 2026
[2026-10-28 12:47:44,922.922 INFO    ] ================================================
[2026-10-28 12:47:45,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:47:45
[2026-10-28 12:47:46,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:47:46,347.347 INFO    ] Initializing speech engine...
[2026-10-28 12:47:46,357.357 INFO    ] 2026-10-28 12:47:46
[2026-10-28 12:47:46,605.605 INFO    ] 2026-10-28 12:47:46
[2026-10-28 12:47:46,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:47:46,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:47:46,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:47:47,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:47:47,169.169 INFO    ] time= 28/10/2026 12:47:47
[2026-10-28 12:47:47,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:47:47,198.198 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:47:47,359.359 INFO    ] No existing commands found in stream
[2026-10-28 12:47:52,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:47:52,387.387 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-28 12:47:56,370.370 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:47:56,373.373 INFO    ] Checking for system updates...
[2026-10-28 12:47:56,414.414 INFO    ] 200
[2026-10-28 12:47:56,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:47:56,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:47:56,474.474 INFO    ] No update needed
[2026-10-28 12:47:56,477.477 INFO    ] Checking for camera pi updates...
[2026-10-28 12:47:56,516.516 INFO    ] 200
[2026-10-28 12:47:56,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:47:56,566.566 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:47:56,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:47:56,670.670 INFO    ] No camera update needed
[2026-10-28 12:47:56,672.672 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:47:56,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:47:56,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:47:56,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:47:58,728.728 INFO    ] ================================================
[2026-10-28 12:47:58,743.743 INFO    ] Launching Daemon at Wed Oct 28 12:47:58 IST 2026
[2026-10-28 12:47:58,754.754 INFO    ] ================================================
[2026-10-28 12:47:59,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:47:59
[2026-10-28 12:47:59,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:48:00,159.159 INFO    ] Initializing speech engine...
[2026-10-28 12:48:00,166.166 INFO    ] 2026-10-28 12:48:00
[2026-10-28 12:48:00,469.469 INFO    ] 2026-10-28 12:48:00
[2026-10-28 12:48:00,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:48:00,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:48:00,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:48:01,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:48:01,127.127 INFO    ] time= 28/10/2026 12:48:01
[2026-10-28 12:48:01,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:48:01,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:48:01,329.329 INFO    ] No existing commands found in stream
[2026-10-28 12:48:06,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:48:06,362.362 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-28 12:48:07,278.278 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:48:07,281.281 INFO    ] Checking for system updates...
[2026-10-28 12:48:07,321.321 INFO    ] 200
[2026-10-28 12:48:07,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:48:07,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:48:07,378.378 INFO    ] No update needed
[2026-10-28 12:48:07,381.381 INFO    ] Checking for camera pi updates...
[2026-10-28 12:48:07,414.414 INFO    ] 200
[2026-10-28 12:48:07,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:48:07,463.463 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:48:07,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:48:07,544.544 INFO    ] No camera update needed
[2026-10-28 12:48:07,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:48:07,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:48:07,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:48:07,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:48:09,600.600 INFO    ] ================================================
[2026-10-28 12:48:09,616.616 INFO    ] Launching Daemon at Wed Oct 28 12:48:09 IST 2026
[2026-10-28 12:48:09,627.627 INFO    ] ================================================
[2026-10-28 12:48:10,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:48:10
[2026-10-28 12:48:10,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:48:11,071.071 INFO    ] Initializing speech engine...
[2026-10-28 12:48:11,086.086 INFO    ] 2026-10-28 12:48:11
[2026-10-28 12:48:11,375.375 INFO    ] 2026-10-28 12:48:11
[2026-10-28 12:48:11,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:48:11,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:48:11,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:48:11,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:48:12,006.006 INFO    ] time= 28/10/2026 12:48:11
[2026-10-28 12:48:12,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:48:12,042.042 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:48:12,190.190 INFO    ] No existing commands found in stream
[2026-10-28 12:48:17,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:48:17,208.208 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-28 12:48:20,456.456 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:48:20,459.459 INFO    ] Checking for system updates...
[2026-10-28 12:48:20,499.499 INFO    ] 200
[2026-10-28 12:48:20,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:48:20,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:48:20,557.557 INFO    ] No update needed
[2026-10-28 12:48:20,560.560 INFO    ] Checking for camera pi updates...
[2026-10-28 12:48:20,593.593 INFO    ] 200
[2026-10-28 12:48:20,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:48:20,641.641 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:48:20,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:48:20,724.724 INFO    ] No camera update needed
[2026-10-28 12:48:20,727.727 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:48:20,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:48:20,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:48:20,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:48:22,782.782 INFO    ] ================================================
[2026-10-28 12:48:22,798.798 INFO    ] Launching Daemon at Wed Oct 28 12:48:22 IST 2026
[2026-10-28 12:48:22,809.809 INFO    ] ================================================
[2026-10-28 12:48:23,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:48:23
[2026-10-28 12:48:23,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:48:24,262.262 INFO    ] Initializing speech engine...
[2026-10-28 12:48:24,269.269 INFO    ] 2026-10-28 12:48:24
[2026-10-28 12:48:24,521.521 INFO    ] 2026-10-28 12:48:24
[2026-10-28 12:48:24,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:48:24,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:48:24,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:48:25,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:48:25,215.215 INFO    ] time= 28/10/2026 12:48:25
[2026-10-28 12:48:25,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:48:25,313.313 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:48:25,470.470 INFO    ] No existing commands found in stream
[2026-10-28 12:48:30,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:48:30,509.509 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 12:48:32,852.852 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:48:32,856.856 INFO    ] Checking for system updates...
[2026-10-28 12:48:32,894.894 INFO    ] 200
[2026-10-28 12:48:32,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:48:32,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:48:32,952.952 INFO    ] No update needed
[2026-10-28 12:48:32,955.955 INFO    ] Checking for camera pi updates...
[2026-10-28 12:48:32,995.995 INFO    ] 200
[2026-10-28 12:48:32,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:48:33,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:48:33,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:48:33,126.126 INFO    ] No camera update needed
[2026-10-28 12:48:33,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:48:33,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:48:33,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:48:33,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:48:35,189.189 INFO    ] ================================================
[2026-10-28 12:48:35,206.206 INFO    ] Launching Daemon at Wed Oct 28 12:48:35 IST 2026
[2026-10-28 12:48:35,216.216 INFO    ] ================================================
[2026-10-28 12:48:35,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:48:35
[2026-10-28 12:48:36,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:48:36,878.878 INFO    ] Initializing speech engine...
[2026-10-28 12:48:36,891.891 INFO    ] 2026-10-28 12:48:36
[2026-10-28 12:48:37,206.206 INFO    ] 2026-10-28 12:48:37
[2026-10-28 12:48:37,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:48:37,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:48:37,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:48:37,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:48:37,918.918 INFO    ] time= 28/10/2026 12:48:37
[2026-10-28 12:48:37,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:48:38,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:48:38,154.154 INFO    ] No existing commands found in stream
[2026-10-28 12:48:43,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:48:43,173.173 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-28 12:48:45,973.973 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:48:45,976.976 INFO    ] Checking for system updates...
[2026-10-28 12:48:46,017.017 INFO    ] 200
[2026-10-28 12:48:46,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:48:46,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:48:46,085.085 INFO    ] No update needed
[2026-10-28 12:48:46,088.088 INFO    ] Checking for camera pi updates...
[2026-10-28 12:48:46,123.123 INFO    ] 200
[2026-10-28 12:48:46,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:48:46,167.167 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:48:46,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:48:46,261.261 INFO    ] No camera update needed
[2026-10-28 12:48:46,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:48:46,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:48:46,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:48:46,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:48:48,323.323 INFO    ] ================================================
[2026-10-28 12:48:48,339.339 INFO    ] Launching Daemon at Wed Oct 28 12:48:48 IST 2026
[2026-10-28 12:48:48,351.351 INFO    ] ================================================
[2026-10-28 12:48:48,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:48:48
[2026-10-28 12:48:49,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:48:49,747.747 INFO    ] Initializing speech engine...
[2026-10-28 12:48:49,756.756 INFO    ] 2026-10-28 12:48:49
[2026-10-28 12:48:50,030.030 INFO    ] 2026-10-28 12:48:50
[2026-10-28 12:48:50,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:48:50,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:48:50,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:48:50,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:48:50,602.602 INFO    ] time= 28/10/2026 12:48:50
[2026-10-28 12:48:50,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:48:50,650.650 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:48:50,760.760 INFO    ] No existing commands found in stream
[2026-10-28 12:48:55,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:48:55,787.787 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 12:48:59,292.292 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:48:59,295.295 INFO    ] Checking for system updates...
[2026-10-28 12:48:59,330.330 INFO    ] 200
[2026-10-28 12:48:59,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:48:59,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:48:59,397.397 INFO    ] No update needed
[2026-10-28 12:48:59,399.399 INFO    ] Checking for camera pi updates...
[2026-10-28 12:48:59,432.432 INFO    ] 200
[2026-10-28 12:48:59,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:48:59,475.475 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:48:59,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:48:59,564.564 INFO    ] No camera update needed
[2026-10-28 12:48:59,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:48:59,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:48:59,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:48:59,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:49:01,673.673 INFO    ] ================================================
[2026-10-28 12:49:01,712.712 INFO    ] Launching Daemon at Wed Oct 28 12:49:01 IST 2026
[2026-10-28 12:49:01,732.732 INFO    ] ================================================
[2026-10-28 12:49:02,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:49:02
[2026-10-28 12:49:03,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:49:03,530.530 INFO    ] Initializing speech engine...
[2026-10-28 12:49:03,540.540 INFO    ] 2026-10-28 12:49:03
[2026-10-28 12:49:03,817.817 INFO    ] 2026-10-28 12:49:03
[2026-10-28 12:49:03,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:49:04,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:49:04,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:49:04,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:49:04,560.560 INFO    ] time= 28/10/2026 12:49:04
[2026-10-28 12:49:04,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:49:04,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:49:04,808.808 INFO    ] No existing commands found in stream
[2026-10-28 12:49:09,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:49:09,842.842 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-28 12:49:14,397.397 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:49:14,400.400 INFO    ] Checking for system updates...
[2026-10-28 12:49:14,435.435 INFO    ] 200
[2026-10-28 12:49:14,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:49:14,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:49:14,497.497 INFO    ] No update needed
[2026-10-28 12:49:14,499.499 INFO    ] Checking for camera pi updates...
[2026-10-28 12:49:14,533.533 INFO    ] 200
[2026-10-28 12:49:14,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:49:14,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:49:14,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:49:14,762.762 INFO    ] No camera update needed
[2026-10-28 12:49:14,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:49:14,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:49:14,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:49:14,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:49:16,817.817 INFO    ] ================================================
[2026-10-28 12:49:16,833.833 INFO    ] Launching Daemon at Wed Oct 28 12:49:16 IST 2026
[2026-10-28 12:49:16,844.844 INFO    ] ================================================
[2026-10-28 12:49:17,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:49:17
[2026-10-28 12:49:18,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:49:18,440.440 INFO    ] Initializing speech engine...
[2026-10-28 12:49:18,447.447 INFO    ] 2026-10-28 12:49:18
[2026-10-28 12:49:18,730.730 INFO    ] 2026-10-28 12:49:18
[2026-10-28 12:49:18,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:49:19,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:49:19,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:49:19,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:49:19,448.448 INFO    ] time= 28/10/2026 12:49:19
[2026-10-28 12:49:19,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:49:19,545.545 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:49:19,702.702 INFO    ] No existing commands found in stream
[2026-10-28 12:49:24,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:49:24,725.725 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-28 12:49:29,281.281 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:49:29,285.285 INFO    ] Checking for system updates...
[2026-10-28 12:49:29,322.322 INFO    ] 200
[2026-10-28 12:49:29,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:49:29,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:49:29,380.380 INFO    ] No update needed
[2026-10-28 12:49:29,383.383 INFO    ] Checking for camera pi updates...
[2026-10-28 12:49:29,417.417 INFO    ] 200
[2026-10-28 12:49:29,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:49:29,465.465 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:49:29,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:49:29,554.554 INFO    ] No camera update needed
[2026-10-28 12:49:29,556.556 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:49:29,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:49:29,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:49:29,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:49:31,613.613 INFO    ] ================================================
[2026-10-28 12:49:31,629.629 INFO    ] Launching Daemon at Wed Oct 28 12:49:31 IST 2026
[2026-10-28 12:49:31,640.640 INFO    ] ================================================
[2026-10-28 12:49:32,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:49:32
[2026-10-28 12:49:32,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:49:33,130.130 INFO    ] Initializing speech engine...
[2026-10-28 12:49:33,137.137 INFO    ] 2026-10-28 12:49:33
[2026-10-28 12:49:33,410.410 INFO    ] 2026-10-28 12:49:33
[2026-10-28 12:49:33,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:49:33,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:49:33,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:49:33,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:49:33,979.979 INFO    ] time= 28/10/2026 12:49:33
[2026-10-28 12:49:34,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:49:34,015.015 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:49:34,131.131 INFO    ] No existing commands found in stream
[2026-10-28 12:49:39,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:49:39,164.164 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-28 12:49:41,184.184 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:49:41,187.187 INFO    ] Checking for system updates...
[2026-10-28 12:49:41,237.237 INFO    ] 200
[2026-10-28 12:49:41,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:49:41,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:49:41,300.300 INFO    ] No update needed
[2026-10-28 12:49:41,303.303 INFO    ] Checking for camera pi updates...
[2026-10-28 12:49:41,337.337 INFO    ] 200
[2026-10-28 12:49:41,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:49:41,383.383 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:49:41,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:49:41,466.466 INFO    ] No camera update needed
[2026-10-28 12:49:41,469.469 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:49:41,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:49:41,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:49:41,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:49:43,522.522 INFO    ] ================================================
[2026-10-28 12:49:43,537.537 INFO    ] Launching Daemon at Wed Oct 28 12:49:43 IST 2026
[2026-10-28 12:49:43,548.548 INFO    ] ================================================
[2026-10-28 12:49:44,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:49:44
[2026-10-28 12:49:44,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:49:45,061.061 INFO    ] Initializing speech engine...
[2026-10-28 12:49:45,084.084 INFO    ] 2026-10-28 12:49:45
[2026-10-28 12:49:45,337.337 INFO    ] 2026-10-28 12:49:45
[2026-10-28 12:49:45,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:49:45,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:49:45,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:49:45,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:49:45,948.948 INFO    ] time= 28/10/2026 12:49:45
[2026-10-28 12:49:45,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:49:46,023.023 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:49:46,171.171 INFO    ] No existing commands found in stream
[2026-10-28 12:49:51,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:49:51,204.204 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-28 12:49:52,076.076 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:49:52,078.078 INFO    ] Checking for system updates...
[2026-10-28 12:49:52,114.114 INFO    ] 200
[2026-10-28 12:49:52,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:49:52,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:49:52,171.171 INFO    ] No update needed
[2026-10-28 12:49:52,174.174 INFO    ] Checking for camera pi updates...
[2026-10-28 12:49:52,208.208 INFO    ] 200
[2026-10-28 12:49:52,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:49:52,251.251 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:49:52,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:49:52,345.345 INFO    ] No camera update needed
[2026-10-28 12:49:52,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:49:52,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:49:52,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:49:52,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:49:54,400.400 INFO    ] ================================================
[2026-10-28 12:49:54,416.416 INFO    ] Launching Daemon at Wed Oct 28 12:49:54 IST 2026
[2026-10-28 12:49:54,427.427 INFO    ] ================================================
[2026-10-28 12:49:55,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:49:55
[2026-10-28 12:49:55,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:49:55,890.890 INFO    ] Initializing speech engine...
[2026-10-28 12:49:55,899.899 INFO    ] 2026-10-28 12:49:55
[2026-10-28 12:49:56,168.168 INFO    ] 2026-10-28 12:49:56
[2026-10-28 12:49:56,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:49:56,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:49:56,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:49:56,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:49:56,742.742 INFO    ] time= 28/10/2026 12:49:56
[2026-10-28 12:49:56,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:49:56,789.789 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:49:56,916.916 INFO    ] No existing commands found in stream
[2026-10-28 12:50:01,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:50:01,947.947 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-28 12:50:05,487.487 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:50:05,490.490 INFO    ] Checking for system updates...
[2026-10-28 12:50:05,525.525 INFO    ] 200
[2026-10-28 12:50:05,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:50:05,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:50:05,581.581 INFO    ] No update needed
[2026-10-28 12:50:05,584.584 INFO    ] Checking for camera pi updates...
[2026-10-28 12:50:05,622.622 INFO    ] 200
[2026-10-28 12:50:05,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:50:05,664.664 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:50:05,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:50:05,766.766 INFO    ] No camera update needed
[2026-10-28 12:50:05,769.769 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:50:05,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:50:05,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:50:05,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:50:07,822.822 INFO    ] ================================================
[2026-10-28 12:50:07,837.837 INFO    ] Launching Daemon at Wed Oct 28 12:50:07 IST 2026
[2026-10-28 12:50:07,848.848 INFO    ] ================================================
[2026-10-28 12:50:08,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:50:08
[2026-10-28 12:50:09,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:50:09,281.281 INFO    ] Initializing speech engine...
[2026-10-28 12:50:09,289.289 INFO    ] 2026-10-28 12:50:09
[2026-10-28 12:50:09,588.588 INFO    ] 2026-10-28 12:50:09
[2026-10-28 12:50:09,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:50:09,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:50:09,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:50:10,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:50:10,231.231 INFO    ] time= 28/10/2026 12:50:10
[2026-10-28 12:50:10,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:50:10,252.252 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:50:10,384.384 INFO    ] No existing commands found in stream
[2026-10-28 12:50:15,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:50:15,407.407 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-28 12:50:19,679.679 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:50:19,682.682 INFO    ] Checking for system updates...
[2026-10-28 12:50:19,718.718 INFO    ] 200
[2026-10-28 12:50:19,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:50:19,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:50:19,775.775 INFO    ] No update needed
[2026-10-28 12:50:19,777.777 INFO    ] Checking for camera pi updates...
[2026-10-28 12:50:19,815.815 INFO    ] 200
[2026-10-28 12:50:19,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:50:19,859.859 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:50:19,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:50:19,944.944 INFO    ] No camera update needed
[2026-10-28 12:50:19,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:50:19,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:50:19,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:50:19,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:50:22,002.002 INFO    ] ================================================
[2026-10-28 12:50:22,017.017 INFO    ] Launching Daemon at Wed Oct 28 12:50:22 IST 2026
[2026-10-28 12:50:22,029.029 INFO    ] ================================================
[2026-10-28 12:50:22,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:50:22
[2026-10-28 12:50:23,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:50:23,656.656 INFO    ] Initializing speech engine...
[2026-10-28 12:50:23,664.664 INFO    ] 2026-10-28 12:50:23
[2026-10-28 12:50:23,937.937 INFO    ] 2026-10-28 12:50:23
[2026-10-28 12:50:23,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:50:24,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:50:24,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:50:24,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:50:24,507.507 INFO    ] time= 28/10/2026 12:50:24
[2026-10-28 12:50:24,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:50:24,553.553 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:50:24,721.721 INFO    ] No existing commands found in stream
[2026-10-28 12:50:29,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:50:29,748.748 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-28 12:50:32,206.206 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:50:32,209.209 INFO    ] Checking for system updates...
[2026-10-28 12:50:32,247.247 INFO    ] 200
[2026-10-28 12:50:32,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:50:32,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:50:32,309.309 INFO    ] No update needed
[2026-10-28 12:50:32,312.312 INFO    ] Checking for camera pi updates...
[2026-10-28 12:50:32,348.348 INFO    ] 200
[2026-10-28 12:50:32,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:50:32,399.399 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:50:32,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:50:32,516.516 INFO    ] No camera update needed
[2026-10-28 12:50:32,519.519 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:50:32,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:50:32,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:50:32,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:50:34,575.575 INFO    ] ================================================
[2026-10-28 12:50:34,591.591 INFO    ] Launching Daemon at Wed Oct 28 12:50:34 IST 2026
[2026-10-28 12:50:34,602.602 INFO    ] ================================================
[2026-10-28 12:50:35,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:50:35
[2026-10-28 12:50:35,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:50:36,017.017 INFO    ] Initializing speech engine...
[2026-10-28 12:50:36,026.026 INFO    ] 2026-10-28 12:50:36
[2026-10-28 12:50:36,321.321 INFO    ] 2026-10-28 12:50:36
[2026-10-28 12:50:36,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:50:36,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:50:36,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:50:36,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:50:36,912.912 INFO    ] time= 28/10/2026 12:50:36
[2026-10-28 12:50:36,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:50:36,937.937 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:50:37,123.123 INFO    ] No existing commands found in stream
[2026-10-28 12:50:42,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:50:42,151.151 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-28 12:50:43,438.438 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:50:43,441.441 INFO    ] Checking for system updates...
[2026-10-28 12:50:43,477.477 INFO    ] 200
[2026-10-28 12:50:43,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:50:43,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:50:43,541.541 INFO    ] No update needed
[2026-10-28 12:50:43,544.544 INFO    ] Checking for camera pi updates...
[2026-10-28 12:50:43,577.577 INFO    ] 200
[2026-10-28 12:50:43,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:50:43,624.624 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:50:43,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:50:43,707.707 INFO    ] No camera update needed
[2026-10-28 12:50:43,709.709 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:50:43,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:50:43,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:50:43,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:50:45,763.763 INFO    ] ================================================
[2026-10-28 12:50:45,778.778 INFO    ] Launching Daemon at Wed Oct 28 12:50:45 IST 2026
[2026-10-28 12:50:45,789.789 INFO    ] ================================================
[2026-10-28 12:50:46,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:50:46
[2026-10-28 12:50:46,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:50:47,228.228 INFO    ] Initializing speech engine...
[2026-10-28 12:50:47,240.240 INFO    ] 2026-10-28 12:50:47
[2026-10-28 12:50:47,513.513 INFO    ] 2026-10-28 12:50:47
[2026-10-28 12:50:47,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:50:47,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:50:47,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:50:48,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:50:48,080.080 INFO    ] time= 28/10/2026 12:50:48
[2026-10-28 12:50:48,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:50:48,126.126 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:50:48,325.325 INFO    ] No existing commands found in stream
[2026-10-28 12:50:53,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:50:53,349.349 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-28 12:50:54,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:50:54,898.898 INFO    ] Checking for system updates...
[2026-10-28 12:50:54,934.934 INFO    ] 200
[2026-10-28 12:50:54,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:50:54,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:50:54,991.991 INFO    ] No update needed
[2026-10-28 12:50:54,994.994 INFO    ] Checking for camera pi updates...
[2026-10-28 12:50:55,027.027 INFO    ] 200
[2026-10-28 12:50:55,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:50:55,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:50:55,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:50:55,155.155 INFO    ] No camera update needed
[2026-10-28 12:50:55,158.158 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:50:55,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:50:55,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:50:55,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:50:57,212.212 INFO    ] ================================================
[2026-10-28 12:50:57,228.228 INFO    ] Launching Daemon at Wed Oct 28 12:50:57 IST 2026
[2026-10-28 12:50:57,239.239 INFO    ] ================================================
[2026-10-28 12:50:57,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:50:57
[2026-10-28 12:50:58,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:50:58,726.726 INFO    ] Initializing speech engine...
[2026-10-28 12:50:58,741.741 INFO    ] 2026-10-28 12:50:58
[2026-10-28 12:50:59,016.016 INFO    ] 2026-10-28 12:50:59
[2026-10-28 12:50:59,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:50:59,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:50:59,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:50:59,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:50:59,592.592 INFO    ] time= 28/10/2026 12:50:59
[2026-10-28 12:50:59,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:50:59,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:50:59,750.750 INFO    ] No existing commands found in stream
[2026-10-28 12:51:04,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:51:04,778.778 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 12:51:06,208.208 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:51:06,210.210 INFO    ] Checking for system updates...
[2026-10-28 12:51:06,246.246 INFO    ] 200
[2026-10-28 12:51:06,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:51:06,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:51:06,310.310 INFO    ] No update needed
[2026-10-28 12:51:06,312.312 INFO    ] Checking for camera pi updates...
[2026-10-28 12:51:06,346.346 INFO    ] 200
[2026-10-28 12:51:06,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:51:06,395.395 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:51:06,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:51:06,475.475 INFO    ] No camera update needed
[2026-10-28 12:51:06,478.478 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:51:06,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:51:06,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:51:06,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:51:08,531.531 INFO    ] ================================================
[2026-10-28 12:51:08,547.547 INFO    ] Launching Daemon at Wed Oct 28 12:51:08 IST 2026
[2026-10-28 12:51:08,558.558 INFO    ] ================================================
[2026-10-28 12:51:09,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:51:09
[2026-10-28 12:51:09,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:51:10,126.126 INFO    ] Initializing speech engine...
[2026-10-28 12:51:10,137.137 INFO    ] 2026-10-28 12:51:10
[2026-10-28 12:51:10,451.451 INFO    ] 2026-10-28 12:51:10
[2026-10-28 12:51:10,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:51:10,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:51:10,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:51:11,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:51:11,073.073 INFO    ] time= 28/10/2026 12:51:11
[2026-10-28 12:51:11,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:51:11,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:51:11,368.368 INFO    ] No existing commands found in stream
[2026-10-28 12:51:16,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:51:16,387.387 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 12:51:20,975.975 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:51:20,978.978 INFO    ] Checking for system updates...
[2026-10-28 12:51:21,016.016 INFO    ] 200
[2026-10-28 12:51:21,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:51:21,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:51:21,077.077 INFO    ] No update needed
[2026-10-28 12:51:21,079.079 INFO    ] Checking for camera pi updates...
[2026-10-28 12:51:21,114.114 INFO    ] 200
[2026-10-28 12:51:21,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:51:21,160.160 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:51:21,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:51:21,343.343 INFO    ] No camera update needed
[2026-10-28 12:51:21,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:51:21,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:51:21,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:51:21,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:51:23,402.402 INFO    ] ================================================
[2026-10-28 12:51:23,418.418 INFO    ] Launching Daemon at Wed Oct 28 12:51:23 IST 2026
[2026-10-28 12:51:23,429.429 INFO    ] ================================================
[2026-10-28 12:51:24,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:51:24
[2026-10-28 12:51:24,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:51:24,994.994 INFO    ] Initializing speech engine...
[2026-10-28 12:51:25,001.001 INFO    ] 2026-10-28 12:51:24
[2026-10-28 12:51:25,261.261 INFO    ] 2026-10-28 12:51:25
[2026-10-28 12:51:25,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:51:25,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:51:25,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:51:25,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:51:25,817.817 INFO    ] time= 28/10/2026 12:51:25
[2026-10-28 12:51:25,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:51:25,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:51:25,959.959 INFO    ] No existing commands found in stream
[2026-10-28 12:51:30,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:51:30,982.982 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 12:51:34,441.441 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:51:34,444.444 INFO    ] Checking for system updates...
[2026-10-28 12:51:34,481.481 INFO    ] 200
[2026-10-28 12:51:34,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:51:34,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:51:34,540.540 INFO    ] No update needed
[2026-10-28 12:51:34,543.543 INFO    ] Checking for camera pi updates...
[2026-10-28 12:51:34,577.577 INFO    ] 200
[2026-10-28 12:51:34,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:51:34,622.622 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:51:34,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:51:34,730.730 INFO    ] No camera update needed
[2026-10-28 12:51:34,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:51:34,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:51:34,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:51:34,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:51:36,790.790 INFO    ] ================================================
[2026-10-28 12:51:36,806.806 INFO    ] Launching Daemon at Wed Oct 28 12:51:36 IST 2026
[2026-10-28 12:51:36,822.822 INFO    ] ================================================
[2026-10-28 12:51:37,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:51:37
[2026-10-28 12:51:37,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:51:38,263.263 INFO    ] Initializing speech engine...
[2026-10-28 12:51:38,271.271 INFO    ] 2026-10-28 12:51:38
[2026-10-28 12:51:38,529.529 INFO    ] 2026-10-28 12:51:38
[2026-10-28 12:51:38,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:51:38,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:51:38,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:51:39,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:51:39,072.072 INFO    ] time= 28/10/2026 12:51:39
[2026-10-28 12:51:39,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:51:39,096.096 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:51:39,280.280 INFO    ] No existing commands found in stream
[2026-10-28 12:51:44,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:51:44,313.313 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-28 12:51:46,319.319 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:51:46,322.322 INFO    ] Checking for system updates...
[2026-10-28 12:51:46,357.357 INFO    ] 200
[2026-10-28 12:51:46,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:51:46,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:51:46,414.414 INFO    ] No update needed
[2026-10-28 12:51:46,418.418 INFO    ] Checking for camera pi updates...
[2026-10-28 12:51:46,458.458 INFO    ] 200
[2026-10-28 12:51:46,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:51:46,502.502 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:51:46,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:51:46,572.572 INFO    ] No camera update needed
[2026-10-28 12:51:46,575.575 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:51:46,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:51:46,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:51:46,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:51:48,631.631 INFO    ] ================================================
[2026-10-28 12:51:48,646.646 INFO    ] Launching Daemon at Wed Oct 28 12:51:48 IST 2026
[2026-10-28 12:51:48,656.656 INFO    ] ================================================
[2026-10-28 12:51:49,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:51:49
[2026-10-28 12:51:49,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:51:50,068.068 INFO    ] Initializing speech engine...
[2026-10-28 12:51:50,085.085 INFO    ] 2026-10-28 12:51:50
[2026-10-28 12:51:50,372.372 INFO    ] 2026-10-28 12:51:50
[2026-10-28 12:51:50,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:51:50,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:51:50,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:51:50,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:51:51,002.002 INFO    ] time= 28/10/2026 12:51:50
[2026-10-28 12:51:51,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:51:51,033.033 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:51:51,191.191 INFO    ] No existing commands found in stream
[2026-10-28 12:51:56,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:51:56,208.208 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-28 12:51:59,807.807 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:51:59,809.809 INFO    ] Checking for system updates...
[2026-10-28 12:51:59,845.845 INFO    ] 200
[2026-10-28 12:51:59,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:51:59,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:51:59,904.904 INFO    ] No update needed
[2026-10-28 12:51:59,906.906 INFO    ] Checking for camera pi updates...
[2026-10-28 12:51:59,940.940 INFO    ] 200
[2026-10-28 12:51:59,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:51:59,983.983 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:52:00,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:52:00,075.075 INFO    ] No camera update needed
[2026-10-28 12:52:00,078.078 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:52:00,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:52:00,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:52:00,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:52:02,141.141 INFO    ] ================================================
[2026-10-28 12:52:02,230.230 INFO    ] Launching Daemon at Wed Oct 28 12:52:02 IST 2026
[2026-10-28 12:52:02,246.246 INFO    ] ================================================
[2026-10-28 12:52:02,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:52:02
[2026-10-28 12:52:03,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:52:03,795.795 INFO    ] Initializing speech engine...
[2026-10-28 12:52:03,804.804 INFO    ] 2026-10-28 12:52:03
[2026-10-28 12:52:04,067.067 INFO    ] 2026-10-28 12:52:04
[2026-10-28 12:52:04,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:52:04,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:52:04,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:52:04,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:52:04,658.658 INFO    ] time= 28/10/2026 12:52:04
[2026-10-28 12:52:04,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:52:04,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:52:04,862.862 INFO    ] No existing commands found in stream
[2026-10-28 12:52:09,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:52:09,889.889 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-28 12:52:10,758.758 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:52:10,761.761 INFO    ] Checking for system updates...
[2026-10-28 12:52:10,796.796 INFO    ] 200
[2026-10-28 12:52:10,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:52:10,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:52:10,856.856 INFO    ] No update needed
[2026-10-28 12:52:10,858.858 INFO    ] Checking for camera pi updates...
[2026-10-28 12:52:10,897.897 INFO    ] 200
[2026-10-28 12:52:10,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:52:10,941.941 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:52:11,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:52:11,041.041 INFO    ] No camera update needed
[2026-10-28 12:52:11,043.043 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:52:11,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:52:11,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:52:11,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:52:13,103.103 INFO    ] ================================================
[2026-10-28 12:52:13,118.118 INFO    ] Launching Daemon at Wed Oct 28 12:52:13 IST 2026
[2026-10-28 12:52:13,129.129 INFO    ] ================================================
[2026-10-28 12:52:13,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:52:13
[2026-10-28 12:52:14,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:52:14,553.553 INFO    ] Initializing speech engine...
[2026-10-28 12:52:14,562.562 INFO    ] 2026-10-28 12:52:14
[2026-10-28 12:52:14,807.807 INFO    ] 2026-10-28 12:52:14
[2026-10-28 12:52:14,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:52:15,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:52:15,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:52:15,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:52:15,362.362 INFO    ] time= 28/10/2026 12:52:15
[2026-10-28 12:52:15,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:52:15,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:52:15,534.534 INFO    ] No existing commands found in stream
[2026-10-28 12:52:20,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:52:20,562.562 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-28 12:52:22,837.837 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:52:22,839.839 INFO    ] Checking for system updates...
[2026-10-28 12:52:22,875.875 INFO    ] 200
[2026-10-28 12:52:22,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:52:22,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:52:22,933.933 INFO    ] No update needed
[2026-10-28 12:52:22,936.936 INFO    ] Checking for camera pi updates...
[2026-10-28 12:52:22,970.970 INFO    ] 200
[2026-10-28 12:52:22,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:52:23,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:52:23,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:52:23,092.092 INFO    ] No camera update needed
[2026-10-28 12:52:23,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:52:23,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:52:23,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:52:23,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:52:25,147.147 INFO    ] ================================================
[2026-10-28 12:52:25,163.163 INFO    ] Launching Daemon at Wed Oct 28 12:52:25 IST 2026
[2026-10-28 12:52:25,174.174 INFO    ] ================================================
[2026-10-28 12:52:25,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:52:25
[2026-10-28 12:52:26,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:52:26,618.618 INFO    ] Initializing speech engine...
[2026-10-28 12:52:26,627.627 INFO    ] 2026-10-28 12:52:26
[2026-10-28 12:52:26,873.873 INFO    ] 2026-10-28 12:52:26
[2026-10-28 12:52:26,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:52:27,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:52:27,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:52:27,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:52:27,427.427 INFO    ] time= 28/10/2026 12:52:27
[2026-10-28 12:52:27,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:52:27,480.480 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:52:27,594.594 INFO    ] No existing commands found in stream
[2026-10-28 12:52:32,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:52:32,627.627 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-28 12:52:36,049.049 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:52:36,052.052 INFO    ] Checking for system updates...
[2026-10-28 12:52:36,092.092 INFO    ] 200
[2026-10-28 12:52:36,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:52:36,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:52:36,149.149 INFO    ] No update needed
[2026-10-28 12:52:36,151.151 INFO    ] Checking for camera pi updates...
[2026-10-28 12:52:36,185.185 INFO    ] 200
[2026-10-28 12:52:36,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:52:36,230.230 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:52:36,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:52:36,316.316 INFO    ] No camera update needed
[2026-10-28 12:52:36,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:52:36,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:52:36,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:52:36,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:52:38,372.372 INFO    ] ================================================
[2026-10-28 12:52:38,389.389 INFO    ] Launching Daemon at Wed Oct 28 12:52:38 IST 2026
[2026-10-28 12:52:38,400.400 INFO    ] ================================================
[2026-10-28 12:52:38,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:52:38
[2026-10-28 12:52:39,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:52:39,835.835 INFO    ] Initializing speech engine...
[2026-10-28 12:52:39,840.840 INFO    ] 2026-10-28 12:52:39
[2026-10-28 12:52:40,085.085 INFO    ] 2026-10-28 12:52:40
[2026-10-28 12:52:40,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:52:40,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:52:40,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:52:40,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:52:40,684.684 INFO    ] time= 28/10/2026 12:52:40
[2026-10-28 12:52:40,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:52:40,721.721 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:52:40,884.884 INFO    ] No existing commands found in stream
[2026-10-28 12:52:45,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:52:45,899.899 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-28 12:52:48,384.384 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:52:48,387.387 INFO    ] Checking for system updates...
[2026-10-28 12:52:48,422.422 INFO    ] 200
[2026-10-28 12:52:48,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:52:48,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:52:48,480.480 INFO    ] No update needed
[2026-10-28 12:52:48,482.482 INFO    ] Checking for camera pi updates...
[2026-10-28 12:52:48,516.516 INFO    ] 200
[2026-10-28 12:52:48,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:52:48,563.563 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:52:48,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:52:48,647.647 INFO    ] No camera update needed
[2026-10-28 12:52:48,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:52:48,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:52:48,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:52:48,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:52:50,702.702 INFO    ] ================================================
[2026-10-28 12:52:50,717.717 INFO    ] Launching Daemon at Wed Oct 28 12:52:50 IST 2026
[2026-10-28 12:52:50,728.728 INFO    ] ================================================
[2026-10-28 12:52:51,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:52:51
[2026-10-28 12:52:51,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:52:52,156.156 INFO    ] Initializing speech engine...
[2026-10-28 12:52:52,170.170 INFO    ] 2026-10-28 12:52:52
[2026-10-28 12:52:52,435.435 INFO    ] 2026-10-28 12:52:52
[2026-10-28 12:52:52,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:52:52,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:52:52,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:52:52,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:52:52,993.993 INFO    ] time= 28/10/2026 12:52:52
[2026-10-28 12:52:53,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:52:53,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:52:53,144.144 INFO    ] No existing commands found in stream
[2026-10-28 12:52:58,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:52:58,162.162 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-28 12:53:01,158.158 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:53:01,161.161 INFO    ] Checking for system updates...
[2026-10-28 12:53:01,198.198 INFO    ] 200
[2026-10-28 12:53:01,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:53:01,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:53:01,257.257 INFO    ] No update needed
[2026-10-28 12:53:01,259.259 INFO    ] Checking for camera pi updates...
[2026-10-28 12:53:01,301.301 INFO    ] 200
[2026-10-28 12:53:01,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:53:01,387.387 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:53:01,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:53:01,502.502 INFO    ] No camera update needed
[2026-10-28 12:53:01,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:53:01,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:53:01,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:53:01,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:53:03,582.582 INFO    ] ================================================
[2026-10-28 12:53:03,597.597 INFO    ] Launching Daemon at Wed Oct 28 12:53:03 IST 2026
[2026-10-28 12:53:03,608.608 INFO    ] ================================================
[2026-10-28 12:53:04,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:53:04
[2026-10-28 12:53:04,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:53:05,029.029 INFO    ] Initializing speech engine...
[2026-10-28 12:53:05,038.038 INFO    ] 2026-10-28 12:53:05
[2026-10-28 12:53:05,288.288 INFO    ] 2026-10-28 12:53:05
[2026-10-28 12:53:05,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:53:05,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:53:05,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:53:05,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:53:05,870.870 INFO    ] time= 28/10/2026 12:53:05
[2026-10-28 12:53:05,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:53:05,906.906 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:53:06,021.021 INFO    ] No existing commands found in stream
[2026-10-28 12:53:11,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:53:11,048.048 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 12:53:11,880.880 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:53:11,882.882 INFO    ] Checking for system updates...
[2026-10-28 12:53:11,921.921 INFO    ] 200
[2026-10-28 12:53:11,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:53:11,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:53:11,980.980 INFO    ] No update needed
[2026-10-28 12:53:11,982.982 INFO    ] Checking for camera pi updates...
[2026-10-28 12:53:12,016.016 INFO    ] 200
[2026-10-28 12:53:12,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:53:12,062.062 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:53:12,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:53:12,144.144 INFO    ] No camera update needed
[2026-10-28 12:53:12,147.147 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:53:12,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:53:12,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:53:12,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:53:14,200.200 INFO    ] ================================================
[2026-10-28 12:53:14,216.216 INFO    ] Launching Daemon at Wed Oct 28 12:53:14 IST 2026
[2026-10-28 12:53:14,226.226 INFO    ] ================================================
[2026-10-28 12:53:14,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:53:14
[2026-10-28 12:53:15,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:53:15,681.681 INFO    ] Initializing speech engine...
[2026-10-28 12:53:15,688.688 INFO    ] 2026-10-28 12:53:15
[2026-10-28 12:53:15,949.949 INFO    ] 2026-10-28 12:53:15
[2026-10-28 12:53:15,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:53:16,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:53:16,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:53:16,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:53:16,513.513 INFO    ] time= 28/10/2026 12:53:16
[2026-10-28 12:53:16,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:53:16,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:53:16,692.692 INFO    ] No existing commands found in stream
[2026-10-28 12:53:21,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:53:21,721.721 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 12:53:24,934.934 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:53:24,937.937 INFO    ] Checking for system updates...
[2026-10-28 12:53:24,976.976 INFO    ] 200
[2026-10-28 12:53:24,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:53:25,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:53:25,040.040 INFO    ] No update needed
[2026-10-28 12:53:25,042.042 INFO    ] Checking for camera pi updates...
[2026-10-28 12:53:25,080.080 INFO    ] 200
[2026-10-28 12:53:25,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:53:25,125.125 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:53:25,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:53:25,315.315 INFO    ] No camera update needed
[2026-10-28 12:53:25,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:53:25,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:53:25,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:53:25,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:53:27,373.373 INFO    ] ================================================
[2026-10-28 12:53:27,388.388 INFO    ] Launching Daemon at Wed Oct 28 12:53:27 IST 2026
[2026-10-28 12:53:27,399.399 INFO    ] ================================================
[2026-10-28 12:53:27,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:53:27
[2026-10-28 12:53:28,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:53:28,837.837 INFO    ] Initializing speech engine...
[2026-10-28 12:53:28,846.846 INFO    ] 2026-10-28 12:53:28
[2026-10-28 12:53:29,136.136 INFO    ] 2026-10-28 12:53:29
[2026-10-28 12:53:29,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:53:29,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:53:29,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:53:29,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:53:29,615.615 INFO    ] time= 28/10/2026 12:53:29
[2026-10-28 12:53:29,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:53:29,739.739 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:53:30,028.028 INFO    ] No existing commands found in stream
[2026-10-28 12:53:35,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:53:35,047.047 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-28 12:53:38,121.121 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:53:38,124.124 INFO    ] Checking for system updates...
[2026-10-28 12:53:38,168.168 INFO    ] 200
[2026-10-28 12:53:38,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:53:38,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:53:38,230.230 INFO    ] No update needed
[2026-10-28 12:53:38,232.232 INFO    ] Checking for camera pi updates...
[2026-10-28 12:53:38,269.269 INFO    ] 200
[2026-10-28 12:53:38,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:53:38,317.317 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:53:38,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:53:38,404.404 INFO    ] No camera update needed
[2026-10-28 12:53:38,408.408 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:53:38,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:53:38,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:53:38,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:53:40,465.465 INFO    ] ================================================
[2026-10-28 12:53:40,480.480 INFO    ] Launching Daemon at Wed Oct 28 12:53:40 IST 2026
[2026-10-28 12:53:40,491.491 INFO    ] ================================================
[2026-10-28 12:53:41,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:53:41
[2026-10-28 12:53:41,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:53:42,100.100 INFO    ] Initializing speech engine...
[2026-10-28 12:53:42,108.108 INFO    ] 2026-10-28 12:53:42
[2026-10-28 12:53:42,380.380 INFO    ] 2026-10-28 12:53:42
[2026-10-28 12:53:42,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:53:44,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:53:44,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:53:44,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:53:44,433.433 INFO    ] time= 28/10/2026 12:53:44
[2026-10-28 12:53:44,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:53:44,445.445 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:53:44,559.559 INFO    ] No existing commands found in stream
[2026-10-28 12:53:49,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:53:49,572.572 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-28 12:53:50,881.881 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:53:50,884.884 INFO    ] Checking for system updates...
[2026-10-28 12:53:50,928.928 INFO    ] 200
[2026-10-28 12:53:50,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:53:50,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:53:50,986.986 INFO    ] No update needed
[2026-10-28 12:53:50,988.988 INFO    ] Checking for camera pi updates...
[2026-10-28 12:53:51,028.028 INFO    ] 200
[2026-10-28 12:53:51,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:53:51,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:53:51,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:53:51,157.157 INFO    ] No camera update needed
[2026-10-28 12:53:51,159.159 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:53:51,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:53:51,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:53:51,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:53:53,213.213 INFO    ] ================================================
[2026-10-28 12:53:53,228.228 INFO    ] Launching Daemon at Wed Oct 28 12:53:53 IST 2026
[2026-10-28 12:53:53,238.238 INFO    ] ================================================
[2026-10-28 12:53:53,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:53:53
[2026-10-28 12:53:54,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:53:54,702.702 INFO    ] Initializing speech engine...
[2026-10-28 12:53:54,710.710 INFO    ] 2026-10-28 12:53:54
[2026-10-28 12:53:54,970.970 INFO    ] 2026-10-28 12:53:54
[2026-10-28 12:53:55,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:53:55,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:53:55,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:53:55,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:53:55,526.526 INFO    ] time= 28/10/2026 12:53:55
[2026-10-28 12:53:55,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:53:55,561.561 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:53:55,731.731 INFO    ] No existing commands found in stream
[2026-10-28 12:54:00,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:54:00,765.765 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 12:54:03,860.860 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:54:03,863.863 INFO    ] Checking for system updates...
[2026-10-28 12:54:03,902.902 INFO    ] 200
[2026-10-28 12:54:03,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:54:03,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:54:03,960.960 INFO    ] No update needed
[2026-10-28 12:54:03,962.962 INFO    ] Checking for camera pi updates...
[2026-10-28 12:54:03,996.996 INFO    ] 200
[2026-10-28 12:54:03,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:54:04,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:54:04,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:54:04,148.148 INFO    ] No camera update needed
[2026-10-28 12:54:04,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:54:04,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:54:04,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:54:04,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:54:06,206.206 INFO    ] ================================================
[2026-10-28 12:54:06,223.223 INFO    ] Launching Daemon at Wed Oct 28 12:54:06 IST 2026
[2026-10-28 12:54:06,235.235 INFO    ] ================================================
[2026-10-28 12:54:06,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:54:06
[2026-10-28 12:54:07,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:54:07,727.727 INFO    ] Initializing speech engine...
[2026-10-28 12:54:07,737.737 INFO    ] 2026-10-28 12:54:07
[2026-10-28 12:54:07,996.996 INFO    ] 2026-10-28 12:54:07
[2026-10-28 12:54:08,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:54:08,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:54:08,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:54:08,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:54:08,579.579 INFO    ] time= 28/10/2026 12:54:08
[2026-10-28 12:54:08,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:54:08,617.617 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:54:08,726.726 INFO    ] No existing commands found in stream
[2026-10-28 12:54:13,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:54:13,749.749 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 12:54:16,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:54:16,735.735 INFO    ] Checking for system updates...
[2026-10-28 12:54:16,775.775 INFO    ] 200
[2026-10-28 12:54:16,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:54:16,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:54:16,838.838 INFO    ] No update needed
[2026-10-28 12:54:16,841.841 INFO    ] Checking for camera pi updates...
[2026-10-28 12:54:16,878.878 INFO    ] 200
[2026-10-28 12:54:16,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:54:16,925.925 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:54:17,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:54:17,020.020 INFO    ] No camera update needed
[2026-10-28 12:54:17,023.023 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:54:17,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:54:17,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:54:17,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:54:19,077.077 INFO    ] ================================================
[2026-10-28 12:54:19,091.091 INFO    ] Launching Daemon at Wed Oct 28 12:54:19 IST 2026
[2026-10-28 12:54:19,102.102 INFO    ] ================================================
[2026-10-28 12:54:19,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:54:19
[2026-10-28 12:54:20,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:54:20,565.565 INFO    ] Initializing speech engine...
[2026-10-28 12:54:20,575.575 INFO    ] 2026-10-28 12:54:20
[2026-10-28 12:54:20,838.838 INFO    ] 2026-10-28 12:54:20
[2026-10-28 12:54:20,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:54:21,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:54:21,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:54:21,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:54:21,538.538 INFO    ] time= 28/10/2026 12:54:21
[2026-10-28 12:54:21,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:54:21,641.641 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:54:21,831.831 INFO    ] No existing commands found in stream
[2026-10-28 12:54:26,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:54:26,854.854 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-28 12:54:30,323.323 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:54:30,326.326 INFO    ] Checking for system updates...
[2026-10-28 12:54:30,362.362 INFO    ] 200
[2026-10-28 12:54:30,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:54:30,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:54:30,420.420 INFO    ] No update needed
[2026-10-28 12:54:30,423.423 INFO    ] Checking for camera pi updates...
[2026-10-28 12:54:30,461.461 INFO    ] 200
[2026-10-28 12:54:30,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:54:30,508.508 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:54:30,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:54:30,591.591 INFO    ] No camera update needed
[2026-10-28 12:54:30,594.594 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:54:30,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:54:30,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:54:30,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:54:32,651.651 INFO    ] ================================================
[2026-10-28 12:54:32,670.670 INFO    ] Launching Daemon at Wed Oct 28 12:54:32 IST 2026
[2026-10-28 12:54:32,682.682 INFO    ] ================================================
[2026-10-28 12:54:33,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:54:33
[2026-10-28 12:54:33,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:54:34,094.094 INFO    ] Initializing speech engine...
[2026-10-28 12:54:34,100.100 INFO    ] 2026-10-28 12:54:34
[2026-10-28 12:54:34,402.402 INFO    ] 2026-10-28 12:54:34
[2026-10-28 12:54:34,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:54:34,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:54:34,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:54:34,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:54:35,038.038 INFO    ] time= 28/10/2026 12:54:35
[2026-10-28 12:54:35,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:54:35,065.065 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:54:35,210.210 INFO    ] No existing commands found in stream
[2026-10-28 12:54:40,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:54:40,227.227 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 12:54:42,436.436 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:54:42,439.439 INFO    ] Checking for system updates...
[2026-10-28 12:54:42,474.474 INFO    ] 200
[2026-10-28 12:54:42,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:54:42,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:54:42,531.531 INFO    ] No update needed
[2026-10-28 12:54:42,534.534 INFO    ] Checking for camera pi updates...
[2026-10-28 12:54:42,567.567 INFO    ] 200
[2026-10-28 12:54:42,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:54:42,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:54:42,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:54:42,695.695 INFO    ] No camera update needed
[2026-10-28 12:54:42,697.697 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:54:42,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:54:42,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:54:42,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:54:44,751.751 INFO    ] ================================================
[2026-10-28 12:54:44,766.766 INFO    ] Launching Daemon at Wed Oct 28 12:54:44 IST 2026
[2026-10-28 12:54:44,776.776 INFO    ] ================================================
[2026-10-28 12:54:45,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:54:45
[2026-10-28 12:54:45,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:54:46,190.190 INFO    ] Initializing speech engine...
[2026-10-28 12:54:46,200.200 INFO    ] 2026-10-28 12:54:46
[2026-10-28 12:54:46,449.449 INFO    ] 2026-10-28 12:54:46
[2026-10-28 12:54:46,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:54:46,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:54:46,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:54:47,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:54:47,027.027 INFO    ] time= 28/10/2026 12:54:47
[2026-10-28 12:54:47,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:54:47,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:54:47,196.196 INFO    ] No existing commands found in stream
[2026-10-28 12:54:52,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:54:52,219.219 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-28 12:54:55,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:54:55,368.368 INFO    ] Checking for system updates...
[2026-10-28 12:54:55,409.409 INFO    ] 200
[2026-10-28 12:54:55,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:54:55,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:54:55,477.477 INFO    ] No update needed
[2026-10-28 12:54:55,480.480 INFO    ] Checking for camera pi updates...
[2026-10-28 12:54:55,515.515 INFO    ] 200
[2026-10-28 12:54:55,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:54:55,565.565 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:54:55,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:54:55,619.619 INFO    ] No camera update needed
[2026-10-28 12:54:55,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:54:55,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:54:55,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:54:55,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:54:57,680.680 INFO    ] ================================================
[2026-10-28 12:54:57,696.696 INFO    ] Launching Daemon at Wed Oct 28 12:54:57 IST 2026
[2026-10-28 12:54:57,706.706 INFO    ] ================================================
[2026-10-28 12:54:58,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:54:58
[2026-10-28 12:54:58,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:54:59,184.184 INFO    ] Initializing speech engine...
[2026-10-28 12:54:59,193.193 INFO    ] 2026-10-28 12:54:59
[2026-10-28 12:54:59,440.440 INFO    ] 2026-10-28 12:54:59
[2026-10-28 12:54:59,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:54:59,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:54:59,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:54:59,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:54:59,995.995 INFO    ] time= 28/10/2026 12:54:59
[2026-10-28 12:55:00,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:55:00,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:55:00,159.159 INFO    ] No existing commands found in stream
[2026-10-28 12:55:05,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:55:05,191.191 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 12:55:09,518.518 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:55:09,521.521 INFO    ] Checking for system updates...
[2026-10-28 12:55:09,561.561 INFO    ] 200
[2026-10-28 12:55:09,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:55:09,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:55:09,625.625 INFO    ] No update needed
[2026-10-28 12:55:09,627.627 INFO    ] Checking for camera pi updates...
[2026-10-28 12:55:09,660.660 INFO    ] 200
[2026-10-28 12:55:09,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:55:09,703.703 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:55:09,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:55:09,786.786 INFO    ] No camera update needed
[2026-10-28 12:55:09,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:55:09,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:55:09,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:55:09,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:55:11,841.841 INFO    ] ================================================
[2026-10-28 12:55:11,856.856 INFO    ] Launching Daemon at Wed Oct 28 12:55:11 IST 2026
[2026-10-28 12:55:11,866.866 INFO    ] ================================================
[2026-10-28 12:55:12,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:55:12
[2026-10-28 12:55:13,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:55:13,529.529 INFO    ] Initializing speech engine...
[2026-10-28 12:55:13,541.541 INFO    ] 2026-10-28 12:55:13
[2026-10-28 12:55:13,854.854 INFO    ] 2026-10-28 12:55:13
[2026-10-28 12:55:13,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:55:14,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:55:14,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:55:14,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:55:14,561.561 INFO    ] time= 28/10/2026 12:55:14
[2026-10-28 12:55:14,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:55:14,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:55:14,805.805 INFO    ] No existing commands found in stream
[2026-10-28 12:55:19,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:55:19,819.819 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-28 12:55:24,280.280 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:55:24,283.283 INFO    ] Checking for system updates...
[2026-10-28 12:55:24,320.320 INFO    ] 200
[2026-10-28 12:55:24,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:55:24,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:55:24,388.388 INFO    ] No update needed
[2026-10-28 12:55:24,390.390 INFO    ] Checking for camera pi updates...
[2026-10-28 12:55:24,424.424 INFO    ] 200
[2026-10-28 12:55:24,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:55:24,467.467 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:55:24,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:55:24,568.568 INFO    ] No camera update needed
[2026-10-28 12:55:24,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:55:24,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:55:24,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:55:24,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:55:26,622.622 INFO    ] ================================================
[2026-10-28 12:55:26,637.637 INFO    ] Launching Daemon at Wed Oct 28 12:55:26 IST 2026
[2026-10-28 12:55:26,648.648 INFO    ] ================================================
[2026-10-28 12:55:27,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:55:27
[2026-10-28 12:55:27,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:55:28,039.039 INFO    ] Initializing speech engine...
[2026-10-28 12:55:28,047.047 INFO    ] 2026-10-28 12:55:28
[2026-10-28 12:55:28,339.339 INFO    ] 2026-10-28 12:55:28
[2026-10-28 12:55:28,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:55:28,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:55:28,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:55:28,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:55:28,922.922 INFO    ] time= 28/10/2026 12:55:28
[2026-10-28 12:55:28,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:55:28,967.967 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:55:29,125.125 INFO    ] No existing commands found in stream
[2026-10-28 12:55:34,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:55:34,158.158 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-28 12:55:37,383.383 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:55:37,386.386 INFO    ] Checking for system updates...
[2026-10-28 12:55:37,421.421 INFO    ] 200
[2026-10-28 12:55:37,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:55:37,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:55:37,483.483 INFO    ] No update needed
[2026-10-28 12:55:37,486.486 INFO    ] Checking for camera pi updates...
[2026-10-28 12:55:37,522.522 INFO    ] 200
[2026-10-28 12:55:37,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:55:37,568.568 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:55:37,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:55:37,659.659 INFO    ] No camera update needed
[2026-10-28 12:55:37,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:55:37,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:55:37,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:55:37,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:55:39,714.714 INFO    ] ================================================
[2026-10-28 12:55:39,729.729 INFO    ] Launching Daemon at Wed Oct 28 12:55:39 IST 2026
[2026-10-28 12:55:39,740.740 INFO    ] ================================================
[2026-10-28 12:55:40,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:55:40
[2026-10-28 12:55:40,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:55:41,178.178 INFO    ] Initializing speech engine...
[2026-10-28 12:55:41,188.188 INFO    ] 2026-10-28 12:55:41
[2026-10-28 12:55:41,429.429 INFO    ] 2026-10-28 12:55:41
[2026-10-28 12:55:41,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:55:41,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:55:41,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:55:42,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:55:42,128.128 INFO    ] time= 28/10/2026 12:55:42
[2026-10-28 12:55:42,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:55:42,232.232 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:55:42,488.488 INFO    ] No existing commands found in stream
[2026-10-28 12:55:47,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:55:47,500.500 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 12:55:51,166.166 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:55:51,168.168 INFO    ] Checking for system updates...
[2026-10-28 12:55:51,203.203 INFO    ] 200
[2026-10-28 12:55:51,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:55:51,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:55:51,261.261 INFO    ] No update needed
[2026-10-28 12:55:51,263.263 INFO    ] Checking for camera pi updates...
[2026-10-28 12:55:51,296.296 INFO    ] 200
[2026-10-28 12:55:51,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:55:51,338.338 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:55:51,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:55:51,424.424 INFO    ] No camera update needed
[2026-10-28 12:55:51,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:55:51,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:55:51,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:55:51,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:55:53,482.482 INFO    ] ================================================
[2026-10-28 12:55:53,497.497 INFO    ] Launching Daemon at Wed Oct 28 12:55:53 IST 2026
[2026-10-28 12:55:53,508.508 INFO    ] ================================================
[2026-10-28 12:55:54,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:55:54
[2026-10-28 12:55:54,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:55:54,977.977 INFO    ] Initializing speech engine...
[2026-10-28 12:55:54,987.987 INFO    ] 2026-10-28 12:55:54
[2026-10-28 12:55:55,253.253 INFO    ] 2026-10-28 12:55:55
[2026-10-28 12:55:55,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:55:55,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:55:55,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:55:55,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:55:55,879.879 INFO    ] time= 28/10/2026 12:55:55
[2026-10-28 12:55:55,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:55:55,977.977 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:55:56,109.109 INFO    ] No existing commands found in stream
[2026-10-28 12:56:01,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:56:01,137.137 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-28 12:56:03,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:56:03,614.614 INFO    ] Checking for system updates...
[2026-10-28 12:56:03,650.650 INFO    ] 200
[2026-10-28 12:56:03,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:56:03,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:56:03,711.711 INFO    ] No update needed
[2026-10-28 12:56:03,714.714 INFO    ] Checking for camera pi updates...
[2026-10-28 12:56:03,748.748 INFO    ] 200
[2026-10-28 12:56:03,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:56:03,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:56:03,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:56:03,877.877 INFO    ] No camera update needed
[2026-10-28 12:56:03,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:56:03,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:56:03,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:56:03,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:56:05,932.932 INFO    ] ================================================
[2026-10-28 12:56:05,946.946 INFO    ] Launching Daemon at Wed Oct 28 12:56:05 IST 2026
[2026-10-28 12:56:05,957.957 INFO    ] ================================================
[2026-10-28 12:56:06,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:56:06
[2026-10-28 12:56:07,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:56:07,492.492 INFO    ] Initializing speech engine...
[2026-10-28 12:56:07,499.499 INFO    ] 2026-10-28 12:56:07
[2026-10-28 12:56:07,746.746 INFO    ] 2026-10-28 12:56:07
[2026-10-28 12:56:07,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:56:08,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:56:08,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:56:08,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:56:08,350.350 INFO    ] time= 28/10/2026 12:56:08
[2026-10-28 12:56:08,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:56:08,425.425 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:56:08,560.560 INFO    ] No existing commands found in stream
[2026-10-28 12:56:13,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:56:13,582.582 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-28 12:56:15,619.619 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:56:15,621.621 INFO    ] Checking for system updates...
[2026-10-28 12:56:15,660.660 INFO    ] 200
[2026-10-28 12:56:15,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:56:15,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:56:15,724.724 INFO    ] No update needed
[2026-10-28 12:56:15,726.726 INFO    ] Checking for camera pi updates...
[2026-10-28 12:56:15,763.763 INFO    ] 200
[2026-10-28 12:56:15,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:56:15,806.806 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:56:15,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:56:15,907.907 INFO    ] No camera update needed
[2026-10-28 12:56:15,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:56:15,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:56:15,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:56:15,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:56:17,961.961 INFO    ] ================================================
[2026-10-28 12:56:17,976.976 INFO    ] Launching Daemon at Wed Oct 28 12:56:17 IST 2026
[2026-10-28 12:56:17,987.987 INFO    ] ================================================
[2026-10-28 12:56:18,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:56:18
[2026-10-28 12:56:19,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:56:19,441.441 INFO    ] Initializing speech engine...
[2026-10-28 12:56:19,449.449 INFO    ] 2026-10-28 12:56:19
[2026-10-28 12:56:19,711.711 INFO    ] 2026-10-28 12:56:19
[2026-10-28 12:56:19,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:56:20,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:56:20,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:56:20,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:56:20,249.249 INFO    ] time= 28/10/2026 12:56:20
[2026-10-28 12:56:20,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:56:20,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:56:20,404.404 INFO    ] No existing commands found in stream
[2026-10-28 12:56:25,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:56:25,418.418 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-28 12:56:26,442.442 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:56:26,445.445 INFO    ] Checking for system updates...
[2026-10-28 12:56:26,480.480 INFO    ] 200
[2026-10-28 12:56:26,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:56:26,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:56:26,538.538 INFO    ] No update needed
[2026-10-28 12:56:26,540.540 INFO    ] Checking for camera pi updates...
[2026-10-28 12:56:26,573.573 INFO    ] 200
[2026-10-28 12:56:26,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:56:26,621.621 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:56:26,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:56:26,708.708 INFO    ] No camera update needed
[2026-10-28 12:56:26,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:56:26,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:56:26,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:56:26,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:56:28,763.763 INFO    ] ================================================
[2026-10-28 12:56:28,778.778 INFO    ] Launching Daemon at Wed Oct 28 12:56:28 IST 2026
[2026-10-28 12:56:28,788.788 INFO    ] ================================================
[2026-10-28 12:56:29,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:56:29
[2026-10-28 12:56:30,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:56:30,392.392 INFO    ] Initializing speech engine...
[2026-10-28 12:56:30,405.405 INFO    ] 2026-10-28 12:56:30
[2026-10-28 12:56:30,689.689 INFO    ] 2026-10-28 12:56:30
[2026-10-28 12:56:30,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:56:31,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:56:31,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:56:31,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:56:31,487.487 INFO    ] time= 28/10/2026 12:56:31
[2026-10-28 12:56:31,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:56:31,626.626 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:56:31,800.800 INFO    ] No existing commands found in stream
[2026-10-28 12:56:36,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:56:36,836.836 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-28 12:56:39,106.106 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:56:39,109.109 INFO    ] Checking for system updates...
[2026-10-28 12:56:39,150.150 INFO    ] 200
[2026-10-28 12:56:39,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:56:39,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:56:39,213.213 INFO    ] No update needed
[2026-10-28 12:56:39,216.216 INFO    ] Checking for camera pi updates...
[2026-10-28 12:56:39,254.254 INFO    ] 200
[2026-10-28 12:56:39,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:56:39,307.307 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:56:39,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:56:39,405.405 INFO    ] No camera update needed
[2026-10-28 12:56:39,408.408 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:56:39,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:56:39,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:56:39,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:56:41,463.463 INFO    ] ================================================
[2026-10-28 12:56:41,478.478 INFO    ] Launching Daemon at Wed Oct 28 12:56:41 IST 2026
[2026-10-28 12:56:41,489.489 INFO    ] ================================================
[2026-10-28 12:56:42,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:56:42
[2026-10-28 12:56:42,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:56:43,047.047 INFO    ] Initializing speech engine...
[2026-10-28 12:56:43,053.053 INFO    ] 2026-10-28 12:56:43
[2026-10-28 12:56:43,325.325 INFO    ] 2026-10-28 12:56:43
[2026-10-28 12:56:43,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:56:43,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:56:43,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:56:43,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:56:43,876.876 INFO    ] time= 28/10/2026 12:56:43
[2026-10-28 12:56:43,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:56:43,924.924 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:56:44,044.044 INFO    ] No existing commands found in stream
[2026-10-28 12:56:49,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:56:49,078.078 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-28 12:56:52,799.799 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:56:52,801.801 INFO    ] Checking for system updates...
[2026-10-28 12:56:52,837.837 INFO    ] 200
[2026-10-28 12:56:52,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:56:52,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:56:52,901.901 INFO    ] No update needed
[2026-10-28 12:56:52,903.903 INFO    ] Checking for camera pi updates...
[2026-10-28 12:56:52,940.940 INFO    ] 200
[2026-10-28 12:56:52,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:56:52,988.988 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:56:53,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:56:53,089.089 INFO    ] No camera update needed
[2026-10-28 12:56:53,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:56:53,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:56:53,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:56:53,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:56:55,144.144 INFO    ] ================================================
[2026-10-28 12:56:55,159.159 INFO    ] Launching Daemon at Wed Oct 28 12:56:55 IST 2026
[2026-10-28 12:56:55,169.169 INFO    ] ================================================
[2026-10-28 12:56:55,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:56:55
[2026-10-28 12:56:56,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:56:56,587.587 INFO    ] Initializing speech engine...
[2026-10-28 12:56:56,596.596 INFO    ] 2026-10-28 12:56:56
[2026-10-28 12:56:56,850.850 INFO    ] 2026-10-28 12:56:56
[2026-10-28 12:56:56,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:56:57,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:56:57,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:56:57,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:56:57,399.399 INFO    ] time= 28/10/2026 12:56:57
[2026-10-28 12:56:57,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:56:57,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:56:57,579.579 INFO    ] No existing commands found in stream
[2026-10-28 12:57:02,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:57:02,589.589 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-28 12:57:05,134.134 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:57:05,137.137 INFO    ] Checking for system updates...
[2026-10-28 12:57:05,172.172 INFO    ] 200
[2026-10-28 12:57:05,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:57:05,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:57:05,231.231 INFO    ] No update needed
[2026-10-28 12:57:05,233.233 INFO    ] Checking for camera pi updates...
[2026-10-28 12:57:05,270.270 INFO    ] 200
[2026-10-28 12:57:05,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:57:05,312.312 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:57:05,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:57:05,400.400 INFO    ] No camera update needed
[2026-10-28 12:57:05,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:57:05,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:57:05,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:57:05,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:57:07,457.457 INFO    ] ================================================
[2026-10-28 12:57:07,471.471 INFO    ] Launching Daemon at Wed Oct 28 12:57:07 IST 2026
[2026-10-28 12:57:07,482.482 INFO    ] ================================================
[2026-10-28 12:57:08,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:57:08
[2026-10-28 12:57:08,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:57:08,936.936 INFO    ] Initializing speech engine...
[2026-10-28 12:57:08,942.942 INFO    ] 2026-10-28 12:57:08
[2026-10-28 12:57:09,206.206 INFO    ] 2026-10-28 12:57:09
[2026-10-28 12:57:09,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:57:09,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:57:09,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:57:09,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:57:09,839.839 INFO    ] time= 28/10/2026 12:57:09
[2026-10-28 12:57:09,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:57:09,863.863 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:57:10,013.013 INFO    ] No existing commands found in stream
[2026-10-28 12:57:15,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:57:15,031.031 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-28 12:57:17,614.614 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:57:17,617.617 INFO    ] Checking for system updates...
[2026-10-28 12:57:17,656.656 INFO    ] 200
[2026-10-28 12:57:17,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:57:17,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:57:17,713.713 INFO    ] No update needed
[2026-10-28 12:57:17,715.715 INFO    ] Checking for camera pi updates...
[2026-10-28 12:57:17,752.752 INFO    ] 200
[2026-10-28 12:57:17,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:57:17,795.795 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:57:17,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:57:17,881.881 INFO    ] No camera update needed
[2026-10-28 12:57:17,883.883 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:57:17,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:57:17,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:57:17,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:57:19,937.937 INFO    ] ================================================
[2026-10-28 12:57:19,951.951 INFO    ] Launching Daemon at Wed Oct 28 12:57:19 IST 2026
[2026-10-28 12:57:19,962.962 INFO    ] ================================================
[2026-10-28 12:57:20,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:57:20
[2026-10-28 12:57:21,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:57:21,375.375 INFO    ] Initializing speech engine...
[2026-10-28 12:57:21,388.388 INFO    ] 2026-10-28 12:57:21
[2026-10-28 12:57:21,650.650 INFO    ] 2026-10-28 12:57:21
[2026-10-28 12:57:21,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:57:21,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:57:21,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:57:22,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:57:22,252.252 INFO    ] time= 28/10/2026 12:57:22
[2026-10-28 12:57:22,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:57:22,318.318 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:57:22,459.459 INFO    ] No existing commands found in stream
[2026-10-28 12:57:27,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:57:27,478.478 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 12:57:32,000.000 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:57:32,004.004 INFO    ] Checking for system updates...
[2026-10-28 12:57:32,049.049 INFO    ] 200
[2026-10-28 12:57:32,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:57:32,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:57:32,122.122 INFO    ] No update needed
[2026-10-28 12:57:32,124.124 INFO    ] Checking for camera pi updates...
[2026-10-28 12:57:32,165.165 INFO    ] 200
[2026-10-28 12:57:32,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:57:32,214.214 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:57:32,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:57:32,333.333 INFO    ] No camera update needed
[2026-10-28 12:57:32,336.336 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:57:32,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:57:32,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:57:32,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:57:34,392.392 INFO    ] ================================================
[2026-10-28 12:57:34,408.408 INFO    ] Launching Daemon at Wed Oct 28 12:57:34 IST 2026
[2026-10-28 12:57:34,418.418 INFO    ] ================================================
[2026-10-28 12:57:34,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:57:34
[2026-10-28 12:57:35,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:57:35,825.825 INFO    ] Initializing speech engine...
[2026-10-28 12:57:35,832.832 INFO    ] 2026-10-28 12:57:35
[2026-10-28 12:57:36,133.133 INFO    ] 2026-10-28 12:57:36
[2026-10-28 12:57:36,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:57:36,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:57:36,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:57:36,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:57:36,771.771 INFO    ] time= 28/10/2026 12:57:36
[2026-10-28 12:57:36,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:57:36,795.795 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:57:36,939.939 INFO    ] No existing commands found in stream
[2026-10-28 12:57:41,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:57:41,958.958 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-28 12:57:44,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:57:44,402.402 INFO    ] Checking for system updates...
[2026-10-28 12:57:44,437.437 INFO    ] 200
[2026-10-28 12:57:44,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:57:44,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:57:44,495.495 INFO    ] No update needed
[2026-10-28 12:57:44,497.497 INFO    ] Checking for camera pi updates...
[2026-10-28 12:57:44,530.530 INFO    ] 200
[2026-10-28 12:57:44,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:57:44,577.577 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:57:44,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:57:44,753.753 INFO    ] No camera update needed
[2026-10-28 12:57:44,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:57:44,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:57:44,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:57:44,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:57:46,807.807 INFO    ] ================================================
[2026-10-28 12:57:46,822.822 INFO    ] Launching Daemon at Wed Oct 28 12:57:46 IST 2026
[2026-10-28 12:57:46,832.832 INFO    ] ================================================
[2026-10-28 12:57:47,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:57:47
[2026-10-28 12:57:48,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:57:48,456.456 INFO    ] Initializing speech engine...
[2026-10-28 12:57:48,467.467 INFO    ] 2026-10-28 12:57:48
[2026-10-28 12:57:48,766.766 INFO    ] 2026-10-28 12:57:48
[2026-10-28 12:57:48,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:57:49,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:57:49,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:57:49,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:57:49,497.497 INFO    ] time= 28/10/2026 12:57:49
[2026-10-28 12:57:49,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:57:49,585.585 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:57:49,717.717 INFO    ] No existing commands found in stream
[2026-10-28 12:57:54,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:57:54,750.750 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-28 12:57:57,038.038 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:57:57,041.041 INFO    ] Checking for system updates...
[2026-10-28 12:57:57,080.080 INFO    ] 200
[2026-10-28 12:57:57,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:57:57,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:57:57,144.144 INFO    ] No update needed
[2026-10-28 12:57:57,147.147 INFO    ] Checking for camera pi updates...
[2026-10-28 12:57:57,180.180 INFO    ] 200
[2026-10-28 12:57:57,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:57:57,227.227 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:57:57,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:57:57,313.313 INFO    ] No camera update needed
[2026-10-28 12:57:57,315.315 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:57:57,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:57:57,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:57:57,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:57:59,368.368 INFO    ] ================================================
[2026-10-28 12:57:59,383.383 INFO    ] Launching Daemon at Wed Oct 28 12:57:59 IST 2026
[2026-10-28 12:57:59,393.393 INFO    ] ================================================
[2026-10-28 12:57:59,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:57:59
[2026-10-28 12:58:00,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:58:00,797.797 INFO    ] Initializing speech engine...
[2026-10-28 12:58:00,815.815 INFO    ] 2026-10-28 12:58:00
[2026-10-28 12:58:01,060.060 INFO    ] 2026-10-28 12:58:01
[2026-10-28 12:58:01,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:58:01,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:58:01,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:58:01,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:58:01,618.618 INFO    ] time= 28/10/2026 12:58:01
[2026-10-28 12:58:01,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:58:01,641.641 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:58:01,734.734 INFO    ] No existing commands found in stream
[2026-10-28 12:58:06,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:58:06,747.747 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-28 12:58:08,724.724 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 12:58:08,727.727 INFO    ] Checking for system updates...
[2026-10-28 12:58:08,767.767 INFO    ] 200
[2026-10-28 12:58:08,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:58:08,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:58:08,831.831 INFO    ] No update needed
[2026-10-28 12:58:08,833.833 INFO    ] Checking for camera pi updates...
[2026-10-28 12:58:08,866.866 INFO    ] 200
[2026-10-28 12:58:08,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:58:08,909.909 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:58:08,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:58:08,993.993 INFO    ] No camera update needed
[2026-10-28 12:58:08,995.995 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:58:08,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:58:09,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:58:09,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:58:11,050.050 INFO    ] ================================================
[2026-10-28 12:58:11,065.065 INFO    ] Launching Daemon at Wed Oct 28 12:58:11 IST 2026
[2026-10-28 12:58:11,075.075 INFO    ] ================================================
[2026-10-28 12:58:11,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:58:11
[2026-10-28 12:58:12,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:58:12,491.491 INFO    ] Initializing speech engine...
[2026-10-28 12:58:12,516.516 INFO    ] 2026-10-28 12:58:12
[2026-10-28 12:58:12,790.790 INFO    ] 2026-10-28 12:58:12
[2026-10-28 12:58:12,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:58:13,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:58:13,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:58:13,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:58:13,417.417 INFO    ] time= 28/10/2026 12:58:13
[2026-10-28 12:58:13,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:58:13,441.441 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:58:13,573.573 INFO    ] No existing commands found in stream
[2026-10-28 12:58:18,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:58:18,601.601 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-28 12:58:21,097.097 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:58:21,100.100 INFO    ] Checking for system updates...
[2026-10-28 12:58:21,136.136 INFO    ] 200
[2026-10-28 12:58:21,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:58:21,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:58:21,195.195 INFO    ] No update needed
[2026-10-28 12:58:21,197.197 INFO    ] Checking for camera pi updates...
[2026-10-28 12:58:21,234.234 INFO    ] 200
[2026-10-28 12:58:21,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:58:21,277.277 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:58:21,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 12:58:21,367.367 INFO    ] No camera update needed
[2026-10-28 12:58:21,370.370 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:58:21,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:58:21,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:58:21,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:58:23,425.425 INFO    ] ================================================
[2026-10-28 12:58:23,440.440 INFO    ] Launching Daemon at Wed Oct 28 12:58:23 IST 2026
[2026-10-28 12:58:23,451.451 INFO    ] ================================================
[2026-10-28 12:58:24,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:58:24
[2026-10-28 12:58:24,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:58:24,978.978 INFO    ] Initializing speech engine...
[2026-10-28 12:58:24,985.985 INFO    ] 2026-10-28 12:58:24
[2026-10-28 12:58:25,244.244 INFO    ] 2026-10-28 12:58:25
[2026-10-28 12:58:25,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:58:25,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:58:25,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:58:25,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:58:25,787.787 INFO    ] time= 28/10/2026 12:58:25
[2026-10-28 12:58:25,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:58:25,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:58:25,994.994 INFO    ] No existing commands found in stream
[2026-10-28 12:58:31,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:58:31,027.027 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-28 12:58:32,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 12:58:32,862.862 INFO    ] Checking for system updates...
[2026-10-28 12:58:32,902.902 INFO    ] 200
[2026-10-28 12:58:32,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:58:32,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:58:32,959.959 INFO    ] No update needed
[2026-10-28 12:58:32,962.962 INFO    ] Checking for camera pi updates...
[2026-10-28 12:58:33,000.000 INFO    ] 200
[2026-10-28 12:58:33,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:58:33,045.045 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:58:33,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:58:33,136.136 INFO    ] No camera update needed
[2026-10-28 12:58:33,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:58:33,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:58:33,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:58:33,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:58:35,192.192 INFO    ] ================================================
[2026-10-28 12:58:35,208.208 INFO    ] Launching Daemon at Wed Oct 28 12:58:35 IST 2026
[2026-10-28 12:58:35,219.219 INFO    ] ================================================
[2026-10-28 12:58:35,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:58:35
[2026-10-28 12:58:36,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:58:36,851.851 INFO    ] Initializing speech engine...
[2026-10-28 12:58:36,861.861 INFO    ] 2026-10-28 12:58:36
[2026-10-28 12:58:37,172.172 INFO    ] 2026-10-28 12:58:37
[2026-10-28 12:58:37,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:58:37,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:58:37,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:58:37,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:58:37,881.881 INFO    ] time= 28/10/2026 12:58:37
[2026-10-28 12:58:37,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:58:37,989.989 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:58:38,117.117 INFO    ] No existing commands found in stream
[2026-10-28 12:58:43,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:58:43,139.139 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-28 12:58:44,179.179 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:58:44,182.182 INFO    ] Checking for system updates...
[2026-10-28 12:58:44,223.223 INFO    ] 200
[2026-10-28 12:58:44,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:58:44,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:58:44,290.290 INFO    ] No update needed
[2026-10-28 12:58:44,293.293 INFO    ] Checking for camera pi updates...
[2026-10-28 12:58:44,331.331 INFO    ] 200
[2026-10-28 12:58:44,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:58:44,375.375 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:58:44,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:58:44,460.460 INFO    ] No camera update needed
[2026-10-28 12:58:44,463.463 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:58:44,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:58:44,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:58:44,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:58:46,518.518 INFO    ] ================================================
[2026-10-28 12:58:46,534.534 INFO    ] Launching Daemon at Wed Oct 28 12:58:46 IST 2026
[2026-10-28 12:58:46,545.545 INFO    ] ================================================
[2026-10-28 12:58:47,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:58:47
[2026-10-28 12:58:47,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:58:47,988.988 INFO    ] Initializing speech engine...
[2026-10-28 12:58:47,997.997 INFO    ] 2026-10-28 12:58:47
[2026-10-28 12:58:48,295.295 INFO    ] 2026-10-28 12:58:48
[2026-10-28 12:58:48,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:58:48,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:58:48,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:58:48,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:58:48,882.882 INFO    ] time= 28/10/2026 12:58:48
[2026-10-28 12:58:48,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:58:48,943.943 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:58:49,113.113 INFO    ] No existing commands found in stream
[2026-10-28 12:58:54,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:58:54,154.154 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-28 12:58:55,237.237 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:58:55,240.240 INFO    ] Checking for system updates...
[2026-10-28 12:58:55,276.276 INFO    ] 200
[2026-10-28 12:58:55,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:58:55,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:58:55,339.339 INFO    ] No update needed
[2026-10-28 12:58:55,342.342 INFO    ] Checking for camera pi updates...
[2026-10-28 12:58:55,375.375 INFO    ] 200
[2026-10-28 12:58:55,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:58:55,426.426 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:58:55,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:58:55,527.527 INFO    ] No camera update needed
[2026-10-28 12:58:55,530.530 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:58:55,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:58:55,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:58:55,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:58:57,583.583 INFO    ] ================================================
[2026-10-28 12:58:57,599.599 INFO    ] Launching Daemon at Wed Oct 28 12:58:57 IST 2026
[2026-10-28 12:58:57,610.610 INFO    ] ================================================
[2026-10-28 12:58:58,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:58:58
[2026-10-28 12:58:58,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:58:59,231.231 INFO    ] Initializing speech engine...
[2026-10-28 12:58:59,243.243 INFO    ] 2026-10-28 12:58:59
[2026-10-28 12:58:59,493.493 INFO    ] 2026-10-28 12:58:59
[2026-10-28 12:58:59,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:58:59,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:58:59,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:59:00,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:59:00,060.060 INFO    ] time= 28/10/2026 12:59:00
[2026-10-28 12:59:00,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:59:00,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:59:00,215.215 INFO    ] No existing commands found in stream
[2026-10-28 12:59:05,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:59:05,232.232 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-28 12:59:09,519.519 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 12:59:09,522.522 INFO    ] Checking for system updates...
[2026-10-28 12:59:09,560.560 INFO    ] 200
[2026-10-28 12:59:09,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:59:09,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:59:09,617.617 INFO    ] No update needed
[2026-10-28 12:59:09,619.619 INFO    ] Checking for camera pi updates...
[2026-10-28 12:59:09,653.653 INFO    ] 200
[2026-10-28 12:59:09,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:59:09,696.696 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:59:09,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:59:09,772.772 INFO    ] No camera update needed
[2026-10-28 12:59:09,774.774 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:59:09,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:59:09,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:59:09,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:59:11,827.827 INFO    ] ================================================
[2026-10-28 12:59:11,842.842 INFO    ] Launching Daemon at Wed Oct 28 12:59:11 IST 2026
[2026-10-28 12:59:11,853.853 INFO    ] ================================================
[2026-10-28 12:59:12,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:59:12
[2026-10-28 12:59:13,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:59:13,267.267 INFO    ] Initializing speech engine...
[2026-10-28 12:59:13,283.283 INFO    ] 2026-10-28 12:59:13
[2026-10-28 12:59:13,560.560 INFO    ] 2026-10-28 12:59:13
[2026-10-28 12:59:13,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:59:13,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:59:13,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:59:14,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:59:14,163.163 INFO    ] time= 28/10/2026 12:59:14
[2026-10-28 12:59:14,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:59:14,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:59:14,343.343 INFO    ] No existing commands found in stream
[2026-10-28 12:59:19,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:59:19,359.359 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 12:59:21,959.959 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 12:59:21,962.962 INFO    ] Checking for system updates...
[2026-10-28 12:59:21,997.997 INFO    ] 200
[2026-10-28 12:59:22,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:59:22,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:59:22,054.054 INFO    ] No update needed
[2026-10-28 12:59:22,057.057 INFO    ] Checking for camera pi updates...
[2026-10-28 12:59:22,089.089 INFO    ] 200
[2026-10-28 12:59:22,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:59:22,132.132 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:59:22,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:59:22,240.240 INFO    ] No camera update needed
[2026-10-28 12:59:22,243.243 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:59:22,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:59:22,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:59:22,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:59:24,297.297 INFO    ] ================================================
[2026-10-28 12:59:24,316.316 INFO    ] Launching Daemon at Wed Oct 28 12:59:24 IST 2026
[2026-10-28 12:59:24,328.328 INFO    ] ================================================
[2026-10-28 12:59:24,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:59:24
[2026-10-28 12:59:25,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:59:25,765.765 INFO    ] Initializing speech engine...
[2026-10-28 12:59:25,773.773 INFO    ] 2026-10-28 12:59:25
[2026-10-28 12:59:26,065.065 INFO    ] 2026-10-28 12:59:26
[2026-10-28 12:59:26,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:59:26,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:59:26,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:59:26,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:59:26,854.854 INFO    ] time= 28/10/2026 12:59:26
[2026-10-28 12:59:26,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:59:26,959.959 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:59:27,129.129 INFO    ] No existing commands found in stream
[2026-10-28 12:59:32,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:59:32,166.166 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-28 12:59:33,799.799 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 12:59:33,802.802 INFO    ] Checking for system updates...
[2026-10-28 12:59:33,840.840 INFO    ] 200
[2026-10-28 12:59:33,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:59:33,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:59:33,897.897 INFO    ] No update needed
[2026-10-28 12:59:33,900.900 INFO    ] Checking for camera pi updates...
[2026-10-28 12:59:33,936.936 INFO    ] 200
[2026-10-28 12:59:33,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:59:33,990.990 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:59:34,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:59:34,071.071 INFO    ] No camera update needed
[2026-10-28 12:59:34,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:59:34,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:59:34,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:59:34,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:59:36,126.126 INFO    ] ================================================
[2026-10-28 12:59:36,141.141 INFO    ] Launching Daemon at Wed Oct 28 12:59:36 IST 2026
[2026-10-28 12:59:36,152.152 INFO    ] ================================================
[2026-10-28 12:59:36,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:59:36
[2026-10-28 12:59:37,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:59:37,608.608 INFO    ] Initializing speech engine...
[2026-10-28 12:59:37,625.625 INFO    ] 2026-10-28 12:59:37
[2026-10-28 12:59:37,882.882 INFO    ] 2026-10-28 12:59:37
[2026-10-28 12:59:37,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:59:38,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:59:38,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:59:38,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:59:38,457.457 INFO    ] time= 28/10/2026 12:59:38
[2026-10-28 12:59:38,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:59:38,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:59:38,620.620 INFO    ] No existing commands found in stream
[2026-10-28 12:59:43,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:59:43,648.648 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 12:59:47,924.924 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:59:47,927.927 INFO    ] Checking for system updates...
[2026-10-28 12:59:47,966.966 INFO    ] 200
[2026-10-28 12:59:47,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:59:48,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:59:48,029.029 INFO    ] No update needed
[2026-10-28 12:59:48,031.031 INFO    ] Checking for camera pi updates...
[2026-10-28 12:59:48,065.065 INFO    ] 200
[2026-10-28 12:59:48,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:59:48,110.110 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:59:48,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:59:48,311.311 INFO    ] No camera update needed
[2026-10-28 12:59:48,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:59:48,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:59:48,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:59:48,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 12:59:50,372.372 INFO    ] ================================================
[2026-10-28 12:59:50,388.388 INFO    ] Launching Daemon at Wed Oct 28 12:59:50 IST 2026
[2026-10-28 12:59:50,398.398 INFO    ] ================================================
[2026-10-28 12:59:50,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 12:59:50
[2026-10-28 12:59:51,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 12:59:51,852.852 INFO    ] Initializing speech engine...
[2026-10-28 12:59:51,858.858 INFO    ] 2026-10-28 12:59:51
[2026-10-28 12:59:52,118.118 INFO    ] 2026-10-28 12:59:52
[2026-10-28 12:59:52,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 12:59:52,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 12:59:52,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 12:59:52,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 12:59:52,743.743 INFO    ] time= 28/10/2026 12:59:52
[2026-10-28 12:59:52,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 12:59:52,817.817 INFO    ] Checking for existing commands in stream...
[2026-10-28 12:59:52,936.936 INFO    ] No existing commands found in stream
[2026-10-28 12:59:57,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 12:59:57,958.958 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-28 12:59:59,126.126 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 12:59:59,129.129 INFO    ] Checking for system updates...
[2026-10-28 12:59:59,166.166 INFO    ] 200
[2026-10-28 12:59:59,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:59:59,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:59:59,224.224 INFO    ] No update needed
[2026-10-28 12:59:59,226.226 INFO    ] Checking for camera pi updates...
[2026-10-28 12:59:59,260.260 INFO    ] 200
[2026-10-28 12:59:59,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 12:59:59,303.303 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 12:59:59,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 12:59:59,412.412 INFO    ] No camera update needed
[2026-10-28 12:59:59,414.414 INFO    ] Script finished. Safe exiting...
[2026-10-28 12:59:59,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 12:59:59,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 12:59:59,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:00:01,496.496 INFO    ] ================================================
[2026-10-28 13:00:01,578.578 INFO    ] Launching Daemon at Wed Oct 28 13:00:01 IST 2026
[2026-10-28 13:00:01,667.667 INFO    ] ================================================
[2026-10-28 13:00:03,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:00:03
[2026-10-28 13:00:05,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:00:05,834.834 INFO    ] Initializing speech engine...
[2026-10-28 13:00:05,841.841 INFO    ] 2026-10-28 13:00:05
[2026-10-28 13:00:06,152.152 INFO    ] 2026-10-28 13:00:06
[2026-10-28 13:00:06,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:00:06,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:00:06,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:00:06,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:00:06,673.673 INFO    ] time= 28/10/2026 13:00:06
[2026-10-28 13:00:06,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:00:06,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:00:06,855.855 INFO    ] No existing commands found in stream
[2026-10-28 13:00:11,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:00:11,883.883 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-28 13:00:18,847.847 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:00:18,850.850 INFO    ] Checking for system updates...
[2026-10-28 13:00:18,894.894 INFO    ] 200
[2026-10-28 13:00:18,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:00:18,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:00:18,951.951 INFO    ] No update needed
[2026-10-28 13:00:18,954.954 INFO    ] Checking for camera pi updates...
[2026-10-28 13:00:18,991.991 INFO    ] 200
[2026-10-28 13:00:18,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:00:19,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:00:19,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:00:19,136.136 INFO    ] No camera update needed
[2026-10-28 13:00:19,139.139 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:00:19,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:00:19,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:00:19,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:00:21,191.191 INFO    ] ================================================
[2026-10-28 13:00:21,206.206 INFO    ] Launching Daemon at Wed Oct 28 13:00:21 IST 2026
[2026-10-28 13:00:21,217.217 INFO    ] ================================================
[2026-10-28 13:00:21,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:00:21
[2026-10-28 13:00:22,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:00:22,680.680 INFO    ] Initializing speech engine...
[2026-10-28 13:00:22,689.689 INFO    ] 2026-10-28 13:00:22
[2026-10-28 13:00:22,947.947 INFO    ] 2026-10-28 13:00:22
[2026-10-28 13:00:23,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:00:23,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:00:23,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:00:23,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:00:23,507.507 INFO    ] time= 28/10/2026 13:00:23
[2026-10-28 13:00:23,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:00:23,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:00:23,666.666 INFO    ] No existing commands found in stream
[2026-10-28 13:00:28,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:00:28,698.698 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 13:00:31,291.291 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:00:31,295.295 INFO    ] Checking for system updates...
[2026-10-28 13:00:31,339.339 INFO    ] 200
[2026-10-28 13:00:31,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:00:31,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:00:31,402.402 INFO    ] No update needed
[2026-10-28 13:00:31,405.405 INFO    ] Checking for camera pi updates...
[2026-10-28 13:00:31,445.445 INFO    ] 200
[2026-10-28 13:00:31,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:00:31,490.490 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:00:31,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:00:31,578.578 INFO    ] No camera update needed
[2026-10-28 13:00:31,581.581 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:00:31,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:00:31,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:00:31,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:00:33,637.637 INFO    ] ================================================
[2026-10-28 13:00:33,653.653 INFO    ] Launching Daemon at Wed Oct 28 13:00:33 IST 2026
[2026-10-28 13:00:33,665.665 INFO    ] ================================================
[2026-10-28 13:00:34,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:00:34
[2026-10-28 13:00:34,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:00:35,088.088 INFO    ] Initializing speech engine...
[2026-10-28 13:00:35,097.097 INFO    ] 2026-10-28 13:00:35
[2026-10-28 13:00:35,345.345 INFO    ] 2026-10-28 13:00:35
[2026-10-28 13:00:35,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:00:35,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:00:35,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:00:35,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:00:35,914.914 INFO    ] time= 28/10/2026 13:00:35
[2026-10-28 13:00:35,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:00:35,948.948 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:00:36,110.110 INFO    ] No existing commands found in stream
[2026-10-28 13:00:41,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:00:41,142.142 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-28 13:00:43,077.077 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:00:43,080.080 INFO    ] Checking for system updates...
[2026-10-28 13:00:43,116.116 INFO    ] 200
[2026-10-28 13:00:43,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:00:43,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:00:43,183.183 INFO    ] No update needed
[2026-10-28 13:00:43,185.185 INFO    ] Checking for camera pi updates...
[2026-10-28 13:00:43,218.218 INFO    ] 200
[2026-10-28 13:00:43,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:00:43,267.267 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:00:43,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:00:43,351.351 INFO    ] No camera update needed
[2026-10-28 13:00:43,354.354 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:00:43,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:00:43,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:00:43,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:00:45,408.408 INFO    ] ================================================
[2026-10-28 13:00:45,424.424 INFO    ] Launching Daemon at Wed Oct 28 13:00:45 IST 2026
[2026-10-28 13:00:45,435.435 INFO    ] ================================================
[2026-10-28 13:00:46,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:00:46
[2026-10-28 13:00:46,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:00:47,126.126 INFO    ] Initializing speech engine...
[2026-10-28 13:00:47,138.138 INFO    ] 2026-10-28 13:00:47
[2026-10-28 13:00:47,454.454 INFO    ] 2026-10-28 13:00:47
[2026-10-28 13:00:47,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:00:47,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:00:47,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:00:48,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:00:48,200.200 INFO    ] time= 28/10/2026 13:00:48
[2026-10-28 13:00:48,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:00:48,315.315 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:00:48,487.487 INFO    ] No existing commands found in stream
[2026-10-28 13:00:53,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:00:53,516.516 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-28 13:00:54,637.637 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:00:54,639.639 INFO    ] Checking for system updates...
[2026-10-28 13:00:54,674.674 INFO    ] 200
[2026-10-28 13:00:54,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:00:54,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:00:54,740.740 INFO    ] No update needed
[2026-10-28 13:00:54,742.742 INFO    ] Checking for camera pi updates...
[2026-10-28 13:00:54,780.780 INFO    ] 200
[2026-10-28 13:00:54,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:00:54,825.825 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:00:54,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:00:54,926.926 INFO    ] No camera update needed
[2026-10-28 13:00:54,928.928 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:00:54,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:00:54,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:00:54,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:00:56,981.981 INFO    ] ================================================
[2026-10-28 13:00:57,996.996 INFO    ] Launching Daemon at Wed Oct 28 13:00:56 IST 2026
[2026-10-28 13:00:57,008.008 INFO    ] ================================================
[2026-10-28 13:00:57,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:00:57
[2026-10-28 13:00:58,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:00:58,470.470 INFO    ] Initializing speech engine...
[2026-10-28 13:00:58,477.477 INFO    ] 2026-10-28 13:00:58
[2026-10-28 13:00:58,725.725 INFO    ] 2026-10-28 13:00:58
[2026-10-28 13:00:58,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:00:59,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:00:59,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:00:59,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:00:59,282.282 INFO    ] time= 28/10/2026 13:00:59
[2026-10-28 13:00:59,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:00:59,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:00:59,485.485 INFO    ] No existing commands found in stream
[2026-10-28 13:01:04,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:01:04,518.518 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 13:01:07,042.042 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:01:07,045.045 INFO    ] Checking for system updates...
[2026-10-28 13:01:07,080.080 INFO    ] 200
[2026-10-28 13:01:07,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:01:07,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:01:07,138.138 INFO    ] No update needed
[2026-10-28 13:01:07,140.140 INFO    ] Checking for camera pi updates...
[2026-10-28 13:01:07,178.178 INFO    ] 200
[2026-10-28 13:01:07,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:01:07,222.222 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:01:07,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:01:07,305.305 INFO    ] No camera update needed
[2026-10-28 13:01:07,307.307 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:01:07,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:01:07,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:01:07,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:01:09,361.361 INFO    ] ================================================
[2026-10-28 13:01:09,377.377 INFO    ] Launching Daemon at Wed Oct 28 13:01:09 IST 2026
[2026-10-28 13:01:09,389.389 INFO    ] ================================================
[2026-10-28 13:01:10,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:01:10
[2026-10-28 13:01:10,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:01:11,074.074 INFO    ] Initializing speech engine...
[2026-10-28 13:01:11,087.087 INFO    ] 2026-10-28 13:01:11
[2026-10-28 13:01:11,380.380 INFO    ] 2026-10-28 13:01:11
[2026-10-28 13:01:11,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:01:11,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:01:11,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:01:12,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:01:12,088.088 INFO    ] time= 28/10/2026 13:01:12
[2026-10-28 13:01:12,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:01:12,147.147 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:01:12,307.307 INFO    ] No existing commands found in stream
[2026-10-28 13:01:17,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:01:17,335.335 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 13:01:17,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:01:18,002.002 INFO    ] Checking for system updates...
[2026-10-28 13:01:18,042.042 INFO    ] 200
[2026-10-28 13:01:18,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:01:18,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:01:18,099.099 INFO    ] No update needed
[2026-10-28 13:01:18,101.101 INFO    ] Checking for camera pi updates...
[2026-10-28 13:01:18,138.138 INFO    ] 200
[2026-10-28 13:01:18,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:01:18,186.186 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:01:18,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:01:18,288.288 INFO    ] No camera update needed
[2026-10-28 13:01:18,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:01:18,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:01:18,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:01:18,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:01:20,344.344 INFO    ] ================================================
[2026-10-28 13:01:20,360.360 INFO    ] Launching Daemon at Wed Oct 28 13:01:20 IST 2026
[2026-10-28 13:01:20,370.370 INFO    ] ================================================
[2026-10-28 13:01:20,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:01:20
[2026-10-28 13:01:21,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:01:21,805.805 INFO    ] Initializing speech engine...
[2026-10-28 13:01:21,812.812 INFO    ] 2026-10-28 13:01:21
[2026-10-28 13:01:22,108.108 INFO    ] 2026-10-28 13:01:22
[2026-10-28 13:01:22,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:01:22,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:01:22,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:01:22,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:01:22,733.733 INFO    ] time= 28/10/2026 13:01:22
[2026-10-28 13:01:22,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:01:22,763.763 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:01:22,934.934 INFO    ] No existing commands found in stream
[2026-10-28 13:01:27,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:01:27,957.957 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-28 13:01:28,846.846 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:01:28,849.849 INFO    ] Checking for system updates...
[2026-10-28 13:01:28,888.888 INFO    ] 200
[2026-10-28 13:01:28,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:01:28,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:01:28,952.952 INFO    ] No update needed
[2026-10-28 13:01:28,955.955 INFO    ] Checking for camera pi updates...
[2026-10-28 13:01:28,988.988 INFO    ] 200
[2026-10-28 13:01:28,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:01:29,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:01:29,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:01:29,125.125 INFO    ] No camera update needed
[2026-10-28 13:01:29,128.128 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:01:29,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:01:29,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:01:29,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:01:31,180.180 INFO    ] ================================================
[2026-10-28 13:01:31,195.195 INFO    ] Launching Daemon at Wed Oct 28 13:01:31 IST 2026
[2026-10-28 13:01:31,206.206 INFO    ] ================================================
[2026-10-28 13:01:31,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:01:31
[2026-10-28 13:01:32,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:01:32,696.696 INFO    ] Initializing speech engine...
[2026-10-28 13:01:32,705.705 INFO    ] 2026-10-28 13:01:32
[2026-10-28 13:01:32,973.973 INFO    ] 2026-10-28 13:01:32
[2026-10-28 13:01:33,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:01:33,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:01:33,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:01:33,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:01:33,535.535 INFO    ] time= 28/10/2026 13:01:33
[2026-10-28 13:01:33,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:01:33,577.577 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:01:33,745.745 INFO    ] No existing commands found in stream
[2026-10-28 13:01:38,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:01:38,785.785 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-28 13:01:41,386.386 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:01:41,389.389 INFO    ] Checking for system updates...
[2026-10-28 13:01:41,429.429 INFO    ] 200
[2026-10-28 13:01:41,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:01:41,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:01:41,500.500 INFO    ] No update needed
[2026-10-28 13:01:41,503.503 INFO    ] Checking for camera pi updates...
[2026-10-28 13:01:41,537.537 INFO    ] 200
[2026-10-28 13:01:41,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:01:41,585.585 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:01:41,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:01:41,648.648 INFO    ] No camera update needed
[2026-10-28 13:01:41,650.650 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:01:41,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:01:41,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:01:41,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:01:43,706.706 INFO    ] ================================================
[2026-10-28 13:01:43,721.721 INFO    ] Launching Daemon at Wed Oct 28 13:01:43 IST 2026
[2026-10-28 13:01:43,732.732 INFO    ] ================================================
[2026-10-28 13:01:44,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:01:44
[2026-10-28 13:01:44,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:01:45,196.196 INFO    ] Initializing speech engine...
[2026-10-28 13:01:45,216.216 INFO    ] 2026-10-28 13:01:45
[2026-10-28 13:01:45,486.486 INFO    ] 2026-10-28 13:01:45
[2026-10-28 13:01:45,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:01:45,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:01:45,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:01:46,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:01:46,113.113 INFO    ] time= 28/10/2026 13:01:46
[2026-10-28 13:01:46,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:01:46,155.155 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:01:46,287.287 INFO    ] No existing commands found in stream
[2026-10-28 13:01:51,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:01:51,317.317 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 13:01:54,639.639 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:01:54,642.642 INFO    ] Checking for system updates...
[2026-10-28 13:01:54,680.680 INFO    ] 200
[2026-10-28 13:01:54,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:01:54,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:01:54,748.748 INFO    ] No update needed
[2026-10-28 13:01:54,751.751 INFO    ] Checking for camera pi updates...
[2026-10-28 13:01:54,784.784 INFO    ] 200
[2026-10-28 13:01:54,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:01:54,831.831 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:01:55,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:01:55,014.014 INFO    ] No camera update needed
[2026-10-28 13:01:55,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:01:55,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:01:55,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:01:55,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:01:57,070.070 INFO    ] ================================================
[2026-10-28 13:01:57,086.086 INFO    ] Launching Daemon at Wed Oct 28 13:01:57 IST 2026
[2026-10-28 13:01:57,096.096 INFO    ] ================================================
[2026-10-28 13:01:57,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:01:57
[2026-10-28 13:01:58,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:01:58,565.565 INFO    ] Initializing speech engine...
[2026-10-28 13:01:58,574.574 INFO    ] 2026-10-28 13:01:58
[2026-10-28 13:01:58,830.830 INFO    ] 2026-10-28 13:01:58
[2026-10-28 13:01:58,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:01:59,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:01:59,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:01:59,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:01:59,422.422 INFO    ] time= 28/10/2026 13:01:59
[2026-10-28 13:01:59,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:01:59,439.439 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:01:59,556.556 INFO    ] No existing commands found in stream
[2026-10-28 13:02:04,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:02:04,589.589 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 13:02:06,240.240 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:02:06,242.242 INFO    ] Checking for system updates...
[2026-10-28 13:02:06,282.282 INFO    ] 200
[2026-10-28 13:02:06,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:02:06,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:02:06,341.341 INFO    ] No update needed
[2026-10-28 13:02:06,344.344 INFO    ] Checking for camera pi updates...
[2026-10-28 13:02:06,378.378 INFO    ] 200
[2026-10-28 13:02:06,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:02:06,422.422 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:02:06,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:02:06,534.534 INFO    ] No camera update needed
[2026-10-28 13:02:06,536.536 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:02:06,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:02:06,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:02:06,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:02:08,591.591 INFO    ] ================================================
[2026-10-28 13:02:08,606.606 INFO    ] Launching Daemon at Wed Oct 28 13:02:08 IST 2026
[2026-10-28 13:02:08,617.617 INFO    ] ================================================
[2026-10-28 13:02:09,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:02:09
[2026-10-28 13:02:09,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:02:10,059.059 INFO    ] Initializing speech engine...
[2026-10-28 13:02:10,079.079 INFO    ] 2026-10-28 13:02:10
[2026-10-28 13:02:10,360.360 INFO    ] 2026-10-28 13:02:10
[2026-10-28 13:02:10,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:02:10,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:02:10,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:02:10,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:02:10,984.984 INFO    ] time= 28/10/2026 13:02:10
[2026-10-28 13:02:10,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:02:11,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:02:11,129.129 INFO    ] No existing commands found in stream
[2026-10-28 13:02:16,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:02:16,163.163 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-28 13:02:17,318.318 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:02:17,321.321 INFO    ] Checking for system updates...
[2026-10-28 13:02:17,356.356 INFO    ] 200
[2026-10-28 13:02:17,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:02:17,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:02:17,413.413 INFO    ] No update needed
[2026-10-28 13:02:17,416.416 INFO    ] Checking for camera pi updates...
[2026-10-28 13:02:17,453.453 INFO    ] 200
[2026-10-28 13:02:17,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:02:17,496.496 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:02:17,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:02:17,579.579 INFO    ] No camera update needed
[2026-10-28 13:02:17,581.581 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:02:17,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:02:17,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:02:17,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:02:19,634.634 INFO    ] ================================================
[2026-10-28 13:02:19,649.649 INFO    ] Launching Daemon at Wed Oct 28 13:02:19 IST 2026
[2026-10-28 13:02:19,660.660 INFO    ] ================================================
[2026-10-28 13:02:20,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:02:20
[2026-10-28 13:02:20,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:02:21,229.229 INFO    ] Initializing speech engine...
[2026-10-28 13:02:21,238.238 INFO    ] 2026-10-28 13:02:21
[2026-10-28 13:02:21,525.525 INFO    ] 2026-10-28 13:02:21
[2026-10-28 13:02:21,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:02:21,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:02:21,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:02:22,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:02:22,227.227 INFO    ] time= 28/10/2026 13:02:22
[2026-10-28 13:02:22,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:02:22,322.322 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:02:22,493.493 INFO    ] No existing commands found in stream
[2026-10-28 13:02:27,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:02:27,510.510 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 13:02:30,734.734 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:02:30,737.737 INFO    ] Checking for system updates...
[2026-10-28 13:02:30,777.777 INFO    ] 200
[2026-10-28 13:02:30,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:02:30,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:02:30,839.839 INFO    ] No update needed
[2026-10-28 13:02:30,841.841 INFO    ] Checking for camera pi updates...
[2026-10-28 13:02:30,878.878 INFO    ] 200
[2026-10-28 13:02:30,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:02:30,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:02:31,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:02:31,024.024 INFO    ] No camera update needed
[2026-10-28 13:02:31,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:02:31,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:02:31,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:02:31,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:02:33,080.080 INFO    ] ================================================
[2026-10-28 13:02:33,098.098 INFO    ] Launching Daemon at Wed Oct 28 13:02:33 IST 2026
[2026-10-28 13:02:33,109.109 INFO    ] ================================================
[2026-10-28 13:02:33,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:02:33
[2026-10-28 13:02:34,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:02:34,564.564 INFO    ] Initializing speech engine...
[2026-10-28 13:02:34,573.573 INFO    ] 2026-10-28 13:02:34
[2026-10-28 13:02:34,835.835 INFO    ] 2026-10-28 13:02:34
[2026-10-28 13:02:34,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:02:35,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:02:35,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:02:35,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:02:35,399.399 INFO    ] time= 28/10/2026 13:02:35
[2026-10-28 13:02:35,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:02:35,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:02:35,568.568 INFO    ] No existing commands found in stream
[2026-10-28 13:02:40,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:02:40,601.601 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-28 13:02:44,361.361 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:02:44,364.364 INFO    ] Checking for system updates...
[2026-10-28 13:02:44,400.400 INFO    ] 200
[2026-10-28 13:02:44,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:02:44,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:02:44,467.467 INFO    ] No update needed
[2026-10-28 13:02:44,470.470 INFO    ] Checking for camera pi updates...
[2026-10-28 13:02:44,504.504 INFO    ] 200
[2026-10-28 13:02:44,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:02:44,552.552 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:02:44,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:02:44,618.618 INFO    ] No camera update needed
[2026-10-28 13:02:44,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:02:44,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:02:44,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:02:44,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:02:46,678.678 INFO    ] ================================================
[2026-10-28 13:02:46,693.693 INFO    ] Launching Daemon at Wed Oct 28 13:02:46 IST 2026
[2026-10-28 13:02:46,704.704 INFO    ] ================================================
[2026-10-28 13:02:47,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:02:47
[2026-10-28 13:02:47,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:02:48,244.244 INFO    ] Initializing speech engine...
[2026-10-28 13:02:48,253.253 INFO    ] 2026-10-28 13:02:48
[2026-10-28 13:02:48,503.503 INFO    ] 2026-10-28 13:02:48
[2026-10-28 13:02:48,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:02:48,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:02:48,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:02:49,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:02:49,041.041 INFO    ] time= 28/10/2026 13:02:49
[2026-10-28 13:02:49,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:02:49,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:02:49,272.272 INFO    ] No existing commands found in stream
[2026-10-28 13:02:54,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:02:54,297.297 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 13:02:58,765.765 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:02:58,768.768 INFO    ] Checking for system updates...
[2026-10-28 13:02:58,806.806 INFO    ] 200
[2026-10-28 13:02:58,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:02:58,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:02:58,877.877 INFO    ] No update needed
[2026-10-28 13:02:58,879.879 INFO    ] Checking for camera pi updates...
[2026-10-28 13:02:58,919.919 INFO    ] 200
[2026-10-28 13:02:58,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:02:58,964.964 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:02:59,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:02:59,072.072 INFO    ] No camera update needed
[2026-10-28 13:02:59,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:02:59,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:02:59,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:02:59,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:03:01,131.131 INFO    ] ================================================
[2026-10-28 13:03:01,148.148 INFO    ] Launching Daemon at Wed Oct 28 13:03:01 IST 2026
[2026-10-28 13:03:01,159.159 INFO    ] ================================================
[2026-10-28 13:03:01,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:03:01
[2026-10-28 13:03:02,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:03:03,071.071 INFO    ] Initializing speech engine...
[2026-10-28 13:03:03,082.082 INFO    ] 2026-10-28 13:03:03
[2026-10-28 13:03:03,476.476 INFO    ] 2026-10-28 13:03:03
[2026-10-28 13:03:03,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:03:03,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:03:03,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:03:04,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:03:04,189.189 INFO    ] time= 28/10/2026 13:03:04
[2026-10-28 13:03:04,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:03:04,286.286 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:03:04,462.462 INFO    ] No existing commands found in stream
[2026-10-28 13:03:09,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:03:09,488.488 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-28 13:03:10,719.719 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:03:10,722.722 INFO    ] Checking for system updates...
[2026-10-28 13:03:10,761.761 INFO    ] 200
[2026-10-28 13:03:10,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:03:10,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:03:10,825.825 INFO    ] No update needed
[2026-10-28 13:03:10,828.828 INFO    ] Checking for camera pi updates...
[2026-10-28 13:03:10,861.861 INFO    ] 200
[2026-10-28 13:03:10,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:03:10,909.909 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:03:11,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:03:11,014.014 INFO    ] No camera update needed
[2026-10-28 13:03:11,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:03:11,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:03:11,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:03:11,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:03:13,068.068 INFO    ] ================================================
[2026-10-28 13:03:13,083.083 INFO    ] Launching Daemon at Wed Oct 28 13:03:13 IST 2026
[2026-10-28 13:03:13,094.094 INFO    ] ================================================
[2026-10-28 13:03:13,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:03:13
[2026-10-28 13:03:14,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:03:14,579.579 INFO    ] Initializing speech engine...
[2026-10-28 13:03:14,589.589 INFO    ] 2026-10-28 13:03:14
[2026-10-28 13:03:14,864.864 INFO    ] 2026-10-28 13:03:14
[2026-10-28 13:03:14,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:03:15,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:03:15,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:03:15,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:03:15,409.409 INFO    ] time= 28/10/2026 13:03:15
[2026-10-28 13:03:15,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:03:15,452.452 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:03:15,555.555 INFO    ] No existing commands found in stream
[2026-10-28 13:03:20,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:03:20,587.587 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-28 13:03:24,965.965 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:03:24,968.968 INFO    ] Checking for system updates...
[2026-10-28 13:03:25,004.004 INFO    ] 200
[2026-10-28 13:03:25,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:03:25,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:03:25,069.069 INFO    ] No update needed
[2026-10-28 13:03:25,071.071 INFO    ] Checking for camera pi updates...
[2026-10-28 13:03:25,104.104 INFO    ] 200
[2026-10-28 13:03:25,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:03:25,148.148 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:03:25,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:03:25,231.231 INFO    ] No camera update needed
[2026-10-28 13:03:25,233.233 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:03:25,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:03:25,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:03:25,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:03:27,288.288 INFO    ] ================================================
[2026-10-28 13:03:27,304.304 INFO    ] Launching Daemon at Wed Oct 28 13:03:27 IST 2026
[2026-10-28 13:03:27,314.314 INFO    ] ================================================
[2026-10-28 13:03:27,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:03:27
[2026-10-28 13:03:28,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:03:28,748.748 INFO    ] Initializing speech engine...
[2026-10-28 13:03:28,766.766 INFO    ] 2026-10-28 13:03:28
[2026-10-28 13:03:29,031.031 INFO    ] 2026-10-28 13:03:29
[2026-10-28 13:03:29,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:03:29,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:03:29,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:03:29,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:03:29,597.597 INFO    ] time= 28/10/2026 13:03:29
[2026-10-28 13:03:29,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:03:29,622.622 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:03:29,754.754 INFO    ] No existing commands found in stream
[2026-10-28 13:03:34,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:03:34,772.772 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-28 13:03:38,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:03:38,645.645 INFO    ] Checking for system updates...
[2026-10-28 13:03:38,680.680 INFO    ] 200
[2026-10-28 13:03:38,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:03:38,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:03:38,745.745 INFO    ] No update needed
[2026-10-28 13:03:38,748.748 INFO    ] Checking for camera pi updates...
[2026-10-28 13:03:38,785.785 INFO    ] 200
[2026-10-28 13:03:38,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:03:38,828.828 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:03:38,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:03:38,919.919 INFO    ] No camera update needed
[2026-10-28 13:03:38,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:03:38,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:03:38,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:03:38,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:03:40,977.977 INFO    ] ================================================
[2026-10-28 13:03:40,993.993 INFO    ] Launching Daemon at Wed Oct 28 13:03:40 IST 2026
[2026-10-28 13:03:41,005.005 INFO    ] ================================================
[2026-10-28 13:03:41,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:03:41
[2026-10-28 13:03:42,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:03:42,423.423 INFO    ] Initializing speech engine...
[2026-10-28 13:03:42,429.429 INFO    ] 2026-10-28 13:03:42
[2026-10-28 13:03:42,732.732 INFO    ] 2026-10-28 13:03:42
[2026-10-28 13:03:42,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:03:42,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:03:42,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:03:43,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:03:43,316.316 INFO    ] time= 28/10/2026 13:03:43
[2026-10-28 13:03:43,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:03:43,341.341 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:03:43,458.458 INFO    ] No existing commands found in stream
[2026-10-28 13:03:48,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:03:48,485.485 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-28 13:03:52,764.764 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:03:52,767.767 INFO    ] Checking for system updates...
[2026-10-28 13:03:52,803.803 INFO    ] 200
[2026-10-28 13:03:52,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:03:52,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:03:52,862.862 INFO    ] No update needed
[2026-10-28 13:03:52,865.865 INFO    ] Checking for camera pi updates...
[2026-10-28 13:03:52,900.900 INFO    ] 200
[2026-10-28 13:03:52,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:03:52,944.944 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:03:53,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:03:53,051.051 INFO    ] No camera update needed
[2026-10-28 13:03:53,054.054 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:03:53,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:03:53,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:03:53,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:03:55,112.112 INFO    ] ================================================
[2026-10-28 13:03:55,128.128 INFO    ] Launching Daemon at Wed Oct 28 13:03:55 IST 2026
[2026-10-28 13:03:55,139.139 INFO    ] ================================================
[2026-10-28 13:03:55,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:03:55
[2026-10-28 13:03:56,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:03:56,552.552 INFO    ] Initializing speech engine...
[2026-10-28 13:03:56,558.558 INFO    ] 2026-10-28 13:03:56
[2026-10-28 13:03:56,856.856 INFO    ] 2026-10-28 13:03:56
[2026-10-28 13:03:56,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:03:57,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:03:57,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:03:57,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:03:57,497.497 INFO    ] time= 28/10/2026 13:03:57
[2026-10-28 13:03:57,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:03:57,521.521 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:03:57,642.642 INFO    ] No existing commands found in stream
[2026-10-28 13:04:02,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:04:02,668.668 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-28 13:04:03,940.940 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:04:03,943.943 INFO    ] Checking for system updates...
[2026-10-28 13:04:03,978.978 INFO    ] 200
[2026-10-28 13:04:03,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:04:04,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:04:04,043.043 INFO    ] No update needed
[2026-10-28 13:04:04,045.045 INFO    ] Checking for camera pi updates...
[2026-10-28 13:04:04,078.078 INFO    ] 200
[2026-10-28 13:04:04,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:04:04,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:04:04,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:04:04,225.225 INFO    ] No camera update needed
[2026-10-28 13:04:04,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:04:04,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:04:04,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:04:04,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:04:06,281.281 INFO    ] ================================================
[2026-10-28 13:04:06,296.296 INFO    ] Launching Daemon at Wed Oct 28 13:04:06 IST 2026
[2026-10-28 13:04:06,307.307 INFO    ] ================================================
[2026-10-28 13:04:06,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:04:06
[2026-10-28 13:04:07,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:04:07,732.732 INFO    ] Initializing speech engine...
[2026-10-28 13:04:07,738.738 INFO    ] 2026-10-28 13:04:07
[2026-10-28 13:04:07,999.999 INFO    ] 2026-10-28 13:04:07
[2026-10-28 13:04:08,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:04:08,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:04:08,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:04:08,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:04:08,562.562 INFO    ] time= 28/10/2026 13:04:08
[2026-10-28 13:04:08,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:04:08,597.597 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:04:08,733.733 INFO    ] No existing commands found in stream
[2026-10-28 13:04:13,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:04:13,767.767 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-28 13:04:16,200.200 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:04:16,202.202 INFO    ] Checking for system updates...
[2026-10-28 13:04:16,240.240 INFO    ] 200
[2026-10-28 13:04:16,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:04:16,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:04:16,310.310 INFO    ] No update needed
[2026-10-28 13:04:16,312.312 INFO    ] Checking for camera pi updates...
[2026-10-28 13:04:16,350.350 INFO    ] 200
[2026-10-28 13:04:16,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:04:16,393.393 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:04:16,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:04:16,486.486 INFO    ] No camera update needed
[2026-10-28 13:04:16,489.489 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:04:16,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:04:16,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:04:16,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:04:18,541.541 INFO    ] ================================================
[2026-10-28 13:04:18,557.557 INFO    ] Launching Daemon at Wed Oct 28 13:04:18 IST 2026
[2026-10-28 13:04:18,569.569 INFO    ] ================================================
[2026-10-28 13:04:19,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:04:19
[2026-10-28 13:04:19,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:04:19,994.994 INFO    ] Initializing speech engine...
[2026-10-28 13:04:20,003.003 INFO    ] 2026-10-28 13:04:19
[2026-10-28 13:04:20,253.253 INFO    ] 2026-10-28 13:04:20
[2026-10-28 13:04:20,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:04:20,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:04:20,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:04:20,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:04:20,807.807 INFO    ] time= 28/10/2026 13:04:20
[2026-10-28 13:04:20,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:04:20,878.878 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:04:21,016.016 INFO    ] No existing commands found in stream
[2026-10-28 13:04:26,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:04:26,049.049 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-28 13:04:26,650.650 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:04:26,652.652 INFO    ] Checking for system updates...
[2026-10-28 13:04:26,691.691 INFO    ] 200
[2026-10-28 13:04:26,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:04:26,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:04:26,748.748 INFO    ] No update needed
[2026-10-28 13:04:26,750.750 INFO    ] Checking for camera pi updates...
[2026-10-28 13:04:26,783.783 INFO    ] 200
[2026-10-28 13:04:26,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:04:26,825.825 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:04:26,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:04:26,933.933 INFO    ] No camera update needed
[2026-10-28 13:04:26,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:04:26,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:04:26,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:04:26,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:04:28,989.989 INFO    ] ================================================
[2026-10-28 13:04:29,004.004 INFO    ] Launching Daemon at Wed Oct 28 13:04:28 IST 2026
[2026-10-28 13:04:29,016.016 INFO    ] ================================================
[2026-10-28 13:04:29,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:04:29
[2026-10-28 13:04:30,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:04:30,474.474 INFO    ] Initializing speech engine...
[2026-10-28 13:04:30,482.482 INFO    ] 2026-10-28 13:04:30
[2026-10-28 13:04:30,732.732 INFO    ] 2026-10-28 13:04:30
[2026-10-28 13:04:30,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:04:31,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:04:31,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:04:31,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:04:31,289.289 INFO    ] time= 28/10/2026 13:04:31
[2026-10-28 13:04:31,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:04:31,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:04:31,477.477 INFO    ] No existing commands found in stream
[2026-10-28 13:04:36,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:04:36,509.509 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 13:04:40,720.720 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:04:40,723.723 INFO    ] Checking for system updates...
[2026-10-28 13:04:40,764.764 INFO    ] 200
[2026-10-28 13:04:40,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:04:40,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:04:40,829.829 INFO    ] No update needed
[2026-10-28 13:04:40,832.832 INFO    ] Checking for camera pi updates...
[2026-10-28 13:04:40,879.879 INFO    ] 200
[2026-10-28 13:04:40,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:04:40,929.929 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:04:41,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:04:41,020.020 INFO    ] No camera update needed
[2026-10-28 13:04:41,025.025 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:04:41,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:04:41,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:04:41,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:04:43,084.084 INFO    ] ================================================
[2026-10-28 13:04:43,100.100 INFO    ] Launching Daemon at Wed Oct 28 13:04:43 IST 2026
[2026-10-28 13:04:43,112.112 INFO    ] ================================================
[2026-10-28 13:04:43,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:04:43
[2026-10-28 13:04:44,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:04:44,759.759 INFO    ] Initializing speech engine...
[2026-10-28 13:04:44,772.772 INFO    ] 2026-10-28 13:04:44
[2026-10-28 13:04:45,054.054 INFO    ] 2026-10-28 13:04:45
[2026-10-28 13:04:45,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:04:45,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:04:45,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:04:45,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:04:45,956.956 INFO    ] time= 28/10/2026 13:04:45
[2026-10-28 13:04:46,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:04:46,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:04:46,206.206 INFO    ] No existing commands found in stream
[2026-10-28 13:04:51,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:04:51,220.220 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-28 13:04:52,215.215 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:04:52,218.218 INFO    ] Checking for system updates...
[2026-10-28 13:04:52,255.255 INFO    ] 200
[2026-10-28 13:04:52,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:04:52,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:04:52,314.314 INFO    ] No update needed
[2026-10-28 13:04:52,317.317 INFO    ] Checking for camera pi updates...
[2026-10-28 13:04:52,353.353 INFO    ] 200
[2026-10-28 13:04:52,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:04:52,397.397 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:04:52,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:04:52,485.485 INFO    ] No camera update needed
[2026-10-28 13:04:52,488.488 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:04:52,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:04:52,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:04:52,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:04:54,546.546 INFO    ] ================================================
[2026-10-28 13:04:54,561.561 INFO    ] Launching Daemon at Wed Oct 28 13:04:54 IST 2026
[2026-10-28 13:04:54,572.572 INFO    ] ================================================
[2026-10-28 13:04:55,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:04:55
[2026-10-28 13:04:55,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:04:56,014.014 INFO    ] Initializing speech engine...
[2026-10-28 13:04:56,020.020 INFO    ] 2026-10-28 13:04:56
[2026-10-28 13:04:56,318.318 INFO    ] 2026-10-28 13:04:56
[2026-10-28 13:04:56,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:04:56,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:04:56,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:04:56,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:04:56,968.968 INFO    ] time= 28/10/2026 13:04:56
[2026-10-28 13:04:56,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:04:56,996.996 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:04:57,149.149 INFO    ] No existing commands found in stream
[2026-10-28 13:05:02,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:05:02,168.168 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-28 13:05:05,639.639 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:05:05,642.642 INFO    ] Checking for system updates...
[2026-10-28 13:05:05,681.681 INFO    ] 200
[2026-10-28 13:05:05,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:05:05,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:05:05,738.738 INFO    ] No update needed
[2026-10-28 13:05:05,741.741 INFO    ] Checking for camera pi updates...
[2026-10-28 13:05:05,778.778 INFO    ] 200
[2026-10-28 13:05:05,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:05:05,827.827 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:05:05,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:05:05,909.909 INFO    ] No camera update needed
[2026-10-28 13:05:05,912.912 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:05:05,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:05:05,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:05:05,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:05:07,969.969 INFO    ] ================================================
[2026-10-28 13:05:07,985.985 INFO    ] Launching Daemon at Wed Oct 28 13:05:07 IST 2026
[2026-10-28 13:05:08,996.996 INFO    ] ================================================
[2026-10-28 13:05:08,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:05:08
[2026-10-28 13:05:09,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:05:09,393.393 INFO    ] Initializing speech engine...
[2026-10-28 13:05:09,407.407 INFO    ] 2026-10-28 13:05:09
[2026-10-28 13:05:09,672.672 INFO    ] 2026-10-28 13:05:09
[2026-10-28 13:05:09,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:05:09,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:05:10,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:05:10,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:05:10,243.243 INFO    ] time= 28/10/2026 13:05:10
[2026-10-28 13:05:10,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:05:10,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:05:10,406.406 INFO    ] No existing commands found in stream
[2026-10-28 13:05:15,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:05:15,438.438 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-28 13:05:19,840.840 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:05:19,843.843 INFO    ] Checking for system updates...
[2026-10-28 13:05:19,880.880 INFO    ] 200
[2026-10-28 13:05:19,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:05:19,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:05:19,945.945 INFO    ] No update needed
[2026-10-28 13:05:19,947.947 INFO    ] Checking for camera pi updates...
[2026-10-28 13:05:19,980.980 INFO    ] 200
[2026-10-28 13:05:19,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:05:20,023.023 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:05:20,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:05:20,129.129 INFO    ] No camera update needed
[2026-10-28 13:05:20,131.131 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:05:20,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:05:20,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:05:20,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:05:22,184.184 INFO    ] ================================================
[2026-10-28 13:05:22,199.199 INFO    ] Launching Daemon at Wed Oct 28 13:05:22 IST 2026
[2026-10-28 13:05:22,210.210 INFO    ] ================================================
[2026-10-28 13:05:22,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:05:22
[2026-10-28 13:05:23,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:05:23,670.670 INFO    ] Initializing speech engine...
[2026-10-28 13:05:23,678.678 INFO    ] 2026-10-28 13:05:23
[2026-10-28 13:05:23,941.941 INFO    ] 2026-10-28 13:05:23
[2026-10-28 13:05:23,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:05:24,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:05:24,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:05:24,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:05:24,493.493 INFO    ] time= 28/10/2026 13:05:24
[2026-10-28 13:05:24,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:05:24,539.539 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:05:24,666.666 INFO    ] No existing commands found in stream
[2026-10-28 13:05:29,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:05:29,689.689 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-28 13:05:32,998.998 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:05:33,000.000 INFO    ] Checking for system updates...
[2026-10-28 13:05:33,036.036 INFO    ] 200
[2026-10-28 13:05:33,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:05:33,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:05:33,094.094 INFO    ] No update needed
[2026-10-28 13:05:33,096.096 INFO    ] Checking for camera pi updates...
[2026-10-28 13:05:33,130.130 INFO    ] 200
[2026-10-28 13:05:33,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:05:33,178.178 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:05:33,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:05:33,286.286 INFO    ] No camera update needed
[2026-10-28 13:05:33,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:05:33,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:05:33,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:05:33,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:05:35,341.341 INFO    ] ================================================
[2026-10-28 13:05:35,356.356 INFO    ] Launching Daemon at Wed Oct 28 13:05:35 IST 2026
[2026-10-28 13:05:35,368.368 INFO    ] ================================================
[2026-10-28 13:05:35,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:05:35
[2026-10-28 13:05:36,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:05:36,858.858 INFO    ] Initializing speech engine...
[2026-10-28 13:05:36,867.867 INFO    ] 2026-10-28 13:05:36
[2026-10-28 13:05:37,123.123 INFO    ] 2026-10-28 13:05:37
[2026-10-28 13:05:37,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:05:37,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:05:37,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:05:37,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:05:37,683.683 INFO    ] time= 28/10/2026 13:05:37
[2026-10-28 13:05:37,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:05:37,721.721 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:05:37,862.862 INFO    ] No existing commands found in stream
[2026-10-28 13:05:42,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:05:42,897.897 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-28 13:05:46,461.461 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:05:46,464.464 INFO    ] Checking for system updates...
[2026-10-28 13:05:46,505.505 INFO    ] 200
[2026-10-28 13:05:46,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:05:46,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:05:46,569.569 INFO    ] No update needed
[2026-10-28 13:05:46,571.571 INFO    ] Checking for camera pi updates...
[2026-10-28 13:05:46,610.610 INFO    ] 200
[2026-10-28 13:05:46,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:05:46,659.659 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:05:46,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:05:46,741.741 INFO    ] No camera update needed
[2026-10-28 13:05:46,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:05:46,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:05:46,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:05:46,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:05:48,799.799 INFO    ] ================================================
[2026-10-28 13:05:48,815.815 INFO    ] Launching Daemon at Wed Oct 28 13:05:48 IST 2026
[2026-10-28 13:05:48,826.826 INFO    ] ================================================
[2026-10-28 13:05:49,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:05:49
[2026-10-28 13:05:50,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:05:50,474.474 INFO    ] Initializing speech engine...
[2026-10-28 13:05:50,480.480 INFO    ] 2026-10-28 13:05:50
[2026-10-28 13:05:50,754.754 INFO    ] 2026-10-28 13:05:50
[2026-10-28 13:05:50,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:05:51,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:05:51,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:05:51,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:05:51,316.316 INFO    ] time= 28/10/2026 13:05:51
[2026-10-28 13:05:51,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:05:51,368.368 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:05:51,504.504 INFO    ] No existing commands found in stream
[2026-10-28 13:05:56,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:05:56,534.534 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-28 13:05:59,274.274 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:05:59,277.277 INFO    ] Checking for system updates...
[2026-10-28 13:05:59,318.318 INFO    ] 200
[2026-10-28 13:05:59,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:05:59,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:05:59,379.379 INFO    ] No update needed
[2026-10-28 13:05:59,382.382 INFO    ] Checking for camera pi updates...
[2026-10-28 13:05:59,416.416 INFO    ] 200
[2026-10-28 13:05:59,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:05:59,461.461 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:05:59,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:05:59,548.548 INFO    ] No camera update needed
[2026-10-28 13:05:59,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:05:59,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:05:59,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:05:59,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:06:01,608.608 INFO    ] ================================================
[2026-10-28 13:06:01,625.625 INFO    ] Launching Daemon at Wed Oct 28 13:06:01 IST 2026
[2026-10-28 13:06:01,636.636 INFO    ] ================================================
[2026-10-28 13:06:02,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:06:02
[2026-10-28 13:06:03,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:06:03,485.485 INFO    ] Initializing speech engine...
[2026-10-28 13:06:03,494.494 INFO    ] 2026-10-28 13:06:03
[2026-10-28 13:06:03,765.765 INFO    ] 2026-10-28 13:06:03
[2026-10-28 13:06:03,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:06:04,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:06:04,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:06:04,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:06:04,362.362 INFO    ] time= 28/10/2026 13:06:04
[2026-10-28 13:06:04,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:06:04,411.411 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:06:04,526.526 INFO    ] No existing commands found in stream
[2026-10-28 13:06:09,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:06:09,557.557 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 13:06:10,714.714 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:06:10,717.717 INFO    ] Checking for system updates...
[2026-10-28 13:06:10,759.759 INFO    ] 200
[2026-10-28 13:06:10,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:06:10,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:06:10,824.824 INFO    ] No update needed
[2026-10-28 13:06:10,827.827 INFO    ] Checking for camera pi updates...
[2026-10-28 13:06:10,867.867 INFO    ] 200
[2026-10-28 13:06:10,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:06:10,916.916 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:06:11,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:06:11,115.115 INFO    ] No camera update needed
[2026-10-28 13:06:11,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:06:11,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:06:11,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:06:11,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:06:13,174.174 INFO    ] ================================================
[2026-10-28 13:06:13,190.190 INFO    ] Launching Daemon at Wed Oct 28 13:06:13 IST 2026
[2026-10-28 13:06:13,201.201 INFO    ] ================================================
[2026-10-28 13:06:13,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:06:13
[2026-10-28 13:06:14,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:06:14,659.659 INFO    ] Initializing speech engine...
[2026-10-28 13:06:14,669.669 INFO    ] 2026-10-28 13:06:14
[2026-10-28 13:06:14,917.917 INFO    ] 2026-10-28 13:06:14
[2026-10-28 13:06:14,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:06:15,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:06:15,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:06:15,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:06:15,473.473 INFO    ] time= 28/10/2026 13:06:15
[2026-10-28 13:06:15,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:06:15,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:06:15,636.636 INFO    ] No existing commands found in stream
[2026-10-28 13:06:20,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:06:20,668.668 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-28 13:06:23,592.592 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:06:23,595.595 INFO    ] Checking for system updates...
[2026-10-28 13:06:23,635.635 INFO    ] 200
[2026-10-28 13:06:23,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:06:23,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:06:23,692.692 INFO    ] No update needed
[2026-10-28 13:06:23,695.695 INFO    ] Checking for camera pi updates...
[2026-10-28 13:06:23,729.729 INFO    ] 200
[2026-10-28 13:06:23,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:06:23,779.779 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:06:23,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:06:23,863.863 INFO    ] No camera update needed
[2026-10-28 13:06:23,866.866 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:06:23,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:06:23,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:06:23,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:06:25,921.921 INFO    ] ================================================
[2026-10-28 13:06:25,936.936 INFO    ] Launching Daemon at Wed Oct 28 13:06:25 IST 2026
[2026-10-28 13:06:25,948.948 INFO    ] ================================================
[2026-10-28 13:06:26,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:06:26
[2026-10-28 13:06:27,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:06:27,400.400 INFO    ] Initializing speech engine...
[2026-10-28 13:06:27,411.411 INFO    ] 2026-10-28 13:06:27
[2026-10-28 13:06:27,674.674 INFO    ] 2026-10-28 13:06:27
[2026-10-28 13:06:27,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:06:28,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:06:28,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:06:28,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:06:28,263.263 INFO    ] time= 28/10/2026 13:06:28
[2026-10-28 13:06:28,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:06:28,304.304 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:06:28,466.466 INFO    ] No existing commands found in stream
[2026-10-28 13:06:33,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:06:33,493.493 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-28 13:06:37,561.561 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:06:37,564.564 INFO    ] Checking for system updates...
[2026-10-28 13:06:37,600.600 INFO    ] 200
[2026-10-28 13:06:37,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:06:37,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:06:37,662.662 INFO    ] No update needed
[2026-10-28 13:06:37,665.665 INFO    ] Checking for camera pi updates...
[2026-10-28 13:06:37,698.698 INFO    ] 200
[2026-10-28 13:06:37,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:06:37,741.741 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:06:37,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:06:37,824.824 INFO    ] No camera update needed
[2026-10-28 13:06:37,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:06:37,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:06:37,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:06:37,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:06:39,884.884 INFO    ] ================================================
[2026-10-28 13:06:39,899.899 INFO    ] Launching Daemon at Wed Oct 28 13:06:39 IST 2026
[2026-10-28 13:06:39,910.910 INFO    ] ================================================
[2026-10-28 13:06:40,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:06:40
[2026-10-28 13:06:41,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:06:41,333.333 INFO    ] Initializing speech engine...
[2026-10-28 13:06:41,349.349 INFO    ] 2026-10-28 13:06:41
[2026-10-28 13:06:41,636.636 INFO    ] 2026-10-28 13:06:41
[2026-10-28 13:06:41,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:06:41,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:06:41,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:06:42,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:06:42,256.256 INFO    ] time= 28/10/2026 13:06:42
[2026-10-28 13:06:42,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:06:42,282.282 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:06:42,413.413 INFO    ] No existing commands found in stream
[2026-10-28 13:06:47,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:06:47,441.441 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 13:06:48,591.591 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:06:48,594.594 INFO    ] Checking for system updates...
[2026-10-28 13:06:48,631.631 INFO    ] 200
[2026-10-28 13:06:48,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:06:48,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:06:48,697.697 INFO    ] No update needed
[2026-10-28 13:06:48,699.699 INFO    ] Checking for camera pi updates...
[2026-10-28 13:06:48,732.732 INFO    ] 200
[2026-10-28 13:06:48,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:06:48,775.775 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:06:48,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:06:48,845.845 INFO    ] No camera update needed
[2026-10-28 13:06:48,848.848 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:06:48,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:06:48,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:06:48,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:06:50,902.902 INFO    ] ================================================
[2026-10-28 13:06:50,918.918 INFO    ] Launching Daemon at Wed Oct 28 13:06:50 IST 2026
[2026-10-28 13:06:50,929.929 INFO    ] ================================================
[2026-10-28 13:06:51,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:06:51
[2026-10-28 13:06:52,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:06:52,405.405 INFO    ] Initializing speech engine...
[2026-10-28 13:06:52,414.414 INFO    ] 2026-10-28 13:06:52
[2026-10-28 13:06:52,683.683 INFO    ] 2026-10-28 13:06:52
[2026-10-28 13:06:52,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:06:53,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:06:53,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:06:53,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:06:53,249.249 INFO    ] time= 28/10/2026 13:06:53
[2026-10-28 13:06:53,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:06:53,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:06:53,404.404 INFO    ] No existing commands found in stream
[2026-10-28 13:06:58,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:06:58,431.431 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-28 13:06:59,912.912 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:06:59,915.915 INFO    ] Checking for system updates...
[2026-10-28 13:06:59,950.950 INFO    ] 200
[2026-10-28 13:06:59,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:07:00,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:07:00,014.014 INFO    ] No update needed
[2026-10-28 13:07:00,017.017 INFO    ] Checking for camera pi updates...
[2026-10-28 13:07:00,054.054 INFO    ] 200
[2026-10-28 13:07:00,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:07:00,097.097 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:07:00,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:07:00,179.179 INFO    ] No camera update needed
[2026-10-28 13:07:00,181.181 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:07:00,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:07:00,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:07:00,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:07:02,242.242 INFO    ] ================================================
[2026-10-28 13:07:02,264.264 INFO    ] Launching Daemon at Wed Oct 28 13:07:02 IST 2026
[2026-10-28 13:07:02,280.280 INFO    ] ================================================
[2026-10-28 13:07:02,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:07:02
[2026-10-28 13:07:03,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:07:03,894.894 INFO    ] Initializing speech engine...
[2026-10-28 13:07:03,903.903 INFO    ] 2026-10-28 13:07:03
[2026-10-28 13:07:04,185.185 INFO    ] 2026-10-28 13:07:04
[2026-10-28 13:07:04,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:07:04,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:07:04,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:07:04,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:07:05,018.018 INFO    ] time= 28/10/2026 13:07:04
[2026-10-28 13:07:05,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:07:05,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:07:05,258.258 INFO    ] No existing commands found in stream
[2026-10-28 13:07:10,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:07:10,279.279 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-28 13:07:11,551.551 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:07:11,555.555 INFO    ] Checking for system updates...
[2026-10-28 13:07:11,591.591 INFO    ] 200
[2026-10-28 13:07:11,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:07:11,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:07:11,650.650 INFO    ] No update needed
[2026-10-28 13:07:11,653.653 INFO    ] Checking for camera pi updates...
[2026-10-28 13:07:11,692.692 INFO    ] 200
[2026-10-28 13:07:11,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:07:11,736.736 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:07:11,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:07:11,828.828 INFO    ] No camera update needed
[2026-10-28 13:07:11,831.831 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:07:11,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:07:11,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:07:11,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:07:13,887.887 INFO    ] ================================================
[2026-10-28 13:07:13,902.902 INFO    ] Launching Daemon at Wed Oct 28 13:07:13 IST 2026
[2026-10-28 13:07:13,914.914 INFO    ] ================================================
[2026-10-28 13:07:14,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:07:14
[2026-10-28 13:07:15,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:07:15,384.384 INFO    ] Initializing speech engine...
[2026-10-28 13:07:15,391.391 INFO    ] 2026-10-28 13:07:15
[2026-10-28 13:07:15,644.644 INFO    ] 2026-10-28 13:07:15
[2026-10-28 13:07:15,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:07:15,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:07:15,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:07:16,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:07:16,237.237 INFO    ] time= 28/10/2026 13:07:16
[2026-10-28 13:07:16,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:07:16,255.255 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:07:16,424.424 INFO    ] No existing commands found in stream
[2026-10-28 13:07:21,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:07:21,455.455 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-28 13:07:24,853.853 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:07:24,856.856 INFO    ] Checking for system updates...
[2026-10-28 13:07:24,896.896 INFO    ] 200
[2026-10-28 13:07:24,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:07:24,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:07:24,953.953 INFO    ] No update needed
[2026-10-28 13:07:24,956.956 INFO    ] Checking for camera pi updates...
[2026-10-28 13:07:24,989.989 INFO    ] 200
[2026-10-28 13:07:24,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:07:25,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:07:25,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:07:25,112.112 INFO    ] No camera update needed
[2026-10-28 13:07:25,115.115 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:07:25,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:07:25,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:07:25,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:07:27,167.167 INFO    ] ================================================
[2026-10-28 13:07:27,184.184 INFO    ] Launching Daemon at Wed Oct 28 13:07:27 IST 2026
[2026-10-28 13:07:27,195.195 INFO    ] ================================================
[2026-10-28 13:07:27,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:07:27
[2026-10-28 13:07:28,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:07:28,855.855 INFO    ] Initializing speech engine...
[2026-10-28 13:07:28,867.867 INFO    ] 2026-10-28 13:07:28
[2026-10-28 13:07:29,155.155 INFO    ] 2026-10-28 13:07:29
[2026-10-28 13:07:29,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:07:29,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:07:29,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:07:29,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:07:29,933.933 INFO    ] time= 28/10/2026 13:07:29
[2026-10-28 13:07:29,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:07:30,039.039 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:07:30,239.239 INFO    ] No existing commands found in stream
[2026-10-28 13:07:35,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:07:35,263.263 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-28 13:07:39,734.734 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:07:39,737.737 INFO    ] Checking for system updates...
[2026-10-28 13:07:39,773.773 INFO    ] 200
[2026-10-28 13:07:39,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:07:39,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:07:39,832.832 INFO    ] No update needed
[2026-10-28 13:07:39,835.835 INFO    ] Checking for camera pi updates...
[2026-10-28 13:07:39,869.869 INFO    ] 200
[2026-10-28 13:07:39,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:07:39,919.919 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:07:40,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:07:40,029.029 INFO    ] No camera update needed
[2026-10-28 13:07:40,031.031 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:07:40,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:07:40,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:07:40,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:07:42,085.085 INFO    ] ================================================
[2026-10-28 13:07:42,100.100 INFO    ] Launching Daemon at Wed Oct 28 13:07:42 IST 2026
[2026-10-28 13:07:42,111.111 INFO    ] ================================================
[2026-10-28 13:07:42,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:07:42
[2026-10-28 13:07:43,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:07:43,573.573 INFO    ] Initializing speech engine...
[2026-10-28 13:07:43,582.582 INFO    ] 2026-10-28 13:07:43
[2026-10-28 13:07:43,830.830 INFO    ] 2026-10-28 13:07:43
[2026-10-28 13:07:43,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:07:44,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:07:44,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:07:44,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:07:44,386.386 INFO    ] time= 28/10/2026 13:07:44
[2026-10-28 13:07:44,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:07:44,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:07:44,562.562 INFO    ] No existing commands found in stream
[2026-10-28 13:07:49,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:07:49,591.591 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-28 13:07:50,896.896 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:07:50,899.899 INFO    ] Checking for system updates...
[2026-10-28 13:07:50,940.940 INFO    ] 200
[2026-10-28 13:07:50,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:07:50,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:07:50,999.999 INFO    ] No update needed
[2026-10-28 13:07:51,002.002 INFO    ] Checking for camera pi updates...
[2026-10-28 13:07:51,037.037 INFO    ] 200
[2026-10-28 13:07:51,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:07:51,080.080 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:07:51,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:07:51,151.151 INFO    ] No camera update needed
[2026-10-28 13:07:51,154.154 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:07:51,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:07:51,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:07:51,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:07:53,214.214 INFO    ] ================================================
[2026-10-28 13:07:53,230.230 INFO    ] Launching Daemon at Wed Oct 28 13:07:53 IST 2026
[2026-10-28 13:07:53,240.240 INFO    ] ================================================
[2026-10-28 13:07:53,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:07:53
[2026-10-28 13:07:54,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:07:54,641.641 INFO    ] Initializing speech engine...
[2026-10-28 13:07:54,650.650 INFO    ] 2026-10-28 13:07:54
[2026-10-28 13:07:54,946.946 INFO    ] 2026-10-28 13:07:54
[2026-10-28 13:07:54,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:07:55,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:07:55,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:07:55,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:07:55,605.605 INFO    ] time= 28/10/2026 13:07:55
[2026-10-28 13:07:55,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:07:55,647.647 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:07:55,761.761 INFO    ] No existing commands found in stream
[2026-10-28 13:08:00,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:08:00,780.780 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 13:08:03,271.271 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:08:03,275.275 INFO    ] Checking for system updates...
[2026-10-28 13:08:03,321.321 INFO    ] 200
[2026-10-28 13:08:03,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:08:03,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:08:03,380.380 INFO    ] No update needed
[2026-10-28 13:08:03,382.382 INFO    ] Checking for camera pi updates...
[2026-10-28 13:08:03,418.418 INFO    ] 200
[2026-10-28 13:08:03,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:08:03,461.461 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:08:03,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:08:03,548.548 INFO    ] No camera update needed
[2026-10-28 13:08:03,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:08:03,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:08:03,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:08:03,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:08:05,603.603 INFO    ] ================================================
[2026-10-28 13:08:05,624.624 INFO    ] Launching Daemon at Wed Oct 28 13:08:05 IST 2026
[2026-10-28 13:08:05,634.634 INFO    ] ================================================
[2026-10-28 13:08:06,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:08:06
[2026-10-28 13:08:06,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:08:07,052.052 INFO    ] Initializing speech engine...
[2026-10-28 13:08:07,061.061 INFO    ] 2026-10-28 13:08:07
[2026-10-28 13:08:07,304.304 INFO    ] 2026-10-28 13:08:07
[2026-10-28 13:08:07,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:08:07,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:08:07,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:08:07,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:08:07,860.860 INFO    ] time= 28/10/2026 13:08:07
[2026-10-28 13:08:07,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:08:07,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:08:08,017.017 INFO    ] No existing commands found in stream
[2026-10-28 13:08:13,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:08:13,049.049 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-28 13:08:17,547.547 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:08:17,550.550 INFO    ] Checking for system updates...
[2026-10-28 13:08:17,585.585 INFO    ] 200
[2026-10-28 13:08:17,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:08:17,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:08:17,642.642 INFO    ] No update needed
[2026-10-28 13:08:17,645.645 INFO    ] Checking for camera pi updates...
[2026-10-28 13:08:17,681.681 INFO    ] 200
[2026-10-28 13:08:17,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:08:17,723.723 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:08:17,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:08:17,913.913 INFO    ] No camera update needed
[2026-10-28 13:08:17,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:08:17,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:08:17,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:08:17,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:08:19,968.968 INFO    ] ================================================
[2026-10-28 13:08:19,983.983 INFO    ] Launching Daemon at Wed Oct 28 13:08:19 IST 2026
[2026-10-28 13:08:19,994.994 INFO    ] ================================================
[2026-10-28 13:08:20,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:08:20
[2026-10-28 13:08:21,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:08:21,407.407 INFO    ] Initializing speech engine...
[2026-10-28 13:08:21,417.417 INFO    ] 2026-10-28 13:08:21
[2026-10-28 13:08:21,666.666 INFO    ] 2026-10-28 13:08:21
[2026-10-28 13:08:21,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:08:22,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:08:22,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:08:22,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:08:22,227.227 INFO    ] time= 28/10/2026 13:08:22
[2026-10-28 13:08:22,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:08:22,261.261 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:08:22,444.444 INFO    ] No existing commands found in stream
[2026-10-28 13:08:27,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:08:27,472.472 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 13:08:31,614.614 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:08:31,617.617 INFO    ] Checking for system updates...
[2026-10-28 13:08:31,656.656 INFO    ] 200
[2026-10-28 13:08:31,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:08:31,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:08:31,726.726 INFO    ] No update needed
[2026-10-28 13:08:31,729.729 INFO    ] Checking for camera pi updates...
[2026-10-28 13:08:31,765.765 INFO    ] 200
[2026-10-28 13:08:31,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:08:31,811.811 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:08:31,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:08:31,902.902 INFO    ] No camera update needed
[2026-10-28 13:08:31,905.905 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:08:31,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:08:31,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:08:31,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:08:33,967.967 INFO    ] ================================================
[2026-10-28 13:08:33,981.981 INFO    ] Launching Daemon at Wed Oct 28 13:08:33 IST 2026
[2026-10-28 13:08:33,992.992 INFO    ] ================================================
[2026-10-28 13:08:34,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:08:34
[2026-10-28 13:08:35,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:08:35,572.572 INFO    ] Initializing speech engine...
[2026-10-28 13:08:35,582.582 INFO    ] 2026-10-28 13:08:35
[2026-10-28 13:08:35,831.831 INFO    ] 2026-10-28 13:08:35
[2026-10-28 13:08:35,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:08:36,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:08:36,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:08:36,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:08:36,393.393 INFO    ] time= 28/10/2026 13:08:36
[2026-10-28 13:08:36,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:08:36,428.428 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:08:36,547.547 INFO    ] No existing commands found in stream
[2026-10-28 13:08:41,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:08:41,580.580 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 13:08:42,189.189 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:08:42,192.192 INFO    ] Checking for system updates...
[2026-10-28 13:08:42,232.232 INFO    ] 200
[2026-10-28 13:08:42,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:08:42,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:08:42,292.292 INFO    ] No update needed
[2026-10-28 13:08:42,295.295 INFO    ] Checking for camera pi updates...
[2026-10-28 13:08:42,330.330 INFO    ] 200
[2026-10-28 13:08:42,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:08:42,379.379 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:08:42,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:08:42,465.465 INFO    ] No camera update needed
[2026-10-28 13:08:42,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:08:42,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:08:42,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:08:42,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:08:44,521.521 INFO    ] ================================================
[2026-10-28 13:08:44,536.536 INFO    ] Launching Daemon at Wed Oct 28 13:08:44 IST 2026
[2026-10-28 13:08:44,547.547 INFO    ] ================================================
[2026-10-28 13:08:45,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:08:45
[2026-10-28 13:08:45,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:08:45,997.997 INFO    ] Initializing speech engine...
[2026-10-28 13:08:46,006.006 INFO    ] 2026-10-28 13:08:46
[2026-10-28 13:08:46,269.269 INFO    ] 2026-10-28 13:08:46
[2026-10-28 13:08:46,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:08:46,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:08:46,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:08:46,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:08:46,831.831 INFO    ] time= 28/10/2026 13:08:46
[2026-10-28 13:08:46,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:08:46,868.868 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:08:47,000.000 INFO    ] No existing commands found in stream
[2026-10-28 13:08:52,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:08:52,083.083 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-28 13:08:55,508.508 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:08:55,511.511 INFO    ] Checking for system updates...
[2026-10-28 13:08:55,548.548 INFO    ] 200
[2026-10-28 13:08:55,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:08:55,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:08:55,606.606 INFO    ] No update needed
[2026-10-28 13:08:55,609.609 INFO    ] Checking for camera pi updates...
[2026-10-28 13:08:55,643.643 INFO    ] 200
[2026-10-28 13:08:55,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:08:55,691.691 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:08:55,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:08:55,777.777 INFO    ] No camera update needed
[2026-10-28 13:08:55,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:08:55,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:08:55,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:08:55,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:08:57,836.836 INFO    ] ================================================
[2026-10-28 13:08:57,851.851 INFO    ] Launching Daemon at Wed Oct 28 13:08:57 IST 2026
[2026-10-28 13:08:57,861.861 INFO    ] ================================================
[2026-10-28 13:08:58,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:08:58
[2026-10-28 13:08:59,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:08:59,270.270 INFO    ] Initializing speech engine...
[2026-10-28 13:08:59,283.283 INFO    ] 2026-10-28 13:08:59
[2026-10-28 13:08:59,568.568 INFO    ] 2026-10-28 13:08:59
[2026-10-28 13:08:59,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:08:59,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:08:59,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:09:00,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:09:00,197.197 INFO    ] time= 28/10/2026 13:09:00
[2026-10-28 13:09:00,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:09:00,220.220 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:09:00,366.366 INFO    ] No existing commands found in stream
[2026-10-28 13:09:05,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:09:05,385.385 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 13:09:06,954.954 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:09:06,956.956 INFO    ] Checking for system updates...
[2026-10-28 13:09:06,992.992 INFO    ] 200
[2026-10-28 13:09:06,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:09:07,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:09:07,050.050 INFO    ] No update needed
[2026-10-28 13:09:07,052.052 INFO    ] Checking for camera pi updates...
[2026-10-28 13:09:07,089.089 INFO    ] 200
[2026-10-28 13:09:07,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:09:07,140.140 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:09:07,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:09:07,196.196 INFO    ] No camera update needed
[2026-10-28 13:09:07,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:09:07,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:09:07,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:09:07,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:09:09,251.251 INFO    ] ================================================
[2026-10-28 13:09:09,266.266 INFO    ] Launching Daemon at Wed Oct 28 13:09:09 IST 2026
[2026-10-28 13:09:09,277.277 INFO    ] ================================================
[2026-10-28 13:09:09,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:09:09
[2026-10-28 13:09:10,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:09:10,695.695 INFO    ] Initializing speech engine...
[2026-10-28 13:09:10,714.714 INFO    ] 2026-10-28 13:09:10
[2026-10-28 13:09:10,964.964 INFO    ] 2026-10-28 13:09:10
[2026-10-28 13:09:10,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:09:11,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:09:11,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:09:11,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:09:11,486.486 INFO    ] time= 28/10/2026 13:09:11
[2026-10-28 13:09:11,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:09:11,554.554 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:09:11,681.681 INFO    ] No existing commands found in stream
[2026-10-28 13:09:16,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:09:16,707.707 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-28 13:09:20,865.865 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:09:20,868.868 INFO    ] Checking for system updates...
[2026-10-28 13:09:20,903.903 INFO    ] 200
[2026-10-28 13:09:20,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:09:20,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:09:20,961.961 INFO    ] No update needed
[2026-10-28 13:09:20,964.964 INFO    ] Checking for camera pi updates...
[2026-10-28 13:09:21,002.002 INFO    ] 200
[2026-10-28 13:09:21,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:09:21,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:09:21,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:09:21,156.156 INFO    ] No camera update needed
[2026-10-28 13:09:21,159.159 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:09:21,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:09:21,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:09:21,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:09:23,216.216 INFO    ] ================================================
[2026-10-28 13:09:23,231.231 INFO    ] Launching Daemon at Wed Oct 28 13:09:23 IST 2026
[2026-10-28 13:09:23,242.242 INFO    ] ================================================
[2026-10-28 13:09:23,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:09:23
[2026-10-28 13:09:24,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:09:24,635.635 INFO    ] Initializing speech engine...
[2026-10-28 13:09:24,649.649 INFO    ] 2026-10-28 13:09:24
[2026-10-28 13:09:24,911.911 INFO    ] 2026-10-28 13:09:24
[2026-10-28 13:09:24,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:09:25,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:09:25,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:09:25,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:09:25,478.478 INFO    ] time= 28/10/2026 13:09:25
[2026-10-28 13:09:25,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:09:25,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:09:25,659.659 INFO    ] No existing commands found in stream
[2026-10-28 13:09:30,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:09:30,697.697 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-28 13:09:33,824.824 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:09:33,826.826 INFO    ] Checking for system updates...
[2026-10-28 13:09:33,863.863 INFO    ] 200
[2026-10-28 13:09:33,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:09:33,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:09:33,922.922 INFO    ] No update needed
[2026-10-28 13:09:33,925.925 INFO    ] Checking for camera pi updates...
[2026-10-28 13:09:33,959.959 INFO    ] 200
[2026-10-28 13:09:33,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:09:34,009.009 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:09:34,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:09:34,096.096 INFO    ] No camera update needed
[2026-10-28 13:09:34,099.099 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:09:34,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:09:34,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:09:34,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:09:36,156.156 INFO    ] ================================================
[2026-10-28 13:09:36,172.172 INFO    ] Launching Daemon at Wed Oct 28 13:09:36 IST 2026
[2026-10-28 13:09:36,184.184 INFO    ] ================================================
[2026-10-28 13:09:36,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:09:36
[2026-10-28 13:09:37,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:09:37,629.629 INFO    ] Initializing speech engine...
[2026-10-28 13:09:37,651.651 INFO    ] 2026-10-28 13:09:37
[2026-10-28 13:09:37,907.907 INFO    ] 2026-10-28 13:09:37
[2026-10-28 13:09:37,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:09:38,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:09:38,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:09:38,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:09:38,465.465 INFO    ] time= 28/10/2026 13:09:38
[2026-10-28 13:09:38,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:09:38,512.512 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:09:38,638.638 INFO    ] No existing commands found in stream
[2026-10-28 13:09:43,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:09:43,668.668 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 13:09:45,064.064 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:09:45,067.067 INFO    ] Checking for system updates...
[2026-10-28 13:09:45,103.103 INFO    ] 200
[2026-10-28 13:09:45,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:09:45,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:09:45,160.160 INFO    ] No update needed
[2026-10-28 13:09:45,163.163 INFO    ] Checking for camera pi updates...
[2026-10-28 13:09:45,201.201 INFO    ] 200
[2026-10-28 13:09:45,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:09:45,245.245 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:09:45,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:09:45,331.331 INFO    ] No camera update needed
[2026-10-28 13:09:45,334.334 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:09:45,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:09:45,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:09:45,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:09:47,387.387 INFO    ] ================================================
[2026-10-28 13:09:47,403.403 INFO    ] Launching Daemon at Wed Oct 28 13:09:47 IST 2026
[2026-10-28 13:09:47,415.415 INFO    ] ================================================
[2026-10-28 13:09:48,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:09:48
[2026-10-28 13:09:48,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:09:49,090.090 INFO    ] Initializing speech engine...
[2026-10-28 13:09:49,099.099 INFO    ] 2026-10-28 13:09:49
[2026-10-28 13:09:49,394.394 INFO    ] 2026-10-28 13:09:49
[2026-10-28 13:09:49,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:09:49,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:09:49,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:09:49,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:09:49,963.963 INFO    ] time= 28/10/2026 13:09:49
[2026-10-28 13:09:49,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:09:50,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:09:50,137.137 INFO    ] No existing commands found in stream
[2026-10-28 13:09:55,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:09:55,171.171 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 13:09:57,192.192 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:09:57,194.194 INFO    ] Checking for system updates...
[2026-10-28 13:09:57,230.230 INFO    ] 200
[2026-10-28 13:09:57,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:09:57,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:09:57,296.296 INFO    ] No update needed
[2026-10-28 13:09:57,298.298 INFO    ] Checking for camera pi updates...
[2026-10-28 13:09:57,332.332 INFO    ] 200
[2026-10-28 13:09:57,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:09:57,375.375 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:09:57,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:09:57,474.474 INFO    ] No camera update needed
[2026-10-28 13:09:57,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:09:57,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:09:57,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:09:57,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:09:59,531.531 INFO    ] ================================================
[2026-10-28 13:09:59,547.547 INFO    ] Launching Daemon at Wed Oct 28 13:09:59 IST 2026
[2026-10-28 13:09:59,557.557 INFO    ] ================================================
[2026-10-28 13:10:00,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:10:00
[2026-10-28 13:10:00,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:10:00,985.985 INFO    ] Initializing speech engine...
[2026-10-28 13:10:00,994.994 INFO    ] 2026-10-28 13:10:00
[2026-10-28 13:10:01,246.246 INFO    ] 2026-10-28 13:10:01
[2026-10-28 13:10:01,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:10:01,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:10:01,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:10:02,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:10:02,070.070 INFO    ] time= 28/10/2026 13:10:02
[2026-10-28 13:10:02,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:10:02,089.089 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:10:02,188.188 INFO    ] No existing commands found in stream
[2026-10-28 13:10:07,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:10:07,200.200 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-28 13:10:10,050.050 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:10:10,053.053 INFO    ] Checking for system updates...
[2026-10-28 13:10:10,089.089 INFO    ] 200
[2026-10-28 13:10:10,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:10:10,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:10:10,154.154 INFO    ] No update needed
[2026-10-28 13:10:10,156.156 INFO    ] Checking for camera pi updates...
[2026-10-28 13:10:10,190.190 INFO    ] 200
[2026-10-28 13:10:10,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:10:10,235.235 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:10:10,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:10:10,340.340 INFO    ] No camera update needed
[2026-10-28 13:10:10,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:10:10,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:10:10,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:10:10,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:10:12,401.401 INFO    ] ================================================
[2026-10-28 13:10:12,415.415 INFO    ] Launching Daemon at Wed Oct 28 13:10:12 IST 2026
[2026-10-28 13:10:12,426.426 INFO    ] ================================================
[2026-10-28 13:10:12,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:10:12
[2026-10-28 13:10:13,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:10:13,831.831 INFO    ] Initializing speech engine...
[2026-10-28 13:10:13,854.854 INFO    ] 2026-10-28 13:10:13
[2026-10-28 13:10:14,109.109 INFO    ] 2026-10-28 13:10:14
[2026-10-28 13:10:14,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:10:14,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:10:14,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:10:14,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:10:14,678.678 INFO    ] time= 28/10/2026 13:10:14
[2026-10-28 13:10:14,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:10:14,708.708 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:10:14,854.854 INFO    ] No existing commands found in stream
[2026-10-28 13:10:19,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:10:19,881.881 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-28 13:10:24,361.361 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:10:24,363.363 INFO    ] Checking for system updates...
[2026-10-28 13:10:24,399.399 INFO    ] 200
[2026-10-28 13:10:24,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:10:24,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:10:24,457.457 INFO    ] No update needed
[2026-10-28 13:10:24,460.460 INFO    ] Checking for camera pi updates...
[2026-10-28 13:10:24,493.493 INFO    ] 200
[2026-10-28 13:10:24,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:10:24,541.541 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:10:24,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:10:24,722.722 INFO    ] No camera update needed
[2026-10-28 13:10:24,725.725 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:10:24,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:10:24,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:10:24,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:10:26,784.784 INFO    ] ================================================
[2026-10-28 13:10:26,799.799 INFO    ] Launching Daemon at Wed Oct 28 13:10:26 IST 2026
[2026-10-28 13:10:26,810.810 INFO    ] ================================================
[2026-10-28 13:10:27,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:10:27
[2026-10-28 13:10:28,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:10:28,459.459 INFO    ] Initializing speech engine...
[2026-10-28 13:10:28,468.468 INFO    ] 2026-10-28 13:10:28
[2026-10-28 13:10:28,750.750 INFO    ] 2026-10-28 13:10:28
[2026-10-28 13:10:28,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:10:29,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:10:29,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:10:29,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:10:29,358.358 INFO    ] time= 28/10/2026 13:10:29
[2026-10-28 13:10:29,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:10:29,410.410 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:10:29,561.561 INFO    ] No existing commands found in stream
[2026-10-28 13:10:34,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:10:34,585.585 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-28 13:10:35,877.877 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:10:35,880.880 INFO    ] Checking for system updates...
[2026-10-28 13:10:35,916.916 INFO    ] 200
[2026-10-28 13:10:35,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:10:35,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:10:35,978.978 INFO    ] No update needed
[2026-10-28 13:10:35,980.980 INFO    ] Checking for camera pi updates...
[2026-10-28 13:10:36,020.020 INFO    ] 200
[2026-10-28 13:10:36,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:10:36,064.064 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:10:36,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:10:36,149.149 INFO    ] No camera update needed
[2026-10-28 13:10:36,152.152 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:10:36,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:10:36,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:10:36,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:10:38,209.209 INFO    ] ================================================
[2026-10-28 13:10:38,224.224 INFO    ] Launching Daemon at Wed Oct 28 13:10:38 IST 2026
[2026-10-28 13:10:38,235.235 INFO    ] ================================================
[2026-10-28 13:10:38,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:10:38
[2026-10-28 13:10:39,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:10:39,738.738 INFO    ] Initializing speech engine...
[2026-10-28 13:10:39,747.747 INFO    ] 2026-10-28 13:10:39
[2026-10-28 13:10:40,070.070 INFO    ] 2026-10-28 13:10:40
[2026-10-28 13:10:40,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:10:40,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:10:40,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:10:40,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:10:40,870.870 INFO    ] time= 28/10/2026 13:10:40
[2026-10-28 13:10:40,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:10:40,965.965 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:10:41,142.142 INFO    ] No existing commands found in stream
[2026-10-28 13:10:46,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:10:46,159.159 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-28 13:10:48,747.747 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:10:48,750.750 INFO    ] Checking for system updates...
[2026-10-28 13:10:48,787.787 INFO    ] 200
[2026-10-28 13:10:48,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:10:48,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:10:48,848.848 INFO    ] No update needed
[2026-10-28 13:10:48,851.851 INFO    ] Checking for camera pi updates...
[2026-10-28 13:10:48,890.890 INFO    ] 200
[2026-10-28 13:10:48,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:10:48,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:10:49,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:10:49,045.045 INFO    ] No camera update needed
[2026-10-28 13:10:49,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:10:49,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:10:49,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:10:49,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:10:51,104.104 INFO    ] ================================================
[2026-10-28 13:10:51,119.119 INFO    ] Launching Daemon at Wed Oct 28 13:10:51 IST 2026
[2026-10-28 13:10:51,130.130 INFO    ] ================================================
[2026-10-28 13:10:51,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:10:51
[2026-10-28 13:10:52,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:10:52,563.563 INFO    ] Initializing speech engine...
[2026-10-28 13:10:52,572.572 INFO    ] 2026-10-28 13:10:52
[2026-10-28 13:10:52,872.872 INFO    ] 2026-10-28 13:10:52
[2026-10-28 13:10:52,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:10:53,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:10:53,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:10:53,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:10:53,496.496 INFO    ] time= 28/10/2026 13:10:53
[2026-10-28 13:10:53,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:10:53,529.529 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:10:53,689.689 INFO    ] No existing commands found in stream
[2026-10-28 13:10:58,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:10:58,715.715 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 13:11:03,367.367 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:11:03,370.370 INFO    ] Checking for system updates...
[2026-10-28 13:11:03,409.409 INFO    ] 200
[2026-10-28 13:11:03,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:11:03,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:11:03,467.467 INFO    ] No update needed
[2026-10-28 13:11:03,470.470 INFO    ] Checking for camera pi updates...
[2026-10-28 13:11:03,503.503 INFO    ] 200
[2026-10-28 13:11:03,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:11:03,547.547 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:11:03,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:11:03,629.629 INFO    ] No camera update needed
[2026-10-28 13:11:03,632.632 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:11:03,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:11:03,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:11:03,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:11:05,686.686 INFO    ] ================================================
[2026-10-28 13:11:05,701.701 INFO    ] Launching Daemon at Wed Oct 28 13:11:05 IST 2026
[2026-10-28 13:11:05,711.711 INFO    ] ================================================
[2026-10-28 13:11:06,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:11:06
[2026-10-28 13:11:07,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:11:07,372.372 INFO    ] Initializing speech engine...
[2026-10-28 13:11:07,383.383 INFO    ] 2026-10-28 13:11:07
[2026-10-28 13:11:07,697.697 INFO    ] 2026-10-28 13:11:07
[2026-10-28 13:11:07,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:11:08,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:11:08,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:11:08,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:11:08,412.412 INFO    ] time= 28/10/2026 13:11:08
[2026-10-28 13:11:08,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:11:08,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:11:08,757.757 INFO    ] No existing commands found in stream
[2026-10-28 13:11:13,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:11:13,787.787 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-28 13:11:16,168.168 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:11:16,171.171 INFO    ] Checking for system updates...
[2026-10-28 13:11:16,208.208 INFO    ] 200
[2026-10-28 13:11:16,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:11:16,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:11:16,267.267 INFO    ] No update needed
[2026-10-28 13:11:16,270.270 INFO    ] Checking for camera pi updates...
[2026-10-28 13:11:16,305.305 INFO    ] 200
[2026-10-28 13:11:16,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:11:16,350.350 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:11:16,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:11:16,439.439 INFO    ] No camera update needed
[2026-10-28 13:11:16,441.441 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:11:16,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:11:16,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:11:16,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:11:18,500.500 INFO    ] ================================================
[2026-10-28 13:11:18,515.515 INFO    ] Launching Daemon at Wed Oct 28 13:11:18 IST 2026
[2026-10-28 13:11:18,526.526 INFO    ] ================================================
[2026-10-28 13:11:19,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:11:19
[2026-10-28 13:11:19,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:11:19,942.942 INFO    ] Initializing speech engine...
[2026-10-28 13:11:19,952.952 INFO    ] 2026-10-28 13:11:19
[2026-10-28 13:11:20,202.202 INFO    ] 2026-10-28 13:11:20
[2026-10-28 13:11:20,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:11:20,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:11:20,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:11:20,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:11:20,819.819 INFO    ] time= 28/10/2026 13:11:20
[2026-10-28 13:11:20,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:11:20,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:11:20,988.988 INFO    ] No existing commands found in stream
[2026-10-28 13:11:26,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:11:26,013.013 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 13:11:30,684.684 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:11:30,688.688 INFO    ] Checking for system updates...
[2026-10-28 13:11:30,725.725 INFO    ] 200
[2026-10-28 13:11:30,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:11:30,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:11:30,783.783 INFO    ] No update needed
[2026-10-28 13:11:30,786.786 INFO    ] Checking for camera pi updates...
[2026-10-28 13:11:30,824.824 INFO    ] 200
[2026-10-28 13:11:30,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:11:30,867.867 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:11:30,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:11:30,976.976 INFO    ] No camera update needed
[2026-10-28 13:11:30,979.979 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:11:30,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:11:30,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:11:30,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:11:33,032.032 INFO    ] ================================================
[2026-10-28 13:11:33,047.047 INFO    ] Launching Daemon at Wed Oct 28 13:11:33 IST 2026
[2026-10-28 13:11:33,057.057 INFO    ] ================================================
[2026-10-28 13:11:33,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:11:33
[2026-10-28 13:11:34,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:11:34,467.467 INFO    ] Initializing speech engine...
[2026-10-28 13:11:34,489.489 INFO    ] 2026-10-28 13:11:34
[2026-10-28 13:11:34,741.741 INFO    ] 2026-10-28 13:11:34
[2026-10-28 13:11:34,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:11:35,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:11:35,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:11:35,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:11:35,301.301 INFO    ] time= 28/10/2026 13:11:35
[2026-10-28 13:11:35,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:11:35,347.347 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:11:35,509.509 INFO    ] No existing commands found in stream
[2026-10-28 13:11:40,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:11:40,541.541 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 13:11:43,951.951 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:11:43,954.954 INFO    ] Checking for system updates...
[2026-10-28 13:11:43,990.990 INFO    ] 200
[2026-10-28 13:11:43,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:11:44,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:11:44,056.056 INFO    ] No update needed
[2026-10-28 13:11:44,059.059 INFO    ] Checking for camera pi updates...
[2026-10-28 13:11:44,093.093 INFO    ] 200
[2026-10-28 13:11:44,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:11:44,140.140 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:11:44,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:11:44,239.239 INFO    ] No camera update needed
[2026-10-28 13:11:44,242.242 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:11:44,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:11:44,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:11:44,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:11:46,296.296 INFO    ] ================================================
[2026-10-28 13:11:46,311.311 INFO    ] Launching Daemon at Wed Oct 28 13:11:46 IST 2026
[2026-10-28 13:11:46,322.322 INFO    ] ================================================
[2026-10-28 13:11:46,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:11:46
[2026-10-28 13:11:47,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:11:47,754.754 INFO    ] Initializing speech engine...
[2026-10-28 13:11:47,768.768 INFO    ] 2026-10-28 13:11:47
[2026-10-28 13:11:48,057.057 INFO    ] 2026-10-28 13:11:48
[2026-10-28 13:11:48,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:11:48,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:11:48,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:11:48,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:11:48,568.568 INFO    ] time= 28/10/2026 13:11:48
[2026-10-28 13:11:48,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:11:48,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:11:48,781.781 INFO    ] No existing commands found in stream
[2026-10-28 13:11:53,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:11:53,796.796 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-28 13:11:57,701.701 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:11:57,704.704 INFO    ] Checking for system updates...
[2026-10-28 13:11:57,741.741 INFO    ] 200
[2026-10-28 13:11:57,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:11:57,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:11:57,802.802 INFO    ] No update needed
[2026-10-28 13:11:57,805.805 INFO    ] Checking for camera pi updates...
[2026-10-28 13:11:57,839.839 INFO    ] 200
[2026-10-28 13:11:57,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:11:57,883.883 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:11:57,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:11:57,969.969 INFO    ] No camera update needed
[2026-10-28 13:11:57,972.972 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:11:57,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:11:57,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:11:57,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:12:00,029.029 INFO    ] ================================================
[2026-10-28 13:12:00,044.044 INFO    ] Launching Daemon at Wed Oct 28 13:12:00 IST 2026
[2026-10-28 13:12:00,055.055 INFO    ] ================================================
[2026-10-28 13:12:00,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:12:00
[2026-10-28 13:12:01,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:12:01,783.783 INFO    ] Initializing speech engine...
[2026-10-28 13:12:01,792.792 INFO    ] 2026-10-28 13:12:01
[2026-10-28 13:12:02,104.104 INFO    ] 2026-10-28 13:12:02
[2026-10-28 13:12:02,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:12:02,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:12:02,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:12:02,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:12:02,768.768 INFO    ] time= 28/10/2026 13:12:02
[2026-10-28 13:12:02,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:12:02,807.807 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:12:02,968.968 INFO    ] No existing commands found in stream
[2026-10-28 13:12:08,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:12:08,007.007 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-28 13:12:09,551.551 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:12:09,554.554 INFO    ] Checking for system updates...
[2026-10-28 13:12:09,592.592 INFO    ] 200
[2026-10-28 13:12:09,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:12:09,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:12:09,658.658 INFO    ] No update needed
[2026-10-28 13:12:09,660.660 INFO    ] Checking for camera pi updates...
[2026-10-28 13:12:09,695.695 INFO    ] 200
[2026-10-28 13:12:09,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:12:09,742.742 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:12:09,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:12:09,847.847 INFO    ] No camera update needed
[2026-10-28 13:12:09,850.850 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:12:09,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:12:09,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:12:09,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:12:11,905.905 INFO    ] ================================================
[2026-10-28 13:12:11,920.920 INFO    ] Launching Daemon at Wed Oct 28 13:12:11 IST 2026
[2026-10-28 13:12:11,930.930 INFO    ] ================================================
[2026-10-28 13:12:12,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:12:12
[2026-10-28 13:12:13,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:12:13,527.527 INFO    ] Initializing speech engine...
[2026-10-28 13:12:13,535.535 INFO    ] 2026-10-28 13:12:13
[2026-10-28 13:12:13,794.794 INFO    ] 2026-10-28 13:12:13
[2026-10-28 13:12:13,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:12:14,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:12:14,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:12:14,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:12:14,345.345 INFO    ] time= 28/10/2026 13:12:14
[2026-10-28 13:12:14,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:12:14,381.381 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:12:14,526.526 INFO    ] No existing commands found in stream
[2026-10-28 13:12:19,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:12:19,559.559 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-28 13:12:22,183.183 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:12:22,186.186 INFO    ] Checking for system updates...
[2026-10-28 13:12:22,226.226 INFO    ] 200
[2026-10-28 13:12:22,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:12:22,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:12:22,285.285 INFO    ] No update needed
[2026-10-28 13:12:22,288.288 INFO    ] Checking for camera pi updates...
[2026-10-28 13:12:22,322.322 INFO    ] 200
[2026-10-28 13:12:22,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:12:22,369.369 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:12:22,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:12:22,451.451 INFO    ] No camera update needed
[2026-10-28 13:12:22,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:12:22,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:12:22,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:12:22,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:12:24,508.508 INFO    ] ================================================
[2026-10-28 13:12:24,524.524 INFO    ] Launching Daemon at Wed Oct 28 13:12:24 IST 2026
[2026-10-28 13:12:24,535.535 INFO    ] ================================================
[2026-10-28 13:12:25,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:12:25
[2026-10-28 13:12:25,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:12:25,982.982 INFO    ] Initializing speech engine...
[2026-10-28 13:12:26,004.004 INFO    ] 2026-10-28 13:12:25
[2026-10-28 13:12:26,262.262 INFO    ] 2026-10-28 13:12:26
[2026-10-28 13:12:26,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:12:26,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:12:26,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:12:26,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:12:26,821.821 INFO    ] time= 28/10/2026 13:12:26
[2026-10-28 13:12:26,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:12:26,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:12:27,002.002 INFO    ] No existing commands found in stream
[2026-10-28 13:12:32,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:12:32,037.037 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 13:12:33,902.902 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:12:33,905.905 INFO    ] Checking for system updates...
[2026-10-28 13:12:33,942.942 INFO    ] 200
[2026-10-28 13:12:33,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:12:33,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:12:34,000.000 INFO    ] No update needed
[2026-10-28 13:12:34,002.002 INFO    ] Checking for camera pi updates...
[2026-10-28 13:12:34,036.036 INFO    ] 200
[2026-10-28 13:12:34,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:12:34,080.080 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:12:34,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:12:34,166.166 INFO    ] No camera update needed
[2026-10-28 13:12:34,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:12:34,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:12:34,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:12:34,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:12:36,228.228 INFO    ] ================================================
[2026-10-28 13:12:36,242.242 INFO    ] Launching Daemon at Wed Oct 28 13:12:36 IST 2026
[2026-10-28 13:12:36,254.254 INFO    ] ================================================
[2026-10-28 13:12:36,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:12:36
[2026-10-28 13:12:37,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:12:37,700.700 INFO    ] Initializing speech engine...
[2026-10-28 13:12:37,708.708 INFO    ] 2026-10-28 13:12:37
[2026-10-28 13:12:38,008.008 INFO    ] 2026-10-28 13:12:37
[2026-10-28 13:12:38,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:12:38,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:12:38,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:12:38,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:12:38,582.582 INFO    ] time= 28/10/2026 13:12:38
[2026-10-28 13:12:38,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:12:38,629.629 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:12:38,755.755 INFO    ] No existing commands found in stream
[2026-10-28 13:12:43,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:12:43,788.788 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-28 13:12:47,743.743 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:12:47,746.746 INFO    ] Checking for system updates...
[2026-10-28 13:12:47,782.782 INFO    ] 200
[2026-10-28 13:12:47,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:12:47,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:12:47,846.846 INFO    ] No update needed
[2026-10-28 13:12:47,848.848 INFO    ] Checking for camera pi updates...
[2026-10-28 13:12:47,886.886 INFO    ] 200
[2026-10-28 13:12:47,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:12:47,930.930 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:12:48,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:12:48,026.026 INFO    ] No camera update needed
[2026-10-28 13:12:48,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:12:48,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:12:48,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:12:48,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:12:50,081.081 INFO    ] ================================================
[2026-10-28 13:12:50,096.096 INFO    ] Launching Daemon at Wed Oct 28 13:12:50 IST 2026
[2026-10-28 13:12:50,107.107 INFO    ] ================================================
[2026-10-28 13:12:50,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:12:50
[2026-10-28 13:12:51,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:12:51,524.524 INFO    ] Initializing speech engine...
[2026-10-28 13:12:51,532.532 INFO    ] 2026-10-28 13:12:51
[2026-10-28 13:12:51,777.777 INFO    ] 2026-10-28 13:12:51
[2026-10-28 13:12:51,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:12:52,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:12:52,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:12:52,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:12:52,348.348 INFO    ] time= 28/10/2026 13:12:52
[2026-10-28 13:12:52,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:12:52,382.382 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:12:52,517.517 INFO    ] No existing commands found in stream
[2026-10-28 13:12:57,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:12:57,550.550 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-28 13:13:00,299.299 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:13:00,301.301 INFO    ] Checking for system updates...
[2026-10-28 13:13:00,339.339 INFO    ] 200
[2026-10-28 13:13:00,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:13:00,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:13:00,407.407 INFO    ] No update needed
[2026-10-28 13:13:00,410.410 INFO    ] Checking for camera pi updates...
[2026-10-28 13:13:00,444.444 INFO    ] 200
[2026-10-28 13:13:00,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:13:00,489.489 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:13:00,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:13:00,573.573 INFO    ] No camera update needed
[2026-10-28 13:13:00,576.576 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:13:00,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:13:00,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:13:00,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:13:02,654.654 INFO    ] ================================================
[2026-10-28 13:13:02,677.677 INFO    ] Launching Daemon at Wed Oct 28 13:13:02 IST 2026
[2026-10-28 13:13:02,695.695 INFO    ] ================================================
[2026-10-28 13:13:03,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:13:03
[2026-10-28 13:13:03,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:13:04,194.194 INFO    ] Initializing speech engine...
[2026-10-28 13:13:04,203.203 INFO    ] 2026-10-28 13:13:04
[2026-10-28 13:13:04,476.476 INFO    ] 2026-10-28 13:13:04
[2026-10-28 13:13:04,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:13:04,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:13:04,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:13:04,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:13:05,042.042 INFO    ] time= 28/10/2026 13:13:05
[2026-10-28 13:13:05,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:13:05,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:13:05,198.198 INFO    ] No existing commands found in stream
[2026-10-28 13:13:10,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:13:10,216.216 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-28 13:13:11,384.384 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:13:11,387.387 INFO    ] Checking for system updates...
[2026-10-28 13:13:11,423.423 INFO    ] 200
[2026-10-28 13:13:11,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:13:11,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:13:11,489.489 INFO    ] No update needed
[2026-10-28 13:13:11,492.492 INFO    ] Checking for camera pi updates...
[2026-10-28 13:13:11,529.529 INFO    ] 200
[2026-10-28 13:13:11,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:13:11,574.574 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:13:11,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:13:11,658.658 INFO    ] No camera update needed
[2026-10-28 13:13:11,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:13:11,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:13:11,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:13:11,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:13:13,716.716 INFO    ] ================================================
[2026-10-28 13:13:13,731.731 INFO    ] Launching Daemon at Wed Oct 28 13:13:13 IST 2026
[2026-10-28 13:13:13,742.742 INFO    ] ================================================
[2026-10-28 13:13:14,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:13:14
[2026-10-28 13:13:15,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:13:15,374.374 INFO    ] Initializing speech engine...
[2026-10-28 13:13:15,382.382 INFO    ] 2026-10-28 13:13:15
[2026-10-28 13:13:15,703.703 INFO    ] 2026-10-28 13:13:15
[2026-10-28 13:13:15,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:13:16,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:13:16,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:13:16,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:13:16,443.443 INFO    ] time= 28/10/2026 13:13:16
[2026-10-28 13:13:16,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:13:16,578.578 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:13:16,755.755 INFO    ] No existing commands found in stream
[2026-10-28 13:13:21,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:13:21,784.784 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 13:13:23,110.110 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:13:23,113.113 INFO    ] Checking for system updates...
[2026-10-28 13:13:23,150.150 INFO    ] 200
[2026-10-28 13:13:23,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:13:23,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:13:23,222.222 INFO    ] No update needed
[2026-10-28 13:13:23,224.224 INFO    ] Checking for camera pi updates...
[2026-10-28 13:13:23,259.259 INFO    ] 200
[2026-10-28 13:13:23,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:13:23,301.301 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:13:23,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:13:23,388.388 INFO    ] No camera update needed
[2026-10-28 13:13:23,390.390 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:13:23,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:13:23,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:13:23,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:13:25,442.442 INFO    ] ================================================
[2026-10-28 13:13:25,457.457 INFO    ] Launching Daemon at Wed Oct 28 13:13:25 IST 2026
[2026-10-28 13:13:25,468.468 INFO    ] ================================================
[2026-10-28 13:13:26,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:13:26
[2026-10-28 13:13:26,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:13:26,865.865 INFO    ] Initializing speech engine...
[2026-10-28 13:13:26,888.888 INFO    ] 2026-10-28 13:13:26
[2026-10-28 13:13:27,137.137 INFO    ] 2026-10-28 13:13:27
[2026-10-28 13:13:27,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:13:27,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:13:27,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:13:27,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:13:27,702.702 INFO    ] time= 28/10/2026 13:13:27
[2026-10-28 13:13:27,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:13:27,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:13:27,913.913 INFO    ] No existing commands found in stream
[2026-10-28 13:13:32,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:13:32,947.947 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-28 13:13:35,018.018 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:13:35,021.021 INFO    ] Checking for system updates...
[2026-10-28 13:13:35,056.056 INFO    ] 200
[2026-10-28 13:13:35,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:13:35,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:13:35,117.117 INFO    ] No update needed
[2026-10-28 13:13:35,119.119 INFO    ] Checking for camera pi updates...
[2026-10-28 13:13:35,153.153 INFO    ] 200
[2026-10-28 13:13:35,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:13:35,196.196 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:13:35,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:13:35,266.266 INFO    ] No camera update needed
[2026-10-28 13:13:35,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:13:35,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:13:35,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:13:35,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:13:37,321.321 INFO    ] ================================================
[2026-10-28 13:13:37,336.336 INFO    ] Launching Daemon at Wed Oct 28 13:13:37 IST 2026
[2026-10-28 13:13:37,346.346 INFO    ] ================================================
[2026-10-28 13:13:37,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:13:37
[2026-10-28 13:13:38,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:13:38,764.764 INFO    ] Initializing speech engine...
[2026-10-28 13:13:38,772.772 INFO    ] 2026-10-28 13:13:38
[2026-10-28 13:13:39,069.069 INFO    ] 2026-10-28 13:13:39
[2026-10-28 13:13:39,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:13:39,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:13:39,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:13:39,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:13:39,672.672 INFO    ] time= 28/10/2026 13:13:39
[2026-10-28 13:13:39,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:13:39,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:13:39,885.885 INFO    ] No existing commands found in stream
[2026-10-28 13:13:44,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:13:44,901.901 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 13:13:49,147.147 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:13:49,149.149 INFO    ] Checking for system updates...
[2026-10-28 13:13:49,185.185 INFO    ] 200
[2026-10-28 13:13:49,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:13:49,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:13:49,242.242 INFO    ] No update needed
[2026-10-28 13:13:49,245.245 INFO    ] Checking for camera pi updates...
[2026-10-28 13:13:49,278.278 INFO    ] 200
[2026-10-28 13:13:49,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:13:49,321.321 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:13:49,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:13:49,406.406 INFO    ] No camera update needed
[2026-10-28 13:13:49,409.409 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:13:49,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:13:49,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:13:49,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:13:51,462.462 INFO    ] ================================================
[2026-10-28 13:13:51,477.477 INFO    ] Launching Daemon at Wed Oct 28 13:13:51 IST 2026
[2026-10-28 13:13:51,487.487 INFO    ] ================================================
[2026-10-28 13:13:52,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:13:52
[2026-10-28 13:13:52,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:13:52,936.936 INFO    ] Initializing speech engine...
[2026-10-28 13:13:52,945.945 INFO    ] 2026-10-28 13:13:52
[2026-10-28 13:13:53,208.208 INFO    ] 2026-10-28 13:13:53
[2026-10-28 13:13:53,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:13:53,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:13:53,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:13:53,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:13:53,923.923 INFO    ] time= 28/10/2026 13:13:53
[2026-10-28 13:13:53,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:13:54,004.004 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:13:54,161.161 INFO    ] No existing commands found in stream
[2026-10-28 13:13:59,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:13:59,196.196 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-28 13:14:00,298.298 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:14:00,301.301 INFO    ] Checking for system updates...
[2026-10-28 13:14:00,338.338 INFO    ] 200
[2026-10-28 13:14:00,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:14:00,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:14:00,397.397 INFO    ] No update needed
[2026-10-28 13:14:00,400.400 INFO    ] Checking for camera pi updates...
[2026-10-28 13:14:00,434.434 INFO    ] 200
[2026-10-28 13:14:00,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:14:00,480.480 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:14:00,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:14:00,564.564 INFO    ] No camera update needed
[2026-10-28 13:14:00,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:14:00,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:14:00,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:14:00,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:14:02,641.641 INFO    ] ================================================
[2026-10-28 13:14:02,662.662 INFO    ] Launching Daemon at Wed Oct 28 13:14:02 IST 2026
[2026-10-28 13:14:02,677.677 INFO    ] ================================================
[2026-10-28 13:14:03,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:14:03
[2026-10-28 13:14:03,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:14:04,220.220 INFO    ] Initializing speech engine...
[2026-10-28 13:14:04,229.229 INFO    ] 2026-10-28 13:14:04
[2026-10-28 13:14:04,531.531 INFO    ] 2026-10-28 13:14:04
[2026-10-28 13:14:04,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:14:04,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:14:04,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:14:05,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:14:05,166.166 INFO    ] time= 28/10/2026 13:14:05
[2026-10-28 13:14:05,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:14:05,189.189 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:14:05,330.330 INFO    ] No existing commands found in stream
[2026-10-28 13:14:10,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:14:10,358.358 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-28 13:14:12,617.617 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:14:12,619.619 INFO    ] Checking for system updates...
[2026-10-28 13:14:12,659.659 INFO    ] 200
[2026-10-28 13:14:12,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:14:12,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:14:12,718.718 INFO    ] No update needed
[2026-10-28 13:14:12,720.720 INFO    ] Checking for camera pi updates...
[2026-10-28 13:14:12,754.754 INFO    ] 200
[2026-10-28 13:14:12,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:14:12,796.796 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:14:12,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:14:12,875.875 INFO    ] No camera update needed
[2026-10-28 13:14:12,877.877 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:14:12,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:14:12,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:14:12,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:14:14,931.931 INFO    ] ================================================
[2026-10-28 13:14:14,946.946 INFO    ] Launching Daemon at Wed Oct 28 13:14:14 IST 2026
[2026-10-28 13:14:14,957.957 INFO    ] ================================================
[2026-10-28 13:14:15,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:14:15
[2026-10-28 13:14:16,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:14:16,375.375 INFO    ] Initializing speech engine...
[2026-10-28 13:14:16,385.385 INFO    ] 2026-10-28 13:14:16
[2026-10-28 13:14:16,630.630 INFO    ] 2026-10-28 13:14:16
[2026-10-28 13:14:16,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:14:16,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:14:16,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:14:17,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:14:17,215.215 INFO    ] time= 28/10/2026 13:14:17
[2026-10-28 13:14:17,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:14:17,248.248 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:14:17,370.370 INFO    ] No existing commands found in stream
[2026-10-28 13:14:22,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:14:22,403.403 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 13:14:26,588.588 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:14:26,591.591 INFO    ] Checking for system updates...
[2026-10-28 13:14:26,634.634 INFO    ] 200
[2026-10-28 13:14:26,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:14:26,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:14:26,698.698 INFO    ] No update needed
[2026-10-28 13:14:26,701.701 INFO    ] Checking for camera pi updates...
[2026-10-28 13:14:26,735.735 INFO    ] 200
[2026-10-28 13:14:26,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:14:26,779.779 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:14:26,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:14:26,863.863 INFO    ] No camera update needed
[2026-10-28 13:14:26,865.865 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:14:26,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:14:26,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:14:26,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:14:28,918.918 INFO    ] ================================================
[2026-10-28 13:14:28,935.935 INFO    ] Launching Daemon at Wed Oct 28 13:14:28 IST 2026
[2026-10-28 13:14:28,946.946 INFO    ] ================================================
[2026-10-28 13:14:29,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:14:29
[2026-10-28 13:14:30,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:14:30,409.409 INFO    ] Initializing speech engine...
[2026-10-28 13:14:30,415.415 INFO    ] 2026-10-28 13:14:30
[2026-10-28 13:14:30,664.664 INFO    ] 2026-10-28 13:14:30
[2026-10-28 13:14:30,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:14:31,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:14:31,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:14:31,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:14:31,390.390 INFO    ] time= 28/10/2026 13:14:31
[2026-10-28 13:14:31,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:14:31,476.476 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:14:31,625.625 INFO    ] No existing commands found in stream
[2026-10-28 13:14:36,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:14:36,641.641 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-28 13:14:39,506.506 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:14:39,509.509 INFO    ] Checking for system updates...
[2026-10-28 13:14:39,549.549 INFO    ] 200
[2026-10-28 13:14:39,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:14:39,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:14:39,614.614 INFO    ] No update needed
[2026-10-28 13:14:39,618.618 INFO    ] Checking for camera pi updates...
[2026-10-28 13:14:39,655.655 INFO    ] 200
[2026-10-28 13:14:39,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:14:39,703.703 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:14:39,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:14:39,889.889 INFO    ] No camera update needed
[2026-10-28 13:14:39,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:14:39,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:14:39,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:14:39,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:14:41,953.953 INFO    ] ================================================
[2026-10-28 13:14:41,967.967 INFO    ] Launching Daemon at Wed Oct 28 13:14:41 IST 2026
[2026-10-28 13:14:41,978.978 INFO    ] ================================================
[2026-10-28 13:14:42,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:14:42
[2026-10-28 13:14:43,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:14:43,620.620 INFO    ] Initializing speech engine...
[2026-10-28 13:14:43,627.627 INFO    ] 2026-10-28 13:14:43
[2026-10-28 13:14:43,916.916 INFO    ] 2026-10-28 13:14:43
[2026-10-28 13:14:43,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:14:44,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:14:44,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:14:44,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:14:44,660.660 INFO    ] time= 28/10/2026 13:14:44
[2026-10-28 13:14:44,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:14:44,751.751 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:14:44,904.904 INFO    ] No existing commands found in stream
[2026-10-28 13:14:49,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:14:49,918.918 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-28 13:14:54,539.539 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:14:54,542.542 INFO    ] Checking for system updates...
[2026-10-28 13:14:54,579.579 INFO    ] 200
[2026-10-28 13:14:54,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:14:54,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:14:54,638.638 INFO    ] No update needed
[2026-10-28 13:14:54,641.641 INFO    ] Checking for camera pi updates...
[2026-10-28 13:14:54,680.680 INFO    ] 200
[2026-10-28 13:14:54,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:14:54,724.724 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:14:54,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:14:54,789.789 INFO    ] No camera update needed
[2026-10-28 13:14:54,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:14:54,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:14:54,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:14:54,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:14:56,848.848 INFO    ] ================================================
[2026-10-28 13:14:56,863.863 INFO    ] Launching Daemon at Wed Oct 28 13:14:56 IST 2026
[2026-10-28 13:14:56,873.873 INFO    ] ================================================
[2026-10-28 13:14:57,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:14:57
[2026-10-28 13:14:58,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:14:58,329.329 INFO    ] Initializing speech engine...
[2026-10-28 13:14:58,347.347 INFO    ] 2026-10-28 13:14:58
[2026-10-28 13:14:58,594.594 INFO    ] 2026-10-28 13:14:58
[2026-10-28 13:14:58,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:14:58,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:14:58,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:14:59,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:14:59,163.163 INFO    ] time= 28/10/2026 13:14:59
[2026-10-28 13:14:59,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:14:59,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:14:59,346.346 INFO    ] No existing commands found in stream
[2026-10-28 13:15:04,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:15:04,374.374 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 13:15:08,018.018 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:15:08,020.020 INFO    ] Checking for system updates...
[2026-10-28 13:15:08,056.056 INFO    ] 200
[2026-10-28 13:15:08,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:15:08,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:15:08,113.113 INFO    ] No update needed
[2026-10-28 13:15:08,116.116 INFO    ] Checking for camera pi updates...
[2026-10-28 13:15:08,149.149 INFO    ] 200
[2026-10-28 13:15:08,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:15:08,197.197 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:15:08,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:15:08,292.292 INFO    ] No camera update needed
[2026-10-28 13:15:08,295.295 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:15:08,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:15:08,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:15:08,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:15:10,347.347 INFO    ] ================================================
[2026-10-28 13:15:10,363.363 INFO    ] Launching Daemon at Wed Oct 28 13:15:10 IST 2026
[2026-10-28 13:15:10,374.374 INFO    ] ================================================
[2026-10-28 13:15:10,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:15:10
[2026-10-28 13:15:11,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:15:11,827.827 INFO    ] Initializing speech engine...
[2026-10-28 13:15:11,836.836 INFO    ] 2026-10-28 13:15:11
[2026-10-28 13:15:12,094.094 INFO    ] 2026-10-28 13:15:12
[2026-10-28 13:15:12,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:15:12,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:15:12,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:15:12,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:15:12,681.681 INFO    ] time= 28/10/2026 13:15:12
[2026-10-28 13:15:12,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:15:12,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:15:12,817.817 INFO    ] No existing commands found in stream
[2026-10-28 13:15:17,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:15:17,850.850 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-28 13:15:21,432.432 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:15:21,435.435 INFO    ] Checking for system updates...
[2026-10-28 13:15:21,470.470 INFO    ] 200
[2026-10-28 13:15:21,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:15:21,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:15:21,527.527 INFO    ] No update needed
[2026-10-28 13:15:21,529.529 INFO    ] Checking for camera pi updates...
[2026-10-28 13:15:21,562.562 INFO    ] 200
[2026-10-28 13:15:21,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:15:21,605.605 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:15:21,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:15:21,701.701 INFO    ] No camera update needed
[2026-10-28 13:15:21,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:15:21,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:15:21,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:15:21,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:15:23,758.758 INFO    ] ================================================
[2026-10-28 13:15:23,773.773 INFO    ] Launching Daemon at Wed Oct 28 13:15:23 IST 2026
[2026-10-28 13:15:23,784.784 INFO    ] ================================================
[2026-10-28 13:15:24,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:15:24
[2026-10-28 13:15:24,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:15:25,240.240 INFO    ] Initializing speech engine...
[2026-10-28 13:15:25,247.247 INFO    ] 2026-10-28 13:15:25
[2026-10-28 13:15:25,507.507 INFO    ] 2026-10-28 13:15:25
[2026-10-28 13:15:25,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:15:25,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:15:25,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:15:26,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:15:26,023.023 INFO    ] time= 28/10/2026 13:15:26
[2026-10-28 13:15:26,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:15:26,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:15:26,267.267 INFO    ] No existing commands found in stream
[2026-10-28 13:15:31,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:15:31,288.288 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 13:15:35,197.197 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:15:35,199.199 INFO    ] Checking for system updates...
[2026-10-28 13:15:35,235.235 INFO    ] 200
[2026-10-28 13:15:35,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:15:35,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:15:35,300.300 INFO    ] No update needed
[2026-10-28 13:15:35,302.302 INFO    ] Checking for camera pi updates...
[2026-10-28 13:15:35,341.341 INFO    ] 200
[2026-10-28 13:15:35,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:15:35,385.385 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:15:35,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:15:35,470.470 INFO    ] No camera update needed
[2026-10-28 13:15:35,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:15:35,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:15:35,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:15:35,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:15:37,527.527 INFO    ] ================================================
[2026-10-28 13:15:37,542.542 INFO    ] Launching Daemon at Wed Oct 28 13:15:37 IST 2026
[2026-10-28 13:15:37,553.553 INFO    ] ================================================
[2026-10-28 13:15:38,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:15:38
[2026-10-28 13:15:38,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:15:39,045.045 INFO    ] Initializing speech engine...
[2026-10-28 13:15:39,054.054 INFO    ] 2026-10-28 13:15:39
[2026-10-28 13:15:39,310.310 INFO    ] 2026-10-28 13:15:39
[2026-10-28 13:15:39,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:15:39,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:15:39,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:15:39,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:15:39,864.864 INFO    ] time= 28/10/2026 13:15:39
[2026-10-28 13:15:39,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:15:39,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:15:40,056.056 INFO    ] No existing commands found in stream
[2026-10-28 13:15:45,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:15:45,088.088 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-28 13:15:48,215.215 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:15:48,218.218 INFO    ] Checking for system updates...
[2026-10-28 13:15:48,259.259 INFO    ] 200
[2026-10-28 13:15:48,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:15:48,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:15:48,319.319 INFO    ] No update needed
[2026-10-28 13:15:48,322.322 INFO    ] Checking for camera pi updates...
[2026-10-28 13:15:48,362.362 INFO    ] 200
[2026-10-28 13:15:48,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:15:48,406.406 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:15:48,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:15:48,489.489 INFO    ] No camera update needed
[2026-10-28 13:15:48,492.492 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:15:48,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:15:48,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:15:48,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:15:50,547.547 INFO    ] ================================================
[2026-10-28 13:15:50,561.561 INFO    ] Launching Daemon at Wed Oct 28 13:15:50 IST 2026
[2026-10-28 13:15:50,572.572 INFO    ] ================================================
[2026-10-28 13:15:51,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:15:51
[2026-10-28 13:15:51,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:15:52,037.037 INFO    ] Initializing speech engine...
[2026-10-28 13:15:52,047.047 INFO    ] 2026-10-28 13:15:52
[2026-10-28 13:15:52,294.294 INFO    ] 2026-10-28 13:15:52
[2026-10-28 13:15:52,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:15:52,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:15:52,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:15:52,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:15:52,851.851 INFO    ] time= 28/10/2026 13:15:52
[2026-10-28 13:15:52,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:15:52,897.897 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:15:53,033.033 INFO    ] No existing commands found in stream
[2026-10-28 13:15:58,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:15:58,066.066 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-28 13:16:01,740.740 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:16:01,744.744 INFO    ] Checking for system updates...
[2026-10-28 13:16:01,794.794 INFO    ] 200
[2026-10-28 13:16:01,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:16:01,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:16:01,872.872 INFO    ] No update needed
[2026-10-28 13:16:01,875.875 INFO    ] Checking for camera pi updates...
[2026-10-28 13:16:01,912.912 INFO    ] 200
[2026-10-28 13:16:01,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:16:01,978.978 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:16:02,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:16:02,112.112 INFO    ] No camera update needed
[2026-10-28 13:16:02,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:16:02,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:16:02,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:16:02,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:16:04,201.201 INFO    ] ================================================
[2026-10-28 13:16:04,216.216 INFO    ] Launching Daemon at Wed Oct 28 13:16:04 IST 2026
[2026-10-28 13:16:04,227.227 INFO    ] ================================================
[2026-10-28 13:16:04,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:16:04
[2026-10-28 13:16:05,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:16:05,631.631 INFO    ] Initializing speech engine...
[2026-10-28 13:16:05,654.654 INFO    ] 2026-10-28 13:16:05
[2026-10-28 13:16:05,909.909 INFO    ] 2026-10-28 13:16:05
[2026-10-28 13:16:05,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:16:06,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:16:06,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:16:06,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:16:06,478.478 INFO    ] time= 28/10/2026 13:16:06
[2026-10-28 13:16:06,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:16:06,519.519 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:16:06,659.659 INFO    ] No existing commands found in stream
[2026-10-28 13:16:11,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:16:11,692.692 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 13:16:15,712.712 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:16:15,715.715 INFO    ] Checking for system updates...
[2026-10-28 13:16:15,750.750 INFO    ] 200
[2026-10-28 13:16:15,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:16:15,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:16:15,807.807 INFO    ] No update needed
[2026-10-28 13:16:15,810.810 INFO    ] Checking for camera pi updates...
[2026-10-28 13:16:15,844.844 INFO    ] 200
[2026-10-28 13:16:15,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:16:15,889.889 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:16:15,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:16:15,966.966 INFO    ] No camera update needed
[2026-10-28 13:16:15,969.969 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:16:15,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:16:15,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:16:15,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:16:18,025.025 INFO    ] ================================================
[2026-10-28 13:16:18,041.041 INFO    ] Launching Daemon at Wed Oct 28 13:16:18 IST 2026
[2026-10-28 13:16:18,052.052 INFO    ] ================================================
[2026-10-28 13:16:18,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:16:18
[2026-10-28 13:16:19,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:16:19,479.479 INFO    ] Initializing speech engine...
[2026-10-28 13:16:19,494.494 INFO    ] 2026-10-28 13:16:19
[2026-10-28 13:16:19,760.760 INFO    ] 2026-10-28 13:16:19
[2026-10-28 13:16:19,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:16:20,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:16:20,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:16:20,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:16:20,349.349 INFO    ] time= 28/10/2026 13:16:20
[2026-10-28 13:16:20,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:16:20,382.382 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:16:20,502.502 INFO    ] No existing commands found in stream
[2026-10-28 13:16:22,743.743 INFO    ] Received new command: ID=1793173582476-0
[2026-10-28 13:16:22,747.747 INFO    ] process_and_cleanup_command: msg_id=1793173582476-0
[2026-10-28 13:16:22,749.749 INFO    ] is_command_expired: timestamp=2026-10-28T07:46:21.508Z, expiry=30s
[2026-10-28 13:16:22,865.865 INFO    ] Command removed from stream: 1793173582476-0. returning for processing...
[2026-10-28 13:16:22,868.868 INFO    ] ***** get_valid_command
[2026-10-28 13:16:22,871.871 INFO    ] {'source': 'webapp', 'timeout': '10', 'data': '{"request_id":"start-order-1793173581508-ktfez95eb","orderId":"TM08202202261028131611990","is_vending":false}', 'command': 'start-order', 'timestamp': '2026-10-28T07:46:21.508Z'}
[2026-10-28 13:16:22,874.874 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM08202202261028131611990', 'request_id': 'start-order-1793173581508-ktfez95eb'}
[2026-10-28 13:16:22,877.877 INFO    ] Handling start order...
[2026-10-28 13:16:22,880.880 INFO    ] handle_start_order_command
[2026-10-28 13:16:22,886.886 INFO    ] _send_start_order_success: request_id=start-order-1793173581508-ktfez95eb, order_id=TM08202202261028131611990
[2026-10-28 13:16:22,889.889 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202202
[2026-10-28 13:16:23,010.010 INFO    ] [_send_start_order_success] Message added to stream with ID: 1793173582964-0
[2026-10-28 13:16:23,012.012 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-10-28 13:16:23,017.017 INFO    ] Checking for system updates...
[2026-10-28 13:16:23,061.061 INFO    ] 200
[2026-10-28 13:16:23,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:16:23,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:16:23,122.122 INFO    ] No update needed
[2026-10-28 13:16:23,125.125 INFO    ] Checking for camera pi updates...
[2026-10-28 13:16:23,160.160 INFO    ] 200
[2026-10-28 13:16:23,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:16:23,208.208 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:16:23,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:16:23,305.305 INFO    ] No camera update needed
[2026-10-28 13:16:23,308.308 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:16:23,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:16:23,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:16:23,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:16:25,364.364 INFO    ] ================================================
[2026-10-28 13:16:25,379.379 INFO    ] Launching Daemon at Wed Oct 28 13:16:25 IST 2026
[2026-10-28 13:16:25,391.391 INFO    ] ================================================
[2026-10-28 13:16:25,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:16:25
[2026-10-28 13:16:26,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:16:26,821.821 INFO    ] Initializing speech engine...
[2026-10-28 13:16:26,831.831 INFO    ] 2026-10-28 13:16:26
[2026-10-28 13:16:27,081.081 INFO    ] 2026-10-28 13:16:27
[2026-10-28 13:16:27,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:16:27,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:16:27,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:16:27,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:16:27,650.650 INFO    ] time= 28/10/2026 13:16:27
[2026-10-28 13:16:27,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:16:27,674.674 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:16:27,805.805 INFO    ] Found 2 existing command(s) in stream
[2026-10-28 13:16:27,853.853 INFO    ] Checking historical command: ID=1793173582964-0
[2026-10-28 13:16:27,918.918 INFO    ] process_and_cleanup_command: msg_id=1793173582964-0
[2026-10-28 13:16:27,939.939 INFO    ] is_command_expired: timestamp=2026-10-28T07:46:22.887485Z, expiry=30s
[2026-10-28 13:16:28,241.241 INFO    ] Command removed from stream: 1793173582964-0. returning for processing...
[2026-10-28 13:16:28,285.285 INFO    ] ***** get_valid_command
[2026-10-28 13:16:28,291.291 INFO    ] {'timestamp': '2026-10-28T07:46:22.887485Z', 'metadata_request_id': 'start-order-1793173581508-ktfez95eb', 'message_type': 'command_response', 'metadata_order_id': 'TM08202202261028131611990', 'imei': 'TM08202202', 'message': 'start-order success', 'status': 'success'}
[2026-10-28 13:16:28,294.294 INFO    ] Checking historical command: ID=1793173586489-0
[2026-10-28 13:16:28,318.318 INFO    ] process_and_cleanup_command: msg_id=1793173586489-0
[2026-10-28 13:16:28,350.350 INFO    ] is_command_expired: timestamp=2026-10-28T07:46:25.670Z, expiry=30s
[2026-10-28 13:16:28,424.424 INFO    ] Command removed from stream: 1793173586489-0. returning for processing...
[2026-10-28 13:16:28,429.429 INFO    ] ***** get_valid_command
[2026-10-28 13:16:28,434.434 INFO    ] {'timestamp': '2026-10-28T07:46:25.670Z', 'source': 'webapp', 'data': '{"request_id":"process-order-1793173585670-nbdnq6pv8","orderId":"TM08202202261028131611990","is_vending":false,"accessCode":"19253297"}', 'command': 'process-order', 'timeout': '60'}
[2026-10-28 13:16:28,439.439 INFO    ] ***** Parsed command data: {'accessCode': '19253297', 'orderId': 'TM08202202261028131611990', 'request_id': 'process-order-1793173585670-nbdnq6pv8', 'is_vending': False}
[2026-10-28 13:16:28,444.444 INFO    ] Handling process order...
[2026-10-28 13:16:28,448.448 INFO    ] Processing process-order command...
[2026-10-28 13:16:28,452.452 INFO    ] 🔍 Lock file Order ID: TM08202202261028131611990, TS: 2026-10-28 13:16:22
[2026-10-28 13:16:28,468.468 INFO    ] ✅ Order lock valid for TM08202202261028131611990
[2026-10-28 13:16:28,471.471 INFO    ] Received access code in process-order, skipping PHP API call
[2026-10-28 13:16:28,474.474 INFO    ] processing access code 19253297 for order TM08202202261028131611990
[2026-10-28 13:16:28,477.477 INFO    ] 🔍 Lock file Order ID: TM08202202261028131611990, TS: 2026-10-28 13:16:22
[2026-10-28 13:16:28,536.536 INFO    ] ✅ Order lock valid for TM08202202261028131611990
[2026-10-28 13:16:28,591.591 INFO    ] 2026-10-28 13:16:28
[2026-10-28 13:16:28,646.646 INFO    ] 200
[2026-10-28 13:16:28,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:16:28,656.656 INFO    ] 19253297
[2026-10-28 13:16:28,662.662 INFO    ] 2026-10-28 13:16:28
[2026-10-28 13:16:28,669.669 INFO    ] session id :923454401
[2026-10-28 13:16:28,674.674 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=19253297&imei=TM08202202&session_id=923454401
[2026-10-28 13:16:29,955.955 INFO    ] 200
[2026-10-28 13:16:29,993.993 INFO    ] {"rstatus": true, "status": true, "msg": "Order Data", "data": {"proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/8639-1552.png", "skuid": "8639", "qty": 1, "sku_total": 20, "offer_desc": "", "tray_id": "44", "name": "Sprite, 250ml", "door_id": "2", "mrp": "20", "offer_id": "", "unit_price": 20}, {"image_url": "https://images.tinymart.in/product/4500742-8191.jpg", "skuid": "4500742", "qty": 1, "sku_total": 10, "offer_desc": "", "tray_id": "37", "name": "Winkies Mini swiss Roll 28gm", "door_id": "2", "mrp": "10", "offer_id": "", "unit_price": 10}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "qty": 1, "sku_total": 20, "offer_desc": "", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "door_id": "2", "mrp": "20", "offer_id": "", "unit_price": 20}, {"image_url": "https://images.tinymart.in/product/4500748-1263.png", "skuid": "4500748", "qty": 1, "sku_total": 10, "offer_desc": "", "tray_id": "23", "name": "Maxvita puffcorn cheese masti", "door_id": "1", "mrp": "10", "offer_id": "", "unit_price": 10}, {"image_url": "https://images.tinymart.in/product/186096-4254.jpg", "skuid": "186096", "qty": 1, "sku_total": 10, "offer_desc": "", "tray_id": "45", "name": "Maaza Tetra 135ml", "door_id": "2", "mrp": "10", "offer_id": "", "unit_price": 10}], "bill_amount": "70", "mobile": "7483036764", "invoice_bill": "70", "order_id": "TM08202202261028131611990", "access_code": "19253297"}}
[2026-10-28 13:16:30,002.002 INFO    ] 70
[2026-10-28 13:16:30,029.029 INFO    ] TM08202202261028131611990
[2026-10-28 13:16:30,036.036 INFO    ] 7483036764
[2026-10-28 13:16:30,042.042 INFO    ] 2026-10-28 13:16:30
[2026-10-28 13:16:30,051.051 INFO    ] Door Opening for user mobile ending with  six seven six four 
[2026-10-28 13:16:30,060.060 INFO    ] Door Opening for user mobile ending with  six seven six four 
[2026-10-28 13:16:30,070.070 INFO    ] cee7ce5335d12328eb0a755dbc8957a4
[2026-10-28 13:16:30,079.079 INFO    ] 2026-10-28 13:16:30
[2026-10-28 13:16:30,101.101 INFO    ] playing audio file
[2026-10-28 13:16:30,125.125 INFO    ] 2026-10-28 13:16:30
[2026-10-28 13:16:30,149.149 INFO    ] 2026-10-28 13:16:30
[2026-10-28 13:16:30,214.214 INFO    ] publish_status: order_id=TM08202202261028131611990
[2026-10-28 13:16:30,246.246 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028131611990
[2026-10-28 13:16:30,384.384 INFO    ] [publish_status] Message added to stream with ID: 1793173590353-0
[2026-10-28 13:16:30,387.387 INFO    ] Published to order:TM08202202261028131611990: {'timestamp': '2026-10-28T07:46:30.161074Z', 'server_response': '{"data": {"mobile": "7483036764", "access_code": "19253297", "proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/8639-1552.png", "door_id": "2", "unit_price": 20, "offer_id": "", "offer_desc": "", "mrp": "20", "tray_id": "44", "name": "Sprite, 250ml", "sku_total": 20, "qty": 1, "skuid": "8639"}, {"image_url": "https://images.tinymart.in/product/4500742-8191.jpg", "door_id": "2", "unit_price": 10, "offer_id": "", "offer_desc": "", "mrp": "10", "tray_id": "37", "name": "Winkies Mini swiss Roll 28gm", "sku_total": 10, "qty": 1, "skuid": "4500742"}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "door_id": "2", "unit_price": 20, "offer_id": "", "offer_desc": "", "mrp": "20", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "sku_total": 20, "qty": 1, "skuid": "185993"}, {"image_url": "https://images.tinymart.in/product/4500748-1263.png", "door_id": "1", "unit_price": 10, "offer_id": "", "offer_desc": "", "mrp": "10", "tray_id": "23", "name": "Maxvita puffcorn cheese masti", "sku_total": 10, "qty": 1, "skuid": "4500748"}, {"image_url": "https://images.tinymart.in/product/186096-4254.jpg", "door_id": "2", "unit_price": 10, "offer_id": "", "offer_desc": "", "mrp": "10", "tray_id": "45", "name": "Maaza Tetra 135ml", "sku_total": 10, "qty": 1, "skuid": "186096"}], "invoice_bill": "70", "order_id": "TM08202202261028131611990", "bill_amount": "70"}, "status": true, "rstatus": true, "msg": "Order Data"}', 'order_id': 'TM08202202261028131611990', 'server_status': 'order-started'} (ID: 1793173590353-0)
[2026-10-28 13:16:31,149.149 INFO    ] {'server_response': {'data': {'mobile': '7483036764', 'access_code': '19253297', 'proposed_sku_json': [{'image_url': 'https://images.tinymart.in/product/8639-1552.png', 'door_id': '2', 'unit_price': 20, 'offer_id': '', 'offer_desc': '', 'mrp': '20', 'tray_id': '44', 'name': 'Sprite, 250ml', 'sku_total': 20, 'qty': 1, 'skuid': '8639'}, {'image_url': 'https://images.tinymart.in/product/4500742-8191.jpg', 'door_id': '2', 'unit_price': 10, 'offer_id': '', 'offer_desc': '', 'mrp': '10', 'tray_id': '37', 'name': 'Winkies Mini swiss Roll 28gm', 'sku_total': 10, 'qty': 1, 'skuid': '4500742'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '2', 'unit_price': 20, 'offer_id': '', 'offer_desc': '', 'mrp': '20', 'tray_id': '43', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'sku_total': 20, 'qty': 1, 'skuid': '185993'}, {'image_url': 'https://images.tinymart.in/product/4500748-1263.png', 'door_id': '1', 'unit_price': 10, 'offer_id': '', 'offer_desc': '', 'mrp': '10', 'tray_id': '23', 'name': 'Maxvita puffcorn cheese masti', 'sku_total': 10, 'qty': 1, 'skuid': '4500748'}, {'image_url': 'https://images.tinymart.in/product/186096-4254.jpg', 'door_id': '2', 'unit_price': 10, 'offer_id': '', 'offer_desc': '', 'mrp': '10', 'tray_id': '45', 'name': 'Maaza Tetra 135ml', 'sku_total': 10, 'qty': 1, 'skuid': '186096'}], 'invoice_bill': '70', 'order_id': 'TM08202202261028131611990', 'bill_amount': '70'}, 'status': True, 'rstatus': True, 'msg': 'Order Data'}, 'order_id': 'TM08202202261028131611990', 'server_status': 'order-started'}
[2026-10-28 13:16:31,152.152 INFO    ] 200
[2026-10-28 13:16:31,154.154 INFO    ] {"data":{"server_response":{"data":{"mobile":"7483036764","access_code":"19253297","proposed_sku_json":[{"image_url":"https:\/\/images.tinymart.in\/product\/8639-1552.png","door_id":"2","unit_price":20,"offer_id":"","offer_desc":"","mrp":"20","tray_id":"44","name":"Sprite, 250ml","sku_total":20,"qty":1,"skuid":"8639"},{"image_url":"https:\/\/images.tinymart.in\/product\/4500742-8191.jpg","door_id":"2","unit_price":10,"offer_id":"","offer_desc":"","mrp":"10","tray_id":"37","name":"Winkies Mini swiss Roll 28gm","sku_total":10,"qty":1,"skuid":"4500742"},{"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","door_id":"2","unit_price":20,"offer_id":"","offer_desc":"","mrp":"20","tray_id":"43","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","sku_total":20,"qty":1,"skuid":"185993"},{"image_url":"https:\/\/images.tinymart.in\/product\/4500748-1263.png","door_id":"1","unit_price":10,"offer_id":"","offer_desc":"","mrp":"10","tray_id":"23","name":"Maxvita puffcorn cheese masti","sku_total":10,"qty":1,"skuid":"4500748"},{"image_url":"https:\/\/images.tinymart.in\/product\/186096-4254.jpg","door_id":"2","unit_price":10,"offer_id":"","offer_desc":"","mrp":"10","tray_id":"45","name":"Maaza Tetra 135ml","sku_total":10,"qty":1,"skuid":"186096"}],"invoice_bill":"70","order_id":"TM08202202261028131611990","bill_amount":"70"},"status":true,"rstatus":true,"msg":"Order Data"},"order_id":"TM08202202261028131611990","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 13:16:31,157.157 INFO    ] {'data': {'server_status': 'order-started', 'order_id': 'TM08202202261028131611990', 'server_response': {'data': {'mobile': '7483036764', 'access_code': '19253297', 'proposed_sku_json': [{'tray_id': '44', 'image_url': 'https://images.tinymart.in/product/8639-1552.png', 'door_id': '2', 'offer_desc': '', 'mrp': '20', 'unit_price': 20, 'name': 'Sprite, 250ml', 'sku_total': 20, 'offer_id': '', 'qty': 1, 'skuid': '8639'}, {'tray_id': '37', 'image_url': 'https://images.tinymart.in/product/4500742-8191.jpg', 'door_id': '2', 'offer_desc': '', 'mrp': '10', 'unit_price': 10, 'name': 'Winkies Mini swiss Roll 28gm', 'sku_total': 10, 'offer_id': '', 'qty': 1, 'skuid': '4500742'}, {'tray_id': '43', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '2', 'offer_desc': '', 'mrp': '20', 'unit_price': 20, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'sku_total': 20, 'offer_id': '', 'qty': 1, 'skuid': '185993'}, {'tray_id': '23', 'image_url': 'https://images.tinymart.in/product/4500748-1263.png', 'door_id': '1', 'offer_desc': '', 'mrp': '10', 'unit_price': 10, 'name': 'Maxvita puffcorn cheese masti', 'sku_total': 10, 'offer_id': '', 'qty': 1, 'skuid': '4500748'}, {'tray_id': '45', 'image_url': 'https://images.tinymart.in/product/186096-4254.jpg', 'door_id': '2', 'offer_desc': '', 'mrp': '10', 'unit_price': 10, 'name': 'Maaza Tetra 135ml', 'sku_total': 10, 'offer_id': '', 'qty': 1, 'skuid': '186096'}], 'invoice_bill': '70', 'order_id': 'TM08202202261028131611990', 'bill_amount': '70'}, 'status': True, 'rstatus': True, 'msg': 'Order Data'}}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-10-28 13:16:31,160.160 INFO    ] 2026-10-28 13:16:31
[2026-10-28 13:16:31,209.209 INFO    ] 200
[2026-10-28 13:16:31,211.211 INFO    ] True
[2026-10-28 13:16:31,371.371 INFO    ] 200
[2026-10-28 13:16:31,374.374 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "SectionStatus": {"SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}}
[2026-10-28 13:16:31,378.378 INFO    ] {'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'False', 'voiceNote': 'Please Wait'}
[2026-10-28 13:16:31,381.381 INFO    ] *** process_order ***
[2026-10-28 13:16:32,613.613 INFO    ] 200
[2026-10-28 13:16:32,617.617 INFO    ] {"rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "SectionStatus": {"SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}}
[2026-10-28 13:16:32,621.621 INFO    ] {'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True', 'voiceNote': 'Please Wait'}
[2026-10-28 13:16:32,625.625 INFO    ] *** process_order ***
[2026-10-28 13:16:32,629.629 INFO    ] publish_status: order_id=TM08202202261028131611990
[2026-10-28 13:16:32,633.633 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028131611990
[2026-10-28 13:16:32,770.770 INFO    ] [publish_status] Message added to stream with ID: 1793173592722-0
[2026-10-28 13:16:32,773.773 INFO    ] Published to order:TM08202202261028131611990: {'server_response': '{"SectionStatus": {"Note": "", "Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "You can pull the door now."}, "delay": 0, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "status": "True", "voiceNote": "Door is open..."}', 'order_id': 'TM08202202261028131611990', 'server_status': 'doorOpened'} (ID: 1793173592722-0)
[2026-10-28 13:16:33,867.867 INFO    ] 2026-10-28 13:16:33
[2026-10-28 13:16:33,871.871 INFO    ] publish_status: order_id=TM08202202261028131611990
[2026-10-28 13:16:33,875.875 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028131611990
[2026-10-28 13:16:33,988.988 INFO    ] [publish_status] Message added to stream with ID: 1793173593951-0
[2026-10-28 13:16:33,991.991 INFO    ] Published to order:TM08202202261028131611990: {'timestamp': '2026-10-28T07:46:33.869432Z', 'server_response': '{"SectionStatus": {"Note": "", "Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "delay": 0, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "status": "True", "voiceNote": "Please Wait"}', 'order_id': 'TM08202202261028131611990', 'server_status': 'processOrder'} (ID: 1793173593951-0)
[2026-10-28 13:16:34,180.180 INFO    ] {'server_response': {'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True', 'voiceNote': 'Please Wait'}, 'order_id': 'TM08202202261028131611990', 'server_status': 'processOrder'}
[2026-10-28 13:16:34,183.183 INFO    ] 200
[2026-10-28 13:16:34,186.186 INFO    ] {"data":{"server_response":{"SectionStatus":{"Note":"","Header":" Your order is under process  ","UI_Header":"","SubHeader":"Please wait while we process your order"},"delay":0,"rstatus":true,"SectionMain":{"Header":"Processing Order"},"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"status":"true","voiceNote":"Please Wait"},"order_id":"TM08202202261028131611990","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 13:16:34,189.189 INFO    ] {'data': {'server_status': 'processOrder', 'order_id': 'TM08202202261028131611990', 'server_response': {'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'true', 'voiceNote': 'Please Wait'}}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-10-28 13:16:34,193.193 INFO    ] 2026-10-28 13:16:34
[2026-10-28 13:16:34,196.196 INFO    ] None
[2026-10-28 13:16:34,199.199 INFO    ] Opening Door now
[2026-10-28 13:16:34,202.202 INFO    ] Opening Door now
[2026-10-28 13:16:34,206.206 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-10-28 13:16:34,210.210 INFO    ] 2026-10-28 13:16:34
[2026-10-28 13:16:34,212.212 INFO    ] playing audio file
[2026-10-28 13:16:34,231.231 INFO    ] 2026-10-28 13:16:34
[2026-10-28 13:16:34,235.235 INFO    ] 2026-10-28 13:16:34
[2026-10-28 13:16:37,329.329 INFO    ] 200
[2026-10-28 13:16:37,332.332 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Maxvita puffcorn cheese masti", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 1 is open now", "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"}}
[2026-10-28 13:16:37,336.336 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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Door 1 is open now'}
[2026-10-28 13:16:40,406.406 INFO    ] 200
[2026-10-28 13:16:40,409.409 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Maxvita puffcorn cheese masti", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:16:40,413.413 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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 1'}
[2026-10-28 13:16:43,487.487 INFO    ] 200
[2026-10-28 13:16:43,490.490 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Maxvita puffcorn cheese masti", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:16:43,494.494 INFO    ] Please close door 1
[2026-10-28 13:16:43,497.497 INFO    ] Please close door 1
[2026-10-28 13:16:43,500.500 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-10-28 13:16:43,503.503 INFO    ] 2026-10-28 13:16:43
[2026-10-28 13:16:43,506.506 INFO    ] playing audio file
[2026-10-28 13:16:43,524.524 INFO    ] 2026-10-28 13:16:43
[2026-10-28 13:16:43,529.529 INFO    ] publish_status: order_id=TM08202202261028131611990
[2026-10-28 13:16:43,532.532 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028131611990
[2026-10-28 13:16:43,682.682 INFO    ] [publish_status] Message added to stream with ID: 1793173603642-0
[2026-10-28 13:16:43,686.686 INFO    ] Published to order:TM08202202261028131611990: {'timestamp': '2026-10-28T07:46:43.526733Z', '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, "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"skus": [{"name": "Maxvita puffcorn cheese masti", "qty": 1}], "Header": "Pick the below items from the door"}, "status": "False", "voiceNote": "Please close door 1"}', 'order_id': 'TM08202202261028131611990', 'server_status': 'OrderStatus'} (ID: 1793173603642-0)
[2026-10-28 13:16:44,447.447 INFO    ] {'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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 1'}, 'order_id': 'TM08202202261028131611990', 'server_status': 'OrderStatus'}
[2026-10-28 13:16:44,450.450 INFO    ] 200
[2026-10-28 13:16:44,452.452 INFO    ] {"data":{"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,"SectionMain":{"Header":"Door Open"},"error":{"umessage":"In Progress","tmessage":"In Progress","data":[],"code":20001},"SectionSKU":{"skus":[{"name":"Maxvita puffcorn cheese masti","qty":1}],"Header":"Pick the below items from the door"},"status":"false","voiceNote":"Please close door 1"},"order_id":"TM08202202261028131611990","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 13:16:44,456.456 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202261028131611990', '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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': [], 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}]}, 'status': 'false', 'voiceNote': 'Please close door 1'}}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-10-28 13:16:44,458.458 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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 1'}
[2026-10-28 13:16:47,519.519 INFO    ] 200
[2026-10-28 13:16:47,522.522 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Maxvita puffcorn cheese masti", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:16:47,525.525 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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 1'}
[2026-10-28 13:16:50,591.591 INFO    ] 200
[2026-10-28 13:16:50,593.593 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Maxvita puffcorn cheese masti", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:16:50,597.597 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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 1'}
[2026-10-28 13:16:53,703.703 INFO    ] 200
[2026-10-28 13:16:53,705.705 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Maxvita puffcorn cheese masti", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:16:53,709.709 INFO    ] Please close door 1
[2026-10-28 13:16:53,711.711 INFO    ] Please close door 1
[2026-10-28 13:16:53,714.714 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-10-28 13:16:53,717.717 INFO    ] 2026-10-28 13:16:53
[2026-10-28 13:16:53,719.719 INFO    ] playing audio file
[2026-10-28 13:16:53,745.745 INFO    ] 2026-10-28 13:16:53
[2026-10-28 13:16:53,748.748 INFO    ] publish_status: order_id=TM08202202261028131611990
[2026-10-28 13:16:53,751.751 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028131611990
[2026-10-28 13:16:53,866.866 INFO    ] [publish_status] Message added to stream with ID: 1793173613836-0
[2026-10-28 13:16:53,869.869 INFO    ] Published to order:TM08202202261028131611990: {'timestamp': '2026-10-28T07:46:53.746705Z', '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, "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"skus": [{"name": "Maxvita puffcorn cheese masti", "qty": 1}], "Header": "Pick the below items from the door"}, "status": "False", "voiceNote": "Please close door 1"}', 'order_id': 'TM08202202261028131611990', 'server_status': 'OrderStatus'} (ID: 1793173613836-0)
[2026-10-28 13:16:54,576.576 INFO    ] {'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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 1'}, 'order_id': 'TM08202202261028131611990', 'server_status': 'OrderStatus'}
[2026-10-28 13:16:54,578.578 INFO    ] 200
[2026-10-28 13:16:54,581.581 INFO    ] {"data":{"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,"SectionMain":{"Header":"Door Open"},"error":{"umessage":"In Progress","tmessage":"In Progress","data":[],"code":20001},"SectionSKU":{"skus":[{"name":"Maxvita puffcorn cheese masti","qty":1}],"Header":"Pick the below items from the door"},"status":"false","voiceNote":"Please close door 1"},"order_id":"TM08202202261028131611990","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 13:16:54,584.584 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202261028131611990', '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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': [], 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}]}, 'status': 'false', 'voiceNote': 'Please close door 1'}}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-10-28 13:16:54,587.587 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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 1'}
[2026-10-28 13:16:57,667.667 INFO    ] 200
[2026-10-28 13:16:57,670.670 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Maxvita puffcorn cheese masti", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:16:57,673.673 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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 1'}
[2026-10-28 13:17:00,974.974 INFO    ] 200
[2026-10-28 13:17:00,977.977 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Maxvita puffcorn cheese masti", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:17:00,980.980 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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 1'}
[2026-10-28 13:17:04,042.042 INFO    ] 200
[2026-10-28 13:17:04,045.045 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Maxvita puffcorn cheese masti", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:17:04,048.048 INFO    ] Please close door 1
[2026-10-28 13:17:04,050.050 INFO    ] Please close door 1
[2026-10-28 13:17:04,053.053 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-10-28 13:17:04,056.056 INFO    ] 2026-10-28 13:17:04
[2026-10-28 13:17:04,058.058 INFO    ] playing audio file
[2026-10-28 13:17:04,075.075 INFO    ] 2026-10-28 13:17:04
[2026-10-28 13:17:04,079.079 INFO    ] publish_status: order_id=TM08202202261028131611990
[2026-10-28 13:17:04,082.082 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028131611990
[2026-10-28 13:17:04,200.200 INFO    ] [publish_status] Message added to stream with ID: 1793173624170-0
[2026-10-28 13:17:04,203.203 INFO    ] Published to order:TM08202202261028131611990: {'timestamp': '2026-10-28T07:47:04.077791Z', '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, "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"skus": [{"name": "Maxvita puffcorn cheese masti", "qty": 1}], "Header": "Pick the below items from the door"}, "status": "False", "voiceNote": "Please close door 1"}', 'order_id': 'TM08202202261028131611990', 'server_status': 'OrderStatus'} (ID: 1793173624170-0)
[2026-10-28 13:17:04,971.971 INFO    ] {'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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 1'}, 'order_id': 'TM08202202261028131611990', 'server_status': 'OrderStatus'}
[2026-10-28 13:17:04,974.974 INFO    ] 200
[2026-10-28 13:17:04,976.976 INFO    ] {"data":{"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,"SectionMain":{"Header":"Door Open"},"error":{"umessage":"In Progress","tmessage":"In Progress","data":[],"code":20001},"SectionSKU":{"skus":[{"name":"Maxvita puffcorn cheese masti","qty":1}],"Header":"Pick the below items from the door"},"status":"false","voiceNote":"Please close door 1"},"order_id":"TM08202202261028131611990","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 13:17:04,980.980 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202261028131611990', '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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': [], 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}]}, 'status': 'false', 'voiceNote': 'Please close door 1'}}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-10-28 13:17:04,984.984 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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 1'}
[2026-10-28 13:17:08,128.128 INFO    ] 200
[2026-10-28 13:17:08,131.131 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Maxvita puffcorn cheese masti", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:17:08,140.140 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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 1'}
[2026-10-28 13:17:11,194.194 INFO    ] 200
[2026-10-28 13:17:11,197.197 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Maxvita puffcorn cheese masti", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:17:11,199.199 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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 1'}
[2026-10-28 13:17:14,320.320 INFO    ] 200
[2026-10-28 13:17:14,323.323 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Maxvita puffcorn cheese masti", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:17:14,326.326 INFO    ] Please close door 1
[2026-10-28 13:17:14,329.329 INFO    ] Please close door 1
[2026-10-28 13:17:14,332.332 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-10-28 13:17:14,335.335 INFO    ] 2026-10-28 13:17:14
[2026-10-28 13:17:14,341.341 INFO    ] playing audio file
[2026-10-28 13:17:14,360.360 INFO    ] 2026-10-28 13:17:14
[2026-10-28 13:17:14,364.364 INFO    ] publish_status: order_id=TM08202202261028131611990
[2026-10-28 13:17:14,366.366 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028131611990
[2026-10-28 13:17:14,650.650 INFO    ] [publish_status] Message added to stream with ID: 1793173634594-0
[2026-10-28 13:17:14,652.652 INFO    ] Published to order:TM08202202261028131611990: {'timestamp': '2026-10-28T07:47:14.362090Z', '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, "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"skus": [{"name": "Maxvita puffcorn cheese masti", "qty": 1}], "Header": "Pick the below items from the door"}, "status": "False", "voiceNote": "Please close door 1"}', 'order_id': 'TM08202202261028131611990', 'server_status': 'OrderStatus'} (ID: 1793173634594-0)
[2026-10-28 13:17:15,413.413 INFO    ] {'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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 1'}, 'order_id': 'TM08202202261028131611990', 'server_status': 'OrderStatus'}
[2026-10-28 13:17:15,416.416 INFO    ] 200
[2026-10-28 13:17:15,419.419 INFO    ] {"data":{"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,"SectionMain":{"Header":"Door Open"},"error":{"umessage":"In Progress","tmessage":"In Progress","data":[],"code":20001},"SectionSKU":{"skus":[{"name":"Maxvita puffcorn cheese masti","qty":1}],"Header":"Pick the below items from the door"},"status":"false","voiceNote":"Please close door 1"},"order_id":"TM08202202261028131611990","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 13:17:15,422.422 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202261028131611990', '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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': [], 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}]}, 'status': 'false', 'voiceNote': 'Please close door 1'}}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-10-28 13:17:15,425.425 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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 1'}
[2026-10-28 13:17:18,476.476 INFO    ] 200
[2026-10-28 13:17:18,479.479 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Maxvita puffcorn cheese masti", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:17:18,482.482 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, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Maxvita puffcorn cheese masti', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 1'}
[2026-10-28 13:17:21,578.578 INFO    ] 200
[2026-10-28 13:17:21,580.580 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 2 is open now", "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"}}
[2026-10-28 13:17:21,584.584 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Door 2 is open now'}
[2026-10-28 13:17:24,669.669 INFO    ] 200
[2026-10-28 13:17:24,671.671 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 2 is open now", "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"}}
[2026-10-28 13:17:24,674.674 INFO    ] Door 2 is open now
[2026-10-28 13:17:24,677.677 INFO    ] Door 2 is open now
[2026-10-28 13:17:24,680.680 INFO    ] c0b0c0995d30574d97edd3ece08dfc12
[2026-10-28 13:17:24,683.683 INFO    ] 2026-10-28 13:17:24
[2026-10-28 13:17:24,685.685 INFO    ] playing audio file
[2026-10-28 13:17:24,703.703 INFO    ] 2026-10-28 13:17:24
[2026-10-28 13:17:24,707.707 INFO    ] publish_status: order_id=TM08202202261028131611990
[2026-10-28 13:17:24,709.709 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028131611990
[2026-10-28 13:17:24,839.839 INFO    ] [publish_status] Message added to stream with ID: 1793173644795-0
[2026-10-28 13:17:24,848.848 INFO    ] Published to order:TM08202202261028131611990: {'timestamp': '2026-10-28T07:47:24.705315Z', 'server_response': '{"SectionStatus": {"Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}], "Header": "Pick the below items from the door"}, "status": "False", "voiceNote": "Door 2 is open now"}', 'order_id': 'TM08202202261028131611990', 'server_status': 'OrderStatus'} (ID: 1793173644795-0)
[2026-10-28 13:17:25,613.613 INFO    ] {'server_response': {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Door 2 is open now'}, 'order_id': 'TM08202202261028131611990', 'server_status': 'OrderStatus'}
[2026-10-28 13:17:25,615.615 INFO    ] 200
[2026-10-28 13:17:25,618.618 INFO    ] {"data":{"server_response":{"SectionStatus":{"Note":"Please Close the door after picking up products","Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"error":{"umessage":"In Progress","tmessage":"In Progress","data":[],"code":20001},"SectionSKU":{"skus":[{"name":"Sprite, 250ml","qty":1},{"name":"Winkies Mini swiss Roll 28gm","qty":1},{"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":1},{"name":"Maaza Tetra 135ml","qty":1}],"Header":"Pick the below items from the door"},"status":"false","voiceNote":"Door 2 is open now"},"order_id":"TM08202202261028131611990","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 13:17:25,622.622 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202261028131611990', 'server_response': {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': [], 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}]}, 'status': 'false', 'voiceNote': 'Door 2 is open now'}}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-10-28 13:17:25,625.625 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Door 2 is open now'}
[2026-10-28 13:17:28,798.798 INFO    ] 200
[2026-10-28 13:17:28,801.801 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:17:28,804.804 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 2'}
[2026-10-28 13:17:31,879.879 INFO    ] 200
[2026-10-28 13:17:31,882.882 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:17:31,885.885 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 2'}
[2026-10-28 13:17:34,939.939 INFO    ] 200
[2026-10-28 13:17:34,942.942 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:17:34,945.945 INFO    ] Please close door 2
[2026-10-28 13:17:34,948.948 INFO    ] Please close door 2
[2026-10-28 13:17:34,951.951 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-10-28 13:17:34,953.953 INFO    ] 2026-10-28 13:17:34
[2026-10-28 13:17:34,956.956 INFO    ] playing audio file
[2026-10-28 13:17:34,974.974 INFO    ] 2026-10-28 13:17:34
[2026-10-28 13:17:34,978.978 INFO    ] publish_status: order_id=TM08202202261028131611990
[2026-10-28 13:17:34,981.981 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028131611990
[2026-10-28 13:17:35,110.110 INFO    ] [publish_status] Message added to stream with ID: 1793173655082-0
[2026-10-28 13:17:35,113.113 INFO    ] Published to order:TM08202202261028131611990: {'timestamp': '2026-10-28T07:47:34.976898Z', 'server_response': '{"SectionStatus": {"Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}], "Header": "Pick the below items from the door"}, "status": "False", "voiceNote": "Please close door 2"}', 'order_id': 'TM08202202261028131611990', 'server_status': 'OrderStatus'} (ID: 1793173655082-0)
[2026-10-28 13:17:35,846.846 INFO    ] {'server_response': {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 2'}, 'order_id': 'TM08202202261028131611990', 'server_status': 'OrderStatus'}
[2026-10-28 13:17:35,851.851 INFO    ] 200
[2026-10-28 13:17:35,854.854 INFO    ] {"data":{"server_response":{"SectionStatus":{"Note":"Please Close the door after picking up products","Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"error":{"umessage":"In Progress","tmessage":"In Progress","data":[],"code":20001},"SectionSKU":{"skus":[{"name":"Sprite, 250ml","qty":1},{"name":"Winkies Mini swiss Roll 28gm","qty":1},{"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":1},{"name":"Maaza Tetra 135ml","qty":1}],"Header":"Pick the below items from the door"},"status":"false","voiceNote":"Please close door 2"},"order_id":"TM08202202261028131611990","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 13:17:35,858.858 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202261028131611990', 'server_response': {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': [], 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}]}, 'status': 'false', 'voiceNote': 'Please close door 2'}}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-10-28 13:17:35,862.862 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 2'}
[2026-10-28 13:17:38,956.956 INFO    ] 200
[2026-10-28 13:17:38,958.958 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:17:38,961.961 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 2'}
[2026-10-28 13:17:42,071.071 INFO    ] 200
[2026-10-28 13:17:42,075.075 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:17:42,079.079 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 2'}
[2026-10-28 13:17:45,131.131 INFO    ] 200
[2026-10-28 13:17:45,134.134 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:17:45,137.137 INFO    ] Please close door 2
[2026-10-28 13:17:45,140.140 INFO    ] Please close door 2
[2026-10-28 13:17:45,142.142 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-10-28 13:17:45,145.145 INFO    ] 2026-10-28 13:17:45
[2026-10-28 13:17:45,148.148 INFO    ] playing audio file
[2026-10-28 13:17:45,166.166 INFO    ] 2026-10-28 13:17:45
[2026-10-28 13:17:45,170.170 INFO    ] publish_status: order_id=TM08202202261028131611990
[2026-10-28 13:17:45,173.173 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028131611990
[2026-10-28 13:17:45,311.311 INFO    ] [publish_status] Message added to stream with ID: 1793173665274-0
[2026-10-28 13:17:45,314.314 INFO    ] Published to order:TM08202202261028131611990: {'timestamp': '2026-10-28T07:47:45.168192Z', 'server_response': '{"SectionStatus": {"Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}], "Header": "Pick the below items from the door"}, "status": "False", "voiceNote": "Please close door 2"}', 'order_id': 'TM08202202261028131611990', 'server_status': 'OrderStatus'} (ID: 1793173665274-0)
[2026-10-28 13:17:46,051.051 INFO    ] {'server_response': {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 2'}, 'order_id': 'TM08202202261028131611990', 'server_status': 'OrderStatus'}
[2026-10-28 13:17:46,054.054 INFO    ] 200
[2026-10-28 13:17:46,057.057 INFO    ] {"data":{"server_response":{"SectionStatus":{"Note":"Please Close the door after picking up products","Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"error":{"umessage":"In Progress","tmessage":"In Progress","data":[],"code":20001},"SectionSKU":{"skus":[{"name":"Sprite, 250ml","qty":1},{"name":"Winkies Mini swiss Roll 28gm","qty":1},{"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":1},{"name":"Maaza Tetra 135ml","qty":1}],"Header":"Pick the below items from the door"},"status":"false","voiceNote":"Please close door 2"},"order_id":"TM08202202261028131611990","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 13:17:46,060.060 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202261028131611990', 'server_response': {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': [], 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}]}, 'status': 'false', 'voiceNote': 'Please close door 2'}}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-10-28 13:17:46,063.063 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 2'}
[2026-10-28 13:17:49,189.189 INFO    ] 200
[2026-10-28 13:17:49,192.192 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:17:49,195.195 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 2'}
[2026-10-28 13:17:52,314.314 INFO    ] 200
[2026-10-28 13:17:52,317.317 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:17:52,320.320 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 2'}
[2026-10-28 13:17:55,381.381 INFO    ] 200
[2026-10-28 13:17:55,384.384 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:17:55,387.387 INFO    ] Please close door 2
[2026-10-28 13:17:55,389.389 INFO    ] Please close door 2
[2026-10-28 13:17:55,392.392 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-10-28 13:17:55,395.395 INFO    ] 2026-10-28 13:17:55
[2026-10-28 13:17:55,397.397 INFO    ] playing audio file
[2026-10-28 13:17:55,415.415 INFO    ] 2026-10-28 13:17:55
[2026-10-28 13:17:55,419.419 INFO    ] publish_status: order_id=TM08202202261028131611990
[2026-10-28 13:17:55,421.421 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028131611990
[2026-10-28 13:17:55,561.561 INFO    ] [publish_status] Message added to stream with ID: 1793173675526-0
[2026-10-28 13:17:55,563.563 INFO    ] Published to order:TM08202202261028131611990: {'timestamp': '2026-10-28T07:47:55.417328Z', 'server_response': '{"SectionStatus": {"Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}], "Header": "Pick the below items from the door"}, "status": "False", "voiceNote": "Please close door 2"}', 'order_id': 'TM08202202261028131611990', 'server_status': 'OrderStatus'} (ID: 1793173675526-0)
[2026-10-28 13:17:56,305.305 INFO    ] {'server_response': {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 2'}, 'order_id': 'TM08202202261028131611990', 'server_status': 'OrderStatus'}
[2026-10-28 13:17:56,308.308 INFO    ] 200
[2026-10-28 13:17:56,311.311 INFO    ] {"data":{"server_response":{"SectionStatus":{"Note":"Please Close the door after picking up products","Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"error":{"umessage":"In Progress","tmessage":"In Progress","data":[],"code":20001},"SectionSKU":{"skus":[{"name":"Sprite, 250ml","qty":1},{"name":"Winkies Mini swiss Roll 28gm","qty":1},{"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":1},{"name":"Maaza Tetra 135ml","qty":1}],"Header":"Pick the below items from the door"},"status":"false","voiceNote":"Please close door 2"},"order_id":"TM08202202261028131611990","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 13:17:56,315.315 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202261028131611990', 'server_response': {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': [], 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}]}, 'status': 'false', 'voiceNote': 'Please close door 2'}}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-10-28 13:17:56,318.318 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 2'}
[2026-10-28 13:17:59,482.482 INFO    ] 200
[2026-10-28 13:17:59,486.486 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:17:59,490.490 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 2'}
[2026-10-28 13:18:02,560.560 INFO    ] 200
[2026-10-28 13:18:02,563.563 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:18:02,575.575 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 2'}
[2026-10-28 13:18:05,647.647 INFO    ] 200
[2026-10-28 13:18:05,650.650 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:18:05,654.654 INFO    ] Please close door 2
[2026-10-28 13:18:05,657.657 INFO    ] Please close door 2
[2026-10-28 13:18:05,660.660 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-10-28 13:18:05,663.663 INFO    ] 2026-10-28 13:18:05
[2026-10-28 13:18:05,666.666 INFO    ] playing audio file
[2026-10-28 13:18:05,684.684 INFO    ] 2026-10-28 13:18:05
[2026-10-28 13:18:05,689.689 INFO    ] publish_status: order_id=TM08202202261028131611990
[2026-10-28 13:18:05,692.692 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028131611990
[2026-10-28 13:18:05,820.820 INFO    ] [publish_status] Message added to stream with ID: 1793173685784-0
[2026-10-28 13:18:05,823.823 INFO    ] Published to order:TM08202202261028131611990: {'timestamp': '2026-10-28T07:48:05.687236Z', 'server_response': '{"SectionStatus": {"Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}], "Header": "Pick the below items from the door"}, "status": "False", "voiceNote": "Please close door 2"}', 'order_id': 'TM08202202261028131611990', 'server_status': 'OrderStatus'} (ID: 1793173685784-0)
[2026-10-28 13:18:06,539.539 INFO    ] {'server_response': {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 2'}, 'order_id': 'TM08202202261028131611990', 'server_status': 'OrderStatus'}
[2026-10-28 13:18:06,541.541 INFO    ] 200
[2026-10-28 13:18:06,543.543 INFO    ] {"data":{"server_response":{"SectionStatus":{"Note":"Please Close the door after picking up products","Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"error":{"umessage":"In Progress","tmessage":"In Progress","data":[],"code":20001},"SectionSKU":{"skus":[{"name":"Sprite, 250ml","qty":1},{"name":"Winkies Mini swiss Roll 28gm","qty":1},{"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":1},{"name":"Maaza Tetra 135ml","qty":1}],"Header":"Pick the below items from the door"},"status":"false","voiceNote":"Please close door 2"},"order_id":"TM08202202261028131611990","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 13:18:06,546.546 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM08202202261028131611990', 'server_response': {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': [], 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}]}, 'status': 'false', 'voiceNote': 'Please close door 2'}}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-10-28 13:18:06,549.549 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 2'}
[2026-10-28 13:18:09,621.621 INFO    ] 200
[2026-10-28 13:18:09,624.624 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Sprite, 250ml", "qty": 1}, {"name": "Winkies Mini swiss Roll 28gm", "qty": 1}, {"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}, {"name": "Maaza Tetra 135ml", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 13:18:09,627.627 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'skus': [{'name': 'Sprite, 250ml', 'qty': 1}, {'name': 'Winkies Mini swiss Roll 28gm', 'qty': 1}, {'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}, {'name': 'Maaza Tetra 135ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'voiceNote': 'Please close door 2'}
[2026-10-28 13:18:12,683.683 INFO    ] 200
[2026-10-28 13:18:12,686.686 INFO    ] {"rstatus": true, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "status": "True", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed", "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": ""}}
[2026-10-28 13:18:12,689.689 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'}, 'delay': 100, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'voiceNote': 'Transaction Completed'}
[2026-10-28 13:18:12,692.692 INFO    ] 2026-10-28 13:18:12
[2026-10-28 13:18:12,695.695 INFO    ] Order Completed 
[2026-10-28 13:18:12,705.705 INFO    ] Order Completed 
[2026-10-28 13:18:12,708.708 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-10-28 13:18:12,711.711 INFO    ] 2026-10-28 13:18:12
[2026-10-28 13:18:12,713.713 INFO    ] playing audio file
[2026-10-28 13:18:12,731.731 INFO    ] 2026-10-28 13:18:12
[2026-10-28 13:18:12,735.735 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'}, 'delay': 100, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'voiceNote': 'Transaction Completed'}
[2026-10-28 13:18:12,738.738 INFO    ] 2026-10-28 13:18:12
[2026-10-28 13:18:14,384.384 INFO    ] 200
[2026-10-28 13:18:14,386.386 INFO    ] {"rstatus": true, "total_amount": 90.0, "skus": [{"skuid": "4500711", "image_url": "https://images.tinymart.in/product/4500711-9290.png", "qty": 1, "sku_total": 30.0, "tray_id": "25", "name": "MaxVita Cheese Ball Cheese masti 70gm per peice", "door_id": "", "mrp": "30", "unit_price": "30"}, {"skuid": "4500742", "image_url": "https://images.tinymart.in/product/4500742-8191.jpg", "qty": 1, "sku_total": 10.0, "tray_id": "37", "name": "Winkies Mini swiss Roll 28gm per peice", "door_id": "", "mrp": "10", "unit_price": "10"}, {"skuid": "185993", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "qty": 1, "sku_total": 20.0, "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "door_id": "", "mrp": "20", "unit_price": "20"}, {"skuid": "8639", "image_url": "https://images.tinymart.in/product/8639-1552.png", "qty": 1, "sku_total": 20.0, "tray_id": "44", "name": "Sprite, 250ml per peice", "door_id": "", "mrp": "20", "unit_price": "20"}, {"skuid": "186096", "image_url": "https://images.tinymart.in/product/186096-4254.jpg", "qty": 1, "sku_total": 10.0, "tray_id": "45", "name": "Maaza Tetra 135ml per peice", "door_id": "", "mrp": "10", "unit_price": "10"}], "res": "True", "anomaly": 0, "logic": "WBL", "orderId": "TM08202202261028131611990"}
[2026-10-28 13:18:14,390.390 INFO    ] {'total_amount': 90.0, 'res': 'True', 'rstatus': True, 'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500711-9290.png', 'door_id': '', 'unit_price': '30', 'mrp': '30', 'tray_id': '25', 'name': 'MaxVita Cheese Ball Cheese masti 70gm per peice', 'sku_total': 30.0, 'qty': 1, 'skuid': '4500711'}, {'image_url': 'https://images.tinymart.in/product/4500742-8191.jpg', 'door_id': '', 'unit_price': '10', 'mrp': '10', 'tray_id': '37', 'name': 'Winkies Mini swiss Roll 28gm per peice', 'sku_total': 10.0, 'qty': 1, 'skuid': '4500742'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'unit_price': '20', 'mrp': '20', 'tray_id': '43', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'sku_total': 20.0, 'qty': 1, 'skuid': '185993'}, {'image_url': 'https://images.tinymart.in/product/8639-1552.png', 'door_id': '', 'unit_price': '20', 'mrp': '20', 'tray_id': '44', 'name': 'Sprite, 250ml per peice', 'sku_total': 20.0, 'qty': 1, 'skuid': '8639'}, {'image_url': 'https://images.tinymart.in/product/186096-4254.jpg', 'door_id': '', 'unit_price': '10', 'mrp': '10', 'tray_id': '45', 'name': 'Maaza Tetra 135ml per peice', 'sku_total': 10.0, 'qty': 1, 'skuid': '186096'}], 'orderId': 'TM08202202261028131611990', 'logic': 'WBL'}
[2026-10-28 13:18:14,393.393 INFO    ] {'total_amount': 90.0, 'res': 'True', 'rstatus': True, 'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500711-9290.png', 'door_id': '', 'unit_price': '30', 'mrp': '30', 'tray_id': '25', 'name': 'MaxVita Cheese Ball Cheese masti 70gm per peice', 'sku_total': 30.0, 'qty': 1, 'skuid': '4500711'}, {'image_url': 'https://images.tinymart.in/product/4500742-8191.jpg', 'door_id': '', 'unit_price': '10', 'mrp': '10', 'tray_id': '37', 'name': 'Winkies Mini swiss Roll 28gm per peice', 'sku_total': 10.0, 'qty': 1, 'skuid': '4500742'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'unit_price': '20', 'mrp': '20', 'tray_id': '43', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'sku_total': 20.0, 'qty': 1, 'skuid': '185993'}, {'image_url': 'https://images.tinymart.in/product/8639-1552.png', 'door_id': '', 'unit_price': '20', 'mrp': '20', 'tray_id': '44', 'name': 'Sprite, 250ml per peice', 'sku_total': 20.0, 'qty': 1, 'skuid': '8639'}, {'image_url': 'https://images.tinymart.in/product/186096-4254.jpg', 'door_id': '', 'unit_price': '10', 'mrp': '10', 'tray_id': '45', 'name': 'Maaza Tetra 135ml per peice', 'sku_total': 10.0, 'qty': 1, 'skuid': '186096'}], 'orderId': 'TM08202202261028131611990', 'logic': 'WBL'}
[2026-10-28 13:18:14,398.398 INFO    ] 2026-10-28 13:18:14
[2026-10-28 13:18:14,401.401 INFO    ] 2026-10-28 13:18:14
[2026-10-28 13:18:14,404.404 INFO    ] 70
[2026-10-28 13:18:14,407.407 INFO    ] 2026-10-28 13:18:14
[2026-10-28 13:18:14,410.410 INFO    ] 2026-10-28 13:18:14
[2026-10-28 13:18:14,412.412 INFO    ]  You had Picked Excess of 20 Your Bill Amount is 90
[2026-10-28 13:18:14,415.415 INFO    ]  You had Picked Excess of 20 Your Bill Amount is 90
[2026-10-28 13:18:14,418.418 INFO    ] 18d77f15b5aa20b7999b105b4e8892a6
[2026-10-28 13:18:14,455.455 INFO    ] 2026-10-28 13:18:14
[2026-10-28 13:18:14,458.458 INFO    ] playing audio file
[2026-10-28 13:18:14,475.475 INFO    ] 2026-10-28 13:18:14
[2026-10-28 13:18:14,479.479 INFO    ] 2026-10-28 13:18:14
[2026-10-28 13:18:14,482.482 INFO    ] publish_status: order_id=TM08202202261028131611990
[2026-10-28 13:18:14,486.486 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028131611990
[2026-10-28 13:18:14,609.609 INFO    ] [publish_status] Message added to stream with ID: 1793173694573-0
[2026-10-28 13:18:14,612.612 INFO    ] Published to order:TM08202202261028131611990: {'timestamp': '2026-10-28T07:48:14.480654Z', 'server_response': '{"total_amount": 90.0, "res": "True", "rstatus": true, "anomaly": 0, "skus": [{"image_url": "https://images.tinymart.in/product/4500711-9290.png", "door_id": "", "unit_price": "30", "mrp": "30", "tray_id": "25", "name": "MaxVita Cheese Ball Cheese masti 70gm per peice", "sku_total": 30.0, "qty": 1, "skuid": "4500711"}, {"image_url": "https://images.tinymart.in/product/4500742-8191.jpg", "door_id": "", "unit_price": "10", "mrp": "10", "tray_id": "37", "name": "Winkies Mini swiss Roll 28gm per peice", "sku_total": 10.0, "qty": 1, "skuid": "4500742"}, {"image_url": "https://images.tinymart.in/product/185993-3509.webp", "door_id": "", "unit_price": "20", "mrp": "20", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "sku_total": 20.0, "qty": 1, "skuid": "185993"}, {"image_url": "https://images.tinymart.in/product/8639-1552.png", "door_id": "", "unit_price": "20", "mrp": "20", "tray_id": "44", "name": "Sprite, 250ml per peice", "sku_total": 20.0, "qty": 1, "skuid": "8639"}, {"image_url": "https://images.tinymart.in/product/186096-4254.jpg", "door_id": "", "unit_price": "10", "mrp": "10", "tray_id": "45", "name": "Maaza Tetra 135ml per peice", "sku_total": 10.0, "qty": 1, "skuid": "186096"}], "orderId": "TM08202202261028131611990", "logic": "WBL"}', 'order_id': 'TM08202202261028131611990', 'server_status': 'invoiceOrder'} (ID: 1793173694573-0)
[2026-10-28 13:18:15,538.538 INFO    ] {'server_response': {'total_amount': 90.0, 'res': 'True', 'rstatus': True, 'anomaly': 0, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500711-9290.png', 'door_id': '', 'unit_price': '30', 'mrp': '30', 'tray_id': '25', 'name': 'MaxVita Cheese Ball Cheese masti 70gm per peice', 'sku_total': 30.0, 'qty': 1, 'skuid': '4500711'}, {'image_url': 'https://images.tinymart.in/product/4500742-8191.jpg', 'door_id': '', 'unit_price': '10', 'mrp': '10', 'tray_id': '37', 'name': 'Winkies Mini swiss Roll 28gm per peice', 'sku_total': 10.0, 'qty': 1, 'skuid': '4500742'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'unit_price': '20', 'mrp': '20', 'tray_id': '43', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'sku_total': 20.0, 'qty': 1, 'skuid': '185993'}, {'image_url': 'https://images.tinymart.in/product/8639-1552.png', 'door_id': '', 'unit_price': '20', 'mrp': '20', 'tray_id': '44', 'name': 'Sprite, 250ml per peice', 'sku_total': 20.0, 'qty': 1, 'skuid': '8639'}, {'image_url': 'https://images.tinymart.in/product/186096-4254.jpg', 'door_id': '', 'unit_price': '10', 'mrp': '10', 'tray_id': '45', 'name': 'Maaza Tetra 135ml per peice', 'sku_total': 10.0, 'qty': 1, 'skuid': '186096'}], 'orderId': 'TM08202202261028131611990', 'logic': 'WBL'}, 'order_id': 'TM08202202261028131611990', 'server_status': 'invoiceOrder'}
[2026-10-28 13:18:15,540.540 INFO    ] 200
[2026-10-28 13:18:15,542.542 INFO    ] {"data":{"server_response":{"total_amount":90,"res":"true","rstatus":true,"anomaly":0,"skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/4500711-9290.png","door_id":"","unit_price":"30","mrp":"30","tray_id":"25","name":"MaxVita Cheese Ball Cheese masti 70gm per peice","sku_total":30,"qty":1,"skuid":"4500711"},{"image_url":"https:\/\/images.tinymart.in\/product\/4500742-8191.jpg","door_id":"","unit_price":"10","mrp":"10","tray_id":"37","name":"Winkies Mini swiss Roll 28gm per peice","sku_total":10,"qty":1,"skuid":"4500742"},{"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","door_id":"","unit_price":"20","mrp":"20","tray_id":"43","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice","sku_total":20,"qty":1,"skuid":"185993"},{"image_url":"https:\/\/images.tinymart.in\/product\/8639-1552.png","door_id":"","unit_price":"20","mrp":"20","tray_id":"44","name":"Sprite, 250ml per peice","sku_total":20,"qty":1,"skuid":"8639"},{"image_url":"https:\/\/images.tinymart.in\/product\/186096-4254.jpg","door_id":"","unit_price":"10","mrp":"10","tray_id":"45","name":"Maaza Tetra 135ml per peice","sku_total":10,"qty":1,"skuid":"186096"}],"orderId":"TM08202202261028131611990","logic":"WBL"},"order_id":"TM08202202261028131611990","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 13:18:15,546.546 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202202261028131611990', 'server_response': {'total_amount': 90, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500711-9290.png', 'door_id': '', 'tray_id': '25', 'mrp': '30', 'unit_price': '30', 'name': 'MaxVita Cheese Ball Cheese masti 70gm per peice', 'sku_total': 30, 'qty': 1, 'skuid': '4500711'}, {'image_url': 'https://images.tinymart.in/product/4500742-8191.jpg', 'door_id': '', 'tray_id': '37', 'mrp': '10', 'unit_price': '10', 'name': 'Winkies Mini swiss Roll 28gm per peice', 'sku_total': 10, 'qty': 1, 'skuid': '4500742'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'tray_id': '43', 'mrp': '20', 'unit_price': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'sku_total': 20, 'qty': 1, 'skuid': '185993'}, {'image_url': 'https://images.tinymart.in/product/8639-1552.png', 'door_id': '', 'tray_id': '44', 'mrp': '20', 'unit_price': '20', 'name': 'Sprite, 250ml per peice', 'sku_total': 20, 'qty': 1, 'skuid': '8639'}, {'image_url': 'https://images.tinymart.in/product/186096-4254.jpg', 'door_id': '', 'tray_id': '45', 'mrp': '10', 'unit_price': '10', 'name': 'Maaza Tetra 135ml per peice', 'sku_total': 10, 'qty': 1, 'skuid': '186096'}], 'rstatus': True, 'anomaly': 0, 'res': 'true', 'logic': 'WBL', 'orderId': 'TM08202202261028131611990'}}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-10-28 13:18:15,549.549 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM08202202261028131611990', 'server_response': {'total_amount': 90, 'skus': [{'image_url': 'https://images.tinymart.in/product/4500711-9290.png', 'door_id': '', 'tray_id': '25', 'mrp': '30', 'unit_price': '30', 'name': 'MaxVita Cheese Ball Cheese masti 70gm per peice', 'sku_total': 30, 'qty': 1, 'skuid': '4500711'}, {'image_url': 'https://images.tinymart.in/product/4500742-8191.jpg', 'door_id': '', 'tray_id': '37', 'mrp': '10', 'unit_price': '10', 'name': 'Winkies Mini swiss Roll 28gm per peice', 'sku_total': 10, 'qty': 1, 'skuid': '4500742'}, {'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '', 'tray_id': '43', 'mrp': '20', 'unit_price': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'sku_total': 20, 'qty': 1, 'skuid': '185993'}, {'image_url': 'https://images.tinymart.in/product/8639-1552.png', 'door_id': '', 'tray_id': '44', 'mrp': '20', 'unit_price': '20', 'name': 'Sprite, 250ml per peice', 'sku_total': 20, 'qty': 1, 'skuid': '8639'}, {'image_url': 'https://images.tinymart.in/product/186096-4254.jpg', 'door_id': '', 'tray_id': '45', 'mrp': '10', 'unit_price': '10', 'name': 'Maaza Tetra 135ml per peice', 'sku_total': 10, 'qty': 1, 'skuid': '186096'}], 'rstatus': True, 'anomaly': 0, 'res': 'true', 'logic': 'WBL', 'orderId': 'TM08202202261028131611990'}}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-10-28 13:18:15,551.551 INFO    ] 2026-10-28 13:18:15
[2026-10-28 13:18:17,794.794 INFO    ] 200
[2026-10-28 13:18:17,796.796 INFO    ] {"orders": [], "tray_synced": ["TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990", "TM08202202261028131611990"], "orders_synced": [], "tray_sync": [], "order_items_synced": [], "status": true, "orders_data_synced": [], "order_items": [], "orders_data": []}
[2026-10-28 13:18:17,799.799 INFO    ] 2026-10-28 13:18:17
[2026-10-28 13:18:17,940.940 INFO    ] 200
[2026-10-28 13:18:17,942.942 INFO    ] True
[2026-10-28 13:18:17,945.945 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202202261028131611990
[2026-10-28 13:18:17,948.948 INFO    ] start order file deleted
[2026-10-28 13:18:17,951.951 INFO    ] Checking for system updates...
[2026-10-28 13:18:17,988.988 INFO    ] 200
[2026-10-28 13:18:17,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:18:18,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:18:18,047.047 INFO    ] No update needed
[2026-10-28 13:18:18,049.049 INFO    ] Checking for camera pi updates...
[2026-10-28 13:18:18,083.083 INFO    ] 200
[2026-10-28 13:18:18,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:18:18,132.132 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:18:18,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:18:18,370.370 INFO    ] No camera update needed
[2026-10-28 13:18:18,372.372 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:18:18,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:18:18,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:18:18,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:18:20,430.430 INFO    ] ================================================
[2026-10-28 13:18:20,446.446 INFO    ] Launching Daemon at Wed Oct 28 13:18:20 IST 2026
[2026-10-28 13:18:20,457.457 INFO    ] ================================================
[2026-10-28 13:18:21,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:18:21
[2026-10-28 13:18:21,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:18:21,895.895 INFO    ] Initializing speech engine...
[2026-10-28 13:18:21,900.900 INFO    ] 2026-10-28 13:18:21
[2026-10-28 13:18:22,196.196 INFO    ] 2026-10-28 13:18:22
[2026-10-28 13:18:22,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:18:22,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:18:22,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:18:23,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:18:23,178.178 INFO    ] time= 28/10/2026 13:18:23
[2026-10-28 13:18:23,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:18:23,184.184 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:18:23,309.309 INFO    ] No existing commands found in stream
[2026-10-28 13:18:28,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:18:28,322.322 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-28 13:18:31,369.369 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:18:31,371.371 INFO    ] Checking for system updates...
[2026-10-28 13:18:31,412.412 INFO    ] 200
[2026-10-28 13:18:31,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:18:31,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:18:31,469.469 INFO    ] No update needed
[2026-10-28 13:18:31,471.471 INFO    ] Checking for camera pi updates...
[2026-10-28 13:18:31,505.505 INFO    ] 200
[2026-10-28 13:18:31,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:18:31,547.547 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:18:31,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:18:31,621.621 INFO    ] No camera update needed
[2026-10-28 13:18:31,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:18:31,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:18:31,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:18:31,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:18:33,676.676 INFO    ] ================================================
[2026-10-28 13:18:33,691.691 INFO    ] Launching Daemon at Wed Oct 28 13:18:33 IST 2026
[2026-10-28 13:18:33,701.701 INFO    ] ================================================
[2026-10-28 13:18:34,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:18:34
[2026-10-28 13:18:34,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:18:35,276.276 INFO    ] Initializing speech engine...
[2026-10-28 13:18:35,284.284 INFO    ] 2026-10-28 13:18:35
[2026-10-28 13:18:35,566.566 INFO    ] 2026-10-28 13:18:35
[2026-10-28 13:18:35,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:18:35,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:18:35,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:18:36,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:18:36,200.200 INFO    ] time= 28/10/2026 13:18:36
[2026-10-28 13:18:36,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:18:36,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:18:36,471.471 INFO    ] No existing commands found in stream
[2026-10-28 13:18:41,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:18:41,505.505 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 13:18:44,382.382 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:18:44,385.385 INFO    ] Checking for system updates...
[2026-10-28 13:18:44,421.421 INFO    ] 200
[2026-10-28 13:18:44,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:18:44,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:18:44,479.479 INFO    ] No update needed
[2026-10-28 13:18:44,482.482 INFO    ] Checking for camera pi updates...
[2026-10-28 13:18:44,515.515 INFO    ] 200
[2026-10-28 13:18:44,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:18:44,557.557 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:18:44,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:18:44,640.640 INFO    ] No camera update needed
[2026-10-28 13:18:44,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:18:44,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:18:44,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:18:44,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:18:46,697.697 INFO    ] ================================================
[2026-10-28 13:18:46,711.711 INFO    ] Launching Daemon at Wed Oct 28 13:18:46 IST 2026
[2026-10-28 13:18:46,722.722 INFO    ] ================================================
[2026-10-28 13:18:47,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:18:47
[2026-10-28 13:18:47,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:18:48,151.151 INFO    ] Initializing speech engine...
[2026-10-28 13:18:48,161.161 INFO    ] 2026-10-28 13:18:48
[2026-10-28 13:18:48,424.424 INFO    ] 2026-10-28 13:18:48
[2026-10-28 13:18:48,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:18:48,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:18:48,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:18:49,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:18:49,126.126 INFO    ] time= 28/10/2026 13:18:49
[2026-10-28 13:18:49,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:18:49,222.222 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:18:49,370.370 INFO    ] No existing commands found in stream
[2026-10-28 13:18:54,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:18:54,404.404 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-28 13:18:55,453.453 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:18:55,456.456 INFO    ] Checking for system updates...
[2026-10-28 13:18:55,492.492 INFO    ] 200
[2026-10-28 13:18:55,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:18:55,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:18:55,549.549 INFO    ] No update needed
[2026-10-28 13:18:55,551.551 INFO    ] Checking for camera pi updates...
[2026-10-28 13:18:55,587.587 INFO    ] 200
[2026-10-28 13:18:55,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:18:55,629.629 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:18:55,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:18:55,721.721 INFO    ] No camera update needed
[2026-10-28 13:18:55,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:18:55,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:18:55,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:18:55,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:18:57,776.776 INFO    ] ================================================
[2026-10-28 13:18:57,791.791 INFO    ] Launching Daemon at Wed Oct 28 13:18:57 IST 2026
[2026-10-28 13:18:57,802.802 INFO    ] ================================================
[2026-10-28 13:18:58,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:18:58
[2026-10-28 13:18:58,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:18:59,230.230 INFO    ] Initializing speech engine...
[2026-10-28 13:18:59,246.246 INFO    ] 2026-10-28 13:18:59
[2026-10-28 13:18:59,527.527 INFO    ] 2026-10-28 13:18:59
[2026-10-28 13:18:59,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:18:59,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:18:59,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:19:00,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:19:00,147.147 INFO    ] time= 28/10/2026 13:19:00
[2026-10-28 13:19:00,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:19:00,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:19:00,309.309 INFO    ] No existing commands found in stream
[2026-10-28 13:19:05,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:19:05,332.332 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-28 13:19:09,785.785 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:19:09,787.787 INFO    ] Checking for system updates...
[2026-10-28 13:19:09,823.823 INFO    ] 200
[2026-10-28 13:19:09,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:19:09,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:19:09,885.885 INFO    ] No update needed
[2026-10-28 13:19:09,887.887 INFO    ] Checking for camera pi updates...
[2026-10-28 13:19:09,921.921 INFO    ] 200
[2026-10-28 13:19:09,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:19:09,965.965 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:19:10,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:19:10,167.167 INFO    ] No camera update needed
[2026-10-28 13:19:10,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:19:10,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:19:10,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:19:10,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:19:12,223.223 INFO    ] ================================================
[2026-10-28 13:19:12,238.238 INFO    ] Launching Daemon at Wed Oct 28 13:19:12 IST 2026
[2026-10-28 13:19:12,249.249 INFO    ] ================================================
[2026-10-28 13:19:12,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:19:12
[2026-10-28 13:19:13,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:19:13,669.669 INFO    ] Initializing speech engine...
[2026-10-28 13:19:13,691.691 INFO    ] 2026-10-28 13:19:13
[2026-10-28 13:19:13,946.946 INFO    ] 2026-10-28 13:19:13
[2026-10-28 13:19:13,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:19:14,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:19:14,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:19:14,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:19:14,506.506 INFO    ] time= 28/10/2026 13:19:14
[2026-10-28 13:19:14,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:19:14,553.553 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:19:14,670.670 INFO    ] No existing commands found in stream
[2026-10-28 13:19:19,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:19:19,703.703 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 13:19:21,221.221 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:19:21,224.224 INFO    ] Checking for system updates...
[2026-10-28 13:19:21,261.261 INFO    ] 200
[2026-10-28 13:19:21,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:19:21,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:19:21,319.319 INFO    ] No update needed
[2026-10-28 13:19:21,321.321 INFO    ] Checking for camera pi updates...
[2026-10-28 13:19:21,355.355 INFO    ] 200
[2026-10-28 13:19:21,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:19:21,402.402 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:19:21,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:19:21,507.507 INFO    ] No camera update needed
[2026-10-28 13:19:21,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:19:21,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:19:21,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:19:21,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:19:23,564.564 INFO    ] ================================================
[2026-10-28 13:19:23,579.579 INFO    ] Launching Daemon at Wed Oct 28 13:19:23 IST 2026
[2026-10-28 13:19:23,589.589 INFO    ] ================================================
[2026-10-28 13:19:24,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:19:24
[2026-10-28 13:19:24,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:19:25,021.021 INFO    ] Initializing speech engine...
[2026-10-28 13:19:25,030.030 INFO    ] 2026-10-28 13:19:25
[2026-10-28 13:19:25,292.292 INFO    ] 2026-10-28 13:19:25
[2026-10-28 13:19:25,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:19:25,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:19:25,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:19:25,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:19:25,907.907 INFO    ] time= 28/10/2026 13:19:25
[2026-10-28 13:19:25,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:19:25,933.933 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:19:26,066.066 INFO    ] No existing commands found in stream
[2026-10-28 13:19:31,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:19:31,088.088 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-28 13:19:32,774.774 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:19:32,776.776 INFO    ] Checking for system updates...
[2026-10-28 13:19:32,812.812 INFO    ] 200
[2026-10-28 13:19:32,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:19:32,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:19:32,875.875 INFO    ] No update needed
[2026-10-28 13:19:32,877.877 INFO    ] Checking for camera pi updates...
[2026-10-28 13:19:32,910.910 INFO    ] 200
[2026-10-28 13:19:32,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:19:32,960.960 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:19:33,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:19:33,079.079 INFO    ] No camera update needed
[2026-10-28 13:19:33,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:19:33,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:19:33,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:19:33,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:19:35,134.134 INFO    ] ================================================
[2026-10-28 13:19:35,149.149 INFO    ] Launching Daemon at Wed Oct 28 13:19:35 IST 2026
[2026-10-28 13:19:35,160.160 INFO    ] ================================================
[2026-10-28 13:19:35,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:19:35
[2026-10-28 13:19:36,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:19:36,571.571 INFO    ] Initializing speech engine...
[2026-10-28 13:19:36,577.577 INFO    ] 2026-10-28 13:19:36
[2026-10-28 13:19:36,865.865 INFO    ] 2026-10-28 13:19:36
[2026-10-28 13:19:36,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:19:37,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:19:37,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:19:37,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:19:37,485.485 INFO    ] time= 28/10/2026 13:19:37
[2026-10-28 13:19:37,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:19:37,510.510 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:19:37,635.635 INFO    ] No existing commands found in stream
[2026-10-28 13:19:42,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:19:42,664.664 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-28 13:19:46,371.371 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:19:46,374.374 INFO    ] Checking for system updates...
[2026-10-28 13:19:46,411.411 INFO    ] 200
[2026-10-28 13:19:46,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:19:46,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:19:46,469.469 INFO    ] No update needed
[2026-10-28 13:19:46,471.471 INFO    ] Checking for camera pi updates...
[2026-10-28 13:19:46,509.509 INFO    ] 200
[2026-10-28 13:19:46,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:19:46,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:19:46,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:19:46,639.639 INFO    ] No camera update needed
[2026-10-28 13:19:46,642.642 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:19:46,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:19:46,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:19:46,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:19:48,694.694 INFO    ] ================================================
[2026-10-28 13:19:48,710.710 INFO    ] Launching Daemon at Wed Oct 28 13:19:48 IST 2026
[2026-10-28 13:19:48,720.720 INFO    ] ================================================
[2026-10-28 13:19:49,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:19:49
[2026-10-28 13:19:49,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:19:50,177.177 INFO    ] Initializing speech engine...
[2026-10-28 13:19:50,186.186 INFO    ] 2026-10-28 13:19:50
[2026-10-28 13:19:50,444.444 INFO    ] 2026-10-28 13:19:50
[2026-10-28 13:19:50,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:19:50,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:19:50,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:19:51,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:19:51,158.158 INFO    ] time= 28/10/2026 13:19:51
[2026-10-28 13:19:51,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:19:51,239.239 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:19:51,390.390 INFO    ] No existing commands found in stream
[2026-10-28 13:19:56,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:19:56,415.415 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-28 13:19:58,146.146 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:19:58,148.148 INFO    ] Checking for system updates...
[2026-10-28 13:19:58,184.184 INFO    ] 200
[2026-10-28 13:19:58,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:19:58,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:19:58,242.242 INFO    ] No update needed
[2026-10-28 13:19:58,245.245 INFO    ] Checking for camera pi updates...
[2026-10-28 13:19:58,280.280 INFO    ] 200
[2026-10-28 13:19:58,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:19:58,322.322 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:19:58,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:19:58,404.404 INFO    ] No camera update needed
[2026-10-28 13:19:58,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:19:58,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:19:58,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:19:58,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:20:00,460.460 INFO    ] ================================================
[2026-10-28 13:20:00,475.475 INFO    ] Launching Daemon at Wed Oct 28 13:20:00 IST 2026
[2026-10-28 13:20:00,486.486 INFO    ] ================================================
[2026-10-28 13:20:01,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:20:01
[2026-10-28 13:20:02,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:20:02,702.702 INFO    ] Initializing speech engine...
[2026-10-28 13:20:02,706.706 INFO    ] 2026-10-28 13:20:02
[2026-10-28 13:20:03,101.101 INFO    ] 2026-10-28 13:20:03
[2026-10-28 13:20:03,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:20:03,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:20:03,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:20:03,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:20:03,816.816 INFO    ] time= 28/10/2026 13:20:03
[2026-10-28 13:20:03,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:20:03,930.930 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:20:04,101.101 INFO    ] No existing commands found in stream
[2026-10-28 13:20:09,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:20:09,135.135 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-28 13:20:10,563.563 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:20:10,566.566 INFO    ] Checking for system updates...
[2026-10-28 13:20:10,603.603 INFO    ] 200
[2026-10-28 13:20:10,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:20:10,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:20:10,661.661 INFO    ] No update needed
[2026-10-28 13:20:10,664.664 INFO    ] Checking for camera pi updates...
[2026-10-28 13:20:10,698.698 INFO    ] 200
[2026-10-28 13:20:10,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:20:10,750.750 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:20:10,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:20:10,834.834 INFO    ] No camera update needed
[2026-10-28 13:20:10,837.837 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:20:10,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:20:10,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:20:10,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:20:12,890.890 INFO    ] ================================================
[2026-10-28 13:20:12,904.904 INFO    ] Launching Daemon at Wed Oct 28 13:20:12 IST 2026
[2026-10-28 13:20:12,915.915 INFO    ] ================================================
[2026-10-28 13:20:13,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:20:13
[2026-10-28 13:20:14,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:20:14,500.500 INFO    ] Initializing speech engine...
[2026-10-28 13:20:14,510.510 INFO    ] 2026-10-28 13:20:14
[2026-10-28 13:20:14,788.788 INFO    ] 2026-10-28 13:20:14
[2026-10-28 13:20:14,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:20:15,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:20:15,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:20:15,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:20:15,519.519 INFO    ] time= 28/10/2026 13:20:15
[2026-10-28 13:20:15,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:20:15,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:20:15,757.757 INFO    ] No existing commands found in stream
[2026-10-28 13:20:20,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:20:20,779.779 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-28 13:20:24,852.852 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:20:24,855.855 INFO    ] Checking for system updates...
[2026-10-28 13:20:24,894.894 INFO    ] 200
[2026-10-28 13:20:24,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:20:24,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:20:24,963.963 INFO    ] No update needed
[2026-10-28 13:20:24,966.966 INFO    ] Checking for camera pi updates...
[2026-10-28 13:20:25,000.000 INFO    ] 200
[2026-10-28 13:20:25,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:20:25,048.048 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:20:25,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:20:25,157.157 INFO    ] No camera update needed
[2026-10-28 13:20:25,159.159 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:20:25,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:20:25,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:20:25,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:20:27,215.215 INFO    ] ================================================
[2026-10-28 13:20:27,230.230 INFO    ] Launching Daemon at Wed Oct 28 13:20:27 IST 2026
[2026-10-28 13:20:27,240.240 INFO    ] ================================================
[2026-10-28 13:20:27,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:20:27
[2026-10-28 13:20:28,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:20:28,663.663 INFO    ] Initializing speech engine...
[2026-10-28 13:20:28,672.672 INFO    ] 2026-10-28 13:20:28
[2026-10-28 13:20:28,929.929 INFO    ] 2026-10-28 13:20:28
[2026-10-28 13:20:28,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:20:29,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:20:29,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:20:29,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:20:29,525.525 INFO    ] time= 28/10/2026 13:20:29
[2026-10-28 13:20:29,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:20:29,557.557 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:20:29,733.733 INFO    ] No existing commands found in stream
[2026-10-28 13:20:34,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:20:34,761.761 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-28 13:20:37,815.815 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:20:37,818.818 INFO    ] Checking for system updates...
[2026-10-28 13:20:37,854.854 INFO    ] 200
[2026-10-28 13:20:37,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:20:37,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:20:37,910.910 INFO    ] No update needed
[2026-10-28 13:20:37,912.912 INFO    ] Checking for camera pi updates...
[2026-10-28 13:20:37,945.945 INFO    ] 200
[2026-10-28 13:20:37,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:20:37,988.988 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:20:38,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:20:38,101.101 INFO    ] No camera update needed
[2026-10-28 13:20:38,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:20:38,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:20:38,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:20:38,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:20:40,156.156 INFO    ] ================================================
[2026-10-28 13:20:40,171.171 INFO    ] Launching Daemon at Wed Oct 28 13:20:40 IST 2026
[2026-10-28 13:20:40,181.181 INFO    ] ================================================
[2026-10-28 13:20:40,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:20:40
[2026-10-28 13:20:41,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:20:41,640.640 INFO    ] Initializing speech engine...
[2026-10-28 13:20:41,650.650 INFO    ] 2026-10-28 13:20:41
[2026-10-28 13:20:41,894.894 INFO    ] 2026-10-28 13:20:41
[2026-10-28 13:20:41,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:20:42,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:20:42,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:20:42,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:20:42,448.448 INFO    ] time= 28/10/2026 13:20:42
[2026-10-28 13:20:42,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:20:42,496.496 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:20:42,610.610 INFO    ] No existing commands found in stream
[2026-10-28 13:20:47,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:20:47,645.645 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 13:20:51,665.665 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:20:51,668.668 INFO    ] Checking for system updates...
[2026-10-28 13:20:51,703.703 INFO    ] 200
[2026-10-28 13:20:51,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:20:51,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:20:51,760.760 INFO    ] No update needed
[2026-10-28 13:20:51,766.766 INFO    ] Checking for camera pi updates...
[2026-10-28 13:20:51,804.804 INFO    ] 200
[2026-10-28 13:20:51,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:20:51,852.852 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:20:51,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:20:51,947.947 INFO    ] No camera update needed
[2026-10-28 13:20:51,949.949 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:20:51,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:20:51,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:20:51,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:20:54,002.002 INFO    ] ================================================
[2026-10-28 13:20:54,017.017 INFO    ] Launching Daemon at Wed Oct 28 13:20:54 IST 2026
[2026-10-28 13:20:54,028.028 INFO    ] ================================================
[2026-10-28 13:20:54,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:20:54
[2026-10-28 13:20:55,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:20:55,422.422 INFO    ] Initializing speech engine...
[2026-10-28 13:20:55,437.437 INFO    ] 2026-10-28 13:20:55
[2026-10-28 13:20:55,702.702 INFO    ] 2026-10-28 13:20:55
[2026-10-28 13:20:55,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:20:56,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:20:56,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:20:56,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:20:56,278.278 INFO    ] time= 28/10/2026 13:20:56
[2026-10-28 13:20:56,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:20:56,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:20:56,455.455 INFO    ] No existing commands found in stream
[2026-10-28 13:21:01,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:21:01,485.485 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 13:21:03,902.902 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:21:03,905.905 INFO    ] Checking for system updates...
[2026-10-28 13:21:03,940.940 INFO    ] 200
[2026-10-28 13:21:03,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:21:03,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:21:03,996.996 INFO    ] No update needed
[2026-10-28 13:21:03,999.999 INFO    ] Checking for camera pi updates...
[2026-10-28 13:21:04,033.033 INFO    ] 200
[2026-10-28 13:21:04,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:21:04,076.076 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:21:04,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:21:04,158.158 INFO    ] No camera update needed
[2026-10-28 13:21:04,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:21:04,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:21:04,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:21:04,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:21:06,213.213 INFO    ] ================================================
[2026-10-28 13:21:06,229.229 INFO    ] Launching Daemon at Wed Oct 28 13:21:06 IST 2026
[2026-10-28 13:21:06,240.240 INFO    ] ================================================
[2026-10-28 13:21:06,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:21:06
[2026-10-28 13:21:07,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:21:07,664.664 INFO    ] Initializing speech engine...
[2026-10-28 13:21:07,670.670 INFO    ] 2026-10-28 13:21:07
[2026-10-28 13:21:07,921.921 INFO    ] 2026-10-28 13:21:07
[2026-10-28 13:21:07,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:21:08,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:21:08,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:21:08,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:21:08,488.488 INFO    ] time= 28/10/2026 13:21:08
[2026-10-28 13:21:08,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:21:08,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:21:08,673.673 INFO    ] No existing commands found in stream
[2026-10-28 13:21:13,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:21:13,701.701 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 13:21:16,056.056 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:21:16,059.059 INFO    ] Checking for system updates...
[2026-10-28 13:21:16,098.098 INFO    ] 200
[2026-10-28 13:21:16,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:21:16,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:21:16,162.162 INFO    ] No update needed
[2026-10-28 13:21:16,164.164 INFO    ] Checking for camera pi updates...
[2026-10-28 13:21:16,197.197 INFO    ] 200
[2026-10-28 13:21:16,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:21:16,240.240 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:21:16,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:21:16,425.425 INFO    ] No camera update needed
[2026-10-28 13:21:16,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:21:16,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:21:16,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:21:16,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:21:18,483.483 INFO    ] ================================================
[2026-10-28 13:21:18,499.499 INFO    ] Launching Daemon at Wed Oct 28 13:21:18 IST 2026
[2026-10-28 13:21:18,511.511 INFO    ] ================================================
[2026-10-28 13:21:19,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:21:19
[2026-10-28 13:21:19,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:21:19,967.967 INFO    ] Initializing speech engine...
[2026-10-28 13:21:19,977.977 INFO    ] 2026-10-28 13:21:19
[2026-10-28 13:21:20,250.250 INFO    ] 2026-10-28 13:21:20
[2026-10-28 13:21:20,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:21:20,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:21:20,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:21:20,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:21:20,835.835 INFO    ] time= 28/10/2026 13:21:20
[2026-10-28 13:21:20,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:21:20,932.932 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:21:21,058.058 INFO    ] No existing commands found in stream
[2026-10-28 13:21:26,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:21:26,090.090 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-28 13:21:26,955.955 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:21:26,958.958 INFO    ] Checking for system updates...
[2026-10-28 13:21:26,998.998 INFO    ] 200
[2026-10-28 13:21:27,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:21:27,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:21:27,064.064 INFO    ] No update needed
[2026-10-28 13:21:27,066.066 INFO    ] Checking for camera pi updates...
[2026-10-28 13:21:27,101.101 INFO    ] 200
[2026-10-28 13:21:27,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:21:27,144.144 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:21:27,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:21:27,247.247 INFO    ] No camera update needed
[2026-10-28 13:21:27,250.250 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:21:27,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:21:27,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:21:27,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:21:29,305.305 INFO    ] ================================================
[2026-10-28 13:21:29,321.321 INFO    ] Launching Daemon at Wed Oct 28 13:21:29 IST 2026
[2026-10-28 13:21:29,332.332 INFO    ] ================================================
[2026-10-28 13:21:29,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:21:29
[2026-10-28 13:21:30,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:21:30,791.791 INFO    ] Initializing speech engine...
[2026-10-28 13:21:30,798.798 INFO    ] 2026-10-28 13:21:30
[2026-10-28 13:21:31,060.060 INFO    ] 2026-10-28 13:21:31
[2026-10-28 13:21:31,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:21:31,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:21:31,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:21:31,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:21:31,648.648 INFO    ] time= 28/10/2026 13:21:31
[2026-10-28 13:21:31,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:21:31,691.691 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:21:31,824.824 INFO    ] No existing commands found in stream
[2026-10-28 13:21:36,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:21:36,860.860 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-28 13:21:41,312.312 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:21:41,315.315 INFO    ] Checking for system updates...
[2026-10-28 13:21:41,351.351 INFO    ] 200
[2026-10-28 13:21:41,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:21:41,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:21:41,409.409 INFO    ] No update needed
[2026-10-28 13:21:41,411.411 INFO    ] Checking for camera pi updates...
[2026-10-28 13:21:41,444.444 INFO    ] 200
[2026-10-28 13:21:41,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:21:41,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:21:41,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:21:41,571.571 INFO    ] No camera update needed
[2026-10-28 13:21:41,573.573 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:21:41,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:21:41,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:21:41,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:21:43,626.626 INFO    ] ================================================
[2026-10-28 13:21:43,641.641 INFO    ] Launching Daemon at Wed Oct 28 13:21:43 IST 2026
[2026-10-28 13:21:43,652.652 INFO    ] ================================================
[2026-10-28 13:21:44,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:21:44
[2026-10-28 13:21:44,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:21:45,127.127 INFO    ] Initializing speech engine...
[2026-10-28 13:21:45,146.146 INFO    ] 2026-10-28 13:21:45
[2026-10-28 13:21:45,391.391 INFO    ] 2026-10-28 13:21:45
[2026-10-28 13:21:45,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:21:45,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:21:45,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:21:45,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:21:45,943.943 INFO    ] time= 28/10/2026 13:21:45
[2026-10-28 13:21:45,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:21:45,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:21:46,114.114 INFO    ] No existing commands found in stream
[2026-10-28 13:21:51,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:21:51,142.142 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-28 13:21:52,890.890 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:21:52,893.893 INFO    ] Checking for system updates...
[2026-10-28 13:21:52,945.945 INFO    ] 200
[2026-10-28 13:21:52,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:21:53,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:21:53,020.020 INFO    ] No update needed
[2026-10-28 13:21:53,022.022 INFO    ] Checking for camera pi updates...
[2026-10-28 13:21:53,060.060 INFO    ] 200
[2026-10-28 13:21:53,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:21:53,104.104 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:21:53,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:21:53,207.207 INFO    ] No camera update needed
[2026-10-28 13:21:53,210.210 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:21:53,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:21:53,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:21:53,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:21:55,271.271 INFO    ] ================================================
[2026-10-28 13:21:55,286.286 INFO    ] Launching Daemon at Wed Oct 28 13:21:55 IST 2026
[2026-10-28 13:21:55,297.297 INFO    ] ================================================
[2026-10-28 13:21:55,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:21:55
[2026-10-28 13:21:56,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:21:56,761.761 INFO    ] Initializing speech engine...
[2026-10-28 13:21:56,770.770 INFO    ] 2026-10-28 13:21:56
[2026-10-28 13:21:57,037.037 INFO    ] 2026-10-28 13:21:57
[2026-10-28 13:21:57,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:21:57,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:21:57,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:21:57,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:21:57,768.768 INFO    ] time= 28/10/2026 13:21:57
[2026-10-28 13:21:57,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:21:57,870.870 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:21:58,012.012 INFO    ] No existing commands found in stream
[2026-10-28 13:22:03,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:22:03,046.046 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-28 13:22:04,490.490 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:22:04,492.492 INFO    ] Checking for system updates...
[2026-10-28 13:22:04,533.533 INFO    ] 200
[2026-10-28 13:22:04,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:22:04,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:22:04,591.591 INFO    ] No update needed
[2026-10-28 13:22:04,593.593 INFO    ] Checking for camera pi updates...
[2026-10-28 13:22:04,627.627 INFO    ] 200
[2026-10-28 13:22:04,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:22:04,669.669 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:22:04,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:22:04,777.777 INFO    ] No camera update needed
[2026-10-28 13:22:04,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:22:04,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:22:04,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:22:04,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:22:06,833.833 INFO    ] ================================================
[2026-10-28 13:22:06,848.848 INFO    ] Launching Daemon at Wed Oct 28 13:22:06 IST 2026
[2026-10-28 13:22:06,860.860 INFO    ] ================================================
[2026-10-28 13:22:07,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:22:07
[2026-10-28 13:22:08,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:22:08,282.282 INFO    ] Initializing speech engine...
[2026-10-28 13:22:08,291.291 INFO    ] 2026-10-28 13:22:08
[2026-10-28 13:22:08,539.539 INFO    ] 2026-10-28 13:22:08
[2026-10-28 13:22:08,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:22:08,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:22:08,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:22:09,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:22:09,160.160 INFO    ] time= 28/10/2026 13:22:09
[2026-10-28 13:22:09,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:22:09,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:22:09,310.310 INFO    ] No existing commands found in stream
[2026-10-28 13:22:14,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:22:14,333.333 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-28 13:22:17,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:22:17,371.371 INFO    ] Checking for system updates...
[2026-10-28 13:22:17,409.409 INFO    ] 200
[2026-10-28 13:22:17,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:22:17,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:22:17,472.472 INFO    ] No update needed
[2026-10-28 13:22:17,474.474 INFO    ] Checking for camera pi updates...
[2026-10-28 13:22:17,508.508 INFO    ] 200
[2026-10-28 13:22:17,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:22:17,554.554 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:22:17,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:22:17,628.628 INFO    ] No camera update needed
[2026-10-28 13:22:17,630.630 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:22:17,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:22:17,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:22:17,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:22:19,685.685 INFO    ] ================================================
[2026-10-28 13:22:19,700.700 INFO    ] Launching Daemon at Wed Oct 28 13:22:19 IST 2026
[2026-10-28 13:22:19,711.711 INFO    ] ================================================
[2026-10-28 13:22:20,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:22:20
[2026-10-28 13:22:20,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:22:21,117.117 INFO    ] Initializing speech engine...
[2026-10-28 13:22:21,133.133 INFO    ] 2026-10-28 13:22:21
[2026-10-28 13:22:21,414.414 INFO    ] 2026-10-28 13:22:21
[2026-10-28 13:22:21,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:22:21,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:22:21,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:22:21,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:22:22,010.010 INFO    ] time= 28/10/2026 13:22:21
[2026-10-28 13:22:22,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:22:22,038.038 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:22:22,169.169 INFO    ] No existing commands found in stream
[2026-10-28 13:22:27,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:22:27,189.189 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-28 13:22:28,290.290 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:22:28,293.293 INFO    ] Checking for system updates...
[2026-10-28 13:22:28,336.336 INFO    ] 200
[2026-10-28 13:22:28,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:22:28,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:22:28,400.400 INFO    ] No update needed
[2026-10-28 13:22:28,403.403 INFO    ] Checking for camera pi updates...
[2026-10-28 13:22:28,443.443 INFO    ] 200
[2026-10-28 13:22:28,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:22:28,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:22:28,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:22:28,575.575 INFO    ] No camera update needed
[2026-10-28 13:22:28,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:22:28,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:22:28,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:22:28,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:22:30,634.634 INFO    ] ================================================
[2026-10-28 13:22:30,650.650 INFO    ] Launching Daemon at Wed Oct 28 13:22:30 IST 2026
[2026-10-28 13:22:30,662.662 INFO    ] ================================================
[2026-10-28 13:22:31,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:22:31
[2026-10-28 13:22:31,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:22:32,175.175 INFO    ] Initializing speech engine...
[2026-10-28 13:22:32,202.202 INFO    ] 2026-10-28 13:22:32
[2026-10-28 13:22:32,527.527 INFO    ] 2026-10-28 13:22:32
[2026-10-28 13:22:32,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:22:32,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:22:32,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:22:33,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:22:33,122.122 INFO    ] time= 28/10/2026 13:22:33
[2026-10-28 13:22:33,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:22:33,147.147 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:22:33,453.453 INFO    ] No existing commands found in stream
[2026-10-28 13:22:38,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:22:38,488.488 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-28 13:22:39,607.607 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:22:39,610.610 INFO    ] Checking for system updates...
[2026-10-28 13:22:39,647.647 INFO    ] 200
[2026-10-28 13:22:39,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:22:39,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:22:39,706.706 INFO    ] No update needed
[2026-10-28 13:22:39,709.709 INFO    ] Checking for camera pi updates...
[2026-10-28 13:22:39,751.751 INFO    ] 200
[2026-10-28 13:22:39,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:22:39,800.800 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:22:39,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:22:39,907.907 INFO    ] No camera update needed
[2026-10-28 13:22:39,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:22:39,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:22:39,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:22:39,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:22:41,966.966 INFO    ] ================================================
[2026-10-28 13:22:41,983.983 INFO    ] Launching Daemon at Wed Oct 28 13:22:41 IST 2026
[2026-10-28 13:22:41,994.994 INFO    ] ================================================
[2026-10-28 13:22:42,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:22:42
[2026-10-28 13:22:43,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:22:43,495.495 INFO    ] Initializing speech engine...
[2026-10-28 13:22:43,504.504 INFO    ] 2026-10-28 13:22:43
[2026-10-28 13:22:43,769.769 INFO    ] 2026-10-28 13:22:43
[2026-10-28 13:22:43,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:22:44,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:22:44,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:22:44,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:22:44,329.329 INFO    ] time= 28/10/2026 13:22:44
[2026-10-28 13:22:44,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:22:44,375.375 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:22:44,492.492 INFO    ] No existing commands found in stream
[2026-10-28 13:22:49,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:22:49,519.519 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-28 13:22:53,628.628 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:22:53,631.631 INFO    ] Checking for system updates...
[2026-10-28 13:22:53,670.670 INFO    ] 200
[2026-10-28 13:22:53,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:22:53,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:22:53,728.728 INFO    ] No update needed
[2026-10-28 13:22:53,731.731 INFO    ] Checking for camera pi updates...
[2026-10-28 13:22:53,767.767 INFO    ] 200
[2026-10-28 13:22:53,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:22:53,814.814 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:22:53,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:22:53,905.905 INFO    ] No camera update needed
[2026-10-28 13:22:53,907.907 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:22:53,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:22:53,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:22:53,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:22:55,962.962 INFO    ] ================================================
[2026-10-28 13:22:55,977.977 INFO    ] Launching Daemon at Wed Oct 28 13:22:55 IST 2026
[2026-10-28 13:22:55,987.987 INFO    ] ================================================
[2026-10-28 13:22:56,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:22:56
[2026-10-28 13:22:57,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:22:57,442.442 INFO    ] Initializing speech engine...
[2026-10-28 13:22:57,452.452 INFO    ] 2026-10-28 13:22:57
[2026-10-28 13:22:57,712.712 INFO    ] 2026-10-28 13:22:57
[2026-10-28 13:22:57,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:22:58,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:22:58,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:22:58,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:22:58,405.405 INFO    ] time= 28/10/2026 13:22:58
[2026-10-28 13:22:58,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:22:58,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:22:58,656.656 INFO    ] No existing commands found in stream
[2026-10-28 13:23:03,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:23:03,678.678 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-28 13:23:07,291.291 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:23:07,293.293 INFO    ] Checking for system updates...
[2026-10-28 13:23:07,331.331 INFO    ] 200
[2026-10-28 13:23:07,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:23:07,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:23:07,395.395 INFO    ] No update needed
[2026-10-28 13:23:07,398.398 INFO    ] Checking for camera pi updates...
[2026-10-28 13:23:07,432.432 INFO    ] 200
[2026-10-28 13:23:07,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:23:07,479.479 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:23:07,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:23:07,570.570 INFO    ] No camera update needed
[2026-10-28 13:23:07,572.572 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:23:07,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:23:07,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:23:07,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:23:09,627.627 INFO    ] ================================================
[2026-10-28 13:23:09,643.643 INFO    ] Launching Daemon at Wed Oct 28 13:23:09 IST 2026
[2026-10-28 13:23:09,655.655 INFO    ] ================================================
[2026-10-28 13:23:10,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:23:10
[2026-10-28 13:23:10,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:23:11,079.079 INFO    ] Initializing speech engine...
[2026-10-28 13:23:11,103.103 INFO    ] 2026-10-28 13:23:11
[2026-10-28 13:23:11,374.374 INFO    ] 2026-10-28 13:23:11
[2026-10-28 13:23:11,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:23:11,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:23:11,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:23:11,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:23:11,914.914 INFO    ] time= 28/10/2026 13:23:11
[2026-10-28 13:23:11,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:23:12,005.005 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:23:12,144.144 INFO    ] No existing commands found in stream
[2026-10-28 13:23:17,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:23:17,178.178 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-28 13:23:18,893.893 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:23:18,896.896 INFO    ] Checking for system updates...
[2026-10-28 13:23:18,931.931 INFO    ] 200
[2026-10-28 13:23:18,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:23:18,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:23:18,988.988 INFO    ] No update needed
[2026-10-28 13:23:18,991.991 INFO    ] Checking for camera pi updates...
[2026-10-28 13:23:19,024.024 INFO    ] 200
[2026-10-28 13:23:19,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:23:19,073.073 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:23:19,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:23:19,167.167 INFO    ] No camera update needed
[2026-10-28 13:23:19,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:23:19,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:23:19,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:23:19,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:23:21,221.221 INFO    ] ================================================
[2026-10-28 13:23:21,237.237 INFO    ] Launching Daemon at Wed Oct 28 13:23:21 IST 2026
[2026-10-28 13:23:21,247.247 INFO    ] ================================================
[2026-10-28 13:23:21,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:23:21
[2026-10-28 13:23:22,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:23:22,704.704 INFO    ] Initializing speech engine...
[2026-10-28 13:23:22,709.709 INFO    ] 2026-10-28 13:23:22
[2026-10-28 13:23:22,983.983 INFO    ] 2026-10-28 13:23:22
[2026-10-28 13:23:23,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:23:23,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:23:23,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:23:23,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:23:23,723.723 INFO    ] time= 28/10/2026 13:23:23
[2026-10-28 13:23:23,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:23:23,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:23:23,960.960 INFO    ] No existing commands found in stream
[2026-10-28 13:23:28,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:23:28,973.973 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-28 13:23:30,808.808 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:23:30,811.811 INFO    ] Checking for system updates...
[2026-10-28 13:23:30,846.846 INFO    ] 200
[2026-10-28 13:23:30,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:23:30,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:23:30,904.904 INFO    ] No update needed
[2026-10-28 13:23:30,906.906 INFO    ] Checking for camera pi updates...
[2026-10-28 13:23:30,944.944 INFO    ] 200
[2026-10-28 13:23:30,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:23:30,987.987 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:23:31,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:23:31,229.229 INFO    ] No camera update needed
[2026-10-28 13:23:31,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:23:31,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:23:31,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:23:31,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:23:33,287.287 INFO    ] ================================================
[2026-10-28 13:23:33,302.302 INFO    ] Launching Daemon at Wed Oct 28 13:23:33 IST 2026
[2026-10-28 13:23:33,314.314 INFO    ] ================================================
[2026-10-28 13:23:33,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:23:33
[2026-10-28 13:23:34,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:23:34,780.780 INFO    ] Initializing speech engine...
[2026-10-28 13:23:34,786.786 INFO    ] 2026-10-28 13:23:34
[2026-10-28 13:23:35,034.034 INFO    ] 2026-10-28 13:23:35
[2026-10-28 13:23:35,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:23:35,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:23:35,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:23:35,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:23:35,589.589 INFO    ] time= 28/10/2026 13:23:35
[2026-10-28 13:23:35,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:23:35,635.635 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:23:35,760.760 INFO    ] No existing commands found in stream
[2026-10-28 13:23:40,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:23:40,793.793 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-28 13:23:45,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:23:45,019.019 INFO    ] Checking for system updates...
[2026-10-28 13:23:45,061.061 INFO    ] 200
[2026-10-28 13:23:45,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:23:45,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:23:45,130.130 INFO    ] No update needed
[2026-10-28 13:23:45,133.133 INFO    ] Checking for camera pi updates...
[2026-10-28 13:23:45,171.171 INFO    ] 200
[2026-10-28 13:23:45,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:23:45,221.221 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:23:45,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:23:45,322.322 INFO    ] No camera update needed
[2026-10-28 13:23:45,325.325 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:23:45,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:23:45,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:23:45,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:23:47,383.383 INFO    ] ================================================
[2026-10-28 13:23:47,398.398 INFO    ] Launching Daemon at Wed Oct 28 13:23:47 IST 2026
[2026-10-28 13:23:47,409.409 INFO    ] ================================================
[2026-10-28 13:23:47,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:23:47
[2026-10-28 13:23:48,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:23:48,863.863 INFO    ] Initializing speech engine...
[2026-10-28 13:23:48,874.874 INFO    ] 2026-10-28 13:23:48
[2026-10-28 13:23:49,132.132 INFO    ] 2026-10-28 13:23:49
[2026-10-28 13:23:49,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:23:49,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:23:49,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:23:49,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:23:49,860.860 INFO    ] time= 28/10/2026 13:23:49
[2026-10-28 13:23:49,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:23:49,966.966 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:23:50,375.375 INFO    ] No existing commands found in stream
[2026-10-28 13:23:55,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:23:55,388.388 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 13:23:56,727.727 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:23:56,729.729 INFO    ] Checking for system updates...
[2026-10-28 13:23:56,769.769 INFO    ] 200
[2026-10-28 13:23:56,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:23:56,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:23:56,834.834 INFO    ] No update needed
[2026-10-28 13:23:56,837.837 INFO    ] Checking for camera pi updates...
[2026-10-28 13:23:56,874.874 INFO    ] 200
[2026-10-28 13:23:56,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:23:56,922.922 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:23:57,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:23:57,005.005 INFO    ] No camera update needed
[2026-10-28 13:23:57,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:23:57,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:23:57,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:23:57,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:23:59,062.062 INFO    ] ================================================
[2026-10-28 13:23:59,078.078 INFO    ] Launching Daemon at Wed Oct 28 13:23:59 IST 2026
[2026-10-28 13:23:59,090.090 INFO    ] ================================================
[2026-10-28 13:23:59,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:23:59
[2026-10-28 13:24:00,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:24:00,545.545 INFO    ] Initializing speech engine...
[2026-10-28 13:24:00,554.554 INFO    ] 2026-10-28 13:24:00
[2026-10-28 13:24:00,812.812 INFO    ] 2026-10-28 13:24:00
[2026-10-28 13:24:00,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:24:01,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:24:01,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:24:01,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:24:01,368.368 INFO    ] time= 28/10/2026 13:24:01
[2026-10-28 13:24:01,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:24:01,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:24:01,563.563 INFO    ] No existing commands found in stream
[2026-10-28 13:24:06,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:24:06,590.590 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 13:24:11,148.148 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:24:11,150.150 INFO    ] Checking for system updates...
[2026-10-28 13:24:11,191.191 INFO    ] 200
[2026-10-28 13:24:11,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:24:11,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:24:11,255.255 INFO    ] No update needed
[2026-10-28 13:24:11,258.258 INFO    ] Checking for camera pi updates...
[2026-10-28 13:24:11,294.294 INFO    ] 200
[2026-10-28 13:24:11,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:24:11,338.338 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:24:11,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:24:11,426.426 INFO    ] No camera update needed
[2026-10-28 13:24:11,428.428 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:24:11,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:24:11,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:24:11,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:24:13,480.480 INFO    ] ================================================
[2026-10-28 13:24:13,497.497 INFO    ] Launching Daemon at Wed Oct 28 13:24:13 IST 2026
[2026-10-28 13:24:13,507.507 INFO    ] ================================================
[2026-10-28 13:24:14,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:24:14
[2026-10-28 13:24:14,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:24:14,945.945 INFO    ] Initializing speech engine...
[2026-10-28 13:24:14,968.968 INFO    ] 2026-10-28 13:24:14
[2026-10-28 13:24:15,224.224 INFO    ] 2026-10-28 13:24:15
[2026-10-28 13:24:15,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:24:15,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:24:15,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:24:15,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:24:15,805.805 INFO    ] time= 28/10/2026 13:24:15
[2026-10-28 13:24:15,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:24:15,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:24:16,009.009 INFO    ] No existing commands found in stream
[2026-10-28 13:24:21,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:24:21,042.042 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-28 13:24:25,526.526 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:24:25,528.528 INFO    ] Checking for system updates...
[2026-10-28 13:24:25,564.564 INFO    ] 200
[2026-10-28 13:24:25,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:24:25,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:24:25,633.633 INFO    ] No update needed
[2026-10-28 13:24:25,636.636 INFO    ] Checking for camera pi updates...
[2026-10-28 13:24:25,671.671 INFO    ] 200
[2026-10-28 13:24:25,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:24:25,721.721 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:24:25,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:24:25,810.810 INFO    ] No camera update needed
[2026-10-28 13:24:25,812.812 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:24:25,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:24:25,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:24:25,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:24:27,866.866 INFO    ] ================================================
[2026-10-28 13:24:27,882.882 INFO    ] Launching Daemon at Wed Oct 28 13:24:27 IST 2026
[2026-10-28 13:24:27,893.893 INFO    ] ================================================
[2026-10-28 13:24:28,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:24:28
[2026-10-28 13:24:29,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:24:29,395.395 INFO    ] Initializing speech engine...
[2026-10-28 13:24:29,404.404 INFO    ] 2026-10-28 13:24:29
[2026-10-28 13:24:29,653.653 INFO    ] 2026-10-28 13:24:29
[2026-10-28 13:24:29,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:24:30,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:24:30,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:24:30,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:24:30,256.256 INFO    ] time= 28/10/2026 13:24:30
[2026-10-28 13:24:30,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:24:30,317.317 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:24:30,466.466 INFO    ] No existing commands found in stream
[2026-10-28 13:24:35,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:24:35,498.498 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-28 13:24:39,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:24:39,541.541 INFO    ] Checking for system updates...
[2026-10-28 13:24:39,581.581 INFO    ] 200
[2026-10-28 13:24:39,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:24:39,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:24:39,645.645 INFO    ] No update needed
[2026-10-28 13:24:39,647.647 INFO    ] Checking for camera pi updates...
[2026-10-28 13:24:39,685.685 INFO    ] 200
[2026-10-28 13:24:39,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:24:39,728.728 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:24:39,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:24:39,821.821 INFO    ] No camera update needed
[2026-10-28 13:24:39,824.824 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:24:39,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:24:39,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:24:39,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:24:41,880.880 INFO    ] ================================================
[2026-10-28 13:24:41,896.896 INFO    ] Launching Daemon at Wed Oct 28 13:24:41 IST 2026
[2026-10-28 13:24:41,906.906 INFO    ] ================================================
[2026-10-28 13:24:42,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:24:42
[2026-10-28 13:24:43,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:24:43,302.302 INFO    ] Initializing speech engine...
[2026-10-28 13:24:43,324.324 INFO    ] 2026-10-28 13:24:43
[2026-10-28 13:24:43,575.575 INFO    ] 2026-10-28 13:24:43
[2026-10-28 13:24:43,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:24:43,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:24:43,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:24:44,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:24:44,092.092 INFO    ] time= 28/10/2026 13:24:44
[2026-10-28 13:24:44,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:24:44,180.180 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:24:44,318.318 INFO    ] No existing commands found in stream
[2026-10-28 13:24:49,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:24:49,346.346 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-28 13:24:50,713.713 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:24:50,716.716 INFO    ] Checking for system updates...
[2026-10-28 13:24:50,756.756 INFO    ] 200
[2026-10-28 13:24:50,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:24:50,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:24:50,820.820 INFO    ] No update needed
[2026-10-28 13:24:50,822.822 INFO    ] Checking for camera pi updates...
[2026-10-28 13:24:50,857.857 INFO    ] 200
[2026-10-28 13:24:50,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:24:50,900.900 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:24:50,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:24:50,963.963 INFO    ] No camera update needed
[2026-10-28 13:24:50,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:24:50,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:24:50,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:24:50,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:24:53,018.018 INFO    ] ================================================
[2026-10-28 13:24:53,034.034 INFO    ] Launching Daemon at Wed Oct 28 13:24:53 IST 2026
[2026-10-28 13:24:53,044.044 INFO    ] ================================================
[2026-10-28 13:24:53,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:24:53
[2026-10-28 13:24:54,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:24:54,477.477 INFO    ] Initializing speech engine...
[2026-10-28 13:24:54,499.499 INFO    ] 2026-10-28 13:24:54
[2026-10-28 13:24:54,751.751 INFO    ] 2026-10-28 13:24:54
[2026-10-28 13:24:54,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:24:55,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:24:55,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:24:55,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:24:55,308.308 INFO    ] time= 28/10/2026 13:24:55
[2026-10-28 13:24:55,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:24:55,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:24:55,485.485 INFO    ] No existing commands found in stream
[2026-10-28 13:25:00,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:25:00,518.518 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-28 13:25:04,893.893 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:25:04,895.895 INFO    ] Checking for system updates...
[2026-10-28 13:25:04,935.935 INFO    ] 200
[2026-10-28 13:25:04,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:25:04,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:25:04,999.999 INFO    ] No update needed
[2026-10-28 13:25:05,001.001 INFO    ] Checking for camera pi updates...
[2026-10-28 13:25:05,039.039 INFO    ] 200
[2026-10-28 13:25:05,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:25:05,087.087 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:25:05,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:25:05,183.183 INFO    ] No camera update needed
[2026-10-28 13:25:05,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:25:05,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:25:05,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:25:05,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:25:07,238.238 INFO    ] ================================================
[2026-10-28 13:25:07,254.254 INFO    ] Launching Daemon at Wed Oct 28 13:25:07 IST 2026
[2026-10-28 13:25:07,265.265 INFO    ] ================================================
[2026-10-28 13:25:07,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:25:07
[2026-10-28 13:25:08,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:25:08,925.925 INFO    ] Initializing speech engine...
[2026-10-28 13:25:08,932.932 INFO    ] 2026-10-28 13:25:08
[2026-10-28 13:25:09,204.204 INFO    ] 2026-10-28 13:25:09
[2026-10-28 13:25:09,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:25:09,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:25:09,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:25:09,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:25:09,754.754 INFO    ] time= 28/10/2026 13:25:09
[2026-10-28 13:25:09,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:25:09,788.788 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:25:09,953.953 INFO    ] No existing commands found in stream
[2026-10-28 13:25:14,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:25:14,981.981 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-28 13:25:16,980.980 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:25:16,983.983 INFO    ] Checking for system updates...
[2026-10-28 13:25:17,018.018 INFO    ] 200
[2026-10-28 13:25:17,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:25:17,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:25:17,076.076 INFO    ] No update needed
[2026-10-28 13:25:17,079.079 INFO    ] Checking for camera pi updates...
[2026-10-28 13:25:17,116.116 INFO    ] 200
[2026-10-28 13:25:17,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:25:17,164.164 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:25:17,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:25:17,250.250 INFO    ] No camera update needed
[2026-10-28 13:25:17,252.252 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:25:17,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:25:17,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:25:17,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:25:19,306.306 INFO    ] ================================================
[2026-10-28 13:25:19,322.322 INFO    ] Launching Daemon at Wed Oct 28 13:25:19 IST 2026
[2026-10-28 13:25:19,333.333 INFO    ] ================================================
[2026-10-28 13:25:19,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:25:19
[2026-10-28 13:25:20,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:25:20,789.789 INFO    ] Initializing speech engine...
[2026-10-28 13:25:20,796.796 INFO    ] 2026-10-28 13:25:20
[2026-10-28 13:25:21,056.056 INFO    ] 2026-10-28 13:25:21
[2026-10-28 13:25:21,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:25:21,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:25:21,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:25:21,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:25:21,613.613 INFO    ] time= 28/10/2026 13:25:21
[2026-10-28 13:25:21,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:25:21,626.626 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:25:21,773.773 INFO    ] No existing commands found in stream
[2026-10-28 13:25:26,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:25:26,801.801 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 13:25:30,819.819 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:25:30,822.822 INFO    ] Checking for system updates...
[2026-10-28 13:25:30,860.860 INFO    ] 200
[2026-10-28 13:25:30,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:25:30,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:25:30,919.919 INFO    ] No update needed
[2026-10-28 13:25:30,922.922 INFO    ] Checking for camera pi updates...
[2026-10-28 13:25:30,958.958 INFO    ] 200
[2026-10-28 13:25:30,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:25:31,002.002 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:25:31,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:25:31,174.174 INFO    ] No camera update needed
[2026-10-28 13:25:31,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:25:31,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:25:31,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:25:31,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:25:33,236.236 INFO    ] ================================================
[2026-10-28 13:25:33,252.252 INFO    ] Launching Daemon at Wed Oct 28 13:25:33 IST 2026
[2026-10-28 13:25:33,266.266 INFO    ] ================================================
[2026-10-28 13:25:33,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:25:33
[2026-10-28 13:25:34,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:25:34,758.758 INFO    ] Initializing speech engine...
[2026-10-28 13:25:34,764.764 INFO    ] 2026-10-28 13:25:34
[2026-10-28 13:25:35,040.040 INFO    ] 2026-10-28 13:25:35
[2026-10-28 13:25:35,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:25:35,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:25:35,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:25:35,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:25:35,611.611 INFO    ] time= 28/10/2026 13:25:35
[2026-10-28 13:25:35,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:25:35,656.656 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:25:35,834.834 INFO    ] No existing commands found in stream
[2026-10-28 13:25:40,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:25:40,867.867 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 13:25:41,766.766 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:25:41,769.769 INFO    ] Checking for system updates...
[2026-10-28 13:25:41,810.810 INFO    ] 200
[2026-10-28 13:25:41,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:25:41,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:25:41,878.878 INFO    ] No update needed
[2026-10-28 13:25:41,881.881 INFO    ] Checking for camera pi updates...
[2026-10-28 13:25:41,920.920 INFO    ] 200
[2026-10-28 13:25:41,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:25:41,976.976 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:25:42,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:25:42,057.057 INFO    ] No camera update needed
[2026-10-28 13:25:42,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:25:42,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:25:42,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:25:42,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:25:44,115.115 INFO    ] ================================================
[2026-10-28 13:25:44,131.131 INFO    ] Launching Daemon at Wed Oct 28 13:25:44 IST 2026
[2026-10-28 13:25:44,142.142 INFO    ] ================================================
[2026-10-28 13:25:44,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:25:44
[2026-10-28 13:25:45,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:25:45,583.583 INFO    ] Initializing speech engine...
[2026-10-28 13:25:45,592.592 INFO    ] 2026-10-28 13:25:45
[2026-10-28 13:25:45,842.842 INFO    ] 2026-10-28 13:25:45
[2026-10-28 13:25:45,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:25:46,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:25:46,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:25:46,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:25:46,411.411 INFO    ] time= 28/10/2026 13:25:46
[2026-10-28 13:25:46,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:25:46,435.435 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:25:46,568.568 INFO    ] No existing commands found in stream
[2026-10-28 13:25:51,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:25:51,595.595 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 13:25:54,654.654 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:25:54,657.657 INFO    ] Checking for system updates...
[2026-10-28 13:25:54,695.695 INFO    ] 200
[2026-10-28 13:25:54,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:25:54,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:25:54,762.762 INFO    ] No update needed
[2026-10-28 13:25:54,765.765 INFO    ] Checking for camera pi updates...
[2026-10-28 13:25:54,804.804 INFO    ] 200
[2026-10-28 13:25:54,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:25:54,854.854 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:25:54,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:25:54,945.945 INFO    ] No camera update needed
[2026-10-28 13:25:54,948.948 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:25:54,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:25:54,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:25:54,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:25:57,008.008 INFO    ] ================================================
[2026-10-28 13:25:57,025.025 INFO    ] Launching Daemon at Wed Oct 28 13:25:57 IST 2026
[2026-10-28 13:25:57,036.036 INFO    ] ================================================
[2026-10-28 13:25:57,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:25:57
[2026-10-28 13:25:58,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:25:58,467.467 INFO    ] Initializing speech engine...
[2026-10-28 13:25:58,479.479 INFO    ] 2026-10-28 13:25:58
[2026-10-28 13:25:58,743.743 INFO    ] 2026-10-28 13:25:58
[2026-10-28 13:25:58,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:25:59,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:25:59,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:25:59,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:25:59,311.311 INFO    ] time= 28/10/2026 13:25:59
[2026-10-28 13:25:59,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:25:59,344.344 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:25:59,496.496 INFO    ] No existing commands found in stream
[2026-10-28 13:26:04,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:26:04,525.525 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-28 13:26:07,218.218 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:26:07,221.221 INFO    ] Checking for system updates...
[2026-10-28 13:26:07,257.257 INFO    ] 200
[2026-10-28 13:26:07,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:26:07,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:26:07,316.316 INFO    ] No update needed
[2026-10-28 13:26:07,318.318 INFO    ] Checking for camera pi updates...
[2026-10-28 13:26:07,353.353 INFO    ] 200
[2026-10-28 13:26:07,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:26:07,402.402 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:26:07,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:26:07,489.489 INFO    ] No camera update needed
[2026-10-28 13:26:07,492.492 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:26:07,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:26:07,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:26:07,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:26:09,547.547 INFO    ] ================================================
[2026-10-28 13:26:09,563.563 INFO    ] Launching Daemon at Wed Oct 28 13:26:09 IST 2026
[2026-10-28 13:26:09,574.574 INFO    ] ================================================
[2026-10-28 13:26:10,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:26:10
[2026-10-28 13:26:10,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:26:11,200.200 INFO    ] Initializing speech engine...
[2026-10-28 13:26:11,208.208 INFO    ] 2026-10-28 13:26:11
[2026-10-28 13:26:11,488.488 INFO    ] 2026-10-28 13:26:11
[2026-10-28 13:26:11,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:26:11,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:26:11,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:26:12,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:26:12,045.045 INFO    ] time= 28/10/2026 13:26:12
[2026-10-28 13:26:12,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:26:12,094.094 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:26:12,206.206 INFO    ] No existing commands found in stream
[2026-10-28 13:26:17,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:26:17,234.234 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-28 13:26:20,127.127 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:26:20,130.130 INFO    ] Checking for system updates...
[2026-10-28 13:26:20,167.167 INFO    ] 200
[2026-10-28 13:26:20,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:26:20,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:26:20,232.232 INFO    ] No update needed
[2026-10-28 13:26:20,235.235 INFO    ] Checking for camera pi updates...
[2026-10-28 13:26:20,273.273 INFO    ] 200
[2026-10-28 13:26:20,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:26:20,318.318 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:26:20,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:26:20,424.424 INFO    ] No camera update needed
[2026-10-28 13:26:20,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:26:20,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:26:20,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:26:20,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:26:22,483.483 INFO    ] ================================================
[2026-10-28 13:26:22,498.498 INFO    ] Launching Daemon at Wed Oct 28 13:26:22 IST 2026
[2026-10-28 13:26:22,510.510 INFO    ] ================================================
[2026-10-28 13:26:23,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:26:23
[2026-10-28 13:26:23,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:26:24,057.057 INFO    ] Initializing speech engine...
[2026-10-28 13:26:24,067.067 INFO    ] 2026-10-28 13:26:24
[2026-10-28 13:26:24,342.342 INFO    ] 2026-10-28 13:26:24
[2026-10-28 13:26:24,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:26:24,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:26:24,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:26:25,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:26:25,114.114 INFO    ] time= 28/10/2026 13:26:25
[2026-10-28 13:26:25,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:26:25,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:26:25,343.343 INFO    ] No existing commands found in stream
[2026-10-28 13:26:30,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:26:30,357.357 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 13:26:32,525.525 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:26:32,528.528 INFO    ] Checking for system updates...
[2026-10-28 13:26:32,567.567 INFO    ] 200
[2026-10-28 13:26:32,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:26:32,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:26:32,631.631 INFO    ] No update needed
[2026-10-28 13:26:32,633.633 INFO    ] Checking for camera pi updates...
[2026-10-28 13:26:32,667.667 INFO    ] 200
[2026-10-28 13:26:32,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:26:32,710.710 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:26:32,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:26:32,827.827 INFO    ] No camera update needed
[2026-10-28 13:26:32,829.829 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:26:32,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:26:32,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:26:32,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:26:34,882.882 INFO    ] ================================================
[2026-10-28 13:26:34,898.898 INFO    ] Launching Daemon at Wed Oct 28 13:26:34 IST 2026
[2026-10-28 13:26:34,909.909 INFO    ] ================================================
[2026-10-28 13:26:35,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:26:35
[2026-10-28 13:26:36,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:26:36,320.320 INFO    ] Initializing speech engine...
[2026-10-28 13:26:36,329.329 INFO    ] 2026-10-28 13:26:36
[2026-10-28 13:26:36,574.574 INFO    ] 2026-10-28 13:26:36
[2026-10-28 13:26:36,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:26:36,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:26:36,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:26:37,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:26:37,139.139 INFO    ] time= 28/10/2026 13:26:37
[2026-10-28 13:26:37,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:26:37,173.173 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:26:37,333.333 INFO    ] No existing commands found in stream
[2026-10-28 13:26:42,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:26:42,360.360 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-28 13:26:46,806.806 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:26:46,809.809 INFO    ] Checking for system updates...
[2026-10-28 13:26:46,845.845 INFO    ] 200
[2026-10-28 13:26:46,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:26:46,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:26:46,904.904 INFO    ] No update needed
[2026-10-28 13:26:46,907.907 INFO    ] Checking for camera pi updates...
[2026-10-28 13:26:46,941.941 INFO    ] 200
[2026-10-28 13:26:46,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:26:46,985.985 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:26:47,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:26:47,077.077 INFO    ] No camera update needed
[2026-10-28 13:26:47,080.080 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:26:47,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:26:47,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:26:47,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:26:49,137.137 INFO    ] ================================================
[2026-10-28 13:26:49,152.152 INFO    ] Launching Daemon at Wed Oct 28 13:26:49 IST 2026
[2026-10-28 13:26:49,163.163 INFO    ] ================================================
[2026-10-28 13:26:49,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:26:49
[2026-10-28 13:26:50,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:26:50,582.582 INFO    ] Initializing speech engine...
[2026-10-28 13:26:50,590.590 INFO    ] 2026-10-28 13:26:50
[2026-10-28 13:26:50,846.846 INFO    ] 2026-10-28 13:26:50
[2026-10-28 13:26:50,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:26:51,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:26:51,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:26:51,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:26:51,388.388 INFO    ] time= 28/10/2026 13:26:51
[2026-10-28 13:26:51,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:26:51,410.410 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:26:51,537.537 INFO    ] No existing commands found in stream
[2026-10-28 13:26:56,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:26:56,554.554 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-28 13:27:01,013.013 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:27:01,016.016 INFO    ] Checking for system updates...
[2026-10-28 13:27:01,051.051 INFO    ] 200
[2026-10-28 13:27:01,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:27:01,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:27:01,108.108 INFO    ] No update needed
[2026-10-28 13:27:01,110.110 INFO    ] Checking for camera pi updates...
[2026-10-28 13:27:01,144.144 INFO    ] 200
[2026-10-28 13:27:01,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:27:01,193.193 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:27:01,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:27:01,257.257 INFO    ] No camera update needed
[2026-10-28 13:27:01,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:27:01,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:27:01,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:27:01,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:27:03,316.316 INFO    ] ================================================
[2026-10-28 13:27:03,335.335 INFO    ] Launching Daemon at Wed Oct 28 13:27:03 IST 2026
[2026-10-28 13:27:03,350.350 INFO    ] ================================================
[2026-10-28 13:27:03,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:27:03
[2026-10-28 13:27:04,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:27:04,898.898 INFO    ] Initializing speech engine...
[2026-10-28 13:27:04,909.909 INFO    ] 2026-10-28 13:27:04
[2026-10-28 13:27:05,164.164 INFO    ] 2026-10-28 13:27:05
[2026-10-28 13:27:05,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:27:05,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:27:05,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:27:05,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:27:05,719.719 INFO    ] time= 28/10/2026 13:27:05
[2026-10-28 13:27:05,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:27:05,756.756 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:27:05,874.874 INFO    ] No existing commands found in stream
[2026-10-28 13:27:10,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:27:10,907.907 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-28 13:27:14,565.565 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:27:14,567.567 INFO    ] Checking for system updates...
[2026-10-28 13:27:14,604.604 INFO    ] 200
[2026-10-28 13:27:14,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:27:14,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:27:14,670.670 INFO    ] No update needed
[2026-10-28 13:27:14,673.673 INFO    ] Checking for camera pi updates...
[2026-10-28 13:27:14,706.706 INFO    ] 200
[2026-10-28 13:27:14,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:27:14,752.752 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:27:14,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:27:14,835.835 INFO    ] No camera update needed
[2026-10-28 13:27:14,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:27:14,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:27:14,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:27:14,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:27:16,893.893 INFO    ] ================================================
[2026-10-28 13:27:16,909.909 INFO    ] Launching Daemon at Wed Oct 28 13:27:16 IST 2026
[2026-10-28 13:27:16,920.920 INFO    ] ================================================
[2026-10-28 13:27:17,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:27:17
[2026-10-28 13:27:18,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:27:18,329.329 INFO    ] Initializing speech engine...
[2026-10-28 13:27:18,337.337 INFO    ] 2026-10-28 13:27:18
[2026-10-28 13:27:18,635.635 INFO    ] 2026-10-28 13:27:18
[2026-10-28 13:27:18,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:27:18,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:27:18,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:27:19,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:27:19,195.195 INFO    ] time= 28/10/2026 13:27:19
[2026-10-28 13:27:19,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:27:19,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:27:19,421.421 INFO    ] No existing commands found in stream
[2026-10-28 13:27:24,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:27:24,446.446 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 13:27:25,586.586 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:27:25,589.589 INFO    ] Checking for system updates...
[2026-10-28 13:27:25,624.624 INFO    ] 200
[2026-10-28 13:27:25,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:27:25,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:27:25,685.685 INFO    ] No update needed
[2026-10-28 13:27:25,688.688 INFO    ] Checking for camera pi updates...
[2026-10-28 13:27:25,722.722 INFO    ] 200
[2026-10-28 13:27:25,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:27:25,765.765 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:27:25,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:27:25,851.851 INFO    ] No camera update needed
[2026-10-28 13:27:25,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:27:25,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:27:25,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:27:25,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:27:27,911.911 INFO    ] ================================================
[2026-10-28 13:27:27,927.927 INFO    ] Launching Daemon at Wed Oct 28 13:27:27 IST 2026
[2026-10-28 13:27:27,939.939 INFO    ] ================================================
[2026-10-28 13:27:28,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:27:28
[2026-10-28 13:27:29,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:27:29,584.584 INFO    ] Initializing speech engine...
[2026-10-28 13:27:29,598.598 INFO    ] 2026-10-28 13:27:29
[2026-10-28 13:27:29,869.869 INFO    ] 2026-10-28 13:27:29
[2026-10-28 13:27:29,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:27:30,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:27:30,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:27:30,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:27:30,469.469 INFO    ] time= 28/10/2026 13:27:30
[2026-10-28 13:27:30,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:27:30,485.485 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:27:30,642.642 INFO    ] No existing commands found in stream
[2026-10-28 13:27:35,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:27:35,675.675 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 13:27:38,382.382 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:27:38,384.384 INFO    ] Checking for system updates...
[2026-10-28 13:27:38,421.421 INFO    ] 200
[2026-10-28 13:27:38,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:27:38,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:27:38,486.486 INFO    ] No update needed
[2026-10-28 13:27:38,488.488 INFO    ] Checking for camera pi updates...
[2026-10-28 13:27:38,525.525 INFO    ] 200
[2026-10-28 13:27:38,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:27:38,568.568 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:27:38,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:27:38,647.647 INFO    ] No camera update needed
[2026-10-28 13:27:38,650.650 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:27:38,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:27:38,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:27:38,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:27:40,703.703 INFO    ] ================================================
[2026-10-28 13:27:40,718.718 INFO    ] Launching Daemon at Wed Oct 28 13:27:40 IST 2026
[2026-10-28 13:27:40,730.730 INFO    ] ================================================
[2026-10-28 13:27:41,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:27:41
[2026-10-28 13:27:41,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:27:42,150.150 INFO    ] Initializing speech engine...
[2026-10-28 13:27:42,159.159 INFO    ] 2026-10-28 13:27:42
[2026-10-28 13:27:42,408.408 INFO    ] 2026-10-28 13:27:42
[2026-10-28 13:27:42,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:27:42,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:27:42,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:27:42,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:27:42,978.978 INFO    ] time= 28/10/2026 13:27:42
[2026-10-28 13:27:42,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:27:43,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:27:43,154.154 INFO    ] No existing commands found in stream
[2026-10-28 13:27:48,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:27:48,187.187 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-28 13:27:52,252.252 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:27:52,254.254 INFO    ] Checking for system updates...
[2026-10-28 13:27:52,289.289 INFO    ] 200
[2026-10-28 13:27:52,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:27:52,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:27:52,347.347 INFO    ] No update needed
[2026-10-28 13:27:52,350.350 INFO    ] Checking for camera pi updates...
[2026-10-28 13:27:52,383.383 INFO    ] 200
[2026-10-28 13:27:52,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:27:52,427.427 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:27:52,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:27:52,630.630 INFO    ] No camera update needed
[2026-10-28 13:27:52,633.633 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:27:52,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:27:52,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:27:52,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:27:54,688.688 INFO    ] ================================================
[2026-10-28 13:27:54,703.703 INFO    ] Launching Daemon at Wed Oct 28 13:27:54 IST 2026
[2026-10-28 13:27:54,714.714 INFO    ] ================================================
[2026-10-28 13:27:55,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:27:55
[2026-10-28 13:27:55,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:27:56,186.186 INFO    ] Initializing speech engine...
[2026-10-28 13:27:56,194.194 INFO    ] 2026-10-28 13:27:56
[2026-10-28 13:27:56,488.488 INFO    ] 2026-10-28 13:27:56
[2026-10-28 13:27:56,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:27:56,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:27:56,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:27:57,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:27:57,119.119 INFO    ] time= 28/10/2026 13:27:57
[2026-10-28 13:27:57,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:27:57,145.145 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:27:57,290.290 INFO    ] No existing commands found in stream
[2026-10-28 13:28:02,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:28:02,309.309 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-28 13:28:06,049.049 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:28:06,051.051 INFO    ] Checking for system updates...
[2026-10-28 13:28:06,087.087 INFO    ] 200
[2026-10-28 13:28:06,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:28:06,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:28:06,146.146 INFO    ] No update needed
[2026-10-28 13:28:06,148.148 INFO    ] Checking for camera pi updates...
[2026-10-28 13:28:06,186.186 INFO    ] 200
[2026-10-28 13:28:06,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:28:06,234.234 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:28:06,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:28:06,318.318 INFO    ] No camera update needed
[2026-10-28 13:28:06,321.321 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:28:06,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:28:06,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:28:06,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:28:08,374.374 INFO    ] ================================================
[2026-10-28 13:28:08,389.389 INFO    ] Launching Daemon at Wed Oct 28 13:28:08 IST 2026
[2026-10-28 13:28:08,401.401 INFO    ] ================================================
[2026-10-28 13:28:08,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:28:08
[2026-10-28 13:28:09,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:28:09,829.829 INFO    ] Initializing speech engine...
[2026-10-28 13:28:09,839.839 INFO    ] 2026-10-28 13:28:09
[2026-10-28 13:28:10,085.085 INFO    ] 2026-10-28 13:28:10
[2026-10-28 13:28:10,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:28:10,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:28:10,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:28:10,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:28:10,657.657 INFO    ] time= 28/10/2026 13:28:10
[2026-10-28 13:28:10,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:28:10,692.692 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:28:10,813.813 INFO    ] No existing commands found in stream
[2026-10-28 13:28:15,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:28:15,846.846 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-28 13:28:16,975.975 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:28:16,978.978 INFO    ] Checking for system updates...
[2026-10-28 13:28:17,014.014 INFO    ] 200
[2026-10-28 13:28:17,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:28:17,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:28:17,071.071 INFO    ] No update needed
[2026-10-28 13:28:17,073.073 INFO    ] Checking for camera pi updates...
[2026-10-28 13:28:17,107.107 INFO    ] 200
[2026-10-28 13:28:17,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:28:17,150.150 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:28:17,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:28:17,236.236 INFO    ] No camera update needed
[2026-10-28 13:28:17,238.238 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:28:17,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:28:17,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:28:17,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:28:19,292.292 INFO    ] ================================================
[2026-10-28 13:28:19,307.307 INFO    ] Launching Daemon at Wed Oct 28 13:28:19 IST 2026
[2026-10-28 13:28:19,318.318 INFO    ] ================================================
[2026-10-28 13:28:19,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:28:19
[2026-10-28 13:28:20,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:28:20,823.823 INFO    ] Initializing speech engine...
[2026-10-28 13:28:20,846.846 INFO    ] 2026-10-28 13:28:20
[2026-10-28 13:28:21,101.101 INFO    ] 2026-10-28 13:28:21
[2026-10-28 13:28:21,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:28:21,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:28:21,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:28:21,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:28:21,663.663 INFO    ] time= 28/10/2026 13:28:21
[2026-10-28 13:28:21,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:28:21,710.710 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:28:21,837.837 INFO    ] No existing commands found in stream
[2026-10-28 13:28:26,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:28:26,870.870 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-28 13:28:30,334.334 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:28:30,337.337 INFO    ] Checking for system updates...
[2026-10-28 13:28:30,373.373 INFO    ] 200
[2026-10-28 13:28:30,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:28:30,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:28:30,432.432 INFO    ] No update needed
[2026-10-28 13:28:30,434.434 INFO    ] Checking for camera pi updates...
[2026-10-28 13:28:30,468.468 INFO    ] 200
[2026-10-28 13:28:30,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:28:30,511.511 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:28:30,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:28:30,604.604 INFO    ] No camera update needed
[2026-10-28 13:28:30,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:28:30,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:28:30,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:28:30,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:28:32,660.660 INFO    ] ================================================
[2026-10-28 13:28:32,676.676 INFO    ] Launching Daemon at Wed Oct 28 13:28:32 IST 2026
[2026-10-28 13:28:32,688.688 INFO    ] ================================================
[2026-10-28 13:28:33,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:28:33
[2026-10-28 13:28:33,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:28:34,150.150 INFO    ] Initializing speech engine...
[2026-10-28 13:28:34,158.158 INFO    ] 2026-10-28 13:28:34
[2026-10-28 13:28:34,407.407 INFO    ] 2026-10-28 13:28:34
[2026-10-28 13:28:34,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:28:34,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:28:34,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:28:34,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:28:34,975.975 INFO    ] time= 28/10/2026 13:28:34
[2026-10-28 13:28:34,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:28:35,024.024 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:28:35,147.147 INFO    ] No existing commands found in stream
[2026-10-28 13:28:40,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:28:40,180.180 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 13:28:43,862.862 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:28:43,864.864 INFO    ] Checking for system updates...
[2026-10-28 13:28:43,902.902 INFO    ] 200
[2026-10-28 13:28:43,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:28:43,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:28:43,961.961 INFO    ] No update needed
[2026-10-28 13:28:43,963.963 INFO    ] Checking for camera pi updates...
[2026-10-28 13:28:43,998.998 INFO    ] 200
[2026-10-28 13:28:44,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:28:44,044.044 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:28:44,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:28:44,127.127 INFO    ] No camera update needed
[2026-10-28 13:28:44,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:28:44,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:28:44,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:28:44,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:28:46,186.186 INFO    ] ================================================
[2026-10-28 13:28:46,202.202 INFO    ] Launching Daemon at Wed Oct 28 13:28:46 IST 2026
[2026-10-28 13:28:46,213.213 INFO    ] ================================================
[2026-10-28 13:28:46,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:28:46
[2026-10-28 13:28:47,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:28:47,667.667 INFO    ] Initializing speech engine...
[2026-10-28 13:28:47,676.676 INFO    ] 2026-10-28 13:28:47
[2026-10-28 13:28:47,938.938 INFO    ] 2026-10-28 13:28:47
[2026-10-28 13:28:47,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:28:48,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:28:48,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:28:48,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:28:48,722.722 INFO    ] time= 28/10/2026 13:28:48
[2026-10-28 13:28:48,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:28:48,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:28:49,021.021 INFO    ] No existing commands found in stream
[2026-10-28 13:28:54,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:28:54,054.054 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-28 13:28:57,105.105 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:28:57,108.108 INFO    ] Checking for system updates...
[2026-10-28 13:28:57,148.148 INFO    ] 200
[2026-10-28 13:28:57,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:28:57,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:28:57,206.206 INFO    ] No update needed
[2026-10-28 13:28:57,209.209 INFO    ] Checking for camera pi updates...
[2026-10-28 13:28:57,242.242 INFO    ] 200
[2026-10-28 13:28:57,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:28:57,285.285 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:28:57,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:28:57,366.366 INFO    ] No camera update needed
[2026-10-28 13:28:57,368.368 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:28:57,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:28:57,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:28:57,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:28:59,423.423 INFO    ] ================================================
[2026-10-28 13:28:59,439.439 INFO    ] Launching Daemon at Wed Oct 28 13:28:59 IST 2026
[2026-10-28 13:28:59,450.450 INFO    ] ================================================
[2026-10-28 13:29:00,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:29:00
[2026-10-28 13:29:00,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:29:00,944.944 INFO    ] Initializing speech engine...
[2026-10-28 13:29:00,953.953 INFO    ] 2026-10-28 13:29:00
[2026-10-28 13:29:01,213.213 INFO    ] 2026-10-28 13:29:01
[2026-10-28 13:29:01,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:29:01,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:29:01,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:29:01,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:29:01,773.773 INFO    ] time= 28/10/2026 13:29:01
[2026-10-28 13:29:01,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:29:01,781.781 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:29:01,880.880 INFO    ] No existing commands found in stream
[2026-10-28 13:29:06,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:29:06,932.932 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-28 13:29:09,983.983 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:29:09,986.986 INFO    ] Checking for system updates...
[2026-10-28 13:29:10,021.021 INFO    ] 200
[2026-10-28 13:29:10,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:29:10,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:29:10,078.078 INFO    ] No update needed
[2026-10-28 13:29:10,080.080 INFO    ] Checking for camera pi updates...
[2026-10-28 13:29:10,114.114 INFO    ] 200
[2026-10-28 13:29:10,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:29:10,159.159 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:29:10,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:29:10,269.269 INFO    ] No camera update needed
[2026-10-28 13:29:10,271.271 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:29:10,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:29:10,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:29:10,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:29:12,324.324 INFO    ] ================================================
[2026-10-28 13:29:12,339.339 INFO    ] Launching Daemon at Wed Oct 28 13:29:12 IST 2026
[2026-10-28 13:29:12,350.350 INFO    ] ================================================
[2026-10-28 13:29:12,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:29:12
[2026-10-28 13:29:13,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:29:13,782.782 INFO    ] Initializing speech engine...
[2026-10-28 13:29:13,802.802 INFO    ] 2026-10-28 13:29:13
[2026-10-28 13:29:14,062.062 INFO    ] 2026-10-28 13:29:14
[2026-10-28 13:29:14,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:29:14,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:29:14,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:29:14,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:29:14,674.674 INFO    ] time= 28/10/2026 13:29:14
[2026-10-28 13:29:14,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:29:14,700.700 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:29:14,836.836 INFO    ] No existing commands found in stream
[2026-10-28 13:29:19,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:29:19,855.855 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 13:29:24,530.530 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:29:24,533.533 INFO    ] Checking for system updates...
[2026-10-28 13:29:24,569.569 INFO    ] 200
[2026-10-28 13:29:24,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:29:24,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:29:24,626.626 INFO    ] No update needed
[2026-10-28 13:29:24,629.629 INFO    ] Checking for camera pi updates...
[2026-10-28 13:29:24,663.663 INFO    ] 200
[2026-10-28 13:29:24,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:29:24,709.709 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:29:24,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:29:24,800.800 INFO    ] No camera update needed
[2026-10-28 13:29:24,802.802 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:29:24,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:29:24,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:29:24,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:29:26,854.854 INFO    ] ================================================
[2026-10-28 13:29:26,870.870 INFO    ] Launching Daemon at Wed Oct 28 13:29:26 IST 2026
[2026-10-28 13:29:26,881.881 INFO    ] ================================================
[2026-10-28 13:29:27,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:29:27
[2026-10-28 13:29:28,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:29:28,295.295 INFO    ] Initializing speech engine...
[2026-10-28 13:29:28,315.315 INFO    ] 2026-10-28 13:29:28
[2026-10-28 13:29:28,576.576 INFO    ] 2026-10-28 13:29:28
[2026-10-28 13:29:28,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:29:28,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:29:28,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:29:29,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:29:29,183.183 INFO    ] time= 28/10/2026 13:29:29
[2026-10-28 13:29:29,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:29:29,208.208 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:29:29,343.343 INFO    ] No existing commands found in stream
[2026-10-28 13:29:34,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:29:34,365.365 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-28 13:29:37,094.094 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:29:37,097.097 INFO    ] Checking for system updates...
[2026-10-28 13:29:37,136.136 INFO    ] 200
[2026-10-28 13:29:37,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:29:37,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:29:37,193.193 INFO    ] No update needed
[2026-10-28 13:29:37,196.196 INFO    ] Checking for camera pi updates...
[2026-10-28 13:29:37,229.229 INFO    ] 200
[2026-10-28 13:29:37,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:29:37,271.271 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:29:37,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:29:37,359.359 INFO    ] No camera update needed
[2026-10-28 13:29:37,361.361 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:29:37,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:29:37,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:29:37,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:29:39,414.414 INFO    ] ================================================
[2026-10-28 13:29:39,430.430 INFO    ] Launching Daemon at Wed Oct 28 13:29:39 IST 2026
[2026-10-28 13:29:39,441.441 INFO    ] ================================================
[2026-10-28 13:29:40,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:29:40
[2026-10-28 13:29:40,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:29:40,900.900 INFO    ] Initializing speech engine...
[2026-10-28 13:29:40,906.906 INFO    ] 2026-10-28 13:29:40
[2026-10-28 13:29:41,154.154 INFO    ] 2026-10-28 13:29:41
[2026-10-28 13:29:41,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:29:41,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:29:41,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:29:41,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:29:41,708.708 INFO    ] time= 28/10/2026 13:29:41
[2026-10-28 13:29:41,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:29:41,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:29:41,924.924 INFO    ] No existing commands found in stream
[2026-10-28 13:29:46,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:29:46,952.952 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-28 13:29:50,809.809 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:29:50,812.812 INFO    ] Checking for system updates...
[2026-10-28 13:29:50,848.848 INFO    ] 200
[2026-10-28 13:29:50,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:29:50,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:29:50,905.905 INFO    ] No update needed
[2026-10-28 13:29:50,907.907 INFO    ] Checking for camera pi updates...
[2026-10-28 13:29:50,941.941 INFO    ] 200
[2026-10-28 13:29:50,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:29:50,984.984 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:29:51,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:29:51,063.063 INFO    ] No camera update needed
[2026-10-28 13:29:51,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:29:51,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:29:51,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:29:51,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:29:53,119.119 INFO    ] ================================================
[2026-10-28 13:29:53,135.135 INFO    ] Launching Daemon at Wed Oct 28 13:29:53 IST 2026
[2026-10-28 13:29:53,146.146 INFO    ] ================================================
[2026-10-28 13:29:53,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:29:53
[2026-10-28 13:29:54,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:29:54,606.606 INFO    ] Initializing speech engine...
[2026-10-28 13:29:54,617.617 INFO    ] 2026-10-28 13:29:54
[2026-10-28 13:29:54,865.865 INFO    ] 2026-10-28 13:29:54
[2026-10-28 13:29:54,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:29:55,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:29:55,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:29:55,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:29:55,442.442 INFO    ] time= 28/10/2026 13:29:55
[2026-10-28 13:29:55,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:29:55,477.477 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:29:55,618.618 INFO    ] No existing commands found in stream
[2026-10-28 13:30:00,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:30:00,657.657 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-28 13:30:08,022.022 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:30:08,025.025 INFO    ] Checking for system updates...
[2026-10-28 13:30:08,067.067 INFO    ] 200
[2026-10-28 13:30:08,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:30:08,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:30:08,133.133 INFO    ] No update needed
[2026-10-28 13:30:08,136.136 INFO    ] Checking for camera pi updates...
[2026-10-28 13:30:08,169.169 INFO    ] 200
[2026-10-28 13:30:08,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:30:08,216.216 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:30:08,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:30:08,273.273 INFO    ] No camera update needed
[2026-10-28 13:30:08,276.276 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:30:08,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:30:08,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:30:08,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:30:10,328.328 INFO    ] ================================================
[2026-10-28 13:30:10,343.343 INFO    ] Launching Daemon at Wed Oct 28 13:30:10 IST 2026
[2026-10-28 13:30:10,354.354 INFO    ] ================================================
[2026-10-28 13:30:11,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:30:11
[2026-10-28 13:30:11,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:30:11,994.994 INFO    ] Initializing speech engine...
[2026-10-28 13:30:12,005.005 INFO    ] 2026-10-28 13:30:11
[2026-10-28 13:30:12,297.297 INFO    ] 2026-10-28 13:30:12
[2026-10-28 13:30:12,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:30:12,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:30:12,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:30:12,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:30:12,896.896 INFO    ] time= 28/10/2026 13:30:12
[2026-10-28 13:30:12,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:30:12,949.949 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:30:13,111.111 INFO    ] No existing commands found in stream
[2026-10-28 13:30:18,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:30:18,130.130 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-28 13:30:20,350.350 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:30:20,353.353 INFO    ] Checking for system updates...
[2026-10-28 13:30:20,391.391 INFO    ] 200
[2026-10-28 13:30:20,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:30:20,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:30:20,464.464 INFO    ] No update needed
[2026-10-28 13:30:20,467.467 INFO    ] Checking for camera pi updates...
[2026-10-28 13:30:20,500.500 INFO    ] 200
[2026-10-28 13:30:20,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:30:20,545.545 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:30:20,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:30:20,628.628 INFO    ] No camera update needed
[2026-10-28 13:30:20,631.631 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:30:20,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:30:20,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:30:20,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:30:22,683.683 INFO    ] ================================================
[2026-10-28 13:30:22,699.699 INFO    ] Launching Daemon at Wed Oct 28 13:30:22 IST 2026
[2026-10-28 13:30:22,711.711 INFO    ] ================================================
[2026-10-28 13:30:23,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:30:23
[2026-10-28 13:30:23,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:30:24,143.143 INFO    ] Initializing speech engine...
[2026-10-28 13:30:24,166.166 INFO    ] 2026-10-28 13:30:24
[2026-10-28 13:30:24,426.426 INFO    ] 2026-10-28 13:30:24
[2026-10-28 13:30:24,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:30:24,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:30:24,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:30:25,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:30:25,059.059 INFO    ] time= 28/10/2026 13:30:25
[2026-10-28 13:30:25,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:30:25,086.086 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:30:25,234.234 INFO    ] No existing commands found in stream
[2026-10-28 13:30:30,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:30:30,252.252 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 13:30:30,907.907 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:30:30,909.909 INFO    ] Checking for system updates...
[2026-10-28 13:30:30,949.949 INFO    ] 200
[2026-10-28 13:30:30,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:30:31,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:30:31,015.015 INFO    ] No update needed
[2026-10-28 13:30:31,017.017 INFO    ] Checking for camera pi updates...
[2026-10-28 13:30:31,055.055 INFO    ] 200
[2026-10-28 13:30:31,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:30:31,103.103 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:30:31,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:30:31,203.203 INFO    ] No camera update needed
[2026-10-28 13:30:31,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:30:31,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:30:31,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:30:31,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:30:33,272.272 INFO    ] ================================================
[2026-10-28 13:30:33,290.290 INFO    ] Launching Daemon at Wed Oct 28 13:30:33 IST 2026
[2026-10-28 13:30:33,303.303 INFO    ] ================================================
[2026-10-28 13:30:33,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:30:33
[2026-10-28 13:30:34,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:30:34,978.978 INFO    ] Initializing speech engine...
[2026-10-28 13:30:34,990.990 INFO    ] 2026-10-28 13:30:34
[2026-10-28 13:30:35,281.281 INFO    ] 2026-10-28 13:30:35
[2026-10-28 13:30:35,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:30:35,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:30:35,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:30:35,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:30:35,977.977 INFO    ] time= 28/10/2026 13:30:35
[2026-10-28 13:30:36,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:30:36,082.082 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:30:36,233.233 INFO    ] No existing commands found in stream
[2026-10-28 13:30:41,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:30:41,252.252 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-28 13:30:45,648.648 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:30:45,651.651 INFO    ] Checking for system updates...
[2026-10-28 13:30:45,696.696 INFO    ] 200
[2026-10-28 13:30:45,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:30:45,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:30:45,754.754 INFO    ] No update needed
[2026-10-28 13:30:45,757.757 INFO    ] Checking for camera pi updates...
[2026-10-28 13:30:45,795.795 INFO    ] 200
[2026-10-28 13:30:45,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:30:45,838.838 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:30:45,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:30:45,940.940 INFO    ] No camera update needed
[2026-10-28 13:30:45,943.943 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:30:45,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:30:45,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:30:45,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:30:48,997.997 INFO    ] ================================================
[2026-10-28 13:30:48,012.012 INFO    ] Launching Daemon at Wed Oct 28 13:30:48 IST 2026
[2026-10-28 13:30:48,023.023 INFO    ] ================================================
[2026-10-28 13:30:48,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:30:48
[2026-10-28 13:30:49,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:30:49,680.680 INFO    ] Initializing speech engine...
[2026-10-28 13:30:49,692.692 INFO    ] 2026-10-28 13:30:49
[2026-10-28 13:30:49,982.982 INFO    ] 2026-10-28 13:30:49
[2026-10-28 13:30:50,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:30:50,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:30:50,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:30:50,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:30:50,751.751 INFO    ] time= 28/10/2026 13:30:50
[2026-10-28 13:30:50,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:30:50,848.848 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:30:50,983.983 INFO    ] No existing commands found in stream
[2026-10-28 13:30:55,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:30:55,995.995 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-28 13:30:58,082.082 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:30:58,085.085 INFO    ] Checking for system updates...
[2026-10-28 13:30:58,126.126 INFO    ] 200
[2026-10-28 13:30:58,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:30:58,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:30:58,183.183 INFO    ] No update needed
[2026-10-28 13:30:58,185.185 INFO    ] Checking for camera pi updates...
[2026-10-28 13:30:58,220.220 INFO    ] 200
[2026-10-28 13:30:58,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:30:58,264.264 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:30:58,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:30:58,353.353 INFO    ] No camera update needed
[2026-10-28 13:30:58,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:30:58,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:30:58,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:30:58,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:31:00,410.410 INFO    ] ================================================
[2026-10-28 13:31:00,426.426 INFO    ] Launching Daemon at Wed Oct 28 13:31:00 IST 2026
[2026-10-28 13:31:00,437.437 INFO    ] ================================================
[2026-10-28 13:31:01,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:31:01
[2026-10-28 13:31:01,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:31:02,132.132 INFO    ] Initializing speech engine...
[2026-10-28 13:31:02,136.136 INFO    ] 2026-10-28 13:31:02
[2026-10-28 13:31:02,521.521 INFO    ] 2026-10-28 13:31:02
[2026-10-28 13:31:02,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:31:02,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:31:02,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:31:03,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:31:03,196.196 INFO    ] time= 28/10/2026 13:31:03
[2026-10-28 13:31:03,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:31:03,318.318 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:31:03,493.493 INFO    ] No existing commands found in stream
[2026-10-28 13:31:08,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:31:08,508.508 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 13:31:11,644.644 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:31:11,647.647 INFO    ] Checking for system updates...
[2026-10-28 13:31:11,690.690 INFO    ] 200
[2026-10-28 13:31:11,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:31:11,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:31:11,758.758 INFO    ] No update needed
[2026-10-28 13:31:11,761.761 INFO    ] Checking for camera pi updates...
[2026-10-28 13:31:11,800.800 INFO    ] 200
[2026-10-28 13:31:11,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:31:11,851.851 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:31:11,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:31:11,940.940 INFO    ] No camera update needed
[2026-10-28 13:31:11,943.943 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:31:11,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:31:11,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:31:11,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:31:14,999.999 INFO    ] ================================================
[2026-10-28 13:31:14,014.014 INFO    ] Launching Daemon at Wed Oct 28 13:31:14 IST 2026
[2026-10-28 13:31:14,025.025 INFO    ] ================================================
[2026-10-28 13:31:14,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:31:14
[2026-10-28 13:31:15,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:31:15,576.576 INFO    ] Initializing speech engine...
[2026-10-28 13:31:15,584.584 INFO    ] 2026-10-28 13:31:15
[2026-10-28 13:31:15,878.878 INFO    ] 2026-10-28 13:31:15
[2026-10-28 13:31:15,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:31:16,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:31:16,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:31:16,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:31:16,411.411 INFO    ] time= 28/10/2026 13:31:16
[2026-10-28 13:31:16,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:31:16,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:31:16,604.604 INFO    ] No existing commands found in stream
[2026-10-28 13:31:21,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:31:21,619.619 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-28 13:31:24,604.604 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:31:24,607.607 INFO    ] Checking for system updates...
[2026-10-28 13:31:24,642.642 INFO    ] 200
[2026-10-28 13:31:24,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:31:24,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:31:24,707.707 INFO    ] No update needed
[2026-10-28 13:31:24,710.710 INFO    ] Checking for camera pi updates...
[2026-10-28 13:31:24,747.747 INFO    ] 200
[2026-10-28 13:31:24,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:31:24,795.795 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:31:24,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:31:24,890.890 INFO    ] No camera update needed
[2026-10-28 13:31:24,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:31:24,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:31:24,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:31:24,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:31:26,944.944 INFO    ] ================================================
[2026-10-28 13:31:26,960.960 INFO    ] Launching Daemon at Wed Oct 28 13:31:26 IST 2026
[2026-10-28 13:31:26,971.971 INFO    ] ================================================
[2026-10-28 13:31:27,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:31:27
[2026-10-28 13:31:28,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:31:28,441.441 INFO    ] Initializing speech engine...
[2026-10-28 13:31:28,447.447 INFO    ] 2026-10-28 13:31:28
[2026-10-28 13:31:28,707.707 INFO    ] 2026-10-28 13:31:28
[2026-10-28 13:31:28,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:31:29,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:31:29,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:31:29,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:31:29,452.452 INFO    ] time= 28/10/2026 13:31:29
[2026-10-28 13:31:29,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:31:29,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:31:29,718.718 INFO    ] No existing commands found in stream
[2026-10-28 13:31:34,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:31:34,746.746 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 13:31:38,362.362 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:31:38,364.364 INFO    ] Checking for system updates...
[2026-10-28 13:31:38,399.399 INFO    ] 200
[2026-10-28 13:31:38,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:31:38,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:31:38,459.459 INFO    ] No update needed
[2026-10-28 13:31:38,462.462 INFO    ] Checking for camera pi updates...
[2026-10-28 13:31:38,495.495 INFO    ] 200
[2026-10-28 13:31:38,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:31:38,538.538 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:31:38,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:31:38,633.633 INFO    ] No camera update needed
[2026-10-28 13:31:38,635.635 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:31:38,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:31:38,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:31:38,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:31:40,687.687 INFO    ] ================================================
[2026-10-28 13:31:40,703.703 INFO    ] Launching Daemon at Wed Oct 28 13:31:40 IST 2026
[2026-10-28 13:31:40,714.714 INFO    ] ================================================
[2026-10-28 13:31:41,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:31:41
[2026-10-28 13:31:42,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:31:42,313.313 INFO    ] Initializing speech engine...
[2026-10-28 13:31:42,318.318 INFO    ] 2026-10-28 13:31:42
[2026-10-28 13:31:42,567.567 INFO    ] 2026-10-28 13:31:42
[2026-10-28 13:31:42,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:31:42,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:31:42,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:31:43,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:31:43,140.140 INFO    ] time= 28/10/2026 13:31:43
[2026-10-28 13:31:43,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:31:43,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:31:43,296.296 INFO    ] No existing commands found in stream
[2026-10-28 13:31:48,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:31:48,312.312 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-28 13:31:51,363.363 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:31:51,366.366 INFO    ] Checking for system updates...
[2026-10-28 13:31:51,405.405 INFO    ] 200
[2026-10-28 13:31:51,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:31:51,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:31:51,468.468 INFO    ] No update needed
[2026-10-28 13:31:51,470.470 INFO    ] Checking for camera pi updates...
[2026-10-28 13:31:51,507.507 INFO    ] 200
[2026-10-28 13:31:51,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:31:51,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:31:51,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:31:51,648.648 INFO    ] No camera update needed
[2026-10-28 13:31:51,650.650 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:31:51,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:31:51,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:31:51,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:31:53,706.706 INFO    ] ================================================
[2026-10-28 13:31:53,721.721 INFO    ] Launching Daemon at Wed Oct 28 13:31:53 IST 2026
[2026-10-28 13:31:53,732.732 INFO    ] ================================================
[2026-10-28 13:31:54,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:31:54
[2026-10-28 13:31:54,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:31:55,185.185 INFO    ] Initializing speech engine...
[2026-10-28 13:31:55,194.194 INFO    ] 2026-10-28 13:31:55
[2026-10-28 13:31:55,442.442 INFO    ] 2026-10-28 13:31:55
[2026-10-28 13:31:55,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:31:55,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:31:55,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:31:55,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:31:56,003.003 INFO    ] time= 28/10/2026 13:31:55
[2026-10-28 13:31:56,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:31:56,049.049 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:31:56,161.161 INFO    ] No existing commands found in stream
[2026-10-28 13:32:01,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:32:01,188.188 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-28 13:32:03,045.045 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:32:03,049.049 INFO    ] Checking for system updates...
[2026-10-28 13:32:03,101.101 INFO    ] 200
[2026-10-28 13:32:03,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:32:03,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:32:03,175.175 INFO    ] No update needed
[2026-10-28 13:32:03,178.178 INFO    ] Checking for camera pi updates...
[2026-10-28 13:32:03,225.225 INFO    ] 200
[2026-10-28 13:32:03,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:32:03,297.297 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:32:03,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:32:03,400.400 INFO    ] No camera update needed
[2026-10-28 13:32:03,402.402 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:32:03,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:32:03,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:32:03,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:32:05,457.457 INFO    ] ================================================
[2026-10-28 13:32:05,477.477 INFO    ] Launching Daemon at Wed Oct 28 13:32:05 IST 2026
[2026-10-28 13:32:05,489.489 INFO    ] ================================================
[2026-10-28 13:32:06,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:32:06
[2026-10-28 13:32:06,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:32:06,943.943 INFO    ] Initializing speech engine...
[2026-10-28 13:32:06,950.950 INFO    ] 2026-10-28 13:32:06
[2026-10-28 13:32:07,210.210 INFO    ] 2026-10-28 13:32:07
[2026-10-28 13:32:07,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:32:07,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:32:07,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:32:07,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:32:07,795.795 INFO    ] time= 28/10/2026 13:32:07
[2026-10-28 13:32:07,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:32:07,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:32:07,973.973 INFO    ] No existing commands found in stream
[2026-10-28 13:32:13,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:32:13,007.007 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-28 13:32:15,465.465 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:32:15,467.467 INFO    ] Checking for system updates...
[2026-10-28 13:32:15,508.508 INFO    ] 200
[2026-10-28 13:32:15,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:32:15,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:32:15,570.570 INFO    ] No update needed
[2026-10-28 13:32:15,573.573 INFO    ] Checking for camera pi updates...
[2026-10-28 13:32:15,611.611 INFO    ] 200
[2026-10-28 13:32:15,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:32:15,664.664 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:32:15,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:32:15,850.850 INFO    ] No camera update needed
[2026-10-28 13:32:15,852.852 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:32:15,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:32:15,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:32:15,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:32:17,908.908 INFO    ] ================================================
[2026-10-28 13:32:17,924.924 INFO    ] Launching Daemon at Wed Oct 28 13:32:17 IST 2026
[2026-10-28 13:32:17,936.936 INFO    ] ================================================
[2026-10-28 13:32:18,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:32:18
[2026-10-28 13:32:19,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:32:19,411.411 INFO    ] Initializing speech engine...
[2026-10-28 13:32:19,416.416 INFO    ] 2026-10-28 13:32:19
[2026-10-28 13:32:19,668.668 INFO    ] 2026-10-28 13:32:19
[2026-10-28 13:32:19,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:32:19,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:32:19,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:32:20,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:32:20,230.230 INFO    ] time= 28/10/2026 13:32:20
[2026-10-28 13:32:20,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:32:20,265.265 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:32:20,390.390 INFO    ] No existing commands found in stream
[2026-10-28 13:32:25,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:32:25,423.423 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-28 13:32:27,283.283 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:32:27,285.285 INFO    ] Checking for system updates...
[2026-10-28 13:32:27,324.324 INFO    ] 200
[2026-10-28 13:32:27,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:32:27,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:32:27,388.388 INFO    ] No update needed
[2026-10-28 13:32:27,390.390 INFO    ] Checking for camera pi updates...
[2026-10-28 13:32:27,423.423 INFO    ] 200
[2026-10-28 13:32:27,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:32:27,466.466 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:32:27,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:32:27,549.549 INFO    ] No camera update needed
[2026-10-28 13:32:27,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:32:27,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:32:27,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:32:27,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:32:29,604.604 INFO    ] ================================================
[2026-10-28 13:32:29,619.619 INFO    ] Launching Daemon at Wed Oct 28 13:32:29 IST 2026
[2026-10-28 13:32:29,630.630 INFO    ] ================================================
[2026-10-28 13:32:30,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:32:30
[2026-10-28 13:32:30,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:32:31,036.036 INFO    ] Initializing speech engine...
[2026-10-28 13:32:31,051.051 INFO    ] 2026-10-28 13:32:31
[2026-10-28 13:32:31,313.313 INFO    ] 2026-10-28 13:32:31
[2026-10-28 13:32:31,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:32:31,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:32:31,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:32:31,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:32:31,884.884 INFO    ] time= 28/10/2026 13:32:31
[2026-10-28 13:32:31,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:32:31,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:32:32,064.064 INFO    ] No existing commands found in stream
[2026-10-28 13:32:37,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:32:37,094.094 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-28 13:32:41,642.642 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:32:41,645.645 INFO    ] Checking for system updates...
[2026-10-28 13:32:41,698.698 INFO    ] 200
[2026-10-28 13:32:41,701.701 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 13:32:41,703.703 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-28 13:32:41,706.706 INFO    ] Checking for camera pi updates...
[2026-10-28 13:32:41,748.748 INFO    ] 200
[2026-10-28 13:32:41,751.751 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 13:32:41,754.754 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-28 13:32:41,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:32:41,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:32:41,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:32:41,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:32:43,820.820 INFO    ] ================================================
[2026-10-28 13:32:43,836.836 INFO    ] Launching Daemon at Wed Oct 28 13:32:43 IST 2026
[2026-10-28 13:32:43,848.848 INFO    ] ================================================
[2026-10-28 13:32:44,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:32:44
[2026-10-28 13:32:45,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:32:45,400.400 INFO    ] Initializing speech engine...
[2026-10-28 13:32:45,419.419 INFO    ] 2026-10-28 13:32:45
[2026-10-28 13:32:45,673.673 INFO    ] 2026-10-28 13:32:45
[2026-10-28 13:32:45,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:32:45,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:32:45,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:32:46,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:32:46,265.265 INFO    ] time= 28/10/2026 13:32:46
[2026-10-28 13:32:46,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:32:46,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:32:46,447.447 INFO    ] No existing commands found in stream
[2026-10-28 13:32:51,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:32:51,480.480 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-28 13:32:54,427.427 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:32:54,430.430 INFO    ] Checking for system updates...
[2026-10-28 13:32:54,465.465 INFO    ] 200
[2026-10-28 13:32:54,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:32:54,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:32:54,528.528 INFO    ] No update needed
[2026-10-28 13:32:54,530.530 INFO    ] Checking for camera pi updates...
[2026-10-28 13:32:54,564.564 INFO    ] 200
[2026-10-28 13:32:54,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:32:54,611.611 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:32:54,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:32:54,698.698 INFO    ] No camera update needed
[2026-10-28 13:32:54,700.700 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:32:54,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:32:54,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:32:54,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:32:56,753.753 INFO    ] ================================================
[2026-10-28 13:32:56,768.768 INFO    ] Launching Daemon at Wed Oct 28 13:32:56 IST 2026
[2026-10-28 13:32:56,779.779 INFO    ] ================================================
[2026-10-28 13:32:57,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:32:57
[2026-10-28 13:32:58,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:32:58,370.370 INFO    ] Initializing speech engine...
[2026-10-28 13:32:58,383.383 INFO    ] 2026-10-28 13:32:58
[2026-10-28 13:32:58,660.660 INFO    ] 2026-10-28 13:32:58
[2026-10-28 13:32:58,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:32:59,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:32:59,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:32:59,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:32:59,413.413 INFO    ] time= 28/10/2026 13:32:59
[2026-10-28 13:32:59,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:32:59,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:32:59,636.636 INFO    ] No existing commands found in stream
[2026-10-28 13:33:04,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:33:04,649.649 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 13:33:08,247.247 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:33:08,250.250 INFO    ] Checking for system updates...
[2026-10-28 13:33:08,286.286 INFO    ] 200
[2026-10-28 13:33:08,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:33:08,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:33:08,350.350 INFO    ] No update needed
[2026-10-28 13:33:08,352.352 INFO    ] Checking for camera pi updates...
[2026-10-28 13:33:08,391.391 INFO    ] 200
[2026-10-28 13:33:08,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:33:08,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:33:08,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:33:08,532.532 INFO    ] No camera update needed
[2026-10-28 13:33:08,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:33:08,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:33:08,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:33:08,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:33:10,590.590 INFO    ] ================================================
[2026-10-28 13:33:10,605.605 INFO    ] Launching Daemon at Wed Oct 28 13:33:10 IST 2026
[2026-10-28 13:33:10,616.616 INFO    ] ================================================
[2026-10-28 13:33:11,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:33:11
[2026-10-28 13:33:11,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:33:12,106.106 INFO    ] Initializing speech engine...
[2026-10-28 13:33:12,113.113 INFO    ] 2026-10-28 13:33:12
[2026-10-28 13:33:12,375.375 INFO    ] 2026-10-28 13:33:12
[2026-10-28 13:33:12,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:33:12,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:33:12,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:33:12,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:33:12,918.918 INFO    ] time= 28/10/2026 13:33:12
[2026-10-28 13:33:12,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:33:12,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:33:13,124.124 INFO    ] No existing commands found in stream
[2026-10-28 13:33:18,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:33:18,152.152 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-28 13:33:20,983.983 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:33:20,986.986 INFO    ] Checking for system updates...
[2026-10-28 13:33:21,022.022 INFO    ] 200
[2026-10-28 13:33:21,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:33:21,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:33:21,083.083 INFO    ] No update needed
[2026-10-28 13:33:21,085.085 INFO    ] Checking for camera pi updates...
[2026-10-28 13:33:21,119.119 INFO    ] 200
[2026-10-28 13:33:21,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:33:21,166.166 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:33:21,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:33:21,267.267 INFO    ] No camera update needed
[2026-10-28 13:33:21,272.272 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:33:21,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:33:21,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:33:21,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:33:23,327.327 INFO    ] ================================================
[2026-10-28 13:33:23,342.342 INFO    ] Launching Daemon at Wed Oct 28 13:33:23 IST 2026
[2026-10-28 13:33:23,352.352 INFO    ] ================================================
[2026-10-28 13:33:23,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:33:23
[2026-10-28 13:33:24,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:33:24,811.811 INFO    ] Initializing speech engine...
[2026-10-28 13:33:24,818.818 INFO    ] 2026-10-28 13:33:24
[2026-10-28 13:33:25,080.080 INFO    ] 2026-10-28 13:33:25
[2026-10-28 13:33:25,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:33:25,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:33:25,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:33:25,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:33:25,627.627 INFO    ] time= 28/10/2026 13:33:25
[2026-10-28 13:33:25,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:33:25,673.673 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:33:25,826.826 INFO    ] No existing commands found in stream
[2026-10-28 13:33:30,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:33:30,858.858 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-28 13:33:34,040.040 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:33:34,043.043 INFO    ] Checking for system updates...
[2026-10-28 13:33:34,083.083 INFO    ] 200
[2026-10-28 13:33:34,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:33:34,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:33:34,143.143 INFO    ] No update needed
[2026-10-28 13:33:34,145.145 INFO    ] Checking for camera pi updates...
[2026-10-28 13:33:34,183.183 INFO    ] 200
[2026-10-28 13:33:34,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:33:34,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:33:34,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:33:34,331.331 INFO    ] No camera update needed
[2026-10-28 13:33:34,334.334 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:33:34,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:33:34,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:33:34,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:33:36,392.392 INFO    ] ================================================
[2026-10-28 13:33:36,407.407 INFO    ] Launching Daemon at Wed Oct 28 13:33:36 IST 2026
[2026-10-28 13:33:36,417.417 INFO    ] ================================================
[2026-10-28 13:33:36,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:33:36
[2026-10-28 13:33:37,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:33:37,830.830 INFO    ] Initializing speech engine...
[2026-10-28 13:33:37,852.852 INFO    ] 2026-10-28 13:33:37
[2026-10-28 13:33:38,107.107 INFO    ] 2026-10-28 13:33:38
[2026-10-28 13:33:38,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:33:38,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:33:38,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:33:38,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:33:38,678.678 INFO    ] time= 28/10/2026 13:33:38
[2026-10-28 13:33:38,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:33:38,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:33:38,836.836 INFO    ] No existing commands found in stream
[2026-10-28 13:33:43,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:33:43,857.857 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-28 13:33:44,824.824 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:33:44,827.827 INFO    ] Checking for system updates...
[2026-10-28 13:33:44,866.866 INFO    ] 200
[2026-10-28 13:33:44,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:33:44,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:33:44,927.927 INFO    ] No update needed
[2026-10-28 13:33:44,929.929 INFO    ] Checking for camera pi updates...
[2026-10-28 13:33:44,966.966 INFO    ] 200
[2026-10-28 13:33:44,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:33:45,014.014 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:33:45,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:33:45,120.120 INFO    ] No camera update needed
[2026-10-28 13:33:45,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:33:45,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:33:45,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:33:45,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:33:47,175.175 INFO    ] ================================================
[2026-10-28 13:33:47,190.190 INFO    ] Launching Daemon at Wed Oct 28 13:33:47 IST 2026
[2026-10-28 13:33:47,200.200 INFO    ] ================================================
[2026-10-28 13:33:47,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:33:47
[2026-10-28 13:33:48,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:33:48,827.827 INFO    ] Initializing speech engine...
[2026-10-28 13:33:48,835.835 INFO    ] 2026-10-28 13:33:48
[2026-10-28 13:33:49,100.100 INFO    ] 2026-10-28 13:33:49
[2026-10-28 13:33:49,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:33:49,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:33:49,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:33:49,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:33:49,876.876 INFO    ] time= 28/10/2026 13:33:49
[2026-10-28 13:33:49,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:33:49,948.948 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:33:50,116.116 INFO    ] No existing commands found in stream
[2026-10-28 13:33:55,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:33:55,139.139 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 13:33:55,809.809 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:33:55,812.812 INFO    ] Checking for system updates...
[2026-10-28 13:33:55,855.855 INFO    ] 200
[2026-10-28 13:33:55,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:33:55,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:33:55,914.914 INFO    ] No update needed
[2026-10-28 13:33:55,917.917 INFO    ] Checking for camera pi updates...
[2026-10-28 13:33:55,956.956 INFO    ] 200
[2026-10-28 13:33:55,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:33:56,005.005 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:33:56,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:33:56,093.093 INFO    ] No camera update needed
[2026-10-28 13:33:56,096.096 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:33:56,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:33:56,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:33:56,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:33:58,156.156 INFO    ] ================================================
[2026-10-28 13:33:58,171.171 INFO    ] Launching Daemon at Wed Oct 28 13:33:58 IST 2026
[2026-10-28 13:33:58,182.182 INFO    ] ================================================
[2026-10-28 13:33:58,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:33:58
[2026-10-28 13:33:59,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:33:59,578.578 INFO    ] Initializing speech engine...
[2026-10-28 13:33:59,593.593 INFO    ] 2026-10-28 13:33:59
[2026-10-28 13:33:59,860.860 INFO    ] 2026-10-28 13:33:59
[2026-10-28 13:33:59,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:34:00,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:34:00,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:34:00,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:34:00,439.439 INFO    ] time= 28/10/2026 13:34:00
[2026-10-28 13:34:00,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:34:00,475.475 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:34:00,646.646 INFO    ] No existing commands found in stream
[2026-10-28 13:34:05,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:34:05,669.669 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-28 13:34:08,131.131 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:34:08,134.134 INFO    ] Checking for system updates...
[2026-10-28 13:34:08,173.173 INFO    ] 200
[2026-10-28 13:34:08,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:34:08,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:34:08,230.230 INFO    ] No update needed
[2026-10-28 13:34:08,232.232 INFO    ] Checking for camera pi updates...
[2026-10-28 13:34:08,267.267 INFO    ] 200
[2026-10-28 13:34:08,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:34:08,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:34:08,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:34:08,385.385 INFO    ] No camera update needed
[2026-10-28 13:34:08,388.388 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:34:08,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:34:08,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:34:08,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:34:10,443.443 INFO    ] ================================================
[2026-10-28 13:34:10,458.458 INFO    ] Launching Daemon at Wed Oct 28 13:34:10 IST 2026
[2026-10-28 13:34:10,468.468 INFO    ] ================================================
[2026-10-28 13:34:11,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:34:11
[2026-10-28 13:34:11,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:34:11,884.884 INFO    ] Initializing speech engine...
[2026-10-28 13:34:11,902.902 INFO    ] 2026-10-28 13:34:11
[2026-10-28 13:34:12,153.153 INFO    ] 2026-10-28 13:34:12
[2026-10-28 13:34:12,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:34:12,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:34:12,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:34:12,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:34:12,738.738 INFO    ] time= 28/10/2026 13:34:12
[2026-10-28 13:34:12,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:34:12,773.773 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:34:12,910.910 INFO    ] No existing commands found in stream
[2026-10-28 13:34:17,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:34:17,933.933 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 13:34:21,603.603 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:34:21,605.605 INFO    ] Checking for system updates...
[2026-10-28 13:34:21,640.640 INFO    ] 200
[2026-10-28 13:34:21,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:34:21,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:34:21,701.701 INFO    ] No update needed
[2026-10-28 13:34:21,704.704 INFO    ] Checking for camera pi updates...
[2026-10-28 13:34:21,738.738 INFO    ] 200
[2026-10-28 13:34:21,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:34:21,780.780 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:34:21,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:34:21,961.961 INFO    ] No camera update needed
[2026-10-28 13:34:21,964.964 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:34:21,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:34:21,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:34:21,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:34:24,017.017 INFO    ] ================================================
[2026-10-28 13:34:24,032.032 INFO    ] Launching Daemon at Wed Oct 28 13:34:24 IST 2026
[2026-10-28 13:34:24,042.042 INFO    ] ================================================
[2026-10-28 13:34:24,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:34:24
[2026-10-28 13:34:25,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:34:25,567.567 INFO    ] Initializing speech engine...
[2026-10-28 13:34:25,575.575 INFO    ] 2026-10-28 13:34:25
[2026-10-28 13:34:25,847.847 INFO    ] 2026-10-28 13:34:25
[2026-10-28 13:34:25,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:34:26,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:34:26,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:34:26,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:34:26,609.609 INFO    ] time= 28/10/2026 13:34:26
[2026-10-28 13:34:26,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:34:26,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:34:26,854.854 INFO    ] No existing commands found in stream
[2026-10-28 13:34:31,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:34:31,868.868 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-28 13:34:34,809.809 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:34:34,812.812 INFO    ] Checking for system updates...
[2026-10-28 13:34:34,849.849 INFO    ] 200
[2026-10-28 13:34:34,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:34:34,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:34:34,913.913 INFO    ] No update needed
[2026-10-28 13:34:34,916.916 INFO    ] Checking for camera pi updates...
[2026-10-28 13:34:34,951.951 INFO    ] 200
[2026-10-28 13:34:34,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:34:34,996.996 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:34:35,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:34:35,081.081 INFO    ] No camera update needed
[2026-10-28 13:34:35,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:34:35,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:34:35,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:34:35,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:34:37,139.139 INFO    ] ================================================
[2026-10-28 13:34:37,154.154 INFO    ] Launching Daemon at Wed Oct 28 13:34:37 IST 2026
[2026-10-28 13:34:37,165.165 INFO    ] ================================================
[2026-10-28 13:34:37,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:34:37
[2026-10-28 13:34:38,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:34:38,580.580 INFO    ] Initializing speech engine...
[2026-10-28 13:34:38,601.601 INFO    ] 2026-10-28 13:34:38
[2026-10-28 13:34:38,856.856 INFO    ] 2026-10-28 13:34:38
[2026-10-28 13:34:38,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:34:39,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:34:39,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:34:39,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:34:39,423.423 INFO    ] time= 28/10/2026 13:34:39
[2026-10-28 13:34:39,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:34:39,474.474 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:34:39,604.604 INFO    ] No existing commands found in stream
[2026-10-28 13:34:44,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:34:44,632.632 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-28 13:34:46,042.042 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:34:46,045.045 INFO    ] Checking for system updates...
[2026-10-28 13:34:46,082.082 INFO    ] 200
[2026-10-28 13:34:46,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:34:46,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:34:46,141.141 INFO    ] No update needed
[2026-10-28 13:34:46,144.144 INFO    ] Checking for camera pi updates...
[2026-10-28 13:34:46,178.178 INFO    ] 200
[2026-10-28 13:34:46,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:34:46,225.225 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:34:46,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:34:46,309.309 INFO    ] No camera update needed
[2026-10-28 13:34:46,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:34:46,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:34:46,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:34:46,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:34:48,366.366 INFO    ] ================================================
[2026-10-28 13:34:48,381.381 INFO    ] Launching Daemon at Wed Oct 28 13:34:48 IST 2026
[2026-10-28 13:34:48,391.391 INFO    ] ================================================
[2026-10-28 13:34:48,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:34:48
[2026-10-28 13:34:49,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:34:49,839.839 INFO    ] Initializing speech engine...
[2026-10-28 13:34:49,849.849 INFO    ] 2026-10-28 13:34:49
[2026-10-28 13:34:50,104.104 INFO    ] 2026-10-28 13:34:50
[2026-10-28 13:34:50,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:34:50,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:34:50,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:34:50,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:34:50,897.897 INFO    ] time= 28/10/2026 13:34:50
[2026-10-28 13:34:50,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:34:51,005.005 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:34:51,212.212 INFO    ] No existing commands found in stream
[2026-10-28 13:34:56,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:34:56,229.229 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-28 13:34:58,826.826 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:34:58,828.828 INFO    ] Checking for system updates...
[2026-10-28 13:34:58,865.865 INFO    ] 200
[2026-10-28 13:34:58,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:34:58,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:34:58,926.926 INFO    ] No update needed
[2026-10-28 13:34:58,928.928 INFO    ] Checking for camera pi updates...
[2026-10-28 13:34:58,961.961 INFO    ] 200
[2026-10-28 13:34:58,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:34:59,006.006 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:34:59,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:34:59,097.097 INFO    ] No camera update needed
[2026-10-28 13:34:59,100.100 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:34:59,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:34:59,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:34:59,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:35:01,157.157 INFO    ] ================================================
[2026-10-28 13:35:01,172.172 INFO    ] Launching Daemon at Wed Oct 28 13:35:01 IST 2026
[2026-10-28 13:35:01,182.182 INFO    ] ================================================
[2026-10-28 13:35:01,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:35:01
[2026-10-28 13:35:02,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:35:03,056.056 INFO    ] Initializing speech engine...
[2026-10-28 13:35:03,073.073 INFO    ] 2026-10-28 13:35:03
[2026-10-28 13:35:03,404.404 INFO    ] 2026-10-28 13:35:03
[2026-10-28 13:35:03,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:35:03,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:35:03,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:35:03,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:35:04,011.011 INFO    ] time= 28/10/2026 13:35:03
[2026-10-28 13:35:04,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:35:04,037.037 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:35:04,194.194 INFO    ] No existing commands found in stream
[2026-10-28 13:35:09,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:35:09,228.228 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 13:35:13,798.798 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:35:13,801.801 INFO    ] Checking for system updates...
[2026-10-28 13:35:13,836.836 INFO    ] 200
[2026-10-28 13:35:13,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:35:13,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:35:13,899.899 INFO    ] No update needed
[2026-10-28 13:35:13,901.901 INFO    ] Checking for camera pi updates...
[2026-10-28 13:35:13,937.937 INFO    ] 200
[2026-10-28 13:35:13,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:35:13,983.983 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:35:14,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:35:14,068.068 INFO    ] No camera update needed
[2026-10-28 13:35:14,071.071 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:35:14,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:35:14,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:35:14,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:35:16,122.122 INFO    ] ================================================
[2026-10-28 13:35:16,137.137 INFO    ] Launching Daemon at Wed Oct 28 13:35:16 IST 2026
[2026-10-28 13:35:16,148.148 INFO    ] ================================================
[2026-10-28 13:35:16,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:35:16
[2026-10-28 13:35:17,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:35:17,606.606 INFO    ] Initializing speech engine...
[2026-10-28 13:35:17,613.613 INFO    ] 2026-10-28 13:35:17
[2026-10-28 13:35:17,877.877 INFO    ] 2026-10-28 13:35:17
[2026-10-28 13:35:17,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:35:18,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:35:18,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:35:18,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:35:18,560.560 INFO    ] time= 28/10/2026 13:35:18
[2026-10-28 13:35:18,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:35:18,653.653 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:35:18,857.857 INFO    ] No existing commands found in stream
[2026-10-28 13:35:23,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:35:23,878.878 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 13:35:27,282.282 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:35:27,285.285 INFO    ] Checking for system updates...
[2026-10-28 13:35:27,324.324 INFO    ] 200
[2026-10-28 13:35:27,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:35:27,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:35:27,382.382 INFO    ] No update needed
[2026-10-28 13:35:27,385.385 INFO    ] Checking for camera pi updates...
[2026-10-28 13:35:27,419.419 INFO    ] 200
[2026-10-28 13:35:27,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:35:27,461.461 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:35:27,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:35:27,544.544 INFO    ] No camera update needed
[2026-10-28 13:35:27,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:35:27,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:35:27,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:35:27,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:35:29,601.601 INFO    ] ================================================
[2026-10-28 13:35:29,616.616 INFO    ] Launching Daemon at Wed Oct 28 13:35:29 IST 2026
[2026-10-28 13:35:29,627.627 INFO    ] ================================================
[2026-10-28 13:35:30,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:35:30
[2026-10-28 13:35:30,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:35:31,170.170 INFO    ] Initializing speech engine...
[2026-10-28 13:35:31,187.187 INFO    ] 2026-10-28 13:35:31
[2026-10-28 13:35:31,438.438 INFO    ] 2026-10-28 13:35:31
[2026-10-28 13:35:31,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:35:32,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:35:32,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:35:32,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:35:32,745.745 INFO    ] time= 28/10/2026 13:35:32
[2026-10-28 13:35:32,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:35:32,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:35:32,976.976 INFO    ] No existing commands found in stream
[2026-10-28 13:35:37,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:35:37,992.992 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-28 13:35:40,523.523 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:35:40,526.526 INFO    ] Checking for system updates...
[2026-10-28 13:35:40,562.562 INFO    ] 200
[2026-10-28 13:35:40,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:35:40,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:35:40,619.619 INFO    ] No update needed
[2026-10-28 13:35:40,621.621 INFO    ] Checking for camera pi updates...
[2026-10-28 13:35:40,655.655 INFO    ] 200
[2026-10-28 13:35:40,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:35:40,698.698 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:35:40,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:35:40,785.785 INFO    ] No camera update needed
[2026-10-28 13:35:40,788.788 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:35:40,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:35:40,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:35:40,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:35:42,841.841 INFO    ] ================================================
[2026-10-28 13:35:42,856.856 INFO    ] Launching Daemon at Wed Oct 28 13:35:42 IST 2026
[2026-10-28 13:35:42,866.866 INFO    ] ================================================
[2026-10-28 13:35:43,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:35:43
[2026-10-28 13:35:44,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:35:44,281.281 INFO    ] Initializing speech engine...
[2026-10-28 13:35:44,288.288 INFO    ] 2026-10-28 13:35:44
[2026-10-28 13:35:44,537.537 INFO    ] 2026-10-28 13:35:44
[2026-10-28 13:35:44,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:35:44,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:35:44,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:35:45,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:35:45,093.093 INFO    ] time= 28/10/2026 13:35:45
[2026-10-28 13:35:45,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:35:45,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:35:45,244.244 INFO    ] No existing commands found in stream
[2026-10-28 13:35:50,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:35:50,276.276 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-28 13:35:51,200.200 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:35:51,203.203 INFO    ] Checking for system updates...
[2026-10-28 13:35:51,240.240 INFO    ] 200
[2026-10-28 13:35:51,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:35:51,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:35:51,297.297 INFO    ] No update needed
[2026-10-28 13:35:51,299.299 INFO    ] Checking for camera pi updates...
[2026-10-28 13:35:51,336.336 INFO    ] 200
[2026-10-28 13:35:51,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:35:51,383.383 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:35:51,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:35:51,482.482 INFO    ] No camera update needed
[2026-10-28 13:35:51,485.485 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:35:51,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:35:51,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:35:51,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:35:53,538.538 INFO    ] ================================================
[2026-10-28 13:35:53,554.554 INFO    ] Launching Daemon at Wed Oct 28 13:35:53 IST 2026
[2026-10-28 13:35:53,565.565 INFO    ] ================================================
[2026-10-28 13:35:54,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:35:54
[2026-10-28 13:35:54,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:35:54,992.992 INFO    ] Initializing speech engine...
[2026-10-28 13:35:55,011.011 INFO    ] 2026-10-28 13:35:55
[2026-10-28 13:35:55,280.280 INFO    ] 2026-10-28 13:35:55
[2026-10-28 13:35:55,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:35:55,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:35:55,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:35:55,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:35:55,900.900 INFO    ] time= 28/10/2026 13:35:55
[2026-10-28 13:35:55,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:35:55,926.926 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:35:56,085.085 INFO    ] No existing commands found in stream
[2026-10-28 13:36:01,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:36:01,120.120 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 13:36:05,849.849 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:36:05,851.851 INFO    ] Checking for system updates...
[2026-10-28 13:36:05,887.887 INFO    ] 200
[2026-10-28 13:36:05,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:36:05,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:36:05,949.949 INFO    ] No update needed
[2026-10-28 13:36:05,952.952 INFO    ] Checking for camera pi updates...
[2026-10-28 13:36:05,988.988 INFO    ] 200
[2026-10-28 13:36:05,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:36:06,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:36:06,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:36:06,137.137 INFO    ] No camera update needed
[2026-10-28 13:36:06,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:36:06,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:36:06,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:36:06,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:36:08,192.192 INFO    ] ================================================
[2026-10-28 13:36:08,207.207 INFO    ] Launching Daemon at Wed Oct 28 13:36:08 IST 2026
[2026-10-28 13:36:08,218.218 INFO    ] ================================================
[2026-10-28 13:36:08,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:36:08
[2026-10-28 13:36:09,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:36:09,838.838 INFO    ] Initializing speech engine...
[2026-10-28 13:36:09,846.846 INFO    ] 2026-10-28 13:36:09
[2026-10-28 13:36:10,131.131 INFO    ] 2026-10-28 13:36:10
[2026-10-28 13:36:10,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:36:10,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:36:10,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:36:11,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:36:11,264.264 INFO    ] time= 28/10/2026 13:36:11
[2026-10-28 13:36:11,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:36:11,320.320 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:36:11,474.474 INFO    ] No existing commands found in stream
[2026-10-28 13:36:16,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:36:16,489.489 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-28 13:36:17,803.803 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:36:17,806.806 INFO    ] Checking for system updates...
[2026-10-28 13:36:17,843.843 INFO    ] 200
[2026-10-28 13:36:17,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:36:17,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:36:17,903.903 INFO    ] No update needed
[2026-10-28 13:36:17,906.906 INFO    ] Checking for camera pi updates...
[2026-10-28 13:36:17,941.941 INFO    ] 200
[2026-10-28 13:36:17,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:36:17,991.991 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:36:18,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:36:18,074.074 INFO    ] No camera update needed
[2026-10-28 13:36:18,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:36:18,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:36:18,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:36:18,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:36:20,135.135 INFO    ] ================================================
[2026-10-28 13:36:20,150.150 INFO    ] Launching Daemon at Wed Oct 28 13:36:20 IST 2026
[2026-10-28 13:36:20,161.161 INFO    ] ================================================
[2026-10-28 13:36:20,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:36:20
[2026-10-28 13:36:21,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:36:21,608.608 INFO    ] Initializing speech engine...
[2026-10-28 13:36:21,617.617 INFO    ] 2026-10-28 13:36:21
[2026-10-28 13:36:21,911.911 INFO    ] 2026-10-28 13:36:21
[2026-10-28 13:36:21,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:36:22,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:36:22,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:36:22,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:36:22,570.570 INFO    ] time= 28/10/2026 13:36:22
[2026-10-28 13:36:22,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:36:22,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:36:22,829.829 INFO    ] No existing commands found in stream
[2026-10-28 13:36:27,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:36:27,859.859 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-28 13:36:30,959.959 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:36:30,962.962 INFO    ] Checking for system updates...
[2026-10-28 13:36:31,001.001 INFO    ] 200
[2026-10-28 13:36:31,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:36:31,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:36:31,065.065 INFO    ] No update needed
[2026-10-28 13:36:31,067.067 INFO    ] Checking for camera pi updates...
[2026-10-28 13:36:31,102.102 INFO    ] 200
[2026-10-28 13:36:31,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:36:31,154.154 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:36:31,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:36:31,337.337 INFO    ] No camera update needed
[2026-10-28 13:36:31,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:36:31,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:36:31,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:36:31,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:36:33,393.393 INFO    ] ================================================
[2026-10-28 13:36:33,409.409 INFO    ] Launching Daemon at Wed Oct 28 13:36:33 IST 2026
[2026-10-28 13:36:33,420.420 INFO    ] ================================================
[2026-10-28 13:36:33,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:36:33
[2026-10-28 13:36:34,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:36:34,835.835 INFO    ] Initializing speech engine...
[2026-10-28 13:36:34,844.844 INFO    ] 2026-10-28 13:36:34
[2026-10-28 13:36:35,139.139 INFO    ] 2026-10-28 13:36:35
[2026-10-28 13:36:35,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:36:35,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:36:35,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:36:35,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:36:35,778.778 INFO    ] time= 28/10/2026 13:36:35
[2026-10-28 13:36:35,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:36:35,805.805 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:36:35,977.977 INFO    ] No existing commands found in stream
[2026-10-28 13:36:41,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:36:41,006.006 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-28 13:36:44,287.287 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:36:44,290.290 INFO    ] Checking for system updates...
[2026-10-28 13:36:44,325.325 INFO    ] 200
[2026-10-28 13:36:44,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:36:44,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:36:44,389.389 INFO    ] No update needed
[2026-10-28 13:36:44,391.391 INFO    ] Checking for camera pi updates...
[2026-10-28 13:36:44,424.424 INFO    ] 200
[2026-10-28 13:36:44,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:36:44,468.468 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:36:44,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:36:44,550.550 INFO    ] No camera update needed
[2026-10-28 13:36:44,553.553 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:36:44,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:36:44,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:36:44,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:36:46,605.605 INFO    ] ================================================
[2026-10-28 13:36:46,621.621 INFO    ] Launching Daemon at Wed Oct 28 13:36:46 IST 2026
[2026-10-28 13:36:46,632.632 INFO    ] ================================================
[2026-10-28 13:36:47,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:36:47
[2026-10-28 13:36:47,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:36:48,269.269 INFO    ] Initializing speech engine...
[2026-10-28 13:36:48,280.280 INFO    ] 2026-10-28 13:36:48
[2026-10-28 13:36:48,571.571 INFO    ] 2026-10-28 13:36:48
[2026-10-28 13:36:48,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:36:48,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:36:48,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:36:49,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:36:49,131.131 INFO    ] time= 28/10/2026 13:36:49
[2026-10-28 13:36:49,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:36:49,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:36:49,291.291 INFO    ] No existing commands found in stream
[2026-10-28 13:36:54,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:36:54,334.334 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-28 13:36:56,577.577 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:36:56,580.580 INFO    ] Checking for system updates...
[2026-10-28 13:36:56,618.618 INFO    ] 200
[2026-10-28 13:36:56,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:36:56,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:36:56,679.679 INFO    ] No update needed
[2026-10-28 13:36:56,682.682 INFO    ] Checking for camera pi updates...
[2026-10-28 13:36:56,715.715 INFO    ] 200
[2026-10-28 13:36:56,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:36:56,758.758 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:36:56,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:36:56,842.842 INFO    ] No camera update needed
[2026-10-28 13:36:56,844.844 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:36:56,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:36:56,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:36:56,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:36:58,898.898 INFO    ] ================================================
[2026-10-28 13:36:58,913.913 INFO    ] Launching Daemon at Wed Oct 28 13:36:58 IST 2026
[2026-10-28 13:36:58,924.924 INFO    ] ================================================
[2026-10-28 13:36:59,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:36:59
[2026-10-28 13:37:00,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:37:00,571.571 INFO    ] Initializing speech engine...
[2026-10-28 13:37:00,576.576 INFO    ] 2026-10-28 13:37:00
[2026-10-28 13:37:00,886.886 INFO    ] 2026-10-28 13:37:00
[2026-10-28 13:37:00,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:37:01,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:37:01,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:37:01,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:37:01,451.451 INFO    ] time= 28/10/2026 13:37:01
[2026-10-28 13:37:01,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:37:01,458.458 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:37:01,554.554 INFO    ] No existing commands found in stream
[2026-10-28 13:37:06,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:37:06,567.567 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 13:37:08,652.652 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:37:08,655.655 INFO    ] Checking for system updates...
[2026-10-28 13:37:08,695.695 INFO    ] 200
[2026-10-28 13:37:08,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:37:08,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:37:08,753.753 INFO    ] No update needed
[2026-10-28 13:37:08,756.756 INFO    ] Checking for camera pi updates...
[2026-10-28 13:37:08,791.791 INFO    ] 200
[2026-10-28 13:37:08,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:37:08,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:37:08,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:37:08,938.938 INFO    ] No camera update needed
[2026-10-28 13:37:08,940.940 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:37:08,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:37:08,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:37:08,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:37:11,996.996 INFO    ] ================================================
[2026-10-28 13:37:11,013.013 INFO    ] Launching Daemon at Wed Oct 28 13:37:11 IST 2026
[2026-10-28 13:37:11,024.024 INFO    ] ================================================
[2026-10-28 13:37:11,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:37:11
[2026-10-28 13:37:12,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:37:12,674.674 INFO    ] Initializing speech engine...
[2026-10-28 13:37:12,688.688 INFO    ] 2026-10-28 13:37:12
[2026-10-28 13:37:12,958.958 INFO    ] 2026-10-28 13:37:12
[2026-10-28 13:37:13,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:37:13,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:37:13,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:37:13,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:37:13,875.875 INFO    ] time= 28/10/2026 13:37:13
[2026-10-28 13:37:13,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:37:13,935.935 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:37:14,070.070 INFO    ] No existing commands found in stream
[2026-10-28 13:37:19,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:37:19,088.088 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 13:37:19,748.748 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:37:19,751.751 INFO    ] Checking for system updates...
[2026-10-28 13:37:19,789.789 INFO    ] 200
[2026-10-28 13:37:19,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:37:19,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:37:19,847.847 INFO    ] No update needed
[2026-10-28 13:37:19,850.850 INFO    ] Checking for camera pi updates...
[2026-10-28 13:37:19,885.885 INFO    ] 200
[2026-10-28 13:37:19,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:37:19,930.930 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:37:20,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:37:20,014.014 INFO    ] No camera update needed
[2026-10-28 13:37:20,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:37:20,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:37:20,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:37:20,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:37:22,072.072 INFO    ] ================================================
[2026-10-28 13:37:22,089.089 INFO    ] Launching Daemon at Wed Oct 28 13:37:22 IST 2026
[2026-10-28 13:37:22,100.100 INFO    ] ================================================
[2026-10-28 13:37:22,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:37:22
[2026-10-28 13:37:23,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:37:23,500.500 INFO    ] Initializing speech engine...
[2026-10-28 13:37:23,523.523 INFO    ] 2026-10-28 13:37:23
[2026-10-28 13:37:23,780.780 INFO    ] 2026-10-28 13:37:23
[2026-10-28 13:37:23,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:37:24,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:37:24,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:37:24,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:37:24,505.505 INFO    ] time= 28/10/2026 13:37:24
[2026-10-28 13:37:24,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:37:24,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:37:24,793.793 INFO    ] No existing commands found in stream
[2026-10-28 13:37:29,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:37:29,814.814 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-28 13:37:31,442.442 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:37:31,446.446 INFO    ] Checking for system updates...
[2026-10-28 13:37:31,493.493 INFO    ] 200
[2026-10-28 13:37:31,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:37:31,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:37:31,558.558 INFO    ] No update needed
[2026-10-28 13:37:31,561.561 INFO    ] Checking for camera pi updates...
[2026-10-28 13:37:31,604.604 INFO    ] 200
[2026-10-28 13:37:31,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:37:31,664.664 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:37:31,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:37:31,774.774 INFO    ] No camera update needed
[2026-10-28 13:37:31,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:37:31,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:37:31,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:37:31,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:37:33,837.837 INFO    ] ================================================
[2026-10-28 13:37:33,852.852 INFO    ] Launching Daemon at Wed Oct 28 13:37:33 IST 2026
[2026-10-28 13:37:33,865.865 INFO    ] ================================================
[2026-10-28 13:37:34,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:37:34
[2026-10-28 13:37:35,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:37:35,530.530 INFO    ] Initializing speech engine...
[2026-10-28 13:37:35,542.542 INFO    ] 2026-10-28 13:37:35
[2026-10-28 13:37:35,829.829 INFO    ] 2026-10-28 13:37:35
[2026-10-28 13:37:35,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:37:36,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:37:36,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:37:36,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:37:36,610.610 INFO    ] time= 28/10/2026 13:37:36
[2026-10-28 13:37:36,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:37:36,714.714 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:37:36,928.928 INFO    ] No existing commands found in stream
[2026-10-28 13:37:41,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:37:41,957.957 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-28 13:37:45,242.242 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:37:45,245.245 INFO    ] Checking for system updates...
[2026-10-28 13:37:45,283.283 INFO    ] 200
[2026-10-28 13:37:45,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:37:45,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:37:45,349.349 INFO    ] No update needed
[2026-10-28 13:37:45,352.352 INFO    ] Checking for camera pi updates...
[2026-10-28 13:37:45,388.388 INFO    ] 200
[2026-10-28 13:37:45,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:37:45,432.432 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:37:45,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:37:45,521.521 INFO    ] No camera update needed
[2026-10-28 13:37:45,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:37:45,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:37:45,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:37:45,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:37:47,577.577 INFO    ] ================================================
[2026-10-28 13:37:47,592.592 INFO    ] Launching Daemon at Wed Oct 28 13:37:47 IST 2026
[2026-10-28 13:37:47,603.603 INFO    ] ================================================
[2026-10-28 13:37:48,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:37:48
[2026-10-28 13:37:48,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:37:49,232.232 INFO    ] Initializing speech engine...
[2026-10-28 13:37:49,241.241 INFO    ] 2026-10-28 13:37:49
[2026-10-28 13:37:49,527.527 INFO    ] 2026-10-28 13:37:49
[2026-10-28 13:37:49,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:37:49,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:37:49,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:37:50,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:37:50,111.111 INFO    ] time= 28/10/2026 13:37:50
[2026-10-28 13:37:50,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:37:50,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:37:50,354.354 INFO    ] No existing commands found in stream
[2026-10-28 13:37:55,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:37:55,393.393 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 13:37:57,239.239 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:37:57,242.242 INFO    ] Checking for system updates...
[2026-10-28 13:37:57,283.283 INFO    ] 200
[2026-10-28 13:37:57,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:37:57,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:37:57,341.341 INFO    ] No update needed
[2026-10-28 13:37:57,343.343 INFO    ] Checking for camera pi updates...
[2026-10-28 13:37:57,377.377 INFO    ] 200
[2026-10-28 13:37:57,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:37:57,421.421 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:37:57,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:37:57,508.508 INFO    ] No camera update needed
[2026-10-28 13:37:57,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:37:57,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:37:57,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:37:57,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:37:59,571.571 INFO    ] ================================================
[2026-10-28 13:37:59,587.587 INFO    ] Launching Daemon at Wed Oct 28 13:37:59 IST 2026
[2026-10-28 13:37:59,598.598 INFO    ] ================================================
[2026-10-28 13:38:00,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:38:00
[2026-10-28 13:38:00,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:38:01,058.058 INFO    ] Initializing speech engine...
[2026-10-28 13:38:01,066.066 INFO    ] 2026-10-28 13:38:01
[2026-10-28 13:38:01,326.326 INFO    ] 2026-10-28 13:38:01
[2026-10-28 13:38:01,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:38:01,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:38:01,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:38:01,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:38:01,912.912 INFO    ] time= 28/10/2026 13:38:01
[2026-10-28 13:38:01,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:38:01,921.921 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:38:02,015.015 INFO    ] No existing commands found in stream
[2026-10-28 13:38:07,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:38:07,029.029 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 13:38:07,887.887 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:38:07,890.890 INFO    ] Checking for system updates...
[2026-10-28 13:38:07,926.926 INFO    ] 200
[2026-10-28 13:38:07,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:38:07,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:38:07,984.984 INFO    ] No update needed
[2026-10-28 13:38:07,987.987 INFO    ] Checking for camera pi updates...
[2026-10-28 13:38:08,020.020 INFO    ] 200
[2026-10-28 13:38:08,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:38:08,063.063 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:38:08,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:38:08,146.146 INFO    ] No camera update needed
[2026-10-28 13:38:08,149.149 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:38:08,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:38:08,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:38:08,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:38:10,207.207 INFO    ] ================================================
[2026-10-28 13:38:10,222.222 INFO    ] Launching Daemon at Wed Oct 28 13:38:10 IST 2026
[2026-10-28 13:38:10,233.233 INFO    ] ================================================
[2026-10-28 13:38:10,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:38:10
[2026-10-28 13:38:11,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:38:11,686.686 INFO    ] Initializing speech engine...
[2026-10-28 13:38:11,695.695 INFO    ] 2026-10-28 13:38:11
[2026-10-28 13:38:11,955.955 INFO    ] 2026-10-28 13:38:11
[2026-10-28 13:38:11,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:38:12,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:38:12,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:38:12,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:38:12,500.500 INFO    ] time= 28/10/2026 13:38:12
[2026-10-28 13:38:12,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:38:12,535.535 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:38:12,719.719 INFO    ] No existing commands found in stream
[2026-10-28 13:38:17,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:38:17,752.752 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-28 13:38:18,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:38:18,611.611 INFO    ] Checking for system updates...
[2026-10-28 13:38:18,647.647 INFO    ] 200
[2026-10-28 13:38:18,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:38:18,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:38:18,704.704 INFO    ] No update needed
[2026-10-28 13:38:18,706.706 INFO    ] Checking for camera pi updates...
[2026-10-28 13:38:18,744.744 INFO    ] 200
[2026-10-28 13:38:18,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:38:18,792.792 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:38:18,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:38:18,867.867 INFO    ] No camera update needed
[2026-10-28 13:38:18,869.869 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:38:18,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:38:18,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:38:18,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:38:20,922.922 INFO    ] ================================================
[2026-10-28 13:38:20,937.937 INFO    ] Launching Daemon at Wed Oct 28 13:38:20 IST 2026
[2026-10-28 13:38:20,948.948 INFO    ] ================================================
[2026-10-28 13:38:21,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:38:21
[2026-10-28 13:38:22,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:38:22,576.576 INFO    ] Initializing speech engine...
[2026-10-28 13:38:22,582.582 INFO    ] 2026-10-28 13:38:22
[2026-10-28 13:38:22,850.850 INFO    ] 2026-10-28 13:38:22
[2026-10-28 13:38:22,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:38:23,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:38:23,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:38:23,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:38:23,397.397 INFO    ] time= 28/10/2026 13:38:23
[2026-10-28 13:38:23,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:38:23,443.443 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:38:23,564.564 INFO    ] No existing commands found in stream
[2026-10-28 13:38:28,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:38:28,592.592 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 13:38:29,841.841 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:38:29,845.845 INFO    ] Checking for system updates...
[2026-10-28 13:38:29,881.881 INFO    ] 200
[2026-10-28 13:38:29,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:38:29,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:38:29,941.941 INFO    ] No update needed
[2026-10-28 13:38:29,943.943 INFO    ] Checking for camera pi updates...
[2026-10-28 13:38:29,978.978 INFO    ] 200
[2026-10-28 13:38:29,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:38:30,024.024 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:38:30,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:38:30,112.112 INFO    ] No camera update needed
[2026-10-28 13:38:30,115.115 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:38:30,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:38:30,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:38:30,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:38:32,172.172 INFO    ] ================================================
[2026-10-28 13:38:32,187.187 INFO    ] Launching Daemon at Wed Oct 28 13:38:32 IST 2026
[2026-10-28 13:38:32,199.199 INFO    ] ================================================
[2026-10-28 13:38:32,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:38:32
[2026-10-28 13:38:33,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:38:33,767.767 INFO    ] Initializing speech engine...
[2026-10-28 13:38:33,784.784 INFO    ] 2026-10-28 13:38:33
[2026-10-28 13:38:34,075.075 INFO    ] 2026-10-28 13:38:34
[2026-10-28 13:38:34,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:38:34,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:38:34,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:38:34,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:38:34,656.656 INFO    ] time= 28/10/2026 13:38:34
[2026-10-28 13:38:34,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:38:34,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:38:34,855.855 INFO    ] No existing commands found in stream
[2026-10-28 13:38:39,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:38:39,877.877 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 13:38:44,286.286 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:38:44,289.289 INFO    ] Checking for system updates...
[2026-10-28 13:38:44,325.325 INFO    ] 200
[2026-10-28 13:38:44,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:38:44,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:38:44,383.383 INFO    ] No update needed
[2026-10-28 13:38:44,386.386 INFO    ] Checking for camera pi updates...
[2026-10-28 13:38:44,420.420 INFO    ] 200
[2026-10-28 13:38:44,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:38:44,464.464 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:38:44,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:38:44,644.644 INFO    ] No camera update needed
[2026-10-28 13:38:44,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:38:44,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:38:44,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:38:44,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:38:46,699.699 INFO    ] ================================================
[2026-10-28 13:38:46,714.714 INFO    ] Launching Daemon at Wed Oct 28 13:38:46 IST 2026
[2026-10-28 13:38:46,725.725 INFO    ] ================================================
[2026-10-28 13:38:47,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:38:47
[2026-10-28 13:38:47,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:38:48,140.140 INFO    ] Initializing speech engine...
[2026-10-28 13:38:48,159.159 INFO    ] 2026-10-28 13:38:48
[2026-10-28 13:38:48,409.409 INFO    ] 2026-10-28 13:38:48
[2026-10-28 13:38:48,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:38:48,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:38:48,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:38:48,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:38:48,978.978 INFO    ] time= 28/10/2026 13:38:48
[2026-10-28 13:38:48,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:38:49,003.003 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:38:49,169.169 INFO    ] No existing commands found in stream
[2026-10-28 13:38:54,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:38:54,197.197 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-28 13:38:56,822.822 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:38:56,825.825 INFO    ] Checking for system updates...
[2026-10-28 13:38:56,865.865 INFO    ] 200
[2026-10-28 13:38:56,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:38:56,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:38:56,927.927 INFO    ] No update needed
[2026-10-28 13:38:56,930.930 INFO    ] Checking for camera pi updates...
[2026-10-28 13:38:56,963.963 INFO    ] 200
[2026-10-28 13:38:56,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:38:57,005.005 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:38:57,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:38:57,092.092 INFO    ] No camera update needed
[2026-10-28 13:38:57,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:38:57,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:38:57,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:38:57,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:38:59,147.147 INFO    ] ================================================
[2026-10-28 13:38:59,162.162 INFO    ] Launching Daemon at Wed Oct 28 13:38:59 IST 2026
[2026-10-28 13:38:59,173.173 INFO    ] ================================================
[2026-10-28 13:38:59,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:38:59
[2026-10-28 13:39:00,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:39:00,707.707 INFO    ] Initializing speech engine...
[2026-10-28 13:39:00,719.719 INFO    ] 2026-10-28 13:39:00
[2026-10-28 13:39:00,999.999 INFO    ] 2026-10-28 13:39:00
[2026-10-28 13:39:01,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:39:01,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:39:01,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:39:01,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:39:01,853.853 INFO    ] time= 28/10/2026 13:39:01
[2026-10-28 13:39:01,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:39:01,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:39:02,130.130 INFO    ] No existing commands found in stream
[2026-10-28 13:39:07,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:39:07,148.148 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-28 13:39:11,203.203 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:39:11,206.206 INFO    ] Checking for system updates...
[2026-10-28 13:39:11,243.243 INFO    ] 200
[2026-10-28 13:39:11,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:39:11,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:39:11,313.313 INFO    ] No update needed
[2026-10-28 13:39:11,316.316 INFO    ] Checking for camera pi updates...
[2026-10-28 13:39:11,351.351 INFO    ] 200
[2026-10-28 13:39:11,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:39:11,404.404 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:39:11,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:39:11,501.501 INFO    ] No camera update needed
[2026-10-28 13:39:11,503.503 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:39:11,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:39:11,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:39:11,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:39:13,556.556 INFO    ] ================================================
[2026-10-28 13:39:13,570.570 INFO    ] Launching Daemon at Wed Oct 28 13:39:13 IST 2026
[2026-10-28 13:39:13,581.581 INFO    ] ================================================
[2026-10-28 13:39:14,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:39:14
[2026-10-28 13:39:14,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:39:14,982.982 INFO    ] Initializing speech engine...
[2026-10-28 13:39:14,990.990 INFO    ] 2026-10-28 13:39:14
[2026-10-28 13:39:15,281.281 INFO    ] 2026-10-28 13:39:15
[2026-10-28 13:39:15,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:39:15,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:39:15,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:39:15,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:39:15,905.905 INFO    ] time= 28/10/2026 13:39:15
[2026-10-28 13:39:15,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:39:15,931.931 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:39:16,077.077 INFO    ] No existing commands found in stream
[2026-10-28 13:39:21,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:39:21,094.094 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-28 13:39:23,851.851 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:39:23,853.853 INFO    ] Checking for system updates...
[2026-10-28 13:39:23,888.888 INFO    ] 200
[2026-10-28 13:39:23,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:39:23,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:39:23,951.951 INFO    ] No update needed
[2026-10-28 13:39:23,953.953 INFO    ] Checking for camera pi updates...
[2026-10-28 13:39:23,990.990 INFO    ] 200
[2026-10-28 13:39:23,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:39:24,037.037 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:39:24,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:39:24,111.111 INFO    ] No camera update needed
[2026-10-28 13:39:24,113.113 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:39:24,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:39:24,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:39:24,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:39:26,170.170 INFO    ] ================================================
[2026-10-28 13:39:26,185.185 INFO    ] Launching Daemon at Wed Oct 28 13:39:26 IST 2026
[2026-10-28 13:39:26,196.196 INFO    ] ================================================
[2026-10-28 13:39:26,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:39:26
[2026-10-28 13:39:27,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:39:27,617.617 INFO    ] Initializing speech engine...
[2026-10-28 13:39:27,626.626 INFO    ] 2026-10-28 13:39:27
[2026-10-28 13:39:27,874.874 INFO    ] 2026-10-28 13:39:27
[2026-10-28 13:39:27,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:39:28,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:39:28,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:39:28,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:39:28,443.443 INFO    ] time= 28/10/2026 13:39:28
[2026-10-28 13:39:28,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:39:28,479.479 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:39:28,600.600 INFO    ] No existing commands found in stream
[2026-10-28 13:39:33,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:39:33,628.628 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-28 13:39:36,163.163 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:39:36,166.166 INFO    ] Checking for system updates...
[2026-10-28 13:39:36,205.205 INFO    ] 200
[2026-10-28 13:39:36,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:39:36,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:39:36,261.261 INFO    ] No update needed
[2026-10-28 13:39:36,264.264 INFO    ] Checking for camera pi updates...
[2026-10-28 13:39:36,297.297 INFO    ] 200
[2026-10-28 13:39:36,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:39:36,340.340 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:39:36,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:39:36,422.422 INFO    ] No camera update needed
[2026-10-28 13:39:36,424.424 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:39:36,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:39:36,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:39:36,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:39:38,477.477 INFO    ] ================================================
[2026-10-28 13:39:38,493.493 INFO    ] Launching Daemon at Wed Oct 28 13:39:38 IST 2026
[2026-10-28 13:39:38,504.504 INFO    ] ================================================
[2026-10-28 13:39:39,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:39:39
[2026-10-28 13:39:39,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:39:40,110.110 INFO    ] Initializing speech engine...
[2026-10-28 13:39:40,123.123 INFO    ] 2026-10-28 13:39:40
[2026-10-28 13:39:40,435.435 INFO    ] 2026-10-28 13:39:40
[2026-10-28 13:39:40,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:39:40,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:39:40,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:39:41,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:39:41,123.123 INFO    ] time= 28/10/2026 13:39:41
[2026-10-28 13:39:41,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:39:41,219.219 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:39:41,374.374 INFO    ] No existing commands found in stream
[2026-10-28 13:39:46,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:39:46,409.409 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-28 13:39:50,069.069 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:39:50,072.072 INFO    ] Checking for system updates...
[2026-10-28 13:39:50,109.109 INFO    ] 200
[2026-10-28 13:39:50,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:39:50,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:39:50,174.174 INFO    ] No update needed
[2026-10-28 13:39:50,177.177 INFO    ] Checking for camera pi updates...
[2026-10-28 13:39:50,216.216 INFO    ] 200
[2026-10-28 13:39:50,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:39:50,264.264 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:39:50,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:39:50,355.355 INFO    ] No camera update needed
[2026-10-28 13:39:50,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:39:50,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:39:50,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:39:50,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:39:52,416.416 INFO    ] ================================================
[2026-10-28 13:39:52,431.431 INFO    ] Launching Daemon at Wed Oct 28 13:39:52 IST 2026
[2026-10-28 13:39:52,442.442 INFO    ] ================================================
[2026-10-28 13:39:53,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:39:53
[2026-10-28 13:39:53,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:39:53,900.900 INFO    ] Initializing speech engine...
[2026-10-28 13:39:53,909.909 INFO    ] 2026-10-28 13:39:53
[2026-10-28 13:39:54,167.167 INFO    ] 2026-10-28 13:39:54
[2026-10-28 13:39:54,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:39:54,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:39:54,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:39:54,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:39:54,910.910 INFO    ] time= 28/10/2026 13:39:54
[2026-10-28 13:39:54,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:39:54,989.989 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:39:55,155.155 INFO    ] No existing commands found in stream
[2026-10-28 13:40:00,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:40:00,168.168 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-28 13:40:07,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:40:07,670.670 INFO    ] Checking for system updates...
[2026-10-28 13:40:07,710.710 INFO    ] 200
[2026-10-28 13:40:07,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:40:07,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:40:07,770.770 INFO    ] No update needed
[2026-10-28 13:40:07,773.773 INFO    ] Checking for camera pi updates...
[2026-10-28 13:40:07,808.808 INFO    ] 200
[2026-10-28 13:40:07,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:40:07,856.856 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:40:07,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:40:07,948.948 INFO    ] No camera update needed
[2026-10-28 13:40:07,951.951 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:40:07,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:40:07,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:40:07,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:40:10,008.008 INFO    ] ================================================
[2026-10-28 13:40:10,023.023 INFO    ] Launching Daemon at Wed Oct 28 13:40:10 IST 2026
[2026-10-28 13:40:10,034.034 INFO    ] ================================================
[2026-10-28 13:40:10,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:40:10
[2026-10-28 13:40:11,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:40:11,684.684 INFO    ] Initializing speech engine...
[2026-10-28 13:40:11,693.693 INFO    ] 2026-10-28 13:40:11
[2026-10-28 13:40:11,997.997 INFO    ] 2026-10-28 13:40:11
[2026-10-28 13:40:12,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:40:12,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:40:12,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:40:12,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:40:12,697.697 INFO    ] time= 28/10/2026 13:40:12
[2026-10-28 13:40:12,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:40:12,804.804 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:40:12,950.950 INFO    ] No existing commands found in stream
[2026-10-28 13:40:17,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:40:17,965.965 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-28 13:40:19,590.590 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:40:19,593.593 INFO    ] Checking for system updates...
[2026-10-28 13:40:19,629.629 INFO    ] 200
[2026-10-28 13:40:19,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:40:19,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:40:19,686.686 INFO    ] No update needed
[2026-10-28 13:40:19,689.689 INFO    ] Checking for camera pi updates...
[2026-10-28 13:40:19,722.722 INFO    ] 200
[2026-10-28 13:40:19,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:40:19,765.765 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:40:19,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:40:19,854.854 INFO    ] No camera update needed
[2026-10-28 13:40:19,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:40:19,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:40:19,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:40:19,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:40:21,909.909 INFO    ] ================================================
[2026-10-28 13:40:21,924.924 INFO    ] Launching Daemon at Wed Oct 28 13:40:21 IST 2026
[2026-10-28 13:40:21,934.934 INFO    ] ================================================
[2026-10-28 13:40:22,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:40:22
[2026-10-28 13:40:23,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:40:23,340.340 INFO    ] Initializing speech engine...
[2026-10-28 13:40:23,346.346 INFO    ] 2026-10-28 13:40:23
[2026-10-28 13:40:23,644.644 INFO    ] 2026-10-28 13:40:23
[2026-10-28 13:40:23,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:40:23,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:40:23,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:40:24,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:40:24,279.279 INFO    ] time= 28/10/2026 13:40:24
[2026-10-28 13:40:24,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:40:24,302.302 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:40:24,436.436 INFO    ] No existing commands found in stream
[2026-10-28 13:40:29,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:40:29,466.466 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-28 13:40:30,524.524 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:40:30,526.526 INFO    ] Checking for system updates...
[2026-10-28 13:40:30,562.562 INFO    ] 200
[2026-10-28 13:40:30,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:40:30,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:40:30,620.620 INFO    ] No update needed
[2026-10-28 13:40:30,622.622 INFO    ] Checking for camera pi updates...
[2026-10-28 13:40:30,657.657 INFO    ] 200
[2026-10-28 13:40:30,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:40:30,709.709 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:40:30,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:40:30,795.795 INFO    ] No camera update needed
[2026-10-28 13:40:30,797.797 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:40:30,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:40:30,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:40:30,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:40:32,851.851 INFO    ] ================================================
[2026-10-28 13:40:32,866.866 INFO    ] Launching Daemon at Wed Oct 28 13:40:32 IST 2026
[2026-10-28 13:40:32,877.877 INFO    ] ================================================
[2026-10-28 13:40:33,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:40:33
[2026-10-28 13:40:34,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:40:34,474.474 INFO    ] Initializing speech engine...
[2026-10-28 13:40:34,482.482 INFO    ] 2026-10-28 13:40:34
[2026-10-28 13:40:34,764.764 INFO    ] 2026-10-28 13:40:34
[2026-10-28 13:40:34,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:40:35,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:40:35,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:40:35,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:40:35,489.489 INFO    ] time= 28/10/2026 13:40:35
[2026-10-28 13:40:35,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:40:35,606.606 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:40:35,740.740 INFO    ] No existing commands found in stream
[2026-10-28 13:40:40,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:40:40,753.753 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-28 13:40:44,604.604 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:40:44,607.607 INFO    ] Checking for system updates...
[2026-10-28 13:40:44,644.644 INFO    ] 200
[2026-10-28 13:40:44,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:40:44,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:40:44,702.702 INFO    ] No update needed
[2026-10-28 13:40:44,705.705 INFO    ] Checking for camera pi updates...
[2026-10-28 13:40:44,740.740 INFO    ] 200
[2026-10-28 13:40:44,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:40:44,785.785 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:40:44,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:40:44,892.892 INFO    ] No camera update needed
[2026-10-28 13:40:44,895.895 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:40:44,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:40:44,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:40:44,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:40:46,951.951 INFO    ] ================================================
[2026-10-28 13:40:46,966.966 INFO    ] Launching Daemon at Wed Oct 28 13:40:46 IST 2026
[2026-10-28 13:40:46,977.977 INFO    ] ================================================
[2026-10-28 13:40:47,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:40:47
[2026-10-28 13:40:48,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:40:48,383.383 INFO    ] Initializing speech engine...
[2026-10-28 13:40:48,397.397 INFO    ] 2026-10-28 13:40:48
[2026-10-28 13:40:48,657.657 INFO    ] 2026-10-28 13:40:48
[2026-10-28 13:40:48,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:40:48,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:40:48,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:40:49,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:40:49,206.206 INFO    ] time= 28/10/2026 13:40:49
[2026-10-28 13:40:49,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:40:49,230.230 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:40:49,357.357 INFO    ] No existing commands found in stream
[2026-10-28 13:40:54,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:40:54,375.375 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-28 13:40:55,564.564 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:40:55,567.567 INFO    ] Checking for system updates...
[2026-10-28 13:40:55,602.602 INFO    ] 200
[2026-10-28 13:40:55,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:40:55,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:40:55,660.660 INFO    ] No update needed
[2026-10-28 13:40:55,662.662 INFO    ] Checking for camera pi updates...
[2026-10-28 13:40:55,696.696 INFO    ] 200
[2026-10-28 13:40:55,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:40:55,738.738 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:40:55,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:40:55,926.926 INFO    ] No camera update needed
[2026-10-28 13:40:55,929.929 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:40:55,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:40:55,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:40:55,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:40:57,983.983 INFO    ] ================================================
[2026-10-28 13:40:58,998.998 INFO    ] Launching Daemon at Wed Oct 28 13:40:57 IST 2026
[2026-10-28 13:40:58,009.009 INFO    ] ================================================
[2026-10-28 13:40:58,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:40:58
[2026-10-28 13:40:59,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:40:59,425.425 INFO    ] Initializing speech engine...
[2026-10-28 13:40:59,434.434 INFO    ] 2026-10-28 13:40:59
[2026-10-28 13:40:59,686.686 INFO    ] 2026-10-28 13:40:59
[2026-10-28 13:40:59,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:41:00,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:41:00,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:41:00,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:41:00,284.284 INFO    ] time= 28/10/2026 13:41:00
[2026-10-28 13:41:00,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:41:00,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:41:00,489.489 INFO    ] No existing commands found in stream
[2026-10-28 13:41:05,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:41:05,510.510 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 13:41:09,422.422 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:41:09,425.425 INFO    ] Checking for system updates...
[2026-10-28 13:41:09,460.460 INFO    ] 200
[2026-10-28 13:41:09,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:41:09,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:41:09,519.519 INFO    ] No update needed
[2026-10-28 13:41:09,521.521 INFO    ] Checking for camera pi updates...
[2026-10-28 13:41:09,558.558 INFO    ] 200
[2026-10-28 13:41:09,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:41:09,604.604 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:41:09,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:41:09,705.705 INFO    ] No camera update needed
[2026-10-28 13:41:09,707.707 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:41:09,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:41:09,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:41:09,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:41:11,761.761 INFO    ] ================================================
[2026-10-28 13:41:11,777.777 INFO    ] Launching Daemon at Wed Oct 28 13:41:11 IST 2026
[2026-10-28 13:41:11,788.788 INFO    ] ================================================
[2026-10-28 13:41:12,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:41:12
[2026-10-28 13:41:12,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:41:13,249.249 INFO    ] Initializing speech engine...
[2026-10-28 13:41:13,269.269 INFO    ] 2026-10-28 13:41:13
[2026-10-28 13:41:13,529.529 INFO    ] 2026-10-28 13:41:13
[2026-10-28 13:41:13,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:41:13,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:41:13,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:41:14,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:41:14,084.084 INFO    ] time= 28/10/2026 13:41:14
[2026-10-28 13:41:14,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:41:14,130.130 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:41:14,250.250 INFO    ] No existing commands found in stream
[2026-10-28 13:41:19,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:41:19,283.283 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-28 13:41:22,245.245 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:41:22,247.247 INFO    ] Checking for system updates...
[2026-10-28 13:41:22,283.283 INFO    ] 200
[2026-10-28 13:41:22,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:41:22,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:41:22,340.340 INFO    ] No update needed
[2026-10-28 13:41:22,342.342 INFO    ] Checking for camera pi updates...
[2026-10-28 13:41:22,377.377 INFO    ] 200
[2026-10-28 13:41:22,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:41:22,431.431 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:41:22,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:41:22,516.516 INFO    ] No camera update needed
[2026-10-28 13:41:22,519.519 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:41:22,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:41:22,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:41:22,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:41:24,574.574 INFO    ] ================================================
[2026-10-28 13:41:24,590.590 INFO    ] Launching Daemon at Wed Oct 28 13:41:24 IST 2026
[2026-10-28 13:41:24,602.602 INFO    ] ================================================
[2026-10-28 13:41:25,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:41:25
[2026-10-28 13:41:25,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:41:26,191.191 INFO    ] Initializing speech engine...
[2026-10-28 13:41:26,198.198 INFO    ] 2026-10-28 13:41:26
[2026-10-28 13:41:26,483.483 INFO    ] 2026-10-28 13:41:26
[2026-10-28 13:41:26,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:41:26,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:41:26,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:41:27,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:41:27,130.130 INFO    ] time= 28/10/2026 13:41:27
[2026-10-28 13:41:27,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:41:27,221.221 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:41:27,410.410 INFO    ] No existing commands found in stream
[2026-10-28 13:41:32,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:41:32,432.432 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-28 13:41:35,048.048 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:41:35,051.051 INFO    ] Checking for system updates...
[2026-10-28 13:41:35,088.088 INFO    ] 200
[2026-10-28 13:41:35,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:41:35,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:41:35,148.148 INFO    ] No update needed
[2026-10-28 13:41:35,150.150 INFO    ] Checking for camera pi updates...
[2026-10-28 13:41:35,185.185 INFO    ] 200
[2026-10-28 13:41:35,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:41:35,229.229 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:41:35,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:41:35,320.320 INFO    ] No camera update needed
[2026-10-28 13:41:35,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:41:35,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:41:35,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:41:35,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:41:37,378.378 INFO    ] ================================================
[2026-10-28 13:41:37,393.393 INFO    ] Launching Daemon at Wed Oct 28 13:41:37 IST 2026
[2026-10-28 13:41:37,404.404 INFO    ] ================================================
[2026-10-28 13:41:38,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:41:38
[2026-10-28 13:41:38,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:41:38,966.966 INFO    ] Initializing speech engine...
[2026-10-28 13:41:38,975.975 INFO    ] 2026-10-28 13:41:38
[2026-10-28 13:41:39,226.226 INFO    ] 2026-10-28 13:41:39
[2026-10-28 13:41:39,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:41:39,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:41:39,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:41:39,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:41:39,825.825 INFO    ] time= 28/10/2026 13:41:39
[2026-10-28 13:41:39,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:41:39,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:41:40,011.011 INFO    ] No existing commands found in stream
[2026-10-28 13:41:45,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:41:45,044.044 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-28 13:41:46,291.291 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:41:46,294.294 INFO    ] Checking for system updates...
[2026-10-28 13:41:46,330.330 INFO    ] 200
[2026-10-28 13:41:46,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:41:46,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:41:46,394.394 INFO    ] No update needed
[2026-10-28 13:41:46,397.397 INFO    ] Checking for camera pi updates...
[2026-10-28 13:41:46,432.432 INFO    ] 200
[2026-10-28 13:41:46,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:41:46,481.481 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:41:46,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:41:46,572.572 INFO    ] No camera update needed
[2026-10-28 13:41:46,575.575 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:41:46,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:41:46,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:41:46,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:41:48,631.631 INFO    ] ================================================
[2026-10-28 13:41:48,646.646 INFO    ] Launching Daemon at Wed Oct 28 13:41:48 IST 2026
[2026-10-28 13:41:48,657.657 INFO    ] ================================================
[2026-10-28 13:41:49,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:41:49
[2026-10-28 13:41:49,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:41:50,057.057 INFO    ] Initializing speech engine...
[2026-10-28 13:41:50,065.065 INFO    ] 2026-10-28 13:41:50
[2026-10-28 13:41:50,362.362 INFO    ] 2026-10-28 13:41:50
[2026-10-28 13:41:50,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:41:50,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:41:50,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:41:50,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:41:50,980.980 INFO    ] time= 28/10/2026 13:41:50
[2026-10-28 13:41:50,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:41:51,007.007 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:41:51,151.151 INFO    ] No existing commands found in stream
[2026-10-28 13:41:56,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:41:56,169.169 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-28 13:41:57,845.845 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:41:57,847.847 INFO    ] Checking for system updates...
[2026-10-28 13:41:57,882.882 INFO    ] 200
[2026-10-28 13:41:57,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:41:57,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:41:57,939.939 INFO    ] No update needed
[2026-10-28 13:41:57,941.941 INFO    ] Checking for camera pi updates...
[2026-10-28 13:41:57,974.974 INFO    ] 200
[2026-10-28 13:41:57,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:41:58,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:41:58,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:41:58,096.096 INFO    ] No camera update needed
[2026-10-28 13:41:58,099.099 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:41:58,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:41:58,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:41:58,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:42:00,151.151 INFO    ] ================================================
[2026-10-28 13:42:00,166.166 INFO    ] Launching Daemon at Wed Oct 28 13:42:00 IST 2026
[2026-10-28 13:42:00,177.177 INFO    ] ================================================
[2026-10-28 13:42:00,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:42:00
[2026-10-28 13:42:01,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:42:01,589.589 INFO    ] Initializing speech engine...
[2026-10-28 13:42:01,598.598 INFO    ] 2026-10-28 13:42:01
[2026-10-28 13:42:01,941.941 INFO    ] 2026-10-28 13:42:01
[2026-10-28 13:42:02,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:42:02,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:42:02,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:42:02,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:42:02,651.651 INFO    ] time= 28/10/2026 13:42:02
[2026-10-28 13:42:02,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:42:02,700.700 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:42:02,819.819 INFO    ] No existing commands found in stream
[2026-10-28 13:42:07,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:42:07,842.842 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-28 13:42:09,939.939 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:42:09,941.941 INFO    ] Checking for system updates...
[2026-10-28 13:42:09,977.977 INFO    ] 200
[2026-10-28 13:42:09,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:42:10,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:42:10,035.035 INFO    ] No update needed
[2026-10-28 13:42:10,037.037 INFO    ] Checking for camera pi updates...
[2026-10-28 13:42:10,074.074 INFO    ] 200
[2026-10-28 13:42:10,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:42:10,121.121 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:42:10,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:42:10,207.207 INFO    ] No camera update needed
[2026-10-28 13:42:10,209.209 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:42:10,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:42:10,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:42:10,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:42:12,263.263 INFO    ] ================================================
[2026-10-28 13:42:12,278.278 INFO    ] Launching Daemon at Wed Oct 28 13:42:12 IST 2026
[2026-10-28 13:42:12,289.289 INFO    ] ================================================
[2026-10-28 13:42:12,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:42:12
[2026-10-28 13:42:13,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:42:13,760.760 INFO    ] Initializing speech engine...
[2026-10-28 13:42:13,770.770 INFO    ] 2026-10-28 13:42:13
[2026-10-28 13:42:14,035.035 INFO    ] 2026-10-28 13:42:14
[2026-10-28 13:42:14,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:42:14,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:42:14,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:42:14,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:42:14,652.652 INFO    ] time= 28/10/2026 13:42:14
[2026-10-28 13:42:14,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:42:14,675.675 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:42:14,829.829 INFO    ] No existing commands found in stream
[2026-10-28 13:42:19,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:42:19,854.854 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-28 13:42:23,846.846 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:42:23,849.849 INFO    ] Checking for system updates...
[2026-10-28 13:42:23,885.885 INFO    ] 200
[2026-10-28 13:42:23,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:42:23,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:42:23,945.945 INFO    ] No update needed
[2026-10-28 13:42:23,947.947 INFO    ] Checking for camera pi updates...
[2026-10-28 13:42:23,981.981 INFO    ] 200
[2026-10-28 13:42:23,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:42:24,027.027 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:42:24,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:42:24,116.116 INFO    ] No camera update needed
[2026-10-28 13:42:24,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:42:24,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:42:24,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:42:24,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:42:26,172.172 INFO    ] ================================================
[2026-10-28 13:42:26,188.188 INFO    ] Launching Daemon at Wed Oct 28 13:42:26 IST 2026
[2026-10-28 13:42:26,199.199 INFO    ] ================================================
[2026-10-28 13:42:26,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:42:26
[2026-10-28 13:42:27,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:42:27,775.775 INFO    ] Initializing speech engine...
[2026-10-28 13:42:27,787.787 INFO    ] 2026-10-28 13:42:27
[2026-10-28 13:42:28,061.061 INFO    ] 2026-10-28 13:42:28
[2026-10-28 13:42:28,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:42:28,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:42:28,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:42:28,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:42:28,801.801 INFO    ] time= 28/10/2026 13:42:28
[2026-10-28 13:42:28,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:42:28,876.876 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:42:29,045.045 INFO    ] No existing commands found in stream
[2026-10-28 13:42:34,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:42:34,067.067 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-28 13:42:36,648.648 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:42:36,651.651 INFO    ] Checking for system updates...
[2026-10-28 13:42:36,688.688 INFO    ] 200
[2026-10-28 13:42:36,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:42:36,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:42:36,746.746 INFO    ] No update needed
[2026-10-28 13:42:36,749.749 INFO    ] Checking for camera pi updates...
[2026-10-28 13:42:36,784.784 INFO    ] 200
[2026-10-28 13:42:36,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:42:36,827.827 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:42:36,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:42:36,932.932 INFO    ] No camera update needed
[2026-10-28 13:42:36,935.935 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:42:36,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:42:36,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:42:36,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:42:38,990.990 INFO    ] ================================================
[2026-10-28 13:42:39,006.006 INFO    ] Launching Daemon at Wed Oct 28 13:42:39 IST 2026
[2026-10-28 13:42:39,017.017 INFO    ] ================================================
[2026-10-28 13:42:39,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:42:39
[2026-10-28 13:42:40,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:42:40,467.467 INFO    ] Initializing speech engine...
[2026-10-28 13:42:40,473.473 INFO    ] 2026-10-28 13:42:40
[2026-10-28 13:42:40,721.721 INFO    ] 2026-10-28 13:42:40
[2026-10-28 13:42:40,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:42:41,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:42:41,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:42:41,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:42:41,319.319 INFO    ] time= 28/10/2026 13:42:41
[2026-10-28 13:42:41,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:42:41,334.334 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:42:41,458.458 INFO    ] No existing commands found in stream
[2026-10-28 13:42:46,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:42:46,491.491 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 13:42:50,247.247 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:42:50,249.249 INFO    ] Checking for system updates...
[2026-10-28 13:42:50,285.285 INFO    ] 200
[2026-10-28 13:42:50,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:42:50,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:42:50,344.344 INFO    ] No update needed
[2026-10-28 13:42:50,347.347 INFO    ] Checking for camera pi updates...
[2026-10-28 13:42:50,384.384 INFO    ] 200
[2026-10-28 13:42:50,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:42:50,427.427 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:42:50,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:42:50,519.519 INFO    ] No camera update needed
[2026-10-28 13:42:50,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:42:50,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:42:50,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:42:50,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:42:52,576.576 INFO    ] ================================================
[2026-10-28 13:42:52,591.591 INFO    ] Launching Daemon at Wed Oct 28 13:42:52 IST 2026
[2026-10-28 13:42:52,602.602 INFO    ] ================================================
[2026-10-28 13:42:53,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:42:53
[2026-10-28 13:42:53,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:42:54,059.059 INFO    ] Initializing speech engine...
[2026-10-28 13:42:54,065.065 INFO    ] 2026-10-28 13:42:54
[2026-10-28 13:42:54,327.327 INFO    ] 2026-10-28 13:42:54
[2026-10-28 13:42:54,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:42:54,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:42:54,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:42:55,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:42:55,066.066 INFO    ] time= 28/10/2026 13:42:55
[2026-10-28 13:42:55,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:42:55,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:42:55,399.399 INFO    ] No existing commands found in stream
[2026-10-28 13:43:00,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:43:00,438.438 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 13:43:02,151.151 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:43:02,162.162 INFO    ] Checking for system updates...
[2026-10-28 13:43:02,207.207 INFO    ] 200
[2026-10-28 13:43:02,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:43:02,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:43:02,331.331 INFO    ] No update needed
[2026-10-28 13:43:02,336.336 INFO    ] Checking for camera pi updates...
[2026-10-28 13:43:02,388.388 INFO    ] 200
[2026-10-28 13:43:02,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:43:02,445.445 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:43:02,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:43:02,557.557 INFO    ] No camera update needed
[2026-10-28 13:43:02,561.561 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:43:02,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:43:02,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:43:02,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:43:04,623.623 INFO    ] ================================================
[2026-10-28 13:43:04,638.638 INFO    ] Launching Daemon at Wed Oct 28 13:43:04 IST 2026
[2026-10-28 13:43:04,650.650 INFO    ] ================================================
[2026-10-28 13:43:05,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:43:05
[2026-10-28 13:43:05,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:43:06,244.244 INFO    ] Initializing speech engine...
[2026-10-28 13:43:06,253.253 INFO    ] 2026-10-28 13:43:06
[2026-10-28 13:43:06,539.539 INFO    ] 2026-10-28 13:43:06
[2026-10-28 13:43:06,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:43:06,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:43:06,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:43:07,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:43:07,276.276 INFO    ] time= 28/10/2026 13:43:07
[2026-10-28 13:43:07,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:43:07,364.364 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:43:07,537.537 INFO    ] No existing commands found in stream
[2026-10-28 13:43:12,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:43:12,559.559 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-28 13:43:13,775.775 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:43:13,778.778 INFO    ] Checking for system updates...
[2026-10-28 13:43:13,814.814 INFO    ] 200
[2026-10-28 13:43:13,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:43:13,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:43:13,874.874 INFO    ] No update needed
[2026-10-28 13:43:13,877.877 INFO    ] Checking for camera pi updates...
[2026-10-28 13:43:13,911.911 INFO    ] 200
[2026-10-28 13:43:13,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:43:13,974.974 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:43:14,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:43:14,059.059 INFO    ] No camera update needed
[2026-10-28 13:43:14,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:43:14,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:43:14,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:43:14,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:43:16,115.115 INFO    ] ================================================
[2026-10-28 13:43:16,130.130 INFO    ] Launching Daemon at Wed Oct 28 13:43:16 IST 2026
[2026-10-28 13:43:16,141.141 INFO    ] ================================================
[2026-10-28 13:43:16,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:43:16
[2026-10-28 13:43:17,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:43:17,711.711 INFO    ] Initializing speech engine...
[2026-10-28 13:43:17,717.717 INFO    ] 2026-10-28 13:43:17
[2026-10-28 13:43:17,988.988 INFO    ] 2026-10-28 13:43:17
[2026-10-28 13:43:18,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:43:18,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:43:18,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:43:18,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:43:18,626.626 INFO    ] time= 28/10/2026 13:43:18
[2026-10-28 13:43:18,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:43:18,715.715 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:43:18,869.869 INFO    ] No existing commands found in stream
[2026-10-28 13:43:23,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:43:23,908.908 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-28 13:43:28,506.506 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:43:28,509.509 INFO    ] Checking for system updates...
[2026-10-28 13:43:28,546.546 INFO    ] 200
[2026-10-28 13:43:28,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:43:28,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:43:28,603.603 INFO    ] No update needed
[2026-10-28 13:43:28,605.605 INFO    ] Checking for camera pi updates...
[2026-10-28 13:43:28,638.638 INFO    ] 200
[2026-10-28 13:43:28,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:43:28,684.684 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:43:28,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:43:28,802.802 INFO    ] No camera update needed
[2026-10-28 13:43:28,805.805 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:43:28,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:43:28,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:43:28,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:43:30,857.857 INFO    ] ================================================
[2026-10-28 13:43:30,872.872 INFO    ] Launching Daemon at Wed Oct 28 13:43:30 IST 2026
[2026-10-28 13:43:30,882.882 INFO    ] ================================================
[2026-10-28 13:43:31,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:43:31
[2026-10-28 13:43:32,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:43:32,522.522 INFO    ] Initializing speech engine...
[2026-10-28 13:43:32,531.531 INFO    ] 2026-10-28 13:43:32
[2026-10-28 13:43:32,821.821 INFO    ] 2026-10-28 13:43:32
[2026-10-28 13:43:32,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:43:33,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:43:33,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:43:33,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:43:33,428.428 INFO    ] time= 28/10/2026 13:43:33
[2026-10-28 13:43:33,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:43:33,477.477 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:43:33,636.636 INFO    ] No existing commands found in stream
[2026-10-28 13:43:38,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:43:38,670.670 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 13:43:41,492.492 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:43:41,495.495 INFO    ] Checking for system updates...
[2026-10-28 13:43:41,533.533 INFO    ] 200
[2026-10-28 13:43:41,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:43:41,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:43:41,597.597 INFO    ] No update needed
[2026-10-28 13:43:41,600.600 INFO    ] Checking for camera pi updates...
[2026-10-28 13:43:41,633.633 INFO    ] 200
[2026-10-28 13:43:41,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:43:41,680.680 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:43:41,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:43:41,766.766 INFO    ] No camera update needed
[2026-10-28 13:43:41,768.768 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:43:41,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:43:41,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:43:41,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:43:43,822.822 INFO    ] ================================================
[2026-10-28 13:43:43,837.837 INFO    ] Launching Daemon at Wed Oct 28 13:43:43 IST 2026
[2026-10-28 13:43:43,848.848 INFO    ] ================================================
[2026-10-28 13:43:44,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:43:44
[2026-10-28 13:43:45,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:43:45,453.453 INFO    ] Initializing speech engine...
[2026-10-28 13:43:45,461.461 INFO    ] 2026-10-28 13:43:45
[2026-10-28 13:43:45,746.746 INFO    ] 2026-10-28 13:43:45
[2026-10-28 13:43:45,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:43:46,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:43:46,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:43:46,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:43:46,533.533 INFO    ] time= 28/10/2026 13:43:46
[2026-10-28 13:43:46,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:43:46,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:43:46,740.740 INFO    ] No existing commands found in stream
[2026-10-28 13:43:51,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:43:51,754.754 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 13:43:53,783.783 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:43:53,786.786 INFO    ] Checking for system updates...
[2026-10-28 13:43:53,824.824 INFO    ] 200
[2026-10-28 13:43:53,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:43:53,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:43:53,881.881 INFO    ] No update needed
[2026-10-28 13:43:53,884.884 INFO    ] Checking for camera pi updates...
[2026-10-28 13:43:53,917.917 INFO    ] 200
[2026-10-28 13:43:53,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:43:53,959.959 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:43:54,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:43:54,038.038 INFO    ] No camera update needed
[2026-10-28 13:43:54,040.040 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:43:54,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:43:54,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:43:54,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:43:56,092.092 INFO    ] ================================================
[2026-10-28 13:43:56,107.107 INFO    ] Launching Daemon at Wed Oct 28 13:43:56 IST 2026
[2026-10-28 13:43:56,118.118 INFO    ] ================================================
[2026-10-28 13:43:56,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:43:56
[2026-10-28 13:43:57,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:43:57,567.567 INFO    ] Initializing speech engine...
[2026-10-28 13:43:57,577.577 INFO    ] 2026-10-28 13:43:57
[2026-10-28 13:43:57,831.831 INFO    ] 2026-10-28 13:43:57
[2026-10-28 13:43:57,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:43:58,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:43:58,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:43:58,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:43:58,388.388 INFO    ] time= 28/10/2026 13:43:58
[2026-10-28 13:43:58,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:43:58,435.435 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:43:58,571.571 INFO    ] No existing commands found in stream
[2026-10-28 13:44:03,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:44:03,599.599 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-28 13:44:06,571.571 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:44:06,574.574 INFO    ] Checking for system updates...
[2026-10-28 13:44:06,613.613 INFO    ] 200
[2026-10-28 13:44:06,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:44:06,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:44:06,670.670 INFO    ] No update needed
[2026-10-28 13:44:06,672.672 INFO    ] Checking for camera pi updates...
[2026-10-28 13:44:06,706.706 INFO    ] 200
[2026-10-28 13:44:06,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:44:06,758.758 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:44:06,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:44:06,844.844 INFO    ] No camera update needed
[2026-10-28 13:44:06,847.847 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:44:06,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:44:06,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:44:06,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:44:08,902.902 INFO    ] ================================================
[2026-10-28 13:44:08,916.916 INFO    ] Launching Daemon at Wed Oct 28 13:44:08 IST 2026
[2026-10-28 13:44:08,927.927 INFO    ] ================================================
[2026-10-28 13:44:09,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:44:09
[2026-10-28 13:44:10,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:44:10,485.485 INFO    ] Initializing speech engine...
[2026-10-28 13:44:10,496.496 INFO    ] 2026-10-28 13:44:10
[2026-10-28 13:44:10,768.768 INFO    ] 2026-10-28 13:44:10
[2026-10-28 13:44:10,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:44:11,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:44:11,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:44:11,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:44:11,344.344 INFO    ] time= 28/10/2026 13:44:11
[2026-10-28 13:44:11,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:44:11,381.381 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:44:11,534.534 INFO    ] No existing commands found in stream
[2026-10-28 13:44:16,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:44:16,568.568 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 13:44:20,495.495 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:44:20,498.498 INFO    ] Checking for system updates...
[2026-10-28 13:44:20,537.537 INFO    ] 200
[2026-10-28 13:44:20,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:44:20,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:44:20,599.599 INFO    ] No update needed
[2026-10-28 13:44:20,602.602 INFO    ] Checking for camera pi updates...
[2026-10-28 13:44:20,635.635 INFO    ] 200
[2026-10-28 13:44:20,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:44:20,681.681 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:44:20,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:44:20,763.763 INFO    ] No camera update needed
[2026-10-28 13:44:20,766.766 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:44:20,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:44:20,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:44:20,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:44:22,818.818 INFO    ] ================================================
[2026-10-28 13:44:22,833.833 INFO    ] Launching Daemon at Wed Oct 28 13:44:22 IST 2026
[2026-10-28 13:44:22,844.844 INFO    ] ================================================
[2026-10-28 13:44:23,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:44:23
[2026-10-28 13:44:23,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:44:24,250.250 INFO    ] Initializing speech engine...
[2026-10-28 13:44:24,265.265 INFO    ] 2026-10-28 13:44:24
[2026-10-28 13:44:24,547.547 INFO    ] 2026-10-28 13:44:24
[2026-10-28 13:44:24,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:44:24,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:44:24,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:44:25,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:44:25,138.138 INFO    ] time= 28/10/2026 13:44:25
[2026-10-28 13:44:25,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:44:25,173.173 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:44:25,298.298 INFO    ] No existing commands found in stream
[2026-10-28 13:44:30,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:44:30,317.317 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-28 13:44:32,572.572 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:44:32,574.574 INFO    ] Checking for system updates...
[2026-10-28 13:44:32,613.613 INFO    ] 200
[2026-10-28 13:44:32,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:44:32,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:44:32,676.676 INFO    ] No update needed
[2026-10-28 13:44:32,679.679 INFO    ] Checking for camera pi updates...
[2026-10-28 13:44:32,716.716 INFO    ] 200
[2026-10-28 13:44:32,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:44:32,758.758 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:44:32,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:44:32,857.857 INFO    ] No camera update needed
[2026-10-28 13:44:32,860.860 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:44:32,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:44:32,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:44:32,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:44:34,913.913 INFO    ] ================================================
[2026-10-28 13:44:34,928.928 INFO    ] Launching Daemon at Wed Oct 28 13:44:34 IST 2026
[2026-10-28 13:44:34,939.939 INFO    ] ================================================
[2026-10-28 13:44:35,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:44:35
[2026-10-28 13:44:36,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:44:36,364.364 INFO    ] Initializing speech engine...
[2026-10-28 13:44:36,373.373 INFO    ] 2026-10-28 13:44:36
[2026-10-28 13:44:36,629.629 INFO    ] 2026-10-28 13:44:36
[2026-10-28 13:44:36,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:44:36,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:44:36,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:44:37,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:44:37,172.172 INFO    ] time= 28/10/2026 13:44:37
[2026-10-28 13:44:37,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:44:37,217.217 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:44:37,350.350 INFO    ] No existing commands found in stream
[2026-10-28 13:44:42,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:44:42,383.383 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 13:44:43,572.572 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:44:43,574.574 INFO    ] Checking for system updates...
[2026-10-28 13:44:43,610.610 INFO    ] 200
[2026-10-28 13:44:43,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:44:43,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:44:43,674.674 INFO    ] No update needed
[2026-10-28 13:44:43,677.677 INFO    ] Checking for camera pi updates...
[2026-10-28 13:44:43,710.710 INFO    ] 200
[2026-10-28 13:44:43,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:44:43,757.757 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:44:43,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:44:43,836.836 INFO    ] No camera update needed
[2026-10-28 13:44:43,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:44:43,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:44:43,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:44:43,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:44:45,891.891 INFO    ] ================================================
[2026-10-28 13:44:45,907.907 INFO    ] Launching Daemon at Wed Oct 28 13:44:45 IST 2026
[2026-10-28 13:44:45,918.918 INFO    ] ================================================
[2026-10-28 13:44:46,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:44:46
[2026-10-28 13:44:47,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:44:47,359.359 INFO    ] Initializing speech engine...
[2026-10-28 13:44:47,365.365 INFO    ] 2026-10-28 13:44:47
[2026-10-28 13:44:47,659.659 INFO    ] 2026-10-28 13:44:47
[2026-10-28 13:44:47,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:44:47,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:44:47,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:44:48,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:44:48,154.154 INFO    ] time= 28/10/2026 13:44:48
[2026-10-28 13:44:48,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:44:48,224.224 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:44:48,308.308 INFO    ] No existing commands found in stream
[2026-10-28 13:44:53,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:44:53,333.333 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-28 13:44:54,704.704 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:44:54,707.707 INFO    ] Checking for system updates...
[2026-10-28 13:44:54,742.742 INFO    ] 200
[2026-10-28 13:44:54,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:44:54,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:44:54,809.809 INFO    ] No update needed
[2026-10-28 13:44:54,812.812 INFO    ] Checking for camera pi updates...
[2026-10-28 13:44:54,849.849 INFO    ] 200
[2026-10-28 13:44:54,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:44:54,891.891 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:44:54,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:44:54,977.977 INFO    ] No camera update needed
[2026-10-28 13:44:54,979.979 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:44:54,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:44:54,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:44:54,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:44:57,032.032 INFO    ] ================================================
[2026-10-28 13:44:57,048.048 INFO    ] Launching Daemon at Wed Oct 28 13:44:57 IST 2026
[2026-10-28 13:44:57,059.059 INFO    ] ================================================
[2026-10-28 13:44:57,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:44:57
[2026-10-28 13:44:58,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:44:58,453.453 INFO    ] Initializing speech engine...
[2026-10-28 13:44:58,468.468 INFO    ] 2026-10-28 13:44:58
[2026-10-28 13:44:58,751.751 INFO    ] 2026-10-28 13:44:58
[2026-10-28 13:44:58,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:44:59,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:44:59,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:44:59,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:44:59,386.386 INFO    ] time= 28/10/2026 13:44:59
[2026-10-28 13:44:59,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:44:59,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:44:59,574.574 INFO    ] No existing commands found in stream
[2026-10-28 13:45:04,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:45:04,607.607 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-28 13:45:08,934.934 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:45:08,937.937 INFO    ] Checking for system updates...
[2026-10-28 13:45:08,972.972 INFO    ] 200
[2026-10-28 13:45:08,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:45:09,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:45:09,036.036 INFO    ] No update needed
[2026-10-28 13:45:09,038.038 INFO    ] Checking for camera pi updates...
[2026-10-28 13:45:09,073.073 INFO    ] 200
[2026-10-28 13:45:09,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:45:09,121.121 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:45:09,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:45:09,299.299 INFO    ] No camera update needed
[2026-10-28 13:45:09,301.301 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:45:09,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:45:09,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:45:09,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:45:11,354.354 INFO    ] ================================================
[2026-10-28 13:45:11,371.371 INFO    ] Launching Daemon at Wed Oct 28 13:45:11 IST 2026
[2026-10-28 13:45:11,382.382 INFO    ] ================================================
[2026-10-28 13:45:11,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:45:11
[2026-10-28 13:45:12,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:45:12,930.930 INFO    ] Initializing speech engine...
[2026-10-28 13:45:12,938.938 INFO    ] 2026-10-28 13:45:12
[2026-10-28 13:45:13,227.227 INFO    ] 2026-10-28 13:45:13
[2026-10-28 13:45:13,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:45:13,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:45:13,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:45:13,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:45:13,988.988 INFO    ] time= 28/10/2026 13:45:13
[2026-10-28 13:45:14,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:45:14,102.102 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:45:14,302.302 INFO    ] No existing commands found in stream
[2026-10-28 13:45:19,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:45:19,336.336 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 13:45:23,737.737 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:45:23,740.740 INFO    ] Checking for system updates...
[2026-10-28 13:45:23,785.785 INFO    ] 200
[2026-10-28 13:45:23,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:45:23,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:45:23,861.861 INFO    ] No update needed
[2026-10-28 13:45:23,864.864 INFO    ] Checking for camera pi updates...
[2026-10-28 13:45:23,907.907 INFO    ] 200
[2026-10-28 13:45:23,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:45:23,965.965 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:45:24,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:45:24,060.060 INFO    ] No camera update needed
[2026-10-28 13:45:24,063.063 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:45:24,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:45:24,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:45:24,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:45:26,123.123 INFO    ] ================================================
[2026-10-28 13:45:26,140.140 INFO    ] Launching Daemon at Wed Oct 28 13:45:26 IST 2026
[2026-10-28 13:45:26,152.152 INFO    ] ================================================
[2026-10-28 13:45:26,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:45:26
[2026-10-28 13:45:27,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:45:27,617.617 INFO    ] Initializing speech engine...
[2026-10-28 13:45:27,626.626 INFO    ] 2026-10-28 13:45:27
[2026-10-28 13:45:27,920.920 INFO    ] 2026-10-28 13:45:27
[2026-10-28 13:45:27,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:45:28,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:45:28,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:45:28,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:45:29,030.030 INFO    ] time= 28/10/2026 13:45:28
[2026-10-28 13:45:29,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:45:29,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:45:29,233.233 INFO    ] No existing commands found in stream
[2026-10-28 13:45:34,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:45:34,248.248 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 13:45:37,970.970 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:45:37,973.973 INFO    ] Checking for system updates...
[2026-10-28 13:45:38,019.019 INFO    ] 200
[2026-10-28 13:45:38,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:45:38,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:45:38,088.088 INFO    ] No update needed
[2026-10-28 13:45:38,091.091 INFO    ] Checking for camera pi updates...
[2026-10-28 13:45:38,132.132 INFO    ] 200
[2026-10-28 13:45:38,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:45:38,178.178 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:45:38,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:45:38,264.264 INFO    ] No camera update needed
[2026-10-28 13:45:38,266.266 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:45:38,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:45:38,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:45:38,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:45:40,322.322 INFO    ] ================================================
[2026-10-28 13:45:40,337.337 INFO    ] Launching Daemon at Wed Oct 28 13:45:40 IST 2026
[2026-10-28 13:45:40,349.349 INFO    ] ================================================
[2026-10-28 13:45:40,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:45:40
[2026-10-28 13:45:41,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:45:41,743.743 INFO    ] Initializing speech engine...
[2026-10-28 13:45:41,751.751 INFO    ] 2026-10-28 13:45:41
[2026-10-28 13:45:42,046.046 INFO    ] 2026-10-28 13:45:42
[2026-10-28 13:45:42,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:45:42,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:45:42,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:45:42,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:45:42,673.673 INFO    ] time= 28/10/2026 13:45:42
[2026-10-28 13:45:42,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:45:42,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:45:42,855.855 INFO    ] No existing commands found in stream
[2026-10-28 13:45:47,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:45:47,877.877 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 13:45:51,653.653 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:45:51,655.655 INFO    ] Checking for system updates...
[2026-10-28 13:45:51,695.695 INFO    ] 200
[2026-10-28 13:45:51,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:45:51,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:45:51,753.753 INFO    ] No update needed
[2026-10-28 13:45:51,755.755 INFO    ] Checking for camera pi updates...
[2026-10-28 13:45:51,793.793 INFO    ] 200
[2026-10-28 13:45:51,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:45:51,836.836 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:45:51,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:45:51,922.922 INFO    ] No camera update needed
[2026-10-28 13:45:51,924.924 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:45:51,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:45:51,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:45:51,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:45:53,979.979 INFO    ] ================================================
[2026-10-28 13:45:53,994.994 INFO    ] Launching Daemon at Wed Oct 28 13:45:53 IST 2026
[2026-10-28 13:45:54,005.005 INFO    ] ================================================
[2026-10-28 13:45:54,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:45:54
[2026-10-28 13:45:55,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:45:55,497.497 INFO    ] Initializing speech engine...
[2026-10-28 13:45:55,506.506 INFO    ] 2026-10-28 13:45:55
[2026-10-28 13:45:55,756.756 INFO    ] 2026-10-28 13:45:55
[2026-10-28 13:45:55,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:45:56,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:45:56,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:45:56,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:45:56,328.328 INFO    ] time= 28/10/2026 13:45:56
[2026-10-28 13:45:56,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:45:56,375.375 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:45:56,491.491 INFO    ] No existing commands found in stream
[2026-10-28 13:46:01,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:46:01,518.518 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-28 13:46:04,652.652 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:46:04,655.655 INFO    ] Checking for system updates...
[2026-10-28 13:46:04,695.695 INFO    ] 200
[2026-10-28 13:46:04,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:46:04,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:46:04,776.776 INFO    ] No update needed
[2026-10-28 13:46:04,778.778 INFO    ] Checking for camera pi updates...
[2026-10-28 13:46:04,815.815 INFO    ] 200
[2026-10-28 13:46:04,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:46:04,857.857 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:46:04,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:46:04,913.913 INFO    ] No camera update needed
[2026-10-28 13:46:04,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:46:04,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:46:04,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:46:04,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:46:06,971.971 INFO    ] ================================================
[2026-10-28 13:46:06,987.987 INFO    ] Launching Daemon at Wed Oct 28 13:46:06 IST 2026
[2026-10-28 13:46:07,997.997 INFO    ] ================================================
[2026-10-28 13:46:07,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:46:07
[2026-10-28 13:46:08,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:46:08,443.443 INFO    ] Initializing speech engine...
[2026-10-28 13:46:08,466.466 INFO    ] 2026-10-28 13:46:08
[2026-10-28 13:46:08,722.722 INFO    ] 2026-10-28 13:46:08
[2026-10-28 13:46:08,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:46:09,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:46:09,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:46:09,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:46:09,293.293 INFO    ] time= 28/10/2026 13:46:09
[2026-10-28 13:46:09,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:46:09,318.318 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:46:09,461.461 INFO    ] No existing commands found in stream
[2026-10-28 13:46:14,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:46:14,489.489 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-28 13:46:18,735.735 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:46:18,737.737 INFO    ] Checking for system updates...
[2026-10-28 13:46:18,777.777 INFO    ] 200
[2026-10-28 13:46:18,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:46:18,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:46:18,836.836 INFO    ] No update needed
[2026-10-28 13:46:18,839.839 INFO    ] Checking for camera pi updates...
[2026-10-28 13:46:18,876.876 INFO    ] 200
[2026-10-28 13:46:18,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:46:18,920.920 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:46:19,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:46:19,002.002 INFO    ] No camera update needed
[2026-10-28 13:46:19,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:46:19,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:46:19,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:46:19,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:46:21,058.058 INFO    ] ================================================
[2026-10-28 13:46:21,073.073 INFO    ] Launching Daemon at Wed Oct 28 13:46:21 IST 2026
[2026-10-28 13:46:21,084.084 INFO    ] ================================================
[2026-10-28 13:46:21,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:46:21
[2026-10-28 13:46:22,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:46:22,491.491 INFO    ] Initializing speech engine...
[2026-10-28 13:46:22,498.498 INFO    ] 2026-10-28 13:46:22
[2026-10-28 13:46:22,797.797 INFO    ] 2026-10-28 13:46:22
[2026-10-28 13:46:22,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:46:23,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:46:23,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:46:23,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:46:23,436.436 INFO    ] time= 28/10/2026 13:46:23
[2026-10-28 13:46:23,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:46:23,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:46:23,628.628 INFO    ] No existing commands found in stream
[2026-10-28 13:46:28,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:46:28,646.646 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-28 13:46:33,059.059 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:46:33,063.063 INFO    ] Checking for system updates...
[2026-10-28 13:46:33,100.100 INFO    ] 200
[2026-10-28 13:46:33,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:46:33,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:46:33,172.172 INFO    ] No update needed
[2026-10-28 13:46:33,176.176 INFO    ] Checking for camera pi updates...
[2026-10-28 13:46:33,222.222 INFO    ] 200
[2026-10-28 13:46:33,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:46:33,274.274 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:46:33,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:46:33,357.357 INFO    ] No camera update needed
[2026-10-28 13:46:33,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:46:33,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:46:33,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:46:33,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:46:35,417.417 INFO    ] ================================================
[2026-10-28 13:46:35,433.433 INFO    ] Launching Daemon at Wed Oct 28 13:46:35 IST 2026
[2026-10-28 13:46:35,444.444 INFO    ] ================================================
[2026-10-28 13:46:36,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:46:36
[2026-10-28 13:46:36,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:46:36,887.887 INFO    ] Initializing speech engine...
[2026-10-28 13:46:36,905.905 INFO    ] 2026-10-28 13:46:36
[2026-10-28 13:46:37,183.183 INFO    ] 2026-10-28 13:46:37
[2026-10-28 13:46:37,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:46:37,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:46:37,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:46:37,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:46:37,834.834 INFO    ] time= 28/10/2026 13:46:37
[2026-10-28 13:46:37,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:46:37,860.860 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:46:37,989.989 INFO    ] No existing commands found in stream
[2026-10-28 13:46:43,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:46:43,017.017 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-28 13:46:44,296.296 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:46:44,299.299 INFO    ] Checking for system updates...
[2026-10-28 13:46:44,337.337 INFO    ] 200
[2026-10-28 13:46:44,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:46:44,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:46:44,398.398 INFO    ] No update needed
[2026-10-28 13:46:44,401.401 INFO    ] Checking for camera pi updates...
[2026-10-28 13:46:44,440.440 INFO    ] 200
[2026-10-28 13:46:44,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:46:44,485.485 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:46:44,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:46:44,551.551 INFO    ] No camera update needed
[2026-10-28 13:46:44,553.553 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:46:44,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:46:44,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:46:44,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:46:46,611.611 INFO    ] ================================================
[2026-10-28 13:46:46,627.627 INFO    ] Launching Daemon at Wed Oct 28 13:46:46 IST 2026
[2026-10-28 13:46:46,638.638 INFO    ] ================================================
[2026-10-28 13:46:47,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:46:47
[2026-10-28 13:46:47,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:46:48,102.102 INFO    ] Initializing speech engine...
[2026-10-28 13:46:48,118.118 INFO    ] 2026-10-28 13:46:48
[2026-10-28 13:46:48,398.398 INFO    ] 2026-10-28 13:46:48
[2026-10-28 13:46:48,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:46:48,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:46:48,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:46:48,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:46:49,042.042 INFO    ] time= 28/10/2026 13:46:48
[2026-10-28 13:46:49,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:46:49,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:46:49,224.224 INFO    ] No existing commands found in stream
[2026-10-28 13:46:54,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:46:54,239.239 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-28 13:46:58,338.338 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:46:58,341.341 INFO    ] Checking for system updates...
[2026-10-28 13:46:58,377.377 INFO    ] 200
[2026-10-28 13:46:58,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:46:58,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:46:58,442.442 INFO    ] No update needed
[2026-10-28 13:46:58,444.444 INFO    ] Checking for camera pi updates...
[2026-10-28 13:46:58,478.478 INFO    ] 200
[2026-10-28 13:46:58,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:46:58,527.527 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:46:58,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:46:58,600.600 INFO    ] No camera update needed
[2026-10-28 13:46:58,602.602 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:46:58,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:46:58,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:46:58,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:47:00,657.657 INFO    ] ================================================
[2026-10-28 13:47:00,673.673 INFO    ] Launching Daemon at Wed Oct 28 13:47:00 IST 2026
[2026-10-28 13:47:00,684.684 INFO    ] ================================================
[2026-10-28 13:47:01,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:47:01
[2026-10-28 13:47:02,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:47:02,519.519 INFO    ] Initializing speech engine...
[2026-10-28 13:47:02,529.529 INFO    ] 2026-10-28 13:47:02
[2026-10-28 13:47:02,859.859 INFO    ] 2026-10-28 13:47:02
[2026-10-28 13:47:02,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:47:03,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:47:03,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:47:03,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:47:03,488.488 INFO    ] time= 28/10/2026 13:47:03
[2026-10-28 13:47:03,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:47:03,556.556 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:47:03,713.713 INFO    ] No existing commands found in stream
[2026-10-28 13:47:08,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:47:08,730.730 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-28 13:47:10,736.736 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:47:10,739.739 INFO    ] Checking for system updates...
[2026-10-28 13:47:10,775.775 INFO    ] 200
[2026-10-28 13:47:10,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:47:10,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:47:10,839.839 INFO    ] No update needed
[2026-10-28 13:47:10,842.842 INFO    ] Checking for camera pi updates...
[2026-10-28 13:47:10,875.875 INFO    ] 200
[2026-10-28 13:47:10,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:47:10,922.922 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:47:11,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:47:11,016.016 INFO    ] No camera update needed
[2026-10-28 13:47:11,018.018 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:47:11,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:47:11,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:47:11,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:47:13,074.074 INFO    ] ================================================
[2026-10-28 13:47:13,090.090 INFO    ] Launching Daemon at Wed Oct 28 13:47:13 IST 2026
[2026-10-28 13:47:13,101.101 INFO    ] ================================================
[2026-10-28 13:47:13,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:47:13
[2026-10-28 13:47:14,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:47:14,762.762 INFO    ] Initializing speech engine...
[2026-10-28 13:47:14,769.769 INFO    ] 2026-10-28 13:47:14
[2026-10-28 13:47:15,070.070 INFO    ] 2026-10-28 13:47:15
[2026-10-28 13:47:15,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:47:15,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:47:15,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:47:15,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:47:15,794.794 INFO    ] time= 28/10/2026 13:47:15
[2026-10-28 13:47:15,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:47:15,891.891 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:47:16,049.049 INFO    ] No existing commands found in stream
[2026-10-28 13:47:21,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:47:21,071.071 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-28 13:47:24,856.856 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:47:24,859.859 INFO    ] Checking for system updates...
[2026-10-28 13:47:24,896.896 INFO    ] 200
[2026-10-28 13:47:24,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:47:24,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:47:24,956.956 INFO    ] No update needed
[2026-10-28 13:47:24,959.959 INFO    ] Checking for camera pi updates...
[2026-10-28 13:47:24,994.994 INFO    ] 200
[2026-10-28 13:47:24,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:47:25,044.044 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:47:25,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:47:25,222.222 INFO    ] No camera update needed
[2026-10-28 13:47:25,224.224 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:47:25,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:47:25,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:47:25,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:47:27,278.278 INFO    ] ================================================
[2026-10-28 13:47:27,293.293 INFO    ] Launching Daemon at Wed Oct 28 13:47:27 IST 2026
[2026-10-28 13:47:27,305.305 INFO    ] ================================================
[2026-10-28 13:47:27,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:47:27
[2026-10-28 13:47:28,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:47:28,921.921 INFO    ] Initializing speech engine...
[2026-10-28 13:47:28,930.930 INFO    ] 2026-10-28 13:47:28
[2026-10-28 13:47:29,203.203 INFO    ] 2026-10-28 13:47:29
[2026-10-28 13:47:29,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:47:29,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:47:29,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:47:29,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:47:29,802.802 INFO    ] time= 28/10/2026 13:47:29
[2026-10-28 13:47:29,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:47:29,877.877 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:47:30,076.076 INFO    ] No existing commands found in stream
[2026-10-28 13:47:35,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:47:35,116.116 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-28 13:47:37,987.987 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:47:37,990.990 INFO    ] Checking for system updates...
[2026-10-28 13:47:38,031.031 INFO    ] 200
[2026-10-28 13:47:38,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:47:38,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:47:38,089.089 INFO    ] No update needed
[2026-10-28 13:47:38,091.091 INFO    ] Checking for camera pi updates...
[2026-10-28 13:47:38,128.128 INFO    ] 200
[2026-10-28 13:47:38,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:47:38,171.171 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:47:38,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:47:38,258.258 INFO    ] No camera update needed
[2026-10-28 13:47:38,260.260 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:47:38,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:47:38,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:47:38,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:47:40,314.314 INFO    ] ================================================
[2026-10-28 13:47:40,330.330 INFO    ] Launching Daemon at Wed Oct 28 13:47:40 IST 2026
[2026-10-28 13:47:40,341.341 INFO    ] ================================================
[2026-10-28 13:47:40,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:47:40
[2026-10-28 13:47:41,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:47:41,773.773 INFO    ] Initializing speech engine...
[2026-10-28 13:47:41,780.780 INFO    ] 2026-10-28 13:47:41
[2026-10-28 13:47:42,029.029 INFO    ] 2026-10-28 13:47:42
[2026-10-28 13:47:42,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:47:42,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:47:42,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:47:42,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:47:42,633.633 INFO    ] time= 28/10/2026 13:47:42
[2026-10-28 13:47:42,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:47:42,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:47:42,785.785 INFO    ] No existing commands found in stream
[2026-10-28 13:47:47,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:47:47,808.808 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 13:47:51,494.494 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:47:51,497.497 INFO    ] Checking for system updates...
[2026-10-28 13:47:51,536.536 INFO    ] 200
[2026-10-28 13:47:51,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:47:51,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:47:51,594.594 INFO    ] No update needed
[2026-10-28 13:47:51,597.597 INFO    ] Checking for camera pi updates...
[2026-10-28 13:47:51,630.630 INFO    ] 200
[2026-10-28 13:47:51,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:47:51,673.673 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:47:51,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:47:51,776.776 INFO    ] No camera update needed
[2026-10-28 13:47:51,779.779 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:47:51,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:47:51,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:47:51,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:47:53,834.834 INFO    ] ================================================
[2026-10-28 13:47:53,850.850 INFO    ] Launching Daemon at Wed Oct 28 13:47:53 IST 2026
[2026-10-28 13:47:53,861.861 INFO    ] ================================================
[2026-10-28 13:47:54,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:47:54
[2026-10-28 13:47:55,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:47:55,322.322 INFO    ] Initializing speech engine...
[2026-10-28 13:47:55,332.332 INFO    ] 2026-10-28 13:47:55
[2026-10-28 13:47:55,602.602 INFO    ] 2026-10-28 13:47:55
[2026-10-28 13:47:55,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:47:55,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:47:55,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:47:56,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:47:56,242.242 INFO    ] time= 28/10/2026 13:47:56
[2026-10-28 13:47:56,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:47:56,271.271 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:47:56,416.416 INFO    ] No existing commands found in stream
[2026-10-28 13:48:01,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:48:01,430.430 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-28 13:48:02,342.342 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:48:02,346.346 INFO    ] Checking for system updates...
[2026-10-28 13:48:02,402.402 INFO    ] 200
[2026-10-28 13:48:02,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:48:02,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:48:02,482.482 INFO    ] No update needed
[2026-10-28 13:48:02,484.484 INFO    ] Checking for camera pi updates...
[2026-10-28 13:48:02,529.529 INFO    ] 200
[2026-10-28 13:48:02,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:48:02,578.578 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:48:02,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:48:02,701.701 INFO    ] No camera update needed
[2026-10-28 13:48:02,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:48:02,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:48:02,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:48:02,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:48:04,760.760 INFO    ] ================================================
[2026-10-28 13:48:04,775.775 INFO    ] Launching Daemon at Wed Oct 28 13:48:04 IST 2026
[2026-10-28 13:48:04,786.786 INFO    ] ================================================
[2026-10-28 13:48:05,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:48:05
[2026-10-28 13:48:05,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:48:06,246.246 INFO    ] Initializing speech engine...
[2026-10-28 13:48:06,266.266 INFO    ] 2026-10-28 13:48:06
[2026-10-28 13:48:06,535.535 INFO    ] 2026-10-28 13:48:06
[2026-10-28 13:48:06,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:48:06,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:48:06,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:48:07,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:48:07,163.163 INFO    ] time= 28/10/2026 13:48:07
[2026-10-28 13:48:07,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:48:07,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:48:07,343.343 INFO    ] No existing commands found in stream
[2026-10-28 13:48:12,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:48:12,359.359 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-28 13:48:15,583.583 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:48:15,586.586 INFO    ] Checking for system updates...
[2026-10-28 13:48:15,622.622 INFO    ] 200
[2026-10-28 13:48:15,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:48:15,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:48:15,679.679 INFO    ] No update needed
[2026-10-28 13:48:15,682.682 INFO    ] Checking for camera pi updates...
[2026-10-28 13:48:15,718.718 INFO    ] 200
[2026-10-28 13:48:15,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:48:15,761.761 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:48:15,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:48:15,861.861 INFO    ] No camera update needed
[2026-10-28 13:48:15,864.864 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:48:15,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:48:15,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:48:15,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:48:17,917.917 INFO    ] ================================================
[2026-10-28 13:48:17,933.933 INFO    ] Launching Daemon at Wed Oct 28 13:48:17 IST 2026
[2026-10-28 13:48:17,944.944 INFO    ] ================================================
[2026-10-28 13:48:18,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:48:18
[2026-10-28 13:48:19,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:48:19,404.404 INFO    ] Initializing speech engine...
[2026-10-28 13:48:19,411.411 INFO    ] 2026-10-28 13:48:19
[2026-10-28 13:48:19,671.671 INFO    ] 2026-10-28 13:48:19
[2026-10-28 13:48:19,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:48:20,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:48:20,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:48:20,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:48:20,228.228 INFO    ] time= 28/10/2026 13:48:20
[2026-10-28 13:48:20,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:48:20,265.265 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:48:20,377.377 INFO    ] No existing commands found in stream
[2026-10-28 13:48:25,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:48:25,405.405 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 13:48:29,060.060 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:48:29,063.063 INFO    ] Checking for system updates...
[2026-10-28 13:48:29,101.101 INFO    ] 200
[2026-10-28 13:48:29,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:48:29,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:48:29,160.160 INFO    ] No update needed
[2026-10-28 13:48:29,163.163 INFO    ] Checking for camera pi updates...
[2026-10-28 13:48:29,197.197 INFO    ] 200
[2026-10-28 13:48:29,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:48:29,239.239 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:48:29,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:48:29,324.324 INFO    ] No camera update needed
[2026-10-28 13:48:29,327.327 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:48:29,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:48:29,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:48:29,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:48:31,383.383 INFO    ] ================================================
[2026-10-28 13:48:31,400.400 INFO    ] Launching Daemon at Wed Oct 28 13:48:31 IST 2026
[2026-10-28 13:48:31,413.413 INFO    ] ================================================
[2026-10-28 13:48:32,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:48:32
[2026-10-28 13:48:32,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:48:32,934.934 INFO    ] Initializing speech engine...
[2026-10-28 13:48:32,940.940 INFO    ] 2026-10-28 13:48:32
[2026-10-28 13:48:33,204.204 INFO    ] 2026-10-28 13:48:33
[2026-10-28 13:48:33,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:48:33,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:48:33,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:48:33,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:48:33,750.750 INFO    ] time= 28/10/2026 13:48:33
[2026-10-28 13:48:33,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:48:33,774.774 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:48:33,953.953 INFO    ] No existing commands found in stream
[2026-10-28 13:48:38,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:48:38,981.981 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-28 13:48:42,476.476 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:48:42,479.479 INFO    ] Checking for system updates...
[2026-10-28 13:48:42,514.514 INFO    ] 200
[2026-10-28 13:48:42,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:48:42,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:48:42,579.579 INFO    ] No update needed
[2026-10-28 13:48:42,581.581 INFO    ] Checking for camera pi updates...
[2026-10-28 13:48:42,614.614 INFO    ] 200
[2026-10-28 13:48:42,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:48:42,658.658 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:48:42,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:48:42,750.750 INFO    ] No camera update needed
[2026-10-28 13:48:42,752.752 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:48:42,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:48:42,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:48:42,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:48:44,805.805 INFO    ] ================================================
[2026-10-28 13:48:44,820.820 INFO    ] Launching Daemon at Wed Oct 28 13:48:44 IST 2026
[2026-10-28 13:48:44,831.831 INFO    ] ================================================
[2026-10-28 13:48:45,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:48:45
[2026-10-28 13:48:45,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:48:46,242.242 INFO    ] Initializing speech engine...
[2026-10-28 13:48:46,256.256 INFO    ] 2026-10-28 13:48:46
[2026-10-28 13:48:46,525.525 INFO    ] 2026-10-28 13:48:46
[2026-10-28 13:48:46,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:48:46,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:48:46,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:48:47,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:48:47,094.094 INFO    ] time= 28/10/2026 13:48:47
[2026-10-28 13:48:47,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:48:47,142.142 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:48:47,261.261 INFO    ] No existing commands found in stream
[2026-10-28 13:48:52,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:48:52,289.289 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-28 13:48:53,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:48:53,109.109 INFO    ] Checking for system updates...
[2026-10-28 13:48:53,144.144 INFO    ] 200
[2026-10-28 13:48:53,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:48:53,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:48:53,208.208 INFO    ] No update needed
[2026-10-28 13:48:53,210.210 INFO    ] Checking for camera pi updates...
[2026-10-28 13:48:53,244.244 INFO    ] 200
[2026-10-28 13:48:53,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:48:53,291.291 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:48:53,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:48:53,371.371 INFO    ] No camera update needed
[2026-10-28 13:48:53,374.374 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:48:53,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:48:53,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:48:53,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:48:55,427.427 INFO    ] ================================================
[2026-10-28 13:48:55,443.443 INFO    ] Launching Daemon at Wed Oct 28 13:48:55 IST 2026
[2026-10-28 13:48:55,454.454 INFO    ] ================================================
[2026-10-28 13:48:56,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:48:56
[2026-10-28 13:48:56,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:48:56,867.867 INFO    ] Initializing speech engine...
[2026-10-28 13:48:56,873.873 INFO    ] 2026-10-28 13:48:56
[2026-10-28 13:48:57,171.171 INFO    ] 2026-10-28 13:48:57
[2026-10-28 13:48:57,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:48:57,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:48:57,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:48:57,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:48:57,784.784 INFO    ] time= 28/10/2026 13:48:57
[2026-10-28 13:48:57,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:48:57,811.811 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:48:57,967.967 INFO    ] No existing commands found in stream
[2026-10-28 13:49:02,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:49:02,989.989 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 13:49:07,177.177 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:49:07,180.180 INFO    ] Checking for system updates...
[2026-10-28 13:49:07,217.217 INFO    ] 200
[2026-10-28 13:49:07,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:49:07,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:49:07,276.276 INFO    ] No update needed
[2026-10-28 13:49:07,279.279 INFO    ] Checking for camera pi updates...
[2026-10-28 13:49:07,317.317 INFO    ] 200
[2026-10-28 13:49:07,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:49:07,365.365 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:49:07,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:49:07,474.474 INFO    ] No camera update needed
[2026-10-28 13:49:07,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:49:07,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:49:07,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:49:07,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:49:09,531.531 INFO    ] ================================================
[2026-10-28 13:49:09,546.546 INFO    ] Launching Daemon at Wed Oct 28 13:49:09 IST 2026
[2026-10-28 13:49:09,557.557 INFO    ] ================================================
[2026-10-28 13:49:10,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:49:10
[2026-10-28 13:49:10,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:49:11,064.064 INFO    ] Initializing speech engine...
[2026-10-28 13:49:11,075.075 INFO    ] 2026-10-28 13:49:11
[2026-10-28 13:49:11,343.343 INFO    ] 2026-10-28 13:49:11
[2026-10-28 13:49:11,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:49:11,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:49:11,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:49:12,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:49:12,120.120 INFO    ] time= 28/10/2026 13:49:12
[2026-10-28 13:49:12,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:49:12,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:49:12,365.365 INFO    ] No existing commands found in stream
[2026-10-28 13:49:17,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:49:17,379.379 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 13:49:21,036.036 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:49:21,039.039 INFO    ] Checking for system updates...
[2026-10-28 13:49:21,075.075 INFO    ] 200
[2026-10-28 13:49:21,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:49:21,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:49:21,134.134 INFO    ] No update needed
[2026-10-28 13:49:21,137.137 INFO    ] Checking for camera pi updates...
[2026-10-28 13:49:21,174.174 INFO    ] 200
[2026-10-28 13:49:21,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:49:21,222.222 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:49:21,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:49:21,306.306 INFO    ] No camera update needed
[2026-10-28 13:49:21,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:49:21,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:49:21,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:49:21,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:49:23,364.364 INFO    ] ================================================
[2026-10-28 13:49:23,379.379 INFO    ] Launching Daemon at Wed Oct 28 13:49:23 IST 2026
[2026-10-28 13:49:23,390.390 INFO    ] ================================================
[2026-10-28 13:49:24,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:49:24
[2026-10-28 13:49:24,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:49:24,995.995 INFO    ] Initializing speech engine...
[2026-10-28 13:49:25,004.004 INFO    ] 2026-10-28 13:49:24
[2026-10-28 13:49:25,275.275 INFO    ] 2026-10-28 13:49:25
[2026-10-28 13:49:25,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:49:25,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:49:25,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:49:25,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:49:25,990.990 INFO    ] time= 28/10/2026 13:49:25
[2026-10-28 13:49:26,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:49:26,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:49:26,223.223 INFO    ] No existing commands found in stream
[2026-10-28 13:49:31,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:49:31,242.242 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-28 13:49:34,459.459 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:49:34,461.461 INFO    ] Checking for system updates...
[2026-10-28 13:49:34,501.501 INFO    ] 200
[2026-10-28 13:49:34,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:49:34,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:49:34,561.561 INFO    ] No update needed
[2026-10-28 13:49:34,564.564 INFO    ] Checking for camera pi updates...
[2026-10-28 13:49:34,599.599 INFO    ] 200
[2026-10-28 13:49:34,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:49:34,643.643 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:49:34,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:49:34,738.738 INFO    ] No camera update needed
[2026-10-28 13:49:34,740.740 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:49:34,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:49:34,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:49:34,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:49:36,795.795 INFO    ] ================================================
[2026-10-28 13:49:36,810.810 INFO    ] Launching Daemon at Wed Oct 28 13:49:36 IST 2026
[2026-10-28 13:49:36,821.821 INFO    ] ================================================
[2026-10-28 13:49:37,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:49:37
[2026-10-28 13:49:38,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:49:38,427.427 INFO    ] Initializing speech engine...
[2026-10-28 13:49:38,439.439 INFO    ] 2026-10-28 13:49:38
[2026-10-28 13:49:38,709.709 INFO    ] 2026-10-28 13:49:38
[2026-10-28 13:49:38,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:49:39,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:49:39,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:49:39,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:49:39,473.473 INFO    ] time= 28/10/2026 13:49:39
[2026-10-28 13:49:39,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:49:39,572.572 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:49:39,714.714 INFO    ] No existing commands found in stream
[2026-10-28 13:49:44,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:49:44,733.733 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-28 13:49:46,178.178 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:49:46,181.181 INFO    ] Checking for system updates...
[2026-10-28 13:49:46,219.219 INFO    ] 200
[2026-10-28 13:49:46,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:49:46,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:49:46,277.277 INFO    ] No update needed
[2026-10-28 13:49:46,280.280 INFO    ] Checking for camera pi updates...
[2026-10-28 13:49:46,317.317 INFO    ] 200
[2026-10-28 13:49:46,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:49:46,361.361 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:49:46,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:49:46,464.464 INFO    ] No camera update needed
[2026-10-28 13:49:46,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:49:46,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:49:46,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:49:46,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:49:48,522.522 INFO    ] ================================================
[2026-10-28 13:49:48,537.537 INFO    ] Launching Daemon at Wed Oct 28 13:49:48 IST 2026
[2026-10-28 13:49:48,548.548 INFO    ] ================================================
[2026-10-28 13:49:49,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:49:49
[2026-10-28 13:49:49,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:49:50,011.011 INFO    ] Initializing speech engine...
[2026-10-28 13:49:50,017.017 INFO    ] 2026-10-28 13:49:50
[2026-10-28 13:49:50,278.278 INFO    ] 2026-10-28 13:49:50
[2026-10-28 13:49:50,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:49:50,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:49:50,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:49:50,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:49:50,840.840 INFO    ] time= 28/10/2026 13:49:50
[2026-10-28 13:49:50,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:49:50,875.875 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:49:51,018.018 INFO    ] No existing commands found in stream
[2026-10-28 13:49:56,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:49:56,051.051 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 13:49:57,472.472 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:49:57,476.476 INFO    ] Checking for system updates...
[2026-10-28 13:49:57,513.513 INFO    ] 200
[2026-10-28 13:49:57,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:49:57,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:49:57,572.572 INFO    ] No update needed
[2026-10-28 13:49:57,575.575 INFO    ] Checking for camera pi updates...
[2026-10-28 13:49:57,609.609 INFO    ] 200
[2026-10-28 13:49:57,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:49:57,654.654 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:49:57,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:49:57,760.760 INFO    ] No camera update needed
[2026-10-28 13:49:57,762.762 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:49:57,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:49:57,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:49:57,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:49:59,819.819 INFO    ] ================================================
[2026-10-28 13:49:59,834.834 INFO    ] Launching Daemon at Wed Oct 28 13:49:59 IST 2026
[2026-10-28 13:49:59,845.845 INFO    ] ================================================
[2026-10-28 13:50:00,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:50:00
[2026-10-28 13:50:01,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:50:02,025.025 INFO    ] Initializing speech engine...
[2026-10-28 13:50:02,031.031 INFO    ] 2026-10-28 13:50:02
[2026-10-28 13:50:02,416.416 INFO    ] 2026-10-28 13:50:02
[2026-10-28 13:50:02,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:50:02,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:50:02,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:50:02,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:50:02,876.876 INFO    ] time= 28/10/2026 13:50:02
[2026-10-28 13:50:02,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:50:02,898.898 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:50:03,016.016 INFO    ] No existing commands found in stream
[2026-10-28 13:50:08,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:50:08,040.040 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-28 13:50:10,825.825 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:50:10,828.828 INFO    ] Checking for system updates...
[2026-10-28 13:50:10,863.863 INFO    ] 200
[2026-10-28 13:50:10,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:50:10,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:50:10,920.920 INFO    ] No update needed
[2026-10-28 13:50:10,923.923 INFO    ] Checking for camera pi updates...
[2026-10-28 13:50:10,957.957 INFO    ] 200
[2026-10-28 13:50:10,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:50:11,004.004 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:50:11,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:50:11,092.092 INFO    ] No camera update needed
[2026-10-28 13:50:11,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:50:11,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:50:11,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:50:11,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:50:13,149.149 INFO    ] ================================================
[2026-10-28 13:50:13,165.165 INFO    ] Launching Daemon at Wed Oct 28 13:50:13 IST 2026
[2026-10-28 13:50:13,176.176 INFO    ] ================================================
[2026-10-28 13:50:13,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:50:13
[2026-10-28 13:50:14,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:50:14,621.621 INFO    ] Initializing speech engine...
[2026-10-28 13:50:14,630.630 INFO    ] 2026-10-28 13:50:14
[2026-10-28 13:50:14,877.877 INFO    ] 2026-10-28 13:50:14
[2026-10-28 13:50:14,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:50:15,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:50:15,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:50:15,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:50:15,435.435 INFO    ] time= 28/10/2026 13:50:15
[2026-10-28 13:50:15,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:50:15,475.475 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:50:15,643.643 INFO    ] No existing commands found in stream
[2026-10-28 13:50:20,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:50:20,676.676 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-28 13:50:22,626.626 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:50:22,629.629 INFO    ] Checking for system updates...
[2026-10-28 13:50:22,664.664 INFO    ] 200
[2026-10-28 13:50:22,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:50:22,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:50:22,723.723 INFO    ] No update needed
[2026-10-28 13:50:22,729.729 INFO    ] Checking for camera pi updates...
[2026-10-28 13:50:22,764.764 INFO    ] 200
[2026-10-28 13:50:22,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:50:22,807.807 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:50:22,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:50:22,907.907 INFO    ] No camera update needed
[2026-10-28 13:50:22,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:50:22,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:50:22,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:50:22,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:50:24,963.963 INFO    ] ================================================
[2026-10-28 13:50:24,979.979 INFO    ] Launching Daemon at Wed Oct 28 13:50:24 IST 2026
[2026-10-28 13:50:24,990.990 INFO    ] ================================================
[2026-10-28 13:50:25,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:50:25
[2026-10-28 13:50:26,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:50:26,482.482 INFO    ] Initializing speech engine...
[2026-10-28 13:50:26,491.491 INFO    ] 2026-10-28 13:50:26
[2026-10-28 13:50:26,749.749 INFO    ] 2026-10-28 13:50:26
[2026-10-28 13:50:26,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:50:27,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:50:27,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:50:27,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:50:27,304.304 INFO    ] time= 28/10/2026 13:50:27
[2026-10-28 13:50:27,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:50:27,339.339 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:50:27,478.478 INFO    ] No existing commands found in stream
[2026-10-28 13:50:32,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:50:32,515.515 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-28 13:50:35,180.180 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:50:35,183.183 INFO    ] Checking for system updates...
[2026-10-28 13:50:35,220.220 INFO    ] 200
[2026-10-28 13:50:35,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:50:35,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:50:35,278.278 INFO    ] No update needed
[2026-10-28 13:50:35,280.280 INFO    ] Checking for camera pi updates...
[2026-10-28 13:50:35,315.315 INFO    ] 200
[2026-10-28 13:50:35,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:50:35,362.362 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:50:35,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:50:35,458.458 INFO    ] No camera update needed
[2026-10-28 13:50:35,460.460 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:50:35,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:50:35,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:50:35,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:50:37,514.514 INFO    ] ================================================
[2026-10-28 13:50:37,529.529 INFO    ] Launching Daemon at Wed Oct 28 13:50:37 IST 2026
[2026-10-28 13:50:37,539.539 INFO    ] ================================================
[2026-10-28 13:50:38,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:50:38
[2026-10-28 13:50:38,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:50:38,989.989 INFO    ] Initializing speech engine...
[2026-10-28 13:50:38,998.998 INFO    ] 2026-10-28 13:50:38
[2026-10-28 13:50:39,252.252 INFO    ] 2026-10-28 13:50:39
[2026-10-28 13:50:39,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:50:39,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:50:39,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:50:39,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:50:40,001.001 INFO    ] time= 28/10/2026 13:50:39
[2026-10-28 13:50:40,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:50:40,106.106 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:50:40,231.231 INFO    ] No existing commands found in stream
[2026-10-28 13:50:45,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:50:45,252.252 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 13:50:48,067.067 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:50:48,070.070 INFO    ] Checking for system updates...
[2026-10-28 13:50:48,105.105 INFO    ] 200
[2026-10-28 13:50:48,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:50:48,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:50:48,161.161 INFO    ] No update needed
[2026-10-28 13:50:48,164.164 INFO    ] Checking for camera pi updates...
[2026-10-28 13:50:48,196.196 INFO    ] 200
[2026-10-28 13:50:48,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:50:48,239.239 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:50:48,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:50:48,326.326 INFO    ] No camera update needed
[2026-10-28 13:50:48,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:50:48,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:50:48,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:50:48,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:50:50,382.382 INFO    ] ================================================
[2026-10-28 13:50:50,397.397 INFO    ] Launching Daemon at Wed Oct 28 13:50:50 IST 2026
[2026-10-28 13:50:50,407.407 INFO    ] ================================================
[2026-10-28 13:50:50,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:50:50
[2026-10-28 13:50:51,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:50:51,866.866 INFO    ] Initializing speech engine...
[2026-10-28 13:50:51,872.872 INFO    ] 2026-10-28 13:50:51
[2026-10-28 13:50:52,132.132 INFO    ] 2026-10-28 13:50:52
[2026-10-28 13:50:52,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:50:52,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:50:52,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:50:52,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:50:52,834.834 INFO    ] time= 28/10/2026 13:50:52
[2026-10-28 13:50:52,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:50:52,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:50:53,069.069 INFO    ] No existing commands found in stream
[2026-10-28 13:50:58,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:50:58,108.108 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 13:51:00,579.579 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:51:00,582.582 INFO    ] Checking for system updates...
[2026-10-28 13:51:00,625.625 INFO    ] 200
[2026-10-28 13:51:00,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:51:00,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:51:00,688.688 INFO    ] No update needed
[2026-10-28 13:51:00,690.690 INFO    ] Checking for camera pi updates...
[2026-10-28 13:51:00,726.726 INFO    ] 200
[2026-10-28 13:51:00,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:51:00,772.772 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:51:00,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:51:00,872.872 INFO    ] No camera update needed
[2026-10-28 13:51:00,875.875 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:51:00,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:51:00,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:51:00,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:51:02,947.947 INFO    ] ================================================
[2026-10-28 13:51:02,969.969 INFO    ] Launching Daemon at Wed Oct 28 13:51:02 IST 2026
[2026-10-28 13:51:03,989.989 INFO    ] ================================================
[2026-10-28 13:51:03,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:51:03
[2026-10-28 13:51:04,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:51:04,513.513 INFO    ] Initializing speech engine...
[2026-10-28 13:51:04,527.527 INFO    ] 2026-10-28 13:51:04
[2026-10-28 13:51:04,811.811 INFO    ] 2026-10-28 13:51:04
[2026-10-28 13:51:04,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:51:05,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:51:05,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:51:05,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:51:05,436.436 INFO    ] time= 28/10/2026 13:51:05
[2026-10-28 13:51:05,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:51:05,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:51:05,597.597 INFO    ] No existing commands found in stream
[2026-10-28 13:51:10,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:51:10,619.619 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-28 13:51:13,943.943 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:51:13,946.946 INFO    ] Checking for system updates...
[2026-10-28 13:51:13,981.981 INFO    ] 200
[2026-10-28 13:51:13,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:51:14,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:51:14,038.038 INFO    ] No update needed
[2026-10-28 13:51:14,040.040 INFO    ] Checking for camera pi updates...
[2026-10-28 13:51:14,073.073 INFO    ] 200
[2026-10-28 13:51:14,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:51:14,116.116 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:51:14,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:51:14,227.227 INFO    ] No camera update needed
[2026-10-28 13:51:14,229.229 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:51:14,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:51:14,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:51:14,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:51:16,282.282 INFO    ] ================================================
[2026-10-28 13:51:16,297.297 INFO    ] Launching Daemon at Wed Oct 28 13:51:16 IST 2026
[2026-10-28 13:51:16,308.308 INFO    ] ================================================
[2026-10-28 13:51:16,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:51:16
[2026-10-28 13:51:17,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:51:17,756.756 INFO    ] Initializing speech engine...
[2026-10-28 13:51:17,769.769 INFO    ] 2026-10-28 13:51:17
[2026-10-28 13:51:18,055.055 INFO    ] 2026-10-28 13:51:18
[2026-10-28 13:51:18,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:51:18,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:51:18,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:51:18,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:51:18,679.679 INFO    ] time= 28/10/2026 13:51:18
[2026-10-28 13:51:18,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:51:18,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:51:18,850.850 INFO    ] No existing commands found in stream
[2026-10-28 13:51:23,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:51:23,869.869 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-28 13:51:27,255.255 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:51:27,258.258 INFO    ] Checking for system updates...
[2026-10-28 13:51:27,294.294 INFO    ] 200
[2026-10-28 13:51:27,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:51:27,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:51:27,351.351 INFO    ] No update needed
[2026-10-28 13:51:27,354.354 INFO    ] Checking for camera pi updates...
[2026-10-28 13:51:27,387.387 INFO    ] 200
[2026-10-28 13:51:27,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:51:27,434.434 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:51:27,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:51:27,515.515 INFO    ] No camera update needed
[2026-10-28 13:51:27,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:51:27,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:51:27,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:51:27,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:51:29,570.570 INFO    ] ================================================
[2026-10-28 13:51:29,586.586 INFO    ] Launching Daemon at Wed Oct 28 13:51:29 IST 2026
[2026-10-28 13:51:29,597.597 INFO    ] ================================================
[2026-10-28 13:51:30,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:51:30
[2026-10-28 13:51:30,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:51:31,200.200 INFO    ] Initializing speech engine...
[2026-10-28 13:51:31,214.214 INFO    ] 2026-10-28 13:51:31
[2026-10-28 13:51:31,503.503 INFO    ] 2026-10-28 13:51:31
[2026-10-28 13:51:31,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:51:31,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:51:31,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:51:32,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:51:32,262.262 INFO    ] time= 28/10/2026 13:51:32
[2026-10-28 13:51:32,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:51:32,341.341 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:51:32,506.506 INFO    ] No existing commands found in stream
[2026-10-28 13:51:37,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:51:37,522.522 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 13:51:39,138.138 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:51:39,141.141 INFO    ] Checking for system updates...
[2026-10-28 13:51:39,177.177 INFO    ] 200
[2026-10-28 13:51:39,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:51:39,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:51:39,233.233 INFO    ] No update needed
[2026-10-28 13:51:39,235.235 INFO    ] Checking for camera pi updates...
[2026-10-28 13:51:39,268.268 INFO    ] 200
[2026-10-28 13:51:39,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:51:39,314.314 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:51:39,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:51:39,500.500 INFO    ] No camera update needed
[2026-10-28 13:51:39,502.502 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:51:39,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:51:39,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:51:39,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:51:41,559.559 INFO    ] ================================================
[2026-10-28 13:51:41,579.579 INFO    ] Launching Daemon at Wed Oct 28 13:51:41 IST 2026
[2026-10-28 13:51:41,591.591 INFO    ] ================================================
[2026-10-28 13:51:42,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:51:42
[2026-10-28 13:51:42,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:51:43,120.120 INFO    ] Initializing speech engine...
[2026-10-28 13:51:43,126.126 INFO    ] 2026-10-28 13:51:43
[2026-10-28 13:51:43,417.417 INFO    ] 2026-10-28 13:51:43
[2026-10-28 13:51:43,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:51:43,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:51:43,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:51:44,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:51:44,034.034 INFO    ] time= 28/10/2026 13:51:44
[2026-10-28 13:51:44,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:51:44,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:51:44,205.205 INFO    ] No existing commands found in stream
[2026-10-28 13:51:49,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:51:49,229.229 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 13:51:51,217.217 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:51:51,220.220 INFO    ] Checking for system updates...
[2026-10-28 13:51:51,256.256 INFO    ] 200
[2026-10-28 13:51:51,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:51:51,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:51:51,313.313 INFO    ] No update needed
[2026-10-28 13:51:51,316.316 INFO    ] Checking for camera pi updates...
[2026-10-28 13:51:51,360.360 INFO    ] 200
[2026-10-28 13:51:51,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:51:51,404.404 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:51:51,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:51:51,523.523 INFO    ] No camera update needed
[2026-10-28 13:51:51,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:51:51,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:51:51,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:51:51,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:51:53,578.578 INFO    ] ================================================
[2026-10-28 13:51:53,594.594 INFO    ] Launching Daemon at Wed Oct 28 13:51:53 IST 2026
[2026-10-28 13:51:53,605.605 INFO    ] ================================================
[2026-10-28 13:51:54,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:51:54
[2026-10-28 13:51:54,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:51:55,066.066 INFO    ] Initializing speech engine...
[2026-10-28 13:51:55,086.086 INFO    ] 2026-10-28 13:51:55
[2026-10-28 13:51:55,353.353 INFO    ] 2026-10-28 13:51:55
[2026-10-28 13:51:55,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:51:55,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:51:55,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:51:55,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:51:55,930.930 INFO    ] time= 28/10/2026 13:51:55
[2026-10-28 13:51:55,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:51:55,977.977 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:51:56,123.123 INFO    ] No existing commands found in stream
[2026-10-28 13:52:01,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:52:01,157.157 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-28 13:52:05,739.739 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:52:05,742.742 INFO    ] Checking for system updates...
[2026-10-28 13:52:05,779.779 INFO    ] 200
[2026-10-28 13:52:05,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:52:05,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:52:05,838.838 INFO    ] No update needed
[2026-10-28 13:52:05,841.841 INFO    ] Checking for camera pi updates...
[2026-10-28 13:52:05,876.876 INFO    ] 200
[2026-10-28 13:52:05,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:52:05,920.920 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:52:05,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:52:05,998.998 INFO    ] No camera update needed
[2026-10-28 13:52:06,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:52:06,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:52:06,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:52:06,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:52:08,057.057 INFO    ] ================================================
[2026-10-28 13:52:08,073.073 INFO    ] Launching Daemon at Wed Oct 28 13:52:08 IST 2026
[2026-10-28 13:52:08,084.084 INFO    ] ================================================
[2026-10-28 13:52:08,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:52:08
[2026-10-28 13:52:09,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:52:09,707.707 INFO    ] Initializing speech engine...
[2026-10-28 13:52:09,721.721 INFO    ] 2026-10-28 13:52:09
[2026-10-28 13:52:09,993.993 INFO    ] 2026-10-28 13:52:09
[2026-10-28 13:52:10,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:52:10,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:52:10,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:52:10,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:52:10,815.815 INFO    ] time= 28/10/2026 13:52:10
[2026-10-28 13:52:10,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:52:10,916.916 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:52:11,110.110 INFO    ] No existing commands found in stream
[2026-10-28 13:52:16,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:52:16,144.144 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-28 13:52:18,098.098 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:52:18,101.101 INFO    ] Checking for system updates...
[2026-10-28 13:52:18,140.140 INFO    ] 200
[2026-10-28 13:52:18,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:52:18,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:52:18,198.198 INFO    ] No update needed
[2026-10-28 13:52:18,201.201 INFO    ] Checking for camera pi updates...
[2026-10-28 13:52:18,235.235 INFO    ] 200
[2026-10-28 13:52:18,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:52:18,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:52:18,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:52:18,375.375 INFO    ] No camera update needed
[2026-10-28 13:52:18,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:52:18,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:52:18,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:52:18,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:52:20,431.431 INFO    ] ================================================
[2026-10-28 13:52:20,447.447 INFO    ] Launching Daemon at Wed Oct 28 13:52:20 IST 2026
[2026-10-28 13:52:20,457.457 INFO    ] ================================================
[2026-10-28 13:52:21,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:52:21
[2026-10-28 13:52:21,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:52:21,910.910 INFO    ] Initializing speech engine...
[2026-10-28 13:52:21,926.926 INFO    ] 2026-10-28 13:52:21
[2026-10-28 13:52:22,179.179 INFO    ] 2026-10-28 13:52:22
[2026-10-28 13:52:22,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:52:22,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:52:22,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:52:22,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:52:22,776.776 INFO    ] time= 28/10/2026 13:52:22
[2026-10-28 13:52:22,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:52:22,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:52:22,923.923 INFO    ] No existing commands found in stream
[2026-10-28 13:52:27,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:52:27,941.941 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 13:52:30,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:52:30,470.470 INFO    ] Checking for system updates...
[2026-10-28 13:52:30,507.507 INFO    ] 200
[2026-10-28 13:52:30,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:52:30,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:52:30,566.566 INFO    ] No update needed
[2026-10-28 13:52:30,568.568 INFO    ] Checking for camera pi updates...
[2026-10-28 13:52:30,602.602 INFO    ] 200
[2026-10-28 13:52:30,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:52:30,646.646 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:52:30,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:52:30,734.734 INFO    ] No camera update needed
[2026-10-28 13:52:30,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:52:30,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:52:30,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:52:30,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:52:32,792.792 INFO    ] ================================================
[2026-10-28 13:52:32,809.809 INFO    ] Launching Daemon at Wed Oct 28 13:52:32 IST 2026
[2026-10-28 13:52:32,821.821 INFO    ] ================================================
[2026-10-28 13:52:33,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:52:33
[2026-10-28 13:52:34,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:52:34,507.507 INFO    ] Initializing speech engine...
[2026-10-28 13:52:34,512.512 INFO    ] 2026-10-28 13:52:34
[2026-10-28 13:52:34,797.797 INFO    ] 2026-10-28 13:52:34
[2026-10-28 13:52:34,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:52:35,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:52:35,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:52:35,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:52:35,423.423 INFO    ] time= 28/10/2026 13:52:35
[2026-10-28 13:52:35,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:52:35,466.466 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:52:35,612.612 INFO    ] No existing commands found in stream
[2026-10-28 13:52:40,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:52:40,637.637 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-28 13:52:41,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:52:41,848.848 INFO    ] Checking for system updates...
[2026-10-28 13:52:41,885.885 INFO    ] 200
[2026-10-28 13:52:41,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:52:41,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:52:41,941.941 INFO    ] No update needed
[2026-10-28 13:52:41,944.944 INFO    ] Checking for camera pi updates...
[2026-10-28 13:52:41,977.977 INFO    ] 200
[2026-10-28 13:52:41,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:52:42,020.020 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:52:42,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:52:42,123.123 INFO    ] No camera update needed
[2026-10-28 13:52:42,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:52:42,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:52:42,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:52:42,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:52:44,177.177 INFO    ] ================================================
[2026-10-28 13:52:44,192.192 INFO    ] Launching Daemon at Wed Oct 28 13:52:44 IST 2026
[2026-10-28 13:52:44,203.203 INFO    ] ================================================
[2026-10-28 13:52:44,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:52:44
[2026-10-28 13:52:45,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:52:45,675.675 INFO    ] Initializing speech engine...
[2026-10-28 13:52:45,683.683 INFO    ] 2026-10-28 13:52:45
[2026-10-28 13:52:45,952.952 INFO    ] 2026-10-28 13:52:45
[2026-10-28 13:52:46,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:52:46,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:52:46,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:52:46,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:52:46,505.505 INFO    ] time= 28/10/2026 13:52:46
[2026-10-28 13:52:46,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:52:46,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:52:46,682.682 INFO    ] No existing commands found in stream
[2026-10-28 13:52:51,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:52:51,706.706 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-28 13:52:56,164.164 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:52:56,167.167 INFO    ] Checking for system updates...
[2026-10-28 13:52:56,202.202 INFO    ] 200
[2026-10-28 13:52:56,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:52:56,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:52:56,267.267 INFO    ] No update needed
[2026-10-28 13:52:56,269.269 INFO    ] Checking for camera pi updates...
[2026-10-28 13:52:56,302.302 INFO    ] 200
[2026-10-28 13:52:56,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:52:56,346.346 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:52:56,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:52:56,435.435 INFO    ] No camera update needed
[2026-10-28 13:52:56,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:52:56,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:52:56,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:52:56,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:52:58,492.492 INFO    ] ================================================
[2026-10-28 13:52:58,507.507 INFO    ] Launching Daemon at Wed Oct 28 13:52:58 IST 2026
[2026-10-28 13:52:58,518.518 INFO    ] ================================================
[2026-10-28 13:52:59,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:52:59
[2026-10-28 13:52:59,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:52:59,927.927 INFO    ] Initializing speech engine...
[2026-10-28 13:52:59,940.940 INFO    ] 2026-10-28 13:52:59
[2026-10-28 13:53:00,224.224 INFO    ] 2026-10-28 13:53:00
[2026-10-28 13:53:00,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:53:00,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:53:00,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:53:00,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:53:00,858.858 INFO    ] time= 28/10/2026 13:53:00
[2026-10-28 13:53:00,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:53:00,881.881 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:53:01,058.058 INFO    ] No existing commands found in stream
[2026-10-28 13:53:06,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:53:06,086.086 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-28 13:53:07,656.656 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:53:07,659.659 INFO    ] Checking for system updates...
[2026-10-28 13:53:07,697.697 INFO    ] 200
[2026-10-28 13:53:07,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:53:07,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:53:07,755.755 INFO    ] No update needed
[2026-10-28 13:53:07,758.758 INFO    ] Checking for camera pi updates...
[2026-10-28 13:53:07,792.792 INFO    ] 200
[2026-10-28 13:53:07,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:53:07,836.836 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:53:07,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:53:07,942.942 INFO    ] No camera update needed
[2026-10-28 13:53:07,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:53:07,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:53:07,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:53:07,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:53:10,999.999 INFO    ] ================================================
[2026-10-28 13:53:10,014.014 INFO    ] Launching Daemon at Wed Oct 28 13:53:10 IST 2026
[2026-10-28 13:53:10,025.025 INFO    ] ================================================
[2026-10-28 13:53:10,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:53:10
[2026-10-28 13:53:11,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:53:11,560.560 INFO    ] Initializing speech engine...
[2026-10-28 13:53:11,575.575 INFO    ] 2026-10-28 13:53:11
[2026-10-28 13:53:11,839.839 INFO    ] 2026-10-28 13:53:11
[2026-10-28 13:53:11,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:53:12,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:53:12,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:53:12,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:53:12,447.447 INFO    ] time= 28/10/2026 13:53:12
[2026-10-28 13:53:12,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:53:12,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:53:12,652.652 INFO    ] No existing commands found in stream
[2026-10-28 13:53:17,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:53:17,685.685 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-28 13:53:21,744.744 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:53:21,747.747 INFO    ] Checking for system updates...
[2026-10-28 13:53:21,784.784 INFO    ] 200
[2026-10-28 13:53:21,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:53:21,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:53:21,846.846 INFO    ] No update needed
[2026-10-28 13:53:21,849.849 INFO    ] Checking for camera pi updates...
[2026-10-28 13:53:21,886.886 INFO    ] 200
[2026-10-28 13:53:21,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:53:21,929.929 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:53:22,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:53:22,017.017 INFO    ] No camera update needed
[2026-10-28 13:53:22,019.019 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:53:22,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:53:22,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:53:22,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:53:24,072.072 INFO    ] ================================================
[2026-10-28 13:53:24,086.086 INFO    ] Launching Daemon at Wed Oct 28 13:53:24 IST 2026
[2026-10-28 13:53:24,097.097 INFO    ] ================================================
[2026-10-28 13:53:24,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:53:24
[2026-10-28 13:53:25,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:53:25,529.529 INFO    ] Initializing speech engine...
[2026-10-28 13:53:25,539.539 INFO    ] 2026-10-28 13:53:25
[2026-10-28 13:53:25,798.798 INFO    ] 2026-10-28 13:53:25
[2026-10-28 13:53:25,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:53:26,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:53:26,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:53:26,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:53:26,420.420 INFO    ] time= 28/10/2026 13:53:26
[2026-10-28 13:53:26,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:53:26,439.439 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:53:26,588.588 INFO    ] No existing commands found in stream
[2026-10-28 13:53:31,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:53:31,616.616 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-28 13:53:32,659.659 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:53:32,661.661 INFO    ] Checking for system updates...
[2026-10-28 13:53:32,697.697 INFO    ] 200
[2026-10-28 13:53:32,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:53:32,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:53:32,759.759 INFO    ] No update needed
[2026-10-28 13:53:32,762.762 INFO    ] Checking for camera pi updates...
[2026-10-28 13:53:32,797.797 INFO    ] 200
[2026-10-28 13:53:32,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:53:32,839.839 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:53:32,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:53:32,991.991 INFO    ] No camera update needed
[2026-10-28 13:53:32,993.993 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:53:32,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:53:33,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:53:33,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:53:35,049.049 INFO    ] ================================================
[2026-10-28 13:53:35,063.063 INFO    ] Launching Daemon at Wed Oct 28 13:53:35 IST 2026
[2026-10-28 13:53:35,074.074 INFO    ] ================================================
[2026-10-28 13:53:35,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:53:35
[2026-10-28 13:53:36,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:53:36,484.484 INFO    ] Initializing speech engine...
[2026-10-28 13:53:36,502.502 INFO    ] 2026-10-28 13:53:36
[2026-10-28 13:53:36,752.752 INFO    ] 2026-10-28 13:53:36
[2026-10-28 13:53:36,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:53:37,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:53:37,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:53:37,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:53:37,341.341 INFO    ] time= 28/10/2026 13:53:37
[2026-10-28 13:53:37,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:53:37,378.378 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:53:37,522.522 INFO    ] No existing commands found in stream
[2026-10-28 13:53:42,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:53:42,556.556 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-28 13:53:43,941.941 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:53:43,944.944 INFO    ] Checking for system updates...
[2026-10-28 13:53:43,980.980 INFO    ] 200
[2026-10-28 13:53:43,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:53:44,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:53:44,038.038 INFO    ] No update needed
[2026-10-28 13:53:44,041.041 INFO    ] Checking for camera pi updates...
[2026-10-28 13:53:44,075.075 INFO    ] 200
[2026-10-28 13:53:44,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:53:44,121.121 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:53:44,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:53:44,286.286 INFO    ] No camera update needed
[2026-10-28 13:53:44,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:53:44,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:53:44,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:53:44,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:53:46,343.343 INFO    ] ================================================
[2026-10-28 13:53:46,358.358 INFO    ] Launching Daemon at Wed Oct 28 13:53:46 IST 2026
[2026-10-28 13:53:46,369.369 INFO    ] ================================================
[2026-10-28 13:53:46,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:53:46
[2026-10-28 13:53:47,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:53:47,883.883 INFO    ] Initializing speech engine...
[2026-10-28 13:53:47,906.906 INFO    ] 2026-10-28 13:53:47
[2026-10-28 13:53:48,170.170 INFO    ] 2026-10-28 13:53:48
[2026-10-28 13:53:48,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:53:48,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:53:48,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:53:48,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:53:48,742.742 INFO    ] time= 28/10/2026 13:53:48
[2026-10-28 13:53:48,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:53:48,790.790 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:53:48,928.928 INFO    ] No existing commands found in stream
[2026-10-28 13:53:53,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:53:53,962.962 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-28 13:53:55,947.947 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:53:55,950.950 INFO    ] Checking for system updates...
[2026-10-28 13:53:55,986.986 INFO    ] 200
[2026-10-28 13:53:55,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:53:56,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:53:56,044.044 INFO    ] No update needed
[2026-10-28 13:53:56,047.047 INFO    ] Checking for camera pi updates...
[2026-10-28 13:53:56,083.083 INFO    ] 200
[2026-10-28 13:53:56,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:53:56,131.131 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:53:56,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:53:56,234.234 INFO    ] No camera update needed
[2026-10-28 13:53:56,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:53:56,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:53:56,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:53:56,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:53:58,291.291 INFO    ] ================================================
[2026-10-28 13:53:58,306.306 INFO    ] Launching Daemon at Wed Oct 28 13:53:58 IST 2026
[2026-10-28 13:53:58,316.316 INFO    ] ================================================
[2026-10-28 13:53:58,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:53:58
[2026-10-28 13:53:59,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:53:59,766.766 INFO    ] Initializing speech engine...
[2026-10-28 13:53:59,773.773 INFO    ] 2026-10-28 13:53:59
[2026-10-28 13:54:00,033.033 INFO    ] 2026-10-28 13:54:00
[2026-10-28 13:54:00,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:54:00,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:54:00,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:54:00,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:54:00,734.734 INFO    ] time= 28/10/2026 13:54:00
[2026-10-28 13:54:00,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:54:00,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:54:01,009.009 INFO    ] No existing commands found in stream
[2026-10-28 13:54:06,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:54:06,027.027 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-28 13:54:09,419.419 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:54:09,422.422 INFO    ] Checking for system updates...
[2026-10-28 13:54:09,460.460 INFO    ] 200
[2026-10-28 13:54:09,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:54:09,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:54:09,522.522 INFO    ] No update needed
[2026-10-28 13:54:09,524.524 INFO    ] Checking for camera pi updates...
[2026-10-28 13:54:09,558.558 INFO    ] 200
[2026-10-28 13:54:09,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:54:09,604.604 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:54:09,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:54:09,704.704 INFO    ] No camera update needed
[2026-10-28 13:54:09,706.706 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:54:09,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:54:09,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:54:09,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:54:11,760.760 INFO    ] ================================================
[2026-10-28 13:54:11,776.776 INFO    ] Launching Daemon at Wed Oct 28 13:54:11 IST 2026
[2026-10-28 13:54:11,786.786 INFO    ] ================================================
[2026-10-28 13:54:12,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:54:12
[2026-10-28 13:54:12,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:54:13,249.249 INFO    ] Initializing speech engine...
[2026-10-28 13:54:13,258.258 INFO    ] 2026-10-28 13:54:13
[2026-10-28 13:54:13,522.522 INFO    ] 2026-10-28 13:54:13
[2026-10-28 13:54:13,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:54:13,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:54:13,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:54:14,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:54:14,062.062 INFO    ] time= 28/10/2026 13:54:14
[2026-10-28 13:54:14,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:54:14,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:54:14,264.264 INFO    ] No existing commands found in stream
[2026-10-28 13:54:19,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:54:19,292.292 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 13:54:20,146.146 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:54:20,149.149 INFO    ] Checking for system updates...
[2026-10-28 13:54:20,184.184 INFO    ] 200
[2026-10-28 13:54:20,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:54:20,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:54:20,241.241 INFO    ] No update needed
[2026-10-28 13:54:20,243.243 INFO    ] Checking for camera pi updates...
[2026-10-28 13:54:20,280.280 INFO    ] 200
[2026-10-28 13:54:20,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:54:20,322.322 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:54:20,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:54:20,408.408 INFO    ] No camera update needed
[2026-10-28 13:54:20,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:54:20,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:54:20,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:54:20,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:54:22,463.463 INFO    ] ================================================
[2026-10-28 13:54:22,479.479 INFO    ] Launching Daemon at Wed Oct 28 13:54:22 IST 2026
[2026-10-28 13:54:22,490.490 INFO    ] ================================================
[2026-10-28 13:54:23,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:54:23
[2026-10-28 13:54:23,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:54:23,908.908 INFO    ] Initializing speech engine...
[2026-10-28 13:54:23,928.928 INFO    ] 2026-10-28 13:54:23
[2026-10-28 13:54:24,186.186 INFO    ] 2026-10-28 13:54:24
[2026-10-28 13:54:24,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:54:24,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:54:24,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:54:24,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:54:24,793.793 INFO    ] time= 28/10/2026 13:54:24
[2026-10-28 13:54:24,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:54:24,815.815 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:54:24,962.962 INFO    ] No existing commands found in stream
[2026-10-28 13:54:29,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:54:29,979.979 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-28 13:54:31,540.540 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:54:31,544.544 INFO    ] Checking for system updates...
[2026-10-28 13:54:31,583.583 INFO    ] 200
[2026-10-28 13:54:31,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:54:31,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:54:31,652.652 INFO    ] No update needed
[2026-10-28 13:54:31,655.655 INFO    ] Checking for camera pi updates...
[2026-10-28 13:54:31,692.692 INFO    ] 200
[2026-10-28 13:54:31,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:54:31,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:54:31,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:54:31,870.870 INFO    ] No camera update needed
[2026-10-28 13:54:31,873.873 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:54:31,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:54:31,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:54:31,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:54:33,931.931 INFO    ] ================================================
[2026-10-28 13:54:33,946.946 INFO    ] Launching Daemon at Wed Oct 28 13:54:33 IST 2026
[2026-10-28 13:54:33,957.957 INFO    ] ================================================
[2026-10-28 13:54:34,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:54:34
[2026-10-28 13:54:35,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:54:35,393.393 INFO    ] Initializing speech engine...
[2026-10-28 13:54:35,405.405 INFO    ] 2026-10-28 13:54:35
[2026-10-28 13:54:35,685.685 INFO    ] 2026-10-28 13:54:35
[2026-10-28 13:54:35,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:54:35,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:54:36,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:54:36,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:54:36,292.292 INFO    ] time= 28/10/2026 13:54:36
[2026-10-28 13:54:36,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:54:36,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:54:36,435.435 INFO    ] No existing commands found in stream
[2026-10-28 13:54:41,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:54:41,464.464 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 13:54:42,619.619 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:54:42,621.621 INFO    ] Checking for system updates...
[2026-10-28 13:54:42,657.657 INFO    ] 200
[2026-10-28 13:54:42,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:54:42,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:54:42,719.719 INFO    ] No update needed
[2026-10-28 13:54:42,721.721 INFO    ] Checking for camera pi updates...
[2026-10-28 13:54:42,762.762 INFO    ] 200
[2026-10-28 13:54:42,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:54:42,806.806 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:54:42,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:54:42,892.892 INFO    ] No camera update needed
[2026-10-28 13:54:42,895.895 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:54:42,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:54:42,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:54:42,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:54:44,949.949 INFO    ] ================================================
[2026-10-28 13:54:44,964.964 INFO    ] Launching Daemon at Wed Oct 28 13:54:44 IST 2026
[2026-10-28 13:54:44,976.976 INFO    ] ================================================
[2026-10-28 13:54:45,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:54:45
[2026-10-28 13:54:46,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:54:46,525.525 INFO    ] Initializing speech engine...
[2026-10-28 13:54:46,534.534 INFO    ] 2026-10-28 13:54:46
[2026-10-28 13:54:46,804.804 INFO    ] 2026-10-28 13:54:46
[2026-10-28 13:54:46,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:54:47,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:54:47,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:54:47,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:54:47,559.559 INFO    ] time= 28/10/2026 13:54:47
[2026-10-28 13:54:47,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:54:47,636.636 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:54:47,814.814 INFO    ] No existing commands found in stream
[2026-10-28 13:54:52,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:54:52,830.830 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-28 13:54:56,142.142 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:54:56,145.145 INFO    ] Checking for system updates...
[2026-10-28 13:54:56,181.181 INFO    ] 200
[2026-10-28 13:54:56,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:54:56,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:54:56,244.244 INFO    ] No update needed
[2026-10-28 13:54:56,247.247 INFO    ] Checking for camera pi updates...
[2026-10-28 13:54:56,281.281 INFO    ] 200
[2026-10-28 13:54:56,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:54:56,324.324 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:54:56,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:54:56,433.433 INFO    ] No camera update needed
[2026-10-28 13:54:56,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:54:56,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:54:56,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:54:56,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:54:58,490.490 INFO    ] ================================================
[2026-10-28 13:54:58,505.505 INFO    ] Launching Daemon at Wed Oct 28 13:54:58 IST 2026
[2026-10-28 13:54:58,517.517 INFO    ] ================================================
[2026-10-28 13:54:59,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:54:59
[2026-10-28 13:54:59,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:55:00,063.063 INFO    ] Initializing speech engine...
[2026-10-28 13:55:00,077.077 INFO    ] 2026-10-28 13:55:00
[2026-10-28 13:55:00,347.347 INFO    ] 2026-10-28 13:55:00
[2026-10-28 13:55:00,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:55:00,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:55:00,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:55:01,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:55:01,079.079 INFO    ] time= 28/10/2026 13:55:01
[2026-10-28 13:55:01,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:55:01,185.185 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:55:01,359.359 INFO    ] No existing commands found in stream
[2026-10-28 13:55:06,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:55:06,378.378 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 13:55:10,069.069 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:55:10,073.073 INFO    ] Checking for system updates...
[2026-10-28 13:55:10,109.109 INFO    ] 200
[2026-10-28 13:55:10,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:55:10,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:55:10,174.174 INFO    ] No update needed
[2026-10-28 13:55:10,178.178 INFO    ] Checking for camera pi updates...
[2026-10-28 13:55:10,213.213 INFO    ] 200
[2026-10-28 13:55:10,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:55:10,256.256 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:55:10,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:55:10,346.346 INFO    ] No camera update needed
[2026-10-28 13:55:10,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:55:10,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:55:10,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:55:10,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:55:12,400.400 INFO    ] ================================================
[2026-10-28 13:55:12,416.416 INFO    ] Launching Daemon at Wed Oct 28 13:55:12 IST 2026
[2026-10-28 13:55:12,427.427 INFO    ] ================================================
[2026-10-28 13:55:13,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:55:13
[2026-10-28 13:55:13,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:55:13,947.947 INFO    ] Initializing speech engine...
[2026-10-28 13:55:13,960.960 INFO    ] 2026-10-28 13:55:13
[2026-10-28 13:55:14,227.227 INFO    ] 2026-10-28 13:55:14
[2026-10-28 13:55:14,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:55:14,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:55:14,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:55:14,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:55:14,795.795 INFO    ] time= 28/10/2026 13:55:14
[2026-10-28 13:55:14,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:55:14,822.822 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:55:14,955.955 INFO    ] No existing commands found in stream
[2026-10-28 13:55:19,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:55:19,980.980 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-28 13:55:23,085.085 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:55:23,088.088 INFO    ] Checking for system updates...
[2026-10-28 13:55:23,124.124 INFO    ] 200
[2026-10-28 13:55:23,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:55:23,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:55:23,181.181 INFO    ] No update needed
[2026-10-28 13:55:23,184.184 INFO    ] Checking for camera pi updates...
[2026-10-28 13:55:23,225.225 INFO    ] 200
[2026-10-28 13:55:23,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:55:23,268.268 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:55:23,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:55:23,344.344 INFO    ] No camera update needed
[2026-10-28 13:55:23,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:55:23,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:55:23,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:55:23,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:55:25,401.401 INFO    ] ================================================
[2026-10-28 13:55:25,417.417 INFO    ] Launching Daemon at Wed Oct 28 13:55:25 IST 2026
[2026-10-28 13:55:25,428.428 INFO    ] ================================================
[2026-10-28 13:55:26,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:55:26
[2026-10-28 13:55:26,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:55:27,005.005 INFO    ] Initializing speech engine...
[2026-10-28 13:55:27,014.014 INFO    ] 2026-10-28 13:55:27
[2026-10-28 13:55:27,281.281 INFO    ] 2026-10-28 13:55:27
[2026-10-28 13:55:27,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:55:27,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:55:27,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:55:27,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:55:28,044.044 INFO    ] time= 28/10/2026 13:55:27
[2026-10-28 13:55:28,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:55:28,127.127 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:55:28,295.295 INFO    ] No existing commands found in stream
[2026-10-28 13:55:33,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:55:33,309.309 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-28 13:55:35,461.461 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:55:35,464.464 INFO    ] Checking for system updates...
[2026-10-28 13:55:35,500.500 INFO    ] 200
[2026-10-28 13:55:35,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:55:35,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:55:35,558.558 INFO    ] No update needed
[2026-10-28 13:55:35,560.560 INFO    ] Checking for camera pi updates...
[2026-10-28 13:55:35,593.593 INFO    ] 200
[2026-10-28 13:55:35,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:55:35,636.636 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:55:35,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:55:35,747.747 INFO    ] No camera update needed
[2026-10-28 13:55:35,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:55:35,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:55:35,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:55:35,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:55:37,802.802 INFO    ] ================================================
[2026-10-28 13:55:37,817.817 INFO    ] Launching Daemon at Wed Oct 28 13:55:37 IST 2026
[2026-10-28 13:55:37,829.829 INFO    ] ================================================
[2026-10-28 13:55:38,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:55:38
[2026-10-28 13:55:38,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:55:39,230.230 INFO    ] Initializing speech engine...
[2026-10-28 13:55:39,238.238 INFO    ] 2026-10-28 13:55:39
[2026-10-28 13:55:39,533.533 INFO    ] 2026-10-28 13:55:39
[2026-10-28 13:55:39,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:55:39,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:55:39,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:55:40,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:55:40,175.175 INFO    ] time= 28/10/2026 13:55:40
[2026-10-28 13:55:40,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:55:40,218.218 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:55:40,345.345 INFO    ] No existing commands found in stream
[2026-10-28 13:55:45,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:55:45,362.362 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-28 13:55:46,580.580 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:55:46,582.582 INFO    ] Checking for system updates...
[2026-10-28 13:55:46,618.618 INFO    ] 200
[2026-10-28 13:55:46,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:55:46,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:55:46,674.674 INFO    ] No update needed
[2026-10-28 13:55:46,677.677 INFO    ] Checking for camera pi updates...
[2026-10-28 13:55:46,711.711 INFO    ] 200
[2026-10-28 13:55:46,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:55:46,755.755 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:55:46,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:55:46,945.945 INFO    ] No camera update needed
[2026-10-28 13:55:46,948.948 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:55:46,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:55:46,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:55:46,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:55:49,000.000 INFO    ] ================================================
[2026-10-28 13:55:49,016.016 INFO    ] Launching Daemon at Wed Oct 28 13:55:49 IST 2026
[2026-10-28 13:55:49,027.027 INFO    ] ================================================
[2026-10-28 13:55:49,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:55:49
[2026-10-28 13:55:50,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:55:50,458.458 INFO    ] Initializing speech engine...
[2026-10-28 13:55:50,461.461 INFO    ] 2026-10-28 13:55:50
[2026-10-28 13:55:50,738.738 INFO    ] 2026-10-28 13:55:50
[2026-10-28 13:55:50,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:55:51,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:55:51,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:55:51,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:55:51,301.301 INFO    ] time= 28/10/2026 13:55:51
[2026-10-28 13:55:51,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:55:51,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:55:51,478.478 INFO    ] No existing commands found in stream
[2026-10-28 13:55:56,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:55:56,511.511 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 13:55:58,861.861 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:55:58,864.864 INFO    ] Checking for system updates...
[2026-10-28 13:55:58,904.904 INFO    ] 200
[2026-10-28 13:55:58,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:55:58,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:55:58,962.962 INFO    ] No update needed
[2026-10-28 13:55:58,964.964 INFO    ] Checking for camera pi updates...
[2026-10-28 13:55:58,998.998 INFO    ] 200
[2026-10-28 13:55:59,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:55:59,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:55:59,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:55:59,129.129 INFO    ] No camera update needed
[2026-10-28 13:55:59,131.131 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:55:59,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:55:59,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:55:59,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:56:01,184.184 INFO    ] ================================================
[2026-10-28 13:56:01,200.200 INFO    ] Launching Daemon at Wed Oct 28 13:56:01 IST 2026
[2026-10-28 13:56:01,210.210 INFO    ] ================================================
[2026-10-28 13:56:01,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:56:01
[2026-10-28 13:56:02,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:56:03,016.016 INFO    ] Initializing speech engine...
[2026-10-28 13:56:03,038.038 INFO    ] 2026-10-28 13:56:03
[2026-10-28 13:56:03,329.329 INFO    ] 2026-10-28 13:56:03
[2026-10-28 13:56:03,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:56:03,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:56:03,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:56:03,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:56:03,996.996 INFO    ] time= 28/10/2026 13:56:03
[2026-10-28 13:56:04,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:56:04,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:56:04,186.186 INFO    ] No existing commands found in stream
[2026-10-28 13:56:09,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:56:09,215.215 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 13:56:13,284.284 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:56:13,287.287 INFO    ] Checking for system updates...
[2026-10-28 13:56:13,325.325 INFO    ] 200
[2026-10-28 13:56:13,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:56:13,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:56:13,383.383 INFO    ] No update needed
[2026-10-28 13:56:13,386.386 INFO    ] Checking for camera pi updates...
[2026-10-28 13:56:13,420.420 INFO    ] 200
[2026-10-28 13:56:13,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:56:13,464.464 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:56:13,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:56:13,557.557 INFO    ] No camera update needed
[2026-10-28 13:56:13,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:56:13,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:56:13,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:56:13,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:56:15,616.616 INFO    ] ================================================
[2026-10-28 13:56:15,631.631 INFO    ] Launching Daemon at Wed Oct 28 13:56:15 IST 2026
[2026-10-28 13:56:15,642.642 INFO    ] ================================================
[2026-10-28 13:56:16,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:56:16
[2026-10-28 13:56:16,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:56:17,271.271 INFO    ] Initializing speech engine...
[2026-10-28 13:56:17,284.284 INFO    ] 2026-10-28 13:56:17
[2026-10-28 13:56:17,554.554 INFO    ] 2026-10-28 13:56:17
[2026-10-28 13:56:17,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:56:17,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:56:17,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:56:18,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:56:18,304.304 INFO    ] time= 28/10/2026 13:56:18
[2026-10-28 13:56:18,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:56:18,401.401 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:56:18,538.538 INFO    ] No existing commands found in stream
[2026-10-28 13:56:23,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:56:23,560.560 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-28 13:56:27,342.342 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:56:27,345.345 INFO    ] Checking for system updates...
[2026-10-28 13:56:27,382.382 INFO    ] 200
[2026-10-28 13:56:27,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:56:27,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:56:27,442.442 INFO    ] No update needed
[2026-10-28 13:56:27,445.445 INFO    ] Checking for camera pi updates...
[2026-10-28 13:56:27,480.480 INFO    ] 200
[2026-10-28 13:56:27,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:56:27,529.529 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:56:27,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:56:27,612.612 INFO    ] No camera update needed
[2026-10-28 13:56:27,615.615 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:56:27,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:56:27,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:56:27,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:56:29,669.669 INFO    ] ================================================
[2026-10-28 13:56:29,684.684 INFO    ] Launching Daemon at Wed Oct 28 13:56:29 IST 2026
[2026-10-28 13:56:29,695.695 INFO    ] ================================================
[2026-10-28 13:56:30,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:56:30
[2026-10-28 13:56:31,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:56:31,322.322 INFO    ] Initializing speech engine...
[2026-10-28 13:56:31,333.333 INFO    ] 2026-10-28 13:56:31
[2026-10-28 13:56:31,610.610 INFO    ] 2026-10-28 13:56:31
[2026-10-28 13:56:31,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:56:31,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:56:31,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:56:32,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:56:32,197.197 INFO    ] time= 28/10/2026 13:56:32
[2026-10-28 13:56:32,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:56:32,231.231 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:56:32,392.392 INFO    ] No existing commands found in stream
[2026-10-28 13:56:37,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:56:37,422.422 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 13:56:39,520.520 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:56:39,523.523 INFO    ] Checking for system updates...
[2026-10-28 13:56:39,560.560 INFO    ] 200
[2026-10-28 13:56:39,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:56:39,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:56:39,620.620 INFO    ] No update needed
[2026-10-28 13:56:39,623.623 INFO    ] Checking for camera pi updates...
[2026-10-28 13:56:39,660.660 INFO    ] 200
[2026-10-28 13:56:39,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:56:39,703.703 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:56:39,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:56:39,790.790 INFO    ] No camera update needed
[2026-10-28 13:56:39,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:56:39,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:56:39,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:56:39,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:56:41,846.846 INFO    ] ================================================
[2026-10-28 13:56:41,862.862 INFO    ] Launching Daemon at Wed Oct 28 13:56:41 IST 2026
[2026-10-28 13:56:41,872.872 INFO    ] ================================================
[2026-10-28 13:56:42,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:56:42
[2026-10-28 13:56:43,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:56:43,311.311 INFO    ] Initializing speech engine...
[2026-10-28 13:56:43,320.320 INFO    ] 2026-10-28 13:56:43
[2026-10-28 13:56:43,574.574 INFO    ] 2026-10-28 13:56:43
[2026-10-28 13:56:43,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:56:43,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:56:43,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:56:44,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:56:44,187.187 INFO    ] time= 28/10/2026 13:56:44
[2026-10-28 13:56:44,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:56:44,200.200 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:56:44,319.319 INFO    ] No existing commands found in stream
[2026-10-28 13:56:49,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:56:49,352.352 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 13:56:53,345.345 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:56:53,348.348 INFO    ] Checking for system updates...
[2026-10-28 13:56:53,384.384 INFO    ] 200
[2026-10-28 13:56:53,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:56:53,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:56:53,442.442 INFO    ] No update needed
[2026-10-28 13:56:53,445.445 INFO    ] Checking for camera pi updates...
[2026-10-28 13:56:53,478.478 INFO    ] 200
[2026-10-28 13:56:53,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:56:53,522.522 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:56:53,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:56:53,608.608 INFO    ] No camera update needed
[2026-10-28 13:56:53,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:56:53,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:56:53,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:56:53,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:56:55,664.664 INFO    ] ================================================
[2026-10-28 13:56:55,680.680 INFO    ] Launching Daemon at Wed Oct 28 13:56:55 IST 2026
[2026-10-28 13:56:55,691.691 INFO    ] ================================================
[2026-10-28 13:56:56,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:56:56
[2026-10-28 13:56:57,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:56:57,339.339 INFO    ] Initializing speech engine...
[2026-10-28 13:56:57,348.348 INFO    ] 2026-10-28 13:56:57
[2026-10-28 13:56:57,638.638 INFO    ] 2026-10-28 13:56:57
[2026-10-28 13:56:57,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:56:57,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:56:58,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:56:58,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:56:58,345.345 INFO    ] time= 28/10/2026 13:56:58
[2026-10-28 13:56:58,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:56:58,437.437 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:56:58,619.619 INFO    ] No existing commands found in stream
[2026-10-28 13:57:03,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:57:03,642.642 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-28 13:57:05,957.957 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:57:05,960.960 INFO    ] Checking for system updates...
[2026-10-28 13:57:05,998.998 INFO    ] 200
[2026-10-28 13:57:06,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:57:06,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:57:06,057.057 INFO    ] No update needed
[2026-10-28 13:57:06,059.059 INFO    ] Checking for camera pi updates...
[2026-10-28 13:57:06,097.097 INFO    ] 200
[2026-10-28 13:57:06,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:57:06,149.149 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:57:06,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:57:06,246.246 INFO    ] No camera update needed
[2026-10-28 13:57:06,249.249 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:57:06,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:57:06,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:57:06,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:57:08,305.305 INFO    ] ================================================
[2026-10-28 13:57:08,321.321 INFO    ] Launching Daemon at Wed Oct 28 13:57:08 IST 2026
[2026-10-28 13:57:08,332.332 INFO    ] ================================================
[2026-10-28 13:57:08,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:57:08
[2026-10-28 13:57:09,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:57:09,749.749 INFO    ] Initializing speech engine...
[2026-10-28 13:57:09,758.758 INFO    ] 2026-10-28 13:57:09
[2026-10-28 13:57:10,009.009 INFO    ] 2026-10-28 13:57:10
[2026-10-28 13:57:10,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:57:10,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:57:10,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:57:10,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:57:10,576.576 INFO    ] time= 28/10/2026 13:57:10
[2026-10-28 13:57:10,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:57:10,597.597 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:57:10,732.732 INFO    ] No existing commands found in stream
[2026-10-28 13:57:15,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:57:15,749.749 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 13:57:17,943.943 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 13:57:17,946.946 INFO    ] Checking for system updates...
[2026-10-28 13:57:17,985.985 INFO    ] 200
[2026-10-28 13:57:17,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:57:18,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:57:18,047.047 INFO    ] No update needed
[2026-10-28 13:57:18,049.049 INFO    ] Checking for camera pi updates...
[2026-10-28 13:57:18,083.083 INFO    ] 200
[2026-10-28 13:57:18,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:57:18,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:57:18,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:57:18,358.358 INFO    ] No camera update needed
[2026-10-28 13:57:18,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:57:18,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:57:18,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:57:18,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:57:20,413.413 INFO    ] ================================================
[2026-10-28 13:57:20,429.429 INFO    ] Launching Daemon at Wed Oct 28 13:57:20 IST 2026
[2026-10-28 13:57:20,441.441 INFO    ] ================================================
[2026-10-28 13:57:21,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:57:21
[2026-10-28 13:57:21,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:57:21,964.964 INFO    ] Initializing speech engine...
[2026-10-28 13:57:21,973.973 INFO    ] 2026-10-28 13:57:21
[2026-10-28 13:57:22,221.221 INFO    ] 2026-10-28 13:57:22
[2026-10-28 13:57:22,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:57:22,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:57:22,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:57:22,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:57:22,954.954 INFO    ] time= 28/10/2026 13:57:22
[2026-10-28 13:57:23,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:57:23,042.042 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:57:23,187.187 INFO    ] No existing commands found in stream
[2026-10-28 13:57:28,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:57:28,218.218 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-28 13:57:29,883.883 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:57:29,886.886 INFO    ] Checking for system updates...
[2026-10-28 13:57:29,926.926 INFO    ] 200
[2026-10-28 13:57:29,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:57:29,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:57:29,991.991 INFO    ] No update needed
[2026-10-28 13:57:29,994.994 INFO    ] Checking for camera pi updates...
[2026-10-28 13:57:30,032.032 INFO    ] 200
[2026-10-28 13:57:30,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:57:30,076.076 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:57:30,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:57:30,132.132 INFO    ] No camera update needed
[2026-10-28 13:57:30,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:57:30,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:57:30,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:57:30,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:57:32,192.192 INFO    ] ================================================
[2026-10-28 13:57:32,209.209 INFO    ] Launching Daemon at Wed Oct 28 13:57:32 IST 2026
[2026-10-28 13:57:32,221.221 INFO    ] ================================================
[2026-10-28 13:57:32,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:57:32
[2026-10-28 13:57:33,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:57:33,716.716 INFO    ] Initializing speech engine...
[2026-10-28 13:57:33,726.726 INFO    ] 2026-10-28 13:57:33
[2026-10-28 13:57:33,975.975 INFO    ] 2026-10-28 13:57:33
[2026-10-28 13:57:34,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:57:34,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:57:34,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:57:34,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:57:34,533.533 INFO    ] time= 28/10/2026 13:57:34
[2026-10-28 13:57:34,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:57:34,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:57:34,716.716 INFO    ] No existing commands found in stream
[2026-10-28 13:57:39,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:57:39,749.749 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-28 13:57:44,301.301 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 13:57:44,303.303 INFO    ] Checking for system updates...
[2026-10-28 13:57:44,339.339 INFO    ] 200
[2026-10-28 13:57:44,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:57:44,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:57:44,397.397 INFO    ] No update needed
[2026-10-28 13:57:44,400.400 INFO    ] Checking for camera pi updates...
[2026-10-28 13:57:44,438.438 INFO    ] 200
[2026-10-28 13:57:44,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:57:44,480.480 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:57:44,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:57:44,591.591 INFO    ] No camera update needed
[2026-10-28 13:57:44,593.593 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:57:44,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:57:44,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:57:44,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:57:46,647.647 INFO    ] ================================================
[2026-10-28 13:57:46,662.662 INFO    ] Launching Daemon at Wed Oct 28 13:57:46 IST 2026
[2026-10-28 13:57:46,673.673 INFO    ] ================================================
[2026-10-28 13:57:47,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:57:47
[2026-10-28 13:57:47,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:57:48,197.197 INFO    ] Initializing speech engine...
[2026-10-28 13:57:48,203.203 INFO    ] 2026-10-28 13:57:48
[2026-10-28 13:57:48,457.457 INFO    ] 2026-10-28 13:57:48
[2026-10-28 13:57:48,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:57:48,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:57:48,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:57:49,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:57:49,025.025 INFO    ] time= 28/10/2026 13:57:49
[2026-10-28 13:57:49,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:57:49,061.061 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:57:49,174.174 INFO    ] No existing commands found in stream
[2026-10-28 13:57:54,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:57:54,206.206 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 13:57:58,787.787 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:57:58,789.789 INFO    ] Checking for system updates...
[2026-10-28 13:57:58,828.828 INFO    ] 200
[2026-10-28 13:57:58,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:57:58,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:57:58,892.892 INFO    ] No update needed
[2026-10-28 13:57:58,895.895 INFO    ] Checking for camera pi updates...
[2026-10-28 13:57:58,932.932 INFO    ] 200
[2026-10-28 13:57:58,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:57:58,980.980 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:57:59,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:57:59,164.164 INFO    ] No camera update needed
[2026-10-28 13:57:59,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:57:59,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:57:59,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:57:59,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:58:01,220.220 INFO    ] ================================================
[2026-10-28 13:58:01,236.236 INFO    ] Launching Daemon at Wed Oct 28 13:58:01 IST 2026
[2026-10-28 13:58:01,247.247 INFO    ] ================================================
[2026-10-28 13:58:02,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:58:02
[2026-10-28 13:58:02,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:58:03,162.162 INFO    ] Initializing speech engine...
[2026-10-28 13:58:03,171.171 INFO    ] 2026-10-28 13:58:03
[2026-10-28 13:58:03,446.446 INFO    ] 2026-10-28 13:58:03
[2026-10-28 13:58:03,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:58:03,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:58:03,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:58:04,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:58:04,024.024 INFO    ] time= 28/10/2026 13:58:04
[2026-10-28 13:58:04,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:58:04,070.070 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:58:04,199.199 INFO    ] No existing commands found in stream
[2026-10-28 13:58:09,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:58:09,227.227 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-28 13:58:09,919.919 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:58:09,921.921 INFO    ] Checking for system updates...
[2026-10-28 13:58:09,957.957 INFO    ] 200
[2026-10-28 13:58:09,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:58:10,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:58:10,017.017 INFO    ] No update needed
[2026-10-28 13:58:10,019.019 INFO    ] Checking for camera pi updates...
[2026-10-28 13:58:10,053.053 INFO    ] 200
[2026-10-28 13:58:10,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:58:10,100.100 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:58:10,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:58:10,186.186 INFO    ] No camera update needed
[2026-10-28 13:58:10,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:58:10,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:58:10,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:58:10,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:58:12,242.242 INFO    ] ================================================
[2026-10-28 13:58:12,257.257 INFO    ] Launching Daemon at Wed Oct 28 13:58:12 IST 2026
[2026-10-28 13:58:12,269.269 INFO    ] ================================================
[2026-10-28 13:58:12,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:58:12
[2026-10-28 13:58:13,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:58:13,729.729 INFO    ] Initializing speech engine...
[2026-10-28 13:58:13,737.737 INFO    ] 2026-10-28 13:58:13
[2026-10-28 13:58:13,998.998 INFO    ] 2026-10-28 13:58:13
[2026-10-28 13:58:14,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:58:14,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:58:14,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:58:14,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:58:14,709.709 INFO    ] time= 28/10/2026 13:58:14
[2026-10-28 13:58:14,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:58:14,795.795 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:58:14,914.914 INFO    ] No existing commands found in stream
[2026-10-28 13:58:19,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:58:19,947.947 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-28 13:58:22,498.498 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:58:22,501.501 INFO    ] Checking for system updates...
[2026-10-28 13:58:22,540.540 INFO    ] 200
[2026-10-28 13:58:22,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:58:22,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:58:22,597.597 INFO    ] No update needed
[2026-10-28 13:58:22,599.599 INFO    ] Checking for camera pi updates...
[2026-10-28 13:58:22,632.632 INFO    ] 200
[2026-10-28 13:58:22,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:58:22,675.675 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:58:22,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:58:22,761.761 INFO    ] No camera update needed
[2026-10-28 13:58:22,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:58:22,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:58:22,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:58:22,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:58:24,816.816 INFO    ] ================================================
[2026-10-28 13:58:24,835.835 INFO    ] Launching Daemon at Wed Oct 28 13:58:24 IST 2026
[2026-10-28 13:58:24,846.846 INFO    ] ================================================
[2026-10-28 13:58:25,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:58:25
[2026-10-28 13:58:26,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:58:26,299.299 INFO    ] Initializing speech engine...
[2026-10-28 13:58:26,306.306 INFO    ] 2026-10-28 13:58:26
[2026-10-28 13:58:26,567.567 INFO    ] 2026-10-28 13:58:26
[2026-10-28 13:58:26,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:58:26,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:58:26,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:58:27,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:58:27,304.304 INFO    ] time= 28/10/2026 13:58:27
[2026-10-28 13:58:27,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:58:27,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:58:27,551.551 INFO    ] No existing commands found in stream
[2026-10-28 13:58:32,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:58:32,568.568 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-28 13:58:36,343.343 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:58:36,346.346 INFO    ] Checking for system updates...
[2026-10-28 13:58:36,386.386 INFO    ] 200
[2026-10-28 13:58:36,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:58:36,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:58:36,449.449 INFO    ] No update needed
[2026-10-28 13:58:36,451.451 INFO    ] Checking for camera pi updates...
[2026-10-28 13:58:36,489.489 INFO    ] 200
[2026-10-28 13:58:36,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:58:36,532.532 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:58:36,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:58:36,615.615 INFO    ] No camera update needed
[2026-10-28 13:58:36,618.618 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:58:36,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:58:36,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:58:36,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:58:38,670.670 INFO    ] ================================================
[2026-10-28 13:58:38,685.685 INFO    ] Launching Daemon at Wed Oct 28 13:58:38 IST 2026
[2026-10-28 13:58:38,697.697 INFO    ] ================================================
[2026-10-28 13:58:39,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:58:39
[2026-10-28 13:58:39,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:58:40,100.100 INFO    ] Initializing speech engine...
[2026-10-28 13:58:40,114.114 INFO    ] 2026-10-28 13:58:40
[2026-10-28 13:58:40,398.398 INFO    ] 2026-10-28 13:58:40
[2026-10-28 13:58:40,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:58:40,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:58:40,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:58:40,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:58:41,026.026 INFO    ] time= 28/10/2026 13:58:41
[2026-10-28 13:58:41,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:58:41,052.052 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:58:41,202.202 INFO    ] No existing commands found in stream
[2026-10-28 13:58:46,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:58:46,217.217 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 13:58:47,107.107 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:58:47,109.109 INFO    ] Checking for system updates...
[2026-10-28 13:58:47,145.145 INFO    ] 200
[2026-10-28 13:58:47,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:58:47,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:58:47,201.201 INFO    ] No update needed
[2026-10-28 13:58:47,204.204 INFO    ] Checking for camera pi updates...
[2026-10-28 13:58:47,237.237 INFO    ] 200
[2026-10-28 13:58:47,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:58:47,280.280 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:58:47,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:58:47,366.366 INFO    ] No camera update needed
[2026-10-28 13:58:47,368.368 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:58:47,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:58:47,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:58:47,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:58:49,423.423 INFO    ] ================================================
[2026-10-28 13:58:49,438.438 INFO    ] Launching Daemon at Wed Oct 28 13:58:49 IST 2026
[2026-10-28 13:58:49,449.449 INFO    ] ================================================
[2026-10-28 13:58:50,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:58:50
[2026-10-28 13:58:50,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:58:50,868.868 INFO    ] Initializing speech engine...
[2026-10-28 13:58:50,877.877 INFO    ] 2026-10-28 13:58:50
[2026-10-28 13:58:51,125.125 INFO    ] 2026-10-28 13:58:51
[2026-10-28 13:58:51,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:58:51,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:58:51,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:58:51,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:58:51,692.692 INFO    ] time= 28/10/2026 13:58:51
[2026-10-28 13:58:51,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:58:51,738.738 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:58:51,874.874 INFO    ] No existing commands found in stream
[2026-10-28 13:58:56,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:58:56,908.908 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-28 13:58:57,946.946 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:58:57,949.949 INFO    ] Checking for system updates...
[2026-10-28 13:58:57,984.984 INFO    ] 200
[2026-10-28 13:58:57,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:58:58,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:58:58,047.047 INFO    ] No update needed
[2026-10-28 13:58:58,049.049 INFO    ] Checking for camera pi updates...
[2026-10-28 13:58:58,082.082 INFO    ] 200
[2026-10-28 13:58:58,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:58:58,132.132 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:58:58,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:58:58,224.224 INFO    ] No camera update needed
[2026-10-28 13:58:58,226.226 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:58:58,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:58:58,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:58:58,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:59:00,278.278 INFO    ] ================================================
[2026-10-28 13:59:00,293.293 INFO    ] Launching Daemon at Wed Oct 28 13:59:00 IST 2026
[2026-10-28 13:59:00,305.305 INFO    ] ================================================
[2026-10-28 13:59:00,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:59:00
[2026-10-28 13:59:01,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:59:02,096.096 INFO    ] Initializing speech engine...
[2026-10-28 13:59:02,109.109 INFO    ] 2026-10-28 13:59:02
[2026-10-28 13:59:02,532.532 INFO    ] 2026-10-28 13:59:02
[2026-10-28 13:59:02,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:59:02,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:59:02,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:59:03,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:59:03,133.133 INFO    ] time= 28/10/2026 13:59:03
[2026-10-28 13:59:03,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:59:03,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:59:03,352.352 INFO    ] No existing commands found in stream
[2026-10-28 13:59:08,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:59:08,380.380 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 13:59:09,580.580 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 13:59:09,582.582 INFO    ] Checking for system updates...
[2026-10-28 13:59:09,620.620 INFO    ] 200
[2026-10-28 13:59:09,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:59:09,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:59:09,681.681 INFO    ] No update needed
[2026-10-28 13:59:09,683.683 INFO    ] Checking for camera pi updates...
[2026-10-28 13:59:09,716.716 INFO    ] 200
[2026-10-28 13:59:09,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:59:09,759.759 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:59:09,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:59:09,844.844 INFO    ] No camera update needed
[2026-10-28 13:59:09,847.847 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:59:09,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:59:09,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:59:09,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:59:11,898.898 INFO    ] ================================================
[2026-10-28 13:59:11,913.913 INFO    ] Launching Daemon at Wed Oct 28 13:59:11 IST 2026
[2026-10-28 13:59:11,924.924 INFO    ] ================================================
[2026-10-28 13:59:12,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:59:12
[2026-10-28 13:59:13,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:59:13,365.365 INFO    ] Initializing speech engine...
[2026-10-28 13:59:13,372.372 INFO    ] 2026-10-28 13:59:13
[2026-10-28 13:59:13,658.658 INFO    ] 2026-10-28 13:59:13
[2026-10-28 13:59:13,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:59:13,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:59:13,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:59:14,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:59:14,254.254 INFO    ] time= 28/10/2026 13:59:14
[2026-10-28 13:59:14,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:59:14,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:59:14,432.432 INFO    ] No existing commands found in stream
[2026-10-28 13:59:19,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:59:19,450.450 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 13:59:22,660.660 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 13:59:22,663.663 INFO    ] Checking for system updates...
[2026-10-28 13:59:22,698.698 INFO    ] 200
[2026-10-28 13:59:22,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:59:22,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:59:22,755.755 INFO    ] No update needed
[2026-10-28 13:59:22,758.758 INFO    ] Checking for camera pi updates...
[2026-10-28 13:59:22,791.791 INFO    ] 200
[2026-10-28 13:59:22,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:59:22,838.838 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:59:22,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:59:22,933.933 INFO    ] No camera update needed
[2026-10-28 13:59:22,935.935 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:59:22,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:59:22,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:59:22,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:59:24,989.989 INFO    ] ================================================
[2026-10-28 13:59:25,004.004 INFO    ] Launching Daemon at Wed Oct 28 13:59:24 IST 2026
[2026-10-28 13:59:25,014.014 INFO    ] ================================================
[2026-10-28 13:59:25,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:59:25
[2026-10-28 13:59:26,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:59:26,425.425 INFO    ] Initializing speech engine...
[2026-10-28 13:59:26,438.438 INFO    ] 2026-10-28 13:59:26
[2026-10-28 13:59:26,717.717 INFO    ] 2026-10-28 13:59:26
[2026-10-28 13:59:26,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:59:27,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:59:27,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:59:27,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:59:27,321.321 INFO    ] time= 28/10/2026 13:59:27
[2026-10-28 13:59:27,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:59:27,347.347 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:59:27,487.487 INFO    ] No existing commands found in stream
[2026-10-28 13:59:32,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:59:32,507.507 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 13:59:36,566.566 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 13:59:36,568.568 INFO    ] Checking for system updates...
[2026-10-28 13:59:36,607.607 INFO    ] 200
[2026-10-28 13:59:36,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:59:36,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:59:36,664.664 INFO    ] No update needed
[2026-10-28 13:59:36,666.666 INFO    ] Checking for camera pi updates...
[2026-10-28 13:59:36,699.699 INFO    ] 200
[2026-10-28 13:59:36,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:59:36,741.741 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:59:36,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 13:59:36,832.832 INFO    ] No camera update needed
[2026-10-28 13:59:36,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:59:36,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:59:36,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:59:36,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:59:38,888.888 INFO    ] ================================================
[2026-10-28 13:59:38,903.903 INFO    ] Launching Daemon at Wed Oct 28 13:59:38 IST 2026
[2026-10-28 13:59:38,914.914 INFO    ] ================================================
[2026-10-28 13:59:39,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:59:39
[2026-10-28 13:59:40,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:59:40,333.333 INFO    ] Initializing speech engine...
[2026-10-28 13:59:40,345.345 INFO    ] 2026-10-28 13:59:40
[2026-10-28 13:59:40,605.605 INFO    ] 2026-10-28 13:59:40
[2026-10-28 13:59:40,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:59:40,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:59:40,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:59:41,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:59:41,204.204 INFO    ] time= 28/10/2026 13:59:41
[2026-10-28 13:59:41,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:59:41,232.232 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:59:41,365.365 INFO    ] No existing commands found in stream
[2026-10-28 13:59:46,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:59:46,392.392 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-28 13:59:47,380.380 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 13:59:47,382.382 INFO    ] Checking for system updates...
[2026-10-28 13:59:47,420.420 INFO    ] 200
[2026-10-28 13:59:47,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:59:47,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:59:47,487.487 INFO    ] No update needed
[2026-10-28 13:59:47,489.489 INFO    ] Checking for camera pi updates...
[2026-10-28 13:59:47,525.525 INFO    ] 200
[2026-10-28 13:59:47,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 13:59:47,567.567 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 13:59:47,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 13:59:47,667.667 INFO    ] No camera update needed
[2026-10-28 13:59:47,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-28 13:59:47,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 13:59:47,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 13:59:47,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 13:59:49,721.721 INFO    ] ================================================
[2026-10-28 13:59:49,736.736 INFO    ] Launching Daemon at Wed Oct 28 13:59:49 IST 2026
[2026-10-28 13:59:49,747.747 INFO    ] ================================================
[2026-10-28 13:59:50,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 13:59:50
[2026-10-28 13:59:50,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 13:59:51,148.148 INFO    ] Initializing speech engine...
[2026-10-28 13:59:51,157.157 INFO    ] 2026-10-28 13:59:51
[2026-10-28 13:59:51,444.444 INFO    ] 2026-10-28 13:59:51
[2026-10-28 13:59:51,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 13:59:51,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 13:59:51,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 13:59:51,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 13:59:52,046.046 INFO    ] time= 28/10/2026 13:59:52
[2026-10-28 13:59:52,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 13:59:52,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-28 13:59:52,216.216 INFO    ] No existing commands found in stream
[2026-10-28 13:59:57,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 13:59:57,239.239 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-28 14:00:01,083.083 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:00:01,086.086 INFO    ] Checking for system updates...
[2026-10-28 14:00:01,121.121 INFO    ] 200
[2026-10-28 14:00:01,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:00:01,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:00:01,181.181 INFO    ] No update needed
[2026-10-28 14:00:01,183.183 INFO    ] Checking for camera pi updates...
[2026-10-28 14:00:01,217.217 INFO    ] 200
[2026-10-28 14:00:01,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:00:01,260.260 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:00:01,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:00:01,438.438 INFO    ] No camera update needed
[2026-10-28 14:00:01,440.440 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:00:01,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:00:01,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:00:01,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:00:03,588.588 INFO    ] ================================================
[2026-10-28 14:00:03,687.687 INFO    ] Launching Daemon at Wed Oct 28 14:00:03 IST 2026
[2026-10-28 14:00:03,724.724 INFO    ] ================================================
[2026-10-28 14:00:05,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:00:05
[2026-10-28 14:00:06,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:00:06,698.698 INFO    ] Initializing speech engine...
[2026-10-28 14:00:06,702.702 INFO    ] 2026-10-28 14:00:06
[2026-10-28 14:00:06,979.979 INFO    ] 2026-10-28 14:00:06
[2026-10-28 14:00:07,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:00:07,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:00:07,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:00:07,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:00:07,571.571 INFO    ] time= 28/10/2026 14:00:07
[2026-10-28 14:00:07,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:00:07,605.605 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:00:07,750.750 INFO    ] No existing commands found in stream
[2026-10-28 14:00:12,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:00:12,769.769 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 14:00:14,568.568 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:00:14,570.570 INFO    ] Checking for system updates...
[2026-10-28 14:00:14,607.607 INFO    ] 200
[2026-10-28 14:00:14,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:00:14,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:00:14,673.673 INFO    ] No update needed
[2026-10-28 14:00:14,676.676 INFO    ] Checking for camera pi updates...
[2026-10-28 14:00:14,715.715 INFO    ] 200
[2026-10-28 14:00:14,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:00:14,764.764 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:00:14,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:00:14,855.855 INFO    ] No camera update needed
[2026-10-28 14:00:14,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:00:14,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:00:14,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:00:14,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:00:16,912.912 INFO    ] ================================================
[2026-10-28 14:00:16,927.927 INFO    ] Launching Daemon at Wed Oct 28 14:00:16 IST 2026
[2026-10-28 14:00:16,938.938 INFO    ] ================================================
[2026-10-28 14:00:17,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:00:17
[2026-10-28 14:00:18,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:00:18,356.356 INFO    ] Initializing speech engine...
[2026-10-28 14:00:18,368.368 INFO    ] 2026-10-28 14:00:18
[2026-10-28 14:00:18,659.659 INFO    ] 2026-10-28 14:00:18
[2026-10-28 14:00:18,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:00:18,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:00:18,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:00:19,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:00:19,295.295 INFO    ] time= 28/10/2026 14:00:19
[2026-10-28 14:00:19,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:00:19,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:00:19,463.463 INFO    ] No existing commands found in stream
[2026-10-28 14:00:24,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:00:24,487.487 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-28 14:00:26,102.102 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:00:26,105.105 INFO    ] Checking for system updates...
[2026-10-28 14:00:26,140.140 INFO    ] 200
[2026-10-28 14:00:26,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:00:26,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:00:26,197.197 INFO    ] No update needed
[2026-10-28 14:00:26,199.199 INFO    ] Checking for camera pi updates...
[2026-10-28 14:00:26,233.233 INFO    ] 200
[2026-10-28 14:00:26,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:00:26,276.276 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:00:26,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:00:26,360.360 INFO    ] No camera update needed
[2026-10-28 14:00:26,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:00:26,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:00:26,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:00:26,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:00:28,414.414 INFO    ] ================================================
[2026-10-28 14:00:28,429.429 INFO    ] Launching Daemon at Wed Oct 28 14:00:28 IST 2026
[2026-10-28 14:00:28,441.441 INFO    ] ================================================
[2026-10-28 14:00:29,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:00:29
[2026-10-28 14:00:29,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:00:30,077.077 INFO    ] Initializing speech engine...
[2026-10-28 14:00:30,083.083 INFO    ] 2026-10-28 14:00:30
[2026-10-28 14:00:30,360.360 INFO    ] 2026-10-28 14:00:30
[2026-10-28 14:00:30,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:00:30,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:00:30,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:00:30,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:00:30,932.932 INFO    ] time= 28/10/2026 14:00:30
[2026-10-28 14:00:30,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:00:30,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:00:31,127.127 INFO    ] No existing commands found in stream
[2026-10-28 14:00:36,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:00:36,162.162 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-28 14:00:38,368.368 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:00:38,371.371 INFO    ] Checking for system updates...
[2026-10-28 14:00:38,408.408 INFO    ] 200
[2026-10-28 14:00:38,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:00:38,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:00:38,475.475 INFO    ] No update needed
[2026-10-28 14:00:38,478.478 INFO    ] Checking for camera pi updates...
[2026-10-28 14:00:38,517.517 INFO    ] 200
[2026-10-28 14:00:38,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:00:38,566.566 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:00:38,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:00:38,658.658 INFO    ] No camera update needed
[2026-10-28 14:00:38,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:00:38,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:00:38,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:00:38,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:00:40,720.720 INFO    ] ================================================
[2026-10-28 14:00:40,735.735 INFO    ] Launching Daemon at Wed Oct 28 14:00:40 IST 2026
[2026-10-28 14:00:40,745.745 INFO    ] ================================================
[2026-10-28 14:00:41,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:00:41
[2026-10-28 14:00:41,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:00:42,202.202 INFO    ] Initializing speech engine...
[2026-10-28 14:00:42,211.211 INFO    ] 2026-10-28 14:00:42
[2026-10-28 14:00:42,460.460 INFO    ] 2026-10-28 14:00:42
[2026-10-28 14:00:42,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:00:42,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:00:42,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:00:43,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:00:43,403.403 INFO    ] time= 28/10/2026 14:00:43
[2026-10-28 14:00:43,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:00:43,453.453 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:00:43,595.595 INFO    ] No existing commands found in stream
[2026-10-28 14:00:48,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:00:48,628.628 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 14:00:52,785.785 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:00:52,789.789 INFO    ] Checking for system updates...
[2026-10-28 14:00:52,826.826 INFO    ] 200
[2026-10-28 14:00:52,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:00:52,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:00:52,893.893 INFO    ] No update needed
[2026-10-28 14:00:52,896.896 INFO    ] Checking for camera pi updates...
[2026-10-28 14:00:52,930.930 INFO    ] 200
[2026-10-28 14:00:52,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:00:52,974.974 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:00:53,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:00:53,083.083 INFO    ] No camera update needed
[2026-10-28 14:00:53,086.086 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:00:53,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:00:53,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:00:53,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:00:55,143.143 INFO    ] ================================================
[2026-10-28 14:00:55,158.158 INFO    ] Launching Daemon at Wed Oct 28 14:00:55 IST 2026
[2026-10-28 14:00:55,168.168 INFO    ] ================================================
[2026-10-28 14:00:55,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:00:55
[2026-10-28 14:00:56,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:00:56,581.581 INFO    ] Initializing speech engine...
[2026-10-28 14:00:56,594.594 INFO    ] 2026-10-28 14:00:56
[2026-10-28 14:00:56,875.875 INFO    ] 2026-10-28 14:00:56
[2026-10-28 14:00:56,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:00:57,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:00:57,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:00:57,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:00:57,499.499 INFO    ] time= 28/10/2026 14:00:57
[2026-10-28 14:00:57,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:00:57,527.527 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:00:57,642.642 INFO    ] No existing commands found in stream
[2026-10-28 14:01:02,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:01:02,678.678 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-28 14:01:04,792.792 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:01:04,795.795 INFO    ] Checking for system updates...
[2026-10-28 14:01:04,832.832 INFO    ] 200
[2026-10-28 14:01:04,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:01:04,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:01:04,891.891 INFO    ] No update needed
[2026-10-28 14:01:04,894.894 INFO    ] Checking for camera pi updates...
[2026-10-28 14:01:04,929.929 INFO    ] 200
[2026-10-28 14:01:04,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:01:04,974.974 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:01:05,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:01:05,061.061 INFO    ] No camera update needed
[2026-10-28 14:01:05,064.064 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:01:05,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:01:05,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:01:05,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:01:07,119.119 INFO    ] ================================================
[2026-10-28 14:01:07,134.134 INFO    ] Launching Daemon at Wed Oct 28 14:01:07 IST 2026
[2026-10-28 14:01:07,145.145 INFO    ] ================================================
[2026-10-28 14:01:07,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:01:07
[2026-10-28 14:01:08,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:01:08,563.563 INFO    ] Initializing speech engine...
[2026-10-28 14:01:08,572.572 INFO    ] 2026-10-28 14:01:08
[2026-10-28 14:01:08,823.823 INFO    ] 2026-10-28 14:01:08
[2026-10-28 14:01:08,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:01:09,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:01:09,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:01:09,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:01:09,390.390 INFO    ] time= 28/10/2026 14:01:09
[2026-10-28 14:01:09,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:01:09,431.431 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:01:09,546.546 INFO    ] No existing commands found in stream
[2026-10-28 14:01:14,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:01:14,570.570 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-28 14:01:18,908.908 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:01:18,910.910 INFO    ] Checking for system updates...
[2026-10-28 14:01:18,946.946 INFO    ] 200
[2026-10-28 14:01:18,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:01:19,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:01:19,007.007 INFO    ] No update needed
[2026-10-28 14:01:19,009.009 INFO    ] Checking for camera pi updates...
[2026-10-28 14:01:19,042.042 INFO    ] 200
[2026-10-28 14:01:19,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:01:19,085.085 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:01:19,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:01:19,162.162 INFO    ] No camera update needed
[2026-10-28 14:01:19,165.165 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:01:19,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:01:19,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:01:19,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:01:21,216.216 INFO    ] ================================================
[2026-10-28 14:01:21,231.231 INFO    ] Launching Daemon at Wed Oct 28 14:01:21 IST 2026
[2026-10-28 14:01:21,241.241 INFO    ] ================================================
[2026-10-28 14:01:21,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:01:21
[2026-10-28 14:01:22,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:01:22,667.667 INFO    ] Initializing speech engine...
[2026-10-28 14:01:22,674.674 INFO    ] 2026-10-28 14:01:22
[2026-10-28 14:01:22,932.932 INFO    ] 2026-10-28 14:01:22
[2026-10-28 14:01:22,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:01:23,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:01:23,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:01:23,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:01:23,535.535 INFO    ] time= 28/10/2026 14:01:23
[2026-10-28 14:01:23,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:01:23,550.550 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:01:23,702.702 INFO    ] No existing commands found in stream
[2026-10-28 14:01:28,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:01:28,736.736 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-28 14:01:32,320.320 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:01:32,323.323 INFO    ] Checking for system updates...
[2026-10-28 14:01:32,361.361 INFO    ] 200
[2026-10-28 14:01:32,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:01:32,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:01:32,426.426 INFO    ] No update needed
[2026-10-28 14:01:32,429.429 INFO    ] Checking for camera pi updates...
[2026-10-28 14:01:32,467.467 INFO    ] 200
[2026-10-28 14:01:32,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:01:32,530.530 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:01:32,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:01:32,635.635 INFO    ] No camera update needed
[2026-10-28 14:01:32,638.638 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:01:32,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:01:32,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:01:32,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:01:34,696.696 INFO    ] ================================================
[2026-10-28 14:01:34,710.710 INFO    ] Launching Daemon at Wed Oct 28 14:01:34 IST 2026
[2026-10-28 14:01:34,721.721 INFO    ] ================================================
[2026-10-28 14:01:35,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:01:35
[2026-10-28 14:01:36,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:01:36,350.350 INFO    ] Initializing speech engine...
[2026-10-28 14:01:36,358.358 INFO    ] 2026-10-28 14:01:36
[2026-10-28 14:01:36,639.639 INFO    ] 2026-10-28 14:01:36
[2026-10-28 14:01:36,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:01:37,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:01:37,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:01:37,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:01:37,369.369 INFO    ] time= 28/10/2026 14:01:37
[2026-10-28 14:01:37,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:01:37,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:01:37,664.664 INFO    ] No existing commands found in stream
[2026-10-28 14:01:42,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:01:42,684.684 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 14:01:46,423.423 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:01:46,426.426 INFO    ] Checking for system updates...
[2026-10-28 14:01:46,463.463 INFO    ] 200
[2026-10-28 14:01:46,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:01:46,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:01:46,523.523 INFO    ] No update needed
[2026-10-28 14:01:46,527.527 INFO    ] Checking for camera pi updates...
[2026-10-28 14:01:46,562.562 INFO    ] 200
[2026-10-28 14:01:46,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:01:46,606.606 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:01:46,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:01:46,707.707 INFO    ] No camera update needed
[2026-10-28 14:01:46,709.709 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:01:46,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:01:46,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:01:46,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:01:48,765.765 INFO    ] ================================================
[2026-10-28 14:01:48,780.780 INFO    ] Launching Daemon at Wed Oct 28 14:01:48 IST 2026
[2026-10-28 14:01:48,790.790 INFO    ] ================================================
[2026-10-28 14:01:49,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:01:49
[2026-10-28 14:01:49,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:01:50,212.212 INFO    ] Initializing speech engine...
[2026-10-28 14:01:50,228.228 INFO    ] 2026-10-28 14:01:50
[2026-10-28 14:01:50,510.510 INFO    ] 2026-10-28 14:01:50
[2026-10-28 14:01:50,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:01:50,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:01:50,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:01:51,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:01:51,144.144 INFO    ] time= 28/10/2026 14:01:51
[2026-10-28 14:01:51,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:01:51,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:01:51,318.318 INFO    ] No existing commands found in stream
[2026-10-28 14:01:56,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:01:56,334.334 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-28 14:01:58,181.181 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:01:58,184.184 INFO    ] Checking for system updates...
[2026-10-28 14:01:58,224.224 INFO    ] 200
[2026-10-28 14:01:58,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:01:58,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:01:58,288.288 INFO    ] No update needed
[2026-10-28 14:01:58,290.290 INFO    ] Checking for camera pi updates...
[2026-10-28 14:01:58,323.323 INFO    ] 200
[2026-10-28 14:01:58,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:01:58,365.365 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:01:58,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:01:58,460.460 INFO    ] No camera update needed
[2026-10-28 14:01:58,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:01:58,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:01:58,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:01:58,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:02:00,516.516 INFO    ] ================================================
[2026-10-28 14:02:00,531.531 INFO    ] Launching Daemon at Wed Oct 28 14:02:00 IST 2026
[2026-10-28 14:02:00,542.542 INFO    ] ================================================
[2026-10-28 14:02:01,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:02:01
[2026-10-28 14:02:01,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:02:02,391.391 INFO    ] Initializing speech engine...
[2026-10-28 14:02:02,399.399 INFO    ] 2026-10-28 14:02:02
[2026-10-28 14:02:02,766.766 INFO    ] 2026-10-28 14:02:02
[2026-10-28 14:02:02,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:02:03,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:02:03,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:02:03,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:02:03,359.359 INFO    ] time= 28/10/2026 14:02:03
[2026-10-28 14:02:03,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:02:03,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:02:03,553.553 INFO    ] No existing commands found in stream
[2026-10-28 14:02:08,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:02:08,586.586 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 14:02:13,304.304 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:02:13,306.306 INFO    ] Checking for system updates...
[2026-10-28 14:02:13,344.344 INFO    ] 200
[2026-10-28 14:02:13,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:02:13,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:02:13,406.406 INFO    ] No update needed
[2026-10-28 14:02:13,408.408 INFO    ] Checking for camera pi updates...
[2026-10-28 14:02:13,441.441 INFO    ] 200
[2026-10-28 14:02:13,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:02:13,485.485 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:02:13,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:02:13,593.593 INFO    ] No camera update needed
[2026-10-28 14:02:13,595.595 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:02:13,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:02:13,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:02:13,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:02:15,648.648 INFO    ] ================================================
[2026-10-28 14:02:15,663.663 INFO    ] Launching Daemon at Wed Oct 28 14:02:15 IST 2026
[2026-10-28 14:02:15,675.675 INFO    ] ================================================
[2026-10-28 14:02:16,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:02:16
[2026-10-28 14:02:16,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:02:17,090.090 INFO    ] Initializing speech engine...
[2026-10-28 14:02:17,096.096 INFO    ] 2026-10-28 14:02:17
[2026-10-28 14:02:17,383.383 INFO    ] 2026-10-28 14:02:17
[2026-10-28 14:02:17,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:02:17,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:02:17,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:02:17,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:02:17,986.986 INFO    ] time= 28/10/2026 14:02:17
[2026-10-28 14:02:18,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:02:18,012.012 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:02:18,177.177 INFO    ] No existing commands found in stream
[2026-10-28 14:02:23,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:02:23,210.210 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-28 14:02:26,021.021 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:02:26,024.024 INFO    ] Checking for system updates...
[2026-10-28 14:02:26,062.062 INFO    ] 200
[2026-10-28 14:02:26,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:02:26,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:02:26,132.132 INFO    ] No update needed
[2026-10-28 14:02:26,134.134 INFO    ] Checking for camera pi updates...
[2026-10-28 14:02:26,170.170 INFO    ] 200
[2026-10-28 14:02:26,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:02:26,216.216 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:02:26,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:02:26,315.315 INFO    ] No camera update needed
[2026-10-28 14:02:26,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:02:26,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:02:26,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:02:26,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:02:28,369.369 INFO    ] ================================================
[2026-10-28 14:02:28,384.384 INFO    ] Launching Daemon at Wed Oct 28 14:02:28 IST 2026
[2026-10-28 14:02:28,394.394 INFO    ] ================================================
[2026-10-28 14:02:28,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:02:28
[2026-10-28 14:02:29,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:02:29,846.846 INFO    ] Initializing speech engine...
[2026-10-28 14:02:29,863.863 INFO    ] 2026-10-28 14:02:29
[2026-10-28 14:02:30,132.132 INFO    ] 2026-10-28 14:02:30
[2026-10-28 14:02:30,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:02:30,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:02:30,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:02:30,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:02:30,738.738 INFO    ] time= 28/10/2026 14:02:30
[2026-10-28 14:02:30,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:02:30,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:02:30,885.885 INFO    ] No existing commands found in stream
[2026-10-28 14:02:35,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:02:35,917.917 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-28 14:02:37,503.503 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:02:37,506.506 INFO    ] Checking for system updates...
[2026-10-28 14:02:37,542.542 INFO    ] 200
[2026-10-28 14:02:37,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:02:37,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:02:37,603.603 INFO    ] No update needed
[2026-10-28 14:02:37,605.605 INFO    ] Checking for camera pi updates...
[2026-10-28 14:02:37,641.641 INFO    ] 200
[2026-10-28 14:02:37,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:02:37,693.693 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:02:37,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:02:37,777.777 INFO    ] No camera update needed
[2026-10-28 14:02:37,779.779 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:02:37,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:02:37,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:02:37,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:02:39,831.831 INFO    ] ================================================
[2026-10-28 14:02:39,847.847 INFO    ] Launching Daemon at Wed Oct 28 14:02:39 IST 2026
[2026-10-28 14:02:39,861.861 INFO    ] ================================================
[2026-10-28 14:02:40,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:02:40
[2026-10-28 14:02:41,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:02:41,290.290 INFO    ] Initializing speech engine...
[2026-10-28 14:02:41,307.307 INFO    ] 2026-10-28 14:02:41
[2026-10-28 14:02:41,579.579 INFO    ] 2026-10-28 14:02:41
[2026-10-28 14:02:41,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:02:41,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:02:41,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:02:42,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:02:42,144.144 INFO    ] time= 28/10/2026 14:02:42
[2026-10-28 14:02:42,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:02:42,192.192 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:02:42,344.344 INFO    ] No existing commands found in stream
[2026-10-28 14:02:47,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:02:47,382.382 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 14:02:51,065.065 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:02:51,068.068 INFO    ] Checking for system updates...
[2026-10-28 14:02:51,104.104 INFO    ] 200
[2026-10-28 14:02:51,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:02:51,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:02:51,162.162 INFO    ] No update needed
[2026-10-28 14:02:51,165.165 INFO    ] Checking for camera pi updates...
[2026-10-28 14:02:51,200.200 INFO    ] 200
[2026-10-28 14:02:51,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:02:51,245.245 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:02:51,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:02:51,346.346 INFO    ] No camera update needed
[2026-10-28 14:02:51,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:02:51,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:02:51,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:02:51,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:02:53,403.403 INFO    ] ================================================
[2026-10-28 14:02:53,418.418 INFO    ] Launching Daemon at Wed Oct 28 14:02:53 IST 2026
[2026-10-28 14:02:53,429.429 INFO    ] ================================================
[2026-10-28 14:02:54,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:02:54
[2026-10-28 14:02:54,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:02:54,884.884 INFO    ] Initializing speech engine...
[2026-10-28 14:02:54,891.891 INFO    ] 2026-10-28 14:02:54
[2026-10-28 14:02:55,151.151 INFO    ] 2026-10-28 14:02:55
[2026-10-28 14:02:55,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:02:55,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:02:55,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:02:55,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:02:55,708.708 INFO    ] time= 28/10/2026 14:02:55
[2026-10-28 14:02:55,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:02:55,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:02:55,869.869 INFO    ] No existing commands found in stream
[2026-10-28 14:03:00,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:03:00,907.907 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-28 14:03:01,928.928 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:03:01,930.930 INFO    ] Checking for system updates...
[2026-10-28 14:03:01,969.969 INFO    ] 200
[2026-10-28 14:03:01,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:03:02,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:03:02,116.116 INFO    ] No update needed
[2026-10-28 14:03:02,122.122 INFO    ] Checking for camera pi updates...
[2026-10-28 14:03:02,187.187 INFO    ] 200
[2026-10-28 14:03:02,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:03:02,285.285 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:03:02,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:03:02,390.390 INFO    ] No camera update needed
[2026-10-28 14:03:02,401.401 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:03:02,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:03:02,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:03:02,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:03:04,479.479 INFO    ] ================================================
[2026-10-28 14:03:04,494.494 INFO    ] Launching Daemon at Wed Oct 28 14:03:04 IST 2026
[2026-10-28 14:03:04,505.505 INFO    ] ================================================
[2026-10-28 14:03:05,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:03:05
[2026-10-28 14:03:05,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:03:06,104.104 INFO    ] Initializing speech engine...
[2026-10-28 14:03:06,115.115 INFO    ] 2026-10-28 14:03:06
[2026-10-28 14:03:06,400.400 INFO    ] 2026-10-28 14:03:06
[2026-10-28 14:03:06,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:03:06,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:03:06,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:03:07,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:03:07,096.096 INFO    ] time= 28/10/2026 14:03:07
[2026-10-28 14:03:07,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:03:07,193.193 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:03:07,341.341 INFO    ] No existing commands found in stream
[2026-10-28 14:03:12,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:03:12,358.358 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-28 14:03:13,785.785 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:03:13,788.788 INFO    ] Checking for system updates...
[2026-10-28 14:03:13,823.823 INFO    ] 200
[2026-10-28 14:03:13,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:03:13,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:03:13,886.886 INFO    ] No update needed
[2026-10-28 14:03:13,889.889 INFO    ] Checking for camera pi updates...
[2026-10-28 14:03:13,922.922 INFO    ] 200
[2026-10-28 14:03:13,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:03:13,965.965 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:03:14,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:03:14,058.058 INFO    ] No camera update needed
[2026-10-28 14:03:14,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:03:14,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:03:14,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:03:14,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:03:16,112.112 INFO    ] ================================================
[2026-10-28 14:03:16,127.127 INFO    ] Launching Daemon at Wed Oct 28 14:03:16 IST 2026
[2026-10-28 14:03:16,138.138 INFO    ] ================================================
[2026-10-28 14:03:16,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:03:16
[2026-10-28 14:03:17,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:03:17,584.584 INFO    ] Initializing speech engine...
[2026-10-28 14:03:17,610.610 INFO    ] 2026-10-28 14:03:17
[2026-10-28 14:03:17,880.880 INFO    ] 2026-10-28 14:03:17
[2026-10-28 14:03:17,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:03:18,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:03:18,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:03:18,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:03:18,506.506 INFO    ] time= 28/10/2026 14:03:18
[2026-10-28 14:03:18,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:03:18,530.530 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:03:18,676.676 INFO    ] No existing commands found in stream
[2026-10-28 14:03:23,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:03:23,693.693 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 14:03:27,791.791 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:03:27,794.794 INFO    ] Checking for system updates...
[2026-10-28 14:03:27,830.830 INFO    ] 200
[2026-10-28 14:03:27,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:03:27,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:03:27,888.888 INFO    ] No update needed
[2026-10-28 14:03:27,890.890 INFO    ] Checking for camera pi updates...
[2026-10-28 14:03:27,924.924 INFO    ] 200
[2026-10-28 14:03:27,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:03:27,970.970 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:03:28,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:03:28,076.076 INFO    ] No camera update needed
[2026-10-28 14:03:28,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:03:28,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:03:28,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:03:28,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:03:30,132.132 INFO    ] ================================================
[2026-10-28 14:03:30,148.148 INFO    ] Launching Daemon at Wed Oct 28 14:03:30 IST 2026
[2026-10-28 14:03:30,159.159 INFO    ] ================================================
[2026-10-28 14:03:30,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:03:30
[2026-10-28 14:03:31,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:03:31,583.583 INFO    ] Initializing speech engine...
[2026-10-28 14:03:31,591.591 INFO    ] 2026-10-28 14:03:31
[2026-10-28 14:03:31,841.841 INFO    ] 2026-10-28 14:03:31
[2026-10-28 14:03:31,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:03:32,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:03:32,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:03:32,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:03:32,474.474 INFO    ] time= 28/10/2026 14:03:32
[2026-10-28 14:03:32,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:03:32,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:03:32,654.654 INFO    ] No existing commands found in stream
[2026-10-28 14:03:37,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:03:37,675.675 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 14:03:42,444.444 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:03:42,446.446 INFO    ] Checking for system updates...
[2026-10-28 14:03:42,482.482 INFO    ] 200
[2026-10-28 14:03:42,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:03:42,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:03:42,545.545 INFO    ] No update needed
[2026-10-28 14:03:42,547.547 INFO    ] Checking for camera pi updates...
[2026-10-28 14:03:42,580.580 INFO    ] 200
[2026-10-28 14:03:42,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:03:42,622.622 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:03:42,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:03:42,706.706 INFO    ] No camera update needed
[2026-10-28 14:03:42,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:03:42,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:03:42,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:03:42,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:03:44,762.762 INFO    ] ================================================
[2026-10-28 14:03:44,777.777 INFO    ] Launching Daemon at Wed Oct 28 14:03:44 IST 2026
[2026-10-28 14:03:44,788.788 INFO    ] ================================================
[2026-10-28 14:03:45,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:03:45
[2026-10-28 14:03:45,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:03:46,209.209 INFO    ] Initializing speech engine...
[2026-10-28 14:03:46,217.217 INFO    ] 2026-10-28 14:03:46
[2026-10-28 14:03:46,500.500 INFO    ] 2026-10-28 14:03:46
[2026-10-28 14:03:46,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:03:46,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:03:46,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:03:47,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:03:47,217.217 INFO    ] time= 28/10/2026 14:03:47
[2026-10-28 14:03:47,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:03:47,299.299 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:03:47,440.440 INFO    ] No existing commands found in stream
[2026-10-28 14:03:52,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:03:52,462.462 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-28 14:03:54,105.105 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:03:54,108.108 INFO    ] Checking for system updates...
[2026-10-28 14:03:54,145.145 INFO    ] 200
[2026-10-28 14:03:54,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:03:54,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:03:54,202.202 INFO    ] No update needed
[2026-10-28 14:03:54,205.205 INFO    ] Checking for camera pi updates...
[2026-10-28 14:03:54,242.242 INFO    ] 200
[2026-10-28 14:03:54,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:03:54,286.286 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:03:54,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:03:54,374.374 INFO    ] No camera update needed
[2026-10-28 14:03:54,377.377 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:03:54,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:03:54,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:03:54,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:03:56,437.437 INFO    ] ================================================
[2026-10-28 14:03:56,452.452 INFO    ] Launching Daemon at Wed Oct 28 14:03:56 IST 2026
[2026-10-28 14:03:56,463.463 INFO    ] ================================================
[2026-10-28 14:03:57,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:03:57
[2026-10-28 14:03:57,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:03:58,017.017 INFO    ] Initializing speech engine...
[2026-10-28 14:03:58,030.030 INFO    ] 2026-10-28 14:03:58
[2026-10-28 14:03:58,310.310 INFO    ] 2026-10-28 14:03:58
[2026-10-28 14:03:58,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:03:58,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:03:58,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:03:59,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:03:59,090.090 INFO    ] time= 28/10/2026 14:03:59
[2026-10-28 14:03:59,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:03:59,166.166 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:03:59,310.310 INFO    ] No existing commands found in stream
[2026-10-28 14:04:04,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:04:04,331.331 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-28 14:04:06,305.305 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:04:06,308.308 INFO    ] Checking for system updates...
[2026-10-28 14:04:06,346.346 INFO    ] 200
[2026-10-28 14:04:06,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:04:06,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:04:06,407.407 INFO    ] No update needed
[2026-10-28 14:04:06,409.409 INFO    ] Checking for camera pi updates...
[2026-10-28 14:04:06,444.444 INFO    ] 200
[2026-10-28 14:04:06,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:04:06,494.494 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:04:06,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:04:06,687.687 INFO    ] No camera update needed
[2026-10-28 14:04:06,690.690 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:04:06,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:04:06,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:04:06,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:04:08,747.747 INFO    ] ================================================
[2026-10-28 14:04:08,763.763 INFO    ] Launching Daemon at Wed Oct 28 14:04:08 IST 2026
[2026-10-28 14:04:08,774.774 INFO    ] ================================================
[2026-10-28 14:04:09,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:04:09
[2026-10-28 14:04:09,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:04:10,174.174 INFO    ] Initializing speech engine...
[2026-10-28 14:04:10,182.182 INFO    ] 2026-10-28 14:04:10
[2026-10-28 14:04:10,454.454 INFO    ] 2026-10-28 14:04:10
[2026-10-28 14:04:10,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:04:10,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:04:10,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:04:11,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:04:11,038.038 INFO    ] time= 28/10/2026 14:04:11
[2026-10-28 14:04:11,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:04:11,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:04:11,195.195 INFO    ] No existing commands found in stream
[2026-10-28 14:04:16,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:04:16,218.218 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 14:04:18,806.806 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:04:18,809.809 INFO    ] Checking for system updates...
[2026-10-28 14:04:18,844.844 INFO    ] 200
[2026-10-28 14:04:18,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:04:18,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:04:18,908.908 INFO    ] No update needed
[2026-10-28 14:04:18,910.910 INFO    ] Checking for camera pi updates...
[2026-10-28 14:04:18,944.944 INFO    ] 200
[2026-10-28 14:04:18,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:04:18,987.987 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:04:19,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:04:19,083.083 INFO    ] No camera update needed
[2026-10-28 14:04:19,085.085 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:04:19,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:04:19,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:04:19,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:04:21,139.139 INFO    ] ================================================
[2026-10-28 14:04:21,154.154 INFO    ] Launching Daemon at Wed Oct 28 14:04:21 IST 2026
[2026-10-28 14:04:21,165.165 INFO    ] ================================================
[2026-10-28 14:04:21,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:04:21
[2026-10-28 14:04:22,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:04:22,775.775 INFO    ] Initializing speech engine...
[2026-10-28 14:04:22,787.787 INFO    ] 2026-10-28 14:04:22
[2026-10-28 14:04:23,067.067 INFO    ] 2026-10-28 14:04:23
[2026-10-28 14:04:23,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:04:23,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:04:23,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:04:23,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:04:23,816.816 INFO    ] time= 28/10/2026 14:04:23
[2026-10-28 14:04:23,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:04:23,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:04:24,121.121 INFO    ] No existing commands found in stream
[2026-10-28 14:04:29,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:04:29,155.155 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-28 14:04:33,305.305 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:04:33,308.308 INFO    ] Checking for system updates...
[2026-10-28 14:04:33,361.361 INFO    ] 200
[2026-10-28 14:04:33,364.364 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 14:04:33,367.367 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-28 14:04:33,370.370 INFO    ] Checking for camera pi updates...
[2026-10-28 14:04:33,409.409 INFO    ] 200
[2026-10-28 14:04:33,412.412 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 14:04:33,415.415 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-28 14:04:33,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:04:33,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:04:33,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:04:33,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:04:35,476.476 INFO    ] ================================================
[2026-10-28 14:04:35,491.491 INFO    ] Launching Daemon at Wed Oct 28 14:04:35 IST 2026
[2026-10-28 14:04:35,502.502 INFO    ] ================================================
[2026-10-28 14:04:36,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:04:36
[2026-10-28 14:04:36,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:04:36,972.972 INFO    ] Initializing speech engine...
[2026-10-28 14:04:36,982.982 INFO    ] 2026-10-28 14:04:36
[2026-10-28 14:04:37,245.245 INFO    ] 2026-10-28 14:04:37
[2026-10-28 14:04:37,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:04:37,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:04:37,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:04:37,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:04:37,872.872 INFO    ] time= 28/10/2026 14:04:37
[2026-10-28 14:04:37,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:04:37,895.895 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:04:38,051.051 INFO    ] No existing commands found in stream
[2026-10-28 14:04:43,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:04:43,068.068 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 14:04:47,685.685 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:04:47,688.688 INFO    ] Checking for system updates...
[2026-10-28 14:04:47,724.724 INFO    ] 200
[2026-10-28 14:04:47,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:04:47,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:04:47,781.781 INFO    ] No update needed
[2026-10-28 14:04:47,784.784 INFO    ] Checking for camera pi updates...
[2026-10-28 14:04:47,817.817 INFO    ] 200
[2026-10-28 14:04:47,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:04:47,861.861 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:04:47,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:04:47,950.950 INFO    ] No camera update needed
[2026-10-28 14:04:47,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:04:47,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:04:47,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:04:47,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:04:50,006.006 INFO    ] ================================================
[2026-10-28 14:04:50,021.021 INFO    ] Launching Daemon at Wed Oct 28 14:04:50 IST 2026
[2026-10-28 14:04:50,032.032 INFO    ] ================================================
[2026-10-28 14:04:50,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:04:50
[2026-10-28 14:04:51,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:04:51,514.514 INFO    ] Initializing speech engine...
[2026-10-28 14:04:51,523.523 INFO    ] 2026-10-28 14:04:51
[2026-10-28 14:04:51,781.781 INFO    ] 2026-10-28 14:04:51
[2026-10-28 14:04:51,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:04:52,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:04:52,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:04:52,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:04:52,365.365 INFO    ] time= 28/10/2026 14:04:52
[2026-10-28 14:04:52,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:04:52,380.380 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:04:52,543.543 INFO    ] No existing commands found in stream
[2026-10-28 14:04:57,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:04:57,572.572 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-28 14:05:00,584.584 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:05:00,588.588 INFO    ] Checking for system updates...
[2026-10-28 14:05:00,628.628 INFO    ] 200
[2026-10-28 14:05:00,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:05:00,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:05:00,686.686 INFO    ] No update needed
[2026-10-28 14:05:00,689.689 INFO    ] Checking for camera pi updates...
[2026-10-28 14:05:00,723.723 INFO    ] 200
[2026-10-28 14:05:00,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:05:00,766.766 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:05:00,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:05:00,851.851 INFO    ] No camera update needed
[2026-10-28 14:05:00,853.853 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:05:00,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:05:00,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:05:00,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:05:02,910.910 INFO    ] ================================================
[2026-10-28 14:05:02,925.925 INFO    ] Launching Daemon at Wed Oct 28 14:05:02 IST 2026
[2026-10-28 14:05:02,936.936 INFO    ] ================================================
[2026-10-28 14:05:03,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:05:03
[2026-10-28 14:05:04,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:05:04,372.372 INFO    ] Initializing speech engine...
[2026-10-28 14:05:04,385.385 INFO    ] 2026-10-28 14:05:04
[2026-10-28 14:05:04,648.648 INFO    ] 2026-10-28 14:05:04
[2026-10-28 14:05:04,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:05:04,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:05:04,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:05:05,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:05:05,206.206 INFO    ] time= 28/10/2026 14:05:05
[2026-10-28 14:05:05,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:05:05,251.251 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:05:05,384.384 INFO    ] No existing commands found in stream
[2026-10-28 14:05:10,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:05:10,412.412 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-28 14:05:11,825.825 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:05:11,828.828 INFO    ] Checking for system updates...
[2026-10-28 14:05:11,864.864 INFO    ] 200
[2026-10-28 14:05:11,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:05:11,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:05:11,931.931 INFO    ] No update needed
[2026-10-28 14:05:11,933.933 INFO    ] Checking for camera pi updates...
[2026-10-28 14:05:11,969.969 INFO    ] 200
[2026-10-28 14:05:11,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:05:12,018.018 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:05:12,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:05:12,101.101 INFO    ] No camera update needed
[2026-10-28 14:05:12,103.103 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:05:12,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:05:12,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:05:12,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:05:14,157.157 INFO    ] ================================================
[2026-10-28 14:05:14,172.172 INFO    ] Launching Daemon at Wed Oct 28 14:05:14 IST 2026
[2026-10-28 14:05:14,183.183 INFO    ] ================================================
[2026-10-28 14:05:14,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:05:14
[2026-10-28 14:05:15,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:05:15,698.698 INFO    ] Initializing speech engine...
[2026-10-28 14:05:15,704.704 INFO    ] 2026-10-28 14:05:15
[2026-10-28 14:05:15,966.966 INFO    ] 2026-10-28 14:05:15
[2026-10-28 14:05:16,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:05:16,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:05:16,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:05:16,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:05:16,755.755 INFO    ] time= 28/10/2026 14:05:16
[2026-10-28 14:05:16,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:05:16,864.864 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:05:17,056.056 INFO    ] No existing commands found in stream
[2026-10-28 14:05:22,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:05:22,089.089 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-28 14:05:23,609.609 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:05:23,611.611 INFO    ] Checking for system updates...
[2026-10-28 14:05:23,650.650 INFO    ] 200
[2026-10-28 14:05:23,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:05:23,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:05:23,713.713 INFO    ] No update needed
[2026-10-28 14:05:23,716.716 INFO    ] Checking for camera pi updates...
[2026-10-28 14:05:23,753.753 INFO    ] 200
[2026-10-28 14:05:23,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:05:23,796.796 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:05:23,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:05:23,878.878 INFO    ] No camera update needed
[2026-10-28 14:05:23,880.880 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:05:23,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:05:23,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:05:23,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:05:25,933.933 INFO    ] ================================================
[2026-10-28 14:05:25,949.949 INFO    ] Launching Daemon at Wed Oct 28 14:05:25 IST 2026
[2026-10-28 14:05:25,960.960 INFO    ] ================================================
[2026-10-28 14:05:26,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:05:26
[2026-10-28 14:05:27,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:05:27,391.391 INFO    ] Initializing speech engine...
[2026-10-28 14:05:27,413.413 INFO    ] 2026-10-28 14:05:27
[2026-10-28 14:05:27,667.667 INFO    ] 2026-10-28 14:05:27
[2026-10-28 14:05:27,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:05:28,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:05:28,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:05:28,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:05:28,281.281 INFO    ] time= 28/10/2026 14:05:28
[2026-10-28 14:05:28,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:05:28,297.297 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:05:28,448.448 INFO    ] No existing commands found in stream
[2026-10-28 14:05:33,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:05:33,476.476 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-28 14:05:36,785.785 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:05:36,787.787 INFO    ] Checking for system updates...
[2026-10-28 14:05:36,827.827 INFO    ] 200
[2026-10-28 14:05:36,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:05:36,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:05:36,884.884 INFO    ] No update needed
[2026-10-28 14:05:36,886.886 INFO    ] Checking for camera pi updates...
[2026-10-28 14:05:36,920.920 INFO    ] 200
[2026-10-28 14:05:36,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:05:36,967.967 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:05:37,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:05:37,051.051 INFO    ] No camera update needed
[2026-10-28 14:05:37,053.053 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:05:37,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:05:37,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:05:37,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:05:39,109.109 INFO    ] ================================================
[2026-10-28 14:05:39,126.126 INFO    ] Launching Daemon at Wed Oct 28 14:05:39 IST 2026
[2026-10-28 14:05:39,137.137 INFO    ] ================================================
[2026-10-28 14:05:39,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:05:39
[2026-10-28 14:05:40,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:05:40,757.757 INFO    ] Initializing speech engine...
[2026-10-28 14:05:40,767.767 INFO    ] 2026-10-28 14:05:40
[2026-10-28 14:05:41,059.059 INFO    ] 2026-10-28 14:05:41
[2026-10-28 14:05:41,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:05:41,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:05:41,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:05:41,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:05:41,833.833 INFO    ] time= 28/10/2026 14:05:41
[2026-10-28 14:05:41,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:05:41,934.934 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:05:42,131.131 INFO    ] No existing commands found in stream
[2026-10-28 14:05:47,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:05:47,166.166 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-28 14:05:48,825.825 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:05:48,827.827 INFO    ] Checking for system updates...
[2026-10-28 14:05:48,863.863 INFO    ] 200
[2026-10-28 14:05:48,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:05:48,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:05:48,921.921 INFO    ] No update needed
[2026-10-28 14:05:48,924.924 INFO    ] Checking for camera pi updates...
[2026-10-28 14:05:48,961.961 INFO    ] 200
[2026-10-28 14:05:48,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:05:49,009.009 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:05:49,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:05:49,107.107 INFO    ] No camera update needed
[2026-10-28 14:05:49,110.110 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:05:49,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:05:49,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:05:49,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:05:51,162.162 INFO    ] ================================================
[2026-10-28 14:05:51,178.178 INFO    ] Launching Daemon at Wed Oct 28 14:05:51 IST 2026
[2026-10-28 14:05:51,189.189 INFO    ] ================================================
[2026-10-28 14:05:51,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:05:51
[2026-10-28 14:05:52,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:05:52,656.656 INFO    ] Initializing speech engine...
[2026-10-28 14:05:52,668.668 INFO    ] 2026-10-28 14:05:52
[2026-10-28 14:05:52,978.978 INFO    ] 2026-10-28 14:05:52
[2026-10-28 14:05:53,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:05:53,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:05:53,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:05:53,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:05:53,717.717 INFO    ] time= 28/10/2026 14:05:53
[2026-10-28 14:05:53,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:05:53,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:05:54,012.012 INFO    ] No existing commands found in stream
[2026-10-28 14:05:59,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:05:59,051.051 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-28 14:05:59,802.802 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:05:59,805.805 INFO    ] Checking for system updates...
[2026-10-28 14:05:59,846.846 INFO    ] 200
[2026-10-28 14:05:59,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:05:59,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:05:59,911.911 INFO    ] No update needed
[2026-10-28 14:05:59,914.914 INFO    ] Checking for camera pi updates...
[2026-10-28 14:05:59,947.947 INFO    ] 200
[2026-10-28 14:05:59,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:05:59,990.990 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:06:00,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:06:00,076.076 INFO    ] No camera update needed
[2026-10-28 14:06:00,078.078 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:06:00,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:06:00,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:06:00,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:06:02,134.134 INFO    ] ================================================
[2026-10-28 14:06:02,157.157 INFO    ] Launching Daemon at Wed Oct 28 14:06:02 IST 2026
[2026-10-28 14:06:02,170.170 INFO    ] ================================================
[2026-10-28 14:06:02,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:06:02
[2026-10-28 14:06:03,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:06:03,729.729 INFO    ] Initializing speech engine...
[2026-10-28 14:06:03,738.738 INFO    ] 2026-10-28 14:06:03
[2026-10-28 14:06:04,013.013 INFO    ] 2026-10-28 14:06:03
[2026-10-28 14:06:04,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:06:04,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:06:04,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:06:04,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:06:04,590.590 INFO    ] time= 28/10/2026 14:06:04
[2026-10-28 14:06:04,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:06:04,631.631 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:06:04,763.763 INFO    ] No existing commands found in stream
[2026-10-28 14:06:09,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:06:09,796.796 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-28 14:06:13,621.621 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:06:13,624.624 INFO    ] Checking for system updates...
[2026-10-28 14:06:13,660.660 INFO    ] 200
[2026-10-28 14:06:13,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:06:13,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:06:13,717.717 INFO    ] No update needed
[2026-10-28 14:06:13,720.720 INFO    ] Checking for camera pi updates...
[2026-10-28 14:06:13,758.758 INFO    ] 200
[2026-10-28 14:06:13,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:06:13,800.800 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:06:13,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:06:13,988.988 INFO    ] No camera update needed
[2026-10-28 14:06:13,991.991 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:06:13,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:06:14,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:06:14,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:06:16,049.049 INFO    ] ================================================
[2026-10-28 14:06:16,065.065 INFO    ] Launching Daemon at Wed Oct 28 14:06:16 IST 2026
[2026-10-28 14:06:16,076.076 INFO    ] ================================================
[2026-10-28 14:06:16,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:06:16
[2026-10-28 14:06:17,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:06:17,488.488 INFO    ] Initializing speech engine...
[2026-10-28 14:06:17,511.511 INFO    ] 2026-10-28 14:06:17
[2026-10-28 14:06:17,767.767 INFO    ] 2026-10-28 14:06:17
[2026-10-28 14:06:17,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:06:18,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:06:18,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:06:18,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:06:18,337.337 INFO    ] time= 28/10/2026 14:06:18
[2026-10-28 14:06:18,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:06:18,362.362 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:06:18,514.514 INFO    ] No existing commands found in stream
[2026-10-28 14:06:23,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:06:23,547.547 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 14:06:26,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:06:26,066.066 INFO    ] Checking for system updates...
[2026-10-28 14:06:26,123.123 INFO    ] 200
[2026-10-28 14:06:26,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:06:26,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:06:26,207.207 INFO    ] No update needed
[2026-10-28 14:06:26,210.210 INFO    ] Checking for camera pi updates...
[2026-10-28 14:06:26,251.251 INFO    ] 200
[2026-10-28 14:06:26,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:06:26,305.305 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:06:26,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:06:26,407.407 INFO    ] No camera update needed
[2026-10-28 14:06:26,409.409 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:06:26,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:06:26,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:06:26,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:06:28,470.470 INFO    ] ================================================
[2026-10-28 14:06:28,485.485 INFO    ] Launching Daemon at Wed Oct 28 14:06:28 IST 2026
[2026-10-28 14:06:28,496.496 INFO    ] ================================================
[2026-10-28 14:06:29,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:06:29
[2026-10-28 14:06:29,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:06:29,955.955 INFO    ] Initializing speech engine...
[2026-10-28 14:06:29,963.963 INFO    ] 2026-10-28 14:06:29
[2026-10-28 14:06:30,222.222 INFO    ] 2026-10-28 14:06:30
[2026-10-28 14:06:30,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:06:30,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:06:30,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:06:30,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:06:30,810.810 INFO    ] time= 28/10/2026 14:06:30
[2026-10-28 14:06:30,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:06:30,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:06:30,960.960 INFO    ] No existing commands found in stream
[2026-10-28 14:06:35,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:06:35,994.994 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-28 14:06:39,769.769 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:06:39,771.771 INFO    ] Checking for system updates...
[2026-10-28 14:06:39,807.807 INFO    ] 200
[2026-10-28 14:06:39,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:06:39,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:06:39,865.865 INFO    ] No update needed
[2026-10-28 14:06:39,867.867 INFO    ] Checking for camera pi updates...
[2026-10-28 14:06:39,901.901 INFO    ] 200
[2026-10-28 14:06:39,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:06:39,950.950 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:06:40,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:06:40,034.034 INFO    ] No camera update needed
[2026-10-28 14:06:40,037.037 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:06:40,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:06:40,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:06:40,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:06:42,090.090 INFO    ] ================================================
[2026-10-28 14:06:42,106.106 INFO    ] Launching Daemon at Wed Oct 28 14:06:42 IST 2026
[2026-10-28 14:06:42,117.117 INFO    ] ================================================
[2026-10-28 14:06:42,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:06:42
[2026-10-28 14:06:43,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:06:43,556.556 INFO    ] Initializing speech engine...
[2026-10-28 14:06:43,570.570 INFO    ] 2026-10-28 14:06:43
[2026-10-28 14:06:43,836.836 INFO    ] 2026-10-28 14:06:43
[2026-10-28 14:06:43,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:06:44,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:06:44,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:06:44,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:06:44,392.392 INFO    ] time= 28/10/2026 14:06:44
[2026-10-28 14:06:44,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:06:44,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:06:44,543.543 INFO    ] No existing commands found in stream
[2026-10-28 14:06:49,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:06:49,559.559 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-28 14:06:51,864.864 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:06:51,866.866 INFO    ] Checking for system updates...
[2026-10-28 14:06:51,903.903 INFO    ] 200
[2026-10-28 14:06:51,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:06:51,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:06:51,969.969 INFO    ] No update needed
[2026-10-28 14:06:51,971.971 INFO    ] Checking for camera pi updates...
[2026-10-28 14:06:52,005.005 INFO    ] 200
[2026-10-28 14:06:52,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:06:52,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:06:52,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:06:52,131.131 INFO    ] No camera update needed
[2026-10-28 14:06:52,133.133 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:06:52,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:06:52,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:06:52,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:06:54,185.185 INFO    ] ================================================
[2026-10-28 14:06:54,201.201 INFO    ] Launching Daemon at Wed Oct 28 14:06:54 IST 2026
[2026-10-28 14:06:54,212.212 INFO    ] ================================================
[2026-10-28 14:06:54,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:06:54
[2026-10-28 14:06:55,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:06:55,750.750 INFO    ] Initializing speech engine...
[2026-10-28 14:06:55,759.759 INFO    ] 2026-10-28 14:06:55
[2026-10-28 14:06:56,015.015 INFO    ] 2026-10-28 14:06:56
[2026-10-28 14:06:56,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:06:56,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:06:56,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:06:56,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:06:56,711.711 INFO    ] time= 28/10/2026 14:06:56
[2026-10-28 14:06:56,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:06:56,807.807 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:06:56,956.956 INFO    ] No existing commands found in stream
[2026-10-28 14:07:01,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:07:01,977.977 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-28 14:07:04,028.028 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:07:04,031.031 INFO    ] Checking for system updates...
[2026-10-28 14:07:04,067.067 INFO    ] 200
[2026-10-28 14:07:04,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:07:04,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:07:04,125.125 INFO    ] No update needed
[2026-10-28 14:07:04,128.128 INFO    ] Checking for camera pi updates...
[2026-10-28 14:07:04,166.166 INFO    ] 200
[2026-10-28 14:07:04,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:07:04,209.209 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:07:04,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:07:04,312.312 INFO    ] No camera update needed
[2026-10-28 14:07:04,315.315 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:07:04,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:07:04,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:07:04,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:07:06,370.370 INFO    ] ================================================
[2026-10-28 14:07:06,386.386 INFO    ] Launching Daemon at Wed Oct 28 14:07:06 IST 2026
[2026-10-28 14:07:06,398.398 INFO    ] ================================================
[2026-10-28 14:07:06,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:07:06
[2026-10-28 14:07:07,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:07:07,837.837 INFO    ] Initializing speech engine...
[2026-10-28 14:07:07,857.857 INFO    ] 2026-10-28 14:07:07
[2026-10-28 14:07:08,115.115 INFO    ] 2026-10-28 14:07:08
[2026-10-28 14:07:08,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:07:08,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:07:08,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:07:08,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:07:08,690.690 INFO    ] time= 28/10/2026 14:07:08
[2026-10-28 14:07:08,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:07:08,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:07:08,884.884 INFO    ] No existing commands found in stream
[2026-10-28 14:07:13,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:07:13,917.917 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-28 14:07:18,511.511 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:07:18,514.514 INFO    ] Checking for system updates...
[2026-10-28 14:07:18,555.555 INFO    ] 200
[2026-10-28 14:07:18,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:07:18,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:07:18,614.614 INFO    ] No update needed
[2026-10-28 14:07:18,616.616 INFO    ] Checking for camera pi updates...
[2026-10-28 14:07:18,655.655 INFO    ] 200
[2026-10-28 14:07:18,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:07:18,697.697 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:07:18,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:07:18,759.759 INFO    ] No camera update needed
[2026-10-28 14:07:18,761.761 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:07:18,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:07:18,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:07:18,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:07:20,813.813 INFO    ] ================================================
[2026-10-28 14:07:20,829.829 INFO    ] Launching Daemon at Wed Oct 28 14:07:20 IST 2026
[2026-10-28 14:07:20,841.841 INFO    ] ================================================
[2026-10-28 14:07:21,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:07:21
[2026-10-28 14:07:22,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:07:22,298.298 INFO    ] Initializing speech engine...
[2026-10-28 14:07:22,307.307 INFO    ] 2026-10-28 14:07:22
[2026-10-28 14:07:22,556.556 INFO    ] 2026-10-28 14:07:22
[2026-10-28 14:07:22,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:07:22,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:07:22,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:07:23,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:07:23,271.271 INFO    ] time= 28/10/2026 14:07:23
[2026-10-28 14:07:23,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:07:23,361.361 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:07:23,508.508 INFO    ] No existing commands found in stream
[2026-10-28 14:07:28,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:07:28,525.525 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-28 14:07:30,583.583 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:07:30,585.585 INFO    ] Checking for system updates...
[2026-10-28 14:07:30,627.627 INFO    ] 200
[2026-10-28 14:07:30,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:07:30,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:07:30,693.693 INFO    ] No update needed
[2026-10-28 14:07:30,696.696 INFO    ] Checking for camera pi updates...
[2026-10-28 14:07:30,729.729 INFO    ] 200
[2026-10-28 14:07:30,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:07:30,777.777 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:07:30,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:07:30,870.870 INFO    ] No camera update needed
[2026-10-28 14:07:30,873.873 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:07:30,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:07:30,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:07:30,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:07:32,928.928 INFO    ] ================================================
[2026-10-28 14:07:32,944.944 INFO    ] Launching Daemon at Wed Oct 28 14:07:32 IST 2026
[2026-10-28 14:07:32,955.955 INFO    ] ================================================
[2026-10-28 14:07:33,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:07:33
[2026-10-28 14:07:34,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:07:34,354.354 INFO    ] Initializing speech engine...
[2026-10-28 14:07:34,362.362 INFO    ] 2026-10-28 14:07:34
[2026-10-28 14:07:34,649.649 INFO    ] 2026-10-28 14:07:34
[2026-10-28 14:07:34,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:07:34,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:07:34,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:07:35,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:07:35,295.295 INFO    ] time= 28/10/2026 14:07:35
[2026-10-28 14:07:35,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:07:35,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:07:35,472.472 INFO    ] No existing commands found in stream
[2026-10-28 14:07:40,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:07:40,491.491 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 14:07:41,544.544 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:07:41,547.547 INFO    ] Checking for system updates...
[2026-10-28 14:07:41,584.584 INFO    ] 200
[2026-10-28 14:07:41,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:07:41,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:07:41,646.646 INFO    ] No update needed
[2026-10-28 14:07:41,649.649 INFO    ] Checking for camera pi updates...
[2026-10-28 14:07:41,682.682 INFO    ] 200
[2026-10-28 14:07:41,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:07:41,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:07:41,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:07:41,813.813 INFO    ] No camera update needed
[2026-10-28 14:07:41,816.816 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:07:41,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:07:41,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:07:41,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:07:43,868.868 INFO    ] ================================================
[2026-10-28 14:07:43,884.884 INFO    ] Launching Daemon at Wed Oct 28 14:07:43 IST 2026
[2026-10-28 14:07:43,895.895 INFO    ] ================================================
[2026-10-28 14:07:44,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:07:44
[2026-10-28 14:07:45,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:07:45,329.329 INFO    ] Initializing speech engine...
[2026-10-28 14:07:45,338.338 INFO    ] 2026-10-28 14:07:45
[2026-10-28 14:07:45,585.585 INFO    ] 2026-10-28 14:07:45
[2026-10-28 14:07:45,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:07:45,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:07:45,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:07:46,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:07:46,153.153 INFO    ] time= 28/10/2026 14:07:46
[2026-10-28 14:07:46,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:07:46,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:07:46,308.308 INFO    ] No existing commands found in stream
[2026-10-28 14:07:51,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:07:51,339.339 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 14:07:52,020.020 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:07:52,023.023 INFO    ] Checking for system updates...
[2026-10-28 14:07:52,058.058 INFO    ] 200
[2026-10-28 14:07:52,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:07:52,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:07:52,116.116 INFO    ] No update needed
[2026-10-28 14:07:52,118.118 INFO    ] Checking for camera pi updates...
[2026-10-28 14:07:52,157.157 INFO    ] 200
[2026-10-28 14:07:52,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:07:52,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:07:52,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:07:52,310.310 INFO    ] No camera update needed
[2026-10-28 14:07:52,312.312 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:07:52,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:07:52,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:07:52,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:07:54,367.367 INFO    ] ================================================
[2026-10-28 14:07:54,383.383 INFO    ] Launching Daemon at Wed Oct 28 14:07:54 IST 2026
[2026-10-28 14:07:54,394.394 INFO    ] ================================================
[2026-10-28 14:07:54,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:07:54
[2026-10-28 14:07:55,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:07:55,837.837 INFO    ] Initializing speech engine...
[2026-10-28 14:07:55,844.844 INFO    ] 2026-10-28 14:07:55
[2026-10-28 14:07:56,089.089 INFO    ] 2026-10-28 14:07:56
[2026-10-28 14:07:56,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:07:56,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:07:56,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:07:56,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:07:56,872.872 INFO    ] time= 28/10/2026 14:07:56
[2026-10-28 14:07:56,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:07:56,962.962 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:07:57,095.095 INFO    ] No existing commands found in stream
[2026-10-28 14:08:02,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:08:02,108.108 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-28 14:08:04,437.437 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:08:04,440.440 INFO    ] Checking for system updates...
[2026-10-28 14:08:04,475.475 INFO    ] 200
[2026-10-28 14:08:04,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:08:04,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:08:04,532.532 INFO    ] No update needed
[2026-10-28 14:08:04,535.535 INFO    ] Checking for camera pi updates...
[2026-10-28 14:08:04,572.572 INFO    ] 200
[2026-10-28 14:08:04,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:08:04,615.615 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:08:04,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:08:04,696.696 INFO    ] No camera update needed
[2026-10-28 14:08:04,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:08:04,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:08:04,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:08:04,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:08:06,754.754 INFO    ] ================================================
[2026-10-28 14:08:06,770.770 INFO    ] Launching Daemon at Wed Oct 28 14:08:06 IST 2026
[2026-10-28 14:08:06,782.782 INFO    ] ================================================
[2026-10-28 14:08:07,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:08:07
[2026-10-28 14:08:08,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:08:08,438.438 INFO    ] Initializing speech engine...
[2026-10-28 14:08:08,447.447 INFO    ] 2026-10-28 14:08:08
[2026-10-28 14:08:08,729.729 INFO    ] 2026-10-28 14:08:08
[2026-10-28 14:08:08,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:08:09,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:08:09,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:08:09,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:08:09,344.344 INFO    ] time= 28/10/2026 14:08:09
[2026-10-28 14:08:09,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:08:09,414.414 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:08:09,558.558 INFO    ] No existing commands found in stream
[2026-10-28 14:08:14,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:08:14,588.588 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-28 14:08:18,424.424 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:08:18,427.427 INFO    ] Checking for system updates...
[2026-10-28 14:08:18,465.465 INFO    ] 200
[2026-10-28 14:08:18,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:08:18,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:08:18,525.525 INFO    ] No update needed
[2026-10-28 14:08:18,528.528 INFO    ] Checking for camera pi updates...
[2026-10-28 14:08:18,566.566 INFO    ] 200
[2026-10-28 14:08:18,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:08:18,608.608 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:08:18,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:08:18,808.808 INFO    ] No camera update needed
[2026-10-28 14:08:18,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:08:18,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:08:18,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:08:18,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:08:20,864.864 INFO    ] ================================================
[2026-10-28 14:08:20,889.889 INFO    ] Launching Daemon at Wed Oct 28 14:08:20 IST 2026
[2026-10-28 14:08:20,902.902 INFO    ] ================================================
[2026-10-28 14:08:21,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:08:21
[2026-10-28 14:08:22,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:08:22,594.594 INFO    ] Initializing speech engine...
[2026-10-28 14:08:22,602.602 INFO    ] 2026-10-28 14:08:22
[2026-10-28 14:08:22,914.914 INFO    ] 2026-10-28 14:08:22
[2026-10-28 14:08:22,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:08:23,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:08:23,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:08:23,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:08:23,610.610 INFO    ] time= 28/10/2026 14:08:23
[2026-10-28 14:08:23,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:08:23,668.668 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:08:23,809.809 INFO    ] No existing commands found in stream
[2026-10-28 14:08:28,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:08:28,840.840 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 14:08:32,862.862 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:08:32,865.865 INFO    ] Checking for system updates...
[2026-10-28 14:08:32,914.914 INFO    ] 200
[2026-10-28 14:08:32,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:08:32,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:08:32,990.990 INFO    ] No update needed
[2026-10-28 14:08:32,993.993 INFO    ] Checking for camera pi updates...
[2026-10-28 14:08:33,031.031 INFO    ] 200
[2026-10-28 14:08:33,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:08:33,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:08:33,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:08:33,174.174 INFO    ] No camera update needed
[2026-10-28 14:08:33,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:08:33,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:08:33,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:08:33,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:08:35,229.229 INFO    ] ================================================
[2026-10-28 14:08:35,244.244 INFO    ] Launching Daemon at Wed Oct 28 14:08:35 IST 2026
[2026-10-28 14:08:35,255.255 INFO    ] ================================================
[2026-10-28 14:08:35,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:08:35
[2026-10-28 14:08:36,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:08:36,809.809 INFO    ] Initializing speech engine...
[2026-10-28 14:08:36,816.816 INFO    ] 2026-10-28 14:08:36
[2026-10-28 14:08:37,074.074 INFO    ] 2026-10-28 14:08:37
[2026-10-28 14:08:37,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:08:37,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:08:37,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:08:37,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:08:37,667.667 INFO    ] time= 28/10/2026 14:08:37
[2026-10-28 14:08:37,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:08:37,772.772 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:08:37,951.951 INFO    ] No existing commands found in stream
[2026-10-28 14:08:42,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:08:42,979.979 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-28 14:08:47,180.180 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:08:47,183.183 INFO    ] Checking for system updates...
[2026-10-28 14:08:47,223.223 INFO    ] 200
[2026-10-28 14:08:47,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:08:47,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:08:47,289.289 INFO    ] No update needed
[2026-10-28 14:08:47,291.291 INFO    ] Checking for camera pi updates...
[2026-10-28 14:08:47,329.329 INFO    ] 200
[2026-10-28 14:08:47,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:08:47,377.377 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:08:47,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:08:47,460.460 INFO    ] No camera update needed
[2026-10-28 14:08:47,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:08:47,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:08:47,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:08:47,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:08:49,514.514 INFO    ] ================================================
[2026-10-28 14:08:49,529.529 INFO    ] Launching Daemon at Wed Oct 28 14:08:49 IST 2026
[2026-10-28 14:08:49,539.539 INFO    ] ================================================
[2026-10-28 14:08:50,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:08:50
[2026-10-28 14:08:50,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:08:50,959.959 INFO    ] Initializing speech engine...
[2026-10-28 14:08:50,968.968 INFO    ] 2026-10-28 14:08:50
[2026-10-28 14:08:51,220.220 INFO    ] 2026-10-28 14:08:51
[2026-10-28 14:08:51,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:08:51,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:08:51,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:08:51,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:08:51,801.801 INFO    ] time= 28/10/2026 14:08:51
[2026-10-28 14:08:51,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:08:51,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:08:51,961.961 INFO    ] No existing commands found in stream
[2026-10-28 14:08:56,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:08:56,989.989 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-28 14:08:58,701.701 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:08:58,704.704 INFO    ] Checking for system updates...
[2026-10-28 14:08:58,739.739 INFO    ] 200
[2026-10-28 14:08:58,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:08:58,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:08:58,799.799 INFO    ] No update needed
[2026-10-28 14:08:58,801.801 INFO    ] Checking for camera pi updates...
[2026-10-28 14:08:58,835.835 INFO    ] 200
[2026-10-28 14:08:58,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:08:58,884.884 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:08:58,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:08:58,995.995 INFO    ] No camera update needed
[2026-10-28 14:08:58,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:08:59,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:08:59,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:08:59,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:09:01,052.052 INFO    ] ================================================
[2026-10-28 14:09:01,077.077 INFO    ] Launching Daemon at Wed Oct 28 14:09:01 IST 2026
[2026-10-28 14:09:01,089.089 INFO    ] ================================================
[2026-10-28 14:09:01,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:09:01
[2026-10-28 14:09:02,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:09:02,816.816 INFO    ] Initializing speech engine...
[2026-10-28 14:09:02,825.825 INFO    ] 2026-10-28 14:09:02
[2026-10-28 14:09:03,121.121 INFO    ] 2026-10-28 14:09:03
[2026-10-28 14:09:03,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:09:03,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:09:03,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:09:04,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:09:04,195.195 INFO    ] time= 28/10/2026 14:09:04
[2026-10-28 14:09:04,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:09:04,214.214 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:09:04,612.612 INFO    ] No existing commands found in stream
[2026-10-28 14:09:09,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:09:09,627.627 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 14:09:11,704.704 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:09:11,706.706 INFO    ] Checking for system updates...
[2026-10-28 14:09:11,748.748 INFO    ] 200
[2026-10-28 14:09:11,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:09:11,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:09:11,817.817 INFO    ] No update needed
[2026-10-28 14:09:11,819.819 INFO    ] Checking for camera pi updates...
[2026-10-28 14:09:11,858.858 INFO    ] 200
[2026-10-28 14:09:11,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:09:11,902.902 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:09:11,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:09:11,998.998 INFO    ] No camera update needed
[2026-10-28 14:09:12,001.001 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:09:12,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:09:12,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:09:12,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:09:14,057.057 INFO    ] ================================================
[2026-10-28 14:09:14,072.072 INFO    ] Launching Daemon at Wed Oct 28 14:09:14 IST 2026
[2026-10-28 14:09:14,083.083 INFO    ] ================================================
[2026-10-28 14:09:14,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:09:14
[2026-10-28 14:09:15,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:09:15,498.498 INFO    ] Initializing speech engine...
[2026-10-28 14:09:15,513.513 INFO    ] 2026-10-28 14:09:15
[2026-10-28 14:09:15,799.799 INFO    ] 2026-10-28 14:09:15
[2026-10-28 14:09:15,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:09:16,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:09:16,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:09:16,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:09:16,448.448 INFO    ] time= 28/10/2026 14:09:16
[2026-10-28 14:09:16,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:09:16,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:09:16,611.611 INFO    ] No existing commands found in stream
[2026-10-28 14:09:21,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:09:21,631.631 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-28 14:09:23,624.624 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:09:23,627.627 INFO    ] Checking for system updates...
[2026-10-28 14:09:23,667.667 INFO    ] 200
[2026-10-28 14:09:23,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:09:23,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:09:23,731.731 INFO    ] No update needed
[2026-10-28 14:09:23,734.734 INFO    ] Checking for camera pi updates...
[2026-10-28 14:09:23,771.771 INFO    ] 200
[2026-10-28 14:09:23,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:09:23,814.814 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:09:23,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:09:23,898.898 INFO    ] No camera update needed
[2026-10-28 14:09:23,900.900 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:09:23,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:09:23,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:09:23,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:09:25,954.954 INFO    ] ================================================
[2026-10-28 14:09:25,969.969 INFO    ] Launching Daemon at Wed Oct 28 14:09:25 IST 2026
[2026-10-28 14:09:25,979.979 INFO    ] ================================================
[2026-10-28 14:09:26,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:09:26
[2026-10-28 14:09:27,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:09:27,451.451 INFO    ] Initializing speech engine...
[2026-10-28 14:09:27,460.460 INFO    ] 2026-10-28 14:09:27
[2026-10-28 14:09:27,723.723 INFO    ] 2026-10-28 14:09:27
[2026-10-28 14:09:27,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:09:28,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:09:28,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:09:28,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:09:28,423.423 INFO    ] time= 28/10/2026 14:09:28
[2026-10-28 14:09:28,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:09:28,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:09:28,704.704 INFO    ] No existing commands found in stream
[2026-10-28 14:09:33,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:09:33,719.719 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-28 14:09:37,582.582 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:09:37,585.585 INFO    ] Checking for system updates...
[2026-10-28 14:09:37,624.624 INFO    ] 200
[2026-10-28 14:09:37,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:09:37,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:09:37,689.689 INFO    ] No update needed
[2026-10-28 14:09:37,692.692 INFO    ] Checking for camera pi updates...
[2026-10-28 14:09:37,736.736 INFO    ] 200
[2026-10-28 14:09:37,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:09:37,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:09:37,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:09:37,893.893 INFO    ] No camera update needed
[2026-10-28 14:09:37,896.896 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:09:37,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:09:37,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:09:37,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:09:39,948.948 INFO    ] ================================================
[2026-10-28 14:09:39,964.964 INFO    ] Launching Daemon at Wed Oct 28 14:09:39 IST 2026
[2026-10-28 14:09:39,974.974 INFO    ] ================================================
[2026-10-28 14:09:40,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:09:40
[2026-10-28 14:09:41,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:09:41,439.439 INFO    ] Initializing speech engine...
[2026-10-28 14:09:41,453.453 INFO    ] 2026-10-28 14:09:41
[2026-10-28 14:09:41,725.725 INFO    ] 2026-10-28 14:09:41
[2026-10-28 14:09:41,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:09:42,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:09:42,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:09:42,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:09:42,496.496 INFO    ] time= 28/10/2026 14:09:42
[2026-10-28 14:09:42,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:09:42,585.585 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:09:42,713.713 INFO    ] No existing commands found in stream
[2026-10-28 14:09:47,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:09:47,736.736 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-28 14:09:52,184.184 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:09:52,187.187 INFO    ] Checking for system updates...
[2026-10-28 14:09:52,231.231 INFO    ] 200
[2026-10-28 14:09:52,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:09:52,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:09:52,304.304 INFO    ] No update needed
[2026-10-28 14:09:52,307.307 INFO    ] Checking for camera pi updates...
[2026-10-28 14:09:52,348.348 INFO    ] 200
[2026-10-28 14:09:52,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:09:52,396.396 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:09:52,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:09:52,470.470 INFO    ] No camera update needed
[2026-10-28 14:09:52,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:09:52,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:09:52,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:09:52,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:09:54,525.525 INFO    ] ================================================
[2026-10-28 14:09:54,540.540 INFO    ] Launching Daemon at Wed Oct 28 14:09:54 IST 2026
[2026-10-28 14:09:54,551.551 INFO    ] ================================================
[2026-10-28 14:09:55,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:09:55
[2026-10-28 14:09:55,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:09:56,080.080 INFO    ] Initializing speech engine...
[2026-10-28 14:09:56,089.089 INFO    ] 2026-10-28 14:09:56
[2026-10-28 14:09:56,335.335 INFO    ] 2026-10-28 14:09:56
[2026-10-28 14:09:56,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:09:56,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:09:56,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:09:56,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:09:56,892.892 INFO    ] time= 28/10/2026 14:09:56
[2026-10-28 14:09:56,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:09:56,916.916 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:09:57,073.073 INFO    ] No existing commands found in stream
[2026-10-28 14:10:02,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:10:02,107.107 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 14:10:09,322.322 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:10:09,325.325 INFO    ] Checking for system updates...
[2026-10-28 14:10:09,365.365 INFO    ] 200
[2026-10-28 14:10:09,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:10:09,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:10:09,430.430 INFO    ] No update needed
[2026-10-28 14:10:09,432.432 INFO    ] Checking for camera pi updates...
[2026-10-28 14:10:09,465.465 INFO    ] 200
[2026-10-28 14:10:09,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:10:09,507.507 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:10:09,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:10:09,609.609 INFO    ] No camera update needed
[2026-10-28 14:10:09,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:10:09,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:10:09,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:10:09,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:10:11,666.666 INFO    ] ================================================
[2026-10-28 14:10:11,680.680 INFO    ] Launching Daemon at Wed Oct 28 14:10:11 IST 2026
[2026-10-28 14:10:11,691.691 INFO    ] ================================================
[2026-10-28 14:10:12,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:10:12
[2026-10-28 14:10:13,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:10:13,274.274 INFO    ] Initializing speech engine...
[2026-10-28 14:10:13,297.297 INFO    ] 2026-10-28 14:10:13
[2026-10-28 14:10:13,567.567 INFO    ] 2026-10-28 14:10:13
[2026-10-28 14:10:13,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:10:13,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:10:13,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:10:14,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:10:14,205.205 INFO    ] time= 28/10/2026 14:10:14
[2026-10-28 14:10:14,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:10:14,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:10:14,360.360 INFO    ] No existing commands found in stream
[2026-10-28 14:10:19,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:10:19,379.379 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 14:10:21,502.502 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:10:21,505.505 INFO    ] Checking for system updates...
[2026-10-28 14:10:21,540.540 INFO    ] 200
[2026-10-28 14:10:21,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:10:21,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:10:21,597.597 INFO    ] No update needed
[2026-10-28 14:10:21,599.599 INFO    ] Checking for camera pi updates...
[2026-10-28 14:10:21,637.637 INFO    ] 200
[2026-10-28 14:10:21,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:10:21,684.684 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:10:21,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:10:21,870.870 INFO    ] No camera update needed
[2026-10-28 14:10:21,873.873 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:10:21,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:10:21,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:10:21,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:10:23,926.926 INFO    ] ================================================
[2026-10-28 14:10:23,941.941 INFO    ] Launching Daemon at Wed Oct 28 14:10:23 IST 2026
[2026-10-28 14:10:23,952.952 INFO    ] ================================================
[2026-10-28 14:10:24,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:10:24
[2026-10-28 14:10:25,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:10:25,371.371 INFO    ] Initializing speech engine...
[2026-10-28 14:10:25,380.380 INFO    ] 2026-10-28 14:10:25
[2026-10-28 14:10:25,628.628 INFO    ] 2026-10-28 14:10:25
[2026-10-28 14:10:25,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:10:25,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:10:25,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:10:26,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:10:26,184.184 INFO    ] time= 28/10/2026 14:10:26
[2026-10-28 14:10:26,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:10:26,230.230 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:10:26,400.400 INFO    ] No existing commands found in stream
[2026-10-28 14:10:31,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:10:31,434.434 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 14:10:32,155.155 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:10:32,158.158 INFO    ] Checking for system updates...
[2026-10-28 14:10:32,197.197 INFO    ] 200
[2026-10-28 14:10:32,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:10:32,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:10:32,261.261 INFO    ] No update needed
[2026-10-28 14:10:32,264.264 INFO    ] Checking for camera pi updates...
[2026-10-28 14:10:32,303.303 INFO    ] 200
[2026-10-28 14:10:32,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:10:32,349.349 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:10:32,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:10:32,437.437 INFO    ] No camera update needed
[2026-10-28 14:10:32,439.439 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:10:32,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:10:32,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:10:32,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:10:34,496.496 INFO    ] ================================================
[2026-10-28 14:10:34,511.511 INFO    ] Launching Daemon at Wed Oct 28 14:10:34 IST 2026
[2026-10-28 14:10:34,521.521 INFO    ] ================================================
[2026-10-28 14:10:35,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:10:35
[2026-10-28 14:10:35,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:10:36,169.169 INFO    ] Initializing speech engine...
[2026-10-28 14:10:36,177.177 INFO    ] 2026-10-28 14:10:36
[2026-10-28 14:10:36,469.469 INFO    ] 2026-10-28 14:10:36
[2026-10-28 14:10:36,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:10:36,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:10:36,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:10:37,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:10:37,191.191 INFO    ] time= 28/10/2026 14:10:37
[2026-10-28 14:10:37,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:10:37,291.291 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:10:37,439.439 INFO    ] No existing commands found in stream
[2026-10-28 14:10:42,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:10:42,459.459 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-28 14:10:44,044.044 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:10:44,047.047 INFO    ] Checking for system updates...
[2026-10-28 14:10:44,085.085 INFO    ] 200
[2026-10-28 14:10:44,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:10:44,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:10:44,145.145 INFO    ] No update needed
[2026-10-28 14:10:44,147.147 INFO    ] Checking for camera pi updates...
[2026-10-28 14:10:44,187.187 INFO    ] 200
[2026-10-28 14:10:44,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:10:44,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:10:44,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:10:44,317.317 INFO    ] No camera update needed
[2026-10-28 14:10:44,320.320 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:10:44,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:10:44,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:10:44,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:10:46,376.376 INFO    ] ================================================
[2026-10-28 14:10:46,391.391 INFO    ] Launching Daemon at Wed Oct 28 14:10:46 IST 2026
[2026-10-28 14:10:46,402.402 INFO    ] ================================================
[2026-10-28 14:10:47,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:10:47
[2026-10-28 14:10:47,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:10:48,044.044 INFO    ] Initializing speech engine...
[2026-10-28 14:10:48,056.056 INFO    ] 2026-10-28 14:10:48
[2026-10-28 14:10:48,387.387 INFO    ] 2026-10-28 14:10:48
[2026-10-28 14:10:48,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:10:48,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:10:48,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:10:49,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:10:49,124.124 INFO    ] time= 28/10/2026 14:10:49
[2026-10-28 14:10:49,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:10:49,217.217 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:10:49,421.421 INFO    ] No existing commands found in stream
[2026-10-28 14:10:54,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:10:54,450.450 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 14:10:58,746.746 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:10:58,749.749 INFO    ] Checking for system updates...
[2026-10-28 14:10:58,790.790 INFO    ] 200
[2026-10-28 14:10:58,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:10:58,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:10:58,849.849 INFO    ] No update needed
[2026-10-28 14:10:58,852.852 INFO    ] Checking for camera pi updates...
[2026-10-28 14:10:58,887.887 INFO    ] 200
[2026-10-28 14:10:58,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:10:58,936.936 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:10:59,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:10:59,013.013 INFO    ] No camera update needed
[2026-10-28 14:10:59,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:10:59,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:10:59,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:10:59,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:11:01,071.071 INFO    ] ================================================
[2026-10-28 14:11:01,087.087 INFO    ] Launching Daemon at Wed Oct 28 14:11:01 IST 2026
[2026-10-28 14:11:01,098.098 INFO    ] ================================================
[2026-10-28 14:11:01,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:11:01
[2026-10-28 14:11:02,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:11:02,713.713 INFO    ] Initializing speech engine...
[2026-10-28 14:11:02,724.724 INFO    ] 2026-10-28 14:11:02
[2026-10-28 14:11:03,050.050 INFO    ] 2026-10-28 14:11:03
[2026-10-28 14:11:03,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:11:03,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:11:03,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:11:03,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:11:03,707.707 INFO    ] time= 28/10/2026 14:11:03
[2026-10-28 14:11:03,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:11:03,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:11:03,896.896 INFO    ] No existing commands found in stream
[2026-10-28 14:11:08,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:11:08,938.938 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-28 14:11:11,724.724 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:11:11,727.727 INFO    ] Checking for system updates...
[2026-10-28 14:11:11,765.765 INFO    ] 200
[2026-10-28 14:11:11,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:11:11,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:11:11,831.831 INFO    ] No update needed
[2026-10-28 14:11:11,834.834 INFO    ] Checking for camera pi updates...
[2026-10-28 14:11:11,869.869 INFO    ] 200
[2026-10-28 14:11:11,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:11:11,920.920 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:11:12,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:11:12,007.007 INFO    ] No camera update needed
[2026-10-28 14:11:12,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:11:12,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:11:12,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:11:12,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:11:14,065.065 INFO    ] ================================================
[2026-10-28 14:11:14,080.080 INFO    ] Launching Daemon at Wed Oct 28 14:11:14 IST 2026
[2026-10-28 14:11:14,091.091 INFO    ] ================================================
[2026-10-28 14:11:14,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:11:14
[2026-10-28 14:11:15,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:11:15,532.532 INFO    ] Initializing speech engine...
[2026-10-28 14:11:15,538.538 INFO    ] 2026-10-28 14:11:15
[2026-10-28 14:11:15,840.840 INFO    ] 2026-10-28 14:11:15
[2026-10-28 14:11:15,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:11:16,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:11:16,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:11:16,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:11:16,467.467 INFO    ] time= 28/10/2026 14:11:16
[2026-10-28 14:11:16,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:11:16,491.491 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:11:16,634.634 INFO    ] No existing commands found in stream
[2026-10-28 14:11:21,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:11:21,657.657 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-28 14:11:24,324.324 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:11:24,327.327 INFO    ] Checking for system updates...
[2026-10-28 14:11:24,364.364 INFO    ] 200
[2026-10-28 14:11:24,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:11:24,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:11:24,421.421 INFO    ] No update needed
[2026-10-28 14:11:24,423.423 INFO    ] Checking for camera pi updates...
[2026-10-28 14:11:24,458.458 INFO    ] 200
[2026-10-28 14:11:24,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:11:24,501.501 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:11:24,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:11:24,578.578 INFO    ] No camera update needed
[2026-10-28 14:11:24,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:11:24,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:11:24,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:11:24,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:11:26,634.634 INFO    ] ================================================
[2026-10-28 14:11:26,650.650 INFO    ] Launching Daemon at Wed Oct 28 14:11:26 IST 2026
[2026-10-28 14:11:26,661.661 INFO    ] ================================================
[2026-10-28 14:11:27,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:11:27
[2026-10-28 14:11:27,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:11:28,110.110 INFO    ] Initializing speech engine...
[2026-10-28 14:11:28,119.119 INFO    ] 2026-10-28 14:11:28
[2026-10-28 14:11:28,416.416 INFO    ] 2026-10-28 14:11:28
[2026-10-28 14:11:28,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:11:28,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:11:28,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:11:29,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:11:29,054.054 INFO    ] time= 28/10/2026 14:11:29
[2026-10-28 14:11:29,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:11:29,082.082 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:11:29,259.259 INFO    ] No existing commands found in stream
[2026-10-28 14:11:34,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:11:34,288.288 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-28 14:11:36,862.862 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:11:36,865.865 INFO    ] Checking for system updates...
[2026-10-28 14:11:36,901.901 INFO    ] 200
[2026-10-28 14:11:36,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:11:36,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:11:36,962.962 INFO    ] No update needed
[2026-10-28 14:11:36,964.964 INFO    ] Checking for camera pi updates...
[2026-10-28 14:11:36,999.999 INFO    ] 200
[2026-10-28 14:11:37,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:11:37,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:11:37,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:11:37,133.133 INFO    ] No camera update needed
[2026-10-28 14:11:37,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:11:37,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:11:37,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:11:37,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:11:39,189.189 INFO    ] ================================================
[2026-10-28 14:11:39,204.204 INFO    ] Launching Daemon at Wed Oct 28 14:11:39 IST 2026
[2026-10-28 14:11:39,215.215 INFO    ] ================================================
[2026-10-28 14:11:39,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:11:39
[2026-10-28 14:11:40,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:11:40,676.676 INFO    ] Initializing speech engine...
[2026-10-28 14:11:40,681.681 INFO    ] 2026-10-28 14:11:40
[2026-10-28 14:11:40,946.946 INFO    ] 2026-10-28 14:11:40
[2026-10-28 14:11:41,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:11:41,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:11:41,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:11:41,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:11:41,544.544 INFO    ] time= 28/10/2026 14:11:41
[2026-10-28 14:11:41,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:11:41,606.606 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:11:41,748.748 INFO    ] No existing commands found in stream
[2026-10-28 14:11:46,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:11:46,795.795 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-28 14:11:50,628.628 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:11:50,631.631 INFO    ] Checking for system updates...
[2026-10-28 14:11:50,667.667 INFO    ] 200
[2026-10-28 14:11:50,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:11:50,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:11:50,731.731 INFO    ] No update needed
[2026-10-28 14:11:50,734.734 INFO    ] Checking for camera pi updates...
[2026-10-28 14:11:50,769.769 INFO    ] 200
[2026-10-28 14:11:50,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:11:50,814.814 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:11:50,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:11:50,893.893 INFO    ] No camera update needed
[2026-10-28 14:11:50,896.896 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:11:50,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:11:50,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:11:50,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:11:52,952.952 INFO    ] ================================================
[2026-10-28 14:11:52,967.967 INFO    ] Launching Daemon at Wed Oct 28 14:11:52 IST 2026
[2026-10-28 14:11:52,978.978 INFO    ] ================================================
[2026-10-28 14:11:53,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:11:53
[2026-10-28 14:11:54,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:11:54,376.376 INFO    ] Initializing speech engine...
[2026-10-28 14:11:54,398.398 INFO    ] 2026-10-28 14:11:54
[2026-10-28 14:11:54,658.658 INFO    ] 2026-10-28 14:11:54
[2026-10-28 14:11:54,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:11:54,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:11:54,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:11:55,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:11:55,229.229 INFO    ] time= 28/10/2026 14:11:55
[2026-10-28 14:11:55,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:11:55,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:11:55,415.415 INFO    ] No existing commands found in stream
[2026-10-28 14:12:00,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:12:00,443.443 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 14:12:02,118.118 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:12:02,122.122 INFO    ] Checking for system updates...
[2026-10-28 14:12:02,177.177 INFO    ] 200
[2026-10-28 14:12:02,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:12:02,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:12:02,270.270 INFO    ] No update needed
[2026-10-28 14:12:02,274.274 INFO    ] Checking for camera pi updates...
[2026-10-28 14:12:02,339.339 INFO    ] 200
[2026-10-28 14:12:02,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:12:02,399.399 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:12:02,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:12:02,497.497 INFO    ] No camera update needed
[2026-10-28 14:12:02,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:12:02,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:12:02,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:12:02,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:12:04,556.556 INFO    ] ================================================
[2026-10-28 14:12:04,571.571 INFO    ] Launching Daemon at Wed Oct 28 14:12:04 IST 2026
[2026-10-28 14:12:04,582.582 INFO    ] ================================================
[2026-10-28 14:12:05,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:12:05
[2026-10-28 14:12:05,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:12:06,038.038 INFO    ] Initializing speech engine...
[2026-10-28 14:12:06,049.049 INFO    ] 2026-10-28 14:12:06
[2026-10-28 14:12:06,299.299 INFO    ] 2026-10-28 14:12:06
[2026-10-28 14:12:06,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:12:06,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:12:06,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:12:06,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:12:06,856.856 INFO    ] time= 28/10/2026 14:12:06
[2026-10-28 14:12:06,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:12:06,903.903 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:12:07,028.028 INFO    ] No existing commands found in stream
[2026-10-28 14:12:12,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:12:12,060.060 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 14:12:15,385.385 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:12:15,388.388 INFO    ] Checking for system updates...
[2026-10-28 14:12:15,428.428 INFO    ] 200
[2026-10-28 14:12:15,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:12:15,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:12:15,485.485 INFO    ] No update needed
[2026-10-28 14:12:15,488.488 INFO    ] Checking for camera pi updates...
[2026-10-28 14:12:15,525.525 INFO    ] 200
[2026-10-28 14:12:15,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:12:15,569.569 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:12:15,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:12:15,682.682 INFO    ] No camera update needed
[2026-10-28 14:12:15,685.685 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:12:15,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:12:15,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:12:15,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:12:17,737.737 INFO    ] ================================================
[2026-10-28 14:12:17,752.752 INFO    ] Launching Daemon at Wed Oct 28 14:12:17 IST 2026
[2026-10-28 14:12:17,762.762 INFO    ] ================================================
[2026-10-28 14:12:18,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:12:18
[2026-10-28 14:12:18,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:12:19,216.216 INFO    ] Initializing speech engine...
[2026-10-28 14:12:19,227.227 INFO    ] 2026-10-28 14:12:19
[2026-10-28 14:12:19,475.475 INFO    ] 2026-10-28 14:12:19
[2026-10-28 14:12:19,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:12:19,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:12:19,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:12:20,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:12:20,030.030 INFO    ] time= 28/10/2026 14:12:20
[2026-10-28 14:12:20,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:12:20,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:12:20,183.183 INFO    ] No existing commands found in stream
[2026-10-28 14:12:25,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:12:25,210.210 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 14:12:26,382.382 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:12:26,385.385 INFO    ] Checking for system updates...
[2026-10-28 14:12:26,424.424 INFO    ] 200
[2026-10-28 14:12:26,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:12:26,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:12:26,482.482 INFO    ] No update needed
[2026-10-28 14:12:26,485.485 INFO    ] Checking for camera pi updates...
[2026-10-28 14:12:26,519.519 INFO    ] 200
[2026-10-28 14:12:26,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:12:26,562.562 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:12:26,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:12:26,746.746 INFO    ] No camera update needed
[2026-10-28 14:12:26,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:12:26,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:12:26,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:12:26,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:12:28,804.804 INFO    ] ================================================
[2026-10-28 14:12:28,819.819 INFO    ] Launching Daemon at Wed Oct 28 14:12:28 IST 2026
[2026-10-28 14:12:28,830.830 INFO    ] ================================================
[2026-10-28 14:12:29,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:12:29
[2026-10-28 14:12:30,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:12:30,473.473 INFO    ] Initializing speech engine...
[2026-10-28 14:12:30,480.480 INFO    ] 2026-10-28 14:12:30
[2026-10-28 14:12:30,778.778 INFO    ] 2026-10-28 14:12:30
[2026-10-28 14:12:30,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:12:31,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:12:31,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:12:31,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:12:31,525.525 INFO    ] time= 28/10/2026 14:12:31
[2026-10-28 14:12:31,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:12:31,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:12:31,763.763 INFO    ] No existing commands found in stream
[2026-10-28 14:12:36,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:12:36,789.789 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-28 14:12:40,025.025 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:12:40,028.028 INFO    ] Checking for system updates...
[2026-10-28 14:12:40,065.065 INFO    ] 200
[2026-10-28 14:12:40,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:12:40,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:12:40,123.123 INFO    ] No update needed
[2026-10-28 14:12:40,126.126 INFO    ] Checking for camera pi updates...
[2026-10-28 14:12:40,159.159 INFO    ] 200
[2026-10-28 14:12:40,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:12:40,202.202 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:12:40,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:12:40,285.285 INFO    ] No camera update needed
[2026-10-28 14:12:40,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:12:40,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:12:40,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:12:40,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:12:42,341.341 INFO    ] ================================================
[2026-10-28 14:12:42,356.356 INFO    ] Launching Daemon at Wed Oct 28 14:12:42 IST 2026
[2026-10-28 14:12:42,366.366 INFO    ] ================================================
[2026-10-28 14:12:42,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:12:42
[2026-10-28 14:12:43,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:12:43,775.775 INFO    ] Initializing speech engine...
[2026-10-28 14:12:43,783.783 INFO    ] 2026-10-28 14:12:43
[2026-10-28 14:12:44,081.081 INFO    ] 2026-10-28 14:12:44
[2026-10-28 14:12:44,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:12:44,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:12:44,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:12:44,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:12:44,680.680 INFO    ] time= 28/10/2026 14:12:44
[2026-10-28 14:12:44,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:12:44,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:12:44,838.838 INFO    ] No existing commands found in stream
[2026-10-28 14:12:49,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:12:49,865.865 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 14:12:51,985.985 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:12:51,987.987 INFO    ] Checking for system updates...
[2026-10-28 14:12:52,022.022 INFO    ] 200
[2026-10-28 14:12:52,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:12:52,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:12:52,105.105 INFO    ] No update needed
[2026-10-28 14:12:52,107.107 INFO    ] Checking for camera pi updates...
[2026-10-28 14:12:52,140.140 INFO    ] 200
[2026-10-28 14:12:52,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:12:52,190.190 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:12:52,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:12:52,273.273 INFO    ] No camera update needed
[2026-10-28 14:12:52,275.275 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:12:52,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:12:52,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:12:52,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:12:54,327.327 INFO    ] ================================================
[2026-10-28 14:12:54,342.342 INFO    ] Launching Daemon at Wed Oct 28 14:12:54 IST 2026
[2026-10-28 14:12:54,353.353 INFO    ] ================================================
[2026-10-28 14:12:54,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:12:54
[2026-10-28 14:12:55,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:12:55,816.816 INFO    ] Initializing speech engine...
[2026-10-28 14:12:55,823.823 INFO    ] 2026-10-28 14:12:55
[2026-10-28 14:12:56,087.087 INFO    ] 2026-10-28 14:12:56
[2026-10-28 14:12:56,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:12:56,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:12:56,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:12:56,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:12:56,805.805 INFO    ] time= 28/10/2026 14:12:56
[2026-10-28 14:12:56,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:12:56,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:12:57,056.056 INFO    ] No existing commands found in stream
[2026-10-28 14:13:02,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:13:02,079.079 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-28 14:13:05,861.861 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:13:05,864.864 INFO    ] Checking for system updates...
[2026-10-28 14:13:05,899.899 INFO    ] 200
[2026-10-28 14:13:05,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:13:05,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:13:05,956.956 INFO    ] No update needed
[2026-10-28 14:13:05,958.958 INFO    ] Checking for camera pi updates...
[2026-10-28 14:13:05,992.992 INFO    ] 200
[2026-10-28 14:13:05,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:13:06,036.036 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:13:06,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:13:06,145.145 INFO    ] No camera update needed
[2026-10-28 14:13:06,147.147 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:13:06,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:13:06,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:13:06,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:13:08,201.201 INFO    ] ================================================
[2026-10-28 14:13:08,216.216 INFO    ] Launching Daemon at Wed Oct 28 14:13:08 IST 2026
[2026-10-28 14:13:08,226.226 INFO    ] ================================================
[2026-10-28 14:13:08,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:13:08
[2026-10-28 14:13:09,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:13:09,623.623 INFO    ] Initializing speech engine...
[2026-10-28 14:13:09,635.635 INFO    ] 2026-10-28 14:13:09
[2026-10-28 14:13:09,899.899 INFO    ] 2026-10-28 14:13:09
[2026-10-28 14:13:09,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:13:10,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:13:10,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:13:10,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:13:10,463.463 INFO    ] time= 28/10/2026 14:13:10
[2026-10-28 14:13:10,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:13:10,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:13:10,641.641 INFO    ] No existing commands found in stream
[2026-10-28 14:13:15,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:13:15,679.679 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 14:13:19,882.882 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:13:19,885.885 INFO    ] Checking for system updates...
[2026-10-28 14:13:19,920.920 INFO    ] 200
[2026-10-28 14:13:19,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:13:19,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:13:19,977.977 INFO    ] No update needed
[2026-10-28 14:13:19,979.979 INFO    ] Checking for camera pi updates...
[2026-10-28 14:13:20,012.012 INFO    ] 200
[2026-10-28 14:13:20,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:13:20,060.060 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:13:20,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:13:20,159.159 INFO    ] No camera update needed
[2026-10-28 14:13:20,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:13:20,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:13:20,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:13:20,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:13:22,221.221 INFO    ] ================================================
[2026-10-28 14:13:22,237.237 INFO    ] Launching Daemon at Wed Oct 28 14:13:22 IST 2026
[2026-10-28 14:13:22,248.248 INFO    ] ================================================
[2026-10-28 14:13:22,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:13:22
[2026-10-28 14:13:23,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:13:23,698.698 INFO    ] Initializing speech engine...
[2026-10-28 14:13:23,708.708 INFO    ] 2026-10-28 14:13:23
[2026-10-28 14:13:23,970.970 INFO    ] 2026-10-28 14:13:23
[2026-10-28 14:13:24,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:13:24,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:13:24,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:13:24,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:13:24,525.525 INFO    ] time= 28/10/2026 14:13:24
[2026-10-28 14:13:24,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:13:24,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:13:24,696.696 INFO    ] No existing commands found in stream
[2026-10-28 14:13:29,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:13:29,734.734 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 14:13:30,431.431 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:13:30,433.433 INFO    ] Checking for system updates...
[2026-10-28 14:13:30,473.473 INFO    ] 200
[2026-10-28 14:13:30,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:13:30,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:13:30,530.530 INFO    ] No update needed
[2026-10-28 14:13:30,533.533 INFO    ] Checking for camera pi updates...
[2026-10-28 14:13:30,566.566 INFO    ] 200
[2026-10-28 14:13:30,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:13:30,614.614 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:13:30,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:13:30,701.701 INFO    ] No camera update needed
[2026-10-28 14:13:30,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:13:30,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:13:30,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:13:30,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:13:32,760.760 INFO    ] ================================================
[2026-10-28 14:13:32,775.775 INFO    ] Launching Daemon at Wed Oct 28 14:13:32 IST 2026
[2026-10-28 14:13:32,786.786 INFO    ] ================================================
[2026-10-28 14:13:33,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:13:33
[2026-10-28 14:13:33,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:13:34,187.187 INFO    ] Initializing speech engine...
[2026-10-28 14:13:34,210.210 INFO    ] 2026-10-28 14:13:34
[2026-10-28 14:13:34,467.467 INFO    ] 2026-10-28 14:13:34
[2026-10-28 14:13:34,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:13:34,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:13:34,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:13:35,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:13:35,036.036 INFO    ] time= 28/10/2026 14:13:35
[2026-10-28 14:13:35,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:13:35,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:13:35,208.208 INFO    ] No existing commands found in stream
[2026-10-28 14:13:40,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:13:40,231.231 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 14:13:42,062.062 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:13:42,065.065 INFO    ] Checking for system updates...
[2026-10-28 14:13:42,100.100 INFO    ] 200
[2026-10-28 14:13:42,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:13:42,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:13:42,158.158 INFO    ] No update needed
[2026-10-28 14:13:42,160.160 INFO    ] Checking for camera pi updates...
[2026-10-28 14:13:42,194.194 INFO    ] 200
[2026-10-28 14:13:42,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:13:42,236.236 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:13:42,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:13:42,331.331 INFO    ] No camera update needed
[2026-10-28 14:13:42,333.333 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:13:42,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:13:42,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:13:42,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:13:44,389.389 INFO    ] ================================================
[2026-10-28 14:13:44,405.405 INFO    ] Launching Daemon at Wed Oct 28 14:13:44 IST 2026
[2026-10-28 14:13:44,415.415 INFO    ] ================================================
[2026-10-28 14:13:44,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:13:44
[2026-10-28 14:13:45,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:13:45,879.879 INFO    ] Initializing speech engine...
[2026-10-28 14:13:45,887.887 INFO    ] 2026-10-28 14:13:45
[2026-10-28 14:13:46,146.146 INFO    ] 2026-10-28 14:13:46
[2026-10-28 14:13:46,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:13:46,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:13:46,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:13:46,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:13:46,772.772 INFO    ] time= 28/10/2026 14:13:46
[2026-10-28 14:13:46,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:13:46,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:13:47,029.029 INFO    ] No existing commands found in stream
[2026-10-28 14:13:52,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:13:52,057.057 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-28 14:13:55,582.582 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:13:55,585.585 INFO    ] Checking for system updates...
[2026-10-28 14:13:55,620.620 INFO    ] 200
[2026-10-28 14:13:55,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:13:55,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:13:55,677.677 INFO    ] No update needed
[2026-10-28 14:13:55,680.680 INFO    ] Checking for camera pi updates...
[2026-10-28 14:13:55,714.714 INFO    ] 200
[2026-10-28 14:13:55,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:13:55,761.761 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:13:55,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:13:55,839.839 INFO    ] No camera update needed
[2026-10-28 14:13:55,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:13:55,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:13:55,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:13:55,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:13:57,895.895 INFO    ] ================================================
[2026-10-28 14:13:57,912.912 INFO    ] Launching Daemon at Wed Oct 28 14:13:57 IST 2026
[2026-10-28 14:13:57,923.923 INFO    ] ================================================
[2026-10-28 14:13:58,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:13:58
[2026-10-28 14:13:59,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:13:59,569.569 INFO    ] Initializing speech engine...
[2026-10-28 14:13:59,583.583 INFO    ] 2026-10-28 14:13:59
[2026-10-28 14:13:59,870.870 INFO    ] 2026-10-28 14:13:59
[2026-10-28 14:13:59,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:14:00,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:14:00,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:14:00,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:14:00,588.588 INFO    ] time= 28/10/2026 14:14:00
[2026-10-28 14:14:00,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:14:00,685.685 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:14:00,829.829 INFO    ] No existing commands found in stream
[2026-10-28 14:14:05,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:14:05,853.853 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-28 14:14:06,624.624 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:14:06,627.627 INFO    ] Checking for system updates...
[2026-10-28 14:14:06,665.665 INFO    ] 200
[2026-10-28 14:14:06,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:14:06,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:14:06,725.725 INFO    ] No update needed
[2026-10-28 14:14:06,728.728 INFO    ] Checking for camera pi updates...
[2026-10-28 14:14:06,768.768 INFO    ] 200
[2026-10-28 14:14:06,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:14:06,819.819 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:14:06,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:14:06,905.905 INFO    ] No camera update needed
[2026-10-28 14:14:06,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:14:06,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:14:06,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:14:06,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:14:08,962.962 INFO    ] ================================================
[2026-10-28 14:14:08,977.977 INFO    ] Launching Daemon at Wed Oct 28 14:14:08 IST 2026
[2026-10-28 14:14:08,988.988 INFO    ] ================================================
[2026-10-28 14:14:09,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:14:09
[2026-10-28 14:14:10,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:14:10,408.408 INFO    ] Initializing speech engine...
[2026-10-28 14:14:10,418.418 INFO    ] 2026-10-28 14:14:10
[2026-10-28 14:14:10,668.668 INFO    ] 2026-10-28 14:14:10
[2026-10-28 14:14:10,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:14:10,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:14:11,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:14:11,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:14:11,253.253 INFO    ] time= 28/10/2026 14:14:11
[2026-10-28 14:14:11,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:14:11,290.290 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:14:11,456.456 INFO    ] No existing commands found in stream
[2026-10-28 14:14:16,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:14:16,485.485 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-28 14:14:19,874.874 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:14:19,877.877 INFO    ] Checking for system updates...
[2026-10-28 14:14:19,913.913 INFO    ] 200
[2026-10-28 14:14:19,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:14:19,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:14:19,972.972 INFO    ] No update needed
[2026-10-28 14:14:19,974.974 INFO    ] Checking for camera pi updates...
[2026-10-28 14:14:20,008.008 INFO    ] 200
[2026-10-28 14:14:20,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:14:20,051.051 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:14:20,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:14:20,117.117 INFO    ] No camera update needed
[2026-10-28 14:14:20,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:14:20,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:14:20,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:14:20,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:14:22,174.174 INFO    ] ================================================
[2026-10-28 14:14:22,189.189 INFO    ] Launching Daemon at Wed Oct 28 14:14:22 IST 2026
[2026-10-28 14:14:22,200.200 INFO    ] ================================================
[2026-10-28 14:14:22,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:14:22
[2026-10-28 14:14:23,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:14:23,660.660 INFO    ] Initializing speech engine...
[2026-10-28 14:14:23,669.669 INFO    ] 2026-10-28 14:14:23
[2026-10-28 14:14:23,931.931 INFO    ] 2026-10-28 14:14:23
[2026-10-28 14:14:23,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:14:24,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:14:24,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:14:24,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:14:24,493.493 INFO    ] time= 28/10/2026 14:14:24
[2026-10-28 14:14:24,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:14:24,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:14:24,653.653 INFO    ] No existing commands found in stream
[2026-10-28 14:14:29,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:14:29,686.686 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-28 14:14:33,926.926 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:14:33,929.929 INFO    ] Checking for system updates...
[2026-10-28 14:14:33,964.964 INFO    ] 200
[2026-10-28 14:14:33,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:14:34,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:14:34,026.026 INFO    ] No update needed
[2026-10-28 14:14:34,029.029 INFO    ] Checking for camera pi updates...
[2026-10-28 14:14:34,063.063 INFO    ] 200
[2026-10-28 14:14:34,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:14:34,115.115 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:14:34,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:14:34,218.218 INFO    ] No camera update needed
[2026-10-28 14:14:34,221.221 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:14:34,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:14:34,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:14:34,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:14:36,278.278 INFO    ] ================================================
[2026-10-28 14:14:36,294.294 INFO    ] Launching Daemon at Wed Oct 28 14:14:36 IST 2026
[2026-10-28 14:14:36,305.305 INFO    ] ================================================
[2026-10-28 14:14:36,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:14:36
[2026-10-28 14:14:37,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:14:37,749.749 INFO    ] Initializing speech engine...
[2026-10-28 14:14:37,763.763 INFO    ] 2026-10-28 14:14:37
[2026-10-28 14:14:38,056.056 INFO    ] 2026-10-28 14:14:38
[2026-10-28 14:14:38,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:14:38,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:14:38,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:14:38,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:14:38,629.629 INFO    ] time= 28/10/2026 14:14:38
[2026-10-28 14:14:38,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:14:38,716.716 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:14:38,849.849 INFO    ] No existing commands found in stream
[2026-10-28 14:14:43,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:14:43,868.868 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-28 14:14:45,005.005 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:14:45,007.007 INFO    ] Checking for system updates...
[2026-10-28 14:14:45,049.049 INFO    ] 200
[2026-10-28 14:14:45,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:14:45,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:14:45,111.111 INFO    ] No update needed
[2026-10-28 14:14:45,114.114 INFO    ] Checking for camera pi updates...
[2026-10-28 14:14:45,149.149 INFO    ] 200
[2026-10-28 14:14:45,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:14:45,193.193 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:14:45,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:14:45,286.286 INFO    ] No camera update needed
[2026-10-28 14:14:45,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:14:45,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:14:45,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:14:45,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:14:47,345.345 INFO    ] ================================================
[2026-10-28 14:14:47,361.361 INFO    ] Launching Daemon at Wed Oct 28 14:14:47 IST 2026
[2026-10-28 14:14:47,372.372 INFO    ] ================================================
[2026-10-28 14:14:47,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:14:47
[2026-10-28 14:14:48,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:14:48,807.807 INFO    ] Initializing speech engine...
[2026-10-28 14:14:48,812.812 INFO    ] 2026-10-28 14:14:48
[2026-10-28 14:14:49,074.074 INFO    ] 2026-10-28 14:14:49
[2026-10-28 14:14:49,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:14:49,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:14:49,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:14:49,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:14:49,619.619 INFO    ] time= 28/10/2026 14:14:49
[2026-10-28 14:14:49,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:14:49,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:14:49,836.836 INFO    ] No existing commands found in stream
[2026-10-28 14:14:54,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:14:54,870.870 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-28 14:14:58,757.757 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:14:58,759.759 INFO    ] Checking for system updates...
[2026-10-28 14:14:58,795.795 INFO    ] 200
[2026-10-28 14:14:58,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:14:58,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:14:58,853.853 INFO    ] No update needed
[2026-10-28 14:14:58,856.856 INFO    ] Checking for camera pi updates...
[2026-10-28 14:14:58,889.889 INFO    ] 200
[2026-10-28 14:14:58,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:14:58,936.936 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:14:59,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:14:59,027.027 INFO    ] No camera update needed
[2026-10-28 14:14:59,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:14:59,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:14:59,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:14:59,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:15:01,083.083 INFO    ] ================================================
[2026-10-28 14:15:01,098.098 INFO    ] Launching Daemon at Wed Oct 28 14:15:01 IST 2026
[2026-10-28 14:15:01,110.110 INFO    ] ================================================
[2026-10-28 14:15:01,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:15:01
[2026-10-28 14:15:02,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:15:03,153.153 INFO    ] Initializing speech engine...
[2026-10-28 14:15:03,166.166 INFO    ] 2026-10-28 14:15:03
[2026-10-28 14:15:03,487.487 INFO    ] 2026-10-28 14:15:03
[2026-10-28 14:15:03,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:15:03,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:15:03,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:15:04,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:15:04,031.031 INFO    ] time= 28/10/2026 14:15:04
[2026-10-28 14:15:04,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:15:04,112.112 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:15:04,299.299 INFO    ] No existing commands found in stream
[2026-10-28 14:15:09,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:15:09,329.329 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-28 14:15:10,822.822 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:15:10,825.825 INFO    ] Checking for system updates...
[2026-10-28 14:15:10,862.862 INFO    ] 200
[2026-10-28 14:15:10,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:15:10,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:15:10,920.920 INFO    ] No update needed
[2026-10-28 14:15:10,922.922 INFO    ] Checking for camera pi updates...
[2026-10-28 14:15:10,961.961 INFO    ] 200
[2026-10-28 14:15:10,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:15:11,004.004 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:15:11,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:15:11,084.084 INFO    ] No camera update needed
[2026-10-28 14:15:11,086.086 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:15:11,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:15:11,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:15:11,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:15:13,140.140 INFO    ] ================================================
[2026-10-28 14:15:13,157.157 INFO    ] Launching Daemon at Wed Oct 28 14:15:13 IST 2026
[2026-10-28 14:15:13,167.167 INFO    ] ================================================
[2026-10-28 14:15:13,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:15:13
[2026-10-28 14:15:14,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:15:14,809.809 INFO    ] Initializing speech engine...
[2026-10-28 14:15:14,823.823 INFO    ] 2026-10-28 14:15:14
[2026-10-28 14:15:15,134.134 INFO    ] 2026-10-28 14:15:15
[2026-10-28 14:15:15,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:15:15,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:15:15,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:15:15,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:15:15,846.846 INFO    ] time= 28/10/2026 14:15:15
[2026-10-28 14:15:15,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:15:15,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:15:16,084.084 INFO    ] No existing commands found in stream
[2026-10-28 14:15:21,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:15:21,098.098 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 14:15:25,583.583 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:15:25,586.586 INFO    ] Checking for system updates...
[2026-10-28 14:15:25,623.623 INFO    ] 200
[2026-10-28 14:15:25,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:15:25,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:15:25,691.691 INFO    ] No update needed
[2026-10-28 14:15:25,693.693 INFO    ] Checking for camera pi updates...
[2026-10-28 14:15:25,729.729 INFO    ] 200
[2026-10-28 14:15:25,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:15:25,774.774 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:15:25,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:15:25,864.864 INFO    ] No camera update needed
[2026-10-28 14:15:25,867.867 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:15:25,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:15:25,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:15:25,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:15:27,924.924 INFO    ] ================================================
[2026-10-28 14:15:27,939.939 INFO    ] Launching Daemon at Wed Oct 28 14:15:27 IST 2026
[2026-10-28 14:15:27,949.949 INFO    ] ================================================
[2026-10-28 14:15:28,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:15:28
[2026-10-28 14:15:29,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:15:29,360.360 INFO    ] Initializing speech engine...
[2026-10-28 14:15:29,376.376 INFO    ] 2026-10-28 14:15:29
[2026-10-28 14:15:29,661.661 INFO    ] 2026-10-28 14:15:29
[2026-10-28 14:15:29,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:15:29,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:15:30,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:15:30,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:15:30,306.306 INFO    ] time= 28/10/2026 14:15:30
[2026-10-28 14:15:30,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:15:30,330.330 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:15:30,482.482 INFO    ] No existing commands found in stream
[2026-10-28 14:15:35,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:15:35,497.497 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 14:15:38,468.468 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:15:38,471.471 INFO    ] Checking for system updates...
[2026-10-28 14:15:38,507.507 INFO    ] 200
[2026-10-28 14:15:38,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:15:38,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:15:38,566.566 INFO    ] No update needed
[2026-10-28 14:15:38,568.568 INFO    ] Checking for camera pi updates...
[2026-10-28 14:15:38,601.601 INFO    ] 200
[2026-10-28 14:15:38,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:15:38,644.644 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:15:38,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:15:38,726.726 INFO    ] No camera update needed
[2026-10-28 14:15:38,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:15:38,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:15:38,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:15:38,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:15:40,782.782 INFO    ] ================================================
[2026-10-28 14:15:40,797.797 INFO    ] Launching Daemon at Wed Oct 28 14:15:40 IST 2026
[2026-10-28 14:15:40,808.808 INFO    ] ================================================
[2026-10-28 14:15:41,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:15:41
[2026-10-28 14:15:42,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:15:42,451.451 INFO    ] Initializing speech engine...
[2026-10-28 14:15:42,462.462 INFO    ] 2026-10-28 14:15:42
[2026-10-28 14:15:42,776.776 INFO    ] 2026-10-28 14:15:42
[2026-10-28 14:15:42,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:15:43,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:15:43,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:15:43,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:15:43,583.583 INFO    ] time= 28/10/2026 14:15:43
[2026-10-28 14:15:43,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:15:43,678.678 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:15:43,850.850 INFO    ] No existing commands found in stream
[2026-10-28 14:15:48,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:15:48,868.868 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-28 14:15:51,167.167 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:15:51,170.170 INFO    ] Checking for system updates...
[2026-10-28 14:15:51,205.205 INFO    ] 200
[2026-10-28 14:15:51,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:15:51,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:15:51,262.262 INFO    ] No update needed
[2026-10-28 14:15:51,265.265 INFO    ] Checking for camera pi updates...
[2026-10-28 14:15:51,298.298 INFO    ] 200
[2026-10-28 14:15:51,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:15:51,348.348 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:15:51,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:15:51,430.430 INFO    ] No camera update needed
[2026-10-28 14:15:51,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:15:51,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:15:51,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:15:51,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:15:53,485.485 INFO    ] ================================================
[2026-10-28 14:15:53,501.501 INFO    ] Launching Daemon at Wed Oct 28 14:15:53 IST 2026
[2026-10-28 14:15:53,512.512 INFO    ] ================================================
[2026-10-28 14:15:54,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:15:54
[2026-10-28 14:15:54,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:15:54,982.982 INFO    ] Initializing speech engine...
[2026-10-28 14:15:54,988.988 INFO    ] 2026-10-28 14:15:54
[2026-10-28 14:15:55,252.252 INFO    ] 2026-10-28 14:15:55
[2026-10-28 14:15:55,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:15:55,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:15:55,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:15:55,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:15:55,812.812 INFO    ] time= 28/10/2026 14:15:55
[2026-10-28 14:15:55,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:15:55,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:15:55,995.995 INFO    ] No existing commands found in stream
[2026-10-28 14:16:01,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:16:01,024.024 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 14:16:05,166.166 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:16:05,169.169 INFO    ] Checking for system updates...
[2026-10-28 14:16:05,205.205 INFO    ] 200
[2026-10-28 14:16:05,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:16:05,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:16:05,267.267 INFO    ] No update needed
[2026-10-28 14:16:05,269.269 INFO    ] Checking for camera pi updates...
[2026-10-28 14:16:05,303.303 INFO    ] 200
[2026-10-28 14:16:05,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:16:05,346.346 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:16:05,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:16:05,446.446 INFO    ] No camera update needed
[2026-10-28 14:16:05,448.448 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:16:05,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:16:05,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:16:05,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:16:07,502.502 INFO    ] ================================================
[2026-10-28 14:16:07,518.518 INFO    ] Launching Daemon at Wed Oct 28 14:16:07 IST 2026
[2026-10-28 14:16:07,529.529 INFO    ] ================================================
[2026-10-28 14:16:08,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:16:08
[2026-10-28 14:16:08,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:16:09,060.060 INFO    ] Initializing speech engine...
[2026-10-28 14:16:09,068.068 INFO    ] 2026-10-28 14:16:09
[2026-10-28 14:16:09,318.318 INFO    ] 2026-10-28 14:16:09
[2026-10-28 14:16:09,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:16:09,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:16:09,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:16:09,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:16:09,872.872 INFO    ] time= 28/10/2026 14:16:09
[2026-10-28 14:16:09,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:16:09,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:16:10,048.048 INFO    ] No existing commands found in stream
[2026-10-28 14:16:15,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:16:15,081.081 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-28 14:16:17,403.403 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:16:17,406.406 INFO    ] Checking for system updates...
[2026-10-28 14:16:17,445.445 INFO    ] 200
[2026-10-28 14:16:17,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:16:17,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:16:17,505.505 INFO    ] No update needed
[2026-10-28 14:16:17,508.508 INFO    ] Checking for camera pi updates...
[2026-10-28 14:16:17,542.542 INFO    ] 200
[2026-10-28 14:16:17,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:16:17,591.591 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:16:17,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:16:17,646.646 INFO    ] No camera update needed
[2026-10-28 14:16:17,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:16:17,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:16:17,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:16:17,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:16:19,706.706 INFO    ] ================================================
[2026-10-28 14:16:19,721.721 INFO    ] Launching Daemon at Wed Oct 28 14:16:19 IST 2026
[2026-10-28 14:16:19,733.733 INFO    ] ================================================
[2026-10-28 14:16:20,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:16:20
[2026-10-28 14:16:20,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:16:21,133.133 INFO    ] Initializing speech engine...
[2026-10-28 14:16:21,156.156 INFO    ] 2026-10-28 14:16:21
[2026-10-28 14:16:21,408.408 INFO    ] 2026-10-28 14:16:21
[2026-10-28 14:16:21,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:16:21,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:16:21,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:16:22,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:16:22,051.051 INFO    ] time= 28/10/2026 14:16:22
[2026-10-28 14:16:22,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:16:22,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:16:22,248.248 INFO    ] No existing commands found in stream
[2026-10-28 14:16:27,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:16:27,272.272 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 14:16:29,558.558 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:16:29,560.560 INFO    ] Checking for system updates...
[2026-10-28 14:16:29,596.596 INFO    ] 200
[2026-10-28 14:16:29,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:16:29,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:16:29,654.654 INFO    ] No update needed
[2026-10-28 14:16:29,657.657 INFO    ] Checking for camera pi updates...
[2026-10-28 14:16:29,694.694 INFO    ] 200
[2026-10-28 14:16:29,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:16:29,737.737 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:16:29,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:16:29,821.821 INFO    ] No camera update needed
[2026-10-28 14:16:29,824.824 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:16:29,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:16:29,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:16:29,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:16:31,880.880 INFO    ] ================================================
[2026-10-28 14:16:31,897.897 INFO    ] Launching Daemon at Wed Oct 28 14:16:31 IST 2026
[2026-10-28 14:16:31,908.908 INFO    ] ================================================
[2026-10-28 14:16:32,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:16:32
[2026-10-28 14:16:33,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:16:33,392.392 INFO    ] Initializing speech engine...
[2026-10-28 14:16:33,401.401 INFO    ] 2026-10-28 14:16:33
[2026-10-28 14:16:33,699.699 INFO    ] 2026-10-28 14:16:33
[2026-10-28 14:16:33,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:16:34,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:16:34,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:16:34,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:16:34,349.349 INFO    ] time= 28/10/2026 14:16:34
[2026-10-28 14:16:34,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:16:34,372.372 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:16:34,519.519 INFO    ] No existing commands found in stream
[2026-10-28 14:16:39,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:16:39,538.538 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 14:16:43,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:16:43,357.357 INFO    ] Checking for system updates...
[2026-10-28 14:16:43,393.393 INFO    ] 200
[2026-10-28 14:16:43,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:16:43,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:16:43,450.450 INFO    ] No update needed
[2026-10-28 14:16:43,452.452 INFO    ] Checking for camera pi updates...
[2026-10-28 14:16:43,486.486 INFO    ] 200
[2026-10-28 14:16:43,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:16:43,529.529 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:16:43,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:16:43,709.709 INFO    ] No camera update needed
[2026-10-28 14:16:43,711.711 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:16:43,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:16:43,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:16:43,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:16:45,765.765 INFO    ] ================================================
[2026-10-28 14:16:45,781.781 INFO    ] Launching Daemon at Wed Oct 28 14:16:45 IST 2026
[2026-10-28 14:16:45,792.792 INFO    ] ================================================
[2026-10-28 14:16:46,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:16:46
[2026-10-28 14:16:47,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:16:47,451.451 INFO    ] Initializing speech engine...
[2026-10-28 14:16:47,464.464 INFO    ] 2026-10-28 14:16:47
[2026-10-28 14:16:47,760.760 INFO    ] 2026-10-28 14:16:47
[2026-10-28 14:16:47,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:16:48,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:16:48,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:16:48,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:16:48,471.471 INFO    ] time= 28/10/2026 14:16:48
[2026-10-28 14:16:48,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:16:48,561.561 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:16:48,716.716 INFO    ] No existing commands found in stream
[2026-10-28 14:16:53,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:16:53,748.748 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 14:16:55,436.436 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:16:55,440.440 INFO    ] Checking for system updates...
[2026-10-28 14:16:55,477.477 INFO    ] 200
[2026-10-28 14:16:55,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:16:55,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:16:55,538.538 INFO    ] No update needed
[2026-10-28 14:16:55,541.541 INFO    ] Checking for camera pi updates...
[2026-10-28 14:16:55,576.576 INFO    ] 200
[2026-10-28 14:16:55,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:16:55,620.620 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:16:55,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:16:55,707.707 INFO    ] No camera update needed
[2026-10-28 14:16:55,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:16:55,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:16:55,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:16:55,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:16:57,768.768 INFO    ] ================================================
[2026-10-28 14:16:57,783.783 INFO    ] Launching Daemon at Wed Oct 28 14:16:57 IST 2026
[2026-10-28 14:16:57,795.795 INFO    ] ================================================
[2026-10-28 14:16:58,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:16:58
[2026-10-28 14:16:59,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:16:59,273.273 INFO    ] Initializing speech engine...
[2026-10-28 14:16:59,280.280 INFO    ] 2026-10-28 14:16:59
[2026-10-28 14:16:59,588.588 INFO    ] 2026-10-28 14:16:59
[2026-10-28 14:16:59,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:16:59,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:16:59,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:17:00,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:17:00,133.133 INFO    ] time= 28/10/2026 14:17:00
[2026-10-28 14:17:00,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:17:00,251.251 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:17:00,411.411 INFO    ] No existing commands found in stream
[2026-10-28 14:17:05,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:17:05,436.436 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 14:17:06,820.820 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:17:06,822.822 INFO    ] Checking for system updates...
[2026-10-28 14:17:06,859.859 INFO    ] 200
[2026-10-28 14:17:06,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:17:06,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:17:06,926.926 INFO    ] No update needed
[2026-10-28 14:17:06,929.929 INFO    ] Checking for camera pi updates...
[2026-10-28 14:17:06,964.964 INFO    ] 200
[2026-10-28 14:17:06,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:17:07,008.008 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:17:07,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:17:07,110.110 INFO    ] No camera update needed
[2026-10-28 14:17:07,113.113 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:17:07,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:17:07,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:17:07,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:17:09,171.171 INFO    ] ================================================
[2026-10-28 14:17:09,187.187 INFO    ] Launching Daemon at Wed Oct 28 14:17:09 IST 2026
[2026-10-28 14:17:09,197.197 INFO    ] ================================================
[2026-10-28 14:17:09,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:17:09
[2026-10-28 14:17:10,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:17:10,663.663 INFO    ] Initializing speech engine...
[2026-10-28 14:17:10,673.673 INFO    ] 2026-10-28 14:17:10
[2026-10-28 14:17:10,921.921 INFO    ] 2026-10-28 14:17:10
[2026-10-28 14:17:10,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:17:11,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:17:11,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:17:11,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:17:11,478.478 INFO    ] time= 28/10/2026 14:17:11
[2026-10-28 14:17:11,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:17:11,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:17:11,657.657 INFO    ] No existing commands found in stream
[2026-10-28 14:17:16,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:17:16,685.685 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 14:17:21,233.233 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:17:21,236.236 INFO    ] Checking for system updates...
[2026-10-28 14:17:21,272.272 INFO    ] 200
[2026-10-28 14:17:21,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:17:21,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:17:21,331.331 INFO    ] No update needed
[2026-10-28 14:17:21,334.334 INFO    ] Checking for camera pi updates...
[2026-10-28 14:17:21,368.368 INFO    ] 200
[2026-10-28 14:17:21,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:17:21,411.411 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:17:21,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:17:21,481.481 INFO    ] No camera update needed
[2026-10-28 14:17:21,484.484 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:17:21,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:17:21,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:17:21,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:17:23,539.539 INFO    ] ================================================
[2026-10-28 14:17:23,554.554 INFO    ] Launching Daemon at Wed Oct 28 14:17:23 IST 2026
[2026-10-28 14:17:23,565.565 INFO    ] ================================================
[2026-10-28 14:17:24,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:17:24
[2026-10-28 14:17:24,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:17:25,017.017 INFO    ] Initializing speech engine...
[2026-10-28 14:17:25,030.030 INFO    ] 2026-10-28 14:17:25
[2026-10-28 14:17:25,323.323 INFO    ] 2026-10-28 14:17:25
[2026-10-28 14:17:25,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:17:25,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:17:25,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:17:25,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:17:25,947.947 INFO    ] time= 28/10/2026 14:17:25
[2026-10-28 14:17:25,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:17:25,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:17:26,141.141 INFO    ] No existing commands found in stream
[2026-10-28 14:17:31,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:17:31,161.161 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-28 14:17:33,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:17:33,571.571 INFO    ] Checking for system updates...
[2026-10-28 14:17:33,607.607 INFO    ] 200
[2026-10-28 14:17:33,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:17:33,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:17:33,666.666 INFO    ] No update needed
[2026-10-28 14:17:33,668.668 INFO    ] Checking for camera pi updates...
[2026-10-28 14:17:33,758.758 INFO    ] 200
[2026-10-28 14:17:33,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:17:33,810.810 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:17:33,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:17:33,916.916 INFO    ] No camera update needed
[2026-10-28 14:17:33,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:17:33,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:17:33,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:17:33,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:17:35,971.971 INFO    ] ================================================
[2026-10-28 14:17:35,986.986 INFO    ] Launching Daemon at Wed Oct 28 14:17:35 IST 2026
[2026-10-28 14:17:36,997.997 INFO    ] ================================================
[2026-10-28 14:17:36,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:17:36
[2026-10-28 14:17:37,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:17:37,519.519 INFO    ] Initializing speech engine...
[2026-10-28 14:17:37,525.525 INFO    ] 2026-10-28 14:17:37
[2026-10-28 14:17:37,773.773 INFO    ] 2026-10-28 14:17:37
[2026-10-28 14:17:37,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:17:38,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:17:38,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:17:38,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:17:38,341.341 INFO    ] time= 28/10/2026 14:17:38
[2026-10-28 14:17:38,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:17:38,376.376 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:17:38,559.559 INFO    ] No existing commands found in stream
[2026-10-28 14:17:43,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:17:43,591.591 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-28 14:17:45,875.875 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:17:45,878.878 INFO    ] Checking for system updates...
[2026-10-28 14:17:45,914.914 INFO    ] 200
[2026-10-28 14:17:45,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:17:45,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:17:45,971.971 INFO    ] No update needed
[2026-10-28 14:17:45,974.974 INFO    ] Checking for camera pi updates...
[2026-10-28 14:17:46,008.008 INFO    ] 200
[2026-10-28 14:17:46,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:17:46,051.051 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:17:46,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:17:46,138.138 INFO    ] No camera update needed
[2026-10-28 14:17:46,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:17:46,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:17:46,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:17:46,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:17:48,197.197 INFO    ] ================================================
[2026-10-28 14:17:48,212.212 INFO    ] Launching Daemon at Wed Oct 28 14:17:48 IST 2026
[2026-10-28 14:17:48,222.222 INFO    ] ================================================
[2026-10-28 14:17:48,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:17:48
[2026-10-28 14:17:49,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:17:49,770.770 INFO    ] Initializing speech engine...
[2026-10-28 14:17:49,780.780 INFO    ] 2026-10-28 14:17:49
[2026-10-28 14:17:50,026.026 INFO    ] 2026-10-28 14:17:50
[2026-10-28 14:17:50,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:17:50,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:17:50,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:17:50,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:17:50,631.631 INFO    ] time= 28/10/2026 14:17:50
[2026-10-28 14:17:50,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:17:50,668.668 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:17:50,833.833 INFO    ] No existing commands found in stream
[2026-10-28 14:17:55,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:17:55,850.850 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-28 14:17:59,062.062 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:17:59,064.064 INFO    ] Checking for system updates...
[2026-10-28 14:17:59,100.100 INFO    ] 200
[2026-10-28 14:17:59,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:17:59,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:17:59,159.159 INFO    ] No update needed
[2026-10-28 14:17:59,161.161 INFO    ] Checking for camera pi updates...
[2026-10-28 14:17:59,195.195 INFO    ] 200
[2026-10-28 14:17:59,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:17:59,239.239 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:17:59,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:17:59,348.348 INFO    ] No camera update needed
[2026-10-28 14:17:59,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:17:59,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:17:59,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:17:59,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:18:01,404.404 INFO    ] ================================================
[2026-10-28 14:18:01,419.419 INFO    ] Launching Daemon at Wed Oct 28 14:18:01 IST 2026
[2026-10-28 14:18:01,430.430 INFO    ] ================================================
[2026-10-28 14:18:02,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:18:02
[2026-10-28 14:18:02,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:18:03,213.213 INFO    ] Initializing speech engine...
[2026-10-28 14:18:03,225.225 INFO    ] 2026-10-28 14:18:03
[2026-10-28 14:18:03,485.485 INFO    ] 2026-10-28 14:18:03
[2026-10-28 14:18:03,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:18:03,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:18:03,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:18:04,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:18:04,074.074 INFO    ] time= 28/10/2026 14:18:04
[2026-10-28 14:18:04,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:18:04,101.101 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:18:04,249.249 INFO    ] No existing commands found in stream
[2026-10-28 14:18:09,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:18:09,277.277 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-28 14:18:11,023.023 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:18:11,025.025 INFO    ] Checking for system updates...
[2026-10-28 14:18:11,066.066 INFO    ] 200
[2026-10-28 14:18:11,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:18:11,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:18:11,125.125 INFO    ] No update needed
[2026-10-28 14:18:11,128.128 INFO    ] Checking for camera pi updates...
[2026-10-28 14:18:11,166.166 INFO    ] 200
[2026-10-28 14:18:11,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:18:11,210.210 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:18:11,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:18:11,295.295 INFO    ] No camera update needed
[2026-10-28 14:18:11,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:18:11,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:18:11,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:18:11,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:18:13,356.356 INFO    ] ================================================
[2026-10-28 14:18:13,371.371 INFO    ] Launching Daemon at Wed Oct 28 14:18:13 IST 2026
[2026-10-28 14:18:13,381.381 INFO    ] ================================================
[2026-10-28 14:18:14,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:18:14
[2026-10-28 14:18:14,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:18:14,977.977 INFO    ] Initializing speech engine...
[2026-10-28 14:18:14,983.983 INFO    ] 2026-10-28 14:18:14
[2026-10-28 14:18:15,255.255 INFO    ] 2026-10-28 14:18:15
[2026-10-28 14:18:15,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:18:15,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:18:15,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:18:15,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:18:15,971.971 INFO    ] time= 28/10/2026 14:18:15
[2026-10-28 14:18:16,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:18:16,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:18:16,232.232 INFO    ] No existing commands found in stream
[2026-10-28 14:18:21,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:18:21,256.256 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-28 14:18:24,424.424 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:18:24,427.427 INFO    ] Checking for system updates...
[2026-10-28 14:18:24,463.463 INFO    ] 200
[2026-10-28 14:18:24,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:18:24,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:18:24,522.522 INFO    ] No update needed
[2026-10-28 14:18:24,525.525 INFO    ] Checking for camera pi updates...
[2026-10-28 14:18:24,561.561 INFO    ] 200
[2026-10-28 14:18:24,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:18:24,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:18:24,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:18:24,712.712 INFO    ] No camera update needed
[2026-10-28 14:18:24,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:18:24,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:18:24,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:18:24,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:18:26,770.770 INFO    ] ================================================
[2026-10-28 14:18:26,785.785 INFO    ] Launching Daemon at Wed Oct 28 14:18:26 IST 2026
[2026-10-28 14:18:26,796.796 INFO    ] ================================================
[2026-10-28 14:18:27,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:18:27
[2026-10-28 14:18:27,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:18:28,198.198 INFO    ] Initializing speech engine...
[2026-10-28 14:18:28,207.207 INFO    ] 2026-10-28 14:18:28
[2026-10-28 14:18:28,498.498 INFO    ] 2026-10-28 14:18:28
[2026-10-28 14:18:28,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:18:28,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:18:28,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:18:28,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:18:28,993.993 INFO    ] time= 28/10/2026 14:18:28
[2026-10-28 14:18:29,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:18:29,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:18:29,264.264 INFO    ] No existing commands found in stream
[2026-10-28 14:18:34,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:18:34,297.297 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-28 14:18:35,831.831 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:18:35,834.834 INFO    ] Checking for system updates...
[2026-10-28 14:18:35,869.869 INFO    ] 200
[2026-10-28 14:18:35,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:18:35,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:18:35,928.928 INFO    ] No update needed
[2026-10-28 14:18:35,930.930 INFO    ] Checking for camera pi updates...
[2026-10-28 14:18:35,964.964 INFO    ] 200
[2026-10-28 14:18:35,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:18:36,006.006 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:18:36,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:18:36,113.113 INFO    ] No camera update needed
[2026-10-28 14:18:36,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:18:36,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:18:36,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:18:36,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:18:38,174.174 INFO    ] ================================================
[2026-10-28 14:18:38,188.188 INFO    ] Launching Daemon at Wed Oct 28 14:18:38 IST 2026
[2026-10-28 14:18:38,199.199 INFO    ] ================================================
[2026-10-28 14:18:38,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:18:38
[2026-10-28 14:18:39,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:18:39,664.664 INFO    ] Initializing speech engine...
[2026-10-28 14:18:39,674.674 INFO    ] 2026-10-28 14:18:39
[2026-10-28 14:18:39,938.938 INFO    ] 2026-10-28 14:18:39
[2026-10-28 14:18:39,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:18:40,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:18:40,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:18:40,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:18:40,559.559 INFO    ] time= 28/10/2026 14:18:40
[2026-10-28 14:18:40,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:18:40,595.595 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:18:40,785.785 INFO    ] No existing commands found in stream
[2026-10-28 14:18:45,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:18:45,814.814 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 14:18:49,300.300 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:18:49,303.303 INFO    ] Checking for system updates...
[2026-10-28 14:18:49,338.338 INFO    ] 200
[2026-10-28 14:18:49,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:18:49,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:18:49,396.396 INFO    ] No update needed
[2026-10-28 14:18:49,398.398 INFO    ] Checking for camera pi updates...
[2026-10-28 14:18:49,431.431 INFO    ] 200
[2026-10-28 14:18:49,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:18:49,474.474 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:18:49,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:18:49,657.657 INFO    ] No camera update needed
[2026-10-28 14:18:49,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:18:49,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:18:49,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:18:49,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:18:51,715.715 INFO    ] ================================================
[2026-10-28 14:18:51,730.730 INFO    ] Launching Daemon at Wed Oct 28 14:18:51 IST 2026
[2026-10-28 14:18:51,741.741 INFO    ] ================================================
[2026-10-28 14:18:52,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:18:52
[2026-10-28 14:18:52,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:18:53,194.194 INFO    ] Initializing speech engine...
[2026-10-28 14:18:53,206.206 INFO    ] 2026-10-28 14:18:53
[2026-10-28 14:18:53,484.484 INFO    ] 2026-10-28 14:18:53
[2026-10-28 14:18:53,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:18:53,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:18:53,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:18:53,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:18:54,033.033 INFO    ] time= 28/10/2026 14:18:53
[2026-10-28 14:18:54,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:18:54,127.127 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:18:54,278.278 INFO    ] No existing commands found in stream
[2026-10-28 14:18:59,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:18:59,308.308 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-28 14:19:01,883.883 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:19:01,887.887 INFO    ] Checking for system updates...
[2026-10-28 14:19:01,949.949 INFO    ] 200
[2026-10-28 14:19:01,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:19:02,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:19:02,031.031 INFO    ] No update needed
[2026-10-28 14:19:02,045.045 INFO    ] Checking for camera pi updates...
[2026-10-28 14:19:02,090.090 INFO    ] 200
[2026-10-28 14:19:02,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:19:02,208.208 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:19:02,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:19:02,355.355 INFO    ] No camera update needed
[2026-10-28 14:19:02,359.359 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:19:02,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:19:02,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:19:02,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:19:04,417.417 INFO    ] ================================================
[2026-10-28 14:19:04,431.431 INFO    ] Launching Daemon at Wed Oct 28 14:19:04 IST 2026
[2026-10-28 14:19:04,442.442 INFO    ] ================================================
[2026-10-28 14:19:05,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:19:05
[2026-10-28 14:19:05,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:19:05,847.847 INFO    ] Initializing speech engine...
[2026-10-28 14:19:05,855.855 INFO    ] 2026-10-28 14:19:05
[2026-10-28 14:19:06,142.142 INFO    ] 2026-10-28 14:19:06
[2026-10-28 14:19:06,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:19:06,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:19:06,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:19:06,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:19:06,747.747 INFO    ] time= 28/10/2026 14:19:06
[2026-10-28 14:19:06,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:19:06,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:19:06,915.915 INFO    ] No existing commands found in stream
[2026-10-28 14:19:11,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:19:11,928.928 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-28 14:19:16,641.641 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:19:16,644.644 INFO    ] Checking for system updates...
[2026-10-28 14:19:16,687.687 INFO    ] 200
[2026-10-28 14:19:16,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:19:16,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:19:16,757.757 INFO    ] No update needed
[2026-10-28 14:19:16,760.760 INFO    ] Checking for camera pi updates...
[2026-10-28 14:19:16,806.806 INFO    ] 200
[2026-10-28 14:19:16,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:19:16,858.858 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:19:16,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:19:16,950.950 INFO    ] No camera update needed
[2026-10-28 14:19:16,953.953 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:19:16,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:19:16,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:19:16,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:19:19,008.008 INFO    ] ================================================
[2026-10-28 14:19:19,026.026 INFO    ] Launching Daemon at Wed Oct 28 14:19:19 IST 2026
[2026-10-28 14:19:19,036.036 INFO    ] ================================================
[2026-10-28 14:19:19,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:19:19
[2026-10-28 14:19:20,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:19:20,489.489 INFO    ] Initializing speech engine...
[2026-10-28 14:19:20,508.508 INFO    ] 2026-10-28 14:19:20
[2026-10-28 14:19:20,760.760 INFO    ] 2026-10-28 14:19:20
[2026-10-28 14:19:20,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:19:21,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:19:21,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:19:21,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:19:21,385.385 INFO    ] time= 28/10/2026 14:19:21
[2026-10-28 14:19:21,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:19:21,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:19:21,567.567 INFO    ] No existing commands found in stream
[2026-10-28 14:19:26,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:19:26,601.601 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 14:19:28,224.224 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:19:28,226.226 INFO    ] Checking for system updates...
[2026-10-28 14:19:28,262.262 INFO    ] 200
[2026-10-28 14:19:28,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:19:28,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:19:28,321.321 INFO    ] No update needed
[2026-10-28 14:19:28,324.324 INFO    ] Checking for camera pi updates...
[2026-10-28 14:19:28,357.357 INFO    ] 200
[2026-10-28 14:19:28,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:19:28,400.400 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:19:28,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:19:28,507.507 INFO    ] No camera update needed
[2026-10-28 14:19:28,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:19:28,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:19:28,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:19:28,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:19:30,562.562 INFO    ] ================================================
[2026-10-28 14:19:30,576.576 INFO    ] Launching Daemon at Wed Oct 28 14:19:30 IST 2026
[2026-10-28 14:19:30,587.587 INFO    ] ================================================
[2026-10-28 14:19:31,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:19:31
[2026-10-28 14:19:31,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:19:32,210.210 INFO    ] Initializing speech engine...
[2026-10-28 14:19:32,215.215 INFO    ] 2026-10-28 14:19:32
[2026-10-28 14:19:32,508.508 INFO    ] 2026-10-28 14:19:32
[2026-10-28 14:19:32,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:19:32,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:19:32,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:19:33,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:19:33,100.100 INFO    ] time= 28/10/2026 14:19:33
[2026-10-28 14:19:33,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:19:33,141.141 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:19:33,272.272 INFO    ] No existing commands found in stream
[2026-10-28 14:19:38,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:19:38,311.311 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 14:19:40,604.604 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:19:40,607.607 INFO    ] Checking for system updates...
[2026-10-28 14:19:40,644.644 INFO    ] 200
[2026-10-28 14:19:40,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:19:40,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:19:40,702.702 INFO    ] No update needed
[2026-10-28 14:19:40,705.705 INFO    ] Checking for camera pi updates...
[2026-10-28 14:19:40,739.739 INFO    ] 200
[2026-10-28 14:19:40,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:19:40,781.781 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:19:40,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:19:40,869.869 INFO    ] No camera update needed
[2026-10-28 14:19:40,872.872 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:19:40,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:19:40,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:19:40,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:19:42,924.924 INFO    ] ================================================
[2026-10-28 14:19:42,939.939 INFO    ] Launching Daemon at Wed Oct 28 14:19:42 IST 2026
[2026-10-28 14:19:42,949.949 INFO    ] ================================================
[2026-10-28 14:19:43,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:19:43
[2026-10-28 14:19:44,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:19:44,484.484 INFO    ] Initializing speech engine...
[2026-10-28 14:19:44,498.498 INFO    ] 2026-10-28 14:19:44
[2026-10-28 14:19:44,766.766 INFO    ] 2026-10-28 14:19:44
[2026-10-28 14:19:44,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:19:45,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:19:45,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:19:45,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:19:45,331.331 INFO    ] time= 28/10/2026 14:19:45
[2026-10-28 14:19:45,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:19:45,368.368 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:19:45,497.497 INFO    ] No existing commands found in stream
[2026-10-28 14:19:50,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:19:50,530.530 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-28 14:19:53,718.718 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:19:53,721.721 INFO    ] Checking for system updates...
[2026-10-28 14:19:53,758.758 INFO    ] 200
[2026-10-28 14:19:53,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:19:53,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:19:53,817.817 INFO    ] No update needed
[2026-10-28 14:19:53,820.820 INFO    ] Checking for camera pi updates...
[2026-10-28 14:19:53,853.853 INFO    ] 200
[2026-10-28 14:19:53,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:19:53,897.897 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:19:53,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:19:53,964.964 INFO    ] No camera update needed
[2026-10-28 14:19:53,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:19:53,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:19:53,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:19:53,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:19:56,018.018 INFO    ] ================================================
[2026-10-28 14:19:56,034.034 INFO    ] Launching Daemon at Wed Oct 28 14:19:56 IST 2026
[2026-10-28 14:19:56,044.044 INFO    ] ================================================
[2026-10-28 14:19:56,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:19:56
[2026-10-28 14:19:57,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:19:57,619.619 INFO    ] Initializing speech engine...
[2026-10-28 14:19:57,625.625 INFO    ] 2026-10-28 14:19:57
[2026-10-28 14:19:57,914.914 INFO    ] 2026-10-28 14:19:57
[2026-10-28 14:19:57,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:19:58,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:19:58,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:19:58,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:19:58,639.639 INFO    ] time= 28/10/2026 14:19:58
[2026-10-28 14:19:58,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:19:58,765.765 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:19:58,915.915 INFO    ] No existing commands found in stream
[2026-10-28 14:20:03,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:20:03,945.945 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-28 14:20:08,941.941 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:20:08,944.944 INFO    ] Checking for system updates...
[2026-10-28 14:20:08,981.981 INFO    ] 200
[2026-10-28 14:20:08,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:20:09,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:20:09,045.045 INFO    ] No update needed
[2026-10-28 14:20:09,048.048 INFO    ] Checking for camera pi updates...
[2026-10-28 14:20:09,082.082 INFO    ] 200
[2026-10-28 14:20:09,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:20:09,130.130 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:20:09,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:20:09,229.229 INFO    ] No camera update needed
[2026-10-28 14:20:09,232.232 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:20:09,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:20:09,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:20:09,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:20:11,286.286 INFO    ] ================================================
[2026-10-28 14:20:11,301.301 INFO    ] Launching Daemon at Wed Oct 28 14:20:11 IST 2026
[2026-10-28 14:20:11,311.311 INFO    ] ================================================
[2026-10-28 14:20:11,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:20:11
[2026-10-28 14:20:12,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:20:12,740.740 INFO    ] Initializing speech engine...
[2026-10-28 14:20:12,750.750 INFO    ] 2026-10-28 14:20:12
[2026-10-28 14:20:13,011.011 INFO    ] 2026-10-28 14:20:12
[2026-10-28 14:20:13,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:20:13,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:20:13,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:20:13,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:20:13,635.635 INFO    ] time= 28/10/2026 14:20:13
[2026-10-28 14:20:13,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:20:13,659.659 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:20:13,801.801 INFO    ] No existing commands found in stream
[2026-10-28 14:20:18,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:20:18,820.820 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 14:20:22,864.864 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:20:22,867.867 INFO    ] Checking for system updates...
[2026-10-28 14:20:22,903.903 INFO    ] 200
[2026-10-28 14:20:22,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:20:22,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:20:22,966.966 INFO    ] No update needed
[2026-10-28 14:20:22,968.968 INFO    ] Checking for camera pi updates...
[2026-10-28 14:20:23,001.001 INFO    ] 200
[2026-10-28 14:20:23,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:20:23,045.045 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:20:23,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:20:23,134.134 INFO    ] No camera update needed
[2026-10-28 14:20:23,137.137 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:20:23,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:20:23,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:20:23,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:20:25,189.189 INFO    ] ================================================
[2026-10-28 14:20:25,205.205 INFO    ] Launching Daemon at Wed Oct 28 14:20:25 IST 2026
[2026-10-28 14:20:25,216.216 INFO    ] ================================================
[2026-10-28 14:20:25,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:20:25
[2026-10-28 14:20:26,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:20:26,682.682 INFO    ] Initializing speech engine...
[2026-10-28 14:20:26,690.690 INFO    ] 2026-10-28 14:20:26
[2026-10-28 14:20:26,943.943 INFO    ] 2026-10-28 14:20:26
[2026-10-28 14:20:26,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:20:27,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:20:27,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:20:27,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:20:27,519.519 INFO    ] time= 28/10/2026 14:20:27
[2026-10-28 14:20:27,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:20:27,557.557 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:20:27,673.673 INFO    ] No existing commands found in stream
[2026-10-28 14:20:32,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:20:32,707.707 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 14:20:33,960.960 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:20:33,963.963 INFO    ] Checking for system updates...
[2026-10-28 14:20:34,002.002 INFO    ] 200
[2026-10-28 14:20:34,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:20:34,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:20:34,063.063 INFO    ] No update needed
[2026-10-28 14:20:34,066.066 INFO    ] Checking for camera pi updates...
[2026-10-28 14:20:34,099.099 INFO    ] 200
[2026-10-28 14:20:34,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:20:34,146.146 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:20:34,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:20:34,235.235 INFO    ] No camera update needed
[2026-10-28 14:20:34,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:20:34,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:20:34,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:20:34,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:20:36,292.292 INFO    ] ================================================
[2026-10-28 14:20:36,308.308 INFO    ] Launching Daemon at Wed Oct 28 14:20:36 IST 2026
[2026-10-28 14:20:36,319.319 INFO    ] ================================================
[2026-10-28 14:20:36,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:20:36
[2026-10-28 14:20:37,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:20:37,770.770 INFO    ] Initializing speech engine...
[2026-10-28 14:20:37,785.785 INFO    ] 2026-10-28 14:20:37
[2026-10-28 14:20:38,039.039 INFO    ] 2026-10-28 14:20:38
[2026-10-28 14:20:38,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:20:38,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:20:38,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:20:38,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:20:38,784.784 INFO    ] time= 28/10/2026 14:20:38
[2026-10-28 14:20:38,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:20:38,875.875 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:20:39,033.033 INFO    ] No existing commands found in stream
[2026-10-28 14:20:44,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:20:44,051.051 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-28 14:20:48,157.157 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:20:48,160.160 INFO    ] Checking for system updates...
[2026-10-28 14:20:48,196.196 INFO    ] 200
[2026-10-28 14:20:48,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:20:48,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:20:48,253.253 INFO    ] No update needed
[2026-10-28 14:20:48,255.255 INFO    ] Checking for camera pi updates...
[2026-10-28 14:20:48,289.289 INFO    ] 200
[2026-10-28 14:20:48,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:20:48,335.335 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:20:48,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:20:48,433.433 INFO    ] No camera update needed
[2026-10-28 14:20:48,435.435 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:20:48,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:20:48,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:20:48,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:20:50,490.490 INFO    ] ================================================
[2026-10-28 14:20:50,505.505 INFO    ] Launching Daemon at Wed Oct 28 14:20:50 IST 2026
[2026-10-28 14:20:50,517.517 INFO    ] ================================================
[2026-10-28 14:20:51,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:20:51
[2026-10-28 14:20:51,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:20:52,109.109 INFO    ] Initializing speech engine...
[2026-10-28 14:20:52,123.123 INFO    ] 2026-10-28 14:20:52
[2026-10-28 14:20:52,400.400 INFO    ] 2026-10-28 14:20:52
[2026-10-28 14:20:52,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:20:52,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:20:52,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:20:53,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:20:53,111.111 INFO    ] time= 28/10/2026 14:20:53
[2026-10-28 14:20:53,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:20:53,218.218 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:20:53,371.371 INFO    ] No existing commands found in stream
[2026-10-28 14:20:58,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:20:58,393.393 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-28 14:21:02,744.744 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:21:02,747.747 INFO    ] Checking for system updates...
[2026-10-28 14:21:02,788.788 INFO    ] 200
[2026-10-28 14:21:02,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:21:02,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:21:02,860.860 INFO    ] No update needed
[2026-10-28 14:21:02,862.862 INFO    ] Checking for camera pi updates...
[2026-10-28 14:21:02,898.898 INFO    ] 200
[2026-10-28 14:21:02,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:21:02,957.957 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:21:03,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:21:03,190.190 INFO    ] No camera update needed
[2026-10-28 14:21:03,193.193 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:21:03,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:21:03,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:21:03,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:21:05,255.255 INFO    ] ================================================
[2026-10-28 14:21:05,270.270 INFO    ] Launching Daemon at Wed Oct 28 14:21:05 IST 2026
[2026-10-28 14:21:05,281.281 INFO    ] ================================================
[2026-10-28 14:21:05,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:21:05
[2026-10-28 14:21:06,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:21:06,688.688 INFO    ] Initializing speech engine...
[2026-10-28 14:21:06,713.713 INFO    ] 2026-10-28 14:21:06
[2026-10-28 14:21:06,982.982 INFO    ] 2026-10-28 14:21:06
[2026-10-28 14:21:07,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:21:07,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:21:07,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:21:07,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:21:07,597.597 INFO    ] time= 28/10/2026 14:21:07
[2026-10-28 14:21:07,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:21:07,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:21:07,769.769 INFO    ] No existing commands found in stream
[2026-10-28 14:21:12,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:21:12,787.787 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-28 14:21:13,638.638 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:21:13,641.641 INFO    ] Checking for system updates...
[2026-10-28 14:21:13,679.679 INFO    ] 200
[2026-10-28 14:21:13,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:21:13,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:21:13,738.738 INFO    ] No update needed
[2026-10-28 14:21:13,740.740 INFO    ] Checking for camera pi updates...
[2026-10-28 14:21:13,774.774 INFO    ] 200
[2026-10-28 14:21:13,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:21:13,817.817 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:21:13,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:21:13,896.896 INFO    ] No camera update needed
[2026-10-28 14:21:13,899.899 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:21:13,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:21:13,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:21:13,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:21:15,951.951 INFO    ] ================================================
[2026-10-28 14:21:15,967.967 INFO    ] Launching Daemon at Wed Oct 28 14:21:15 IST 2026
[2026-10-28 14:21:15,977.977 INFO    ] ================================================
[2026-10-28 14:21:16,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:21:16
[2026-10-28 14:21:17,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:21:17,376.376 INFO    ] Initializing speech engine...
[2026-10-28 14:21:17,385.385 INFO    ] 2026-10-28 14:21:17
[2026-10-28 14:21:17,659.659 INFO    ] 2026-10-28 14:21:17
[2026-10-28 14:21:17,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:21:17,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:21:17,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:21:18,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:21:18,229.229 INFO    ] time= 28/10/2026 14:21:18
[2026-10-28 14:21:18,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:21:18,253.253 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:21:18,422.422 INFO    ] No existing commands found in stream
[2026-10-28 14:21:23,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:21:23,450.450 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-28 14:21:26,839.839 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:21:26,842.842 INFO    ] Checking for system updates...
[2026-10-28 14:21:26,880.880 INFO    ] 200
[2026-10-28 14:21:26,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:21:26,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:21:26,940.940 INFO    ] No update needed
[2026-10-28 14:21:26,942.942 INFO    ] Checking for camera pi updates...
[2026-10-28 14:21:26,981.981 INFO    ] 200
[2026-10-28 14:21:26,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:21:27,026.026 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:21:27,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:21:27,117.117 INFO    ] No camera update needed
[2026-10-28 14:21:27,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:21:27,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:21:27,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:21:27,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:21:29,176.176 INFO    ] ================================================
[2026-10-28 14:21:29,192.192 INFO    ] Launching Daemon at Wed Oct 28 14:21:29 IST 2026
[2026-10-28 14:21:29,203.203 INFO    ] ================================================
[2026-10-28 14:21:29,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:21:29
[2026-10-28 14:21:30,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:21:30,610.610 INFO    ] Initializing speech engine...
[2026-10-28 14:21:30,616.616 INFO    ] 2026-10-28 14:21:30
[2026-10-28 14:21:30,907.907 INFO    ] 2026-10-28 14:21:30
[2026-10-28 14:21:30,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:21:31,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:21:31,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:21:31,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:21:31,460.460 INFO    ] time= 28/10/2026 14:21:31
[2026-10-28 14:21:31,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:21:31,560.560 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:21:31,730.730 INFO    ] No existing commands found in stream
[2026-10-28 14:21:36,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:21:36,758.758 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-28 14:21:41,277.277 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:21:41,280.280 INFO    ] Checking for system updates...
[2026-10-28 14:21:41,315.315 INFO    ] 200
[2026-10-28 14:21:41,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:21:41,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:21:41,372.372 INFO    ] No update needed
[2026-10-28 14:21:41,375.375 INFO    ] Checking for camera pi updates...
[2026-10-28 14:21:41,413.413 INFO    ] 200
[2026-10-28 14:21:41,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:21:41,456.456 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:21:41,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:21:41,541.541 INFO    ] No camera update needed
[2026-10-28 14:21:41,543.543 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:21:41,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:21:41,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:21:41,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:21:43,596.596 INFO    ] ================================================
[2026-10-28 14:21:43,612.612 INFO    ] Launching Daemon at Wed Oct 28 14:21:43 IST 2026
[2026-10-28 14:21:43,623.623 INFO    ] ================================================
[2026-10-28 14:21:44,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:21:44
[2026-10-28 14:21:44,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:21:45,199.199 INFO    ] Initializing speech engine...
[2026-10-28 14:21:45,218.218 INFO    ] 2026-10-28 14:21:45
[2026-10-28 14:21:45,539.539 INFO    ] 2026-10-28 14:21:45
[2026-10-28 14:21:45,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:21:45,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:21:45,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:21:46,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:21:46,210.210 INFO    ] time= 28/10/2026 14:21:46
[2026-10-28 14:21:46,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:21:46,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:21:46,384.384 INFO    ] No existing commands found in stream
[2026-10-28 14:21:51,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:21:51,418.418 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-28 14:21:54,162.162 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:21:54,165.165 INFO    ] Checking for system updates...
[2026-10-28 14:21:54,202.202 INFO    ] 200
[2026-10-28 14:21:54,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:21:54,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:21:54,268.268 INFO    ] No update needed
[2026-10-28 14:21:54,271.271 INFO    ] Checking for camera pi updates...
[2026-10-28 14:21:54,306.306 INFO    ] 200
[2026-10-28 14:21:54,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:21:54,351.351 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:21:54,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:21:54,461.461 INFO    ] No camera update needed
[2026-10-28 14:21:54,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:21:54,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:21:54,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:21:54,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:21:56,521.521 INFO    ] ================================================
[2026-10-28 14:21:56,542.542 INFO    ] Launching Daemon at Wed Oct 28 14:21:56 IST 2026
[2026-10-28 14:21:56,553.553 INFO    ] ================================================
[2026-10-28 14:21:57,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:21:57
[2026-10-28 14:21:57,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:21:57,982.982 INFO    ] Initializing speech engine...
[2026-10-28 14:21:57,992.992 INFO    ] 2026-10-28 14:21:57
[2026-10-28 14:21:58,241.241 INFO    ] 2026-10-28 14:21:58
[2026-10-28 14:21:58,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:21:58,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:21:58,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:21:58,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:21:58,812.812 INFO    ] time= 28/10/2026 14:21:58
[2026-10-28 14:21:58,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:21:58,836.836 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:21:58,972.972 INFO    ] No existing commands found in stream
[2026-10-28 14:22:03,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:22:03,998.998 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-28 14:22:08,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:22:08,306.306 INFO    ] Checking for system updates...
[2026-10-28 14:22:08,341.341 INFO    ] 200
[2026-10-28 14:22:08,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:22:08,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:22:08,398.398 INFO    ] No update needed
[2026-10-28 14:22:08,401.401 INFO    ] Checking for camera pi updates...
[2026-10-28 14:22:08,434.434 INFO    ] 200
[2026-10-28 14:22:08,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:22:08,477.477 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:22:08,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:22:08,559.559 INFO    ] No camera update needed
[2026-10-28 14:22:08,561.561 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:22:08,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:22:08,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:22:08,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:22:10,615.615 INFO    ] ================================================
[2026-10-28 14:22:10,630.630 INFO    ] Launching Daemon at Wed Oct 28 14:22:10 IST 2026
[2026-10-28 14:22:10,641.641 INFO    ] ================================================
[2026-10-28 14:22:11,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:22:11
[2026-10-28 14:22:11,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:22:12,088.088 INFO    ] Initializing speech engine...
[2026-10-28 14:22:12,096.096 INFO    ] 2026-10-28 14:22:12
[2026-10-28 14:22:12,401.401 INFO    ] 2026-10-28 14:22:12
[2026-10-28 14:22:12,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:22:12,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:22:12,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:22:13,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:22:13,057.057 INFO    ] time= 28/10/2026 14:22:13
[2026-10-28 14:22:13,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:22:13,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:22:13,220.220 INFO    ] No existing commands found in stream
[2026-10-28 14:22:18,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:22:18,251.251 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 14:22:21,986.986 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:22:21,988.988 INFO    ] Checking for system updates...
[2026-10-28 14:22:22,026.026 INFO    ] 200
[2026-10-28 14:22:22,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:22:22,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:22:22,091.091 INFO    ] No update needed
[2026-10-28 14:22:22,094.094 INFO    ] Checking for camera pi updates...
[2026-10-28 14:22:22,128.128 INFO    ] 200
[2026-10-28 14:22:22,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:22:22,171.171 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:22:22,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:22:22,260.260 INFO    ] No camera update needed
[2026-10-28 14:22:22,262.262 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:22:22,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:22:22,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:22:22,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:22:24,316.316 INFO    ] ================================================
[2026-10-28 14:22:24,335.335 INFO    ] Launching Daemon at Wed Oct 28 14:22:24 IST 2026
[2026-10-28 14:22:24,347.347 INFO    ] ================================================
[2026-10-28 14:22:25,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:22:25
[2026-10-28 14:22:25,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:22:26,018.018 INFO    ] Initializing speech engine...
[2026-10-28 14:22:26,027.027 INFO    ] 2026-10-28 14:22:26
[2026-10-28 14:22:26,278.278 INFO    ] 2026-10-28 14:22:26
[2026-10-28 14:22:26,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:22:26,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:22:26,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:22:26,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:22:26,789.789 INFO    ] time= 28/10/2026 14:22:26
[2026-10-28 14:22:26,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:22:26,869.869 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:22:27,015.015 INFO    ] No existing commands found in stream
[2026-10-28 14:22:32,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:22:32,035.035 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 14:22:36,340.340 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:22:36,343.343 INFO    ] Checking for system updates...
[2026-10-28 14:22:36,379.379 INFO    ] 200
[2026-10-28 14:22:36,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:22:36,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:22:36,436.436 INFO    ] No update needed
[2026-10-28 14:22:36,438.438 INFO    ] Checking for camera pi updates...
[2026-10-28 14:22:36,478.478 INFO    ] 200
[2026-10-28 14:22:36,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:22:36,529.529 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:22:36,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:22:36,590.590 INFO    ] No camera update needed
[2026-10-28 14:22:36,592.592 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:22:36,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:22:36,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:22:36,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:22:38,653.653 INFO    ] ================================================
[2026-10-28 14:22:38,668.668 INFO    ] Launching Daemon at Wed Oct 28 14:22:38 IST 2026
[2026-10-28 14:22:38,680.680 INFO    ] ================================================
[2026-10-28 14:22:39,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:22:39
[2026-10-28 14:22:40,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:22:40,355.355 INFO    ] Initializing speech engine...
[2026-10-28 14:22:40,368.368 INFO    ] 2026-10-28 14:22:40
[2026-10-28 14:22:40,661.661 INFO    ] 2026-10-28 14:22:40
[2026-10-28 14:22:40,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:22:41,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:22:41,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:22:41,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:22:41,441.441 INFO    ] time= 28/10/2026 14:22:41
[2026-10-28 14:22:41,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:22:41,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:22:41,771.771 INFO    ] No existing commands found in stream
[2026-10-28 14:22:46,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:22:46,806.806 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 14:22:48,364.364 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:22:48,367.367 INFO    ] Checking for system updates...
[2026-10-28 14:22:48,402.402 INFO    ] 200
[2026-10-28 14:22:48,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:22:48,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:22:48,459.459 INFO    ] No update needed
[2026-10-28 14:22:48,462.462 INFO    ] Checking for camera pi updates...
[2026-10-28 14:22:48,496.496 INFO    ] 200
[2026-10-28 14:22:48,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:22:48,545.545 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:22:48,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:22:48,623.623 INFO    ] No camera update needed
[2026-10-28 14:22:48,626.626 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:22:48,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:22:48,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:22:48,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:22:50,679.679 INFO    ] ================================================
[2026-10-28 14:22:50,695.695 INFO    ] Launching Daemon at Wed Oct 28 14:22:50 IST 2026
[2026-10-28 14:22:50,705.705 INFO    ] ================================================
[2026-10-28 14:22:51,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:22:51
[2026-10-28 14:22:51,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:22:52,147.147 INFO    ] Initializing speech engine...
[2026-10-28 14:22:52,157.157 INFO    ] 2026-10-28 14:22:52
[2026-10-28 14:22:52,461.461 INFO    ] 2026-10-28 14:22:52
[2026-10-28 14:22:52,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:22:52,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:22:52,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:22:52,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:22:53,027.027 INFO    ] time= 28/10/2026 14:22:52
[2026-10-28 14:22:53,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:22:53,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:22:53,274.274 INFO    ] No existing commands found in stream
[2026-10-28 14:22:58,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:22:58,305.305 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-28 14:22:59,449.449 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:22:59,451.451 INFO    ] Checking for system updates...
[2026-10-28 14:22:59,492.492 INFO    ] 200
[2026-10-28 14:22:59,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:22:59,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:22:59,558.558 INFO    ] No update needed
[2026-10-28 14:22:59,560.560 INFO    ] Checking for camera pi updates...
[2026-10-28 14:22:59,600.600 INFO    ] 200
[2026-10-28 14:22:59,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:22:59,644.644 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:22:59,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:22:59,734.734 INFO    ] No camera update needed
[2026-10-28 14:22:59,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:22:59,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:22:59,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:22:59,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:23:01,798.798 INFO    ] ================================================
[2026-10-28 14:23:01,818.818 INFO    ] Launching Daemon at Wed Oct 28 14:23:01 IST 2026
[2026-10-28 14:23:01,836.836 INFO    ] ================================================
[2026-10-28 14:23:02,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:23:02
[2026-10-28 14:23:03,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:23:03,481.481 INFO    ] Initializing speech engine...
[2026-10-28 14:23:03,487.487 INFO    ] 2026-10-28 14:23:03
[2026-10-28 14:23:03,780.780 INFO    ] 2026-10-28 14:23:03
[2026-10-28 14:23:03,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:23:04,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:23:04,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:23:04,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:23:04,423.423 INFO    ] time= 28/10/2026 14:23:04
[2026-10-28 14:23:04,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:23:04,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:23:04,598.598 INFO    ] No existing commands found in stream
[2026-10-28 14:23:09,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:23:09,616.616 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-28 14:23:13,907.907 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:23:13,910.910 INFO    ] Checking for system updates...
[2026-10-28 14:23:13,945.945 INFO    ] 200
[2026-10-28 14:23:13,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:23:14,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:23:14,002.002 INFO    ] No update needed
[2026-10-28 14:23:14,005.005 INFO    ] Checking for camera pi updates...
[2026-10-28 14:23:14,039.039 INFO    ] 200
[2026-10-28 14:23:14,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:23:14,082.082 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:23:14,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:23:14,266.266 INFO    ] No camera update needed
[2026-10-28 14:23:14,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:23:14,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:23:14,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:23:14,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:23:16,321.321 INFO    ] ================================================
[2026-10-28 14:23:16,338.338 INFO    ] Launching Daemon at Wed Oct 28 14:23:16 IST 2026
[2026-10-28 14:23:16,349.349 INFO    ] ================================================
[2026-10-28 14:23:16,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:23:16
[2026-10-28 14:23:17,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:23:17,775.775 INFO    ] Initializing speech engine...
[2026-10-28 14:23:17,784.784 INFO    ] 2026-10-28 14:23:17
[2026-10-28 14:23:18,035.035 INFO    ] 2026-10-28 14:23:18
[2026-10-28 14:23:18,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:23:18,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:23:18,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:23:18,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:23:18,614.614 INFO    ] time= 28/10/2026 14:23:18
[2026-10-28 14:23:18,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:23:18,649.649 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:23:18,778.778 INFO    ] No existing commands found in stream
[2026-10-28 14:23:23,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:23:23,811.811 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-28 14:23:25,822.822 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:23:25,825.825 INFO    ] Checking for system updates...
[2026-10-28 14:23:25,865.865 INFO    ] 200
[2026-10-28 14:23:25,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:23:25,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:23:25,929.929 INFO    ] No update needed
[2026-10-28 14:23:25,931.931 INFO    ] Checking for camera pi updates...
[2026-10-28 14:23:25,969.969 INFO    ] 200
[2026-10-28 14:23:25,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:23:26,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:23:26,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:23:26,123.123 INFO    ] No camera update needed
[2026-10-28 14:23:26,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:23:26,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:23:26,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:23:26,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:23:28,180.180 INFO    ] ================================================
[2026-10-28 14:23:28,196.196 INFO    ] Launching Daemon at Wed Oct 28 14:23:28 IST 2026
[2026-10-28 14:23:28,208.208 INFO    ] ================================================
[2026-10-28 14:23:28,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:23:28
[2026-10-28 14:23:29,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:23:29,631.631 INFO    ] Initializing speech engine...
[2026-10-28 14:23:29,640.640 INFO    ] 2026-10-28 14:23:29
[2026-10-28 14:23:29,885.885 INFO    ] 2026-10-28 14:23:29
[2026-10-28 14:23:29,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:23:30,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:23:30,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:23:30,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:23:30,441.441 INFO    ] time= 28/10/2026 14:23:30
[2026-10-28 14:23:30,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:23:30,466.466 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:23:30,601.601 INFO    ] No existing commands found in stream
[2026-10-28 14:23:35,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:23:35,622.622 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-28 14:23:38,782.782 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:23:38,785.785 INFO    ] Checking for system updates...
[2026-10-28 14:23:38,821.821 INFO    ] 200
[2026-10-28 14:23:38,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:23:38,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:23:38,878.878 INFO    ] No update needed
[2026-10-28 14:23:38,881.881 INFO    ] Checking for camera pi updates...
[2026-10-28 14:23:38,915.915 INFO    ] 200
[2026-10-28 14:23:38,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:23:38,958.958 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:23:39,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:23:39,047.047 INFO    ] No camera update needed
[2026-10-28 14:23:39,049.049 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:23:39,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:23:39,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:23:39,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:23:41,103.103 INFO    ] ================================================
[2026-10-28 14:23:41,119.119 INFO    ] Launching Daemon at Wed Oct 28 14:23:41 IST 2026
[2026-10-28 14:23:41,130.130 INFO    ] ================================================
[2026-10-28 14:23:41,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:23:41
[2026-10-28 14:23:42,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:23:42,589.589 INFO    ] Initializing speech engine...
[2026-10-28 14:23:42,598.598 INFO    ] 2026-10-28 14:23:42
[2026-10-28 14:23:42,858.858 INFO    ] 2026-10-28 14:23:42
[2026-10-28 14:23:42,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:23:43,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:23:43,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:23:43,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:23:43,590.590 INFO    ] time= 28/10/2026 14:23:43
[2026-10-28 14:23:43,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:23:43,669.669 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:23:43,832.832 INFO    ] No existing commands found in stream
[2026-10-28 14:23:48,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:23:48,846.846 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-28 14:23:49,702.702 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:23:49,705.705 INFO    ] Checking for system updates...
[2026-10-28 14:23:49,740.740 INFO    ] 200
[2026-10-28 14:23:49,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:23:49,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:23:49,804.804 INFO    ] No update needed
[2026-10-28 14:23:49,807.807 INFO    ] Checking for camera pi updates...
[2026-10-28 14:23:49,840.840 INFO    ] 200
[2026-10-28 14:23:49,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:23:49,882.882 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:23:49,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:23:49,962.962 INFO    ] No camera update needed
[2026-10-28 14:23:49,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:23:49,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:23:49,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:23:49,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:23:52,018.018 INFO    ] ================================================
[2026-10-28 14:23:52,033.033 INFO    ] Launching Daemon at Wed Oct 28 14:23:52 IST 2026
[2026-10-28 14:23:52,044.044 INFO    ] ================================================
[2026-10-28 14:23:52,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:23:52
[2026-10-28 14:23:53,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:23:53,515.515 INFO    ] Initializing speech engine...
[2026-10-28 14:23:53,522.522 INFO    ] 2026-10-28 14:23:53
[2026-10-28 14:23:53,784.784 INFO    ] 2026-10-28 14:23:53
[2026-10-28 14:23:53,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:23:54,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:23:54,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:23:54,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:23:54,565.565 INFO    ] time= 28/10/2026 14:23:54
[2026-10-28 14:23:54,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:23:54,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:23:54,874.874 INFO    ] No existing commands found in stream
[2026-10-28 14:23:59,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:23:59,904.904 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-28 14:24:03,944.944 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:24:03,947.947 INFO    ] Checking for system updates...
[2026-10-28 14:24:03,986.986 INFO    ] 200
[2026-10-28 14:24:03,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:24:04,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:24:04,048.048 INFO    ] No update needed
[2026-10-28 14:24:04,050.050 INFO    ] Checking for camera pi updates...
[2026-10-28 14:24:04,089.089 INFO    ] 200
[2026-10-28 14:24:04,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:24:04,140.140 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:24:04,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:24:04,222.222 INFO    ] No camera update needed
[2026-10-28 14:24:04,225.225 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:24:04,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:24:04,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:24:04,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:24:06,277.277 INFO    ] ================================================
[2026-10-28 14:24:06,291.291 INFO    ] Launching Daemon at Wed Oct 28 14:24:06 IST 2026
[2026-10-28 14:24:06,302.302 INFO    ] ================================================
[2026-10-28 14:24:06,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:24:06
[2026-10-28 14:24:07,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:24:07,912.912 INFO    ] Initializing speech engine...
[2026-10-28 14:24:07,919.919 INFO    ] 2026-10-28 14:24:07
[2026-10-28 14:24:08,190.190 INFO    ] 2026-10-28 14:24:08
[2026-10-28 14:24:08,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:24:08,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:24:08,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:24:08,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:24:08,804.804 INFO    ] time= 28/10/2026 14:24:08
[2026-10-28 14:24:08,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:24:08,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:24:09,077.077 INFO    ] No existing commands found in stream
[2026-10-28 14:24:14,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:24:14,117.117 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-28 14:24:18,605.605 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:24:18,608.608 INFO    ] Checking for system updates...
[2026-10-28 14:24:18,648.648 INFO    ] 200
[2026-10-28 14:24:18,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:24:18,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:24:18,713.713 INFO    ] No update needed
[2026-10-28 14:24:18,715.715 INFO    ] Checking for camera pi updates...
[2026-10-28 14:24:18,750.750 INFO    ] 200
[2026-10-28 14:24:18,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:24:18,794.794 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:24:18,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:24:18,882.882 INFO    ] No camera update needed
[2026-10-28 14:24:18,885.885 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:24:18,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:24:18,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:24:18,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:24:20,941.941 INFO    ] ================================================
[2026-10-28 14:24:20,956.956 INFO    ] Launching Daemon at Wed Oct 28 14:24:20 IST 2026
[2026-10-28 14:24:20,967.967 INFO    ] ================================================
[2026-10-28 14:24:21,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:24:21
[2026-10-28 14:24:22,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:24:22,407.407 INFO    ] Initializing speech engine...
[2026-10-28 14:24:22,429.429 INFO    ] 2026-10-28 14:24:22
[2026-10-28 14:24:22,704.704 INFO    ] 2026-10-28 14:24:22
[2026-10-28 14:24:22,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:24:23,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:24:23,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:24:23,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:24:23,331.331 INFO    ] time= 28/10/2026 14:24:23
[2026-10-28 14:24:23,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:24:23,353.353 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:24:23,508.508 INFO    ] No existing commands found in stream
[2026-10-28 14:24:28,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:24:28,526.526 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-28 14:24:32,864.864 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:24:32,867.867 INFO    ] Checking for system updates...
[2026-10-28 14:24:32,917.917 INFO    ] 200
[2026-10-28 14:24:32,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:24:32,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:24:32,981.981 INFO    ] No update needed
[2026-10-28 14:24:32,984.984 INFO    ] Checking for camera pi updates...
[2026-10-28 14:24:33,023.023 INFO    ] 200
[2026-10-28 14:24:33,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:24:33,071.071 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:24:33,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:24:33,156.156 INFO    ] No camera update needed
[2026-10-28 14:24:33,159.159 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:24:33,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:24:33,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:24:33,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:24:35,215.215 INFO    ] ================================================
[2026-10-28 14:24:35,230.230 INFO    ] Launching Daemon at Wed Oct 28 14:24:35 IST 2026
[2026-10-28 14:24:35,242.242 INFO    ] ================================================
[2026-10-28 14:24:35,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:24:35
[2026-10-28 14:24:36,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:24:36,695.695 INFO    ] Initializing speech engine...
[2026-10-28 14:24:36,704.704 INFO    ] 2026-10-28 14:24:36
[2026-10-28 14:24:36,999.999 INFO    ] 2026-10-28 14:24:36
[2026-10-28 14:24:37,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:24:37,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:24:37,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:24:37,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:24:37,636.636 INFO    ] time= 28/10/2026 14:24:37
[2026-10-28 14:24:37,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:24:37,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:24:37,809.809 INFO    ] No existing commands found in stream
[2026-10-28 14:24:42,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:24:42,827.827 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-28 14:24:47,442.442 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:24:47,444.444 INFO    ] Checking for system updates...
[2026-10-28 14:24:47,484.484 INFO    ] 200
[2026-10-28 14:24:47,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:24:47,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:24:47,541.541 INFO    ] No update needed
[2026-10-28 14:24:47,544.544 INFO    ] Checking for camera pi updates...
[2026-10-28 14:24:47,581.581 INFO    ] 200
[2026-10-28 14:24:47,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:24:47,625.625 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:24:47,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:24:47,714.714 INFO    ] No camera update needed
[2026-10-28 14:24:47,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:24:47,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:24:47,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:24:47,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:24:49,770.770 INFO    ] ================================================
[2026-10-28 14:24:49,785.785 INFO    ] Launching Daemon at Wed Oct 28 14:24:49 IST 2026
[2026-10-28 14:24:49,796.796 INFO    ] ================================================
[2026-10-28 14:24:50,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:24:50
[2026-10-28 14:24:51,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:24:51,320.320 INFO    ] Initializing speech engine...
[2026-10-28 14:24:51,329.329 INFO    ] 2026-10-28 14:24:51
[2026-10-28 14:24:51,627.627 INFO    ] 2026-10-28 14:24:51
[2026-10-28 14:24:51,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:24:51,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:24:51,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:24:52,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:24:52,231.231 INFO    ] time= 28/10/2026 14:24:52
[2026-10-28 14:24:52,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:24:52,277.277 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:24:52,447.447 INFO    ] No existing commands found in stream
[2026-10-28 14:24:57,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:24:57,469.469 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-28 14:25:00,064.064 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:25:00,067.067 INFO    ] Checking for system updates...
[2026-10-28 14:25:00,104.104 INFO    ] 200
[2026-10-28 14:25:00,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:25:00,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:25:00,162.162 INFO    ] No update needed
[2026-10-28 14:25:00,166.166 INFO    ] Checking for camera pi updates...
[2026-10-28 14:25:00,204.204 INFO    ] 200
[2026-10-28 14:25:00,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:25:00,249.249 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:25:00,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:25:00,327.327 INFO    ] No camera update needed
[2026-10-28 14:25:00,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:25:00,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:25:00,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:25:00,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:25:02,390.390 INFO    ] ================================================
[2026-10-28 14:25:02,412.412 INFO    ] Launching Daemon at Wed Oct 28 14:25:02 IST 2026
[2026-10-28 14:25:02,425.425 INFO    ] ================================================
[2026-10-28 14:25:03,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:25:03
[2026-10-28 14:25:03,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:25:04,211.211 INFO    ] Initializing speech engine...
[2026-10-28 14:25:04,223.223 INFO    ] 2026-10-28 14:25:04
[2026-10-28 14:25:04,503.503 INFO    ] 2026-10-28 14:25:04
[2026-10-28 14:25:04,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:25:04,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:25:04,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:25:05,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:25:05,241.241 INFO    ] time= 28/10/2026 14:25:05
[2026-10-28 14:25:05,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:25:05,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:25:05,483.483 INFO    ] No existing commands found in stream
[2026-10-28 14:25:10,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:25:10,497.497 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 14:25:13,909.909 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:25:13,912.912 INFO    ] Checking for system updates...
[2026-10-28 14:25:13,953.953 INFO    ] 200
[2026-10-28 14:25:13,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:25:14,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:25:14,019.019 INFO    ] No update needed
[2026-10-28 14:25:14,024.024 INFO    ] Checking for camera pi updates...
[2026-10-28 14:25:14,061.061 INFO    ] 200
[2026-10-28 14:25:14,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:25:14,104.104 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:25:14,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:25:14,189.189 INFO    ] No camera update needed
[2026-10-28 14:25:14,192.192 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:25:14,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:25:14,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:25:14,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:25:16,243.243 INFO    ] ================================================
[2026-10-28 14:25:16,259.259 INFO    ] Launching Daemon at Wed Oct 28 14:25:16 IST 2026
[2026-10-28 14:25:16,270.270 INFO    ] ================================================
[2026-10-28 14:25:16,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:25:16
[2026-10-28 14:25:17,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:25:17,862.862 INFO    ] Initializing speech engine...
[2026-10-28 14:25:17,875.875 INFO    ] 2026-10-28 14:25:17
[2026-10-28 14:25:18,127.127 INFO    ] 2026-10-28 14:25:18
[2026-10-28 14:25:18,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:25:18,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:25:18,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:25:18,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:25:18,709.709 INFO    ] time= 28/10/2026 14:25:18
[2026-10-28 14:25:18,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:25:18,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:25:18,901.901 INFO    ] No existing commands found in stream
[2026-10-28 14:25:23,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:25:23,934.934 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-28 14:25:26,023.023 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:25:26,026.026 INFO    ] Checking for system updates...
[2026-10-28 14:25:26,062.062 INFO    ] 200
[2026-10-28 14:25:26,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:25:26,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:25:26,120.120 INFO    ] No update needed
[2026-10-28 14:25:26,123.123 INFO    ] Checking for camera pi updates...
[2026-10-28 14:25:26,156.156 INFO    ] 200
[2026-10-28 14:25:26,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:25:26,199.199 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:25:26,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:25:26,383.383 INFO    ] No camera update needed
[2026-10-28 14:25:26,385.385 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:25:26,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:25:26,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:25:26,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:25:28,440.440 INFO    ] ================================================
[2026-10-28 14:25:28,455.455 INFO    ] Launching Daemon at Wed Oct 28 14:25:28 IST 2026
[2026-10-28 14:25:28,466.466 INFO    ] ================================================
[2026-10-28 14:25:29,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:25:29
[2026-10-28 14:25:29,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:25:29,883.883 INFO    ] Initializing speech engine...
[2026-10-28 14:25:29,892.892 INFO    ] 2026-10-28 14:25:29
[2026-10-28 14:25:30,142.142 INFO    ] 2026-10-28 14:25:30
[2026-10-28 14:25:30,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:25:30,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:25:30,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:25:30,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:25:30,719.719 INFO    ] time= 28/10/2026 14:25:30
[2026-10-28 14:25:30,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:25:30,756.756 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:25:30,886.886 INFO    ] No existing commands found in stream
[2026-10-28 14:25:35,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:25:35,913.913 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-28 14:25:38,910.910 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:25:38,913.913 INFO    ] Checking for system updates...
[2026-10-28 14:25:38,951.951 INFO    ] 200
[2026-10-28 14:25:38,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:25:39,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:25:39,018.018 INFO    ] No update needed
[2026-10-28 14:25:39,024.024 INFO    ] Checking for camera pi updates...
[2026-10-28 14:25:39,058.058 INFO    ] 200
[2026-10-28 14:25:39,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:25:39,101.101 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:25:39,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:25:39,187.187 INFO    ] No camera update needed
[2026-10-28 14:25:39,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:25:39,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:25:39,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:25:39,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:25:41,241.241 INFO    ] ================================================
[2026-10-28 14:25:41,255.255 INFO    ] Launching Daemon at Wed Oct 28 14:25:41 IST 2026
[2026-10-28 14:25:41,267.267 INFO    ] ================================================
[2026-10-28 14:25:41,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:25:41
[2026-10-28 14:25:42,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:25:42,717.717 INFO    ] Initializing speech engine...
[2026-10-28 14:25:42,726.726 INFO    ] 2026-10-28 14:25:42
[2026-10-28 14:25:42,975.975 INFO    ] 2026-10-28 14:25:42
[2026-10-28 14:25:43,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:25:43,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:25:43,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:25:43,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:25:43,547.547 INFO    ] time= 28/10/2026 14:25:43
[2026-10-28 14:25:43,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:25:43,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:25:43,720.720 INFO    ] No existing commands found in stream
[2026-10-28 14:25:48,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:25:48,753.753 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-28 14:25:52,437.437 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:25:52,440.440 INFO    ] Checking for system updates...
[2026-10-28 14:25:52,476.476 INFO    ] 200
[2026-10-28 14:25:52,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:25:52,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:25:52,533.533 INFO    ] No update needed
[2026-10-28 14:25:52,536.536 INFO    ] Checking for camera pi updates...
[2026-10-28 14:25:52,574.574 INFO    ] 200
[2026-10-28 14:25:52,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:25:52,622.622 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:25:52,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:25:52,707.707 INFO    ] No camera update needed
[2026-10-28 14:25:52,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:25:52,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:25:52,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:25:52,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:25:54,765.765 INFO    ] ================================================
[2026-10-28 14:25:54,780.780 INFO    ] Launching Daemon at Wed Oct 28 14:25:54 IST 2026
[2026-10-28 14:25:54,792.792 INFO    ] ================================================
[2026-10-28 14:25:55,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:25:55
[2026-10-28 14:25:56,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:25:56,299.299 INFO    ] Initializing speech engine...
[2026-10-28 14:25:56,306.306 INFO    ] 2026-10-28 14:25:56
[2026-10-28 14:25:56,566.566 INFO    ] 2026-10-28 14:25:56
[2026-10-28 14:25:56,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:25:56,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:25:57,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:25:57,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:25:57,266.266 INFO    ] time= 28/10/2026 14:25:57
[2026-10-28 14:25:57,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:25:57,362.362 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:25:57,509.509 INFO    ] No existing commands found in stream
[2026-10-28 14:26:02,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:26:02,526.526 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-28 14:26:06,664.664 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:26:06,667.667 INFO    ] Checking for system updates...
[2026-10-28 14:26:06,703.703 INFO    ] 200
[2026-10-28 14:26:06,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:26:06,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:26:06,760.760 INFO    ] No update needed
[2026-10-28 14:26:06,762.762 INFO    ] Checking for camera pi updates...
[2026-10-28 14:26:06,795.795 INFO    ] 200
[2026-10-28 14:26:06,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:26:06,843.843 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:26:06,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:26:06,925.925 INFO    ] No camera update needed
[2026-10-28 14:26:06,928.928 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:26:06,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:26:06,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:26:06,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:26:08,980.980 INFO    ] ================================================
[2026-10-28 14:26:09,995.995 INFO    ] Launching Daemon at Wed Oct 28 14:26:08 IST 2026
[2026-10-28 14:26:09,006.006 INFO    ] ================================================
[2026-10-28 14:26:09,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:26:09
[2026-10-28 14:26:10,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:26:10,469.469 INFO    ] Initializing speech engine...
[2026-10-28 14:26:10,477.477 INFO    ] 2026-10-28 14:26:10
[2026-10-28 14:26:10,749.749 INFO    ] 2026-10-28 14:26:10
[2026-10-28 14:26:10,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:26:11,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:26:11,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:26:11,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:26:11,302.302 INFO    ] time= 28/10/2026 14:26:11
[2026-10-28 14:26:11,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:26:11,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:26:11,516.516 INFO    ] No existing commands found in stream
[2026-10-28 14:26:16,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:26:16,545.545 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 14:26:18,510.510 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:26:18,513.513 INFO    ] Checking for system updates...
[2026-10-28 14:26:18,551.551 INFO    ] 200
[2026-10-28 14:26:18,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:26:18,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:26:18,610.610 INFO    ] No update needed
[2026-10-28 14:26:18,612.612 INFO    ] Checking for camera pi updates...
[2026-10-28 14:26:18,648.648 INFO    ] 200
[2026-10-28 14:26:18,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:26:18,695.695 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:26:18,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:26:18,776.776 INFO    ] No camera update needed
[2026-10-28 14:26:18,779.779 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:26:18,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:26:18,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:26:18,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:26:20,832.832 INFO    ] ================================================
[2026-10-28 14:26:20,847.847 INFO    ] Launching Daemon at Wed Oct 28 14:26:20 IST 2026
[2026-10-28 14:26:20,857.857 INFO    ] ================================================
[2026-10-28 14:26:21,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:26:21
[2026-10-28 14:26:22,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:26:22,299.299 INFO    ] Initializing speech engine...
[2026-10-28 14:26:22,307.307 INFO    ] 2026-10-28 14:26:22
[2026-10-28 14:26:22,599.599 INFO    ] 2026-10-28 14:26:22
[2026-10-28 14:26:22,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:26:22,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:26:22,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:26:23,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:26:23,222.222 INFO    ] time= 28/10/2026 14:26:23
[2026-10-28 14:26:23,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:26:23,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:26:23,395.395 INFO    ] No existing commands found in stream
[2026-10-28 14:26:28,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:26:28,410.410 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-28 14:26:30,597.597 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:26:30,600.600 INFO    ] Checking for system updates...
[2026-10-28 14:26:30,636.636 INFO    ] 200
[2026-10-28 14:26:30,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:26:30,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:26:30,701.701 INFO    ] No update needed
[2026-10-28 14:26:30,703.703 INFO    ] Checking for camera pi updates...
[2026-10-28 14:26:30,741.741 INFO    ] 200
[2026-10-28 14:26:30,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:26:30,789.789 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:26:30,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:26:30,877.877 INFO    ] No camera update needed
[2026-10-28 14:26:30,880.880 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:26:30,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:26:30,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:26:30,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:26:32,937.937 INFO    ] ================================================
[2026-10-28 14:26:32,953.953 INFO    ] Launching Daemon at Wed Oct 28 14:26:32 IST 2026
[2026-10-28 14:26:32,965.965 INFO    ] ================================================
[2026-10-28 14:26:33,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:26:33
[2026-10-28 14:26:34,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:26:34,395.395 INFO    ] Initializing speech engine...
[2026-10-28 14:26:34,413.413 INFO    ] 2026-10-28 14:26:34
[2026-10-28 14:26:34,661.661 INFO    ] 2026-10-28 14:26:34
[2026-10-28 14:26:34,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:26:34,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:26:34,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:26:35,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:26:35,227.227 INFO    ] time= 28/10/2026 14:26:35
[2026-10-28 14:26:35,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:26:35,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:26:35,625.625 INFO    ] No existing commands found in stream
[2026-10-28 14:26:40,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:26:40,641.641 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-28 14:26:42,982.982 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:26:42,985.985 INFO    ] Checking for system updates...
[2026-10-28 14:26:43,021.021 INFO    ] 200
[2026-10-28 14:26:43,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:26:43,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:26:43,078.078 INFO    ] No update needed
[2026-10-28 14:26:43,080.080 INFO    ] Checking for camera pi updates...
[2026-10-28 14:26:43,114.114 INFO    ] 200
[2026-10-28 14:26:43,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:26:43,157.157 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:26:43,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:26:43,257.257 INFO    ] No camera update needed
[2026-10-28 14:26:43,260.260 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:26:43,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:26:43,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:26:43,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:26:45,313.313 INFO    ] ================================================
[2026-10-28 14:26:45,329.329 INFO    ] Launching Daemon at Wed Oct 28 14:26:45 IST 2026
[2026-10-28 14:26:45,340.340 INFO    ] ================================================
[2026-10-28 14:26:45,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:26:45
[2026-10-28 14:26:46,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:26:46,742.742 INFO    ] Initializing speech engine...
[2026-10-28 14:26:46,758.758 INFO    ] 2026-10-28 14:26:46
[2026-10-28 14:26:47,018.018 INFO    ] 2026-10-28 14:26:47
[2026-10-28 14:26:47,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:26:47,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:26:47,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:26:47,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:26:47,573.573 INFO    ] time= 28/10/2026 14:26:47
[2026-10-28 14:26:47,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:26:47,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:26:47,737.737 INFO    ] No existing commands found in stream
[2026-10-28 14:26:52,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:26:52,768.768 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 14:26:54,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:26:54,745.745 INFO    ] Checking for system updates...
[2026-10-28 14:26:54,781.781 INFO    ] 200
[2026-10-28 14:26:54,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:26:54,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:26:54,845.845 INFO    ] No update needed
[2026-10-28 14:26:54,848.848 INFO    ] Checking for camera pi updates...
[2026-10-28 14:26:54,881.881 INFO    ] 200
[2026-10-28 14:26:54,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:26:54,928.928 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:26:55,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:26:55,012.012 INFO    ] No camera update needed
[2026-10-28 14:26:55,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:26:55,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:26:55,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:26:55,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:26:57,066.066 INFO    ] ================================================
[2026-10-28 14:26:57,081.081 INFO    ] Launching Daemon at Wed Oct 28 14:26:57 IST 2026
[2026-10-28 14:26:57,092.092 INFO    ] ================================================
[2026-10-28 14:26:57,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:26:57
[2026-10-28 14:26:58,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:26:58,540.540 INFO    ] Initializing speech engine...
[2026-10-28 14:26:58,551.551 INFO    ] 2026-10-28 14:26:58
[2026-10-28 14:26:58,824.824 INFO    ] 2026-10-28 14:26:58
[2026-10-28 14:26:58,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:26:59,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:26:59,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:26:59,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:26:59,616.616 INFO    ] time= 28/10/2026 14:26:59
[2026-10-28 14:26:59,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:26:59,718.718 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:26:59,917.917 INFO    ] No existing commands found in stream
[2026-10-28 14:27:04,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:27:04,946.946 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-28 14:27:07,845.845 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:27:07,848.848 INFO    ] Checking for system updates...
[2026-10-28 14:27:07,885.885 INFO    ] 200
[2026-10-28 14:27:07,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:27:07,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:27:07,942.942 INFO    ] No update needed
[2026-10-28 14:27:07,945.945 INFO    ] Checking for camera pi updates...
[2026-10-28 14:27:07,979.979 INFO    ] 200
[2026-10-28 14:27:07,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:27:08,026.026 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:27:08,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:27:08,123.123 INFO    ] No camera update needed
[2026-10-28 14:27:08,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:27:08,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:27:08,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:27:08,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:27:10,180.180 INFO    ] ================================================
[2026-10-28 14:27:10,196.196 INFO    ] Launching Daemon at Wed Oct 28 14:27:10 IST 2026
[2026-10-28 14:27:10,206.206 INFO    ] ================================================
[2026-10-28 14:27:10,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:27:10
[2026-10-28 14:27:11,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:27:11,599.599 INFO    ] Initializing speech engine...
[2026-10-28 14:27:11,619.619 INFO    ] 2026-10-28 14:27:11
[2026-10-28 14:27:11,881.881 INFO    ] 2026-10-28 14:27:11
[2026-10-28 14:27:11,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:27:12,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:27:12,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:27:12,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:27:12,461.461 INFO    ] time= 28/10/2026 14:27:12
[2026-10-28 14:27:12,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:27:12,496.496 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:27:12,634.634 INFO    ] No existing commands found in stream
[2026-10-28 14:27:17,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:27:17,667.667 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 14:27:21,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:27:21,463.463 INFO    ] Checking for system updates...
[2026-10-28 14:27:21,498.498 INFO    ] 200
[2026-10-28 14:27:21,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:27:21,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:27:21,556.556 INFO    ] No update needed
[2026-10-28 14:27:21,559.559 INFO    ] Checking for camera pi updates...
[2026-10-28 14:27:21,592.592 INFO    ] 200
[2026-10-28 14:27:21,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:27:21,636.636 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:27:21,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:27:21,698.698 INFO    ] No camera update needed
[2026-10-28 14:27:21,700.700 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:27:21,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:27:21,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:27:21,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:27:23,753.753 INFO    ] ================================================
[2026-10-28 14:27:23,768.768 INFO    ] Launching Daemon at Wed Oct 28 14:27:23 IST 2026
[2026-10-28 14:27:23,779.779 INFO    ] ================================================
[2026-10-28 14:27:24,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:27:24
[2026-10-28 14:27:24,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:27:25,247.247 INFO    ] Initializing speech engine...
[2026-10-28 14:27:25,254.254 INFO    ] 2026-10-28 14:27:25
[2026-10-28 14:27:25,517.517 INFO    ] 2026-10-28 14:27:25
[2026-10-28 14:27:25,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:27:25,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:27:25,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:27:26,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:27:26,285.285 INFO    ] time= 28/10/2026 14:27:26
[2026-10-28 14:27:26,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:27:26,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:27:26,566.566 INFO    ] No existing commands found in stream
[2026-10-28 14:27:31,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:27:31,598.598 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 14:27:35,027.027 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:27:35,030.030 INFO    ] Checking for system updates...
[2026-10-28 14:27:35,069.069 INFO    ] 200
[2026-10-28 14:27:35,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:27:35,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:27:35,128.128 INFO    ] No update needed
[2026-10-28 14:27:35,131.131 INFO    ] Checking for camera pi updates...
[2026-10-28 14:27:35,167.167 INFO    ] 200
[2026-10-28 14:27:35,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:27:35,214.214 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:27:35,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:27:35,292.292 INFO    ] No camera update needed
[2026-10-28 14:27:35,295.295 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:27:35,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:27:35,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:27:35,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:27:37,348.348 INFO    ] ================================================
[2026-10-28 14:27:37,363.363 INFO    ] Launching Daemon at Wed Oct 28 14:27:37 IST 2026
[2026-10-28 14:27:37,373.373 INFO    ] ================================================
[2026-10-28 14:27:37,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:27:37
[2026-10-28 14:27:38,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:27:38,788.788 INFO    ] Initializing speech engine...
[2026-10-28 14:27:38,801.801 INFO    ] 2026-10-28 14:27:38
[2026-10-28 14:27:39,050.050 INFO    ] 2026-10-28 14:27:39
[2026-10-28 14:27:39,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:27:39,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:27:39,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:27:39,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:27:39,617.617 INFO    ] time= 28/10/2026 14:27:39
[2026-10-28 14:27:39,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:27:39,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:27:39,833.833 INFO    ] No existing commands found in stream
[2026-10-28 14:27:44,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:27:44,858.858 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 14:27:47,621.621 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:27:47,624.624 INFO    ] Checking for system updates...
[2026-10-28 14:27:47,660.660 INFO    ] 200
[2026-10-28 14:27:47,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:27:47,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:27:47,717.717 INFO    ] No update needed
[2026-10-28 14:27:47,719.719 INFO    ] Checking for camera pi updates...
[2026-10-28 14:27:47,753.753 INFO    ] 200
[2026-10-28 14:27:47,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:27:47,796.796 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:27:47,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:27:47,881.881 INFO    ] No camera update needed
[2026-10-28 14:27:47,884.884 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:27:47,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:27:47,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:27:47,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:27:49,938.938 INFO    ] ================================================
[2026-10-28 14:27:49,961.961 INFO    ] Launching Daemon at Wed Oct 28 14:27:49 IST 2026
[2026-10-28 14:27:49,971.971 INFO    ] ================================================
[2026-10-28 14:27:50,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:27:50
[2026-10-28 14:27:51,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:27:51,391.391 INFO    ] Initializing speech engine...
[2026-10-28 14:27:51,408.408 INFO    ] 2026-10-28 14:27:51
[2026-10-28 14:27:51,679.679 INFO    ] 2026-10-28 14:27:51
[2026-10-28 14:27:51,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:27:52,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:27:52,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:27:52,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:27:52,405.405 INFO    ] time= 28/10/2026 14:27:52
[2026-10-28 14:27:52,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:27:52,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:27:52,655.655 INFO    ] No existing commands found in stream
[2026-10-28 14:27:57,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:27:57,686.686 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-28 14:28:01,025.025 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:28:01,028.028 INFO    ] Checking for system updates...
[2026-10-28 14:28:01,066.066 INFO    ] 200
[2026-10-28 14:28:01,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:28:01,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:28:01,132.132 INFO    ] No update needed
[2026-10-28 14:28:01,135.135 INFO    ] Checking for camera pi updates...
[2026-10-28 14:28:01,170.170 INFO    ] 200
[2026-10-28 14:28:01,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:28:01,214.214 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:28:01,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:28:01,305.305 INFO    ] No camera update needed
[2026-10-28 14:28:01,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:28:01,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:28:01,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:28:01,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:28:03,384.384 INFO    ] ================================================
[2026-10-28 14:28:03,400.400 INFO    ] Launching Daemon at Wed Oct 28 14:28:03 IST 2026
[2026-10-28 14:28:03,410.410 INFO    ] ================================================
[2026-10-28 14:28:03,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:28:03
[2026-10-28 14:28:04,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:28:04,861.861 INFO    ] Initializing speech engine...
[2026-10-28 14:28:04,888.888 INFO    ] 2026-10-28 14:28:04
[2026-10-28 14:28:05,165.165 INFO    ] 2026-10-28 14:28:05
[2026-10-28 14:28:05,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:28:05,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:28:05,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:28:05,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:28:05,791.791 INFO    ] time= 28/10/2026 14:28:05
[2026-10-28 14:28:05,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:28:05,816.816 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:28:05,967.967 INFO    ] No existing commands found in stream
[2026-10-28 14:28:10,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:28:10,989.989 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-28 14:28:12,351.351 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:28:12,354.354 INFO    ] Checking for system updates...
[2026-10-28 14:28:12,393.393 INFO    ] 200
[2026-10-28 14:28:12,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:28:12,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:28:12,452.452 INFO    ] No update needed
[2026-10-28 14:28:12,454.454 INFO    ] Checking for camera pi updates...
[2026-10-28 14:28:12,488.488 INFO    ] 200
[2026-10-28 14:28:12,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:28:12,530.530 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:28:12,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:28:12,604.604 INFO    ] No camera update needed
[2026-10-28 14:28:12,606.606 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:28:12,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:28:12,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:28:12,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:28:14,658.658 INFO    ] ================================================
[2026-10-28 14:28:14,673.673 INFO    ] Launching Daemon at Wed Oct 28 14:28:14 IST 2026
[2026-10-28 14:28:14,684.684 INFO    ] ================================================
[2026-10-28 14:28:15,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:28:15
[2026-10-28 14:28:15,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:28:16,098.098 INFO    ] Initializing speech engine...
[2026-10-28 14:28:16,121.121 INFO    ] 2026-10-28 14:28:16
[2026-10-28 14:28:16,376.376 INFO    ] 2026-10-28 14:28:16
[2026-10-28 14:28:16,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:28:16,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:28:16,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:28:16,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:28:16,944.944 INFO    ] time= 28/10/2026 14:28:16
[2026-10-28 14:28:16,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:28:16,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:28:17,111.111 INFO    ] No existing commands found in stream
[2026-10-28 14:28:22,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:28:22,141.141 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-28 14:28:25,670.670 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:28:25,673.673 INFO    ] Checking for system updates...
[2026-10-28 14:28:25,709.709 INFO    ] 200
[2026-10-28 14:28:25,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:28:25,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:28:25,767.767 INFO    ] No update needed
[2026-10-28 14:28:25,769.769 INFO    ] Checking for camera pi updates...
[2026-10-28 14:28:25,803.803 INFO    ] 200
[2026-10-28 14:28:25,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:28:25,846.846 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:28:25,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:28:25,927.927 INFO    ] No camera update needed
[2026-10-28 14:28:25,929.929 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:28:25,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:28:25,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:28:25,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:28:27,982.982 INFO    ] ================================================
[2026-10-28 14:28:28,997.997 INFO    ] Launching Daemon at Wed Oct 28 14:28:27 IST 2026
[2026-10-28 14:28:28,007.007 INFO    ] ================================================
[2026-10-28 14:28:28,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:28:28
[2026-10-28 14:28:29,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:28:29,406.406 INFO    ] Initializing speech engine...
[2026-10-28 14:28:29,429.429 INFO    ] 2026-10-28 14:28:29
[2026-10-28 14:28:29,683.683 INFO    ] 2026-10-28 14:28:29
[2026-10-28 14:28:29,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:28:30,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:28:30,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:28:30,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:28:30,296.296 INFO    ] time= 28/10/2026 14:28:30
[2026-10-28 14:28:30,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:28:30,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:28:30,493.493 INFO    ] No existing commands found in stream
[2026-10-28 14:28:35,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:28:35,516.516 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-28 14:28:36,861.861 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:28:36,864.864 INFO    ] Checking for system updates...
[2026-10-28 14:28:36,900.900 INFO    ] 200
[2026-10-28 14:28:36,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:28:36,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:28:36,961.961 INFO    ] No update needed
[2026-10-28 14:28:36,963.963 INFO    ] Checking for camera pi updates...
[2026-10-28 14:28:37,002.002 INFO    ] 200
[2026-10-28 14:28:37,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:28:37,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:28:37,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:28:37,170.170 INFO    ] No camera update needed
[2026-10-28 14:28:37,173.173 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:28:37,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:28:37,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:28:37,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:28:39,233.233 INFO    ] ================================================
[2026-10-28 14:28:39,248.248 INFO    ] Launching Daemon at Wed Oct 28 14:28:39 IST 2026
[2026-10-28 14:28:39,259.259 INFO    ] ================================================
[2026-10-28 14:28:39,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:28:39
[2026-10-28 14:28:40,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:28:40,781.781 INFO    ] Initializing speech engine...
[2026-10-28 14:28:40,806.806 INFO    ] 2026-10-28 14:28:40
[2026-10-28 14:28:41,054.054 INFO    ] 2026-10-28 14:28:41
[2026-10-28 14:28:41,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:28:41,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:28:41,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:28:41,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:28:41,591.591 INFO    ] time= 28/10/2026 14:28:41
[2026-10-28 14:28:41,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:28:41,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:28:41,871.871 INFO    ] No existing commands found in stream
[2026-10-28 14:28:46,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:28:46,889.889 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 14:28:51,023.023 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:28:51,026.026 INFO    ] Checking for system updates...
[2026-10-28 14:28:51,065.065 INFO    ] 200
[2026-10-28 14:28:51,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:28:51,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:28:51,129.129 INFO    ] No update needed
[2026-10-28 14:28:51,132.132 INFO    ] Checking for camera pi updates...
[2026-10-28 14:28:51,165.165 INFO    ] 200
[2026-10-28 14:28:51,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:28:51,207.207 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:28:51,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:28:51,312.312 INFO    ] No camera update needed
[2026-10-28 14:28:51,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:28:51,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:28:51,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:28:51,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:28:53,366.366 INFO    ] ================================================
[2026-10-28 14:28:53,381.381 INFO    ] Launching Daemon at Wed Oct 28 14:28:53 IST 2026
[2026-10-28 14:28:53,392.392 INFO    ] ================================================
[2026-10-28 14:28:53,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:28:53
[2026-10-28 14:28:54,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:28:54,792.792 INFO    ] Initializing speech engine...
[2026-10-28 14:28:54,806.806 INFO    ] 2026-10-28 14:28:54
[2026-10-28 14:28:55,072.072 INFO    ] 2026-10-28 14:28:55
[2026-10-28 14:28:55,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:28:55,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:28:55,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:28:55,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:28:55,653.653 INFO    ] time= 28/10/2026 14:28:55
[2026-10-28 14:28:55,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:28:55,688.688 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:28:55,807.807 INFO    ] No existing commands found in stream
[2026-10-28 14:29:00,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:29:00,834.834 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-28 14:29:04,200.200 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:29:04,203.203 INFO    ] Checking for system updates...
[2026-10-28 14:29:04,239.239 INFO    ] 200
[2026-10-28 14:29:04,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:29:04,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:29:04,298.298 INFO    ] No update needed
[2026-10-28 14:29:04,300.300 INFO    ] Checking for camera pi updates...
[2026-10-28 14:29:04,333.333 INFO    ] 200
[2026-10-28 14:29:04,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:29:04,377.377 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:29:04,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:29:04,460.460 INFO    ] No camera update needed
[2026-10-28 14:29:04,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:29:04,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:29:04,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:29:04,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:29:06,514.514 INFO    ] ================================================
[2026-10-28 14:29:06,529.529 INFO    ] Launching Daemon at Wed Oct 28 14:29:06 IST 2026
[2026-10-28 14:29:06,540.540 INFO    ] ================================================
[2026-10-28 14:29:07,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:29:07
[2026-10-28 14:29:07,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:29:07,942.942 INFO    ] Initializing speech engine...
[2026-10-28 14:29:07,957.957 INFO    ] 2026-10-28 14:29:07
[2026-10-28 14:29:08,223.223 INFO    ] 2026-10-28 14:29:08
[2026-10-28 14:29:08,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:29:08,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:29:08,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:29:08,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:29:08,791.791 INFO    ] time= 28/10/2026 14:29:08
[2026-10-28 14:29:08,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:29:08,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:29:08,962.962 INFO    ] No existing commands found in stream
[2026-10-28 14:29:13,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:29:13,990.990 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-28 14:29:14,820.820 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:29:14,823.823 INFO    ] Checking for system updates...
[2026-10-28 14:29:14,859.859 INFO    ] 200
[2026-10-28 14:29:14,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:29:14,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:29:14,918.918 INFO    ] No update needed
[2026-10-28 14:29:14,920.920 INFO    ] Checking for camera pi updates...
[2026-10-28 14:29:14,954.954 INFO    ] 200
[2026-10-28 14:29:14,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:29:14,996.996 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:29:15,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:29:15,084.084 INFO    ] No camera update needed
[2026-10-28 14:29:15,087.087 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:29:15,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:29:15,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:29:15,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:29:17,142.142 INFO    ] ================================================
[2026-10-28 14:29:17,158.158 INFO    ] Launching Daemon at Wed Oct 28 14:29:17 IST 2026
[2026-10-28 14:29:17,169.169 INFO    ] ================================================
[2026-10-28 14:29:17,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:29:17
[2026-10-28 14:29:18,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:29:18,566.566 INFO    ] Initializing speech engine...
[2026-10-28 14:29:18,574.574 INFO    ] 2026-10-28 14:29:18
[2026-10-28 14:29:18,847.847 INFO    ] 2026-10-28 14:29:18
[2026-10-28 14:29:18,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:29:19,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:29:19,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:29:19,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:29:19,430.430 INFO    ] time= 28/10/2026 14:29:19
[2026-10-28 14:29:19,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:29:19,466.466 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:29:19,630.630 INFO    ] No existing commands found in stream
[2026-10-28 14:29:24,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:29:24,663.663 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-28 14:29:28,002.002 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:29:28,005.005 INFO    ] Checking for system updates...
[2026-10-28 14:29:28,045.045 INFO    ] 200
[2026-10-28 14:29:28,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:29:28,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:29:28,114.114 INFO    ] No update needed
[2026-10-28 14:29:28,116.116 INFO    ] Checking for camera pi updates...
[2026-10-28 14:29:28,149.149 INFO    ] 200
[2026-10-28 14:29:28,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:29:28,192.192 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:29:28,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:29:28,294.294 INFO    ] No camera update needed
[2026-10-28 14:29:28,296.296 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:29:28,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:29:28,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:29:28,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:29:30,348.348 INFO    ] ================================================
[2026-10-28 14:29:30,363.363 INFO    ] Launching Daemon at Wed Oct 28 14:29:30 IST 2026
[2026-10-28 14:29:30,374.374 INFO    ] ================================================
[2026-10-28 14:29:31,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:29:31
[2026-10-28 14:29:31,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:29:32,089.089 INFO    ] Initializing speech engine...
[2026-10-28 14:29:32,108.108 INFO    ] 2026-10-28 14:29:32
[2026-10-28 14:29:32,416.416 INFO    ] 2026-10-28 14:29:32
[2026-10-28 14:29:32,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:29:32,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:29:32,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:29:33,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:29:33,169.169 INFO    ] time= 28/10/2026 14:29:33
[2026-10-28 14:29:33,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:29:33,260.260 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:29:33,385.385 INFO    ] No existing commands found in stream
[2026-10-28 14:29:38,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:29:38,398.398 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 14:29:42,660.660 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:29:42,662.662 INFO    ] Checking for system updates...
[2026-10-28 14:29:42,699.699 INFO    ] 200
[2026-10-28 14:29:42,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:29:42,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:29:42,757.757 INFO    ] No update needed
[2026-10-28 14:29:42,759.759 INFO    ] Checking for camera pi updates...
[2026-10-28 14:29:42,793.793 INFO    ] 200
[2026-10-28 14:29:42,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:29:42,836.836 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:29:43,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:29:43,024.024 INFO    ] No camera update needed
[2026-10-28 14:29:43,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:29:43,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:29:43,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:29:43,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:29:45,080.080 INFO    ] ================================================
[2026-10-28 14:29:45,095.095 INFO    ] Launching Daemon at Wed Oct 28 14:29:45 IST 2026
[2026-10-28 14:29:45,105.105 INFO    ] ================================================
[2026-10-28 14:29:45,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:29:45
[2026-10-28 14:29:46,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:29:46,667.667 INFO    ] Initializing speech engine...
[2026-10-28 14:29:46,684.684 INFO    ] 2026-10-28 14:29:46
[2026-10-28 14:29:46,936.936 INFO    ] 2026-10-28 14:29:46
[2026-10-28 14:29:46,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:29:47,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:29:47,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:29:47,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:29:47,505.505 INFO    ] time= 28/10/2026 14:29:47
[2026-10-28 14:29:47,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:29:47,546.546 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:29:47,711.711 INFO    ] No existing commands found in stream
[2026-10-28 14:29:52,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:29:52,744.744 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-28 14:29:57,300.300 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:29:57,302.302 INFO    ] Checking for system updates...
[2026-10-28 14:29:57,342.342 INFO    ] 200
[2026-10-28 14:29:57,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:29:57,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:29:57,406.406 INFO    ] No update needed
[2026-10-28 14:29:57,408.408 INFO    ] Checking for camera pi updates...
[2026-10-28 14:29:57,446.446 INFO    ] 200
[2026-10-28 14:29:57,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:29:57,494.494 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:29:57,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:29:57,578.578 INFO    ] No camera update needed
[2026-10-28 14:29:57,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:29:57,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:29:57,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:29:57,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:29:59,633.633 INFO    ] ================================================
[2026-10-28 14:29:59,648.648 INFO    ] Launching Daemon at Wed Oct 28 14:29:59 IST 2026
[2026-10-28 14:29:59,659.659 INFO    ] ================================================
[2026-10-28 14:30:00,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:30:00
[2026-10-28 14:30:01,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:30:01,320.320 INFO    ] Initializing speech engine...
[2026-10-28 14:30:01,326.326 INFO    ] 2026-10-28 14:30:01
[2026-10-28 14:30:01,815.815 INFO    ] 2026-10-28 14:30:01
[2026-10-28 14:30:01,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:30:02,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:30:02,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:30:02,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:30:02,692.692 INFO    ] time= 28/10/2026 14:30:02
[2026-10-28 14:30:02,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:30:02,709.709 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:30:02,818.818 INFO    ] No existing commands found in stream
[2026-10-28 14:30:07,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:30:07,830.830 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 14:30:08,991.991 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:30:08,994.994 INFO    ] Checking for system updates...
[2026-10-28 14:30:09,033.033 INFO    ] 200
[2026-10-28 14:30:09,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:30:09,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:30:09,096.096 INFO    ] No update needed
[2026-10-28 14:30:09,098.098 INFO    ] Checking for camera pi updates...
[2026-10-28 14:30:09,135.135 INFO    ] 200
[2026-10-28 14:30:09,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:30:09,180.180 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:30:09,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:30:09,280.280 INFO    ] No camera update needed
[2026-10-28 14:30:09,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:30:09,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:30:09,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:30:09,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:30:11,344.344 INFO    ] ================================================
[2026-10-28 14:30:11,359.359 INFO    ] Launching Daemon at Wed Oct 28 14:30:11 IST 2026
[2026-10-28 14:30:11,369.369 INFO    ] ================================================
[2026-10-28 14:30:11,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:30:11
[2026-10-28 14:30:12,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:30:12,778.778 INFO    ] Initializing speech engine...
[2026-10-28 14:30:12,784.784 INFO    ] 2026-10-28 14:30:12
[2026-10-28 14:30:13,080.080 INFO    ] 2026-10-28 14:30:13
[2026-10-28 14:30:13,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:30:13,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:30:13,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:30:13,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:30:13,701.701 INFO    ] time= 28/10/2026 14:30:13
[2026-10-28 14:30:13,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:30:13,730.730 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:30:13,895.895 INFO    ] No existing commands found in stream
[2026-10-28 14:30:18,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:30:18,912.912 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-28 14:30:19,662.662 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:30:19,665.665 INFO    ] Checking for system updates...
[2026-10-28 14:30:19,704.704 INFO    ] 200
[2026-10-28 14:30:19,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:30:19,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:30:19,768.768 INFO    ] No update needed
[2026-10-28 14:30:19,770.770 INFO    ] Checking for camera pi updates...
[2026-10-28 14:30:19,804.804 INFO    ] 200
[2026-10-28 14:30:19,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:30:19,853.853 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:30:19,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:30:19,935.935 INFO    ] No camera update needed
[2026-10-28 14:30:19,937.937 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:30:19,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:30:19,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:30:19,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:30:21,990.990 INFO    ] ================================================
[2026-10-28 14:30:22,005.005 INFO    ] Launching Daemon at Wed Oct 28 14:30:22 IST 2026
[2026-10-28 14:30:22,016.016 INFO    ] ================================================
[2026-10-28 14:30:22,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:30:22
[2026-10-28 14:30:23,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:30:23,428.428 INFO    ] Initializing speech engine...
[2026-10-28 14:30:23,434.434 INFO    ] 2026-10-28 14:30:23
[2026-10-28 14:30:23,731.731 INFO    ] 2026-10-28 14:30:23
[2026-10-28 14:30:23,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:30:24,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:30:24,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:30:24,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:30:24,373.373 INFO    ] time= 28/10/2026 14:30:24
[2026-10-28 14:30:24,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:30:24,403.403 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:30:24,516.516 INFO    ] No existing commands found in stream
[2026-10-28 14:30:29,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:30:29,544.544 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-28 14:30:31,351.351 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:30:31,354.354 INFO    ] Checking for system updates...
[2026-10-28 14:30:31,394.394 INFO    ] 200
[2026-10-28 14:30:31,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:30:31,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:30:31,469.469 INFO    ] No update needed
[2026-10-28 14:30:31,472.472 INFO    ] Checking for camera pi updates...
[2026-10-28 14:30:31,511.511 INFO    ] 200
[2026-10-28 14:30:31,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:30:31,561.561 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:30:31,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:30:31,649.649 INFO    ] No camera update needed
[2026-10-28 14:30:31,652.652 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:30:31,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:30:31,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:30:31,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:30:33,715.715 INFO    ] ================================================
[2026-10-28 14:30:33,730.730 INFO    ] Launching Daemon at Wed Oct 28 14:30:33 IST 2026
[2026-10-28 14:30:33,741.741 INFO    ] ================================================
[2026-10-28 14:30:34,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:30:34
[2026-10-28 14:30:34,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:30:35,210.210 INFO    ] Initializing speech engine...
[2026-10-28 14:30:35,226.226 INFO    ] 2026-10-28 14:30:35
[2026-10-28 14:30:35,516.516 INFO    ] 2026-10-28 14:30:35
[2026-10-28 14:30:35,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:30:35,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:30:35,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:30:36,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:30:36,151.151 INFO    ] time= 28/10/2026 14:30:36
[2026-10-28 14:30:36,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:30:36,177.177 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:30:36,309.309 INFO    ] No existing commands found in stream
[2026-10-28 14:30:41,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:30:41,342.342 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 14:30:42,901.901 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:30:42,903.903 INFO    ] Checking for system updates...
[2026-10-28 14:30:42,938.938 INFO    ] 200
[2026-10-28 14:30:42,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:30:42,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:30:42,996.996 INFO    ] No update needed
[2026-10-28 14:30:42,999.999 INFO    ] Checking for camera pi updates...
[2026-10-28 14:30:43,036.036 INFO    ] 200
[2026-10-28 14:30:43,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:30:43,078.078 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:30:43,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:30:43,170.170 INFO    ] No camera update needed
[2026-10-28 14:30:43,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:30:43,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:30:43,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:30:43,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:30:45,226.226 INFO    ] ================================================
[2026-10-28 14:30:45,241.241 INFO    ] Launching Daemon at Wed Oct 28 14:30:45 IST 2026
[2026-10-28 14:30:45,252.252 INFO    ] ================================================
[2026-10-28 14:30:45,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:30:45
[2026-10-28 14:30:46,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:30:46,682.682 INFO    ] Initializing speech engine...
[2026-10-28 14:30:46,689.689 INFO    ] 2026-10-28 14:30:46
[2026-10-28 14:30:46,985.985 INFO    ] 2026-10-28 14:30:46
[2026-10-28 14:30:47,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:30:47,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:30:47,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:30:47,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:30:47,613.613 INFO    ] time= 28/10/2026 14:30:47
[2026-10-28 14:30:47,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:30:47,636.636 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:30:47,806.806 INFO    ] No existing commands found in stream
[2026-10-28 14:30:52,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:30:52,824.824 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 14:30:55,835.835 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:30:55,838.838 INFO    ] Checking for system updates...
[2026-10-28 14:30:55,877.877 INFO    ] 200
[2026-10-28 14:30:55,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:30:55,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:30:55,938.938 INFO    ] No update needed
[2026-10-28 14:30:55,940.940 INFO    ] Checking for camera pi updates...
[2026-10-28 14:30:55,974.974 INFO    ] 200
[2026-10-28 14:30:55,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:30:56,021.021 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:30:56,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:30:56,104.104 INFO    ] No camera update needed
[2026-10-28 14:30:56,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:30:56,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:30:56,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:30:56,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:30:58,158.158 INFO    ] ================================================
[2026-10-28 14:30:58,173.173 INFO    ] Launching Daemon at Wed Oct 28 14:30:58 IST 2026
[2026-10-28 14:30:58,184.184 INFO    ] ================================================
[2026-10-28 14:30:58,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:30:58
[2026-10-28 14:30:59,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:30:59,586.586 INFO    ] Initializing speech engine...
[2026-10-28 14:30:59,593.593 INFO    ] 2026-10-28 14:30:59
[2026-10-28 14:30:59,893.893 INFO    ] 2026-10-28 14:30:59
[2026-10-28 14:30:59,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:31:00,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:31:00,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:31:00,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:31:00,520.520 INFO    ] time= 28/10/2026 14:31:00
[2026-10-28 14:31:00,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:31:00,556.556 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:31:00,670.670 INFO    ] No existing commands found in stream
[2026-10-28 14:31:05,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:31:05,706.706 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 14:31:09,784.784 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:31:09,787.787 INFO    ] Checking for system updates...
[2026-10-28 14:31:09,823.823 INFO    ] 200
[2026-10-28 14:31:09,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:31:09,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:31:09,880.880 INFO    ] No update needed
[2026-10-28 14:31:09,883.883 INFO    ] Checking for camera pi updates...
[2026-10-28 14:31:09,916.916 INFO    ] 200
[2026-10-28 14:31:09,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:31:09,959.959 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:31:10,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:31:10,044.044 INFO    ] No camera update needed
[2026-10-28 14:31:10,047.047 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:31:10,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:31:10,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:31:10,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:31:12,100.100 INFO    ] ================================================
[2026-10-28 14:31:12,115.115 INFO    ] Launching Daemon at Wed Oct 28 14:31:12 IST 2026
[2026-10-28 14:31:12,125.125 INFO    ] ================================================
[2026-10-28 14:31:12,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:31:12
[2026-10-28 14:31:13,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:31:13,556.556 INFO    ] Initializing speech engine...
[2026-10-28 14:31:13,560.560 INFO    ] 2026-10-28 14:31:13
[2026-10-28 14:31:13,820.820 INFO    ] 2026-10-28 14:31:13
[2026-10-28 14:31:13,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:31:14,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:31:14,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:31:14,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:31:14,370.370 INFO    ] time= 28/10/2026 14:31:14
[2026-10-28 14:31:14,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:31:14,416.416 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:31:14,587.587 INFO    ] No existing commands found in stream
[2026-10-28 14:31:19,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:31:19,620.620 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-28 14:31:23,906.906 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:31:23,908.908 INFO    ] Checking for system updates...
[2026-10-28 14:31:23,944.944 INFO    ] 200
[2026-10-28 14:31:23,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:31:24,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:31:24,008.008 INFO    ] No update needed
[2026-10-28 14:31:24,010.010 INFO    ] Checking for camera pi updates...
[2026-10-28 14:31:24,043.043 INFO    ] 200
[2026-10-28 14:31:24,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:31:24,091.091 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:31:24,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:31:24,190.190 INFO    ] No camera update needed
[2026-10-28 14:31:24,192.192 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:31:24,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:31:24,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:31:24,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:31:26,246.246 INFO    ] ================================================
[2026-10-28 14:31:26,261.261 INFO    ] Launching Daemon at Wed Oct 28 14:31:26 IST 2026
[2026-10-28 14:31:26,272.272 INFO    ] ================================================
[2026-10-28 14:31:26,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:31:26
[2026-10-28 14:31:27,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:31:27,739.739 INFO    ] Initializing speech engine...
[2026-10-28 14:31:27,746.746 INFO    ] 2026-10-28 14:31:27
[2026-10-28 14:31:28,007.007 INFO    ] 2026-10-28 14:31:28
[2026-10-28 14:31:28,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:31:28,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:31:28,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:31:28,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:31:28,704.704 INFO    ] time= 28/10/2026 14:31:28
[2026-10-28 14:31:28,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:31:28,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:31:28,947.947 INFO    ] No existing commands found in stream
[2026-10-28 14:31:33,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:31:33,967.967 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-28 14:31:37,861.861 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:31:37,864.864 INFO    ] Checking for system updates...
[2026-10-28 14:31:37,902.902 INFO    ] 200
[2026-10-28 14:31:37,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:31:37,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:31:37,969.969 INFO    ] No update needed
[2026-10-28 14:31:37,972.972 INFO    ] Checking for camera pi updates...
[2026-10-28 14:31:38,010.010 INFO    ] 200
[2026-10-28 14:31:38,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:31:38,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:31:38,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:31:38,141.141 INFO    ] No camera update needed
[2026-10-28 14:31:38,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:31:38,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:31:38,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:31:38,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:31:40,195.195 INFO    ] ================================================
[2026-10-28 14:31:40,211.211 INFO    ] Launching Daemon at Wed Oct 28 14:31:40 IST 2026
[2026-10-28 14:31:40,223.223 INFO    ] ================================================
[2026-10-28 14:31:40,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:31:40
[2026-10-28 14:31:41,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:31:41,675.675 INFO    ] Initializing speech engine...
[2026-10-28 14:31:41,684.684 INFO    ] 2026-10-28 14:31:41
[2026-10-28 14:31:41,933.933 INFO    ] 2026-10-28 14:31:41
[2026-10-28 14:31:41,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:31:42,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:31:42,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:31:42,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:31:42,490.490 INFO    ] time= 28/10/2026 14:31:42
[2026-10-28 14:31:42,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:31:42,538.538 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:31:42,713.713 INFO    ] No existing commands found in stream
[2026-10-28 14:31:47,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:31:47,752.752 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 14:31:53,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:31:53,207.207 INFO    ] Checking for system updates...
[2026-10-28 14:31:53,247.247 INFO    ] 200
[2026-10-28 14:31:53,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:31:53,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:31:53,316.316 INFO    ] No update needed
[2026-10-28 14:31:53,318.318 INFO    ] Checking for camera pi updates...
[2026-10-28 14:31:53,355.355 INFO    ] 200
[2026-10-28 14:31:53,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:31:53,413.413 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:31:53,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:31:53,593.593 INFO    ] No camera update needed
[2026-10-28 14:31:53,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:31:53,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:31:53,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:31:53,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:31:55,650.650 INFO    ] ================================================
[2026-10-28 14:31:55,666.666 INFO    ] Launching Daemon at Wed Oct 28 14:31:55 IST 2026
[2026-10-28 14:31:55,677.677 INFO    ] ================================================
[2026-10-28 14:31:56,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:31:56
[2026-10-28 14:31:56,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:31:57,140.140 INFO    ] Initializing speech engine...
[2026-10-28 14:31:57,147.147 INFO    ] 2026-10-28 14:31:57
[2026-10-28 14:31:57,410.410 INFO    ] 2026-10-28 14:31:57
[2026-10-28 14:31:57,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:31:57,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:31:57,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:31:58,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:31:58,187.187 INFO    ] time= 28/10/2026 14:31:58
[2026-10-28 14:31:58,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:31:58,271.271 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:31:58,412.412 INFO    ] No existing commands found in stream
[2026-10-28 14:32:03,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:32:03,425.425 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-28 14:32:05,745.745 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:32:05,747.747 INFO    ] Checking for system updates...
[2026-10-28 14:32:05,787.787 INFO    ] 200
[2026-10-28 14:32:05,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:32:05,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:32:05,850.850 INFO    ] No update needed
[2026-10-28 14:32:05,853.853 INFO    ] Checking for camera pi updates...
[2026-10-28 14:32:05,887.887 INFO    ] 200
[2026-10-28 14:32:05,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:32:05,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:32:06,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:32:06,019.019 INFO    ] No camera update needed
[2026-10-28 14:32:06,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:32:06,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:32:06,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:32:06,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:32:08,076.076 INFO    ] ================================================
[2026-10-28 14:32:08,092.092 INFO    ] Launching Daemon at Wed Oct 28 14:32:08 IST 2026
[2026-10-28 14:32:08,107.107 INFO    ] ================================================
[2026-10-28 14:32:08,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:32:08
[2026-10-28 14:32:09,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:32:09,633.633 INFO    ] Initializing speech engine...
[2026-10-28 14:32:09,646.646 INFO    ] 2026-10-28 14:32:09
[2026-10-28 14:32:09,932.932 INFO    ] 2026-10-28 14:32:09
[2026-10-28 14:32:09,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:32:10,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:32:10,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:32:10,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:32:10,704.704 INFO    ] time= 28/10/2026 14:32:10
[2026-10-28 14:32:10,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:32:10,805.805 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:32:11,018.018 INFO    ] No existing commands found in stream
[2026-10-28 14:32:16,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:32:16,047.047 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 14:32:18,907.907 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:32:18,910.910 INFO    ] Checking for system updates...
[2026-10-28 14:32:18,947.947 INFO    ] 200
[2026-10-28 14:32:18,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:32:19,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:32:19,005.005 INFO    ] No update needed
[2026-10-28 14:32:19,008.008 INFO    ] Checking for camera pi updates...
[2026-10-28 14:32:19,045.045 INFO    ] 200
[2026-10-28 14:32:19,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:32:19,093.093 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:32:19,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:32:19,187.187 INFO    ] No camera update needed
[2026-10-28 14:32:19,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:32:19,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:32:19,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:32:19,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:32:21,244.244 INFO    ] ================================================
[2026-10-28 14:32:21,259.259 INFO    ] Launching Daemon at Wed Oct 28 14:32:21 IST 2026
[2026-10-28 14:32:21,271.271 INFO    ] ================================================
[2026-10-28 14:32:21,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:32:21
[2026-10-28 14:32:22,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:32:22,743.743 INFO    ] Initializing speech engine...
[2026-10-28 14:32:22,754.754 INFO    ] 2026-10-28 14:32:22
[2026-10-28 14:32:23,000.000 INFO    ] 2026-10-28 14:32:22
[2026-10-28 14:32:23,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:32:23,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:32:23,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:32:23,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:32:23,770.770 INFO    ] time= 28/10/2026 14:32:23
[2026-10-28 14:32:23,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:32:23,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:32:23,994.994 INFO    ] No existing commands found in stream
[2026-10-28 14:32:29,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:32:29,015.015 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 14:32:32,943.943 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:32:32,946.946 INFO    ] Checking for system updates...
[2026-10-28 14:32:32,988.988 INFO    ] 200
[2026-10-28 14:32:32,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:32:33,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:32:33,047.047 INFO    ] No update needed
[2026-10-28 14:32:33,050.050 INFO    ] Checking for camera pi updates...
[2026-10-28 14:32:33,089.089 INFO    ] 200
[2026-10-28 14:32:33,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:32:33,135.135 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:32:33,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:32:33,220.220 INFO    ] No camera update needed
[2026-10-28 14:32:33,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:32:33,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:32:33,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:32:33,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:32:35,284.284 INFO    ] ================================================
[2026-10-28 14:32:35,301.301 INFO    ] Launching Daemon at Wed Oct 28 14:32:35 IST 2026
[2026-10-28 14:32:35,313.313 INFO    ] ================================================
[2026-10-28 14:32:35,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:32:35
[2026-10-28 14:32:36,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:32:36,750.750 INFO    ] Initializing speech engine...
[2026-10-28 14:32:36,759.759 INFO    ] 2026-10-28 14:32:36
[2026-10-28 14:32:37,010.010 INFO    ] 2026-10-28 14:32:37
[2026-10-28 14:32:37,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:32:37,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:32:37,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:32:37,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:32:37,580.580 INFO    ] time= 28/10/2026 14:32:37
[2026-10-28 14:32:37,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:32:37,615.615 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:32:37,776.776 INFO    ] No existing commands found in stream
[2026-10-28 14:32:42,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:32:42,809.809 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-28 14:32:44,502.502 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:32:44,505.505 INFO    ] Checking for system updates...
[2026-10-28 14:32:44,545.545 INFO    ] 200
[2026-10-28 14:32:44,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:32:44,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:32:44,603.603 INFO    ] No update needed
[2026-10-28 14:32:44,606.606 INFO    ] Checking for camera pi updates...
[2026-10-28 14:32:44,640.640 INFO    ] 200
[2026-10-28 14:32:44,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:32:44,683.683 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:32:44,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:32:44,785.785 INFO    ] No camera update needed
[2026-10-28 14:32:44,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:32:44,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:32:44,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:32:44,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:32:46,844.844 INFO    ] ================================================
[2026-10-28 14:32:46,860.860 INFO    ] Launching Daemon at Wed Oct 28 14:32:46 IST 2026
[2026-10-28 14:32:46,876.876 INFO    ] ================================================
[2026-10-28 14:32:47,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:32:47
[2026-10-28 14:32:48,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:32:48,452.452 INFO    ] Initializing speech engine...
[2026-10-28 14:32:48,461.461 INFO    ] 2026-10-28 14:32:48
[2026-10-28 14:32:48,717.717 INFO    ] 2026-10-28 14:32:48
[2026-10-28 14:32:48,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:32:49,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:32:49,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:32:49,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:32:49,317.317 INFO    ] time= 28/10/2026 14:32:49
[2026-10-28 14:32:49,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:32:49,385.385 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:32:49,520.520 INFO    ] No existing commands found in stream
[2026-10-28 14:32:54,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:32:54,542.542 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-28 14:32:55,866.866 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:32:55,869.869 INFO    ] Checking for system updates...
[2026-10-28 14:32:55,909.909 INFO    ] 200
[2026-10-28 14:32:55,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:32:55,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:32:55,974.974 INFO    ] No update needed
[2026-10-28 14:32:55,977.977 INFO    ] Checking for camera pi updates...
[2026-10-28 14:32:56,011.011 INFO    ] 200
[2026-10-28 14:32:56,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:32:56,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:32:56,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:32:56,140.140 INFO    ] No camera update needed
[2026-10-28 14:32:56,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:32:56,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:32:56,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:32:56,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:32:58,195.195 INFO    ] ================================================
[2026-10-28 14:32:58,211.211 INFO    ] Launching Daemon at Wed Oct 28 14:32:58 IST 2026
[2026-10-28 14:32:58,222.222 INFO    ] ================================================
[2026-10-28 14:32:58,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:32:58
[2026-10-28 14:32:59,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:32:59,677.677 INFO    ] Initializing speech engine...
[2026-10-28 14:32:59,686.686 INFO    ] 2026-10-28 14:32:59
[2026-10-28 14:32:59,945.945 INFO    ] 2026-10-28 14:32:59
[2026-10-28 14:32:59,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:33:00,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:33:00,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:33:00,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:33:00,530.530 INFO    ] time= 28/10/2026 14:33:00
[2026-10-28 14:33:00,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:33:00,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:33:00,660.660 INFO    ] No existing commands found in stream
[2026-10-28 14:33:05,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:33:05,693.693 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 14:33:09,744.744 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:33:09,746.746 INFO    ] Checking for system updates...
[2026-10-28 14:33:09,782.782 INFO    ] 200
[2026-10-28 14:33:09,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:33:09,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:33:09,845.845 INFO    ] No update needed
[2026-10-28 14:33:09,847.847 INFO    ] Checking for camera pi updates...
[2026-10-28 14:33:09,885.885 INFO    ] 200
[2026-10-28 14:33:09,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:33:09,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:33:10,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:33:10,014.014 INFO    ] No camera update needed
[2026-10-28 14:33:10,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:33:10,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:33:10,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:33:10,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:33:12,073.073 INFO    ] ================================================
[2026-10-28 14:33:12,088.088 INFO    ] Launching Daemon at Wed Oct 28 14:33:12 IST 2026
[2026-10-28 14:33:12,098.098 INFO    ] ================================================
[2026-10-28 14:33:12,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:33:12
[2026-10-28 14:33:13,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:33:13,542.542 INFO    ] Initializing speech engine...
[2026-10-28 14:33:13,552.552 INFO    ] 2026-10-28 14:33:13
[2026-10-28 14:33:13,819.819 INFO    ] 2026-10-28 14:33:13
[2026-10-28 14:33:13,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:33:14,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:33:14,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:33:14,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:33:14,430.430 INFO    ] time= 28/10/2026 14:33:14
[2026-10-28 14:33:14,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:33:14,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:33:14,619.619 INFO    ] No existing commands found in stream
[2026-10-28 14:33:19,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:33:19,638.638 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-28 14:33:20,434.434 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:33:20,437.437 INFO    ] Checking for system updates...
[2026-10-28 14:33:20,472.472 INFO    ] 200
[2026-10-28 14:33:20,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:33:20,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:33:20,536.536 INFO    ] No update needed
[2026-10-28 14:33:20,538.538 INFO    ] Checking for camera pi updates...
[2026-10-28 14:33:20,574.574 INFO    ] 200
[2026-10-28 14:33:20,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:33:20,621.621 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:33:20,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:33:20,700.700 INFO    ] No camera update needed
[2026-10-28 14:33:20,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:33:20,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:33:20,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:33:20,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:33:22,756.756 INFO    ] ================================================
[2026-10-28 14:33:22,772.772 INFO    ] Launching Daemon at Wed Oct 28 14:33:22 IST 2026
[2026-10-28 14:33:22,782.782 INFO    ] ================================================
[2026-10-28 14:33:23,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:33:23
[2026-10-28 14:33:23,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:33:24,210.210 INFO    ] Initializing speech engine...
[2026-10-28 14:33:24,228.228 INFO    ] 2026-10-28 14:33:24
[2026-10-28 14:33:24,496.496 INFO    ] 2026-10-28 14:33:24
[2026-10-28 14:33:24,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:33:24,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:33:24,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:33:25,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:33:25,122.122 INFO    ] time= 28/10/2026 14:33:25
[2026-10-28 14:33:25,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:33:25,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:33:25,323.323 INFO    ] No existing commands found in stream
[2026-10-28 14:33:30,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:33:30,356.356 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-28 14:33:31,891.891 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:33:31,894.894 INFO    ] Checking for system updates...
[2026-10-28 14:33:31,932.932 INFO    ] 200
[2026-10-28 14:33:31,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:33:31,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:33:31,996.996 INFO    ] No update needed
[2026-10-28 14:33:31,999.999 INFO    ] Checking for camera pi updates...
[2026-10-28 14:33:32,034.034 INFO    ] 200
[2026-10-28 14:33:32,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:33:32,086.086 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:33:32,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:33:32,214.214 INFO    ] No camera update needed
[2026-10-28 14:33:32,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:33:32,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:33:32,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:33:32,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:33:34,272.272 INFO    ] ================================================
[2026-10-28 14:33:34,288.288 INFO    ] Launching Daemon at Wed Oct 28 14:33:34 IST 2026
[2026-10-28 14:33:34,300.300 INFO    ] ================================================
[2026-10-28 14:33:34,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:33:34
[2026-10-28 14:33:35,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:33:35,948.948 INFO    ] Initializing speech engine...
[2026-10-28 14:33:35,960.960 INFO    ] 2026-10-28 14:33:35
[2026-10-28 14:33:36,274.274 INFO    ] 2026-10-28 14:33:36
[2026-10-28 14:33:36,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:33:36,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:33:36,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:33:36,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:33:37,014.014 INFO    ] time= 28/10/2026 14:33:36
[2026-10-28 14:33:37,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:33:37,098.098 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:33:37,209.209 INFO    ] No existing commands found in stream
[2026-10-28 14:33:42,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:33:42,231.231 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 14:33:44,661.661 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:33:44,664.664 INFO    ] Checking for system updates...
[2026-10-28 14:33:44,705.705 INFO    ] 200
[2026-10-28 14:33:44,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:33:44,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:33:44,776.776 INFO    ] No update needed
[2026-10-28 14:33:44,779.779 INFO    ] Checking for camera pi updates...
[2026-10-28 14:33:44,818.818 INFO    ] 200
[2026-10-28 14:33:44,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:33:44,872.872 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:33:44,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:33:44,956.956 INFO    ] No camera update needed
[2026-10-28 14:33:44,959.959 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:33:44,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:33:44,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:33:44,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:33:47,016.016 INFO    ] ================================================
[2026-10-28 14:33:47,032.032 INFO    ] Launching Daemon at Wed Oct 28 14:33:47 IST 2026
[2026-10-28 14:33:47,044.044 INFO    ] ================================================
[2026-10-28 14:33:47,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:33:47
[2026-10-28 14:33:48,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:33:48,698.698 INFO    ] Initializing speech engine...
[2026-10-28 14:33:48,710.710 INFO    ] 2026-10-28 14:33:48
[2026-10-28 14:33:49,022.022 INFO    ] 2026-10-28 14:33:48
[2026-10-28 14:33:49,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:33:49,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:33:49,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:33:49,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:33:49,751.751 INFO    ] time= 28/10/2026 14:33:49
[2026-10-28 14:33:49,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:33:49,850.850 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:33:49,977.977 INFO    ] No existing commands found in stream
[2026-10-28 14:33:54,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:33:54,991.991 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-28 14:33:59,073.073 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:33:59,077.077 INFO    ] Checking for system updates...
[2026-10-28 14:33:59,114.114 INFO    ] 200
[2026-10-28 14:33:59,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:33:59,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:33:59,174.174 INFO    ] No update needed
[2026-10-28 14:33:59,177.177 INFO    ] Checking for camera pi updates...
[2026-10-28 14:33:59,217.217 INFO    ] 200
[2026-10-28 14:33:59,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:33:59,270.270 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:33:59,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:33:59,453.453 INFO    ] No camera update needed
[2026-10-28 14:33:59,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:33:59,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:33:59,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:33:59,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:34:01,517.517 INFO    ] ================================================
[2026-10-28 14:34:01,535.535 INFO    ] Launching Daemon at Wed Oct 28 14:34:01 IST 2026
[2026-10-28 14:34:01,551.551 INFO    ] ================================================
[2026-10-28 14:34:02,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:34:02
[2026-10-28 14:34:02,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:34:03,127.127 INFO    ] Initializing speech engine...
[2026-10-28 14:34:03,138.138 INFO    ] 2026-10-28 14:34:03
[2026-10-28 14:34:03,424.424 INFO    ] 2026-10-28 14:34:03
[2026-10-28 14:34:03,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:34:03,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:34:03,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:34:03,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:34:03,978.978 INFO    ] time= 28/10/2026 14:34:03
[2026-10-28 14:34:03,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:34:04,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:34:04,144.144 INFO    ] No existing commands found in stream
[2026-10-28 14:34:09,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:34:09,177.177 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-28 14:34:13,589.589 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:34:13,592.592 INFO    ] Checking for system updates...
[2026-10-28 14:34:13,628.628 INFO    ] 200
[2026-10-28 14:34:13,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:34:13,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:34:13,685.685 INFO    ] No update needed
[2026-10-28 14:34:13,687.687 INFO    ] Checking for camera pi updates...
[2026-10-28 14:34:13,725.725 INFO    ] 200
[2026-10-28 14:34:13,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:34:13,768.768 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:34:13,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:34:13,858.858 INFO    ] No camera update needed
[2026-10-28 14:34:13,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:34:13,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:34:13,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:34:13,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:34:15,915.915 INFO    ] ================================================
[2026-10-28 14:34:15,931.931 INFO    ] Launching Daemon at Wed Oct 28 14:34:15 IST 2026
[2026-10-28 14:34:15,942.942 INFO    ] ================================================
[2026-10-28 14:34:16,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:34:16
[2026-10-28 14:34:17,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:34:17,544.544 INFO    ] Initializing speech engine...
[2026-10-28 14:34:17,551.551 INFO    ] 2026-10-28 14:34:17
[2026-10-28 14:34:17,821.821 INFO    ] 2026-10-28 14:34:17
[2026-10-28 14:34:17,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:34:18,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:34:18,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:34:18,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:34:18,550.550 INFO    ] time= 28/10/2026 14:34:18
[2026-10-28 14:34:18,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:34:18,633.633 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:34:18,797.797 INFO    ] No existing commands found in stream
[2026-10-28 14:34:23,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:34:23,827.827 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 14:34:27,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:34:27,665.665 INFO    ] Checking for system updates...
[2026-10-28 14:34:27,703.703 INFO    ] 200
[2026-10-28 14:34:27,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:34:27,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:34:27,761.761 INFO    ] No update needed
[2026-10-28 14:34:27,764.764 INFO    ] Checking for camera pi updates...
[2026-10-28 14:34:27,799.799 INFO    ] 200
[2026-10-28 14:34:27,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:34:27,846.846 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:34:27,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:34:27,922.922 INFO    ] No camera update needed
[2026-10-28 14:34:27,925.925 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:34:27,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:34:27,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:34:27,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:34:29,978.978 INFO    ] ================================================
[2026-10-28 14:34:29,993.993 INFO    ] Launching Daemon at Wed Oct 28 14:34:29 IST 2026
[2026-10-28 14:34:30,004.004 INFO    ] ================================================
[2026-10-28 14:34:30,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:34:30
[2026-10-28 14:34:31,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:34:31,460.460 INFO    ] Initializing speech engine...
[2026-10-28 14:34:31,471.471 INFO    ] 2026-10-28 14:34:31
[2026-10-28 14:34:31,739.739 INFO    ] 2026-10-28 14:34:31
[2026-10-28 14:34:31,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:34:32,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:34:32,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:34:32,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:34:32,331.331 INFO    ] time= 28/10/2026 14:34:32
[2026-10-28 14:34:32,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:34:32,345.345 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:34:32,498.498 INFO    ] No existing commands found in stream
[2026-10-28 14:34:37,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:34:37,522.522 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-28 14:34:38,831.831 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:34:38,834.834 INFO    ] Checking for system updates...
[2026-10-28 14:34:38,869.869 INFO    ] 200
[2026-10-28 14:34:38,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:34:38,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:34:38,932.932 INFO    ] No update needed
[2026-10-28 14:34:38,934.934 INFO    ] Checking for camera pi updates...
[2026-10-28 14:34:38,968.968 INFO    ] 200
[2026-10-28 14:34:38,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:34:39,010.010 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:34:39,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:34:39,095.095 INFO    ] No camera update needed
[2026-10-28 14:34:39,097.097 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:34:39,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:34:39,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:34:39,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:34:41,151.151 INFO    ] ================================================
[2026-10-28 14:34:41,166.166 INFO    ] Launching Daemon at Wed Oct 28 14:34:41 IST 2026
[2026-10-28 14:34:41,177.177 INFO    ] ================================================
[2026-10-28 14:34:41,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:34:41
[2026-10-28 14:34:42,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:34:42,573.573 INFO    ] Initializing speech engine...
[2026-10-28 14:34:42,587.587 INFO    ] 2026-10-28 14:34:42
[2026-10-28 14:34:42,851.851 INFO    ] 2026-10-28 14:34:42
[2026-10-28 14:34:42,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:34:43,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:34:43,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:34:43,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:34:43,420.420 INFO    ] time= 28/10/2026 14:34:43
[2026-10-28 14:34:43,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:34:43,466.466 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:34:43,577.577 INFO    ] No existing commands found in stream
[2026-10-28 14:34:48,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:34:48,599.599 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 14:34:52,033.033 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:34:52,036.036 INFO    ] Checking for system updates...
[2026-10-28 14:34:52,075.075 INFO    ] 200
[2026-10-28 14:34:52,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:34:52,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:34:52,137.137 INFO    ] No update needed
[2026-10-28 14:34:52,140.140 INFO    ] Checking for camera pi updates...
[2026-10-28 14:34:52,173.173 INFO    ] 200
[2026-10-28 14:34:52,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:34:52,220.220 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:34:52,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:34:52,326.326 INFO    ] No camera update needed
[2026-10-28 14:34:52,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:34:52,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:34:52,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:34:52,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:34:54,383.383 INFO    ] ================================================
[2026-10-28 14:34:54,399.399 INFO    ] Launching Daemon at Wed Oct 28 14:34:54 IST 2026
[2026-10-28 14:34:54,410.410 INFO    ] ================================================
[2026-10-28 14:34:54,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:34:54
[2026-10-28 14:34:55,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:34:55,823.823 INFO    ] Initializing speech engine...
[2026-10-28 14:34:55,837.837 INFO    ] 2026-10-28 14:34:55
[2026-10-28 14:34:56,092.092 INFO    ] 2026-10-28 14:34:56
[2026-10-28 14:34:56,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:34:56,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:34:56,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:34:56,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:34:56,675.675 INFO    ] time= 28/10/2026 14:34:56
[2026-10-28 14:34:56,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:34:56,711.711 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:34:56,822.822 INFO    ] No existing commands found in stream
[2026-10-28 14:35:01,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:35:01,845.845 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-28 14:35:03,844.844 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:35:03,847.847 INFO    ] Checking for system updates...
[2026-10-28 14:35:03,882.882 INFO    ] 200
[2026-10-28 14:35:03,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:35:03,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:35:03,947.947 INFO    ] No update needed
[2026-10-28 14:35:03,950.950 INFO    ] Checking for camera pi updates...
[2026-10-28 14:35:03,983.983 INFO    ] 200
[2026-10-28 14:35:03,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:35:04,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:35:04,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:35:04,115.115 INFO    ] No camera update needed
[2026-10-28 14:35:04,117.117 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:35:04,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:35:04,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:35:04,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:35:06,172.172 INFO    ] ================================================
[2026-10-28 14:35:06,188.188 INFO    ] Launching Daemon at Wed Oct 28 14:35:06 IST 2026
[2026-10-28 14:35:06,199.199 INFO    ] ================================================
[2026-10-28 14:35:06,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:35:06
[2026-10-28 14:35:07,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:35:07,600.600 INFO    ] Initializing speech engine...
[2026-10-28 14:35:07,606.606 INFO    ] 2026-10-28 14:35:07
[2026-10-28 14:35:07,909.909 INFO    ] 2026-10-28 14:35:07
[2026-10-28 14:35:07,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:35:08,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:35:08,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:35:08,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:35:08,511.511 INFO    ] time= 28/10/2026 14:35:08
[2026-10-28 14:35:08,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:35:08,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:35:08,701.701 INFO    ] No existing commands found in stream
[2026-10-28 14:35:13,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:35:13,729.729 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-28 14:35:15,725.725 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:35:15,728.728 INFO    ] Checking for system updates...
[2026-10-28 14:35:15,764.764 INFO    ] 200
[2026-10-28 14:35:15,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:35:15,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:35:15,822.822 INFO    ] No update needed
[2026-10-28 14:35:15,825.825 INFO    ] Checking for camera pi updates...
[2026-10-28 14:35:15,862.862 INFO    ] 200
[2026-10-28 14:35:15,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:35:15,910.910 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:35:15,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:35:15,992.992 INFO    ] No camera update needed
[2026-10-28 14:35:15,995.995 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:35:15,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:35:16,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:35:16,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:35:18,047.047 INFO    ] ================================================
[2026-10-28 14:35:18,062.062 INFO    ] Launching Daemon at Wed Oct 28 14:35:18 IST 2026
[2026-10-28 14:35:18,073.073 INFO    ] ================================================
[2026-10-28 14:35:18,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:35:18
[2026-10-28 14:35:19,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:35:19,734.734 INFO    ] Initializing speech engine...
[2026-10-28 14:35:19,746.746 INFO    ] 2026-10-28 14:35:19
[2026-10-28 14:35:20,033.033 INFO    ] 2026-10-28 14:35:20
[2026-10-28 14:35:20,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:35:20,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:35:20,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:35:20,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:35:20,745.745 INFO    ] time= 28/10/2026 14:35:20
[2026-10-28 14:35:20,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:35:20,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:35:20,996.996 INFO    ] No existing commands found in stream
[2026-10-28 14:35:26,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:35:26,020.020 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-28 14:35:28,022.022 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:35:28,025.025 INFO    ] Checking for system updates...
[2026-10-28 14:35:28,067.067 INFO    ] 200
[2026-10-28 14:35:28,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:35:28,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:35:28,127.127 INFO    ] No update needed
[2026-10-28 14:35:28,130.130 INFO    ] Checking for camera pi updates...
[2026-10-28 14:35:28,164.164 INFO    ] 200
[2026-10-28 14:35:28,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:35:28,210.210 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:35:28,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:35:28,296.296 INFO    ] No camera update needed
[2026-10-28 14:35:28,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:35:28,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:35:28,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:35:28,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:35:30,354.354 INFO    ] ================================================
[2026-10-28 14:35:30,369.369 INFO    ] Launching Daemon at Wed Oct 28 14:35:30 IST 2026
[2026-10-28 14:35:30,380.380 INFO    ] ================================================
[2026-10-28 14:35:30,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:35:30
[2026-10-28 14:35:31,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:35:32,027.027 INFO    ] Initializing speech engine...
[2026-10-28 14:35:32,034.034 INFO    ] 2026-10-28 14:35:32
[2026-10-28 14:35:32,367.367 INFO    ] 2026-10-28 14:35:32
[2026-10-28 14:35:32,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:35:32,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:35:32,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:35:32,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:35:32,948.948 INFO    ] time= 28/10/2026 14:35:32
[2026-10-28 14:35:32,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:35:32,969.969 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:35:33,104.104 INFO    ] No existing commands found in stream
[2026-10-28 14:35:38,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:35:38,129.129 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 14:35:42,787.787 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:35:42,790.790 INFO    ] Checking for system updates...
[2026-10-28 14:35:42,825.825 INFO    ] 200
[2026-10-28 14:35:42,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:35:42,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:35:42,882.882 INFO    ] No update needed
[2026-10-28 14:35:42,884.884 INFO    ] Checking for camera pi updates...
[2026-10-28 14:35:42,922.922 INFO    ] 200
[2026-10-28 14:35:42,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:35:42,971.971 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:35:43,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:35:43,063.063 INFO    ] No camera update needed
[2026-10-28 14:35:43,066.066 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:35:43,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:35:43,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:35:43,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:35:45,117.117 INFO    ] ================================================
[2026-10-28 14:35:45,132.132 INFO    ] Launching Daemon at Wed Oct 28 14:35:45 IST 2026
[2026-10-28 14:35:45,143.143 INFO    ] ================================================
[2026-10-28 14:35:45,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:35:45
[2026-10-28 14:35:46,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:35:46,796.796 INFO    ] Initializing speech engine...
[2026-10-28 14:35:46,801.801 INFO    ] 2026-10-28 14:35:46
[2026-10-28 14:35:47,078.078 INFO    ] 2026-10-28 14:35:47
[2026-10-28 14:35:47,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:35:47,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:35:47,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:35:47,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:35:47,659.659 INFO    ] time= 28/10/2026 14:35:47
[2026-10-28 14:35:47,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:35:47,699.699 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:35:47,864.864 INFO    ] No existing commands found in stream
[2026-10-28 14:35:52,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:35:52,898.898 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 14:35:54,121.121 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:35:54,124.124 INFO    ] Checking for system updates...
[2026-10-28 14:35:54,162.162 INFO    ] 200
[2026-10-28 14:35:54,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:35:54,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:35:54,222.222 INFO    ] No update needed
[2026-10-28 14:35:54,225.225 INFO    ] Checking for camera pi updates...
[2026-10-28 14:35:54,265.265 INFO    ] 200
[2026-10-28 14:35:54,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:35:54,315.315 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:35:54,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:35:54,404.404 INFO    ] No camera update needed
[2026-10-28 14:35:54,406.406 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:35:54,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:35:54,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:35:54,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:35:56,462.462 INFO    ] ================================================
[2026-10-28 14:35:56,477.477 INFO    ] Launching Daemon at Wed Oct 28 14:35:56 IST 2026
[2026-10-28 14:35:56,487.487 INFO    ] ================================================
[2026-10-28 14:35:57,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:35:57
[2026-10-28 14:35:57,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:35:57,891.891 INFO    ] Initializing speech engine...
[2026-10-28 14:35:57,900.900 INFO    ] 2026-10-28 14:35:57
[2026-10-28 14:35:58,196.196 INFO    ] 2026-10-28 14:35:58
[2026-10-28 14:35:58,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:35:58,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:35:58,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:35:58,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:35:58,787.787 INFO    ] time= 28/10/2026 14:35:58
[2026-10-28 14:35:58,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:35:58,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:35:59,010.010 INFO    ] No existing commands found in stream
[2026-10-28 14:36:04,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:36:04,027.027 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-28 14:36:06,943.943 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:36:06,946.946 INFO    ] Checking for system updates...
[2026-10-28 14:36:06,981.981 INFO    ] 200
[2026-10-28 14:36:06,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:36:07,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:36:07,038.038 INFO    ] No update needed
[2026-10-28 14:36:07,041.041 INFO    ] Checking for camera pi updates...
[2026-10-28 14:36:07,079.079 INFO    ] 200
[2026-10-28 14:36:07,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:36:07,122.122 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:36:07,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:36:07,191.191 INFO    ] No camera update needed
[2026-10-28 14:36:07,194.194 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:36:07,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:36:07,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:36:07,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:36:09,246.246 INFO    ] ================================================
[2026-10-28 14:36:09,260.260 INFO    ] Launching Daemon at Wed Oct 28 14:36:09 IST 2026
[2026-10-28 14:36:09,271.271 INFO    ] ================================================
[2026-10-28 14:36:09,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:36:09
[2026-10-28 14:36:10,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:36:10,705.705 INFO    ] Initializing speech engine...
[2026-10-28 14:36:10,714.714 INFO    ] 2026-10-28 14:36:10
[2026-10-28 14:36:10,962.962 INFO    ] 2026-10-28 14:36:10
[2026-10-28 14:36:10,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:36:11,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:36:11,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:36:11,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:36:11,723.723 INFO    ] time= 28/10/2026 14:36:11
[2026-10-28 14:36:11,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:36:11,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:36:11,949.949 INFO    ] No existing commands found in stream
[2026-10-28 14:36:16,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:36:16,961.961 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 14:36:17,789.789 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:36:17,792.792 INFO    ] Checking for system updates...
[2026-10-28 14:36:17,827.827 INFO    ] 200
[2026-10-28 14:36:17,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:36:17,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:36:17,892.892 INFO    ] No update needed
[2026-10-28 14:36:17,895.895 INFO    ] Checking for camera pi updates...
[2026-10-28 14:36:17,933.933 INFO    ] 200
[2026-10-28 14:36:17,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:36:17,980.980 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:36:18,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:36:18,065.065 INFO    ] No camera update needed
[2026-10-28 14:36:18,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:36:18,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:36:18,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:36:18,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:36:20,125.125 INFO    ] ================================================
[2026-10-28 14:36:20,141.141 INFO    ] Launching Daemon at Wed Oct 28 14:36:20 IST 2026
[2026-10-28 14:36:20,152.152 INFO    ] ================================================
[2026-10-28 14:36:20,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:36:20
[2026-10-28 14:36:21,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:36:21,683.683 INFO    ] Initializing speech engine...
[2026-10-28 14:36:21,706.706 INFO    ] 2026-10-28 14:36:21
[2026-10-28 14:36:21,966.966 INFO    ] 2026-10-28 14:36:21
[2026-10-28 14:36:22,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:36:22,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:36:22,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:36:22,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:36:22,542.542 INFO    ] time= 28/10/2026 14:36:22
[2026-10-28 14:36:22,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:36:22,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:36:22,699.699 INFO    ] No existing commands found in stream
[2026-10-28 14:36:27,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:36:27,712.712 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-28 14:36:31,999.999 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:36:32,002.002 INFO    ] Checking for system updates...
[2026-10-28 14:36:32,045.045 INFO    ] 200
[2026-10-28 14:36:32,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:36:32,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:36:32,117.117 INFO    ] No update needed
[2026-10-28 14:36:32,120.120 INFO    ] Checking for camera pi updates...
[2026-10-28 14:36:32,160.160 INFO    ] 200
[2026-10-28 14:36:32,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:36:32,207.207 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:36:32,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:36:32,333.333 INFO    ] No camera update needed
[2026-10-28 14:36:32,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:36:32,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:36:32,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:36:32,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:36:34,394.394 INFO    ] ================================================
[2026-10-28 14:36:34,410.410 INFO    ] Launching Daemon at Wed Oct 28 14:36:34 IST 2026
[2026-10-28 14:36:34,421.421 INFO    ] ================================================
[2026-10-28 14:36:34,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:36:34
[2026-10-28 14:36:35,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:36:35,842.842 INFO    ] Initializing speech engine...
[2026-10-28 14:36:35,861.861 INFO    ] 2026-10-28 14:36:35
[2026-10-28 14:36:36,112.112 INFO    ] 2026-10-28 14:36:36
[2026-10-28 14:36:36,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:36:36,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:36:36,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:36:36,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:36:36,684.684 INFO    ] time= 28/10/2026 14:36:36
[2026-10-28 14:36:36,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:36:36,730.730 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:36:36,886.886 INFO    ] No existing commands found in stream
[2026-10-28 14:36:41,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:36:41,919.919 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-28 14:36:44,674.674 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:36:44,676.676 INFO    ] Checking for system updates...
[2026-10-28 14:36:44,712.712 INFO    ] 200
[2026-10-28 14:36:44,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:36:44,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:36:44,772.772 INFO    ] No update needed
[2026-10-28 14:36:44,775.775 INFO    ] Checking for camera pi updates...
[2026-10-28 14:36:44,808.808 INFO    ] 200
[2026-10-28 14:36:44,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:36:44,852.852 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:36:44,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:36:44,942.942 INFO    ] No camera update needed
[2026-10-28 14:36:44,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:36:44,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:36:44,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:36:44,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:36:47,000.000 INFO    ] ================================================
[2026-10-28 14:36:47,016.016 INFO    ] Launching Daemon at Wed Oct 28 14:36:47 IST 2026
[2026-10-28 14:36:47,027.027 INFO    ] ================================================
[2026-10-28 14:36:47,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:36:47
[2026-10-28 14:36:48,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:36:48,482.482 INFO    ] Initializing speech engine...
[2026-10-28 14:36:48,493.493 INFO    ] 2026-10-28 14:36:48
[2026-10-28 14:36:48,740.740 INFO    ] 2026-10-28 14:36:48
[2026-10-28 14:36:48,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:36:49,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:36:49,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:36:49,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:36:49,314.314 INFO    ] time= 28/10/2026 14:36:49
[2026-10-28 14:36:49,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:36:49,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:36:49,489.489 INFO    ] No existing commands found in stream
[2026-10-28 14:36:54,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:36:54,522.522 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-28 14:36:56,144.144 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:36:56,147.147 INFO    ] Checking for system updates...
[2026-10-28 14:36:56,187.187 INFO    ] 200
[2026-10-28 14:36:56,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:36:56,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:36:56,246.246 INFO    ] No update needed
[2026-10-28 14:36:56,249.249 INFO    ] Checking for camera pi updates...
[2026-10-28 14:36:56,283.283 INFO    ] 200
[2026-10-28 14:36:56,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:36:56,327.327 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:36:56,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:36:56,414.414 INFO    ] No camera update needed
[2026-10-28 14:36:56,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:36:56,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:36:56,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:36:56,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:36:58,471.471 INFO    ] ================================================
[2026-10-28 14:36:58,486.486 INFO    ] Launching Daemon at Wed Oct 28 14:36:58 IST 2026
[2026-10-28 14:36:58,497.497 INFO    ] ================================================
[2026-10-28 14:36:59,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:36:59
[2026-10-28 14:36:59,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:36:59,978.978 INFO    ] Initializing speech engine...
[2026-10-28 14:36:59,988.988 INFO    ] 2026-10-28 14:36:59
[2026-10-28 14:37:00,253.253 INFO    ] 2026-10-28 14:37:00
[2026-10-28 14:37:00,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:37:00,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:37:00,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:37:00,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:37:00,818.818 INFO    ] time= 28/10/2026 14:37:00
[2026-10-28 14:37:00,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:37:00,852.852 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:37:00,992.992 INFO    ] No existing commands found in stream
[2026-10-28 14:37:06,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:37:06,025.025 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-28 14:37:07,262.262 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:37:07,265.265 INFO    ] Checking for system updates...
[2026-10-28 14:37:07,301.301 INFO    ] 200
[2026-10-28 14:37:07,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:37:07,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:37:07,358.358 INFO    ] No update needed
[2026-10-28 14:37:07,361.361 INFO    ] Checking for camera pi updates...
[2026-10-28 14:37:07,394.394 INFO    ] 200
[2026-10-28 14:37:07,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:37:07,437.437 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:37:07,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:37:07,517.517 INFO    ] No camera update needed
[2026-10-28 14:37:07,520.520 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:37:07,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:37:07,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:37:07,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:37:09,574.574 INFO    ] ================================================
[2026-10-28 14:37:09,589.589 INFO    ] Launching Daemon at Wed Oct 28 14:37:09 IST 2026
[2026-10-28 14:37:09,600.600 INFO    ] ================================================
[2026-10-28 14:37:10,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:37:10
[2026-10-28 14:37:10,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:37:11,232.232 INFO    ] Initializing speech engine...
[2026-10-28 14:37:11,240.240 INFO    ] 2026-10-28 14:37:11
[2026-10-28 14:37:11,517.517 INFO    ] 2026-10-28 14:37:11
[2026-10-28 14:37:11,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:37:11,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:37:11,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:37:12,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:37:12,296.296 INFO    ] time= 28/10/2026 14:37:12
[2026-10-28 14:37:12,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:37:12,408.408 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:37:12,539.539 INFO    ] No existing commands found in stream
[2026-10-28 14:37:17,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:37:17,552.552 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 14:37:20,524.524 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:37:20,526.526 INFO    ] Checking for system updates...
[2026-10-28 14:37:20,584.584 INFO    ] 200
[2026-10-28 14:37:20,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:37:20,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:37:20,658.658 INFO    ] No update needed
[2026-10-28 14:37:20,660.660 INFO    ] Checking for camera pi updates...
[2026-10-28 14:37:20,697.697 INFO    ] 200
[2026-10-28 14:37:20,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:37:20,745.745 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:37:20,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:37:20,839.839 INFO    ] No camera update needed
[2026-10-28 14:37:20,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:37:20,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:37:20,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:37:20,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:37:22,894.894 INFO    ] ================================================
[2026-10-28 14:37:22,909.909 INFO    ] Launching Daemon at Wed Oct 28 14:37:22 IST 2026
[2026-10-28 14:37:22,920.920 INFO    ] ================================================
[2026-10-28 14:37:23,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:37:23
[2026-10-28 14:37:24,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:37:24,519.519 INFO    ] Initializing speech engine...
[2026-10-28 14:37:24,525.525 INFO    ] 2026-10-28 14:37:24
[2026-10-28 14:37:24,785.785 INFO    ] 2026-10-28 14:37:24
[2026-10-28 14:37:24,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:37:25,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:37:25,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:37:25,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:37:25,383.383 INFO    ] time= 28/10/2026 14:37:25
[2026-10-28 14:37:25,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:37:25,479.479 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:37:25,594.594 INFO    ] No existing commands found in stream
[2026-10-28 14:37:30,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:37:30,627.627 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-28 14:37:33,741.741 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:37:33,744.744 INFO    ] Checking for system updates...
[2026-10-28 14:37:33,783.783 INFO    ] 200
[2026-10-28 14:37:33,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:37:33,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:37:33,846.846 INFO    ] No update needed
[2026-10-28 14:37:33,849.849 INFO    ] Checking for camera pi updates...
[2026-10-28 14:37:33,883.883 INFO    ] 200
[2026-10-28 14:37:33,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:37:33,925.925 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:37:34,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:37:34,015.015 INFO    ] No camera update needed
[2026-10-28 14:37:34,018.018 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:37:34,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:37:34,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:37:34,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:37:36,074.074 INFO    ] ================================================
[2026-10-28 14:37:36,089.089 INFO    ] Launching Daemon at Wed Oct 28 14:37:36 IST 2026
[2026-10-28 14:37:36,100.100 INFO    ] ================================================
[2026-10-28 14:37:36,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:37:36
[2026-10-28 14:37:37,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:37:37,712.712 INFO    ] Initializing speech engine...
[2026-10-28 14:37:37,724.724 INFO    ] 2026-10-28 14:37:37
[2026-10-28 14:37:38,015.015 INFO    ] 2026-10-28 14:37:37
[2026-10-28 14:37:38,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:37:38,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:37:38,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:37:38,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:37:38,721.721 INFO    ] time= 28/10/2026 14:37:38
[2026-10-28 14:37:38,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:37:38,821.821 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:37:38,970.970 INFO    ] No existing commands found in stream
[2026-10-28 14:37:43,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:37:43,989.989 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-28 14:37:48,310.310 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:37:48,313.313 INFO    ] Checking for system updates...
[2026-10-28 14:37:48,348.348 INFO    ] 200
[2026-10-28 14:37:48,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:37:48,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:37:48,405.405 INFO    ] No update needed
[2026-10-28 14:37:48,408.408 INFO    ] Checking for camera pi updates...
[2026-10-28 14:37:48,441.441 INFO    ] 200
[2026-10-28 14:37:48,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:37:48,484.484 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:37:48,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:37:48,594.594 INFO    ] No camera update needed
[2026-10-28 14:37:48,597.597 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:37:48,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:37:48,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:37:48,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:37:50,651.651 INFO    ] ================================================
[2026-10-28 14:37:50,666.666 INFO    ] Launching Daemon at Wed Oct 28 14:37:50 IST 2026
[2026-10-28 14:37:50,677.677 INFO    ] ================================================
[2026-10-28 14:37:51,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:37:51
[2026-10-28 14:37:51,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:37:52,083.083 INFO    ] Initializing speech engine...
[2026-10-28 14:37:52,091.091 INFO    ] 2026-10-28 14:37:52
[2026-10-28 14:37:52,384.384 INFO    ] 2026-10-28 14:37:52
[2026-10-28 14:37:52,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:37:52,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:37:52,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:37:52,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:37:53,013.013 INFO    ] time= 28/10/2026 14:37:52
[2026-10-28 14:37:53,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:37:53,040.040 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:37:53,179.179 INFO    ] No existing commands found in stream
[2026-10-28 14:37:58,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:37:58,201.201 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 14:38:00,305.305 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:38:00,308.308 INFO    ] Checking for system updates...
[2026-10-28 14:38:00,343.343 INFO    ] 200
[2026-10-28 14:38:00,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:38:00,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:38:00,407.407 INFO    ] No update needed
[2026-10-28 14:38:00,409.409 INFO    ] Checking for camera pi updates...
[2026-10-28 14:38:00,442.442 INFO    ] 200
[2026-10-28 14:38:00,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:38:00,489.489 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:38:00,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:38:00,572.572 INFO    ] No camera update needed
[2026-10-28 14:38:00,575.575 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:38:00,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:38:00,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:38:00,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:38:02,630.630 INFO    ] ================================================
[2026-10-28 14:38:02,651.651 INFO    ] Launching Daemon at Wed Oct 28 14:38:02 IST 2026
[2026-10-28 14:38:02,667.667 INFO    ] ================================================
[2026-10-28 14:38:03,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:38:03
[2026-10-28 14:38:03,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:38:04,230.230 INFO    ] Initializing speech engine...
[2026-10-28 14:38:04,239.239 INFO    ] 2026-10-28 14:38:04
[2026-10-28 14:38:04,536.536 INFO    ] 2026-10-28 14:38:04
[2026-10-28 14:38:04,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:38:04,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:38:04,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:38:05,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:38:05,149.149 INFO    ] time= 28/10/2026 14:38:05
[2026-10-28 14:38:05,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:38:05,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:38:05,338.338 INFO    ] No existing commands found in stream
[2026-10-28 14:38:10,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:38:10,360.360 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-28 14:38:13,404.404 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:38:13,406.406 INFO    ] Checking for system updates...
[2026-10-28 14:38:13,446.446 INFO    ] 200
[2026-10-28 14:38:13,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:38:13,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:38:13,502.502 INFO    ] No update needed
[2026-10-28 14:38:13,505.505 INFO    ] Checking for camera pi updates...
[2026-10-28 14:38:13,539.539 INFO    ] 200
[2026-10-28 14:38:13,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:38:13,581.581 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:38:13,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:38:13,741.741 INFO    ] No camera update needed
[2026-10-28 14:38:13,743.743 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:38:13,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:38:13,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:38:13,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:38:15,797.797 INFO    ] ================================================
[2026-10-28 14:38:15,812.812 INFO    ] Launching Daemon at Wed Oct 28 14:38:15 IST 2026
[2026-10-28 14:38:15,822.822 INFO    ] ================================================
[2026-10-28 14:38:16,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:38:16
[2026-10-28 14:38:17,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:38:17,475.475 INFO    ] Initializing speech engine...
[2026-10-28 14:38:17,486.486 INFO    ] 2026-10-28 14:38:17
[2026-10-28 14:38:17,801.801 INFO    ] 2026-10-28 14:38:17
[2026-10-28 14:38:17,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:38:18,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:38:18,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:38:18,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:38:18,538.538 INFO    ] time= 28/10/2026 14:38:18
[2026-10-28 14:38:18,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:38:18,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:38:18,773.773 INFO    ] No existing commands found in stream
[2026-10-28 14:38:23,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:38:23,793.793 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-28 14:38:26,837.837 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:38:26,841.841 INFO    ] Checking for system updates...
[2026-10-28 14:38:26,877.877 INFO    ] 200
[2026-10-28 14:38:26,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:38:26,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:38:26,938.938 INFO    ] No update needed
[2026-10-28 14:38:26,940.940 INFO    ] Checking for camera pi updates...
[2026-10-28 14:38:26,974.974 INFO    ] 200
[2026-10-28 14:38:26,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:38:27,022.022 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:38:27,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:38:27,109.109 INFO    ] No camera update needed
[2026-10-28 14:38:27,112.112 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:38:27,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:38:27,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:38:27,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:38:29,165.165 INFO    ] ================================================
[2026-10-28 14:38:29,180.180 INFO    ] Launching Daemon at Wed Oct 28 14:38:29 IST 2026
[2026-10-28 14:38:29,191.191 INFO    ] ================================================
[2026-10-28 14:38:29,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:38:29
[2026-10-28 14:38:30,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:38:30,609.609 INFO    ] Initializing speech engine...
[2026-10-28 14:38:30,632.632 INFO    ] 2026-10-28 14:38:30
[2026-10-28 14:38:30,889.889 INFO    ] 2026-10-28 14:38:30
[2026-10-28 14:38:30,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:38:31,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:38:31,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:38:31,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:38:31,463.463 INFO    ] time= 28/10/2026 14:38:31
[2026-10-28 14:38:31,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:38:31,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:38:31,665.665 INFO    ] No existing commands found in stream
[2026-10-28 14:38:36,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:38:36,693.693 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-28 14:38:41,197.197 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:38:41,200.200 INFO    ] Checking for system updates...
[2026-10-28 14:38:41,240.240 INFO    ] 200
[2026-10-28 14:38:41,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:38:41,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:38:41,298.298 INFO    ] No update needed
[2026-10-28 14:38:41,301.301 INFO    ] Checking for camera pi updates...
[2026-10-28 14:38:41,339.339 INFO    ] 200
[2026-10-28 14:38:41,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:38:41,387.387 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:38:41,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:38:41,485.485 INFO    ] No camera update needed
[2026-10-28 14:38:41,488.488 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:38:41,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:38:41,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:38:41,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:38:43,544.544 INFO    ] ================================================
[2026-10-28 14:38:43,559.559 INFO    ] Launching Daemon at Wed Oct 28 14:38:43 IST 2026
[2026-10-28 14:38:43,569.569 INFO    ] ================================================
[2026-10-28 14:38:44,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:38:44
[2026-10-28 14:38:44,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:38:44,974.974 INFO    ] Initializing speech engine...
[2026-10-28 14:38:44,982.982 INFO    ] 2026-10-28 14:38:44
[2026-10-28 14:38:45,258.258 INFO    ] 2026-10-28 14:38:45
[2026-10-28 14:38:45,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:38:45,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:38:45,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:38:45,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:38:45,826.826 INFO    ] time= 28/10/2026 14:38:45
[2026-10-28 14:38:45,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:38:45,874.874 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:38:45,998.998 INFO    ] No existing commands found in stream
[2026-10-28 14:38:51,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:38:51,026.026 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-28 14:38:52,541.541 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:38:52,544.544 INFO    ] Checking for system updates...
[2026-10-28 14:38:52,584.584 INFO    ] 200
[2026-10-28 14:38:52,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:38:52,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:38:52,648.648 INFO    ] No update needed
[2026-10-28 14:38:52,651.651 INFO    ] Checking for camera pi updates...
[2026-10-28 14:38:52,684.684 INFO    ] 200
[2026-10-28 14:38:52,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:38:52,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:38:52,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:38:52,837.837 INFO    ] No camera update needed
[2026-10-28 14:38:52,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:38:52,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:38:52,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:38:52,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:38:54,893.893 INFO    ] ================================================
[2026-10-28 14:38:54,908.908 INFO    ] Launching Daemon at Wed Oct 28 14:38:54 IST 2026
[2026-10-28 14:38:54,919.919 INFO    ] ================================================
[2026-10-28 14:38:55,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:38:55
[2026-10-28 14:38:56,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:38:56,339.339 INFO    ] Initializing speech engine...
[2026-10-28 14:38:56,349.349 INFO    ] 2026-10-28 14:38:56
[2026-10-28 14:38:56,599.599 INFO    ] 2026-10-28 14:38:56
[2026-10-28 14:38:56,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:38:56,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:38:56,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:38:57,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:38:57,167.167 INFO    ] time= 28/10/2026 14:38:57
[2026-10-28 14:38:57,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:38:57,197.197 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:38:57,349.349 INFO    ] No existing commands found in stream
[2026-10-28 14:39:02,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:39:02,379.379 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-28 14:39:05,343.343 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:39:05,346.346 INFO    ] Checking for system updates...
[2026-10-28 14:39:05,387.387 INFO    ] 200
[2026-10-28 14:39:05,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:39:05,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:39:05,449.449 INFO    ] No update needed
[2026-10-28 14:39:05,452.452 INFO    ] Checking for camera pi updates...
[2026-10-28 14:39:05,492.492 INFO    ] 200
[2026-10-28 14:39:05,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:39:05,540.540 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:39:05,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:39:05,621.621 INFO    ] No camera update needed
[2026-10-28 14:39:05,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:39:05,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:39:05,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:39:05,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:39:07,679.679 INFO    ] ================================================
[2026-10-28 14:39:07,694.694 INFO    ] Launching Daemon at Wed Oct 28 14:39:07 IST 2026
[2026-10-28 14:39:07,705.705 INFO    ] ================================================
[2026-10-28 14:39:08,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:39:08
[2026-10-28 14:39:08,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:39:09,147.147 INFO    ] Initializing speech engine...
[2026-10-28 14:39:09,165.165 INFO    ] 2026-10-28 14:39:09
[2026-10-28 14:39:09,416.416 INFO    ] 2026-10-28 14:39:09
[2026-10-28 14:39:09,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:39:09,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:39:09,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:39:09,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:39:09,970.970 INFO    ] time= 28/10/2026 14:39:09
[2026-10-28 14:39:09,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:39:10,010.010 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:39:10,187.187 INFO    ] No existing commands found in stream
[2026-10-28 14:39:15,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:39:15,220.220 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 14:39:18,908.908 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:39:18,911.911 INFO    ] Checking for system updates...
[2026-10-28 14:39:18,952.952 INFO    ] 200
[2026-10-28 14:39:18,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:39:19,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:39:19,011.011 INFO    ] No update needed
[2026-10-28 14:39:19,014.014 INFO    ] Checking for camera pi updates...
[2026-10-28 14:39:19,052.052 INFO    ] 200
[2026-10-28 14:39:19,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:39:19,101.101 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:39:19,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:39:19,181.181 INFO    ] No camera update needed
[2026-10-28 14:39:19,184.184 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:39:19,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:39:19,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:39:19,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:39:21,237.237 INFO    ] ================================================
[2026-10-28 14:39:21,252.252 INFO    ] Launching Daemon at Wed Oct 28 14:39:21 IST 2026
[2026-10-28 14:39:21,263.263 INFO    ] ================================================
[2026-10-28 14:39:21,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:39:21
[2026-10-28 14:39:22,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:39:22,719.719 INFO    ] Initializing speech engine...
[2026-10-28 14:39:22,725.725 INFO    ] 2026-10-28 14:39:22
[2026-10-28 14:39:22,989.989 INFO    ] 2026-10-28 14:39:22
[2026-10-28 14:39:23,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:39:23,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:39:23,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:39:23,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:39:23,545.545 INFO    ] time= 28/10/2026 14:39:23
[2026-10-28 14:39:23,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:39:23,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:39:23,722.722 INFO    ] No existing commands found in stream
[2026-10-28 14:39:28,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:39:28,755.755 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-28 14:39:32,982.982 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:39:32,985.985 INFO    ] Checking for system updates...
[2026-10-28 14:39:33,021.021 INFO    ] 200
[2026-10-28 14:39:33,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:39:33,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:39:33,078.078 INFO    ] No update needed
[2026-10-28 14:39:33,080.080 INFO    ] Checking for camera pi updates...
[2026-10-28 14:39:33,114.114 INFO    ] 200
[2026-10-28 14:39:33,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:39:33,158.158 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:39:33,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:39:33,242.242 INFO    ] No camera update needed
[2026-10-28 14:39:33,245.245 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:39:33,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:39:33,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:39:33,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:39:35,297.297 INFO    ] ================================================
[2026-10-28 14:39:35,312.312 INFO    ] Launching Daemon at Wed Oct 28 14:39:35 IST 2026
[2026-10-28 14:39:35,323.323 INFO    ] ================================================
[2026-10-28 14:39:36,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:39:36
[2026-10-28 14:39:36,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:39:36,870.870 INFO    ] Initializing speech engine...
[2026-10-28 14:39:36,892.892 INFO    ] 2026-10-28 14:39:36
[2026-10-28 14:39:37,143.143 INFO    ] 2026-10-28 14:39:37
[2026-10-28 14:39:37,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:39:37,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:39:37,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:39:37,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:39:37,729.729 INFO    ] time= 28/10/2026 14:39:37
[2026-10-28 14:39:37,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:39:37,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:39:37,902.902 INFO    ] No existing commands found in stream
[2026-10-28 14:39:42,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:39:42,922.922 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 14:39:45,364.364 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:39:45,367.367 INFO    ] Checking for system updates...
[2026-10-28 14:39:45,403.403 INFO    ] 200
[2026-10-28 14:39:45,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:39:45,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:39:45,468.468 INFO    ] No update needed
[2026-10-28 14:39:45,471.471 INFO    ] Checking for camera pi updates...
[2026-10-28 14:39:45,509.509 INFO    ] 200
[2026-10-28 14:39:45,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:39:45,557.557 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:39:45,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:39:45,657.657 INFO    ] No camera update needed
[2026-10-28 14:39:45,660.660 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:39:45,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:39:45,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:39:45,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:39:47,713.713 INFO    ] ================================================
[2026-10-28 14:39:47,728.728 INFO    ] Launching Daemon at Wed Oct 28 14:39:47 IST 2026
[2026-10-28 14:39:47,739.739 INFO    ] ================================================
[2026-10-28 14:39:48,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:39:48
[2026-10-28 14:39:48,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:39:49,195.195 INFO    ] Initializing speech engine...
[2026-10-28 14:39:49,204.204 INFO    ] 2026-10-28 14:39:49
[2026-10-28 14:39:49,457.457 INFO    ] 2026-10-28 14:39:49
[2026-10-28 14:39:49,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:39:49,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:39:49,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:39:50,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:39:50,223.223 INFO    ] time= 28/10/2026 14:39:50
[2026-10-28 14:39:50,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:39:50,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:39:50,442.442 INFO    ] No existing commands found in stream
[2026-10-28 14:39:55,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:39:55,459.459 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-28 14:39:58,045.045 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:39:58,048.048 INFO    ] Checking for system updates...
[2026-10-28 14:39:58,088.088 INFO    ] 200
[2026-10-28 14:39:58,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:39:58,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:39:58,153.153 INFO    ] No update needed
[2026-10-28 14:39:58,155.155 INFO    ] Checking for camera pi updates...
[2026-10-28 14:39:58,193.193 INFO    ] 200
[2026-10-28 14:39:58,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:39:58,242.242 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:39:58,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:39:58,328.328 INFO    ] No camera update needed
[2026-10-28 14:39:58,330.330 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:39:58,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:39:58,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:39:58,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:40:00,385.385 INFO    ] ================================================
[2026-10-28 14:40:00,400.400 INFO    ] Launching Daemon at Wed Oct 28 14:40:00 IST 2026
[2026-10-28 14:40:00,412.412 INFO    ] ================================================
[2026-10-28 14:40:00,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:40:00
[2026-10-28 14:40:02,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:40:02,638.638 INFO    ] Initializing speech engine...
[2026-10-28 14:40:02,641.641 INFO    ] 2026-10-28 14:40:02
[2026-10-28 14:40:02,984.984 INFO    ] 2026-10-28 14:40:02
[2026-10-28 14:40:03,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:40:03,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:40:03,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:40:03,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:40:03,528.528 INFO    ] time= 28/10/2026 14:40:03
[2026-10-28 14:40:03,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:40:03,573.573 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:40:03,711.711 INFO    ] No existing commands found in stream
[2026-10-28 14:40:08,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:40:08,731.731 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 14:40:10,620.620 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:40:10,622.622 INFO    ] Checking for system updates...
[2026-10-28 14:40:10,658.658 INFO    ] 200
[2026-10-28 14:40:10,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:40:10,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:40:10,725.725 INFO    ] No update needed
[2026-10-28 14:40:10,727.727 INFO    ] Checking for camera pi updates...
[2026-10-28 14:40:10,760.760 INFO    ] 200
[2026-10-28 14:40:10,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:40:10,810.810 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:40:10,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:40:10,897.897 INFO    ] No camera update needed
[2026-10-28 14:40:10,899.899 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:40:10,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:40:10,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:40:10,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:40:12,951.951 INFO    ] ================================================
[2026-10-28 14:40:12,966.966 INFO    ] Launching Daemon at Wed Oct 28 14:40:12 IST 2026
[2026-10-28 14:40:12,977.977 INFO    ] ================================================
[2026-10-28 14:40:13,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:40:13
[2026-10-28 14:40:14,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:40:14,417.417 INFO    ] Initializing speech engine...
[2026-10-28 14:40:14,428.428 INFO    ] 2026-10-28 14:40:14
[2026-10-28 14:40:14,686.686 INFO    ] 2026-10-28 14:40:14
[2026-10-28 14:40:14,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:40:15,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:40:15,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:40:15,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:40:15,417.417 INFO    ] time= 28/10/2026 14:40:15
[2026-10-28 14:40:15,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:40:15,513.513 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:40:15,652.652 INFO    ] No existing commands found in stream
[2026-10-28 14:40:20,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:40:20,685.685 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 14:40:25,265.265 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:40:25,268.268 INFO    ] Checking for system updates...
[2026-10-28 14:40:25,309.309 INFO    ] 200
[2026-10-28 14:40:25,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:40:25,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:40:25,367.367 INFO    ] No update needed
[2026-10-28 14:40:25,369.369 INFO    ] Checking for camera pi updates...
[2026-10-28 14:40:25,408.408 INFO    ] 200
[2026-10-28 14:40:25,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:40:25,457.457 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:40:25,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:40:25,643.643 INFO    ] No camera update needed
[2026-10-28 14:40:25,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:40:25,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:40:25,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:40:25,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:40:27,698.698 INFO    ] ================================================
[2026-10-28 14:40:27,714.714 INFO    ] Launching Daemon at Wed Oct 28 14:40:27 IST 2026
[2026-10-28 14:40:27,724.724 INFO    ] ================================================
[2026-10-28 14:40:28,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:40:28
[2026-10-28 14:40:28,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:40:29,193.193 INFO    ] Initializing speech engine...
[2026-10-28 14:40:29,202.202 INFO    ] 2026-10-28 14:40:29
[2026-10-28 14:40:29,451.451 INFO    ] 2026-10-28 14:40:29
[2026-10-28 14:40:29,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:40:29,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:40:29,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:40:30,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:40:30,211.211 INFO    ] time= 28/10/2026 14:40:30
[2026-10-28 14:40:30,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:40:30,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:40:30,444.444 INFO    ] No existing commands found in stream
[2026-10-28 14:40:35,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:40:35,463.463 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 14:40:38,042.042 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:40:38,045.045 INFO    ] Checking for system updates...
[2026-10-28 14:40:38,087.087 INFO    ] 200
[2026-10-28 14:40:38,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:40:38,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:40:38,157.157 INFO    ] No update needed
[2026-10-28 14:40:38,159.159 INFO    ] Checking for camera pi updates...
[2026-10-28 14:40:38,193.193 INFO    ] 200
[2026-10-28 14:40:38,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:40:38,236.236 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:40:38,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:40:38,325.325 INFO    ] No camera update needed
[2026-10-28 14:40:38,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:40:38,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:40:38,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:40:38,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:40:40,383.383 INFO    ] ================================================
[2026-10-28 14:40:40,399.399 INFO    ] Launching Daemon at Wed Oct 28 14:40:40 IST 2026
[2026-10-28 14:40:40,409.409 INFO    ] ================================================
[2026-10-28 14:40:40,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:40:40
[2026-10-28 14:40:41,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:40:41,815.815 INFO    ] Initializing speech engine...
[2026-10-28 14:40:41,828.828 INFO    ] 2026-10-28 14:40:41
[2026-10-28 14:40:42,090.090 INFO    ] 2026-10-28 14:40:42
[2026-10-28 14:40:42,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:40:42,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:40:42,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:40:42,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:40:42,656.656 INFO    ] time= 28/10/2026 14:40:42
[2026-10-28 14:40:42,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:40:42,711.711 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:40:42,839.839 INFO    ] No existing commands found in stream
[2026-10-28 14:40:47,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:40:47,858.858 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 14:40:51,631.631 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:40:51,633.633 INFO    ] Checking for system updates...
[2026-10-28 14:40:51,669.669 INFO    ] 200
[2026-10-28 14:40:51,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:40:51,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:40:51,727.727 INFO    ] No update needed
[2026-10-28 14:40:51,729.729 INFO    ] Checking for camera pi updates...
[2026-10-28 14:40:51,768.768 INFO    ] 200
[2026-10-28 14:40:51,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:40:51,811.811 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:40:51,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:40:51,900.900 INFO    ] No camera update needed
[2026-10-28 14:40:51,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:40:51,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:40:51,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:40:51,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:40:53,956.956 INFO    ] ================================================
[2026-10-28 14:40:53,971.971 INFO    ] Launching Daemon at Wed Oct 28 14:40:53 IST 2026
[2026-10-28 14:40:53,981.981 INFO    ] ================================================
[2026-10-28 14:40:54,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:40:54
[2026-10-28 14:40:55,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:40:55,470.470 INFO    ] Initializing speech engine...
[2026-10-28 14:40:55,478.478 INFO    ] 2026-10-28 14:40:55
[2026-10-28 14:40:55,776.776 INFO    ] 2026-10-28 14:40:55
[2026-10-28 14:40:55,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:40:56,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:40:56,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:40:56,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:40:56,341.341 INFO    ] time= 28/10/2026 14:40:56
[2026-10-28 14:40:56,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:40:56,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:40:56,514.514 INFO    ] No existing commands found in stream
[2026-10-28 14:41:01,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:41:01,548.548 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 14:41:05,873.873 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:41:05,875.875 INFO    ] Checking for system updates...
[2026-10-28 14:41:05,912.912 INFO    ] 200
[2026-10-28 14:41:05,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:41:05,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:41:05,978.978 INFO    ] No update needed
[2026-10-28 14:41:05,981.981 INFO    ] Checking for camera pi updates...
[2026-10-28 14:41:06,020.020 INFO    ] 200
[2026-10-28 14:41:06,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:41:06,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:41:06,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:41:06,170.170 INFO    ] No camera update needed
[2026-10-28 14:41:06,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:41:06,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:41:06,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:41:06,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:41:08,228.228 INFO    ] ================================================
[2026-10-28 14:41:08,243.243 INFO    ] Launching Daemon at Wed Oct 28 14:41:08 IST 2026
[2026-10-28 14:41:08,253.253 INFO    ] ================================================
[2026-10-28 14:41:08,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:41:08
[2026-10-28 14:41:09,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:41:09,710.710 INFO    ] Initializing speech engine...
[2026-10-28 14:41:09,718.718 INFO    ] 2026-10-28 14:41:09
[2026-10-28 14:41:09,977.977 INFO    ] 2026-10-28 14:41:09
[2026-10-28 14:41:10,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:41:10,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:41:10,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:41:10,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:41:10,680.680 INFO    ] time= 28/10/2026 14:41:10
[2026-10-28 14:41:10,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:41:10,776.776 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:41:10,926.926 INFO    ] No existing commands found in stream
[2026-10-28 14:41:15,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:41:15,950.950 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 14:41:20,206.206 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:41:20,208.208 INFO    ] Checking for system updates...
[2026-10-28 14:41:20,248.248 INFO    ] 200
[2026-10-28 14:41:20,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:41:20,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:41:20,305.305 INFO    ] No update needed
[2026-10-28 14:41:20,308.308 INFO    ] Checking for camera pi updates...
[2026-10-28 14:41:20,341.341 INFO    ] 200
[2026-10-28 14:41:20,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:41:20,399.399 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:41:20,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:41:20,482.482 INFO    ] No camera update needed
[2026-10-28 14:41:20,485.485 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:41:20,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:41:20,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:41:20,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:41:22,537.537 INFO    ] ================================================
[2026-10-28 14:41:22,552.552 INFO    ] Launching Daemon at Wed Oct 28 14:41:22 IST 2026
[2026-10-28 14:41:22,563.563 INFO    ] ================================================
[2026-10-28 14:41:23,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:41:23
[2026-10-28 14:41:23,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:41:24,031.031 INFO    ] Initializing speech engine...
[2026-10-28 14:41:24,038.038 INFO    ] 2026-10-28 14:41:24
[2026-10-28 14:41:24,282.282 INFO    ] 2026-10-28 14:41:24
[2026-10-28 14:41:24,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:41:24,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:41:24,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:41:25,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:41:25,088.088 INFO    ] time= 28/10/2026 14:41:25
[2026-10-28 14:41:25,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:41:25,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:41:25,397.397 INFO    ] No existing commands found in stream
[2026-10-28 14:41:30,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:41:30,426.426 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 14:41:34,671.671 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:41:34,674.674 INFO    ] Checking for system updates...
[2026-10-28 14:41:34,710.710 INFO    ] 200
[2026-10-28 14:41:34,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:41:34,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:41:34,775.775 INFO    ] No update needed
[2026-10-28 14:41:34,777.777 INFO    ] Checking for camera pi updates...
[2026-10-28 14:41:34,810.810 INFO    ] 200
[2026-10-28 14:41:34,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:41:34,858.858 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:41:34,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:41:34,941.941 INFO    ] No camera update needed
[2026-10-28 14:41:34,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:41:34,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:41:34,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:41:34,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:41:37,996.996 INFO    ] ================================================
[2026-10-28 14:41:37,011.011 INFO    ] Launching Daemon at Wed Oct 28 14:41:37 IST 2026
[2026-10-28 14:41:37,022.022 INFO    ] ================================================
[2026-10-28 14:41:37,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:41:37
[2026-10-28 14:41:38,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:41:38,586.586 INFO    ] Initializing speech engine...
[2026-10-28 14:41:38,594.594 INFO    ] 2026-10-28 14:41:38
[2026-10-28 14:41:38,866.866 INFO    ] 2026-10-28 14:41:38
[2026-10-28 14:41:38,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:41:39,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:41:39,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:41:39,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:41:39,588.588 INFO    ] time= 28/10/2026 14:41:39
[2026-10-28 14:41:39,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:41:39,652.652 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:41:39,825.825 INFO    ] No existing commands found in stream
[2026-10-28 14:41:44,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:41:44,843.843 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-28 14:41:47,659.659 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:41:47,662.662 INFO    ] Checking for system updates...
[2026-10-28 14:41:47,702.702 INFO    ] 200
[2026-10-28 14:41:47,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:41:47,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:41:47,758.758 INFO    ] No update needed
[2026-10-28 14:41:47,761.761 INFO    ] Checking for camera pi updates...
[2026-10-28 14:41:47,794.794 INFO    ] 200
[2026-10-28 14:41:47,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:41:47,842.842 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:41:47,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:41:47,895.895 INFO    ] No camera update needed
[2026-10-28 14:41:47,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:41:47,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:41:47,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:41:47,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:41:49,950.950 INFO    ] ================================================
[2026-10-28 14:41:49,965.965 INFO    ] Launching Daemon at Wed Oct 28 14:41:49 IST 2026
[2026-10-28 14:41:49,977.977 INFO    ] ================================================
[2026-10-28 14:41:50,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:41:50
[2026-10-28 14:41:51,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:41:51,622.622 INFO    ] Initializing speech engine...
[2026-10-28 14:41:51,635.635 INFO    ] 2026-10-28 14:41:51
[2026-10-28 14:41:51,928.928 INFO    ] 2026-10-28 14:41:51
[2026-10-28 14:41:52,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:41:52,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:41:52,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:41:52,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:41:52,645.645 INFO    ] time= 28/10/2026 14:41:52
[2026-10-28 14:41:52,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:41:52,730.730 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:41:52,884.884 INFO    ] No existing commands found in stream
[2026-10-28 14:41:57,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:41:57,906.906 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 14:42:00,286.286 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:42:00,289.289 INFO    ] Checking for system updates...
[2026-10-28 14:42:00,330.330 INFO    ] 200
[2026-10-28 14:42:00,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:42:00,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:42:00,390.390 INFO    ] No update needed
[2026-10-28 14:42:00,392.392 INFO    ] Checking for camera pi updates...
[2026-10-28 14:42:00,431.431 INFO    ] 200
[2026-10-28 14:42:00,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:42:00,480.480 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:42:00,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:42:00,576.576 INFO    ] No camera update needed
[2026-10-28 14:42:00,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:42:00,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:42:00,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:42:00,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:42:02,703.703 INFO    ] ================================================
[2026-10-28 14:42:02,720.720 INFO    ] Launching Daemon at Wed Oct 28 14:42:02 IST 2026
[2026-10-28 14:42:02,732.732 INFO    ] ================================================
[2026-10-28 14:42:03,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:42:03
[2026-10-28 14:42:03,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:42:04,273.273 INFO    ] Initializing speech engine...
[2026-10-28 14:42:04,288.288 INFO    ] 2026-10-28 14:42:04
[2026-10-28 14:42:04,574.574 INFO    ] 2026-10-28 14:42:04
[2026-10-28 14:42:04,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:42:04,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:42:04,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:42:05,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:42:05,114.114 INFO    ] time= 28/10/2026 14:42:05
[2026-10-28 14:42:05,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:42:05,202.202 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:42:05,360.360 INFO    ] No existing commands found in stream
[2026-10-28 14:42:10,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:42:10,388.388 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-28 14:42:13,605.605 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:42:13,607.607 INFO    ] Checking for system updates...
[2026-10-28 14:42:13,647.647 INFO    ] 200
[2026-10-28 14:42:13,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:42:13,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:42:13,704.704 INFO    ] No update needed
[2026-10-28 14:42:13,706.706 INFO    ] Checking for camera pi updates...
[2026-10-28 14:42:13,747.747 INFO    ] 200
[2026-10-28 14:42:13,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:42:13,790.790 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:42:13,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:42:13,877.877 INFO    ] No camera update needed
[2026-10-28 14:42:13,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:42:13,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:42:13,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:42:13,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:42:15,934.934 INFO    ] ================================================
[2026-10-28 14:42:15,949.949 INFO    ] Launching Daemon at Wed Oct 28 14:42:15 IST 2026
[2026-10-28 14:42:15,960.960 INFO    ] ================================================
[2026-10-28 14:42:16,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:42:16
[2026-10-28 14:42:17,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:42:17,592.592 INFO    ] Initializing speech engine...
[2026-10-28 14:42:17,604.604 INFO    ] 2026-10-28 14:42:17
[2026-10-28 14:42:17,912.912 INFO    ] 2026-10-28 14:42:17
[2026-10-28 14:42:17,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:42:18,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:42:18,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:42:18,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:42:18,646.646 INFO    ] time= 28/10/2026 14:42:18
[2026-10-28 14:42:18,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:42:18,729.729 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:42:18,857.857 INFO    ] No existing commands found in stream
[2026-10-28 14:42:23,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:42:23,879.879 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 14:42:26,241.241 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:42:26,245.245 INFO    ] Checking for system updates...
[2026-10-28 14:42:26,282.282 INFO    ] 200
[2026-10-28 14:42:26,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:42:26,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:42:26,349.349 INFO    ] No update needed
[2026-10-28 14:42:26,352.352 INFO    ] Checking for camera pi updates...
[2026-10-28 14:42:26,391.391 INFO    ] 200
[2026-10-28 14:42:26,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:42:26,441.441 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:42:26,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:42:26,542.542 INFO    ] No camera update needed
[2026-10-28 14:42:26,545.545 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:42:26,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:42:26,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:42:26,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:42:28,597.597 INFO    ] ================================================
[2026-10-28 14:42:28,613.613 INFO    ] Launching Daemon at Wed Oct 28 14:42:28 IST 2026
[2026-10-28 14:42:28,624.624 INFO    ] ================================================
[2026-10-28 14:42:29,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:42:29
[2026-10-28 14:42:29,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:42:30,049.049 INFO    ] Initializing speech engine...
[2026-10-28 14:42:30,065.065 INFO    ] 2026-10-28 14:42:30
[2026-10-28 14:42:30,339.339 INFO    ] 2026-10-28 14:42:30
[2026-10-28 14:42:30,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:42:30,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:42:30,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:42:30,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:42:30,982.982 INFO    ] time= 28/10/2026 14:42:30
[2026-10-28 14:42:30,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:42:31,011.011 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:42:31,149.149 INFO    ] No existing commands found in stream
[2026-10-28 14:42:36,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:42:36,171.171 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-28 14:42:39,862.862 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:42:39,864.864 INFO    ] Checking for system updates...
[2026-10-28 14:42:39,900.900 INFO    ] 200
[2026-10-28 14:42:39,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:42:39,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:42:39,964.964 INFO    ] No update needed
[2026-10-28 14:42:39,967.967 INFO    ] Checking for camera pi updates...
[2026-10-28 14:42:40,001.001 INFO    ] 200
[2026-10-28 14:42:40,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:42:40,043.043 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:42:40,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:42:40,147.147 INFO    ] No camera update needed
[2026-10-28 14:42:40,149.149 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:42:40,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:42:40,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:42:40,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:42:42,203.203 INFO    ] ================================================
[2026-10-28 14:42:42,217.217 INFO    ] Launching Daemon at Wed Oct 28 14:42:42 IST 2026
[2026-10-28 14:42:42,228.228 INFO    ] ================================================
[2026-10-28 14:42:42,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:42:42
[2026-10-28 14:42:43,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:42:43,882.882 INFO    ] Initializing speech engine...
[2026-10-28 14:42:43,888.888 INFO    ] 2026-10-28 14:42:43
[2026-10-28 14:42:44,197.197 INFO    ] 2026-10-28 14:42:44
[2026-10-28 14:42:44,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:42:44,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:42:44,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:42:44,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:42:45,033.033 INFO    ] time= 28/10/2026 14:42:44
[2026-10-28 14:42:45,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:42:45,138.138 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:42:45,278.278 INFO    ] No existing commands found in stream
[2026-10-28 14:42:50,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:42:50,296.296 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 14:42:52,870.870 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:42:52,873.873 INFO    ] Checking for system updates...
[2026-10-28 14:42:52,911.911 INFO    ] 200
[2026-10-28 14:42:52,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:42:52,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:42:52,978.978 INFO    ] No update needed
[2026-10-28 14:42:52,981.981 INFO    ] Checking for camera pi updates...
[2026-10-28 14:42:53,016.016 INFO    ] 200
[2026-10-28 14:42:53,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:42:53,061.061 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:42:53,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:42:53,166.166 INFO    ] No camera update needed
[2026-10-28 14:42:53,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:42:53,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:42:53,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:42:53,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:42:55,223.223 INFO    ] ================================================
[2026-10-28 14:42:55,239.239 INFO    ] Launching Daemon at Wed Oct 28 14:42:55 IST 2026
[2026-10-28 14:42:55,250.250 INFO    ] ================================================
[2026-10-28 14:42:55,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:42:55
[2026-10-28 14:42:56,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:42:56,688.688 INFO    ] Initializing speech engine...
[2026-10-28 14:42:56,697.697 INFO    ] 2026-10-28 14:42:56
[2026-10-28 14:42:56,948.948 INFO    ] 2026-10-28 14:42:56
[2026-10-28 14:42:56,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:42:57,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:42:57,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:42:57,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:42:57,528.528 INFO    ] time= 28/10/2026 14:42:57
[2026-10-28 14:42:57,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:42:57,563.563 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:42:57,704.704 INFO    ] No existing commands found in stream
[2026-10-28 14:43:02,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:43:02,732.732 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-10-28 14:43:06,110.110 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:43:06,113.113 INFO    ] Checking for system updates...
[2026-10-28 14:43:06,149.149 INFO    ] 200
[2026-10-28 14:43:06,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:43:06,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:43:06,211.211 INFO    ] No update needed
[2026-10-28 14:43:06,213.213 INFO    ] Checking for camera pi updates...
[2026-10-28 14:43:06,251.251 INFO    ] 200
[2026-10-28 14:43:06,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:43:06,294.294 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:43:06,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:43:06,367.367 INFO    ] No camera update needed
[2026-10-28 14:43:06,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:43:06,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:43:06,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:43:06,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:43:08,424.424 INFO    ] ================================================
[2026-10-28 14:43:08,440.440 INFO    ] Launching Daemon at Wed Oct 28 14:43:08 IST 2026
[2026-10-28 14:43:08,450.450 INFO    ] ================================================
[2026-10-28 14:43:09,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:43:09
[2026-10-28 14:43:09,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:43:10,117.117 INFO    ] Initializing speech engine...
[2026-10-28 14:43:10,125.125 INFO    ] 2026-10-28 14:43:10
[2026-10-28 14:43:10,407.407 INFO    ] 2026-10-28 14:43:10
[2026-10-28 14:43:10,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:43:10,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:43:10,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:43:10,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:43:11,018.018 INFO    ] time= 28/10/2026 14:43:10
[2026-10-28 14:43:11,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:43:11,079.079 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:43:11,232.232 INFO    ] No existing commands found in stream
[2026-10-28 14:43:16,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:43:16,264.264 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-28 14:43:18,310.310 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:43:18,313.313 INFO    ] Checking for system updates...
[2026-10-28 14:43:18,353.353 INFO    ] 200
[2026-10-28 14:43:18,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:43:18,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:43:18,412.412 INFO    ] No update needed
[2026-10-28 14:43:18,415.415 INFO    ] Checking for camera pi updates...
[2026-10-28 14:43:18,453.453 INFO    ] 200
[2026-10-28 14:43:18,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:43:18,502.502 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:43:18,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:43:18,582.582 INFO    ] No camera update needed
[2026-10-28 14:43:18,584.584 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:43:18,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:43:18,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:43:18,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:43:20,638.638 INFO    ] ================================================
[2026-10-28 14:43:20,653.653 INFO    ] Launching Daemon at Wed Oct 28 14:43:20 IST 2026
[2026-10-28 14:43:20,663.663 INFO    ] ================================================
[2026-10-28 14:43:21,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:43:21
[2026-10-28 14:43:21,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:43:22,066.066 INFO    ] Initializing speech engine...
[2026-10-28 14:43:22,075.075 INFO    ] 2026-10-28 14:43:22
[2026-10-28 14:43:22,373.373 INFO    ] 2026-10-28 14:43:22
[2026-10-28 14:43:22,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:43:22,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:43:22,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:43:22,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:43:23,004.004 INFO    ] time= 28/10/2026 14:43:22
[2026-10-28 14:43:23,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:43:23,034.034 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:43:23,168.168 INFO    ] No existing commands found in stream
[2026-10-28 14:43:28,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:43:28,191.191 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 14:43:30,504.504 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:43:30,507.507 INFO    ] Checking for system updates...
[2026-10-28 14:43:30,544.544 INFO    ] 200
[2026-10-28 14:43:30,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:43:30,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:43:30,603.603 INFO    ] No update needed
[2026-10-28 14:43:30,606.606 INFO    ] Checking for camera pi updates...
[2026-10-28 14:43:30,642.642 INFO    ] 200
[2026-10-28 14:43:30,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:43:30,686.686 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:43:30,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:43:30,779.779 INFO    ] No camera update needed
[2026-10-28 14:43:30,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:43:30,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:43:30,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:43:30,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:43:32,843.843 INFO    ] ================================================
[2026-10-28 14:43:32,858.858 INFO    ] Launching Daemon at Wed Oct 28 14:43:32 IST 2026
[2026-10-28 14:43:32,868.868 INFO    ] ================================================
[2026-10-28 14:43:33,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:43:33
[2026-10-28 14:43:34,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:43:34,537.537 INFO    ] Initializing speech engine...
[2026-10-28 14:43:34,549.549 INFO    ] 2026-10-28 14:43:34
[2026-10-28 14:43:34,866.866 INFO    ] 2026-10-28 14:43:34
[2026-10-28 14:43:34,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:43:35,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:43:35,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:43:35,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:43:35,633.633 INFO    ] time= 28/10/2026 14:43:35
[2026-10-28 14:43:35,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:43:35,755.755 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:43:35,945.945 INFO    ] No existing commands found in stream
[2026-10-28 14:43:40,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:43:40,979.979 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-28 14:43:41,905.905 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:43:41,908.908 INFO    ] Checking for system updates...
[2026-10-28 14:43:41,946.946 INFO    ] 200
[2026-10-28 14:43:41,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:43:42,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:43:42,005.005 INFO    ] No update needed
[2026-10-28 14:43:42,008.008 INFO    ] Checking for camera pi updates...
[2026-10-28 14:43:42,043.043 INFO    ] 200
[2026-10-28 14:43:42,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:43:42,094.094 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:43:42,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:43:42,163.163 INFO    ] No camera update needed
[2026-10-28 14:43:42,167.167 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:43:42,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:43:42,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:43:42,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:43:44,223.223 INFO    ] ================================================
[2026-10-28 14:43:44,238.238 INFO    ] Launching Daemon at Wed Oct 28 14:43:44 IST 2026
[2026-10-28 14:43:44,249.249 INFO    ] ================================================
[2026-10-28 14:43:44,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:43:44
[2026-10-28 14:43:45,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:43:45,908.908 INFO    ] Initializing speech engine...
[2026-10-28 14:43:45,916.916 INFO    ] 2026-10-28 14:43:45
[2026-10-28 14:43:46,206.206 INFO    ] 2026-10-28 14:43:46
[2026-10-28 14:43:46,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:43:46,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:43:46,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:43:46,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:43:46,947.947 INFO    ] time= 28/10/2026 14:43:46
[2026-10-28 14:43:46,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:43:47,050.050 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:43:47,267.267 INFO    ] No existing commands found in stream
[2026-10-28 14:43:52,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:43:52,302.302 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-28 14:43:55,953.953 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:43:55,956.956 INFO    ] Checking for system updates...
[2026-10-28 14:43:55,993.993 INFO    ] 200
[2026-10-28 14:43:55,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:43:56,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:43:56,061.061 INFO    ] No update needed
[2026-10-28 14:43:56,064.064 INFO    ] Checking for camera pi updates...
[2026-10-28 14:43:56,099.099 INFO    ] 200
[2026-10-28 14:43:56,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:43:56,157.157 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:43:56,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:43:56,252.252 INFO    ] No camera update needed
[2026-10-28 14:43:56,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:43:56,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:43:56,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:43:56,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:43:58,312.312 INFO    ] ================================================
[2026-10-28 14:43:58,327.327 INFO    ] Launching Daemon at Wed Oct 28 14:43:58 IST 2026
[2026-10-28 14:43:58,338.338 INFO    ] ================================================
[2026-10-28 14:43:59,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:43:59
[2026-10-28 14:43:59,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:44:00,023.023 INFO    ] Initializing speech engine...
[2026-10-28 14:44:00,031.031 INFO    ] 2026-10-28 14:44:00
[2026-10-28 14:44:00,312.312 INFO    ] 2026-10-28 14:44:00
[2026-10-28 14:44:00,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:44:00,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:44:00,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:44:00,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:44:00,915.915 INFO    ] time= 28/10/2026 14:44:00
[2026-10-28 14:44:00,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:44:00,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:44:01,080.080 INFO    ] No existing commands found in stream
[2026-10-28 14:44:06,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:44:06,109.109 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 14:44:09,784.784 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:44:09,787.787 INFO    ] Checking for system updates...
[2026-10-28 14:44:09,829.829 INFO    ] 200
[2026-10-28 14:44:09,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:44:09,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:44:09,894.894 INFO    ] No update needed
[2026-10-28 14:44:09,897.897 INFO    ] Checking for camera pi updates...
[2026-10-28 14:44:09,932.932 INFO    ] 200
[2026-10-28 14:44:09,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:44:09,976.976 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:44:10,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:44:10,069.069 INFO    ] No camera update needed
[2026-10-28 14:44:10,072.072 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:44:10,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:44:10,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:44:10,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:44:12,128.128 INFO    ] ================================================
[2026-10-28 14:44:12,143.143 INFO    ] Launching Daemon at Wed Oct 28 14:44:12 IST 2026
[2026-10-28 14:44:12,154.154 INFO    ] ================================================
[2026-10-28 14:44:12,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:44:12
[2026-10-28 14:44:13,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:44:13,702.702 INFO    ] Initializing speech engine...
[2026-10-28 14:44:13,715.715 INFO    ] 2026-10-28 14:44:13
[2026-10-28 14:44:13,964.964 INFO    ] 2026-10-28 14:44:13
[2026-10-28 14:44:13,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:44:14,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:44:14,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:44:14,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:44:14,531.531 INFO    ] time= 28/10/2026 14:44:14
[2026-10-28 14:44:14,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:44:14,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:44:14,752.752 INFO    ] No existing commands found in stream
[2026-10-28 14:44:19,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:44:19,779.779 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 14:44:22,307.307 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:44:22,309.309 INFO    ] Checking for system updates...
[2026-10-28 14:44:22,344.344 INFO    ] 200
[2026-10-28 14:44:22,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:44:22,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:44:22,402.402 INFO    ] No update needed
[2026-10-28 14:44:22,404.404 INFO    ] Checking for camera pi updates...
[2026-10-28 14:44:22,438.438 INFO    ] 200
[2026-10-28 14:44:22,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:44:22,480.480 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:44:22,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:44:22,572.572 INFO    ] No camera update needed
[2026-10-28 14:44:22,574.574 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:44:22,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:44:22,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:44:22,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:44:24,629.629 INFO    ] ================================================
[2026-10-28 14:44:24,644.644 INFO    ] Launching Daemon at Wed Oct 28 14:44:24 IST 2026
[2026-10-28 14:44:24,655.655 INFO    ] ================================================
[2026-10-28 14:44:25,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:44:25
[2026-10-28 14:44:25,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:44:26,256.256 INFO    ] Initializing speech engine...
[2026-10-28 14:44:26,273.273 INFO    ] 2026-10-28 14:44:26
[2026-10-28 14:44:26,588.588 INFO    ] 2026-10-28 14:44:26
[2026-10-28 14:44:26,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:44:26,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:44:27,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:44:27,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:44:27,320.320 INFO    ] time= 28/10/2026 14:44:27
[2026-10-28 14:44:27,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:44:27,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:44:27,539.539 INFO    ] No existing commands found in stream
[2026-10-28 14:44:32,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:44:32,556.556 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 14:44:34,354.354 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:44:34,358.358 INFO    ] Checking for system updates...
[2026-10-28 14:44:34,394.394 INFO    ] 200
[2026-10-28 14:44:34,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:44:34,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:44:34,453.453 INFO    ] No update needed
[2026-10-28 14:44:34,456.456 INFO    ] Checking for camera pi updates...
[2026-10-28 14:44:34,489.489 INFO    ] 200
[2026-10-28 14:44:34,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:44:34,538.538 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:44:34,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:44:34,622.622 INFO    ] No camera update needed
[2026-10-28 14:44:34,625.625 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:44:34,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:44:34,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:44:34,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:44:36,680.680 INFO    ] ================================================
[2026-10-28 14:44:36,696.696 INFO    ] Launching Daemon at Wed Oct 28 14:44:36 IST 2026
[2026-10-28 14:44:36,707.707 INFO    ] ================================================
[2026-10-28 14:44:37,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:44:37
[2026-10-28 14:44:37,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:44:38,116.116 INFO    ] Initializing speech engine...
[2026-10-28 14:44:38,122.122 INFO    ] 2026-10-28 14:44:38
[2026-10-28 14:44:38,418.418 INFO    ] 2026-10-28 14:44:38
[2026-10-28 14:44:38,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:44:38,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:44:38,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:44:39,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:44:39,008.008 INFO    ] time= 28/10/2026 14:44:39
[2026-10-28 14:44:39,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:44:39,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:44:39,224.224 INFO    ] No existing commands found in stream
[2026-10-28 14:44:44,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:44:44,258.258 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 14:44:46,059.059 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:44:46,061.061 INFO    ] Checking for system updates...
[2026-10-28 14:44:46,097.097 INFO    ] 200
[2026-10-28 14:44:46,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:44:46,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:44:46,162.162 INFO    ] No update needed
[2026-10-28 14:44:46,164.164 INFO    ] Checking for camera pi updates...
[2026-10-28 14:44:46,198.198 INFO    ] 200
[2026-10-28 14:44:46,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:44:46,242.242 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:44:46,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:44:46,424.424 INFO    ] No camera update needed
[2026-10-28 14:44:46,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:44:46,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:44:46,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:44:46,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:44:48,478.478 INFO    ] ================================================
[2026-10-28 14:44:48,493.493 INFO    ] Launching Daemon at Wed Oct 28 14:44:48 IST 2026
[2026-10-28 14:44:48,503.503 INFO    ] ================================================
[2026-10-28 14:44:49,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:44:49
[2026-10-28 14:44:49,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:44:49,914.914 INFO    ] Initializing speech engine...
[2026-10-28 14:44:49,920.920 INFO    ] 2026-10-28 14:44:49
[2026-10-28 14:44:50,219.219 INFO    ] 2026-10-28 14:44:50
[2026-10-28 14:44:50,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:44:50,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:44:50,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:44:50,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:44:50,851.851 INFO    ] time= 28/10/2026 14:44:50
[2026-10-28 14:44:50,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:44:50,875.875 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:44:51,004.004 INFO    ] No existing commands found in stream
[2026-10-28 14:44:56,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:44:56,023.023 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 14:45:00,145.145 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:45:00,148.148 INFO    ] Checking for system updates...
[2026-10-28 14:45:00,184.184 INFO    ] 200
[2026-10-28 14:45:00,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:45:00,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:45:00,249.249 INFO    ] No update needed
[2026-10-28 14:45:00,251.251 INFO    ] Checking for camera pi updates...
[2026-10-28 14:45:00,286.286 INFO    ] 200
[2026-10-28 14:45:00,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:45:00,333.333 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:45:00,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:45:00,420.420 INFO    ] No camera update needed
[2026-10-28 14:45:00,422.422 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:45:00,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:45:00,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:45:00,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:45:02,493.493 INFO    ] ================================================
[2026-10-28 14:45:02,516.516 INFO    ] Launching Daemon at Wed Oct 28 14:45:02 IST 2026
[2026-10-28 14:45:02,532.532 INFO    ] ================================================
[2026-10-28 14:45:03,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:45:03
[2026-10-28 14:45:03,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:45:04,229.229 INFO    ] Initializing speech engine...
[2026-10-28 14:45:04,236.236 INFO    ] 2026-10-28 14:45:04
[2026-10-28 14:45:04,494.494 INFO    ] 2026-10-28 14:45:04
[2026-10-28 14:45:04,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:45:04,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:45:04,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:45:05,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:45:05,051.051 INFO    ] time= 28/10/2026 14:45:05
[2026-10-28 14:45:05,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:45:05,090.090 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:45:05,269.269 INFO    ] No existing commands found in stream
[2026-10-28 14:45:10,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:45:10,299.299 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-28 14:45:14,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:45:14,746.746 INFO    ] Checking for system updates...
[2026-10-28 14:45:14,787.787 INFO    ] 200
[2026-10-28 14:45:14,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:45:14,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:45:14,860.860 INFO    ] No update needed
[2026-10-28 14:45:14,863.863 INFO    ] Checking for camera pi updates...
[2026-10-28 14:45:14,900.900 INFO    ] 200
[2026-10-28 14:45:14,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:45:14,949.949 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:45:15,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:45:15,057.057 INFO    ] No camera update needed
[2026-10-28 14:45:15,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:45:15,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:45:15,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:45:15,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:45:17,118.118 INFO    ] ================================================
[2026-10-28 14:45:17,133.133 INFO    ] Launching Daemon at Wed Oct 28 14:45:17 IST 2026
[2026-10-28 14:45:17,144.144 INFO    ] ================================================
[2026-10-28 14:45:17,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:45:17
[2026-10-28 14:45:18,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:45:18,550.550 INFO    ] Initializing speech engine...
[2026-10-28 14:45:18,573.573 INFO    ] 2026-10-28 14:45:18
[2026-10-28 14:45:18,832.832 INFO    ] 2026-10-28 14:45:18
[2026-10-28 14:45:18,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:45:19,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:45:19,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:45:19,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:45:19,632.632 INFO    ] time= 28/10/2026 14:45:19
[2026-10-28 14:45:19,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:45:19,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:45:20,054.054 INFO    ] No existing commands found in stream
[2026-10-28 14:45:25,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:45:25,071.071 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-28 14:45:25,865.865 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:45:25,868.868 INFO    ] Checking for system updates...
[2026-10-28 14:45:25,904.904 INFO    ] 200
[2026-10-28 14:45:25,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:45:25,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:45:25,961.961 INFO    ] No update needed
[2026-10-28 14:45:25,968.968 INFO    ] Checking for camera pi updates...
[2026-10-28 14:45:26,001.001 INFO    ] 200
[2026-10-28 14:45:26,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:45:26,045.045 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:45:26,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:45:26,136.136 INFO    ] No camera update needed
[2026-10-28 14:45:26,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:45:26,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:45:26,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:45:26,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:45:28,192.192 INFO    ] ================================================
[2026-10-28 14:45:28,207.207 INFO    ] Launching Daemon at Wed Oct 28 14:45:28 IST 2026
[2026-10-28 14:45:28,218.218 INFO    ] ================================================
[2026-10-28 14:45:28,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:45:28
[2026-10-28 14:45:29,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:45:29,669.669 INFO    ] Initializing speech engine...
[2026-10-28 14:45:29,679.679 INFO    ] 2026-10-28 14:45:29
[2026-10-28 14:45:29,927.927 INFO    ] 2026-10-28 14:45:29
[2026-10-28 14:45:29,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:45:30,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:45:30,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:45:30,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:45:30,489.489 INFO    ] time= 28/10/2026 14:45:30
[2026-10-28 14:45:30,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:45:30,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:45:30,642.642 INFO    ] No existing commands found in stream
[2026-10-28 14:45:35,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:45:35,662.662 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-28 14:45:36,367.367 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:45:36,370.370 INFO    ] Checking for system updates...
[2026-10-28 14:45:36,405.405 INFO    ] 200
[2026-10-28 14:45:36,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:45:36,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:45:36,463.463 INFO    ] No update needed
[2026-10-28 14:45:36,465.465 INFO    ] Checking for camera pi updates...
[2026-10-28 14:45:36,500.500 INFO    ] 200
[2026-10-28 14:45:36,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:45:36,547.547 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:45:36,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:45:36,631.631 INFO    ] No camera update needed
[2026-10-28 14:45:36,633.633 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:45:36,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:45:36,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:45:36,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:45:38,711.711 INFO    ] ================================================
[2026-10-28 14:45:38,727.727 INFO    ] Launching Daemon at Wed Oct 28 14:45:38 IST 2026
[2026-10-28 14:45:38,738.738 INFO    ] ================================================
[2026-10-28 14:45:39,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:45:39
[2026-10-28 14:45:39,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:45:40,197.197 INFO    ] Initializing speech engine...
[2026-10-28 14:45:40,208.208 INFO    ] 2026-10-28 14:45:40
[2026-10-28 14:45:40,466.466 INFO    ] 2026-10-28 14:45:40
[2026-10-28 14:45:40,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:45:40,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:45:40,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:45:41,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:45:41,248.248 INFO    ] time= 28/10/2026 14:45:41
[2026-10-28 14:45:41,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:45:41,361.361 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:45:41,572.572 INFO    ] No existing commands found in stream
[2026-10-28 14:45:46,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:45:46,588.588 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-28 14:45:48,225.225 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:45:48,228.228 INFO    ] Checking for system updates...
[2026-10-28 14:45:48,263.263 INFO    ] 200
[2026-10-28 14:45:48,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:45:48,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:45:48,320.320 INFO    ] No update needed
[2026-10-28 14:45:48,322.322 INFO    ] Checking for camera pi updates...
[2026-10-28 14:45:48,356.356 INFO    ] 200
[2026-10-28 14:45:48,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:45:48,404.404 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:45:48,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:45:48,495.495 INFO    ] No camera update needed
[2026-10-28 14:45:48,498.498 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:45:48,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:45:48,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:45:48,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:45:50,552.552 INFO    ] ================================================
[2026-10-28 14:45:50,568.568 INFO    ] Launching Daemon at Wed Oct 28 14:45:50 IST 2026
[2026-10-28 14:45:50,579.579 INFO    ] ================================================
[2026-10-28 14:45:51,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:45:51
[2026-10-28 14:45:51,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:45:52,020.020 INFO    ] Initializing speech engine...
[2026-10-28 14:45:52,032.032 INFO    ] 2026-10-28 14:45:52
[2026-10-28 14:45:52,320.320 INFO    ] 2026-10-28 14:45:52
[2026-10-28 14:45:52,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:45:52,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:45:52,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:45:52,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:45:52,962.962 INFO    ] time= 28/10/2026 14:45:52
[2026-10-28 14:45:52,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:45:52,990.990 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:45:53,135.135 INFO    ] No existing commands found in stream
[2026-10-28 14:45:58,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:45:58,152.152 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-28 14:46:00,102.102 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:46:00,105.105 INFO    ] Checking for system updates...
[2026-10-28 14:46:00,140.140 INFO    ] 200
[2026-10-28 14:46:00,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:46:00,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:46:00,197.197 INFO    ] No update needed
[2026-10-28 14:46:00,200.200 INFO    ] Checking for camera pi updates...
[2026-10-28 14:46:00,233.233 INFO    ] 200
[2026-10-28 14:46:00,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:46:00,276.276 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:46:00,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:46:00,361.361 INFO    ] No camera update needed
[2026-10-28 14:46:00,363.363 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:46:00,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:46:00,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:46:00,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:46:02,440.440 INFO    ] ================================================
[2026-10-28 14:46:02,464.464 INFO    ] Launching Daemon at Wed Oct 28 14:46:02 IST 2026
[2026-10-28 14:46:02,478.478 INFO    ] ================================================
[2026-10-28 14:46:03,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:46:03
[2026-10-28 14:46:03,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:46:04,028.028 INFO    ] Initializing speech engine...
[2026-10-28 14:46:04,037.037 INFO    ] 2026-10-28 14:46:04
[2026-10-28 14:46:04,330.330 INFO    ] 2026-10-28 14:46:04
[2026-10-28 14:46:04,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:46:04,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:46:04,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:46:04,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:46:04,953.953 INFO    ] time= 28/10/2026 14:46:04
[2026-10-28 14:46:04,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:46:04,980.980 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:46:05,129.129 INFO    ] No existing commands found in stream
[2026-10-28 14:46:10,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:46:10,156.156 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-28 14:46:13,581.581 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:46:13,584.584 INFO    ] Checking for system updates...
[2026-10-28 14:46:13,622.622 INFO    ] 200
[2026-10-28 14:46:13,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:46:13,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:46:13,679.679 INFO    ] No update needed
[2026-10-28 14:46:13,682.682 INFO    ] Checking for camera pi updates...
[2026-10-28 14:46:13,720.720 INFO    ] 200
[2026-10-28 14:46:13,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:46:13,763.763 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:46:13,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:46:13,821.821 INFO    ] No camera update needed
[2026-10-28 14:46:13,824.824 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:46:13,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:46:13,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:46:13,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:46:15,880.880 INFO    ] ================================================
[2026-10-28 14:46:15,895.895 INFO    ] Launching Daemon at Wed Oct 28 14:46:15 IST 2026
[2026-10-28 14:46:15,906.906 INFO    ] ================================================
[2026-10-28 14:46:16,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:46:16
[2026-10-28 14:46:17,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:46:17,318.318 INFO    ] Initializing speech engine...
[2026-10-28 14:46:17,323.323 INFO    ] 2026-10-28 14:46:17
[2026-10-28 14:46:17,615.615 INFO    ] 2026-10-28 14:46:17
[2026-10-28 14:46:17,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:46:17,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:46:17,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:46:18,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:46:18,232.232 INFO    ] time= 28/10/2026 14:46:18
[2026-10-28 14:46:18,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:46:18,254.254 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:46:18,406.406 INFO    ] No existing commands found in stream
[2026-10-28 14:46:23,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:46:23,429.429 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 14:46:25,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:46:25,745.745 INFO    ] Checking for system updates...
[2026-10-28 14:46:25,780.780 INFO    ] 200
[2026-10-28 14:46:25,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:46:25,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:46:25,837.837 INFO    ] No update needed
[2026-10-28 14:46:25,839.839 INFO    ] Checking for camera pi updates...
[2026-10-28 14:46:25,880.880 INFO    ] 200
[2026-10-28 14:46:25,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:46:25,927.927 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:46:26,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:46:26,031.031 INFO    ] No camera update needed
[2026-10-28 14:46:26,033.033 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:46:26,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:46:26,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:46:26,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:46:28,086.086 INFO    ] ================================================
[2026-10-28 14:46:28,102.102 INFO    ] Launching Daemon at Wed Oct 28 14:46:28 IST 2026
[2026-10-28 14:46:28,114.114 INFO    ] ================================================
[2026-10-28 14:46:28,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:46:28
[2026-10-28 14:46:29,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:46:29,558.558 INFO    ] Initializing speech engine...
[2026-10-28 14:46:29,577.577 INFO    ] 2026-10-28 14:46:29
[2026-10-28 14:46:29,829.829 INFO    ] 2026-10-28 14:46:29
[2026-10-28 14:46:29,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:46:30,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:46:30,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:46:30,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:46:30,398.398 INFO    ] time= 28/10/2026 14:46:30
[2026-10-28 14:46:30,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:46:30,423.423 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:46:30,554.554 INFO    ] No existing commands found in stream
[2026-10-28 14:46:35,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:46:35,569.569 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-28 14:46:40,023.023 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:46:40,026.026 INFO    ] Checking for system updates...
[2026-10-28 14:46:40,065.065 INFO    ] 200
[2026-10-28 14:46:40,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:46:40,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:46:40,134.134 INFO    ] No update needed
[2026-10-28 14:46:40,137.137 INFO    ] Checking for camera pi updates...
[2026-10-28 14:46:40,175.175 INFO    ] 200
[2026-10-28 14:46:40,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:46:40,223.223 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:46:40,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:46:40,307.307 INFO    ] No camera update needed
[2026-10-28 14:46:40,310.310 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:46:40,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:46:40,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:46:40,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:46:42,366.366 INFO    ] ================================================
[2026-10-28 14:46:42,382.382 INFO    ] Launching Daemon at Wed Oct 28 14:46:42 IST 2026
[2026-10-28 14:46:42,394.394 INFO    ] ================================================
[2026-10-28 14:46:43,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:46:43
[2026-10-28 14:46:43,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:46:43,975.975 INFO    ] Initializing speech engine...
[2026-10-28 14:46:43,982.982 INFO    ] 2026-10-28 14:46:43
[2026-10-28 14:46:44,254.254 INFO    ] 2026-10-28 14:46:44
[2026-10-28 14:46:44,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:46:44,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:46:44,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:46:44,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:46:44,868.868 INFO    ] time= 28/10/2026 14:46:44
[2026-10-28 14:46:44,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:46:44,924.924 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:46:45,082.082 INFO    ] No existing commands found in stream
[2026-10-28 14:46:50,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:46:50,110.110 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-28 14:46:51,286.286 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:46:51,289.289 INFO    ] Checking for system updates...
[2026-10-28 14:46:51,325.325 INFO    ] 200
[2026-10-28 14:46:51,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:46:51,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:46:51,388.388 INFO    ] No update needed
[2026-10-28 14:46:51,391.391 INFO    ] Checking for camera pi updates...
[2026-10-28 14:46:51,428.428 INFO    ] 200
[2026-10-28 14:46:51,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:46:51,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:46:51,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:46:51,650.650 INFO    ] No camera update needed
[2026-10-28 14:46:51,652.652 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:46:51,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:46:51,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:46:51,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:46:53,707.707 INFO    ] ================================================
[2026-10-28 14:46:53,723.723 INFO    ] Launching Daemon at Wed Oct 28 14:46:53 IST 2026
[2026-10-28 14:46:53,734.734 INFO    ] ================================================
[2026-10-28 14:46:54,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:46:54
[2026-10-28 14:46:55,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:46:55,309.309 INFO    ] Initializing speech engine...
[2026-10-28 14:46:55,318.318 INFO    ] 2026-10-28 14:46:55
[2026-10-28 14:46:55,586.586 INFO    ] 2026-10-28 14:46:55
[2026-10-28 14:46:55,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:46:55,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:46:55,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:46:56,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:46:56,163.163 INFO    ] time= 28/10/2026 14:46:56
[2026-10-28 14:46:56,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:46:56,201.201 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:46:56,324.324 INFO    ] No existing commands found in stream
[2026-10-28 14:47:01,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:47:01,350.350 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-28 14:47:05,621.621 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:47:05,624.624 INFO    ] Checking for system updates...
[2026-10-28 14:47:05,663.663 INFO    ] 200
[2026-10-28 14:47:05,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:47:05,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:47:05,722.722 INFO    ] No update needed
[2026-10-28 14:47:05,726.726 INFO    ] Checking for camera pi updates...
[2026-10-28 14:47:05,761.761 INFO    ] 200
[2026-10-28 14:47:05,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:47:05,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:47:05,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:47:05,895.895 INFO    ] No camera update needed
[2026-10-28 14:47:05,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:47:05,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:47:05,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:47:05,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:47:07,954.954 INFO    ] ================================================
[2026-10-28 14:47:07,970.970 INFO    ] Launching Daemon at Wed Oct 28 14:47:07 IST 2026
[2026-10-28 14:47:07,981.981 INFO    ] ================================================
[2026-10-28 14:47:08,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:47:08
[2026-10-28 14:47:09,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:47:09,442.442 INFO    ] Initializing speech engine...
[2026-10-28 14:47:09,462.462 INFO    ] 2026-10-28 14:47:09
[2026-10-28 14:47:09,729.729 INFO    ] 2026-10-28 14:47:09
[2026-10-28 14:47:09,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:47:10,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:47:10,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:47:10,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:47:10,348.348 INFO    ] time= 28/10/2026 14:47:10
[2026-10-28 14:47:10,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:47:10,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:47:10,531.531 INFO    ] No existing commands found in stream
[2026-10-28 14:47:15,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:47:15,561.561 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-28 14:47:18,585.585 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:47:18,588.588 INFO    ] Checking for system updates...
[2026-10-28 14:47:18,627.627 INFO    ] 200
[2026-10-28 14:47:18,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:47:18,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:47:18,704.704 INFO    ] No update needed
[2026-10-28 14:47:18,707.707 INFO    ] Checking for camera pi updates...
[2026-10-28 14:47:18,743.743 INFO    ] 200
[2026-10-28 14:47:18,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:47:18,795.795 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:47:18,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:47:18,885.885 INFO    ] No camera update needed
[2026-10-28 14:47:18,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:47:18,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:47:18,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:47:18,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:47:20,945.945 INFO    ] ================================================
[2026-10-28 14:47:20,961.961 INFO    ] Launching Daemon at Wed Oct 28 14:47:20 IST 2026
[2026-10-28 14:47:20,971.971 INFO    ] ================================================
[2026-10-28 14:47:21,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:47:21
[2026-10-28 14:47:22,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:47:22,425.425 INFO    ] Initializing speech engine...
[2026-10-28 14:47:22,443.443 INFO    ] 2026-10-28 14:47:22
[2026-10-28 14:47:22,711.711 INFO    ] 2026-10-28 14:47:22
[2026-10-28 14:47:22,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:47:23,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:47:23,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:47:23,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:47:23,337.337 INFO    ] time= 28/10/2026 14:47:23
[2026-10-28 14:47:23,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:47:23,364.364 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:47:23,552.552 INFO    ] No existing commands found in stream
[2026-10-28 14:47:28,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:47:28,580.580 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-28 14:47:32,141.141 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:47:32,144.144 INFO    ] Checking for system updates...
[2026-10-28 14:47:32,190.190 INFO    ] 200
[2026-10-28 14:47:32,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:47:32,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:47:32,265.265 INFO    ] No update needed
[2026-10-28 14:47:32,268.268 INFO    ] Checking for camera pi updates...
[2026-10-28 14:47:32,308.308 INFO    ] 200
[2026-10-28 14:47:32,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:47:32,355.355 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:47:32,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:47:32,457.457 INFO    ] No camera update needed
[2026-10-28 14:47:32,460.460 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:47:32,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:47:32,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:47:32,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:47:34,515.515 INFO    ] ================================================
[2026-10-28 14:47:34,531.531 INFO    ] Launching Daemon at Wed Oct 28 14:47:34 IST 2026
[2026-10-28 14:47:34,542.542 INFO    ] ================================================
[2026-10-28 14:47:35,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:47:35
[2026-10-28 14:47:35,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:47:36,084.084 INFO    ] Initializing speech engine...
[2026-10-28 14:47:36,098.098 INFO    ] 2026-10-28 14:47:36
[2026-10-28 14:47:36,410.410 INFO    ] 2026-10-28 14:47:36
[2026-10-28 14:47:36,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:47:36,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:47:36,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:47:36,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:47:36,931.931 INFO    ] time= 28/10/2026 14:47:36
[2026-10-28 14:47:36,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:47:36,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:47:37,127.127 INFO    ] No existing commands found in stream
[2026-10-28 14:47:42,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:47:42,156.156 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 14:47:44,792.792 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:47:44,796.796 INFO    ] Checking for system updates...
[2026-10-28 14:47:44,832.832 INFO    ] 200
[2026-10-28 14:47:44,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:47:44,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:47:44,891.891 INFO    ] No update needed
[2026-10-28 14:47:44,894.894 INFO    ] Checking for camera pi updates...
[2026-10-28 14:47:44,929.929 INFO    ] 200
[2026-10-28 14:47:44,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:47:44,978.978 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:47:45,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:47:45,072.072 INFO    ] No camera update needed
[2026-10-28 14:47:45,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:47:45,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:47:45,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:47:45,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:47:47,132.132 INFO    ] ================================================
[2026-10-28 14:47:47,148.148 INFO    ] Launching Daemon at Wed Oct 28 14:47:47 IST 2026
[2026-10-28 14:47:47,160.160 INFO    ] ================================================
[2026-10-28 14:47:47,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:47:47
[2026-10-28 14:47:48,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:47:48,802.802 INFO    ] Initializing speech engine...
[2026-10-28 14:47:48,816.816 INFO    ] 2026-10-28 14:47:48
[2026-10-28 14:47:49,129.129 INFO    ] 2026-10-28 14:47:49
[2026-10-28 14:47:49,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:47:49,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:47:49,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:47:49,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:47:49,897.897 INFO    ] time= 28/10/2026 14:47:49
[2026-10-28 14:47:49,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:47:50,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:47:50,179.179 INFO    ] No existing commands found in stream
[2026-10-28 14:47:55,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:47:55,212.212 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-28 14:47:57,706.706 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:47:57,709.709 INFO    ] Checking for system updates...
[2026-10-28 14:47:57,751.751 INFO    ] 200
[2026-10-28 14:47:57,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:47:57,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:47:57,810.810 INFO    ] No update needed
[2026-10-28 14:47:57,813.813 INFO    ] Checking for camera pi updates...
[2026-10-28 14:47:57,847.847 INFO    ] 200
[2026-10-28 14:47:57,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:47:57,891.891 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:47:57,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:47:57,987.987 INFO    ] No camera update needed
[2026-10-28 14:47:57,990.990 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:47:57,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:47:57,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:47:58,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:48:00,045.045 INFO    ] ================================================
[2026-10-28 14:48:00,061.061 INFO    ] Launching Daemon at Wed Oct 28 14:48:00 IST 2026
[2026-10-28 14:48:00,073.073 INFO    ] ================================================
[2026-10-28 14:48:00,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:48:00
[2026-10-28 14:48:01,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:48:02,010.010 INFO    ] Initializing speech engine...
[2026-10-28 14:48:02,017.017 INFO    ] 2026-10-28 14:48:02
[2026-10-28 14:48:02,433.433 INFO    ] 2026-10-28 14:48:02
[2026-10-28 14:48:02,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:48:02,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:48:02,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:48:03,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:48:03,099.099 INFO    ] time= 28/10/2026 14:48:03
[2026-10-28 14:48:03,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:48:03,141.141 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:48:03,320.320 INFO    ] No existing commands found in stream
[2026-10-28 14:48:08,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:48:08,355.355 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 14:48:11,919.919 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:48:11,921.921 INFO    ] Checking for system updates...
[2026-10-28 14:48:11,956.956 INFO    ] 200
[2026-10-28 14:48:11,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:48:12,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:48:12,022.022 INFO    ] No update needed
[2026-10-28 14:48:12,024.024 INFO    ] Checking for camera pi updates...
[2026-10-28 14:48:12,058.058 INFO    ] 200
[2026-10-28 14:48:12,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:48:12,101.101 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:48:12,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:48:12,184.184 INFO    ] No camera update needed
[2026-10-28 14:48:12,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:48:12,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:48:12,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:48:12,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:48:14,238.238 INFO    ] ================================================
[2026-10-28 14:48:14,253.253 INFO    ] Launching Daemon at Wed Oct 28 14:48:14 IST 2026
[2026-10-28 14:48:14,264.264 INFO    ] ================================================
[2026-10-28 14:48:14,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:48:14
[2026-10-28 14:48:15,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:48:15,733.733 INFO    ] Initializing speech engine...
[2026-10-28 14:48:15,749.749 INFO    ] 2026-10-28 14:48:15
[2026-10-28 14:48:16,006.006 INFO    ] 2026-10-28 14:48:15
[2026-10-28 14:48:16,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:48:16,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:48:16,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:48:16,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:48:16,576.576 INFO    ] time= 28/10/2026 14:48:16
[2026-10-28 14:48:16,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:48:16,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:48:16,736.736 INFO    ] No existing commands found in stream
[2026-10-28 14:48:21,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:48:21,757.757 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-28 14:48:24,341.341 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:48:24,343.343 INFO    ] Checking for system updates...
[2026-10-28 14:48:24,380.380 INFO    ] 200
[2026-10-28 14:48:24,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:48:24,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:48:24,440.440 INFO    ] No update needed
[2026-10-28 14:48:24,442.442 INFO    ] Checking for camera pi updates...
[2026-10-28 14:48:24,475.475 INFO    ] 200
[2026-10-28 14:48:24,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:48:24,518.518 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:48:24,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:48:24,606.606 INFO    ] No camera update needed
[2026-10-28 14:48:24,609.609 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:48:24,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:48:24,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:48:24,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:48:26,666.666 INFO    ] ================================================
[2026-10-28 14:48:26,682.682 INFO    ] Launching Daemon at Wed Oct 28 14:48:26 IST 2026
[2026-10-28 14:48:26,693.693 INFO    ] ================================================
[2026-10-28 14:48:27,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:48:27
[2026-10-28 14:48:27,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:48:28,226.226 INFO    ] Initializing speech engine...
[2026-10-28 14:48:28,234.234 INFO    ] 2026-10-28 14:48:28
[2026-10-28 14:48:28,532.532 INFO    ] 2026-10-28 14:48:28
[2026-10-28 14:48:28,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:48:28,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:48:28,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:48:29,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:48:29,170.170 INFO    ] time= 28/10/2026 14:48:29
[2026-10-28 14:48:29,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:48:29,198.198 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:48:29,343.343 INFO    ] No existing commands found in stream
[2026-10-28 14:48:34,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:48:34,362.362 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-28 14:48:35,379.379 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:48:35,381.381 INFO    ] Checking for system updates...
[2026-10-28 14:48:35,417.417 INFO    ] 200
[2026-10-28 14:48:35,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:48:35,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:48:35,476.476 INFO    ] No update needed
[2026-10-28 14:48:35,478.478 INFO    ] Checking for camera pi updates...
[2026-10-28 14:48:35,515.515 INFO    ] 200
[2026-10-28 14:48:35,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:48:35,563.563 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:48:35,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:48:35,649.649 INFO    ] No camera update needed
[2026-10-28 14:48:35,652.652 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:48:35,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:48:35,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:48:35,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:48:37,705.705 INFO    ] ================================================
[2026-10-28 14:48:37,721.721 INFO    ] Launching Daemon at Wed Oct 28 14:48:37 IST 2026
[2026-10-28 14:48:37,732.732 INFO    ] ================================================
[2026-10-28 14:48:38,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:48:38
[2026-10-28 14:48:39,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:48:39,292.292 INFO    ] Initializing speech engine...
[2026-10-28 14:48:39,298.298 INFO    ] 2026-10-28 14:48:39
[2026-10-28 14:48:39,596.596 INFO    ] 2026-10-28 14:48:39
[2026-10-28 14:48:39,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:48:39,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:48:39,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:48:40,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:48:40,239.239 INFO    ] time= 28/10/2026 14:48:40
[2026-10-28 14:48:40,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:48:40,264.264 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:48:40,413.413 INFO    ] No existing commands found in stream
[2026-10-28 14:48:45,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:48:45,433.433 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-28 14:48:47,834.834 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:48:47,836.836 INFO    ] Checking for system updates...
[2026-10-28 14:48:47,873.873 INFO    ] 200
[2026-10-28 14:48:47,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:48:47,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:48:47,935.935 INFO    ] No update needed
[2026-10-28 14:48:47,937.937 INFO    ] Checking for camera pi updates...
[2026-10-28 14:48:47,971.971 INFO    ] 200
[2026-10-28 14:48:47,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:48:48,015.015 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:48:48,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:48:48,106.106 INFO    ] No camera update needed
[2026-10-28 14:48:48,108.108 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:48:48,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:48:48,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:48:48,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:48:50,161.161 INFO    ] ================================================
[2026-10-28 14:48:50,176.176 INFO    ] Launching Daemon at Wed Oct 28 14:48:50 IST 2026
[2026-10-28 14:48:50,186.186 INFO    ] ================================================
[2026-10-28 14:48:50,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:48:50
[2026-10-28 14:48:51,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:48:51,603.603 INFO    ] Initializing speech engine...
[2026-10-28 14:48:51,609.609 INFO    ] 2026-10-28 14:48:51
[2026-10-28 14:48:51,904.904 INFO    ] 2026-10-28 14:48:51
[2026-10-28 14:48:51,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:48:52,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:48:52,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:48:52,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:48:52,422.422 INFO    ] time= 28/10/2026 14:48:52
[2026-10-28 14:48:52,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:48:52,546.546 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:48:52,684.684 INFO    ] No existing commands found in stream
[2026-10-28 14:48:57,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:48:57,710.710 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-28 14:49:01,144.144 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:49:01,147.147 INFO    ] Checking for system updates...
[2026-10-28 14:49:01,182.182 INFO    ] 200
[2026-10-28 14:49:01,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:49:01,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:49:01,240.240 INFO    ] No update needed
[2026-10-28 14:49:01,242.242 INFO    ] Checking for camera pi updates...
[2026-10-28 14:49:01,275.275 INFO    ] 200
[2026-10-28 14:49:01,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:49:01,317.317 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:49:01,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:49:01,526.526 INFO    ] No camera update needed
[2026-10-28 14:49:01,529.529 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:49:01,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:49:01,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:49:01,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:49:03,586.586 INFO    ] ================================================
[2026-10-28 14:49:03,602.602 INFO    ] Launching Daemon at Wed Oct 28 14:49:03 IST 2026
[2026-10-28 14:49:03,612.612 INFO    ] ================================================
[2026-10-28 14:49:04,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:49:04
[2026-10-28 14:49:04,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:49:05,108.108 INFO    ] Initializing speech engine...
[2026-10-28 14:49:05,115.115 INFO    ] 2026-10-28 14:49:05
[2026-10-28 14:49:05,416.416 INFO    ] 2026-10-28 14:49:05
[2026-10-28 14:49:05,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:49:05,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:49:05,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:49:05,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:49:05,919.919 INFO    ] time= 28/10/2026 14:49:05
[2026-10-28 14:49:05,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:49:06,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:49:06,121.121 INFO    ] No existing commands found in stream
[2026-10-28 14:49:11,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:49:11,136.136 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-28 14:49:12,142.142 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:49:12,145.145 INFO    ] Checking for system updates...
[2026-10-28 14:49:12,181.181 INFO    ] 200
[2026-10-28 14:49:12,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:49:12,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:49:12,238.238 INFO    ] No update needed
[2026-10-28 14:49:12,241.241 INFO    ] Checking for camera pi updates...
[2026-10-28 14:49:12,274.274 INFO    ] 200
[2026-10-28 14:49:12,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:49:12,317.317 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:49:12,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:49:12,399.399 INFO    ] No camera update needed
[2026-10-28 14:49:12,401.401 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:49:12,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:49:12,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:49:12,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:49:14,457.457 INFO    ] ================================================
[2026-10-28 14:49:14,472.472 INFO    ] Launching Daemon at Wed Oct 28 14:49:14 IST 2026
[2026-10-28 14:49:14,483.483 INFO    ] ================================================
[2026-10-28 14:49:15,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:49:15
[2026-10-28 14:49:15,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:49:15,977.977 INFO    ] Initializing speech engine...
[2026-10-28 14:49:15,992.992 INFO    ] 2026-10-28 14:49:15
[2026-10-28 14:49:16,284.284 INFO    ] 2026-10-28 14:49:16
[2026-10-28 14:49:16,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:49:16,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:49:16,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:49:16,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:49:16,926.926 INFO    ] time= 28/10/2026 14:49:16
[2026-10-28 14:49:16,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:49:16,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:49:17,079.079 INFO    ] No existing commands found in stream
[2026-10-28 14:49:22,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:49:22,103.103 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-28 14:49:24,585.585 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:49:24,587.587 INFO    ] Checking for system updates...
[2026-10-28 14:49:24,623.623 INFO    ] 200
[2026-10-28 14:49:24,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:49:24,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:49:24,685.685 INFO    ] No update needed
[2026-10-28 14:49:24,688.688 INFO    ] Checking for camera pi updates...
[2026-10-28 14:49:24,721.721 INFO    ] 200
[2026-10-28 14:49:24,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:49:24,765.765 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:49:24,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:49:24,870.870 INFO    ] No camera update needed
[2026-10-28 14:49:24,872.872 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:49:24,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:49:24,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:49:24,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:49:26,925.925 INFO    ] ================================================
[2026-10-28 14:49:26,940.940 INFO    ] Launching Daemon at Wed Oct 28 14:49:26 IST 2026
[2026-10-28 14:49:26,952.952 INFO    ] ================================================
[2026-10-28 14:49:27,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:49:27
[2026-10-28 14:49:28,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:49:28,396.396 INFO    ] Initializing speech engine...
[2026-10-28 14:49:28,416.416 INFO    ] 2026-10-28 14:49:28
[2026-10-28 14:49:28,684.684 INFO    ] 2026-10-28 14:49:28
[2026-10-28 14:49:28,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:49:29,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:49:29,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:49:29,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:49:29,263.263 INFO    ] time= 28/10/2026 14:49:29
[2026-10-28 14:49:29,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:49:29,302.302 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:49:29,452.452 INFO    ] No existing commands found in stream
[2026-10-28 14:49:34,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:49:34,486.486 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 14:49:35,711.711 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:49:35,714.714 INFO    ] Checking for system updates...
[2026-10-28 14:49:35,752.752 INFO    ] 200
[2026-10-28 14:49:35,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:49:35,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:49:35,814.814 INFO    ] No update needed
[2026-10-28 14:49:35,817.817 INFO    ] Checking for camera pi updates...
[2026-10-28 14:49:35,856.856 INFO    ] 200
[2026-10-28 14:49:35,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:49:35,905.905 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:49:35,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:49:35,986.986 INFO    ] No camera update needed
[2026-10-28 14:49:35,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:49:35,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:49:35,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:49:36,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:49:38,048.048 INFO    ] ================================================
[2026-10-28 14:49:38,063.063 INFO    ] Launching Daemon at Wed Oct 28 14:49:38 IST 2026
[2026-10-28 14:49:38,074.074 INFO    ] ================================================
[2026-10-28 14:49:38,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:49:38
[2026-10-28 14:49:39,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:49:39,475.475 INFO    ] Initializing speech engine...
[2026-10-28 14:49:39,484.484 INFO    ] 2026-10-28 14:49:39
[2026-10-28 14:49:39,779.779 INFO    ] 2026-10-28 14:49:39
[2026-10-28 14:49:39,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:49:40,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:49:40,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:49:40,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:49:40,324.324 INFO    ] time= 28/10/2026 14:49:40
[2026-10-28 14:49:40,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:49:40,424.424 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:49:40,538.538 INFO    ] No existing commands found in stream
[2026-10-28 14:49:45,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:49:45,571.571 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-28 14:49:49,929.929 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:49:49,931.931 INFO    ] Checking for system updates...
[2026-10-28 14:49:49,968.968 INFO    ] 200
[2026-10-28 14:49:49,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:49:50,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:49:50,025.025 INFO    ] No update needed
[2026-10-28 14:49:50,027.027 INFO    ] Checking for camera pi updates...
[2026-10-28 14:49:50,061.061 INFO    ] 200
[2026-10-28 14:49:50,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:49:50,104.104 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:49:50,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:49:50,187.187 INFO    ] No camera update needed
[2026-10-28 14:49:50,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:49:50,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:49:50,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:49:50,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:49:52,245.245 INFO    ] ================================================
[2026-10-28 14:49:52,261.261 INFO    ] Launching Daemon at Wed Oct 28 14:49:52 IST 2026
[2026-10-28 14:49:52,272.272 INFO    ] ================================================
[2026-10-28 14:49:52,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:49:52
[2026-10-28 14:49:53,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:49:53,767.767 INFO    ] Initializing speech engine...
[2026-10-28 14:49:53,784.784 INFO    ] 2026-10-28 14:49:53
[2026-10-28 14:49:54,074.074 INFO    ] 2026-10-28 14:49:54
[2026-10-28 14:49:54,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:49:54,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:49:54,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:49:54,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:49:54,717.717 INFO    ] time= 28/10/2026 14:49:54
[2026-10-28 14:49:54,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:49:54,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:49:54,875.875 INFO    ] No existing commands found in stream
[2026-10-28 14:49:59,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:49:59,905.905 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 14:50:01,997.997 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:50:02,005.005 INFO    ] Checking for system updates...
[2026-10-28 14:50:02,172.172 INFO    ] 200
[2026-10-28 14:50:02,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:50:02,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:50:02,499.499 INFO    ] No update needed
[2026-10-28 14:50:02,502.502 INFO    ] Checking for camera pi updates...
[2026-10-28 14:50:02,654.654 INFO    ] 200
[2026-10-28 14:50:02,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:50:02,737.737 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:50:03,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:50:03,017.017 INFO    ] No camera update needed
[2026-10-28 14:50:03,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:50:03,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:50:03,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:50:03,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:50:05,096.096 INFO    ] ================================================
[2026-10-28 14:50:05,112.112 INFO    ] Launching Daemon at Wed Oct 28 14:50:05 IST 2026
[2026-10-28 14:50:05,124.124 INFO    ] ================================================
[2026-10-28 14:50:05,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:50:05
[2026-10-28 14:50:06,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:50:06,531.531 INFO    ] Initializing speech engine...
[2026-10-28 14:50:06,539.539 INFO    ] 2026-10-28 14:50:06
[2026-10-28 14:50:06,812.812 INFO    ] 2026-10-28 14:50:06
[2026-10-28 14:50:06,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:50:07,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:50:07,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:50:07,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:50:07,382.382 INFO    ] time= 28/10/2026 14:50:07
[2026-10-28 14:50:07,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:50:07,406.406 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:50:07,552.552 INFO    ] No existing commands found in stream
[2026-10-28 14:50:12,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:50:12,585.585 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 14:50:13,221.221 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:50:13,224.224 INFO    ] Checking for system updates...
[2026-10-28 14:50:13,260.260 INFO    ] 200
[2026-10-28 14:50:13,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:50:13,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:50:13,324.324 INFO    ] No update needed
[2026-10-28 14:50:13,327.327 INFO    ] Checking for camera pi updates...
[2026-10-28 14:50:13,360.360 INFO    ] 200
[2026-10-28 14:50:13,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:50:13,403.403 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:50:13,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:50:13,488.488 INFO    ] No camera update needed
[2026-10-28 14:50:13,490.490 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:50:13,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:50:13,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:50:13,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:50:15,546.546 INFO    ] ================================================
[2026-10-28 14:50:15,562.562 INFO    ] Launching Daemon at Wed Oct 28 14:50:15 IST 2026
[2026-10-28 14:50:15,572.572 INFO    ] ================================================
[2026-10-28 14:50:16,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:50:16
[2026-10-28 14:50:16,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:50:17,008.008 INFO    ] Initializing speech engine...
[2026-10-28 14:50:17,031.031 INFO    ] 2026-10-28 14:50:17
[2026-10-28 14:50:17,284.284 INFO    ] 2026-10-28 14:50:17
[2026-10-28 14:50:17,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:50:17,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:50:17,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:50:17,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:50:17,856.856 INFO    ] time= 28/10/2026 14:50:17
[2026-10-28 14:50:17,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:50:17,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:50:18,070.070 INFO    ] No existing commands found in stream
[2026-10-28 14:50:23,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:50:23,103.103 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-28 14:50:27,581.581 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:50:27,583.583 INFO    ] Checking for system updates...
[2026-10-28 14:50:27,619.619 INFO    ] 200
[2026-10-28 14:50:27,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:50:27,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:50:27,678.678 INFO    ] No update needed
[2026-10-28 14:50:27,681.681 INFO    ] Checking for camera pi updates...
[2026-10-28 14:50:27,714.714 INFO    ] 200
[2026-10-28 14:50:27,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:50:27,757.757 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:50:27,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:50:27,808.808 INFO    ] No camera update needed
[2026-10-28 14:50:27,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:50:27,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:50:27,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:50:27,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:50:29,865.865 INFO    ] ================================================
[2026-10-28 14:50:29,881.881 INFO    ] Launching Daemon at Wed Oct 28 14:50:29 IST 2026
[2026-10-28 14:50:29,891.891 INFO    ] ================================================
[2026-10-28 14:50:30,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:50:30
[2026-10-28 14:50:31,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:50:31,693.693 INFO    ] Initializing speech engine...
[2026-10-28 14:50:31,707.707 INFO    ] 2026-10-28 14:50:31
[2026-10-28 14:50:32,026.026 INFO    ] 2026-10-28 14:50:31
[2026-10-28 14:50:32,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:50:32,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:50:32,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:50:32,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:50:32,563.563 INFO    ] time= 28/10/2026 14:50:32
[2026-10-28 14:50:32,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:50:32,609.609 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:50:32,777.777 INFO    ] No existing commands found in stream
[2026-10-28 14:50:37,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:50:37,805.805 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-28 14:50:40,985.985 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:50:40,988.988 INFO    ] Checking for system updates...
[2026-10-28 14:50:41,029.029 INFO    ] 200
[2026-10-28 14:50:41,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:50:41,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:50:41,095.095 INFO    ] No update needed
[2026-10-28 14:50:41,098.098 INFO    ] Checking for camera pi updates...
[2026-10-28 14:50:41,136.136 INFO    ] 200
[2026-10-28 14:50:41,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:50:41,185.185 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:50:41,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:50:41,268.268 INFO    ] No camera update needed
[2026-10-28 14:50:41,270.270 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:50:41,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:50:41,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:50:41,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:50:43,325.325 INFO    ] ================================================
[2026-10-28 14:50:43,341.341 INFO    ] Launching Daemon at Wed Oct 28 14:50:43 IST 2026
[2026-10-28 14:50:43,352.352 INFO    ] ================================================
[2026-10-28 14:50:43,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:50:43
[2026-10-28 14:50:44,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:50:44,843.843 INFO    ] Initializing speech engine...
[2026-10-28 14:50:44,859.859 INFO    ] 2026-10-28 14:50:44
[2026-10-28 14:50:45,157.157 INFO    ] 2026-10-28 14:50:45
[2026-10-28 14:50:45,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:50:45,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:50:45,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:50:45,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:50:45,709.709 INFO    ] time= 28/10/2026 14:50:45
[2026-10-28 14:50:45,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:50:45,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:50:45,951.951 INFO    ] No existing commands found in stream
[2026-10-28 14:50:50,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:50:50,971.971 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 14:50:54,462.462 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:50:54,464.464 INFO    ] Checking for system updates...
[2026-10-28 14:50:54,501.501 INFO    ] 200
[2026-10-28 14:50:54,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:50:54,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:50:54,559.559 INFO    ] No update needed
[2026-10-28 14:50:54,562.562 INFO    ] Checking for camera pi updates...
[2026-10-28 14:50:54,595.595 INFO    ] 200
[2026-10-28 14:50:54,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:50:54,639.639 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:50:54,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:50:54,728.728 INFO    ] No camera update needed
[2026-10-28 14:50:54,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:50:54,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:50:54,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:50:54,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:50:56,787.787 INFO    ] ================================================
[2026-10-28 14:50:56,802.802 INFO    ] Launching Daemon at Wed Oct 28 14:50:56 IST 2026
[2026-10-28 14:50:56,814.814 INFO    ] ================================================
[2026-10-28 14:50:57,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:50:57
[2026-10-28 14:50:57,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:50:58,237.237 INFO    ] Initializing speech engine...
[2026-10-28 14:50:58,253.253 INFO    ] 2026-10-28 14:50:58
[2026-10-28 14:50:58,519.519 INFO    ] 2026-10-28 14:50:58
[2026-10-28 14:50:58,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:50:58,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:50:58,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:50:59,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:50:59,084.084 INFO    ] time= 28/10/2026 14:50:59
[2026-10-28 14:50:59,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:50:59,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:50:59,231.231 INFO    ] No existing commands found in stream
[2026-10-28 14:51:04,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:51:04,263.263 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-28 14:51:05,722.722 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:51:05,725.725 INFO    ] Checking for system updates...
[2026-10-28 14:51:05,760.760 INFO    ] 200
[2026-10-28 14:51:05,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:51:05,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:51:05,816.816 INFO    ] No update needed
[2026-10-28 14:51:05,819.819 INFO    ] Checking for camera pi updates...
[2026-10-28 14:51:05,852.852 INFO    ] 200
[2026-10-28 14:51:05,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:51:05,895.895 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:51:05,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:51:05,959.959 INFO    ] No camera update needed
[2026-10-28 14:51:05,961.961 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:51:05,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:51:05,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:51:05,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:51:08,015.015 INFO    ] ================================================
[2026-10-28 14:51:08,031.031 INFO    ] Launching Daemon at Wed Oct 28 14:51:08 IST 2026
[2026-10-28 14:51:08,042.042 INFO    ] ================================================
[2026-10-28 14:51:08,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:51:08
[2026-10-28 14:51:09,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:51:09,472.472 INFO    ] Initializing speech engine...
[2026-10-28 14:51:09,479.479 INFO    ] 2026-10-28 14:51:09
[2026-10-28 14:51:09,727.727 INFO    ] 2026-10-28 14:51:09
[2026-10-28 14:51:09,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:51:10,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:51:10,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:51:10,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:51:10,321.321 INFO    ] time= 28/10/2026 14:51:10
[2026-10-28 14:51:10,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:51:10,337.337 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:51:10,497.497 INFO    ] No existing commands found in stream
[2026-10-28 14:51:15,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:51:15,525.525 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 14:51:18,069.069 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:51:18,071.071 INFO    ] Checking for system updates...
[2026-10-28 14:51:18,108.108 INFO    ] 200
[2026-10-28 14:51:18,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:51:18,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:51:18,166.166 INFO    ] No update needed
[2026-10-28 14:51:18,168.168 INFO    ] Checking for camera pi updates...
[2026-10-28 14:51:18,205.205 INFO    ] 200
[2026-10-28 14:51:18,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:51:18,249.249 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:51:18,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:51:18,334.334 INFO    ] No camera update needed
[2026-10-28 14:51:18,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:51:18,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:51:18,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:51:18,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:51:20,394.394 INFO    ] ================================================
[2026-10-28 14:51:20,409.409 INFO    ] Launching Daemon at Wed Oct 28 14:51:20 IST 2026
[2026-10-28 14:51:20,421.421 INFO    ] ================================================
[2026-10-28 14:51:20,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:51:20
[2026-10-28 14:51:21,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:51:21,814.814 INFO    ] Initializing speech engine...
[2026-10-28 14:51:21,829.829 INFO    ] 2026-10-28 14:51:21
[2026-10-28 14:51:22,091.091 INFO    ] 2026-10-28 14:51:22
[2026-10-28 14:51:22,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:51:22,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:51:22,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:51:22,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:51:22,647.647 INFO    ] time= 28/10/2026 14:51:22
[2026-10-28 14:51:22,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:51:22,670.670 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:51:22,776.776 INFO    ] No existing commands found in stream
[2026-10-28 14:51:27,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:51:27,805.805 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-28 14:51:31,745.745 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:51:31,748.748 INFO    ] Checking for system updates...
[2026-10-28 14:51:31,788.788 INFO    ] 200
[2026-10-28 14:51:31,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:51:31,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:51:31,851.851 INFO    ] No update needed
[2026-10-28 14:51:31,854.854 INFO    ] Checking for camera pi updates...
[2026-10-28 14:51:31,890.890 INFO    ] 200
[2026-10-28 14:51:31,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:51:31,941.941 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:51:32,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:51:32,075.075 INFO    ] No camera update needed
[2026-10-28 14:51:32,078.078 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:51:32,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:51:32,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:51:32,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:51:34,134.134 INFO    ] ================================================
[2026-10-28 14:51:34,150.150 INFO    ] Launching Daemon at Wed Oct 28 14:51:34 IST 2026
[2026-10-28 14:51:34,161.161 INFO    ] ================================================
[2026-10-28 14:51:34,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:51:34
[2026-10-28 14:51:35,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:51:35,557.557 INFO    ] Initializing speech engine...
[2026-10-28 14:51:35,566.566 INFO    ] 2026-10-28 14:51:35
[2026-10-28 14:51:35,858.858 INFO    ] 2026-10-28 14:51:35
[2026-10-28 14:51:35,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:51:36,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:51:36,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:51:36,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:51:36,446.446 INFO    ] time= 28/10/2026 14:51:36
[2026-10-28 14:51:36,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:51:36,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:51:36,600.600 INFO    ] No existing commands found in stream
[2026-10-28 14:51:41,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:51:41,618.618 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-28 14:51:42,581.581 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:51:42,584.584 INFO    ] Checking for system updates...
[2026-10-28 14:51:42,621.621 INFO    ] 200
[2026-10-28 14:51:42,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:51:42,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:51:42,679.679 INFO    ] No update needed
[2026-10-28 14:51:42,682.682 INFO    ] Checking for camera pi updates...
[2026-10-28 14:51:42,720.720 INFO    ] 200
[2026-10-28 14:51:42,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:51:42,768.768 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:51:42,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:51:42,861.861 INFO    ] No camera update needed
[2026-10-28 14:51:42,863.863 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:51:42,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:51:42,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:51:42,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:51:44,918.918 INFO    ] ================================================
[2026-10-28 14:51:44,933.933 INFO    ] Launching Daemon at Wed Oct 28 14:51:44 IST 2026
[2026-10-28 14:51:44,944.944 INFO    ] ================================================
[2026-10-28 14:51:45,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:51:45
[2026-10-28 14:51:46,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:51:46,428.428 INFO    ] Initializing speech engine...
[2026-10-28 14:51:46,436.436 INFO    ] 2026-10-28 14:51:46
[2026-10-28 14:51:46,693.693 INFO    ] 2026-10-28 14:51:46
[2026-10-28 14:51:46,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:51:47,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:51:47,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:51:47,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:51:47,406.406 INFO    ] time= 28/10/2026 14:51:47
[2026-10-28 14:51:47,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:51:47,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:51:47,640.640 INFO    ] No existing commands found in stream
[2026-10-28 14:51:52,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:51:52,661.661 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-28 14:51:56,758.758 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:51:56,761.761 INFO    ] Checking for system updates...
[2026-10-28 14:51:56,802.802 INFO    ] 200
[2026-10-28 14:51:56,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:51:56,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:51:56,866.866 INFO    ] No update needed
[2026-10-28 14:51:56,868.868 INFO    ] Checking for camera pi updates...
[2026-10-28 14:51:56,911.911 INFO    ] 200
[2026-10-28 14:51:56,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:51:56,973.973 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:51:57,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:51:57,059.059 INFO    ] No camera update needed
[2026-10-28 14:51:57,062.062 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:51:57,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:51:57,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:51:57,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:51:59,122.122 INFO    ] ================================================
[2026-10-28 14:51:59,137.137 INFO    ] Launching Daemon at Wed Oct 28 14:51:59 IST 2026
[2026-10-28 14:51:59,148.148 INFO    ] ================================================
[2026-10-28 14:51:59,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:51:59
[2026-10-28 14:52:00,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:52:00,580.580 INFO    ] Initializing speech engine...
[2026-10-28 14:52:00,594.594 INFO    ] 2026-10-28 14:52:00
[2026-10-28 14:52:00,857.857 INFO    ] 2026-10-28 14:52:00
[2026-10-28 14:52:00,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:52:01,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:52:01,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:52:01,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:52:01,427.427 INFO    ] time= 28/10/2026 14:52:01
[2026-10-28 14:52:01,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:52:01,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:52:01,574.574 INFO    ] No existing commands found in stream
[2026-10-28 14:52:06,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:52:06,587.587 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 14:52:08,749.749 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:52:08,752.752 INFO    ] Checking for system updates...
[2026-10-28 14:52:08,788.788 INFO    ] 200
[2026-10-28 14:52:08,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:52:08,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:52:08,845.845 INFO    ] No update needed
[2026-10-28 14:52:08,847.847 INFO    ] Checking for camera pi updates...
[2026-10-28 14:52:08,881.881 INFO    ] 200
[2026-10-28 14:52:08,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:52:08,923.923 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:52:09,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:52:09,033.033 INFO    ] No camera update needed
[2026-10-28 14:52:09,036.036 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:52:09,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:52:09,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:52:09,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:52:11,088.088 INFO    ] ================================================
[2026-10-28 14:52:11,103.103 INFO    ] Launching Daemon at Wed Oct 28 14:52:11 IST 2026
[2026-10-28 14:52:11,113.113 INFO    ] ================================================
[2026-10-28 14:52:11,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:52:11
[2026-10-28 14:52:12,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:52:12,567.567 INFO    ] Initializing speech engine...
[2026-10-28 14:52:12,575.575 INFO    ] 2026-10-28 14:52:12
[2026-10-28 14:52:12,834.834 INFO    ] 2026-10-28 14:52:12
[2026-10-28 14:52:12,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:52:13,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:52:13,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:52:13,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:52:13,393.393 INFO    ] time= 28/10/2026 14:52:13
[2026-10-28 14:52:13,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:52:13,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:52:13,591.591 INFO    ] No existing commands found in stream
[2026-10-28 14:52:18,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:52:18,624.624 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-28 14:52:21,070.070 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:52:21,072.072 INFO    ] Checking for system updates...
[2026-10-28 14:52:21,108.108 INFO    ] 200
[2026-10-28 14:52:21,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:52:21,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:52:21,165.165 INFO    ] No update needed
[2026-10-28 14:52:21,168.168 INFO    ] Checking for camera pi updates...
[2026-10-28 14:52:21,206.206 INFO    ] 200
[2026-10-28 14:52:21,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:52:21,250.250 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:52:21,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:52:21,315.315 INFO    ] No camera update needed
[2026-10-28 14:52:21,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:52:21,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:52:21,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:52:21,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:52:23,371.371 INFO    ] ================================================
[2026-10-28 14:52:23,386.386 INFO    ] Launching Daemon at Wed Oct 28 14:52:23 IST 2026
[2026-10-28 14:52:23,398.398 INFO    ] ================================================
[2026-10-28 14:52:24,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:52:23
[2026-10-28 14:52:24,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:52:25,030.030 INFO    ] Initializing speech engine...
[2026-10-28 14:52:25,036.036 INFO    ] 2026-10-28 14:52:25
[2026-10-28 14:52:25,325.325 INFO    ] 2026-10-28 14:52:25
[2026-10-28 14:52:25,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:52:25,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:52:25,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:52:25,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:52:26,014.014 INFO    ] time= 28/10/2026 14:52:25
[2026-10-28 14:52:26,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:52:26,110.110 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:52:26,299.299 INFO    ] No existing commands found in stream
[2026-10-28 14:52:31,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:52:31,314.314 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-28 14:52:33,426.426 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:52:33,429.429 INFO    ] Checking for system updates...
[2026-10-28 14:52:33,466.466 INFO    ] 200
[2026-10-28 14:52:33,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:52:33,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:52:33,527.527 INFO    ] No update needed
[2026-10-28 14:52:33,529.529 INFO    ] Checking for camera pi updates...
[2026-10-28 14:52:33,569.569 INFO    ] 200
[2026-10-28 14:52:33,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:52:33,645.645 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:52:33,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:52:33,725.725 INFO    ] No camera update needed
[2026-10-28 14:52:33,728.728 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:52:33,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:52:33,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:52:33,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:52:35,781.781 INFO    ] ================================================
[2026-10-28 14:52:35,796.796 INFO    ] Launching Daemon at Wed Oct 28 14:52:35 IST 2026
[2026-10-28 14:52:35,806.806 INFO    ] ================================================
[2026-10-28 14:52:36,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:52:36
[2026-10-28 14:52:36,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:52:37,267.267 INFO    ] Initializing speech engine...
[2026-10-28 14:52:37,272.272 INFO    ] 2026-10-28 14:52:37
[2026-10-28 14:52:37,535.535 INFO    ] 2026-10-28 14:52:37
[2026-10-28 14:52:37,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:52:37,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:52:37,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:52:38,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:52:38,239.239 INFO    ] time= 28/10/2026 14:52:38
[2026-10-28 14:52:38,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:52:38,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:52:38,483.483 INFO    ] No existing commands found in stream
[2026-10-28 14:52:43,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:52:43,516.516 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-28 14:52:44,262.262 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:52:44,265.265 INFO    ] Checking for system updates...
[2026-10-28 14:52:44,300.300 INFO    ] 200
[2026-10-28 14:52:44,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:52:44,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:52:44,358.358 INFO    ] No update needed
[2026-10-28 14:52:44,361.361 INFO    ] Checking for camera pi updates...
[2026-10-28 14:52:44,394.394 INFO    ] 200
[2026-10-28 14:52:44,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:52:44,443.443 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:52:44,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:52:44,524.524 INFO    ] No camera update needed
[2026-10-28 14:52:44,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:52:44,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:52:44,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:52:44,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:52:46,583.583 INFO    ] ================================================
[2026-10-28 14:52:46,599.599 INFO    ] Launching Daemon at Wed Oct 28 14:52:46 IST 2026
[2026-10-28 14:52:46,610.610 INFO    ] ================================================
[2026-10-28 14:52:47,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:52:47
[2026-10-28 14:52:47,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:52:48,233.233 INFO    ] Initializing speech engine...
[2026-10-28 14:52:48,254.254 INFO    ] 2026-10-28 14:52:48
[2026-10-28 14:52:48,504.504 INFO    ] 2026-10-28 14:52:48
[2026-10-28 14:52:48,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:52:48,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:52:48,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:52:49,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:52:49,080.080 INFO    ] time= 28/10/2026 14:52:49
[2026-10-28 14:52:49,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:52:49,111.111 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:52:49,262.262 INFO    ] No existing commands found in stream
[2026-10-28 14:52:54,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:52:54,290.290 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 14:52:56,423.423 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:52:56,426.426 INFO    ] Checking for system updates...
[2026-10-28 14:52:56,467.467 INFO    ] 200
[2026-10-28 14:52:56,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:52:56,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:52:56,532.532 INFO    ] No update needed
[2026-10-28 14:52:56,534.534 INFO    ] Checking for camera pi updates...
[2026-10-28 14:52:56,568.568 INFO    ] 200
[2026-10-28 14:52:56,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:52:56,611.611 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:52:56,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:52:56,715.715 INFO    ] No camera update needed
[2026-10-28 14:52:56,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:52:56,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:52:56,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:52:56,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:52:58,775.775 INFO    ] ================================================
[2026-10-28 14:52:58,791.791 INFO    ] Launching Daemon at Wed Oct 28 14:52:58 IST 2026
[2026-10-28 14:52:58,802.802 INFO    ] ================================================
[2026-10-28 14:52:59,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:52:59
[2026-10-28 14:52:59,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:53:00,215.215 INFO    ] Initializing speech engine...
[2026-10-28 14:53:00,230.230 INFO    ] 2026-10-28 14:53:00
[2026-10-28 14:53:00,487.487 INFO    ] 2026-10-28 14:53:00
[2026-10-28 14:53:00,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:53:00,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:53:00,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:53:01,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:53:01,056.056 INFO    ] time= 28/10/2026 14:53:01
[2026-10-28 14:53:01,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:53:01,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:53:01,215.215 INFO    ] No existing commands found in stream
[2026-10-28 14:53:06,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:53:06,251.251 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-28 14:53:08,543.543 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:53:08,546.546 INFO    ] Checking for system updates...
[2026-10-28 14:53:08,581.581 INFO    ] 200
[2026-10-28 14:53:08,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:53:08,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:53:08,640.640 INFO    ] No update needed
[2026-10-28 14:53:08,642.642 INFO    ] Checking for camera pi updates...
[2026-10-28 14:53:08,675.675 INFO    ] 200
[2026-10-28 14:53:08,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:53:08,723.723 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:53:08,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:53:08,806.806 INFO    ] No camera update needed
[2026-10-28 14:53:08,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:53:08,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:53:08,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:53:08,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:53:10,861.861 INFO    ] ================================================
[2026-10-28 14:53:10,876.876 INFO    ] Launching Daemon at Wed Oct 28 14:53:10 IST 2026
[2026-10-28 14:53:10,887.887 INFO    ] ================================================
[2026-10-28 14:53:11,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:53:11
[2026-10-28 14:53:12,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:53:12,479.479 INFO    ] Initializing speech engine...
[2026-10-28 14:53:12,488.488 INFO    ] 2026-10-28 14:53:12
[2026-10-28 14:53:12,802.802 INFO    ] 2026-10-28 14:53:12
[2026-10-28 14:53:12,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:53:13,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:53:13,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:53:13,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:53:13,513.513 INFO    ] time= 28/10/2026 14:53:13
[2026-10-28 14:53:13,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:53:13,615.615 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:53:13,743.743 INFO    ] No existing commands found in stream
[2026-10-28 14:53:18,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:53:18,765.765 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-28 14:53:21,085.085 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:53:21,088.088 INFO    ] Checking for system updates...
[2026-10-28 14:53:21,128.128 INFO    ] 200
[2026-10-28 14:53:21,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:53:21,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:53:21,195.195 INFO    ] No update needed
[2026-10-28 14:53:21,203.203 INFO    ] Checking for camera pi updates...
[2026-10-28 14:53:21,237.237 INFO    ] 200
[2026-10-28 14:53:21,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:53:21,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:53:21,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:53:21,474.474 INFO    ] No camera update needed
[2026-10-28 14:53:21,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:53:21,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:53:21,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:53:21,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:53:23,533.533 INFO    ] ================================================
[2026-10-28 14:53:23,549.549 INFO    ] Launching Daemon at Wed Oct 28 14:53:23 IST 2026
[2026-10-28 14:53:23,560.560 INFO    ] ================================================
[2026-10-28 14:53:24,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:53:24
[2026-10-28 14:53:24,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:53:24,991.991 INFO    ] Initializing speech engine...
[2026-10-28 14:53:25,000.000 INFO    ] 2026-10-28 14:53:24
[2026-10-28 14:53:25,264.264 INFO    ] 2026-10-28 14:53:25
[2026-10-28 14:53:25,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:53:25,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:53:25,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:53:25,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:53:26,005.005 INFO    ] time= 28/10/2026 14:53:25
[2026-10-28 14:53:26,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:53:26,089.089 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:53:26,255.255 INFO    ] No existing commands found in stream
[2026-10-28 14:53:31,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:53:31,291.291 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 14:53:33,463.463 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:53:33,466.466 INFO    ] Checking for system updates...
[2026-10-28 14:53:33,501.501 INFO    ] 200
[2026-10-28 14:53:33,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:53:33,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:53:33,565.565 INFO    ] No update needed
[2026-10-28 14:53:33,568.568 INFO    ] Checking for camera pi updates...
[2026-10-28 14:53:33,603.603 INFO    ] 200
[2026-10-28 14:53:33,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:53:33,647.647 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:53:33,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:53:33,757.757 INFO    ] No camera update needed
[2026-10-28 14:53:33,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:53:33,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:53:33,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:53:33,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:53:35,815.815 INFO    ] ================================================
[2026-10-28 14:53:35,831.831 INFO    ] Launching Daemon at Wed Oct 28 14:53:35 IST 2026
[2026-10-28 14:53:35,842.842 INFO    ] ================================================
[2026-10-28 14:53:36,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:53:36
[2026-10-28 14:53:37,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:53:37,290.290 INFO    ] Initializing speech engine...
[2026-10-28 14:53:37,299.299 INFO    ] 2026-10-28 14:53:37
[2026-10-28 14:53:37,547.547 INFO    ] 2026-10-28 14:53:37
[2026-10-28 14:53:37,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:53:37,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:53:37,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:53:38,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:53:38,116.116 INFO    ] time= 28/10/2026 14:53:38
[2026-10-28 14:53:38,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:53:38,152.152 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:53:38,264.264 INFO    ] No existing commands found in stream
[2026-10-28 14:53:43,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:53:43,296.296 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-28 14:53:47,262.262 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:53:47,265.265 INFO    ] Checking for system updates...
[2026-10-28 14:53:47,300.300 INFO    ] 200
[2026-10-28 14:53:47,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:53:47,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:53:47,357.357 INFO    ] No update needed
[2026-10-28 14:53:47,359.359 INFO    ] Checking for camera pi updates...
[2026-10-28 14:53:47,396.396 INFO    ] 200
[2026-10-28 14:53:47,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:53:47,439.439 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:53:47,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:53:47,525.525 INFO    ] No camera update needed
[2026-10-28 14:53:47,527.527 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:53:47,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:53:47,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:53:47,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:53:49,580.580 INFO    ] ================================================
[2026-10-28 14:53:49,596.596 INFO    ] Launching Daemon at Wed Oct 28 14:53:49 IST 2026
[2026-10-28 14:53:49,607.607 INFO    ] ================================================
[2026-10-28 14:53:50,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:53:50
[2026-10-28 14:53:50,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:53:51,204.204 INFO    ] Initializing speech engine...
[2026-10-28 14:53:51,212.212 INFO    ] 2026-10-28 14:53:51
[2026-10-28 14:53:51,501.501 INFO    ] 2026-10-28 14:53:51
[2026-10-28 14:53:51,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:53:51,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:53:51,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:53:52,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:53:52,151.151 INFO    ] time= 28/10/2026 14:53:52
[2026-10-28 14:53:52,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:53:52,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:53:52,403.403 INFO    ] No existing commands found in stream
[2026-10-28 14:53:57,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:53:57,437.437 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-28 14:54:00,190.190 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:54:00,194.194 INFO    ] Checking for system updates...
[2026-10-28 14:54:00,234.234 INFO    ] 200
[2026-10-28 14:54:00,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:54:00,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:54:00,292.292 INFO    ] No update needed
[2026-10-28 14:54:00,295.295 INFO    ] Checking for camera pi updates...
[2026-10-28 14:54:00,333.333 INFO    ] 200
[2026-10-28 14:54:00,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:54:00,378.378 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:54:00,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:54:00,464.464 INFO    ] No camera update needed
[2026-10-28 14:54:00,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:54:00,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:54:00,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:54:00,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:54:02,525.525 INFO    ] ================================================
[2026-10-28 14:54:02,546.546 INFO    ] Launching Daemon at Wed Oct 28 14:54:02 IST 2026
[2026-10-28 14:54:02,562.562 INFO    ] ================================================
[2026-10-28 14:54:03,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:54:03
[2026-10-28 14:54:03,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:54:04,134.134 INFO    ] Initializing speech engine...
[2026-10-28 14:54:04,149.149 INFO    ] 2026-10-28 14:54:04
[2026-10-28 14:54:04,414.414 INFO    ] 2026-10-28 14:54:04
[2026-10-28 14:54:04,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:54:04,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:54:04,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:54:04,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:54:04,975.975 INFO    ] time= 28/10/2026 14:54:04
[2026-10-28 14:54:04,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:54:05,004.004 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:54:05,135.135 INFO    ] No existing commands found in stream
[2026-10-28 14:54:10,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:54:10,152.152 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-28 14:54:10,863.863 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:54:10,866.866 INFO    ] Checking for system updates...
[2026-10-28 14:54:10,905.905 INFO    ] 200
[2026-10-28 14:54:10,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:54:10,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:54:10,964.964 INFO    ] No update needed
[2026-10-28 14:54:10,966.966 INFO    ] Checking for camera pi updates...
[2026-10-28 14:54:11,004.004 INFO    ] 200
[2026-10-28 14:54:11,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:54:11,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:54:11,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:54:11,133.133 INFO    ] No camera update needed
[2026-10-28 14:54:11,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:54:11,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:54:11,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:54:11,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:54:13,187.187 INFO    ] ================================================
[2026-10-28 14:54:13,203.203 INFO    ] Launching Daemon at Wed Oct 28 14:54:13 IST 2026
[2026-10-28 14:54:13,214.214 INFO    ] ================================================
[2026-10-28 14:54:13,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:54:13
[2026-10-28 14:54:14,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:54:14,688.688 INFO    ] Initializing speech engine...
[2026-10-28 14:54:14,697.697 INFO    ] 2026-10-28 14:54:14
[2026-10-28 14:54:14,945.945 INFO    ] 2026-10-28 14:54:14
[2026-10-28 14:54:14,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:54:15,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:54:15,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:54:15,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:54:15,513.513 INFO    ] time= 28/10/2026 14:54:15
[2026-10-28 14:54:15,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:54:15,538.538 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:54:15,670.670 INFO    ] No existing commands found in stream
[2026-10-28 14:54:20,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:54:20,684.684 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 14:54:21,825.825 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:54:21,827.827 INFO    ] Checking for system updates...
[2026-10-28 14:54:21,863.863 INFO    ] 200
[2026-10-28 14:54:21,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:54:21,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:54:21,928.928 INFO    ] No update needed
[2026-10-28 14:54:21,930.930 INFO    ] Checking for camera pi updates...
[2026-10-28 14:54:21,963.963 INFO    ] 200
[2026-10-28 14:54:21,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:54:22,010.010 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:54:22,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:54:22,101.101 INFO    ] No camera update needed
[2026-10-28 14:54:22,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:54:22,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:54:22,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:54:22,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:54:24,157.157 INFO    ] ================================================
[2026-10-28 14:54:24,173.173 INFO    ] Launching Daemon at Wed Oct 28 14:54:24 IST 2026
[2026-10-28 14:54:24,184.184 INFO    ] ================================================
[2026-10-28 14:54:24,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:54:24
[2026-10-28 14:54:25,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:54:25,780.780 INFO    ] Initializing speech engine...
[2026-10-28 14:54:25,788.788 INFO    ] 2026-10-28 14:54:25
[2026-10-28 14:54:26,060.060 INFO    ] 2026-10-28 14:54:26
[2026-10-28 14:54:26,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:54:26,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:54:26,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:54:26,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:54:26,733.733 INFO    ] time= 28/10/2026 14:54:26
[2026-10-28 14:54:26,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:54:26,836.836 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:54:27,020.020 INFO    ] No existing commands found in stream
[2026-10-28 14:54:32,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:54:32,040.040 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-28 14:54:33,050.050 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:54:33,053.053 INFO    ] Checking for system updates...
[2026-10-28 14:54:33,092.092 INFO    ] 200
[2026-10-28 14:54:33,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:54:33,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:54:33,156.156 INFO    ] No update needed
[2026-10-28 14:54:33,160.160 INFO    ] Checking for camera pi updates...
[2026-10-28 14:54:33,202.202 INFO    ] 200
[2026-10-28 14:54:33,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:54:33,260.260 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:54:33,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:54:33,353.353 INFO    ] No camera update needed
[2026-10-28 14:54:33,355.355 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:54:33,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:54:33,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:54:33,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:54:35,410.410 INFO    ] ================================================
[2026-10-28 14:54:35,425.425 INFO    ] Launching Daemon at Wed Oct 28 14:54:35 IST 2026
[2026-10-28 14:54:35,436.436 INFO    ] ================================================
[2026-10-28 14:54:36,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:54:36
[2026-10-28 14:54:36,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:54:37,038.038 INFO    ] Initializing speech engine...
[2026-10-28 14:54:37,050.050 INFO    ] 2026-10-28 14:54:37
[2026-10-28 14:54:37,355.355 INFO    ] 2026-10-28 14:54:37
[2026-10-28 14:54:37,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:54:37,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:54:37,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:54:37,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:54:38,036.036 INFO    ] time= 28/10/2026 14:54:37
[2026-10-28 14:54:38,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:54:38,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:54:38,253.253 INFO    ] No existing commands found in stream
[2026-10-28 14:54:43,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:54:43,271.271 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 14:54:46,870.870 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:54:46,873.873 INFO    ] Checking for system updates...
[2026-10-28 14:54:46,909.909 INFO    ] 200
[2026-10-28 14:54:46,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:54:46,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:54:46,975.975 INFO    ] No update needed
[2026-10-28 14:54:46,978.978 INFO    ] Checking for camera pi updates...
[2026-10-28 14:54:47,014.014 INFO    ] 200
[2026-10-28 14:54:47,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:54:47,062.062 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:54:47,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:54:47,150.150 INFO    ] No camera update needed
[2026-10-28 14:54:47,153.153 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:54:47,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:54:47,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:54:47,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:54:49,208.208 INFO    ] ================================================
[2026-10-28 14:54:49,223.223 INFO    ] Launching Daemon at Wed Oct 28 14:54:49 IST 2026
[2026-10-28 14:54:49,234.234 INFO    ] ================================================
[2026-10-28 14:54:49,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:54:49
[2026-10-28 14:54:50,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:54:50,744.744 INFO    ] Initializing speech engine...
[2026-10-28 14:54:50,753.753 INFO    ] 2026-10-28 14:54:50
[2026-10-28 14:54:51,016.016 INFO    ] 2026-10-28 14:54:51
[2026-10-28 14:54:51,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:54:51,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:54:51,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:54:51,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:54:51,556.556 INFO    ] time= 28/10/2026 14:54:51
[2026-10-28 14:54:51,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:54:51,603.603 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:54:51,719.719 INFO    ] No existing commands found in stream
[2026-10-28 14:54:56,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:54:56,751.751 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-28 14:54:59,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:54:59,746.746 INFO    ] Checking for system updates...
[2026-10-28 14:54:59,781.781 INFO    ] 200
[2026-10-28 14:54:59,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:54:59,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:54:59,841.841 INFO    ] No update needed
[2026-10-28 14:54:59,844.844 INFO    ] Checking for camera pi updates...
[2026-10-28 14:54:59,888.888 INFO    ] 200
[2026-10-28 14:54:59,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:54:59,930.930 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:55:00,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:55:00,014.014 INFO    ] No camera update needed
[2026-10-28 14:55:00,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:55:00,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:55:00,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:55:00,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:55:02,075.075 INFO    ] ================================================
[2026-10-28 14:55:02,092.092 INFO    ] Launching Daemon at Wed Oct 28 14:55:02 IST 2026
[2026-10-28 14:55:02,105.105 INFO    ] ================================================
[2026-10-28 14:55:02,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:55:02
[2026-10-28 14:55:03,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:55:03,690.690 INFO    ] Initializing speech engine...
[2026-10-28 14:55:03,696.696 INFO    ] 2026-10-28 14:55:03
[2026-10-28 14:55:03,962.962 INFO    ] 2026-10-28 14:55:03
[2026-10-28 14:55:04,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:55:04,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:55:04,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:55:04,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:55:04,669.669 INFO    ] time= 28/10/2026 14:55:04
[2026-10-28 14:55:04,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:55:04,755.755 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:55:04,923.923 INFO    ] No existing commands found in stream
[2026-10-28 14:55:09,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:55:09,948.948 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-28 14:55:11,663.663 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:55:11,665.665 INFO    ] Checking for system updates...
[2026-10-28 14:55:11,703.703 INFO    ] 200
[2026-10-28 14:55:11,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:55:11,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:55:11,763.763 INFO    ] No update needed
[2026-10-28 14:55:11,766.766 INFO    ] Checking for camera pi updates...
[2026-10-28 14:55:11,800.800 INFO    ] 200
[2026-10-28 14:55:11,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:55:11,845.845 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:55:11,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:55:11,933.933 INFO    ] No camera update needed
[2026-10-28 14:55:11,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:55:11,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:55:11,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:55:11,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:55:13,993.993 INFO    ] ================================================
[2026-10-28 14:55:14,008.008 INFO    ] Launching Daemon at Wed Oct 28 14:55:14 IST 2026
[2026-10-28 14:55:14,019.019 INFO    ] ================================================
[2026-10-28 14:55:14,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:55:14
[2026-10-28 14:55:15,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:55:15,627.627 INFO    ] Initializing speech engine...
[2026-10-28 14:55:15,638.638 INFO    ] 2026-10-28 14:55:15
[2026-10-28 14:55:15,916.916 INFO    ] 2026-10-28 14:55:15
[2026-10-28 14:55:15,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:55:16,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:55:16,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:55:16,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:55:16,621.621 INFO    ] time= 28/10/2026 14:55:16
[2026-10-28 14:55:16,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:55:16,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:55:16,850.850 INFO    ] No existing commands found in stream
[2026-10-28 14:55:21,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:55:21,890.890 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-28 14:55:23,486.486 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:55:23,489.489 INFO    ] Checking for system updates...
[2026-10-28 14:55:23,529.529 INFO    ] 200
[2026-10-28 14:55:23,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:55:23,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:55:23,589.589 INFO    ] No update needed
[2026-10-28 14:55:23,592.592 INFO    ] Checking for camera pi updates...
[2026-10-28 14:55:23,627.627 INFO    ] 200
[2026-10-28 14:55:23,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:55:23,671.671 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:55:23,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:55:23,878.878 INFO    ] No camera update needed
[2026-10-28 14:55:23,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:55:23,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:55:23,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:55:23,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:55:25,937.937 INFO    ] ================================================
[2026-10-28 14:55:25,952.952 INFO    ] Launching Daemon at Wed Oct 28 14:55:25 IST 2026
[2026-10-28 14:55:25,963.963 INFO    ] ================================================
[2026-10-28 14:55:26,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:55:26
[2026-10-28 14:55:27,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:55:27,429.429 INFO    ] Initializing speech engine...
[2026-10-28 14:55:27,436.436 INFO    ] 2026-10-28 14:55:27
[2026-10-28 14:55:27,700.700 INFO    ] 2026-10-28 14:55:27
[2026-10-28 14:55:27,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:55:28,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:55:28,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:55:28,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:55:28,471.471 INFO    ] time= 28/10/2026 14:55:28
[2026-10-28 14:55:28,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:55:28,560.560 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:55:28,779.779 INFO    ] No existing commands found in stream
[2026-10-28 14:55:33,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:55:33,812.812 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 14:55:36,262.262 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:55:36,264.264 INFO    ] Checking for system updates...
[2026-10-28 14:55:36,305.305 INFO    ] 200
[2026-10-28 14:55:36,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:55:36,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:55:36,370.370 INFO    ] No update needed
[2026-10-28 14:55:36,373.373 INFO    ] Checking for camera pi updates...
[2026-10-28 14:55:36,408.408 INFO    ] 200
[2026-10-28 14:55:36,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:55:36,451.451 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:55:36,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:55:36,536.536 INFO    ] No camera update needed
[2026-10-28 14:55:36,539.539 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:55:36,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:55:36,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:55:36,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:55:38,595.595 INFO    ] ================================================
[2026-10-28 14:55:38,610.610 INFO    ] Launching Daemon at Wed Oct 28 14:55:38 IST 2026
[2026-10-28 14:55:38,620.620 INFO    ] ================================================
[2026-10-28 14:55:39,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:55:39
[2026-10-28 14:55:39,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:55:40,058.058 INFO    ] Initializing speech engine...
[2026-10-28 14:55:40,072.072 INFO    ] 2026-10-28 14:55:40
[2026-10-28 14:55:40,340.340 INFO    ] 2026-10-28 14:55:40
[2026-10-28 14:55:40,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:55:40,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:55:40,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:55:40,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:55:40,912.912 INFO    ] time= 28/10/2026 14:55:40
[2026-10-28 14:55:40,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:55:40,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:55:41,070.070 INFO    ] No existing commands found in stream
[2026-10-28 14:55:46,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:55:46,091.091 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 14:55:47,784.784 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:55:47,787.787 INFO    ] Checking for system updates...
[2026-10-28 14:55:47,822.822 INFO    ] 200
[2026-10-28 14:55:47,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:55:47,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:55:47,880.880 INFO    ] No update needed
[2026-10-28 14:55:47,882.882 INFO    ] Checking for camera pi updates...
[2026-10-28 14:55:47,916.916 INFO    ] 200
[2026-10-28 14:55:47,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:55:47,958.958 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:55:48,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:55:48,055.055 INFO    ] No camera update needed
[2026-10-28 14:55:48,057.057 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:55:48,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:55:48,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:55:48,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:55:50,112.112 INFO    ] ================================================
[2026-10-28 14:55:50,127.127 INFO    ] Launching Daemon at Wed Oct 28 14:55:50 IST 2026
[2026-10-28 14:55:50,138.138 INFO    ] ================================================
[2026-10-28 14:55:50,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:55:50
[2026-10-28 14:55:51,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:55:51,564.564 INFO    ] Initializing speech engine...
[2026-10-28 14:55:51,572.572 INFO    ] 2026-10-28 14:55:51
[2026-10-28 14:55:51,829.829 INFO    ] 2026-10-28 14:55:51
[2026-10-28 14:55:51,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:55:52,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:55:52,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:55:52,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:55:52,421.421 INFO    ] time= 28/10/2026 14:55:52
[2026-10-28 14:55:52,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:55:52,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:55:52,623.623 INFO    ] No existing commands found in stream
[2026-10-28 14:55:57,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:55:57,642.642 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 14:55:58,385.385 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:55:58,388.388 INFO    ] Checking for system updates...
[2026-10-28 14:55:58,426.426 INFO    ] 200
[2026-10-28 14:55:58,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:55:58,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:55:58,485.485 INFO    ] No update needed
[2026-10-28 14:55:58,488.488 INFO    ] Checking for camera pi updates...
[2026-10-28 14:55:58,522.522 INFO    ] 200
[2026-10-28 14:55:58,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:55:58,567.567 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:55:58,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:55:58,624.624 INFO    ] No camera update needed
[2026-10-28 14:55:58,627.627 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:55:58,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:55:58,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:55:58,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:56:00,682.682 INFO    ] ================================================
[2026-10-28 14:56:00,697.697 INFO    ] Launching Daemon at Wed Oct 28 14:56:00 IST 2026
[2026-10-28 14:56:00,708.708 INFO    ] ================================================
[2026-10-28 14:56:01,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:56:01
[2026-10-28 14:56:01,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:56:02,281.281 INFO    ] Initializing speech engine...
[2026-10-28 14:56:02,297.297 INFO    ] 2026-10-28 14:56:02
[2026-10-28 14:56:02,609.609 INFO    ] 2026-10-28 14:56:02
[2026-10-28 14:56:02,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:56:02,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:56:03,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:56:03,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:56:03,264.264 INFO    ] time= 28/10/2026 14:56:03
[2026-10-28 14:56:03,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:56:03,299.299 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:56:03,449.449 INFO    ] No existing commands found in stream
[2026-10-28 14:56:08,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:56:08,489.489 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 14:56:09,193.193 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:56:09,196.196 INFO    ] Checking for system updates...
[2026-10-28 14:56:09,234.234 INFO    ] 200
[2026-10-28 14:56:09,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:56:09,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:56:09,292.292 INFO    ] No update needed
[2026-10-28 14:56:09,295.295 INFO    ] Checking for camera pi updates...
[2026-10-28 14:56:09,329.329 INFO    ] 200
[2026-10-28 14:56:09,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:56:09,371.371 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:56:09,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:56:09,459.459 INFO    ] No camera update needed
[2026-10-28 14:56:09,461.461 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:56:09,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:56:09,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:56:09,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:56:11,516.516 INFO    ] ================================================
[2026-10-28 14:56:11,532.532 INFO    ] Launching Daemon at Wed Oct 28 14:56:11 IST 2026
[2026-10-28 14:56:11,543.543 INFO    ] ================================================
[2026-10-28 14:56:12,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:56:12
[2026-10-28 14:56:12,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:56:13,002.002 INFO    ] Initializing speech engine...
[2026-10-28 14:56:13,011.011 INFO    ] 2026-10-28 14:56:13
[2026-10-28 14:56:13,258.258 INFO    ] 2026-10-28 14:56:13
[2026-10-28 14:56:13,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:56:13,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:56:13,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:56:13,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:56:13,844.844 INFO    ] time= 28/10/2026 14:56:13
[2026-10-28 14:56:13,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:56:13,872.872 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:56:14,035.035 INFO    ] No existing commands found in stream
[2026-10-28 14:56:19,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:56:19,055.055 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-28 14:56:21,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:56:21,968.968 INFO    ] Checking for system updates...
[2026-10-28 14:56:22,005.005 INFO    ] 200
[2026-10-28 14:56:22,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:56:22,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:56:22,065.065 INFO    ] No update needed
[2026-10-28 14:56:22,068.068 INFO    ] Checking for camera pi updates...
[2026-10-28 14:56:22,102.102 INFO    ] 200
[2026-10-28 14:56:22,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:56:22,146.146 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:56:22,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:56:22,235.235 INFO    ] No camera update needed
[2026-10-28 14:56:22,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:56:22,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:56:22,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:56:22,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:56:24,292.292 INFO    ] ================================================
[2026-10-28 14:56:24,308.308 INFO    ] Launching Daemon at Wed Oct 28 14:56:24 IST 2026
[2026-10-28 14:56:24,318.318 INFO    ] ================================================
[2026-10-28 14:56:24,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:56:24
[2026-10-28 14:56:25,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:56:25,722.722 INFO    ] Initializing speech engine...
[2026-10-28 14:56:25,731.731 INFO    ] 2026-10-28 14:56:25
[2026-10-28 14:56:26,024.024 INFO    ] 2026-10-28 14:56:25
[2026-10-28 14:56:26,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:56:26,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:56:26,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:56:26,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:56:26,529.529 INFO    ] time= 28/10/2026 14:56:26
[2026-10-28 14:56:26,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:56:26,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:56:26,810.810 INFO    ] No existing commands found in stream
[2026-10-28 14:56:31,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:56:31,844.844 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-28 14:56:33,561.561 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:56:33,564.564 INFO    ] Checking for system updates...
[2026-10-28 14:56:33,600.600 INFO    ] 200
[2026-10-28 14:56:33,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:56:33,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:56:33,657.657 INFO    ] No update needed
[2026-10-28 14:56:33,659.659 INFO    ] Checking for camera pi updates...
[2026-10-28 14:56:33,694.694 INFO    ] 200
[2026-10-28 14:56:33,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:56:33,737.737 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:56:33,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:56:33,825.825 INFO    ] No camera update needed
[2026-10-28 14:56:33,828.828 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:56:33,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:56:33,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:56:33,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:56:35,881.881 INFO    ] ================================================
[2026-10-28 14:56:35,897.897 INFO    ] Launching Daemon at Wed Oct 28 14:56:35 IST 2026
[2026-10-28 14:56:35,909.909 INFO    ] ================================================
[2026-10-28 14:56:36,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:56:36
[2026-10-28 14:56:37,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:56:37,342.342 INFO    ] Initializing speech engine...
[2026-10-28 14:56:37,351.351 INFO    ] 2026-10-28 14:56:37
[2026-10-28 14:56:37,612.612 INFO    ] 2026-10-28 14:56:37
[2026-10-28 14:56:37,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:56:37,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:56:37,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:56:38,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:56:38,182.182 INFO    ] time= 28/10/2026 14:56:38
[2026-10-28 14:56:38,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:56:38,221.221 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:56:38,362.362 INFO    ] No existing commands found in stream
[2026-10-28 14:56:43,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:56:43,390.390 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 14:56:46,808.808 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:56:46,811.811 INFO    ] Checking for system updates...
[2026-10-28 14:56:46,847.847 INFO    ] 200
[2026-10-28 14:56:46,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:56:46,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:56:46,905.905 INFO    ] No update needed
[2026-10-28 14:56:46,907.907 INFO    ] Checking for camera pi updates...
[2026-10-28 14:56:46,940.940 INFO    ] 200
[2026-10-28 14:56:46,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:56:46,983.983 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:56:47,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:56:47,065.065 INFO    ] No camera update needed
[2026-10-28 14:56:47,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:56:47,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:56:47,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:56:47,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:56:49,120.120 INFO    ] ================================================
[2026-10-28 14:56:49,136.136 INFO    ] Launching Daemon at Wed Oct 28 14:56:49 IST 2026
[2026-10-28 14:56:49,147.147 INFO    ] ================================================
[2026-10-28 14:56:49,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:56:49
[2026-10-28 14:56:50,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:56:50,591.591 INFO    ] Initializing speech engine...
[2026-10-28 14:56:50,597.597 INFO    ] 2026-10-28 14:56:50
[2026-10-28 14:56:50,874.874 INFO    ] 2026-10-28 14:56:50
[2026-10-28 14:56:50,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:56:51,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:56:51,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:56:51,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:56:51,439.439 INFO    ] time= 28/10/2026 14:56:51
[2026-10-28 14:56:51,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:56:51,478.478 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:56:51,581.581 INFO    ] No existing commands found in stream
[2026-10-28 14:56:56,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:56:56,604.604 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-28 14:57:00,919.919 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:57:00,922.922 INFO    ] Checking for system updates...
[2026-10-28 14:57:00,959.959 INFO    ] 200
[2026-10-28 14:57:00,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:57:01,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:57:01,018.018 INFO    ] No update needed
[2026-10-28 14:57:01,021.021 INFO    ] Checking for camera pi updates...
[2026-10-28 14:57:01,054.054 INFO    ] 200
[2026-10-28 14:57:01,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:57:01,097.097 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:57:01,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:57:01,186.186 INFO    ] No camera update needed
[2026-10-28 14:57:01,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:57:01,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:57:01,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:57:01,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:57:03,243.243 INFO    ] ================================================
[2026-10-28 14:57:03,261.261 INFO    ] Launching Daemon at Wed Oct 28 14:57:03 IST 2026
[2026-10-28 14:57:03,274.274 INFO    ] ================================================
[2026-10-28 14:57:03,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:57:03
[2026-10-28 14:57:04,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:57:04,739.739 INFO    ] Initializing speech engine...
[2026-10-28 14:57:04,749.749 INFO    ] 2026-10-28 14:57:04
[2026-10-28 14:57:04,996.996 INFO    ] 2026-10-28 14:57:04
[2026-10-28 14:57:05,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:57:05,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:57:05,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:57:05,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:57:05,584.584 INFO    ] time= 28/10/2026 14:57:05
[2026-10-28 14:57:05,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:57:05,611.611 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:57:05,769.769 INFO    ] No existing commands found in stream
[2026-10-28 14:57:10,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:57:10,797.797 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-28 14:57:13,944.944 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:57:13,947.947 INFO    ] Checking for system updates...
[2026-10-28 14:57:13,983.983 INFO    ] 200
[2026-10-28 14:57:13,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:57:14,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:57:14,040.040 INFO    ] No update needed
[2026-10-28 14:57:14,042.042 INFO    ] Checking for camera pi updates...
[2026-10-28 14:57:14,076.076 INFO    ] 200
[2026-10-28 14:57:14,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:57:14,120.120 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:57:14,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:57:14,201.201 INFO    ] No camera update needed
[2026-10-28 14:57:14,204.204 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:57:14,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:57:14,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:57:14,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:57:16,258.258 INFO    ] ================================================
[2026-10-28 14:57:16,274.274 INFO    ] Launching Daemon at Wed Oct 28 14:57:16 IST 2026
[2026-10-28 14:57:16,286.286 INFO    ] ================================================
[2026-10-28 14:57:16,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:57:16
[2026-10-28 14:57:17,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:57:17,709.709 INFO    ] Initializing speech engine...
[2026-10-28 14:57:17,721.721 INFO    ] 2026-10-28 14:57:17
[2026-10-28 14:57:17,974.974 INFO    ] 2026-10-28 14:57:17
[2026-10-28 14:57:18,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:57:18,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:57:18,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:57:18,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:57:18,545.545 INFO    ] time= 28/10/2026 14:57:18
[2026-10-28 14:57:18,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:57:18,580.580 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:57:18,737.737 INFO    ] No existing commands found in stream
[2026-10-28 14:57:23,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:57:23,765.765 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 14:57:27,142.142 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:57:27,145.145 INFO    ] Checking for system updates...
[2026-10-28 14:57:27,181.181 INFO    ] 200
[2026-10-28 14:57:27,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:57:27,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:57:27,238.238 INFO    ] No update needed
[2026-10-28 14:57:27,240.240 INFO    ] Checking for camera pi updates...
[2026-10-28 14:57:27,273.273 INFO    ] 200
[2026-10-28 14:57:27,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:57:27,323.323 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:57:27,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:57:27,506.506 INFO    ] No camera update needed
[2026-10-28 14:57:27,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:57:27,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:57:27,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:57:27,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:57:29,563.563 INFO    ] ================================================
[2026-10-28 14:57:29,578.578 INFO    ] Launching Daemon at Wed Oct 28 14:57:29 IST 2026
[2026-10-28 14:57:29,589.589 INFO    ] ================================================
[2026-10-28 14:57:30,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:57:30
[2026-10-28 14:57:30,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:57:31,114.114 INFO    ] Initializing speech engine...
[2026-10-28 14:57:31,122.122 INFO    ] 2026-10-28 14:57:31
[2026-10-28 14:57:31,394.394 INFO    ] 2026-10-28 14:57:31
[2026-10-28 14:57:31,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:57:31,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:57:31,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:57:31,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:57:31,973.973 INFO    ] time= 28/10/2026 14:57:31
[2026-10-28 14:57:31,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:57:32,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:57:32,125.125 INFO    ] No existing commands found in stream
[2026-10-28 14:57:37,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:57:37,138.138 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-28 14:57:39,047.047 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:57:39,049.049 INFO    ] Checking for system updates...
[2026-10-28 14:57:39,084.084 INFO    ] 200
[2026-10-28 14:57:39,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:57:39,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:57:39,148.148 INFO    ] No update needed
[2026-10-28 14:57:39,151.151 INFO    ] Checking for camera pi updates...
[2026-10-28 14:57:39,184.184 INFO    ] 200
[2026-10-28 14:57:39,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:57:39,227.227 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:57:39,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:57:39,279.279 INFO    ] No camera update needed
[2026-10-28 14:57:39,281.281 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:57:39,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:57:39,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:57:39,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:57:41,335.335 INFO    ] ================================================
[2026-10-28 14:57:41,352.352 INFO    ] Launching Daemon at Wed Oct 28 14:57:41 IST 2026
[2026-10-28 14:57:41,364.364 INFO    ] ================================================
[2026-10-28 14:57:42,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:57:42
[2026-10-28 14:57:42,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:57:42,987.987 INFO    ] Initializing speech engine...
[2026-10-28 14:57:42,995.995 INFO    ] 2026-10-28 14:57:42
[2026-10-28 14:57:43,266.266 INFO    ] 2026-10-28 14:57:43
[2026-10-28 14:57:43,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:57:43,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:57:43,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:57:43,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:57:43,847.847 INFO    ] time= 28/10/2026 14:57:43
[2026-10-28 14:57:43,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:57:43,905.905 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:57:44,042.042 INFO    ] No existing commands found in stream
[2026-10-28 14:57:49,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:57:49,066.066 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 14:57:53,047.047 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 14:57:53,050.050 INFO    ] Checking for system updates...
[2026-10-28 14:57:53,087.087 INFO    ] 200
[2026-10-28 14:57:53,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:57:53,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:57:53,147.147 INFO    ] No update needed
[2026-10-28 14:57:53,149.149 INFO    ] Checking for camera pi updates...
[2026-10-28 14:57:53,188.188 INFO    ] 200
[2026-10-28 14:57:53,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:57:53,232.232 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:57:53,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:57:53,326.326 INFO    ] No camera update needed
[2026-10-28 14:57:53,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:57:53,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:57:53,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:57:53,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:57:55,385.385 INFO    ] ================================================
[2026-10-28 14:57:55,400.400 INFO    ] Launching Daemon at Wed Oct 28 14:57:55 IST 2026
[2026-10-28 14:57:55,411.411 INFO    ] ================================================
[2026-10-28 14:57:55,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:57:55
[2026-10-28 14:57:56,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:57:56,818.818 INFO    ] Initializing speech engine...
[2026-10-28 14:57:56,830.830 INFO    ] 2026-10-28 14:57:56
[2026-10-28 14:57:57,085.085 INFO    ] 2026-10-28 14:57:57
[2026-10-28 14:57:57,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:57:57,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:57:57,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:57:57,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:57:57,654.654 INFO    ] time= 28/10/2026 14:57:57
[2026-10-28 14:57:57,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:57:57,678.678 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:57:57,840.840 INFO    ] No existing commands found in stream
[2026-10-28 14:58:02,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:58:02,874.874 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-28 14:58:06,968.968 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:58:06,971.971 INFO    ] Checking for system updates...
[2026-10-28 14:58:07,010.010 INFO    ] 200
[2026-10-28 14:58:07,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:58:07,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:58:07,067.067 INFO    ] No update needed
[2026-10-28 14:58:07,070.070 INFO    ] Checking for camera pi updates...
[2026-10-28 14:58:07,103.103 INFO    ] 200
[2026-10-28 14:58:07,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:58:07,146.146 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:58:07,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:58:07,252.252 INFO    ] No camera update needed
[2026-10-28 14:58:07,254.254 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:58:07,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:58:07,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:58:07,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:58:09,307.307 INFO    ] ================================================
[2026-10-28 14:58:09,322.322 INFO    ] Launching Daemon at Wed Oct 28 14:58:09 IST 2026
[2026-10-28 14:58:09,333.333 INFO    ] ================================================
[2026-10-28 14:58:09,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:58:09
[2026-10-28 14:58:10,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:58:10,749.749 INFO    ] Initializing speech engine...
[2026-10-28 14:58:10,757.757 INFO    ] 2026-10-28 14:58:10
[2026-10-28 14:58:11,009.009 INFO    ] 2026-10-28 14:58:11
[2026-10-28 14:58:11,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:58:11,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:58:11,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:58:11,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:58:11,573.573 INFO    ] time= 28/10/2026 14:58:11
[2026-10-28 14:58:11,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:58:11,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:58:11,714.714 INFO    ] No existing commands found in stream
[2026-10-28 14:58:16,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:58:16,744.744 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 14:58:22,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:58:22,369.369 INFO    ] Checking for system updates...
[2026-10-28 14:58:22,408.408 INFO    ] 200
[2026-10-28 14:58:22,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:58:22,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:58:22,466.466 INFO    ] No update needed
[2026-10-28 14:58:22,469.469 INFO    ] Checking for camera pi updates...
[2026-10-28 14:58:22,502.502 INFO    ] 200
[2026-10-28 14:58:22,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:58:22,545.545 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:58:22,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:58:22,627.627 INFO    ] No camera update needed
[2026-10-28 14:58:22,629.629 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:58:22,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:58:22,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:58:22,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:58:24,684.684 INFO    ] ================================================
[2026-10-28 14:58:24,699.699 INFO    ] Launching Daemon at Wed Oct 28 14:58:24 IST 2026
[2026-10-28 14:58:24,710.710 INFO    ] ================================================
[2026-10-28 14:58:25,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:58:25
[2026-10-28 14:58:25,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:58:26,107.107 INFO    ] Initializing speech engine...
[2026-10-28 14:58:26,130.130 INFO    ] 2026-10-28 14:58:26
[2026-10-28 14:58:26,385.385 INFO    ] 2026-10-28 14:58:26
[2026-10-28 14:58:26,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:58:26,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:58:26,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:58:26,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:58:26,951.951 INFO    ] time= 28/10/2026 14:58:26
[2026-10-28 14:58:26,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:58:26,972.972 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:58:27,114.114 INFO    ] No existing commands found in stream
[2026-10-28 14:58:32,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:58:32,148.148 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-28 14:58:38,510.510 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 14:58:38,512.512 INFO    ] Checking for system updates...
[2026-10-28 14:58:38,549.549 INFO    ] 200
[2026-10-28 14:58:38,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:58:38,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:58:38,608.608 INFO    ] No update needed
[2026-10-28 14:58:38,610.610 INFO    ] Checking for camera pi updates...
[2026-10-28 14:58:38,644.644 INFO    ] 200
[2026-10-28 14:58:38,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:58:38,687.687 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:58:38,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:58:38,773.773 INFO    ] No camera update needed
[2026-10-28 14:58:38,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:58:38,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:58:38,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:58:38,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:58:40,829.829 INFO    ] ================================================
[2026-10-28 14:58:40,846.846 INFO    ] Launching Daemon at Wed Oct 28 14:58:40 IST 2026
[2026-10-28 14:58:40,857.857 INFO    ] ================================================
[2026-10-28 14:58:41,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:58:41
[2026-10-28 14:58:42,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:58:42,297.297 INFO    ] Initializing speech engine...
[2026-10-28 14:58:42,307.307 INFO    ] 2026-10-28 14:58:42
[2026-10-28 14:58:42,558.558 INFO    ] 2026-10-28 14:58:42
[2026-10-28 14:58:42,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:58:42,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:58:42,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:58:43,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:58:43,103.103 INFO    ] time= 28/10/2026 14:58:43
[2026-10-28 14:58:43,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:58:43,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:58:43,256.256 INFO    ] No existing commands found in stream
[2026-10-28 14:58:48,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:58:48,273.273 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-28 14:58:49,404.404 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:58:49,407.407 INFO    ] Checking for system updates...
[2026-10-28 14:58:49,443.443 INFO    ] 200
[2026-10-28 14:58:49,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:58:49,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:58:49,507.507 INFO    ] No update needed
[2026-10-28 14:58:49,510.510 INFO    ] Checking for camera pi updates...
[2026-10-28 14:58:49,546.546 INFO    ] 200
[2026-10-28 14:58:49,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:58:49,594.594 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:58:49,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:58:49,679.679 INFO    ] No camera update needed
[2026-10-28 14:58:49,682.682 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:58:49,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:58:49,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:58:49,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:58:51,735.735 INFO    ] ================================================
[2026-10-28 14:58:51,751.751 INFO    ] Launching Daemon at Wed Oct 28 14:58:51 IST 2026
[2026-10-28 14:58:51,762.762 INFO    ] ================================================
[2026-10-28 14:58:52,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:58:52
[2026-10-28 14:58:53,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:58:53,383.383 INFO    ] Initializing speech engine...
[2026-10-28 14:58:53,396.396 INFO    ] 2026-10-28 14:58:53
[2026-10-28 14:58:53,677.677 INFO    ] 2026-10-28 14:58:53
[2026-10-28 14:58:53,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:58:54,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:58:54,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:58:54,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:58:54,357.357 INFO    ] time= 28/10/2026 14:58:54
[2026-10-28 14:58:54,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:58:54,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:58:54,608.608 INFO    ] No existing commands found in stream
[2026-10-28 14:58:59,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:58:59,629.629 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 14:59:01,290.290 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:59:01,293.293 INFO    ] Checking for system updates...
[2026-10-28 14:59:01,329.329 INFO    ] 200
[2026-10-28 14:59:01,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:59:01,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:59:01,393.393 INFO    ] No update needed
[2026-10-28 14:59:01,396.396 INFO    ] Checking for camera pi updates...
[2026-10-28 14:59:01,434.434 INFO    ] 200
[2026-10-28 14:59:01,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:59:01,482.482 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:59:01,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:59:01,628.628 INFO    ] No camera update needed
[2026-10-28 14:59:01,631.631 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:59:01,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:59:01,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:59:01,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:59:03,690.690 INFO    ] ================================================
[2026-10-28 14:59:03,706.706 INFO    ] Launching Daemon at Wed Oct 28 14:59:03 IST 2026
[2026-10-28 14:59:03,717.717 INFO    ] ================================================
[2026-10-28 14:59:04,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:59:04
[2026-10-28 14:59:04,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:59:05,187.187 INFO    ] Initializing speech engine...
[2026-10-28 14:59:05,194.194 INFO    ] 2026-10-28 14:59:05
[2026-10-28 14:59:05,485.485 INFO    ] 2026-10-28 14:59:05
[2026-10-28 14:59:05,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:59:05,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:59:05,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:59:06,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:59:06,084.084 INFO    ] time= 28/10/2026 14:59:06
[2026-10-28 14:59:06,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:59:06,127.127 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:59:06,274.274 INFO    ] No existing commands found in stream
[2026-10-28 14:59:11,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:59:11,308.308 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 14:59:14,889.889 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 14:59:14,891.891 INFO    ] Checking for system updates...
[2026-10-28 14:59:14,927.927 INFO    ] 200
[2026-10-28 14:59:14,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:59:14,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:59:14,992.992 INFO    ] No update needed
[2026-10-28 14:59:14,995.995 INFO    ] Checking for camera pi updates...
[2026-10-28 14:59:15,032.032 INFO    ] 200
[2026-10-28 14:59:15,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:59:15,081.081 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:59:15,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:59:15,174.174 INFO    ] No camera update needed
[2026-10-28 14:59:15,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:59:15,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:59:15,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:59:15,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:59:17,231.231 INFO    ] ================================================
[2026-10-28 14:59:17,247.247 INFO    ] Launching Daemon at Wed Oct 28 14:59:17 IST 2026
[2026-10-28 14:59:17,258.258 INFO    ] ================================================
[2026-10-28 14:59:17,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:59:17
[2026-10-28 14:59:18,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:59:18,768.768 INFO    ] Initializing speech engine...
[2026-10-28 14:59:18,775.775 INFO    ] 2026-10-28 14:59:18
[2026-10-28 14:59:19,071.071 INFO    ] 2026-10-28 14:59:19
[2026-10-28 14:59:19,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:59:19,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:59:19,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:59:19,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:59:19,700.700 INFO    ] time= 28/10/2026 14:59:19
[2026-10-28 14:59:19,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:59:19,729.729 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:59:19,885.885 INFO    ] No existing commands found in stream
[2026-10-28 14:59:24,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:59:24,904.904 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-28 14:59:27,185.185 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 14:59:27,188.188 INFO    ] Checking for system updates...
[2026-10-28 14:59:27,227.227 INFO    ] 200
[2026-10-28 14:59:27,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:59:27,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:59:27,290.290 INFO    ] No update needed
[2026-10-28 14:59:27,292.292 INFO    ] Checking for camera pi updates...
[2026-10-28 14:59:27,329.329 INFO    ] 200
[2026-10-28 14:59:27,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:59:27,371.371 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:59:27,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 14:59:27,452.452 INFO    ] No camera update needed
[2026-10-28 14:59:27,455.455 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:59:27,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:59:27,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:59:27,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:59:29,508.508 INFO    ] ================================================
[2026-10-28 14:59:29,524.524 INFO    ] Launching Daemon at Wed Oct 28 14:59:29 IST 2026
[2026-10-28 14:59:29,535.535 INFO    ] ================================================
[2026-10-28 14:59:30,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:59:30
[2026-10-28 14:59:30,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:59:30,934.934 INFO    ] Initializing speech engine...
[2026-10-28 14:59:30,940.940 INFO    ] 2026-10-28 14:59:30
[2026-10-28 14:59:31,216.216 INFO    ] 2026-10-28 14:59:31
[2026-10-28 14:59:31,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:59:31,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:59:31,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:59:31,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:59:31,794.794 INFO    ] time= 28/10/2026 14:59:31
[2026-10-28 14:59:31,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:59:31,842.842 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:59:31,982.982 INFO    ] No existing commands found in stream
[2026-10-28 14:59:37,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:59:37,011.011 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-28 14:59:41,264.264 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 14:59:41,267.267 INFO    ] Checking for system updates...
[2026-10-28 14:59:41,308.308 INFO    ] 200
[2026-10-28 14:59:41,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:59:41,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:59:41,372.372 INFO    ] No update needed
[2026-10-28 14:59:41,375.375 INFO    ] Checking for camera pi updates...
[2026-10-28 14:59:41,413.413 INFO    ] 200
[2026-10-28 14:59:41,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:59:41,461.461 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:59:41,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:59:41,559.559 INFO    ] No camera update needed
[2026-10-28 14:59:41,561.561 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:59:41,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:59:41,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:59:41,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:59:43,619.619 INFO    ] ================================================
[2026-10-28 14:59:43,635.635 INFO    ] Launching Daemon at Wed Oct 28 14:59:43 IST 2026
[2026-10-28 14:59:43,646.646 INFO    ] ================================================
[2026-10-28 14:59:44,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:59:44
[2026-10-28 14:59:44,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:59:45,101.101 INFO    ] Initializing speech engine...
[2026-10-28 14:59:45,108.108 INFO    ] 2026-10-28 14:59:45
[2026-10-28 14:59:45,383.383 INFO    ] 2026-10-28 14:59:45
[2026-10-28 14:59:45,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:59:45,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:59:45,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:59:45,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:59:45,924.924 INFO    ] time= 28/10/2026 14:59:45
[2026-10-28 14:59:45,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 14:59:45,959.959 INFO    ] Checking for existing commands in stream...
[2026-10-28 14:59:46,075.075 INFO    ] No existing commands found in stream
[2026-10-28 14:59:51,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 14:59:51,108.108 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-28 14:59:54,966.966 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 14:59:54,969.969 INFO    ] Checking for system updates...
[2026-10-28 14:59:55,006.006 INFO    ] 200
[2026-10-28 14:59:55,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:59:55,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:59:55,065.065 INFO    ] No update needed
[2026-10-28 14:59:55,067.067 INFO    ] Checking for camera pi updates...
[2026-10-28 14:59:55,102.102 INFO    ] 200
[2026-10-28 14:59:55,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 14:59:55,150.150 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 14:59:55,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 14:59:55,252.252 INFO    ] No camera update needed
[2026-10-28 14:59:55,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-28 14:59:55,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 14:59:55,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 14:59:55,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 14:59:57,319.319 INFO    ] ================================================
[2026-10-28 14:59:57,334.334 INFO    ] Launching Daemon at Wed Oct 28 14:59:57 IST 2026
[2026-10-28 14:59:57,345.345 INFO    ] ================================================
[2026-10-28 14:59:57,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 14:59:57
[2026-10-28 14:59:58,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 14:59:58,956.956 INFO    ] Initializing speech engine...
[2026-10-28 14:59:58,970.970 INFO    ] 2026-10-28 14:59:58
[2026-10-28 14:59:59,249.249 INFO    ] 2026-10-28 14:59:59
[2026-10-28 14:59:59,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 14:59:59,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 14:59:59,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 14:59:59,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 14:59:59,999.999 INFO    ] time= 28/10/2026 14:59:59
[2026-10-28 15:00:00,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:00:00,109.109 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:00:00,236.236 INFO    ] No existing commands found in stream
[2026-10-28 15:00:05,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:00:05,254.254 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-28 15:00:10,542.542 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:00:10,546.546 INFO    ] Checking for system updates...
[2026-10-28 15:00:10,583.583 INFO    ] 200
[2026-10-28 15:00:10,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:00:10,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:00:10,642.642 INFO    ] No update needed
[2026-10-28 15:00:10,646.646 INFO    ] Checking for camera pi updates...
[2026-10-28 15:00:10,681.681 INFO    ] 200
[2026-10-28 15:00:10,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:00:10,726.726 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:00:10,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:00:10,779.779 INFO    ] No camera update needed
[2026-10-28 15:00:10,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:00:10,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:00:10,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:00:10,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:00:12,839.839 INFO    ] ================================================
[2026-10-28 15:00:12,855.855 INFO    ] Launching Daemon at Wed Oct 28 15:00:12 IST 2026
[2026-10-28 15:00:12,866.866 INFO    ] ================================================
[2026-10-28 15:00:13,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:00:13
[2026-10-28 15:00:14,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:00:14,287.287 INFO    ] Initializing speech engine...
[2026-10-28 15:00:14,298.298 INFO    ] 2026-10-28 15:00:14
[2026-10-28 15:00:14,543.543 INFO    ] 2026-10-28 15:00:14
[2026-10-28 15:00:14,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:00:14,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:00:14,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:00:15,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:00:15,099.099 INFO    ] time= 28/10/2026 15:00:15
[2026-10-28 15:00:15,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:00:15,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:00:15,310.310 INFO    ] No existing commands found in stream
[2026-10-28 15:00:20,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:00:20,343.343 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 15:00:23,873.873 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:00:23,876.876 INFO    ] Checking for system updates...
[2026-10-28 15:00:23,911.911 INFO    ] 200
[2026-10-28 15:00:23,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:00:23,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:00:23,973.973 INFO    ] No update needed
[2026-10-28 15:00:23,976.976 INFO    ] Checking for camera pi updates...
[2026-10-28 15:00:24,010.010 INFO    ] 200
[2026-10-28 15:00:24,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:00:24,053.053 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:00:24,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:00:24,138.138 INFO    ] No camera update needed
[2026-10-28 15:00:24,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:00:24,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:00:24,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:00:24,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:00:26,195.195 INFO    ] ================================================
[2026-10-28 15:00:26,211.211 INFO    ] Launching Daemon at Wed Oct 28 15:00:26 IST 2026
[2026-10-28 15:00:26,222.222 INFO    ] ================================================
[2026-10-28 15:00:26,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:00:26
[2026-10-28 15:00:27,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:00:27,712.712 INFO    ] Initializing speech engine...
[2026-10-28 15:00:27,743.743 INFO    ] 2026-10-28 15:00:27
[2026-10-28 15:00:28,026.026 INFO    ] 2026-10-28 15:00:28
[2026-10-28 15:00:28,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:00:28,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:00:28,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:00:28,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:00:28,613.613 INFO    ] time= 28/10/2026 15:00:28
[2026-10-28 15:00:28,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:00:28,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:00:28,754.754 INFO    ] No existing commands found in stream
[2026-10-28 15:00:33,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:00:33,783.783 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-28 15:00:34,730.730 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:00:34,732.732 INFO    ] Checking for system updates...
[2026-10-28 15:00:34,769.769 INFO    ] 200
[2026-10-28 15:00:34,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:00:34,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:00:34,832.832 INFO    ] No update needed
[2026-10-28 15:00:34,834.834 INFO    ] Checking for camera pi updates...
[2026-10-28 15:00:34,868.868 INFO    ] 200
[2026-10-28 15:00:34,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:00:34,919.919 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:00:35,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:00:35,009.009 INFO    ] No camera update needed
[2026-10-28 15:00:35,012.012 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:00:35,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:00:35,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:00:35,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:00:37,065.065 INFO    ] ================================================
[2026-10-28 15:00:37,080.080 INFO    ] Launching Daemon at Wed Oct 28 15:00:37 IST 2026
[2026-10-28 15:00:37,090.090 INFO    ] ================================================
[2026-10-28 15:00:37,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:00:37
[2026-10-28 15:00:38,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:00:38,499.499 INFO    ] Initializing speech engine...
[2026-10-28 15:00:38,507.507 INFO    ] 2026-10-28 15:00:38
[2026-10-28 15:00:38,800.800 INFO    ] 2026-10-28 15:00:38
[2026-10-28 15:00:38,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:00:39,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:00:39,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:00:39,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:00:39,300.300 INFO    ] time= 28/10/2026 15:00:39
[2026-10-28 15:00:39,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:00:39,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:00:39,488.488 INFO    ] No existing commands found in stream
[2026-10-28 15:00:44,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:00:44,502.502 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 15:00:46,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:00:46,586.586 INFO    ] Checking for system updates...
[2026-10-28 15:00:46,621.621 INFO    ] 200
[2026-10-28 15:00:46,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:00:46,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:00:46,678.678 INFO    ] No update needed
[2026-10-28 15:00:46,680.680 INFO    ] Checking for camera pi updates...
[2026-10-28 15:00:46,714.714 INFO    ] 200
[2026-10-28 15:00:46,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:00:46,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:00:46,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:00:46,844.844 INFO    ] No camera update needed
[2026-10-28 15:00:46,846.846 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:00:46,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:00:46,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:00:46,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:00:48,899.899 INFO    ] ================================================
[2026-10-28 15:00:48,914.914 INFO    ] Launching Daemon at Wed Oct 28 15:00:48 IST 2026
[2026-10-28 15:00:48,924.924 INFO    ] ================================================
[2026-10-28 15:00:49,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:00:49
[2026-10-28 15:00:50,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:00:50,374.374 INFO    ] Initializing speech engine...
[2026-10-28 15:00:50,381.381 INFO    ] 2026-10-28 15:00:50
[2026-10-28 15:00:50,682.682 INFO    ] 2026-10-28 15:00:50
[2026-10-28 15:00:50,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:00:51,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:00:51,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:00:51,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:00:51,304.304 INFO    ] time= 28/10/2026 15:00:51
[2026-10-28 15:00:51,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:00:51,320.320 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:00:51,471.471 INFO    ] No existing commands found in stream
[2026-10-28 15:00:56,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:00:56,495.495 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-28 15:00:58,166.166 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:00:58,169.169 INFO    ] Checking for system updates...
[2026-10-28 15:00:58,205.205 INFO    ] 200
[2026-10-28 15:00:58,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:00:58,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:00:58,268.268 INFO    ] No update needed
[2026-10-28 15:00:58,271.271 INFO    ] Checking for camera pi updates...
[2026-10-28 15:00:58,304.304 INFO    ] 200
[2026-10-28 15:00:58,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:00:58,347.347 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:00:58,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:00:58,434.434 INFO    ] No camera update needed
[2026-10-28 15:00:58,437.437 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:00:58,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:00:58,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:00:58,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:01:00,493.493 INFO    ] ================================================
[2026-10-28 15:01:00,508.508 INFO    ] Launching Daemon at Wed Oct 28 15:01:00 IST 2026
[2026-10-28 15:01:00,519.519 INFO    ] ================================================
[2026-10-28 15:01:01,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:01:01
[2026-10-28 15:01:01,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:01:02,124.124 INFO    ] Initializing speech engine...
[2026-10-28 15:01:02,142.142 INFO    ] 2026-10-28 15:01:02
[2026-10-28 15:01:02,443.443 INFO    ] 2026-10-28 15:01:02
[2026-10-28 15:01:02,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:01:02,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:01:02,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:01:02,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:01:03,026.026 INFO    ] time= 28/10/2026 15:01:02
[2026-10-28 15:01:03,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:01:03,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:01:03,219.219 INFO    ] No existing commands found in stream
[2026-10-28 15:01:08,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:01:08,258.258 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-28 15:01:09,548.548 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:01:09,551.551 INFO    ] Checking for system updates...
[2026-10-28 15:01:09,589.589 INFO    ] 200
[2026-10-28 15:01:09,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:01:09,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:01:09,647.647 INFO    ] No update needed
[2026-10-28 15:01:09,653.653 INFO    ] Checking for camera pi updates...
[2026-10-28 15:01:09,690.690 INFO    ] 200
[2026-10-28 15:01:09,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:01:09,732.732 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:01:09,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:01:09,836.836 INFO    ] No camera update needed
[2026-10-28 15:01:09,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:01:09,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:01:09,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:01:09,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:01:11,891.891 INFO    ] ================================================
[2026-10-28 15:01:11,906.906 INFO    ] Launching Daemon at Wed Oct 28 15:01:11 IST 2026
[2026-10-28 15:01:11,917.917 INFO    ] ================================================
[2026-10-28 15:01:12,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:01:12
[2026-10-28 15:01:13,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:01:13,346.346 INFO    ] Initializing speech engine...
[2026-10-28 15:01:13,355.355 INFO    ] 2026-10-28 15:01:13
[2026-10-28 15:01:13,601.601 INFO    ] 2026-10-28 15:01:13
[2026-10-28 15:01:13,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:01:13,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:01:13,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:01:14,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:01:14,156.156 INFO    ] time= 28/10/2026 15:01:14
[2026-10-28 15:01:14,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:01:14,184.184 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:01:14,313.313 INFO    ] No existing commands found in stream
[2026-10-28 15:01:19,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:01:19,334.334 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-28 15:01:20,906.906 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:01:20,909.909 INFO    ] Checking for system updates...
[2026-10-28 15:01:20,944.944 INFO    ] 200
[2026-10-28 15:01:20,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:01:20,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:01:21,000.000 INFO    ] No update needed
[2026-10-28 15:01:21,003.003 INFO    ] Checking for camera pi updates...
[2026-10-28 15:01:21,039.039 INFO    ] 200
[2026-10-28 15:01:21,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:01:21,081.081 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:01:21,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:01:21,163.163 INFO    ] No camera update needed
[2026-10-28 15:01:21,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:01:21,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:01:21,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:01:21,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:01:23,219.219 INFO    ] ================================================
[2026-10-28 15:01:23,234.234 INFO    ] Launching Daemon at Wed Oct 28 15:01:23 IST 2026
[2026-10-28 15:01:23,245.245 INFO    ] ================================================
[2026-10-28 15:01:23,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:01:23
[2026-10-28 15:01:24,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:01:24,693.693 INFO    ] Initializing speech engine...
[2026-10-28 15:01:24,701.701 INFO    ] 2026-10-28 15:01:24
[2026-10-28 15:01:24,994.994 INFO    ] 2026-10-28 15:01:24
[2026-10-28 15:01:25,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:01:25,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:01:25,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:01:25,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:01:25,607.607 INFO    ] time= 28/10/2026 15:01:25
[2026-10-28 15:01:25,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:01:25,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:01:25,781.781 INFO    ] No existing commands found in stream
[2026-10-28 15:01:30,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:01:30,800.800 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-28 15:01:33,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:01:33,969.969 INFO    ] Checking for system updates...
[2026-10-28 15:01:34,004.004 INFO    ] 200
[2026-10-28 15:01:34,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:01:34,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:01:34,065.065 INFO    ] No update needed
[2026-10-28 15:01:34,067.067 INFO    ] Checking for camera pi updates...
[2026-10-28 15:01:34,101.101 INFO    ] 200
[2026-10-28 15:01:34,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:01:34,146.146 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:01:34,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:01:34,233.233 INFO    ] No camera update needed
[2026-10-28 15:01:34,236.236 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:01:34,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:01:34,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:01:34,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:01:36,288.288 INFO    ] ================================================
[2026-10-28 15:01:36,305.305 INFO    ] Launching Daemon at Wed Oct 28 15:01:36 IST 2026
[2026-10-28 15:01:36,315.315 INFO    ] ================================================
[2026-10-28 15:01:36,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:01:36
[2026-10-28 15:01:37,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:01:37,759.759 INFO    ] Initializing speech engine...
[2026-10-28 15:01:37,770.770 INFO    ] 2026-10-28 15:01:37
[2026-10-28 15:01:38,027.027 INFO    ] 2026-10-28 15:01:38
[2026-10-28 15:01:38,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:01:38,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:01:38,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:01:38,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:01:38,572.572 INFO    ] time= 28/10/2026 15:01:38
[2026-10-28 15:01:38,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:01:38,596.596 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:01:38,744.744 INFO    ] No existing commands found in stream
[2026-10-28 15:01:43,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:01:43,778.778 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 15:01:44,461.461 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:01:44,463.463 INFO    ] Checking for system updates...
[2026-10-28 15:01:44,500.500 INFO    ] 200
[2026-10-28 15:01:44,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:01:44,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:01:44,567.567 INFO    ] No update needed
[2026-10-28 15:01:44,570.570 INFO    ] Checking for camera pi updates...
[2026-10-28 15:01:44,604.604 INFO    ] 200
[2026-10-28 15:01:44,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:01:44,653.653 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:01:44,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:01:44,836.836 INFO    ] No camera update needed
[2026-10-28 15:01:44,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:01:44,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:01:44,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:01:44,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:01:46,894.894 INFO    ] ================================================
[2026-10-28 15:01:46,910.910 INFO    ] Launching Daemon at Wed Oct 28 15:01:46 IST 2026
[2026-10-28 15:01:46,921.921 INFO    ] ================================================
[2026-10-28 15:01:47,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:01:47
[2026-10-28 15:01:48,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:01:48,552.552 INFO    ] Initializing speech engine...
[2026-10-28 15:01:48,560.560 INFO    ] 2026-10-28 15:01:48
[2026-10-28 15:01:48,836.836 INFO    ] 2026-10-28 15:01:48
[2026-10-28 15:01:48,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:01:49,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:01:49,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:01:49,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:01:49,426.426 INFO    ] time= 28/10/2026 15:01:49
[2026-10-28 15:01:49,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:01:49,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:01:49,594.594 INFO    ] No existing commands found in stream
[2026-10-28 15:01:54,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:01:54,633.633 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 15:01:55,784.784 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:01:55,787.787 INFO    ] Checking for system updates...
[2026-10-28 15:01:55,823.823 INFO    ] 200
[2026-10-28 15:01:55,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:01:55,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:01:55,890.890 INFO    ] No update needed
[2026-10-28 15:01:55,893.893 INFO    ] Checking for camera pi updates...
[2026-10-28 15:01:55,927.927 INFO    ] 200
[2026-10-28 15:01:55,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:01:55,971.971 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:01:56,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:01:56,060.060 INFO    ] No camera update needed
[2026-10-28 15:01:56,062.062 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:01:56,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:01:56,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:01:56,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:01:58,118.118 INFO    ] ================================================
[2026-10-28 15:01:58,133.133 INFO    ] Launching Daemon at Wed Oct 28 15:01:58 IST 2026
[2026-10-28 15:01:58,144.144 INFO    ] ================================================
[2026-10-28 15:01:58,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:01:58
[2026-10-28 15:01:59,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:01:59,702.702 INFO    ] Initializing speech engine...
[2026-10-28 15:01:59,711.711 INFO    ] 2026-10-28 15:01:59
[2026-10-28 15:01:59,983.983 INFO    ] 2026-10-28 15:01:59
[2026-10-28 15:02:00,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:02:00,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:02:00,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:02:00,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:02:00,764.764 INFO    ] time= 28/10/2026 15:02:00
[2026-10-28 15:02:00,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:02:00,856.856 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:02:00,974.974 INFO    ] No existing commands found in stream
[2026-10-28 15:02:05,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:02:05,997.997 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-28 15:02:07,826.826 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:02:07,829.829 INFO    ] Checking for system updates...
[2026-10-28 15:02:07,866.866 INFO    ] 200
[2026-10-28 15:02:07,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:02:07,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:02:07,925.925 INFO    ] No update needed
[2026-10-28 15:02:07,928.928 INFO    ] Checking for camera pi updates...
[2026-10-28 15:02:07,967.967 INFO    ] 200
[2026-10-28 15:02:07,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:02:08,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:02:08,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:02:08,101.101 INFO    ] No camera update needed
[2026-10-28 15:02:08,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:02:08,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:02:08,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:02:08,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:02:10,161.161 INFO    ] ================================================
[2026-10-28 15:02:10,176.176 INFO    ] Launching Daemon at Wed Oct 28 15:02:10 IST 2026
[2026-10-28 15:02:10,187.187 INFO    ] ================================================
[2026-10-28 15:02:10,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:02:10
[2026-10-28 15:02:11,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:02:11,596.596 INFO    ] Initializing speech engine...
[2026-10-28 15:02:11,617.617 INFO    ] 2026-10-28 15:02:11
[2026-10-28 15:02:11,896.896 INFO    ] 2026-10-28 15:02:11
[2026-10-28 15:02:11,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:02:12,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:02:12,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:02:12,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:02:12,445.445 INFO    ] time= 28/10/2026 15:02:12
[2026-10-28 15:02:12,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:02:12,546.546 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:02:12,692.692 INFO    ] No existing commands found in stream
[2026-10-28 15:02:17,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:02:17,720.720 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 15:02:19,705.705 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:02:19,707.707 INFO    ] Checking for system updates...
[2026-10-28 15:02:19,744.744 INFO    ] 200
[2026-10-28 15:02:19,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:02:19,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:02:19,802.802 INFO    ] No update needed
[2026-10-28 15:02:19,805.805 INFO    ] Checking for camera pi updates...
[2026-10-28 15:02:19,839.839 INFO    ] 200
[2026-10-28 15:02:19,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:02:19,882.882 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:02:19,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:02:19,996.996 INFO    ] No camera update needed
[2026-10-28 15:02:19,999.999 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:02:20,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:02:20,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:02:20,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:02:22,052.052 INFO    ] ================================================
[2026-10-28 15:02:22,067.067 INFO    ] Launching Daemon at Wed Oct 28 15:02:22 IST 2026
[2026-10-28 15:02:22,083.083 INFO    ] ================================================
[2026-10-28 15:02:22,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:02:22
[2026-10-28 15:02:23,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:02:23,742.742 INFO    ] Initializing speech engine...
[2026-10-28 15:02:23,749.749 INFO    ] 2026-10-28 15:02:23
[2026-10-28 15:02:24,070.070 INFO    ] 2026-10-28 15:02:24
[2026-10-28 15:02:24,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:02:24,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:02:24,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:02:24,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:02:24,766.766 INFO    ] time= 28/10/2026 15:02:24
[2026-10-28 15:02:24,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:02:24,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:02:25,001.001 INFO    ] No existing commands found in stream
[2026-10-28 15:02:30,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:02:30,041.041 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-28 15:02:32,322.322 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:02:32,325.325 INFO    ] Checking for system updates...
[2026-10-28 15:02:32,365.365 INFO    ] 200
[2026-10-28 15:02:32,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:02:32,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:02:32,429.429 INFO    ] No update needed
[2026-10-28 15:02:32,433.433 INFO    ] Checking for camera pi updates...
[2026-10-28 15:02:32,473.473 INFO    ] 200
[2026-10-28 15:02:32,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:02:32,525.525 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:02:32,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:02:32,637.637 INFO    ] No camera update needed
[2026-10-28 15:02:32,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:02:32,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:02:32,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:02:32,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:02:34,697.697 INFO    ] ================================================
[2026-10-28 15:02:34,712.712 INFO    ] Launching Daemon at Wed Oct 28 15:02:34 IST 2026
[2026-10-28 15:02:34,722.722 INFO    ] ================================================
[2026-10-28 15:02:35,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:02:35
[2026-10-28 15:02:35,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:02:36,158.158 INFO    ] Initializing speech engine...
[2026-10-28 15:02:36,167.167 INFO    ] 2026-10-28 15:02:36
[2026-10-28 15:02:36,425.425 INFO    ] 2026-10-28 15:02:36
[2026-10-28 15:02:36,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:02:36,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:02:36,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:02:37,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:02:37,034.034 INFO    ] time= 28/10/2026 15:02:37
[2026-10-28 15:02:37,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:02:37,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:02:37,246.246 INFO    ] No existing commands found in stream
[2026-10-28 15:02:42,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:02:42,264.264 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-28 15:02:43,002.002 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:02:43,005.005 INFO    ] Checking for system updates...
[2026-10-28 15:02:43,041.041 INFO    ] 200
[2026-10-28 15:02:43,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:02:43,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:02:43,099.099 INFO    ] No update needed
[2026-10-28 15:02:43,101.101 INFO    ] Checking for camera pi updates...
[2026-10-28 15:02:43,135.135 INFO    ] 200
[2026-10-28 15:02:43,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:02:43,177.177 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:02:43,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:02:43,251.251 INFO    ] No camera update needed
[2026-10-28 15:02:43,253.253 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:02:43,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:02:43,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:02:43,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:02:45,316.316 INFO    ] ================================================
[2026-10-28 15:02:45,331.331 INFO    ] Launching Daemon at Wed Oct 28 15:02:45 IST 2026
[2026-10-28 15:02:45,342.342 INFO    ] ================================================
[2026-10-28 15:02:45,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:02:45
[2026-10-28 15:02:46,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:02:46,778.778 INFO    ] Initializing speech engine...
[2026-10-28 15:02:46,786.786 INFO    ] 2026-10-28 15:02:46
[2026-10-28 15:02:47,081.081 INFO    ] 2026-10-28 15:02:47
[2026-10-28 15:02:47,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:02:47,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:02:47,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:02:47,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:02:47,626.626 INFO    ] time= 28/10/2026 15:02:47
[2026-10-28 15:02:47,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:02:47,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:02:47,836.836 INFO    ] No existing commands found in stream
[2026-10-28 15:02:52,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:02:52,854.854 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 15:02:55,228.228 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:02:55,231.231 INFO    ] Checking for system updates...
[2026-10-28 15:02:55,269.269 INFO    ] 200
[2026-10-28 15:02:55,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:02:55,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:02:55,337.337 INFO    ] No update needed
[2026-10-28 15:02:55,340.340 INFO    ] Checking for camera pi updates...
[2026-10-28 15:02:55,378.378 INFO    ] 200
[2026-10-28 15:02:55,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:02:55,428.428 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:02:55,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:02:55,512.512 INFO    ] No camera update needed
[2026-10-28 15:02:55,515.515 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:02:55,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:02:55,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:02:55,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:02:57,572.572 INFO    ] ================================================
[2026-10-28 15:02:57,587.587 INFO    ] Launching Daemon at Wed Oct 28 15:02:57 IST 2026
[2026-10-28 15:02:57,598.598 INFO    ] ================================================
[2026-10-28 15:02:58,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:02:58
[2026-10-28 15:02:58,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:02:59,010.010 INFO    ] Initializing speech engine...
[2026-10-28 15:02:59,029.029 INFO    ] 2026-10-28 15:02:59
[2026-10-28 15:02:59,274.274 INFO    ] 2026-10-28 15:02:59
[2026-10-28 15:02:59,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:02:59,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:02:59,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:02:59,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:02:59,842.842 INFO    ] time= 28/10/2026 15:02:59
[2026-10-28 15:02:59,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:02:59,870.870 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:03:00,007.007 INFO    ] No existing commands found in stream
[2026-10-28 15:03:05,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:03:05,028.028 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 15:03:07,954.954 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:03:07,956.956 INFO    ] Checking for system updates...
[2026-10-28 15:03:07,993.993 INFO    ] 200
[2026-10-28 15:03:07,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:03:08,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:03:08,055.055 INFO    ] No update needed
[2026-10-28 15:03:08,058.058 INFO    ] Checking for camera pi updates...
[2026-10-28 15:03:08,091.091 INFO    ] 200
[2026-10-28 15:03:08,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:03:08,134.134 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:03:08,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:03:08,229.229 INFO    ] No camera update needed
[2026-10-28 15:03:08,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:03:08,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:03:08,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:03:08,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:03:10,284.284 INFO    ] ================================================
[2026-10-28 15:03:10,299.299 INFO    ] Launching Daemon at Wed Oct 28 15:03:10 IST 2026
[2026-10-28 15:03:10,310.310 INFO    ] ================================================
[2026-10-28 15:03:10,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:03:10
[2026-10-28 15:03:11,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:03:11,713.713 INFO    ] Initializing speech engine...
[2026-10-28 15:03:11,719.719 INFO    ] 2026-10-28 15:03:11
[2026-10-28 15:03:12,012.012 INFO    ] 2026-10-28 15:03:11
[2026-10-28 15:03:12,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:03:12,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:03:12,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:03:12,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:03:12,606.606 INFO    ] time= 28/10/2026 15:03:12
[2026-10-28 15:03:12,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:03:12,631.631 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:03:12,759.759 INFO    ] No existing commands found in stream
[2026-10-28 15:03:17,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:03:17,776.776 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-28 15:03:19,983.983 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:03:19,986.986 INFO    ] Checking for system updates...
[2026-10-28 15:03:20,022.022 INFO    ] 200
[2026-10-28 15:03:20,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:03:20,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:03:20,079.079 INFO    ] No update needed
[2026-10-28 15:03:20,082.082 INFO    ] Checking for camera pi updates...
[2026-10-28 15:03:20,115.115 INFO    ] 200
[2026-10-28 15:03:20,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:03:20,158.158 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:03:20,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:03:20,261.261 INFO    ] No camera update needed
[2026-10-28 15:03:20,263.263 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:03:20,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:03:20,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:03:20,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:03:22,316.316 INFO    ] ================================================
[2026-10-28 15:03:22,331.331 INFO    ] Launching Daemon at Wed Oct 28 15:03:22 IST 2026
[2026-10-28 15:03:22,342.342 INFO    ] ================================================
[2026-10-28 15:03:22,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:03:22
[2026-10-28 15:03:23,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:03:23,759.759 INFO    ] Initializing speech engine...
[2026-10-28 15:03:23,768.768 INFO    ] 2026-10-28 15:03:23
[2026-10-28 15:03:24,016.016 INFO    ] 2026-10-28 15:03:24
[2026-10-28 15:03:24,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:03:24,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:03:24,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:03:24,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:03:24,597.597 INFO    ] time= 28/10/2026 15:03:24
[2026-10-28 15:03:24,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:03:24,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:03:24,761.761 INFO    ] No existing commands found in stream
[2026-10-28 15:03:29,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:03:29,794.794 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 15:03:33,513.513 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:03:33,515.515 INFO    ] Checking for system updates...
[2026-10-28 15:03:33,551.551 INFO    ] 200
[2026-10-28 15:03:33,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:03:33,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:03:33,610.610 INFO    ] No update needed
[2026-10-28 15:03:33,612.612 INFO    ] Checking for camera pi updates...
[2026-10-28 15:03:33,646.646 INFO    ] 200
[2026-10-28 15:03:33,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:03:33,688.688 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:03:33,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:03:33,770.770 INFO    ] No camera update needed
[2026-10-28 15:03:33,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:03:33,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:03:33,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:03:33,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:03:35,827.827 INFO    ] ================================================
[2026-10-28 15:03:35,842.842 INFO    ] Launching Daemon at Wed Oct 28 15:03:35 IST 2026
[2026-10-28 15:03:35,853.853 INFO    ] ================================================
[2026-10-28 15:03:36,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:03:36
[2026-10-28 15:03:37,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:03:37,282.282 INFO    ] Initializing speech engine...
[2026-10-28 15:03:37,290.290 INFO    ] 2026-10-28 15:03:37
[2026-10-28 15:03:37,543.543 INFO    ] 2026-10-28 15:03:37
[2026-10-28 15:03:37,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:03:37,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:03:37,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:03:38,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:03:38,117.117 INFO    ] time= 28/10/2026 15:03:38
[2026-10-28 15:03:38,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:03:38,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:03:38,319.319 INFO    ] No existing commands found in stream
[2026-10-28 15:03:43,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:03:43,346.346 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 15:03:46,903.903 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:03:46,905.905 INFO    ] Checking for system updates...
[2026-10-28 15:03:46,942.942 INFO    ] 200
[2026-10-28 15:03:46,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:03:46,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:03:46,999.999 INFO    ] No update needed
[2026-10-28 15:03:47,004.004 INFO    ] Checking for camera pi updates...
[2026-10-28 15:03:47,038.038 INFO    ] 200
[2026-10-28 15:03:47,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:03:47,081.081 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:03:47,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:03:47,284.284 INFO    ] No camera update needed
[2026-10-28 15:03:47,286.286 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:03:47,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:03:47,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:03:47,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:03:49,339.339 INFO    ] ================================================
[2026-10-28 15:03:49,354.354 INFO    ] Launching Daemon at Wed Oct 28 15:03:49 IST 2026
[2026-10-28 15:03:49,365.365 INFO    ] ================================================
[2026-10-28 15:03:50,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:03:50
[2026-10-28 15:03:50,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:03:50,992.992 INFO    ] Initializing speech engine...
[2026-10-28 15:03:51,004.004 INFO    ] 2026-10-28 15:03:50
[2026-10-28 15:03:51,284.284 INFO    ] 2026-10-28 15:03:51
[2026-10-28 15:03:51,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:03:51,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:03:51,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:03:51,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:03:51,840.840 INFO    ] time= 28/10/2026 15:03:51
[2026-10-28 15:03:51,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:03:51,877.877 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:03:51,998.998 INFO    ] No existing commands found in stream
[2026-10-28 15:03:57,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:03:57,027.027 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-28 15:03:57,905.905 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:03:57,908.908 INFO    ] Checking for system updates...
[2026-10-28 15:03:57,944.944 INFO    ] 200
[2026-10-28 15:03:57,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:03:58,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:03:58,003.003 INFO    ] No update needed
[2026-10-28 15:03:58,006.006 INFO    ] Checking for camera pi updates...
[2026-10-28 15:03:58,044.044 INFO    ] 200
[2026-10-28 15:03:58,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:03:58,089.089 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:03:58,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:03:58,176.176 INFO    ] No camera update needed
[2026-10-28 15:03:58,178.178 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:03:58,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:03:58,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:03:58,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:04:00,234.234 INFO    ] ================================================
[2026-10-28 15:04:00,256.256 INFO    ] Launching Daemon at Wed Oct 28 15:04:00 IST 2026
[2026-10-28 15:04:00,267.267 INFO    ] ================================================
[2026-10-28 15:04:00,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:04:00
[2026-10-28 15:04:01,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:04:01,681.681 INFO    ] Initializing speech engine...
[2026-10-28 15:04:01,690.690 INFO    ] 2026-10-28 15:04:01
[2026-10-28 15:04:02,090.090 INFO    ] 2026-10-28 15:04:02
[2026-10-28 15:04:02,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:04:02,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:04:02,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:04:02,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:04:02,656.656 INFO    ] time= 28/10/2026 15:04:02
[2026-10-28 15:04:02,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:04:02,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:04:02,855.855 INFO    ] No existing commands found in stream
[2026-10-28 15:04:07,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:04:07,870.870 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-28 15:04:08,956.956 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:04:08,958.958 INFO    ] Checking for system updates...
[2026-10-28 15:04:08,994.994 INFO    ] 200
[2026-10-28 15:04:08,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:04:09,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:04:09,050.050 INFO    ] No update needed
[2026-10-28 15:04:09,052.052 INFO    ] Checking for camera pi updates...
[2026-10-28 15:04:09,087.087 INFO    ] 200
[2026-10-28 15:04:09,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:04:09,130.130 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:04:09,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:04:09,219.219 INFO    ] No camera update needed
[2026-10-28 15:04:09,221.221 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:04:09,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:04:09,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:04:09,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:04:11,275.275 INFO    ] ================================================
[2026-10-28 15:04:11,290.290 INFO    ] Launching Daemon at Wed Oct 28 15:04:11 IST 2026
[2026-10-28 15:04:11,301.301 INFO    ] ================================================
[2026-10-28 15:04:11,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:04:11
[2026-10-28 15:04:12,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:04:12,727.727 INFO    ] Initializing speech engine...
[2026-10-28 15:04:12,735.735 INFO    ] 2026-10-28 15:04:12
[2026-10-28 15:04:12,985.985 INFO    ] 2026-10-28 15:04:12
[2026-10-28 15:04:13,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:04:13,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:04:13,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:04:13,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:04:13,554.554 INFO    ] time= 28/10/2026 15:04:13
[2026-10-28 15:04:13,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:04:13,578.578 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:04:13,710.710 INFO    ] No existing commands found in stream
[2026-10-28 15:04:18,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:04:18,725.725 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-28 15:04:20,624.624 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:04:20,626.626 INFO    ] Checking for system updates...
[2026-10-28 15:04:20,663.663 INFO    ] 200
[2026-10-28 15:04:20,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:04:20,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:04:20,727.727 INFO    ] No update needed
[2026-10-28 15:04:20,730.730 INFO    ] Checking for camera pi updates...
[2026-10-28 15:04:20,764.764 INFO    ] 200
[2026-10-28 15:04:20,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:04:20,808.808 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:04:20,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:04:20,896.896 INFO    ] No camera update needed
[2026-10-28 15:04:20,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:04:20,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:04:20,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:04:20,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:04:22,956.956 INFO    ] ================================================
[2026-10-28 15:04:22,971.971 INFO    ] Launching Daemon at Wed Oct 28 15:04:22 IST 2026
[2026-10-28 15:04:22,982.982 INFO    ] ================================================
[2026-10-28 15:04:23,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:04:23
[2026-10-28 15:04:24,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:04:24,592.592 INFO    ] Initializing speech engine...
[2026-10-28 15:04:24,606.606 INFO    ] 2026-10-28 15:04:24
[2026-10-28 15:04:24,887.887 INFO    ] 2026-10-28 15:04:24
[2026-10-28 15:04:24,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:04:25,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:04:25,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:04:25,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:04:25,481.481 INFO    ] time= 28/10/2026 15:04:25
[2026-10-28 15:04:25,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:04:25,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:04:25,693.693 INFO    ] No existing commands found in stream
[2026-10-28 15:04:30,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:04:30,713.713 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-28 15:04:31,584.584 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:04:31,587.587 INFO    ] Checking for system updates...
[2026-10-28 15:04:31,624.624 INFO    ] 200
[2026-10-28 15:04:31,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:04:31,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:04:31,683.683 INFO    ] No update needed
[2026-10-28 15:04:31,686.686 INFO    ] Checking for camera pi updates...
[2026-10-28 15:04:31,721.721 INFO    ] 200
[2026-10-28 15:04:31,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:04:31,765.765 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:04:31,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:04:31,916.916 INFO    ] No camera update needed
[2026-10-28 15:04:31,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:04:31,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:04:31,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:04:31,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:04:33,981.981 INFO    ] ================================================
[2026-10-28 15:04:34,996.996 INFO    ] Launching Daemon at Wed Oct 28 15:04:33 IST 2026
[2026-10-28 15:04:34,007.007 INFO    ] ================================================
[2026-10-28 15:04:34,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:04:34
[2026-10-28 15:04:35,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:04:35,416.416 INFO    ] Initializing speech engine...
[2026-10-28 15:04:35,441.441 INFO    ] 2026-10-28 15:04:35
[2026-10-28 15:04:35,711.711 INFO    ] 2026-10-28 15:04:35
[2026-10-28 15:04:35,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:04:36,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:04:36,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:04:36,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:04:36,340.340 INFO    ] time= 28/10/2026 15:04:36
[2026-10-28 15:04:36,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:04:36,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:04:36,510.510 INFO    ] No existing commands found in stream
[2026-10-28 15:04:41,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:04:41,528.528 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 15:04:45,312.312 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:04:45,315.315 INFO    ] Checking for system updates...
[2026-10-28 15:04:45,354.354 INFO    ] 200
[2026-10-28 15:04:45,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:04:45,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:04:45,428.428 INFO    ] No update needed
[2026-10-28 15:04:45,430.430 INFO    ] Checking for camera pi updates...
[2026-10-28 15:04:45,466.466 INFO    ] 200
[2026-10-28 15:04:45,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:04:45,517.517 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:04:45,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:04:45,611.611 INFO    ] No camera update needed
[2026-10-28 15:04:45,613.613 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:04:45,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:04:45,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:04:45,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:04:47,670.670 INFO    ] ================================================
[2026-10-28 15:04:47,685.685 INFO    ] Launching Daemon at Wed Oct 28 15:04:47 IST 2026
[2026-10-28 15:04:47,696.696 INFO    ] ================================================
[2026-10-28 15:04:48,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:04:48
[2026-10-28 15:04:48,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:04:49,172.172 INFO    ] Initializing speech engine...
[2026-10-28 15:04:49,179.179 INFO    ] 2026-10-28 15:04:49
[2026-10-28 15:04:49,477.477 INFO    ] 2026-10-28 15:04:49
[2026-10-28 15:04:49,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:04:49,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:04:49,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:04:50,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:04:50,114.114 INFO    ] time= 28/10/2026 15:04:50
[2026-10-28 15:04:50,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:04:50,153.153 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:04:50,298.298 INFO    ] No existing commands found in stream
[2026-10-28 15:04:55,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:04:55,324.324 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-28 15:04:59,305.305 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:04:59,308.308 INFO    ] Checking for system updates...
[2026-10-28 15:04:59,344.344 INFO    ] 200
[2026-10-28 15:04:59,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:04:59,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:04:59,410.410 INFO    ] No update needed
[2026-10-28 15:04:59,413.413 INFO    ] Checking for camera pi updates...
[2026-10-28 15:04:59,447.447 INFO    ] 200
[2026-10-28 15:04:59,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:04:59,491.491 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:04:59,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:04:59,581.581 INFO    ] No camera update needed
[2026-10-28 15:04:59,584.584 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:04:59,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:04:59,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:04:59,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:05:01,641.641 INFO    ] ================================================
[2026-10-28 15:05:01,656.656 INFO    ] Launching Daemon at Wed Oct 28 15:05:01 IST 2026
[2026-10-28 15:05:01,667.667 INFO    ] ================================================
[2026-10-28 15:05:02,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:05:02
[2026-10-28 15:05:03,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:05:03,495.495 INFO    ] Initializing speech engine...
[2026-10-28 15:05:03,506.506 INFO    ] 2026-10-28 15:05:03
[2026-10-28 15:05:03,795.795 INFO    ] 2026-10-28 15:05:03
[2026-10-28 15:05:03,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:05:04,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:05:04,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:05:04,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:05:04,408.408 INFO    ] time= 28/10/2026 15:05:04
[2026-10-28 15:05:04,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:05:04,437.437 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:05:04,581.581 INFO    ] No existing commands found in stream
[2026-10-28 15:05:09,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:05:09,610.610 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-28 15:05:13,224.224 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:05:13,227.227 INFO    ] Checking for system updates...
[2026-10-28 15:05:13,263.263 INFO    ] 200
[2026-10-28 15:05:13,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:05:13,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:05:13,328.328 INFO    ] No update needed
[2026-10-28 15:05:13,331.331 INFO    ] Checking for camera pi updates...
[2026-10-28 15:05:13,365.365 INFO    ] 200
[2026-10-28 15:05:13,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:05:13,409.409 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:05:13,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:05:13,492.492 INFO    ] No camera update needed
[2026-10-28 15:05:13,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:05:13,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:05:13,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:05:13,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:05:15,549.549 INFO    ] ================================================
[2026-10-28 15:05:15,564.564 INFO    ] Launching Daemon at Wed Oct 28 15:05:15 IST 2026
[2026-10-28 15:05:15,575.575 INFO    ] ================================================
[2026-10-28 15:05:16,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:05:16
[2026-10-28 15:05:16,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:05:17,019.019 INFO    ] Initializing speech engine...
[2026-10-28 15:05:17,037.037 INFO    ] 2026-10-28 15:05:17
[2026-10-28 15:05:17,295.295 INFO    ] 2026-10-28 15:05:17
[2026-10-28 15:05:17,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:05:17,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:05:17,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:05:17,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:05:17,999.999 INFO    ] time= 28/10/2026 15:05:17
[2026-10-28 15:05:18,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:05:18,096.096 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:05:18,278.278 INFO    ] No existing commands found in stream
[2026-10-28 15:05:23,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:05:23,296.296 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-28 15:05:24,352.352 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:05:24,355.355 INFO    ] Checking for system updates...
[2026-10-28 15:05:24,390.390 INFO    ] 200
[2026-10-28 15:05:24,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:05:24,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:05:24,450.450 INFO    ] No update needed
[2026-10-28 15:05:24,452.452 INFO    ] Checking for camera pi updates...
[2026-10-28 15:05:24,485.485 INFO    ] 200
[2026-10-28 15:05:24,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:05:24,528.528 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:05:24,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:05:24,627.627 INFO    ] No camera update needed
[2026-10-28 15:05:24,629.629 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:05:24,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:05:24,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:05:24,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:05:26,682.682 INFO    ] ================================================
[2026-10-28 15:05:26,697.697 INFO    ] Launching Daemon at Wed Oct 28 15:05:26 IST 2026
[2026-10-28 15:05:26,708.708 INFO    ] ================================================
[2026-10-28 15:05:27,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:05:27
[2026-10-28 15:05:27,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:05:28,132.132 INFO    ] Initializing speech engine...
[2026-10-28 15:05:28,142.142 INFO    ] 2026-10-28 15:05:28
[2026-10-28 15:05:28,387.387 INFO    ] 2026-10-28 15:05:28
[2026-10-28 15:05:28,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:05:28,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:05:28,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:05:28,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:05:28,944.944 INFO    ] time= 28/10/2026 15:05:28
[2026-10-28 15:05:28,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:05:28,991.991 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:05:29,156.156 INFO    ] No existing commands found in stream
[2026-10-28 15:05:34,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:05:34,190.190 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 15:05:37,985.985 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:05:37,988.988 INFO    ] Checking for system updates...
[2026-10-28 15:05:38,031.031 INFO    ] 200
[2026-10-28 15:05:38,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:05:38,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:05:38,091.091 INFO    ] No update needed
[2026-10-28 15:05:38,094.094 INFO    ] Checking for camera pi updates...
[2026-10-28 15:05:38,127.127 INFO    ] 200
[2026-10-28 15:05:38,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:05:38,171.171 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:05:38,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:05:38,240.240 INFO    ] No camera update needed
[2026-10-28 15:05:38,242.242 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:05:38,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:05:38,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:05:38,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:05:40,296.296 INFO    ] ================================================
[2026-10-28 15:05:40,311.311 INFO    ] Launching Daemon at Wed Oct 28 15:05:40 IST 2026
[2026-10-28 15:05:40,322.322 INFO    ] ================================================
[2026-10-28 15:05:40,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:05:40
[2026-10-28 15:05:41,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:05:41,782.782 INFO    ] Initializing speech engine...
[2026-10-28 15:05:41,792.792 INFO    ] 2026-10-28 15:05:41
[2026-10-28 15:05:42,055.055 INFO    ] 2026-10-28 15:05:42
[2026-10-28 15:05:42,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:05:42,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:05:42,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:05:42,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:05:42,646.646 INFO    ] time= 28/10/2026 15:05:42
[2026-10-28 15:05:42,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:05:42,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:05:42,847.847 INFO    ] No existing commands found in stream
[2026-10-28 15:05:47,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:05:47,874.874 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-28 15:05:51,382.382 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:05:51,385.385 INFO    ] Checking for system updates...
[2026-10-28 15:05:51,421.421 INFO    ] 200
[2026-10-28 15:05:51,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:05:51,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:05:51,487.487 INFO    ] No update needed
[2026-10-28 15:05:51,490.490 INFO    ] Checking for camera pi updates...
[2026-10-28 15:05:51,524.524 INFO    ] 200
[2026-10-28 15:05:51,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:05:51,573.573 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:05:51,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:05:51,765.765 INFO    ] No camera update needed
[2026-10-28 15:05:51,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:05:51,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:05:51,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:05:51,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:05:53,824.824 INFO    ] ================================================
[2026-10-28 15:05:53,839.839 INFO    ] Launching Daemon at Wed Oct 28 15:05:53 IST 2026
[2026-10-28 15:05:53,851.851 INFO    ] ================================================
[2026-10-28 15:05:54,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:05:54
[2026-10-28 15:05:55,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:05:55,322.322 INFO    ] Initializing speech engine...
[2026-10-28 15:05:55,341.341 INFO    ] 2026-10-28 15:05:55
[2026-10-28 15:05:55,590.590 INFO    ] 2026-10-28 15:05:55
[2026-10-28 15:05:55,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:05:55,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:05:55,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:05:56,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:05:56,158.158 INFO    ] time= 28/10/2026 15:05:56
[2026-10-28 15:05:56,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:05:56,183.183 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:05:56,338.338 INFO    ] No existing commands found in stream
[2026-10-28 15:06:01,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:06:01,377.377 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-28 15:06:04,284.284 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:06:04,287.287 INFO    ] Checking for system updates...
[2026-10-28 15:06:04,322.322 INFO    ] 200
[2026-10-28 15:06:04,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:06:04,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:06:04,386.386 INFO    ] No update needed
[2026-10-28 15:06:04,388.388 INFO    ] Checking for camera pi updates...
[2026-10-28 15:06:04,422.422 INFO    ] 200
[2026-10-28 15:06:04,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:06:04,471.471 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:06:04,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:06:04,562.562 INFO    ] No camera update needed
[2026-10-28 15:06:04,564.564 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:06:04,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:06:04,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:06:04,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:06:06,621.621 INFO    ] ================================================
[2026-10-28 15:06:06,636.636 INFO    ] Launching Daemon at Wed Oct 28 15:06:06 IST 2026
[2026-10-28 15:06:06,647.647 INFO    ] ================================================
[2026-10-28 15:06:07,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:06:07
[2026-10-28 15:06:07,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:06:08,087.087 INFO    ] Initializing speech engine...
[2026-10-28 15:06:08,094.094 INFO    ] 2026-10-28 15:06:08
[2026-10-28 15:06:08,359.359 INFO    ] 2026-10-28 15:06:08
[2026-10-28 15:06:08,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:06:08,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:06:08,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:06:09,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:06:09,063.063 INFO    ] time= 28/10/2026 15:06:09
[2026-10-28 15:06:09,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:06:09,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:06:09,311.311 INFO    ] No existing commands found in stream
[2026-10-28 15:06:14,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:06:14,351.351 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 15:06:15,224.224 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:06:15,226.226 INFO    ] Checking for system updates...
[2026-10-28 15:06:15,263.263 INFO    ] 200
[2026-10-28 15:06:15,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:06:15,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:06:15,321.321 INFO    ] No update needed
[2026-10-28 15:06:15,323.323 INFO    ] Checking for camera pi updates...
[2026-10-28 15:06:15,361.361 INFO    ] 200
[2026-10-28 15:06:15,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:06:15,406.406 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:06:15,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:06:15,482.482 INFO    ] No camera update needed
[2026-10-28 15:06:15,485.485 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:06:15,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:06:15,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:06:15,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:06:17,538.538 INFO    ] ================================================
[2026-10-28 15:06:17,554.554 INFO    ] Launching Daemon at Wed Oct 28 15:06:17 IST 2026
[2026-10-28 15:06:17,564.564 INFO    ] ================================================
[2026-10-28 15:06:18,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:06:18
[2026-10-28 15:06:18,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:06:19,043.043 INFO    ] Initializing speech engine...
[2026-10-28 15:06:19,052.052 INFO    ] 2026-10-28 15:06:19
[2026-10-28 15:06:19,303.303 INFO    ] 2026-10-28 15:06:19
[2026-10-28 15:06:19,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:06:19,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:06:19,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:06:20,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:06:20,063.063 INFO    ] time= 28/10/2026 15:06:20
[2026-10-28 15:06:20,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:06:20,139.139 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:06:20,268.268 INFO    ] No existing commands found in stream
[2026-10-28 15:06:25,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:06:25,300.300 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-28 15:06:29,567.567 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:06:29,569.569 INFO    ] Checking for system updates...
[2026-10-28 15:06:29,605.605 INFO    ] 200
[2026-10-28 15:06:29,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:06:29,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:06:29,662.662 INFO    ] No update needed
[2026-10-28 15:06:29,665.665 INFO    ] Checking for camera pi updates...
[2026-10-28 15:06:29,702.702 INFO    ] 200
[2026-10-28 15:06:29,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:06:29,744.744 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:06:29,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:06:29,844.844 INFO    ] No camera update needed
[2026-10-28 15:06:29,846.846 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:06:29,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:06:29,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:06:29,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:06:31,900.900 INFO    ] ================================================
[2026-10-28 15:06:31,916.916 INFO    ] Launching Daemon at Wed Oct 28 15:06:31 IST 2026
[2026-10-28 15:06:31,928.928 INFO    ] ================================================
[2026-10-28 15:06:32,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:06:32
[2026-10-28 15:06:33,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:06:33,501.501 INFO    ] Initializing speech engine...
[2026-10-28 15:06:33,508.508 INFO    ] 2026-10-28 15:06:33
[2026-10-28 15:06:33,777.777 INFO    ] 2026-10-28 15:06:33
[2026-10-28 15:06:33,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:06:34,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:06:34,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:06:34,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:06:34,334.334 INFO    ] time= 28/10/2026 15:06:34
[2026-10-28 15:06:34,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:06:34,398.398 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:06:34,533.533 INFO    ] No existing commands found in stream
[2026-10-28 15:06:39,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:06:39,553.553 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-28 15:06:43,846.846 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:06:43,852.852 INFO    ] Checking for system updates...
[2026-10-28 15:06:43,889.889 INFO    ] 200
[2026-10-28 15:06:43,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:06:43,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:06:43,948.948 INFO    ] No update needed
[2026-10-28 15:06:43,951.951 INFO    ] Checking for camera pi updates...
[2026-10-28 15:06:43,989.989 INFO    ] 200
[2026-10-28 15:06:43,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:06:44,035.035 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:06:44,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:06:44,124.124 INFO    ] No camera update needed
[2026-10-28 15:06:44,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:06:44,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:06:44,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:06:44,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:06:46,183.183 INFO    ] ================================================
[2026-10-28 15:06:46,198.198 INFO    ] Launching Daemon at Wed Oct 28 15:06:46 IST 2026
[2026-10-28 15:06:46,209.209 INFO    ] ================================================
[2026-10-28 15:06:46,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:06:46
[2026-10-28 15:06:47,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:06:47,827.827 INFO    ] Initializing speech engine...
[2026-10-28 15:06:47,837.837 INFO    ] 2026-10-28 15:06:47
[2026-10-28 15:06:48,089.089 INFO    ] 2026-10-28 15:06:48
[2026-10-28 15:06:48,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:06:48,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:06:48,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:06:48,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:06:48,659.659 INFO    ] time= 28/10/2026 15:06:48
[2026-10-28 15:06:48,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:06:48,686.686 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:06:48,813.813 INFO    ] No existing commands found in stream
[2026-10-28 15:06:53,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:06:53,842.842 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-28 15:06:56,348.348 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:06:56,351.351 INFO    ] Checking for system updates...
[2026-10-28 15:06:56,386.386 INFO    ] 200
[2026-10-28 15:06:56,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:06:56,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:06:56,443.443 INFO    ] No update needed
[2026-10-28 15:06:56,446.446 INFO    ] Checking for camera pi updates...
[2026-10-28 15:06:56,484.484 INFO    ] 200
[2026-10-28 15:06:56,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:06:56,527.527 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:06:56,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:06:56,644.644 INFO    ] No camera update needed
[2026-10-28 15:06:56,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:06:56,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:06:56,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:06:56,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:06:58,702.702 INFO    ] ================================================
[2026-10-28 15:06:58,718.718 INFO    ] Launching Daemon at Wed Oct 28 15:06:58 IST 2026
[2026-10-28 15:06:58,728.728 INFO    ] ================================================
[2026-10-28 15:06:59,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:06:59
[2026-10-28 15:06:59,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:07:00,127.127 INFO    ] Initializing speech engine...
[2026-10-28 15:07:00,136.136 INFO    ] 2026-10-28 15:07:00
[2026-10-28 15:07:00,432.432 INFO    ] 2026-10-28 15:07:00
[2026-10-28 15:07:00,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:07:00,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:07:00,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:07:00,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:07:00,928.928 INFO    ] time= 28/10/2026 15:07:00
[2026-10-28 15:07:00,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:07:01,032.032 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:07:01,132.132 INFO    ] No existing commands found in stream
[2026-10-28 15:07:06,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:07:06,147.147 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-28 15:07:07,989.989 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:07:07,991.991 INFO    ] Checking for system updates...
[2026-10-28 15:07:08,028.028 INFO    ] 200
[2026-10-28 15:07:08,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:07:08,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:07:08,086.086 INFO    ] No update needed
[2026-10-28 15:07:08,092.092 INFO    ] Checking for camera pi updates...
[2026-10-28 15:07:08,127.127 INFO    ] 200
[2026-10-28 15:07:08,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:07:08,170.170 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:07:08,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:07:08,261.261 INFO    ] No camera update needed
[2026-10-28 15:07:08,263.263 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:07:08,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:07:08,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:07:08,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:07:10,324.324 INFO    ] ================================================
[2026-10-28 15:07:10,339.339 INFO    ] Launching Daemon at Wed Oct 28 15:07:10 IST 2026
[2026-10-28 15:07:10,350.350 INFO    ] ================================================
[2026-10-28 15:07:10,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:07:10
[2026-10-28 15:07:11,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:07:11,758.758 INFO    ] Initializing speech engine...
[2026-10-28 15:07:11,774.774 INFO    ] 2026-10-28 15:07:11
[2026-10-28 15:07:12,052.052 INFO    ] 2026-10-28 15:07:12
[2026-10-28 15:07:12,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:07:12,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:07:12,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:07:12,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:07:12,634.634 INFO    ] time= 28/10/2026 15:07:12
[2026-10-28 15:07:12,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:07:12,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:07:12,836.836 INFO    ] No existing commands found in stream
[2026-10-28 15:07:17,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:07:17,854.854 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-28 15:07:20,046.046 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:07:20,048.048 INFO    ] Checking for system updates...
[2026-10-28 15:07:20,084.084 INFO    ] 200
[2026-10-28 15:07:20,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:07:20,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:07:20,146.146 INFO    ] No update needed
[2026-10-28 15:07:20,149.149 INFO    ] Checking for camera pi updates...
[2026-10-28 15:07:20,182.182 INFO    ] 200
[2026-10-28 15:07:20,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:07:20,228.228 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:07:20,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:07:20,324.324 INFO    ] No camera update needed
[2026-10-28 15:07:20,326.326 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:07:20,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:07:20,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:07:20,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:07:22,386.386 INFO    ] ================================================
[2026-10-28 15:07:22,402.402 INFO    ] Launching Daemon at Wed Oct 28 15:07:22 IST 2026
[2026-10-28 15:07:22,413.413 INFO    ] ================================================
[2026-10-28 15:07:23,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:07:23
[2026-10-28 15:07:23,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:07:23,990.990 INFO    ] Initializing speech engine...
[2026-10-28 15:07:24,003.003 INFO    ] 2026-10-28 15:07:23
[2026-10-28 15:07:24,271.271 INFO    ] 2026-10-28 15:07:24
[2026-10-28 15:07:24,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:07:24,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:07:24,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:07:24,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:07:24,856.856 INFO    ] time= 28/10/2026 15:07:24
[2026-10-28 15:07:24,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:07:24,871.871 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:07:24,998.998 INFO    ] No existing commands found in stream
[2026-10-28 15:07:30,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:07:30,032.032 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-28 15:07:31,984.984 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:07:31,987.987 INFO    ] Checking for system updates...
[2026-10-28 15:07:32,026.026 INFO    ] 200
[2026-10-28 15:07:32,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:07:32,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:07:32,093.093 INFO    ] No update needed
[2026-10-28 15:07:32,095.095 INFO    ] Checking for camera pi updates...
[2026-10-28 15:07:32,132.132 INFO    ] 200
[2026-10-28 15:07:32,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:07:32,182.182 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:07:32,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:07:32,298.298 INFO    ] No camera update needed
[2026-10-28 15:07:32,301.301 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:07:32,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:07:32,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:07:32,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:07:34,356.356 INFO    ] ================================================
[2026-10-28 15:07:34,371.371 INFO    ] Launching Daemon at Wed Oct 28 15:07:34 IST 2026
[2026-10-28 15:07:34,386.386 INFO    ] ================================================
[2026-10-28 15:07:35,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:07:35
[2026-10-28 15:07:35,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:07:35,963.963 INFO    ] Initializing speech engine...
[2026-10-28 15:07:35,971.971 INFO    ] 2026-10-28 15:07:35
[2026-10-28 15:07:36,239.239 INFO    ] 2026-10-28 15:07:36
[2026-10-28 15:07:36,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:07:36,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:07:36,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:07:36,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:07:36,961.961 INFO    ] time= 28/10/2026 15:07:36
[2026-10-28 15:07:37,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:07:37,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:07:37,201.201 INFO    ] No existing commands found in stream
[2026-10-28 15:07:42,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:07:42,235.235 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-28 15:07:46,326.326 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:07:46,329.329 INFO    ] Checking for system updates...
[2026-10-28 15:07:46,365.365 INFO    ] 200
[2026-10-28 15:07:46,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:07:46,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:07:46,435.435 INFO    ] No update needed
[2026-10-28 15:07:46,438.438 INFO    ] Checking for camera pi updates...
[2026-10-28 15:07:46,472.472 INFO    ] 200
[2026-10-28 15:07:46,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:07:46,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:07:46,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:07:46,601.601 INFO    ] No camera update needed
[2026-10-28 15:07:46,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:07:46,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:07:46,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:07:46,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:07:48,658.658 INFO    ] ================================================
[2026-10-28 15:07:48,673.673 INFO    ] Launching Daemon at Wed Oct 28 15:07:48 IST 2026
[2026-10-28 15:07:48,684.684 INFO    ] ================================================
[2026-10-28 15:07:49,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:07:49
[2026-10-28 15:07:49,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:07:50,184.184 INFO    ] Initializing speech engine...
[2026-10-28 15:07:50,208.208 INFO    ] 2026-10-28 15:07:50
[2026-10-28 15:07:50,459.459 INFO    ] 2026-10-28 15:07:50
[2026-10-28 15:07:50,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:07:50,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:07:50,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:07:50,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:07:51,007.007 INFO    ] time= 28/10/2026 15:07:50
[2026-10-28 15:07:51,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:07:51,101.101 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:07:51,243.243 INFO    ] No existing commands found in stream
[2026-10-28 15:07:56,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:07:56,262.262 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 15:07:59,944.944 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:07:59,947.947 INFO    ] Checking for system updates...
[2026-10-28 15:07:59,985.985 INFO    ] 200
[2026-10-28 15:07:59,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:08:00,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:08:00,043.043 INFO    ] No update needed
[2026-10-28 15:08:00,046.046 INFO    ] Checking for camera pi updates...
[2026-10-28 15:08:00,082.082 INFO    ] 200
[2026-10-28 15:08:00,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:08:00,125.125 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:08:00,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:08:00,292.292 INFO    ] No camera update needed
[2026-10-28 15:08:00,295.295 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:08:00,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:08:00,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:08:00,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:08:02,349.349 INFO    ] ================================================
[2026-10-28 15:08:02,371.371 INFO    ] Launching Daemon at Wed Oct 28 15:08:02 IST 2026
[2026-10-28 15:08:02,388.388 INFO    ] ================================================
[2026-10-28 15:08:03,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:08:03
[2026-10-28 15:08:03,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:08:04,014.014 INFO    ] Initializing speech engine...
[2026-10-28 15:08:04,020.020 INFO    ] 2026-10-28 15:08:04
[2026-10-28 15:08:04,293.293 INFO    ] 2026-10-28 15:08:04
[2026-10-28 15:08:04,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:08:04,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:08:04,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:08:04,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:08:05,005.005 INFO    ] time= 28/10/2026 15:08:04
[2026-10-28 15:08:05,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:08:05,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:08:05,244.244 INFO    ] No existing commands found in stream
[2026-10-28 15:08:10,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:08:10,260.260 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-28 15:08:13,113.113 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:08:13,115.115 INFO    ] Checking for system updates...
[2026-10-28 15:08:13,154.154 INFO    ] 200
[2026-10-28 15:08:13,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:08:13,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:08:13,211.211 INFO    ] No update needed
[2026-10-28 15:08:13,213.213 INFO    ] Checking for camera pi updates...
[2026-10-28 15:08:13,246.246 INFO    ] 200
[2026-10-28 15:08:13,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:08:13,294.294 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:08:13,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:08:13,383.383 INFO    ] No camera update needed
[2026-10-28 15:08:13,385.385 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:08:13,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:08:13,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:08:13,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:08:15,438.438 INFO    ] ================================================
[2026-10-28 15:08:15,453.453 INFO    ] Launching Daemon at Wed Oct 28 15:08:15 IST 2026
[2026-10-28 15:08:15,464.464 INFO    ] ================================================
[2026-10-28 15:08:16,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:08:16
[2026-10-28 15:08:16,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:08:17,016.016 INFO    ] Initializing speech engine...
[2026-10-28 15:08:17,029.029 INFO    ] 2026-10-28 15:08:17
[2026-10-28 15:08:17,334.334 INFO    ] 2026-10-28 15:08:17
[2026-10-28 15:08:17,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:08:17,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:08:17,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:08:17,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:08:18,036.036 INFO    ] time= 28/10/2026 15:08:17
[2026-10-28 15:08:18,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:08:18,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:08:18,277.277 INFO    ] No existing commands found in stream
[2026-10-28 15:08:23,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:08:23,296.296 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 15:08:26,918.918 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:08:26,921.921 INFO    ] Checking for system updates...
[2026-10-28 15:08:26,958.958 INFO    ] 200
[2026-10-28 15:08:26,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:08:27,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:08:27,016.016 INFO    ] No update needed
[2026-10-28 15:08:27,018.018 INFO    ] Checking for camera pi updates...
[2026-10-28 15:08:27,055.055 INFO    ] 200
[2026-10-28 15:08:27,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:08:27,103.103 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:08:27,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:08:27,168.168 INFO    ] No camera update needed
[2026-10-28 15:08:27,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:08:27,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:08:27,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:08:27,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:08:29,225.225 INFO    ] ================================================
[2026-10-28 15:08:29,240.240 INFO    ] Launching Daemon at Wed Oct 28 15:08:29 IST 2026
[2026-10-28 15:08:29,251.251 INFO    ] ================================================
[2026-10-28 15:08:29,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:08:29
[2026-10-28 15:08:30,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:08:30,670.670 INFO    ] Initializing speech engine...
[2026-10-28 15:08:30,679.679 INFO    ] 2026-10-28 15:08:30
[2026-10-28 15:08:30,938.938 INFO    ] 2026-10-28 15:08:30
[2026-10-28 15:08:30,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:08:31,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:08:31,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:08:31,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:08:31,481.481 INFO    ] time= 28/10/2026 15:08:31
[2026-10-28 15:08:31,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:08:31,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:08:31,658.658 INFO    ] No existing commands found in stream
[2026-10-28 15:08:36,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:08:36,696.696 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-28 15:08:39,464.464 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:08:39,466.466 INFO    ] Checking for system updates...
[2026-10-28 15:08:39,505.505 INFO    ] 200
[2026-10-28 15:08:39,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:08:39,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:08:39,562.562 INFO    ] No update needed
[2026-10-28 15:08:39,565.565 INFO    ] Checking for camera pi updates...
[2026-10-28 15:08:39,601.601 INFO    ] 200
[2026-10-28 15:08:39,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:08:39,643.643 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:08:39,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:08:39,727.727 INFO    ] No camera update needed
[2026-10-28 15:08:39,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:08:39,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:08:39,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:08:39,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:08:41,784.784 INFO    ] ================================================
[2026-10-28 15:08:41,801.801 INFO    ] Launching Daemon at Wed Oct 28 15:08:41 IST 2026
[2026-10-28 15:08:41,812.812 INFO    ] ================================================
[2026-10-28 15:08:42,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:08:42
[2026-10-28 15:08:43,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:08:43,292.292 INFO    ] Initializing speech engine...
[2026-10-28 15:08:43,298.298 INFO    ] 2026-10-28 15:08:43
[2026-10-28 15:08:43,595.595 INFO    ] 2026-10-28 15:08:43
[2026-10-28 15:08:43,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:08:43,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:08:43,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:08:44,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:08:44,137.137 INFO    ] time= 28/10/2026 15:08:44
[2026-10-28 15:08:44,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:08:44,280.280 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:08:44,443.443 INFO    ] No existing commands found in stream
[2026-10-28 15:08:49,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:08:49,475.475 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 15:08:50,146.146 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:08:50,149.149 INFO    ] Checking for system updates...
[2026-10-28 15:08:50,185.185 INFO    ] 200
[2026-10-28 15:08:50,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:08:50,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:08:50,242.242 INFO    ] No update needed
[2026-10-28 15:08:50,245.245 INFO    ] Checking for camera pi updates...
[2026-10-28 15:08:50,281.281 INFO    ] 200
[2026-10-28 15:08:50,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:08:50,323.323 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:08:50,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:08:50,407.407 INFO    ] No camera update needed
[2026-10-28 15:08:50,409.409 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:08:50,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:08:50,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:08:50,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:08:52,461.461 INFO    ] ================================================
[2026-10-28 15:08:52,476.476 INFO    ] Launching Daemon at Wed Oct 28 15:08:52 IST 2026
[2026-10-28 15:08:52,486.486 INFO    ] ================================================
[2026-10-28 15:08:53,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:08:53
[2026-10-28 15:08:53,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:08:53,896.896 INFO    ] Initializing speech engine...
[2026-10-28 15:08:53,903.903 INFO    ] 2026-10-28 15:08:53
[2026-10-28 15:08:54,150.150 INFO    ] 2026-10-28 15:08:54
[2026-10-28 15:08:54,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:08:54,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:08:54,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:08:54,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:08:54,703.703 INFO    ] time= 28/10/2026 15:08:54
[2026-10-28 15:08:54,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:08:54,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:08:54,866.866 INFO    ] No existing commands found in stream
[2026-10-28 15:08:59,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:08:59,898.898 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-28 15:09:03,352.352 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:09:03,354.354 INFO    ] Checking for system updates...
[2026-10-28 15:09:03,394.394 INFO    ] 200
[2026-10-28 15:09:03,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:09:03,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:09:03,453.453 INFO    ] No update needed
[2026-10-28 15:09:03,456.456 INFO    ] Checking for camera pi updates...
[2026-10-28 15:09:03,492.492 INFO    ] 200
[2026-10-28 15:09:03,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:09:03,535.535 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:09:03,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:09:03,619.619 INFO    ] No camera update needed
[2026-10-28 15:09:03,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:09:03,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:09:03,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:09:03,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:09:05,674.674 INFO    ] ================================================
[2026-10-28 15:09:05,689.689 INFO    ] Launching Daemon at Wed Oct 28 15:09:05 IST 2026
[2026-10-28 15:09:05,699.699 INFO    ] ================================================
[2026-10-28 15:09:06,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:09:06
[2026-10-28 15:09:06,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:09:07,260.260 INFO    ] Initializing speech engine...
[2026-10-28 15:09:07,277.277 INFO    ] 2026-10-28 15:09:07
[2026-10-28 15:09:07,543.543 INFO    ] 2026-10-28 15:09:07
[2026-10-28 15:09:07,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:09:07,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:09:07,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:09:08,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:09:08,122.122 INFO    ] time= 28/10/2026 15:09:08
[2026-10-28 15:09:08,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:09:08,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:09:08,257.257 INFO    ] No existing commands found in stream
[2026-10-28 15:09:13,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:09:13,270.270 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-28 15:09:15,202.202 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:09:15,205.205 INFO    ] Checking for system updates...
[2026-10-28 15:09:15,245.245 INFO    ] 200
[2026-10-28 15:09:15,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:09:15,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:09:15,304.304 INFO    ] No update needed
[2026-10-28 15:09:15,307.307 INFO    ] Checking for camera pi updates...
[2026-10-28 15:09:15,344.344 INFO    ] 200
[2026-10-28 15:09:15,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:09:15,387.387 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:09:15,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:09:15,479.479 INFO    ] No camera update needed
[2026-10-28 15:09:15,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:09:15,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:09:15,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:09:15,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:09:17,535.535 INFO    ] ================================================
[2026-10-28 15:09:17,550.550 INFO    ] Launching Daemon at Wed Oct 28 15:09:17 IST 2026
[2026-10-28 15:09:17,561.561 INFO    ] ================================================
[2026-10-28 15:09:18,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:09:18
[2026-10-28 15:09:18,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:09:19,149.149 INFO    ] Initializing speech engine...
[2026-10-28 15:09:19,159.159 INFO    ] 2026-10-28 15:09:19
[2026-10-28 15:09:19,445.445 INFO    ] 2026-10-28 15:09:19
[2026-10-28 15:09:19,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:09:19,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:09:19,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:09:20,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:09:20,190.190 INFO    ] time= 28/10/2026 15:09:20
[2026-10-28 15:09:20,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:09:20,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:09:20,413.413 INFO    ] No existing commands found in stream
[2026-10-28 15:09:25,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:09:25,431.431 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-28 15:09:29,231.231 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:09:29,234.234 INFO    ] Checking for system updates...
[2026-10-28 15:09:29,270.270 INFO    ] 200
[2026-10-28 15:09:29,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:09:29,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:09:29,332.332 INFO    ] No update needed
[2026-10-28 15:09:29,335.335 INFO    ] Checking for camera pi updates...
[2026-10-28 15:09:29,368.368 INFO    ] 200
[2026-10-28 15:09:29,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:09:29,414.414 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:09:29,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:09:29,479.479 INFO    ] No camera update needed
[2026-10-28 15:09:29,482.482 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:09:29,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:09:29,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:09:29,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:09:31,536.536 INFO    ] ================================================
[2026-10-28 15:09:31,552.552 INFO    ] Launching Daemon at Wed Oct 28 15:09:31 IST 2026
[2026-10-28 15:09:31,563.563 INFO    ] ================================================
[2026-10-28 15:09:32,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:09:32
[2026-10-28 15:09:32,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:09:33,106.106 INFO    ] Initializing speech engine...
[2026-10-28 15:09:33,121.121 INFO    ] 2026-10-28 15:09:33
[2026-10-28 15:09:33,374.374 INFO    ] 2026-10-28 15:09:33
[2026-10-28 15:09:33,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:09:33,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:09:33,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:09:33,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:09:33,929.929 INFO    ] time= 28/10/2026 15:09:33
[2026-10-28 15:09:33,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:09:33,976.976 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:09:34,145.145 INFO    ] No existing commands found in stream
[2026-10-28 15:09:39,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:09:39,178.178 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 15:09:41,846.846 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:09:41,849.849 INFO    ] Checking for system updates...
[2026-10-28 15:09:41,885.885 INFO    ] 200
[2026-10-28 15:09:41,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:09:41,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:09:41,949.949 INFO    ] No update needed
[2026-10-28 15:09:41,951.951 INFO    ] Checking for camera pi updates...
[2026-10-28 15:09:41,985.985 INFO    ] 200
[2026-10-28 15:09:41,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:09:42,033.033 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:09:42,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:09:42,122.122 INFO    ] No camera update needed
[2026-10-28 15:09:42,125.125 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:09:42,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:09:42,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:09:42,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:09:44,177.177 INFO    ] ================================================
[2026-10-28 15:09:44,192.192 INFO    ] Launching Daemon at Wed Oct 28 15:09:44 IST 2026
[2026-10-28 15:09:44,202.202 INFO    ] ================================================
[2026-10-28 15:09:44,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:09:44
[2026-10-28 15:09:45,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:09:45,651.651 INFO    ] Initializing speech engine...
[2026-10-28 15:09:45,663.663 INFO    ] 2026-10-28 15:09:45
[2026-10-28 15:09:45,915.915 INFO    ] 2026-10-28 15:09:45
[2026-10-28 15:09:45,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:09:46,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:09:46,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:09:46,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:09:46,483.483 INFO    ] time= 28/10/2026 15:09:46
[2026-10-28 15:09:46,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:09:46,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:09:46,640.640 INFO    ] No existing commands found in stream
[2026-10-28 15:09:51,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:09:51,667.667 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-28 15:09:56,144.144 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:09:56,147.147 INFO    ] Checking for system updates...
[2026-10-28 15:09:56,182.182 INFO    ] 200
[2026-10-28 15:09:56,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:09:56,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:09:56,240.240 INFO    ] No update needed
[2026-10-28 15:09:56,242.242 INFO    ] Checking for camera pi updates...
[2026-10-28 15:09:56,276.276 INFO    ] 200
[2026-10-28 15:09:56,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:09:56,318.318 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:09:56,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:09:56,387.387 INFO    ] No camera update needed
[2026-10-28 15:09:56,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:09:56,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:09:56,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:09:56,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:09:58,444.444 INFO    ] ================================================
[2026-10-28 15:09:58,459.459 INFO    ] Launching Daemon at Wed Oct 28 15:09:58 IST 2026
[2026-10-28 15:09:58,470.470 INFO    ] ================================================
[2026-10-28 15:09:59,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:09:59
[2026-10-28 15:09:59,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:09:59,911.911 INFO    ] Initializing speech engine...
[2026-10-28 15:09:59,925.925 INFO    ] 2026-10-28 15:09:59
[2026-10-28 15:10:00,191.191 INFO    ] 2026-10-28 15:10:00
[2026-10-28 15:10:00,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:10:00,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:10:00,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:10:00,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:10:00,790.790 INFO    ] time= 28/10/2026 15:10:00
[2026-10-28 15:10:00,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:10:00,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:10:00,963.963 INFO    ] No existing commands found in stream
[2026-10-28 15:10:05,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:10:05,981.981 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 15:10:10,152.152 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:10:10,154.154 INFO    ] Checking for system updates...
[2026-10-28 15:10:10,193.193 INFO    ] 200
[2026-10-28 15:10:10,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:10:10,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:10:10,250.250 INFO    ] No update needed
[2026-10-28 15:10:10,252.252 INFO    ] Checking for camera pi updates...
[2026-10-28 15:10:10,285.285 INFO    ] 200
[2026-10-28 15:10:10,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:10:10,336.336 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:10:10,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:10:10,421.421 INFO    ] No camera update needed
[2026-10-28 15:10:10,423.423 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:10:10,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:10:10,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:10:10,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:10:12,475.475 INFO    ] ================================================
[2026-10-28 15:10:12,490.490 INFO    ] Launching Daemon at Wed Oct 28 15:10:12 IST 2026
[2026-10-28 15:10:12,501.501 INFO    ] ================================================
[2026-10-28 15:10:13,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:10:13
[2026-10-28 15:10:13,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:10:13,958.958 INFO    ] Initializing speech engine...
[2026-10-28 15:10:13,971.971 INFO    ] 2026-10-28 15:10:13
[2026-10-28 15:10:14,244.244 INFO    ] 2026-10-28 15:10:14
[2026-10-28 15:10:14,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:10:14,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:10:14,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:10:14,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:10:14,985.985 INFO    ] time= 28/10/2026 15:10:14
[2026-10-28 15:10:15,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:10:15,068.068 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:10:15,221.221 INFO    ] No existing commands found in stream
[2026-10-28 15:10:20,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:10:20,261.261 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-28 15:10:22,906.906 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:10:22,909.909 INFO    ] Checking for system updates...
[2026-10-28 15:10:22,949.949 INFO    ] 200
[2026-10-28 15:10:22,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:10:23,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:10:23,009.009 INFO    ] No update needed
[2026-10-28 15:10:23,012.012 INFO    ] Checking for camera pi updates...
[2026-10-28 15:10:23,046.046 INFO    ] 200
[2026-10-28 15:10:23,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:10:23,091.091 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:10:23,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:10:23,176.176 INFO    ] No camera update needed
[2026-10-28 15:10:23,179.179 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:10:23,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:10:23,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:10:23,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:10:25,238.238 INFO    ] ================================================
[2026-10-28 15:10:25,252.252 INFO    ] Launching Daemon at Wed Oct 28 15:10:25 IST 2026
[2026-10-28 15:10:25,263.263 INFO    ] ================================================
[2026-10-28 15:10:25,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:10:25
[2026-10-28 15:10:26,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:10:26,835.835 INFO    ] Initializing speech engine...
[2026-10-28 15:10:26,840.840 INFO    ] 2026-10-28 15:10:26
[2026-10-28 15:10:27,091.091 INFO    ] 2026-10-28 15:10:27
[2026-10-28 15:10:27,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:10:27,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:10:27,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:10:27,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:10:27,798.798 INFO    ] time= 28/10/2026 15:10:27
[2026-10-28 15:10:27,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:10:27,889.889 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:10:28,038.038 INFO    ] No existing commands found in stream
[2026-10-28 15:10:33,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:10:33,058.058 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-28 15:10:36,891.891 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:10:36,894.894 INFO    ] Checking for system updates...
[2026-10-28 15:10:36,929.929 INFO    ] 200
[2026-10-28 15:10:36,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:10:36,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:10:36,985.985 INFO    ] No update needed
[2026-10-28 15:10:36,988.988 INFO    ] Checking for camera pi updates...
[2026-10-28 15:10:37,021.021 INFO    ] 200
[2026-10-28 15:10:37,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:10:37,067.067 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:10:37,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:10:37,151.151 INFO    ] No camera update needed
[2026-10-28 15:10:37,154.154 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:10:37,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:10:37,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:10:37,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:10:39,210.210 INFO    ] ================================================
[2026-10-28 15:10:39,225.225 INFO    ] Launching Daemon at Wed Oct 28 15:10:39 IST 2026
[2026-10-28 15:10:39,235.235 INFO    ] ================================================
[2026-10-28 15:10:39,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:10:39
[2026-10-28 15:10:40,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:10:40,701.701 INFO    ] Initializing speech engine...
[2026-10-28 15:10:40,719.719 INFO    ] 2026-10-28 15:10:40
[2026-10-28 15:10:40,971.971 INFO    ] 2026-10-28 15:10:40
[2026-10-28 15:10:41,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:10:41,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:10:41,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:10:41,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:10:41,542.542 INFO    ] time= 28/10/2026 15:10:41
[2026-10-28 15:10:41,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:10:41,567.567 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:10:41,699.699 INFO    ] No existing commands found in stream
[2026-10-28 15:10:46,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:10:46,722.722 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-28 15:10:47,902.902 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:10:47,905.905 INFO    ] Checking for system updates...
[2026-10-28 15:10:47,940.940 INFO    ] 200
[2026-10-28 15:10:47,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:10:47,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:10:47,998.998 INFO    ] No update needed
[2026-10-28 15:10:48,000.000 INFO    ] Checking for camera pi updates...
[2026-10-28 15:10:48,038.038 INFO    ] 200
[2026-10-28 15:10:48,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:10:48,082.082 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:10:48,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:10:48,168.168 INFO    ] No camera update needed
[2026-10-28 15:10:48,170.170 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:10:48,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:10:48,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:10:48,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:10:50,223.223 INFO    ] ================================================
[2026-10-28 15:10:50,238.238 INFO    ] Launching Daemon at Wed Oct 28 15:10:50 IST 2026
[2026-10-28 15:10:50,249.249 INFO    ] ================================================
[2026-10-28 15:10:50,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:10:50
[2026-10-28 15:10:51,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:10:51,642.642 INFO    ] Initializing speech engine...
[2026-10-28 15:10:51,667.667 INFO    ] 2026-10-28 15:10:51
[2026-10-28 15:10:51,938.938 INFO    ] 2026-10-28 15:10:51
[2026-10-28 15:10:51,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:10:52,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:10:52,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:10:52,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:10:52,362.362 INFO    ] time= 28/10/2026 15:10:52
[2026-10-28 15:10:52,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:10:52,416.416 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:10:52,560.560 INFO    ] No existing commands found in stream
[2026-10-28 15:10:57,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:10:57,593.593 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-28 15:11:00,027.027 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:11:00,029.029 INFO    ] Checking for system updates...
[2026-10-28 15:11:00,065.065 INFO    ] 200
[2026-10-28 15:11:00,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:11:00,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:11:00,123.123 INFO    ] No update needed
[2026-10-28 15:11:00,125.125 INFO    ] Checking for camera pi updates...
[2026-10-28 15:11:00,159.159 INFO    ] 200
[2026-10-28 15:11:00,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:11:00,202.202 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:11:00,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:11:00,304.304 INFO    ] No camera update needed
[2026-10-28 15:11:00,306.306 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:11:00,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:11:00,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:11:00,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:11:02,363.363 INFO    ] ================================================
[2026-10-28 15:11:02,385.385 INFO    ] Launching Daemon at Wed Oct 28 15:11:02 IST 2026
[2026-10-28 15:11:02,403.403 INFO    ] ================================================
[2026-10-28 15:11:03,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:11:03
[2026-10-28 15:11:03,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:11:04,037.037 INFO    ] Initializing speech engine...
[2026-10-28 15:11:04,046.046 INFO    ] 2026-10-28 15:11:04
[2026-10-28 15:11:04,294.294 INFO    ] 2026-10-28 15:11:04
[2026-10-28 15:11:04,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:11:04,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:11:04,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:11:04,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:11:04,848.848 INFO    ] time= 28/10/2026 15:11:04
[2026-10-28 15:11:04,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:11:04,877.877 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:11:05,027.027 INFO    ] No existing commands found in stream
[2026-10-28 15:11:10,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:11:10,060.060 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 15:11:11,319.319 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:11:11,321.321 INFO    ] Checking for system updates...
[2026-10-28 15:11:11,360.360 INFO    ] 200
[2026-10-28 15:11:11,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:11:11,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:11:11,424.424 INFO    ] No update needed
[2026-10-28 15:11:11,427.427 INFO    ] Checking for camera pi updates...
[2026-10-28 15:11:11,461.461 INFO    ] 200
[2026-10-28 15:11:11,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:11:11,509.509 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:11:11,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:11:11,602.602 INFO    ] No camera update needed
[2026-10-28 15:11:11,605.605 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:11:11,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:11:11,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:11:11,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:11:13,659.659 INFO    ] ================================================
[2026-10-28 15:11:13,675.675 INFO    ] Launching Daemon at Wed Oct 28 15:11:13 IST 2026
[2026-10-28 15:11:13,686.686 INFO    ] ================================================
[2026-10-28 15:11:14,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:11:14
[2026-10-28 15:11:14,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:11:15,105.105 INFO    ] Initializing speech engine...
[2026-10-28 15:11:15,111.111 INFO    ] 2026-10-28 15:11:15
[2026-10-28 15:11:15,370.370 INFO    ] 2026-10-28 15:11:15
[2026-10-28 15:11:15,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:11:15,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:11:15,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:11:15,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:11:15,923.923 INFO    ] time= 28/10/2026 15:11:15
[2026-10-28 15:11:15,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:11:15,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:11:16,089.089 INFO    ] No existing commands found in stream
[2026-10-28 15:11:21,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:11:21,127.127 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-28 15:11:23,231.231 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:11:23,234.234 INFO    ] Checking for system updates...
[2026-10-28 15:11:23,270.270 INFO    ] 200
[2026-10-28 15:11:23,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:11:23,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:11:23,334.334 INFO    ] No update needed
[2026-10-28 15:11:23,345.345 INFO    ] Checking for camera pi updates...
[2026-10-28 15:11:23,379.379 INFO    ] 200
[2026-10-28 15:11:23,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:11:23,423.423 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:11:23,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:11:23,509.509 INFO    ] No camera update needed
[2026-10-28 15:11:23,512.512 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:11:23,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:11:23,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:11:23,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:11:25,571.571 INFO    ] ================================================
[2026-10-28 15:11:25,586.586 INFO    ] Launching Daemon at Wed Oct 28 15:11:25 IST 2026
[2026-10-28 15:11:25,596.596 INFO    ] ================================================
[2026-10-28 15:11:26,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:11:26
[2026-10-28 15:11:26,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:11:26,998.998 INFO    ] Initializing speech engine...
[2026-10-28 15:11:27,006.006 INFO    ] 2026-10-28 15:11:27
[2026-10-28 15:11:27,295.295 INFO    ] 2026-10-28 15:11:27
[2026-10-28 15:11:27,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:11:27,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:11:27,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:11:27,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:11:27,905.905 INFO    ] time= 28/10/2026 15:11:27
[2026-10-28 15:11:27,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:11:27,929.929 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:11:28,074.074 INFO    ] No existing commands found in stream
[2026-10-28 15:11:33,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:11:33,102.102 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 15:11:35,903.903 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:11:35,905.905 INFO    ] Checking for system updates...
[2026-10-28 15:11:35,940.940 INFO    ] 200
[2026-10-28 15:11:35,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:11:35,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:11:35,999.999 INFO    ] No update needed
[2026-10-28 15:11:36,002.002 INFO    ] Checking for camera pi updates...
[2026-10-28 15:11:36,036.036 INFO    ] 200
[2026-10-28 15:11:36,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:11:36,078.078 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:11:36,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:11:36,163.163 INFO    ] No camera update needed
[2026-10-28 15:11:36,165.165 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:11:36,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:11:36,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:11:36,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:11:38,220.220 INFO    ] ================================================
[2026-10-28 15:11:38,235.235 INFO    ] Launching Daemon at Wed Oct 28 15:11:38 IST 2026
[2026-10-28 15:11:38,245.245 INFO    ] ================================================
[2026-10-28 15:11:38,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:11:38
[2026-10-28 15:11:39,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:11:39,692.692 INFO    ] Initializing speech engine...
[2026-10-28 15:11:39,708.708 INFO    ] 2026-10-28 15:11:39
[2026-10-28 15:11:39,979.979 INFO    ] 2026-10-28 15:11:39
[2026-10-28 15:11:40,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:11:40,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:11:40,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:11:40,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:11:40,472.472 INFO    ] time= 28/10/2026 15:11:40
[2026-10-28 15:11:40,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:11:40,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:11:40,673.673 INFO    ] No existing commands found in stream
[2026-10-28 15:11:45,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:11:45,688.688 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-28 15:11:49,544.544 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:11:49,546.546 INFO    ] Checking for system updates...
[2026-10-28 15:11:49,585.585 INFO    ] 200
[2026-10-28 15:11:49,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:11:49,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:11:49,642.642 INFO    ] No update needed
[2026-10-28 15:11:49,645.645 INFO    ] Checking for camera pi updates...
[2026-10-28 15:11:49,678.678 INFO    ] 200
[2026-10-28 15:11:49,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:11:49,722.722 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:11:49,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:11:49,805.805 INFO    ] No camera update needed
[2026-10-28 15:11:49,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:11:49,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:11:49,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:11:49,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:11:51,861.861 INFO    ] ================================================
[2026-10-28 15:11:51,876.876 INFO    ] Launching Daemon at Wed Oct 28 15:11:51 IST 2026
[2026-10-28 15:11:51,888.888 INFO    ] ================================================
[2026-10-28 15:11:52,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:11:52
[2026-10-28 15:11:53,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:11:53,380.380 INFO    ] Initializing speech engine...
[2026-10-28 15:11:53,389.389 INFO    ] 2026-10-28 15:11:53
[2026-10-28 15:11:53,647.647 INFO    ] 2026-10-28 15:11:53
[2026-10-28 15:11:53,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:11:54,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:11:54,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:11:54,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:11:54,382.382 INFO    ] time= 28/10/2026 15:11:54
[2026-10-28 15:11:54,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:11:54,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:11:54,610.610 INFO    ] No existing commands found in stream
[2026-10-28 15:11:59,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:11:59,638.638 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-28 15:12:02,544.544 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:12:02,547.547 INFO    ] Checking for system updates...
[2026-10-28 15:12:02,590.590 INFO    ] 200
[2026-10-28 15:12:02,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:12:02,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:12:02,668.668 INFO    ] No update needed
[2026-10-28 15:12:02,672.672 INFO    ] Checking for camera pi updates...
[2026-10-28 15:12:02,720.720 INFO    ] 200
[2026-10-28 15:12:02,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:12:02,775.775 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:12:02,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:12:02,873.873 INFO    ] No camera update needed
[2026-10-28 15:12:02,877.877 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:12:02,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:12:02,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:12:02,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:12:04,940.940 INFO    ] ================================================
[2026-10-28 15:12:04,955.955 INFO    ] Launching Daemon at Wed Oct 28 15:12:04 IST 2026
[2026-10-28 15:12:04,966.966 INFO    ] ================================================
[2026-10-28 15:12:05,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:12:05
[2026-10-28 15:12:06,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:12:06,563.563 INFO    ] Initializing speech engine...
[2026-10-28 15:12:06,577.577 INFO    ] 2026-10-28 15:12:06
[2026-10-28 15:12:06,888.888 INFO    ] 2026-10-28 15:12:06
[2026-10-28 15:12:06,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:12:07,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:12:07,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:12:07,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:12:07,614.614 INFO    ] time= 28/10/2026 15:12:07
[2026-10-28 15:12:07,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:12:07,721.721 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:12:07,856.856 INFO    ] No existing commands found in stream
[2026-10-28 15:12:12,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:12:12,870.870 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 15:12:17,465.465 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:12:17,469.469 INFO    ] Checking for system updates...
[2026-10-28 15:12:17,506.506 INFO    ] 200
[2026-10-28 15:12:17,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:12:17,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:12:17,565.565 INFO    ] No update needed
[2026-10-28 15:12:17,568.568 INFO    ] Checking for camera pi updates...
[2026-10-28 15:12:17,602.602 INFO    ] 200
[2026-10-28 15:12:17,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:12:17,648.648 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:12:17,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:12:17,850.850 INFO    ] No camera update needed
[2026-10-28 15:12:17,853.853 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:12:17,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:12:17,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:12:17,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:12:19,908.908 INFO    ] ================================================
[2026-10-28 15:12:19,923.923 INFO    ] Launching Daemon at Wed Oct 28 15:12:19 IST 2026
[2026-10-28 15:12:19,934.934 INFO    ] ================================================
[2026-10-28 15:12:20,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:12:20
[2026-10-28 15:12:21,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:12:21,411.411 INFO    ] Initializing speech engine...
[2026-10-28 15:12:21,421.421 INFO    ] 2026-10-28 15:12:21
[2026-10-28 15:12:21,687.687 INFO    ] 2026-10-28 15:12:21
[2026-10-28 15:12:21,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:12:22,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:12:22,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:12:22,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:12:22,313.313 INFO    ] time= 28/10/2026 15:12:22
[2026-10-28 15:12:22,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:12:22,347.347 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:12:22,484.484 INFO    ] No existing commands found in stream
[2026-10-28 15:12:27,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:12:27,506.506 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-28 15:12:30,719.719 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:12:30,721.721 INFO    ] Checking for system updates...
[2026-10-28 15:12:30,757.757 INFO    ] 200
[2026-10-28 15:12:30,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:12:30,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:12:30,816.816 INFO    ] No update needed
[2026-10-28 15:12:30,818.818 INFO    ] Checking for camera pi updates...
[2026-10-28 15:12:30,856.856 INFO    ] 200
[2026-10-28 15:12:30,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:12:30,899.899 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:12:30,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:12:30,985.985 INFO    ] No camera update needed
[2026-10-28 15:12:30,988.988 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:12:30,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:12:30,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:12:31,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:12:33,044.044 INFO    ] ================================================
[2026-10-28 15:12:33,060.060 INFO    ] Launching Daemon at Wed Oct 28 15:12:33 IST 2026
[2026-10-28 15:12:33,072.072 INFO    ] ================================================
[2026-10-28 15:12:33,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:12:33
[2026-10-28 15:12:34,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:12:34,548.548 INFO    ] Initializing speech engine...
[2026-10-28 15:12:34,564.564 INFO    ] 2026-10-28 15:12:34
[2026-10-28 15:12:34,850.850 INFO    ] 2026-10-28 15:12:34
[2026-10-28 15:12:34,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:12:35,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:12:35,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:12:35,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:12:35,445.445 INFO    ] time= 28/10/2026 15:12:35
[2026-10-28 15:12:35,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:12:35,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:12:35,602.602 INFO    ] No existing commands found in stream
[2026-10-28 15:12:40,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:12:40,618.618 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 15:12:41,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:12:41,731.731 INFO    ] Checking for system updates...
[2026-10-28 15:12:41,767.767 INFO    ] 200
[2026-10-28 15:12:41,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:12:41,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:12:41,826.826 INFO    ] No update needed
[2026-10-28 15:12:41,828.828 INFO    ] Checking for camera pi updates...
[2026-10-28 15:12:41,861.861 INFO    ] 200
[2026-10-28 15:12:41,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:12:41,903.903 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:12:41,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:12:41,979.979 INFO    ] No camera update needed
[2026-10-28 15:12:41,981.981 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:12:41,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:12:41,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:12:41,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:12:44,036.036 INFO    ] ================================================
[2026-10-28 15:12:44,051.051 INFO    ] Launching Daemon at Wed Oct 28 15:12:44 IST 2026
[2026-10-28 15:12:44,062.062 INFO    ] ================================================
[2026-10-28 15:12:44,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:12:44
[2026-10-28 15:12:45,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:12:45,629.629 INFO    ] Initializing speech engine...
[2026-10-28 15:12:45,636.636 INFO    ] 2026-10-28 15:12:45
[2026-10-28 15:12:45,910.910 INFO    ] 2026-10-28 15:12:45
[2026-10-28 15:12:45,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:12:46,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:12:46,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:12:46,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:12:46,453.453 INFO    ] time= 28/10/2026 15:12:46
[2026-10-28 15:12:46,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:12:46,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:12:46,641.641 INFO    ] No existing commands found in stream
[2026-10-28 15:12:51,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:12:51,674.674 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 15:12:53,503.503 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:12:53,506.506 INFO    ] Checking for system updates...
[2026-10-28 15:12:53,542.542 INFO    ] 200
[2026-10-28 15:12:53,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:12:53,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:12:53,602.602 INFO    ] No update needed
[2026-10-28 15:12:53,605.605 INFO    ] Checking for camera pi updates...
[2026-10-28 15:12:53,638.638 INFO    ] 200
[2026-10-28 15:12:53,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:12:53,680.680 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:12:53,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:12:53,765.765 INFO    ] No camera update needed
[2026-10-28 15:12:53,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:12:53,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:12:53,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:12:53,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:12:55,820.820 INFO    ] ================================================
[2026-10-28 15:12:55,835.835 INFO    ] Launching Daemon at Wed Oct 28 15:12:55 IST 2026
[2026-10-28 15:12:55,846.846 INFO    ] ================================================
[2026-10-28 15:12:56,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:12:56
[2026-10-28 15:12:57,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:12:57,465.465 INFO    ] Initializing speech engine...
[2026-10-28 15:12:57,477.477 INFO    ] 2026-10-28 15:12:57
[2026-10-28 15:12:57,787.787 INFO    ] 2026-10-28 15:12:57
[2026-10-28 15:12:57,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:12:58,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:12:58,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:12:58,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:12:58,531.531 INFO    ] time= 28/10/2026 15:12:58
[2026-10-28 15:12:58,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:12:58,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:12:58,857.857 INFO    ] No existing commands found in stream
[2026-10-28 15:13:03,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:13:03,871.871 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-28 15:13:05,904.904 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:13:05,907.907 INFO    ] Checking for system updates...
[2026-10-28 15:13:05,945.945 INFO    ] 200
[2026-10-28 15:13:05,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:13:06,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:13:06,004.004 INFO    ] No update needed
[2026-10-28 15:13:06,007.007 INFO    ] Checking for camera pi updates...
[2026-10-28 15:13:06,045.045 INFO    ] 200
[2026-10-28 15:13:06,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:13:06,095.095 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:13:06,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:13:06,185.185 INFO    ] No camera update needed
[2026-10-28 15:13:06,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:13:06,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:13:06,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:13:06,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:13:08,245.245 INFO    ] ================================================
[2026-10-28 15:13:08,261.261 INFO    ] Launching Daemon at Wed Oct 28 15:13:08 IST 2026
[2026-10-28 15:13:08,272.272 INFO    ] ================================================
[2026-10-28 15:13:08,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:13:08
[2026-10-28 15:13:09,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:13:09,772.772 INFO    ] Initializing speech engine...
[2026-10-28 15:13:09,779.779 INFO    ] 2026-10-28 15:13:09
[2026-10-28 15:13:10,064.064 INFO    ] 2026-10-28 15:13:10
[2026-10-28 15:13:10,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:13:10,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:13:10,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:13:10,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:13:10,613.613 INFO    ] time= 28/10/2026 15:13:10
[2026-10-28 15:13:10,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:13:10,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:13:10,765.765 INFO    ] No existing commands found in stream
[2026-10-28 15:13:15,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:13:15,800.800 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-28 15:13:19,638.638 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:13:19,642.642 INFO    ] Checking for system updates...
[2026-10-28 15:13:19,679.679 INFO    ] 200
[2026-10-28 15:13:19,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:13:19,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:13:19,739.739 INFO    ] No update needed
[2026-10-28 15:13:19,741.741 INFO    ] Checking for camera pi updates...
[2026-10-28 15:13:19,776.776 INFO    ] 200
[2026-10-28 15:13:19,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:13:19,826.826 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:13:19,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:13:19,912.912 INFO    ] No camera update needed
[2026-10-28 15:13:19,915.915 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:13:19,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:13:19,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:13:19,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:13:21,973.973 INFO    ] ================================================
[2026-10-28 15:13:21,989.989 INFO    ] Launching Daemon at Wed Oct 28 15:13:21 IST 2026
[2026-10-28 15:13:22,000.000 INFO    ] ================================================
[2026-10-28 15:13:22,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:13:22
[2026-10-28 15:13:23,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:13:23,425.425 INFO    ] Initializing speech engine...
[2026-10-28 15:13:23,434.434 INFO    ] 2026-10-28 15:13:23
[2026-10-28 15:13:23,686.686 INFO    ] 2026-10-28 15:13:23
[2026-10-28 15:13:23,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:13:23,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:13:23,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:13:24,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:13:24,244.244 INFO    ] time= 28/10/2026 15:13:24
[2026-10-28 15:13:24,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:13:24,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:13:24,409.409 INFO    ] No existing commands found in stream
[2026-10-28 15:13:29,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:13:29,437.437 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-28 15:13:30,723.723 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:13:30,726.726 INFO    ] Checking for system updates...
[2026-10-28 15:13:30,761.761 INFO    ] 200
[2026-10-28 15:13:30,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:13:30,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:13:30,819.819 INFO    ] No update needed
[2026-10-28 15:13:30,822.822 INFO    ] Checking for camera pi updates...
[2026-10-28 15:13:30,855.855 INFO    ] 200
[2026-10-28 15:13:30,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:13:30,898.898 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:13:30,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:13:30,953.953 INFO    ] No camera update needed
[2026-10-28 15:13:30,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:13:30,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:13:30,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:13:30,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:13:33,012.012 INFO    ] ================================================
[2026-10-28 15:13:33,028.028 INFO    ] Launching Daemon at Wed Oct 28 15:13:33 IST 2026
[2026-10-28 15:13:33,039.039 INFO    ] ================================================
[2026-10-28 15:13:33,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:13:33
[2026-10-28 15:13:34,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:13:34,446.446 INFO    ] Initializing speech engine...
[2026-10-28 15:13:34,455.455 INFO    ] 2026-10-28 15:13:34
[2026-10-28 15:13:34,752.752 INFO    ] 2026-10-28 15:13:34
[2026-10-28 15:13:34,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:13:35,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:13:35,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:13:35,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:13:35,355.355 INFO    ] time= 28/10/2026 15:13:35
[2026-10-28 15:13:35,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:13:35,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:13:35,552.552 INFO    ] No existing commands found in stream
[2026-10-28 15:13:40,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:13:40,586.586 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 15:13:42,864.864 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:13:42,866.866 INFO    ] Checking for system updates...
[2026-10-28 15:13:42,905.905 INFO    ] 200
[2026-10-28 15:13:42,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:13:42,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:13:42,963.963 INFO    ] No update needed
[2026-10-28 15:13:42,966.966 INFO    ] Checking for camera pi updates...
[2026-10-28 15:13:42,999.999 INFO    ] 200
[2026-10-28 15:13:43,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:13:43,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:13:43,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:13:43,139.139 INFO    ] No camera update needed
[2026-10-28 15:13:43,142.142 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:13:43,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:13:43,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:13:43,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:13:45,195.195 INFO    ] ================================================
[2026-10-28 15:13:45,211.211 INFO    ] Launching Daemon at Wed Oct 28 15:13:45 IST 2026
[2026-10-28 15:13:45,231.231 INFO    ] ================================================
[2026-10-28 15:13:45,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:13:45
[2026-10-28 15:13:46,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:13:46,662.662 INFO    ] Initializing speech engine...
[2026-10-28 15:13:46,671.671 INFO    ] 2026-10-28 15:13:46
[2026-10-28 15:13:46,920.920 INFO    ] 2026-10-28 15:13:46
[2026-10-28 15:13:46,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:13:47,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:13:47,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:13:47,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:13:47,490.490 INFO    ] time= 28/10/2026 15:13:47
[2026-10-28 15:13:47,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:13:47,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:13:47,649.649 INFO    ] No existing commands found in stream
[2026-10-28 15:13:52,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:13:52,672.672 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-28 15:13:56,489.489 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:13:56,491.491 INFO    ] Checking for system updates...
[2026-10-28 15:13:56,531.531 INFO    ] 200
[2026-10-28 15:13:56,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:13:56,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:13:56,589.589 INFO    ] No update needed
[2026-10-28 15:13:56,592.592 INFO    ] Checking for camera pi updates...
[2026-10-28 15:13:56,625.625 INFO    ] 200
[2026-10-28 15:13:56,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:13:56,667.667 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:13:56,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:13:56,758.758 INFO    ] No camera update needed
[2026-10-28 15:13:56,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:13:56,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:13:56,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:13:56,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:13:58,814.814 INFO    ] ================================================
[2026-10-28 15:13:58,828.828 INFO    ] Launching Daemon at Wed Oct 28 15:13:58 IST 2026
[2026-10-28 15:13:58,839.839 INFO    ] ================================================
[2026-10-28 15:13:59,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:13:59
[2026-10-28 15:14:00,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:14:00,481.481 INFO    ] Initializing speech engine...
[2026-10-28 15:14:00,490.490 INFO    ] 2026-10-28 15:14:00
[2026-10-28 15:14:00,741.741 INFO    ] 2026-10-28 15:14:00
[2026-10-28 15:14:00,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:14:01,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:14:01,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:14:01,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:14:01,240.240 INFO    ] time= 28/10/2026 15:14:01
[2026-10-28 15:14:01,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:14:01,304.304 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:14:01,418.418 INFO    ] No existing commands found in stream
[2026-10-28 15:14:06,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:14:06,445.445 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-28 15:14:08,274.274 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:14:08,277.277 INFO    ] Checking for system updates...
[2026-10-28 15:14:08,315.315 INFO    ] 200
[2026-10-28 15:14:08,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:14:08,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:14:08,374.374 INFO    ] No update needed
[2026-10-28 15:14:08,377.377 INFO    ] Checking for camera pi updates...
[2026-10-28 15:14:08,412.412 INFO    ] 200
[2026-10-28 15:14:08,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:14:08,455.455 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:14:08,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:14:08,540.540 INFO    ] No camera update needed
[2026-10-28 15:14:08,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:14:08,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:14:08,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:14:08,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:14:10,595.595 INFO    ] ================================================
[2026-10-28 15:14:10,610.610 INFO    ] Launching Daemon at Wed Oct 28 15:14:10 IST 2026
[2026-10-28 15:14:10,621.621 INFO    ] ================================================
[2026-10-28 15:14:11,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:14:11
[2026-10-28 15:14:11,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:14:12,276.276 INFO    ] Initializing speech engine...
[2026-10-28 15:14:12,284.284 INFO    ] 2026-10-28 15:14:12
[2026-10-28 15:14:12,558.558 INFO    ] 2026-10-28 15:14:12
[2026-10-28 15:14:12,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:14:12,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:14:13,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:14:13,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:14:13,308.308 INFO    ] time= 28/10/2026 15:14:13
[2026-10-28 15:14:13,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:14:13,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:14:13,548.548 INFO    ] No existing commands found in stream
[2026-10-28 15:14:18,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:14:18,568.568 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 15:14:22,425.425 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:14:22,428.428 INFO    ] Checking for system updates...
[2026-10-28 15:14:22,465.465 INFO    ] 200
[2026-10-28 15:14:22,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:14:22,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:14:22,522.522 INFO    ] No update needed
[2026-10-28 15:14:22,524.524 INFO    ] Checking for camera pi updates...
[2026-10-28 15:14:22,562.562 INFO    ] 200
[2026-10-28 15:14:22,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:14:22,612.612 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:14:22,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:14:22,811.811 INFO    ] No camera update needed
[2026-10-28 15:14:22,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:14:22,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:14:22,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:14:22,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:14:24,865.865 INFO    ] ================================================
[2026-10-28 15:14:24,880.880 INFO    ] Launching Daemon at Wed Oct 28 15:14:24 IST 2026
[2026-10-28 15:14:24,891.891 INFO    ] ================================================
[2026-10-28 15:14:25,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:14:25
[2026-10-28 15:14:26,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:14:26,353.353 INFO    ] Initializing speech engine...
[2026-10-28 15:14:26,360.360 INFO    ] 2026-10-28 15:14:26
[2026-10-28 15:14:26,659.659 INFO    ] 2026-10-28 15:14:26
[2026-10-28 15:14:26,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:14:26,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:14:26,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:14:27,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:14:27,223.223 INFO    ] time= 28/10/2026 15:14:27
[2026-10-28 15:14:27,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:14:27,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:14:27,437.437 INFO    ] No existing commands found in stream
[2026-10-28 15:14:32,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:14:32,458.458 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-28 15:14:35,824.824 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:14:35,827.827 INFO    ] Checking for system updates...
[2026-10-28 15:14:35,863.863 INFO    ] 200
[2026-10-28 15:14:35,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:14:35,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:14:35,920.920 INFO    ] No update needed
[2026-10-28 15:14:35,922.922 INFO    ] Checking for camera pi updates...
[2026-10-28 15:14:35,956.956 INFO    ] 200
[2026-10-28 15:14:35,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:14:35,998.998 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:14:36,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:14:36,075.075 INFO    ] No camera update needed
[2026-10-28 15:14:36,077.077 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:14:36,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:14:36,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:14:36,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:14:38,130.130 INFO    ] ================================================
[2026-10-28 15:14:38,145.145 INFO    ] Launching Daemon at Wed Oct 28 15:14:38 IST 2026
[2026-10-28 15:14:38,155.155 INFO    ] ================================================
[2026-10-28 15:14:38,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:14:38
[2026-10-28 15:14:39,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:14:39,572.572 INFO    ] Initializing speech engine...
[2026-10-28 15:14:39,581.581 INFO    ] 2026-10-28 15:14:39
[2026-10-28 15:14:39,825.825 INFO    ] 2026-10-28 15:14:39
[2026-10-28 15:14:39,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:14:40,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:14:40,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:14:40,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:14:40,379.379 INFO    ] time= 28/10/2026 15:14:40
[2026-10-28 15:14:40,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:14:40,403.403 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:14:40,556.556 INFO    ] No existing commands found in stream
[2026-10-28 15:14:45,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:14:45,589.589 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-28 15:14:48,880.880 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:14:48,882.882 INFO    ] Checking for system updates...
[2026-10-28 15:14:48,918.918 INFO    ] 200
[2026-10-28 15:14:48,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:14:48,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:14:48,975.975 INFO    ] No update needed
[2026-10-28 15:14:48,978.978 INFO    ] Checking for camera pi updates...
[2026-10-28 15:14:49,011.011 INFO    ] 200
[2026-10-28 15:14:49,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:14:49,066.066 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:14:49,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:14:49,151.151 INFO    ] No camera update needed
[2026-10-28 15:14:49,154.154 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:14:49,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:14:49,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:14:49,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:14:51,207.207 INFO    ] ================================================
[2026-10-28 15:14:51,222.222 INFO    ] Launching Daemon at Wed Oct 28 15:14:51 IST 2026
[2026-10-28 15:14:51,233.233 INFO    ] ================================================
[2026-10-28 15:14:51,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:14:51
[2026-10-28 15:14:52,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:14:52,637.637 INFO    ] Initializing speech engine...
[2026-10-28 15:14:52,643.643 INFO    ] 2026-10-28 15:14:52
[2026-10-28 15:14:52,937.937 INFO    ] 2026-10-28 15:14:52
[2026-10-28 15:14:52,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:14:53,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:14:53,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:14:53,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:14:53,563.563 INFO    ] time= 28/10/2026 15:14:53
[2026-10-28 15:14:53,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:14:53,593.593 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:14:53,728.728 INFO    ] No existing commands found in stream
[2026-10-28 15:14:58,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:14:58,751.751 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-28 15:15:01,682.682 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:15:01,716.716 INFO    ] Checking for system updates...
[2026-10-28 15:15:01,790.790 INFO    ] 200
[2026-10-28 15:15:01,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:15:02,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:15:02,159.159 INFO    ] No update needed
[2026-10-28 15:15:02,163.163 INFO    ] Checking for camera pi updates...
[2026-10-28 15:15:02,254.254 INFO    ] 200
[2026-10-28 15:15:02,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:15:02,391.391 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:15:02,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:15:02,496.496 INFO    ] No camera update needed
[2026-10-28 15:15:02,499.499 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:15:02,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:15:02,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:15:02,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:15:04,557.557 INFO    ] ================================================
[2026-10-28 15:15:04,572.572 INFO    ] Launching Daemon at Wed Oct 28 15:15:04 IST 2026
[2026-10-28 15:15:04,582.582 INFO    ] ================================================
[2026-10-28 15:15:05,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:15:05
[2026-10-28 15:15:05,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:15:06,007.007 INFO    ] Initializing speech engine...
[2026-10-28 15:15:06,021.021 INFO    ] 2026-10-28 15:15:06
[2026-10-28 15:15:06,304.304 INFO    ] 2026-10-28 15:15:06
[2026-10-28 15:15:06,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:15:06,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:15:06,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:15:06,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:15:06,917.917 INFO    ] time= 28/10/2026 15:15:06
[2026-10-28 15:15:06,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:15:06,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:15:07,104.104 INFO    ] No existing commands found in stream
[2026-10-28 15:15:12,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:15:12,121.121 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 15:15:14,344.344 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:15:14,347.347 INFO    ] Checking for system updates...
[2026-10-28 15:15:14,382.382 INFO    ] 200
[2026-10-28 15:15:14,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:15:14,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:15:14,445.445 INFO    ] No update needed
[2026-10-28 15:15:14,447.447 INFO    ] Checking for camera pi updates...
[2026-10-28 15:15:14,480.480 INFO    ] 200
[2026-10-28 15:15:14,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:15:14,524.524 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:15:14,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:15:14,627.627 INFO    ] No camera update needed
[2026-10-28 15:15:14,630.630 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:15:14,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:15:14,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:15:14,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:15:16,685.685 INFO    ] ================================================
[2026-10-28 15:15:16,700.700 INFO    ] Launching Daemon at Wed Oct 28 15:15:16 IST 2026
[2026-10-28 15:15:16,711.711 INFO    ] ================================================
[2026-10-28 15:15:17,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:15:17
[2026-10-28 15:15:17,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:15:18,119.119 INFO    ] Initializing speech engine...
[2026-10-28 15:15:18,138.138 INFO    ] 2026-10-28 15:15:18
[2026-10-28 15:15:18,395.395 INFO    ] 2026-10-28 15:15:18
[2026-10-28 15:15:18,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:15:18,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:15:18,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:15:18,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:15:18,954.954 INFO    ] time= 28/10/2026 15:15:18
[2026-10-28 15:15:18,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:15:18,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:15:19,104.104 INFO    ] No existing commands found in stream
[2026-10-28 15:15:24,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:15:24,123.123 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 15:15:25,904.904 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:15:25,906.906 INFO    ] Checking for system updates...
[2026-10-28 15:15:25,948.948 INFO    ] 200
[2026-10-28 15:15:25,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:15:26,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:15:26,014.014 INFO    ] No update needed
[2026-10-28 15:15:26,017.017 INFO    ] Checking for camera pi updates...
[2026-10-28 15:15:26,051.051 INFO    ] 200
[2026-10-28 15:15:26,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:15:26,095.095 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:15:26,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:15:26,195.195 INFO    ] No camera update needed
[2026-10-28 15:15:26,197.197 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:15:26,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:15:26,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:15:26,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:15:28,254.254 INFO    ] ================================================
[2026-10-28 15:15:28,269.269 INFO    ] Launching Daemon at Wed Oct 28 15:15:28 IST 2026
[2026-10-28 15:15:28,280.280 INFO    ] ================================================
[2026-10-28 15:15:28,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:15:28
[2026-10-28 15:15:29,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:15:29,694.694 INFO    ] Initializing speech engine...
[2026-10-28 15:15:29,707.707 INFO    ] 2026-10-28 15:15:29
[2026-10-28 15:15:29,979.979 INFO    ] 2026-10-28 15:15:29
[2026-10-28 15:15:30,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:15:30,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:15:30,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:15:30,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:15:30,551.551 INFO    ] time= 28/10/2026 15:15:30
[2026-10-28 15:15:30,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:15:30,573.573 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:15:30,711.711 INFO    ] No existing commands found in stream
[2026-10-28 15:15:35,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:15:35,734.734 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 15:15:39,983.983 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:15:39,986.986 INFO    ] Checking for system updates...
[2026-10-28 15:15:40,022.022 INFO    ] 200
[2026-10-28 15:15:40,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:15:40,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:15:40,079.079 INFO    ] No update needed
[2026-10-28 15:15:40,081.081 INFO    ] Checking for camera pi updates...
[2026-10-28 15:15:40,114.114 INFO    ] 200
[2026-10-28 15:15:40,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:15:40,157.157 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:15:40,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:15:40,242.242 INFO    ] No camera update needed
[2026-10-28 15:15:40,245.245 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:15:40,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:15:40,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:15:40,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:15:42,298.298 INFO    ] ================================================
[2026-10-28 15:15:42,314.314 INFO    ] Launching Daemon at Wed Oct 28 15:15:42 IST 2026
[2026-10-28 15:15:42,325.325 INFO    ] ================================================
[2026-10-28 15:15:42,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:15:42
[2026-10-28 15:15:43,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:15:43,898.898 INFO    ] Initializing speech engine...
[2026-10-28 15:15:43,911.911 INFO    ] 2026-10-28 15:15:43
[2026-10-28 15:15:44,218.218 INFO    ] 2026-10-28 15:15:44
[2026-10-28 15:15:44,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:15:44,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:15:44,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:15:44,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:15:44,985.985 INFO    ] time= 28/10/2026 15:15:44
[2026-10-28 15:15:45,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:15:45,099.099 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:15:45,292.292 INFO    ] No existing commands found in stream
[2026-10-28 15:15:50,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:15:50,306.306 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-28 15:15:52,846.846 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:15:52,849.849 INFO    ] Checking for system updates...
[2026-10-28 15:15:52,885.885 INFO    ] 200
[2026-10-28 15:15:52,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:15:52,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:15:52,950.950 INFO    ] No update needed
[2026-10-28 15:15:52,953.953 INFO    ] Checking for camera pi updates...
[2026-10-28 15:15:52,986.986 INFO    ] 200
[2026-10-28 15:15:52,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:15:53,029.029 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:15:53,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:15:53,135.135 INFO    ] No camera update needed
[2026-10-28 15:15:53,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:15:53,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:15:53,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:15:53,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:15:55,191.191 INFO    ] ================================================
[2026-10-28 15:15:55,207.207 INFO    ] Launching Daemon at Wed Oct 28 15:15:55 IST 2026
[2026-10-28 15:15:55,218.218 INFO    ] ================================================
[2026-10-28 15:15:55,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:15:55
[2026-10-28 15:15:56,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:15:56,654.654 INFO    ] Initializing speech engine...
[2026-10-28 15:15:56,660.660 INFO    ] 2026-10-28 15:15:56
[2026-10-28 15:15:56,906.906 INFO    ] 2026-10-28 15:15:56
[2026-10-28 15:15:56,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:15:57,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:15:57,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:15:57,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:15:57,459.459 INFO    ] time= 28/10/2026 15:15:57
[2026-10-28 15:15:57,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:15:57,505.505 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:15:57,623.623 INFO    ] No existing commands found in stream
[2026-10-28 15:16:02,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:16:02,651.651 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-28 15:16:06,952.952 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:16:06,955.955 INFO    ] Checking for system updates...
[2026-10-28 15:16:06,993.993 INFO    ] 200
[2026-10-28 15:16:06,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:16:07,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:16:07,050.050 INFO    ] No update needed
[2026-10-28 15:16:07,052.052 INFO    ] Checking for camera pi updates...
[2026-10-28 15:16:07,090.090 INFO    ] 200
[2026-10-28 15:16:07,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:16:07,134.134 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:16:07,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:16:07,224.224 INFO    ] No camera update needed
[2026-10-28 15:16:07,227.227 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:16:07,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:16:07,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:16:07,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:16:09,283.283 INFO    ] ================================================
[2026-10-28 15:16:09,298.298 INFO    ] Launching Daemon at Wed Oct 28 15:16:09 IST 2026
[2026-10-28 15:16:09,309.309 INFO    ] ================================================
[2026-10-28 15:16:09,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:16:09
[2026-10-28 15:16:10,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:16:10,735.735 INFO    ] Initializing speech engine...
[2026-10-28 15:16:10,741.741 INFO    ] 2026-10-28 15:16:10
[2026-10-28 15:16:10,988.988 INFO    ] 2026-10-28 15:16:10
[2026-10-28 15:16:11,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:16:11,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:16:11,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:16:11,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:16:11,506.506 INFO    ] time= 28/10/2026 15:16:11
[2026-10-28 15:16:11,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:16:11,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:16:11,790.790 INFO    ] No existing commands found in stream
[2026-10-28 15:16:16,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:16:16,808.808 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-28 15:16:20,326.326 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:16:20,328.328 INFO    ] Checking for system updates...
[2026-10-28 15:16:20,385.385 INFO    ] 200
[2026-10-28 15:16:20,388.388 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 15:16:20,391.391 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-28 15:16:20,394.394 INFO    ] Checking for camera pi updates...
[2026-10-28 15:16:20,456.456 INFO    ] 200
[2026-10-28 15:16:20,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:16:20,518.518 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:16:20,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:16:20,602.602 INFO    ] No camera update needed
[2026-10-28 15:16:20,605.605 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:16:20,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:16:20,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:16:20,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:16:22,661.661 INFO    ] ================================================
[2026-10-28 15:16:22,676.676 INFO    ] Launching Daemon at Wed Oct 28 15:16:22 IST 2026
[2026-10-28 15:16:22,687.687 INFO    ] ================================================
[2026-10-28 15:16:23,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:16:23
[2026-10-28 15:16:23,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:16:24,126.126 INFO    ] Initializing speech engine...
[2026-10-28 15:16:24,135.135 INFO    ] 2026-10-28 15:16:24
[2026-10-28 15:16:24,380.380 INFO    ] 2026-10-28 15:16:24
[2026-10-28 15:16:24,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:16:24,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:16:24,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:16:24,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:16:24,935.935 INFO    ] time= 28/10/2026 15:16:24
[2026-10-28 15:16:24,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:16:24,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:16:25,086.086 INFO    ] No existing commands found in stream
[2026-10-28 15:16:30,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:16:30,105.105 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-28 15:16:33,206.206 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:16:33,209.209 INFO    ] Checking for system updates...
[2026-10-28 15:16:33,252.252 INFO    ] 200
[2026-10-28 15:16:33,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:16:33,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:16:33,316.316 INFO    ] No update needed
[2026-10-28 15:16:33,319.319 INFO    ] Checking for camera pi updates...
[2026-10-28 15:16:33,360.360 INFO    ] 200
[2026-10-28 15:16:33,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:16:33,407.407 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:16:33,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:16:33,491.491 INFO    ] No camera update needed
[2026-10-28 15:16:33,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:16:33,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:16:33,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:16:33,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:16:35,548.548 INFO    ] ================================================
[2026-10-28 15:16:35,564.564 INFO    ] Launching Daemon at Wed Oct 28 15:16:35 IST 2026
[2026-10-28 15:16:35,575.575 INFO    ] ================================================
[2026-10-28 15:16:36,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:16:36
[2026-10-28 15:16:36,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:16:37,000.000 INFO    ] Initializing speech engine...
[2026-10-28 15:16:37,008.008 INFO    ] 2026-10-28 15:16:37
[2026-10-28 15:16:37,255.255 INFO    ] 2026-10-28 15:16:37
[2026-10-28 15:16:37,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:16:37,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:16:37,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:16:37,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:16:37,808.808 INFO    ] time= 28/10/2026 15:16:37
[2026-10-28 15:16:37,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:16:37,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:16:37,995.995 INFO    ] No existing commands found in stream
[2026-10-28 15:16:43,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:16:43,028.028 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-28 15:16:44,000.000 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:16:44,003.003 INFO    ] Checking for system updates...
[2026-10-28 15:16:44,039.039 INFO    ] 200
[2026-10-28 15:16:44,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:16:44,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:16:44,096.096 INFO    ] No update needed
[2026-10-28 15:16:44,098.098 INFO    ] Checking for camera pi updates...
[2026-10-28 15:16:44,142.142 INFO    ] 200
[2026-10-28 15:16:44,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:16:44,185.185 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:16:44,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:16:44,268.268 INFO    ] No camera update needed
[2026-10-28 15:16:44,271.271 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:16:44,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:16:44,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:16:44,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:16:46,326.326 INFO    ] ================================================
[2026-10-28 15:16:46,342.342 INFO    ] Launching Daemon at Wed Oct 28 15:16:46 IST 2026
[2026-10-28 15:16:46,352.352 INFO    ] ================================================
[2026-10-28 15:16:47,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:16:47
[2026-10-28 15:16:47,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:16:47,995.995 INFO    ] Initializing speech engine...
[2026-10-28 15:16:48,008.008 INFO    ] 2026-10-28 15:16:47
[2026-10-28 15:16:48,295.295 INFO    ] 2026-10-28 15:16:48
[2026-10-28 15:16:48,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:16:48,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:16:48,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:16:48,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:16:48,988.988 INFO    ] time= 28/10/2026 15:16:48
[2026-10-28 15:16:49,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:16:49,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:16:49,262.262 INFO    ] No existing commands found in stream
[2026-10-28 15:16:54,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:16:54,276.276 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 15:16:57,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:16:57,868.868 INFO    ] Checking for system updates...
[2026-10-28 15:16:57,905.905 INFO    ] 200
[2026-10-28 15:16:57,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:16:57,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:16:57,967.967 INFO    ] No update needed
[2026-10-28 15:16:57,970.970 INFO    ] Checking for camera pi updates...
[2026-10-28 15:16:58,004.004 INFO    ] 200
[2026-10-28 15:16:58,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:16:58,052.052 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:16:58,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:16:58,144.144 INFO    ] No camera update needed
[2026-10-28 15:16:58,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:16:58,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:16:58,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:16:58,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:17:00,199.199 INFO    ] ================================================
[2026-10-28 15:17:00,215.215 INFO    ] Launching Daemon at Wed Oct 28 15:17:00 IST 2026
[2026-10-28 15:17:00,226.226 INFO    ] ================================================
[2026-10-28 15:17:00,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:17:00
[2026-10-28 15:17:01,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:17:01,942.942 INFO    ] Initializing speech engine...
[2026-10-28 15:17:01,956.956 INFO    ] 2026-10-28 15:17:01
[2026-10-28 15:17:02,280.280 INFO    ] 2026-10-28 15:17:02
[2026-10-28 15:17:02,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:17:02,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:17:02,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:17:02,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:17:02,867.867 INFO    ] time= 28/10/2026 15:17:02
[2026-10-28 15:17:02,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:17:02,916.916 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:17:03,048.048 INFO    ] No existing commands found in stream
[2026-10-28 15:17:08,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:17:08,076.076 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-28 15:17:11,466.466 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:17:11,469.469 INFO    ] Checking for system updates...
[2026-10-28 15:17:11,505.505 INFO    ] 200
[2026-10-28 15:17:11,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:17:11,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:17:11,571.571 INFO    ] No update needed
[2026-10-28 15:17:11,574.574 INFO    ] Checking for camera pi updates...
[2026-10-28 15:17:11,611.611 INFO    ] 200
[2026-10-28 15:17:11,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:17:11,654.654 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:17:11,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:17:11,764.764 INFO    ] No camera update needed
[2026-10-28 15:17:11,766.766 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:17:11,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:17:11,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:17:11,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:17:13,820.820 INFO    ] ================================================
[2026-10-28 15:17:13,835.835 INFO    ] Launching Daemon at Wed Oct 28 15:17:13 IST 2026
[2026-10-28 15:17:13,846.846 INFO    ] ================================================
[2026-10-28 15:17:14,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:17:14
[2026-10-28 15:17:15,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:17:15,483.483 INFO    ] Initializing speech engine...
[2026-10-28 15:17:15,491.491 INFO    ] 2026-10-28 15:17:15
[2026-10-28 15:17:15,809.809 INFO    ] 2026-10-28 15:17:15
[2026-10-28 15:17:15,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:17:16,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:17:16,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:17:16,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:17:16,455.455 INFO    ] time= 28/10/2026 15:17:16
[2026-10-28 15:17:16,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:17:16,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:17:16,709.709 INFO    ] No existing commands found in stream
[2026-10-28 15:17:21,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:17:21,749.749 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-28 15:17:23,744.744 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:17:23,747.747 INFO    ] Checking for system updates...
[2026-10-28 15:17:23,783.783 INFO    ] 200
[2026-10-28 15:17:23,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:17:23,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:17:23,846.846 INFO    ] No update needed
[2026-10-28 15:17:23,849.849 INFO    ] Checking for camera pi updates...
[2026-10-28 15:17:23,882.882 INFO    ] 200
[2026-10-28 15:17:23,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:17:23,926.926 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:17:24,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:17:24,004.004 INFO    ] No camera update needed
[2026-10-28 15:17:24,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:17:24,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:17:24,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:17:24,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:17:26,060.060 INFO    ] ================================================
[2026-10-28 15:17:26,075.075 INFO    ] Launching Daemon at Wed Oct 28 15:17:26 IST 2026
[2026-10-28 15:17:26,087.087 INFO    ] ================================================
[2026-10-28 15:17:26,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:17:26
[2026-10-28 15:17:27,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:17:27,560.560 INFO    ] Initializing speech engine...
[2026-10-28 15:17:27,567.567 INFO    ] 2026-10-28 15:17:27
[2026-10-28 15:17:27,833.833 INFO    ] 2026-10-28 15:17:27
[2026-10-28 15:17:27,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:17:28,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:17:28,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:17:28,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:17:28,439.439 INFO    ] time= 28/10/2026 15:17:28
[2026-10-28 15:17:28,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:17:28,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:17:28,598.598 INFO    ] No existing commands found in stream
[2026-10-28 15:17:33,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:17:33,626.626 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-28 15:17:35,101.101 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:17:35,104.104 INFO    ] Checking for system updates...
[2026-10-28 15:17:35,143.143 INFO    ] 200
[2026-10-28 15:17:35,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:17:35,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:17:35,207.207 INFO    ] No update needed
[2026-10-28 15:17:35,209.209 INFO    ] Checking for camera pi updates...
[2026-10-28 15:17:35,243.243 INFO    ] 200
[2026-10-28 15:17:35,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:17:35,292.292 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:17:35,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:17:35,380.380 INFO    ] No camera update needed
[2026-10-28 15:17:35,383.383 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:17:35,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:17:35,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:17:35,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:17:37,440.440 INFO    ] ================================================
[2026-10-28 15:17:37,456.456 INFO    ] Launching Daemon at Wed Oct 28 15:17:37 IST 2026
[2026-10-28 15:17:37,468.468 INFO    ] ================================================
[2026-10-28 15:17:38,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:17:38
[2026-10-28 15:17:38,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:17:38,929.929 INFO    ] Initializing speech engine...
[2026-10-28 15:17:38,945.945 INFO    ] 2026-10-28 15:17:38
[2026-10-28 15:17:39,218.218 INFO    ] 2026-10-28 15:17:39
[2026-10-28 15:17:39,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:17:39,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:17:39,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:17:39,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:17:39,826.826 INFO    ] time= 28/10/2026 15:17:39
[2026-10-28 15:17:39,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:17:39,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:17:40,026.026 INFO    ] No existing commands found in stream
[2026-10-28 15:17:45,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:17:45,044.044 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 15:17:49,320.320 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:17:49,322.322 INFO    ] Checking for system updates...
[2026-10-28 15:17:49,358.358 INFO    ] 200
[2026-10-28 15:17:49,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:17:49,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:17:49,416.416 INFO    ] No update needed
[2026-10-28 15:17:49,418.418 INFO    ] Checking for camera pi updates...
[2026-10-28 15:17:49,456.456 INFO    ] 200
[2026-10-28 15:17:49,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:17:49,506.506 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:17:49,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:17:49,596.596 INFO    ] No camera update needed
[2026-10-28 15:17:49,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:17:49,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:17:49,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:17:49,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:17:51,652.652 INFO    ] ================================================
[2026-10-28 15:17:51,668.668 INFO    ] Launching Daemon at Wed Oct 28 15:17:51 IST 2026
[2026-10-28 15:17:51,679.679 INFO    ] ================================================
[2026-10-28 15:17:52,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:17:52
[2026-10-28 15:17:53,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:17:53,301.301 INFO    ] Initializing speech engine...
[2026-10-28 15:17:53,310.310 INFO    ] 2026-10-28 15:17:53
[2026-10-28 15:17:53,584.584 INFO    ] 2026-10-28 15:17:53
[2026-10-28 15:17:53,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:17:53,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:17:53,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:17:54,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:17:54,157.157 INFO    ] time= 28/10/2026 15:17:54
[2026-10-28 15:17:54,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:17:54,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:17:54,313.313 INFO    ] No existing commands found in stream
[2026-10-28 15:17:59,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:17:59,328.328 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-28 15:18:03,890.890 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:18:03,893.893 INFO    ] Checking for system updates...
[2026-10-28 15:18:03,933.933 INFO    ] 200
[2026-10-28 15:18:03,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:18:03,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:18:03,997.997 INFO    ] No update needed
[2026-10-28 15:18:03,999.999 INFO    ] Checking for camera pi updates...
[2026-10-28 15:18:04,036.036 INFO    ] 200
[2026-10-28 15:18:04,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:18:04,083.083 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:18:04,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:18:04,171.171 INFO    ] No camera update needed
[2026-10-28 15:18:04,174.174 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:18:04,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:18:04,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:18:04,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:18:06,227.227 INFO    ] ================================================
[2026-10-28 15:18:06,242.242 INFO    ] Launching Daemon at Wed Oct 28 15:18:06 IST 2026
[2026-10-28 15:18:06,254.254 INFO    ] ================================================
[2026-10-28 15:18:06,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:18:06
[2026-10-28 15:18:07,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:18:07,665.665 INFO    ] Initializing speech engine...
[2026-10-28 15:18:07,680.680 INFO    ] 2026-10-28 15:18:07
[2026-10-28 15:18:07,947.947 INFO    ] 2026-10-28 15:18:07
[2026-10-28 15:18:07,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:18:08,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:18:08,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:18:08,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:18:08,517.517 INFO    ] time= 28/10/2026 15:18:08
[2026-10-28 15:18:08,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:18:08,558.558 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:18:08,673.673 INFO    ] No existing commands found in stream
[2026-10-28 15:18:13,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:18:13,688.688 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-28 15:18:16,341.341 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:18:16,343.343 INFO    ] Checking for system updates...
[2026-10-28 15:18:16,379.379 INFO    ] 200
[2026-10-28 15:18:16,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:18:16,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:18:16,443.443 INFO    ] No update needed
[2026-10-28 15:18:16,446.446 INFO    ] Checking for camera pi updates...
[2026-10-28 15:18:16,486.486 INFO    ] 200
[2026-10-28 15:18:16,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:18:16,534.534 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:18:16,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:18:16,620.620 INFO    ] No camera update needed
[2026-10-28 15:18:16,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:18:16,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:18:16,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:18:16,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:18:18,677.677 INFO    ] ================================================
[2026-10-28 15:18:18,692.692 INFO    ] Launching Daemon at Wed Oct 28 15:18:18 IST 2026
[2026-10-28 15:18:18,703.703 INFO    ] ================================================
[2026-10-28 15:18:19,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:18:19
[2026-10-28 15:18:19,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:18:20,150.150 INFO    ] Initializing speech engine...
[2026-10-28 15:18:20,159.159 INFO    ] 2026-10-28 15:18:20
[2026-10-28 15:18:20,453.453 INFO    ] 2026-10-28 15:18:20
[2026-10-28 15:18:20,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:18:20,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:18:20,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:18:21,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:18:21,049.049 INFO    ] time= 28/10/2026 15:18:21
[2026-10-28 15:18:21,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:18:21,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:18:21,237.237 INFO    ] No existing commands found in stream
[2026-10-28 15:18:26,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:18:26,270.270 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-28 15:18:28,768.768 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:18:28,774.774 INFO    ] Checking for system updates...
[2026-10-28 15:18:28,814.814 INFO    ] 200
[2026-10-28 15:18:28,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:18:28,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:18:28,878.878 INFO    ] No update needed
[2026-10-28 15:18:28,880.880 INFO    ] Checking for camera pi updates...
[2026-10-28 15:18:28,914.914 INFO    ] 200
[2026-10-28 15:18:28,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:18:28,958.958 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:18:29,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:18:29,053.053 INFO    ] No camera update needed
[2026-10-28 15:18:29,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:18:29,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:18:29,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:18:29,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:18:31,110.110 INFO    ] ================================================
[2026-10-28 15:18:31,125.125 INFO    ] Launching Daemon at Wed Oct 28 15:18:31 IST 2026
[2026-10-28 15:18:31,137.137 INFO    ] ================================================
[2026-10-28 15:18:31,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:18:31
[2026-10-28 15:18:32,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:18:32,820.820 INFO    ] Initializing speech engine...
[2026-10-28 15:18:32,827.827 INFO    ] 2026-10-28 15:18:32
[2026-10-28 15:18:33,101.101 INFO    ] 2026-10-28 15:18:33
[2026-10-28 15:18:33,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:18:33,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:18:33,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:18:33,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:18:33,697.697 INFO    ] time= 28/10/2026 15:18:33
[2026-10-28 15:18:33,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:18:33,729.729 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:18:33,905.905 INFO    ] No existing commands found in stream
[2026-10-28 15:18:38,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:18:38,922.922 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-28 15:18:42,875.875 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:18:42,878.878 INFO    ] Checking for system updates...
[2026-10-28 15:18:42,919.919 INFO    ] 200
[2026-10-28 15:18:42,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:18:42,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:18:42,988.988 INFO    ] No update needed
[2026-10-28 15:18:42,991.991 INFO    ] Checking for camera pi updates...
[2026-10-28 15:18:43,028.028 INFO    ] 200
[2026-10-28 15:18:43,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:18:43,073.073 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:18:43,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:18:43,256.256 INFO    ] No camera update needed
[2026-10-28 15:18:43,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:18:43,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:18:43,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:18:43,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:18:45,315.315 INFO    ] ================================================
[2026-10-28 15:18:45,331.331 INFO    ] Launching Daemon at Wed Oct 28 15:18:45 IST 2026
[2026-10-28 15:18:45,342.342 INFO    ] ================================================
[2026-10-28 15:18:45,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:18:45
[2026-10-28 15:18:46,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:18:46,806.806 INFO    ] Initializing speech engine...
[2026-10-28 15:18:46,816.816 INFO    ] 2026-10-28 15:18:46
[2026-10-28 15:18:47,066.066 INFO    ] 2026-10-28 15:18:47
[2026-10-28 15:18:47,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:18:47,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:18:47,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:18:47,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:18:47,625.625 INFO    ] time= 28/10/2026 15:18:47
[2026-10-28 15:18:47,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:18:47,655.655 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:18:47,780.780 INFO    ] No existing commands found in stream
[2026-10-28 15:18:52,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:18:52,811.811 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-28 15:18:56,422.422 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:18:56,425.425 INFO    ] Checking for system updates...
[2026-10-28 15:18:56,465.465 INFO    ] 200
[2026-10-28 15:18:56,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:18:56,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:18:56,522.522 INFO    ] No update needed
[2026-10-28 15:18:56,525.525 INFO    ] Checking for camera pi updates...
[2026-10-28 15:18:56,559.559 INFO    ] 200
[2026-10-28 15:18:56,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:18:56,606.606 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:18:56,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:18:56,686.686 INFO    ] No camera update needed
[2026-10-28 15:18:56,688.688 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:18:56,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:18:56,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:18:56,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:18:58,742.742 INFO    ] ================================================
[2026-10-28 15:18:58,757.757 INFO    ] Launching Daemon at Wed Oct 28 15:18:58 IST 2026
[2026-10-28 15:18:58,768.768 INFO    ] ================================================
[2026-10-28 15:18:59,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:18:59
[2026-10-28 15:18:59,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:19:00,187.187 INFO    ] Initializing speech engine...
[2026-10-28 15:19:00,196.196 INFO    ] 2026-10-28 15:19:00
[2026-10-28 15:19:00,441.441 INFO    ] 2026-10-28 15:19:00
[2026-10-28 15:19:00,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:19:00,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:19:00,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:19:00,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:19:00,995.995 INFO    ] time= 28/10/2026 15:19:00
[2026-10-28 15:19:01,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:19:01,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:19:01,171.171 INFO    ] No existing commands found in stream
[2026-10-28 15:19:06,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:19:06,205.205 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-28 15:19:09,603.603 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:19:09,605.605 INFO    ] Checking for system updates...
[2026-10-28 15:19:09,641.641 INFO    ] 200
[2026-10-28 15:19:09,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:19:09,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:19:09,708.708 INFO    ] No update needed
[2026-10-28 15:19:09,711.711 INFO    ] Checking for camera pi updates...
[2026-10-28 15:19:09,745.745 INFO    ] 200
[2026-10-28 15:19:09,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:19:09,787.787 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:19:09,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:19:09,839.839 INFO    ] No camera update needed
[2026-10-28 15:19:09,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:19:09,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:19:09,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:19:09,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:19:11,895.895 INFO    ] ================================================
[2026-10-28 15:19:11,910.910 INFO    ] Launching Daemon at Wed Oct 28 15:19:11 IST 2026
[2026-10-28 15:19:11,921.921 INFO    ] ================================================
[2026-10-28 15:19:12,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:19:12
[2026-10-28 15:19:13,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:19:13,328.328 INFO    ] Initializing speech engine...
[2026-10-28 15:19:13,353.353 INFO    ] 2026-10-28 15:19:13
[2026-10-28 15:19:13,618.618 INFO    ] 2026-10-28 15:19:13
[2026-10-28 15:19:13,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:19:13,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:19:13,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:19:14,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:19:14,166.166 INFO    ] time= 28/10/2026 15:19:14
[2026-10-28 15:19:14,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:19:14,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:19:14,364.364 INFO    ] No existing commands found in stream
[2026-10-28 15:19:19,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:19:19,390.390 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-28 15:19:22,944.944 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:19:22,946.946 INFO    ] Checking for system updates...
[2026-10-28 15:19:22,982.982 INFO    ] 200
[2026-10-28 15:19:22,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:19:23,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:19:23,040.040 INFO    ] No update needed
[2026-10-28 15:19:23,042.042 INFO    ] Checking for camera pi updates...
[2026-10-28 15:19:23,078.078 INFO    ] 200
[2026-10-28 15:19:23,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:19:23,120.120 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:19:23,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:19:23,245.245 INFO    ] No camera update needed
[2026-10-28 15:19:23,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:19:23,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:19:23,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:19:23,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:19:25,303.303 INFO    ] ================================================
[2026-10-28 15:19:25,319.319 INFO    ] Launching Daemon at Wed Oct 28 15:19:25 IST 2026
[2026-10-28 15:19:25,330.330 INFO    ] ================================================
[2026-10-28 15:19:25,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:19:25
[2026-10-28 15:19:26,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:19:26,742.742 INFO    ] Initializing speech engine...
[2026-10-28 15:19:26,754.754 INFO    ] 2026-10-28 15:19:26
[2026-10-28 15:19:27,037.037 INFO    ] 2026-10-28 15:19:27
[2026-10-28 15:19:27,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:19:27,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:19:27,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:19:27,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:19:27,621.621 INFO    ] time= 28/10/2026 15:19:27
[2026-10-28 15:19:27,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:19:27,653.653 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:19:27,807.807 INFO    ] No existing commands found in stream
[2026-10-28 15:19:32,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:19:32,830.830 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-28 15:19:34,449.449 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:19:34,452.452 INFO    ] Checking for system updates...
[2026-10-28 15:19:34,490.490 INFO    ] 200
[2026-10-28 15:19:34,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:19:34,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:19:34,551.551 INFO    ] No update needed
[2026-10-28 15:19:34,554.554 INFO    ] Checking for camera pi updates...
[2026-10-28 15:19:34,587.587 INFO    ] 200
[2026-10-28 15:19:34,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:19:34,629.629 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:19:34,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:19:34,716.716 INFO    ] No camera update needed
[2026-10-28 15:19:34,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:19:34,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:19:34,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:19:34,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:19:36,770.770 INFO    ] ================================================
[2026-10-28 15:19:36,786.786 INFO    ] Launching Daemon at Wed Oct 28 15:19:36 IST 2026
[2026-10-28 15:19:36,797.797 INFO    ] ================================================
[2026-10-28 15:19:37,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:19:37
[2026-10-28 15:19:37,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:19:38,233.233 INFO    ] Initializing speech engine...
[2026-10-28 15:19:38,242.242 INFO    ] 2026-10-28 15:19:38
[2026-10-28 15:19:38,487.487 INFO    ] 2026-10-28 15:19:38
[2026-10-28 15:19:38,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:19:38,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:19:38,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:19:39,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:19:39,042.042 INFO    ] time= 28/10/2026 15:19:39
[2026-10-28 15:19:39,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:19:39,065.065 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:19:39,196.196 INFO    ] No existing commands found in stream
[2026-10-28 15:19:44,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:19:44,218.218 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 15:19:48,074.074 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:19:48,077.077 INFO    ] Checking for system updates...
[2026-10-28 15:19:48,115.115 INFO    ] 200
[2026-10-28 15:19:48,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:19:48,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:19:48,175.175 INFO    ] No update needed
[2026-10-28 15:19:48,178.178 INFO    ] Checking for camera pi updates...
[2026-10-28 15:19:48,215.215 INFO    ] 200
[2026-10-28 15:19:48,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:19:48,261.261 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:19:48,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:19:48,371.371 INFO    ] No camera update needed
[2026-10-28 15:19:48,373.373 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:19:48,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:19:48,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:19:48,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:19:50,428.428 INFO    ] ================================================
[2026-10-28 15:19:50,444.444 INFO    ] Launching Daemon at Wed Oct 28 15:19:50 IST 2026
[2026-10-28 15:19:50,455.455 INFO    ] ================================================
[2026-10-28 15:19:51,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:19:51
[2026-10-28 15:19:51,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:19:51,872.872 INFO    ] Initializing speech engine...
[2026-10-28 15:19:51,897.897 INFO    ] 2026-10-28 15:19:51
[2026-10-28 15:19:52,156.156 INFO    ] 2026-10-28 15:19:52
[2026-10-28 15:19:52,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:19:52,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:19:52,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:19:52,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:19:52,729.729 INFO    ] time= 28/10/2026 15:19:52
[2026-10-28 15:19:52,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:19:52,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:19:52,916.916 INFO    ] No existing commands found in stream
[2026-10-28 15:19:57,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:19:57,939.939 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-28 15:20:02,288.288 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:20:02,291.291 INFO    ] Checking for system updates...
[2026-10-28 15:20:02,456.456 INFO    ] 200
[2026-10-28 15:20:02,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:20:02,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:20:02,575.575 INFO    ] No update needed
[2026-10-28 15:20:02,578.578 INFO    ] Checking for camera pi updates...
[2026-10-28 15:20:02,623.623 INFO    ] 200
[2026-10-28 15:20:02,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:20:02,683.683 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:20:02,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:20:02,922.922 INFO    ] No camera update needed
[2026-10-28 15:20:02,926.926 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:20:02,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:20:02,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:20:02,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:20:04,989.989 INFO    ] ================================================
[2026-10-28 15:20:05,004.004 INFO    ] Launching Daemon at Wed Oct 28 15:20:04 IST 2026
[2026-10-28 15:20:05,016.016 INFO    ] ================================================
[2026-10-28 15:20:05,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:20:05
[2026-10-28 15:20:06,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:20:06,618.618 INFO    ] Initializing speech engine...
[2026-10-28 15:20:06,630.630 INFO    ] 2026-10-28 15:20:06
[2026-10-28 15:20:06,934.934 INFO    ] 2026-10-28 15:20:06
[2026-10-28 15:20:07,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:20:07,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:20:07,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:20:07,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:20:07,604.604 INFO    ] time= 28/10/2026 15:20:07
[2026-10-28 15:20:07,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:20:07,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:20:07,847.847 INFO    ] No existing commands found in stream
[2026-10-28 15:20:12,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:20:12,888.888 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-28 15:20:15,545.545 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:20:15,548.548 INFO    ] Checking for system updates...
[2026-10-28 15:20:15,585.585 INFO    ] 200
[2026-10-28 15:20:15,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:20:15,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:20:15,643.643 INFO    ] No update needed
[2026-10-28 15:20:15,646.646 INFO    ] Checking for camera pi updates...
[2026-10-28 15:20:15,687.687 INFO    ] 200
[2026-10-28 15:20:15,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:20:15,729.729 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:20:15,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:20:15,819.819 INFO    ] No camera update needed
[2026-10-28 15:20:15,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:20:15,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:20:15,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:20:15,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:20:17,875.875 INFO    ] ================================================
[2026-10-28 15:20:17,891.891 INFO    ] Launching Daemon at Wed Oct 28 15:20:17 IST 2026
[2026-10-28 15:20:17,902.902 INFO    ] ================================================
[2026-10-28 15:20:18,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:20:18
[2026-10-28 15:20:19,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:20:19,342.342 INFO    ] Initializing speech engine...
[2026-10-28 15:20:19,348.348 INFO    ] 2026-10-28 15:20:19
[2026-10-28 15:20:19,608.608 INFO    ] 2026-10-28 15:20:19
[2026-10-28 15:20:19,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:20:19,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:20:19,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:20:20,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:20:20,207.207 INFO    ] time= 28/10/2026 15:20:20
[2026-10-28 15:20:20,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:20:20,230.230 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:20:20,368.368 INFO    ] No existing commands found in stream
[2026-10-28 15:20:25,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:20:25,395.395 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-28 15:20:29,041.041 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:20:29,044.044 INFO    ] Checking for system updates...
[2026-10-28 15:20:29,081.081 INFO    ] 200
[2026-10-28 15:20:29,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:20:29,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:20:29,138.138 INFO    ] No update needed
[2026-10-28 15:20:29,141.141 INFO    ] Checking for camera pi updates...
[2026-10-28 15:20:29,175.175 INFO    ] 200
[2026-10-28 15:20:29,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:20:29,218.218 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:20:29,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:20:29,300.300 INFO    ] No camera update needed
[2026-10-28 15:20:29,302.302 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:20:29,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:20:29,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:20:29,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:20:31,356.356 INFO    ] ================================================
[2026-10-28 15:20:31,372.372 INFO    ] Launching Daemon at Wed Oct 28 15:20:31 IST 2026
[2026-10-28 15:20:31,382.382 INFO    ] ================================================
[2026-10-28 15:20:31,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:20:31
[2026-10-28 15:20:32,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:20:32,875.875 INFO    ] Initializing speech engine...
[2026-10-28 15:20:32,883.883 INFO    ] 2026-10-28 15:20:32
[2026-10-28 15:20:33,144.144 INFO    ] 2026-10-28 15:20:33
[2026-10-28 15:20:33,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:20:33,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:20:33,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:20:33,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:20:33,739.739 INFO    ] time= 28/10/2026 15:20:33
[2026-10-28 15:20:33,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:20:33,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:20:33,942.942 INFO    ] No existing commands found in stream
[2026-10-28 15:20:38,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:20:38,971.971 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-28 15:20:42,586.586 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:20:42,589.589 INFO    ] Checking for system updates...
[2026-10-28 15:20:42,625.625 INFO    ] 200
[2026-10-28 15:20:42,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:20:42,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:20:42,689.689 INFO    ] No update needed
[2026-10-28 15:20:42,691.691 INFO    ] Checking for camera pi updates...
[2026-10-28 15:20:42,725.725 INFO    ] 200
[2026-10-28 15:20:42,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:20:42,767.767 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:20:42,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:20:42,856.856 INFO    ] No camera update needed
[2026-10-28 15:20:42,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:20:42,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:20:42,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:20:42,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:20:44,913.913 INFO    ] ================================================
[2026-10-28 15:20:44,930.930 INFO    ] Launching Daemon at Wed Oct 28 15:20:44 IST 2026
[2026-10-28 15:20:44,942.942 INFO    ] ================================================
[2026-10-28 15:20:45,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:20:45
[2026-10-28 15:20:46,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:20:46,710.710 INFO    ] Initializing speech engine...
[2026-10-28 15:20:46,729.729 INFO    ] 2026-10-28 15:20:46
[2026-10-28 15:20:47,028.028 INFO    ] 2026-10-28 15:20:47
[2026-10-28 15:20:47,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:20:47,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:20:47,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:20:47,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:20:47,603.603 INFO    ] time= 28/10/2026 15:20:47
[2026-10-28 15:20:47,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:20:47,654.654 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:20:47,782.782 INFO    ] No existing commands found in stream
[2026-10-28 15:20:52,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:20:52,822.822 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-28 15:20:55,167.167 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:20:55,170.170 INFO    ] Checking for system updates...
[2026-10-28 15:20:55,206.206 INFO    ] 200
[2026-10-28 15:20:55,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:20:55,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:20:55,271.271 INFO    ] No update needed
[2026-10-28 15:20:55,274.274 INFO    ] Checking for camera pi updates...
[2026-10-28 15:20:55,308.308 INFO    ] 200
[2026-10-28 15:20:55,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:20:55,351.351 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:20:55,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:20:55,537.537 INFO    ] No camera update needed
[2026-10-28 15:20:55,539.539 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:20:55,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:20:55,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:20:55,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:20:57,592.592 INFO    ] ================================================
[2026-10-28 15:20:57,608.608 INFO    ] Launching Daemon at Wed Oct 28 15:20:57 IST 2026
[2026-10-28 15:20:57,619.619 INFO    ] ================================================
[2026-10-28 15:20:58,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:20:58
[2026-10-28 15:20:58,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:20:59,042.042 INFO    ] Initializing speech engine...
[2026-10-28 15:20:59,050.050 INFO    ] 2026-10-28 15:20:59
[2026-10-28 15:20:59,299.299 INFO    ] 2026-10-28 15:20:59
[2026-10-28 15:20:59,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:20:59,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:20:59,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:20:59,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:20:59,864.864 INFO    ] time= 28/10/2026 15:20:59
[2026-10-28 15:20:59,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:20:59,886.886 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:21:00,001.001 INFO    ] No existing commands found in stream
[2026-10-28 15:21:05,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:21:05,034.034 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-28 15:21:08,479.479 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:21:08,482.482 INFO    ] Checking for system updates...
[2026-10-28 15:21:08,517.517 INFO    ] 200
[2026-10-28 15:21:08,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:21:08,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:21:08,582.582 INFO    ] No update needed
[2026-10-28 15:21:08,585.585 INFO    ] Checking for camera pi updates...
[2026-10-28 15:21:08,618.618 INFO    ] 200
[2026-10-28 15:21:08,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:21:08,661.661 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:21:08,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:21:08,737.737 INFO    ] No camera update needed
[2026-10-28 15:21:08,740.740 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:21:08,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:21:08,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:21:08,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:21:10,794.794 INFO    ] ================================================
[2026-10-28 15:21:10,810.810 INFO    ] Launching Daemon at Wed Oct 28 15:21:10 IST 2026
[2026-10-28 15:21:10,821.821 INFO    ] ================================================
[2026-10-28 15:21:11,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:21:11
[2026-10-28 15:21:11,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:21:12,223.223 INFO    ] Initializing speech engine...
[2026-10-28 15:21:12,246.246 INFO    ] 2026-10-28 15:21:12
[2026-10-28 15:21:12,508.508 INFO    ] 2026-10-28 15:21:12
[2026-10-28 15:21:12,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:21:12,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:21:12,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:21:13,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:21:13,075.075 INFO    ] time= 28/10/2026 15:21:13
[2026-10-28 15:21:13,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:21:13,099.099 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:21:13,256.256 INFO    ] No existing commands found in stream
[2026-10-28 15:21:18,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:21:18,284.284 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-28 15:21:22,049.049 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:21:22,052.052 INFO    ] Checking for system updates...
[2026-10-28 15:21:22,091.091 INFO    ] 200
[2026-10-28 15:21:22,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:21:22,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:21:22,148.148 INFO    ] No update needed
[2026-10-28 15:21:22,150.150 INFO    ] Checking for camera pi updates...
[2026-10-28 15:21:22,184.184 INFO    ] 200
[2026-10-28 15:21:22,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:21:22,232.232 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:21:22,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:21:22,322.322 INFO    ] No camera update needed
[2026-10-28 15:21:22,327.327 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:21:22,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:21:22,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:21:22,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:21:24,380.380 INFO    ] ================================================
[2026-10-28 15:21:24,396.396 INFO    ] Launching Daemon at Wed Oct 28 15:21:24 IST 2026
[2026-10-28 15:21:24,414.414 INFO    ] ================================================
[2026-10-28 15:21:24,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:21:24
[2026-10-28 15:21:25,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:21:25,986.986 INFO    ] Initializing speech engine...
[2026-10-28 15:21:25,998.998 INFO    ] 2026-10-28 15:21:25
[2026-10-28 15:21:26,250.250 INFO    ] 2026-10-28 15:21:26
[2026-10-28 15:21:26,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:21:26,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:21:26,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:21:26,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:21:26,792.792 INFO    ] time= 28/10/2026 15:21:26
[2026-10-28 15:21:26,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:21:26,823.823 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:21:26,960.960 INFO    ] No existing commands found in stream
[2026-10-28 15:21:31,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:21:31,994.994 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 15:21:36,648.648 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:21:36,650.650 INFO    ] Checking for system updates...
[2026-10-28 15:21:36,690.690 INFO    ] 200
[2026-10-28 15:21:36,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:21:36,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:21:36,749.749 INFO    ] No update needed
[2026-10-28 15:21:36,751.751 INFO    ] Checking for camera pi updates...
[2026-10-28 15:21:36,785.785 INFO    ] 200
[2026-10-28 15:21:36,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:21:36,832.832 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:21:36,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:21:36,920.920 INFO    ] No camera update needed
[2026-10-28 15:21:36,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:21:36,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:21:36,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:21:36,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:21:38,977.977 INFO    ] ================================================
[2026-10-28 15:21:38,992.992 INFO    ] Launching Daemon at Wed Oct 28 15:21:38 IST 2026
[2026-10-28 15:21:39,003.003 INFO    ] ================================================
[2026-10-28 15:21:39,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:21:39
[2026-10-28 15:21:40,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:21:40,648.648 INFO    ] Initializing speech engine...
[2026-10-28 15:21:40,658.658 INFO    ] 2026-10-28 15:21:40
[2026-10-28 15:21:40,948.948 INFO    ] 2026-10-28 15:21:40
[2026-10-28 15:21:40,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:21:41,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:21:41,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:21:41,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:21:41,537.537 INFO    ] time= 28/10/2026 15:21:41
[2026-10-28 15:21:41,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:21:41,578.578 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:21:41,728.728 INFO    ] No existing commands found in stream
[2026-10-28 15:21:46,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:21:46,762.762 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-28 15:21:48,226.226 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:21:48,229.229 INFO    ] Checking for system updates...
[2026-10-28 15:21:48,267.267 INFO    ] 200
[2026-10-28 15:21:48,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:21:48,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:21:48,332.332 INFO    ] No update needed
[2026-10-28 15:21:48,334.334 INFO    ] Checking for camera pi updates...
[2026-10-28 15:21:48,372.372 INFO    ] 200
[2026-10-28 15:21:48,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:21:48,420.420 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:21:48,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:21:48,513.513 INFO    ] No camera update needed
[2026-10-28 15:21:48,515.515 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:21:48,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:21:48,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:21:48,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:21:50,568.568 INFO    ] ================================================
[2026-10-28 15:21:50,584.584 INFO    ] Launching Daemon at Wed Oct 28 15:21:50 IST 2026
[2026-10-28 15:21:50,595.595 INFO    ] ================================================
[2026-10-28 15:21:51,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:21:51
[2026-10-28 15:21:51,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:21:52,032.032 INFO    ] Initializing speech engine...
[2026-10-28 15:21:52,041.041 INFO    ] 2026-10-28 15:21:52
[2026-10-28 15:21:52,299.299 INFO    ] 2026-10-28 15:21:52
[2026-10-28 15:21:52,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:21:52,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:21:52,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:21:52,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:21:52,886.886 INFO    ] time= 28/10/2026 15:21:52
[2026-10-28 15:21:52,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:21:52,910.910 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:21:53,029.029 INFO    ] No existing commands found in stream
[2026-10-28 15:21:58,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:21:58,062.062 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 15:22:01,985.985 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:22:01,988.988 INFO    ] Checking for system updates...
[2026-10-28 15:22:02,027.027 INFO    ] 200
[2026-10-28 15:22:02,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:22:02,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:22:02,104.104 INFO    ] No update needed
[2026-10-28 15:22:02,107.107 INFO    ] Checking for camera pi updates...
[2026-10-28 15:22:02,160.160 INFO    ] 200
[2026-10-28 15:22:02,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:22:02,220.220 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:22:02,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:22:02,312.312 INFO    ] No camera update needed
[2026-10-28 15:22:02,315.315 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:22:02,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:22:02,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:22:02,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:22:04,373.373 INFO    ] ================================================
[2026-10-28 15:22:04,389.389 INFO    ] Launching Daemon at Wed Oct 28 15:22:04 IST 2026
[2026-10-28 15:22:04,400.400 INFO    ] ================================================
[2026-10-28 15:22:04,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:22:04
[2026-10-28 15:22:05,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:22:05,810.810 INFO    ] Initializing speech engine...
[2026-10-28 15:22:05,836.836 INFO    ] 2026-10-28 15:22:05
[2026-10-28 15:22:06,111.111 INFO    ] 2026-10-28 15:22:06
[2026-10-28 15:22:06,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:22:06,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:22:06,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:22:06,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:22:06,730.730 INFO    ] time= 28/10/2026 15:22:06
[2026-10-28 15:22:06,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:22:06,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:22:06,870.870 INFO    ] No existing commands found in stream
[2026-10-28 15:22:11,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:22:11,908.908 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-28 15:22:15,281.281 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:22:15,284.284 INFO    ] Checking for system updates...
[2026-10-28 15:22:15,326.326 INFO    ] 200
[2026-10-28 15:22:15,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:22:15,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:22:15,385.385 INFO    ] No update needed
[2026-10-28 15:22:15,388.388 INFO    ] Checking for camera pi updates...
[2026-10-28 15:22:15,423.423 INFO    ] 200
[2026-10-28 15:22:15,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:22:15,468.468 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:22:15,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:22:15,565.565 INFO    ] No camera update needed
[2026-10-28 15:22:15,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:22:15,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:22:15,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:22:15,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:22:17,622.622 INFO    ] ================================================
[2026-10-28 15:22:17,637.637 INFO    ] Launching Daemon at Wed Oct 28 15:22:17 IST 2026
[2026-10-28 15:22:17,649.649 INFO    ] ================================================
[2026-10-28 15:22:18,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:22:18
[2026-10-28 15:22:18,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:22:19,246.246 INFO    ] Initializing speech engine...
[2026-10-28 15:22:19,254.254 INFO    ] 2026-10-28 15:22:19
[2026-10-28 15:22:19,523.523 INFO    ] 2026-10-28 15:22:19
[2026-10-28 15:22:19,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:22:19,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:22:19,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:22:20,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:22:20,251.251 INFO    ] time= 28/10/2026 15:22:20
[2026-10-28 15:22:20,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:22:20,343.343 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:22:20,512.512 INFO    ] No existing commands found in stream
[2026-10-28 15:22:25,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:22:25,530.530 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 15:22:28,913.913 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:22:28,916.916 INFO    ] Checking for system updates...
[2026-10-28 15:22:28,956.956 INFO    ] 200
[2026-10-28 15:22:28,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:22:29,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:22:29,021.021 INFO    ] No update needed
[2026-10-28 15:22:29,024.024 INFO    ] Checking for camera pi updates...
[2026-10-28 15:22:29,062.062 INFO    ] 200
[2026-10-28 15:22:29,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:22:29,116.116 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:22:29,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:22:29,204.204 INFO    ] No camera update needed
[2026-10-28 15:22:29,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:22:29,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:22:29,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:22:29,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:22:31,259.259 INFO    ] ================================================
[2026-10-28 15:22:31,275.275 INFO    ] Launching Daemon at Wed Oct 28 15:22:31 IST 2026
[2026-10-28 15:22:31,286.286 INFO    ] ================================================
[2026-10-28 15:22:31,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:22:31
[2026-10-28 15:22:32,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:22:32,821.821 INFO    ] Initializing speech engine...
[2026-10-28 15:22:32,828.828 INFO    ] 2026-10-28 15:22:32
[2026-10-28 15:22:33,119.119 INFO    ] 2026-10-28 15:22:33
[2026-10-28 15:22:33,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:22:33,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:22:33,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:22:33,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:22:33,872.872 INFO    ] time= 28/10/2026 15:22:33
[2026-10-28 15:22:33,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:22:33,955.955 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:22:34,092.092 INFO    ] No existing commands found in stream
[2026-10-28 15:22:39,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:22:39,115.115 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 15:22:41,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:22:41,311.311 INFO    ] Checking for system updates...
[2026-10-28 15:22:41,351.351 INFO    ] 200
[2026-10-28 15:22:41,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:22:41,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:22:41,411.411 INFO    ] No update needed
[2026-10-28 15:22:41,414.414 INFO    ] Checking for camera pi updates...
[2026-10-28 15:22:41,451.451 INFO    ] 200
[2026-10-28 15:22:41,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:22:41,500.500 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:22:41,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:22:41,600.600 INFO    ] No camera update needed
[2026-10-28 15:22:41,603.603 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:22:41,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:22:41,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:22:41,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:22:43,655.655 INFO    ] ================================================
[2026-10-28 15:22:43,671.671 INFO    ] Launching Daemon at Wed Oct 28 15:22:43 IST 2026
[2026-10-28 15:22:43,682.682 INFO    ] ================================================
[2026-10-28 15:22:44,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:22:44
[2026-10-28 15:22:44,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:22:45,101.101 INFO    ] Initializing speech engine...
[2026-10-28 15:22:45,118.118 INFO    ] 2026-10-28 15:22:45
[2026-10-28 15:22:45,376.376 INFO    ] 2026-10-28 15:22:45
[2026-10-28 15:22:45,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:22:45,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:22:45,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:22:45,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:22:45,944.944 INFO    ] time= 28/10/2026 15:22:45
[2026-10-28 15:22:45,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:22:45,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:22:46,109.109 INFO    ] No existing commands found in stream
[2026-10-28 15:22:51,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:22:51,130.130 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-28 15:22:55,201.201 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:22:55,203.203 INFO    ] Checking for system updates...
[2026-10-28 15:22:55,242.242 INFO    ] 200
[2026-10-28 15:22:55,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:22:55,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:22:55,301.301 INFO    ] No update needed
[2026-10-28 15:22:55,303.303 INFO    ] Checking for camera pi updates...
[2026-10-28 15:22:55,337.337 INFO    ] 200
[2026-10-28 15:22:55,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:22:55,380.380 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:22:55,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:22:55,466.466 INFO    ] No camera update needed
[2026-10-28 15:22:55,469.469 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:22:55,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:22:55,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:22:55,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:22:57,521.521 INFO    ] ================================================
[2026-10-28 15:22:57,537.537 INFO    ] Launching Daemon at Wed Oct 28 15:22:57 IST 2026
[2026-10-28 15:22:57,548.548 INFO    ] ================================================
[2026-10-28 15:22:58,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:22:58
[2026-10-28 15:22:58,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:22:59,138.138 INFO    ] Initializing speech engine...
[2026-10-28 15:22:59,150.150 INFO    ] 2026-10-28 15:22:59
[2026-10-28 15:22:59,429.429 INFO    ] 2026-10-28 15:22:59
[2026-10-28 15:22:59,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:22:59,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:22:59,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:22:59,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:22:59,918.918 INFO    ] time= 28/10/2026 15:22:59
[2026-10-28 15:22:59,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:22:59,960.960 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:23:00,116.116 INFO    ] No existing commands found in stream
[2026-10-28 15:23:05,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:23:05,144.144 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-28 15:23:06,506.506 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:23:06,509.509 INFO    ] Checking for system updates...
[2026-10-28 15:23:06,545.545 INFO    ] 200
[2026-10-28 15:23:06,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:23:06,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:23:06,611.611 INFO    ] No update needed
[2026-10-28 15:23:06,614.614 INFO    ] Checking for camera pi updates...
[2026-10-28 15:23:06,653.653 INFO    ] 200
[2026-10-28 15:23:06,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:23:06,703.703 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:23:06,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:23:06,788.788 INFO    ] No camera update needed
[2026-10-28 15:23:06,791.791 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:23:06,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:23:06,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:23:06,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:23:08,848.848 INFO    ] ================================================
[2026-10-28 15:23:08,864.864 INFO    ] Launching Daemon at Wed Oct 28 15:23:08 IST 2026
[2026-10-28 15:23:08,874.874 INFO    ] ================================================
[2026-10-28 15:23:09,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:23:09
[2026-10-28 15:23:10,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:23:10,475.475 INFO    ] Initializing speech engine...
[2026-10-28 15:23:10,488.488 INFO    ] 2026-10-28 15:23:10
[2026-10-28 15:23:10,755.755 INFO    ] 2026-10-28 15:23:10
[2026-10-28 15:23:10,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:23:11,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:23:11,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:23:11,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:23:11,476.476 INFO    ] time= 28/10/2026 15:23:11
[2026-10-28 15:23:11,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:23:11,560.560 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:23:11,741.741 INFO    ] No existing commands found in stream
[2026-10-28 15:23:16,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:23:16,756.756 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-28 15:23:18,133.133 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:23:18,136.136 INFO    ] Checking for system updates...
[2026-10-28 15:23:18,173.173 INFO    ] 200
[2026-10-28 15:23:18,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:23:18,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:23:18,232.232 INFO    ] No update needed
[2026-10-28 15:23:18,235.235 INFO    ] Checking for camera pi updates...
[2026-10-28 15:23:18,273.273 INFO    ] 200
[2026-10-28 15:23:18,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:23:18,319.319 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:23:18,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:23:18,409.409 INFO    ] No camera update needed
[2026-10-28 15:23:18,412.412 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:23:18,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:23:18,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:23:18,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:23:20,468.468 INFO    ] ================================================
[2026-10-28 15:23:20,483.483 INFO    ] Launching Daemon at Wed Oct 28 15:23:20 IST 2026
[2026-10-28 15:23:20,494.494 INFO    ] ================================================
[2026-10-28 15:23:21,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:23:21
[2026-10-28 15:23:21,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:23:22,092.092 INFO    ] Initializing speech engine...
[2026-10-28 15:23:22,104.104 INFO    ] 2026-10-28 15:23:22
[2026-10-28 15:23:22,414.414 INFO    ] 2026-10-28 15:23:22
[2026-10-28 15:23:22,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:23:22,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:23:22,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:23:23,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:23:23,074.074 INFO    ] time= 28/10/2026 15:23:23
[2026-10-28 15:23:23,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:23:23,180.180 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:23:23,333.333 INFO    ] No existing commands found in stream
[2026-10-28 15:23:28,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:23:28,373.373 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-28 15:23:29,866.866 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:23:29,869.869 INFO    ] Checking for system updates...
[2026-10-28 15:23:29,907.907 INFO    ] 200
[2026-10-28 15:23:29,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:23:29,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:23:29,967.967 INFO    ] No update needed
[2026-10-28 15:23:29,970.970 INFO    ] Checking for camera pi updates...
[2026-10-28 15:23:30,005.005 INFO    ] 200
[2026-10-28 15:23:30,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:23:30,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:23:30,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:23:30,109.109 INFO    ] No camera update needed
[2026-10-28 15:23:30,112.112 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:23:30,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:23:30,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:23:30,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:23:32,168.168 INFO    ] ================================================
[2026-10-28 15:23:32,188.188 INFO    ] Launching Daemon at Wed Oct 28 15:23:32 IST 2026
[2026-10-28 15:23:32,200.200 INFO    ] ================================================
[2026-10-28 15:23:32,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:23:32
[2026-10-28 15:23:33,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:23:33,838.838 INFO    ] Initializing speech engine...
[2026-10-28 15:23:33,851.851 INFO    ] 2026-10-28 15:23:33
[2026-10-28 15:23:34,129.129 INFO    ] 2026-10-28 15:23:34
[2026-10-28 15:23:34,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:23:34,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:23:34,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:23:34,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:23:34,870.870 INFO    ] time= 28/10/2026 15:23:34
[2026-10-28 15:23:34,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:23:34,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:23:35,102.102 INFO    ] No existing commands found in stream
[2026-10-28 15:23:40,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:23:40,121.121 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-28 15:23:42,082.082 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:23:42,085.085 INFO    ] Checking for system updates...
[2026-10-28 15:23:42,122.122 INFO    ] 200
[2026-10-28 15:23:42,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:23:42,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:23:42,181.181 INFO    ] No update needed
[2026-10-28 15:23:42,183.183 INFO    ] Checking for camera pi updates...
[2026-10-28 15:23:42,218.218 INFO    ] 200
[2026-10-28 15:23:42,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:23:42,261.261 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:23:42,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:23:42,352.352 INFO    ] No camera update needed
[2026-10-28 15:23:42,355.355 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:23:42,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:23:42,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:23:42,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:23:44,410.410 INFO    ] ================================================
[2026-10-28 15:23:44,425.425 INFO    ] Launching Daemon at Wed Oct 28 15:23:44 IST 2026
[2026-10-28 15:23:44,437.437 INFO    ] ================================================
[2026-10-28 15:23:45,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:23:45
[2026-10-28 15:23:45,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:23:45,865.865 INFO    ] Initializing speech engine...
[2026-10-28 15:23:45,881.881 INFO    ] 2026-10-28 15:23:45
[2026-10-28 15:23:46,160.160 INFO    ] 2026-10-28 15:23:46
[2026-10-28 15:23:46,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:23:46,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:23:46,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:23:46,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:23:46,700.700 INFO    ] time= 28/10/2026 15:23:46
[2026-10-28 15:23:46,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:23:46,794.794 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:23:46,921.921 INFO    ] No existing commands found in stream
[2026-10-28 15:23:51,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:23:51,946.946 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 15:23:54,042.042 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:23:54,045.045 INFO    ] Checking for system updates...
[2026-10-28 15:23:54,084.084 INFO    ] 200
[2026-10-28 15:23:54,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:23:54,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:23:54,141.141 INFO    ] No update needed
[2026-10-28 15:23:54,143.143 INFO    ] Checking for camera pi updates...
[2026-10-28 15:23:54,178.178 INFO    ] 200
[2026-10-28 15:23:54,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:23:54,221.221 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:23:54,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:23:54,325.325 INFO    ] No camera update needed
[2026-10-28 15:23:54,327.327 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:23:54,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:23:54,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:23:54,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:23:56,383.383 INFO    ] ================================================
[2026-10-28 15:23:56,398.398 INFO    ] Launching Daemon at Wed Oct 28 15:23:56 IST 2026
[2026-10-28 15:23:56,408.408 INFO    ] ================================================
[2026-10-28 15:23:56,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:23:56
[2026-10-28 15:23:57,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:23:57,831.831 INFO    ] Initializing speech engine...
[2026-10-28 15:23:57,856.856 INFO    ] 2026-10-28 15:23:57
[2026-10-28 15:23:58,130.130 INFO    ] 2026-10-28 15:23:58
[2026-10-28 15:23:58,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:23:58,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:23:58,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:23:58,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:23:58,657.657 INFO    ] time= 28/10/2026 15:23:58
[2026-10-28 15:23:58,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:23:58,740.740 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:23:58,826.826 INFO    ] No existing commands found in stream
[2026-10-28 15:24:03,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:24:03,840.840 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-28 15:24:05,267.267 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:24:05,270.270 INFO    ] Checking for system updates...
[2026-10-28 15:24:05,307.307 INFO    ] 200
[2026-10-28 15:24:05,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:24:05,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:24:05,367.367 INFO    ] No update needed
[2026-10-28 15:24:05,369.369 INFO    ] Checking for camera pi updates...
[2026-10-28 15:24:05,405.405 INFO    ] 200
[2026-10-28 15:24:05,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:24:05,449.449 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:24:05,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:24:05,531.531 INFO    ] No camera update needed
[2026-10-28 15:24:05,534.534 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:24:05,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:24:05,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:24:05,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:24:07,591.591 INFO    ] ================================================
[2026-10-28 15:24:07,606.606 INFO    ] Launching Daemon at Wed Oct 28 15:24:07 IST 2026
[2026-10-28 15:24:07,617.617 INFO    ] ================================================
[2026-10-28 15:24:08,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:24:08
[2026-10-28 15:24:08,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:24:09,182.182 INFO    ] Initializing speech engine...
[2026-10-28 15:24:09,190.190 INFO    ] 2026-10-28 15:24:09
[2026-10-28 15:24:09,492.492 INFO    ] 2026-10-28 15:24:09
[2026-10-28 15:24:09,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:24:09,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:24:09,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:24:10,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:24:10,215.215 INFO    ] time= 28/10/2026 15:24:10
[2026-10-28 15:24:10,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:24:10,297.297 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:24:10,434.434 INFO    ] No existing commands found in stream
[2026-10-28 15:24:15,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:24:15,456.456 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-28 15:24:19,281.281 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:24:19,284.284 INFO    ] Checking for system updates...
[2026-10-28 15:24:19,321.321 INFO    ] 200
[2026-10-28 15:24:19,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:24:19,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:24:19,379.379 INFO    ] No update needed
[2026-10-28 15:24:19,382.382 INFO    ] Checking for camera pi updates...
[2026-10-28 15:24:19,416.416 INFO    ] 200
[2026-10-28 15:24:19,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:24:19,460.460 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:24:19,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:24:19,547.547 INFO    ] No camera update needed
[2026-10-28 15:24:19,549.549 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:24:19,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:24:19,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:24:19,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:24:21,606.606 INFO    ] ================================================
[2026-10-28 15:24:21,621.621 INFO    ] Launching Daemon at Wed Oct 28 15:24:21 IST 2026
[2026-10-28 15:24:21,633.633 INFO    ] ================================================
[2026-10-28 15:24:22,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:24:22
[2026-10-28 15:24:22,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:24:23,064.064 INFO    ] Initializing speech engine...
[2026-10-28 15:24:23,074.074 INFO    ] 2026-10-28 15:24:23
[2026-10-28 15:24:23,327.327 INFO    ] 2026-10-28 15:24:23
[2026-10-28 15:24:23,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:24:23,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:24:23,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:24:23,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:24:23,905.905 INFO    ] time= 28/10/2026 15:24:23
[2026-10-28 15:24:23,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:24:23,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:24:24,056.056 INFO    ] No existing commands found in stream
[2026-10-28 15:24:29,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:24:29,088.088 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-28 15:24:32,664.664 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:24:32,667.667 INFO    ] Checking for system updates...
[2026-10-28 15:24:32,706.706 INFO    ] 200
[2026-10-28 15:24:32,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:24:32,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:24:32,772.772 INFO    ] No update needed
[2026-10-28 15:24:32,775.775 INFO    ] Checking for camera pi updates...
[2026-10-28 15:24:32,817.817 INFO    ] 200
[2026-10-28 15:24:32,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:24:32,872.872 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:24:32,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:24:32,997.997 INFO    ] No camera update needed
[2026-10-28 15:24:32,999.999 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:24:33,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:24:33,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:24:33,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:24:35,053.053 INFO    ] ================================================
[2026-10-28 15:24:35,068.068 INFO    ] Launching Daemon at Wed Oct 28 15:24:35 IST 2026
[2026-10-28 15:24:35,079.079 INFO    ] ================================================
[2026-10-28 15:24:35,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:24:35
[2026-10-28 15:24:36,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:24:36,529.529 INFO    ] Initializing speech engine...
[2026-10-28 15:24:36,536.536 INFO    ] 2026-10-28 15:24:36
[2026-10-28 15:24:36,794.794 INFO    ] 2026-10-28 15:24:36
[2026-10-28 15:24:36,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:24:37,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:24:37,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:24:37,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:24:37,333.333 INFO    ] time= 28/10/2026 15:24:37
[2026-10-28 15:24:37,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:24:37,357.357 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:24:37,484.484 INFO    ] No existing commands found in stream
[2026-10-28 15:24:42,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:24:42,500.500 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-28 15:24:45,562.562 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:24:45,565.565 INFO    ] Checking for system updates...
[2026-10-28 15:24:45,601.601 INFO    ] 200
[2026-10-28 15:24:45,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:24:45,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:24:45,659.659 INFO    ] No update needed
[2026-10-28 15:24:45,661.661 INFO    ] Checking for camera pi updates...
[2026-10-28 15:24:45,696.696 INFO    ] 200
[2026-10-28 15:24:45,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:24:45,738.738 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:24:45,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:24:45,825.825 INFO    ] No camera update needed
[2026-10-28 15:24:45,828.828 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:24:45,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:24:45,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:24:45,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:24:47,881.881 INFO    ] ================================================
[2026-10-28 15:24:47,896.896 INFO    ] Launching Daemon at Wed Oct 28 15:24:47 IST 2026
[2026-10-28 15:24:47,907.907 INFO    ] ================================================
[2026-10-28 15:24:48,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:24:48
[2026-10-28 15:24:49,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:24:49,349.349 INFO    ] Initializing speech engine...
[2026-10-28 15:24:49,358.358 INFO    ] 2026-10-28 15:24:49
[2026-10-28 15:24:49,646.646 INFO    ] 2026-10-28 15:24:49
[2026-10-28 15:24:49,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:24:49,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:24:49,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:24:50,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:24:50,267.267 INFO    ] time= 28/10/2026 15:24:50
[2026-10-28 15:24:50,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:24:50,292.292 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:24:50,440.440 INFO    ] No existing commands found in stream
[2026-10-28 15:24:55,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:24:55,456.456 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-28 15:24:59,266.266 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:24:59,268.268 INFO    ] Checking for system updates...
[2026-10-28 15:24:59,303.303 INFO    ] 200
[2026-10-28 15:24:59,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:24:59,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:24:59,367.367 INFO    ] No update needed
[2026-10-28 15:24:59,369.369 INFO    ] Checking for camera pi updates...
[2026-10-28 15:24:59,403.403 INFO    ] 200
[2026-10-28 15:24:59,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:24:59,448.448 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:24:59,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:24:59,540.540 INFO    ] No camera update needed
[2026-10-28 15:24:59,543.543 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:24:59,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:24:59,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:24:59,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:25:01,612.612 INFO    ] ================================================
[2026-10-28 15:25:01,651.651 INFO    ] Launching Daemon at Wed Oct 28 15:25:01 IST 2026
[2026-10-28 15:25:01,710.710 INFO    ] ================================================
[2026-10-28 15:25:02,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:25:02
[2026-10-28 15:25:03,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:25:03,579.579 INFO    ] Initializing speech engine...
[2026-10-28 15:25:03,598.598 INFO    ] 2026-10-28 15:25:03
[2026-10-28 15:25:03,912.912 INFO    ] 2026-10-28 15:25:03
[2026-10-28 15:25:03,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:25:04,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:25:04,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:25:04,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:25:04,482.482 INFO    ] time= 28/10/2026 15:25:04
[2026-10-28 15:25:04,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:25:04,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:25:04,648.648 INFO    ] No existing commands found in stream
[2026-10-28 15:25:09,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:25:09,667.667 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-28 15:25:13,588.588 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:25:13,590.590 INFO    ] Checking for system updates...
[2026-10-28 15:25:13,627.627 INFO    ] 200
[2026-10-28 15:25:13,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:25:13,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:25:13,686.686 INFO    ] No update needed
[2026-10-28 15:25:13,689.689 INFO    ] Checking for camera pi updates...
[2026-10-28 15:25:13,722.722 INFO    ] 200
[2026-10-28 15:25:13,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:25:13,766.766 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:25:13,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:25:13,950.950 INFO    ] No camera update needed
[2026-10-28 15:25:13,953.953 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:25:13,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:25:13,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:25:13,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:25:16,007.007 INFO    ] ================================================
[2026-10-28 15:25:16,022.022 INFO    ] Launching Daemon at Wed Oct 28 15:25:16 IST 2026
[2026-10-28 15:25:16,034.034 INFO    ] ================================================
[2026-10-28 15:25:16,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:25:16
[2026-10-28 15:25:17,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:25:17,502.502 INFO    ] Initializing speech engine...
[2026-10-28 15:25:17,509.509 INFO    ] 2026-10-28 15:25:17
[2026-10-28 15:25:17,769.769 INFO    ] 2026-10-28 15:25:17
[2026-10-28 15:25:17,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:25:18,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:25:18,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:25:18,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:25:18,471.471 INFO    ] time= 28/10/2026 15:25:18
[2026-10-28 15:25:18,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:25:18,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:25:18,710.710 INFO    ] No existing commands found in stream
[2026-10-28 15:25:23,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:25:23,726.726 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 15:25:27,732.732 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:25:27,734.734 INFO    ] Checking for system updates...
[2026-10-28 15:25:27,769.769 INFO    ] 200
[2026-10-28 15:25:27,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:25:27,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:25:27,832.832 INFO    ] No update needed
[2026-10-28 15:25:27,835.835 INFO    ] Checking for camera pi updates...
[2026-10-28 15:25:27,868.868 INFO    ] 200
[2026-10-28 15:25:27,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:25:27,911.911 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:25:27,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:25:27,985.985 INFO    ] No camera update needed
[2026-10-28 15:25:27,987.987 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:25:27,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:25:27,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:25:28,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:25:30,041.041 INFO    ] ================================================
[2026-10-28 15:25:30,056.056 INFO    ] Launching Daemon at Wed Oct 28 15:25:30 IST 2026
[2026-10-28 15:25:30,067.067 INFO    ] ================================================
[2026-10-28 15:25:30,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:25:30
[2026-10-28 15:25:31,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:25:31,615.615 INFO    ] Initializing speech engine...
[2026-10-28 15:25:31,622.622 INFO    ] 2026-10-28 15:25:31
[2026-10-28 15:25:31,896.896 INFO    ] 2026-10-28 15:25:31
[2026-10-28 15:25:31,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:25:32,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:25:32,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:25:32,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:25:32,475.475 INFO    ] time= 28/10/2026 15:25:32
[2026-10-28 15:25:32,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:25:32,501.501 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:25:32,673.673 INFO    ] No existing commands found in stream
[2026-10-28 15:25:37,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:25:37,707.707 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-28 15:25:39,634.634 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:25:39,637.637 INFO    ] Checking for system updates...
[2026-10-28 15:25:39,675.675 INFO    ] 200
[2026-10-28 15:25:39,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:25:39,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:25:39,742.742 INFO    ] No update needed
[2026-10-28 15:25:39,745.745 INFO    ] Checking for camera pi updates...
[2026-10-28 15:25:39,781.781 INFO    ] 200
[2026-10-28 15:25:39,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:25:39,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:25:39,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:25:39,916.916 INFO    ] No camera update needed
[2026-10-28 15:25:39,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:25:39,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:25:39,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:25:39,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:25:41,972.972 INFO    ] ================================================
[2026-10-28 15:25:41,988.988 INFO    ] Launching Daemon at Wed Oct 28 15:25:41 IST 2026
[2026-10-28 15:25:42,999.999 INFO    ] ================================================
[2026-10-28 15:25:42,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:25:42
[2026-10-28 15:25:43,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:25:43,542.542 INFO    ] Initializing speech engine...
[2026-10-28 15:25:43,551.551 INFO    ] 2026-10-28 15:25:43
[2026-10-28 15:25:43,825.825 INFO    ] 2026-10-28 15:25:43
[2026-10-28 15:25:43,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:25:44,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:25:44,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:25:44,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:25:44,536.536 INFO    ] time= 28/10/2026 15:25:44
[2026-10-28 15:25:44,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:25:44,618.618 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:25:44,780.780 INFO    ] No existing commands found in stream
[2026-10-28 15:25:49,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:25:49,816.816 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-28 15:25:52,356.356 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:25:52,358.358 INFO    ] Checking for system updates...
[2026-10-28 15:25:52,395.395 INFO    ] 200
[2026-10-28 15:25:52,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:25:52,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:25:52,453.453 INFO    ] No update needed
[2026-10-28 15:25:52,456.456 INFO    ] Checking for camera pi updates...
[2026-10-28 15:25:52,489.489 INFO    ] 200
[2026-10-28 15:25:52,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:25:52,533.533 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:25:52,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:25:52,621.621 INFO    ] No camera update needed
[2026-10-28 15:25:52,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:25:52,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:25:52,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:25:52,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:25:54,679.679 INFO    ] ================================================
[2026-10-28 15:25:54,694.694 INFO    ] Launching Daemon at Wed Oct 28 15:25:54 IST 2026
[2026-10-28 15:25:54,705.705 INFO    ] ================================================
[2026-10-28 15:25:55,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:25:55
[2026-10-28 15:25:55,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:25:56,146.146 INFO    ] Initializing speech engine...
[2026-10-28 15:25:56,156.156 INFO    ] 2026-10-28 15:25:56
[2026-10-28 15:25:56,414.414 INFO    ] 2026-10-28 15:25:56
[2026-10-28 15:25:56,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:25:56,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:25:56,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:25:56,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:25:57,019.019 INFO    ] time= 28/10/2026 15:25:56
[2026-10-28 15:25:57,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:25:57,042.042 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:25:57,169.169 INFO    ] No existing commands found in stream
[2026-10-28 15:26:02,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:26:02,198.198 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-28 15:26:04,826.826 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:26:04,829.829 INFO    ] Checking for system updates...
[2026-10-28 15:26:04,867.867 INFO    ] 200
[2026-10-28 15:26:04,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:26:04,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:26:04,925.925 INFO    ] No update needed
[2026-10-28 15:26:04,927.927 INFO    ] Checking for camera pi updates...
[2026-10-28 15:26:04,960.960 INFO    ] 200
[2026-10-28 15:26:04,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:26:05,004.004 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:26:05,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:26:05,092.092 INFO    ] No camera update needed
[2026-10-28 15:26:05,094.094 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:26:05,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:26:05,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:26:05,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:26:07,148.148 INFO    ] ================================================
[2026-10-28 15:26:07,164.164 INFO    ] Launching Daemon at Wed Oct 28 15:26:07 IST 2026
[2026-10-28 15:26:07,174.174 INFO    ] ================================================
[2026-10-28 15:26:07,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:26:07
[2026-10-28 15:26:08,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:26:08,722.722 INFO    ] Initializing speech engine...
[2026-10-28 15:26:08,733.733 INFO    ] 2026-10-28 15:26:08
[2026-10-28 15:26:09,015.015 INFO    ] 2026-10-28 15:26:09
[2026-10-28 15:26:09,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:26:09,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:26:09,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:26:09,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:26:09,589.589 INFO    ] time= 28/10/2026 15:26:09
[2026-10-28 15:26:09,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:26:09,605.605 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:26:09,757.757 INFO    ] No existing commands found in stream
[2026-10-28 15:26:14,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:26:14,791.791 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-28 15:26:16,589.589 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:26:16,592.592 INFO    ] Checking for system updates...
[2026-10-28 15:26:16,628.628 INFO    ] 200
[2026-10-28 15:26:16,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:26:16,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:26:16,686.686 INFO    ] No update needed
[2026-10-28 15:26:16,688.688 INFO    ] Checking for camera pi updates...
[2026-10-28 15:26:16,729.729 INFO    ] 200
[2026-10-28 15:26:16,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:26:16,772.772 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:26:16,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:26:16,860.860 INFO    ] No camera update needed
[2026-10-28 15:26:16,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:26:16,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:26:16,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:26:16,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:26:18,915.915 INFO    ] ================================================
[2026-10-28 15:26:18,930.930 INFO    ] Launching Daemon at Wed Oct 28 15:26:18 IST 2026
[2026-10-28 15:26:18,941.941 INFO    ] ================================================
[2026-10-28 15:26:19,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:26:19
[2026-10-28 15:26:20,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:26:20,347.347 INFO    ] Initializing speech engine...
[2026-10-28 15:26:20,371.371 INFO    ] 2026-10-28 15:26:20
[2026-10-28 15:26:20,636.636 INFO    ] 2026-10-28 15:26:20
[2026-10-28 15:26:20,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:26:20,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:26:20,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:26:21,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:26:21,243.243 INFO    ] time= 28/10/2026 15:26:21
[2026-10-28 15:26:21,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:26:21,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:26:21,407.407 INFO    ] No existing commands found in stream
[2026-10-28 15:26:26,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:26:26,423.423 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-28 15:26:28,167.167 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:26:28,170.170 INFO    ] Checking for system updates...
[2026-10-28 15:26:28,206.206 INFO    ] 200
[2026-10-28 15:26:28,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:26:28,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:26:28,262.262 INFO    ] No update needed
[2026-10-28 15:26:28,265.265 INFO    ] Checking for camera pi updates...
[2026-10-28 15:26:28,298.298 INFO    ] 200
[2026-10-28 15:26:28,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:26:28,340.340 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:26:28,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:26:28,427.427 INFO    ] No camera update needed
[2026-10-28 15:26:28,430.430 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:26:28,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:26:28,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:26:28,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:26:30,482.482 INFO    ] ================================================
[2026-10-28 15:26:30,497.497 INFO    ] Launching Daemon at Wed Oct 28 15:26:30 IST 2026
[2026-10-28 15:26:30,508.508 INFO    ] ================================================
[2026-10-28 15:26:31,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:26:31
[2026-10-28 15:26:31,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:26:31,912.912 INFO    ] Initializing speech engine...
[2026-10-28 15:26:31,925.925 INFO    ] 2026-10-28 15:26:31
[2026-10-28 15:26:32,208.208 INFO    ] 2026-10-28 15:26:32
[2026-10-28 15:26:32,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:26:32,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:26:32,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:26:32,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:26:32,766.766 INFO    ] time= 28/10/2026 15:26:32
[2026-10-28 15:26:32,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:26:32,865.865 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:26:33,025.025 INFO    ] No existing commands found in stream
[2026-10-28 15:26:38,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:26:38,049.049 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 15:26:41,545.545 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:26:41,548.548 INFO    ] Checking for system updates...
[2026-10-28 15:26:41,583.583 INFO    ] 200
[2026-10-28 15:26:41,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:26:41,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:26:41,644.644 INFO    ] No update needed
[2026-10-28 15:26:41,647.647 INFO    ] Checking for camera pi updates...
[2026-10-28 15:26:41,680.680 INFO    ] 200
[2026-10-28 15:26:41,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:26:41,723.723 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:26:41,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:26:41,819.819 INFO    ] No camera update needed
[2026-10-28 15:26:41,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:26:41,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:26:41,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:26:41,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:26:43,873.873 INFO    ] ================================================
[2026-10-28 15:26:43,888.888 INFO    ] Launching Daemon at Wed Oct 28 15:26:43 IST 2026
[2026-10-28 15:26:43,899.899 INFO    ] ================================================
[2026-10-28 15:26:44,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:26:44
[2026-10-28 15:26:45,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:26:45,349.349 INFO    ] Initializing speech engine...
[2026-10-28 15:26:45,358.358 INFO    ] 2026-10-28 15:26:45
[2026-10-28 15:26:45,618.618 INFO    ] 2026-10-28 15:26:45
[2026-10-28 15:26:45,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:26:45,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:26:45,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:26:46,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:26:46,225.225 INFO    ] time= 28/10/2026 15:26:46
[2026-10-28 15:26:46,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:26:46,250.250 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:26:46,385.385 INFO    ] No existing commands found in stream
[2026-10-28 15:26:51,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:26:51,407.407 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-28 15:26:53,653.653 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:26:53,655.655 INFO    ] Checking for system updates...
[2026-10-28 15:26:53,693.693 INFO    ] 200
[2026-10-28 15:26:53,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:26:53,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:26:53,751.751 INFO    ] No update needed
[2026-10-28 15:26:53,753.753 INFO    ] Checking for camera pi updates...
[2026-10-28 15:26:53,787.787 INFO    ] 200
[2026-10-28 15:26:53,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:26:53,836.836 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:26:53,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:26:53,922.922 INFO    ] No camera update needed
[2026-10-28 15:26:53,925.925 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:26:53,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:26:53,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:26:53,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:26:55,976.976 INFO    ] ================================================
[2026-10-28 15:26:55,991.991 INFO    ] Launching Daemon at Wed Oct 28 15:26:55 IST 2026
[2026-10-28 15:26:56,002.002 INFO    ] ================================================
[2026-10-28 15:26:56,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:26:56
[2026-10-28 15:26:57,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:26:57,420.420 INFO    ] Initializing speech engine...
[2026-10-28 15:26:57,429.429 INFO    ] 2026-10-28 15:26:57
[2026-10-28 15:26:57,674.674 INFO    ] 2026-10-28 15:26:57
[2026-10-28 15:26:57,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:26:57,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:26:57,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:26:58,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:26:58,220.220 INFO    ] time= 28/10/2026 15:26:58
[2026-10-28 15:26:58,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:26:58,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:26:58,380.380 INFO    ] No existing commands found in stream
[2026-10-28 15:27:03,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:27:03,395.395 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-28 15:27:04,389.389 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:27:04,392.392 INFO    ] Checking for system updates...
[2026-10-28 15:27:04,428.428 INFO    ] 200
[2026-10-28 15:27:04,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:27:04,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:27:04,486.486 INFO    ] No update needed
[2026-10-28 15:27:04,488.488 INFO    ] Checking for camera pi updates...
[2026-10-28 15:27:04,525.525 INFO    ] 200
[2026-10-28 15:27:04,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:27:04,568.568 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:27:04,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:27:04,656.656 INFO    ] No camera update needed
[2026-10-28 15:27:04,658.658 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:27:04,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:27:04,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:27:04,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:27:06,710.710 INFO    ] ================================================
[2026-10-28 15:27:06,726.726 INFO    ] Launching Daemon at Wed Oct 28 15:27:06 IST 2026
[2026-10-28 15:27:06,736.736 INFO    ] ================================================
[2026-10-28 15:27:07,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:27:07
[2026-10-28 15:27:07,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:27:08,281.281 INFO    ] Initializing speech engine...
[2026-10-28 15:27:08,287.287 INFO    ] 2026-10-28 15:27:08
[2026-10-28 15:27:08,556.556 INFO    ] 2026-10-28 15:27:08
[2026-10-28 15:27:08,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:27:08,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:27:08,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:27:09,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:27:09,136.136 INFO    ] time= 28/10/2026 15:27:09
[2026-10-28 15:27:09,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:27:09,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:27:09,339.339 INFO    ] No existing commands found in stream
[2026-10-28 15:27:14,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:27:14,373.373 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-28 15:27:15,349.349 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:27:15,352.352 INFO    ] Checking for system updates...
[2026-10-28 15:27:15,391.391 INFO    ] 200
[2026-10-28 15:27:15,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:27:15,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:27:15,451.451 INFO    ] No update needed
[2026-10-28 15:27:15,454.454 INFO    ] Checking for camera pi updates...
[2026-10-28 15:27:15,490.490 INFO    ] 200
[2026-10-28 15:27:15,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:27:15,535.535 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:27:15,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:27:15,736.736 INFO    ] No camera update needed
[2026-10-28 15:27:15,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:27:15,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:27:15,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:27:15,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:27:17,795.795 INFO    ] ================================================
[2026-10-28 15:27:17,810.810 INFO    ] Launching Daemon at Wed Oct 28 15:27:17 IST 2026
[2026-10-28 15:27:17,821.821 INFO    ] ================================================
[2026-10-28 15:27:18,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:27:18
[2026-10-28 15:27:18,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:27:19,239.239 INFO    ] Initializing speech engine...
[2026-10-28 15:27:19,246.246 INFO    ] 2026-10-28 15:27:19
[2026-10-28 15:27:19,492.492 INFO    ] 2026-10-28 15:27:19
[2026-10-28 15:27:19,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:27:19,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:27:19,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:27:20,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:27:20,042.042 INFO    ] time= 28/10/2026 15:27:20
[2026-10-28 15:27:20,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:27:20,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:27:20,192.192 INFO    ] No existing commands found in stream
[2026-10-28 15:27:25,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:27:25,210.210 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-28 15:27:28,770.770 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:27:28,773.773 INFO    ] Checking for system updates...
[2026-10-28 15:27:28,809.809 INFO    ] 200
[2026-10-28 15:27:28,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:27:28,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:27:28,868.868 INFO    ] No update needed
[2026-10-28 15:27:28,870.870 INFO    ] Checking for camera pi updates...
[2026-10-28 15:27:28,906.906 INFO    ] 200
[2026-10-28 15:27:28,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:27:28,950.950 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:27:29,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:27:29,035.035 INFO    ] No camera update needed
[2026-10-28 15:27:29,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:27:29,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:27:29,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:27:29,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:27:31,094.094 INFO    ] ================================================
[2026-10-28 15:27:31,109.109 INFO    ] Launching Daemon at Wed Oct 28 15:27:31 IST 2026
[2026-10-28 15:27:31,120.120 INFO    ] ================================================
[2026-10-28 15:27:31,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:27:31
[2026-10-28 15:27:32,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:27:32,613.613 INFO    ] Initializing speech engine...
[2026-10-28 15:27:32,620.620 INFO    ] 2026-10-28 15:27:32
[2026-10-28 15:27:32,936.936 INFO    ] 2026-10-28 15:27:32
[2026-10-28 15:27:32,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:27:33,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:27:33,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:27:33,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:27:33,498.498 INFO    ] time= 28/10/2026 15:27:33
[2026-10-28 15:27:33,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:27:33,587.587 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:27:33,724.724 INFO    ] No existing commands found in stream
[2026-10-28 15:27:38,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:27:38,750.750 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 15:27:43,390.390 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:27:43,393.393 INFO    ] Checking for system updates...
[2026-10-28 15:27:43,429.429 INFO    ] 200
[2026-10-28 15:27:43,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:27:43,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:27:43,488.488 INFO    ] No update needed
[2026-10-28 15:27:43,490.490 INFO    ] Checking for camera pi updates...
[2026-10-28 15:27:43,525.525 INFO    ] 200
[2026-10-28 15:27:43,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:27:43,567.567 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:27:43,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:27:43,662.662 INFO    ] No camera update needed
[2026-10-28 15:27:43,664.664 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:27:43,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:27:43,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:27:43,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:27:45,717.717 INFO    ] ================================================
[2026-10-28 15:27:45,737.737 INFO    ] Launching Daemon at Wed Oct 28 15:27:45 IST 2026
[2026-10-28 15:27:45,748.748 INFO    ] ================================================
[2026-10-28 15:27:46,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:27:46
[2026-10-28 15:27:46,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:27:47,166.166 INFO    ] Initializing speech engine...
[2026-10-28 15:27:47,176.176 INFO    ] 2026-10-28 15:27:47
[2026-10-28 15:27:47,422.422 INFO    ] 2026-10-28 15:27:47
[2026-10-28 15:27:47,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:27:47,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:27:47,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:27:47,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:27:47,987.987 INFO    ] time= 28/10/2026 15:27:47
[2026-10-28 15:27:47,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:27:48,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:27:48,138.138 INFO    ] No existing commands found in stream
[2026-10-28 15:27:53,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:27:53,165.165 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 15:27:54,068.068 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:27:54,071.071 INFO    ] Checking for system updates...
[2026-10-28 15:27:54,108.108 INFO    ] 200
[2026-10-28 15:27:54,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:27:54,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:27:54,182.182 INFO    ] No update needed
[2026-10-28 15:27:54,185.185 INFO    ] Checking for camera pi updates...
[2026-10-28 15:27:54,219.219 INFO    ] 200
[2026-10-28 15:27:54,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:27:54,266.266 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:27:54,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:27:54,354.354 INFO    ] No camera update needed
[2026-10-28 15:27:54,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:27:54,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:27:54,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:27:54,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:27:56,409.409 INFO    ] ================================================
[2026-10-28 15:27:56,424.424 INFO    ] Launching Daemon at Wed Oct 28 15:27:56 IST 2026
[2026-10-28 15:27:56,435.435 INFO    ] ================================================
[2026-10-28 15:27:57,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:27:57
[2026-10-28 15:27:57,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:27:58,059.059 INFO    ] Initializing speech engine...
[2026-10-28 15:27:58,067.067 INFO    ] 2026-10-28 15:27:58
[2026-10-28 15:27:58,343.343 INFO    ] 2026-10-28 15:27:58
[2026-10-28 15:27:58,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:27:58,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:27:58,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:27:58,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:27:58,907.907 INFO    ] time= 28/10/2026 15:27:58
[2026-10-28 15:27:58,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:27:58,946.946 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:27:59,087.087 INFO    ] No existing commands found in stream
[2026-10-28 15:28:04,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:28:04,117.117 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-28 15:28:05,666.666 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:28:05,669.669 INFO    ] Checking for system updates...
[2026-10-28 15:28:05,706.706 INFO    ] 200
[2026-10-28 15:28:05,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:28:05,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:28:05,764.764 INFO    ] No update needed
[2026-10-28 15:28:05,767.767 INFO    ] Checking for camera pi updates...
[2026-10-28 15:28:05,801.801 INFO    ] 200
[2026-10-28 15:28:05,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:28:05,845.845 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:28:05,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:28:05,933.933 INFO    ] No camera update needed
[2026-10-28 15:28:05,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:28:05,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:28:05,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:28:05,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:28:07,992.992 INFO    ] ================================================
[2026-10-28 15:28:08,007.007 INFO    ] Launching Daemon at Wed Oct 28 15:28:08 IST 2026
[2026-10-28 15:28:08,018.018 INFO    ] ================================================
[2026-10-28 15:28:08,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:28:08
[2026-10-28 15:28:09,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:28:09,466.466 INFO    ] Initializing speech engine...
[2026-10-28 15:28:09,479.479 INFO    ] 2026-10-28 15:28:09
[2026-10-28 15:28:09,747.747 INFO    ] 2026-10-28 15:28:09
[2026-10-28 15:28:09,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:28:10,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:28:10,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:28:10,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:28:10,309.309 INFO    ] time= 28/10/2026 15:28:10
[2026-10-28 15:28:10,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:28:10,345.345 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:28:10,459.459 INFO    ] No existing commands found in stream
[2026-10-28 15:28:15,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:28:15,492.492 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-28 15:28:19,556.556 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:28:19,559.559 INFO    ] Checking for system updates...
[2026-10-28 15:28:19,595.595 INFO    ] 200
[2026-10-28 15:28:19,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:28:19,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:28:19,653.653 INFO    ] No update needed
[2026-10-28 15:28:19,656.656 INFO    ] Checking for camera pi updates...
[2026-10-28 15:28:19,690.690 INFO    ] 200
[2026-10-28 15:28:19,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:28:19,735.735 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:28:19,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:28:19,823.823 INFO    ] No camera update needed
[2026-10-28 15:28:19,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:28:19,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:28:19,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:28:19,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:28:21,880.880 INFO    ] ================================================
[2026-10-28 15:28:21,896.896 INFO    ] Launching Daemon at Wed Oct 28 15:28:21 IST 2026
[2026-10-28 15:28:21,907.907 INFO    ] ================================================
[2026-10-28 15:28:22,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:28:22
[2026-10-28 15:28:23,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:28:23,329.329 INFO    ] Initializing speech engine...
[2026-10-28 15:28:23,338.338 INFO    ] 2026-10-28 15:28:23
[2026-10-28 15:28:23,584.584 INFO    ] 2026-10-28 15:28:23
[2026-10-28 15:28:23,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:28:23,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:28:23,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:28:24,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:28:24,137.137 INFO    ] time= 28/10/2026 15:28:24
[2026-10-28 15:28:24,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:28:24,161.161 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:28:24,318.318 INFO    ] No existing commands found in stream
[2026-10-28 15:28:29,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:28:29,346.346 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 15:28:33,908.908 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:28:33,911.911 INFO    ] Checking for system updates...
[2026-10-28 15:28:33,946.946 INFO    ] 200
[2026-10-28 15:28:33,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:28:34,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:28:34,005.005 INFO    ] No update needed
[2026-10-28 15:28:34,007.007 INFO    ] Checking for camera pi updates...
[2026-10-28 15:28:34,044.044 INFO    ] 200
[2026-10-28 15:28:34,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:28:34,087.087 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:28:34,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:28:34,188.188 INFO    ] No camera update needed
[2026-10-28 15:28:34,191.191 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:28:34,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:28:34,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:28:34,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:28:36,247.247 INFO    ] ================================================
[2026-10-28 15:28:36,263.263 INFO    ] Launching Daemon at Wed Oct 28 15:28:36 IST 2026
[2026-10-28 15:28:36,274.274 INFO    ] ================================================
[2026-10-28 15:28:36,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:28:36
[2026-10-28 15:28:37,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:28:37,691.691 INFO    ] Initializing speech engine...
[2026-10-28 15:28:37,709.709 INFO    ] 2026-10-28 15:28:37
[2026-10-28 15:28:37,956.956 INFO    ] 2026-10-28 15:28:37
[2026-10-28 15:28:37,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:28:38,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:28:38,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:28:38,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:28:38,507.507 INFO    ] time= 28/10/2026 15:28:38
[2026-10-28 15:28:38,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:28:38,533.533 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:28:38,663.663 INFO    ] No existing commands found in stream
[2026-10-28 15:28:43,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:28:43,688.688 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 15:28:46,493.493 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:28:46,496.496 INFO    ] Checking for system updates...
[2026-10-28 15:28:46,531.531 INFO    ] 200
[2026-10-28 15:28:46,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:28:46,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:28:46,588.588 INFO    ] No update needed
[2026-10-28 15:28:46,591.591 INFO    ] Checking for camera pi updates...
[2026-10-28 15:28:46,624.624 INFO    ] 200
[2026-10-28 15:28:46,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:28:46,666.666 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:28:46,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:28:46,769.769 INFO    ] No camera update needed
[2026-10-28 15:28:46,771.771 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:28:46,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:28:46,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:28:46,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:28:48,824.824 INFO    ] ================================================
[2026-10-28 15:28:48,839.839 INFO    ] Launching Daemon at Wed Oct 28 15:28:48 IST 2026
[2026-10-28 15:28:48,850.850 INFO    ] ================================================
[2026-10-28 15:28:49,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:28:49
[2026-10-28 15:28:50,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:28:50,456.456 INFO    ] Initializing speech engine...
[2026-10-28 15:28:50,468.468 INFO    ] 2026-10-28 15:28:50
[2026-10-28 15:28:50,747.747 INFO    ] 2026-10-28 15:28:50
[2026-10-28 15:28:50,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:28:51,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:28:51,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:28:51,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:28:51,300.300 INFO    ] time= 28/10/2026 15:28:51
[2026-10-28 15:28:51,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:28:51,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:28:51,485.485 INFO    ] No existing commands found in stream
[2026-10-28 15:28:56,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:28:56,515.515 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-28 15:28:59,350.350 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:28:59,353.353 INFO    ] Checking for system updates...
[2026-10-28 15:28:59,389.389 INFO    ] 200
[2026-10-28 15:28:59,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:28:59,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:28:59,458.458 INFO    ] No update needed
[2026-10-28 15:28:59,461.461 INFO    ] Checking for camera pi updates...
[2026-10-28 15:28:59,495.495 INFO    ] 200
[2026-10-28 15:28:59,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:28:59,540.540 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:28:59,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:28:59,626.626 INFO    ] No camera update needed
[2026-10-28 15:28:59,629.629 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:28:59,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:28:59,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:28:59,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:29:01,687.687 INFO    ] ================================================
[2026-10-28 15:29:01,710.710 INFO    ] Launching Daemon at Wed Oct 28 15:29:01 IST 2026
[2026-10-28 15:29:01,721.721 INFO    ] ================================================
[2026-10-28 15:29:02,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:29:02
[2026-10-28 15:29:03,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:29:03,307.307 INFO    ] Initializing speech engine...
[2026-10-28 15:29:03,326.326 INFO    ] 2026-10-28 15:29:03
[2026-10-28 15:29:03,618.618 INFO    ] 2026-10-28 15:29:03
[2026-10-28 15:29:03,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:29:03,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:29:03,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:29:04,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:29:04,189.189 INFO    ] time= 28/10/2026 15:29:04
[2026-10-28 15:29:04,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:29:04,217.217 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:29:04,352.352 INFO    ] No existing commands found in stream
[2026-10-28 15:29:09,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:29:09,386.386 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 15:29:13,155.155 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:29:13,158.158 INFO    ] Checking for system updates...
[2026-10-28 15:29:13,199.199 INFO    ] 200
[2026-10-28 15:29:13,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:29:13,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:29:13,264.264 INFO    ] No update needed
[2026-10-28 15:29:13,267.267 INFO    ] Checking for camera pi updates...
[2026-10-28 15:29:13,301.301 INFO    ] 200
[2026-10-28 15:29:13,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:29:13,346.346 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:29:13,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:29:13,431.431 INFO    ] No camera update needed
[2026-10-28 15:29:13,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:29:13,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:29:13,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:29:13,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:29:15,489.489 INFO    ] ================================================
[2026-10-28 15:29:15,505.505 INFO    ] Launching Daemon at Wed Oct 28 15:29:15 IST 2026
[2026-10-28 15:29:15,515.515 INFO    ] ================================================
[2026-10-28 15:29:16,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:29:16
[2026-10-28 15:29:16,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:29:16,912.912 INFO    ] Initializing speech engine...
[2026-10-28 15:29:16,920.920 INFO    ] 2026-10-28 15:29:16
[2026-10-28 15:29:17,190.190 INFO    ] 2026-10-28 15:29:17
[2026-10-28 15:29:17,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:29:17,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:29:17,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:29:17,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:29:17,748.748 INFO    ] time= 28/10/2026 15:29:17
[2026-10-28 15:29:17,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:29:17,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:29:17,900.900 INFO    ] No existing commands found in stream
[2026-10-28 15:29:22,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:29:22,926.926 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-28 15:29:25,628.628 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:29:25,631.631 INFO    ] Checking for system updates...
[2026-10-28 15:29:25,669.669 INFO    ] 200
[2026-10-28 15:29:25,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:29:25,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:29:25,735.735 INFO    ] No update needed
[2026-10-28 15:29:25,738.738 INFO    ] Checking for camera pi updates...
[2026-10-28 15:29:25,775.775 INFO    ] 200
[2026-10-28 15:29:25,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:29:25,818.818 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:29:26,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:29:26,027.027 INFO    ] No camera update needed
[2026-10-28 15:29:26,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:29:26,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:29:26,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:29:26,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:29:28,085.085 INFO    ] ================================================
[2026-10-28 15:29:28,100.100 INFO    ] Launching Daemon at Wed Oct 28 15:29:28 IST 2026
[2026-10-28 15:29:28,111.111 INFO    ] ================================================
[2026-10-28 15:29:28,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:29:28
[2026-10-28 15:29:29,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:29:29,534.534 INFO    ] Initializing speech engine...
[2026-10-28 15:29:29,540.540 INFO    ] 2026-10-28 15:29:29
[2026-10-28 15:29:29,800.800 INFO    ] 2026-10-28 15:29:29
[2026-10-28 15:29:29,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:29:30,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:29:30,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:29:30,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:29:30,361.361 INFO    ] time= 28/10/2026 15:29:30
[2026-10-28 15:29:30,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:29:30,370.370 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:29:30,495.495 INFO    ] No existing commands found in stream
[2026-10-28 15:29:35,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:29:35,523.523 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 15:29:36,948.948 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:29:36,950.950 INFO    ] Checking for system updates...
[2026-10-28 15:29:36,987.987 INFO    ] 200
[2026-10-28 15:29:36,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:29:37,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:29:37,053.053 INFO    ] No update needed
[2026-10-28 15:29:37,056.056 INFO    ] Checking for camera pi updates...
[2026-10-28 15:29:37,090.090 INFO    ] 200
[2026-10-28 15:29:37,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:29:37,135.135 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:29:37,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:29:37,222.222 INFO    ] No camera update needed
[2026-10-28 15:29:37,225.225 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:29:37,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:29:37,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:29:37,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:29:39,283.283 INFO    ] ================================================
[2026-10-28 15:29:39,299.299 INFO    ] Launching Daemon at Wed Oct 28 15:29:39 IST 2026
[2026-10-28 15:29:39,310.310 INFO    ] ================================================
[2026-10-28 15:29:39,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:29:39
[2026-10-28 15:29:40,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:29:40,937.937 INFO    ] Initializing speech engine...
[2026-10-28 15:29:40,949.949 INFO    ] 2026-10-28 15:29:40
[2026-10-28 15:29:41,230.230 INFO    ] 2026-10-28 15:29:41
[2026-10-28 15:29:41,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:29:41,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:29:41,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:29:41,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:29:41,771.771 INFO    ] time= 28/10/2026 15:29:41
[2026-10-28 15:29:41,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:29:41,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:29:41,948.948 INFO    ] No existing commands found in stream
[2026-10-28 15:29:46,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:29:46,982.982 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-28 15:29:48,071.071 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:29:48,074.074 INFO    ] Checking for system updates...
[2026-10-28 15:29:48,110.110 INFO    ] 200
[2026-10-28 15:29:48,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:29:48,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:29:48,171.171 INFO    ] No update needed
[2026-10-28 15:29:48,174.174 INFO    ] Checking for camera pi updates...
[2026-10-28 15:29:48,208.208 INFO    ] 200
[2026-10-28 15:29:48,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:29:48,252.252 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:29:48,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:29:48,340.340 INFO    ] No camera update needed
[2026-10-28 15:29:48,343.343 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:29:48,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:29:48,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:29:48,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:29:50,398.398 INFO    ] ================================================
[2026-10-28 15:29:50,414.414 INFO    ] Launching Daemon at Wed Oct 28 15:29:50 IST 2026
[2026-10-28 15:29:50,425.425 INFO    ] ================================================
[2026-10-28 15:29:51,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:29:51
[2026-10-28 15:29:51,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:29:51,880.880 INFO    ] Initializing speech engine...
[2026-10-28 15:29:51,886.886 INFO    ] 2026-10-28 15:29:51
[2026-10-28 15:29:52,182.182 INFO    ] 2026-10-28 15:29:52
[2026-10-28 15:29:52,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:29:52,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:29:52,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:29:52,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:29:52,697.697 INFO    ] time= 28/10/2026 15:29:52
[2026-10-28 15:29:52,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:29:52,806.806 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:29:52,963.963 INFO    ] No existing commands found in stream
[2026-10-28 15:29:57,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:29:57,990.990 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 15:30:01,072.072 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:30:01,076.076 INFO    ] Checking for system updates...
[2026-10-28 15:30:01,115.115 INFO    ] 200
[2026-10-28 15:30:01,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:30:01,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:30:01,180.180 INFO    ] No update needed
[2026-10-28 15:30:01,184.184 INFO    ] Checking for camera pi updates...
[2026-10-28 15:30:01,226.226 INFO    ] 200
[2026-10-28 15:30:01,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:30:01,285.285 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:30:01,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:30:01,392.392 INFO    ] No camera update needed
[2026-10-28 15:30:01,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:30:01,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:30:01,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:30:01,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:30:03,520.520 INFO    ] ================================================
[2026-10-28 15:30:03,543.543 INFO    ] Launching Daemon at Wed Oct 28 15:30:03 IST 2026
[2026-10-28 15:30:03,556.556 INFO    ] ================================================
[2026-10-28 15:30:04,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:30:04
[2026-10-28 15:30:04,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:30:05,087.087 INFO    ] Initializing speech engine...
[2026-10-28 15:30:05,092.092 INFO    ] 2026-10-28 15:30:05
[2026-10-28 15:30:05,347.347 INFO    ] 2026-10-28 15:30:05
[2026-10-28 15:30:05,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:30:05,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:30:05,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:30:05,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:30:05,942.942 INFO    ] time= 28/10/2026 15:30:05
[2026-10-28 15:30:05,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:30:05,977.977 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:30:06,131.131 INFO    ] No existing commands found in stream
[2026-10-28 15:30:11,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:30:11,149.149 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-28 15:30:13,453.453 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:30:13,456.456 INFO    ] Checking for system updates...
[2026-10-28 15:30:13,492.492 INFO    ] 200
[2026-10-28 15:30:13,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:30:13,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:30:13,551.551 INFO    ] No update needed
[2026-10-28 15:30:13,554.554 INFO    ] Checking for camera pi updates...
[2026-10-28 15:30:13,589.589 INFO    ] 200
[2026-10-28 15:30:13,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:30:13,639.639 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:30:13,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:30:13,728.728 INFO    ] No camera update needed
[2026-10-28 15:30:13,730.730 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:30:13,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:30:13,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:30:13,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:30:15,788.788 INFO    ] ================================================
[2026-10-28 15:30:15,804.804 INFO    ] Launching Daemon at Wed Oct 28 15:30:15 IST 2026
[2026-10-28 15:30:15,815.815 INFO    ] ================================================
[2026-10-28 15:30:16,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:30:16
[2026-10-28 15:30:16,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:30:17,238.238 INFO    ] Initializing speech engine...
[2026-10-28 15:30:17,247.247 INFO    ] 2026-10-28 15:30:17
[2026-10-28 15:30:17,493.493 INFO    ] 2026-10-28 15:30:17
[2026-10-28 15:30:17,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:30:17,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:30:17,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:30:18,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:30:18,050.050 INFO    ] time= 28/10/2026 15:30:18
[2026-10-28 15:30:18,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:30:18,097.097 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:30:18,221.221 INFO    ] No existing commands found in stream
[2026-10-28 15:30:23,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:30:23,255.255 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 15:30:25,872.872 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:30:25,875.875 INFO    ] Checking for system updates...
[2026-10-28 15:30:25,915.915 INFO    ] 200
[2026-10-28 15:30:25,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:30:25,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:30:25,972.972 INFO    ] No update needed
[2026-10-28 15:30:25,975.975 INFO    ] Checking for camera pi updates...
[2026-10-28 15:30:26,009.009 INFO    ] 200
[2026-10-28 15:30:26,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:30:26,051.051 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:30:26,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:30:26,153.153 INFO    ] No camera update needed
[2026-10-28 15:30:26,155.155 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:30:26,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:30:26,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:30:26,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:30:28,210.210 INFO    ] ================================================
[2026-10-28 15:30:28,226.226 INFO    ] Launching Daemon at Wed Oct 28 15:30:28 IST 2026
[2026-10-28 15:30:28,237.237 INFO    ] ================================================
[2026-10-28 15:30:28,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:30:28
[2026-10-28 15:30:29,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:30:29,647.647 INFO    ] Initializing speech engine...
[2026-10-28 15:30:29,659.659 INFO    ] 2026-10-28 15:30:29
[2026-10-28 15:30:29,934.934 INFO    ] 2026-10-28 15:30:29
[2026-10-28 15:30:29,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:30:30,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:30:30,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:30:30,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:30:30,538.538 INFO    ] time= 28/10/2026 15:30:30
[2026-10-28 15:30:30,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:30:30,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:30:30,693.693 INFO    ] No existing commands found in stream
[2026-10-28 15:30:35,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:30:35,711.711 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 15:30:39,009.009 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:30:39,011.011 INFO    ] Checking for system updates...
[2026-10-28 15:30:39,048.048 INFO    ] 200
[2026-10-28 15:30:39,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:30:39,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:30:39,107.107 INFO    ] No update needed
[2026-10-28 15:30:39,110.110 INFO    ] Checking for camera pi updates...
[2026-10-28 15:30:39,145.145 INFO    ] 200
[2026-10-28 15:30:39,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:30:39,190.190 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:30:39,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:30:39,276.276 INFO    ] No camera update needed
[2026-10-28 15:30:39,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:30:39,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:30:39,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:30:39,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:30:41,336.336 INFO    ] ================================================
[2026-10-28 15:30:41,351.351 INFO    ] Launching Daemon at Wed Oct 28 15:30:41 IST 2026
[2026-10-28 15:30:41,363.363 INFO    ] ================================================
[2026-10-28 15:30:41,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:30:41
[2026-10-28 15:30:42,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:30:42,782.782 INFO    ] Initializing speech engine...
[2026-10-28 15:30:42,791.791 INFO    ] 2026-10-28 15:30:42
[2026-10-28 15:30:43,037.037 INFO    ] 2026-10-28 15:30:43
[2026-10-28 15:30:43,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:30:43,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:30:43,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:30:43,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:30:43,590.590 INFO    ] time= 28/10/2026 15:30:43
[2026-10-28 15:30:43,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:30:43,614.614 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:30:43,743.743 INFO    ] No existing commands found in stream
[2026-10-28 15:30:48,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:30:48,759.759 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 15:30:54,959.959 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:30:54,962.962 INFO    ] Checking for system updates...
[2026-10-28 15:30:55,010.010 INFO    ] 200
[2026-10-28 15:30:55,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:30:55,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:30:55,067.067 INFO    ] No update needed
[2026-10-28 15:30:55,069.069 INFO    ] Checking for camera pi updates...
[2026-10-28 15:30:55,110.110 INFO    ] 200
[2026-10-28 15:30:55,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:30:55,152.152 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:30:55,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:30:55,247.247 INFO    ] No camera update needed
[2026-10-28 15:30:55,249.249 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:30:55,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:30:55,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:30:55,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:30:57,302.302 INFO    ] ================================================
[2026-10-28 15:30:57,317.317 INFO    ] Launching Daemon at Wed Oct 28 15:30:57 IST 2026
[2026-10-28 15:30:57,328.328 INFO    ] ================================================
[2026-10-28 15:30:57,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:30:57
[2026-10-28 15:30:58,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:30:58,748.748 INFO    ] Initializing speech engine...
[2026-10-28 15:30:58,767.767 INFO    ] 2026-10-28 15:30:58
[2026-10-28 15:30:59,014.014 INFO    ] 2026-10-28 15:30:59
[2026-10-28 15:30:59,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:30:59,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:30:59,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:30:59,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:30:59,576.576 INFO    ] time= 28/10/2026 15:30:59
[2026-10-28 15:30:59,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:30:59,600.600 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:30:59,719.719 INFO    ] No existing commands found in stream
[2026-10-28 15:31:04,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:31:04,742.742 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-28 15:31:07,521.521 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:31:07,524.524 INFO    ] Checking for system updates...
[2026-10-28 15:31:07,559.559 INFO    ] 200
[2026-10-28 15:31:07,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:31:07,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:31:07,616.616 INFO    ] No update needed
[2026-10-28 15:31:07,618.618 INFO    ] Checking for camera pi updates...
[2026-10-28 15:31:07,652.652 INFO    ] 200
[2026-10-28 15:31:07,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:31:07,694.694 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:31:07,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:31:07,780.780 INFO    ] No camera update needed
[2026-10-28 15:31:07,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:31:07,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:31:07,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:31:07,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:31:09,835.835 INFO    ] ================================================
[2026-10-28 15:31:09,851.851 INFO    ] Launching Daemon at Wed Oct 28 15:31:09 IST 2026
[2026-10-28 15:31:09,862.862 INFO    ] ================================================
[2026-10-28 15:31:10,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:31:10
[2026-10-28 15:31:11,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:31:11,281.281 INFO    ] Initializing speech engine...
[2026-10-28 15:31:11,296.296 INFO    ] 2026-10-28 15:31:11
[2026-10-28 15:31:11,562.562 INFO    ] 2026-10-28 15:31:11
[2026-10-28 15:31:11,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:31:11,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:31:11,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:31:12,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:31:12,164.164 INFO    ] time= 28/10/2026 15:31:12
[2026-10-28 15:31:12,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:31:12,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:31:12,325.325 INFO    ] No existing commands found in stream
[2026-10-28 15:31:17,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:31:17,349.349 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 15:31:19,107.107 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:31:19,110.110 INFO    ] Checking for system updates...
[2026-10-28 15:31:19,146.146 INFO    ] 200
[2026-10-28 15:31:19,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:31:19,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:31:19,203.203 INFO    ] No update needed
[2026-10-28 15:31:19,206.206 INFO    ] Checking for camera pi updates...
[2026-10-28 15:31:19,239.239 INFO    ] 200
[2026-10-28 15:31:19,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:31:19,282.282 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:31:19,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:31:19,370.370 INFO    ] No camera update needed
[2026-10-28 15:31:19,372.372 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:31:19,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:31:19,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:31:19,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:31:21,425.425 INFO    ] ================================================
[2026-10-28 15:31:21,441.441 INFO    ] Launching Daemon at Wed Oct 28 15:31:21 IST 2026
[2026-10-28 15:31:21,452.452 INFO    ] ================================================
[2026-10-28 15:31:22,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:31:22
[2026-10-28 15:31:22,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:31:23,087.087 INFO    ] Initializing speech engine...
[2026-10-28 15:31:23,100.100 INFO    ] 2026-10-28 15:31:23
[2026-10-28 15:31:23,412.412 INFO    ] 2026-10-28 15:31:23
[2026-10-28 15:31:23,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:31:23,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:31:23,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:31:23,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:31:23,988.988 INFO    ] time= 28/10/2026 15:31:23
[2026-10-28 15:31:24,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:31:24,068.068 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:31:24,197.197 INFO    ] No existing commands found in stream
[2026-10-28 15:31:29,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:31:29,236.236 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 15:31:30,749.749 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:31:30,751.751 INFO    ] Checking for system updates...
[2026-10-28 15:31:30,790.790 INFO    ] 200
[2026-10-28 15:31:30,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:31:30,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:31:30,855.855 INFO    ] No update needed
[2026-10-28 15:31:30,857.857 INFO    ] Checking for camera pi updates...
[2026-10-28 15:31:30,890.890 INFO    ] 200
[2026-10-28 15:31:30,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:31:30,937.937 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:31:31,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:31:31,141.141 INFO    ] No camera update needed
[2026-10-28 15:31:31,144.144 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:31:31,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:31:31,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:31:31,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:31:33,197.197 INFO    ] ================================================
[2026-10-28 15:31:33,212.212 INFO    ] Launching Daemon at Wed Oct 28 15:31:33 IST 2026
[2026-10-28 15:31:33,223.223 INFO    ] ================================================
[2026-10-28 15:31:33,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:31:33
[2026-10-28 15:31:34,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:31:34,668.668 INFO    ] Initializing speech engine...
[2026-10-28 15:31:34,677.677 INFO    ] 2026-10-28 15:31:34
[2026-10-28 15:31:34,943.943 INFO    ] 2026-10-28 15:31:34
[2026-10-28 15:31:34,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:31:35,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:31:35,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:31:35,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:31:35,657.657 INFO    ] time= 28/10/2026 15:31:35
[2026-10-28 15:31:35,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:31:35,738.738 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:31:35,886.886 INFO    ] No existing commands found in stream
[2026-10-28 15:31:40,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:31:40,902.902 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-28 15:31:42,032.032 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:31:42,035.035 INFO    ] Checking for system updates...
[2026-10-28 15:31:42,073.073 INFO    ] 200
[2026-10-28 15:31:42,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:31:42,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:31:42,132.132 INFO    ] No update needed
[2026-10-28 15:31:42,135.135 INFO    ] Checking for camera pi updates...
[2026-10-28 15:31:42,169.169 INFO    ] 200
[2026-10-28 15:31:42,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:31:42,213.213 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:31:42,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:31:42,316.316 INFO    ] No camera update needed
[2026-10-28 15:31:42,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:31:42,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:31:42,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:31:42,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:31:44,376.376 INFO    ] ================================================
[2026-10-28 15:31:44,392.392 INFO    ] Launching Daemon at Wed Oct 28 15:31:44 IST 2026
[2026-10-28 15:31:44,403.403 INFO    ] ================================================
[2026-10-28 15:31:44,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:31:44
[2026-10-28 15:31:45,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:31:45,802.802 INFO    ] Initializing speech engine...
[2026-10-28 15:31:45,817.817 INFO    ] 2026-10-28 15:31:45
[2026-10-28 15:31:46,079.079 INFO    ] 2026-10-28 15:31:46
[2026-10-28 15:31:46,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:31:46,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:31:46,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:31:46,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:31:46,641.641 INFO    ] time= 28/10/2026 15:31:46
[2026-10-28 15:31:46,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:31:46,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:31:46,839.839 INFO    ] No existing commands found in stream
[2026-10-28 15:31:51,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:31:51,872.872 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 15:31:56,470.470 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:31:56,473.473 INFO    ] Checking for system updates...
[2026-10-28 15:31:56,509.509 INFO    ] 200
[2026-10-28 15:31:56,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:31:56,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:31:56,567.567 INFO    ] No update needed
[2026-10-28 15:31:56,569.569 INFO    ] Checking for camera pi updates...
[2026-10-28 15:31:56,603.603 INFO    ] 200
[2026-10-28 15:31:56,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:31:56,646.646 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:31:56,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:31:56,729.729 INFO    ] No camera update needed
[2026-10-28 15:31:56,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:31:56,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:31:56,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:31:56,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:31:58,785.785 INFO    ] ================================================
[2026-10-28 15:31:58,801.801 INFO    ] Launching Daemon at Wed Oct 28 15:31:58 IST 2026
[2026-10-28 15:31:58,812.812 INFO    ] ================================================
[2026-10-28 15:31:59,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:31:59
[2026-10-28 15:31:59,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:32:00,253.253 INFO    ] Initializing speech engine...
[2026-10-28 15:32:00,263.263 INFO    ] 2026-10-28 15:32:00
[2026-10-28 15:32:00,556.556 INFO    ] 2026-10-28 15:32:00
[2026-10-28 15:32:00,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:32:00,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:32:00,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:32:01,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:32:01,089.089 INFO    ] time= 28/10/2026 15:32:01
[2026-10-28 15:32:01,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:32:01,192.192 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:32:01,323.323 INFO    ] No existing commands found in stream
[2026-10-28 15:32:06,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:32:06,348.348 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-28 15:32:07,521.521 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:32:07,523.523 INFO    ] Checking for system updates...
[2026-10-28 15:32:07,562.562 INFO    ] 200
[2026-10-28 15:32:07,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:32:07,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:32:07,621.621 INFO    ] No update needed
[2026-10-28 15:32:07,627.627 INFO    ] Checking for camera pi updates...
[2026-10-28 15:32:07,664.664 INFO    ] 200
[2026-10-28 15:32:07,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:32:07,707.707 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:32:07,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:32:07,790.790 INFO    ] No camera update needed
[2026-10-28 15:32:07,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:32:07,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:32:07,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:32:07,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:32:09,845.845 INFO    ] ================================================
[2026-10-28 15:32:09,860.860 INFO    ] Launching Daemon at Wed Oct 28 15:32:09 IST 2026
[2026-10-28 15:32:09,871.871 INFO    ] ================================================
[2026-10-28 15:32:10,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:32:10
[2026-10-28 15:32:11,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:32:11,300.300 INFO    ] Initializing speech engine...
[2026-10-28 15:32:11,309.309 INFO    ] 2026-10-28 15:32:11
[2026-10-28 15:32:11,599.599 INFO    ] 2026-10-28 15:32:11
[2026-10-28 15:32:11,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:32:11,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:32:11,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:32:12,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:32:12,099.099 INFO    ] time= 28/10/2026 15:32:12
[2026-10-28 15:32:12,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:32:12,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:32:12,364.364 INFO    ] No existing commands found in stream
[2026-10-28 15:32:17,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:32:17,389.389 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-28 15:32:21,948.948 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:32:21,951.951 INFO    ] Checking for system updates...
[2026-10-28 15:32:21,986.986 INFO    ] 200
[2026-10-28 15:32:21,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:32:22,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:32:22,042.042 INFO    ] No update needed
[2026-10-28 15:32:22,045.045 INFO    ] Checking for camera pi updates...
[2026-10-28 15:32:22,078.078 INFO    ] 200
[2026-10-28 15:32:22,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:32:22,125.125 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:32:22,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:32:22,220.220 INFO    ] No camera update needed
[2026-10-28 15:32:22,222.222 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:32:22,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:32:22,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:32:22,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:32:24,275.275 INFO    ] ================================================
[2026-10-28 15:32:24,290.290 INFO    ] Launching Daemon at Wed Oct 28 15:32:24 IST 2026
[2026-10-28 15:32:24,301.301 INFO    ] ================================================
[2026-10-28 15:32:24,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:32:24
[2026-10-28 15:32:25,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:32:25,713.713 INFO    ] Initializing speech engine...
[2026-10-28 15:32:25,722.722 INFO    ] 2026-10-28 15:32:25
[2026-10-28 15:32:26,014.014 INFO    ] 2026-10-28 15:32:25
[2026-10-28 15:32:26,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:32:26,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:32:26,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:32:26,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:32:26,500.500 INFO    ] time= 28/10/2026 15:32:26
[2026-10-28 15:32:26,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:32:26,576.576 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:32:26,701.701 INFO    ] No existing commands found in stream
[2026-10-28 15:32:31,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:32:31,715.715 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-28 15:32:36,505.505 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:32:36,508.508 INFO    ] Checking for system updates...
[2026-10-28 15:32:36,544.544 INFO    ] 200
[2026-10-28 15:32:36,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:32:36,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:32:36,602.602 INFO    ] No update needed
[2026-10-28 15:32:36,605.605 INFO    ] Checking for camera pi updates...
[2026-10-28 15:32:36,638.638 INFO    ] 200
[2026-10-28 15:32:36,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:32:36,681.681 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:32:36,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:32:36,768.768 INFO    ] No camera update needed
[2026-10-28 15:32:36,771.771 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:32:36,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:32:36,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:32:36,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:32:38,823.823 INFO    ] ================================================
[2026-10-28 15:32:38,838.838 INFO    ] Launching Daemon at Wed Oct 28 15:32:38 IST 2026
[2026-10-28 15:32:38,848.848 INFO    ] ================================================
[2026-10-28 15:32:39,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:32:39
[2026-10-28 15:32:39,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:32:40,262.262 INFO    ] Initializing speech engine...
[2026-10-28 15:32:40,278.278 INFO    ] 2026-10-28 15:32:40
[2026-10-28 15:32:40,549.549 INFO    ] 2026-10-28 15:32:40
[2026-10-28 15:32:40,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:32:40,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:32:40,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:32:41,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:32:41,172.172 INFO    ] time= 28/10/2026 15:32:41
[2026-10-28 15:32:41,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:32:41,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:32:41,341.341 INFO    ] No existing commands found in stream
[2026-10-28 15:32:46,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:32:46,359.359 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 15:32:48,629.629 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:32:48,632.632 INFO    ] Checking for system updates...
[2026-10-28 15:32:48,670.670 INFO    ] 200
[2026-10-28 15:32:48,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:32:48,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:32:48,733.733 INFO    ] No update needed
[2026-10-28 15:32:48,736.736 INFO    ] Checking for camera pi updates...
[2026-10-28 15:32:48,770.770 INFO    ] 200
[2026-10-28 15:32:48,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:32:48,817.817 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:32:48,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:32:48,905.905 INFO    ] No camera update needed
[2026-10-28 15:32:48,907.907 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:32:48,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:32:48,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:32:48,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:32:50,959.959 INFO    ] ================================================
[2026-10-28 15:32:50,974.974 INFO    ] Launching Daemon at Wed Oct 28 15:32:50 IST 2026
[2026-10-28 15:32:50,985.985 INFO    ] ================================================
[2026-10-28 15:32:51,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:32:51
[2026-10-28 15:32:52,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:32:52,386.386 INFO    ] Initializing speech engine...
[2026-10-28 15:32:52,395.395 INFO    ] 2026-10-28 15:32:52
[2026-10-28 15:32:52,685.685 INFO    ] 2026-10-28 15:32:52
[2026-10-28 15:32:52,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:32:52,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:32:53,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:32:53,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:32:53,311.311 INFO    ] time= 28/10/2026 15:32:53
[2026-10-28 15:32:53,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:32:53,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:32:53,475.475 INFO    ] No existing commands found in stream
[2026-10-28 15:32:58,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:32:58,497.497 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 15:33:00,549.549 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:33:00,553.553 INFO    ] Checking for system updates...
[2026-10-28 15:33:00,599.599 INFO    ] 200
[2026-10-28 15:33:00,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:33:00,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:33:00,658.658 INFO    ] No update needed
[2026-10-28 15:33:00,660.660 INFO    ] Checking for camera pi updates...
[2026-10-28 15:33:00,694.694 INFO    ] 200
[2026-10-28 15:33:00,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:33:00,738.738 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:33:00,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:33:00,832.832 INFO    ] No camera update needed
[2026-10-28 15:33:00,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:33:00,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:33:00,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:33:00,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:33:02,893.893 INFO    ] ================================================
[2026-10-28 15:33:02,911.911 INFO    ] Launching Daemon at Wed Oct 28 15:33:02 IST 2026
[2026-10-28 15:33:02,924.924 INFO    ] ================================================
[2026-10-28 15:33:03,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:33:03
[2026-10-28 15:33:04,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:33:04,402.402 INFO    ] Initializing speech engine...
[2026-10-28 15:33:04,409.409 INFO    ] 2026-10-28 15:33:04
[2026-10-28 15:33:04,653.653 INFO    ] 2026-10-28 15:33:04
[2026-10-28 15:33:04,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:33:04,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:33:04,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:33:05,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:33:05,212.212 INFO    ] time= 28/10/2026 15:33:05
[2026-10-28 15:33:05,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:33:05,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:33:05,409.409 INFO    ] No existing commands found in stream
[2026-10-28 15:33:10,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:33:10,441.441 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 15:33:15,037.037 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:33:15,040.040 INFO    ] Checking for system updates...
[2026-10-28 15:33:15,080.080 INFO    ] 200
[2026-10-28 15:33:15,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:33:15,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:33:15,139.139 INFO    ] No update needed
[2026-10-28 15:33:15,141.141 INFO    ] Checking for camera pi updates...
[2026-10-28 15:33:15,175.175 INFO    ] 200
[2026-10-28 15:33:15,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:33:15,219.219 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:33:15,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:33:15,306.306 INFO    ] No camera update needed
[2026-10-28 15:33:15,308.308 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:33:15,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:33:15,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:33:15,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:33:17,362.362 INFO    ] ================================================
[2026-10-28 15:33:17,377.377 INFO    ] Launching Daemon at Wed Oct 28 15:33:17 IST 2026
[2026-10-28 15:33:17,388.388 INFO    ] ================================================
[2026-10-28 15:33:17,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:33:17
[2026-10-28 15:33:18,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:33:18,794.794 INFO    ] Initializing speech engine...
[2026-10-28 15:33:18,801.801 INFO    ] 2026-10-28 15:33:18
[2026-10-28 15:33:19,094.094 INFO    ] 2026-10-28 15:33:19
[2026-10-28 15:33:19,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:33:19,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:33:19,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:33:19,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:33:19,712.712 INFO    ] time= 28/10/2026 15:33:19
[2026-10-28 15:33:19,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:33:19,727.727 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:33:19,857.857 INFO    ] No existing commands found in stream
[2026-10-28 15:33:24,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:33:24,885.885 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 15:33:28,795.795 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:33:28,798.798 INFO    ] Checking for system updates...
[2026-10-28 15:33:28,837.837 INFO    ] 200
[2026-10-28 15:33:28,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:33:28,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:33:28,895.895 INFO    ] No update needed
[2026-10-28 15:33:28,897.897 INFO    ] Checking for camera pi updates...
[2026-10-28 15:33:28,934.934 INFO    ] 200
[2026-10-28 15:33:28,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:33:28,978.978 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:33:29,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:33:29,056.056 INFO    ] No camera update needed
[2026-10-28 15:33:29,058.058 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:33:29,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:33:29,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:33:29,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:33:31,112.112 INFO    ] ================================================
[2026-10-28 15:33:31,128.128 INFO    ] Launching Daemon at Wed Oct 28 15:33:31 IST 2026
[2026-10-28 15:33:31,139.139 INFO    ] ================================================
[2026-10-28 15:33:31,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:33:31
[2026-10-28 15:33:32,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:33:32,626.626 INFO    ] Initializing speech engine...
[2026-10-28 15:33:32,632.632 INFO    ] 2026-10-28 15:33:32
[2026-10-28 15:33:32,921.921 INFO    ] 2026-10-28 15:33:32
[2026-10-28 15:33:32,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:33:33,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:33:33,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:33:33,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:33:33,424.424 INFO    ] time= 28/10/2026 15:33:33
[2026-10-28 15:33:33,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:33:33,538.538 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:33:33,694.694 INFO    ] No existing commands found in stream
[2026-10-28 15:33:38,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:33:38,717.717 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 15:33:42,428.428 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:33:42,431.431 INFO    ] Checking for system updates...
[2026-10-28 15:33:42,466.466 INFO    ] 200
[2026-10-28 15:33:42,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:33:42,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:33:42,527.527 INFO    ] No update needed
[2026-10-28 15:33:42,529.529 INFO    ] Checking for camera pi updates...
[2026-10-28 15:33:42,563.563 INFO    ] 200
[2026-10-28 15:33:42,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:33:42,610.610 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:33:42,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:33:42,798.798 INFO    ] No camera update needed
[2026-10-28 15:33:42,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:33:42,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:33:42,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:33:42,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:33:44,853.853 INFO    ] ================================================
[2026-10-28 15:33:44,868.868 INFO    ] Launching Daemon at Wed Oct 28 15:33:44 IST 2026
[2026-10-28 15:33:44,879.879 INFO    ] ================================================
[2026-10-28 15:33:45,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:33:45
[2026-10-28 15:33:46,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:33:46,284.284 INFO    ] Initializing speech engine...
[2026-10-28 15:33:46,291.291 INFO    ] 2026-10-28 15:33:46
[2026-10-28 15:33:46,588.588 INFO    ] 2026-10-28 15:33:46
[2026-10-28 15:33:46,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:33:46,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:33:46,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:33:47,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:33:47,212.212 INFO    ] time= 28/10/2026 15:33:47
[2026-10-28 15:33:47,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:33:47,238.238 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:33:47,366.366 INFO    ] No existing commands found in stream
[2026-10-28 15:33:52,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:33:52,395.395 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 15:33:55,077.077 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:33:55,080.080 INFO    ] Checking for system updates...
[2026-10-28 15:33:55,117.117 INFO    ] 200
[2026-10-28 15:33:55,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:33:55,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:33:55,177.177 INFO    ] No update needed
[2026-10-28 15:33:55,180.180 INFO    ] Checking for camera pi updates...
[2026-10-28 15:33:55,215.215 INFO    ] 200
[2026-10-28 15:33:55,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:33:55,259.259 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:33:55,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:33:55,334.334 INFO    ] No camera update needed
[2026-10-28 15:33:55,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:33:55,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:33:55,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:33:55,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:33:57,394.394 INFO    ] ================================================
[2026-10-28 15:33:57,408.408 INFO    ] Launching Daemon at Wed Oct 28 15:33:57 IST 2026
[2026-10-28 15:33:57,419.419 INFO    ] ================================================
[2026-10-28 15:33:57,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:33:57
[2026-10-28 15:33:58,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:33:58,817.817 INFO    ] Initializing speech engine...
[2026-10-28 15:33:58,827.827 INFO    ] 2026-10-28 15:33:58
[2026-10-28 15:33:59,116.116 INFO    ] 2026-10-28 15:33:59
[2026-10-28 15:33:59,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:33:59,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:33:59,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:33:59,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:33:59,738.738 INFO    ] time= 28/10/2026 15:33:59
[2026-10-28 15:33:59,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:33:59,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:33:59,900.900 INFO    ] No existing commands found in stream
[2026-10-28 15:34:04,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:34:04,926.926 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-28 15:34:06,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:34:06,164.164 INFO    ] Checking for system updates...
[2026-10-28 15:34:06,199.199 INFO    ] 200
[2026-10-28 15:34:06,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:34:06,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:34:06,262.262 INFO    ] No update needed
[2026-10-28 15:34:06,265.265 INFO    ] Checking for camera pi updates...
[2026-10-28 15:34:06,298.298 INFO    ] 200
[2026-10-28 15:34:06,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:34:06,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:34:06,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:34:06,434.434 INFO    ] No camera update needed
[2026-10-28 15:34:06,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:34:06,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:34:06,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:34:06,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:34:08,496.496 INFO    ] ================================================
[2026-10-28 15:34:08,511.511 INFO    ] Launching Daemon at Wed Oct 28 15:34:08 IST 2026
[2026-10-28 15:34:08,522.522 INFO    ] ================================================
[2026-10-28 15:34:09,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:34:09
[2026-10-28 15:34:09,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:34:09,925.925 INFO    ] Initializing speech engine...
[2026-10-28 15:34:09,931.931 INFO    ] 2026-10-28 15:34:09
[2026-10-28 15:34:10,219.219 INFO    ] 2026-10-28 15:34:10
[2026-10-28 15:34:10,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:34:10,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:34:10,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:34:10,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:34:10,823.823 INFO    ] time= 28/10/2026 15:34:10
[2026-10-28 15:34:10,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:34:10,851.851 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:34:10,996.996 INFO    ] No existing commands found in stream
[2026-10-28 15:34:16,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:34:16,024.024 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-28 15:34:17,922.922 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:34:17,925.925 INFO    ] Checking for system updates...
[2026-10-28 15:34:17,962.962 INFO    ] 200
[2026-10-28 15:34:17,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:34:18,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:34:18,021.021 INFO    ] No update needed
[2026-10-28 15:34:18,023.023 INFO    ] Checking for camera pi updates...
[2026-10-28 15:34:18,060.060 INFO    ] 200
[2026-10-28 15:34:18,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:34:18,108.108 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:34:18,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:34:18,195.195 INFO    ] No camera update needed
[2026-10-28 15:34:18,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:34:18,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:34:18,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:34:18,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:34:20,254.254 INFO    ] ================================================
[2026-10-28 15:34:20,268.268 INFO    ] Launching Daemon at Wed Oct 28 15:34:20 IST 2026
[2026-10-28 15:34:20,279.279 INFO    ] ================================================
[2026-10-28 15:34:20,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:34:20
[2026-10-28 15:34:21,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:34:21,711.711 INFO    ] Initializing speech engine...
[2026-10-28 15:34:21,717.717 INFO    ] 2026-10-28 15:34:21
[2026-10-28 15:34:21,966.966 INFO    ] 2026-10-28 15:34:21
[2026-10-28 15:34:22,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:34:22,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:34:22,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:34:22,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:34:22,529.529 INFO    ] time= 28/10/2026 15:34:22
[2026-10-28 15:34:22,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:34:22,552.552 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:34:22,685.685 INFO    ] No existing commands found in stream
[2026-10-28 15:34:27,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:34:27,701.701 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-28 15:34:30,192.192 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:34:30,195.195 INFO    ] Checking for system updates...
[2026-10-28 15:34:30,231.231 INFO    ] 200
[2026-10-28 15:34:30,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:34:30,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:34:30,289.289 INFO    ] No update needed
[2026-10-28 15:34:30,291.291 INFO    ] Checking for camera pi updates...
[2026-10-28 15:34:30,325.325 INFO    ] 200
[2026-10-28 15:34:30,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:34:30,368.368 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:34:30,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:34:30,467.467 INFO    ] No camera update needed
[2026-10-28 15:34:30,469.469 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:34:30,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:34:30,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:34:30,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:34:32,521.521 INFO    ] ================================================
[2026-10-28 15:34:32,536.536 INFO    ] Launching Daemon at Wed Oct 28 15:34:32 IST 2026
[2026-10-28 15:34:32,546.546 INFO    ] ================================================
[2026-10-28 15:34:33,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:34:33
[2026-10-28 15:34:33,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:34:33,942.942 INFO    ] Initializing speech engine...
[2026-10-28 15:34:33,955.955 INFO    ] 2026-10-28 15:34:33
[2026-10-28 15:34:34,216.216 INFO    ] 2026-10-28 15:34:34
[2026-10-28 15:34:34,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:34:34,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:34:34,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:34:34,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:34:34,769.769 INFO    ] time= 28/10/2026 15:34:34
[2026-10-28 15:34:34,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:34:34,815.815 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:34:34,921.921 INFO    ] No existing commands found in stream
[2026-10-28 15:34:39,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:34:39,940.940 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-28 15:34:44,434.434 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:34:44,437.437 INFO    ] Checking for system updates...
[2026-10-28 15:34:44,475.475 INFO    ] 200
[2026-10-28 15:34:44,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:34:44,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:34:44,531.531 INFO    ] No update needed
[2026-10-28 15:34:44,533.533 INFO    ] Checking for camera pi updates...
[2026-10-28 15:34:44,566.566 INFO    ] 200
[2026-10-28 15:34:44,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:34:44,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:34:44,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:34:44,710.710 INFO    ] No camera update needed
[2026-10-28 15:34:44,713.713 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:34:44,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:34:44,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:34:44,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:34:46,765.765 INFO    ] ================================================
[2026-10-28 15:34:46,782.782 INFO    ] Launching Daemon at Wed Oct 28 15:34:46 IST 2026
[2026-10-28 15:34:46,793.793 INFO    ] ================================================
[2026-10-28 15:34:47,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:34:47
[2026-10-28 15:34:47,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:34:48,212.212 INFO    ] Initializing speech engine...
[2026-10-28 15:34:48,222.222 INFO    ] 2026-10-28 15:34:48
[2026-10-28 15:34:48,472.472 INFO    ] 2026-10-28 15:34:48
[2026-10-28 15:34:48,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:34:48,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:34:48,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:34:49,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:34:49,039.039 INFO    ] time= 28/10/2026 15:34:49
[2026-10-28 15:34:49,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:34:49,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:34:49,200.200 INFO    ] No existing commands found in stream
[2026-10-28 15:34:54,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:34:54,228.228 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-28 15:34:56,509.509 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:34:56,512.512 INFO    ] Checking for system updates...
[2026-10-28 15:34:56,548.548 INFO    ] 200
[2026-10-28 15:34:56,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:34:56,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:34:56,606.606 INFO    ] No update needed
[2026-10-28 15:34:56,608.608 INFO    ] Checking for camera pi updates...
[2026-10-28 15:34:56,642.642 INFO    ] 200
[2026-10-28 15:34:56,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:34:56,686.686 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:34:56,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:34:56,768.768 INFO    ] No camera update needed
[2026-10-28 15:34:56,771.771 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:34:56,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:34:56,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:34:56,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:34:58,824.824 INFO    ] ================================================
[2026-10-28 15:34:58,839.839 INFO    ] Launching Daemon at Wed Oct 28 15:34:58 IST 2026
[2026-10-28 15:34:58,849.849 INFO    ] ================================================
[2026-10-28 15:34:59,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:34:59
[2026-10-28 15:35:00,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:35:00,305.305 INFO    ] Initializing speech engine...
[2026-10-28 15:35:00,315.315 INFO    ] 2026-10-28 15:35:00
[2026-10-28 15:35:00,578.578 INFO    ] 2026-10-28 15:35:00
[2026-10-28 15:35:00,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:35:00,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:35:00,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:35:01,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:35:01,129.129 INFO    ] time= 28/10/2026 15:35:01
[2026-10-28 15:35:01,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:35:01,157.157 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:35:01,271.271 INFO    ] No existing commands found in stream
[2026-10-28 15:35:06,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:35:06,299.299 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-28 15:35:10,725.725 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:35:10,728.728 INFO    ] Checking for system updates...
[2026-10-28 15:35:10,769.769 INFO    ] 200
[2026-10-28 15:35:10,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:35:10,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:35:10,830.830 INFO    ] No update needed
[2026-10-28 15:35:10,833.833 INFO    ] Checking for camera pi updates...
[2026-10-28 15:35:10,866.866 INFO    ] 200
[2026-10-28 15:35:10,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:35:10,909.909 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:35:10,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:35:10,963.963 INFO    ] No camera update needed
[2026-10-28 15:35:10,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:35:10,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:35:10,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:35:10,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:35:13,017.017 INFO    ] ================================================
[2026-10-28 15:35:13,032.032 INFO    ] Launching Daemon at Wed Oct 28 15:35:13 IST 2026
[2026-10-28 15:35:13,042.042 INFO    ] ================================================
[2026-10-28 15:35:13,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:35:13
[2026-10-28 15:35:14,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:35:14,444.444 INFO    ] Initializing speech engine...
[2026-10-28 15:35:14,452.452 INFO    ] 2026-10-28 15:35:14
[2026-10-28 15:35:14,725.725 INFO    ] 2026-10-28 15:35:14
[2026-10-28 15:35:14,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:35:15,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:35:15,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:35:15,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:35:15,329.329 INFO    ] time= 28/10/2026 15:35:15
[2026-10-28 15:35:15,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:35:15,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:35:15,523.523 INFO    ] No existing commands found in stream
[2026-10-28 15:35:20,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:35:20,538.538 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 15:35:24,229.229 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:35:24,232.232 INFO    ] Checking for system updates...
[2026-10-28 15:35:24,268.268 INFO    ] 200
[2026-10-28 15:35:24,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:35:24,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:35:24,327.327 INFO    ] No update needed
[2026-10-28 15:35:24,330.330 INFO    ] Checking for camera pi updates...
[2026-10-28 15:35:24,364.364 INFO    ] 200
[2026-10-28 15:35:24,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:35:24,408.408 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:35:24,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:35:24,501.501 INFO    ] No camera update needed
[2026-10-28 15:35:24,503.503 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:35:24,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:35:24,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:35:24,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:35:26,564.564 INFO    ] ================================================
[2026-10-28 15:35:26,581.581 INFO    ] Launching Daemon at Wed Oct 28 15:35:26 IST 2026
[2026-10-28 15:35:26,593.593 INFO    ] ================================================
[2026-10-28 15:35:27,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:35:27
[2026-10-28 15:35:27,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:35:28,219.219 INFO    ] Initializing speech engine...
[2026-10-28 15:35:28,227.227 INFO    ] 2026-10-28 15:35:28
[2026-10-28 15:35:28,482.482 INFO    ] 2026-10-28 15:35:28
[2026-10-28 15:35:28,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:35:28,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:35:28,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:35:29,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:35:29,027.027 INFO    ] time= 28/10/2026 15:35:29
[2026-10-28 15:35:29,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:35:29,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:35:29,224.224 INFO    ] No existing commands found in stream
[2026-10-28 15:35:34,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:35:34,257.257 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-28 15:35:36,313.313 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:35:36,316.316 INFO    ] Checking for system updates...
[2026-10-28 15:35:36,352.352 INFO    ] 200
[2026-10-28 15:35:36,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:35:36,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:35:36,418.418 INFO    ] No update needed
[2026-10-28 15:35:36,420.420 INFO    ] Checking for camera pi updates...
[2026-10-28 15:35:36,454.454 INFO    ] 200
[2026-10-28 15:35:36,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:35:36,498.498 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:35:36,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:35:36,586.586 INFO    ] No camera update needed
[2026-10-28 15:35:36,588.588 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:35:36,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:35:36,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:35:36,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:35:38,641.641 INFO    ] ================================================
[2026-10-28 15:35:38,656.656 INFO    ] Launching Daemon at Wed Oct 28 15:35:38 IST 2026
[2026-10-28 15:35:38,667.667 INFO    ] ================================================
[2026-10-28 15:35:39,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:35:39
[2026-10-28 15:35:39,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:35:40,071.071 INFO    ] Initializing speech engine...
[2026-10-28 15:35:40,094.094 INFO    ] 2026-10-28 15:35:40
[2026-10-28 15:35:40,350.350 INFO    ] 2026-10-28 15:35:40
[2026-10-28 15:35:40,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:35:40,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:35:40,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:35:40,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:35:40,917.917 INFO    ] time= 28/10/2026 15:35:40
[2026-10-28 15:35:40,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:35:40,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:35:41,073.073 INFO    ] No existing commands found in stream
[2026-10-28 15:35:46,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:35:46,093.093 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-28 15:35:46,847.847 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:35:46,849.849 INFO    ] Checking for system updates...
[2026-10-28 15:35:46,886.886 INFO    ] 200
[2026-10-28 15:35:46,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:35:46,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:35:46,949.949 INFO    ] No update needed
[2026-10-28 15:35:46,951.951 INFO    ] Checking for camera pi updates...
[2026-10-28 15:35:46,989.989 INFO    ] 200
[2026-10-28 15:35:46,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:35:47,032.032 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:35:47,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:35:47,216.216 INFO    ] No camera update needed
[2026-10-28 15:35:47,218.218 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:35:47,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:35:47,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:35:47,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:35:49,270.270 INFO    ] ================================================
[2026-10-28 15:35:49,286.286 INFO    ] Launching Daemon at Wed Oct 28 15:35:49 IST 2026
[2026-10-28 15:35:49,297.297 INFO    ] ================================================
[2026-10-28 15:35:49,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:35:49
[2026-10-28 15:35:50,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:35:50,969.969 INFO    ] Initializing speech engine...
[2026-10-28 15:35:50,981.981 INFO    ] 2026-10-28 15:35:50
[2026-10-28 15:35:51,269.269 INFO    ] 2026-10-28 15:35:51
[2026-10-28 15:35:51,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:35:51,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:35:51,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:35:51,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:35:51,819.819 INFO    ] time= 28/10/2026 15:35:51
[2026-10-28 15:35:51,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:35:51,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:35:51,990.990 INFO    ] No existing commands found in stream
[2026-10-28 15:35:57,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:35:57,019.019 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-28 15:35:58,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:35:58,162.162 INFO    ] Checking for system updates...
[2026-10-28 15:35:58,198.198 INFO    ] 200
[2026-10-28 15:35:58,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:35:58,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:35:58,256.256 INFO    ] No update needed
[2026-10-28 15:35:58,258.258 INFO    ] Checking for camera pi updates...
[2026-10-28 15:35:58,292.292 INFO    ] 200
[2026-10-28 15:35:58,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:35:58,335.335 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:35:58,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:35:58,418.418 INFO    ] No camera update needed
[2026-10-28 15:35:58,420.420 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:35:58,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:35:58,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:35:58,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:36:00,473.473 INFO    ] ================================================
[2026-10-28 15:36:00,490.490 INFO    ] Launching Daemon at Wed Oct 28 15:36:00 IST 2026
[2026-10-28 15:36:00,501.501 INFO    ] ================================================
[2026-10-28 15:36:01,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:36:01
[2026-10-28 15:36:01,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:36:02,387.387 INFO    ] Initializing speech engine...
[2026-10-28 15:36:02,396.396 INFO    ] 2026-10-28 15:36:02
[2026-10-28 15:36:02,693.693 INFO    ] 2026-10-28 15:36:02
[2026-10-28 15:36:02,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:36:03,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:36:03,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:36:03,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:36:03,325.325 INFO    ] time= 28/10/2026 15:36:03
[2026-10-28 15:36:03,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:36:03,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:36:03,534.534 INFO    ] No existing commands found in stream
[2026-10-28 15:36:08,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:36:08,561.561 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-28 15:36:10,846.846 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:36:10,848.848 INFO    ] Checking for system updates...
[2026-10-28 15:36:10,884.884 INFO    ] 200
[2026-10-28 15:36:10,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:36:10,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:36:10,941.941 INFO    ] No update needed
[2026-10-28 15:36:10,943.943 INFO    ] Checking for camera pi updates...
[2026-10-28 15:36:10,982.982 INFO    ] 200
[2026-10-28 15:36:10,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:36:11,026.026 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:36:11,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:36:11,092.092 INFO    ] No camera update needed
[2026-10-28 15:36:11,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:36:11,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:36:11,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:36:11,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:36:13,149.149 INFO    ] ================================================
[2026-10-28 15:36:13,165.165 INFO    ] Launching Daemon at Wed Oct 28 15:36:13 IST 2026
[2026-10-28 15:36:13,176.176 INFO    ] ================================================
[2026-10-28 15:36:13,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:36:13
[2026-10-28 15:36:14,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:36:14,591.591 INFO    ] Initializing speech engine...
[2026-10-28 15:36:14,614.614 INFO    ] 2026-10-28 15:36:14
[2026-10-28 15:36:14,870.870 INFO    ] 2026-10-28 15:36:14
[2026-10-28 15:36:14,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:36:15,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:36:15,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:36:15,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:36:15,713.713 INFO    ] time= 28/10/2026 15:36:15
[2026-10-28 15:36:15,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:36:15,795.795 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:36:15,878.878 INFO    ] No existing commands found in stream
[2026-10-28 15:36:20,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:36:20,890.890 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-28 15:36:24,911.911 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:36:24,914.914 INFO    ] Checking for system updates...
[2026-10-28 15:36:24,950.950 INFO    ] 200
[2026-10-28 15:36:24,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:36:25,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:36:25,007.007 INFO    ] No update needed
[2026-10-28 15:36:25,010.010 INFO    ] Checking for camera pi updates...
[2026-10-28 15:36:25,044.044 INFO    ] 200
[2026-10-28 15:36:25,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:36:25,087.087 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:36:25,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:36:25,170.170 INFO    ] No camera update needed
[2026-10-28 15:36:25,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:36:25,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:36:25,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:36:25,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:36:27,226.226 INFO    ] ================================================
[2026-10-28 15:36:27,241.241 INFO    ] Launching Daemon at Wed Oct 28 15:36:27 IST 2026
[2026-10-28 15:36:27,252.252 INFO    ] ================================================
[2026-10-28 15:36:27,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:36:27
[2026-10-28 15:36:28,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:36:28,664.664 INFO    ] Initializing speech engine...
[2026-10-28 15:36:28,689.689 INFO    ] 2026-10-28 15:36:28
[2026-10-28 15:36:28,963.963 INFO    ] 2026-10-28 15:36:28
[2026-10-28 15:36:28,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:36:29,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:36:29,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:36:29,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:36:29,581.581 INFO    ] time= 28/10/2026 15:36:29
[2026-10-28 15:36:29,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:36:29,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:36:29,733.733 INFO    ] No existing commands found in stream
[2026-10-28 15:36:34,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:36:34,766.766 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 15:36:37,269.269 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:36:37,271.271 INFO    ] Checking for system updates...
[2026-10-28 15:36:37,308.308 INFO    ] 200
[2026-10-28 15:36:37,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:36:37,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:36:37,366.366 INFO    ] No update needed
[2026-10-28 15:36:37,368.368 INFO    ] Checking for camera pi updates...
[2026-10-28 15:36:37,402.402 INFO    ] 200
[2026-10-28 15:36:37,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:36:37,450.450 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:36:37,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:36:37,536.536 INFO    ] No camera update needed
[2026-10-28 15:36:37,539.539 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:36:37,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:36:37,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:36:37,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:36:39,593.593 INFO    ] ================================================
[2026-10-28 15:36:39,609.609 INFO    ] Launching Daemon at Wed Oct 28 15:36:39 IST 2026
[2026-10-28 15:36:39,620.620 INFO    ] ================================================
[2026-10-28 15:36:40,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:36:40
[2026-10-28 15:36:40,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:36:41,048.048 INFO    ] Initializing speech engine...
[2026-10-28 15:36:41,069.069 INFO    ] 2026-10-28 15:36:41
[2026-10-28 15:36:41,336.336 INFO    ] 2026-10-28 15:36:41
[2026-10-28 15:36:41,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:36:41,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:36:41,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:36:41,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:36:41,896.896 INFO    ] time= 28/10/2026 15:36:41
[2026-10-28 15:36:41,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:36:41,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:36:42,111.111 INFO    ] No existing commands found in stream
[2026-10-28 15:36:47,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:36:47,137.137 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-28 15:36:48,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:36:48,368.368 INFO    ] Checking for system updates...
[2026-10-28 15:36:48,405.405 INFO    ] 200
[2026-10-28 15:36:48,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:36:48,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:36:48,463.463 INFO    ] No update needed
[2026-10-28 15:36:48,465.465 INFO    ] Checking for camera pi updates...
[2026-10-28 15:36:48,498.498 INFO    ] 200
[2026-10-28 15:36:48,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:36:48,542.542 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:36:48,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:36:48,627.627 INFO    ] No camera update needed
[2026-10-28 15:36:48,629.629 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:36:48,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:36:48,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:36:48,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:36:50,682.682 INFO    ] ================================================
[2026-10-28 15:36:50,697.697 INFO    ] Launching Daemon at Wed Oct 28 15:36:50 IST 2026
[2026-10-28 15:36:50,709.709 INFO    ] ================================================
[2026-10-28 15:36:51,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:36:51
[2026-10-28 15:36:51,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:36:52,116.116 INFO    ] Initializing speech engine...
[2026-10-28 15:36:52,132.132 INFO    ] 2026-10-28 15:36:52
[2026-10-28 15:36:52,418.418 INFO    ] 2026-10-28 15:36:52
[2026-10-28 15:36:52,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:36:52,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:36:52,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:36:52,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:36:52,935.935 INFO    ] time= 28/10/2026 15:36:52
[2026-10-28 15:36:52,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:36:53,010.010 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:36:53,156.156 INFO    ] No existing commands found in stream
[2026-10-28 15:36:58,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:36:58,174.174 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 15:37:01,830.830 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:37:01,842.842 INFO    ] Checking for system updates...
[2026-10-28 15:37:01,924.924 INFO    ] 200
[2026-10-28 15:37:01,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:37:02,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:37:02,031.031 INFO    ] No update needed
[2026-10-28 15:37:02,035.035 INFO    ] Checking for camera pi updates...
[2026-10-28 15:37:02,125.125 INFO    ] 200
[2026-10-28 15:37:02,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:37:02,208.208 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:37:02,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:37:02,319.319 INFO    ] No camera update needed
[2026-10-28 15:37:02,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:37:02,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:37:02,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:37:02,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:37:04,384.384 INFO    ] ================================================
[2026-10-28 15:37:04,400.400 INFO    ] Launching Daemon at Wed Oct 28 15:37:04 IST 2026
[2026-10-28 15:37:04,411.411 INFO    ] ================================================
[2026-10-28 15:37:04,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:37:04
[2026-10-28 15:37:05,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:37:05,835.835 INFO    ] Initializing speech engine...
[2026-10-28 15:37:05,855.855 INFO    ] 2026-10-28 15:37:05
[2026-10-28 15:37:06,101.101 INFO    ] 2026-10-28 15:37:06
[2026-10-28 15:37:06,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:37:06,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:37:06,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:37:06,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:37:06,866.866 INFO    ] time= 28/10/2026 15:37:06
[2026-10-28 15:37:06,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:37:06,969.969 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:37:07,118.118 INFO    ] No existing commands found in stream
[2026-10-28 15:37:12,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:37:12,134.134 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-28 15:37:13,036.036 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:37:13,039.039 INFO    ] Checking for system updates...
[2026-10-28 15:37:13,075.075 INFO    ] 200
[2026-10-28 15:37:13,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:37:13,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:37:13,132.132 INFO    ] No update needed
[2026-10-28 15:37:13,134.134 INFO    ] Checking for camera pi updates...
[2026-10-28 15:37:13,168.168 INFO    ] 200
[2026-10-28 15:37:13,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:37:13,211.211 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:37:13,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:37:13,294.294 INFO    ] No camera update needed
[2026-10-28 15:37:13,297.297 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:37:13,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:37:13,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:37:13,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:37:15,352.352 INFO    ] ================================================
[2026-10-28 15:37:15,367.367 INFO    ] Launching Daemon at Wed Oct 28 15:37:15 IST 2026
[2026-10-28 15:37:15,378.378 INFO    ] ================================================
[2026-10-28 15:37:15,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:37:15
[2026-10-28 15:37:16,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:37:16,808.808 INFO    ] Initializing speech engine...
[2026-10-28 15:37:16,818.818 INFO    ] 2026-10-28 15:37:16
[2026-10-28 15:37:17,061.061 INFO    ] 2026-10-28 15:37:17
[2026-10-28 15:37:17,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:37:17,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:37:17,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:37:17,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:37:17,615.615 INFO    ] time= 28/10/2026 15:37:17
[2026-10-28 15:37:17,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:37:17,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:37:17,781.781 INFO    ] No existing commands found in stream
[2026-10-28 15:37:22,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:37:22,808.808 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-28 15:37:25,750.750 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:37:25,752.752 INFO    ] Checking for system updates...
[2026-10-28 15:37:25,787.787 INFO    ] 200
[2026-10-28 15:37:25,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:37:25,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:37:25,844.844 INFO    ] No update needed
[2026-10-28 15:37:25,846.846 INFO    ] Checking for camera pi updates...
[2026-10-28 15:37:25,880.880 INFO    ] 200
[2026-10-28 15:37:25,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:37:25,923.923 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:37:26,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:37:26,026.026 INFO    ] No camera update needed
[2026-10-28 15:37:26,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:37:26,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:37:26,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:37:26,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:37:28,084.084 INFO    ] ================================================
[2026-10-28 15:37:28,098.098 INFO    ] Launching Daemon at Wed Oct 28 15:37:28 IST 2026
[2026-10-28 15:37:28,109.109 INFO    ] ================================================
[2026-10-28 15:37:28,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:37:28
[2026-10-28 15:37:29,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:37:29,551.551 INFO    ] Initializing speech engine...
[2026-10-28 15:37:29,561.561 INFO    ] 2026-10-28 15:37:29
[2026-10-28 15:37:29,807.807 INFO    ] 2026-10-28 15:37:29
[2026-10-28 15:37:29,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:37:30,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:37:30,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:37:30,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:37:30,365.365 INFO    ] time= 28/10/2026 15:37:30
[2026-10-28 15:37:30,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:37:30,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:37:30,528.528 INFO    ] No existing commands found in stream
[2026-10-28 15:37:35,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:37:35,556.556 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-28 15:37:40,150.150 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:37:40,152.152 INFO    ] Checking for system updates...
[2026-10-28 15:37:40,188.188 INFO    ] 200
[2026-10-28 15:37:40,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:37:40,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:37:40,246.246 INFO    ] No update needed
[2026-10-28 15:37:40,248.248 INFO    ] Checking for camera pi updates...
[2026-10-28 15:37:40,286.286 INFO    ] 200
[2026-10-28 15:37:40,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:37:40,329.329 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:37:40,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:37:40,412.412 INFO    ] No camera update needed
[2026-10-28 15:37:40,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:37:40,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:37:40,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:37:40,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:37:42,469.469 INFO    ] ================================================
[2026-10-28 15:37:42,484.484 INFO    ] Launching Daemon at Wed Oct 28 15:37:42 IST 2026
[2026-10-28 15:37:42,494.494 INFO    ] ================================================
[2026-10-28 15:37:43,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:37:43
[2026-10-28 15:37:43,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:37:43,913.913 INFO    ] Initializing speech engine...
[2026-10-28 15:37:43,922.922 INFO    ] 2026-10-28 15:37:43
[2026-10-28 15:37:44,165.165 INFO    ] 2026-10-28 15:37:44
[2026-10-28 15:37:44,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:37:44,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:37:44,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:37:44,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:37:44,723.723 INFO    ] time= 28/10/2026 15:37:44
[2026-10-28 15:37:44,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:37:44,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:37:44,905.905 INFO    ] No existing commands found in stream
[2026-10-28 15:37:49,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:37:49,943.943 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-28 15:37:52,151.151 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:37:52,154.154 INFO    ] Checking for system updates...
[2026-10-28 15:37:52,193.193 INFO    ] 200
[2026-10-28 15:37:52,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:37:52,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:37:52,257.257 INFO    ] No update needed
[2026-10-28 15:37:52,259.259 INFO    ] Checking for camera pi updates...
[2026-10-28 15:37:52,294.294 INFO    ] 200
[2026-10-28 15:37:52,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:37:52,339.339 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:37:52,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:37:52,423.423 INFO    ] No camera update needed
[2026-10-28 15:37:52,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:37:52,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:37:52,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:37:52,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:37:54,480.480 INFO    ] ================================================
[2026-10-28 15:37:54,495.495 INFO    ] Launching Daemon at Wed Oct 28 15:37:54 IST 2026
[2026-10-28 15:37:54,506.506 INFO    ] ================================================
[2026-10-28 15:37:55,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:37:55
[2026-10-28 15:37:55,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:37:55,923.923 INFO    ] Initializing speech engine...
[2026-10-28 15:37:55,933.933 INFO    ] 2026-10-28 15:37:55
[2026-10-28 15:37:56,177.177 INFO    ] 2026-10-28 15:37:56
[2026-10-28 15:37:56,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:37:56,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:37:56,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:37:56,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:37:56,727.727 INFO    ] time= 28/10/2026 15:37:56
[2026-10-28 15:37:56,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:37:56,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:37:56,893.893 INFO    ] No existing commands found in stream
[2026-10-28 15:38:01,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:38:01,912.912 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-28 15:38:06,694.694 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:38:06,696.696 INFO    ] Checking for system updates...
[2026-10-28 15:38:06,731.731 INFO    ] 200
[2026-10-28 15:38:06,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:38:06,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:38:06,793.793 INFO    ] No update needed
[2026-10-28 15:38:06,795.795 INFO    ] Checking for camera pi updates...
[2026-10-28 15:38:06,828.828 INFO    ] 200
[2026-10-28 15:38:06,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:38:06,876.876 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:38:06,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:38:06,967.967 INFO    ] No camera update needed
[2026-10-28 15:38:06,973.973 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:38:06,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:38:06,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:38:06,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:38:09,026.026 INFO    ] ================================================
[2026-10-28 15:38:09,041.041 INFO    ] Launching Daemon at Wed Oct 28 15:38:09 IST 2026
[2026-10-28 15:38:09,051.051 INFO    ] ================================================
[2026-10-28 15:38:09,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:38:09
[2026-10-28 15:38:10,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:38:10,595.595 INFO    ] Initializing speech engine...
[2026-10-28 15:38:10,606.606 INFO    ] 2026-10-28 15:38:10
[2026-10-28 15:38:10,863.863 INFO    ] 2026-10-28 15:38:10
[2026-10-28 15:38:10,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:38:11,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:38:11,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:38:11,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:38:11,610.610 INFO    ] time= 28/10/2026 15:38:11
[2026-10-28 15:38:11,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:38:11,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:38:11,831.831 INFO    ] No existing commands found in stream
[2026-10-28 15:38:16,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:38:16,848.848 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-28 15:38:19,589.589 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:38:19,592.592 INFO    ] Checking for system updates...
[2026-10-28 15:38:19,629.629 INFO    ] 200
[2026-10-28 15:38:19,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:38:19,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:38:19,694.694 INFO    ] No update needed
[2026-10-28 15:38:19,697.697 INFO    ] Checking for camera pi updates...
[2026-10-28 15:38:19,734.734 INFO    ] 200
[2026-10-28 15:38:19,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:38:19,778.778 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:38:19,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:38:19,871.871 INFO    ] No camera update needed
[2026-10-28 15:38:19,874.874 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:38:19,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:38:19,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:38:19,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:38:21,928.928 INFO    ] ================================================
[2026-10-28 15:38:21,943.943 INFO    ] Launching Daemon at Wed Oct 28 15:38:21 IST 2026
[2026-10-28 15:38:21,954.954 INFO    ] ================================================
[2026-10-28 15:38:22,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:38:22
[2026-10-28 15:38:23,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:38:23,410.410 INFO    ] Initializing speech engine...
[2026-10-28 15:38:23,418.418 INFO    ] 2026-10-28 15:38:23
[2026-10-28 15:38:23,676.676 INFO    ] 2026-10-28 15:38:23
[2026-10-28 15:38:23,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:38:24,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:38:24,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:38:24,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:38:24,429.429 INFO    ] time= 28/10/2026 15:38:24
[2026-10-28 15:38:24,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:38:24,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:38:24,647.647 INFO    ] No existing commands found in stream
[2026-10-28 15:38:29,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:38:29,679.679 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 15:38:31,113.113 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:38:31,115.115 INFO    ] Checking for system updates...
[2026-10-28 15:38:31,150.150 INFO    ] 200
[2026-10-28 15:38:31,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:38:31,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:38:31,209.209 INFO    ] No update needed
[2026-10-28 15:38:31,211.211 INFO    ] Checking for camera pi updates...
[2026-10-28 15:38:31,247.247 INFO    ] 200
[2026-10-28 15:38:31,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:38:31,291.291 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:38:31,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:38:31,372.372 INFO    ] No camera update needed
[2026-10-28 15:38:31,374.374 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:38:31,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:38:31,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:38:31,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:38:33,427.427 INFO    ] ================================================
[2026-10-28 15:38:33,442.442 INFO    ] Launching Daemon at Wed Oct 28 15:38:33 IST 2026
[2026-10-28 15:38:33,453.453 INFO    ] ================================================
[2026-10-28 15:38:34,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:38:34
[2026-10-28 15:38:34,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:38:35,027.027 INFO    ] Initializing speech engine...
[2026-10-28 15:38:35,035.035 INFO    ] 2026-10-28 15:38:35
[2026-10-28 15:38:35,309.309 INFO    ] 2026-10-28 15:38:35
[2026-10-28 15:38:35,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:38:35,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:38:35,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:38:35,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:38:35,869.869 INFO    ] time= 28/10/2026 15:38:35
[2026-10-28 15:38:35,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:38:35,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:38:36,041.041 INFO    ] No existing commands found in stream
[2026-10-28 15:38:41,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:38:41,070.070 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-28 15:38:45,817.817 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:38:45,820.820 INFO    ] Checking for system updates...
[2026-10-28 15:38:45,861.861 INFO    ] 200
[2026-10-28 15:38:45,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:38:45,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:38:45,919.919 INFO    ] No update needed
[2026-10-28 15:38:45,922.922 INFO    ] Checking for camera pi updates...
[2026-10-28 15:38:45,956.956 INFO    ] 200
[2026-10-28 15:38:45,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:38:46,002.002 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:38:46,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:38:46,102.102 INFO    ] No camera update needed
[2026-10-28 15:38:46,105.105 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:38:46,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:38:46,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:38:46,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:38:48,161.161 INFO    ] ================================================
[2026-10-28 15:38:48,176.176 INFO    ] Launching Daemon at Wed Oct 28 15:38:48 IST 2026
[2026-10-28 15:38:48,187.187 INFO    ] ================================================
[2026-10-28 15:38:48,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:38:48
[2026-10-28 15:38:49,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:38:49,635.635 INFO    ] Initializing speech engine...
[2026-10-28 15:38:49,645.645 INFO    ] 2026-10-28 15:38:49
[2026-10-28 15:38:49,906.906 INFO    ] 2026-10-28 15:38:49
[2026-10-28 15:38:49,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:38:50,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:38:50,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:38:50,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:38:50,447.447 INFO    ] time= 28/10/2026 15:38:50
[2026-10-28 15:38:50,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:38:50,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:38:50,638.638 INFO    ] No existing commands found in stream
[2026-10-28 15:38:55,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:38:55,666.666 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-28 15:38:57,676.676 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:38:57,679.679 INFO    ] Checking for system updates...
[2026-10-28 15:38:57,715.715 INFO    ] 200
[2026-10-28 15:38:57,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:38:57,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:38:57,773.773 INFO    ] No update needed
[2026-10-28 15:38:57,776.776 INFO    ] Checking for camera pi updates...
[2026-10-28 15:38:57,810.810 INFO    ] 200
[2026-10-28 15:38:57,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:38:57,855.855 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:38:57,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:38:57,940.940 INFO    ] No camera update needed
[2026-10-28 15:38:57,943.943 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:38:57,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:38:57,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:38:57,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:39:00,999.999 INFO    ] ================================================
[2026-10-28 15:39:00,014.014 INFO    ] Launching Daemon at Wed Oct 28 15:39:00 IST 2026
[2026-10-28 15:39:00,024.024 INFO    ] ================================================
[2026-10-28 15:39:00,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:39:00
[2026-10-28 15:39:01,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:39:01,683.683 INFO    ] Initializing speech engine...
[2026-10-28 15:39:01,704.704 INFO    ] 2026-10-28 15:39:01
[2026-10-28 15:39:02,027.027 INFO    ] 2026-10-28 15:39:02
[2026-10-28 15:39:02,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:39:02,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:39:02,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:39:02,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:39:02,739.739 INFO    ] time= 28/10/2026 15:39:02
[2026-10-28 15:39:02,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:39:02,827.827 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:39:02,968.968 INFO    ] No existing commands found in stream
[2026-10-28 15:39:08,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:39:08,002.002 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 15:39:12,443.443 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:39:12,445.445 INFO    ] Checking for system updates...
[2026-10-28 15:39:12,481.481 INFO    ] 200
[2026-10-28 15:39:12,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:39:12,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:39:12,539.539 INFO    ] No update needed
[2026-10-28 15:39:12,541.541 INFO    ] Checking for camera pi updates...
[2026-10-28 15:39:12,574.574 INFO    ] 200
[2026-10-28 15:39:12,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:39:12,618.618 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:39:12,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:39:12,700.700 INFO    ] No camera update needed
[2026-10-28 15:39:12,703.703 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:39:12,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:39:12,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:39:12,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:39:14,756.756 INFO    ] ================================================
[2026-10-28 15:39:14,771.771 INFO    ] Launching Daemon at Wed Oct 28 15:39:14 IST 2026
[2026-10-28 15:39:14,782.782 INFO    ] ================================================
[2026-10-28 15:39:15,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:39:15
[2026-10-28 15:39:16,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:39:16,363.363 INFO    ] Initializing speech engine...
[2026-10-28 15:39:16,375.375 INFO    ] 2026-10-28 15:39:16
[2026-10-28 15:39:16,681.681 INFO    ] 2026-10-28 15:39:16
[2026-10-28 15:39:16,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:39:16,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:39:17,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:39:17,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:39:17,377.377 INFO    ] time= 28/10/2026 15:39:17
[2026-10-28 15:39:17,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:39:17,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:39:17,591.591 INFO    ] No existing commands found in stream
[2026-10-28 15:39:22,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:39:22,608.608 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 15:39:26,135.135 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:39:26,138.138 INFO    ] Checking for system updates...
[2026-10-28 15:39:26,176.176 INFO    ] 200
[2026-10-28 15:39:26,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:39:26,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:39:26,236.236 INFO    ] No update needed
[2026-10-28 15:39:26,239.239 INFO    ] Checking for camera pi updates...
[2026-10-28 15:39:26,274.274 INFO    ] 200
[2026-10-28 15:39:26,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:39:26,317.317 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:39:26,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:39:26,405.405 INFO    ] No camera update needed
[2026-10-28 15:39:26,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:39:26,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:39:26,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:39:26,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:39:28,463.463 INFO    ] ================================================
[2026-10-28 15:39:28,478.478 INFO    ] Launching Daemon at Wed Oct 28 15:39:28 IST 2026
[2026-10-28 15:39:28,489.489 INFO    ] ================================================
[2026-10-28 15:39:29,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:39:29
[2026-10-28 15:39:29,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:39:30,091.091 INFO    ] Initializing speech engine...
[2026-10-28 15:39:30,104.104 INFO    ] 2026-10-28 15:39:30
[2026-10-28 15:39:30,416.416 INFO    ] 2026-10-28 15:39:30
[2026-10-28 15:39:30,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:39:30,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:39:30,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:39:31,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:39:31,160.160 INFO    ] time= 28/10/2026 15:39:31
[2026-10-28 15:39:31,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:39:31,269.269 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:39:31,384.384 INFO    ] No existing commands found in stream
[2026-10-28 15:39:36,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:39:36,398.398 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 15:39:37,870.870 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:39:37,873.873 INFO    ] Checking for system updates...
[2026-10-28 15:39:37,910.910 INFO    ] 200
[2026-10-28 15:39:37,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:39:37,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:39:37,969.969 INFO    ] No update needed
[2026-10-28 15:39:37,972.972 INFO    ] Checking for camera pi updates...
[2026-10-28 15:39:38,007.007 INFO    ] 200
[2026-10-28 15:39:38,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:39:38,050.050 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:39:38,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:39:38,147.147 INFO    ] No camera update needed
[2026-10-28 15:39:38,150.150 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:39:38,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:39:38,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:39:38,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:39:40,207.207 INFO    ] ================================================
[2026-10-28 15:39:40,223.223 INFO    ] Launching Daemon at Wed Oct 28 15:39:40 IST 2026
[2026-10-28 15:39:40,233.233 INFO    ] ================================================
[2026-10-28 15:39:40,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:39:40
[2026-10-28 15:39:41,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:39:41,655.655 INFO    ] Initializing speech engine...
[2026-10-28 15:39:41,668.668 INFO    ] 2026-10-28 15:39:41
[2026-10-28 15:39:41,930.930 INFO    ] 2026-10-28 15:39:41
[2026-10-28 15:39:41,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:39:42,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:39:42,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:39:42,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:39:42,535.535 INFO    ] time= 28/10/2026 15:39:42
[2026-10-28 15:39:42,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:39:42,550.550 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:39:42,726.726 INFO    ] No existing commands found in stream
[2026-10-28 15:39:47,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:39:47,754.754 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 15:39:48,553.553 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:39:48,555.555 INFO    ] Checking for system updates...
[2026-10-28 15:39:48,591.591 INFO    ] 200
[2026-10-28 15:39:48,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:39:48,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:39:48,649.649 INFO    ] No update needed
[2026-10-28 15:39:48,651.651 INFO    ] Checking for camera pi updates...
[2026-10-28 15:39:48,688.688 INFO    ] 200
[2026-10-28 15:39:48,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:39:48,735.735 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:39:48,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:39:48,818.818 INFO    ] No camera update needed
[2026-10-28 15:39:48,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:39:48,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:39:48,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:39:48,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:39:50,874.874 INFO    ] ================================================
[2026-10-28 15:39:50,889.889 INFO    ] Launching Daemon at Wed Oct 28 15:39:50 IST 2026
[2026-10-28 15:39:50,900.900 INFO    ] ================================================
[2026-10-28 15:39:51,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:39:51
[2026-10-28 15:39:52,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:39:52,331.331 INFO    ] Initializing speech engine...
[2026-10-28 15:39:52,350.350 INFO    ] 2026-10-28 15:39:52
[2026-10-28 15:39:52,619.619 INFO    ] 2026-10-28 15:39:52
[2026-10-28 15:39:52,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:39:52,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:39:52,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:39:53,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:39:53,198.198 INFO    ] time= 28/10/2026 15:39:53
[2026-10-28 15:39:53,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:39:53,233.233 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:39:53,343.343 INFO    ] No existing commands found in stream
[2026-10-28 15:39:58,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:39:58,366.366 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-28 15:40:02,921.921 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:40:02,925.925 INFO    ] Checking for system updates...
[2026-10-28 15:40:02,977.977 INFO    ] 200
[2026-10-28 15:40:02,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:40:03,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:40:03,063.063 INFO    ] No update needed
[2026-10-28 15:40:03,068.068 INFO    ] Checking for camera pi updates...
[2026-10-28 15:40:03,121.121 INFO    ] 200
[2026-10-28 15:40:03,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:40:03,176.176 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:40:03,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:40:03,603.603 INFO    ] No camera update needed
[2026-10-28 15:40:03,606.606 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:40:03,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:40:03,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:40:03,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:40:05,665.665 INFO    ] ================================================
[2026-10-28 15:40:05,680.680 INFO    ] Launching Daemon at Wed Oct 28 15:40:05 IST 2026
[2026-10-28 15:40:05,691.691 INFO    ] ================================================
[2026-10-28 15:40:06,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:40:06
[2026-10-28 15:40:06,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:40:07,095.095 INFO    ] Initializing speech engine...
[2026-10-28 15:40:07,104.104 INFO    ] 2026-10-28 15:40:07
[2026-10-28 15:40:07,384.384 INFO    ] 2026-10-28 15:40:07
[2026-10-28 15:40:07,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:40:07,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:40:07,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:40:07,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:40:07,955.955 INFO    ] time= 28/10/2026 15:40:07
[2026-10-28 15:40:07,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:40:07,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:40:08,109.109 INFO    ] No existing commands found in stream
[2026-10-28 15:40:13,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:40:13,126.126 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-28 15:40:15,119.119 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:40:15,121.121 INFO    ] Checking for system updates...
[2026-10-28 15:40:15,158.158 INFO    ] 200
[2026-10-28 15:40:15,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:40:15,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:40:15,215.215 INFO    ] No update needed
[2026-10-28 15:40:15,217.217 INFO    ] Checking for camera pi updates...
[2026-10-28 15:40:15,251.251 INFO    ] 200
[2026-10-28 15:40:15,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:40:15,297.297 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:40:15,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:40:15,497.497 INFO    ] No camera update needed
[2026-10-28 15:40:15,499.499 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:40:15,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:40:15,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:40:15,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:40:17,552.552 INFO    ] ================================================
[2026-10-28 15:40:17,571.571 INFO    ] Launching Daemon at Wed Oct 28 15:40:17 IST 2026
[2026-10-28 15:40:17,582.582 INFO    ] ================================================
[2026-10-28 15:40:18,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:40:18
[2026-10-28 15:40:18,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:40:19,185.185 INFO    ] Initializing speech engine...
[2026-10-28 15:40:19,196.196 INFO    ] 2026-10-28 15:40:19
[2026-10-28 15:40:19,501.501 INFO    ] 2026-10-28 15:40:19
[2026-10-28 15:40:19,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:40:19,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:40:19,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:40:20,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:40:20,059.059 INFO    ] time= 28/10/2026 15:40:20
[2026-10-28 15:40:20,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:40:20,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:40:20,272.272 INFO    ] No existing commands found in stream
[2026-10-28 15:40:25,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:40:25,301.301 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-28 15:40:28,189.189 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:40:28,192.192 INFO    ] Checking for system updates...
[2026-10-28 15:40:28,231.231 INFO    ] 200
[2026-10-28 15:40:28,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:40:28,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:40:28,291.291 INFO    ] No update needed
[2026-10-28 15:40:28,294.294 INFO    ] Checking for camera pi updates...
[2026-10-28 15:40:28,329.329 INFO    ] 200
[2026-10-28 15:40:28,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:40:28,373.373 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:40:28,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:40:28,460.460 INFO    ] No camera update needed
[2026-10-28 15:40:28,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:40:28,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:40:28,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:40:28,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:40:30,515.515 INFO    ] ================================================
[2026-10-28 15:40:30,530.530 INFO    ] Launching Daemon at Wed Oct 28 15:40:30 IST 2026
[2026-10-28 15:40:30,541.541 INFO    ] ================================================
[2026-10-28 15:40:31,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:40:31
[2026-10-28 15:40:31,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:40:32,055.055 INFO    ] Initializing speech engine...
[2026-10-28 15:40:32,065.065 INFO    ] 2026-10-28 15:40:32
[2026-10-28 15:40:32,380.380 INFO    ] 2026-10-28 15:40:32
[2026-10-28 15:40:32,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:40:32,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:40:32,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:40:32,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:40:33,004.004 INFO    ] time= 28/10/2026 15:40:32
[2026-10-28 15:40:33,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:40:33,028.028 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:40:33,205.205 INFO    ] No existing commands found in stream
[2026-10-28 15:40:38,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:40:38,238.238 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-28 15:40:40,853.853 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:40:40,856.856 INFO    ] Checking for system updates...
[2026-10-28 15:40:40,892.892 INFO    ] 200
[2026-10-28 15:40:40,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:40:40,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:40:40,951.951 INFO    ] No update needed
[2026-10-28 15:40:40,954.954 INFO    ] Checking for camera pi updates...
[2026-10-28 15:40:40,989.989 INFO    ] 200
[2026-10-28 15:40:40,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:40:41,037.037 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:40:41,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:40:41,127.127 INFO    ] No camera update needed
[2026-10-28 15:40:41,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:40:41,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:40:41,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:40:41,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:40:43,186.186 INFO    ] ================================================
[2026-10-28 15:40:43,201.201 INFO    ] Launching Daemon at Wed Oct 28 15:40:43 IST 2026
[2026-10-28 15:40:43,212.212 INFO    ] ================================================
[2026-10-28 15:40:43,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:40:43
[2026-10-28 15:40:44,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:40:44,620.620 INFO    ] Initializing speech engine...
[2026-10-28 15:40:44,633.633 INFO    ] 2026-10-28 15:40:44
[2026-10-28 15:40:44,898.898 INFO    ] 2026-10-28 15:40:44
[2026-10-28 15:40:44,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:40:45,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:40:45,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:40:45,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:40:45,467.467 INFO    ] time= 28/10/2026 15:40:45
[2026-10-28 15:40:45,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:40:45,491.491 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:40:45,624.624 INFO    ] No existing commands found in stream
[2026-10-28 15:40:50,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:40:50,642.642 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-28 15:40:53,852.852 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:40:53,855.855 INFO    ] Checking for system updates...
[2026-10-28 15:40:53,891.891 INFO    ] 200
[2026-10-28 15:40:53,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:40:53,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:40:53,948.948 INFO    ] No update needed
[2026-10-28 15:40:53,950.950 INFO    ] Checking for camera pi updates...
[2026-10-28 15:40:53,984.984 INFO    ] 200
[2026-10-28 15:40:53,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:40:54,029.029 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:40:54,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:40:54,117.117 INFO    ] No camera update needed
[2026-10-28 15:40:54,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:40:54,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:40:54,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:40:54,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:40:56,176.176 INFO    ] ================================================
[2026-10-28 15:40:56,191.191 INFO    ] Launching Daemon at Wed Oct 28 15:40:56 IST 2026
[2026-10-28 15:40:56,202.202 INFO    ] ================================================
[2026-10-28 15:40:56,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:40:56
[2026-10-28 15:40:57,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:40:57,798.798 INFO    ] Initializing speech engine...
[2026-10-28 15:40:57,811.811 INFO    ] 2026-10-28 15:40:57
[2026-10-28 15:40:58,121.121 INFO    ] 2026-10-28 15:40:58
[2026-10-28 15:40:58,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:40:58,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:40:58,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:40:58,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:40:58,844.844 INFO    ] time= 28/10/2026 15:40:58
[2026-10-28 15:40:58,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:40:58,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:40:59,150.150 INFO    ] No existing commands found in stream
[2026-10-28 15:41:04,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:41:04,184.184 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 15:41:07,652.652 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:41:07,655.655 INFO    ] Checking for system updates...
[2026-10-28 15:41:07,692.692 INFO    ] 200
[2026-10-28 15:41:07,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:41:07,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:41:07,756.756 INFO    ] No update needed
[2026-10-28 15:41:07,759.759 INFO    ] Checking for camera pi updates...
[2026-10-28 15:41:07,793.793 INFO    ] 200
[2026-10-28 15:41:07,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:41:07,837.837 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:41:07,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:41:07,920.920 INFO    ] No camera update needed
[2026-10-28 15:41:07,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:41:07,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:41:07,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:41:07,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:41:09,978.978 INFO    ] ================================================
[2026-10-28 15:41:09,993.993 INFO    ] Launching Daemon at Wed Oct 28 15:41:09 IST 2026
[2026-10-28 15:41:10,004.004 INFO    ] ================================================
[2026-10-28 15:41:10,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:41:10
[2026-10-28 15:41:11,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:41:11,582.582 INFO    ] Initializing speech engine...
[2026-10-28 15:41:11,596.596 INFO    ] 2026-10-28 15:41:11
[2026-10-28 15:41:11,879.879 INFO    ] 2026-10-28 15:41:11
[2026-10-28 15:41:11,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:41:12,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:41:12,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:41:12,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:41:12,458.458 INFO    ] time= 28/10/2026 15:41:12
[2026-10-28 15:41:12,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:41:12,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:41:12,661.661 INFO    ] No existing commands found in stream
[2026-10-28 15:41:17,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:41:17,695.695 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 15:41:21,674.674 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:41:21,677.677 INFO    ] Checking for system updates...
[2026-10-28 15:41:21,714.714 INFO    ] 200
[2026-10-28 15:41:21,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:41:21,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:41:21,771.771 INFO    ] No update needed
[2026-10-28 15:41:21,774.774 INFO    ] Checking for camera pi updates...
[2026-10-28 15:41:21,809.809 INFO    ] 200
[2026-10-28 15:41:21,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:41:21,855.855 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:41:21,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:41:21,948.948 INFO    ] No camera update needed
[2026-10-28 15:41:21,950.950 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:41:21,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:41:21,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:41:21,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:41:24,003.003 INFO    ] ================================================
[2026-10-28 15:41:24,018.018 INFO    ] Launching Daemon at Wed Oct 28 15:41:24 IST 2026
[2026-10-28 15:41:24,029.029 INFO    ] ================================================
[2026-10-28 15:41:24,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:41:24
[2026-10-28 15:41:25,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:41:25,496.496 INFO    ] Initializing speech engine...
[2026-10-28 15:41:25,502.502 INFO    ] 2026-10-28 15:41:25
[2026-10-28 15:41:25,763.763 INFO    ] 2026-10-28 15:41:25
[2026-10-28 15:41:25,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:41:26,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:41:26,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:41:26,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:41:26,510.510 INFO    ] time= 28/10/2026 15:41:26
[2026-10-28 15:41:26,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:41:26,600.600 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:41:26,751.751 INFO    ] No existing commands found in stream
[2026-10-28 15:41:31,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:41:31,766.766 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-28 15:41:36,689.689 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:41:36,692.692 INFO    ] Checking for system updates...
[2026-10-28 15:41:36,728.728 INFO    ] 200
[2026-10-28 15:41:36,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:41:36,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:41:36,785.785 INFO    ] No update needed
[2026-10-28 15:41:36,787.787 INFO    ] Checking for camera pi updates...
[2026-10-28 15:41:36,821.821 INFO    ] 200
[2026-10-28 15:41:36,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:41:36,864.864 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:41:36,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:41:36,954.954 INFO    ] No camera update needed
[2026-10-28 15:41:36,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:41:36,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:41:36,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:41:36,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:41:39,011.011 INFO    ] ================================================
[2026-10-28 15:41:39,026.026 INFO    ] Launching Daemon at Wed Oct 28 15:41:39 IST 2026
[2026-10-28 15:41:39,037.037 INFO    ] ================================================
[2026-10-28 15:41:39,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:41:39
[2026-10-28 15:41:40,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:41:40,441.441 INFO    ] Initializing speech engine...
[2026-10-28 15:41:40,462.462 INFO    ] 2026-10-28 15:41:40
[2026-10-28 15:41:40,722.722 INFO    ] 2026-10-28 15:41:40
[2026-10-28 15:41:40,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:41:41,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:41:41,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:41:41,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:41:41,294.294 INFO    ] time= 28/10/2026 15:41:41
[2026-10-28 15:41:41,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:41:41,321.321 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:41:41,454.454 INFO    ] No existing commands found in stream
[2026-10-28 15:41:46,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:41:46,475.475 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-28 15:41:49,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:41:49,592.592 INFO    ] Checking for system updates...
[2026-10-28 15:41:49,628.628 INFO    ] 200
[2026-10-28 15:41:49,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:41:49,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:41:49,685.685 INFO    ] No update needed
[2026-10-28 15:41:49,687.687 INFO    ] Checking for camera pi updates...
[2026-10-28 15:41:49,720.720 INFO    ] 200
[2026-10-28 15:41:49,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:41:49,767.767 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:41:49,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:41:49,863.863 INFO    ] No camera update needed
[2026-10-28 15:41:49,865.865 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:41:49,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:41:49,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:41:49,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:41:51,918.918 INFO    ] ================================================
[2026-10-28 15:41:51,934.934 INFO    ] Launching Daemon at Wed Oct 28 15:41:51 IST 2026
[2026-10-28 15:41:51,945.945 INFO    ] ================================================
[2026-10-28 15:41:52,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:41:52
[2026-10-28 15:41:53,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:41:53,538.538 INFO    ] Initializing speech engine...
[2026-10-28 15:41:53,544.544 INFO    ] 2026-10-28 15:41:53
[2026-10-28 15:41:53,817.817 INFO    ] 2026-10-28 15:41:53
[2026-10-28 15:41:53,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:41:54,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:41:54,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:41:54,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:41:54,532.532 INFO    ] time= 28/10/2026 15:41:54
[2026-10-28 15:41:54,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:41:54,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:41:54,784.784 INFO    ] No existing commands found in stream
[2026-10-28 15:41:59,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:41:59,819.819 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-28 15:42:02,884.884 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:42:02,888.888 INFO    ] Checking for system updates...
[2026-10-28 15:42:02,929.929 INFO    ] 200
[2026-10-28 15:42:02,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:42:02,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:42:02,995.995 INFO    ] No update needed
[2026-10-28 15:42:02,999.999 INFO    ] Checking for camera pi updates...
[2026-10-28 15:42:03,042.042 INFO    ] 200
[2026-10-28 15:42:03,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:42:03,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:42:03,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:42:03,253.253 INFO    ] No camera update needed
[2026-10-28 15:42:03,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:42:03,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:42:03,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:42:03,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:42:05,310.310 INFO    ] ================================================
[2026-10-28 15:42:05,326.326 INFO    ] Launching Daemon at Wed Oct 28 15:42:05 IST 2026
[2026-10-28 15:42:05,337.337 INFO    ] ================================================
[2026-10-28 15:42:05,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:42:05
[2026-10-28 15:42:06,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:42:06,795.795 INFO    ] Initializing speech engine...
[2026-10-28 15:42:06,809.809 INFO    ] 2026-10-28 15:42:06
[2026-10-28 15:42:07,092.092 INFO    ] 2026-10-28 15:42:07
[2026-10-28 15:42:07,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:42:07,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:42:07,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:42:07,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:42:07,699.699 INFO    ] time= 28/10/2026 15:42:07
[2026-10-28 15:42:07,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:42:07,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:42:07,898.898 INFO    ] No existing commands found in stream
[2026-10-28 15:42:12,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:42:12,925.925 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-28 15:42:14,806.806 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:42:14,808.808 INFO    ] Checking for system updates...
[2026-10-28 15:42:14,844.844 INFO    ] 200
[2026-10-28 15:42:14,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:42:14,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:42:14,902.902 INFO    ] No update needed
[2026-10-28 15:42:14,904.904 INFO    ] Checking for camera pi updates...
[2026-10-28 15:42:14,938.938 INFO    ] 200
[2026-10-28 15:42:14,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:42:14,980.980 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:42:15,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:42:15,058.058 INFO    ] No camera update needed
[2026-10-28 15:42:15,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:42:15,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:42:15,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:42:15,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:42:17,114.114 INFO    ] ================================================
[2026-10-28 15:42:17,129.129 INFO    ] Launching Daemon at Wed Oct 28 15:42:17 IST 2026
[2026-10-28 15:42:17,139.139 INFO    ] ================================================
[2026-10-28 15:42:17,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:42:17
[2026-10-28 15:42:18,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:42:18,554.554 INFO    ] Initializing speech engine...
[2026-10-28 15:42:18,560.560 INFO    ] 2026-10-28 15:42:18
[2026-10-28 15:42:18,810.810 INFO    ] 2026-10-28 15:42:18
[2026-10-28 15:42:18,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:42:19,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:42:19,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:42:19,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:42:19,358.358 INFO    ] time= 28/10/2026 15:42:19
[2026-10-28 15:42:19,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:42:19,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:42:19,511.511 INFO    ] No existing commands found in stream
[2026-10-28 15:42:24,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:42:24,530.530 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-28 15:42:28,070.070 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:42:28,073.073 INFO    ] Checking for system updates...
[2026-10-28 15:42:28,113.113 INFO    ] 200
[2026-10-28 15:42:28,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:42:28,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:42:28,170.170 INFO    ] No update needed
[2026-10-28 15:42:28,173.173 INFO    ] Checking for camera pi updates...
[2026-10-28 15:42:28,210.210 INFO    ] 200
[2026-10-28 15:42:28,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:42:28,266.266 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:42:28,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:42:28,444.444 INFO    ] No camera update needed
[2026-10-28 15:42:28,446.446 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:42:28,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:42:28,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:42:28,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:42:30,499.499 INFO    ] ================================================
[2026-10-28 15:42:30,514.514 INFO    ] Launching Daemon at Wed Oct 28 15:42:30 IST 2026
[2026-10-28 15:42:30,525.525 INFO    ] ================================================
[2026-10-28 15:42:31,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:42:31
[2026-10-28 15:42:31,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:42:31,982.982 INFO    ] Initializing speech engine...
[2026-10-28 15:42:31,990.990 INFO    ] 2026-10-28 15:42:31
[2026-10-28 15:42:32,265.265 INFO    ] 2026-10-28 15:42:32
[2026-10-28 15:42:32,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:42:32,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:42:32,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:42:32,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:42:32,936.936 INFO    ] time= 28/10/2026 15:42:32
[2026-10-28 15:42:32,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:42:33,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:42:33,155.155 INFO    ] No existing commands found in stream
[2026-10-28 15:42:38,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:42:38,186.186 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 15:42:39,522.522 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:42:39,524.524 INFO    ] Checking for system updates...
[2026-10-28 15:42:39,564.564 INFO    ] 200
[2026-10-28 15:42:39,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:42:39,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:42:39,620.620 INFO    ] No update needed
[2026-10-28 15:42:39,622.622 INFO    ] Checking for camera pi updates...
[2026-10-28 15:42:39,655.655 INFO    ] 200
[2026-10-28 15:42:39,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:42:39,702.702 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:42:39,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:42:39,786.786 INFO    ] No camera update needed
[2026-10-28 15:42:39,788.788 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:42:39,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:42:39,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:42:39,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:42:41,841.841 INFO    ] ================================================
[2026-10-28 15:42:41,856.856 INFO    ] Launching Daemon at Wed Oct 28 15:42:41 IST 2026
[2026-10-28 15:42:41,867.867 INFO    ] ================================================
[2026-10-28 15:42:42,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:42:42
[2026-10-28 15:42:43,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:42:43,461.461 INFO    ] Initializing speech engine...
[2026-10-28 15:42:43,469.469 INFO    ] 2026-10-28 15:42:43
[2026-10-28 15:42:43,785.785 INFO    ] 2026-10-28 15:42:43
[2026-10-28 15:42:43,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:42:44,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:42:44,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:42:44,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:42:44,476.476 INFO    ] time= 28/10/2026 15:42:44
[2026-10-28 15:42:44,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:42:44,587.587 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:42:44,715.715 INFO    ] No existing commands found in stream
[2026-10-28 15:42:49,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:42:49,739.739 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-28 15:42:51,713.713 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:42:51,716.716 INFO    ] Checking for system updates...
[2026-10-28 15:42:51,752.752 INFO    ] 200
[2026-10-28 15:42:51,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:42:51,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:42:51,811.811 INFO    ] No update needed
[2026-10-28 15:42:51,814.814 INFO    ] Checking for camera pi updates...
[2026-10-28 15:42:51,853.853 INFO    ] 200
[2026-10-28 15:42:51,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:42:51,901.901 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:42:51,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:42:51,987.987 INFO    ] No camera update needed
[2026-10-28 15:42:51,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:42:51,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:42:51,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:42:52,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:42:54,045.045 INFO    ] ================================================
[2026-10-28 15:42:54,061.061 INFO    ] Launching Daemon at Wed Oct 28 15:42:54 IST 2026
[2026-10-28 15:42:54,072.072 INFO    ] ================================================
[2026-10-28 15:42:54,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:42:54
[2026-10-28 15:42:55,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:42:55,665.665 INFO    ] Initializing speech engine...
[2026-10-28 15:42:55,671.671 INFO    ] 2026-10-28 15:42:55
[2026-10-28 15:42:55,958.958 INFO    ] 2026-10-28 15:42:55
[2026-10-28 15:42:56,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:42:56,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:42:56,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:42:56,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:42:56,674.674 INFO    ] time= 28/10/2026 15:42:56
[2026-10-28 15:42:56,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:42:56,752.752 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:42:56,940.940 INFO    ] No existing commands found in stream
[2026-10-28 15:43:01,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:43:01,961.961 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 15:43:03,441.441 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:43:03,444.444 INFO    ] Checking for system updates...
[2026-10-28 15:43:03,502.502 INFO    ] 200
[2026-10-28 15:43:03,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:43:03,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:43:03,575.575 INFO    ] No update needed
[2026-10-28 15:43:03,578.578 INFO    ] Checking for camera pi updates...
[2026-10-28 15:43:03,615.615 INFO    ] 200
[2026-10-28 15:43:03,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:43:03,657.657 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:43:03,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:43:03,763.763 INFO    ] No camera update needed
[2026-10-28 15:43:03,765.765 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:43:03,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:43:03,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:43:03,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:43:05,817.817 INFO    ] ================================================
[2026-10-28 15:43:05,832.832 INFO    ] Launching Daemon at Wed Oct 28 15:43:05 IST 2026
[2026-10-28 15:43:05,844.844 INFO    ] ================================================
[2026-10-28 15:43:06,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:43:06
[2026-10-28 15:43:07,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:43:07,258.258 INFO    ] Initializing speech engine...
[2026-10-28 15:43:07,281.281 INFO    ] 2026-10-28 15:43:07
[2026-10-28 15:43:07,538.538 INFO    ] 2026-10-28 15:43:07
[2026-10-28 15:43:07,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:43:07,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:43:07,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:43:08,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:43:08,109.109 INFO    ] time= 28/10/2026 15:43:08
[2026-10-28 15:43:08,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:43:08,145.145 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:43:08,267.267 INFO    ] No existing commands found in stream
[2026-10-28 15:43:13,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:43:13,290.290 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 15:43:15,118.118 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:43:15,120.120 INFO    ] Checking for system updates...
[2026-10-28 15:43:15,155.155 INFO    ] 200
[2026-10-28 15:43:15,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:43:15,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:43:15,212.212 INFO    ] No update needed
[2026-10-28 15:43:15,215.215 INFO    ] Checking for camera pi updates...
[2026-10-28 15:43:15,252.252 INFO    ] 200
[2026-10-28 15:43:15,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:43:15,294.294 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:43:15,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:43:15,383.383 INFO    ] No camera update needed
[2026-10-28 15:43:15,385.385 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:43:15,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:43:15,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:43:15,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:43:17,438.438 INFO    ] ================================================
[2026-10-28 15:43:17,454.454 INFO    ] Launching Daemon at Wed Oct 28 15:43:17 IST 2026
[2026-10-28 15:43:17,466.466 INFO    ] ================================================
[2026-10-28 15:43:18,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:43:18
[2026-10-28 15:43:18,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:43:18,892.892 INFO    ] Initializing speech engine...
[2026-10-28 15:43:18,902.902 INFO    ] 2026-10-28 15:43:18
[2026-10-28 15:43:19,152.152 INFO    ] 2026-10-28 15:43:19
[2026-10-28 15:43:19,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:43:19,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:43:19,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:43:19,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:43:19,726.726 INFO    ] time= 28/10/2026 15:43:19
[2026-10-28 15:43:19,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:43:19,748.748 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:43:19,896.896 INFO    ] No existing commands found in stream
[2026-10-28 15:43:24,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:43:24,936.936 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-28 15:43:26,118.118 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:43:26,121.121 INFO    ] Checking for system updates...
[2026-10-28 15:43:26,156.156 INFO    ] 200
[2026-10-28 15:43:26,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:43:26,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:43:26,221.221 INFO    ] No update needed
[2026-10-28 15:43:26,224.224 INFO    ] Checking for camera pi updates...
[2026-10-28 15:43:26,257.257 INFO    ] 200
[2026-10-28 15:43:26,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:43:26,305.305 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:43:26,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:43:26,400.400 INFO    ] No camera update needed
[2026-10-28 15:43:26,402.402 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:43:26,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:43:26,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:43:26,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:43:28,456.456 INFO    ] ================================================
[2026-10-28 15:43:28,472.472 INFO    ] Launching Daemon at Wed Oct 28 15:43:28 IST 2026
[2026-10-28 15:43:28,484.484 INFO    ] ================================================
[2026-10-28 15:43:29,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:43:29
[2026-10-28 15:43:29,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:43:29,939.939 INFO    ] Initializing speech engine...
[2026-10-28 15:43:29,948.948 INFO    ] 2026-10-28 15:43:29
[2026-10-28 15:43:30,209.209 INFO    ] 2026-10-28 15:43:30
[2026-10-28 15:43:30,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:43:30,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:43:30,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:43:30,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:43:30,763.763 INFO    ] time= 28/10/2026 15:43:30
[2026-10-28 15:43:30,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:43:30,798.798 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:43:30,924.924 INFO    ] No existing commands found in stream
[2026-10-28 15:43:35,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:43:35,952.952 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 15:43:39,351.351 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:43:39,354.354 INFO    ] Checking for system updates...
[2026-10-28 15:43:39,393.393 INFO    ] 200
[2026-10-28 15:43:39,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:43:39,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:43:39,456.456 INFO    ] No update needed
[2026-10-28 15:43:39,458.458 INFO    ] Checking for camera pi updates...
[2026-10-28 15:43:39,492.492 INFO    ] 200
[2026-10-28 15:43:39,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:43:39,535.535 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:43:39,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:43:39,616.616 INFO    ] No camera update needed
[2026-10-28 15:43:39,619.619 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:43:39,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:43:39,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:43:39,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:43:41,674.674 INFO    ] ================================================
[2026-10-28 15:43:41,689.689 INFO    ] Launching Daemon at Wed Oct 28 15:43:41 IST 2026
[2026-10-28 15:43:41,700.700 INFO    ] ================================================
[2026-10-28 15:43:42,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:43:42
[2026-10-28 15:43:42,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:43:43,161.161 INFO    ] Initializing speech engine...
[2026-10-28 15:43:43,168.168 INFO    ] 2026-10-28 15:43:43
[2026-10-28 15:43:43,430.430 INFO    ] 2026-10-28 15:43:43
[2026-10-28 15:43:43,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:43:43,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:43:43,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:43:44,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:43:44,008.008 INFO    ] time= 28/10/2026 15:43:44
[2026-10-28 15:43:44,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:43:44,056.056 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:43:44,182.182 INFO    ] No existing commands found in stream
[2026-10-28 15:43:49,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:43:49,205.205 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-28 15:43:53,472.472 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:43:53,475.475 INFO    ] Checking for system updates...
[2026-10-28 15:43:53,514.514 INFO    ] 200
[2026-10-28 15:43:53,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:43:53,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:43:53,571.571 INFO    ] No update needed
[2026-10-28 15:43:53,573.573 INFO    ] Checking for camera pi updates...
[2026-10-28 15:43:53,607.607 INFO    ] 200
[2026-10-28 15:43:53,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:43:53,654.654 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:43:53,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:43:53,754.754 INFO    ] No camera update needed
[2026-10-28 15:43:53,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:43:53,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:43:53,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:43:53,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:43:55,811.811 INFO    ] ================================================
[2026-10-28 15:43:55,827.827 INFO    ] Launching Daemon at Wed Oct 28 15:43:55 IST 2026
[2026-10-28 15:43:55,838.838 INFO    ] ================================================
[2026-10-28 15:43:56,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:43:56
[2026-10-28 15:43:56,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:43:57,246.246 INFO    ] Initializing speech engine...
[2026-10-28 15:43:57,260.260 INFO    ] 2026-10-28 15:43:57
[2026-10-28 15:43:57,541.541 INFO    ] 2026-10-28 15:43:57
[2026-10-28 15:43:57,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:43:57,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:43:57,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:43:58,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:43:58,163.163 INFO    ] time= 28/10/2026 15:43:58
[2026-10-28 15:43:58,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:43:58,180.180 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:43:58,324.324 INFO    ] No existing commands found in stream
[2026-10-28 15:44:03,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:44:03,349.349 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 15:44:06,952.952 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:44:06,954.954 INFO    ] Checking for system updates...
[2026-10-28 15:44:06,994.994 INFO    ] 200
[2026-10-28 15:44:06,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:44:07,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:44:07,050.050 INFO    ] No update needed
[2026-10-28 15:44:07,053.053 INFO    ] Checking for camera pi updates...
[2026-10-28 15:44:07,086.086 INFO    ] 200
[2026-10-28 15:44:07,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:44:07,134.134 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:44:07,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:44:07,214.214 INFO    ] No camera update needed
[2026-10-28 15:44:07,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:44:07,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:44:07,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:44:07,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:44:09,269.269 INFO    ] ================================================
[2026-10-28 15:44:09,284.284 INFO    ] Launching Daemon at Wed Oct 28 15:44:09 IST 2026
[2026-10-28 15:44:09,295.295 INFO    ] ================================================
[2026-10-28 15:44:09,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:44:09
[2026-10-28 15:44:10,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:44:10,897.897 INFO    ] Initializing speech engine...
[2026-10-28 15:44:10,907.907 INFO    ] 2026-10-28 15:44:10
[2026-10-28 15:44:11,195.195 INFO    ] 2026-10-28 15:44:11
[2026-10-28 15:44:11,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:44:11,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:44:11,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:44:11,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:44:11,762.762 INFO    ] time= 28/10/2026 15:44:11
[2026-10-28 15:44:11,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:44:11,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:44:11,929.929 INFO    ] No existing commands found in stream
[2026-10-28 15:44:16,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:44:16,963.963 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-28 15:44:19,354.354 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:44:19,356.356 INFO    ] Checking for system updates...
[2026-10-28 15:44:19,396.396 INFO    ] 200
[2026-10-28 15:44:19,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:44:19,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:44:19,452.452 INFO    ] No update needed
[2026-10-28 15:44:19,455.455 INFO    ] Checking for camera pi updates...
[2026-10-28 15:44:19,492.492 INFO    ] 200
[2026-10-28 15:44:19,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:44:19,535.535 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:44:19,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:44:19,624.624 INFO    ] No camera update needed
[2026-10-28 15:44:19,627.627 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:44:19,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:44:19,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:44:19,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:44:21,679.679 INFO    ] ================================================
[2026-10-28 15:44:21,694.694 INFO    ] Launching Daemon at Wed Oct 28 15:44:21 IST 2026
[2026-10-28 15:44:21,705.705 INFO    ] ================================================
[2026-10-28 15:44:22,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:44:22
[2026-10-28 15:44:23,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:44:23,336.336 INFO    ] Initializing speech engine...
[2026-10-28 15:44:23,351.351 INFO    ] 2026-10-28 15:44:23
[2026-10-28 15:44:23,664.664 INFO    ] 2026-10-28 15:44:23
[2026-10-28 15:44:23,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:44:23,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:44:24,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:44:24,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:44:24,320.320 INFO    ] time= 28/10/2026 15:44:24
[2026-10-28 15:44:24,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:44:24,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:44:24,606.606 INFO    ] No existing commands found in stream
[2026-10-28 15:44:29,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:44:29,629.629 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-28 15:44:33,157.157 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:44:33,161.161 INFO    ] Checking for system updates...
[2026-10-28 15:44:33,204.204 INFO    ] 200
[2026-10-28 15:44:33,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:44:33,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:44:33,262.262 INFO    ] No update needed
[2026-10-28 15:44:33,265.265 INFO    ] Checking for camera pi updates...
[2026-10-28 15:44:33,301.301 INFO    ] 200
[2026-10-28 15:44:33,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:44:33,345.345 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:44:33,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:44:33,451.451 INFO    ] No camera update needed
[2026-10-28 15:44:33,453.453 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:44:33,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:44:33,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:44:33,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:44:35,507.507 INFO    ] ================================================
[2026-10-28 15:44:35,522.522 INFO    ] Launching Daemon at Wed Oct 28 15:44:35 IST 2026
[2026-10-28 15:44:35,533.533 INFO    ] ================================================
[2026-10-28 15:44:36,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:44:36
[2026-10-28 15:44:36,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:44:36,943.943 INFO    ] Initializing speech engine...
[2026-10-28 15:44:36,956.956 INFO    ] 2026-10-28 15:44:36
[2026-10-28 15:44:37,218.218 INFO    ] 2026-10-28 15:44:37
[2026-10-28 15:44:37,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:44:37,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:44:37,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:44:37,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:44:37,791.791 INFO    ] time= 28/10/2026 15:44:37
[2026-10-28 15:44:37,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:44:37,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:44:37,958.958 INFO    ] No existing commands found in stream
[2026-10-28 15:44:42,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:44:42,986.986 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-28 15:44:45,574.574 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:44:45,577.577 INFO    ] Checking for system updates...
[2026-10-28 15:44:45,616.616 INFO    ] 200
[2026-10-28 15:44:45,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:44:45,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:44:45,679.679 INFO    ] No update needed
[2026-10-28 15:44:45,681.681 INFO    ] Checking for camera pi updates...
[2026-10-28 15:44:45,715.715 INFO    ] 200
[2026-10-28 15:44:45,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:44:45,763.763 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:44:45,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:44:45,861.861 INFO    ] No camera update needed
[2026-10-28 15:44:45,863.863 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:44:45,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:44:45,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:44:45,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:44:47,919.919 INFO    ] ================================================
[2026-10-28 15:44:47,934.934 INFO    ] Launching Daemon at Wed Oct 28 15:44:47 IST 2026
[2026-10-28 15:44:47,945.945 INFO    ] ================================================
[2026-10-28 15:44:48,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:44:48
[2026-10-28 15:44:49,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:44:49,544.544 INFO    ] Initializing speech engine...
[2026-10-28 15:44:49,551.551 INFO    ] 2026-10-28 15:44:49
[2026-10-28 15:44:49,831.831 INFO    ] 2026-10-28 15:44:49
[2026-10-28 15:44:49,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:44:50,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:44:50,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:44:50,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:44:50,402.402 INFO    ] time= 28/10/2026 15:44:50
[2026-10-28 15:44:50,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:44:50,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:44:50,595.595 INFO    ] No existing commands found in stream
[2026-10-28 15:44:55,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:44:55,629.629 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 15:44:59,379.379 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:44:59,383.383 INFO    ] Checking for system updates...
[2026-10-28 15:44:59,429.429 INFO    ] 200
[2026-10-28 15:44:59,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:44:59,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:44:59,499.499 INFO    ] No update needed
[2026-10-28 15:44:59,502.502 INFO    ] Checking for camera pi updates...
[2026-10-28 15:44:59,541.541 INFO    ] 200
[2026-10-28 15:44:59,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:44:59,591.591 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:44:59,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:44:59,664.664 INFO    ] No camera update needed
[2026-10-28 15:44:59,666.666 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:44:59,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:44:59,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:44:59,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:45:01,720.720 INFO    ] ================================================
[2026-10-28 15:45:01,734.734 INFO    ] Launching Daemon at Wed Oct 28 15:45:01 IST 2026
[2026-10-28 15:45:01,745.745 INFO    ] ================================================
[2026-10-28 15:45:02,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:45:02
[2026-10-28 15:45:03,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:45:03,975.975 INFO    ] Initializing speech engine...
[2026-10-28 15:45:03,988.988 INFO    ] 2026-10-28 15:45:03
[2026-10-28 15:45:04,313.313 INFO    ] 2026-10-28 15:45:04
[2026-10-28 15:45:04,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:45:04,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:45:04,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:45:04,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:45:04,867.867 INFO    ] time= 28/10/2026 15:45:04
[2026-10-28 15:45:04,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:45:04,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:45:05,023.023 INFO    ] No existing commands found in stream
[2026-10-28 15:45:10,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:45:10,045.045 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-28 15:45:11,110.110 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:45:11,113.113 INFO    ] Checking for system updates...
[2026-10-28 15:45:11,149.149 INFO    ] 200
[2026-10-28 15:45:11,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:45:11,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:45:11,209.209 INFO    ] No update needed
[2026-10-28 15:45:11,211.211 INFO    ] Checking for camera pi updates...
[2026-10-28 15:45:11,248.248 INFO    ] 200
[2026-10-28 15:45:11,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:45:11,296.296 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:45:11,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:45:11,378.378 INFO    ] No camera update needed
[2026-10-28 15:45:11,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:45:11,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:45:11,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:45:11,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:45:13,433.433 INFO    ] ================================================
[2026-10-28 15:45:13,449.449 INFO    ] Launching Daemon at Wed Oct 28 15:45:13 IST 2026
[2026-10-28 15:45:13,461.461 INFO    ] ================================================
[2026-10-28 15:45:14,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:45:14
[2026-10-28 15:45:14,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:45:14,918.918 INFO    ] Initializing speech engine...
[2026-10-28 15:45:14,927.927 INFO    ] 2026-10-28 15:45:14
[2026-10-28 15:45:15,185.185 INFO    ] 2026-10-28 15:45:15
[2026-10-28 15:45:15,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:45:15,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:45:15,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:45:15,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:45:15,741.741 INFO    ] time= 28/10/2026 15:45:15
[2026-10-28 15:45:15,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:45:15,778.778 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:45:15,910.910 INFO    ] No existing commands found in stream
[2026-10-28 15:45:20,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:45:20,938.938 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-28 15:45:24,237.237 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:45:24,240.240 INFO    ] Checking for system updates...
[2026-10-28 15:45:24,280.280 INFO    ] 200
[2026-10-28 15:45:24,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:45:24,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:45:24,344.344 INFO    ] No update needed
[2026-10-28 15:45:24,346.346 INFO    ] Checking for camera pi updates...
[2026-10-28 15:45:24,380.380 INFO    ] 200
[2026-10-28 15:45:24,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:45:24,427.427 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:45:24,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:45:24,519.519 INFO    ] No camera update needed
[2026-10-28 15:45:24,522.522 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:45:24,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:45:24,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:45:24,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:45:26,577.577 INFO    ] ================================================
[2026-10-28 15:45:26,593.593 INFO    ] Launching Daemon at Wed Oct 28 15:45:26 IST 2026
[2026-10-28 15:45:26,604.604 INFO    ] ================================================
[2026-10-28 15:45:27,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:45:27
[2026-10-28 15:45:27,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:45:28,049.049 INFO    ] Initializing speech engine...
[2026-10-28 15:45:28,057.057 INFO    ] 2026-10-28 15:45:28
[2026-10-28 15:45:28,328.328 INFO    ] 2026-10-28 15:45:28
[2026-10-28 15:45:28,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:45:28,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:45:28,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:45:28,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:45:28,898.898 INFO    ] time= 28/10/2026 15:45:28
[2026-10-28 15:45:28,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:45:28,913.913 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:45:29,054.054 INFO    ] No existing commands found in stream
[2026-10-28 15:45:34,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:45:34,088.088 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-28 15:45:36,846.846 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:45:36,849.849 INFO    ] Checking for system updates...
[2026-10-28 15:45:36,884.884 INFO    ] 200
[2026-10-28 15:45:36,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:45:36,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:45:36,941.941 INFO    ] No update needed
[2026-10-28 15:45:36,944.944 INFO    ] Checking for camera pi updates...
[2026-10-28 15:45:36,978.978 INFO    ] 200
[2026-10-28 15:45:36,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:45:37,021.021 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:45:37,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:45:37,112.112 INFO    ] No camera update needed
[2026-10-28 15:45:37,115.115 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:45:37,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:45:37,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:45:37,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:45:39,174.174 INFO    ] ================================================
[2026-10-28 15:45:39,190.190 INFO    ] Launching Daemon at Wed Oct 28 15:45:39 IST 2026
[2026-10-28 15:45:39,201.201 INFO    ] ================================================
[2026-10-28 15:45:39,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:45:39
[2026-10-28 15:45:40,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:45:40,644.644 INFO    ] Initializing speech engine...
[2026-10-28 15:45:40,650.650 INFO    ] 2026-10-28 15:45:40
[2026-10-28 15:45:40,910.910 INFO    ] 2026-10-28 15:45:40
[2026-10-28 15:45:40,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:45:41,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:45:41,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:45:41,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:45:41,466.466 INFO    ] time= 28/10/2026 15:45:41
[2026-10-28 15:45:41,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:45:41,503.503 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:45:41,625.625 INFO    ] No existing commands found in stream
[2026-10-28 15:45:46,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:45:46,653.653 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-28 15:45:49,149.149 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:45:49,151.151 INFO    ] Checking for system updates...
[2026-10-28 15:45:49,195.195 INFO    ] 200
[2026-10-28 15:45:49,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:45:49,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:45:49,267.267 INFO    ] No update needed
[2026-10-28 15:45:49,270.270 INFO    ] Checking for camera pi updates...
[2026-10-28 15:45:49,308.308 INFO    ] 200
[2026-10-28 15:45:49,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:45:49,351.351 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:45:49,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:45:49,442.442 INFO    ] No camera update needed
[2026-10-28 15:45:49,444.444 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:45:49,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:45:49,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:45:49,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:45:51,500.500 INFO    ] ================================================
[2026-10-28 15:45:51,516.516 INFO    ] Launching Daemon at Wed Oct 28 15:45:51 IST 2026
[2026-10-28 15:45:51,527.527 INFO    ] ================================================
[2026-10-28 15:45:52,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:45:52
[2026-10-28 15:45:52,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:45:52,939.939 INFO    ] Initializing speech engine...
[2026-10-28 15:45:52,956.956 INFO    ] 2026-10-28 15:45:52
[2026-10-28 15:45:53,202.202 INFO    ] 2026-10-28 15:45:53
[2026-10-28 15:45:53,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:45:53,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:45:53,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:45:53,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:45:53,756.756 INFO    ] time= 28/10/2026 15:45:53
[2026-10-28 15:45:53,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:45:53,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:45:53,937.937 INFO    ] No existing commands found in stream
[2026-10-28 15:45:58,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:45:58,970.970 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-28 15:46:00,912.912 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:46:00,915.915 INFO    ] Checking for system updates...
[2026-10-28 15:46:00,952.952 INFO    ] 200
[2026-10-28 15:46:00,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:46:01,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:46:01,012.012 INFO    ] No update needed
[2026-10-28 15:46:01,015.015 INFO    ] Checking for camera pi updates...
[2026-10-28 15:46:01,053.053 INFO    ] 200
[2026-10-28 15:46:01,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:46:01,097.097 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:46:01,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:46:01,186.186 INFO    ] No camera update needed
[2026-10-28 15:46:01,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:46:01,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:46:01,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:46:01,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:46:03,245.245 INFO    ] ================================================
[2026-10-28 15:46:03,260.260 INFO    ] Launching Daemon at Wed Oct 28 15:46:03 IST 2026
[2026-10-28 15:46:03,271.271 INFO    ] ================================================
[2026-10-28 15:46:03,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:46:03
[2026-10-28 15:46:04,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:46:04,758.758 INFO    ] Initializing speech engine...
[2026-10-28 15:46:04,777.777 INFO    ] 2026-10-28 15:46:04
[2026-10-28 15:46:05,026.026 INFO    ] 2026-10-28 15:46:05
[2026-10-28 15:46:05,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:46:05,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:46:05,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:46:06,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:46:06,156.156 INFO    ] time= 28/10/2026 15:46:06
[2026-10-28 15:46:06,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:46:06,210.210 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:46:06,346.346 INFO    ] No existing commands found in stream
[2026-10-28 15:46:11,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:46:11,379.379 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-28 15:46:14,765.765 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:46:14,768.768 INFO    ] Checking for system updates...
[2026-10-28 15:46:14,804.804 INFO    ] 200
[2026-10-28 15:46:14,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:46:14,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:46:14,867.867 INFO    ] No update needed
[2026-10-28 15:46:14,869.869 INFO    ] Checking for camera pi updates...
[2026-10-28 15:46:14,903.903 INFO    ] 200
[2026-10-28 15:46:14,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:46:14,945.945 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:46:15,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:46:15,028.028 INFO    ] No camera update needed
[2026-10-28 15:46:15,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:46:15,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:46:15,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:46:15,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:46:17,084.084 INFO    ] ================================================
[2026-10-28 15:46:17,099.099 INFO    ] Launching Daemon at Wed Oct 28 15:46:17 IST 2026
[2026-10-28 15:46:17,109.109 INFO    ] ================================================
[2026-10-28 15:46:17,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:46:17
[2026-10-28 15:46:18,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:46:18,528.528 INFO    ] Initializing speech engine...
[2026-10-28 15:46:18,537.537 INFO    ] 2026-10-28 15:46:18
[2026-10-28 15:46:18,788.788 INFO    ] 2026-10-28 15:46:18
[2026-10-28 15:46:18,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:46:19,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:46:19,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:46:19,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:46:19,355.355 INFO    ] time= 28/10/2026 15:46:19
[2026-10-28 15:46:19,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:46:19,380.380 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:46:19,512.512 INFO    ] No existing commands found in stream
[2026-10-28 15:46:24,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:46:24,528.528 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-28 15:46:26,815.815 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:46:26,818.818 INFO    ] Checking for system updates...
[2026-10-28 15:46:26,854.854 INFO    ] 200
[2026-10-28 15:46:26,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:46:26,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:46:26,912.912 INFO    ] No update needed
[2026-10-28 15:46:26,914.914 INFO    ] Checking for camera pi updates...
[2026-10-28 15:46:26,948.948 INFO    ] 200
[2026-10-28 15:46:26,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:46:26,990.990 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:46:27,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:46:27,074.074 INFO    ] No camera update needed
[2026-10-28 15:46:27,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:46:27,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:46:27,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:46:27,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:46:29,129.129 INFO    ] ================================================
[2026-10-28 15:46:29,144.144 INFO    ] Launching Daemon at Wed Oct 28 15:46:29 IST 2026
[2026-10-28 15:46:29,155.155 INFO    ] ================================================
[2026-10-28 15:46:29,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:46:29
[2026-10-28 15:46:30,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:46:30,610.610 INFO    ] Initializing speech engine...
[2026-10-28 15:46:30,616.616 INFO    ] 2026-10-28 15:46:30
[2026-10-28 15:46:30,864.864 INFO    ] 2026-10-28 15:46:30
[2026-10-28 15:46:30,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:46:31,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:46:31,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:46:31,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:46:31,419.419 INFO    ] time= 28/10/2026 15:46:31
[2026-10-28 15:46:31,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:46:31,449.449 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:46:31,586.586 INFO    ] No existing commands found in stream
[2026-10-28 15:46:36,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:46:36,619.619 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-28 15:46:37,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:46:37,369.369 INFO    ] Checking for system updates...
[2026-10-28 15:46:37,405.405 INFO    ] 200
[2026-10-28 15:46:37,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:46:37,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:46:37,466.466 INFO    ] No update needed
[2026-10-28 15:46:37,469.469 INFO    ] Checking for camera pi updates...
[2026-10-28 15:46:37,502.502 INFO    ] 200
[2026-10-28 15:46:37,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:46:37,550.550 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:46:37,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:46:37,748.748 INFO    ] No camera update needed
[2026-10-28 15:46:37,750.750 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:46:37,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:46:37,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:46:37,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:46:39,804.804 INFO    ] ================================================
[2026-10-28 15:46:39,818.818 INFO    ] Launching Daemon at Wed Oct 28 15:46:39 IST 2026
[2026-10-28 15:46:39,829.829 INFO    ] ================================================
[2026-10-28 15:46:40,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:46:40
[2026-10-28 15:46:40,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:46:41,229.229 INFO    ] Initializing speech engine...
[2026-10-28 15:46:41,252.252 INFO    ] 2026-10-28 15:46:41
[2026-10-28 15:46:41,508.508 INFO    ] 2026-10-28 15:46:41
[2026-10-28 15:46:41,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:46:41,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:46:41,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:46:42,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:46:42,069.069 INFO    ] time= 28/10/2026 15:46:42
[2026-10-28 15:46:42,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:46:42,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:46:42,224.224 INFO    ] No existing commands found in stream
[2026-10-28 15:46:47,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:46:47,238.238 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-28 15:46:48,889.889 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:46:48,892.892 INFO    ] Checking for system updates...
[2026-10-28 15:46:48,928.928 INFO    ] 200
[2026-10-28 15:46:48,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:46:48,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:46:48,985.985 INFO    ] No update needed
[2026-10-28 15:46:48,987.987 INFO    ] Checking for camera pi updates...
[2026-10-28 15:46:49,024.024 INFO    ] 200
[2026-10-28 15:46:49,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:46:49,067.067 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:46:49,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:46:49,149.149 INFO    ] No camera update needed
[2026-10-28 15:46:49,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:46:49,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:46:49,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:46:49,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:46:51,203.203 INFO    ] ================================================
[2026-10-28 15:46:51,218.218 INFO    ] Launching Daemon at Wed Oct 28 15:46:51 IST 2026
[2026-10-28 15:46:51,229.229 INFO    ] ================================================
[2026-10-28 15:46:51,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:46:51
[2026-10-28 15:46:52,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:46:52,822.822 INFO    ] Initializing speech engine...
[2026-10-28 15:46:52,834.834 INFO    ] 2026-10-28 15:46:52
[2026-10-28 15:46:53,142.142 INFO    ] 2026-10-28 15:46:53
[2026-10-28 15:46:53,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:46:53,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:46:53,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:46:53,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:46:53,736.736 INFO    ] time= 28/10/2026 15:46:53
[2026-10-28 15:46:53,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:46:53,844.844 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:46:54,017.017 INFO    ] No existing commands found in stream
[2026-10-28 15:46:59,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:46:59,047.047 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 15:47:03,118.118 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:47:03,124.124 INFO    ] Checking for system updates...
[2026-10-28 15:47:03,175.175 INFO    ] 200
[2026-10-28 15:47:03,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:47:03,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:47:03,245.245 INFO    ] No update needed
[2026-10-28 15:47:03,247.247 INFO    ] Checking for camera pi updates...
[2026-10-28 15:47:03,292.292 INFO    ] 200
[2026-10-28 15:47:03,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:47:03,340.340 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:47:03,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:47:03,448.448 INFO    ] No camera update needed
[2026-10-28 15:47:03,451.451 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:47:03,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:47:03,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:47:03,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:47:05,503.503 INFO    ] ================================================
[2026-10-28 15:47:05,518.518 INFO    ] Launching Daemon at Wed Oct 28 15:47:05 IST 2026
[2026-10-28 15:47:05,528.528 INFO    ] ================================================
[2026-10-28 15:47:06,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:47:06
[2026-10-28 15:47:06,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:47:06,977.977 INFO    ] Initializing speech engine...
[2026-10-28 15:47:06,992.992 INFO    ] 2026-10-28 15:47:06
[2026-10-28 15:47:07,267.267 INFO    ] 2026-10-28 15:47:07
[2026-10-28 15:47:07,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:47:07,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:47:07,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:47:07,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:47:07,826.826 INFO    ] time= 28/10/2026 15:47:07
[2026-10-28 15:47:07,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:47:07,910.910 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:47:08,043.043 INFO    ] No existing commands found in stream
[2026-10-28 15:47:13,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:47:13,063.063 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 15:47:15,352.352 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:47:15,355.355 INFO    ] Checking for system updates...
[2026-10-28 15:47:15,395.395 INFO    ] 200
[2026-10-28 15:47:15,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:47:15,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:47:15,452.452 INFO    ] No update needed
[2026-10-28 15:47:15,455.455 INFO    ] Checking for camera pi updates...
[2026-10-28 15:47:15,489.489 INFO    ] 200
[2026-10-28 15:47:15,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:47:15,532.532 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:47:15,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:47:15,625.625 INFO    ] No camera update needed
[2026-10-28 15:47:15,627.627 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:47:15,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:47:15,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:47:15,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:47:17,679.679 INFO    ] ================================================
[2026-10-28 15:47:17,694.694 INFO    ] Launching Daemon at Wed Oct 28 15:47:17 IST 2026
[2026-10-28 15:47:17,704.704 INFO    ] ================================================
[2026-10-28 15:47:18,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:47:18
[2026-10-28 15:47:18,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:47:19,129.129 INFO    ] Initializing speech engine...
[2026-10-28 15:47:19,137.137 INFO    ] 2026-10-28 15:47:19
[2026-10-28 15:47:19,411.411 INFO    ] 2026-10-28 15:47:19
[2026-10-28 15:47:19,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:47:19,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:47:19,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:47:19,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:47:19,986.986 INFO    ] time= 28/10/2026 15:47:19
[2026-10-28 15:47:19,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:47:20,011.011 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:47:20,140.140 INFO    ] No existing commands found in stream
[2026-10-28 15:47:25,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:47:25,160.160 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-28 15:47:26,272.272 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:47:26,276.276 INFO    ] Checking for system updates...
[2026-10-28 15:47:26,313.313 INFO    ] 200
[2026-10-28 15:47:26,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:47:26,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:47:26,380.380 INFO    ] No update needed
[2026-10-28 15:47:26,382.382 INFO    ] Checking for camera pi updates...
[2026-10-28 15:47:26,420.420 INFO    ] 200
[2026-10-28 15:47:26,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:47:26,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:47:26,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:47:26,556.556 INFO    ] No camera update needed
[2026-10-28 15:47:26,559.559 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:47:26,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:47:26,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:47:26,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:47:28,613.613 INFO    ] ================================================
[2026-10-28 15:47:28,628.628 INFO    ] Launching Daemon at Wed Oct 28 15:47:28 IST 2026
[2026-10-28 15:47:28,639.639 INFO    ] ================================================
[2026-10-28 15:47:29,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:47:29
[2026-10-28 15:47:29,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:47:30,042.042 INFO    ] Initializing speech engine...
[2026-10-28 15:47:30,050.050 INFO    ] 2026-10-28 15:47:30
[2026-10-28 15:47:30,326.326 INFO    ] 2026-10-28 15:47:30
[2026-10-28 15:47:30,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:47:30,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:47:30,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:47:30,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:47:30,902.902 INFO    ] time= 28/10/2026 15:47:30
[2026-10-28 15:47:30,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:47:30,925.925 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:47:31,035.035 INFO    ] No existing commands found in stream
[2026-10-28 15:47:36,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:47:36,068.068 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-28 15:47:38,430.430 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:47:38,433.433 INFO    ] Checking for system updates...
[2026-10-28 15:47:38,473.473 INFO    ] 200
[2026-10-28 15:47:38,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:47:38,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:47:38,538.538 INFO    ] No update needed
[2026-10-28 15:47:38,540.540 INFO    ] Checking for camera pi updates...
[2026-10-28 15:47:38,574.574 INFO    ] 200
[2026-10-28 15:47:38,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:47:38,618.618 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:47:38,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:47:38,705.705 INFO    ] No camera update needed
[2026-10-28 15:47:38,707.707 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:47:38,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:47:38,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:47:38,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:47:40,761.761 INFO    ] ================================================
[2026-10-28 15:47:40,778.778 INFO    ] Launching Daemon at Wed Oct 28 15:47:40 IST 2026
[2026-10-28 15:47:40,789.789 INFO    ] ================================================
[2026-10-28 15:47:41,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:47:41
[2026-10-28 15:47:41,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:47:42,213.213 INFO    ] Initializing speech engine...
[2026-10-28 15:47:42,222.222 INFO    ] 2026-10-28 15:47:42
[2026-10-28 15:47:42,473.473 INFO    ] 2026-10-28 15:47:42
[2026-10-28 15:47:42,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:47:42,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:47:42,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:47:42,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:47:43,044.044 INFO    ] time= 28/10/2026 15:47:43
[2026-10-28 15:47:43,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:47:43,066.066 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:47:43,206.206 INFO    ] No existing commands found in stream
[2026-10-28 15:47:48,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:47:48,223.223 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-28 15:47:50,792.792 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:47:50,795.795 INFO    ] Checking for system updates...
[2026-10-28 15:47:50,830.830 INFO    ] 200
[2026-10-28 15:47:50,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:47:50,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:47:50,896.896 INFO    ] No update needed
[2026-10-28 15:47:50,898.898 INFO    ] Checking for camera pi updates...
[2026-10-28 15:47:50,932.932 INFO    ] 200
[2026-10-28 15:47:50,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:47:50,976.976 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:47:51,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:47:51,027.027 INFO    ] No camera update needed
[2026-10-28 15:47:51,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:47:51,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:47:51,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:47:51,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:47:53,086.086 INFO    ] ================================================
[2026-10-28 15:47:53,101.101 INFO    ] Launching Daemon at Wed Oct 28 15:47:53 IST 2026
[2026-10-28 15:47:53,112.112 INFO    ] ================================================
[2026-10-28 15:47:53,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:47:53
[2026-10-28 15:47:54,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:47:54,582.582 INFO    ] Initializing speech engine...
[2026-10-28 15:47:54,589.589 INFO    ] 2026-10-28 15:47:54
[2026-10-28 15:47:54,851.851 INFO    ] 2026-10-28 15:47:54
[2026-10-28 15:47:54,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:47:55,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:47:55,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:47:55,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:47:55,396.396 INFO    ] time= 28/10/2026 15:47:55
[2026-10-28 15:47:55,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:47:55,426.426 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:47:55,554.554 INFO    ] No existing commands found in stream
[2026-10-28 15:48:00,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:48:00,586.586 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 15:48:02,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:48:02,274.274 INFO    ] Checking for system updates...
[2026-10-28 15:48:02,330.330 INFO    ] 200
[2026-10-28 15:48:02,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:48:02,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:48:02,410.410 INFO    ] No update needed
[2026-10-28 15:48:02,413.413 INFO    ] Checking for camera pi updates...
[2026-10-28 15:48:02,457.457 INFO    ] 200
[2026-10-28 15:48:02,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:48:02,522.522 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:48:02,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:48:02,622.622 INFO    ] No camera update needed
[2026-10-28 15:48:02,626.626 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:48:02,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:48:02,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:48:02,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:48:04,695.695 INFO    ] ================================================
[2026-10-28 15:48:04,710.710 INFO    ] Launching Daemon at Wed Oct 28 15:48:04 IST 2026
[2026-10-28 15:48:04,721.721 INFO    ] ================================================
[2026-10-28 15:48:05,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:48:05
[2026-10-28 15:48:05,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:48:06,122.122 INFO    ] Initializing speech engine...
[2026-10-28 15:48:06,141.141 INFO    ] 2026-10-28 15:48:06
[2026-10-28 15:48:06,402.402 INFO    ] 2026-10-28 15:48:06
[2026-10-28 15:48:06,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:48:06,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:48:06,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:48:06,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:48:06,966.966 INFO    ] time= 28/10/2026 15:48:06
[2026-10-28 15:48:06,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:48:06,990.990 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:48:07,123.123 INFO    ] No existing commands found in stream
[2026-10-28 15:48:12,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:48:12,139.139 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-28 15:48:14,034.034 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:48:14,037.037 INFO    ] Checking for system updates...
[2026-10-28 15:48:14,078.078 INFO    ] 200
[2026-10-28 15:48:14,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:48:14,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:48:14,136.136 INFO    ] No update needed
[2026-10-28 15:48:14,138.138 INFO    ] Checking for camera pi updates...
[2026-10-28 15:48:14,172.172 INFO    ] 200
[2026-10-28 15:48:14,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:48:14,221.221 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:48:14,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:48:14,309.309 INFO    ] No camera update needed
[2026-10-28 15:48:14,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:48:14,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:48:14,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:48:14,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:48:16,366.366 INFO    ] ================================================
[2026-10-28 15:48:16,381.381 INFO    ] Launching Daemon at Wed Oct 28 15:48:16 IST 2026
[2026-10-28 15:48:16,392.392 INFO    ] ================================================
[2026-10-28 15:48:17,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:48:17
[2026-10-28 15:48:17,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:48:18,081.081 INFO    ] Initializing speech engine...
[2026-10-28 15:48:18,091.091 INFO    ] 2026-10-28 15:48:18
[2026-10-28 15:48:18,415.415 INFO    ] 2026-10-28 15:48:18
[2026-10-28 15:48:18,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:48:18,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:48:18,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:48:18,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:48:18,956.956 INFO    ] time= 28/10/2026 15:48:18
[2026-10-28 15:48:18,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:48:18,996.996 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:48:19,110.110 INFO    ] No existing commands found in stream
[2026-10-28 15:48:24,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:48:24,123.123 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-28 15:48:28,015.015 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:48:28,018.018 INFO    ] Checking for system updates...
[2026-10-28 15:48:28,059.059 INFO    ] 200
[2026-10-28 15:48:28,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:48:28,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:48:28,116.116 INFO    ] No update needed
[2026-10-28 15:48:28,118.118 INFO    ] Checking for camera pi updates...
[2026-10-28 15:48:28,152.152 INFO    ] 200
[2026-10-28 15:48:28,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:48:28,195.195 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:48:28,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:48:28,285.285 INFO    ] No camera update needed
[2026-10-28 15:48:28,287.287 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:48:28,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:48:28,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:48:28,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:48:30,340.340 INFO    ] ================================================
[2026-10-28 15:48:30,356.356 INFO    ] Launching Daemon at Wed Oct 28 15:48:30 IST 2026
[2026-10-28 15:48:30,367.367 INFO    ] ================================================
[2026-10-28 15:48:30,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:48:30
[2026-10-28 15:48:31,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:48:31,762.762 INFO    ] Initializing speech engine...
[2026-10-28 15:48:31,777.777 INFO    ] 2026-10-28 15:48:31
[2026-10-28 15:48:32,059.059 INFO    ] 2026-10-28 15:48:32
[2026-10-28 15:48:32,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:48:32,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:48:32,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:48:32,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:48:32,671.671 INFO    ] time= 28/10/2026 15:48:32
[2026-10-28 15:48:32,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:48:32,738.738 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:48:32,841.841 INFO    ] No existing commands found in stream
[2026-10-28 15:48:37,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:48:37,867.867 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-28 15:48:42,194.194 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:48:42,197.197 INFO    ] Checking for system updates...
[2026-10-28 15:48:42,233.233 INFO    ] 200
[2026-10-28 15:48:42,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:48:42,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:48:42,299.299 INFO    ] No update needed
[2026-10-28 15:48:42,302.302 INFO    ] Checking for camera pi updates...
[2026-10-28 15:48:42,340.340 INFO    ] 200
[2026-10-28 15:48:42,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:48:42,389.389 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:48:42,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:48:42,560.560 INFO    ] No camera update needed
[2026-10-28 15:48:42,562.562 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:48:42,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:48:42,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:48:42,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:48:44,615.615 INFO    ] ================================================
[2026-10-28 15:48:44,630.630 INFO    ] Launching Daemon at Wed Oct 28 15:48:44 IST 2026
[2026-10-28 15:48:44,642.642 INFO    ] ================================================
[2026-10-28 15:48:45,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:48:45
[2026-10-28 15:48:45,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:48:46,203.203 INFO    ] Initializing speech engine...
[2026-10-28 15:48:46,221.221 INFO    ] 2026-10-28 15:48:46
[2026-10-28 15:48:46,478.478 INFO    ] 2026-10-28 15:48:46
[2026-10-28 15:48:46,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:48:46,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:48:46,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:48:46,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:48:47,028.028 INFO    ] time= 28/10/2026 15:48:47
[2026-10-28 15:48:47,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:48:47,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:48:47,172.172 INFO    ] No existing commands found in stream
[2026-10-28 15:48:52,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:48:52,194.194 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-28 15:48:54,239.239 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:48:54,242.242 INFO    ] Checking for system updates...
[2026-10-28 15:48:54,278.278 INFO    ] 200
[2026-10-28 15:48:54,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:48:54,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:48:54,337.337 INFO    ] No update needed
[2026-10-28 15:48:54,339.339 INFO    ] Checking for camera pi updates...
[2026-10-28 15:48:54,377.377 INFO    ] 200
[2026-10-28 15:48:54,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:48:54,421.421 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:48:54,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:48:54,529.529 INFO    ] No camera update needed
[2026-10-28 15:48:54,532.532 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:48:54,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:48:54,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:48:54,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:48:56,589.589 INFO    ] ================================================
[2026-10-28 15:48:56,606.606 INFO    ] Launching Daemon at Wed Oct 28 15:48:56 IST 2026
[2026-10-28 15:48:56,617.617 INFO    ] ================================================
[2026-10-28 15:48:57,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:48:57
[2026-10-28 15:48:57,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:48:58,141.141 INFO    ] Initializing speech engine...
[2026-10-28 15:48:58,164.164 INFO    ] 2026-10-28 15:48:58
[2026-10-28 15:48:58,420.420 INFO    ] 2026-10-28 15:48:58
[2026-10-28 15:48:58,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:48:58,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:48:58,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:48:58,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:48:59,011.011 INFO    ] time= 28/10/2026 15:48:58
[2026-10-28 15:48:59,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:48:59,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:48:59,187.187 INFO    ] No existing commands found in stream
[2026-10-28 15:49:04,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:49:04,215.215 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-28 15:49:07,253.253 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:49:07,256.256 INFO    ] Checking for system updates...
[2026-10-28 15:49:07,291.291 INFO    ] 200
[2026-10-28 15:49:07,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:49:07,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:49:07,349.349 INFO    ] No update needed
[2026-10-28 15:49:07,352.352 INFO    ] Checking for camera pi updates...
[2026-10-28 15:49:07,389.389 INFO    ] 200
[2026-10-28 15:49:07,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:49:07,437.437 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:49:07,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:49:07,525.525 INFO    ] No camera update needed
[2026-10-28 15:49:07,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:49:07,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:49:07,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:49:07,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:49:09,584.584 INFO    ] ================================================
[2026-10-28 15:49:09,599.599 INFO    ] Launching Daemon at Wed Oct 28 15:49:09 IST 2026
[2026-10-28 15:49:09,610.610 INFO    ] ================================================
[2026-10-28 15:49:10,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:49:10
[2026-10-28 15:49:10,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:49:11,030.030 INFO    ] Initializing speech engine...
[2026-10-28 15:49:11,039.039 INFO    ] 2026-10-28 15:49:11
[2026-10-28 15:49:11,294.294 INFO    ] 2026-10-28 15:49:11
[2026-10-28 15:49:11,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:49:11,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:49:11,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:49:11,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:49:11,836.836 INFO    ] time= 28/10/2026 15:49:11
[2026-10-28 15:49:11,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:49:11,860.860 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:49:11,988.988 INFO    ] No existing commands found in stream
[2026-10-28 15:49:17,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:49:17,012.012 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-28 15:49:20,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:49:20,311.311 INFO    ] Checking for system updates...
[2026-10-28 15:49:20,351.351 INFO    ] 200
[2026-10-28 15:49:20,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:49:20,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:49:20,415.415 INFO    ] No update needed
[2026-10-28 15:49:20,418.418 INFO    ] Checking for camera pi updates...
[2026-10-28 15:49:20,451.451 INFO    ] 200
[2026-10-28 15:49:20,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:49:20,502.502 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:49:20,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:49:20,602.602 INFO    ] No camera update needed
[2026-10-28 15:49:20,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:49:20,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:49:20,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:49:20,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:49:22,661.661 INFO    ] ================================================
[2026-10-28 15:49:22,676.676 INFO    ] Launching Daemon at Wed Oct 28 15:49:22 IST 2026
[2026-10-28 15:49:22,686.686 INFO    ] ================================================
[2026-10-28 15:49:23,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:49:23
[2026-10-28 15:49:23,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:49:24,141.141 INFO    ] Initializing speech engine...
[2026-10-28 15:49:24,148.148 INFO    ] 2026-10-28 15:49:24
[2026-10-28 15:49:24,447.447 INFO    ] 2026-10-28 15:49:24
[2026-10-28 15:49:24,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:49:24,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:49:24,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:49:24,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:49:24,980.980 INFO    ] time= 28/10/2026 15:49:24
[2026-10-28 15:49:25,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:49:25,089.089 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:49:25,237.237 INFO    ] No existing commands found in stream
[2026-10-28 15:49:30,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:49:30,265.265 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-28 15:49:31,994.994 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:49:31,997.997 INFO    ] Checking for system updates...
[2026-10-28 15:49:32,035.035 INFO    ] 200
[2026-10-28 15:49:32,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:49:32,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:49:32,106.106 INFO    ] No update needed
[2026-10-28 15:49:32,109.109 INFO    ] Checking for camera pi updates...
[2026-10-28 15:49:32,143.143 INFO    ] 200
[2026-10-28 15:49:32,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:49:32,190.190 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:49:32,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:49:32,286.286 INFO    ] No camera update needed
[2026-10-28 15:49:32,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:49:32,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:49:32,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:49:32,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:49:34,346.346 INFO    ] ================================================
[2026-10-28 15:49:34,361.361 INFO    ] Launching Daemon at Wed Oct 28 15:49:34 IST 2026
[2026-10-28 15:49:34,371.371 INFO    ] ================================================
[2026-10-28 15:49:34,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:49:34
[2026-10-28 15:49:35,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:49:35,790.790 INFO    ] Initializing speech engine...
[2026-10-28 15:49:35,799.799 INFO    ] 2026-10-28 15:49:35
[2026-10-28 15:49:36,048.048 INFO    ] 2026-10-28 15:49:36
[2026-10-28 15:49:36,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:49:36,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:49:36,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:49:36,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:49:36,616.616 INFO    ] time= 28/10/2026 15:49:36
[2026-10-28 15:49:36,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:49:36,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:49:36,770.770 INFO    ] No existing commands found in stream
[2026-10-28 15:49:41,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:49:41,788.788 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 15:49:42,536.536 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:49:42,539.539 INFO    ] Checking for system updates...
[2026-10-28 15:49:42,574.574 INFO    ] 200
[2026-10-28 15:49:42,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:49:42,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:49:42,638.638 INFO    ] No update needed
[2026-10-28 15:49:42,641.641 INFO    ] Checking for camera pi updates...
[2026-10-28 15:49:42,674.674 INFO    ] 200
[2026-10-28 15:49:42,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:49:42,726.726 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:49:42,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:49:42,808.808 INFO    ] No camera update needed
[2026-10-28 15:49:42,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:49:42,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:49:42,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:49:42,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:49:44,864.864 INFO    ] ================================================
[2026-10-28 15:49:44,879.879 INFO    ] Launching Daemon at Wed Oct 28 15:49:44 IST 2026
[2026-10-28 15:49:44,890.890 INFO    ] ================================================
[2026-10-28 15:49:45,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:49:45
[2026-10-28 15:49:46,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:49:46,291.291 INFO    ] Initializing speech engine...
[2026-10-28 15:49:46,297.297 INFO    ] 2026-10-28 15:49:46
[2026-10-28 15:49:46,575.575 INFO    ] 2026-10-28 15:49:46
[2026-10-28 15:49:46,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:49:46,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:49:46,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:49:47,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:49:47,133.133 INFO    ] time= 28/10/2026 15:49:47
[2026-10-28 15:49:47,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:49:47,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:49:47,320.320 INFO    ] No existing commands found in stream
[2026-10-28 15:49:52,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:49:52,348.348 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-28 15:49:56,672.672 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:49:56,675.675 INFO    ] Checking for system updates...
[2026-10-28 15:49:56,714.714 INFO    ] 200
[2026-10-28 15:49:56,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:49:56,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:49:56,778.778 INFO    ] No update needed
[2026-10-28 15:49:56,780.780 INFO    ] Checking for camera pi updates...
[2026-10-28 15:49:56,817.817 INFO    ] 200
[2026-10-28 15:49:56,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:49:56,860.860 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:49:56,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:49:56,942.942 INFO    ] No camera update needed
[2026-10-28 15:49:56,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:49:56,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:49:56,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:49:56,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:49:59,998.998 INFO    ] ================================================
[2026-10-28 15:49:59,013.013 INFO    ] Launching Daemon at Wed Oct 28 15:49:59 IST 2026
[2026-10-28 15:49:59,025.025 INFO    ] ================================================
[2026-10-28 15:49:59,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:49:59
[2026-10-28 15:50:00,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:50:00,495.495 INFO    ] Initializing speech engine...
[2026-10-28 15:50:00,506.506 INFO    ] 2026-10-28 15:50:00
[2026-10-28 15:50:00,751.751 INFO    ] 2026-10-28 15:50:00
[2026-10-28 15:50:00,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:50:01,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:50:01,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:50:01,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:50:01,231.231 INFO    ] time= 28/10/2026 15:50:01
[2026-10-28 15:50:01,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:50:01,239.239 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:50:01,350.350 INFO    ] No existing commands found in stream
[2026-10-28 15:50:06,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:50:06,392.392 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 15:50:09,168.168 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:50:09,171.171 INFO    ] Checking for system updates...
[2026-10-28 15:50:09,211.211 INFO    ] 200
[2026-10-28 15:50:09,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:50:09,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:50:09,275.275 INFO    ] No update needed
[2026-10-28 15:50:09,277.277 INFO    ] Checking for camera pi updates...
[2026-10-28 15:50:09,310.310 INFO    ] 200
[2026-10-28 15:50:09,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:50:09,362.362 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:50:09,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:50:09,445.445 INFO    ] No camera update needed
[2026-10-28 15:50:09,448.448 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:50:09,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:50:09,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:50:09,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:50:11,504.504 INFO    ] ================================================
[2026-10-28 15:50:11,520.520 INFO    ] Launching Daemon at Wed Oct 28 15:50:11 IST 2026
[2026-10-28 15:50:11,531.531 INFO    ] ================================================
[2026-10-28 15:50:12,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:50:12
[2026-10-28 15:50:12,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:50:13,133.133 INFO    ] Initializing speech engine...
[2026-10-28 15:50:13,139.139 INFO    ] 2026-10-28 15:50:13
[2026-10-28 15:50:13,423.423 INFO    ] 2026-10-28 15:50:13
[2026-10-28 15:50:13,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:50:13,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:50:13,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:50:13,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:50:13,952.952 INFO    ] time= 28/10/2026 15:50:13
[2026-10-28 15:50:13,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:50:14,003.003 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:50:14,135.135 INFO    ] No existing commands found in stream
[2026-10-28 15:50:19,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:50:19,169.169 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-28 15:50:20,000.000 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:50:20,003.003 INFO    ] Checking for system updates...
[2026-10-28 15:50:20,044.044 INFO    ] 200
[2026-10-28 15:50:20,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:50:20,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:50:20,108.108 INFO    ] No update needed
[2026-10-28 15:50:20,110.110 INFO    ] Checking for camera pi updates...
[2026-10-28 15:50:20,147.147 INFO    ] 200
[2026-10-28 15:50:20,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:50:20,191.191 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:50:20,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:50:20,280.280 INFO    ] No camera update needed
[2026-10-28 15:50:20,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:50:20,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:50:20,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:50:20,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:50:22,335.335 INFO    ] ================================================
[2026-10-28 15:50:22,350.350 INFO    ] Launching Daemon at Wed Oct 28 15:50:22 IST 2026
[2026-10-28 15:50:22,360.360 INFO    ] ================================================
[2026-10-28 15:50:23,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:50:23
[2026-10-28 15:50:23,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:50:23,978.978 INFO    ] Initializing speech engine...
[2026-10-28 15:50:23,993.993 INFO    ] 2026-10-28 15:50:23
[2026-10-28 15:50:24,306.306 INFO    ] 2026-10-28 15:50:24
[2026-10-28 15:50:24,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:50:24,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:50:24,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:50:24,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:50:24,850.850 INFO    ] time= 28/10/2026 15:50:24
[2026-10-28 15:50:24,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:50:24,902.902 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:50:25,049.049 INFO    ] No existing commands found in stream
[2026-10-28 15:50:30,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:50:30,066.066 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-28 15:50:32,526.526 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:50:32,529.529 INFO    ] Checking for system updates...
[2026-10-28 15:50:32,573.573 INFO    ] 200
[2026-10-28 15:50:32,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:50:32,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:50:32,643.643 INFO    ] No update needed
[2026-10-28 15:50:32,646.646 INFO    ] Checking for camera pi updates...
[2026-10-28 15:50:32,686.686 INFO    ] 200
[2026-10-28 15:50:32,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:50:32,737.737 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:50:32,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:50:32,793.793 INFO    ] No camera update needed
[2026-10-28 15:50:32,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:50:32,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:50:32,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:50:32,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:50:34,848.848 INFO    ] ================================================
[2026-10-28 15:50:34,864.864 INFO    ] Launching Daemon at Wed Oct 28 15:50:34 IST 2026
[2026-10-28 15:50:34,874.874 INFO    ] ================================================
[2026-10-28 15:50:35,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:50:35
[2026-10-28 15:50:36,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:50:36,301.301 INFO    ] Initializing speech engine...
[2026-10-28 15:50:36,310.310 INFO    ] 2026-10-28 15:50:36
[2026-10-28 15:50:36,557.557 INFO    ] 2026-10-28 15:50:36
[2026-10-28 15:50:36,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:50:36,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:50:36,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:50:37,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:50:37,110.110 INFO    ] time= 28/10/2026 15:50:37
[2026-10-28 15:50:37,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:50:37,134.134 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:50:37,250.250 INFO    ] No existing commands found in stream
[2026-10-28 15:50:42,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:50:42,277.277 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-28 15:50:44,634.634 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:50:44,636.636 INFO    ] Checking for system updates...
[2026-10-28 15:50:44,672.672 INFO    ] 200
[2026-10-28 15:50:44,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:50:44,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:50:44,740.740 INFO    ] No update needed
[2026-10-28 15:50:44,743.743 INFO    ] Checking for camera pi updates...
[2026-10-28 15:50:44,780.780 INFO    ] 200
[2026-10-28 15:50:44,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:50:44,822.822 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:50:45,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:50:45,005.005 INFO    ] No camera update needed
[2026-10-28 15:50:45,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:50:45,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:50:45,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:50:45,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:50:47,061.061 INFO    ] ================================================
[2026-10-28 15:50:47,080.080 INFO    ] Launching Daemon at Wed Oct 28 15:50:47 IST 2026
[2026-10-28 15:50:47,092.092 INFO    ] ================================================
[2026-10-28 15:50:47,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:50:47
[2026-10-28 15:50:48,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:50:48,765.765 INFO    ] Initializing speech engine...
[2026-10-28 15:50:48,771.771 INFO    ] 2026-10-28 15:50:48
[2026-10-28 15:50:49,082.082 INFO    ] 2026-10-28 15:50:49
[2026-10-28 15:50:49,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:50:49,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:50:49,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:50:49,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:50:49,589.589 INFO    ] time= 28/10/2026 15:50:49
[2026-10-28 15:50:49,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:50:49,638.638 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:50:49,754.754 INFO    ] No existing commands found in stream
[2026-10-28 15:50:54,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:50:54,788.788 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-28 15:50:57,076.076 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:50:57,079.079 INFO    ] Checking for system updates...
[2026-10-28 15:50:57,121.121 INFO    ] 200
[2026-10-28 15:50:57,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:50:57,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:50:57,190.190 INFO    ] No update needed
[2026-10-28 15:50:57,193.193 INFO    ] Checking for camera pi updates...
[2026-10-28 15:50:57,232.232 INFO    ] 200
[2026-10-28 15:50:57,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:50:57,283.283 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:50:57,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:50:57,372.372 INFO    ] No camera update needed
[2026-10-28 15:50:57,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:50:57,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:50:57,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:50:57,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:50:59,430.430 INFO    ] ================================================
[2026-10-28 15:50:59,446.446 INFO    ] Launching Daemon at Wed Oct 28 15:50:59 IST 2026
[2026-10-28 15:50:59,457.457 INFO    ] ================================================
[2026-10-28 15:51:00,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:51:00
[2026-10-28 15:51:00,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:51:00,933.933 INFO    ] Initializing speech engine...
[2026-10-28 15:51:00,945.945 INFO    ] 2026-10-28 15:51:00
[2026-10-28 15:51:01,209.209 INFO    ] 2026-10-28 15:51:01
[2026-10-28 15:51:01,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:51:01,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:51:01,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:51:01,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:51:01,764.764 INFO    ] time= 28/10/2026 15:51:01
[2026-10-28 15:51:01,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:51:01,788.788 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:51:01,947.947 INFO    ] No existing commands found in stream
[2026-10-28 15:51:06,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:51:06,975.975 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-28 15:51:08,431.431 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:51:08,433.433 INFO    ] Checking for system updates...
[2026-10-28 15:51:08,469.469 INFO    ] 200
[2026-10-28 15:51:08,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:51:08,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:51:08,526.526 INFO    ] No update needed
[2026-10-28 15:51:08,528.528 INFO    ] Checking for camera pi updates...
[2026-10-28 15:51:08,562.562 INFO    ] 200
[2026-10-28 15:51:08,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:51:08,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:51:08,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:51:08,703.703 INFO    ] No camera update needed
[2026-10-28 15:51:08,705.705 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:51:08,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:51:08,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:51:08,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:51:10,765.765 INFO    ] ================================================
[2026-10-28 15:51:10,781.781 INFO    ] Launching Daemon at Wed Oct 28 15:51:10 IST 2026
[2026-10-28 15:51:10,792.792 INFO    ] ================================================
[2026-10-28 15:51:11,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:51:11
[2026-10-28 15:51:11,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:51:12,220.220 INFO    ] Initializing speech engine...
[2026-10-28 15:51:12,229.229 INFO    ] 2026-10-28 15:51:12
[2026-10-28 15:51:12,476.476 INFO    ] 2026-10-28 15:51:12
[2026-10-28 15:51:12,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:51:12,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:51:12,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:51:13,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:51:13,032.032 INFO    ] time= 28/10/2026 15:51:13
[2026-10-28 15:51:13,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:51:13,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:51:13,195.195 INFO    ] No existing commands found in stream
[2026-10-28 15:51:18,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:51:18,227.227 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 15:51:20,567.567 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:51:20,570.570 INFO    ] Checking for system updates...
[2026-10-28 15:51:20,616.616 INFO    ] 200
[2026-10-28 15:51:20,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:51:20,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:51:20,705.705 INFO    ] No update needed
[2026-10-28 15:51:20,708.708 INFO    ] Checking for camera pi updates...
[2026-10-28 15:51:20,764.764 INFO    ] 200
[2026-10-28 15:51:20,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:51:20,828.828 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:51:20,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:51:20,939.939 INFO    ] No camera update needed
[2026-10-28 15:51:20,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:51:20,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:51:20,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:51:20,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:51:23,001.001 INFO    ] ================================================
[2026-10-28 15:51:23,017.017 INFO    ] Launching Daemon at Wed Oct 28 15:51:23 IST 2026
[2026-10-28 15:51:23,029.029 INFO    ] ================================================
[2026-10-28 15:51:23,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:51:23
[2026-10-28 15:51:24,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:51:24,508.508 INFO    ] Initializing speech engine...
[2026-10-28 15:51:24,516.516 INFO    ] 2026-10-28 15:51:24
[2026-10-28 15:51:24,820.820 INFO    ] 2026-10-28 15:51:24
[2026-10-28 15:51:24,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:51:25,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:51:25,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:51:27,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:51:27,109.109 INFO    ] time= 28/10/2026 15:51:27
[2026-10-28 15:51:27,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:51:27,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:51:27,251.251 INFO    ] No existing commands found in stream
[2026-10-28 15:51:32,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:51:32,265.265 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-28 15:51:36,053.053 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:51:36,056.056 INFO    ] Checking for system updates...
[2026-10-28 15:51:36,091.091 INFO    ] 200
[2026-10-28 15:51:36,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:51:36,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:51:36,148.148 INFO    ] No update needed
[2026-10-28 15:51:36,151.151 INFO    ] Checking for camera pi updates...
[2026-10-28 15:51:36,184.184 INFO    ] 200
[2026-10-28 15:51:36,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:51:36,226.226 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:51:36,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:51:36,317.317 INFO    ] No camera update needed
[2026-10-28 15:51:36,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:51:36,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:51:36,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:51:36,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:51:38,373.373 INFO    ] ================================================
[2026-10-28 15:51:38,389.389 INFO    ] Launching Daemon at Wed Oct 28 15:51:38 IST 2026
[2026-10-28 15:51:38,400.400 INFO    ] ================================================
[2026-10-28 15:51:39,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:51:39
[2026-10-28 15:51:39,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:51:39,996.996 INFO    ] Initializing speech engine...
[2026-10-28 15:51:40,006.006 INFO    ] 2026-10-28 15:51:39
[2026-10-28 15:51:40,289.289 INFO    ] 2026-10-28 15:51:40
[2026-10-28 15:51:40,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:51:40,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:51:40,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:51:40,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:51:40,812.812 INFO    ] time= 28/10/2026 15:51:40
[2026-10-28 15:51:40,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:51:40,818.818 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:51:40,902.902 INFO    ] No existing commands found in stream
[2026-10-28 15:51:45,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:51:45,917.917 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-28 15:51:49,969.969 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:51:49,972.972 INFO    ] Checking for system updates...
[2026-10-28 15:51:50,012.012 INFO    ] 200
[2026-10-28 15:51:50,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:51:50,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:51:50,082.082 INFO    ] No update needed
[2026-10-28 15:51:50,084.084 INFO    ] Checking for camera pi updates...
[2026-10-28 15:51:50,122.122 INFO    ] 200
[2026-10-28 15:51:50,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:51:50,167.167 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:51:50,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:51:50,256.256 INFO    ] No camera update needed
[2026-10-28 15:51:50,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:51:50,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:51:50,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:51:50,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:51:52,314.314 INFO    ] ================================================
[2026-10-28 15:51:52,330.330 INFO    ] Launching Daemon at Wed Oct 28 15:51:52 IST 2026
[2026-10-28 15:51:52,341.341 INFO    ] ================================================
[2026-10-28 15:51:52,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:51:52
[2026-10-28 15:51:53,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:51:53,949.949 INFO    ] Initializing speech engine...
[2026-10-28 15:51:53,957.957 INFO    ] 2026-10-28 15:51:53
[2026-10-28 15:51:54,230.230 INFO    ] 2026-10-28 15:51:54
[2026-10-28 15:51:54,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:51:54,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:51:54,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:51:54,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:51:54,785.785 INFO    ] time= 28/10/2026 15:51:54
[2026-10-28 15:51:54,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:51:54,826.826 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:51:54,969.969 INFO    ] No existing commands found in stream
[2026-10-28 15:51:59,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:51:59,998.998 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 15:52:00,830.830 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:52:00,838.838 INFO    ] Checking for system updates...
[2026-10-28 15:52:00,879.879 INFO    ] 200
[2026-10-28 15:52:00,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:52:00,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:52:00,944.944 INFO    ] No update needed
[2026-10-28 15:52:00,947.947 INFO    ] Checking for camera pi updates...
[2026-10-28 15:52:00,982.982 INFO    ] 200
[2026-10-28 15:52:00,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:52:01,027.027 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:52:01,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:52:01,127.127 INFO    ] No camera update needed
[2026-10-28 15:52:01,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:52:01,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:52:01,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:52:01,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:52:03,189.189 INFO    ] ================================================
[2026-10-28 15:52:03,208.208 INFO    ] Launching Daemon at Wed Oct 28 15:52:03 IST 2026
[2026-10-28 15:52:03,222.222 INFO    ] ================================================
[2026-10-28 15:52:03,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:52:03
[2026-10-28 15:52:04,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:52:04,910.910 INFO    ] Initializing speech engine...
[2026-10-28 15:52:04,917.917 INFO    ] 2026-10-28 15:52:04
[2026-10-28 15:52:05,228.228 INFO    ] 2026-10-28 15:52:05
[2026-10-28 15:52:05,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:52:05,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:52:05,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:52:05,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:52:05,922.922 INFO    ] time= 28/10/2026 15:52:05
[2026-10-28 15:52:05,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:52:06,014.014 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:52:06,159.159 INFO    ] No existing commands found in stream
[2026-10-28 15:52:11,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:52:11,193.193 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-28 15:52:14,592.592 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 15:52:14,594.594 INFO    ] Checking for system updates...
[2026-10-28 15:52:14,630.630 INFO    ] 200
[2026-10-28 15:52:14,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:52:14,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:52:14,686.686 INFO    ] No update needed
[2026-10-28 15:52:14,689.689 INFO    ] Checking for camera pi updates...
[2026-10-28 15:52:14,726.726 INFO    ] 200
[2026-10-28 15:52:14,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:52:14,769.769 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:52:14,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:52:14,856.856 INFO    ] No camera update needed
[2026-10-28 15:52:14,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:52:14,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:52:14,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:52:14,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:52:16,912.912 INFO    ] ================================================
[2026-10-28 15:52:16,927.927 INFO    ] Launching Daemon at Wed Oct 28 15:52:16 IST 2026
[2026-10-28 15:52:16,938.938 INFO    ] ================================================
[2026-10-28 15:52:17,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:52:17
[2026-10-28 15:52:18,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:52:18,583.583 INFO    ] Initializing speech engine...
[2026-10-28 15:52:18,592.592 INFO    ] 2026-10-28 15:52:18
[2026-10-28 15:52:18,870.870 INFO    ] 2026-10-28 15:52:18
[2026-10-28 15:52:18,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:52:19,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:52:19,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:52:19,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:52:19,659.659 INFO    ] time= 28/10/2026 15:52:19
[2026-10-28 15:52:19,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:52:19,764.764 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:52:19,866.866 INFO    ] No existing commands found in stream
[2026-10-28 15:52:24,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:52:24,879.879 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 15:52:26,819.819 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:52:26,822.822 INFO    ] Checking for system updates...
[2026-10-28 15:52:26,859.859 INFO    ] 200
[2026-10-28 15:52:26,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:52:26,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:52:26,927.927 INFO    ] No update needed
[2026-10-28 15:52:26,930.930 INFO    ] Checking for camera pi updates...
[2026-10-28 15:52:26,964.964 INFO    ] 200
[2026-10-28 15:52:26,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:52:27,010.010 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:52:27,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:52:27,097.097 INFO    ] No camera update needed
[2026-10-28 15:52:27,100.100 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:52:27,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:52:27,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:52:27,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:52:29,157.157 INFO    ] ================================================
[2026-10-28 15:52:29,172.172 INFO    ] Launching Daemon at Wed Oct 28 15:52:29 IST 2026
[2026-10-28 15:52:29,183.183 INFO    ] ================================================
[2026-10-28 15:52:29,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:52:29
[2026-10-28 15:52:30,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:52:30,589.589 INFO    ] Initializing speech engine...
[2026-10-28 15:52:30,598.598 INFO    ] 2026-10-28 15:52:30
[2026-10-28 15:52:30,895.895 INFO    ] 2026-10-28 15:52:30
[2026-10-28 15:52:30,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:52:31,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:52:31,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:52:31,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:52:31,492.492 INFO    ] time= 28/10/2026 15:52:31
[2026-10-28 15:52:31,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:52:31,517.517 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:52:31,661.661 INFO    ] No existing commands found in stream
[2026-10-28 15:52:36,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:52:36,690.690 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-28 15:52:37,959.959 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:52:37,962.962 INFO    ] Checking for system updates...
[2026-10-28 15:52:37,998.998 INFO    ] 200
[2026-10-28 15:52:38,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:52:38,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:52:38,056.056 INFO    ] No update needed
[2026-10-28 15:52:38,059.059 INFO    ] Checking for camera pi updates...
[2026-10-28 15:52:38,096.096 INFO    ] 200
[2026-10-28 15:52:38,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:52:38,139.139 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:52:38,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:52:38,230.230 INFO    ] No camera update needed
[2026-10-28 15:52:38,232.232 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:52:38,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:52:38,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:52:38,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:52:40,284.284 INFO    ] ================================================
[2026-10-28 15:52:40,299.299 INFO    ] Launching Daemon at Wed Oct 28 15:52:40 IST 2026
[2026-10-28 15:52:40,310.310 INFO    ] ================================================
[2026-10-28 15:52:40,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:52:40
[2026-10-28 15:52:41,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:52:41,831.831 INFO    ] Initializing speech engine...
[2026-10-28 15:52:41,838.838 INFO    ] 2026-10-28 15:52:41
[2026-10-28 15:52:42,125.125 INFO    ] 2026-10-28 15:52:42
[2026-10-28 15:52:42,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:52:42,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:52:42,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:52:42,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:52:42,654.654 INFO    ] time= 28/10/2026 15:52:42
[2026-10-28 15:52:42,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:52:42,763.763 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:52:42,850.850 INFO    ] No existing commands found in stream
[2026-10-28 15:52:47,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:52:47,865.865 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-28 15:52:48,952.952 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:52:48,955.955 INFO    ] Checking for system updates...
[2026-10-28 15:52:48,990.990 INFO    ] 200
[2026-10-28 15:52:48,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:52:49,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:52:49,047.047 INFO    ] No update needed
[2026-10-28 15:52:49,050.050 INFO    ] Checking for camera pi updates...
[2026-10-28 15:52:49,084.084 INFO    ] 200
[2026-10-28 15:52:49,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:52:49,137.137 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:52:49,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:52:49,293.293 INFO    ] No camera update needed
[2026-10-28 15:52:49,296.296 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:52:49,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:52:49,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:52:49,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:52:51,349.349 INFO    ] ================================================
[2026-10-28 15:52:51,364.364 INFO    ] Launching Daemon at Wed Oct 28 15:52:51 IST 2026
[2026-10-28 15:52:51,374.374 INFO    ] ================================================
[2026-10-28 15:52:51,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:52:51
[2026-10-28 15:52:52,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:52:52,796.796 INFO    ] Initializing speech engine...
[2026-10-28 15:52:52,804.804 INFO    ] 2026-10-28 15:52:52
[2026-10-28 15:52:53,100.100 INFO    ] 2026-10-28 15:52:53
[2026-10-28 15:52:53,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:52:53,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:52:53,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:52:53,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:52:53,703.703 INFO    ] time= 28/10/2026 15:52:53
[2026-10-28 15:52:53,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:52:53,752.752 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:52:53,919.919 INFO    ] No existing commands found in stream
[2026-10-28 15:52:58,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:52:58,934.934 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-28 15:53:01,303.303 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:53:01,307.307 INFO    ] Checking for system updates...
[2026-10-28 15:53:01,372.372 INFO    ] 200
[2026-10-28 15:53:01,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:53:01,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:53:01,478.478 INFO    ] No update needed
[2026-10-28 15:53:01,482.482 INFO    ] Checking for camera pi updates...
[2026-10-28 15:53:01,536.536 INFO    ] 200
[2026-10-28 15:53:01,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:53:01,607.607 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:53:01,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:53:01,714.714 INFO    ] No camera update needed
[2026-10-28 15:53:01,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:53:01,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:53:01,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:53:01,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:53:03,778.778 INFO    ] ================================================
[2026-10-28 15:53:03,794.794 INFO    ] Launching Daemon at Wed Oct 28 15:53:03 IST 2026
[2026-10-28 15:53:03,805.805 INFO    ] ================================================
[2026-10-28 15:53:04,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:53:04
[2026-10-28 15:53:05,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:53:05,268.268 INFO    ] Initializing speech engine...
[2026-10-28 15:53:05,277.277 INFO    ] 2026-10-28 15:53:05
[2026-10-28 15:53:05,582.582 INFO    ] 2026-10-28 15:53:05
[2026-10-28 15:53:05,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:53:05,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:53:05,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:53:06,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:53:06,098.098 INFO    ] time= 28/10/2026 15:53:06
[2026-10-28 15:53:06,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:53:06,218.218 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:53:06,312.312 INFO    ] No existing commands found in stream
[2026-10-28 15:53:11,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:53:11,326.326 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-28 15:53:15,349.349 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:53:15,352.352 INFO    ] Checking for system updates...
[2026-10-28 15:53:15,389.389 INFO    ] 200
[2026-10-28 15:53:15,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:53:15,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:53:15,449.449 INFO    ] No update needed
[2026-10-28 15:53:15,451.451 INFO    ] Checking for camera pi updates...
[2026-10-28 15:53:15,485.485 INFO    ] 200
[2026-10-28 15:53:15,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:53:15,527.527 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:53:15,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:53:15,607.607 INFO    ] No camera update needed
[2026-10-28 15:53:15,609.609 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:53:15,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:53:15,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:53:15,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:53:17,662.662 INFO    ] ================================================
[2026-10-28 15:53:17,677.677 INFO    ] Launching Daemon at Wed Oct 28 15:53:17 IST 2026
[2026-10-28 15:53:17,688.688 INFO    ] ================================================
[2026-10-28 15:53:18,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:53:18
[2026-10-28 15:53:18,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:53:19,117.117 INFO    ] Initializing speech engine...
[2026-10-28 15:53:19,123.123 INFO    ] 2026-10-28 15:53:19
[2026-10-28 15:53:19,428.428 INFO    ] 2026-10-28 15:53:19
[2026-10-28 15:53:19,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:53:19,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:53:19,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:53:19,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:53:19,948.948 INFO    ] time= 28/10/2026 15:53:19
[2026-10-28 15:53:19,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:53:20,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:53:20,156.156 INFO    ] No existing commands found in stream
[2026-10-28 15:53:25,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:53:25,170.170 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-28 15:53:29,273.273 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:53:29,275.275 INFO    ] Checking for system updates...
[2026-10-28 15:53:29,316.316 INFO    ] 200
[2026-10-28 15:53:29,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:53:29,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:53:29,373.373 INFO    ] No update needed
[2026-10-28 15:53:29,375.375 INFO    ] Checking for camera pi updates...
[2026-10-28 15:53:29,414.414 INFO    ] 200
[2026-10-28 15:53:29,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:53:29,457.457 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:53:29,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:53:29,540.540 INFO    ] No camera update needed
[2026-10-28 15:53:29,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:53:29,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:53:29,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:53:29,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:53:31,597.597 INFO    ] ================================================
[2026-10-28 15:53:31,613.613 INFO    ] Launching Daemon at Wed Oct 28 15:53:31 IST 2026
[2026-10-28 15:53:31,625.625 INFO    ] ================================================
[2026-10-28 15:53:32,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:53:32
[2026-10-28 15:53:32,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:53:33,143.143 INFO    ] Initializing speech engine...
[2026-10-28 15:53:33,149.149 INFO    ] 2026-10-28 15:53:33
[2026-10-28 15:53:33,410.410 INFO    ] 2026-10-28 15:53:33
[2026-10-28 15:53:33,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:53:33,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:53:33,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:53:33,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:53:33,956.956 INFO    ] time= 28/10/2026 15:53:33
[2026-10-28 15:53:33,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:53:34,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:53:34,133.133 INFO    ] No existing commands found in stream
[2026-10-28 15:53:39,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:53:39,161.161 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 15:53:42,573.573 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:53:42,576.576 INFO    ] Checking for system updates...
[2026-10-28 15:53:42,611.611 INFO    ] 200
[2026-10-28 15:53:42,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:53:42,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:53:42,667.667 INFO    ] No update needed
[2026-10-28 15:53:42,670.670 INFO    ] Checking for camera pi updates...
[2026-10-28 15:53:42,705.705 INFO    ] 200
[2026-10-28 15:53:42,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:53:42,749.749 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:53:42,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:53:42,838.838 INFO    ] No camera update needed
[2026-10-28 15:53:42,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:53:42,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:53:42,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:53:42,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:53:44,895.895 INFO    ] ================================================
[2026-10-28 15:53:44,911.911 INFO    ] Launching Daemon at Wed Oct 28 15:53:44 IST 2026
[2026-10-28 15:53:44,921.921 INFO    ] ================================================
[2026-10-28 15:53:45,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:53:45
[2026-10-28 15:53:46,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:53:46,608.608 INFO    ] Initializing speech engine...
[2026-10-28 15:53:46,619.619 INFO    ] 2026-10-28 15:53:46
[2026-10-28 15:53:46,933.933 INFO    ] 2026-10-28 15:53:46
[2026-10-28 15:53:47,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:53:47,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:53:47,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:53:47,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:53:47,731.731 INFO    ] time= 28/10/2026 15:53:47
[2026-10-28 15:53:47,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:53:47,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:53:47,989.989 INFO    ] No existing commands found in stream
[2026-10-28 15:53:53,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:53:53,024.024 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 15:53:55,975.975 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:53:55,978.978 INFO    ] Checking for system updates...
[2026-10-28 15:53:56,015.015 INFO    ] 200
[2026-10-28 15:53:56,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:53:56,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:53:56,076.076 INFO    ] No update needed
[2026-10-28 15:53:56,079.079 INFO    ] Checking for camera pi updates...
[2026-10-28 15:53:56,119.119 INFO    ] 200
[2026-10-28 15:53:56,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:53:56,170.170 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:53:56,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:53:56,270.270 INFO    ] No camera update needed
[2026-10-28 15:53:56,272.272 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:53:56,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:53:56,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:53:56,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:53:58,336.336 INFO    ] ================================================
[2026-10-28 15:53:58,351.351 INFO    ] Launching Daemon at Wed Oct 28 15:53:58 IST 2026
[2026-10-28 15:53:58,362.362 INFO    ] ================================================
[2026-10-28 15:53:58,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:53:58
[2026-10-28 15:53:59,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:53:59,787.787 INFO    ] Initializing speech engine...
[2026-10-28 15:53:59,793.793 INFO    ] 2026-10-28 15:53:59
[2026-10-28 15:54:00,094.094 INFO    ] 2026-10-28 15:54:00
[2026-10-28 15:54:00,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:54:00,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:54:00,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:54:00,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:54:00,659.659 INFO    ] time= 28/10/2026 15:54:00
[2026-10-28 15:54:00,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:54:00,764.764 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:54:00,916.916 INFO    ] No existing commands found in stream
[2026-10-28 15:54:05,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:54:05,939.939 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-28 15:54:07,331.331 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:54:07,334.334 INFO    ] Checking for system updates...
[2026-10-28 15:54:07,369.369 INFO    ] 200
[2026-10-28 15:54:07,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:54:07,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:54:07,428.428 INFO    ] No update needed
[2026-10-28 15:54:07,430.430 INFO    ] Checking for camera pi updates...
[2026-10-28 15:54:07,464.464 INFO    ] 200
[2026-10-28 15:54:07,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:54:07,507.507 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:54:07,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:54:07,589.589 INFO    ] No camera update needed
[2026-10-28 15:54:07,592.592 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:54:07,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:54:07,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:54:07,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:54:09,645.645 INFO    ] ================================================
[2026-10-28 15:54:09,660.660 INFO    ] Launching Daemon at Wed Oct 28 15:54:09 IST 2026
[2026-10-28 15:54:09,671.671 INFO    ] ================================================
[2026-10-28 15:54:10,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:54:10
[2026-10-28 15:54:11,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:54:11,367.367 INFO    ] Initializing speech engine...
[2026-10-28 15:54:11,378.378 INFO    ] 2026-10-28 15:54:11
[2026-10-28 15:54:11,652.652 INFO    ] 2026-10-28 15:54:11
[2026-10-28 15:54:11,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:54:11,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:54:11,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:54:12,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:54:12,234.234 INFO    ] time= 28/10/2026 15:54:12
[2026-10-28 15:54:12,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:54:12,283.283 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:54:12,393.393 INFO    ] No existing commands found in stream
[2026-10-28 15:54:17,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:54:17,413.413 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-28 15:54:21,259.259 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:54:21,263.263 INFO    ] Checking for system updates...
[2026-10-28 15:54:21,300.300 INFO    ] 200
[2026-10-28 15:54:21,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:54:21,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:54:21,358.358 INFO    ] No update needed
[2026-10-28 15:54:21,361.361 INFO    ] Checking for camera pi updates...
[2026-10-28 15:54:21,394.394 INFO    ] 200
[2026-10-28 15:54:21,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:54:21,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:54:21,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:54:21,510.510 INFO    ] No camera update needed
[2026-10-28 15:54:21,512.512 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:54:21,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:54:21,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:54:21,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:54:23,566.566 INFO    ] ================================================
[2026-10-28 15:54:23,581.581 INFO    ] Launching Daemon at Wed Oct 28 15:54:23 IST 2026
[2026-10-28 15:54:23,596.596 INFO    ] ================================================
[2026-10-28 15:54:24,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:54:24
[2026-10-28 15:54:24,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:54:25,054.054 INFO    ] Initializing speech engine...
[2026-10-28 15:54:25,063.063 INFO    ] 2026-10-28 15:54:25
[2026-10-28 15:54:25,312.312 INFO    ] 2026-10-28 15:54:25
[2026-10-28 15:54:25,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:54:25,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:54:25,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:54:25,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:54:25,869.869 INFO    ] time= 28/10/2026 15:54:25
[2026-10-28 15:54:25,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:54:25,898.898 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:54:26,022.022 INFO    ] No existing commands found in stream
[2026-10-28 15:54:31,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:54:31,045.045 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-28 15:54:33,612.612 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:54:33,615.615 INFO    ] Checking for system updates...
[2026-10-28 15:54:33,651.651 INFO    ] 200
[2026-10-28 15:54:33,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:54:33,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:54:33,711.711 INFO    ] No update needed
[2026-10-28 15:54:33,713.713 INFO    ] Checking for camera pi updates...
[2026-10-28 15:54:33,752.752 INFO    ] 200
[2026-10-28 15:54:33,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:54:33,795.795 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:54:33,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:54:33,896.896 INFO    ] No camera update needed
[2026-10-28 15:54:33,899.899 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:54:33,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:54:33,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:54:33,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:54:35,952.952 INFO    ] ================================================
[2026-10-28 15:54:35,967.967 INFO    ] Launching Daemon at Wed Oct 28 15:54:35 IST 2026
[2026-10-28 15:54:35,978.978 INFO    ] ================================================
[2026-10-28 15:54:36,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:54:36
[2026-10-28 15:54:37,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:54:37,592.592 INFO    ] Initializing speech engine...
[2026-10-28 15:54:37,603.603 INFO    ] 2026-10-28 15:54:37
[2026-10-28 15:54:37,921.921 INFO    ] 2026-10-28 15:54:37
[2026-10-28 15:54:38,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:54:38,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:54:38,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:54:38,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:54:38,506.506 INFO    ] time= 28/10/2026 15:54:38
[2026-10-28 15:54:38,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:54:38,560.560 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:54:38,687.687 INFO    ] No existing commands found in stream
[2026-10-28 15:54:43,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:54:43,706.706 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-28 15:54:46,332.332 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:54:46,335.335 INFO    ] Checking for system updates...
[2026-10-28 15:54:46,371.371 INFO    ] 200
[2026-10-28 15:54:46,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:54:46,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:54:46,430.430 INFO    ] No update needed
[2026-10-28 15:54:46,432.432 INFO    ] Checking for camera pi updates...
[2026-10-28 15:54:46,468.468 INFO    ] 200
[2026-10-28 15:54:46,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:54:46,513.513 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:54:46,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:54:46,602.602 INFO    ] No camera update needed
[2026-10-28 15:54:46,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:54:46,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:54:46,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:54:46,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:54:48,658.658 INFO    ] ================================================
[2026-10-28 15:54:48,674.674 INFO    ] Launching Daemon at Wed Oct 28 15:54:48 IST 2026
[2026-10-28 15:54:48,684.684 INFO    ] ================================================
[2026-10-28 15:54:49,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:54:49
[2026-10-28 15:54:50,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:54:50,396.396 INFO    ] Initializing speech engine...
[2026-10-28 15:54:50,408.408 INFO    ] 2026-10-28 15:54:50
[2026-10-28 15:54:50,721.721 INFO    ] 2026-10-28 15:54:50
[2026-10-28 15:54:50,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:54:51,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:54:51,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:54:51,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:54:51,437.437 INFO    ] time= 28/10/2026 15:54:51
[2026-10-28 15:54:51,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:54:51,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:54:51,668.668 INFO    ] No existing commands found in stream
[2026-10-28 15:54:56,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:54:56,690.690 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-28 15:54:59,033.033 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:54:59,037.037 INFO    ] Checking for system updates...
[2026-10-28 15:54:59,073.073 INFO    ] 200
[2026-10-28 15:54:59,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:54:59,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:54:59,130.130 INFO    ] No update needed
[2026-10-28 15:54:59,133.133 INFO    ] Checking for camera pi updates...
[2026-10-28 15:54:59,166.166 INFO    ] 200
[2026-10-28 15:54:59,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:54:59,209.209 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:54:59,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:54:59,373.373 INFO    ] No camera update needed
[2026-10-28 15:54:59,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:54:59,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:54:59,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:54:59,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:55:01,428.428 INFO    ] ================================================
[2026-10-28 15:55:01,443.443 INFO    ] Launching Daemon at Wed Oct 28 15:55:01 IST 2026
[2026-10-28 15:55:01,453.453 INFO    ] ================================================
[2026-10-28 15:55:02,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:55:02
[2026-10-28 15:55:02,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:55:03,193.193 INFO    ] Initializing speech engine...
[2026-10-28 15:55:03,204.204 INFO    ] 2026-10-28 15:55:03
[2026-10-28 15:55:03,497.497 INFO    ] 2026-10-28 15:55:03
[2026-10-28 15:55:03,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:55:03,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:55:03,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:55:04,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:55:04,089.089 INFO    ] time= 28/10/2026 15:55:04
[2026-10-28 15:55:04,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:55:04,111.111 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:55:04,250.250 INFO    ] No existing commands found in stream
[2026-10-28 15:55:09,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:55:09,265.265 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-10-28 15:55:12,617.617 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:55:12,619.619 INFO    ] Checking for system updates...
[2026-10-28 15:55:12,655.655 INFO    ] 200
[2026-10-28 15:55:12,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:55:12,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:55:12,711.711 INFO    ] No update needed
[2026-10-28 15:55:12,714.714 INFO    ] Checking for camera pi updates...
[2026-10-28 15:55:12,747.747 INFO    ] 200
[2026-10-28 15:55:12,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:55:12,794.794 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:55:12,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:55:12,875.875 INFO    ] No camera update needed
[2026-10-28 15:55:12,878.878 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:55:12,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:55:12,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:55:12,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:55:14,930.930 INFO    ] ================================================
[2026-10-28 15:55:14,945.945 INFO    ] Launching Daemon at Wed Oct 28 15:55:14 IST 2026
[2026-10-28 15:55:14,956.956 INFO    ] ================================================
[2026-10-28 15:55:15,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:55:15
[2026-10-28 15:55:16,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:55:16,353.353 INFO    ] Initializing speech engine...
[2026-10-28 15:55:16,376.376 INFO    ] 2026-10-28 15:55:16
[2026-10-28 15:55:16,627.627 INFO    ] 2026-10-28 15:55:16
[2026-10-28 15:55:16,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:55:16,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:55:16,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:55:17,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:55:17,182.182 INFO    ] time= 28/10/2026 15:55:17
[2026-10-28 15:55:17,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:55:17,205.205 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:55:17,334.334 INFO    ] No existing commands found in stream
[2026-10-28 15:55:22,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:55:22,352.352 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 15:55:23,078.078 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:55:23,080.080 INFO    ] Checking for system updates...
[2026-10-28 15:55:23,120.120 INFO    ] 200
[2026-10-28 15:55:23,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:55:23,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:55:23,177.177 INFO    ] No update needed
[2026-10-28 15:55:23,179.179 INFO    ] Checking for camera pi updates...
[2026-10-28 15:55:23,216.216 INFO    ] 200
[2026-10-28 15:55:23,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:55:23,259.259 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:55:23,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:55:23,340.340 INFO    ] No camera update needed
[2026-10-28 15:55:23,343.343 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:55:23,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:55:23,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:55:23,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:55:25,397.397 INFO    ] ================================================
[2026-10-28 15:55:25,411.411 INFO    ] Launching Daemon at Wed Oct 28 15:55:25 IST 2026
[2026-10-28 15:55:25,422.422 INFO    ] ================================================
[2026-10-28 15:55:26,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:55:26
[2026-10-28 15:55:26,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:55:27,007.007 INFO    ] Initializing speech engine...
[2026-10-28 15:55:27,020.020 INFO    ] 2026-10-28 15:55:27
[2026-10-28 15:55:27,332.332 INFO    ] 2026-10-28 15:55:27
[2026-10-28 15:55:27,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:55:27,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:55:27,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:55:27,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:55:27,999.999 INFO    ] time= 28/10/2026 15:55:27
[2026-10-28 15:55:28,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:55:28,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:55:28,232.232 INFO    ] No existing commands found in stream
[2026-10-28 15:55:33,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:55:33,269.269 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-28 15:55:36,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:55:36,316.316 INFO    ] Checking for system updates...
[2026-10-28 15:55:36,352.352 INFO    ] 200
[2026-10-28 15:55:36,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:55:36,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:55:36,413.413 INFO    ] No update needed
[2026-10-28 15:55:36,416.416 INFO    ] Checking for camera pi updates...
[2026-10-28 15:55:36,449.449 INFO    ] 200
[2026-10-28 15:55:36,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:55:36,495.495 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:55:36,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:55:36,594.594 INFO    ] No camera update needed
[2026-10-28 15:55:36,597.597 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:55:36,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:55:36,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:55:36,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:55:38,651.651 INFO    ] ================================================
[2026-10-28 15:55:38,666.666 INFO    ] Launching Daemon at Wed Oct 28 15:55:38 IST 2026
[2026-10-28 15:55:38,677.677 INFO    ] ================================================
[2026-10-28 15:55:39,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:55:39
[2026-10-28 15:55:39,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:55:40,110.110 INFO    ] Initializing speech engine...
[2026-10-28 15:55:40,125.125 INFO    ] 2026-10-28 15:55:40
[2026-10-28 15:55:40,389.389 INFO    ] 2026-10-28 15:55:40
[2026-10-28 15:55:40,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:55:40,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:55:40,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:55:40,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:55:40,952.952 INFO    ] time= 28/10/2026 15:55:40
[2026-10-28 15:55:40,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:55:40,976.976 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:55:41,104.104 INFO    ] No existing commands found in stream
[2026-10-28 15:55:46,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:55:46,124.124 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-28 15:55:50,231.231 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:55:50,235.235 INFO    ] Checking for system updates...
[2026-10-28 15:55:50,276.276 INFO    ] 200
[2026-10-28 15:55:50,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:55:50,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:55:50,341.341 INFO    ] No update needed
[2026-10-28 15:55:50,344.344 INFO    ] Checking for camera pi updates...
[2026-10-28 15:55:50,377.377 INFO    ] 200
[2026-10-28 15:55:50,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:55:50,419.419 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:55:50,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:55:50,506.506 INFO    ] No camera update needed
[2026-10-28 15:55:50,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:55:50,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:55:50,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:55:50,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:55:52,560.560 INFO    ] ================================================
[2026-10-28 15:55:52,575.575 INFO    ] Launching Daemon at Wed Oct 28 15:55:52 IST 2026
[2026-10-28 15:55:52,586.586 INFO    ] ================================================
[2026-10-28 15:55:53,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:55:53
[2026-10-28 15:55:53,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:55:54,167.167 INFO    ] Initializing speech engine...
[2026-10-28 15:55:54,174.174 INFO    ] 2026-10-28 15:55:54
[2026-10-28 15:55:54,417.417 INFO    ] 2026-10-28 15:55:54
[2026-10-28 15:55:54,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:55:54,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:55:54,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:55:54,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:55:54,975.975 INFO    ] time= 28/10/2026 15:55:54
[2026-10-28 15:55:54,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:55:55,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:55:55,129.129 INFO    ] No existing commands found in stream
[2026-10-28 15:56:00,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:56:00,145.145 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-28 15:56:04,609.609 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:56:04,612.612 INFO    ] Checking for system updates...
[2026-10-28 15:56:04,648.648 INFO    ] 200
[2026-10-28 15:56:04,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:56:04,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:56:04,710.710 INFO    ] No update needed
[2026-10-28 15:56:04,712.712 INFO    ] Checking for camera pi updates...
[2026-10-28 15:56:04,747.747 INFO    ] 200
[2026-10-28 15:56:04,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:56:04,790.790 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:56:04,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:56:04,887.887 INFO    ] No camera update needed
[2026-10-28 15:56:04,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:56:04,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:56:04,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:56:04,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:56:06,942.942 INFO    ] ================================================
[2026-10-28 15:56:06,956.956 INFO    ] Launching Daemon at Wed Oct 28 15:56:06 IST 2026
[2026-10-28 15:56:06,967.967 INFO    ] ================================================
[2026-10-28 15:56:07,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:56:07
[2026-10-28 15:56:08,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:56:08,366.366 INFO    ] Initializing speech engine...
[2026-10-28 15:56:08,389.389 INFO    ] 2026-10-28 15:56:08
[2026-10-28 15:56:08,645.645 INFO    ] 2026-10-28 15:56:08
[2026-10-28 15:56:08,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:56:08,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:56:08,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:56:09,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:56:09,210.210 INFO    ] time= 28/10/2026 15:56:09
[2026-10-28 15:56:09,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:56:09,234.234 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:56:09,351.351 INFO    ] No existing commands found in stream
[2026-10-28 15:56:14,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:56:14,378.378 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-28 15:56:16,756.756 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:56:16,758.758 INFO    ] Checking for system updates...
[2026-10-28 15:56:16,794.794 INFO    ] 200
[2026-10-28 15:56:16,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:56:16,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:56:16,856.856 INFO    ] No update needed
[2026-10-28 15:56:16,858.858 INFO    ] Checking for camera pi updates...
[2026-10-28 15:56:16,891.891 INFO    ] 200
[2026-10-28 15:56:16,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:56:16,936.936 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:56:17,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:56:17,021.021 INFO    ] No camera update needed
[2026-10-28 15:56:17,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:56:17,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:56:17,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:56:17,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:56:19,077.077 INFO    ] ================================================
[2026-10-28 15:56:19,092.092 INFO    ] Launching Daemon at Wed Oct 28 15:56:19 IST 2026
[2026-10-28 15:56:19,103.103 INFO    ] ================================================
[2026-10-28 15:56:19,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:56:19
[2026-10-28 15:56:20,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:56:20,532.532 INFO    ] Initializing speech engine...
[2026-10-28 15:56:20,552.552 INFO    ] 2026-10-28 15:56:20
[2026-10-28 15:56:20,812.812 INFO    ] 2026-10-28 15:56:20
[2026-10-28 15:56:20,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:56:21,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:56:21,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:56:21,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:56:21,381.381 INFO    ] time= 28/10/2026 15:56:21
[2026-10-28 15:56:21,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:56:21,431.431 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:56:21,552.552 INFO    ] No existing commands found in stream
[2026-10-28 15:56:26,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:56:26,580.580 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-28 15:56:31,004.004 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:56:31,007.007 INFO    ] Checking for system updates...
[2026-10-28 15:56:31,047.047 INFO    ] 200
[2026-10-28 15:56:31,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:56:31,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:56:31,112.112 INFO    ] No update needed
[2026-10-28 15:56:31,115.115 INFO    ] Checking for camera pi updates...
[2026-10-28 15:56:31,149.149 INFO    ] 200
[2026-10-28 15:56:31,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:56:31,195.195 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:56:31,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:56:31,279.279 INFO    ] No camera update needed
[2026-10-28 15:56:31,281.281 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:56:31,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:56:31,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:56:31,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:56:33,337.337 INFO    ] ================================================
[2026-10-28 15:56:33,351.351 INFO    ] Launching Daemon at Wed Oct 28 15:56:33 IST 2026
[2026-10-28 15:56:33,362.362 INFO    ] ================================================
[2026-10-28 15:56:33,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:56:33
[2026-10-28 15:56:34,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:56:34,832.832 INFO    ] Initializing speech engine...
[2026-10-28 15:56:34,840.840 INFO    ] 2026-10-28 15:56:34
[2026-10-28 15:56:35,095.095 INFO    ] 2026-10-28 15:56:35
[2026-10-28 15:56:35,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:56:35,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:56:35,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:56:35,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:56:35,669.669 INFO    ] time= 28/10/2026 15:56:35
[2026-10-28 15:56:35,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:56:35,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:56:35,881.881 INFO    ] No existing commands found in stream
[2026-10-28 15:56:40,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:56:40,909.909 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-28 15:56:43,978.978 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:56:43,981.981 INFO    ] Checking for system updates...
[2026-10-28 15:56:44,018.018 INFO    ] 200
[2026-10-28 15:56:44,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:56:44,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:56:44,078.078 INFO    ] No update needed
[2026-10-28 15:56:44,080.080 INFO    ] Checking for camera pi updates...
[2026-10-28 15:56:44,117.117 INFO    ] 200
[2026-10-28 15:56:44,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:56:44,165.165 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:56:44,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:56:44,248.248 INFO    ] No camera update needed
[2026-10-28 15:56:44,251.251 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:56:44,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:56:44,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:56:44,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:56:46,303.303 INFO    ] ================================================
[2026-10-28 15:56:46,318.318 INFO    ] Launching Daemon at Wed Oct 28 15:56:46 IST 2026
[2026-10-28 15:56:46,329.329 INFO    ] ================================================
[2026-10-28 15:56:46,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:56:46
[2026-10-28 15:56:47,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:56:47,758.758 INFO    ] Initializing speech engine...
[2026-10-28 15:56:47,767.767 INFO    ] 2026-10-28 15:56:47
[2026-10-28 15:56:48,013.013 INFO    ] 2026-10-28 15:56:48
[2026-10-28 15:56:48,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:56:48,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:56:48,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:56:48,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:56:48,565.565 INFO    ] time= 28/10/2026 15:56:48
[2026-10-28 15:56:48,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:56:48,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:56:48,718.718 INFO    ] No existing commands found in stream
[2026-10-28 15:56:53,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:56:53,745.745 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-28 15:56:56,949.949 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:56:56,952.952 INFO    ] Checking for system updates...
[2026-10-28 15:56:56,988.988 INFO    ] 200
[2026-10-28 15:56:56,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:56:57,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:56:57,050.050 INFO    ] No update needed
[2026-10-28 15:56:57,052.052 INFO    ] Checking for camera pi updates...
[2026-10-28 15:56:57,089.089 INFO    ] 200
[2026-10-28 15:56:57,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:56:57,148.148 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:56:57,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:56:57,235.235 INFO    ] No camera update needed
[2026-10-28 15:56:57,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:56:57,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:56:57,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:56:57,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:56:59,292.292 INFO    ] ================================================
[2026-10-28 15:56:59,307.307 INFO    ] Launching Daemon at Wed Oct 28 15:56:59 IST 2026
[2026-10-28 15:56:59,318.318 INFO    ] ================================================
[2026-10-28 15:56:59,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:56:59
[2026-10-28 15:57:00,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:57:00,722.722 INFO    ] Initializing speech engine...
[2026-10-28 15:57:00,745.745 INFO    ] 2026-10-28 15:57:00
[2026-10-28 15:57:01,000.000 INFO    ] 2026-10-28 15:57:00
[2026-10-28 15:57:01,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:57:01,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:57:01,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:57:01,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:57:01,531.531 INFO    ] time= 28/10/2026 15:57:01
[2026-10-28 15:57:01,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:57:01,538.538 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:57:01,645.645 INFO    ] No existing commands found in stream
[2026-10-28 15:57:06,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:57:06,669.669 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-28 15:57:08,897.897 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:57:08,900.900 INFO    ] Checking for system updates...
[2026-10-28 15:57:08,936.936 INFO    ] 200
[2026-10-28 15:57:08,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:57:08,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:57:09,001.001 INFO    ] No update needed
[2026-10-28 15:57:09,004.004 INFO    ] Checking for camera pi updates...
[2026-10-28 15:57:09,042.042 INFO    ] 200
[2026-10-28 15:57:09,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:57:09,091.091 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:57:09,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:57:09,180.180 INFO    ] No camera update needed
[2026-10-28 15:57:09,182.182 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:57:09,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:57:09,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:57:09,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:57:11,238.238 INFO    ] ================================================
[2026-10-28 15:57:11,253.253 INFO    ] Launching Daemon at Wed Oct 28 15:57:11 IST 2026
[2026-10-28 15:57:11,264.264 INFO    ] ================================================
[2026-10-28 15:57:11,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:57:11
[2026-10-28 15:57:12,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:57:12,843.843 INFO    ] Initializing speech engine...
[2026-10-28 15:57:12,858.858 INFO    ] 2026-10-28 15:57:12
[2026-10-28 15:57:13,141.141 INFO    ] 2026-10-28 15:57:13
[2026-10-28 15:57:13,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:57:13,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:57:13,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:57:13,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:57:13,873.873 INFO    ] time= 28/10/2026 15:57:13
[2026-10-28 15:57:13,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:57:13,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:57:14,119.119 INFO    ] No existing commands found in stream
[2026-10-28 15:57:19,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:57:19,148.148 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-28 15:57:20,154.154 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:57:20,157.157 INFO    ] Checking for system updates...
[2026-10-28 15:57:20,194.194 INFO    ] 200
[2026-10-28 15:57:20,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:57:20,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:57:20,258.258 INFO    ] No update needed
[2026-10-28 15:57:20,260.260 INFO    ] Checking for camera pi updates...
[2026-10-28 15:57:20,297.297 INFO    ] 200
[2026-10-28 15:57:20,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:57:20,340.340 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:57:20,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:57:20,437.437 INFO    ] No camera update needed
[2026-10-28 15:57:20,440.440 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:57:20,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:57:20,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:57:20,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:57:22,495.495 INFO    ] ================================================
[2026-10-28 15:57:22,510.510 INFO    ] Launching Daemon at Wed Oct 28 15:57:22 IST 2026
[2026-10-28 15:57:22,520.520 INFO    ] ================================================
[2026-10-28 15:57:23,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:57:23
[2026-10-28 15:57:23,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:57:24,092.092 INFO    ] Initializing speech engine...
[2026-10-28 15:57:24,101.101 INFO    ] 2026-10-28 15:57:24
[2026-10-28 15:57:24,386.386 INFO    ] 2026-10-28 15:57:24
[2026-10-28 15:57:24,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:57:24,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:57:24,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:57:25,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:57:25,073.073 INFO    ] time= 28/10/2026 15:57:25
[2026-10-28 15:57:25,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:57:25,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:57:25,320.320 INFO    ] No existing commands found in stream
[2026-10-28 15:57:30,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:57:30,352.352 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 15:57:34,167.167 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:57:34,169.169 INFO    ] Checking for system updates...
[2026-10-28 15:57:34,206.206 INFO    ] 200
[2026-10-28 15:57:34,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:57:34,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:57:34,264.264 INFO    ] No update needed
[2026-10-28 15:57:34,267.267 INFO    ] Checking for camera pi updates...
[2026-10-28 15:57:34,300.300 INFO    ] 200
[2026-10-28 15:57:34,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:57:34,348.348 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:57:34,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:57:34,400.400 INFO    ] No camera update needed
[2026-10-28 15:57:34,402.402 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:57:34,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:57:34,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:57:34,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:57:36,455.455 INFO    ] ================================================
[2026-10-28 15:57:36,470.470 INFO    ] Launching Daemon at Wed Oct 28 15:57:36 IST 2026
[2026-10-28 15:57:36,480.480 INFO    ] ================================================
[2026-10-28 15:57:37,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:57:37
[2026-10-28 15:57:37,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:57:37,941.941 INFO    ] Initializing speech engine...
[2026-10-28 15:57:37,950.950 INFO    ] 2026-10-28 15:57:37
[2026-10-28 15:57:38,216.216 INFO    ] 2026-10-28 15:57:38
[2026-10-28 15:57:38,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:57:38,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:57:38,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:57:38,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:57:38,822.822 INFO    ] time= 28/10/2026 15:57:38
[2026-10-28 15:57:38,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:57:38,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:57:39,011.011 INFO    ] No existing commands found in stream
[2026-10-28 15:57:44,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:57:44,039.039 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-28 15:57:47,539.539 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:57:47,542.542 INFO    ] Checking for system updates...
[2026-10-28 15:57:47,581.581 INFO    ] 200
[2026-10-28 15:57:47,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:57:47,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:57:47,639.639 INFO    ] No update needed
[2026-10-28 15:57:47,642.642 INFO    ] Checking for camera pi updates...
[2026-10-28 15:57:47,676.676 INFO    ] 200
[2026-10-28 15:57:47,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:57:47,721.721 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:57:47,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:57:47,802.802 INFO    ] No camera update needed
[2026-10-28 15:57:47,805.805 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:57:47,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:57:47,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:57:47,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:57:49,861.861 INFO    ] ================================================
[2026-10-28 15:57:49,876.876 INFO    ] Launching Daemon at Wed Oct 28 15:57:49 IST 2026
[2026-10-28 15:57:49,887.887 INFO    ] ================================================
[2026-10-28 15:57:50,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:57:50
[2026-10-28 15:57:51,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:57:51,306.306 INFO    ] Initializing speech engine...
[2026-10-28 15:57:51,311.311 INFO    ] 2026-10-28 15:57:51
[2026-10-28 15:57:51,600.600 INFO    ] 2026-10-28 15:57:51
[2026-10-28 15:57:51,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:57:51,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:57:51,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:57:52,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:57:52,118.118 INFO    ] time= 28/10/2026 15:57:52
[2026-10-28 15:57:52,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:57:52,217.217 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:57:52,359.359 INFO    ] No existing commands found in stream
[2026-10-28 15:57:57,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:57:57,387.387 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 15:58:00,351.351 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:58:00,354.354 INFO    ] Checking for system updates...
[2026-10-28 15:58:00,391.391 INFO    ] 200
[2026-10-28 15:58:00,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:58:00,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:58:00,450.450 INFO    ] No update needed
[2026-10-28 15:58:00,452.452 INFO    ] Checking for camera pi updates...
[2026-10-28 15:58:00,489.489 INFO    ] 200
[2026-10-28 15:58:00,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:58:00,537.537 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:58:00,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:58:00,624.624 INFO    ] No camera update needed
[2026-10-28 15:58:00,627.627 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:58:00,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:58:00,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:58:00,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:58:02,687.687 INFO    ] ================================================
[2026-10-28 15:58:02,710.710 INFO    ] Launching Daemon at Wed Oct 28 15:58:02 IST 2026
[2026-10-28 15:58:02,727.727 INFO    ] ================================================
[2026-10-28 15:58:03,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:58:03
[2026-10-28 15:58:03,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:58:04,262.262 INFO    ] Initializing speech engine...
[2026-10-28 15:58:04,281.281 INFO    ] 2026-10-28 15:58:04
[2026-10-28 15:58:04,546.546 INFO    ] 2026-10-28 15:58:04
[2026-10-28 15:58:04,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:58:04,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:58:04,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:58:05,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:58:05,148.148 INFO    ] time= 28/10/2026 15:58:05
[2026-10-28 15:58:05,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:58:05,169.169 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:58:05,301.301 INFO    ] No existing commands found in stream
[2026-10-28 15:58:10,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:58:10,324.324 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-28 15:58:14,373.373 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:58:14,375.375 INFO    ] Checking for system updates...
[2026-10-28 15:58:14,411.411 INFO    ] 200
[2026-10-28 15:58:14,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:58:14,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:58:14,467.467 INFO    ] No update needed
[2026-10-28 15:58:14,470.470 INFO    ] Checking for camera pi updates...
[2026-10-28 15:58:14,506.506 INFO    ] 200
[2026-10-28 15:58:14,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:58:14,548.548 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:58:14,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:58:14,631.631 INFO    ] No camera update needed
[2026-10-28 15:58:14,634.634 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:58:14,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:58:14,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:58:14,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:58:16,687.687 INFO    ] ================================================
[2026-10-28 15:58:16,701.701 INFO    ] Launching Daemon at Wed Oct 28 15:58:16 IST 2026
[2026-10-28 15:58:16,712.712 INFO    ] ================================================
[2026-10-28 15:58:17,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:58:17
[2026-10-28 15:58:17,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:58:18,120.120 INFO    ] Initializing speech engine...
[2026-10-28 15:58:18,144.144 INFO    ] 2026-10-28 15:58:18
[2026-10-28 15:58:18,412.412 INFO    ] 2026-10-28 15:58:18
[2026-10-28 15:58:18,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:58:18,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:58:18,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:58:18,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:58:18,900.900 INFO    ] time= 28/10/2026 15:58:18
[2026-10-28 15:58:18,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:58:19,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:58:19,167.167 INFO    ] No existing commands found in stream
[2026-10-28 15:58:24,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:58:24,191.191 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 15:58:28,714.714 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:58:28,716.716 INFO    ] Checking for system updates...
[2026-10-28 15:58:28,752.752 INFO    ] 200
[2026-10-28 15:58:28,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:58:28,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:58:28,844.844 INFO    ] No update needed
[2026-10-28 15:58:28,847.847 INFO    ] Checking for camera pi updates...
[2026-10-28 15:58:28,881.881 INFO    ] 200
[2026-10-28 15:58:28,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:58:28,929.929 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:58:29,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:58:29,041.041 INFO    ] No camera update needed
[2026-10-28 15:58:29,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:58:29,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:58:29,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:58:29,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:58:31,106.106 INFO    ] ================================================
[2026-10-28 15:58:31,121.121 INFO    ] Launching Daemon at Wed Oct 28 15:58:31 IST 2026
[2026-10-28 15:58:31,132.132 INFO    ] ================================================
[2026-10-28 15:58:31,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:58:31
[2026-10-28 15:58:32,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:58:32,821.821 INFO    ] Initializing speech engine...
[2026-10-28 15:58:32,831.831 INFO    ] 2026-10-28 15:58:32
[2026-10-28 15:58:33,155.155 INFO    ] 2026-10-28 15:58:33
[2026-10-28 15:58:33,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:58:33,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:58:33,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:58:33,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:58:33,812.812 INFO    ] time= 28/10/2026 15:58:33
[2026-10-28 15:58:33,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:58:33,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:58:34,054.054 INFO    ] No existing commands found in stream
[2026-10-28 15:58:39,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:58:39,070.070 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-28 15:58:39,852.852 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 15:58:39,855.855 INFO    ] Checking for system updates...
[2026-10-28 15:58:39,891.891 INFO    ] 200
[2026-10-28 15:58:39,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:58:39,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:58:39,950.950 INFO    ] No update needed
[2026-10-28 15:58:39,953.953 INFO    ] Checking for camera pi updates...
[2026-10-28 15:58:39,990.990 INFO    ] 200
[2026-10-28 15:58:39,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:58:40,035.035 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:58:40,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:58:40,121.121 INFO    ] No camera update needed
[2026-10-28 15:58:40,124.124 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:58:40,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:58:40,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:58:40,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:58:42,179.179 INFO    ] ================================================
[2026-10-28 15:58:42,194.194 INFO    ] Launching Daemon at Wed Oct 28 15:58:42 IST 2026
[2026-10-28 15:58:42,205.205 INFO    ] ================================================
[2026-10-28 15:58:42,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:58:42
[2026-10-28 15:58:43,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:58:43,604.604 INFO    ] Initializing speech engine...
[2026-10-28 15:58:43,627.627 INFO    ] 2026-10-28 15:58:43
[2026-10-28 15:58:43,878.878 INFO    ] 2026-10-28 15:58:43
[2026-10-28 15:58:43,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:58:44,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:58:44,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:58:44,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:58:44,434.434 INFO    ] time= 28/10/2026 15:58:44
[2026-10-28 15:58:44,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:58:44,479.479 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:58:44,615.615 INFO    ] No existing commands found in stream
[2026-10-28 15:58:49,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:58:49,648.648 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-28 15:58:52,190.190 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:58:52,193.193 INFO    ] Checking for system updates...
[2026-10-28 15:58:52,228.228 INFO    ] 200
[2026-10-28 15:58:52,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:58:52,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:58:52,293.293 INFO    ] No update needed
[2026-10-28 15:58:52,296.296 INFO    ] Checking for camera pi updates...
[2026-10-28 15:58:52,329.329 INFO    ] 200
[2026-10-28 15:58:52,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:58:52,374.374 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:58:52,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:58:52,471.471 INFO    ] No camera update needed
[2026-10-28 15:58:52,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:58:52,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:58:52,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:58:52,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:58:54,527.527 INFO    ] ================================================
[2026-10-28 15:58:54,542.542 INFO    ] Launching Daemon at Wed Oct 28 15:58:54 IST 2026
[2026-10-28 15:58:54,552.552 INFO    ] ================================================
[2026-10-28 15:58:55,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:58:55
[2026-10-28 15:58:55,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:58:55,974.974 INFO    ] Initializing speech engine...
[2026-10-28 15:58:55,983.983 INFO    ] 2026-10-28 15:58:55
[2026-10-28 15:58:56,239.239 INFO    ] 2026-10-28 15:58:56
[2026-10-28 15:58:56,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:58:56,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:58:56,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:58:56,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:58:56,798.798 INFO    ] time= 28/10/2026 15:58:56
[2026-10-28 15:58:56,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:58:56,833.833 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:58:56,951.951 INFO    ] No existing commands found in stream
[2026-10-28 15:59:01,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:59:01,981.981 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-28 15:59:06,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 15:59:06,204.204 INFO    ] Checking for system updates...
[2026-10-28 15:59:06,239.239 INFO    ] 200
[2026-10-28 15:59:06,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:59:06,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:59:06,297.297 INFO    ] No update needed
[2026-10-28 15:59:06,299.299 INFO    ] Checking for camera pi updates...
[2026-10-28 15:59:06,332.332 INFO    ] 200
[2026-10-28 15:59:06,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:59:06,375.375 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:59:06,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:59:06,576.576 INFO    ] No camera update needed
[2026-10-28 15:59:06,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:59:06,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:59:06,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:59:06,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:59:08,632.632 INFO    ] ================================================
[2026-10-28 15:59:08,647.647 INFO    ] Launching Daemon at Wed Oct 28 15:59:08 IST 2026
[2026-10-28 15:59:08,657.657 INFO    ] ================================================
[2026-10-28 15:59:09,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:59:09
[2026-10-28 15:59:09,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:59:10,300.300 INFO    ] Initializing speech engine...
[2026-10-28 15:59:10,313.313 INFO    ] 2026-10-28 15:59:10
[2026-10-28 15:59:10,625.625 INFO    ] 2026-10-28 15:59:10
[2026-10-28 15:59:10,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:59:10,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:59:11,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:59:11,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:59:11,326.326 INFO    ] time= 28/10/2026 15:59:11
[2026-10-28 15:59:11,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:59:11,406.406 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:59:11,563.563 INFO    ] No existing commands found in stream
[2026-10-28 15:59:16,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:59:16,582.582 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-28 15:59:18,870.870 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 15:59:18,873.873 INFO    ] Checking for system updates...
[2026-10-28 15:59:18,908.908 INFO    ] 200
[2026-10-28 15:59:18,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:59:18,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:59:18,968.968 INFO    ] No update needed
[2026-10-28 15:59:18,970.970 INFO    ] Checking for camera pi updates...
[2026-10-28 15:59:19,003.003 INFO    ] 200
[2026-10-28 15:59:19,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:59:19,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:59:19,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:59:19,127.127 INFO    ] No camera update needed
[2026-10-28 15:59:19,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:59:19,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:59:19,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:59:19,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:59:21,182.182 INFO    ] ================================================
[2026-10-28 15:59:21,197.197 INFO    ] Launching Daemon at Wed Oct 28 15:59:21 IST 2026
[2026-10-28 15:59:21,207.207 INFO    ] ================================================
[2026-10-28 15:59:21,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:59:21
[2026-10-28 15:59:22,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:59:22,600.600 INFO    ] Initializing speech engine...
[2026-10-28 15:59:22,608.608 INFO    ] 2026-10-28 15:59:22
[2026-10-28 15:59:22,886.886 INFO    ] 2026-10-28 15:59:22
[2026-10-28 15:59:22,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:59:23,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:59:23,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:59:23,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:59:23,442.442 INFO    ] time= 28/10/2026 15:59:23
[2026-10-28 15:59:23,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:59:23,466.466 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:59:23,598.598 INFO    ] No existing commands found in stream
[2026-10-28 15:59:28,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:59:28,615.615 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-28 15:59:30,814.814 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:59:30,816.816 INFO    ] Checking for system updates...
[2026-10-28 15:59:30,856.856 INFO    ] 200
[2026-10-28 15:59:30,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:59:30,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:59:30,914.914 INFO    ] No update needed
[2026-10-28 15:59:30,917.917 INFO    ] Checking for camera pi updates...
[2026-10-28 15:59:30,954.954 INFO    ] 200
[2026-10-28 15:59:30,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:59:30,996.996 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:59:31,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:59:31,085.085 INFO    ] No camera update needed
[2026-10-28 15:59:31,088.088 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:59:31,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:59:31,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:59:31,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:59:33,143.143 INFO    ] ================================================
[2026-10-28 15:59:33,158.158 INFO    ] Launching Daemon at Wed Oct 28 15:59:33 IST 2026
[2026-10-28 15:59:33,170.170 INFO    ] ================================================
[2026-10-28 15:59:33,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:59:33
[2026-10-28 15:59:34,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:59:34,568.568 INFO    ] Initializing speech engine...
[2026-10-28 15:59:34,591.591 INFO    ] 2026-10-28 15:59:34
[2026-10-28 15:59:34,848.848 INFO    ] 2026-10-28 15:59:34
[2026-10-28 15:59:34,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:59:35,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:59:35,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:59:35,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:59:35,400.400 INFO    ] time= 28/10/2026 15:59:35
[2026-10-28 15:59:35,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:59:35,426.426 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:59:35,554.554 INFO    ] No existing commands found in stream
[2026-10-28 15:59:40,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:59:40,571.571 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-28 15:59:43,311.311 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 15:59:43,314.314 INFO    ] Checking for system updates...
[2026-10-28 15:59:43,354.354 INFO    ] 200
[2026-10-28 15:59:43,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:59:43,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:59:43,413.413 INFO    ] No update needed
[2026-10-28 15:59:43,415.415 INFO    ] Checking for camera pi updates...
[2026-10-28 15:59:43,448.448 INFO    ] 200
[2026-10-28 15:59:43,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:59:43,491.491 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:59:43,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 15:59:43,584.584 INFO    ] No camera update needed
[2026-10-28 15:59:43,586.586 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:59:43,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:59:43,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:59:43,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:59:45,639.639 INFO    ] ================================================
[2026-10-28 15:59:45,654.654 INFO    ] Launching Daemon at Wed Oct 28 15:59:45 IST 2026
[2026-10-28 15:59:45,665.665 INFO    ] ================================================
[2026-10-28 15:59:46,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:59:46
[2026-10-28 15:59:46,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:59:47,101.101 INFO    ] Initializing speech engine...
[2026-10-28 15:59:47,110.110 INFO    ] 2026-10-28 15:59:47
[2026-10-28 15:59:47,367.367 INFO    ] 2026-10-28 15:59:47
[2026-10-28 15:59:47,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:59:47,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:59:47,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:59:47,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:59:47,912.912 INFO    ] time= 28/10/2026 15:59:47
[2026-10-28 15:59:47,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:59:47,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:59:48,064.064 INFO    ] No existing commands found in stream
[2026-10-28 15:59:53,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 15:59:53,079.079 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-28 15:59:55,016.016 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 15:59:55,018.018 INFO    ] Checking for system updates...
[2026-10-28 15:59:55,054.054 INFO    ] 200
[2026-10-28 15:59:55,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:59:55,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:59:55,116.116 INFO    ] No update needed
[2026-10-28 15:59:55,119.119 INFO    ] Checking for camera pi updates...
[2026-10-28 15:59:55,153.153 INFO    ] 200
[2026-10-28 15:59:55,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 15:59:55,196.196 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 15:59:55,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 15:59:55,267.267 INFO    ] No camera update needed
[2026-10-28 15:59:55,269.269 INFO    ] Script finished. Safe exiting...
[2026-10-28 15:59:55,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 15:59:55,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 15:59:55,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 15:59:57,324.324 INFO    ] ================================================
[2026-10-28 15:59:57,339.339 INFO    ] Launching Daemon at Wed Oct 28 15:59:57 IST 2026
[2026-10-28 15:59:57,350.350 INFO    ] ================================================
[2026-10-28 15:59:57,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 15:59:57
[2026-10-28 15:59:58,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 15:59:58,815.815 INFO    ] Initializing speech engine...
[2026-10-28 15:59:58,824.824 INFO    ] 2026-10-28 15:59:58
[2026-10-28 15:59:59,102.102 INFO    ] 2026-10-28 15:59:59
[2026-10-28 15:59:59,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 15:59:59,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 15:59:59,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 15:59:59,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 15:59:59,667.667 INFO    ] time= 28/10/2026 15:59:59
[2026-10-28 15:59:59,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 15:59:59,706.706 INFO    ] Checking for existing commands in stream...
[2026-10-28 15:59:59,848.848 INFO    ] No existing commands found in stream
[2026-10-28 16:00:04,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:00:04,881.881 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-28 16:00:08,035.035 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:00:08,038.038 INFO    ] Checking for system updates...
[2026-10-28 16:00:08,077.077 INFO    ] 200
[2026-10-28 16:00:08,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:00:08,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:00:08,135.135 INFO    ] No update needed
[2026-10-28 16:00:08,137.137 INFO    ] Checking for camera pi updates...
[2026-10-28 16:00:08,175.175 INFO    ] 200
[2026-10-28 16:00:08,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:00:08,218.218 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:00:08,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:00:08,322.322 INFO    ] No camera update needed
[2026-10-28 16:00:08,324.324 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:00:08,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:00:08,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:00:08,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:00:10,376.376 INFO    ] ================================================
[2026-10-28 16:00:10,391.391 INFO    ] Launching Daemon at Wed Oct 28 16:00:10 IST 2026
[2026-10-28 16:00:10,402.402 INFO    ] ================================================
[2026-10-28 16:00:10,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:00:10
[2026-10-28 16:00:11,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:00:11,805.805 INFO    ] Initializing speech engine...
[2026-10-28 16:00:11,811.811 INFO    ] 2026-10-28 16:00:11
[2026-10-28 16:00:12,107.107 INFO    ] 2026-10-28 16:00:12
[2026-10-28 16:00:12,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:00:12,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:00:12,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:00:12,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:00:12,724.724 INFO    ] time= 28/10/2026 16:00:12
[2026-10-28 16:00:12,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:00:12,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:00:12,886.886 INFO    ] No existing commands found in stream
[2026-10-28 16:00:17,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:00:17,914.914 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 16:00:19,019.019 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:00:19,022.022 INFO    ] Checking for system updates...
[2026-10-28 16:00:19,062.062 INFO    ] 200
[2026-10-28 16:00:19,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:00:19,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:00:19,121.121 INFO    ] No update needed
[2026-10-28 16:00:19,124.124 INFO    ] Checking for camera pi updates...
[2026-10-28 16:00:19,158.158 INFO    ] 200
[2026-10-28 16:00:19,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:00:19,204.204 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:00:19,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:00:19,291.291 INFO    ] No camera update needed
[2026-10-28 16:00:19,294.294 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:00:19,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:00:19,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:00:19,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:00:21,352.352 INFO    ] ================================================
[2026-10-28 16:00:21,368.368 INFO    ] Launching Daemon at Wed Oct 28 16:00:21 IST 2026
[2026-10-28 16:00:21,379.379 INFO    ] ================================================
[2026-10-28 16:00:21,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:00:21
[2026-10-28 16:00:22,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:00:22,845.845 INFO    ] Initializing speech engine...
[2026-10-28 16:00:22,854.854 INFO    ] 2026-10-28 16:00:22
[2026-10-28 16:00:23,137.137 INFO    ] 2026-10-28 16:00:23
[2026-10-28 16:00:23,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:00:23,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:00:23,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:00:23,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:00:23,632.632 INFO    ] time= 28/10/2026 16:00:23
[2026-10-28 16:00:23,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:00:23,730.730 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:00:23,862.862 INFO    ] No existing commands found in stream
[2026-10-28 16:00:28,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:00:28,888.888 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-28 16:00:30,447.447 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:00:30,450.450 INFO    ] Checking for system updates...
[2026-10-28 16:00:30,489.489 INFO    ] 200
[2026-10-28 16:00:30,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:00:30,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:00:30,554.554 INFO    ] No update needed
[2026-10-28 16:00:30,557.557 INFO    ] Checking for camera pi updates...
[2026-10-28 16:00:30,590.590 INFO    ] 200
[2026-10-28 16:00:30,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:00:30,638.638 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:00:30,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:00:30,725.725 INFO    ] No camera update needed
[2026-10-28 16:00:30,728.728 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:00:30,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:00:30,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:00:30,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:00:32,782.782 INFO    ] ================================================
[2026-10-28 16:00:32,798.798 INFO    ] Launching Daemon at Wed Oct 28 16:00:32 IST 2026
[2026-10-28 16:00:32,809.809 INFO    ] ================================================
[2026-10-28 16:00:33,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:00:33
[2026-10-28 16:00:34,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:00:34,342.342 INFO    ] Initializing speech engine...
[2026-10-28 16:00:34,351.351 INFO    ] 2026-10-28 16:00:34
[2026-10-28 16:00:34,598.598 INFO    ] 2026-10-28 16:00:34
[2026-10-28 16:00:34,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:00:34,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:00:34,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:00:35,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:00:35,154.154 INFO    ] time= 28/10/2026 16:00:35
[2026-10-28 16:00:35,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:00:35,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:00:35,315.315 INFO    ] No existing commands found in stream
[2026-10-28 16:00:40,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:00:40,348.348 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-28 16:00:40,929.929 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:00:40,931.931 INFO    ] Checking for system updates...
[2026-10-28 16:00:40,970.970 INFO    ] 200
[2026-10-28 16:00:40,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:00:41,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:00:41,034.034 INFO    ] No update needed
[2026-10-28 16:00:41,037.037 INFO    ] Checking for camera pi updates...
[2026-10-28 16:00:41,070.070 INFO    ] 200
[2026-10-28 16:00:41,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:00:41,117.117 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:00:41,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:00:41,217.217 INFO    ] No camera update needed
[2026-10-28 16:00:41,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:00:41,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:00:41,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:00:41,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:00:43,273.273 INFO    ] ================================================
[2026-10-28 16:00:43,319.319 INFO    ] Launching Daemon at Wed Oct 28 16:00:43 IST 2026
[2026-10-28 16:00:43,336.336 INFO    ] ================================================
[2026-10-28 16:00:43,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:00:43
[2026-10-28 16:00:44,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:00:44,961.961 INFO    ] Initializing speech engine...
[2026-10-28 16:00:44,975.975 INFO    ] 2026-10-28 16:00:44
[2026-10-28 16:00:45,284.284 INFO    ] 2026-10-28 16:00:45
[2026-10-28 16:00:45,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:00:45,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:00:45,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:00:45,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:00:45,834.834 INFO    ] time= 28/10/2026 16:00:45
[2026-10-28 16:00:45,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:00:45,884.884 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:00:46,041.041 INFO    ] No existing commands found in stream
[2026-10-28 16:00:51,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:00:51,061.061 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-28 16:00:55,674.674 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:00:55,677.677 INFO    ] Checking for system updates...
[2026-10-28 16:00:55,715.715 INFO    ] 200
[2026-10-28 16:00:55,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:00:55,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:00:55,774.774 INFO    ] No update needed
[2026-10-28 16:00:55,777.777 INFO    ] Checking for camera pi updates...
[2026-10-28 16:00:55,812.812 INFO    ] 200
[2026-10-28 16:00:55,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:00:55,857.857 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:00:55,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:00:55,958.958 INFO    ] No camera update needed
[2026-10-28 16:00:55,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:00:55,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:00:55,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:00:55,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:00:58,017.017 INFO    ] ================================================
[2026-10-28 16:00:58,032.032 INFO    ] Launching Daemon at Wed Oct 28 16:00:58 IST 2026
[2026-10-28 16:00:58,042.042 INFO    ] ================================================
[2026-10-28 16:00:58,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:00:58
[2026-10-28 16:00:59,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:00:59,466.466 INFO    ] Initializing speech engine...
[2026-10-28 16:00:59,481.481 INFO    ] 2026-10-28 16:00:59
[2026-10-28 16:00:59,743.743 INFO    ] 2026-10-28 16:00:59
[2026-10-28 16:00:59,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:01:00,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:01:00,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:01:00,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:01:00,299.299 INFO    ] time= 28/10/2026 16:01:00
[2026-10-28 16:01:00,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:01:00,320.320 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:01:00,453.453 INFO    ] No existing commands found in stream
[2026-10-28 16:01:05,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:01:05,468.468 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-28 16:01:08,372.372 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:01:08,375.375 INFO    ] Checking for system updates...
[2026-10-28 16:01:08,415.415 INFO    ] 200
[2026-10-28 16:01:08,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:01:08,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:01:08,475.475 INFO    ] No update needed
[2026-10-28 16:01:08,478.478 INFO    ] Checking for camera pi updates...
[2026-10-28 16:01:08,529.529 INFO    ] 200
[2026-10-28 16:01:08,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:01:08,571.571 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:01:08,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:01:08,657.657 INFO    ] No camera update needed
[2026-10-28 16:01:08,660.660 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:01:08,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:01:08,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:01:08,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:01:10,714.714 INFO    ] ================================================
[2026-10-28 16:01:10,729.729 INFO    ] Launching Daemon at Wed Oct 28 16:01:10 IST 2026
[2026-10-28 16:01:10,740.740 INFO    ] ================================================
[2026-10-28 16:01:11,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:01:11
[2026-10-28 16:01:11,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:01:12,150.150 INFO    ] Initializing speech engine...
[2026-10-28 16:01:12,159.159 INFO    ] 2026-10-28 16:01:12
[2026-10-28 16:01:12,404.404 INFO    ] 2026-10-28 16:01:12
[2026-10-28 16:01:12,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:01:12,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:01:12,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:01:12,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:01:12,951.951 INFO    ] time= 28/10/2026 16:01:12
[2026-10-28 16:01:12,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:01:12,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:01:13,102.102 INFO    ] No existing commands found in stream
[2026-10-28 16:01:18,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:01:18,120.120 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-28 16:01:19,979.979 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:01:19,982.982 INFO    ] Checking for system updates...
[2026-10-28 16:01:20,021.021 INFO    ] 200
[2026-10-28 16:01:20,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:01:20,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:01:20,080.080 INFO    ] No update needed
[2026-10-28 16:01:20,082.082 INFO    ] Checking for camera pi updates...
[2026-10-28 16:01:20,120.120 INFO    ] 200
[2026-10-28 16:01:20,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:01:20,168.168 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:01:20,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:01:20,334.334 INFO    ] No camera update needed
[2026-10-28 16:01:20,336.336 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:01:20,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:01:20,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:01:20,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:01:22,389.389 INFO    ] ================================================
[2026-10-28 16:01:22,405.405 INFO    ] Launching Daemon at Wed Oct 28 16:01:22 IST 2026
[2026-10-28 16:01:22,415.415 INFO    ] ================================================
[2026-10-28 16:01:23,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:01:23
[2026-10-28 16:01:23,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:01:23,983.983 INFO    ] Initializing speech engine...
[2026-10-28 16:01:23,995.995 INFO    ] 2026-10-28 16:01:23
[2026-10-28 16:01:24,307.307 INFO    ] 2026-10-28 16:01:24
[2026-10-28 16:01:24,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:01:24,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:01:24,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:01:24,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:01:24,959.959 INFO    ] time= 28/10/2026 16:01:24
[2026-10-28 16:01:25,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:01:25,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:01:25,213.213 INFO    ] No existing commands found in stream
[2026-10-28 16:01:30,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:01:30,230.230 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-28 16:01:33,925.925 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:01:33,928.928 INFO    ] Checking for system updates...
[2026-10-28 16:01:33,965.965 INFO    ] 200
[2026-10-28 16:01:33,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:01:34,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:01:34,026.026 INFO    ] No update needed
[2026-10-28 16:01:34,029.029 INFO    ] Checking for camera pi updates...
[2026-10-28 16:01:34,066.066 INFO    ] 200
[2026-10-28 16:01:34,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:01:34,110.110 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:01:34,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:01:34,197.197 INFO    ] No camera update needed
[2026-10-28 16:01:34,200.200 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:01:34,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:01:34,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:01:34,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:01:36,260.260 INFO    ] ================================================
[2026-10-28 16:01:36,276.276 INFO    ] Launching Daemon at Wed Oct 28 16:01:36 IST 2026
[2026-10-28 16:01:36,287.287 INFO    ] ================================================
[2026-10-28 16:01:36,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:01:36
[2026-10-28 16:01:37,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:01:37,715.715 INFO    ] Initializing speech engine...
[2026-10-28 16:01:37,738.738 INFO    ] 2026-10-28 16:01:37
[2026-10-28 16:01:37,995.995 INFO    ] 2026-10-28 16:01:37
[2026-10-28 16:01:38,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:01:38,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:01:38,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:01:38,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:01:38,565.565 INFO    ] time= 28/10/2026 16:01:38
[2026-10-28 16:01:38,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:01:38,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:01:38,718.718 INFO    ] No existing commands found in stream
[2026-10-28 16:01:43,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:01:43,738.738 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-28 16:01:44,971.971 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:01:44,974.974 INFO    ] Checking for system updates...
[2026-10-28 16:01:45,009.009 INFO    ] 200
[2026-10-28 16:01:45,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:01:45,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:01:45,072.072 INFO    ] No update needed
[2026-10-28 16:01:45,075.075 INFO    ] Checking for camera pi updates...
[2026-10-28 16:01:45,109.109 INFO    ] 200
[2026-10-28 16:01:45,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:01:45,157.157 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:01:45,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:01:45,252.252 INFO    ] No camera update needed
[2026-10-28 16:01:45,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:01:45,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:01:45,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:01:45,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:01:47,310.310 INFO    ] ================================================
[2026-10-28 16:01:47,325.325 INFO    ] Launching Daemon at Wed Oct 28 16:01:47 IST 2026
[2026-10-28 16:01:47,336.336 INFO    ] ================================================
[2026-10-28 16:01:47,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:01:47
[2026-10-28 16:01:48,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:01:48,773.773 INFO    ] Initializing speech engine...
[2026-10-28 16:01:48,783.783 INFO    ] 2026-10-28 16:01:48
[2026-10-28 16:01:49,064.064 INFO    ] 2026-10-28 16:01:49
[2026-10-28 16:01:49,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:01:49,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:01:49,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:01:49,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:01:49,646.646 INFO    ] time= 28/10/2026 16:01:49
[2026-10-28 16:01:49,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:01:49,710.710 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:01:49,848.848 INFO    ] No existing commands found in stream
[2026-10-28 16:01:54,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:01:54,865.865 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-28 16:01:55,595.595 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:01:55,598.598 INFO    ] Checking for system updates...
[2026-10-28 16:01:55,635.635 INFO    ] 200
[2026-10-28 16:01:55,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:01:55,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:01:55,700.700 INFO    ] No update needed
[2026-10-28 16:01:55,702.702 INFO    ] Checking for camera pi updates...
[2026-10-28 16:01:55,740.740 INFO    ] 200
[2026-10-28 16:01:55,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:01:55,785.785 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:01:55,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:01:55,903.903 INFO    ] No camera update needed
[2026-10-28 16:01:55,906.906 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:01:55,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:01:55,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:01:55,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:01:57,963.963 INFO    ] ================================================
[2026-10-28 16:01:57,978.978 INFO    ] Launching Daemon at Wed Oct 28 16:01:57 IST 2026
[2026-10-28 16:01:57,988.988 INFO    ] ================================================
[2026-10-28 16:01:58,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:01:58
[2026-10-28 16:01:59,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:01:59,587.587 INFO    ] Initializing speech engine...
[2026-10-28 16:01:59,600.600 INFO    ] 2026-10-28 16:01:59
[2026-10-28 16:01:59,907.907 INFO    ] 2026-10-28 16:01:59
[2026-10-28 16:01:59,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:02:00,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:02:00,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:02:00,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:02:00,601.601 INFO    ] time= 28/10/2026 16:02:00
[2026-10-28 16:02:00,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:02:00,693.693 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:02:00,837.837 INFO    ] No existing commands found in stream
[2026-10-28 16:02:05,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:02:05,871.871 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-28 16:02:07,532.532 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:02:07,536.536 INFO    ] Checking for system updates...
[2026-10-28 16:02:07,571.571 INFO    ] 200
[2026-10-28 16:02:07,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:02:07,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:02:07,628.628 INFO    ] No update needed
[2026-10-28 16:02:07,631.631 INFO    ] Checking for camera pi updates...
[2026-10-28 16:02:07,667.667 INFO    ] 200
[2026-10-28 16:02:07,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:02:07,714.714 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:02:07,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:02:07,818.818 INFO    ] No camera update needed
[2026-10-28 16:02:07,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:02:07,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:02:07,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:02:07,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:02:09,872.872 INFO    ] ================================================
[2026-10-28 16:02:09,887.887 INFO    ] Launching Daemon at Wed Oct 28 16:02:09 IST 2026
[2026-10-28 16:02:09,898.898 INFO    ] ================================================
[2026-10-28 16:02:10,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:02:10
[2026-10-28 16:02:11,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:02:11,317.317 INFO    ] Initializing speech engine...
[2026-10-28 16:02:11,342.342 INFO    ] 2026-10-28 16:02:11
[2026-10-28 16:02:11,612.612 INFO    ] 2026-10-28 16:02:11
[2026-10-28 16:02:11,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:02:11,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:02:11,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:02:12,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:02:12,103.103 INFO    ] time= 28/10/2026 16:02:12
[2026-10-28 16:02:12,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:02:12,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:02:12,300.300 INFO    ] No existing commands found in stream
[2026-10-28 16:02:17,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:02:17,315.315 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-28 16:02:20,660.660 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:02:20,662.662 INFO    ] Checking for system updates...
[2026-10-28 16:02:20,702.702 INFO    ] 200
[2026-10-28 16:02:20,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:02:20,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:02:20,765.765 INFO    ] No update needed
[2026-10-28 16:02:20,768.768 INFO    ] Checking for camera pi updates...
[2026-10-28 16:02:20,802.802 INFO    ] 200
[2026-10-28 16:02:20,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:02:20,845.845 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:02:20,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:02:20,949.949 INFO    ] No camera update needed
[2026-10-28 16:02:20,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:02:20,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:02:20,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:02:20,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:02:23,010.010 INFO    ] ================================================
[2026-10-28 16:02:23,027.027 INFO    ] Launching Daemon at Wed Oct 28 16:02:23 IST 2026
[2026-10-28 16:02:23,038.038 INFO    ] ================================================
[2026-10-28 16:02:23,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:02:23
[2026-10-28 16:02:24,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:02:24,552.552 INFO    ] Initializing speech engine...
[2026-10-28 16:02:24,567.567 INFO    ] 2026-10-28 16:02:24
[2026-10-28 16:02:24,860.860 INFO    ] 2026-10-28 16:02:24
[2026-10-28 16:02:24,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:02:25,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:02:25,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:02:25,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:02:25,456.456 INFO    ] time= 28/10/2026 16:02:25
[2026-10-28 16:02:25,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:02:25,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:02:25,611.611 INFO    ] No existing commands found in stream
[2026-10-28 16:02:30,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:02:30,643.643 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 16:02:34,920.920 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:02:34,922.922 INFO    ] Checking for system updates...
[2026-10-28 16:02:34,960.960 INFO    ] 200
[2026-10-28 16:02:34,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:02:35,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:02:35,021.021 INFO    ] No update needed
[2026-10-28 16:02:35,023.023 INFO    ] Checking for camera pi updates...
[2026-10-28 16:02:35,058.058 INFO    ] 200
[2026-10-28 16:02:35,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:02:35,101.101 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:02:35,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:02:35,189.189 INFO    ] No camera update needed
[2026-10-28 16:02:35,192.192 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:02:35,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:02:35,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:02:35,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:02:37,252.252 INFO    ] ================================================
[2026-10-28 16:02:37,267.267 INFO    ] Launching Daemon at Wed Oct 28 16:02:37 IST 2026
[2026-10-28 16:02:37,278.278 INFO    ] ================================================
[2026-10-28 16:02:37,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:02:37
[2026-10-28 16:02:38,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:02:38,770.770 INFO    ] Initializing speech engine...
[2026-10-28 16:02:38,778.778 INFO    ] 2026-10-28 16:02:38
[2026-10-28 16:02:39,044.044 INFO    ] 2026-10-28 16:02:39
[2026-10-28 16:02:39,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:02:39,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:02:39,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:02:39,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:02:39,644.644 INFO    ] time= 28/10/2026 16:02:39
[2026-10-28 16:02:39,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:02:39,678.678 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:02:39,832.832 INFO    ] No existing commands found in stream
[2026-10-28 16:02:44,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:02:44,856.856 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-28 16:02:48,362.362 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:02:48,365.365 INFO    ] Checking for system updates...
[2026-10-28 16:02:48,404.404 INFO    ] 200
[2026-10-28 16:02:48,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:02:48,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:02:48,461.461 INFO    ] No update needed
[2026-10-28 16:02:48,464.464 INFO    ] Checking for camera pi updates...
[2026-10-28 16:02:48,497.497 INFO    ] 200
[2026-10-28 16:02:48,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:02:48,543.543 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:02:48,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:02:48,627.627 INFO    ] No camera update needed
[2026-10-28 16:02:48,629.629 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:02:48,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:02:48,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:02:48,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:02:50,681.681 INFO    ] ================================================
[2026-10-28 16:02:50,696.696 INFO    ] Launching Daemon at Wed Oct 28 16:02:50 IST 2026
[2026-10-28 16:02:50,707.707 INFO    ] ================================================
[2026-10-28 16:02:51,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:02:51
[2026-10-28 16:02:51,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:02:52,131.131 INFO    ] Initializing speech engine...
[2026-10-28 16:02:52,140.140 INFO    ] 2026-10-28 16:02:52
[2026-10-28 16:02:52,387.387 INFO    ] 2026-10-28 16:02:52
[2026-10-28 16:02:52,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:02:52,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:02:52,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:02:52,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:02:52,941.941 INFO    ] time= 28/10/2026 16:02:52
[2026-10-28 16:02:52,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:02:52,966.966 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:02:53,112.112 INFO    ] No existing commands found in stream
[2026-10-28 16:02:58,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:02:58,140.140 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 16:02:59,577.577 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:02:59,580.580 INFO    ] Checking for system updates...
[2026-10-28 16:02:59,615.615 INFO    ] 200
[2026-10-28 16:02:59,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:02:59,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:02:59,672.672 INFO    ] No update needed
[2026-10-28 16:02:59,674.674 INFO    ] Checking for camera pi updates...
[2026-10-28 16:02:59,708.708 INFO    ] 200
[2026-10-28 16:02:59,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:02:59,750.750 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:02:59,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:02:59,859.859 INFO    ] No camera update needed
[2026-10-28 16:02:59,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:02:59,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:02:59,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:02:59,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:03:01,917.917 INFO    ] ================================================
[2026-10-28 16:03:01,934.934 INFO    ] Launching Daemon at Wed Oct 28 16:03:01 IST 2026
[2026-10-28 16:03:01,947.947 INFO    ] ================================================
[2026-10-28 16:03:02,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:03:02
[2026-10-28 16:03:03,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:03:03,510.510 INFO    ] Initializing speech engine...
[2026-10-28 16:03:03,525.525 INFO    ] 2026-10-28 16:03:03
[2026-10-28 16:03:03,815.815 INFO    ] 2026-10-28 16:03:03
[2026-10-28 16:03:03,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:03:04,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:03:04,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:03:04,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:03:04,370.370 INFO    ] time= 28/10/2026 16:03:04
[2026-10-28 16:03:04,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:03:04,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:03:04,525.525 INFO    ] No existing commands found in stream
[2026-10-28 16:03:09,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:03:09,548.548 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-28 16:03:12,484.484 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:03:12,486.486 INFO    ] Checking for system updates...
[2026-10-28 16:03:12,523.523 INFO    ] 200
[2026-10-28 16:03:12,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:03:12,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:03:12,586.586 INFO    ] No update needed
[2026-10-28 16:03:12,589.589 INFO    ] Checking for camera pi updates...
[2026-10-28 16:03:12,626.626 INFO    ] 200
[2026-10-28 16:03:12,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:03:12,669.669 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:03:12,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:03:12,750.750 INFO    ] No camera update needed
[2026-10-28 16:03:12,752.752 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:03:12,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:03:12,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:03:12,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:03:14,806.806 INFO    ] ================================================
[2026-10-28 16:03:14,822.822 INFO    ] Launching Daemon at Wed Oct 28 16:03:14 IST 2026
[2026-10-28 16:03:14,832.832 INFO    ] ================================================
[2026-10-28 16:03:15,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:03:15
[2026-10-28 16:03:15,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:03:16,262.262 INFO    ] Initializing speech engine...
[2026-10-28 16:03:16,271.271 INFO    ] 2026-10-28 16:03:16
[2026-10-28 16:03:16,530.530 INFO    ] 2026-10-28 16:03:16
[2026-10-28 16:03:16,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:03:16,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:03:16,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:03:17,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:03:17,180.180 INFO    ] time= 28/10/2026 16:03:17
[2026-10-28 16:03:17,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:03:17,287.287 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:03:17,452.452 INFO    ] No existing commands found in stream
[2026-10-28 16:03:22,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:03:22,485.485 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-28 16:03:23,940.940 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:03:23,943.943 INFO    ] Checking for system updates...
[2026-10-28 16:03:23,984.984 INFO    ] 200
[2026-10-28 16:03:23,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:03:24,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:03:24,061.061 INFO    ] No update needed
[2026-10-28 16:03:24,064.064 INFO    ] Checking for camera pi updates...
[2026-10-28 16:03:24,098.098 INFO    ] 200
[2026-10-28 16:03:24,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:03:24,142.142 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:03:24,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:03:24,334.334 INFO    ] No camera update needed
[2026-10-28 16:03:24,337.337 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:03:24,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:03:24,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:03:24,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:03:26,395.395 INFO    ] ================================================
[2026-10-28 16:03:26,411.411 INFO    ] Launching Daemon at Wed Oct 28 16:03:26 IST 2026
[2026-10-28 16:03:26,422.422 INFO    ] ================================================
[2026-10-28 16:03:27,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:03:27
[2026-10-28 16:03:27,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:03:27,880.880 INFO    ] Initializing speech engine...
[2026-10-28 16:03:27,889.889 INFO    ] 2026-10-28 16:03:27
[2026-10-28 16:03:28,182.182 INFO    ] 2026-10-28 16:03:28
[2026-10-28 16:03:28,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:03:28,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:03:28,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:03:28,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:03:28,749.749 INFO    ] time= 28/10/2026 16:03:28
[2026-10-28 16:03:28,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:03:28,822.822 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:03:28,956.956 INFO    ] No existing commands found in stream
[2026-10-28 16:03:33,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:03:33,985.985 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-28 16:03:35,152.152 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:03:35,155.155 INFO    ] Checking for system updates...
[2026-10-28 16:03:35,191.191 INFO    ] 200
[2026-10-28 16:03:35,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:03:35,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:03:35,248.248 INFO    ] No update needed
[2026-10-28 16:03:35,251.251 INFO    ] Checking for camera pi updates...
[2026-10-28 16:03:35,285.285 INFO    ] 200
[2026-10-28 16:03:35,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:03:35,332.332 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:03:35,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:03:35,440.440 INFO    ] No camera update needed
[2026-10-28 16:03:35,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:03:35,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:03:35,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:03:35,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:03:37,496.496 INFO    ] ================================================
[2026-10-28 16:03:37,511.511 INFO    ] Launching Daemon at Wed Oct 28 16:03:37 IST 2026
[2026-10-28 16:03:37,522.522 INFO    ] ================================================
[2026-10-28 16:03:38,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:03:38
[2026-10-28 16:03:38,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:03:38,936.936 INFO    ] Initializing speech engine...
[2026-10-28 16:03:38,949.949 INFO    ] 2026-10-28 16:03:38
[2026-10-28 16:03:39,250.250 INFO    ] 2026-10-28 16:03:39
[2026-10-28 16:03:39,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:03:39,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:03:39,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:03:39,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:03:39,845.845 INFO    ] time= 28/10/2026 16:03:39
[2026-10-28 16:03:39,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:03:39,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:03:40,006.006 INFO    ] No existing commands found in stream
[2026-10-28 16:03:45,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:03:45,036.036 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 16:03:48,094.094 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:03:48,097.097 INFO    ] Checking for system updates...
[2026-10-28 16:03:48,135.135 INFO    ] 200
[2026-10-28 16:03:48,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:03:48,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:03:48,202.202 INFO    ] No update needed
[2026-10-28 16:03:48,205.205 INFO    ] Checking for camera pi updates...
[2026-10-28 16:03:48,244.244 INFO    ] 200
[2026-10-28 16:03:48,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:03:48,293.293 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:03:48,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:03:48,375.375 INFO    ] No camera update needed
[2026-10-28 16:03:48,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:03:48,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:03:48,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:03:48,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:03:50,435.435 INFO    ] ================================================
[2026-10-28 16:03:50,451.451 INFO    ] Launching Daemon at Wed Oct 28 16:03:50 IST 2026
[2026-10-28 16:03:50,462.462 INFO    ] ================================================
[2026-10-28 16:03:51,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:03:51
[2026-10-28 16:03:51,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:03:52,099.099 INFO    ] Initializing speech engine...
[2026-10-28 16:03:52,112.112 INFO    ] 2026-10-28 16:03:52
[2026-10-28 16:03:52,425.425 INFO    ] 2026-10-28 16:03:52
[2026-10-28 16:03:52,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:03:52,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:03:52,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:03:53,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:03:53,196.196 INFO    ] time= 28/10/2026 16:03:53
[2026-10-28 16:03:53,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:03:53,321.321 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:03:53,468.468 INFO    ] No existing commands found in stream
[2026-10-28 16:03:58,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:03:58,502.502 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-28 16:04:01,514.514 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:04:01,517.517 INFO    ] Checking for system updates...
[2026-10-28 16:04:01,554.554 INFO    ] 200
[2026-10-28 16:04:01,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:04:01,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:04:01,612.612 INFO    ] No update needed
[2026-10-28 16:04:01,615.615 INFO    ] Checking for camera pi updates...
[2026-10-28 16:04:01,650.650 INFO    ] 200
[2026-10-28 16:04:01,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:04:01,761.761 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:04:01,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:04:01,953.953 INFO    ] No camera update needed
[2026-10-28 16:04:01,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:04:01,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:04:01,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:04:01,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:04:04,024.024 INFO    ] ================================================
[2026-10-28 16:04:04,040.040 INFO    ] Launching Daemon at Wed Oct 28 16:04:04 IST 2026
[2026-10-28 16:04:04,051.051 INFO    ] ================================================
[2026-10-28 16:04:04,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:04:04
[2026-10-28 16:04:05,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:04:05,482.482 INFO    ] Initializing speech engine...
[2026-10-28 16:04:05,491.491 INFO    ] 2026-10-28 16:04:05
[2026-10-28 16:04:05,736.736 INFO    ] 2026-10-28 16:04:05
[2026-10-28 16:04:05,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:04:06,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:04:06,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:04:06,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:04:06,290.290 INFO    ] time= 28/10/2026 16:04:06
[2026-10-28 16:04:06,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:04:06,330.330 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:04:06,444.444 INFO    ] No existing commands found in stream
[2026-10-28 16:04:11,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:04:11,475.475 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-28 16:04:13,876.876 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:04:13,879.879 INFO    ] Checking for system updates...
[2026-10-28 16:04:13,915.915 INFO    ] 200
[2026-10-28 16:04:13,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:04:13,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:04:13,974.974 INFO    ] No update needed
[2026-10-28 16:04:13,977.977 INFO    ] Checking for camera pi updates...
[2026-10-28 16:04:14,015.015 INFO    ] 200
[2026-10-28 16:04:14,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:04:14,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:04:14,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:04:14,159.159 INFO    ] No camera update needed
[2026-10-28 16:04:14,162.162 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:04:14,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:04:14,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:04:14,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:04:16,218.218 INFO    ] ================================================
[2026-10-28 16:04:16,234.234 INFO    ] Launching Daemon at Wed Oct 28 16:04:16 IST 2026
[2026-10-28 16:04:16,245.245 INFO    ] ================================================
[2026-10-28 16:04:16,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:04:16
[2026-10-28 16:04:17,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:04:17,653.653 INFO    ] Initializing speech engine...
[2026-10-28 16:04:17,671.671 INFO    ] 2026-10-28 16:04:17
[2026-10-28 16:04:17,943.943 INFO    ] 2026-10-28 16:04:17
[2026-10-28 16:04:17,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:04:18,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:04:18,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:04:18,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:04:18,561.561 INFO    ] time= 28/10/2026 16:04:18
[2026-10-28 16:04:18,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:04:18,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:04:18,751.751 INFO    ] No existing commands found in stream
[2026-10-28 16:04:23,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:04:23,770.770 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-28 16:04:25,451.451 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:04:25,454.454 INFO    ] Checking for system updates...
[2026-10-28 16:04:25,490.490 INFO    ] 200
[2026-10-28 16:04:25,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:04:25,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:04:25,554.554 INFO    ] No update needed
[2026-10-28 16:04:25,556.556 INFO    ] Checking for camera pi updates...
[2026-10-28 16:04:25,589.589 INFO    ] 200
[2026-10-28 16:04:25,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:04:25,631.631 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:04:25,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:04:25,717.717 INFO    ] No camera update needed
[2026-10-28 16:04:25,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:04:25,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:04:25,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:04:25,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:04:27,774.774 INFO    ] ================================================
[2026-10-28 16:04:27,790.790 INFO    ] Launching Daemon at Wed Oct 28 16:04:27 IST 2026
[2026-10-28 16:04:27,801.801 INFO    ] ================================================
[2026-10-28 16:04:28,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:04:28
[2026-10-28 16:04:28,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:04:29,287.287 INFO    ] Initializing speech engine...
[2026-10-28 16:04:29,295.295 INFO    ] 2026-10-28 16:04:29
[2026-10-28 16:04:29,575.575 INFO    ] 2026-10-28 16:04:29
[2026-10-28 16:04:29,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:04:29,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:04:29,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:04:30,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:04:30,121.121 INFO    ] time= 28/10/2026 16:04:30
[2026-10-28 16:04:30,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:04:30,210.210 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:04:30,358.358 INFO    ] No existing commands found in stream
[2026-10-28 16:04:35,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:04:35,384.384 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 16:04:36,729.729 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:04:36,732.732 INFO    ] Checking for system updates...
[2026-10-28 16:04:36,768.768 INFO    ] 200
[2026-10-28 16:04:36,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:04:36,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:04:36,825.825 INFO    ] No update needed
[2026-10-28 16:04:36,828.828 INFO    ] Checking for camera pi updates...
[2026-10-28 16:04:36,866.866 INFO    ] 200
[2026-10-28 16:04:36,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:04:36,908.908 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:04:37,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:04:37,027.027 INFO    ] No camera update needed
[2026-10-28 16:04:37,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:04:37,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:04:37,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:04:37,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:04:39,085.085 INFO    ] ================================================
[2026-10-28 16:04:39,100.100 INFO    ] Launching Daemon at Wed Oct 28 16:04:39 IST 2026
[2026-10-28 16:04:39,112.112 INFO    ] ================================================
[2026-10-28 16:04:39,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:04:39
[2026-10-28 16:04:40,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:04:40,799.799 INFO    ] Initializing speech engine...
[2026-10-28 16:04:40,812.812 INFO    ] 2026-10-28 16:04:40
[2026-10-28 16:04:41,126.126 INFO    ] 2026-10-28 16:04:41
[2026-10-28 16:04:41,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:04:41,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:04:41,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:04:41,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:04:41,679.679 INFO    ] time= 28/10/2026 16:04:41
[2026-10-28 16:04:41,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:04:41,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:04:41,854.854 INFO    ] No existing commands found in stream
[2026-10-28 16:04:46,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:04:46,884.884 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 16:04:49,623.623 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:04:49,626.626 INFO    ] Checking for system updates...
[2026-10-28 16:04:49,664.664 INFO    ] 200
[2026-10-28 16:04:49,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:04:49,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:04:49,723.723 INFO    ] No update needed
[2026-10-28 16:04:49,726.726 INFO    ] Checking for camera pi updates...
[2026-10-28 16:04:49,760.760 INFO    ] 200
[2026-10-28 16:04:49,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:04:49,811.811 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:04:49,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:04:49,913.913 INFO    ] No camera update needed
[2026-10-28 16:04:49,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:04:49,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:04:49,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:04:49,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:04:51,975.975 INFO    ] ================================================
[2026-10-28 16:04:51,992.992 INFO    ] Launching Daemon at Wed Oct 28 16:04:51 IST 2026
[2026-10-28 16:04:52,002.002 INFO    ] ================================================
[2026-10-28 16:04:52,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:04:52
[2026-10-28 16:04:53,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:04:53,695.695 INFO    ] Initializing speech engine...
[2026-10-28 16:04:53,702.702 INFO    ] 2026-10-28 16:04:53
[2026-10-28 16:04:53,986.986 INFO    ] 2026-10-28 16:04:53
[2026-10-28 16:04:54,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:04:54,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:04:54,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:04:54,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:04:54,609.609 INFO    ] time= 28/10/2026 16:04:54
[2026-10-28 16:04:54,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:04:54,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:04:54,822.822 INFO    ] No existing commands found in stream
[2026-10-28 16:04:59,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:04:59,850.850 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-28 16:05:03,518.518 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:05:03,521.521 INFO    ] Checking for system updates...
[2026-10-28 16:05:03,558.558 INFO    ] 200
[2026-10-28 16:05:03,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:05:03,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:05:03,629.629 INFO    ] No update needed
[2026-10-28 16:05:03,632.632 INFO    ] Checking for camera pi updates...
[2026-10-28 16:05:03,672.672 INFO    ] 200
[2026-10-28 16:05:03,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:05:03,718.718 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:05:03,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:05:03,805.805 INFO    ] No camera update needed
[2026-10-28 16:05:03,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:05:03,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:05:03,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:05:03,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:05:05,861.861 INFO    ] ================================================
[2026-10-28 16:05:05,876.876 INFO    ] Launching Daemon at Wed Oct 28 16:05:05 IST 2026
[2026-10-28 16:05:05,887.887 INFO    ] ================================================
[2026-10-28 16:05:06,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:05:06
[2026-10-28 16:05:07,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:05:07,300.300 INFO    ] Initializing speech engine...
[2026-10-28 16:05:07,325.325 INFO    ] 2026-10-28 16:05:07
[2026-10-28 16:05:07,598.598 INFO    ] 2026-10-28 16:05:07
[2026-10-28 16:05:07,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:05:07,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:05:07,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:05:08,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:05:08,144.144 INFO    ] time= 28/10/2026 16:05:08
[2026-10-28 16:05:08,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:05:08,227.227 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:05:08,370.370 INFO    ] No existing commands found in stream
[2026-10-28 16:05:13,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:05:13,396.396 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 16:05:14,760.760 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:05:14,763.763 INFO    ] Checking for system updates...
[2026-10-28 16:05:14,799.799 INFO    ] 200
[2026-10-28 16:05:14,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:05:14,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:05:14,856.856 INFO    ] No update needed
[2026-10-28 16:05:14,858.858 INFO    ] Checking for camera pi updates...
[2026-10-28 16:05:14,891.891 INFO    ] 200
[2026-10-28 16:05:14,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:05:14,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:05:15,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:05:15,038.038 INFO    ] No camera update needed
[2026-10-28 16:05:15,041.041 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:05:15,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:05:15,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:05:15,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:05:17,094.094 INFO    ] ================================================
[2026-10-28 16:05:17,109.109 INFO    ] Launching Daemon at Wed Oct 28 16:05:17 IST 2026
[2026-10-28 16:05:17,119.119 INFO    ] ================================================
[2026-10-28 16:05:17,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:05:17
[2026-10-28 16:05:18,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:05:18,539.539 INFO    ] Initializing speech engine...
[2026-10-28 16:05:18,554.554 INFO    ] 2026-10-28 16:05:18
[2026-10-28 16:05:18,815.815 INFO    ] 2026-10-28 16:05:18
[2026-10-28 16:05:18,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:05:19,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:05:19,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:05:19,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:05:19,348.348 INFO    ] time= 28/10/2026 16:05:19
[2026-10-28 16:05:19,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:05:19,411.411 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:05:19,560.560 INFO    ] No existing commands found in stream
[2026-10-28 16:05:24,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:05:24,576.576 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 16:05:27,634.634 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:05:27,637.637 INFO    ] Checking for system updates...
[2026-10-28 16:05:27,673.673 INFO    ] 200
[2026-10-28 16:05:27,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:05:27,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:05:27,730.730 INFO    ] No update needed
[2026-10-28 16:05:27,732.732 INFO    ] Checking for camera pi updates...
[2026-10-28 16:05:27,765.765 INFO    ] 200
[2026-10-28 16:05:27,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:05:27,808.808 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:05:27,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:05:27,992.992 INFO    ] No camera update needed
[2026-10-28 16:05:27,995.995 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:05:27,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:05:28,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:05:28,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:05:30,050.050 INFO    ] ================================================
[2026-10-28 16:05:30,065.065 INFO    ] Launching Daemon at Wed Oct 28 16:05:30 IST 2026
[2026-10-28 16:05:30,076.076 INFO    ] ================================================
[2026-10-28 16:05:30,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:05:30
[2026-10-28 16:05:31,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:05:31,712.712 INFO    ] Initializing speech engine...
[2026-10-28 16:05:31,724.724 INFO    ] 2026-10-28 16:05:31
[2026-10-28 16:05:32,003.003 INFO    ] 2026-10-28 16:05:31
[2026-10-28 16:05:32,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:05:32,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:05:32,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:05:32,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:05:32,582.582 INFO    ] time= 28/10/2026 16:05:32
[2026-10-28 16:05:32,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:05:32,611.611 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:05:32,770.770 INFO    ] No existing commands found in stream
[2026-10-28 16:05:37,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:05:37,805.805 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-28 16:05:42,085.085 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:05:42,087.087 INFO    ] Checking for system updates...
[2026-10-28 16:05:42,123.123 INFO    ] 200
[2026-10-28 16:05:42,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:05:42,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:05:42,180.180 INFO    ] No update needed
[2026-10-28 16:05:42,182.182 INFO    ] Checking for camera pi updates...
[2026-10-28 16:05:42,216.216 INFO    ] 200
[2026-10-28 16:05:42,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:05:42,260.260 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:05:42,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:05:42,359.359 INFO    ] No camera update needed
[2026-10-28 16:05:42,361.361 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:05:42,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:05:42,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:05:42,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:05:44,416.416 INFO    ] ================================================
[2026-10-28 16:05:44,431.431 INFO    ] Launching Daemon at Wed Oct 28 16:05:44 IST 2026
[2026-10-28 16:05:44,442.442 INFO    ] ================================================
[2026-10-28 16:05:45,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:05:45
[2026-10-28 16:05:45,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:05:45,837.837 INFO    ] Initializing speech engine...
[2026-10-28 16:05:45,849.849 INFO    ] 2026-10-28 16:05:45
[2026-10-28 16:05:46,111.111 INFO    ] 2026-10-28 16:05:46
[2026-10-28 16:05:46,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:05:46,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:05:46,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:05:46,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:05:46,672.672 INFO    ] time= 28/10/2026 16:05:46
[2026-10-28 16:05:46,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:05:46,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:05:46,828.828 INFO    ] No existing commands found in stream
[2026-10-28 16:05:51,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:05:51,853.853 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-28 16:05:52,443.443 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:05:52,446.446 INFO    ] Checking for system updates...
[2026-10-28 16:05:52,481.481 INFO    ] 200
[2026-10-28 16:05:52,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:05:52,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:05:52,544.544 INFO    ] No update needed
[2026-10-28 16:05:52,547.547 INFO    ] Checking for camera pi updates...
[2026-10-28 16:05:52,580.580 INFO    ] 200
[2026-10-28 16:05:52,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:05:52,623.623 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:05:52,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:05:52,710.710 INFO    ] No camera update needed
[2026-10-28 16:05:52,713.713 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:05:52,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:05:52,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:05:52,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:05:54,767.767 INFO    ] ================================================
[2026-10-28 16:05:54,782.782 INFO    ] Launching Daemon at Wed Oct 28 16:05:54 IST 2026
[2026-10-28 16:05:54,792.792 INFO    ] ================================================
[2026-10-28 16:05:55,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:05:55
[2026-10-28 16:05:56,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:05:56,463.463 INFO    ] Initializing speech engine...
[2026-10-28 16:05:56,477.477 INFO    ] 2026-10-28 16:05:56
[2026-10-28 16:05:56,768.768 INFO    ] 2026-10-28 16:05:56
[2026-10-28 16:05:56,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:05:57,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:05:57,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:05:57,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:05:57,496.496 INFO    ] time= 28/10/2026 16:05:57
[2026-10-28 16:05:57,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:05:57,567.567 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:05:57,736.736 INFO    ] No existing commands found in stream
[2026-10-28 16:06:02,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:06:02,755.755 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-28 16:06:06,116.116 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:06:06,120.120 INFO    ] Checking for system updates...
[2026-10-28 16:06:06,156.156 INFO    ] 200
[2026-10-28 16:06:06,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:06:06,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:06:06,214.214 INFO    ] No update needed
[2026-10-28 16:06:06,217.217 INFO    ] Checking for camera pi updates...
[2026-10-28 16:06:06,251.251 INFO    ] 200
[2026-10-28 16:06:06,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:06:06,296.296 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:06:06,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:06:06,389.389 INFO    ] No camera update needed
[2026-10-28 16:06:06,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:06:06,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:06:06,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:06:06,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:06:08,447.447 INFO    ] ================================================
[2026-10-28 16:06:08,461.461 INFO    ] Launching Daemon at Wed Oct 28 16:06:08 IST 2026
[2026-10-28 16:06:08,473.473 INFO    ] ================================================
[2026-10-28 16:06:09,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:06:09
[2026-10-28 16:06:09,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:06:09,884.884 INFO    ] Initializing speech engine...
[2026-10-28 16:06:09,898.898 INFO    ] 2026-10-28 16:06:09
[2026-10-28 16:06:10,178.178 INFO    ] 2026-10-28 16:06:10
[2026-10-28 16:06:10,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:06:10,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:06:10,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:06:10,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:06:10,591.591 INFO    ] time= 28/10/2026 16:06:10
[2026-10-28 16:06:10,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:06:10,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:06:10,781.781 INFO    ] No existing commands found in stream
[2026-10-28 16:06:15,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:06:15,808.808 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-28 16:06:19,162.162 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:06:19,165.165 INFO    ] Checking for system updates...
[2026-10-28 16:06:19,200.200 INFO    ] 200
[2026-10-28 16:06:19,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:06:19,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:06:19,258.258 INFO    ] No update needed
[2026-10-28 16:06:19,260.260 INFO    ] Checking for camera pi updates...
[2026-10-28 16:06:19,294.294 INFO    ] 200
[2026-10-28 16:06:19,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:06:19,337.337 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:06:19,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:06:19,426.426 INFO    ] No camera update needed
[2026-10-28 16:06:19,428.428 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:06:19,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:06:19,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:06:19,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:06:21,480.480 INFO    ] ================================================
[2026-10-28 16:06:21,496.496 INFO    ] Launching Daemon at Wed Oct 28 16:06:21 IST 2026
[2026-10-28 16:06:21,508.508 INFO    ] ================================================
[2026-10-28 16:06:22,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:06:22
[2026-10-28 16:06:22,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:06:23,087.087 INFO    ] Initializing speech engine...
[2026-10-28 16:06:23,094.094 INFO    ] 2026-10-28 16:06:23
[2026-10-28 16:06:23,365.365 INFO    ] 2026-10-28 16:06:23
[2026-10-28 16:06:23,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:06:23,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:06:23,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:06:24,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:06:24,057.057 INFO    ] time= 28/10/2026 16:06:24
[2026-10-28 16:06:24,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:06:24,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:06:24,301.301 INFO    ] No existing commands found in stream
[2026-10-28 16:06:29,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:06:29,325.325 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 16:06:32,480.480 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:06:32,483.483 INFO    ] Checking for system updates...
[2026-10-28 16:06:32,522.522 INFO    ] 200
[2026-10-28 16:06:32,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:06:32,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:06:32,579.579 INFO    ] No update needed
[2026-10-28 16:06:32,582.582 INFO    ] Checking for camera pi updates...
[2026-10-28 16:06:32,615.615 INFO    ] 200
[2026-10-28 16:06:32,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:06:32,658.658 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:06:32,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:06:32,765.765 INFO    ] No camera update needed
[2026-10-28 16:06:32,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:06:32,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:06:32,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:06:32,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:06:34,820.820 INFO    ] ================================================
[2026-10-28 16:06:34,840.840 INFO    ] Launching Daemon at Wed Oct 28 16:06:34 IST 2026
[2026-10-28 16:06:34,857.857 INFO    ] ================================================
[2026-10-28 16:06:35,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:06:35
[2026-10-28 16:06:36,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:06:36,300.300 INFO    ] Initializing speech engine...
[2026-10-28 16:06:36,309.309 INFO    ] 2026-10-28 16:06:36
[2026-10-28 16:06:36,555.555 INFO    ] 2026-10-28 16:06:36
[2026-10-28 16:06:36,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:06:36,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:06:36,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:06:37,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:06:37,110.110 INFO    ] time= 28/10/2026 16:06:37
[2026-10-28 16:06:37,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:06:37,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:06:37,281.281 INFO    ] No existing commands found in stream
[2026-10-28 16:06:42,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:06:42,309.309 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-28 16:06:42,953.953 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:06:42,955.955 INFO    ] Checking for system updates...
[2026-10-28 16:06:42,991.991 INFO    ] 200
[2026-10-28 16:06:42,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:06:43,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:06:43,048.048 INFO    ] No update needed
[2026-10-28 16:06:43,051.051 INFO    ] Checking for camera pi updates...
[2026-10-28 16:06:43,084.084 INFO    ] 200
[2026-10-28 16:06:43,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:06:43,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:06:43,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:06:43,214.214 INFO    ] No camera update needed
[2026-10-28 16:06:43,216.216 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:06:43,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:06:43,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:06:43,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:06:45,268.268 INFO    ] ================================================
[2026-10-28 16:06:45,283.283 INFO    ] Launching Daemon at Wed Oct 28 16:06:45 IST 2026
[2026-10-28 16:06:45,294.294 INFO    ] ================================================
[2026-10-28 16:06:45,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:06:45
[2026-10-28 16:06:46,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:06:46,691.691 INFO    ] Initializing speech engine...
[2026-10-28 16:06:46,699.699 INFO    ] 2026-10-28 16:06:46
[2026-10-28 16:06:46,972.972 INFO    ] 2026-10-28 16:06:46
[2026-10-28 16:06:47,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:06:47,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:06:47,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:06:47,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:06:47,545.545 INFO    ] time= 28/10/2026 16:06:47
[2026-10-28 16:06:47,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:06:47,568.568 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:06:47,704.704 INFO    ] No existing commands found in stream
[2026-10-28 16:06:52,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:06:52,729.729 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-28 16:06:56,821.821 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:06:56,824.824 INFO    ] Checking for system updates...
[2026-10-28 16:06:56,859.859 INFO    ] 200
[2026-10-28 16:06:56,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:06:56,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:06:56,921.921 INFO    ] No update needed
[2026-10-28 16:06:56,924.924 INFO    ] Checking for camera pi updates...
[2026-10-28 16:06:56,957.957 INFO    ] 200
[2026-10-28 16:06:56,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:06:57,000.000 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:06:57,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:06:57,086.086 INFO    ] No camera update needed
[2026-10-28 16:06:57,088.088 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:06:57,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:06:57,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:06:57,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:06:59,141.141 INFO    ] ================================================
[2026-10-28 16:06:59,156.156 INFO    ] Launching Daemon at Wed Oct 28 16:06:59 IST 2026
[2026-10-28 16:06:59,167.167 INFO    ] ================================================
[2026-10-28 16:06:59,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:06:59
[2026-10-28 16:07:00,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:07:00,585.585 INFO    ] Initializing speech engine...
[2026-10-28 16:07:00,594.594 INFO    ] 2026-10-28 16:07:00
[2026-10-28 16:07:00,881.881 INFO    ] 2026-10-28 16:07:00
[2026-10-28 16:07:00,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:07:01,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:07:01,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:07:01,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:07:01,350.350 INFO    ] time= 28/10/2026 16:07:01
[2026-10-28 16:07:01,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:07:01,357.357 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:07:01,439.439 INFO    ] No existing commands found in stream
[2026-10-28 16:07:06,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:07:06,452.452 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 16:07:08,536.536 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:07:08,538.538 INFO    ] Checking for system updates...
[2026-10-28 16:07:08,578.578 INFO    ] 200
[2026-10-28 16:07:08,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:07:08,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:07:08,640.640 INFO    ] No update needed
[2026-10-28 16:07:08,643.643 INFO    ] Checking for camera pi updates...
[2026-10-28 16:07:08,676.676 INFO    ] 200
[2026-10-28 16:07:08,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:07:08,724.724 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:07:08,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:07:08,807.807 INFO    ] No camera update needed
[2026-10-28 16:07:08,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:07:08,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:07:08,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:07:08,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:07:10,863.863 INFO    ] ================================================
[2026-10-28 16:07:10,878.878 INFO    ] Launching Daemon at Wed Oct 28 16:07:10 IST 2026
[2026-10-28 16:07:10,888.888 INFO    ] ================================================
[2026-10-28 16:07:11,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:07:11
[2026-10-28 16:07:12,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:07:12,488.488 INFO    ] Initializing speech engine...
[2026-10-28 16:07:12,503.503 INFO    ] 2026-10-28 16:07:12
[2026-10-28 16:07:12,786.786 INFO    ] 2026-10-28 16:07:12
[2026-10-28 16:07:12,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:07:13,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:07:13,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:07:13,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:07:13,329.329 INFO    ] time= 28/10/2026 16:07:13
[2026-10-28 16:07:13,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:07:13,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:07:13,508.508 INFO    ] No existing commands found in stream
[2026-10-28 16:07:18,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:07:18,537.537 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-28 16:07:22,743.743 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:07:22,746.746 INFO    ] Checking for system updates...
[2026-10-28 16:07:22,782.782 INFO    ] 200
[2026-10-28 16:07:22,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:07:22,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:07:22,840.840 INFO    ] No update needed
[2026-10-28 16:07:22,843.843 INFO    ] Checking for camera pi updates...
[2026-10-28 16:07:22,876.876 INFO    ] 200
[2026-10-28 16:07:22,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:07:22,923.923 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:07:22,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:07:22,998.998 INFO    ] No camera update needed
[2026-10-28 16:07:23,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:07:23,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:07:23,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:07:23,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:07:25,052.052 INFO    ] ================================================
[2026-10-28 16:07:25,066.066 INFO    ] Launching Daemon at Wed Oct 28 16:07:25 IST 2026
[2026-10-28 16:07:25,077.077 INFO    ] ================================================
[2026-10-28 16:07:25,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:07:25
[2026-10-28 16:07:26,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:07:26,688.688 INFO    ] Initializing speech engine...
[2026-10-28 16:07:26,702.702 INFO    ] 2026-10-28 16:07:26
[2026-10-28 16:07:26,985.985 INFO    ] 2026-10-28 16:07:26
[2026-10-28 16:07:27,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:07:27,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:07:27,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:07:27,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:07:27,528.528 INFO    ] time= 28/10/2026 16:07:27
[2026-10-28 16:07:27,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:07:27,565.565 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:07:27,692.692 INFO    ] No existing commands found in stream
[2026-10-28 16:07:32,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:07:32,722.722 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-28 16:07:36,796.796 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:07:36,799.799 INFO    ] Checking for system updates...
[2026-10-28 16:07:36,836.836 INFO    ] 200
[2026-10-28 16:07:36,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:07:36,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:07:36,895.895 INFO    ] No update needed
[2026-10-28 16:07:36,898.898 INFO    ] Checking for camera pi updates...
[2026-10-28 16:07:36,932.932 INFO    ] 200
[2026-10-28 16:07:36,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:07:36,979.979 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:07:37,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:07:37,086.086 INFO    ] No camera update needed
[2026-10-28 16:07:37,089.089 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:07:37,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:07:37,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:07:37,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:07:39,142.142 INFO    ] ================================================
[2026-10-28 16:07:39,157.157 INFO    ] Launching Daemon at Wed Oct 28 16:07:39 IST 2026
[2026-10-28 16:07:39,167.167 INFO    ] ================================================
[2026-10-28 16:07:39,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:07:39
[2026-10-28 16:07:40,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:07:40,723.723 INFO    ] Initializing speech engine...
[2026-10-28 16:07:40,734.734 INFO    ] 2026-10-28 16:07:40
[2026-10-28 16:07:41,004.004 INFO    ] 2026-10-28 16:07:40
[2026-10-28 16:07:41,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:07:41,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:07:41,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:07:41,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:07:41,577.577 INFO    ] time= 28/10/2026 16:07:41
[2026-10-28 16:07:41,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:07:41,615.615 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:07:41,720.720 INFO    ] No existing commands found in stream
[2026-10-28 16:07:46,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:07:46,747.747 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-28 16:07:48,284.284 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:07:48,287.287 INFO    ] Checking for system updates...
[2026-10-28 16:07:48,324.324 INFO    ] 200
[2026-10-28 16:07:48,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:07:48,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:07:48,391.391 INFO    ] No update needed
[2026-10-28 16:07:48,393.393 INFO    ] Checking for camera pi updates...
[2026-10-28 16:07:48,431.431 INFO    ] 200
[2026-10-28 16:07:48,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:07:48,475.475 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:07:48,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:07:48,536.536 INFO    ] No camera update needed
[2026-10-28 16:07:48,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:07:48,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:07:48,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:07:48,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:07:50,590.590 INFO    ] ================================================
[2026-10-28 16:07:50,605.605 INFO    ] Launching Daemon at Wed Oct 28 16:07:50 IST 2026
[2026-10-28 16:07:50,616.616 INFO    ] ================================================
[2026-10-28 16:07:51,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:07:51
[2026-10-28 16:07:51,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:07:52,062.062 INFO    ] Initializing speech engine...
[2026-10-28 16:07:52,071.071 INFO    ] 2026-10-28 16:07:52
[2026-10-28 16:07:52,317.317 INFO    ] 2026-10-28 16:07:52
[2026-10-28 16:07:52,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:07:52,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:07:52,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:07:52,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:07:52,882.882 INFO    ] time= 28/10/2026 16:07:52
[2026-10-28 16:07:52,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:07:52,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:07:53,028.028 INFO    ] No existing commands found in stream
[2026-10-28 16:07:58,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:07:58,060.060 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 16:08:00,056.056 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:08:00,058.058 INFO    ] Checking for system updates...
[2026-10-28 16:08:00,099.099 INFO    ] 200
[2026-10-28 16:08:00,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:08:00,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:08:00,157.157 INFO    ] No update needed
[2026-10-28 16:08:00,159.159 INFO    ] Checking for camera pi updates...
[2026-10-28 16:08:00,193.193 INFO    ] 200
[2026-10-28 16:08:00,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:08:00,236.236 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:08:00,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:08:00,310.310 INFO    ] No camera update needed
[2026-10-28 16:08:00,313.313 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:08:00,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:08:00,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:08:00,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:08:02,384.384 INFO    ] ================================================
[2026-10-28 16:08:02,404.404 INFO    ] Launching Daemon at Wed Oct 28 16:08:02 IST 2026
[2026-10-28 16:08:02,420.420 INFO    ] ================================================
[2026-10-28 16:08:03,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:08:03
[2026-10-28 16:08:03,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:08:04,032.032 INFO    ] Initializing speech engine...
[2026-10-28 16:08:04,042.042 INFO    ] 2026-10-28 16:08:04
[2026-10-28 16:08:04,288.288 INFO    ] 2026-10-28 16:08:04
[2026-10-28 16:08:04,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:08:04,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:08:04,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:08:04,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:08:05,030.030 INFO    ] time= 28/10/2026 16:08:04
[2026-10-28 16:08:05,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:08:05,121.121 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:08:05,282.282 INFO    ] No existing commands found in stream
[2026-10-28 16:08:10,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:08:10,298.298 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-28 16:08:14,657.657 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:08:14,660.660 INFO    ] Checking for system updates...
[2026-10-28 16:08:14,700.700 INFO    ] 200
[2026-10-28 16:08:14,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:08:14,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:08:14,758.758 INFO    ] No update needed
[2026-10-28 16:08:14,761.761 INFO    ] Checking for camera pi updates...
[2026-10-28 16:08:14,800.800 INFO    ] 200
[2026-10-28 16:08:14,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:08:14,845.845 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:08:14,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:08:14,935.935 INFO    ] No camera update needed
[2026-10-28 16:08:14,937.937 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:08:14,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:08:14,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:08:14,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:08:16,994.994 INFO    ] ================================================
[2026-10-28 16:08:17,009.009 INFO    ] Launching Daemon at Wed Oct 28 16:08:17 IST 2026
[2026-10-28 16:08:17,019.019 INFO    ] ================================================
[2026-10-28 16:08:17,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:08:17
[2026-10-28 16:08:18,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:08:18,414.414 INFO    ] Initializing speech engine...
[2026-10-28 16:08:18,427.427 INFO    ] 2026-10-28 16:08:18
[2026-10-28 16:08:18,689.689 INFO    ] 2026-10-28 16:08:18
[2026-10-28 16:08:18,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:08:18,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:08:18,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:08:19,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:08:19,241.241 INFO    ] time= 28/10/2026 16:08:19
[2026-10-28 16:08:19,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:08:19,276.276 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:08:19,398.398 INFO    ] No existing commands found in stream
[2026-10-28 16:08:24,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:08:24,426.426 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 16:08:25,074.074 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:08:25,077.077 INFO    ] Checking for system updates...
[2026-10-28 16:08:25,116.116 INFO    ] 200
[2026-10-28 16:08:25,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:08:25,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:08:25,181.181 INFO    ] No update needed
[2026-10-28 16:08:25,183.183 INFO    ] Checking for camera pi updates...
[2026-10-28 16:08:25,221.221 INFO    ] 200
[2026-10-28 16:08:25,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:08:25,269.269 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:08:25,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:08:25,344.344 INFO    ] No camera update needed
[2026-10-28 16:08:25,349.349 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:08:25,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:08:25,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:08:25,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:08:27,404.404 INFO    ] ================================================
[2026-10-28 16:08:27,420.420 INFO    ] Launching Daemon at Wed Oct 28 16:08:27 IST 2026
[2026-10-28 16:08:27,432.432 INFO    ] ================================================
[2026-10-28 16:08:28,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:08:27
[2026-10-28 16:08:28,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:08:28,850.850 INFO    ] Initializing speech engine...
[2026-10-28 16:08:28,859.859 INFO    ] 2026-10-28 16:08:28
[2026-10-28 16:08:29,112.112 INFO    ] 2026-10-28 16:08:29
[2026-10-28 16:08:29,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:08:29,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:08:29,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:08:29,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:08:29,801.801 INFO    ] time= 28/10/2026 16:08:29
[2026-10-28 16:08:29,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:08:29,891.891 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:08:30,055.055 INFO    ] No existing commands found in stream
[2026-10-28 16:08:35,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:08:35,070.070 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-28 16:08:39,122.122 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:08:39,125.125 INFO    ] Checking for system updates...
[2026-10-28 16:08:39,160.160 INFO    ] 200
[2026-10-28 16:08:39,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:08:39,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:08:39,218.218 INFO    ] No update needed
[2026-10-28 16:08:39,221.221 INFO    ] Checking for camera pi updates...
[2026-10-28 16:08:39,254.254 INFO    ] 200
[2026-10-28 16:08:39,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:08:39,297.297 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:08:39,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:08:39,379.379 INFO    ] No camera update needed
[2026-10-28 16:08:39,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:08:39,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:08:39,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:08:39,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:08:41,442.442 INFO    ] ================================================
[2026-10-28 16:08:41,457.457 INFO    ] Launching Daemon at Wed Oct 28 16:08:41 IST 2026
[2026-10-28 16:08:41,468.468 INFO    ] ================================================
[2026-10-28 16:08:42,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:08:42
[2026-10-28 16:08:42,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:08:42,886.886 INFO    ] Initializing speech engine...
[2026-10-28 16:08:42,895.895 INFO    ] 2026-10-28 16:08:42
[2026-10-28 16:08:43,155.155 INFO    ] 2026-10-28 16:08:43
[2026-10-28 16:08:43,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:08:43,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:08:43,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:08:43,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:08:43,844.844 INFO    ] time= 28/10/2026 16:08:43
[2026-10-28 16:08:43,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:08:43,931.931 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:08:44,100.100 INFO    ] No existing commands found in stream
[2026-10-28 16:08:49,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:08:49,134.134 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 16:08:51,675.675 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:08:51,678.678 INFO    ] Checking for system updates...
[2026-10-28 16:08:51,727.727 INFO    ] 200
[2026-10-28 16:08:51,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:08:51,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:08:51,804.804 INFO    ] No update needed
[2026-10-28 16:08:51,807.807 INFO    ] Checking for camera pi updates...
[2026-10-28 16:08:51,855.855 INFO    ] 200
[2026-10-28 16:08:51,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:08:51,914.914 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:08:51,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:08:51,994.994 INFO    ] No camera update needed
[2026-10-28 16:08:51,996.996 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:08:51,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:08:52,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:08:52,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:08:54,055.055 INFO    ] ================================================
[2026-10-28 16:08:54,072.072 INFO    ] Launching Daemon at Wed Oct 28 16:08:54 IST 2026
[2026-10-28 16:08:54,084.084 INFO    ] ================================================
[2026-10-28 16:08:54,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:08:54
[2026-10-28 16:08:55,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:08:55,547.547 INFO    ] Initializing speech engine...
[2026-10-28 16:08:55,556.556 INFO    ] 2026-10-28 16:08:55
[2026-10-28 16:08:55,855.855 INFO    ] 2026-10-28 16:08:55
[2026-10-28 16:08:55,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:08:56,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:08:56,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:08:56,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:08:56,495.495 INFO    ] time= 28/10/2026 16:08:56
[2026-10-28 16:08:56,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:08:56,521.521 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:08:56,649.649 INFO    ] No existing commands found in stream
[2026-10-28 16:09:01,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:09:01,679.679 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 16:09:05,364.364 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:09:05,366.366 INFO    ] Checking for system updates...
[2026-10-28 16:09:05,406.406 INFO    ] 200
[2026-10-28 16:09:05,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:09:05,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:09:05,469.469 INFO    ] No update needed
[2026-10-28 16:09:05,471.471 INFO    ] Checking for camera pi updates...
[2026-10-28 16:09:05,514.514 INFO    ] 200
[2026-10-28 16:09:05,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:09:05,558.558 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:09:05,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:09:05,658.658 INFO    ] No camera update needed
[2026-10-28 16:09:05,660.660 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:09:05,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:09:05,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:09:05,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:09:07,714.714 INFO    ] ================================================
[2026-10-28 16:09:07,729.729 INFO    ] Launching Daemon at Wed Oct 28 16:09:07 IST 2026
[2026-10-28 16:09:07,740.740 INFO    ] ================================================
[2026-10-28 16:09:08,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:09:08
[2026-10-28 16:09:08,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:09:09,157.157 INFO    ] Initializing speech engine...
[2026-10-28 16:09:09,167.167 INFO    ] 2026-10-28 16:09:09
[2026-10-28 16:09:09,411.411 INFO    ] 2026-10-28 16:09:09
[2026-10-28 16:09:09,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:09:09,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:09:09,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:09:09,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:09:09,964.964 INFO    ] time= 28/10/2026 16:09:09
[2026-10-28 16:09:09,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:09:09,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:09:10,114.114 INFO    ] No existing commands found in stream
[2026-10-28 16:09:15,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:09:15,132.132 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-28 16:09:18,245.245 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:09:18,248.248 INFO    ] Checking for system updates...
[2026-10-28 16:09:18,284.284 INFO    ] 200
[2026-10-28 16:09:18,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:09:18,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:09:18,346.346 INFO    ] No update needed
[2026-10-28 16:09:18,349.349 INFO    ] Checking for camera pi updates...
[2026-10-28 16:09:18,383.383 INFO    ] 200
[2026-10-28 16:09:18,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:09:18,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:09:18,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:09:18,505.505 INFO    ] No camera update needed
[2026-10-28 16:09:18,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:09:18,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:09:18,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:09:18,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:09:20,561.561 INFO    ] ================================================
[2026-10-28 16:09:20,588.588 INFO    ] Launching Daemon at Wed Oct 28 16:09:20 IST 2026
[2026-10-28 16:09:20,599.599 INFO    ] ================================================
[2026-10-28 16:09:21,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:09:21
[2026-10-28 16:09:21,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:09:22,205.205 INFO    ] Initializing speech engine...
[2026-10-28 16:09:22,211.211 INFO    ] 2026-10-28 16:09:22
[2026-10-28 16:09:22,496.496 INFO    ] 2026-10-28 16:09:22
[2026-10-28 16:09:22,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:09:22,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:09:22,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:09:23,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:09:23,049.049 INFO    ] time= 28/10/2026 16:09:23
[2026-10-28 16:09:23,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:09:23,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:09:23,260.260 INFO    ] No existing commands found in stream
[2026-10-28 16:09:28,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:09:28,295.295 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 16:09:32,457.457 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:09:32,460.460 INFO    ] Checking for system updates...
[2026-10-28 16:09:32,499.499 INFO    ] 200
[2026-10-28 16:09:32,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:09:32,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:09:32,568.568 INFO    ] No update needed
[2026-10-28 16:09:32,571.571 INFO    ] Checking for camera pi updates...
[2026-10-28 16:09:32,615.615 INFO    ] 200
[2026-10-28 16:09:32,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:09:32,674.674 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:09:32,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:09:32,792.792 INFO    ] No camera update needed
[2026-10-28 16:09:32,795.795 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:09:32,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:09:32,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:09:32,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:09:34,850.850 INFO    ] ================================================
[2026-10-28 16:09:34,865.865 INFO    ] Launching Daemon at Wed Oct 28 16:09:34 IST 2026
[2026-10-28 16:09:34,876.876 INFO    ] ================================================
[2026-10-28 16:09:35,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:09:35
[2026-10-28 16:09:36,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:09:36,315.315 INFO    ] Initializing speech engine...
[2026-10-28 16:09:36,327.327 INFO    ] 2026-10-28 16:09:36
[2026-10-28 16:09:36,588.588 INFO    ] 2026-10-28 16:09:36
[2026-10-28 16:09:36,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:09:36,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:09:36,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:09:37,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:09:37,140.140 INFO    ] time= 28/10/2026 16:09:37
[2026-10-28 16:09:37,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:09:37,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:09:37,311.311 INFO    ] No existing commands found in stream
[2026-10-28 16:09:42,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:09:42,339.339 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-28 16:09:45,795.795 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:09:45,797.797 INFO    ] Checking for system updates...
[2026-10-28 16:09:45,834.834 INFO    ] 200
[2026-10-28 16:09:45,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:09:45,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:09:45,896.896 INFO    ] No update needed
[2026-10-28 16:09:45,898.898 INFO    ] Checking for camera pi updates...
[2026-10-28 16:09:45,931.931 INFO    ] 200
[2026-10-28 16:09:45,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:09:45,975.975 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:09:46,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:09:46,159.159 INFO    ] No camera update needed
[2026-10-28 16:09:46,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:09:46,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:09:46,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:09:46,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:09:48,215.215 INFO    ] ================================================
[2026-10-28 16:09:48,229.229 INFO    ] Launching Daemon at Wed Oct 28 16:09:48 IST 2026
[2026-10-28 16:09:48,240.240 INFO    ] ================================================
[2026-10-28 16:09:48,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:09:48
[2026-10-28 16:09:49,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:09:49,637.637 INFO    ] Initializing speech engine...
[2026-10-28 16:09:49,659.659 INFO    ] 2026-10-28 16:09:49
[2026-10-28 16:09:49,911.911 INFO    ] 2026-10-28 16:09:49
[2026-10-28 16:09:49,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:09:50,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:09:50,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:09:50,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:09:50,466.466 INFO    ] time= 28/10/2026 16:09:50
[2026-10-28 16:09:50,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:09:50,506.506 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:09:50,628.628 INFO    ] No existing commands found in stream
[2026-10-28 16:09:55,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:09:55,655.655 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-28 16:09:58,059.059 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:09:58,062.062 INFO    ] Checking for system updates...
[2026-10-28 16:09:58,101.101 INFO    ] 200
[2026-10-28 16:09:58,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:09:58,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:09:58,160.160 INFO    ] No update needed
[2026-10-28 16:09:58,163.163 INFO    ] Checking for camera pi updates...
[2026-10-28 16:09:58,200.200 INFO    ] 200
[2026-10-28 16:09:58,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:09:58,245.245 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:09:58,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:09:58,326.326 INFO    ] No camera update needed
[2026-10-28 16:09:58,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:09:58,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:09:58,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:09:58,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:10:00,386.386 INFO    ] ================================================
[2026-10-28 16:10:00,401.401 INFO    ] Launching Daemon at Wed Oct 28 16:10:00 IST 2026
[2026-10-28 16:10:00,411.411 INFO    ] ================================================
[2026-10-28 16:10:01,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:10:01
[2026-10-28 16:10:02,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:10:02,548.548 INFO    ] Initializing speech engine...
[2026-10-28 16:10:02,552.552 INFO    ] 2026-10-28 16:10:02
[2026-10-28 16:10:02,904.904 INFO    ] 2026-10-28 16:10:02
[2026-10-28 16:10:02,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:10:03,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:10:03,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:10:03,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:10:03,429.429 INFO    ] time= 28/10/2026 16:10:03
[2026-10-28 16:10:03,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:10:03,474.474 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:10:03,641.641 INFO    ] No existing commands found in stream
[2026-10-28 16:10:08,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:10:08,663.663 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-28 16:10:12,527.527 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:10:12,529.529 INFO    ] Checking for system updates...
[2026-10-28 16:10:12,568.568 INFO    ] 200
[2026-10-28 16:10:12,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:10:12,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:10:12,625.625 INFO    ] No update needed
[2026-10-28 16:10:12,628.628 INFO    ] Checking for camera pi updates...
[2026-10-28 16:10:12,661.661 INFO    ] 200
[2026-10-28 16:10:12,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:10:12,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:10:12,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:10:12,797.797 INFO    ] No camera update needed
[2026-10-28 16:10:12,799.799 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:10:12,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:10:12,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:10:12,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:10:14,853.853 INFO    ] ================================================
[2026-10-28 16:10:14,868.868 INFO    ] Launching Daemon at Wed Oct 28 16:10:14 IST 2026
[2026-10-28 16:10:14,878.878 INFO    ] ================================================
[2026-10-28 16:10:15,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:10:15
[2026-10-28 16:10:16,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:10:16,288.288 INFO    ] Initializing speech engine...
[2026-10-28 16:10:16,311.311 INFO    ] 2026-10-28 16:10:16
[2026-10-28 16:10:16,562.562 INFO    ] 2026-10-28 16:10:16
[2026-10-28 16:10:16,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:10:16,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:10:16,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:10:17,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:10:17,122.122 INFO    ] time= 28/10/2026 16:10:17
[2026-10-28 16:10:17,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:10:17,151.151 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:10:17,276.276 INFO    ] No existing commands found in stream
[2026-10-28 16:10:22,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:10:22,299.299 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-28 16:10:23,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:10:23,204.204 INFO    ] Checking for system updates...
[2026-10-28 16:10:23,242.242 INFO    ] 200
[2026-10-28 16:10:23,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:10:23,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:10:23,300.300 INFO    ] No update needed
[2026-10-28 16:10:23,303.303 INFO    ] Checking for camera pi updates...
[2026-10-28 16:10:23,341.341 INFO    ] 200
[2026-10-28 16:10:23,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:10:23,390.390 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:10:23,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:10:23,471.471 INFO    ] No camera update needed
[2026-10-28 16:10:23,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:10:23,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:10:23,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:10:23,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:10:25,528.528 INFO    ] ================================================
[2026-10-28 16:10:25,543.543 INFO    ] Launching Daemon at Wed Oct 28 16:10:25 IST 2026
[2026-10-28 16:10:25,554.554 INFO    ] ================================================
[2026-10-28 16:10:26,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:10:26
[2026-10-28 16:10:26,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:10:27,151.151 INFO    ] Initializing speech engine...
[2026-10-28 16:10:27,161.161 INFO    ] 2026-10-28 16:10:27
[2026-10-28 16:10:27,431.431 INFO    ] 2026-10-28 16:10:27
[2026-10-28 16:10:27,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:10:27,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:10:27,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:10:27,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:10:28,024.024 INFO    ] time= 28/10/2026 16:10:27
[2026-10-28 16:10:28,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:10:28,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:10:28,137.137 INFO    ] No existing commands found in stream
[2026-10-28 16:10:33,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:10:33,170.170 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 16:10:34,857.857 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:10:34,860.860 INFO    ] Checking for system updates...
[2026-10-28 16:10:34,897.897 INFO    ] 200
[2026-10-28 16:10:34,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:10:34,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:10:34,955.955 INFO    ] No update needed
[2026-10-28 16:10:34,957.957 INFO    ] Checking for camera pi updates...
[2026-10-28 16:10:34,991.991 INFO    ] 200
[2026-10-28 16:10:34,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:10:35,039.039 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:10:35,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:10:35,121.121 INFO    ] No camera update needed
[2026-10-28 16:10:35,124.124 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:10:35,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:10:35,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:10:35,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:10:37,175.175 INFO    ] ================================================
[2026-10-28 16:10:37,190.190 INFO    ] Launching Daemon at Wed Oct 28 16:10:37 IST 2026
[2026-10-28 16:10:37,200.200 INFO    ] ================================================
[2026-10-28 16:10:37,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:10:37
[2026-10-28 16:10:38,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:10:38,763.763 INFO    ] Initializing speech engine...
[2026-10-28 16:10:38,773.773 INFO    ] 2026-10-28 16:10:38
[2026-10-28 16:10:39,030.030 INFO    ] 2026-10-28 16:10:39
[2026-10-28 16:10:39,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:10:39,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:10:39,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:10:39,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:10:39,728.728 INFO    ] time= 28/10/2026 16:10:39
[2026-10-28 16:10:39,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:10:39,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:10:39,981.981 INFO    ] No existing commands found in stream
[2026-10-28 16:10:45,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:10:45,005.005 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-28 16:10:48,516.516 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:10:48,519.519 INFO    ] Checking for system updates...
[2026-10-28 16:10:48,557.557 INFO    ] 200
[2026-10-28 16:10:48,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:10:48,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:10:48,619.619 INFO    ] No update needed
[2026-10-28 16:10:48,622.622 INFO    ] Checking for camera pi updates...
[2026-10-28 16:10:48,655.655 INFO    ] 200
[2026-10-28 16:10:48,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:10:48,698.698 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:10:48,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:10:48,782.782 INFO    ] No camera update needed
[2026-10-28 16:10:48,785.785 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:10:48,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:10:48,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:10:48,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:10:50,845.845 INFO    ] ================================================
[2026-10-28 16:10:50,860.860 INFO    ] Launching Daemon at Wed Oct 28 16:10:50 IST 2026
[2026-10-28 16:10:50,871.871 INFO    ] ================================================
[2026-10-28 16:10:51,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:10:51
[2026-10-28 16:10:52,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:10:52,449.449 INFO    ] Initializing speech engine...
[2026-10-28 16:10:52,457.457 INFO    ] 2026-10-28 16:10:52
[2026-10-28 16:10:52,730.730 INFO    ] 2026-10-28 16:10:52
[2026-10-28 16:10:52,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:10:53,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:10:53,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:10:53,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:10:53,449.449 INFO    ] time= 28/10/2026 16:10:53
[2026-10-28 16:10:53,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:10:53,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:10:53,722.722 INFO    ] No existing commands found in stream
[2026-10-28 16:10:58,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:10:58,736.736 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 16:11:02,402.402 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:11:02,406.406 INFO    ] Checking for system updates...
[2026-10-28 16:11:02,445.445 INFO    ] 200
[2026-10-28 16:11:02,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:11:02,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:11:02,521.521 INFO    ] No update needed
[2026-10-28 16:11:02,524.524 INFO    ] Checking for camera pi updates...
[2026-10-28 16:11:02,566.566 INFO    ] 200
[2026-10-28 16:11:02,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:11:02,616.616 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:11:02,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:11:02,743.743 INFO    ] No camera update needed
[2026-10-28 16:11:02,746.746 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:11:02,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:11:02,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:11:02,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:11:04,805.805 INFO    ] ================================================
[2026-10-28 16:11:04,820.820 INFO    ] Launching Daemon at Wed Oct 28 16:11:04 IST 2026
[2026-10-28 16:11:04,831.831 INFO    ] ================================================
[2026-10-28 16:11:05,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:11:05
[2026-10-28 16:11:06,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:11:06,306.306 INFO    ] Initializing speech engine...
[2026-10-28 16:11:06,311.311 INFO    ] 2026-10-28 16:11:06
[2026-10-28 16:11:06,575.575 INFO    ] 2026-10-28 16:11:06
[2026-10-28 16:11:06,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:11:06,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:11:06,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:11:07,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:11:07,135.135 INFO    ] time= 28/10/2026 16:11:07
[2026-10-28 16:11:07,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:11:07,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:11:07,273.273 INFO    ] No existing commands found in stream
[2026-10-28 16:11:12,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:11:12,296.296 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-28 16:11:13,085.085 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:11:13,087.087 INFO    ] Checking for system updates...
[2026-10-28 16:11:13,123.123 INFO    ] 200
[2026-10-28 16:11:13,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:11:13,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:11:13,184.184 INFO    ] No update needed
[2026-10-28 16:11:13,187.187 INFO    ] Checking for camera pi updates...
[2026-10-28 16:11:13,220.220 INFO    ] 200
[2026-10-28 16:11:13,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:11:13,263.263 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:11:13,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:11:13,348.348 INFO    ] No camera update needed
[2026-10-28 16:11:13,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:11:13,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:11:13,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:11:13,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:11:15,404.404 INFO    ] ================================================
[2026-10-28 16:11:15,420.420 INFO    ] Launching Daemon at Wed Oct 28 16:11:15 IST 2026
[2026-10-28 16:11:15,431.431 INFO    ] ================================================
[2026-10-28 16:11:16,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:11:15
[2026-10-28 16:11:16,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:11:16,846.846 INFO    ] Initializing speech engine...
[2026-10-28 16:11:16,865.865 INFO    ] 2026-10-28 16:11:16
[2026-10-28 16:11:17,118.118 INFO    ] 2026-10-28 16:11:17
[2026-10-28 16:11:17,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:11:17,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:11:17,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:11:17,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:11:18,018.018 INFO    ] time= 28/10/2026 16:11:17
[2026-10-28 16:11:18,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:11:18,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:11:18,227.227 INFO    ] No existing commands found in stream
[2026-10-28 16:11:23,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:11:23,239.239 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-28 16:11:26,977.977 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:11:26,980.980 INFO    ] Checking for system updates...
[2026-10-28 16:11:27,018.018 INFO    ] 200
[2026-10-28 16:11:27,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:11:27,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:11:27,077.077 INFO    ] No update needed
[2026-10-28 16:11:27,080.080 INFO    ] Checking for camera pi updates...
[2026-10-28 16:11:27,115.115 INFO    ] 200
[2026-10-28 16:11:27,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:11:27,158.158 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:11:27,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:11:27,249.249 INFO    ] No camera update needed
[2026-10-28 16:11:27,251.251 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:11:27,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:11:27,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:11:27,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:11:29,308.308 INFO    ] ================================================
[2026-10-28 16:11:29,324.324 INFO    ] Launching Daemon at Wed Oct 28 16:11:29 IST 2026
[2026-10-28 16:11:29,335.335 INFO    ] ================================================
[2026-10-28 16:11:29,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:11:29
[2026-10-28 16:11:30,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:11:30,748.748 INFO    ] Initializing speech engine...
[2026-10-28 16:11:30,757.757 INFO    ] 2026-10-28 16:11:30
[2026-10-28 16:11:31,048.048 INFO    ] 2026-10-28 16:11:31
[2026-10-28 16:11:31,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:11:31,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:11:31,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:11:31,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:11:31,675.675 INFO    ] time= 28/10/2026 16:11:31
[2026-10-28 16:11:31,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:11:31,700.700 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:11:31,811.811 INFO    ] No existing commands found in stream
[2026-10-28 16:11:36,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:11:36,837.837 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-28 16:11:37,767.767 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:11:37,770.770 INFO    ] Checking for system updates...
[2026-10-28 16:11:37,808.808 INFO    ] 200
[2026-10-28 16:11:37,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:11:37,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:11:37,865.865 INFO    ] No update needed
[2026-10-28 16:11:37,868.868 INFO    ] Checking for camera pi updates...
[2026-10-28 16:11:37,908.908 INFO    ] 200
[2026-10-28 16:11:37,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:11:37,952.952 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:11:38,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:11:38,036.036 INFO    ] No camera update needed
[2026-10-28 16:11:38,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:11:38,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:11:38,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:11:38,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:11:40,090.090 INFO    ] ================================================
[2026-10-28 16:11:40,106.106 INFO    ] Launching Daemon at Wed Oct 28 16:11:40 IST 2026
[2026-10-28 16:11:40,117.117 INFO    ] ================================================
[2026-10-28 16:11:40,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:11:40
[2026-10-28 16:11:41,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:11:41,714.714 INFO    ] Initializing speech engine...
[2026-10-28 16:11:41,719.719 INFO    ] 2026-10-28 16:11:41
[2026-10-28 16:11:41,991.991 INFO    ] 2026-10-28 16:11:41
[2026-10-28 16:11:42,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:11:42,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:11:42,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:11:42,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:11:42,542.542 INFO    ] time= 28/10/2026 16:11:42
[2026-10-28 16:11:42,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:11:42,590.590 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:11:42,715.715 INFO    ] No existing commands found in stream
[2026-10-28 16:11:47,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:11:47,749.749 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 16:11:52,001.001 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:11:52,004.004 INFO    ] Checking for system updates...
[2026-10-28 16:11:52,042.042 INFO    ] 200
[2026-10-28 16:11:52,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:11:52,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:11:52,100.100 INFO    ] No update needed
[2026-10-28 16:11:52,103.103 INFO    ] Checking for camera pi updates...
[2026-10-28 16:11:52,137.137 INFO    ] 200
[2026-10-28 16:11:52,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:11:52,182.182 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:11:52,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:11:52,382.382 INFO    ] No camera update needed
[2026-10-28 16:11:52,384.384 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:11:52,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:11:52,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:11:52,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:11:54,439.439 INFO    ] ================================================
[2026-10-28 16:11:54,454.454 INFO    ] Launching Daemon at Wed Oct 28 16:11:54 IST 2026
[2026-10-28 16:11:54,465.465 INFO    ] ================================================
[2026-10-28 16:11:55,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:11:55
[2026-10-28 16:11:55,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:11:56,029.029 INFO    ] Initializing speech engine...
[2026-10-28 16:11:56,039.039 INFO    ] 2026-10-28 16:11:56
[2026-10-28 16:11:56,314.314 INFO    ] 2026-10-28 16:11:56
[2026-10-28 16:11:56,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:11:56,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:11:56,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:11:57,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:11:57,101.101 INFO    ] time= 28/10/2026 16:11:57
[2026-10-28 16:11:57,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:11:57,185.185 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:11:57,387.387 INFO    ] No existing commands found in stream
[2026-10-28 16:12:02,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:12:02,429.429 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 16:12:04,117.117 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:12:04,120.120 INFO    ] Checking for system updates...
[2026-10-28 16:12:04,157.157 INFO    ] 200
[2026-10-28 16:12:04,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:12:04,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:12:04,219.219 INFO    ] No update needed
[2026-10-28 16:12:04,222.222 INFO    ] Checking for camera pi updates...
[2026-10-28 16:12:04,255.255 INFO    ] 200
[2026-10-28 16:12:04,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:12:04,297.297 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:12:04,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:12:04,391.391 INFO    ] No camera update needed
[2026-10-28 16:12:04,393.393 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:12:04,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:12:04,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:12:04,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:12:06,452.452 INFO    ] ================================================
[2026-10-28 16:12:06,467.467 INFO    ] Launching Daemon at Wed Oct 28 16:12:06 IST 2026
[2026-10-28 16:12:06,478.478 INFO    ] ================================================
[2026-10-28 16:12:07,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:12:07
[2026-10-28 16:12:07,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:12:07,876.876 INFO    ] Initializing speech engine...
[2026-10-28 16:12:07,885.885 INFO    ] 2026-10-28 16:12:07
[2026-10-28 16:12:08,173.173 INFO    ] 2026-10-28 16:12:08
[2026-10-28 16:12:08,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:12:08,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:12:08,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:12:08,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:12:08,785.785 INFO    ] time= 28/10/2026 16:12:08
[2026-10-28 16:12:08,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:12:08,811.811 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:12:08,953.953 INFO    ] No existing commands found in stream
[2026-10-28 16:12:13,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:12:13,971.971 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-28 16:12:16,716.716 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:12:16,719.719 INFO    ] Checking for system updates...
[2026-10-28 16:12:16,756.756 INFO    ] 200
[2026-10-28 16:12:16,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:12:16,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:12:16,820.820 INFO    ] No update needed
[2026-10-28 16:12:16,822.822 INFO    ] Checking for camera pi updates...
[2026-10-28 16:12:16,857.857 INFO    ] 200
[2026-10-28 16:12:16,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:12:16,901.901 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:12:16,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:12:16,984.984 INFO    ] No camera update needed
[2026-10-28 16:12:16,987.987 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:12:16,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:12:16,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:12:17,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:12:19,043.043 INFO    ] ================================================
[2026-10-28 16:12:19,059.059 INFO    ] Launching Daemon at Wed Oct 28 16:12:19 IST 2026
[2026-10-28 16:12:19,070.070 INFO    ] ================================================
[2026-10-28 16:12:19,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:12:19
[2026-10-28 16:12:20,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:12:20,488.488 INFO    ] Initializing speech engine...
[2026-10-28 16:12:20,497.497 INFO    ] 2026-10-28 16:12:20
[2026-10-28 16:12:20,745.745 INFO    ] 2026-10-28 16:12:20
[2026-10-28 16:12:20,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:12:21,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:12:21,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:12:21,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:12:21,309.309 INFO    ] time= 28/10/2026 16:12:21
[2026-10-28 16:12:21,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:12:21,359.359 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:12:21,482.482 INFO    ] No existing commands found in stream
[2026-10-28 16:12:26,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:12:26,516.516 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-28 16:12:29,968.968 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:12:29,970.970 INFO    ] Checking for system updates...
[2026-10-28 16:12:30,007.007 INFO    ] 200
[2026-10-28 16:12:30,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:12:30,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:12:30,064.064 INFO    ] No update needed
[2026-10-28 16:12:30,067.067 INFO    ] Checking for camera pi updates...
[2026-10-28 16:12:30,100.100 INFO    ] 200
[2026-10-28 16:12:30,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:12:30,142.142 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:12:30,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:12:30,227.227 INFO    ] No camera update needed
[2026-10-28 16:12:30,229.229 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:12:30,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:12:30,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:12:30,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:12:32,291.291 INFO    ] ================================================
[2026-10-28 16:12:32,307.307 INFO    ] Launching Daemon at Wed Oct 28 16:12:32 IST 2026
[2026-10-28 16:12:32,320.320 INFO    ] ================================================
[2026-10-28 16:12:32,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:12:32
[2026-10-28 16:12:33,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:12:33,785.785 INFO    ] Initializing speech engine...
[2026-10-28 16:12:33,804.804 INFO    ] 2026-10-28 16:12:33
[2026-10-28 16:12:34,064.064 INFO    ] 2026-10-28 16:12:34
[2026-10-28 16:12:34,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:12:34,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:12:34,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:12:34,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:12:34,669.669 INFO    ] time= 28/10/2026 16:12:34
[2026-10-28 16:12:34,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:12:34,693.693 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:12:34,815.815 INFO    ] No existing commands found in stream
[2026-10-28 16:12:39,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:12:39,838.838 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-28 16:12:42,083.083 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:12:42,086.086 INFO    ] Checking for system updates...
[2026-10-28 16:12:42,123.123 INFO    ] 200
[2026-10-28 16:12:42,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:12:42,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:12:42,181.181 INFO    ] No update needed
[2026-10-28 16:12:42,183.183 INFO    ] Checking for camera pi updates...
[2026-10-28 16:12:42,219.219 INFO    ] 200
[2026-10-28 16:12:42,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:12:42,261.261 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:12:42,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:12:42,341.341 INFO    ] No camera update needed
[2026-10-28 16:12:42,343.343 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:12:42,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:12:42,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:12:42,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:12:44,396.396 INFO    ] ================================================
[2026-10-28 16:12:44,411.411 INFO    ] Launching Daemon at Wed Oct 28 16:12:44 IST 2026
[2026-10-28 16:12:44,422.422 INFO    ] ================================================
[2026-10-28 16:12:45,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:12:45
[2026-10-28 16:12:45,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:12:45,970.970 INFO    ] Initializing speech engine...
[2026-10-28 16:12:45,978.978 INFO    ] 2026-10-28 16:12:45
[2026-10-28 16:12:46,244.244 INFO    ] 2026-10-28 16:12:46
[2026-10-28 16:12:46,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:12:46,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:12:46,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:12:46,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:12:46,803.803 INFO    ] time= 28/10/2026 16:12:46
[2026-10-28 16:12:46,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:12:46,850.850 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:12:46,967.967 INFO    ] No existing commands found in stream
[2026-10-28 16:12:51,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:12:52,001.001 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 16:12:56,356.356 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:12:56,359.359 INFO    ] Checking for system updates...
[2026-10-28 16:12:56,398.398 INFO    ] 200
[2026-10-28 16:12:56,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:12:56,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:12:56,463.463 INFO    ] No update needed
[2026-10-28 16:12:56,466.466 INFO    ] Checking for camera pi updates...
[2026-10-28 16:12:56,511.511 INFO    ] 200
[2026-10-28 16:12:56,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:12:56,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:12:56,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:12:56,630.630 INFO    ] No camera update needed
[2026-10-28 16:12:56,633.633 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:12:56,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:12:56,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:12:56,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:12:58,688.688 INFO    ] ================================================
[2026-10-28 16:12:58,704.704 INFO    ] Launching Daemon at Wed Oct 28 16:12:58 IST 2026
[2026-10-28 16:12:58,715.715 INFO    ] ================================================
[2026-10-28 16:12:59,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:12:59
[2026-10-28 16:13:00,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:13:00,279.279 INFO    ] Initializing speech engine...
[2026-10-28 16:13:00,287.287 INFO    ] 2026-10-28 16:13:00
[2026-10-28 16:13:00,542.542 INFO    ] 2026-10-28 16:13:00
[2026-10-28 16:13:00,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:13:00,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:13:00,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:13:01,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:13:01,084.084 INFO    ] time= 28/10/2026 16:13:01
[2026-10-28 16:13:01,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:13:01,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:13:01,224.224 INFO    ] No existing commands found in stream
[2026-10-28 16:13:06,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:13:06,237.237 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-28 16:13:10,316.316 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:13:10,319.319 INFO    ] Checking for system updates...
[2026-10-28 16:13:10,355.355 INFO    ] 200
[2026-10-28 16:13:10,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:13:10,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:13:10,420.420 INFO    ] No update needed
[2026-10-28 16:13:10,422.422 INFO    ] Checking for camera pi updates...
[2026-10-28 16:13:10,459.459 INFO    ] 200
[2026-10-28 16:13:10,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:13:10,502.502 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:13:10,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:13:10,606.606 INFO    ] No camera update needed
[2026-10-28 16:13:10,608.608 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:13:10,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:13:10,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:13:10,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:13:12,663.663 INFO    ] ================================================
[2026-10-28 16:13:12,679.679 INFO    ] Launching Daemon at Wed Oct 28 16:13:12 IST 2026
[2026-10-28 16:13:12,690.690 INFO    ] ================================================
[2026-10-28 16:13:13,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:13:13
[2026-10-28 16:13:13,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:13:14,289.289 INFO    ] Initializing speech engine...
[2026-10-28 16:13:14,294.294 INFO    ] 2026-10-28 16:13:14
[2026-10-28 16:13:14,570.570 INFO    ] 2026-10-28 16:13:14
[2026-10-28 16:13:14,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:13:14,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:13:15,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:13:15,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:13:15,355.355 INFO    ] time= 28/10/2026 16:13:15
[2026-10-28 16:13:15,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:13:15,438.438 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:13:15,551.551 INFO    ] No existing commands found in stream
[2026-10-28 16:13:20,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:13:20,573.573 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-28 16:13:21,295.295 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:13:21,298.298 INFO    ] Checking for system updates...
[2026-10-28 16:13:21,335.335 INFO    ] 200
[2026-10-28 16:13:21,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:13:21,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:13:21,400.400 INFO    ] No update needed
[2026-10-28 16:13:21,404.404 INFO    ] Checking for camera pi updates...
[2026-10-28 16:13:21,442.442 INFO    ] 200
[2026-10-28 16:13:21,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:13:21,486.486 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:13:21,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:13:21,576.576 INFO    ] No camera update needed
[2026-10-28 16:13:21,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:13:21,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:13:21,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:13:21,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:13:23,637.637 INFO    ] ================================================
[2026-10-28 16:13:23,653.653 INFO    ] Launching Daemon at Wed Oct 28 16:13:23 IST 2026
[2026-10-28 16:13:23,663.663 INFO    ] ================================================
[2026-10-28 16:13:24,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:13:24
[2026-10-28 16:13:24,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:13:25,111.111 INFO    ] Initializing speech engine...
[2026-10-28 16:13:25,119.119 INFO    ] 2026-10-28 16:13:25
[2026-10-28 16:13:25,415.415 INFO    ] 2026-10-28 16:13:25
[2026-10-28 16:13:25,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:13:25,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:13:25,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:13:25,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:13:25,978.978 INFO    ] time= 28/10/2026 16:13:25
[2026-10-28 16:13:26,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:13:26,053.053 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:13:26,189.189 INFO    ] No existing commands found in stream
[2026-10-28 16:13:31,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:13:31,218.218 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-28 16:13:32,955.955 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:13:32,958.958 INFO    ] Checking for system updates...
[2026-10-28 16:13:32,993.993 INFO    ] 200
[2026-10-28 16:13:32,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:13:33,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:13:33,050.050 INFO    ] No update needed
[2026-10-28 16:13:33,053.053 INFO    ] Checking for camera pi updates...
[2026-10-28 16:13:33,087.087 INFO    ] 200
[2026-10-28 16:13:33,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:13:33,130.130 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:13:33,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:13:33,245.245 INFO    ] No camera update needed
[2026-10-28 16:13:33,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:13:33,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:13:33,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:13:33,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:13:35,301.301 INFO    ] ================================================
[2026-10-28 16:13:35,317.317 INFO    ] Launching Daemon at Wed Oct 28 16:13:35 IST 2026
[2026-10-28 16:13:35,328.328 INFO    ] ================================================
[2026-10-28 16:13:35,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:13:35
[2026-10-28 16:13:36,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:13:36,783.783 INFO    ] Initializing speech engine...
[2026-10-28 16:13:36,794.794 INFO    ] 2026-10-28 16:13:36
[2026-10-28 16:13:37,055.055 INFO    ] 2026-10-28 16:13:37
[2026-10-28 16:13:37,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:13:37,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:13:37,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:13:37,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:13:37,775.775 INFO    ] time= 28/10/2026 16:13:37
[2026-10-28 16:13:37,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:13:37,876.876 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:13:38,001.001 INFO    ] No existing commands found in stream
[2026-10-28 16:13:43,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:13:43,021.021 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-28 16:13:45,876.876 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:13:45,879.879 INFO    ] Checking for system updates...
[2026-10-28 16:13:45,914.914 INFO    ] 200
[2026-10-28 16:13:45,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:13:45,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:13:45,972.972 INFO    ] No update needed
[2026-10-28 16:13:45,975.975 INFO    ] Checking for camera pi updates...
[2026-10-28 16:13:46,008.008 INFO    ] 200
[2026-10-28 16:13:46,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:13:46,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:13:46,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:13:46,145.145 INFO    ] No camera update needed
[2026-10-28 16:13:46,148.148 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:13:46,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:13:46,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:13:46,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:13:48,202.202 INFO    ] ================================================
[2026-10-28 16:13:48,218.218 INFO    ] Launching Daemon at Wed Oct 28 16:13:48 IST 2026
[2026-10-28 16:13:48,229.229 INFO    ] ================================================
[2026-10-28 16:13:48,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:13:48
[2026-10-28 16:13:49,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:13:49,688.688 INFO    ] Initializing speech engine...
[2026-10-28 16:13:49,696.696 INFO    ] 2026-10-28 16:13:49
[2026-10-28 16:13:49,954.954 INFO    ] 2026-10-28 16:13:49
[2026-10-28 16:13:49,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:13:50,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:13:50,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:13:50,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:13:50,500.500 INFO    ] time= 28/10/2026 16:13:50
[2026-10-28 16:13:50,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:13:50,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:13:50,667.667 INFO    ] No existing commands found in stream
[2026-10-28 16:13:55,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:13:55,695.695 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-28 16:14:00,050.050 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:14:00,052.052 INFO    ] Checking for system updates...
[2026-10-28 16:14:00,093.093 INFO    ] 200
[2026-10-28 16:14:00,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:14:00,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:14:00,151.151 INFO    ] No update needed
[2026-10-28 16:14:00,154.154 INFO    ] Checking for camera pi updates...
[2026-10-28 16:14:00,187.187 INFO    ] 200
[2026-10-28 16:14:00,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:14:00,230.230 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:14:00,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:14:00,418.418 INFO    ] No camera update needed
[2026-10-28 16:14:00,420.420 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:14:00,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:14:00,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:14:00,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:14:02,499.499 INFO    ] ================================================
[2026-10-28 16:14:02,517.517 INFO    ] Launching Daemon at Wed Oct 28 16:14:02 IST 2026
[2026-10-28 16:14:02,530.530 INFO    ] ================================================
[2026-10-28 16:14:03,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:14:03
[2026-10-28 16:14:03,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:14:04,061.061 INFO    ] Initializing speech engine...
[2026-10-28 16:14:04,077.077 INFO    ] 2026-10-28 16:14:04
[2026-10-28 16:14:04,360.360 INFO    ] 2026-10-28 16:14:04
[2026-10-28 16:14:04,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:14:04,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:14:04,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:14:04,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:14:04,950.950 INFO    ] time= 28/10/2026 16:14:04
[2026-10-28 16:14:04,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:14:04,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:14:05,132.132 INFO    ] No existing commands found in stream
[2026-10-28 16:14:10,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:14:10,166.166 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 16:14:13,882.882 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:14:13,885.885 INFO    ] Checking for system updates...
[2026-10-28 16:14:13,921.921 INFO    ] 200
[2026-10-28 16:14:13,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:14:13,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:14:13,985.985 INFO    ] No update needed
[2026-10-28 16:14:13,987.987 INFO    ] Checking for camera pi updates...
[2026-10-28 16:14:14,024.024 INFO    ] 200
[2026-10-28 16:14:14,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:14:14,071.071 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:14:14,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:14:14,160.160 INFO    ] No camera update needed
[2026-10-28 16:14:14,162.162 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:14:14,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:14:14,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:14:14,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:14:16,214.214 INFO    ] ================================================
[2026-10-28 16:14:16,230.230 INFO    ] Launching Daemon at Wed Oct 28 16:14:16 IST 2026
[2026-10-28 16:14:16,241.241 INFO    ] ================================================
[2026-10-28 16:14:16,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:14:16
[2026-10-28 16:14:17,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:14:17,833.833 INFO    ] Initializing speech engine...
[2026-10-28 16:14:17,847.847 INFO    ] 2026-10-28 16:14:17
[2026-10-28 16:14:18,159.159 INFO    ] 2026-10-28 16:14:18
[2026-10-28 16:14:18,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:14:18,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:14:18,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:14:18,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:14:18,846.846 INFO    ] time= 28/10/2026 16:14:18
[2026-10-28 16:14:18,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:14:18,937.937 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:14:19,076.076 INFO    ] No existing commands found in stream
[2026-10-28 16:14:24,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:14:24,109.109 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-28 16:14:25,247.247 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:14:25,250.250 INFO    ] Checking for system updates...
[2026-10-28 16:14:25,289.289 INFO    ] 200
[2026-10-28 16:14:25,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:14:25,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:14:25,350.350 INFO    ] No update needed
[2026-10-28 16:14:25,352.352 INFO    ] Checking for camera pi updates...
[2026-10-28 16:14:25,388.388 INFO    ] 200
[2026-10-28 16:14:25,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:14:25,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:14:25,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:14:25,517.517 INFO    ] No camera update needed
[2026-10-28 16:14:25,519.519 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:14:25,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:14:25,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:14:25,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:14:27,572.572 INFO    ] ================================================
[2026-10-28 16:14:27,588.588 INFO    ] Launching Daemon at Wed Oct 28 16:14:27 IST 2026
[2026-10-28 16:14:27,599.599 INFO    ] ================================================
[2026-10-28 16:14:28,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:14:28
[2026-10-28 16:14:28,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:14:29,038.038 INFO    ] Initializing speech engine...
[2026-10-28 16:14:29,047.047 INFO    ] 2026-10-28 16:14:29
[2026-10-28 16:14:29,293.293 INFO    ] 2026-10-28 16:14:29
[2026-10-28 16:14:29,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:14:29,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:14:29,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:14:29,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:14:29,846.846 INFO    ] time= 28/10/2026 16:14:29
[2026-10-28 16:14:29,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:14:29,886.886 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:14:29,998.998 INFO    ] No existing commands found in stream
[2026-10-28 16:14:35,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:14:35,026.026 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 16:14:39,180.180 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:14:39,182.182 INFO    ] Checking for system updates...
[2026-10-28 16:14:39,221.221 INFO    ] 200
[2026-10-28 16:14:39,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:14:39,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:14:39,279.279 INFO    ] No update needed
[2026-10-28 16:14:39,282.282 INFO    ] Checking for camera pi updates...
[2026-10-28 16:14:39,319.319 INFO    ] 200
[2026-10-28 16:14:39,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:14:39,369.369 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:14:39,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:14:39,440.440 INFO    ] No camera update needed
[2026-10-28 16:14:39,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:14:39,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:14:39,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:14:39,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:14:41,497.497 INFO    ] ================================================
[2026-10-28 16:14:41,513.513 INFO    ] Launching Daemon at Wed Oct 28 16:14:41 IST 2026
[2026-10-28 16:14:41,525.525 INFO    ] ================================================
[2026-10-28 16:14:42,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:14:42
[2026-10-28 16:14:42,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:14:42,962.962 INFO    ] Initializing speech engine...
[2026-10-28 16:14:42,971.971 INFO    ] 2026-10-28 16:14:42
[2026-10-28 16:14:43,219.219 INFO    ] 2026-10-28 16:14:43
[2026-10-28 16:14:43,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:14:43,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:14:43,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:14:43,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:14:43,785.785 INFO    ] time= 28/10/2026 16:14:43
[2026-10-28 16:14:43,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:14:43,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:14:43,937.937 INFO    ] No existing commands found in stream
[2026-10-28 16:14:48,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:14:48,957.957 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-28 16:14:49,596.596 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:14:49,598.598 INFO    ] Checking for system updates...
[2026-10-28 16:14:49,637.637 INFO    ] 200
[2026-10-28 16:14:49,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:14:49,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:14:49,693.693 INFO    ] No update needed
[2026-10-28 16:14:49,696.696 INFO    ] Checking for camera pi updates...
[2026-10-28 16:14:49,732.732 INFO    ] 200
[2026-10-28 16:14:49,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:14:49,775.775 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:14:49,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:14:49,859.859 INFO    ] No camera update needed
[2026-10-28 16:14:49,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:14:49,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:14:49,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:14:49,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:14:51,915.915 INFO    ] ================================================
[2026-10-28 16:14:51,930.930 INFO    ] Launching Daemon at Wed Oct 28 16:14:51 IST 2026
[2026-10-28 16:14:51,941.941 INFO    ] ================================================
[2026-10-28 16:14:52,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:14:52
[2026-10-28 16:14:53,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:14:53,383.383 INFO    ] Initializing speech engine...
[2026-10-28 16:14:53,392.392 INFO    ] 2026-10-28 16:14:53
[2026-10-28 16:14:53,651.651 INFO    ] 2026-10-28 16:14:53
[2026-10-28 16:14:53,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:14:53,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:14:53,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:14:54,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:14:54,211.211 INFO    ] time= 28/10/2026 16:14:54
[2026-10-28 16:14:54,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:14:54,247.247 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:14:54,363.363 INFO    ] No existing commands found in stream
[2026-10-28 16:14:59,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:14:59,391.391 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-28 16:15:00,475.475 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:15:00,478.478 INFO    ] Checking for system updates...
[2026-10-28 16:15:00,519.519 INFO    ] 200
[2026-10-28 16:15:00,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:15:00,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:15:00,587.587 INFO    ] No update needed
[2026-10-28 16:15:00,590.590 INFO    ] Checking for camera pi updates...
[2026-10-28 16:15:00,627.627 INFO    ] 200
[2026-10-28 16:15:00,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:15:00,671.671 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:15:00,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:15:00,757.757 INFO    ] No camera update needed
[2026-10-28 16:15:00,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:15:00,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:15:00,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:15:00,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:15:02,835.835 INFO    ] ================================================
[2026-10-28 16:15:02,855.855 INFO    ] Launching Daemon at Wed Oct 28 16:15:02 IST 2026
[2026-10-28 16:15:02,869.869 INFO    ] ================================================
[2026-10-28 16:15:03,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:15:03
[2026-10-28 16:15:04,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:15:04,423.423 INFO    ] Initializing speech engine...
[2026-10-28 16:15:04,429.429 INFO    ] 2026-10-28 16:15:04
[2026-10-28 16:15:04,683.683 INFO    ] 2026-10-28 16:15:04
[2026-10-28 16:15:04,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:15:04,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:15:04,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:15:05,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:15:05,259.259 INFO    ] time= 28/10/2026 16:15:05
[2026-10-28 16:15:05,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:15:05,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:15:05,456.456 INFO    ] No existing commands found in stream
[2026-10-28 16:15:10,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:15:10,489.489 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-28 16:15:12,114.114 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:15:12,117.117 INFO    ] Checking for system updates...
[2026-10-28 16:15:12,152.152 INFO    ] 200
[2026-10-28 16:15:12,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:15:12,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:15:12,219.219 INFO    ] No update needed
[2026-10-28 16:15:12,222.222 INFO    ] Checking for camera pi updates...
[2026-10-28 16:15:12,260.260 INFO    ] 200
[2026-10-28 16:15:12,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:15:12,307.307 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:15:12,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:15:12,394.394 INFO    ] No camera update needed
[2026-10-28 16:15:12,396.396 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:15:12,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:15:12,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:15:12,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:15:14,448.448 INFO    ] ================================================
[2026-10-28 16:15:14,463.463 INFO    ] Launching Daemon at Wed Oct 28 16:15:14 IST 2026
[2026-10-28 16:15:14,474.474 INFO    ] ================================================
[2026-10-28 16:15:15,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:15:15
[2026-10-28 16:15:15,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:15:16,041.041 INFO    ] Initializing speech engine...
[2026-10-28 16:15:16,061.061 INFO    ] 2026-10-28 16:15:16
[2026-10-28 16:15:16,321.321 INFO    ] 2026-10-28 16:15:16
[2026-10-28 16:15:16,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:15:16,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:15:16,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:15:16,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:15:16,820.820 INFO    ] time= 28/10/2026 16:15:16
[2026-10-28 16:15:16,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:15:16,893.893 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:15:17,048.048 INFO    ] No existing commands found in stream
[2026-10-28 16:15:22,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:15:22,068.068 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 16:15:22,894.894 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:15:22,897.897 INFO    ] Checking for system updates...
[2026-10-28 16:15:22,936.936 INFO    ] 200
[2026-10-28 16:15:22,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:15:22,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:15:23,000.000 INFO    ] No update needed
[2026-10-28 16:15:23,003.003 INFO    ] Checking for camera pi updates...
[2026-10-28 16:15:23,038.038 INFO    ] 200
[2026-10-28 16:15:23,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:15:23,082.082 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:15:23,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:15:23,169.169 INFO    ] No camera update needed
[2026-10-28 16:15:23,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:15:23,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:15:23,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:15:23,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:15:25,228.228 INFO    ] ================================================
[2026-10-28 16:15:25,242.242 INFO    ] Launching Daemon at Wed Oct 28 16:15:25 IST 2026
[2026-10-28 16:15:25,253.253 INFO    ] ================================================
[2026-10-28 16:15:25,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:15:25
[2026-10-28 16:15:26,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:15:26,649.649 INFO    ] Initializing speech engine...
[2026-10-28 16:15:26,664.664 INFO    ] 2026-10-28 16:15:26
[2026-10-28 16:15:26,931.931 INFO    ] 2026-10-28 16:15:26
[2026-10-28 16:15:26,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:15:27,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:15:27,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:15:27,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:15:27,499.499 INFO    ] time= 28/10/2026 16:15:27
[2026-10-28 16:15:27,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:15:27,541.541 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:15:27,678.678 INFO    ] No existing commands found in stream
[2026-10-28 16:15:32,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:15:32,708.708 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-28 16:15:34,439.439 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:15:34,442.442 INFO    ] Checking for system updates...
[2026-10-28 16:15:34,477.477 INFO    ] 200
[2026-10-28 16:15:34,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:15:34,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:15:34,535.535 INFO    ] No update needed
[2026-10-28 16:15:34,538.538 INFO    ] Checking for camera pi updates...
[2026-10-28 16:15:34,571.571 INFO    ] 200
[2026-10-28 16:15:34,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:15:34,613.613 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:15:34,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:15:34,704.704 INFO    ] No camera update needed
[2026-10-28 16:15:34,707.707 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:15:34,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:15:34,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:15:34,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:15:36,764.764 INFO    ] ================================================
[2026-10-28 16:15:36,779.779 INFO    ] Launching Daemon at Wed Oct 28 16:15:36 IST 2026
[2026-10-28 16:15:36,790.790 INFO    ] ================================================
[2026-10-28 16:15:37,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:15:37
[2026-10-28 16:15:37,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:15:38,232.232 INFO    ] Initializing speech engine...
[2026-10-28 16:15:38,242.242 INFO    ] 2026-10-28 16:15:38
[2026-10-28 16:15:38,508.508 INFO    ] 2026-10-28 16:15:38
[2026-10-28 16:15:38,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:15:38,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:15:38,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:15:39,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:15:39,241.241 INFO    ] time= 28/10/2026 16:15:39
[2026-10-28 16:15:39,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:15:39,341.341 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:15:39,492.492 INFO    ] No existing commands found in stream
[2026-10-28 16:15:44,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:15:44,509.509 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-28 16:15:48,524.524 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:15:48,527.527 INFO    ] Checking for system updates...
[2026-10-28 16:15:48,568.568 INFO    ] 200
[2026-10-28 16:15:48,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:15:48,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:15:48,637.637 INFO    ] No update needed
[2026-10-28 16:15:48,640.640 INFO    ] Checking for camera pi updates...
[2026-10-28 16:15:48,678.678 INFO    ] 200
[2026-10-28 16:15:48,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:15:48,731.731 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:15:48,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:15:48,806.806 INFO    ] No camera update needed
[2026-10-28 16:15:48,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:15:48,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:15:48,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:15:48,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:15:50,865.865 INFO    ] ================================================
[2026-10-28 16:15:50,880.880 INFO    ] Launching Daemon at Wed Oct 28 16:15:50 IST 2026
[2026-10-28 16:15:50,891.891 INFO    ] ================================================
[2026-10-28 16:15:51,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:15:51
[2026-10-28 16:15:52,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:15:52,294.294 INFO    ] Initializing speech engine...
[2026-10-28 16:15:52,317.317 INFO    ] 2026-10-28 16:15:52
[2026-10-28 16:15:52,572.572 INFO    ] 2026-10-28 16:15:52
[2026-10-28 16:15:52,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:15:52,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:15:52,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:15:53,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:15:53,132.132 INFO    ] time= 28/10/2026 16:15:53
[2026-10-28 16:15:53,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:15:53,185.185 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:15:53,329.329 INFO    ] No existing commands found in stream
[2026-10-28 16:15:58,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:15:58,359.359 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-28 16:16:00,799.799 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:16:00,802.802 INFO    ] Checking for system updates...
[2026-10-28 16:16:00,839.839 INFO    ] 200
[2026-10-28 16:16:00,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:16:00,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:16:00,899.899 INFO    ] No update needed
[2026-10-28 16:16:00,901.901 INFO    ] Checking for camera pi updates...
[2026-10-28 16:16:00,936.936 INFO    ] 200
[2026-10-28 16:16:00,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:16:00,984.984 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:16:01,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:16:01,174.174 INFO    ] No camera update needed
[2026-10-28 16:16:01,180.180 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:16:01,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:16:01,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:16:01,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:16:03,266.266 INFO    ] ================================================
[2026-10-28 16:16:03,281.281 INFO    ] Launching Daemon at Wed Oct 28 16:16:03 IST 2026
[2026-10-28 16:16:03,292.292 INFO    ] ================================================
[2026-10-28 16:16:03,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:16:03
[2026-10-28 16:16:04,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:16:04,908.908 INFO    ] Initializing speech engine...
[2026-10-28 16:16:04,921.921 INFO    ] 2026-10-28 16:16:04
[2026-10-28 16:16:05,185.185 INFO    ] 2026-10-28 16:16:05
[2026-10-28 16:16:05,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:16:05,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:16:05,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:16:05,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:16:05,798.798 INFO    ] time= 28/10/2026 16:16:05
[2026-10-28 16:16:05,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:16:05,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:16:05,968.968 INFO    ] No existing commands found in stream
[2026-10-28 16:16:10,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:16:10,993.993 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-28 16:16:12,843.843 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:16:12,846.846 INFO    ] Checking for system updates...
[2026-10-28 16:16:12,885.885 INFO    ] 200
[2026-10-28 16:16:12,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:16:12,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:16:12,942.942 INFO    ] No update needed
[2026-10-28 16:16:12,945.945 INFO    ] Checking for camera pi updates...
[2026-10-28 16:16:12,982.982 INFO    ] 200
[2026-10-28 16:16:12,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:16:13,025.025 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:16:13,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:16:13,106.106 INFO    ] No camera update needed
[2026-10-28 16:16:13,109.109 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:16:13,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:16:13,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:16:13,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:16:15,163.163 INFO    ] ================================================
[2026-10-28 16:16:15,178.178 INFO    ] Launching Daemon at Wed Oct 28 16:16:15 IST 2026
[2026-10-28 16:16:15,189.189 INFO    ] ================================================
[2026-10-28 16:16:15,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:16:15
[2026-10-28 16:16:16,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:16:16,746.746 INFO    ] Initializing speech engine...
[2026-10-28 16:16:16,755.755 INFO    ] 2026-10-28 16:16:16
[2026-10-28 16:16:17,028.028 INFO    ] 2026-10-28 16:16:17
[2026-10-28 16:16:17,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:16:17,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:16:17,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:16:17,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:16:17,581.581 INFO    ] time= 28/10/2026 16:16:17
[2026-10-28 16:16:17,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:16:17,618.618 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:16:17,750.750 INFO    ] No existing commands found in stream
[2026-10-28 16:16:22,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:16:22,787.787 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-28 16:16:25,245.245 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:16:25,248.248 INFO    ] Checking for system updates...
[2026-10-28 16:16:25,285.285 INFO    ] 200
[2026-10-28 16:16:25,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:16:25,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:16:25,350.350 INFO    ] No update needed
[2026-10-28 16:16:25,352.352 INFO    ] Checking for camera pi updates...
[2026-10-28 16:16:25,390.390 INFO    ] 200
[2026-10-28 16:16:25,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:16:25,434.434 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:16:25,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:16:25,539.539 INFO    ] No camera update needed
[2026-10-28 16:16:25,541.541 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:16:25,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:16:25,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:16:25,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:16:27,594.594 INFO    ] ================================================
[2026-10-28 16:16:27,610.610 INFO    ] Launching Daemon at Wed Oct 28 16:16:27 IST 2026
[2026-10-28 16:16:27,621.621 INFO    ] ================================================
[2026-10-28 16:16:28,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:16:28
[2026-10-28 16:16:28,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:16:29,030.030 INFO    ] Initializing speech engine...
[2026-10-28 16:16:29,036.036 INFO    ] 2026-10-28 16:16:29
[2026-10-28 16:16:29,336.336 INFO    ] 2026-10-28 16:16:29
[2026-10-28 16:16:29,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:16:29,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:16:29,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:16:29,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:16:29,864.864 INFO    ] time= 28/10/2026 16:16:29
[2026-10-28 16:16:29,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:16:29,991.991 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:16:30,129.129 INFO    ] No existing commands found in stream
[2026-10-28 16:16:35,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:16:35,154.154 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-28 16:16:37,563.563 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:16:37,566.566 INFO    ] Checking for system updates...
[2026-10-28 16:16:37,606.606 INFO    ] 200
[2026-10-28 16:16:37,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:16:37,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:16:37,666.666 INFO    ] No update needed
[2026-10-28 16:16:37,668.668 INFO    ] Checking for camera pi updates...
[2026-10-28 16:16:37,706.706 INFO    ] 200
[2026-10-28 16:16:37,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:16:37,754.754 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:16:37,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:16:37,845.845 INFO    ] No camera update needed
[2026-10-28 16:16:37,848.848 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:16:37,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:16:37,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:16:37,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:16:39,900.900 INFO    ] ================================================
[2026-10-28 16:16:39,915.915 INFO    ] Launching Daemon at Wed Oct 28 16:16:39 IST 2026
[2026-10-28 16:16:39,927.927 INFO    ] ================================================
[2026-10-28 16:16:40,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:16:40
[2026-10-28 16:16:41,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:16:41,327.327 INFO    ] Initializing speech engine...
[2026-10-28 16:16:41,350.350 INFO    ] 2026-10-28 16:16:41
[2026-10-28 16:16:41,602.602 INFO    ] 2026-10-28 16:16:41
[2026-10-28 16:16:41,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:16:41,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:16:41,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:16:42,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:16:42,173.173 INFO    ] time= 28/10/2026 16:16:42
[2026-10-28 16:16:42,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:16:42,197.197 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:16:42,317.317 INFO    ] No existing commands found in stream
[2026-10-28 16:16:47,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:16:47,342.342 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-28 16:16:48,994.994 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:16:48,997.997 INFO    ] Checking for system updates...
[2026-10-28 16:16:49,037.037 INFO    ] 200
[2026-10-28 16:16:49,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:16:49,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:16:49,101.101 INFO    ] No update needed
[2026-10-28 16:16:49,103.103 INFO    ] Checking for camera pi updates...
[2026-10-28 16:16:49,137.137 INFO    ] 200
[2026-10-28 16:16:49,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:16:49,184.184 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:16:49,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:16:49,285.285 INFO    ] No camera update needed
[2026-10-28 16:16:49,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:16:49,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:16:49,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:16:49,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:16:51,342.342 INFO    ] ================================================
[2026-10-28 16:16:51,358.358 INFO    ] Launching Daemon at Wed Oct 28 16:16:51 IST 2026
[2026-10-28 16:16:51,370.370 INFO    ] ================================================
[2026-10-28 16:16:51,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:16:51
[2026-10-28 16:16:52,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:16:52,835.835 INFO    ] Initializing speech engine...
[2026-10-28 16:16:52,843.843 INFO    ] 2026-10-28 16:16:52
[2026-10-28 16:16:53,099.099 INFO    ] 2026-10-28 16:16:53
[2026-10-28 16:16:53,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:16:53,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:16:53,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:16:53,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:16:53,672.672 INFO    ] time= 28/10/2026 16:16:53
[2026-10-28 16:16:53,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:16:53,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:16:53,833.833 INFO    ] No existing commands found in stream
[2026-10-28 16:16:58,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:16:58,856.856 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 16:17:03,338.338 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:17:03,340.340 INFO    ] Checking for system updates...
[2026-10-28 16:17:03,392.392 INFO    ] 200
[2026-10-28 16:17:03,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:17:03,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:17:03,466.466 INFO    ] No update needed
[2026-10-28 16:17:03,468.468 INFO    ] Checking for camera pi updates...
[2026-10-28 16:17:03,505.505 INFO    ] 200
[2026-10-28 16:17:03,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:17:03,548.548 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:17:03,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:17:03,630.630 INFO    ] No camera update needed
[2026-10-28 16:17:03,633.633 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:17:03,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:17:03,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:17:03,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:17:05,686.686 INFO    ] ================================================
[2026-10-28 16:17:05,702.702 INFO    ] Launching Daemon at Wed Oct 28 16:17:05 IST 2026
[2026-10-28 16:17:05,714.714 INFO    ] ================================================
[2026-10-28 16:17:06,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:17:06
[2026-10-28 16:17:07,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:17:07,503.503 INFO    ] Initializing speech engine...
[2026-10-28 16:17:07,517.517 INFO    ] 2026-10-28 16:17:07
[2026-10-28 16:17:07,833.833 INFO    ] 2026-10-28 16:17:07
[2026-10-28 16:17:07,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:17:08,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:17:08,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:17:08,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:17:08,518.518 INFO    ] time= 28/10/2026 16:17:08
[2026-10-28 16:17:08,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:17:08,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:17:08,769.769 INFO    ] No existing commands found in stream
[2026-10-28 16:17:13,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:17:13,791.791 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-28 16:17:16,814.814 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:17:16,817.817 INFO    ] Checking for system updates...
[2026-10-28 16:17:16,861.861 INFO    ] 200
[2026-10-28 16:17:16,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:17:16,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:17:16,946.946 INFO    ] No update needed
[2026-10-28 16:17:16,949.949 INFO    ] Checking for camera pi updates...
[2026-10-28 16:17:17,012.012 INFO    ] 200
[2026-10-28 16:17:17,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:17:17,061.061 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:17:17,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:17:17,157.157 INFO    ] No camera update needed
[2026-10-28 16:17:17,160.160 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:17:17,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:17:17,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:17:17,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:17:19,216.216 INFO    ] ================================================
[2026-10-28 16:17:19,232.232 INFO    ] Launching Daemon at Wed Oct 28 16:17:19 IST 2026
[2026-10-28 16:17:19,242.242 INFO    ] ================================================
[2026-10-28 16:17:19,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:17:19
[2026-10-28 16:17:20,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:17:20,702.702 INFO    ] Initializing speech engine...
[2026-10-28 16:17:20,709.709 INFO    ] 2026-10-28 16:17:20
[2026-10-28 16:17:20,969.969 INFO    ] 2026-10-28 16:17:20
[2026-10-28 16:17:21,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:17:21,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:17:21,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:17:21,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:17:21,557.557 INFO    ] time= 28/10/2026 16:17:21
[2026-10-28 16:17:21,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:17:21,571.571 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:17:21,721.721 INFO    ] No existing commands found in stream
[2026-10-28 16:17:26,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:17:26,760.760 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 16:17:29,998.998 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:17:30,000.000 INFO    ] Checking for system updates...
[2026-10-28 16:17:30,037.037 INFO    ] 200
[2026-10-28 16:17:30,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:17:30,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:17:30,094.094 INFO    ] No update needed
[2026-10-28 16:17:30,097.097 INFO    ] Checking for camera pi updates...
[2026-10-28 16:17:30,134.134 INFO    ] 200
[2026-10-28 16:17:30,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:17:30,181.181 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:17:30,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:17:30,266.266 INFO    ] No camera update needed
[2026-10-28 16:17:30,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:17:30,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:17:30,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:17:30,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:17:32,327.327 INFO    ] ================================================
[2026-10-28 16:17:32,343.343 INFO    ] Launching Daemon at Wed Oct 28 16:17:32 IST 2026
[2026-10-28 16:17:32,356.356 INFO    ] ================================================
[2026-10-28 16:17:32,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:17:32
[2026-10-28 16:17:33,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:17:33,815.815 INFO    ] Initializing speech engine...
[2026-10-28 16:17:33,824.824 INFO    ] 2026-10-28 16:17:33
[2026-10-28 16:17:34,112.112 INFO    ] 2026-10-28 16:17:34
[2026-10-28 16:17:34,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:17:34,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:17:34,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:17:34,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:17:34,661.661 INFO    ] time= 28/10/2026 16:17:34
[2026-10-28 16:17:34,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:17:34,710.710 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:17:34,818.818 INFO    ] No existing commands found in stream
[2026-10-28 16:17:39,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:17:39,838.838 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-28 16:17:44,089.089 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:17:44,092.092 INFO    ] Checking for system updates...
[2026-10-28 16:17:44,129.129 INFO    ] 200
[2026-10-28 16:17:44,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:17:44,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:17:44,195.195 INFO    ] No update needed
[2026-10-28 16:17:44,198.198 INFO    ] Checking for camera pi updates...
[2026-10-28 16:17:44,233.233 INFO    ] 200
[2026-10-28 16:17:44,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:17:44,282.282 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:17:44,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:17:44,375.375 INFO    ] No camera update needed
[2026-10-28 16:17:44,377.377 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:17:44,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:17:44,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:17:44,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:17:46,429.429 INFO    ] ================================================
[2026-10-28 16:17:46,444.444 INFO    ] Launching Daemon at Wed Oct 28 16:17:46 IST 2026
[2026-10-28 16:17:46,456.456 INFO    ] ================================================
[2026-10-28 16:17:47,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:17:47
[2026-10-28 16:17:47,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:17:48,068.068 INFO    ] Initializing speech engine...
[2026-10-28 16:17:48,081.081 INFO    ] 2026-10-28 16:17:48
[2026-10-28 16:17:48,368.368 INFO    ] 2026-10-28 16:17:48
[2026-10-28 16:17:48,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:17:48,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:17:48,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:17:48,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:17:48,926.926 INFO    ] time= 28/10/2026 16:17:48
[2026-10-28 16:17:48,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:17:48,963.963 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:17:49,077.077 INFO    ] No existing commands found in stream
[2026-10-28 16:17:54,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:17:54,093.093 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-28 16:17:57,725.725 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:17:57,728.728 INFO    ] Checking for system updates...
[2026-10-28 16:17:57,768.768 INFO    ] 200
[2026-10-28 16:17:57,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:17:57,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:17:57,831.831 INFO    ] No update needed
[2026-10-28 16:17:57,834.834 INFO    ] Checking for camera pi updates...
[2026-10-28 16:17:57,868.868 INFO    ] 200
[2026-10-28 16:17:57,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:17:57,910.910 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:17:57,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:17:57,969.969 INFO    ] No camera update needed
[2026-10-28 16:17:57,972.972 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:17:57,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:17:57,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:17:57,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:18:00,024.024 INFO    ] ================================================
[2026-10-28 16:18:00,039.039 INFO    ] Launching Daemon at Wed Oct 28 16:18:00 IST 2026
[2026-10-28 16:18:00,050.050 INFO    ] ================================================
[2026-10-28 16:18:00,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:18:00
[2026-10-28 16:18:01,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:18:01,741.741 INFO    ] Initializing speech engine...
[2026-10-28 16:18:01,750.750 INFO    ] 2026-10-28 16:18:01
[2026-10-28 16:18:02,140.140 INFO    ] 2026-10-28 16:18:02
[2026-10-28 16:18:02,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:18:02,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:18:02,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:18:02,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:18:02,725.725 INFO    ] time= 28/10/2026 16:18:02
[2026-10-28 16:18:02,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:18:02,755.755 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:18:02,904.904 INFO    ] No existing commands found in stream
[2026-10-28 16:18:07,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:18:07,937.937 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 16:18:09,618.618 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:18:09,621.621 INFO    ] Checking for system updates...
[2026-10-28 16:18:09,656.656 INFO    ] 200
[2026-10-28 16:18:09,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:18:09,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:18:09,722.722 INFO    ] No update needed
[2026-10-28 16:18:09,724.724 INFO    ] Checking for camera pi updates...
[2026-10-28 16:18:09,761.761 INFO    ] 200
[2026-10-28 16:18:09,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:18:09,807.807 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:18:09,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:18:09,918.918 INFO    ] No camera update needed
[2026-10-28 16:18:09,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:18:09,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:18:09,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:18:09,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:18:11,974.974 INFO    ] ================================================
[2026-10-28 16:18:11,989.989 INFO    ] Launching Daemon at Wed Oct 28 16:18:11 IST 2026
[2026-10-28 16:18:12,000.000 INFO    ] ================================================
[2026-10-28 16:18:12,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:18:12
[2026-10-28 16:18:13,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:18:13,557.557 INFO    ] Initializing speech engine...
[2026-10-28 16:18:13,566.566 INFO    ] 2026-10-28 16:18:13
[2026-10-28 16:18:13,812.812 INFO    ] 2026-10-28 16:18:13
[2026-10-28 16:18:13,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:18:14,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:18:14,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:18:14,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:18:14,365.365 INFO    ] time= 28/10/2026 16:18:14
[2026-10-28 16:18:14,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:18:14,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:18:14,521.521 INFO    ] No existing commands found in stream
[2026-10-28 16:18:19,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:18:19,542.542 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-28 16:18:20,475.475 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:18:20,478.478 INFO    ] Checking for system updates...
[2026-10-28 16:18:20,513.513 INFO    ] 200
[2026-10-28 16:18:20,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:18:20,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:18:20,575.575 INFO    ] No update needed
[2026-10-28 16:18:20,578.578 INFO    ] Checking for camera pi updates...
[2026-10-28 16:18:20,614.614 INFO    ] 200
[2026-10-28 16:18:20,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:18:20,661.661 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:18:20,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:18:20,765.765 INFO    ] No camera update needed
[2026-10-28 16:18:20,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:18:20,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:18:20,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:18:20,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:18:22,820.820 INFO    ] ================================================
[2026-10-28 16:18:22,836.836 INFO    ] Launching Daemon at Wed Oct 28 16:18:22 IST 2026
[2026-10-28 16:18:22,846.846 INFO    ] ================================================
[2026-10-28 16:18:23,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:18:23
[2026-10-28 16:18:24,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:18:24,249.249 INFO    ] Initializing speech engine...
[2026-10-28 16:18:24,257.257 INFO    ] 2026-10-28 16:18:24
[2026-10-28 16:18:24,553.553 INFO    ] 2026-10-28 16:18:24
[2026-10-28 16:18:24,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:18:24,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:18:24,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:18:25,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:18:25,176.176 INFO    ] time= 28/10/2026 16:18:25
[2026-10-28 16:18:25,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:18:25,199.199 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:18:25,319.319 INFO    ] No existing commands found in stream
[2026-10-28 16:18:30,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:18:30,352.352 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 16:18:31,777.777 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:18:31,780.780 INFO    ] Checking for system updates...
[2026-10-28 16:18:31,821.821 INFO    ] 200
[2026-10-28 16:18:31,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:18:31,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:18:31,891.891 INFO    ] No update needed
[2026-10-28 16:18:31,894.894 INFO    ] Checking for camera pi updates...
[2026-10-28 16:18:31,930.930 INFO    ] 200
[2026-10-28 16:18:31,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:18:31,981.981 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:18:32,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:18:32,041.041 INFO    ] No camera update needed
[2026-10-28 16:18:32,044.044 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:18:32,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:18:32,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:18:32,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:18:34,097.097 INFO    ] ================================================
[2026-10-28 16:18:34,112.112 INFO    ] Launching Daemon at Wed Oct 28 16:18:34 IST 2026
[2026-10-28 16:18:34,123.123 INFO    ] ================================================
[2026-10-28 16:18:34,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:18:34
[2026-10-28 16:18:35,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:18:35,700.700 INFO    ] Initializing speech engine...
[2026-10-28 16:18:35,708.708 INFO    ] 2026-10-28 16:18:35
[2026-10-28 16:18:36,027.027 INFO    ] 2026-10-28 16:18:35
[2026-10-28 16:18:36,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:18:36,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:18:36,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:18:36,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:18:36,545.545 INFO    ] time= 28/10/2026 16:18:36
[2026-10-28 16:18:36,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:18:36,584.584 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:18:36,729.729 INFO    ] No existing commands found in stream
[2026-10-28 16:18:41,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:18:41,764.764 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-28 16:18:42,768.768 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:18:42,771.771 INFO    ] Checking for system updates...
[2026-10-28 16:18:42,819.819 INFO    ] 200
[2026-10-28 16:18:42,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:18:42,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:18:42,887.887 INFO    ] No update needed
[2026-10-28 16:18:42,890.890 INFO    ] Checking for camera pi updates...
[2026-10-28 16:18:42,931.931 INFO    ] 200
[2026-10-28 16:18:42,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:18:42,983.983 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:18:43,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:18:43,075.075 INFO    ] No camera update needed
[2026-10-28 16:18:43,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:18:43,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:18:43,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:18:43,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:18:45,141.141 INFO    ] ================================================
[2026-10-28 16:18:45,159.159 INFO    ] Launching Daemon at Wed Oct 28 16:18:45 IST 2026
[2026-10-28 16:18:45,175.175 INFO    ] ================================================
[2026-10-28 16:18:45,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:18:45
[2026-10-28 16:18:46,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:18:46,616.616 INFO    ] Initializing speech engine...
[2026-10-28 16:18:46,631.631 INFO    ] 2026-10-28 16:18:46
[2026-10-28 16:18:46,911.911 INFO    ] 2026-10-28 16:18:46
[2026-10-28 16:18:46,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:18:47,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:18:47,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:18:47,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:18:47,433.433 INFO    ] time= 28/10/2026 16:18:47
[2026-10-28 16:18:47,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:18:47,545.545 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:18:47,629.629 INFO    ] No existing commands found in stream
[2026-10-28 16:18:52,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:18:52,641.641 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 16:18:55,137.137 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:18:55,140.140 INFO    ] Checking for system updates...
[2026-10-28 16:18:55,176.176 INFO    ] 200
[2026-10-28 16:18:55,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:18:55,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:18:55,239.239 INFO    ] No update needed
[2026-10-28 16:18:55,241.241 INFO    ] Checking for camera pi updates...
[2026-10-28 16:18:55,278.278 INFO    ] 200
[2026-10-28 16:18:55,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:18:55,325.325 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:18:55,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:18:55,410.410 INFO    ] No camera update needed
[2026-10-28 16:18:55,412.412 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:18:55,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:18:55,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:18:55,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:18:57,465.465 INFO    ] ================================================
[2026-10-28 16:18:57,480.480 INFO    ] Launching Daemon at Wed Oct 28 16:18:57 IST 2026
[2026-10-28 16:18:57,491.491 INFO    ] ================================================
[2026-10-28 16:18:58,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:18:58
[2026-10-28 16:18:58,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:18:58,906.906 INFO    ] Initializing speech engine...
[2026-10-28 16:18:58,915.915 INFO    ] 2026-10-28 16:18:58
[2026-10-28 16:18:59,160.160 INFO    ] 2026-10-28 16:18:59
[2026-10-28 16:18:59,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:18:59,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:18:59,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:18:59,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:18:59,712.712 INFO    ] time= 28/10/2026 16:18:59
[2026-10-28 16:18:59,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:18:59,736.736 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:18:59,886.886 INFO    ] No existing commands found in stream
[2026-10-28 16:19:04,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:19:04,914.914 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-28 16:19:09,474.474 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:19:09,477.477 INFO    ] Checking for system updates...
[2026-10-28 16:19:09,516.516 INFO    ] 200
[2026-10-28 16:19:09,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:19:09,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:19:09,574.574 INFO    ] No update needed
[2026-10-28 16:19:09,577.577 INFO    ] Checking for camera pi updates...
[2026-10-28 16:19:09,611.611 INFO    ] 200
[2026-10-28 16:19:09,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:19:09,673.673 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:19:09,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:19:09,729.729 INFO    ] No camera update needed
[2026-10-28 16:19:09,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:19:09,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:19:09,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:19:09,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:19:11,786.786 INFO    ] ================================================
[2026-10-28 16:19:11,800.800 INFO    ] Launching Daemon at Wed Oct 28 16:19:11 IST 2026
[2026-10-28 16:19:11,811.811 INFO    ] ================================================
[2026-10-28 16:19:12,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:19:12
[2026-10-28 16:19:12,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:19:13,268.268 INFO    ] Initializing speech engine...
[2026-10-28 16:19:13,280.280 INFO    ] 2026-10-28 16:19:13
[2026-10-28 16:19:13,538.538 INFO    ] 2026-10-28 16:19:13
[2026-10-28 16:19:13,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:19:13,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:19:13,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:19:14,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:19:14,086.086 INFO    ] time= 28/10/2026 16:19:14
[2026-10-28 16:19:14,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:19:14,133.133 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:19:14,240.240 INFO    ] No existing commands found in stream
[2026-10-28 16:19:19,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:19:19,267.267 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-28 16:19:23,861.861 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:19:23,864.864 INFO    ] Checking for system updates...
[2026-10-28 16:19:23,900.900 INFO    ] 200
[2026-10-28 16:19:23,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:19:23,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:19:23,967.967 INFO    ] No update needed
[2026-10-28 16:19:23,969.969 INFO    ] Checking for camera pi updates...
[2026-10-28 16:19:24,007.007 INFO    ] 200
[2026-10-28 16:19:24,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:19:24,054.054 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:19:24,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:19:24,136.136 INFO    ] No camera update needed
[2026-10-28 16:19:24,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:19:24,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:19:24,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:19:24,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:19:26,194.194 INFO    ] ================================================
[2026-10-28 16:19:26,209.209 INFO    ] Launching Daemon at Wed Oct 28 16:19:26 IST 2026
[2026-10-28 16:19:26,220.220 INFO    ] ================================================
[2026-10-28 16:19:26,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:19:26
[2026-10-28 16:19:27,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:19:27,663.663 INFO    ] Initializing speech engine...
[2026-10-28 16:19:27,672.672 INFO    ] 2026-10-28 16:19:27
[2026-10-28 16:19:27,931.931 INFO    ] 2026-10-28 16:19:27
[2026-10-28 16:19:27,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:19:30,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:19:30,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:19:31,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:19:31,327.327 INFO    ] time= 28/10/2026 16:19:31
[2026-10-28 16:19:31,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:19:31,332.332 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:19:31,405.405 INFO    ] No existing commands found in stream
[2026-10-28 16:19:36,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:19:36,417.417 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-28 16:19:40,583.583 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:19:40,585.585 INFO    ] Checking for system updates...
[2026-10-28 16:19:40,621.621 INFO    ] 200
[2026-10-28 16:19:40,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:19:40,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:19:40,685.685 INFO    ] No update needed
[2026-10-28 16:19:40,687.687 INFO    ] Checking for camera pi updates...
[2026-10-28 16:19:40,724.724 INFO    ] 200
[2026-10-28 16:19:40,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:19:40,767.767 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:19:40,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:19:40,847.847 INFO    ] No camera update needed
[2026-10-28 16:19:40,849.849 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:19:40,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:19:40,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:19:40,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:19:42,904.904 INFO    ] ================================================
[2026-10-28 16:19:42,926.926 INFO    ] Launching Daemon at Wed Oct 28 16:19:42 IST 2026
[2026-10-28 16:19:42,937.937 INFO    ] ================================================
[2026-10-28 16:19:43,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:19:43
[2026-10-28 16:19:44,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:19:44,365.365 INFO    ] Initializing speech engine...
[2026-10-28 16:19:44,381.381 INFO    ] 2026-10-28 16:19:44
[2026-10-28 16:19:44,667.667 INFO    ] 2026-10-28 16:19:44
[2026-10-28 16:19:44,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:19:44,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:19:45,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:19:45,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:19:45,220.220 INFO    ] time= 28/10/2026 16:19:45
[2026-10-28 16:19:45,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:19:45,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:19:45,438.438 INFO    ] No existing commands found in stream
[2026-10-28 16:19:50,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:19:50,458.458 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 16:19:51,016.016 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:19:51,018.018 INFO    ] Checking for system updates...
[2026-10-28 16:19:51,054.054 INFO    ] 200
[2026-10-28 16:19:51,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:19:51,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:19:51,110.110 INFO    ] No update needed
[2026-10-28 16:19:51,113.113 INFO    ] Checking for camera pi updates...
[2026-10-28 16:19:51,146.146 INFO    ] 200
[2026-10-28 16:19:51,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:19:51,193.193 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:19:51,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:19:51,295.295 INFO    ] No camera update needed
[2026-10-28 16:19:51,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:19:51,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:19:51,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:19:51,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:19:53,353.353 INFO    ] ================================================
[2026-10-28 16:19:53,368.368 INFO    ] Launching Daemon at Wed Oct 28 16:19:53 IST 2026
[2026-10-28 16:19:53,380.380 INFO    ] ================================================
[2026-10-28 16:19:53,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:19:53
[2026-10-28 16:19:54,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:19:54,815.815 INFO    ] Initializing speech engine...
[2026-10-28 16:19:54,824.824 INFO    ] 2026-10-28 16:19:54
[2026-10-28 16:19:55,119.119 INFO    ] 2026-10-28 16:19:55
[2026-10-28 16:19:55,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:19:55,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:19:55,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:19:55,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:19:55,745.745 INFO    ] time= 28/10/2026 16:19:55
[2026-10-28 16:19:55,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:19:55,777.777 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:19:55,911.911 INFO    ] No existing commands found in stream
[2026-10-28 16:20:00,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:20:00,939.939 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 16:20:08,676.676 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:20:08,679.679 INFO    ] Checking for system updates...
[2026-10-28 16:20:08,720.720 INFO    ] 200
[2026-10-28 16:20:08,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:20:08,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:20:08,798.798 INFO    ] No update needed
[2026-10-28 16:20:08,801.801 INFO    ] Checking for camera pi updates...
[2026-10-28 16:20:08,834.834 INFO    ] 200
[2026-10-28 16:20:08,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:20:08,882.882 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:20:09,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:20:09,072.072 INFO    ] No camera update needed
[2026-10-28 16:20:09,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:20:09,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:20:09,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:20:09,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:20:11,129.129 INFO    ] ================================================
[2026-10-28 16:20:11,144.144 INFO    ] Launching Daemon at Wed Oct 28 16:20:11 IST 2026
[2026-10-28 16:20:11,155.155 INFO    ] ================================================
[2026-10-28 16:20:12,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:20:11
[2026-10-28 16:20:13,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:20:13,644.644 INFO    ] Initializing speech engine...
[2026-10-28 16:20:13,655.655 INFO    ] 2026-10-28 16:20:13
[2026-10-28 16:20:13,970.970 INFO    ] 2026-10-28 16:20:13
[2026-10-28 16:20:14,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:20:15,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:20:15,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:20:15,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:20:15,328.328 INFO    ] time= 28/10/2026 16:20:15
[2026-10-28 16:20:15,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:20:15,340.340 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:20:15,460.460 INFO    ] No existing commands found in stream
[2026-10-28 16:20:20,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:20:20,476.476 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 16:20:21,185.185 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:20:21,188.188 INFO    ] Checking for system updates...
[2026-10-28 16:20:21,226.226 INFO    ] 200
[2026-10-28 16:20:21,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:20:21,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:20:21,295.295 INFO    ] No update needed
[2026-10-28 16:20:21,298.298 INFO    ] Checking for camera pi updates...
[2026-10-28 16:20:21,333.333 INFO    ] 200
[2026-10-28 16:20:21,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:20:21,378.378 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:20:21,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:20:21,450.450 INFO    ] No camera update needed
[2026-10-28 16:20:21,453.453 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:20:21,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:20:21,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:20:21,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:20:23,511.511 INFO    ] ================================================
[2026-10-28 16:20:23,527.527 INFO    ] Launching Daemon at Wed Oct 28 16:20:23 IST 2026
[2026-10-28 16:20:23,537.537 INFO    ] ================================================
[2026-10-28 16:20:24,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:20:24
[2026-10-28 16:20:24,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:20:24,991.991 INFO    ] Initializing speech engine...
[2026-10-28 16:20:26,162.162 INFO    ] 2026-10-28 16:20:26
[2026-10-28 16:20:26,534.534 INFO    ] 2026-10-28 16:20:26
[2026-10-28 16:20:26,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:20:26,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:20:26,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:20:26,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:20:26,954.954 INFO    ] time= 28/10/2026 16:20:26
[2026-10-28 16:20:27,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:20:27,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:20:27,145.145 INFO    ] No existing commands found in stream
[2026-10-28 16:20:32,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:20:32,158.158 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-28 16:20:36,380.380 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:20:36,383.383 INFO    ] Checking for system updates...
[2026-10-28 16:20:36,424.424 INFO    ] 200
[2026-10-28 16:20:36,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:20:36,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:20:36,481.481 INFO    ] No update needed
[2026-10-28 16:20:36,484.484 INFO    ] Checking for camera pi updates...
[2026-10-28 16:20:36,517.517 INFO    ] 200
[2026-10-28 16:20:36,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:20:36,567.567 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:20:36,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:20:36,657.657 INFO    ] No camera update needed
[2026-10-28 16:20:36,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:20:36,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:20:36,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:20:36,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:20:38,715.715 INFO    ] ================================================
[2026-10-28 16:20:38,730.730 INFO    ] Launching Daemon at Wed Oct 28 16:20:38 IST 2026
[2026-10-28 16:20:38,740.740 INFO    ] ================================================
[2026-10-28 16:20:39,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:20:39
[2026-10-28 16:20:39,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:20:40,133.133 INFO    ] Initializing speech engine...
[2026-10-28 16:20:40,141.141 INFO    ] 2026-10-28 16:20:40
[2026-10-28 16:20:40,415.415 INFO    ] 2026-10-28 16:20:40
[2026-10-28 16:20:40,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:20:40,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:20:40,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:20:40,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:20:40,983.983 INFO    ] time= 28/10/2026 16:20:40
[2026-10-28 16:20:40,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:20:41,010.010 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:20:41,143.143 INFO    ] No existing commands found in stream
[2026-10-28 16:20:46,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:20:46,213.213 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-28 16:20:47,557.557 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:20:47,560.560 INFO    ] Checking for system updates...
[2026-10-28 16:20:47,601.601 INFO    ] 200
[2026-10-28 16:20:47,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:20:47,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:20:47,667.667 INFO    ] No update needed
[2026-10-28 16:20:47,670.670 INFO    ] Checking for camera pi updates...
[2026-10-28 16:20:47,708.708 INFO    ] 200
[2026-10-28 16:20:47,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:20:47,750.750 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:20:47,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:20:47,836.836 INFO    ] No camera update needed
[2026-10-28 16:20:47,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:20:47,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:20:47,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:20:47,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:20:49,891.891 INFO    ] ================================================
[2026-10-28 16:20:49,906.906 INFO    ] Launching Daemon at Wed Oct 28 16:20:49 IST 2026
[2026-10-28 16:20:49,916.916 INFO    ] ================================================
[2026-10-28 16:20:50,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:20:50
[2026-10-28 16:20:51,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:20:51,337.337 INFO    ] Initializing speech engine...
[2026-10-28 16:20:51,346.346 INFO    ] 2026-10-28 16:20:51
[2026-10-28 16:20:51,592.592 INFO    ] 2026-10-28 16:20:51
[2026-10-28 16:20:51,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:20:51,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:20:51,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:20:52,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:20:52,143.143 INFO    ] time= 28/10/2026 16:20:52
[2026-10-28 16:20:52,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:20:52,172.172 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:20:52,303.303 INFO    ] No existing commands found in stream
[2026-10-28 16:20:57,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:20:57,319.319 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-28 16:21:00,087.087 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:21:00,089.089 INFO    ] Checking for system updates...
[2026-10-28 16:21:00,124.124 INFO    ] 200
[2026-10-28 16:21:00,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:21:00,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:21:00,181.181 INFO    ] No update needed
[2026-10-28 16:21:00,184.184 INFO    ] Checking for camera pi updates...
[2026-10-28 16:21:00,218.218 INFO    ] 200
[2026-10-28 16:21:00,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:21:00,261.261 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:21:00,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:21:00,347.347 INFO    ] No camera update needed
[2026-10-28 16:21:00,349.349 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:21:00,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:21:00,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:21:00,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:21:02,422.422 INFO    ] ================================================
[2026-10-28 16:21:02,444.444 INFO    ] Launching Daemon at Wed Oct 28 16:21:02 IST 2026
[2026-10-28 16:21:02,461.461 INFO    ] ================================================
[2026-10-28 16:21:03,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:21:03
[2026-10-28 16:21:03,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:21:04,068.068 INFO    ] Initializing speech engine...
[2026-10-28 16:21:04,075.075 INFO    ] 2026-10-28 16:21:04
[2026-10-28 16:21:04,342.342 INFO    ] 2026-10-28 16:21:04
[2026-10-28 16:21:04,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:21:04,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:21:04,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:21:04,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:21:04,891.891 INFO    ] time= 28/10/2026 16:21:04
[2026-10-28 16:21:04,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:21:04,938.938 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:21:05,059.059 INFO    ] No existing commands found in stream
[2026-10-28 16:21:10,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:21:10,087.087 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-28 16:21:13,259.259 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:21:13,262.262 INFO    ] Checking for system updates...
[2026-10-28 16:21:13,301.301 INFO    ] 200
[2026-10-28 16:21:13,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:21:13,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:21:13,359.359 INFO    ] No update needed
[2026-10-28 16:21:13,361.361 INFO    ] Checking for camera pi updates...
[2026-10-28 16:21:13,398.398 INFO    ] 200
[2026-10-28 16:21:13,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:21:13,445.445 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:21:13,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:21:13,553.553 INFO    ] No camera update needed
[2026-10-28 16:21:13,556.556 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:21:13,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:21:13,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:21:13,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:21:15,610.610 INFO    ] ================================================
[2026-10-28 16:21:15,625.625 INFO    ] Launching Daemon at Wed Oct 28 16:21:15 IST 2026
[2026-10-28 16:21:15,635.635 INFO    ] ================================================
[2026-10-28 16:21:16,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:21:16
[2026-10-28 16:21:16,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:21:17,122.122 INFO    ] Initializing speech engine...
[2026-10-28 16:21:17,130.130 INFO    ] 2026-10-28 16:21:17
[2026-10-28 16:21:17,380.380 INFO    ] 2026-10-28 16:21:17
[2026-10-28 16:21:17,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:21:17,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:21:17,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:21:17,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:21:17,960.960 INFO    ] time= 28/10/2026 16:21:17
[2026-10-28 16:21:17,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:21:17,986.986 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:21:18,116.116 INFO    ] No existing commands found in stream
[2026-10-28 16:21:23,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:21:23,152.152 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-28 16:21:24,966.966 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:21:24,968.968 INFO    ] Checking for system updates...
[2026-10-28 16:21:25,003.003 INFO    ] 200
[2026-10-28 16:21:25,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:21:25,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:21:25,065.065 INFO    ] No update needed
[2026-10-28 16:21:25,068.068 INFO    ] Checking for camera pi updates...
[2026-10-28 16:21:25,104.104 INFO    ] 200
[2026-10-28 16:21:25,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:21:25,148.148 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:21:25,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:21:25,231.231 INFO    ] No camera update needed
[2026-10-28 16:21:25,234.234 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:21:25,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:21:25,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:21:25,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:21:27,286.286 INFO    ] ================================================
[2026-10-28 16:21:27,302.302 INFO    ] Launching Daemon at Wed Oct 28 16:21:27 IST 2026
[2026-10-28 16:21:27,312.312 INFO    ] ================================================
[2026-10-28 16:21:27,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:21:27
[2026-10-28 16:21:28,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:21:28,716.716 INFO    ] Initializing speech engine...
[2026-10-28 16:21:28,737.737 INFO    ] 2026-10-28 16:21:28
[2026-10-28 16:21:28,998.998 INFO    ] 2026-10-28 16:21:28
[2026-10-28 16:21:29,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:21:29,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:21:29,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:21:29,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:21:29,566.566 INFO    ] time= 28/10/2026 16:21:29
[2026-10-28 16:21:29,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:21:29,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:21:29,725.725 INFO    ] No existing commands found in stream
[2026-10-28 16:21:34,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:21:34,741.741 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-28 16:21:36,204.204 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:21:36,206.206 INFO    ] Checking for system updates...
[2026-10-28 16:21:36,246.246 INFO    ] 200
[2026-10-28 16:21:36,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:21:36,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:21:36,303.303 INFO    ] No update needed
[2026-10-28 16:21:36,306.306 INFO    ] Checking for camera pi updates...
[2026-10-28 16:21:36,339.339 INFO    ] 200
[2026-10-28 16:21:36,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:21:36,387.387 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:21:36,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:21:36,482.482 INFO    ] No camera update needed
[2026-10-28 16:21:36,484.484 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:21:36,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:21:36,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:21:36,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:21:38,537.537 INFO    ] ================================================
[2026-10-28 16:21:38,552.552 INFO    ] Launching Daemon at Wed Oct 28 16:21:38 IST 2026
[2026-10-28 16:21:38,562.562 INFO    ] ================================================
[2026-10-28 16:21:39,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:21:39
[2026-10-28 16:21:39,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:21:40,189.189 INFO    ] Initializing speech engine...
[2026-10-28 16:21:40,203.203 INFO    ] 2026-10-28 16:21:40
[2026-10-28 16:21:40,482.482 INFO    ] 2026-10-28 16:21:40
[2026-10-28 16:21:40,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:21:40,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:21:40,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:21:41,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:21:41,018.018 INFO    ] time= 28/10/2026 16:21:41
[2026-10-28 16:21:41,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:21:41,067.067 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:21:41,196.196 INFO    ] No existing commands found in stream
[2026-10-28 16:21:46,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:21:46,230.230 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-28 16:21:47,064.064 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:21:47,067.067 INFO    ] Checking for system updates...
[2026-10-28 16:21:47,103.103 INFO    ] 200
[2026-10-28 16:21:47,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:21:47,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:21:47,164.164 INFO    ] No update needed
[2026-10-28 16:21:47,166.166 INFO    ] Checking for camera pi updates...
[2026-10-28 16:21:47,201.201 INFO    ] 200
[2026-10-28 16:21:47,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:21:47,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:21:47,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:21:47,316.316 INFO    ] No camera update needed
[2026-10-28 16:21:47,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:21:47,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:21:47,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:21:47,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:21:49,375.375 INFO    ] ================================================
[2026-10-28 16:21:49,390.390 INFO    ] Launching Daemon at Wed Oct 28 16:21:49 IST 2026
[2026-10-28 16:21:49,400.400 INFO    ] ================================================
[2026-10-28 16:21:49,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:21:49
[2026-10-28 16:21:50,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:21:50,852.852 INFO    ] Initializing speech engine...
[2026-10-28 16:21:50,859.859 INFO    ] 2026-10-28 16:21:50
[2026-10-28 16:21:51,132.132 INFO    ] 2026-10-28 16:21:51
[2026-10-28 16:21:51,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:21:51,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:21:51,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:21:51,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:21:51,808.808 INFO    ] time= 28/10/2026 16:21:51
[2026-10-28 16:21:51,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:21:51,911.911 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:21:52,059.059 INFO    ] No existing commands found in stream
[2026-10-28 16:21:57,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:21:57,075.075 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 16:21:57,796.796 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:21:57,799.799 INFO    ] Checking for system updates...
[2026-10-28 16:21:57,840.840 INFO    ] 200
[2026-10-28 16:21:57,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:21:57,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:21:57,902.902 INFO    ] No update needed
[2026-10-28 16:21:57,905.905 INFO    ] Checking for camera pi updates...
[2026-10-28 16:21:57,943.943 INFO    ] 200
[2026-10-28 16:21:57,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:21:57,995.995 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:21:58,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:21:58,078.078 INFO    ] No camera update needed
[2026-10-28 16:21:58,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:21:58,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:21:58,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:21:58,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:22:00,135.135 INFO    ] ================================================
[2026-10-28 16:22:00,150.150 INFO    ] Launching Daemon at Wed Oct 28 16:22:00 IST 2026
[2026-10-28 16:22:00,161.161 INFO    ] ================================================
[2026-10-28 16:22:00,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:22:00
[2026-10-28 16:22:01,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:22:01,821.821 INFO    ] Initializing speech engine...
[2026-10-28 16:22:01,831.831 INFO    ] 2026-10-28 16:22:01
[2026-10-28 16:22:02,161.161 INFO    ] 2026-10-28 16:22:02
[2026-10-28 16:22:02,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:22:02,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:22:02,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:22:02,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:22:02,754.754 INFO    ] time= 28/10/2026 16:22:02
[2026-10-28 16:22:02,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:22:02,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:22:02,952.952 INFO    ] No existing commands found in stream
[2026-10-28 16:22:07,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:22:07,986.986 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-28 16:22:09,846.846 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:22:09,849.849 INFO    ] Checking for system updates...
[2026-10-28 16:22:09,890.890 INFO    ] 200
[2026-10-28 16:22:09,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:22:09,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:22:09,951.951 INFO    ] No update needed
[2026-10-28 16:22:09,954.954 INFO    ] Checking for camera pi updates...
[2026-10-28 16:22:09,993.993 INFO    ] 200
[2026-10-28 16:22:09,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:22:10,041.041 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:22:10,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:22:10,141.141 INFO    ] No camera update needed
[2026-10-28 16:22:10,144.144 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:22:10,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:22:10,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:22:10,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:22:12,202.202 INFO    ] ================================================
[2026-10-28 16:22:12,217.217 INFO    ] Launching Daemon at Wed Oct 28 16:22:12 IST 2026
[2026-10-28 16:22:12,228.228 INFO    ] ================================================
[2026-10-28 16:22:12,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:22:12
[2026-10-28 16:22:13,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:22:13,637.637 INFO    ] Initializing speech engine...
[2026-10-28 16:22:13,643.643 INFO    ] 2026-10-28 16:22:13
[2026-10-28 16:22:13,940.940 INFO    ] 2026-10-28 16:22:13
[2026-10-28 16:22:13,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:22:14,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:22:14,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:22:14,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:22:14,502.502 INFO    ] time= 28/10/2026 16:22:14
[2026-10-28 16:22:14,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:22:14,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:22:14,756.756 INFO    ] No existing commands found in stream
[2026-10-28 16:22:19,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:22:19,774.774 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-28 16:22:21,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:22:21,369.369 INFO    ] Checking for system updates...
[2026-10-28 16:22:21,405.405 INFO    ] 200
[2026-10-28 16:22:21,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:22:21,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:22:21,463.463 INFO    ] No update needed
[2026-10-28 16:22:21,466.466 INFO    ] Checking for camera pi updates...
[2026-10-28 16:22:21,503.503 INFO    ] 200
[2026-10-28 16:22:21,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:22:21,546.546 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:22:21,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:22:21,726.726 INFO    ] No camera update needed
[2026-10-28 16:22:21,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:22:21,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:22:21,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:22:21,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:22:23,781.781 INFO    ] ================================================
[2026-10-28 16:22:23,796.796 INFO    ] Launching Daemon at Wed Oct 28 16:22:23 IST 2026
[2026-10-28 16:22:23,807.807 INFO    ] ================================================
[2026-10-28 16:22:24,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:22:24
[2026-10-28 16:22:24,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:22:25,207.207 INFO    ] Initializing speech engine...
[2026-10-28 16:22:25,230.230 INFO    ] 2026-10-28 16:22:25
[2026-10-28 16:22:25,484.484 INFO    ] 2026-10-28 16:22:25
[2026-10-28 16:22:25,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:22:25,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:22:25,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:22:26,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:22:26,052.052 INFO    ] time= 28/10/2026 16:22:26
[2026-10-28 16:22:26,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:22:26,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:22:26,199.199 INFO    ] No existing commands found in stream
[2026-10-28 16:22:31,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:22:31,222.222 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-28 16:22:35,660.660 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:22:35,663.663 INFO    ] Checking for system updates...
[2026-10-28 16:22:35,702.702 INFO    ] 200
[2026-10-28 16:22:35,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:22:35,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:22:35,762.762 INFO    ] No update needed
[2026-10-28 16:22:35,764.764 INFO    ] Checking for camera pi updates...
[2026-10-28 16:22:35,798.798 INFO    ] 200
[2026-10-28 16:22:35,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:22:35,846.846 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:22:35,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:22:35,939.939 INFO    ] No camera update needed
[2026-10-28 16:22:35,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:22:35,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:22:35,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:22:35,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:22:37,993.993 INFO    ] ================================================
[2026-10-28 16:22:38,008.008 INFO    ] Launching Daemon at Wed Oct 28 16:22:38 IST 2026
[2026-10-28 16:22:38,019.019 INFO    ] ================================================
[2026-10-28 16:22:38,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:22:38
[2026-10-28 16:22:39,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:22:39,422.422 INFO    ] Initializing speech engine...
[2026-10-28 16:22:39,439.439 INFO    ] 2026-10-28 16:22:39
[2026-10-28 16:22:39,691.691 INFO    ] 2026-10-28 16:22:39
[2026-10-28 16:22:39,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:22:39,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:22:39,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:22:40,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:22:40,245.245 INFO    ] time= 28/10/2026 16:22:40
[2026-10-28 16:22:40,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:22:40,291.291 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:22:40,397.397 INFO    ] No existing commands found in stream
[2026-10-28 16:22:45,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:22:45,416.416 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-28 16:22:48,491.491 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:22:48,494.494 INFO    ] Checking for system updates...
[2026-10-28 16:22:48,529.529 INFO    ] 200
[2026-10-28 16:22:48,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:22:48,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:22:48,586.586 INFO    ] No update needed
[2026-10-28 16:22:48,588.588 INFO    ] Checking for camera pi updates...
[2026-10-28 16:22:48,622.622 INFO    ] 200
[2026-10-28 16:22:48,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:22:48,665.665 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:22:48,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:22:48,773.773 INFO    ] No camera update needed
[2026-10-28 16:22:48,775.775 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:22:48,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:22:48,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:22:48,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:22:50,830.830 INFO    ] ================================================
[2026-10-28 16:22:50,846.846 INFO    ] Launching Daemon at Wed Oct 28 16:22:50 IST 2026
[2026-10-28 16:22:50,857.857 INFO    ] ================================================
[2026-10-28 16:22:51,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:22:51
[2026-10-28 16:22:52,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:22:52,311.311 INFO    ] Initializing speech engine...
[2026-10-28 16:22:52,320.320 INFO    ] 2026-10-28 16:22:52
[2026-10-28 16:22:52,577.577 INFO    ] 2026-10-28 16:22:52
[2026-10-28 16:22:52,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:22:52,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:22:52,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:22:53,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:22:53,121.121 INFO    ] time= 28/10/2026 16:22:53
[2026-10-28 16:22:53,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:22:53,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:22:53,294.294 INFO    ] No existing commands found in stream
[2026-10-28 16:22:58,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:22:58,327.327 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-28 16:22:59,635.635 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:22:59,638.638 INFO    ] Checking for system updates...
[2026-10-28 16:22:59,677.677 INFO    ] 200
[2026-10-28 16:22:59,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:22:59,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:22:59,744.744 INFO    ] No update needed
[2026-10-28 16:22:59,747.747 INFO    ] Checking for camera pi updates...
[2026-10-28 16:22:59,785.785 INFO    ] 200
[2026-10-28 16:22:59,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:22:59,838.838 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:22:59,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:22:59,926.926 INFO    ] No camera update needed
[2026-10-28 16:22:59,928.928 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:22:59,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:22:59,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:22:59,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:23:01,981.981 INFO    ] ================================================
[2026-10-28 16:23:02,001.001 INFO    ] Launching Daemon at Wed Oct 28 16:23:01 IST 2026
[2026-10-28 16:23:02,017.017 INFO    ] ================================================
[2026-10-28 16:23:02,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:23:02
[2026-10-28 16:23:03,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:23:03,680.680 INFO    ] Initializing speech engine...
[2026-10-28 16:23:03,691.691 INFO    ] 2026-10-28 16:23:03
[2026-10-28 16:23:03,957.957 INFO    ] 2026-10-28 16:23:03
[2026-10-28 16:23:04,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:23:04,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:23:04,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:23:04,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:23:04,505.505 INFO    ] time= 28/10/2026 16:23:04
[2026-10-28 16:23:04,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:23:04,539.539 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:23:04,675.675 INFO    ] No existing commands found in stream
[2026-10-28 16:23:09,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:23:09,708.708 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-28 16:23:13,727.727 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:23:13,730.730 INFO    ] Checking for system updates...
[2026-10-28 16:23:13,768.768 INFO    ] 200
[2026-10-28 16:23:13,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:23:13,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:23:13,826.826 INFO    ] No update needed
[2026-10-28 16:23:13,829.829 INFO    ] Checking for camera pi updates...
[2026-10-28 16:23:13,863.863 INFO    ] 200
[2026-10-28 16:23:13,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:23:13,909.909 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:23:13,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:23:13,991.991 INFO    ] No camera update needed
[2026-10-28 16:23:13,993.993 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:23:13,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:23:14,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:23:14,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:23:16,046.046 INFO    ] ================================================
[2026-10-28 16:23:16,061.061 INFO    ] Launching Daemon at Wed Oct 28 16:23:16 IST 2026
[2026-10-28 16:23:16,072.072 INFO    ] ================================================
[2026-10-28 16:23:16,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:23:16
[2026-10-28 16:23:17,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:23:17,518.518 INFO    ] Initializing speech engine...
[2026-10-28 16:23:17,527.527 INFO    ] 2026-10-28 16:23:17
[2026-10-28 16:23:17,775.775 INFO    ] 2026-10-28 16:23:17
[2026-10-28 16:23:17,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:23:18,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:23:18,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:23:18,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:23:18,331.331 INFO    ] time= 28/10/2026 16:23:18
[2026-10-28 16:23:18,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:23:18,355.355 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:23:18,490.490 INFO    ] No existing commands found in stream
[2026-10-28 16:23:23,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:23:23,519.519 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-28 16:23:26,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:23:26,348.348 INFO    ] Checking for system updates...
[2026-10-28 16:23:26,384.384 INFO    ] 200
[2026-10-28 16:23:26,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:23:26,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:23:26,444.444 INFO    ] No update needed
[2026-10-28 16:23:26,447.447 INFO    ] Checking for camera pi updates...
[2026-10-28 16:23:26,481.481 INFO    ] 200
[2026-10-28 16:23:26,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:23:26,526.526 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:23:26,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:23:26,629.629 INFO    ] No camera update needed
[2026-10-28 16:23:26,631.631 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:23:26,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:23:26,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:23:26,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:23:28,688.688 INFO    ] ================================================
[2026-10-28 16:23:28,703.703 INFO    ] Launching Daemon at Wed Oct 28 16:23:28 IST 2026
[2026-10-28 16:23:28,714.714 INFO    ] ================================================
[2026-10-28 16:23:29,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:23:29
[2026-10-28 16:23:30,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:23:30,340.340 INFO    ] Initializing speech engine...
[2026-10-28 16:23:30,349.349 INFO    ] 2026-10-28 16:23:30
[2026-10-28 16:23:30,639.639 INFO    ] 2026-10-28 16:23:30
[2026-10-28 16:23:30,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:23:30,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:23:30,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:23:31,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:23:31,183.183 INFO    ] time= 28/10/2026 16:23:31
[2026-10-28 16:23:31,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:23:31,233.233 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:23:31,373.373 INFO    ] No existing commands found in stream
[2026-10-28 16:23:36,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:23:36,412.412 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-28 16:23:38,381.381 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:23:38,384.384 INFO    ] Checking for system updates...
[2026-10-28 16:23:38,425.425 INFO    ] 200
[2026-10-28 16:23:38,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:23:38,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:23:38,491.491 INFO    ] No update needed
[2026-10-28 16:23:38,494.494 INFO    ] Checking for camera pi updates...
[2026-10-28 16:23:38,529.529 INFO    ] 200
[2026-10-28 16:23:38,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:23:38,578.578 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:23:38,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:23:38,678.678 INFO    ] No camera update needed
[2026-10-28 16:23:38,681.681 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:23:38,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:23:38,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:23:38,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:23:40,739.739 INFO    ] ================================================
[2026-10-28 16:23:40,755.755 INFO    ] Launching Daemon at Wed Oct 28 16:23:40 IST 2026
[2026-10-28 16:23:40,766.766 INFO    ] ================================================
[2026-10-28 16:23:41,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:23:41
[2026-10-28 16:23:41,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:23:42,178.178 INFO    ] Initializing speech engine...
[2026-10-28 16:23:42,197.197 INFO    ] 2026-10-28 16:23:42
[2026-10-28 16:23:42,468.468 INFO    ] 2026-10-28 16:23:42
[2026-10-28 16:23:42,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:23:42,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:23:42,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:23:42,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:23:43,021.021 INFO    ] time= 28/10/2026 16:23:42
[2026-10-28 16:23:43,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:23:43,109.109 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:23:43,240.240 INFO    ] No existing commands found in stream
[2026-10-28 16:23:48,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:23:48,266.266 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 16:23:51,138.138 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:23:51,141.141 INFO    ] Checking for system updates...
[2026-10-28 16:23:51,178.178 INFO    ] 200
[2026-10-28 16:23:51,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:23:51,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:23:51,238.238 INFO    ] No update needed
[2026-10-28 16:23:51,241.241 INFO    ] Checking for camera pi updates...
[2026-10-28 16:23:51,279.279 INFO    ] 200
[2026-10-28 16:23:51,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:23:51,330.330 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:23:51,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:23:51,416.416 INFO    ] No camera update needed
[2026-10-28 16:23:51,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:23:51,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:23:51,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:23:51,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:23:53,475.475 INFO    ] ================================================
[2026-10-28 16:23:53,490.490 INFO    ] Launching Daemon at Wed Oct 28 16:23:53 IST 2026
[2026-10-28 16:23:53,500.500 INFO    ] ================================================
[2026-10-28 16:23:54,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:23:54
[2026-10-28 16:23:54,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:23:54,942.942 INFO    ] Initializing speech engine...
[2026-10-28 16:23:54,952.952 INFO    ] 2026-10-28 16:23:54
[2026-10-28 16:23:55,212.212 INFO    ] 2026-10-28 16:23:55
[2026-10-28 16:23:55,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:23:55,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:23:55,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:23:55,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:23:55,824.824 INFO    ] time= 28/10/2026 16:23:55
[2026-10-28 16:23:55,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:23:55,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:23:56,019.019 INFO    ] No existing commands found in stream
[2026-10-28 16:24:01,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:24:01,036.036 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-28 16:24:04,579.579 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:24:04,581.581 INFO    ] Checking for system updates...
[2026-10-28 16:24:04,617.617 INFO    ] 200
[2026-10-28 16:24:04,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:24:04,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:24:04,676.676 INFO    ] No update needed
[2026-10-28 16:24:04,678.678 INFO    ] Checking for camera pi updates...
[2026-10-28 16:24:04,712.712 INFO    ] 200
[2026-10-28 16:24:04,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:24:04,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:24:04,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:24:04,851.851 INFO    ] No camera update needed
[2026-10-28 16:24:04,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:24:04,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:24:04,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:24:04,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:24:06,907.907 INFO    ] ================================================
[2026-10-28 16:24:06,922.922 INFO    ] Launching Daemon at Wed Oct 28 16:24:06 IST 2026
[2026-10-28 16:24:06,933.933 INFO    ] ================================================
[2026-10-28 16:24:07,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:24:07
[2026-10-28 16:24:08,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:24:08,342.342 INFO    ] Initializing speech engine...
[2026-10-28 16:24:08,356.356 INFO    ] 2026-10-28 16:24:08
[2026-10-28 16:24:08,644.644 INFO    ] 2026-10-28 16:24:08
[2026-10-28 16:24:08,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:24:08,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:24:08,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:24:09,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:24:09,143.143 INFO    ] time= 28/10/2026 16:24:09
[2026-10-28 16:24:09,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:24:09,252.252 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:24:09,422.422 INFO    ] No existing commands found in stream
[2026-10-28 16:24:14,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:24:14,443.443 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-28 16:24:17,238.238 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:24:17,240.240 INFO    ] Checking for system updates...
[2026-10-28 16:24:17,276.276 INFO    ] 200
[2026-10-28 16:24:17,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:24:17,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:24:17,334.334 INFO    ] No update needed
[2026-10-28 16:24:17,337.337 INFO    ] Checking for camera pi updates...
[2026-10-28 16:24:17,370.370 INFO    ] 200
[2026-10-28 16:24:17,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:24:17,418.418 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:24:17,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:24:17,500.500 INFO    ] No camera update needed
[2026-10-28 16:24:17,502.502 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:24:17,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:24:17,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:24:17,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:24:19,554.554 INFO    ] ================================================
[2026-10-28 16:24:19,569.569 INFO    ] Launching Daemon at Wed Oct 28 16:24:19 IST 2026
[2026-10-28 16:24:19,580.580 INFO    ] ================================================
[2026-10-28 16:24:20,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:24:20
[2026-10-28 16:24:20,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:24:21,052.052 INFO    ] Initializing speech engine...
[2026-10-28 16:24:21,061.061 INFO    ] 2026-10-28 16:24:21
[2026-10-28 16:24:21,306.306 INFO    ] 2026-10-28 16:24:21
[2026-10-28 16:24:21,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:24:21,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:24:21,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:24:21,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:24:21,863.863 INFO    ] time= 28/10/2026 16:24:21
[2026-10-28 16:24:21,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:24:21,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:24:22,016.016 INFO    ] No existing commands found in stream
[2026-10-28 16:24:27,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:24:27,028.028 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-28 16:24:27,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:24:27,938.938 INFO    ] Checking for system updates...
[2026-10-28 16:24:27,978.978 INFO    ] 200
[2026-10-28 16:24:27,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:24:28,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:24:28,039.039 INFO    ] No update needed
[2026-10-28 16:24:28,042.042 INFO    ] Checking for camera pi updates...
[2026-10-28 16:24:28,076.076 INFO    ] 200
[2026-10-28 16:24:28,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:24:28,120.120 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:24:28,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:24:28,301.301 INFO    ] No camera update needed
[2026-10-28 16:24:28,303.303 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:24:28,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:24:28,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:24:28,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:24:30,358.358 INFO    ] ================================================
[2026-10-28 16:24:30,373.373 INFO    ] Launching Daemon at Wed Oct 28 16:24:30 IST 2026
[2026-10-28 16:24:30,384.384 INFO    ] ================================================
[2026-10-28 16:24:30,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:24:30
[2026-10-28 16:24:31,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:24:31,874.874 INFO    ] Initializing speech engine...
[2026-10-28 16:24:31,883.883 INFO    ] 2026-10-28 16:24:31
[2026-10-28 16:24:32,181.181 INFO    ] 2026-10-28 16:24:32
[2026-10-28 16:24:32,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:24:32,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:24:32,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:24:32,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:24:32,937.937 INFO    ] time= 28/10/2026 16:24:32
[2026-10-28 16:24:32,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:24:33,024.024 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:24:33,175.175 INFO    ] No existing commands found in stream
[2026-10-28 16:24:38,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:24:38,206.206 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-28 16:24:40,132.132 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:24:40,135.135 INFO    ] Checking for system updates...
[2026-10-28 16:24:40,172.172 INFO    ] 200
[2026-10-28 16:24:40,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:24:40,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:24:40,232.232 INFO    ] No update needed
[2026-10-28 16:24:40,235.235 INFO    ] Checking for camera pi updates...
[2026-10-28 16:24:40,270.270 INFO    ] 200
[2026-10-28 16:24:40,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:24:40,315.315 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:24:40,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:24:40,400.400 INFO    ] No camera update needed
[2026-10-28 16:24:40,402.402 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:24:40,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:24:40,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:24:40,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:24:42,459.459 INFO    ] ================================================
[2026-10-28 16:24:42,474.474 INFO    ] Launching Daemon at Wed Oct 28 16:24:42 IST 2026
[2026-10-28 16:24:42,485.485 INFO    ] ================================================
[2026-10-28 16:24:43,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:24:43
[2026-10-28 16:24:43,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:24:43,919.919 INFO    ] Initializing speech engine...
[2026-10-28 16:24:43,930.930 INFO    ] 2026-10-28 16:24:43
[2026-10-28 16:24:44,198.198 INFO    ] 2026-10-28 16:24:44
[2026-10-28 16:24:44,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:24:44,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:24:44,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:24:44,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:24:44,812.812 INFO    ] time= 28/10/2026 16:24:44
[2026-10-28 16:24:44,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:24:44,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:24:44,975.975 INFO    ] No existing commands found in stream
[2026-10-28 16:24:50,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:24:50,003.003 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-28 16:24:50,640.640 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:24:50,643.643 INFO    ] Checking for system updates...
[2026-10-28 16:24:50,682.682 INFO    ] 200
[2026-10-28 16:24:50,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:24:50,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:24:50,740.740 INFO    ] No update needed
[2026-10-28 16:24:50,743.743 INFO    ] Checking for camera pi updates...
[2026-10-28 16:24:50,776.776 INFO    ] 200
[2026-10-28 16:24:50,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:24:50,818.818 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:24:50,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:24:50,905.905 INFO    ] No camera update needed
[2026-10-28 16:24:50,907.907 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:24:50,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:24:50,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:24:50,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:24:52,960.960 INFO    ] ================================================
[2026-10-28 16:24:52,975.975 INFO    ] Launching Daemon at Wed Oct 28 16:24:52 IST 2026
[2026-10-28 16:24:52,986.986 INFO    ] ================================================
[2026-10-28 16:24:53,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:24:53
[2026-10-28 16:24:54,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:24:54,385.385 INFO    ] Initializing speech engine...
[2026-10-28 16:24:54,398.398 INFO    ] 2026-10-28 16:24:54
[2026-10-28 16:24:54,665.665 INFO    ] 2026-10-28 16:24:54
[2026-10-28 16:24:54,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:24:54,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:24:54,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:24:55,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:24:55,234.234 INFO    ] time= 28/10/2026 16:24:55
[2026-10-28 16:24:55,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:24:55,256.256 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:24:55,395.395 INFO    ] No existing commands found in stream
[2026-10-28 16:25:00,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:25:00,417.417 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-28 16:25:04,617.617 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:25:04,619.619 INFO    ] Checking for system updates...
[2026-10-28 16:25:04,656.656 INFO    ] 200
[2026-10-28 16:25:04,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:25:04,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:25:04,713.713 INFO    ] No update needed
[2026-10-28 16:25:04,716.716 INFO    ] Checking for camera pi updates...
[2026-10-28 16:25:04,749.749 INFO    ] 200
[2026-10-28 16:25:04,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:25:04,793.793 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:25:04,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:25:04,874.874 INFO    ] No camera update needed
[2026-10-28 16:25:04,877.877 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:25:04,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:25:04,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:25:04,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:25:06,931.931 INFO    ] ================================================
[2026-10-28 16:25:06,946.946 INFO    ] Launching Daemon at Wed Oct 28 16:25:06 IST 2026
[2026-10-28 16:25:06,956.956 INFO    ] ================================================
[2026-10-28 16:25:07,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:25:07
[2026-10-28 16:25:08,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:25:08,533.533 INFO    ] Initializing speech engine...
[2026-10-28 16:25:08,539.539 INFO    ] 2026-10-28 16:25:08
[2026-10-28 16:25:08,809.809 INFO    ] 2026-10-28 16:25:08
[2026-10-28 16:25:08,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:25:09,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:25:09,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:25:09,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:25:09,402.402 INFO    ] time= 28/10/2026 16:25:09
[2026-10-28 16:25:09,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:25:09,435.435 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:25:09,596.596 INFO    ] No existing commands found in stream
[2026-10-28 16:25:14,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:25:14,619.619 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-28 16:25:18,757.757 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:25:18,760.760 INFO    ] Checking for system updates...
[2026-10-28 16:25:18,797.797 INFO    ] 200
[2026-10-28 16:25:18,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:25:18,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:25:18,857.857 INFO    ] No update needed
[2026-10-28 16:25:18,859.859 INFO    ] Checking for camera pi updates...
[2026-10-28 16:25:18,895.895 INFO    ] 200
[2026-10-28 16:25:18,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:25:18,939.939 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:25:19,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:25:19,031.031 INFO    ] No camera update needed
[2026-10-28 16:25:19,033.033 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:25:19,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:25:19,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:25:19,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:25:21,086.086 INFO    ] ================================================
[2026-10-28 16:25:21,100.100 INFO    ] Launching Daemon at Wed Oct 28 16:25:21 IST 2026
[2026-10-28 16:25:21,111.111 INFO    ] ================================================
[2026-10-28 16:25:21,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:25:21
[2026-10-28 16:25:22,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:25:22,587.587 INFO    ] Initializing speech engine...
[2026-10-28 16:25:22,599.599 INFO    ] 2026-10-28 16:25:22
[2026-10-28 16:25:22,877.877 INFO    ] 2026-10-28 16:25:22
[2026-10-28 16:25:22,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:25:23,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:25:23,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:25:23,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:25:23,417.417 INFO    ] time= 28/10/2026 16:25:23
[2026-10-28 16:25:23,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:25:23,452.452 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:25:23,559.559 INFO    ] No existing commands found in stream
[2026-10-28 16:25:28,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:25:28,582.582 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 16:25:33,160.160 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:25:33,163.163 INFO    ] Checking for system updates...
[2026-10-28 16:25:33,199.199 INFO    ] 200
[2026-10-28 16:25:33,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:25:33,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:25:33,262.262 INFO    ] No update needed
[2026-10-28 16:25:33,266.266 INFO    ] Checking for camera pi updates...
[2026-10-28 16:25:33,299.299 INFO    ] 200
[2026-10-28 16:25:33,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:25:33,343.343 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:25:33,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:25:33,428.428 INFO    ] No camera update needed
[2026-10-28 16:25:33,430.430 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:25:33,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:25:33,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:25:33,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:25:35,486.486 INFO    ] ================================================
[2026-10-28 16:25:35,501.501 INFO    ] Launching Daemon at Wed Oct 28 16:25:35 IST 2026
[2026-10-28 16:25:35,511.511 INFO    ] ================================================
[2026-10-28 16:25:36,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:25:36
[2026-10-28 16:25:36,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:25:36,968.968 INFO    ] Initializing speech engine...
[2026-10-28 16:25:36,974.974 INFO    ] 2026-10-28 16:25:36
[2026-10-28 16:25:37,223.223 INFO    ] 2026-10-28 16:25:37
[2026-10-28 16:25:37,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:25:37,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:25:37,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:25:37,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:25:37,779.779 INFO    ] time= 28/10/2026 16:25:37
[2026-10-28 16:25:37,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:25:37,804.804 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:25:37,924.924 INFO    ] No existing commands found in stream
[2026-10-28 16:25:42,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:25:42,947.947 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-28 16:25:46,572.572 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:25:46,575.575 INFO    ] Checking for system updates...
[2026-10-28 16:25:46,611.611 INFO    ] 200
[2026-10-28 16:25:46,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:25:46,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:25:46,676.676 INFO    ] No update needed
[2026-10-28 16:25:46,679.679 INFO    ] Checking for camera pi updates...
[2026-10-28 16:25:46,716.716 INFO    ] 200
[2026-10-28 16:25:46,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:25:46,764.764 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:25:46,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:25:46,845.845 INFO    ] No camera update needed
[2026-10-28 16:25:46,848.848 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:25:46,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:25:46,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:25:46,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:25:48,904.904 INFO    ] ================================================
[2026-10-28 16:25:48,919.919 INFO    ] Launching Daemon at Wed Oct 28 16:25:48 IST 2026
[2026-10-28 16:25:48,929.929 INFO    ] ================================================
[2026-10-28 16:25:49,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:25:49
[2026-10-28 16:25:50,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:25:50,511.511 INFO    ] Initializing speech engine...
[2026-10-28 16:25:50,519.519 INFO    ] 2026-10-28 16:25:50
[2026-10-28 16:25:50,788.788 INFO    ] 2026-10-28 16:25:50
[2026-10-28 16:25:50,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:25:51,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:25:51,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:25:51,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:25:51,348.348 INFO    ] time= 28/10/2026 16:25:51
[2026-10-28 16:25:51,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:25:51,385.385 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:25:51,516.516 INFO    ] No existing commands found in stream
[2026-10-28 16:25:56,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:25:56,549.549 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-28 16:25:57,567.567 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:25:57,570.570 INFO    ] Checking for system updates...
[2026-10-28 16:25:57,607.607 INFO    ] 200
[2026-10-28 16:25:57,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:25:57,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:25:57,666.666 INFO    ] No update needed
[2026-10-28 16:25:57,669.669 INFO    ] Checking for camera pi updates...
[2026-10-28 16:25:57,704.704 INFO    ] 200
[2026-10-28 16:25:57,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:25:57,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:25:57,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:25:57,833.833 INFO    ] No camera update needed
[2026-10-28 16:25:57,836.836 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:25:57,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:25:57,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:25:57,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:25:59,892.892 INFO    ] ================================================
[2026-10-28 16:25:59,906.906 INFO    ] Launching Daemon at Wed Oct 28 16:25:59 IST 2026
[2026-10-28 16:25:59,917.917 INFO    ] ================================================
[2026-10-28 16:26:00,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:26:00
[2026-10-28 16:26:01,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:26:01,488.488 INFO    ] Initializing speech engine...
[2026-10-28 16:26:01,497.497 INFO    ] 2026-10-28 16:26:01
[2026-10-28 16:26:01,763.763 INFO    ] 2026-10-28 16:26:01
[2026-10-28 16:26:01,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:26:02,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:26:02,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:26:02,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:26:02,250.250 INFO    ] time= 28/10/2026 16:26:02
[2026-10-28 16:26:02,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:26:02,256.256 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:26:02,331.331 INFO    ] No existing commands found in stream
[2026-10-28 16:26:07,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:26:07,345.345 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-28 16:26:10,037.037 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:26:10,040.040 INFO    ] Checking for system updates...
[2026-10-28 16:26:10,083.083 INFO    ] 200
[2026-10-28 16:26:10,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:26:10,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:26:10,142.142 INFO    ] No update needed
[2026-10-28 16:26:10,145.145 INFO    ] Checking for camera pi updates...
[2026-10-28 16:26:10,178.178 INFO    ] 200
[2026-10-28 16:26:10,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:26:10,223.223 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:26:10,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:26:10,315.315 INFO    ] No camera update needed
[2026-10-28 16:26:10,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:26:10,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:26:10,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:26:10,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:26:12,374.374 INFO    ] ================================================
[2026-10-28 16:26:12,390.390 INFO    ] Launching Daemon at Wed Oct 28 16:26:12 IST 2026
[2026-10-28 16:26:12,400.400 INFO    ] ================================================
[2026-10-28 16:26:13,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:26:13
[2026-10-28 16:26:13,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:26:13,970.970 INFO    ] Initializing speech engine...
[2026-10-28 16:26:13,978.978 INFO    ] 2026-10-28 16:26:13
[2026-10-28 16:26:14,246.246 INFO    ] 2026-10-28 16:26:14
[2026-10-28 16:26:14,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:26:14,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:26:14,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:26:14,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:26:14,924.924 INFO    ] time= 28/10/2026 16:26:14
[2026-10-28 16:26:14,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:26:15,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:26:15,165.165 INFO    ] No existing commands found in stream
[2026-10-28 16:26:20,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:26:20,180.180 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-28 16:26:20,984.984 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:26:20,986.986 INFO    ] Checking for system updates...
[2026-10-28 16:26:21,021.021 INFO    ] 200
[2026-10-28 16:26:21,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:26:21,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:26:21,087.087 INFO    ] No update needed
[2026-10-28 16:26:21,089.089 INFO    ] Checking for camera pi updates...
[2026-10-28 16:26:21,123.123 INFO    ] 200
[2026-10-28 16:26:21,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:26:21,168.168 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:26:21,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:26:21,252.252 INFO    ] No camera update needed
[2026-10-28 16:26:21,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:26:21,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:26:21,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:26:21,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:26:23,310.310 INFO    ] ================================================
[2026-10-28 16:26:23,324.324 INFO    ] Launching Daemon at Wed Oct 28 16:26:23 IST 2026
[2026-10-28 16:26:23,335.335 INFO    ] ================================================
[2026-10-28 16:26:23,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:26:23
[2026-10-28 16:26:24,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:26:24,841.841 INFO    ] Initializing speech engine...
[2026-10-28 16:26:24,850.850 INFO    ] 2026-10-28 16:26:24
[2026-10-28 16:26:25,094.094 INFO    ] 2026-10-28 16:26:25
[2026-10-28 16:26:25,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:26:25,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:26:25,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:26:25,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:26:25,646.646 INFO    ] time= 28/10/2026 16:26:25
[2026-10-28 16:26:25,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:26:25,670.670 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:26:25,803.803 INFO    ] No existing commands found in stream
[2026-10-28 16:26:30,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:26:30,828.828 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 16:26:34,675.675 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:26:34,677.677 INFO    ] Checking for system updates...
[2026-10-28 16:26:34,713.713 INFO    ] 200
[2026-10-28 16:26:34,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:26:34,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:26:34,771.771 INFO    ] No update needed
[2026-10-28 16:26:34,773.773 INFO    ] Checking for camera pi updates...
[2026-10-28 16:26:34,806.806 INFO    ] 200
[2026-10-28 16:26:34,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:26:34,849.849 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:26:34,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:26:34,948.948 INFO    ] No camera update needed
[2026-10-28 16:26:34,951.951 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:26:34,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:26:34,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:26:34,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:26:37,006.006 INFO    ] ================================================
[2026-10-28 16:26:37,020.020 INFO    ] Launching Daemon at Wed Oct 28 16:26:37 IST 2026
[2026-10-28 16:26:37,031.031 INFO    ] ================================================
[2026-10-28 16:26:37,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:26:37
[2026-10-28 16:26:38,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:26:38,520.520 INFO    ] Initializing speech engine...
[2026-10-28 16:26:38,534.534 INFO    ] 2026-10-28 16:26:38
[2026-10-28 16:26:38,796.796 INFO    ] 2026-10-28 16:26:38
[2026-10-28 16:26:38,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:26:39,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:26:39,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:26:39,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:26:39,341.341 INFO    ] time= 28/10/2026 16:26:39
[2026-10-28 16:26:39,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:26:39,390.390 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:26:39,518.518 INFO    ] No existing commands found in stream
[2026-10-28 16:26:44,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:26:44,552.552 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 16:26:48,838.838 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:26:48,841.841 INFO    ] Checking for system updates...
[2026-10-28 16:26:48,876.876 INFO    ] 200
[2026-10-28 16:26:48,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:26:48,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:26:48,933.933 INFO    ] No update needed
[2026-10-28 16:26:48,936.936 INFO    ] Checking for camera pi updates...
[2026-10-28 16:26:48,969.969 INFO    ] 200
[2026-10-28 16:26:48,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:26:49,015.015 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:26:49,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:26:49,100.100 INFO    ] No camera update needed
[2026-10-28 16:26:49,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:26:49,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:26:49,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:26:49,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:26:51,155.155 INFO    ] ================================================
[2026-10-28 16:26:51,173.173 INFO    ] Launching Daemon at Wed Oct 28 16:26:51 IST 2026
[2026-10-28 16:26:51,184.184 INFO    ] ================================================
[2026-10-28 16:26:51,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:26:51
[2026-10-28 16:26:52,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:26:52,596.596 INFO    ] Initializing speech engine...
[2026-10-28 16:26:52,611.611 INFO    ] 2026-10-28 16:26:52
[2026-10-28 16:26:52,892.892 INFO    ] 2026-10-28 16:26:52
[2026-10-28 16:26:52,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:26:53,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:26:53,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:26:53,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:26:53,492.492 INFO    ] time= 28/10/2026 16:26:53
[2026-10-28 16:26:53,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:26:53,523.523 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:26:53,657.657 INFO    ] No existing commands found in stream
[2026-10-28 16:26:58,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:26:58,685.685 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-28 16:27:02,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:27:02,630.630 INFO    ] Checking for system updates...
[2026-10-28 16:27:02,669.669 INFO    ] 200
[2026-10-28 16:27:02,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:27:02,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:27:02,731.731 INFO    ] No update needed
[2026-10-28 16:27:02,735.735 INFO    ] Checking for camera pi updates...
[2026-10-28 16:27:02,774.774 INFO    ] 200
[2026-10-28 16:27:02,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:27:02,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:27:02,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:27:02,946.946 INFO    ] No camera update needed
[2026-10-28 16:27:02,949.949 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:27:02,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:27:02,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:27:02,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:27:05,004.004 INFO    ] ================================================
[2026-10-28 16:27:05,019.019 INFO    ] Launching Daemon at Wed Oct 28 16:27:05 IST 2026
[2026-10-28 16:27:05,030.030 INFO    ] ================================================
[2026-10-28 16:27:05,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:27:05
[2026-10-28 16:27:06,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:27:06,582.582 INFO    ] Initializing speech engine...
[2026-10-28 16:27:06,592.592 INFO    ] 2026-10-28 16:27:06
[2026-10-28 16:27:06,857.857 INFO    ] 2026-10-28 16:27:06
[2026-10-28 16:27:06,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:27:07,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:27:07,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:27:07,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:27:07,420.420 INFO    ] time= 28/10/2026 16:27:07
[2026-10-28 16:27:07,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:27:07,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:27:07,583.583 INFO    ] No existing commands found in stream
[2026-10-28 16:27:12,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:27:12,616.616 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 16:27:15,318.318 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:27:15,320.320 INFO    ] Checking for system updates...
[2026-10-28 16:27:15,357.357 INFO    ] 200
[2026-10-28 16:27:15,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:27:15,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:27:15,415.415 INFO    ] No update needed
[2026-10-28 16:27:15,417.417 INFO    ] Checking for camera pi updates...
[2026-10-28 16:27:15,451.451 INFO    ] 200
[2026-10-28 16:27:15,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:27:15,498.498 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:27:15,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:27:15,582.582 INFO    ] No camera update needed
[2026-10-28 16:27:15,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:27:15,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:27:15,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:27:15,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:27:17,641.641 INFO    ] ================================================
[2026-10-28 16:27:17,656.656 INFO    ] Launching Daemon at Wed Oct 28 16:27:17 IST 2026
[2026-10-28 16:27:17,667.667 INFO    ] ================================================
[2026-10-28 16:27:18,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:27:18
[2026-10-28 16:27:18,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:27:19,087.087 INFO    ] Initializing speech engine...
[2026-10-28 16:27:19,106.106 INFO    ] 2026-10-28 16:27:19
[2026-10-28 16:27:19,365.365 INFO    ] 2026-10-28 16:27:19
[2026-10-28 16:27:19,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:27:19,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:27:19,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:27:19,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:27:19,917.917 INFO    ] time= 28/10/2026 16:27:19
[2026-10-28 16:27:19,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:27:19,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:27:20,119.119 INFO    ] No existing commands found in stream
[2026-10-28 16:27:25,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:27:25,147.147 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-28 16:27:27,375.375 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:27:27,377.377 INFO    ] Checking for system updates...
[2026-10-28 16:27:27,414.414 INFO    ] 200
[2026-10-28 16:27:27,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:27:27,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:27:27,476.476 INFO    ] No update needed
[2026-10-28 16:27:27,479.479 INFO    ] Checking for camera pi updates...
[2026-10-28 16:27:27,512.512 INFO    ] 200
[2026-10-28 16:27:27,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:27:27,559.559 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:27:27,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:27:27,642.642 INFO    ] No camera update needed
[2026-10-28 16:27:27,644.644 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:27:27,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:27:27,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:27:27,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:27:29,697.697 INFO    ] ================================================
[2026-10-28 16:27:29,711.711 INFO    ] Launching Daemon at Wed Oct 28 16:27:29 IST 2026
[2026-10-28 16:27:29,722.722 INFO    ] ================================================
[2026-10-28 16:27:30,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:27:30
[2026-10-28 16:27:30,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:27:31,175.175 INFO    ] Initializing speech engine...
[2026-10-28 16:27:31,182.182 INFO    ] 2026-10-28 16:27:31
[2026-10-28 16:27:31,464.464 INFO    ] 2026-10-28 16:27:31
[2026-10-28 16:27:31,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:27:31,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:27:31,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:27:31,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:27:32,007.007 INFO    ] time= 28/10/2026 16:27:31
[2026-10-28 16:27:32,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:27:32,115.115 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:27:32,251.251 INFO    ] No existing commands found in stream
[2026-10-28 16:27:37,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:27:37,281.281 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-28 16:27:38,944.944 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:27:38,947.947 INFO    ] Checking for system updates...
[2026-10-28 16:27:38,982.982 INFO    ] 200
[2026-10-28 16:27:38,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:27:39,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:27:39,039.039 INFO    ] No update needed
[2026-10-28 16:27:39,041.041 INFO    ] Checking for camera pi updates...
[2026-10-28 16:27:39,075.075 INFO    ] 200
[2026-10-28 16:27:39,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:27:39,120.120 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:27:39,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:27:39,204.204 INFO    ] No camera update needed
[2026-10-28 16:27:39,206.206 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:27:39,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:27:39,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:27:39,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:27:41,261.261 INFO    ] ================================================
[2026-10-28 16:27:41,276.276 INFO    ] Launching Daemon at Wed Oct 28 16:27:41 IST 2026
[2026-10-28 16:27:41,288.288 INFO    ] ================================================
[2026-10-28 16:27:41,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:27:41
[2026-10-28 16:27:42,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:27:42,681.681 INFO    ] Initializing speech engine...
[2026-10-28 16:27:42,705.705 INFO    ] 2026-10-28 16:27:42
[2026-10-28 16:27:42,961.961 INFO    ] 2026-10-28 16:27:42
[2026-10-28 16:27:42,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:27:43,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:27:43,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:27:43,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:27:43,536.536 INFO    ] time= 28/10/2026 16:27:43
[2026-10-28 16:27:43,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:27:43,565.565 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:27:43,722.722 INFO    ] No existing commands found in stream
[2026-10-28 16:27:48,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:27:48,755.755 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 16:27:53,279.279 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:27:53,282.282 INFO    ] Checking for system updates...
[2026-10-28 16:27:53,319.319 INFO    ] 200
[2026-10-28 16:27:53,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:27:53,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:27:53,376.376 INFO    ] No update needed
[2026-10-28 16:27:53,379.379 INFO    ] Checking for camera pi updates...
[2026-10-28 16:27:53,413.413 INFO    ] 200
[2026-10-28 16:27:53,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:27:53,456.456 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:27:53,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:27:53,548.548 INFO    ] No camera update needed
[2026-10-28 16:27:53,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:27:53,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:27:53,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:27:53,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:27:55,605.605 INFO    ] ================================================
[2026-10-28 16:27:55,620.620 INFO    ] Launching Daemon at Wed Oct 28 16:27:55 IST 2026
[2026-10-28 16:27:55,631.631 INFO    ] ================================================
[2026-10-28 16:27:56,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:27:56
[2026-10-28 16:27:56,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:27:57,115.115 INFO    ] Initializing speech engine...
[2026-10-28 16:27:57,124.124 INFO    ] 2026-10-28 16:27:57
[2026-10-28 16:27:57,375.375 INFO    ] 2026-10-28 16:27:57
[2026-10-28 16:27:57,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:27:57,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:27:57,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:27:57,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:27:57,939.939 INFO    ] time= 28/10/2026 16:27:57
[2026-10-28 16:27:57,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:27:57,963.963 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:27:58,108.108 INFO    ] No existing commands found in stream
[2026-10-28 16:28:03,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:28:03,137.137 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-28 16:28:04,281.281 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:28:04,284.284 INFO    ] Checking for system updates...
[2026-10-28 16:28:04,320.320 INFO    ] 200
[2026-10-28 16:28:04,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:28:04,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:28:04,383.383 INFO    ] No update needed
[2026-10-28 16:28:04,386.386 INFO    ] Checking for camera pi updates...
[2026-10-28 16:28:04,424.424 INFO    ] 200
[2026-10-28 16:28:04,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:28:04,471.471 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:28:04,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:28:04,552.552 INFO    ] No camera update needed
[2026-10-28 16:28:04,555.555 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:28:04,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:28:04,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:28:04,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:28:06,611.611 INFO    ] ================================================
[2026-10-28 16:28:06,627.627 INFO    ] Launching Daemon at Wed Oct 28 16:28:06 IST 2026
[2026-10-28 16:28:06,638.638 INFO    ] ================================================
[2026-10-28 16:28:07,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:28:07
[2026-10-28 16:28:07,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:28:08,044.044 INFO    ] Initializing speech engine...
[2026-10-28 16:28:08,056.056 INFO    ] 2026-10-28 16:28:08
[2026-10-28 16:28:08,326.326 INFO    ] 2026-10-28 16:28:08
[2026-10-28 16:28:08,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:28:08,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:28:08,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:28:08,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:28:08,893.893 INFO    ] time= 28/10/2026 16:28:08
[2026-10-28 16:28:08,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:28:08,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:28:09,044.044 INFO    ] No existing commands found in stream
[2026-10-28 16:28:14,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:28:14,064.064 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-28 16:28:14,775.775 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:28:14,777.777 INFO    ] Checking for system updates...
[2026-10-28 16:28:14,817.817 INFO    ] 200
[2026-10-28 16:28:14,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:28:14,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:28:14,881.881 INFO    ] No update needed
[2026-10-28 16:28:14,884.884 INFO    ] Checking for camera pi updates...
[2026-10-28 16:28:14,918.918 INFO    ] 200
[2026-10-28 16:28:14,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:28:14,966.966 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:28:15,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:28:15,050.050 INFO    ] No camera update needed
[2026-10-28 16:28:15,052.052 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:28:15,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:28:15,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:28:15,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:28:17,106.106 INFO    ] ================================================
[2026-10-28 16:28:17,122.122 INFO    ] Launching Daemon at Wed Oct 28 16:28:17 IST 2026
[2026-10-28 16:28:17,132.132 INFO    ] ================================================
[2026-10-28 16:28:17,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:28:17
[2026-10-28 16:28:18,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:28:18,727.727 INFO    ] Initializing speech engine...
[2026-10-28 16:28:18,733.733 INFO    ] 2026-10-28 16:28:18
[2026-10-28 16:28:19,002.002 INFO    ] 2026-10-28 16:28:18
[2026-10-28 16:28:19,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:28:19,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:28:19,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:28:19,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:28:19,568.568 INFO    ] time= 28/10/2026 16:28:19
[2026-10-28 16:28:19,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:28:19,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:28:19,729.729 INFO    ] No existing commands found in stream
[2026-10-28 16:28:24,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:28:24,759.759 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 16:28:27,958.958 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:28:27,961.961 INFO    ] Checking for system updates...
[2026-10-28 16:28:27,997.997 INFO    ] 200
[2026-10-28 16:28:28,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:28:28,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:28:28,056.056 INFO    ] No update needed
[2026-10-28 16:28:28,059.059 INFO    ] Checking for camera pi updates...
[2026-10-28 16:28:28,092.092 INFO    ] 200
[2026-10-28 16:28:28,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:28:28,136.136 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:28:28,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:28:28,243.243 INFO    ] No camera update needed
[2026-10-28 16:28:28,246.246 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:28:28,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:28:28,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:28:28,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:28:30,300.300 INFO    ] ================================================
[2026-10-28 16:28:30,316.316 INFO    ] Launching Daemon at Wed Oct 28 16:28:30 IST 2026
[2026-10-28 16:28:30,327.327 INFO    ] ================================================
[2026-10-28 16:28:30,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:28:30
[2026-10-28 16:28:31,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:28:31,754.754 INFO    ] Initializing speech engine...
[2026-10-28 16:28:31,777.777 INFO    ] 2026-10-28 16:28:31
[2026-10-28 16:28:32,056.056 INFO    ] 2026-10-28 16:28:32
[2026-10-28 16:28:32,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:28:32,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:28:32,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:28:32,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:28:32,649.649 INFO    ] time= 28/10/2026 16:28:32
[2026-10-28 16:28:32,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:28:32,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:28:32,843.843 INFO    ] No existing commands found in stream
[2026-10-28 16:28:37,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:28:37,871.871 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 16:28:39,854.854 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:28:39,856.856 INFO    ] Checking for system updates...
[2026-10-28 16:28:39,892.892 INFO    ] 200
[2026-10-28 16:28:39,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:28:39,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:28:39,949.949 INFO    ] No update needed
[2026-10-28 16:28:39,951.951 INFO    ] Checking for camera pi updates...
[2026-10-28 16:28:39,985.985 INFO    ] 200
[2026-10-28 16:28:39,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:28:40,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:28:40,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:28:40,210.210 INFO    ] No camera update needed
[2026-10-28 16:28:40,213.213 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:28:40,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:28:40,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:28:40,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:28:42,268.268 INFO    ] ================================================
[2026-10-28 16:28:42,284.284 INFO    ] Launching Daemon at Wed Oct 28 16:28:42 IST 2026
[2026-10-28 16:28:42,296.296 INFO    ] ================================================
[2026-10-28 16:28:42,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:28:42
[2026-10-28 16:28:43,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:28:43,819.819 INFO    ] Initializing speech engine...
[2026-10-28 16:28:43,834.834 INFO    ] 2026-10-28 16:28:43
[2026-10-28 16:28:44,116.116 INFO    ] 2026-10-28 16:28:44
[2026-10-28 16:28:44,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:28:44,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:28:44,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:28:44,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:28:44,684.684 INFO    ] time= 28/10/2026 16:28:44
[2026-10-28 16:28:44,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:28:44,753.753 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:28:44,919.919 INFO    ] No existing commands found in stream
[2026-10-28 16:28:49,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:28:49,937.937 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-28 16:28:52,980.980 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:28:52,982.982 INFO    ] Checking for system updates...
[2026-10-28 16:28:53,018.018 INFO    ] 200
[2026-10-28 16:28:53,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:28:53,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:28:53,081.081 INFO    ] No update needed
[2026-10-28 16:28:53,083.083 INFO    ] Checking for camera pi updates...
[2026-10-28 16:28:53,118.118 INFO    ] 200
[2026-10-28 16:28:53,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:28:53,162.162 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:28:53,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:28:53,244.244 INFO    ] No camera update needed
[2026-10-28 16:28:53,246.246 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:28:53,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:28:53,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:28:53,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:28:55,300.300 INFO    ] ================================================
[2026-10-28 16:28:55,317.317 INFO    ] Launching Daemon at Wed Oct 28 16:28:55 IST 2026
[2026-10-28 16:28:55,327.327 INFO    ] ================================================
[2026-10-28 16:28:55,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:28:55
[2026-10-28 16:28:56,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:28:56,932.932 INFO    ] Initializing speech engine...
[2026-10-28 16:28:56,947.947 INFO    ] 2026-10-28 16:28:56
[2026-10-28 16:28:57,216.216 INFO    ] 2026-10-28 16:28:57
[2026-10-28 16:28:57,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:28:57,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:28:57,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:28:57,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:28:57,962.962 INFO    ] time= 28/10/2026 16:28:57
[2026-10-28 16:28:58,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:28:58,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:28:58,206.206 INFO    ] No existing commands found in stream
[2026-10-28 16:29:03,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:29:03,225.225 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 16:29:05,598.598 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:29:05,601.601 INFO    ] Checking for system updates...
[2026-10-28 16:29:05,637.637 INFO    ] 200
[2026-10-28 16:29:05,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:29:05,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:29:05,702.702 INFO    ] No update needed
[2026-10-28 16:29:05,705.705 INFO    ] Checking for camera pi updates...
[2026-10-28 16:29:05,740.740 INFO    ] 200
[2026-10-28 16:29:05,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:29:05,788.788 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:29:05,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:29:05,869.869 INFO    ] No camera update needed
[2026-10-28 16:29:05,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:29:05,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:29:05,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:29:05,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:29:07,929.929 INFO    ] ================================================
[2026-10-28 16:29:07,945.945 INFO    ] Launching Daemon at Wed Oct 28 16:29:07 IST 2026
[2026-10-28 16:29:07,955.955 INFO    ] ================================================
[2026-10-28 16:29:08,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:29:08
[2026-10-28 16:29:09,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:29:09,389.389 INFO    ] Initializing speech engine...
[2026-10-28 16:29:09,411.411 INFO    ] 2026-10-28 16:29:09
[2026-10-28 16:29:09,669.669 INFO    ] 2026-10-28 16:29:09
[2026-10-28 16:29:09,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:29:09,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:29:09,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:29:10,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:29:10,227.227 INFO    ] time= 28/10/2026 16:29:10
[2026-10-28 16:29:10,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:29:10,251.251 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:29:10,381.381 INFO    ] No existing commands found in stream
[2026-10-28 16:29:15,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:29:15,400.400 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-28 16:29:16,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:29:17,001.001 INFO    ] Checking for system updates...
[2026-10-28 16:29:17,040.040 INFO    ] 200
[2026-10-28 16:29:17,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:29:17,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:29:17,098.098 INFO    ] No update needed
[2026-10-28 16:29:17,100.100 INFO    ] Checking for camera pi updates...
[2026-10-28 16:29:17,137.137 INFO    ] 200
[2026-10-28 16:29:17,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:29:17,179.179 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:29:17,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:29:17,278.278 INFO    ] No camera update needed
[2026-10-28 16:29:17,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:29:17,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:29:17,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:29:17,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:29:19,335.335 INFO    ] ================================================
[2026-10-28 16:29:19,351.351 INFO    ] Launching Daemon at Wed Oct 28 16:29:19 IST 2026
[2026-10-28 16:29:19,362.362 INFO    ] ================================================
[2026-10-28 16:29:19,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:29:19
[2026-10-28 16:29:20,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:29:20,814.814 INFO    ] Initializing speech engine...
[2026-10-28 16:29:20,823.823 INFO    ] 2026-10-28 16:29:20
[2026-10-28 16:29:21,071.071 INFO    ] 2026-10-28 16:29:21
[2026-10-28 16:29:21,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:29:21,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:29:21,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:29:21,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:29:21,581.581 INFO    ] time= 28/10/2026 16:29:21
[2026-10-28 16:29:21,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:29:21,649.649 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:29:21,772.772 INFO    ] No existing commands found in stream
[2026-10-28 16:29:26,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:29:26,798.798 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-28 16:29:27,772.772 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:29:27,775.775 INFO    ] Checking for system updates...
[2026-10-28 16:29:27,815.815 INFO    ] 200
[2026-10-28 16:29:27,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:29:27,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:29:27,875.875 INFO    ] No update needed
[2026-10-28 16:29:27,878.878 INFO    ] Checking for camera pi updates...
[2026-10-28 16:29:27,913.913 INFO    ] 200
[2026-10-28 16:29:27,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:29:27,957.957 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:29:28,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:29:28,040.040 INFO    ] No camera update needed
[2026-10-28 16:29:28,043.043 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:29:28,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:29:28,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:29:28,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:29:30,098.098 INFO    ] ================================================
[2026-10-28 16:29:30,114.114 INFO    ] Launching Daemon at Wed Oct 28 16:29:30 IST 2026
[2026-10-28 16:29:30,125.125 INFO    ] ================================================
[2026-10-28 16:29:30,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:29:30
[2026-10-28 16:29:31,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:29:31,693.693 INFO    ] Initializing speech engine...
[2026-10-28 16:29:31,719.719 INFO    ] 2026-10-28 16:29:31
[2026-10-28 16:29:32,010.010 INFO    ] 2026-10-28 16:29:31
[2026-10-28 16:29:32,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:29:32,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:29:32,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:29:32,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:29:32,567.567 INFO    ] time= 28/10/2026 16:29:32
[2026-10-28 16:29:32,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:29:32,668.668 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:29:32,774.774 INFO    ] No existing commands found in stream
[2026-10-28 16:29:37,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:29:37,790.790 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-28 16:29:40,957.957 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:29:40,959.959 INFO    ] Checking for system updates...
[2026-10-28 16:29:40,998.998 INFO    ] 200
[2026-10-28 16:29:41,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:29:41,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:29:41,056.056 INFO    ] No update needed
[2026-10-28 16:29:41,059.059 INFO    ] Checking for camera pi updates...
[2026-10-28 16:29:41,097.097 INFO    ] 200
[2026-10-28 16:29:41,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:29:41,139.139 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:29:41,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:29:41,229.229 INFO    ] No camera update needed
[2026-10-28 16:29:41,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:29:41,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:29:41,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:29:41,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:29:43,288.288 INFO    ] ================================================
[2026-10-28 16:29:43,303.303 INFO    ] Launching Daemon at Wed Oct 28 16:29:43 IST 2026
[2026-10-28 16:29:43,315.315 INFO    ] ================================================
[2026-10-28 16:29:43,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:29:43
[2026-10-28 16:29:44,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:29:44,768.768 INFO    ] Initializing speech engine...
[2026-10-28 16:29:44,777.777 INFO    ] 2026-10-28 16:29:44
[2026-10-28 16:29:45,035.035 INFO    ] 2026-10-28 16:29:45
[2026-10-28 16:29:45,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:29:45,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:29:45,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:29:45,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:29:45,575.575 INFO    ] time= 28/10/2026 16:29:45
[2026-10-28 16:29:45,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:29:45,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:29:45,728.728 INFO    ] No existing commands found in stream
[2026-10-28 16:29:50,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:29:50,744.744 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-28 16:29:54,738.738 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:29:54,740.740 INFO    ] Checking for system updates...
[2026-10-28 16:29:54,775.775 INFO    ] 200
[2026-10-28 16:29:54,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:29:54,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:29:54,837.837 INFO    ] No update needed
[2026-10-28 16:29:54,840.840 INFO    ] Checking for camera pi updates...
[2026-10-28 16:29:54,873.873 INFO    ] 200
[2026-10-28 16:29:54,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:29:54,916.916 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:29:55,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:29:55,015.015 INFO    ] No camera update needed
[2026-10-28 16:29:55,018.018 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:29:55,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:29:55,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:29:55,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:29:57,071.071 INFO    ] ================================================
[2026-10-28 16:29:57,087.087 INFO    ] Launching Daemon at Wed Oct 28 16:29:57 IST 2026
[2026-10-28 16:29:57,098.098 INFO    ] ================================================
[2026-10-28 16:29:57,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:29:57
[2026-10-28 16:29:58,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:29:58,627.627 INFO    ] Initializing speech engine...
[2026-10-28 16:29:58,635.635 INFO    ] 2026-10-28 16:29:58
[2026-10-28 16:29:58,913.913 INFO    ] 2026-10-28 16:29:58
[2026-10-28 16:29:58,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:29:59,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:29:59,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:29:59,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:29:59,518.518 INFO    ] time= 28/10/2026 16:29:59
[2026-10-28 16:29:59,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:29:59,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:29:59,692.692 INFO    ] No existing commands found in stream
[2026-10-28 16:30:04,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:30:04,721.721 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-28 16:30:10,599.599 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:30:10,602.602 INFO    ] Checking for system updates...
[2026-10-28 16:30:10,643.643 INFO    ] 200
[2026-10-28 16:30:10,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:30:10,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:30:10,702.702 INFO    ] No update needed
[2026-10-28 16:30:10,705.705 INFO    ] Checking for camera pi updates...
[2026-10-28 16:30:10,743.743 INFO    ] 200
[2026-10-28 16:30:10,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:30:10,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:30:10,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:30:10,887.887 INFO    ] No camera update needed
[2026-10-28 16:30:10,890.890 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:30:10,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:30:10,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:30:10,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:30:12,945.945 INFO    ] ================================================
[2026-10-28 16:30:12,961.961 INFO    ] Launching Daemon at Wed Oct 28 16:30:12 IST 2026
[2026-10-28 16:30:12,973.973 INFO    ] ================================================
[2026-10-28 16:30:13,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:30:13
[2026-10-28 16:30:14,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:30:14,432.432 INFO    ] Initializing speech engine...
[2026-10-28 16:30:14,441.441 INFO    ] 2026-10-28 16:30:14
[2026-10-28 16:30:14,689.689 INFO    ] 2026-10-28 16:30:14
[2026-10-28 16:30:14,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:30:14,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:30:14,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:30:15,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:30:15,245.245 INFO    ] time= 28/10/2026 16:30:15
[2026-10-28 16:30:15,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:30:15,286.286 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:30:15,396.396 INFO    ] No existing commands found in stream
[2026-10-28 16:30:20,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:30:20,412.412 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-28 16:30:21,379.379 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:30:21,381.381 INFO    ] Checking for system updates...
[2026-10-28 16:30:21,418.418 INFO    ] 200
[2026-10-28 16:30:21,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:30:21,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:30:21,477.477 INFO    ] No update needed
[2026-10-28 16:30:21,479.479 INFO    ] Checking for camera pi updates...
[2026-10-28 16:30:21,515.515 INFO    ] 200
[2026-10-28 16:30:21,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:30:21,563.563 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:30:21,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:30:21,646.646 INFO    ] No camera update needed
[2026-10-28 16:30:21,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:30:21,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:30:21,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:30:21,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:30:23,703.703 INFO    ] ================================================
[2026-10-28 16:30:23,719.719 INFO    ] Launching Daemon at Wed Oct 28 16:30:23 IST 2026
[2026-10-28 16:30:23,730.730 INFO    ] ================================================
[2026-10-28 16:30:24,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:30:24
[2026-10-28 16:30:24,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:30:25,184.184 INFO    ] Initializing speech engine...
[2026-10-28 16:30:25,190.190 INFO    ] 2026-10-28 16:30:25
[2026-10-28 16:30:25,451.451 INFO    ] 2026-10-28 16:30:25
[2026-10-28 16:30:25,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:30:25,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:30:25,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:30:25,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:30:25,995.995 INFO    ] time= 28/10/2026 16:30:25
[2026-10-28 16:30:26,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:30:26,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:30:26,149.149 INFO    ] No existing commands found in stream
[2026-10-28 16:30:31,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:30:31,180.180 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-28 16:30:32,577.577 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:30:32,580.580 INFO    ] Checking for system updates...
[2026-10-28 16:30:32,623.623 INFO    ] 200
[2026-10-28 16:30:32,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:30:32,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:30:32,697.697 INFO    ] No update needed
[2026-10-28 16:30:32,700.700 INFO    ] Checking for camera pi updates...
[2026-10-28 16:30:32,744.744 INFO    ] 200
[2026-10-28 16:30:32,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:30:32,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:30:32,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:30:32,973.973 INFO    ] No camera update needed
[2026-10-28 16:30:32,976.976 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:30:32,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:30:32,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:30:32,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:30:35,034.034 INFO    ] ================================================
[2026-10-28 16:30:35,049.049 INFO    ] Launching Daemon at Wed Oct 28 16:30:35 IST 2026
[2026-10-28 16:30:35,059.059 INFO    ] ================================================
[2026-10-28 16:30:35,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:30:35
[2026-10-28 16:30:36,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:30:36,454.454 INFO    ] Initializing speech engine...
[2026-10-28 16:30:36,469.469 INFO    ] 2026-10-28 16:30:36
[2026-10-28 16:30:36,734.734 INFO    ] 2026-10-28 16:30:36
[2026-10-28 16:30:36,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:30:36,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:30:37,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:30:37,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:30:37,299.299 INFO    ] time= 28/10/2026 16:30:37
[2026-10-28 16:30:37,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:30:37,322.322 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:30:37,431.431 INFO    ] No existing commands found in stream
[2026-10-28 16:30:42,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:30:42,459.459 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 16:30:43,637.637 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:30:43,640.640 INFO    ] Checking for system updates...
[2026-10-28 16:30:43,675.675 INFO    ] 200
[2026-10-28 16:30:43,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:30:43,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:30:43,741.741 INFO    ] No update needed
[2026-10-28 16:30:43,743.743 INFO    ] Checking for camera pi updates...
[2026-10-28 16:30:43,776.776 INFO    ] 200
[2026-10-28 16:30:43,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:30:43,820.820 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:30:43,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:30:44,000.000 INFO    ] No camera update needed
[2026-10-28 16:30:44,003.003 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:30:44,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:30:44,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:30:44,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:30:46,056.056 INFO    ] ================================================
[2026-10-28 16:30:46,071.071 INFO    ] Launching Daemon at Wed Oct 28 16:30:46 IST 2026
[2026-10-28 16:30:46,082.082 INFO    ] ================================================
[2026-10-28 16:30:46,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:30:46
[2026-10-28 16:30:47,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:30:47,525.525 INFO    ] Initializing speech engine...
[2026-10-28 16:30:47,536.536 INFO    ] 2026-10-28 16:30:47
[2026-10-28 16:30:47,797.797 INFO    ] 2026-10-28 16:30:47
[2026-10-28 16:30:47,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:30:48,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:30:48,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:30:48,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:30:48,342.342 INFO    ] time= 28/10/2026 16:30:48
[2026-10-28 16:30:48,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:30:48,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:30:48,514.514 INFO    ] No existing commands found in stream
[2026-10-28 16:30:53,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:30:53,547.547 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-28 16:30:54,279.279 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:30:54,282.282 INFO    ] Checking for system updates...
[2026-10-28 16:30:54,321.321 INFO    ] 200
[2026-10-28 16:30:54,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:30:54,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:30:54,379.379 INFO    ] No update needed
[2026-10-28 16:30:54,381.381 INFO    ] Checking for camera pi updates...
[2026-10-28 16:30:54,416.416 INFO    ] 200
[2026-10-28 16:30:54,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:30:54,461.461 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:30:54,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:30:54,570.570 INFO    ] No camera update needed
[2026-10-28 16:30:54,573.573 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:30:54,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:30:54,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:30:54,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:30:56,626.626 INFO    ] ================================================
[2026-10-28 16:30:56,640.640 INFO    ] Launching Daemon at Wed Oct 28 16:30:56 IST 2026
[2026-10-28 16:30:56,651.651 INFO    ] ================================================
[2026-10-28 16:30:57,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:30:57
[2026-10-28 16:30:57,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:30:58,072.072 INFO    ] Initializing speech engine...
[2026-10-28 16:30:58,082.082 INFO    ] 2026-10-28 16:30:58
[2026-10-28 16:30:58,325.325 INFO    ] 2026-10-28 16:30:58
[2026-10-28 16:30:58,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:30:58,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:30:58,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:30:58,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:30:58,881.881 INFO    ] time= 28/10/2026 16:30:58
[2026-10-28 16:30:58,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:30:58,926.926 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:30:59,036.036 INFO    ] No existing commands found in stream
[2026-10-28 16:31:04,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:31:04,077.077 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-28 16:31:08,278.278 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:31:08,281.281 INFO    ] Checking for system updates...
[2026-10-28 16:31:08,320.320 INFO    ] 200
[2026-10-28 16:31:08,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:31:08,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:31:08,377.377 INFO    ] No update needed
[2026-10-28 16:31:08,380.380 INFO    ] Checking for camera pi updates...
[2026-10-28 16:31:08,413.413 INFO    ] 200
[2026-10-28 16:31:08,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:31:08,460.460 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:31:08,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:31:08,545.545 INFO    ] No camera update needed
[2026-10-28 16:31:08,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:31:08,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:31:08,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:31:08,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:31:10,602.602 INFO    ] ================================================
[2026-10-28 16:31:10,617.617 INFO    ] Launching Daemon at Wed Oct 28 16:31:10 IST 2026
[2026-10-28 16:31:10,628.628 INFO    ] ================================================
[2026-10-28 16:31:11,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:31:11
[2026-10-28 16:31:11,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:31:12,039.039 INFO    ] Initializing speech engine...
[2026-10-28 16:31:12,045.045 INFO    ] 2026-10-28 16:31:12
[2026-10-28 16:31:12,327.327 INFO    ] 2026-10-28 16:31:12
[2026-10-28 16:31:12,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:31:12,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:31:12,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:31:12,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:31:12,748.748 INFO    ] time= 28/10/2026 16:31:12
[2026-10-28 16:31:12,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:31:12,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:31:12,881.881 INFO    ] No existing commands found in stream
[2026-10-28 16:31:17,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:31:17,904.904 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-28 16:31:21,659.659 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:31:21,661.661 INFO    ] Checking for system updates...
[2026-10-28 16:31:21,701.701 INFO    ] 200
[2026-10-28 16:31:21,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:31:21,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:31:21,765.765 INFO    ] No update needed
[2026-10-28 16:31:21,768.768 INFO    ] Checking for camera pi updates...
[2026-10-28 16:31:21,801.801 INFO    ] 200
[2026-10-28 16:31:21,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:31:21,846.846 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:31:21,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:31:21,928.928 INFO    ] No camera update needed
[2026-10-28 16:31:21,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:31:21,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:31:21,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:31:21,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:31:23,983.983 INFO    ] ================================================
[2026-10-28 16:31:24,999.999 INFO    ] Launching Daemon at Wed Oct 28 16:31:23 IST 2026
[2026-10-28 16:31:24,010.010 INFO    ] ================================================
[2026-10-28 16:31:24,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:31:24
[2026-10-28 16:31:25,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:31:25,456.456 INFO    ] Initializing speech engine...
[2026-10-28 16:31:25,465.465 INFO    ] 2026-10-28 16:31:25
[2026-10-28 16:31:25,715.715 INFO    ] 2026-10-28 16:31:25
[2026-10-28 16:31:25,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:31:25,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:31:25,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:31:26,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:31:26,283.283 INFO    ] time= 28/10/2026 16:31:26
[2026-10-28 16:31:26,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:31:26,307.307 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:31:26,440.440 INFO    ] No existing commands found in stream
[2026-10-28 16:31:31,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:31:31,457.457 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-28 16:31:33,633.633 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:31:33,636.636 INFO    ] Checking for system updates...
[2026-10-28 16:31:33,671.671 INFO    ] 200
[2026-10-28 16:31:33,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:31:33,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:31:33,728.728 INFO    ] No update needed
[2026-10-28 16:31:33,731.731 INFO    ] Checking for camera pi updates...
[2026-10-28 16:31:33,768.768 INFO    ] 200
[2026-10-28 16:31:33,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:31:33,811.811 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:31:33,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:31:33,894.894 INFO    ] No camera update needed
[2026-10-28 16:31:33,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:31:33,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:31:33,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:31:33,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:31:35,949.949 INFO    ] ================================================
[2026-10-28 16:31:35,964.964 INFO    ] Launching Daemon at Wed Oct 28 16:31:35 IST 2026
[2026-10-28 16:31:35,976.976 INFO    ] ================================================
[2026-10-28 16:31:36,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:31:36
[2026-10-28 16:31:37,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:31:37,531.531 INFO    ] Initializing speech engine...
[2026-10-28 16:31:37,537.537 INFO    ] 2026-10-28 16:31:37
[2026-10-28 16:31:37,788.788 INFO    ] 2026-10-28 16:31:37
[2026-10-28 16:31:37,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:31:38,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:31:38,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:31:38,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:31:38,336.336 INFO    ] time= 28/10/2026 16:31:38
[2026-10-28 16:31:38,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:31:38,362.362 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:31:38,508.508 INFO    ] No existing commands found in stream
[2026-10-28 16:31:43,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:31:43,525.525 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-28 16:31:45,073.073 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:31:45,076.076 INFO    ] Checking for system updates...
[2026-10-28 16:31:45,115.115 INFO    ] 200
[2026-10-28 16:31:45,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:31:45,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:31:45,177.177 INFO    ] No update needed
[2026-10-28 16:31:45,179.179 INFO    ] Checking for camera pi updates...
[2026-10-28 16:31:45,213.213 INFO    ] 200
[2026-10-28 16:31:45,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:31:45,256.256 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:31:45,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:31:45,339.339 INFO    ] No camera update needed
[2026-10-28 16:31:45,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:31:45,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:31:45,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:31:45,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:31:47,396.396 INFO    ] ================================================
[2026-10-28 16:31:47,413.413 INFO    ] Launching Daemon at Wed Oct 28 16:31:47 IST 2026
[2026-10-28 16:31:47,425.425 INFO    ] ================================================
[2026-10-28 16:31:48,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:31:48
[2026-10-28 16:31:48,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:31:48,989.989 INFO    ] Initializing speech engine...
[2026-10-28 16:31:49,002.002 INFO    ] 2026-10-28 16:31:48
[2026-10-28 16:31:49,266.266 INFO    ] 2026-10-28 16:31:49
[2026-10-28 16:31:49,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:31:49,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:31:49,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:31:49,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:31:49,875.875 INFO    ] time= 28/10/2026 16:31:49
[2026-10-28 16:31:49,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:31:49,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:31:50,079.079 INFO    ] No existing commands found in stream
[2026-10-28 16:31:55,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:31:55,092.092 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-28 16:31:59,174.174 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:31:59,177.177 INFO    ] Checking for system updates...
[2026-10-28 16:31:59,213.213 INFO    ] 200
[2026-10-28 16:31:59,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:31:59,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:31:59,275.275 INFO    ] No update needed
[2026-10-28 16:31:59,277.277 INFO    ] Checking for camera pi updates...
[2026-10-28 16:31:59,314.314 INFO    ] 200
[2026-10-28 16:31:59,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:31:59,359.359 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:31:59,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:31:59,463.463 INFO    ] No camera update needed
[2026-10-28 16:31:59,465.465 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:31:59,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:31:59,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:31:59,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:32:01,536.536 INFO    ] ================================================
[2026-10-28 16:32:01,566.566 INFO    ] Launching Daemon at Wed Oct 28 16:32:01 IST 2026
[2026-10-28 16:32:01,594.594 INFO    ] ================================================
[2026-10-28 16:32:02,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:32:02
[2026-10-28 16:32:03,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:32:03,308.308 INFO    ] Initializing speech engine...
[2026-10-28 16:32:03,319.319 INFO    ] 2026-10-28 16:32:03
[2026-10-28 16:32:03,607.607 INFO    ] 2026-10-28 16:32:03
[2026-10-28 16:32:03,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:32:03,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:32:03,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:32:04,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:32:04,118.118 INFO    ] time= 28/10/2026 16:32:04
[2026-10-28 16:32:04,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:32:04,222.222 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:32:04,323.323 INFO    ] No existing commands found in stream
[2026-10-28 16:32:09,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:32:09,338.338 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 16:32:10,052.052 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:32:10,055.055 INFO    ] Checking for system updates...
[2026-10-28 16:32:10,091.091 INFO    ] 200
[2026-10-28 16:32:10,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:32:10,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:32:10,158.158 INFO    ] No update needed
[2026-10-28 16:32:10,160.160 INFO    ] Checking for camera pi updates...
[2026-10-28 16:32:10,198.198 INFO    ] 200
[2026-10-28 16:32:10,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:32:10,247.247 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:32:10,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:32:10,342.342 INFO    ] No camera update needed
[2026-10-28 16:32:10,345.345 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:32:10,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:32:10,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:32:10,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:32:12,397.397 INFO    ] ================================================
[2026-10-28 16:32:12,413.413 INFO    ] Launching Daemon at Wed Oct 28 16:32:12 IST 2026
[2026-10-28 16:32:12,424.424 INFO    ] ================================================
[2026-10-28 16:32:13,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:32:13
[2026-10-28 16:32:13,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:32:13,988.988 INFO    ] Initializing speech engine...
[2026-10-28 16:32:13,993.993 INFO    ] 2026-10-28 16:32:13
[2026-10-28 16:32:14,248.248 INFO    ] 2026-10-28 16:32:14
[2026-10-28 16:32:14,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:32:14,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:32:14,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:32:14,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:32:14,815.815 INFO    ] time= 28/10/2026 16:32:14
[2026-10-28 16:32:14,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:32:14,851.851 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:32:14,953.953 INFO    ] No existing commands found in stream
[2026-10-28 16:32:19,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:32:19,972.972 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 16:32:23,356.356 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:32:23,358.358 INFO    ] Checking for system updates...
[2026-10-28 16:32:23,395.395 INFO    ] 200
[2026-10-28 16:32:23,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:32:23,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:32:23,461.461 INFO    ] No update needed
[2026-10-28 16:32:23,464.464 INFO    ] Checking for camera pi updates...
[2026-10-28 16:32:23,503.503 INFO    ] 200
[2026-10-28 16:32:23,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:32:23,552.552 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:32:23,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:32:23,654.654 INFO    ] No camera update needed
[2026-10-28 16:32:23,656.656 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:32:23,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:32:23,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:32:23,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:32:25,711.711 INFO    ] ================================================
[2026-10-28 16:32:25,727.727 INFO    ] Launching Daemon at Wed Oct 28 16:32:25 IST 2026
[2026-10-28 16:32:25,738.738 INFO    ] ================================================
[2026-10-28 16:32:26,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:32:26
[2026-10-28 16:32:26,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:32:27,150.150 INFO    ] Initializing speech engine...
[2026-10-28 16:32:27,156.156 INFO    ] 2026-10-28 16:32:27
[2026-10-28 16:32:27,458.458 INFO    ] 2026-10-28 16:32:27
[2026-10-28 16:32:27,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:32:27,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:32:27,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:32:27,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:32:28,002.002 INFO    ] time= 28/10/2026 16:32:27
[2026-10-28 16:32:28,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:32:28,114.114 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:32:28,246.246 INFO    ] No existing commands found in stream
[2026-10-28 16:32:33,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:32:33,271.271 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-10-28 16:32:35,842.842 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:32:35,844.844 INFO    ] Checking for system updates...
[2026-10-28 16:32:35,881.881 INFO    ] 200
[2026-10-28 16:32:35,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:32:35,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:32:35,940.940 INFO    ] No update needed
[2026-10-28 16:32:35,943.943 INFO    ] Checking for camera pi updates...
[2026-10-28 16:32:35,981.981 INFO    ] 200
[2026-10-28 16:32:35,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:32:36,025.025 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:32:36,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:32:36,135.135 INFO    ] No camera update needed
[2026-10-28 16:32:36,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:32:36,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:32:36,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:32:36,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:32:38,191.191 INFO    ] ================================================
[2026-10-28 16:32:38,206.206 INFO    ] Launching Daemon at Wed Oct 28 16:32:38 IST 2026
[2026-10-28 16:32:38,217.217 INFO    ] ================================================
[2026-10-28 16:32:38,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:32:38
[2026-10-28 16:32:39,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:32:39,835.835 INFO    ] Initializing speech engine...
[2026-10-28 16:32:39,843.843 INFO    ] 2026-10-28 16:32:39
[2026-10-28 16:32:40,096.096 INFO    ] 2026-10-28 16:32:40
[2026-10-28 16:32:40,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:32:40,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:32:40,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:32:40,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:32:40,664.664 INFO    ] time= 28/10/2026 16:32:40
[2026-10-28 16:32:40,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:32:40,688.688 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:32:40,839.839 INFO    ] No existing commands found in stream
[2026-10-28 16:32:45,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:32:45,868.868 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 16:32:49,412.412 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:32:49,415.415 INFO    ] Checking for system updates...
[2026-10-28 16:32:49,456.456 INFO    ] 200
[2026-10-28 16:32:49,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:32:49,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:32:49,522.522 INFO    ] No update needed
[2026-10-28 16:32:49,526.526 INFO    ] Checking for camera pi updates...
[2026-10-28 16:32:49,564.564 INFO    ] 200
[2026-10-28 16:32:49,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:32:49,614.614 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:32:49,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:32:49,802.802 INFO    ] No camera update needed
[2026-10-28 16:32:49,804.804 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:32:49,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:32:49,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:32:49,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:32:51,862.862 INFO    ] ================================================
[2026-10-28 16:32:51,877.877 INFO    ] Launching Daemon at Wed Oct 28 16:32:51 IST 2026
[2026-10-28 16:32:51,888.888 INFO    ] ================================================
[2026-10-28 16:32:52,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:32:52
[2026-10-28 16:32:53,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:32:53,322.322 INFO    ] Initializing speech engine...
[2026-10-28 16:32:53,329.329 INFO    ] 2026-10-28 16:32:53
[2026-10-28 16:32:53,624.624 INFO    ] 2026-10-28 16:32:53
[2026-10-28 16:32:53,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:32:53,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:32:53,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:32:54,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:32:54,227.227 INFO    ] time= 28/10/2026 16:32:54
[2026-10-28 16:32:54,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:32:54,269.269 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:32:54,410.410 INFO    ] No existing commands found in stream
[2026-10-28 16:32:59,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:32:59,443.443 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 16:33:00,295.295 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:33:00,297.297 INFO    ] Checking for system updates...
[2026-10-28 16:33:00,334.334 INFO    ] 200
[2026-10-28 16:33:00,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:33:00,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:33:00,397.397 INFO    ] No update needed
[2026-10-28 16:33:00,399.399 INFO    ] Checking for camera pi updates...
[2026-10-28 16:33:00,436.436 INFO    ] 200
[2026-10-28 16:33:00,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:33:00,484.484 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:33:00,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:33:00,568.568 INFO    ] No camera update needed
[2026-10-28 16:33:00,570.570 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:33:00,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:33:00,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:33:00,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:33:02,645.645 INFO    ] ================================================
[2026-10-28 16:33:02,666.666 INFO    ] Launching Daemon at Wed Oct 28 16:33:02 IST 2026
[2026-10-28 16:33:02,682.682 INFO    ] ================================================
[2026-10-28 16:33:03,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:33:03
[2026-10-28 16:33:03,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:33:04,232.232 INFO    ] Initializing speech engine...
[2026-10-28 16:33:04,245.245 INFO    ] 2026-10-28 16:33:04
[2026-10-28 16:33:04,509.509 INFO    ] 2026-10-28 16:33:04
[2026-10-28 16:33:04,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:33:04,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:33:04,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:33:05,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:33:05,070.070 INFO    ] time= 28/10/2026 16:33:05
[2026-10-28 16:33:05,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:33:05,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:33:05,226.226 INFO    ] No existing commands found in stream
[2026-10-28 16:33:10,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:33:10,257.257 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 16:33:11,971.971 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:33:11,974.974 INFO    ] Checking for system updates...
[2026-10-28 16:33:12,012.012 INFO    ] 200
[2026-10-28 16:33:12,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:33:12,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:33:12,077.077 INFO    ] No update needed
[2026-10-28 16:33:12,080.080 INFO    ] Checking for camera pi updates...
[2026-10-28 16:33:12,116.116 INFO    ] 200
[2026-10-28 16:33:12,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:33:12,160.160 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:33:12,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:33:12,254.254 INFO    ] No camera update needed
[2026-10-28 16:33:12,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:33:12,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:33:12,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:33:12,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:33:14,311.311 INFO    ] ================================================
[2026-10-28 16:33:14,327.327 INFO    ] Launching Daemon at Wed Oct 28 16:33:14 IST 2026
[2026-10-28 16:33:14,338.338 INFO    ] ================================================
[2026-10-28 16:33:14,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:33:14
[2026-10-28 16:33:15,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:33:15,744.744 INFO    ] Initializing speech engine...
[2026-10-28 16:33:15,758.758 INFO    ] 2026-10-28 16:33:15
[2026-10-28 16:33:16,021.021 INFO    ] 2026-10-28 16:33:16
[2026-10-28 16:33:16,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:33:16,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:33:16,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:33:16,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:33:16,484.484 INFO    ] time= 28/10/2026 16:33:16
[2026-10-28 16:33:16,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:33:16,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:33:16,726.726 INFO    ] No existing commands found in stream
[2026-10-28 16:33:21,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:33:21,739.739 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-28 16:33:26,016.016 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:33:26,019.019 INFO    ] Checking for system updates...
[2026-10-28 16:33:26,054.054 INFO    ] 200
[2026-10-28 16:33:26,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:33:26,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:33:26,111.111 INFO    ] No update needed
[2026-10-28 16:33:26,113.113 INFO    ] Checking for camera pi updates...
[2026-10-28 16:33:26,151.151 INFO    ] 200
[2026-10-28 16:33:26,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:33:26,198.198 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:33:26,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:33:26,286.286 INFO    ] No camera update needed
[2026-10-28 16:33:26,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:33:26,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:33:26,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:33:26,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:33:28,343.343 INFO    ] ================================================
[2026-10-28 16:33:28,359.359 INFO    ] Launching Daemon at Wed Oct 28 16:33:28 IST 2026
[2026-10-28 16:33:28,370.370 INFO    ] ================================================
[2026-10-28 16:33:28,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:33:28
[2026-10-28 16:33:29,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:33:29,811.811 INFO    ] Initializing speech engine...
[2026-10-28 16:33:29,831.831 INFO    ] 2026-10-28 16:33:29
[2026-10-28 16:33:30,090.090 INFO    ] 2026-10-28 16:33:30
[2026-10-28 16:33:30,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:33:30,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:33:30,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:33:30,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:33:30,661.661 INFO    ] time= 28/10/2026 16:33:30
[2026-10-28 16:33:30,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:33:30,691.691 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:33:30,842.842 INFO    ] No existing commands found in stream
[2026-10-28 16:33:35,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:33:35,875.875 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 16:33:38,728.728 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:33:38,731.731 INFO    ] Checking for system updates...
[2026-10-28 16:33:38,770.770 INFO    ] 200
[2026-10-28 16:33:38,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:33:38,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:33:38,833.833 INFO    ] No update needed
[2026-10-28 16:33:38,835.835 INFO    ] Checking for camera pi updates...
[2026-10-28 16:33:38,872.872 INFO    ] 200
[2026-10-28 16:33:38,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:33:38,918.918 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:33:39,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:33:39,010.010 INFO    ] No camera update needed
[2026-10-28 16:33:39,012.012 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:33:39,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:33:39,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:33:39,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:33:41,064.064 INFO    ] ================================================
[2026-10-28 16:33:41,079.079 INFO    ] Launching Daemon at Wed Oct 28 16:33:41 IST 2026
[2026-10-28 16:33:41,090.090 INFO    ] ================================================
[2026-10-28 16:33:41,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:33:41
[2026-10-28 16:33:42,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:33:42,556.556 INFO    ] Initializing speech engine...
[2026-10-28 16:33:42,563.563 INFO    ] 2026-10-28 16:33:42
[2026-10-28 16:33:42,827.827 INFO    ] 2026-10-28 16:33:42
[2026-10-28 16:33:42,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:33:43,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:33:43,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:33:43,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:33:43,383.383 INFO    ] time= 28/10/2026 16:33:43
[2026-10-28 16:33:43,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:33:43,419.419 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:33:43,531.531 INFO    ] No existing commands found in stream
[2026-10-28 16:33:48,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:33:48,549.549 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 16:33:52,010.010 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:33:52,013.013 INFO    ] Checking for system updates...
[2026-10-28 16:33:52,052.052 INFO    ] 200
[2026-10-28 16:33:52,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:33:52,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:33:52,117.117 INFO    ] No update needed
[2026-10-28 16:33:52,119.119 INFO    ] Checking for camera pi updates...
[2026-10-28 16:33:52,152.152 INFO    ] 200
[2026-10-28 16:33:52,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:33:52,195.195 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:33:52,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:33:52,279.279 INFO    ] No camera update needed
[2026-10-28 16:33:52,282.282 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:33:52,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:33:52,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:33:52,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:33:54,334.334 INFO    ] ================================================
[2026-10-28 16:33:54,349.349 INFO    ] Launching Daemon at Wed Oct 28 16:33:54 IST 2026
[2026-10-28 16:33:54,361.361 INFO    ] ================================================
[2026-10-28 16:33:54,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:33:54
[2026-10-28 16:33:55,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:33:55,765.765 INFO    ] Initializing speech engine...
[2026-10-28 16:33:55,779.779 INFO    ] 2026-10-28 16:33:55
[2026-10-28 16:33:56,046.046 INFO    ] 2026-10-28 16:33:56
[2026-10-28 16:33:56,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:33:56,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:33:56,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:33:56,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:33:56,611.611 INFO    ] time= 28/10/2026 16:33:56
[2026-10-28 16:33:56,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:33:56,636.636 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:33:56,771.771 INFO    ] No existing commands found in stream
[2026-10-28 16:34:01,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:34:01,793.793 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 16:34:02,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:34:02,524.524 INFO    ] Checking for system updates...
[2026-10-28 16:34:02,569.569 INFO    ] 200
[2026-10-28 16:34:02,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:34:02,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:34:02,657.657 INFO    ] No update needed
[2026-10-28 16:34:02,660.660 INFO    ] Checking for camera pi updates...
[2026-10-28 16:34:02,701.701 INFO    ] 200
[2026-10-28 16:34:02,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:34:02,758.758 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:34:02,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:34:02,869.869 INFO    ] No camera update needed
[2026-10-28 16:34:02,872.872 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:34:02,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:34:02,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:34:02,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:34:04,928.928 INFO    ] ================================================
[2026-10-28 16:34:04,943.943 INFO    ] Launching Daemon at Wed Oct 28 16:34:04 IST 2026
[2026-10-28 16:34:04,955.955 INFO    ] ================================================
[2026-10-28 16:34:05,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:34:05
[2026-10-28 16:34:06,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:34:06,610.610 INFO    ] Initializing speech engine...
[2026-10-28 16:34:06,624.624 INFO    ] 2026-10-28 16:34:06
[2026-10-28 16:34:06,937.937 INFO    ] 2026-10-28 16:34:06
[2026-10-28 16:34:07,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:34:07,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:34:07,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:34:07,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:34:07,660.660 INFO    ] time= 28/10/2026 16:34:07
[2026-10-28 16:34:07,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:34:07,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:34:07,883.883 INFO    ] No existing commands found in stream
[2026-10-28 16:34:12,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:34:12,906.906 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 16:34:15,972.972 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:34:15,976.976 INFO    ] Checking for system updates...
[2026-10-28 16:34:16,017.017 INFO    ] 200
[2026-10-28 16:34:16,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:34:16,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:34:16,084.084 INFO    ] No update needed
[2026-10-28 16:34:16,087.087 INFO    ] Checking for camera pi updates...
[2026-10-28 16:34:16,126.126 INFO    ] 200
[2026-10-28 16:34:16,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:34:16,176.176 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:34:16,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:34:16,265.265 INFO    ] No camera update needed
[2026-10-28 16:34:16,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:34:16,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:34:16,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:34:16,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:34:18,327.327 INFO    ] ================================================
[2026-10-28 16:34:18,343.343 INFO    ] Launching Daemon at Wed Oct 28 16:34:18 IST 2026
[2026-10-28 16:34:18,354.354 INFO    ] ================================================
[2026-10-28 16:34:19,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:34:19
[2026-10-28 16:34:19,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:34:20,011.011 INFO    ] Initializing speech engine...
[2026-10-28 16:34:20,024.024 INFO    ] 2026-10-28 16:34:20
[2026-10-28 16:34:20,345.345 INFO    ] 2026-10-28 16:34:20
[2026-10-28 16:34:20,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:34:20,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:34:20,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:34:20,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:34:20,881.881 INFO    ] time= 28/10/2026 16:34:20
[2026-10-28 16:34:20,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:34:20,922.922 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:34:21,042.042 INFO    ] No existing commands found in stream
[2026-10-28 16:34:26,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:34:26,082.082 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-28 16:34:26,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:34:26,732.732 INFO    ] Checking for system updates...
[2026-10-28 16:34:26,769.769 INFO    ] 200
[2026-10-28 16:34:26,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:34:26,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:34:26,826.826 INFO    ] No update needed
[2026-10-28 16:34:26,829.829 INFO    ] Checking for camera pi updates...
[2026-10-28 16:34:26,862.862 INFO    ] 200
[2026-10-28 16:34:26,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:34:26,905.905 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:34:26,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:34:26,990.990 INFO    ] No camera update needed
[2026-10-28 16:34:26,992.992 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:34:26,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:34:27,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:34:27,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:34:29,044.044 INFO    ] ================================================
[2026-10-28 16:34:29,059.059 INFO    ] Launching Daemon at Wed Oct 28 16:34:29 IST 2026
[2026-10-28 16:34:29,071.071 INFO    ] ================================================
[2026-10-28 16:34:29,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:34:29
[2026-10-28 16:34:30,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:34:30,519.519 INFO    ] Initializing speech engine...
[2026-10-28 16:34:30,530.530 INFO    ] 2026-10-28 16:34:30
[2026-10-28 16:34:30,794.794 INFO    ] 2026-10-28 16:34:30
[2026-10-28 16:34:30,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:34:31,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:34:31,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:34:31,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:34:31,333.333 INFO    ] time= 28/10/2026 16:34:31
[2026-10-28 16:34:31,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:34:31,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:34:31,590.590 INFO    ] No existing commands found in stream
[2026-10-28 16:34:36,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:34:36,618.618 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-28 16:34:38,639.639 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:34:38,642.642 INFO    ] Checking for system updates...
[2026-10-28 16:34:38,683.683 INFO    ] 200
[2026-10-28 16:34:38,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:34:38,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:34:38,743.743 INFO    ] No update needed
[2026-10-28 16:34:38,746.746 INFO    ] Checking for camera pi updates...
[2026-10-28 16:34:38,780.780 INFO    ] 200
[2026-10-28 16:34:38,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:34:38,828.828 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:34:38,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:34:38,900.900 INFO    ] No camera update needed
[2026-10-28 16:34:38,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:34:38,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:34:38,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:34:38,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:34:40,958.958 INFO    ] ================================================
[2026-10-28 16:34:40,973.973 INFO    ] Launching Daemon at Wed Oct 28 16:34:40 IST 2026
[2026-10-28 16:34:40,985.985 INFO    ] ================================================
[2026-10-28 16:34:41,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:34:41
[2026-10-28 16:34:42,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:34:42,436.436 INFO    ] Initializing speech engine...
[2026-10-28 16:34:42,442.442 INFO    ] 2026-10-28 16:34:42
[2026-10-28 16:34:42,699.699 INFO    ] 2026-10-28 16:34:42
[2026-10-28 16:34:42,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:34:43,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:34:43,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:34:43,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:34:43,256.256 INFO    ] time= 28/10/2026 16:34:43
[2026-10-28 16:34:43,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:34:43,290.290 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:34:43,421.421 INFO    ] No existing commands found in stream
[2026-10-28 16:34:48,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:34:48,448.448 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-28 16:34:51,647.647 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:34:51,650.650 INFO    ] Checking for system updates...
[2026-10-28 16:34:51,685.685 INFO    ] 200
[2026-10-28 16:34:51,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:34:51,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:34:51,749.749 INFO    ] No update needed
[2026-10-28 16:34:51,751.751 INFO    ] Checking for camera pi updates...
[2026-10-28 16:34:51,784.784 INFO    ] 200
[2026-10-28 16:34:51,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:34:51,828.828 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:34:51,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:34:51,911.911 INFO    ] No camera update needed
[2026-10-28 16:34:51,913.913 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:34:51,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:34:51,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:34:51,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:34:53,967.967 INFO    ] ================================================
[2026-10-28 16:34:53,982.982 INFO    ] Launching Daemon at Wed Oct 28 16:34:53 IST 2026
[2026-10-28 16:34:53,993.993 INFO    ] ================================================
[2026-10-28 16:34:54,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:34:54
[2026-10-28 16:34:55,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:34:55,473.473 INFO    ] Initializing speech engine...
[2026-10-28 16:34:55,483.483 INFO    ] 2026-10-28 16:34:55
[2026-10-28 16:34:55,756.756 INFO    ] 2026-10-28 16:34:55
[2026-10-28 16:34:55,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:34:56,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:34:56,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:34:56,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:34:56,382.382 INFO    ] time= 28/10/2026 16:34:56
[2026-10-28 16:34:56,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:34:56,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:34:56,554.554 INFO    ] No existing commands found in stream
[2026-10-28 16:35:01,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:35:01,580.580 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-28 16:35:02,480.480 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:35:02,484.484 INFO    ] Checking for system updates...
[2026-10-28 16:35:02,535.535 INFO    ] 200
[2026-10-28 16:35:02,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:35:02,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:35:02,612.612 INFO    ] No update needed
[2026-10-28 16:35:02,616.616 INFO    ] Checking for camera pi updates...
[2026-10-28 16:35:02,655.655 INFO    ] 200
[2026-10-28 16:35:02,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:35:02,715.715 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:35:02,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:35:02,931.931 INFO    ] No camera update needed
[2026-10-28 16:35:02,934.934 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:35:02,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:35:02,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:35:02,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:35:04,993.993 INFO    ] ================================================
[2026-10-28 16:35:05,008.008 INFO    ] Launching Daemon at Wed Oct 28 16:35:05 IST 2026
[2026-10-28 16:35:05,019.019 INFO    ] ================================================
[2026-10-28 16:35:05,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:35:05
[2026-10-28 16:35:06,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:35:06,668.668 INFO    ] Initializing speech engine...
[2026-10-28 16:35:06,680.680 INFO    ] 2026-10-28 16:35:06
[2026-10-28 16:35:06,972.972 INFO    ] 2026-10-28 16:35:06
[2026-10-28 16:35:07,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:35:07,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:35:07,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:35:07,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:35:07,547.547 INFO    ] time= 28/10/2026 16:35:07
[2026-10-28 16:35:07,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:35:07,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:35:07,726.726 INFO    ] No existing commands found in stream
[2026-10-28 16:35:12,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:35:12,766.766 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-28 16:35:15,231.231 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:35:15,234.234 INFO    ] Checking for system updates...
[2026-10-28 16:35:15,274.274 INFO    ] 200
[2026-10-28 16:35:15,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:35:15,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:35:15,341.341 INFO    ] No update needed
[2026-10-28 16:35:15,344.344 INFO    ] Checking for camera pi updates...
[2026-10-28 16:35:15,390.390 INFO    ] 200
[2026-10-28 16:35:15,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:35:15,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:35:15,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:35:15,524.524 INFO    ] No camera update needed
[2026-10-28 16:35:15,527.527 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:35:15,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:35:15,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:35:15,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:35:17,580.580 INFO    ] ================================================
[2026-10-28 16:35:17,598.598 INFO    ] Launching Daemon at Wed Oct 28 16:35:17 IST 2026
[2026-10-28 16:35:17,609.609 INFO    ] ================================================
[2026-10-28 16:35:18,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:35:18
[2026-10-28 16:35:18,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:35:19,021.021 INFO    ] Initializing speech engine...
[2026-10-28 16:35:19,027.027 INFO    ] 2026-10-28 16:35:19
[2026-10-28 16:35:19,322.322 INFO    ] 2026-10-28 16:35:19
[2026-10-28 16:35:19,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:35:19,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:35:19,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:35:19,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:35:19,966.966 INFO    ] time= 28/10/2026 16:35:19
[2026-10-28 16:35:19,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:35:19,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:35:20,145.145 INFO    ] No existing commands found in stream
[2026-10-28 16:35:25,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:35:25,164.164 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-28 16:35:28,669.669 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:35:28,671.671 INFO    ] Checking for system updates...
[2026-10-28 16:35:28,711.711 INFO    ] 200
[2026-10-28 16:35:28,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:35:28,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:35:28,768.768 INFO    ] No update needed
[2026-10-28 16:35:28,771.771 INFO    ] Checking for camera pi updates...
[2026-10-28 16:35:28,805.805 INFO    ] 200
[2026-10-28 16:35:28,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:35:28,854.854 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:35:29,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:35:29,033.033 INFO    ] No camera update needed
[2026-10-28 16:35:29,036.036 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:35:29,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:35:29,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:35:29,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:35:31,089.089 INFO    ] ================================================
[2026-10-28 16:35:31,104.104 INFO    ] Launching Daemon at Wed Oct 28 16:35:31 IST 2026
[2026-10-28 16:35:31,114.114 INFO    ] ================================================
[2026-10-28 16:35:31,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:35:31
[2026-10-28 16:35:32,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:35:32,643.643 INFO    ] Initializing speech engine...
[2026-10-28 16:35:32,648.648 INFO    ] 2026-10-28 16:35:32
[2026-10-28 16:35:32,952.952 INFO    ] 2026-10-28 16:35:32
[2026-10-28 16:35:32,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:35:33,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:35:33,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:35:33,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:35:33,514.514 INFO    ] time= 28/10/2026 16:35:33
[2026-10-28 16:35:33,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:35:33,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:35:33,734.734 INFO    ] No existing commands found in stream
[2026-10-28 16:35:38,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:35:38,759.759 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 16:35:43,314.314 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:35:43,317.317 INFO    ] Checking for system updates...
[2026-10-28 16:35:43,354.354 INFO    ] 200
[2026-10-28 16:35:43,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:35:43,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:35:43,413.413 INFO    ] No update needed
[2026-10-28 16:35:43,416.416 INFO    ] Checking for camera pi updates...
[2026-10-28 16:35:43,451.451 INFO    ] 200
[2026-10-28 16:35:43,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:35:43,500.500 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:35:43,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:35:43,581.581 INFO    ] No camera update needed
[2026-10-28 16:35:43,584.584 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:35:43,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:35:43,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:35:43,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:35:45,640.640 INFO    ] ================================================
[2026-10-28 16:35:45,656.656 INFO    ] Launching Daemon at Wed Oct 28 16:35:45 IST 2026
[2026-10-28 16:35:45,666.666 INFO    ] ================================================
[2026-10-28 16:35:46,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:35:46
[2026-10-28 16:35:46,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:35:47,064.064 INFO    ] Initializing speech engine...
[2026-10-28 16:35:47,087.087 INFO    ] 2026-10-28 16:35:47
[2026-10-28 16:35:47,346.346 INFO    ] 2026-10-28 16:35:47
[2026-10-28 16:35:47,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:35:47,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:35:47,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:35:47,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:35:47,913.913 INFO    ] time= 28/10/2026 16:35:47
[2026-10-28 16:35:47,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:35:47,944.944 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:35:48,106.106 INFO    ] No existing commands found in stream
[2026-10-28 16:35:53,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:35:53,134.134 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 16:35:54,484.484 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:35:54,487.487 INFO    ] Checking for system updates...
[2026-10-28 16:35:54,523.523 INFO    ] 200
[2026-10-28 16:35:54,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:35:54,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:35:54,587.587 INFO    ] No update needed
[2026-10-28 16:35:54,589.589 INFO    ] Checking for camera pi updates...
[2026-10-28 16:35:54,627.627 INFO    ] 200
[2026-10-28 16:35:54,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:35:54,669.669 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:35:54,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:35:54,757.757 INFO    ] No camera update needed
[2026-10-28 16:35:54,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:35:54,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:35:54,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:35:54,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:35:56,818.818 INFO    ] ================================================
[2026-10-28 16:35:56,834.834 INFO    ] Launching Daemon at Wed Oct 28 16:35:56 IST 2026
[2026-10-28 16:35:56,845.845 INFO    ] ================================================
[2026-10-28 16:35:57,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:35:57
[2026-10-28 16:35:58,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:35:58,262.262 INFO    ] Initializing speech engine...
[2026-10-28 16:35:58,271.271 INFO    ] 2026-10-28 16:35:58
[2026-10-28 16:35:58,567.567 INFO    ] 2026-10-28 16:35:58
[2026-10-28 16:35:58,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:35:58,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:35:58,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:35:59,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:35:59,079.079 INFO    ] time= 28/10/2026 16:35:59
[2026-10-28 16:35:59,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:35:59,193.193 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:35:59,281.281 INFO    ] No existing commands found in stream
[2026-10-28 16:36:04,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:36:04,296.296 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-28 16:36:07,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:36:07,639.639 INFO    ] Checking for system updates...
[2026-10-28 16:36:07,674.674 INFO    ] 200
[2026-10-28 16:36:07,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:36:07,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:36:07,740.740 INFO    ] No update needed
[2026-10-28 16:36:07,742.742 INFO    ] Checking for camera pi updates...
[2026-10-28 16:36:07,779.779 INFO    ] 200
[2026-10-28 16:36:07,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:36:07,827.827 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:36:07,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:36:07,917.917 INFO    ] No camera update needed
[2026-10-28 16:36:07,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:36:07,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:36:07,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:36:07,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:36:09,974.974 INFO    ] ================================================
[2026-10-28 16:36:09,989.989 INFO    ] Launching Daemon at Wed Oct 28 16:36:09 IST 2026
[2026-10-28 16:36:10,000.000 INFO    ] ================================================
[2026-10-28 16:36:10,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:36:10
[2026-10-28 16:36:11,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:36:11,457.457 INFO    ] Initializing speech engine...
[2026-10-28 16:36:11,465.465 INFO    ] 2026-10-28 16:36:11
[2026-10-28 16:36:11,729.729 INFO    ] 2026-10-28 16:36:11
[2026-10-28 16:36:11,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:36:12,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:36:12,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:36:12,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:36:12,292.292 INFO    ] time= 28/10/2026 16:36:12
[2026-10-28 16:36:12,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:36:12,328.328 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:36:12,462.462 INFO    ] No existing commands found in stream
[2026-10-28 16:36:17,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:36:17,500.500 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-28 16:36:18,852.852 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:36:18,854.854 INFO    ] Checking for system updates...
[2026-10-28 16:36:18,890.890 INFO    ] 200
[2026-10-28 16:36:18,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:36:18,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:36:18,956.956 INFO    ] No update needed
[2026-10-28 16:36:18,958.958 INFO    ] Checking for camera pi updates...
[2026-10-28 16:36:18,992.992 INFO    ] 200
[2026-10-28 16:36:18,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:36:19,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:36:19,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:36:19,167.167 INFO    ] No camera update needed
[2026-10-28 16:36:19,170.170 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:36:19,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:36:19,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:36:19,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:36:21,225.225 INFO    ] ================================================
[2026-10-28 16:36:21,241.241 INFO    ] Launching Daemon at Wed Oct 28 16:36:21 IST 2026
[2026-10-28 16:36:21,252.252 INFO    ] ================================================
[2026-10-28 16:36:21,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:36:21
[2026-10-28 16:36:22,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:36:22,897.897 INFO    ] Initializing speech engine...
[2026-10-28 16:36:22,911.911 INFO    ] 2026-10-28 16:36:22
[2026-10-28 16:36:23,221.221 INFO    ] 2026-10-28 16:36:23
[2026-10-28 16:36:23,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:36:23,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:36:23,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:36:23,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:36:24,028.028 INFO    ] time= 28/10/2026 16:36:23
[2026-10-28 16:36:24,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:36:24,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:36:24,296.296 INFO    ] No existing commands found in stream
[2026-10-28 16:36:29,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:36:29,310.310 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-28 16:36:31,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:36:31,275.275 INFO    ] Checking for system updates...
[2026-10-28 16:36:31,317.317 INFO    ] 200
[2026-10-28 16:36:31,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:36:31,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:36:31,401.401 INFO    ] No update needed
[2026-10-28 16:36:31,404.404 INFO    ] Checking for camera pi updates...
[2026-10-28 16:36:31,441.441 INFO    ] 200
[2026-10-28 16:36:31,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:36:31,489.489 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:36:31,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:36:31,576.576 INFO    ] No camera update needed
[2026-10-28 16:36:31,579.579 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:36:31,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:36:31,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:36:31,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:36:33,634.634 INFO    ] ================================================
[2026-10-28 16:36:33,649.649 INFO    ] Launching Daemon at Wed Oct 28 16:36:33 IST 2026
[2026-10-28 16:36:33,661.661 INFO    ] ================================================
[2026-10-28 16:36:34,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:36:34
[2026-10-28 16:36:34,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:36:35,080.080 INFO    ] Initializing speech engine...
[2026-10-28 16:36:35,091.091 INFO    ] 2026-10-28 16:36:35
[2026-10-28 16:36:35,349.349 INFO    ] 2026-10-28 16:36:35
[2026-10-28 16:36:35,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:36:35,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:36:35,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:36:35,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:36:35,902.902 INFO    ] time= 28/10/2026 16:36:35
[2026-10-28 16:36:35,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:36:35,926.926 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:36:36,039.039 INFO    ] No existing commands found in stream
[2026-10-28 16:36:41,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:36:41,066.066 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 16:36:43,994.994 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:36:44,000.000 INFO    ] Checking for system updates...
[2026-10-28 16:36:44,036.036 INFO    ] 200
[2026-10-28 16:36:44,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:36:44,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:36:44,103.103 INFO    ] No update needed
[2026-10-28 16:36:44,106.106 INFO    ] Checking for camera pi updates...
[2026-10-28 16:36:44,141.141 INFO    ] 200
[2026-10-28 16:36:44,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:36:44,190.190 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:36:44,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:36:44,288.288 INFO    ] No camera update needed
[2026-10-28 16:36:44,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:36:44,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:36:44,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:36:44,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:36:46,348.348 INFO    ] ================================================
[2026-10-28 16:36:46,365.365 INFO    ] Launching Daemon at Wed Oct 28 16:36:46 IST 2026
[2026-10-28 16:36:46,376.376 INFO    ] ================================================
[2026-10-28 16:36:46,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:36:46
[2026-10-28 16:36:47,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:36:47,797.797 INFO    ] Initializing speech engine...
[2026-10-28 16:36:47,808.808 INFO    ] 2026-10-28 16:36:47
[2026-10-28 16:36:48,055.055 INFO    ] 2026-10-28 16:36:48
[2026-10-28 16:36:48,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:36:48,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:36:48,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:36:48,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:36:48,629.629 INFO    ] time= 28/10/2026 16:36:48
[2026-10-28 16:36:48,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:36:48,666.666 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:36:48,775.775 INFO    ] No existing commands found in stream
[2026-10-28 16:36:53,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:36:53,802.802 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 16:36:55,793.793 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:36:55,795.795 INFO    ] Checking for system updates...
[2026-10-28 16:36:55,831.831 INFO    ] 200
[2026-10-28 16:36:55,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:36:55,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:36:55,902.902 INFO    ] No update needed
[2026-10-28 16:36:55,904.904 INFO    ] Checking for camera pi updates...
[2026-10-28 16:36:55,942.942 INFO    ] 200
[2026-10-28 16:36:55,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:36:55,985.985 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:36:56,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:36:56,081.081 INFO    ] No camera update needed
[2026-10-28 16:36:56,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:36:56,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:36:56,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:36:56,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:36:58,139.139 INFO    ] ================================================
[2026-10-28 16:36:58,155.155 INFO    ] Launching Daemon at Wed Oct 28 16:36:58 IST 2026
[2026-10-28 16:36:58,165.165 INFO    ] ================================================
[2026-10-28 16:36:58,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:36:58
[2026-10-28 16:36:59,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:36:59,605.605 INFO    ] Initializing speech engine...
[2026-10-28 16:36:59,611.611 INFO    ] 2026-10-28 16:36:59
[2026-10-28 16:36:59,907.907 INFO    ] 2026-10-28 16:36:59
[2026-10-28 16:36:59,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:37:00,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:37:00,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:37:00,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:37:00,476.476 INFO    ] time= 28/10/2026 16:37:00
[2026-10-28 16:37:00,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:37:00,557.557 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:37:00,693.693 INFO    ] No existing commands found in stream
[2026-10-28 16:37:05,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:37:05,724.724 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 16:37:10,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:37:10,121.121 INFO    ] Checking for system updates...
[2026-10-28 16:37:10,161.161 INFO    ] 200
[2026-10-28 16:37:10,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:37:10,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:37:10,218.218 INFO    ] No update needed
[2026-10-28 16:37:10,220.220 INFO    ] Checking for camera pi updates...
[2026-10-28 16:37:10,258.258 INFO    ] 200
[2026-10-28 16:37:10,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:37:10,302.302 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:37:10,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:37:10,488.488 INFO    ] No camera update needed
[2026-10-28 16:37:10,491.491 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:37:10,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:37:10,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:37:10,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:37:12,548.548 INFO    ] ================================================
[2026-10-28 16:37:12,564.564 INFO    ] Launching Daemon at Wed Oct 28 16:37:12 IST 2026
[2026-10-28 16:37:12,575.575 INFO    ] ================================================
[2026-10-28 16:37:13,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:37:13
[2026-10-28 16:37:13,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:37:14,046.046 INFO    ] Initializing speech engine...
[2026-10-28 16:37:14,063.063 INFO    ] 2026-10-28 16:37:14
[2026-10-28 16:37:14,317.317 INFO    ] 2026-10-28 16:37:14
[2026-10-28 16:37:14,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:37:14,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:37:14,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:37:14,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:37:14,932.932 INFO    ] time= 28/10/2026 16:37:14
[2026-10-28 16:37:14,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:37:14,947.947 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:37:15,059.059 INFO    ] No existing commands found in stream
[2026-10-28 16:37:20,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:37:20,092.092 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-28 16:37:21,173.173 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:37:21,176.176 INFO    ] Checking for system updates...
[2026-10-28 16:37:21,212.212 INFO    ] 200
[2026-10-28 16:37:21,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:37:21,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:37:21,271.271 INFO    ] No update needed
[2026-10-28 16:37:21,274.274 INFO    ] Checking for camera pi updates...
[2026-10-28 16:37:21,307.307 INFO    ] 200
[2026-10-28 16:37:21,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:37:21,355.355 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:37:21,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:37:21,448.448 INFO    ] No camera update needed
[2026-10-28 16:37:21,451.451 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:37:21,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:37:21,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:37:21,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:37:23,503.503 INFO    ] ================================================
[2026-10-28 16:37:23,519.519 INFO    ] Launching Daemon at Wed Oct 28 16:37:23 IST 2026
[2026-10-28 16:37:23,530.530 INFO    ] ================================================
[2026-10-28 16:37:24,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:37:24
[2026-10-28 16:37:24,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:37:24,926.926 INFO    ] Initializing speech engine...
[2026-10-28 16:37:24,950.950 INFO    ] 2026-10-28 16:37:24
[2026-10-28 16:37:25,208.208 INFO    ] 2026-10-28 16:37:25
[2026-10-28 16:37:25,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:37:25,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:37:25,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:37:25,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:37:25,777.777 INFO    ] time= 28/10/2026 16:37:25
[2026-10-28 16:37:25,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:37:25,825.825 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:37:25,945.945 INFO    ] No existing commands found in stream
[2026-10-28 16:37:30,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:37:30,972.972 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 16:37:34,046.046 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:37:34,049.049 INFO    ] Checking for system updates...
[2026-10-28 16:37:34,084.084 INFO    ] 200
[2026-10-28 16:37:34,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:37:34,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:37:34,152.152 INFO    ] No update needed
[2026-10-28 16:37:34,154.154 INFO    ] Checking for camera pi updates...
[2026-10-28 16:37:34,187.187 INFO    ] 200
[2026-10-28 16:37:34,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:37:34,235.235 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:37:34,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:37:34,325.325 INFO    ] No camera update needed
[2026-10-28 16:37:34,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:37:34,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:37:34,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:37:34,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:37:36,380.380 INFO    ] ================================================
[2026-10-28 16:37:36,395.395 INFO    ] Launching Daemon at Wed Oct 28 16:37:36 IST 2026
[2026-10-28 16:37:36,406.406 INFO    ] ================================================
[2026-10-28 16:37:36,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:37:36
[2026-10-28 16:37:37,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:37:37,864.864 INFO    ] Initializing speech engine...
[2026-10-28 16:37:37,874.874 INFO    ] 2026-10-28 16:37:37
[2026-10-28 16:37:38,147.147 INFO    ] 2026-10-28 16:37:38
[2026-10-28 16:37:38,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:37:38,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:37:38,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:37:38,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:37:38,726.726 INFO    ] time= 28/10/2026 16:37:38
[2026-10-28 16:37:38,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:37:38,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:37:38,935.935 INFO    ] No existing commands found in stream
[2026-10-28 16:37:43,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:37:43,966.966 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 16:37:45,400.400 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:37:45,402.402 INFO    ] Checking for system updates...
[2026-10-28 16:37:45,442.442 INFO    ] 200
[2026-10-28 16:37:45,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:37:45,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:37:45,506.506 INFO    ] No update needed
[2026-10-28 16:37:45,508.508 INFO    ] Checking for camera pi updates...
[2026-10-28 16:37:45,541.541 INFO    ] 200
[2026-10-28 16:37:45,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:37:45,596.596 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:37:45,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:37:45,684.684 INFO    ] No camera update needed
[2026-10-28 16:37:45,687.687 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:37:45,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:37:45,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:37:45,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:37:47,740.740 INFO    ] ================================================
[2026-10-28 16:37:47,755.755 INFO    ] Launching Daemon at Wed Oct 28 16:37:47 IST 2026
[2026-10-28 16:37:47,766.766 INFO    ] ================================================
[2026-10-28 16:37:48,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:37:48
[2026-10-28 16:37:48,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:37:49,173.173 INFO    ] Initializing speech engine...
[2026-10-28 16:37:49,181.181 INFO    ] 2026-10-28 16:37:49
[2026-10-28 16:37:49,476.476 INFO    ] 2026-10-28 16:37:49
[2026-10-28 16:37:49,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:37:49,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:37:49,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:37:50,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:37:50,041.041 INFO    ] time= 28/10/2026 16:37:50
[2026-10-28 16:37:50,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:37:50,098.098 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:37:50,237.237 INFO    ] No existing commands found in stream
[2026-10-28 16:37:55,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:37:55,256.256 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 16:37:56,080.080 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:37:56,083.083 INFO    ] Checking for system updates...
[2026-10-28 16:37:56,120.120 INFO    ] 200
[2026-10-28 16:37:56,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:37:56,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:37:56,201.201 INFO    ] No update needed
[2026-10-28 16:37:56,204.204 INFO    ] Checking for camera pi updates...
[2026-10-28 16:37:56,240.240 INFO    ] 200
[2026-10-28 16:37:56,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:37:56,284.284 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:37:56,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:37:56,345.345 INFO    ] No camera update needed
[2026-10-28 16:37:56,348.348 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:37:56,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:37:56,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:37:56,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:37:58,400.400 INFO    ] ================================================
[2026-10-28 16:37:58,415.415 INFO    ] Launching Daemon at Wed Oct 28 16:37:58 IST 2026
[2026-10-28 16:37:58,426.426 INFO    ] ================================================
[2026-10-28 16:37:59,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:37:59
[2026-10-28 16:37:59,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:38:00,047.047 INFO    ] Initializing speech engine...
[2026-10-28 16:38:00,060.060 INFO    ] 2026-10-28 16:38:00
[2026-10-28 16:38:00,336.336 INFO    ] 2026-10-28 16:38:00
[2026-10-28 16:38:00,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:38:00,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:38:00,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:38:01,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:38:01,184.184 INFO    ] time= 28/10/2026 16:38:01
[2026-10-28 16:38:01,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:38:01,302.302 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:38:01,458.458 INFO    ] No existing commands found in stream
[2026-10-28 16:38:06,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:38:06,492.492 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-28 16:38:10,202.202 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:38:10,205.205 INFO    ] Checking for system updates...
[2026-10-28 16:38:10,247.247 INFO    ] 200
[2026-10-28 16:38:10,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:38:10,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:38:10,306.306 INFO    ] No update needed
[2026-10-28 16:38:10,309.309 INFO    ] Checking for camera pi updates...
[2026-10-28 16:38:10,347.347 INFO    ] 200
[2026-10-28 16:38:10,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:38:10,392.392 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:38:10,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:38:10,486.486 INFO    ] No camera update needed
[2026-10-28 16:38:10,489.489 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:38:10,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:38:10,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:38:10,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:38:12,545.545 INFO    ] ================================================
[2026-10-28 16:38:12,561.561 INFO    ] Launching Daemon at Wed Oct 28 16:38:12 IST 2026
[2026-10-28 16:38:12,571.571 INFO    ] ================================================
[2026-10-28 16:38:13,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:38:13
[2026-10-28 16:38:13,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:38:14,235.235 INFO    ] Initializing speech engine...
[2026-10-28 16:38:14,243.243 INFO    ] 2026-10-28 16:38:14
[2026-10-28 16:38:14,542.542 INFO    ] 2026-10-28 16:38:14
[2026-10-28 16:38:14,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:38:14,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:38:14,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:38:15,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:38:15,305.305 INFO    ] time= 28/10/2026 16:38:15
[2026-10-28 16:38:15,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:38:15,416.416 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:38:15,544.544 INFO    ] No existing commands found in stream
[2026-10-28 16:38:20,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:38:20,563.563 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-28 16:38:22,512.512 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:38:22,515.515 INFO    ] Checking for system updates...
[2026-10-28 16:38:22,557.557 INFO    ] 200
[2026-10-28 16:38:22,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:38:22,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:38:22,620.620 INFO    ] No update needed
[2026-10-28 16:38:22,623.623 INFO    ] Checking for camera pi updates...
[2026-10-28 16:38:22,662.662 INFO    ] 200
[2026-10-28 16:38:22,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:38:22,712.712 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:38:22,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:38:22,825.825 INFO    ] No camera update needed
[2026-10-28 16:38:22,828.828 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:38:22,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:38:22,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:38:22,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:38:24,888.888 INFO    ] ================================================
[2026-10-28 16:38:24,904.904 INFO    ] Launching Daemon at Wed Oct 28 16:38:24 IST 2026
[2026-10-28 16:38:24,915.915 INFO    ] ================================================
[2026-10-28 16:38:25,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:38:25
[2026-10-28 16:38:26,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:38:26,585.585 INFO    ] Initializing speech engine...
[2026-10-28 16:38:26,599.599 INFO    ] 2026-10-28 16:38:26
[2026-10-28 16:38:26,892.892 INFO    ] 2026-10-28 16:38:26
[2026-10-28 16:38:27,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:38:27,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:38:27,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:38:27,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:38:27,697.697 INFO    ] time= 28/10/2026 16:38:27
[2026-10-28 16:38:27,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:38:27,824.824 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:38:27,922.922 INFO    ] No existing commands found in stream
[2026-10-28 16:38:32,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:38:32,946.946 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-28 16:38:34,529.529 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:38:34,532.532 INFO    ] Checking for system updates...
[2026-10-28 16:38:34,568.568 INFO    ] 200
[2026-10-28 16:38:34,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:38:34,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:38:34,636.636 INFO    ] No update needed
[2026-10-28 16:38:34,638.638 INFO    ] Checking for camera pi updates...
[2026-10-28 16:38:34,672.672 INFO    ] 200
[2026-10-28 16:38:34,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:38:34,715.715 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:38:34,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:38:34,801.801 INFO    ] No camera update needed
[2026-10-28 16:38:34,804.804 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:38:34,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:38:34,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:38:34,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:38:36,861.861 INFO    ] ================================================
[2026-10-28 16:38:36,877.877 INFO    ] Launching Daemon at Wed Oct 28 16:38:36 IST 2026
[2026-10-28 16:38:36,891.891 INFO    ] ================================================
[2026-10-28 16:38:37,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:38:37
[2026-10-28 16:38:38,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:38:38,349.349 INFO    ] Initializing speech engine...
[2026-10-28 16:38:38,358.358 INFO    ] 2026-10-28 16:38:38
[2026-10-28 16:38:38,617.617 INFO    ] 2026-10-28 16:38:38
[2026-10-28 16:38:38,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:38:38,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:38:38,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:38:39,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:38:39,321.321 INFO    ] time= 28/10/2026 16:38:39
[2026-10-28 16:38:39,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:38:39,412.412 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:38:39,583.583 INFO    ] No existing commands found in stream
[2026-10-28 16:38:44,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:38:44,612.612 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 16:38:48,349.349 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:38:48,357.357 INFO    ] Checking for system updates...
[2026-10-28 16:38:48,393.393 INFO    ] 200
[2026-10-28 16:38:48,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:38:48,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:38:48,450.450 INFO    ] No update needed
[2026-10-28 16:38:48,453.453 INFO    ] Checking for camera pi updates...
[2026-10-28 16:38:48,486.486 INFO    ] 200
[2026-10-28 16:38:48,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:38:48,534.534 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:38:48,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:38:48,627.627 INFO    ] No camera update needed
[2026-10-28 16:38:48,629.629 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:38:48,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:38:48,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:38:48,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:38:50,682.682 INFO    ] ================================================
[2026-10-28 16:38:50,698.698 INFO    ] Launching Daemon at Wed Oct 28 16:38:50 IST 2026
[2026-10-28 16:38:50,708.708 INFO    ] ================================================
[2026-10-28 16:38:51,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:38:51
[2026-10-28 16:38:51,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:38:52,155.155 INFO    ] Initializing speech engine...
[2026-10-28 16:38:52,166.166 INFO    ] 2026-10-28 16:38:52
[2026-10-28 16:38:52,426.426 INFO    ] 2026-10-28 16:38:52
[2026-10-28 16:38:52,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:38:52,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:38:52,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:38:53,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:38:53,208.208 INFO    ] time= 28/10/2026 16:38:53
[2026-10-28 16:38:53,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:38:53,311.311 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:38:53,507.507 INFO    ] No existing commands found in stream
[2026-10-28 16:38:58,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:38:58,549.549 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-28 16:39:00,882.882 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:39:00,886.886 INFO    ] Checking for system updates...
[2026-10-28 16:39:00,923.923 INFO    ] 200
[2026-10-28 16:39:00,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:39:00,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:39:00,993.993 INFO    ] No update needed
[2026-10-28 16:39:00,996.996 INFO    ] Checking for camera pi updates...
[2026-10-28 16:39:01,031.031 INFO    ] 200
[2026-10-28 16:39:01,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:39:01,076.076 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:39:01,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:39:01,182.182 INFO    ] No camera update needed
[2026-10-28 16:39:01,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:39:01,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:39:01,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:39:01,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:39:03,272.272 INFO    ] ================================================
[2026-10-28 16:39:03,287.287 INFO    ] Launching Daemon at Wed Oct 28 16:39:03 IST 2026
[2026-10-28 16:39:03,298.298 INFO    ] ================================================
[2026-10-28 16:39:03,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:39:03
[2026-10-28 16:39:04,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:39:04,690.690 INFO    ] Initializing speech engine...
[2026-10-28 16:39:04,699.699 INFO    ] 2026-10-28 16:39:04
[2026-10-28 16:39:04,972.972 INFO    ] 2026-10-28 16:39:04
[2026-10-28 16:39:05,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:39:05,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:39:05,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:39:05,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:39:05,538.538 INFO    ] time= 28/10/2026 16:39:05
[2026-10-28 16:39:05,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:39:05,561.561 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:39:05,696.696 INFO    ] No existing commands found in stream
[2026-10-28 16:39:10,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:39:10,710.710 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-28 16:39:12,115.115 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:39:12,118.118 INFO    ] Checking for system updates...
[2026-10-28 16:39:12,160.160 INFO    ] 200
[2026-10-28 16:39:12,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:39:12,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:39:12,221.221 INFO    ] No update needed
[2026-10-28 16:39:12,224.224 INFO    ] Checking for camera pi updates...
[2026-10-28 16:39:12,258.258 INFO    ] 200
[2026-10-28 16:39:12,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:39:12,305.305 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:39:12,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:39:12,486.486 INFO    ] No camera update needed
[2026-10-28 16:39:12,489.489 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:39:12,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:39:12,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:39:12,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:39:14,545.545 INFO    ] ================================================
[2026-10-28 16:39:14,560.560 INFO    ] Launching Daemon at Wed Oct 28 16:39:14 IST 2026
[2026-10-28 16:39:14,577.577 INFO    ] ================================================
[2026-10-28 16:39:15,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:39:15
[2026-10-28 16:39:15,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:39:15,978.978 INFO    ] Initializing speech engine...
[2026-10-28 16:39:15,991.991 INFO    ] 2026-10-28 16:39:15
[2026-10-28 16:39:16,257.257 INFO    ] 2026-10-28 16:39:16
[2026-10-28 16:39:16,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:39:16,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:39:16,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:39:16,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:39:16,864.864 INFO    ] time= 28/10/2026 16:39:16
[2026-10-28 16:39:16,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:39:16,893.893 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:39:17,023.023 INFO    ] No existing commands found in stream
[2026-10-28 16:39:22,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:39:22,051.051 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 16:39:24,471.471 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:39:24,474.474 INFO    ] Checking for system updates...
[2026-10-28 16:39:24,512.512 INFO    ] 200
[2026-10-28 16:39:24,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:39:24,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:39:24,571.571 INFO    ] No update needed
[2026-10-28 16:39:24,574.574 INFO    ] Checking for camera pi updates...
[2026-10-28 16:39:24,614.614 INFO    ] 200
[2026-10-28 16:39:24,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:39:24,662.662 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:39:24,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:39:24,750.750 INFO    ] No camera update needed
[2026-10-28 16:39:24,752.752 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:39:24,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:39:24,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:39:24,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:39:26,805.805 INFO    ] ================================================
[2026-10-28 16:39:26,820.820 INFO    ] Launching Daemon at Wed Oct 28 16:39:26 IST 2026
[2026-10-28 16:39:26,831.831 INFO    ] ================================================
[2026-10-28 16:39:27,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:39:27
[2026-10-28 16:39:27,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:39:28,272.272 INFO    ] Initializing speech engine...
[2026-10-28 16:39:28,280.280 INFO    ] 2026-10-28 16:39:28
[2026-10-28 16:39:28,539.539 INFO    ] 2026-10-28 16:39:28
[2026-10-28 16:39:28,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:39:28,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:39:28,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:39:29,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:39:29,275.275 INFO    ] time= 28/10/2026 16:39:29
[2026-10-28 16:39:29,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:39:29,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:39:29,518.518 INFO    ] No existing commands found in stream
[2026-10-28 16:39:34,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:39:34,539.539 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 16:39:35,149.149 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:39:35,152.152 INFO    ] Checking for system updates...
[2026-10-28 16:39:35,188.188 INFO    ] 200
[2026-10-28 16:39:35,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:39:35,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:39:35,246.246 INFO    ] No update needed
[2026-10-28 16:39:35,248.248 INFO    ] Checking for camera pi updates...
[2026-10-28 16:39:35,282.282 INFO    ] 200
[2026-10-28 16:39:35,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:39:35,325.325 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:39:35,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:39:35,411.411 INFO    ] No camera update needed
[2026-10-28 16:39:35,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:39:35,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:39:35,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:39:35,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:39:37,465.465 INFO    ] ================================================
[2026-10-28 16:39:37,480.480 INFO    ] Launching Daemon at Wed Oct 28 16:39:37 IST 2026
[2026-10-28 16:39:37,490.490 INFO    ] ================================================
[2026-10-28 16:39:38,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:39:38
[2026-10-28 16:39:38,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:39:38,941.941 INFO    ] Initializing speech engine...
[2026-10-28 16:39:38,956.956 INFO    ] 2026-10-28 16:39:38
[2026-10-28 16:39:39,235.235 INFO    ] 2026-10-28 16:39:39
[2026-10-28 16:39:39,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:39:39,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:39:39,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:39:39,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:39:39,843.843 INFO    ] time= 28/10/2026 16:39:39
[2026-10-28 16:39:39,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:39:39,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:39:39,986.986 INFO    ] No existing commands found in stream
[2026-10-28 16:39:45,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:39:45,021.021 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-28 16:39:47,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:39:47,293.293 INFO    ] Checking for system updates...
[2026-10-28 16:39:47,329.329 INFO    ] 200
[2026-10-28 16:39:47,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:39:47,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:39:47,388.388 INFO    ] No update needed
[2026-10-28 16:39:47,391.391 INFO    ] Checking for camera pi updates...
[2026-10-28 16:39:47,424.424 INFO    ] 200
[2026-10-28 16:39:47,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:39:47,467.467 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:39:47,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:39:47,548.548 INFO    ] No camera update needed
[2026-10-28 16:39:47,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:39:47,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:39:47,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:39:47,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:39:49,602.602 INFO    ] ================================================
[2026-10-28 16:39:49,617.617 INFO    ] Launching Daemon at Wed Oct 28 16:39:49 IST 2026
[2026-10-28 16:39:49,628.628 INFO    ] ================================================
[2026-10-28 16:39:50,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:39:50
[2026-10-28 16:39:50,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:39:51,072.072 INFO    ] Initializing speech engine...
[2026-10-28 16:39:51,079.079 INFO    ] 2026-10-28 16:39:51
[2026-10-28 16:39:51,339.339 INFO    ] 2026-10-28 16:39:51
[2026-10-28 16:39:51,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:39:51,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:39:51,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:39:52,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:39:52,050.050 INFO    ] time= 28/10/2026 16:39:52
[2026-10-28 16:39:52,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:39:52,130.130 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:39:52,276.276 INFO    ] No existing commands found in stream
[2026-10-28 16:39:57,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:39:57,293.293 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 16:40:02,125.125 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:40:02,128.128 INFO    ] Checking for system updates...
[2026-10-28 16:40:02,188.188 INFO    ] 200
[2026-10-28 16:40:02,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:40:02,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:40:02,271.271 INFO    ] No update needed
[2026-10-28 16:40:02,274.274 INFO    ] Checking for camera pi updates...
[2026-10-28 16:40:02,326.326 INFO    ] 200
[2026-10-28 16:40:02,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:40:02,384.384 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:40:02,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:40:02,829.829 INFO    ] No camera update needed
[2026-10-28 16:40:02,833.833 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:40:02,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:40:02,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:40:02,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:40:04,894.894 INFO    ] ================================================
[2026-10-28 16:40:04,909.909 INFO    ] Launching Daemon at Wed Oct 28 16:40:04 IST 2026
[2026-10-28 16:40:04,920.920 INFO    ] ================================================
[2026-10-28 16:40:05,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:40:05
[2026-10-28 16:40:06,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:40:06,337.337 INFO    ] Initializing speech engine...
[2026-10-28 16:40:06,349.349 INFO    ] 2026-10-28 16:40:06
[2026-10-28 16:40:06,599.599 INFO    ] 2026-10-28 16:40:06
[2026-10-28 16:40:06,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:40:06,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:40:06,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:40:07,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:40:07,217.217 INFO    ] time= 28/10/2026 16:40:07
[2026-10-28 16:40:07,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:40:07,281.281 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:40:07,485.485 INFO    ] No existing commands found in stream
[2026-10-28 16:40:12,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:40:12,518.518 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-28 16:40:14,775.775 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:40:14,778.778 INFO    ] Checking for system updates...
[2026-10-28 16:40:14,813.813 INFO    ] 200
[2026-10-28 16:40:14,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:40:14,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:40:14,871.871 INFO    ] No update needed
[2026-10-28 16:40:14,873.873 INFO    ] Checking for camera pi updates...
[2026-10-28 16:40:14,910.910 INFO    ] 200
[2026-10-28 16:40:14,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:40:14,957.957 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:40:15,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:40:15,040.040 INFO    ] No camera update needed
[2026-10-28 16:40:15,042.042 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:40:15,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:40:15,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:40:15,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:40:17,095.095 INFO    ] ================================================
[2026-10-28 16:40:17,110.110 INFO    ] Launching Daemon at Wed Oct 28 16:40:17 IST 2026
[2026-10-28 16:40:17,122.122 INFO    ] ================================================
[2026-10-28 16:40:17,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:40:17
[2026-10-28 16:40:18,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:40:18,559.559 INFO    ] Initializing speech engine...
[2026-10-28 16:40:18,567.567 INFO    ] 2026-10-28 16:40:18
[2026-10-28 16:40:18,860.860 INFO    ] 2026-10-28 16:40:18
[2026-10-28 16:40:18,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:40:19,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:40:19,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:40:19,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:40:19,484.484 INFO    ] time= 28/10/2026 16:40:19
[2026-10-28 16:40:19,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:40:19,510.510 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:40:19,634.634 INFO    ] No existing commands found in stream
[2026-10-28 16:40:24,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:40:24,662.662 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 16:40:28,881.881 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:40:28,884.884 INFO    ] Checking for system updates...
[2026-10-28 16:40:28,919.919 INFO    ] 200
[2026-10-28 16:40:28,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:40:28,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:40:28,977.977 INFO    ] No update needed
[2026-10-28 16:40:28,979.979 INFO    ] Checking for camera pi updates...
[2026-10-28 16:40:29,012.012 INFO    ] 200
[2026-10-28 16:40:29,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:40:29,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:40:29,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:40:29,173.173 INFO    ] No camera update needed
[2026-10-28 16:40:29,176.176 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:40:29,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:40:29,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:40:29,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:40:31,229.229 INFO    ] ================================================
[2026-10-28 16:40:31,245.245 INFO    ] Launching Daemon at Wed Oct 28 16:40:31 IST 2026
[2026-10-28 16:40:31,256.256 INFO    ] ================================================
[2026-10-28 16:40:31,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:40:31
[2026-10-28 16:40:32,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:40:32,833.833 INFO    ] Initializing speech engine...
[2026-10-28 16:40:32,843.843 INFO    ] 2026-10-28 16:40:32
[2026-10-28 16:40:33,111.111 INFO    ] 2026-10-28 16:40:33
[2026-10-28 16:40:33,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:40:33,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:40:33,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:40:33,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:40:33,735.735 INFO    ] time= 28/10/2026 16:40:33
[2026-10-28 16:40:33,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:40:33,790.790 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:40:33,914.914 INFO    ] No existing commands found in stream
[2026-10-28 16:40:38,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:40:38,937.937 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-28 16:40:40,829.829 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:40:40,832.832 INFO    ] Checking for system updates...
[2026-10-28 16:40:40,873.873 INFO    ] 200
[2026-10-28 16:40:40,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:40:40,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:40:40,938.938 INFO    ] No update needed
[2026-10-28 16:40:40,941.941 INFO    ] Checking for camera pi updates...
[2026-10-28 16:40:40,976.976 INFO    ] 200
[2026-10-28 16:40:40,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:40:41,019.019 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:40:41,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:40:41,106.106 INFO    ] No camera update needed
[2026-10-28 16:40:41,108.108 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:40:41,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:40:41,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:40:41,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:40:43,161.161 INFO    ] ================================================
[2026-10-28 16:40:43,178.178 INFO    ] Launching Daemon at Wed Oct 28 16:40:43 IST 2026
[2026-10-28 16:40:43,189.189 INFO    ] ================================================
[2026-10-28 16:40:43,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:40:43
[2026-10-28 16:40:44,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:40:44,601.601 INFO    ] Initializing speech engine...
[2026-10-28 16:40:44,619.619 INFO    ] 2026-10-28 16:40:44
[2026-10-28 16:40:44,890.890 INFO    ] 2026-10-28 16:40:44
[2026-10-28 16:40:44,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:40:45,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:40:45,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:40:45,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:40:45,514.514 INFO    ] time= 28/10/2026 16:40:45
[2026-10-28 16:40:45,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:40:45,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:40:45,657.657 INFO    ] No existing commands found in stream
[2026-10-28 16:40:50,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:40:50,685.685 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-28 16:40:56,963.963 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:40:56,966.966 INFO    ] Checking for system updates...
[2026-10-28 16:40:57,002.002 INFO    ] 200
[2026-10-28 16:40:57,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:40:57,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:40:57,060.060 INFO    ] No update needed
[2026-10-28 16:40:57,062.062 INFO    ] Checking for camera pi updates...
[2026-10-28 16:40:57,098.098 INFO    ] 200
[2026-10-28 16:40:57,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:40:57,144.144 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:40:57,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:40:57,230.230 INFO    ] No camera update needed
[2026-10-28 16:40:57,232.232 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:40:57,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:40:57,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:40:57,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:40:59,285.285 INFO    ] ================================================
[2026-10-28 16:40:59,300.300 INFO    ] Launching Daemon at Wed Oct 28 16:40:59 IST 2026
[2026-10-28 16:40:59,310.310 INFO    ] ================================================
[2026-10-28 16:40:59,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:40:59
[2026-10-28 16:41:00,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:41:00,909.909 INFO    ] Initializing speech engine...
[2026-10-28 16:41:00,923.923 INFO    ] 2026-10-28 16:41:00
[2026-10-28 16:41:01,195.195 INFO    ] 2026-10-28 16:41:01
[2026-10-28 16:41:01,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:41:01,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:41:01,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:41:01,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:41:01,771.771 INFO    ] time= 28/10/2026 16:41:01
[2026-10-28 16:41:01,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:41:01,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:41:01,914.914 INFO    ] No existing commands found in stream
[2026-10-28 16:41:06,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:41:06,930.930 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-28 16:41:10,755.755 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:41:10,758.758 INFO    ] Checking for system updates...
[2026-10-28 16:41:10,794.794 INFO    ] 200
[2026-10-28 16:41:10,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:41:10,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:41:10,852.852 INFO    ] No update needed
[2026-10-28 16:41:10,854.854 INFO    ] Checking for camera pi updates...
[2026-10-28 16:41:10,888.888 INFO    ] 200
[2026-10-28 16:41:10,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:41:10,930.930 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:41:11,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:41:11,018.018 INFO    ] No camera update needed
[2026-10-28 16:41:11,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:41:11,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:41:11,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:41:11,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:41:13,080.080 INFO    ] ================================================
[2026-10-28 16:41:13,095.095 INFO    ] Launching Daemon at Wed Oct 28 16:41:13 IST 2026
[2026-10-28 16:41:13,106.106 INFO    ] ================================================
[2026-10-28 16:41:13,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:41:13
[2026-10-28 16:41:14,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:41:14,708.708 INFO    ] Initializing speech engine...
[2026-10-28 16:41:14,716.716 INFO    ] 2026-10-28 16:41:14
[2026-10-28 16:41:14,992.992 INFO    ] 2026-10-28 16:41:14
[2026-10-28 16:41:15,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:41:15,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:41:15,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:41:15,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:41:15,782.782 INFO    ] time= 28/10/2026 16:41:15
[2026-10-28 16:41:15,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:41:15,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:41:16,006.006 INFO    ] No existing commands found in stream
[2026-10-28 16:41:21,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:41:21,020.020 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-28 16:41:24,974.974 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:41:24,977.977 INFO    ] Checking for system updates...
[2026-10-28 16:41:25,014.014 INFO    ] 200
[2026-10-28 16:41:25,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:41:25,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:41:25,073.073 INFO    ] No update needed
[2026-10-28 16:41:25,076.076 INFO    ] Checking for camera pi updates...
[2026-10-28 16:41:25,109.109 INFO    ] 200
[2026-10-28 16:41:25,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:41:25,154.154 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:41:25,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:41:25,341.341 INFO    ] No camera update needed
[2026-10-28 16:41:25,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:41:25,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:41:25,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:41:25,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:41:27,399.399 INFO    ] ================================================
[2026-10-28 16:41:27,414.414 INFO    ] Launching Daemon at Wed Oct 28 16:41:27 IST 2026
[2026-10-28 16:41:27,425.425 INFO    ] ================================================
[2026-10-28 16:41:28,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:41:28
[2026-10-28 16:41:28,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:41:29,032.032 INFO    ] Initializing speech engine...
[2026-10-28 16:41:29,040.040 INFO    ] 2026-10-28 16:41:29
[2026-10-28 16:41:29,311.311 INFO    ] 2026-10-28 16:41:29
[2026-10-28 16:41:29,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:41:29,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:41:29,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:41:30,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:41:30,112.112 INFO    ] time= 28/10/2026 16:41:30
[2026-10-28 16:41:30,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:41:30,197.197 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:41:30,302.302 INFO    ] No existing commands found in stream
[2026-10-28 16:41:35,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:41:35,339.339 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-28 16:41:38,011.011 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:41:38,014.014 INFO    ] Checking for system updates...
[2026-10-28 16:41:38,050.050 INFO    ] 200
[2026-10-28 16:41:38,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:41:38,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:41:38,112.112 INFO    ] No update needed
[2026-10-28 16:41:38,114.114 INFO    ] Checking for camera pi updates...
[2026-10-28 16:41:38,151.151 INFO    ] 200
[2026-10-28 16:41:38,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:41:38,199.199 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:41:38,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:41:38,287.287 INFO    ] No camera update needed
[2026-10-28 16:41:38,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:41:38,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:41:38,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:41:38,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:41:40,342.342 INFO    ] ================================================
[2026-10-28 16:41:40,357.357 INFO    ] Launching Daemon at Wed Oct 28 16:41:40 IST 2026
[2026-10-28 16:41:40,367.367 INFO    ] ================================================
[2026-10-28 16:41:40,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:41:40
[2026-10-28 16:41:41,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:41:41,775.775 INFO    ] Initializing speech engine...
[2026-10-28 16:41:41,789.789 INFO    ] 2026-10-28 16:41:41
[2026-10-28 16:41:42,055.055 INFO    ] 2026-10-28 16:41:42
[2026-10-28 16:41:42,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:41:42,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:41:42,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:41:42,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:41:42,768.768 INFO    ] time= 28/10/2026 16:41:42
[2026-10-28 16:41:42,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:41:42,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:41:43,016.016 INFO    ] No existing commands found in stream
[2026-10-28 16:41:48,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:41:48,042.042 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-28 16:41:48,788.788 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:41:48,791.791 INFO    ] Checking for system updates...
[2026-10-28 16:41:48,827.827 INFO    ] 200
[2026-10-28 16:41:48,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:41:48,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:41:48,889.889 INFO    ] No update needed
[2026-10-28 16:41:48,891.891 INFO    ] Checking for camera pi updates...
[2026-10-28 16:41:48,925.925 INFO    ] 200
[2026-10-28 16:41:48,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:41:48,969.969 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:41:49,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:41:49,041.041 INFO    ] No camera update needed
[2026-10-28 16:41:49,044.044 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:41:49,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:41:49,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:41:49,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:41:51,097.097 INFO    ] ================================================
[2026-10-28 16:41:51,112.112 INFO    ] Launching Daemon at Wed Oct 28 16:41:51 IST 2026
[2026-10-28 16:41:51,123.123 INFO    ] ================================================
[2026-10-28 16:41:51,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:41:51
[2026-10-28 16:41:52,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:41:52,569.569 INFO    ] Initializing speech engine...
[2026-10-28 16:41:52,578.578 INFO    ] 2026-10-28 16:41:52
[2026-10-28 16:41:52,837.837 INFO    ] 2026-10-28 16:41:52
[2026-10-28 16:41:52,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:41:53,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:41:53,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:41:53,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:41:53,437.437 INFO    ] time= 28/10/2026 16:41:53
[2026-10-28 16:41:53,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:41:53,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:41:53,662.662 INFO    ] No existing commands found in stream
[2026-10-28 16:41:58,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:41:58,695.695 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-28 16:42:02,214.214 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:42:02,218.218 INFO    ] Checking for system updates...
[2026-10-28 16:42:02,272.272 INFO    ] 200
[2026-10-28 16:42:02,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:42:02,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:42:02,355.355 INFO    ] No update needed
[2026-10-28 16:42:02,358.358 INFO    ] Checking for camera pi updates...
[2026-10-28 16:42:02,397.397 INFO    ] 200
[2026-10-28 16:42:02,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:42:02,446.446 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:42:02,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:42:02,561.561 INFO    ] No camera update needed
[2026-10-28 16:42:02,564.564 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:42:02,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:42:02,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:42:02,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:42:04,626.626 INFO    ] ================================================
[2026-10-28 16:42:04,640.640 INFO    ] Launching Daemon at Wed Oct 28 16:42:04 IST 2026
[2026-10-28 16:42:04,651.651 INFO    ] ================================================
[2026-10-28 16:42:05,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:42:05
[2026-10-28 16:42:05,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:42:06,286.286 INFO    ] Initializing speech engine...
[2026-10-28 16:42:06,300.300 INFO    ] 2026-10-28 16:42:06
[2026-10-28 16:42:06,592.592 INFO    ] 2026-10-28 16:42:06
[2026-10-28 16:42:06,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:42:06,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:42:07,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:42:07,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:42:07,387.387 INFO    ] time= 28/10/2026 16:42:07
[2026-10-28 16:42:07,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:42:07,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:42:07,701.701 INFO    ] No existing commands found in stream
[2026-10-28 16:42:12,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:42:12,719.719 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-28 16:42:16,187.187 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:42:16,191.191 INFO    ] Checking for system updates...
[2026-10-28 16:42:16,229.229 INFO    ] 200
[2026-10-28 16:42:16,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:42:16,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:42:16,295.295 INFO    ] No update needed
[2026-10-28 16:42:16,298.298 INFO    ] Checking for camera pi updates...
[2026-10-28 16:42:16,337.337 INFO    ] 200
[2026-10-28 16:42:16,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:42:16,386.386 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:42:16,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:42:16,473.473 INFO    ] No camera update needed
[2026-10-28 16:42:16,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:42:16,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:42:16,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:42:16,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:42:18,531.531 INFO    ] ================================================
[2026-10-28 16:42:18,546.546 INFO    ] Launching Daemon at Wed Oct 28 16:42:18 IST 2026
[2026-10-28 16:42:18,557.557 INFO    ] ================================================
[2026-10-28 16:42:19,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:42:19
[2026-10-28 16:42:19,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:42:20,008.008 INFO    ] Initializing speech engine...
[2026-10-28 16:42:20,033.033 INFO    ] 2026-10-28 16:42:20
[2026-10-28 16:42:20,307.307 INFO    ] 2026-10-28 16:42:20
[2026-10-28 16:42:20,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:42:20,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:42:20,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:42:20,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:42:20,945.945 INFO    ] time= 28/10/2026 16:42:20
[2026-10-28 16:42:20,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:42:20,987.987 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:42:21,105.105 INFO    ] No existing commands found in stream
[2026-10-28 16:42:26,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:42:26,132.132 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 16:42:29,467.467 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:42:29,470.470 INFO    ] Checking for system updates...
[2026-10-28 16:42:29,507.507 INFO    ] 200
[2026-10-28 16:42:29,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:42:29,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:42:29,566.566 INFO    ] No update needed
[2026-10-28 16:42:29,569.569 INFO    ] Checking for camera pi updates...
[2026-10-28 16:42:29,603.603 INFO    ] 200
[2026-10-28 16:42:29,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:42:29,648.648 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:42:29,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:42:29,728.728 INFO    ] No camera update needed
[2026-10-28 16:42:29,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:42:29,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:42:29,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:42:29,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:42:31,786.786 INFO    ] ================================================
[2026-10-28 16:42:31,802.802 INFO    ] Launching Daemon at Wed Oct 28 16:42:31 IST 2026
[2026-10-28 16:42:31,812.812 INFO    ] ================================================
[2026-10-28 16:42:32,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:42:32
[2026-10-28 16:42:33,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:42:33,334.334 INFO    ] Initializing speech engine...
[2026-10-28 16:42:33,365.365 INFO    ] 2026-10-28 16:42:33
[2026-10-28 16:42:33,666.666 INFO    ] 2026-10-28 16:42:33
[2026-10-28 16:42:33,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:42:34,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:42:34,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:42:34,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:42:34,359.359 INFO    ] time= 28/10/2026 16:42:34
[2026-10-28 16:42:34,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:42:34,375.375 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:42:34,487.487 INFO    ] No existing commands found in stream
[2026-10-28 16:42:39,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:42:39,503.503 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-28 16:42:43,964.964 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:42:43,967.967 INFO    ] Checking for system updates...
[2026-10-28 16:42:44,008.008 INFO    ] 200
[2026-10-28 16:42:44,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:42:44,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:42:44,070.070 INFO    ] No update needed
[2026-10-28 16:42:44,073.073 INFO    ] Checking for camera pi updates...
[2026-10-28 16:42:44,107.107 INFO    ] 200
[2026-10-28 16:42:44,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:42:44,150.150 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:42:44,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:42:44,252.252 INFO    ] No camera update needed
[2026-10-28 16:42:44,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:42:44,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:42:44,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:42:44,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:42:46,308.308 INFO    ] ================================================
[2026-10-28 16:42:46,322.322 INFO    ] Launching Daemon at Wed Oct 28 16:42:46 IST 2026
[2026-10-28 16:42:46,333.333 INFO    ] ================================================
[2026-10-28 16:42:46,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:42:46
[2026-10-28 16:42:47,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:42:47,759.759 INFO    ] Initializing speech engine...
[2026-10-28 16:42:47,765.765 INFO    ] 2026-10-28 16:42:47
[2026-10-28 16:42:48,064.064 INFO    ] 2026-10-28 16:42:48
[2026-10-28 16:42:48,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:42:48,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:42:48,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:42:48,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:42:48,725.725 INFO    ] time= 28/10/2026 16:42:48
[2026-10-28 16:42:48,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:42:48,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:42:48,871.871 INFO    ] No existing commands found in stream
[2026-10-28 16:42:53,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:42:53,898.898 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-28 16:42:56,749.749 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:42:56,752.752 INFO    ] Checking for system updates...
[2026-10-28 16:42:56,789.789 INFO    ] 200
[2026-10-28 16:42:56,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:42:56,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:42:56,848.848 INFO    ] No update needed
[2026-10-28 16:42:56,851.851 INFO    ] Checking for camera pi updates...
[2026-10-28 16:42:56,886.886 INFO    ] 200
[2026-10-28 16:42:56,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:42:56,931.931 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:42:57,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:42:57,022.022 INFO    ] No camera update needed
[2026-10-28 16:42:57,025.025 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:42:57,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:42:57,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:42:57,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:42:59,080.080 INFO    ] ================================================
[2026-10-28 16:42:59,101.101 INFO    ] Launching Daemon at Wed Oct 28 16:42:59 IST 2026
[2026-10-28 16:42:59,112.112 INFO    ] ================================================
[2026-10-28 16:42:59,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:42:59
[2026-10-28 16:43:00,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:43:00,535.535 INFO    ] Initializing speech engine...
[2026-10-28 16:43:00,544.544 INFO    ] 2026-10-28 16:43:00
[2026-10-28 16:43:00,805.805 INFO    ] 2026-10-28 16:43:00
[2026-10-28 16:43:00,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:43:01,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:43:01,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:43:01,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:43:01,499.499 INFO    ] time= 28/10/2026 16:43:01
[2026-10-28 16:43:01,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:43:01,554.554 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:43:01,697.697 INFO    ] No existing commands found in stream
[2026-10-28 16:43:06,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:43:06,730.730 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-28 16:43:08,912.912 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:43:08,915.915 INFO    ] Checking for system updates...
[2026-10-28 16:43:08,952.952 INFO    ] 200
[2026-10-28 16:43:08,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:43:09,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:43:09,019.019 INFO    ] No update needed
[2026-10-28 16:43:09,022.022 INFO    ] Checking for camera pi updates...
[2026-10-28 16:43:09,056.056 INFO    ] 200
[2026-10-28 16:43:09,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:43:09,100.100 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:43:09,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:43:09,184.184 INFO    ] No camera update needed
[2026-10-28 16:43:09,187.187 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:43:09,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:43:09,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:43:09,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:43:11,243.243 INFO    ] ================================================
[2026-10-28 16:43:11,258.258 INFO    ] Launching Daemon at Wed Oct 28 16:43:11 IST 2026
[2026-10-28 16:43:11,289.289 INFO    ] ================================================
[2026-10-28 16:43:11,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:43:11
[2026-10-28 16:43:12,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:43:12,750.750 INFO    ] Initializing speech engine...
[2026-10-28 16:43:12,757.757 INFO    ] 2026-10-28 16:43:12
[2026-10-28 16:43:13,016.016 INFO    ] 2026-10-28 16:43:13
[2026-10-28 16:43:13,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:43:13,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:43:13,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:43:13,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:43:13,808.808 INFO    ] time= 28/10/2026 16:43:13
[2026-10-28 16:43:13,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:43:13,943.943 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:43:14,104.104 INFO    ] No existing commands found in stream
[2026-10-28 16:43:19,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:43:19,138.138 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-28 16:43:20,605.605 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:43:20,608.608 INFO    ] Checking for system updates...
[2026-10-28 16:43:20,643.643 INFO    ] 200
[2026-10-28 16:43:20,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:43:20,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:43:20,700.700 INFO    ] No update needed
[2026-10-28 16:43:20,703.703 INFO    ] Checking for camera pi updates...
[2026-10-28 16:43:20,736.736 INFO    ] 200
[2026-10-28 16:43:20,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:43:20,785.785 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:43:20,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:43:20,875.875 INFO    ] No camera update needed
[2026-10-28 16:43:20,878.878 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:43:20,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:43:20,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:43:20,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:43:22,932.932 INFO    ] ================================================
[2026-10-28 16:43:22,947.947 INFO    ] Launching Daemon at Wed Oct 28 16:43:22 IST 2026
[2026-10-28 16:43:22,958.958 INFO    ] ================================================
[2026-10-28 16:43:23,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:43:23
[2026-10-28 16:43:24,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:43:24,582.582 INFO    ] Initializing speech engine...
[2026-10-28 16:43:24,591.591 INFO    ] 2026-10-28 16:43:24
[2026-10-28 16:43:24,883.883 INFO    ] 2026-10-28 16:43:24
[2026-10-28 16:43:24,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:43:25,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:43:25,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:43:25,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:43:25,686.686 INFO    ] time= 28/10/2026 16:43:25
[2026-10-28 16:43:25,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:43:25,806.806 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:43:26,007.007 INFO    ] No existing commands found in stream
[2026-10-28 16:43:31,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:43:31,032.032 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-28 16:43:35,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:43:35,593.593 INFO    ] Checking for system updates...
[2026-10-28 16:43:35,629.629 INFO    ] 200
[2026-10-28 16:43:35,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:43:35,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:43:35,690.690 INFO    ] No update needed
[2026-10-28 16:43:35,692.692 INFO    ] Checking for camera pi updates...
[2026-10-28 16:43:35,727.727 INFO    ] 200
[2026-10-28 16:43:35,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:43:35,772.772 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:43:35,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:43:35,865.865 INFO    ] No camera update needed
[2026-10-28 16:43:35,867.867 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:43:35,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:43:35,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:43:35,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:43:37,920.920 INFO    ] ================================================
[2026-10-28 16:43:37,936.936 INFO    ] Launching Daemon at Wed Oct 28 16:43:37 IST 2026
[2026-10-28 16:43:37,947.947 INFO    ] ================================================
[2026-10-28 16:43:38,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:43:38
[2026-10-28 16:43:39,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:43:39,402.402 INFO    ] Initializing speech engine...
[2026-10-28 16:43:39,409.409 INFO    ] 2026-10-28 16:43:39
[2026-10-28 16:43:39,671.671 INFO    ] 2026-10-28 16:43:39
[2026-10-28 16:43:39,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:43:40,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:43:40,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:43:40,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:43:40,648.648 INFO    ] time= 28/10/2026 16:43:40
[2026-10-28 16:43:40,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:43:40,662.662 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:43:40,792.792 INFO    ] No existing commands found in stream
[2026-10-28 16:43:45,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:43:45,805.805 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-28 16:43:49,009.009 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:43:49,012.012 INFO    ] Checking for system updates...
[2026-10-28 16:43:49,050.050 INFO    ] 200
[2026-10-28 16:43:49,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:43:49,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:43:49,109.109 INFO    ] No update needed
[2026-10-28 16:43:49,112.112 INFO    ] Checking for camera pi updates...
[2026-10-28 16:43:49,146.146 INFO    ] 200
[2026-10-28 16:43:49,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:43:49,189.189 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:43:49,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:43:49,244.244 INFO    ] No camera update needed
[2026-10-28 16:43:49,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:43:49,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:43:49,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:43:49,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:43:51,304.304 INFO    ] ================================================
[2026-10-28 16:43:51,319.319 INFO    ] Launching Daemon at Wed Oct 28 16:43:51 IST 2026
[2026-10-28 16:43:51,331.331 INFO    ] ================================================
[2026-10-28 16:43:51,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:43:51
[2026-10-28 16:43:52,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:43:52,739.739 INFO    ] Initializing speech engine...
[2026-10-28 16:43:52,758.758 INFO    ] 2026-10-28 16:43:52
[2026-10-28 16:43:53,009.009 INFO    ] 2026-10-28 16:43:53
[2026-10-28 16:43:53,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:43:53,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:43:53,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:43:53,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:43:53,572.572 INFO    ] time= 28/10/2026 16:43:53
[2026-10-28 16:43:53,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:43:53,613.613 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:43:53,753.753 INFO    ] No existing commands found in stream
[2026-10-28 16:43:58,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:43:58,786.786 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-28 16:44:02,135.135 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:44:02,138.138 INFO    ] Checking for system updates...
[2026-10-28 16:44:02,178.178 INFO    ] 200
[2026-10-28 16:44:02,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:44:02,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:44:02,248.248 INFO    ] No update needed
[2026-10-28 16:44:02,251.251 INFO    ] Checking for camera pi updates...
[2026-10-28 16:44:02,294.294 INFO    ] 200
[2026-10-28 16:44:02,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:44:02,343.343 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:44:02,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:44:02,477.477 INFO    ] No camera update needed
[2026-10-28 16:44:02,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:44:02,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:44:02,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:44:02,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:44:04,538.538 INFO    ] ================================================
[2026-10-28 16:44:04,554.554 INFO    ] Launching Daemon at Wed Oct 28 16:44:04 IST 2026
[2026-10-28 16:44:04,565.565 INFO    ] ================================================
[2026-10-28 16:44:05,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:44:05
[2026-10-28 16:44:05,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:44:06,236.236 INFO    ] Initializing speech engine...
[2026-10-28 16:44:06,249.249 INFO    ] 2026-10-28 16:44:06
[2026-10-28 16:44:06,547.547 INFO    ] 2026-10-28 16:44:06
[2026-10-28 16:44:06,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:44:06,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:44:06,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:44:07,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:44:07,109.109 INFO    ] time= 28/10/2026 16:44:07
[2026-10-28 16:44:07,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:44:07,147.147 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:44:07,320.320 INFO    ] No existing commands found in stream
[2026-10-28 16:44:12,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:44:12,349.349 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 16:44:15,805.805 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:44:15,808.808 INFO    ] Checking for system updates...
[2026-10-28 16:44:15,846.846 INFO    ] 200
[2026-10-28 16:44:15,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:44:15,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:44:15,905.905 INFO    ] No update needed
[2026-10-28 16:44:15,908.908 INFO    ] Checking for camera pi updates...
[2026-10-28 16:44:15,943.943 INFO    ] 200
[2026-10-28 16:44:15,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:44:15,986.986 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:44:16,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:44:16,072.072 INFO    ] No camera update needed
[2026-10-28 16:44:16,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:44:16,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:44:16,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:44:16,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:44:18,128.128 INFO    ] ================================================
[2026-10-28 16:44:18,144.144 INFO    ] Launching Daemon at Wed Oct 28 16:44:18 IST 2026
[2026-10-28 16:44:18,156.156 INFO    ] ================================================
[2026-10-28 16:44:18,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:44:18
[2026-10-28 16:44:19,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:44:19,617.617 INFO    ] Initializing speech engine...
[2026-10-28 16:44:19,624.624 INFO    ] 2026-10-28 16:44:19
[2026-10-28 16:44:19,886.886 INFO    ] 2026-10-28 16:44:19
[2026-10-28 16:44:19,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:44:20,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:44:20,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:44:20,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:44:20,438.438 INFO    ] time= 28/10/2026 16:44:20
[2026-10-28 16:44:20,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:44:20,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:44:20,598.598 INFO    ] No existing commands found in stream
[2026-10-28 16:44:25,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:44:25,626.626 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-28 16:44:27,007.007 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:44:27,009.009 INFO    ] Checking for system updates...
[2026-10-28 16:44:27,045.045 INFO    ] 200
[2026-10-28 16:44:27,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:44:27,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:44:27,102.102 INFO    ] No update needed
[2026-10-28 16:44:27,105.105 INFO    ] Checking for camera pi updates...
[2026-10-28 16:44:27,138.138 INFO    ] 200
[2026-10-28 16:44:27,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:44:27,181.181 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:44:27,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:44:27,278.278 INFO    ] No camera update needed
[2026-10-28 16:44:27,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:44:27,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:44:27,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:44:27,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:44:29,336.336 INFO    ] ================================================
[2026-10-28 16:44:29,351.351 INFO    ] Launching Daemon at Wed Oct 28 16:44:29 IST 2026
[2026-10-28 16:44:29,362.362 INFO    ] ================================================
[2026-10-28 16:44:29,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:44:29
[2026-10-28 16:44:30,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:44:30,818.818 INFO    ] Initializing speech engine...
[2026-10-28 16:44:30,827.827 INFO    ] 2026-10-28 16:44:30
[2026-10-28 16:44:31,086.086 INFO    ] 2026-10-28 16:44:31
[2026-10-28 16:44:31,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:44:31,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:44:31,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:44:31,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:44:31,658.658 INFO    ] time= 28/10/2026 16:44:31
[2026-10-28 16:44:31,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:44:31,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:44:31,839.839 INFO    ] No existing commands found in stream
[2026-10-28 16:44:36,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:44:36,873.873 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-28 16:44:40,045.045 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:44:40,048.048 INFO    ] Checking for system updates...
[2026-10-28 16:44:40,084.084 INFO    ] 200
[2026-10-28 16:44:40,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:44:40,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:44:40,142.142 INFO    ] No update needed
[2026-10-28 16:44:40,145.145 INFO    ] Checking for camera pi updates...
[2026-10-28 16:44:40,179.179 INFO    ] 200
[2026-10-28 16:44:40,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:44:40,222.222 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:44:40,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:44:40,308.308 INFO    ] No camera update needed
[2026-10-28 16:44:40,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:44:40,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:44:40,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:44:40,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:44:42,366.366 INFO    ] ================================================
[2026-10-28 16:44:42,382.382 INFO    ] Launching Daemon at Wed Oct 28 16:44:42 IST 2026
[2026-10-28 16:44:42,392.392 INFO    ] ================================================
[2026-10-28 16:44:43,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:44:43
[2026-10-28 16:44:43,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:44:44,062.062 INFO    ] Initializing speech engine...
[2026-10-28 16:44:44,073.073 INFO    ] 2026-10-28 16:44:44
[2026-10-28 16:44:44,386.386 INFO    ] 2026-10-28 16:44:44
[2026-10-28 16:44:44,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:44:44,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:44:44,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:44:45,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:44:45,039.039 INFO    ] time= 28/10/2026 16:44:45
[2026-10-28 16:44:45,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:44:45,145.145 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:44:45,293.293 INFO    ] No existing commands found in stream
[2026-10-28 16:44:50,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:44:50,312.312 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-28 16:44:51,159.159 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:44:51,162.162 INFO    ] Checking for system updates...
[2026-10-28 16:44:51,203.203 INFO    ] 200
[2026-10-28 16:44:51,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:44:51,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:44:51,262.262 INFO    ] No update needed
[2026-10-28 16:44:51,264.264 INFO    ] Checking for camera pi updates...
[2026-10-28 16:44:51,297.297 INFO    ] 200
[2026-10-28 16:44:51,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:44:51,346.346 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:44:51,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:44:51,433.433 INFO    ] No camera update needed
[2026-10-28 16:44:51,435.435 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:44:51,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:44:51,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:44:51,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:44:53,489.489 INFO    ] ================================================
[2026-10-28 16:44:53,505.505 INFO    ] Launching Daemon at Wed Oct 28 16:44:53 IST 2026
[2026-10-28 16:44:53,515.515 INFO    ] ================================================
[2026-10-28 16:44:54,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:44:54
[2026-10-28 16:44:54,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:44:54,978.978 INFO    ] Initializing speech engine...
[2026-10-28 16:44:54,987.987 INFO    ] 2026-10-28 16:44:54
[2026-10-28 16:44:55,288.288 INFO    ] 2026-10-28 16:44:55
[2026-10-28 16:44:55,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:44:55,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:44:55,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:44:55,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:44:55,808.808 INFO    ] time= 28/10/2026 16:44:55
[2026-10-28 16:44:55,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:44:55,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:44:56,072.072 INFO    ] No existing commands found in stream
[2026-10-28 16:45:01,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:45:01,095.095 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-28 16:45:05,082.082 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:45:05,085.085 INFO    ] Checking for system updates...
[2026-10-28 16:45:05,120.120 INFO    ] 200
[2026-10-28 16:45:05,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:45:05,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:45:05,178.178 INFO    ] No update needed
[2026-10-28 16:45:05,180.180 INFO    ] Checking for camera pi updates...
[2026-10-28 16:45:05,214.214 INFO    ] 200
[2026-10-28 16:45:05,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:45:05,257.257 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:45:05,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:45:05,341.341 INFO    ] No camera update needed
[2026-10-28 16:45:05,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:45:05,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:45:05,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:45:05,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:45:07,396.396 INFO    ] ================================================
[2026-10-28 16:45:07,411.411 INFO    ] Launching Daemon at Wed Oct 28 16:45:07 IST 2026
[2026-10-28 16:45:07,422.422 INFO    ] ================================================
[2026-10-28 16:45:07,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:45:07
[2026-10-28 16:45:08,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:45:08,835.835 INFO    ] Initializing speech engine...
[2026-10-28 16:45:08,842.842 INFO    ] 2026-10-28 16:45:08
[2026-10-28 16:45:09,142.142 INFO    ] 2026-10-28 16:45:09
[2026-10-28 16:45:09,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:45:09,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:45:09,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:45:09,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:45:09,640.640 INFO    ] time= 28/10/2026 16:45:09
[2026-10-28 16:45:09,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:45:09,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:45:09,842.842 INFO    ] No existing commands found in stream
[2026-10-28 16:45:14,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:45:14,856.856 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-28 16:45:16,478.478 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:45:16,481.481 INFO    ] Checking for system updates...
[2026-10-28 16:45:16,516.516 INFO    ] 200
[2026-10-28 16:45:16,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:45:16,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:45:16,573.573 INFO    ] No update needed
[2026-10-28 16:45:16,575.575 INFO    ] Checking for camera pi updates...
[2026-10-28 16:45:16,613.613 INFO    ] 200
[2026-10-28 16:45:16,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:45:16,657.657 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:45:16,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:45:16,741.741 INFO    ] No camera update needed
[2026-10-28 16:45:16,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:45:16,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:45:16,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:45:16,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:45:18,797.797 INFO    ] ================================================
[2026-10-28 16:45:18,812.812 INFO    ] Launching Daemon at Wed Oct 28 16:45:18 IST 2026
[2026-10-28 16:45:18,823.823 INFO    ] ================================================
[2026-10-28 16:45:19,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:45:19
[2026-10-28 16:45:20,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:45:20,262.262 INFO    ] Initializing speech engine...
[2026-10-28 16:45:20,271.271 INFO    ] 2026-10-28 16:45:20
[2026-10-28 16:45:20,571.571 INFO    ] 2026-10-28 16:45:20
[2026-10-28 16:45:20,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:45:20,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:45:20,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:45:21,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:45:21,259.259 INFO    ] time= 28/10/2026 16:45:21
[2026-10-28 16:45:21,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:45:21,290.290 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:45:21,448.448 INFO    ] No existing commands found in stream
[2026-10-28 16:45:26,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:45:26,467.467 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-28 16:45:28,688.688 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:45:28,691.691 INFO    ] Checking for system updates...
[2026-10-28 16:45:28,727.727 INFO    ] 200
[2026-10-28 16:45:28,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:45:28,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:45:28,784.784 INFO    ] No update needed
[2026-10-28 16:45:28,786.786 INFO    ] Checking for camera pi updates...
[2026-10-28 16:45:28,820.820 INFO    ] 200
[2026-10-28 16:45:28,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:45:28,862.862 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:45:28,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:45:28,950.950 INFO    ] No camera update needed
[2026-10-28 16:45:28,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:45:28,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:45:28,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:45:28,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:45:31,006.006 INFO    ] ================================================
[2026-10-28 16:45:31,021.021 INFO    ] Launching Daemon at Wed Oct 28 16:45:31 IST 2026
[2026-10-28 16:45:31,032.032 INFO    ] ================================================
[2026-10-28 16:45:31,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:45:31
[2026-10-28 16:45:32,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:45:32,561.561 INFO    ] Initializing speech engine...
[2026-10-28 16:45:32,569.569 INFO    ] 2026-10-28 16:45:32
[2026-10-28 16:45:32,863.863 INFO    ] 2026-10-28 16:45:32
[2026-10-28 16:45:32,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:45:33,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:45:33,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:45:33,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:45:33,610.610 INFO    ] time= 28/10/2026 16:45:33
[2026-10-28 16:45:33,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:45:33,687.687 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:45:33,834.834 INFO    ] No existing commands found in stream
[2026-10-28 16:45:38,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:45:38,850.850 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 16:45:42,399.399 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:45:42,402.402 INFO    ] Checking for system updates...
[2026-10-28 16:45:42,438.438 INFO    ] 200
[2026-10-28 16:45:42,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:45:42,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:45:42,497.497 INFO    ] No update needed
[2026-10-28 16:45:42,499.499 INFO    ] Checking for camera pi updates...
[2026-10-28 16:45:42,535.535 INFO    ] 200
[2026-10-28 16:45:42,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:45:42,577.577 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:45:42,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:45:42,767.767 INFO    ] No camera update needed
[2026-10-28 16:45:42,769.769 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:45:42,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:45:42,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:45:42,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:45:44,821.821 INFO    ] ================================================
[2026-10-28 16:45:44,836.836 INFO    ] Launching Daemon at Wed Oct 28 16:45:44 IST 2026
[2026-10-28 16:45:44,847.847 INFO    ] ================================================
[2026-10-28 16:45:45,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:45:45
[2026-10-28 16:45:46,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:45:46,308.308 INFO    ] Initializing speech engine...
[2026-10-28 16:45:46,315.315 INFO    ] 2026-10-28 16:45:46
[2026-10-28 16:45:46,574.574 INFO    ] 2026-10-28 16:45:46
[2026-10-28 16:45:46,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:45:46,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:45:46,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:45:47,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:45:47,120.120 INFO    ] time= 28/10/2026 16:45:47
[2026-10-28 16:45:47,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:45:47,167.167 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:45:47,274.274 INFO    ] No existing commands found in stream
[2026-10-28 16:45:52,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:45:52,301.301 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-28 16:45:54,070.070 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:45:54,073.073 INFO    ] Checking for system updates...
[2026-10-28 16:45:54,110.110 INFO    ] 200
[2026-10-28 16:45:54,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:45:54,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:45:54,170.170 INFO    ] No update needed
[2026-10-28 16:45:54,173.173 INFO    ] Checking for camera pi updates...
[2026-10-28 16:45:54,208.208 INFO    ] 200
[2026-10-28 16:45:54,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:45:54,251.251 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:45:54,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:45:54,360.360 INFO    ] No camera update needed
[2026-10-28 16:45:54,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:45:54,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:45:54,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:45:54,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:45:56,419.419 INFO    ] ================================================
[2026-10-28 16:45:56,435.435 INFO    ] Launching Daemon at Wed Oct 28 16:45:56 IST 2026
[2026-10-28 16:45:56,446.446 INFO    ] ================================================
[2026-10-28 16:45:57,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:45:57
[2026-10-28 16:45:57,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:45:58,027.027 INFO    ] Initializing speech engine...
[2026-10-28 16:45:58,041.041 INFO    ] 2026-10-28 16:45:58
[2026-10-28 16:45:58,306.306 INFO    ] 2026-10-28 16:45:58
[2026-10-28 16:45:58,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:45:58,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:45:58,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:45:58,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:45:58,850.850 INFO    ] time= 28/10/2026 16:45:58
[2026-10-28 16:45:58,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:45:58,898.898 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:45:59,027.027 INFO    ] No existing commands found in stream
[2026-10-28 16:46:04,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:46:04,061.061 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-28 16:46:08,227.227 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:46:08,230.230 INFO    ] Checking for system updates...
[2026-10-28 16:46:08,266.266 INFO    ] 200
[2026-10-28 16:46:08,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:46:09,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:46:09,896.896 INFO    ] No update needed
[2026-10-28 16:46:09,899.899 INFO    ] Checking for camera pi updates...
[2026-10-28 16:46:09,933.933 INFO    ] 200
[2026-10-28 16:46:09,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:46:09,977.977 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:46:10,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:46:10,078.078 INFO    ] No camera update needed
[2026-10-28 16:46:10,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:46:10,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:46:10,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:46:10,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:46:12,137.137 INFO    ] ================================================
[2026-10-28 16:46:12,153.153 INFO    ] Launching Daemon at Wed Oct 28 16:46:12 IST 2026
[2026-10-28 16:46:12,164.164 INFO    ] ================================================
[2026-10-28 16:46:12,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:46:12
[2026-10-28 16:46:13,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:46:13,590.590 INFO    ] Initializing speech engine...
[2026-10-28 16:46:13,604.604 INFO    ] 2026-10-28 16:46:13
[2026-10-28 16:46:13,869.869 INFO    ] 2026-10-28 16:46:13
[2026-10-28 16:46:14,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:46:14,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:46:14,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:46:14,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:46:14,488.488 INFO    ] time= 28/10/2026 16:46:14
[2026-10-28 16:46:14,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:46:14,539.539 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:46:14,684.684 INFO    ] No existing commands found in stream
[2026-10-28 16:46:19,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:46:19,777.777 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 16:46:22,006.006 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:46:22,009.009 INFO    ] Checking for system updates...
[2026-10-28 16:46:22,048.048 INFO    ] 200
[2026-10-28 16:46:22,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:46:22,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:46:22,104.104 INFO    ] No update needed
[2026-10-28 16:46:22,107.107 INFO    ] Checking for camera pi updates...
[2026-10-28 16:46:22,144.144 INFO    ] 200
[2026-10-28 16:46:22,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:46:22,191.191 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:46:22,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:46:22,277.277 INFO    ] No camera update needed
[2026-10-28 16:46:22,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:46:22,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:46:22,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:46:22,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:46:24,335.335 INFO    ] ================================================
[2026-10-28 16:46:24,351.351 INFO    ] Launching Daemon at Wed Oct 28 16:46:24 IST 2026
[2026-10-28 16:46:24,362.362 INFO    ] ================================================
[2026-10-28 16:46:24,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:46:24
[2026-10-28 16:46:25,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:46:25,793.793 INFO    ] Initializing speech engine...
[2026-10-28 16:46:25,817.817 INFO    ] 2026-10-28 16:46:25
[2026-10-28 16:46:26,090.090 INFO    ] 2026-10-28 16:46:26
[2026-10-28 16:46:26,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:46:26,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:46:26,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:46:26,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:46:26,719.719 INFO    ] time= 28/10/2026 16:46:26
[2026-10-28 16:46:26,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:46:26,745.745 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:46:26,892.892 INFO    ] No existing commands found in stream
[2026-10-28 16:46:31,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:46:31,909.909 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-28 16:46:35,554.554 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:46:35,557.557 INFO    ] Checking for system updates...
[2026-10-28 16:46:35,593.593 INFO    ] 200
[2026-10-28 16:46:35,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:46:35,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:46:35,653.653 INFO    ] No update needed
[2026-10-28 16:46:35,656.656 INFO    ] Checking for camera pi updates...
[2026-10-28 16:46:35,689.689 INFO    ] 200
[2026-10-28 16:46:35,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:46:35,733.733 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:46:35,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:46:35,819.819 INFO    ] No camera update needed
[2026-10-28 16:46:35,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:46:35,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:46:35,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:46:35,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:46:37,874.874 INFO    ] ================================================
[2026-10-28 16:46:37,889.889 INFO    ] Launching Daemon at Wed Oct 28 16:46:37 IST 2026
[2026-10-28 16:46:37,900.900 INFO    ] ================================================
[2026-10-28 16:46:38,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:46:38
[2026-10-28 16:46:39,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:46:39,499.499 INFO    ] Initializing speech engine...
[2026-10-28 16:46:39,510.510 INFO    ] 2026-10-28 16:46:39
[2026-10-28 16:46:39,789.789 INFO    ] 2026-10-28 16:46:39
[2026-10-28 16:46:39,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:46:40,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:46:40,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:46:40,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:46:40,349.349 INFO    ] time= 28/10/2026 16:46:40
[2026-10-28 16:46:40,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:46:40,399.399 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:46:40,539.539 INFO    ] No existing commands found in stream
[2026-10-28 16:46:45,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:46:45,572.572 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-28 16:46:48,470.470 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:46:48,473.473 INFO    ] Checking for system updates...
[2026-10-28 16:46:48,510.510 INFO    ] 200
[2026-10-28 16:46:48,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:46:48,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:46:48,576.576 INFO    ] No update needed
[2026-10-28 16:46:48,578.578 INFO    ] Checking for camera pi updates...
[2026-10-28 16:46:48,615.615 INFO    ] 200
[2026-10-28 16:46:48,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:46:48,659.659 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:46:48,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:46:48,760.760 INFO    ] No camera update needed
[2026-10-28 16:46:48,762.762 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:46:48,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:46:48,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:46:48,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:46:50,821.821 INFO    ] ================================================
[2026-10-28 16:46:50,836.836 INFO    ] Launching Daemon at Wed Oct 28 16:46:50 IST 2026
[2026-10-28 16:46:50,847.847 INFO    ] ================================================
[2026-10-28 16:46:51,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:46:51
[2026-10-28 16:46:52,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:46:52,284.284 INFO    ] Initializing speech engine...
[2026-10-28 16:46:52,307.307 INFO    ] 2026-10-28 16:46:52
[2026-10-28 16:46:52,588.588 INFO    ] 2026-10-28 16:46:52
[2026-10-28 16:46:52,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:46:52,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:46:52,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:46:53,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:46:53,217.217 INFO    ] time= 28/10/2026 16:46:53
[2026-10-28 16:46:53,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:46:53,245.245 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:46:53,404.404 INFO    ] No existing commands found in stream
[2026-10-28 16:46:58,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:46:58,442.442 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 16:46:59,827.827 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:46:59,830.830 INFO    ] Checking for system updates...
[2026-10-28 16:46:59,869.869 INFO    ] 200
[2026-10-28 16:46:59,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:46:59,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:46:59,928.928 INFO    ] No update needed
[2026-10-28 16:46:59,930.930 INFO    ] Checking for camera pi updates...
[2026-10-28 16:46:59,965.965 INFO    ] 200
[2026-10-28 16:46:59,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:47:00,010.010 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:47:00,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:47:00,127.127 INFO    ] No camera update needed
[2026-10-28 16:47:00,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:47:00,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:47:00,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:47:00,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:47:02,208.208 INFO    ] ================================================
[2026-10-28 16:47:02,234.234 INFO    ] Launching Daemon at Wed Oct 28 16:47:02 IST 2026
[2026-10-28 16:47:02,254.254 INFO    ] ================================================
[2026-10-28 16:47:02,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:47:02
[2026-10-28 16:47:03,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:47:03,878.878 INFO    ] Initializing speech engine...
[2026-10-28 16:47:03,885.885 INFO    ] 2026-10-28 16:47:03
[2026-10-28 16:47:04,163.163 INFO    ] 2026-10-28 16:47:04
[2026-10-28 16:47:04,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:47:04,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:47:04,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:47:04,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:47:04,695.695 INFO    ] time= 28/10/2026 16:47:04
[2026-10-28 16:47:04,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:47:04,729.729 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:47:04,854.854 INFO    ] No existing commands found in stream
[2026-10-28 16:47:09,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:47:09,878.878 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-28 16:47:13,104.104 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:47:13,107.107 INFO    ] Checking for system updates...
[2026-10-28 16:47:13,142.142 INFO    ] 200
[2026-10-28 16:47:13,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:47:13,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:47:13,203.203 INFO    ] No update needed
[2026-10-28 16:47:13,205.205 INFO    ] Checking for camera pi updates...
[2026-10-28 16:47:13,239.239 INFO    ] 200
[2026-10-28 16:47:13,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:47:13,280.280 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:47:13,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:47:13,385.385 INFO    ] No camera update needed
[2026-10-28 16:47:13,387.387 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:47:13,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:47:13,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:47:13,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:47:15,440.440 INFO    ] ================================================
[2026-10-28 16:47:15,455.455 INFO    ] Launching Daemon at Wed Oct 28 16:47:15 IST 2026
[2026-10-28 16:47:15,466.466 INFO    ] ================================================
[2026-10-28 16:47:16,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:47:16
[2026-10-28 16:47:16,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:47:16,878.878 INFO    ] Initializing speech engine...
[2026-10-28 16:47:16,893.893 INFO    ] 2026-10-28 16:47:16
[2026-10-28 16:47:17,175.175 INFO    ] 2026-10-28 16:47:17
[2026-10-28 16:47:17,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:47:17,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:47:17,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:47:17,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:47:17,790.790 INFO    ] time= 28/10/2026 16:47:17
[2026-10-28 16:47:17,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:47:17,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:47:17,947.947 INFO    ] No existing commands found in stream
[2026-10-28 16:47:22,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:47:22,980.980 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-28 16:47:27,532.532 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:47:27,535.535 INFO    ] Checking for system updates...
[2026-10-28 16:47:27,574.574 INFO    ] 200
[2026-10-28 16:47:27,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:47:27,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:47:27,636.636 INFO    ] No update needed
[2026-10-28 16:47:27,638.638 INFO    ] Checking for camera pi updates...
[2026-10-28 16:47:27,671.671 INFO    ] 200
[2026-10-28 16:47:27,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:47:27,715.715 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:47:27,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:47:27,802.802 INFO    ] No camera update needed
[2026-10-28 16:47:27,805.805 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:47:27,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:47:27,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:47:27,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:47:29,858.858 INFO    ] ================================================
[2026-10-28 16:47:29,873.873 INFO    ] Launching Daemon at Wed Oct 28 16:47:29 IST 2026
[2026-10-28 16:47:29,884.884 INFO    ] ================================================
[2026-10-28 16:47:30,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:47:30
[2026-10-28 16:47:31,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:47:31,516.516 INFO    ] Initializing speech engine...
[2026-10-28 16:47:31,528.528 INFO    ] 2026-10-28 16:47:31
[2026-10-28 16:47:31,842.842 INFO    ] 2026-10-28 16:47:31
[2026-10-28 16:47:31,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:47:32,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:47:32,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:47:32,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:47:32,393.393 INFO    ] time= 28/10/2026 16:47:32
[2026-10-28 16:47:32,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:47:32,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:47:32,548.548 INFO    ] No existing commands found in stream
[2026-10-28 16:47:37,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:47:37,573.573 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-28 16:47:40,994.994 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:47:40,997.997 INFO    ] Checking for system updates...
[2026-10-28 16:47:41,036.036 INFO    ] 200
[2026-10-28 16:47:41,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:47:41,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:47:41,101.101 INFO    ] No update needed
[2026-10-28 16:47:41,104.104 INFO    ] Checking for camera pi updates...
[2026-10-28 16:47:41,142.142 INFO    ] 200
[2026-10-28 16:47:41,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:47:41,186.186 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:47:41,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:47:41,296.296 INFO    ] No camera update needed
[2026-10-28 16:47:41,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:47:41,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:47:41,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:47:41,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:47:43,355.355 INFO    ] ================================================
[2026-10-28 16:47:43,371.371 INFO    ] Launching Daemon at Wed Oct 28 16:47:43 IST 2026
[2026-10-28 16:47:43,382.382 INFO    ] ================================================
[2026-10-28 16:47:44,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:47:44
[2026-10-28 16:47:44,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:47:45,004.004 INFO    ] Initializing speech engine...
[2026-10-28 16:47:45,015.015 INFO    ] 2026-10-28 16:47:45
[2026-10-28 16:47:45,327.327 INFO    ] 2026-10-28 16:47:45
[2026-10-28 16:47:45,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:47:45,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:47:45,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:47:45,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:47:45,866.866 INFO    ] time= 28/10/2026 16:47:45
[2026-10-28 16:47:45,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:47:45,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:47:46,008.008 INFO    ] No existing commands found in stream
[2026-10-28 16:47:51,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:47:51,036.036 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 16:47:54,708.708 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:47:54,711.711 INFO    ] Checking for system updates...
[2026-10-28 16:47:54,747.747 INFO    ] 200
[2026-10-28 16:47:54,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:47:54,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:47:54,806.806 INFO    ] No update needed
[2026-10-28 16:47:54,809.809 INFO    ] Checking for camera pi updates...
[2026-10-28 16:47:54,843.843 INFO    ] 200
[2026-10-28 16:47:54,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:47:54,887.887 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:47:55,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:47:55,053.053 INFO    ] No camera update needed
[2026-10-28 16:47:55,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:47:55,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:47:55,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:47:55,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:47:57,112.112 INFO    ] ================================================
[2026-10-28 16:47:57,127.127 INFO    ] Launching Daemon at Wed Oct 28 16:47:57 IST 2026
[2026-10-28 16:47:57,138.138 INFO    ] ================================================
[2026-10-28 16:47:57,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:47:57
[2026-10-28 16:47:58,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:47:58,605.605 INFO    ] Initializing speech engine...
[2026-10-28 16:47:58,620.620 INFO    ] 2026-10-28 16:47:58
[2026-10-28 16:47:58,887.887 INFO    ] 2026-10-28 16:47:58
[2026-10-28 16:47:58,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:47:59,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:47:59,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:47:59,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:47:59,420.420 INFO    ] time= 28/10/2026 16:47:59
[2026-10-28 16:47:59,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:47:59,530.530 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:47:59,666.666 INFO    ] No existing commands found in stream
[2026-10-28 16:48:04,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:48:04,699.699 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-28 16:48:07,671.671 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:48:07,674.674 INFO    ] Checking for system updates...
[2026-10-28 16:48:07,713.713 INFO    ] 200
[2026-10-28 16:48:07,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:48:07,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:48:07,770.770 INFO    ] No update needed
[2026-10-28 16:48:07,773.773 INFO    ] Checking for camera pi updates...
[2026-10-28 16:48:07,807.807 INFO    ] 200
[2026-10-28 16:48:07,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:48:07,854.854 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:48:07,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:48:07,916.916 INFO    ] No camera update needed
[2026-10-28 16:48:07,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:48:07,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:48:07,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:48:07,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:48:09,971.971 INFO    ] ================================================
[2026-10-28 16:48:09,986.986 INFO    ] Launching Daemon at Wed Oct 28 16:48:09 IST 2026
[2026-10-28 16:48:10,997.997 INFO    ] ================================================
[2026-10-28 16:48:10,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:48:10
[2026-10-28 16:48:11,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:48:11,431.431 INFO    ] Initializing speech engine...
[2026-10-28 16:48:11,440.440 INFO    ] 2026-10-28 16:48:11
[2026-10-28 16:48:11,694.694 INFO    ] 2026-10-28 16:48:11
[2026-10-28 16:48:11,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:48:11,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:48:12,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:48:12,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:48:12,243.243 INFO    ] time= 28/10/2026 16:48:12
[2026-10-28 16:48:12,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:48:12,273.273 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:48:12,397.397 INFO    ] No existing commands found in stream
[2026-10-28 16:48:17,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:48:17,419.419 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-28 16:48:21,045.045 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:48:21,048.048 INFO    ] Checking for system updates...
[2026-10-28 16:48:21,084.084 INFO    ] 200
[2026-10-28 16:48:21,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:48:21,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:48:21,146.146 INFO    ] No update needed
[2026-10-28 16:48:21,148.148 INFO    ] Checking for camera pi updates...
[2026-10-28 16:48:21,181.181 INFO    ] 200
[2026-10-28 16:48:21,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:48:21,228.228 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:48:21,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:48:21,320.320 INFO    ] No camera update needed
[2026-10-28 16:48:21,323.323 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:48:21,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:48:21,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:48:21,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:48:23,377.377 INFO    ] ================================================
[2026-10-28 16:48:23,392.392 INFO    ] Launching Daemon at Wed Oct 28 16:48:23 IST 2026
[2026-10-28 16:48:23,404.404 INFO    ] ================================================
[2026-10-28 16:48:24,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:48:24
[2026-10-28 16:48:24,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:48:24,957.957 INFO    ] Initializing speech engine...
[2026-10-28 16:48:24,966.966 INFO    ] 2026-10-28 16:48:24
[2026-10-28 16:48:25,216.216 INFO    ] 2026-10-28 16:48:25
[2026-10-28 16:48:25,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:48:25,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:48:25,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:48:25,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:48:25,778.778 INFO    ] time= 28/10/2026 16:48:25
[2026-10-28 16:48:25,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:48:25,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:48:25,941.941 INFO    ] No existing commands found in stream
[2026-10-28 16:48:30,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:48:30,974.974 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-28 16:48:34,190.190 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:48:34,193.193 INFO    ] Checking for system updates...
[2026-10-28 16:48:34,229.229 INFO    ] 200
[2026-10-28 16:48:34,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:48:34,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:48:34,288.288 INFO    ] No update needed
[2026-10-28 16:48:34,291.291 INFO    ] Checking for camera pi updates...
[2026-10-28 16:48:34,325.325 INFO    ] 200
[2026-10-28 16:48:34,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:48:34,371.371 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:48:34,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:48:34,460.460 INFO    ] No camera update needed
[2026-10-28 16:48:34,463.463 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:48:34,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:48:34,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:48:34,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:48:36,519.519 INFO    ] ================================================
[2026-10-28 16:48:36,534.534 INFO    ] Launching Daemon at Wed Oct 28 16:48:36 IST 2026
[2026-10-28 16:48:36,545.545 INFO    ] ================================================
[2026-10-28 16:48:37,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:48:37
[2026-10-28 16:48:37,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:48:38,143.143 INFO    ] Initializing speech engine...
[2026-10-28 16:48:38,151.151 INFO    ] 2026-10-28 16:48:38
[2026-10-28 16:48:38,435.435 INFO    ] 2026-10-28 16:48:38
[2026-10-28 16:48:38,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:48:38,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:48:38,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:48:38,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:48:38,984.984 INFO    ] time= 28/10/2026 16:48:38
[2026-10-28 16:48:39,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:48:39,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:48:39,178.178 INFO    ] No existing commands found in stream
[2026-10-28 16:48:44,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:48:44,207.207 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-28 16:48:45,826.826 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:48:45,829.829 INFO    ] Checking for system updates...
[2026-10-28 16:48:45,869.869 INFO    ] 200
[2026-10-28 16:48:45,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:48:45,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:48:45,937.937 INFO    ] No update needed
[2026-10-28 16:48:45,940.940 INFO    ] Checking for camera pi updates...
[2026-10-28 16:48:45,978.978 INFO    ] 200
[2026-10-28 16:48:45,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:48:46,023.023 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:48:46,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:48:46,126.126 INFO    ] No camera update needed
[2026-10-28 16:48:46,128.128 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:48:46,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:48:46,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:48:46,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:48:48,183.183 INFO    ] ================================================
[2026-10-28 16:48:48,198.198 INFO    ] Launching Daemon at Wed Oct 28 16:48:48 IST 2026
[2026-10-28 16:48:48,208.208 INFO    ] ================================================
[2026-10-28 16:48:48,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:48:48
[2026-10-28 16:48:49,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:48:49,621.621 INFO    ] Initializing speech engine...
[2026-10-28 16:48:49,639.639 INFO    ] 2026-10-28 16:48:49
[2026-10-28 16:48:49,892.892 INFO    ] 2026-10-28 16:48:49
[2026-10-28 16:48:49,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:48:50,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:48:50,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:48:50,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:48:50,462.462 INFO    ] time= 28/10/2026 16:48:50
[2026-10-28 16:48:50,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:48:50,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:48:50,630.630 INFO    ] No existing commands found in stream
[2026-10-28 16:48:55,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:48:55,651.651 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-28 16:48:56,876.876 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:48:56,879.879 INFO    ] Checking for system updates...
[2026-10-28 16:48:56,915.915 INFO    ] 200
[2026-10-28 16:48:56,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:48:56,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:48:56,972.972 INFO    ] No update needed
[2026-10-28 16:48:56,974.974 INFO    ] Checking for camera pi updates...
[2026-10-28 16:48:57,011.011 INFO    ] 200
[2026-10-28 16:48:57,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:48:57,053.053 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:48:57,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:48:57,138.138 INFO    ] No camera update needed
[2026-10-28 16:48:57,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:48:57,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:48:57,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:48:57,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:48:59,194.194 INFO    ] ================================================
[2026-10-28 16:48:59,210.210 INFO    ] Launching Daemon at Wed Oct 28 16:48:59 IST 2026
[2026-10-28 16:48:59,220.220 INFO    ] ================================================
[2026-10-28 16:48:59,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:48:59
[2026-10-28 16:49:00,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:49:00,651.651 INFO    ] Initializing speech engine...
[2026-10-28 16:49:00,660.660 INFO    ] 2026-10-28 16:49:00
[2026-10-28 16:49:00,908.908 INFO    ] 2026-10-28 16:49:00
[2026-10-28 16:49:00,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:49:01,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:49:01,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:49:01,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:49:01,400.400 INFO    ] time= 28/10/2026 16:49:01
[2026-10-28 16:49:01,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:49:01,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:49:01,486.486 INFO    ] No existing commands found in stream
[2026-10-28 16:49:06,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:49:06,498.498 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-28 16:49:07,224.224 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:49:07,227.227 INFO    ] Checking for system updates...
[2026-10-28 16:49:07,263.263 INFO    ] 200
[2026-10-28 16:49:07,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:49:07,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:49:07,321.321 INFO    ] No update needed
[2026-10-28 16:49:07,324.324 INFO    ] Checking for camera pi updates...
[2026-10-28 16:49:07,357.357 INFO    ] 200
[2026-10-28 16:49:07,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:49:07,400.400 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:49:07,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:49:07,484.484 INFO    ] No camera update needed
[2026-10-28 16:49:07,486.486 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:49:07,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:49:07,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:49:07,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:49:09,542.542 INFO    ] ================================================
[2026-10-28 16:49:09,556.556 INFO    ] Launching Daemon at Wed Oct 28 16:49:09 IST 2026
[2026-10-28 16:49:09,567.567 INFO    ] ================================================
[2026-10-28 16:49:10,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:49:10
[2026-10-28 16:49:10,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:49:11,042.042 INFO    ] Initializing speech engine...
[2026-10-28 16:49:11,054.054 INFO    ] 2026-10-28 16:49:11
[2026-10-28 16:49:11,332.332 INFO    ] 2026-10-28 16:49:11
[2026-10-28 16:49:11,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:49:11,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:49:11,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:49:11,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:49:11,882.882 INFO    ] time= 28/10/2026 16:49:11
[2026-10-28 16:49:11,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:49:11,918.918 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:49:12,028.028 INFO    ] No existing commands found in stream
[2026-10-28 16:49:17,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:49:17,056.056 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-28 16:49:18,122.122 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:49:18,126.126 INFO    ] Checking for system updates...
[2026-10-28 16:49:18,162.162 INFO    ] 200
[2026-10-28 16:49:18,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:49:18,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:49:18,222.222 INFO    ] No update needed
[2026-10-28 16:49:18,225.225 INFO    ] Checking for camera pi updates...
[2026-10-28 16:49:18,263.263 INFO    ] 200
[2026-10-28 16:49:18,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:49:18,306.306 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:49:18,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:49:18,411.411 INFO    ] No camera update needed
[2026-10-28 16:49:18,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:49:18,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:49:18,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:49:18,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:49:20,465.465 INFO    ] ================================================
[2026-10-28 16:49:20,481.481 INFO    ] Launching Daemon at Wed Oct 28 16:49:20 IST 2026
[2026-10-28 16:49:20,492.492 INFO    ] ================================================
[2026-10-28 16:49:21,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:49:21
[2026-10-28 16:49:21,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:49:21,944.944 INFO    ] Initializing speech engine...
[2026-10-28 16:49:21,951.951 INFO    ] 2026-10-28 16:49:21
[2026-10-28 16:49:22,239.239 INFO    ] 2026-10-28 16:49:22
[2026-10-28 16:49:22,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:49:22,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:49:22,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:49:22,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:49:22,800.800 INFO    ] time= 28/10/2026 16:49:22
[2026-10-28 16:49:22,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:49:22,880.880 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:49:23,013.013 INFO    ] No existing commands found in stream
[2026-10-28 16:49:28,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:49:28,034.034 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 16:49:30,749.749 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:49:30,751.751 INFO    ] Checking for system updates...
[2026-10-28 16:49:30,787.787 INFO    ] 200
[2026-10-28 16:49:30,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:49:30,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:49:30,845.845 INFO    ] No update needed
[2026-10-28 16:49:30,847.847 INFO    ] Checking for camera pi updates...
[2026-10-28 16:49:30,886.886 INFO    ] 200
[2026-10-28 16:49:30,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:49:30,930.930 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:49:31,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:49:31,014.014 INFO    ] No camera update needed
[2026-10-28 16:49:31,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:49:31,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:49:31,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:49:31,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:49:33,071.071 INFO    ] ================================================
[2026-10-28 16:49:33,086.086 INFO    ] Launching Daemon at Wed Oct 28 16:49:33 IST 2026
[2026-10-28 16:49:33,097.097 INFO    ] ================================================
[2026-10-28 16:49:33,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:49:33
[2026-10-28 16:49:34,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:49:34,535.535 INFO    ] Initializing speech engine...
[2026-10-28 16:49:34,541.541 INFO    ] 2026-10-28 16:49:34
[2026-10-28 16:49:34,815.815 INFO    ] 2026-10-28 16:49:34
[2026-10-28 16:49:34,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:49:35,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:49:35,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:49:35,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:49:35,347.347 INFO    ] time= 28/10/2026 16:49:35
[2026-10-28 16:49:35,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:49:35,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:49:35,499.499 INFO    ] No existing commands found in stream
[2026-10-28 16:49:40,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:49:40,514.514 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-28 16:49:44,753.753 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:49:44,756.756 INFO    ] Checking for system updates...
[2026-10-28 16:49:44,792.792 INFO    ] 200
[2026-10-28 16:49:44,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:49:44,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:49:44,850.850 INFO    ] No update needed
[2026-10-28 16:49:44,852.852 INFO    ] Checking for camera pi updates...
[2026-10-28 16:49:44,890.890 INFO    ] 200
[2026-10-28 16:49:44,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:49:44,939.939 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:49:45,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:49:45,026.026 INFO    ] No camera update needed
[2026-10-28 16:49:45,029.029 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:49:45,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:49:45,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:49:45,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:49:47,084.084 INFO    ] ================================================
[2026-10-28 16:49:47,100.100 INFO    ] Launching Daemon at Wed Oct 28 16:49:47 IST 2026
[2026-10-28 16:49:47,111.111 INFO    ] ================================================
[2026-10-28 16:49:47,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:49:47
[2026-10-28 16:49:48,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:49:48,530.530 INFO    ] Initializing speech engine...
[2026-10-28 16:49:48,539.539 INFO    ] 2026-10-28 16:49:48
[2026-10-28 16:49:48,784.784 INFO    ] 2026-10-28 16:49:48
[2026-10-28 16:49:48,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:49:49,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:49:49,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:49:49,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:49:49,335.335 INFO    ] time= 28/10/2026 16:49:49
[2026-10-28 16:49:49,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:49:49,360.360 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:49:49,489.489 INFO    ] No existing commands found in stream
[2026-10-28 16:49:54,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:49:54,506.506 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-28 16:49:55,926.926 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:49:55,929.929 INFO    ] Checking for system updates...
[2026-10-28 16:49:55,965.965 INFO    ] 200
[2026-10-28 16:49:55,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:49:56,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:49:56,025.025 INFO    ] No update needed
[2026-10-28 16:49:56,027.027 INFO    ] Checking for camera pi updates...
[2026-10-28 16:49:56,062.062 INFO    ] 200
[2026-10-28 16:49:56,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:49:56,114.114 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:49:56,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:49:56,199.199 INFO    ] No camera update needed
[2026-10-28 16:49:56,202.202 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:49:56,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:49:56,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:49:56,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:49:58,259.259 INFO    ] ================================================
[2026-10-28 16:49:58,274.274 INFO    ] Launching Daemon at Wed Oct 28 16:49:58 IST 2026
[2026-10-28 16:49:58,285.285 INFO    ] ================================================
[2026-10-28 16:49:58,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:49:58
[2026-10-28 16:49:59,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:49:59,713.713 INFO    ] Initializing speech engine...
[2026-10-28 16:49:59,722.722 INFO    ] 2026-10-28 16:49:59
[2026-10-28 16:49:59,983.983 INFO    ] 2026-10-28 16:49:59
[2026-10-28 16:50:00,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:50:00,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:50:00,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:50:00,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:50:00,526.526 INFO    ] time= 28/10/2026 16:50:00
[2026-10-28 16:50:00,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:50:00,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:50:00,682.682 INFO    ] No existing commands found in stream
[2026-10-28 16:50:05,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:50:05,700.700 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-28 16:50:08,848.848 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:50:08,850.850 INFO    ] Checking for system updates...
[2026-10-28 16:50:08,889.889 INFO    ] 200
[2026-10-28 16:50:08,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:50:08,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:50:08,949.949 INFO    ] No update needed
[2026-10-28 16:50:08,952.952 INFO    ] Checking for camera pi updates...
[2026-10-28 16:50:08,990.990 INFO    ] 200
[2026-10-28 16:50:08,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:50:09,035.035 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:50:09,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:50:09,121.121 INFO    ] No camera update needed
[2026-10-28 16:50:09,124.124 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:50:09,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:50:09,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:50:09,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:50:11,179.179 INFO    ] ================================================
[2026-10-28 16:50:11,194.194 INFO    ] Launching Daemon at Wed Oct 28 16:50:11 IST 2026
[2026-10-28 16:50:11,205.205 INFO    ] ================================================
[2026-10-28 16:50:11,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:50:11
[2026-10-28 16:50:12,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:50:12,811.811 INFO    ] Initializing speech engine...
[2026-10-28 16:50:12,825.825 INFO    ] 2026-10-28 16:50:12
[2026-10-28 16:50:13,134.134 INFO    ] 2026-10-28 16:50:13
[2026-10-28 16:50:13,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:50:13,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:50:13,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:50:13,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:50:13,692.692 INFO    ] time= 28/10/2026 16:50:13
[2026-10-28 16:50:13,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:50:13,772.772 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:50:13,903.903 INFO    ] No existing commands found in stream
[2026-10-28 16:50:18,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:50:18,935.935 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-28 16:50:22,890.890 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:50:22,894.894 INFO    ] Checking for system updates...
[2026-10-28 16:50:22,935.935 INFO    ] 200
[2026-10-28 16:50:22,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:50:22,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:50:22,995.995 INFO    ] No update needed
[2026-10-28 16:50:22,998.998 INFO    ] Checking for camera pi updates...
[2026-10-28 16:50:23,031.031 INFO    ] 200
[2026-10-28 16:50:23,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:50:23,075.075 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:50:23,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:50:23,157.157 INFO    ] No camera update needed
[2026-10-28 16:50:23,159.159 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:50:23,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:50:23,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:50:23,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:50:25,212.212 INFO    ] ================================================
[2026-10-28 16:50:25,227.227 INFO    ] Launching Daemon at Wed Oct 28 16:50:25 IST 2026
[2026-10-28 16:50:25,238.238 INFO    ] ================================================
[2026-10-28 16:50:25,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:50:25
[2026-10-28 16:50:26,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:50:26,656.656 INFO    ] Initializing speech engine...
[2026-10-28 16:50:26,666.666 INFO    ] 2026-10-28 16:50:26
[2026-10-28 16:50:26,910.910 INFO    ] 2026-10-28 16:50:26
[2026-10-28 16:50:26,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:50:27,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:50:27,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:50:27,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:50:27,467.467 INFO    ] time= 28/10/2026 16:50:27
[2026-10-28 16:50:27,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:50:27,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:50:27,619.619 INFO    ] No existing commands found in stream
[2026-10-28 16:50:32,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:50:32,636.636 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-28 16:50:35,363.363 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:50:35,366.366 INFO    ] Checking for system updates...
[2026-10-28 16:50:35,402.402 INFO    ] 200
[2026-10-28 16:50:35,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:50:35,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:50:35,460.460 INFO    ] No update needed
[2026-10-28 16:50:35,462.462 INFO    ] Checking for camera pi updates...
[2026-10-28 16:50:35,496.496 INFO    ] 200
[2026-10-28 16:50:35,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:50:35,538.538 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:50:35,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:50:35,623.623 INFO    ] No camera update needed
[2026-10-28 16:50:35,625.625 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:50:35,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:50:35,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:50:35,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:50:37,679.679 INFO    ] ================================================
[2026-10-28 16:50:37,694.694 INFO    ] Launching Daemon at Wed Oct 28 16:50:37 IST 2026
[2026-10-28 16:50:37,705.705 INFO    ] ================================================
[2026-10-28 16:50:38,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:50:38
[2026-10-28 16:50:38,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:50:39,118.118 INFO    ] Initializing speech engine...
[2026-10-28 16:50:39,128.128 INFO    ] 2026-10-28 16:50:39
[2026-10-28 16:50:39,372.372 INFO    ] 2026-10-28 16:50:39
[2026-10-28 16:50:39,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:50:39,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:50:39,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:50:39,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:50:39,928.928 INFO    ] time= 28/10/2026 16:50:39
[2026-10-28 16:50:39,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:50:39,955.955 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:50:40,118.118 INFO    ] No existing commands found in stream
[2026-10-28 16:50:45,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:50:45,151.151 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 16:50:48,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:50:48,029.029 INFO    ] Checking for system updates...
[2026-10-28 16:50:48,066.066 INFO    ] 200
[2026-10-28 16:50:48,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:50:48,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:50:48,124.124 INFO    ] No update needed
[2026-10-28 16:50:48,126.126 INFO    ] Checking for camera pi updates...
[2026-10-28 16:50:48,159.159 INFO    ] 200
[2026-10-28 16:50:48,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:50:48,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:50:48,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:50:48,297.297 INFO    ] No camera update needed
[2026-10-28 16:50:48,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:50:48,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:50:48,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:50:48,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:50:50,351.351 INFO    ] ================================================
[2026-10-28 16:50:50,366.366 INFO    ] Launching Daemon at Wed Oct 28 16:50:50 IST 2026
[2026-10-28 16:50:50,376.376 INFO    ] ================================================
[2026-10-28 16:50:51,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:50:51
[2026-10-28 16:50:51,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:50:52,013.013 INFO    ] Initializing speech engine...
[2026-10-28 16:50:52,022.022 INFO    ] 2026-10-28 16:50:52
[2026-10-28 16:50:52,324.324 INFO    ] 2026-10-28 16:50:52
[2026-10-28 16:50:52,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:50:52,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:50:52,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:50:52,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:50:53,055.055 INFO    ] time= 28/10/2026 16:50:53
[2026-10-28 16:50:53,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:50:53,148.148 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:50:53,278.278 INFO    ] No existing commands found in stream
[2026-10-28 16:50:58,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:50:58,292.292 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-28 16:51:01,910.910 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:51:01,912.912 INFO    ] Checking for system updates...
[2026-10-28 16:51:01,970.970 INFO    ] 200
[2026-10-28 16:51:01,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:51:02,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:51:02,077.077 INFO    ] No update needed
[2026-10-28 16:51:02,080.080 INFO    ] Checking for camera pi updates...
[2026-10-28 16:51:02,161.161 INFO    ] 200
[2026-10-28 16:51:02,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:51:02,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:51:02,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:51:02,352.352 INFO    ] No camera update needed
[2026-10-28 16:51:02,356.356 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:51:02,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:51:02,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:51:02,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:51:04,433.433 INFO    ] ================================================
[2026-10-28 16:51:04,448.448 INFO    ] Launching Daemon at Wed Oct 28 16:51:04 IST 2026
[2026-10-28 16:51:04,459.459 INFO    ] ================================================
[2026-10-28 16:51:05,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:51:05
[2026-10-28 16:51:05,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:51:06,019.019 INFO    ] Initializing speech engine...
[2026-10-28 16:51:06,033.033 INFO    ] 2026-10-28 16:51:06
[2026-10-28 16:51:06,342.342 INFO    ] 2026-10-28 16:51:06
[2026-10-28 16:51:06,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:51:06,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:51:06,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:51:06,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:51:06,863.863 INFO    ] time= 28/10/2026 16:51:06
[2026-10-28 16:51:06,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:51:06,898.898 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:51:07,083.083 INFO    ] No existing commands found in stream
[2026-10-28 16:51:12,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:51:12,111.111 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-28 16:51:15,395.395 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:51:15,398.398 INFO    ] Checking for system updates...
[2026-10-28 16:51:15,435.435 INFO    ] 200
[2026-10-28 16:51:15,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:51:15,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:51:15,497.497 INFO    ] No update needed
[2026-10-28 16:51:15,499.499 INFO    ] Checking for camera pi updates...
[2026-10-28 16:51:15,532.532 INFO    ] 200
[2026-10-28 16:51:15,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:51:15,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:51:15,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:51:15,661.661 INFO    ] No camera update needed
[2026-10-28 16:51:15,663.663 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:51:15,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:51:15,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:51:15,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:51:17,716.716 INFO    ] ================================================
[2026-10-28 16:51:17,731.731 INFO    ] Launching Daemon at Wed Oct 28 16:51:17 IST 2026
[2026-10-28 16:51:17,742.742 INFO    ] ================================================
[2026-10-28 16:51:18,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:51:18
[2026-10-28 16:51:18,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:51:19,230.230 INFO    ] Initializing speech engine...
[2026-10-28 16:51:19,250.250 INFO    ] 2026-10-28 16:51:19
[2026-10-28 16:51:19,496.496 INFO    ] 2026-10-28 16:51:19
[2026-10-28 16:51:19,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:51:19,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:51:19,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:51:20,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:51:20,077.077 INFO    ] time= 28/10/2026 16:51:20
[2026-10-28 16:51:20,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:51:20,112.112 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:51:20,231.231 INFO    ] No existing commands found in stream
[2026-10-28 16:51:25,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:51:25,258.258 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 16:51:28,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:51:28,128.128 INFO    ] Checking for system updates...
[2026-10-28 16:51:28,167.167 INFO    ] 200
[2026-10-28 16:51:28,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:51:28,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:51:28,224.224 INFO    ] No update needed
[2026-10-28 16:51:28,226.226 INFO    ] Checking for camera pi updates...
[2026-10-28 16:51:28,260.260 INFO    ] 200
[2026-10-28 16:51:28,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:51:28,302.302 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:51:28,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:51:28,359.359 INFO    ] No camera update needed
[2026-10-28 16:51:28,361.361 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:51:28,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:51:28,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:51:28,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:51:30,414.414 INFO    ] ================================================
[2026-10-28 16:51:30,428.428 INFO    ] Launching Daemon at Wed Oct 28 16:51:30 IST 2026
[2026-10-28 16:51:30,439.439 INFO    ] ================================================
[2026-10-28 16:51:31,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:51:31
[2026-10-28 16:51:31,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:51:31,923.923 INFO    ] Initializing speech engine...
[2026-10-28 16:51:31,930.930 INFO    ] 2026-10-28 16:51:31
[2026-10-28 16:51:32,220.220 INFO    ] 2026-10-28 16:51:32
[2026-10-28 16:51:32,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:51:32,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:51:32,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:51:32,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:51:32,743.743 INFO    ] time= 28/10/2026 16:51:32
[2026-10-28 16:51:32,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:51:32,837.837 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:51:32,943.943 INFO    ] No existing commands found in stream
[2026-10-28 16:51:37,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:51:37,957.957 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-28 16:51:41,431.431 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:51:41,433.433 INFO    ] Checking for system updates...
[2026-10-28 16:51:41,469.469 INFO    ] 200
[2026-10-28 16:51:41,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:51:41,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:51:41,529.529 INFO    ] No update needed
[2026-10-28 16:51:41,531.531 INFO    ] Checking for camera pi updates...
[2026-10-28 16:51:41,566.566 INFO    ] 200
[2026-10-28 16:51:41,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:51:41,612.612 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:51:41,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:51:41,720.720 INFO    ] No camera update needed
[2026-10-28 16:51:41,722.722 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:51:41,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:51:41,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:51:41,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:51:43,776.776 INFO    ] ================================================
[2026-10-28 16:51:43,791.791 INFO    ] Launching Daemon at Wed Oct 28 16:51:43 IST 2026
[2026-10-28 16:51:43,801.801 INFO    ] ================================================
[2026-10-28 16:51:44,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:51:44
[2026-10-28 16:51:44,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:51:45,260.260 INFO    ] Initializing speech engine...
[2026-10-28 16:51:45,267.267 INFO    ] 2026-10-28 16:51:45
[2026-10-28 16:51:45,528.528 INFO    ] 2026-10-28 16:51:45
[2026-10-28 16:51:45,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:51:45,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:51:45,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:51:46,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:51:46,073.073 INFO    ] time= 28/10/2026 16:51:46
[2026-10-28 16:51:46,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:51:46,102.102 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:51:46,240.240 INFO    ] No existing commands found in stream
[2026-10-28 16:51:51,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:51:51,273.273 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 16:51:54,388.388 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:51:54,390.390 INFO    ] Checking for system updates...
[2026-10-28 16:51:54,429.429 INFO    ] 200
[2026-10-28 16:51:54,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:51:54,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:51:54,486.486 INFO    ] No update needed
[2026-10-28 16:51:54,488.488 INFO    ] Checking for camera pi updates...
[2026-10-28 16:51:54,522.522 INFO    ] 200
[2026-10-28 16:51:54,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:51:54,565.565 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:51:54,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:51:54,651.651 INFO    ] No camera update needed
[2026-10-28 16:51:54,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:51:54,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:51:54,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:51:54,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:51:56,708.708 INFO    ] ================================================
[2026-10-28 16:51:56,723.723 INFO    ] Launching Daemon at Wed Oct 28 16:51:56 IST 2026
[2026-10-28 16:51:56,734.734 INFO    ] ================================================
[2026-10-28 16:51:57,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:51:57
[2026-10-28 16:51:57,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:51:58,144.144 INFO    ] Initializing speech engine...
[2026-10-28 16:51:58,167.167 INFO    ] 2026-10-28 16:51:58
[2026-10-28 16:51:58,421.421 INFO    ] 2026-10-28 16:51:58
[2026-10-28 16:51:58,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:51:58,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:51:58,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:51:58,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:51:58,974.974 INFO    ] time= 28/10/2026 16:51:58
[2026-10-28 16:51:58,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:51:59,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:51:59,160.160 INFO    ] No existing commands found in stream
[2026-10-28 16:52:04,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:52:04,188.188 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-28 16:52:06,785.785 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:52:06,788.788 INFO    ] Checking for system updates...
[2026-10-28 16:52:06,826.826 INFO    ] 200
[2026-10-28 16:52:06,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:52:06,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:52:06,886.886 INFO    ] No update needed
[2026-10-28 16:52:06,888.888 INFO    ] Checking for camera pi updates...
[2026-10-28 16:52:06,923.923 INFO    ] 200
[2026-10-28 16:52:06,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:52:06,968.968 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:52:07,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:52:07,163.163 INFO    ] No camera update needed
[2026-10-28 16:52:07,166.166 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:52:07,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:52:07,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:52:07,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:52:09,221.221 INFO    ] ================================================
[2026-10-28 16:52:09,236.236 INFO    ] Launching Daemon at Wed Oct 28 16:52:09 IST 2026
[2026-10-28 16:52:09,247.247 INFO    ] ================================================
[2026-10-28 16:52:09,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:52:09
[2026-10-28 16:52:10,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:52:10,796.796 INFO    ] Initializing speech engine...
[2026-10-28 16:52:10,805.805 INFO    ] 2026-10-28 16:52:10
[2026-10-28 16:52:11,083.083 INFO    ] 2026-10-28 16:52:11
[2026-10-28 16:52:11,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:52:11,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:52:11,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:52:11,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:52:11,639.639 INFO    ] time= 28/10/2026 16:52:11
[2026-10-28 16:52:11,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:52:11,675.675 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:52:11,785.785 INFO    ] No existing commands found in stream
[2026-10-28 16:52:16,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:52:16,808.808 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 16:52:17,882.882 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:52:17,885.885 INFO    ] Checking for system updates...
[2026-10-28 16:52:17,920.920 INFO    ] 200
[2026-10-28 16:52:17,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:52:17,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:52:17,978.978 INFO    ] No update needed
[2026-10-28 16:52:17,981.981 INFO    ] Checking for camera pi updates...
[2026-10-28 16:52:18,017.017 INFO    ] 200
[2026-10-28 16:52:18,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:52:18,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:52:18,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:52:18,166.166 INFO    ] No camera update needed
[2026-10-28 16:52:18,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:52:18,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:52:18,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:52:18,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:52:20,223.223 INFO    ] ================================================
[2026-10-28 16:52:20,238.238 INFO    ] Launching Daemon at Wed Oct 28 16:52:20 IST 2026
[2026-10-28 16:52:20,249.249 INFO    ] ================================================
[2026-10-28 16:52:20,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:52:20
[2026-10-28 16:52:21,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:52:21,704.704 INFO    ] Initializing speech engine...
[2026-10-28 16:52:21,711.711 INFO    ] 2026-10-28 16:52:21
[2026-10-28 16:52:21,964.964 INFO    ] 2026-10-28 16:52:21
[2026-10-28 16:52:22,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:52:22,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:52:22,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:52:22,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:52:22,511.511 INFO    ] time= 28/10/2026 16:52:22
[2026-10-28 16:52:22,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:52:22,536.536 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:52:22,685.685 INFO    ] No existing commands found in stream
[2026-10-28 16:52:27,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:52:27,718.718 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-28 16:52:32,188.188 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:52:32,191.191 INFO    ] Checking for system updates...
[2026-10-28 16:52:32,229.229 INFO    ] 200
[2026-10-28 16:52:32,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:52:32,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:52:32,293.293 INFO    ] No update needed
[2026-10-28 16:52:32,296.296 INFO    ] Checking for camera pi updates...
[2026-10-28 16:52:32,334.334 INFO    ] 200
[2026-10-28 16:52:32,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:52:32,388.388 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:52:32,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:52:32,528.528 INFO    ] No camera update needed
[2026-10-28 16:52:32,530.530 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:52:32,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:52:32,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:52:32,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:52:34,584.584 INFO    ] ================================================
[2026-10-28 16:52:34,599.599 INFO    ] Launching Daemon at Wed Oct 28 16:52:34 IST 2026
[2026-10-28 16:52:34,609.609 INFO    ] ================================================
[2026-10-28 16:52:35,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:52:35
[2026-10-28 16:52:35,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:52:36,091.091 INFO    ] Initializing speech engine...
[2026-10-28 16:52:36,096.096 INFO    ] 2026-10-28 16:52:36
[2026-10-28 16:52:36,387.387 INFO    ] 2026-10-28 16:52:36
[2026-10-28 16:52:36,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:52:36,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:52:36,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:52:36,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:52:36,896.896 INFO    ] time= 28/10/2026 16:52:36
[2026-10-28 16:52:36,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:52:37,005.005 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:52:37,170.170 INFO    ] No existing commands found in stream
[2026-10-28 16:52:42,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:52:42,185.185 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 16:52:46,239.239 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:52:46,246.246 INFO    ] Checking for system updates...
[2026-10-28 16:52:46,284.284 INFO    ] 200
[2026-10-28 16:52:46,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:52:46,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:52:46,347.347 INFO    ] No update needed
[2026-10-28 16:52:46,350.350 INFO    ] Checking for camera pi updates...
[2026-10-28 16:52:46,384.384 INFO    ] 200
[2026-10-28 16:52:46,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:52:46,429.429 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:52:46,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:52:46,511.511 INFO    ] No camera update needed
[2026-10-28 16:52:46,514.514 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:52:46,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:52:46,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:52:46,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:52:48,569.569 INFO    ] ================================================
[2026-10-28 16:52:48,584.584 INFO    ] Launching Daemon at Wed Oct 28 16:52:48 IST 2026
[2026-10-28 16:52:48,595.595 INFO    ] ================================================
[2026-10-28 16:52:49,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:52:49
[2026-10-28 16:52:49,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:52:50,047.047 INFO    ] Initializing speech engine...
[2026-10-28 16:52:50,056.056 INFO    ] 2026-10-28 16:52:50
[2026-10-28 16:52:50,314.314 INFO    ] 2026-10-28 16:52:50
[2026-10-28 16:52:50,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:52:50,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:52:50,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:52:50,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:52:50,859.859 INFO    ] time= 28/10/2026 16:52:50
[2026-10-28 16:52:50,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:52:50,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:52:51,017.017 INFO    ] No existing commands found in stream
[2026-10-28 16:52:56,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:52:56,055.055 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 16:52:59,333.333 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:52:59,335.335 INFO    ] Checking for system updates...
[2026-10-28 16:52:59,371.371 INFO    ] 200
[2026-10-28 16:52:59,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:52:59,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:52:59,427.427 INFO    ] No update needed
[2026-10-28 16:52:59,430.430 INFO    ] Checking for camera pi updates...
[2026-10-28 16:52:59,463.463 INFO    ] 200
[2026-10-28 16:52:59,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:52:59,509.509 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:52:59,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:52:59,592.592 INFO    ] No camera update needed
[2026-10-28 16:52:59,594.594 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:52:59,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:52:59,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:52:59,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:53:01,648.648 INFO    ] ================================================
[2026-10-28 16:53:01,663.663 INFO    ] Launching Daemon at Wed Oct 28 16:53:01 IST 2026
[2026-10-28 16:53:01,674.674 INFO    ] ================================================
[2026-10-28 16:53:02,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:53:02
[2026-10-28 16:53:03,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:53:03,290.290 INFO    ] Initializing speech engine...
[2026-10-28 16:53:03,313.313 INFO    ] 2026-10-28 16:53:03
[2026-10-28 16:53:03,642.642 INFO    ] 2026-10-28 16:53:03
[2026-10-28 16:53:03,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:53:03,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:53:03,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:53:04,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:53:04,203.203 INFO    ] time= 28/10/2026 16:53:04
[2026-10-28 16:53:04,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:53:04,308.308 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:53:04,445.445 INFO    ] No existing commands found in stream
[2026-10-28 16:53:09,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:53:09,478.478 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 16:53:13,488.488 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:53:13,490.490 INFO    ] Checking for system updates...
[2026-10-28 16:53:13,526.526 INFO    ] 200
[2026-10-28 16:53:13,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:53:13,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:53:13,587.587 INFO    ] No update needed
[2026-10-28 16:53:13,589.589 INFO    ] Checking for camera pi updates...
[2026-10-28 16:53:13,625.625 INFO    ] 200
[2026-10-28 16:53:13,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:53:13,671.671 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:53:13,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:53:13,758.758 INFO    ] No camera update needed
[2026-10-28 16:53:13,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:53:13,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:53:13,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:53:13,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:53:15,815.815 INFO    ] ================================================
[2026-10-28 16:53:15,830.830 INFO    ] Launching Daemon at Wed Oct 28 16:53:15 IST 2026
[2026-10-28 16:53:15,842.842 INFO    ] ================================================
[2026-10-28 16:53:16,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:53:16
[2026-10-28 16:53:17,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:53:17,290.290 INFO    ] Initializing speech engine...
[2026-10-28 16:53:17,299.299 INFO    ] 2026-10-28 16:53:17
[2026-10-28 16:53:17,550.550 INFO    ] 2026-10-28 16:53:17
[2026-10-28 16:53:17,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:53:17,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:53:17,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:53:18,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:53:18,105.105 INFO    ] time= 28/10/2026 16:53:18
[2026-10-28 16:53:18,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:53:18,152.152 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:53:18,276.276 INFO    ] No existing commands found in stream
[2026-10-28 16:53:23,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:53:23,304.304 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-28 16:53:26,228.228 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:53:26,230.230 INFO    ] Checking for system updates...
[2026-10-28 16:53:26,266.266 INFO    ] 200
[2026-10-28 16:53:26,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:53:26,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:53:26,329.329 INFO    ] No update needed
[2026-10-28 16:53:26,332.332 INFO    ] Checking for camera pi updates...
[2026-10-28 16:53:26,366.366 INFO    ] 200
[2026-10-28 16:53:26,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:53:26,410.410 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:53:26,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:53:26,489.489 INFO    ] No camera update needed
[2026-10-28 16:53:26,492.492 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:53:26,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:53:26,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:53:26,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:53:28,545.545 INFO    ] ================================================
[2026-10-28 16:53:28,561.561 INFO    ] Launching Daemon at Wed Oct 28 16:53:28 IST 2026
[2026-10-28 16:53:28,572.572 INFO    ] ================================================
[2026-10-28 16:53:29,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:53:29
[2026-10-28 16:53:29,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:53:30,029.029 INFO    ] Initializing speech engine...
[2026-10-28 16:53:30,048.048 INFO    ] 2026-10-28 16:53:30
[2026-10-28 16:53:30,312.312 INFO    ] 2026-10-28 16:53:30
[2026-10-28 16:53:30,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:53:30,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:53:30,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:53:30,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:53:30,922.922 INFO    ] time= 28/10/2026 16:53:30
[2026-10-28 16:53:30,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:53:30,947.947 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:53:31,096.096 INFO    ] No existing commands found in stream
[2026-10-28 16:53:36,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:53:36,113.113 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-28 16:53:37,667.667 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:53:37,670.670 INFO    ] Checking for system updates...
[2026-10-28 16:53:37,709.709 INFO    ] 200
[2026-10-28 16:53:37,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:53:37,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:53:37,766.766 INFO    ] No update needed
[2026-10-28 16:53:37,768.768 INFO    ] Checking for camera pi updates...
[2026-10-28 16:53:37,801.801 INFO    ] 200
[2026-10-28 16:53:37,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:53:37,846.846 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:53:37,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:53:37,945.945 INFO    ] No camera update needed
[2026-10-28 16:53:37,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:53:37,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:53:37,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:53:37,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:53:40,000.000 INFO    ] ================================================
[2026-10-28 16:53:40,016.016 INFO    ] Launching Daemon at Wed Oct 28 16:53:40 IST 2026
[2026-10-28 16:53:40,026.026 INFO    ] ================================================
[2026-10-28 16:53:40,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:53:40
[2026-10-28 16:53:41,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:53:41,439.439 INFO    ] Initializing speech engine...
[2026-10-28 16:53:41,462.462 INFO    ] 2026-10-28 16:53:41
[2026-10-28 16:53:41,738.738 INFO    ] 2026-10-28 16:53:41
[2026-10-28 16:53:41,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:53:42,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:53:42,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:53:42,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:53:42,323.323 INFO    ] time= 28/10/2026 16:53:42
[2026-10-28 16:53:42,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:53:42,359.359 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:53:42,494.494 INFO    ] No existing commands found in stream
[2026-10-28 16:53:47,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:53:47,522.522 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 16:53:48,715.715 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:53:48,717.717 INFO    ] Checking for system updates...
[2026-10-28 16:53:48,753.753 INFO    ] 200
[2026-10-28 16:53:48,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:53:48,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:53:48,816.816 INFO    ] No update needed
[2026-10-28 16:53:48,818.818 INFO    ] Checking for camera pi updates...
[2026-10-28 16:53:48,855.855 INFO    ] 200
[2026-10-28 16:53:48,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:53:48,897.897 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:53:48,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:53:48,989.989 INFO    ] No camera update needed
[2026-10-28 16:53:48,992.992 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:53:48,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:53:49,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:53:49,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:53:51,047.047 INFO    ] ================================================
[2026-10-28 16:53:51,064.064 INFO    ] Launching Daemon at Wed Oct 28 16:53:51 IST 2026
[2026-10-28 16:53:51,075.075 INFO    ] ================================================
[2026-10-28 16:53:51,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:53:51
[2026-10-28 16:53:52,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:53:52,525.525 INFO    ] Initializing speech engine...
[2026-10-28 16:53:52,533.533 INFO    ] 2026-10-28 16:53:52
[2026-10-28 16:53:52,791.791 INFO    ] 2026-10-28 16:53:52
[2026-10-28 16:53:52,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:53:53,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:53:53,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:53:53,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:53:53,494.494 INFO    ] time= 28/10/2026 16:53:53
[2026-10-28 16:53:53,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:53:53,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:53:53,727.727 INFO    ] No existing commands found in stream
[2026-10-28 16:53:58,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:53:58,749.749 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-28 16:54:01,241.241 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:54:01,245.245 INFO    ] Checking for system updates...
[2026-10-28 16:54:01,302.302 INFO    ] 200
[2026-10-28 16:54:01,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:54:01,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:54:01,399.399 INFO    ] No update needed
[2026-10-28 16:54:01,408.408 INFO    ] Checking for camera pi updates...
[2026-10-28 16:54:01,454.454 INFO    ] 200
[2026-10-28 16:54:01,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:54:01,551.551 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:54:01,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:54:01,683.683 INFO    ] No camera update needed
[2026-10-28 16:54:01,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:54:01,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:54:01,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:54:01,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:54:03,747.747 INFO    ] ================================================
[2026-10-28 16:54:03,762.762 INFO    ] Launching Daemon at Wed Oct 28 16:54:03 IST 2026
[2026-10-28 16:54:03,773.773 INFO    ] ================================================
[2026-10-28 16:54:04,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:54:04
[2026-10-28 16:54:04,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:54:05,207.207 INFO    ] Initializing speech engine...
[2026-10-28 16:54:05,222.222 INFO    ] 2026-10-28 16:54:05
[2026-10-28 16:54:05,505.505 INFO    ] 2026-10-28 16:54:05
[2026-10-28 16:54:05,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:54:05,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:54:05,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:54:06,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:54:06,112.112 INFO    ] time= 28/10/2026 16:54:06
[2026-10-28 16:54:06,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:54:06,136.136 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:54:06,270.270 INFO    ] No existing commands found in stream
[2026-10-28 16:54:11,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:54:11,308.308 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-28 16:54:14,687.687 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:54:14,689.689 INFO    ] Checking for system updates...
[2026-10-28 16:54:14,726.726 INFO    ] 200
[2026-10-28 16:54:14,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:54:14,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:54:14,791.791 INFO    ] No update needed
[2026-10-28 16:54:14,794.794 INFO    ] Checking for camera pi updates...
[2026-10-28 16:54:14,829.829 INFO    ] 200
[2026-10-28 16:54:14,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:54:14,877.877 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:54:15,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:54:15,065.065 INFO    ] No camera update needed
[2026-10-28 16:54:15,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:54:15,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:54:15,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:54:15,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:54:17,123.123 INFO    ] ================================================
[2026-10-28 16:54:17,139.139 INFO    ] Launching Daemon at Wed Oct 28 16:54:17 IST 2026
[2026-10-28 16:54:17,150.150 INFO    ] ================================================
[2026-10-28 16:54:17,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:54:17
[2026-10-28 16:54:18,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:54:18,574.574 INFO    ] Initializing speech engine...
[2026-10-28 16:54:18,581.581 INFO    ] 2026-10-28 16:54:18
[2026-10-28 16:54:18,832.832 INFO    ] 2026-10-28 16:54:18
[2026-10-28 16:54:18,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:54:19,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:54:19,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:54:19,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:54:19,400.400 INFO    ] time= 28/10/2026 16:54:19
[2026-10-28 16:54:19,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:54:19,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:54:19,558.558 INFO    ] No existing commands found in stream
[2026-10-28 16:54:24,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:54:24,576.576 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 16:54:25,211.211 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:54:25,214.214 INFO    ] Checking for system updates...
[2026-10-28 16:54:25,249.249 INFO    ] 200
[2026-10-28 16:54:25,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:54:25,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:54:25,307.307 INFO    ] No update needed
[2026-10-28 16:54:25,310.310 INFO    ] Checking for camera pi updates...
[2026-10-28 16:54:25,344.344 INFO    ] 200
[2026-10-28 16:54:25,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:54:25,387.387 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:54:25,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:54:25,470.470 INFO    ] No camera update needed
[2026-10-28 16:54:25,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:54:25,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:54:25,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:54:25,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:54:27,527.527 INFO    ] ================================================
[2026-10-28 16:54:27,542.542 INFO    ] Launching Daemon at Wed Oct 28 16:54:27 IST 2026
[2026-10-28 16:54:27,554.554 INFO    ] ================================================
[2026-10-28 16:54:28,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:54:28
[2026-10-28 16:54:28,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:54:28,990.990 INFO    ] Initializing speech engine...
[2026-10-28 16:54:28,997.997 INFO    ] 2026-10-28 16:54:28
[2026-10-28 16:54:29,271.271 INFO    ] 2026-10-28 16:54:29
[2026-10-28 16:54:29,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:54:29,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:54:29,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:54:29,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:54:29,834.834 INFO    ] time= 28/10/2026 16:54:29
[2026-10-28 16:54:29,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:54:29,858.858 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:54:29,988.988 INFO    ] No existing commands found in stream
[2026-10-28 16:54:35,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:54:35,015.015 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-28 16:54:37,988.988 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:54:37,991.991 INFO    ] Checking for system updates...
[2026-10-28 16:54:38,030.030 INFO    ] 200
[2026-10-28 16:54:38,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:54:38,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:54:38,096.096 INFO    ] No update needed
[2026-10-28 16:54:38,099.099 INFO    ] Checking for camera pi updates...
[2026-10-28 16:54:38,135.135 INFO    ] 200
[2026-10-28 16:54:38,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:54:38,181.181 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:54:38,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:54:38,274.274 INFO    ] No camera update needed
[2026-10-28 16:54:38,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:54:38,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:54:38,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:54:38,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:54:40,333.333 INFO    ] ================================================
[2026-10-28 16:54:40,348.348 INFO    ] Launching Daemon at Wed Oct 28 16:54:40 IST 2026
[2026-10-28 16:54:40,359.359 INFO    ] ================================================
[2026-10-28 16:54:40,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:54:40
[2026-10-28 16:54:41,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:54:41,821.821 INFO    ] Initializing speech engine...
[2026-10-28 16:54:41,828.828 INFO    ] 2026-10-28 16:54:41
[2026-10-28 16:54:42,091.091 INFO    ] 2026-10-28 16:54:42
[2026-10-28 16:54:42,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:54:42,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:54:42,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:54:42,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:54:42,665.665 INFO    ] time= 28/10/2026 16:54:42
[2026-10-28 16:54:42,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:54:42,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:54:42,785.785 INFO    ] No existing commands found in stream
[2026-10-28 16:54:47,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:54:47,825.825 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-28 16:54:50,644.644 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:54:50,647.647 INFO    ] Checking for system updates...
[2026-10-28 16:54:50,682.682 INFO    ] 200
[2026-10-28 16:54:50,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:54:50,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:54:50,739.739 INFO    ] No update needed
[2026-10-28 16:54:50,741.741 INFO    ] Checking for camera pi updates...
[2026-10-28 16:54:50,774.774 INFO    ] 200
[2026-10-28 16:54:50,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:54:50,822.822 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:54:50,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:54:50,906.906 INFO    ] No camera update needed
[2026-10-28 16:54:50,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:54:50,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:54:50,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:54:50,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:54:52,962.962 INFO    ] ================================================
[2026-10-28 16:54:52,978.978 INFO    ] Launching Daemon at Wed Oct 28 16:54:52 IST 2026
[2026-10-28 16:54:52,989.989 INFO    ] ================================================
[2026-10-28 16:54:53,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:54:53
[2026-10-28 16:54:54,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:54:54,423.423 INFO    ] Initializing speech engine...
[2026-10-28 16:54:54,432.432 INFO    ] 2026-10-28 16:54:54
[2026-10-28 16:54:54,677.677 INFO    ] 2026-10-28 16:54:54
[2026-10-28 16:54:54,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:54:54,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:54:54,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:54:55,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:54:55,231.231 INFO    ] time= 28/10/2026 16:54:55
[2026-10-28 16:54:55,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:54:55,255.255 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:54:55,386.386 INFO    ] No existing commands found in stream
[2026-10-28 16:55:00,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:55:00,408.408 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-28 16:55:04,143.143 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:55:04,146.146 INFO    ] Checking for system updates...
[2026-10-28 16:55:04,181.181 INFO    ] 200
[2026-10-28 16:55:04,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:55:04,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:55:04,238.238 INFO    ] No update needed
[2026-10-28 16:55:04,240.240 INFO    ] Checking for camera pi updates...
[2026-10-28 16:55:04,274.274 INFO    ] 200
[2026-10-28 16:55:04,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:55:04,317.317 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:55:04,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:55:04,401.401 INFO    ] No camera update needed
[2026-10-28 16:55:04,404.404 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:55:04,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:55:04,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:55:04,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:55:06,456.456 INFO    ] ================================================
[2026-10-28 16:55:06,471.471 INFO    ] Launching Daemon at Wed Oct 28 16:55:06 IST 2026
[2026-10-28 16:55:06,483.483 INFO    ] ================================================
[2026-10-28 16:55:07,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:55:07
[2026-10-28 16:55:07,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:55:07,888.888 INFO    ] Initializing speech engine...
[2026-10-28 16:55:07,894.894 INFO    ] 2026-10-28 16:55:07
[2026-10-28 16:55:08,184.184 INFO    ] 2026-10-28 16:55:08
[2026-10-28 16:55:08,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:55:08,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:55:08,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:55:08,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:55:08,726.726 INFO    ] time= 28/10/2026 16:55:08
[2026-10-28 16:55:08,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:55:08,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:55:08,944.944 INFO    ] No existing commands found in stream
[2026-10-28 16:55:13,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:55:13,964.964 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-28 16:55:18,189.189 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:55:18,191.191 INFO    ] Checking for system updates...
[2026-10-28 16:55:18,227.227 INFO    ] 200
[2026-10-28 16:55:18,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:55:18,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:55:18,284.284 INFO    ] No update needed
[2026-10-28 16:55:18,286.286 INFO    ] Checking for camera pi updates...
[2026-10-28 16:55:18,319.319 INFO    ] 200
[2026-10-28 16:55:18,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:55:18,362.362 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:55:18,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:55:18,473.473 INFO    ] No camera update needed
[2026-10-28 16:55:18,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:55:18,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:55:18,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:55:18,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:55:20,528.528 INFO    ] ================================================
[2026-10-28 16:55:20,543.543 INFO    ] Launching Daemon at Wed Oct 28 16:55:20 IST 2026
[2026-10-28 16:55:20,555.555 INFO    ] ================================================
[2026-10-28 16:55:21,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:55:21
[2026-10-28 16:55:21,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:55:21,958.958 INFO    ] Initializing speech engine...
[2026-10-28 16:55:21,966.966 INFO    ] 2026-10-28 16:55:21
[2026-10-28 16:55:22,258.258 INFO    ] 2026-10-28 16:55:22
[2026-10-28 16:55:22,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:55:22,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:55:22,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:55:22,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:55:22,820.820 INFO    ] time= 28/10/2026 16:55:22
[2026-10-28 16:55:22,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:55:22,899.899 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:55:23,028.028 INFO    ] No existing commands found in stream
[2026-10-28 16:55:28,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:55:28,058.058 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-28 16:55:31,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:55:31,670.670 INFO    ] Checking for system updates...
[2026-10-28 16:55:31,711.711 INFO    ] 200
[2026-10-28 16:55:31,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:55:31,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:55:31,776.776 INFO    ] No update needed
[2026-10-28 16:55:31,779.779 INFO    ] Checking for camera pi updates...
[2026-10-28 16:55:31,817.817 INFO    ] 200
[2026-10-28 16:55:31,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:55:31,865.865 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:55:31,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:55:31,959.959 INFO    ] No camera update needed
[2026-10-28 16:55:31,962.962 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:55:31,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:55:31,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:55:31,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:55:34,020.020 INFO    ] ================================================
[2026-10-28 16:55:34,035.035 INFO    ] Launching Daemon at Wed Oct 28 16:55:34 IST 2026
[2026-10-28 16:55:34,046.046 INFO    ] ================================================
[2026-10-28 16:55:34,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:55:34
[2026-10-28 16:55:35,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:55:35,459.459 INFO    ] Initializing speech engine...
[2026-10-28 16:55:35,478.478 INFO    ] 2026-10-28 16:55:35
[2026-10-28 16:55:35,731.731 INFO    ] 2026-10-28 16:55:35
[2026-10-28 16:55:35,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:55:36,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:55:36,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:55:36,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:55:36,301.301 INFO    ] time= 28/10/2026 16:55:36
[2026-10-28 16:55:36,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:55:36,325.325 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:55:36,458.458 INFO    ] No existing commands found in stream
[2026-10-28 16:55:41,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:55:41,484.484 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-28 16:55:45,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:55:45,426.426 INFO    ] Checking for system updates...
[2026-10-28 16:55:45,461.461 INFO    ] 200
[2026-10-28 16:55:45,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:55:45,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:55:45,519.519 INFO    ] No update needed
[2026-10-28 16:55:45,521.521 INFO    ] Checking for camera pi updates...
[2026-10-28 16:55:45,555.555 INFO    ] 200
[2026-10-28 16:55:45,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:55:45,601.601 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:55:45,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:55:45,704.704 INFO    ] No camera update needed
[2026-10-28 16:55:45,706.706 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:55:45,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:55:45,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:55:45,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:55:47,760.760 INFO    ] ================================================
[2026-10-28 16:55:47,776.776 INFO    ] Launching Daemon at Wed Oct 28 16:55:47 IST 2026
[2026-10-28 16:55:47,787.787 INFO    ] ================================================
[2026-10-28 16:55:48,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:55:48
[2026-10-28 16:55:49,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:55:49,332.332 INFO    ] Initializing speech engine...
[2026-10-28 16:55:49,340.340 INFO    ] 2026-10-28 16:55:49
[2026-10-28 16:55:49,606.606 INFO    ] 2026-10-28 16:55:49
[2026-10-28 16:55:49,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:55:49,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:55:49,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:55:50,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:55:50,147.147 INFO    ] time= 28/10/2026 16:55:50
[2026-10-28 16:55:50,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:55:50,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:55:50,338.338 INFO    ] No existing commands found in stream
[2026-10-28 16:55:55,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:55:55,371.371 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 16:55:59,167.167 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:55:59,170.170 INFO    ] Checking for system updates...
[2026-10-28 16:55:59,207.207 INFO    ] 200
[2026-10-28 16:55:59,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:55:59,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:55:59,264.264 INFO    ] No update needed
[2026-10-28 16:55:59,267.267 INFO    ] Checking for camera pi updates...
[2026-10-28 16:55:59,301.301 INFO    ] 200
[2026-10-28 16:55:59,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:55:59,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:55:59,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:55:59,427.427 INFO    ] No camera update needed
[2026-10-28 16:55:59,429.429 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:55:59,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:55:59,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:55:59,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:56:01,484.484 INFO    ] ================================================
[2026-10-28 16:56:01,500.500 INFO    ] Launching Daemon at Wed Oct 28 16:56:01 IST 2026
[2026-10-28 16:56:01,511.511 INFO    ] ================================================
[2026-10-28 16:56:02,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:56:02
[2026-10-28 16:56:02,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:56:03,250.250 INFO    ] Initializing speech engine...
[2026-10-28 16:56:03,259.259 INFO    ] 2026-10-28 16:56:03
[2026-10-28 16:56:03,554.554 INFO    ] 2026-10-28 16:56:03
[2026-10-28 16:56:03,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:56:03,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:56:03,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:56:04,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:56:04,146.146 INFO    ] time= 28/10/2026 16:56:04
[2026-10-28 16:56:04,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:56:04,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:56:04,319.319 INFO    ] No existing commands found in stream
[2026-10-28 16:56:09,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:56:09,353.353 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-28 16:56:12,153.153 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:56:12,156.156 INFO    ] Checking for system updates...
[2026-10-28 16:56:12,192.192 INFO    ] 200
[2026-10-28 16:56:12,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:56:12,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:56:12,251.251 INFO    ] No update needed
[2026-10-28 16:56:12,254.254 INFO    ] Checking for camera pi updates...
[2026-10-28 16:56:12,288.288 INFO    ] 200
[2026-10-28 16:56:12,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:56:12,330.330 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:56:12,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:56:12,415.415 INFO    ] No camera update needed
[2026-10-28 16:56:12,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:56:12,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:56:12,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:56:12,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:56:14,470.470 INFO    ] ================================================
[2026-10-28 16:56:14,486.486 INFO    ] Launching Daemon at Wed Oct 28 16:56:14 IST 2026
[2026-10-28 16:56:14,497.497 INFO    ] ================================================
[2026-10-28 16:56:15,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:56:15
[2026-10-28 16:56:15,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:56:16,081.081 INFO    ] Initializing speech engine...
[2026-10-28 16:56:16,095.095 INFO    ] 2026-10-28 16:56:16
[2026-10-28 16:56:16,405.405 INFO    ] 2026-10-28 16:56:16
[2026-10-28 16:56:16,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:56:16,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:56:16,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:56:17,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:56:17,077.077 INFO    ] time= 28/10/2026 16:56:17
[2026-10-28 16:56:17,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:56:17,185.185 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:56:17,317.317 INFO    ] No existing commands found in stream
[2026-10-28 16:56:22,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:56:22,354.354 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-28 16:56:26,386.386 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:56:26,389.389 INFO    ] Checking for system updates...
[2026-10-28 16:56:26,426.426 INFO    ] 200
[2026-10-28 16:56:26,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:56:26,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:56:26,486.486 INFO    ] No update needed
[2026-10-28 16:56:26,488.488 INFO    ] Checking for camera pi updates...
[2026-10-28 16:56:26,522.522 INFO    ] 200
[2026-10-28 16:56:26,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:56:26,565.565 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:56:26,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:56:26,749.749 INFO    ] No camera update needed
[2026-10-28 16:56:26,751.751 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:56:26,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:56:26,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:56:26,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:56:28,807.807 INFO    ] ================================================
[2026-10-28 16:56:28,822.822 INFO    ] Launching Daemon at Wed Oct 28 16:56:28 IST 2026
[2026-10-28 16:56:28,832.832 INFO    ] ================================================
[2026-10-28 16:56:29,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:56:29
[2026-10-28 16:56:29,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:56:30,259.259 INFO    ] Initializing speech engine...
[2026-10-28 16:56:30,278.278 INFO    ] 2026-10-28 16:56:30
[2026-10-28 16:56:30,542.542 INFO    ] 2026-10-28 16:56:30
[2026-10-28 16:56:30,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:56:30,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:56:30,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:56:31,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:56:31,056.056 INFO    ] time= 28/10/2026 16:56:31
[2026-10-28 16:56:31,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:56:31,161.161 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:56:31,291.291 INFO    ] No existing commands found in stream
[2026-10-28 16:56:36,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:56:36,316.316 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-28 16:56:37,785.785 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:56:37,788.788 INFO    ] Checking for system updates...
[2026-10-28 16:56:37,823.823 INFO    ] 200
[2026-10-28 16:56:37,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:56:37,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:56:37,880.880 INFO    ] No update needed
[2026-10-28 16:56:37,882.882 INFO    ] Checking for camera pi updates...
[2026-10-28 16:56:37,915.915 INFO    ] 200
[2026-10-28 16:56:37,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:56:37,958.958 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:56:38,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:56:38,045.045 INFO    ] No camera update needed
[2026-10-28 16:56:38,047.047 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:56:38,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:56:38,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:56:38,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:56:40,100.100 INFO    ] ================================================
[2026-10-28 16:56:40,115.115 INFO    ] Launching Daemon at Wed Oct 28 16:56:40 IST 2026
[2026-10-28 16:56:40,126.126 INFO    ] ================================================
[2026-10-28 16:56:40,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:56:40
[2026-10-28 16:56:41,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:56:41,705.705 INFO    ] Initializing speech engine...
[2026-10-28 16:56:41,715.715 INFO    ] 2026-10-28 16:56:41
[2026-10-28 16:56:41,982.982 INFO    ] 2026-10-28 16:56:41
[2026-10-28 16:56:42,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:56:42,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:56:42,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:56:42,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:56:42,548.548 INFO    ] time= 28/10/2026 16:56:42
[2026-10-28 16:56:42,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:56:42,597.597 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:56:42,744.744 INFO    ] No existing commands found in stream
[2026-10-28 16:56:47,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:56:47,783.783 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-28 16:56:50,969.969 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:56:50,972.972 INFO    ] Checking for system updates...
[2026-10-28 16:56:51,008.008 INFO    ] 200
[2026-10-28 16:56:51,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:56:51,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:56:51,064.064 INFO    ] No update needed
[2026-10-28 16:56:51,067.067 INFO    ] Checking for camera pi updates...
[2026-10-28 16:56:51,100.100 INFO    ] 200
[2026-10-28 16:56:51,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:56:51,144.144 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:56:51,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:56:51,225.225 INFO    ] No camera update needed
[2026-10-28 16:56:51,227.227 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:56:51,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:56:51,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:56:51,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:56:53,279.279 INFO    ] ================================================
[2026-10-28 16:56:53,294.294 INFO    ] Launching Daemon at Wed Oct 28 16:56:53 IST 2026
[2026-10-28 16:56:53,305.305 INFO    ] ================================================
[2026-10-28 16:56:53,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:56:53
[2026-10-28 16:56:54,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:56:54,724.724 INFO    ] Initializing speech engine...
[2026-10-28 16:56:54,734.734 INFO    ] 2026-10-28 16:56:54
[2026-10-28 16:56:54,981.981 INFO    ] 2026-10-28 16:56:54
[2026-10-28 16:56:55,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:56:55,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:56:55,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:56:55,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:56:55,551.551 INFO    ] time= 28/10/2026 16:56:55
[2026-10-28 16:56:55,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:56:55,576.576 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:56:55,708.708 INFO    ] No existing commands found in stream
[2026-10-28 16:57:00,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:57:00,735.735 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-28 16:57:03,879.879 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:57:03,882.882 INFO    ] Checking for system updates...
[2026-10-28 16:57:03,929.929 INFO    ] 200
[2026-10-28 16:57:03,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:57:03,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:57:04,000.000 INFO    ] No update needed
[2026-10-28 16:57:04,003.003 INFO    ] Checking for camera pi updates...
[2026-10-28 16:57:04,036.036 INFO    ] 200
[2026-10-28 16:57:04,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:57:04,079.079 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:57:04,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:57:04,226.226 INFO    ] No camera update needed
[2026-10-28 16:57:04,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:57:04,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:57:04,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:57:04,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:57:06,280.280 INFO    ] ================================================
[2026-10-28 16:57:06,295.295 INFO    ] Launching Daemon at Wed Oct 28 16:57:06 IST 2026
[2026-10-28 16:57:06,306.306 INFO    ] ================================================
[2026-10-28 16:57:06,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:57:06
[2026-10-28 16:57:07,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:57:07,862.862 INFO    ] Initializing speech engine...
[2026-10-28 16:57:07,867.867 INFO    ] 2026-10-28 16:57:07
[2026-10-28 16:57:08,127.127 INFO    ] 2026-10-28 16:57:08
[2026-10-28 16:57:08,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:57:08,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:57:08,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:57:08,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:57:08,719.719 INFO    ] time= 28/10/2026 16:57:08
[2026-10-28 16:57:08,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:57:08,770.770 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:57:08,938.938 INFO    ] No existing commands found in stream
[2026-10-28 16:57:13,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:57:13,970.970 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-28 16:57:18,595.595 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:57:18,598.598 INFO    ] Checking for system updates...
[2026-10-28 16:57:18,634.634 INFO    ] 200
[2026-10-28 16:57:18,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:57:18,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:57:18,695.695 INFO    ] No update needed
[2026-10-28 16:57:18,697.697 INFO    ] Checking for camera pi updates...
[2026-10-28 16:57:18,731.731 INFO    ] 200
[2026-10-28 16:57:18,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:57:18,778.778 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:57:18,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:57:18,863.863 INFO    ] No camera update needed
[2026-10-28 16:57:18,866.866 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:57:18,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:57:18,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:57:18,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:57:20,919.919 INFO    ] ================================================
[2026-10-28 16:57:20,934.934 INFO    ] Launching Daemon at Wed Oct 28 16:57:20 IST 2026
[2026-10-28 16:57:20,944.944 INFO    ] ================================================
[2026-10-28 16:57:21,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:57:21
[2026-10-28 16:57:22,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:57:22,498.498 INFO    ] Initializing speech engine...
[2026-10-28 16:57:22,506.506 INFO    ] 2026-10-28 16:57:22
[2026-10-28 16:57:22,772.772 INFO    ] 2026-10-28 16:57:22
[2026-10-28 16:57:22,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:57:23,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:57:23,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:57:23,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:57:23,521.521 INFO    ] time= 28/10/2026 16:57:23
[2026-10-28 16:57:23,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:57:23,627.627 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:57:23,843.843 INFO    ] No existing commands found in stream
[2026-10-28 16:57:28,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:57:28,877.877 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 16:57:30,349.349 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:57:30,352.352 INFO    ] Checking for system updates...
[2026-10-28 16:57:30,392.392 INFO    ] 200
[2026-10-28 16:57:30,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:57:30,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:57:30,451.451 INFO    ] No update needed
[2026-10-28 16:57:30,454.454 INFO    ] Checking for camera pi updates...
[2026-10-28 16:57:30,488.488 INFO    ] 200
[2026-10-28 16:57:30,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:57:30,531.531 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:57:30,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:57:30,616.616 INFO    ] No camera update needed
[2026-10-28 16:57:30,619.619 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:57:30,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:57:30,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:57:30,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:57:32,675.675 INFO    ] ================================================
[2026-10-28 16:57:32,691.691 INFO    ] Launching Daemon at Wed Oct 28 16:57:32 IST 2026
[2026-10-28 16:57:32,702.702 INFO    ] ================================================
[2026-10-28 16:57:33,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:57:33
[2026-10-28 16:57:33,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:57:34,158.158 INFO    ] Initializing speech engine...
[2026-10-28 16:57:34,168.168 INFO    ] 2026-10-28 16:57:34
[2026-10-28 16:57:34,428.428 INFO    ] 2026-10-28 16:57:34
[2026-10-28 16:57:34,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:57:34,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:57:34,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:57:34,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:57:34,996.996 INFO    ] time= 28/10/2026 16:57:34
[2026-10-28 16:57:35,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:57:35,046.046 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:57:35,164.164 INFO    ] No existing commands found in stream
[2026-10-28 16:57:40,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:57:40,185.185 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-28 16:57:43,985.985 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:57:43,988.988 INFO    ] Checking for system updates...
[2026-10-28 16:57:44,023.023 INFO    ] 200
[2026-10-28 16:57:44,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:57:44,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:57:44,084.084 INFO    ] No update needed
[2026-10-28 16:57:44,087.087 INFO    ] Checking for camera pi updates...
[2026-10-28 16:57:44,120.120 INFO    ] 200
[2026-10-28 16:57:44,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:57:44,163.163 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:57:44,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:57:44,247.247 INFO    ] No camera update needed
[2026-10-28 16:57:44,249.249 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:57:44,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:57:44,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:57:44,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:57:46,302.302 INFO    ] ================================================
[2026-10-28 16:57:46,317.317 INFO    ] Launching Daemon at Wed Oct 28 16:57:46 IST 2026
[2026-10-28 16:57:46,329.329 INFO    ] ================================================
[2026-10-28 16:57:46,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:57:46
[2026-10-28 16:57:47,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:57:47,835.835 INFO    ] Initializing speech engine...
[2026-10-28 16:57:47,844.844 INFO    ] 2026-10-28 16:57:47
[2026-10-28 16:57:48,115.115 INFO    ] 2026-10-28 16:57:48
[2026-10-28 16:57:48,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:57:48,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:57:48,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:57:48,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:57:48,668.668 INFO    ] time= 28/10/2026 16:57:48
[2026-10-28 16:57:48,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:57:48,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:57:48,807.807 INFO    ] No existing commands found in stream
[2026-10-28 16:57:53,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:57:53,835.835 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-28 16:57:56,516.516 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:57:56,519.519 INFO    ] Checking for system updates...
[2026-10-28 16:57:56,554.554 INFO    ] 200
[2026-10-28 16:57:56,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:57:56,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:57:56,616.616 INFO    ] No update needed
[2026-10-28 16:57:56,618.618 INFO    ] Checking for camera pi updates...
[2026-10-28 16:57:56,651.651 INFO    ] 200
[2026-10-28 16:57:56,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:57:56,694.694 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:57:56,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:57:56,776.776 INFO    ] No camera update needed
[2026-10-28 16:57:56,779.779 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:57:56,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:57:56,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:57:56,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:57:58,829.829 INFO    ] ================================================
[2026-10-28 16:57:58,845.845 INFO    ] Launching Daemon at Wed Oct 28 16:57:58 IST 2026
[2026-10-28 16:57:58,857.857 INFO    ] ================================================
[2026-10-28 16:57:59,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:57:59
[2026-10-28 16:58:00,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:58:00,315.315 INFO    ] Initializing speech engine...
[2026-10-28 16:58:00,325.325 INFO    ] 2026-10-28 16:58:00
[2026-10-28 16:58:00,587.587 INFO    ] 2026-10-28 16:58:00
[2026-10-28 16:58:00,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:58:00,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:58:00,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:58:01,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:58:01,128.128 INFO    ] time= 28/10/2026 16:58:01
[2026-10-28 16:58:01,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:58:01,160.160 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:58:01,236.236 INFO    ] No existing commands found in stream
[2026-10-28 16:58:06,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:58:06,249.249 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 16:58:07,665.665 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:58:07,668.668 INFO    ] Checking for system updates...
[2026-10-28 16:58:07,704.704 INFO    ] 200
[2026-10-28 16:58:07,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:58:07,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:58:07,761.761 INFO    ] No update needed
[2026-10-28 16:58:07,763.763 INFO    ] Checking for camera pi updates...
[2026-10-28 16:58:07,800.800 INFO    ] 200
[2026-10-28 16:58:07,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:58:07,846.846 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:58:07,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:58:07,944.944 INFO    ] No camera update needed
[2026-10-28 16:58:07,946.946 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:58:07,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:58:07,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:58:07,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:58:10,998.998 INFO    ] ================================================
[2026-10-28 16:58:10,014.014 INFO    ] Launching Daemon at Wed Oct 28 16:58:10 IST 2026
[2026-10-28 16:58:10,025.025 INFO    ] ================================================
[2026-10-28 16:58:10,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:58:10
[2026-10-28 16:58:11,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:58:11,569.569 INFO    ] Initializing speech engine...
[2026-10-28 16:58:11,579.579 INFO    ] 2026-10-28 16:58:11
[2026-10-28 16:58:11,834.834 INFO    ] 2026-10-28 16:58:11
[2026-10-28 16:58:11,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:58:12,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:58:12,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:58:12,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:58:12,412.412 INFO    ] time= 28/10/2026 16:58:12
[2026-10-28 16:58:12,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:58:12,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:58:12,581.581 INFO    ] No existing commands found in stream
[2026-10-28 16:58:17,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:58:17,626.626 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-28 16:58:18,406.406 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 16:58:18,408.408 INFO    ] Checking for system updates...
[2026-10-28 16:58:18,445.445 INFO    ] 200
[2026-10-28 16:58:18,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:58:18,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:58:18,507.507 INFO    ] No update needed
[2026-10-28 16:58:18,510.510 INFO    ] Checking for camera pi updates...
[2026-10-28 16:58:18,543.543 INFO    ] 200
[2026-10-28 16:58:18,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:58:18,585.585 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:58:18,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:58:18,657.657 INFO    ] No camera update needed
[2026-10-28 16:58:18,660.660 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:58:18,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:58:18,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:58:18,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:58:20,714.714 INFO    ] ================================================
[2026-10-28 16:58:20,730.730 INFO    ] Launching Daemon at Wed Oct 28 16:58:20 IST 2026
[2026-10-28 16:58:20,741.741 INFO    ] ================================================
[2026-10-28 16:58:21,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:58:21
[2026-10-28 16:58:21,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:58:22,191.191 INFO    ] Initializing speech engine...
[2026-10-28 16:58:22,200.200 INFO    ] 2026-10-28 16:58:22
[2026-10-28 16:58:22,448.448 INFO    ] 2026-10-28 16:58:22
[2026-10-28 16:58:22,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:58:22,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:58:22,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:58:23,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:58:23,021.021 INFO    ] time= 28/10/2026 16:58:23
[2026-10-28 16:58:23,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:58:23,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:58:23,242.242 INFO    ] No existing commands found in stream
[2026-10-28 16:58:28,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:58:28,268.268 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 16:58:29,704.704 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 16:58:29,707.707 INFO    ] Checking for system updates...
[2026-10-28 16:58:29,744.744 INFO    ] 200
[2026-10-28 16:58:29,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:58:29,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:58:29,801.801 INFO    ] No update needed
[2026-10-28 16:58:29,803.803 INFO    ] Checking for camera pi updates...
[2026-10-28 16:58:29,837.837 INFO    ] 200
[2026-10-28 16:58:29,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:58:29,880.880 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:58:30,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:58:30,090.090 INFO    ] No camera update needed
[2026-10-28 16:58:30,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:58:30,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:58:30,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:58:30,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:58:32,150.150 INFO    ] ================================================
[2026-10-28 16:58:32,167.167 INFO    ] Launching Daemon at Wed Oct 28 16:58:32 IST 2026
[2026-10-28 16:58:32,178.178 INFO    ] ================================================
[2026-10-28 16:58:32,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:58:32
[2026-10-28 16:58:33,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:58:33,691.691 INFO    ] Initializing speech engine...
[2026-10-28 16:58:33,702.702 INFO    ] 2026-10-28 16:58:33
[2026-10-28 16:58:33,966.966 INFO    ] 2026-10-28 16:58:33
[2026-10-28 16:58:34,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:58:34,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:58:34,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:58:34,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:58:34,508.508 INFO    ] time= 28/10/2026 16:58:34
[2026-10-28 16:58:34,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:58:34,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:58:34,667.667 INFO    ] No existing commands found in stream
[2026-10-28 16:58:39,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:58:39,688.688 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-28 16:58:43,075.075 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 16:58:43,078.078 INFO    ] Checking for system updates...
[2026-10-28 16:58:43,113.113 INFO    ] 200
[2026-10-28 16:58:43,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:58:43,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:58:43,170.170 INFO    ] No update needed
[2026-10-28 16:58:43,172.172 INFO    ] Checking for camera pi updates...
[2026-10-28 16:58:43,209.209 INFO    ] 200
[2026-10-28 16:58:43,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:58:43,253.253 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:58:43,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:58:43,336.336 INFO    ] No camera update needed
[2026-10-28 16:58:43,338.338 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:58:43,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:58:43,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:58:43,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:58:45,390.390 INFO    ] ================================================
[2026-10-28 16:58:45,405.405 INFO    ] Launching Daemon at Wed Oct 28 16:58:45 IST 2026
[2026-10-28 16:58:45,416.416 INFO    ] ================================================
[2026-10-28 16:58:45,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:58:45
[2026-10-28 16:58:46,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:58:46,859.859 INFO    ] Initializing speech engine...
[2026-10-28 16:58:46,867.867 INFO    ] 2026-10-28 16:58:46
[2026-10-28 16:58:47,125.125 INFO    ] 2026-10-28 16:58:47
[2026-10-28 16:58:47,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:58:47,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:58:47,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:58:47,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:58:47,772.772 INFO    ] time= 28/10/2026 16:58:47
[2026-10-28 16:58:47,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:58:47,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:58:48,004.004 INFO    ] No existing commands found in stream
[2026-10-28 16:58:53,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:58:53,037.037 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 16:58:57,327.327 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:58:57,330.330 INFO    ] Checking for system updates...
[2026-10-28 16:58:57,367.367 INFO    ] 200
[2026-10-28 16:58:57,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:58:57,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:58:57,426.426 INFO    ] No update needed
[2026-10-28 16:58:57,428.428 INFO    ] Checking for camera pi updates...
[2026-10-28 16:58:57,462.462 INFO    ] 200
[2026-10-28 16:58:57,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:58:57,505.505 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:58:57,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:58:57,597.597 INFO    ] No camera update needed
[2026-10-28 16:58:57,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:58:57,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:58:57,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:58:57,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:58:59,653.653 INFO    ] ================================================
[2026-10-28 16:58:59,668.668 INFO    ] Launching Daemon at Wed Oct 28 16:58:59 IST 2026
[2026-10-28 16:58:59,679.679 INFO    ] ================================================
[2026-10-28 16:59:00,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:59:00
[2026-10-28 16:59:00,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:59:01,100.100 INFO    ] Initializing speech engine...
[2026-10-28 16:59:01,123.123 INFO    ] 2026-10-28 16:59:01
[2026-10-28 16:59:01,380.380 INFO    ] 2026-10-28 16:59:01
[2026-10-28 16:59:01,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:59:01,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:59:01,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:59:01,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:59:02,051.051 INFO    ] time= 28/10/2026 16:59:02
[2026-10-28 16:59:02,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:59:02,145.145 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:59:02,285.285 INFO    ] No existing commands found in stream
[2026-10-28 16:59:07,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:59:07,320.320 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 16:59:09,010.010 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:59:09,013.013 INFO    ] Checking for system updates...
[2026-10-28 16:59:09,051.051 INFO    ] 200
[2026-10-28 16:59:09,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:59:09,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:59:09,110.110 INFO    ] No update needed
[2026-10-28 16:59:09,113.113 INFO    ] Checking for camera pi updates...
[2026-10-28 16:59:09,151.151 INFO    ] 200
[2026-10-28 16:59:09,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:59:09,197.197 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:59:09,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:59:09,289.289 INFO    ] No camera update needed
[2026-10-28 16:59:09,292.292 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:59:09,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:59:09,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:59:09,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:59:11,348.348 INFO    ] ================================================
[2026-10-28 16:59:11,366.366 INFO    ] Launching Daemon at Wed Oct 28 16:59:11 IST 2026
[2026-10-28 16:59:11,378.378 INFO    ] ================================================
[2026-10-28 16:59:11,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:59:11
[2026-10-28 16:59:12,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:59:12,875.875 INFO    ] Initializing speech engine...
[2026-10-28 16:59:12,891.891 INFO    ] 2026-10-28 16:59:12
[2026-10-28 16:59:13,172.172 INFO    ] 2026-10-28 16:59:13
[2026-10-28 16:59:13,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:59:13,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:59:13,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:59:13,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:59:13,657.657 INFO    ] time= 28/10/2026 16:59:13
[2026-10-28 16:59:13,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:59:13,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:59:13,923.923 INFO    ] No existing commands found in stream
[2026-10-28 16:59:18,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:59:18,954.954 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-28 16:59:20,167.167 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:59:20,170.170 INFO    ] Checking for system updates...
[2026-10-28 16:59:20,206.206 INFO    ] 200
[2026-10-28 16:59:20,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:59:20,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:59:20,262.262 INFO    ] No update needed
[2026-10-28 16:59:20,265.265 INFO    ] Checking for camera pi updates...
[2026-10-28 16:59:20,301.301 INFO    ] 200
[2026-10-28 16:59:20,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:59:20,345.345 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:59:20,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:59:20,433.433 INFO    ] No camera update needed
[2026-10-28 16:59:20,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:59:20,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:59:20,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:59:20,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:59:22,487.487 INFO    ] ================================================
[2026-10-28 16:59:22,503.503 INFO    ] Launching Daemon at Wed Oct 28 16:59:22 IST 2026
[2026-10-28 16:59:22,514.514 INFO    ] ================================================
[2026-10-28 16:59:23,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:59:23
[2026-10-28 16:59:23,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:59:23,990.990 INFO    ] Initializing speech engine...
[2026-10-28 16:59:23,996.996 INFO    ] 2026-10-28 16:59:23
[2026-10-28 16:59:24,267.267 INFO    ] 2026-10-28 16:59:24
[2026-10-28 16:59:24,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:59:24,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:59:24,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:59:24,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:59:24,818.818 INFO    ] time= 28/10/2026 16:59:24
[2026-10-28 16:59:24,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:59:24,864.864 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:59:24,981.981 INFO    ] No existing commands found in stream
[2026-10-28 16:59:30,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:59:30,009.009 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 16:59:33,596.596 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 16:59:33,599.599 INFO    ] Checking for system updates...
[2026-10-28 16:59:33,635.635 INFO    ] 200
[2026-10-28 16:59:33,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:59:33,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:59:33,702.702 INFO    ] No update needed
[2026-10-28 16:59:33,704.704 INFO    ] Checking for camera pi updates...
[2026-10-28 16:59:33,737.737 INFO    ] 200
[2026-10-28 16:59:33,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:59:33,780.780 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:59:33,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 16:59:33,882.882 INFO    ] No camera update needed
[2026-10-28 16:59:33,885.885 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:59:33,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:59:33,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:59:33,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:59:35,937.937 INFO    ] ================================================
[2026-10-28 16:59:35,952.952 INFO    ] Launching Daemon at Wed Oct 28 16:59:35 IST 2026
[2026-10-28 16:59:35,963.963 INFO    ] ================================================
[2026-10-28 16:59:36,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:59:36
[2026-10-28 16:59:37,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:59:37,376.376 INFO    ] Initializing speech engine...
[2026-10-28 16:59:37,390.390 INFO    ] 2026-10-28 16:59:37
[2026-10-28 16:59:37,668.668 INFO    ] 2026-10-28 16:59:37
[2026-10-28 16:59:37,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:59:37,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:59:37,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:59:38,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:59:38,221.221 INFO    ] time= 28/10/2026 16:59:38
[2026-10-28 16:59:38,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:59:38,292.292 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:59:38,436.436 INFO    ] No existing commands found in stream
[2026-10-28 16:59:43,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:59:43,465.465 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 16:59:44,104.104 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 16:59:44,107.107 INFO    ] Checking for system updates...
[2026-10-28 16:59:44,143.143 INFO    ] 200
[2026-10-28 16:59:44,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:59:44,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:59:44,205.205 INFO    ] No update needed
[2026-10-28 16:59:44,208.208 INFO    ] Checking for camera pi updates...
[2026-10-28 16:59:44,241.241 INFO    ] 200
[2026-10-28 16:59:44,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:59:44,287.287 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:59:44,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:59:44,373.373 INFO    ] No camera update needed
[2026-10-28 16:59:44,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:59:44,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:59:44,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:59:44,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:59:46,427.427 INFO    ] ================================================
[2026-10-28 16:59:46,442.442 INFO    ] Launching Daemon at Wed Oct 28 16:59:46 IST 2026
[2026-10-28 16:59:46,454.454 INFO    ] ================================================
[2026-10-28 16:59:47,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:59:47
[2026-10-28 16:59:47,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 16:59:47,878.878 INFO    ] Initializing speech engine...
[2026-10-28 16:59:47,887.887 INFO    ] 2026-10-28 16:59:47
[2026-10-28 16:59:48,172.172 INFO    ] 2026-10-28 16:59:48
[2026-10-28 16:59:48,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 16:59:48,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 16:59:48,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 16:59:48,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 16:59:48,787.787 INFO    ] time= 28/10/2026 16:59:48
[2026-10-28 16:59:48,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 16:59:48,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-28 16:59:48,953.953 INFO    ] No existing commands found in stream
[2026-10-28 16:59:53,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 16:59:53,972.972 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-28 16:59:57,044.044 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 16:59:57,046.046 INFO    ] Checking for system updates...
[2026-10-28 16:59:57,082.082 INFO    ] 200
[2026-10-28 16:59:57,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:59:57,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:59:57,140.140 INFO    ] No update needed
[2026-10-28 16:59:57,143.143 INFO    ] Checking for camera pi updates...
[2026-10-28 16:59:57,176.176 INFO    ] 200
[2026-10-28 16:59:57,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 16:59:57,222.222 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 16:59:57,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 16:59:57,303.303 INFO    ] No camera update needed
[2026-10-28 16:59:57,306.306 INFO    ] Script finished. Safe exiting...
[2026-10-28 16:59:57,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 16:59:57,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 16:59:57,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 16:59:59,364.364 INFO    ] ================================================
[2026-10-28 16:59:59,379.379 INFO    ] Launching Daemon at Wed Oct 28 16:59:59 IST 2026
[2026-10-28 16:59:59,390.390 INFO    ] ================================================
[2026-10-28 16:59:59,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 16:59:59
[2026-10-28 17:00:00,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:00:00,802.802 INFO    ] Initializing speech engine...
[2026-10-28 17:00:00,811.811 INFO    ] 2026-10-28 17:00:00
[2026-10-28 17:00:01,101.101 INFO    ] 2026-10-28 17:00:01
[2026-10-28 17:00:01,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:00:01,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:00:01,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:00:01,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:00:01,613.613 INFO    ] time= 28/10/2026 17:00:01
[2026-10-28 17:00:01,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:00:01,693.693 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:00:01,789.789 INFO    ] No existing commands found in stream
[2026-10-28 17:00:06,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:00:06,835.835 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-28 17:00:10,026.026 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:00:10,029.029 INFO    ] Checking for system updates...
[2026-10-28 17:00:10,066.066 INFO    ] 200
[2026-10-28 17:00:10,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:00:10,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:00:10,124.124 INFO    ] No update needed
[2026-10-28 17:00:10,127.127 INFO    ] Checking for camera pi updates...
[2026-10-28 17:00:10,162.162 INFO    ] 200
[2026-10-28 17:00:10,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:00:10,210.210 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:00:10,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:00:10,313.313 INFO    ] No camera update needed
[2026-10-28 17:00:10,315.315 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:00:10,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:00:10,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:00:10,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:00:12,370.370 INFO    ] ================================================
[2026-10-28 17:00:12,386.386 INFO    ] Launching Daemon at Wed Oct 28 17:00:12 IST 2026
[2026-10-28 17:00:12,397.397 INFO    ] ================================================
[2026-10-28 17:00:13,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:00:13
[2026-10-28 17:00:13,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:00:13,980.980 INFO    ] Initializing speech engine...
[2026-10-28 17:00:13,988.988 INFO    ] 2026-10-28 17:00:13
[2026-10-28 17:00:14,257.257 INFO    ] 2026-10-28 17:00:14
[2026-10-28 17:00:14,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:00:14,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:00:14,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:00:14,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:00:14,807.807 INFO    ] time= 28/10/2026 17:00:14
[2026-10-28 17:00:14,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:00:14,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:00:14,960.960 INFO    ] No existing commands found in stream
[2026-10-28 17:00:19,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:00:19,985.985 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 17:00:23,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:00:23,367.367 INFO    ] Checking for system updates...
[2026-10-28 17:00:23,407.407 INFO    ] 200
[2026-10-28 17:00:23,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:00:23,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:00:23,469.469 INFO    ] No update needed
[2026-10-28 17:00:23,472.472 INFO    ] Checking for camera pi updates...
[2026-10-28 17:00:23,506.506 INFO    ] 200
[2026-10-28 17:00:23,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:00:23,549.549 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:00:23,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:00:23,665.665 INFO    ] No camera update needed
[2026-10-28 17:00:23,667.667 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:00:23,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:00:23,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:00:23,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:00:25,720.720 INFO    ] ================================================
[2026-10-28 17:00:25,735.735 INFO    ] Launching Daemon at Wed Oct 28 17:00:25 IST 2026
[2026-10-28 17:00:25,746.746 INFO    ] ================================================
[2026-10-28 17:00:26,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:00:26
[2026-10-28 17:00:26,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:00:27,161.161 INFO    ] Initializing speech engine...
[2026-10-28 17:00:27,170.170 INFO    ] 2026-10-28 17:00:27
[2026-10-28 17:00:27,418.418 INFO    ] 2026-10-28 17:00:27
[2026-10-28 17:00:27,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:00:27,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:00:27,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:00:27,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:00:27,971.971 INFO    ] time= 28/10/2026 17:00:27
[2026-10-28 17:00:27,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:00:28,000.000 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:00:28,153.153 INFO    ] No existing commands found in stream
[2026-10-28 17:00:33,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:00:33,178.178 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-28 17:00:35,912.912 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:00:35,915.915 INFO    ] Checking for system updates...
[2026-10-28 17:00:35,964.964 INFO    ] 200
[2026-10-28 17:00:35,967.967 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 17:00:35,970.970 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-28 17:00:35,972.972 INFO    ] Checking for camera pi updates...
[2026-10-28 17:00:36,014.014 INFO    ] 200
[2026-10-28 17:00:36,016.016 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 17:00:36,019.019 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-28 17:00:36,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:00:36,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:00:36,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:00:36,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:00:38,078.078 INFO    ] ================================================
[2026-10-28 17:00:38,093.093 INFO    ] Launching Daemon at Wed Oct 28 17:00:38 IST 2026
[2026-10-28 17:00:38,104.104 INFO    ] ================================================
[2026-10-28 17:00:38,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:00:38
[2026-10-28 17:00:39,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:00:39,528.528 INFO    ] Initializing speech engine...
[2026-10-28 17:00:39,537.537 INFO    ] 2026-10-28 17:00:39
[2026-10-28 17:00:39,782.782 INFO    ] 2026-10-28 17:00:39
[2026-10-28 17:00:39,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:00:40,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:00:40,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:00:40,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:00:40,381.381 INFO    ] time= 28/10/2026 17:00:40
[2026-10-28 17:00:40,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:00:40,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:00:40,521.521 INFO    ] No existing commands found in stream
[2026-10-28 17:00:45,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:00:45,546.546 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 17:00:46,602.602 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:00:46,605.605 INFO    ] Checking for system updates...
[2026-10-28 17:00:46,641.641 INFO    ] 200
[2026-10-28 17:00:46,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:00:46,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:00:46,699.699 INFO    ] No update needed
[2026-10-28 17:00:46,702.702 INFO    ] Checking for camera pi updates...
[2026-10-28 17:00:46,735.735 INFO    ] 200
[2026-10-28 17:00:46,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:00:46,778.778 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:00:46,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:00:46,873.873 INFO    ] No camera update needed
[2026-10-28 17:00:46,875.875 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:00:46,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:00:46,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:00:46,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:00:48,932.932 INFO    ] ================================================
[2026-10-28 17:00:48,947.947 INFO    ] Launching Daemon at Wed Oct 28 17:00:48 IST 2026
[2026-10-28 17:00:48,958.958 INFO    ] ================================================
[2026-10-28 17:00:49,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:00:49
[2026-10-28 17:00:50,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:00:50,406.406 INFO    ] Initializing speech engine...
[2026-10-28 17:00:50,422.422 INFO    ] 2026-10-28 17:00:50
[2026-10-28 17:00:50,679.679 INFO    ] 2026-10-28 17:00:50
[2026-10-28 17:00:50,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:00:50,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:00:50,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:00:51,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:00:51,261.261 INFO    ] time= 28/10/2026 17:00:51
[2026-10-28 17:00:51,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:00:51,288.288 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:00:51,423.423 INFO    ] No existing commands found in stream
[2026-10-28 17:00:56,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:00:56,445.445 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-28 17:00:58,333.333 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:00:58,336.336 INFO    ] Checking for system updates...
[2026-10-28 17:00:58,373.373 INFO    ] 200
[2026-10-28 17:00:58,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:00:58,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:00:58,438.438 INFO    ] No update needed
[2026-10-28 17:00:58,440.440 INFO    ] Checking for camera pi updates...
[2026-10-28 17:00:58,475.475 INFO    ] 200
[2026-10-28 17:00:58,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:00:58,525.525 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:00:58,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:00:58,607.607 INFO    ] No camera update needed
[2026-10-28 17:00:58,609.609 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:00:58,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:00:58,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:00:58,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:01:00,663.663 INFO    ] ================================================
[2026-10-28 17:01:00,679.679 INFO    ] Launching Daemon at Wed Oct 28 17:01:00 IST 2026
[2026-10-28 17:01:00,690.690 INFO    ] ================================================
[2026-10-28 17:01:01,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:01:01
[2026-10-28 17:01:02,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:01:02,379.379 INFO    ] Initializing speech engine...
[2026-10-28 17:01:02,386.386 INFO    ] 2026-10-28 17:01:02
[2026-10-28 17:01:02,714.714 INFO    ] 2026-10-28 17:01:02
[2026-10-28 17:01:02,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:01:03,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:01:03,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:01:03,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:01:03,295.295 INFO    ] time= 28/10/2026 17:01:03
[2026-10-28 17:01:03,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:01:03,300.300 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:01:03,436.436 INFO    ] No existing commands found in stream
[2026-10-28 17:01:08,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:01:08,460.460 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-28 17:01:09,765.765 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:01:09,768.768 INFO    ] Checking for system updates...
[2026-10-28 17:01:09,803.803 INFO    ] 200
[2026-10-28 17:01:09,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:01:09,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:01:09,862.862 INFO    ] No update needed
[2026-10-28 17:01:09,864.864 INFO    ] Checking for camera pi updates...
[2026-10-28 17:01:09,901.901 INFO    ] 200
[2026-10-28 17:01:09,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:01:09,949.949 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:01:10,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:01:10,035.035 INFO    ] No camera update needed
[2026-10-28 17:01:10,037.037 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:01:10,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:01:10,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:01:10,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:01:12,093.093 INFO    ] ================================================
[2026-10-28 17:01:12,108.108 INFO    ] Launching Daemon at Wed Oct 28 17:01:12 IST 2026
[2026-10-28 17:01:12,119.119 INFO    ] ================================================
[2026-10-28 17:01:12,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:01:12
[2026-10-28 17:01:13,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:01:13,539.539 INFO    ] Initializing speech engine...
[2026-10-28 17:01:13,547.547 INFO    ] 2026-10-28 17:01:13
[2026-10-28 17:01:13,806.806 INFO    ] 2026-10-28 17:01:13
[2026-10-28 17:01:13,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:01:14,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:01:14,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:01:14,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:01:14,307.307 INFO    ] time= 28/10/2026 17:01:14
[2026-10-28 17:01:14,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:01:14,380.380 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:01:14,519.519 INFO    ] No existing commands found in stream
[2026-10-28 17:01:19,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:01:19,543.543 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-28 17:01:22,968.968 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:01:22,971.971 INFO    ] Checking for system updates...
[2026-10-28 17:01:23,007.007 INFO    ] 200
[2026-10-28 17:01:23,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:01:23,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:01:23,064.064 INFO    ] No update needed
[2026-10-28 17:01:23,066.066 INFO    ] Checking for camera pi updates...
[2026-10-28 17:01:23,104.104 INFO    ] 200
[2026-10-28 17:01:23,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:01:23,151.151 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:01:23,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:01:23,237.237 INFO    ] No camera update needed
[2026-10-28 17:01:23,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:01:23,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:01:23,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:01:23,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:01:25,294.294 INFO    ] ================================================
[2026-10-28 17:01:25,309.309 INFO    ] Launching Daemon at Wed Oct 28 17:01:25 IST 2026
[2026-10-28 17:01:25,321.321 INFO    ] ================================================
[2026-10-28 17:01:25,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:01:25
[2026-10-28 17:01:26,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:01:26,729.729 INFO    ] Initializing speech engine...
[2026-10-28 17:01:26,754.754 INFO    ] 2026-10-28 17:01:26
[2026-10-28 17:01:27,030.030 INFO    ] 2026-10-28 17:01:27
[2026-10-28 17:01:27,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:01:27,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:01:27,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:01:27,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:01:27,556.556 INFO    ] time= 28/10/2026 17:01:27
[2026-10-28 17:01:27,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:01:27,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:01:27,745.745 INFO    ] No existing commands found in stream
[2026-10-28 17:01:32,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:01:32,766.766 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-28 17:01:35,078.078 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:01:35,081.081 INFO    ] Checking for system updates...
[2026-10-28 17:01:35,120.120 INFO    ] 200
[2026-10-28 17:01:35,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:01:35,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:01:35,185.185 INFO    ] No update needed
[2026-10-28 17:01:35,187.187 INFO    ] Checking for camera pi updates...
[2026-10-28 17:01:35,221.221 INFO    ] 200
[2026-10-28 17:01:35,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:01:35,265.265 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:01:35,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:01:35,349.349 INFO    ] No camera update needed
[2026-10-28 17:01:35,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:01:35,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:01:35,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:01:35,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:01:37,404.404 INFO    ] ================================================
[2026-10-28 17:01:37,419.419 INFO    ] Launching Daemon at Wed Oct 28 17:01:37 IST 2026
[2026-10-28 17:01:37,430.430 INFO    ] ================================================
[2026-10-28 17:01:38,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:01:38
[2026-10-28 17:01:38,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:01:38,889.889 INFO    ] Initializing speech engine...
[2026-10-28 17:01:38,898.898 INFO    ] 2026-10-28 17:01:38
[2026-10-28 17:01:39,149.149 INFO    ] 2026-10-28 17:01:39
[2026-10-28 17:01:39,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:01:39,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:01:39,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:01:39,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:01:39,712.712 INFO    ] time= 28/10/2026 17:01:39
[2026-10-28 17:01:39,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:01:39,735.735 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:01:39,868.868 INFO    ] No existing commands found in stream
[2026-10-28 17:01:44,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:01:44,899.899 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-28 17:01:48,634.634 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:01:48,637.637 INFO    ] Checking for system updates...
[2026-10-28 17:01:48,678.678 INFO    ] 200
[2026-10-28 17:01:48,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:01:48,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:01:48,738.738 INFO    ] No update needed
[2026-10-28 17:01:48,741.741 INFO    ] Checking for camera pi updates...
[2026-10-28 17:01:48,776.776 INFO    ] 200
[2026-10-28 17:01:48,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:01:48,820.820 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:01:48,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:01:48,921.921 INFO    ] No camera update needed
[2026-10-28 17:01:48,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:01:48,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:01:48,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:01:48,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:01:50,979.979 INFO    ] ================================================
[2026-10-28 17:01:51,995.995 INFO    ] Launching Daemon at Wed Oct 28 17:01:50 IST 2026
[2026-10-28 17:01:51,006.006 INFO    ] ================================================
[2026-10-28 17:01:51,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:01:51
[2026-10-28 17:01:52,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:01:52,468.468 INFO    ] Initializing speech engine...
[2026-10-28 17:01:52,477.477 INFO    ] 2026-10-28 17:01:52
[2026-10-28 17:01:52,738.738 INFO    ] 2026-10-28 17:01:52
[2026-10-28 17:01:52,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:01:53,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:01:53,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:01:53,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:01:53,300.300 INFO    ] time= 28/10/2026 17:01:53
[2026-10-28 17:01:53,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:01:53,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:01:53,467.467 INFO    ] No existing commands found in stream
[2026-10-28 17:01:58,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:01:58,500.500 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-28 17:02:01,265.265 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:02:01,268.268 INFO    ] Checking for system updates...
[2026-10-28 17:02:01,310.310 INFO    ] 200
[2026-10-28 17:02:01,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:02:01,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:02:01,370.370 INFO    ] No update needed
[2026-10-28 17:02:01,373.373 INFO    ] Checking for camera pi updates...
[2026-10-28 17:02:01,413.413 INFO    ] 200
[2026-10-28 17:02:01,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:02:01,464.464 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:02:01,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:02:01,557.557 INFO    ] No camera update needed
[2026-10-28 17:02:01,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:02:01,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:02:01,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:02:01,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:02:03,620.620 INFO    ] ================================================
[2026-10-28 17:02:03,636.636 INFO    ] Launching Daemon at Wed Oct 28 17:02:03 IST 2026
[2026-10-28 17:02:03,646.646 INFO    ] ================================================
[2026-10-28 17:02:04,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:02:04
[2026-10-28 17:02:04,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:02:05,154.154 INFO    ] Initializing speech engine...
[2026-10-28 17:02:05,164.164 INFO    ] 2026-10-28 17:02:05
[2026-10-28 17:02:05,421.421 INFO    ] 2026-10-28 17:02:05
[2026-10-28 17:02:05,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:02:05,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:02:05,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:02:05,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:02:05,972.972 INFO    ] time= 28/10/2026 17:02:05
[2026-10-28 17:02:05,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:02:06,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:02:06,170.170 INFO    ] No existing commands found in stream
[2026-10-28 17:02:11,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:02:11,203.203 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-28 17:02:14,166.166 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:02:14,169.169 INFO    ] Checking for system updates...
[2026-10-28 17:02:14,204.204 INFO    ] 200
[2026-10-28 17:02:14,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:02:14,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:02:14,262.262 INFO    ] No update needed
[2026-10-28 17:02:14,265.265 INFO    ] Checking for camera pi updates...
[2026-10-28 17:02:14,303.303 INFO    ] 200
[2026-10-28 17:02:14,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:02:14,350.350 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:02:14,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:02:14,433.433 INFO    ] No camera update needed
[2026-10-28 17:02:14,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:02:14,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:02:14,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:02:14,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:02:16,499.499 INFO    ] ================================================
[2026-10-28 17:02:16,514.514 INFO    ] Launching Daemon at Wed Oct 28 17:02:16 IST 2026
[2026-10-28 17:02:16,524.524 INFO    ] ================================================
[2026-10-28 17:02:17,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:02:17
[2026-10-28 17:02:17,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:02:18,122.122 INFO    ] Initializing speech engine...
[2026-10-28 17:02:18,128.128 INFO    ] 2026-10-28 17:02:18
[2026-10-28 17:02:18,404.404 INFO    ] 2026-10-28 17:02:18
[2026-10-28 17:02:18,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:02:18,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:02:18,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:02:18,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:02:18,996.996 INFO    ] time= 28/10/2026 17:02:18
[2026-10-28 17:02:19,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:02:19,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:02:19,172.172 INFO    ] No existing commands found in stream
[2026-10-28 17:02:24,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:02:24,206.206 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-28 17:02:28,028.028 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:02:28,031.031 INFO    ] Checking for system updates...
[2026-10-28 17:02:28,068.068 INFO    ] 200
[2026-10-28 17:02:28,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:02:28,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:02:28,128.128 INFO    ] No update needed
[2026-10-28 17:02:28,130.130 INFO    ] Checking for camera pi updates...
[2026-10-28 17:02:28,164.164 INFO    ] 200
[2026-10-28 17:02:28,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:02:28,211.211 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:02:28,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:02:28,302.302 INFO    ] No camera update needed
[2026-10-28 17:02:28,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:02:28,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:02:28,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:02:28,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:02:30,359.359 INFO    ] ================================================
[2026-10-28 17:02:30,374.374 INFO    ] Launching Daemon at Wed Oct 28 17:02:30 IST 2026
[2026-10-28 17:02:30,385.385 INFO    ] ================================================
[2026-10-28 17:02:31,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:02:30
[2026-10-28 17:02:31,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:02:31,929.929 INFO    ] Initializing speech engine...
[2026-10-28 17:02:31,940.940 INFO    ] 2026-10-28 17:02:31
[2026-10-28 17:02:32,228.228 INFO    ] 2026-10-28 17:02:32
[2026-10-28 17:02:32,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:02:32,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:02:32,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:02:32,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:02:32,811.811 INFO    ] time= 28/10/2026 17:02:32
[2026-10-28 17:02:32,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:02:32,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:02:32,956.956 INFO    ] No existing commands found in stream
[2026-10-28 17:02:37,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:02:37,987.987 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 17:02:39,987.987 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:02:39,990.990 INFO    ] Checking for system updates...
[2026-10-28 17:02:40,025.025 INFO    ] 200
[2026-10-28 17:02:40,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:02:40,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:02:40,085.085 INFO    ] No update needed
[2026-10-28 17:02:40,087.087 INFO    ] Checking for camera pi updates...
[2026-10-28 17:02:40,120.120 INFO    ] 200
[2026-10-28 17:02:40,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:02:40,164.164 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:02:40,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:02:40,344.344 INFO    ] No camera update needed
[2026-10-28 17:02:40,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:02:40,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:02:40,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:02:40,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:02:42,399.399 INFO    ] ================================================
[2026-10-28 17:02:42,414.414 INFO    ] Launching Daemon at Wed Oct 28 17:02:42 IST 2026
[2026-10-28 17:02:42,424.424 INFO    ] ================================================
[2026-10-28 17:02:43,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:02:43
[2026-10-28 17:02:43,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:02:43,970.970 INFO    ] Initializing speech engine...
[2026-10-28 17:02:43,977.977 INFO    ] 2026-10-28 17:02:43
[2026-10-28 17:02:44,245.245 INFO    ] 2026-10-28 17:02:44
[2026-10-28 17:02:44,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:02:44,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:02:44,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:02:44,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:02:44,795.795 INFO    ] time= 28/10/2026 17:02:44
[2026-10-28 17:02:44,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:02:44,823.823 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:02:44,954.954 INFO    ] No existing commands found in stream
[2026-10-28 17:02:49,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:02:49,970.970 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-28 17:02:51,090.090 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:02:51,093.093 INFO    ] Checking for system updates...
[2026-10-28 17:02:51,129.129 INFO    ] 200
[2026-10-28 17:02:51,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:02:51,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:02:51,190.190 INFO    ] No update needed
[2026-10-28 17:02:51,193.193 INFO    ] Checking for camera pi updates...
[2026-10-28 17:02:51,229.229 INFO    ] 200
[2026-10-28 17:02:51,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:02:51,277.277 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:02:51,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:02:51,366.366 INFO    ] No camera update needed
[2026-10-28 17:02:51,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:02:51,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:02:51,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:02:51,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:02:53,425.425 INFO    ] ================================================
[2026-10-28 17:02:53,440.440 INFO    ] Launching Daemon at Wed Oct 28 17:02:53 IST 2026
[2026-10-28 17:02:53,451.451 INFO    ] ================================================
[2026-10-28 17:02:54,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:02:54
[2026-10-28 17:02:54,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:02:54,919.919 INFO    ] Initializing speech engine...
[2026-10-28 17:02:54,932.932 INFO    ] 2026-10-28 17:02:54
[2026-10-28 17:02:55,202.202 INFO    ] 2026-10-28 17:02:55
[2026-10-28 17:02:55,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:02:55,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:02:55,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:02:55,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:02:55,768.768 INFO    ] time= 28/10/2026 17:02:55
[2026-10-28 17:02:55,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:02:55,793.793 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:02:55,925.925 INFO    ] No existing commands found in stream
[2026-10-28 17:03:00,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:03:00,941.941 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 17:03:04,567.567 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:03:04,570.570 INFO    ] Checking for system updates...
[2026-10-28 17:03:04,608.608 INFO    ] 200
[2026-10-28 17:03:04,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:03:04,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:03:04,668.668 INFO    ] No update needed
[2026-10-28 17:03:04,671.671 INFO    ] Checking for camera pi updates...
[2026-10-28 17:03:04,709.709 INFO    ] 200
[2026-10-28 17:03:04,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:03:04,753.753 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:03:04,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:03:04,843.843 INFO    ] No camera update needed
[2026-10-28 17:03:04,846.846 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:03:04,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:03:04,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:03:04,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:03:06,902.902 INFO    ] ================================================
[2026-10-28 17:03:06,918.918 INFO    ] Launching Daemon at Wed Oct 28 17:03:06 IST 2026
[2026-10-28 17:03:06,929.929 INFO    ] ================================================
[2026-10-28 17:03:07,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:03:07
[2026-10-28 17:03:08,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:03:08,529.529 INFO    ] Initializing speech engine...
[2026-10-28 17:03:08,535.535 INFO    ] 2026-10-28 17:03:08
[2026-10-28 17:03:08,807.807 INFO    ] 2026-10-28 17:03:08
[2026-10-28 17:03:08,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:03:09,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:03:09,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:03:09,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:03:09,357.357 INFO    ] time= 28/10/2026 17:03:09
[2026-10-28 17:03:09,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:03:09,403.403 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:03:09,511.511 INFO    ] No existing commands found in stream
[2026-10-28 17:03:14,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:03:14,534.534 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 17:03:18,384.384 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:03:18,386.386 INFO    ] Checking for system updates...
[2026-10-28 17:03:18,423.423 INFO    ] 200
[2026-10-28 17:03:18,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:03:18,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:03:18,480.480 INFO    ] No update needed
[2026-10-28 17:03:18,483.483 INFO    ] Checking for camera pi updates...
[2026-10-28 17:03:18,516.516 INFO    ] 200
[2026-10-28 17:03:18,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:03:18,558.558 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:03:18,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:03:18,643.643 INFO    ] No camera update needed
[2026-10-28 17:03:18,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:03:18,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:03:18,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:03:18,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:03:20,698.698 INFO    ] ================================================
[2026-10-28 17:03:20,714.714 INFO    ] Launching Daemon at Wed Oct 28 17:03:20 IST 2026
[2026-10-28 17:03:20,725.725 INFO    ] ================================================
[2026-10-28 17:03:21,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:03:21
[2026-10-28 17:03:21,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:03:22,180.180 INFO    ] Initializing speech engine...
[2026-10-28 17:03:22,188.188 INFO    ] 2026-10-28 17:03:22
[2026-10-28 17:03:22,438.438 INFO    ] 2026-10-28 17:03:22
[2026-10-28 17:03:22,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:03:22,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:03:22,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:03:22,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:03:23,006.006 INFO    ] time= 28/10/2026 17:03:22
[2026-10-28 17:03:23,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:03:23,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:03:23,171.171 INFO    ] No existing commands found in stream
[2026-10-28 17:03:28,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:03:28,204.204 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-28 17:03:29,947.947 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:03:29,949.949 INFO    ] Checking for system updates...
[2026-10-28 17:03:29,985.985 INFO    ] 200
[2026-10-28 17:03:29,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:03:30,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:03:30,044.044 INFO    ] No update needed
[2026-10-28 17:03:30,047.047 INFO    ] Checking for camera pi updates...
[2026-10-28 17:03:30,082.082 INFO    ] 200
[2026-10-28 17:03:30,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:03:30,125.125 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:03:30,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:03:30,200.200 INFO    ] No camera update needed
[2026-10-28 17:03:30,203.203 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:03:30,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:03:30,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:03:30,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:03:32,260.260 INFO    ] ================================================
[2026-10-28 17:03:32,277.277 INFO    ] Launching Daemon at Wed Oct 28 17:03:32 IST 2026
[2026-10-28 17:03:32,290.290 INFO    ] ================================================
[2026-10-28 17:03:32,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:03:32
[2026-10-28 17:03:33,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:03:33,910.910 INFO    ] Initializing speech engine...
[2026-10-28 17:03:33,917.917 INFO    ] 2026-10-28 17:03:33
[2026-10-28 17:03:34,188.188 INFO    ] 2026-10-28 17:03:34
[2026-10-28 17:03:34,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:03:34,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:03:34,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:03:34,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:03:34,808.808 INFO    ] time= 28/10/2026 17:03:34
[2026-10-28 17:03:34,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:03:34,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:03:35,101.101 INFO    ] No existing commands found in stream
[2026-10-28 17:03:40,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:03:40,135.135 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 17:03:44,663.663 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:03:44,666.666 INFO    ] Checking for system updates...
[2026-10-28 17:03:44,703.703 INFO    ] 200
[2026-10-28 17:03:44,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:03:44,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:03:44,762.762 INFO    ] No update needed
[2026-10-28 17:03:44,765.765 INFO    ] Checking for camera pi updates...
[2026-10-28 17:03:44,800.800 INFO    ] 200
[2026-10-28 17:03:44,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:03:44,850.850 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:03:44,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:03:44,936.936 INFO    ] No camera update needed
[2026-10-28 17:03:44,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:03:44,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:03:44,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:03:44,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:03:47,995.995 INFO    ] ================================================
[2026-10-28 17:03:47,011.011 INFO    ] Launching Daemon at Wed Oct 28 17:03:47 IST 2026
[2026-10-28 17:03:47,022.022 INFO    ] ================================================
[2026-10-28 17:03:47,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:03:47
[2026-10-28 17:03:48,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:03:48,602.602 INFO    ] Initializing speech engine...
[2026-10-28 17:03:48,609.609 INFO    ] 2026-10-28 17:03:48
[2026-10-28 17:03:48,891.891 INFO    ] 2026-10-28 17:03:48
[2026-10-28 17:03:48,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:03:49,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:03:49,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:03:49,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:03:49,574.574 INFO    ] time= 28/10/2026 17:03:49
[2026-10-28 17:03:49,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:03:49,672.672 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:03:49,816.816 INFO    ] No existing commands found in stream
[2026-10-28 17:03:54,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:03:54,833.833 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-28 17:03:56,589.589 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:03:56,592.592 INFO    ] Checking for system updates...
[2026-10-28 17:03:56,628.628 INFO    ] 200
[2026-10-28 17:03:56,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:03:56,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:03:56,687.687 INFO    ] No update needed
[2026-10-28 17:03:56,689.689 INFO    ] Checking for camera pi updates...
[2026-10-28 17:03:56,724.724 INFO    ] 200
[2026-10-28 17:03:56,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:03:56,768.768 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:03:56,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:03:56,857.857 INFO    ] No camera update needed
[2026-10-28 17:03:56,859.859 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:03:56,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:03:56,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:03:56,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:03:58,916.916 INFO    ] ================================================
[2026-10-28 17:03:58,934.934 INFO    ] Launching Daemon at Wed Oct 28 17:03:58 IST 2026
[2026-10-28 17:03:58,945.945 INFO    ] ================================================
[2026-10-28 17:03:59,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:03:59
[2026-10-28 17:04:00,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:04:00,390.390 INFO    ] Initializing speech engine...
[2026-10-28 17:04:00,399.399 INFO    ] 2026-10-28 17:04:00
[2026-10-28 17:04:00,661.661 INFO    ] 2026-10-28 17:04:00
[2026-10-28 17:04:00,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:04:00,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:04:00,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:04:01,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:04:01,177.177 INFO    ] time= 28/10/2026 17:04:01
[2026-10-28 17:04:01,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:04:01,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:04:01,270.270 INFO    ] No existing commands found in stream
[2026-10-28 17:04:06,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:04:06,282.282 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-28 17:04:09,546.546 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:04:09,549.549 INFO    ] Checking for system updates...
[2026-10-28 17:04:09,586.586 INFO    ] 200
[2026-10-28 17:04:09,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:04:09,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:04:09,646.646 INFO    ] No update needed
[2026-10-28 17:04:09,649.649 INFO    ] Checking for camera pi updates...
[2026-10-28 17:04:09,682.682 INFO    ] 200
[2026-10-28 17:04:09,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:04:09,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:04:09,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:04:09,794.794 INFO    ] No camera update needed
[2026-10-28 17:04:09,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:04:09,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:04:09,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:04:09,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:04:11,849.849 INFO    ] ================================================
[2026-10-28 17:04:11,864.864 INFO    ] Launching Daemon at Wed Oct 28 17:04:11 IST 2026
[2026-10-28 17:04:11,875.875 INFO    ] ================================================
[2026-10-28 17:04:12,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:04:12
[2026-10-28 17:04:13,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:04:13,452.452 INFO    ] Initializing speech engine...
[2026-10-28 17:04:13,461.461 INFO    ] 2026-10-28 17:04:13
[2026-10-28 17:04:13,728.728 INFO    ] 2026-10-28 17:04:13
[2026-10-28 17:04:13,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:04:14,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:04:14,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:04:14,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:04:14,298.298 INFO    ] time= 28/10/2026 17:04:14
[2026-10-28 17:04:14,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:04:14,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:04:14,481.481 INFO    ] No existing commands found in stream
[2026-10-28 17:04:19,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:04:19,519.519 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 17:04:21,285.285 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:04:21,288.288 INFO    ] Checking for system updates...
[2026-10-28 17:04:21,324.324 INFO    ] 200
[2026-10-28 17:04:21,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:04:21,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:04:21,383.383 INFO    ] No update needed
[2026-10-28 17:04:21,386.386 INFO    ] Checking for camera pi updates...
[2026-10-28 17:04:21,420.420 INFO    ] 200
[2026-10-28 17:04:21,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:04:21,465.465 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:04:21,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:04:21,555.555 INFO    ] No camera update needed
[2026-10-28 17:04:21,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:04:21,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:04:21,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:04:21,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:04:23,613.613 INFO    ] ================================================
[2026-10-28 17:04:23,628.628 INFO    ] Launching Daemon at Wed Oct 28 17:04:23 IST 2026
[2026-10-28 17:04:23,639.639 INFO    ] ================================================
[2026-10-28 17:04:24,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:04:24
[2026-10-28 17:04:24,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:04:25,043.043 INFO    ] Initializing speech engine...
[2026-10-28 17:04:25,056.056 INFO    ] 2026-10-28 17:04:25
[2026-10-28 17:04:25,317.317 INFO    ] 2026-10-28 17:04:25
[2026-10-28 17:04:25,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:04:25,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:04:25,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:04:25,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:04:25,807.807 INFO    ] time= 28/10/2026 17:04:25
[2026-10-28 17:04:25,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:04:25,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:04:26,009.009 INFO    ] No existing commands found in stream
[2026-10-28 17:04:31,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:04:31,034.034 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-28 17:04:33,104.104 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:04:33,106.106 INFO    ] Checking for system updates...
[2026-10-28 17:04:33,142.142 INFO    ] 200
[2026-10-28 17:04:33,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:04:33,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:04:33,199.199 INFO    ] No update needed
[2026-10-28 17:04:33,201.201 INFO    ] Checking for camera pi updates...
[2026-10-28 17:04:33,235.235 INFO    ] 200
[2026-10-28 17:04:33,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:04:33,279.279 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:04:33,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:04:33,360.360 INFO    ] No camera update needed
[2026-10-28 17:04:33,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:04:33,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:04:33,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:04:33,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:04:35,418.418 INFO    ] ================================================
[2026-10-28 17:04:35,433.433 INFO    ] Launching Daemon at Wed Oct 28 17:04:35 IST 2026
[2026-10-28 17:04:35,444.444 INFO    ] ================================================
[2026-10-28 17:04:36,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:04:36
[2026-10-28 17:04:36,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:04:36,857.857 INFO    ] Initializing speech engine...
[2026-10-28 17:04:36,865.865 INFO    ] 2026-10-28 17:04:36
[2026-10-28 17:04:37,160.160 INFO    ] 2026-10-28 17:04:37
[2026-10-28 17:04:37,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:04:37,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:04:37,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:04:37,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:04:37,648.648 INFO    ] time= 28/10/2026 17:04:37
[2026-10-28 17:04:37,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:04:37,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:04:37,938.938 INFO    ] No existing commands found in stream
[2026-10-28 17:04:42,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:04:42,967.967 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 17:04:46,883.883 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:04:46,886.886 INFO    ] Checking for system updates...
[2026-10-28 17:04:46,922.922 INFO    ] 200
[2026-10-28 17:04:46,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:04:46,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:04:46,979.979 INFO    ] No update needed
[2026-10-28 17:04:46,982.982 INFO    ] Checking for camera pi updates...
[2026-10-28 17:04:47,015.015 INFO    ] 200
[2026-10-28 17:04:47,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:04:47,058.058 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:04:47,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:04:47,238.238 INFO    ] No camera update needed
[2026-10-28 17:04:47,241.241 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:04:47,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:04:47,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:04:47,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:04:49,293.293 INFO    ] ================================================
[2026-10-28 17:04:49,308.308 INFO    ] Launching Daemon at Wed Oct 28 17:04:49 IST 2026
[2026-10-28 17:04:49,318.318 INFO    ] ================================================
[2026-10-28 17:04:49,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:04:49
[2026-10-28 17:04:50,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:04:50,750.750 INFO    ] Initializing speech engine...
[2026-10-28 17:04:50,763.763 INFO    ] 2026-10-28 17:04:50
[2026-10-28 17:04:51,048.048 INFO    ] 2026-10-28 17:04:51
[2026-10-28 17:04:51,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:04:51,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:04:51,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:04:51,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:04:51,673.673 INFO    ] time= 28/10/2026 17:04:51
[2026-10-28 17:04:51,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:04:51,692.692 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:04:51,853.853 INFO    ] No existing commands found in stream
[2026-10-28 17:04:56,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:04:56,872.872 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 17:04:57,667.667 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:04:57,670.670 INFO    ] Checking for system updates...
[2026-10-28 17:04:57,705.705 INFO    ] 200
[2026-10-28 17:04:57,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:04:57,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:04:57,762.762 INFO    ] No update needed
[2026-10-28 17:04:57,764.764 INFO    ] Checking for camera pi updates...
[2026-10-28 17:04:57,798.798 INFO    ] 200
[2026-10-28 17:04:57,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:04:57,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:04:57,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:04:57,927.927 INFO    ] No camera update needed
[2026-10-28 17:04:57,929.929 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:04:57,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:04:57,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:04:57,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:04:59,983.983 INFO    ] ================================================
[2026-10-28 17:05:00,998.998 INFO    ] Launching Daemon at Wed Oct 28 17:04:59 IST 2026
[2026-10-28 17:05:00,008.008 INFO    ] ================================================
[2026-10-28 17:05:00,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:05:00
[2026-10-28 17:05:01,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:05:01,865.865 INFO    ] Initializing speech engine...
[2026-10-28 17:05:01,869.869 INFO    ] 2026-10-28 17:05:01
[2026-10-28 17:05:02,241.241 INFO    ] 2026-10-28 17:05:02
[2026-10-28 17:05:02,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:05:02,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:05:02,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:05:02,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:05:02,937.937 INFO    ] time= 28/10/2026 17:05:02
[2026-10-28 17:05:02,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:05:03,028.028 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:05:03,193.193 INFO    ] No existing commands found in stream
[2026-10-28 17:05:08,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:05:08,207.207 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-28 17:05:11,237.237 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:05:11,240.240 INFO    ] Checking for system updates...
[2026-10-28 17:05:11,277.277 INFO    ] 200
[2026-10-28 17:05:11,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:05:11,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:05:11,342.342 INFO    ] No update needed
[2026-10-28 17:05:11,350.350 INFO    ] Checking for camera pi updates...
[2026-10-28 17:05:11,388.388 INFO    ] 200
[2026-10-28 17:05:11,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:05:11,433.433 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:05:11,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:05:11,533.533 INFO    ] No camera update needed
[2026-10-28 17:05:11,536.536 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:05:11,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:05:11,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:05:11,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:05:13,591.591 INFO    ] ================================================
[2026-10-28 17:05:13,607.607 INFO    ] Launching Daemon at Wed Oct 28 17:05:13 IST 2026
[2026-10-28 17:05:13,618.618 INFO    ] ================================================
[2026-10-28 17:05:14,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:05:14
[2026-10-28 17:05:14,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:05:15,202.202 INFO    ] Initializing speech engine...
[2026-10-28 17:05:15,223.223 INFO    ] 2026-10-28 17:05:15
[2026-10-28 17:05:15,494.494 INFO    ] 2026-10-28 17:05:15
[2026-10-28 17:05:15,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:05:15,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:05:15,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:05:16,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:05:16,098.098 INFO    ] time= 28/10/2026 17:05:16
[2026-10-28 17:05:16,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:05:16,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:05:16,246.246 INFO    ] No existing commands found in stream
[2026-10-28 17:05:21,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:05:21,279.279 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-28 17:05:24,690.690 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:05:24,692.692 INFO    ] Checking for system updates...
[2026-10-28 17:05:24,728.728 INFO    ] 200
[2026-10-28 17:05:24,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:05:24,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:05:24,785.785 INFO    ] No update needed
[2026-10-28 17:05:24,787.787 INFO    ] Checking for camera pi updates...
[2026-10-28 17:05:24,820.820 INFO    ] 200
[2026-10-28 17:05:24,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:05:24,866.866 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:05:24,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:05:24,950.950 INFO    ] No camera update needed
[2026-10-28 17:05:24,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:05:24,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:05:24,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:05:24,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:05:27,005.005 INFO    ] ================================================
[2026-10-28 17:05:27,020.020 INFO    ] Launching Daemon at Wed Oct 28 17:05:27 IST 2026
[2026-10-28 17:05:27,031.031 INFO    ] ================================================
[2026-10-28 17:05:27,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:05:27
[2026-10-28 17:05:28,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:05:28,442.442 INFO    ] Initializing speech engine...
[2026-10-28 17:05:28,467.467 INFO    ] 2026-10-28 17:05:28
[2026-10-28 17:05:28,740.740 INFO    ] 2026-10-28 17:05:28
[2026-10-28 17:05:28,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:05:29,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:05:29,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:05:29,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:05:29,372.372 INFO    ] time= 28/10/2026 17:05:29
[2026-10-28 17:05:29,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:05:29,399.399 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:05:29,546.546 INFO    ] No existing commands found in stream
[2026-10-28 17:05:34,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:05:34,564.564 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-28 17:05:36,988.988 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:05:36,990.990 INFO    ] Checking for system updates...
[2026-10-28 17:05:37,026.026 INFO    ] 200
[2026-10-28 17:05:37,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:05:37,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:05:37,082.082 INFO    ] No update needed
[2026-10-28 17:05:37,085.085 INFO    ] Checking for camera pi updates...
[2026-10-28 17:05:37,119.119 INFO    ] 200
[2026-10-28 17:05:37,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:05:37,169.169 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:05:37,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:05:37,252.252 INFO    ] No camera update needed
[2026-10-28 17:05:37,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:05:37,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:05:37,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:05:37,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:05:39,309.309 INFO    ] ================================================
[2026-10-28 17:05:39,325.325 INFO    ] Launching Daemon at Wed Oct 28 17:05:39 IST 2026
[2026-10-28 17:05:39,336.336 INFO    ] ================================================
[2026-10-28 17:05:39,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:05:39
[2026-10-28 17:05:40,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:05:40,780.780 INFO    ] Initializing speech engine...
[2026-10-28 17:05:40,789.789 INFO    ] 2026-10-28 17:05:40
[2026-10-28 17:05:41,040.040 INFO    ] 2026-10-28 17:05:41
[2026-10-28 17:05:41,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:05:41,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:05:41,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:05:41,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:05:41,498.498 INFO    ] time= 28/10/2026 17:05:41
[2026-10-28 17:05:41,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:05:41,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:05:41,741.741 INFO    ] No existing commands found in stream
[2026-10-28 17:05:46,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:05:46,770.770 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 17:05:50,209.209 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:05:50,212.212 INFO    ] Checking for system updates...
[2026-10-28 17:05:50,251.251 INFO    ] 200
[2026-10-28 17:05:50,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:05:50,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:05:50,309.309 INFO    ] No update needed
[2026-10-28 17:05:50,312.312 INFO    ] Checking for camera pi updates...
[2026-10-28 17:05:50,351.351 INFO    ] 200
[2026-10-28 17:05:50,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:05:50,408.408 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:05:50,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:05:50,505.505 INFO    ] No camera update needed
[2026-10-28 17:05:50,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:05:50,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:05:50,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:05:50,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:05:52,561.561 INFO    ] ================================================
[2026-10-28 17:05:52,576.576 INFO    ] Launching Daemon at Wed Oct 28 17:05:52 IST 2026
[2026-10-28 17:05:52,586.586 INFO    ] ================================================
[2026-10-28 17:05:53,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:05:53
[2026-10-28 17:05:53,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:05:54,004.004 INFO    ] Initializing speech engine...
[2026-10-28 17:05:54,013.013 INFO    ] 2026-10-28 17:05:54
[2026-10-28 17:05:54,257.257 INFO    ] 2026-10-28 17:05:54
[2026-10-28 17:05:54,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:05:54,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:05:54,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:05:54,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:05:54,807.807 INFO    ] time= 28/10/2026 17:05:54
[2026-10-28 17:05:54,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:05:54,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:05:54,950.950 INFO    ] No existing commands found in stream
[2026-10-28 17:05:59,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:05:59,973.973 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-28 17:06:00,637.637 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:06:00,640.640 INFO    ] Checking for system updates...
[2026-10-28 17:06:00,675.675 INFO    ] 200
[2026-10-28 17:06:00,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:06:00,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:06:00,731.731 INFO    ] No update needed
[2026-10-28 17:06:00,734.734 INFO    ] Checking for camera pi updates...
[2026-10-28 17:06:00,768.768 INFO    ] 200
[2026-10-28 17:06:00,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:06:00,812.812 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:06:00,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:06:00,898.898 INFO    ] No camera update needed
[2026-10-28 17:06:00,901.901 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:06:00,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:06:00,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:06:00,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:06:02,966.966 INFO    ] ================================================
[2026-10-28 17:06:02,987.987 INFO    ] Launching Daemon at Wed Oct 28 17:06:02 IST 2026
[2026-10-28 17:06:03,003.003 INFO    ] ================================================
[2026-10-28 17:06:03,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:06:03
[2026-10-28 17:06:04,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:06:04,729.729 INFO    ] Initializing speech engine...
[2026-10-28 17:06:04,737.737 INFO    ] 2026-10-28 17:06:04
[2026-10-28 17:06:05,030.030 INFO    ] 2026-10-28 17:06:05
[2026-10-28 17:06:05,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:06:05,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:06:05,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:06:05,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:06:05,598.598 INFO    ] time= 28/10/2026 17:06:05
[2026-10-28 17:06:05,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:06:05,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:06:05,787.787 INFO    ] No existing commands found in stream
[2026-10-28 17:06:10,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:06:10,821.821 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-28 17:06:12,950.950 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:06:12,953.953 INFO    ] Checking for system updates...
[2026-10-28 17:06:12,990.990 INFO    ] 200
[2026-10-28 17:06:12,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:06:13,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:06:13,056.056 INFO    ] No update needed
[2026-10-28 17:06:13,059.059 INFO    ] Checking for camera pi updates...
[2026-10-28 17:06:13,097.097 INFO    ] 200
[2026-10-28 17:06:13,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:06:13,142.142 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:06:13,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:06:13,224.224 INFO    ] No camera update needed
[2026-10-28 17:06:13,227.227 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:06:13,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:06:13,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:06:13,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:06:15,284.284 INFO    ] ================================================
[2026-10-28 17:06:15,300.300 INFO    ] Launching Daemon at Wed Oct 28 17:06:15 IST 2026
[2026-10-28 17:06:15,310.310 INFO    ] ================================================
[2026-10-28 17:06:15,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:06:15
[2026-10-28 17:06:16,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:06:16,920.920 INFO    ] Initializing speech engine...
[2026-10-28 17:06:16,928.928 INFO    ] 2026-10-28 17:06:16
[2026-10-28 17:06:17,205.205 INFO    ] 2026-10-28 17:06:17
[2026-10-28 17:06:17,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:06:17,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:06:17,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:06:17,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:06:17,761.761 INFO    ] time= 28/10/2026 17:06:17
[2026-10-28 17:06:17,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:06:17,810.810 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:06:17,976.976 INFO    ] No existing commands found in stream
[2026-10-28 17:06:23,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:06:23,010.010 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 17:06:27,131.131 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:06:27,134.134 INFO    ] Checking for system updates...
[2026-10-28 17:06:27,171.171 INFO    ] 200
[2026-10-28 17:06:27,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:06:27,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:06:27,231.231 INFO    ] No update needed
[2026-10-28 17:06:27,234.234 INFO    ] Checking for camera pi updates...
[2026-10-28 17:06:27,273.273 INFO    ] 200
[2026-10-28 17:06:27,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:06:27,321.321 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:06:27,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:06:27,408.408 INFO    ] No camera update needed
[2026-10-28 17:06:27,411.411 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:06:27,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:06:27,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:06:27,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:06:29,466.466 INFO    ] ================================================
[2026-10-28 17:06:29,482.482 INFO    ] Launching Daemon at Wed Oct 28 17:06:29 IST 2026
[2026-10-28 17:06:29,494.494 INFO    ] ================================================
[2026-10-28 17:06:30,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:06:30
[2026-10-28 17:06:30,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:06:31,033.033 INFO    ] Initializing speech engine...
[2026-10-28 17:06:31,040.040 INFO    ] 2026-10-28 17:06:31
[2026-10-28 17:06:31,314.314 INFO    ] 2026-10-28 17:06:31
[2026-10-28 17:06:31,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:06:31,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:06:31,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:06:31,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:06:31,898.898 INFO    ] time= 28/10/2026 17:06:31
[2026-10-28 17:06:31,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:06:31,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:06:32,062.062 INFO    ] No existing commands found in stream
[2026-10-28 17:06:37,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:06:37,097.097 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-28 17:06:40,296.296 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:06:40,299.299 INFO    ] Checking for system updates...
[2026-10-28 17:06:40,337.337 INFO    ] 200
[2026-10-28 17:06:40,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:06:40,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:06:40,396.396 INFO    ] No update needed
[2026-10-28 17:06:40,399.399 INFO    ] Checking for camera pi updates...
[2026-10-28 17:06:40,433.433 INFO    ] 200
[2026-10-28 17:06:40,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:06:40,480.480 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:06:40,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:06:40,585.585 INFO    ] No camera update needed
[2026-10-28 17:06:40,592.592 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:06:40,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:06:40,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:06:40,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:06:42,656.656 INFO    ] ================================================
[2026-10-28 17:06:42,671.671 INFO    ] Launching Daemon at Wed Oct 28 17:06:42 IST 2026
[2026-10-28 17:06:42,682.682 INFO    ] ================================================
[2026-10-28 17:06:43,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:06:43
[2026-10-28 17:06:43,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:06:44,197.197 INFO    ] Initializing speech engine...
[2026-10-28 17:06:44,203.203 INFO    ] 2026-10-28 17:06:44
[2026-10-28 17:06:44,462.462 INFO    ] 2026-10-28 17:06:44
[2026-10-28 17:06:44,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:06:44,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:06:44,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:06:44,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:06:45,003.003 INFO    ] time= 28/10/2026 17:06:44
[2026-10-28 17:06:45,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:06:45,029.029 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:06:45,159.159 INFO    ] No existing commands found in stream
[2026-10-28 17:06:50,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:06:50,184.184 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-28 17:06:52,171.171 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:06:52,174.174 INFO    ] Checking for system updates...
[2026-10-28 17:06:52,210.210 INFO    ] 200
[2026-10-28 17:06:52,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:06:52,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:06:52,269.269 INFO    ] No update needed
[2026-10-28 17:06:52,271.271 INFO    ] Checking for camera pi updates...
[2026-10-28 17:06:52,307.307 INFO    ] 200
[2026-10-28 17:06:52,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:06:52,350.350 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:06:52,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:06:52,536.536 INFO    ] No camera update needed
[2026-10-28 17:06:52,539.539 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:06:52,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:06:52,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:06:52,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:06:54,591.591 INFO    ] ================================================
[2026-10-28 17:06:54,606.606 INFO    ] Launching Daemon at Wed Oct 28 17:06:54 IST 2026
[2026-10-28 17:06:54,617.617 INFO    ] ================================================
[2026-10-28 17:06:55,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:06:55
[2026-10-28 17:06:55,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:06:56,125.125 INFO    ] Initializing speech engine...
[2026-10-28 17:06:56,132.132 INFO    ] 2026-10-28 17:06:56
[2026-10-28 17:06:56,416.416 INFO    ] 2026-10-28 17:06:56
[2026-10-28 17:06:56,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:06:56,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:06:56,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:06:56,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:06:56,973.973 INFO    ] time= 28/10/2026 17:06:56
[2026-10-28 17:06:56,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:06:57,010.010 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:06:57,168.168 INFO    ] No existing commands found in stream
[2026-10-28 17:07:02,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:07:02,201.201 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-28 17:07:03,830.830 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:07:03,833.833 INFO    ] Checking for system updates...
[2026-10-28 17:07:03,870.870 INFO    ] 200
[2026-10-28 17:07:03,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:07:03,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:07:03,949.949 INFO    ] No update needed
[2026-10-28 17:07:03,952.952 INFO    ] Checking for camera pi updates...
[2026-10-28 17:07:03,985.985 INFO    ] 200
[2026-10-28 17:07:03,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:07:04,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:07:04,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:07:04,147.147 INFO    ] No camera update needed
[2026-10-28 17:07:04,149.149 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:07:04,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:07:04,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:07:04,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:07:06,205.205 INFO    ] ================================================
[2026-10-28 17:07:06,220.220 INFO    ] Launching Daemon at Wed Oct 28 17:07:06 IST 2026
[2026-10-28 17:07:06,231.231 INFO    ] ================================================
[2026-10-28 17:07:06,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:07:06
[2026-10-28 17:07:07,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:07:07,645.645 INFO    ] Initializing speech engine...
[2026-10-28 17:07:07,667.667 INFO    ] 2026-10-28 17:07:07
[2026-10-28 17:07:07,924.924 INFO    ] 2026-10-28 17:07:07
[2026-10-28 17:07:07,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:07:08,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:07:08,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:07:08,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:07:08,498.498 INFO    ] time= 28/10/2026 17:07:08
[2026-10-28 17:07:08,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:07:08,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:07:08,701.701 INFO    ] No existing commands found in stream
[2026-10-28 17:07:13,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:07:13,736.736 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-28 17:07:17,529.529 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:07:17,532.532 INFO    ] Checking for system updates...
[2026-10-28 17:07:17,567.567 INFO    ] 200
[2026-10-28 17:07:17,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:07:17,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:07:17,635.635 INFO    ] No update needed
[2026-10-28 17:07:17,637.637 INFO    ] Checking for camera pi updates...
[2026-10-28 17:07:17,674.674 INFO    ] 200
[2026-10-28 17:07:17,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:07:17,717.717 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:07:17,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:07:17,799.799 INFO    ] No camera update needed
[2026-10-28 17:07:17,801.801 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:07:17,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:07:17,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:07:17,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:07:19,855.855 INFO    ] ================================================
[2026-10-28 17:07:19,870.870 INFO    ] Launching Daemon at Wed Oct 28 17:07:19 IST 2026
[2026-10-28 17:07:19,881.881 INFO    ] ================================================
[2026-10-28 17:07:20,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:07:20
[2026-10-28 17:07:21,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:07:21,336.336 INFO    ] Initializing speech engine...
[2026-10-28 17:07:21,342.342 INFO    ] 2026-10-28 17:07:21
[2026-10-28 17:07:21,588.588 INFO    ] 2026-10-28 17:07:21
[2026-10-28 17:07:21,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:07:21,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:07:21,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:07:22,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:07:22,144.144 INFO    ] time= 28/10/2026 17:07:22
[2026-10-28 17:07:22,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:07:22,189.189 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:07:22,315.315 INFO    ] No existing commands found in stream
[2026-10-28 17:07:27,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:07:27,338.338 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-28 17:07:29,239.239 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:07:29,242.242 INFO    ] Checking for system updates...
[2026-10-28 17:07:29,277.277 INFO    ] 200
[2026-10-28 17:07:29,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:07:29,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:07:29,334.334 INFO    ] No update needed
[2026-10-28 17:07:29,336.336 INFO    ] Checking for camera pi updates...
[2026-10-28 17:07:29,369.369 INFO    ] 200
[2026-10-28 17:07:29,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:07:29,413.413 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:07:29,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:07:29,506.506 INFO    ] No camera update needed
[2026-10-28 17:07:29,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:07:29,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:07:29,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:07:29,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:07:31,564.564 INFO    ] ================================================
[2026-10-28 17:07:31,579.579 INFO    ] Launching Daemon at Wed Oct 28 17:07:31 IST 2026
[2026-10-28 17:07:31,590.590 INFO    ] ================================================
[2026-10-28 17:07:32,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:07:32
[2026-10-28 17:07:32,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:07:33,200.200 INFO    ] Initializing speech engine...
[2026-10-28 17:07:33,221.221 INFO    ] 2026-10-28 17:07:33
[2026-10-28 17:07:33,510.510 INFO    ] 2026-10-28 17:07:33
[2026-10-28 17:07:33,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:07:33,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:07:33,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:07:33,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:07:33,965.965 INFO    ] time= 28/10/2026 17:07:33
[2026-10-28 17:07:34,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:07:34,038.038 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:07:34,162.162 INFO    ] No existing commands found in stream
[2026-10-28 17:07:39,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:07:39,190.190 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 17:07:41,593.593 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:07:41,596.596 INFO    ] Checking for system updates...
[2026-10-28 17:07:41,637.637 INFO    ] 200
[2026-10-28 17:07:41,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:07:41,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:07:41,696.696 INFO    ] No update needed
[2026-10-28 17:07:41,698.698 INFO    ] Checking for camera pi updates...
[2026-10-28 17:07:41,734.734 INFO    ] 200
[2026-10-28 17:07:41,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:07:41,779.779 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:07:41,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:07:41,858.858 INFO    ] No camera update needed
[2026-10-28 17:07:41,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:07:41,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:07:41,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:07:41,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:07:43,918.918 INFO    ] ================================================
[2026-10-28 17:07:43,934.934 INFO    ] Launching Daemon at Wed Oct 28 17:07:43 IST 2026
[2026-10-28 17:07:43,945.945 INFO    ] ================================================
[2026-10-28 17:07:44,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:07:44
[2026-10-28 17:07:45,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:07:45,350.350 INFO    ] Initializing speech engine...
[2026-10-28 17:07:45,373.373 INFO    ] 2026-10-28 17:07:45
[2026-10-28 17:07:45,624.624 INFO    ] 2026-10-28 17:07:45
[2026-10-28 17:07:45,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:07:45,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:07:45,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:07:46,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:07:46,177.177 INFO    ] time= 28/10/2026 17:07:46
[2026-10-28 17:07:46,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:07:46,201.201 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:07:46,336.336 INFO    ] No existing commands found in stream
[2026-10-28 17:07:51,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:07:51,365.365 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-28 17:07:53,350.350 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:07:53,353.353 INFO    ] Checking for system updates...
[2026-10-28 17:07:53,392.392 INFO    ] 200
[2026-10-28 17:07:53,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:07:53,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:07:53,457.457 INFO    ] No update needed
[2026-10-28 17:07:53,459.459 INFO    ] Checking for camera pi updates...
[2026-10-28 17:07:53,494.494 INFO    ] 200
[2026-10-28 17:07:53,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:07:53,536.536 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:07:53,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:07:53,630.630 INFO    ] No camera update needed
[2026-10-28 17:07:53,632.632 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:07:53,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:07:53,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:07:53,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:07:55,686.686 INFO    ] ================================================
[2026-10-28 17:07:55,702.702 INFO    ] Launching Daemon at Wed Oct 28 17:07:55 IST 2026
[2026-10-28 17:07:55,712.712 INFO    ] ================================================
[2026-10-28 17:07:56,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:07:56
[2026-10-28 17:07:56,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:07:57,168.168 INFO    ] Initializing speech engine...
[2026-10-28 17:07:57,175.175 INFO    ] 2026-10-28 17:07:57
[2026-10-28 17:07:57,430.430 INFO    ] 2026-10-28 17:07:57
[2026-10-28 17:07:57,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:07:57,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:07:57,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:07:57,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:07:57,975.975 INFO    ] time= 28/10/2026 17:07:57
[2026-10-28 17:07:57,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:07:58,015.015 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:07:58,163.163 INFO    ] No existing commands found in stream
[2026-10-28 17:08:03,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:08:03,197.197 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-28 17:08:06,871.871 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:08:06,874.874 INFO    ] Checking for system updates...
[2026-10-28 17:08:06,914.914 INFO    ] 200
[2026-10-28 17:08:06,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:08:06,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:08:06,973.973 INFO    ] No update needed
[2026-10-28 17:08:06,976.976 INFO    ] Checking for camera pi updates...
[2026-10-28 17:08:07,011.011 INFO    ] 200
[2026-10-28 17:08:07,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:08:07,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:08:07,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:08:07,142.142 INFO    ] No camera update needed
[2026-10-28 17:08:07,145.145 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:08:07,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:08:07,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:08:07,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:08:09,201.201 INFO    ] ================================================
[2026-10-28 17:08:09,216.216 INFO    ] Launching Daemon at Wed Oct 28 17:08:09 IST 2026
[2026-10-28 17:08:09,227.227 INFO    ] ================================================
[2026-10-28 17:08:09,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:08:09
[2026-10-28 17:08:10,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:08:10,687.687 INFO    ] Initializing speech engine...
[2026-10-28 17:08:10,694.694 INFO    ] 2026-10-28 17:08:10
[2026-10-28 17:08:10,955.955 INFO    ] 2026-10-28 17:08:10
[2026-10-28 17:08:11,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:08:11,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:08:11,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:08:11,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:08:11,674.674 INFO    ] time= 28/10/2026 17:08:11
[2026-10-28 17:08:11,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:08:11,761.761 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:08:11,907.907 INFO    ] No existing commands found in stream
[2026-10-28 17:08:16,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:08:16,931.931 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 17:08:21,489.489 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:08:21,492.492 INFO    ] Checking for system updates...
[2026-10-28 17:08:21,527.527 INFO    ] 200
[2026-10-28 17:08:21,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:08:21,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:08:21,585.585 INFO    ] No update needed
[2026-10-28 17:08:21,588.588 INFO    ] Checking for camera pi updates...
[2026-10-28 17:08:21,622.622 INFO    ] 200
[2026-10-28 17:08:21,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:08:21,665.665 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:08:21,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:08:21,755.755 INFO    ] No camera update needed
[2026-10-28 17:08:21,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:08:21,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:08:21,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:08:21,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:08:23,812.812 INFO    ] ================================================
[2026-10-28 17:08:23,828.828 INFO    ] Launching Daemon at Wed Oct 28 17:08:23 IST 2026
[2026-10-28 17:08:23,839.839 INFO    ] ================================================
[2026-10-28 17:08:24,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:08:24
[2026-10-28 17:08:25,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:08:25,386.386 INFO    ] Initializing speech engine...
[2026-10-28 17:08:25,396.396 INFO    ] 2026-10-28 17:08:25
[2026-10-28 17:08:25,674.674 INFO    ] 2026-10-28 17:08:25
[2026-10-28 17:08:25,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:08:26,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:08:26,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:08:26,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:08:26,266.266 INFO    ] time= 28/10/2026 17:08:26
[2026-10-28 17:08:26,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:08:26,281.281 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:08:26,426.426 INFO    ] No existing commands found in stream
[2026-10-28 17:08:31,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:08:31,456.456 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 17:08:35,207.207 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:08:35,210.210 INFO    ] Checking for system updates...
[2026-10-28 17:08:35,251.251 INFO    ] 200
[2026-10-28 17:08:35,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:08:35,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:08:35,310.310 INFO    ] No update needed
[2026-10-28 17:08:35,312.312 INFO    ] Checking for camera pi updates...
[2026-10-28 17:08:35,347.347 INFO    ] 200
[2026-10-28 17:08:35,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:08:35,391.391 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:08:35,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:08:35,500.500 INFO    ] No camera update needed
[2026-10-28 17:08:35,503.503 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:08:35,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:08:35,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:08:35,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:08:37,561.561 INFO    ] ================================================
[2026-10-28 17:08:37,576.576 INFO    ] Launching Daemon at Wed Oct 28 17:08:37 IST 2026
[2026-10-28 17:08:37,587.587 INFO    ] ================================================
[2026-10-28 17:08:38,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:08:38
[2026-10-28 17:08:38,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:08:38,999.999 INFO    ] Initializing speech engine...
[2026-10-28 17:08:39,016.016 INFO    ] 2026-10-28 17:08:39
[2026-10-28 17:08:39,306.306 INFO    ] 2026-10-28 17:08:39
[2026-10-28 17:08:39,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:08:39,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:08:39,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:08:39,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:08:39,827.827 INFO    ] time= 28/10/2026 17:08:39
[2026-10-28 17:08:39,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:08:39,937.937 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:08:40,088.088 INFO    ] No existing commands found in stream
[2026-10-28 17:08:45,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:08:45,108.108 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 17:08:48,042.042 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:08:48,045.045 INFO    ] Checking for system updates...
[2026-10-28 17:08:48,081.081 INFO    ] 200
[2026-10-28 17:08:48,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:08:48,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:08:48,148.148 INFO    ] No update needed
[2026-10-28 17:08:48,151.151 INFO    ] Checking for camera pi updates...
[2026-10-28 17:08:48,189.189 INFO    ] 200
[2026-10-28 17:08:48,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:08:48,235.235 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:08:48,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:08:48,319.319 INFO    ] No camera update needed
[2026-10-28 17:08:48,321.321 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:08:48,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:08:48,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:08:48,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:08:50,378.378 INFO    ] ================================================
[2026-10-28 17:08:50,394.394 INFO    ] Launching Daemon at Wed Oct 28 17:08:50 IST 2026
[2026-10-28 17:08:50,405.405 INFO    ] ================================================
[2026-10-28 17:08:50,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:08:50
[2026-10-28 17:08:51,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:08:51,839.839 INFO    ] Initializing speech engine...
[2026-10-28 17:08:51,849.849 INFO    ] 2026-10-28 17:08:51
[2026-10-28 17:08:52,111.111 INFO    ] 2026-10-28 17:08:52
[2026-10-28 17:08:52,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:08:52,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:08:52,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:08:52,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:08:52,681.681 INFO    ] time= 28/10/2026 17:08:52
[2026-10-28 17:08:52,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:08:52,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:08:52,839.839 INFO    ] No existing commands found in stream
[2026-10-28 17:08:57,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:08:57,864.864 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-28 17:09:01,966.966 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:09:01,970.970 INFO    ] Checking for system updates...
[2026-10-28 17:09:02,022.022 INFO    ] 200
[2026-10-28 17:09:02,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:09:02,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:09:02,105.105 INFO    ] No update needed
[2026-10-28 17:09:02,108.108 INFO    ] Checking for camera pi updates...
[2026-10-28 17:09:02,151.151 INFO    ] 200
[2026-10-28 17:09:02,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:09:02,211.211 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:09:02,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:09:02,424.424 INFO    ] No camera update needed
[2026-10-28 17:09:02,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:09:02,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:09:02,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:09:02,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:09:04,488.488 INFO    ] ================================================
[2026-10-28 17:09:04,504.504 INFO    ] Launching Daemon at Wed Oct 28 17:09:04 IST 2026
[2026-10-28 17:09:04,515.515 INFO    ] ================================================
[2026-10-28 17:09:05,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:09:05
[2026-10-28 17:09:05,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:09:05,928.928 INFO    ] Initializing speech engine...
[2026-10-28 17:09:05,947.947 INFO    ] 2026-10-28 17:09:05
[2026-10-28 17:09:06,208.208 INFO    ] 2026-10-28 17:09:06
[2026-10-28 17:09:06,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:09:06,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:09:06,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:09:06,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:09:06,778.778 INFO    ] time= 28/10/2026 17:09:06
[2026-10-28 17:09:06,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:09:06,803.803 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:09:06,934.934 INFO    ] No existing commands found in stream
[2026-10-28 17:09:11,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:09:11,951.951 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-28 17:09:16,240.240 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:09:16,243.243 INFO    ] Checking for system updates...
[2026-10-28 17:09:16,279.279 INFO    ] 200
[2026-10-28 17:09:16,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:09:16,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:09:16,340.340 INFO    ] No update needed
[2026-10-28 17:09:16,342.342 INFO    ] Checking for camera pi updates...
[2026-10-28 17:09:16,388.388 INFO    ] 200
[2026-10-28 17:09:16,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:09:16,435.435 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:09:16,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:09:16,542.542 INFO    ] No camera update needed
[2026-10-28 17:09:16,544.544 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:09:16,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:09:16,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:09:16,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:09:18,597.597 INFO    ] ================================================
[2026-10-28 17:09:18,612.612 INFO    ] Launching Daemon at Wed Oct 28 17:09:18 IST 2026
[2026-10-28 17:09:18,624.624 INFO    ] ================================================
[2026-10-28 17:09:19,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:09:19
[2026-10-28 17:09:19,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:09:20,060.060 INFO    ] Initializing speech engine...
[2026-10-28 17:09:20,066.066 INFO    ] 2026-10-28 17:09:20
[2026-10-28 17:09:20,370.370 INFO    ] 2026-10-28 17:09:20
[2026-10-28 17:09:20,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:09:20,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:09:20,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:09:20,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:09:20,992.992 INFO    ] time= 28/10/2026 17:09:20
[2026-10-28 17:09:21,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:09:21,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:09:21,188.188 INFO    ] No existing commands found in stream
[2026-10-28 17:09:26,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:09:26,212.212 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-28 17:09:29,808.808 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:09:29,811.811 INFO    ] Checking for system updates...
[2026-10-28 17:09:29,847.847 INFO    ] 200
[2026-10-28 17:09:29,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:09:29,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:09:29,910.910 INFO    ] No update needed
[2026-10-28 17:09:29,913.913 INFO    ] Checking for camera pi updates...
[2026-10-28 17:09:29,947.947 INFO    ] 200
[2026-10-28 17:09:29,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:09:29,998.998 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:09:30,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:09:30,078.078 INFO    ] No camera update needed
[2026-10-28 17:09:30,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:09:30,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:09:30,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:09:30,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:09:32,137.137 INFO    ] ================================================
[2026-10-28 17:09:32,154.154 INFO    ] Launching Daemon at Wed Oct 28 17:09:32 IST 2026
[2026-10-28 17:09:32,166.166 INFO    ] ================================================
[2026-10-28 17:09:32,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:09:32
[2026-10-28 17:09:33,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:09:33,651.651 INFO    ] Initializing speech engine...
[2026-10-28 17:09:33,665.665 INFO    ] 2026-10-28 17:09:33
[2026-10-28 17:09:33,972.972 INFO    ] 2026-10-28 17:09:33
[2026-10-28 17:09:34,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:09:35,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:09:35,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:09:36,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:09:36,040.040 INFO    ] time= 28/10/2026 17:09:36
[2026-10-28 17:09:36,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:09:36,050.050 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:09:36,184.184 INFO    ] No existing commands found in stream
[2026-10-28 17:09:41,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:09:41,218.218 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 17:09:44,954.954 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:09:44,957.957 INFO    ] Checking for system updates...
[2026-10-28 17:09:44,996.996 INFO    ] 200
[2026-10-28 17:09:44,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:09:45,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:09:45,058.058 INFO    ] No update needed
[2026-10-28 17:09:45,061.061 INFO    ] Checking for camera pi updates...
[2026-10-28 17:09:45,095.095 INFO    ] 200
[2026-10-28 17:09:45,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:09:45,141.141 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:09:45,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:09:45,246.246 INFO    ] No camera update needed
[2026-10-28 17:09:45,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:09:45,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:09:45,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:09:45,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:09:47,301.301 INFO    ] ================================================
[2026-10-28 17:09:47,316.316 INFO    ] Launching Daemon at Wed Oct 28 17:09:47 IST 2026
[2026-10-28 17:09:47,327.327 INFO    ] ================================================
[2026-10-28 17:09:47,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:09:47
[2026-10-28 17:09:48,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:09:48,834.834 INFO    ] Initializing speech engine...
[2026-10-28 17:09:48,847.847 INFO    ] 2026-10-28 17:09:48
[2026-10-28 17:09:49,156.156 INFO    ] 2026-10-28 17:09:49
[2026-10-28 17:09:49,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:09:49,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:09:49,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:09:49,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:09:49,813.813 INFO    ] time= 28/10/2026 17:09:49
[2026-10-28 17:09:49,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:09:49,908.908 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:09:50,063.063 INFO    ] No existing commands found in stream
[2026-10-28 17:09:55,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:09:55,080.080 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-28 17:09:56,360.360 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:09:56,363.363 INFO    ] Checking for system updates...
[2026-10-28 17:09:56,400.400 INFO    ] 200
[2026-10-28 17:09:56,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:09:56,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:09:56,460.460 INFO    ] No update needed
[2026-10-28 17:09:56,463.463 INFO    ] Checking for camera pi updates...
[2026-10-28 17:09:56,498.498 INFO    ] 200
[2026-10-28 17:09:56,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:09:56,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:09:56,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:09:56,643.643 INFO    ] No camera update needed
[2026-10-28 17:09:56,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:09:56,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:09:56,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:09:56,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:09:58,701.701 INFO    ] ================================================
[2026-10-28 17:09:58,717.717 INFO    ] Launching Daemon at Wed Oct 28 17:09:58 IST 2026
[2026-10-28 17:09:58,728.728 INFO    ] ================================================
[2026-10-28 17:09:59,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:09:59
[2026-10-28 17:10:00,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:10:00,331.331 INFO    ] Initializing speech engine...
[2026-10-28 17:10:00,344.344 INFO    ] 2026-10-28 17:10:00
[2026-10-28 17:10:00,614.614 INFO    ] 2026-10-28 17:10:00
[2026-10-28 17:10:00,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:10:00,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:10:00,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:10:01,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:10:01,181.181 INFO    ] time= 28/10/2026 17:10:01
[2026-10-28 17:10:01,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:10:01,214.214 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:10:01,348.348 INFO    ] No existing commands found in stream
[2026-10-28 17:10:06,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:10:06,382.382 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 17:10:09,236.236 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:10:09,239.239 INFO    ] Checking for system updates...
[2026-10-28 17:10:09,275.275 INFO    ] 200
[2026-10-28 17:10:09,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:10:09,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:10:09,336.336 INFO    ] No update needed
[2026-10-28 17:10:09,338.338 INFO    ] Checking for camera pi updates...
[2026-10-28 17:10:09,376.376 INFO    ] 200
[2026-10-28 17:10:09,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:10:09,431.431 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:10:09,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:10:09,522.522 INFO    ] No camera update needed
[2026-10-28 17:10:09,525.525 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:10:09,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:10:09,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:10:09,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:10:11,580.580 INFO    ] ================================================
[2026-10-28 17:10:11,596.596 INFO    ] Launching Daemon at Wed Oct 28 17:10:11 IST 2026
[2026-10-28 17:10:11,607.607 INFO    ] ================================================
[2026-10-28 17:10:12,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:10:12
[2026-10-28 17:10:12,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:10:13,061.061 INFO    ] Initializing speech engine...
[2026-10-28 17:10:13,069.069 INFO    ] 2026-10-28 17:10:13
[2026-10-28 17:10:13,329.329 INFO    ] 2026-10-28 17:10:13
[2026-10-28 17:10:13,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:10:13,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:10:13,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:10:13,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:10:13,877.877 INFO    ] time= 28/10/2026 17:10:13
[2026-10-28 17:10:13,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:10:13,912.912 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:10:14,018.018 INFO    ] No existing commands found in stream
[2026-10-28 17:10:19,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:10:19,041.041 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 17:10:23,570.570 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:10:23,573.573 INFO    ] Checking for system updates...
[2026-10-28 17:10:23,609.609 INFO    ] 200
[2026-10-28 17:10:23,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:10:23,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:10:23,668.668 INFO    ] No update needed
[2026-10-28 17:10:23,671.671 INFO    ] Checking for camera pi updates...
[2026-10-28 17:10:23,705.705 INFO    ] 200
[2026-10-28 17:10:23,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:10:23,750.750 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:10:23,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:10:23,841.841 INFO    ] No camera update needed
[2026-10-28 17:10:23,844.844 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:10:23,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:10:23,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:10:23,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:10:25,900.900 INFO    ] ================================================
[2026-10-28 17:10:25,915.915 INFO    ] Launching Daemon at Wed Oct 28 17:10:25 IST 2026
[2026-10-28 17:10:25,925.925 INFO    ] ================================================
[2026-10-28 17:10:26,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:10:26
[2026-10-28 17:10:27,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:10:27,358.358 INFO    ] Initializing speech engine...
[2026-10-28 17:10:27,381.381 INFO    ] 2026-10-28 17:10:27
[2026-10-28 17:10:27,636.636 INFO    ] 2026-10-28 17:10:27
[2026-10-28 17:10:27,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:10:27,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:10:27,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:10:28,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:10:28,189.189 INFO    ] time= 28/10/2026 17:10:28
[2026-10-28 17:10:28,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:10:28,214.214 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:10:28,346.346 INFO    ] No existing commands found in stream
[2026-10-28 17:10:33,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:10:33,367.367 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 17:10:37,580.580 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:10:37,583.583 INFO    ] Checking for system updates...
[2026-10-28 17:10:37,619.619 INFO    ] 200
[2026-10-28 17:10:37,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:10:37,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:10:37,680.680 INFO    ] No update needed
[2026-10-28 17:10:37,683.683 INFO    ] Checking for camera pi updates...
[2026-10-28 17:10:37,717.717 INFO    ] 200
[2026-10-28 17:10:37,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:10:37,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:10:37,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:10:37,834.834 INFO    ] No camera update needed
[2026-10-28 17:10:37,837.837 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:10:37,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:10:37,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:10:37,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:10:39,892.892 INFO    ] ================================================
[2026-10-28 17:10:39,907.907 INFO    ] Launching Daemon at Wed Oct 28 17:10:39 IST 2026
[2026-10-28 17:10:39,917.917 INFO    ] ================================================
[2026-10-28 17:10:40,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:10:40
[2026-10-28 17:10:41,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:10:41,315.315 INFO    ] Initializing speech engine...
[2026-10-28 17:10:41,341.341 INFO    ] 2026-10-28 17:10:41
[2026-10-28 17:10:41,592.592 INFO    ] 2026-10-28 17:10:41
[2026-10-28 17:10:41,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:10:41,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:10:41,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:10:42,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:10:42,153.153 INFO    ] time= 28/10/2026 17:10:42
[2026-10-28 17:10:42,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:10:42,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:10:42,320.320 INFO    ] No existing commands found in stream
[2026-10-28 17:10:47,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:10:47,337.337 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-28 17:10:48,355.355 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:10:48,358.358 INFO    ] Checking for system updates...
[2026-10-28 17:10:48,393.393 INFO    ] 200
[2026-10-28 17:10:48,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:10:48,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:10:48,450.450 INFO    ] No update needed
[2026-10-28 17:10:48,452.452 INFO    ] Checking for camera pi updates...
[2026-10-28 17:10:48,488.488 INFO    ] 200
[2026-10-28 17:10:48,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:10:48,536.536 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:10:48,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:10:48,623.623 INFO    ] No camera update needed
[2026-10-28 17:10:48,625.625 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:10:48,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:10:48,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:10:48,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:10:50,678.678 INFO    ] ================================================
[2026-10-28 17:10:50,694.694 INFO    ] Launching Daemon at Wed Oct 28 17:10:50 IST 2026
[2026-10-28 17:10:50,704.704 INFO    ] ================================================
[2026-10-28 17:10:51,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:10:51
[2026-10-28 17:10:51,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:10:52,152.152 INFO    ] Initializing speech engine...
[2026-10-28 17:10:52,161.161 INFO    ] 2026-10-28 17:10:52
[2026-10-28 17:10:52,425.425 INFO    ] 2026-10-28 17:10:52
[2026-10-28 17:10:52,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:10:52,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:10:52,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:10:53,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:10:53,059.059 INFO    ] time= 28/10/2026 17:10:53
[2026-10-28 17:10:53,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:10:53,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:10:53,200.200 INFO    ] No existing commands found in stream
[2026-10-28 17:10:58,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:10:58,233.233 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-28 17:11:03,356.356 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:11:03,359.359 INFO    ] Checking for system updates...
[2026-10-28 17:11:03,395.395 INFO    ] 200
[2026-10-28 17:11:03,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:11:03,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:11:03,456.456 INFO    ] No update needed
[2026-10-28 17:11:03,459.459 INFO    ] Checking for camera pi updates...
[2026-10-28 17:11:03,493.493 INFO    ] 200
[2026-10-28 17:11:03,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:11:03,537.537 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:11:03,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:11:03,626.626 INFO    ] No camera update needed
[2026-10-28 17:11:03,628.628 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:11:03,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:11:03,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:11:03,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:11:05,680.680 INFO    ] ================================================
[2026-10-28 17:11:05,696.696 INFO    ] Launching Daemon at Wed Oct 28 17:11:05 IST 2026
[2026-10-28 17:11:05,707.707 INFO    ] ================================================
[2026-10-28 17:11:06,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:11:06
[2026-10-28 17:11:06,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:11:07,155.155 INFO    ] Initializing speech engine...
[2026-10-28 17:11:07,170.170 INFO    ] 2026-10-28 17:11:07
[2026-10-28 17:11:07,457.457 INFO    ] 2026-10-28 17:11:07
[2026-10-28 17:11:07,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:11:07,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:11:07,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:11:07,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:11:08,028.028 INFO    ] time= 28/10/2026 17:11:07
[2026-10-28 17:11:08,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:11:08,104.104 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:11:08,235.235 INFO    ] No existing commands found in stream
[2026-10-28 17:11:13,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:11:13,256.256 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-28 17:11:15,876.876 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:11:15,879.879 INFO    ] Checking for system updates...
[2026-10-28 17:11:15,915.915 INFO    ] 200
[2026-10-28 17:11:15,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:11:15,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:11:15,972.972 INFO    ] No update needed
[2026-10-28 17:11:15,975.975 INFO    ] Checking for camera pi updates...
[2026-10-28 17:11:16,009.009 INFO    ] 200
[2026-10-28 17:11:16,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:11:16,053.053 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:11:16,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:11:16,234.234 INFO    ] No camera update needed
[2026-10-28 17:11:16,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:11:16,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:11:16,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:11:16,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:11:18,291.291 INFO    ] ================================================
[2026-10-28 17:11:18,306.306 INFO    ] Launching Daemon at Wed Oct 28 17:11:18 IST 2026
[2026-10-28 17:11:18,317.317 INFO    ] ================================================
[2026-10-28 17:11:18,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:11:18
[2026-10-28 17:11:19,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:11:19,789.789 INFO    ] Initializing speech engine...
[2026-10-28 17:11:19,797.797 INFO    ] 2026-10-28 17:11:19
[2026-10-28 17:11:20,067.067 INFO    ] 2026-10-28 17:11:20
[2026-10-28 17:11:20,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:11:20,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:11:20,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:11:20,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:11:20,628.628 INFO    ] time= 28/10/2026 17:11:20
[2026-10-28 17:11:20,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:11:20,674.674 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:11:20,795.795 INFO    ] No existing commands found in stream
[2026-10-28 17:11:25,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:11:25,828.828 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-28 17:11:28,658.658 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:11:28,661.661 INFO    ] Checking for system updates...
[2026-10-28 17:11:28,701.701 INFO    ] 200
[2026-10-28 17:11:28,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:11:28,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:11:28,760.760 INFO    ] No update needed
[2026-10-28 17:11:28,762.762 INFO    ] Checking for camera pi updates...
[2026-10-28 17:11:28,801.801 INFO    ] 200
[2026-10-28 17:11:28,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:11:28,845.845 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:11:28,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:11:28,942.942 INFO    ] No camera update needed
[2026-10-28 17:11:28,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:11:28,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:11:28,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:11:28,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:11:31,999.999 INFO    ] ================================================
[2026-10-28 17:11:31,015.015 INFO    ] Launching Daemon at Wed Oct 28 17:11:31 IST 2026
[2026-10-28 17:11:31,026.026 INFO    ] ================================================
[2026-10-28 17:11:31,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:11:31
[2026-10-28 17:11:32,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:11:32,517.517 INFO    ] Initializing speech engine...
[2026-10-28 17:11:32,539.539 INFO    ] 2026-10-28 17:11:32
[2026-10-28 17:11:32,796.796 INFO    ] 2026-10-28 17:11:32
[2026-10-28 17:11:32,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:11:33,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:11:33,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:11:33,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:11:33,280.280 INFO    ] time= 28/10/2026 17:11:33
[2026-10-28 17:11:33,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:11:33,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:11:33,479.479 INFO    ] No existing commands found in stream
[2026-10-28 17:11:38,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:11:38,504.504 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-28 17:11:39,927.927 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:11:39,929.929 INFO    ] Checking for system updates...
[2026-10-28 17:11:39,968.968 INFO    ] 200
[2026-10-28 17:11:39,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:11:40,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:11:40,026.026 INFO    ] No update needed
[2026-10-28 17:11:40,028.028 INFO    ] Checking for camera pi updates...
[2026-10-28 17:11:40,062.062 INFO    ] 200
[2026-10-28 17:11:40,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:11:40,108.108 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:11:40,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:11:40,201.201 INFO    ] No camera update needed
[2026-10-28 17:11:40,203.203 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:11:40,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:11:40,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:11:40,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:11:42,256.256 INFO    ] ================================================
[2026-10-28 17:11:42,271.271 INFO    ] Launching Daemon at Wed Oct 28 17:11:42 IST 2026
[2026-10-28 17:11:42,282.282 INFO    ] ================================================
[2026-10-28 17:11:42,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:11:42
[2026-10-28 17:11:43,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:11:43,696.696 INFO    ] Initializing speech engine...
[2026-10-28 17:11:43,706.706 INFO    ] 2026-10-28 17:11:43
[2026-10-28 17:11:43,949.949 INFO    ] 2026-10-28 17:11:43
[2026-10-28 17:11:43,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:11:44,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:11:44,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:11:44,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:11:44,502.502 INFO    ] time= 28/10/2026 17:11:44
[2026-10-28 17:11:44,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:11:44,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:11:44,656.656 INFO    ] No existing commands found in stream
[2026-10-28 17:11:49,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:11:49,671.671 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-10-28 17:11:53,326.326 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:11:53,328.328 INFO    ] Checking for system updates...
[2026-10-28 17:11:53,364.364 INFO    ] 200
[2026-10-28 17:11:53,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:11:53,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:11:53,421.421 INFO    ] No update needed
[2026-10-28 17:11:53,424.424 INFO    ] Checking for camera pi updates...
[2026-10-28 17:11:53,457.457 INFO    ] 200
[2026-10-28 17:11:53,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:11:53,500.500 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:11:53,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:11:53,581.581 INFO    ] No camera update needed
[2026-10-28 17:11:53,583.583 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:11:53,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:11:53,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:11:53,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:11:55,639.639 INFO    ] ================================================
[2026-10-28 17:11:55,654.654 INFO    ] Launching Daemon at Wed Oct 28 17:11:55 IST 2026
[2026-10-28 17:11:55,665.665 INFO    ] ================================================
[2026-10-28 17:11:56,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:11:56
[2026-10-28 17:11:56,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:11:57,252.252 INFO    ] Initializing speech engine...
[2026-10-28 17:11:57,266.266 INFO    ] 2026-10-28 17:11:57
[2026-10-28 17:11:57,546.546 INFO    ] 2026-10-28 17:11:57
[2026-10-28 17:11:57,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:11:57,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:11:57,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:11:58,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:11:58,095.095 INFO    ] time= 28/10/2026 17:11:58
[2026-10-28 17:11:58,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:11:58,144.144 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:11:58,303.303 INFO    ] No existing commands found in stream
[2026-10-28 17:12:03,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:12:03,337.337 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-28 17:12:06,657.657 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:12:06,660.660 INFO    ] Checking for system updates...
[2026-10-28 17:12:06,696.696 INFO    ] 200
[2026-10-28 17:12:06,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:12:06,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:12:06,753.753 INFO    ] No update needed
[2026-10-28 17:12:06,756.756 INFO    ] Checking for camera pi updates...
[2026-10-28 17:12:06,793.793 INFO    ] 200
[2026-10-28 17:12:06,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:12:06,836.836 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:12:06,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:12:06,920.920 INFO    ] No camera update needed
[2026-10-28 17:12:06,922.922 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:12:06,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:12:06,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:12:06,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:12:08,975.975 INFO    ] ================================================
[2026-10-28 17:12:08,990.990 INFO    ] Launching Daemon at Wed Oct 28 17:12:08 IST 2026
[2026-10-28 17:12:09,001.001 INFO    ] ================================================
[2026-10-28 17:12:09,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:12:09
[2026-10-28 17:12:10,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:12:10,450.450 INFO    ] Initializing speech engine...
[2026-10-28 17:12:10,459.459 INFO    ] 2026-10-28 17:12:10
[2026-10-28 17:12:10,750.750 INFO    ] 2026-10-28 17:12:10
[2026-10-28 17:12:10,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:12:11,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:12:11,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:12:11,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:12:11,369.369 INFO    ] time= 28/10/2026 17:12:11
[2026-10-28 17:12:11,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:12:11,392.392 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:12:11,538.538 INFO    ] No existing commands found in stream
[2026-10-28 17:12:16,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:12:16,555.555 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 17:12:17,960.960 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:12:17,962.962 INFO    ] Checking for system updates...
[2026-10-28 17:12:17,999.999 INFO    ] 200
[2026-10-28 17:12:18,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:12:18,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:12:18,061.061 INFO    ] No update needed
[2026-10-28 17:12:18,063.063 INFO    ] Checking for camera pi updates...
[2026-10-28 17:12:18,099.099 INFO    ] 200
[2026-10-28 17:12:18,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:12:18,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:12:18,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:12:18,241.241 INFO    ] No camera update needed
[2026-10-28 17:12:18,243.243 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:12:18,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:12:18,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:12:18,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:12:20,298.298 INFO    ] ================================================
[2026-10-28 17:12:20,313.313 INFO    ] Launching Daemon at Wed Oct 28 17:12:20 IST 2026
[2026-10-28 17:12:20,324.324 INFO    ] ================================================
[2026-10-28 17:12:20,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:12:20
[2026-10-28 17:12:21,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:12:21,905.905 INFO    ] Initializing speech engine...
[2026-10-28 17:12:21,911.911 INFO    ] 2026-10-28 17:12:21
[2026-10-28 17:12:22,185.185 INFO    ] 2026-10-28 17:12:22
[2026-10-28 17:12:22,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:12:22,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:12:22,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:12:22,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:12:22,749.749 INFO    ] time= 28/10/2026 17:12:22
[2026-10-28 17:12:22,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:12:22,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:12:22,917.917 INFO    ] No existing commands found in stream
[2026-10-28 17:12:27,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:12:27,941.941 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 17:12:30,252.252 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:12:30,255.255 INFO    ] Checking for system updates...
[2026-10-28 17:12:30,294.294 INFO    ] 200
[2026-10-28 17:12:30,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:12:30,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:12:30,352.352 INFO    ] No update needed
[2026-10-28 17:12:30,355.355 INFO    ] Checking for camera pi updates...
[2026-10-28 17:12:30,389.389 INFO    ] 200
[2026-10-28 17:12:30,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:12:30,435.435 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:12:30,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:12:30,518.518 INFO    ] No camera update needed
[2026-10-28 17:12:30,520.520 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:12:30,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:12:30,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:12:30,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:12:32,576.576 INFO    ] ================================================
[2026-10-28 17:12:32,591.591 INFO    ] Launching Daemon at Wed Oct 28 17:12:32 IST 2026
[2026-10-28 17:12:32,602.602 INFO    ] ================================================
[2026-10-28 17:12:33,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:12:33
[2026-10-28 17:12:33,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:12:34,155.155 INFO    ] Initializing speech engine...
[2026-10-28 17:12:34,169.169 INFO    ] 2026-10-28 17:12:34
[2026-10-28 17:12:34,451.451 INFO    ] 2026-10-28 17:12:34
[2026-10-28 17:12:34,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:12:34,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:12:34,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:12:34,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:12:34,986.986 INFO    ] time= 28/10/2026 17:12:34
[2026-10-28 17:12:35,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:12:35,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:12:35,133.133 INFO    ] No existing commands found in stream
[2026-10-28 17:12:40,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:12:40,152.152 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 17:12:43,808.808 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:12:43,811.811 INFO    ] Checking for system updates...
[2026-10-28 17:12:43,850.850 INFO    ] 200
[2026-10-28 17:12:43,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:12:43,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:12:43,910.910 INFO    ] No update needed
[2026-10-28 17:12:43,913.913 INFO    ] Checking for camera pi updates...
[2026-10-28 17:12:43,950.950 INFO    ] 200
[2026-10-28 17:12:43,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:12:43,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:12:44,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:12:44,097.097 INFO    ] No camera update needed
[2026-10-28 17:12:44,099.099 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:12:44,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:12:44,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:12:44,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:12:46,154.154 INFO    ] ================================================
[2026-10-28 17:12:46,170.170 INFO    ] Launching Daemon at Wed Oct 28 17:12:46 IST 2026
[2026-10-28 17:12:46,181.181 INFO    ] ================================================
[2026-10-28 17:12:46,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:12:46
[2026-10-28 17:12:47,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:12:47,749.749 INFO    ] Initializing speech engine...
[2026-10-28 17:12:47,760.760 INFO    ] 2026-10-28 17:12:47
[2026-10-28 17:12:48,032.032 INFO    ] 2026-10-28 17:12:48
[2026-10-28 17:12:48,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:12:48,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:12:48,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:12:48,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:12:48,580.580 INFO    ] time= 28/10/2026 17:12:48
[2026-10-28 17:12:48,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:12:48,618.618 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:12:48,761.761 INFO    ] No existing commands found in stream
[2026-10-28 17:12:53,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:12:53,791.791 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 17:12:57,541.541 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:12:57,544.544 INFO    ] Checking for system updates...
[2026-10-28 17:12:57,584.584 INFO    ] 200
[2026-10-28 17:12:57,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:12:57,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:12:57,648.648 INFO    ] No update needed
[2026-10-28 17:12:57,650.650 INFO    ] Checking for camera pi updates...
[2026-10-28 17:12:57,685.685 INFO    ] 200
[2026-10-28 17:12:57,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:12:57,732.732 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:12:57,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:12:57,814.814 INFO    ] No camera update needed
[2026-10-28 17:12:57,817.817 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:12:57,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:12:57,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:12:57,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:12:59,872.872 INFO    ] ================================================
[2026-10-28 17:12:59,888.888 INFO    ] Launching Daemon at Wed Oct 28 17:12:59 IST 2026
[2026-10-28 17:12:59,898.898 INFO    ] ================================================
[2026-10-28 17:13:00,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:13:00
[2026-10-28 17:13:01,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:13:01,659.659 INFO    ] Initializing speech engine...
[2026-10-28 17:13:01,663.663 INFO    ] 2026-10-28 17:13:01
[2026-10-28 17:13:02,022.022 INFO    ] 2026-10-28 17:13:01
[2026-10-28 17:13:02,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:13:02,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:13:02,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:13:02,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:13:02,679.679 INFO    ] time= 28/10/2026 17:13:02
[2026-10-28 17:13:02,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:13:02,779.779 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:13:02,927.927 INFO    ] No existing commands found in stream
[2026-10-28 17:13:07,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:13:07,950.950 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-28 17:13:09,997.997 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:13:10,000.000 INFO    ] Checking for system updates...
[2026-10-28 17:13:10,035.035 INFO    ] 200
[2026-10-28 17:13:10,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:13:10,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:13:10,092.092 INFO    ] No update needed
[2026-10-28 17:13:10,095.095 INFO    ] Checking for camera pi updates...
[2026-10-28 17:13:10,131.131 INFO    ] 200
[2026-10-28 17:13:10,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:13:10,175.175 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:13:10,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:13:10,281.281 INFO    ] No camera update needed
[2026-10-28 17:13:10,284.284 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:13:10,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:13:10,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:13:10,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:13:12,338.338 INFO    ] ================================================
[2026-10-28 17:13:12,355.355 INFO    ] Launching Daemon at Wed Oct 28 17:13:12 IST 2026
[2026-10-28 17:13:12,366.366 INFO    ] ================================================
[2026-10-28 17:13:13,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:13:12
[2026-10-28 17:13:13,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:13:13,966.966 INFO    ] Initializing speech engine...
[2026-10-28 17:13:13,979.979 INFO    ] 2026-10-28 17:13:13
[2026-10-28 17:13:14,251.251 INFO    ] 2026-10-28 17:13:14
[2026-10-28 17:13:14,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:13:14,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:13:14,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:13:14,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:13:14,827.827 INFO    ] time= 28/10/2026 17:13:14
[2026-10-28 17:13:14,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:13:14,865.865 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:13:15,005.005 INFO    ] No existing commands found in stream
[2026-10-28 17:13:20,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:13:20,040.040 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-28 17:13:20,939.939 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:13:20,942.942 INFO    ] Checking for system updates...
[2026-10-28 17:13:20,979.979 INFO    ] 200
[2026-10-28 17:13:20,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:13:21,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:13:21,045.045 INFO    ] No update needed
[2026-10-28 17:13:21,048.048 INFO    ] Checking for camera pi updates...
[2026-10-28 17:13:21,083.083 INFO    ] 200
[2026-10-28 17:13:21,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:13:21,127.127 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:13:21,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:13:21,296.296 INFO    ] No camera update needed
[2026-10-28 17:13:21,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:13:21,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:13:21,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:13:21,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:13:23,349.349 INFO    ] ================================================
[2026-10-28 17:13:23,364.364 INFO    ] Launching Daemon at Wed Oct 28 17:13:23 IST 2026
[2026-10-28 17:13:23,375.375 INFO    ] ================================================
[2026-10-28 17:13:24,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:13:24
[2026-10-28 17:13:24,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:13:24,971.971 INFO    ] Initializing speech engine...
[2026-10-28 17:13:24,982.982 INFO    ] 2026-10-28 17:13:24
[2026-10-28 17:13:25,255.255 INFO    ] 2026-10-28 17:13:25
[2026-10-28 17:13:25,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:13:25,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:13:25,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:13:25,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:13:25,972.972 INFO    ] time= 28/10/2026 17:13:25
[2026-10-28 17:13:26,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:13:26,054.054 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:13:26,216.216 INFO    ] No existing commands found in stream
[2026-10-28 17:13:31,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:13:31,256.256 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-28 17:13:35,577.577 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:13:35,580.580 INFO    ] Checking for system updates...
[2026-10-28 17:13:35,616.616 INFO    ] 200
[2026-10-28 17:13:35,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:13:35,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:13:35,677.677 INFO    ] No update needed
[2026-10-28 17:13:35,680.680 INFO    ] Checking for camera pi updates...
[2026-10-28 17:13:35,714.714 INFO    ] 200
[2026-10-28 17:13:35,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:13:35,756.756 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:13:35,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:13:35,829.829 INFO    ] No camera update needed
[2026-10-28 17:13:35,831.831 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:13:35,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:13:35,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:13:35,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:13:37,885.885 INFO    ] ================================================
[2026-10-28 17:13:37,901.901 INFO    ] Launching Daemon at Wed Oct 28 17:13:37 IST 2026
[2026-10-28 17:13:37,912.912 INFO    ] ================================================
[2026-10-28 17:13:38,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:13:38
[2026-10-28 17:13:39,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:13:39,363.363 INFO    ] Initializing speech engine...
[2026-10-28 17:13:39,370.370 INFO    ] 2026-10-28 17:13:39
[2026-10-28 17:13:39,630.630 INFO    ] 2026-10-28 17:13:39
[2026-10-28 17:13:39,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:13:39,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:13:39,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:13:40,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:13:40,188.188 INFO    ] time= 28/10/2026 17:13:40
[2026-10-28 17:13:40,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:13:40,223.223 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:13:40,337.337 INFO    ] No existing commands found in stream
[2026-10-28 17:13:45,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:13:45,369.369 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-28 17:13:49,958.958 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:13:49,961.961 INFO    ] Checking for system updates...
[2026-10-28 17:13:49,996.996 INFO    ] 200
[2026-10-28 17:13:49,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:13:50,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:13:50,053.053 INFO    ] No update needed
[2026-10-28 17:13:50,055.055 INFO    ] Checking for camera pi updates...
[2026-10-28 17:13:50,089.089 INFO    ] 200
[2026-10-28 17:13:50,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:13:50,136.136 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:13:50,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:13:50,220.220 INFO    ] No camera update needed
[2026-10-28 17:13:50,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:13:50,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:13:50,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:13:50,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:13:52,276.276 INFO    ] ================================================
[2026-10-28 17:13:52,292.292 INFO    ] Launching Daemon at Wed Oct 28 17:13:52 IST 2026
[2026-10-28 17:13:52,303.303 INFO    ] ================================================
[2026-10-28 17:13:52,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:13:52
[2026-10-28 17:13:53,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:13:53,728.728 INFO    ] Initializing speech engine...
[2026-10-28 17:13:53,748.748 INFO    ] 2026-10-28 17:13:53
[2026-10-28 17:13:54,012.012 INFO    ] 2026-10-28 17:13:53
[2026-10-28 17:13:54,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:13:54,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:13:54,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:13:54,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:13:54,555.555 INFO    ] time= 28/10/2026 17:13:54
[2026-10-28 17:13:54,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:13:54,647.647 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:13:54,773.773 INFO    ] No existing commands found in stream
[2026-10-28 17:13:59,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:13:59,798.798 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-28 17:14:00,886.886 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:14:00,888.888 INFO    ] Checking for system updates...
[2026-10-28 17:14:00,925.925 INFO    ] 200
[2026-10-28 17:14:00,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:14:00,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:14:00,985.985 INFO    ] No update needed
[2026-10-28 17:14:00,988.988 INFO    ] Checking for camera pi updates...
[2026-10-28 17:14:01,022.022 INFO    ] 200
[2026-10-28 17:14:01,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:14:01,067.067 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:14:01,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:14:01,159.159 INFO    ] No camera update needed
[2026-10-28 17:14:01,162.162 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:14:01,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:14:01,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:14:01,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:14:03,219.219 INFO    ] ================================================
[2026-10-28 17:14:03,235.235 INFO    ] Launching Daemon at Wed Oct 28 17:14:03 IST 2026
[2026-10-28 17:14:03,245.245 INFO    ] ================================================
[2026-10-28 17:14:03,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:14:03
[2026-10-28 17:14:04,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:14:04,674.674 INFO    ] Initializing speech engine...
[2026-10-28 17:14:04,679.679 INFO    ] 2026-10-28 17:14:04
[2026-10-28 17:14:04,974.974 INFO    ] 2026-10-28 17:14:04
[2026-10-28 17:14:04,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:14:05,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:14:05,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:14:05,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:14:05,464.464 INFO    ] time= 28/10/2026 17:14:05
[2026-10-28 17:14:05,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:14:05,562.562 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:14:05,665.665 INFO    ] No existing commands found in stream
[2026-10-28 17:14:10,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:14:10,678.678 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-28 17:14:14,116.116 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:14:14,119.119 INFO    ] Checking for system updates...
[2026-10-28 17:14:14,154.154 INFO    ] 200
[2026-10-28 17:14:14,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:14:14,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:14:14,214.214 INFO    ] No update needed
[2026-10-28 17:14:14,217.217 INFO    ] Checking for camera pi updates...
[2026-10-28 17:14:14,250.250 INFO    ] 200
[2026-10-28 17:14:14,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:14:14,293.293 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:14:14,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:14:14,375.375 INFO    ] No camera update needed
[2026-10-28 17:14:14,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:14:14,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:14:14,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:14:14,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:14:16,431.431 INFO    ] ================================================
[2026-10-28 17:14:16,446.446 INFO    ] Launching Daemon at Wed Oct 28 17:14:16 IST 2026
[2026-10-28 17:14:16,457.457 INFO    ] ================================================
[2026-10-28 17:14:17,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:14:17
[2026-10-28 17:14:17,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:14:17,894.894 INFO    ] Initializing speech engine...
[2026-10-28 17:14:17,901.901 INFO    ] 2026-10-28 17:14:17
[2026-10-28 17:14:18,160.160 INFO    ] 2026-10-28 17:14:18
[2026-10-28 17:14:18,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:14:18,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:14:18,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:14:18,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:14:18,702.702 INFO    ] time= 28/10/2026 17:14:18
[2026-10-28 17:14:18,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:14:18,726.726 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:14:18,856.856 INFO    ] No existing commands found in stream
[2026-10-28 17:14:23,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:14:23,871.871 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-28 17:14:24,757.757 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:14:24,760.760 INFO    ] Checking for system updates...
[2026-10-28 17:14:24,800.800 INFO    ] 200
[2026-10-28 17:14:24,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:14:24,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:14:24,864.864 INFO    ] No update needed
[2026-10-28 17:14:24,866.866 INFO    ] Checking for camera pi updates...
[2026-10-28 17:14:24,900.900 INFO    ] 200
[2026-10-28 17:14:24,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:14:24,944.944 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:14:25,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:14:25,046.046 INFO    ] No camera update needed
[2026-10-28 17:14:25,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:14:25,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:14:25,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:14:25,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:14:27,102.102 INFO    ] ================================================
[2026-10-28 17:14:27,117.117 INFO    ] Launching Daemon at Wed Oct 28 17:14:27 IST 2026
[2026-10-28 17:14:27,127.127 INFO    ] ================================================
[2026-10-28 17:14:27,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:14:27
[2026-10-28 17:14:28,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:14:28,704.704 INFO    ] Initializing speech engine...
[2026-10-28 17:14:28,717.717 INFO    ] 2026-10-28 17:14:28
[2026-10-28 17:14:28,996.996 INFO    ] 2026-10-28 17:14:28
[2026-10-28 17:14:29,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:14:29,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:14:29,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:14:29,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:14:29,547.547 INFO    ] time= 28/10/2026 17:14:29
[2026-10-28 17:14:29,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:14:29,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:14:29,736.736 INFO    ] No existing commands found in stream
[2026-10-28 17:14:34,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:14:34,766.766 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-28 17:14:37,938.938 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:14:37,941.941 INFO    ] Checking for system updates...
[2026-10-28 17:14:37,978.978 INFO    ] 200
[2026-10-28 17:14:37,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:14:38,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:14:38,037.037 INFO    ] No update needed
[2026-10-28 17:14:38,039.039 INFO    ] Checking for camera pi updates...
[2026-10-28 17:14:38,076.076 INFO    ] 200
[2026-10-28 17:14:38,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:14:38,119.119 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:14:38,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:14:38,209.209 INFO    ] No camera update needed
[2026-10-28 17:14:38,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:14:38,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:14:38,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:14:38,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:14:40,264.264 INFO    ] ================================================
[2026-10-28 17:14:40,279.279 INFO    ] Launching Daemon at Wed Oct 28 17:14:40 IST 2026
[2026-10-28 17:14:40,290.290 INFO    ] ================================================
[2026-10-28 17:14:40,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:14:40
[2026-10-28 17:14:41,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:14:41,738.738 INFO    ] Initializing speech engine...
[2026-10-28 17:14:41,748.748 INFO    ] 2026-10-28 17:14:41
[2026-10-28 17:14:42,009.009 INFO    ] 2026-10-28 17:14:42
[2026-10-28 17:14:42,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:14:42,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:14:42,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:14:42,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:14:42,554.554 INFO    ] time= 28/10/2026 17:14:42
[2026-10-28 17:14:42,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:14:42,577.577 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:14:42,693.693 INFO    ] No existing commands found in stream
[2026-10-28 17:14:47,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:14:47,720.720 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 17:14:51,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:14:51,975.975 INFO    ] Checking for system updates...
[2026-10-28 17:14:52,012.012 INFO    ] 200
[2026-10-28 17:14:52,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:14:52,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:14:52,078.078 INFO    ] No update needed
[2026-10-28 17:14:52,081.081 INFO    ] Checking for camera pi updates...
[2026-10-28 17:14:52,116.116 INFO    ] 200
[2026-10-28 17:14:52,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:14:52,164.164 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:14:52,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:14:52,251.251 INFO    ] No camera update needed
[2026-10-28 17:14:52,253.253 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:14:52,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:14:52,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:14:52,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:14:54,310.310 INFO    ] ================================================
[2026-10-28 17:14:54,325.325 INFO    ] Launching Daemon at Wed Oct 28 17:14:54 IST 2026
[2026-10-28 17:14:54,335.335 INFO    ] ================================================
[2026-10-28 17:14:54,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:14:54
[2026-10-28 17:14:55,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:14:55,783.783 INFO    ] Initializing speech engine...
[2026-10-28 17:14:55,792.792 INFO    ] 2026-10-28 17:14:55
[2026-10-28 17:14:56,040.040 INFO    ] 2026-10-28 17:14:56
[2026-10-28 17:14:56,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:14:56,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:14:56,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:14:56,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:14:56,609.609 INFO    ] time= 28/10/2026 17:14:56
[2026-10-28 17:14:56,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:14:56,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:14:56,761.761 INFO    ] No existing commands found in stream
[2026-10-28 17:15:01,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:15:01,797.797 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-28 17:15:05,238.238 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:15:05,240.240 INFO    ] Checking for system updates...
[2026-10-28 17:15:05,276.276 INFO    ] 200
[2026-10-28 17:15:05,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:15:05,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:15:05,341.341 INFO    ] No update needed
[2026-10-28 17:15:05,344.344 INFO    ] Checking for camera pi updates...
[2026-10-28 17:15:05,377.377 INFO    ] 200
[2026-10-28 17:15:05,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:15:05,420.420 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:15:05,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:15:05,508.508 INFO    ] No camera update needed
[2026-10-28 17:15:05,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:15:05,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:15:05,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:15:05,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:15:07,565.565 INFO    ] ================================================
[2026-10-28 17:15:07,580.580 INFO    ] Launching Daemon at Wed Oct 28 17:15:07 IST 2026
[2026-10-28 17:15:07,591.591 INFO    ] ================================================
[2026-10-28 17:15:08,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:15:08
[2026-10-28 17:15:08,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:15:09,044.044 INFO    ] Initializing speech engine...
[2026-10-28 17:15:09,067.067 INFO    ] 2026-10-28 17:15:09
[2026-10-28 17:15:09,322.322 INFO    ] 2026-10-28 17:15:09
[2026-10-28 17:15:09,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:15:09,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:15:09,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:15:09,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:15:09,886.886 INFO    ] time= 28/10/2026 17:15:09
[2026-10-28 17:15:09,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:15:09,911.911 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:15:10,046.046 INFO    ] No existing commands found in stream
[2026-10-28 17:15:15,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:15:15,067.067 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 17:15:17,220.220 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:15:17,222.222 INFO    ] Checking for system updates...
[2026-10-28 17:15:17,258.258 INFO    ] 200
[2026-10-28 17:15:17,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:15:17,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:15:17,317.317 INFO    ] No update needed
[2026-10-28 17:15:17,319.319 INFO    ] Checking for camera pi updates...
[2026-10-28 17:15:17,355.355 INFO    ] 200
[2026-10-28 17:15:17,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:15:17,399.399 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:15:17,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:15:17,485.485 INFO    ] No camera update needed
[2026-10-28 17:15:17,488.488 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:15:17,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:15:17,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:15:17,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:15:19,544.544 INFO    ] ================================================
[2026-10-28 17:15:19,559.559 INFO    ] Launching Daemon at Wed Oct 28 17:15:19 IST 2026
[2026-10-28 17:15:19,570.570 INFO    ] ================================================
[2026-10-28 17:15:20,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:15:20
[2026-10-28 17:15:20,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:15:21,055.055 INFO    ] Initializing speech engine...
[2026-10-28 17:15:21,061.061 INFO    ] 2026-10-28 17:15:21
[2026-10-28 17:15:21,322.322 INFO    ] 2026-10-28 17:15:21
[2026-10-28 17:15:21,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:15:21,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:15:21,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:15:21,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:15:21,878.878 INFO    ] time= 28/10/2026 17:15:21
[2026-10-28 17:15:21,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:15:21,903.903 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:15:22,039.039 INFO    ] No existing commands found in stream
[2026-10-28 17:15:27,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:15:27,065.065 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-28 17:15:30,642.642 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:15:30,645.645 INFO    ] Checking for system updates...
[2026-10-28 17:15:30,685.685 INFO    ] 200
[2026-10-28 17:15:30,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:15:30,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:15:30,753.753 INFO    ] No update needed
[2026-10-28 17:15:30,756.756 INFO    ] Checking for camera pi updates...
[2026-10-28 17:15:30,793.793 INFO    ] 200
[2026-10-28 17:15:30,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:15:30,840.840 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:15:31,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:15:31,022.022 INFO    ] No camera update needed
[2026-10-28 17:15:31,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:15:31,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:15:31,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:15:31,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:15:33,078.078 INFO    ] ================================================
[2026-10-28 17:15:33,101.101 INFO    ] Launching Daemon at Wed Oct 28 17:15:33 IST 2026
[2026-10-28 17:15:33,113.113 INFO    ] ================================================
[2026-10-28 17:15:33,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:15:33
[2026-10-28 17:15:34,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:15:34,550.550 INFO    ] Initializing speech engine...
[2026-10-28 17:15:34,573.573 INFO    ] 2026-10-28 17:15:34
[2026-10-28 17:15:34,828.828 INFO    ] 2026-10-28 17:15:34
[2026-10-28 17:15:34,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:15:35,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:15:35,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:15:35,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:15:35,385.385 INFO    ] time= 28/10/2026 17:15:35
[2026-10-28 17:15:35,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:15:35,411.411 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:15:35,539.539 INFO    ] No existing commands found in stream
[2026-10-28 17:15:40,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:15:40,555.555 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-28 17:15:42,014.014 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:15:42,017.017 INFO    ] Checking for system updates...
[2026-10-28 17:15:42,052.052 INFO    ] 200
[2026-10-28 17:15:42,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:15:42,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:15:42,109.109 INFO    ] No update needed
[2026-10-28 17:15:42,112.112 INFO    ] Checking for camera pi updates...
[2026-10-28 17:15:42,146.146 INFO    ] 200
[2026-10-28 17:15:42,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:15:42,195.195 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:15:42,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:15:42,251.251 INFO    ] No camera update needed
[2026-10-28 17:15:42,254.254 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:15:42,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:15:42,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:15:42,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:15:44,307.307 INFO    ] ================================================
[2026-10-28 17:15:44,322.322 INFO    ] Launching Daemon at Wed Oct 28 17:15:44 IST 2026
[2026-10-28 17:15:44,333.333 INFO    ] ================================================
[2026-10-28 17:15:44,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:15:44
[2026-10-28 17:15:45,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:15:45,969.969 INFO    ] Initializing speech engine...
[2026-10-28 17:15:45,981.981 INFO    ] 2026-10-28 17:15:45
[2026-10-28 17:15:46,254.254 INFO    ] 2026-10-28 17:15:46
[2026-10-28 17:15:46,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:15:46,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:15:46,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:15:46,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:15:46,826.826 INFO    ] time= 28/10/2026 17:15:46
[2026-10-28 17:15:46,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:15:46,866.866 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:15:46,996.996 INFO    ] No existing commands found in stream
[2026-10-28 17:15:52,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:15:52,026.026 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-28 17:15:52,972.972 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:15:52,975.975 INFO    ] Checking for system updates...
[2026-10-28 17:15:53,012.012 INFO    ] 200
[2026-10-28 17:15:53,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:15:53,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:15:53,070.070 INFO    ] No update needed
[2026-10-28 17:15:53,072.072 INFO    ] Checking for camera pi updates...
[2026-10-28 17:15:53,105.105 INFO    ] 200
[2026-10-28 17:15:53,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:15:53,154.154 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:15:53,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:15:53,258.258 INFO    ] No camera update needed
[2026-10-28 17:15:53,260.260 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:15:53,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:15:53,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:15:53,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:15:55,312.312 INFO    ] ================================================
[2026-10-28 17:15:55,327.327 INFO    ] Launching Daemon at Wed Oct 28 17:15:55 IST 2026
[2026-10-28 17:15:55,338.338 INFO    ] ================================================
[2026-10-28 17:15:55,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:15:55
[2026-10-28 17:15:56,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:15:56,990.990 INFO    ] Initializing speech engine...
[2026-10-28 17:15:56,998.998 INFO    ] 2026-10-28 17:15:56
[2026-10-28 17:15:57,276.276 INFO    ] 2026-10-28 17:15:57
[2026-10-28 17:15:57,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:15:57,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:15:57,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:15:57,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:15:57,841.841 INFO    ] time= 28/10/2026 17:15:57
[2026-10-28 17:15:57,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:15:57,891.891 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:15:58,044.044 INFO    ] No existing commands found in stream
[2026-10-28 17:16:03,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:16:03,079.079 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 17:16:06,455.455 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:16:06,458.458 INFO    ] Checking for system updates...
[2026-10-28 17:16:06,498.498 INFO    ] 200
[2026-10-28 17:16:06,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:16:06,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:16:06,559.559 INFO    ] No update needed
[2026-10-28 17:16:06,562.562 INFO    ] Checking for camera pi updates...
[2026-10-28 17:16:06,596.596 INFO    ] 200
[2026-10-28 17:16:06,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:16:06,640.640 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:16:06,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:16:06,721.721 INFO    ] No camera update needed
[2026-10-28 17:16:06,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:16:06,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:16:06,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:16:06,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:16:08,779.779 INFO    ] ================================================
[2026-10-28 17:16:08,794.794 INFO    ] Launching Daemon at Wed Oct 28 17:16:08 IST 2026
[2026-10-28 17:16:08,804.804 INFO    ] ================================================
[2026-10-28 17:16:09,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:16:09
[2026-10-28 17:16:09,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:16:10,251.251 INFO    ] Initializing speech engine...
[2026-10-28 17:16:10,258.258 INFO    ] 2026-10-28 17:16:10
[2026-10-28 17:16:10,521.521 INFO    ] 2026-10-28 17:16:10
[2026-10-28 17:16:10,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:16:10,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:16:10,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:16:11,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:16:11,060.060 INFO    ] time= 28/10/2026 17:16:11
[2026-10-28 17:16:11,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:16:11,101.101 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:16:11,214.214 INFO    ] No existing commands found in stream
[2026-10-28 17:16:16,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:16:16,237.237 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-28 17:16:19,105.105 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:16:19,107.107 INFO    ] Checking for system updates...
[2026-10-28 17:16:19,146.146 INFO    ] 200
[2026-10-28 17:16:19,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:16:19,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:16:19,203.203 INFO    ] No update needed
[2026-10-28 17:16:19,206.206 INFO    ] Checking for camera pi updates...
[2026-10-28 17:16:19,242.242 INFO    ] 200
[2026-10-28 17:16:19,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:16:19,290.290 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:16:19,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:16:19,375.375 INFO    ] No camera update needed
[2026-10-28 17:16:19,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:16:19,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:16:19,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:16:19,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:16:21,431.431 INFO    ] ================================================
[2026-10-28 17:16:21,446.446 INFO    ] Launching Daemon at Wed Oct 28 17:16:21 IST 2026
[2026-10-28 17:16:21,457.457 INFO    ] ================================================
[2026-10-28 17:16:22,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:16:22
[2026-10-28 17:16:22,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:16:22,851.851 INFO    ] Initializing speech engine...
[2026-10-28 17:16:22,874.874 INFO    ] 2026-10-28 17:16:22
[2026-10-28 17:16:23,131.131 INFO    ] 2026-10-28 17:16:23
[2026-10-28 17:16:23,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:16:23,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:16:23,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:16:23,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:16:23,699.699 INFO    ] time= 28/10/2026 17:16:23
[2026-10-28 17:16:23,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:16:23,726.726 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:16:23,867.867 INFO    ] No existing commands found in stream
[2026-10-28 17:16:28,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:16:28,884.884 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-28 17:16:32,241.241 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:16:32,245.245 INFO    ] Checking for system updates...
[2026-10-28 17:16:32,287.287 INFO    ] 200
[2026-10-28 17:16:32,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:16:32,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:16:32,349.349 INFO    ] No update needed
[2026-10-28 17:16:32,351.351 INFO    ] Checking for camera pi updates...
[2026-10-28 17:16:32,388.388 INFO    ] 200
[2026-10-28 17:16:32,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:16:32,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:16:32,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:16:32,525.525 INFO    ] No camera update needed
[2026-10-28 17:16:32,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:16:32,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:16:32,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:16:32,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:16:34,584.584 INFO    ] ================================================
[2026-10-28 17:16:34,599.599 INFO    ] Launching Daemon at Wed Oct 28 17:16:34 IST 2026
[2026-10-28 17:16:34,611.611 INFO    ] ================================================
[2026-10-28 17:16:35,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:16:35
[2026-10-28 17:16:35,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:16:36,021.021 INFO    ] Initializing speech engine...
[2026-10-28 17:16:36,045.045 INFO    ] 2026-10-28 17:16:36
[2026-10-28 17:16:36,322.322 INFO    ] 2026-10-28 17:16:36
[2026-10-28 17:16:36,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:16:36,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:16:36,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:16:36,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:16:36,827.827 INFO    ] time= 28/10/2026 17:16:36
[2026-10-28 17:16:36,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:16:36,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:16:37,008.008 INFO    ] No existing commands found in stream
[2026-10-28 17:16:42,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:16:42,047.047 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-28 17:16:46,465.465 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:16:46,467.467 INFO    ] Checking for system updates...
[2026-10-28 17:16:46,507.507 INFO    ] 200
[2026-10-28 17:16:46,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:16:46,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:16:46,564.564 INFO    ] No update needed
[2026-10-28 17:16:46,566.566 INFO    ] Checking for camera pi updates...
[2026-10-28 17:16:46,604.604 INFO    ] 200
[2026-10-28 17:16:46,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:16:46,652.652 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:16:46,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:16:46,731.731 INFO    ] No camera update needed
[2026-10-28 17:16:46,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:16:46,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:16:46,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:16:46,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:16:48,787.787 INFO    ] ================================================
[2026-10-28 17:16:48,804.804 INFO    ] Launching Daemon at Wed Oct 28 17:16:48 IST 2026
[2026-10-28 17:16:48,815.815 INFO    ] ================================================
[2026-10-28 17:16:49,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:16:49
[2026-10-28 17:16:50,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:16:50,475.475 INFO    ] Initializing speech engine...
[2026-10-28 17:16:50,488.488 INFO    ] 2026-10-28 17:16:50
[2026-10-28 17:16:50,778.778 INFO    ] 2026-10-28 17:16:50
[2026-10-28 17:16:50,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:16:51,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:16:51,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:16:51,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:16:51,530.530 INFO    ] time= 28/10/2026 17:16:51
[2026-10-28 17:16:51,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:16:51,633.633 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:16:51,840.840 INFO    ] No existing commands found in stream
[2026-10-28 17:16:56,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:16:56,869.869 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 17:16:59,159.159 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:16:59,161.161 INFO    ] Checking for system updates...
[2026-10-28 17:16:59,201.201 INFO    ] 200
[2026-10-28 17:16:59,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:16:59,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:16:59,258.258 INFO    ] No update needed
[2026-10-28 17:16:59,261.261 INFO    ] Checking for camera pi updates...
[2026-10-28 17:16:59,295.295 INFO    ] 200
[2026-10-28 17:16:59,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:16:59,343.343 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:16:59,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:16:59,425.425 INFO    ] No camera update needed
[2026-10-28 17:16:59,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:16:59,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:16:59,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:16:59,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:17:01,480.480 INFO    ] ================================================
[2026-10-28 17:17:01,496.496 INFO    ] Launching Daemon at Wed Oct 28 17:17:01 IST 2026
[2026-10-28 17:17:01,507.507 INFO    ] ================================================
[2026-10-28 17:17:02,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:17:02
[2026-10-28 17:17:02,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:17:03,240.240 INFO    ] Initializing speech engine...
[2026-10-28 17:17:03,252.252 INFO    ] 2026-10-28 17:17:03
[2026-10-28 17:17:03,591.591 INFO    ] 2026-10-28 17:17:03
[2026-10-28 17:17:03,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:17:03,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:17:03,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:17:04,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:17:04,148.148 INFO    ] time= 28/10/2026 17:17:04
[2026-10-28 17:17:04,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:17:04,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:17:04,261.261 INFO    ] No existing commands found in stream
[2026-10-28 17:17:09,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:17:09,279.279 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-28 17:17:13,321.321 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:17:13,324.324 INFO    ] Checking for system updates...
[2026-10-28 17:17:13,360.360 INFO    ] 200
[2026-10-28 17:17:13,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:17:13,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:17:13,419.419 INFO    ] No update needed
[2026-10-28 17:17:13,422.422 INFO    ] Checking for camera pi updates...
[2026-10-28 17:17:13,455.455 INFO    ] 200
[2026-10-28 17:17:13,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:17:13,497.497 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:17:13,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:17:13,589.589 INFO    ] No camera update needed
[2026-10-28 17:17:13,593.593 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:17:13,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:17:13,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:17:13,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:17:15,656.656 INFO    ] ================================================
[2026-10-28 17:17:15,671.671 INFO    ] Launching Daemon at Wed Oct 28 17:17:15 IST 2026
[2026-10-28 17:17:15,682.682 INFO    ] ================================================
[2026-10-28 17:17:16,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:17:16
[2026-10-28 17:17:16,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:17:17,148.148 INFO    ] Initializing speech engine...
[2026-10-28 17:17:17,155.155 INFO    ] 2026-10-28 17:17:17
[2026-10-28 17:17:17,403.403 INFO    ] 2026-10-28 17:17:17
[2026-10-28 17:17:17,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:17:17,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:17:17,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:17:17,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:17:17,961.961 INFO    ] time= 28/10/2026 17:17:17
[2026-10-28 17:17:17,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:17:18,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:17:18,114.114 INFO    ] No existing commands found in stream
[2026-10-28 17:17:23,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:17:23,141.141 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-28 17:17:24,719.719 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:17:24,722.722 INFO    ] Checking for system updates...
[2026-10-28 17:17:24,758.758 INFO    ] 200
[2026-10-28 17:17:24,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:17:24,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:17:24,821.821 INFO    ] No update needed
[2026-10-28 17:17:24,824.824 INFO    ] Checking for camera pi updates...
[2026-10-28 17:17:24,865.865 INFO    ] 200
[2026-10-28 17:17:24,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:17:24,908.908 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:17:24,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:17:24,993.993 INFO    ] No camera update needed
[2026-10-28 17:17:24,996.996 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:17:24,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:17:25,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:17:25,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:17:27,048.048 INFO    ] ================================================
[2026-10-28 17:17:27,064.064 INFO    ] Launching Daemon at Wed Oct 28 17:17:27 IST 2026
[2026-10-28 17:17:27,076.076 INFO    ] ================================================
[2026-10-28 17:17:27,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:17:27
[2026-10-28 17:17:28,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:17:28,530.530 INFO    ] Initializing speech engine...
[2026-10-28 17:17:28,539.539 INFO    ] 2026-10-28 17:17:28
[2026-10-28 17:17:28,790.790 INFO    ] 2026-10-28 17:17:28
[2026-10-28 17:17:28,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:17:29,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:17:29,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:17:29,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:17:29,456.456 INFO    ] time= 28/10/2026 17:17:29
[2026-10-28 17:17:29,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:17:29,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:17:29,713.713 INFO    ] No existing commands found in stream
[2026-10-28 17:17:34,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:17:34,741.741 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-28 17:17:37,294.294 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:17:37,297.297 INFO    ] Checking for system updates...
[2026-10-28 17:17:37,336.336 INFO    ] 200
[2026-10-28 17:17:37,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:17:37,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:17:37,399.399 INFO    ] No update needed
[2026-10-28 17:17:37,401.401 INFO    ] Checking for camera pi updates...
[2026-10-28 17:17:37,440.440 INFO    ] 200
[2026-10-28 17:17:37,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:17:37,482.482 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:17:37,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:17:37,712.712 INFO    ] No camera update needed
[2026-10-28 17:17:37,714.714 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:17:37,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:17:37,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:17:37,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:17:39,768.768 INFO    ] ================================================
[2026-10-28 17:17:39,784.784 INFO    ] Launching Daemon at Wed Oct 28 17:17:39 IST 2026
[2026-10-28 17:17:39,795.795 INFO    ] ================================================
[2026-10-28 17:17:40,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:17:40
[2026-10-28 17:17:40,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:17:41,216.216 INFO    ] Initializing speech engine...
[2026-10-28 17:17:41,224.224 INFO    ] 2026-10-28 17:17:41
[2026-10-28 17:17:41,472.472 INFO    ] 2026-10-28 17:17:41
[2026-10-28 17:17:41,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:17:41,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:17:41,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:17:42,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:17:42,025.025 INFO    ] time= 28/10/2026 17:17:42
[2026-10-28 17:17:42,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:17:42,048.048 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:17:42,177.177 INFO    ] No existing commands found in stream
[2026-10-28 17:17:47,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:17:47,199.199 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 17:17:49,563.563 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:17:49,566.566 INFO    ] Checking for system updates...
[2026-10-28 17:17:49,603.603 INFO    ] 200
[2026-10-28 17:17:49,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:17:49,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:17:49,661.661 INFO    ] No update needed
[2026-10-28 17:17:49,665.665 INFO    ] Checking for camera pi updates...
[2026-10-28 17:17:49,698.698 INFO    ] 200
[2026-10-28 17:17:49,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:17:49,743.743 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:17:49,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:17:49,832.832 INFO    ] No camera update needed
[2026-10-28 17:17:49,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:17:49,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:17:49,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:17:49,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:17:51,888.888 INFO    ] ================================================
[2026-10-28 17:17:51,904.904 INFO    ] Launching Daemon at Wed Oct 28 17:17:51 IST 2026
[2026-10-28 17:17:51,915.915 INFO    ] ================================================
[2026-10-28 17:17:52,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:17:52
[2026-10-28 17:17:53,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:17:53,369.369 INFO    ] Initializing speech engine...
[2026-10-28 17:17:53,376.376 INFO    ] 2026-10-28 17:17:53
[2026-10-28 17:17:53,637.637 INFO    ] 2026-10-28 17:17:53
[2026-10-28 17:17:53,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:17:53,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:17:53,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:17:54,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:17:54,182.182 INFO    ] time= 28/10/2026 17:17:54
[2026-10-28 17:17:54,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:17:54,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:17:54,349.349 INFO    ] No existing commands found in stream
[2026-10-28 17:17:59,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:17:59,383.383 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-28 17:18:02,025.025 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:18:02,030.030 INFO    ] Checking for system updates...
[2026-10-28 17:18:02,080.080 INFO    ] 200
[2026-10-28 17:18:02,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:18:02,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:18:02,156.156 INFO    ] No update needed
[2026-10-28 17:18:02,160.160 INFO    ] Checking for camera pi updates...
[2026-10-28 17:18:02,208.208 INFO    ] 200
[2026-10-28 17:18:02,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:18:02,270.270 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:18:02,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:18:02,372.372 INFO    ] No camera update needed
[2026-10-28 17:18:02,376.376 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:18:02,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:18:02,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:18:02,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:18:04,446.446 INFO    ] ================================================
[2026-10-28 17:18:04,462.462 INFO    ] Launching Daemon at Wed Oct 28 17:18:04 IST 2026
[2026-10-28 17:18:04,473.473 INFO    ] ================================================
[2026-10-28 17:18:05,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:18:05
[2026-10-28 17:18:05,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:18:06,000.000 INFO    ] Initializing speech engine...
[2026-10-28 17:18:06,008.008 INFO    ] 2026-10-28 17:18:06
[2026-10-28 17:18:06,323.323 INFO    ] 2026-10-28 17:18:06
[2026-10-28 17:18:06,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:18:06,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:18:06,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:18:06,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:18:06,860.860 INFO    ] time= 28/10/2026 17:18:06
[2026-10-28 17:18:06,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:18:06,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:18:07,136.136 INFO    ] No existing commands found in stream
[2026-10-28 17:18:12,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:18:12,162.162 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-28 17:18:15,442.442 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:18:15,446.446 INFO    ] Checking for system updates...
[2026-10-28 17:18:15,485.485 INFO    ] 200
[2026-10-28 17:18:15,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:18:15,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:18:15,547.547 INFO    ] No update needed
[2026-10-28 17:18:15,549.549 INFO    ] Checking for camera pi updates...
[2026-10-28 17:18:15,583.583 INFO    ] 200
[2026-10-28 17:18:15,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:18:15,626.626 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:18:15,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:18:15,713.713 INFO    ] No camera update needed
[2026-10-28 17:18:15,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:18:15,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:18:15,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:18:15,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:18:17,767.767 INFO    ] ================================================
[2026-10-28 17:18:17,782.782 INFO    ] Launching Daemon at Wed Oct 28 17:18:17 IST 2026
[2026-10-28 17:18:17,796.796 INFO    ] ================================================
[2026-10-28 17:18:18,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:18:18
[2026-10-28 17:18:18,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:18:19,192.192 INFO    ] Initializing speech engine...
[2026-10-28 17:18:19,214.214 INFO    ] 2026-10-28 17:18:19
[2026-10-28 17:18:19,468.468 INFO    ] 2026-10-28 17:18:19
[2026-10-28 17:18:19,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:18:19,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:18:19,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:18:20,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:18:20,034.034 INFO    ] time= 28/10/2026 17:18:20
[2026-10-28 17:18:20,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:18:20,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:18:20,215.215 INFO    ] No existing commands found in stream
[2026-10-28 17:18:25,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:18:25,243.243 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-28 17:18:26,489.489 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:18:26,492.492 INFO    ] Checking for system updates...
[2026-10-28 17:18:26,532.532 INFO    ] 200
[2026-10-28 17:18:26,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:18:26,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:18:26,596.596 INFO    ] No update needed
[2026-10-28 17:18:26,599.599 INFO    ] Checking for camera pi updates...
[2026-10-28 17:18:26,637.637 INFO    ] 200
[2026-10-28 17:18:26,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:18:26,697.697 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:18:26,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:18:26,780.780 INFO    ] No camera update needed
[2026-10-28 17:18:26,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:18:26,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:18:26,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:18:26,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:18:28,838.838 INFO    ] ================================================
[2026-10-28 17:18:28,854.854 INFO    ] Launching Daemon at Wed Oct 28 17:18:28 IST 2026
[2026-10-28 17:18:28,866.866 INFO    ] ================================================
[2026-10-28 17:18:29,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:18:29
[2026-10-28 17:18:30,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:18:30,342.342 INFO    ] Initializing speech engine...
[2026-10-28 17:18:30,348.348 INFO    ] 2026-10-28 17:18:30
[2026-10-28 17:18:30,607.607 INFO    ] 2026-10-28 17:18:30
[2026-10-28 17:18:30,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:18:30,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:18:30,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:18:31,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:18:31,133.133 INFO    ] time= 28/10/2026 17:18:31
[2026-10-28 17:18:31,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:18:31,179.179 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:18:31,315.315 INFO    ] No existing commands found in stream
[2026-10-28 17:18:36,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:18:36,348.348 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-28 17:18:37,943.943 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:18:37,946.946 INFO    ] Checking for system updates...
[2026-10-28 17:18:37,993.993 INFO    ] 200
[2026-10-28 17:18:37,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:18:38,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:18:38,060.060 INFO    ] No update needed
[2026-10-28 17:18:38,063.063 INFO    ] Checking for camera pi updates...
[2026-10-28 17:18:38,104.104 INFO    ] 200
[2026-10-28 17:18:38,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:18:38,146.146 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:18:38,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:18:38,231.231 INFO    ] No camera update needed
[2026-10-28 17:18:38,234.234 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:18:38,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:18:38,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:18:38,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:18:40,288.288 INFO    ] ================================================
[2026-10-28 17:18:40,303.303 INFO    ] Launching Daemon at Wed Oct 28 17:18:40 IST 2026
[2026-10-28 17:18:40,314.314 INFO    ] ================================================
[2026-10-28 17:18:40,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:18:40
[2026-10-28 17:18:41,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:18:41,888.888 INFO    ] Initializing speech engine...
[2026-10-28 17:18:41,897.897 INFO    ] 2026-10-28 17:18:41
[2026-10-28 17:18:42,184.184 INFO    ] 2026-10-28 17:18:42
[2026-10-28 17:18:42,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:18:42,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:18:42,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:18:42,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:18:42,702.702 INFO    ] time= 28/10/2026 17:18:42
[2026-10-28 17:18:42,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:18:42,753.753 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:18:42,859.859 INFO    ] No existing commands found in stream
[2026-10-28 17:18:47,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:18:47,875.875 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 17:18:49,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:18:49,284.284 INFO    ] Checking for system updates...
[2026-10-28 17:18:49,319.319 INFO    ] 200
[2026-10-28 17:18:49,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:18:49,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:18:49,381.381 INFO    ] No update needed
[2026-10-28 17:18:49,383.383 INFO    ] Checking for camera pi updates...
[2026-10-28 17:18:49,417.417 INFO    ] 200
[2026-10-28 17:18:49,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:18:49,459.459 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:18:49,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:18:49,546.546 INFO    ] No camera update needed
[2026-10-28 17:18:49,548.548 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:18:49,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:18:49,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:18:49,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:18:51,602.602 INFO    ] ================================================
[2026-10-28 17:18:51,617.617 INFO    ] Launching Daemon at Wed Oct 28 17:18:51 IST 2026
[2026-10-28 17:18:51,628.628 INFO    ] ================================================
[2026-10-28 17:18:52,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:18:52
[2026-10-28 17:18:52,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:18:53,091.091 INFO    ] Initializing speech engine...
[2026-10-28 17:18:53,103.103 INFO    ] 2026-10-28 17:18:53
[2026-10-28 17:18:53,371.371 INFO    ] 2026-10-28 17:18:53
[2026-10-28 17:18:53,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:18:53,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:18:53,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:18:54,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:18:54,087.087 INFO    ] time= 28/10/2026 17:18:54
[2026-10-28 17:18:54,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:18:54,198.198 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:18:54,350.350 INFO    ] No existing commands found in stream
[2026-10-28 17:18:59,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:18:59,368.368 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 17:19:02,347.347 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:19:02,350.350 INFO    ] Checking for system updates...
[2026-10-28 17:19:02,395.395 INFO    ] 200
[2026-10-28 17:19:02,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:19:02,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:19:02,459.459 INFO    ] No update needed
[2026-10-28 17:19:02,462.462 INFO    ] Checking for camera pi updates...
[2026-10-28 17:19:02,503.503 INFO    ] 200
[2026-10-28 17:19:02,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:19:02,558.558 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:19:02,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:19:02,664.664 INFO    ] No camera update needed
[2026-10-28 17:19:02,667.667 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:19:02,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:19:02,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:19:02,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:19:04,742.742 INFO    ] ================================================
[2026-10-28 17:19:04,757.757 INFO    ] Launching Daemon at Wed Oct 28 17:19:04 IST 2026
[2026-10-28 17:19:04,768.768 INFO    ] ================================================
[2026-10-28 17:19:05,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:19:05
[2026-10-28 17:19:05,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:19:06,184.184 INFO    ] Initializing speech engine...
[2026-10-28 17:19:06,197.197 INFO    ] 2026-10-28 17:19:06
[2026-10-28 17:19:06,449.449 INFO    ] 2026-10-28 17:19:06
[2026-10-28 17:19:06,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:19:06,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:19:06,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:19:06,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:19:07,004.004 INFO    ] time= 28/10/2026 17:19:06
[2026-10-28 17:19:07,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:19:07,029.029 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:19:07,168.168 INFO    ] No existing commands found in stream
[2026-10-28 17:19:12,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:19:12,196.196 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-28 17:19:15,038.038 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:19:15,041.041 INFO    ] Checking for system updates...
[2026-10-28 17:19:15,077.077 INFO    ] 200
[2026-10-28 17:19:15,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:19:15,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:19:15,140.140 INFO    ] No update needed
[2026-10-28 17:19:15,142.142 INFO    ] Checking for camera pi updates...
[2026-10-28 17:19:15,175.175 INFO    ] 200
[2026-10-28 17:19:15,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:19:15,217.217 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:19:15,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:19:15,326.326 INFO    ] No camera update needed
[2026-10-28 17:19:15,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:19:15,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:19:15,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:19:15,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:19:17,380.380 INFO    ] ================================================
[2026-10-28 17:19:17,395.395 INFO    ] Launching Daemon at Wed Oct 28 17:19:17 IST 2026
[2026-10-28 17:19:17,406.406 INFO    ] ================================================
[2026-10-28 17:19:18,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:19:18
[2026-10-28 17:19:18,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:19:18,974.974 INFO    ] Initializing speech engine...
[2026-10-28 17:19:18,984.984 INFO    ] 2026-10-28 17:19:18
[2026-10-28 17:19:19,234.234 INFO    ] 2026-10-28 17:19:19
[2026-10-28 17:19:19,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:19:19,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:19:19,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:19:19,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:19:19,800.800 INFO    ] time= 28/10/2026 17:19:19
[2026-10-28 17:19:19,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:19:19,841.841 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:19:19,959.959 INFO    ] No existing commands found in stream
[2026-10-28 17:19:24,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:19:24,985.985 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-28 17:19:28,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:19:28,868.868 INFO    ] Checking for system updates...
[2026-10-28 17:19:28,907.907 INFO    ] 200
[2026-10-28 17:19:28,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:19:28,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:19:28,969.969 INFO    ] No update needed
[2026-10-28 17:19:28,972.972 INFO    ] Checking for camera pi updates...
[2026-10-28 17:19:29,006.006 INFO    ] 200
[2026-10-28 17:19:29,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:19:29,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:19:29,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:19:29,134.134 INFO    ] No camera update needed
[2026-10-28 17:19:29,137.137 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:19:29,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:19:29,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:19:29,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:19:31,192.192 INFO    ] ================================================
[2026-10-28 17:19:31,206.206 INFO    ] Launching Daemon at Wed Oct 28 17:19:31 IST 2026
[2026-10-28 17:19:31,217.217 INFO    ] ================================================
[2026-10-28 17:19:31,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:19:31
[2026-10-28 17:19:32,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:19:32,873.873 INFO    ] Initializing speech engine...
[2026-10-28 17:19:32,883.883 INFO    ] 2026-10-28 17:19:32
[2026-10-28 17:19:33,155.155 INFO    ] 2026-10-28 17:19:33
[2026-10-28 17:19:33,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:19:33,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:19:33,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:19:33,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:19:33,877.877 INFO    ] time= 28/10/2026 17:19:33
[2026-10-28 17:19:33,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:19:33,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:19:34,114.114 INFO    ] No existing commands found in stream
[2026-10-28 17:19:39,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:19:39,135.135 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 17:19:42,268.268 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:19:42,271.271 INFO    ] Checking for system updates...
[2026-10-28 17:19:42,308.308 INFO    ] 200
[2026-10-28 17:19:42,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:19:42,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:19:42,369.369 INFO    ] No update needed
[2026-10-28 17:19:42,371.371 INFO    ] Checking for camera pi updates...
[2026-10-28 17:19:42,404.404 INFO    ] 200
[2026-10-28 17:19:42,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:19:42,450.450 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:19:42,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:19:42,621.621 INFO    ] No camera update needed
[2026-10-28 17:19:42,624.624 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:19:42,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:19:42,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:19:42,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:19:44,676.676 INFO    ] ================================================
[2026-10-28 17:19:44,691.691 INFO    ] Launching Daemon at Wed Oct 28 17:19:44 IST 2026
[2026-10-28 17:19:44,702.702 INFO    ] ================================================
[2026-10-28 17:19:45,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:19:45
[2026-10-28 17:19:45,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:19:46,112.112 INFO    ] Initializing speech engine...
[2026-10-28 17:19:46,136.136 INFO    ] 2026-10-28 17:19:46
[2026-10-28 17:19:46,403.403 INFO    ] 2026-10-28 17:19:46
[2026-10-28 17:19:46,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:19:46,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:19:46,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:19:46,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:19:46,914.914 INFO    ] time= 28/10/2026 17:19:46
[2026-10-28 17:19:46,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:19:47,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:19:47,173.173 INFO    ] No existing commands found in stream
[2026-10-28 17:19:52,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:19:52,195.195 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-28 17:19:53,545.545 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:19:53,548.548 INFO    ] Checking for system updates...
[2026-10-28 17:19:53,584.584 INFO    ] 200
[2026-10-28 17:19:53,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:19:53,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:19:53,644.644 INFO    ] No update needed
[2026-10-28 17:19:53,647.647 INFO    ] Checking for camera pi updates...
[2026-10-28 17:19:53,680.680 INFO    ] 200
[2026-10-28 17:19:53,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:19:53,725.725 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:19:53,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:19:53,809.809 INFO    ] No camera update needed
[2026-10-28 17:19:53,811.811 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:19:53,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:19:53,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:19:53,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:19:55,865.865 INFO    ] ================================================
[2026-10-28 17:19:55,881.881 INFO    ] Launching Daemon at Wed Oct 28 17:19:55 IST 2026
[2026-10-28 17:19:55,892.892 INFO    ] ================================================
[2026-10-28 17:19:56,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:19:56
[2026-10-28 17:19:57,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:19:57,331.331 INFO    ] Initializing speech engine...
[2026-10-28 17:19:57,342.342 INFO    ] 2026-10-28 17:19:57
[2026-10-28 17:19:57,610.610 INFO    ] 2026-10-28 17:19:57
[2026-10-28 17:19:57,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:19:57,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:19:57,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:19:58,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:19:58,204.204 INFO    ] time= 28/10/2026 17:19:58
[2026-10-28 17:19:58,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:19:58,225.225 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:19:58,380.380 INFO    ] No existing commands found in stream
[2026-10-28 17:20:03,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:20:03,409.409 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-28 17:20:07,561.561 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:20:07,564.564 INFO    ] Checking for system updates...
[2026-10-28 17:20:07,601.601 INFO    ] 200
[2026-10-28 17:20:07,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:20:07,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:20:07,661.661 INFO    ] No update needed
[2026-10-28 17:20:07,664.664 INFO    ] Checking for camera pi updates...
[2026-10-28 17:20:07,698.698 INFO    ] 200
[2026-10-28 17:20:07,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:20:07,741.741 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:20:07,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:20:07,822.822 INFO    ] No camera update needed
[2026-10-28 17:20:07,824.824 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:20:07,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:20:07,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:20:07,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:20:09,877.877 INFO    ] ================================================
[2026-10-28 17:20:09,894.894 INFO    ] Launching Daemon at Wed Oct 28 17:20:09 IST 2026
[2026-10-28 17:20:09,905.905 INFO    ] ================================================
[2026-10-28 17:20:10,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:20:10
[2026-10-28 17:20:11,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:20:11,374.374 INFO    ] Initializing speech engine...
[2026-10-28 17:20:11,382.382 INFO    ] 2026-10-28 17:20:11
[2026-10-28 17:20:11,641.641 INFO    ] 2026-10-28 17:20:11
[2026-10-28 17:20:11,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:20:11,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:20:11,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:20:12,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:20:12,187.187 INFO    ] time= 28/10/2026 17:20:12
[2026-10-28 17:20:12,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:20:12,235.235 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:20:12,374.374 INFO    ] No existing commands found in stream
[2026-10-28 17:20:17,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:20:17,408.408 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-28 17:20:18,984.984 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:20:18,987.987 INFO    ] Checking for system updates...
[2026-10-28 17:20:19,026.026 INFO    ] 200
[2026-10-28 17:20:19,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:20:19,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:20:19,090.090 INFO    ] No update needed
[2026-10-28 17:20:19,093.093 INFO    ] Checking for camera pi updates...
[2026-10-28 17:20:19,131.131 INFO    ] 200
[2026-10-28 17:20:19,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:20:19,179.179 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:20:19,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:20:19,261.261 INFO    ] No camera update needed
[2026-10-28 17:20:19,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:20:19,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:20:19,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:20:19,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:20:21,319.319 INFO    ] ================================================
[2026-10-28 17:20:21,335.335 INFO    ] Launching Daemon at Wed Oct 28 17:20:21 IST 2026
[2026-10-28 17:20:21,346.346 INFO    ] ================================================
[2026-10-28 17:20:21,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:20:21
[2026-10-28 17:20:22,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:20:22,741.741 INFO    ] Initializing speech engine...
[2026-10-28 17:20:22,749.749 INFO    ] 2026-10-28 17:20:22
[2026-10-28 17:20:23,022.022 INFO    ] 2026-10-28 17:20:23
[2026-10-28 17:20:23,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:20:23,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:20:23,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:20:23,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:20:23,575.575 INFO    ] time= 28/10/2026 17:20:23
[2026-10-28 17:20:23,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:20:23,598.598 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:20:23,748.748 INFO    ] No existing commands found in stream
[2026-10-28 17:20:28,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:20:28,762.762 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 17:20:32,493.493 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:20:32,496.496 INFO    ] Checking for system updates...
[2026-10-28 17:20:32,537.537 INFO    ] 200
[2026-10-28 17:20:32,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:20:32,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:20:32,609.609 INFO    ] No update needed
[2026-10-28 17:20:32,611.611 INFO    ] Checking for camera pi updates...
[2026-10-28 17:20:32,648.648 INFO    ] 200
[2026-10-28 17:20:32,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:20:32,693.693 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:20:32,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:20:32,818.818 INFO    ] No camera update needed
[2026-10-28 17:20:32,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:20:32,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:20:32,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:20:32,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:20:34,879.879 INFO    ] ================================================
[2026-10-28 17:20:34,894.894 INFO    ] Launching Daemon at Wed Oct 28 17:20:34 IST 2026
[2026-10-28 17:20:34,905.905 INFO    ] ================================================
[2026-10-28 17:20:35,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:20:35
[2026-10-28 17:20:36,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:20:36,313.313 INFO    ] Initializing speech engine...
[2026-10-28 17:20:36,328.328 INFO    ] 2026-10-28 17:20:36
[2026-10-28 17:20:36,595.595 INFO    ] 2026-10-28 17:20:36
[2026-10-28 17:20:36,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:20:36,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:20:36,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:20:37,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:20:37,165.165 INFO    ] time= 28/10/2026 17:20:37
[2026-10-28 17:20:37,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:20:37,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:20:37,347.347 INFO    ] No existing commands found in stream
[2026-10-28 17:20:42,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:20:42,380.380 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-28 17:20:46,204.204 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:20:46,206.206 INFO    ] Checking for system updates...
[2026-10-28 17:20:46,246.246 INFO    ] 200
[2026-10-28 17:20:46,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:20:46,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:20:46,306.306 INFO    ] No update needed
[2026-10-28 17:20:46,308.308 INFO    ] Checking for camera pi updates...
[2026-10-28 17:20:46,343.343 INFO    ] 200
[2026-10-28 17:20:46,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:20:46,386.386 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:20:46,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:20:46,474.474 INFO    ] No camera update needed
[2026-10-28 17:20:46,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:20:46,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:20:46,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:20:46,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:20:48,532.532 INFO    ] ================================================
[2026-10-28 17:20:48,548.548 INFO    ] Launching Daemon at Wed Oct 28 17:20:48 IST 2026
[2026-10-28 17:20:48,559.559 INFO    ] ================================================
[2026-10-28 17:20:49,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:20:49
[2026-10-28 17:20:49,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:20:49,973.973 INFO    ] Initializing speech engine...
[2026-10-28 17:20:49,981.981 INFO    ] 2026-10-28 17:20:49
[2026-10-28 17:20:50,256.256 INFO    ] 2026-10-28 17:20:50
[2026-10-28 17:20:50,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:20:50,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:20:50,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:20:50,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:20:50,822.822 INFO    ] time= 28/10/2026 17:20:50
[2026-10-28 17:20:50,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:20:50,846.846 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:20:50,981.981 INFO    ] No existing commands found in stream
[2026-10-28 17:20:56,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:20:56,002.002 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-28 17:20:58,618.618 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:20:58,621.621 INFO    ] Checking for system updates...
[2026-10-28 17:20:58,656.656 INFO    ] 200
[2026-10-28 17:20:58,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:20:58,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:20:58,717.717 INFO    ] No update needed
[2026-10-28 17:20:58,720.720 INFO    ] Checking for camera pi updates...
[2026-10-28 17:20:58,757.757 INFO    ] 200
[2026-10-28 17:20:58,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:20:58,800.800 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:20:58,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:20:58,895.895 INFO    ] No camera update needed
[2026-10-28 17:20:58,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:20:58,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:20:58,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:20:58,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:21:00,950.950 INFO    ] ================================================
[2026-10-28 17:21:00,966.966 INFO    ] Launching Daemon at Wed Oct 28 17:21:00 IST 2026
[2026-10-28 17:21:00,978.978 INFO    ] ================================================
[2026-10-28 17:21:01,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:21:01
[2026-10-28 17:21:02,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:21:02,786.786 INFO    ] Initializing speech engine...
[2026-10-28 17:21:02,800.800 INFO    ] 2026-10-28 17:21:02
[2026-10-28 17:21:03,080.080 INFO    ] 2026-10-28 17:21:03
[2026-10-28 17:21:03,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:21:03,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:21:03,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:21:03,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:21:03,685.685 INFO    ] time= 28/10/2026 17:21:03
[2026-10-28 17:21:03,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:21:03,710.710 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:21:03,848.848 INFO    ] No existing commands found in stream
[2026-10-28 17:21:08,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:21:08,877.877 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-28 17:21:12,242.242 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:21:12,245.245 INFO    ] Checking for system updates...
[2026-10-28 17:21:12,280.280 INFO    ] 200
[2026-10-28 17:21:12,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:21:12,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:21:12,337.337 INFO    ] No update needed
[2026-10-28 17:21:12,340.340 INFO    ] Checking for camera pi updates...
[2026-10-28 17:21:12,374.374 INFO    ] 200
[2026-10-28 17:21:12,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:21:12,416.416 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:21:12,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:21:12,505.505 INFO    ] No camera update needed
[2026-10-28 17:21:12,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:21:12,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:21:12,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:21:12,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:21:14,562.562 INFO    ] ================================================
[2026-10-28 17:21:14,577.577 INFO    ] Launching Daemon at Wed Oct 28 17:21:14 IST 2026
[2026-10-28 17:21:14,589.589 INFO    ] ================================================
[2026-10-28 17:21:15,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:21:15
[2026-10-28 17:21:15,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:21:16,028.028 INFO    ] Initializing speech engine...
[2026-10-28 17:21:16,041.041 INFO    ] 2026-10-28 17:21:16
[2026-10-28 17:21:16,308.308 INFO    ] 2026-10-28 17:21:16
[2026-10-28 17:21:16,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:21:16,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:21:16,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:21:16,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:21:16,881.881 INFO    ] time= 28/10/2026 17:21:16
[2026-10-28 17:21:16,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:21:16,903.903 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:21:17,029.029 INFO    ] No existing commands found in stream
[2026-10-28 17:21:22,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:21:22,056.056 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 17:21:23,659.659 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:21:23,662.662 INFO    ] Checking for system updates...
[2026-10-28 17:21:23,697.697 INFO    ] 200
[2026-10-28 17:21:23,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:21:23,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:21:23,755.755 INFO    ] No update needed
[2026-10-28 17:21:23,757.757 INFO    ] Checking for camera pi updates...
[2026-10-28 17:21:23,795.795 INFO    ] 200
[2026-10-28 17:21:23,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:21:23,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:21:23,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:21:23,925.925 INFO    ] No camera update needed
[2026-10-28 17:21:23,927.927 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:21:23,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:21:23,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:21:23,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:21:25,981.981 INFO    ] ================================================
[2026-10-28 17:21:26,996.996 INFO    ] Launching Daemon at Wed Oct 28 17:21:25 IST 2026
[2026-10-28 17:21:26,007.007 INFO    ] ================================================
[2026-10-28 17:21:26,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:21:26
[2026-10-28 17:21:27,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:21:27,462.462 INFO    ] Initializing speech engine...
[2026-10-28 17:21:27,472.472 INFO    ] 2026-10-28 17:21:27
[2026-10-28 17:21:27,726.726 INFO    ] 2026-10-28 17:21:27
[2026-10-28 17:21:27,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:21:28,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:21:28,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:21:28,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:21:28,277.277 INFO    ] time= 28/10/2026 17:21:28
[2026-10-28 17:21:28,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:21:28,324.324 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:21:28,444.444 INFO    ] No existing commands found in stream
[2026-10-28 17:21:33,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:21:33,472.472 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 17:21:36,644.644 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:21:36,646.646 INFO    ] Checking for system updates...
[2026-10-28 17:21:36,682.682 INFO    ] 200
[2026-10-28 17:21:36,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:21:36,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:21:36,743.743 INFO    ] No update needed
[2026-10-28 17:21:36,746.746 INFO    ] Checking for camera pi updates...
[2026-10-28 17:21:36,783.783 INFO    ] 200
[2026-10-28 17:21:36,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:21:36,827.827 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:21:36,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:21:36,908.908 INFO    ] No camera update needed
[2026-10-28 17:21:36,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:21:36,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:21:36,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:21:36,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:21:38,965.965 INFO    ] ================================================
[2026-10-28 17:21:38,981.981 INFO    ] Launching Daemon at Wed Oct 28 17:21:38 IST 2026
[2026-10-28 17:21:38,992.992 INFO    ] ================================================
[2026-10-28 17:21:39,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:21:39
[2026-10-28 17:21:40,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:21:40,419.419 INFO    ] Initializing speech engine...
[2026-10-28 17:21:40,426.426 INFO    ] 2026-10-28 17:21:40
[2026-10-28 17:21:40,677.677 INFO    ] 2026-10-28 17:21:40
[2026-10-28 17:21:40,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:21:40,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:21:40,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:21:41,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:21:41,246.246 INFO    ] time= 28/10/2026 17:21:41
[2026-10-28 17:21:41,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:21:41,293.293 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:21:41,431.431 INFO    ] No existing commands found in stream
[2026-10-28 17:21:46,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:21:46,459.459 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-28 17:21:50,049.049 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:21:50,051.051 INFO    ] Checking for system updates...
[2026-10-28 17:21:50,086.086 INFO    ] 200
[2026-10-28 17:21:50,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:21:50,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:21:50,142.142 INFO    ] No update needed
[2026-10-28 17:21:50,145.145 INFO    ] Checking for camera pi updates...
[2026-10-28 17:21:50,179.179 INFO    ] 200
[2026-10-28 17:21:50,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:21:50,220.220 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:21:50,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:21:50,406.406 INFO    ] No camera update needed
[2026-10-28 17:21:50,408.408 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:21:50,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:21:50,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:21:50,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:21:52,463.463 INFO    ] ================================================
[2026-10-28 17:21:52,478.478 INFO    ] Launching Daemon at Wed Oct 28 17:21:52 IST 2026
[2026-10-28 17:21:52,489.489 INFO    ] ================================================
[2026-10-28 17:21:53,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:21:53
[2026-10-28 17:21:53,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:21:53,914.914 INFO    ] Initializing speech engine...
[2026-10-28 17:21:53,927.927 INFO    ] 2026-10-28 17:21:53
[2026-10-28 17:21:54,196.196 INFO    ] 2026-10-28 17:21:54
[2026-10-28 17:21:54,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:21:54,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:21:54,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:21:54,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:21:54,793.793 INFO    ] time= 28/10/2026 17:21:54
[2026-10-28 17:21:54,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:21:54,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:21:54,973.973 INFO    ] No existing commands found in stream
[2026-10-28 17:21:59,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:22:00,001.001 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-28 17:22:02,384.384 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:22:02,387.387 INFO    ] Checking for system updates...
[2026-10-28 17:22:02,436.436 INFO    ] 200
[2026-10-28 17:22:02,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:22:02,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:22:02,533.533 INFO    ] No update needed
[2026-10-28 17:22:02,537.537 INFO    ] Checking for camera pi updates...
[2026-10-28 17:22:02,577.577 INFO    ] 200
[2026-10-28 17:22:02,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:22:02,624.624 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:22:02,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:22:02,749.749 INFO    ] No camera update needed
[2026-10-28 17:22:02,752.752 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:22:02,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:22:02,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:22:02,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:22:04,809.809 INFO    ] ================================================
[2026-10-28 17:22:04,825.825 INFO    ] Launching Daemon at Wed Oct 28 17:22:04 IST 2026
[2026-10-28 17:22:04,837.837 INFO    ] ================================================
[2026-10-28 17:22:05,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:22:05
[2026-10-28 17:22:06,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:22:06,437.437 INFO    ] Initializing speech engine...
[2026-10-28 17:22:06,445.445 INFO    ] 2026-10-28 17:22:06
[2026-10-28 17:22:06,716.716 INFO    ] 2026-10-28 17:22:06
[2026-10-28 17:22:06,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:22:07,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:22:07,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:22:07,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:22:07,468.468 INFO    ] time= 28/10/2026 17:22:07
[2026-10-28 17:22:07,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:22:07,549.549 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:22:07,715.715 INFO    ] No existing commands found in stream
[2026-10-28 17:22:12,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:22:12,739.739 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-28 17:22:14,444.444 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:22:14,447.447 INFO    ] Checking for system updates...
[2026-10-28 17:22:14,487.487 INFO    ] 200
[2026-10-28 17:22:14,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:22:14,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:22:14,552.552 INFO    ] No update needed
[2026-10-28 17:22:14,555.555 INFO    ] Checking for camera pi updates...
[2026-10-28 17:22:14,589.589 INFO    ] 200
[2026-10-28 17:22:14,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:22:14,633.633 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:22:14,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:22:14,717.717 INFO    ] No camera update needed
[2026-10-28 17:22:14,719.719 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:22:14,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:22:14,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:22:14,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:22:16,775.775 INFO    ] ================================================
[2026-10-28 17:22:16,791.791 INFO    ] Launching Daemon at Wed Oct 28 17:22:16 IST 2026
[2026-10-28 17:22:16,802.802 INFO    ] ================================================
[2026-10-28 17:22:17,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:22:17
[2026-10-28 17:22:17,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:22:18,261.261 INFO    ] Initializing speech engine...
[2026-10-28 17:22:18,270.270 INFO    ] 2026-10-28 17:22:18
[2026-10-28 17:22:18,520.520 INFO    ] 2026-10-28 17:22:18
[2026-10-28 17:22:18,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:22:18,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:22:18,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:22:19,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:22:19,078.078 INFO    ] time= 28/10/2026 17:22:19
[2026-10-28 17:22:19,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:22:19,125.125 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:22:19,233.233 INFO    ] No existing commands found in stream
[2026-10-28 17:22:24,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:22:24,260.260 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-28 17:22:28,320.320 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:22:28,322.322 INFO    ] Checking for system updates...
[2026-10-28 17:22:28,358.358 INFO    ] 200
[2026-10-28 17:22:28,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:22:28,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:22:28,417.417 INFO    ] No update needed
[2026-10-28 17:22:28,420.420 INFO    ] Checking for camera pi updates...
[2026-10-28 17:22:28,453.453 INFO    ] 200
[2026-10-28 17:22:28,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:22:28,496.496 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:22:28,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:22:28,585.585 INFO    ] No camera update needed
[2026-10-28 17:22:28,587.587 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:22:28,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:22:28,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:22:28,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:22:30,641.641 INFO    ] ================================================
[2026-10-28 17:22:30,657.657 INFO    ] Launching Daemon at Wed Oct 28 17:22:30 IST 2026
[2026-10-28 17:22:30,668.668 INFO    ] ================================================
[2026-10-28 17:22:31,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:22:31
[2026-10-28 17:22:31,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:22:32,186.186 INFO    ] Initializing speech engine...
[2026-10-28 17:22:32,191.191 INFO    ] 2026-10-28 17:22:32
[2026-10-28 17:22:32,469.469 INFO    ] 2026-10-28 17:22:32
[2026-10-28 17:22:32,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:22:32,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:22:32,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:22:33,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:22:33,030.030 INFO    ] time= 28/10/2026 17:22:33
[2026-10-28 17:22:33,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:22:33,060.060 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:22:33,207.207 INFO    ] No existing commands found in stream
[2026-10-28 17:22:38,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:22:38,240.240 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 17:22:38,922.922 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:22:38,925.925 INFO    ] Checking for system updates...
[2026-10-28 17:22:38,961.961 INFO    ] 200
[2026-10-28 17:22:38,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:22:39,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:22:39,018.018 INFO    ] No update needed
[2026-10-28 17:22:39,021.021 INFO    ] Checking for camera pi updates...
[2026-10-28 17:22:39,055.055 INFO    ] 200
[2026-10-28 17:22:39,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:22:39,101.101 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:22:39,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:22:39,184.184 INFO    ] No camera update needed
[2026-10-28 17:22:39,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:22:39,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:22:39,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:22:39,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:22:41,238.238 INFO    ] ================================================
[2026-10-28 17:22:41,254.254 INFO    ] Launching Daemon at Wed Oct 28 17:22:41 IST 2026
[2026-10-28 17:22:41,264.264 INFO    ] ================================================
[2026-10-28 17:22:41,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:22:41
[2026-10-28 17:22:42,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:22:42,665.665 INFO    ] Initializing speech engine...
[2026-10-28 17:22:42,671.671 INFO    ] 2026-10-28 17:22:42
[2026-10-28 17:22:42,946.946 INFO    ] 2026-10-28 17:22:42
[2026-10-28 17:22:42,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:22:43,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:22:43,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:22:43,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:22:43,515.515 INFO    ] time= 28/10/2026 17:22:43
[2026-10-28 17:22:43,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:22:43,539.539 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:22:43,669.669 INFO    ] No existing commands found in stream
[2026-10-28 17:22:48,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:22:48,688.688 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-28 17:22:50,582.582 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:22:50,585.585 INFO    ] Checking for system updates...
[2026-10-28 17:22:50,621.621 INFO    ] 200
[2026-10-28 17:22:50,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:22:50,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:22:50,681.681 INFO    ] No update needed
[2026-10-28 17:22:50,683.683 INFO    ] Checking for camera pi updates...
[2026-10-28 17:22:50,718.718 INFO    ] 200
[2026-10-28 17:22:50,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:22:50,762.762 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:22:50,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:22:50,845.845 INFO    ] No camera update needed
[2026-10-28 17:22:50,847.847 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:22:50,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:22:50,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:22:50,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:22:52,904.904 INFO    ] ================================================
[2026-10-28 17:22:52,923.923 INFO    ] Launching Daemon at Wed Oct 28 17:22:52 IST 2026
[2026-10-28 17:22:52,936.936 INFO    ] ================================================
[2026-10-28 17:22:53,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:22:53
[2026-10-28 17:22:54,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:22:54,482.482 INFO    ] Initializing speech engine...
[2026-10-28 17:22:54,491.491 INFO    ] 2026-10-28 17:22:54
[2026-10-28 17:22:54,758.758 INFO    ] 2026-10-28 17:22:54
[2026-10-28 17:22:54,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:22:55,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:22:55,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:22:55,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:22:55,315.315 INFO    ] time= 28/10/2026 17:22:55
[2026-10-28 17:22:55,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:22:55,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:22:55,540.540 INFO    ] No existing commands found in stream
[2026-10-28 17:23:00,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:23:00,578.578 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-28 17:23:02,822.822 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:23:02,825.825 INFO    ] Checking for system updates...
[2026-10-28 17:23:02,862.862 INFO    ] 200
[2026-10-28 17:23:02,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:23:02,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:23:02,928.928 INFO    ] No update needed
[2026-10-28 17:23:02,931.931 INFO    ] Checking for camera pi updates...
[2026-10-28 17:23:02,965.965 INFO    ] 200
[2026-10-28 17:23:02,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:23:03,018.018 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:23:03,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:23:03,126.126 INFO    ] No camera update needed
[2026-10-28 17:23:03,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:23:03,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:23:03,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:23:03,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:23:05,184.184 INFO    ] ================================================
[2026-10-28 17:23:05,199.199 INFO    ] Launching Daemon at Wed Oct 28 17:23:05 IST 2026
[2026-10-28 17:23:05,210.210 INFO    ] ================================================
[2026-10-28 17:23:05,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:23:05
[2026-10-28 17:23:06,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:23:06,637.637 INFO    ] Initializing speech engine...
[2026-10-28 17:23:06,645.645 INFO    ] 2026-10-28 17:23:06
[2026-10-28 17:23:06,901.901 INFO    ] 2026-10-28 17:23:06
[2026-10-28 17:23:06,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:23:07,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:23:07,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:23:07,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:23:07,458.458 INFO    ] time= 28/10/2026 17:23:07
[2026-10-28 17:23:07,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:23:07,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:23:07,626.626 INFO    ] No existing commands found in stream
[2026-10-28 17:23:12,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:23:12,650.650 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-28 17:23:15,210.210 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:23:15,213.213 INFO    ] Checking for system updates...
[2026-10-28 17:23:15,249.249 INFO    ] 200
[2026-10-28 17:23:15,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:23:15,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:23:15,314.314 INFO    ] No update needed
[2026-10-28 17:23:15,317.317 INFO    ] Checking for camera pi updates...
[2026-10-28 17:23:15,356.356 INFO    ] 200
[2026-10-28 17:23:15,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:23:15,409.409 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:23:15,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:23:15,499.499 INFO    ] No camera update needed
[2026-10-28 17:23:15,502.502 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:23:15,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:23:15,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:23:15,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:23:17,556.556 INFO    ] ================================================
[2026-10-28 17:23:17,572.572 INFO    ] Launching Daemon at Wed Oct 28 17:23:17 IST 2026
[2026-10-28 17:23:17,583.583 INFO    ] ================================================
[2026-10-28 17:23:18,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:23:18
[2026-10-28 17:23:18,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:23:19,215.215 INFO    ] Initializing speech engine...
[2026-10-28 17:23:19,227.227 INFO    ] 2026-10-28 17:23:19
[2026-10-28 17:23:19,535.535 INFO    ] 2026-10-28 17:23:19
[2026-10-28 17:23:19,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:23:19,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:23:19,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:23:20,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:23:20,187.187 INFO    ] time= 28/10/2026 17:23:20
[2026-10-28 17:23:20,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:23:20,292.292 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:23:20,441.441 INFO    ] No existing commands found in stream
[2026-10-28 17:23:25,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:23:25,470.470 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-10-28 17:23:28,443.443 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:23:28,446.446 INFO    ] Checking for system updates...
[2026-10-28 17:23:28,484.484 INFO    ] 200
[2026-10-28 17:23:28,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:23:28,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:23:28,543.543 INFO    ] No update needed
[2026-10-28 17:23:28,546.546 INFO    ] Checking for camera pi updates...
[2026-10-28 17:23:28,581.581 INFO    ] 200
[2026-10-28 17:23:28,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:23:28,625.625 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:23:28,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:23:28,711.711 INFO    ] No camera update needed
[2026-10-28 17:23:28,714.714 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:23:28,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:23:28,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:23:28,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:23:30,770.770 INFO    ] ================================================
[2026-10-28 17:23:30,786.786 INFO    ] Launching Daemon at Wed Oct 28 17:23:30 IST 2026
[2026-10-28 17:23:30,797.797 INFO    ] ================================================
[2026-10-28 17:23:31,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:23:31
[2026-10-28 17:23:32,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:23:32,347.347 INFO    ] Initializing speech engine...
[2026-10-28 17:23:32,356.356 INFO    ] 2026-10-28 17:23:32
[2026-10-28 17:23:32,658.658 INFO    ] 2026-10-28 17:23:32
[2026-10-28 17:23:32,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:23:32,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:23:32,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:23:33,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:23:33,199.199 INFO    ] time= 28/10/2026 17:23:33
[2026-10-28 17:23:33,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:23:33,323.323 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:23:33,458.458 INFO    ] No existing commands found in stream
[2026-10-28 17:23:38,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:23:38,478.478 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-28 17:23:42,324.324 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:23:42,327.327 INFO    ] Checking for system updates...
[2026-10-28 17:23:42,362.362 INFO    ] 200
[2026-10-28 17:23:42,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:23:42,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:23:42,419.419 INFO    ] No update needed
[2026-10-28 17:23:42,422.422 INFO    ] Checking for camera pi updates...
[2026-10-28 17:23:42,459.459 INFO    ] 200
[2026-10-28 17:23:42,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:23:42,502.502 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:23:42,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:23:42,571.571 INFO    ] No camera update needed
[2026-10-28 17:23:42,573.573 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:23:42,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:23:42,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:23:42,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:23:44,626.626 INFO    ] ================================================
[2026-10-28 17:23:44,642.642 INFO    ] Launching Daemon at Wed Oct 28 17:23:44 IST 2026
[2026-10-28 17:23:44,654.654 INFO    ] ================================================
[2026-10-28 17:23:45,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:23:45
[2026-10-28 17:23:45,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:23:46,085.085 INFO    ] Initializing speech engine...
[2026-10-28 17:23:46,094.094 INFO    ] 2026-10-28 17:23:46
[2026-10-28 17:23:46,340.340 INFO    ] 2026-10-28 17:23:46
[2026-10-28 17:23:46,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:23:46,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:23:46,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:23:46,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:23:46,936.936 INFO    ] time= 28/10/2026 17:23:46
[2026-10-28 17:23:46,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:23:46,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:23:47,078.078 INFO    ] No existing commands found in stream
[2026-10-28 17:23:52,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:23:52,111.111 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-28 17:23:56,176.176 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:23:56,179.179 INFO    ] Checking for system updates...
[2026-10-28 17:23:56,216.216 INFO    ] 200
[2026-10-28 17:23:56,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:23:56,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:23:56,275.275 INFO    ] No update needed
[2026-10-28 17:23:56,277.277 INFO    ] Checking for camera pi updates...
[2026-10-28 17:23:56,311.311 INFO    ] 200
[2026-10-28 17:23:56,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:23:56,355.355 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:23:56,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:23:56,540.540 INFO    ] No camera update needed
[2026-10-28 17:23:56,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:23:56,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:23:56,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:23:56,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:23:58,597.597 INFO    ] ================================================
[2026-10-28 17:23:58,612.612 INFO    ] Launching Daemon at Wed Oct 28 17:23:58 IST 2026
[2026-10-28 17:23:58,623.623 INFO    ] ================================================
[2026-10-28 17:23:59,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:23:59
[2026-10-28 17:23:59,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:24:00,039.039 INFO    ] Initializing speech engine...
[2026-10-28 17:24:00,048.048 INFO    ] 2026-10-28 17:24:00
[2026-10-28 17:24:00,307.307 INFO    ] 2026-10-28 17:24:00
[2026-10-28 17:24:00,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:24:00,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:24:00,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:24:00,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:24:00,899.899 INFO    ] time= 28/10/2026 17:24:00
[2026-10-28 17:24:00,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:24:00,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:24:01,060.060 INFO    ] No existing commands found in stream
[2026-10-28 17:24:06,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:24:06,093.093 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-28 17:24:07,498.498 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:24:07,500.500 INFO    ] Checking for system updates...
[2026-10-28 17:24:07,536.536 INFO    ] 200
[2026-10-28 17:24:07,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:24:07,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:24:07,594.594 INFO    ] No update needed
[2026-10-28 17:24:07,596.596 INFO    ] Checking for camera pi updates...
[2026-10-28 17:24:07,634.634 INFO    ] 200
[2026-10-28 17:24:07,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:24:07,677.677 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:24:07,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:24:07,763.763 INFO    ] No camera update needed
[2026-10-28 17:24:07,766.766 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:24:07,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:24:07,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:24:07,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:24:09,819.819 INFO    ] ================================================
[2026-10-28 17:24:09,835.835 INFO    ] Launching Daemon at Wed Oct 28 17:24:09 IST 2026
[2026-10-28 17:24:09,846.846 INFO    ] ================================================
[2026-10-28 17:24:10,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:24:10
[2026-10-28 17:24:11,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:24:11,496.496 INFO    ] Initializing speech engine...
[2026-10-28 17:24:11,508.508 INFO    ] 2026-10-28 17:24:11
[2026-10-28 17:24:11,822.822 INFO    ] 2026-10-28 17:24:11
[2026-10-28 17:24:11,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:24:12,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:24:12,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:24:12,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:24:12,512.512 INFO    ] time= 28/10/2026 17:24:12
[2026-10-28 17:24:12,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:24:12,583.583 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:24:12,724.724 INFO    ] No existing commands found in stream
[2026-10-28 17:24:17,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:24:17,751.751 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-28 17:24:19,684.684 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:24:19,687.687 INFO    ] Checking for system updates...
[2026-10-28 17:24:19,724.724 INFO    ] 200
[2026-10-28 17:24:19,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:24:19,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:24:19,783.783 INFO    ] No update needed
[2026-10-28 17:24:19,786.786 INFO    ] Checking for camera pi updates...
[2026-10-28 17:24:19,820.820 INFO    ] 200
[2026-10-28 17:24:19,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:24:19,871.871 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:24:19,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:24:19,955.955 INFO    ] No camera update needed
[2026-10-28 17:24:19,958.958 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:24:19,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:24:19,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:24:19,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:24:22,012.012 INFO    ] ================================================
[2026-10-28 17:24:22,028.028 INFO    ] Launching Daemon at Wed Oct 28 17:24:22 IST 2026
[2026-10-28 17:24:22,039.039 INFO    ] ================================================
[2026-10-28 17:24:22,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:24:22
[2026-10-28 17:24:23,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:24:23,694.694 INFO    ] Initializing speech engine...
[2026-10-28 17:24:23,700.700 INFO    ] 2026-10-28 17:24:23
[2026-10-28 17:24:24,009.009 INFO    ] 2026-10-28 17:24:23
[2026-10-28 17:24:24,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:24:24,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:24:24,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:24:24,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:24:24,706.706 INFO    ] time= 28/10/2026 17:24:24
[2026-10-28 17:24:24,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:24:24,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:24:24,931.931 INFO    ] No existing commands found in stream
[2026-10-28 17:24:29,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:24:29,970.970 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-28 17:24:32,861.861 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:24:32,864.864 INFO    ] Checking for system updates...
[2026-10-28 17:24:32,901.901 INFO    ] 200
[2026-10-28 17:24:32,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:24:32,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:24:32,959.959 INFO    ] No update needed
[2026-10-28 17:24:32,962.962 INFO    ] Checking for camera pi updates...
[2026-10-28 17:24:32,997.997 INFO    ] 200
[2026-10-28 17:24:32,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:24:33,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:24:33,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:24:33,158.158 INFO    ] No camera update needed
[2026-10-28 17:24:33,161.161 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:24:33,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:24:33,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:24:33,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:24:35,218.218 INFO    ] ================================================
[2026-10-28 17:24:35,233.233 INFO    ] Launching Daemon at Wed Oct 28 17:24:35 IST 2026
[2026-10-28 17:24:35,244.244 INFO    ] ================================================
[2026-10-28 17:24:35,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:24:35
[2026-10-28 17:24:36,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:24:36,681.681 INFO    ] Initializing speech engine...
[2026-10-28 17:24:36,691.691 INFO    ] 2026-10-28 17:24:36
[2026-10-28 17:24:36,937.937 INFO    ] 2026-10-28 17:24:36
[2026-10-28 17:24:36,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:24:37,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:24:37,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:24:37,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:24:37,491.491 INFO    ] time= 28/10/2026 17:24:37
[2026-10-28 17:24:37,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:24:37,518.518 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:24:37,684.684 INFO    ] No existing commands found in stream
[2026-10-28 17:24:42,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:24:42,717.717 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-28 17:24:44,165.165 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:24:44,167.167 INFO    ] Checking for system updates...
[2026-10-28 17:24:44,207.207 INFO    ] 200
[2026-10-28 17:24:44,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:24:44,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:24:44,264.264 INFO    ] No update needed
[2026-10-28 17:24:44,271.271 INFO    ] Checking for camera pi updates...
[2026-10-28 17:24:44,305.305 INFO    ] 200
[2026-10-28 17:24:44,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:24:44,352.352 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:24:44,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:24:44,454.454 INFO    ] No camera update needed
[2026-10-28 17:24:44,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:24:44,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:24:44,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:24:44,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:24:46,509.509 INFO    ] ================================================
[2026-10-28 17:24:46,525.525 INFO    ] Launching Daemon at Wed Oct 28 17:24:46 IST 2026
[2026-10-28 17:24:46,536.536 INFO    ] ================================================
[2026-10-28 17:24:47,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:24:47
[2026-10-28 17:24:47,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:24:48,176.176 INFO    ] Initializing speech engine...
[2026-10-28 17:24:48,185.185 INFO    ] 2026-10-28 17:24:48
[2026-10-28 17:24:48,458.458 INFO    ] 2026-10-28 17:24:48
[2026-10-28 17:24:48,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:24:48,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:24:48,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:24:49,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:24:49,074.074 INFO    ] time= 28/10/2026 17:24:49
[2026-10-28 17:24:49,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:24:49,145.145 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:24:49,285.285 INFO    ] No existing commands found in stream
[2026-10-28 17:24:54,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:24:54,306.306 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 17:24:58,791.791 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:24:58,794.794 INFO    ] Checking for system updates...
[2026-10-28 17:24:58,830.830 INFO    ] 200
[2026-10-28 17:24:58,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:24:58,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:24:58,890.890 INFO    ] No update needed
[2026-10-28 17:24:58,893.893 INFO    ] Checking for camera pi updates...
[2026-10-28 17:24:58,931.931 INFO    ] 200
[2026-10-28 17:24:58,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:24:58,981.981 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:24:59,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:24:59,084.084 INFO    ] No camera update needed
[2026-10-28 17:24:59,087.087 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:24:59,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:24:59,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:24:59,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:25:01,142.142 INFO    ] ================================================
[2026-10-28 17:25:01,159.159 INFO    ] Launching Daemon at Wed Oct 28 17:25:01 IST 2026
[2026-10-28 17:25:01,170.170 INFO    ] ================================================
[2026-10-28 17:25:02,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:25:01
[2026-10-28 17:25:02,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:25:03,098.098 INFO    ] Initializing speech engine...
[2026-10-28 17:25:03,120.120 INFO    ] 2026-10-28 17:25:03
[2026-10-28 17:25:03,401.401 INFO    ] 2026-10-28 17:25:03
[2026-10-28 17:25:03,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:25:03,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:25:03,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:25:03,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:25:03,928.928 INFO    ] time= 28/10/2026 17:25:03
[2026-10-28 17:25:04,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:25:04,037.037 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:25:04,188.188 INFO    ] No existing commands found in stream
[2026-10-28 17:25:09,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:25:09,214.214 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-28 17:25:10,378.378 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:25:10,381.381 INFO    ] Checking for system updates...
[2026-10-28 17:25:10,421.421 INFO    ] 200
[2026-10-28 17:25:10,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:25:10,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:25:10,485.485 INFO    ] No update needed
[2026-10-28 17:25:10,487.487 INFO    ] Checking for camera pi updates...
[2026-10-28 17:25:10,522.522 INFO    ] 200
[2026-10-28 17:25:10,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:25:10,571.571 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:25:10,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:25:10,674.674 INFO    ] No camera update needed
[2026-10-28 17:25:10,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:25:10,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:25:10,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:25:10,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:25:12,734.734 INFO    ] ================================================
[2026-10-28 17:25:12,750.750 INFO    ] Launching Daemon at Wed Oct 28 17:25:12 IST 2026
[2026-10-28 17:25:12,761.761 INFO    ] ================================================
[2026-10-28 17:25:13,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:25:13
[2026-10-28 17:25:13,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:25:14,164.164 INFO    ] Initializing speech engine...
[2026-10-28 17:25:14,170.170 INFO    ] 2026-10-28 17:25:14
[2026-10-28 17:25:14,460.460 INFO    ] 2026-10-28 17:25:14
[2026-10-28 17:25:14,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:25:14,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:25:14,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:25:14,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:25:14,969.969 INFO    ] time= 28/10/2026 17:25:14
[2026-10-28 17:25:15,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:25:15,068.068 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:25:15,218.218 INFO    ] No existing commands found in stream
[2026-10-28 17:25:20,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:25:20,249.249 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-28 17:25:24,045.045 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:25:24,048.048 INFO    ] Checking for system updates...
[2026-10-28 17:25:24,083.083 INFO    ] 200
[2026-10-28 17:25:24,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:25:24,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:25:24,140.140 INFO    ] No update needed
[2026-10-28 17:25:24,143.143 INFO    ] Checking for camera pi updates...
[2026-10-28 17:25:24,176.176 INFO    ] 200
[2026-10-28 17:25:24,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:25:24,218.218 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:25:24,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:25:24,318.318 INFO    ] No camera update needed
[2026-10-28 17:25:24,320.320 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:25:24,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:25:24,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:25:24,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:25:26,374.374 INFO    ] ================================================
[2026-10-28 17:25:26,390.390 INFO    ] Launching Daemon at Wed Oct 28 17:25:26 IST 2026
[2026-10-28 17:25:26,401.401 INFO    ] ================================================
[2026-10-28 17:25:27,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:25:27
[2026-10-28 17:25:27,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:25:28,008.008 INFO    ] Initializing speech engine...
[2026-10-28 17:25:28,020.020 INFO    ] 2026-10-28 17:25:28
[2026-10-28 17:25:28,293.293 INFO    ] 2026-10-28 17:25:28
[2026-10-28 17:25:28,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:25:28,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:25:28,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:25:28,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:25:28,869.869 INFO    ] time= 28/10/2026 17:25:28
[2026-10-28 17:25:28,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:25:28,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:25:29,068.068 INFO    ] No existing commands found in stream
[2026-10-28 17:25:34,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:25:34,108.108 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-28 17:25:38,581.581 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:25:38,584.584 INFO    ] Checking for system updates...
[2026-10-28 17:25:38,620.620 INFO    ] 200
[2026-10-28 17:25:38,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:25:38,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:25:38,679.679 INFO    ] No update needed
[2026-10-28 17:25:38,681.681 INFO    ] Checking for camera pi updates...
[2026-10-28 17:25:38,716.716 INFO    ] 200
[2026-10-28 17:25:38,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:25:38,759.759 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:25:38,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:25:38,843.843 INFO    ] No camera update needed
[2026-10-28 17:25:38,846.846 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:25:38,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:25:38,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:25:38,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:25:40,903.903 INFO    ] ================================================
[2026-10-28 17:25:40,919.919 INFO    ] Launching Daemon at Wed Oct 28 17:25:40 IST 2026
[2026-10-28 17:25:40,930.930 INFO    ] ================================================
[2026-10-28 17:25:41,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:25:41
[2026-10-28 17:25:42,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:25:42,382.382 INFO    ] Initializing speech engine...
[2026-10-28 17:25:42,391.391 INFO    ] 2026-10-28 17:25:42
[2026-10-28 17:25:42,654.654 INFO    ] 2026-10-28 17:25:42
[2026-10-28 17:25:42,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:25:42,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:25:42,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:25:43,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:25:43,200.200 INFO    ] time= 28/10/2026 17:25:43
[2026-10-28 17:25:43,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:25:43,240.240 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:25:43,358.358 INFO    ] No existing commands found in stream
[2026-10-28 17:25:48,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:25:48,390.390 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-28 17:25:50,846.846 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:25:50,854.854 INFO    ] Checking for system updates...
[2026-10-28 17:25:50,893.893 INFO    ] 200
[2026-10-28 17:25:50,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:25:50,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:25:50,956.956 INFO    ] No update needed
[2026-10-28 17:25:50,959.959 INFO    ] Checking for camera pi updates...
[2026-10-28 17:25:50,992.992 INFO    ] 200
[2026-10-28 17:25:50,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:25:51,037.037 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:25:51,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:25:51,118.118 INFO    ] No camera update needed
[2026-10-28 17:25:51,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:25:51,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:25:51,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:25:51,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:25:53,173.173 INFO    ] ================================================
[2026-10-28 17:25:53,189.189 INFO    ] Launching Daemon at Wed Oct 28 17:25:53 IST 2026
[2026-10-28 17:25:53,200.200 INFO    ] ================================================
[2026-10-28 17:25:53,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:25:53
[2026-10-28 17:25:54,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:25:54,802.802 INFO    ] Initializing speech engine...
[2026-10-28 17:25:54,810.810 INFO    ] 2026-10-28 17:25:54
[2026-10-28 17:25:55,099.099 INFO    ] 2026-10-28 17:25:55
[2026-10-28 17:25:55,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:25:55,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:25:55,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:25:55,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:25:55,647.647 INFO    ] time= 28/10/2026 17:25:55
[2026-10-28 17:25:55,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:25:55,675.675 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:25:55,831.831 INFO    ] No existing commands found in stream
[2026-10-28 17:26:00,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:26:00,865.865 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-10-28 17:26:02,408.408 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:26:02,412.412 INFO    ] Checking for system updates...
[2026-10-28 17:26:02,456.456 INFO    ] 200
[2026-10-28 17:26:02,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:26:02,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:26:02,522.522 INFO    ] No update needed
[2026-10-28 17:26:02,526.526 INFO    ] Checking for camera pi updates...
[2026-10-28 17:26:02,563.563 INFO    ] 200
[2026-10-28 17:26:02,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:26:02,615.615 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:26:02,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:26:02,829.829 INFO    ] No camera update needed
[2026-10-28 17:26:02,832.832 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:26:02,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:26:02,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:26:02,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:26:04,892.892 INFO    ] ================================================
[2026-10-28 17:26:04,908.908 INFO    ] Launching Daemon at Wed Oct 28 17:26:04 IST 2026
[2026-10-28 17:26:04,919.919 INFO    ] ================================================
[2026-10-28 17:26:05,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:26:05
[2026-10-28 17:26:06,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:26:06,374.374 INFO    ] Initializing speech engine...
[2026-10-28 17:26:06,383.383 INFO    ] 2026-10-28 17:26:06
[2026-10-28 17:26:06,642.642 INFO    ] 2026-10-28 17:26:06
[2026-10-28 17:26:06,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:26:06,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:26:06,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:26:07,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:26:07,184.184 INFO    ] time= 28/10/2026 17:26:07
[2026-10-28 17:26:07,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:26:07,211.211 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:26:07,338.338 INFO    ] No existing commands found in stream
[2026-10-28 17:26:12,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:26:12,354.354 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 17:26:16,970.970 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:26:16,974.974 INFO    ] Checking for system updates...
[2026-10-28 17:26:17,010.010 INFO    ] 200
[2026-10-28 17:26:17,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:26:17,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:26:17,069.069 INFO    ] No update needed
[2026-10-28 17:26:17,072.072 INFO    ] Checking for camera pi updates...
[2026-10-28 17:26:17,106.106 INFO    ] 200
[2026-10-28 17:26:17,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:26:17,150.150 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:26:17,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:26:17,239.239 INFO    ] No camera update needed
[2026-10-28 17:26:17,241.241 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:26:17,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:26:17,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:26:17,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:26:19,299.299 INFO    ] ================================================
[2026-10-28 17:26:19,314.314 INFO    ] Launching Daemon at Wed Oct 28 17:26:19 IST 2026
[2026-10-28 17:26:19,326.326 INFO    ] ================================================
[2026-10-28 17:26:19,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:26:19
[2026-10-28 17:26:20,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:26:20,987.987 INFO    ] Initializing speech engine...
[2026-10-28 17:26:20,998.998 INFO    ] 2026-10-28 17:26:20
[2026-10-28 17:26:21,254.254 INFO    ] 2026-10-28 17:26:21
[2026-10-28 17:26:21,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:26:21,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:26:21,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:26:21,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:26:21,818.818 INFO    ] time= 28/10/2026 17:26:21
[2026-10-28 17:26:21,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:26:21,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:26:21,981.981 INFO    ] No existing commands found in stream
[2026-10-28 17:26:27,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:26:27,020.020 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-28 17:26:28,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:26:28,862.862 INFO    ] Checking for system updates...
[2026-10-28 17:26:28,903.903 INFO    ] 200
[2026-10-28 17:26:28,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:26:28,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:26:28,970.970 INFO    ] No update needed
[2026-10-28 17:26:28,972.972 INFO    ] Checking for camera pi updates...
[2026-10-28 17:26:29,008.008 INFO    ] 200
[2026-10-28 17:26:29,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:26:29,058.058 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:26:29,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:26:29,135.135 INFO    ] No camera update needed
[2026-10-28 17:26:29,137.137 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:26:29,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:26:29,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:26:29,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:26:31,191.191 INFO    ] ================================================
[2026-10-28 17:26:31,207.207 INFO    ] Launching Daemon at Wed Oct 28 17:26:31 IST 2026
[2026-10-28 17:26:31,219.219 INFO    ] ================================================
[2026-10-28 17:26:31,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:26:31
[2026-10-28 17:26:32,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:26:32,659.659 INFO    ] Initializing speech engine...
[2026-10-28 17:26:32,673.673 INFO    ] 2026-10-28 17:26:32
[2026-10-28 17:26:32,955.955 INFO    ] 2026-10-28 17:26:32
[2026-10-28 17:26:32,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:26:33,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:26:33,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:26:33,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:26:33,542.542 INFO    ] time= 28/10/2026 17:26:33
[2026-10-28 17:26:33,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:26:33,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:26:33,692.692 INFO    ] No existing commands found in stream
[2026-10-28 17:26:38,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:26:38,711.711 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 17:26:42,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:26:42,744.744 INFO    ] Checking for system updates...
[2026-10-28 17:26:42,780.780 INFO    ] 200
[2026-10-28 17:26:42,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:26:42,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:26:42,838.838 INFO    ] No update needed
[2026-10-28 17:26:42,841.841 INFO    ] Checking for camera pi updates...
[2026-10-28 17:26:42,875.875 INFO    ] 200
[2026-10-28 17:26:42,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:26:42,917.917 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:26:43,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:26:43,004.004 INFO    ] No camera update needed
[2026-10-28 17:26:43,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:26:43,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:26:43,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:26:43,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:26:45,059.059 INFO    ] ================================================
[2026-10-28 17:26:45,075.075 INFO    ] Launching Daemon at Wed Oct 28 17:26:45 IST 2026
[2026-10-28 17:26:45,086.086 INFO    ] ================================================
[2026-10-28 17:26:45,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:26:45
[2026-10-28 17:26:46,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:26:46,671.671 INFO    ] Initializing speech engine...
[2026-10-28 17:26:46,680.680 INFO    ] 2026-10-28 17:26:46
[2026-10-28 17:26:46,928.928 INFO    ] 2026-10-28 17:26:46
[2026-10-28 17:26:46,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:26:47,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:26:47,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:26:47,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:26:47,487.487 INFO    ] time= 28/10/2026 17:26:47
[2026-10-28 17:26:47,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:26:47,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:26:47,624.624 INFO    ] No existing commands found in stream
[2026-10-28 17:26:52,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:26:52,651.651 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-28 17:26:56,935.935 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:26:56,938.938 INFO    ] Checking for system updates...
[2026-10-28 17:26:56,973.973 INFO    ] 200
[2026-10-28 17:26:56,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:26:57,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:26:57,031.031 INFO    ] No update needed
[2026-10-28 17:26:57,034.034 INFO    ] Checking for camera pi updates...
[2026-10-28 17:26:57,068.068 INFO    ] 200
[2026-10-28 17:26:57,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:26:57,114.114 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:26:57,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:26:57,217.217 INFO    ] No camera update needed
[2026-10-28 17:26:57,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:26:57,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:26:57,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:26:57,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:26:59,275.275 INFO    ] ================================================
[2026-10-28 17:26:59,290.290 INFO    ] Launching Daemon at Wed Oct 28 17:26:59 IST 2026
[2026-10-28 17:26:59,300.300 INFO    ] ================================================
[2026-10-28 17:26:59,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:26:59
[2026-10-28 17:27:00,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:27:00,708.708 INFO    ] Initializing speech engine...
[2026-10-28 17:27:00,716.716 INFO    ] 2026-10-28 17:27:00
[2026-10-28 17:27:01,011.011 INFO    ] 2026-10-28 17:27:00
[2026-10-28 17:27:01,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:27:01,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:27:01,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:27:01,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:27:01,493.493 INFO    ] time= 28/10/2026 17:27:01
[2026-10-28 17:27:01,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:27:01,521.521 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:27:01,603.603 INFO    ] No existing commands found in stream
[2026-10-28 17:27:06,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:27:06,623.623 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-28 17:27:07,566.566 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:27:07,569.569 INFO    ] Checking for system updates...
[2026-10-28 17:27:07,606.606 INFO    ] 200
[2026-10-28 17:27:07,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:27:07,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:27:07,666.666 INFO    ] No update needed
[2026-10-28 17:27:07,669.669 INFO    ] Checking for camera pi updates...
[2026-10-28 17:27:07,708.708 INFO    ] 200
[2026-10-28 17:27:07,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:27:07,752.752 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:27:07,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:27:07,846.846 INFO    ] No camera update needed
[2026-10-28 17:27:07,849.849 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:27:07,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:27:07,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:27:07,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:27:09,905.905 INFO    ] ================================================
[2026-10-28 17:27:09,920.920 INFO    ] Launching Daemon at Wed Oct 28 17:27:09 IST 2026
[2026-10-28 17:27:09,931.931 INFO    ] ================================================
[2026-10-28 17:27:10,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:27:10
[2026-10-28 17:27:11,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:27:11,418.418 INFO    ] Initializing speech engine...
[2026-10-28 17:27:11,426.426 INFO    ] 2026-10-28 17:27:11
[2026-10-28 17:27:11,712.712 INFO    ] 2026-10-28 17:27:11
[2026-10-28 17:27:11,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:27:12,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:27:12,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:27:12,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:27:12,459.459 INFO    ] time= 28/10/2026 17:27:12
[2026-10-28 17:27:12,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:27:12,556.556 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:27:12,689.689 INFO    ] No existing commands found in stream
[2026-10-28 17:27:17,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:27:17,708.708 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-28 17:27:18,862.862 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:27:18,865.865 INFO    ] Checking for system updates...
[2026-10-28 17:27:18,900.900 INFO    ] 200
[2026-10-28 17:27:18,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:27:18,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:27:18,957.957 INFO    ] No update needed
[2026-10-28 17:27:18,959.959 INFO    ] Checking for camera pi updates...
[2026-10-28 17:27:18,992.992 INFO    ] 200
[2026-10-28 17:27:18,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:27:19,036.036 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:27:19,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:27:19,125.125 INFO    ] No camera update needed
[2026-10-28 17:27:19,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:27:19,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:27:19,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:27:19,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:27:21,179.179 INFO    ] ================================================
[2026-10-28 17:27:21,195.195 INFO    ] Launching Daemon at Wed Oct 28 17:27:21 IST 2026
[2026-10-28 17:27:21,206.206 INFO    ] ================================================
[2026-10-28 17:27:21,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:27:21
[2026-10-28 17:27:22,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:27:22,840.840 INFO    ] Initializing speech engine...
[2026-10-28 17:27:22,851.851 INFO    ] 2026-10-28 17:27:22
[2026-10-28 17:27:23,137.137 INFO    ] 2026-10-28 17:27:23
[2026-10-28 17:27:23,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:27:23,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:27:23,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:27:23,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:27:23,685.685 INFO    ] time= 28/10/2026 17:27:23
[2026-10-28 17:27:23,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:27:23,721.721 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:27:23,856.856 INFO    ] No existing commands found in stream
[2026-10-28 17:27:28,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:27:28,891.891 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 17:27:31,769.769 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:27:31,773.773 INFO    ] Checking for system updates...
[2026-10-28 17:27:31,813.813 INFO    ] 200
[2026-10-28 17:27:31,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:27:31,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:27:31,878.878 INFO    ] No update needed
[2026-10-28 17:27:31,881.881 INFO    ] Checking for camera pi updates...
[2026-10-28 17:27:31,919.919 INFO    ] 200
[2026-10-28 17:27:31,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:27:31,974.974 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:27:32,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:27:32,095.095 INFO    ] No camera update needed
[2026-10-28 17:27:32,097.097 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:27:32,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:27:32,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:27:32,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:27:34,152.152 INFO    ] ================================================
[2026-10-28 17:27:34,168.168 INFO    ] Launching Daemon at Wed Oct 28 17:27:34 IST 2026
[2026-10-28 17:27:34,178.178 INFO    ] ================================================
[2026-10-28 17:27:34,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:27:34
[2026-10-28 17:27:35,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:27:35,603.603 INFO    ] Initializing speech engine...
[2026-10-28 17:27:35,614.614 INFO    ] 2026-10-28 17:27:35
[2026-10-28 17:27:35,860.860 INFO    ] 2026-10-28 17:27:35
[2026-10-28 17:27:35,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:27:36,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:27:36,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:27:36,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:27:36,418.418 INFO    ] time= 28/10/2026 17:27:36
[2026-10-28 17:27:36,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:27:36,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:27:36,575.575 INFO    ] No existing commands found in stream
[2026-10-28 17:27:41,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:27:41,598.598 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-28 17:27:43,790.790 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:27:43,793.793 INFO    ] Checking for system updates...
[2026-10-28 17:27:43,830.830 INFO    ] 200
[2026-10-28 17:27:43,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:27:43,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:27:43,889.889 INFO    ] No update needed
[2026-10-28 17:27:43,892.892 INFO    ] Checking for camera pi updates...
[2026-10-28 17:27:43,927.927 INFO    ] 200
[2026-10-28 17:27:43,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:27:43,972.972 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:27:44,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:27:44,057.057 INFO    ] No camera update needed
[2026-10-28 17:27:44,060.060 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:27:44,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:27:44,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:27:44,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:27:46,117.117 INFO    ] ================================================
[2026-10-28 17:27:46,132.132 INFO    ] Launching Daemon at Wed Oct 28 17:27:46 IST 2026
[2026-10-28 17:27:46,143.143 INFO    ] ================================================
[2026-10-28 17:27:46,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:27:46
[2026-10-28 17:27:47,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:27:47,788.788 INFO    ] Initializing speech engine...
[2026-10-28 17:27:47,801.801 INFO    ] 2026-10-28 17:27:47
[2026-10-28 17:27:48,111.111 INFO    ] 2026-10-28 17:27:48
[2026-10-28 17:27:48,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:27:48,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:27:48,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:27:48,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:27:48,858.858 INFO    ] time= 28/10/2026 17:27:48
[2026-10-28 17:27:48,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:27:48,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:27:49,067.067 INFO    ] No existing commands found in stream
[2026-10-28 17:27:54,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:27:54,081.081 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 17:27:58,108.108 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:27:58,111.111 INFO    ] Checking for system updates...
[2026-10-28 17:27:58,148.148 INFO    ] 200
[2026-10-28 17:27:58,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:27:58,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:27:58,207.207 INFO    ] No update needed
[2026-10-28 17:27:58,210.210 INFO    ] Checking for camera pi updates...
[2026-10-28 17:27:58,244.244 INFO    ] 200
[2026-10-28 17:27:58,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:27:58,294.294 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:27:58,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:27:58,378.378 INFO    ] No camera update needed
[2026-10-28 17:27:58,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:27:58,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:27:58,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:27:58,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:28:00,436.436 INFO    ] ================================================
[2026-10-28 17:28:00,451.451 INFO    ] Launching Daemon at Wed Oct 28 17:28:00 IST 2026
[2026-10-28 17:28:00,462.462 INFO    ] ================================================
[2026-10-28 17:28:01,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:28:01
[2026-10-28 17:28:01,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:28:02,311.311 INFO    ] Initializing speech engine...
[2026-10-28 17:28:02,326.326 INFO    ] 2026-10-28 17:28:02
[2026-10-28 17:28:02,607.607 INFO    ] 2026-10-28 17:28:02
[2026-10-28 17:28:02,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:28:02,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:28:02,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:28:03,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:28:03,161.161 INFO    ] time= 28/10/2026 17:28:03
[2026-10-28 17:28:03,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:28:03,239.239 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:28:03,374.374 INFO    ] No existing commands found in stream
[2026-10-28 17:28:08,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:28:08,403.403 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-28 17:28:10,727.727 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:28:10,730.730 INFO    ] Checking for system updates...
[2026-10-28 17:28:10,765.765 INFO    ] 200
[2026-10-28 17:28:10,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:28:10,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:28:10,823.823 INFO    ] No update needed
[2026-10-28 17:28:10,826.826 INFO    ] Checking for camera pi updates...
[2026-10-28 17:28:10,862.862 INFO    ] 200
[2026-10-28 17:28:10,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:28:10,906.906 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:28:11,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:28:11,087.087 INFO    ] No camera update needed
[2026-10-28 17:28:11,089.089 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:28:11,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:28:11,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:28:11,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:28:13,142.142 INFO    ] ================================================
[2026-10-28 17:28:13,159.159 INFO    ] Launching Daemon at Wed Oct 28 17:28:13 IST 2026
[2026-10-28 17:28:13,170.170 INFO    ] ================================================
[2026-10-28 17:28:13,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:28:13
[2026-10-28 17:28:14,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:28:14,614.614 INFO    ] Initializing speech engine...
[2026-10-28 17:28:14,631.631 INFO    ] 2026-10-28 17:28:14
[2026-10-28 17:28:14,923.923 INFO    ] 2026-10-28 17:28:14
[2026-10-28 17:28:14,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:28:15,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:28:15,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:28:15,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:28:15,437.437 INFO    ] time= 28/10/2026 17:28:15
[2026-10-28 17:28:15,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:28:15,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:28:15,632.632 INFO    ] No existing commands found in stream
[2026-10-28 17:28:20,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:28:20,647.647 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-28 17:28:22,738.738 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:28:22,741.741 INFO    ] Checking for system updates...
[2026-10-28 17:28:22,777.777 INFO    ] 200
[2026-10-28 17:28:22,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:28:22,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:28:22,836.836 INFO    ] No update needed
[2026-10-28 17:28:22,839.839 INFO    ] Checking for camera pi updates...
[2026-10-28 17:28:22,872.872 INFO    ] 200
[2026-10-28 17:28:22,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:28:22,916.916 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:28:23,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:28:23,012.012 INFO    ] No camera update needed
[2026-10-28 17:28:23,015.015 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:28:23,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:28:23,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:28:23,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:28:25,068.068 INFO    ] ================================================
[2026-10-28 17:28:25,084.084 INFO    ] Launching Daemon at Wed Oct 28 17:28:25 IST 2026
[2026-10-28 17:28:25,095.095 INFO    ] ================================================
[2026-10-28 17:28:25,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:28:25
[2026-10-28 17:28:26,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:28:26,757.757 INFO    ] Initializing speech engine...
[2026-10-28 17:28:26,769.769 INFO    ] 2026-10-28 17:28:26
[2026-10-28 17:28:27,043.043 INFO    ] 2026-10-28 17:28:27
[2026-10-28 17:28:27,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:28:27,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:28:27,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:28:27,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:28:27,603.603 INFO    ] time= 28/10/2026 17:28:27
[2026-10-28 17:28:27,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:28:27,654.654 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:28:27,807.807 INFO    ] No existing commands found in stream
[2026-10-28 17:28:32,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:28:32,841.841 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-28 17:28:34,448.448 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:28:34,452.452 INFO    ] Checking for system updates...
[2026-10-28 17:28:34,488.488 INFO    ] 200
[2026-10-28 17:28:34,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:28:34,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:28:34,545.545 INFO    ] No update needed
[2026-10-28 17:28:34,547.547 INFO    ] Checking for camera pi updates...
[2026-10-28 17:28:34,586.586 INFO    ] 200
[2026-10-28 17:28:34,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:28:34,629.629 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:28:34,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:28:34,719.719 INFO    ] No camera update needed
[2026-10-28 17:28:34,721.721 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:28:34,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:28:34,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:28:34,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:28:36,774.774 INFO    ] ================================================
[2026-10-28 17:28:36,790.790 INFO    ] Launching Daemon at Wed Oct 28 17:28:36 IST 2026
[2026-10-28 17:28:36,801.801 INFO    ] ================================================
[2026-10-28 17:28:37,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:28:37
[2026-10-28 17:28:38,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:28:38,437.437 INFO    ] Initializing speech engine...
[2026-10-28 17:28:38,459.459 INFO    ] 2026-10-28 17:28:38
[2026-10-28 17:28:38,736.736 INFO    ] 2026-10-28 17:28:38
[2026-10-28 17:28:38,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:28:39,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:28:39,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:28:39,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:28:39,324.324 INFO    ] time= 28/10/2026 17:28:39
[2026-10-28 17:28:39,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:28:39,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:28:39,495.495 INFO    ] No existing commands found in stream
[2026-10-28 17:28:44,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:28:44,529.529 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-28 17:28:47,188.188 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:28:47,191.191 INFO    ] Checking for system updates...
[2026-10-28 17:28:47,228.228 INFO    ] 200
[2026-10-28 17:28:47,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:28:47,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:28:47,284.284 INFO    ] No update needed
[2026-10-28 17:28:47,286.286 INFO    ] Checking for camera pi updates...
[2026-10-28 17:28:47,319.319 INFO    ] 200
[2026-10-28 17:28:47,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:28:47,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:28:47,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:28:47,459.459 INFO    ] No camera update needed
[2026-10-28 17:28:47,461.461 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:28:47,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:28:47,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:28:47,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:28:49,514.514 INFO    ] ================================================
[2026-10-28 17:28:49,530.530 INFO    ] Launching Daemon at Wed Oct 28 17:28:49 IST 2026
[2026-10-28 17:28:49,541.541 INFO    ] ================================================
[2026-10-28 17:28:50,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:28:50
[2026-10-28 17:28:50,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:28:50,996.996 INFO    ] Initializing speech engine...
[2026-10-28 17:28:51,005.005 INFO    ] 2026-10-28 17:28:50
[2026-10-28 17:28:51,267.267 INFO    ] 2026-10-28 17:28:51
[2026-10-28 17:28:51,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:28:51,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:28:51,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:28:51,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:28:51,814.814 INFO    ] time= 28/10/2026 17:28:51
[2026-10-28 17:28:51,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:28:51,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:28:51,966.966 INFO    ] No existing commands found in stream
[2026-10-28 17:28:56,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:28:56,981.981 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-28 17:29:00,605.605 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:29:00,608.608 INFO    ] Checking for system updates...
[2026-10-28 17:29:00,644.644 INFO    ] 200
[2026-10-28 17:29:00,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:29:00,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:29:00,701.701 INFO    ] No update needed
[2026-10-28 17:29:00,703.703 INFO    ] Checking for camera pi updates...
[2026-10-28 17:29:00,741.741 INFO    ] 200
[2026-10-28 17:29:00,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:29:00,784.784 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:29:00,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:29:00,885.885 INFO    ] No camera update needed
[2026-10-28 17:29:00,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:29:00,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:29:00,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:29:00,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:29:02,944.944 INFO    ] ================================================
[2026-10-28 17:29:02,969.969 INFO    ] Launching Daemon at Wed Oct 28 17:29:02 IST 2026
[2026-10-28 17:29:02,984.984 INFO    ] ================================================
[2026-10-28 17:29:03,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:29:03
[2026-10-28 17:29:04,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:29:04,479.479 INFO    ] Initializing speech engine...
[2026-10-28 17:29:04,494.494 INFO    ] 2026-10-28 17:29:04
[2026-10-28 17:29:04,750.750 INFO    ] 2026-10-28 17:29:04
[2026-10-28 17:29:04,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:29:05,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:29:05,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:29:05,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:29:05,310.310 INFO    ] time= 28/10/2026 17:29:05
[2026-10-28 17:29:05,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:29:05,356.356 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:29:05,497.497 INFO    ] No existing commands found in stream
[2026-10-28 17:29:10,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:29:10,528.528 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 17:29:15,105.105 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:29:15,108.108 INFO    ] Checking for system updates...
[2026-10-28 17:29:15,144.144 INFO    ] 200
[2026-10-28 17:29:15,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:29:15,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:29:15,202.202 INFO    ] No update needed
[2026-10-28 17:29:15,205.205 INFO    ] Checking for camera pi updates...
[2026-10-28 17:29:15,239.239 INFO    ] 200
[2026-10-28 17:29:15,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:29:15,282.282 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:29:15,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:29:15,365.365 INFO    ] No camera update needed
[2026-10-28 17:29:15,367.367 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:29:15,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:29:15,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:29:15,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:29:17,422.422 INFO    ] ================================================
[2026-10-28 17:29:17,438.438 INFO    ] Launching Daemon at Wed Oct 28 17:29:17 IST 2026
[2026-10-28 17:29:17,449.449 INFO    ] ================================================
[2026-10-28 17:29:18,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:29:18
[2026-10-28 17:29:18,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:29:18,862.862 INFO    ] Initializing speech engine...
[2026-10-28 17:29:18,871.871 INFO    ] 2026-10-28 17:29:18
[2026-10-28 17:29:19,116.116 INFO    ] 2026-10-28 17:29:19
[2026-10-28 17:29:19,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:29:19,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:29:19,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:29:19,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:29:19,668.668 INFO    ] time= 28/10/2026 17:29:19
[2026-10-28 17:29:19,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:29:19,691.691 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:29:19,822.822 INFO    ] No existing commands found in stream
[2026-10-28 17:29:24,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:29:24,844.844 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 17:29:26,390.390 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:29:26,392.392 INFO    ] Checking for system updates...
[2026-10-28 17:29:26,428.428 INFO    ] 200
[2026-10-28 17:29:26,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:29:26,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:29:26,486.486 INFO    ] No update needed
[2026-10-28 17:29:26,488.488 INFO    ] Checking for camera pi updates...
[2026-10-28 17:29:26,526.526 INFO    ] 200
[2026-10-28 17:29:26,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:29:26,569.569 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:29:26,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:29:26,652.652 INFO    ] No camera update needed
[2026-10-28 17:29:26,654.654 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:29:26,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:29:26,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:29:26,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:29:28,706.706 INFO    ] ================================================
[2026-10-28 17:29:28,720.720 INFO    ] Launching Daemon at Wed Oct 28 17:29:28 IST 2026
[2026-10-28 17:29:28,731.731 INFO    ] ================================================
[2026-10-28 17:29:29,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:29:29
[2026-10-28 17:29:29,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:29:30,215.215 INFO    ] Initializing speech engine...
[2026-10-28 17:29:30,223.223 INFO    ] 2026-10-28 17:29:30
[2026-10-28 17:29:30,505.505 INFO    ] 2026-10-28 17:29:30
[2026-10-28 17:29:30,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:29:30,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:29:30,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:29:31,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:29:31,225.225 INFO    ] time= 28/10/2026 17:29:31
[2026-10-28 17:29:31,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:29:31,325.325 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:29:31,526.526 INFO    ] No existing commands found in stream
[2026-10-28 17:29:36,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:29:36,540.540 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-28 17:29:40,047.047 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:29:40,050.050 INFO    ] Checking for system updates...
[2026-10-28 17:29:40,087.087 INFO    ] 200
[2026-10-28 17:29:40,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:29:40,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:29:40,154.154 INFO    ] No update needed
[2026-10-28 17:29:40,156.156 INFO    ] Checking for camera pi updates...
[2026-10-28 17:29:40,190.190 INFO    ] 200
[2026-10-28 17:29:40,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:29:40,233.233 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:29:40,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:29:40,328.328 INFO    ] No camera update needed
[2026-10-28 17:29:40,331.331 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:29:40,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:29:40,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:29:40,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:29:42,384.384 INFO    ] ================================================
[2026-10-28 17:29:42,399.399 INFO    ] Launching Daemon at Wed Oct 28 17:29:42 IST 2026
[2026-10-28 17:29:42,410.410 INFO    ] ================================================
[2026-10-28 17:29:42,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:29:42
[2026-10-28 17:29:43,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:29:43,822.822 INFO    ] Initializing speech engine...
[2026-10-28 17:29:43,842.842 INFO    ] 2026-10-28 17:29:43
[2026-10-28 17:29:44,093.093 INFO    ] 2026-10-28 17:29:44
[2026-10-28 17:29:44,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:29:44,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:29:44,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:29:44,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:29:44,665.665 INFO    ] time= 28/10/2026 17:29:44
[2026-10-28 17:29:44,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:29:44,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:29:44,822.822 INFO    ] No existing commands found in stream
[2026-10-28 17:29:49,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:29:49,838.838 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 17:29:50,630.630 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:29:50,633.633 INFO    ] Checking for system updates...
[2026-10-28 17:29:50,669.669 INFO    ] 200
[2026-10-28 17:29:50,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:29:50,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:29:50,726.726 INFO    ] No update needed
[2026-10-28 17:29:50,728.728 INFO    ] Checking for camera pi updates...
[2026-10-28 17:29:50,766.766 INFO    ] 200
[2026-10-28 17:29:50,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:29:50,814.814 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:29:50,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:29:50,905.905 INFO    ] No camera update needed
[2026-10-28 17:29:50,907.907 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:29:50,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:29:50,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:29:50,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:29:52,959.959 INFO    ] ================================================
[2026-10-28 17:29:52,974.974 INFO    ] Launching Daemon at Wed Oct 28 17:29:52 IST 2026
[2026-10-28 17:29:52,985.985 INFO    ] ================================================
[2026-10-28 17:29:53,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:29:53
[2026-10-28 17:29:54,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:29:54,432.432 INFO    ] Initializing speech engine...
[2026-10-28 17:29:54,442.442 INFO    ] 2026-10-28 17:29:54
[2026-10-28 17:29:54,704.704 INFO    ] 2026-10-28 17:29:54
[2026-10-28 17:29:54,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:29:55,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:29:55,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:29:55,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:29:55,260.260 INFO    ] time= 28/10/2026 17:29:55
[2026-10-28 17:29:55,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:29:55,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:29:55,403.403 INFO    ] No existing commands found in stream
[2026-10-28 17:30:00,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:30:00,436.436 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-28 17:30:10,326.326 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:30:10,329.329 INFO    ] Checking for system updates...
[2026-10-28 17:30:10,366.366 INFO    ] 200
[2026-10-28 17:30:10,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:30:10,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:30:10,425.425 INFO    ] No update needed
[2026-10-28 17:30:10,427.427 INFO    ] Checking for camera pi updates...
[2026-10-28 17:30:10,465.465 INFO    ] 200
[2026-10-28 17:30:10,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:30:10,517.517 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:30:10,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:30:10,600.600 INFO    ] No camera update needed
[2026-10-28 17:30:10,602.602 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:30:10,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:30:10,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:30:10,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:30:12,659.659 INFO    ] ================================================
[2026-10-28 17:30:12,674.674 INFO    ] Launching Daemon at Wed Oct 28 17:30:12 IST 2026
[2026-10-28 17:30:12,685.685 INFO    ] ================================================
[2026-10-28 17:30:13,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:30:13
[2026-10-28 17:30:13,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:30:14,148.148 INFO    ] Initializing speech engine...
[2026-10-28 17:30:14,168.168 INFO    ] 2026-10-28 17:30:14
[2026-10-28 17:30:14,437.437 INFO    ] 2026-10-28 17:30:14
[2026-10-28 17:30:14,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:30:14,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:30:14,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:30:14,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:30:15,051.051 INFO    ] time= 28/10/2026 17:30:14
[2026-10-28 17:30:15,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:30:15,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:30:15,208.208 INFO    ] No existing commands found in stream
[2026-10-28 17:30:20,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:30:20,242.242 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-28 17:30:24,166.166 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:30:24,168.168 INFO    ] Checking for system updates...
[2026-10-28 17:30:24,207.207 INFO    ] 200
[2026-10-28 17:30:24,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:30:24,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:30:24,264.264 INFO    ] No update needed
[2026-10-28 17:30:24,266.266 INFO    ] Checking for camera pi updates...
[2026-10-28 17:30:24,302.302 INFO    ] 200
[2026-10-28 17:30:24,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:30:24,346.346 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:30:24,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:30:24,514.514 INFO    ] No camera update needed
[2026-10-28 17:30:24,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:30:24,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:30:24,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:30:24,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:30:26,569.569 INFO    ] ================================================
[2026-10-28 17:30:26,585.585 INFO    ] Launching Daemon at Wed Oct 28 17:30:26 IST 2026
[2026-10-28 17:30:26,595.595 INFO    ] ================================================
[2026-10-28 17:30:27,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:30:27
[2026-10-28 17:30:27,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:30:28,151.151 INFO    ] Initializing speech engine...
[2026-10-28 17:30:28,164.164 INFO    ] 2026-10-28 17:30:28
[2026-10-28 17:30:28,468.468 INFO    ] 2026-10-28 17:30:28
[2026-10-28 17:30:28,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:30:28,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:30:28,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:30:29,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:30:29,187.187 INFO    ] time= 28/10/2026 17:30:29
[2026-10-28 17:30:29,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:30:29,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:30:29,407.407 INFO    ] No existing commands found in stream
[2026-10-28 17:30:34,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:30:34,426.426 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-28 17:30:37,344.344 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:30:37,347.347 INFO    ] Checking for system updates...
[2026-10-28 17:30:37,387.387 INFO    ] 200
[2026-10-28 17:30:37,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:30:37,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:30:37,449.449 INFO    ] No update needed
[2026-10-28 17:30:37,452.452 INFO    ] Checking for camera pi updates...
[2026-10-28 17:30:37,488.488 INFO    ] 200
[2026-10-28 17:30:37,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:30:37,531.531 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:30:37,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:30:37,614.614 INFO    ] No camera update needed
[2026-10-28 17:30:37,616.616 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:30:37,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:30:37,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:30:37,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:30:39,671.671 INFO    ] ================================================
[2026-10-28 17:30:39,686.686 INFO    ] Launching Daemon at Wed Oct 28 17:30:39 IST 2026
[2026-10-28 17:30:39,697.697 INFO    ] ================================================
[2026-10-28 17:30:40,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:30:40
[2026-10-28 17:30:40,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:30:41,132.132 INFO    ] Initializing speech engine...
[2026-10-28 17:30:41,141.141 INFO    ] 2026-10-28 17:30:41
[2026-10-28 17:30:41,433.433 INFO    ] 2026-10-28 17:30:41
[2026-10-28 17:30:41,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:30:41,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:30:41,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:30:42,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:30:42,054.054 INFO    ] time= 28/10/2026 17:30:42
[2026-10-28 17:30:42,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:30:42,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:30:42,223.223 INFO    ] No existing commands found in stream
[2026-10-28 17:30:47,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:30:47,242.242 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 17:30:51,577.577 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:30:51,579.579 INFO    ] Checking for system updates...
[2026-10-28 17:30:51,618.618 INFO    ] 200
[2026-10-28 17:30:51,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:30:51,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:30:51,677.677 INFO    ] No update needed
[2026-10-28 17:30:51,679.679 INFO    ] Checking for camera pi updates...
[2026-10-28 17:30:51,713.713 INFO    ] 200
[2026-10-28 17:30:51,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:30:51,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:30:51,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:30:51,845.845 INFO    ] No camera update needed
[2026-10-28 17:30:51,848.848 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:30:51,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:30:51,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:30:51,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:30:53,900.900 INFO    ] ================================================
[2026-10-28 17:30:53,916.916 INFO    ] Launching Daemon at Wed Oct 28 17:30:53 IST 2026
[2026-10-28 17:30:53,927.927 INFO    ] ================================================
[2026-10-28 17:30:54,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:30:54
[2026-10-28 17:30:55,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:30:55,352.352 INFO    ] Initializing speech engine...
[2026-10-28 17:30:55,377.377 INFO    ] 2026-10-28 17:30:55
[2026-10-28 17:30:55,644.644 INFO    ] 2026-10-28 17:30:55
[2026-10-28 17:30:55,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:30:55,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:30:55,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:30:56,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:30:56,189.189 INFO    ] time= 28/10/2026 17:30:56
[2026-10-28 17:30:56,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:30:56,270.270 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:30:56,414.414 INFO    ] No existing commands found in stream
[2026-10-28 17:31:01,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:31:01,441.441 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 17:31:04,284.284 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:31:04,286.286 INFO    ] Checking for system updates...
[2026-10-28 17:31:04,322.322 INFO    ] 200
[2026-10-28 17:31:04,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:31:04,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:31:04,384.384 INFO    ] No update needed
[2026-10-28 17:31:04,386.386 INFO    ] Checking for camera pi updates...
[2026-10-28 17:31:04,419.419 INFO    ] 200
[2026-10-28 17:31:04,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:31:04,469.469 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:31:04,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:31:04,552.552 INFO    ] No camera update needed
[2026-10-28 17:31:04,554.554 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:31:04,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:31:04,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:31:04,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:31:06,608.608 INFO    ] ================================================
[2026-10-28 17:31:06,625.625 INFO    ] Launching Daemon at Wed Oct 28 17:31:06 IST 2026
[2026-10-28 17:31:06,637.637 INFO    ] ================================================
[2026-10-28 17:31:07,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:31:07
[2026-10-28 17:31:07,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:31:08,210.210 INFO    ] Initializing speech engine...
[2026-10-28 17:31:08,227.227 INFO    ] 2026-10-28 17:31:08
[2026-10-28 17:31:08,509.509 INFO    ] 2026-10-28 17:31:08
[2026-10-28 17:31:08,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:31:08,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:31:08,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:31:09,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:31:09,109.109 INFO    ] time= 28/10/2026 17:31:09
[2026-10-28 17:31:09,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:31:09,133.133 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:31:09,274.274 INFO    ] No existing commands found in stream
[2026-10-28 17:31:14,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:31:14,291.291 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 17:31:18,112.112 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:31:18,115.115 INFO    ] Checking for system updates...
[2026-10-28 17:31:18,150.150 INFO    ] 200
[2026-10-28 17:31:18,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:31:18,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:31:18,208.208 INFO    ] No update needed
[2026-10-28 17:31:18,210.210 INFO    ] Checking for camera pi updates...
[2026-10-28 17:31:18,243.243 INFO    ] 200
[2026-10-28 17:31:18,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:31:18,286.286 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:31:18,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:31:18,369.369 INFO    ] No camera update needed
[2026-10-28 17:31:18,372.372 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:31:18,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:31:18,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:31:18,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:31:20,426.426 INFO    ] ================================================
[2026-10-28 17:31:20,442.442 INFO    ] Launching Daemon at Wed Oct 28 17:31:20 IST 2026
[2026-10-28 17:31:20,453.453 INFO    ] ================================================
[2026-10-28 17:31:21,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:31:21
[2026-10-28 17:31:21,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:31:22,010.010 INFO    ] Initializing speech engine...
[2026-10-28 17:31:22,024.024 INFO    ] 2026-10-28 17:31:22
[2026-10-28 17:31:22,299.299 INFO    ] 2026-10-28 17:31:22
[2026-10-28 17:31:22,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:31:22,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:31:22,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:31:22,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:31:23,043.043 INFO    ] time= 28/10/2026 17:31:22
[2026-10-28 17:31:23,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:31:23,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:31:23,260.260 INFO    ] No existing commands found in stream
[2026-10-28 17:31:28,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:31:28,276.276 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-28 17:31:32,906.906 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:31:32,908.908 INFO    ] Checking for system updates...
[2026-10-28 17:31:32,945.945 INFO    ] 200
[2026-10-28 17:31:32,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:31:33,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:31:33,006.006 INFO    ] No update needed
[2026-10-28 17:31:33,008.008 INFO    ] Checking for camera pi updates...
[2026-10-28 17:31:33,045.045 INFO    ] 200
[2026-10-28 17:31:33,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:31:33,093.093 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:31:33,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:31:33,176.176 INFO    ] No camera update needed
[2026-10-28 17:31:33,179.179 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:31:33,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:31:33,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:31:33,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:31:35,234.234 INFO    ] ================================================
[2026-10-28 17:31:35,250.250 INFO    ] Launching Daemon at Wed Oct 28 17:31:35 IST 2026
[2026-10-28 17:31:35,261.261 INFO    ] ================================================
[2026-10-28 17:31:35,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:31:35
[2026-10-28 17:31:36,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:31:36,689.689 INFO    ] Initializing speech engine...
[2026-10-28 17:31:36,698.698 INFO    ] 2026-10-28 17:31:36
[2026-10-28 17:31:36,956.956 INFO    ] 2026-10-28 17:31:36
[2026-10-28 17:31:37,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:31:37,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:31:37,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:31:37,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:31:37,514.514 INFO    ] time= 28/10/2026 17:31:37
[2026-10-28 17:31:37,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:31:37,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:31:37,682.682 INFO    ] No existing commands found in stream
[2026-10-28 17:31:42,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:31:42,709.709 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-28 17:31:45,923.923 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:31:45,926.926 INFO    ] Checking for system updates...
[2026-10-28 17:31:45,965.965 INFO    ] 200
[2026-10-28 17:31:45,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:31:46,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:31:46,028.028 INFO    ] No update needed
[2026-10-28 17:31:46,030.030 INFO    ] Checking for camera pi updates...
[2026-10-28 17:31:46,066.066 INFO    ] 200
[2026-10-28 17:31:46,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:31:46,116.116 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:31:46,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:31:46,202.202 INFO    ] No camera update needed
[2026-10-28 17:31:46,205.205 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:31:46,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:31:46,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:31:46,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:31:48,261.261 INFO    ] ================================================
[2026-10-28 17:31:48,276.276 INFO    ] Launching Daemon at Wed Oct 28 17:31:48 IST 2026
[2026-10-28 17:31:48,287.287 INFO    ] ================================================
[2026-10-28 17:31:48,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:31:48
[2026-10-28 17:31:49,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:31:49,724.724 INFO    ] Initializing speech engine...
[2026-10-28 17:31:49,730.730 INFO    ] 2026-10-28 17:31:49
[2026-10-28 17:31:50,016.016 INFO    ] 2026-10-28 17:31:49
[2026-10-28 17:31:50,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:31:50,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:31:50,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:31:50,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:31:50,624.624 INFO    ] time= 28/10/2026 17:31:50
[2026-10-28 17:31:50,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:31:50,650.650 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:31:50,792.792 INFO    ] No existing commands found in stream
[2026-10-28 17:31:55,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:31:55,808.808 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-28 17:31:57,064.064 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:31:57,067.067 INFO    ] Checking for system updates...
[2026-10-28 17:31:57,102.102 INFO    ] 200
[2026-10-28 17:31:57,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:31:57,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:31:57,159.159 INFO    ] No update needed
[2026-10-28 17:31:57,161.161 INFO    ] Checking for camera pi updates...
[2026-10-28 17:31:57,196.196 INFO    ] 200
[2026-10-28 17:31:57,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:31:57,242.242 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:31:57,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:31:57,328.328 INFO    ] No camera update needed
[2026-10-28 17:31:57,331.331 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:31:57,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:31:57,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:31:57,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:31:59,384.384 INFO    ] ================================================
[2026-10-28 17:31:59,400.400 INFO    ] Launching Daemon at Wed Oct 28 17:31:59 IST 2026
[2026-10-28 17:31:59,411.411 INFO    ] ================================================
[2026-10-28 17:31:59,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:31:59
[2026-10-28 17:32:00,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:32:00,812.812 INFO    ] Initializing speech engine...
[2026-10-28 17:32:00,835.835 INFO    ] 2026-10-28 17:32:00
[2026-10-28 17:32:01,089.089 INFO    ] 2026-10-28 17:32:01
[2026-10-28 17:32:01,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:32:01,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:32:01,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:32:01,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:32:01,545.545 INFO    ] time= 28/10/2026 17:32:01
[2026-10-28 17:32:01,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:32:01,575.575 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:32:01,662.662 INFO    ] No existing commands found in stream
[2026-10-28 17:32:06,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:32:06,676.676 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-28 17:32:07,783.783 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:32:07,785.785 INFO    ] Checking for system updates...
[2026-10-28 17:32:07,820.820 INFO    ] 200
[2026-10-28 17:32:07,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:32:07,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:32:07,883.883 INFO    ] No update needed
[2026-10-28 17:32:07,885.885 INFO    ] Checking for camera pi updates...
[2026-10-28 17:32:07,919.919 INFO    ] 200
[2026-10-28 17:32:07,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:32:07,964.964 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:32:08,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:32:08,051.051 INFO    ] No camera update needed
[2026-10-28 17:32:08,053.053 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:32:08,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:32:08,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:32:08,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:32:10,105.105 INFO    ] ================================================
[2026-10-28 17:32:10,121.121 INFO    ] Launching Daemon at Wed Oct 28 17:32:10 IST 2026
[2026-10-28 17:32:10,132.132 INFO    ] ================================================
[2026-10-28 17:32:10,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:32:10
[2026-10-28 17:32:11,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:32:11,722.722 INFO    ] Initializing speech engine...
[2026-10-28 17:32:11,729.729 INFO    ] 2026-10-28 17:32:11
[2026-10-28 17:32:12,011.011 INFO    ] 2026-10-28 17:32:11
[2026-10-28 17:32:12,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:32:12,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:32:12,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:32:12,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:32:12,560.560 INFO    ] time= 28/10/2026 17:32:12
[2026-10-28 17:32:12,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:32:12,598.598 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:32:12,725.725 INFO    ] No existing commands found in stream
[2026-10-28 17:32:17,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:32:17,759.759 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-28 17:32:18,529.529 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:32:18,532.532 INFO    ] Checking for system updates...
[2026-10-28 17:32:18,568.568 INFO    ] 200
[2026-10-28 17:32:18,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:32:18,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:32:18,629.629 INFO    ] No update needed
[2026-10-28 17:32:18,631.631 INFO    ] Checking for camera pi updates...
[2026-10-28 17:32:18,665.665 INFO    ] 200
[2026-10-28 17:32:18,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:32:18,713.713 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:32:18,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:32:18,801.801 INFO    ] No camera update needed
[2026-10-28 17:32:18,803.803 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:32:18,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:32:18,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:32:18,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:32:20,856.856 INFO    ] ================================================
[2026-10-28 17:32:20,871.871 INFO    ] Launching Daemon at Wed Oct 28 17:32:20 IST 2026
[2026-10-28 17:32:20,882.882 INFO    ] ================================================
[2026-10-28 17:32:21,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:32:21
[2026-10-28 17:32:22,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:32:22,433.433 INFO    ] Initializing speech engine...
[2026-10-28 17:32:22,439.439 INFO    ] 2026-10-28 17:32:22
[2026-10-28 17:32:22,708.708 INFO    ] 2026-10-28 17:32:22
[2026-10-28 17:32:22,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:32:22,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:32:22,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:32:23,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:32:23,260.260 INFO    ] time= 28/10/2026 17:32:23
[2026-10-28 17:32:23,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:32:23,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:32:23,483.483 INFO    ] No existing commands found in stream
[2026-10-28 17:32:28,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:32:28,521.521 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-28 17:32:31,351.351 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:32:31,354.354 INFO    ] Checking for system updates...
[2026-10-28 17:32:31,390.390 INFO    ] 200
[2026-10-28 17:32:31,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:32:31,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:32:31,451.451 INFO    ] No update needed
[2026-10-28 17:32:31,454.454 INFO    ] Checking for camera pi updates...
[2026-10-28 17:32:31,488.488 INFO    ] 200
[2026-10-28 17:32:31,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:32:31,534.534 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:32:31,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:32:31,758.758 INFO    ] No camera update needed
[2026-10-28 17:32:31,761.761 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:32:31,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:32:31,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:32:31,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:32:33,824.824 INFO    ] ================================================
[2026-10-28 17:32:33,839.839 INFO    ] Launching Daemon at Wed Oct 28 17:32:33 IST 2026
[2026-10-28 17:32:33,850.850 INFO    ] ================================================
[2026-10-28 17:32:34,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:32:34
[2026-10-28 17:32:35,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:32:35,440.440 INFO    ] Initializing speech engine...
[2026-10-28 17:32:35,447.447 INFO    ] 2026-10-28 17:32:35
[2026-10-28 17:32:35,706.706 INFO    ] 2026-10-28 17:32:35
[2026-10-28 17:32:35,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:32:36,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:32:36,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:32:36,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:32:36,274.274 INFO    ] time= 28/10/2026 17:32:36
[2026-10-28 17:32:36,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:32:36,308.308 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:32:36,438.438 INFO    ] No existing commands found in stream
[2026-10-28 17:32:41,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:32:41,471.471 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-28 17:32:42,664.664 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:32:42,666.666 INFO    ] Checking for system updates...
[2026-10-28 17:32:42,701.701 INFO    ] 200
[2026-10-28 17:32:42,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:32:42,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:32:42,766.766 INFO    ] No update needed
[2026-10-28 17:32:42,768.768 INFO    ] Checking for camera pi updates...
[2026-10-28 17:32:42,807.807 INFO    ] 200
[2026-10-28 17:32:42,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:32:42,851.851 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:32:42,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:32:42,935.935 INFO    ] No camera update needed
[2026-10-28 17:32:42,938.938 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:32:42,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:32:42,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:32:42,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:32:44,993.993 INFO    ] ================================================
[2026-10-28 17:32:45,009.009 INFO    ] Launching Daemon at Wed Oct 28 17:32:45 IST 2026
[2026-10-28 17:32:45,021.021 INFO    ] ================================================
[2026-10-28 17:32:45,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:32:45
[2026-10-28 17:32:46,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:32:46,416.416 INFO    ] Initializing speech engine...
[2026-10-28 17:32:46,429.429 INFO    ] 2026-10-28 17:32:46
[2026-10-28 17:32:46,694.694 INFO    ] 2026-10-28 17:32:46
[2026-10-28 17:32:46,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:32:46,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:32:46,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:32:47,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:32:47,261.261 INFO    ] time= 28/10/2026 17:32:47
[2026-10-28 17:32:47,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:32:47,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:32:47,419.419 INFO    ] No existing commands found in stream
[2026-10-28 17:32:52,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:32:52,445.445 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-28 17:32:56,806.806 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:32:56,809.809 INFO    ] Checking for system updates...
[2026-10-28 17:32:56,846.846 INFO    ] 200
[2026-10-28 17:32:56,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:32:56,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:32:56,903.903 INFO    ] No update needed
[2026-10-28 17:32:56,906.906 INFO    ] Checking for camera pi updates...
[2026-10-28 17:32:56,939.939 INFO    ] 200
[2026-10-28 17:32:56,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:32:56,982.982 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:32:57,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:32:57,059.059 INFO    ] No camera update needed
[2026-10-28 17:32:57,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:32:57,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:32:57,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:32:57,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:32:59,117.117 INFO    ] ================================================
[2026-10-28 17:32:59,133.133 INFO    ] Launching Daemon at Wed Oct 28 17:32:59 IST 2026
[2026-10-28 17:32:59,144.144 INFO    ] ================================================
[2026-10-28 17:32:59,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:32:59
[2026-10-28 17:33:00,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:33:00,548.548 INFO    ] Initializing speech engine...
[2026-10-28 17:33:00,572.572 INFO    ] 2026-10-28 17:33:00
[2026-10-28 17:33:00,840.840 INFO    ] 2026-10-28 17:33:00
[2026-10-28 17:33:00,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:33:01,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:33:01,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:33:01,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:33:01,444.444 INFO    ] time= 28/10/2026 17:33:01
[2026-10-28 17:33:01,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:33:01,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:33:01,611.611 INFO    ] No existing commands found in stream
[2026-10-28 17:33:06,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:33:06,635.635 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-28 17:33:09,807.807 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:33:09,809.809 INFO    ] Checking for system updates...
[2026-10-28 17:33:09,845.845 INFO    ] 200
[2026-10-28 17:33:09,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:33:09,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:33:09,908.908 INFO    ] No update needed
[2026-10-28 17:33:09,910.910 INFO    ] Checking for camera pi updates...
[2026-10-28 17:33:09,944.944 INFO    ] 200
[2026-10-28 17:33:09,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:33:09,990.990 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:33:10,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:33:10,072.072 INFO    ] No camera update needed
[2026-10-28 17:33:10,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:33:10,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:33:10,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:33:10,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:33:12,127.127 INFO    ] ================================================
[2026-10-28 17:33:12,142.142 INFO    ] Launching Daemon at Wed Oct 28 17:33:12 IST 2026
[2026-10-28 17:33:12,154.154 INFO    ] ================================================
[2026-10-28 17:33:12,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:33:12
[2026-10-28 17:33:13,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:33:13,619.619 INFO    ] Initializing speech engine...
[2026-10-28 17:33:13,624.624 INFO    ] 2026-10-28 17:33:13
[2026-10-28 17:33:13,887.887 INFO    ] 2026-10-28 17:33:13
[2026-10-28 17:33:13,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:33:14,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:33:14,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:33:14,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:33:14,478.478 INFO    ] time= 28/10/2026 17:33:14
[2026-10-28 17:33:14,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:33:14,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:33:14,685.685 INFO    ] No existing commands found in stream
[2026-10-28 17:33:19,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:33:19,710.710 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-28 17:33:21,633.633 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:33:21,636.636 INFO    ] Checking for system updates...
[2026-10-28 17:33:21,673.673 INFO    ] 200
[2026-10-28 17:33:21,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:33:21,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:33:21,730.730 INFO    ] No update needed
[2026-10-28 17:33:21,733.733 INFO    ] Checking for camera pi updates...
[2026-10-28 17:33:21,767.767 INFO    ] 200
[2026-10-28 17:33:21,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:33:21,810.810 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:33:21,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:33:21,910.910 INFO    ] No camera update needed
[2026-10-28 17:33:21,912.912 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:33:21,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:33:21,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:33:21,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:33:23,970.970 INFO    ] ================================================
[2026-10-28 17:33:23,985.985 INFO    ] Launching Daemon at Wed Oct 28 17:33:23 IST 2026
[2026-10-28 17:33:24,996.996 INFO    ] ================================================
[2026-10-28 17:33:24,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:33:24
[2026-10-28 17:33:25,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:33:25,450.450 INFO    ] Initializing speech engine...
[2026-10-28 17:33:25,458.458 INFO    ] 2026-10-28 17:33:25
[2026-10-28 17:33:25,713.713 INFO    ] 2026-10-28 17:33:25
[2026-10-28 17:33:25,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:33:26,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:33:26,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:33:26,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:33:26,264.264 INFO    ] time= 28/10/2026 17:33:26
[2026-10-28 17:33:26,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:33:26,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:33:26,426.426 INFO    ] No existing commands found in stream
[2026-10-28 17:33:31,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:33:31,458.458 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-28 17:33:32,694.694 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:33:32,697.697 INFO    ] Checking for system updates...
[2026-10-28 17:33:32,736.736 INFO    ] 200
[2026-10-28 17:33:32,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:33:32,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:33:32,807.807 INFO    ] No update needed
[2026-10-28 17:33:32,810.810 INFO    ] Checking for camera pi updates...
[2026-10-28 17:33:32,847.847 INFO    ] 200
[2026-10-28 17:33:32,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:33:32,893.893 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:33:32,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:33:32,978.978 INFO    ] No camera update needed
[2026-10-28 17:33:32,985.985 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:33:32,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:33:32,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:33:32,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:33:35,042.042 INFO    ] ================================================
[2026-10-28 17:33:35,057.057 INFO    ] Launching Daemon at Wed Oct 28 17:33:35 IST 2026
[2026-10-28 17:33:35,067.067 INFO    ] ================================================
[2026-10-28 17:33:35,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:33:35
[2026-10-28 17:33:36,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:33:36,471.471 INFO    ] Initializing speech engine...
[2026-10-28 17:33:36,486.486 INFO    ] 2026-10-28 17:33:36
[2026-10-28 17:33:36,738.738 INFO    ] 2026-10-28 17:33:36
[2026-10-28 17:33:36,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:33:37,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:33:37,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:33:37,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:33:37,365.365 INFO    ] time= 28/10/2026 17:33:37
[2026-10-28 17:33:37,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:33:37,393.393 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:33:37,537.537 INFO    ] No existing commands found in stream
[2026-10-28 17:33:42,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:33:42,556.556 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-28 17:33:46,407.407 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:33:46,410.410 INFO    ] Checking for system updates...
[2026-10-28 17:33:46,449.449 INFO    ] 200
[2026-10-28 17:33:46,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:33:46,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:33:46,512.512 INFO    ] No update needed
[2026-10-28 17:33:46,515.515 INFO    ] Checking for camera pi updates...
[2026-10-28 17:33:46,549.549 INFO    ] 200
[2026-10-28 17:33:46,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:33:46,592.592 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:33:46,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:33:46,675.675 INFO    ] No camera update needed
[2026-10-28 17:33:46,677.677 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:33:46,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:33:46,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:33:46,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:33:48,732.732 INFO    ] ================================================
[2026-10-28 17:33:48,747.747 INFO    ] Launching Daemon at Wed Oct 28 17:33:48 IST 2026
[2026-10-28 17:33:48,758.758 INFO    ] ================================================
[2026-10-28 17:33:49,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:33:49
[2026-10-28 17:33:49,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:33:50,187.187 INFO    ] Initializing speech engine...
[2026-10-28 17:33:50,203.203 INFO    ] 2026-10-28 17:33:50
[2026-10-28 17:33:50,454.454 INFO    ] 2026-10-28 17:33:50
[2026-10-28 17:33:50,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:33:50,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:33:50,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:33:50,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:33:51,009.009 INFO    ] time= 28/10/2026 17:33:50
[2026-10-28 17:33:51,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:33:51,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:33:51,165.165 INFO    ] No existing commands found in stream
[2026-10-28 17:33:56,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:33:56,195.195 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-28 17:33:56,928.928 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:33:56,931.931 INFO    ] Checking for system updates...
[2026-10-28 17:33:56,968.968 INFO    ] 200
[2026-10-28 17:33:56,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:33:57,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:33:57,027.027 INFO    ] No update needed
[2026-10-28 17:33:57,030.030 INFO    ] Checking for camera pi updates...
[2026-10-28 17:33:57,065.065 INFO    ] 200
[2026-10-28 17:33:57,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:33:57,117.117 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:33:57,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:33:57,228.228 INFO    ] No camera update needed
[2026-10-28 17:33:57,231.231 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:33:57,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:33:57,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:33:57,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:33:59,288.288 INFO    ] ================================================
[2026-10-28 17:33:59,303.303 INFO    ] Launching Daemon at Wed Oct 28 17:33:59 IST 2026
[2026-10-28 17:33:59,314.314 INFO    ] ================================================
[2026-10-28 17:33:59,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:33:59
[2026-10-28 17:34:00,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:34:00,938.938 INFO    ] Initializing speech engine...
[2026-10-28 17:34:00,952.952 INFO    ] 2026-10-28 17:34:00
[2026-10-28 17:34:01,317.317 INFO    ] 2026-10-28 17:34:01
[2026-10-28 17:34:01,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:34:01,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:34:01,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:34:01,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:34:01,966.966 INFO    ] time= 28/10/2026 17:34:01
[2026-10-28 17:34:02,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:34:02,022.022 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:34:02,110.110 INFO    ] No existing commands found in stream
[2026-10-28 17:34:07,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:34:07,124.124 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 17:34:10,809.809 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:34:10,812.812 INFO    ] Checking for system updates...
[2026-10-28 17:34:10,854.854 INFO    ] 200
[2026-10-28 17:34:10,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:34:10,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:34:10,922.922 INFO    ] No update needed
[2026-10-28 17:34:10,925.925 INFO    ] Checking for camera pi updates...
[2026-10-28 17:34:10,959.959 INFO    ] 200
[2026-10-28 17:34:10,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:34:11,005.005 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:34:11,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:34:11,092.092 INFO    ] No camera update needed
[2026-10-28 17:34:11,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:34:11,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:34:11,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:34:11,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:34:13,152.152 INFO    ] ================================================
[2026-10-28 17:34:13,167.167 INFO    ] Launching Daemon at Wed Oct 28 17:34:13 IST 2026
[2026-10-28 17:34:13,179.179 INFO    ] ================================================
[2026-10-28 17:34:13,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:34:13
[2026-10-28 17:34:14,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:34:14,636.636 INFO    ] Initializing speech engine...
[2026-10-28 17:34:14,645.645 INFO    ] 2026-10-28 17:34:14
[2026-10-28 17:34:14,905.905 INFO    ] 2026-10-28 17:34:14
[2026-10-28 17:34:14,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:34:15,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:34:15,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:34:15,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:34:15,446.446 INFO    ] time= 28/10/2026 17:34:15
[2026-10-28 17:34:15,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:34:15,470.470 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:34:15,585.585 INFO    ] No existing commands found in stream
[2026-10-28 17:34:20,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:34:20,612.612 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 17:34:23,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:34:23,346.346 INFO    ] Checking for system updates...
[2026-10-28 17:34:23,382.382 INFO    ] 200
[2026-10-28 17:34:23,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:34:23,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:34:23,448.448 INFO    ] No update needed
[2026-10-28 17:34:23,450.450 INFO    ] Checking for camera pi updates...
[2026-10-28 17:34:23,484.484 INFO    ] 200
[2026-10-28 17:34:23,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:34:23,527.527 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:34:23,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:34:23,610.610 INFO    ] No camera update needed
[2026-10-28 17:34:23,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:34:23,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:34:23,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:34:23,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:34:25,666.666 INFO    ] ================================================
[2026-10-28 17:34:25,681.681 INFO    ] Launching Daemon at Wed Oct 28 17:34:25 IST 2026
[2026-10-28 17:34:25,692.692 INFO    ] ================================================
[2026-10-28 17:34:26,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:34:26
[2026-10-28 17:34:27,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:34:27,321.321 INFO    ] Initializing speech engine...
[2026-10-28 17:34:27,335.335 INFO    ] 2026-10-28 17:34:27
[2026-10-28 17:34:27,648.648 INFO    ] 2026-10-28 17:34:27
[2026-10-28 17:34:27,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:34:27,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:34:28,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:34:28,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:34:28,203.203 INFO    ] time= 28/10/2026 17:34:28
[2026-10-28 17:34:28,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:34:28,301.301 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:34:28,407.407 INFO    ] No existing commands found in stream
[2026-10-28 17:34:33,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:34:33,436.436 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-28 17:34:37,060.060 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:34:37,064.064 INFO    ] Checking for system updates...
[2026-10-28 17:34:37,104.104 INFO    ] 200
[2026-10-28 17:34:37,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:34:37,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:34:37,163.163 INFO    ] No update needed
[2026-10-28 17:34:37,166.166 INFO    ] Checking for camera pi updates...
[2026-10-28 17:34:37,200.200 INFO    ] 200
[2026-10-28 17:34:37,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:34:37,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:34:37,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:34:37,417.417 INFO    ] No camera update needed
[2026-10-28 17:34:37,420.420 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:34:37,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:34:37,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:34:37,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:34:39,477.477 INFO    ] ================================================
[2026-10-28 17:34:39,493.493 INFO    ] Launching Daemon at Wed Oct 28 17:34:39 IST 2026
[2026-10-28 17:34:39,504.504 INFO    ] ================================================
[2026-10-28 17:34:40,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:34:40
[2026-10-28 17:34:40,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:34:40,913.913 INFO    ] Initializing speech engine...
[2026-10-28 17:34:40,927.927 INFO    ] 2026-10-28 17:34:40
[2026-10-28 17:34:41,193.193 INFO    ] 2026-10-28 17:34:41
[2026-10-28 17:34:41,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:34:41,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:34:41,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:34:41,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:34:41,762.762 INFO    ] time= 28/10/2026 17:34:41
[2026-10-28 17:34:41,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:34:41,793.793 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:34:41,920.920 INFO    ] No existing commands found in stream
[2026-10-28 17:34:46,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:34:46,938.938 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 17:34:48,143.143 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:34:48,145.145 INFO    ] Checking for system updates...
[2026-10-28 17:34:48,182.182 INFO    ] 200
[2026-10-28 17:34:48,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:34:48,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:34:48,240.240 INFO    ] No update needed
[2026-10-28 17:34:48,243.243 INFO    ] Checking for camera pi updates...
[2026-10-28 17:34:48,278.278 INFO    ] 200
[2026-10-28 17:34:48,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:34:48,322.322 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:34:48,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:34:48,430.430 INFO    ] No camera update needed
[2026-10-28 17:34:48,433.433 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:34:48,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:34:48,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:34:48,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:34:50,490.490 INFO    ] ================================================
[2026-10-28 17:34:50,506.506 INFO    ] Launching Daemon at Wed Oct 28 17:34:50 IST 2026
[2026-10-28 17:34:50,517.517 INFO    ] ================================================
[2026-10-28 17:34:51,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:34:51
[2026-10-28 17:34:51,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:34:51,917.917 INFO    ] Initializing speech engine...
[2026-10-28 17:34:51,941.941 INFO    ] 2026-10-28 17:34:51
[2026-10-28 17:34:52,199.199 INFO    ] 2026-10-28 17:34:52
[2026-10-28 17:34:52,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:34:52,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:34:52,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:34:52,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:34:52,766.766 INFO    ] time= 28/10/2026 17:34:52
[2026-10-28 17:34:52,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:34:52,790.790 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:34:52,926.926 INFO    ] No existing commands found in stream
[2026-10-28 17:34:57,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:34:57,947.947 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 17:34:59,933.933 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:34:59,936.936 INFO    ] Checking for system updates...
[2026-10-28 17:34:59,975.975 INFO    ] 200
[2026-10-28 17:34:59,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:35:00,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:35:00,032.032 INFO    ] No update needed
[2026-10-28 17:35:00,035.035 INFO    ] Checking for camera pi updates...
[2026-10-28 17:35:00,072.072 INFO    ] 200
[2026-10-28 17:35:00,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:35:00,114.114 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:35:00,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:35:00,200.200 INFO    ] No camera update needed
[2026-10-28 17:35:00,202.202 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:35:00,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:35:00,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:35:00,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:35:02,296.296 INFO    ] ================================================
[2026-10-28 17:35:02,313.313 INFO    ] Launching Daemon at Wed Oct 28 17:35:02 IST 2026
[2026-10-28 17:35:02,329.329 INFO    ] ================================================
[2026-10-28 17:35:02,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:35:02
[2026-10-28 17:35:03,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:35:03,900.900 INFO    ] Initializing speech engine...
[2026-10-28 17:35:03,911.911 INFO    ] 2026-10-28 17:35:03
[2026-10-28 17:35:04,193.193 INFO    ] 2026-10-28 17:35:04
[2026-10-28 17:35:04,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:35:04,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:35:04,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:35:04,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:35:04,761.761 INFO    ] time= 28/10/2026 17:35:04
[2026-10-28 17:35:04,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:35:04,798.798 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:35:04,958.958 INFO    ] No existing commands found in stream
[2026-10-28 17:35:09,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:35:09,994.994 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 17:35:11,700.700 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:35:11,703.703 INFO    ] Checking for system updates...
[2026-10-28 17:35:11,741.741 INFO    ] 200
[2026-10-28 17:35:11,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:35:11,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:35:11,808.808 INFO    ] No update needed
[2026-10-28 17:35:11,811.811 INFO    ] Checking for camera pi updates...
[2026-10-28 17:35:11,846.846 INFO    ] 200
[2026-10-28 17:35:11,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:35:11,890.890 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:35:11,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:35:11,999.999 INFO    ] No camera update needed
[2026-10-28 17:35:12,002.002 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:35:12,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:35:12,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:35:12,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:35:14,062.062 INFO    ] ================================================
[2026-10-28 17:35:14,078.078 INFO    ] Launching Daemon at Wed Oct 28 17:35:14 IST 2026
[2026-10-28 17:35:14,089.089 INFO    ] ================================================
[2026-10-28 17:35:14,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:35:14
[2026-10-28 17:35:15,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:35:15,541.541 INFO    ] Initializing speech engine...
[2026-10-28 17:35:15,559.559 INFO    ] 2026-10-28 17:35:15
[2026-10-28 17:35:15,873.873 INFO    ] 2026-10-28 17:35:15
[2026-10-28 17:35:15,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:35:16,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:35:16,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:35:16,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:35:16,334.334 INFO    ] time= 28/10/2026 17:35:16
[2026-10-28 17:35:16,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:35:16,370.370 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:35:16,531.531 INFO    ] No existing commands found in stream
[2026-10-28 17:35:21,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:35:21,559.559 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 17:35:23,685.685 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:35:23,688.688 INFO    ] Checking for system updates...
[2026-10-28 17:35:23,728.728 INFO    ] 200
[2026-10-28 17:35:23,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:35:23,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:35:23,792.792 INFO    ] No update needed
[2026-10-28 17:35:23,795.795 INFO    ] Checking for camera pi updates...
[2026-10-28 17:35:23,834.834 INFO    ] 200
[2026-10-28 17:35:23,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:35:23,876.876 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:35:23,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:35:23,955.955 INFO    ] No camera update needed
[2026-10-28 17:35:23,958.958 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:35:23,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:35:23,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:35:23,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:35:26,013.013 INFO    ] ================================================
[2026-10-28 17:35:26,029.029 INFO    ] Launching Daemon at Wed Oct 28 17:35:26 IST 2026
[2026-10-28 17:35:26,040.040 INFO    ] ================================================
[2026-10-28 17:35:26,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:35:26
[2026-10-28 17:35:27,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:35:27,688.688 INFO    ] Initializing speech engine...
[2026-10-28 17:35:27,700.700 INFO    ] 2026-10-28 17:35:27
[2026-10-28 17:35:27,980.980 INFO    ] 2026-10-28 17:35:27
[2026-10-28 17:35:28,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:35:28,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:35:28,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:35:28,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:35:28,534.534 INFO    ] time= 28/10/2026 17:35:28
[2026-10-28 17:35:28,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:35:28,587.587 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:35:28,714.714 INFO    ] No existing commands found in stream
[2026-10-28 17:35:33,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:35:33,740.740 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 17:35:36,529.529 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:35:36,532.532 INFO    ] Checking for system updates...
[2026-10-28 17:35:36,567.567 INFO    ] 200
[2026-10-28 17:35:36,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:35:36,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:35:36,629.629 INFO    ] No update needed
[2026-10-28 17:35:36,632.632 INFO    ] Checking for camera pi updates...
[2026-10-28 17:35:36,666.666 INFO    ] 200
[2026-10-28 17:35:36,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:35:36,709.709 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:35:36,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:35:36,783.783 INFO    ] No camera update needed
[2026-10-28 17:35:36,785.785 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:35:36,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:35:36,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:35:36,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:35:38,841.841 INFO    ] ================================================
[2026-10-28 17:35:38,856.856 INFO    ] Launching Daemon at Wed Oct 28 17:35:38 IST 2026
[2026-10-28 17:35:38,867.867 INFO    ] ================================================
[2026-10-28 17:35:39,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:35:39
[2026-10-28 17:35:40,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:35:40,268.268 INFO    ] Initializing speech engine...
[2026-10-28 17:35:40,291.291 INFO    ] 2026-10-28 17:35:40
[2026-10-28 17:35:40,546.546 INFO    ] 2026-10-28 17:35:40
[2026-10-28 17:35:40,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:35:40,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:35:40,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:35:41,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:35:41,104.104 INFO    ] time= 28/10/2026 17:35:41
[2026-10-28 17:35:41,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:35:41,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:35:41,256.256 INFO    ] No existing commands found in stream
[2026-10-28 17:35:46,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:35:46,272.272 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-28 17:35:47,370.370 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:35:47,373.373 INFO    ] Checking for system updates...
[2026-10-28 17:35:47,411.411 INFO    ] 200
[2026-10-28 17:35:47,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:35:47,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:35:47,472.472 INFO    ] No update needed
[2026-10-28 17:35:47,475.475 INFO    ] Checking for camera pi updates...
[2026-10-28 17:35:47,510.510 INFO    ] 200
[2026-10-28 17:35:47,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:35:47,558.558 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:35:47,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:35:47,666.666 INFO    ] No camera update needed
[2026-10-28 17:35:47,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:35:47,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:35:47,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:35:47,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:35:49,730.730 INFO    ] ================================================
[2026-10-28 17:35:49,745.745 INFO    ] Launching Daemon at Wed Oct 28 17:35:49 IST 2026
[2026-10-28 17:35:49,756.756 INFO    ] ================================================
[2026-10-28 17:35:50,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:35:50
[2026-10-28 17:35:50,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:35:51,237.237 INFO    ] Initializing speech engine...
[2026-10-28 17:35:51,246.246 INFO    ] 2026-10-28 17:35:51
[2026-10-28 17:35:51,540.540 INFO    ] 2026-10-28 17:35:51
[2026-10-28 17:35:51,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:35:52,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:35:52,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:35:52,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:35:52,316.316 INFO    ] time= 28/10/2026 17:35:52
[2026-10-28 17:35:52,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:35:52,410.410 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:35:52,554.554 INFO    ] No existing commands found in stream
[2026-10-28 17:35:57,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:35:57,579.579 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-28 17:36:01,731.731 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:36:01,736.736 INFO    ] Checking for system updates...
[2026-10-28 17:36:01,801.801 INFO    ] 200
[2026-10-28 17:36:01,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:36:01,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:36:01,909.909 INFO    ] No update needed
[2026-10-28 17:36:01,913.913 INFO    ] Checking for camera pi updates...
[2026-10-28 17:36:01,968.968 INFO    ] 200
[2026-10-28 17:36:01,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:36:02,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:36:02,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:36:02,247.247 INFO    ] No camera update needed
[2026-10-28 17:36:02,250.250 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:36:02,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:36:02,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:36:02,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:36:04,313.313 INFO    ] ================================================
[2026-10-28 17:36:04,328.328 INFO    ] Launching Daemon at Wed Oct 28 17:36:04 IST 2026
[2026-10-28 17:36:04,338.338 INFO    ] ================================================
[2026-10-28 17:36:04,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:36:04
[2026-10-28 17:36:05,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:36:05,734.734 INFO    ] Initializing speech engine...
[2026-10-28 17:36:05,742.742 INFO    ] 2026-10-28 17:36:05
[2026-10-28 17:36:06,017.017 INFO    ] 2026-10-28 17:36:06
[2026-10-28 17:36:06,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:36:06,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:36:06,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:36:06,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:36:06,585.585 INFO    ] time= 28/10/2026 17:36:06
[2026-10-28 17:36:06,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:36:06,609.609 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:36:06,746.746 INFO    ] No existing commands found in stream
[2026-10-28 17:36:11,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:36:11,767.767 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-28 17:36:14,291.291 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:36:14,294.294 INFO    ] Checking for system updates...
[2026-10-28 17:36:14,334.334 INFO    ] 200
[2026-10-28 17:36:14,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:36:14,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:36:14,392.392 INFO    ] No update needed
[2026-10-28 17:36:14,394.394 INFO    ] Checking for camera pi updates...
[2026-10-28 17:36:14,428.428 INFO    ] 200
[2026-10-28 17:36:14,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:36:14,475.475 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:36:14,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:36:14,559.559 INFO    ] No camera update needed
[2026-10-28 17:36:14,561.561 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:36:14,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:36:14,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:36:14,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:36:16,614.614 INFO    ] ================================================
[2026-10-28 17:36:16,629.629 INFO    ] Launching Daemon at Wed Oct 28 17:36:16 IST 2026
[2026-10-28 17:36:16,639.639 INFO    ] ================================================
[2026-10-28 17:36:17,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:36:17
[2026-10-28 17:36:17,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:36:18,281.281 INFO    ] Initializing speech engine...
[2026-10-28 17:36:18,294.294 INFO    ] 2026-10-28 17:36:18
[2026-10-28 17:36:18,610.610 INFO    ] 2026-10-28 17:36:18
[2026-10-28 17:36:18,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:36:18,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:36:19,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:36:19,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:36:19,321.321 INFO    ] time= 28/10/2026 17:36:19
[2026-10-28 17:36:19,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:36:19,424.424 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:36:19,556.556 INFO    ] No existing commands found in stream
[2026-10-28 17:36:24,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:36:24,579.579 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-28 17:36:27,876.876 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:36:27,879.879 INFO    ] Checking for system updates...
[2026-10-28 17:36:27,916.916 INFO    ] 200
[2026-10-28 17:36:27,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:36:27,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:36:27,976.976 INFO    ] No update needed
[2026-10-28 17:36:27,978.978 INFO    ] Checking for camera pi updates...
[2026-10-28 17:36:28,014.014 INFO    ] 200
[2026-10-28 17:36:28,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:36:28,063.063 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:36:28,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:36:28,149.149 INFO    ] No camera update needed
[2026-10-28 17:36:28,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:36:28,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:36:28,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:36:28,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:36:30,204.204 INFO    ] ================================================
[2026-10-28 17:36:30,219.219 INFO    ] Launching Daemon at Wed Oct 28 17:36:30 IST 2026
[2026-10-28 17:36:30,230.230 INFO    ] ================================================
[2026-10-28 17:36:30,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:36:30
[2026-10-28 17:36:31,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:36:31,692.692 INFO    ] Initializing speech engine...
[2026-10-28 17:36:31,706.706 INFO    ] 2026-10-28 17:36:31
[2026-10-28 17:36:31,985.985 INFO    ] 2026-10-28 17:36:31
[2026-10-28 17:36:32,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:36:32,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:36:32,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:36:32,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:36:32,566.566 INFO    ] time= 28/10/2026 17:36:32
[2026-10-28 17:36:32,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:36:32,608.608 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:36:32,728.728 INFO    ] No existing commands found in stream
[2026-10-28 17:36:37,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:36:37,761.761 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-28 17:36:39,130.130 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:36:39,133.133 INFO    ] Checking for system updates...
[2026-10-28 17:36:39,169.169 INFO    ] 200
[2026-10-28 17:36:39,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:36:39,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:36:39,230.230 INFO    ] No update needed
[2026-10-28 17:36:39,233.233 INFO    ] Checking for camera pi updates...
[2026-10-28 17:36:39,266.266 INFO    ] 200
[2026-10-28 17:36:39,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:36:39,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:36:39,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:36:39,515.515 INFO    ] No camera update needed
[2026-10-28 17:36:39,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:36:39,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:36:39,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:36:39,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:36:41,572.572 INFO    ] ================================================
[2026-10-28 17:36:41,588.588 INFO    ] Launching Daemon at Wed Oct 28 17:36:41 IST 2026
[2026-10-28 17:36:41,605.605 INFO    ] ================================================
[2026-10-28 17:36:42,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:36:42
[2026-10-28 17:36:42,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:36:43,212.212 INFO    ] Initializing speech engine...
[2026-10-28 17:36:43,221.221 INFO    ] 2026-10-28 17:36:43
[2026-10-28 17:36:43,514.514 INFO    ] 2026-10-28 17:36:43
[2026-10-28 17:36:43,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:36:43,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:36:43,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:36:44,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:36:44,080.080 INFO    ] time= 28/10/2026 17:36:44
[2026-10-28 17:36:44,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:36:44,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:36:44,273.273 INFO    ] No existing commands found in stream
[2026-10-28 17:36:49,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:36:49,302.302 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-28 17:36:50,234.234 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:36:50,237.237 INFO    ] Checking for system updates...
[2026-10-28 17:36:50,274.274 INFO    ] 200
[2026-10-28 17:36:50,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:36:50,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:36:50,343.343 INFO    ] No update needed
[2026-10-28 17:36:50,345.345 INFO    ] Checking for camera pi updates...
[2026-10-28 17:36:50,380.380 INFO    ] 200
[2026-10-28 17:36:50,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:36:50,425.425 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:36:50,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:36:50,512.512 INFO    ] No camera update needed
[2026-10-28 17:36:50,514.514 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:36:50,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:36:50,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:36:50,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:36:52,568.568 INFO    ] ================================================
[2026-10-28 17:36:52,584.584 INFO    ] Launching Daemon at Wed Oct 28 17:36:52 IST 2026
[2026-10-28 17:36:52,595.595 INFO    ] ================================================
[2026-10-28 17:36:53,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:36:53
[2026-10-28 17:36:53,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:36:54,240.240 INFO    ] Initializing speech engine...
[2026-10-28 17:36:54,254.254 INFO    ] 2026-10-28 17:36:54
[2026-10-28 17:36:54,542.542 INFO    ] 2026-10-28 17:36:54
[2026-10-28 17:36:54,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:36:54,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:36:54,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:36:55,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:36:55,091.091 INFO    ] time= 28/10/2026 17:36:55
[2026-10-28 17:36:55,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:36:55,124.124 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:36:55,254.254 INFO    ] No existing commands found in stream
[2026-10-28 17:37:00,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:37:00,288.288 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-28 17:37:01,356.356 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:37:01,359.359 INFO    ] Checking for system updates...
[2026-10-28 17:37:01,395.395 INFO    ] 200
[2026-10-28 17:37:01,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:37:01,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:37:01,454.454 INFO    ] No update needed
[2026-10-28 17:37:01,457.457 INFO    ] Checking for camera pi updates...
[2026-10-28 17:37:01,490.490 INFO    ] 200
[2026-10-28 17:37:01,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:37:01,534.534 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:37:01,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:37:01,648.648 INFO    ] No camera update needed
[2026-10-28 17:37:01,656.656 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:37:01,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:37:01,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:37:01,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:37:03,721.721 INFO    ] ================================================
[2026-10-28 17:37:03,743.743 INFO    ] Launching Daemon at Wed Oct 28 17:37:03 IST 2026
[2026-10-28 17:37:03,755.755 INFO    ] ================================================
[2026-10-28 17:37:04,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:37:04
[2026-10-28 17:37:04,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:37:05,231.231 INFO    ] Initializing speech engine...
[2026-10-28 17:37:05,239.239 INFO    ] 2026-10-28 17:37:05
[2026-10-28 17:37:05,501.501 INFO    ] 2026-10-28 17:37:05
[2026-10-28 17:37:05,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:37:05,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:37:05,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:37:06,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:37:06,059.059 INFO    ] time= 28/10/2026 17:37:06
[2026-10-28 17:37:06,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:37:06,070.070 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:37:06,225.225 INFO    ] No existing commands found in stream
[2026-10-28 17:37:11,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:37:11,244.244 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-28 17:37:12,449.449 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:37:12,452.452 INFO    ] Checking for system updates...
[2026-10-28 17:37:12,492.492 INFO    ] 200
[2026-10-28 17:37:12,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:37:12,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:37:12,550.550 INFO    ] No update needed
[2026-10-28 17:37:12,552.552 INFO    ] Checking for camera pi updates...
[2026-10-28 17:37:12,590.590 INFO    ] 200
[2026-10-28 17:37:12,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:37:12,634.634 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:37:12,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:37:12,720.720 INFO    ] No camera update needed
[2026-10-28 17:37:12,722.722 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:37:12,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:37:12,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:37:12,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:37:14,776.776 INFO    ] ================================================
[2026-10-28 17:37:14,791.791 INFO    ] Launching Daemon at Wed Oct 28 17:37:14 IST 2026
[2026-10-28 17:37:14,802.802 INFO    ] ================================================
[2026-10-28 17:37:15,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:37:15
[2026-10-28 17:37:16,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:37:16,454.454 INFO    ] Initializing speech engine...
[2026-10-28 17:37:16,467.467 INFO    ] 2026-10-28 17:37:16
[2026-10-28 17:37:16,738.738 INFO    ] 2026-10-28 17:37:16
[2026-10-28 17:37:16,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:37:17,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:37:17,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:37:17,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:37:17,241.241 INFO    ] time= 28/10/2026 17:37:17
[2026-10-28 17:37:17,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:37:17,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:37:17,506.506 INFO    ] No existing commands found in stream
[2026-10-28 17:37:22,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:37:22,526.526 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-28 17:37:23,742.742 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:37:23,745.745 INFO    ] Checking for system updates...
[2026-10-28 17:37:23,785.785 INFO    ] 200
[2026-10-28 17:37:23,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:37:23,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:37:23,843.843 INFO    ] No update needed
[2026-10-28 17:37:23,846.846 INFO    ] Checking for camera pi updates...
[2026-10-28 17:37:23,880.880 INFO    ] 200
[2026-10-28 17:37:23,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:37:23,925.925 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:37:24,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:37:24,010.010 INFO    ] No camera update needed
[2026-10-28 17:37:24,013.013 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:37:24,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:37:24,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:37:24,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:37:26,068.068 INFO    ] ================================================
[2026-10-28 17:37:26,084.084 INFO    ] Launching Daemon at Wed Oct 28 17:37:26 IST 2026
[2026-10-28 17:37:26,095.095 INFO    ] ================================================
[2026-10-28 17:37:26,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:37:26
[2026-10-28 17:37:27,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:37:27,510.510 INFO    ] Initializing speech engine...
[2026-10-28 17:37:27,530.530 INFO    ] 2026-10-28 17:37:27
[2026-10-28 17:37:27,779.779 INFO    ] 2026-10-28 17:37:27
[2026-10-28 17:37:27,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:37:28,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:37:28,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:37:28,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:37:28,346.346 INFO    ] time= 28/10/2026 17:37:28
[2026-10-28 17:37:28,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:37:28,370.370 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:37:28,501.501 INFO    ] No existing commands found in stream
[2026-10-28 17:37:33,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:37:33,519.519 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 17:37:36,569.569 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:37:36,571.571 INFO    ] Checking for system updates...
[2026-10-28 17:37:36,608.608 INFO    ] 200
[2026-10-28 17:37:36,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:37:36,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:37:36,675.675 INFO    ] No update needed
[2026-10-28 17:37:36,678.678 INFO    ] Checking for camera pi updates...
[2026-10-28 17:37:36,714.714 INFO    ] 200
[2026-10-28 17:37:36,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:37:36,763.763 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:37:36,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:37:36,816.816 INFO    ] No camera update needed
[2026-10-28 17:37:36,818.818 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:37:36,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:37:36,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:37:36,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:37:38,872.872 INFO    ] ================================================
[2026-10-28 17:37:38,888.888 INFO    ] Launching Daemon at Wed Oct 28 17:37:38 IST 2026
[2026-10-28 17:37:38,900.900 INFO    ] ================================================
[2026-10-28 17:37:39,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:37:39
[2026-10-28 17:37:40,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:37:40,306.306 INFO    ] Initializing speech engine...
[2026-10-28 17:37:40,329.329 INFO    ] 2026-10-28 17:37:40
[2026-10-28 17:37:40,586.586 INFO    ] 2026-10-28 17:37:40
[2026-10-28 17:37:40,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:37:40,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:37:40,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:37:41,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:37:41,158.158 INFO    ] time= 28/10/2026 17:37:41
[2026-10-28 17:37:41,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:37:41,193.193 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:37:41,339.339 INFO    ] No existing commands found in stream
[2026-10-28 17:37:46,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:37:46,362.362 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-28 17:37:50,230.230 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:37:50,233.233 INFO    ] Checking for system updates...
[2026-10-28 17:37:50,273.273 INFO    ] 200
[2026-10-28 17:37:50,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:37:50,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:37:50,330.330 INFO    ] No update needed
[2026-10-28 17:37:50,333.333 INFO    ] Checking for camera pi updates...
[2026-10-28 17:37:50,370.370 INFO    ] 200
[2026-10-28 17:37:50,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:37:50,414.414 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:37:50,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:37:50,504.504 INFO    ] No camera update needed
[2026-10-28 17:37:50,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:37:50,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:37:50,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:37:50,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:37:52,560.560 INFO    ] ================================================
[2026-10-28 17:37:52,576.576 INFO    ] Launching Daemon at Wed Oct 28 17:37:52 IST 2026
[2026-10-28 17:37:52,587.587 INFO    ] ================================================
[2026-10-28 17:37:53,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:37:53
[2026-10-28 17:37:53,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:37:53,990.990 INFO    ] Initializing speech engine...
[2026-10-28 17:37:54,013.013 INFO    ] 2026-10-28 17:37:53
[2026-10-28 17:37:54,270.270 INFO    ] 2026-10-28 17:37:54
[2026-10-28 17:37:54,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:37:54,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:37:54,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:37:54,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:37:54,837.837 INFO    ] time= 28/10/2026 17:37:54
[2026-10-28 17:37:54,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:37:54,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:37:55,005.005 INFO    ] No existing commands found in stream
[2026-10-28 17:38:00,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:38:00,032.032 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-28 17:38:02,511.511 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:38:02,515.515 INFO    ] Checking for system updates...
[2026-10-28 17:38:02,558.558 INFO    ] 200
[2026-10-28 17:38:02,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:38:02,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:38:02,648.648 INFO    ] No update needed
[2026-10-28 17:38:02,651.651 INFO    ] Checking for camera pi updates...
[2026-10-28 17:38:02,693.693 INFO    ] 200
[2026-10-28 17:38:02,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:38:02,745.745 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:38:02,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:38:02,850.850 INFO    ] No camera update needed
[2026-10-28 17:38:02,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:38:02,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:38:02,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:38:02,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:38:04,918.918 INFO    ] ================================================
[2026-10-28 17:38:04,934.934 INFO    ] Launching Daemon at Wed Oct 28 17:38:04 IST 2026
[2026-10-28 17:38:04,945.945 INFO    ] ================================================
[2026-10-28 17:38:05,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:38:05
[2026-10-28 17:38:06,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:38:06,409.409 INFO    ] Initializing speech engine...
[2026-10-28 17:38:06,416.416 INFO    ] 2026-10-28 17:38:06
[2026-10-28 17:38:06,717.717 INFO    ] 2026-10-28 17:38:06
[2026-10-28 17:38:06,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:38:06,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:38:07,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:38:07,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:38:07,303.303 INFO    ] time= 28/10/2026 17:38:07
[2026-10-28 17:38:07,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:38:07,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:38:07,525.525 INFO    ] No existing commands found in stream
[2026-10-28 17:38:12,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:38:12,551.551 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-28 17:38:13,113.113 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:38:13,116.116 INFO    ] Checking for system updates...
[2026-10-28 17:38:13,152.152 INFO    ] 200
[2026-10-28 17:38:13,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:38:13,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:38:13,220.220 INFO    ] No update needed
[2026-10-28 17:38:13,223.223 INFO    ] Checking for camera pi updates...
[2026-10-28 17:38:13,260.260 INFO    ] 200
[2026-10-28 17:38:13,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:38:13,303.303 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:38:13,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:38:13,418.418 INFO    ] No camera update needed
[2026-10-28 17:38:13,420.420 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:38:13,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:38:13,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:38:13,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:38:15,474.474 INFO    ] ================================================
[2026-10-28 17:38:15,489.489 INFO    ] Launching Daemon at Wed Oct 28 17:38:15 IST 2026
[2026-10-28 17:38:15,501.501 INFO    ] ================================================
[2026-10-28 17:38:16,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:38:16
[2026-10-28 17:38:16,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:38:16,939.939 INFO    ] Initializing speech engine...
[2026-10-28 17:38:16,946.946 INFO    ] 2026-10-28 17:38:16
[2026-10-28 17:38:17,244.244 INFO    ] 2026-10-28 17:38:17
[2026-10-28 17:38:17,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:38:17,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:38:17,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:38:17,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:38:17,878.878 INFO    ] time= 28/10/2026 17:38:17
[2026-10-28 17:38:17,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:38:17,911.911 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:38:18,074.074 INFO    ] No existing commands found in stream
[2026-10-28 17:38:23,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:38:23,097.097 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-28 17:38:26,006.006 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:38:26,009.009 INFO    ] Checking for system updates...
[2026-10-28 17:38:26,048.048 INFO    ] 200
[2026-10-28 17:38:26,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:38:26,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:38:26,105.105 INFO    ] No update needed
[2026-10-28 17:38:26,107.107 INFO    ] Checking for camera pi updates...
[2026-10-28 17:38:26,142.142 INFO    ] 200
[2026-10-28 17:38:26,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:38:26,190.190 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:38:26,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:38:26,295.295 INFO    ] No camera update needed
[2026-10-28 17:38:26,297.297 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:38:26,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:38:26,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:38:26,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:38:28,350.350 INFO    ] ================================================
[2026-10-28 17:38:28,365.365 INFO    ] Launching Daemon at Wed Oct 28 17:38:28 IST 2026
[2026-10-28 17:38:28,377.377 INFO    ] ================================================
[2026-10-28 17:38:28,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:38:28
[2026-10-28 17:38:29,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:38:29,818.818 INFO    ] Initializing speech engine...
[2026-10-28 17:38:29,834.834 INFO    ] 2026-10-28 17:38:29
[2026-10-28 17:38:30,124.124 INFO    ] 2026-10-28 17:38:30
[2026-10-28 17:38:30,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:38:30,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:38:30,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:38:30,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:38:30,763.763 INFO    ] time= 28/10/2026 17:38:30
[2026-10-28 17:38:30,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:38:30,787.787 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:38:30,952.952 INFO    ] No existing commands found in stream
[2026-10-28 17:38:35,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:38:35,970.970 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-28 17:38:39,768.768 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:38:39,771.771 INFO    ] Checking for system updates...
[2026-10-28 17:38:39,810.810 INFO    ] 200
[2026-10-28 17:38:39,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:38:39,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:38:39,880.880 INFO    ] No update needed
[2026-10-28 17:38:39,883.883 INFO    ] Checking for camera pi updates...
[2026-10-28 17:38:39,920.920 INFO    ] 200
[2026-10-28 17:38:39,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:38:40,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:38:40,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:38:40,094.094 INFO    ] No camera update needed
[2026-10-28 17:38:40,097.097 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:38:40,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:38:40,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:38:40,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:38:42,151.151 INFO    ] ================================================
[2026-10-28 17:38:42,166.166 INFO    ] Launching Daemon at Wed Oct 28 17:38:42 IST 2026
[2026-10-28 17:38:42,177.177 INFO    ] ================================================
[2026-10-28 17:38:42,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:38:42
[2026-10-28 17:38:43,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:38:43,638.638 INFO    ] Initializing speech engine...
[2026-10-28 17:38:43,647.647 INFO    ] 2026-10-28 17:38:43
[2026-10-28 17:38:43,909.909 INFO    ] 2026-10-28 17:38:43
[2026-10-28 17:38:43,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:38:44,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:38:44,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:38:44,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:38:44,452.452 INFO    ] time= 28/10/2026 17:38:44
[2026-10-28 17:38:44,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:38:44,478.478 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:38:44,609.609 INFO    ] No existing commands found in stream
[2026-10-28 17:38:49,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:38:49,634.634 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-28 17:38:52,105.105 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:38:52,108.108 INFO    ] Checking for system updates...
[2026-10-28 17:38:52,144.144 INFO    ] 200
[2026-10-28 17:38:52,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:38:52,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:38:52,208.208 INFO    ] No update needed
[2026-10-28 17:38:52,210.210 INFO    ] Checking for camera pi updates...
[2026-10-28 17:38:52,248.248 INFO    ] 200
[2026-10-28 17:38:52,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:38:52,291.291 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:38:52,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:38:52,490.490 INFO    ] No camera update needed
[2026-10-28 17:38:52,492.492 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:38:52,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:38:52,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:38:52,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:38:54,545.545 INFO    ] ================================================
[2026-10-28 17:38:54,561.561 INFO    ] Launching Daemon at Wed Oct 28 17:38:54 IST 2026
[2026-10-28 17:38:54,572.572 INFO    ] ================================================
[2026-10-28 17:38:55,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:38:55
[2026-10-28 17:38:55,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:38:56,021.021 INFO    ] Initializing speech engine...
[2026-10-28 17:38:56,030.030 INFO    ] 2026-10-28 17:38:56
[2026-10-28 17:38:56,284.284 INFO    ] 2026-10-28 17:38:56
[2026-10-28 17:38:56,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:38:56,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:38:56,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:38:56,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:38:56,837.837 INFO    ] time= 28/10/2026 17:38:56
[2026-10-28 17:38:56,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:38:56,877.877 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:38:56,990.990 INFO    ] No existing commands found in stream
[2026-10-28 17:39:02,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:39:02,024.024 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-28 17:39:03,544.544 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:39:03,547.547 INFO    ] Checking for system updates...
[2026-10-28 17:39:03,586.586 INFO    ] 200
[2026-10-28 17:39:03,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:39:03,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:39:03,649.649 INFO    ] No update needed
[2026-10-28 17:39:03,652.652 INFO    ] Checking for camera pi updates...
[2026-10-28 17:39:03,690.690 INFO    ] 200
[2026-10-28 17:39:03,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:39:03,732.732 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:39:03,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:39:03,819.819 INFO    ] No camera update needed
[2026-10-28 17:39:03,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:39:03,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:39:03,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:39:03,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:39:05,875.875 INFO    ] ================================================
[2026-10-28 17:39:05,891.891 INFO    ] Launching Daemon at Wed Oct 28 17:39:05 IST 2026
[2026-10-28 17:39:05,902.902 INFO    ] ================================================
[2026-10-28 17:39:06,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:39:06
[2026-10-28 17:39:07,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:39:07,369.369 INFO    ] Initializing speech engine...
[2026-10-28 17:39:07,378.378 INFO    ] 2026-10-28 17:39:07
[2026-10-28 17:39:07,637.637 INFO    ] 2026-10-28 17:39:07
[2026-10-28 17:39:07,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:39:07,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:39:07,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:39:08,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:39:08,195.195 INFO    ] time= 28/10/2026 17:39:08
[2026-10-28 17:39:08,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:39:08,230.230 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:39:08,348.348 INFO    ] No existing commands found in stream
[2026-10-28 17:39:13,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:39:13,375.375 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-28 17:39:15,228.228 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:39:15,231.231 INFO    ] Checking for system updates...
[2026-10-28 17:39:15,271.271 INFO    ] 200
[2026-10-28 17:39:15,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:39:15,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:39:15,336.336 INFO    ] No update needed
[2026-10-28 17:39:15,338.338 INFO    ] Checking for camera pi updates...
[2026-10-28 17:39:15,372.372 INFO    ] 200
[2026-10-28 17:39:15,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:39:15,419.419 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:39:15,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:39:15,501.501 INFO    ] No camera update needed
[2026-10-28 17:39:15,504.504 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:39:15,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:39:15,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:39:15,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:39:17,558.558 INFO    ] ================================================
[2026-10-28 17:39:17,573.573 INFO    ] Launching Daemon at Wed Oct 28 17:39:17 IST 2026
[2026-10-28 17:39:17,584.584 INFO    ] ================================================
[2026-10-28 17:39:18,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:39:18
[2026-10-28 17:39:18,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:39:19,227.227 INFO    ] Initializing speech engine...
[2026-10-28 17:39:19,240.240 INFO    ] 2026-10-28 17:39:19
[2026-10-28 17:39:19,513.513 INFO    ] 2026-10-28 17:39:19
[2026-10-28 17:39:19,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:39:19,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:39:19,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:39:20,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:39:20,063.063 INFO    ] time= 28/10/2026 17:39:20
[2026-10-28 17:39:20,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:39:20,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:39:20,246.246 INFO    ] No existing commands found in stream
[2026-10-28 17:39:25,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:39:25,280.280 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 17:39:26,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:39:26,550.550 INFO    ] Checking for system updates...
[2026-10-28 17:39:26,587.587 INFO    ] 200
[2026-10-28 17:39:26,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:39:26,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:39:26,648.648 INFO    ] No update needed
[2026-10-28 17:39:26,650.650 INFO    ] Checking for camera pi updates...
[2026-10-28 17:39:26,684.684 INFO    ] 200
[2026-10-28 17:39:26,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:39:26,731.731 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:39:26,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:39:26,801.801 INFO    ] No camera update needed
[2026-10-28 17:39:26,803.803 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:39:26,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:39:26,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:39:26,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:39:28,857.857 INFO    ] ================================================
[2026-10-28 17:39:28,872.872 INFO    ] Launching Daemon at Wed Oct 28 17:39:28 IST 2026
[2026-10-28 17:39:28,884.884 INFO    ] ================================================
[2026-10-28 17:39:29,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:39:29
[2026-10-28 17:39:30,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:39:30,538.538 INFO    ] Initializing speech engine...
[2026-10-28 17:39:30,551.551 INFO    ] 2026-10-28 17:39:30
[2026-10-28 17:39:30,833.833 INFO    ] 2026-10-28 17:39:30
[2026-10-28 17:39:30,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:39:31,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:39:31,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:39:31,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:39:31,370.370 INFO    ] time= 28/10/2026 17:39:31
[2026-10-28 17:39:31,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:39:31,418.418 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:39:31,530.530 INFO    ] No existing commands found in stream
[2026-10-28 17:39:36,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:39:36,564.564 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-28 17:39:40,664.664 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:39:40,667.667 INFO    ] Checking for system updates...
[2026-10-28 17:39:40,705.705 INFO    ] 200
[2026-10-28 17:39:40,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:39:40,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:39:40,762.762 INFO    ] No update needed
[2026-10-28 17:39:40,765.765 INFO    ] Checking for camera pi updates...
[2026-10-28 17:39:40,798.798 INFO    ] 200
[2026-10-28 17:39:40,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:39:40,848.848 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:39:40,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:39:40,938.938 INFO    ] No camera update needed
[2026-10-28 17:39:40,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:39:40,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:39:40,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:39:40,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:39:42,994.994 INFO    ] ================================================
[2026-10-28 17:39:43,009.009 INFO    ] Launching Daemon at Wed Oct 28 17:39:43 IST 2026
[2026-10-28 17:39:43,021.021 INFO    ] ================================================
[2026-10-28 17:39:43,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:39:43
[2026-10-28 17:39:44,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:39:44,426.426 INFO    ] Initializing speech engine...
[2026-10-28 17:39:44,435.435 INFO    ] 2026-10-28 17:39:44
[2026-10-28 17:39:44,734.734 INFO    ] 2026-10-28 17:39:44
[2026-10-28 17:39:44,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:39:44,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:39:45,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:39:45,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:39:45,237.237 INFO    ] time= 28/10/2026 17:39:45
[2026-10-28 17:39:45,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:39:45,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:39:45,452.452 INFO    ] No existing commands found in stream
[2026-10-28 17:39:50,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:39:50,467.467 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-28 17:39:53,141.141 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:39:53,144.144 INFO    ] Checking for system updates...
[2026-10-28 17:39:53,180.180 INFO    ] 200
[2026-10-28 17:39:53,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:39:53,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:39:53,246.246 INFO    ] No update needed
[2026-10-28 17:39:53,249.249 INFO    ] Checking for camera pi updates...
[2026-10-28 17:39:53,286.286 INFO    ] 200
[2026-10-28 17:39:53,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:39:53,329.329 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:39:53,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:39:53,411.411 INFO    ] No camera update needed
[2026-10-28 17:39:53,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:39:53,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:39:53,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:39:53,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:39:55,467.467 INFO    ] ================================================
[2026-10-28 17:39:55,483.483 INFO    ] Launching Daemon at Wed Oct 28 17:39:55 IST 2026
[2026-10-28 17:39:55,494.494 INFO    ] ================================================
[2026-10-28 17:39:56,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:39:56
[2026-10-28 17:39:56,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:39:57,147.147 INFO    ] Initializing speech engine...
[2026-10-28 17:39:57,160.160 INFO    ] 2026-10-28 17:39:57
[2026-10-28 17:39:57,448.448 INFO    ] 2026-10-28 17:39:57
[2026-10-28 17:39:57,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:39:57,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:39:57,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:39:58,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:39:58,201.201 INFO    ] time= 28/10/2026 17:39:58
[2026-10-28 17:39:58,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:39:58,312.312 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:39:58,456.456 INFO    ] No existing commands found in stream
[2026-10-28 17:40:03,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:40:03,469.469 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 17:40:05,385.385 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:40:05,392.392 INFO    ] Checking for system updates...
[2026-10-28 17:40:05,430.430 INFO    ] 200
[2026-10-28 17:40:05,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:40:05,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:40:05,496.496 INFO    ] No update needed
[2026-10-28 17:40:05,499.499 INFO    ] Checking for camera pi updates...
[2026-10-28 17:40:05,535.535 INFO    ] 200
[2026-10-28 17:40:05,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:40:05,578.578 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:40:05,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:40:05,632.632 INFO    ] No camera update needed
[2026-10-28 17:40:05,635.635 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:40:05,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:40:05,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:40:05,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:40:07,692.692 INFO    ] ================================================
[2026-10-28 17:40:07,708.708 INFO    ] Launching Daemon at Wed Oct 28 17:40:07 IST 2026
[2026-10-28 17:40:07,719.719 INFO    ] ================================================
[2026-10-28 17:40:08,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:40:08
[2026-10-28 17:40:09,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:40:09,372.372 INFO    ] Initializing speech engine...
[2026-10-28 17:40:09,386.386 INFO    ] 2026-10-28 17:40:09
[2026-10-28 17:40:09,699.699 INFO    ] 2026-10-28 17:40:09
[2026-10-28 17:40:09,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:40:10,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:40:10,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:40:10,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:40:10,356.356 INFO    ] time= 28/10/2026 17:40:10
[2026-10-28 17:40:10,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:40:10,452.452 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:40:10,599.599 INFO    ] No existing commands found in stream
[2026-10-28 17:40:15,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:40:15,617.617 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 17:40:16,336.336 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:40:16,339.339 INFO    ] Checking for system updates...
[2026-10-28 17:40:16,381.381 INFO    ] 200
[2026-10-28 17:40:16,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:40:16,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:40:16,453.453 INFO    ] No update needed
[2026-10-28 17:40:16,456.456 INFO    ] Checking for camera pi updates...
[2026-10-28 17:40:16,490.490 INFO    ] 200
[2026-10-28 17:40:16,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:40:16,536.536 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:40:16,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:40:16,608.608 INFO    ] No camera update needed
[2026-10-28 17:40:16,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:40:16,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:40:16,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:40:16,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:40:18,667.667 INFO    ] ================================================
[2026-10-28 17:40:18,683.683 INFO    ] Launching Daemon at Wed Oct 28 17:40:18 IST 2026
[2026-10-28 17:40:18,694.694 INFO    ] ================================================
[2026-10-28 17:40:19,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:40:19
[2026-10-28 17:40:20,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:40:20,334.334 INFO    ] Initializing speech engine...
[2026-10-28 17:40:20,347.347 INFO    ] 2026-10-28 17:40:20
[2026-10-28 17:40:20,625.625 INFO    ] 2026-10-28 17:40:20
[2026-10-28 17:40:20,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:40:20,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:40:20,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:40:21,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:40:21,188.188 INFO    ] time= 28/10/2026 17:40:21
[2026-10-28 17:40:21,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:40:21,220.220 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:40:21,369.369 INFO    ] No existing commands found in stream
[2026-10-28 17:40:26,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:40:26,404.404 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 17:40:28,699.699 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:40:28,702.702 INFO    ] Checking for system updates...
[2026-10-28 17:40:28,739.739 INFO    ] 200
[2026-10-28 17:40:28,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:40:28,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:40:28,799.799 INFO    ] No update needed
[2026-10-28 17:40:28,801.801 INFO    ] Checking for camera pi updates...
[2026-10-28 17:40:28,841.841 INFO    ] 200
[2026-10-28 17:40:28,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:40:28,885.885 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:40:28,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:40:28,968.968 INFO    ] No camera update needed
[2026-10-28 17:40:28,970.970 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:40:28,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:40:28,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:40:28,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:40:31,025.025 INFO    ] ================================================
[2026-10-28 17:40:31,040.040 INFO    ] Launching Daemon at Wed Oct 28 17:40:31 IST 2026
[2026-10-28 17:40:31,052.052 INFO    ] ================================================
[2026-10-28 17:40:31,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:40:31
[2026-10-28 17:40:32,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:40:32,588.588 INFO    ] Initializing speech engine...
[2026-10-28 17:40:32,596.596 INFO    ] 2026-10-28 17:40:32
[2026-10-28 17:40:32,876.876 INFO    ] 2026-10-28 17:40:32
[2026-10-28 17:40:32,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:40:33,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:40:33,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:40:33,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:40:33,454.454 INFO    ] time= 28/10/2026 17:40:33
[2026-10-28 17:40:33,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:40:33,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:40:33,619.619 INFO    ] No existing commands found in stream
[2026-10-28 17:40:38,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:40:38,632.632 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-28 17:40:42,425.425 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:40:42,428.428 INFO    ] Checking for system updates...
[2026-10-28 17:40:42,465.465 INFO    ] 200
[2026-10-28 17:40:42,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:40:42,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:40:42,524.524 INFO    ] No update needed
[2026-10-28 17:40:42,526.526 INFO    ] Checking for camera pi updates...
[2026-10-28 17:40:42,560.560 INFO    ] 200
[2026-10-28 17:40:42,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:40:42,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:40:42,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:40:42,695.695 INFO    ] No camera update needed
[2026-10-28 17:40:42,698.698 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:40:42,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:40:42,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:40:42,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:40:44,750.750 INFO    ] ================================================
[2026-10-28 17:40:44,765.765 INFO    ] Launching Daemon at Wed Oct 28 17:40:44 IST 2026
[2026-10-28 17:40:44,775.775 INFO    ] ================================================
[2026-10-28 17:40:45,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:40:45
[2026-10-28 17:40:46,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:40:46,309.309 INFO    ] Initializing speech engine...
[2026-10-28 17:40:46,318.318 INFO    ] 2026-10-28 17:40:46
[2026-10-28 17:40:46,610.610 INFO    ] 2026-10-28 17:40:46
[2026-10-28 17:40:46,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:40:46,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:40:46,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:40:47,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:40:47,059.059 INFO    ] time= 28/10/2026 17:40:47
[2026-10-28 17:40:47,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:40:47,113.113 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:40:47,255.255 INFO    ] No existing commands found in stream
[2026-10-28 17:40:52,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:40:52,268.268 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-28 17:40:55,604.604 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:40:55,607.607 INFO    ] Checking for system updates...
[2026-10-28 17:40:55,644.644 INFO    ] 200
[2026-10-28 17:40:55,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:40:55,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:40:55,711.711 INFO    ] No update needed
[2026-10-28 17:40:55,714.714 INFO    ] Checking for camera pi updates...
[2026-10-28 17:40:55,747.747 INFO    ] 200
[2026-10-28 17:40:55,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:40:55,789.789 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:40:55,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:40:55,988.988 INFO    ] No camera update needed
[2026-10-28 17:40:55,990.990 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:40:55,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:40:55,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:40:56,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:40:58,043.043 INFO    ] ================================================
[2026-10-28 17:40:58,058.058 INFO    ] Launching Daemon at Wed Oct 28 17:40:58 IST 2026
[2026-10-28 17:40:58,069.069 INFO    ] ================================================
[2026-10-28 17:40:58,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:40:58
[2026-10-28 17:40:59,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:40:59,684.684 INFO    ] Initializing speech engine...
[2026-10-28 17:40:59,695.695 INFO    ] 2026-10-28 17:40:59
[2026-10-28 17:40:59,981.981 INFO    ] 2026-10-28 17:40:59
[2026-10-28 17:41:00,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:41:00,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:41:00,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:41:00,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:41:00,689.689 INFO    ] time= 28/10/2026 17:41:00
[2026-10-28 17:41:00,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:41:00,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:41:00,950.950 INFO    ] No existing commands found in stream
[2026-10-28 17:41:05,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:41:05,986.986 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 17:41:06,560.560 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:41:06,563.563 INFO    ] Checking for system updates...
[2026-10-28 17:41:06,599.599 INFO    ] 200
[2026-10-28 17:41:06,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:41:06,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:41:06,665.665 INFO    ] No update needed
[2026-10-28 17:41:06,668.668 INFO    ] Checking for camera pi updates...
[2026-10-28 17:41:06,702.702 INFO    ] 200
[2026-10-28 17:41:06,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:41:06,746.746 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:41:06,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:41:06,835.835 INFO    ] No camera update needed
[2026-10-28 17:41:06,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:41:06,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:41:06,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:41:06,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:41:08,895.895 INFO    ] ================================================
[2026-10-28 17:41:08,911.911 INFO    ] Launching Daemon at Wed Oct 28 17:41:08 IST 2026
[2026-10-28 17:41:08,922.922 INFO    ] ================================================
[2026-10-28 17:41:09,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:41:09
[2026-10-28 17:41:10,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:41:10,390.390 INFO    ] Initializing speech engine...
[2026-10-28 17:41:10,396.396 INFO    ] 2026-10-28 17:41:10
[2026-10-28 17:41:10,658.658 INFO    ] 2026-10-28 17:41:10
[2026-10-28 17:41:10,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:41:10,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:41:11,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:41:11,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:41:11,160.160 INFO    ] time= 28/10/2026 17:41:11
[2026-10-28 17:41:11,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:41:11,211.211 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:41:11,349.349 INFO    ] No existing commands found in stream
[2026-10-28 17:41:16,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:41:16,377.377 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 17:41:18,079.079 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:41:18,082.082 INFO    ] Checking for system updates...
[2026-10-28 17:41:18,121.121 INFO    ] 200
[2026-10-28 17:41:18,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:41:18,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:41:18,178.178 INFO    ] No update needed
[2026-10-28 17:41:18,181.181 INFO    ] Checking for camera pi updates...
[2026-10-28 17:41:18,217.217 INFO    ] 200
[2026-10-28 17:41:18,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:41:18,265.265 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:41:18,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:41:18,339.339 INFO    ] No camera update needed
[2026-10-28 17:41:18,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:41:18,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:41:18,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:41:18,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:41:20,397.397 INFO    ] ================================================
[2026-10-28 17:41:20,412.412 INFO    ] Launching Daemon at Wed Oct 28 17:41:20 IST 2026
[2026-10-28 17:41:20,424.424 INFO    ] ================================================
[2026-10-28 17:41:21,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:41:21
[2026-10-28 17:41:21,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:41:21,885.885 INFO    ] Initializing speech engine...
[2026-10-28 17:41:21,902.902 INFO    ] 2026-10-28 17:41:21
[2026-10-28 17:41:22,178.178 INFO    ] 2026-10-28 17:41:22
[2026-10-28 17:41:22,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:41:22,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:41:22,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:41:22,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:41:22,703.703 INFO    ] time= 28/10/2026 17:41:22
[2026-10-28 17:41:22,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:41:22,810.810 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:41:22,945.945 INFO    ] No existing commands found in stream
[2026-10-28 17:41:27,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:41:27,973.973 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-28 17:41:30,059.059 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:41:30,062.062 INFO    ] Checking for system updates...
[2026-10-28 17:41:30,102.102 INFO    ] 200
[2026-10-28 17:41:30,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:41:30,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:41:30,162.162 INFO    ] No update needed
[2026-10-28 17:41:30,165.165 INFO    ] Checking for camera pi updates...
[2026-10-28 17:41:30,199.199 INFO    ] 200
[2026-10-28 17:41:30,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:41:30,247.247 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:41:30,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:41:30,336.336 INFO    ] No camera update needed
[2026-10-28 17:41:30,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:41:30,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:41:30,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:41:30,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:41:32,395.395 INFO    ] ================================================
[2026-10-28 17:41:32,412.412 INFO    ] Launching Daemon at Wed Oct 28 17:41:32 IST 2026
[2026-10-28 17:41:32,423.423 INFO    ] ================================================
[2026-10-28 17:41:33,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:41:33
[2026-10-28 17:41:33,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:41:33,935.935 INFO    ] Initializing speech engine...
[2026-10-28 17:41:33,941.941 INFO    ] 2026-10-28 17:41:33
[2026-10-28 17:41:34,201.201 INFO    ] 2026-10-28 17:41:34
[2026-10-28 17:41:34,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:41:34,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:41:34,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:41:34,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:41:34,693.693 INFO    ] time= 28/10/2026 17:41:34
[2026-10-28 17:41:34,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:41:34,772.772 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:41:34,903.903 INFO    ] No existing commands found in stream
[2026-10-28 17:41:39,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:41:39,934.934 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-28 17:41:41,518.518 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:41:41,520.520 INFO    ] Checking for system updates...
[2026-10-28 17:41:41,555.555 INFO    ] 200
[2026-10-28 17:41:41,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:41:41,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:41:41,612.612 INFO    ] No update needed
[2026-10-28 17:41:41,614.614 INFO    ] Checking for camera pi updates...
[2026-10-28 17:41:41,648.648 INFO    ] 200
[2026-10-28 17:41:41,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:41:41,691.691 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:41:41,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:41:41,773.773 INFO    ] No camera update needed
[2026-10-28 17:41:41,776.776 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:41:41,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:41:41,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:41:41,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:41:43,828.828 INFO    ] ================================================
[2026-10-28 17:41:43,844.844 INFO    ] Launching Daemon at Wed Oct 28 17:41:43 IST 2026
[2026-10-28 17:41:43,855.855 INFO    ] ================================================
[2026-10-28 17:41:44,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:41:44
[2026-10-28 17:41:45,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:41:45,268.268 INFO    ] Initializing speech engine...
[2026-10-28 17:41:45,290.290 INFO    ] 2026-10-28 17:41:45
[2026-10-28 17:41:45,549.549 INFO    ] 2026-10-28 17:41:45
[2026-10-28 17:41:45,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:41:45,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:41:45,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:41:46,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:41:46,098.098 INFO    ] time= 28/10/2026 17:41:46
[2026-10-28 17:41:46,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:41:46,122.122 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:41:46,227.227 INFO    ] No existing commands found in stream
[2026-10-28 17:41:51,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:41:51,255.255 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-28 17:41:55,175.175 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:41:55,178.178 INFO    ] Checking for system updates...
[2026-10-28 17:41:55,216.216 INFO    ] 200
[2026-10-28 17:41:55,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:41:55,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:41:55,274.274 INFO    ] No update needed
[2026-10-28 17:41:55,276.276 INFO    ] Checking for camera pi updates...
[2026-10-28 17:41:55,313.313 INFO    ] 200
[2026-10-28 17:41:55,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:41:55,360.360 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:41:55,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:41:55,446.446 INFO    ] No camera update needed
[2026-10-28 17:41:55,448.448 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:41:55,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:41:55,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:41:55,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:41:57,501.501 INFO    ] ================================================
[2026-10-28 17:41:57,516.516 INFO    ] Launching Daemon at Wed Oct 28 17:41:57 IST 2026
[2026-10-28 17:41:57,528.528 INFO    ] ================================================
[2026-10-28 17:41:58,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:41:58
[2026-10-28 17:41:58,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:41:58,924.924 INFO    ] Initializing speech engine...
[2026-10-28 17:41:58,931.931 INFO    ] 2026-10-28 17:41:58
[2026-10-28 17:41:59,205.205 INFO    ] 2026-10-28 17:41:59
[2026-10-28 17:41:59,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:41:59,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:41:59,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:41:59,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:41:59,774.774 INFO    ] time= 28/10/2026 17:41:59
[2026-10-28 17:41:59,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:41:59,796.796 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:41:59,933.933 INFO    ] No existing commands found in stream
[2026-10-28 17:42:04,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:42:04,950.950 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-28 17:42:07,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:42:07,078.078 INFO    ] Checking for system updates...
[2026-10-28 17:42:07,114.114 INFO    ] 200
[2026-10-28 17:42:07,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:42:07,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:42:07,171.171 INFO    ] No update needed
[2026-10-28 17:42:07,173.173 INFO    ] Checking for camera pi updates...
[2026-10-28 17:42:07,207.207 INFO    ] 200
[2026-10-28 17:42:07,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:42:07,250.250 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:42:07,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:42:07,337.337 INFO    ] No camera update needed
[2026-10-28 17:42:07,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:42:07,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:42:07,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:42:07,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:42:09,390.390 INFO    ] ================================================
[2026-10-28 17:42:09,406.406 INFO    ] Launching Daemon at Wed Oct 28 17:42:09 IST 2026
[2026-10-28 17:42:09,417.417 INFO    ] ================================================
[2026-10-28 17:42:09,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:42:09
[2026-10-28 17:42:10,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:42:10,870.870 INFO    ] Initializing speech engine...
[2026-10-28 17:42:10,877.877 INFO    ] 2026-10-28 17:42:10
[2026-10-28 17:42:11,180.180 INFO    ] 2026-10-28 17:42:11
[2026-10-28 17:42:11,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:42:11,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:42:11,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:42:11,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:42:11,690.690 INFO    ] time= 28/10/2026 17:42:11
[2026-10-28 17:42:11,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:42:11,724.724 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:42:11,844.844 INFO    ] No existing commands found in stream
[2026-10-28 17:42:16,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:42:16,872.872 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-28 17:42:18,523.523 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:42:18,526.526 INFO    ] Checking for system updates...
[2026-10-28 17:42:18,562.562 INFO    ] 200
[2026-10-28 17:42:18,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:42:18,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:42:18,622.622 INFO    ] No update needed
[2026-10-28 17:42:18,625.625 INFO    ] Checking for camera pi updates...
[2026-10-28 17:42:18,663.663 INFO    ] 200
[2026-10-28 17:42:18,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:42:18,713.713 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:42:18,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:42:18,804.804 INFO    ] No camera update needed
[2026-10-28 17:42:18,807.807 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:42:18,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:42:18,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:42:18,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:42:20,863.863 INFO    ] ================================================
[2026-10-28 17:42:20,878.878 INFO    ] Launching Daemon at Wed Oct 28 17:42:20 IST 2026
[2026-10-28 17:42:20,889.889 INFO    ] ================================================
[2026-10-28 17:42:21,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:42:21
[2026-10-28 17:42:22,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:42:22,301.301 INFO    ] Initializing speech engine...
[2026-10-28 17:42:22,321.321 INFO    ] 2026-10-28 17:42:22
[2026-10-28 17:42:22,572.572 INFO    ] 2026-10-28 17:42:22
[2026-10-28 17:42:22,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:42:22,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:42:22,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:42:23,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:42:23,140.140 INFO    ] time= 28/10/2026 17:42:23
[2026-10-28 17:42:23,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:42:23,176.176 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:42:23,307.307 INFO    ] No existing commands found in stream
[2026-10-28 17:42:28,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:42:28,335.335 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-28 17:42:32,776.776 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:42:32,779.779 INFO    ] Checking for system updates...
[2026-10-28 17:42:32,824.824 INFO    ] 200
[2026-10-28 17:42:32,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:42:32,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:42:32,889.889 INFO    ] No update needed
[2026-10-28 17:42:32,892.892 INFO    ] Checking for camera pi updates...
[2026-10-28 17:42:32,935.935 INFO    ] 200
[2026-10-28 17:42:32,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:42:32,995.995 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:42:33,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:42:33,151.151 INFO    ] No camera update needed
[2026-10-28 17:42:33,155.155 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:42:33,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:42:33,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:42:33,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:42:35,229.229 INFO    ] ================================================
[2026-10-28 17:42:35,244.244 INFO    ] Launching Daemon at Wed Oct 28 17:42:35 IST 2026
[2026-10-28 17:42:35,255.255 INFO    ] ================================================
[2026-10-28 17:42:35,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:42:35
[2026-10-28 17:42:36,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:42:36,699.699 INFO    ] Initializing speech engine...
[2026-10-28 17:42:36,708.708 INFO    ] 2026-10-28 17:42:36
[2026-10-28 17:42:37,001.001 INFO    ] 2026-10-28 17:42:36
[2026-10-28 17:42:37,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:42:37,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:42:37,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:42:37,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:42:37,434.434 INFO    ] time= 28/10/2026 17:42:37
[2026-10-28 17:42:37,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:42:37,476.476 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:42:37,621.621 INFO    ] No existing commands found in stream
[2026-10-28 17:42:42,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:42:42,642.642 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 17:42:45,981.981 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:42:45,984.984 INFO    ] Checking for system updates...
[2026-10-28 17:42:46,019.019 INFO    ] 200
[2026-10-28 17:42:46,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:42:46,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:42:46,084.084 INFO    ] No update needed
[2026-10-28 17:42:46,087.087 INFO    ] Checking for camera pi updates...
[2026-10-28 17:42:46,128.128 INFO    ] 200
[2026-10-28 17:42:46,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:42:46,172.172 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:42:46,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:42:46,254.254 INFO    ] No camera update needed
[2026-10-28 17:42:46,256.256 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:42:46,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:42:46,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:42:46,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:42:48,309.309 INFO    ] ================================================
[2026-10-28 17:42:48,326.326 INFO    ] Launching Daemon at Wed Oct 28 17:42:48 IST 2026
[2026-10-28 17:42:48,336.336 INFO    ] ================================================
[2026-10-28 17:42:49,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:42:49
[2026-10-28 17:42:49,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:42:49,970.970 INFO    ] Initializing speech engine...
[2026-10-28 17:42:49,990.990 INFO    ] 2026-10-28 17:42:49
[2026-10-28 17:42:50,241.241 INFO    ] 2026-10-28 17:42:50
[2026-10-28 17:42:50,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:42:50,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:42:50,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:42:50,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:42:50,814.814 INFO    ] time= 28/10/2026 17:42:50
[2026-10-28 17:42:50,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:42:50,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:42:50,967.967 INFO    ] No existing commands found in stream
[2026-10-28 17:42:55,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:42:55,984.984 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-28 17:42:58,928.928 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:42:58,930.930 INFO    ] Checking for system updates...
[2026-10-28 17:42:58,970.970 INFO    ] 200
[2026-10-28 17:42:58,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:42:59,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:42:59,027.027 INFO    ] No update needed
[2026-10-28 17:42:59,030.030 INFO    ] Checking for camera pi updates...
[2026-10-28 17:42:59,063.063 INFO    ] 200
[2026-10-28 17:42:59,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:42:59,106.106 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:42:59,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:42:59,288.288 INFO    ] No camera update needed
[2026-10-28 17:42:59,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:42:59,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:42:59,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:42:59,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:43:01,350.350 INFO    ] ================================================
[2026-10-28 17:43:01,374.374 INFO    ] Launching Daemon at Wed Oct 28 17:43:01 IST 2026
[2026-10-28 17:43:01,417.417 INFO    ] ================================================
[2026-10-28 17:43:02,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:43:02
[2026-10-28 17:43:02,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:43:03,060.060 INFO    ] Initializing speech engine...
[2026-10-28 17:43:03,068.068 INFO    ] 2026-10-28 17:43:03
[2026-10-28 17:43:03,340.340 INFO    ] 2026-10-28 17:43:03
[2026-10-28 17:43:03,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:43:03,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:43:03,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:43:03,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:43:03,893.893 INFO    ] time= 28/10/2026 17:43:03
[2026-10-28 17:43:03,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:43:03,918.918 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:43:04,050.050 INFO    ] No existing commands found in stream
[2026-10-28 17:43:09,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:43:09,080.080 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-28 17:43:11,153.153 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:43:11,156.156 INFO    ] Checking for system updates...
[2026-10-28 17:43:11,191.191 INFO    ] 200
[2026-10-28 17:43:11,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:43:11,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:43:11,271.271 INFO    ] No update needed
[2026-10-28 17:43:11,274.274 INFO    ] Checking for camera pi updates...
[2026-10-28 17:43:11,308.308 INFO    ] 200
[2026-10-28 17:43:11,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:43:11,358.358 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:43:11,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:43:11,444.444 INFO    ] No camera update needed
[2026-10-28 17:43:11,447.447 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:43:11,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:43:11,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:43:11,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:43:13,502.502 INFO    ] ================================================
[2026-10-28 17:43:13,518.518 INFO    ] Launching Daemon at Wed Oct 28 17:43:13 IST 2026
[2026-10-28 17:43:13,529.529 INFO    ] ================================================
[2026-10-28 17:43:14,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:43:14
[2026-10-28 17:43:14,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:43:14,935.935 INFO    ] Initializing speech engine...
[2026-10-28 17:43:14,949.949 INFO    ] 2026-10-28 17:43:14
[2026-10-28 17:43:15,214.214 INFO    ] 2026-10-28 17:43:15
[2026-10-28 17:43:15,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:43:15,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:43:15,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:43:15,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:43:15,735.735 INFO    ] time= 28/10/2026 17:43:15
[2026-10-28 17:43:15,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:43:15,792.792 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:43:15,924.924 INFO    ] No existing commands found in stream
[2026-10-28 17:43:20,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:43:20,948.948 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-28 17:43:23,761.761 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:43:23,764.764 INFO    ] Checking for system updates...
[2026-10-28 17:43:23,803.803 INFO    ] 200
[2026-10-28 17:43:23,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:43:23,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:43:23,866.866 INFO    ] No update needed
[2026-10-28 17:43:23,868.868 INFO    ] Checking for camera pi updates...
[2026-10-28 17:43:23,902.902 INFO    ] 200
[2026-10-28 17:43:23,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:43:23,945.945 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:43:24,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:43:24,034.034 INFO    ] No camera update needed
[2026-10-28 17:43:24,037.037 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:43:24,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:43:24,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:43:24,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:43:26,090.090 INFO    ] ================================================
[2026-10-28 17:43:26,106.106 INFO    ] Launching Daemon at Wed Oct 28 17:43:26 IST 2026
[2026-10-28 17:43:26,118.118 INFO    ] ================================================
[2026-10-28 17:43:26,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:43:26
[2026-10-28 17:43:27,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:43:27,519.519 INFO    ] Initializing speech engine...
[2026-10-28 17:43:27,541.541 INFO    ] 2026-10-28 17:43:27
[2026-10-28 17:43:27,791.791 INFO    ] 2026-10-28 17:43:27
[2026-10-28 17:43:27,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:43:28,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:43:28,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:43:28,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:43:28,344.344 INFO    ] time= 28/10/2026 17:43:28
[2026-10-28 17:43:28,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:43:28,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:43:28,510.510 INFO    ] No existing commands found in stream
[2026-10-28 17:43:33,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:43:33,538.538 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-28 17:43:36,921.921 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:43:36,923.923 INFO    ] Checking for system updates...
[2026-10-28 17:43:36,959.959 INFO    ] 200
[2026-10-28 17:43:36,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:43:37,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:43:37,017.017 INFO    ] No update needed
[2026-10-28 17:43:37,019.019 INFO    ] Checking for camera pi updates...
[2026-10-28 17:43:37,052.052 INFO    ] 200
[2026-10-28 17:43:37,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:43:37,098.098 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:43:37,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:43:37,165.165 INFO    ] No camera update needed
[2026-10-28 17:43:37,167.167 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:43:37,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:43:37,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:43:37,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:43:39,221.221 INFO    ] ================================================
[2026-10-28 17:43:39,236.236 INFO    ] Launching Daemon at Wed Oct 28 17:43:39 IST 2026
[2026-10-28 17:43:39,248.248 INFO    ] ================================================
[2026-10-28 17:43:39,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:43:39
[2026-10-28 17:43:40,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:43:40,689.689 INFO    ] Initializing speech engine...
[2026-10-28 17:43:40,697.697 INFO    ] 2026-10-28 17:43:40
[2026-10-28 17:43:40,945.945 INFO    ] 2026-10-28 17:43:40
[2026-10-28 17:43:40,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:43:41,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:43:41,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:43:41,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:43:41,681.681 INFO    ] time= 28/10/2026 17:43:41
[2026-10-28 17:43:41,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:43:41,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:43:41,930.930 INFO    ] No existing commands found in stream
[2026-10-28 17:43:46,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:43:46,965.965 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-28 17:43:50,713.713 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:43:50,716.716 INFO    ] Checking for system updates...
[2026-10-28 17:43:50,754.754 INFO    ] 200
[2026-10-28 17:43:50,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:43:50,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:43:50,811.811 INFO    ] No update needed
[2026-10-28 17:43:50,814.814 INFO    ] Checking for camera pi updates...
[2026-10-28 17:43:50,847.847 INFO    ] 200
[2026-10-28 17:43:50,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:43:50,890.890 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:43:50,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:43:50,994.994 INFO    ] No camera update needed
[2026-10-28 17:43:50,996.996 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:43:50,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:43:51,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:43:51,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:43:53,047.047 INFO    ] ================================================
[2026-10-28 17:43:53,063.063 INFO    ] Launching Daemon at Wed Oct 28 17:43:53 IST 2026
[2026-10-28 17:43:53,074.074 INFO    ] ================================================
[2026-10-28 17:43:53,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:43:53
[2026-10-28 17:43:54,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:43:54,678.678 INFO    ] Initializing speech engine...
[2026-10-28 17:43:54,686.686 INFO    ] 2026-10-28 17:43:54
[2026-10-28 17:43:54,940.940 INFO    ] 2026-10-28 17:43:54
[2026-10-28 17:43:54,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:43:55,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:43:55,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:43:55,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:43:55,538.538 INFO    ] time= 28/10/2026 17:43:55
[2026-10-28 17:43:55,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:43:55,555.555 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:43:55,665.665 INFO    ] No existing commands found in stream
[2026-10-28 17:44:00,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:44:00,692.692 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-28 17:44:02,730.730 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:44:02,734.734 INFO    ] Checking for system updates...
[2026-10-28 17:44:02,770.770 INFO    ] 200
[2026-10-28 17:44:02,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:44:02,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:44:02,837.837 INFO    ] No update needed
[2026-10-28 17:44:02,844.844 INFO    ] Checking for camera pi updates...
[2026-10-28 17:44:02,883.883 INFO    ] 200
[2026-10-28 17:44:02,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:44:02,927.927 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:44:03,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:44:03,049.049 INFO    ] No camera update needed
[2026-10-28 17:44:03,052.052 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:44:03,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:44:03,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:44:03,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:44:05,111.111 INFO    ] ================================================
[2026-10-28 17:44:05,126.126 INFO    ] Launching Daemon at Wed Oct 28 17:44:05 IST 2026
[2026-10-28 17:44:05,137.137 INFO    ] ================================================
[2026-10-28 17:44:05,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:44:05
[2026-10-28 17:44:06,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:44:06,592.592 INFO    ] Initializing speech engine...
[2026-10-28 17:44:06,599.599 INFO    ] 2026-10-28 17:44:06
[2026-10-28 17:44:06,983.983 INFO    ] 2026-10-28 17:44:06
[2026-10-28 17:44:07,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:44:07,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:44:07,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:44:07,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:44:07,768.768 INFO    ] time= 28/10/2026 17:44:07
[2026-10-28 17:44:07,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:44:07,866.866 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:44:08,018.018 INFO    ] No existing commands found in stream
[2026-10-28 17:44:13,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:44:13,051.051 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-28 17:44:15,215.215 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:44:15,217.217 INFO    ] Checking for system updates...
[2026-10-28 17:44:15,255.255 INFO    ] 200
[2026-10-28 17:44:15,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:44:15,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:44:15,313.313 INFO    ] No update needed
[2026-10-28 17:44:15,316.316 INFO    ] Checking for camera pi updates...
[2026-10-28 17:44:15,355.355 INFO    ] 200
[2026-10-28 17:44:15,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:44:15,399.399 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:44:15,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:44:15,485.485 INFO    ] No camera update needed
[2026-10-28 17:44:15,489.489 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:44:15,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:44:15,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:44:15,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:44:17,546.546 INFO    ] ================================================
[2026-10-28 17:44:17,561.561 INFO    ] Launching Daemon at Wed Oct 28 17:44:17 IST 2026
[2026-10-28 17:44:17,572.572 INFO    ] ================================================
[2026-10-28 17:44:18,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:44:18
[2026-10-28 17:44:18,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:44:19,131.131 INFO    ] Initializing speech engine...
[2026-10-28 17:44:19,142.142 INFO    ] 2026-10-28 17:44:19
[2026-10-28 17:44:19,448.448 INFO    ] 2026-10-28 17:44:19
[2026-10-28 17:44:19,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:44:19,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:44:19,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:44:19,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:44:20,003.003 INFO    ] time= 28/10/2026 17:44:19
[2026-10-28 17:44:20,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:44:20,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:44:20,231.231 INFO    ] No existing commands found in stream
[2026-10-28 17:44:25,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:44:25,266.266 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 17:44:26,659.659 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:44:26,662.662 INFO    ] Checking for system updates...
[2026-10-28 17:44:26,704.704 INFO    ] 200
[2026-10-28 17:44:26,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:44:26,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:44:26,762.762 INFO    ] No update needed
[2026-10-28 17:44:26,765.765 INFO    ] Checking for camera pi updates...
[2026-10-28 17:44:26,801.801 INFO    ] 200
[2026-10-28 17:44:26,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:44:26,865.865 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:44:26,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:44:26,965.965 INFO    ] No camera update needed
[2026-10-28 17:44:26,968.968 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:44:26,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:44:26,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:44:26,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:44:29,023.023 INFO    ] ================================================
[2026-10-28 17:44:29,038.038 INFO    ] Launching Daemon at Wed Oct 28 17:44:29 IST 2026
[2026-10-28 17:44:29,048.048 INFO    ] ================================================
[2026-10-28 17:44:29,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:44:29
[2026-10-28 17:44:30,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:44:30,476.476 INFO    ] Initializing speech engine...
[2026-10-28 17:44:30,480.480 INFO    ] 2026-10-28 17:44:30
[2026-10-28 17:44:30,727.727 INFO    ] 2026-10-28 17:44:30
[2026-10-28 17:44:30,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:44:31,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:44:31,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:44:31,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:44:31,327.327 INFO    ] time= 28/10/2026 17:44:31
[2026-10-28 17:44:31,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:44:31,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:44:31,467.467 INFO    ] No existing commands found in stream
[2026-10-28 17:44:36,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:44:36,479.479 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-28 17:44:39,694.694 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:44:39,697.697 INFO    ] Checking for system updates...
[2026-10-28 17:44:39,733.733 INFO    ] 200
[2026-10-28 17:44:39,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:44:39,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:44:39,790.790 INFO    ] No update needed
[2026-10-28 17:44:39,793.793 INFO    ] Checking for camera pi updates...
[2026-10-28 17:44:39,830.830 INFO    ] 200
[2026-10-28 17:44:39,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:44:39,873.873 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:44:39,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:44:39,976.976 INFO    ] No camera update needed
[2026-10-28 17:44:39,978.978 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:44:39,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:44:39,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:44:39,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:44:42,033.033 INFO    ] ================================================
[2026-10-28 17:44:42,048.048 INFO    ] Launching Daemon at Wed Oct 28 17:44:42 IST 2026
[2026-10-28 17:44:42,058.058 INFO    ] ================================================
[2026-10-28 17:44:42,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:44:42
[2026-10-28 17:44:43,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:44:43,475.475 INFO    ] Initializing speech engine...
[2026-10-28 17:44:43,484.484 INFO    ] 2026-10-28 17:44:43
[2026-10-28 17:44:43,742.742 INFO    ] 2026-10-28 17:44:43
[2026-10-28 17:44:43,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:44:44,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:44:44,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:44:44,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:44:44,433.433 INFO    ] time= 28/10/2026 17:44:44
[2026-10-28 17:44:44,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:44:44,538.538 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:44:44,688.688 INFO    ] No existing commands found in stream
[2026-10-28 17:44:49,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:44:49,715.715 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-28 17:44:52,451.451 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:44:52,454.454 INFO    ] Checking for system updates...
[2026-10-28 17:44:52,490.490 INFO    ] 200
[2026-10-28 17:44:52,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:44:52,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:44:52,548.548 INFO    ] No update needed
[2026-10-28 17:44:52,550.550 INFO    ] Checking for camera pi updates...
[2026-10-28 17:44:52,585.585 INFO    ] 200
[2026-10-28 17:44:52,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:44:52,628.628 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:44:52,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:44:52,712.712 INFO    ] No camera update needed
[2026-10-28 17:44:52,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:44:52,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:44:52,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:44:52,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:44:54,768.768 INFO    ] ================================================
[2026-10-28 17:44:54,783.783 INFO    ] Launching Daemon at Wed Oct 28 17:44:54 IST 2026
[2026-10-28 17:44:54,797.797 INFO    ] ================================================
[2026-10-28 17:44:55,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:44:55
[2026-10-28 17:44:55,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:44:56,208.208 INFO    ] Initializing speech engine...
[2026-10-28 17:44:56,217.217 INFO    ] 2026-10-28 17:44:56
[2026-10-28 17:44:56,464.464 INFO    ] 2026-10-28 17:44:56
[2026-10-28 17:44:56,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:44:56,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:44:56,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:44:57,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:44:57,065.065 INFO    ] time= 28/10/2026 17:44:57
[2026-10-28 17:44:57,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:44:57,089.089 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:44:57,247.247 INFO    ] No existing commands found in stream
[2026-10-28 17:45:02,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:45:02,294.294 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-28 17:45:05,404.404 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:45:05,407.407 INFO    ] Checking for system updates...
[2026-10-28 17:45:05,446.446 INFO    ] 200
[2026-10-28 17:45:05,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:45:05,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:45:05,503.503 INFO    ] No update needed
[2026-10-28 17:45:05,506.506 INFO    ] Checking for camera pi updates...
[2026-10-28 17:45:05,539.539 INFO    ] 200
[2026-10-28 17:45:05,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:45:05,582.582 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:45:05,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:45:05,655.655 INFO    ] No camera update needed
[2026-10-28 17:45:05,657.657 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:45:05,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:45:05,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:45:05,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:45:07,711.711 INFO    ] ================================================
[2026-10-28 17:45:07,726.726 INFO    ] Launching Daemon at Wed Oct 28 17:45:07 IST 2026
[2026-10-28 17:45:07,737.737 INFO    ] ================================================
[2026-10-28 17:45:08,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:45:08
[2026-10-28 17:45:08,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:45:09,289.289 INFO    ] Initializing speech engine...
[2026-10-28 17:45:09,299.299 INFO    ] 2026-10-28 17:45:09
[2026-10-28 17:45:09,562.562 INFO    ] 2026-10-28 17:45:09
[2026-10-28 17:45:09,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:45:09,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:45:09,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:45:10,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:45:10,265.265 INFO    ] time= 28/10/2026 17:45:10
[2026-10-28 17:45:10,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:45:10,353.353 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:45:10,515.515 INFO    ] No existing commands found in stream
[2026-10-28 17:45:15,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:45:15,549.549 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-28 17:45:16,431.431 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:45:16,435.435 INFO    ] Checking for system updates...
[2026-10-28 17:45:16,477.477 INFO    ] 200
[2026-10-28 17:45:16,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:45:16,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:45:16,540.540 INFO    ] No update needed
[2026-10-28 17:45:16,542.542 INFO    ] Checking for camera pi updates...
[2026-10-28 17:45:16,577.577 INFO    ] 200
[2026-10-28 17:45:16,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:45:16,621.621 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:45:16,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:45:16,705.705 INFO    ] No camera update needed
[2026-10-28 17:45:16,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:45:16,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:45:16,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:45:16,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:45:18,762.762 INFO    ] ================================================
[2026-10-28 17:45:18,777.777 INFO    ] Launching Daemon at Wed Oct 28 17:45:18 IST 2026
[2026-10-28 17:45:18,788.788 INFO    ] ================================================
[2026-10-28 17:45:19,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:45:19
[2026-10-28 17:45:19,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:45:20,188.188 INFO    ] Initializing speech engine...
[2026-10-28 17:45:20,196.196 INFO    ] 2026-10-28 17:45:20
[2026-10-28 17:45:20,477.477 INFO    ] 2026-10-28 17:45:20
[2026-10-28 17:45:20,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:45:20,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:45:20,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:45:21,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:45:21,107.107 INFO    ] time= 28/10/2026 17:45:21
[2026-10-28 17:45:21,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:45:21,131.131 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:45:21,275.275 INFO    ] No existing commands found in stream
[2026-10-28 17:45:26,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:45:26,293.293 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 17:45:30,871.871 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:45:30,875.875 INFO    ] Checking for system updates...
[2026-10-28 17:45:30,914.914 INFO    ] 200
[2026-10-28 17:45:30,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:45:30,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:45:30,977.977 INFO    ] No update needed
[2026-10-28 17:45:30,980.980 INFO    ] Checking for camera pi updates...
[2026-10-28 17:45:31,014.014 INFO    ] 200
[2026-10-28 17:45:31,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:45:31,057.057 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:45:31,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:45:31,144.144 INFO    ] No camera update needed
[2026-10-28 17:45:31,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:45:31,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:45:31,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:45:31,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:45:33,199.199 INFO    ] ================================================
[2026-10-28 17:45:33,214.214 INFO    ] Launching Daemon at Wed Oct 28 17:45:33 IST 2026
[2026-10-28 17:45:33,225.225 INFO    ] ================================================
[2026-10-28 17:45:33,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:45:33
[2026-10-28 17:45:34,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:45:34,690.690 INFO    ] Initializing speech engine...
[2026-10-28 17:45:34,716.716 INFO    ] 2026-10-28 17:45:34
[2026-10-28 17:45:34,990.990 INFO    ] 2026-10-28 17:45:34
[2026-10-28 17:45:35,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:45:35,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:45:35,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:45:35,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:45:35,621.621 INFO    ] time= 28/10/2026 17:45:35
[2026-10-28 17:45:35,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:45:35,653.653 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:45:35,796.796 INFO    ] No existing commands found in stream
[2026-10-28 17:45:40,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:45:40,825.825 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 17:45:41,565.565 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:45:41,568.568 INFO    ] Checking for system updates...
[2026-10-28 17:45:41,608.608 INFO    ] 200
[2026-10-28 17:45:41,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:45:41,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:45:41,666.666 INFO    ] No update needed
[2026-10-28 17:45:41,668.668 INFO    ] Checking for camera pi updates...
[2026-10-28 17:45:41,702.702 INFO    ] 200
[2026-10-28 17:45:41,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:45:41,745.745 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:45:41,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:45:41,837.837 INFO    ] No camera update needed
[2026-10-28 17:45:41,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:45:41,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:45:41,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:45:41,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:45:43,891.891 INFO    ] ================================================
[2026-10-28 17:45:43,906.906 INFO    ] Launching Daemon at Wed Oct 28 17:45:43 IST 2026
[2026-10-28 17:45:43,917.917 INFO    ] ================================================
[2026-10-28 17:45:44,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:45:44
[2026-10-28 17:45:45,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:45:45,514.514 INFO    ] Initializing speech engine...
[2026-10-28 17:45:45,523.523 INFO    ] 2026-10-28 17:45:45
[2026-10-28 17:45:45,799.799 INFO    ] 2026-10-28 17:45:45
[2026-10-28 17:45:45,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:45:46,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:45:46,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:45:46,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:45:46,557.557 INFO    ] time= 28/10/2026 17:45:46
[2026-10-28 17:45:46,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:45:46,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:45:46,797.797 INFO    ] No existing commands found in stream
[2026-10-28 17:45:51,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:45:51,810.810 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-28 17:45:52,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:45:52,875.875 INFO    ] Checking for system updates...
[2026-10-28 17:45:52,912.912 INFO    ] 200
[2026-10-28 17:45:52,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:45:52,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:45:52,970.970 INFO    ] No update needed
[2026-10-28 17:45:52,972.972 INFO    ] Checking for camera pi updates...
[2026-10-28 17:45:53,006.006 INFO    ] 200
[2026-10-28 17:45:53,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:45:53,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:45:53,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:45:53,135.135 INFO    ] No camera update needed
[2026-10-28 17:45:53,137.137 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:45:53,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:45:53,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:45:53,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:45:55,189.189 INFO    ] ================================================
[2026-10-28 17:45:55,204.204 INFO    ] Launching Daemon at Wed Oct 28 17:45:55 IST 2026
[2026-10-28 17:45:55,214.214 INFO    ] ================================================
[2026-10-28 17:45:55,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:45:55
[2026-10-28 17:45:56,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:45:56,642.642 INFO    ] Initializing speech engine...
[2026-10-28 17:45:56,651.651 INFO    ] 2026-10-28 17:45:56
[2026-10-28 17:45:56,897.897 INFO    ] 2026-10-28 17:45:56
[2026-10-28 17:45:56,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:45:57,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:45:57,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:45:57,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:45:57,615.615 INFO    ] time= 28/10/2026 17:45:57
[2026-10-28 17:45:57,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:45:57,702.702 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:45:57,849.849 INFO    ] No existing commands found in stream
[2026-10-28 17:46:02,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:46:02,864.864 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 17:46:06,844.844 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:46:06,847.847 INFO    ] Checking for system updates...
[2026-10-28 17:46:06,885.885 INFO    ] 200
[2026-10-28 17:46:06,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:46:06,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:46:06,943.943 INFO    ] No update needed
[2026-10-28 17:46:06,946.946 INFO    ] Checking for camera pi updates...
[2026-10-28 17:46:06,986.986 INFO    ] 200
[2026-10-28 17:46:06,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:46:07,033.033 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:46:07,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:46:07,114.114 INFO    ] No camera update needed
[2026-10-28 17:46:07,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:46:07,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:46:07,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:46:07,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:46:09,169.169 INFO    ] ================================================
[2026-10-28 17:46:09,185.185 INFO    ] Launching Daemon at Wed Oct 28 17:46:09 IST 2026
[2026-10-28 17:46:09,195.195 INFO    ] ================================================
[2026-10-28 17:46:09,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:46:09
[2026-10-28 17:46:10,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:46:10,624.624 INFO    ] Initializing speech engine...
[2026-10-28 17:46:10,633.633 INFO    ] 2026-10-28 17:46:10
[2026-10-28 17:46:10,877.877 INFO    ] 2026-10-28 17:46:10
[2026-10-28 17:46:10,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:46:11,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:46:11,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:46:11,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:46:11,656.656 INFO    ] time= 28/10/2026 17:46:11
[2026-10-28 17:46:11,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:46:11,733.733 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:46:11,872.872 INFO    ] No existing commands found in stream
[2026-10-28 17:46:16,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:46:16,892.892 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-28 17:46:21,272.272 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:46:21,275.275 INFO    ] Checking for system updates...
[2026-10-28 17:46:21,310.310 INFO    ] 200
[2026-10-28 17:46:21,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:46:21,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:46:21,368.368 INFO    ] No update needed
[2026-10-28 17:46:21,371.371 INFO    ] Checking for camera pi updates...
[2026-10-28 17:46:21,408.408 INFO    ] 200
[2026-10-28 17:46:21,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:46:21,451.451 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:46:21,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:46:21,532.532 INFO    ] No camera update needed
[2026-10-28 17:46:21,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:46:21,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:46:21,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:46:21,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:46:23,589.589 INFO    ] ================================================
[2026-10-28 17:46:23,604.604 INFO    ] Launching Daemon at Wed Oct 28 17:46:23 IST 2026
[2026-10-28 17:46:23,615.615 INFO    ] ================================================
[2026-10-28 17:46:24,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:46:24
[2026-10-28 17:46:24,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:46:25,153.153 INFO    ] Initializing speech engine...
[2026-10-28 17:46:25,167.167 INFO    ] 2026-10-28 17:46:25
[2026-10-28 17:46:25,476.476 INFO    ] 2026-10-28 17:46:25
[2026-10-28 17:46:25,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:46:25,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:46:25,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:46:26,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:46:26,339.339 INFO    ] time= 28/10/2026 17:46:26
[2026-10-28 17:46:26,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:46:26,409.409 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:46:26,544.544 INFO    ] No existing commands found in stream
[2026-10-28 17:46:31,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:46:31,560.560 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-28 17:46:34,401.401 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:46:34,403.403 INFO    ] Checking for system updates...
[2026-10-28 17:46:34,440.440 INFO    ] 200
[2026-10-28 17:46:34,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:46:34,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:46:34,503.503 INFO    ] No update needed
[2026-10-28 17:46:34,505.505 INFO    ] Checking for camera pi updates...
[2026-10-28 17:46:34,539.539 INFO    ] 200
[2026-10-28 17:46:34,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:46:34,589.589 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:46:34,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:46:34,687.687 INFO    ] No camera update needed
[2026-10-28 17:46:34,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:46:34,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:46:34,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:46:34,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:46:36,742.742 INFO    ] ================================================
[2026-10-28 17:46:36,757.757 INFO    ] Launching Daemon at Wed Oct 28 17:46:36 IST 2026
[2026-10-28 17:46:36,768.768 INFO    ] ================================================
[2026-10-28 17:46:37,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:46:37
[2026-10-28 17:46:38,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:46:38,319.319 INFO    ] Initializing speech engine...
[2026-10-28 17:46:38,333.333 INFO    ] 2026-10-28 17:46:38
[2026-10-28 17:46:38,596.596 INFO    ] 2026-10-28 17:46:38
[2026-10-28 17:46:38,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:46:39,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:46:39,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:46:39,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:46:39,342.342 INFO    ] time= 28/10/2026 17:46:39
[2026-10-28 17:46:39,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:46:39,414.414 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:46:39,555.555 INFO    ] No existing commands found in stream
[2026-10-28 17:46:44,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:46:44,571.571 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-28 17:46:47,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:46:47,414.414 INFO    ] Checking for system updates...
[2026-10-28 17:46:47,454.454 INFO    ] 200
[2026-10-28 17:46:47,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:46:47,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:46:47,520.520 INFO    ] No update needed
[2026-10-28 17:46:47,523.523 INFO    ] Checking for camera pi updates...
[2026-10-28 17:46:47,570.570 INFO    ] 200
[2026-10-28 17:46:47,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:46:47,613.613 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:46:47,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:46:47,724.724 INFO    ] No camera update needed
[2026-10-28 17:46:47,727.727 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:46:47,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:46:47,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:46:47,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:46:49,779.779 INFO    ] ================================================
[2026-10-28 17:46:49,794.794 INFO    ] Launching Daemon at Wed Oct 28 17:46:49 IST 2026
[2026-10-28 17:46:49,804.804 INFO    ] ================================================
[2026-10-28 17:46:50,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:46:50
[2026-10-28 17:46:50,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:46:51,203.203 INFO    ] Initializing speech engine...
[2026-10-28 17:46:51,225.225 INFO    ] 2026-10-28 17:46:51
[2026-10-28 17:46:51,494.494 INFO    ] 2026-10-28 17:46:51
[2026-10-28 17:46:51,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:46:51,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:46:51,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:46:52,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:46:52,103.103 INFO    ] time= 28/10/2026 17:46:52
[2026-10-28 17:46:52,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:46:52,125.125 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:46:52,245.245 INFO    ] No existing commands found in stream
[2026-10-28 17:46:57,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:46:57,272.272 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 17:47:01,196.196 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:47:01,201.201 INFO    ] Checking for system updates...
[2026-10-28 17:47:01,264.264 INFO    ] 200
[2026-10-28 17:47:01,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:47:01,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:47:01,351.351 INFO    ] No update needed
[2026-10-28 17:47:01,354.354 INFO    ] Checking for camera pi updates...
[2026-10-28 17:47:01,437.437 INFO    ] 200
[2026-10-28 17:47:01,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:47:01,525.525 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:47:01,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:47:01,697.697 INFO    ] No camera update needed
[2026-10-28 17:47:01,700.700 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:47:01,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:47:01,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:47:01,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:47:03,757.757 INFO    ] ================================================
[2026-10-28 17:47:03,772.772 INFO    ] Launching Daemon at Wed Oct 28 17:47:03 IST 2026
[2026-10-28 17:47:03,782.782 INFO    ] ================================================
[2026-10-28 17:47:04,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:47:04
[2026-10-28 17:47:04,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:47:05,246.246 INFO    ] Initializing speech engine...
[2026-10-28 17:47:05,255.255 INFO    ] 2026-10-28 17:47:05
[2026-10-28 17:47:05,505.505 INFO    ] 2026-10-28 17:47:05
[2026-10-28 17:47:05,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:47:05,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:47:05,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:47:06,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:47:06,301.301 INFO    ] time= 28/10/2026 17:47:06
[2026-10-28 17:47:06,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:47:06,385.385 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:47:06,505.505 INFO    ] No existing commands found in stream
[2026-10-28 17:47:11,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:47:11,517.517 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-28 17:47:15,921.921 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:47:15,924.924 INFO    ] Checking for system updates...
[2026-10-28 17:47:15,993.993 INFO    ] 200
[2026-10-28 17:47:15,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:47:16,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:47:16,051.051 INFO    ] No update needed
[2026-10-28 17:47:16,053.053 INFO    ] Checking for camera pi updates...
[2026-10-28 17:47:16,090.090 INFO    ] 200
[2026-10-28 17:47:16,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:47:16,137.137 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:47:16,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:47:16,345.345 INFO    ] No camera update needed
[2026-10-28 17:47:16,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:47:16,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:47:16,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:47:16,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:47:18,401.401 INFO    ] ================================================
[2026-10-28 17:47:18,417.417 INFO    ] Launching Daemon at Wed Oct 28 17:47:18 IST 2026
[2026-10-28 17:47:18,428.428 INFO    ] ================================================
[2026-10-28 17:47:19,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:47:18
[2026-10-28 17:47:19,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:47:19,833.833 INFO    ] Initializing speech engine...
[2026-10-28 17:47:19,841.841 INFO    ] 2026-10-28 17:47:19
[2026-10-28 17:47:20,138.138 INFO    ] 2026-10-28 17:47:20
[2026-10-28 17:47:20,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:47:20,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:47:20,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:47:20,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:47:20,770.770 INFO    ] time= 28/10/2026 17:47:20
[2026-10-28 17:47:20,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:47:20,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:47:20,926.926 INFO    ] No existing commands found in stream
[2026-10-28 17:47:25,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:47:25,956.956 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 17:47:30,533.533 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:47:30,536.536 INFO    ] Checking for system updates...
[2026-10-28 17:47:30,572.572 INFO    ] 200
[2026-10-28 17:47:30,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:47:30,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:47:30,633.633 INFO    ] No update needed
[2026-10-28 17:47:30,636.636 INFO    ] Checking for camera pi updates...
[2026-10-28 17:47:30,671.671 INFO    ] 200
[2026-10-28 17:47:30,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:47:30,720.720 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:47:30,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:47:30,785.785 INFO    ] No camera update needed
[2026-10-28 17:47:30,788.788 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:47:30,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:47:30,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:47:30,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:47:32,847.847 INFO    ] ================================================
[2026-10-28 17:47:32,862.862 INFO    ] Launching Daemon at Wed Oct 28 17:47:32 IST 2026
[2026-10-28 17:47:32,873.873 INFO    ] ================================================
[2026-10-28 17:47:33,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:47:33
[2026-10-28 17:47:34,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:47:34,315.315 INFO    ] Initializing speech engine...
[2026-10-28 17:47:34,331.331 INFO    ] 2026-10-28 17:47:34
[2026-10-28 17:47:34,585.585 INFO    ] 2026-10-28 17:47:34
[2026-10-28 17:47:34,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:47:34,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:47:34,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:47:35,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:47:35,183.183 INFO    ] time= 28/10/2026 17:47:35
[2026-10-28 17:47:35,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:47:35,198.198 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:47:35,306.306 INFO    ] No existing commands found in stream
[2026-10-28 17:47:40,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:47:40,334.334 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-28 17:47:43,728.728 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:47:43,731.731 INFO    ] Checking for system updates...
[2026-10-28 17:47:43,769.769 INFO    ] 200
[2026-10-28 17:47:43,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:47:43,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:47:43,836.836 INFO    ] No update needed
[2026-10-28 17:47:43,839.839 INFO    ] Checking for camera pi updates...
[2026-10-28 17:47:43,874.874 INFO    ] 200
[2026-10-28 17:47:43,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:47:43,927.927 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:47:43,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:47:44,001.001 INFO    ] No camera update needed
[2026-10-28 17:47:44,004.004 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:47:44,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:47:44,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:47:44,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:47:46,062.062 INFO    ] ================================================
[2026-10-28 17:47:46,077.077 INFO    ] Launching Daemon at Wed Oct 28 17:47:46 IST 2026
[2026-10-28 17:47:46,088.088 INFO    ] ================================================
[2026-10-28 17:47:46,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:47:46
[2026-10-28 17:47:47,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:47:47,533.533 INFO    ] Initializing speech engine...
[2026-10-28 17:47:47,540.540 INFO    ] 2026-10-28 17:47:47
[2026-10-28 17:47:47,802.802 INFO    ] 2026-10-28 17:47:47
[2026-10-28 17:47:47,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:47:48,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:47:48,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:47:48,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:47:48,716.716 INFO    ] time= 28/10/2026 17:47:48
[2026-10-28 17:47:48,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:47:48,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:47:48,969.969 INFO    ] No existing commands found in stream
[2026-10-28 17:47:53,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:47:53,984.984 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 17:47:56,506.506 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:47:56,508.508 INFO    ] Checking for system updates...
[2026-10-28 17:47:56,545.545 INFO    ] 200
[2026-10-28 17:47:56,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:47:56,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:47:56,606.606 INFO    ] No update needed
[2026-10-28 17:47:56,608.608 INFO    ] Checking for camera pi updates...
[2026-10-28 17:47:56,642.642 INFO    ] 200
[2026-10-28 17:47:56,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:47:56,696.696 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:47:56,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:47:56,780.780 INFO    ] No camera update needed
[2026-10-28 17:47:56,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:47:56,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:47:56,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:47:56,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:47:58,837.837 INFO    ] ================================================
[2026-10-28 17:47:58,852.852 INFO    ] Launching Daemon at Wed Oct 28 17:47:58 IST 2026
[2026-10-28 17:47:58,862.862 INFO    ] ================================================
[2026-10-28 17:47:59,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:47:59
[2026-10-28 17:48:00,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:48:00,323.323 INFO    ] Initializing speech engine...
[2026-10-28 17:48:00,329.329 INFO    ] 2026-10-28 17:48:00
[2026-10-28 17:48:00,630.630 INFO    ] 2026-10-28 17:48:00
[2026-10-28 17:48:00,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:48:01,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:48:01,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:48:01,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:48:01,300.300 INFO    ] time= 28/10/2026 17:48:01
[2026-10-28 17:48:01,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:48:01,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:48:01,524.524 INFO    ] No existing commands found in stream
[2026-10-28 17:48:06,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:48:06,558.558 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-28 17:48:07,155.155 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:48:07,158.158 INFO    ] Checking for system updates...
[2026-10-28 17:48:07,194.194 INFO    ] 200
[2026-10-28 17:48:07,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:48:07,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:48:07,252.252 INFO    ] No update needed
[2026-10-28 17:48:07,255.255 INFO    ] Checking for camera pi updates...
[2026-10-28 17:48:07,289.289 INFO    ] 200
[2026-10-28 17:48:07,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:48:07,332.332 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:48:07,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:48:07,412.412 INFO    ] No camera update needed
[2026-10-28 17:48:07,414.414 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:48:07,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:48:07,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:48:07,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:48:09,468.468 INFO    ] ================================================
[2026-10-28 17:48:09,483.483 INFO    ] Launching Daemon at Wed Oct 28 17:48:09 IST 2026
[2026-10-28 17:48:09,493.493 INFO    ] ================================================
[2026-10-28 17:48:10,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:48:10
[2026-10-28 17:48:10,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:48:10,899.899 INFO    ] Initializing speech engine...
[2026-10-28 17:48:10,913.913 INFO    ] 2026-10-28 17:48:10
[2026-10-28 17:48:11,180.180 INFO    ] 2026-10-28 17:48:11
[2026-10-28 17:48:11,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:48:11,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:48:11,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:48:11,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:48:11,996.996 INFO    ] time= 28/10/2026 17:48:11
[2026-10-28 17:48:12,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:48:12,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:48:12,294.294 INFO    ] No existing commands found in stream
[2026-10-28 17:48:17,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:48:17,332.332 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 17:48:18,287.287 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:48:18,289.289 INFO    ] Checking for system updates...
[2026-10-28 17:48:18,325.325 INFO    ] 200
[2026-10-28 17:48:18,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:48:18,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:48:18,382.382 INFO    ] No update needed
[2026-10-28 17:48:18,384.384 INFO    ] Checking for camera pi updates...
[2026-10-28 17:48:18,418.418 INFO    ] 200
[2026-10-28 17:48:18,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:48:18,465.465 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:48:18,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:48:18,564.564 INFO    ] No camera update needed
[2026-10-28 17:48:18,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:48:18,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:48:18,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:48:18,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:48:20,620.620 INFO    ] ================================================
[2026-10-28 17:48:20,635.635 INFO    ] Launching Daemon at Wed Oct 28 17:48:20 IST 2026
[2026-10-28 17:48:20,646.646 INFO    ] ================================================
[2026-10-28 17:48:21,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:48:21
[2026-10-28 17:48:21,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:48:22,071.071 INFO    ] Initializing speech engine...
[2026-10-28 17:48:22,096.096 INFO    ] 2026-10-28 17:48:22
[2026-10-28 17:48:22,371.371 INFO    ] 2026-10-28 17:48:22
[2026-10-28 17:48:22,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:48:22,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:48:22,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:48:22,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:48:23,008.008 INFO    ] time= 28/10/2026 17:48:23
[2026-10-28 17:48:23,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:48:23,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:48:23,195.195 INFO    ] No existing commands found in stream
[2026-10-28 17:48:28,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:48:28,223.223 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-28 17:48:29,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:48:29,482.482 INFO    ] Checking for system updates...
[2026-10-28 17:48:29,518.518 INFO    ] 200
[2026-10-28 17:48:29,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:48:29,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:48:29,574.574 INFO    ] No update needed
[2026-10-28 17:48:29,577.577 INFO    ] Checking for camera pi updates...
[2026-10-28 17:48:29,610.610 INFO    ] 200
[2026-10-28 17:48:29,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:48:29,652.652 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:48:29,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:48:29,746.746 INFO    ] No camera update needed
[2026-10-28 17:48:29,748.748 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:48:29,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:48:29,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:48:29,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:48:31,804.804 INFO    ] ================================================
[2026-10-28 17:48:31,820.820 INFO    ] Launching Daemon at Wed Oct 28 17:48:31 IST 2026
[2026-10-28 17:48:31,831.831 INFO    ] ================================================
[2026-10-28 17:48:32,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:48:32
[2026-10-28 17:48:33,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:48:33,407.407 INFO    ] Initializing speech engine...
[2026-10-28 17:48:33,419.419 INFO    ] 2026-10-28 17:48:33
[2026-10-28 17:48:33,704.704 INFO    ] 2026-10-28 17:48:33
[2026-10-28 17:48:33,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:48:34,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:48:34,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:48:34,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:48:34,450.450 INFO    ] time= 28/10/2026 17:48:34
[2026-10-28 17:48:34,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:48:34,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:48:34,671.671 INFO    ] No existing commands found in stream
[2026-10-28 17:48:39,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:48:39,690.690 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-28 17:48:41,988.988 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:48:41,991.991 INFO    ] Checking for system updates...
[2026-10-28 17:48:42,028.028 INFO    ] 200
[2026-10-28 17:48:42,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:48:42,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:48:42,087.087 INFO    ] No update needed
[2026-10-28 17:48:42,090.090 INFO    ] Checking for camera pi updates...
[2026-10-28 17:48:42,125.125 INFO    ] 200
[2026-10-28 17:48:42,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:48:42,170.170 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:48:42,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:48:42,257.257 INFO    ] No camera update needed
[2026-10-28 17:48:42,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:48:42,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:48:42,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:48:42,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:48:44,316.316 INFO    ] ================================================
[2026-10-28 17:48:44,331.331 INFO    ] Launching Daemon at Wed Oct 28 17:48:44 IST 2026
[2026-10-28 17:48:44,342.342 INFO    ] ================================================
[2026-10-28 17:48:44,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:48:44
[2026-10-28 17:48:45,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:48:45,982.982 INFO    ] Initializing speech engine...
[2026-10-28 17:48:45,991.991 INFO    ] 2026-10-28 17:48:45
[2026-10-28 17:48:46,277.277 INFO    ] 2026-10-28 17:48:46
[2026-10-28 17:48:46,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:48:46,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:48:46,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:48:46,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:48:46,888.888 INFO    ] time= 28/10/2026 17:48:46
[2026-10-28 17:48:46,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:48:46,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:48:47,121.121 INFO    ] No existing commands found in stream
[2026-10-28 17:48:52,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:48:52,160.160 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-28 17:48:55,868.868 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:48:55,871.871 INFO    ] Checking for system updates...
[2026-10-28 17:48:55,909.909 INFO    ] 200
[2026-10-28 17:48:55,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:48:55,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:48:55,969.969 INFO    ] No update needed
[2026-10-28 17:48:55,972.972 INFO    ] Checking for camera pi updates...
[2026-10-28 17:48:56,006.006 INFO    ] 200
[2026-10-28 17:48:56,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:48:56,051.051 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:48:56,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:48:56,104.104 INFO    ] No camera update needed
[2026-10-28 17:48:56,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:48:56,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:48:56,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:48:56,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:48:58,159.159 INFO    ] ================================================
[2026-10-28 17:48:58,183.183 INFO    ] Launching Daemon at Wed Oct 28 17:48:58 IST 2026
[2026-10-28 17:48:58,195.195 INFO    ] ================================================
[2026-10-28 17:48:58,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:48:58
[2026-10-28 17:48:59,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:48:59,716.716 INFO    ] Initializing speech engine...
[2026-10-28 17:48:59,722.722 INFO    ] 2026-10-28 17:48:59
[2026-10-28 17:48:59,996.996 INFO    ] 2026-10-28 17:48:59
[2026-10-28 17:49:00,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:49:00,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:49:00,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:49:00,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:49:00,610.610 INFO    ] time= 28/10/2026 17:49:00
[2026-10-28 17:49:00,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:49:00,624.624 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:49:00,741.741 INFO    ] No existing commands found in stream
[2026-10-28 17:49:05,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:49:05,769.769 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 17:49:06,986.986 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:49:06,988.988 INFO    ] Checking for system updates...
[2026-10-28 17:49:07,024.024 INFO    ] 200
[2026-10-28 17:49:07,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:49:07,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:49:07,083.083 INFO    ] No update needed
[2026-10-28 17:49:07,085.085 INFO    ] Checking for camera pi updates...
[2026-10-28 17:49:07,119.119 INFO    ] 200
[2026-10-28 17:49:07,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:49:07,161.161 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:49:07,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:49:07,260.260 INFO    ] No camera update needed
[2026-10-28 17:49:07,262.262 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:49:07,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:49:07,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:49:07,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:49:09,314.314 INFO    ] ================================================
[2026-10-28 17:49:09,329.329 INFO    ] Launching Daemon at Wed Oct 28 17:49:09 IST 2026
[2026-10-28 17:49:09,341.341 INFO    ] ================================================
[2026-10-28 17:49:09,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:49:09
[2026-10-28 17:49:10,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:49:10,765.765 INFO    ] Initializing speech engine...
[2026-10-28 17:49:10,784.784 INFO    ] 2026-10-28 17:49:10
[2026-10-28 17:49:11,036.036 INFO    ] 2026-10-28 17:49:11
[2026-10-28 17:49:11,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:49:11,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:49:11,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:49:11,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:49:11,603.603 INFO    ] time= 28/10/2026 17:49:11
[2026-10-28 17:49:11,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:49:11,650.650 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:49:11,760.760 INFO    ] No existing commands found in stream
[2026-10-28 17:49:16,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:49:16,787.787 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-28 17:49:19,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:49:19,991.991 INFO    ] Checking for system updates...
[2026-10-28 17:49:20,027.027 INFO    ] 200
[2026-10-28 17:49:20,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:49:20,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:49:20,088.088 INFO    ] No update needed
[2026-10-28 17:49:20,090.090 INFO    ] Checking for camera pi updates...
[2026-10-28 17:49:20,125.125 INFO    ] 200
[2026-10-28 17:49:20,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:49:20,168.168 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:49:20,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:49:20,356.356 INFO    ] No camera update needed
[2026-10-28 17:49:20,359.359 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:49:20,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:49:20,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:49:20,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:49:22,415.415 INFO    ] ================================================
[2026-10-28 17:49:22,430.430 INFO    ] Launching Daemon at Wed Oct 28 17:49:22 IST 2026
[2026-10-28 17:49:22,442.442 INFO    ] ================================================
[2026-10-28 17:49:23,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:49:23
[2026-10-28 17:49:23,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:49:23,860.860 INFO    ] Initializing speech engine...
[2026-10-28 17:49:23,868.868 INFO    ] 2026-10-28 17:49:23
[2026-10-28 17:49:24,116.116 INFO    ] 2026-10-28 17:49:24
[2026-10-28 17:49:24,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:49:24,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:49:24,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:49:24,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:49:24,684.684 INFO    ] time= 28/10/2026 17:49:24
[2026-10-28 17:49:24,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:49:24,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:49:24,823.823 INFO    ] No existing commands found in stream
[2026-10-28 17:49:29,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:49:29,854.854 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-28 17:49:33,030.030 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:49:33,033.033 INFO    ] Checking for system updates...
[2026-10-28 17:49:33,072.072 INFO    ] 200
[2026-10-28 17:49:33,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:49:33,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:49:33,137.137 INFO    ] No update needed
[2026-10-28 17:49:33,139.139 INFO    ] Checking for camera pi updates...
[2026-10-28 17:49:33,173.173 INFO    ] 200
[2026-10-28 17:49:33,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:49:33,216.216 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:49:33,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:49:33,307.307 INFO    ] No camera update needed
[2026-10-28 17:49:33,312.312 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:49:33,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:49:33,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:49:33,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:49:35,370.370 INFO    ] ================================================
[2026-10-28 17:49:35,386.386 INFO    ] Launching Daemon at Wed Oct 28 17:49:35 IST 2026
[2026-10-28 17:49:35,397.397 INFO    ] ================================================
[2026-10-28 17:49:36,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:49:36
[2026-10-28 17:49:36,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:49:36,979.979 INFO    ] Initializing speech engine...
[2026-10-28 17:49:36,988.988 INFO    ] 2026-10-28 17:49:36
[2026-10-28 17:49:37,262.262 INFO    ] 2026-10-28 17:49:37
[2026-10-28 17:49:37,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:49:37,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:49:37,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:49:37,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:49:37,874.874 INFO    ] time= 28/10/2026 17:49:37
[2026-10-28 17:49:37,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:49:37,889.889 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:49:38,003.003 INFO    ] No existing commands found in stream
[2026-10-28 17:49:43,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:49:43,036.036 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-28 17:49:44,651.651 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:49:44,654.654 INFO    ] Checking for system updates...
[2026-10-28 17:49:44,702.702 INFO    ] 200
[2026-10-28 17:49:44,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:49:44,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:49:44,760.760 INFO    ] No update needed
[2026-10-28 17:49:44,762.762 INFO    ] Checking for camera pi updates...
[2026-10-28 17:49:44,797.797 INFO    ] 200
[2026-10-28 17:49:44,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:49:44,839.839 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:49:44,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:49:44,941.941 INFO    ] No camera update needed
[2026-10-28 17:49:44,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:49:44,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:49:44,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:49:44,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:49:47,998.998 INFO    ] ================================================
[2026-10-28 17:49:47,014.014 INFO    ] Launching Daemon at Wed Oct 28 17:49:47 IST 2026
[2026-10-28 17:49:47,025.025 INFO    ] ================================================
[2026-10-28 17:49:47,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:49:47
[2026-10-28 17:49:48,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:49:48,683.683 INFO    ] Initializing speech engine...
[2026-10-28 17:49:48,696.696 INFO    ] 2026-10-28 17:49:48
[2026-10-28 17:49:48,980.980 INFO    ] 2026-10-28 17:49:48
[2026-10-28 17:49:49,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:49:49,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:49:49,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:49:49,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:49:49,780.780 INFO    ] time= 28/10/2026 17:49:49
[2026-10-28 17:49:49,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:49:49,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:49:49,991.991 INFO    ] No existing commands found in stream
[2026-10-28 17:49:55,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:49:55,005.005 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-28 17:49:57,505.505 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:49:57,508.508 INFO    ] Checking for system updates...
[2026-10-28 17:49:57,544.544 INFO    ] 200
[2026-10-28 17:49:57,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:49:57,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:49:57,607.607 INFO    ] No update needed
[2026-10-28 17:49:57,610.610 INFO    ] Checking for camera pi updates...
[2026-10-28 17:49:57,643.643 INFO    ] 200
[2026-10-28 17:49:57,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:49:57,686.686 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:49:57,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:49:57,790.790 INFO    ] No camera update needed
[2026-10-28 17:49:57,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:49:57,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:49:57,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:49:57,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:49:59,846.846 INFO    ] ================================================
[2026-10-28 17:49:59,862.862 INFO    ] Launching Daemon at Wed Oct 28 17:49:59 IST 2026
[2026-10-28 17:49:59,873.873 INFO    ] ================================================
[2026-10-28 17:50:00,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:50:00
[2026-10-28 17:50:01,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:50:01,289.289 INFO    ] Initializing speech engine...
[2026-10-28 17:50:01,298.298 INFO    ] 2026-10-28 17:50:01
[2026-10-28 17:50:01,594.594 INFO    ] 2026-10-28 17:50:01
[2026-10-28 17:50:01,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:50:01,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:50:01,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:50:02,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:50:02,523.523 INFO    ] time= 28/10/2026 17:50:02
[2026-10-28 17:50:02,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:50:02,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:50:02,693.693 INFO    ] No existing commands found in stream
[2026-10-28 17:50:07,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:50:07,706.706 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 17:50:10,423.423 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:50:10,426.426 INFO    ] Checking for system updates...
[2026-10-28 17:50:10,466.466 INFO    ] 200
[2026-10-28 17:50:10,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:50:10,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:50:10,530.530 INFO    ] No update needed
[2026-10-28 17:50:10,532.532 INFO    ] Checking for camera pi updates...
[2026-10-28 17:50:10,567.567 INFO    ] 200
[2026-10-28 17:50:10,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:50:10,620.620 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:50:10,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:50:10,711.711 INFO    ] No camera update needed
[2026-10-28 17:50:10,713.713 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:50:10,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:50:10,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:50:10,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:50:12,769.769 INFO    ] ================================================
[2026-10-28 17:50:12,785.785 INFO    ] Launching Daemon at Wed Oct 28 17:50:12 IST 2026
[2026-10-28 17:50:12,796.796 INFO    ] ================================================
[2026-10-28 17:50:13,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:50:13
[2026-10-28 17:50:14,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:50:14,315.315 INFO    ] Initializing speech engine...
[2026-10-28 17:50:14,324.324 INFO    ] 2026-10-28 17:50:14
[2026-10-28 17:50:14,599.599 INFO    ] 2026-10-28 17:50:14
[2026-10-28 17:50:14,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:50:14,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:50:14,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:50:15,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:50:15,219.219 INFO    ] time= 28/10/2026 17:50:15
[2026-10-28 17:50:15,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:50:15,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:50:15,417.417 INFO    ] No existing commands found in stream
[2026-10-28 17:50:20,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:50:20,442.442 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-28 17:50:22,443.443 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:50:22,445.445 INFO    ] Checking for system updates...
[2026-10-28 17:50:22,481.481 INFO    ] 200
[2026-10-28 17:50:22,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:50:22,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:50:22,537.537 INFO    ] No update needed
[2026-10-28 17:50:22,540.540 INFO    ] Checking for camera pi updates...
[2026-10-28 17:50:22,573.573 INFO    ] 200
[2026-10-28 17:50:22,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:50:22,623.623 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:50:22,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:50:22,707.707 INFO    ] No camera update needed
[2026-10-28 17:50:22,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:50:22,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:50:22,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:50:22,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:50:24,766.766 INFO    ] ================================================
[2026-10-28 17:50:24,782.782 INFO    ] Launching Daemon at Wed Oct 28 17:50:24 IST 2026
[2026-10-28 17:50:24,794.794 INFO    ] ================================================
[2026-10-28 17:50:25,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:50:25
[2026-10-28 17:50:26,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:50:26,445.445 INFO    ] Initializing speech engine...
[2026-10-28 17:50:26,458.458 INFO    ] 2026-10-28 17:50:26
[2026-10-28 17:50:26,740.740 INFO    ] 2026-10-28 17:50:26
[2026-10-28 17:50:26,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:50:27,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:50:27,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:50:27,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:50:27,518.518 INFO    ] time= 28/10/2026 17:50:27
[2026-10-28 17:50:27,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:50:27,584.584 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:50:27,737.737 INFO    ] No existing commands found in stream
[2026-10-28 17:50:32,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:50:32,765.765 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-28 17:50:34,026.026 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:50:34,028.028 INFO    ] Checking for system updates...
[2026-10-28 17:50:34,069.069 INFO    ] 200
[2026-10-28 17:50:34,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:50:34,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:50:34,129.129 INFO    ] No update needed
[2026-10-28 17:50:34,132.132 INFO    ] Checking for camera pi updates...
[2026-10-28 17:50:34,167.167 INFO    ] 200
[2026-10-28 17:50:34,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:50:34,218.218 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:50:34,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:50:34,308.308 INFO    ] No camera update needed
[2026-10-28 17:50:34,310.310 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:50:34,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:50:34,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:50:34,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:50:36,365.365 INFO    ] ================================================
[2026-10-28 17:50:36,380.380 INFO    ] Launching Daemon at Wed Oct 28 17:50:36 IST 2026
[2026-10-28 17:50:36,391.391 INFO    ] ================================================
[2026-10-28 17:50:36,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:50:36
[2026-10-28 17:50:37,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:50:37,842.842 INFO    ] Initializing speech engine...
[2026-10-28 17:50:37,851.851 INFO    ] 2026-10-28 17:50:37
[2026-10-28 17:50:38,101.101 INFO    ] 2026-10-28 17:50:38
[2026-10-28 17:50:38,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:50:38,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:50:38,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:50:38,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:50:38,915.915 INFO    ] time= 28/10/2026 17:50:38
[2026-10-28 17:50:38,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:50:39,039.039 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:50:39,210.210 INFO    ] No existing commands found in stream
[2026-10-28 17:50:44,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:50:44,233.233 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-28 17:50:46,313.313 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:50:46,316.316 INFO    ] Checking for system updates...
[2026-10-28 17:50:46,355.355 INFO    ] 200
[2026-10-28 17:50:46,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:50:46,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:50:46,414.414 INFO    ] No update needed
[2026-10-28 17:50:46,417.417 INFO    ] Checking for camera pi updates...
[2026-10-28 17:50:46,455.455 INFO    ] 200
[2026-10-28 17:50:46,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:50:46,498.498 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:50:46,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:50:46,580.580 INFO    ] No camera update needed
[2026-10-28 17:50:46,582.582 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:50:46,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:50:46,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:50:46,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:50:48,636.636 INFO    ] ================================================
[2026-10-28 17:50:48,650.650 INFO    ] Launching Daemon at Wed Oct 28 17:50:48 IST 2026
[2026-10-28 17:50:48,661.661 INFO    ] ================================================
[2026-10-28 17:50:49,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:50:49
[2026-10-28 17:50:49,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:50:50,259.259 INFO    ] Initializing speech engine...
[2026-10-28 17:50:50,267.267 INFO    ] 2026-10-28 17:50:50
[2026-10-28 17:50:50,540.540 INFO    ] 2026-10-28 17:50:50
[2026-10-28 17:50:50,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:50:50,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:50:50,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:50:51,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:50:51,323.323 INFO    ] time= 28/10/2026 17:50:51
[2026-10-28 17:50:51,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:50:51,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:50:51,553.553 INFO    ] No existing commands found in stream
[2026-10-28 17:50:56,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:50:56,571.571 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 17:51:00,149.149 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:51:00,152.152 INFO    ] Checking for system updates...
[2026-10-28 17:51:00,192.192 INFO    ] 200
[2026-10-28 17:51:00,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:51:00,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:51:00,251.251 INFO    ] No update needed
[2026-10-28 17:51:00,254.254 INFO    ] Checking for camera pi updates...
[2026-10-28 17:51:00,288.288 INFO    ] 200
[2026-10-28 17:51:00,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:51:00,332.332 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:51:00,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:51:00,406.406 INFO    ] No camera update needed
[2026-10-28 17:51:00,408.408 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:51:00,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:51:00,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:51:00,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:51:02,477.477 INFO    ] ================================================
[2026-10-28 17:51:02,493.493 INFO    ] Launching Daemon at Wed Oct 28 17:51:02 IST 2026
[2026-10-28 17:51:02,509.509 INFO    ] ================================================
[2026-10-28 17:51:03,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:51:03
[2026-10-28 17:51:03,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:51:04,060.060 INFO    ] Initializing speech engine...
[2026-10-28 17:51:04,067.067 INFO    ] 2026-10-28 17:51:04
[2026-10-28 17:51:04,316.316 INFO    ] 2026-10-28 17:51:04
[2026-10-28 17:51:04,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:51:04,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:51:04,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:51:05,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:51:05,119.119 INFO    ] time= 28/10/2026 17:51:05
[2026-10-28 17:51:05,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:51:05,232.232 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:51:05,399.399 INFO    ] No existing commands found in stream
[2026-10-28 17:51:10,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:51:10,427.427 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-28 17:51:13,284.284 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:51:13,287.287 INFO    ] Checking for system updates...
[2026-10-28 17:51:13,322.322 INFO    ] 200
[2026-10-28 17:51:13,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:51:13,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:51:13,380.380 INFO    ] No update needed
[2026-10-28 17:51:13,382.382 INFO    ] Checking for camera pi updates...
[2026-10-28 17:51:13,416.416 INFO    ] 200
[2026-10-28 17:51:13,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:51:13,462.462 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:51:13,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:51:13,550.550 INFO    ] No camera update needed
[2026-10-28 17:51:13,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:51:13,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:51:13,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:51:13,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:51:15,606.606 INFO    ] ================================================
[2026-10-28 17:51:15,622.622 INFO    ] Launching Daemon at Wed Oct 28 17:51:15 IST 2026
[2026-10-28 17:51:15,633.633 INFO    ] ================================================
[2026-10-28 17:51:16,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:51:16
[2026-10-28 17:51:16,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:51:17,088.088 INFO    ] Initializing speech engine...
[2026-10-28 17:51:17,095.095 INFO    ] 2026-10-28 17:51:17
[2026-10-28 17:51:17,377.377 INFO    ] 2026-10-28 17:51:17
[2026-10-28 17:51:17,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:51:17,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:51:17,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:51:18,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:51:18,160.160 INFO    ] time= 28/10/2026 17:51:18
[2026-10-28 17:51:18,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:51:18,233.233 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:51:18,381.381 INFO    ] No existing commands found in stream
[2026-10-28 17:51:23,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:51:23,417.417 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-28 17:51:27,103.103 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:51:27,106.106 INFO    ] Checking for system updates...
[2026-10-28 17:51:27,142.142 INFO    ] 200
[2026-10-28 17:51:27,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:51:27,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:51:27,201.201 INFO    ] No update needed
[2026-10-28 17:51:27,204.204 INFO    ] Checking for camera pi updates...
[2026-10-28 17:51:27,239.239 INFO    ] 200
[2026-10-28 17:51:27,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:51:27,282.282 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:51:27,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:51:27,464.464 INFO    ] No camera update needed
[2026-10-28 17:51:27,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:51:27,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:51:27,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:51:27,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:51:29,520.520 INFO    ] ================================================
[2026-10-28 17:51:29,535.535 INFO    ] Launching Daemon at Wed Oct 28 17:51:29 IST 2026
[2026-10-28 17:51:29,546.546 INFO    ] ================================================
[2026-10-28 17:51:30,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:51:30
[2026-10-28 17:51:30,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:51:30,961.961 INFO    ] Initializing speech engine...
[2026-10-28 17:51:30,986.986 INFO    ] 2026-10-28 17:51:30
[2026-10-28 17:51:31,256.256 INFO    ] 2026-10-28 17:51:31
[2026-10-28 17:51:31,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:51:31,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:51:31,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:51:31,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:51:31,913.913 INFO    ] time= 28/10/2026 17:51:31
[2026-10-28 17:51:31,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:51:31,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:51:32,055.055 INFO    ] No existing commands found in stream
[2026-10-28 17:51:37,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:51:37,077.077 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 17:51:38,866.866 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:51:38,868.868 INFO    ] Checking for system updates...
[2026-10-28 17:51:38,906.906 INFO    ] 200
[2026-10-28 17:51:38,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:51:38,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:51:38,975.975 INFO    ] No update needed
[2026-10-28 17:51:38,977.977 INFO    ] Checking for camera pi updates...
[2026-10-28 17:51:39,014.014 INFO    ] 200
[2026-10-28 17:51:39,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:51:39,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:51:39,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:51:39,139.139 INFO    ] No camera update needed
[2026-10-28 17:51:39,141.141 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:51:39,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:51:39,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:51:39,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:51:41,194.194 INFO    ] ================================================
[2026-10-28 17:51:41,209.209 INFO    ] Launching Daemon at Wed Oct 28 17:51:41 IST 2026
[2026-10-28 17:51:41,220.220 INFO    ] ================================================
[2026-10-28 17:51:41,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:51:41
[2026-10-28 17:51:42,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:51:42,820.820 INFO    ] Initializing speech engine...
[2026-10-28 17:51:42,827.827 INFO    ] 2026-10-28 17:51:42
[2026-10-28 17:51:43,100.100 INFO    ] 2026-10-28 17:51:43
[2026-10-28 17:51:43,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:51:43,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:51:43,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:51:43,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:51:43,723.723 INFO    ] time= 28/10/2026 17:51:43
[2026-10-28 17:51:43,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:51:43,804.804 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:51:43,933.933 INFO    ] No existing commands found in stream
[2026-10-28 17:51:48,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:51:48,987.987 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-28 17:51:52,511.511 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:51:52,514.514 INFO    ] Checking for system updates...
[2026-10-28 17:51:52,549.549 INFO    ] 200
[2026-10-28 17:51:52,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:51:52,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:51:52,607.607 INFO    ] No update needed
[2026-10-28 17:51:52,609.609 INFO    ] Checking for camera pi updates...
[2026-10-28 17:51:52,646.646 INFO    ] 200
[2026-10-28 17:51:52,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:51:52,692.692 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:51:52,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:51:52,761.761 INFO    ] No camera update needed
[2026-10-28 17:51:52,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:51:52,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:51:52,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:51:52,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:51:54,815.815 INFO    ] ================================================
[2026-10-28 17:51:54,830.830 INFO    ] Launching Daemon at Wed Oct 28 17:51:54 IST 2026
[2026-10-28 17:51:54,841.841 INFO    ] ================================================
[2026-10-28 17:51:55,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:51:55
[2026-10-28 17:51:56,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:51:56,308.308 INFO    ] Initializing speech engine...
[2026-10-28 17:51:56,317.317 INFO    ] 2026-10-28 17:51:56
[2026-10-28 17:51:56,575.575 INFO    ] 2026-10-28 17:51:56
[2026-10-28 17:51:56,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:51:56,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:51:57,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:51:57,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:51:57,357.357 INFO    ] time= 28/10/2026 17:51:57
[2026-10-28 17:51:57,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:51:57,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:51:57,662.662 INFO    ] No existing commands found in stream
[2026-10-28 17:52:02,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:52:02,695.695 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-28 17:52:05,431.431 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:52:05,433.433 INFO    ] Checking for system updates...
[2026-10-28 17:52:05,470.470 INFO    ] 200
[2026-10-28 17:52:05,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:52:05,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:52:05,537.537 INFO    ] No update needed
[2026-10-28 17:52:05,540.540 INFO    ] Checking for camera pi updates...
[2026-10-28 17:52:05,578.578 INFO    ] 200
[2026-10-28 17:52:05,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:52:05,625.625 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:52:05,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:52:05,709.709 INFO    ] No camera update needed
[2026-10-28 17:52:05,712.712 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:52:05,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:52:05,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:52:05,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:52:07,768.768 INFO    ] ================================================
[2026-10-28 17:52:07,783.783 INFO    ] Launching Daemon at Wed Oct 28 17:52:07 IST 2026
[2026-10-28 17:52:07,794.794 INFO    ] ================================================
[2026-10-28 17:52:08,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:52:08
[2026-10-28 17:52:09,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:52:09,417.417 INFO    ] Initializing speech engine...
[2026-10-28 17:52:09,423.423 INFO    ] 2026-10-28 17:52:09
[2026-10-28 17:52:09,719.719 INFO    ] 2026-10-28 17:52:09
[2026-10-28 17:52:09,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:52:10,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:52:10,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:52:10,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:52:10,514.514 INFO    ] time= 28/10/2026 17:52:10
[2026-10-28 17:52:10,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:52:10,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:52:10,785.785 INFO    ] No existing commands found in stream
[2026-10-28 17:52:15,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:52:15,824.824 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 17:52:17,635.635 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:52:17,638.638 INFO    ] Checking for system updates...
[2026-10-28 17:52:17,675.675 INFO    ] 200
[2026-10-28 17:52:17,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:52:17,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:52:17,734.734 INFO    ] No update needed
[2026-10-28 17:52:17,737.737 INFO    ] Checking for camera pi updates...
[2026-10-28 17:52:17,775.775 INFO    ] 200
[2026-10-28 17:52:17,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:52:17,824.824 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:52:17,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:52:17,909.909 INFO    ] No camera update needed
[2026-10-28 17:52:17,912.912 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:52:17,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:52:17,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:52:17,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:52:19,964.964 INFO    ] ================================================
[2026-10-28 17:52:19,980.980 INFO    ] Launching Daemon at Wed Oct 28 17:52:19 IST 2026
[2026-10-28 17:52:19,990.990 INFO    ] ================================================
[2026-10-28 17:52:20,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:52:20
[2026-10-28 17:52:21,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:52:21,431.431 INFO    ] Initializing speech engine...
[2026-10-28 17:52:21,450.450 INFO    ] 2026-10-28 17:52:21
[2026-10-28 17:52:21,699.699 INFO    ] 2026-10-28 17:52:21
[2026-10-28 17:52:21,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:52:22,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:52:22,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:52:22,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:52:22,486.486 INFO    ] time= 28/10/2026 17:52:22
[2026-10-28 17:52:22,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:52:22,569.569 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:52:22,702.702 INFO    ] No existing commands found in stream
[2026-10-28 17:52:27,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:52:27,718.718 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-28 17:52:30,342.342 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:52:30,344.344 INFO    ] Checking for system updates...
[2026-10-28 17:52:30,384.384 INFO    ] 200
[2026-10-28 17:52:30,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:52:30,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:52:30,440.440 INFO    ] No update needed
[2026-10-28 17:52:30,443.443 INFO    ] Checking for camera pi updates...
[2026-10-28 17:52:30,477.477 INFO    ] 200
[2026-10-28 17:52:30,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:52:30,520.520 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:52:30,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:52:30,576.576 INFO    ] No camera update needed
[2026-10-28 17:52:30,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:52:30,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:52:30,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:52:30,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:52:32,634.634 INFO    ] ================================================
[2026-10-28 17:52:32,650.650 INFO    ] Launching Daemon at Wed Oct 28 17:52:32 IST 2026
[2026-10-28 17:52:32,661.661 INFO    ] ================================================
[2026-10-28 17:52:33,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:52:33
[2026-10-28 17:52:33,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:52:34,120.120 INFO    ] Initializing speech engine...
[2026-10-28 17:52:34,128.128 INFO    ] 2026-10-28 17:52:34
[2026-10-28 17:52:34,426.426 INFO    ] 2026-10-28 17:52:34
[2026-10-28 17:52:34,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:52:34,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:52:34,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:52:35,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:52:35,054.054 INFO    ] time= 28/10/2026 17:52:35
[2026-10-28 17:52:35,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:52:35,097.097 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:52:35,224.224 INFO    ] No existing commands found in stream
[2026-10-28 17:52:40,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:52:40,239.239 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 17:52:43,099.099 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:52:43,102.102 INFO    ] Checking for system updates...
[2026-10-28 17:52:43,138.138 INFO    ] 200
[2026-10-28 17:52:43,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:52:43,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:52:43,199.199 INFO    ] No update needed
[2026-10-28 17:52:43,201.201 INFO    ] Checking for camera pi updates...
[2026-10-28 17:52:43,235.235 INFO    ] 200
[2026-10-28 17:52:43,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:52:43,277.277 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:52:43,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:52:43,347.347 INFO    ] No camera update needed
[2026-10-28 17:52:43,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:52:43,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:52:43,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:52:43,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:52:45,403.403 INFO    ] ================================================
[2026-10-28 17:52:45,419.419 INFO    ] Launching Daemon at Wed Oct 28 17:52:45 IST 2026
[2026-10-28 17:52:45,430.430 INFO    ] ================================================
[2026-10-28 17:52:46,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:52:46
[2026-10-28 17:52:46,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:52:47,032.032 INFO    ] Initializing speech engine...
[2026-10-28 17:52:47,047.047 INFO    ] 2026-10-28 17:52:47
[2026-10-28 17:52:47,357.357 INFO    ] 2026-10-28 17:52:47
[2026-10-28 17:52:47,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:52:47,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:52:47,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:52:48,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:52:48,120.120 INFO    ] time= 28/10/2026 17:52:48
[2026-10-28 17:52:48,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:52:48,239.239 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:52:48,422.422 INFO    ] No existing commands found in stream
[2026-10-28 17:52:53,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:52:53,456.456 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-28 17:52:57,108.108 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:52:57,111.111 INFO    ] Checking for system updates...
[2026-10-28 17:52:57,153.153 INFO    ] 200
[2026-10-28 17:52:57,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:52:57,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:52:57,211.211 INFO    ] No update needed
[2026-10-28 17:52:57,213.213 INFO    ] Checking for camera pi updates...
[2026-10-28 17:52:57,247.247 INFO    ] 200
[2026-10-28 17:52:57,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:52:57,289.289 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:52:57,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:52:57,357.357 INFO    ] No camera update needed
[2026-10-28 17:52:57,359.359 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:52:57,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:52:57,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:52:57,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:52:59,412.412 INFO    ] ================================================
[2026-10-28 17:52:59,427.427 INFO    ] Launching Daemon at Wed Oct 28 17:52:59 IST 2026
[2026-10-28 17:52:59,438.438 INFO    ] ================================================
[2026-10-28 17:53:00,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:53:00
[2026-10-28 17:53:00,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:53:00,843.843 INFO    ] Initializing speech engine...
[2026-10-28 17:53:00,855.855 INFO    ] 2026-10-28 17:53:00
[2026-10-28 17:53:01,119.119 INFO    ] 2026-10-28 17:53:01
[2026-10-28 17:53:01,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:53:01,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:53:01,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:53:01,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:53:01,701.701 INFO    ] time= 28/10/2026 17:53:01
[2026-10-28 17:53:01,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:53:01,779.779 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:53:01,889.889 INFO    ] No existing commands found in stream
[2026-10-28 17:53:06,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:53:06,902.902 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-28 17:53:08,474.474 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:53:08,476.476 INFO    ] Checking for system updates...
[2026-10-28 17:53:08,512.512 INFO    ] 200
[2026-10-28 17:53:08,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:53:08,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:53:08,570.570 INFO    ] No update needed
[2026-10-28 17:53:08,572.572 INFO    ] Checking for camera pi updates...
[2026-10-28 17:53:08,606.606 INFO    ] 200
[2026-10-28 17:53:08,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:53:08,649.649 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:53:08,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:53:08,733.733 INFO    ] No camera update needed
[2026-10-28 17:53:08,735.735 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:53:08,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:53:08,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:53:08,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:53:10,793.793 INFO    ] ================================================
[2026-10-28 17:53:10,808.808 INFO    ] Launching Daemon at Wed Oct 28 17:53:10 IST 2026
[2026-10-28 17:53:10,819.819 INFO    ] ================================================
[2026-10-28 17:53:11,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:53:11
[2026-10-28 17:53:11,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:53:12,243.243 INFO    ] Initializing speech engine...
[2026-10-28 17:53:12,252.252 INFO    ] 2026-10-28 17:53:12
[2026-10-28 17:53:12,501.501 INFO    ] 2026-10-28 17:53:12
[2026-10-28 17:53:12,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:53:12,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:53:12,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:53:13,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:53:13,121.121 INFO    ] time= 28/10/2026 17:53:13
[2026-10-28 17:53:13,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:53:13,212.212 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:53:13,336.336 INFO    ] No existing commands found in stream
[2026-10-28 17:53:18,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:53:18,363.363 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-28 17:53:21,246.246 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:53:21,249.249 INFO    ] Checking for system updates...
[2026-10-28 17:53:21,285.285 INFO    ] 200
[2026-10-28 17:53:21,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:53:21,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:53:21,345.345 INFO    ] No update needed
[2026-10-28 17:53:21,348.348 INFO    ] Checking for camera pi updates...
[2026-10-28 17:53:21,386.386 INFO    ] 200
[2026-10-28 17:53:21,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:53:21,434.434 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:53:21,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:53:21,518.518 INFO    ] No camera update needed
[2026-10-28 17:53:21,520.520 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:53:21,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:53:21,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:53:21,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:53:23,574.574 INFO    ] ================================================
[2026-10-28 17:53:23,589.589 INFO    ] Launching Daemon at Wed Oct 28 17:53:23 IST 2026
[2026-10-28 17:53:23,601.601 INFO    ] ================================================
[2026-10-28 17:53:24,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:53:24
[2026-10-28 17:53:24,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:53:25,102.102 INFO    ] Initializing speech engine...
[2026-10-28 17:53:25,115.115 INFO    ] 2026-10-28 17:53:25
[2026-10-28 17:53:25,364.364 INFO    ] 2026-10-28 17:53:25
[2026-10-28 17:53:25,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:53:25,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:53:25,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:53:25,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:53:25,968.968 INFO    ] time= 28/10/2026 17:53:25
[2026-10-28 17:53:25,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:53:26,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:53:26,171.171 INFO    ] No existing commands found in stream
[2026-10-28 17:53:31,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:53:31,185.185 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 17:53:34,071.071 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:53:34,074.074 INFO    ] Checking for system updates...
[2026-10-28 17:53:34,110.110 INFO    ] 200
[2026-10-28 17:53:34,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:53:34,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:53:34,175.175 INFO    ] No update needed
[2026-10-28 17:53:34,177.177 INFO    ] Checking for camera pi updates...
[2026-10-28 17:53:34,211.211 INFO    ] 200
[2026-10-28 17:53:34,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:53:34,260.260 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:53:34,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:53:34,337.337 INFO    ] No camera update needed
[2026-10-28 17:53:34,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:53:34,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:53:34,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:53:34,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:53:36,393.393 INFO    ] ================================================
[2026-10-28 17:53:36,408.408 INFO    ] Launching Daemon at Wed Oct 28 17:53:36 IST 2026
[2026-10-28 17:53:36,419.419 INFO    ] ================================================
[2026-10-28 17:53:37,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:53:37
[2026-10-28 17:53:37,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:53:38,067.067 INFO    ] Initializing speech engine...
[2026-10-28 17:53:38,079.079 INFO    ] 2026-10-28 17:53:38
[2026-10-28 17:53:38,389.389 INFO    ] 2026-10-28 17:53:38
[2026-10-28 17:53:38,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:53:38,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:53:38,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:53:39,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:53:39,095.095 INFO    ] time= 28/10/2026 17:53:39
[2026-10-28 17:53:39,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:53:39,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:53:39,337.337 INFO    ] No existing commands found in stream
[2026-10-28 17:53:44,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:53:44,359.359 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 17:53:45,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:53:45,226.226 INFO    ] Checking for system updates...
[2026-10-28 17:53:45,262.262 INFO    ] 200
[2026-10-28 17:53:45,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:53:45,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:53:45,327.327 INFO    ] No update needed
[2026-10-28 17:53:45,330.330 INFO    ] Checking for camera pi updates...
[2026-10-28 17:53:45,363.363 INFO    ] 200
[2026-10-28 17:53:45,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:53:45,406.406 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:53:45,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:53:45,491.491 INFO    ] No camera update needed
[2026-10-28 17:53:45,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:53:45,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:53:45,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:53:45,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:53:47,547.547 INFO    ] ================================================
[2026-10-28 17:53:47,562.562 INFO    ] Launching Daemon at Wed Oct 28 17:53:47 IST 2026
[2026-10-28 17:53:47,572.572 INFO    ] ================================================
[2026-10-28 17:53:48,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:53:48
[2026-10-28 17:53:48,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:53:49,128.128 INFO    ] Initializing speech engine...
[2026-10-28 17:53:49,137.137 INFO    ] 2026-10-28 17:53:49
[2026-10-28 17:53:49,404.404 INFO    ] 2026-10-28 17:53:49
[2026-10-28 17:53:49,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:53:49,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:53:49,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:53:49,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:53:49,978.978 INFO    ] time= 28/10/2026 17:53:49
[2026-10-28 17:53:50,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:53:50,017.017 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:53:50,171.171 INFO    ] No existing commands found in stream
[2026-10-28 17:53:55,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:53:55,205.205 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-28 17:54:00,980.980 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:54:00,983.983 INFO    ] Checking for system updates...
[2026-10-28 17:54:01,021.021 INFO    ] 200
[2026-10-28 17:54:01,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:54:01,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:54:01,093.093 INFO    ] No update needed
[2026-10-28 17:54:01,096.096 INFO    ] Checking for camera pi updates...
[2026-10-28 17:54:01,132.132 INFO    ] 200
[2026-10-28 17:54:01,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:54:01,178.178 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:54:01,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:54:01,285.285 INFO    ] No camera update needed
[2026-10-28 17:54:01,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:54:01,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:54:01,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:54:01,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:54:03,362.362 INFO    ] ================================================
[2026-10-28 17:54:03,385.385 INFO    ] Launching Daemon at Wed Oct 28 17:54:03 IST 2026
[2026-10-28 17:54:03,399.399 INFO    ] ================================================
[2026-10-28 17:54:04,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:54:04
[2026-10-28 17:54:04,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:54:05,137.137 INFO    ] Initializing speech engine...
[2026-10-28 17:54:05,147.147 INFO    ] 2026-10-28 17:54:05
[2026-10-28 17:54:05,425.425 INFO    ] 2026-10-28 17:54:05
[2026-10-28 17:54:05,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:54:05,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:54:05,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:54:05,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:54:05,979.979 INFO    ] time= 28/10/2026 17:54:05
[2026-10-28 17:54:06,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:54:06,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:54:06,190.190 INFO    ] No existing commands found in stream
[2026-10-28 17:54:11,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:54:11,224.224 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-28 17:54:14,400.400 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:54:14,403.403 INFO    ] Checking for system updates...
[2026-10-28 17:54:14,440.440 INFO    ] 200
[2026-10-28 17:54:14,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:54:14,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:54:14,507.507 INFO    ] No update needed
[2026-10-28 17:54:14,510.510 INFO    ] Checking for camera pi updates...
[2026-10-28 17:54:14,550.550 INFO    ] 200
[2026-10-28 17:54:14,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:54:14,600.600 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:54:14,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:54:14,686.686 INFO    ] No camera update needed
[2026-10-28 17:54:14,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:54:14,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:54:14,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:54:14,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:54:16,745.745 INFO    ] ================================================
[2026-10-28 17:54:16,761.761 INFO    ] Launching Daemon at Wed Oct 28 17:54:16 IST 2026
[2026-10-28 17:54:16,771.771 INFO    ] ================================================
[2026-10-28 17:54:17,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:54:17
[2026-10-28 17:54:17,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:54:18,240.240 INFO    ] Initializing speech engine...
[2026-10-28 17:54:18,247.247 INFO    ] 2026-10-28 17:54:18
[2026-10-28 17:54:18,516.516 INFO    ] 2026-10-28 17:54:18
[2026-10-28 17:54:18,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:54:18,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:54:18,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:54:19,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:54:19,238.238 INFO    ] time= 28/10/2026 17:54:19
[2026-10-28 17:54:19,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:54:19,314.314 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:54:19,470.470 INFO    ] No existing commands found in stream
[2026-10-28 17:54:24,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:54:24,490.490 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-28 17:54:28,944.944 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:54:28,947.947 INFO    ] Checking for system updates...
[2026-10-28 17:54:28,986.986 INFO    ] 200
[2026-10-28 17:54:28,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:54:29,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:54:29,051.051 INFO    ] No update needed
[2026-10-28 17:54:29,059.059 INFO    ] Checking for camera pi updates...
[2026-10-28 17:54:29,093.093 INFO    ] 200
[2026-10-28 17:54:29,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:54:29,142.142 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:54:29,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:54:29,228.228 INFO    ] No camera update needed
[2026-10-28 17:54:29,230.230 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:54:29,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:54:29,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:54:29,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:54:31,288.288 INFO    ] ================================================
[2026-10-28 17:54:31,303.303 INFO    ] Launching Daemon at Wed Oct 28 17:54:31 IST 2026
[2026-10-28 17:54:31,314.314 INFO    ] ================================================
[2026-10-28 17:54:31,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:54:31
[2026-10-28 17:54:32,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:54:33,033.033 INFO    ] Initializing speech engine...
[2026-10-28 17:54:33,040.040 INFO    ] 2026-10-28 17:54:33
[2026-10-28 17:54:33,330.330 INFO    ] 2026-10-28 17:54:33
[2026-10-28 17:54:33,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:54:33,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:54:33,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:54:33,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:54:33,929.929 INFO    ] time= 28/10/2026 17:54:33
[2026-10-28 17:54:33,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:54:33,962.962 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:54:34,125.125 INFO    ] No existing commands found in stream
[2026-10-28 17:54:39,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:54:39,143.143 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-28 17:54:43,637.637 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:54:43,640.640 INFO    ] Checking for system updates...
[2026-10-28 17:54:43,675.675 INFO    ] 200
[2026-10-28 17:54:43,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:54:43,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:54:43,732.732 INFO    ] No update needed
[2026-10-28 17:54:43,735.735 INFO    ] Checking for camera pi updates...
[2026-10-28 17:54:43,785.785 INFO    ] 200
[2026-10-28 17:54:43,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:54:43,828.828 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:54:43,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:54:43,900.900 INFO    ] No camera update needed
[2026-10-28 17:54:43,902.902 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:54:43,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:54:43,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:54:43,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:54:45,955.955 INFO    ] ================================================
[2026-10-28 17:54:45,969.969 INFO    ] Launching Daemon at Wed Oct 28 17:54:45 IST 2026
[2026-10-28 17:54:45,980.980 INFO    ] ================================================
[2026-10-28 17:54:46,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:54:46
[2026-10-28 17:54:47,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:54:47,601.601 INFO    ] Initializing speech engine...
[2026-10-28 17:54:47,615.615 INFO    ] 2026-10-28 17:54:47
[2026-10-28 17:54:47,889.889 INFO    ] 2026-10-28 17:54:47
[2026-10-28 17:54:47,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:54:48,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:54:48,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:54:48,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:54:48,452.452 INFO    ] time= 28/10/2026 17:54:48
[2026-10-28 17:54:48,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:54:48,488.488 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:54:48,625.625 INFO    ] No existing commands found in stream
[2026-10-28 17:54:53,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:54:53,659.659 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-28 17:54:58,245.245 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:54:58,248.248 INFO    ] Checking for system updates...
[2026-10-28 17:54:58,285.285 INFO    ] 200
[2026-10-28 17:54:58,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:54:58,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:54:58,352.352 INFO    ] No update needed
[2026-10-28 17:54:58,355.355 INFO    ] Checking for camera pi updates...
[2026-10-28 17:54:58,390.390 INFO    ] 200
[2026-10-28 17:54:58,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:54:58,434.434 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:54:58,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:54:58,532.532 INFO    ] No camera update needed
[2026-10-28 17:54:58,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:54:58,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:54:58,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:54:58,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:55:00,590.590 INFO    ] ================================================
[2026-10-28 17:55:00,605.605 INFO    ] Launching Daemon at Wed Oct 28 17:55:00 IST 2026
[2026-10-28 17:55:00,616.616 INFO    ] ================================================
[2026-10-28 17:55:01,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:55:01
[2026-10-28 17:55:02,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:55:02,538.538 INFO    ] Initializing speech engine...
[2026-10-28 17:55:02,542.542 INFO    ] 2026-10-28 17:55:02
[2026-10-28 17:55:02,941.941 INFO    ] 2026-10-28 17:55:02
[2026-10-28 17:55:02,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:55:03,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:55:03,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:55:03,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:55:03,561.561 INFO    ] time= 28/10/2026 17:55:03
[2026-10-28 17:55:03,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:55:03,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:55:03,816.816 INFO    ] No existing commands found in stream
[2026-10-28 17:55:08,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:55:08,858.858 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-28 17:55:11,443.443 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:55:11,446.446 INFO    ] Checking for system updates...
[2026-10-28 17:55:11,481.481 INFO    ] 200
[2026-10-28 17:55:11,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:55:11,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:55:11,539.539 INFO    ] No update needed
[2026-10-28 17:55:11,541.541 INFO    ] Checking for camera pi updates...
[2026-10-28 17:55:11,575.575 INFO    ] 200
[2026-10-28 17:55:11,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:55:11,621.621 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:55:11,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:55:11,714.714 INFO    ] No camera update needed
[2026-10-28 17:55:11,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:55:11,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:55:11,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:55:11,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:55:13,772.772 INFO    ] ================================================
[2026-10-28 17:55:13,787.787 INFO    ] Launching Daemon at Wed Oct 28 17:55:13 IST 2026
[2026-10-28 17:55:13,798.798 INFO    ] ================================================
[2026-10-28 17:55:14,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:55:14
[2026-10-28 17:55:15,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:55:15,441.441 INFO    ] Initializing speech engine...
[2026-10-28 17:55:15,454.454 INFO    ] 2026-10-28 17:55:15
[2026-10-28 17:55:15,746.746 INFO    ] 2026-10-28 17:55:15
[2026-10-28 17:55:15,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:55:16,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:55:16,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:55:16,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:55:16,277.277 INFO    ] time= 28/10/2026 17:55:16
[2026-10-28 17:55:16,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:55:16,328.328 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:55:16,466.466 INFO    ] No existing commands found in stream
[2026-10-28 17:55:21,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:55:21,501.501 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-28 17:55:22,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:55:22,833.833 INFO    ] Checking for system updates...
[2026-10-28 17:55:22,870.870 INFO    ] 200
[2026-10-28 17:55:22,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:55:22,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:55:22,929.929 INFO    ] No update needed
[2026-10-28 17:55:22,931.931 INFO    ] Checking for camera pi updates...
[2026-10-28 17:55:22,966.966 INFO    ] 200
[2026-10-28 17:55:22,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:55:23,009.009 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:55:23,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:55:23,094.094 INFO    ] No camera update needed
[2026-10-28 17:55:23,097.097 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:55:23,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:55:23,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:55:23,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:55:25,150.150 INFO    ] ================================================
[2026-10-28 17:55:25,165.165 INFO    ] Launching Daemon at Wed Oct 28 17:55:25 IST 2026
[2026-10-28 17:55:25,175.175 INFO    ] ================================================
[2026-10-28 17:55:25,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:55:25
[2026-10-28 17:55:26,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:55:26,599.599 INFO    ] Initializing speech engine...
[2026-10-28 17:55:26,609.609 INFO    ] 2026-10-28 17:55:26
[2026-10-28 17:55:26,861.861 INFO    ] 2026-10-28 17:55:26
[2026-10-28 17:55:26,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:55:27,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:55:27,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:55:27,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:55:27,431.431 INFO    ] time= 28/10/2026 17:55:27
[2026-10-28 17:55:27,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:55:27,455.455 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:55:27,592.592 INFO    ] No existing commands found in stream
[2026-10-28 17:55:32,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:55:32,606.606 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 17:55:36,430.430 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:55:36,433.433 INFO    ] Checking for system updates...
[2026-10-28 17:55:36,469.469 INFO    ] 200
[2026-10-28 17:55:36,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:55:36,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:55:36,526.526 INFO    ] No update needed
[2026-10-28 17:55:36,529.529 INFO    ] Checking for camera pi updates...
[2026-10-28 17:55:36,566.566 INFO    ] 200
[2026-10-28 17:55:36,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:55:36,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:55:36,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:55:36,788.788 INFO    ] No camera update needed
[2026-10-28 17:55:36,791.791 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:55:36,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:55:36,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:55:36,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:55:38,848.848 INFO    ] ================================================
[2026-10-28 17:55:38,863.863 INFO    ] Launching Daemon at Wed Oct 28 17:55:38 IST 2026
[2026-10-28 17:55:38,874.874 INFO    ] ================================================
[2026-10-28 17:55:39,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:55:39
[2026-10-28 17:55:40,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:55:40,272.272 INFO    ] Initializing speech engine...
[2026-10-28 17:55:40,295.295 INFO    ] 2026-10-28 17:55:40
[2026-10-28 17:55:40,549.549 INFO    ] 2026-10-28 17:55:40
[2026-10-28 17:55:40,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:55:40,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:55:40,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:55:41,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:55:41,114.114 INFO    ] time= 28/10/2026 17:55:41
[2026-10-28 17:55:41,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:55:41,137.137 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:55:41,273.273 INFO    ] No existing commands found in stream
[2026-10-28 17:55:46,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:55:46,290.290 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 17:55:49,122.122 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:55:49,125.125 INFO    ] Checking for system updates...
[2026-10-28 17:55:49,161.161 INFO    ] 200
[2026-10-28 17:55:49,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:55:49,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:55:49,226.226 INFO    ] No update needed
[2026-10-28 17:55:49,229.229 INFO    ] Checking for camera pi updates...
[2026-10-28 17:55:49,263.263 INFO    ] 200
[2026-10-28 17:55:49,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:55:49,313.313 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:55:49,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:55:49,400.400 INFO    ] No camera update needed
[2026-10-28 17:55:49,402.402 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:55:49,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:55:49,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:55:49,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:55:51,456.456 INFO    ] ================================================
[2026-10-28 17:55:51,471.471 INFO    ] Launching Daemon at Wed Oct 28 17:55:51 IST 2026
[2026-10-28 17:55:51,481.481 INFO    ] ================================================
[2026-10-28 17:55:52,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:55:52
[2026-10-28 17:55:52,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:55:52,929.929 INFO    ] Initializing speech engine...
[2026-10-28 17:55:52,939.939 INFO    ] 2026-10-28 17:55:52
[2026-10-28 17:55:53,184.184 INFO    ] 2026-10-28 17:55:53
[2026-10-28 17:55:53,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:55:53,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:55:53,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:55:53,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:55:53,751.751 INFO    ] time= 28/10/2026 17:55:53
[2026-10-28 17:55:53,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:55:53,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:55:53,906.906 INFO    ] No existing commands found in stream
[2026-10-28 17:55:58,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:55:58,944.944 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-28 17:56:00,524.524 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:56:00,527.527 INFO    ] Checking for system updates...
[2026-10-28 17:56:00,563.563 INFO    ] 200
[2026-10-28 17:56:00,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:56:00,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:56:00,629.629 INFO    ] No update needed
[2026-10-28 17:56:00,631.631 INFO    ] Checking for camera pi updates...
[2026-10-28 17:56:00,664.664 INFO    ] 200
[2026-10-28 17:56:00,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:56:00,713.713 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:56:00,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:56:00,808.808 INFO    ] No camera update needed
[2026-10-28 17:56:00,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:56:00,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:56:00,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:56:00,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:56:02,868.868 INFO    ] ================================================
[2026-10-28 17:56:02,883.883 INFO    ] Launching Daemon at Wed Oct 28 17:56:02 IST 2026
[2026-10-28 17:56:02,894.894 INFO    ] ================================================
[2026-10-28 17:56:03,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:56:03
[2026-10-28 17:56:04,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:56:04,396.396 INFO    ] Initializing speech engine...
[2026-10-28 17:56:04,401.401 INFO    ] 2026-10-28 17:56:04
[2026-10-28 17:56:04,646.646 INFO    ] 2026-10-28 17:56:04
[2026-10-28 17:56:04,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:56:04,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:56:04,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:56:05,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:56:05,201.201 INFO    ] time= 28/10/2026 17:56:05
[2026-10-28 17:56:05,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:56:05,224.224 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:56:05,352.352 INFO    ] No existing commands found in stream
[2026-10-28 17:56:10,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:56:10,367.367 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 17:56:12,749.749 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:56:12,752.752 INFO    ] Checking for system updates...
[2026-10-28 17:56:12,788.788 INFO    ] 200
[2026-10-28 17:56:12,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:56:12,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:56:12,853.853 INFO    ] No update needed
[2026-10-28 17:56:12,855.855 INFO    ] Checking for camera pi updates...
[2026-10-28 17:56:12,888.888 INFO    ] 200
[2026-10-28 17:56:12,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:56:12,937.937 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:56:13,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:56:13,022.022 INFO    ] No camera update needed
[2026-10-28 17:56:13,025.025 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:56:13,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:56:13,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:56:13,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:56:15,077.077 INFO    ] ================================================
[2026-10-28 17:56:15,092.092 INFO    ] Launching Daemon at Wed Oct 28 17:56:15 IST 2026
[2026-10-28 17:56:15,104.104 INFO    ] ================================================
[2026-10-28 17:56:15,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:56:15
[2026-10-28 17:56:16,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:56:16,785.785 INFO    ] Initializing speech engine...
[2026-10-28 17:56:16,798.798 INFO    ] 2026-10-28 17:56:16
[2026-10-28 17:56:17,119.119 INFO    ] 2026-10-28 17:56:17
[2026-10-28 17:56:17,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:56:17,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:56:17,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:56:17,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:56:17,835.835 INFO    ] time= 28/10/2026 17:56:17
[2026-10-28 17:56:17,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:56:17,918.918 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:56:18,071.071 INFO    ] No existing commands found in stream
[2026-10-28 17:56:23,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:56:23,086.086 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-28 17:56:27,227.227 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:56:27,230.230 INFO    ] Checking for system updates...
[2026-10-28 17:56:27,273.273 INFO    ] 200
[2026-10-28 17:56:27,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:56:27,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:56:27,348.348 INFO    ] No update needed
[2026-10-28 17:56:27,351.351 INFO    ] Checking for camera pi updates...
[2026-10-28 17:56:27,391.391 INFO    ] 200
[2026-10-28 17:56:27,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:56:27,440.440 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:56:27,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:56:27,533.533 INFO    ] No camera update needed
[2026-10-28 17:56:27,536.536 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:56:27,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:56:27,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:56:27,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:56:29,592.592 INFO    ] ================================================
[2026-10-28 17:56:29,607.607 INFO    ] Launching Daemon at Wed Oct 28 17:56:29 IST 2026
[2026-10-28 17:56:29,617.617 INFO    ] ================================================
[2026-10-28 17:56:30,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:56:30
[2026-10-28 17:56:30,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:56:31,019.019 INFO    ] Initializing speech engine...
[2026-10-28 17:56:31,025.025 INFO    ] 2026-10-28 17:56:31
[2026-10-28 17:56:31,303.303 INFO    ] 2026-10-28 17:56:31
[2026-10-28 17:56:31,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:56:31,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:56:31,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:56:31,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:56:31,901.901 INFO    ] time= 28/10/2026 17:56:31
[2026-10-28 17:56:31,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:56:31,928.928 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:56:32,097.097 INFO    ] No existing commands found in stream
[2026-10-28 17:56:37,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:56:37,130.130 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 17:56:40,827.827 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:56:40,830.830 INFO    ] Checking for system updates...
[2026-10-28 17:56:40,870.870 INFO    ] 200
[2026-10-28 17:56:40,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:56:40,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:56:40,936.936 INFO    ] No update needed
[2026-10-28 17:56:40,938.938 INFO    ] Checking for camera pi updates...
[2026-10-28 17:56:40,977.977 INFO    ] 200
[2026-10-28 17:56:40,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:56:41,019.019 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:56:41,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:56:41,115.115 INFO    ] No camera update needed
[2026-10-28 17:56:41,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:56:41,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:56:41,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:56:41,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:56:43,172.172 INFO    ] ================================================
[2026-10-28 17:56:43,187.187 INFO    ] Launching Daemon at Wed Oct 28 17:56:43 IST 2026
[2026-10-28 17:56:43,198.198 INFO    ] ================================================
[2026-10-28 17:56:43,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:56:43
[2026-10-28 17:56:44,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:56:44,874.874 INFO    ] Initializing speech engine...
[2026-10-28 17:56:44,882.882 INFO    ] 2026-10-28 17:56:44
[2026-10-28 17:56:45,161.161 INFO    ] 2026-10-28 17:56:45
[2026-10-28 17:56:45,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:56:45,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:56:45,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:56:45,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:56:45,998.998 INFO    ] time= 28/10/2026 17:56:45
[2026-10-28 17:56:46,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:56:46,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:56:46,277.277 INFO    ] No existing commands found in stream
[2026-10-28 17:56:51,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:56:51,296.296 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-28 17:56:53,075.075 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:56:53,078.078 INFO    ] Checking for system updates...
[2026-10-28 17:56:53,116.116 INFO    ] 200
[2026-10-28 17:56:53,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:56:53,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:56:53,177.177 INFO    ] No update needed
[2026-10-28 17:56:53,180.180 INFO    ] Checking for camera pi updates...
[2026-10-28 17:56:53,220.220 INFO    ] 200
[2026-10-28 17:56:53,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:56:53,276.276 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:56:53,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:56:53,367.367 INFO    ] No camera update needed
[2026-10-28 17:56:53,370.370 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:56:53,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:56:53,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:56:53,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:56:55,426.426 INFO    ] ================================================
[2026-10-28 17:56:55,441.441 INFO    ] Launching Daemon at Wed Oct 28 17:56:55 IST 2026
[2026-10-28 17:56:55,452.452 INFO    ] ================================================
[2026-10-28 17:56:56,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:56:56
[2026-10-28 17:56:56,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:56:56,885.885 INFO    ] Initializing speech engine...
[2026-10-28 17:56:56,892.892 INFO    ] 2026-10-28 17:56:56
[2026-10-28 17:56:57,150.150 INFO    ] 2026-10-28 17:56:57
[2026-10-28 17:56:57,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:56:57,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:56:57,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:56:57,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:56:57,704.704 INFO    ] time= 28/10/2026 17:56:57
[2026-10-28 17:56:57,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:56:57,741.741 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:56:57,876.876 INFO    ] No existing commands found in stream
[2026-10-28 17:57:02,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:57:02,908.908 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 17:57:06,905.905 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:57:06,908.908 INFO    ] Checking for system updates...
[2026-10-28 17:57:06,945.945 INFO    ] 200
[2026-10-28 17:57:06,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:57:07,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:57:07,012.012 INFO    ] No update needed
[2026-10-28 17:57:07,015.015 INFO    ] Checking for camera pi updates...
[2026-10-28 17:57:07,050.050 INFO    ] 200
[2026-10-28 17:57:07,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:57:07,100.100 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:57:07,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:57:07,197.197 INFO    ] No camera update needed
[2026-10-28 17:57:07,200.200 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:57:07,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:57:07,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:57:07,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:57:09,257.257 INFO    ] ================================================
[2026-10-28 17:57:09,271.271 INFO    ] Launching Daemon at Wed Oct 28 17:57:09 IST 2026
[2026-10-28 17:57:09,282.282 INFO    ] ================================================
[2026-10-28 17:57:09,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:57:09
[2026-10-28 17:57:10,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:57:10,871.871 INFO    ] Initializing speech engine...
[2026-10-28 17:57:10,880.880 INFO    ] 2026-10-28 17:57:10
[2026-10-28 17:57:11,127.127 INFO    ] 2026-10-28 17:57:11
[2026-10-28 17:57:11,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:57:11,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:57:11,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:57:11,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:57:11,722.722 INFO    ] time= 28/10/2026 17:57:11
[2026-10-28 17:57:11,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:57:11,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:57:11,905.905 INFO    ] No existing commands found in stream
[2026-10-28 17:57:16,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:57:16,933.933 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-28 17:57:21,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:57:21,541.541 INFO    ] Checking for system updates...
[2026-10-28 17:57:21,581.581 INFO    ] 200
[2026-10-28 17:57:21,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:57:21,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:57:21,646.646 INFO    ] No update needed
[2026-10-28 17:57:21,649.649 INFO    ] Checking for camera pi updates...
[2026-10-28 17:57:21,683.683 INFO    ] 200
[2026-10-28 17:57:21,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:57:21,726.726 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:57:21,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:57:21,829.829 INFO    ] No camera update needed
[2026-10-28 17:57:21,831.831 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:57:21,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:57:21,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:57:21,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:57:23,886.886 INFO    ] ================================================
[2026-10-28 17:57:23,901.901 INFO    ] Launching Daemon at Wed Oct 28 17:57:23 IST 2026
[2026-10-28 17:57:23,911.911 INFO    ] ================================================
[2026-10-28 17:57:24,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:57:24
[2026-10-28 17:57:25,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:57:25,322.322 INFO    ] Initializing speech engine...
[2026-10-28 17:57:25,341.341 INFO    ] 2026-10-28 17:57:25
[2026-10-28 17:57:25,593.593 INFO    ] 2026-10-28 17:57:25
[2026-10-28 17:57:25,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:57:25,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:57:25,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:57:26,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:57:26,156.156 INFO    ] time= 28/10/2026 17:57:26
[2026-10-28 17:57:26,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:57:26,202.202 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:57:26,329.329 INFO    ] No existing commands found in stream
[2026-10-28 17:57:31,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:57:31,357.357 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-28 17:57:33,661.661 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 17:57:33,664.664 INFO    ] Checking for system updates...
[2026-10-28 17:57:33,701.701 INFO    ] 200
[2026-10-28 17:57:33,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:57:33,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:57:33,766.766 INFO    ] No update needed
[2026-10-28 17:57:33,769.769 INFO    ] Checking for camera pi updates...
[2026-10-28 17:57:33,807.807 INFO    ] 200
[2026-10-28 17:57:33,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:57:33,856.856 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:57:33,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:57:33,946.946 INFO    ] No camera update needed
[2026-10-28 17:57:33,948.948 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:57:33,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:57:33,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:57:33,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:57:36,002.002 INFO    ] ================================================
[2026-10-28 17:57:36,017.017 INFO    ] Launching Daemon at Wed Oct 28 17:57:36 IST 2026
[2026-10-28 17:57:36,027.027 INFO    ] ================================================
[2026-10-28 17:57:36,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:57:36
[2026-10-28 17:57:37,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:57:37,430.430 INFO    ] Initializing speech engine...
[2026-10-28 17:57:37,454.454 INFO    ] 2026-10-28 17:57:37
[2026-10-28 17:57:37,708.708 INFO    ] 2026-10-28 17:57:37
[2026-10-28 17:57:37,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:57:38,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:57:38,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:57:38,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:57:38,299.299 INFO    ] time= 28/10/2026 17:57:38
[2026-10-28 17:57:38,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:57:38,325.325 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:57:38,473.473 INFO    ] No existing commands found in stream
[2026-10-28 17:57:43,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:57:43,489.489 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 17:57:47,939.939 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 17:57:47,941.941 INFO    ] Checking for system updates...
[2026-10-28 17:57:47,980.980 INFO    ] 200
[2026-10-28 17:57:47,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:57:48,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:57:48,038.038 INFO    ] No update needed
[2026-10-28 17:57:48,040.040 INFO    ] Checking for camera pi updates...
[2026-10-28 17:57:48,077.077 INFO    ] 200
[2026-10-28 17:57:48,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:57:48,119.119 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:57:48,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:57:48,297.297 INFO    ] No camera update needed
[2026-10-28 17:57:48,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:57:48,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:57:48,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:57:48,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:57:50,352.352 INFO    ] ================================================
[2026-10-28 17:57:50,367.367 INFO    ] Launching Daemon at Wed Oct 28 17:57:50 IST 2026
[2026-10-28 17:57:50,378.378 INFO    ] ================================================
[2026-10-28 17:57:50,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:57:50
[2026-10-28 17:57:51,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:57:51,832.832 INFO    ] Initializing speech engine...
[2026-10-28 17:57:51,840.840 INFO    ] 2026-10-28 17:57:51
[2026-10-28 17:57:52,093.093 INFO    ] 2026-10-28 17:57:52
[2026-10-28 17:57:52,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:57:52,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:57:52,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:57:52,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:57:52,708.708 INFO    ] time= 28/10/2026 17:57:52
[2026-10-28 17:57:52,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:57:52,804.804 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:57:52,982.982 INFO    ] No existing commands found in stream
[2026-10-28 17:57:58,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:57:58,009.009 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-28 17:58:02,077.077 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:58:02,080.080 INFO    ] Checking for system updates...
[2026-10-28 17:58:02,128.128 INFO    ] 200
[2026-10-28 17:58:02,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:58:02,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:58:02,199.199 INFO    ] No update needed
[2026-10-28 17:58:02,202.202 INFO    ] Checking for camera pi updates...
[2026-10-28 17:58:02,240.240 INFO    ] 200
[2026-10-28 17:58:02,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:58:02,295.295 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:58:02,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:58:02,407.407 INFO    ] No camera update needed
[2026-10-28 17:58:02,410.410 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:58:02,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:58:02,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:58:02,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:58:04,467.467 INFO    ] ================================================
[2026-10-28 17:58:04,482.482 INFO    ] Launching Daemon at Wed Oct 28 17:58:04 IST 2026
[2026-10-28 17:58:04,493.493 INFO    ] ================================================
[2026-10-28 17:58:05,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:58:05
[2026-10-28 17:58:05,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:58:06,013.013 INFO    ] Initializing speech engine...
[2026-10-28 17:58:06,019.019 INFO    ] 2026-10-28 17:58:06
[2026-10-28 17:58:06,300.300 INFO    ] 2026-10-28 17:58:06
[2026-10-28 17:58:06,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:58:06,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:58:06,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:58:07,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:58:07,119.119 INFO    ] time= 28/10/2026 17:58:07
[2026-10-28 17:58:07,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:58:07,219.219 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:58:07,392.392 INFO    ] No existing commands found in stream
[2026-10-28 17:58:12,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:58:12,407.407 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-28 17:58:14,393.393 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:58:14,396.396 INFO    ] Checking for system updates...
[2026-10-28 17:58:14,437.437 INFO    ] 200
[2026-10-28 17:58:14,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:58:14,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:58:14,503.503 INFO    ] No update needed
[2026-10-28 17:58:14,507.507 INFO    ] Checking for camera pi updates...
[2026-10-28 17:58:14,546.546 INFO    ] 200
[2026-10-28 17:58:14,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:58:14,593.593 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:58:14,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:58:14,676.676 INFO    ] No camera update needed
[2026-10-28 17:58:14,679.679 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:58:14,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:58:14,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:58:14,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:58:16,732.732 INFO    ] ================================================
[2026-10-28 17:58:16,748.748 INFO    ] Launching Daemon at Wed Oct 28 17:58:16 IST 2026
[2026-10-28 17:58:16,759.759 INFO    ] ================================================
[2026-10-28 17:58:17,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:58:17
[2026-10-28 17:58:17,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:58:18,175.175 INFO    ] Initializing speech engine...
[2026-10-28 17:58:18,185.185 INFO    ] 2026-10-28 17:58:18
[2026-10-28 17:58:18,436.436 INFO    ] 2026-10-28 17:58:18
[2026-10-28 17:58:18,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:58:18,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:58:18,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:58:19,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:58:19,197.197 INFO    ] time= 28/10/2026 17:58:19
[2026-10-28 17:58:19,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:58:19,287.287 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:58:19,427.427 INFO    ] No existing commands found in stream
[2026-10-28 17:58:24,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:58:24,439.439 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 17:58:27,820.820 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 17:58:27,823.823 INFO    ] Checking for system updates...
[2026-10-28 17:58:27,858.858 INFO    ] 200
[2026-10-28 17:58:27,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:58:27,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:58:27,918.918 INFO    ] No update needed
[2026-10-28 17:58:27,920.920 INFO    ] Checking for camera pi updates...
[2026-10-28 17:58:27,955.955 INFO    ] 200
[2026-10-28 17:58:27,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:58:27,997.997 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:58:28,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:58:28,086.086 INFO    ] No camera update needed
[2026-10-28 17:58:28,088.088 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:58:28,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:58:28,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:58:28,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:58:30,142.142 INFO    ] ================================================
[2026-10-28 17:58:30,157.157 INFO    ] Launching Daemon at Wed Oct 28 17:58:30 IST 2026
[2026-10-28 17:58:30,168.168 INFO    ] ================================================
[2026-10-28 17:58:30,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:58:30
[2026-10-28 17:58:31,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:58:31,701.701 INFO    ] Initializing speech engine...
[2026-10-28 17:58:31,710.710 INFO    ] 2026-10-28 17:58:31
[2026-10-28 17:58:32,033.033 INFO    ] 2026-10-28 17:58:31
[2026-10-28 17:58:32,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:58:32,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:58:32,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:58:32,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:58:32,710.710 INFO    ] time= 28/10/2026 17:58:32
[2026-10-28 17:58:32,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:58:32,733.733 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:58:32,892.892 INFO    ] No existing commands found in stream
[2026-10-28 17:58:37,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:58:37,915.915 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 17:58:43,102.102 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:58:43,105.105 INFO    ] Checking for system updates...
[2026-10-28 17:58:43,144.144 INFO    ] 200
[2026-10-28 17:58:43,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:58:43,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:58:43,203.203 INFO    ] No update needed
[2026-10-28 17:58:43,205.205 INFO    ] Checking for camera pi updates...
[2026-10-28 17:58:43,239.239 INFO    ] 200
[2026-10-28 17:58:43,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:58:43,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:58:43,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:58:43,349.349 INFO    ] No camera update needed
[2026-10-28 17:58:43,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:58:43,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:58:43,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:58:43,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:58:45,406.406 INFO    ] ================================================
[2026-10-28 17:58:45,421.421 INFO    ] Launching Daemon at Wed Oct 28 17:58:45 IST 2026
[2026-10-28 17:58:45,433.433 INFO    ] ================================================
[2026-10-28 17:58:46,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:58:46
[2026-10-28 17:58:46,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:58:46,854.854 INFO    ] Initializing speech engine...
[2026-10-28 17:58:46,863.863 INFO    ] 2026-10-28 17:58:46
[2026-10-28 17:58:47,108.108 INFO    ] 2026-10-28 17:58:47
[2026-10-28 17:58:47,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:58:47,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:58:47,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:58:47,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:58:47,711.711 INFO    ] time= 28/10/2026 17:58:47
[2026-10-28 17:58:47,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:58:47,794.794 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:58:47,993.993 INFO    ] No existing commands found in stream
[2026-10-28 17:58:53,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:58:53,026.026 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-28 17:58:54,151.151 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 17:58:54,153.153 INFO    ] Checking for system updates...
[2026-10-28 17:58:54,192.192 INFO    ] 200
[2026-10-28 17:58:54,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:58:54,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:58:54,249.249 INFO    ] No update needed
[2026-10-28 17:58:54,251.251 INFO    ] Checking for camera pi updates...
[2026-10-28 17:58:54,284.284 INFO    ] 200
[2026-10-28 17:58:54,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:58:54,332.332 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:58:54,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:58:54,434.434 INFO    ] No camera update needed
[2026-10-28 17:58:54,437.437 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:58:54,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:58:54,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:58:54,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:58:56,490.490 INFO    ] ================================================
[2026-10-28 17:58:56,505.505 INFO    ] Launching Daemon at Wed Oct 28 17:58:56 IST 2026
[2026-10-28 17:58:56,516.516 INFO    ] ================================================
[2026-10-28 17:58:57,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:58:57
[2026-10-28 17:58:57,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:58:58,146.146 INFO    ] Initializing speech engine...
[2026-10-28 17:58:58,161.161 INFO    ] 2026-10-28 17:58:58
[2026-10-28 17:58:58,441.441 INFO    ] 2026-10-28 17:58:58
[2026-10-28 17:58:58,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:58:58,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:58:58,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:58:59,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:58:59,187.187 INFO    ] time= 28/10/2026 17:58:59
[2026-10-28 17:58:59,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:58:59,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:58:59,420.420 INFO    ] No existing commands found in stream
[2026-10-28 17:59:04,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:59:04,434.434 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-28 17:59:06,270.270 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:59:06,273.273 INFO    ] Checking for system updates...
[2026-10-28 17:59:06,313.313 INFO    ] 200
[2026-10-28 17:59:06,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:59:06,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:59:06,374.374 INFO    ] No update needed
[2026-10-28 17:59:06,376.376 INFO    ] Checking for camera pi updates...
[2026-10-28 17:59:06,415.415 INFO    ] 200
[2026-10-28 17:59:06,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:59:06,465.465 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:59:06,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:59:06,549.549 INFO    ] No camera update needed
[2026-10-28 17:59:06,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:59:06,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:59:06,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:59:06,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:59:08,608.608 INFO    ] ================================================
[2026-10-28 17:59:08,623.623 INFO    ] Launching Daemon at Wed Oct 28 17:59:08 IST 2026
[2026-10-28 17:59:08,634.634 INFO    ] ================================================
[2026-10-28 17:59:09,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:59:09
[2026-10-28 17:59:09,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:59:10,135.135 INFO    ] Initializing speech engine...
[2026-10-28 17:59:10,145.145 INFO    ] 2026-10-28 17:59:10
[2026-10-28 17:59:10,394.394 INFO    ] 2026-10-28 17:59:10
[2026-10-28 17:59:10,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:59:10,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:59:10,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:59:11,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:59:11,036.036 INFO    ] time= 28/10/2026 17:59:11
[2026-10-28 17:59:11,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:59:11,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:59:11,207.207 INFO    ] No existing commands found in stream
[2026-10-28 17:59:16,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:59:16,225.225 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-28 17:59:22,655.655 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:59:22,658.658 INFO    ] Checking for system updates...
[2026-10-28 17:59:22,694.694 INFO    ] 200
[2026-10-28 17:59:22,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:59:22,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:59:22,752.752 INFO    ] No update needed
[2026-10-28 17:59:22,754.754 INFO    ] Checking for camera pi updates...
[2026-10-28 17:59:22,788.788 INFO    ] 200
[2026-10-28 17:59:22,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:59:22,833.833 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:59:22,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 17:59:22,918.918 INFO    ] No camera update needed
[2026-10-28 17:59:22,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:59:22,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:59:22,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:59:22,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:59:24,973.973 INFO    ] ================================================
[2026-10-28 17:59:24,989.989 INFO    ] Launching Daemon at Wed Oct 28 17:59:24 IST 2026
[2026-10-28 17:59:25,000.000 INFO    ] ================================================
[2026-10-28 17:59:25,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:59:25
[2026-10-28 17:59:26,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:59:26,551.551 INFO    ] Initializing speech engine...
[2026-10-28 17:59:26,565.565 INFO    ] 2026-10-28 17:59:26
[2026-10-28 17:59:26,845.845 INFO    ] 2026-10-28 17:59:26
[2026-10-28 17:59:26,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:59:27,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:59:27,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:59:27,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:59:27,625.625 INFO    ] time= 28/10/2026 17:59:27
[2026-10-28 17:59:27,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:59:27,735.735 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:59:27,944.944 INFO    ] No existing commands found in stream
[2026-10-28 17:59:32,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:59:32,960.960 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-28 17:59:44,324.324 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 17:59:44,327.327 INFO    ] Checking for system updates...
[2026-10-28 17:59:44,363.363 INFO    ] 200
[2026-10-28 17:59:44,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:59:44,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:59:44,421.421 INFO    ] No update needed
[2026-10-28 17:59:44,424.424 INFO    ] Checking for camera pi updates...
[2026-10-28 17:59:44,461.461 INFO    ] 200
[2026-10-28 17:59:44,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:59:44,503.503 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:59:44,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:59:44,580.580 INFO    ] No camera update needed
[2026-10-28 17:59:44,582.582 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:59:44,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:59:44,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:59:44,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 17:59:46,634.634 INFO    ] ================================================
[2026-10-28 17:59:46,650.650 INFO    ] Launching Daemon at Wed Oct 28 17:59:46 IST 2026
[2026-10-28 17:59:46,662.662 INFO    ] ================================================
[2026-10-28 17:59:47,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 17:59:47
[2026-10-28 17:59:47,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 17:59:48,294.294 INFO    ] Initializing speech engine...
[2026-10-28 17:59:48,302.302 INFO    ] 2026-10-28 17:59:48
[2026-10-28 17:59:48,619.619 INFO    ] 2026-10-28 17:59:48
[2026-10-28 17:59:48,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 17:59:48,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 17:59:49,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 17:59:49,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 17:59:49,361.361 INFO    ] time= 28/10/2026 17:59:49
[2026-10-28 17:59:49,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 17:59:49,456.456 INFO    ] Checking for existing commands in stream...
[2026-10-28 17:59:49,651.651 INFO    ] No existing commands found in stream
[2026-10-28 17:59:54,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 17:59:54,690.690 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-28 17:59:57,580.580 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 17:59:57,583.583 INFO    ] Checking for system updates...
[2026-10-28 17:59:57,625.625 INFO    ] 200
[2026-10-28 17:59:57,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:59:57,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:59:57,690.690 INFO    ] No update needed
[2026-10-28 17:59:57,693.693 INFO    ] Checking for camera pi updates...
[2026-10-28 17:59:57,728.728 INFO    ] 200
[2026-10-28 17:59:57,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 17:59:57,771.771 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 17:59:57,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 17:59:57,952.952 INFO    ] No camera update needed
[2026-10-28 17:59:57,954.954 INFO    ] Script finished. Safe exiting...
[2026-10-28 17:59:57,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 17:59:57,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 17:59:57,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:00:00,007.007 INFO    ] ================================================
[2026-10-28 18:00:00,022.022 INFO    ] Launching Daemon at Wed Oct 28 18:00:00 IST 2026
[2026-10-28 18:00:00,033.033 INFO    ] ================================================
[2026-10-28 18:00:00,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:00:00
[2026-10-28 18:00:01,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:00:01,677.677 INFO    ] Initializing speech engine...
[2026-10-28 18:00:01,681.681 INFO    ] 2026-10-28 18:00:01
[2026-10-28 18:00:02,095.095 INFO    ] 2026-10-28 18:00:02
[2026-10-28 18:00:02,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:00:02,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:00:02,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:00:03,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:00:03,325.325 INFO    ] time= 28/10/2026 18:00:03
[2026-10-28 18:00:03,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:00:03,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:00:03,581.581 INFO    ] No existing commands found in stream
[2026-10-28 18:00:08,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:00:08,604.604 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-28 18:00:11,585.585 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:00:11,588.588 INFO    ] Checking for system updates...
[2026-10-28 18:00:11,625.625 INFO    ] 200
[2026-10-28 18:00:11,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:00:11,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:00:11,691.691 INFO    ] No update needed
[2026-10-28 18:00:11,694.694 INFO    ] Checking for camera pi updates...
[2026-10-28 18:00:11,732.732 INFO    ] 200
[2026-10-28 18:00:11,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:00:11,776.776 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:00:11,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:00:11,865.865 INFO    ] No camera update needed
[2026-10-28 18:00:11,868.868 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:00:11,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:00:11,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:00:11,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:00:13,923.923 INFO    ] ================================================
[2026-10-28 18:00:13,939.939 INFO    ] Launching Daemon at Wed Oct 28 18:00:13 IST 2026
[2026-10-28 18:00:13,950.950 INFO    ] ================================================
[2026-10-28 18:00:14,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:00:14
[2026-10-28 18:00:15,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:00:15,383.383 INFO    ] Initializing speech engine...
[2026-10-28 18:00:15,389.389 INFO    ] 2026-10-28 18:00:15
[2026-10-28 18:00:15,635.635 INFO    ] 2026-10-28 18:00:15
[2026-10-28 18:00:15,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:00:15,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:00:15,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:00:16,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:00:16,237.237 INFO    ] time= 28/10/2026 18:00:16
[2026-10-28 18:00:16,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:00:16,326.326 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:00:16,442.442 INFO    ] No existing commands found in stream
[2026-10-28 18:00:21,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:00:21,469.469 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-28 18:00:22,627.627 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:00:22,629.629 INFO    ] Checking for system updates...
[2026-10-28 18:00:22,665.665 INFO    ] 200
[2026-10-28 18:00:22,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:00:22,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:00:22,735.735 INFO    ] No update needed
[2026-10-28 18:00:22,738.738 INFO    ] Checking for camera pi updates...
[2026-10-28 18:00:22,776.776 INFO    ] 200
[2026-10-28 18:00:22,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:00:22,819.819 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:00:22,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:00:22,907.907 INFO    ] No camera update needed
[2026-10-28 18:00:22,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:00:22,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:00:22,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:00:22,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:00:24,963.963 INFO    ] ================================================
[2026-10-28 18:00:24,979.979 INFO    ] Launching Daemon at Wed Oct 28 18:00:24 IST 2026
[2026-10-28 18:00:24,991.991 INFO    ] ================================================
[2026-10-28 18:00:25,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:00:25
[2026-10-28 18:00:26,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:00:26,575.575 INFO    ] Initializing speech engine...
[2026-10-28 18:00:26,586.586 INFO    ] 2026-10-28 18:00:26
[2026-10-28 18:00:26,900.900 INFO    ] 2026-10-28 18:00:26
[2026-10-28 18:00:26,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:00:27,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:00:27,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:00:27,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:00:27,725.725 INFO    ] time= 28/10/2026 18:00:27
[2026-10-28 18:00:27,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:00:27,822.822 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:00:27,989.989 INFO    ] No existing commands found in stream
[2026-10-28 18:00:32,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:00:32,999.999 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-28 18:00:35,151.151 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:00:35,153.153 INFO    ] Checking for system updates...
[2026-10-28 18:00:35,189.189 INFO    ] 200
[2026-10-28 18:00:35,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:00:35,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:00:35,247.247 INFO    ] No update needed
[2026-10-28 18:00:35,249.249 INFO    ] Checking for camera pi updates...
[2026-10-28 18:00:35,283.283 INFO    ] 200
[2026-10-28 18:00:35,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:00:35,330.330 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:00:35,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:00:35,450.450 INFO    ] No camera update needed
[2026-10-28 18:00:35,453.453 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:00:35,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:00:35,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:00:35,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:00:37,505.505 INFO    ] ================================================
[2026-10-28 18:00:37,521.521 INFO    ] Launching Daemon at Wed Oct 28 18:00:37 IST 2026
[2026-10-28 18:00:37,532.532 INFO    ] ================================================
[2026-10-28 18:00:38,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:00:38
[2026-10-28 18:00:38,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:00:39,135.135 INFO    ] Initializing speech engine...
[2026-10-28 18:00:39,146.146 INFO    ] 2026-10-28 18:00:39
[2026-10-28 18:00:39,411.411 INFO    ] 2026-10-28 18:00:39
[2026-10-28 18:00:39,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:00:39,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:00:39,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:00:40,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:00:40,126.126 INFO    ] time= 28/10/2026 18:00:40
[2026-10-28 18:00:40,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:00:40,223.223 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:00:40,387.387 INFO    ] No existing commands found in stream
[2026-10-28 18:00:45,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:00:45,407.407 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 18:00:47,977.977 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:00:47,979.979 INFO    ] Checking for system updates...
[2026-10-28 18:00:48,016.016 INFO    ] 200
[2026-10-28 18:00:48,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:00:48,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:00:48,078.078 INFO    ] No update needed
[2026-10-28 18:00:48,081.081 INFO    ] Checking for camera pi updates...
[2026-10-28 18:00:48,119.119 INFO    ] 200
[2026-10-28 18:00:48,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:00:48,167.167 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:00:48,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:00:48,253.253 INFO    ] No camera update needed
[2026-10-28 18:00:48,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:00:48,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:00:48,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:00:48,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:00:50,309.309 INFO    ] ================================================
[2026-10-28 18:00:50,325.325 INFO    ] Launching Daemon at Wed Oct 28 18:00:50 IST 2026
[2026-10-28 18:00:50,336.336 INFO    ] ================================================
[2026-10-28 18:00:50,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:00:50
[2026-10-28 18:00:51,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:00:51,748.748 INFO    ] Initializing speech engine...
[2026-10-28 18:00:51,762.762 INFO    ] 2026-10-28 18:00:51
[2026-10-28 18:00:52,016.016 INFO    ] 2026-10-28 18:00:52
[2026-10-28 18:00:52,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:00:52,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:00:52,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:00:52,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:00:52,624.624 INFO    ] time= 28/10/2026 18:00:52
[2026-10-28 18:00:52,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:00:52,676.676 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:00:52,802.802 INFO    ] No existing commands found in stream
[2026-10-28 18:00:57,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:00:57,826.826 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 18:01:01,801.801 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:01:01,806.806 INFO    ] Checking for system updates...
[2026-10-28 18:01:01,876.876 INFO    ] 200
[2026-10-28 18:01:01,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:01:02,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:01:02,010.010 INFO    ] No update needed
[2026-10-28 18:01:02,024.024 INFO    ] Checking for camera pi updates...
[2026-10-28 18:01:02,129.129 INFO    ] 200
[2026-10-28 18:01:02,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:01:02,267.267 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:01:02,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:01:02,430.430 INFO    ] No camera update needed
[2026-10-28 18:01:02,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:01:02,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:01:02,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:01:02,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:01:04,498.498 INFO    ] ================================================
[2026-10-28 18:01:04,514.514 INFO    ] Launching Daemon at Wed Oct 28 18:01:04 IST 2026
[2026-10-28 18:01:04,525.525 INFO    ] ================================================
[2026-10-28 18:01:05,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:01:05
[2026-10-28 18:01:05,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:01:06,018.018 INFO    ] Initializing speech engine...
[2026-10-28 18:01:06,030.030 INFO    ] 2026-10-28 18:01:06
[2026-10-28 18:01:06,298.298 INFO    ] 2026-10-28 18:01:06
[2026-10-28 18:01:06,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:01:06,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:01:06,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:01:06,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:01:06,899.899 INFO    ] time= 28/10/2026 18:01:06
[2026-10-28 18:01:06,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:01:06,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:01:07,113.113 INFO    ] No existing commands found in stream
[2026-10-28 18:01:12,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:01:12,152.152 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-28 18:01:13,500.500 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:01:13,503.503 INFO    ] Checking for system updates...
[2026-10-28 18:01:13,540.540 INFO    ] 200
[2026-10-28 18:01:13,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:01:13,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:01:13,599.599 INFO    ] No update needed
[2026-10-28 18:01:13,602.602 INFO    ] Checking for camera pi updates...
[2026-10-28 18:01:13,640.640 INFO    ] 200
[2026-10-28 18:01:13,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:01:13,687.687 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:01:13,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:01:13,770.770 INFO    ] No camera update needed
[2026-10-28 18:01:13,772.772 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:01:13,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:01:13,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:01:13,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:01:15,827.827 INFO    ] ================================================
[2026-10-28 18:01:15,842.842 INFO    ] Launching Daemon at Wed Oct 28 18:01:15 IST 2026
[2026-10-28 18:01:15,854.854 INFO    ] ================================================
[2026-10-28 18:01:16,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:01:16
[2026-10-28 18:01:17,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:01:17,496.496 INFO    ] Initializing speech engine...
[2026-10-28 18:01:17,510.510 INFO    ] 2026-10-28 18:01:17
[2026-10-28 18:01:17,825.825 INFO    ] 2026-10-28 18:01:17
[2026-10-28 18:01:17,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:01:18,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:01:18,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:01:18,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:01:18,685.685 INFO    ] time= 28/10/2026 18:01:18
[2026-10-28 18:01:18,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:01:18,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:01:18,901.901 INFO    ] No existing commands found in stream
[2026-10-28 18:01:23,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:01:23,925.925 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 18:01:26,003.003 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:01:26,006.006 INFO    ] Checking for system updates...
[2026-10-28 18:01:26,046.046 INFO    ] 200
[2026-10-28 18:01:26,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:01:26,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:01:26,105.105 INFO    ] No update needed
[2026-10-28 18:01:26,108.108 INFO    ] Checking for camera pi updates...
[2026-10-28 18:01:26,143.143 INFO    ] 200
[2026-10-28 18:01:26,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:01:26,188.188 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:01:26,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:01:26,274.274 INFO    ] No camera update needed
[2026-10-28 18:01:26,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:01:26,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:01:26,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:01:26,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:01:28,334.334 INFO    ] ================================================
[2026-10-28 18:01:28,349.349 INFO    ] Launching Daemon at Wed Oct 28 18:01:28 IST 2026
[2026-10-28 18:01:28,360.360 INFO    ] ================================================
[2026-10-28 18:01:28,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:01:28
[2026-10-28 18:01:29,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:01:29,775.775 INFO    ] Initializing speech engine...
[2026-10-28 18:01:29,784.784 INFO    ] 2026-10-28 18:01:29
[2026-10-28 18:01:30,028.028 INFO    ] 2026-10-28 18:01:30
[2026-10-28 18:01:30,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:01:30,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:01:30,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:01:30,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:01:30,764.764 INFO    ] time= 28/10/2026 18:01:30
[2026-10-28 18:01:30,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:01:30,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:01:31,013.013 INFO    ] No existing commands found in stream
[2026-10-28 18:01:36,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:01:36,030.030 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-28 18:01:37,984.984 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:01:37,987.987 INFO    ] Checking for system updates...
[2026-10-28 18:01:38,023.023 INFO    ] 200
[2026-10-28 18:01:38,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:01:38,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:01:38,080.080 INFO    ] No update needed
[2026-10-28 18:01:38,082.082 INFO    ] Checking for camera pi updates...
[2026-10-28 18:01:38,119.119 INFO    ] 200
[2026-10-28 18:01:38,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:01:38,166.166 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:01:38,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:01:38,261.261 INFO    ] No camera update needed
[2026-10-28 18:01:38,263.263 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:01:38,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:01:38,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:01:38,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:01:40,317.317 INFO    ] ================================================
[2026-10-28 18:01:40,332.332 INFO    ] Launching Daemon at Wed Oct 28 18:01:40 IST 2026
[2026-10-28 18:01:40,344.344 INFO    ] ================================================
[2026-10-28 18:01:40,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:01:40
[2026-10-28 18:01:41,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:01:41,760.760 INFO    ] Initializing speech engine...
[2026-10-28 18:01:41,772.772 INFO    ] 2026-10-28 18:01:41
[2026-10-28 18:01:42,019.019 INFO    ] 2026-10-28 18:01:42
[2026-10-28 18:01:42,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:01:42,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:01:42,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:01:42,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:01:42,587.587 INFO    ] time= 28/10/2026 18:01:42
[2026-10-28 18:01:42,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:01:42,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:01:42,767.767 INFO    ] No existing commands found in stream
[2026-10-28 18:01:47,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:01:47,795.795 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 18:01:52,380.380 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:01:52,382.382 INFO    ] Checking for system updates...
[2026-10-28 18:01:52,419.419 INFO    ] 200
[2026-10-28 18:01:52,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:01:52,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:01:52,482.482 INFO    ] No update needed
[2026-10-28 18:01:52,485.485 INFO    ] Checking for camera pi updates...
[2026-10-28 18:01:52,518.518 INFO    ] 200
[2026-10-28 18:01:52,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:01:52,565.565 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:01:52,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:01:52,651.651 INFO    ] No camera update needed
[2026-10-28 18:01:52,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:01:52,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:01:52,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:01:52,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:01:54,707.707 INFO    ] ================================================
[2026-10-28 18:01:54,724.724 INFO    ] Launching Daemon at Wed Oct 28 18:01:54 IST 2026
[2026-10-28 18:01:54,736.736 INFO    ] ================================================
[2026-10-28 18:01:55,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:01:55
[2026-10-28 18:01:55,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:01:56,144.144 INFO    ] Initializing speech engine...
[2026-10-28 18:01:56,158.158 INFO    ] 2026-10-28 18:01:56
[2026-10-28 18:01:56,420.420 INFO    ] 2026-10-28 18:01:56
[2026-10-28 18:01:56,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:01:56,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:01:56,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:01:57,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:01:57,027.027 INFO    ] time= 28/10/2026 18:01:57
[2026-10-28 18:01:57,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:01:57,105.105 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:01:57,254.254 INFO    ] No existing commands found in stream
[2026-10-28 18:02:02,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:02:02,291.291 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-28 18:02:04,377.377 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:02:04,380.380 INFO    ] Checking for system updates...
[2026-10-28 18:02:04,415.415 INFO    ] 200
[2026-10-28 18:02:04,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:02:04,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:02:04,477.477 INFO    ] No update needed
[2026-10-28 18:02:04,479.479 INFO    ] Checking for camera pi updates...
[2026-10-28 18:02:04,512.512 INFO    ] 200
[2026-10-28 18:02:04,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:02:04,560.560 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:02:04,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:02:04,643.643 INFO    ] No camera update needed
[2026-10-28 18:02:04,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:02:04,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:02:04,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:02:04,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:02:06,701.701 INFO    ] ================================================
[2026-10-28 18:02:06,716.716 INFO    ] Launching Daemon at Wed Oct 28 18:02:06 IST 2026
[2026-10-28 18:02:06,727.727 INFO    ] ================================================
[2026-10-28 18:02:07,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:02:07
[2026-10-28 18:02:07,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:02:08,153.153 INFO    ] Initializing speech engine...
[2026-10-28 18:02:08,169.169 INFO    ] 2026-10-28 18:02:08
[2026-10-28 18:02:08,436.436 INFO    ] 2026-10-28 18:02:08
[2026-10-28 18:02:08,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:02:08,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:02:08,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:02:09,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:02:09,046.046 INFO    ] time= 28/10/2026 18:02:09
[2026-10-28 18:02:09,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:02:09,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:02:09,220.220 INFO    ] No existing commands found in stream
[2026-10-28 18:02:14,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:02:14,248.248 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-28 18:02:15,234.234 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:02:15,236.236 INFO    ] Checking for system updates...
[2026-10-28 18:02:15,272.272 INFO    ] 200
[2026-10-28 18:02:15,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:02:15,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:02:15,335.335 INFO    ] No update needed
[2026-10-28 18:02:15,337.337 INFO    ] Checking for camera pi updates...
[2026-10-28 18:02:15,374.374 INFO    ] 200
[2026-10-28 18:02:15,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:02:15,416.416 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:02:15,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:02:15,501.501 INFO    ] No camera update needed
[2026-10-28 18:02:15,503.503 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:02:15,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:02:15,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:02:15,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:02:17,558.558 INFO    ] ================================================
[2026-10-28 18:02:17,573.573 INFO    ] Launching Daemon at Wed Oct 28 18:02:17 IST 2026
[2026-10-28 18:02:17,584.584 INFO    ] ================================================
[2026-10-28 18:02:18,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:02:18
[2026-10-28 18:02:18,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:02:19,011.011 INFO    ] Initializing speech engine...
[2026-10-28 18:02:19,020.020 INFO    ] 2026-10-28 18:02:19
[2026-10-28 18:02:19,266.266 INFO    ] 2026-10-28 18:02:19
[2026-10-28 18:02:19,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:02:19,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:02:19,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:02:19,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:02:19,863.863 INFO    ] time= 28/10/2026 18:02:19
[2026-10-28 18:02:19,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:02:19,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:02:20,069.069 INFO    ] No existing commands found in stream
[2026-10-28 18:02:25,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:02:25,082.082 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-28 18:02:26,459.459 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:02:26,462.462 INFO    ] Checking for system updates...
[2026-10-28 18:02:26,502.502 INFO    ] 200
[2026-10-28 18:02:26,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:02:26,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:02:26,568.568 INFO    ] No update needed
[2026-10-28 18:02:26,570.570 INFO    ] Checking for camera pi updates...
[2026-10-28 18:02:26,608.608 INFO    ] 200
[2026-10-28 18:02:26,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:02:26,656.656 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:02:26,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:02:26,758.758 INFO    ] No camera update needed
[2026-10-28 18:02:26,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:02:26,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:02:26,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:02:26,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:02:28,815.815 INFO    ] ================================================
[2026-10-28 18:02:28,830.830 INFO    ] Launching Daemon at Wed Oct 28 18:02:28 IST 2026
[2026-10-28 18:02:28,841.841 INFO    ] ================================================
[2026-10-28 18:02:29,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:02:29
[2026-10-28 18:02:30,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:02:30,304.304 INFO    ] Initializing speech engine...
[2026-10-28 18:02:30,324.324 INFO    ] 2026-10-28 18:02:30
[2026-10-28 18:02:30,589.589 INFO    ] 2026-10-28 18:02:30
[2026-10-28 18:02:30,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:02:30,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:02:30,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:02:31,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:02:31,214.214 INFO    ] time= 28/10/2026 18:02:31
[2026-10-28 18:02:31,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:02:31,240.240 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:02:31,396.396 INFO    ] No existing commands found in stream
[2026-10-28 18:02:36,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:02:36,424.424 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-28 18:02:40,020.020 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:02:40,022.022 INFO    ] Checking for system updates...
[2026-10-28 18:02:40,059.059 INFO    ] 200
[2026-10-28 18:02:40,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:02:40,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:02:40,117.117 INFO    ] No update needed
[2026-10-28 18:02:40,120.120 INFO    ] Checking for camera pi updates...
[2026-10-28 18:02:40,154.154 INFO    ] 200
[2026-10-28 18:02:40,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:02:40,200.200 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:02:40,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:02:40,293.293 INFO    ] No camera update needed
[2026-10-28 18:02:40,295.295 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:02:40,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:02:40,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:02:40,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:02:42,347.347 INFO    ] ================================================
[2026-10-28 18:02:42,362.362 INFO    ] Launching Daemon at Wed Oct 28 18:02:42 IST 2026
[2026-10-28 18:02:42,373.373 INFO    ] ================================================
[2026-10-28 18:02:42,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:02:42
[2026-10-28 18:02:43,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:02:43,788.788 INFO    ] Initializing speech engine...
[2026-10-28 18:02:43,794.794 INFO    ] 2026-10-28 18:02:43
[2026-10-28 18:02:44,086.086 INFO    ] 2026-10-28 18:02:44
[2026-10-28 18:02:44,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:02:44,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:02:44,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:02:44,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:02:44,711.711 INFO    ] time= 28/10/2026 18:02:44
[2026-10-28 18:02:44,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:02:44,738.738 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:02:44,884.884 INFO    ] Found 1 existing command(s) in stream
[2026-10-28 18:02:44,925.925 INFO    ] Checking historical command: ID=1793190764669-0
[2026-10-28 18:02:44,979.979 INFO    ] process_and_cleanup_command: msg_id=1793190764669-0
[2026-10-28 18:02:45,007.007 INFO    ] is_command_expired: timestamp=2026-10-28T12:32:44.454Z, expiry=30s
[2026-10-28 18:02:45,244.244 INFO    ] Command removed from stream: 1793190764669-0. returning for processing...
[2026-10-28 18:02:45,252.252 INFO    ] ***** get_valid_command
[2026-10-28 18:02:45,258.258 INFO    ] {'timestamp': '2026-10-28T12:32:44.454Z', 'command': 'start-order', 'data': '{"request_id":"start-order-1793190764454-a58pka6ej","orderId":"TM08202202261028180111351","is_vending":false}', 'source': 'webapp', 'timeout': '10'}
[2026-10-28 18:02:45,261.261 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1793190764454-a58pka6ej', 'is_vending': False, 'orderId': 'TM08202202261028180111351'}
[2026-10-28 18:02:45,264.264 INFO    ] Handling start order...
[2026-10-28 18:02:45,267.267 INFO    ] handle_start_order_command
[2026-10-28 18:02:45,364.364 INFO    ] _send_start_order_success: request_id=start-order-1793190764454-a58pka6ej, order_id=TM08202202261028180111351
[2026-10-28 18:02:45,415.415 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202202
[2026-10-28 18:02:45,540.540 INFO    ] [_send_start_order_success] Message added to stream with ID: 1793190765493-0
[2026-10-28 18:02:45,545.545 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-10-28 18:02:45,549.549 INFO    ] Checking for system updates...
[2026-10-28 18:02:45,655.655 INFO    ] 200
[2026-10-28 18:02:45,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:02:45,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:02:45,792.792 INFO    ] No update needed
[2026-10-28 18:02:45,798.798 INFO    ] Checking for camera pi updates...
[2026-10-28 18:02:45,838.838 INFO    ] 200
[2026-10-28 18:02:45,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:02:45,890.890 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:02:45,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:02:46,001.001 INFO    ] No camera update needed
[2026-10-28 18:02:46,011.011 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:02:46,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:02:46,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:02:46,064.064 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-28 18:02:46,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:02:48,194.194 INFO    ] ================================================
[2026-10-28 18:02:48,210.210 INFO    ] Launching Daemon at Wed Oct 28 18:02:48 IST 2026
[2026-10-28 18:02:48,221.221 INFO    ] ================================================
[2026-10-28 18:02:48,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:02:48
[2026-10-28 18:02:49,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:02:49,728.728 INFO    ] Initializing speech engine...
[2026-10-28 18:02:49,747.747 INFO    ] 2026-10-28 18:02:49
[2026-10-28 18:02:50,034.034 INFO    ] 2026-10-28 18:02:50
[2026-10-28 18:02:50,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:02:50,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:02:50,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:02:50,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:02:50,669.669 INFO    ] time= 28/10/2026 18:02:50
[2026-10-28 18:02:50,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:02:50,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:02:50,954.954 INFO    ] Found 2 existing command(s) in stream
[2026-10-28 18:02:50,996.996 INFO    ] Checking historical command: ID=1793190765493-0
[2026-10-28 18:02:51,060.060 INFO    ] process_and_cleanup_command: msg_id=1793190765493-0
[2026-10-28 18:02:51,115.115 INFO    ] is_command_expired: timestamp=2026-10-28T12:32:45.375295Z, expiry=30s
[2026-10-28 18:02:51,348.348 INFO    ] Command removed from stream: 1793190765493-0. returning for processing...
[2026-10-28 18:02:51,364.364 INFO    ] ***** get_valid_command
[2026-10-28 18:02:51,371.371 INFO    ] {'metadata_request_id': 'start-order-1793190764454-a58pka6ej', 'message_type': 'command_response', 'imei': 'TM08202202', 'message': 'start-order success', 'timestamp': '2026-10-28T12:32:45.375295Z', 'status': 'success', 'metadata_order_id': 'TM08202202261028180111351'}
[2026-10-28 18:02:51,411.411 INFO    ] Checking historical command: ID=1793190766925-0
[2026-10-28 18:02:51,433.433 INFO    ] process_and_cleanup_command: msg_id=1793190766925-0
[2026-10-28 18:02:51,436.436 INFO    ] is_command_expired: timestamp=2026-10-28T12:32:46.676Z, expiry=30s
[2026-10-28 18:02:51,600.600 INFO    ] Command removed from stream: 1793190766925-0. returning for processing...
[2026-10-28 18:02:51,655.655 INFO    ] ***** get_valid_command
[2026-10-28 18:02:51,659.659 INFO    ] {'source': 'webapp', 'timestamp': '2026-10-28T12:32:46.676Z', 'timeout': '60', 'data': '{"request_id":"process-order-1793190766676-42lfrjr4g","orderId":"TM08202202261028180111351","is_vending":false,"accessCode":"55935471"}', 'command': 'process-order'}
[2026-10-28 18:02:51,666.666 INFO    ] ***** Parsed command data: {'is_vending': False, 'accessCode': '55935471', 'orderId': 'TM08202202261028180111351', 'request_id': 'process-order-1793190766676-42lfrjr4g'}
[2026-10-28 18:02:51,670.670 INFO    ] Handling process order...
[2026-10-28 18:02:51,678.678 INFO    ] Processing process-order command...
[2026-10-28 18:02:51,686.686 INFO    ] 🔍 Lock file Order ID: TM08202202261028180111351, TS: 2026-10-28 18:02:45
[2026-10-28 18:02:51,703.703 INFO    ] ✅ Order lock valid for TM08202202261028180111351
[2026-10-28 18:02:51,708.708 INFO    ] Received access code in process-order, skipping PHP API call
[2026-10-28 18:02:51,714.714 INFO    ] processing access code 55935471 for order TM08202202261028180111351
[2026-10-28 18:02:51,719.719 INFO    ] 🔍 Lock file Order ID: TM08202202261028180111351, TS: 2026-10-28 18:02:45
[2026-10-28 18:02:51,724.724 INFO    ] ✅ Order lock valid for TM08202202261028180111351
[2026-10-28 18:02:51,729.729 INFO    ] 2026-10-28 18:02:51
[2026-10-28 18:02:51,776.776 INFO    ] 200
[2026-10-28 18:02:51,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:02:51,790.790 INFO    ] 55935471
[2026-10-28 18:02:51,796.796 INFO    ] 2026-10-28 18:02:51
[2026-10-28 18:02:51,801.801 INFO    ] session id :751278997
[2026-10-28 18:02:51,808.808 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=55935471&imei=TM08202202&session_id=751278997
[2026-10-28 18:02:53,512.512 INFO    ] 200
[2026-10-28 18:02:53,515.515 INFO    ] {"rstatus": true, "status": true, "msg": "Order Data", "data": {"proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "qty": 1, "sku_total": 20, "offer_desc": "", "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "door_id": "2", "mrp": "20", "offer_id": "", "unit_price": 20}], "bill_amount": "20", "mobile": "9535575664", "invoice_bill": "20", "order_id": "TM08202202261028180111351", "access_code": "55935471"}}
[2026-10-28 18:02:53,518.518 INFO    ] 20
[2026-10-28 18:02:53,521.521 INFO    ] TM08202202261028180111351
[2026-10-28 18:02:53,524.524 INFO    ] 9535575664
[2026-10-28 18:02:53,527.527 INFO    ] 2026-10-28 18:02:53
[2026-10-28 18:02:53,530.530 INFO    ] Door Opening for user mobile ending with  five six six four 
[2026-10-28 18:02:53,534.534 INFO    ] Door Opening for user mobile ending with  five six six four 
[2026-10-28 18:02:53,537.537 INFO    ] 62a33213a6673bb5157493a6c046ee1b
[2026-10-28 18:02:53,540.540 INFO    ] 2026-10-28 18:02:53
[2026-10-28 18:02:53,543.543 INFO    ] playing audio file
[2026-10-28 18:02:53,561.561 INFO    ] 2026-10-28 18:02:53
[2026-10-28 18:02:53,565.565 INFO    ] 2026-10-28 18:02:53
[2026-10-28 18:02:53,569.569 INFO    ] publish_status: order_id=TM08202202261028180111351
[2026-10-28 18:02:53,573.573 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028180111351
[2026-10-28 18:02:53,710.710 INFO    ] [publish_status] Message added to stream with ID: 1793190773670-0
[2026-10-28 18:02:53,713.713 INFO    ] Published to order:TM08202202261028180111351: {'server_status': 'order-started', 'server_response': '{"data": {"proposed_sku_json": [{"unit_price": 20, "mrp": "20", "skuid": "185993", "tray_id": "43", "offer_id": "", "qty": 1, "sku_total": 20, "image_url": "https://images.tinymart.in/product/185993-3509.webp", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "offer_desc": "", "door_id": "2"}], "order_id": "TM08202202261028180111351", "bill_amount": "20", "mobile": "9535575664", "invoice_bill": "20", "access_code": "55935471"}, "status": true, "rstatus": true, "msg": "Order Data"}', 'order_id': 'TM08202202261028180111351', 'timestamp': '2026-10-28T12:32:53.567324Z'} (ID: 1793190773670-0)
[2026-10-28 18:02:54,513.513 INFO    ] {'server_status': 'order-started', 'server_response': {'data': {'proposed_sku_json': [{'unit_price': 20, 'mrp': '20', 'skuid': '185993', 'tray_id': '43', 'offer_id': '', 'qty': 1, 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'offer_desc': '', 'door_id': '2'}], 'order_id': 'TM08202202261028180111351', 'bill_amount': '20', 'mobile': '9535575664', 'invoice_bill': '20', 'access_code': '55935471'}, 'status': True, 'rstatus': True, 'msg': 'Order Data'}, 'order_id': 'TM08202202261028180111351'}
[2026-10-28 18:02:54,516.516 INFO    ] 200
[2026-10-28 18:02:54,518.518 INFO    ] {"data":{"server_status":"order-started","server_response":{"data":{"proposed_sku_json":[{"unit_price":20,"mrp":"20","skuid":"185993","tray_id":"43","offer_id":"","qty":1,"sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","offer_desc":"","door_id":"2"}],"order_id":"TM08202202261028180111351","bill_amount":"20","mobile":"9535575664","invoice_bill":"20","access_code":"55935471"},"status":true,"rstatus":true,"msg":"Order Data"},"order_id":"TM08202202261028180111351"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 18:02:54,522.522 INFO    ] {'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'order-started', 'server_response': {'status': True, 'data': {'proposed_sku_json': [{'door_id': '2', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'skuid': '185993', 'offer_id': '', 'qty': 1, 'sku_total': 20, 'mrp': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'offer_desc': '', 'unit_price': 20, 'tray_id': '43'}], 'order_id': 'TM08202202261028180111351', 'bill_amount': '20', 'mobile': '9535575664', 'invoice_bill': '20', 'access_code': '55935471'}, 'rstatus': True, 'msg': 'Order Data'}, 'order_id': 'TM08202202261028180111351'}}
[2026-10-28 18:02:54,525.525 INFO    ] 2026-10-28 18:02:54
[2026-10-28 18:02:54,569.569 INFO    ] 200
[2026-10-28 18:02:54,572.572 INFO    ] True
[2026-10-28 18:02:54,713.713 INFO    ] 200
[2026-10-28 18:02:54,716.716 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "SectionStatus": {"SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}}
[2026-10-28 18:02:54,720.720 INFO    ] {'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait', 'status': 'False', 'rstatus': False, 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}}
[2026-10-28 18:02:54,723.723 INFO    ] *** process_order ***
[2026-10-28 18:02:55,921.921 INFO    ] 200
[2026-10-28 18:02:55,924.924 INFO    ] {"rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "SectionStatus": {"SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}}
[2026-10-28 18:02:55,927.927 INFO    ] {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait', 'delay': 0, 'status': 'True', 'rstatus': True, 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}}
[2026-10-28 18:02:55,930.930 INFO    ] *** process_order ***
[2026-10-28 18:02:55,933.933 INFO    ] publish_status: order_id=TM08202202261028180111351
[2026-10-28 18:02:55,936.936 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028180111351
[2026-10-28 18:02:56,052.052 INFO    ] [publish_status] Message added to stream with ID: 1793190776013-0
[2026-10-28 18:02:56,055.055 INFO    ] Published to order:TM08202202261028180111351: {'server_status': 'doorOpened', 'server_response': '{"SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Door is open...", "delay": 0, "status": "True", "rstatus": true, "SectionStatus": {"UI_Header": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "Note": ""}, "SectionMain": {"Header": "Processing Order"}}', 'order_id': 'TM08202202261028180111351'} (ID: 1793190776013-0)
[2026-10-28 18:02:57,165.165 INFO    ] 2026-10-28 18:02:57
[2026-10-28 18:02:57,168.168 INFO    ] publish_status: order_id=TM08202202261028180111351
[2026-10-28 18:02:57,171.171 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028180111351
[2026-10-28 18:02:57,296.296 INFO    ] [publish_status] Message added to stream with ID: 1793190777256-0
[2026-10-28 18:02:57,299.299 INFO    ] Published to order:TM08202202261028180111351: {'server_status': 'processOrder', 'server_response': '{"SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait", "delay": 0, "status": "True", "rstatus": true, "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "SectionMain": {"Header": "Processing Order"}}', 'order_id': 'TM08202202261028180111351', 'timestamp': '2026-10-28T12:32:57.166622Z'} (ID: 1793190777256-0)
[2026-10-28 18:02:57,543.543 INFO    ] {'server_status': 'processOrder', 'server_response': {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait', 'delay': 0, 'status': 'True', 'rstatus': True, 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}}, 'order_id': 'TM08202202261028180111351'}
[2026-10-28 18:02:57,546.546 INFO    ] 200
[2026-10-28 18:02:57,549.549 INFO    ] {"data":{"server_status":"processOrder","server_response":{"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"voiceNote":"Please Wait","delay":0,"status":"true","rstatus":true,"SectionStatus":{"UI_Header":"","Note":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order"},"SectionMain":{"Header":"Processing Order"}},"order_id":"TM08202202261028180111351"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 18:02:57,553.553 INFO    ] {'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'processOrder', 'server_response': {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait', 'delay': 0, 'status': 'true', 'rstatus': True, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionMain': {'Header': 'Processing Order'}}, 'order_id': 'TM08202202261028180111351'}}
[2026-10-28 18:02:57,556.556 INFO    ] 2026-10-28 18:02:57
[2026-10-28 18:02:57,559.559 INFO    ] None
[2026-10-28 18:02:57,562.562 INFO    ] Opening Door now
[2026-10-28 18:02:57,566.566 INFO    ] Opening Door now
[2026-10-28 18:02:57,569.569 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-10-28 18:02:57,572.572 INFO    ] 2026-10-28 18:02:57
[2026-10-28 18:02:57,575.575 INFO    ] playing audio file
[2026-10-28 18:02:57,595.595 INFO    ] 2026-10-28 18:02:57
[2026-10-28 18:02:57,599.599 INFO    ] 2026-10-28 18:02:57
[2026-10-28 18:03:00,660.660 INFO    ] 200
[2026-10-28 18:03:00,663.663 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 2 is open now", "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"}}
[2026-10-28 18:03:00,667.667 INFO    ] {'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'voiceNote': 'Door 2 is open now', 'status': 'False', 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-10-28 18:03:03,728.728 INFO    ] 200
[2026-10-28 18:03:03,731.731 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 18:03:03,735.735 INFO    ] {'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-10-28 18:03:06,797.797 INFO    ] 200
[2026-10-28 18:03:06,800.800 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 18:03:06,804.804 INFO    ] Please close door 2
[2026-10-28 18:03:06,807.807 INFO    ] Please close door 2
[2026-10-28 18:03:06,810.810 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-10-28 18:03:06,814.814 INFO    ] 2026-10-28 18:03:06
[2026-10-28 18:03:06,817.817 INFO    ] playing audio file
[2026-10-28 18:03:06,835.835 INFO    ] 2026-10-28 18:03:06
[2026-10-28 18:03:06,839.839 INFO    ] publish_status: order_id=TM08202202261028180111351
[2026-10-28 18:03:06,843.843 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028180111351
[2026-10-28 18:03:07,014.014 INFO    ] [publish_status] Message added to stream with ID: 1793190786958-0
[2026-10-28 18:03:07,018.018 INFO    ] Published to order:TM08202202261028180111351: {'server_status': 'OrderStatus', 'server_response': '{"error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "voiceNote": "Please close door 2", "status": "False", "rstatus": false, "SectionStatus": {"UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2", "SubHeader": "Please Pick the Products and close the door"}, "SectionMain": {"Header": "Door Open"}}', 'order_id': 'TM08202202261028180111351', 'timestamp': '2026-10-28T12:33:06.837709Z'} (ID: 1793190786958-0)
[2026-10-28 18:03:07,829.829 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM08202202261028180111351'}
[2026-10-28 18:03:07,832.832 INFO    ] 200
[2026-10-28 18:03:07,834.834 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"error":{"tmessage":"In Progress","umessage":"In Progress","data":[],"code":20001},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]},"voiceNote":"Please close door 2","status":"false","rstatus":false,"SectionStatus":{"UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 2","SubHeader":"Please Pick the Products and close the door"},"SectionMain":{"Header":"Door Open"}},"order_id":"TM08202202261028180111351"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 18:03:07,837.837 INFO    ] {'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'OrderStatus', 'server_response': {'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': [], 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'voiceNote': 'Please close door 2', 'status': 'false', 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM08202202261028180111351'}}
[2026-10-28 18:03:07,840.840 INFO    ] {'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-10-28 18:03:10,896.896 INFO    ] 200
[2026-10-28 18:03:10,898.898 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 18:03:10,901.901 INFO    ] {'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-10-28 18:03:13,958.958 INFO    ] 200
[2026-10-28 18:03:13,961.961 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 18:03:13,964.964 INFO    ] {'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}, 'voiceNote': 'Please close door 2', 'status': 'False', 'rstatus': False, 'SectionStatus': {'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}}
[2026-10-28 18:03:17,048.048 INFO    ] 200
[2026-10-28 18:03:17,051.051 INFO    ] {"rstatus": true, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "status": "True", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed", "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": ""}}
[2026-10-28 18:03:17,055.055 INFO    ] publish_status: order_id=TM08202202261028180111351
[2026-10-28 18:03:17,057.057 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028180111351
[2026-10-28 18:03:17,183.183 INFO    ] [publish_status] Message added to stream with ID: 1793190797128-0
[2026-10-28 18:03:17,186.186 INFO    ] Published to order:TM08202202261028180111351: {'server_status': 'OrderStatus', 'server_response': '{"SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "voiceNote": "Transaction Completed", "delay": 100, "status": "True", "rstatus": true, "SectionStatus": {"UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in", "Header": " Order is complete ", "SubHeader": "Please wait for invoice to generate"}, "SectionMain": {"Header": "Door Closed"}}', 'order_id': 'TM08202202261028180111351', 'timestamp': '2026-10-28T12:33:17.053288Z'} (ID: 1793190797128-0)
[2026-10-28 18:03:17,943.943 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'voiceNote': 'Transaction Completed', 'delay': 100, 'status': 'True', 'rstatus': True, 'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'SectionMain': {'Header': 'Door Closed'}}, 'order_id': 'TM08202202261028180111351'}
[2026-10-28 18:03:17,945.945 INFO    ] 200
[2026-10-28 18:03:17,948.948 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionSKU":{"Header":"If you like us, tell others... else tell us","skus":[]},"voiceNote":"Transaction Completed","delay":100,"status":"true","rstatus":true,"SectionStatus":{"UI_Header":"","Note":"If any due amount, clear at https:\/\/go.tinymart.in","Header":" Order is complete ","SubHeader":"Please wait for invoice to generate"},"SectionMain":{"Header":"Door Closed"}},"order_id":"TM08202202261028180111351"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 18:03:17,951.951 INFO    ] {'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'OrderStatus', 'server_response': {'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'voiceNote': 'Transaction Completed', 'delay': 100, 'status': 'true', 'rstatus': True, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'SectionMain': {'Header': 'Door Closed'}}, 'order_id': 'TM08202202261028180111351'}}
[2026-10-28 18:03:17,954.954 INFO    ] {'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'voiceNote': 'Transaction Completed', 'delay': 100, 'status': 'True', 'rstatus': True, 'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'SectionMain': {'Header': 'Door Closed'}}
[2026-10-28 18:03:17,957.957 INFO    ] 2026-10-28 18:03:17
[2026-10-28 18:03:17,959.959 INFO    ] Order Completed 
[2026-10-28 18:03:17,961.961 INFO    ] Order Completed 
[2026-10-28 18:03:17,964.964 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-10-28 18:03:17,966.966 INFO    ] 2026-10-28 18:03:17
[2026-10-28 18:03:17,969.969 INFO    ] playing audio file
[2026-10-28 18:03:17,986.986 INFO    ] 2026-10-28 18:03:17
[2026-10-28 18:03:17,989.989 INFO    ] {'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'voiceNote': 'Transaction Completed', 'delay': 100, 'status': 'True', 'rstatus': True, 'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'SectionMain': {'Header': 'Door Closed'}}
[2026-10-28 18:03:17,991.991 INFO    ] 2026-10-28 18:03:17
[2026-10-28 18:03:18,646.646 INFO    ] 200
[2026-10-28 18:03:18,649.649 INFO    ] {"rstatus": true, "cart_offer_desc": "", "total_amount": 40, "skus": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "qty": 2, "sku_total": 40, "tray_id": "43", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "door_id": "", "mrp": "20", "offer_id": "", "unit_price": "20"}], "bill_amount": 40, "res": true, "anomaly": 0, "imei": "TM08202202", "orderId": "TM08202202261028180111351", "order_status": "", "userId": "9535575664"}
[2026-10-28 18:03:18,652.652 INFO    ] {'bill_amount': 40, 'anomaly': 0, 'total_amount': 40, 'order_status': '', 'imei': 'TM08202202', 'skus': [{'unit_price': '20', 'mrp': '20', 'skuid': '185993', 'tray_id': '43', 'offer_id': '', 'qty': 2, 'sku_total': 40, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'door_id': ''}], 'cart_offer_desc': '', 'res': True, 'rstatus': True, 'orderId': 'TM08202202261028180111351', 'userId': '9535575664'}
[2026-10-28 18:03:18,658.658 INFO    ] {'bill_amount': 40, 'anomaly': 0, 'total_amount': 40, 'order_status': '', 'imei': 'TM08202202', 'skus': [{'unit_price': '20', 'mrp': '20', 'skuid': '185993', 'tray_id': '43', 'offer_id': '', 'qty': 2, 'sku_total': 40, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'door_id': ''}], 'cart_offer_desc': '', 'res': True, 'rstatus': True, 'orderId': 'TM08202202261028180111351', 'userId': '9535575664'}
[2026-10-28 18:03:18,663.663 INFO    ] 2026-10-28 18:03:18
[2026-10-28 18:03:18,666.666 INFO    ] 2026-10-28 18:03:18
[2026-10-28 18:03:18,670.670 INFO    ] 20
[2026-10-28 18:03:18,673.673 INFO    ] 2026-10-28 18:03:18
[2026-10-28 18:03:18,677.677 INFO    ] 2026-10-28 18:03:18
[2026-10-28 18:03:18,681.681 INFO    ]  You had Picked Excess of 20 Your Bill Amount is 40
[2026-10-28 18:03:18,684.684 INFO    ]  You had Picked Excess of 20 Your Bill Amount is 40
[2026-10-28 18:03:18,688.688 INFO    ] bd6f044286e7618ec678608a3b8a386f
[2026-10-28 18:03:18,697.697 INFO    ] 2026-10-28 18:03:18
[2026-10-28 18:03:18,701.701 INFO    ] playing audio file
[2026-10-28 18:03:18,720.720 INFO    ] 2026-10-28 18:03:18
[2026-10-28 18:03:18,724.724 INFO    ] 2026-10-28 18:03:18
[2026-10-28 18:03:18,729.729 INFO    ] publish_status: order_id=TM08202202261028180111351
[2026-10-28 18:03:18,733.733 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028180111351
[2026-10-28 18:03:18,856.856 INFO    ] [publish_status] Message added to stream with ID: 1793190798808-0
[2026-10-28 18:03:18,860.860 INFO    ] Published to order:TM08202202261028180111351: {'server_status': 'invoiceOrder', 'server_response': '{"bill_amount": 40, "anomaly": 0, "total_amount": 40, "order_status": "", "imei": "TM08202202", "skus": [{"unit_price": "20", "mrp": "20", "skuid": "185993", "tray_id": "43", "offer_id": "", "qty": 2, "sku_total": 40, "image_url": "https://images.tinymart.in/product/185993-3509.webp", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "door_id": ""}], "cart_offer_desc": "", "res": true, "rstatus": true, "orderId": "TM08202202261028180111351", "userId": "9535575664"}', 'order_id': 'TM08202202261028180111351', 'timestamp': '2026-10-28T12:33:18.726397Z'} (ID: 1793190798808-0)
[2026-10-28 18:03:19,121.121 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'bill_amount': 40, 'anomaly': 0, 'total_amount': 40, 'order_status': '', 'imei': 'TM08202202', 'skus': [{'unit_price': '20', 'mrp': '20', 'skuid': '185993', 'tray_id': '43', 'offer_id': '', 'qty': 2, 'sku_total': 40, 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'door_id': ''}], 'cart_offer_desc': '', 'res': True, 'rstatus': True, 'orderId': 'TM08202202261028180111351', 'userId': '9535575664'}, 'order_id': 'TM08202202261028180111351'}
[2026-10-28 18:03:19,125.125 INFO    ] 200
[2026-10-28 18:03:19,127.127 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"bill_amount":40,"anomaly":0,"total_amount":40,"order_status":"","imei":"TM08202202","skus":[{"unit_price":"20","mrp":"20","skuid":"185993","tray_id":"43","offer_id":"","qty":2,"sku_total":40,"image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice","door_id":""}],"cart_offer_desc":"","res":true,"rstatus":true,"orderId":"TM08202202261028180111351","userId":"9535575664"},"order_id":"TM08202202261028180111351"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 18:03:19,131.131 INFO    ] {'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'bill_amount': 40, 'res': True, 'total_amount': 40, 'order_status': '', 'imei': 'TM08202202', 'skus': [{'door_id': '', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'skuid': '185993', 'offer_id': '', 'qty': 2, 'sku_total': 40, 'mrp': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'tray_id': '43'}], 'cart_offer_desc': '', 'anomaly': 0, 'rstatus': True, 'orderId': 'TM08202202261028180111351', 'userId': '9535575664'}, 'order_id': 'TM08202202261028180111351'}}
[2026-10-28 18:03:19,134.134 INFO    ] {'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'bill_amount': 40, 'res': True, 'total_amount': 40, 'order_status': '', 'imei': 'TM08202202', 'skus': [{'door_id': '', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'skuid': '185993', 'offer_id': '', 'qty': 2, 'sku_total': 40, 'mrp': '20', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice', 'unit_price': '20', 'tray_id': '43'}], 'cart_offer_desc': '', 'anomaly': 0, 'rstatus': True, 'orderId': 'TM08202202261028180111351', 'userId': '9535575664'}, 'order_id': 'TM08202202261028180111351'}}
[2026-10-28 18:03:19,137.137 INFO    ] 2026-10-28 18:03:19
[2026-10-28 18:03:23,779.779 INFO    ] 200
[2026-10-28 18:03:23,782.782 INFO    ] {"orders": [], "tray_synced": ["TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351", "TM08202202261028180111351"], "orders_synced": [], "tray_sync": [], "order_items_synced": ["TM08202202261028180111351_0"], "status": true, "orders_data_synced": [], "order_items": [], "orders_data": []}
[2026-10-28 18:03:23,787.787 INFO    ] 2026-10-28 18:03:23
[2026-10-28 18:03:23,939.939 INFO    ] 200
[2026-10-28 18:03:23,942.942 INFO    ] True
[2026-10-28 18:03:23,945.945 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202202261028180111351
[2026-10-28 18:03:23,950.950 INFO    ] start order file deleted
[2026-10-28 18:03:23,954.954 INFO    ] Checking for system updates...
[2026-10-28 18:03:23,994.994 INFO    ] 200
[2026-10-28 18:03:23,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:03:24,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:03:24,060.060 INFO    ] No update needed
[2026-10-28 18:03:24,065.065 INFO    ] Checking for camera pi updates...
[2026-10-28 18:03:24,100.100 INFO    ] 200
[2026-10-28 18:03:24,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:03:24,154.154 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:03:24,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:03:24,249.249 INFO    ] No camera update needed
[2026-10-28 18:03:24,252.252 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:03:24,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:03:24,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:03:24,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:03:26,316.316 INFO    ] ================================================
[2026-10-28 18:03:26,331.331 INFO    ] Launching Daemon at Wed Oct 28 18:03:26 IST 2026
[2026-10-28 18:03:26,343.343 INFO    ] ================================================
[2026-10-28 18:03:27,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:03:27
[2026-10-28 18:03:27,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:03:28,047.047 INFO    ] Initializing speech engine...
[2026-10-28 18:03:28,058.058 INFO    ] 2026-10-28 18:03:28
[2026-10-28 18:03:28,334.334 INFO    ] 2026-10-28 18:03:28
[2026-10-28 18:03:28,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:03:28,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:03:28,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:03:29,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:03:29,123.123 INFO    ] time= 28/10/2026 18:03:29
[2026-10-28 18:03:29,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:03:29,237.237 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:03:29,450.450 INFO    ] No existing commands found in stream
[2026-10-28 18:03:34,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:03:34,465.465 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-28 18:03:36,857.857 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:03:36,860.860 INFO    ] Checking for system updates...
[2026-10-28 18:03:36,898.898 INFO    ] 200
[2026-10-28 18:03:36,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:03:36,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:03:36,960.960 INFO    ] No update needed
[2026-10-28 18:03:36,962.962 INFO    ] Checking for camera pi updates...
[2026-10-28 18:03:36,995.995 INFO    ] 200
[2026-10-28 18:03:36,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:03:37,039.039 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:03:37,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:03:37,093.093 INFO    ] No camera update needed
[2026-10-28 18:03:37,096.096 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:03:37,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:03:37,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:03:37,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:03:39,149.149 INFO    ] ================================================
[2026-10-28 18:03:39,166.166 INFO    ] Launching Daemon at Wed Oct 28 18:03:39 IST 2026
[2026-10-28 18:03:39,178.178 INFO    ] ================================================
[2026-10-28 18:03:39,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:03:39
[2026-10-28 18:03:40,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:03:40,625.625 INFO    ] Initializing speech engine...
[2026-10-28 18:03:40,651.651 INFO    ] 2026-10-28 18:03:40
[2026-10-28 18:03:40,936.936 INFO    ] 2026-10-28 18:03:40
[2026-10-28 18:03:40,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:03:41,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:03:41,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:03:41,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:03:41,544.544 INFO    ] time= 28/10/2026 18:03:41
[2026-10-28 18:03:41,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:03:41,605.605 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:03:41,756.756 INFO    ] No existing commands found in stream
[2026-10-28 18:03:46,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:03:46,790.790 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-28 18:03:47,669.669 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:03:47,672.672 INFO    ] Checking for system updates...
[2026-10-28 18:03:47,714.714 INFO    ] 200
[2026-10-28 18:03:47,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:03:47,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:03:47,774.774 INFO    ] No update needed
[2026-10-28 18:03:47,777.777 INFO    ] Checking for camera pi updates...
[2026-10-28 18:03:47,812.812 INFO    ] 200
[2026-10-28 18:03:47,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:03:47,857.857 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:03:47,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:03:47,933.933 INFO    ] No camera update needed
[2026-10-28 18:03:47,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:03:47,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:03:47,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:03:47,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:03:49,994.994 INFO    ] ================================================
[2026-10-28 18:03:50,010.010 INFO    ] Launching Daemon at Wed Oct 28 18:03:50 IST 2026
[2026-10-28 18:03:50,021.021 INFO    ] ================================================
[2026-10-28 18:03:50,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:03:50
[2026-10-28 18:03:51,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:03:51,437.437 INFO    ] Initializing speech engine...
[2026-10-28 18:03:51,446.446 INFO    ] 2026-10-28 18:03:51
[2026-10-28 18:03:51,694.694 INFO    ] 2026-10-28 18:03:51
[2026-10-28 18:03:51,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:03:52,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:03:52,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:03:52,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:03:52,288.288 INFO    ] time= 28/10/2026 18:03:52
[2026-10-28 18:03:52,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:03:52,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:03:52,452.452 INFO    ] No existing commands found in stream
[2026-10-28 18:03:57,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:03:57,475.475 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-28 18:03:59,504.504 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:03:59,507.507 INFO    ] Checking for system updates...
[2026-10-28 18:03:59,544.544 INFO    ] 200
[2026-10-28 18:03:59,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:03:59,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:03:59,604.604 INFO    ] No update needed
[2026-10-28 18:03:59,607.607 INFO    ] Checking for camera pi updates...
[2026-10-28 18:03:59,642.642 INFO    ] 200
[2026-10-28 18:03:59,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:03:59,686.686 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:03:59,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:03:59,777.777 INFO    ] No camera update needed
[2026-10-28 18:03:59,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:03:59,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:03:59,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:03:59,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:04:01,839.839 INFO    ] ================================================
[2026-10-28 18:04:01,860.860 INFO    ] Launching Daemon at Wed Oct 28 18:04:01 IST 2026
[2026-10-28 18:04:01,876.876 INFO    ] ================================================
[2026-10-28 18:04:02,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:04:02
[2026-10-28 18:04:03,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:04:03,445.445 INFO    ] Initializing speech engine...
[2026-10-28 18:04:03,453.453 INFO    ] 2026-10-28 18:04:03
[2026-10-28 18:04:03,753.753 INFO    ] 2026-10-28 18:04:03
[2026-10-28 18:04:03,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:04:04,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:04:04,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:04:04,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:04:04,359.359 INFO    ] time= 28/10/2026 18:04:04
[2026-10-28 18:04:04,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:04:04,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:04:04,552.552 INFO    ] No existing commands found in stream
[2026-10-28 18:04:09,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:04:09,577.577 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-28 18:04:11,911.911 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:04:11,914.914 INFO    ] Checking for system updates...
[2026-10-28 18:04:11,950.950 INFO    ] 200
[2026-10-28 18:04:11,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:04:12,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:04:12,013.013 INFO    ] No update needed
[2026-10-28 18:04:12,015.015 INFO    ] Checking for camera pi updates...
[2026-10-28 18:04:12,049.049 INFO    ] 200
[2026-10-28 18:04:12,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:04:12,097.097 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:04:12,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:04:12,304.304 INFO    ] No camera update needed
[2026-10-28 18:04:12,307.307 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:04:12,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:04:12,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:04:12,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:04:14,362.362 INFO    ] ================================================
[2026-10-28 18:04:14,378.378 INFO    ] Launching Daemon at Wed Oct 28 18:04:14 IST 2026
[2026-10-28 18:04:14,390.390 INFO    ] ================================================
[2026-10-28 18:04:14,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:04:14
[2026-10-28 18:04:15,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:04:15,834.834 INFO    ] Initializing speech engine...
[2026-10-28 18:04:15,846.846 INFO    ] 2026-10-28 18:04:15
[2026-10-28 18:04:16,117.117 INFO    ] 2026-10-28 18:04:16
[2026-10-28 18:04:16,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:04:16,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:04:16,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:04:16,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:04:16,763.763 INFO    ] time= 28/10/2026 18:04:16
[2026-10-28 18:04:16,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:04:16,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:04:16,935.935 INFO    ] No existing commands found in stream
[2026-10-28 18:04:21,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:04:21,965.965 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 18:04:24,146.146 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:04:24,149.149 INFO    ] Checking for system updates...
[2026-10-28 18:04:24,185.185 INFO    ] 200
[2026-10-28 18:04:24,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:04:24,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:04:24,253.253 INFO    ] No update needed
[2026-10-28 18:04:24,256.256 INFO    ] Checking for camera pi updates...
[2026-10-28 18:04:24,296.296 INFO    ] 200
[2026-10-28 18:04:24,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:04:24,347.347 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:04:24,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:04:24,436.436 INFO    ] No camera update needed
[2026-10-28 18:04:24,439.439 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:04:24,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:04:24,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:04:24,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:04:26,497.497 INFO    ] ================================================
[2026-10-28 18:04:26,512.512 INFO    ] Launching Daemon at Wed Oct 28 18:04:26 IST 2026
[2026-10-28 18:04:26,523.523 INFO    ] ================================================
[2026-10-28 18:04:27,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:04:27
[2026-10-28 18:04:27,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:04:28,191.191 INFO    ] Initializing speech engine...
[2026-10-28 18:04:28,200.200 INFO    ] 2026-10-28 18:04:28
[2026-10-28 18:04:28,519.519 INFO    ] 2026-10-28 18:04:28
[2026-10-28 18:04:28,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:04:28,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:04:28,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:04:29,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:04:29,327.327 INFO    ] time= 28/10/2026 18:04:29
[2026-10-28 18:04:29,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:04:29,449.449 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:04:29,598.598 INFO    ] No existing commands found in stream
[2026-10-28 18:04:34,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:04:34,611.611 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-28 18:04:36,598.598 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:04:36,601.601 INFO    ] Checking for system updates...
[2026-10-28 18:04:36,639.639 INFO    ] 200
[2026-10-28 18:04:36,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:04:36,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:04:36,698.698 INFO    ] No update needed
[2026-10-28 18:04:36,701.701 INFO    ] Checking for camera pi updates...
[2026-10-28 18:04:36,734.734 INFO    ] 200
[2026-10-28 18:04:36,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:04:36,777.777 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:04:36,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:04:36,862.862 INFO    ] No camera update needed
[2026-10-28 18:04:36,864.864 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:04:36,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:04:36,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:04:36,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:04:38,920.920 INFO    ] ================================================
[2026-10-28 18:04:38,935.935 INFO    ] Launching Daemon at Wed Oct 28 18:04:38 IST 2026
[2026-10-28 18:04:38,946.946 INFO    ] ================================================
[2026-10-28 18:04:39,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:04:39
[2026-10-28 18:04:40,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:04:40,626.626 INFO    ] Initializing speech engine...
[2026-10-28 18:04:40,638.638 INFO    ] 2026-10-28 18:04:40
[2026-10-28 18:04:40,950.950 INFO    ] 2026-10-28 18:04:40
[2026-10-28 18:04:41,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:04:41,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:04:41,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:04:41,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:04:41,756.756 INFO    ] time= 28/10/2026 18:04:41
[2026-10-28 18:04:41,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:04:41,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:04:42,030.030 INFO    ] No existing commands found in stream
[2026-10-28 18:04:47,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:04:47,054.054 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-28 18:04:50,203.203 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:04:50,206.206 INFO    ] Checking for system updates...
[2026-10-28 18:04:50,243.243 INFO    ] 200
[2026-10-28 18:04:50,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:04:50,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:04:50,305.305 INFO    ] No update needed
[2026-10-28 18:04:50,307.307 INFO    ] Checking for camera pi updates...
[2026-10-28 18:04:50,347.347 INFO    ] 200
[2026-10-28 18:04:50,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:04:50,392.392 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:04:50,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:04:50,480.480 INFO    ] No camera update needed
[2026-10-28 18:04:50,482.482 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:04:50,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:04:50,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:04:50,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:04:52,540.540 INFO    ] ================================================
[2026-10-28 18:04:52,555.555 INFO    ] Launching Daemon at Wed Oct 28 18:04:52 IST 2026
[2026-10-28 18:04:52,566.566 INFO    ] ================================================
[2026-10-28 18:04:53,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:04:53
[2026-10-28 18:04:53,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:04:54,029.029 INFO    ] Initializing speech engine...
[2026-10-28 18:04:54,040.040 INFO    ] 2026-10-28 18:04:54
[2026-10-28 18:04:54,291.291 INFO    ] 2026-10-28 18:04:54
[2026-10-28 18:04:54,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:04:54,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:04:54,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:04:54,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:04:54,863.863 INFO    ] time= 28/10/2026 18:04:54
[2026-10-28 18:04:54,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:04:54,899.899 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:04:55,067.067 INFO    ] No existing commands found in stream
[2026-10-28 18:05:00,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:05:00,100.100 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-28 18:05:03,394.394 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:05:03,399.399 INFO    ] Checking for system updates...
[2026-10-28 18:05:03,447.447 INFO    ] 200
[2026-10-28 18:05:03,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:05:03,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:05:03,528.528 INFO    ] No update needed
[2026-10-28 18:05:03,531.531 INFO    ] Checking for camera pi updates...
[2026-10-28 18:05:03,572.572 INFO    ] 200
[2026-10-28 18:05:03,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:05:03,622.622 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:05:03,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:05:03,713.713 INFO    ] No camera update needed
[2026-10-28 18:05:03,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:05:03,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:05:03,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:05:03,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:05:05,771.771 INFO    ] ================================================
[2026-10-28 18:05:05,787.787 INFO    ] Launching Daemon at Wed Oct 28 18:05:05 IST 2026
[2026-10-28 18:05:05,797.797 INFO    ] ================================================
[2026-10-28 18:05:06,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:05:06
[2026-10-28 18:05:06,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:05:07,213.213 INFO    ] Initializing speech engine...
[2026-10-28 18:05:07,220.220 INFO    ] 2026-10-28 18:05:07
[2026-10-28 18:05:07,511.511 INFO    ] 2026-10-28 18:05:07
[2026-10-28 18:05:07,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:05:07,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:05:07,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:05:08,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:05:08,134.134 INFO    ] time= 28/10/2026 18:05:08
[2026-10-28 18:05:08,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:05:08,177.177 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:05:08,371.371 INFO    ] No existing commands found in stream
[2026-10-28 18:05:13,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:05:13,399.399 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-28 18:05:14,420.420 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:05:14,422.422 INFO    ] Checking for system updates...
[2026-10-28 18:05:14,458.458 INFO    ] 200
[2026-10-28 18:05:14,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:05:14,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:05:14,518.518 INFO    ] No update needed
[2026-10-28 18:05:14,520.520 INFO    ] Checking for camera pi updates...
[2026-10-28 18:05:14,558.558 INFO    ] 200
[2026-10-28 18:05:14,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:05:14,601.601 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:05:14,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:05:14,683.683 INFO    ] No camera update needed
[2026-10-28 18:05:14,685.685 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:05:14,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:05:14,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:05:14,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:05:16,737.737 INFO    ] ================================================
[2026-10-28 18:05:16,752.752 INFO    ] Launching Daemon at Wed Oct 28 18:05:16 IST 2026
[2026-10-28 18:05:16,762.762 INFO    ] ================================================
[2026-10-28 18:05:17,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:05:17
[2026-10-28 18:05:18,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:05:18,366.366 INFO    ] Initializing speech engine...
[2026-10-28 18:05:18,375.375 INFO    ] 2026-10-28 18:05:18
[2026-10-28 18:05:18,657.657 INFO    ] 2026-10-28 18:05:18
[2026-10-28 18:05:18,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:05:19,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:05:19,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:05:19,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:05:19,358.358 INFO    ] time= 28/10/2026 18:05:19
[2026-10-28 18:05:19,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:05:19,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:05:19,627.627 INFO    ] No existing commands found in stream
[2026-10-28 18:05:24,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:05:24,649.649 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-28 18:05:28,097.097 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:05:28,101.101 INFO    ] Checking for system updates...
[2026-10-28 18:05:28,142.142 INFO    ] 200
[2026-10-28 18:05:28,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:05:28,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:05:28,216.216 INFO    ] No update needed
[2026-10-28 18:05:28,219.219 INFO    ] Checking for camera pi updates...
[2026-10-28 18:05:28,257.257 INFO    ] 200
[2026-10-28 18:05:28,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:05:28,305.305 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:05:28,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:05:28,392.392 INFO    ] No camera update needed
[2026-10-28 18:05:28,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:05:28,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:05:28,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:05:28,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:05:30,452.452 INFO    ] ================================================
[2026-10-28 18:05:30,468.468 INFO    ] Launching Daemon at Wed Oct 28 18:05:30 IST 2026
[2026-10-28 18:05:30,478.478 INFO    ] ================================================
[2026-10-28 18:05:31,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:05:31
[2026-10-28 18:05:31,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:05:31,967.967 INFO    ] Initializing speech engine...
[2026-10-28 18:05:31,986.986 INFO    ] 2026-10-28 18:05:31
[2026-10-28 18:05:32,290.290 INFO    ] 2026-10-28 18:05:32
[2026-10-28 18:05:32,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:05:32,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:05:32,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:05:32,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:05:32,910.910 INFO    ] time= 28/10/2026 18:05:32
[2026-10-28 18:05:32,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:05:32,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:05:33,143.143 INFO    ] No existing commands found in stream
[2026-10-28 18:05:38,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:05:38,184.184 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-28 18:05:42,699.699 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:05:42,701.701 INFO    ] Checking for system updates...
[2026-10-28 18:05:42,742.742 INFO    ] 200
[2026-10-28 18:05:42,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:05:42,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:05:42,807.807 INFO    ] No update needed
[2026-10-28 18:05:42,810.810 INFO    ] Checking for camera pi updates...
[2026-10-28 18:05:42,845.845 INFO    ] 200
[2026-10-28 18:05:42,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:05:42,890.890 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:05:42,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:05:42,994.994 INFO    ] No camera update needed
[2026-10-28 18:05:42,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:05:42,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:05:43,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:05:43,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:05:45,051.051 INFO    ] ================================================
[2026-10-28 18:05:45,066.066 INFO    ] Launching Daemon at Wed Oct 28 18:05:45 IST 2026
[2026-10-28 18:05:45,076.076 INFO    ] ================================================
[2026-10-28 18:05:45,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:05:45
[2026-10-28 18:05:46,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:05:46,518.518 INFO    ] Initializing speech engine...
[2026-10-28 18:05:46,527.527 INFO    ] 2026-10-28 18:05:46
[2026-10-28 18:05:46,773.773 INFO    ] 2026-10-28 18:05:46
[2026-10-28 18:05:46,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:05:47,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:05:47,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:05:47,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:05:47,488.488 INFO    ] time= 28/10/2026 18:05:47
[2026-10-28 18:05:47,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:05:47,574.574 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:05:47,723.723 INFO    ] No existing commands found in stream
[2026-10-28 18:05:52,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:05:52,748.748 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 18:05:54,761.761 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:05:54,763.763 INFO    ] Checking for system updates...
[2026-10-28 18:05:54,799.799 INFO    ] 200
[2026-10-28 18:05:54,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:05:54,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:05:54,861.861 INFO    ] No update needed
[2026-10-28 18:05:54,864.864 INFO    ] Checking for camera pi updates...
[2026-10-28 18:05:54,899.899 INFO    ] 200
[2026-10-28 18:05:54,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:05:54,947.947 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:05:55,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:05:55,030.030 INFO    ] No camera update needed
[2026-10-28 18:05:55,032.032 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:05:55,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:05:55,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:05:55,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:05:57,089.089 INFO    ] ================================================
[2026-10-28 18:05:57,105.105 INFO    ] Launching Daemon at Wed Oct 28 18:05:57 IST 2026
[2026-10-28 18:05:57,115.115 INFO    ] ================================================
[2026-10-28 18:05:57,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:05:57
[2026-10-28 18:05:58,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:05:58,531.531 INFO    ] Initializing speech engine...
[2026-10-28 18:05:58,540.540 INFO    ] 2026-10-28 18:05:58
[2026-10-28 18:05:58,791.791 INFO    ] 2026-10-28 18:05:58
[2026-10-28 18:05:58,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:05:59,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:05:59,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:05:59,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:05:59,375.375 INFO    ] time= 28/10/2026 18:05:59
[2026-10-28 18:05:59,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:05:59,389.389 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:05:59,531.531 INFO    ] No existing commands found in stream
[2026-10-28 18:06:04,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:06:04,559.559 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-28 18:06:05,495.495 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:06:05,498.498 INFO    ] Checking for system updates...
[2026-10-28 18:06:05,535.535 INFO    ] 200
[2026-10-28 18:06:05,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:06:05,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:06:05,592.592 INFO    ] No update needed
[2026-10-28 18:06:05,595.595 INFO    ] Checking for camera pi updates...
[2026-10-28 18:06:05,628.628 INFO    ] 200
[2026-10-28 18:06:05,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:06:05,672.672 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:06:05,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:06:05,775.775 INFO    ] No camera update needed
[2026-10-28 18:06:05,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:06:05,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:06:05,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:06:05,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:06:07,831.831 INFO    ] ================================================
[2026-10-28 18:06:07,847.847 INFO    ] Launching Daemon at Wed Oct 28 18:06:07 IST 2026
[2026-10-28 18:06:07,858.858 INFO    ] ================================================
[2026-10-28 18:06:08,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:06:08
[2026-10-28 18:06:09,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:06:09,443.443 INFO    ] Initializing speech engine...
[2026-10-28 18:06:09,452.452 INFO    ] 2026-10-28 18:06:09
[2026-10-28 18:06:09,722.722 INFO    ] 2026-10-28 18:06:09
[2026-10-28 18:06:09,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:06:10,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:06:10,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:06:10,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:06:10,499.499 INFO    ] time= 28/10/2026 18:06:10
[2026-10-28 18:06:10,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:06:10,565.565 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:06:10,702.702 INFO    ] No existing commands found in stream
[2026-10-28 18:06:15,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:06:15,720.720 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 18:06:16,940.940 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:06:16,943.943 INFO    ] Checking for system updates...
[2026-10-28 18:06:16,980.980 INFO    ] 200
[2026-10-28 18:06:16,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:06:17,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:06:17,044.044 INFO    ] No update needed
[2026-10-28 18:06:17,047.047 INFO    ] Checking for camera pi updates...
[2026-10-28 18:06:17,082.082 INFO    ] 200
[2026-10-28 18:06:17,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:06:17,130.130 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:06:17,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:06:17,312.312 INFO    ] No camera update needed
[2026-10-28 18:06:17,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:06:17,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:06:17,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:06:17,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:06:19,369.369 INFO    ] ================================================
[2026-10-28 18:06:19,384.384 INFO    ] Launching Daemon at Wed Oct 28 18:06:19 IST 2026
[2026-10-28 18:06:19,395.395 INFO    ] ================================================
[2026-10-28 18:06:20,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:06:20
[2026-10-28 18:06:20,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:06:20,978.978 INFO    ] Initializing speech engine...
[2026-10-28 18:06:20,987.987 INFO    ] 2026-10-28 18:06:20
[2026-10-28 18:06:21,259.259 INFO    ] 2026-10-28 18:06:21
[2026-10-28 18:06:21,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:06:21,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:06:21,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:06:21,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:06:21,862.862 INFO    ] time= 28/10/2026 18:06:21
[2026-10-28 18:06:21,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:06:21,959.959 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:06:22,122.122 INFO    ] No existing commands found in stream
[2026-10-28 18:06:27,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:06:27,156.156 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-28 18:06:31,774.774 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:06:31,777.777 INFO    ] Checking for system updates...
[2026-10-28 18:06:31,820.820 INFO    ] 200
[2026-10-28 18:06:31,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:06:31,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:06:31,893.893 INFO    ] No update needed
[2026-10-28 18:06:31,897.897 INFO    ] Checking for camera pi updates...
[2026-10-28 18:06:31,938.938 INFO    ] 200
[2026-10-28 18:06:31,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:06:31,991.991 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:06:32,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:06:32,085.085 INFO    ] No camera update needed
[2026-10-28 18:06:32,088.088 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:06:32,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:06:32,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:06:32,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:06:34,148.148 INFO    ] ================================================
[2026-10-28 18:06:34,163.163 INFO    ] Launching Daemon at Wed Oct 28 18:06:34 IST 2026
[2026-10-28 18:06:34,174.174 INFO    ] ================================================
[2026-10-28 18:06:34,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:06:34
[2026-10-28 18:06:35,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:06:35,817.817 INFO    ] Initializing speech engine...
[2026-10-28 18:06:35,831.831 INFO    ] 2026-10-28 18:06:35
[2026-10-28 18:06:36,133.133 INFO    ] 2026-10-28 18:06:36
[2026-10-28 18:06:36,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:06:36,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:06:36,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:06:36,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:06:36,759.759 INFO    ] time= 28/10/2026 18:06:36
[2026-10-28 18:06:36,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:06:36,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:06:36,981.981 INFO    ] No existing commands found in stream
[2026-10-28 18:06:42,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:06:42,017.017 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-28 18:06:46,632.632 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:06:46,635.635 INFO    ] Checking for system updates...
[2026-10-28 18:06:46,672.672 INFO    ] 200
[2026-10-28 18:06:46,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:06:46,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:06:46,730.730 INFO    ] No update needed
[2026-10-28 18:06:46,733.733 INFO    ] Checking for camera pi updates...
[2026-10-28 18:06:46,767.767 INFO    ] 200
[2026-10-28 18:06:46,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:06:46,816.816 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:06:46,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:06:46,927.927 INFO    ] No camera update needed
[2026-10-28 18:06:46,929.929 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:06:46,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:06:46,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:06:46,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:06:48,984.984 INFO    ] ================================================
[2026-10-28 18:06:49,999.999 INFO    ] Launching Daemon at Wed Oct 28 18:06:48 IST 2026
[2026-10-28 18:06:49,010.010 INFO    ] ================================================
[2026-10-28 18:06:49,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:06:49
[2026-10-28 18:06:50,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:06:50,449.449 INFO    ] Initializing speech engine...
[2026-10-28 18:06:50,458.458 INFO    ] 2026-10-28 18:06:50
[2026-10-28 18:06:50,727.727 INFO    ] 2026-10-28 18:06:50
[2026-10-28 18:06:50,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:06:51,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:06:51,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:06:51,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:06:51,330.330 INFO    ] time= 28/10/2026 18:06:51
[2026-10-28 18:06:51,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:06:51,370.370 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:06:51,552.552 INFO    ] No existing commands found in stream
[2026-10-28 18:06:56,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:06:56,581.581 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-28 18:07:01,151.151 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:07:01,154.154 INFO    ] Checking for system updates...
[2026-10-28 18:07:01,194.194 INFO    ] 200
[2026-10-28 18:07:01,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:07:01,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:07:01,254.254 INFO    ] No update needed
[2026-10-28 18:07:01,256.256 INFO    ] Checking for camera pi updates...
[2026-10-28 18:07:01,294.294 INFO    ] 200
[2026-10-28 18:07:01,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:07:01,343.343 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:07:01,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:07:01,467.467 INFO    ] No camera update needed
[2026-10-28 18:07:01,478.478 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:07:01,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:07:01,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:07:01,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:07:03,556.556 INFO    ] ================================================
[2026-10-28 18:07:03,571.571 INFO    ] Launching Daemon at Wed Oct 28 18:07:03 IST 2026
[2026-10-28 18:07:03,582.582 INFO    ] ================================================
[2026-10-28 18:07:04,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:07:04
[2026-10-28 18:07:04,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:07:05,136.136 INFO    ] Initializing speech engine...
[2026-10-28 18:07:05,148.148 INFO    ] 2026-10-28 18:07:05
[2026-10-28 18:07:05,423.423 INFO    ] 2026-10-28 18:07:05
[2026-10-28 18:07:05,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:07:05,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:07:05,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:07:06,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:07:06,181.181 INFO    ] time= 28/10/2026 18:07:06
[2026-10-28 18:07:06,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:07:06,254.254 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:07:06,495.495 INFO    ] No existing commands found in stream
[2026-10-28 18:07:11,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:07:11,535.535 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-28 18:07:15,764.764 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:07:15,767.767 INFO    ] Checking for system updates...
[2026-10-28 18:07:15,803.803 INFO    ] 200
[2026-10-28 18:07:15,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:07:15,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:07:15,861.861 INFO    ] No update needed
[2026-10-28 18:07:15,864.864 INFO    ] Checking for camera pi updates...
[2026-10-28 18:07:15,898.898 INFO    ] 200
[2026-10-28 18:07:15,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:07:15,941.941 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:07:16,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:07:16,038.038 INFO    ] No camera update needed
[2026-10-28 18:07:16,041.041 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:07:16,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:07:16,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:07:16,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:07:18,105.105 INFO    ] ================================================
[2026-10-28 18:07:18,121.121 INFO    ] Launching Daemon at Wed Oct 28 18:07:18 IST 2026
[2026-10-28 18:07:18,136.136 INFO    ] ================================================
[2026-10-28 18:07:18,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:07:18
[2026-10-28 18:07:19,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:07:19,742.742 INFO    ] Initializing speech engine...
[2026-10-28 18:07:19,752.752 INFO    ] 2026-10-28 18:07:19
[2026-10-28 18:07:20,018.018 INFO    ] 2026-10-28 18:07:20
[2026-10-28 18:07:20,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:07:20,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:07:20,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:07:20,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:07:20,605.605 INFO    ] time= 28/10/2026 18:07:20
[2026-10-28 18:07:20,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:07:20,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:07:20,833.833 INFO    ] No existing commands found in stream
[2026-10-28 18:07:25,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:07:25,865.865 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-28 18:07:27,574.574 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:07:27,577.577 INFO    ] Checking for system updates...
[2026-10-28 18:07:27,613.613 INFO    ] 200
[2026-10-28 18:07:27,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:07:27,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:07:27,672.672 INFO    ] No update needed
[2026-10-28 18:07:27,674.674 INFO    ] Checking for camera pi updates...
[2026-10-28 18:07:27,709.709 INFO    ] 200
[2026-10-28 18:07:27,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:07:27,753.753 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:07:27,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:07:27,837.837 INFO    ] No camera update needed
[2026-10-28 18:07:27,840.840 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:07:27,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:07:27,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:07:27,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:07:29,896.896 INFO    ] ================================================
[2026-10-28 18:07:29,910.910 INFO    ] Launching Daemon at Wed Oct 28 18:07:29 IST 2026
[2026-10-28 18:07:29,921.921 INFO    ] ================================================
[2026-10-28 18:07:30,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:07:30
[2026-10-28 18:07:31,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:07:31,529.529 INFO    ] Initializing speech engine...
[2026-10-28 18:07:31,538.538 INFO    ] 2026-10-28 18:07:31
[2026-10-28 18:07:31,856.856 INFO    ] 2026-10-28 18:07:31
[2026-10-28 18:07:31,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:07:32,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:07:32,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:07:32,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:07:32,666.666 INFO    ] time= 28/10/2026 18:07:32
[2026-10-28 18:07:32,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:07:32,794.794 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:07:33,000.000 INFO    ] No existing commands found in stream
[2026-10-28 18:07:38,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:07:38,017.017 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 18:07:40,375.375 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:07:40,378.378 INFO    ] Checking for system updates...
[2026-10-28 18:07:40,414.414 INFO    ] 200
[2026-10-28 18:07:40,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:07:40,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:07:40,477.477 INFO    ] No update needed
[2026-10-28 18:07:40,480.480 INFO    ] Checking for camera pi updates...
[2026-10-28 18:07:40,519.519 INFO    ] 200
[2026-10-28 18:07:40,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:07:40,562.562 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:07:40,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:07:40,666.666 INFO    ] No camera update needed
[2026-10-28 18:07:40,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:07:40,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:07:40,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:07:40,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:07:42,721.721 INFO    ] ================================================
[2026-10-28 18:07:42,736.736 INFO    ] Launching Daemon at Wed Oct 28 18:07:42 IST 2026
[2026-10-28 18:07:42,746.746 INFO    ] ================================================
[2026-10-28 18:07:43,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:07:43
[2026-10-28 18:07:43,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:07:44,140.140 INFO    ] Initializing speech engine...
[2026-10-28 18:07:44,148.148 INFO    ] 2026-10-28 18:07:44
[2026-10-28 18:07:44,416.416 INFO    ] 2026-10-28 18:07:44
[2026-10-28 18:07:44,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:07:44,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:07:44,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:07:45,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:07:45,017.017 INFO    ] time= 28/10/2026 18:07:45
[2026-10-28 18:07:45,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:07:45,085.085 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:07:45,243.243 INFO    ] No existing commands found in stream
[2026-10-28 18:07:50,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:07:50,276.276 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-28 18:07:52,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:07:52,470.470 INFO    ] Checking for system updates...
[2026-10-28 18:07:52,506.506 INFO    ] 200
[2026-10-28 18:07:52,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:07:52,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:07:52,566.566 INFO    ] No update needed
[2026-10-28 18:07:52,569.569 INFO    ] Checking for camera pi updates...
[2026-10-28 18:07:52,604.604 INFO    ] 200
[2026-10-28 18:07:52,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:07:52,648.648 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:07:52,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:07:52,733.733 INFO    ] No camera update needed
[2026-10-28 18:07:52,736.736 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:07:52,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:07:52,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:07:52,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:07:54,793.793 INFO    ] ================================================
[2026-10-28 18:07:54,808.808 INFO    ] Launching Daemon at Wed Oct 28 18:07:54 IST 2026
[2026-10-28 18:07:54,819.819 INFO    ] ================================================
[2026-10-28 18:07:55,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:07:55
[2026-10-28 18:07:55,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:07:56,224.224 INFO    ] Initializing speech engine...
[2026-10-28 18:07:56,232.232 INFO    ] 2026-10-28 18:07:56
[2026-10-28 18:07:56,527.527 INFO    ] 2026-10-28 18:07:56
[2026-10-28 18:07:56,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:07:56,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:07:56,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:07:57,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:07:57,161.161 INFO    ] time= 28/10/2026 18:07:57
[2026-10-28 18:07:57,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:07:57,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:07:57,333.333 INFO    ] No existing commands found in stream
[2026-10-28 18:08:02,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:08:02,349.349 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 18:08:06,254.254 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:08:06,257.257 INFO    ] Checking for system updates...
[2026-10-28 18:08:06,292.292 INFO    ] 200
[2026-10-28 18:08:06,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:08:06,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:08:06,350.350 INFO    ] No update needed
[2026-10-28 18:08:06,352.352 INFO    ] Checking for camera pi updates...
[2026-10-28 18:08:06,385.385 INFO    ] 200
[2026-10-28 18:08:06,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:08:06,428.428 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:08:06,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:08:06,518.518 INFO    ] No camera update needed
[2026-10-28 18:08:06,520.520 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:08:06,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:08:06,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:08:06,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:08:08,573.573 INFO    ] ================================================
[2026-10-28 18:08:08,588.588 INFO    ] Launching Daemon at Wed Oct 28 18:08:08 IST 2026
[2026-10-28 18:08:08,599.599 INFO    ] ================================================
[2026-10-28 18:08:09,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:08:09
[2026-10-28 18:08:09,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:08:10,252.252 INFO    ] Initializing speech engine...
[2026-10-28 18:08:10,263.263 INFO    ] 2026-10-28 18:08:10
[2026-10-28 18:08:10,573.573 INFO    ] 2026-10-28 18:08:10
[2026-10-28 18:08:10,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:08:10,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:08:10,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:08:11,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:08:11,356.356 INFO    ] time= 28/10/2026 18:08:11
[2026-10-28 18:08:11,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:08:11,477.477 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:08:11,657.657 INFO    ] No existing commands found in stream
[2026-10-28 18:08:16,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:08:16,674.674 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-28 18:08:19,337.337 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:08:19,339.339 INFO    ] Checking for system updates...
[2026-10-28 18:08:19,379.379 INFO    ] 200
[2026-10-28 18:08:19,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:08:19,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:08:19,443.443 INFO    ] No update needed
[2026-10-28 18:08:19,446.446 INFO    ] Checking for camera pi updates...
[2026-10-28 18:08:19,479.479 INFO    ] 200
[2026-10-28 18:08:19,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:08:19,522.522 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:08:19,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:08:19,702.702 INFO    ] No camera update needed
[2026-10-28 18:08:19,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:08:19,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:08:19,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:08:19,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:08:21,757.757 INFO    ] ================================================
[2026-10-28 18:08:21,772.772 INFO    ] Launching Daemon at Wed Oct 28 18:08:21 IST 2026
[2026-10-28 18:08:21,783.783 INFO    ] ================================================
[2026-10-28 18:08:22,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:08:22
[2026-10-28 18:08:22,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:08:23,218.218 INFO    ] Initializing speech engine...
[2026-10-28 18:08:23,228.228 INFO    ] 2026-10-28 18:08:23
[2026-10-28 18:08:23,489.489 INFO    ] 2026-10-28 18:08:23
[2026-10-28 18:08:23,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:08:23,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:08:23,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:08:24,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:08:24,298.298 INFO    ] time= 28/10/2026 18:08:24
[2026-10-28 18:08:24,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:08:24,416.416 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:08:24,605.605 INFO    ] No existing commands found in stream
[2026-10-28 18:08:29,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:08:29,618.618 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-28 18:08:32,375.375 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:08:32,378.378 INFO    ] Checking for system updates...
[2026-10-28 18:08:32,416.416 INFO    ] 200
[2026-10-28 18:08:32,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:08:32,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:08:32,483.483 INFO    ] No update needed
[2026-10-28 18:08:32,486.486 INFO    ] Checking for camera pi updates...
[2026-10-28 18:08:32,522.522 INFO    ] 200
[2026-10-28 18:08:32,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:08:32,570.570 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:08:32,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:08:32,690.690 INFO    ] No camera update needed
[2026-10-28 18:08:32,693.693 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:08:32,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:08:32,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:08:32,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:08:34,756.756 INFO    ] ================================================
[2026-10-28 18:08:34,771.771 INFO    ] Launching Daemon at Wed Oct 28 18:08:34 IST 2026
[2026-10-28 18:08:34,782.782 INFO    ] ================================================
[2026-10-28 18:08:35,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:08:35
[2026-10-28 18:08:35,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:08:36,232.232 INFO    ] Initializing speech engine...
[2026-10-28 18:08:36,242.242 INFO    ] 2026-10-28 18:08:36
[2026-10-28 18:08:36,502.502 INFO    ] 2026-10-28 18:08:36
[2026-10-28 18:08:36,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:08:36,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:08:36,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:08:37,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:08:37,284.284 INFO    ] time= 28/10/2026 18:08:37
[2026-10-28 18:08:37,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:08:37,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:08:37,589.589 INFO    ] No existing commands found in stream
[2026-10-28 18:08:42,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:08:42,623.623 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-28 18:08:44,536.536 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:08:44,539.539 INFO    ] Checking for system updates...
[2026-10-28 18:08:44,575.575 INFO    ] 200
[2026-10-28 18:08:44,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:08:44,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:08:44,632.632 INFO    ] No update needed
[2026-10-28 18:08:44,634.634 INFO    ] Checking for camera pi updates...
[2026-10-28 18:08:44,668.668 INFO    ] 200
[2026-10-28 18:08:44,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:08:44,711.711 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:08:44,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:08:44,821.821 INFO    ] No camera update needed
[2026-10-28 18:08:44,824.824 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:08:44,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:08:44,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:08:44,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:08:46,878.878 INFO    ] ================================================
[2026-10-28 18:08:46,893.893 INFO    ] Launching Daemon at Wed Oct 28 18:08:46 IST 2026
[2026-10-28 18:08:46,904.904 INFO    ] ================================================
[2026-10-28 18:08:47,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:08:47
[2026-10-28 18:08:48,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:08:48,330.330 INFO    ] Initializing speech engine...
[2026-10-28 18:08:48,340.340 INFO    ] 2026-10-28 18:08:48
[2026-10-28 18:08:48,588.588 INFO    ] 2026-10-28 18:08:48
[2026-10-28 18:08:48,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:08:48,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:08:48,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:08:49,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:08:49,168.168 INFO    ] time= 28/10/2026 18:08:49
[2026-10-28 18:08:49,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:08:49,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:08:49,372.372 INFO    ] No existing commands found in stream
[2026-10-28 18:08:54,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:08:54,399.399 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-28 18:08:57,947.947 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:08:57,950.950 INFO    ] Checking for system updates...
[2026-10-28 18:08:57,986.986 INFO    ] 200
[2026-10-28 18:08:57,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:08:58,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:08:58,049.049 INFO    ] No update needed
[2026-10-28 18:08:58,051.051 INFO    ] Checking for camera pi updates...
[2026-10-28 18:08:58,088.088 INFO    ] 200
[2026-10-28 18:08:58,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:08:58,131.131 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:08:58,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:08:58,213.213 INFO    ] No camera update needed
[2026-10-28 18:08:58,215.215 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:08:58,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:08:58,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:08:58,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:09:00,268.268 INFO    ] ================================================
[2026-10-28 18:09:00,283.283 INFO    ] Launching Daemon at Wed Oct 28 18:09:00 IST 2026
[2026-10-28 18:09:00,294.294 INFO    ] ================================================
[2026-10-28 18:09:00,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:09:00
[2026-10-28 18:09:01,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:09:01,811.811 INFO    ] Initializing speech engine...
[2026-10-28 18:09:01,818.818 INFO    ] 2026-10-28 18:09:01
[2026-10-28 18:09:02,203.203 INFO    ] 2026-10-28 18:09:02
[2026-10-28 18:09:02,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:09:02,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:09:02,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:09:02,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:09:02,826.826 INFO    ] time= 28/10/2026 18:09:02
[2026-10-28 18:09:02,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:09:02,876.876 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:09:03,078.078 INFO    ] No existing commands found in stream
[2026-10-28 18:09:08,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:09:08,108.108 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-28 18:09:12,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:09:12,310.310 INFO    ] Checking for system updates...
[2026-10-28 18:09:12,345.345 INFO    ] 200
[2026-10-28 18:09:12,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:09:12,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:09:12,402.402 INFO    ] No update needed
[2026-10-28 18:09:12,404.404 INFO    ] Checking for camera pi updates...
[2026-10-28 18:09:12,441.441 INFO    ] 200
[2026-10-28 18:09:12,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:09:12,485.485 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:09:12,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:09:12,569.569 INFO    ] No camera update needed
[2026-10-28 18:09:12,571.571 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:09:12,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:09:12,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:09:12,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:09:14,623.623 INFO    ] ================================================
[2026-10-28 18:09:14,638.638 INFO    ] Launching Daemon at Wed Oct 28 18:09:14 IST 2026
[2026-10-28 18:09:14,648.648 INFO    ] ================================================
[2026-10-28 18:09:15,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:09:15
[2026-10-28 18:09:15,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:09:16,051.051 INFO    ] Initializing speech engine...
[2026-10-28 18:09:16,071.071 INFO    ] 2026-10-28 18:09:16
[2026-10-28 18:09:16,320.320 INFO    ] 2026-10-28 18:09:16
[2026-10-28 18:09:16,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:09:16,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:09:16,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:09:16,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:09:16,937.937 INFO    ] time= 28/10/2026 18:09:16
[2026-10-28 18:09:16,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:09:17,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:09:17,197.197 INFO    ] No existing commands found in stream
[2026-10-28 18:09:22,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:09:22,225.225 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 18:09:24,054.054 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:09:24,056.056 INFO    ] Checking for system updates...
[2026-10-28 18:09:24,092.092 INFO    ] 200
[2026-10-28 18:09:24,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:09:24,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:09:24,149.149 INFO    ] No update needed
[2026-10-28 18:09:24,152.152 INFO    ] Checking for camera pi updates...
[2026-10-28 18:09:24,185.185 INFO    ] 200
[2026-10-28 18:09:24,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:09:24,228.228 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:09:24,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:09:24,310.310 INFO    ] No camera update needed
[2026-10-28 18:09:24,312.312 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:09:24,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:09:24,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:09:24,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:09:26,367.367 INFO    ] ================================================
[2026-10-28 18:09:26,382.382 INFO    ] Launching Daemon at Wed Oct 28 18:09:26 IST 2026
[2026-10-28 18:09:26,393.393 INFO    ] ================================================
[2026-10-28 18:09:26,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:09:26
[2026-10-28 18:09:27,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:09:27,837.837 INFO    ] Initializing speech engine...
[2026-10-28 18:09:27,846.846 INFO    ] 2026-10-28 18:09:27
[2026-10-28 18:09:28,113.113 INFO    ] 2026-10-28 18:09:28
[2026-10-28 18:09:28,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:09:28,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:09:28,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:09:28,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:09:28,914.914 INFO    ] time= 28/10/2026 18:09:28
[2026-10-28 18:09:28,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:09:29,039.039 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:09:29,223.223 INFO    ] No existing commands found in stream
[2026-10-28 18:09:34,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:09:34,248.248 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 18:09:34,894.894 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:09:34,897.897 INFO    ] Checking for system updates...
[2026-10-28 18:09:34,936.936 INFO    ] 200
[2026-10-28 18:09:34,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:09:35,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:09:35,026.026 INFO    ] No update needed
[2026-10-28 18:09:35,029.029 INFO    ] Checking for camera pi updates...
[2026-10-28 18:09:35,071.071 INFO    ] 200
[2026-10-28 18:09:35,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:09:35,119.119 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:09:35,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:09:35,219.219 INFO    ] No camera update needed
[2026-10-28 18:09:35,221.221 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:09:35,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:09:35,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:09:35,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:09:37,274.274 INFO    ] ================================================
[2026-10-28 18:09:37,289.289 INFO    ] Launching Daemon at Wed Oct 28 18:09:37 IST 2026
[2026-10-28 18:09:37,299.299 INFO    ] ================================================
[2026-10-28 18:09:37,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:09:37
[2026-10-28 18:09:38,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:09:38,924.924 INFO    ] Initializing speech engine...
[2026-10-28 18:09:38,933.933 INFO    ] 2026-10-28 18:09:38
[2026-10-28 18:09:39,192.192 INFO    ] 2026-10-28 18:09:39
[2026-10-28 18:09:39,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:09:39,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:09:39,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:09:39,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:09:39,973.973 INFO    ] time= 28/10/2026 18:09:39
[2026-10-28 18:09:40,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:09:40,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:09:40,278.278 INFO    ] No existing commands found in stream
[2026-10-28 18:09:45,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:09:45,306.306 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-28 18:09:49,787.787 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:09:49,790.790 INFO    ] Checking for system updates...
[2026-10-28 18:09:49,825.825 INFO    ] 200
[2026-10-28 18:09:49,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:09:49,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:09:49,882.882 INFO    ] No update needed
[2026-10-28 18:09:49,884.884 INFO    ] Checking for camera pi updates...
[2026-10-28 18:09:49,918.918 INFO    ] 200
[2026-10-28 18:09:49,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:09:49,966.966 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:09:50,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:09:50,051.051 INFO    ] No camera update needed
[2026-10-28 18:09:50,053.053 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:09:50,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:09:50,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:09:50,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:09:52,108.108 INFO    ] ================================================
[2026-10-28 18:09:52,123.123 INFO    ] Launching Daemon at Wed Oct 28 18:09:52 IST 2026
[2026-10-28 18:09:52,134.134 INFO    ] ================================================
[2026-10-28 18:09:52,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:09:52
[2026-10-28 18:09:53,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:09:53,559.559 INFO    ] Initializing speech engine...
[2026-10-28 18:09:53,568.568 INFO    ] 2026-10-28 18:09:53
[2026-10-28 18:09:53,813.813 INFO    ] 2026-10-28 18:09:53
[2026-10-28 18:09:53,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:09:54,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:09:54,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:09:54,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:09:54,380.380 INFO    ] time= 28/10/2026 18:09:54
[2026-10-28 18:09:54,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:09:54,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:09:54,585.585 INFO    ] No existing commands found in stream
[2026-10-28 18:09:59,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:09:59,613.613 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-28 18:10:02,526.526 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:10:02,530.530 INFO    ] Checking for system updates...
[2026-10-28 18:10:02,586.586 INFO    ] 200
[2026-10-28 18:10:02,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:10:02,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:10:02,658.658 INFO    ] No update needed
[2026-10-28 18:10:02,661.661 INFO    ] Checking for camera pi updates...
[2026-10-28 18:10:02,703.703 INFO    ] 200
[2026-10-28 18:10:02,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:10:02,776.776 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:10:03,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:10:03,030.030 INFO    ] No camera update needed
[2026-10-28 18:10:03,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:10:03,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:10:03,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:10:03,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:10:05,103.103 INFO    ] ================================================
[2026-10-28 18:10:05,118.118 INFO    ] Launching Daemon at Wed Oct 28 18:10:05 IST 2026
[2026-10-28 18:10:05,128.128 INFO    ] ================================================
[2026-10-28 18:10:05,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:10:05
[2026-10-28 18:10:06,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:10:06,666.666 INFO    ] Initializing speech engine...
[2026-10-28 18:10:06,675.675 INFO    ] 2026-10-28 18:10:06
[2026-10-28 18:10:06,925.925 INFO    ] 2026-10-28 18:10:06
[2026-10-28 18:10:06,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:10:07,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:10:07,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:10:07,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:10:07,619.619 INFO    ] time= 28/10/2026 18:10:07
[2026-10-28 18:10:07,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:10:07,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:10:07,869.869 INFO    ] No existing commands found in stream
[2026-10-28 18:10:12,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:10:12,885.885 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-28 18:10:14,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:10:14,858.858 INFO    ] Checking for system updates...
[2026-10-28 18:10:14,897.897 INFO    ] 200
[2026-10-28 18:10:14,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:10:14,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:10:14,961.961 INFO    ] No update needed
[2026-10-28 18:10:14,964.964 INFO    ] Checking for camera pi updates...
[2026-10-28 18:10:14,997.997 INFO    ] 200
[2026-10-28 18:10:14,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:10:15,039.039 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:10:15,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:10:15,127.127 INFO    ] No camera update needed
[2026-10-28 18:10:15,129.129 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:10:15,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:10:15,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:10:15,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:10:17,183.183 INFO    ] ================================================
[2026-10-28 18:10:17,199.199 INFO    ] Launching Daemon at Wed Oct 28 18:10:17 IST 2026
[2026-10-28 18:10:17,209.209 INFO    ] ================================================
[2026-10-28 18:10:17,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:10:17
[2026-10-28 18:10:18,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:10:18,821.821 INFO    ] Initializing speech engine...
[2026-10-28 18:10:18,832.832 INFO    ] 2026-10-28 18:10:18
[2026-10-28 18:10:19,114.114 INFO    ] 2026-10-28 18:10:19
[2026-10-28 18:10:19,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:10:19,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:10:19,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:10:19,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:10:19,894.894 INFO    ] time= 28/10/2026 18:10:19
[2026-10-28 18:10:19,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:10:20,023.023 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:10:20,221.221 INFO    ] No existing commands found in stream
[2026-10-28 18:10:25,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:10:25,235.235 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-28 18:10:28,456.456 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:10:28,459.459 INFO    ] Checking for system updates...
[2026-10-28 18:10:28,502.502 INFO    ] 200
[2026-10-28 18:10:28,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:10:28,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:10:28,567.567 INFO    ] No update needed
[2026-10-28 18:10:28,569.569 INFO    ] Checking for camera pi updates...
[2026-10-28 18:10:28,607.607 INFO    ] 200
[2026-10-28 18:10:28,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:10:28,651.651 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:10:28,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:10:28,835.835 INFO    ] No camera update needed
[2026-10-28 18:10:28,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:10:28,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:10:28,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:10:28,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:10:30,895.895 INFO    ] ================================================
[2026-10-28 18:10:30,910.910 INFO    ] Launching Daemon at Wed Oct 28 18:10:30 IST 2026
[2026-10-28 18:10:30,921.921 INFO    ] ================================================
[2026-10-28 18:10:31,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:10:31
[2026-10-28 18:10:32,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:10:32,393.393 INFO    ] Initializing speech engine...
[2026-10-28 18:10:32,408.408 INFO    ] 2026-10-28 18:10:32
[2026-10-28 18:10:32,668.668 INFO    ] 2026-10-28 18:10:32
[2026-10-28 18:10:32,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:10:33,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:10:33,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:10:33,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:10:33,312.312 INFO    ] time= 28/10/2026 18:10:33
[2026-10-28 18:10:33,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:10:33,330.330 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:10:33,446.446 INFO    ] No existing commands found in stream
[2026-10-28 18:10:38,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:10:38,458.458 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-28 18:10:40,186.186 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:10:40,189.189 INFO    ] Checking for system updates...
[2026-10-28 18:10:40,224.224 INFO    ] 200
[2026-10-28 18:10:40,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:10:40,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:10:40,281.281 INFO    ] No update needed
[2026-10-28 18:10:40,283.283 INFO    ] Checking for camera pi updates...
[2026-10-28 18:10:40,316.316 INFO    ] 200
[2026-10-28 18:10:40,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:10:40,363.363 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:10:40,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:10:40,429.429 INFO    ] No camera update needed
[2026-10-28 18:10:40,431.431 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:10:40,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:10:40,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:10:40,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:10:42,483.483 INFO    ] ================================================
[2026-10-28 18:10:42,498.498 INFO    ] Launching Daemon at Wed Oct 28 18:10:42 IST 2026
[2026-10-28 18:10:42,508.508 INFO    ] ================================================
[2026-10-28 18:10:43,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:10:43
[2026-10-28 18:10:43,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:10:43,927.927 INFO    ] Initializing speech engine...
[2026-10-28 18:10:43,936.936 INFO    ] 2026-10-28 18:10:43
[2026-10-28 18:10:44,195.195 INFO    ] 2026-10-28 18:10:44
[2026-10-28 18:10:44,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:10:44,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:10:44,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:10:44,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:10:44,949.949 INFO    ] time= 28/10/2026 18:10:44
[2026-10-28 18:10:44,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:10:45,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:10:45,181.181 INFO    ] No existing commands found in stream
[2026-10-28 18:10:50,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:10:50,194.194 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-28 18:10:54,296.296 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:10:54,299.299 INFO    ] Checking for system updates...
[2026-10-28 18:10:54,338.338 INFO    ] 200
[2026-10-28 18:10:54,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:10:54,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:10:54,401.401 INFO    ] No update needed
[2026-10-28 18:10:54,404.404 INFO    ] Checking for camera pi updates...
[2026-10-28 18:10:54,441.441 INFO    ] 200
[2026-10-28 18:10:54,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:10:54,483.483 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:10:54,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:10:54,563.563 INFO    ] No camera update needed
[2026-10-28 18:10:54,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:10:54,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:10:54,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:10:54,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:10:56,618.618 INFO    ] ================================================
[2026-10-28 18:10:56,633.633 INFO    ] Launching Daemon at Wed Oct 28 18:10:56 IST 2026
[2026-10-28 18:10:56,643.643 INFO    ] ================================================
[2026-10-28 18:10:57,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:10:57
[2026-10-28 18:10:57,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:10:58,096.096 INFO    ] Initializing speech engine...
[2026-10-28 18:10:58,102.102 INFO    ] 2026-10-28 18:10:58
[2026-10-28 18:10:58,361.361 INFO    ] 2026-10-28 18:10:58
[2026-10-28 18:10:58,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:10:58,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:10:58,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:10:59,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:10:59,174.174 INFO    ] time= 28/10/2026 18:10:59
[2026-10-28 18:10:59,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:10:59,288.288 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:10:59,472.472 INFO    ] No existing commands found in stream
[2026-10-28 18:11:04,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:11:04,489.489 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-28 18:11:07,020.020 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:11:07,023.023 INFO    ] Checking for system updates...
[2026-10-28 18:11:07,060.060 INFO    ] 200
[2026-10-28 18:11:07,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:11:07,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:11:07,119.119 INFO    ] No update needed
[2026-10-28 18:11:07,122.122 INFO    ] Checking for camera pi updates...
[2026-10-28 18:11:07,157.157 INFO    ] 200
[2026-10-28 18:11:07,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:11:07,201.201 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:11:07,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:11:07,284.284 INFO    ] No camera update needed
[2026-10-28 18:11:07,287.287 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:11:07,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:11:07,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:11:07,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:11:09,346.346 INFO    ] ================================================
[2026-10-28 18:11:09,361.361 INFO    ] Launching Daemon at Wed Oct 28 18:11:09 IST 2026
[2026-10-28 18:11:09,372.372 INFO    ] ================================================
[2026-10-28 18:11:09,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:11:09
[2026-10-28 18:11:10,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:11:10,792.792 INFO    ] Initializing speech engine...
[2026-10-28 18:11:10,798.798 INFO    ] 2026-10-28 18:11:10
[2026-10-28 18:11:11,096.096 INFO    ] 2026-10-28 18:11:11
[2026-10-28 18:11:11,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:11:11,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:11:11,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:11:11,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:11:11,736.736 INFO    ] time= 28/10/2026 18:11:11
[2026-10-28 18:11:11,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:11:11,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:11:11,926.926 INFO    ] No existing commands found in stream
[2026-10-28 18:11:16,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:11:16,945.945 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-28 18:11:20,214.214 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:11:20,217.217 INFO    ] Checking for system updates...
[2026-10-28 18:11:20,254.254 INFO    ] 200
[2026-10-28 18:11:20,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:11:20,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:11:20,315.315 INFO    ] No update needed
[2026-10-28 18:11:20,318.318 INFO    ] Checking for camera pi updates...
[2026-10-28 18:11:20,351.351 INFO    ] 200
[2026-10-28 18:11:20,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:11:20,398.398 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:11:20,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:11:20,490.490 INFO    ] No camera update needed
[2026-10-28 18:11:20,493.493 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:11:20,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:11:20,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:11:20,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:11:22,548.548 INFO    ] ================================================
[2026-10-28 18:11:22,563.563 INFO    ] Launching Daemon at Wed Oct 28 18:11:22 IST 2026
[2026-10-28 18:11:22,574.574 INFO    ] ================================================
[2026-10-28 18:11:23,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:11:23
[2026-10-28 18:11:23,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:11:24,223.223 INFO    ] Initializing speech engine...
[2026-10-28 18:11:24,235.235 INFO    ] 2026-10-28 18:11:24
[2026-10-28 18:11:24,526.526 INFO    ] 2026-10-28 18:11:24
[2026-10-28 18:11:24,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:11:24,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:11:24,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:11:25,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:11:25,226.226 INFO    ] time= 28/10/2026 18:11:25
[2026-10-28 18:11:25,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:11:25,327.327 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:11:25,501.501 INFO    ] No existing commands found in stream
[2026-10-28 18:11:30,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:11:30,520.520 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-28 18:11:32,217.217 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:11:32,220.220 INFO    ] Checking for system updates...
[2026-10-28 18:11:32,260.260 INFO    ] 200
[2026-10-28 18:11:32,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:11:32,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:11:32,329.329 INFO    ] No update needed
[2026-10-28 18:11:32,331.331 INFO    ] Checking for camera pi updates...
[2026-10-28 18:11:32,374.374 INFO    ] 200
[2026-10-28 18:11:32,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:11:32,426.426 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:11:32,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:11:32,515.515 INFO    ] No camera update needed
[2026-10-28 18:11:32,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:11:32,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:11:32,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:11:32,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:11:34,572.572 INFO    ] ================================================
[2026-10-28 18:11:34,588.588 INFO    ] Launching Daemon at Wed Oct 28 18:11:34 IST 2026
[2026-10-28 18:11:34,599.599 INFO    ] ================================================
[2026-10-28 18:11:35,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:11:35
[2026-10-28 18:11:35,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:11:36,027.027 INFO    ] Initializing speech engine...
[2026-10-28 18:11:36,041.041 INFO    ] 2026-10-28 18:11:36
[2026-10-28 18:11:36,329.329 INFO    ] 2026-10-28 18:11:36
[2026-10-28 18:11:36,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:11:36,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:11:36,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:11:36,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:11:36,973.973 INFO    ] time= 28/10/2026 18:11:36
[2026-10-28 18:11:36,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:11:36,996.996 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:11:37,148.148 INFO    ] No existing commands found in stream
[2026-10-28 18:11:42,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:11:42,168.168 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-28 18:11:45,682.682 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:11:45,685.685 INFO    ] Checking for system updates...
[2026-10-28 18:11:45,722.722 INFO    ] 200
[2026-10-28 18:11:45,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:11:45,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:11:45,782.782 INFO    ] No update needed
[2026-10-28 18:11:45,785.785 INFO    ] Checking for camera pi updates...
[2026-10-28 18:11:45,819.819 INFO    ] 200
[2026-10-28 18:11:45,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:11:45,869.869 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:11:45,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:11:45,956.956 INFO    ] No camera update needed
[2026-10-28 18:11:45,959.959 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:11:45,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:11:45,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:11:45,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:11:48,016.016 INFO    ] ================================================
[2026-10-28 18:11:48,032.032 INFO    ] Launching Daemon at Wed Oct 28 18:11:48 IST 2026
[2026-10-28 18:11:48,043.043 INFO    ] ================================================
[2026-10-28 18:11:48,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:11:48
[2026-10-28 18:11:49,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:11:49,650.650 INFO    ] Initializing speech engine...
[2026-10-28 18:11:49,662.662 INFO    ] 2026-10-28 18:11:49
[2026-10-28 18:11:49,948.948 INFO    ] 2026-10-28 18:11:49
[2026-10-28 18:11:49,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:11:50,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:11:50,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:11:50,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:11:50,522.522 INFO    ] time= 28/10/2026 18:11:50
[2026-10-28 18:11:50,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:11:50,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:11:50,686.686 INFO    ] No existing commands found in stream
[2026-10-28 18:11:55,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:11:55,726.726 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 18:11:59,837.837 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:11:59,840.840 INFO    ] Checking for system updates...
[2026-10-28 18:11:59,878.878 INFO    ] 200
[2026-10-28 18:11:59,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:11:59,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:11:59,937.937 INFO    ] No update needed
[2026-10-28 18:11:59,940.940 INFO    ] Checking for camera pi updates...
[2026-10-28 18:11:59,976.976 INFO    ] 200
[2026-10-28 18:11:59,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:12:00,026.026 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:12:00,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:12:00,115.115 INFO    ] No camera update needed
[2026-10-28 18:12:00,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:12:00,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:12:00,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:12:00,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:12:02,186.186 INFO    ] ================================================
[2026-10-28 18:12:02,210.210 INFO    ] Launching Daemon at Wed Oct 28 18:12:02 IST 2026
[2026-10-28 18:12:02,232.232 INFO    ] ================================================
[2026-10-28 18:12:02,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:12:02
[2026-10-28 18:12:03,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:12:03,803.803 INFO    ] Initializing speech engine...
[2026-10-28 18:12:03,812.812 INFO    ] 2026-10-28 18:12:03
[2026-10-28 18:12:04,075.075 INFO    ] 2026-10-28 18:12:04
[2026-10-28 18:12:04,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:12:07,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:12:07,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:12:07,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:12:07,701.701 INFO    ] time= 28/10/2026 18:12:07
[2026-10-28 18:12:07,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:12:07,706.706 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:12:07,784.784 INFO    ] No existing commands found in stream
[2026-10-28 18:12:12,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:12:12,796.796 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-28 18:12:17,013.013 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:12:17,016.016 INFO    ] Checking for system updates...
[2026-10-28 18:12:17,052.052 INFO    ] 200
[2026-10-28 18:12:17,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:12:17,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:12:17,117.117 INFO    ] No update needed
[2026-10-28 18:12:17,119.119 INFO    ] Checking for camera pi updates...
[2026-10-28 18:12:17,153.153 INFO    ] 200
[2026-10-28 18:12:17,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:12:17,199.199 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:12:17,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:12:17,293.293 INFO    ] No camera update needed
[2026-10-28 18:12:17,296.296 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:12:17,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:12:17,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:12:17,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:12:19,349.349 INFO    ] ================================================
[2026-10-28 18:12:19,365.365 INFO    ] Launching Daemon at Wed Oct 28 18:12:19 IST 2026
[2026-10-28 18:12:19,377.377 INFO    ] ================================================
[2026-10-28 18:12:19,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:12:19
[2026-10-28 18:12:20,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:12:20,776.776 INFO    ] Initializing speech engine...
[2026-10-28 18:12:20,790.790 INFO    ] 2026-10-28 18:12:20
[2026-10-28 18:12:21,056.056 INFO    ] 2026-10-28 18:12:21
[2026-10-28 18:12:21,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:12:21,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:12:21,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:12:21,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:12:21,667.667 INFO    ] time= 28/10/2026 18:12:21
[2026-10-28 18:12:21,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:12:21,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:12:21,827.827 INFO    ] No existing commands found in stream
[2026-10-28 18:12:26,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:12:26,855.855 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-28 18:12:28,336.336 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:12:28,338.338 INFO    ] Checking for system updates...
[2026-10-28 18:12:28,374.374 INFO    ] 200
[2026-10-28 18:12:28,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:12:28,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:12:28,431.431 INFO    ] No update needed
[2026-10-28 18:12:28,433.433 INFO    ] Checking for camera pi updates...
[2026-10-28 18:12:28,467.467 INFO    ] 200
[2026-10-28 18:12:28,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:12:28,511.511 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:12:28,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:12:28,596.596 INFO    ] No camera update needed
[2026-10-28 18:12:28,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:12:28,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:12:28,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:12:28,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:12:30,656.656 INFO    ] ================================================
[2026-10-28 18:12:30,671.671 INFO    ] Launching Daemon at Wed Oct 28 18:12:30 IST 2026
[2026-10-28 18:12:30,683.683 INFO    ] ================================================
[2026-10-28 18:12:31,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:12:31
[2026-10-28 18:12:31,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:12:32,167.167 INFO    ] Initializing speech engine...
[2026-10-28 18:12:32,176.176 INFO    ] 2026-10-28 18:12:32
[2026-10-28 18:12:32,446.446 INFO    ] 2026-10-28 18:12:32
[2026-10-28 18:12:32,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:12:32,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:12:32,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:12:33,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:12:33,062.062 INFO    ] time= 28/10/2026 18:12:33
[2026-10-28 18:12:33,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:12:33,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:12:33,273.273 INFO    ] No existing commands found in stream
[2026-10-28 18:12:38,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:12:38,305.305 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-28 18:12:42,000.000 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:12:42,002.002 INFO    ] Checking for system updates...
[2026-10-28 18:12:42,044.044 INFO    ] 200
[2026-10-28 18:12:42,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:12:42,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:12:42,103.103 INFO    ] No update needed
[2026-10-28 18:12:42,110.110 INFO    ] Checking for camera pi updates...
[2026-10-28 18:12:42,144.144 INFO    ] 200
[2026-10-28 18:12:42,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:12:42,192.192 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:12:42,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:12:42,276.276 INFO    ] No camera update needed
[2026-10-28 18:12:42,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:12:42,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:12:42,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:12:42,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:12:44,336.336 INFO    ] ================================================
[2026-10-28 18:12:44,350.350 INFO    ] Launching Daemon at Wed Oct 28 18:12:44 IST 2026
[2026-10-28 18:12:44,361.361 INFO    ] ================================================
[2026-10-28 18:12:44,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:12:44
[2026-10-28 18:12:45,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:12:45,757.757 INFO    ] Initializing speech engine...
[2026-10-28 18:12:45,769.769 INFO    ] 2026-10-28 18:12:45
[2026-10-28 18:12:46,036.036 INFO    ] 2026-10-28 18:12:46
[2026-10-28 18:12:46,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:12:46,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:12:46,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:12:46,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:12:46,794.794 INFO    ] time= 28/10/2026 18:12:46
[2026-10-28 18:12:46,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:12:46,864.864 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:12:47,009.009 INFO    ] No existing commands found in stream
[2026-10-28 18:12:52,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:12:52,025.025 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 18:12:52,775.775 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:12:52,778.778 INFO    ] Checking for system updates...
[2026-10-28 18:12:52,813.813 INFO    ] 200
[2026-10-28 18:12:52,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:12:52,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:12:52,871.871 INFO    ] No update needed
[2026-10-28 18:12:52,874.874 INFO    ] Checking for camera pi updates...
[2026-10-28 18:12:52,911.911 INFO    ] 200
[2026-10-28 18:12:52,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:12:52,954.954 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:12:53,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:12:53,036.036 INFO    ] No camera update needed
[2026-10-28 18:12:53,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:12:53,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:12:53,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:12:53,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:12:55,090.090 INFO    ] ================================================
[2026-10-28 18:12:55,107.107 INFO    ] Launching Daemon at Wed Oct 28 18:12:55 IST 2026
[2026-10-28 18:12:55,128.128 INFO    ] ================================================
[2026-10-28 18:12:55,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:12:55
[2026-10-28 18:12:56,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:12:56,544.544 INFO    ] Initializing speech engine...
[2026-10-28 18:12:56,552.552 INFO    ] 2026-10-28 18:12:56
[2026-10-28 18:12:56,803.803 INFO    ] 2026-10-28 18:12:56
[2026-10-28 18:12:56,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:12:57,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:12:57,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:12:57,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:12:57,370.370 INFO    ] time= 28/10/2026 18:12:57
[2026-10-28 18:12:57,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:12:57,391.391 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:12:57,536.536 INFO    ] No existing commands found in stream
[2026-10-28 18:13:02,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:13:02,558.558 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 18:13:05,699.699 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:13:05,702.702 INFO    ] Checking for system updates...
[2026-10-28 18:13:05,737.737 INFO    ] 200
[2026-10-28 18:13:05,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:13:05,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:13:05,798.798 INFO    ] No update needed
[2026-10-28 18:13:05,800.800 INFO    ] Checking for camera pi updates...
[2026-10-28 18:13:05,833.833 INFO    ] 200
[2026-10-28 18:13:05,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:13:05,880.880 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:13:05,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:13:05,967.967 INFO    ] No camera update needed
[2026-10-28 18:13:05,970.970 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:13:05,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:13:05,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:13:05,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:13:08,023.023 INFO    ] ================================================
[2026-10-28 18:13:08,038.038 INFO    ] Launching Daemon at Wed Oct 28 18:13:08 IST 2026
[2026-10-28 18:13:08,049.049 INFO    ] ================================================
[2026-10-28 18:13:08,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:13:08
[2026-10-28 18:13:09,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:13:09,447.447 INFO    ] Initializing speech engine...
[2026-10-28 18:13:09,462.462 INFO    ] 2026-10-28 18:13:09
[2026-10-28 18:13:09,728.728 INFO    ] 2026-10-28 18:13:09
[2026-10-28 18:13:09,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:13:10,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:13:10,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:13:10,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:13:10,329.329 INFO    ] time= 28/10/2026 18:13:10
[2026-10-28 18:13:10,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:13:10,411.411 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:13:10,554.554 INFO    ] No existing commands found in stream
[2026-10-28 18:13:15,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:13:15,587.587 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-28 18:13:18,356.356 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:13:18,359.359 INFO    ] Checking for system updates...
[2026-10-28 18:13:18,395.395 INFO    ] 200
[2026-10-28 18:13:18,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:13:18,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:13:18,452.452 INFO    ] No update needed
[2026-10-28 18:13:18,455.455 INFO    ] Checking for camera pi updates...
[2026-10-28 18:13:18,491.491 INFO    ] 200
[2026-10-28 18:13:18,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:13:18,540.540 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:13:18,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:13:18,631.631 INFO    ] No camera update needed
[2026-10-28 18:13:18,634.634 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:13:18,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:13:18,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:13:18,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:13:20,686.686 INFO    ] ================================================
[2026-10-28 18:13:20,702.702 INFO    ] Launching Daemon at Wed Oct 28 18:13:20 IST 2026
[2026-10-28 18:13:20,712.712 INFO    ] ================================================
[2026-10-28 18:13:21,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:13:21
[2026-10-28 18:13:21,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:13:22,128.128 INFO    ] Initializing speech engine...
[2026-10-28 18:13:22,137.137 INFO    ] 2026-10-28 18:13:22
[2026-10-28 18:13:22,388.388 INFO    ] 2026-10-28 18:13:22
[2026-10-28 18:13:22,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:13:22,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:13:22,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:13:22,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:13:22,953.953 INFO    ] time= 28/10/2026 18:13:22
[2026-10-28 18:13:22,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:13:22,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:13:23,121.121 INFO    ] No existing commands found in stream
[2026-10-28 18:13:28,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:13:28,154.154 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-28 18:13:29,950.950 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:13:29,953.953 INFO    ] Checking for system updates...
[2026-10-28 18:13:29,990.990 INFO    ] 200
[2026-10-28 18:13:29,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:13:30,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:13:30,054.054 INFO    ] No update needed
[2026-10-28 18:13:30,057.057 INFO    ] Checking for camera pi updates...
[2026-10-28 18:13:30,092.092 INFO    ] 200
[2026-10-28 18:13:30,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:13:30,136.136 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:13:30,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:13:30,205.205 INFO    ] No camera update needed
[2026-10-28 18:13:30,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:13:30,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:13:30,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:13:30,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:13:32,267.267 INFO    ] ================================================
[2026-10-28 18:13:32,283.283 INFO    ] Launching Daemon at Wed Oct 28 18:13:32 IST 2026
[2026-10-28 18:13:32,303.303 INFO    ] ================================================
[2026-10-28 18:13:32,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:13:32
[2026-10-28 18:13:33,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:13:33,731.731 INFO    ] Initializing speech engine...
[2026-10-28 18:13:33,754.754 INFO    ] 2026-10-28 18:13:33
[2026-10-28 18:13:34,000.000 INFO    ] 2026-10-28 18:13:33
[2026-10-28 18:13:34,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:13:34,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:13:34,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:13:34,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:13:34,571.571 INFO    ] time= 28/10/2026 18:13:34
[2026-10-28 18:13:34,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:13:34,606.606 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:13:34,772.772 INFO    ] No existing commands found in stream
[2026-10-28 18:13:39,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:13:39,794.794 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 18:13:42,947.947 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:13:42,949.949 INFO    ] Checking for system updates...
[2026-10-28 18:13:42,988.988 INFO    ] 200
[2026-10-28 18:13:42,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:13:43,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:13:43,045.045 INFO    ] No update needed
[2026-10-28 18:13:43,048.048 INFO    ] Checking for camera pi updates...
[2026-10-28 18:13:43,081.081 INFO    ] 200
[2026-10-28 18:13:43,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:13:43,123.123 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:13:43,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:13:43,224.224 INFO    ] No camera update needed
[2026-10-28 18:13:43,226.226 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:13:43,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:13:43,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:13:43,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:13:45,280.280 INFO    ] ================================================
[2026-10-28 18:13:45,300.300 INFO    ] Launching Daemon at Wed Oct 28 18:13:45 IST 2026
[2026-10-28 18:13:45,312.312 INFO    ] ================================================
[2026-10-28 18:13:45,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:13:45
[2026-10-28 18:13:46,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:13:46,788.788 INFO    ] Initializing speech engine...
[2026-10-28 18:13:46,801.801 INFO    ] 2026-10-28 18:13:46
[2026-10-28 18:13:47,070.070 INFO    ] 2026-10-28 18:13:47
[2026-10-28 18:13:47,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:13:47,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:13:47,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:13:47,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:13:47,706.706 INFO    ] time= 28/10/2026 18:13:47
[2026-10-28 18:13:47,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:13:47,734.734 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:13:47,893.893 INFO    ] No existing commands found in stream
[2026-10-28 18:13:52,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:13:52,916.916 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 18:13:54,987.987 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:13:54,989.989 INFO    ] Checking for system updates...
[2026-10-28 18:13:55,025.025 INFO    ] 200
[2026-10-28 18:13:55,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:13:55,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:13:55,089.089 INFO    ] No update needed
[2026-10-28 18:13:55,091.091 INFO    ] Checking for camera pi updates...
[2026-10-28 18:13:55,125.125 INFO    ] 200
[2026-10-28 18:13:55,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:13:55,172.172 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:13:55,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:13:55,266.266 INFO    ] No camera update needed
[2026-10-28 18:13:55,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:13:55,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:13:55,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:13:55,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:13:57,322.322 INFO    ] ================================================
[2026-10-28 18:13:57,337.337 INFO    ] Launching Daemon at Wed Oct 28 18:13:57 IST 2026
[2026-10-28 18:13:57,347.347 INFO    ] ================================================
[2026-10-28 18:13:57,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:13:57
[2026-10-28 18:13:58,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:13:58,766.766 INFO    ] Initializing speech engine...
[2026-10-28 18:13:58,775.775 INFO    ] 2026-10-28 18:13:58
[2026-10-28 18:13:59,026.026 INFO    ] 2026-10-28 18:13:59
[2026-10-28 18:13:59,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:13:59,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:13:59,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:13:59,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:13:59,658.658 INFO    ] time= 28/10/2026 18:13:59
[2026-10-28 18:13:59,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:13:59,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:13:59,824.824 INFO    ] No existing commands found in stream
[2026-10-28 18:14:04,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:14:04,843.843 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-28 18:14:08,352.352 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:14:08,354.354 INFO    ] Checking for system updates...
[2026-10-28 18:14:08,391.391 INFO    ] 200
[2026-10-28 18:14:08,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:14:08,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:14:08,450.450 INFO    ] No update needed
[2026-10-28 18:14:08,453.453 INFO    ] Checking for camera pi updates...
[2026-10-28 18:14:08,487.487 INFO    ] 200
[2026-10-28 18:14:08,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:14:08,530.530 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:14:08,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:14:08,617.617 INFO    ] No camera update needed
[2026-10-28 18:14:08,620.620 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:14:08,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:14:08,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:14:08,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:14:10,677.677 INFO    ] ================================================
[2026-10-28 18:14:10,692.692 INFO    ] Launching Daemon at Wed Oct 28 18:14:10 IST 2026
[2026-10-28 18:14:10,702.702 INFO    ] ================================================
[2026-10-28 18:14:11,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:14:11
[2026-10-28 18:14:11,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:14:12,151.151 INFO    ] Initializing speech engine...
[2026-10-28 18:14:12,161.161 INFO    ] 2026-10-28 18:14:12
[2026-10-28 18:14:12,410.410 INFO    ] 2026-10-28 18:14:12
[2026-10-28 18:14:12,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:14:12,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:14:12,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:14:12,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:14:13,006.006 INFO    ] time= 28/10/2026 18:14:12
[2026-10-28 18:14:13,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:14:13,029.029 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:14:13,162.162 INFO    ] No existing commands found in stream
[2026-10-28 18:14:18,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:14:18,190.190 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-28 18:14:22,580.580 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:14:22,582.582 INFO    ] Checking for system updates...
[2026-10-28 18:14:22,619.619 INFO    ] 200
[2026-10-28 18:14:22,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:14:22,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:14:22,678.678 INFO    ] No update needed
[2026-10-28 18:14:22,680.680 INFO    ] Checking for camera pi updates...
[2026-10-28 18:14:22,718.718 INFO    ] 200
[2026-10-28 18:14:22,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:14:22,764.764 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:14:22,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:14:22,856.856 INFO    ] No camera update needed
[2026-10-28 18:14:22,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:14:22,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:14:22,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:14:22,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:14:24,911.911 INFO    ] ================================================
[2026-10-28 18:14:24,926.926 INFO    ] Launching Daemon at Wed Oct 28 18:14:24 IST 2026
[2026-10-28 18:14:24,937.937 INFO    ] ================================================
[2026-10-28 18:14:25,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:14:25
[2026-10-28 18:14:26,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:14:26,366.366 INFO    ] Initializing speech engine...
[2026-10-28 18:14:26,379.379 INFO    ] 2026-10-28 18:14:26
[2026-10-28 18:14:26,638.638 INFO    ] 2026-10-28 18:14:26
[2026-10-28 18:14:26,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:14:26,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:14:26,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:14:27,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:14:27,250.250 INFO    ] time= 28/10/2026 18:14:27
[2026-10-28 18:14:27,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:14:27,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:14:27,438.438 INFO    ] No existing commands found in stream
[2026-10-28 18:14:32,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:14:32,468.468 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-28 18:14:35,072.072 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:14:35,075.075 INFO    ] Checking for system updates...
[2026-10-28 18:14:35,113.113 INFO    ] 200
[2026-10-28 18:14:35,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:14:35,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:14:35,171.171 INFO    ] No update needed
[2026-10-28 18:14:35,173.173 INFO    ] Checking for camera pi updates...
[2026-10-28 18:14:35,209.209 INFO    ] 200
[2026-10-28 18:14:35,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:14:35,255.255 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:14:35,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:14:35,437.437 INFO    ] No camera update needed
[2026-10-28 18:14:35,439.439 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:14:35,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:14:35,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:14:35,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:14:37,492.492 INFO    ] ================================================
[2026-10-28 18:14:37,509.509 INFO    ] Launching Daemon at Wed Oct 28 18:14:37 IST 2026
[2026-10-28 18:14:37,520.520 INFO    ] ================================================
[2026-10-28 18:14:38,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:14:38
[2026-10-28 18:14:38,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:14:39,066.066 INFO    ] Initializing speech engine...
[2026-10-28 18:14:39,073.073 INFO    ] 2026-10-28 18:14:39
[2026-10-28 18:14:39,344.344 INFO    ] 2026-10-28 18:14:39
[2026-10-28 18:14:39,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:14:39,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:14:39,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:14:40,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:14:40,048.048 INFO    ] time= 28/10/2026 18:14:40
[2026-10-28 18:14:40,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:14:40,139.139 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:14:40,287.287 INFO    ] No existing commands found in stream
[2026-10-28 18:14:45,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:14:45,305.305 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-28 18:14:46,759.759 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:14:46,762.762 INFO    ] Checking for system updates...
[2026-10-28 18:14:46,798.798 INFO    ] 200
[2026-10-28 18:14:46,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:14:46,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:14:46,857.857 INFO    ] No update needed
[2026-10-28 18:14:46,860.860 INFO    ] Checking for camera pi updates...
[2026-10-28 18:14:46,894.894 INFO    ] 200
[2026-10-28 18:14:46,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:14:46,937.937 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:14:47,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:14:47,020.020 INFO    ] No camera update needed
[2026-10-28 18:14:47,022.022 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:14:47,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:14:47,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:14:47,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:14:49,077.077 INFO    ] ================================================
[2026-10-28 18:14:49,092.092 INFO    ] Launching Daemon at Wed Oct 28 18:14:49 IST 2026
[2026-10-28 18:14:49,102.102 INFO    ] ================================================
[2026-10-28 18:14:49,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:14:49
[2026-10-28 18:14:50,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:14:50,501.501 INFO    ] Initializing speech engine...
[2026-10-28 18:14:50,516.516 INFO    ] 2026-10-28 18:14:50
[2026-10-28 18:14:50,779.779 INFO    ] 2026-10-28 18:14:50
[2026-10-28 18:14:50,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:14:51,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:14:51,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:14:51,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:14:51,337.337 INFO    ] time= 28/10/2026 18:14:51
[2026-10-28 18:14:51,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:14:51,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:14:51,539.539 INFO    ] No existing commands found in stream
[2026-10-28 18:14:56,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:14:56,572.572 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-28 18:15:00,423.423 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:15:00,426.426 INFO    ] Checking for system updates...
[2026-10-28 18:15:00,464.464 INFO    ] 200
[2026-10-28 18:15:00,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:15:00,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:15:00,520.520 INFO    ] No update needed
[2026-10-28 18:15:00,522.522 INFO    ] Checking for camera pi updates...
[2026-10-28 18:15:00,558.558 INFO    ] 200
[2026-10-28 18:15:00,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:15:00,601.601 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:15:00,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:15:00,688.688 INFO    ] No camera update needed
[2026-10-28 18:15:00,690.690 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:15:00,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:15:00,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:15:00,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:15:02,789.789 INFO    ] ================================================
[2026-10-28 18:15:02,807.807 INFO    ] Launching Daemon at Wed Oct 28 18:15:02 IST 2026
[2026-10-28 18:15:02,820.820 INFO    ] ================================================
[2026-10-28 18:15:03,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:15:03
[2026-10-28 18:15:04,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:15:04,399.399 INFO    ] Initializing speech engine...
[2026-10-28 18:15:04,405.405 INFO    ] 2026-10-28 18:15:04
[2026-10-28 18:15:04,667.667 INFO    ] 2026-10-28 18:15:04
[2026-10-28 18:15:04,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:15:04,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:15:04,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:15:05,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:15:05,286.286 INFO    ] time= 28/10/2026 18:15:05
[2026-10-28 18:15:05,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:15:05,312.312 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:15:05,461.461 INFO    ] No existing commands found in stream
[2026-10-28 18:15:10,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:15:10,478.478 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 18:15:11,393.393 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:15:11,396.396 INFO    ] Checking for system updates...
[2026-10-28 18:15:11,431.431 INFO    ] 200
[2026-10-28 18:15:11,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:15:11,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:15:11,489.489 INFO    ] No update needed
[2026-10-28 18:15:11,491.491 INFO    ] Checking for camera pi updates...
[2026-10-28 18:15:11,525.525 INFO    ] 200
[2026-10-28 18:15:11,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:15:11,567.567 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:15:11,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:15:11,649.649 INFO    ] No camera update needed
[2026-10-28 18:15:11,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:15:11,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:15:11,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:15:11,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:15:13,705.705 INFO    ] ================================================
[2026-10-28 18:15:13,720.720 INFO    ] Launching Daemon at Wed Oct 28 18:15:13 IST 2026
[2026-10-28 18:15:13,730.730 INFO    ] ================================================
[2026-10-28 18:15:14,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:15:14
[2026-10-28 18:15:15,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:15:15,333.333 INFO    ] Initializing speech engine...
[2026-10-28 18:15:15,342.342 INFO    ] 2026-10-28 18:15:15
[2026-10-28 18:15:15,619.619 INFO    ] 2026-10-28 18:15:15
[2026-10-28 18:15:15,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:15:16,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:15:16,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:15:16,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:15:16,431.431 INFO    ] time= 28/10/2026 18:15:16
[2026-10-28 18:15:16,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:15:16,497.497 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:15:16,733.733 INFO    ] No existing commands found in stream
[2026-10-28 18:15:21,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:15:21,767.767 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-28 18:15:24,764.764 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:15:24,766.766 INFO    ] Checking for system updates...
[2026-10-28 18:15:24,805.805 INFO    ] 200
[2026-10-28 18:15:24,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:15:24,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:15:24,869.869 INFO    ] No update needed
[2026-10-28 18:15:24,871.871 INFO    ] Checking for camera pi updates...
[2026-10-28 18:15:24,905.905 INFO    ] 200
[2026-10-28 18:15:24,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:15:24,947.947 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:15:25,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:15:25,030.030 INFO    ] No camera update needed
[2026-10-28 18:15:25,032.032 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:15:25,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:15:25,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:15:25,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:15:27,085.085 INFO    ] ================================================
[2026-10-28 18:15:27,099.099 INFO    ] Launching Daemon at Wed Oct 28 18:15:27 IST 2026
[2026-10-28 18:15:27,110.110 INFO    ] ================================================
[2026-10-28 18:15:27,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:15:27
[2026-10-28 18:15:28,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:15:28,705.705 INFO    ] Initializing speech engine...
[2026-10-28 18:15:28,715.715 INFO    ] 2026-10-28 18:15:28
[2026-10-28 18:15:28,997.997 INFO    ] 2026-10-28 18:15:28
[2026-10-28 18:15:29,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:15:29,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:15:29,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:15:29,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:15:29,692.692 INFO    ] time= 28/10/2026 18:15:29
[2026-10-28 18:15:29,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:15:29,784.784 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:15:29,934.934 INFO    ] No existing commands found in stream
[2026-10-28 18:15:34,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:15:34,959.959 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-28 18:15:38,073.073 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:15:38,076.076 INFO    ] Checking for system updates...
[2026-10-28 18:15:38,112.112 INFO    ] 200
[2026-10-28 18:15:38,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:15:38,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:15:38,170.170 INFO    ] No update needed
[2026-10-28 18:15:38,173.173 INFO    ] Checking for camera pi updates...
[2026-10-28 18:15:38,211.211 INFO    ] 200
[2026-10-28 18:15:38,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:15:38,260.260 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:15:38,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:15:38,343.343 INFO    ] No camera update needed
[2026-10-28 18:15:38,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:15:38,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:15:38,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:15:38,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:15:40,400.400 INFO    ] ================================================
[2026-10-28 18:15:40,415.415 INFO    ] Launching Daemon at Wed Oct 28 18:15:40 IST 2026
[2026-10-28 18:15:40,426.426 INFO    ] ================================================
[2026-10-28 18:15:40,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:15:40
[2026-10-28 18:15:41,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:15:41,859.859 INFO    ] Initializing speech engine...
[2026-10-28 18:15:41,867.867 INFO    ] 2026-10-28 18:15:41
[2026-10-28 18:15:42,164.164 INFO    ] 2026-10-28 18:15:42
[2026-10-28 18:15:42,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:15:42,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:15:42,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:15:42,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:15:42,792.792 INFO    ] time= 28/10/2026 18:15:42
[2026-10-28 18:15:42,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:15:42,835.835 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:15:42,979.979 INFO    ] No existing commands found in stream
[2026-10-28 18:15:47,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:15:47,992.992 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-28 18:15:52,509.509 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:15:52,512.512 INFO    ] Checking for system updates...
[2026-10-28 18:15:52,550.550 INFO    ] 200
[2026-10-28 18:15:52,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:15:52,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:15:52,610.610 INFO    ] No update needed
[2026-10-28 18:15:52,612.612 INFO    ] Checking for camera pi updates...
[2026-10-28 18:15:52,647.647 INFO    ] 200
[2026-10-28 18:15:52,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:15:52,690.690 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:15:52,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:15:52,786.786 INFO    ] No camera update needed
[2026-10-28 18:15:52,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:15:52,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:15:52,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:15:52,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:15:54,845.845 INFO    ] ================================================
[2026-10-28 18:15:54,860.860 INFO    ] Launching Daemon at Wed Oct 28 18:15:54 IST 2026
[2026-10-28 18:15:54,871.871 INFO    ] ================================================
[2026-10-28 18:15:55,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:15:55
[2026-10-28 18:15:56,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:15:56,412.412 INFO    ] Initializing speech engine...
[2026-10-28 18:15:56,422.422 INFO    ] 2026-10-28 18:15:56
[2026-10-28 18:15:56,667.667 INFO    ] 2026-10-28 18:15:56
[2026-10-28 18:15:56,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:15:57,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:15:57,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:15:57,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:15:57,266.266 INFO    ] time= 28/10/2026 18:15:57
[2026-10-28 18:15:57,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:15:57,292.292 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:15:57,469.469 INFO    ] No existing commands found in stream
[2026-10-28 18:16:02,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:16:02,489.489 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 18:16:06,750.750 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:16:06,753.753 INFO    ] Checking for system updates...
[2026-10-28 18:16:06,788.788 INFO    ] 200
[2026-10-28 18:16:06,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:16:06,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:16:06,846.846 INFO    ] No update needed
[2026-10-28 18:16:06,849.849 INFO    ] Checking for camera pi updates...
[2026-10-28 18:16:06,882.882 INFO    ] 200
[2026-10-28 18:16:06,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:16:06,925.925 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:16:07,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:16:07,006.006 INFO    ] No camera update needed
[2026-10-28 18:16:07,008.008 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:16:07,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:16:07,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:16:07,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:16:09,064.064 INFO    ] ================================================
[2026-10-28 18:16:09,080.080 INFO    ] Launching Daemon at Wed Oct 28 18:16:09 IST 2026
[2026-10-28 18:16:09,090.090 INFO    ] ================================================
[2026-10-28 18:16:09,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:16:09
[2026-10-28 18:16:10,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:16:10,666.666 INFO    ] Initializing speech engine...
[2026-10-28 18:16:10,675.675 INFO    ] 2026-10-28 18:16:10
[2026-10-28 18:16:10,948.948 INFO    ] 2026-10-28 18:16:10
[2026-10-28 18:16:11,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:16:11,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:16:11,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:16:11,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:16:11,731.731 INFO    ] time= 28/10/2026 18:16:11
[2026-10-28 18:16:11,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:16:11,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:16:11,957.957 INFO    ] No existing commands found in stream
[2026-10-28 18:16:16,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:16:16,978.978 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-28 18:16:21,501.501 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:16:21,504.504 INFO    ] Checking for system updates...
[2026-10-28 18:16:21,543.543 INFO    ] 200
[2026-10-28 18:16:21,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:16:21,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:16:21,609.609 INFO    ] No update needed
[2026-10-28 18:16:21,611.611 INFO    ] Checking for camera pi updates...
[2026-10-28 18:16:21,651.651 INFO    ] 200
[2026-10-28 18:16:21,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:16:21,696.696 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:16:21,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:16:21,781.781 INFO    ] No camera update needed
[2026-10-28 18:16:21,784.784 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:16:21,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:16:21,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:16:21,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:16:23,839.839 INFO    ] ================================================
[2026-10-28 18:16:23,854.854 INFO    ] Launching Daemon at Wed Oct 28 18:16:23 IST 2026
[2026-10-28 18:16:23,865.865 INFO    ] ================================================
[2026-10-28 18:16:24,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:16:24
[2026-10-28 18:16:25,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:16:25,272.272 INFO    ] Initializing speech engine...
[2026-10-28 18:16:25,279.279 INFO    ] 2026-10-28 18:16:25
[2026-10-28 18:16:25,581.581 INFO    ] 2026-10-28 18:16:25
[2026-10-28 18:16:25,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:16:25,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:16:25,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:16:26,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:16:26,195.195 INFO    ] time= 28/10/2026 18:16:26
[2026-10-28 18:16:26,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:16:26,241.241 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:16:26,377.377 INFO    ] No existing commands found in stream
[2026-10-28 18:16:31,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:16:31,416.416 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-28 18:16:33,886.886 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:16:33,889.889 INFO    ] Checking for system updates...
[2026-10-28 18:16:33,924.924 INFO    ] 200
[2026-10-28 18:16:33,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:16:33,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:16:33,981.981 INFO    ] No update needed
[2026-10-28 18:16:33,984.984 INFO    ] Checking for camera pi updates...
[2026-10-28 18:16:34,018.018 INFO    ] 200
[2026-10-28 18:16:34,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:16:34,061.061 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:16:34,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:16:34,145.145 INFO    ] No camera update needed
[2026-10-28 18:16:34,148.148 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:16:34,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:16:34,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:16:34,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:16:36,200.200 INFO    ] ================================================
[2026-10-28 18:16:36,215.215 INFO    ] Launching Daemon at Wed Oct 28 18:16:36 IST 2026
[2026-10-28 18:16:36,226.226 INFO    ] ================================================
[2026-10-28 18:16:36,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:16:36
[2026-10-28 18:16:37,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:16:37,636.636 INFO    ] Initializing speech engine...
[2026-10-28 18:16:37,645.645 INFO    ] 2026-10-28 18:16:37
[2026-10-28 18:16:37,938.938 INFO    ] 2026-10-28 18:16:37
[2026-10-28 18:16:37,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:16:38,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:16:38,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:16:38,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:16:38,553.553 INFO    ] time= 28/10/2026 18:16:38
[2026-10-28 18:16:38,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:16:38,595.595 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:16:38,718.718 INFO    ] No existing commands found in stream
[2026-10-28 18:16:43,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:16:43,751.751 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 18:16:47,151.151 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:16:47,154.154 INFO    ] Checking for system updates...
[2026-10-28 18:16:47,190.190 INFO    ] 200
[2026-10-28 18:16:47,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:16:47,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:16:47,247.247 INFO    ] No update needed
[2026-10-28 18:16:47,249.249 INFO    ] Checking for camera pi updates...
[2026-10-28 18:16:47,286.286 INFO    ] 200
[2026-10-28 18:16:47,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:16:47,329.329 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:16:47,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:16:47,514.514 INFO    ] No camera update needed
[2026-10-28 18:16:47,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:16:47,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:16:47,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:16:47,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:16:49,568.568 INFO    ] ================================================
[2026-10-28 18:16:49,583.583 INFO    ] Launching Daemon at Wed Oct 28 18:16:49 IST 2026
[2026-10-28 18:16:49,593.593 INFO    ] ================================================
[2026-10-28 18:16:50,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:16:50
[2026-10-28 18:16:50,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:16:50,991.991 INFO    ] Initializing speech engine...
[2026-10-28 18:16:51,007.007 INFO    ] 2026-10-28 18:16:50
[2026-10-28 18:16:51,286.286 INFO    ] 2026-10-28 18:16:51
[2026-10-28 18:16:51,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:16:51,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:16:51,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:16:51,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:16:51,903.903 INFO    ] time= 28/10/2026 18:16:51
[2026-10-28 18:16:51,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:16:51,928.928 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:16:52,050.050 INFO    ] No existing commands found in stream
[2026-10-28 18:16:57,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:16:57,078.078 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 18:17:00,545.545 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:17:00,547.547 INFO    ] Checking for system updates...
[2026-10-28 18:17:00,586.586 INFO    ] 200
[2026-10-28 18:17:00,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:17:00,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:17:00,643.643 INFO    ] No update needed
[2026-10-28 18:17:00,646.646 INFO    ] Checking for camera pi updates...
[2026-10-28 18:17:00,680.680 INFO    ] 200
[2026-10-28 18:17:00,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:17:00,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:17:00,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:17:00,817.817 INFO    ] No camera update needed
[2026-10-28 18:17:00,819.819 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:17:00,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:17:00,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:17:00,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:17:02,875.875 INFO    ] ================================================
[2026-10-28 18:17:02,894.894 INFO    ] Launching Daemon at Wed Oct 28 18:17:02 IST 2026
[2026-10-28 18:17:02,906.906 INFO    ] ================================================
[2026-10-28 18:17:03,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:17:03
[2026-10-28 18:17:04,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:17:04,519.519 INFO    ] Initializing speech engine...
[2026-10-28 18:17:04,531.531 INFO    ] 2026-10-28 18:17:04
[2026-10-28 18:17:04,845.845 INFO    ] 2026-10-28 18:17:04
[2026-10-28 18:17:04,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:17:05,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:17:05,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:17:05,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:17:05,651.651 INFO    ] time= 28/10/2026 18:17:05
[2026-10-28 18:17:05,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:17:05,743.743 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:17:05,919.919 INFO    ] No existing commands found in stream
[2026-10-28 18:17:10,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:17:10,933.933 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-28 18:17:14,180.180 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:17:14,183.183 INFO    ] Checking for system updates...
[2026-10-28 18:17:14,220.220 INFO    ] 200
[2026-10-28 18:17:14,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:17:14,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:17:14,279.279 INFO    ] No update needed
[2026-10-28 18:17:14,282.282 INFO    ] Checking for camera pi updates...
[2026-10-28 18:17:14,318.318 INFO    ] 200
[2026-10-28 18:17:14,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:17:14,367.367 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:17:14,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:17:14,459.459 INFO    ] No camera update needed
[2026-10-28 18:17:14,461.461 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:17:14,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:17:14,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:17:14,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:17:16,518.518 INFO    ] ================================================
[2026-10-28 18:17:16,533.533 INFO    ] Launching Daemon at Wed Oct 28 18:17:16 IST 2026
[2026-10-28 18:17:16,544.544 INFO    ] ================================================
[2026-10-28 18:17:17,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:17:17
[2026-10-28 18:17:17,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:17:18,054.054 INFO    ] Initializing speech engine...
[2026-10-28 18:17:18,060.060 INFO    ] 2026-10-28 18:17:18
[2026-10-28 18:17:18,334.334 INFO    ] 2026-10-28 18:17:18
[2026-10-28 18:17:18,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:17:18,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:17:18,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:17:19,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:17:19,121.121 INFO    ] time= 28/10/2026 18:17:19
[2026-10-28 18:17:19,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:17:19,240.240 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:17:19,444.444 INFO    ] No existing commands found in stream
[2026-10-28 18:17:24,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:17:24,468.468 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-28 18:17:28,383.383 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:17:28,386.386 INFO    ] Checking for system updates...
[2026-10-28 18:17:28,422.422 INFO    ] 200
[2026-10-28 18:17:28,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:17:28,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:17:28,484.484 INFO    ] No update needed
[2026-10-28 18:17:28,487.487 INFO    ] Checking for camera pi updates...
[2026-10-28 18:17:28,523.523 INFO    ] 200
[2026-10-28 18:17:28,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:17:28,570.570 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:17:28,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:17:28,655.655 INFO    ] No camera update needed
[2026-10-28 18:17:28,657.657 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:17:28,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:17:28,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:17:28,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:17:30,708.708 INFO    ] ================================================
[2026-10-28 18:17:30,724.724 INFO    ] Launching Daemon at Wed Oct 28 18:17:30 IST 2026
[2026-10-28 18:17:30,740.740 INFO    ] ================================================
[2026-10-28 18:17:31,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:17:31
[2026-10-28 18:17:31,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:17:32,295.295 INFO    ] Initializing speech engine...
[2026-10-28 18:17:32,301.301 INFO    ] 2026-10-28 18:17:32
[2026-10-28 18:17:32,603.603 INFO    ] 2026-10-28 18:17:32
[2026-10-28 18:17:32,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:17:33,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:17:33,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:17:33,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:17:33,392.392 INFO    ] time= 28/10/2026 18:17:33
[2026-10-28 18:17:33,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:17:33,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:17:33,718.718 INFO    ] No existing commands found in stream
[2026-10-28 18:17:38,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:17:38,741.741 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 18:17:40,111.111 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:17:40,114.114 INFO    ] Checking for system updates...
[2026-10-28 18:17:40,151.151 INFO    ] 200
[2026-10-28 18:17:40,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:17:40,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:17:40,215.215 INFO    ] No update needed
[2026-10-28 18:17:40,217.217 INFO    ] Checking for camera pi updates...
[2026-10-28 18:17:40,254.254 INFO    ] 200
[2026-10-28 18:17:40,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:17:40,301.301 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:17:40,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:17:40,389.389 INFO    ] No camera update needed
[2026-10-28 18:17:40,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:17:40,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:17:40,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:17:40,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:17:42,444.444 INFO    ] ================================================
[2026-10-28 18:17:42,459.459 INFO    ] Launching Daemon at Wed Oct 28 18:17:42 IST 2026
[2026-10-28 18:17:42,469.469 INFO    ] ================================================
[2026-10-28 18:17:43,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:17:43
[2026-10-28 18:17:43,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:17:43,882.882 INFO    ] Initializing speech engine...
[2026-10-28 18:17:43,891.891 INFO    ] 2026-10-28 18:17:43
[2026-10-28 18:17:44,136.136 INFO    ] 2026-10-28 18:17:44
[2026-10-28 18:17:44,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:17:44,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:17:44,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:17:44,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:17:44,712.712 INFO    ] time= 28/10/2026 18:17:44
[2026-10-28 18:17:44,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:17:44,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:17:44,925.925 INFO    ] No existing commands found in stream
[2026-10-28 18:17:49,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:17:49,953.953 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 18:17:51,597.597 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:17:51,600.600 INFO    ] Checking for system updates...
[2026-10-28 18:17:51,637.637 INFO    ] 200
[2026-10-28 18:17:51,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:17:51,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:17:51,696.696 INFO    ] No update needed
[2026-10-28 18:17:51,699.699 INFO    ] Checking for camera pi updates...
[2026-10-28 18:17:51,733.733 INFO    ] 200
[2026-10-28 18:17:51,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:17:51,777.777 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:17:51,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:17:51,871.871 INFO    ] No camera update needed
[2026-10-28 18:17:51,873.873 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:17:51,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:17:51,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:17:51,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:17:53,927.927 INFO    ] ================================================
[2026-10-28 18:17:53,942.942 INFO    ] Launching Daemon at Wed Oct 28 18:17:53 IST 2026
[2026-10-28 18:17:53,953.953 INFO    ] ================================================
[2026-10-28 18:17:54,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:17:54
[2026-10-28 18:17:55,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:17:55,403.403 INFO    ] Initializing speech engine...
[2026-10-28 18:17:55,420.420 INFO    ] 2026-10-28 18:17:55
[2026-10-28 18:17:55,709.709 INFO    ] 2026-10-28 18:17:55
[2026-10-28 18:17:55,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:17:56,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:17:56,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:17:56,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:17:56,363.363 INFO    ] time= 28/10/2026 18:17:56
[2026-10-28 18:17:56,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:17:56,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:17:56,560.560 INFO    ] No existing commands found in stream
[2026-10-28 18:18:01,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:18:01,585.585 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-28 18:18:03,866.866 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:18:03,869.869 INFO    ] Checking for system updates...
[2026-10-28 18:18:03,916.916 INFO    ] 200
[2026-10-28 18:18:03,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:18:04,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:18:04,004.004 INFO    ] No update needed
[2026-10-28 18:18:04,006.006 INFO    ] Checking for camera pi updates...
[2026-10-28 18:18:04,072.072 INFO    ] 200
[2026-10-28 18:18:04,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:18:04,120.120 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:18:04,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:18:04,207.207 INFO    ] No camera update needed
[2026-10-28 18:18:04,210.210 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:18:04,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:18:04,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:18:04,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:18:06,262.262 INFO    ] ================================================
[2026-10-28 18:18:06,277.277 INFO    ] Launching Daemon at Wed Oct 28 18:18:06 IST 2026
[2026-10-28 18:18:06,288.288 INFO    ] ================================================
[2026-10-28 18:18:06,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:18:06
[2026-10-28 18:18:07,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:18:07,720.720 INFO    ] Initializing speech engine...
[2026-10-28 18:18:07,726.726 INFO    ] 2026-10-28 18:18:07
[2026-10-28 18:18:07,984.984 INFO    ] 2026-10-28 18:18:07
[2026-10-28 18:18:08,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:18:08,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:18:08,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:18:08,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:18:08,765.765 INFO    ] time= 28/10/2026 18:18:08
[2026-10-28 18:18:08,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:18:08,877.877 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:18:09,068.068 INFO    ] No existing commands found in stream
[2026-10-28 18:18:14,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:18:14,101.101 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 18:18:17,861.861 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:18:17,863.863 INFO    ] Checking for system updates...
[2026-10-28 18:18:17,898.898 INFO    ] 200
[2026-10-28 18:18:17,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:18:17,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:18:17,955.955 INFO    ] No update needed
[2026-10-28 18:18:17,957.957 INFO    ] Checking for camera pi updates...
[2026-10-28 18:18:17,990.990 INFO    ] 200
[2026-10-28 18:18:17,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:18:18,039.039 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:18:18,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:18:18,122.122 INFO    ] No camera update needed
[2026-10-28 18:18:18,125.125 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:18:18,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:18:18,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:18:18,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:18:20,178.178 INFO    ] ================================================
[2026-10-28 18:18:20,193.193 INFO    ] Launching Daemon at Wed Oct 28 18:18:20 IST 2026
[2026-10-28 18:18:20,204.204 INFO    ] ================================================
[2026-10-28 18:18:20,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:18:20
[2026-10-28 18:18:21,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:18:21,838.838 INFO    ] Initializing speech engine...
[2026-10-28 18:18:21,852.852 INFO    ] 2026-10-28 18:18:21
[2026-10-28 18:18:22,135.135 INFO    ] 2026-10-28 18:18:22
[2026-10-28 18:18:22,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:18:22,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:18:22,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:18:22,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:18:22,905.905 INFO    ] time= 28/10/2026 18:18:22
[2026-10-28 18:18:22,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:18:23,039.039 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:18:23,213.213 INFO    ] No existing commands found in stream
[2026-10-28 18:18:28,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:18:28,247.247 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-28 18:18:32,783.783 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:18:32,786.786 INFO    ] Checking for system updates...
[2026-10-28 18:18:32,825.825 INFO    ] 200
[2026-10-28 18:18:32,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:18:32,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:18:32,890.890 INFO    ] No update needed
[2026-10-28 18:18:32,893.893 INFO    ] Checking for camera pi updates...
[2026-10-28 18:18:32,930.930 INFO    ] 200
[2026-10-28 18:18:32,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:18:32,973.973 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:18:33,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:18:33,075.075 INFO    ] No camera update needed
[2026-10-28 18:18:33,077.077 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:18:33,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:18:33,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:18:33,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:18:35,128.128 INFO    ] ================================================
[2026-10-28 18:18:35,144.144 INFO    ] Launching Daemon at Wed Oct 28 18:18:35 IST 2026
[2026-10-28 18:18:35,154.154 INFO    ] ================================================
[2026-10-28 18:18:35,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:18:35
[2026-10-28 18:18:36,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:18:36,569.569 INFO    ] Initializing speech engine...
[2026-10-28 18:18:36,579.579 INFO    ] 2026-10-28 18:18:36
[2026-10-28 18:18:36,859.859 INFO    ] 2026-10-28 18:18:36
[2026-10-28 18:18:36,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:18:37,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:18:37,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:18:37,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:18:37,478.478 INFO    ] time= 28/10/2026 18:18:37
[2026-10-28 18:18:37,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:18:37,506.506 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:18:37,652.652 INFO    ] No existing commands found in stream
[2026-10-28 18:18:42,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:18:42,667.667 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 18:18:46,083.083 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:18:46,085.085 INFO    ] Checking for system updates...
[2026-10-28 18:18:46,125.125 INFO    ] 200
[2026-10-28 18:18:46,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:18:46,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:18:46,188.188 INFO    ] No update needed
[2026-10-28 18:18:46,190.190 INFO    ] Checking for camera pi updates...
[2026-10-28 18:18:46,227.227 INFO    ] 200
[2026-10-28 18:18:46,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:18:46,270.270 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:18:46,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:18:46,339.339 INFO    ] No camera update needed
[2026-10-28 18:18:46,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:18:46,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:18:46,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:18:46,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:18:48,394.394 INFO    ] ================================================
[2026-10-28 18:18:48,409.409 INFO    ] Launching Daemon at Wed Oct 28 18:18:48 IST 2026
[2026-10-28 18:18:48,420.420 INFO    ] ================================================
[2026-10-28 18:18:48,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:18:48
[2026-10-28 18:18:49,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:18:49,819.819 INFO    ] Initializing speech engine...
[2026-10-28 18:18:49,837.837 INFO    ] 2026-10-28 18:18:49
[2026-10-28 18:18:50,118.118 INFO    ] 2026-10-28 18:18:50
[2026-10-28 18:18:50,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:18:50,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:18:50,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:18:50,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:18:50,740.740 INFO    ] time= 28/10/2026 18:18:50
[2026-10-28 18:18:50,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:18:50,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:18:50,911.911 INFO    ] No existing commands found in stream
[2026-10-28 18:18:55,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:18:55,926.926 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 18:18:59,359.359 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:18:59,362.362 INFO    ] Checking for system updates...
[2026-10-28 18:18:59,397.397 INFO    ] 200
[2026-10-28 18:18:59,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:18:59,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:18:59,454.454 INFO    ] No update needed
[2026-10-28 18:18:59,456.456 INFO    ] Checking for camera pi updates...
[2026-10-28 18:18:59,493.493 INFO    ] 200
[2026-10-28 18:18:59,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:18:59,536.536 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:18:59,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:18:59,722.722 INFO    ] No camera update needed
[2026-10-28 18:18:59,724.724 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:18:59,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:18:59,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:18:59,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:19:01,791.791 INFO    ] ================================================
[2026-10-28 18:19:01,818.818 INFO    ] Launching Daemon at Wed Oct 28 18:19:01 IST 2026
[2026-10-28 18:19:01,856.856 INFO    ] ================================================
[2026-10-28 18:19:02,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:19:02
[2026-10-28 18:19:03,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:19:03,494.494 INFO    ] Initializing speech engine...
[2026-10-28 18:19:03,500.500 INFO    ] 2026-10-28 18:19:03
[2026-10-28 18:19:03,796.796 INFO    ] 2026-10-28 18:19:03
[2026-10-28 18:19:03,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:19:04,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:19:04,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:19:04,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:19:04,512.512 INFO    ] time= 28/10/2026 18:19:04
[2026-10-28 18:19:04,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:19:04,604.604 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:19:04,805.805 INFO    ] No existing commands found in stream
[2026-10-28 18:19:09,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:19:09,826.826 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-28 18:19:12,461.461 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:19:12,464.464 INFO    ] Checking for system updates...
[2026-10-28 18:19:12,499.499 INFO    ] 200
[2026-10-28 18:19:12,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:19:12,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:19:12,561.561 INFO    ] No update needed
[2026-10-28 18:19:12,563.563 INFO    ] Checking for camera pi updates...
[2026-10-28 18:19:12,597.597 INFO    ] 200
[2026-10-28 18:19:12,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:19:12,644.644 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:19:12,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:19:12,739.739 INFO    ] No camera update needed
[2026-10-28 18:19:12,742.742 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:19:12,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:19:12,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:19:12,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:19:14,795.795 INFO    ] ================================================
[2026-10-28 18:19:14,811.811 INFO    ] Launching Daemon at Wed Oct 28 18:19:14 IST 2026
[2026-10-28 18:19:14,821.821 INFO    ] ================================================
[2026-10-28 18:19:15,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:19:15
[2026-10-28 18:19:15,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:19:16,241.241 INFO    ] Initializing speech engine...
[2026-10-28 18:19:16,250.250 INFO    ] 2026-10-28 18:19:16
[2026-10-28 18:19:16,501.501 INFO    ] 2026-10-28 18:19:16
[2026-10-28 18:19:16,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:19:16,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:19:16,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:19:17,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:19:17,108.108 INFO    ] time= 28/10/2026 18:19:17
[2026-10-28 18:19:17,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:19:17,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:19:17,398.398 INFO    ] No existing commands found in stream
[2026-10-28 18:19:22,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:19:22,431.431 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-28 18:19:23,661.661 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:19:23,664.664 INFO    ] Checking for system updates...
[2026-10-28 18:19:23,704.704 INFO    ] 200
[2026-10-28 18:19:23,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:19:23,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:19:23,773.773 INFO    ] No update needed
[2026-10-28 18:19:23,776.776 INFO    ] Checking for camera pi updates...
[2026-10-28 18:19:23,815.815 INFO    ] 200
[2026-10-28 18:19:23,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:19:23,858.858 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:19:23,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:19:23,947.947 INFO    ] No camera update needed
[2026-10-28 18:19:23,949.949 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:19:23,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:19:23,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:19:23,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:19:26,003.003 INFO    ] ================================================
[2026-10-28 18:19:26,019.019 INFO    ] Launching Daemon at Wed Oct 28 18:19:26 IST 2026
[2026-10-28 18:19:26,030.030 INFO    ] ================================================
[2026-10-28 18:19:26,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:19:26
[2026-10-28 18:19:27,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:19:27,449.449 INFO    ] Initializing speech engine...
[2026-10-28 18:19:27,462.462 INFO    ] 2026-10-28 18:19:27
[2026-10-28 18:19:27,714.714 INFO    ] 2026-10-28 18:19:27
[2026-10-28 18:19:27,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:19:28,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:19:28,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:19:28,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:19:28,271.271 INFO    ] time= 28/10/2026 18:19:28
[2026-10-28 18:19:28,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:19:28,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:19:28,437.437 INFO    ] No existing commands found in stream
[2026-10-28 18:19:33,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:19:33,470.470 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-28 18:19:36,023.023 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:19:36,026.026 INFO    ] Checking for system updates...
[2026-10-28 18:19:36,061.061 INFO    ] 200
[2026-10-28 18:19:36,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:19:36,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:19:36,126.126 INFO    ] No update needed
[2026-10-28 18:19:36,129.129 INFO    ] Checking for camera pi updates...
[2026-10-28 18:19:36,163.163 INFO    ] 200
[2026-10-28 18:19:36,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:19:36,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:19:36,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:19:36,295.295 INFO    ] No camera update needed
[2026-10-28 18:19:36,297.297 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:19:36,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:19:36,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:19:36,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:19:38,350.350 INFO    ] ================================================
[2026-10-28 18:19:38,365.365 INFO    ] Launching Daemon at Wed Oct 28 18:19:38 IST 2026
[2026-10-28 18:19:38,376.376 INFO    ] ================================================
[2026-10-28 18:19:39,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:19:39
[2026-10-28 18:19:39,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:19:39,970.970 INFO    ] Initializing speech engine...
[2026-10-28 18:19:39,985.985 INFO    ] 2026-10-28 18:19:39
[2026-10-28 18:19:40,274.274 INFO    ] 2026-10-28 18:19:40
[2026-10-28 18:19:40,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:19:40,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:19:40,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:19:40,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:19:40,864.864 INFO    ] time= 28/10/2026 18:19:40
[2026-10-28 18:19:40,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:19:40,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:19:41,070.070 INFO    ] No existing commands found in stream
[2026-10-28 18:19:46,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:19:46,103.103 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-28 18:19:48,762.762 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:19:48,765.765 INFO    ] Checking for system updates...
[2026-10-28 18:19:48,805.805 INFO    ] 200
[2026-10-28 18:19:48,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:19:48,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:19:48,862.862 INFO    ] No update needed
[2026-10-28 18:19:48,865.865 INFO    ] Checking for camera pi updates...
[2026-10-28 18:19:48,901.901 INFO    ] 200
[2026-10-28 18:19:48,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:19:48,947.947 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:19:49,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:19:49,036.036 INFO    ] No camera update needed
[2026-10-28 18:19:49,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:19:49,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:19:49,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:19:49,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:19:51,091.091 INFO    ] ================================================
[2026-10-28 18:19:51,106.106 INFO    ] Launching Daemon at Wed Oct 28 18:19:51 IST 2026
[2026-10-28 18:19:51,116.116 INFO    ] ================================================
[2026-10-28 18:19:51,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:19:51
[2026-10-28 18:19:52,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:19:52,522.522 INFO    ] Initializing speech engine...
[2026-10-28 18:19:52,541.541 INFO    ] 2026-10-28 18:19:52
[2026-10-28 18:19:52,794.794 INFO    ] 2026-10-28 18:19:52
[2026-10-28 18:19:52,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:19:53,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:19:53,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:19:53,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:19:53,387.387 INFO    ] time= 28/10/2026 18:19:53
[2026-10-28 18:19:53,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:19:53,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:19:53,554.554 INFO    ] No existing commands found in stream
[2026-10-28 18:19:58,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:19:58,571.571 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 18:20:08,946.946 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:20:08,949.949 INFO    ] Checking for system updates...
[2026-10-28 18:20:08,988.988 INFO    ] 200
[2026-10-28 18:20:08,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:20:09,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:20:09,051.051 INFO    ] No update needed
[2026-10-28 18:20:09,054.054 INFO    ] Checking for camera pi updates...
[2026-10-28 18:20:09,088.088 INFO    ] 200
[2026-10-28 18:20:09,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:20:09,131.131 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:20:09,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:20:09,186.186 INFO    ] No camera update needed
[2026-10-28 18:20:09,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:20:09,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:20:09,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:20:09,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:20:11,243.243 INFO    ] ================================================
[2026-10-28 18:20:11,258.258 INFO    ] Launching Daemon at Wed Oct 28 18:20:11 IST 2026
[2026-10-28 18:20:11,269.269 INFO    ] ================================================
[2026-10-28 18:20:11,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:20:11
[2026-10-28 18:20:12,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:20:12,892.892 INFO    ] Initializing speech engine...
[2026-10-28 18:20:12,900.900 INFO    ] 2026-10-28 18:20:12
[2026-10-28 18:20:13,176.176 INFO    ] 2026-10-28 18:20:13
[2026-10-28 18:20:13,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:20:13,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:20:13,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:20:13,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:20:13,736.736 INFO    ] time= 28/10/2026 18:20:13
[2026-10-28 18:20:13,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:20:13,775.775 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:20:13,938.938 INFO    ] No existing commands found in stream
[2026-10-28 18:20:18,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:20:18,973.973 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-28 18:20:19,711.711 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:20:19,714.714 INFO    ] Checking for system updates...
[2026-10-28 18:20:19,751.751 INFO    ] 200
[2026-10-28 18:20:19,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:20:19,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:20:19,810.810 INFO    ] No update needed
[2026-10-28 18:20:19,813.813 INFO    ] Checking for camera pi updates...
[2026-10-28 18:20:19,851.851 INFO    ] 200
[2026-10-28 18:20:19,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:20:19,897.897 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:20:19,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:20:19,983.983 INFO    ] No camera update needed
[2026-10-28 18:20:19,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:20:19,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:20:19,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:20:20,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:20:22,048.048 INFO    ] ================================================
[2026-10-28 18:20:22,063.063 INFO    ] Launching Daemon at Wed Oct 28 18:20:22 IST 2026
[2026-10-28 18:20:22,074.074 INFO    ] ================================================
[2026-10-28 18:20:22,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:20:22
[2026-10-28 18:20:23,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:20:23,571.571 INFO    ] Initializing speech engine...
[2026-10-28 18:20:23,580.580 INFO    ] 2026-10-28 18:20:23
[2026-10-28 18:20:23,892.892 INFO    ] 2026-10-28 18:20:23
[2026-10-28 18:20:23,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:20:24,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:20:24,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:20:24,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:20:24,487.487 INFO    ] time= 28/10/2026 18:20:24
[2026-10-28 18:20:24,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:20:24,570.570 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:20:24,845.845 INFO    ] No existing commands found in stream
[2026-10-28 18:20:29,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:20:29,868.868 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-28 18:20:31,787.787 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:20:31,790.790 INFO    ] Checking for system updates...
[2026-10-28 18:20:31,830.830 INFO    ] 200
[2026-10-28 18:20:31,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:20:31,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:20:31,892.892 INFO    ] No update needed
[2026-10-28 18:20:31,895.895 INFO    ] Checking for camera pi updates...
[2026-10-28 18:20:31,928.928 INFO    ] 200
[2026-10-28 18:20:31,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:20:31,975.975 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:20:32,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:20:32,092.092 INFO    ] No camera update needed
[2026-10-28 18:20:32,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:20:32,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:20:32,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:20:32,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:20:34,154.154 INFO    ] ================================================
[2026-10-28 18:20:34,169.169 INFO    ] Launching Daemon at Wed Oct 28 18:20:34 IST 2026
[2026-10-28 18:20:34,179.179 INFO    ] ================================================
[2026-10-28 18:20:34,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:20:34
[2026-10-28 18:20:35,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:20:35,636.636 INFO    ] Initializing speech engine...
[2026-10-28 18:20:35,642.642 INFO    ] 2026-10-28 18:20:35
[2026-10-28 18:20:35,903.903 INFO    ] 2026-10-28 18:20:35
[2026-10-28 18:20:35,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:20:36,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:20:36,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:20:36,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:20:36,451.451 INFO    ] time= 28/10/2026 18:20:36
[2026-10-28 18:20:36,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:20:36,497.497 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:20:36,627.627 INFO    ] No existing commands found in stream
[2026-10-28 18:20:41,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:20:41,658.658 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-28 18:20:44,848.848 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:20:44,851.851 INFO    ] Checking for system updates...
[2026-10-28 18:20:44,886.886 INFO    ] 200
[2026-10-28 18:20:44,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:20:44,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:20:44,949.949 INFO    ] No update needed
[2026-10-28 18:20:44,951.951 INFO    ] Checking for camera pi updates...
[2026-10-28 18:20:44,988.988 INFO    ] 200
[2026-10-28 18:20:44,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:20:45,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:20:45,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:20:45,119.119 INFO    ] No camera update needed
[2026-10-28 18:20:45,122.122 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:20:45,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:20:45,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:20:45,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:20:47,175.175 INFO    ] ================================================
[2026-10-28 18:20:47,190.190 INFO    ] Launching Daemon at Wed Oct 28 18:20:47 IST 2026
[2026-10-28 18:20:47,201.201 INFO    ] ================================================
[2026-10-28 18:20:47,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:20:47
[2026-10-28 18:20:48,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:20:48,794.794 INFO    ] Initializing speech engine...
[2026-10-28 18:20:48,808.808 INFO    ] 2026-10-28 18:20:48
[2026-10-28 18:20:49,090.090 INFO    ] 2026-10-28 18:20:49
[2026-10-28 18:20:49,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:20:49,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:20:49,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:20:49,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:20:49,660.660 INFO    ] time= 28/10/2026 18:20:49
[2026-10-28 18:20:49,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:20:49,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:20:49,828.828 INFO    ] No existing commands found in stream
[2026-10-28 18:20:54,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:20:54,862.862 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-10-28 18:20:56,521.521 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:20:56,524.524 INFO    ] Checking for system updates...
[2026-10-28 18:20:56,560.560 INFO    ] 200
[2026-10-28 18:20:56,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:20:56,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:20:56,624.624 INFO    ] No update needed
[2026-10-28 18:20:56,627.627 INFO    ] Checking for camera pi updates...
[2026-10-28 18:20:56,662.662 INFO    ] 200
[2026-10-28 18:20:56,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:20:56,707.707 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:20:56,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:20:56,793.793 INFO    ] No camera update needed
[2026-10-28 18:20:56,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:20:56,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:20:56,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:20:56,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:20:58,852.852 INFO    ] ================================================
[2026-10-28 18:20:58,867.867 INFO    ] Launching Daemon at Wed Oct 28 18:20:58 IST 2026
[2026-10-28 18:20:58,878.878 INFO    ] ================================================
[2026-10-28 18:20:59,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:20:59
[2026-10-28 18:21:00,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:21:00,473.473 INFO    ] Initializing speech engine...
[2026-10-28 18:21:00,482.482 INFO    ] 2026-10-28 18:21:00
[2026-10-28 18:21:00,760.760 INFO    ] 2026-10-28 18:21:00
[2026-10-28 18:21:00,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:21:01,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:21:01,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:21:01,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:21:01,337.337 INFO    ] time= 28/10/2026 18:21:01
[2026-10-28 18:21:01,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:21:01,388.388 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:21:01,520.520 INFO    ] No existing commands found in stream
[2026-10-28 18:21:06,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:21:06,534.534 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-28 18:21:08,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:21:08,706.706 INFO    ] Checking for system updates...
[2026-10-28 18:21:08,744.744 INFO    ] 200
[2026-10-28 18:21:08,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:21:08,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:21:08,801.801 INFO    ] No update needed
[2026-10-28 18:21:08,803.803 INFO    ] Checking for camera pi updates...
[2026-10-28 18:21:08,837.837 INFO    ] 200
[2026-10-28 18:21:08,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:21:08,885.885 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:21:08,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:21:08,974.974 INFO    ] No camera update needed
[2026-10-28 18:21:08,976.976 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:21:08,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:21:08,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:21:08,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:21:11,028.028 INFO    ] ================================================
[2026-10-28 18:21:11,043.043 INFO    ] Launching Daemon at Wed Oct 28 18:21:11 IST 2026
[2026-10-28 18:21:11,054.054 INFO    ] ================================================
[2026-10-28 18:21:11,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:21:11
[2026-10-28 18:21:12,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:21:12,656.656 INFO    ] Initializing speech engine...
[2026-10-28 18:21:12,667.667 INFO    ] 2026-10-28 18:21:12
[2026-10-28 18:21:12,937.937 INFO    ] 2026-10-28 18:21:12
[2026-10-28 18:21:12,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:21:13,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:21:13,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:21:13,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:21:13,689.689 INFO    ] time= 28/10/2026 18:21:13
[2026-10-28 18:21:13,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:21:13,778.778 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:21:13,948.948 INFO    ] No existing commands found in stream
[2026-10-28 18:21:18,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:21:18,967.967 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-28 18:21:23,226.226 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:21:23,229.229 INFO    ] Checking for system updates...
[2026-10-28 18:21:23,269.269 INFO    ] 200
[2026-10-28 18:21:23,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:21:23,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:21:23,341.341 INFO    ] No update needed
[2026-10-28 18:21:23,343.343 INFO    ] Checking for camera pi updates...
[2026-10-28 18:21:23,378.378 INFO    ] 200
[2026-10-28 18:21:23,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:21:23,422.422 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:21:23,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:21:23,524.524 INFO    ] No camera update needed
[2026-10-28 18:21:23,526.526 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:21:23,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:21:23,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:21:23,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:21:25,581.581 INFO    ] ================================================
[2026-10-28 18:21:25,596.596 INFO    ] Launching Daemon at Wed Oct 28 18:21:25 IST 2026
[2026-10-28 18:21:25,606.606 INFO    ] ================================================
[2026-10-28 18:21:26,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:21:26
[2026-10-28 18:21:26,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:21:27,224.224 INFO    ] Initializing speech engine...
[2026-10-28 18:21:27,233.233 INFO    ] 2026-10-28 18:21:27
[2026-10-28 18:21:27,508.508 INFO    ] 2026-10-28 18:21:27
[2026-10-28 18:21:27,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:21:27,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:21:27,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:21:28,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:21:28,312.312 INFO    ] time= 28/10/2026 18:21:28
[2026-10-28 18:21:28,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:21:28,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:21:28,646.646 INFO    ] No existing commands found in stream
[2026-10-28 18:21:33,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:21:33,664.664 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-28 18:21:34,755.755 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:21:34,758.758 INFO    ] Checking for system updates...
[2026-10-28 18:21:34,798.798 INFO    ] 200
[2026-10-28 18:21:34,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:21:34,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:21:34,865.865 INFO    ] No update needed
[2026-10-28 18:21:34,868.868 INFO    ] Checking for camera pi updates...
[2026-10-28 18:21:34,907.907 INFO    ] 200
[2026-10-28 18:21:34,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:21:34,951.951 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:21:35,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:21:35,035.035 INFO    ] No camera update needed
[2026-10-28 18:21:35,037.037 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:21:35,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:21:35,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:21:35,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:21:37,092.092 INFO    ] ================================================
[2026-10-28 18:21:37,108.108 INFO    ] Launching Daemon at Wed Oct 28 18:21:37 IST 2026
[2026-10-28 18:21:37,119.119 INFO    ] ================================================
[2026-10-28 18:21:37,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:21:37
[2026-10-28 18:21:38,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:21:38,719.719 INFO    ] Initializing speech engine...
[2026-10-28 18:21:38,727.727 INFO    ] 2026-10-28 18:21:38
[2026-10-28 18:21:39,041.041 INFO    ] 2026-10-28 18:21:39
[2026-10-28 18:21:39,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:21:39,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:21:39,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:21:39,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:21:39,785.785 INFO    ] time= 28/10/2026 18:21:39
[2026-10-28 18:21:39,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:21:39,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:21:40,109.109 INFO    ] No existing commands found in stream
[2026-10-28 18:21:45,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:21:45,125.125 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-28 18:21:45,881.881 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:21:45,885.885 INFO    ] Checking for system updates...
[2026-10-28 18:21:45,921.921 INFO    ] 200
[2026-10-28 18:21:45,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:21:45,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:21:45,988.988 INFO    ] No update needed
[2026-10-28 18:21:45,991.991 INFO    ] Checking for camera pi updates...
[2026-10-28 18:21:46,029.029 INFO    ] 200
[2026-10-28 18:21:46,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:21:46,083.083 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:21:46,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:21:46,178.178 INFO    ] No camera update needed
[2026-10-28 18:21:46,181.181 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:21:46,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:21:46,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:21:46,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:21:48,237.237 INFO    ] ================================================
[2026-10-28 18:21:48,252.252 INFO    ] Launching Daemon at Wed Oct 28 18:21:48 IST 2026
[2026-10-28 18:21:48,263.263 INFO    ] ================================================
[2026-10-28 18:21:48,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:21:48
[2026-10-28 18:21:49,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:21:49,925.925 INFO    ] Initializing speech engine...
[2026-10-28 18:21:49,937.937 INFO    ] 2026-10-28 18:21:49
[2026-10-28 18:21:50,251.251 INFO    ] 2026-10-28 18:21:50
[2026-10-28 18:21:50,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:21:50,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:21:50,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:21:51,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:21:51,086.086 INFO    ] time= 28/10/2026 18:21:51
[2026-10-28 18:21:51,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:21:51,182.182 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:21:51,361.361 INFO    ] No existing commands found in stream
[2026-10-28 18:21:56,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:21:56,376.376 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-28 18:21:58,228.228 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:21:58,231.231 INFO    ] Checking for system updates...
[2026-10-28 18:21:58,268.268 INFO    ] 200
[2026-10-28 18:21:58,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:21:58,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:21:58,335.335 INFO    ] No update needed
[2026-10-28 18:21:58,338.338 INFO    ] Checking for camera pi updates...
[2026-10-28 18:21:58,378.378 INFO    ] 200
[2026-10-28 18:21:58,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:21:58,422.422 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:21:58,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:21:58,513.513 INFO    ] No camera update needed
[2026-10-28 18:21:58,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:21:58,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:21:58,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:21:58,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:22:00,574.574 INFO    ] ================================================
[2026-10-28 18:22:00,590.590 INFO    ] Launching Daemon at Wed Oct 28 18:22:00 IST 2026
[2026-10-28 18:22:00,601.601 INFO    ] ================================================
[2026-10-28 18:22:01,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:22:01
[2026-10-28 18:22:01,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:22:02,216.216 INFO    ] Initializing speech engine...
[2026-10-28 18:22:02,227.227 INFO    ] 2026-10-28 18:22:02
[2026-10-28 18:22:02,522.522 INFO    ] 2026-10-28 18:22:02
[2026-10-28 18:22:02,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:22:02,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:22:02,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:22:03,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:22:03,158.158 INFO    ] time= 28/10/2026 18:22:03
[2026-10-28 18:22:03,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:22:03,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:22:03,361.361 INFO    ] No existing commands found in stream
[2026-10-28 18:22:08,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:22:08,391.391 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 18:22:11,944.944 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:22:11,947.947 INFO    ] Checking for system updates...
[2026-10-28 18:22:11,994.994 INFO    ] 200
[2026-10-28 18:22:11,996.996 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 18:22:11,999.999 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-28 18:22:12,002.002 INFO    ] Checking for camera pi updates...
[2026-10-28 18:22:12,043.043 INFO    ] 200
[2026-10-28 18:22:12,046.046 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 18:22:12,056.056 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-28 18:22:12,058.058 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:22:12,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:22:12,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:22:12,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:22:14,112.112 INFO    ] ================================================
[2026-10-28 18:22:14,128.128 INFO    ] Launching Daemon at Wed Oct 28 18:22:14 IST 2026
[2026-10-28 18:22:14,139.139 INFO    ] ================================================
[2026-10-28 18:22:14,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:22:14
[2026-10-28 18:22:15,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:22:15,651.651 INFO    ] Initializing speech engine...
[2026-10-28 18:22:15,658.658 INFO    ] 2026-10-28 18:22:15
[2026-10-28 18:22:15,935.935 INFO    ] 2026-10-28 18:22:15
[2026-10-28 18:22:15,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:22:16,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:22:16,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:22:16,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:22:16,756.756 INFO    ] time= 28/10/2026 18:22:16
[2026-10-28 18:22:16,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:22:16,885.885 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:22:17,078.078 INFO    ] No existing commands found in stream
[2026-10-28 18:22:22,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:22:22,095.095 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 18:22:25,988.988 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:22:25,992.992 INFO    ] Checking for system updates...
[2026-10-28 18:22:26,029.029 INFO    ] 200
[2026-10-28 18:22:26,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:22:26,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:22:26,098.098 INFO    ] No update needed
[2026-10-28 18:22:26,101.101 INFO    ] Checking for camera pi updates...
[2026-10-28 18:22:26,140.140 INFO    ] 200
[2026-10-28 18:22:26,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:22:26,190.190 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:22:26,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:22:26,278.278 INFO    ] No camera update needed
[2026-10-28 18:22:26,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:22:26,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:22:26,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:22:26,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:22:28,338.338 INFO    ] ================================================
[2026-10-28 18:22:28,354.354 INFO    ] Launching Daemon at Wed Oct 28 18:22:28 IST 2026
[2026-10-28 18:22:28,364.364 INFO    ] ================================================
[2026-10-28 18:22:28,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:22:28
[2026-10-28 18:22:29,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:22:29,799.799 INFO    ] Initializing speech engine...
[2026-10-28 18:22:29,808.808 INFO    ] 2026-10-28 18:22:29
[2026-10-28 18:22:30,060.060 INFO    ] 2026-10-28 18:22:30
[2026-10-28 18:22:30,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:22:30,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:22:30,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:22:30,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:22:30,653.653 INFO    ] time= 28/10/2026 18:22:30
[2026-10-28 18:22:30,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:22:30,716.716 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:22:30,862.862 INFO    ] No existing commands found in stream
[2026-10-28 18:22:35,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:22:35,890.890 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-28 18:22:37,526.526 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:22:37,528.528 INFO    ] Checking for system updates...
[2026-10-28 18:22:37,569.569 INFO    ] 200
[2026-10-28 18:22:37,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:22:37,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:22:37,628.628 INFO    ] No update needed
[2026-10-28 18:22:37,630.630 INFO    ] Checking for camera pi updates...
[2026-10-28 18:22:37,664.664 INFO    ] 200
[2026-10-28 18:22:37,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:22:37,707.707 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:22:37,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:22:37,801.801 INFO    ] No camera update needed
[2026-10-28 18:22:37,804.804 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:22:37,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:22:37,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:22:37,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:22:39,856.856 INFO    ] ================================================
[2026-10-28 18:22:39,871.871 INFO    ] Launching Daemon at Wed Oct 28 18:22:39 IST 2026
[2026-10-28 18:22:39,882.882 INFO    ] ================================================
[2026-10-28 18:22:40,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:22:40
[2026-10-28 18:22:41,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:22:41,312.312 INFO    ] Initializing speech engine...
[2026-10-28 18:22:41,321.321 INFO    ] 2026-10-28 18:22:41
[2026-10-28 18:22:41,569.569 INFO    ] 2026-10-28 18:22:41
[2026-10-28 18:22:41,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:22:41,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:22:41,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:22:42,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:22:42,168.168 INFO    ] time= 28/10/2026 18:22:42
[2026-10-28 18:22:42,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:22:42,183.183 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:22:42,334.334 INFO    ] No existing commands found in stream
[2026-10-28 18:22:47,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:22:47,367.367 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 18:22:51,666.666 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:22:51,668.668 INFO    ] Checking for system updates...
[2026-10-28 18:22:51,705.705 INFO    ] 200
[2026-10-28 18:22:51,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:22:51,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:22:51,766.766 INFO    ] No update needed
[2026-10-28 18:22:51,768.768 INFO    ] Checking for camera pi updates...
[2026-10-28 18:22:51,803.803 INFO    ] 200
[2026-10-28 18:22:51,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:22:51,849.849 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:22:51,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:22:51,955.955 INFO    ] No camera update needed
[2026-10-28 18:22:51,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:22:51,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:22:51,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:22:51,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:22:54,013.013 INFO    ] ================================================
[2026-10-28 18:22:54,028.028 INFO    ] Launching Daemon at Wed Oct 28 18:22:54 IST 2026
[2026-10-28 18:22:54,039.039 INFO    ] ================================================
[2026-10-28 18:22:54,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:22:54
[2026-10-28 18:22:55,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:22:55,461.461 INFO    ] Initializing speech engine...
[2026-10-28 18:22:55,467.467 INFO    ] 2026-10-28 18:22:55
[2026-10-28 18:22:55,744.744 INFO    ] 2026-10-28 18:22:55
[2026-10-28 18:22:55,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:22:56,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:22:56,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:22:56,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:22:56,332.332 INFO    ] time= 28/10/2026 18:22:56
[2026-10-28 18:22:56,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:22:56,350.350 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:22:56,498.498 INFO    ] No existing commands found in stream
[2026-10-28 18:23:01,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:23:01,531.531 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 18:23:08,124.124 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:23:08,127.127 INFO    ] Checking for system updates...
[2026-10-28 18:23:08,162.162 INFO    ] 200
[2026-10-28 18:23:08,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:23:08,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:23:08,226.226 INFO    ] No update needed
[2026-10-28 18:23:08,229.229 INFO    ] Checking for camera pi updates...
[2026-10-28 18:23:08,262.262 INFO    ] 200
[2026-10-28 18:23:08,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:23:08,306.306 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:23:08,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:23:08,485.485 INFO    ] No camera update needed
[2026-10-28 18:23:08,487.487 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:23:08,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:23:08,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:23:08,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:23:10,541.541 INFO    ] ================================================
[2026-10-28 18:23:10,557.557 INFO    ] Launching Daemon at Wed Oct 28 18:23:10 IST 2026
[2026-10-28 18:23:10,567.567 INFO    ] ================================================
[2026-10-28 18:23:11,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:23:11
[2026-10-28 18:23:11,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:23:12,202.202 INFO    ] Initializing speech engine...
[2026-10-28 18:23:12,207.207 INFO    ] 2026-10-28 18:23:12
[2026-10-28 18:23:12,498.498 INFO    ] 2026-10-28 18:23:12
[2026-10-28 18:23:12,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:23:12,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:23:12,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:23:13,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:23:13,296.296 INFO    ] time= 28/10/2026 18:23:13
[2026-10-28 18:23:13,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:23:13,416.416 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:23:13,616.616 INFO    ] No existing commands found in stream
[2026-10-28 18:23:18,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:23:18,646.646 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-28 18:23:23,370.370 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:23:23,374.374 INFO    ] Checking for system updates...
[2026-10-28 18:23:23,411.411 INFO    ] 200
[2026-10-28 18:23:23,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:23:23,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:23:23,470.470 INFO    ] No update needed
[2026-10-28 18:23:23,473.473 INFO    ] Checking for camera pi updates...
[2026-10-28 18:23:23,508.508 INFO    ] 200
[2026-10-28 18:23:23,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:23:23,557.557 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:23:23,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:23:23,653.653 INFO    ] No camera update needed
[2026-10-28 18:23:23,656.656 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:23:23,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:23:23,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:23:23,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:23:25,711.711 INFO    ] ================================================
[2026-10-28 18:23:25,727.727 INFO    ] Launching Daemon at Wed Oct 28 18:23:25 IST 2026
[2026-10-28 18:23:25,737.737 INFO    ] ================================================
[2026-10-28 18:23:26,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:23:26
[2026-10-28 18:23:27,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:23:27,374.374 INFO    ] Initializing speech engine...
[2026-10-28 18:23:27,386.386 INFO    ] 2026-10-28 18:23:27
[2026-10-28 18:23:27,691.691 INFO    ] 2026-10-28 18:23:27
[2026-10-28 18:23:27,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:23:28,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:23:28,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:23:28,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:23:28,516.516 INFO    ] time= 28/10/2026 18:23:28
[2026-10-28 18:23:28,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:23:28,628.628 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:23:28,770.770 INFO    ] No existing commands found in stream
[2026-10-28 18:23:33,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:23:33,787.787 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-28 18:23:35,310.310 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:23:35,313.313 INFO    ] Checking for system updates...
[2026-10-28 18:23:35,350.350 INFO    ] 200
[2026-10-28 18:23:35,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:23:35,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:23:35,410.410 INFO    ] No update needed
[2026-10-28 18:23:35,413.413 INFO    ] Checking for camera pi updates...
[2026-10-28 18:23:35,448.448 INFO    ] 200
[2026-10-28 18:23:35,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:23:35,497.497 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:23:35,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:23:35,611.611 INFO    ] No camera update needed
[2026-10-28 18:23:35,614.614 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:23:35,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:23:35,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:23:35,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:23:37,671.671 INFO    ] ================================================
[2026-10-28 18:23:37,687.687 INFO    ] Launching Daemon at Wed Oct 28 18:23:37 IST 2026
[2026-10-28 18:23:37,698.698 INFO    ] ================================================
[2026-10-28 18:23:38,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:23:38
[2026-10-28 18:23:38,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:23:39,135.135 INFO    ] Initializing speech engine...
[2026-10-28 18:23:39,144.144 INFO    ] 2026-10-28 18:23:39
[2026-10-28 18:23:39,396.396 INFO    ] 2026-10-28 18:23:39
[2026-10-28 18:23:39,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:23:39,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:23:39,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:23:39,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:23:39,965.965 INFO    ] time= 28/10/2026 18:23:39
[2026-10-28 18:23:39,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:23:40,011.011 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:23:40,163.163 INFO    ] No existing commands found in stream
[2026-10-28 18:23:45,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:23:45,196.196 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-28 18:23:49,653.653 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:23:49,656.656 INFO    ] Checking for system updates...
[2026-10-28 18:23:49,695.695 INFO    ] 200
[2026-10-28 18:23:49,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:23:49,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:23:49,753.753 INFO    ] No update needed
[2026-10-28 18:23:49,756.756 INFO    ] Checking for camera pi updates...
[2026-10-28 18:23:49,790.790 INFO    ] 200
[2026-10-28 18:23:49,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:23:49,837.837 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:23:49,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:23:49,962.962 INFO    ] No camera update needed
[2026-10-28 18:23:49,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:23:49,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:23:49,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:23:49,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:23:52,018.018 INFO    ] ================================================
[2026-10-28 18:23:52,034.034 INFO    ] Launching Daemon at Wed Oct 28 18:23:52 IST 2026
[2026-10-28 18:23:52,045.045 INFO    ] ================================================
[2026-10-28 18:23:52,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:23:52
[2026-10-28 18:23:53,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:23:53,669.669 INFO    ] Initializing speech engine...
[2026-10-28 18:23:53,681.681 INFO    ] 2026-10-28 18:23:53
[2026-10-28 18:23:53,963.963 INFO    ] 2026-10-28 18:23:53
[2026-10-28 18:23:54,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:23:54,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:23:54,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:23:54,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:23:54,731.731 INFO    ] time= 28/10/2026 18:23:54
[2026-10-28 18:23:54,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:23:54,821.821 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:23:54,979.979 INFO    ] No existing commands found in stream
[2026-10-28 18:23:59,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:23:59,993.993 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-28 18:24:04,234.234 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:24:04,237.237 INFO    ] Checking for system updates...
[2026-10-28 18:24:04,275.275 INFO    ] 200
[2026-10-28 18:24:04,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:24:04,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:24:04,334.334 INFO    ] No update needed
[2026-10-28 18:24:04,337.337 INFO    ] Checking for camera pi updates...
[2026-10-28 18:24:04,372.372 INFO    ] 200
[2026-10-28 18:24:04,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:24:04,416.416 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:24:04,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:24:04,511.511 INFO    ] No camera update needed
[2026-10-28 18:24:04,514.514 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:24:04,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:24:04,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:24:04,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:24:06,572.572 INFO    ] ================================================
[2026-10-28 18:24:06,586.586 INFO    ] Launching Daemon at Wed Oct 28 18:24:06 IST 2026
[2026-10-28 18:24:06,597.597 INFO    ] ================================================
[2026-10-28 18:24:07,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:24:07
[2026-10-28 18:24:07,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:24:08,002.002 INFO    ] Initializing speech engine...
[2026-10-28 18:24:08,011.011 INFO    ] 2026-10-28 18:24:08
[2026-10-28 18:24:08,312.312 INFO    ] 2026-10-28 18:24:08
[2026-10-28 18:24:08,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:24:08,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:24:08,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:24:08,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:24:08,811.811 INFO    ] time= 28/10/2026 18:24:08
[2026-10-28 18:24:08,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:24:08,897.897 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:24:09,018.018 INFO    ] No existing commands found in stream
[2026-10-28 18:24:14,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:24:14,033.033 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-28 18:24:16,675.675 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:24:16,678.678 INFO    ] Checking for system updates...
[2026-10-28 18:24:16,713.713 INFO    ] 200
[2026-10-28 18:24:16,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:24:16,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:24:16,770.770 INFO    ] No update needed
[2026-10-28 18:24:16,772.772 INFO    ] Checking for camera pi updates...
[2026-10-28 18:24:16,809.809 INFO    ] 200
[2026-10-28 18:24:16,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:24:16,853.853 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:24:16,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:24:16,945.945 INFO    ] No camera update needed
[2026-10-28 18:24:16,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:24:16,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:24:16,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:24:16,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:24:19,001.001 INFO    ] ================================================
[2026-10-28 18:24:19,017.017 INFO    ] Launching Daemon at Wed Oct 28 18:24:19 IST 2026
[2026-10-28 18:24:19,028.028 INFO    ] ================================================
[2026-10-28 18:24:19,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:24:19
[2026-10-28 18:24:20,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:24:20,533.533 INFO    ] Initializing speech engine...
[2026-10-28 18:24:20,556.556 INFO    ] 2026-10-28 18:24:20
[2026-10-28 18:24:20,813.813 INFO    ] 2026-10-28 18:24:20
[2026-10-28 18:24:20,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:24:21,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:24:21,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:24:21,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:24:21,390.390 INFO    ] time= 28/10/2026 18:24:21
[2026-10-28 18:24:21,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:24:21,412.412 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:24:21,548.548 INFO    ] No existing commands found in stream
[2026-10-28 18:24:26,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:24:26,575.575 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-28 18:24:29,788.788 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:24:29,791.791 INFO    ] Checking for system updates...
[2026-10-28 18:24:29,833.833 INFO    ] 200
[2026-10-28 18:24:29,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:24:29,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:24:29,891.891 INFO    ] No update needed
[2026-10-28 18:24:29,894.894 INFO    ] Checking for camera pi updates...
[2026-10-28 18:24:29,929.929 INFO    ] 200
[2026-10-28 18:24:29,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:24:29,975.975 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:24:30,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:24:30,058.058 INFO    ] No camera update needed
[2026-10-28 18:24:30,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:24:30,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:24:30,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:24:30,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:24:32,123.123 INFO    ] ================================================
[2026-10-28 18:24:32,146.146 INFO    ] Launching Daemon at Wed Oct 28 18:24:32 IST 2026
[2026-10-28 18:24:32,158.158 INFO    ] ================================================
[2026-10-28 18:24:32,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:24:32
[2026-10-28 18:24:33,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:24:33,816.816 INFO    ] Initializing speech engine...
[2026-10-28 18:24:33,825.825 INFO    ] 2026-10-28 18:24:33
[2026-10-28 18:24:34,107.107 INFO    ] 2026-10-28 18:24:34
[2026-10-28 18:24:34,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:24:37,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:24:37,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:24:37,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:24:37,675.675 INFO    ] time= 28/10/2026 18:24:37
[2026-10-28 18:24:37,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:24:37,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:24:37,750.750 INFO    ] No existing commands found in stream
[2026-10-28 18:24:42,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:24:42,762.762 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-10-28 18:24:45,787.787 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:24:45,790.790 INFO    ] Checking for system updates...
[2026-10-28 18:24:45,828.828 INFO    ] 200
[2026-10-28 18:24:45,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:24:45,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:24:45,890.890 INFO    ] No update needed
[2026-10-28 18:24:45,892.892 INFO    ] Checking for camera pi updates...
[2026-10-28 18:24:45,929.929 INFO    ] 200
[2026-10-28 18:24:45,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:24:45,972.972 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:24:46,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:24:46,062.062 INFO    ] No camera update needed
[2026-10-28 18:24:46,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:24:46,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:24:46,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:24:46,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:24:48,117.117 INFO    ] ================================================
[2026-10-28 18:24:48,133.133 INFO    ] Launching Daemon at Wed Oct 28 18:24:48 IST 2026
[2026-10-28 18:24:48,145.145 INFO    ] ================================================
[2026-10-28 18:24:48,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:24:48
[2026-10-28 18:24:49,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:24:49,585.585 INFO    ] Initializing speech engine...
[2026-10-28 18:24:49,600.600 INFO    ] 2026-10-28 18:24:49
[2026-10-28 18:24:49,864.864 INFO    ] 2026-10-28 18:24:49
[2026-10-28 18:24:49,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:24:50,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:24:50,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:24:50,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:24:50,419.419 INFO    ] time= 28/10/2026 18:24:50
[2026-10-28 18:24:50,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:24:50,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:24:50,591.591 INFO    ] No existing commands found in stream
[2026-10-28 18:24:55,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:24:55,619.619 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 18:24:59,288.288 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:24:59,290.290 INFO    ] Checking for system updates...
[2026-10-28 18:24:59,327.327 INFO    ] 200
[2026-10-28 18:24:59,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:24:59,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:24:59,386.386 INFO    ] No update needed
[2026-10-28 18:24:59,389.389 INFO    ] Checking for camera pi updates...
[2026-10-28 18:24:59,425.425 INFO    ] 200
[2026-10-28 18:24:59,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:24:59,474.474 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:24:59,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:24:59,562.562 INFO    ] No camera update needed
[2026-10-28 18:24:59,565.565 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:24:59,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:24:59,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:24:59,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:25:01,637.637 INFO    ] ================================================
[2026-10-28 18:25:01,701.701 INFO    ] Launching Daemon at Wed Oct 28 18:25:01 IST 2026
[2026-10-28 18:25:01,729.729 INFO    ] ================================================
[2026-10-28 18:25:02,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:25:02
[2026-10-28 18:25:03,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:25:03,362.362 INFO    ] Initializing speech engine...
[2026-10-28 18:25:03,378.378 INFO    ] 2026-10-28 18:25:03
[2026-10-28 18:25:03,669.669 INFO    ] 2026-10-28 18:25:03
[2026-10-28 18:25:03,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:25:03,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:25:04,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:25:04,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:25:04,271.271 INFO    ] time= 28/10/2026 18:25:04
[2026-10-28 18:25:04,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:25:04,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:25:04,473.473 INFO    ] No existing commands found in stream
[2026-10-28 18:25:09,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:25:09,499.499 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-28 18:25:10,482.482 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:25:10,485.485 INFO    ] Checking for system updates...
[2026-10-28 18:25:10,521.521 INFO    ] 200
[2026-10-28 18:25:10,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:25:10,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:25:10,585.585 INFO    ] No update needed
[2026-10-28 18:25:10,588.588 INFO    ] Checking for camera pi updates...
[2026-10-28 18:25:10,622.622 INFO    ] 200
[2026-10-28 18:25:10,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:25:10,670.670 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:25:10,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:25:10,856.856 INFO    ] No camera update needed
[2026-10-28 18:25:10,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:25:10,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:25:10,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:25:10,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:25:12,912.912 INFO    ] ================================================
[2026-10-28 18:25:12,928.928 INFO    ] Launching Daemon at Wed Oct 28 18:25:12 IST 2026
[2026-10-28 18:25:12,938.938 INFO    ] ================================================
[2026-10-28 18:25:13,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:25:13
[2026-10-28 18:25:14,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:25:14,374.374 INFO    ] Initializing speech engine...
[2026-10-28 18:25:14,393.393 INFO    ] 2026-10-28 18:25:14
[2026-10-28 18:25:14,642.642 INFO    ] 2026-10-28 18:25:14
[2026-10-28 18:25:14,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:25:14,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:25:14,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:25:15,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:25:15,219.219 INFO    ] time= 28/10/2026 18:25:15
[2026-10-28 18:25:15,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:25:15,256.256 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:25:15,422.422 INFO    ] No existing commands found in stream
[2026-10-28 18:25:20,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:25:20,451.451 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-28 18:25:21,809.809 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:25:21,812.812 INFO    ] Checking for system updates...
[2026-10-28 18:25:21,849.849 INFO    ] 200
[2026-10-28 18:25:21,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:25:21,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:25:21,910.910 INFO    ] No update needed
[2026-10-28 18:25:21,912.912 INFO    ] Checking for camera pi updates...
[2026-10-28 18:25:21,945.945 INFO    ] 200
[2026-10-28 18:25:21,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:25:21,987.987 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:25:22,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:25:22,095.095 INFO    ] No camera update needed
[2026-10-28 18:25:22,097.097 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:25:22,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:25:22,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:25:22,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:25:24,152.152 INFO    ] ================================================
[2026-10-28 18:25:24,168.168 INFO    ] Launching Daemon at Wed Oct 28 18:25:24 IST 2026
[2026-10-28 18:25:24,179.179 INFO    ] ================================================
[2026-10-28 18:25:24,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:25:24
[2026-10-28 18:25:25,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:25:25,798.798 INFO    ] Initializing speech engine...
[2026-10-28 18:25:25,806.806 INFO    ] 2026-10-28 18:25:25
[2026-10-28 18:25:26,082.082 INFO    ] 2026-10-28 18:25:26
[2026-10-28 18:25:26,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:25:26,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:25:26,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:25:26,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:25:26,676.676 INFO    ] time= 28/10/2026 18:25:26
[2026-10-28 18:25:26,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:25:26,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:25:26,925.925 INFO    ] No existing commands found in stream
[2026-10-28 18:25:31,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:25:31,955.955 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-28 18:25:33,122.122 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:25:33,126.126 INFO    ] Checking for system updates...
[2026-10-28 18:25:33,162.162 INFO    ] 200
[2026-10-28 18:25:33,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:25:33,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:25:33,222.222 INFO    ] No update needed
[2026-10-28 18:25:33,225.225 INFO    ] Checking for camera pi updates...
[2026-10-28 18:25:33,260.260 INFO    ] 200
[2026-10-28 18:25:33,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:25:33,306.306 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:25:33,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:25:33,406.406 INFO    ] No camera update needed
[2026-10-28 18:25:33,408.408 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:25:33,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:25:33,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:25:33,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:25:35,464.464 INFO    ] ================================================
[2026-10-28 18:25:35,479.479 INFO    ] Launching Daemon at Wed Oct 28 18:25:35 IST 2026
[2026-10-28 18:25:35,490.490 INFO    ] ================================================
[2026-10-28 18:25:36,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:25:36
[2026-10-28 18:25:36,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:25:37,111.111 INFO    ] Initializing speech engine...
[2026-10-28 18:25:37,125.125 INFO    ] 2026-10-28 18:25:37
[2026-10-28 18:25:37,409.409 INFO    ] 2026-10-28 18:25:37
[2026-10-28 18:25:37,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:25:37,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:25:37,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:25:38,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:25:38,174.174 INFO    ] time= 28/10/2026 18:25:38
[2026-10-28 18:25:38,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:25:38,269.269 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:25:38,379.379 INFO    ] No existing commands found in stream
[2026-10-28 18:25:43,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:25:43,393.393 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 18:25:44,165.165 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:25:44,168.168 INFO    ] Checking for system updates...
[2026-10-28 18:25:44,204.204 INFO    ] 200
[2026-10-28 18:25:44,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:25:44,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:25:44,262.262 INFO    ] No update needed
[2026-10-28 18:25:44,265.265 INFO    ] Checking for camera pi updates...
[2026-10-28 18:25:44,304.304 INFO    ] 200
[2026-10-28 18:25:44,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:25:44,351.351 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:25:44,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:25:44,432.432 INFO    ] No camera update needed
[2026-10-28 18:25:44,435.435 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:25:44,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:25:44,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:25:44,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:25:46,491.491 INFO    ] ================================================
[2026-10-28 18:25:46,505.505 INFO    ] Launching Daemon at Wed Oct 28 18:25:46 IST 2026
[2026-10-28 18:25:46,516.516 INFO    ] ================================================
[2026-10-28 18:25:47,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:25:47
[2026-10-28 18:25:47,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:25:48,175.175 INFO    ] Initializing speech engine...
[2026-10-28 18:25:48,183.183 INFO    ] 2026-10-28 18:25:48
[2026-10-28 18:25:48,466.466 INFO    ] 2026-10-28 18:25:48
[2026-10-28 18:25:48,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:25:48,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:25:48,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:25:49,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:25:49,175.175 INFO    ] time= 28/10/2026 18:25:49
[2026-10-28 18:25:49,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:25:49,278.278 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:25:49,425.425 INFO    ] No existing commands found in stream
[2026-10-28 18:25:54,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:25:54,446.446 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-28 18:25:56,027.027 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:25:56,029.029 INFO    ] Checking for system updates...
[2026-10-28 18:25:56,064.064 INFO    ] 200
[2026-10-28 18:25:56,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:25:56,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:25:56,121.121 INFO    ] No update needed
[2026-10-28 18:25:56,123.123 INFO    ] Checking for camera pi updates...
[2026-10-28 18:25:56,156.156 INFO    ] 200
[2026-10-28 18:25:56,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:25:56,199.199 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:25:56,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:25:56,286.286 INFO    ] No camera update needed
[2026-10-28 18:25:56,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:25:56,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:25:56,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:25:56,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:25:58,342.342 INFO    ] ================================================
[2026-10-28 18:25:58,360.360 INFO    ] Launching Daemon at Wed Oct 28 18:25:58 IST 2026
[2026-10-28 18:25:58,372.372 INFO    ] ================================================
[2026-10-28 18:25:58,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:25:58
[2026-10-28 18:25:59,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:25:59,864.864 INFO    ] Initializing speech engine...
[2026-10-28 18:25:59,877.877 INFO    ] 2026-10-28 18:25:59
[2026-10-28 18:26:00,164.164 INFO    ] 2026-10-28 18:26:00
[2026-10-28 18:26:00,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:26:00,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:26:00,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:26:00,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:26:00,809.809 INFO    ] time= 28/10/2026 18:26:00
[2026-10-28 18:26:00,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:26:00,836.836 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:26:00,987.987 INFO    ] No existing commands found in stream
[2026-10-28 18:26:06,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:26:06,007.007 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-28 18:26:10,520.520 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:26:10,523.523 INFO    ] Checking for system updates...
[2026-10-28 18:26:10,559.559 INFO    ] 200
[2026-10-28 18:26:10,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:26:10,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:26:10,617.617 INFO    ] No update needed
[2026-10-28 18:26:10,619.619 INFO    ] Checking for camera pi updates...
[2026-10-28 18:26:10,653.653 INFO    ] 200
[2026-10-28 18:26:10,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:26:10,695.695 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:26:10,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:26:10,779.779 INFO    ] No camera update needed
[2026-10-28 18:26:10,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:26:10,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:26:10,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:26:10,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:26:12,834.834 INFO    ] ================================================
[2026-10-28 18:26:12,849.849 INFO    ] Launching Daemon at Wed Oct 28 18:26:12 IST 2026
[2026-10-28 18:26:12,860.860 INFO    ] ================================================
[2026-10-28 18:26:13,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:26:13
[2026-10-28 18:26:14,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:26:14,306.306 INFO    ] Initializing speech engine...
[2026-10-28 18:26:14,322.322 INFO    ] 2026-10-28 18:26:14
[2026-10-28 18:26:14,609.609 INFO    ] 2026-10-28 18:26:14
[2026-10-28 18:26:14,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:26:14,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:26:14,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:26:15,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:26:15,244.244 INFO    ] time= 28/10/2026 18:26:15
[2026-10-28 18:26:15,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:26:15,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:26:15,412.412 INFO    ] No existing commands found in stream
[2026-10-28 18:26:20,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:26:20,431.431 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-28 18:26:23,508.508 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:26:23,511.511 INFO    ] Checking for system updates...
[2026-10-28 18:26:23,550.550 INFO    ] 200
[2026-10-28 18:26:23,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:26:23,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:26:23,615.615 INFO    ] No update needed
[2026-10-28 18:26:23,617.617 INFO    ] Checking for camera pi updates...
[2026-10-28 18:26:23,655.655 INFO    ] 200
[2026-10-28 18:26:23,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:26:23,702.702 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:26:23,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:26:23,778.778 INFO    ] No camera update needed
[2026-10-28 18:26:23,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:26:23,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:26:23,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:26:23,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:26:25,834.834 INFO    ] ================================================
[2026-10-28 18:26:25,850.850 INFO    ] Launching Daemon at Wed Oct 28 18:26:25 IST 2026
[2026-10-28 18:26:25,861.861 INFO    ] ================================================
[2026-10-28 18:26:26,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:26:26
[2026-10-28 18:26:27,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:26:27,261.261 INFO    ] Initializing speech engine...
[2026-10-28 18:26:27,269.269 INFO    ] 2026-10-28 18:26:27
[2026-10-28 18:26:27,543.543 INFO    ] 2026-10-28 18:26:27
[2026-10-28 18:26:27,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:26:27,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:26:27,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:26:28,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:26:28,122.122 INFO    ] time= 28/10/2026 18:26:28
[2026-10-28 18:26:28,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:26:28,158.158 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:26:28,292.292 INFO    ] No existing commands found in stream
[2026-10-28 18:26:33,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:26:33,320.320 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-28 18:26:37,148.148 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:26:37,151.151 INFO    ] Checking for system updates...
[2026-10-28 18:26:37,187.187 INFO    ] 200
[2026-10-28 18:26:37,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:26:37,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:26:37,245.245 INFO    ] No update needed
[2026-10-28 18:26:37,248.248 INFO    ] Checking for camera pi updates...
[2026-10-28 18:26:37,281.281 INFO    ] 200
[2026-10-28 18:26:37,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:26:37,323.323 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:26:37,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:26:37,410.410 INFO    ] No camera update needed
[2026-10-28 18:26:37,412.412 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:26:37,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:26:37,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:26:37,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:26:39,466.466 INFO    ] ================================================
[2026-10-28 18:26:39,481.481 INFO    ] Launching Daemon at Wed Oct 28 18:26:39 IST 2026
[2026-10-28 18:26:39,492.492 INFO    ] ================================================
[2026-10-28 18:26:40,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:26:40
[2026-10-28 18:26:40,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:26:41,130.130 INFO    ] Initializing speech engine...
[2026-10-28 18:26:41,142.142 INFO    ] 2026-10-28 18:26:41
[2026-10-28 18:26:41,457.457 INFO    ] 2026-10-28 18:26:41
[2026-10-28 18:26:41,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:26:41,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:26:41,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:26:42,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:26:42,265.265 INFO    ] time= 28/10/2026 18:26:42
[2026-10-28 18:26:42,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:26:42,361.361 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:26:42,529.529 INFO    ] No existing commands found in stream
[2026-10-28 18:26:47,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:26:47,545.545 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 18:26:50,366.366 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:26:50,369.369 INFO    ] Checking for system updates...
[2026-10-28 18:26:50,406.406 INFO    ] 200
[2026-10-28 18:26:50,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:26:50,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:26:50,470.470 INFO    ] No update needed
[2026-10-28 18:26:50,472.472 INFO    ] Checking for camera pi updates...
[2026-10-28 18:26:50,506.506 INFO    ] 200
[2026-10-28 18:26:50,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:26:50,554.554 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:26:50,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:26:50,657.657 INFO    ] No camera update needed
[2026-10-28 18:26:50,659.659 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:26:50,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:26:50,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:26:50,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:26:52,712.712 INFO    ] ================================================
[2026-10-28 18:26:52,728.728 INFO    ] Launching Daemon at Wed Oct 28 18:26:52 IST 2026
[2026-10-28 18:26:52,739.739 INFO    ] ================================================
[2026-10-28 18:26:53,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:26:53
[2026-10-28 18:26:53,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:26:54,158.158 INFO    ] Initializing speech engine...
[2026-10-28 18:26:54,167.167 INFO    ] 2026-10-28 18:26:54
[2026-10-28 18:26:54,418.418 INFO    ] 2026-10-28 18:26:54
[2026-10-28 18:26:54,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:26:54,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:26:54,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:26:55,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:26:55,035.035 INFO    ] time= 28/10/2026 18:26:55
[2026-10-28 18:26:55,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:26:55,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:26:55,240.240 INFO    ] No existing commands found in stream
[2026-10-28 18:27:00,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:27:00,254.254 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 18:27:02,679.679 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:27:02,682.682 INFO    ] Checking for system updates...
[2026-10-28 18:27:02,730.730 INFO    ] 200
[2026-10-28 18:27:02,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:27:02,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:27:02,817.817 INFO    ] No update needed
[2026-10-28 18:27:02,820.820 INFO    ] Checking for camera pi updates...
[2026-10-28 18:27:02,863.863 INFO    ] 200
[2026-10-28 18:27:02,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:27:02,915.915 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:27:03,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:27:03,021.021 INFO    ] No camera update needed
[2026-10-28 18:27:03,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:27:03,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:27:03,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:27:03,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:27:05,082.082 INFO    ] ================================================
[2026-10-28 18:27:05,098.098 INFO    ] Launching Daemon at Wed Oct 28 18:27:05 IST 2026
[2026-10-28 18:27:05,110.110 INFO    ] ================================================
[2026-10-28 18:27:05,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:27:05
[2026-10-28 18:27:06,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:27:06,528.528 INFO    ] Initializing speech engine...
[2026-10-28 18:27:06,537.537 INFO    ] 2026-10-28 18:27:06
[2026-10-28 18:27:06,785.785 INFO    ] 2026-10-28 18:27:06
[2026-10-28 18:27:06,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:27:07,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:27:07,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:27:07,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:27:07,402.402 INFO    ] time= 28/10/2026 18:27:07
[2026-10-28 18:27:07,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:27:07,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:27:07,656.656 INFO    ] No existing commands found in stream
[2026-10-28 18:27:12,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:27:12,690.690 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 18:27:15,842.842 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:27:15,845.845 INFO    ] Checking for system updates...
[2026-10-28 18:27:15,882.882 INFO    ] 200
[2026-10-28 18:27:15,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:27:15,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:27:15,949.949 INFO    ] No update needed
[2026-10-28 18:27:15,952.952 INFO    ] Checking for camera pi updates...
[2026-10-28 18:27:15,987.987 INFO    ] 200
[2026-10-28 18:27:15,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:27:16,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:27:16,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:27:16,210.210 INFO    ] No camera update needed
[2026-10-28 18:27:16,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:27:16,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:27:16,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:27:16,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:27:18,269.269 INFO    ] ================================================
[2026-10-28 18:27:18,284.284 INFO    ] Launching Daemon at Wed Oct 28 18:27:18 IST 2026
[2026-10-28 18:27:18,295.295 INFO    ] ================================================
[2026-10-28 18:27:18,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:27:18
[2026-10-28 18:27:19,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:27:19,802.802 INFO    ] Initializing speech engine...
[2026-10-28 18:27:19,809.809 INFO    ] 2026-10-28 18:27:19
[2026-10-28 18:27:20,107.107 INFO    ] 2026-10-28 18:27:20
[2026-10-28 18:27:20,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:27:20,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:27:20,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:27:20,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:27:20,750.750 INFO    ] time= 28/10/2026 18:27:20
[2026-10-28 18:27:20,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:27:20,772.772 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:27:20,897.897 INFO    ] No existing commands found in stream
[2026-10-28 18:27:25,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:27:25,930.930 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-28 18:27:28,768.768 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:27:28,771.771 INFO    ] Checking for system updates...
[2026-10-28 18:27:28,807.807 INFO    ] 200
[2026-10-28 18:27:28,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:27:28,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:27:28,865.865 INFO    ] No update needed
[2026-10-28 18:27:28,867.867 INFO    ] Checking for camera pi updates...
[2026-10-28 18:27:28,905.905 INFO    ] 200
[2026-10-28 18:27:28,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:27:28,954.954 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:27:29,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:27:29,039.039 INFO    ] No camera update needed
[2026-10-28 18:27:29,041.041 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:27:29,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:27:29,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:27:29,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:27:31,095.095 INFO    ] ================================================
[2026-10-28 18:27:31,110.110 INFO    ] Launching Daemon at Wed Oct 28 18:27:31 IST 2026
[2026-10-28 18:27:31,121.121 INFO    ] ================================================
[2026-10-28 18:27:31,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:27:31
[2026-10-28 18:27:32,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:27:32,808.808 INFO    ] Initializing speech engine...
[2026-10-28 18:27:32,821.821 INFO    ] 2026-10-28 18:27:32
[2026-10-28 18:27:33,153.153 INFO    ] 2026-10-28 18:27:33
[2026-10-28 18:27:33,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:27:33,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:27:33,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:27:33,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:27:33,934.934 INFO    ] time= 28/10/2026 18:27:33
[2026-10-28 18:27:34,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:27:34,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:27:34,254.254 INFO    ] No existing commands found in stream
[2026-10-28 18:27:39,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:27:39,269.269 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-28 18:27:43,956.956 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:27:43,959.959 INFO    ] Checking for system updates...
[2026-10-28 18:27:43,996.996 INFO    ] 200
[2026-10-28 18:27:43,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:27:44,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:27:44,061.061 INFO    ] No update needed
[2026-10-28 18:27:44,063.063 INFO    ] Checking for camera pi updates...
[2026-10-28 18:27:44,110.110 INFO    ] 200
[2026-10-28 18:27:44,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:27:44,154.154 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:27:44,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:27:44,256.256 INFO    ] No camera update needed
[2026-10-28 18:27:44,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:27:44,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:27:44,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:27:44,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:27:46,310.310 INFO    ] ================================================
[2026-10-28 18:27:46,325.325 INFO    ] Launching Daemon at Wed Oct 28 18:27:46 IST 2026
[2026-10-28 18:27:46,336.336 INFO    ] ================================================
[2026-10-28 18:27:46,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:27:46
[2026-10-28 18:27:47,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:27:47,879.879 INFO    ] Initializing speech engine...
[2026-10-28 18:27:47,893.893 INFO    ] 2026-10-28 18:27:47
[2026-10-28 18:27:48,181.181 INFO    ] 2026-10-28 18:27:48
[2026-10-28 18:27:48,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:27:48,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:27:48,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:27:48,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:27:48,978.978 INFO    ] time= 28/10/2026 18:27:48
[2026-10-28 18:27:49,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:27:49,088.088 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:27:49,298.298 INFO    ] No existing commands found in stream
[2026-10-28 18:27:54,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:27:54,329.329 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-28 18:27:55,315.315 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:27:55,318.318 INFO    ] Checking for system updates...
[2026-10-28 18:27:55,355.355 INFO    ] 200
[2026-10-28 18:27:55,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:27:55,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:27:55,414.414 INFO    ] No update needed
[2026-10-28 18:27:55,417.417 INFO    ] Checking for camera pi updates...
[2026-10-28 18:27:55,450.450 INFO    ] 200
[2026-10-28 18:27:55,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:27:55,493.493 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:27:55,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:27:55,581.581 INFO    ] No camera update needed
[2026-10-28 18:27:55,584.584 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:27:55,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:27:55,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:27:55,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:27:57,636.636 INFO    ] ================================================
[2026-10-28 18:27:57,651.651 INFO    ] Launching Daemon at Wed Oct 28 18:27:57 IST 2026
[2026-10-28 18:27:57,662.662 INFO    ] ================================================
[2026-10-28 18:27:58,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:27:58
[2026-10-28 18:27:58,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:27:59,082.082 INFO    ] Initializing speech engine...
[2026-10-28 18:27:59,091.091 INFO    ] 2026-10-28 18:27:59
[2026-10-28 18:27:59,343.343 INFO    ] 2026-10-28 18:27:59
[2026-10-28 18:27:59,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:27:59,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:27:59,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:27:59,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:27:59,925.925 INFO    ] time= 28/10/2026 18:27:59
[2026-10-28 18:27:59,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:27:59,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:28:00,091.091 INFO    ] No existing commands found in stream
[2026-10-28 18:28:05,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:28:05,119.119 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-28 18:28:09,152.152 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:28:09,155.155 INFO    ] Checking for system updates...
[2026-10-28 18:28:09,220.220 INFO    ] 200
[2026-10-28 18:28:09,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:28:09,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:28:09,284.284 INFO    ] No update needed
[2026-10-28 18:28:09,286.286 INFO    ] Checking for camera pi updates...
[2026-10-28 18:28:09,322.322 INFO    ] 200
[2026-10-28 18:28:09,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:28:09,365.365 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:28:09,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:28:09,449.449 INFO    ] No camera update needed
[2026-10-28 18:28:09,452.452 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:28:09,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:28:09,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:28:09,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:28:11,505.505 INFO    ] ================================================
[2026-10-28 18:28:11,520.520 INFO    ] Launching Daemon at Wed Oct 28 18:28:11 IST 2026
[2026-10-28 18:28:11,531.531 INFO    ] ================================================
[2026-10-28 18:28:12,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:28:12
[2026-10-28 18:28:12,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:28:13,101.101 INFO    ] Initializing speech engine...
[2026-10-28 18:28:13,114.114 INFO    ] 2026-10-28 18:28:13
[2026-10-28 18:28:13,385.385 INFO    ] 2026-10-28 18:28:13
[2026-10-28 18:28:13,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:28:13,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:28:13,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:28:14,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:28:14,139.139 INFO    ] time= 28/10/2026 18:28:14
[2026-10-28 18:28:14,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:28:14,281.281 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:28:14,494.494 INFO    ] No existing commands found in stream
[2026-10-28 18:28:19,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:28:19,523.523 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 18:28:21,251.251 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:28:21,254.254 INFO    ] Checking for system updates...
[2026-10-28 18:28:21,294.294 INFO    ] 200
[2026-10-28 18:28:21,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:28:21,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:28:21,359.359 INFO    ] No update needed
[2026-10-28 18:28:21,362.362 INFO    ] Checking for camera pi updates...
[2026-10-28 18:28:21,396.396 INFO    ] 200
[2026-10-28 18:28:21,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:28:21,440.440 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:28:21,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:28:21,547.547 INFO    ] No camera update needed
[2026-10-28 18:28:21,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:28:21,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:28:21,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:28:21,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:28:23,604.604 INFO    ] ================================================
[2026-10-28 18:28:23,619.619 INFO    ] Launching Daemon at Wed Oct 28 18:28:23 IST 2026
[2026-10-28 18:28:23,629.629 INFO    ] ================================================
[2026-10-28 18:28:24,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:28:24
[2026-10-28 18:28:24,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:28:25,045.045 INFO    ] Initializing speech engine...
[2026-10-28 18:28:25,055.055 INFO    ] 2026-10-28 18:28:25
[2026-10-28 18:28:25,300.300 INFO    ] 2026-10-28 18:28:25
[2026-10-28 18:28:25,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:28:25,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:28:25,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:28:25,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:28:25,911.911 INFO    ] time= 28/10/2026 18:28:25
[2026-10-28 18:28:25,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:28:26,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:28:26,181.181 INFO    ] No existing commands found in stream
[2026-10-28 18:28:31,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:28:31,215.215 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 18:28:32,830.830 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:28:32,833.833 INFO    ] Checking for system updates...
[2026-10-28 18:28:32,872.872 INFO    ] 200
[2026-10-28 18:28:32,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:28:32,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:28:32,929.929 INFO    ] No update needed
[2026-10-28 18:28:32,931.931 INFO    ] Checking for camera pi updates...
[2026-10-28 18:28:32,964.964 INFO    ] 200
[2026-10-28 18:28:32,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:28:33,011.011 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:28:33,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:28:33,117.117 INFO    ] No camera update needed
[2026-10-28 18:28:33,120.120 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:28:33,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:28:33,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:28:33,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:28:35,172.172 INFO    ] ================================================
[2026-10-28 18:28:35,187.187 INFO    ] Launching Daemon at Wed Oct 28 18:28:35 IST 2026
[2026-10-28 18:28:35,198.198 INFO    ] ================================================
[2026-10-28 18:28:35,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:28:35
[2026-10-28 18:28:36,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:28:36,600.600 INFO    ] Initializing speech engine...
[2026-10-28 18:28:36,617.617 INFO    ] 2026-10-28 18:28:36
[2026-10-28 18:28:36,870.870 INFO    ] 2026-10-28 18:28:36
[2026-10-28 18:28:36,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:28:37,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:28:37,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:28:37,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:28:37,476.476 INFO    ] time= 28/10/2026 18:28:37
[2026-10-28 18:28:37,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:28:37,490.490 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:28:37,645.645 INFO    ] No existing commands found in stream
[2026-10-28 18:28:42,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:28:42,673.673 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 18:28:43,358.358 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:28:43,360.360 INFO    ] Checking for system updates...
[2026-10-28 18:28:43,400.400 INFO    ] 200
[2026-10-28 18:28:43,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:28:43,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:28:43,462.462 INFO    ] No update needed
[2026-10-28 18:28:43,465.465 INFO    ] Checking for camera pi updates...
[2026-10-28 18:28:43,502.502 INFO    ] 200
[2026-10-28 18:28:43,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:28:43,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:28:43,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:28:43,642.642 INFO    ] No camera update needed
[2026-10-28 18:28:43,645.645 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:28:43,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:28:43,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:28:43,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:28:45,700.700 INFO    ] ================================================
[2026-10-28 18:28:45,715.715 INFO    ] Launching Daemon at Wed Oct 28 18:28:45 IST 2026
[2026-10-28 18:28:45,725.725 INFO    ] ================================================
[2026-10-28 18:28:46,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:28:46
[2026-10-28 18:28:46,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:28:47,184.184 INFO    ] Initializing speech engine...
[2026-10-28 18:28:47,189.189 INFO    ] 2026-10-28 18:28:47
[2026-10-28 18:28:47,452.452 INFO    ] 2026-10-28 18:28:47
[2026-10-28 18:28:47,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:28:47,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:28:47,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:28:48,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:28:48,238.238 INFO    ] time= 28/10/2026 18:28:48
[2026-10-28 18:28:48,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:28:48,346.346 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:28:48,546.546 INFO    ] No existing commands found in stream
[2026-10-28 18:28:53,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:28:53,574.574 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 18:28:56,295.295 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:28:56,298.298 INFO    ] Checking for system updates...
[2026-10-28 18:28:56,337.337 INFO    ] 200
[2026-10-28 18:28:56,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:28:56,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:28:56,396.396 INFO    ] No update needed
[2026-10-28 18:28:56,398.398 INFO    ] Checking for camera pi updates...
[2026-10-28 18:28:56,431.431 INFO    ] 200
[2026-10-28 18:28:56,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:28:56,475.475 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:28:56,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:28:56,556.556 INFO    ] No camera update needed
[2026-10-28 18:28:56,559.559 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:28:56,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:28:56,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:28:56,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:28:58,612.612 INFO    ] ================================================
[2026-10-28 18:28:58,627.627 INFO    ] Launching Daemon at Wed Oct 28 18:28:58 IST 2026
[2026-10-28 18:28:58,637.637 INFO    ] ================================================
[2026-10-28 18:28:59,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:28:59
[2026-10-28 18:28:59,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:29:00,139.139 INFO    ] Initializing speech engine...
[2026-10-28 18:29:00,149.149 INFO    ] 2026-10-28 18:29:00
[2026-10-28 18:29:00,429.429 INFO    ] 2026-10-28 18:29:00
[2026-10-28 18:29:00,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:29:00,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:29:00,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:29:01,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:29:01,234.234 INFO    ] time= 28/10/2026 18:29:01
[2026-10-28 18:29:01,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:29:01,343.343 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:29:01,519.519 INFO    ] No existing commands found in stream
[2026-10-28 18:29:06,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:29:06,534.534 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 18:29:08,284.284 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:29:08,287.287 INFO    ] Checking for system updates...
[2026-10-28 18:29:08,328.328 INFO    ] 200
[2026-10-28 18:29:08,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:29:08,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:29:08,392.392 INFO    ] No update needed
[2026-10-28 18:29:08,395.395 INFO    ] Checking for camera pi updates...
[2026-10-28 18:29:08,433.433 INFO    ] 200
[2026-10-28 18:29:08,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:29:08,483.483 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:29:08,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:29:08,574.574 INFO    ] No camera update needed
[2026-10-28 18:29:08,576.576 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:29:08,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:29:08,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:29:08,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:29:10,633.633 INFO    ] ================================================
[2026-10-28 18:29:10,648.648 INFO    ] Launching Daemon at Wed Oct 28 18:29:10 IST 2026
[2026-10-28 18:29:10,658.658 INFO    ] ================================================
[2026-10-28 18:29:11,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:29:11
[2026-10-28 18:29:11,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:29:12,052.052 INFO    ] Initializing speech engine...
[2026-10-28 18:29:12,060.060 INFO    ] 2026-10-28 18:29:12
[2026-10-28 18:29:12,332.332 INFO    ] 2026-10-28 18:29:12
[2026-10-28 18:29:12,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:29:12,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:29:12,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:29:12,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:29:12,896.896 INFO    ] time= 28/10/2026 18:29:12
[2026-10-28 18:29:12,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:29:12,926.926 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:29:13,123.123 INFO    ] No existing commands found in stream
[2026-10-28 18:29:18,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:29:18,156.156 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 18:29:20,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:29:20,557.557 INFO    ] Checking for system updates...
[2026-10-28 18:29:20,592.592 INFO    ] 200
[2026-10-28 18:29:20,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:29:20,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:29:20,655.655 INFO    ] No update needed
[2026-10-28 18:29:20,657.657 INFO    ] Checking for camera pi updates...
[2026-10-28 18:29:20,690.690 INFO    ] 200
[2026-10-28 18:29:20,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:29:20,734.734 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:29:20,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:29:20,936.936 INFO    ] No camera update needed
[2026-10-28 18:29:20,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:29:20,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:29:20,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:29:20,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:29:22,994.994 INFO    ] ================================================
[2026-10-28 18:29:23,010.010 INFO    ] Launching Daemon at Wed Oct 28 18:29:23 IST 2026
[2026-10-28 18:29:23,021.021 INFO    ] ================================================
[2026-10-28 18:29:23,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:29:23
[2026-10-28 18:29:24,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:29:24,472.472 INFO    ] Initializing speech engine...
[2026-10-28 18:29:24,501.501 INFO    ] 2026-10-28 18:29:24
[2026-10-28 18:29:24,773.773 INFO    ] 2026-10-28 18:29:24
[2026-10-28 18:29:24,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:29:25,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:29:25,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:29:25,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:29:25,410.410 INFO    ] time= 28/10/2026 18:29:25
[2026-10-28 18:29:25,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:29:25,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:29:25,587.587 INFO    ] No existing commands found in stream
[2026-10-28 18:29:30,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:29:30,609.609 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-28 18:29:33,175.175 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:29:33,178.178 INFO    ] Checking for system updates...
[2026-10-28 18:29:33,213.213 INFO    ] 200
[2026-10-28 18:29:33,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:29:33,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:29:33,270.270 INFO    ] No update needed
[2026-10-28 18:29:33,272.272 INFO    ] Checking for camera pi updates...
[2026-10-28 18:29:33,310.310 INFO    ] 200
[2026-10-28 18:29:33,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:29:33,353.353 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:29:33,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:29:33,442.442 INFO    ] No camera update needed
[2026-10-28 18:29:33,445.445 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:29:33,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:29:33,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:29:33,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:29:35,497.497 INFO    ] ================================================
[2026-10-28 18:29:35,512.512 INFO    ] Launching Daemon at Wed Oct 28 18:29:35 IST 2026
[2026-10-28 18:29:35,523.523 INFO    ] ================================================
[2026-10-28 18:29:36,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:29:36
[2026-10-28 18:29:36,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:29:37,154.154 INFO    ] Initializing speech engine...
[2026-10-28 18:29:37,161.161 INFO    ] 2026-10-28 18:29:37
[2026-10-28 18:29:37,452.452 INFO    ] 2026-10-28 18:29:37
[2026-10-28 18:29:37,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:29:37,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:29:37,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:29:38,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:29:38,253.253 INFO    ] time= 28/10/2026 18:29:38
[2026-10-28 18:29:38,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:29:38,358.358 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:29:38,584.584 INFO    ] No existing commands found in stream
[2026-10-28 18:29:43,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:29:43,604.604 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-28 18:29:46,760.760 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:29:46,763.763 INFO    ] Checking for system updates...
[2026-10-28 18:29:46,804.804 INFO    ] 200
[2026-10-28 18:29:46,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:29:46,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:29:46,869.869 INFO    ] No update needed
[2026-10-28 18:29:46,872.872 INFO    ] Checking for camera pi updates...
[2026-10-28 18:29:46,907.907 INFO    ] 200
[2026-10-28 18:29:46,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:29:46,952.952 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:29:47,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:29:47,018.018 INFO    ] No camera update needed
[2026-10-28 18:29:47,020.020 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:29:47,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:29:47,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:29:47,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:29:49,076.076 INFO    ] ================================================
[2026-10-28 18:29:49,092.092 INFO    ] Launching Daemon at Wed Oct 28 18:29:49 IST 2026
[2026-10-28 18:29:49,103.103 INFO    ] ================================================
[2026-10-28 18:29:49,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:29:49
[2026-10-28 18:29:50,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:29:50,756.756 INFO    ] Initializing speech engine...
[2026-10-28 18:29:50,767.767 INFO    ] 2026-10-28 18:29:50
[2026-10-28 18:29:51,053.053 INFO    ] 2026-10-28 18:29:51
[2026-10-28 18:29:51,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:29:51,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:29:51,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:29:51,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:29:51,843.843 INFO    ] time= 28/10/2026 18:29:51
[2026-10-28 18:29:51,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:29:51,973.973 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:29:52,179.179 INFO    ] No existing commands found in stream
[2026-10-28 18:29:57,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:29:57,195.195 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 18:29:58,835.835 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:29:58,838.838 INFO    ] Checking for system updates...
[2026-10-28 18:29:58,877.877 INFO    ] 200
[2026-10-28 18:29:58,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:29:58,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:29:58,940.940 INFO    ] No update needed
[2026-10-28 18:29:58,943.943 INFO    ] Checking for camera pi updates...
[2026-10-28 18:29:58,980.980 INFO    ] 200
[2026-10-28 18:29:58,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:29:59,023.023 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:29:59,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:29:59,109.109 INFO    ] No camera update needed
[2026-10-28 18:29:59,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:29:59,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:29:59,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:29:59,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:30:01,164.164 INFO    ] ================================================
[2026-10-28 18:30:01,180.180 INFO    ] Launching Daemon at Wed Oct 28 18:30:01 IST 2026
[2026-10-28 18:30:01,191.191 INFO    ] ================================================
[2026-10-28 18:30:01,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:30:01
[2026-10-28 18:30:02,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:30:03,298.298 INFO    ] Initializing speech engine...
[2026-10-28 18:30:03,302.302 INFO    ] 2026-10-28 18:30:03
[2026-10-28 18:30:03,621.621 INFO    ] 2026-10-28 18:30:03
[2026-10-28 18:30:03,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:30:03,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:30:03,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:30:04,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:30:04,255.255 INFO    ] time= 28/10/2026 18:30:04
[2026-10-28 18:30:04,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:30:04,282.282 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:30:04,443.443 INFO    ] No existing commands found in stream
[2026-10-28 18:30:09,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:30:09,473.473 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-28 18:30:12,952.952 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:30:12,954.954 INFO    ] Checking for system updates...
[2026-10-28 18:30:12,991.991 INFO    ] 200
[2026-10-28 18:30:12,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:30:13,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:30:13,060.060 INFO    ] No update needed
[2026-10-28 18:30:13,063.063 INFO    ] Checking for camera pi updates...
[2026-10-28 18:30:13,100.100 INFO    ] 200
[2026-10-28 18:30:13,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:30:13,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:30:13,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:30:13,232.232 INFO    ] No camera update needed
[2026-10-28 18:30:13,235.235 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:30:13,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:30:13,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:30:13,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:30:15,287.287 INFO    ] ================================================
[2026-10-28 18:30:15,302.302 INFO    ] Launching Daemon at Wed Oct 28 18:30:15 IST 2026
[2026-10-28 18:30:15,313.313 INFO    ] ================================================
[2026-10-28 18:30:15,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:30:15
[2026-10-28 18:30:16,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:30:16,972.972 INFO    ] Initializing speech engine...
[2026-10-28 18:30:16,978.978 INFO    ] 2026-10-28 18:30:16
[2026-10-28 18:30:17,265.265 INFO    ] 2026-10-28 18:30:17
[2026-10-28 18:30:17,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:30:17,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:30:17,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:30:17,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:30:18,032.032 INFO    ] time= 28/10/2026 18:30:17
[2026-10-28 18:30:18,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:30:18,139.139 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:30:18,267.267 INFO    ] No existing commands found in stream
[2026-10-28 18:30:23,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:30:23,284.284 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-28 18:30:27,789.789 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:30:27,792.792 INFO    ] Checking for system updates...
[2026-10-28 18:30:27,829.829 INFO    ] 200
[2026-10-28 18:30:27,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:30:27,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:30:27,888.888 INFO    ] No update needed
[2026-10-28 18:30:27,891.891 INFO    ] Checking for camera pi updates...
[2026-10-28 18:30:27,930.930 INFO    ] 200
[2026-10-28 18:30:27,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:30:27,979.979 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:30:28,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:30:28,085.085 INFO    ] No camera update needed
[2026-10-28 18:30:28,088.088 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:30:28,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:30:28,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:30:28,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:30:30,145.145 INFO    ] ================================================
[2026-10-28 18:30:30,161.161 INFO    ] Launching Daemon at Wed Oct 28 18:30:30 IST 2026
[2026-10-28 18:30:30,172.172 INFO    ] ================================================
[2026-10-28 18:30:30,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:30:30
[2026-10-28 18:30:31,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:30:31,643.643 INFO    ] Initializing speech engine...
[2026-10-28 18:30:31,648.648 INFO    ] 2026-10-28 18:30:31
[2026-10-28 18:30:31,911.911 INFO    ] 2026-10-28 18:30:31
[2026-10-28 18:30:31,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:30:32,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:30:32,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:30:32,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:30:32,733.733 INFO    ] time= 28/10/2026 18:30:32
[2026-10-28 18:30:32,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:30:32,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:30:33,065.065 INFO    ] No existing commands found in stream
[2026-10-28 18:30:38,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:30:38,095.095 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 18:30:41,168.168 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:30:41,171.171 INFO    ] Checking for system updates...
[2026-10-28 18:30:41,209.209 INFO    ] 200
[2026-10-28 18:30:41,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:30:41,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:30:41,269.269 INFO    ] No update needed
[2026-10-28 18:30:41,272.272 INFO    ] Checking for camera pi updates...
[2026-10-28 18:30:41,308.308 INFO    ] 200
[2026-10-28 18:30:41,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:30:41,352.352 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:30:41,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:30:41,436.436 INFO    ] No camera update needed
[2026-10-28 18:30:41,439.439 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:30:41,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:30:41,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:30:41,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:30:43,498.498 INFO    ] ================================================
[2026-10-28 18:30:43,515.515 INFO    ] Launching Daemon at Wed Oct 28 18:30:43 IST 2026
[2026-10-28 18:30:43,525.525 INFO    ] ================================================
[2026-10-28 18:30:44,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:30:44
[2026-10-28 18:30:44,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:30:44,950.950 INFO    ] Initializing speech engine...
[2026-10-28 18:30:44,957.957 INFO    ] 2026-10-28 18:30:44
[2026-10-28 18:30:45,264.264 INFO    ] 2026-10-28 18:30:45
[2026-10-28 18:30:45,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:30:45,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:30:45,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:30:45,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:30:45,927.927 INFO    ] time= 28/10/2026 18:30:45
[2026-10-28 18:30:45,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:30:45,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:30:46,165.165 INFO    ] No existing commands found in stream
[2026-10-28 18:30:51,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:30:51,193.193 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-28 18:30:54,489.489 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:30:54,491.491 INFO    ] Checking for system updates...
[2026-10-28 18:30:54,532.532 INFO    ] 200
[2026-10-28 18:30:54,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:30:54,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:30:54,590.590 INFO    ] No update needed
[2026-10-28 18:30:54,593.593 INFO    ] Checking for camera pi updates...
[2026-10-28 18:30:54,631.631 INFO    ] 200
[2026-10-28 18:30:54,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:30:54,680.680 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:30:54,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:30:54,768.768 INFO    ] No camera update needed
[2026-10-28 18:30:54,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:30:54,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:30:54,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:30:54,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:30:56,823.823 INFO    ] ================================================
[2026-10-28 18:30:56,838.838 INFO    ] Launching Daemon at Wed Oct 28 18:30:56 IST 2026
[2026-10-28 18:30:56,849.849 INFO    ] ================================================
[2026-10-28 18:30:57,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:30:57
[2026-10-28 18:30:58,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:30:58,308.308 INFO    ] Initializing speech engine...
[2026-10-28 18:30:58,315.315 INFO    ] 2026-10-28 18:30:58
[2026-10-28 18:30:58,577.577 INFO    ] 2026-10-28 18:30:58
[2026-10-28 18:30:58,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:30:58,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:30:58,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:30:59,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:30:59,274.274 INFO    ] time= 28/10/2026 18:30:59
[2026-10-28 18:30:59,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:30:59,370.370 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:30:59,548.548 INFO    ] No existing commands found in stream
[2026-10-28 18:31:04,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:31:04,570.570 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-28 18:31:05,764.764 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:31:05,767.767 INFO    ] Checking for system updates...
[2026-10-28 18:31:05,802.802 INFO    ] 200
[2026-10-28 18:31:05,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:31:05,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:31:05,860.860 INFO    ] No update needed
[2026-10-28 18:31:05,863.863 INFO    ] Checking for camera pi updates...
[2026-10-28 18:31:05,897.897 INFO    ] 200
[2026-10-28 18:31:05,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:31:05,944.944 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:31:06,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:31:06,028.028 INFO    ] No camera update needed
[2026-10-28 18:31:06,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:31:06,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:31:06,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:31:06,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:31:08,084.084 INFO    ] ================================================
[2026-10-28 18:31:08,100.100 INFO    ] Launching Daemon at Wed Oct 28 18:31:08 IST 2026
[2026-10-28 18:31:08,110.110 INFO    ] ================================================
[2026-10-28 18:31:08,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:31:08
[2026-10-28 18:31:09,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:31:09,736.736 INFO    ] Initializing speech engine...
[2026-10-28 18:31:09,746.746 INFO    ] 2026-10-28 18:31:09
[2026-10-28 18:31:10,038.038 INFO    ] 2026-10-28 18:31:10
[2026-10-28 18:31:10,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:31:10,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:31:10,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:31:10,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:31:10,849.849 INFO    ] time= 28/10/2026 18:31:10
[2026-10-28 18:31:10,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:31:10,961.961 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:31:11,140.140 INFO    ] No existing commands found in stream
[2026-10-28 18:31:16,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:31:16,179.179 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 18:31:16,969.969 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:31:16,972.972 INFO    ] Checking for system updates...
[2026-10-28 18:31:17,009.009 INFO    ] 200
[2026-10-28 18:31:17,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:31:17,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:31:17,068.068 INFO    ] No update needed
[2026-10-28 18:31:17,071.071 INFO    ] Checking for camera pi updates...
[2026-10-28 18:31:17,107.107 INFO    ] 200
[2026-10-28 18:31:17,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:31:17,151.151 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:31:17,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:31:17,233.233 INFO    ] No camera update needed
[2026-10-28 18:31:17,236.236 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:31:17,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:31:17,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:31:17,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:31:19,291.291 INFO    ] ================================================
[2026-10-28 18:31:19,307.307 INFO    ] Launching Daemon at Wed Oct 28 18:31:19 IST 2026
[2026-10-28 18:31:19,317.317 INFO    ] ================================================
[2026-10-28 18:31:19,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:31:19
[2026-10-28 18:31:20,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:31:20,917.917 INFO    ] Initializing speech engine...
[2026-10-28 18:31:20,929.929 INFO    ] 2026-10-28 18:31:20
[2026-10-28 18:31:21,209.209 INFO    ] 2026-10-28 18:31:21
[2026-10-28 18:31:21,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:31:21,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:31:21,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:31:21,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:31:21,959.959 INFO    ] time= 28/10/2026 18:31:21
[2026-10-28 18:31:21,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:31:22,057.057 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:31:22,254.254 INFO    ] No existing commands found in stream
[2026-10-28 18:31:27,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:31:27,288.288 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-28 18:31:31,113.113 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:31:31,116.116 INFO    ] Checking for system updates...
[2026-10-28 18:31:31,153.153 INFO    ] 200
[2026-10-28 18:31:31,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:31:31,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:31:31,218.218 INFO    ] No update needed
[2026-10-28 18:31:31,220.220 INFO    ] Checking for camera pi updates...
[2026-10-28 18:31:31,258.258 INFO    ] 200
[2026-10-28 18:31:31,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:31:31,302.302 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:31:31,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:31:31,504.504 INFO    ] No camera update needed
[2026-10-28 18:31:31,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:31:31,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:31:31,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:31:31,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:31:33,562.562 INFO    ] ================================================
[2026-10-28 18:31:33,578.578 INFO    ] Launching Daemon at Wed Oct 28 18:31:33 IST 2026
[2026-10-28 18:31:33,589.589 INFO    ] ================================================
[2026-10-28 18:31:34,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:31:34
[2026-10-28 18:31:34,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:31:34,998.998 INFO    ] Initializing speech engine...
[2026-10-28 18:31:35,004.004 INFO    ] 2026-10-28 18:31:34
[2026-10-28 18:31:35,304.304 INFO    ] 2026-10-28 18:31:35
[2026-10-28 18:31:35,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:31:35,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:31:35,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:31:35,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:31:35,932.932 INFO    ] time= 28/10/2026 18:31:35
[2026-10-28 18:31:35,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:31:35,962.962 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:31:36,110.110 INFO    ] No existing commands found in stream
[2026-10-28 18:31:41,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:31:41,134.134 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 18:31:42,877.877 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:31:42,879.879 INFO    ] Checking for system updates...
[2026-10-28 18:31:42,919.919 INFO    ] 200
[2026-10-28 18:31:42,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:31:42,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:31:42,997.997 INFO    ] No update needed
[2026-10-28 18:31:43,000.000 INFO    ] Checking for camera pi updates...
[2026-10-28 18:31:43,036.036 INFO    ] 200
[2026-10-28 18:31:43,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:31:43,104.104 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:31:43,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:31:43,187.187 INFO    ] No camera update needed
[2026-10-28 18:31:43,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:31:43,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:31:43,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:31:43,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:31:45,243.243 INFO    ] ================================================
[2026-10-28 18:31:45,258.258 INFO    ] Launching Daemon at Wed Oct 28 18:31:45 IST 2026
[2026-10-28 18:31:45,269.269 INFO    ] ================================================
[2026-10-28 18:31:45,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:31:45
[2026-10-28 18:31:46,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:31:46,867.867 INFO    ] Initializing speech engine...
[2026-10-28 18:31:46,879.879 INFO    ] 2026-10-28 18:31:46
[2026-10-28 18:31:47,187.187 INFO    ] 2026-10-28 18:31:47
[2026-10-28 18:31:47,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:31:47,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:31:47,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:31:47,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:31:47,946.946 INFO    ] time= 28/10/2026 18:31:47
[2026-10-28 18:31:48,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:31:48,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:31:48,253.253 INFO    ] No existing commands found in stream
[2026-10-28 18:31:53,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:31:53,272.272 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 18:31:54,923.923 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:31:54,926.926 INFO    ] Checking for system updates...
[2026-10-28 18:31:54,963.963 INFO    ] 200
[2026-10-28 18:31:54,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:31:55,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:31:55,022.022 INFO    ] No update needed
[2026-10-28 18:31:55,024.024 INFO    ] Checking for camera pi updates...
[2026-10-28 18:31:55,059.059 INFO    ] 200
[2026-10-28 18:31:55,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:31:55,107.107 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:31:55,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:31:55,195.195 INFO    ] No camera update needed
[2026-10-28 18:31:55,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:31:55,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:31:55,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:31:55,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:31:57,255.255 INFO    ] ================================================
[2026-10-28 18:31:57,270.270 INFO    ] Launching Daemon at Wed Oct 28 18:31:57 IST 2026
[2026-10-28 18:31:57,281.281 INFO    ] ================================================
[2026-10-28 18:31:57,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:31:57
[2026-10-28 18:31:58,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:31:58,699.699 INFO    ] Initializing speech engine...
[2026-10-28 18:31:58,716.716 INFO    ] 2026-10-28 18:31:58
[2026-10-28 18:31:58,999.999 INFO    ] 2026-10-28 18:31:58
[2026-10-28 18:31:59,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:31:59,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:31:59,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:31:59,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:31:59,621.621 INFO    ] time= 28/10/2026 18:31:59
[2026-10-28 18:31:59,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:31:59,653.653 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:31:59,824.824 INFO    ] No existing commands found in stream
[2026-10-28 18:32:04,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:32:04,857.857 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-28 18:32:06,709.709 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:32:06,711.711 INFO    ] Checking for system updates...
[2026-10-28 18:32:06,749.749 INFO    ] 200
[2026-10-28 18:32:06,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:32:06,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:32:06,813.813 INFO    ] No update needed
[2026-10-28 18:32:06,816.816 INFO    ] Checking for camera pi updates...
[2026-10-28 18:32:06,851.851 INFO    ] 200
[2026-10-28 18:32:06,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:32:06,898.898 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:32:06,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:32:06,985.985 INFO    ] No camera update needed
[2026-10-28 18:32:06,988.988 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:32:06,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:32:06,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:32:07,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:32:09,041.041 INFO    ] ================================================
[2026-10-28 18:32:09,056.056 INFO    ] Launching Daemon at Wed Oct 28 18:32:09 IST 2026
[2026-10-28 18:32:09,067.067 INFO    ] ================================================
[2026-10-28 18:32:09,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:32:09
[2026-10-28 18:32:10,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:32:10,516.516 INFO    ] Initializing speech engine...
[2026-10-28 18:32:10,528.528 INFO    ] 2026-10-28 18:32:10
[2026-10-28 18:32:10,778.778 INFO    ] 2026-10-28 18:32:10
[2026-10-28 18:32:10,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:32:11,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:32:11,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:32:11,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:32:11,543.543 INFO    ] time= 28/10/2026 18:32:11
[2026-10-28 18:32:11,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:32:11,597.597 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:32:11,736.736 INFO    ] No existing commands found in stream
[2026-10-28 18:32:16,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:32:16,770.770 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-28 18:32:18,653.653 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:32:18,656.656 INFO    ] Checking for system updates...
[2026-10-28 18:32:18,696.696 INFO    ] 200
[2026-10-28 18:32:18,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:32:18,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:32:18,757.757 INFO    ] No update needed
[2026-10-28 18:32:18,760.760 INFO    ] Checking for camera pi updates...
[2026-10-28 18:32:18,798.798 INFO    ] 200
[2026-10-28 18:32:18,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:32:18,851.851 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:32:18,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:32:18,937.937 INFO    ] No camera update needed
[2026-10-28 18:32:18,940.940 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:32:18,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:32:18,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:32:18,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:32:21,996.996 INFO    ] ================================================
[2026-10-28 18:32:21,011.011 INFO    ] Launching Daemon at Wed Oct 28 18:32:21 IST 2026
[2026-10-28 18:32:21,022.022 INFO    ] ================================================
[2026-10-28 18:32:21,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:32:21
[2026-10-28 18:32:22,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:32:22,486.486 INFO    ] Initializing speech engine...
[2026-10-28 18:32:22,496.496 INFO    ] 2026-10-28 18:32:22
[2026-10-28 18:32:22,744.744 INFO    ] 2026-10-28 18:32:22
[2026-10-28 18:32:22,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:32:23,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:32:23,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:32:23,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:32:23,456.456 INFO    ] time= 28/10/2026 18:32:23
[2026-10-28 18:32:23,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:32:23,552.552 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:32:23,725.725 INFO    ] No existing commands found in stream
[2026-10-28 18:32:28,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:32:28,758.758 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-28 18:32:32,331.331 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:32:32,334.334 INFO    ] Checking for system updates...
[2026-10-28 18:32:32,372.372 INFO    ] 200
[2026-10-28 18:32:32,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:32:32,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:32:32,438.438 INFO    ] No update needed
[2026-10-28 18:32:32,440.440 INFO    ] Checking for camera pi updates...
[2026-10-28 18:32:32,486.486 INFO    ] 200
[2026-10-28 18:32:32,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:32:32,534.534 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:32:32,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:32:32,650.650 INFO    ] No camera update needed
[2026-10-28 18:32:32,652.652 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:32:32,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:32:32,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:32:32,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:32:34,708.708 INFO    ] ================================================
[2026-10-28 18:32:34,724.724 INFO    ] Launching Daemon at Wed Oct 28 18:32:34 IST 2026
[2026-10-28 18:32:34,735.735 INFO    ] ================================================
[2026-10-28 18:32:35,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:32:35
[2026-10-28 18:32:35,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:32:36,166.166 INFO    ] Initializing speech engine...
[2026-10-28 18:32:36,189.189 INFO    ] 2026-10-28 18:32:36
[2026-10-28 18:32:36,446.446 INFO    ] 2026-10-28 18:32:36
[2026-10-28 18:32:36,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:32:36,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:32:36,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:32:37,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:32:37,090.090 INFO    ] time= 28/10/2026 18:32:37
[2026-10-28 18:32:37,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:32:37,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:32:37,304.304 INFO    ] No existing commands found in stream
[2026-10-28 18:32:42,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:32:42,322.322 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 18:32:44,766.766 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:32:44,769.769 INFO    ] Checking for system updates...
[2026-10-28 18:32:44,806.806 INFO    ] 200
[2026-10-28 18:32:44,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:32:44,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:32:44,865.865 INFO    ] No update needed
[2026-10-28 18:32:44,868.868 INFO    ] Checking for camera pi updates...
[2026-10-28 18:32:44,905.905 INFO    ] 200
[2026-10-28 18:32:44,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:32:44,950.950 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:32:45,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:32:45,034.034 INFO    ] No camera update needed
[2026-10-28 18:32:45,036.036 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:32:45,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:32:45,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:32:45,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:32:47,093.093 INFO    ] ================================================
[2026-10-28 18:32:47,109.109 INFO    ] Launching Daemon at Wed Oct 28 18:32:47 IST 2026
[2026-10-28 18:32:47,120.120 INFO    ] ================================================
[2026-10-28 18:32:47,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:32:47
[2026-10-28 18:32:48,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:32:48,595.595 INFO    ] Initializing speech engine...
[2026-10-28 18:32:48,604.604 INFO    ] 2026-10-28 18:32:48
[2026-10-28 18:32:48,875.875 INFO    ] 2026-10-28 18:32:48
[2026-10-28 18:32:48,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:32:49,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:32:49,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:32:49,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:32:49,487.487 INFO    ] time= 28/10/2026 18:32:49
[2026-10-28 18:32:49,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:32:49,515.515 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:32:49,699.699 INFO    ] No existing commands found in stream
[2026-10-28 18:32:54,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:32:54,728.728 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 18:32:57,589.589 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:32:57,592.592 INFO    ] Checking for system updates...
[2026-10-28 18:32:57,641.641 INFO    ] 200
[2026-10-28 18:32:57,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:32:57,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:32:57,711.711 INFO    ] No update needed
[2026-10-28 18:32:57,714.714 INFO    ] Checking for camera pi updates...
[2026-10-28 18:32:57,751.751 INFO    ] 200
[2026-10-28 18:32:57,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:32:57,804.804 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:32:57,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:32:57,894.894 INFO    ] No camera update needed
[2026-10-28 18:32:57,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:32:57,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:32:57,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:32:57,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:32:59,955.955 INFO    ] ================================================
[2026-10-28 18:32:59,971.971 INFO    ] Launching Daemon at Wed Oct 28 18:32:59 IST 2026
[2026-10-28 18:32:59,983.983 INFO    ] ================================================
[2026-10-28 18:33:00,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:33:00
[2026-10-28 18:33:01,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:33:01,839.839 INFO    ] Initializing speech engine...
[2026-10-28 18:33:01,844.844 INFO    ] 2026-10-28 18:33:01
[2026-10-28 18:33:02,224.224 INFO    ] 2026-10-28 18:33:02
[2026-10-28 18:33:02,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:33:02,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:33:02,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:33:02,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:33:02,758.758 INFO    ] time= 28/10/2026 18:33:02
[2026-10-28 18:33:02,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:33:02,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:33:02,934.934 INFO    ] No existing commands found in stream
[2026-10-28 18:33:07,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:33:07,972.972 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-28 18:33:12,172.172 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:33:12,174.174 INFO    ] Checking for system updates...
[2026-10-28 18:33:12,210.210 INFO    ] 200
[2026-10-28 18:33:12,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:33:12,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:33:12,269.269 INFO    ] No update needed
[2026-10-28 18:33:12,271.271 INFO    ] Checking for camera pi updates...
[2026-10-28 18:33:12,304.304 INFO    ] 200
[2026-10-28 18:33:12,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:33:12,346.346 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:33:12,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:33:12,451.451 INFO    ] No camera update needed
[2026-10-28 18:33:12,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:33:12,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:33:12,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:33:12,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:33:14,506.506 INFO    ] ================================================
[2026-10-28 18:33:14,522.522 INFO    ] Launching Daemon at Wed Oct 28 18:33:14 IST 2026
[2026-10-28 18:33:14,533.533 INFO    ] ================================================
[2026-10-28 18:33:15,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:33:15
[2026-10-28 18:33:15,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:33:15,963.963 INFO    ] Initializing speech engine...
[2026-10-28 18:33:15,972.972 INFO    ] 2026-10-28 18:33:15
[2026-10-28 18:33:16,221.221 INFO    ] 2026-10-28 18:33:16
[2026-10-28 18:33:16,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:33:16,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:33:16,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:33:16,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:33:16,838.838 INFO    ] time= 28/10/2026 18:33:16
[2026-10-28 18:33:16,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:33:16,891.891 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:33:17,061.061 INFO    ] No existing commands found in stream
[2026-10-28 18:33:22,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:33:22,099.099 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-28 18:33:23,963.963 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:33:23,966.966 INFO    ] Checking for system updates...
[2026-10-28 18:33:24,002.002 INFO    ] 200
[2026-10-28 18:33:24,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:33:24,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:33:24,059.059 INFO    ] No update needed
[2026-10-28 18:33:24,061.061 INFO    ] Checking for camera pi updates...
[2026-10-28 18:33:24,099.099 INFO    ] 200
[2026-10-28 18:33:24,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:33:24,141.141 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:33:24,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:33:24,237.237 INFO    ] No camera update needed
[2026-10-28 18:33:24,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:33:24,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:33:24,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:33:24,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:33:26,292.292 INFO    ] ================================================
[2026-10-28 18:33:26,307.307 INFO    ] Launching Daemon at Wed Oct 28 18:33:26 IST 2026
[2026-10-28 18:33:26,318.318 INFO    ] ================================================
[2026-10-28 18:33:26,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:33:26
[2026-10-28 18:33:27,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:33:27,895.895 INFO    ] Initializing speech engine...
[2026-10-28 18:33:27,900.900 INFO    ] 2026-10-28 18:33:27
[2026-10-28 18:33:28,173.173 INFO    ] 2026-10-28 18:33:28
[2026-10-28 18:33:28,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:33:28,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:33:28,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:33:28,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:33:28,778.778 INFO    ] time= 28/10/2026 18:33:28
[2026-10-28 18:33:28,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:33:28,796.796 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:33:28,924.924 INFO    ] No existing commands found in stream
[2026-10-28 18:33:33,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:33:33,958.958 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-28 18:33:37,239.239 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:33:37,242.242 INFO    ] Checking for system updates...
[2026-10-28 18:33:37,278.278 INFO    ] 200
[2026-10-28 18:33:37,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:33:37,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:33:37,337.337 INFO    ] No update needed
[2026-10-28 18:33:37,340.340 INFO    ] Checking for camera pi updates...
[2026-10-28 18:33:37,376.376 INFO    ] 200
[2026-10-28 18:33:37,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:33:37,425.425 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:33:37,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:33:37,610.610 INFO    ] No camera update needed
[2026-10-28 18:33:37,613.613 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:33:37,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:33:37,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:33:37,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:33:39,667.667 INFO    ] ================================================
[2026-10-28 18:33:39,682.682 INFO    ] Launching Daemon at Wed Oct 28 18:33:39 IST 2026
[2026-10-28 18:33:39,692.692 INFO    ] ================================================
[2026-10-28 18:33:40,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:33:40
[2026-10-28 18:33:40,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:33:41,169.169 INFO    ] Initializing speech engine...
[2026-10-28 18:33:41,176.176 INFO    ] 2026-10-28 18:33:41
[2026-10-28 18:33:41,450.450 INFO    ] 2026-10-28 18:33:41
[2026-10-28 18:33:41,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:33:41,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:33:41,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:33:42,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:33:42,279.279 INFO    ] time= 28/10/2026 18:33:42
[2026-10-28 18:33:42,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:33:42,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:33:42,587.587 INFO    ] No existing commands found in stream
[2026-10-28 18:33:47,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:33:47,604.604 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-28 18:33:52,308.308 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:33:52,311.311 INFO    ] Checking for system updates...
[2026-10-28 18:33:52,348.348 INFO    ] 200
[2026-10-28 18:33:52,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:33:52,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:33:52,407.407 INFO    ] No update needed
[2026-10-28 18:33:52,410.410 INFO    ] Checking for camera pi updates...
[2026-10-28 18:33:52,444.444 INFO    ] 200
[2026-10-28 18:33:52,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:33:52,487.487 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:33:52,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:33:52,571.571 INFO    ] No camera update needed
[2026-10-28 18:33:52,574.574 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:33:52,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:33:52,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:33:52,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:33:54,628.628 INFO    ] ================================================
[2026-10-28 18:33:54,644.644 INFO    ] Launching Daemon at Wed Oct 28 18:33:54 IST 2026
[2026-10-28 18:33:54,654.654 INFO    ] ================================================
[2026-10-28 18:33:55,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:33:55
[2026-10-28 18:33:55,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:33:56,123.123 INFO    ] Initializing speech engine...
[2026-10-28 18:33:56,130.130 INFO    ] 2026-10-28 18:33:56
[2026-10-28 18:33:56,405.405 INFO    ] 2026-10-28 18:33:56
[2026-10-28 18:33:56,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:33:56,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:33:56,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:33:57,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:33:57,191.191 INFO    ] time= 28/10/2026 18:33:57
[2026-10-28 18:33:57,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:33:57,287.287 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:33:57,495.495 INFO    ] No existing commands found in stream
[2026-10-28 18:34:02,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:34:02,525.525 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-28 18:34:03,639.639 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:34:03,642.642 INFO    ] Checking for system updates...
[2026-10-28 18:34:03,678.678 INFO    ] 200
[2026-10-28 18:34:03,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:34:03,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:34:03,744.744 INFO    ] No update needed
[2026-10-28 18:34:03,748.748 INFO    ] Checking for camera pi updates...
[2026-10-28 18:34:03,790.790 INFO    ] 200
[2026-10-28 18:34:03,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:34:03,847.847 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:34:03,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:34:03,951.951 INFO    ] No camera update needed
[2026-10-28 18:34:03,954.954 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:34:03,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:34:03,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:34:03,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:34:06,008.008 INFO    ] ================================================
[2026-10-28 18:34:06,022.022 INFO    ] Launching Daemon at Wed Oct 28 18:34:06 IST 2026
[2026-10-28 18:34:06,033.033 INFO    ] ================================================
[2026-10-28 18:34:06,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:34:06
[2026-10-28 18:34:07,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:34:07,441.441 INFO    ] Initializing speech engine...
[2026-10-28 18:34:07,456.456 INFO    ] 2026-10-28 18:34:07
[2026-10-28 18:34:07,709.709 INFO    ] 2026-10-28 18:34:07
[2026-10-28 18:34:07,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:34:08,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:34:08,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:34:08,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:34:08,292.292 INFO    ] time= 28/10/2026 18:34:08
[2026-10-28 18:34:08,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:34:08,327.327 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:34:08,468.468 INFO    ] No existing commands found in stream
[2026-10-28 18:34:13,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:34:13,501.501 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-28 18:34:15,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:34:15,175.175 INFO    ] Checking for system updates...
[2026-10-28 18:34:15,211.211 INFO    ] 200
[2026-10-28 18:34:15,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:34:15,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:34:15,268.268 INFO    ] No update needed
[2026-10-28 18:34:15,270.270 INFO    ] Checking for camera pi updates...
[2026-10-28 18:34:15,305.305 INFO    ] 200
[2026-10-28 18:34:15,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:34:15,352.352 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:34:15,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:34:15,431.431 INFO    ] No camera update needed
[2026-10-28 18:34:15,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:34:15,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:34:15,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:34:15,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:34:17,488.488 INFO    ] ================================================
[2026-10-28 18:34:17,505.505 INFO    ] Launching Daemon at Wed Oct 28 18:34:17 IST 2026
[2026-10-28 18:34:17,516.516 INFO    ] ================================================
[2026-10-28 18:34:18,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:34:18
[2026-10-28 18:34:18,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:34:18,937.937 INFO    ] Initializing speech engine...
[2026-10-28 18:34:18,952.952 INFO    ] 2026-10-28 18:34:18
[2026-10-28 18:34:19,218.218 INFO    ] 2026-10-28 18:34:19
[2026-10-28 18:34:19,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:34:19,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:34:19,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:34:19,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:34:19,838.838 INFO    ] time= 28/10/2026 18:34:19
[2026-10-28 18:34:19,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:34:19,880.880 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:34:20,024.024 INFO    ] No existing commands found in stream
[2026-10-28 18:34:25,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:34:25,057.057 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 18:34:27,630.630 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:34:27,633.633 INFO    ] Checking for system updates...
[2026-10-28 18:34:27,669.669 INFO    ] 200
[2026-10-28 18:34:27,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:34:27,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:34:27,726.726 INFO    ] No update needed
[2026-10-28 18:34:27,728.728 INFO    ] Checking for camera pi updates...
[2026-10-28 18:34:27,765.765 INFO    ] 200
[2026-10-28 18:34:27,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:34:27,809.809 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:34:27,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:34:27,891.891 INFO    ] No camera update needed
[2026-10-28 18:34:27,894.894 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:34:27,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:34:27,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:34:27,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:34:29,947.947 INFO    ] ================================================
[2026-10-28 18:34:29,962.962 INFO    ] Launching Daemon at Wed Oct 28 18:34:29 IST 2026
[2026-10-28 18:34:29,973.973 INFO    ] ================================================
[2026-10-28 18:34:30,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:34:30
[2026-10-28 18:34:31,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:34:31,444.444 INFO    ] Initializing speech engine...
[2026-10-28 18:34:31,458.458 INFO    ] 2026-10-28 18:34:31
[2026-10-28 18:34:31,726.726 INFO    ] 2026-10-28 18:34:31
[2026-10-28 18:34:31,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:34:32,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:34:32,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:34:32,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:34:32,337.337 INFO    ] time= 28/10/2026 18:34:32
[2026-10-28 18:34:32,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:34:32,381.381 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:34:32,550.550 INFO    ] No existing commands found in stream
[2026-10-28 18:34:37,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:34:37,584.584 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-28 18:34:40,357.357 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:34:40,359.359 INFO    ] Checking for system updates...
[2026-10-28 18:34:40,397.397 INFO    ] 200
[2026-10-28 18:34:40,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:34:40,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:34:40,458.458 INFO    ] No update needed
[2026-10-28 18:34:40,460.460 INFO    ] Checking for camera pi updates...
[2026-10-28 18:34:40,495.495 INFO    ] 200
[2026-10-28 18:34:40,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:34:40,542.542 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:34:40,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:34:40,633.633 INFO    ] No camera update needed
[2026-10-28 18:34:40,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:34:40,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:34:40,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:34:40,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:34:42,689.689 INFO    ] ================================================
[2026-10-28 18:34:42,704.704 INFO    ] Launching Daemon at Wed Oct 28 18:34:42 IST 2026
[2026-10-28 18:34:42,715.715 INFO    ] ================================================
[2026-10-28 18:34:43,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:34:43
[2026-10-28 18:34:43,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:34:44,122.122 INFO    ] Initializing speech engine...
[2026-10-28 18:34:44,128.128 INFO    ] 2026-10-28 18:34:44
[2026-10-28 18:34:44,418.418 INFO    ] 2026-10-28 18:34:44
[2026-10-28 18:34:44,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:34:44,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:34:44,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:34:44,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:34:45,028.028 INFO    ] time= 28/10/2026 18:34:44
[2026-10-28 18:34:45,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:34:45,055.055 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:34:45,185.185 INFO    ] No existing commands found in stream
[2026-10-28 18:34:50,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:34:50,214.214 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 18:34:54,388.388 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:34:54,391.391 INFO    ] Checking for system updates...
[2026-10-28 18:34:54,445.445 INFO    ] 200
[2026-10-28 18:34:54,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:34:54,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:34:54,501.501 INFO    ] No update needed
[2026-10-28 18:34:54,504.504 INFO    ] Checking for camera pi updates...
[2026-10-28 18:34:54,539.539 INFO    ] 200
[2026-10-28 18:34:54,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:34:54,584.584 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:34:54,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:34:54,667.667 INFO    ] No camera update needed
[2026-10-28 18:34:54,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:34:54,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:34:54,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:34:54,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:34:56,721.721 INFO    ] ================================================
[2026-10-28 18:34:56,736.736 INFO    ] Launching Daemon at Wed Oct 28 18:34:56 IST 2026
[2026-10-28 18:34:56,746.746 INFO    ] ================================================
[2026-10-28 18:34:57,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:34:57
[2026-10-28 18:34:57,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:34:58,192.192 INFO    ] Initializing speech engine...
[2026-10-28 18:34:58,201.201 INFO    ] 2026-10-28 18:34:58
[2026-10-28 18:34:58,456.456 INFO    ] 2026-10-28 18:34:58
[2026-10-28 18:34:58,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:34:58,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:34:58,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:34:58,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:34:59,002.002 INFO    ] time= 28/10/2026 18:34:58
[2026-10-28 18:34:59,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:34:59,031.031 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:34:59,156.156 INFO    ] No existing commands found in stream
[2026-10-28 18:35:04,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:35:04,178.178 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 18:35:06,232.232 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:35:06,235.235 INFO    ] Checking for system updates...
[2026-10-28 18:35:06,271.271 INFO    ] 200
[2026-10-28 18:35:06,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:35:06,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:35:06,330.330 INFO    ] No update needed
[2026-10-28 18:35:06,332.332 INFO    ] Checking for camera pi updates...
[2026-10-28 18:35:06,370.370 INFO    ] 200
[2026-10-28 18:35:06,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:35:06,412.412 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:35:06,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:35:06,505.505 INFO    ] No camera update needed
[2026-10-28 18:35:06,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:35:06,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:35:06,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:35:06,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:35:08,560.560 INFO    ] ================================================
[2026-10-28 18:35:08,575.575 INFO    ] Launching Daemon at Wed Oct 28 18:35:08 IST 2026
[2026-10-28 18:35:08,586.586 INFO    ] ================================================
[2026-10-28 18:35:09,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:35:09
[2026-10-28 18:35:09,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:35:10,010.010 INFO    ] Initializing speech engine...
[2026-10-28 18:35:10,016.016 INFO    ] 2026-10-28 18:35:10
[2026-10-28 18:35:10,290.290 INFO    ] 2026-10-28 18:35:10
[2026-10-28 18:35:10,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:35:10,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:35:10,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:35:10,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:35:10,864.864 INFO    ] time= 28/10/2026 18:35:10
[2026-10-28 18:35:10,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:35:10,910.910 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:35:11,061.061 INFO    ] No existing commands found in stream
[2026-10-28 18:35:16,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:35:16,089.089 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-28 18:35:16,888.888 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:35:16,891.891 INFO    ] Checking for system updates...
[2026-10-28 18:35:16,927.927 INFO    ] 200
[2026-10-28 18:35:16,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:35:16,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:35:16,986.986 INFO    ] No update needed
[2026-10-28 18:35:16,988.988 INFO    ] Checking for camera pi updates...
[2026-10-28 18:35:17,023.023 INFO    ] 200
[2026-10-28 18:35:17,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:35:17,067.067 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:35:17,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:35:17,172.172 INFO    ] No camera update needed
[2026-10-28 18:35:17,175.175 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:35:17,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:35:17,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:35:17,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:35:19,229.229 INFO    ] ================================================
[2026-10-28 18:35:19,245.245 INFO    ] Launching Daemon at Wed Oct 28 18:35:19 IST 2026
[2026-10-28 18:35:19,256.256 INFO    ] ================================================
[2026-10-28 18:35:19,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:35:19
[2026-10-28 18:35:20,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:35:20,836.836 INFO    ] Initializing speech engine...
[2026-10-28 18:35:20,841.841 INFO    ] 2026-10-28 18:35:20
[2026-10-28 18:35:21,110.110 INFO    ] 2026-10-28 18:35:21
[2026-10-28 18:35:21,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:35:21,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:35:21,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:35:21,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:35:21,732.732 INFO    ] time= 28/10/2026 18:35:21
[2026-10-28 18:35:21,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:35:21,821.821 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:35:21,964.964 INFO    ] No existing commands found in stream
[2026-10-28 18:35:26,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:35:26,998.998 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-28 18:35:28,168.168 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:35:28,170.170 INFO    ] Checking for system updates...
[2026-10-28 18:35:28,206.206 INFO    ] 200
[2026-10-28 18:35:28,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:35:28,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:35:28,265.265 INFO    ] No update needed
[2026-10-28 18:35:28,267.267 INFO    ] Checking for camera pi updates...
[2026-10-28 18:35:28,302.302 INFO    ] 200
[2026-10-28 18:35:28,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:35:28,345.345 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:35:28,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:35:28,431.431 INFO    ] No camera update needed
[2026-10-28 18:35:28,433.433 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:35:28,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:35:28,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:35:28,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:35:30,487.487 INFO    ] ================================================
[2026-10-28 18:35:30,501.501 INFO    ] Launching Daemon at Wed Oct 28 18:35:30 IST 2026
[2026-10-28 18:35:30,512.512 INFO    ] ================================================
[2026-10-28 18:35:31,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:35:31
[2026-10-28 18:35:31,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:35:32,092.092 INFO    ] Initializing speech engine...
[2026-10-28 18:35:32,103.103 INFO    ] 2026-10-28 18:35:32
[2026-10-28 18:35:32,381.381 INFO    ] 2026-10-28 18:35:32
[2026-10-28 18:35:32,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:35:32,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:35:32,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:35:32,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:35:33,010.010 INFO    ] time= 28/10/2026 18:35:32
[2026-10-28 18:35:33,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:35:33,050.050 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:35:33,183.183 INFO    ] No existing commands found in stream
[2026-10-28 18:35:38,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:35:38,212.212 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-28 18:35:41,454.454 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:35:41,456.456 INFO    ] Checking for system updates...
[2026-10-28 18:35:41,492.492 INFO    ] 200
[2026-10-28 18:35:41,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:35:41,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:35:41,550.550 INFO    ] No update needed
[2026-10-28 18:35:41,552.552 INFO    ] Checking for camera pi updates...
[2026-10-28 18:35:41,588.588 INFO    ] 200
[2026-10-28 18:35:41,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:35:41,630.630 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:35:41,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:35:41,812.812 INFO    ] No camera update needed
[2026-10-28 18:35:41,815.815 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:35:41,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:35:41,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:35:41,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:35:43,867.867 INFO    ] ================================================
[2026-10-28 18:35:43,882.882 INFO    ] Launching Daemon at Wed Oct 28 18:35:43 IST 2026
[2026-10-28 18:35:43,893.893 INFO    ] ================================================
[2026-10-28 18:35:44,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:35:44
[2026-10-28 18:35:45,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:35:45,326.326 INFO    ] Initializing speech engine...
[2026-10-28 18:35:45,332.332 INFO    ] 2026-10-28 18:35:45
[2026-10-28 18:35:45,589.589 INFO    ] 2026-10-28 18:35:45
[2026-10-28 18:35:45,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:35:45,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:35:45,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:35:46,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:35:46,145.145 INFO    ] time= 28/10/2026 18:35:46
[2026-10-28 18:35:46,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:35:46,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:35:46,324.324 INFO    ] No existing commands found in stream
[2026-10-28 18:35:51,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:35:51,357.357 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-28 18:35:52,192.192 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:35:52,195.195 INFO    ] Checking for system updates...
[2026-10-28 18:35:52,231.231 INFO    ] 200
[2026-10-28 18:35:52,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:35:52,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:35:52,290.290 INFO    ] No update needed
[2026-10-28 18:35:52,292.292 INFO    ] Checking for camera pi updates...
[2026-10-28 18:35:52,326.326 INFO    ] 200
[2026-10-28 18:35:52,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:35:52,368.368 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:35:52,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:35:52,453.453 INFO    ] No camera update needed
[2026-10-28 18:35:52,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:35:52,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:35:52,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:35:52,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:35:54,509.509 INFO    ] ================================================
[2026-10-28 18:35:54,525.525 INFO    ] Launching Daemon at Wed Oct 28 18:35:54 IST 2026
[2026-10-28 18:35:54,536.536 INFO    ] ================================================
[2026-10-28 18:35:55,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:35:55
[2026-10-28 18:35:55,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:35:55,959.959 INFO    ] Initializing speech engine...
[2026-10-28 18:35:55,968.968 INFO    ] 2026-10-28 18:35:55
[2026-10-28 18:35:56,217.217 INFO    ] 2026-10-28 18:35:56
[2026-10-28 18:35:56,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:35:56,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:35:56,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:35:56,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:35:56,990.990 INFO    ] time= 28/10/2026 18:35:56
[2026-10-28 18:35:57,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:35:57,078.078 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:35:57,232.232 INFO    ] No existing commands found in stream
[2026-10-28 18:36:02,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:36:02,249.249 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-28 18:36:05,111.111 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:36:05,114.114 INFO    ] Checking for system updates...
[2026-10-28 18:36:05,149.149 INFO    ] 200
[2026-10-28 18:36:05,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:36:05,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:36:05,208.208 INFO    ] No update needed
[2026-10-28 18:36:05,210.210 INFO    ] Checking for camera pi updates...
[2026-10-28 18:36:05,243.243 INFO    ] 200
[2026-10-28 18:36:05,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:36:05,292.292 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:36:05,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:36:05,375.375 INFO    ] No camera update needed
[2026-10-28 18:36:05,377.377 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:36:05,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:36:05,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:36:05,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:36:07,435.435 INFO    ] ================================================
[2026-10-28 18:36:07,450.450 INFO    ] Launching Daemon at Wed Oct 28 18:36:07 IST 2026
[2026-10-28 18:36:07,461.461 INFO    ] ================================================
[2026-10-28 18:36:08,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:36:08
[2026-10-28 18:36:08,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:36:08,916.916 INFO    ] Initializing speech engine...
[2026-10-28 18:36:08,926.926 INFO    ] 2026-10-28 18:36:08
[2026-10-28 18:36:09,188.188 INFO    ] 2026-10-28 18:36:09
[2026-10-28 18:36:09,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:36:09,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:36:09,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:36:09,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:36:09,972.972 INFO    ] time= 28/10/2026 18:36:09
[2026-10-28 18:36:10,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:36:10,096.096 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:36:10,289.289 INFO    ] No existing commands found in stream
[2026-10-28 18:36:15,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:36:15,312.312 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-28 18:36:16,213.213 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:36:16,215.215 INFO    ] Checking for system updates...
[2026-10-28 18:36:16,254.254 INFO    ] 200
[2026-10-28 18:36:16,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:36:16,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:36:16,311.311 INFO    ] No update needed
[2026-10-28 18:36:16,314.314 INFO    ] Checking for camera pi updates...
[2026-10-28 18:36:16,348.348 INFO    ] 200
[2026-10-28 18:36:16,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:36:16,391.391 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:36:16,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:36:16,479.479 INFO    ] No camera update needed
[2026-10-28 18:36:16,549.549 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:36:16,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:36:16,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:36:16,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:36:18,603.603 INFO    ] ================================================
[2026-10-28 18:36:18,619.619 INFO    ] Launching Daemon at Wed Oct 28 18:36:18 IST 2026
[2026-10-28 18:36:18,630.630 INFO    ] ================================================
[2026-10-28 18:36:19,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:36:19
[2026-10-28 18:36:19,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:36:20,096.096 INFO    ] Initializing speech engine...
[2026-10-28 18:36:20,106.106 INFO    ] 2026-10-28 18:36:20
[2026-10-28 18:36:20,373.373 INFO    ] 2026-10-28 18:36:20
[2026-10-28 18:36:20,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:36:20,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:36:20,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:36:20,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:36:20,992.992 INFO    ] time= 28/10/2026 18:36:20
[2026-10-28 18:36:21,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:36:21,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:36:21,178.178 INFO    ] No existing commands found in stream
[2026-10-28 18:36:26,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:36:26,211.211 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 18:36:29,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:36:29,571.571 INFO    ] Checking for system updates...
[2026-10-28 18:36:29,607.607 INFO    ] 200
[2026-10-28 18:36:29,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:36:29,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:36:29,666.666 INFO    ] No update needed
[2026-10-28 18:36:29,669.669 INFO    ] Checking for camera pi updates...
[2026-10-28 18:36:29,703.703 INFO    ] 200
[2026-10-28 18:36:29,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:36:29,746.746 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:36:29,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:36:29,812.812 INFO    ] No camera update needed
[2026-10-28 18:36:29,815.815 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:36:29,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:36:29,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:36:29,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:36:31,868.868 INFO    ] ================================================
[2026-10-28 18:36:31,884.884 INFO    ] Launching Daemon at Wed Oct 28 18:36:31 IST 2026
[2026-10-28 18:36:31,895.895 INFO    ] ================================================
[2026-10-28 18:36:32,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:36:32
[2026-10-28 18:36:33,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:36:33,341.341 INFO    ] Initializing speech engine...
[2026-10-28 18:36:33,350.350 INFO    ] 2026-10-28 18:36:33
[2026-10-28 18:36:33,639.639 INFO    ] 2026-10-28 18:36:33
[2026-10-28 18:36:33,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:36:33,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:36:33,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:36:34,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:36:34,252.252 INFO    ] time= 28/10/2026 18:36:34
[2026-10-28 18:36:34,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:36:34,277.277 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:36:34,427.427 INFO    ] No existing commands found in stream
[2026-10-28 18:36:39,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:36:39,450.450 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-28 18:36:43,831.831 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:36:43,833.833 INFO    ] Checking for system updates...
[2026-10-28 18:36:43,869.869 INFO    ] 200
[2026-10-28 18:36:43,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:36:43,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:36:43,929.929 INFO    ] No update needed
[2026-10-28 18:36:43,931.931 INFO    ] Checking for camera pi updates...
[2026-10-28 18:36:43,965.965 INFO    ] 200
[2026-10-28 18:36:43,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:36:44,008.008 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:36:44,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:36:44,112.112 INFO    ] No camera update needed
[2026-10-28 18:36:44,115.115 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:36:44,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:36:44,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:36:44,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:36:46,168.168 INFO    ] ================================================
[2026-10-28 18:36:46,183.183 INFO    ] Launching Daemon at Wed Oct 28 18:36:46 IST 2026
[2026-10-28 18:36:46,194.194 INFO    ] ================================================
[2026-10-28 18:36:46,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:36:46
[2026-10-28 18:36:47,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:36:47,650.650 INFO    ] Initializing speech engine...
[2026-10-28 18:36:47,660.660 INFO    ] 2026-10-28 18:36:47
[2026-10-28 18:36:47,922.922 INFO    ] 2026-10-28 18:36:47
[2026-10-28 18:36:47,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:36:48,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:36:48,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:36:48,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:36:48,539.539 INFO    ] time= 28/10/2026 18:36:48
[2026-10-28 18:36:48,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:36:48,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:36:48,741.741 INFO    ] No existing commands found in stream
[2026-10-28 18:36:53,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:36:53,769.769 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-28 18:36:57,207.207 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:36:57,209.209 INFO    ] Checking for system updates...
[2026-10-28 18:36:57,245.245 INFO    ] 200
[2026-10-28 18:36:57,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:36:57,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:36:57,307.307 INFO    ] No update needed
[2026-10-28 18:36:57,309.309 INFO    ] Checking for camera pi updates...
[2026-10-28 18:36:57,343.343 INFO    ] 200
[2026-10-28 18:36:57,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:36:57,386.386 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:36:57,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:36:57,465.465 INFO    ] No camera update needed
[2026-10-28 18:36:57,468.468 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:36:57,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:36:57,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:36:57,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:36:59,522.522 INFO    ] ================================================
[2026-10-28 18:36:59,537.537 INFO    ] Launching Daemon at Wed Oct 28 18:36:59 IST 2026
[2026-10-28 18:36:59,548.548 INFO    ] ================================================
[2026-10-28 18:37:00,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:37:00
[2026-10-28 18:37:00,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:37:00,997.997 INFO    ] Initializing speech engine...
[2026-10-28 18:37:01,018.018 INFO    ] 2026-10-28 18:37:01
[2026-10-28 18:37:01,282.282 INFO    ] 2026-10-28 18:37:01
[2026-10-28 18:37:01,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:37:01,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:37:01,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:37:01,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:37:01,758.758 INFO    ] time= 28/10/2026 18:37:01
[2026-10-28 18:37:01,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:37:01,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:37:01,875.875 INFO    ] No existing commands found in stream
[2026-10-28 18:37:06,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:37:06,888.888 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-28 18:37:10,400.400 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:37:10,403.403 INFO    ] Checking for system updates...
[2026-10-28 18:37:10,438.438 INFO    ] 200
[2026-10-28 18:37:10,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:37:10,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:37:10,495.495 INFO    ] No update needed
[2026-10-28 18:37:10,498.498 INFO    ] Checking for camera pi updates...
[2026-10-28 18:37:10,530.530 INFO    ] 200
[2026-10-28 18:37:10,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:37:10,574.574 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:37:10,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:37:10,669.669 INFO    ] No camera update needed
[2026-10-28 18:37:10,671.671 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:37:10,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:37:10,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:37:10,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:37:12,724.724 INFO    ] ================================================
[2026-10-28 18:37:12,739.739 INFO    ] Launching Daemon at Wed Oct 28 18:37:12 IST 2026
[2026-10-28 18:37:12,750.750 INFO    ] ================================================
[2026-10-28 18:37:13,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:37:13
[2026-10-28 18:37:13,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:37:14,203.203 INFO    ] Initializing speech engine...
[2026-10-28 18:37:14,221.221 INFO    ] 2026-10-28 18:37:14
[2026-10-28 18:37:14,491.491 INFO    ] 2026-10-28 18:37:14
[2026-10-28 18:37:14,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:37:14,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:37:14,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:37:15,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:37:15,106.106 INFO    ] time= 28/10/2026 18:37:15
[2026-10-28 18:37:15,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:37:15,129.129 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:37:15,278.278 INFO    ] No existing commands found in stream
[2026-10-28 18:37:20,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:37:20,293.293 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-28 18:37:24,570.570 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:37:24,573.573 INFO    ] Checking for system updates...
[2026-10-28 18:37:24,609.609 INFO    ] 200
[2026-10-28 18:37:24,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:37:24,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:37:24,670.670 INFO    ] No update needed
[2026-10-28 18:37:24,672.672 INFO    ] Checking for camera pi updates...
[2026-10-28 18:37:24,705.705 INFO    ] 200
[2026-10-28 18:37:24,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:37:24,748.748 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:37:24,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:37:24,826.826 INFO    ] No camera update needed
[2026-10-28 18:37:24,828.828 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:37:24,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:37:24,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:37:24,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:37:26,880.880 INFO    ] ================================================
[2026-10-28 18:37:26,895.895 INFO    ] Launching Daemon at Wed Oct 28 18:37:26 IST 2026
[2026-10-28 18:37:26,906.906 INFO    ] ================================================
[2026-10-28 18:37:27,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:37:27
[2026-10-28 18:37:28,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:37:28,434.434 INFO    ] Initializing speech engine...
[2026-10-28 18:37:28,444.444 INFO    ] 2026-10-28 18:37:28
[2026-10-28 18:37:28,702.702 INFO    ] 2026-10-28 18:37:28
[2026-10-28 18:37:28,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:37:29,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:37:29,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:37:29,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:37:29,243.243 INFO    ] time= 28/10/2026 18:37:29
[2026-10-28 18:37:29,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:37:29,281.281 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:37:29,446.446 INFO    ] No existing commands found in stream
[2026-10-28 18:37:34,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:37:34,475.475 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 18:37:37,372.372 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:37:37,375.375 INFO    ] Checking for system updates...
[2026-10-28 18:37:37,410.410 INFO    ] 200
[2026-10-28 18:37:37,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:37:37,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:37:37,468.468 INFO    ] No update needed
[2026-10-28 18:37:37,471.471 INFO    ] Checking for camera pi updates...
[2026-10-28 18:37:37,508.508 INFO    ] 200
[2026-10-28 18:37:37,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:37:37,551.551 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:37:37,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:37:37,644.644 INFO    ] No camera update needed
[2026-10-28 18:37:37,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:37:37,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:37:37,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:37:37,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:37:39,699.699 INFO    ] ================================================
[2026-10-28 18:37:39,714.714 INFO    ] Launching Daemon at Wed Oct 28 18:37:39 IST 2026
[2026-10-28 18:37:39,725.725 INFO    ] ================================================
[2026-10-28 18:37:40,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:37:40
[2026-10-28 18:37:40,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:37:41,160.160 INFO    ] Initializing speech engine...
[2026-10-28 18:37:41,168.168 INFO    ] 2026-10-28 18:37:41
[2026-10-28 18:37:41,478.478 INFO    ] 2026-10-28 18:37:41
[2026-10-28 18:37:41,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:37:41,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:37:41,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:37:42,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:37:42,138.138 INFO    ] time= 28/10/2026 18:37:42
[2026-10-28 18:37:42,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:37:42,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:37:42,310.310 INFO    ] No existing commands found in stream
[2026-10-28 18:37:47,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:37:47,334.334 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 18:37:48,870.870 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:37:48,873.873 INFO    ] Checking for system updates...
[2026-10-28 18:37:48,910.910 INFO    ] 200
[2026-10-28 18:37:48,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:37:48,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:37:48,970.970 INFO    ] No update needed
[2026-10-28 18:37:48,973.973 INFO    ] Checking for camera pi updates...
[2026-10-28 18:37:49,009.009 INFO    ] 200
[2026-10-28 18:37:49,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:37:49,053.053 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:37:49,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:37:49,239.239 INFO    ] No camera update needed
[2026-10-28 18:37:49,241.241 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:37:49,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:37:49,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:37:49,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:37:51,298.298 INFO    ] ================================================
[2026-10-28 18:37:51,314.314 INFO    ] Launching Daemon at Wed Oct 28 18:37:51 IST 2026
[2026-10-28 18:37:51,324.324 INFO    ] ================================================
[2026-10-28 18:37:51,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:37:51
[2026-10-28 18:37:52,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:37:52,789.789 INFO    ] Initializing speech engine...
[2026-10-28 18:37:52,799.799 INFO    ] 2026-10-28 18:37:52
[2026-10-28 18:37:53,064.064 INFO    ] 2026-10-28 18:37:53
[2026-10-28 18:37:53,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:37:53,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:37:53,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:37:53,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:37:53,774.774 INFO    ] time= 28/10/2026 18:37:53
[2026-10-28 18:37:53,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:37:53,864.864 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:37:54,044.044 INFO    ] No existing commands found in stream
[2026-10-28 18:37:59,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:37:59,065.065 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-28 18:38:00,718.718 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:38:00,720.720 INFO    ] Checking for system updates...
[2026-10-28 18:38:00,757.757 INFO    ] 200
[2026-10-28 18:38:00,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:38:00,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:38:00,814.814 INFO    ] No update needed
[2026-10-28 18:38:00,816.816 INFO    ] Checking for camera pi updates...
[2026-10-28 18:38:00,850.850 INFO    ] 200
[2026-10-28 18:38:00,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:38:00,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:38:01,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:38:01,009.009 INFO    ] No camera update needed
[2026-10-28 18:38:01,013.013 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:38:01,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:38:01,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:38:01,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:38:03,069.069 INFO    ] ================================================
[2026-10-28 18:38:03,086.086 INFO    ] Launching Daemon at Wed Oct 28 18:38:03 IST 2026
[2026-10-28 18:38:03,098.098 INFO    ] ================================================
[2026-10-28 18:38:03,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:38:03
[2026-10-28 18:38:04,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:38:04,651.651 INFO    ] Initializing speech engine...
[2026-10-28 18:38:04,660.660 INFO    ] 2026-10-28 18:38:04
[2026-10-28 18:38:04,916.916 INFO    ] 2026-10-28 18:38:04
[2026-10-28 18:38:04,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:38:05,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:38:05,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:38:05,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:38:05,505.505 INFO    ] time= 28/10/2026 18:38:05
[2026-10-28 18:38:05,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:38:05,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:38:05,705.705 INFO    ] No existing commands found in stream
[2026-10-28 18:38:10,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:38:10,733.733 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 18:38:12,523.523 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:38:12,526.526 INFO    ] Checking for system updates...
[2026-10-28 18:38:12,562.562 INFO    ] 200
[2026-10-28 18:38:12,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:38:12,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:38:12,619.619 INFO    ] No update needed
[2026-10-28 18:38:12,621.621 INFO    ] Checking for camera pi updates...
[2026-10-28 18:38:12,655.655 INFO    ] 200
[2026-10-28 18:38:12,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:38:12,698.698 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:38:12,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:38:12,783.783 INFO    ] No camera update needed
[2026-10-28 18:38:12,786.786 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:38:12,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:38:12,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:38:12,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:38:14,841.841 INFO    ] ================================================
[2026-10-28 18:38:14,858.858 INFO    ] Launching Daemon at Wed Oct 28 18:38:14 IST 2026
[2026-10-28 18:38:14,869.869 INFO    ] ================================================
[2026-10-28 18:38:15,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:38:15
[2026-10-28 18:38:16,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:38:16,312.312 INFO    ] Initializing speech engine...
[2026-10-28 18:38:16,326.326 INFO    ] 2026-10-28 18:38:16
[2026-10-28 18:38:16,611.611 INFO    ] 2026-10-28 18:38:16
[2026-10-28 18:38:16,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:38:16,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:38:16,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:38:17,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:38:17,251.251 INFO    ] time= 28/10/2026 18:38:17
[2026-10-28 18:38:17,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:38:17,279.279 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:38:17,411.411 INFO    ] No existing commands found in stream
[2026-10-28 18:38:22,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:38:22,439.439 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-28 18:38:25,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:38:25,356.356 INFO    ] Checking for system updates...
[2026-10-28 18:38:25,392.392 INFO    ] 200
[2026-10-28 18:38:25,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:38:25,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:38:25,450.450 INFO    ] No update needed
[2026-10-28 18:38:25,453.453 INFO    ] Checking for camera pi updates...
[2026-10-28 18:38:25,486.486 INFO    ] 200
[2026-10-28 18:38:25,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:38:25,528.528 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:38:25,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:38:25,610.610 INFO    ] No camera update needed
[2026-10-28 18:38:25,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:38:25,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:38:25,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:38:25,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:38:27,668.668 INFO    ] ================================================
[2026-10-28 18:38:27,685.685 INFO    ] Launching Daemon at Wed Oct 28 18:38:27 IST 2026
[2026-10-28 18:38:27,695.695 INFO    ] ================================================
[2026-10-28 18:38:28,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:38:28
[2026-10-28 18:38:28,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:38:29,251.251 INFO    ] Initializing speech engine...
[2026-10-28 18:38:29,260.260 INFO    ] 2026-10-28 18:38:29
[2026-10-28 18:38:29,559.559 INFO    ] 2026-10-28 18:38:29
[2026-10-28 18:38:29,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:38:29,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:38:29,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:38:30,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:38:30,096.096 INFO    ] time= 28/10/2026 18:38:30
[2026-10-28 18:38:30,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:38:30,208.208 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:38:30,338.338 INFO    ] No existing commands found in stream
[2026-10-28 18:38:35,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:38:35,364.364 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-28 18:38:37,274.274 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:38:37,277.277 INFO    ] Checking for system updates...
[2026-10-28 18:38:37,320.320 INFO    ] 200
[2026-10-28 18:38:37,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:38:37,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:38:37,395.395 INFO    ] No update needed
[2026-10-28 18:38:37,397.397 INFO    ] Checking for camera pi updates...
[2026-10-28 18:38:37,431.431 INFO    ] 200
[2026-10-28 18:38:37,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:38:37,474.474 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:38:37,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:38:37,563.563 INFO    ] No camera update needed
[2026-10-28 18:38:37,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:38:37,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:38:37,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:38:37,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:38:39,618.618 INFO    ] ================================================
[2026-10-28 18:38:39,634.634 INFO    ] Launching Daemon at Wed Oct 28 18:38:39 IST 2026
[2026-10-28 18:38:39,645.645 INFO    ] ================================================
[2026-10-28 18:38:40,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:38:40
[2026-10-28 18:38:40,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:38:41,112.112 INFO    ] Initializing speech engine...
[2026-10-28 18:38:41,119.119 INFO    ] 2026-10-28 18:38:41
[2026-10-28 18:38:41,380.380 INFO    ] 2026-10-28 18:38:41
[2026-10-28 18:38:41,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:38:41,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:38:41,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:38:41,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:38:41,925.925 INFO    ] time= 28/10/2026 18:38:41
[2026-10-28 18:38:41,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:38:41,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:38:42,137.137 INFO    ] No existing commands found in stream
[2026-10-28 18:38:47,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:38:47,168.168 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-28 18:38:49,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:38:49,284.284 INFO    ] Checking for system updates...
[2026-10-28 18:38:49,320.320 INFO    ] 200
[2026-10-28 18:38:49,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:38:49,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:38:49,388.388 INFO    ] No update needed
[2026-10-28 18:38:49,390.390 INFO    ] Checking for camera pi updates...
[2026-10-28 18:38:49,423.423 INFO    ] 200
[2026-10-28 18:38:49,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:38:49,466.466 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:38:49,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:38:49,552.552 INFO    ] No camera update needed
[2026-10-28 18:38:49,554.554 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:38:49,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:38:49,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:38:49,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:38:51,609.609 INFO    ] ================================================
[2026-10-28 18:38:51,625.625 INFO    ] Launching Daemon at Wed Oct 28 18:38:51 IST 2026
[2026-10-28 18:38:51,636.636 INFO    ] ================================================
[2026-10-28 18:38:52,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:38:52
[2026-10-28 18:38:52,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:38:53,112.112 INFO    ] Initializing speech engine...
[2026-10-28 18:38:53,125.125 INFO    ] 2026-10-28 18:38:53
[2026-10-28 18:38:53,397.397 INFO    ] 2026-10-28 18:38:53
[2026-10-28 18:38:53,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:38:53,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:38:53,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:38:53,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:38:54,026.026 INFO    ] time= 28/10/2026 18:38:53
[2026-10-28 18:38:54,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:38:54,048.048 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:38:54,218.218 INFO    ] No existing commands found in stream
[2026-10-28 18:38:59,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:38:59,236.236 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 18:39:01,594.594 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:39:01,596.596 INFO    ] Checking for system updates...
[2026-10-28 18:39:01,636.636 INFO    ] 200
[2026-10-28 18:39:01,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:39:01,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:39:01,707.707 INFO    ] No update needed
[2026-10-28 18:39:01,711.711 INFO    ] Checking for camera pi updates...
[2026-10-28 18:39:01,800.800 INFO    ] 200
[2026-10-28 18:39:01,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:39:01,889.889 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:39:01,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:39:02,001.001 INFO    ] No camera update needed
[2026-10-28 18:39:02,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:39:02,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:39:02,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:39:02,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:39:04,072.072 INFO    ] ================================================
[2026-10-28 18:39:04,088.088 INFO    ] Launching Daemon at Wed Oct 28 18:39:04 IST 2026
[2026-10-28 18:39:04,099.099 INFO    ] ================================================
[2026-10-28 18:39:04,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:39:04
[2026-10-28 18:39:05,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:39:05,533.533 INFO    ] Initializing speech engine...
[2026-10-28 18:39:05,542.542 INFO    ] 2026-10-28 18:39:05
[2026-10-28 18:39:05,790.790 INFO    ] 2026-10-28 18:39:05
[2026-10-28 18:39:05,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:39:06,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:39:06,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:39:06,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:39:06,359.359 INFO    ] time= 28/10/2026 18:39:06
[2026-10-28 18:39:06,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:39:06,406.406 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:39:06,529.529 INFO    ] No existing commands found in stream
[2026-10-28 18:39:11,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:39:11,557.557 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-28 18:39:14,162.162 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:39:14,164.164 INFO    ] Checking for system updates...
[2026-10-28 18:39:14,200.200 INFO    ] 200
[2026-10-28 18:39:14,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:39:14,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:39:14,259.259 INFO    ] No update needed
[2026-10-28 18:39:14,262.262 INFO    ] Checking for camera pi updates...
[2026-10-28 18:39:14,295.295 INFO    ] 200
[2026-10-28 18:39:14,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:39:14,343.343 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:39:14,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:39:14,425.425 INFO    ] No camera update needed
[2026-10-28 18:39:14,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:39:14,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:39:14,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:39:14,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:39:16,480.480 INFO    ] ================================================
[2026-10-28 18:39:16,496.496 INFO    ] Launching Daemon at Wed Oct 28 18:39:16 IST 2026
[2026-10-28 18:39:16,507.507 INFO    ] ================================================
[2026-10-28 18:39:17,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:39:17
[2026-10-28 18:39:17,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:39:17,952.952 INFO    ] Initializing speech engine...
[2026-10-28 18:39:17,961.961 INFO    ] 2026-10-28 18:39:17
[2026-10-28 18:39:18,213.213 INFO    ] 2026-10-28 18:39:18
[2026-10-28 18:39:18,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:39:18,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:39:18,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:39:18,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:39:18,833.833 INFO    ] time= 28/10/2026 18:39:18
[2026-10-28 18:39:18,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:39:18,935.935 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:39:19,125.125 INFO    ] No existing commands found in stream
[2026-10-28 18:39:24,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:39:24,158.158 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 18:39:26,996.996 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:39:26,999.999 INFO    ] Checking for system updates...
[2026-10-28 18:39:27,035.035 INFO    ] 200
[2026-10-28 18:39:27,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:39:27,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:39:27,092.092 INFO    ] No update needed
[2026-10-28 18:39:27,094.094 INFO    ] Checking for camera pi updates...
[2026-10-28 18:39:27,128.128 INFO    ] 200
[2026-10-28 18:39:27,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:39:27,171.171 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:39:27,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:39:27,242.242 INFO    ] No camera update needed
[2026-10-28 18:39:27,245.245 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:39:27,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:39:27,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:39:27,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:39:29,297.297 INFO    ] ================================================
[2026-10-28 18:39:29,312.312 INFO    ] Launching Daemon at Wed Oct 28 18:39:29 IST 2026
[2026-10-28 18:39:29,323.323 INFO    ] ================================================
[2026-10-28 18:39:29,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:39:29
[2026-10-28 18:39:30,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:39:30,957.957 INFO    ] Initializing speech engine...
[2026-10-28 18:39:30,971.971 INFO    ] 2026-10-28 18:39:30
[2026-10-28 18:39:31,258.258 INFO    ] 2026-10-28 18:39:31
[2026-10-28 18:39:31,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:39:31,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:39:31,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:39:31,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:39:32,029.029 INFO    ] time= 28/10/2026 18:39:31
[2026-10-28 18:39:32,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:39:32,107.107 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:39:32,341.341 INFO    ] No existing commands found in stream
[2026-10-28 18:39:37,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:39:37,376.376 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 18:39:40,372.372 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:39:40,375.375 INFO    ] Checking for system updates...
[2026-10-28 18:39:40,412.412 INFO    ] 200
[2026-10-28 18:39:40,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:39:40,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:39:40,473.473 INFO    ] No update needed
[2026-10-28 18:39:40,476.476 INFO    ] Checking for camera pi updates...
[2026-10-28 18:39:40,511.511 INFO    ] 200
[2026-10-28 18:39:40,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:39:40,555.555 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:39:40,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:39:40,636.636 INFO    ] No camera update needed
[2026-10-28 18:39:40,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:39:40,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:39:40,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:39:40,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:39:42,696.696 INFO    ] ================================================
[2026-10-28 18:39:42,711.711 INFO    ] Launching Daemon at Wed Oct 28 18:39:42 IST 2026
[2026-10-28 18:39:42,722.722 INFO    ] ================================================
[2026-10-28 18:39:43,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:39:43
[2026-10-28 18:39:43,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:39:44,175.175 INFO    ] Initializing speech engine...
[2026-10-28 18:39:44,182.182 INFO    ] 2026-10-28 18:39:44
[2026-10-28 18:39:44,425.425 INFO    ] 2026-10-28 18:39:44
[2026-10-28 18:39:44,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:39:44,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:39:44,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:39:44,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:39:44,992.992 INFO    ] time= 28/10/2026 18:39:44
[2026-10-28 18:39:45,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:39:45,026.026 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:39:45,197.197 INFO    ] No existing commands found in stream
[2026-10-28 18:39:50,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:39:50,226.226 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-28 18:39:51,094.094 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:39:51,097.097 INFO    ] Checking for system updates...
[2026-10-28 18:39:51,136.136 INFO    ] 200
[2026-10-28 18:39:51,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:39:51,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:39:51,201.201 INFO    ] No update needed
[2026-10-28 18:39:51,203.203 INFO    ] Checking for camera pi updates...
[2026-10-28 18:39:51,241.241 INFO    ] 200
[2026-10-28 18:39:51,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:39:51,284.284 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:39:51,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:39:51,478.478 INFO    ] No camera update needed
[2026-10-28 18:39:51,481.481 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:39:51,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:39:51,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:39:51,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:39:53,534.534 INFO    ] ================================================
[2026-10-28 18:39:53,550.550 INFO    ] Launching Daemon at Wed Oct 28 18:39:53 IST 2026
[2026-10-28 18:39:53,560.560 INFO    ] ================================================
[2026-10-28 18:39:54,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:39:54
[2026-10-28 18:39:54,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:39:54,987.987 INFO    ] Initializing speech engine...
[2026-10-28 18:39:54,996.996 INFO    ] 2026-10-28 18:39:54
[2026-10-28 18:39:55,285.285 INFO    ] 2026-10-28 18:39:55
[2026-10-28 18:39:55,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:39:55,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:39:55,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:39:55,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:39:55,914.914 INFO    ] time= 28/10/2026 18:39:55
[2026-10-28 18:39:55,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:39:55,941.941 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:39:56,079.079 INFO    ] No existing commands found in stream
[2026-10-28 18:40:01,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:40:01,119.119 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-28 18:40:01,780.780 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:40:01,784.784 INFO    ] Checking for system updates...
[2026-10-28 18:40:01,824.824 INFO    ] 200
[2026-10-28 18:40:01,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:40:01,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:40:01,888.888 INFO    ] No update needed
[2026-10-28 18:40:01,891.891 INFO    ] Checking for camera pi updates...
[2026-10-28 18:40:01,959.959 INFO    ] 200
[2026-10-28 18:40:01,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:40:02,340.340 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:40:02,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:40:02,670.670 INFO    ] No camera update needed
[2026-10-28 18:40:02,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:40:02,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:40:02,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:40:02,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:40:04,754.754 INFO    ] ================================================
[2026-10-28 18:40:04,769.769 INFO    ] Launching Daemon at Wed Oct 28 18:40:04 IST 2026
[2026-10-28 18:40:04,780.780 INFO    ] ================================================
[2026-10-28 18:40:05,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:40:05
[2026-10-28 18:40:05,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:40:06,239.239 INFO    ] Initializing speech engine...
[2026-10-28 18:40:06,248.248 INFO    ] 2026-10-28 18:40:06
[2026-10-28 18:40:06,500.500 INFO    ] 2026-10-28 18:40:06
[2026-10-28 18:40:06,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:40:06,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:40:06,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:40:07,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:40:07,053.053 INFO    ] time= 28/10/2026 18:40:07
[2026-10-28 18:40:07,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:40:07,099.099 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:40:07,274.274 INFO    ] No existing commands found in stream
[2026-10-28 18:40:12,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:40:12,313.313 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-28 18:40:14,072.072 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:40:14,075.075 INFO    ] Checking for system updates...
[2026-10-28 18:40:14,113.113 INFO    ] 200
[2026-10-28 18:40:14,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:40:14,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:40:14,177.177 INFO    ] No update needed
[2026-10-28 18:40:14,179.179 INFO    ] Checking for camera pi updates...
[2026-10-28 18:40:14,216.216 INFO    ] 200
[2026-10-28 18:40:14,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:40:14,259.259 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:40:14,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:40:14,356.356 INFO    ] No camera update needed
[2026-10-28 18:40:14,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:40:14,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:40:14,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:40:14,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:40:16,411.411 INFO    ] ================================================
[2026-10-28 18:40:16,426.426 INFO    ] Launching Daemon at Wed Oct 28 18:40:16 IST 2026
[2026-10-28 18:40:16,437.437 INFO    ] ================================================
[2026-10-28 18:40:17,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:40:16
[2026-10-28 18:40:17,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:40:17,853.853 INFO    ] Initializing speech engine...
[2026-10-28 18:40:17,856.856 INFO    ] 2026-10-28 18:40:17
[2026-10-28 18:40:18,121.121 INFO    ] 2026-10-28 18:40:18
[2026-10-28 18:40:18,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:40:18,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:40:18,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:40:18,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:40:18,735.735 INFO    ] time= 28/10/2026 18:40:18
[2026-10-28 18:40:18,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:40:18,763.763 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:40:18,954.954 INFO    ] No existing commands found in stream
[2026-10-28 18:40:23,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:40:23,992.992 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-28 18:40:25,573.573 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:40:25,576.576 INFO    ] Checking for system updates...
[2026-10-28 18:40:25,611.611 INFO    ] 200
[2026-10-28 18:40:25,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:40:25,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:40:25,668.668 INFO    ] No update needed
[2026-10-28 18:40:25,671.671 INFO    ] Checking for camera pi updates...
[2026-10-28 18:40:25,705.705 INFO    ] 200
[2026-10-28 18:40:25,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:40:25,756.756 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:40:25,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:40:25,838.838 INFO    ] No camera update needed
[2026-10-28 18:40:25,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:40:25,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:40:25,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:40:25,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:40:27,895.895 INFO    ] ================================================
[2026-10-28 18:40:27,913.913 INFO    ] Launching Daemon at Wed Oct 28 18:40:27 IST 2026
[2026-10-28 18:40:27,924.924 INFO    ] ================================================
[2026-10-28 18:40:28,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:40:28
[2026-10-28 18:40:29,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:40:29,400.400 INFO    ] Initializing speech engine...
[2026-10-28 18:40:29,408.408 INFO    ] 2026-10-28 18:40:29
[2026-10-28 18:40:29,669.669 INFO    ] 2026-10-28 18:40:29
[2026-10-28 18:40:29,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:40:30,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:40:30,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:40:30,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:40:30,366.366 INFO    ] time= 28/10/2026 18:40:30
[2026-10-28 18:40:30,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:40:30,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:40:30,651.651 INFO    ] No existing commands found in stream
[2026-10-28 18:40:35,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:40:35,668.668 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-28 18:40:39,405.405 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:40:39,408.408 INFO    ] Checking for system updates...
[2026-10-28 18:40:39,443.443 INFO    ] 200
[2026-10-28 18:40:39,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:40:39,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:40:39,500.500 INFO    ] No update needed
[2026-10-28 18:40:39,503.503 INFO    ] Checking for camera pi updates...
[2026-10-28 18:40:39,539.539 INFO    ] 200
[2026-10-28 18:40:39,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:40:39,586.586 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:40:39,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:40:39,669.669 INFO    ] No camera update needed
[2026-10-28 18:40:39,671.671 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:40:39,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:40:39,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:40:39,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:40:41,725.725 INFO    ] ================================================
[2026-10-28 18:40:41,740.740 INFO    ] Launching Daemon at Wed Oct 28 18:40:41 IST 2026
[2026-10-28 18:40:41,751.751 INFO    ] ================================================
[2026-10-28 18:40:42,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:40:42
[2026-10-28 18:40:42,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:40:43,177.177 INFO    ] Initializing speech engine...
[2026-10-28 18:40:43,186.186 INFO    ] 2026-10-28 18:40:43
[2026-10-28 18:40:43,430.430 INFO    ] 2026-10-28 18:40:43
[2026-10-28 18:40:43,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:40:43,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:40:43,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:40:43,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:40:43,984.984 INFO    ] time= 28/10/2026 18:40:43
[2026-10-28 18:40:44,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:40:44,031.031 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:40:44,167.167 INFO    ] No existing commands found in stream
[2026-10-28 18:40:49,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:40:49,200.200 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 18:40:53,088.088 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:40:53,091.091 INFO    ] Checking for system updates...
[2026-10-28 18:40:53,127.127 INFO    ] 200
[2026-10-28 18:40:53,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:40:53,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:40:53,185.185 INFO    ] No update needed
[2026-10-28 18:40:53,188.188 INFO    ] Checking for camera pi updates...
[2026-10-28 18:40:53,222.222 INFO    ] 200
[2026-10-28 18:40:53,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:40:53,267.267 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:40:53,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:40:53,351.351 INFO    ] No camera update needed
[2026-10-28 18:40:53,354.354 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:40:53,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:40:53,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:40:53,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:40:55,411.411 INFO    ] ================================================
[2026-10-28 18:40:55,427.427 INFO    ] Launching Daemon at Wed Oct 28 18:40:55 IST 2026
[2026-10-28 18:40:55,437.437 INFO    ] ================================================
[2026-10-28 18:40:56,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:40:56
[2026-10-28 18:40:56,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:40:56,847.847 INFO    ] Initializing speech engine...
[2026-10-28 18:40:56,857.857 INFO    ] 2026-10-28 18:40:56
[2026-10-28 18:40:57,146.146 INFO    ] 2026-10-28 18:40:57
[2026-10-28 18:40:57,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:40:57,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:40:57,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:40:57,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:40:57,775.775 INFO    ] time= 28/10/2026 18:40:57
[2026-10-28 18:40:57,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:40:57,798.798 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:40:57,908.908 INFO    ] No existing commands found in stream
[2026-10-28 18:41:02,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:41:02,934.934 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 18:41:05,216.216 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:41:05,218.218 INFO    ] Checking for system updates...
[2026-10-28 18:41:05,254.254 INFO    ] 200
[2026-10-28 18:41:05,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:41:05,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:41:05,321.321 INFO    ] No update needed
[2026-10-28 18:41:05,324.324 INFO    ] Checking for camera pi updates...
[2026-10-28 18:41:05,357.357 INFO    ] 200
[2026-10-28 18:41:05,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:41:05,401.401 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:41:05,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:41:05,485.485 INFO    ] No camera update needed
[2026-10-28 18:41:05,487.487 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:41:05,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:41:05,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:41:05,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:41:07,541.541 INFO    ] ================================================
[2026-10-28 18:41:07,555.555 INFO    ] Launching Daemon at Wed Oct 28 18:41:07 IST 2026
[2026-10-28 18:41:07,566.566 INFO    ] ================================================
[2026-10-28 18:41:08,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:41:08
[2026-10-28 18:41:08,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:41:09,030.030 INFO    ] Initializing speech engine...
[2026-10-28 18:41:09,035.035 INFO    ] 2026-10-28 18:41:09
[2026-10-28 18:41:09,297.297 INFO    ] 2026-10-28 18:41:09
[2026-10-28 18:41:09,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:41:09,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:41:09,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:41:09,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:41:09,891.891 INFO    ] time= 28/10/2026 18:41:09
[2026-10-28 18:41:09,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:41:09,976.976 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:41:10,115.115 INFO    ] No existing commands found in stream
[2026-10-28 18:41:15,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:41:15,155.155 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-28 18:41:16,550.550 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:41:16,553.553 INFO    ] Checking for system updates...
[2026-10-28 18:41:16,589.589 INFO    ] 200
[2026-10-28 18:41:16,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:41:16,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:41:16,651.651 INFO    ] No update needed
[2026-10-28 18:41:16,653.653 INFO    ] Checking for camera pi updates...
[2026-10-28 18:41:16,690.690 INFO    ] 200
[2026-10-28 18:41:16,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:41:16,736.736 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:41:16,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:41:16,826.826 INFO    ] No camera update needed
[2026-10-28 18:41:16,828.828 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:41:16,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:41:16,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:41:16,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:41:18,881.881 INFO    ] ================================================
[2026-10-28 18:41:18,896.896 INFO    ] Launching Daemon at Wed Oct 28 18:41:18 IST 2026
[2026-10-28 18:41:18,907.907 INFO    ] ================================================
[2026-10-28 18:41:19,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:41:19
[2026-10-28 18:41:20,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:41:20,335.335 INFO    ] Initializing speech engine...
[2026-10-28 18:41:20,347.347 INFO    ] 2026-10-28 18:41:20
[2026-10-28 18:41:20,611.611 INFO    ] 2026-10-28 18:41:20
[2026-10-28 18:41:20,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:41:20,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:41:20,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:41:21,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:41:21,234.234 INFO    ] time= 28/10/2026 18:41:21
[2026-10-28 18:41:21,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:41:21,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:41:21,410.410 INFO    ] No existing commands found in stream
[2026-10-28 18:41:26,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:41:26,432.432 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-28 18:41:27,872.872 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:41:27,875.875 INFO    ] Checking for system updates...
[2026-10-28 18:41:27,910.910 INFO    ] 200
[2026-10-28 18:41:27,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:41:27,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:41:27,967.967 INFO    ] No update needed
[2026-10-28 18:41:27,969.969 INFO    ] Checking for camera pi updates...
[2026-10-28 18:41:28,002.002 INFO    ] 200
[2026-10-28 18:41:28,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:41:28,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:41:28,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:41:28,136.136 INFO    ] No camera update needed
[2026-10-28 18:41:28,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:41:28,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:41:28,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:41:28,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:41:30,196.196 INFO    ] ================================================
[2026-10-28 18:41:30,211.211 INFO    ] Launching Daemon at Wed Oct 28 18:41:30 IST 2026
[2026-10-28 18:41:30,222.222 INFO    ] ================================================
[2026-10-28 18:41:30,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:41:30
[2026-10-28 18:41:31,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:41:31,661.661 INFO    ] Initializing speech engine...
[2026-10-28 18:41:31,673.673 INFO    ] 2026-10-28 18:41:31
[2026-10-28 18:41:31,936.936 INFO    ] 2026-10-28 18:41:31
[2026-10-28 18:41:31,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:41:32,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:41:32,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:41:32,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:41:32,537.537 INFO    ] time= 28/10/2026 18:41:32
[2026-10-28 18:41:32,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:41:32,568.568 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:41:32,747.747 INFO    ] No existing commands found in stream
[2026-10-28 18:41:37,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:41:37,780.780 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-28 18:41:39,882.882 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:41:39,885.885 INFO    ] Checking for system updates...
[2026-10-28 18:41:39,924.924 INFO    ] 200
[2026-10-28 18:41:39,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:41:39,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:41:39,981.981 INFO    ] No update needed
[2026-10-28 18:41:39,984.984 INFO    ] Checking for camera pi updates...
[2026-10-28 18:41:40,017.017 INFO    ] 200
[2026-10-28 18:41:40,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:41:40,059.059 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:41:40,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:41:40,165.165 INFO    ] No camera update needed
[2026-10-28 18:41:40,167.167 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:41:40,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:41:40,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:41:40,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:41:42,220.220 INFO    ] ================================================
[2026-10-28 18:41:42,234.234 INFO    ] Launching Daemon at Wed Oct 28 18:41:42 IST 2026
[2026-10-28 18:41:42,245.245 INFO    ] ================================================
[2026-10-28 18:41:42,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:41:42
[2026-10-28 18:41:43,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:41:43,655.655 INFO    ] Initializing speech engine...
[2026-10-28 18:41:43,674.674 INFO    ] 2026-10-28 18:41:43
[2026-10-28 18:41:43,924.924 INFO    ] 2026-10-28 18:41:43
[2026-10-28 18:41:43,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:41:44,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:41:44,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:41:44,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:41:44,527.527 INFO    ] time= 28/10/2026 18:41:44
[2026-10-28 18:41:44,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:41:44,565.565 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:41:44,701.701 INFO    ] No existing commands found in stream
[2026-10-28 18:41:49,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:41:49,724.724 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-28 18:41:52,878.878 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:41:52,881.881 INFO    ] Checking for system updates...
[2026-10-28 18:41:52,919.919 INFO    ] 200
[2026-10-28 18:41:52,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:41:52,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:41:52,982.982 INFO    ] No update needed
[2026-10-28 18:41:52,984.984 INFO    ] Checking for camera pi updates...
[2026-10-28 18:41:53,020.020 INFO    ] 200
[2026-10-28 18:41:53,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:41:53,063.063 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:41:53,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:41:53,243.243 INFO    ] No camera update needed
[2026-10-28 18:41:53,246.246 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:41:53,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:41:53,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:41:53,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:41:55,302.302 INFO    ] ================================================
[2026-10-28 18:41:55,317.317 INFO    ] Launching Daemon at Wed Oct 28 18:41:55 IST 2026
[2026-10-28 18:41:55,329.329 INFO    ] ================================================
[2026-10-28 18:41:55,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:41:55
[2026-10-28 18:41:56,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:41:56,734.734 INFO    ] Initializing speech engine...
[2026-10-28 18:41:56,739.739 INFO    ] 2026-10-28 18:41:56
[2026-10-28 18:41:57,038.038 INFO    ] 2026-10-28 18:41:56
[2026-10-28 18:41:57,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:41:57,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:41:57,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:41:57,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:41:57,662.662 INFO    ] time= 28/10/2026 18:41:57
[2026-10-28 18:41:57,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:41:57,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:41:57,830.830 INFO    ] No existing commands found in stream
[2026-10-28 18:42:02,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:42:02,848.848 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 18:42:05,951.951 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:42:05,954.954 INFO    ] Checking for system updates...
[2026-10-28 18:42:05,991.991 INFO    ] 200
[2026-10-28 18:42:05,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:42:06,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:42:06,052.052 INFO    ] No update needed
[2026-10-28 18:42:06,055.055 INFO    ] Checking for camera pi updates...
[2026-10-28 18:42:06,089.089 INFO    ] 200
[2026-10-28 18:42:06,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:42:06,134.134 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:42:06,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:42:06,240.240 INFO    ] No camera update needed
[2026-10-28 18:42:06,242.242 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:42:06,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:42:06,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:42:06,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:42:08,295.295 INFO    ] ================================================
[2026-10-28 18:42:08,311.311 INFO    ] Launching Daemon at Wed Oct 28 18:42:08 IST 2026
[2026-10-28 18:42:08,322.322 INFO    ] ================================================
[2026-10-28 18:42:08,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:42:08
[2026-10-28 18:42:09,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:42:09,748.748 INFO    ] Initializing speech engine...
[2026-10-28 18:42:09,764.764 INFO    ] 2026-10-28 18:42:09
[2026-10-28 18:42:10,040.040 INFO    ] 2026-10-28 18:42:10
[2026-10-28 18:42:10,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:42:10,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:42:10,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:42:10,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:42:10,646.646 INFO    ] time= 28/10/2026 18:42:10
[2026-10-28 18:42:10,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:42:10,674.674 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:42:10,819.819 INFO    ] No existing commands found in stream
[2026-10-28 18:42:15,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:42:15,844.844 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 18:42:17,686.686 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:42:17,688.688 INFO    ] Checking for system updates...
[2026-10-28 18:42:17,724.724 INFO    ] 200
[2026-10-28 18:42:17,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:42:17,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:42:17,781.781 INFO    ] No update needed
[2026-10-28 18:42:17,783.783 INFO    ] Checking for camera pi updates...
[2026-10-28 18:42:17,816.816 INFO    ] 200
[2026-10-28 18:42:17,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:42:17,860.860 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:42:17,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:42:17,960.960 INFO    ] No camera update needed
[2026-10-28 18:42:17,962.962 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:42:17,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:42:17,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:42:17,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:42:20,015.015 INFO    ] ================================================
[2026-10-28 18:42:20,030.030 INFO    ] Launching Daemon at Wed Oct 28 18:42:20 IST 2026
[2026-10-28 18:42:20,041.041 INFO    ] ================================================
[2026-10-28 18:42:20,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:42:20
[2026-10-28 18:42:21,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:42:21,473.473 INFO    ] Initializing speech engine...
[2026-10-28 18:42:21,479.479 INFO    ] 2026-10-28 18:42:21
[2026-10-28 18:42:21,739.739 INFO    ] 2026-10-28 18:42:21
[2026-10-28 18:42:21,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:42:22,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:42:22,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:42:22,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:42:22,401.401 INFO    ] time= 28/10/2026 18:42:22
[2026-10-28 18:42:22,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:42:22,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:42:22,682.682 INFO    ] No existing commands found in stream
[2026-10-28 18:42:27,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:42:27,706.706 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 18:42:29,533.533 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:42:29,536.536 INFO    ] Checking for system updates...
[2026-10-28 18:42:29,574.574 INFO    ] 200
[2026-10-28 18:42:29,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:42:29,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:42:29,634.634 INFO    ] No update needed
[2026-10-28 18:42:29,637.637 INFO    ] Checking for camera pi updates...
[2026-10-28 18:42:29,670.670 INFO    ] 200
[2026-10-28 18:42:29,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:42:29,712.712 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:42:29,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:42:29,799.799 INFO    ] No camera update needed
[2026-10-28 18:42:29,802.802 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:42:29,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:42:29,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:42:29,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:42:31,858.858 INFO    ] ================================================
[2026-10-28 18:42:31,875.875 INFO    ] Launching Daemon at Wed Oct 28 18:42:31 IST 2026
[2026-10-28 18:42:31,894.894 INFO    ] ================================================
[2026-10-28 18:42:32,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:42:32
[2026-10-28 18:42:33,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:42:33,556.556 INFO    ] Initializing speech engine...
[2026-10-28 18:42:33,564.564 INFO    ] 2026-10-28 18:42:33
[2026-10-28 18:42:33,846.846 INFO    ] 2026-10-28 18:42:33
[2026-10-28 18:42:33,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:42:34,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:42:34,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:42:34,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:42:34,759.759 INFO    ] time= 28/10/2026 18:42:34
[2026-10-28 18:42:34,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:42:34,789.789 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:42:34,905.905 INFO    ] No existing commands found in stream
[2026-10-28 18:42:39,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:42:39,918.918 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-28 18:42:44,278.278 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:42:44,281.281 INFO    ] Checking for system updates...
[2026-10-28 18:42:44,316.316 INFO    ] 200
[2026-10-28 18:42:44,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:42:44,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:42:44,373.373 INFO    ] No update needed
[2026-10-28 18:42:44,375.375 INFO    ] Checking for camera pi updates...
[2026-10-28 18:42:44,411.411 INFO    ] 200
[2026-10-28 18:42:44,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:42:44,454.454 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:42:44,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:42:44,547.547 INFO    ] No camera update needed
[2026-10-28 18:42:44,550.550 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:42:44,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:42:44,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:42:44,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:42:46,602.602 INFO    ] ================================================
[2026-10-28 18:42:46,617.617 INFO    ] Launching Daemon at Wed Oct 28 18:42:46 IST 2026
[2026-10-28 18:42:46,628.628 INFO    ] ================================================
[2026-10-28 18:42:47,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:42:47
[2026-10-28 18:42:47,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:42:48,047.047 INFO    ] Initializing speech engine...
[2026-10-28 18:42:48,057.057 INFO    ] 2026-10-28 18:42:48
[2026-10-28 18:42:48,301.301 INFO    ] 2026-10-28 18:42:48
[2026-10-28 18:42:48,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:42:48,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:42:48,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:42:48,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:42:48,874.874 INFO    ] time= 28/10/2026 18:42:48
[2026-10-28 18:42:48,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:42:48,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:42:49,075.075 INFO    ] No existing commands found in stream
[2026-10-28 18:42:54,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:42:54,103.103 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 18:42:57,038.038 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:42:57,041.041 INFO    ] Checking for system updates...
[2026-10-28 18:42:57,079.079 INFO    ] 200
[2026-10-28 18:42:57,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:42:57,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:42:57,136.136 INFO    ] No update needed
[2026-10-28 18:42:57,139.139 INFO    ] Checking for camera pi updates...
[2026-10-28 18:42:57,173.173 INFO    ] 200
[2026-10-28 18:42:57,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:42:57,215.215 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:42:57,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:42:57,267.267 INFO    ] No camera update needed
[2026-10-28 18:42:57,270.270 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:42:57,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:42:57,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:42:57,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:42:59,323.323 INFO    ] ================================================
[2026-10-28 18:42:59,338.338 INFO    ] Launching Daemon at Wed Oct 28 18:42:59 IST 2026
[2026-10-28 18:42:59,348.348 INFO    ] ================================================
[2026-10-28 18:42:59,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:42:59
[2026-10-28 18:43:00,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:43:00,748.748 INFO    ] Initializing speech engine...
[2026-10-28 18:43:00,757.757 INFO    ] 2026-10-28 18:43:00
[2026-10-28 18:43:01,044.044 INFO    ] 2026-10-28 18:43:01
[2026-10-28 18:43:01,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:43:01,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:43:01,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:43:01,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:43:01,713.713 INFO    ] time= 28/10/2026 18:43:01
[2026-10-28 18:43:01,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:43:01,765.765 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:43:01,960.960 INFO    ] No existing commands found in stream
[2026-10-28 18:43:06,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:43:06,973.973 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-28 18:43:10,199.199 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:43:10,202.202 INFO    ] Checking for system updates...
[2026-10-28 18:43:10,240.240 INFO    ] 200
[2026-10-28 18:43:10,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:43:10,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:43:10,297.297 INFO    ] No update needed
[2026-10-28 18:43:10,300.300 INFO    ] Checking for camera pi updates...
[2026-10-28 18:43:10,333.333 INFO    ] 200
[2026-10-28 18:43:10,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:43:10,376.376 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:43:10,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:43:10,462.462 INFO    ] No camera update needed
[2026-10-28 18:43:10,465.465 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:43:10,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:43:10,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:43:10,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:43:12,518.518 INFO    ] ================================================
[2026-10-28 18:43:12,532.532 INFO    ] Launching Daemon at Wed Oct 28 18:43:12 IST 2026
[2026-10-28 18:43:12,543.543 INFO    ] ================================================
[2026-10-28 18:43:13,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:43:13
[2026-10-28 18:43:13,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:43:13,999.999 INFO    ] Initializing speech engine...
[2026-10-28 18:43:14,012.012 INFO    ] 2026-10-28 18:43:14
[2026-10-28 18:43:14,289.289 INFO    ] 2026-10-28 18:43:14
[2026-10-28 18:43:14,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:43:14,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:43:14,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:43:14,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:43:14,891.891 INFO    ] time= 28/10/2026 18:43:14
[2026-10-28 18:43:14,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:43:14,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:43:15,040.040 INFO    ] No existing commands found in stream
[2026-10-28 18:43:20,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:43:20,071.071 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 18:43:22,851.851 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:43:22,854.854 INFO    ] Checking for system updates...
[2026-10-28 18:43:22,890.890 INFO    ] 200
[2026-10-28 18:43:22,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:43:22,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:43:22,951.951 INFO    ] No update needed
[2026-10-28 18:43:22,953.953 INFO    ] Checking for camera pi updates...
[2026-10-28 18:43:22,987.987 INFO    ] 200
[2026-10-28 18:43:22,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:43:23,029.029 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:43:23,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:43:23,111.111 INFO    ] No camera update needed
[2026-10-28 18:43:23,113.113 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:43:23,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:43:23,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:43:23,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:43:25,167.167 INFO    ] ================================================
[2026-10-28 18:43:25,182.182 INFO    ] Launching Daemon at Wed Oct 28 18:43:25 IST 2026
[2026-10-28 18:43:25,192.192 INFO    ] ================================================
[2026-10-28 18:43:25,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:43:25
[2026-10-28 18:43:26,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:43:26,747.747 INFO    ] Initializing speech engine...
[2026-10-28 18:43:26,760.760 INFO    ] 2026-10-28 18:43:26
[2026-10-28 18:43:27,069.069 INFO    ] 2026-10-28 18:43:27
[2026-10-28 18:43:27,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:43:27,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:43:27,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:43:27,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:43:27,741.741 INFO    ] time= 28/10/2026 18:43:27
[2026-10-28 18:43:27,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:43:27,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:43:27,980.980 INFO    ] No existing commands found in stream
[2026-10-28 18:43:32,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:43:32,997.997 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 18:43:34,255.255 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:43:34,258.258 INFO    ] Checking for system updates...
[2026-10-28 18:43:34,294.294 INFO    ] 200
[2026-10-28 18:43:34,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:43:34,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:43:34,353.353 INFO    ] No update needed
[2026-10-28 18:43:34,356.356 INFO    ] Checking for camera pi updates...
[2026-10-28 18:43:34,390.390 INFO    ] 200
[2026-10-28 18:43:34,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:43:34,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:43:34,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:43:34,525.525 INFO    ] No camera update needed
[2026-10-28 18:43:34,527.527 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:43:34,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:43:34,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:43:34,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:43:36,582.582 INFO    ] ================================================
[2026-10-28 18:43:36,597.597 INFO    ] Launching Daemon at Wed Oct 28 18:43:36 IST 2026
[2026-10-28 18:43:36,608.608 INFO    ] ================================================
[2026-10-28 18:43:37,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:43:37
[2026-10-28 18:43:37,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:43:38,030.030 INFO    ] Initializing speech engine...
[2026-10-28 18:43:38,041.041 INFO    ] 2026-10-28 18:43:38
[2026-10-28 18:43:38,286.286 INFO    ] 2026-10-28 18:43:38
[2026-10-28 18:43:38,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:43:38,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:43:38,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:43:38,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:43:38,997.997 INFO    ] time= 28/10/2026 18:43:38
[2026-10-28 18:43:39,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:43:39,082.082 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:43:39,296.296 INFO    ] No existing commands found in stream
[2026-10-28 18:43:44,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:43:44,317.317 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-28 18:43:47,449.449 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:43:47,451.451 INFO    ] Checking for system updates...
[2026-10-28 18:43:47,489.489 INFO    ] 200
[2026-10-28 18:43:47,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:43:47,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:43:47,551.551 INFO    ] No update needed
[2026-10-28 18:43:47,553.553 INFO    ] Checking for camera pi updates...
[2026-10-28 18:43:47,589.589 INFO    ] 200
[2026-10-28 18:43:47,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:43:47,636.636 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:43:47,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:43:47,724.724 INFO    ] No camera update needed
[2026-10-28 18:43:47,727.727 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:43:47,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:43:47,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:43:47,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:43:49,780.780 INFO    ] ================================================
[2026-10-28 18:43:49,795.795 INFO    ] Launching Daemon at Wed Oct 28 18:43:49 IST 2026
[2026-10-28 18:43:49,805.805 INFO    ] ================================================
[2026-10-28 18:43:50,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:43:50
[2026-10-28 18:43:51,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:43:51,366.366 INFO    ] Initializing speech engine...
[2026-10-28 18:43:51,374.374 INFO    ] 2026-10-28 18:43:51
[2026-10-28 18:43:51,656.656 INFO    ] 2026-10-28 18:43:51
[2026-10-28 18:43:51,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:43:52,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:43:52,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:43:52,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:43:52,423.423 INFO    ] time= 28/10/2026 18:43:52
[2026-10-28 18:43:52,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:43:52,512.512 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:43:52,745.745 INFO    ] No existing commands found in stream
[2026-10-28 18:43:57,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:43:57,774.774 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-28 18:43:59,914.914 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:43:59,917.917 INFO    ] Checking for system updates...
[2026-10-28 18:43:59,954.954 INFO    ] 200
[2026-10-28 18:43:59,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:44:00,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:44:00,014.014 INFO    ] No update needed
[2026-10-28 18:44:00,016.016 INFO    ] Checking for camera pi updates...
[2026-10-28 18:44:00,055.055 INFO    ] 200
[2026-10-28 18:44:00,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:44:00,111.111 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:44:00,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:44:00,317.317 INFO    ] No camera update needed
[2026-10-28 18:44:00,320.320 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:44:00,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:44:00,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:44:00,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:44:02,389.389 INFO    ] ================================================
[2026-10-28 18:44:02,414.414 INFO    ] Launching Daemon at Wed Oct 28 18:44:02 IST 2026
[2026-10-28 18:44:02,432.432 INFO    ] ================================================
[2026-10-28 18:44:03,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:44:03
[2026-10-28 18:44:03,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:44:03,929.929 INFO    ] Initializing speech engine...
[2026-10-28 18:44:03,944.944 INFO    ] 2026-10-28 18:44:03
[2026-10-28 18:44:04,219.219 INFO    ] 2026-10-28 18:44:04
[2026-10-28 18:44:04,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:44:04,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:44:04,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:44:05,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:44:05,043.043 INFO    ] time= 28/10/2026 18:44:05
[2026-10-28 18:44:05,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:44:05,162.162 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:44:05,337.337 INFO    ] No existing commands found in stream
[2026-10-28 18:44:10,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:44:10,356.356 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 18:44:12,533.533 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:44:12,536.536 INFO    ] Checking for system updates...
[2026-10-28 18:44:12,574.574 INFO    ] 200
[2026-10-28 18:44:12,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:44:12,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:44:12,633.633 INFO    ] No update needed
[2026-10-28 18:44:12,636.636 INFO    ] Checking for camera pi updates...
[2026-10-28 18:44:12,671.671 INFO    ] 200
[2026-10-28 18:44:12,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:44:12,720.720 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:44:12,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:44:12,805.805 INFO    ] No camera update needed
[2026-10-28 18:44:12,808.808 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:44:12,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:44:12,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:44:12,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:44:14,864.864 INFO    ] ================================================
[2026-10-28 18:44:14,879.879 INFO    ] Launching Daemon at Wed Oct 28 18:44:14 IST 2026
[2026-10-28 18:44:14,890.890 INFO    ] ================================================
[2026-10-28 18:44:15,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:44:15
[2026-10-28 18:44:16,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:44:16,293.293 INFO    ] Initializing speech engine...
[2026-10-28 18:44:16,309.309 INFO    ] 2026-10-28 18:44:16
[2026-10-28 18:44:16,588.588 INFO    ] 2026-10-28 18:44:16
[2026-10-28 18:44:16,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:44:16,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:44:16,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:44:17,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:44:17,180.180 INFO    ] time= 28/10/2026 18:44:17
[2026-10-28 18:44:17,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:44:17,195.195 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:44:17,354.354 INFO    ] No existing commands found in stream
[2026-10-28 18:44:22,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:44:22,387.387 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-28 18:44:24,954.954 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:44:24,957.957 INFO    ] Checking for system updates...
[2026-10-28 18:44:24,996.996 INFO    ] 200
[2026-10-28 18:44:24,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:44:25,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:44:25,059.059 INFO    ] No update needed
[2026-10-28 18:44:25,061.061 INFO    ] Checking for camera pi updates...
[2026-10-28 18:44:25,098.098 INFO    ] 200
[2026-10-28 18:44:25,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:44:25,140.140 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:44:25,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:44:25,241.241 INFO    ] No camera update needed
[2026-10-28 18:44:25,243.243 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:44:25,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:44:25,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:44:25,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:44:27,295.295 INFO    ] ================================================
[2026-10-28 18:44:27,310.310 INFO    ] Launching Daemon at Wed Oct 28 18:44:27 IST 2026
[2026-10-28 18:44:27,321.321 INFO    ] ================================================
[2026-10-28 18:44:27,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:44:27
[2026-10-28 18:44:28,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:44:28,736.736 INFO    ] Initializing speech engine...
[2026-10-28 18:44:28,744.744 INFO    ] 2026-10-28 18:44:28
[2026-10-28 18:44:28,989.989 INFO    ] 2026-10-28 18:44:28
[2026-10-28 18:44:29,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:44:29,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:44:29,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:44:29,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:44:29,668.668 INFO    ] time= 28/10/2026 18:44:29
[2026-10-28 18:44:29,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:44:29,685.685 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:44:29,852.852 INFO    ] No existing commands found in stream
[2026-10-28 18:44:34,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:44:34,890.890 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-28 18:44:38,172.172 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:44:38,175.175 INFO    ] Checking for system updates...
[2026-10-28 18:44:38,215.215 INFO    ] 200
[2026-10-28 18:44:38,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:44:38,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:44:38,278.278 INFO    ] No update needed
[2026-10-28 18:44:38,280.280 INFO    ] Checking for camera pi updates...
[2026-10-28 18:44:38,314.314 INFO    ] 200
[2026-10-28 18:44:38,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:44:38,356.356 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:44:38,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:44:38,440.440 INFO    ] No camera update needed
[2026-10-28 18:44:38,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:44:38,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:44:38,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:44:38,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:44:40,494.494 INFO    ] ================================================
[2026-10-28 18:44:40,510.510 INFO    ] Launching Daemon at Wed Oct 28 18:44:40 IST 2026
[2026-10-28 18:44:40,521.521 INFO    ] ================================================
[2026-10-28 18:44:41,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:44:41
[2026-10-28 18:44:41,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:44:41,920.920 INFO    ] Initializing speech engine...
[2026-10-28 18:44:41,935.935 INFO    ] 2026-10-28 18:44:41
[2026-10-28 18:44:42,195.195 INFO    ] 2026-10-28 18:44:42
[2026-10-28 18:44:42,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:44:42,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:44:42,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:44:42,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:44:42,749.749 INFO    ] time= 28/10/2026 18:44:42
[2026-10-28 18:44:42,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:44:42,795.795 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:44:42,926.926 INFO    ] No existing commands found in stream
[2026-10-28 18:44:47,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:44:47,959.959 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-28 18:44:52,712.712 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:44:52,715.715 INFO    ] Checking for system updates...
[2026-10-28 18:44:52,752.752 INFO    ] 200
[2026-10-28 18:44:52,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:44:52,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:44:52,812.812 INFO    ] No update needed
[2026-10-28 18:44:52,815.815 INFO    ] Checking for camera pi updates...
[2026-10-28 18:44:52,850.850 INFO    ] 200
[2026-10-28 18:44:52,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:44:52,895.895 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:44:53,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:44:53,003.003 INFO    ] No camera update needed
[2026-10-28 18:44:53,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:44:53,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:44:53,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:44:53,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:44:55,067.067 INFO    ] ================================================
[2026-10-28 18:44:55,083.083 INFO    ] Launching Daemon at Wed Oct 28 18:44:55 IST 2026
[2026-10-28 18:44:55,095.095 INFO    ] ================================================
[2026-10-28 18:44:55,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:44:55
[2026-10-28 18:44:56,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:44:56,491.491 INFO    ] Initializing speech engine...
[2026-10-28 18:44:56,504.504 INFO    ] 2026-10-28 18:44:56
[2026-10-28 18:44:56,765.765 INFO    ] 2026-10-28 18:44:56
[2026-10-28 18:44:56,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:44:57,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:44:57,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:44:57,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:44:57,316.316 INFO    ] time= 28/10/2026 18:44:57
[2026-10-28 18:44:57,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:44:57,356.356 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:44:57,470.470 INFO    ] No existing commands found in stream
[2026-10-28 18:45:02,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:45:02,499.499 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-28 18:45:07,232.232 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:45:07,234.234 INFO    ] Checking for system updates...
[2026-10-28 18:45:07,271.271 INFO    ] 200
[2026-10-28 18:45:07,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:45:07,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:45:07,339.339 INFO    ] No update needed
[2026-10-28 18:45:07,341.341 INFO    ] Checking for camera pi updates...
[2026-10-28 18:45:07,377.377 INFO    ] 200
[2026-10-28 18:45:07,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:45:07,426.426 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:45:07,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:45:07,510.510 INFO    ] No camera update needed
[2026-10-28 18:45:07,513.513 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:45:07,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:45:07,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:45:07,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:45:09,570.570 INFO    ] ================================================
[2026-10-28 18:45:09,587.587 INFO    ] Launching Daemon at Wed Oct 28 18:45:09 IST 2026
[2026-10-28 18:45:09,599.599 INFO    ] ================================================
[2026-10-28 18:45:10,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:45:10
[2026-10-28 18:45:10,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:45:11,021.021 INFO    ] Initializing speech engine...
[2026-10-28 18:45:11,030.030 INFO    ] 2026-10-28 18:45:11
[2026-10-28 18:45:11,276.276 INFO    ] 2026-10-28 18:45:11
[2026-10-28 18:45:11,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:45:11,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:45:11,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:45:11,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:45:12,032.032 INFO    ] time= 28/10/2026 18:45:11
[2026-10-28 18:45:12,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:45:12,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:45:12,276.276 INFO    ] No existing commands found in stream
[2026-10-28 18:45:17,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:45:17,292.292 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-28 18:45:21,720.720 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:45:21,722.722 INFO    ] Checking for system updates...
[2026-10-28 18:45:21,762.762 INFO    ] 200
[2026-10-28 18:45:21,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:45:21,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:45:21,821.821 INFO    ] No update needed
[2026-10-28 18:45:21,824.824 INFO    ] Checking for camera pi updates...
[2026-10-28 18:45:21,863.863 INFO    ] 200
[2026-10-28 18:45:21,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:45:21,918.918 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:45:22,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:45:22,010.010 INFO    ] No camera update needed
[2026-10-28 18:45:22,013.013 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:45:22,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:45:22,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:45:22,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:45:24,068.068 INFO    ] ================================================
[2026-10-28 18:45:24,084.084 INFO    ] Launching Daemon at Wed Oct 28 18:45:24 IST 2026
[2026-10-28 18:45:24,095.095 INFO    ] ================================================
[2026-10-28 18:45:24,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:45:24
[2026-10-28 18:45:25,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:45:25,722.722 INFO    ] Initializing speech engine...
[2026-10-28 18:45:25,743.743 INFO    ] 2026-10-28 18:45:25
[2026-10-28 18:45:26,012.012 INFO    ] 2026-10-28 18:45:25
[2026-10-28 18:45:26,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:45:26,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:45:26,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:45:26,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:45:26,652.652 INFO    ] time= 28/10/2026 18:45:26
[2026-10-28 18:45:26,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:45:26,675.675 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:45:26,822.822 INFO    ] No existing commands found in stream
[2026-10-28 18:45:31,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:45:31,838.838 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-28 18:45:36,218.218 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:45:36,221.221 INFO    ] Checking for system updates...
[2026-10-28 18:45:36,257.257 INFO    ] 200
[2026-10-28 18:45:36,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:45:36,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:45:36,314.314 INFO    ] No update needed
[2026-10-28 18:45:36,316.316 INFO    ] Checking for camera pi updates...
[2026-10-28 18:45:36,355.355 INFO    ] 200
[2026-10-28 18:45:36,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:45:36,398.398 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:45:36,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:45:36,482.482 INFO    ] No camera update needed
[2026-10-28 18:45:36,485.485 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:45:36,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:45:36,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:45:36,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:45:38,539.539 INFO    ] ================================================
[2026-10-28 18:45:38,554.554 INFO    ] Launching Daemon at Wed Oct 28 18:45:38 IST 2026
[2026-10-28 18:45:38,565.565 INFO    ] ================================================
[2026-10-28 18:45:39,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:45:39
[2026-10-28 18:45:39,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:45:40,199.199 INFO    ] Initializing speech engine...
[2026-10-28 18:45:40,211.211 INFO    ] 2026-10-28 18:45:40
[2026-10-28 18:45:40,493.493 INFO    ] 2026-10-28 18:45:40
[2026-10-28 18:45:40,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:45:40,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:45:40,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:45:41,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:45:41,079.079 INFO    ] time= 28/10/2026 18:45:41
[2026-10-28 18:45:41,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:45:41,155.155 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:45:41,292.292 INFO    ] No existing commands found in stream
[2026-10-28 18:45:46,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:45:46,335.335 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 18:45:47,371.371 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:45:47,375.375 INFO    ] Checking for system updates...
[2026-10-28 18:45:47,416.416 INFO    ] 200
[2026-10-28 18:45:47,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:45:47,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:45:47,475.475 INFO    ] No update needed
[2026-10-28 18:45:47,478.478 INFO    ] Checking for camera pi updates...
[2026-10-28 18:45:47,513.513 INFO    ] 200
[2026-10-28 18:45:47,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:45:47,558.558 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:45:47,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:45:47,646.646 INFO    ] No camera update needed
[2026-10-28 18:45:47,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:45:47,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:45:47,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:45:47,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:45:49,707.707 INFO    ] ================================================
[2026-10-28 18:45:49,722.722 INFO    ] Launching Daemon at Wed Oct 28 18:45:49 IST 2026
[2026-10-28 18:45:49,734.734 INFO    ] ================================================
[2026-10-28 18:45:50,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:45:50
[2026-10-28 18:45:51,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:45:51,383.383 INFO    ] Initializing speech engine...
[2026-10-28 18:45:51,389.389 INFO    ] 2026-10-28 18:45:51
[2026-10-28 18:45:51,697.697 INFO    ] 2026-10-28 18:45:51
[2026-10-28 18:45:51,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:45:52,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:45:52,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:45:52,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:45:52,457.457 INFO    ] time= 28/10/2026 18:45:52
[2026-10-28 18:45:52,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:45:52,564.564 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:45:52,761.761 INFO    ] No existing commands found in stream
[2026-10-28 18:45:57,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:45:57,786.786 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-28 18:46:00,060.060 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:46:00,064.064 INFO    ] Checking for system updates...
[2026-10-28 18:46:00,101.101 INFO    ] 200
[2026-10-28 18:46:00,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:46:00,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:46:00,168.168 INFO    ] No update needed
[2026-10-28 18:46:00,174.174 INFO    ] Checking for camera pi updates...
[2026-10-28 18:46:00,208.208 INFO    ] 200
[2026-10-28 18:46:00,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:46:00,256.256 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:46:00,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:46:00,360.360 INFO    ] No camera update needed
[2026-10-28 18:46:00,363.363 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:46:00,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:46:00,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:46:00,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:46:02,421.421 INFO    ] ================================================
[2026-10-28 18:46:02,443.443 INFO    ] Launching Daemon at Wed Oct 28 18:46:02 IST 2026
[2026-10-28 18:46:02,457.457 INFO    ] ================================================
[2026-10-28 18:46:03,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:46:03
[2026-10-28 18:46:03,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:46:04,033.033 INFO    ] Initializing speech engine...
[2026-10-28 18:46:04,041.041 INFO    ] 2026-10-28 18:46:04
[2026-10-28 18:46:04,317.317 INFO    ] 2026-10-28 18:46:04
[2026-10-28 18:46:04,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:46:04,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:46:04,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:46:04,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:46:04,853.853 INFO    ] time= 28/10/2026 18:46:04
[2026-10-28 18:46:04,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:46:04,896.896 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:46:05,046.046 INFO    ] No existing commands found in stream
[2026-10-28 18:46:10,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:46:10,068.068 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 18:46:12,949.949 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:46:12,952.952 INFO    ] Checking for system updates...
[2026-10-28 18:46:12,989.989 INFO    ] 200
[2026-10-28 18:46:12,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:46:13,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:46:13,054.054 INFO    ] No update needed
[2026-10-28 18:46:13,057.057 INFO    ] Checking for camera pi updates...
[2026-10-28 18:46:13,095.095 INFO    ] 200
[2026-10-28 18:46:13,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:46:13,139.139 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:46:13,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:46:13,215.215 INFO    ] No camera update needed
[2026-10-28 18:46:13,218.218 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:46:13,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:46:13,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:46:13,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:46:15,278.278 INFO    ] ================================================
[2026-10-28 18:46:15,293.293 INFO    ] Launching Daemon at Wed Oct 28 18:46:15 IST 2026
[2026-10-28 18:46:15,305.305 INFO    ] ================================================
[2026-10-28 18:46:15,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:46:15
[2026-10-28 18:46:16,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:46:16,936.936 INFO    ] Initializing speech engine...
[2026-10-28 18:46:16,947.947 INFO    ] 2026-10-28 18:46:16
[2026-10-28 18:46:17,227.227 INFO    ] 2026-10-28 18:46:17
[2026-10-28 18:46:17,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:46:17,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:46:17,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:46:17,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:46:17,951.951 INFO    ] time= 28/10/2026 18:46:17
[2026-10-28 18:46:18,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:46:18,037.037 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:46:18,224.224 INFO    ] No existing commands found in stream
[2026-10-28 18:46:23,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:46:23,238.238 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-10-28 18:46:31,924.924 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:46:31,928.928 INFO    ] Checking for system updates...
[2026-10-28 18:46:31,979.979 INFO    ] 200
[2026-10-28 18:46:31,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:46:32,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:46:32,055.055 INFO    ] No update needed
[2026-10-28 18:46:32,058.058 INFO    ] Checking for camera pi updates...
[2026-10-28 18:46:32,101.101 INFO    ] 200
[2026-10-28 18:46:32,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:46:32,151.151 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:46:32,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:46:32,241.241 INFO    ] No camera update needed
[2026-10-28 18:46:32,244.244 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:46:32,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:46:32,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:46:32,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:46:34,303.303 INFO    ] ================================================
[2026-10-28 18:46:34,318.318 INFO    ] Launching Daemon at Wed Oct 28 18:46:34 IST 2026
[2026-10-28 18:46:34,330.330 INFO    ] ================================================
[2026-10-28 18:46:34,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:46:34
[2026-10-28 18:46:35,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:46:35,792.792 INFO    ] Initializing speech engine...
[2026-10-28 18:46:35,805.805 INFO    ] 2026-10-28 18:46:35
[2026-10-28 18:46:36,091.091 INFO    ] 2026-10-28 18:46:36
[2026-10-28 18:46:36,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:46:36,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:46:36,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:46:37,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:46:37,023.023 INFO    ] time= 28/10/2026 18:46:37
[2026-10-28 18:46:37,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:46:37,133.133 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:46:37,247.247 INFO    ] No existing commands found in stream
[2026-10-28 18:46:42,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:46:42,262.262 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 18:46:43,973.973 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:46:43,976.976 INFO    ] Checking for system updates...
[2026-10-28 18:46:44,015.015 INFO    ] 200
[2026-10-28 18:46:44,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:46:44,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:46:44,074.074 INFO    ] No update needed
[2026-10-28 18:46:44,076.076 INFO    ] Checking for camera pi updates...
[2026-10-28 18:46:44,110.110 INFO    ] 200
[2026-10-28 18:46:44,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:46:44,153.153 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:46:44,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:46:44,236.236 INFO    ] No camera update needed
[2026-10-28 18:46:44,238.238 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:46:44,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:46:44,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:46:44,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:46:46,292.292 INFO    ] ================================================
[2026-10-28 18:46:46,308.308 INFO    ] Launching Daemon at Wed Oct 28 18:46:46 IST 2026
[2026-10-28 18:46:46,319.319 INFO    ] ================================================
[2026-10-28 18:46:46,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:46:46
[2026-10-28 18:46:47,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:46:47,768.768 INFO    ] Initializing speech engine...
[2026-10-28 18:46:47,779.779 INFO    ] 2026-10-28 18:46:47
[2026-10-28 18:46:48,029.029 INFO    ] 2026-10-28 18:46:48
[2026-10-28 18:46:48,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:46:48,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:46:48,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:46:48,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:46:48,577.577 INFO    ] time= 28/10/2026 18:46:48
[2026-10-28 18:46:48,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:46:48,611.611 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:46:48,753.753 INFO    ] No existing commands found in stream
[2026-10-28 18:46:53,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:46:53,786.786 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-28 18:46:57,486.486 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:46:57,489.489 INFO    ] Checking for system updates...
[2026-10-28 18:46:57,530.530 INFO    ] 200
[2026-10-28 18:46:57,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:46:57,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:46:57,590.590 INFO    ] No update needed
[2026-10-28 18:46:57,593.593 INFO    ] Checking for camera pi updates...
[2026-10-28 18:46:57,631.631 INFO    ] 200
[2026-10-28 18:46:57,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:46:57,676.676 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:46:57,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:46:57,767.767 INFO    ] No camera update needed
[2026-10-28 18:46:57,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:46:57,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:46:57,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:46:57,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:46:59,827.827 INFO    ] ================================================
[2026-10-28 18:46:59,842.842 INFO    ] Launching Daemon at Wed Oct 28 18:46:59 IST 2026
[2026-10-28 18:46:59,854.854 INFO    ] ================================================
[2026-10-28 18:47:00,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:47:00
[2026-10-28 18:47:01,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:47:01,265.265 INFO    ] Initializing speech engine...
[2026-10-28 18:47:01,273.273 INFO    ] 2026-10-28 18:47:01
[2026-10-28 18:47:01,572.572 INFO    ] 2026-10-28 18:47:01
[2026-10-28 18:47:01,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:47:01,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:47:01,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:47:02,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:47:02,166.166 INFO    ] time= 28/10/2026 18:47:02
[2026-10-28 18:47:02,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:47:02,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:47:02,289.289 INFO    ] No existing commands found in stream
[2026-10-28 18:47:07,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:47:07,304.304 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 18:47:11,352.352 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:47:11,354.354 INFO    ] Checking for system updates...
[2026-10-28 18:47:11,390.390 INFO    ] 200
[2026-10-28 18:47:11,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:47:11,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:47:11,448.448 INFO    ] No update needed
[2026-10-28 18:47:11,450.450 INFO    ] Checking for camera pi updates...
[2026-10-28 18:47:11,484.484 INFO    ] 200
[2026-10-28 18:47:11,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:47:11,526.526 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:47:11,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:47:11,608.608 INFO    ] No camera update needed
[2026-10-28 18:47:11,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:47:11,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:47:11,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:47:11,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:47:13,664.664 INFO    ] ================================================
[2026-10-28 18:47:13,679.679 INFO    ] Launching Daemon at Wed Oct 28 18:47:13 IST 2026
[2026-10-28 18:47:13,690.690 INFO    ] ================================================
[2026-10-28 18:47:14,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:47:14
[2026-10-28 18:47:14,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:47:15,117.117 INFO    ] Initializing speech engine...
[2026-10-28 18:47:15,127.127 INFO    ] 2026-10-28 18:47:15
[2026-10-28 18:47:15,382.382 INFO    ] 2026-10-28 18:47:15
[2026-10-28 18:47:15,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:47:15,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:47:15,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:47:15,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:47:15,972.972 INFO    ] time= 28/10/2026 18:47:15
[2026-10-28 18:47:15,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:47:15,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:47:16,163.163 INFO    ] No existing commands found in stream
[2026-10-28 18:47:21,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:47:21,190.190 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-28 18:47:22,431.431 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:47:22,433.433 INFO    ] Checking for system updates...
[2026-10-28 18:47:22,472.472 INFO    ] 200
[2026-10-28 18:47:22,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:47:22,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:47:22,530.530 INFO    ] No update needed
[2026-10-28 18:47:22,532.532 INFO    ] Checking for camera pi updates...
[2026-10-28 18:47:22,569.569 INFO    ] 200
[2026-10-28 18:47:22,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:47:22,613.613 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:47:22,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:47:22,704.704 INFO    ] No camera update needed
[2026-10-28 18:47:22,706.706 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:47:22,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:47:22,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:47:22,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:47:24,759.759 INFO    ] ================================================
[2026-10-28 18:47:24,775.775 INFO    ] Launching Daemon at Wed Oct 28 18:47:24 IST 2026
[2026-10-28 18:47:24,786.786 INFO    ] ================================================
[2026-10-28 18:47:25,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:47:25
[2026-10-28 18:47:25,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:47:26,274.274 INFO    ] Initializing speech engine...
[2026-10-28 18:47:26,279.279 INFO    ] 2026-10-28 18:47:26
[2026-10-28 18:47:26,528.528 INFO    ] 2026-10-28 18:47:26
[2026-10-28 18:47:26,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:47:26,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:47:27,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:47:27,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:47:27,339.339 INFO    ] time= 28/10/2026 18:47:27
[2026-10-28 18:47:27,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:47:27,431.431 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:47:27,596.596 INFO    ] No existing commands found in stream
[2026-10-28 18:47:32,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:47:32,614.614 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 18:47:35,509.509 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:47:35,512.512 INFO    ] Checking for system updates...
[2026-10-28 18:47:35,549.549 INFO    ] 200
[2026-10-28 18:47:35,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:47:35,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:47:35,606.606 INFO    ] No update needed
[2026-10-28 18:47:35,608.608 INFO    ] Checking for camera pi updates...
[2026-10-28 18:47:35,641.641 INFO    ] 200
[2026-10-28 18:47:35,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:47:35,684.684 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:47:35,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:47:35,765.765 INFO    ] No camera update needed
[2026-10-28 18:47:35,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:47:35,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:47:35,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:47:35,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:47:37,821.821 INFO    ] ================================================
[2026-10-28 18:47:37,837.837 INFO    ] Launching Daemon at Wed Oct 28 18:47:37 IST 2026
[2026-10-28 18:47:37,848.848 INFO    ] ================================================
[2026-10-28 18:47:38,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:47:38
[2026-10-28 18:47:38,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:47:39,265.265 INFO    ] Initializing speech engine...
[2026-10-28 18:47:39,275.275 INFO    ] 2026-10-28 18:47:39
[2026-10-28 18:47:39,519.519 INFO    ] 2026-10-28 18:47:39
[2026-10-28 18:47:39,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:47:39,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:47:39,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:47:40,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:47:40,122.122 INFO    ] time= 28/10/2026 18:47:40
[2026-10-28 18:47:40,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:47:40,200.200 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:47:40,349.349 INFO    ] No existing commands found in stream
[2026-10-28 18:47:45,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:47:45,382.382 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-28 18:47:46,839.839 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:47:46,842.842 INFO    ] Checking for system updates...
[2026-10-28 18:47:46,878.878 INFO    ] 200
[2026-10-28 18:47:46,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:47:46,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:47:46,935.935 INFO    ] No update needed
[2026-10-28 18:47:46,938.938 INFO    ] Checking for camera pi updates...
[2026-10-28 18:47:46,972.972 INFO    ] 200
[2026-10-28 18:47:46,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:47:47,015.015 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:47:47,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:47:47,102.102 INFO    ] No camera update needed
[2026-10-28 18:47:47,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:47:47,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:47:47,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:47:47,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:47:49,158.158 INFO    ] ================================================
[2026-10-28 18:47:49,174.174 INFO    ] Launching Daemon at Wed Oct 28 18:47:49 IST 2026
[2026-10-28 18:47:49,185.185 INFO    ] ================================================
[2026-10-28 18:47:49,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:47:49
[2026-10-28 18:47:50,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:47:50,749.749 INFO    ] Initializing speech engine...
[2026-10-28 18:47:50,755.755 INFO    ] 2026-10-28 18:47:50
[2026-10-28 18:47:51,012.012 INFO    ] 2026-10-28 18:47:51
[2026-10-28 18:47:51,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:47:51,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:47:51,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:47:51,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:47:51,599.599 INFO    ] time= 28/10/2026 18:47:51
[2026-10-28 18:47:51,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:47:51,621.621 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:47:51,795.795 INFO    ] No existing commands found in stream
[2026-10-28 18:47:56,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:47:56,816.816 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 18:48:00,612.612 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:48:00,615.615 INFO    ] Checking for system updates...
[2026-10-28 18:48:00,657.657 INFO    ] 200
[2026-10-28 18:48:00,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:48:00,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:48:00,725.725 INFO    ] No update needed
[2026-10-28 18:48:00,728.728 INFO    ] Checking for camera pi updates...
[2026-10-28 18:48:00,761.761 INFO    ] 200
[2026-10-28 18:48:00,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:48:00,810.810 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:48:00,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:48:00,892.892 INFO    ] No camera update needed
[2026-10-28 18:48:00,895.895 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:48:00,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:48:00,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:48:00,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:48:02,956.956 INFO    ] ================================================
[2026-10-28 18:48:02,971.971 INFO    ] Launching Daemon at Wed Oct 28 18:48:02 IST 2026
[2026-10-28 18:48:02,983.983 INFO    ] ================================================
[2026-10-28 18:48:03,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:48:03
[2026-10-28 18:48:04,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:48:04,605.605 INFO    ] Initializing speech engine...
[2026-10-28 18:48:04,613.613 INFO    ] 2026-10-28 18:48:04
[2026-10-28 18:48:04,887.887 INFO    ] 2026-10-28 18:48:04
[2026-10-28 18:48:04,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:48:05,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:48:05,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:48:05,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:48:05,452.452 INFO    ] time= 28/10/2026 18:48:05
[2026-10-28 18:48:05,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:48:05,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:48:05,600.600 INFO    ] No existing commands found in stream
[2026-10-28 18:48:10,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:48:10,633.633 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 18:48:13,811.811 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:48:13,814.814 INFO    ] Checking for system updates...
[2026-10-28 18:48:13,851.851 INFO    ] 200
[2026-10-28 18:48:13,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:48:13,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:48:13,909.909 INFO    ] No update needed
[2026-10-28 18:48:13,911.911 INFO    ] Checking for camera pi updates...
[2026-10-28 18:48:13,950.950 INFO    ] 200
[2026-10-28 18:48:13,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:48:13,993.993 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:48:14,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:48:14,173.173 INFO    ] No camera update needed
[2026-10-28 18:48:14,175.175 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:48:14,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:48:14,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:48:14,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:48:16,228.228 INFO    ] ================================================
[2026-10-28 18:48:16,243.243 INFO    ] Launching Daemon at Wed Oct 28 18:48:16 IST 2026
[2026-10-28 18:48:16,255.255 INFO    ] ================================================
[2026-10-28 18:48:16,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:48:16
[2026-10-28 18:48:17,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:48:17,705.705 INFO    ] Initializing speech engine...
[2026-10-28 18:48:17,714.714 INFO    ] 2026-10-28 18:48:17
[2026-10-28 18:48:17,962.962 INFO    ] 2026-10-28 18:48:17
[2026-10-28 18:48:17,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:48:18,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:48:18,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:48:18,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:48:18,561.561 INFO    ] time= 28/10/2026 18:48:18
[2026-10-28 18:48:18,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:48:18,628.628 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:48:18,763.763 INFO    ] No existing commands found in stream
[2026-10-28 18:48:23,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:48:23,788.788 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-10-28 18:48:26,894.894 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:48:26,896.896 INFO    ] Checking for system updates...
[2026-10-28 18:48:26,941.941 INFO    ] 200
[2026-10-28 18:48:26,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:48:26,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:48:27,001.001 INFO    ] No update needed
[2026-10-28 18:48:27,003.003 INFO    ] Checking for camera pi updates...
[2026-10-28 18:48:27,037.037 INFO    ] 200
[2026-10-28 18:48:27,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:48:27,084.084 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:48:27,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:48:27,170.170 INFO    ] No camera update needed
[2026-10-28 18:48:27,172.172 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:48:27,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:48:27,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:48:27,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:48:29,229.229 INFO    ] ================================================
[2026-10-28 18:48:29,245.245 INFO    ] Launching Daemon at Wed Oct 28 18:48:29 IST 2026
[2026-10-28 18:48:29,257.257 INFO    ] ================================================
[2026-10-28 18:48:29,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:48:29
[2026-10-28 18:48:30,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:48:30,681.681 INFO    ] Initializing speech engine...
[2026-10-28 18:48:30,690.690 INFO    ] 2026-10-28 18:48:30
[2026-10-28 18:48:30,936.936 INFO    ] 2026-10-28 18:48:30
[2026-10-28 18:48:30,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:48:31,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:48:31,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:48:31,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:48:31,509.509 INFO    ] time= 28/10/2026 18:48:31
[2026-10-28 18:48:31,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:48:31,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:48:31,731.731 INFO    ] No existing commands found in stream
[2026-10-28 18:48:36,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:48:36,765.765 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-28 18:48:41,432.432 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:48:41,435.435 INFO    ] Checking for system updates...
[2026-10-28 18:48:41,475.475 INFO    ] 200
[2026-10-28 18:48:41,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:48:41,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:48:41,533.533 INFO    ] No update needed
[2026-10-28 18:48:41,536.536 INFO    ] Checking for camera pi updates...
[2026-10-28 18:48:41,569.569 INFO    ] 200
[2026-10-28 18:48:41,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:48:41,614.614 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:48:41,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:48:41,714.714 INFO    ] No camera update needed
[2026-10-28 18:48:41,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:48:41,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:48:41,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:48:41,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:48:43,769.769 INFO    ] ================================================
[2026-10-28 18:48:43,785.785 INFO    ] Launching Daemon at Wed Oct 28 18:48:43 IST 2026
[2026-10-28 18:48:43,796.796 INFO    ] ================================================
[2026-10-28 18:48:44,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:48:44
[2026-10-28 18:48:45,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:48:45,383.383 INFO    ] Initializing speech engine...
[2026-10-28 18:48:45,401.401 INFO    ] 2026-10-28 18:48:45
[2026-10-28 18:48:45,652.652 INFO    ] 2026-10-28 18:48:45
[2026-10-28 18:48:45,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:48:45,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:48:45,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:48:46,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:48:46,223.223 INFO    ] time= 28/10/2026 18:48:46
[2026-10-28 18:48:46,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:48:46,269.269 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:48:46,389.389 INFO    ] No existing commands found in stream
[2026-10-28 18:48:51,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:48:51,417.417 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 18:48:53,971.971 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:48:53,974.974 INFO    ] Checking for system updates...
[2026-10-28 18:48:54,010.010 INFO    ] 200
[2026-10-28 18:48:54,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:48:54,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:48:54,068.068 INFO    ] No update needed
[2026-10-28 18:48:54,070.070 INFO    ] Checking for camera pi updates...
[2026-10-28 18:48:54,105.105 INFO    ] 200
[2026-10-28 18:48:54,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:48:54,147.147 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:48:54,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:48:54,246.246 INFO    ] No camera update needed
[2026-10-28 18:48:54,249.249 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:48:54,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:48:54,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:48:54,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:48:56,300.300 INFO    ] ================================================
[2026-10-28 18:48:56,316.316 INFO    ] Launching Daemon at Wed Oct 28 18:48:56 IST 2026
[2026-10-28 18:48:56,327.327 INFO    ] ================================================
[2026-10-28 18:48:56,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:48:56
[2026-10-28 18:48:57,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:48:57,736.736 INFO    ] Initializing speech engine...
[2026-10-28 18:48:57,755.755 INFO    ] 2026-10-28 18:48:57
[2026-10-28 18:48:58,006.006 INFO    ] 2026-10-28 18:48:57
[2026-10-28 18:48:58,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:48:58,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:48:58,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:48:58,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:48:58,587.587 INFO    ] time= 28/10/2026 18:48:58
[2026-10-28 18:48:58,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:48:58,623.623 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:48:58,757.757 INFO    ] No existing commands found in stream
[2026-10-28 18:49:03,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:49:03,785.785 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-28 18:49:08,040.040 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:49:08,043.043 INFO    ] Checking for system updates...
[2026-10-28 18:49:08,084.084 INFO    ] 200
[2026-10-28 18:49:08,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:49:08,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:49:08,143.143 INFO    ] No update needed
[2026-10-28 18:49:08,146.146 INFO    ] Checking for camera pi updates...
[2026-10-28 18:49:08,184.184 INFO    ] 200
[2026-10-28 18:49:08,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:49:08,233.233 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:49:08,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:49:08,321.321 INFO    ] No camera update needed
[2026-10-28 18:49:08,324.324 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:49:08,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:49:08,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:49:08,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:49:10,381.381 INFO    ] ================================================
[2026-10-28 18:49:10,397.397 INFO    ] Launching Daemon at Wed Oct 28 18:49:10 IST 2026
[2026-10-28 18:49:10,408.408 INFO    ] ================================================
[2026-10-28 18:49:10,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:49:10
[2026-10-28 18:49:11,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:49:11,840.840 INFO    ] Initializing speech engine...
[2026-10-28 18:49:11,849.849 INFO    ] 2026-10-28 18:49:11
[2026-10-28 18:49:12,147.147 INFO    ] 2026-10-28 18:49:12
[2026-10-28 18:49:12,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:49:12,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:49:12,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:49:12,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:49:12,754.754 INFO    ] time= 28/10/2026 18:49:12
[2026-10-28 18:49:12,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:49:12,802.802 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:49:12,958.958 INFO    ] No existing commands found in stream
[2026-10-28 18:49:17,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:49:17,983.983 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 18:49:19,397.397 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:49:19,400.400 INFO    ] Checking for system updates...
[2026-10-28 18:49:19,435.435 INFO    ] 200
[2026-10-28 18:49:19,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:49:19,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:49:19,499.499 INFO    ] No update needed
[2026-10-28 18:49:19,502.502 INFO    ] Checking for camera pi updates...
[2026-10-28 18:49:19,537.537 INFO    ] 200
[2026-10-28 18:49:19,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:49:19,582.582 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:49:19,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:49:19,666.666 INFO    ] No camera update needed
[2026-10-28 18:49:19,668.668 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:49:19,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:49:19,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:49:19,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:49:21,726.726 INFO    ] ================================================
[2026-10-28 18:49:21,741.741 INFO    ] Launching Daemon at Wed Oct 28 18:49:21 IST 2026
[2026-10-28 18:49:21,752.752 INFO    ] ================================================
[2026-10-28 18:49:22,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:49:22
[2026-10-28 18:49:22,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:49:23,220.220 INFO    ] Initializing speech engine...
[2026-10-28 18:49:23,227.227 INFO    ] 2026-10-28 18:49:23
[2026-10-28 18:49:23,500.500 INFO    ] 2026-10-28 18:49:23
[2026-10-28 18:49:23,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:49:23,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:49:23,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:49:24,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:49:24,062.062 INFO    ] time= 28/10/2026 18:49:24
[2026-10-28 18:49:24,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:49:24,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:49:24,280.280 INFO    ] No existing commands found in stream
[2026-10-28 18:49:29,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:49:29,314.314 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-28 18:49:34,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:49:34,367.367 INFO    ] Checking for system updates...
[2026-10-28 18:49:34,407.407 INFO    ] 200
[2026-10-28 18:49:34,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:49:34,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:49:34,464.464 INFO    ] No update needed
[2026-10-28 18:49:34,466.466 INFO    ] Checking for camera pi updates...
[2026-10-28 18:49:34,499.499 INFO    ] 200
[2026-10-28 18:49:34,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:49:34,547.547 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:49:34,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:49:34,631.631 INFO    ] No camera update needed
[2026-10-28 18:49:34,633.633 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:49:34,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:49:34,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:49:34,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:49:36,688.688 INFO    ] ================================================
[2026-10-28 18:49:36,704.704 INFO    ] Launching Daemon at Wed Oct 28 18:49:36 IST 2026
[2026-10-28 18:49:36,715.715 INFO    ] ================================================
[2026-10-28 18:49:37,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:49:37
[2026-10-28 18:49:37,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:49:38,176.176 INFO    ] Initializing speech engine...
[2026-10-28 18:49:38,183.183 INFO    ] 2026-10-28 18:49:38
[2026-10-28 18:49:38,444.444 INFO    ] 2026-10-28 18:49:38
[2026-10-28 18:49:38,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:49:38,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:49:38,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:49:39,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:49:39,136.136 INFO    ] time= 28/10/2026 18:49:39
[2026-10-28 18:49:39,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:49:39,241.241 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:49:39,396.396 INFO    ] No existing commands found in stream
[2026-10-28 18:49:44,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:49:44,418.418 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 18:49:45,529.529 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:49:45,531.531 INFO    ] Checking for system updates...
[2026-10-28 18:49:45,571.571 INFO    ] 200
[2026-10-28 18:49:45,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:49:45,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:49:45,636.636 INFO    ] No update needed
[2026-10-28 18:49:45,638.638 INFO    ] Checking for camera pi updates...
[2026-10-28 18:49:45,672.672 INFO    ] 200
[2026-10-28 18:49:45,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:49:45,720.720 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:49:45,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:49:45,804.804 INFO    ] No camera update needed
[2026-10-28 18:49:45,807.807 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:49:45,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:49:45,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:49:45,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:49:47,861.861 INFO    ] ================================================
[2026-10-28 18:49:47,877.877 INFO    ] Launching Daemon at Wed Oct 28 18:49:47 IST 2026
[2026-10-28 18:49:47,889.889 INFO    ] ================================================
[2026-10-28 18:49:48,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:49:48
[2026-10-28 18:49:49,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:49:49,349.349 INFO    ] Initializing speech engine...
[2026-10-28 18:49:49,356.356 INFO    ] 2026-10-28 18:49:49
[2026-10-28 18:49:49,617.617 INFO    ] 2026-10-28 18:49:49
[2026-10-28 18:49:49,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:49:50,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:49:50,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:49:50,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:49:50,355.355 INFO    ] time= 28/10/2026 18:49:50
[2026-10-28 18:49:50,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:49:50,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:49:50,606.606 INFO    ] No existing commands found in stream
[2026-10-28 18:49:55,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:49:55,627.627 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-28 18:49:59,679.679 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:49:59,682.682 INFO    ] Checking for system updates...
[2026-10-28 18:49:59,721.721 INFO    ] 200
[2026-10-28 18:49:59,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:49:59,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:49:59,779.779 INFO    ] No update needed
[2026-10-28 18:49:59,782.782 INFO    ] Checking for camera pi updates...
[2026-10-28 18:49:59,819.819 INFO    ] 200
[2026-10-28 18:49:59,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:49:59,862.862 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:49:59,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:49:59,959.959 INFO    ] No camera update needed
[2026-10-28 18:49:59,961.961 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:49:59,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:49:59,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:49:59,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:50:02,056.056 INFO    ] ================================================
[2026-10-28 18:50:02,096.096 INFO    ] Launching Daemon at Wed Oct 28 18:50:02 IST 2026
[2026-10-28 18:50:02,123.123 INFO    ] ================================================
[2026-10-28 18:50:03,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:50:03
[2026-10-28 18:50:03,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:50:04,121.121 INFO    ] Initializing speech engine...
[2026-10-28 18:50:04,129.129 INFO    ] 2026-10-28 18:50:04
[2026-10-28 18:50:04,423.423 INFO    ] 2026-10-28 18:50:04
[2026-10-28 18:50:04,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:50:04,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:50:04,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:50:05,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:50:05,118.118 INFO    ] time= 28/10/2026 18:50:05
[2026-10-28 18:50:05,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:50:05,217.217 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:50:05,374.374 INFO    ] No existing commands found in stream
[2026-10-28 18:50:10,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:50:10,398.398 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 18:50:14,274.274 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:50:14,277.277 INFO    ] Checking for system updates...
[2026-10-28 18:50:14,315.315 INFO    ] 200
[2026-10-28 18:50:14,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:50:14,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:50:14,378.378 INFO    ] No update needed
[2026-10-28 18:50:14,381.381 INFO    ] Checking for camera pi updates...
[2026-10-28 18:50:14,414.414 INFO    ] 200
[2026-10-28 18:50:14,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:50:14,461.461 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:50:14,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:50:14,563.563 INFO    ] No camera update needed
[2026-10-28 18:50:14,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:50:14,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:50:14,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:50:14,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:50:16,625.625 INFO    ] ================================================
[2026-10-28 18:50:16,640.640 INFO    ] Launching Daemon at Wed Oct 28 18:50:16 IST 2026
[2026-10-28 18:50:16,650.650 INFO    ] ================================================
[2026-10-28 18:50:17,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:50:17
[2026-10-28 18:50:17,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:50:18,051.051 INFO    ] Initializing speech engine...
[2026-10-28 18:50:18,066.066 INFO    ] 2026-10-28 18:50:18
[2026-10-28 18:50:18,331.331 INFO    ] 2026-10-28 18:50:18
[2026-10-28 18:50:18,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:50:18,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:50:18,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:50:18,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:50:18,896.896 INFO    ] time= 28/10/2026 18:50:18
[2026-10-28 18:50:18,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:50:18,942.942 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:50:19,117.117 INFO    ] No existing commands found in stream
[2026-10-28 18:50:24,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:50:24,145.145 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 18:50:27,419.419 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:50:27,421.421 INFO    ] Checking for system updates...
[2026-10-28 18:50:27,461.461 INFO    ] 200
[2026-10-28 18:50:27,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:50:27,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:50:27,518.518 INFO    ] No update needed
[2026-10-28 18:50:27,520.520 INFO    ] Checking for camera pi updates...
[2026-10-28 18:50:27,556.556 INFO    ] 200
[2026-10-28 18:50:27,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:50:27,599.599 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:50:27,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:50:27,783.783 INFO    ] No camera update needed
[2026-10-28 18:50:27,785.785 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:50:27,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:50:27,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:50:27,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:50:29,839.839 INFO    ] ================================================
[2026-10-28 18:50:29,859.859 INFO    ] Launching Daemon at Wed Oct 28 18:50:29 IST 2026
[2026-10-28 18:50:29,869.869 INFO    ] ================================================
[2026-10-28 18:50:30,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:50:30
[2026-10-28 18:50:31,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:50:31,298.298 INFO    ] Initializing speech engine...
[2026-10-28 18:50:31,308.308 INFO    ] 2026-10-28 18:50:31
[2026-10-28 18:50:31,553.553 INFO    ] 2026-10-28 18:50:31
[2026-10-28 18:50:31,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:50:31,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:50:31,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:50:32,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:50:32,143.143 INFO    ] time= 28/10/2026 18:50:32
[2026-10-28 18:50:32,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:50:32,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:50:32,349.349 INFO    ] No existing commands found in stream
[2026-10-28 18:50:37,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:50:37,383.383 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 18:50:38,818.818 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:50:38,821.821 INFO    ] Checking for system updates...
[2026-10-28 18:50:38,857.857 INFO    ] 200
[2026-10-28 18:50:38,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:50:38,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:50:38,923.923 INFO    ] No update needed
[2026-10-28 18:50:38,926.926 INFO    ] Checking for camera pi updates...
[2026-10-28 18:50:38,962.962 INFO    ] 200
[2026-10-28 18:50:38,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:50:39,005.005 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:50:39,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:50:39,087.087 INFO    ] No camera update needed
[2026-10-28 18:50:39,089.089 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:50:39,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:50:39,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:50:39,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:50:41,143.143 INFO    ] ================================================
[2026-10-28 18:50:41,158.158 INFO    ] Launching Daemon at Wed Oct 28 18:50:41 IST 2026
[2026-10-28 18:50:41,169.169 INFO    ] ================================================
[2026-10-28 18:50:41,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:50:41
[2026-10-28 18:50:42,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:50:42,750.750 INFO    ] Initializing speech engine...
[2026-10-28 18:50:42,760.760 INFO    ] 2026-10-28 18:50:42
[2026-10-28 18:50:43,026.026 INFO    ] 2026-10-28 18:50:43
[2026-10-28 18:50:43,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:50:43,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:50:43,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:50:43,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:50:43,587.587 INFO    ] time= 28/10/2026 18:50:43
[2026-10-28 18:50:43,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:50:43,622.622 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:50:43,779.779 INFO    ] No existing commands found in stream
[2026-10-28 18:50:48,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:50:48,813.813 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 18:50:49,644.644 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:50:49,646.646 INFO    ] Checking for system updates...
[2026-10-28 18:50:49,685.685 INFO    ] 200
[2026-10-28 18:50:49,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:50:49,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:50:49,742.742 INFO    ] No update needed
[2026-10-28 18:50:49,744.744 INFO    ] Checking for camera pi updates...
[2026-10-28 18:50:49,781.781 INFO    ] 200
[2026-10-28 18:50:49,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:50:49,824.824 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:50:49,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:50:49,917.917 INFO    ] No camera update needed
[2026-10-28 18:50:49,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:50:49,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:50:49,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:50:49,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:50:51,972.972 INFO    ] ================================================
[2026-10-28 18:50:51,987.987 INFO    ] Launching Daemon at Wed Oct 28 18:50:51 IST 2026
[2026-10-28 18:50:52,998.998 INFO    ] ================================================
[2026-10-28 18:50:52,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:50:52
[2026-10-28 18:50:53,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:50:53,587.587 INFO    ] Initializing speech engine...
[2026-10-28 18:50:53,601.601 INFO    ] 2026-10-28 18:50:53
[2026-10-28 18:50:53,913.913 INFO    ] 2026-10-28 18:50:53
[2026-10-28 18:50:54,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:50:54,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:50:54,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:50:54,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:50:54,641.641 INFO    ] time= 28/10/2026 18:50:54
[2026-10-28 18:50:54,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:50:54,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:50:54,843.843 INFO    ] No existing commands found in stream
[2026-10-28 18:50:59,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:50:59,887.887 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 18:51:01,059.059 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:51:01,062.062 INFO    ] Checking for system updates...
[2026-10-28 18:51:01,097.097 INFO    ] 200
[2026-10-28 18:51:01,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:51:01,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:51:01,161.161 INFO    ] No update needed
[2026-10-28 18:51:01,163.163 INFO    ] Checking for camera pi updates...
[2026-10-28 18:51:01,197.197 INFO    ] 200
[2026-10-28 18:51:01,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:51:01,251.251 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:51:01,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:51:01,326.326 INFO    ] No camera update needed
[2026-10-28 18:51:01,329.329 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:51:01,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:51:01,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:51:01,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:51:03,405.405 INFO    ] ================================================
[2026-10-28 18:51:03,421.421 INFO    ] Launching Daemon at Wed Oct 28 18:51:03 IST 2026
[2026-10-28 18:51:03,433.433 INFO    ] ================================================
[2026-10-28 18:51:04,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:51:04
[2026-10-28 18:51:04,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:51:04,905.905 INFO    ] Initializing speech engine...
[2026-10-28 18:51:04,912.912 INFO    ] 2026-10-28 18:51:04
[2026-10-28 18:51:05,172.172 INFO    ] 2026-10-28 18:51:05
[2026-10-28 18:51:05,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:51:05,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:51:05,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:51:05,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:51:05,966.966 INFO    ] time= 28/10/2026 18:51:05
[2026-10-28 18:51:05,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:51:06,050.050 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:51:06,258.258 INFO    ] No existing commands found in stream
[2026-10-28 18:51:11,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:51:11,286.286 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-28 18:51:13,047.047 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:51:13,049.049 INFO    ] Checking for system updates...
[2026-10-28 18:51:13,085.085 INFO    ] 200
[2026-10-28 18:51:13,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:51:13,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:51:13,151.151 INFO    ] No update needed
[2026-10-28 18:51:13,155.155 INFO    ] Checking for camera pi updates...
[2026-10-28 18:51:13,189.189 INFO    ] 200
[2026-10-28 18:51:13,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:51:13,233.233 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:51:13,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:51:13,315.315 INFO    ] No camera update needed
[2026-10-28 18:51:13,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:51:13,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:51:13,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:51:13,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:51:15,374.374 INFO    ] ================================================
[2026-10-28 18:51:15,390.390 INFO    ] Launching Daemon at Wed Oct 28 18:51:15 IST 2026
[2026-10-28 18:51:15,400.400 INFO    ] ================================================
[2026-10-28 18:51:15,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:51:15
[2026-10-28 18:51:16,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:51:16,965.965 INFO    ] Initializing speech engine...
[2026-10-28 18:51:16,977.977 INFO    ] 2026-10-28 18:51:16
[2026-10-28 18:51:17,265.265 INFO    ] 2026-10-28 18:51:17
[2026-10-28 18:51:17,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:51:17,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:51:17,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:51:17,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:51:17,857.857 INFO    ] time= 28/10/2026 18:51:17
[2026-10-28 18:51:17,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:51:17,954.954 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:51:18,072.072 INFO    ] No existing commands found in stream
[2026-10-28 18:51:23,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:51:23,106.106 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-28 18:51:24,449.449 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:51:24,452.452 INFO    ] Checking for system updates...
[2026-10-28 18:51:24,489.489 INFO    ] 200
[2026-10-28 18:51:24,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:51:24,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:51:24,553.553 INFO    ] No update needed
[2026-10-28 18:51:24,556.556 INFO    ] Checking for camera pi updates...
[2026-10-28 18:51:24,590.590 INFO    ] 200
[2026-10-28 18:51:24,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:51:24,638.638 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:51:24,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:51:24,735.735 INFO    ] No camera update needed
[2026-10-28 18:51:24,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:51:24,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:51:24,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:51:24,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:51:26,789.789 INFO    ] ================================================
[2026-10-28 18:51:26,804.804 INFO    ] Launching Daemon at Wed Oct 28 18:51:26 IST 2026
[2026-10-28 18:51:26,814.814 INFO    ] ================================================
[2026-10-28 18:51:27,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:51:27
[2026-10-28 18:51:27,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:51:28,221.221 INFO    ] Initializing speech engine...
[2026-10-28 18:51:28,240.240 INFO    ] 2026-10-28 18:51:28
[2026-10-28 18:51:28,488.488 INFO    ] 2026-10-28 18:51:28
[2026-10-28 18:51:28,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:51:28,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:51:28,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:51:29,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:51:29,038.038 INFO    ] time= 28/10/2026 18:51:29
[2026-10-28 18:51:29,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:51:29,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:51:29,216.216 INFO    ] No existing commands found in stream
[2026-10-28 18:51:34,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:51:34,244.244 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 18:51:38,731.731 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:51:38,734.734 INFO    ] Checking for system updates...
[2026-10-28 18:51:38,769.769 INFO    ] 200
[2026-10-28 18:51:38,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:51:38,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:51:38,828.828 INFO    ] No update needed
[2026-10-28 18:51:38,830.830 INFO    ] Checking for camera pi updates...
[2026-10-28 18:51:38,868.868 INFO    ] 200
[2026-10-28 18:51:38,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:51:38,916.916 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:51:39,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:51:39,014.014 INFO    ] No camera update needed
[2026-10-28 18:51:39,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:51:39,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:51:39,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:51:39,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:51:41,070.070 INFO    ] ================================================
[2026-10-28 18:51:41,085.085 INFO    ] Launching Daemon at Wed Oct 28 18:51:41 IST 2026
[2026-10-28 18:51:41,095.095 INFO    ] ================================================
[2026-10-28 18:51:41,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:51:41
[2026-10-28 18:51:42,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:51:42,504.504 INFO    ] Initializing speech engine...
[2026-10-28 18:51:42,510.510 INFO    ] 2026-10-28 18:51:42
[2026-10-28 18:51:42,782.782 INFO    ] 2026-10-28 18:51:42
[2026-10-28 18:51:42,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:51:43,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:51:43,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:51:43,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:51:43,377.377 INFO    ] time= 28/10/2026 18:51:43
[2026-10-28 18:51:43,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:51:43,393.393 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:51:43,574.574 INFO    ] No existing commands found in stream
[2026-10-28 18:51:48,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:51:48,598.598 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-10-28 18:51:52,738.738 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:51:52,741.741 INFO    ] Checking for system updates...
[2026-10-28 18:51:52,779.779 INFO    ] 200
[2026-10-28 18:51:52,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:51:52,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:51:52,836.836 INFO    ] No update needed
[2026-10-28 18:51:52,838.838 INFO    ] Checking for camera pi updates...
[2026-10-28 18:51:52,872.872 INFO    ] 200
[2026-10-28 18:51:52,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:51:52,923.923 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:51:53,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:51:53,029.029 INFO    ] No camera update needed
[2026-10-28 18:51:53,032.032 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:51:53,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:51:53,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:51:53,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:51:55,085.085 INFO    ] ================================================
[2026-10-28 18:51:55,101.101 INFO    ] Launching Daemon at Wed Oct 28 18:51:55 IST 2026
[2026-10-28 18:51:55,112.112 INFO    ] ================================================
[2026-10-28 18:51:55,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:51:55
[2026-10-28 18:51:56,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:51:56,521.521 INFO    ] Initializing speech engine...
[2026-10-28 18:51:56,527.527 INFO    ] 2026-10-28 18:51:56
[2026-10-28 18:51:56,826.826 INFO    ] 2026-10-28 18:51:56
[2026-10-28 18:51:56,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:51:57,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:51:57,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:51:57,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:51:57,459.459 INFO    ] time= 28/10/2026 18:51:57
[2026-10-28 18:51:57,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:51:57,483.483 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:51:57,635.635 INFO    ] No existing commands found in stream
[2026-10-28 18:52:02,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:52:02,651.651 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 18:52:05,250.250 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:52:05,253.253 INFO    ] Checking for system updates...
[2026-10-28 18:52:05,293.293 INFO    ] 200
[2026-10-28 18:52:05,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:52:05,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:52:05,350.350 INFO    ] No update needed
[2026-10-28 18:52:05,352.352 INFO    ] Checking for camera pi updates...
[2026-10-28 18:52:05,386.386 INFO    ] 200
[2026-10-28 18:52:05,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:52:05,432.432 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:52:05,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:52:05,525.525 INFO    ] No camera update needed
[2026-10-28 18:52:05,527.527 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:52:05,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:52:05,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:52:05,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:52:07,580.580 INFO    ] ================================================
[2026-10-28 18:52:07,595.595 INFO    ] Launching Daemon at Wed Oct 28 18:52:07 IST 2026
[2026-10-28 18:52:07,605.605 INFO    ] ================================================
[2026-10-28 18:52:08,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:52:08
[2026-10-28 18:52:08,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:52:09,135.135 INFO    ] Initializing speech engine...
[2026-10-28 18:52:09,158.158 INFO    ] 2026-10-28 18:52:09
[2026-10-28 18:52:09,410.410 INFO    ] 2026-10-28 18:52:09
[2026-10-28 18:52:09,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:52:09,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:52:09,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:52:10,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:52:10,012.012 INFO    ] time= 28/10/2026 18:52:10
[2026-10-28 18:52:10,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:52:10,067.067 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:52:10,213.213 INFO    ] No existing commands found in stream
[2026-10-28 18:52:15,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:52:15,232.232 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-28 18:52:17,240.240 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:52:17,243.243 INFO    ] Checking for system updates...
[2026-10-28 18:52:17,278.278 INFO    ] 200
[2026-10-28 18:52:17,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:52:17,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:52:17,335.335 INFO    ] No update needed
[2026-10-28 18:52:17,338.338 INFO    ] Checking for camera pi updates...
[2026-10-28 18:52:17,376.376 INFO    ] 200
[2026-10-28 18:52:17,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:52:17,418.418 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:52:17,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:52:17,498.498 INFO    ] No camera update needed
[2026-10-28 18:52:17,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:52:17,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:52:17,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:52:17,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:52:19,555.555 INFO    ] ================================================
[2026-10-28 18:52:19,570.570 INFO    ] Launching Daemon at Wed Oct 28 18:52:19 IST 2026
[2026-10-28 18:52:19,582.582 INFO    ] ================================================
[2026-10-28 18:52:20,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:52:20
[2026-10-28 18:52:20,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:52:21,011.011 INFO    ] Initializing speech engine...
[2026-10-28 18:52:21,020.020 INFO    ] 2026-10-28 18:52:21
[2026-10-28 18:52:21,269.269 INFO    ] 2026-10-28 18:52:21
[2026-10-28 18:52:21,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:52:21,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:52:21,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:52:21,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:52:21,836.836 INFO    ] time= 28/10/2026 18:52:21
[2026-10-28 18:52:21,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:52:21,872.872 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:52:21,983.983 INFO    ] No existing commands found in stream
[2026-10-28 18:52:27,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:52:27,010.010 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-28 18:52:28,592.592 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:52:28,595.595 INFO    ] Checking for system updates...
[2026-10-28 18:52:28,632.632 INFO    ] 200
[2026-10-28 18:52:28,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:52:28,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:52:28,693.693 INFO    ] No update needed
[2026-10-28 18:52:28,695.695 INFO    ] Checking for camera pi updates...
[2026-10-28 18:52:28,733.733 INFO    ] 200
[2026-10-28 18:52:28,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:52:28,781.781 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:52:28,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:52:28,859.859 INFO    ] No camera update needed
[2026-10-28 18:52:28,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:52:28,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:52:28,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:52:28,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:52:30,916.916 INFO    ] ================================================
[2026-10-28 18:52:30,932.932 INFO    ] Launching Daemon at Wed Oct 28 18:52:30 IST 2026
[2026-10-28 18:52:30,947.947 INFO    ] ================================================
[2026-10-28 18:52:31,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:52:31
[2026-10-28 18:52:32,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:52:32,417.417 INFO    ] Initializing speech engine...
[2026-10-28 18:52:32,445.445 INFO    ] 2026-10-28 18:52:32
[2026-10-28 18:52:32,713.713 INFO    ] 2026-10-28 18:52:32
[2026-10-28 18:52:32,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:52:33,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:52:33,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:52:33,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:52:33,359.359 INFO    ] time= 28/10/2026 18:52:33
[2026-10-28 18:52:33,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:52:33,377.377 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:52:33,527.527 INFO    ] No existing commands found in stream
[2026-10-28 18:52:38,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:52:38,562.562 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-28 18:52:41,776.776 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:52:41,779.779 INFO    ] Checking for system updates...
[2026-10-28 18:52:41,819.819 INFO    ] 200
[2026-10-28 18:52:41,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:52:41,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:52:41,885.885 INFO    ] No update needed
[2026-10-28 18:52:41,888.888 INFO    ] Checking for camera pi updates...
[2026-10-28 18:52:41,921.921 INFO    ] 200
[2026-10-28 18:52:41,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:52:41,964.964 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:52:42,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:52:42,057.057 INFO    ] No camera update needed
[2026-10-28 18:52:42,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:52:42,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:52:42,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:52:42,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:52:44,112.112 INFO    ] ================================================
[2026-10-28 18:52:44,127.127 INFO    ] Launching Daemon at Wed Oct 28 18:52:44 IST 2026
[2026-10-28 18:52:44,139.139 INFO    ] ================================================
[2026-10-28 18:52:44,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:52:44
[2026-10-28 18:52:45,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:52:45,574.574 INFO    ] Initializing speech engine...
[2026-10-28 18:52:45,579.579 INFO    ] 2026-10-28 18:52:45
[2026-10-28 18:52:45,825.825 INFO    ] 2026-10-28 18:52:45
[2026-10-28 18:52:45,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:52:46,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:52:46,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:52:46,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:52:46,617.617 INFO    ] time= 28/10/2026 18:52:46
[2026-10-28 18:52:46,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:52:46,745.745 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:52:46,937.937 INFO    ] No existing commands found in stream
[2026-10-28 18:52:51,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:52:51,952.952 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 18:52:55,808.808 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:52:55,811.811 INFO    ] Checking for system updates...
[2026-10-28 18:52:55,850.850 INFO    ] 200
[2026-10-28 18:52:55,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:52:55,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:52:55,914.914 INFO    ] No update needed
[2026-10-28 18:52:55,917.917 INFO    ] Checking for camera pi updates...
[2026-10-28 18:52:55,954.954 INFO    ] 200
[2026-10-28 18:52:55,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:52:56,002.002 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:52:56,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:52:56,091.091 INFO    ] No camera update needed
[2026-10-28 18:52:56,094.094 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:52:56,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:52:56,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:52:56,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:52:58,149.149 INFO    ] ================================================
[2026-10-28 18:52:58,164.164 INFO    ] Launching Daemon at Wed Oct 28 18:52:58 IST 2026
[2026-10-28 18:52:58,176.176 INFO    ] ================================================
[2026-10-28 18:52:58,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:52:58
[2026-10-28 18:52:59,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:52:59,587.587 INFO    ] Initializing speech engine...
[2026-10-28 18:52:59,596.596 INFO    ] 2026-10-28 18:52:59
[2026-10-28 18:52:59,839.839 INFO    ] 2026-10-28 18:52:59
[2026-10-28 18:52:59,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:53:00,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:53:00,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:53:00,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:53:00,407.407 INFO    ] time= 28/10/2026 18:53:00
[2026-10-28 18:53:00,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:53:00,443.443 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:53:00,615.615 INFO    ] No existing commands found in stream
[2026-10-28 18:53:05,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:53:05,642.642 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-28 18:53:08,399.399 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:53:08,401.401 INFO    ] Checking for system updates...
[2026-10-28 18:53:08,442.442 INFO    ] 200
[2026-10-28 18:53:08,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:53:08,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:53:08,506.506 INFO    ] No update needed
[2026-10-28 18:53:08,508.508 INFO    ] Checking for camera pi updates...
[2026-10-28 18:53:08,546.546 INFO    ] 200
[2026-10-28 18:53:08,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:53:08,593.593 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:53:08,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:53:08,691.691 INFO    ] No camera update needed
[2026-10-28 18:53:08,694.694 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:53:08,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:53:08,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:53:08,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:53:10,748.748 INFO    ] ================================================
[2026-10-28 18:53:10,763.763 INFO    ] Launching Daemon at Wed Oct 28 18:53:10 IST 2026
[2026-10-28 18:53:10,775.775 INFO    ] ================================================
[2026-10-28 18:53:11,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:53:11
[2026-10-28 18:53:11,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:53:12,182.182 INFO    ] Initializing speech engine...
[2026-10-28 18:53:12,195.195 INFO    ] 2026-10-28 18:53:12
[2026-10-28 18:53:12,456.456 INFO    ] 2026-10-28 18:53:12
[2026-10-28 18:53:12,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:53:12,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:53:12,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:53:13,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:53:13,052.052 INFO    ] time= 28/10/2026 18:53:13
[2026-10-28 18:53:13,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:53:13,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:53:13,258.258 INFO    ] No existing commands found in stream
[2026-10-28 18:53:18,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:53:18,271.271 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-28 18:53:21,647.647 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:53:21,649.649 INFO    ] Checking for system updates...
[2026-10-28 18:53:21,689.689 INFO    ] 200
[2026-10-28 18:53:21,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:53:21,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:53:21,753.753 INFO    ] No update needed
[2026-10-28 18:53:21,755.755 INFO    ] Checking for camera pi updates...
[2026-10-28 18:53:21,793.793 INFO    ] 200
[2026-10-28 18:53:21,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:53:21,840.840 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:53:21,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:53:21,941.941 INFO    ] No camera update needed
[2026-10-28 18:53:21,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:53:21,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:53:21,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:53:21,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:53:24,000.000 INFO    ] ================================================
[2026-10-28 18:53:24,016.016 INFO    ] Launching Daemon at Wed Oct 28 18:53:24 IST 2026
[2026-10-28 18:53:24,028.028 INFO    ] ================================================
[2026-10-28 18:53:24,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:53:24
[2026-10-28 18:53:25,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:53:25,806.806 INFO    ] Initializing speech engine...
[2026-10-28 18:53:25,816.816 INFO    ] 2026-10-28 18:53:25
[2026-10-28 18:53:26,112.112 INFO    ] 2026-10-28 18:53:26
[2026-10-28 18:53:26,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:53:26,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:53:26,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:53:26,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:53:26,950.950 INFO    ] time= 28/10/2026 18:53:26
[2026-10-28 18:53:27,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:53:27,062.062 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:53:27,186.186 INFO    ] No existing commands found in stream
[2026-10-28 18:53:32,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:53:32,201.201 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 18:53:33,000.000 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:53:33,003.003 INFO    ] Checking for system updates...
[2026-10-28 18:53:33,040.040 INFO    ] 200
[2026-10-28 18:53:33,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:53:33,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:53:33,099.099 INFO    ] No update needed
[2026-10-28 18:53:33,102.102 INFO    ] Checking for camera pi updates...
[2026-10-28 18:53:33,141.141 INFO    ] 200
[2026-10-28 18:53:33,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:53:33,192.192 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:53:33,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:53:33,286.286 INFO    ] No camera update needed
[2026-10-28 18:53:33,289.289 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:53:33,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:53:33,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:53:33,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:53:35,345.345 INFO    ] ================================================
[2026-10-28 18:53:35,361.361 INFO    ] Launching Daemon at Wed Oct 28 18:53:35 IST 2026
[2026-10-28 18:53:35,373.373 INFO    ] ================================================
[2026-10-28 18:53:36,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:53:36
[2026-10-28 18:53:36,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:53:36,986.986 INFO    ] Initializing speech engine...
[2026-10-28 18:53:36,995.995 INFO    ] 2026-10-28 18:53:36
[2026-10-28 18:53:37,251.251 INFO    ] 2026-10-28 18:53:37
[2026-10-28 18:53:37,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:53:37,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:53:37,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:53:37,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:53:37,938.938 INFO    ] time= 28/10/2026 18:53:37
[2026-10-28 18:53:37,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:53:38,042.042 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:53:38,229.229 INFO    ] No existing commands found in stream
[2026-10-28 18:53:43,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:53:43,247.247 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-28 18:53:47,638.638 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:53:47,640.640 INFO    ] Checking for system updates...
[2026-10-28 18:53:47,680.680 INFO    ] 200
[2026-10-28 18:53:47,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:53:47,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:53:47,745.745 INFO    ] No update needed
[2026-10-28 18:53:47,747.747 INFO    ] Checking for camera pi updates...
[2026-10-28 18:53:47,780.780 INFO    ] 200
[2026-10-28 18:53:47,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:53:47,825.825 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:53:47,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:53:47,918.918 INFO    ] No camera update needed
[2026-10-28 18:53:47,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:53:47,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:53:47,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:53:47,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:53:49,979.979 INFO    ] ================================================
[2026-10-28 18:53:50,995.995 INFO    ] Launching Daemon at Wed Oct 28 18:53:49 IST 2026
[2026-10-28 18:53:50,006.006 INFO    ] ================================================
[2026-10-28 18:53:50,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:53:50
[2026-10-28 18:53:51,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:53:51,420.420 INFO    ] Initializing speech engine...
[2026-10-28 18:53:51,429.429 INFO    ] 2026-10-28 18:53:51
[2026-10-28 18:53:51,690.690 INFO    ] 2026-10-28 18:53:51
[2026-10-28 18:53:51,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:53:52,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:53:52,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:53:52,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:53:52,242.242 INFO    ] time= 28/10/2026 18:53:52
[2026-10-28 18:53:52,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:53:52,282.282 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:53:52,409.409 INFO    ] No existing commands found in stream
[2026-10-28 18:53:57,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:53:57,437.437 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-28 18:54:00,998.998 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:54:01,002.002 INFO    ] Checking for system updates...
[2026-10-28 18:54:01,049.049 INFO    ] 200
[2026-10-28 18:54:01,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:54:01,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:54:01,128.128 INFO    ] No update needed
[2026-10-28 18:54:01,131.131 INFO    ] Checking for camera pi updates...
[2026-10-28 18:54:01,178.178 INFO    ] 200
[2026-10-28 18:54:01,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:54:01,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:54:01,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:54:01,321.321 INFO    ] No camera update needed
[2026-10-28 18:54:01,326.326 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:54:01,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:54:01,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:54:01,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:54:03,398.398 INFO    ] ================================================
[2026-10-28 18:54:03,414.414 INFO    ] Launching Daemon at Wed Oct 28 18:54:03 IST 2026
[2026-10-28 18:54:03,425.425 INFO    ] ================================================
[2026-10-28 18:54:04,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:54:04
[2026-10-28 18:54:04,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:54:04,893.893 INFO    ] Initializing speech engine...
[2026-10-28 18:54:04,902.902 INFO    ] 2026-10-28 18:54:04
[2026-10-28 18:54:05,147.147 INFO    ] 2026-10-28 18:54:05
[2026-10-28 18:54:05,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:54:05,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:54:05,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:54:05,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:54:05,746.746 INFO    ] time= 28/10/2026 18:54:05
[2026-10-28 18:54:05,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:54:05,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:54:05,973.973 INFO    ] No existing commands found in stream
[2026-10-28 18:54:11,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:54:11,006.006 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 18:54:13,673.673 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:54:13,676.676 INFO    ] Checking for system updates...
[2026-10-28 18:54:13,716.716 INFO    ] 200
[2026-10-28 18:54:13,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:54:13,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:54:13,782.782 INFO    ] No update needed
[2026-10-28 18:54:13,784.784 INFO    ] Checking for camera pi updates...
[2026-10-28 18:54:13,822.822 INFO    ] 200
[2026-10-28 18:54:13,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:54:13,864.864 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:54:13,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:54:13,950.950 INFO    ] No camera update needed
[2026-10-28 18:54:13,953.953 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:54:13,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:54:13,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:54:13,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:54:16,007.007 INFO    ] ================================================
[2026-10-28 18:54:16,022.022 INFO    ] Launching Daemon at Wed Oct 28 18:54:16 IST 2026
[2026-10-28 18:54:16,033.033 INFO    ] ================================================
[2026-10-28 18:54:16,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:54:16
[2026-10-28 18:54:17,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:54:17,448.448 INFO    ] Initializing speech engine...
[2026-10-28 18:54:17,457.457 INFO    ] 2026-10-28 18:54:17
[2026-10-28 18:54:17,756.756 INFO    ] 2026-10-28 18:54:17
[2026-10-28 18:54:17,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:54:18,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:54:18,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:54:18,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:54:18,390.390 INFO    ] time= 28/10/2026 18:54:18
[2026-10-28 18:54:18,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:54:18,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:54:18,571.571 INFO    ] No existing commands found in stream
[2026-10-28 18:54:23,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:54:23,599.599 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-28 18:54:26,059.059 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:54:26,062.062 INFO    ] Checking for system updates...
[2026-10-28 18:54:26,099.099 INFO    ] 200
[2026-10-28 18:54:26,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:54:26,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:54:26,159.159 INFO    ] No update needed
[2026-10-28 18:54:26,162.162 INFO    ] Checking for camera pi updates...
[2026-10-28 18:54:26,202.202 INFO    ] 200
[2026-10-28 18:54:26,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:54:26,247.247 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:54:26,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:54:26,341.341 INFO    ] No camera update needed
[2026-10-28 18:54:26,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:54:26,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:54:26,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:54:26,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:54:28,399.399 INFO    ] ================================================
[2026-10-28 18:54:28,415.415 INFO    ] Launching Daemon at Wed Oct 28 18:54:28 IST 2026
[2026-10-28 18:54:28,426.426 INFO    ] ================================================
[2026-10-28 18:54:28,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:54:28
[2026-10-28 18:54:29,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:54:29,840.840 INFO    ] Initializing speech engine...
[2026-10-28 18:54:29,848.848 INFO    ] 2026-10-28 18:54:29
[2026-10-28 18:54:30,147.147 INFO    ] 2026-10-28 18:54:30
[2026-10-28 18:54:30,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:54:30,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:54:30,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:54:30,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:54:30,750.750 INFO    ] time= 28/10/2026 18:54:30
[2026-10-28 18:54:30,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:54:30,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:54:30,987.987 INFO    ] No existing commands found in stream
[2026-10-28 18:54:35,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:54:36,000.000 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-28 18:54:37,933.933 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:54:37,936.936 INFO    ] Checking for system updates...
[2026-10-28 18:54:37,971.971 INFO    ] 200
[2026-10-28 18:54:37,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:54:38,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:54:38,029.029 INFO    ] No update needed
[2026-10-28 18:54:38,031.031 INFO    ] Checking for camera pi updates...
[2026-10-28 18:54:38,064.064 INFO    ] 200
[2026-10-28 18:54:38,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:54:38,112.112 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:54:38,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:54:38,304.304 INFO    ] No camera update needed
[2026-10-28 18:54:38,306.306 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:54:38,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:54:38,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:54:38,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:54:40,359.359 INFO    ] ================================================
[2026-10-28 18:54:40,375.375 INFO    ] Launching Daemon at Wed Oct 28 18:54:40 IST 2026
[2026-10-28 18:54:40,385.385 INFO    ] ================================================
[2026-10-28 18:54:40,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:54:40
[2026-10-28 18:54:41,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:54:41,794.794 INFO    ] Initializing speech engine...
[2026-10-28 18:54:41,817.817 INFO    ] 2026-10-28 18:54:41
[2026-10-28 18:54:42,073.073 INFO    ] 2026-10-28 18:54:42
[2026-10-28 18:54:42,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:54:42,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:54:42,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:54:42,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:54:42,709.709 INFO    ] time= 28/10/2026 18:54:42
[2026-10-28 18:54:42,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:54:42,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:54:42,911.911 INFO    ] No existing commands found in stream
[2026-10-28 18:54:47,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:54:47,937.937 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-28 18:54:50,858.858 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:54:50,861.861 INFO    ] Checking for system updates...
[2026-10-28 18:54:50,905.905 INFO    ] 200
[2026-10-28 18:54:50,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:54:50,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:54:50,970.970 INFO    ] No update needed
[2026-10-28 18:54:50,972.972 INFO    ] Checking for camera pi updates...
[2026-10-28 18:54:51,006.006 INFO    ] 200
[2026-10-28 18:54:51,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:54:51,054.054 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:54:51,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:54:51,160.160 INFO    ] No camera update needed
[2026-10-28 18:54:51,162.162 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:54:51,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:54:51,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:54:51,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:54:53,217.217 INFO    ] ================================================
[2026-10-28 18:54:53,232.232 INFO    ] Launching Daemon at Wed Oct 28 18:54:53 IST 2026
[2026-10-28 18:54:53,244.244 INFO    ] ================================================
[2026-10-28 18:54:53,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:54:53
[2026-10-28 18:54:54,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:54:54,651.651 INFO    ] Initializing speech engine...
[2026-10-28 18:54:54,677.677 INFO    ] 2026-10-28 18:54:54
[2026-10-28 18:54:54,949.949 INFO    ] 2026-10-28 18:54:54
[2026-10-28 18:54:54,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:54:55,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:54:55,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:54:55,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:54:55,480.480 INFO    ] time= 28/10/2026 18:54:55
[2026-10-28 18:54:55,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:54:55,578.578 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:54:55,722.722 INFO    ] No existing commands found in stream
[2026-10-28 18:55:00,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:55:00,750.750 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-28 18:55:04,875.875 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:55:04,878.878 INFO    ] Checking for system updates...
[2026-10-28 18:55:04,920.920 INFO    ] 200
[2026-10-28 18:55:04,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:55:04,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:55:04,976.976 INFO    ] No update needed
[2026-10-28 18:55:04,978.978 INFO    ] Checking for camera pi updates...
[2026-10-28 18:55:05,015.015 INFO    ] 200
[2026-10-28 18:55:05,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:55:05,058.058 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:55:05,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:55:05,136.136 INFO    ] No camera update needed
[2026-10-28 18:55:05,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:55:05,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:55:05,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:55:05,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:55:07,190.190 INFO    ] ================================================
[2026-10-28 18:55:07,205.205 INFO    ] Launching Daemon at Wed Oct 28 18:55:07 IST 2026
[2026-10-28 18:55:07,216.216 INFO    ] ================================================
[2026-10-28 18:55:07,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:55:07
[2026-10-28 18:55:08,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:55:08,615.615 INFO    ] Initializing speech engine...
[2026-10-28 18:55:08,628.628 INFO    ] 2026-10-28 18:55:08
[2026-10-28 18:55:08,894.894 INFO    ] 2026-10-28 18:55:08
[2026-10-28 18:55:08,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:55:09,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:55:09,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:55:09,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:55:09,462.462 INFO    ] time= 28/10/2026 18:55:09
[2026-10-28 18:55:09,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:55:09,510.510 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:55:09,684.684 INFO    ] No existing commands found in stream
[2026-10-28 18:55:14,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:55:14,711.711 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 18:55:17,115.115 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:55:17,118.118 INFO    ] Checking for system updates...
[2026-10-28 18:55:17,157.157 INFO    ] 200
[2026-10-28 18:55:17,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:55:17,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:55:17,225.225 INFO    ] No update needed
[2026-10-28 18:55:17,228.228 INFO    ] Checking for camera pi updates...
[2026-10-28 18:55:17,266.266 INFO    ] 200
[2026-10-28 18:55:17,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:55:17,314.314 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:55:17,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:55:17,405.405 INFO    ] No camera update needed
[2026-10-28 18:55:17,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:55:17,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:55:17,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:55:17,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:55:19,461.461 INFO    ] ================================================
[2026-10-28 18:55:19,476.476 INFO    ] Launching Daemon at Wed Oct 28 18:55:19 IST 2026
[2026-10-28 18:55:19,487.487 INFO    ] ================================================
[2026-10-28 18:55:20,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:55:20
[2026-10-28 18:55:20,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:55:20,888.888 INFO    ] Initializing speech engine...
[2026-10-28 18:55:20,910.910 INFO    ] 2026-10-28 18:55:20
[2026-10-28 18:55:21,164.164 INFO    ] 2026-10-28 18:55:21
[2026-10-28 18:55:21,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:55:21,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:55:21,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:55:21,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:55:21,791.791 INFO    ] time= 28/10/2026 18:55:21
[2026-10-28 18:55:21,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:55:21,838.838 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:55:21,999.999 INFO    ] No existing commands found in stream
[2026-10-28 18:55:27,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:55:27,041.041 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-28 18:55:32,197.197 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:55:32,200.200 INFO    ] Checking for system updates...
[2026-10-28 18:55:32,238.238 INFO    ] 200
[2026-10-28 18:55:32,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:55:32,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:55:32,299.299 INFO    ] No update needed
[2026-10-28 18:55:32,302.302 INFO    ] Checking for camera pi updates...
[2026-10-28 18:55:32,339.339 INFO    ] 200
[2026-10-28 18:55:32,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:55:32,385.385 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:55:32,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:55:32,478.478 INFO    ] No camera update needed
[2026-10-28 18:55:32,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:55:32,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:55:32,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:55:32,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:55:34,537.537 INFO    ] ================================================
[2026-10-28 18:55:34,552.552 INFO    ] Launching Daemon at Wed Oct 28 18:55:34 IST 2026
[2026-10-28 18:55:34,564.564 INFO    ] ================================================
[2026-10-28 18:55:35,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:55:35
[2026-10-28 18:55:35,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:55:35,964.964 INFO    ] Initializing speech engine...
[2026-10-28 18:55:35,970.970 INFO    ] 2026-10-28 18:55:35
[2026-10-28 18:55:36,248.248 INFO    ] 2026-10-28 18:55:36
[2026-10-28 18:55:36,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:55:36,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:55:36,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:55:36,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:55:36,818.818 INFO    ] time= 28/10/2026 18:55:36
[2026-10-28 18:55:36,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:55:36,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:55:36,979.979 INFO    ] No existing commands found in stream
[2026-10-28 18:55:42,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:55:42,012.012 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 18:55:43,532.532 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:55:43,535.535 INFO    ] Checking for system updates...
[2026-10-28 18:55:43,573.573 INFO    ] 200
[2026-10-28 18:55:43,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:55:43,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:55:43,634.634 INFO    ] No update needed
[2026-10-28 18:55:43,637.637 INFO    ] Checking for camera pi updates...
[2026-10-28 18:55:43,673.673 INFO    ] 200
[2026-10-28 18:55:43,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:55:43,716.716 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:55:43,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:55:43,797.797 INFO    ] No camera update needed
[2026-10-28 18:55:43,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:55:43,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:55:43,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:55:43,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:55:45,854.854 INFO    ] ================================================
[2026-10-28 18:55:45,868.868 INFO    ] Launching Daemon at Wed Oct 28 18:55:45 IST 2026
[2026-10-28 18:55:45,879.879 INFO    ] ================================================
[2026-10-28 18:55:46,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:55:46
[2026-10-28 18:55:47,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:55:47,303.303 INFO    ] Initializing speech engine...
[2026-10-28 18:55:47,315.315 INFO    ] 2026-10-28 18:55:47
[2026-10-28 18:55:47,562.562 INFO    ] 2026-10-28 18:55:47
[2026-10-28 18:55:47,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:55:47,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:55:47,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:55:48,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:55:48,166.166 INFO    ] time= 28/10/2026 18:55:48
[2026-10-28 18:55:48,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:55:48,239.239 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:55:48,368.368 INFO    ] No existing commands found in stream
[2026-10-28 18:55:53,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:55:53,395.395 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 18:55:55,042.042 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:55:55,046.046 INFO    ] Checking for system updates...
[2026-10-28 18:55:55,082.082 INFO    ] 200
[2026-10-28 18:55:55,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:55:55,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:55:55,140.140 INFO    ] No update needed
[2026-10-28 18:55:55,143.143 INFO    ] Checking for camera pi updates...
[2026-10-28 18:55:55,177.177 INFO    ] 200
[2026-10-28 18:55:55,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:55:55,220.220 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:55:55,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:55:55,302.302 INFO    ] No camera update needed
[2026-10-28 18:55:55,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:55:55,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:55:55,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:55:55,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:55:57,360.360 INFO    ] ================================================
[2026-10-28 18:55:57,375.375 INFO    ] Launching Daemon at Wed Oct 28 18:55:57 IST 2026
[2026-10-28 18:55:57,386.386 INFO    ] ================================================
[2026-10-28 18:55:57,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:55:57
[2026-10-28 18:55:58,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:55:58,790.790 INFO    ] Initializing speech engine...
[2026-10-28 18:55:58,814.814 INFO    ] 2026-10-28 18:55:58
[2026-10-28 18:55:59,082.082 INFO    ] 2026-10-28 18:55:59
[2026-10-28 18:55:59,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:55:59,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:55:59,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:55:59,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:55:59,701.701 INFO    ] time= 28/10/2026 18:55:59
[2026-10-28 18:55:59,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:55:59,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:55:59,883.883 INFO    ] No existing commands found in stream
[2026-10-28 18:56:04,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:56:04,910.910 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-28 18:56:09,213.213 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:56:09,215.215 INFO    ] Checking for system updates...
[2026-10-28 18:56:09,250.250 INFO    ] 200
[2026-10-28 18:56:09,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:56:09,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:56:09,310.310 INFO    ] No update needed
[2026-10-28 18:56:09,312.312 INFO    ] Checking for camera pi updates...
[2026-10-28 18:56:09,345.345 INFO    ] 200
[2026-10-28 18:56:09,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:56:09,391.391 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:56:09,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:56:09,467.467 INFO    ] No camera update needed
[2026-10-28 18:56:09,470.470 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:56:09,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:56:09,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:56:09,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:56:11,522.522 INFO    ] ================================================
[2026-10-28 18:56:11,537.537 INFO    ] Launching Daemon at Wed Oct 28 18:56:11 IST 2026
[2026-10-28 18:56:11,548.548 INFO    ] ================================================
[2026-10-28 18:56:12,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:56:12
[2026-10-28 18:56:12,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:56:13,066.066 INFO    ] Initializing speech engine...
[2026-10-28 18:56:13,080.080 INFO    ] 2026-10-28 18:56:13
[2026-10-28 18:56:13,391.391 INFO    ] 2026-10-28 18:56:13
[2026-10-28 18:56:13,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:56:13,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:56:13,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:56:13,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:56:13,933.933 INFO    ] time= 28/10/2026 18:56:13
[2026-10-28 18:56:13,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:56:13,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:56:14,111.111 INFO    ] No existing commands found in stream
[2026-10-28 18:56:19,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:56:19,146.146 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-28 18:56:20,814.814 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:56:20,817.817 INFO    ] Checking for system updates...
[2026-10-28 18:56:20,855.855 INFO    ] 200
[2026-10-28 18:56:20,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:56:20,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:56:20,918.918 INFO    ] No update needed
[2026-10-28 18:56:20,921.921 INFO    ] Checking for camera pi updates...
[2026-10-28 18:56:20,955.955 INFO    ] 200
[2026-10-28 18:56:20,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:56:20,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:56:21,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:56:21,085.085 INFO    ] No camera update needed
[2026-10-28 18:56:21,088.088 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:56:21,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:56:21,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:56:21,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:56:23,148.148 INFO    ] ================================================
[2026-10-28 18:56:23,163.163 INFO    ] Launching Daemon at Wed Oct 28 18:56:23 IST 2026
[2026-10-28 18:56:23,173.173 INFO    ] ================================================
[2026-10-28 18:56:23,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:56:23
[2026-10-28 18:56:24,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:56:24,609.609 INFO    ] Initializing speech engine...
[2026-10-28 18:56:24,615.615 INFO    ] 2026-10-28 18:56:24
[2026-10-28 18:56:24,860.860 INFO    ] 2026-10-28 18:56:24
[2026-10-28 18:56:24,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:56:25,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:56:25,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:56:25,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:56:25,571.571 INFO    ] time= 28/10/2026 18:56:25
[2026-10-28 18:56:25,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:56:25,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:56:25,850.850 INFO    ] No existing commands found in stream
[2026-10-28 18:56:30,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:56:30,870.870 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-28 18:56:33,289.289 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:56:33,292.292 INFO    ] Checking for system updates...
[2026-10-28 18:56:33,327.327 INFO    ] 200
[2026-10-28 18:56:33,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:56:33,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:56:33,384.384 INFO    ] No update needed
[2026-10-28 18:56:33,387.387 INFO    ] Checking for camera pi updates...
[2026-10-28 18:56:33,421.421 INFO    ] 200
[2026-10-28 18:56:33,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:56:33,469.469 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:56:33,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:56:33,619.619 INFO    ] No camera update needed
[2026-10-28 18:56:33,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:56:33,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:56:33,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:56:33,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:56:35,677.677 INFO    ] ================================================
[2026-10-28 18:56:35,692.692 INFO    ] Launching Daemon at Wed Oct 28 18:56:35 IST 2026
[2026-10-28 18:56:35,702.702 INFO    ] ================================================
[2026-10-28 18:56:36,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:56:36
[2026-10-28 18:56:37,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:56:37,346.346 INFO    ] Initializing speech engine...
[2026-10-28 18:56:37,354.354 INFO    ] 2026-10-28 18:56:37
[2026-10-28 18:56:37,618.618 INFO    ] 2026-10-28 18:56:37
[2026-10-28 18:56:37,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:56:38,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:56:38,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:56:38,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:56:38,416.416 INFO    ] time= 28/10/2026 18:56:38
[2026-10-28 18:56:38,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:56:38,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:56:38,709.709 INFO    ] No existing commands found in stream
[2026-10-28 18:56:43,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:56:43,743.743 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 18:56:44,610.610 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:56:44,613.613 INFO    ] Checking for system updates...
[2026-10-28 18:56:44,649.649 INFO    ] 200
[2026-10-28 18:56:44,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:56:44,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:56:44,707.707 INFO    ] No update needed
[2026-10-28 18:56:44,709.709 INFO    ] Checking for camera pi updates...
[2026-10-28 18:56:44,742.742 INFO    ] 200
[2026-10-28 18:56:44,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:56:44,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:56:44,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:56:44,978.978 INFO    ] No camera update needed
[2026-10-28 18:56:44,981.981 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:56:44,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:56:44,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:56:44,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:56:47,033.033 INFO    ] ================================================
[2026-10-28 18:56:47,048.048 INFO    ] Launching Daemon at Wed Oct 28 18:56:47 IST 2026
[2026-10-28 18:56:47,059.059 INFO    ] ================================================
[2026-10-28 18:56:47,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:56:47
[2026-10-28 18:56:48,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:56:48,508.508 INFO    ] Initializing speech engine...
[2026-10-28 18:56:48,514.514 INFO    ] 2026-10-28 18:56:48
[2026-10-28 18:56:48,785.785 INFO    ] 2026-10-28 18:56:48
[2026-10-28 18:56:48,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:56:49,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:56:49,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:56:49,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:56:49,541.541 INFO    ] time= 28/10/2026 18:56:49
[2026-10-28 18:56:49,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:56:49,635.635 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:56:49,863.863 INFO    ] No existing commands found in stream
[2026-10-28 18:56:54,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:56:54,898.898 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-10-28 18:56:56,715.715 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:56:56,717.717 INFO    ] Checking for system updates...
[2026-10-28 18:56:56,758.758 INFO    ] 200
[2026-10-28 18:56:56,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:56:56,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:56:56,818.818 INFO    ] No update needed
[2026-10-28 18:56:56,821.821 INFO    ] Checking for camera pi updates...
[2026-10-28 18:56:56,860.860 INFO    ] 200
[2026-10-28 18:56:56,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:56:56,905.905 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:56:56,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:56:56,982.982 INFO    ] No camera update needed
[2026-10-28 18:56:56,985.985 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:56:56,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:56:56,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:56:56,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:56:59,041.041 INFO    ] ================================================
[2026-10-28 18:56:59,056.056 INFO    ] Launching Daemon at Wed Oct 28 18:56:59 IST 2026
[2026-10-28 18:56:59,066.066 INFO    ] ================================================
[2026-10-28 18:56:59,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:56:59
[2026-10-28 18:57:00,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:57:00,484.484 INFO    ] Initializing speech engine...
[2026-10-28 18:57:00,494.494 INFO    ] 2026-10-28 18:57:00
[2026-10-28 18:57:00,743.743 INFO    ] 2026-10-28 18:57:00
[2026-10-28 18:57:00,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:57:01,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:57:01,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:57:01,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:57:01,314.314 INFO    ] time= 28/10/2026 18:57:01
[2026-10-28 18:57:01,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:57:01,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:57:01,477.477 INFO    ] No existing commands found in stream
[2026-10-28 18:57:06,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:57:06,510.510 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-28 18:57:08,691.691 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:57:08,694.694 INFO    ] Checking for system updates...
[2026-10-28 18:57:08,733.733 INFO    ] 200
[2026-10-28 18:57:08,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:57:08,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:57:08,796.796 INFO    ] No update needed
[2026-10-28 18:57:08,799.799 INFO    ] Checking for camera pi updates...
[2026-10-28 18:57:08,837.837 INFO    ] 200
[2026-10-28 18:57:08,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:57:08,879.879 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:57:08,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:57:08,950.950 INFO    ] No camera update needed
[2026-10-28 18:57:08,952.952 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:57:08,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:57:08,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:57:08,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:57:11,008.008 INFO    ] ================================================
[2026-10-28 18:57:11,023.023 INFO    ] Launching Daemon at Wed Oct 28 18:57:11 IST 2026
[2026-10-28 18:57:11,034.034 INFO    ] ================================================
[2026-10-28 18:57:11,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:57:11
[2026-10-28 18:57:12,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:57:12,478.478 INFO    ] Initializing speech engine...
[2026-10-28 18:57:12,495.495 INFO    ] 2026-10-28 18:57:12
[2026-10-28 18:57:12,786.786 INFO    ] 2026-10-28 18:57:12
[2026-10-28 18:57:12,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:57:13,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:57:13,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:57:13,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:57:13,420.420 INFO    ] time= 28/10/2026 18:57:13
[2026-10-28 18:57:13,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:57:13,448.448 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:57:13,593.593 INFO    ] No existing commands found in stream
[2026-10-28 18:57:18,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:57:18,611.611 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-10-28 18:57:21,951.951 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:57:21,954.954 INFO    ] Checking for system updates...
[2026-10-28 18:57:21,989.989 INFO    ] 200
[2026-10-28 18:57:21,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:57:22,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:57:22,047.047 INFO    ] No update needed
[2026-10-28 18:57:22,050.050 INFO    ] Checking for camera pi updates...
[2026-10-28 18:57:22,087.087 INFO    ] 200
[2026-10-28 18:57:22,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:57:22,130.130 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:57:22,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:57:22,213.213 INFO    ] No camera update needed
[2026-10-28 18:57:22,216.216 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:57:22,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:57:22,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:57:22,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:57:24,268.268 INFO    ] ================================================
[2026-10-28 18:57:24,284.284 INFO    ] Launching Daemon at Wed Oct 28 18:57:24 IST 2026
[2026-10-28 18:57:24,294.294 INFO    ] ================================================
[2026-10-28 18:57:24,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:57:24
[2026-10-28 18:57:25,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:57:25,719.719 INFO    ] Initializing speech engine...
[2026-10-28 18:57:25,728.728 INFO    ] 2026-10-28 18:57:25
[2026-10-28 18:57:26,021.021 INFO    ] 2026-10-28 18:57:25
[2026-10-28 18:57:26,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:57:26,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:57:26,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:57:26,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:57:26,655.655 INFO    ] time= 28/10/2026 18:57:26
[2026-10-28 18:57:26,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:57:26,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:57:26,825.825 INFO    ] No existing commands found in stream
[2026-10-28 18:57:31,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:57:31,843.843 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-28 18:57:35,472.472 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:57:35,475.475 INFO    ] Checking for system updates...
[2026-10-28 18:57:35,510.510 INFO    ] 200
[2026-10-28 18:57:35,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:57:35,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:57:35,567.567 INFO    ] No update needed
[2026-10-28 18:57:35,570.570 INFO    ] Checking for camera pi updates...
[2026-10-28 18:57:35,603.603 INFO    ] 200
[2026-10-28 18:57:35,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:57:35,650.650 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:57:35,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:57:35,735.735 INFO    ] No camera update needed
[2026-10-28 18:57:35,738.738 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:57:35,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:57:35,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:57:35,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:57:37,791.791 INFO    ] ================================================
[2026-10-28 18:57:37,806.806 INFO    ] Launching Daemon at Wed Oct 28 18:57:37 IST 2026
[2026-10-28 18:57:37,816.816 INFO    ] ================================================
[2026-10-28 18:57:38,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:57:38
[2026-10-28 18:57:38,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:57:39,257.257 INFO    ] Initializing speech engine...
[2026-10-28 18:57:39,271.271 INFO    ] 2026-10-28 18:57:39
[2026-10-28 18:57:39,562.562 INFO    ] 2026-10-28 18:57:39
[2026-10-28 18:57:39,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:57:39,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:57:39,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:57:40,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:57:40,206.206 INFO    ] time= 28/10/2026 18:57:40
[2026-10-28 18:57:40,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:57:40,232.232 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:57:40,382.382 INFO    ] No existing commands found in stream
[2026-10-28 18:57:45,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:57:45,402.402 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-28 18:57:49,321.321 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 18:57:49,324.324 INFO    ] Checking for system updates...
[2026-10-28 18:57:49,364.364 INFO    ] 200
[2026-10-28 18:57:49,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:57:49,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:57:49,429.429 INFO    ] No update needed
[2026-10-28 18:57:49,431.431 INFO    ] Checking for camera pi updates...
[2026-10-28 18:57:49,468.468 INFO    ] 200
[2026-10-28 18:57:49,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:57:49,516.516 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:57:49,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:57:49,611.611 INFO    ] No camera update needed
[2026-10-28 18:57:49,614.614 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:57:49,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:57:49,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:57:49,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:57:51,667.667 INFO    ] ================================================
[2026-10-28 18:57:51,682.682 INFO    ] Launching Daemon at Wed Oct 28 18:57:51 IST 2026
[2026-10-28 18:57:51,692.692 INFO    ] ================================================
[2026-10-28 18:57:52,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:57:52
[2026-10-28 18:57:52,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:57:53,113.113 INFO    ] Initializing speech engine...
[2026-10-28 18:57:53,132.132 INFO    ] 2026-10-28 18:57:53
[2026-10-28 18:57:53,383.383 INFO    ] 2026-10-28 18:57:53
[2026-10-28 18:57:53,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:57:53,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:57:53,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:57:53,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:57:53,954.954 INFO    ] time= 28/10/2026 18:57:53
[2026-10-28 18:57:53,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:57:53,979.979 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:57:54,130.130 INFO    ] No existing commands found in stream
[2026-10-28 18:57:59,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:57:59,158.158 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-28 18:58:03,447.447 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:58:03,450.450 INFO    ] Checking for system updates...
[2026-10-28 18:58:03,493.493 INFO    ] 200
[2026-10-28 18:58:03,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:58:03,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:58:03,568.568 INFO    ] No update needed
[2026-10-28 18:58:03,570.570 INFO    ] Checking for camera pi updates...
[2026-10-28 18:58:03,605.605 INFO    ] 200
[2026-10-28 18:58:03,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:58:03,648.648 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:58:03,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:58:03,729.729 INFO    ] No camera update needed
[2026-10-28 18:58:03,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:58:03,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:58:03,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:58:03,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:58:05,786.786 INFO    ] ================================================
[2026-10-28 18:58:05,801.801 INFO    ] Launching Daemon at Wed Oct 28 18:58:05 IST 2026
[2026-10-28 18:58:05,812.812 INFO    ] ================================================
[2026-10-28 18:58:06,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:58:06
[2026-10-28 18:58:06,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:58:07,221.221 INFO    ] Initializing speech engine...
[2026-10-28 18:58:07,230.230 INFO    ] 2026-10-28 18:58:07
[2026-10-28 18:58:07,522.522 INFO    ] 2026-10-28 18:58:07
[2026-10-28 18:58:07,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:58:07,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:58:07,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:58:08,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:58:08,154.154 INFO    ] time= 28/10/2026 18:58:08
[2026-10-28 18:58:08,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:58:08,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:58:08,330.330 INFO    ] No existing commands found in stream
[2026-10-28 18:58:13,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:58:13,352.352 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-28 18:58:14,475.475 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:58:14,478.478 INFO    ] Checking for system updates...
[2026-10-28 18:58:14,513.513 INFO    ] 200
[2026-10-28 18:58:14,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:58:14,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:58:14,570.570 INFO    ] No update needed
[2026-10-28 18:58:14,572.572 INFO    ] Checking for camera pi updates...
[2026-10-28 18:58:14,606.606 INFO    ] 200
[2026-10-28 18:58:14,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:58:14,648.648 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:58:14,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:58:14,738.738 INFO    ] No camera update needed
[2026-10-28 18:58:14,741.741 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:58:14,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:58:14,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:58:14,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:58:16,793.793 INFO    ] ================================================
[2026-10-28 18:58:16,808.808 INFO    ] Launching Daemon at Wed Oct 28 18:58:16 IST 2026
[2026-10-28 18:58:16,818.818 INFO    ] ================================================
[2026-10-28 18:58:17,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:58:17
[2026-10-28 18:58:18,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:58:18,419.419 INFO    ] Initializing speech engine...
[2026-10-28 18:58:18,427.427 INFO    ] 2026-10-28 18:58:18
[2026-10-28 18:58:18,712.712 INFO    ] 2026-10-28 18:58:18
[2026-10-28 18:58:18,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:58:19,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:58:19,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:58:19,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:58:19,423.423 INFO    ] time= 28/10/2026 18:58:19
[2026-10-28 18:58:19,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:58:19,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:58:19,648.648 INFO    ] No existing commands found in stream
[2026-10-28 18:58:24,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:58:24,665.665 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-28 18:58:28,477.477 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 18:58:28,479.479 INFO    ] Checking for system updates...
[2026-10-28 18:58:28,518.518 INFO    ] 200
[2026-10-28 18:58:28,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:58:28,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:58:28,581.581 INFO    ] No update needed
[2026-10-28 18:58:28,583.583 INFO    ] Checking for camera pi updates...
[2026-10-28 18:58:28,621.621 INFO    ] 200
[2026-10-28 18:58:28,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:58:28,664.664 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:58:28,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:58:28,755.755 INFO    ] No camera update needed
[2026-10-28 18:58:28,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:58:28,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:58:28,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:58:28,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:58:30,813.813 INFO    ] ================================================
[2026-10-28 18:58:30,828.828 INFO    ] Launching Daemon at Wed Oct 28 18:58:30 IST 2026
[2026-10-28 18:58:30,838.838 INFO    ] ================================================
[2026-10-28 18:58:31,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:58:31
[2026-10-28 18:58:32,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:58:32,321.321 INFO    ] Initializing speech engine...
[2026-10-28 18:58:32,336.336 INFO    ] 2026-10-28 18:58:32
[2026-10-28 18:58:32,604.604 INFO    ] 2026-10-28 18:58:32
[2026-10-28 18:58:32,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:58:32,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:58:32,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:58:33,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:58:33,202.202 INFO    ] time= 28/10/2026 18:58:33
[2026-10-28 18:58:33,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:58:33,237.237 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:58:33,389.389 INFO    ] No existing commands found in stream
[2026-10-28 18:58:38,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:58:38,422.422 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-28 18:58:42,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 18:58:42,557.557 INFO    ] Checking for system updates...
[2026-10-28 18:58:42,596.596 INFO    ] 200
[2026-10-28 18:58:42,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:58:42,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:58:42,653.653 INFO    ] No update needed
[2026-10-28 18:58:42,656.656 INFO    ] Checking for camera pi updates...
[2026-10-28 18:58:42,693.693 INFO    ] 200
[2026-10-28 18:58:42,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:58:42,735.735 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:58:42,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:58:42,832.832 INFO    ] No camera update needed
[2026-10-28 18:58:42,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:58:42,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:58:42,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:58:42,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:58:44,887.887 INFO    ] ================================================
[2026-10-28 18:58:44,902.902 INFO    ] Launching Daemon at Wed Oct 28 18:58:44 IST 2026
[2026-10-28 18:58:44,912.912 INFO    ] ================================================
[2026-10-28 18:58:45,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:58:45
[2026-10-28 18:58:46,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:58:46,312.312 INFO    ] Initializing speech engine...
[2026-10-28 18:58:46,319.319 INFO    ] 2026-10-28 18:58:46
[2026-10-28 18:58:46,618.618 INFO    ] 2026-10-28 18:58:46
[2026-10-28 18:58:46,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:58:46,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:58:46,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:58:47,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:58:47,254.254 INFO    ] time= 28/10/2026 18:58:47
[2026-10-28 18:58:47,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:58:47,283.283 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:58:47,405.405 INFO    ] No existing commands found in stream
[2026-10-28 18:58:52,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:58:52,433.433 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 18:58:56,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 18:58:56,176.176 INFO    ] Checking for system updates...
[2026-10-28 18:58:56,213.213 INFO    ] 200
[2026-10-28 18:58:56,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:58:56,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:58:56,274.274 INFO    ] No update needed
[2026-10-28 18:58:56,277.277 INFO    ] Checking for camera pi updates...
[2026-10-28 18:58:56,311.311 INFO    ] 200
[2026-10-28 18:58:56,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:58:56,360.360 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:58:56,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:58:56,553.553 INFO    ] No camera update needed
[2026-10-28 18:58:56,556.556 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:58:56,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:58:56,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:58:56,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:58:58,612.612 INFO    ] ================================================
[2026-10-28 18:58:58,628.628 INFO    ] Launching Daemon at Wed Oct 28 18:58:58 IST 2026
[2026-10-28 18:58:58,639.639 INFO    ] ================================================
[2026-10-28 18:58:59,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:58:59
[2026-10-28 18:58:59,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:59:00,055.055 INFO    ] Initializing speech engine...
[2026-10-28 18:59:00,062.062 INFO    ] 2026-10-28 18:59:00
[2026-10-28 18:59:00,357.357 INFO    ] 2026-10-28 18:59:00
[2026-10-28 18:59:00,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:59:00,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:59:00,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:59:00,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:59:00,994.994 INFO    ] time= 28/10/2026 18:59:00
[2026-10-28 18:59:01,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:59:01,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:59:01,158.158 INFO    ] No existing commands found in stream
[2026-10-28 18:59:06,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:59:06,185.185 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-28 18:59:08,564.564 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:59:08,567.567 INFO    ] Checking for system updates...
[2026-10-28 18:59:08,602.602 INFO    ] 200
[2026-10-28 18:59:08,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:59:08,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:59:08,658.658 INFO    ] No update needed
[2026-10-28 18:59:08,661.661 INFO    ] Checking for camera pi updates...
[2026-10-28 18:59:08,694.694 INFO    ] 200
[2026-10-28 18:59:08,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:59:08,736.736 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:59:08,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:59:08,836.836 INFO    ] No camera update needed
[2026-10-28 18:59:08,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:59:08,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:59:08,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:59:08,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:59:10,891.891 INFO    ] ================================================
[2026-10-28 18:59:10,906.906 INFO    ] Launching Daemon at Wed Oct 28 18:59:10 IST 2026
[2026-10-28 18:59:10,917.917 INFO    ] ================================================
[2026-10-28 18:59:11,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:59:11
[2026-10-28 18:59:12,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:59:12,382.382 INFO    ] Initializing speech engine...
[2026-10-28 18:59:12,387.387 INFO    ] 2026-10-28 18:59:12
[2026-10-28 18:59:12,650.650 INFO    ] 2026-10-28 18:59:12
[2026-10-28 18:59:12,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:59:12,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:59:12,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:59:13,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:59:13,247.247 INFO    ] time= 28/10/2026 18:59:13
[2026-10-28 18:59:13,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:59:13,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:59:13,461.461 INFO    ] No existing commands found in stream
[2026-10-28 18:59:18,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:59:18,496.496 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-28 18:59:19,101.101 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:59:19,103.103 INFO    ] Checking for system updates...
[2026-10-28 18:59:19,140.140 INFO    ] 200
[2026-10-28 18:59:19,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:59:19,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:59:19,197.197 INFO    ] No update needed
[2026-10-28 18:59:19,199.199 INFO    ] Checking for camera pi updates...
[2026-10-28 18:59:19,232.232 INFO    ] 200
[2026-10-28 18:59:19,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:59:19,275.275 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:59:19,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:59:19,367.367 INFO    ] No camera update needed
[2026-10-28 18:59:19,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:59:19,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:59:19,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:59:19,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:59:21,424.424 INFO    ] ================================================
[2026-10-28 18:59:21,440.440 INFO    ] Launching Daemon at Wed Oct 28 18:59:21 IST 2026
[2026-10-28 18:59:21,451.451 INFO    ] ================================================
[2026-10-28 18:59:22,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:59:22
[2026-10-28 18:59:22,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:59:23,081.081 INFO    ] Initializing speech engine...
[2026-10-28 18:59:23,093.093 INFO    ] 2026-10-28 18:59:23
[2026-10-28 18:59:23,363.363 INFO    ] 2026-10-28 18:59:23
[2026-10-28 18:59:23,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:59:23,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:59:23,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:59:24,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:59:24,132.132 INFO    ] time= 28/10/2026 18:59:24
[2026-10-28 18:59:24,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:59:24,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:59:24,361.361 INFO    ] No existing commands found in stream
[2026-10-28 18:59:29,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:59:29,380.380 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-10-28 18:59:30,515.515 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:59:30,518.518 INFO    ] Checking for system updates...
[2026-10-28 18:59:30,555.555 INFO    ] 200
[2026-10-28 18:59:30,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:59:30,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:59:30,614.614 INFO    ] No update needed
[2026-10-28 18:59:30,616.616 INFO    ] Checking for camera pi updates...
[2026-10-28 18:59:30,651.651 INFO    ] 200
[2026-10-28 18:59:30,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:59:30,700.700 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:59:30,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:59:30,791.791 INFO    ] No camera update needed
[2026-10-28 18:59:30,793.793 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:59:30,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:59:30,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:59:30,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:59:32,851.851 INFO    ] ================================================
[2026-10-28 18:59:32,870.870 INFO    ] Launching Daemon at Wed Oct 28 18:59:32 IST 2026
[2026-10-28 18:59:32,882.882 INFO    ] ================================================
[2026-10-28 18:59:33,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:59:33
[2026-10-28 18:59:34,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:59:34,334.334 INFO    ] Initializing speech engine...
[2026-10-28 18:59:34,343.343 INFO    ] 2026-10-28 18:59:34
[2026-10-28 18:59:34,589.589 INFO    ] 2026-10-28 18:59:34
[2026-10-28 18:59:34,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:59:34,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:59:34,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:59:35,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:59:35,157.157 INFO    ] time= 28/10/2026 18:59:35
[2026-10-28 18:59:35,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:59:35,179.179 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:59:35,313.313 INFO    ] No existing commands found in stream
[2026-10-28 18:59:40,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:59:40,336.336 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-28 18:59:43,607.607 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 18:59:43,609.609 INFO    ] Checking for system updates...
[2026-10-28 18:59:43,644.644 INFO    ] 200
[2026-10-28 18:59:43,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:59:43,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:59:43,703.703 INFO    ] No update needed
[2026-10-28 18:59:43,705.705 INFO    ] Checking for camera pi updates...
[2026-10-28 18:59:43,742.742 INFO    ] 200
[2026-10-28 18:59:43,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:59:43,785.785 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:59:43,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 18:59:43,875.875 INFO    ] No camera update needed
[2026-10-28 18:59:43,877.877 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:59:43,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:59:43,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:59:43,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:59:45,929.929 INFO    ] ================================================
[2026-10-28 18:59:45,944.944 INFO    ] Launching Daemon at Wed Oct 28 18:59:45 IST 2026
[2026-10-28 18:59:45,955.955 INFO    ] ================================================
[2026-10-28 18:59:46,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:59:46
[2026-10-28 18:59:47,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:59:47,349.349 INFO    ] Initializing speech engine...
[2026-10-28 18:59:47,362.362 INFO    ] 2026-10-28 18:59:47
[2026-10-28 18:59:47,628.628 INFO    ] 2026-10-28 18:59:47
[2026-10-28 18:59:47,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:59:48,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:59:48,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:59:48,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:59:48,358.358 INFO    ] time= 28/10/2026 18:59:48
[2026-10-28 18:59:48,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:59:48,451.451 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:59:48,600.600 INFO    ] No existing commands found in stream
[2026-10-28 18:59:53,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 18:59:53,616.616 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 18:59:54,352.352 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 18:59:54,355.355 INFO    ] Checking for system updates...
[2026-10-28 18:59:54,390.390 INFO    ] 200
[2026-10-28 18:59:54,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:59:54,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:59:54,448.448 INFO    ] No update needed
[2026-10-28 18:59:54,451.451 INFO    ] Checking for camera pi updates...
[2026-10-28 18:59:54,484.484 INFO    ] 200
[2026-10-28 18:59:54,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 18:59:54,527.527 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 18:59:54,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 18:59:54,613.613 INFO    ] No camera update needed
[2026-10-28 18:59:54,616.616 INFO    ] Script finished. Safe exiting...
[2026-10-28 18:59:54,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 18:59:54,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 18:59:54,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 18:59:56,670.670 INFO    ] ================================================
[2026-10-28 18:59:56,686.686 INFO    ] Launching Daemon at Wed Oct 28 18:59:56 IST 2026
[2026-10-28 18:59:56,698.698 INFO    ] ================================================
[2026-10-28 18:59:57,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 18:59:57
[2026-10-28 18:59:57,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 18:59:58,107.107 INFO    ] Initializing speech engine...
[2026-10-28 18:59:58,115.115 INFO    ] 2026-10-28 18:59:58
[2026-10-28 18:59:58,412.412 INFO    ] 2026-10-28 18:59:58
[2026-10-28 18:59:58,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 18:59:58,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 18:59:58,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 18:59:59,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 18:59:59,053.053 INFO    ] time= 28/10/2026 18:59:59
[2026-10-28 18:59:59,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 18:59:59,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-28 18:59:59,227.227 INFO    ] No existing commands found in stream
[2026-10-28 19:00:04,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:00:04,245.245 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 19:00:06,854.854 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:00:06,859.859 INFO    ] Checking for system updates...
[2026-10-28 19:00:06,904.904 INFO    ] 200
[2026-10-28 19:00:06,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:00:06,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:00:06,962.962 INFO    ] No update needed
[2026-10-28 19:00:06,965.965 INFO    ] Checking for camera pi updates...
[2026-10-28 19:00:06,999.999 INFO    ] 200
[2026-10-28 19:00:07,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:00:07,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:00:07,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:00:07,130.130 INFO    ] No camera update needed
[2026-10-28 19:00:07,133.133 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:00:07,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:00:07,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:00:07,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:00:09,186.186 INFO    ] ================================================
[2026-10-28 19:00:09,203.203 INFO    ] Launching Daemon at Wed Oct 28 19:00:09 IST 2026
[2026-10-28 19:00:09,214.214 INFO    ] ================================================
[2026-10-28 19:00:09,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:00:09
[2026-10-28 19:00:10,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:00:10,855.855 INFO    ] Initializing speech engine...
[2026-10-28 19:00:10,867.867 INFO    ] 2026-10-28 19:00:10
[2026-10-28 19:00:11,142.142 INFO    ] 2026-10-28 19:00:11
[2026-10-28 19:00:11,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:00:11,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:00:11,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:00:11,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:00:11,940.940 INFO    ] time= 28/10/2026 19:00:11
[2026-10-28 19:00:11,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:00:12,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:00:12,244.244 INFO    ] No existing commands found in stream
[2026-10-28 19:00:17,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:00:17,278.278 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-28 19:00:19,534.534 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:00:19,537.537 INFO    ] Checking for system updates...
[2026-10-28 19:00:19,574.574 INFO    ] 200
[2026-10-28 19:00:19,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:00:19,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:00:19,631.631 INFO    ] No update needed
[2026-10-28 19:00:19,633.633 INFO    ] Checking for camera pi updates...
[2026-10-28 19:00:19,671.671 INFO    ] 200
[2026-10-28 19:00:19,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:00:19,714.714 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:00:19,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:00:19,790.790 INFO    ] No camera update needed
[2026-10-28 19:00:19,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:00:19,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:00:19,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:00:19,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:00:21,845.845 INFO    ] ================================================
[2026-10-28 19:00:21,861.861 INFO    ] Launching Daemon at Wed Oct 28 19:00:21 IST 2026
[2026-10-28 19:00:21,872.872 INFO    ] ================================================
[2026-10-28 19:00:22,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:00:22
[2026-10-28 19:00:23,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:00:23,286.286 INFO    ] Initializing speech engine...
[2026-10-28 19:00:23,295.295 INFO    ] 2026-10-28 19:00:23
[2026-10-28 19:00:23,559.559 INFO    ] 2026-10-28 19:00:23
[2026-10-28 19:00:23,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:00:24,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:00:24,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:00:24,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:00:24,396.396 INFO    ] time= 28/10/2026 19:00:24
[2026-10-28 19:00:24,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:00:24,496.496 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:00:24,670.670 INFO    ] No existing commands found in stream
[2026-10-28 19:00:29,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:00:29,687.687 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 19:00:30,375.375 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:00:30,378.378 INFO    ] Checking for system updates...
[2026-10-28 19:00:30,421.421 INFO    ] 200
[2026-10-28 19:00:30,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:00:30,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:00:30,479.479 INFO    ] No update needed
[2026-10-28 19:00:30,481.481 INFO    ] Checking for camera pi updates...
[2026-10-28 19:00:30,515.515 INFO    ] 200
[2026-10-28 19:00:30,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:00:30,560.560 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:00:30,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:00:30,632.632 INFO    ] No camera update needed
[2026-10-28 19:00:30,635.635 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:00:30,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:00:30,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:00:30,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:00:32,693.693 INFO    ] ================================================
[2026-10-28 19:00:32,713.713 INFO    ] Launching Daemon at Wed Oct 28 19:00:32 IST 2026
[2026-10-28 19:00:32,727.727 INFO    ] ================================================
[2026-10-28 19:00:33,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:00:33
[2026-10-28 19:00:34,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:00:34,460.460 INFO    ] Initializing speech engine...
[2026-10-28 19:00:34,469.469 INFO    ] 2026-10-28 19:00:34
[2026-10-28 19:00:34,788.788 INFO    ] 2026-10-28 19:00:34
[2026-10-28 19:00:34,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:00:35,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:00:35,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:00:35,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:00:35,498.498 INFO    ] time= 28/10/2026 19:00:35
[2026-10-28 19:00:35,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:00:35,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:00:35,685.685 INFO    ] No existing commands found in stream
[2026-10-28 19:00:40,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:00:40,702.702 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-28 19:00:43,445.445 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:00:43,448.448 INFO    ] Checking for system updates...
[2026-10-28 19:00:43,486.486 INFO    ] 200
[2026-10-28 19:00:43,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:00:43,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:00:43,561.561 INFO    ] No update needed
[2026-10-28 19:00:43,564.564 INFO    ] Checking for camera pi updates...
[2026-10-28 19:00:43,600.600 INFO    ] 200
[2026-10-28 19:00:43,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:00:43,643.643 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:00:43,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:00:43,720.720 INFO    ] No camera update needed
[2026-10-28 19:00:43,723.723 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:00:43,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:00:43,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:00:43,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:00:45,776.776 INFO    ] ================================================
[2026-10-28 19:00:45,792.792 INFO    ] Launching Daemon at Wed Oct 28 19:00:45 IST 2026
[2026-10-28 19:00:45,804.804 INFO    ] ================================================
[2026-10-28 19:00:46,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:00:46
[2026-10-28 19:00:46,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:00:47,225.225 INFO    ] Initializing speech engine...
[2026-10-28 19:00:47,231.231 INFO    ] 2026-10-28 19:00:47
[2026-10-28 19:00:47,488.488 INFO    ] 2026-10-28 19:00:47
[2026-10-28 19:00:47,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:00:47,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:00:47,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:00:48,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:00:48,171.171 INFO    ] time= 28/10/2026 19:00:48
[2026-10-28 19:00:48,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:00:48,260.260 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:00:48,429.429 INFO    ] No existing commands found in stream
[2026-10-28 19:00:53,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:00:53,463.463 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-28 19:00:57,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:00:57,890.890 INFO    ] Checking for system updates...
[2026-10-28 19:00:57,932.932 INFO    ] 200
[2026-10-28 19:00:57,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:00:57,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:00:58,001.001 INFO    ] No update needed
[2026-10-28 19:00:58,004.004 INFO    ] Checking for camera pi updates...
[2026-10-28 19:00:58,044.044 INFO    ] 200
[2026-10-28 19:00:58,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:00:58,100.100 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:00:58,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:00:58,287.287 INFO    ] No camera update needed
[2026-10-28 19:00:58,290.290 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:00:58,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:00:58,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:00:58,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:01:00,349.349 INFO    ] ================================================
[2026-10-28 19:01:00,365.365 INFO    ] Launching Daemon at Wed Oct 28 19:01:00 IST 2026
[2026-10-28 19:01:00,376.376 INFO    ] ================================================
[2026-10-28 19:01:00,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:01:00
[2026-10-28 19:01:01,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:01:01,794.794 INFO    ] Initializing speech engine...
[2026-10-28 19:01:01,803.803 INFO    ] 2026-10-28 19:01:01
[2026-10-28 19:01:02,150.150 INFO    ] 2026-10-28 19:01:02
[2026-10-28 19:01:02,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:01:02,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:01:02,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:01:02,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:01:02,824.824 INFO    ] time= 28/10/2026 19:01:02
[2026-10-28 19:01:02,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:01:02,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:01:02,998.998 INFO    ] No existing commands found in stream
[2026-10-28 19:01:08,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:01:08,011.011 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-28 19:01:10,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:01:10,315.315 INFO    ] Checking for system updates...
[2026-10-28 19:01:10,351.351 INFO    ] 200
[2026-10-28 19:01:10,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:01:10,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:01:10,409.409 INFO    ] No update needed
[2026-10-28 19:01:10,412.412 INFO    ] Checking for camera pi updates...
[2026-10-28 19:01:10,446.446 INFO    ] 200
[2026-10-28 19:01:10,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:01:10,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:01:10,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:01:10,578.578 INFO    ] No camera update needed
[2026-10-28 19:01:10,581.581 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:01:10,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:01:10,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:01:10,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:01:12,634.634 INFO    ] ================================================
[2026-10-28 19:01:12,650.650 INFO    ] Launching Daemon at Wed Oct 28 19:01:12 IST 2026
[2026-10-28 19:01:12,661.661 INFO    ] ================================================
[2026-10-28 19:01:13,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:01:13
[2026-10-28 19:01:13,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:01:14,160.160 INFO    ] Initializing speech engine...
[2026-10-28 19:01:14,172.172 INFO    ] 2026-10-28 19:01:14
[2026-10-28 19:01:14,485.485 INFO    ] 2026-10-28 19:01:14
[2026-10-28 19:01:14,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:01:14,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:01:14,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:01:15,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:01:15,229.229 INFO    ] time= 28/10/2026 19:01:15
[2026-10-28 19:01:15,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:01:15,327.327 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:01:15,536.536 INFO    ] No existing commands found in stream
[2026-10-28 19:01:20,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:01:20,571.571 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-28 19:01:24,930.930 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:01:24,933.933 INFO    ] Checking for system updates...
[2026-10-28 19:01:24,973.973 INFO    ] 200
[2026-10-28 19:01:24,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:01:25,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:01:25,031.031 INFO    ] No update needed
[2026-10-28 19:01:25,034.034 INFO    ] Checking for camera pi updates...
[2026-10-28 19:01:25,069.069 INFO    ] 200
[2026-10-28 19:01:25,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:01:25,115.115 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:01:25,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:01:25,196.196 INFO    ] No camera update needed
[2026-10-28 19:01:25,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:01:25,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:01:25,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:01:25,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:01:27,251.251 INFO    ] ================================================
[2026-10-28 19:01:27,266.266 INFO    ] Launching Daemon at Wed Oct 28 19:01:27 IST 2026
[2026-10-28 19:01:27,277.277 INFO    ] ================================================
[2026-10-28 19:01:27,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:01:27
[2026-10-28 19:01:28,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:01:28,746.746 INFO    ] Initializing speech engine...
[2026-10-28 19:01:28,753.753 INFO    ] 2026-10-28 19:01:28
[2026-10-28 19:01:29,013.013 INFO    ] 2026-10-28 19:01:29
[2026-10-28 19:01:29,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:01:29,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:01:29,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:01:29,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:01:29,795.795 INFO    ] time= 28/10/2026 19:01:29
[2026-10-28 19:01:29,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:01:29,878.878 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:01:30,094.094 INFO    ] No existing commands found in stream
[2026-10-28 19:01:35,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:01:35,122.122 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-28 19:01:38,135.135 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:01:38,138.138 INFO    ] Checking for system updates...
[2026-10-28 19:01:38,177.177 INFO    ] 200
[2026-10-28 19:01:38,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:01:38,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:01:38,234.234 INFO    ] No update needed
[2026-10-28 19:01:38,237.237 INFO    ] Checking for camera pi updates...
[2026-10-28 19:01:38,271.271 INFO    ] 200
[2026-10-28 19:01:38,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:01:38,313.313 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:01:38,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:01:38,414.414 INFO    ] No camera update needed
[2026-10-28 19:01:38,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:01:38,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:01:38,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:01:38,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:01:40,471.471 INFO    ] ================================================
[2026-10-28 19:01:40,486.486 INFO    ] Launching Daemon at Wed Oct 28 19:01:40 IST 2026
[2026-10-28 19:01:40,497.497 INFO    ] ================================================
[2026-10-28 19:01:41,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:01:41
[2026-10-28 19:01:41,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:01:41,933.933 INFO    ] Initializing speech engine...
[2026-10-28 19:01:41,956.956 INFO    ] 2026-10-28 19:01:41
[2026-10-28 19:01:42,212.212 INFO    ] 2026-10-28 19:01:42
[2026-10-28 19:01:42,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:01:42,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:01:42,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:01:42,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:01:42,793.793 INFO    ] time= 28/10/2026 19:01:42
[2026-10-28 19:01:42,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:01:42,822.822 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:01:42,974.974 INFO    ] No existing commands found in stream
[2026-10-28 19:01:47,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:01:48,002.002 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-28 19:01:52,197.197 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:01:52,199.199 INFO    ] Checking for system updates...
[2026-10-28 19:01:52,235.235 INFO    ] 200
[2026-10-28 19:01:52,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:01:52,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:01:52,292.292 INFO    ] No update needed
[2026-10-28 19:01:52,295.295 INFO    ] Checking for camera pi updates...
[2026-10-28 19:01:52,333.333 INFO    ] 200
[2026-10-28 19:01:52,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:01:52,377.377 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:01:52,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:01:52,442.442 INFO    ] No camera update needed
[2026-10-28 19:01:52,445.445 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:01:52,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:01:52,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:01:52,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:01:54,504.504 INFO    ] ================================================
[2026-10-28 19:01:54,521.521 INFO    ] Launching Daemon at Wed Oct 28 19:01:54 IST 2026
[2026-10-28 19:01:54,532.532 INFO    ] ================================================
[2026-10-28 19:01:55,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:01:55
[2026-10-28 19:01:55,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:01:55,944.944 INFO    ] Initializing speech engine...
[2026-10-28 19:01:55,951.951 INFO    ] 2026-10-28 19:01:55
[2026-10-28 19:01:56,253.253 INFO    ] 2026-10-28 19:01:56
[2026-10-28 19:01:56,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:01:56,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:01:56,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:01:56,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:01:56,906.906 INFO    ] time= 28/10/2026 19:01:56
[2026-10-28 19:01:56,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:01:56,931.931 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:01:57,095.095 INFO    ] No existing commands found in stream
[2026-10-28 19:02:02,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:02:02,116.116 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-28 19:02:04,014.014 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:02:04,016.016 INFO    ] Checking for system updates...
[2026-10-28 19:02:04,053.053 INFO    ] 200
[2026-10-28 19:02:04,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:02:04,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:02:04,112.112 INFO    ] No update needed
[2026-10-28 19:02:04,115.115 INFO    ] Checking for camera pi updates...
[2026-10-28 19:02:04,152.152 INFO    ] 200
[2026-10-28 19:02:04,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:02:04,200.200 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:02:04,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:02:04,284.284 INFO    ] No camera update needed
[2026-10-28 19:02:04,287.287 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:02:04,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:02:04,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:02:04,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:02:06,344.344 INFO    ] ================================================
[2026-10-28 19:02:06,359.359 INFO    ] Launching Daemon at Wed Oct 28 19:02:06 IST 2026
[2026-10-28 19:02:06,370.370 INFO    ] ================================================
[2026-10-28 19:02:06,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:02:06
[2026-10-28 19:02:07,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:02:07,780.780 INFO    ] Initializing speech engine...
[2026-10-28 19:02:07,789.789 INFO    ] 2026-10-28 19:02:07
[2026-10-28 19:02:08,033.033 INFO    ] 2026-10-28 19:02:08
[2026-10-28 19:02:08,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:02:08,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:02:08,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:02:08,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:02:08,587.587 INFO    ] time= 28/10/2026 19:02:08
[2026-10-28 19:02:08,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:02:08,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:02:08,750.750 INFO    ] No existing commands found in stream
[2026-10-28 19:02:13,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:02:13,782.782 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-28 19:02:17,913.913 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:02:17,916.916 INFO    ] Checking for system updates...
[2026-10-28 19:02:17,952.952 INFO    ] 200
[2026-10-28 19:02:17,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:02:18,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:02:18,015.015 INFO    ] No update needed
[2026-10-28 19:02:18,018.018 INFO    ] Checking for camera pi updates...
[2026-10-28 19:02:18,055.055 INFO    ] 200
[2026-10-28 19:02:18,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:02:18,099.099 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:02:18,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:02:18,186.186 INFO    ] No camera update needed
[2026-10-28 19:02:18,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:02:18,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:02:18,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:02:18,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:02:20,246.246 INFO    ] ================================================
[2026-10-28 19:02:20,261.261 INFO    ] Launching Daemon at Wed Oct 28 19:02:20 IST 2026
[2026-10-28 19:02:20,273.273 INFO    ] ================================================
[2026-10-28 19:02:20,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:02:20
[2026-10-28 19:02:21,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:02:21,872.872 INFO    ] Initializing speech engine...
[2026-10-28 19:02:21,885.885 INFO    ] 2026-10-28 19:02:21
[2026-10-28 19:02:22,152.152 INFO    ] 2026-10-28 19:02:22
[2026-10-28 19:02:22,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:02:22,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:02:22,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:02:22,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:02:22,902.902 INFO    ] time= 28/10/2026 19:02:22
[2026-10-28 19:02:22,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:02:22,999.999 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:02:23,136.136 INFO    ] No existing commands found in stream
[2026-10-28 19:02:28,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:02:28,158.158 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-28 19:02:32,514.514 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:02:32,517.517 INFO    ] Checking for system updates...
[2026-10-28 19:02:32,558.558 INFO    ] 200
[2026-10-28 19:02:32,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:02:32,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:02:32,633.633 INFO    ] No update needed
[2026-10-28 19:02:32,636.636 INFO    ] Checking for camera pi updates...
[2026-10-28 19:02:32,670.670 INFO    ] 200
[2026-10-28 19:02:32,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:02:32,712.712 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:02:32,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:02:32,796.796 INFO    ] No camera update needed
[2026-10-28 19:02:32,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:02:32,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:02:32,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:02:32,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:02:34,852.852 INFO    ] ================================================
[2026-10-28 19:02:34,868.868 INFO    ] Launching Daemon at Wed Oct 28 19:02:34 IST 2026
[2026-10-28 19:02:34,878.878 INFO    ] ================================================
[2026-10-28 19:02:35,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:02:35
[2026-10-28 19:02:36,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:02:36,288.288 INFO    ] Initializing speech engine...
[2026-10-28 19:02:36,312.312 INFO    ] 2026-10-28 19:02:36
[2026-10-28 19:02:36,581.581 INFO    ] 2026-10-28 19:02:36
[2026-10-28 19:02:36,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:02:36,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:02:36,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:02:37,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:02:37,198.198 INFO    ] time= 28/10/2026 19:02:37
[2026-10-28 19:02:37,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:02:37,225.225 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:02:37,381.381 INFO    ] No existing commands found in stream
[2026-10-28 19:02:42,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:02:42,410.410 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-28 19:02:44,656.656 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:02:44,659.659 INFO    ] Checking for system updates...
[2026-10-28 19:02:44,695.695 INFO    ] 200
[2026-10-28 19:02:44,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:02:44,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:02:44,752.752 INFO    ] No update needed
[2026-10-28 19:02:44,755.755 INFO    ] Checking for camera pi updates...
[2026-10-28 19:02:44,788.788 INFO    ] 200
[2026-10-28 19:02:44,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:02:44,836.836 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:02:44,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:02:44,937.937 INFO    ] No camera update needed
[2026-10-28 19:02:44,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:02:44,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:02:44,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:02:44,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:02:46,992.992 INFO    ] ================================================
[2026-10-28 19:02:47,008.008 INFO    ] Launching Daemon at Wed Oct 28 19:02:47 IST 2026
[2026-10-28 19:02:47,019.019 INFO    ] ================================================
[2026-10-28 19:02:47,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:02:47
[2026-10-28 19:02:48,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:02:48,482.482 INFO    ] Initializing speech engine...
[2026-10-28 19:02:48,488.488 INFO    ] 2026-10-28 19:02:48
[2026-10-28 19:02:48,759.759 INFO    ] 2026-10-28 19:02:48
[2026-10-28 19:02:48,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:02:49,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:02:49,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:02:49,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:02:49,560.560 INFO    ] time= 28/10/2026 19:02:49
[2026-10-28 19:02:49,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:02:49,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:02:49,882.882 INFO    ] No existing commands found in stream
[2026-10-28 19:02:54,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:02:54,896.896 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-28 19:02:58,677.677 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:02:58,680.680 INFO    ] Checking for system updates...
[2026-10-28 19:02:58,718.718 INFO    ] 200
[2026-10-28 19:02:58,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:02:58,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:02:58,779.779 INFO    ] No update needed
[2026-10-28 19:02:58,782.782 INFO    ] Checking for camera pi updates...
[2026-10-28 19:02:58,820.820 INFO    ] 200
[2026-10-28 19:02:58,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:02:58,865.865 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:02:58,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:02:58,971.971 INFO    ] No camera update needed
[2026-10-28 19:02:58,974.974 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:02:58,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:02:58,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:02:58,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:03:01,029.029 INFO    ] ================================================
[2026-10-28 19:03:01,045.045 INFO    ] Launching Daemon at Wed Oct 28 19:03:01 IST 2026
[2026-10-28 19:03:01,056.056 INFO    ] ================================================
[2026-10-28 19:03:01,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:03:01
[2026-10-28 19:03:02,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:03:02,685.685 INFO    ] Initializing speech engine...
[2026-10-28 19:03:02,697.697 INFO    ] 2026-10-28 19:03:02
[2026-10-28 19:03:03,004.004 INFO    ] 2026-10-28 19:03:02
[2026-10-28 19:03:03,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:03:03,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:03:03,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:03:03,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:03:03,594.594 INFO    ] time= 28/10/2026 19:03:03
[2026-10-28 19:03:03,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:03:03,629.629 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:03:03,788.788 INFO    ] No existing commands found in stream
[2026-10-28 19:03:08,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:03:08,816.816 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 19:03:09,650.650 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:03:09,653.653 INFO    ] Checking for system updates...
[2026-10-28 19:03:09,691.691 INFO    ] 200
[2026-10-28 19:03:09,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:03:09,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:03:09,749.749 INFO    ] No update needed
[2026-10-28 19:03:09,751.751 INFO    ] Checking for camera pi updates...
[2026-10-28 19:03:09,785.785 INFO    ] 200
[2026-10-28 19:03:09,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:03:09,827.827 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:03:10,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:03:10,009.009 INFO    ] No camera update needed
[2026-10-28 19:03:10,011.011 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:03:10,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:03:10,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:03:10,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:03:12,065.065 INFO    ] ================================================
[2026-10-28 19:03:12,081.081 INFO    ] Launching Daemon at Wed Oct 28 19:03:12 IST 2026
[2026-10-28 19:03:12,092.092 INFO    ] ================================================
[2026-10-28 19:03:12,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:03:12
[2026-10-28 19:03:13,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:03:13,507.507 INFO    ] Initializing speech engine...
[2026-10-28 19:03:13,514.514 INFO    ] 2026-10-28 19:03:13
[2026-10-28 19:03:13,802.802 INFO    ] 2026-10-28 19:03:13
[2026-10-28 19:03:13,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:03:14,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:03:14,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:03:14,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:03:14,408.408 INFO    ] time= 28/10/2026 19:03:14
[2026-10-28 19:03:14,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:03:14,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:03:14,589.589 INFO    ] No existing commands found in stream
[2026-10-28 19:03:19,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:03:19,613.613 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-28 19:03:22,608.608 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:03:22,611.611 INFO    ] Checking for system updates...
[2026-10-28 19:03:22,649.649 INFO    ] 200
[2026-10-28 19:03:22,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:03:22,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:03:22,705.705 INFO    ] No update needed
[2026-10-28 19:03:22,708.708 INFO    ] Checking for camera pi updates...
[2026-10-28 19:03:22,745.745 INFO    ] 200
[2026-10-28 19:03:22,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:03:22,790.790 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:03:22,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:03:22,876.876 INFO    ] No camera update needed
[2026-10-28 19:03:22,878.878 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:03:22,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:03:22,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:03:22,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:03:24,930.930 INFO    ] ================================================
[2026-10-28 19:03:24,946.946 INFO    ] Launching Daemon at Wed Oct 28 19:03:24 IST 2026
[2026-10-28 19:03:24,957.957 INFO    ] ================================================
[2026-10-28 19:03:25,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:03:25
[2026-10-28 19:03:26,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:03:26,369.369 INFO    ] Initializing speech engine...
[2026-10-28 19:03:26,388.388 INFO    ] 2026-10-28 19:03:26
[2026-10-28 19:03:26,637.637 INFO    ] 2026-10-28 19:03:26
[2026-10-28 19:03:26,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:03:26,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:03:26,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:03:27,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:03:27,198.198 INFO    ] time= 28/10/2026 19:03:27
[2026-10-28 19:03:27,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:03:27,221.221 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:03:27,360.360 INFO    ] No existing commands found in stream
[2026-10-28 19:03:32,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:03:32,389.389 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-10-28 19:03:33,846.846 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:03:33,849.849 INFO    ] Checking for system updates...
[2026-10-28 19:03:33,889.889 INFO    ] 200
[2026-10-28 19:03:33,892.892 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 19:03:33,895.895 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-28 19:03:33,897.897 INFO    ] Checking for camera pi updates...
[2026-10-28 19:03:33,947.947 INFO    ] 200
[2026-10-28 19:03:33,950.950 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 19:03:33,953.953 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-28 19:03:33,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:03:33,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:03:33,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:03:33,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:03:36,012.012 INFO    ] ================================================
[2026-10-28 19:03:36,028.028 INFO    ] Launching Daemon at Wed Oct 28 19:03:36 IST 2026
[2026-10-28 19:03:36,039.039 INFO    ] ================================================
[2026-10-28 19:03:36,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:03:36
[2026-10-28 19:03:37,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:03:37,540.540 INFO    ] Initializing speech engine...
[2026-10-28 19:03:37,548.548 INFO    ] 2026-10-28 19:03:37
[2026-10-28 19:03:37,826.826 INFO    ] 2026-10-28 19:03:37
[2026-10-28 19:03:37,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:03:38,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:03:38,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:03:38,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:03:38,395.395 INFO    ] time= 28/10/2026 19:03:38
[2026-10-28 19:03:38,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:03:38,431.431 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:03:38,550.550 INFO    ] No existing commands found in stream
[2026-10-28 19:03:43,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:03:43,568.568 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 19:03:45,395.395 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:03:45,397.397 INFO    ] Checking for system updates...
[2026-10-28 19:03:45,435.435 INFO    ] 200
[2026-10-28 19:03:45,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:03:45,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:03:45,494.494 INFO    ] No update needed
[2026-10-28 19:03:45,497.497 INFO    ] Checking for camera pi updates...
[2026-10-28 19:03:45,531.531 INFO    ] 200
[2026-10-28 19:03:45,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:03:45,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:03:45,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:03:45,664.664 INFO    ] No camera update needed
[2026-10-28 19:03:45,667.667 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:03:45,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:03:45,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:03:45,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:03:47,726.726 INFO    ] ================================================
[2026-10-28 19:03:47,741.741 INFO    ] Launching Daemon at Wed Oct 28 19:03:47 IST 2026
[2026-10-28 19:03:47,752.752 INFO    ] ================================================
[2026-10-28 19:03:48,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:03:48
[2026-10-28 19:03:49,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:03:49,309.309 INFO    ] Initializing speech engine...
[2026-10-28 19:03:49,322.322 INFO    ] 2026-10-28 19:03:49
[2026-10-28 19:03:49,626.626 INFO    ] 2026-10-28 19:03:49
[2026-10-28 19:03:49,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:03:49,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:03:50,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:03:50,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:03:50,297.297 INFO    ] time= 28/10/2026 19:03:50
[2026-10-28 19:03:50,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:03:50,378.378 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:03:50,522.522 INFO    ] No existing commands found in stream
[2026-10-28 19:03:55,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:03:55,547.547 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-28 19:03:56,402.402 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:03:56,405.405 INFO    ] Checking for system updates...
[2026-10-28 19:03:56,444.444 INFO    ] 200
[2026-10-28 19:03:56,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:03:56,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:03:56,507.507 INFO    ] No update needed
[2026-10-28 19:03:56,510.510 INFO    ] Checking for camera pi updates...
[2026-10-28 19:03:56,543.543 INFO    ] 200
[2026-10-28 19:03:56,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:03:56,587.587 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:03:56,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:03:56,676.676 INFO    ] No camera update needed
[2026-10-28 19:03:56,678.678 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:03:56,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:03:56,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:03:56,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:03:58,730.730 INFO    ] ================================================
[2026-10-28 19:03:58,746.746 INFO    ] Launching Daemon at Wed Oct 28 19:03:58 IST 2026
[2026-10-28 19:03:58,757.757 INFO    ] ================================================
[2026-10-28 19:03:59,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:03:59
[2026-10-28 19:04:00,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:04:00,364.364 INFO    ] Initializing speech engine...
[2026-10-28 19:04:00,378.378 INFO    ] 2026-10-28 19:04:00
[2026-10-28 19:04:00,655.655 INFO    ] 2026-10-28 19:04:00
[2026-10-28 19:04:00,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:04:01,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:04:01,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:04:01,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:04:01,406.406 INFO    ] time= 28/10/2026 19:04:01
[2026-10-28 19:04:01,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:04:01,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:04:01,640.640 INFO    ] No existing commands found in stream
[2026-10-28 19:04:06,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:04:06,654.654 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-28 19:04:10,916.916 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:04:10,920.920 INFO    ] Checking for system updates...
[2026-10-28 19:04:10,960.960 INFO    ] 200
[2026-10-28 19:04:10,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:04:11,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:04:11,023.023 INFO    ] No update needed
[2026-10-28 19:04:11,026.026 INFO    ] Checking for camera pi updates...
[2026-10-28 19:04:11,064.064 INFO    ] 200
[2026-10-28 19:04:11,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:04:11,114.114 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:04:11,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:04:11,221.221 INFO    ] No camera update needed
[2026-10-28 19:04:11,224.224 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:04:11,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:04:11,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:04:11,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:04:13,279.279 INFO    ] ================================================
[2026-10-28 19:04:13,294.294 INFO    ] Launching Daemon at Wed Oct 28 19:04:13 IST 2026
[2026-10-28 19:04:13,306.306 INFO    ] ================================================
[2026-10-28 19:04:13,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:04:13
[2026-10-28 19:04:14,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:04:14,916.916 INFO    ] Initializing speech engine...
[2026-10-28 19:04:14,922.922 INFO    ] 2026-10-28 19:04:14
[2026-10-28 19:04:15,194.194 INFO    ] 2026-10-28 19:04:15
[2026-10-28 19:04:15,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:04:15,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:04:15,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:04:15,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:04:15,947.947 INFO    ] time= 28/10/2026 19:04:15
[2026-10-28 19:04:16,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:04:16,027.027 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:04:16,221.221 INFO    ] No existing commands found in stream
[2026-10-28 19:04:21,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:04:21,238.238 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 19:04:24,479.479 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:04:24,482.482 INFO    ] Checking for system updates...
[2026-10-28 19:04:24,523.523 INFO    ] 200
[2026-10-28 19:04:24,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:04:24,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:04:24,587.587 INFO    ] No update needed
[2026-10-28 19:04:24,589.589 INFO    ] Checking for camera pi updates...
[2026-10-28 19:04:24,627.627 INFO    ] 200
[2026-10-28 19:04:24,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:04:24,676.676 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:04:24,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:04:24,777.777 INFO    ] No camera update needed
[2026-10-28 19:04:24,779.779 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:04:24,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:04:24,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:04:24,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:04:26,833.833 INFO    ] ================================================
[2026-10-28 19:04:26,849.849 INFO    ] Launching Daemon at Wed Oct 28 19:04:26 IST 2026
[2026-10-28 19:04:26,859.859 INFO    ] ================================================
[2026-10-28 19:04:27,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:04:27
[2026-10-28 19:04:28,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:04:28,330.330 INFO    ] Initializing speech engine...
[2026-10-28 19:04:28,336.336 INFO    ] 2026-10-28 19:04:28
[2026-10-28 19:04:28,603.603 INFO    ] 2026-10-28 19:04:28
[2026-10-28 19:04:28,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:04:28,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:04:28,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:04:29,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:04:29,229.229 INFO    ] time= 28/10/2026 19:04:29
[2026-10-28 19:04:29,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:04:29,254.254 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:04:29,398.398 INFO    ] No existing commands found in stream
[2026-10-28 19:04:34,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:04:34,417.417 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 19:04:38,095.095 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:04:38,098.098 INFO    ] Checking for system updates...
[2026-10-28 19:04:38,134.134 INFO    ] 200
[2026-10-28 19:04:38,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:04:38,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:04:38,192.192 INFO    ] No update needed
[2026-10-28 19:04:38,195.195 INFO    ] Checking for camera pi updates...
[2026-10-28 19:04:38,232.232 INFO    ] 200
[2026-10-28 19:04:38,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:04:38,276.276 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:04:38,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:04:38,328.328 INFO    ] No camera update needed
[2026-10-28 19:04:38,330.330 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:04:38,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:04:38,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:04:38,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:04:40,384.384 INFO    ] ================================================
[2026-10-28 19:04:40,399.399 INFO    ] Launching Daemon at Wed Oct 28 19:04:40 IST 2026
[2026-10-28 19:04:40,410.410 INFO    ] ================================================
[2026-10-28 19:04:40,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:04:40
[2026-10-28 19:04:41,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:04:41,832.832 INFO    ] Initializing speech engine...
[2026-10-28 19:04:41,847.847 INFO    ] 2026-10-28 19:04:41
[2026-10-28 19:04:42,117.117 INFO    ] 2026-10-28 19:04:42
[2026-10-28 19:04:42,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:04:42,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:04:42,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:04:42,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:04:42,610.610 INFO    ] time= 28/10/2026 19:04:42
[2026-10-28 19:04:42,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:04:42,708.708 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:04:42,811.811 INFO    ] No existing commands found in stream
[2026-10-28 19:04:47,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:04:47,826.826 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 19:04:51,772.772 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:04:51,775.775 INFO    ] Checking for system updates...
[2026-10-28 19:04:51,811.811 INFO    ] 200
[2026-10-28 19:04:51,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:04:51,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:04:51,876.876 INFO    ] No update needed
[2026-10-28 19:04:51,879.879 INFO    ] Checking for camera pi updates...
[2026-10-28 19:04:51,914.914 INFO    ] 200
[2026-10-28 19:04:51,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:04:51,959.959 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:04:52,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:04:52,064.064 INFO    ] No camera update needed
[2026-10-28 19:04:52,066.066 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:04:52,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:04:52,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:04:52,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:04:54,123.123 INFO    ] ================================================
[2026-10-28 19:04:54,139.139 INFO    ] Launching Daemon at Wed Oct 28 19:04:54 IST 2026
[2026-10-28 19:04:54,150.150 INFO    ] ================================================
[2026-10-28 19:04:54,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:04:54
[2026-10-28 19:04:55,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:04:55,648.648 INFO    ] Initializing speech engine...
[2026-10-28 19:04:55,676.676 INFO    ] 2026-10-28 19:04:55
[2026-10-28 19:04:55,947.947 INFO    ] 2026-10-28 19:04:55
[2026-10-28 19:04:55,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:04:56,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:04:56,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:04:56,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:04:56,543.543 INFO    ] time= 28/10/2026 19:04:56
[2026-10-28 19:04:56,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:04:56,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:04:56,727.727 INFO    ] No existing commands found in stream
[2026-10-28 19:05:01,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:05:01,759.759 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-28 19:05:04,717.717 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:05:04,720.720 INFO    ] Checking for system updates...
[2026-10-28 19:05:04,759.759 INFO    ] 200
[2026-10-28 19:05:04,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:05:04,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:05:04,822.822 INFO    ] No update needed
[2026-10-28 19:05:04,825.825 INFO    ] Checking for camera pi updates...
[2026-10-28 19:05:04,859.859 INFO    ] 200
[2026-10-28 19:05:04,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:05:04,910.910 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:05:04,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:05:04,993.993 INFO    ] No camera update needed
[2026-10-28 19:05:04,995.995 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:05:04,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:05:05,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:05:05,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:05:07,047.047 INFO    ] ================================================
[2026-10-28 19:05:07,064.064 INFO    ] Launching Daemon at Wed Oct 28 19:05:07 IST 2026
[2026-10-28 19:05:07,075.075 INFO    ] ================================================
[2026-10-28 19:05:07,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:05:07
[2026-10-28 19:05:08,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:05:08,712.712 INFO    ] Initializing speech engine...
[2026-10-28 19:05:08,717.717 INFO    ] 2026-10-28 19:05:08
[2026-10-28 19:05:09,000.000 INFO    ] 2026-10-28 19:05:08
[2026-10-28 19:05:09,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:05:09,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:05:09,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:05:09,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:05:09,614.614 INFO    ] time= 28/10/2026 19:05:09
[2026-10-28 19:05:09,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:05:09,710.710 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:05:09,877.877 INFO    ] No existing commands found in stream
[2026-10-28 19:05:14,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:05:14,906.906 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-28 19:05:19,158.158 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:05:19,161.161 INFO    ] Checking for system updates...
[2026-10-28 19:05:19,197.197 INFO    ] 200
[2026-10-28 19:05:19,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:05:19,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:05:19,262.262 INFO    ] No update needed
[2026-10-28 19:05:19,264.264 INFO    ] Checking for camera pi updates...
[2026-10-28 19:05:19,298.298 INFO    ] 200
[2026-10-28 19:05:19,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:05:19,341.341 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:05:19,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:05:19,433.433 INFO    ] No camera update needed
[2026-10-28 19:05:19,436.436 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:05:19,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:05:19,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:05:19,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:05:21,489.489 INFO    ] ================================================
[2026-10-28 19:05:21,505.505 INFO    ] Launching Daemon at Wed Oct 28 19:05:21 IST 2026
[2026-10-28 19:05:21,515.515 INFO    ] ================================================
[2026-10-28 19:05:22,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:05:22
[2026-10-28 19:05:22,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:05:23,167.167 INFO    ] Initializing speech engine...
[2026-10-28 19:05:23,180.180 INFO    ] 2026-10-28 19:05:23
[2026-10-28 19:05:23,453.453 INFO    ] 2026-10-28 19:05:23
[2026-10-28 19:05:23,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:05:23,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:05:23,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:05:24,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:05:24,193.193 INFO    ] time= 28/10/2026 19:05:24
[2026-10-28 19:05:24,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:05:24,272.272 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:05:24,467.467 INFO    ] No existing commands found in stream
[2026-10-28 19:05:29,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:05:29,489.489 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 19:05:33,517.517 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:05:33,520.520 INFO    ] Checking for system updates...
[2026-10-28 19:05:33,558.558 INFO    ] 200
[2026-10-28 19:05:33,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:05:33,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:05:33,616.616 INFO    ] No update needed
[2026-10-28 19:05:33,619.619 INFO    ] Checking for camera pi updates...
[2026-10-28 19:05:33,656.656 INFO    ] 200
[2026-10-28 19:05:33,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:05:33,704.704 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:05:33,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:05:33,809.809 INFO    ] No camera update needed
[2026-10-28 19:05:33,811.811 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:05:33,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:05:33,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:05:33,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:05:35,865.865 INFO    ] ================================================
[2026-10-28 19:05:35,881.881 INFO    ] Launching Daemon at Wed Oct 28 19:05:35 IST 2026
[2026-10-28 19:05:35,891.891 INFO    ] ================================================
[2026-10-28 19:05:36,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:05:36
[2026-10-28 19:05:37,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:05:37,307.307 INFO    ] Initializing speech engine...
[2026-10-28 19:05:37,327.327 INFO    ] 2026-10-28 19:05:37
[2026-10-28 19:05:37,573.573 INFO    ] 2026-10-28 19:05:37
[2026-10-28 19:05:37,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:05:37,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:05:37,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:05:38,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:05:38,140.140 INFO    ] time= 28/10/2026 19:05:38
[2026-10-28 19:05:38,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:05:38,175.175 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:05:38,295.295 INFO    ] No existing commands found in stream
[2026-10-28 19:05:43,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:05:43,328.328 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 19:05:45,073.073 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:05:45,076.076 INFO    ] Checking for system updates...
[2026-10-28 19:05:45,115.115 INFO    ] 200
[2026-10-28 19:05:45,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:05:45,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:05:45,173.173 INFO    ] No update needed
[2026-10-28 19:05:45,175.175 INFO    ] Checking for camera pi updates...
[2026-10-28 19:05:45,212.212 INFO    ] 200
[2026-10-28 19:05:45,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:05:45,259.259 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:05:45,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:05:45,330.330 INFO    ] No camera update needed
[2026-10-28 19:05:45,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:05:45,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:05:45,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:05:45,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:05:47,386.386 INFO    ] ================================================
[2026-10-28 19:05:47,401.401 INFO    ] Launching Daemon at Wed Oct 28 19:05:47 IST 2026
[2026-10-28 19:05:47,412.412 INFO    ] ================================================
[2026-10-28 19:05:47,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:05:47
[2026-10-28 19:05:48,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:05:48,813.813 INFO    ] Initializing speech engine...
[2026-10-28 19:05:48,819.819 INFO    ] 2026-10-28 19:05:48
[2026-10-28 19:05:49,094.094 INFO    ] 2026-10-28 19:05:49
[2026-10-28 19:05:49,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:05:49,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:05:49,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:05:49,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:05:49,661.661 INFO    ] time= 28/10/2026 19:05:49
[2026-10-28 19:05:49,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:05:49,685.685 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:05:49,815.815 INFO    ] No existing commands found in stream
[2026-10-28 19:05:54,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:05:54,832.832 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 19:05:56,280.280 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:05:56,283.283 INFO    ] Checking for system updates...
[2026-10-28 19:05:56,318.318 INFO    ] 200
[2026-10-28 19:05:56,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:05:56,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:05:56,377.377 INFO    ] No update needed
[2026-10-28 19:05:56,379.379 INFO    ] Checking for camera pi updates...
[2026-10-28 19:05:56,413.413 INFO    ] 200
[2026-10-28 19:05:56,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:05:56,457.457 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:05:56,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:05:56,538.538 INFO    ] No camera update needed
[2026-10-28 19:05:56,541.541 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:05:56,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:05:56,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:05:56,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:05:58,593.593 INFO    ] ================================================
[2026-10-28 19:05:58,608.608 INFO    ] Launching Daemon at Wed Oct 28 19:05:58 IST 2026
[2026-10-28 19:05:58,619.619 INFO    ] ================================================
[2026-10-28 19:05:59,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:05:59
[2026-10-28 19:05:59,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:06:00,066.066 INFO    ] Initializing speech engine...
[2026-10-28 19:06:00,075.075 INFO    ] 2026-10-28 19:06:00
[2026-10-28 19:06:00,343.343 INFO    ] 2026-10-28 19:06:00
[2026-10-28 19:06:00,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:06:00,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:06:00,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:06:01,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:06:01,128.128 INFO    ] time= 28/10/2026 19:06:01
[2026-10-28 19:06:01,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:06:01,223.223 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:06:01,369.369 INFO    ] No existing commands found in stream
[2026-10-28 19:06:06,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:06:06,383.383 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 19:06:09,759.759 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:06:09,762.762 INFO    ] Checking for system updates...
[2026-10-28 19:06:09,801.801 INFO    ] 200
[2026-10-28 19:06:09,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:06:09,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:06:09,867.867 INFO    ] No update needed
[2026-10-28 19:06:09,870.870 INFO    ] Checking for camera pi updates...
[2026-10-28 19:06:09,907.907 INFO    ] 200
[2026-10-28 19:06:09,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:06:09,954.954 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:06:10,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:06:10,047.047 INFO    ] No camera update needed
[2026-10-28 19:06:10,049.049 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:06:10,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:06:10,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:06:10,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:06:12,102.102 INFO    ] ================================================
[2026-10-28 19:06:12,118.118 INFO    ] Launching Daemon at Wed Oct 28 19:06:12 IST 2026
[2026-10-28 19:06:12,129.129 INFO    ] ================================================
[2026-10-28 19:06:12,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:06:12
[2026-10-28 19:06:13,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:06:13,585.585 INFO    ] Initializing speech engine...
[2026-10-28 19:06:13,595.595 INFO    ] 2026-10-28 19:06:13
[2026-10-28 19:06:13,854.854 INFO    ] 2026-10-28 19:06:13
[2026-10-28 19:06:13,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:06:14,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:06:14,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:06:14,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:06:14,639.639 INFO    ] time= 28/10/2026 19:06:14
[2026-10-28 19:06:14,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:06:14,742.742 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:06:14,844.844 INFO    ] No existing commands found in stream
[2026-10-28 19:06:19,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:06:19,872.872 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-28 19:06:24,194.194 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:06:24,196.196 INFO    ] Checking for system updates...
[2026-10-28 19:06:24,232.232 INFO    ] 200
[2026-10-28 19:06:24,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:06:24,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:06:24,296.296 INFO    ] No update needed
[2026-10-28 19:06:24,298.298 INFO    ] Checking for camera pi updates...
[2026-10-28 19:06:24,335.335 INFO    ] 200
[2026-10-28 19:06:24,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:06:24,377.377 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:06:24,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:06:24,475.475 INFO    ] No camera update needed
[2026-10-28 19:06:24,478.478 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:06:24,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:06:24,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:06:24,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:06:26,532.532 INFO    ] ================================================
[2026-10-28 19:06:26,547.547 INFO    ] Launching Daemon at Wed Oct 28 19:06:26 IST 2026
[2026-10-28 19:06:26,557.557 INFO    ] ================================================
[2026-10-28 19:06:27,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:06:27
[2026-10-28 19:06:27,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:06:27,974.974 INFO    ] Initializing speech engine...
[2026-10-28 19:06:27,983.983 INFO    ] 2026-10-28 19:06:27
[2026-10-28 19:06:28,232.232 INFO    ] 2026-10-28 19:06:28
[2026-10-28 19:06:28,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:06:28,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:06:28,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:06:28,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:06:28,808.808 INFO    ] time= 28/10/2026 19:06:28
[2026-10-28 19:06:28,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:06:28,844.844 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:06:28,974.974 INFO    ] No existing commands found in stream
[2026-10-28 19:06:33,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:06:34,002.002 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-28 19:06:38,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:06:38,564.564 INFO    ] Checking for system updates...
[2026-10-28 19:06:38,600.600 INFO    ] 200
[2026-10-28 19:06:38,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:06:38,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:06:38,659.659 INFO    ] No update needed
[2026-10-28 19:06:38,662.662 INFO    ] Checking for camera pi updates...
[2026-10-28 19:06:38,695.695 INFO    ] 200
[2026-10-28 19:06:38,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:06:38,742.742 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:06:38,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:06:38,814.814 INFO    ] No camera update needed
[2026-10-28 19:06:38,817.817 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:06:38,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:06:38,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:06:38,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:06:40,871.871 INFO    ] ================================================
[2026-10-28 19:06:40,886.886 INFO    ] Launching Daemon at Wed Oct 28 19:06:40 IST 2026
[2026-10-28 19:06:40,897.897 INFO    ] ================================================
[2026-10-28 19:06:41,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:06:41
[2026-10-28 19:06:42,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:06:42,425.425 INFO    ] Initializing speech engine...
[2026-10-28 19:06:42,436.436 INFO    ] 2026-10-28 19:06:42
[2026-10-28 19:06:42,735.735 INFO    ] 2026-10-28 19:06:42
[2026-10-28 19:06:42,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:06:43,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:06:43,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:06:43,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:06:43,417.417 INFO    ] time= 28/10/2026 19:06:43
[2026-10-28 19:06:43,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:06:43,478.478 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:06:43,660.660 INFO    ] No existing commands found in stream
[2026-10-28 19:06:48,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:06:48,700.700 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 19:06:49,852.852 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:06:49,855.855 INFO    ] Checking for system updates...
[2026-10-28 19:06:49,896.896 INFO    ] 200
[2026-10-28 19:06:49,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:06:49,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:06:49,965.965 INFO    ] No update needed
[2026-10-28 19:06:49,969.969 INFO    ] Checking for camera pi updates...
[2026-10-28 19:06:50,010.010 INFO    ] 200
[2026-10-28 19:06:50,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:06:50,109.109 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:06:50,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:06:50,203.203 INFO    ] No camera update needed
[2026-10-28 19:06:50,206.206 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:06:50,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:06:50,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:06:50,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:06:52,265.265 INFO    ] ================================================
[2026-10-28 19:06:52,281.281 INFO    ] Launching Daemon at Wed Oct 28 19:06:52 IST 2026
[2026-10-28 19:06:52,292.292 INFO    ] ================================================
[2026-10-28 19:06:52,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:06:52
[2026-10-28 19:06:53,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:06:53,739.739 INFO    ] Initializing speech engine...
[2026-10-28 19:06:53,757.757 INFO    ] 2026-10-28 19:06:53
[2026-10-28 19:06:54,031.031 INFO    ] 2026-10-28 19:06:54
[2026-10-28 19:06:54,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:06:54,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:06:54,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:06:54,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:06:54,656.656 INFO    ] time= 28/10/2026 19:06:54
[2026-10-28 19:06:54,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:06:54,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:06:54,827.827 INFO    ] No existing commands found in stream
[2026-10-28 19:06:59,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:06:59,851.851 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-28 19:07:02,087.087 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:07:02,091.091 INFO    ] Checking for system updates...
[2026-10-28 19:07:02,146.146 INFO    ] 200
[2026-10-28 19:07:02,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:07:02,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:07:02,221.221 INFO    ] No update needed
[2026-10-28 19:07:02,224.224 INFO    ] Checking for camera pi updates...
[2026-10-28 19:07:02,269.269 INFO    ] 200
[2026-10-28 19:07:02,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:07:02,317.317 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:07:02,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:07:02,426.426 INFO    ] No camera update needed
[2026-10-28 19:07:02,430.430 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:07:02,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:07:02,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:07:02,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:07:04,489.489 INFO    ] ================================================
[2026-10-28 19:07:04,504.504 INFO    ] Launching Daemon at Wed Oct 28 19:07:04 IST 2026
[2026-10-28 19:07:04,514.514 INFO    ] ================================================
[2026-10-28 19:07:05,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:07:05
[2026-10-28 19:07:05,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:07:06,059.059 INFO    ] Initializing speech engine...
[2026-10-28 19:07:06,070.070 INFO    ] 2026-10-28 19:07:06
[2026-10-28 19:07:06,351.351 INFO    ] 2026-10-28 19:07:06
[2026-10-28 19:07:06,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:07:06,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:07:06,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:07:07,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:07:07,116.116 INFO    ] time= 28/10/2026 19:07:07
[2026-10-28 19:07:07,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:07:07,215.215 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:07:07,341.341 INFO    ] No existing commands found in stream
[2026-10-28 19:07:12,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:07:12,355.355 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-28 19:07:15,364.364 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:07:15,367.367 INFO    ] Checking for system updates...
[2026-10-28 19:07:15,404.404 INFO    ] 200
[2026-10-28 19:07:15,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:07:15,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:07:15,467.467 INFO    ] No update needed
[2026-10-28 19:07:15,471.471 INFO    ] Checking for camera pi updates...
[2026-10-28 19:07:15,505.505 INFO    ] 200
[2026-10-28 19:07:15,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:07:15,549.549 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:07:15,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:07:15,649.649 INFO    ] No camera update needed
[2026-10-28 19:07:15,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:07:15,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:07:15,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:07:15,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:07:17,706.706 INFO    ] ================================================
[2026-10-28 19:07:17,721.721 INFO    ] Launching Daemon at Wed Oct 28 19:07:17 IST 2026
[2026-10-28 19:07:17,731.731 INFO    ] ================================================
[2026-10-28 19:07:18,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:07:18
[2026-10-28 19:07:18,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:07:19,138.138 INFO    ] Initializing speech engine...
[2026-10-28 19:07:19,152.152 INFO    ] 2026-10-28 19:07:19
[2026-10-28 19:07:19,406.406 INFO    ] 2026-10-28 19:07:19
[2026-10-28 19:07:19,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:07:19,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:07:19,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:07:19,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:07:19,987.987 INFO    ] time= 28/10/2026 19:07:19
[2026-10-28 19:07:20,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:07:20,023.023 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:07:20,153.153 INFO    ] No existing commands found in stream
[2026-10-28 19:07:25,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:07:25,186.186 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-28 19:07:26,874.874 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:07:26,876.876 INFO    ] Checking for system updates...
[2026-10-28 19:07:26,911.911 INFO    ] 200
[2026-10-28 19:07:26,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:07:26,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:07:26,973.973 INFO    ] No update needed
[2026-10-28 19:07:26,976.976 INFO    ] Checking for camera pi updates...
[2026-10-28 19:07:27,009.009 INFO    ] 200
[2026-10-28 19:07:27,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:07:27,055.055 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:07:27,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:07:27,241.241 INFO    ] No camera update needed
[2026-10-28 19:07:27,244.244 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:07:27,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:07:27,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:07:27,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:07:29,297.297 INFO    ] ================================================
[2026-10-28 19:07:29,312.312 INFO    ] Launching Daemon at Wed Oct 28 19:07:29 IST 2026
[2026-10-28 19:07:29,322.322 INFO    ] ================================================
[2026-10-28 19:07:29,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:07:29
[2026-10-28 19:07:30,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:07:30,890.890 INFO    ] Initializing speech engine...
[2026-10-28 19:07:30,909.909 INFO    ] 2026-10-28 19:07:30
[2026-10-28 19:07:31,176.176 INFO    ] 2026-10-28 19:07:31
[2026-10-28 19:07:31,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:07:31,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:07:31,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:07:31,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:07:32,017.017 INFO    ] time= 28/10/2026 19:07:31
[2026-10-28 19:07:32,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:07:32,144.144 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:07:32,335.335 INFO    ] No existing commands found in stream
[2026-10-28 19:07:37,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:07:37,351.351 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-10-28 19:07:39,715.715 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:07:39,717.717 INFO    ] Checking for system updates...
[2026-10-28 19:07:39,754.754 INFO    ] 200
[2026-10-28 19:07:39,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:07:39,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:07:39,812.812 INFO    ] No update needed
[2026-10-28 19:07:39,815.815 INFO    ] Checking for camera pi updates...
[2026-10-28 19:07:39,851.851 INFO    ] 200
[2026-10-28 19:07:39,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:07:39,902.902 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:07:39,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:07:39,987.987 INFO    ] No camera update needed
[2026-10-28 19:07:39,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:07:39,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:07:39,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:07:40,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:07:42,043.043 INFO    ] ================================================
[2026-10-28 19:07:42,059.059 INFO    ] Launching Daemon at Wed Oct 28 19:07:42 IST 2026
[2026-10-28 19:07:42,070.070 INFO    ] ================================================
[2026-10-28 19:07:42,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:07:42
[2026-10-28 19:07:43,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:07:43,618.618 INFO    ] Initializing speech engine...
[2026-10-28 19:07:43,629.629 INFO    ] 2026-10-28 19:07:43
[2026-10-28 19:07:43,887.887 INFO    ] 2026-10-28 19:07:43
[2026-10-28 19:07:43,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:07:44,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:07:44,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:07:44,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:07:44,473.473 INFO    ] time= 28/10/2026 19:07:44
[2026-10-28 19:07:44,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:07:44,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:07:44,679.679 INFO    ] No existing commands found in stream
[2026-10-28 19:07:49,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:07:49,708.708 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-28 19:07:51,794.794 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:07:51,797.797 INFO    ] Checking for system updates...
[2026-10-28 19:07:51,832.832 INFO    ] 200
[2026-10-28 19:07:51,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:07:51,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:07:51,891.891 INFO    ] No update needed
[2026-10-28 19:07:51,894.894 INFO    ] Checking for camera pi updates...
[2026-10-28 19:07:51,928.928 INFO    ] 200
[2026-10-28 19:07:51,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:07:51,971.971 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:07:52,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:07:52,067.067 INFO    ] No camera update needed
[2026-10-28 19:07:52,069.069 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:07:52,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:07:52,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:07:52,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:07:54,123.123 INFO    ] ================================================
[2026-10-28 19:07:54,138.138 INFO    ] Launching Daemon at Wed Oct 28 19:07:54 IST 2026
[2026-10-28 19:07:54,148.148 INFO    ] ================================================
[2026-10-28 19:07:54,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:07:54
[2026-10-28 19:07:55,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:07:55,681.681 INFO    ] Initializing speech engine...
[2026-10-28 19:07:55,704.704 INFO    ] 2026-10-28 19:07:55
[2026-10-28 19:07:55,971.971 INFO    ] 2026-10-28 19:07:55
[2026-10-28 19:07:56,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:07:56,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:07:56,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:07:56,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:07:56,584.584 INFO    ] time= 28/10/2026 19:07:56
[2026-10-28 19:07:56,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:07:56,600.600 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:07:56,760.760 INFO    ] No existing commands found in stream
[2026-10-28 19:08:01,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:08:01,795.795 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 19:08:05,754.754 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:08:05,757.757 INFO    ] Checking for system updates...
[2026-10-28 19:08:05,794.794 INFO    ] 200
[2026-10-28 19:08:05,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:08:05,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:08:05,852.852 INFO    ] No update needed
[2026-10-28 19:08:05,855.855 INFO    ] Checking for camera pi updates...
[2026-10-28 19:08:05,892.892 INFO    ] 200
[2026-10-28 19:08:05,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:08:05,936.936 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:08:06,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:08:06,015.015 INFO    ] No camera update needed
[2026-10-28 19:08:06,018.018 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:08:06,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:08:06,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:08:06,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:08:08,073.073 INFO    ] ================================================
[2026-10-28 19:08:08,088.088 INFO    ] Launching Daemon at Wed Oct 28 19:08:08 IST 2026
[2026-10-28 19:08:08,099.099 INFO    ] ================================================
[2026-10-28 19:08:08,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:08:08
[2026-10-28 19:08:09,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:08:09,676.676 INFO    ] Initializing speech engine...
[2026-10-28 19:08:09,684.684 INFO    ] 2026-10-28 19:08:09
[2026-10-28 19:08:09,950.950 INFO    ] 2026-10-28 19:08:09
[2026-10-28 19:08:10,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:08:10,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:08:10,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:08:10,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:08:10,568.568 INFO    ] time= 28/10/2026 19:08:10
[2026-10-28 19:08:10,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:08:10,667.667 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:08:10,806.806 INFO    ] No existing commands found in stream
[2026-10-28 19:08:15,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:08:15,839.839 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-28 19:08:19,124.124 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:08:19,127.127 INFO    ] Checking for system updates...
[2026-10-28 19:08:19,163.163 INFO    ] 200
[2026-10-28 19:08:19,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:08:19,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:08:19,227.227 INFO    ] No update needed
[2026-10-28 19:08:19,230.230 INFO    ] Checking for camera pi updates...
[2026-10-28 19:08:19,264.264 INFO    ] 200
[2026-10-28 19:08:19,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:08:19,311.311 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:08:19,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:08:19,396.396 INFO    ] No camera update needed
[2026-10-28 19:08:19,399.399 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:08:19,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:08:19,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:08:19,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:08:21,455.455 INFO    ] ================================================
[2026-10-28 19:08:21,470.470 INFO    ] Launching Daemon at Wed Oct 28 19:08:21 IST 2026
[2026-10-28 19:08:21,481.481 INFO    ] ================================================
[2026-10-28 19:08:22,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:08:22
[2026-10-28 19:08:22,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:08:23,064.064 INFO    ] Initializing speech engine...
[2026-10-28 19:08:23,074.074 INFO    ] 2026-10-28 19:08:23
[2026-10-28 19:08:23,356.356 INFO    ] 2026-10-28 19:08:23
[2026-10-28 19:08:23,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:08:23,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:08:23,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:08:24,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:08:24,197.197 INFO    ] time= 28/10/2026 19:08:24
[2026-10-28 19:08:24,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:08:24,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:08:24,453.453 INFO    ] No existing commands found in stream
[2026-10-28 19:08:29,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:08:29,472.472 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 19:08:30,116.116 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:08:30,119.119 INFO    ] Checking for system updates...
[2026-10-28 19:08:30,156.156 INFO    ] 200
[2026-10-28 19:08:30,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:08:30,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:08:30,215.215 INFO    ] No update needed
[2026-10-28 19:08:30,218.218 INFO    ] Checking for camera pi updates...
[2026-10-28 19:08:30,251.251 INFO    ] 200
[2026-10-28 19:08:30,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:08:30,294.294 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:08:30,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:08:30,396.396 INFO    ] No camera update needed
[2026-10-28 19:08:30,399.399 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:08:30,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:08:30,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:08:30,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:08:32,453.453 INFO    ] ================================================
[2026-10-28 19:08:32,471.471 INFO    ] Launching Daemon at Wed Oct 28 19:08:32 IST 2026
[2026-10-28 19:08:32,482.482 INFO    ] ================================================
[2026-10-28 19:08:33,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:08:33
[2026-10-28 19:08:33,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:08:33,941.941 INFO    ] Initializing speech engine...
[2026-10-28 19:08:33,949.949 INFO    ] 2026-10-28 19:08:33
[2026-10-28 19:08:34,218.218 INFO    ] 2026-10-28 19:08:34
[2026-10-28 19:08:34,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:08:34,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:08:34,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:08:34,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:08:34,819.819 INFO    ] time= 28/10/2026 19:08:34
[2026-10-28 19:08:34,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:08:34,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:08:35,023.023 INFO    ] No existing commands found in stream
[2026-10-28 19:08:40,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:08:40,044.044 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-28 19:08:44,172.172 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:08:44,175.175 INFO    ] Checking for system updates...
[2026-10-28 19:08:44,211.211 INFO    ] 200
[2026-10-28 19:08:44,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:08:44,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:08:44,269.269 INFO    ] No update needed
[2026-10-28 19:08:44,272.272 INFO    ] Checking for camera pi updates...
[2026-10-28 19:08:44,305.305 INFO    ] 200
[2026-10-28 19:08:44,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:08:44,352.352 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:08:44,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:08:44,461.461 INFO    ] No camera update needed
[2026-10-28 19:08:44,463.463 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:08:44,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:08:44,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:08:44,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:08:46,517.517 INFO    ] ================================================
[2026-10-28 19:08:46,533.533 INFO    ] Launching Daemon at Wed Oct 28 19:08:46 IST 2026
[2026-10-28 19:08:46,543.543 INFO    ] ================================================
[2026-10-28 19:08:47,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:08:47
[2026-10-28 19:08:47,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:08:48,169.169 INFO    ] Initializing speech engine...
[2026-10-28 19:08:48,177.177 INFO    ] 2026-10-28 19:08:48
[2026-10-28 19:08:48,448.448 INFO    ] 2026-10-28 19:08:48
[2026-10-28 19:08:48,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:08:48,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:08:48,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:08:49,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:08:49,216.216 INFO    ] time= 28/10/2026 19:08:49
[2026-10-28 19:08:49,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:08:49,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:08:49,443.443 INFO    ] No existing commands found in stream
[2026-10-28 19:08:54,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:08:54,458.458 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-28 19:08:57,606.606 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:08:57,609.609 INFO    ] Checking for system updates...
[2026-10-28 19:08:57,646.646 INFO    ] 200
[2026-10-28 19:08:57,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:08:57,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:08:57,704.704 INFO    ] No update needed
[2026-10-28 19:08:57,707.707 INFO    ] Checking for camera pi updates...
[2026-10-28 19:08:57,744.744 INFO    ] 200
[2026-10-28 19:08:57,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:08:57,788.788 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:08:57,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:08:57,874.874 INFO    ] No camera update needed
[2026-10-28 19:08:57,877.877 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:08:57,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:08:57,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:08:57,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:08:59,932.932 INFO    ] ================================================
[2026-10-28 19:08:59,947.947 INFO    ] Launching Daemon at Wed Oct 28 19:08:59 IST 2026
[2026-10-28 19:08:59,958.958 INFO    ] ================================================
[2026-10-28 19:09:00,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:09:00
[2026-10-28 19:09:01,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:09:01,640.640 INFO    ] Initializing speech engine...
[2026-10-28 19:09:01,650.650 INFO    ] 2026-10-28 19:09:01
[2026-10-28 19:09:01,960.960 INFO    ] 2026-10-28 19:09:01
[2026-10-28 19:09:02,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:09:02,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:09:02,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:09:02,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:09:02,606.606 INFO    ] time= 28/10/2026 19:09:02
[2026-10-28 19:09:02,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:09:02,691.691 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:09:02,845.845 INFO    ] No existing commands found in stream
[2026-10-28 19:09:07,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:09:07,879.879 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 19:09:11,759.759 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:09:11,762.762 INFO    ] Checking for system updates...
[2026-10-28 19:09:11,799.799 INFO    ] 200
[2026-10-28 19:09:11,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:09:11,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:09:11,863.863 INFO    ] No update needed
[2026-10-28 19:09:11,866.866 INFO    ] Checking for camera pi updates...
[2026-10-28 19:09:11,903.903 INFO    ] 200
[2026-10-28 19:09:11,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:09:11,948.948 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:09:12,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:09:12,047.047 INFO    ] No camera update needed
[2026-10-28 19:09:12,049.049 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:09:12,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:09:12,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:09:12,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:09:14,104.104 INFO    ] ================================================
[2026-10-28 19:09:14,119.119 INFO    ] Launching Daemon at Wed Oct 28 19:09:14 IST 2026
[2026-10-28 19:09:14,130.130 INFO    ] ================================================
[2026-10-28 19:09:14,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:09:14
[2026-10-28 19:09:15,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:09:15,549.549 INFO    ] Initializing speech engine...
[2026-10-28 19:09:15,558.558 INFO    ] 2026-10-28 19:09:15
[2026-10-28 19:09:15,819.819 INFO    ] 2026-10-28 19:09:15
[2026-10-28 19:09:15,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:09:16,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:09:16,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:09:16,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:09:16,409.409 INFO    ] time= 28/10/2026 19:09:16
[2026-10-28 19:09:16,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:09:16,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:09:16,612.612 INFO    ] No existing commands found in stream
[2026-10-28 19:09:21,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:09:21,637.637 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-28 19:09:25,010.010 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:09:25,012.012 INFO    ] Checking for system updates...
[2026-10-28 19:09:25,051.051 INFO    ] 200
[2026-10-28 19:09:25,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:09:25,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:09:25,107.107 INFO    ] No update needed
[2026-10-28 19:09:25,110.110 INFO    ] Checking for camera pi updates...
[2026-10-28 19:09:25,143.143 INFO    ] 200
[2026-10-28 19:09:25,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:09:25,185.185 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:09:25,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:09:25,270.270 INFO    ] No camera update needed
[2026-10-28 19:09:25,272.272 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:09:25,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:09:25,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:09:25,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:09:27,327.327 INFO    ] ================================================
[2026-10-28 19:09:27,342.342 INFO    ] Launching Daemon at Wed Oct 28 19:09:27 IST 2026
[2026-10-28 19:09:27,353.353 INFO    ] ================================================
[2026-10-28 19:09:27,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:09:27
[2026-10-28 19:09:28,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:09:28,770.770 INFO    ] Initializing speech engine...
[2026-10-28 19:09:28,785.785 INFO    ] 2026-10-28 19:09:28
[2026-10-28 19:09:29,069.069 INFO    ] 2026-10-28 19:09:29
[2026-10-28 19:09:29,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:09:29,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:09:29,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:09:29,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:09:29,702.702 INFO    ] time= 28/10/2026 19:09:29
[2026-10-28 19:09:29,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:09:29,728.728 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:09:29,879.879 INFO    ] No existing commands found in stream
[2026-10-28 19:09:34,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:09:34,895.895 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 19:09:37,158.158 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:09:37,160.160 INFO    ] Checking for system updates...
[2026-10-28 19:09:37,195.195 INFO    ] 200
[2026-10-28 19:09:37,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:09:37,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:09:37,253.253 INFO    ] No update needed
[2026-10-28 19:09:37,255.255 INFO    ] Checking for camera pi updates...
[2026-10-28 19:09:37,292.292 INFO    ] 200
[2026-10-28 19:09:37,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:09:37,336.336 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:09:37,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:09:37,418.418 INFO    ] No camera update needed
[2026-10-28 19:09:37,420.420 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:09:37,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:09:37,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:09:37,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:09:39,475.475 INFO    ] ================================================
[2026-10-28 19:09:39,490.490 INFO    ] Launching Daemon at Wed Oct 28 19:09:39 IST 2026
[2026-10-28 19:09:39,501.501 INFO    ] ================================================
[2026-10-28 19:09:40,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:09:40
[2026-10-28 19:09:40,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:09:40,947.947 INFO    ] Initializing speech engine...
[2026-10-28 19:09:40,952.952 INFO    ] 2026-10-28 19:09:40
[2026-10-28 19:09:41,226.226 INFO    ] 2026-10-28 19:09:41
[2026-10-28 19:09:41,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:09:41,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:09:41,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:09:41,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:09:41,827.827 INFO    ] time= 28/10/2026 19:09:41
[2026-10-28 19:09:41,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:09:41,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:09:42,085.085 INFO    ] No existing commands found in stream
[2026-10-28 19:09:47,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:09:47,118.118 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-28 19:09:51,166.166 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:09:51,169.169 INFO    ] Checking for system updates...
[2026-10-28 19:09:51,207.207 INFO    ] 200
[2026-10-28 19:09:51,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:09:51,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:09:51,266.266 INFO    ] No update needed
[2026-10-28 19:09:51,269.269 INFO    ] Checking for camera pi updates...
[2026-10-28 19:09:51,308.308 INFO    ] 200
[2026-10-28 19:09:51,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:09:51,352.352 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:09:51,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:09:51,432.432 INFO    ] No camera update needed
[2026-10-28 19:09:51,435.435 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:09:51,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:09:51,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:09:51,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:09:53,494.494 INFO    ] ================================================
[2026-10-28 19:09:53,509.509 INFO    ] Launching Daemon at Wed Oct 28 19:09:53 IST 2026
[2026-10-28 19:09:53,519.519 INFO    ] ================================================
[2026-10-28 19:09:54,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:09:54
[2026-10-28 19:09:54,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:09:54,948.948 INFO    ] Initializing speech engine...
[2026-10-28 19:09:54,957.957 INFO    ] 2026-10-28 19:09:54
[2026-10-28 19:09:55,201.201 INFO    ] 2026-10-28 19:09:55
[2026-10-28 19:09:55,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:09:55,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:09:55,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:09:55,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:09:55,756.756 INFO    ] time= 28/10/2026 19:09:55
[2026-10-28 19:09:55,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:09:55,780.780 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:09:55,921.921 INFO    ] No existing commands found in stream
[2026-10-28 19:10:00,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:10:00,949.949 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 19:10:01,849.849 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:10:01,852.852 INFO    ] Checking for system updates...
[2026-10-28 19:10:01,946.946 INFO    ] 200
[2026-10-28 19:10:01,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:10:02,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:10:02,091.091 INFO    ] No update needed
[2026-10-28 19:10:02,100.100 INFO    ] Checking for camera pi updates...
[2026-10-28 19:10:02,177.177 INFO    ] 200
[2026-10-28 19:10:02,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:10:02,255.255 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:10:02,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:10:02,525.525 INFO    ] No camera update needed
[2026-10-28 19:10:02,529.529 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:10:02,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:10:02,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:10:02,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:10:04,595.595 INFO    ] ================================================
[2026-10-28 19:10:04,610.610 INFO    ] Launching Daemon at Wed Oct 28 19:10:04 IST 2026
[2026-10-28 19:10:04,620.620 INFO    ] ================================================
[2026-10-28 19:10:05,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:10:05
[2026-10-28 19:10:05,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:10:06,081.081 INFO    ] Initializing speech engine...
[2026-10-28 19:10:06,102.102 INFO    ] 2026-10-28 19:10:06
[2026-10-28 19:10:06,410.410 INFO    ] 2026-10-28 19:10:06
[2026-10-28 19:10:06,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:10:06,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:10:06,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:10:07,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:10:07,213.213 INFO    ] time= 28/10/2026 19:10:07
[2026-10-28 19:10:07,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:10:07,323.323 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:10:07,488.488 INFO    ] No existing commands found in stream
[2026-10-28 19:10:12,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:10:12,505.505 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 19:10:15,406.406 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:10:15,409.409 INFO    ] Checking for system updates...
[2026-10-28 19:10:15,445.445 INFO    ] 200
[2026-10-28 19:10:15,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:10:15,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:10:15,510.510 INFO    ] No update needed
[2026-10-28 19:10:15,513.513 INFO    ] Checking for camera pi updates...
[2026-10-28 19:10:15,548.548 INFO    ] 200
[2026-10-28 19:10:15,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:10:15,591.591 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:10:15,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:10:15,692.692 INFO    ] No camera update needed
[2026-10-28 19:10:15,695.695 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:10:15,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:10:15,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:10:15,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:10:17,746.746 INFO    ] ================================================
[2026-10-28 19:10:17,761.761 INFO    ] Launching Daemon at Wed Oct 28 19:10:17 IST 2026
[2026-10-28 19:10:17,772.772 INFO    ] ================================================
[2026-10-28 19:10:18,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:10:18
[2026-10-28 19:10:18,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:10:19,196.196 INFO    ] Initializing speech engine...
[2026-10-28 19:10:19,204.204 INFO    ] 2026-10-28 19:10:19
[2026-10-28 19:10:19,455.455 INFO    ] 2026-10-28 19:10:19
[2026-10-28 19:10:19,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:10:19,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:10:19,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:10:19,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:10:20,025.025 INFO    ] time= 28/10/2026 19:10:20
[2026-10-28 19:10:20,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:10:20,049.049 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:10:20,258.258 INFO    ] No existing commands found in stream
[2026-10-28 19:10:25,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:10:25,291.291 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 19:10:28,634.634 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:10:28,636.636 INFO    ] Checking for system updates...
[2026-10-28 19:10:28,672.672 INFO    ] 200
[2026-10-28 19:10:28,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:10:28,734.734 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:10:28,736.736 INFO    ] No update needed
[2026-10-28 19:10:28,739.739 INFO    ] Checking for camera pi updates...
[2026-10-28 19:10:28,773.773 INFO    ] 200
[2026-10-28 19:10:28,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:10:28,817.817 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:10:28,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:10:28,903.903 INFO    ] No camera update needed
[2026-10-28 19:10:28,906.906 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:10:28,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:10:28,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:10:28,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:10:30,959.959 INFO    ] ================================================
[2026-10-28 19:10:30,974.974 INFO    ] Launching Daemon at Wed Oct 28 19:10:30 IST 2026
[2026-10-28 19:10:30,985.985 INFO    ] ================================================
[2026-10-28 19:10:31,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:10:31
[2026-10-28 19:10:32,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:10:32,453.453 INFO    ] Initializing speech engine...
[2026-10-28 19:10:32,471.471 INFO    ] 2026-10-28 19:10:32
[2026-10-28 19:10:32,737.737 INFO    ] 2026-10-28 19:10:32
[2026-10-28 19:10:32,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:10:33,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:10:33,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:10:33,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:10:33,370.370 INFO    ] time= 28/10/2026 19:10:33
[2026-10-28 19:10:33,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:10:33,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:10:33,572.572 INFO    ] No existing commands found in stream
[2026-10-28 19:10:38,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:10:38,598.598 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-28 19:10:41,414.414 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:10:41,417.417 INFO    ] Checking for system updates...
[2026-10-28 19:10:41,452.452 INFO    ] 200
[2026-10-28 19:10:41,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:10:41,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:10:41,509.509 INFO    ] No update needed
[2026-10-28 19:10:41,512.512 INFO    ] Checking for camera pi updates...
[2026-10-28 19:10:41,545.545 INFO    ] 200
[2026-10-28 19:10:41,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:10:41,588.588 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:10:41,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:10:41,665.665 INFO    ] No camera update needed
[2026-10-28 19:10:41,667.667 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:10:41,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:10:41,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:10:41,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:10:43,719.719 INFO    ] ================================================
[2026-10-28 19:10:43,734.734 INFO    ] Launching Daemon at Wed Oct 28 19:10:43 IST 2026
[2026-10-28 19:10:43,744.744 INFO    ] ================================================
[2026-10-28 19:10:44,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:10:44
[2026-10-28 19:10:45,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:10:45,348.348 INFO    ] Initializing speech engine...
[2026-10-28 19:10:45,356.356 INFO    ] 2026-10-28 19:10:45
[2026-10-28 19:10:45,640.640 INFO    ] 2026-10-28 19:10:45
[2026-10-28 19:10:45,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:10:45,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:10:45,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:10:46,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:10:46,228.228 INFO    ] time= 28/10/2026 19:10:46
[2026-10-28 19:10:46,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:10:46,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:10:46,441.441 INFO    ] No existing commands found in stream
[2026-10-28 19:10:51,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:10:51,460.460 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-28 19:10:55,206.206 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:10:55,209.209 INFO    ] Checking for system updates...
[2026-10-28 19:10:55,245.245 INFO    ] 200
[2026-10-28 19:10:55,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:10:55,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:10:55,307.307 INFO    ] No update needed
[2026-10-28 19:10:55,309.309 INFO    ] Checking for camera pi updates...
[2026-10-28 19:10:55,343.343 INFO    ] 200
[2026-10-28 19:10:55,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:10:55,386.386 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:10:55,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:10:55,470.470 INFO    ] No camera update needed
[2026-10-28 19:10:55,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:10:55,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:10:55,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:10:55,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:10:57,524.524 INFO    ] ================================================
[2026-10-28 19:10:57,539.539 INFO    ] Launching Daemon at Wed Oct 28 19:10:57 IST 2026
[2026-10-28 19:10:57,550.550 INFO    ] ================================================
[2026-10-28 19:10:58,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:10:58
[2026-10-28 19:10:58,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:10:59,016.016 INFO    ] Initializing speech engine...
[2026-10-28 19:10:59,022.022 INFO    ] 2026-10-28 19:10:59
[2026-10-28 19:10:59,286.286 INFO    ] 2026-10-28 19:10:59
[2026-10-28 19:10:59,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:10:59,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:10:59,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:11:00,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:11:00,066.066 INFO    ] time= 28/10/2026 19:11:00
[2026-10-28 19:11:00,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:11:00,169.169 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:11:00,379.379 INFO    ] No existing commands found in stream
[2026-10-28 19:11:05,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:11:05,401.401 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-28 19:11:08,036.036 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:11:08,039.039 INFO    ] Checking for system updates...
[2026-10-28 19:11:08,076.076 INFO    ] 200
[2026-10-28 19:11:08,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:11:08,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:11:08,137.137 INFO    ] No update needed
[2026-10-28 19:11:08,139.139 INFO    ] Checking for camera pi updates...
[2026-10-28 19:11:08,173.173 INFO    ] 200
[2026-10-28 19:11:08,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:11:08,217.217 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:11:08,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:11:08,298.298 INFO    ] No camera update needed
[2026-10-28 19:11:08,301.301 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:11:08,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:11:08,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:11:08,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:11:10,357.357 INFO    ] ================================================
[2026-10-28 19:11:10,372.372 INFO    ] Launching Daemon at Wed Oct 28 19:11:10 IST 2026
[2026-10-28 19:11:10,383.383 INFO    ] ================================================
[2026-10-28 19:11:11,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:11:11
[2026-10-28 19:11:11,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:11:11,933.933 INFO    ] Initializing speech engine...
[2026-10-28 19:11:11,942.942 INFO    ] 2026-10-28 19:11:11
[2026-10-28 19:11:12,191.191 INFO    ] 2026-10-28 19:11:12
[2026-10-28 19:11:12,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:11:12,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:11:12,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:11:12,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:11:12,771.771 INFO    ] time= 28/10/2026 19:11:12
[2026-10-28 19:11:12,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:11:12,806.806 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:11:12,950.950 INFO    ] No existing commands found in stream
[2026-10-28 19:11:17,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:11:17,978.978 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 19:11:19,170.170 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:11:19,172.172 INFO    ] Checking for system updates...
[2026-10-28 19:11:19,208.208 INFO    ] 200
[2026-10-28 19:11:19,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:11:19,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:11:19,266.266 INFO    ] No update needed
[2026-10-28 19:11:19,269.269 INFO    ] Checking for camera pi updates...
[2026-10-28 19:11:19,302.302 INFO    ] 200
[2026-10-28 19:11:19,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:11:19,346.346 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:11:19,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:11:19,426.426 INFO    ] No camera update needed
[2026-10-28 19:11:19,428.428 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:11:19,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:11:19,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:11:19,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:11:21,480.480 INFO    ] ================================================
[2026-10-28 19:11:21,494.494 INFO    ] Launching Daemon at Wed Oct 28 19:11:21 IST 2026
[2026-10-28 19:11:21,505.505 INFO    ] ================================================
[2026-10-28 19:11:22,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:11:22
[2026-10-28 19:11:22,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:11:22,921.921 INFO    ] Initializing speech engine...
[2026-10-28 19:11:22,930.930 INFO    ] 2026-10-28 19:11:22
[2026-10-28 19:11:23,175.175 INFO    ] 2026-10-28 19:11:23
[2026-10-28 19:11:23,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:11:23,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:11:23,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:11:23,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:11:23,808.808 INFO    ] time= 28/10/2026 19:11:23
[2026-10-28 19:11:23,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:11:23,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:11:23,992.992 INFO    ] No existing commands found in stream
[2026-10-28 19:11:29,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:11:29,014.014 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 19:11:30,957.957 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:11:30,960.960 INFO    ] Checking for system updates...
[2026-10-28 19:11:30,998.998 INFO    ] 200
[2026-10-28 19:11:31,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:11:31,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:11:31,055.055 INFO    ] No update needed
[2026-10-28 19:11:31,058.058 INFO    ] Checking for camera pi updates...
[2026-10-28 19:11:31,092.092 INFO    ] 200
[2026-10-28 19:11:31,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:11:31,134.134 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:11:31,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:11:31,235.235 INFO    ] No camera update needed
[2026-10-28 19:11:31,237.237 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:11:31,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:11:31,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:11:31,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:11:33,294.294 INFO    ] ================================================
[2026-10-28 19:11:33,309.309 INFO    ] Launching Daemon at Wed Oct 28 19:11:33 IST 2026
[2026-10-28 19:11:33,319.319 INFO    ] ================================================
[2026-10-28 19:11:33,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:11:33
[2026-10-28 19:11:34,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:11:34,789.789 INFO    ] Initializing speech engine...
[2026-10-28 19:11:34,797.797 INFO    ] 2026-10-28 19:11:34
[2026-10-28 19:11:35,044.044 INFO    ] 2026-10-28 19:11:35
[2026-10-28 19:11:35,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:11:35,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:11:35,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:11:35,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:11:35,772.772 INFO    ] time= 28/10/2026 19:11:35
[2026-10-28 19:11:35,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:11:35,871.871 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:11:36,038.038 INFO    ] No existing commands found in stream
[2026-10-28 19:11:41,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:11:41,073.073 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 19:11:42,660.660 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:11:42,662.662 INFO    ] Checking for system updates...
[2026-10-28 19:11:42,698.698 INFO    ] 200
[2026-10-28 19:11:42,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:11:42,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:11:42,755.755 INFO    ] No update needed
[2026-10-28 19:11:42,757.757 INFO    ] Checking for camera pi updates...
[2026-10-28 19:11:42,790.790 INFO    ] 200
[2026-10-28 19:11:42,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:11:42,834.834 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:11:43,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:11:43,023.023 INFO    ] No camera update needed
[2026-10-28 19:11:43,025.025 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:11:43,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:11:43,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:11:43,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:11:45,077.077 INFO    ] ================================================
[2026-10-28 19:11:45,092.092 INFO    ] Launching Daemon at Wed Oct 28 19:11:45 IST 2026
[2026-10-28 19:11:45,103.103 INFO    ] ================================================
[2026-10-28 19:11:45,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:11:45
[2026-10-28 19:11:46,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:11:46,628.628 INFO    ] Initializing speech engine...
[2026-10-28 19:11:46,637.637 INFO    ] 2026-10-28 19:11:46
[2026-10-28 19:11:46,894.894 INFO    ] 2026-10-28 19:11:46
[2026-10-28 19:11:46,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:11:47,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:11:47,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:11:47,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:11:47,462.462 INFO    ] time= 28/10/2026 19:11:47
[2026-10-28 19:11:47,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:11:47,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:11:47,636.636 INFO    ] No existing commands found in stream
[2026-10-28 19:11:52,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:11:52,654.654 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 19:11:56,124.124 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:11:56,126.126 INFO    ] Checking for system updates...
[2026-10-28 19:11:56,163.163 INFO    ] 200
[2026-10-28 19:11:56,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:11:56,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:11:56,221.221 INFO    ] No update needed
[2026-10-28 19:11:56,224.224 INFO    ] Checking for camera pi updates...
[2026-10-28 19:11:56,262.262 INFO    ] 200
[2026-10-28 19:11:56,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:11:56,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:11:56,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:11:56,391.391 INFO    ] No camera update needed
[2026-10-28 19:11:56,394.394 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:11:56,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:11:56,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:11:56,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:11:58,449.449 INFO    ] ================================================
[2026-10-28 19:11:58,464.464 INFO    ] Launching Daemon at Wed Oct 28 19:11:58 IST 2026
[2026-10-28 19:11:58,476.476 INFO    ] ================================================
[2026-10-28 19:11:59,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:11:59
[2026-10-28 19:11:59,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:12:00,143.143 INFO    ] Initializing speech engine...
[2026-10-28 19:12:00,157.157 INFO    ] 2026-10-28 19:12:00
[2026-10-28 19:12:00,473.473 INFO    ] 2026-10-28 19:12:00
[2026-10-28 19:12:00,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:12:00,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:12:00,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:12:01,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:12:01,159.159 INFO    ] time= 28/10/2026 19:12:01
[2026-10-28 19:12:01,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:12:01,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:12:01,360.360 INFO    ] No existing commands found in stream
[2026-10-28 19:12:06,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:12:06,375.375 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-28 19:12:09,917.917 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:12:09,920.920 INFO    ] Checking for system updates...
[2026-10-28 19:12:09,957.957 INFO    ] 200
[2026-10-28 19:12:09,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:12:10,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:12:10,017.017 INFO    ] No update needed
[2026-10-28 19:12:10,020.020 INFO    ] Checking for camera pi updates...
[2026-10-28 19:12:10,055.055 INFO    ] 200
[2026-10-28 19:12:10,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:12:10,104.104 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:12:10,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:12:10,222.222 INFO    ] No camera update needed
[2026-10-28 19:12:10,225.225 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:12:10,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:12:10,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:12:10,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:12:12,281.281 INFO    ] ================================================
[2026-10-28 19:12:12,296.296 INFO    ] Launching Daemon at Wed Oct 28 19:12:12 IST 2026
[2026-10-28 19:12:12,307.307 INFO    ] ================================================
[2026-10-28 19:12:12,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:12:12
[2026-10-28 19:12:13,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:12:13,942.942 INFO    ] Initializing speech engine...
[2026-10-28 19:12:13,949.949 INFO    ] 2026-10-28 19:12:13
[2026-10-28 19:12:14,211.211 INFO    ] 2026-10-28 19:12:14
[2026-10-28 19:12:14,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:12:14,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:12:14,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:12:14,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:12:14,774.774 INFO    ] time= 28/10/2026 19:12:14
[2026-10-28 19:12:14,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:12:14,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:12:14,918.918 INFO    ] No existing commands found in stream
[2026-10-28 19:12:19,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:12:19,945.945 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-28 19:12:21,874.874 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:12:21,877.877 INFO    ] Checking for system updates...
[2026-10-28 19:12:21,913.913 INFO    ] 200
[2026-10-28 19:12:21,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:12:21,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:12:21,977.977 INFO    ] No update needed
[2026-10-28 19:12:21,980.980 INFO    ] Checking for camera pi updates...
[2026-10-28 19:12:22,013.013 INFO    ] 200
[2026-10-28 19:12:22,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:12:22,061.061 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:12:22,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:12:22,146.146 INFO    ] No camera update needed
[2026-10-28 19:12:22,148.148 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:12:22,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:12:22,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:12:22,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:12:24,203.203 INFO    ] ================================================
[2026-10-28 19:12:24,218.218 INFO    ] Launching Daemon at Wed Oct 28 19:12:24 IST 2026
[2026-10-28 19:12:24,229.229 INFO    ] ================================================
[2026-10-28 19:12:24,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:12:24
[2026-10-28 19:12:25,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:12:25,663.663 INFO    ] Initializing speech engine...
[2026-10-28 19:12:25,672.672 INFO    ] 2026-10-28 19:12:25
[2026-10-28 19:12:25,920.920 INFO    ] 2026-10-28 19:12:25
[2026-10-28 19:12:25,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:12:26,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:12:26,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:12:26,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:12:26,502.502 INFO    ] time= 28/10/2026 19:12:26
[2026-10-28 19:12:26,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:12:26,538.538 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:12:26,636.636 INFO    ] No existing commands found in stream
[2026-10-28 19:12:31,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:12:31,649.649 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 19:12:35,301.301 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:12:35,304.304 INFO    ] Checking for system updates...
[2026-10-28 19:12:35,340.340 INFO    ] 200
[2026-10-28 19:12:35,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:12:35,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:12:35,409.409 INFO    ] No update needed
[2026-10-28 19:12:35,411.411 INFO    ] Checking for camera pi updates...
[2026-10-28 19:12:35,449.449 INFO    ] 200
[2026-10-28 19:12:35,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:12:35,493.493 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:12:35,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:12:35,575.575 INFO    ] No camera update needed
[2026-10-28 19:12:35,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:12:35,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:12:35,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:12:35,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:12:37,634.634 INFO    ] ================================================
[2026-10-28 19:12:37,650.650 INFO    ] Launching Daemon at Wed Oct 28 19:12:37 IST 2026
[2026-10-28 19:12:37,660.660 INFO    ] ================================================
[2026-10-28 19:12:38,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:12:38
[2026-10-28 19:12:38,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:12:39,062.062 INFO    ] Initializing speech engine...
[2026-10-28 19:12:39,084.084 INFO    ] 2026-10-28 19:12:39
[2026-10-28 19:12:39,342.342 INFO    ] 2026-10-28 19:12:39
[2026-10-28 19:12:39,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:12:39,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:12:39,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:12:39,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:12:39,924.924 INFO    ] time= 28/10/2026 19:12:39
[2026-10-28 19:12:39,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:12:39,960.960 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:12:40,080.080 INFO    ] No existing commands found in stream
[2026-10-28 19:12:45,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:12:45,113.113 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 19:12:46,913.913 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:12:46,916.916 INFO    ] Checking for system updates...
[2026-10-28 19:12:46,953.953 INFO    ] 200
[2026-10-28 19:12:46,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:12:47,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:12:47,011.011 INFO    ] No update needed
[2026-10-28 19:12:47,014.014 INFO    ] Checking for camera pi updates...
[2026-10-28 19:12:47,049.049 INFO    ] 200
[2026-10-28 19:12:47,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:12:47,097.097 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:12:47,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:12:47,190.190 INFO    ] No camera update needed
[2026-10-28 19:12:47,192.192 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:12:47,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:12:47,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:12:47,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:12:49,249.249 INFO    ] ================================================
[2026-10-28 19:12:49,264.264 INFO    ] Launching Daemon at Wed Oct 28 19:12:49 IST 2026
[2026-10-28 19:12:49,275.275 INFO    ] ================================================
[2026-10-28 19:12:49,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:12:49
[2026-10-28 19:12:50,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:12:50,716.716 INFO    ] Initializing speech engine...
[2026-10-28 19:12:50,732.732 INFO    ] 2026-10-28 19:12:50
[2026-10-28 19:12:51,006.006 INFO    ] 2026-10-28 19:12:50
[2026-10-28 19:12:51,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:12:51,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:12:51,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:12:51,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:12:51,645.645 INFO    ] time= 28/10/2026 19:12:51
[2026-10-28 19:12:51,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:12:51,671.671 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:12:51,825.825 INFO    ] No existing commands found in stream
[2026-10-28 19:12:56,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:12:56,847.847 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-28 19:13:01,306.306 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:13:01,311.311 INFO    ] Checking for system updates...
[2026-10-28 19:13:01,368.368 INFO    ] 200
[2026-10-28 19:13:01,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:13:01,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:13:01,468.468 INFO    ] No update needed
[2026-10-28 19:13:01,471.471 INFO    ] Checking for camera pi updates...
[2026-10-28 19:13:01,528.528 INFO    ] 200
[2026-10-28 19:13:01,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:13:01,585.585 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:13:01,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:13:01,695.695 INFO    ] No camera update needed
[2026-10-28 19:13:01,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:13:01,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:13:01,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:13:01,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:13:03,766.766 INFO    ] ================================================
[2026-10-28 19:13:03,782.782 INFO    ] Launching Daemon at Wed Oct 28 19:13:03 IST 2026
[2026-10-28 19:13:03,793.793 INFO    ] ================================================
[2026-10-28 19:13:04,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:13:04
[2026-10-28 19:13:05,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:13:05,400.400 INFO    ] Initializing speech engine...
[2026-10-28 19:13:05,413.413 INFO    ] 2026-10-28 19:13:05
[2026-10-28 19:13:05,692.692 INFO    ] 2026-10-28 19:13:05
[2026-10-28 19:13:05,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:13:06,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:13:06,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:13:06,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:13:06,523.523 INFO    ] time= 28/10/2026 19:13:06
[2026-10-28 19:13:06,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:13:06,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:13:06,794.794 INFO    ] No existing commands found in stream
[2026-10-28 19:13:11,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:13:11,808.808 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-28 19:13:13,395.395 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:13:13,399.399 INFO    ] Checking for system updates...
[2026-10-28 19:13:13,439.439 INFO    ] 200
[2026-10-28 19:13:13,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:13:13,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:13:13,506.506 INFO    ] No update needed
[2026-10-28 19:13:13,509.509 INFO    ] Checking for camera pi updates...
[2026-10-28 19:13:13,547.547 INFO    ] 200
[2026-10-28 19:13:13,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:13:13,590.590 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:13:13,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:13:13,664.664 INFO    ] No camera update needed
[2026-10-28 19:13:13,666.666 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:13:13,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:13:13,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:13:13,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:13:15,720.720 INFO    ] ================================================
[2026-10-28 19:13:15,736.736 INFO    ] Launching Daemon at Wed Oct 28 19:13:15 IST 2026
[2026-10-28 19:13:15,747.747 INFO    ] ================================================
[2026-10-28 19:13:16,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:13:16
[2026-10-28 19:13:16,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:13:17,191.191 INFO    ] Initializing speech engine...
[2026-10-28 19:13:17,200.200 INFO    ] 2026-10-28 19:13:17
[2026-10-28 19:13:17,446.446 INFO    ] 2026-10-28 19:13:17
[2026-10-28 19:13:17,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:13:17,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:13:17,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:13:17,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:13:18,015.015 INFO    ] time= 28/10/2026 19:13:17
[2026-10-28 19:13:18,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:13:18,050.050 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:13:18,201.201 INFO    ] No existing commands found in stream
[2026-10-28 19:13:23,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:13:23,234.234 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-28 19:13:24,856.856 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:13:24,859.859 INFO    ] Checking for system updates...
[2026-10-28 19:13:24,897.897 INFO    ] 200
[2026-10-28 19:13:24,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:13:24,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:13:24,958.958 INFO    ] No update needed
[2026-10-28 19:13:24,960.960 INFO    ] Checking for camera pi updates...
[2026-10-28 19:13:24,994.994 INFO    ] 200
[2026-10-28 19:13:24,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:13:25,036.036 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:13:25,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:13:25,126.126 INFO    ] No camera update needed
[2026-10-28 19:13:25,128.128 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:13:25,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:13:25,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:13:25,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:13:27,183.183 INFO    ] ================================================
[2026-10-28 19:13:27,199.199 INFO    ] Launching Daemon at Wed Oct 28 19:13:27 IST 2026
[2026-10-28 19:13:27,209.209 INFO    ] ================================================
[2026-10-28 19:13:27,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:13:27
[2026-10-28 19:13:28,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:13:28,649.649 INFO    ] Initializing speech engine...
[2026-10-28 19:13:28,664.664 INFO    ] 2026-10-28 19:13:28
[2026-10-28 19:13:28,945.945 INFO    ] 2026-10-28 19:13:28
[2026-10-28 19:13:28,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:13:29,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:13:29,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:13:29,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:13:29,562.562 INFO    ] time= 28/10/2026 19:13:29
[2026-10-28 19:13:29,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:13:29,594.594 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:13:29,744.744 INFO    ] No existing commands found in stream
[2026-10-28 19:13:34,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:13:34,760.760 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-28 19:13:35,494.494 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:13:35,497.497 INFO    ] Checking for system updates...
[2026-10-28 19:13:35,533.533 INFO    ] 200
[2026-10-28 19:13:35,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:13:35,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:13:35,591.591 INFO    ] No update needed
[2026-10-28 19:13:35,594.594 INFO    ] Checking for camera pi updates...
[2026-10-28 19:13:35,627.627 INFO    ] 200
[2026-10-28 19:13:35,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:13:35,670.670 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:13:35,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:13:35,749.749 INFO    ] No camera update needed
[2026-10-28 19:13:35,751.751 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:13:35,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:13:35,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:13:35,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:13:37,804.804 INFO    ] ================================================
[2026-10-28 19:13:37,819.819 INFO    ] Launching Daemon at Wed Oct 28 19:13:37 IST 2026
[2026-10-28 19:13:37,830.830 INFO    ] ================================================
[2026-10-28 19:13:38,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:13:38
[2026-10-28 19:13:39,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:13:39,273.273 INFO    ] Initializing speech engine...
[2026-10-28 19:13:39,286.286 INFO    ] 2026-10-28 19:13:39
[2026-10-28 19:13:39,535.535 INFO    ] 2026-10-28 19:13:39
[2026-10-28 19:13:39,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:13:39,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:13:39,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:13:40,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:13:40,092.092 INFO    ] time= 28/10/2026 19:13:40
[2026-10-28 19:13:40,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:13:40,138.138 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:13:40,270.270 INFO    ] No existing commands found in stream
[2026-10-28 19:13:45,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:13:45,304.304 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-28 19:13:49,794.794 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:13:49,797.797 INFO    ] Checking for system updates...
[2026-10-28 19:13:49,833.833 INFO    ] 200
[2026-10-28 19:13:49,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:13:49,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:13:49,894.894 INFO    ] No update needed
[2026-10-28 19:13:49,897.897 INFO    ] Checking for camera pi updates...
[2026-10-28 19:13:49,930.930 INFO    ] 200
[2026-10-28 19:13:49,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:13:49,972.972 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:13:50,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:13:50,172.172 INFO    ] No camera update needed
[2026-10-28 19:13:50,174.174 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:13:50,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:13:50,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:13:50,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:13:52,232.232 INFO    ] ================================================
[2026-10-28 19:13:52,248.248 INFO    ] Launching Daemon at Wed Oct 28 19:13:52 IST 2026
[2026-10-28 19:13:52,259.259 INFO    ] ================================================
[2026-10-28 19:13:52,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:13:52
[2026-10-28 19:13:53,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:13:53,722.722 INFO    ] Initializing speech engine...
[2026-10-28 19:13:53,731.731 INFO    ] 2026-10-28 19:13:53
[2026-10-28 19:13:53,989.989 INFO    ] 2026-10-28 19:13:53
[2026-10-28 19:13:54,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:13:54,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:13:54,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:13:54,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:13:54,859.859 INFO    ] time= 28/10/2026 19:13:54
[2026-10-28 19:13:54,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:13:54,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:13:55,149.149 INFO    ] No existing commands found in stream
[2026-10-28 19:14:00,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:14:00,162.162 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-28 19:14:01,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:14:01,468.468 INFO    ] Checking for system updates...
[2026-10-28 19:14:01,542.542 INFO    ] 200
[2026-10-28 19:14:01,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:14:01,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:14:01,657.657 INFO    ] No update needed
[2026-10-28 19:14:01,661.661 INFO    ] Checking for camera pi updates...
[2026-10-28 19:14:01,713.713 INFO    ] 200
[2026-10-28 19:14:01,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:14:01,786.786 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:14:01,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:14:01,936.936 INFO    ] No camera update needed
[2026-10-28 19:14:01,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:14:01,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:14:01,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:14:01,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:14:04,996.996 INFO    ] ================================================
[2026-10-28 19:14:04,011.011 INFO    ] Launching Daemon at Wed Oct 28 19:14:04 IST 2026
[2026-10-28 19:14:04,023.023 INFO    ] ================================================
[2026-10-28 19:14:04,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:14:04
[2026-10-28 19:14:05,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:14:05,432.432 INFO    ] Initializing speech engine...
[2026-10-28 19:14:05,445.445 INFO    ] 2026-10-28 19:14:05
[2026-10-28 19:14:05,712.712 INFO    ] 2026-10-28 19:14:05
[2026-10-28 19:14:05,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:14:06,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:14:06,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:14:06,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:14:06,280.280 INFO    ] time= 28/10/2026 19:14:06
[2026-10-28 19:14:06,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:14:06,305.305 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:14:06,438.438 INFO    ] No existing commands found in stream
[2026-10-28 19:14:11,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:14:11,460.460 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 19:14:15,644.644 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:14:15,647.647 INFO    ] Checking for system updates...
[2026-10-28 19:14:15,682.682 INFO    ] 200
[2026-10-28 19:14:15,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:14:15,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:14:15,739.739 INFO    ] No update needed
[2026-10-28 19:14:15,742.742 INFO    ] Checking for camera pi updates...
[2026-10-28 19:14:15,775.775 INFO    ] 200
[2026-10-28 19:14:15,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:14:15,820.820 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:14:15,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:14:15,907.907 INFO    ] No camera update needed
[2026-10-28 19:14:15,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:14:15,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:14:15,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:14:15,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:14:17,961.961 INFO    ] ================================================
[2026-10-28 19:14:17,978.978 INFO    ] Launching Daemon at Wed Oct 28 19:14:17 IST 2026
[2026-10-28 19:14:17,989.989 INFO    ] ================================================
[2026-10-28 19:14:18,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:14:18
[2026-10-28 19:14:19,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:14:19,578.578 INFO    ] Initializing speech engine...
[2026-10-28 19:14:19,591.591 INFO    ] 2026-10-28 19:14:19
[2026-10-28 19:14:19,858.858 INFO    ] 2026-10-28 19:14:19
[2026-10-28 19:14:19,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:14:20,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:14:20,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:14:20,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:14:20,451.451 INFO    ] time= 28/10/2026 19:14:20
[2026-10-28 19:14:20,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:14:20,490.490 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:14:20,629.629 INFO    ] No existing commands found in stream
[2026-10-28 19:14:25,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:14:25,654.654 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-28 19:14:28,439.439 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:14:28,442.442 INFO    ] Checking for system updates...
[2026-10-28 19:14:28,479.479 INFO    ] 200
[2026-10-28 19:14:28,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:14:28,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:14:28,538.538 INFO    ] No update needed
[2026-10-28 19:14:28,541.541 INFO    ] Checking for camera pi updates...
[2026-10-28 19:14:28,575.575 INFO    ] 200
[2026-10-28 19:14:28,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:14:28,624.624 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:14:28,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:14:28,711.711 INFO    ] No camera update needed
[2026-10-28 19:14:28,714.714 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:14:28,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:14:28,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:14:28,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:14:30,769.769 INFO    ] ================================================
[2026-10-28 19:14:30,785.785 INFO    ] Launching Daemon at Wed Oct 28 19:14:30 IST 2026
[2026-10-28 19:14:30,796.796 INFO    ] ================================================
[2026-10-28 19:14:31,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:14:31
[2026-10-28 19:14:31,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:14:32,250.250 INFO    ] Initializing speech engine...
[2026-10-28 19:14:32,263.263 INFO    ] 2026-10-28 19:14:32
[2026-10-28 19:14:32,556.556 INFO    ] 2026-10-28 19:14:32
[2026-10-28 19:14:32,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:14:32,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:14:32,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:14:33,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:14:33,150.150 INFO    ] time= 28/10/2026 19:14:33
[2026-10-28 19:14:33,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:14:33,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:14:33,385.385 INFO    ] No existing commands found in stream
[2026-10-28 19:14:38,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:14:38,406.406 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-28 19:14:39,916.916 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:14:39,919.919 INFO    ] Checking for system updates...
[2026-10-28 19:14:39,959.959 INFO    ] 200
[2026-10-28 19:14:39,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:14:40,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:14:40,024.024 INFO    ] No update needed
[2026-10-28 19:14:40,027.027 INFO    ] Checking for camera pi updates...
[2026-10-28 19:14:40,061.061 INFO    ] 200
[2026-10-28 19:14:40,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:14:40,105.105 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:14:40,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:14:40,186.186 INFO    ] No camera update needed
[2026-10-28 19:14:40,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:14:40,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:14:40,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:14:40,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:14:42,242.242 INFO    ] ================================================
[2026-10-28 19:14:42,258.258 INFO    ] Launching Daemon at Wed Oct 28 19:14:42 IST 2026
[2026-10-28 19:14:42,269.269 INFO    ] ================================================
[2026-10-28 19:14:42,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:14:42
[2026-10-28 19:14:43,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:14:43,722.722 INFO    ] Initializing speech engine...
[2026-10-28 19:14:43,732.732 INFO    ] 2026-10-28 19:14:43
[2026-10-28 19:14:43,979.979 INFO    ] 2026-10-28 19:14:43
[2026-10-28 19:14:44,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:14:44,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:14:44,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:14:44,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:14:44,552.552 INFO    ] time= 28/10/2026 19:14:44
[2026-10-28 19:14:44,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:14:44,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:14:44,707.707 INFO    ] No existing commands found in stream
[2026-10-28 19:14:49,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:14:49,745.745 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-10-28 19:14:52,778.778 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:14:52,780.780 INFO    ] Checking for system updates...
[2026-10-28 19:14:52,816.816 INFO    ] 200
[2026-10-28 19:14:52,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:14:52,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:14:52,877.877 INFO    ] No update needed
[2026-10-28 19:14:52,879.879 INFO    ] Checking for camera pi updates...
[2026-10-28 19:14:52,916.916 INFO    ] 200
[2026-10-28 19:14:52,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:14:52,963.963 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:14:53,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:14:53,049.049 INFO    ] No camera update needed
[2026-10-28 19:14:53,051.051 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:14:53,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:14:53,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:14:53,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:14:55,104.104 INFO    ] ================================================
[2026-10-28 19:14:55,120.120 INFO    ] Launching Daemon at Wed Oct 28 19:14:55 IST 2026
[2026-10-28 19:14:55,131.131 INFO    ] ================================================
[2026-10-28 19:14:55,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:14:55
[2026-10-28 19:14:56,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:14:56,568.568 INFO    ] Initializing speech engine...
[2026-10-28 19:14:56,575.575 INFO    ] 2026-10-28 19:14:56
[2026-10-28 19:14:56,823.823 INFO    ] 2026-10-28 19:14:56
[2026-10-28 19:14:56,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:14:57,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:14:57,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:14:57,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:14:57,440.440 INFO    ] time= 28/10/2026 19:14:57
[2026-10-28 19:14:57,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:14:57,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:14:57,651.651 INFO    ] No existing commands found in stream
[2026-10-28 19:15:02,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:15:02,665.665 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-28 19:15:06,133.133 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:15:06,136.136 INFO    ] Checking for system updates...
[2026-10-28 19:15:06,172.172 INFO    ] 200
[2026-10-28 19:15:06,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:15:06,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:15:06,236.236 INFO    ] No update needed
[2026-10-28 19:15:06,238.238 INFO    ] Checking for camera pi updates...
[2026-10-28 19:15:06,276.276 INFO    ] 200
[2026-10-28 19:15:06,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:15:06,319.319 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:15:06,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:15:06,425.425 INFO    ] No camera update needed
[2026-10-28 19:15:06,428.428 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:15:06,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:15:06,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:15:06,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:15:08,482.482 INFO    ] ================================================
[2026-10-28 19:15:08,498.498 INFO    ] Launching Daemon at Wed Oct 28 19:15:08 IST 2026
[2026-10-28 19:15:08,509.509 INFO    ] ================================================
[2026-10-28 19:15:09,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:15:09
[2026-10-28 19:15:09,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:15:10,131.131 INFO    ] Initializing speech engine...
[2026-10-28 19:15:10,139.139 INFO    ] 2026-10-28 19:15:10
[2026-10-28 19:15:10,411.411 INFO    ] 2026-10-28 19:15:10
[2026-10-28 19:15:10,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:15:10,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:15:10,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:15:10,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:15:10,992.992 INFO    ] time= 28/10/2026 19:15:10
[2026-10-28 19:15:11,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:15:11,033.033 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:15:11,203.203 INFO    ] No existing commands found in stream
[2026-10-28 19:15:16,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:15:16,238.238 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 19:15:17,411.411 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:15:17,414.414 INFO    ] Checking for system updates...
[2026-10-28 19:15:17,452.452 INFO    ] 200
[2026-10-28 19:15:17,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:15:17,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:15:17,512.512 INFO    ] No update needed
[2026-10-28 19:15:17,515.515 INFO    ] Checking for camera pi updates...
[2026-10-28 19:15:17,550.550 INFO    ] 200
[2026-10-28 19:15:17,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:15:17,607.607 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:15:17,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:15:17,693.693 INFO    ] No camera update needed
[2026-10-28 19:15:17,696.696 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:15:17,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:15:17,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:15:17,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:15:19,753.753 INFO    ] ================================================
[2026-10-28 19:15:19,768.768 INFO    ] Launching Daemon at Wed Oct 28 19:15:19 IST 2026
[2026-10-28 19:15:19,778.778 INFO    ] ================================================
[2026-10-28 19:15:20,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:15:20
[2026-10-28 19:15:20,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:15:21,214.214 INFO    ] Initializing speech engine...
[2026-10-28 19:15:21,223.223 INFO    ] 2026-10-28 19:15:21
[2026-10-28 19:15:21,473.473 INFO    ] 2026-10-28 19:15:21
[2026-10-28 19:15:21,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:15:21,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:15:21,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:15:22,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:15:22,076.076 INFO    ] time= 28/10/2026 19:15:22
[2026-10-28 19:15:22,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:15:22,103.103 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:15:22,289.289 INFO    ] No existing commands found in stream
[2026-10-28 19:15:27,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:15:27,316.316 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 19:15:28,923.923 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:15:28,925.925 INFO    ] Checking for system updates...
[2026-10-28 19:15:28,965.965 INFO    ] 200
[2026-10-28 19:15:28,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:15:29,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:15:29,023.023 INFO    ] No update needed
[2026-10-28 19:15:29,025.025 INFO    ] Checking for camera pi updates...
[2026-10-28 19:15:29,059.059 INFO    ] 200
[2026-10-28 19:15:29,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:15:29,102.102 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:15:29,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:15:29,187.187 INFO    ] No camera update needed
[2026-10-28 19:15:29,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:15:29,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:15:29,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:15:29,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:15:31,245.245 INFO    ] ================================================
[2026-10-28 19:15:31,260.260 INFO    ] Launching Daemon at Wed Oct 28 19:15:31 IST 2026
[2026-10-28 19:15:31,271.271 INFO    ] ================================================
[2026-10-28 19:15:31,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:15:31
[2026-10-28 19:15:32,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:15:32,976.976 INFO    ] Initializing speech engine...
[2026-10-28 19:15:32,983.983 INFO    ] 2026-10-28 19:15:32
[2026-10-28 19:15:33,283.283 INFO    ] 2026-10-28 19:15:33
[2026-10-28 19:15:33,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:15:33,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:15:33,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:15:33,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:15:33,916.916 INFO    ] time= 28/10/2026 19:15:33
[2026-10-28 19:15:33,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:15:33,941.941 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:15:34,080.080 INFO    ] No existing commands found in stream
[2026-10-28 19:15:39,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:15:39,099.099 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-28 19:15:43,421.421 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:15:43,423.423 INFO    ] Checking for system updates...
[2026-10-28 19:15:43,460.460 INFO    ] 200
[2026-10-28 19:15:43,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:15:43,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:15:43,520.520 INFO    ] No update needed
[2026-10-28 19:15:43,523.523 INFO    ] Checking for camera pi updates...
[2026-10-28 19:15:43,561.561 INFO    ] 200
[2026-10-28 19:15:43,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:15:43,615.615 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:15:43,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:15:43,669.669 INFO    ] No camera update needed
[2026-10-28 19:15:43,672.672 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:15:43,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:15:43,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:15:43,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:15:45,730.730 INFO    ] ================================================
[2026-10-28 19:15:45,745.745 INFO    ] Launching Daemon at Wed Oct 28 19:15:45 IST 2026
[2026-10-28 19:15:45,756.756 INFO    ] ================================================
[2026-10-28 19:15:46,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:15:46
[2026-10-28 19:15:47,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:15:47,397.397 INFO    ] Initializing speech engine...
[2026-10-28 19:15:47,405.405 INFO    ] 2026-10-28 19:15:47
[2026-10-28 19:15:47,678.678 INFO    ] 2026-10-28 19:15:47
[2026-10-28 19:15:47,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:15:48,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:15:48,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:15:48,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:15:48,501.501 INFO    ] time= 28/10/2026 19:15:48
[2026-10-28 19:15:48,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:15:48,615.615 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:15:48,819.819 INFO    ] No existing commands found in stream
[2026-10-28 19:15:53,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:15:53,848.848 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-28 19:15:55,038.038 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:15:55,041.041 INFO    ] Checking for system updates...
[2026-10-28 19:15:55,078.078 INFO    ] 200
[2026-10-28 19:15:55,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:15:55,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:15:55,140.140 INFO    ] No update needed
[2026-10-28 19:15:55,142.142 INFO    ] Checking for camera pi updates...
[2026-10-28 19:15:55,178.178 INFO    ] 200
[2026-10-28 19:15:55,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:15:55,222.222 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:15:55,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:15:55,406.406 INFO    ] No camera update needed
[2026-10-28 19:15:55,409.409 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:15:55,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:15:55,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:15:55,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:15:57,467.467 INFO    ] ================================================
[2026-10-28 19:15:57,482.482 INFO    ] Launching Daemon at Wed Oct 28 19:15:57 IST 2026
[2026-10-28 19:15:57,492.492 INFO    ] ================================================
[2026-10-28 19:15:58,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:15:58
[2026-10-28 19:15:58,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:15:58,937.937 INFO    ] Initializing speech engine...
[2026-10-28 19:15:58,943.943 INFO    ] 2026-10-28 19:15:58
[2026-10-28 19:15:59,241.241 INFO    ] 2026-10-28 19:15:59
[2026-10-28 19:15:59,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:15:59,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:15:59,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:15:59,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:15:59,879.879 INFO    ] time= 28/10/2026 19:15:59
[2026-10-28 19:15:59,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:15:59,909.909 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:16:00,052.052 INFO    ] No existing commands found in stream
[2026-10-28 19:16:05,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:16:05,072.072 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 19:16:07,797.797 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:16:07,799.799 INFO    ] Checking for system updates...
[2026-10-28 19:16:07,835.835 INFO    ] 200
[2026-10-28 19:16:07,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:16:07,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:16:07,893.893 INFO    ] No update needed
[2026-10-28 19:16:07,896.896 INFO    ] Checking for camera pi updates...
[2026-10-28 19:16:07,934.934 INFO    ] 200
[2026-10-28 19:16:07,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:16:07,978.978 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:16:08,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:16:08,078.078 INFO    ] No camera update needed
[2026-10-28 19:16:08,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:16:08,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:16:08,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:16:08,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:16:10,135.135 INFO    ] ================================================
[2026-10-28 19:16:10,150.150 INFO    ] Launching Daemon at Wed Oct 28 19:16:10 IST 2026
[2026-10-28 19:16:10,161.161 INFO    ] ================================================
[2026-10-28 19:16:10,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:16:10
[2026-10-28 19:16:11,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:16:11,564.564 INFO    ] Initializing speech engine...
[2026-10-28 19:16:11,579.579 INFO    ] 2026-10-28 19:16:11
[2026-10-28 19:16:11,847.847 INFO    ] 2026-10-28 19:16:11
[2026-10-28 19:16:11,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:16:12,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:16:12,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:16:12,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:16:12,416.416 INFO    ] time= 28/10/2026 19:16:12
[2026-10-28 19:16:12,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:16:12,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:16:12,592.592 INFO    ] No existing commands found in stream
[2026-10-28 19:16:17,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:16:17,620.620 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-10-28 19:16:22,034.034 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:16:22,037.037 INFO    ] Checking for system updates...
[2026-10-28 19:16:22,073.073 INFO    ] 200
[2026-10-28 19:16:22,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:16:22,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:16:22,140.140 INFO    ] No update needed
[2026-10-28 19:16:22,143.143 INFO    ] Checking for camera pi updates...
[2026-10-28 19:16:22,180.180 INFO    ] 200
[2026-10-28 19:16:22,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:16:22,224.224 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:16:22,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:16:22,308.308 INFO    ] No camera update needed
[2026-10-28 19:16:22,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:16:22,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:16:22,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:16:22,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:16:24,365.365 INFO    ] ================================================
[2026-10-28 19:16:24,381.381 INFO    ] Launching Daemon at Wed Oct 28 19:16:24 IST 2026
[2026-10-28 19:16:24,391.391 INFO    ] ================================================
[2026-10-28 19:16:24,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:16:24
[2026-10-28 19:16:25,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:16:25,811.811 INFO    ] Initializing speech engine...
[2026-10-28 19:16:25,817.817 INFO    ] 2026-10-28 19:16:25
[2026-10-28 19:16:26,116.116 INFO    ] 2026-10-28 19:16:26
[2026-10-28 19:16:26,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:16:26,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:16:26,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:16:26,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:16:26,762.762 INFO    ] time= 28/10/2026 19:16:26
[2026-10-28 19:16:26,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:16:26,785.785 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:16:26,944.944 INFO    ] No existing commands found in stream
[2026-10-28 19:16:31,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:16:31,968.968 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 19:16:32,764.764 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:16:32,767.767 INFO    ] Checking for system updates...
[2026-10-28 19:16:32,807.807 INFO    ] 200
[2026-10-28 19:16:32,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:16:32,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:16:32,864.864 INFO    ] No update needed
[2026-10-28 19:16:32,867.867 INFO    ] Checking for camera pi updates...
[2026-10-28 19:16:32,914.914 INFO    ] 200
[2026-10-28 19:16:32,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:16:32,957.957 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:16:33,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:16:33,081.081 INFO    ] No camera update needed
[2026-10-28 19:16:33,083.083 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:16:33,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:16:33,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:16:33,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:16:35,137.137 INFO    ] ================================================
[2026-10-28 19:16:35,153.153 INFO    ] Launching Daemon at Wed Oct 28 19:16:35 IST 2026
[2026-10-28 19:16:35,164.164 INFO    ] ================================================
[2026-10-28 19:16:35,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:16:35
[2026-10-28 19:16:36,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:16:36,784.784 INFO    ] Initializing speech engine...
[2026-10-28 19:16:36,795.795 INFO    ] 2026-10-28 19:16:36
[2026-10-28 19:16:37,052.052 INFO    ] 2026-10-28 19:16:37
[2026-10-28 19:16:37,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:16:37,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:16:37,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:16:37,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:16:37,665.665 INFO    ] time= 28/10/2026 19:16:37
[2026-10-28 19:16:37,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:16:37,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:16:37,832.832 INFO    ] No existing commands found in stream
[2026-10-28 19:16:42,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:16:42,867.867 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-28 19:16:45,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:16:45,121.121 INFO    ] Checking for system updates...
[2026-10-28 19:16:45,158.158 INFO    ] 200
[2026-10-28 19:16:45,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:16:45,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:16:45,221.221 INFO    ] No update needed
[2026-10-28 19:16:45,223.223 INFO    ] Checking for camera pi updates...
[2026-10-28 19:16:45,261.261 INFO    ] 200
[2026-10-28 19:16:45,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:16:45,304.304 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:16:45,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:16:45,404.404 INFO    ] No camera update needed
[2026-10-28 19:16:45,406.406 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:16:45,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:16:45,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:16:45,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:16:47,460.460 INFO    ] ================================================
[2026-10-28 19:16:47,477.477 INFO    ] Launching Daemon at Wed Oct 28 19:16:47 IST 2026
[2026-10-28 19:16:47,488.488 INFO    ] ================================================
[2026-10-28 19:16:48,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:16:48
[2026-10-28 19:16:48,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:16:48,981.981 INFO    ] Initializing speech engine...
[2026-10-28 19:16:48,998.998 INFO    ] 2026-10-28 19:16:48
[2026-10-28 19:16:49,265.265 INFO    ] 2026-10-28 19:16:49
[2026-10-28 19:16:49,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:16:49,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:16:49,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:16:49,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:16:49,866.866 INFO    ] time= 28/10/2026 19:16:49
[2026-10-28 19:16:49,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:16:49,901.901 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:16:50,042.042 INFO    ] No existing commands found in stream
[2026-10-28 19:16:55,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:16:55,068.068 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-28 19:16:59,214.214 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:16:59,217.217 INFO    ] Checking for system updates...
[2026-10-28 19:16:59,258.258 INFO    ] 200
[2026-10-28 19:16:59,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:16:59,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:16:59,322.322 INFO    ] No update needed
[2026-10-28 19:16:59,324.324 INFO    ] Checking for camera pi updates...
[2026-10-28 19:16:59,359.359 INFO    ] 200
[2026-10-28 19:16:59,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:16:59,402.402 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:16:59,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:16:59,485.485 INFO    ] No camera update needed
[2026-10-28 19:16:59,487.487 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:16:59,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:16:59,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:16:59,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:17:01,549.549 INFO    ] ================================================
[2026-10-28 19:17:01,625.625 INFO    ] Launching Daemon at Wed Oct 28 19:17:01 IST 2026
[2026-10-28 19:17:01,653.653 INFO    ] ================================================
[2026-10-28 19:17:02,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:17:02
[2026-10-28 19:17:03,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:17:03,449.449 INFO    ] Initializing speech engine...
[2026-10-28 19:17:03,460.460 INFO    ] 2026-10-28 19:17:03
[2026-10-28 19:17:03,747.747 INFO    ] 2026-10-28 19:17:03
[2026-10-28 19:17:03,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:17:04,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:17:04,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:17:04,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:17:04,519.519 INFO    ] time= 28/10/2026 19:17:04
[2026-10-28 19:17:04,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:17:04,607.607 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:17:04,824.824 INFO    ] No existing commands found in stream
[2026-10-28 19:17:09,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:17:09,852.852 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 19:17:11,674.674 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:17:11,676.676 INFO    ] Checking for system updates...
[2026-10-28 19:17:11,716.716 INFO    ] 200
[2026-10-28 19:17:11,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:17:11,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:17:11,774.774 INFO    ] No update needed
[2026-10-28 19:17:11,776.776 INFO    ] Checking for camera pi updates...
[2026-10-28 19:17:11,810.810 INFO    ] 200
[2026-10-28 19:17:11,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:17:11,852.852 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:17:11,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:17:11,939.939 INFO    ] No camera update needed
[2026-10-28 19:17:11,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:17:11,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:17:11,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:17:11,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:17:13,994.994 INFO    ] ================================================
[2026-10-28 19:17:14,009.009 INFO    ] Launching Daemon at Wed Oct 28 19:17:14 IST 2026
[2026-10-28 19:17:14,020.020 INFO    ] ================================================
[2026-10-28 19:17:14,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:17:14
[2026-10-28 19:17:15,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:17:15,474.474 INFO    ] Initializing speech engine...
[2026-10-28 19:17:15,483.483 INFO    ] 2026-10-28 19:17:15
[2026-10-28 19:17:15,741.741 INFO    ] 2026-10-28 19:17:15
[2026-10-28 19:17:15,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:17:16,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:17:16,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:17:16,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:17:16,503.503 INFO    ] time= 28/10/2026 19:17:16
[2026-10-28 19:17:16,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:17:16,570.570 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:17:16,717.717 INFO    ] No existing commands found in stream
[2026-10-28 19:17:21,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:17:21,738.738 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-28 19:17:25,154.154 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:17:25,157.157 INFO    ] Checking for system updates...
[2026-10-28 19:17:25,197.197 INFO    ] 200
[2026-10-28 19:17:25,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:17:25,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:17:25,253.253 INFO    ] No update needed
[2026-10-28 19:17:25,256.256 INFO    ] Checking for camera pi updates...
[2026-10-28 19:17:25,293.293 INFO    ] 200
[2026-10-28 19:17:25,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:17:25,341.341 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:17:25,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:17:25,423.423 INFO    ] No camera update needed
[2026-10-28 19:17:25,426.426 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:17:25,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:17:25,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:17:25,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:17:27,478.478 INFO    ] ================================================
[2026-10-28 19:17:27,493.493 INFO    ] Launching Daemon at Wed Oct 28 19:17:27 IST 2026
[2026-10-28 19:17:27,504.504 INFO    ] ================================================
[2026-10-28 19:17:28,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:17:28
[2026-10-28 19:17:28,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:17:29,104.104 INFO    ] Initializing speech engine...
[2026-10-28 19:17:29,117.117 INFO    ] 2026-10-28 19:17:29
[2026-10-28 19:17:29,403.403 INFO    ] 2026-10-28 19:17:29
[2026-10-28 19:17:29,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:17:29,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:17:29,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:17:30,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:17:30,153.153 INFO    ] time= 28/10/2026 19:17:30
[2026-10-28 19:17:30,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:17:30,245.245 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:17:30,433.433 INFO    ] No existing commands found in stream
[2026-10-28 19:17:35,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:17:35,456.456 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-28 19:17:38,314.314 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:17:38,317.317 INFO    ] Checking for system updates...
[2026-10-28 19:17:38,355.355 INFO    ] 200
[2026-10-28 19:17:38,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:17:38,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:17:38,422.422 INFO    ] No update needed
[2026-10-28 19:17:38,425.425 INFO    ] Checking for camera pi updates...
[2026-10-28 19:17:38,463.463 INFO    ] 200
[2026-10-28 19:17:38,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:17:38,508.508 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:17:38,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:17:38,591.591 INFO    ] No camera update needed
[2026-10-28 19:17:38,593.593 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:17:38,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:17:38,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:17:38,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:17:40,646.646 INFO    ] ================================================
[2026-10-28 19:17:40,661.661 INFO    ] Launching Daemon at Wed Oct 28 19:17:40 IST 2026
[2026-10-28 19:17:40,672.672 INFO    ] ================================================
[2026-10-28 19:17:41,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:17:41
[2026-10-28 19:17:41,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:17:42,072.072 INFO    ] Initializing speech engine...
[2026-10-28 19:17:42,077.077 INFO    ] 2026-10-28 19:17:42
[2026-10-28 19:17:42,375.375 INFO    ] 2026-10-28 19:17:42
[2026-10-28 19:17:42,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:17:42,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:17:42,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:17:42,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:17:43,002.002 INFO    ] time= 28/10/2026 19:17:42
[2026-10-28 19:17:43,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:17:43,024.024 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:17:43,161.161 INFO    ] No existing commands found in stream
[2026-10-28 19:17:48,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:17:48,189.189 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 19:17:50,180.180 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:17:50,183.183 INFO    ] Checking for system updates...
[2026-10-28 19:17:50,223.223 INFO    ] 200
[2026-10-28 19:17:50,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:17:50,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:17:50,280.280 INFO    ] No update needed
[2026-10-28 19:17:50,282.282 INFO    ] Checking for camera pi updates...
[2026-10-28 19:17:50,316.316 INFO    ] 200
[2026-10-28 19:17:50,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:17:50,359.359 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:17:50,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:17:50,447.447 INFO    ] No camera update needed
[2026-10-28 19:17:50,449.449 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:17:50,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:17:50,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:17:50,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:17:52,502.502 INFO    ] ================================================
[2026-10-28 19:17:52,517.517 INFO    ] Launching Daemon at Wed Oct 28 19:17:52 IST 2026
[2026-10-28 19:17:52,528.528 INFO    ] ================================================
[2026-10-28 19:17:53,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:17:53
[2026-10-28 19:17:53,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:17:53,975.975 INFO    ] Initializing speech engine...
[2026-10-28 19:17:53,991.991 INFO    ] 2026-10-28 19:17:53
[2026-10-28 19:17:54,283.283 INFO    ] 2026-10-28 19:17:54
[2026-10-28 19:17:54,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:17:54,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:17:54,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:17:54,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:17:54,924.924 INFO    ] time= 28/10/2026 19:17:54
[2026-10-28 19:17:54,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:17:54,962.962 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:17:55,109.109 INFO    ] No existing commands found in stream
[2026-10-28 19:18:00,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:18:00,128.128 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-28 19:18:03,195.195 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:18:03,198.198 INFO    ] Checking for system updates...
[2026-10-28 19:18:03,238.238 INFO    ] 200
[2026-10-28 19:18:03,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:18:03,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:18:03,351.351 INFO    ] No update needed
[2026-10-28 19:18:03,355.355 INFO    ] Checking for camera pi updates...
[2026-10-28 19:18:03,393.393 INFO    ] 200
[2026-10-28 19:18:03,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:18:03,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:18:03,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:18:03,544.544 INFO    ] No camera update needed
[2026-10-28 19:18:03,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:18:03,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:18:03,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:18:03,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:18:05,600.600 INFO    ] ================================================
[2026-10-28 19:18:05,616.616 INFO    ] Launching Daemon at Wed Oct 28 19:18:05 IST 2026
[2026-10-28 19:18:05,627.627 INFO    ] ================================================
[2026-10-28 19:18:06,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:18:06
[2026-10-28 19:18:06,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:18:07,090.090 INFO    ] Initializing speech engine...
[2026-10-28 19:18:07,096.096 INFO    ] 2026-10-28 19:18:07
[2026-10-28 19:18:07,360.360 INFO    ] 2026-10-28 19:18:07
[2026-10-28 19:18:07,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:18:07,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:18:07,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:18:07,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:18:07,950.950 INFO    ] time= 28/10/2026 19:18:07
[2026-10-28 19:18:07,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:18:07,964.964 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:18:08,119.119 INFO    ] No existing commands found in stream
[2026-10-28 19:18:13,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:18:13,153.153 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 19:18:14,334.334 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:18:14,336.336 INFO    ] Checking for system updates...
[2026-10-28 19:18:14,372.372 INFO    ] 200
[2026-10-28 19:18:14,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:18:14,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:18:14,429.429 INFO    ] No update needed
[2026-10-28 19:18:14,432.432 INFO    ] Checking for camera pi updates...
[2026-10-28 19:18:14,465.465 INFO    ] 200
[2026-10-28 19:18:14,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:18:14,508.508 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:18:14,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:18:14,595.595 INFO    ] No camera update needed
[2026-10-28 19:18:14,597.597 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:18:14,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:18:14,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:18:14,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:18:16,653.653 INFO    ] ================================================
[2026-10-28 19:18:16,669.669 INFO    ] Launching Daemon at Wed Oct 28 19:18:16 IST 2026
[2026-10-28 19:18:16,681.681 INFO    ] ================================================
[2026-10-28 19:18:17,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:18:17
[2026-10-28 19:18:17,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:18:18,140.140 INFO    ] Initializing speech engine...
[2026-10-28 19:18:18,147.147 INFO    ] 2026-10-28 19:18:18
[2026-10-28 19:18:18,405.405 INFO    ] 2026-10-28 19:18:18
[2026-10-28 19:18:18,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:18:18,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:18:18,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:18:18,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:18:19,003.003 INFO    ] time= 28/10/2026 19:18:18
[2026-10-28 19:18:19,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:18:19,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:18:19,218.218 INFO    ] No existing commands found in stream
[2026-10-28 19:18:24,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:18:24,253.253 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-28 19:18:25,196.196 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:18:25,199.199 INFO    ] Checking for system updates...
[2026-10-28 19:18:25,234.234 INFO    ] 200
[2026-10-28 19:18:25,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:18:25,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:18:25,292.292 INFO    ] No update needed
[2026-10-28 19:18:25,295.295 INFO    ] Checking for camera pi updates...
[2026-10-28 19:18:25,328.328 INFO    ] 200
[2026-10-28 19:18:25,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:18:25,371.371 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:18:25,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:18:25,453.453 INFO    ] No camera update needed
[2026-10-28 19:18:25,455.455 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:18:25,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:18:25,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:18:25,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:18:27,511.511 INFO    ] ================================================
[2026-10-28 19:18:27,526.526 INFO    ] Launching Daemon at Wed Oct 28 19:18:27 IST 2026
[2026-10-28 19:18:27,537.537 INFO    ] ================================================
[2026-10-28 19:18:28,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:18:28
[2026-10-28 19:18:28,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:18:28,956.956 INFO    ] Initializing speech engine...
[2026-10-28 19:18:28,961.961 INFO    ] 2026-10-28 19:18:28
[2026-10-28 19:18:29,263.263 INFO    ] 2026-10-28 19:18:29
[2026-10-28 19:18:29,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:18:29,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:18:29,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:18:29,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:18:29,885.885 INFO    ] time= 28/10/2026 19:18:29
[2026-10-28 19:18:29,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:18:29,928.928 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:18:30,079.079 INFO    ] No existing commands found in stream
[2026-10-28 19:18:35,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:18:35,108.108 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-28 19:18:37,395.395 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:18:37,398.398 INFO    ] Checking for system updates...
[2026-10-28 19:18:37,440.440 INFO    ] 200
[2026-10-28 19:18:37,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:18:37,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:18:37,500.500 INFO    ] No update needed
[2026-10-28 19:18:37,503.503 INFO    ] Checking for camera pi updates...
[2026-10-28 19:18:37,539.539 INFO    ] 200
[2026-10-28 19:18:37,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:18:37,590.590 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:18:37,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:18:37,679.679 INFO    ] No camera update needed
[2026-10-28 19:18:37,682.682 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:18:37,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:18:37,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:18:37,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:18:39,740.740 INFO    ] ================================================
[2026-10-28 19:18:39,756.756 INFO    ] Launching Daemon at Wed Oct 28 19:18:39 IST 2026
[2026-10-28 19:18:39,767.767 INFO    ] ================================================
[2026-10-28 19:18:40,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:18:40
[2026-10-28 19:18:40,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:18:41,225.225 INFO    ] Initializing speech engine...
[2026-10-28 19:18:41,235.235 INFO    ] 2026-10-28 19:18:41
[2026-10-28 19:18:41,484.484 INFO    ] 2026-10-28 19:18:41
[2026-10-28 19:18:41,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:18:41,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:18:41,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:18:42,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:18:42,059.059 INFO    ] time= 28/10/2026 19:18:42
[2026-10-28 19:18:42,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:18:42,094.094 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:18:42,260.260 INFO    ] No existing commands found in stream
[2026-10-28 19:18:47,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:18:47,293.293 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 19:18:49,275.275 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:18:49,278.278 INFO    ] Checking for system updates...
[2026-10-28 19:18:49,313.313 INFO    ] 200
[2026-10-28 19:18:49,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:18:49,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:18:49,370.370 INFO    ] No update needed
[2026-10-28 19:18:49,373.373 INFO    ] Checking for camera pi updates...
[2026-10-28 19:18:49,406.406 INFO    ] 200
[2026-10-28 19:18:49,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:18:49,455.455 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:18:49,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:18:49,540.540 INFO    ] No camera update needed
[2026-10-28 19:18:49,543.543 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:18:49,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:18:49,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:18:49,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:18:51,599.599 INFO    ] ================================================
[2026-10-28 19:18:51,614.614 INFO    ] Launching Daemon at Wed Oct 28 19:18:51 IST 2026
[2026-10-28 19:18:51,625.625 INFO    ] ================================================
[2026-10-28 19:18:52,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:18:52
[2026-10-28 19:18:52,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:18:53,090.090 INFO    ] Initializing speech engine...
[2026-10-28 19:18:53,097.097 INFO    ] 2026-10-28 19:18:53
[2026-10-28 19:18:53,344.344 INFO    ] 2026-10-28 19:18:53
[2026-10-28 19:18:53,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:18:53,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:18:53,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:18:53,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:18:53,947.947 INFO    ] time= 28/10/2026 19:18:53
[2026-10-28 19:18:53,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:18:53,992.992 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:18:54,154.154 INFO    ] No existing commands found in stream
[2026-10-28 19:18:59,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:18:59,182.182 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-28 19:19:00,575.575 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:19:00,578.578 INFO    ] Checking for system updates...
[2026-10-28 19:19:00,615.615 INFO    ] 200
[2026-10-28 19:19:00,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:19:00,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:19:00,678.678 INFO    ] No update needed
[2026-10-28 19:19:00,681.681 INFO    ] Checking for camera pi updates...
[2026-10-28 19:19:00,716.716 INFO    ] 200
[2026-10-28 19:19:00,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:19:00,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:19:00,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:19:00,861.861 INFO    ] No camera update needed
[2026-10-28 19:19:00,864.864 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:19:00,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:19:00,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:19:00,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:19:02,926.926 INFO    ] ================================================
[2026-10-28 19:19:02,946.946 INFO    ] Launching Daemon at Wed Oct 28 19:19:02 IST 2026
[2026-10-28 19:19:02,960.960 INFO    ] ================================================
[2026-10-28 19:19:03,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:19:03
[2026-10-28 19:19:04,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:19:04,612.612 INFO    ] Initializing speech engine...
[2026-10-28 19:19:04,621.621 INFO    ] 2026-10-28 19:19:04
[2026-10-28 19:19:04,885.885 INFO    ] 2026-10-28 19:19:04
[2026-10-28 19:19:04,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:19:05,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:19:05,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:19:05,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:19:05,463.463 INFO    ] time= 28/10/2026 19:19:05
[2026-10-28 19:19:05,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:19:05,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:19:05,652.652 INFO    ] No existing commands found in stream
[2026-10-28 19:19:10,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:19:10,687.687 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 19:19:12,024.024 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:19:12,027.027 INFO    ] Checking for system updates...
[2026-10-28 19:19:12,064.064 INFO    ] 200
[2026-10-28 19:19:12,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:19:12,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:19:12,124.124 INFO    ] No update needed
[2026-10-28 19:19:12,126.126 INFO    ] Checking for camera pi updates...
[2026-10-28 19:19:12,161.161 INFO    ] 200
[2026-10-28 19:19:12,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:19:12,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:19:12,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:19:12,308.308 INFO    ] No camera update needed
[2026-10-28 19:19:12,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:19:12,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:19:12,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:19:12,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:19:14,370.370 INFO    ] ================================================
[2026-10-28 19:19:14,386.386 INFO    ] Launching Daemon at Wed Oct 28 19:19:14 IST 2026
[2026-10-28 19:19:14,398.398 INFO    ] ================================================
[2026-10-28 19:19:15,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:19:15
[2026-10-28 19:19:15,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:19:16,067.067 INFO    ] Initializing speech engine...
[2026-10-28 19:19:16,079.079 INFO    ] 2026-10-28 19:19:16
[2026-10-28 19:19:16,391.391 INFO    ] 2026-10-28 19:19:16
[2026-10-28 19:19:16,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:19:16,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:19:16,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:19:17,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:19:17,127.127 INFO    ] time= 28/10/2026 19:19:17
[2026-10-28 19:19:17,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:19:17,225.225 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:19:17,359.359 INFO    ] No existing commands found in stream
[2026-10-28 19:19:22,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:19:22,372.372 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 19:19:26,057.057 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:19:26,060.060 INFO    ] Checking for system updates...
[2026-10-28 19:19:26,101.101 INFO    ] 200
[2026-10-28 19:19:26,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:19:26,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:19:26,169.169 INFO    ] No update needed
[2026-10-28 19:19:26,172.172 INFO    ] Checking for camera pi updates...
[2026-10-28 19:19:26,208.208 INFO    ] 200
[2026-10-28 19:19:26,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:19:26,252.252 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:19:26,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:19:26,361.361 INFO    ] No camera update needed
[2026-10-28 19:19:26,364.364 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:19:26,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:19:26,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:19:26,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:19:28,421.421 INFO    ] ================================================
[2026-10-28 19:19:28,437.437 INFO    ] Launching Daemon at Wed Oct 28 19:19:28 IST 2026
[2026-10-28 19:19:28,447.447 INFO    ] ================================================
[2026-10-28 19:19:29,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:19:29
[2026-10-28 19:19:29,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:19:30,066.066 INFO    ] Initializing speech engine...
[2026-10-28 19:19:30,077.077 INFO    ] 2026-10-28 19:19:30
[2026-10-28 19:19:30,354.354 INFO    ] 2026-10-28 19:19:30
[2026-10-28 19:19:30,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:19:30,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:19:30,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:19:31,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:19:31,129.129 INFO    ] time= 28/10/2026 19:19:31
[2026-10-28 19:19:31,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:19:31,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:19:31,336.336 INFO    ] No existing commands found in stream
[2026-10-28 19:19:36,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:19:36,349.349 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 19:19:40,677.677 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:19:40,680.680 INFO    ] Checking for system updates...
[2026-10-28 19:19:40,718.718 INFO    ] 200
[2026-10-28 19:19:40,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:19:40,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:19:40,778.778 INFO    ] No update needed
[2026-10-28 19:19:40,781.781 INFO    ] Checking for camera pi updates...
[2026-10-28 19:19:40,815.815 INFO    ] 200
[2026-10-28 19:19:40,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:19:40,860.860 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:19:40,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:19:40,962.962 INFO    ] No camera update needed
[2026-10-28 19:19:40,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:19:40,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:19:40,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:19:40,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:19:43,023.023 INFO    ] ================================================
[2026-10-28 19:19:43,038.038 INFO    ] Launching Daemon at Wed Oct 28 19:19:43 IST 2026
[2026-10-28 19:19:43,049.049 INFO    ] ================================================
[2026-10-28 19:19:43,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:19:43
[2026-10-28 19:19:44,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:19:44,556.556 INFO    ] Initializing speech engine...
[2026-10-28 19:19:44,561.561 INFO    ] 2026-10-28 19:19:44
[2026-10-28 19:19:44,850.850 INFO    ] 2026-10-28 19:19:44
[2026-10-28 19:19:44,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:19:45,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:19:45,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:19:45,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:19:45,623.623 INFO    ] time= 28/10/2026 19:19:45
[2026-10-28 19:19:45,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:19:45,732.732 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:19:45,924.924 INFO    ] No existing commands found in stream
[2026-10-28 19:19:50,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:19:50,958.958 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-28 19:19:52,597.597 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:19:52,600.600 INFO    ] Checking for system updates...
[2026-10-28 19:19:52,637.637 INFO    ] 200
[2026-10-28 19:19:52,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:19:52,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:19:52,695.695 INFO    ] No update needed
[2026-10-28 19:19:52,698.698 INFO    ] Checking for camera pi updates...
[2026-10-28 19:19:52,731.731 INFO    ] 200
[2026-10-28 19:19:52,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:19:52,778.778 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:19:52,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:19:52,859.859 INFO    ] No camera update needed
[2026-10-28 19:19:52,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:19:52,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:19:52,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:19:52,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:19:54,920.920 INFO    ] ================================================
[2026-10-28 19:19:54,935.935 INFO    ] Launching Daemon at Wed Oct 28 19:19:54 IST 2026
[2026-10-28 19:19:54,946.946 INFO    ] ================================================
[2026-10-28 19:19:55,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:19:55
[2026-10-28 19:19:56,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:19:56,364.364 INFO    ] Initializing speech engine...
[2026-10-28 19:19:56,379.379 INFO    ] 2026-10-28 19:19:56
[2026-10-28 19:19:56,651.651 INFO    ] 2026-10-28 19:19:56
[2026-10-28 19:19:56,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:19:56,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:19:56,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:19:57,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:19:57,288.288 INFO    ] time= 28/10/2026 19:19:57
[2026-10-28 19:19:57,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:19:57,320.320 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:19:57,475.475 INFO    ] No existing commands found in stream
[2026-10-28 19:20:02,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:20:02,499.499 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-28 19:20:08,395.395 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:20:08,398.398 INFO    ] Checking for system updates...
[2026-10-28 19:20:08,434.434 INFO    ] 200
[2026-10-28 19:20:08,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:20:08,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:20:08,493.493 INFO    ] No update needed
[2026-10-28 19:20:08,495.495 INFO    ] Checking for camera pi updates...
[2026-10-28 19:20:08,529.529 INFO    ] 200
[2026-10-28 19:20:08,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:20:08,573.573 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:20:08,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:20:08,732.732 INFO    ] No camera update needed
[2026-10-28 19:20:08,735.735 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:20:08,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:20:08,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:20:08,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:20:10,788.788 INFO    ] ================================================
[2026-10-28 19:20:10,802.802 INFO    ] Launching Daemon at Wed Oct 28 19:20:10 IST 2026
[2026-10-28 19:20:10,813.813 INFO    ] ================================================
[2026-10-28 19:20:11,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:20:11
[2026-10-28 19:20:11,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:20:12,242.242 INFO    ] Initializing speech engine...
[2026-10-28 19:20:12,250.250 INFO    ] 2026-10-28 19:20:12
[2026-10-28 19:20:12,539.539 INFO    ] 2026-10-28 19:20:12
[2026-10-28 19:20:12,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:20:12,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:20:12,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:20:13,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:20:13,120.120 INFO    ] time= 28/10/2026 19:20:13
[2026-10-28 19:20:13,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:20:13,144.144 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:20:13,297.297 INFO    ] No existing commands found in stream
[2026-10-28 19:20:18,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:20:18,330.330 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-28 19:20:20,636.636 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:20:20,639.639 INFO    ] Checking for system updates...
[2026-10-28 19:20:20,678.678 INFO    ] 200
[2026-10-28 19:20:20,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:20:20,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:20:20,735.735 INFO    ] No update needed
[2026-10-28 19:20:20,737.737 INFO    ] Checking for camera pi updates...
[2026-10-28 19:20:20,770.770 INFO    ] 200
[2026-10-28 19:20:20,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:20:20,813.813 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:20:20,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:20:20,914.914 INFO    ] No camera update needed
[2026-10-28 19:20:20,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:20:20,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:20:20,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:20:20,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:20:22,971.971 INFO    ] ================================================
[2026-10-28 19:20:22,986.986 INFO    ] Launching Daemon at Wed Oct 28 19:20:22 IST 2026
[2026-10-28 19:20:23,997.997 INFO    ] ================================================
[2026-10-28 19:20:23,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:20:23
[2026-10-28 19:20:24,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:20:24,404.404 INFO    ] Initializing speech engine...
[2026-10-28 19:20:24,418.418 INFO    ] 2026-10-28 19:20:24
[2026-10-28 19:20:24,681.681 INFO    ] 2026-10-28 19:20:24
[2026-10-28 19:20:24,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:20:24,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:20:25,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:20:25,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:20:25,249.249 INFO    ] time= 28/10/2026 19:20:25
[2026-10-28 19:20:25,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:20:25,283.283 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:20:25,433.433 INFO    ] No existing commands found in stream
[2026-10-28 19:20:30,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:20:30,466.466 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-28 19:20:31,742.742 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:20:31,745.745 INFO    ] Checking for system updates...
[2026-10-28 19:20:31,787.787 INFO    ] 200
[2026-10-28 19:20:31,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:20:31,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:20:31,853.853 INFO    ] No update needed
[2026-10-28 19:20:31,856.856 INFO    ] Checking for camera pi updates...
[2026-10-28 19:20:31,897.897 INFO    ] 200
[2026-10-28 19:20:31,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:20:31,948.948 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:20:32,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:20:32,048.048 INFO    ] No camera update needed
[2026-10-28 19:20:32,050.050 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:20:32,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:20:32,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:20:32,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:20:34,107.107 INFO    ] ================================================
[2026-10-28 19:20:34,123.123 INFO    ] Launching Daemon at Wed Oct 28 19:20:34 IST 2026
[2026-10-28 19:20:34,134.134 INFO    ] ================================================
[2026-10-28 19:20:34,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:20:34
[2026-10-28 19:20:35,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:20:35,742.742 INFO    ] Initializing speech engine...
[2026-10-28 19:20:35,747.747 INFO    ] 2026-10-28 19:20:35
[2026-10-28 19:20:36,018.018 INFO    ] 2026-10-28 19:20:36
[2026-10-28 19:20:36,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:20:36,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:20:36,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:20:36,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:20:36,631.631 INFO    ] time= 28/10/2026 19:20:36
[2026-10-28 19:20:36,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:20:36,647.647 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:20:36,788.788 INFO    ] No existing commands found in stream
[2026-10-28 19:20:41,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:20:41,819.819 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-28 19:20:44,837.837 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:20:44,840.840 INFO    ] Checking for system updates...
[2026-10-28 19:20:44,877.877 INFO    ] 200
[2026-10-28 19:20:44,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:20:44,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:20:44,936.936 INFO    ] No update needed
[2026-10-28 19:20:44,938.938 INFO    ] Checking for camera pi updates...
[2026-10-28 19:20:44,974.974 INFO    ] 200
[2026-10-28 19:20:44,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:20:45,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:20:45,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:20:45,115.115 INFO    ] No camera update needed
[2026-10-28 19:20:45,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:20:45,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:20:45,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:20:45,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:20:47,174.174 INFO    ] ================================================
[2026-10-28 19:20:47,189.189 INFO    ] Launching Daemon at Wed Oct 28 19:20:47 IST 2026
[2026-10-28 19:20:47,200.200 INFO    ] ================================================
[2026-10-28 19:20:47,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:20:47
[2026-10-28 19:20:48,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:20:48,604.604 INFO    ] Initializing speech engine...
[2026-10-28 19:20:48,627.627 INFO    ] 2026-10-28 19:20:48
[2026-10-28 19:20:48,884.884 INFO    ] 2026-10-28 19:20:48
[2026-10-28 19:20:48,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:20:49,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:20:49,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:20:49,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:20:49,469.469 INFO    ] time= 28/10/2026 19:20:49
[2026-10-28 19:20:49,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:20:49,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:20:49,678.678 INFO    ] No existing commands found in stream
[2026-10-28 19:20:54,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:20:54,706.706 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 19:20:57,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:20:57,774.774 INFO    ] Checking for system updates...
[2026-10-28 19:20:57,809.809 INFO    ] 200
[2026-10-28 19:20:57,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:20:57,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:20:57,873.873 INFO    ] No update needed
[2026-10-28 19:20:57,875.875 INFO    ] Checking for camera pi updates...
[2026-10-28 19:20:57,908.908 INFO    ] 200
[2026-10-28 19:20:57,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:20:57,951.951 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:20:58,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:20:58,052.052 INFO    ] No camera update needed
[2026-10-28 19:20:58,054.054 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:20:58,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:20:58,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:20:58,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:21:00,108.108 INFO    ] ================================================
[2026-10-28 19:21:00,124.124 INFO    ] Launching Daemon at Wed Oct 28 19:21:00 IST 2026
[2026-10-28 19:21:00,136.136 INFO    ] ================================================
[2026-10-28 19:21:00,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:21:00
[2026-10-28 19:21:01,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:21:01,695.695 INFO    ] Initializing speech engine...
[2026-10-28 19:21:01,699.699 INFO    ] 2026-10-28 19:21:01
[2026-10-28 19:21:02,109.109 INFO    ] 2026-10-28 19:21:02
[2026-10-28 19:21:02,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:21:02,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:21:02,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:21:02,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:21:02,785.785 INFO    ] time= 28/10/2026 19:21:02
[2026-10-28 19:21:02,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:21:02,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:21:03,049.049 INFO    ] No existing commands found in stream
[2026-10-28 19:21:08,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:21:08,091.091 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 19:21:08,757.757 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:21:08,760.760 INFO    ] Checking for system updates...
[2026-10-28 19:21:08,798.798 INFO    ] 200
[2026-10-28 19:21:08,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:21:08,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:21:08,856.856 INFO    ] No update needed
[2026-10-28 19:21:08,859.859 INFO    ] Checking for camera pi updates...
[2026-10-28 19:21:08,894.894 INFO    ] 200
[2026-10-28 19:21:08,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:21:08,938.938 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:21:09,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:21:09,037.037 INFO    ] No camera update needed
[2026-10-28 19:21:09,040.040 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:21:09,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:21:09,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:21:09,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:21:11,097.097 INFO    ] ================================================
[2026-10-28 19:21:11,113.113 INFO    ] Launching Daemon at Wed Oct 28 19:21:11 IST 2026
[2026-10-28 19:21:11,124.124 INFO    ] ================================================
[2026-10-28 19:21:11,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:21:11
[2026-10-28 19:21:12,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:21:12,546.546 INFO    ] Initializing speech engine...
[2026-10-28 19:21:12,563.563 INFO    ] 2026-10-28 19:21:12
[2026-10-28 19:21:12,834.834 INFO    ] 2026-10-28 19:21:12
[2026-10-28 19:21:12,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:21:13,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:21:13,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:21:13,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:21:13,457.457 INFO    ] time= 28/10/2026 19:21:13
[2026-10-28 19:21:13,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:21:13,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:21:13,621.621 INFO    ] No existing commands found in stream
[2026-10-28 19:21:18,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:21:18,638.638 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-28 19:21:22,918.918 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:21:22,921.921 INFO    ] Checking for system updates...
[2026-10-28 19:21:22,956.956 INFO    ] 200
[2026-10-28 19:21:22,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:21:23,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:21:23,014.014 INFO    ] No update needed
[2026-10-28 19:21:23,016.016 INFO    ] Checking for camera pi updates...
[2026-10-28 19:21:23,052.052 INFO    ] 200
[2026-10-28 19:21:23,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:21:23,099.099 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:21:23,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:21:23,205.205 INFO    ] No camera update needed
[2026-10-28 19:21:23,208.208 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:21:23,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:21:23,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:21:23,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:21:25,262.262 INFO    ] ================================================
[2026-10-28 19:21:25,277.277 INFO    ] Launching Daemon at Wed Oct 28 19:21:25 IST 2026
[2026-10-28 19:21:25,288.288 INFO    ] ================================================
[2026-10-28 19:21:25,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:21:25
[2026-10-28 19:21:26,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:21:26,693.693 INFO    ] Initializing speech engine...
[2026-10-28 19:21:26,713.713 INFO    ] 2026-10-28 19:21:26
[2026-10-28 19:21:26,968.968 INFO    ] 2026-10-28 19:21:26
[2026-10-28 19:21:27,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:21:27,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:21:27,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:21:27,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:21:27,524.524 INFO    ] time= 28/10/2026 19:21:27
[2026-10-28 19:21:27,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:21:27,571.571 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:21:27,702.702 INFO    ] No existing commands found in stream
[2026-10-28 19:21:32,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:21:32,728.728 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-28 19:21:34,161.161 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:21:34,164.164 INFO    ] Checking for system updates...
[2026-10-28 19:21:34,200.200 INFO    ] 200
[2026-10-28 19:21:34,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:21:34,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:21:34,260.260 INFO    ] No update needed
[2026-10-28 19:21:34,263.263 INFO    ] Checking for camera pi updates...
[2026-10-28 19:21:34,307.307 INFO    ] 200
[2026-10-28 19:21:34,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:21:34,359.359 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:21:34,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:21:34,468.468 INFO    ] No camera update needed
[2026-10-28 19:21:34,471.471 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:21:34,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:21:34,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:21:34,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:21:36,527.527 INFO    ] ================================================
[2026-10-28 19:21:36,543.543 INFO    ] Launching Daemon at Wed Oct 28 19:21:36 IST 2026
[2026-10-28 19:21:36,553.553 INFO    ] ================================================
[2026-10-28 19:21:37,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:21:37
[2026-10-28 19:21:37,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:21:38,114.114 INFO    ] Initializing speech engine...
[2026-10-28 19:21:38,121.121 INFO    ] 2026-10-28 19:21:38
[2026-10-28 19:21:38,382.382 INFO    ] 2026-10-28 19:21:38
[2026-10-28 19:21:38,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:21:38,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:21:38,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:21:38,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:21:38,944.944 INFO    ] time= 28/10/2026 19:21:38
[2026-10-28 19:21:38,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:21:38,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:21:39,172.172 INFO    ] No existing commands found in stream
[2026-10-28 19:21:44,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:21:44,192.192 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 19:21:47,434.434 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:21:47,437.437 INFO    ] Checking for system updates...
[2026-10-28 19:21:47,477.477 INFO    ] 200
[2026-10-28 19:21:47,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:21:47,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:21:47,546.546 INFO    ] No update needed
[2026-10-28 19:21:47,549.549 INFO    ] Checking for camera pi updates...
[2026-10-28 19:21:47,591.591 INFO    ] 200
[2026-10-28 19:21:47,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:21:47,639.639 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:21:47,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:21:47,729.729 INFO    ] No camera update needed
[2026-10-28 19:21:47,731.731 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:21:47,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:21:47,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:21:47,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:21:49,790.790 INFO    ] ================================================
[2026-10-28 19:21:49,806.806 INFO    ] Launching Daemon at Wed Oct 28 19:21:49 IST 2026
[2026-10-28 19:21:49,818.818 INFO    ] ================================================
[2026-10-28 19:21:50,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:21:50
[2026-10-28 19:21:51,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:21:51,368.368 INFO    ] Initializing speech engine...
[2026-10-28 19:21:51,376.376 INFO    ] 2026-10-28 19:21:51
[2026-10-28 19:21:51,645.645 INFO    ] 2026-10-28 19:21:51
[2026-10-28 19:21:51,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:21:51,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:21:51,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:21:52,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:21:52,217.217 INFO    ] time= 28/10/2026 19:21:52
[2026-10-28 19:21:52,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:21:52,253.253 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:21:52,457.457 INFO    ] No existing commands found in stream
[2026-10-28 19:21:57,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:21:57,470.470 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-28 19:22:01,992.992 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:22:01,997.997 INFO    ] Checking for system updates...
[2026-10-28 19:22:02,056.056 INFO    ] 200
[2026-10-28 19:22:02,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:22:02,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:22:02,158.158 INFO    ] No update needed
[2026-10-28 19:22:02,161.161 INFO    ] Checking for camera pi updates...
[2026-10-28 19:22:02,206.206 INFO    ] 200
[2026-10-28 19:22:02,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:22:02,323.323 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:22:02,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:22:02,474.474 INFO    ] No camera update needed
[2026-10-28 19:22:02,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:22:02,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:22:02,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:22:02,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:22:04,538.538 INFO    ] ================================================
[2026-10-28 19:22:04,554.554 INFO    ] Launching Daemon at Wed Oct 28 19:22:04 IST 2026
[2026-10-28 19:22:04,566.566 INFO    ] ================================================
[2026-10-28 19:22:05,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:22:05
[2026-10-28 19:22:05,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:22:06,035.035 INFO    ] Initializing speech engine...
[2026-10-28 19:22:06,045.045 INFO    ] 2026-10-28 19:22:06
[2026-10-28 19:22:06,306.306 INFO    ] 2026-10-28 19:22:06
[2026-10-28 19:22:06,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:22:06,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:22:06,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:22:06,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:22:06,959.959 INFO    ] time= 28/10/2026 19:22:06
[2026-10-28 19:22:07,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:22:07,046.046 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:22:07,215.215 INFO    ] No existing commands found in stream
[2026-10-28 19:22:12,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:22:12,242.242 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 19:22:13,956.956 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:22:13,959.959 INFO    ] Checking for system updates...
[2026-10-28 19:22:13,994.994 INFO    ] 200
[2026-10-28 19:22:13,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:22:14,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:22:14,053.053 INFO    ] No update needed
[2026-10-28 19:22:14,055.055 INFO    ] Checking for camera pi updates...
[2026-10-28 19:22:14,088.088 INFO    ] 200
[2026-10-28 19:22:14,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:22:14,131.131 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:22:14,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:22:14,312.312 INFO    ] No camera update needed
[2026-10-28 19:22:14,315.315 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:22:14,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:22:14,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:22:14,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:22:16,370.370 INFO    ] ================================================
[2026-10-28 19:22:16,385.385 INFO    ] Launching Daemon at Wed Oct 28 19:22:16 IST 2026
[2026-10-28 19:22:16,395.395 INFO    ] ================================================
[2026-10-28 19:22:16,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:22:16
[2026-10-28 19:22:17,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:22:17,848.848 INFO    ] Initializing speech engine...
[2026-10-28 19:22:17,853.853 INFO    ] 2026-10-28 19:22:17
[2026-10-28 19:22:18,101.101 INFO    ] 2026-10-28 19:22:18
[2026-10-28 19:22:18,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:22:18,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:22:18,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:22:18,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:22:18,699.699 INFO    ] time= 28/10/2026 19:22:18
[2026-10-28 19:22:18,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:22:18,714.714 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:22:18,896.896 INFO    ] No existing commands found in stream
[2026-10-28 19:22:23,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:22:23,919.919 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 19:22:26,340.340 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:22:26,343.343 INFO    ] Checking for system updates...
[2026-10-28 19:22:26,379.379 INFO    ] 200
[2026-10-28 19:22:26,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:22:26,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:22:26,439.439 INFO    ] No update needed
[2026-10-28 19:22:26,442.442 INFO    ] Checking for camera pi updates...
[2026-10-28 19:22:26,476.476 INFO    ] 200
[2026-10-28 19:22:26,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:22:26,520.520 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:22:26,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:22:26,596.596 INFO    ] No camera update needed
[2026-10-28 19:22:26,599.599 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:22:26,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:22:26,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:22:26,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:22:28,655.655 INFO    ] ================================================
[2026-10-28 19:22:28,669.669 INFO    ] Launching Daemon at Wed Oct 28 19:22:28 IST 2026
[2026-10-28 19:22:28,680.680 INFO    ] ================================================
[2026-10-28 19:22:29,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:22:29
[2026-10-28 19:22:29,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:22:30,120.120 INFO    ] Initializing speech engine...
[2026-10-28 19:22:30,131.131 INFO    ] 2026-10-28 19:22:30
[2026-10-28 19:22:30,392.392 INFO    ] 2026-10-28 19:22:30
[2026-10-28 19:22:30,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:22:30,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:22:30,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:22:31,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:22:31,163.163 INFO    ] time= 28/10/2026 19:22:31
[2026-10-28 19:22:31,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:22:31,246.246 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:22:31,473.473 INFO    ] No existing commands found in stream
[2026-10-28 19:22:36,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:22:36,512.512 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-28 19:22:40,153.153 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:22:40,156.156 INFO    ] Checking for system updates...
[2026-10-28 19:22:40,192.192 INFO    ] 200
[2026-10-28 19:22:40,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:22:40,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:22:40,250.250 INFO    ] No update needed
[2026-10-28 19:22:40,252.252 INFO    ] Checking for camera pi updates...
[2026-10-28 19:22:40,285.285 INFO    ] 200
[2026-10-28 19:22:40,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:22:40,329.329 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:22:40,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:22:40,430.430 INFO    ] No camera update needed
[2026-10-28 19:22:40,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:22:40,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:22:40,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:22:40,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:22:42,487.487 INFO    ] ================================================
[2026-10-28 19:22:42,503.503 INFO    ] Launching Daemon at Wed Oct 28 19:22:42 IST 2026
[2026-10-28 19:22:42,514.514 INFO    ] ================================================
[2026-10-28 19:22:43,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:22:43
[2026-10-28 19:22:43,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:22:43,959.959 INFO    ] Initializing speech engine...
[2026-10-28 19:22:43,975.975 INFO    ] 2026-10-28 19:22:43
[2026-10-28 19:22:44,263.263 INFO    ] 2026-10-28 19:22:44
[2026-10-28 19:22:44,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:22:44,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:22:44,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:22:44,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:22:44,903.903 INFO    ] time= 28/10/2026 19:22:44
[2026-10-28 19:22:44,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:22:44,929.929 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:22:45,081.081 INFO    ] No existing commands found in stream
[2026-10-28 19:22:50,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:22:50,100.100 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 19:22:53,502.502 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:22:53,505.505 INFO    ] Checking for system updates...
[2026-10-28 19:22:53,540.540 INFO    ] 200
[2026-10-28 19:22:53,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:22:53,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:22:53,597.597 INFO    ] No update needed
[2026-10-28 19:22:53,599.599 INFO    ] Checking for camera pi updates...
[2026-10-28 19:22:53,633.633 INFO    ] 200
[2026-10-28 19:22:53,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:22:53,677.677 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:22:53,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:22:53,800.800 INFO    ] No camera update needed
[2026-10-28 19:22:53,802.802 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:22:53,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:22:53,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:22:53,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:22:55,855.855 INFO    ] ================================================
[2026-10-28 19:22:55,870.870 INFO    ] Launching Daemon at Wed Oct 28 19:22:55 IST 2026
[2026-10-28 19:22:55,881.881 INFO    ] ================================================
[2026-10-28 19:22:56,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:22:56
[2026-10-28 19:22:57,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:22:57,316.316 INFO    ] Initializing speech engine...
[2026-10-28 19:22:57,322.322 INFO    ] 2026-10-28 19:22:57
[2026-10-28 19:22:57,599.599 INFO    ] 2026-10-28 19:22:57
[2026-10-28 19:22:57,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:22:58,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:22:58,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:22:58,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:22:58,372.372 INFO    ] time= 28/10/2026 19:22:58
[2026-10-28 19:22:58,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:22:58,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:22:58,590.590 INFO    ] No existing commands found in stream
[2026-10-28 19:23:03,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:23:03,604.604 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 19:23:04,254.254 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:23:04,257.257 INFO    ] Checking for system updates...
[2026-10-28 19:23:04,295.295 INFO    ] 200
[2026-10-28 19:23:04,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:23:04,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:23:04,354.354 INFO    ] No update needed
[2026-10-28 19:23:04,357.357 INFO    ] Checking for camera pi updates...
[2026-10-28 19:23:04,392.392 INFO    ] 200
[2026-10-28 19:23:04,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:23:04,441.441 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:23:04,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:23:04,514.514 INFO    ] No camera update needed
[2026-10-28 19:23:04,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:23:04,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:23:04,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:23:04,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:23:06,576.576 INFO    ] ================================================
[2026-10-28 19:23:06,591.591 INFO    ] Launching Daemon at Wed Oct 28 19:23:06 IST 2026
[2026-10-28 19:23:06,602.602 INFO    ] ================================================
[2026-10-28 19:23:07,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:23:07
[2026-10-28 19:23:07,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:23:08,012.012 INFO    ] Initializing speech engine...
[2026-10-28 19:23:08,034.034 INFO    ] 2026-10-28 19:23:08
[2026-10-28 19:23:08,293.293 INFO    ] 2026-10-28 19:23:08
[2026-10-28 19:23:08,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:23:08,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:23:08,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:23:08,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:23:09,010.010 INFO    ] time= 28/10/2026 19:23:08
[2026-10-28 19:23:09,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:23:09,090.090 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:23:09,277.277 INFO    ] No existing commands found in stream
[2026-10-28 19:23:14,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:23:14,290.290 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-10-28 19:23:15,401.401 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:23:15,403.403 INFO    ] Checking for system updates...
[2026-10-28 19:23:15,439.439 INFO    ] 200
[2026-10-28 19:23:15,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:23:15,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:23:15,495.495 INFO    ] No update needed
[2026-10-28 19:23:15,498.498 INFO    ] Checking for camera pi updates...
[2026-10-28 19:23:15,532.532 INFO    ] 200
[2026-10-28 19:23:15,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:23:15,574.574 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:23:15,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:23:15,667.667 INFO    ] No camera update needed
[2026-10-28 19:23:15,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:23:15,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:23:15,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:23:15,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:23:17,724.724 INFO    ] ================================================
[2026-10-28 19:23:17,740.740 INFO    ] Launching Daemon at Wed Oct 28 19:23:17 IST 2026
[2026-10-28 19:23:17,751.751 INFO    ] ================================================
[2026-10-28 19:23:18,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:23:18
[2026-10-28 19:23:18,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:23:19,168.168 INFO    ] Initializing speech engine...
[2026-10-28 19:23:19,177.177 INFO    ] 2026-10-28 19:23:19
[2026-10-28 19:23:19,422.422 INFO    ] 2026-10-28 19:23:19
[2026-10-28 19:23:19,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:23:19,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:23:19,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:23:19,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:23:20,014.014 INFO    ] time= 28/10/2026 19:23:19
[2026-10-28 19:23:20,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:23:20,036.036 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:23:20,170.170 INFO    ] No existing commands found in stream
[2026-10-28 19:23:25,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:23:25,198.198 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-28 19:23:26,917.917 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:23:26,919.919 INFO    ] Checking for system updates...
[2026-10-28 19:23:26,955.955 INFO    ] 200
[2026-10-28 19:23:26,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:23:27,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:23:27,023.023 INFO    ] No update needed
[2026-10-28 19:23:27,026.026 INFO    ] Checking for camera pi updates...
[2026-10-28 19:23:27,063.063 INFO    ] 200
[2026-10-28 19:23:27,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:23:27,105.105 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:23:27,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:23:27,196.196 INFO    ] No camera update needed
[2026-10-28 19:23:27,198.198 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:23:27,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:23:27,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:23:27,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:23:29,253.253 INFO    ] ================================================
[2026-10-28 19:23:29,268.268 INFO    ] Launching Daemon at Wed Oct 28 19:23:29 IST 2026
[2026-10-28 19:23:29,279.279 INFO    ] ================================================
[2026-10-28 19:23:29,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:23:29
[2026-10-28 19:23:30,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:23:30,684.684 INFO    ] Initializing speech engine...
[2026-10-28 19:23:30,692.692 INFO    ] 2026-10-28 19:23:30
[2026-10-28 19:23:30,987.987 INFO    ] 2026-10-28 19:23:30
[2026-10-28 19:23:31,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:23:31,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:23:31,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:23:31,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:23:31,653.653 INFO    ] time= 28/10/2026 19:23:31
[2026-10-28 19:23:31,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:23:31,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:23:31,835.835 INFO    ] No existing commands found in stream
[2026-10-28 19:23:36,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:23:36,856.856 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-28 19:23:40,800.800 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:23:40,803.803 INFO    ] Checking for system updates...
[2026-10-28 19:23:40,839.839 INFO    ] 200
[2026-10-28 19:23:40,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:23:40,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:23:40,897.897 INFO    ] No update needed
[2026-10-28 19:23:40,899.899 INFO    ] Checking for camera pi updates...
[2026-10-28 19:23:40,932.932 INFO    ] 200
[2026-10-28 19:23:40,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:23:40,976.976 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:23:41,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:23:41,079.079 INFO    ] No camera update needed
[2026-10-28 19:23:41,081.081 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:23:41,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:23:41,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:23:41,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:23:43,134.134 INFO    ] ================================================
[2026-10-28 19:23:43,149.149 INFO    ] Launching Daemon at Wed Oct 28 19:23:43 IST 2026
[2026-10-28 19:23:43,161.161 INFO    ] ================================================
[2026-10-28 19:23:43,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:23:43
[2026-10-28 19:23:44,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:23:44,622.622 INFO    ] Initializing speech engine...
[2026-10-28 19:23:44,630.630 INFO    ] 2026-10-28 19:23:44
[2026-10-28 19:23:44,886.886 INFO    ] 2026-10-28 19:23:44
[2026-10-28 19:23:44,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:23:45,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:23:45,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:23:45,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:23:45,543.543 INFO    ] time= 28/10/2026 19:23:45
[2026-10-28 19:23:45,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:23:45,638.638 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:23:45,822.822 INFO    ] No existing commands found in stream
[2026-10-28 19:23:50,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:23:50,843.843 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-28 19:23:55,454.454 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:23:55,456.456 INFO    ] Checking for system updates...
[2026-10-28 19:23:55,496.496 INFO    ] 200
[2026-10-28 19:23:55,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:23:55,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:23:55,555.555 INFO    ] No update needed
[2026-10-28 19:23:55,557.557 INFO    ] Checking for camera pi updates...
[2026-10-28 19:23:55,591.591 INFO    ] 200
[2026-10-28 19:23:55,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:23:55,634.634 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:23:55,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:23:55,722.722 INFO    ] No camera update needed
[2026-10-28 19:23:55,725.725 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:23:55,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:23:55,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:23:55,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:23:57,777.777 INFO    ] ================================================
[2026-10-28 19:23:57,793.793 INFO    ] Launching Daemon at Wed Oct 28 19:23:57 IST 2026
[2026-10-28 19:23:57,804.804 INFO    ] ================================================
[2026-10-28 19:23:58,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:23:58
[2026-10-28 19:23:59,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:23:59,351.351 INFO    ] Initializing speech engine...
[2026-10-28 19:23:59,357.357 INFO    ] 2026-10-28 19:23:59
[2026-10-28 19:23:59,619.619 INFO    ] 2026-10-28 19:23:59
[2026-10-28 19:23:59,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:23:59,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:23:59,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:24:00,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:24:00,212.212 INFO    ] time= 28/10/2026 19:24:00
[2026-10-28 19:24:00,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:24:00,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:24:00,413.413 INFO    ] No existing commands found in stream
[2026-10-28 19:24:05,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:24:05,427.427 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-28 19:24:08,418.418 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:24:08,420.420 INFO    ] Checking for system updates...
[2026-10-28 19:24:08,460.460 INFO    ] 200
[2026-10-28 19:24:08,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:24:08,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:24:08,523.523 INFO    ] No update needed
[2026-10-28 19:24:08,525.525 INFO    ] Checking for camera pi updates...
[2026-10-28 19:24:08,559.559 INFO    ] 200
[2026-10-28 19:24:08,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:24:08,606.606 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:24:08,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:24:08,684.684 INFO    ] No camera update needed
[2026-10-28 19:24:08,686.686 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:24:08,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:24:08,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:24:08,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:24:10,739.739 INFO    ] ================================================
[2026-10-28 19:24:10,755.755 INFO    ] Launching Daemon at Wed Oct 28 19:24:10 IST 2026
[2026-10-28 19:24:10,766.766 INFO    ] ================================================
[2026-10-28 19:24:11,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:24:11
[2026-10-28 19:24:12,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:24:12,366.366 INFO    ] Initializing speech engine...
[2026-10-28 19:24:12,375.375 INFO    ] 2026-10-28 19:24:12
[2026-10-28 19:24:12,642.642 INFO    ] 2026-10-28 19:24:12
[2026-10-28 19:24:12,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:24:13,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:24:13,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:24:13,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:24:13,392.392 INFO    ] time= 28/10/2026 19:24:13
[2026-10-28 19:24:13,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:24:13,467.467 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:24:13,660.660 INFO    ] No existing commands found in stream
[2026-10-28 19:24:18,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:24:18,682.682 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-28 19:24:19,892.892 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:24:19,895.895 INFO    ] Checking for system updates...
[2026-10-28 19:24:19,931.931 INFO    ] 200
[2026-10-28 19:24:19,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:24:19,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:24:19,991.991 INFO    ] No update needed
[2026-10-28 19:24:19,994.994 INFO    ] Checking for camera pi updates...
[2026-10-28 19:24:20,038.038 INFO    ] 200
[2026-10-28 19:24:20,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:24:20,082.082 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:24:20,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:24:20,271.271 INFO    ] No camera update needed
[2026-10-28 19:24:20,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:24:20,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:24:20,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:24:20,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:24:22,330.330 INFO    ] ================================================
[2026-10-28 19:24:22,346.346 INFO    ] Launching Daemon at Wed Oct 28 19:24:22 IST 2026
[2026-10-28 19:24:22,357.357 INFO    ] ================================================
[2026-10-28 19:24:22,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:24:22
[2026-10-28 19:24:23,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:24:23,803.803 INFO    ] Initializing speech engine...
[2026-10-28 19:24:23,816.816 INFO    ] 2026-10-28 19:24:23
[2026-10-28 19:24:24,067.067 INFO    ] 2026-10-28 19:24:24
[2026-10-28 19:24:24,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:24:24,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:24:24,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:24:24,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:24:24,648.648 INFO    ] time= 28/10/2026 19:24:24
[2026-10-28 19:24:24,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:24:24,684.684 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:24:24,855.855 INFO    ] No existing commands found in stream
[2026-10-28 19:24:29,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:24:29,883.883 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 19:24:32,054.054 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:24:32,056.056 INFO    ] Checking for system updates...
[2026-10-28 19:24:32,098.098 INFO    ] 200
[2026-10-28 19:24:32,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:24:32,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:24:32,160.160 INFO    ] No update needed
[2026-10-28 19:24:32,163.163 INFO    ] Checking for camera pi updates...
[2026-10-28 19:24:32,199.199 INFO    ] 200
[2026-10-28 19:24:32,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:24:32,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:24:32,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:24:32,332.332 INFO    ] No camera update needed
[2026-10-28 19:24:32,335.335 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:24:32,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:24:32,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:24:32,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:24:34,393.393 INFO    ] ================================================
[2026-10-28 19:24:34,408.408 INFO    ] Launching Daemon at Wed Oct 28 19:24:34 IST 2026
[2026-10-28 19:24:34,420.420 INFO    ] ================================================
[2026-10-28 19:24:35,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:24:35
[2026-10-28 19:24:35,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:24:36,013.013 INFO    ] Initializing speech engine...
[2026-10-28 19:24:36,026.026 INFO    ] 2026-10-28 19:24:36
[2026-10-28 19:24:36,294.294 INFO    ] 2026-10-28 19:24:36
[2026-10-28 19:24:36,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:24:36,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:24:36,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:24:36,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:24:36,864.864 INFO    ] time= 28/10/2026 19:24:36
[2026-10-28 19:24:36,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:24:36,902.902 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:24:37,056.056 INFO    ] No existing commands found in stream
[2026-10-28 19:24:42,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:24:42,086.086 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-28 19:24:43,003.003 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:24:43,006.006 INFO    ] Checking for system updates...
[2026-10-28 19:24:43,043.043 INFO    ] 200
[2026-10-28 19:24:43,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:24:43,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:24:43,108.108 INFO    ] No update needed
[2026-10-28 19:24:43,111.111 INFO    ] Checking for camera pi updates...
[2026-10-28 19:24:43,148.148 INFO    ] 200
[2026-10-28 19:24:43,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:24:43,192.192 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:24:43,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:24:43,282.282 INFO    ] No camera update needed
[2026-10-28 19:24:43,284.284 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:24:43,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:24:43,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:24:43,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:24:45,341.341 INFO    ] ================================================
[2026-10-28 19:24:45,356.356 INFO    ] Launching Daemon at Wed Oct 28 19:24:45 IST 2026
[2026-10-28 19:24:45,366.366 INFO    ] ================================================
[2026-10-28 19:24:46,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:24:46
[2026-10-28 19:24:46,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:24:46,961.961 INFO    ] Initializing speech engine...
[2026-10-28 19:24:46,969.969 INFO    ] 2026-10-28 19:24:46
[2026-10-28 19:24:47,260.260 INFO    ] 2026-10-28 19:24:47
[2026-10-28 19:24:47,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:24:47,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:24:47,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:24:48,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:24:48,044.044 INFO    ] time= 28/10/2026 19:24:48
[2026-10-28 19:24:48,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:24:48,164.164 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:24:48,351.351 INFO    ] No existing commands found in stream
[2026-10-28 19:24:53,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:24:53,376.376 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 19:24:54,252.252 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:24:54,255.255 INFO    ] Checking for system updates...
[2026-10-28 19:24:54,292.292 INFO    ] 200
[2026-10-28 19:24:54,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:24:54,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:24:54,352.352 INFO    ] No update needed
[2026-10-28 19:24:54,354.354 INFO    ] Checking for camera pi updates...
[2026-10-28 19:24:54,390.390 INFO    ] 200
[2026-10-28 19:24:54,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:24:54,435.435 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:24:54,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:24:54,509.509 INFO    ] No camera update needed
[2026-10-28 19:24:54,512.512 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:24:54,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:24:54,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:24:54,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:24:56,568.568 INFO    ] ================================================
[2026-10-28 19:24:56,583.583 INFO    ] Launching Daemon at Wed Oct 28 19:24:56 IST 2026
[2026-10-28 19:24:56,593.593 INFO    ] ================================================
[2026-10-28 19:24:57,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:24:57
[2026-10-28 19:24:57,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:24:57,999.999 INFO    ] Initializing speech engine...
[2026-10-28 19:24:58,024.024 INFO    ] 2026-10-28 19:24:58
[2026-10-28 19:24:58,292.292 INFO    ] 2026-10-28 19:24:58
[2026-10-28 19:24:58,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:24:58,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:24:58,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:24:58,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:24:58,818.818 INFO    ] time= 28/10/2026 19:24:58
[2026-10-28 19:24:58,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:24:58,921.921 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:24:59,062.062 INFO    ] No existing commands found in stream
[2026-10-28 19:25:04,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:25:04,090.090 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-28 19:25:07,454.454 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:25:07,457.457 INFO    ] Checking for system updates...
[2026-10-28 19:25:07,492.492 INFO    ] 200
[2026-10-28 19:25:07,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:25:07,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:25:07,556.556 INFO    ] No update needed
[2026-10-28 19:25:07,558.558 INFO    ] Checking for camera pi updates...
[2026-10-28 19:25:07,591.591 INFO    ] 200
[2026-10-28 19:25:07,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:25:07,638.638 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:25:07,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:25:07,726.726 INFO    ] No camera update needed
[2026-10-28 19:25:07,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:25:07,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:25:07,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:25:07,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:25:09,781.781 INFO    ] ================================================
[2026-10-28 19:25:09,796.796 INFO    ] Launching Daemon at Wed Oct 28 19:25:09 IST 2026
[2026-10-28 19:25:09,807.807 INFO    ] ================================================
[2026-10-28 19:25:10,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:25:10
[2026-10-28 19:25:11,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:25:11,430.430 INFO    ] Initializing speech engine...
[2026-10-28 19:25:11,444.444 INFO    ] 2026-10-28 19:25:11
[2026-10-28 19:25:11,711.711 INFO    ] 2026-10-28 19:25:11
[2026-10-28 19:25:11,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:25:12,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:25:12,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:25:12,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:25:12,514.514 INFO    ] time= 28/10/2026 19:25:12
[2026-10-28 19:25:12,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:25:12,619.619 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:25:12,803.803 INFO    ] No existing commands found in stream
[2026-10-28 19:25:17,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:25:17,837.837 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-28 19:25:22,204.204 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:25:22,206.206 INFO    ] Checking for system updates...
[2026-10-28 19:25:22,241.241 INFO    ] 200
[2026-10-28 19:25:22,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:25:22,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:25:22,305.305 INFO    ] No update needed
[2026-10-28 19:25:22,307.307 INFO    ] Checking for camera pi updates...
[2026-10-28 19:25:22,341.341 INFO    ] 200
[2026-10-28 19:25:22,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:25:22,384.384 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:25:22,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:25:22,465.465 INFO    ] No camera update needed
[2026-10-28 19:25:22,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:25:22,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:25:22,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:25:22,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:25:24,524.524 INFO    ] ================================================
[2026-10-28 19:25:24,539.539 INFO    ] Launching Daemon at Wed Oct 28 19:25:24 IST 2026
[2026-10-28 19:25:24,550.550 INFO    ] ================================================
[2026-10-28 19:25:25,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:25:25
[2026-10-28 19:25:25,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:25:25,983.983 INFO    ] Initializing speech engine...
[2026-10-28 19:25:25,989.989 INFO    ] 2026-10-28 19:25:25
[2026-10-28 19:25:26,251.251 INFO    ] 2026-10-28 19:25:26
[2026-10-28 19:25:26,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:25:26,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:25:26,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:25:26,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:25:26,795.795 INFO    ] time= 28/10/2026 19:25:26
[2026-10-28 19:25:26,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:25:26,819.819 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:25:26,971.971 INFO    ] No existing commands found in stream
[2026-10-28 19:25:32,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:25:32,005.005 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-28 19:25:35,999.999 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:25:36,002.002 INFO    ] Checking for system updates...
[2026-10-28 19:25:36,038.038 INFO    ] 200
[2026-10-28 19:25:36,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:25:36,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:25:36,097.097 INFO    ] No update needed
[2026-10-28 19:25:36,099.099 INFO    ] Checking for camera pi updates...
[2026-10-28 19:25:36,145.145 INFO    ] 200
[2026-10-28 19:25:36,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:25:36,193.193 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:25:36,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:25:36,245.245 INFO    ] No camera update needed
[2026-10-28 19:25:36,248.248 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:25:36,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:25:36,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:25:36,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:25:38,300.300 INFO    ] ================================================
[2026-10-28 19:25:38,315.315 INFO    ] Launching Daemon at Wed Oct 28 19:25:38 IST 2026
[2026-10-28 19:25:38,326.326 INFO    ] ================================================
[2026-10-28 19:25:38,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:25:38
[2026-10-28 19:25:39,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:25:39,727.727 INFO    ] Initializing speech engine...
[2026-10-28 19:25:39,742.742 INFO    ] 2026-10-28 19:25:39
[2026-10-28 19:25:40,008.008 INFO    ] 2026-10-28 19:25:39
[2026-10-28 19:25:40,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:25:40,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:25:40,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:25:40,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:25:40,591.591 INFO    ] time= 28/10/2026 19:25:40
[2026-10-28 19:25:40,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:25:40,624.624 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:25:40,793.793 INFO    ] No existing commands found in stream
[2026-10-28 19:25:45,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:25:45,821.821 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-10-28 19:25:49,846.846 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:25:49,849.849 INFO    ] Checking for system updates...
[2026-10-28 19:25:49,884.884 INFO    ] 200
[2026-10-28 19:25:49,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:25:49,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:25:49,941.941 INFO    ] No update needed
[2026-10-28 19:25:49,944.944 INFO    ] Checking for camera pi updates...
[2026-10-28 19:25:49,982.982 INFO    ] 200
[2026-10-28 19:25:49,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:25:50,025.025 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:25:50,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:25:50,112.112 INFO    ] No camera update needed
[2026-10-28 19:25:50,114.114 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:25:50,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:25:50,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:25:50,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:25:52,168.168 INFO    ] ================================================
[2026-10-28 19:25:52,184.184 INFO    ] Launching Daemon at Wed Oct 28 19:25:52 IST 2026
[2026-10-28 19:25:52,195.195 INFO    ] ================================================
[2026-10-28 19:25:52,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:25:52
[2026-10-28 19:25:53,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:25:53,841.841 INFO    ] Initializing speech engine...
[2026-10-28 19:25:53,853.853 INFO    ] 2026-10-28 19:25:53
[2026-10-28 19:25:54,146.146 INFO    ] 2026-10-28 19:25:54
[2026-10-28 19:25:54,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:25:54,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:25:54,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:25:54,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:25:54,934.934 INFO    ] time= 28/10/2026 19:25:54
[2026-10-28 19:25:54,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:25:55,046.046 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:25:55,262.262 INFO    ] No existing commands found in stream
[2026-10-28 19:26:00,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:26:00,283.283 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-28 19:26:04,817.817 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:26:04,819.819 INFO    ] Checking for system updates...
[2026-10-28 19:26:04,859.859 INFO    ] 200
[2026-10-28 19:26:04,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:26:04,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:26:04,917.917 INFO    ] No update needed
[2026-10-28 19:26:04,920.920 INFO    ] Checking for camera pi updates...
[2026-10-28 19:26:04,956.956 INFO    ] 200
[2026-10-28 19:26:04,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:26:05,009.009 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:26:05,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:26:05,088.088 INFO    ] No camera update needed
[2026-10-28 19:26:05,091.091 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:26:05,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:26:05,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:26:05,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:26:07,144.144 INFO    ] ================================================
[2026-10-28 19:26:07,159.159 INFO    ] Launching Daemon at Wed Oct 28 19:26:07 IST 2026
[2026-10-28 19:26:07,170.170 INFO    ] ================================================
[2026-10-28 19:26:07,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:26:07
[2026-10-28 19:26:08,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:26:08,591.591 INFO    ] Initializing speech engine...
[2026-10-28 19:26:08,601.601 INFO    ] 2026-10-28 19:26:08
[2026-10-28 19:26:08,852.852 INFO    ] 2026-10-28 19:26:08
[2026-10-28 19:26:08,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:26:09,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:26:09,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:26:09,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:26:09,426.426 INFO    ] time= 28/10/2026 19:26:09
[2026-10-28 19:26:09,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:26:09,474.474 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:26:09,644.644 INFO    ] No existing commands found in stream
[2026-10-28 19:26:14,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:26:14,672.672 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 19:26:18,211.211 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:26:18,214.214 INFO    ] Checking for system updates...
[2026-10-28 19:26:18,255.255 INFO    ] 200
[2026-10-28 19:26:18,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:26:18,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:26:18,319.319 INFO    ] No update needed
[2026-10-28 19:26:18,321.321 INFO    ] Checking for camera pi updates...
[2026-10-28 19:26:18,358.358 INFO    ] 200
[2026-10-28 19:26:18,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:26:18,400.400 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:26:18,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:26:18,499.499 INFO    ] No camera update needed
[2026-10-28 19:26:18,501.501 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:26:18,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:26:18,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:26:18,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:26:20,555.555 INFO    ] ================================================
[2026-10-28 19:26:20,570.570 INFO    ] Launching Daemon at Wed Oct 28 19:26:20 IST 2026
[2026-10-28 19:26:20,581.581 INFO    ] ================================================
[2026-10-28 19:26:21,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:26:21
[2026-10-28 19:26:21,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:26:22,225.225 INFO    ] Initializing speech engine...
[2026-10-28 19:26:22,232.232 INFO    ] 2026-10-28 19:26:22
[2026-10-28 19:26:22,553.553 INFO    ] 2026-10-28 19:26:22
[2026-10-28 19:26:22,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:26:22,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:26:22,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:26:23,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:26:23,253.253 INFO    ] time= 28/10/2026 19:26:23
[2026-10-28 19:26:23,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:26:23,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:26:23,498.498 INFO    ] No existing commands found in stream
[2026-10-28 19:26:28,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:26:28,520.520 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-28 19:26:31,356.356 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:26:31,360.360 INFO    ] Checking for system updates...
[2026-10-28 19:26:31,397.397 INFO    ] 200
[2026-10-28 19:26:31,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:26:31,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:26:31,465.465 INFO    ] No update needed
[2026-10-28 19:26:31,468.468 INFO    ] Checking for camera pi updates...
[2026-10-28 19:26:31,506.506 INFO    ] 200
[2026-10-28 19:26:31,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:26:31,551.551 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:26:31,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:26:31,738.738 INFO    ] No camera update needed
[2026-10-28 19:26:31,740.740 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:26:31,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:26:31,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:26:31,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:26:33,797.797 INFO    ] ================================================
[2026-10-28 19:26:33,812.812 INFO    ] Launching Daemon at Wed Oct 28 19:26:33 IST 2026
[2026-10-28 19:26:33,823.823 INFO    ] ================================================
[2026-10-28 19:26:34,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:26:34
[2026-10-28 19:26:35,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:26:35,465.465 INFO    ] Initializing speech engine...
[2026-10-28 19:26:35,476.476 INFO    ] 2026-10-28 19:26:35
[2026-10-28 19:26:35,785.785 INFO    ] 2026-10-28 19:26:35
[2026-10-28 19:26:35,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:26:36,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:26:36,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:26:36,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:26:36,514.514 INFO    ] time= 28/10/2026 19:26:36
[2026-10-28 19:26:36,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:26:36,606.606 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:26:36,823.823 INFO    ] No existing commands found in stream
[2026-10-28 19:26:41,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:26:41,858.858 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-28 19:26:43,359.359 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:26:43,362.362 INFO    ] Checking for system updates...
[2026-10-28 19:26:43,403.403 INFO    ] 200
[2026-10-28 19:26:43,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:26:43,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:26:43,470.470 INFO    ] No update needed
[2026-10-28 19:26:43,473.473 INFO    ] Checking for camera pi updates...
[2026-10-28 19:26:43,511.511 INFO    ] 200
[2026-10-28 19:26:43,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:26:43,556.556 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:26:43,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:26:43,645.645 INFO    ] No camera update needed
[2026-10-28 19:26:43,648.648 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:26:43,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:26:43,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:26:43,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:26:45,705.705 INFO    ] ================================================
[2026-10-28 19:26:45,721.721 INFO    ] Launching Daemon at Wed Oct 28 19:26:45 IST 2026
[2026-10-28 19:26:45,732.732 INFO    ] ================================================
[2026-10-28 19:26:46,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:26:46
[2026-10-28 19:26:46,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:26:47,173.173 INFO    ] Initializing speech engine...
[2026-10-28 19:26:47,188.188 INFO    ] 2026-10-28 19:26:47
[2026-10-28 19:26:47,479.479 INFO    ] 2026-10-28 19:26:47
[2026-10-28 19:26:47,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:26:47,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:26:47,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:26:48,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:26:48,123.123 INFO    ] time= 28/10/2026 19:26:48
[2026-10-28 19:26:48,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:26:48,147.147 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:26:48,305.305 INFO    ] No existing commands found in stream
[2026-10-28 19:26:53,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:26:53,320.320 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-28 19:26:57,725.725 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:26:57,728.728 INFO    ] Checking for system updates...
[2026-10-28 19:26:57,768.768 INFO    ] 200
[2026-10-28 19:26:57,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:26:57,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:26:57,833.833 INFO    ] No update needed
[2026-10-28 19:26:57,836.836 INFO    ] Checking for camera pi updates...
[2026-10-28 19:26:57,874.874 INFO    ] 200
[2026-10-28 19:26:57,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:26:57,923.923 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:26:58,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:26:58,010.010 INFO    ] No camera update needed
[2026-10-28 19:26:58,013.013 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:26:58,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:26:58,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:26:58,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:27:00,067.067 INFO    ] ================================================
[2026-10-28 19:27:00,082.082 INFO    ] Launching Daemon at Wed Oct 28 19:27:00 IST 2026
[2026-10-28 19:27:00,094.094 INFO    ] ================================================
[2026-10-28 19:27:00,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:27:00
[2026-10-28 19:27:01,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:27:01,762.762 INFO    ] Initializing speech engine...
[2026-10-28 19:27:01,774.774 INFO    ] 2026-10-28 19:27:01
[2026-10-28 19:27:02,060.060 INFO    ] 2026-10-28 19:27:02
[2026-10-28 19:27:02,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:27:02,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:27:02,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:27:02,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:27:02,597.597 INFO    ] time= 28/10/2026 19:27:02
[2026-10-28 19:27:02,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:27:02,603.603 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:27:02,727.727 INFO    ] No existing commands found in stream
[2026-10-28 19:27:07,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:27:07,740.740 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-28 19:27:09,411.411 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:27:09,414.414 INFO    ] Checking for system updates...
[2026-10-28 19:27:09,451.451 INFO    ] 200
[2026-10-28 19:27:09,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:27:09,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:27:09,510.510 INFO    ] No update needed
[2026-10-28 19:27:09,512.512 INFO    ] Checking for camera pi updates...
[2026-10-28 19:27:09,555.555 INFO    ] 200
[2026-10-28 19:27:09,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:27:09,598.598 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:27:09,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:27:09,686.686 INFO    ] No camera update needed
[2026-10-28 19:27:09,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:27:09,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:27:09,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:27:09,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:27:11,741.741 INFO    ] ================================================
[2026-10-28 19:27:11,757.757 INFO    ] Launching Daemon at Wed Oct 28 19:27:11 IST 2026
[2026-10-28 19:27:11,768.768 INFO    ] ================================================
[2026-10-28 19:27:12,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:27:12
[2026-10-28 19:27:12,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:27:13,212.212 INFO    ] Initializing speech engine...
[2026-10-28 19:27:13,235.235 INFO    ] 2026-10-28 19:27:13
[2026-10-28 19:27:13,490.490 INFO    ] 2026-10-28 19:27:13
[2026-10-28 19:27:13,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:27:13,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:27:13,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:27:14,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:27:14,203.203 INFO    ] time= 28/10/2026 19:27:14
[2026-10-28 19:27:14,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:27:14,301.301 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:27:14,480.480 INFO    ] No existing commands found in stream
[2026-10-28 19:27:19,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:27:19,494.494 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-28 19:27:21,157.157 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:27:21,160.160 INFO    ] Checking for system updates...
[2026-10-28 19:27:21,198.198 INFO    ] 200
[2026-10-28 19:27:21,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:27:21,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:27:21,264.264 INFO    ] No update needed
[2026-10-28 19:27:21,267.267 INFO    ] Checking for camera pi updates...
[2026-10-28 19:27:21,306.306 INFO    ] 200
[2026-10-28 19:27:21,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:27:21,355.355 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:27:21,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:27:21,444.444 INFO    ] No camera update needed
[2026-10-28 19:27:21,446.446 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:27:21,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:27:21,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:27:21,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:27:23,501.501 INFO    ] ================================================
[2026-10-28 19:27:23,517.517 INFO    ] Launching Daemon at Wed Oct 28 19:27:23 IST 2026
[2026-10-28 19:27:23,528.528 INFO    ] ================================================
[2026-10-28 19:27:24,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:27:24
[2026-10-28 19:27:24,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:27:25,003.003 INFO    ] Initializing speech engine...
[2026-10-28 19:27:25,012.012 INFO    ] 2026-10-28 19:27:25
[2026-10-28 19:27:25,276.276 INFO    ] 2026-10-28 19:27:25
[2026-10-28 19:27:25,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:27:25,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:27:25,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:27:25,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:27:26,009.009 INFO    ] time= 28/10/2026 19:27:25
[2026-10-28 19:27:26,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:27:26,105.105 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:27:26,269.269 INFO    ] No existing commands found in stream
[2026-10-28 19:27:31,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:27:31,290.290 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 19:27:32,437.437 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:27:32,440.440 INFO    ] Checking for system updates...
[2026-10-28 19:27:32,482.482 INFO    ] 200
[2026-10-28 19:27:32,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:27:32,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:27:32,544.544 INFO    ] No update needed
[2026-10-28 19:27:32,547.547 INFO    ] Checking for camera pi updates...
[2026-10-28 19:27:32,582.582 INFO    ] 200
[2026-10-28 19:27:32,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:27:32,629.629 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:27:32,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:27:32,741.741 INFO    ] No camera update needed
[2026-10-28 19:27:32,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:27:32,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:27:32,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:27:32,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:27:34,804.804 INFO    ] ================================================
[2026-10-28 19:27:34,819.819 INFO    ] Launching Daemon at Wed Oct 28 19:27:34 IST 2026
[2026-10-28 19:27:34,830.830 INFO    ] ================================================
[2026-10-28 19:27:35,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:27:35
[2026-10-28 19:27:36,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:27:36,286.286 INFO    ] Initializing speech engine...
[2026-10-28 19:27:36,295.295 INFO    ] 2026-10-28 19:27:36
[2026-10-28 19:27:36,545.545 INFO    ] 2026-10-28 19:27:36
[2026-10-28 19:27:36,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:27:36,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:27:36,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:27:37,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:27:37,117.117 INFO    ] time= 28/10/2026 19:27:37
[2026-10-28 19:27:37,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:27:37,154.154 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:27:37,236.236 INFO    ] No existing commands found in stream
[2026-10-28 19:27:42,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:27:42,248.248 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-28 19:27:44,441.441 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:27:44,444.444 INFO    ] Checking for system updates...
[2026-10-28 19:27:44,482.482 INFO    ] 200
[2026-10-28 19:27:44,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:27:44,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:27:44,543.543 INFO    ] No update needed
[2026-10-28 19:27:44,546.546 INFO    ] Checking for camera pi updates...
[2026-10-28 19:27:44,581.581 INFO    ] 200
[2026-10-28 19:27:44,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:27:44,629.629 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:27:44,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:27:44,731.731 INFO    ] No camera update needed
[2026-10-28 19:27:44,733.733 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:27:44,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:27:44,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:27:44,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:27:46,788.788 INFO    ] ================================================
[2026-10-28 19:27:46,804.804 INFO    ] Launching Daemon at Wed Oct 28 19:27:46 IST 2026
[2026-10-28 19:27:46,815.815 INFO    ] ================================================
[2026-10-28 19:27:47,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:27:47
[2026-10-28 19:27:48,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:27:48,297.297 INFO    ] Initializing speech engine...
[2026-10-28 19:27:48,304.304 INFO    ] 2026-10-28 19:27:48
[2026-10-28 19:27:48,568.568 INFO    ] 2026-10-28 19:27:48
[2026-10-28 19:27:48,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:27:48,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:27:48,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:27:49,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:27:49,151.151 INFO    ] time= 28/10/2026 19:27:49
[2026-10-28 19:27:49,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:27:49,167.167 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:27:49,239.239 INFO    ] No existing commands found in stream
[2026-10-28 19:27:54,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:27:54,252.252 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 19:27:57,678.678 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:27:57,681.681 INFO    ] Checking for system updates...
[2026-10-28 19:27:57,717.717 INFO    ] 200
[2026-10-28 19:27:57,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:27:57,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:27:57,777.777 INFO    ] No update needed
[2026-10-28 19:27:57,780.780 INFO    ] Checking for camera pi updates...
[2026-10-28 19:27:57,816.816 INFO    ] 200
[2026-10-28 19:27:57,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:27:57,865.865 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:27:57,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:27:57,953.953 INFO    ] No camera update needed
[2026-10-28 19:27:57,956.956 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:27:57,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:27:57,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:27:57,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:28:00,012.012 INFO    ] ================================================
[2026-10-28 19:28:00,028.028 INFO    ] Launching Daemon at Wed Oct 28 19:28:00 IST 2026
[2026-10-28 19:28:00,040.040 INFO    ] ================================================
[2026-10-28 19:28:00,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:28:00
[2026-10-28 19:28:01,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:28:01,703.703 INFO    ] Initializing speech engine...
[2026-10-28 19:28:01,706.706 INFO    ] 2026-10-28 19:28:01
[2026-10-28 19:28:01,963.963 INFO    ] 2026-10-28 19:28:01
[2026-10-28 19:28:02,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:28:02,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:28:02,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:28:02,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:28:02,634.634 INFO    ] time= 28/10/2026 19:28:02
[2026-10-28 19:28:02,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:28:02,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:28:02,853.853 INFO    ] No existing commands found in stream
[2026-10-28 19:28:07,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:28:07,897.897 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-28 19:28:08,638.638 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:28:08,641.641 INFO    ] Checking for system updates...
[2026-10-28 19:28:08,677.677 INFO    ] 200
[2026-10-28 19:28:08,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:28:08,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:28:08,734.734 INFO    ] No update needed
[2026-10-28 19:28:08,737.737 INFO    ] Checking for camera pi updates...
[2026-10-28 19:28:08,771.771 INFO    ] 200
[2026-10-28 19:28:08,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:28:08,820.820 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:28:08,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:28:08,908.908 INFO    ] No camera update needed
[2026-10-28 19:28:08,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:28:08,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:28:08,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:28:08,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:28:10,964.964 INFO    ] ================================================
[2026-10-28 19:28:10,980.980 INFO    ] Launching Daemon at Wed Oct 28 19:28:10 IST 2026
[2026-10-28 19:28:10,991.991 INFO    ] ================================================
[2026-10-28 19:28:11,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:28:11
[2026-10-28 19:28:12,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:28:12,456.456 INFO    ] Initializing speech engine...
[2026-10-28 19:28:12,463.463 INFO    ] 2026-10-28 19:28:12
[2026-10-28 19:28:12,712.712 INFO    ] 2026-10-28 19:28:12
[2026-10-28 19:28:12,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:28:13,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:28:13,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:28:13,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:28:13,311.311 INFO    ] time= 28/10/2026 19:28:13
[2026-10-28 19:28:13,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:28:13,326.326 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:28:13,451.451 INFO    ] No existing commands found in stream
[2026-10-28 19:28:18,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:28:18,479.479 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-28 19:28:20,357.357 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:28:20,360.360 INFO    ] Checking for system updates...
[2026-10-28 19:28:20,395.395 INFO    ] 200
[2026-10-28 19:28:20,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:28:20,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:28:20,453.453 INFO    ] No update needed
[2026-10-28 19:28:20,455.455 INFO    ] Checking for camera pi updates...
[2026-10-28 19:28:20,489.489 INFO    ] 200
[2026-10-28 19:28:20,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:28:20,535.535 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:28:20,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:28:20,616.616 INFO    ] No camera update needed
[2026-10-28 19:28:20,619.619 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:28:20,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:28:20,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:28:20,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:28:22,674.674 INFO    ] ================================================
[2026-10-28 19:28:22,690.690 INFO    ] Launching Daemon at Wed Oct 28 19:28:22 IST 2026
[2026-10-28 19:28:22,701.701 INFO    ] ================================================
[2026-10-28 19:28:23,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:28:23
[2026-10-28 19:28:23,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:28:24,130.130 INFO    ] Initializing speech engine...
[2026-10-28 19:28:24,140.140 INFO    ] 2026-10-28 19:28:24
[2026-10-28 19:28:24,388.388 INFO    ] 2026-10-28 19:28:24
[2026-10-28 19:28:24,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:28:24,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:28:24,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:28:24,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:28:24,959.959 INFO    ] time= 28/10/2026 19:28:24
[2026-10-28 19:28:24,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:28:25,004.004 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:28:25,180.180 INFO    ] No existing commands found in stream
[2026-10-28 19:28:30,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:28:30,208.208 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 19:28:31,678.678 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:28:31,681.681 INFO    ] Checking for system updates...
[2026-10-28 19:28:31,720.720 INFO    ] 200
[2026-10-28 19:28:31,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:28:31,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:28:31,783.783 INFO    ] No update needed
[2026-10-28 19:28:31,786.786 INFO    ] Checking for camera pi updates...
[2026-10-28 19:28:31,822.822 INFO    ] 200
[2026-10-28 19:28:31,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:28:31,873.873 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:28:31,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:28:31,971.971 INFO    ] No camera update needed
[2026-10-28 19:28:31,973.973 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:28:31,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:28:31,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:28:31,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:28:34,031.031 INFO    ] ================================================
[2026-10-28 19:28:34,047.047 INFO    ] Launching Daemon at Wed Oct 28 19:28:34 IST 2026
[2026-10-28 19:28:34,058.058 INFO    ] ================================================
[2026-10-28 19:28:34,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:28:34
[2026-10-28 19:28:35,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:28:35,503.503 INFO    ] Initializing speech engine...
[2026-10-28 19:28:35,520.520 INFO    ] 2026-10-28 19:28:35
[2026-10-28 19:28:35,811.811 INFO    ] 2026-10-28 19:28:35
[2026-10-28 19:28:35,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:28:36,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:28:36,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:28:36,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:28:36,414.414 INFO    ] time= 28/10/2026 19:28:36
[2026-10-28 19:28:36,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:28:36,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:28:36,579.579 INFO    ] Found 1 existing command(s) in stream
[2026-10-28 19:28:36,620.620 INFO    ] Checking historical command: ID=1793195910961-0
[2026-10-28 19:28:36,659.659 INFO    ] process_and_cleanup_command: msg_id=1793195910961-0
[2026-10-28 19:28:36,707.707 INFO    ] is_command_expired: timestamp=2026-10-28T13:58:28.601Z, expiry=30s
[2026-10-28 19:28:36,910.910 INFO    ] Command removed from stream: 1793195910961-0. returning for processing...
[2026-10-28 19:28:36,958.958 INFO    ] ***** get_valid_command
[2026-10-28 19:28:36,961.961 INFO    ] {'data': '{"request_id":"start-order-1793195908601-zt37c7gyh","orderId":"TM08202202261028192741416","is_vending":false}', 'timestamp': '2026-10-28T13:58:28.601Z', 'command': 'start-order', 'timeout': '10', 'source': 'webapp'}
[2026-10-28 19:28:36,973.973 INFO    ] ***** Parsed command data: {'orderId': 'TM08202202261028192741416', 'is_vending': False, 'request_id': 'start-order-1793195908601-zt37c7gyh'}
[2026-10-28 19:28:36,977.977 INFO    ] Handling start order...
[2026-10-28 19:28:36,980.980 INFO    ] handle_start_order_command
[2026-10-28 19:28:37,062.062 INFO    ] _send_start_order_success: request_id=start-order-1793195908601-zt37c7gyh, order_id=TM08202202261028192741416
[2026-10-28 19:28:37,111.111 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM08202202
[2026-10-28 19:28:37,258.258 INFO    ] [_send_start_order_success] Message added to stream with ID: 1793195917170-0
[2026-10-28 19:28:37,264.264 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-10-28 19:28:37,269.269 INFO    ] Checking for system updates...
[2026-10-28 19:28:37,382.382 INFO    ] 200
[2026-10-28 19:28:37,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:28:37,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:28:37,503.503 INFO    ] No update needed
[2026-10-28 19:28:37,507.507 INFO    ] Checking for camera pi updates...
[2026-10-28 19:28:37,551.551 INFO    ] 200
[2026-10-28 19:28:37,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:28:37,600.600 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:28:37,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:28:37,667.667 INFO    ] No camera update needed
[2026-10-28 19:28:37,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:28:37,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:28:37,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:28:37,708.708 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-10-28 19:28:37,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:28:39,771.771 INFO    ] ================================================
[2026-10-28 19:28:39,786.786 INFO    ] Launching Daemon at Wed Oct 28 19:28:39 IST 2026
[2026-10-28 19:28:39,798.798 INFO    ] ================================================
[2026-10-28 19:28:40,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:28:40
[2026-10-28 19:28:40,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:28:41,253.253 INFO    ] Initializing speech engine...
[2026-10-28 19:28:41,262.262 INFO    ] 2026-10-28 19:28:41
[2026-10-28 19:28:41,524.524 INFO    ] 2026-10-28 19:28:41
[2026-10-28 19:28:41,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:28:41,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:28:41,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:28:42,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:28:42,248.248 INFO    ] time= 28/10/2026 19:28:42
[2026-10-28 19:28:42,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:28:42,339.339 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:28:42,512.512 INFO    ] Found 2 existing command(s) in stream
[2026-10-28 19:28:42,523.523 INFO    ] Checking historical command: ID=1793195917170-0
[2026-10-28 19:28:42,526.526 INFO    ] process_and_cleanup_command: msg_id=1793195917170-0
[2026-10-28 19:28:42,529.529 INFO    ] is_command_expired: timestamp=2026-10-28T13:58:37.068290Z, expiry=30s
[2026-10-28 19:28:42,685.685 INFO    ] Command removed from stream: 1793195917170-0. returning for processing...
[2026-10-28 19:28:42,698.698 INFO    ] ***** get_valid_command
[2026-10-28 19:28:42,738.738 INFO    ] {'status': 'success', 'message': 'start-order success', 'metadata_request_id': 'start-order-1793195908601-zt37c7gyh', 'metadata_order_id': 'TM08202202261028192741416', 'message_type': 'command_response', 'timestamp': '2026-10-28T13:58:37.068290Z', 'imei': 'TM08202202'}
[2026-10-28 19:28:42,741.741 INFO    ] Checking historical command: ID=1793195918581-0
[2026-10-28 19:28:42,749.749 INFO    ] process_and_cleanup_command: msg_id=1793195918581-0
[2026-10-28 19:28:42,795.795 INFO    ] is_command_expired: timestamp=2026-10-28T13:58:36.425Z, expiry=30s
[2026-10-28 19:28:42,937.937 INFO    ] Command removed from stream: 1793195918581-0. returning for processing...
[2026-10-28 19:28:42,944.944 INFO    ] ***** get_valid_command
[2026-10-28 19:28:42,949.949 INFO    ] {'command': 'process-order', 'timestamp': '2026-10-28T13:58:36.425Z', 'timeout': '60', 'data': '{"request_id":"process-order-1793195916425-lsjkk0xbu","orderId":"TM08202202261028192741416","is_vending":false,"accessCode":"12293871"}', 'source': 'webapp'}
[2026-10-28 19:28:42,958.958 INFO    ] ***** Parsed command data: {'orderId': 'TM08202202261028192741416', 'is_vending': False, 'request_id': 'process-order-1793195916425-lsjkk0xbu', 'accessCode': '12293871'}
[2026-10-28 19:28:42,963.963 INFO    ] Handling process order...
[2026-10-28 19:28:42,970.970 INFO    ] Processing process-order command...
[2026-10-28 19:28:42,977.977 INFO    ] 🔍 Lock file Order ID: TM08202202261028192741416, TS: 2026-10-28 19:28:36
[2026-10-28 19:28:42,995.995 INFO    ] ✅ Order lock valid for TM08202202261028192741416
[2026-10-28 19:28:43,000.000 INFO    ] Received access code in process-order, skipping PHP API call
[2026-10-28 19:28:43,006.006 INFO    ] processing access code 12293871 for order TM08202202261028192741416
[2026-10-28 19:28:43,014.014 INFO    ] 🔍 Lock file Order ID: TM08202202261028192741416, TS: 2026-10-28 19:28:36
[2026-10-28 19:28:43,020.020 INFO    ] ✅ Order lock valid for TM08202202261028192741416
[2026-10-28 19:28:43,026.026 INFO    ] 2026-10-28 19:28:43
[2026-10-28 19:28:43,078.078 INFO    ] 200
[2026-10-28 19:28:43,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:28:43,089.089 INFO    ] 12293871
[2026-10-28 19:28:43,095.095 INFO    ] 2026-10-28 19:28:43
[2026-10-28 19:28:43,100.100 INFO    ] session id :736989884
[2026-10-28 19:28:43,104.104 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=12293871&imei=TM08202202&session_id=736989884
[2026-10-28 19:28:44,464.464 INFO    ] 200
[2026-10-28 19:28:44,521.521 INFO    ] {"rstatus": true, "status": true, "msg": "Order Data", "data": {"proposed_sku_json": [{"image_url": "https://images.tinymart.in/product/4500708-7901.webp", "skuid": "4500708", "qty": 2, "sku_total": 20, "offer_desc": "", "tray_id": "16", "name": "Modern Kitchen Masala Peanut 28gm", "door_id": "1", "mrp": "10", "offer_id": "", "unit_price": 10}, {"image_url": "https://images.tinymart.in/product/4500723-3888.png", "skuid": "4500723", "qty": 2, "sku_total": 20, "offer_desc": "", "tray_id": "21", "name": "MaxVita Moong daal 25gm", "door_id": "1", "mrp": "10", "offer_id": "", "unit_price": 10}], "bill_amount": "40", "mobile": "6362505143", "invoice_bill": "40", "order_id": "TM08202202261028192741416", "access_code": "12293871"}}
[2026-10-28 19:28:44,533.533 INFO    ] 40
[2026-10-28 19:28:44,548.548 INFO    ] TM08202202261028192741416
[2026-10-28 19:28:44,556.556 INFO    ] 6362505143
[2026-10-28 19:28:44,572.572 INFO    ] 2026-10-28 19:28:44
[2026-10-28 19:28:44,580.580 INFO    ] Door Opening for user mobile ending with  five one four three 
[2026-10-28 19:28:44,592.592 INFO    ] Door Opening for user mobile ending with  five one four three 
[2026-10-28 19:28:44,595.595 INFO    ] 8de49286572636a88a3c3185ce171022
[2026-10-28 19:28:44,602.602 INFO    ] 2026-10-28 19:28:44
[2026-10-28 19:28:44,605.605 INFO    ] playing audio file
[2026-10-28 19:28:44,621.621 INFO    ] 2026-10-28 19:28:44
[2026-10-28 19:28:44,625.625 INFO    ] 2026-10-28 19:28:44
[2026-10-28 19:28:44,628.628 INFO    ] publish_status: order_id=TM08202202261028192741416
[2026-10-28 19:28:44,631.631 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028192741416
[2026-10-28 19:28:44,770.770 INFO    ] [publish_status] Message added to stream with ID: 1793195924695-0
[2026-10-28 19:28:44,772.772 INFO    ] Published to order:TM08202202261028192741416: {'order_id': 'TM08202202261028192741416', 'timestamp': '2026-10-28T13:58:44.626634Z', 'server_status': 'order-started', 'server_response': '{"data": {"bill_amount": "40", "order_id": "TM08202202261028192741416", "invoice_bill": "40", "proposed_sku_json": [{"offer_id": "", "door_id": "1", "mrp": "10", "offer_desc": "", "tray_id": "16", "skuid": "4500708", "qty": 2, "sku_total": 20, "name": "Modern Kitchen Masala Peanut 28gm", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500708-7901.webp"}, {"offer_id": "", "door_id": "1", "mrp": "10", "offer_desc": "", "tray_id": "21", "skuid": "4500723", "qty": 2, "sku_total": 20, "name": "MaxVita Moong daal 25gm", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500723-3888.png"}], "access_code": "12293871", "mobile": "6362505143"}, "status": true, "msg": "Order Data", "rstatus": true}'} (ID: 1793195924695-0)
[2026-10-28 19:28:45,527.527 INFO    ] {'order_id': 'TM08202202261028192741416', 'server_status': 'order-started', 'server_response': {'data': {'bill_amount': '40', 'order_id': 'TM08202202261028192741416', 'invoice_bill': '40', 'proposed_sku_json': [{'offer_id': '', 'door_id': '1', 'mrp': '10', 'offer_desc': '', 'tray_id': '16', 'skuid': '4500708', 'qty': 2, 'sku_total': 20, 'name': 'Modern Kitchen Masala Peanut 28gm', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp'}, {'offer_id': '', 'door_id': '1', 'mrp': '10', 'offer_desc': '', 'tray_id': '21', 'skuid': '4500723', 'qty': 2, 'sku_total': 20, 'name': 'MaxVita Moong daal 25gm', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500723-3888.png'}], 'access_code': '12293871', 'mobile': '6362505143'}, 'status': True, 'msg': 'Order Data', 'rstatus': True}}
[2026-10-28 19:28:45,529.529 INFO    ] 200
[2026-10-28 19:28:45,531.531 INFO    ] {"data":{"order_id":"TM08202202261028192741416","server_status":"order-started","server_response":{"data":{"bill_amount":"40","order_id":"TM08202202261028192741416","invoice_bill":"40","proposed_sku_json":[{"offer_id":"","door_id":"1","mrp":"10","offer_desc":"","tray_id":"16","skuid":"4500708","qty":2,"sku_total":20,"name":"Modern Kitchen Masala Peanut 28gm","unit_price":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500708-7901.webp"},{"offer_id":"","door_id":"1","mrp":"10","offer_desc":"","tray_id":"21","skuid":"4500723","qty":2,"sku_total":20,"name":"MaxVita Moong daal 25gm","unit_price":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500723-3888.png"}],"access_code":"12293871","mobile":"6362505143"},"status":true,"msg":"Order Data","rstatus":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 19:28:45,535.535 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202261028192741416', 'server_status': 'order-started', 'server_response': {'status': True, 'msg': 'Order Data', 'data': {'bill_amount': '40', 'order_id': 'TM08202202261028192741416', 'invoice_bill': '40', 'proposed_sku_json': [{'offer_id': '', 'door_id': '1', 'mrp': '10', 'offer_desc': '', 'tray_id': '16', 'skuid': '4500708', 'qty': 2, 'sku_total': 20, 'name': 'Modern Kitchen Masala Peanut 28gm', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp'}, {'offer_id': '', 'door_id': '1', 'mrp': '10', 'offer_desc': '', 'tray_id': '21', 'skuid': '4500723', 'qty': 2, 'sku_total': 20, 'name': 'MaxVita Moong daal 25gm', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500723-3888.png'}], 'access_code': '12293871', 'mobile': '6362505143'}, 'rstatus': True}}}
[2026-10-28 19:28:45,537.537 INFO    ] 2026-10-28 19:28:45
[2026-10-28 19:28:45,580.580 INFO    ] 200
[2026-10-28 19:28:45,583.583 INFO    ] True
[2026-10-28 19:28:45,757.757 INFO    ] 200
[2026-10-28 19:28:45,760.760 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "False", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "SectionStatus": {"SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}}
[2026-10-28 19:28:45,763.763 INFO    ] {'voiceNote': 'Please Wait', 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'status': 'False', 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}}
[2026-10-28 19:28:45,767.767 INFO    ] *** process_order ***
[2026-10-28 19:28:46,954.954 INFO    ] 200
[2026-10-28 19:28:46,956.956 INFO    ] {"rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "SectionStatus": {"SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}}
[2026-10-28 19:28:46,959.959 INFO    ] {'voiceNote': 'Please Wait', 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'status': 'True', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0}
[2026-10-28 19:28:46,961.961 INFO    ] *** process_order ***
[2026-10-28 19:28:46,964.964 INFO    ] publish_status: order_id=TM08202202261028192741416
[2026-10-28 19:28:46,966.966 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028192741416
[2026-10-28 19:28:47,111.111 INFO    ] [publish_status] Message added to stream with ID: 1793195927044-0
[2026-10-28 19:28:47,114.114 INFO    ] Published to order:TM08202202261028192741416: {'order_id': 'TM08202202261028192741416', 'server_status': 'doorOpened', 'server_response': '{"voiceNote": "Door is open...", "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "You can pull the door now."}, "status": "True", "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0}'} (ID: 1793195927044-0)
[2026-10-28 19:28:48,235.235 INFO    ] 2026-10-28 19:28:48
[2026-10-28 19:28:48,237.237 INFO    ] publish_status: order_id=TM08202202261028192741416
[2026-10-28 19:28:48,240.240 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028192741416
[2026-10-28 19:28:48,365.365 INFO    ] [publish_status] Message added to stream with ID: 1793195928292-0
[2026-10-28 19:28:48,368.368 INFO    ] Published to order:TM08202202261028192741416: {'order_id': 'TM08202202261028192741416', 'timestamp': '2026-10-28T13:58:48.236363Z', 'server_status': 'processOrder', 'server_response': '{"voiceNote": "Please Wait", "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "status": "True", "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0}'} (ID: 1793195928292-0)
[2026-10-28 19:28:48,599.599 INFO    ] {'order_id': 'TM08202202261028192741416', 'server_status': 'processOrder', 'server_response': {'voiceNote': 'Please Wait', 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'status': 'True', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0}}
[2026-10-28 19:28:48,602.602 INFO    ] 200
[2026-10-28 19:28:48,605.605 INFO    ] {"data":{"order_id":"TM08202202261028192741416","server_status":"processOrder","server_response":{"voiceNote":"Please Wait","SectionStatus":{"UI_Header":"","Note":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order"},"status":"true","rstatus":true,"SectionMain":{"Header":"Processing Order"},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"delay":0}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 19:28:48,608.608 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202261028192741416', 'server_status': 'processOrder', 'server_response': {'voiceNote': 'Please Wait', 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'status': 'true', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0}}}
[2026-10-28 19:28:48,611.611 INFO    ] 2026-10-28 19:28:48
[2026-10-28 19:28:48,614.614 INFO    ] None
[2026-10-28 19:28:48,617.617 INFO    ] Opening Door now
[2026-10-28 19:28:48,620.620 INFO    ] Opening Door now
[2026-10-28 19:28:48,622.622 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-10-28 19:28:48,626.626 INFO    ] 2026-10-28 19:28:48
[2026-10-28 19:28:48,628.628 INFO    ] playing audio file
[2026-10-28 19:28:48,646.646 INFO    ] 2026-10-28 19:28:48
[2026-10-28 19:28:48,649.649 INFO    ] 2026-10-28 19:28:48
[2026-10-28 19:28:51,936.936 INFO    ] 200
[2026-10-28 19:28:51,939.939 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchen Masala Peanut 28gm", "qty": 2}, {"name": "MaxVita Moong daal 25gm", "qty": 2}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Door 1 is open now", "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"}}
[2026-10-28 19:28:51,942.942 INFO    ] {'voiceNote': 'Door 1 is open now', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern Kitchen Masala Peanut 28gm', 'qty': 2}, {'name': 'MaxVita Moong daal 25gm', 'qty': 2}]}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}}
[2026-10-28 19:28:55,010.010 INFO    ] 200
[2026-10-28 19:28:55,012.012 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchen Masala Peanut 28gm", "qty": 2}, {"name": "MaxVita Moong daal 25gm", "qty": 2}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 19:28:55,016.016 INFO    ] {'voiceNote': 'Please close door 1', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern Kitchen Masala Peanut 28gm', 'qty': 2}, {'name': 'MaxVita Moong daal 25gm', 'qty': 2}]}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}}
[2026-10-28 19:28:58,079.079 INFO    ] 200
[2026-10-28 19:28:58,081.081 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchen Masala Peanut 28gm", "qty": 2}, {"name": "MaxVita Moong daal 25gm", "qty": 2}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 19:28:58,085.085 INFO    ] Please close door 1
[2026-10-28 19:28:58,087.087 INFO    ] Please close door 1
[2026-10-28 19:28:58,090.090 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-10-28 19:28:58,093.093 INFO    ] 2026-10-28 19:28:58
[2026-10-28 19:28:58,096.096 INFO    ] playing audio file
[2026-10-28 19:28:58,114.114 INFO    ] 2026-10-28 19:28:58
[2026-10-28 19:28:58,117.117 INFO    ] publish_status: order_id=TM08202202261028192741416
[2026-10-28 19:28:58,120.120 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028192741416
[2026-10-28 19:28:58,242.242 INFO    ] [publish_status] Message added to stream with ID: 1793195938165-0
[2026-10-28 19:28:58,245.245 INFO    ] Published to order:TM08202202261028192741416: {'order_id': 'TM08202202261028192741416', 'timestamp': '2026-10-28T13:58:58.115835Z', 'server_status': 'OrderStatus', 'server_response': '{"voiceNote": "Please close door 1", "SectionStatus": {"UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "SubHeader": "Please Pick the Products and close the door"}, "status": "False", "rstatus": false, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchen Masala Peanut 28gm", "qty": 2}, {"name": "MaxVita Moong daal 25gm", "qty": 2}]}, "error": {"code": 20001, "tmessage": "In Progress", "umessage": "In Progress", "data": {}}}'} (ID: 1793195938165-0)
[2026-10-28 19:28:58,952.952 INFO    ] {'order_id': 'TM08202202261028192741416', 'server_status': 'OrderStatus', 'server_response': {'voiceNote': 'Please close door 1', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern Kitchen Masala Peanut 28gm', 'qty': 2}, {'name': 'MaxVita Moong daal 25gm', 'qty': 2}]}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}}}
[2026-10-28 19:28:58,954.954 INFO    ] 200
[2026-10-28 19:28:58,957.957 INFO    ] {"data":{"order_id":"TM08202202261028192741416","server_status":"OrderStatus","server_response":{"voiceNote":"Please close door 1","SectionStatus":{"UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 1","SubHeader":"Please Pick the Products and close the door"},"status":"false","rstatus":false,"SectionMain":{"Header":"Door Open"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"Modern Kitchen Masala Peanut 28gm","qty":2},{"name":"MaxVita Moong daal 25gm","qty":2}]},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 19:28:58,960.960 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202261028192741416', 'server_status': 'OrderStatus', 'server_response': {'voiceNote': 'Please close door 1', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'false', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern Kitchen Masala Peanut 28gm', 'qty': 2}, {'name': 'MaxVita Moong daal 25gm', 'qty': 2}]}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': []}}}}
[2026-10-28 19:28:58,963.963 INFO    ] {'voiceNote': 'Please close door 1', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern Kitchen Masala Peanut 28gm', 'qty': 2}, {'name': 'MaxVita Moong daal 25gm', 'qty': 2}]}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}}
[2026-10-28 19:29:02,084.084 INFO    ] 200
[2026-10-28 19:29:02,087.087 INFO    ] {"rstatus": false, "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Modern Kitchen Masala Peanut 28gm", "qty": 2}, {"name": "MaxVita Moong daal 25gm", "qty": 2}]}, "status": "False", "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 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"}}
[2026-10-28 19:29:02,094.094 INFO    ] {'voiceNote': 'Please close door 1', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'status': 'False', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Modern Kitchen Masala Peanut 28gm', 'qty': 2}, {'name': 'MaxVita Moong daal 25gm', 'qty': 2}]}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}}}
[2026-10-28 19:29:05,158.158 INFO    ] 200
[2026-10-28 19:29:05,160.160 INFO    ] {"rstatus": true, "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "status": "True", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed", "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": ""}}
[2026-10-28 19:29:05,164.164 INFO    ] {'voiceNote': 'Transaction Completed', 'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'status': 'True', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100}
[2026-10-28 19:29:05,166.166 INFO    ] 2026-10-28 19:29:05
[2026-10-28 19:29:05,169.169 INFO    ] Order Completed 
[2026-10-28 19:29:05,172.172 INFO    ] Order Completed 
[2026-10-28 19:29:05,179.179 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-10-28 19:29:05,181.181 INFO    ] 2026-10-28 19:29:05
[2026-10-28 19:29:05,184.184 INFO    ] playing audio file
[2026-10-28 19:29:05,202.202 INFO    ] 2026-10-28 19:29:05
[2026-10-28 19:29:05,205.205 INFO    ] {'voiceNote': 'Transaction Completed', 'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'status': 'True', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100}
[2026-10-28 19:29:05,208.208 INFO    ] 2026-10-28 19:29:05
[2026-10-28 19:29:06,305.305 INFO    ] 200
[2026-10-28 19:29:06,308.308 INFO    ] {"rstatus": true, "total_amount": 40.0, "skus": [{"skuid": "4500708", "image_url": "https://images.tinymart.in/product/4500708-7901.webp", "qty": 2, "sku_total": 20.0, "tray_id": "16", "name": "Modern Kitchen Masala Peanut 28gm per peice", "door_id": "", "mrp": "10", "unit_price": "10"}, {"skuid": "4500723", "image_url": "https://images.tinymart.in/product/4500723-3888.png", "qty": 2, "sku_total": 20.0, "tray_id": "21", "name": "MaxVita Moong daal 25gm per peice", "door_id": "", "mrp": "10", "unit_price": "10"}], "res": "True", "anomaly": 0, "logic": "WBL", "orderId": "TM08202202261028192741416"}
[2026-10-28 19:29:06,311.311 INFO    ] {'orderId': 'TM08202202261028192741416', 'skus': [{'unit_price': '10', 'door_id': '', 'mrp': '10', 'tray_id': '16', 'skuid': '4500708', 'qty': 2, 'sku_total': 20.0, 'name': 'Modern Kitchen Masala Peanut 28gm per peice', 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp'}, {'unit_price': '10', 'door_id': '', 'mrp': '10', 'tray_id': '21', 'skuid': '4500723', 'qty': 2, 'sku_total': 20.0, 'name': 'MaxVita Moong daal 25gm per peice', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png'}], 'rstatus': True, 'res': 'True', 'total_amount': 40.0, 'logic': 'WBL', 'anomaly': 0}
[2026-10-28 19:29:06,314.314 INFO    ] {'orderId': 'TM08202202261028192741416', 'skus': [{'unit_price': '10', 'door_id': '', 'mrp': '10', 'tray_id': '16', 'skuid': '4500708', 'qty': 2, 'sku_total': 20.0, 'name': 'Modern Kitchen Masala Peanut 28gm per peice', 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp'}, {'unit_price': '10', 'door_id': '', 'mrp': '10', 'tray_id': '21', 'skuid': '4500723', 'qty': 2, 'sku_total': 20.0, 'name': 'MaxVita Moong daal 25gm per peice', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png'}], 'rstatus': True, 'res': 'True', 'total_amount': 40.0, 'logic': 'WBL', 'anomaly': 0}
[2026-10-28 19:29:06,316.316 INFO    ] 2026-10-28 19:29:06
[2026-10-28 19:29:06,320.320 INFO    ] 2026-10-28 19:29:06
[2026-10-28 19:29:06,322.322 INFO    ] 40
[2026-10-28 19:29:06,324.324 INFO    ] 2026-10-28 19:29:06
[2026-10-28 19:29:06,327.327 INFO    ] 2026-10-28 19:29:06
[2026-10-28 19:29:06,329.329 INFO    ]  Your Bill Amount is 40
[2026-10-28 19:29:06,331.331 INFO    ]  Your Bill Amount is 40
[2026-10-28 19:29:06,334.334 INFO    ] 88965e4060b051d18121185ac205626e
[2026-10-28 19:29:06,336.336 INFO    ] 2026-10-28 19:29:06
[2026-10-28 19:29:06,339.339 INFO    ] playing audio file
[2026-10-28 19:29:06,356.356 INFO    ] 2026-10-28 19:29:06
[2026-10-28 19:29:06,359.359 INFO    ] 2026-10-28 19:29:06
[2026-10-28 19:29:06,362.362 INFO    ] publish_status: order_id=TM08202202261028192741416
[2026-10-28 19:29:06,365.365 INFO    ] [publish_status] Adding message to stream: order:TM08202202261028192741416
[2026-10-28 19:29:06,482.482 INFO    ] [publish_status] Message added to stream with ID: 1793195946406-0
[2026-10-28 19:29:06,484.484 INFO    ] Published to order:TM08202202261028192741416: {'order_id': 'TM08202202261028192741416', 'timestamp': '2026-10-28T13:59:06.360498Z', 'server_status': 'invoiceOrder', 'server_response': '{"orderId": "TM08202202261028192741416", "skus": [{"unit_price": "10", "door_id": "", "mrp": "10", "tray_id": "16", "skuid": "4500708", "qty": 2, "sku_total": 20.0, "name": "Modern Kitchen Masala Peanut 28gm per peice", "image_url": "https://images.tinymart.in/product/4500708-7901.webp"}, {"unit_price": "10", "door_id": "", "mrp": "10", "tray_id": "21", "skuid": "4500723", "qty": 2, "sku_total": 20.0, "name": "MaxVita Moong daal 25gm per peice", "image_url": "https://images.tinymart.in/product/4500723-3888.png"}], "rstatus": true, "res": "True", "total_amount": 40.0, "logic": "WBL", "anomaly": 0}'} (ID: 1793195946406-0)
[2026-10-28 19:29:07,200.200 INFO    ] {'order_id': 'TM08202202261028192741416', 'server_status': 'invoiceOrder', 'server_response': {'orderId': 'TM08202202261028192741416', 'skus': [{'unit_price': '10', 'door_id': '', 'mrp': '10', 'tray_id': '16', 'skuid': '4500708', 'qty': 2, 'sku_total': 20.0, 'name': 'Modern Kitchen Masala Peanut 28gm per peice', 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp'}, {'unit_price': '10', 'door_id': '', 'mrp': '10', 'tray_id': '21', 'skuid': '4500723', 'qty': 2, 'sku_total': 20.0, 'name': 'MaxVita Moong daal 25gm per peice', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png'}], 'rstatus': True, 'res': 'True', 'total_amount': 40.0, 'logic': 'WBL', 'anomaly': 0}}
[2026-10-28 19:29:07,203.203 INFO    ] 200
[2026-10-28 19:29:07,205.205 INFO    ] {"data":{"order_id":"TM08202202261028192741416","server_status":"invoiceOrder","server_response":{"orderId":"TM08202202261028192741416","skus":[{"unit_price":"10","door_id":"","mrp":"10","tray_id":"16","skuid":"4500708","qty":2,"sku_total":20,"name":"Modern Kitchen Masala Peanut 28gm per peice","image_url":"https:\/\/images.tinymart.in\/product\/4500708-7901.webp"},{"unit_price":"10","door_id":"","mrp":"10","tray_id":"21","skuid":"4500723","qty":2,"sku_total":20,"name":"MaxVita Moong daal 25gm per peice","image_url":"https:\/\/images.tinymart.in\/product\/4500723-3888.png"}],"rstatus":true,"res":"true","total_amount":40,"logic":"WBL","anomaly":0}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-10-28 19:29:07,209.209 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202261028192741416', 'server_status': 'invoiceOrder', 'server_response': {'orderId': 'TM08202202261028192741416', 'skus': [{'unit_price': '10', 'door_id': '', 'mrp': '10', 'tray_id': '16', 'skuid': '4500708', 'qty': 2, 'sku_total': 20, 'name': 'Modern Kitchen Masala Peanut 28gm per peice', 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp'}, {'unit_price': '10', 'door_id': '', 'mrp': '10', 'tray_id': '21', 'skuid': '4500723', 'qty': 2, 'sku_total': 20, 'name': 'MaxVita Moong daal 25gm per peice', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png'}], 'rstatus': True, 'res': 'true', 'total_amount': 40, 'logic': 'WBL', 'anomaly': 0}}}
[2026-10-28 19:29:07,211.211 INFO    ] {'response': {'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully'}, 'data': {'order_id': 'TM08202202261028192741416', 'server_status': 'invoiceOrder', 'server_response': {'orderId': 'TM08202202261028192741416', 'skus': [{'unit_price': '10', 'door_id': '', 'mrp': '10', 'tray_id': '16', 'skuid': '4500708', 'qty': 2, 'sku_total': 20, 'name': 'Modern Kitchen Masala Peanut 28gm per peice', 'image_url': 'https://images.tinymart.in/product/4500708-7901.webp'}, {'unit_price': '10', 'door_id': '', 'mrp': '10', 'tray_id': '21', 'skuid': '4500723', 'qty': 2, 'sku_total': 20, 'name': 'MaxVita Moong daal 25gm per peice', 'image_url': 'https://images.tinymart.in/product/4500723-3888.png'}], 'rstatus': True, 'res': 'true', 'total_amount': 40, 'logic': 'WBL', 'anomaly': 0}}}
[2026-10-28 19:29:07,214.214 INFO    ] 2026-10-28 19:29:07
[2026-10-28 19:29:09,185.185 INFO    ] 200
[2026-10-28 19:29:09,187.187 INFO    ] {"orders": [], "tray_synced": ["TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416", "TM08202202261028192741416"], "orders_synced": [], "tray_sync": [], "order_items_synced": [], "status": true, "orders_data_synced": [], "order_items": [], "orders_data": []}
[2026-10-28 19:29:09,190.190 INFO    ] 2026-10-28 19:29:09
[2026-10-28 19:29:09,365.365 INFO    ] 200
[2026-10-28 19:29:09,368.368 INFO    ] True
[2026-10-28 19:29:09,371.371 INFO    ] cleanup_start_order_file_after_processing: order_id=TM08202202261028192741416
[2026-10-28 19:29:09,375.375 INFO    ] start order file deleted
[2026-10-28 19:29:09,378.378 INFO    ] Checking for system updates...
[2026-10-28 19:29:09,416.416 INFO    ] 200
[2026-10-28 19:29:09,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:29:09,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:29:09,490.490 INFO    ] No update needed
[2026-10-28 19:29:09,492.492 INFO    ] Checking for camera pi updates...
[2026-10-28 19:29:09,527.527 INFO    ] 200
[2026-10-28 19:29:09,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:29:09,572.572 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:29:09,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:29:09,698.698 INFO    ] No camera update needed
[2026-10-28 19:29:09,700.700 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:29:09,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:29:09,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:29:09,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:29:11,758.758 INFO    ] ================================================
[2026-10-28 19:29:11,775.775 INFO    ] Launching Daemon at Wed Oct 28 19:29:11 IST 2026
[2026-10-28 19:29:11,786.786 INFO    ] ================================================
[2026-10-28 19:29:12,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:29:12
[2026-10-28 19:29:13,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:29:13,407.407 INFO    ] Initializing speech engine...
[2026-10-28 19:29:13,415.415 INFO    ] 2026-10-28 19:29:13
[2026-10-28 19:29:13,691.691 INFO    ] 2026-10-28 19:29:13
[2026-10-28 19:29:13,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:29:14,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:29:14,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:29:14,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:29:14,469.469 INFO    ] time= 28/10/2026 19:29:14
[2026-10-28 19:29:14,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:29:14,546.546 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:29:14,770.770 INFO    ] No existing commands found in stream
[2026-10-28 19:29:19,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:29:19,804.804 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 19:29:23,277.277 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:29:23,280.280 INFO    ] Checking for system updates...
[2026-10-28 19:29:23,321.321 INFO    ] 200
[2026-10-28 19:29:23,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:29:23,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:29:23,387.387 INFO    ] No update needed
[2026-10-28 19:29:23,389.389 INFO    ] Checking for camera pi updates...
[2026-10-28 19:29:23,425.425 INFO    ] 200
[2026-10-28 19:29:23,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:29:23,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:29:23,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:29:23,573.573 INFO    ] No camera update needed
[2026-10-28 19:29:23,576.576 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:29:23,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:29:23,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:29:23,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:29:25,633.633 INFO    ] ================================================
[2026-10-28 19:29:25,648.648 INFO    ] Launching Daemon at Wed Oct 28 19:29:25 IST 2026
[2026-10-28 19:29:25,659.659 INFO    ] ================================================
[2026-10-28 19:29:26,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:29:26
[2026-10-28 19:29:26,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:29:27,165.165 INFO    ] Initializing speech engine...
[2026-10-28 19:29:27,179.179 INFO    ] 2026-10-28 19:29:27
[2026-10-28 19:29:27,458.458 INFO    ] 2026-10-28 19:29:27
[2026-10-28 19:29:27,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:29:27,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:29:27,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:29:28,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:29:28,249.249 INFO    ] time= 28/10/2026 19:29:28
[2026-10-28 19:29:28,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:29:28,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:29:28,481.481 INFO    ] No existing commands found in stream
[2026-10-28 19:29:33,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:29:33,495.495 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 19:29:37,880.880 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:29:37,883.883 INFO    ] Checking for system updates...
[2026-10-28 19:29:37,921.921 INFO    ] 200
[2026-10-28 19:29:37,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:29:37,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:29:37,981.981 INFO    ] No update needed
[2026-10-28 19:29:37,984.984 INFO    ] Checking for camera pi updates...
[2026-10-28 19:29:38,018.018 INFO    ] 200
[2026-10-28 19:29:38,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:29:38,062.062 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:29:38,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:29:38,154.154 INFO    ] No camera update needed
[2026-10-28 19:29:38,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:29:38,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:29:38,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:29:38,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:29:40,214.214 INFO    ] ================================================
[2026-10-28 19:29:40,228.228 INFO    ] Launching Daemon at Wed Oct 28 19:29:40 IST 2026
[2026-10-28 19:29:40,239.239 INFO    ] ================================================
[2026-10-28 19:29:40,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:29:40
[2026-10-28 19:29:41,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:29:41,859.859 INFO    ] Initializing speech engine...
[2026-10-28 19:29:41,868.868 INFO    ] 2026-10-28 19:29:41
[2026-10-28 19:29:42,156.156 INFO    ] 2026-10-28 19:29:42
[2026-10-28 19:29:42,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:29:42,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:29:42,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:29:42,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:29:42,981.981 INFO    ] time= 28/10/2026 19:29:42
[2026-10-28 19:29:43,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:29:43,106.106 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:29:43,275.275 INFO    ] No existing commands found in stream
[2026-10-28 19:29:48,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:29:48,306.306 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 19:29:49,446.446 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:29:49,449.449 INFO    ] Checking for system updates...
[2026-10-28 19:29:49,485.485 INFO    ] 200
[2026-10-28 19:29:49,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:29:49,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:29:49,545.545 INFO    ] No update needed
[2026-10-28 19:29:49,548.548 INFO    ] Checking for camera pi updates...
[2026-10-28 19:29:49,585.585 INFO    ] 200
[2026-10-28 19:29:49,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:29:49,632.632 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:29:49,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:29:49,732.732 INFO    ] No camera update needed
[2026-10-28 19:29:49,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:29:49,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:29:49,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:29:49,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:29:51,786.786 INFO    ] ================================================
[2026-10-28 19:29:51,801.801 INFO    ] Launching Daemon at Wed Oct 28 19:29:51 IST 2026
[2026-10-28 19:29:51,811.811 INFO    ] ================================================
[2026-10-28 19:29:52,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:29:52
[2026-10-28 19:29:52,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:29:53,259.259 INFO    ] Initializing speech engine...
[2026-10-28 19:29:53,274.274 INFO    ] 2026-10-28 19:29:53
[2026-10-28 19:29:53,527.527 INFO    ] 2026-10-28 19:29:53
[2026-10-28 19:29:53,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:29:53,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:29:53,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:29:54,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:29:54,096.096 INFO    ] time= 28/10/2026 19:29:54
[2026-10-28 19:29:54,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:29:54,130.130 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:29:54,281.281 INFO    ] No existing commands found in stream
[2026-10-28 19:29:59,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:29:59,309.309 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-28 19:30:00,314.314 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:30:00,317.317 INFO    ] Checking for system updates...
[2026-10-28 19:30:00,353.353 INFO    ] 200
[2026-10-28 19:30:00,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:30:00,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:30:00,410.410 INFO    ] No update needed
[2026-10-28 19:30:00,412.412 INFO    ] Checking for camera pi updates...
[2026-10-28 19:30:00,446.446 INFO    ] 200
[2026-10-28 19:30:00,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:30:00,489.489 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:30:00,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:30:00,575.575 INFO    ] No camera update needed
[2026-10-28 19:30:00,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:30:00,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:30:00,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:30:00,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:30:02,654.654 INFO    ] ================================================
[2026-10-28 19:30:02,698.698 INFO    ] Launching Daemon at Wed Oct 28 19:30:02 IST 2026
[2026-10-28 19:30:02,736.736 INFO    ] ================================================
[2026-10-28 19:30:03,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:30:03
[2026-10-28 19:30:04,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:30:04,437.437 INFO    ] Initializing speech engine...
[2026-10-28 19:30:04,447.447 INFO    ] 2026-10-28 19:30:04
[2026-10-28 19:30:04,730.730 INFO    ] 2026-10-28 19:30:04
[2026-10-28 19:30:04,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:30:05,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:30:05,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:30:05,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:30:05,332.332 INFO    ] time= 28/10/2026 19:30:05
[2026-10-28 19:30:05,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:30:05,390.390 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:30:05,545.545 INFO    ] No existing commands found in stream
[2026-10-28 19:30:10,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:30:10,578.578 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 19:30:13,859.859 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:30:13,861.861 INFO    ] Checking for system updates...
[2026-10-28 19:30:13,898.898 INFO    ] 200
[2026-10-28 19:30:13,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:30:13,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:30:13,958.958 INFO    ] No update needed
[2026-10-28 19:30:13,960.960 INFO    ] Checking for camera pi updates...
[2026-10-28 19:30:13,999.999 INFO    ] 200
[2026-10-28 19:30:14,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:30:14,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:30:14,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:30:14,131.131 INFO    ] No camera update needed
[2026-10-28 19:30:14,134.134 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:30:14,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:30:14,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:30:14,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:30:16,190.190 INFO    ] ================================================
[2026-10-28 19:30:16,205.205 INFO    ] Launching Daemon at Wed Oct 28 19:30:16 IST 2026
[2026-10-28 19:30:16,215.215 INFO    ] ================================================
[2026-10-28 19:30:16,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:30:16
[2026-10-28 19:30:17,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:30:17,694.694 INFO    ] Initializing speech engine...
[2026-10-28 19:30:17,707.707 INFO    ] 2026-10-28 19:30:17
[2026-10-28 19:30:17,976.976 INFO    ] 2026-10-28 19:30:17
[2026-10-28 19:30:18,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:30:18,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:30:18,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:30:18,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:30:18,607.607 INFO    ] time= 28/10/2026 19:30:18
[2026-10-28 19:30:18,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:30:18,645.645 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:30:18,775.775 INFO    ] No existing commands found in stream
[2026-10-28 19:30:23,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:30:23,793.793 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-28 19:30:25,877.877 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:30:25,880.880 INFO    ] Checking for system updates...
[2026-10-28 19:30:25,919.919 INFO    ] 200
[2026-10-28 19:30:25,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:30:25,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:30:25,984.984 INFO    ] No update needed
[2026-10-28 19:30:25,987.987 INFO    ] Checking for camera pi updates...
[2026-10-28 19:30:26,027.027 INFO    ] 200
[2026-10-28 19:30:26,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:30:26,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:30:26,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:30:26,152.152 INFO    ] No camera update needed
[2026-10-28 19:30:26,155.155 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:30:26,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:30:26,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:30:26,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:30:28,208.208 INFO    ] ================================================
[2026-10-28 19:30:28,223.223 INFO    ] Launching Daemon at Wed Oct 28 19:30:28 IST 2026
[2026-10-28 19:30:28,234.234 INFO    ] ================================================
[2026-10-28 19:30:28,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:30:28
[2026-10-28 19:30:29,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:30:29,646.646 INFO    ] Initializing speech engine...
[2026-10-28 19:30:29,652.652 INFO    ] 2026-10-28 19:30:29
[2026-10-28 19:30:29,940.940 INFO    ] 2026-10-28 19:30:29
[2026-10-28 19:30:29,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:30:30,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:30:30,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:30:30,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:30:30,590.590 INFO    ] time= 28/10/2026 19:30:30
[2026-10-28 19:30:30,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:30:30,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:30:30,771.771 INFO    ] No existing commands found in stream
[2026-10-28 19:30:35,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:30:35,795.795 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 19:30:37,614.614 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:30:37,617.617 INFO    ] Checking for system updates...
[2026-10-28 19:30:37,656.656 INFO    ] 200
[2026-10-28 19:30:37,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:30:37,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:30:37,722.722 INFO    ] No update needed
[2026-10-28 19:30:37,725.725 INFO    ] Checking for camera pi updates...
[2026-10-28 19:30:37,759.759 INFO    ] 200
[2026-10-28 19:30:37,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:30:37,802.802 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:30:38,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:30:38,044.044 INFO    ] No camera update needed
[2026-10-28 19:30:38,047.047 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:30:38,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:30:38,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:30:38,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:30:40,100.100 INFO    ] ================================================
[2026-10-28 19:30:40,115.115 INFO    ] Launching Daemon at Wed Oct 28 19:30:40 IST 2026
[2026-10-28 19:30:40,126.126 INFO    ] ================================================
[2026-10-28 19:30:40,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:30:40
[2026-10-28 19:30:41,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:30:41,771.771 INFO    ] Initializing speech engine...
[2026-10-28 19:30:41,783.783 INFO    ] 2026-10-28 19:30:41
[2026-10-28 19:30:42,058.058 INFO    ] 2026-10-28 19:30:42
[2026-10-28 19:30:42,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:30:42,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:30:42,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:30:42,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:30:42,777.777 INFO    ] time= 28/10/2026 19:30:42
[2026-10-28 19:30:42,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:30:42,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:30:43,035.035 INFO    ] No existing commands found in stream
[2026-10-28 19:30:48,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:30:48,067.067 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-28 19:30:50,704.704 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:30:50,707.707 INFO    ] Checking for system updates...
[2026-10-28 19:30:50,745.745 INFO    ] 200
[2026-10-28 19:30:50,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:30:50,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:30:50,811.811 INFO    ] No update needed
[2026-10-28 19:30:50,814.814 INFO    ] Checking for camera pi updates...
[2026-10-28 19:30:50,849.849 INFO    ] 200
[2026-10-28 19:30:50,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:30:50,900.900 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:30:51,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:30:51,003.003 INFO    ] No camera update needed
[2026-10-28 19:30:51,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:30:51,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:30:51,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:30:51,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:30:53,062.062 INFO    ] ================================================
[2026-10-28 19:30:53,077.077 INFO    ] Launching Daemon at Wed Oct 28 19:30:53 IST 2026
[2026-10-28 19:30:53,088.088 INFO    ] ================================================
[2026-10-28 19:30:53,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:30:53
[2026-10-28 19:30:54,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:30:54,552.552 INFO    ] Initializing speech engine...
[2026-10-28 19:30:54,558.558 INFO    ] 2026-10-28 19:30:54
[2026-10-28 19:30:54,816.816 INFO    ] 2026-10-28 19:30:54
[2026-10-28 19:30:54,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:30:55,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:30:55,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:30:55,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:30:55,444.444 INFO    ] time= 28/10/2026 19:30:55
[2026-10-28 19:30:55,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:30:55,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:30:55,616.616 INFO    ] No existing commands found in stream
[2026-10-28 19:31:00,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:31:00,636.636 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 19:31:02,402.402 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:31:02,406.406 INFO    ] Checking for system updates...
[2026-10-28 19:31:02,450.450 INFO    ] 200
[2026-10-28 19:31:02,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:31:02,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:31:02,519.519 INFO    ] No update needed
[2026-10-28 19:31:02,523.523 INFO    ] Checking for camera pi updates...
[2026-10-28 19:31:02,568.568 INFO    ] 200
[2026-10-28 19:31:02,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:31:02,625.625 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:31:02,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:31:02,766.766 INFO    ] No camera update needed
[2026-10-28 19:31:02,770.770 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:31:02,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:31:02,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:31:02,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:31:04,833.833 INFO    ] ================================================
[2026-10-28 19:31:04,848.848 INFO    ] Launching Daemon at Wed Oct 28 19:31:04 IST 2026
[2026-10-28 19:31:04,859.859 INFO    ] ================================================
[2026-10-28 19:31:05,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:31:05
[2026-10-28 19:31:06,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:31:06,389.389 INFO    ] Initializing speech engine...
[2026-10-28 19:31:06,397.397 INFO    ] 2026-10-28 19:31:06
[2026-10-28 19:31:06,680.680 INFO    ] 2026-10-28 19:31:06
[2026-10-28 19:31:06,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:31:07,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:31:07,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:31:07,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:31:07,386.386 INFO    ] time= 28/10/2026 19:31:07
[2026-10-28 19:31:07,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:31:07,469.469 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:31:07,621.621 INFO    ] No existing commands found in stream
[2026-10-28 19:31:12,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:31:12,657.657 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-28 19:31:15,645.645 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:31:15,648.648 INFO    ] Checking for system updates...
[2026-10-28 19:31:15,686.686 INFO    ] 200
[2026-10-28 19:31:15,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:31:15,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:31:15,749.749 INFO    ] No update needed
[2026-10-28 19:31:15,751.751 INFO    ] Checking for camera pi updates...
[2026-10-28 19:31:15,785.785 INFO    ] 200
[2026-10-28 19:31:15,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:31:15,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:31:15,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:31:15,913.913 INFO    ] No camera update needed
[2026-10-28 19:31:15,915.915 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:31:15,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:31:15,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:31:15,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:31:17,968.968 INFO    ] ================================================
[2026-10-28 19:31:17,982.982 INFO    ] Launching Daemon at Wed Oct 28 19:31:17 IST 2026
[2026-10-28 19:31:17,993.993 INFO    ] ================================================
[2026-10-28 19:31:18,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:31:18
[2026-10-28 19:31:19,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:31:19,446.446 INFO    ] Initializing speech engine...
[2026-10-28 19:31:19,451.451 INFO    ] 2026-10-28 19:31:19
[2026-10-28 19:31:19,715.715 INFO    ] 2026-10-28 19:31:19
[2026-10-28 19:31:19,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:31:20,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:31:20,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:31:20,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:31:20,501.501 INFO    ] time= 28/10/2026 19:31:20
[2026-10-28 19:31:20,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:31:20,600.600 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:31:20,806.806 INFO    ] No existing commands found in stream
[2026-10-28 19:31:25,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:31:25,834.834 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 19:31:27,044.044 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:31:27,046.046 INFO    ] Checking for system updates...
[2026-10-28 19:31:27,083.083 INFO    ] 200
[2026-10-28 19:31:27,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:31:27,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:31:27,140.140 INFO    ] No update needed
[2026-10-28 19:31:27,143.143 INFO    ] Checking for camera pi updates...
[2026-10-28 19:31:27,176.176 INFO    ] 200
[2026-10-28 19:31:27,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:31:27,219.219 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:31:27,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:31:27,293.293 INFO    ] No camera update needed
[2026-10-28 19:31:27,296.296 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:31:27,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:31:27,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:31:27,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:31:29,349.349 INFO    ] ================================================
[2026-10-28 19:31:29,365.365 INFO    ] Launching Daemon at Wed Oct 28 19:31:29 IST 2026
[2026-10-28 19:31:29,375.375 INFO    ] ================================================
[2026-10-28 19:31:29,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:31:29
[2026-10-28 19:31:30,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:31:30,830.830 INFO    ] Initializing speech engine...
[2026-10-28 19:31:30,837.837 INFO    ] 2026-10-28 19:31:30
[2026-10-28 19:31:31,085.085 INFO    ] 2026-10-28 19:31:31
[2026-10-28 19:31:31,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:31:31,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:31:31,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:31:31,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:31:31,702.702 INFO    ] time= 28/10/2026 19:31:31
[2026-10-28 19:31:31,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:31:31,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:31:31,919.919 INFO    ] No existing commands found in stream
[2026-10-28 19:31:36,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:31:36,953.953 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 19:31:37,558.558 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:31:37,561.561 INFO    ] Checking for system updates...
[2026-10-28 19:31:37,599.599 INFO    ] 200
[2026-10-28 19:31:37,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:31:37,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:31:37,658.658 INFO    ] No update needed
[2026-10-28 19:31:37,661.661 INFO    ] Checking for camera pi updates...
[2026-10-28 19:31:37,698.698 INFO    ] 200
[2026-10-28 19:31:37,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:31:37,742.742 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:31:37,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:31:37,821.821 INFO    ] No camera update needed
[2026-10-28 19:31:37,824.824 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:31:37,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:31:37,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:31:37,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:31:39,878.878 INFO    ] ================================================
[2026-10-28 19:31:39,893.893 INFO    ] Launching Daemon at Wed Oct 28 19:31:39 IST 2026
[2026-10-28 19:31:39,904.904 INFO    ] ================================================
[2026-10-28 19:31:40,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:31:40
[2026-10-28 19:31:41,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:31:41,339.339 INFO    ] Initializing speech engine...
[2026-10-28 19:31:41,349.349 INFO    ] 2026-10-28 19:31:41
[2026-10-28 19:31:41,597.597 INFO    ] 2026-10-28 19:31:41
[2026-10-28 19:31:41,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:31:41,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:31:41,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:31:42,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:31:42,154.154 INFO    ] time= 28/10/2026 19:31:42
[2026-10-28 19:31:42,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:31:42,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:31:42,300.300 INFO    ] No existing commands found in stream
[2026-10-28 19:31:47,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:31:47,319.319 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 19:31:51,595.595 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:31:51,597.597 INFO    ] Checking for system updates...
[2026-10-28 19:31:51,633.633 INFO    ] 200
[2026-10-28 19:31:51,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:31:51,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:31:51,691.691 INFO    ] No update needed
[2026-10-28 19:31:51,694.694 INFO    ] Checking for camera pi updates...
[2026-10-28 19:31:51,732.732 INFO    ] 200
[2026-10-28 19:31:51,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:31:51,774.774 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:31:51,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:31:51,859.859 INFO    ] No camera update needed
[2026-10-28 19:31:51,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:31:51,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:31:51,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:31:51,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:31:53,916.916 INFO    ] ================================================
[2026-10-28 19:31:53,931.931 INFO    ] Launching Daemon at Wed Oct 28 19:31:53 IST 2026
[2026-10-28 19:31:53,941.941 INFO    ] ================================================
[2026-10-28 19:31:54,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:31:54
[2026-10-28 19:31:55,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:31:55,358.358 INFO    ] Initializing speech engine...
[2026-10-28 19:31:55,381.381 INFO    ] 2026-10-28 19:31:55
[2026-10-28 19:31:55,639.639 INFO    ] 2026-10-28 19:31:55
[2026-10-28 19:31:55,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:31:56,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:31:56,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:31:56,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:31:56,361.361 INFO    ] time= 28/10/2026 19:31:56
[2026-10-28 19:31:56,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:31:56,469.469 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:31:56,662.662 INFO    ] No existing commands found in stream
[2026-10-28 19:32:01,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:32:01,680.680 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-28 19:32:06,116.116 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:32:06,119.119 INFO    ] Checking for system updates...
[2026-10-28 19:32:06,154.154 INFO    ] 200
[2026-10-28 19:32:06,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:32:06,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:32:06,211.211 INFO    ] No update needed
[2026-10-28 19:32:06,214.214 INFO    ] Checking for camera pi updates...
[2026-10-28 19:32:06,247.247 INFO    ] 200
[2026-10-28 19:32:06,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:32:06,289.289 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:32:06,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:32:06,367.367 INFO    ] No camera update needed
[2026-10-28 19:32:06,369.369 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:32:06,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:32:06,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:32:06,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:32:08,421.421 INFO    ] ================================================
[2026-10-28 19:32:08,436.436 INFO    ] Launching Daemon at Wed Oct 28 19:32:08 IST 2026
[2026-10-28 19:32:08,446.446 INFO    ] ================================================
[2026-10-28 19:32:09,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:32:09
[2026-10-28 19:32:09,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:32:09,899.899 INFO    ] Initializing speech engine...
[2026-10-28 19:32:09,913.913 INFO    ] 2026-10-28 19:32:09
[2026-10-28 19:32:10,199.199 INFO    ] 2026-10-28 19:32:10
[2026-10-28 19:32:10,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:32:10,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:32:10,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:32:10,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:32:10,838.838 INFO    ] time= 28/10/2026 19:32:10
[2026-10-28 19:32:10,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:32:10,866.866 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:32:11,024.024 INFO    ] No existing commands found in stream
[2026-10-28 19:32:16,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:32:16,043.043 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-28 19:32:20,377.377 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:32:20,380.380 INFO    ] Checking for system updates...
[2026-10-28 19:32:20,416.416 INFO    ] 200
[2026-10-28 19:32:20,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:32:20,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:32:20,474.474 INFO    ] No update needed
[2026-10-28 19:32:20,476.476 INFO    ] Checking for camera pi updates...
[2026-10-28 19:32:20,510.510 INFO    ] 200
[2026-10-28 19:32:20,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:32:20,554.554 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:32:20,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:32:20,649.649 INFO    ] No camera update needed
[2026-10-28 19:32:20,652.652 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:32:20,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:32:20,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:32:20,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:32:22,708.708 INFO    ] ================================================
[2026-10-28 19:32:22,724.724 INFO    ] Launching Daemon at Wed Oct 28 19:32:22 IST 2026
[2026-10-28 19:32:22,738.738 INFO    ] ================================================
[2026-10-28 19:32:23,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:32:23
[2026-10-28 19:32:23,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:32:24,218.218 INFO    ] Initializing speech engine...
[2026-10-28 19:32:24,224.224 INFO    ] 2026-10-28 19:32:24
[2026-10-28 19:32:24,493.493 INFO    ] 2026-10-28 19:32:24
[2026-10-28 19:32:24,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:32:24,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:32:24,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:32:25,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:32:25,831.831 INFO    ] time= 28/10/2026 19:32:25
[2026-10-28 19:32:25,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:32:25,841.841 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:32:26,236.236 INFO    ] No existing commands found in stream
[2026-10-28 19:32:31,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:32:31,251.251 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-28 19:32:32,395.395 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:32:32,398.398 INFO    ] Checking for system updates...
[2026-10-28 19:32:32,439.439 INFO    ] 200
[2026-10-28 19:32:32,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:32:32,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:32:32,511.511 INFO    ] No update needed
[2026-10-28 19:32:32,514.514 INFO    ] Checking for camera pi updates...
[2026-10-28 19:32:32,551.551 INFO    ] 200
[2026-10-28 19:32:32,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:32:32,598.598 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:32:32,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:32:32,690.690 INFO    ] No camera update needed
[2026-10-28 19:32:32,693.693 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:32:32,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:32:32,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:32:32,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:32:34,747.747 INFO    ] ================================================
[2026-10-28 19:32:34,762.762 INFO    ] Launching Daemon at Wed Oct 28 19:32:34 IST 2026
[2026-10-28 19:32:34,773.773 INFO    ] ================================================
[2026-10-28 19:32:35,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:32:35
[2026-10-28 19:32:35,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:32:36,211.211 INFO    ] Initializing speech engine...
[2026-10-28 19:32:36,225.225 INFO    ] 2026-10-28 19:32:36
[2026-10-28 19:32:36,497.497 INFO    ] 2026-10-28 19:32:36
[2026-10-28 19:32:36,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:32:36,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:32:36,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:32:37,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:32:37,078.078 INFO    ] time= 28/10/2026 19:32:37
[2026-10-28 19:32:37,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:32:37,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:32:37,299.299 INFO    ] No existing commands found in stream
[2026-10-28 19:32:42,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:32:42,327.327 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 19:32:45,239.239 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:32:45,242.242 INFO    ] Checking for system updates...
[2026-10-28 19:32:45,278.278 INFO    ] 200
[2026-10-28 19:32:45,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:32:45,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:32:45,336.336 INFO    ] No update needed
[2026-10-28 19:32:45,342.342 INFO    ] Checking for camera pi updates...
[2026-10-28 19:32:45,376.376 INFO    ] 200
[2026-10-28 19:32:45,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:32:45,418.418 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:32:45,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:32:45,600.600 INFO    ] No camera update needed
[2026-10-28 19:32:45,602.602 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:32:45,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:32:45,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:32:45,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:32:47,657.657 INFO    ] ================================================
[2026-10-28 19:32:47,672.672 INFO    ] Launching Daemon at Wed Oct 28 19:32:47 IST 2026
[2026-10-28 19:32:47,684.684 INFO    ] ================================================
[2026-10-28 19:32:48,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:32:48
[2026-10-28 19:32:49,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:32:49,347.347 INFO    ] Initializing speech engine...
[2026-10-28 19:32:49,356.356 INFO    ] 2026-10-28 19:32:49
[2026-10-28 19:32:49,633.633 INFO    ] 2026-10-28 19:32:49
[2026-10-28 19:32:49,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:32:50,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:32:50,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:32:50,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:32:50,381.381 INFO    ] time= 28/10/2026 19:32:50
[2026-10-28 19:32:50,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:32:50,463.463 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:32:50,649.649 INFO    ] No existing commands found in stream
[2026-10-28 19:32:55,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:32:55,671.671 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-28 19:32:59,688.688 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:32:59,691.691 INFO    ] Checking for system updates...
[2026-10-28 19:32:59,729.729 INFO    ] 200
[2026-10-28 19:32:59,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:32:59,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:32:59,787.787 INFO    ] No update needed
[2026-10-28 19:32:59,789.789 INFO    ] Checking for camera pi updates...
[2026-10-28 19:32:59,823.823 INFO    ] 200
[2026-10-28 19:32:59,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:32:59,869.869 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:32:59,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:32:59,963.963 INFO    ] No camera update needed
[2026-10-28 19:32:59,966.966 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:32:59,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:32:59,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:32:59,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:33:02,030.030 INFO    ] ================================================
[2026-10-28 19:33:02,062.062 INFO    ] Launching Daemon at Wed Oct 28 19:33:02 IST 2026
[2026-10-28 19:33:02,126.126 INFO    ] ================================================
[2026-10-28 19:33:02,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:33:02
[2026-10-28 19:33:03,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:33:03,743.743 INFO    ] Initializing speech engine...
[2026-10-28 19:33:03,749.749 INFO    ] 2026-10-28 19:33:03
[2026-10-28 19:33:04,066.066 INFO    ] 2026-10-28 19:33:04
[2026-10-28 19:33:04,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:33:04,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:33:04,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:33:04,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:33:04,875.875 INFO    ] time= 28/10/2026 19:33:04
[2026-10-28 19:33:04,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:33:04,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:33:05,117.117 INFO    ] No existing commands found in stream
[2026-10-28 19:33:10,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:33:10,131.131 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-28 19:33:13,779.779 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:33:13,782.782 INFO    ] Checking for system updates...
[2026-10-28 19:33:13,818.818 INFO    ] 200
[2026-10-28 19:33:13,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:33:13,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:33:13,879.879 INFO    ] No update needed
[2026-10-28 19:33:13,882.882 INFO    ] Checking for camera pi updates...
[2026-10-28 19:33:13,916.916 INFO    ] 200
[2026-10-28 19:33:13,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:33:13,960.960 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:33:14,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:33:14,045.045 INFO    ] No camera update needed
[2026-10-28 19:33:14,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:33:14,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:33:14,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:33:14,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:33:16,105.105 INFO    ] ================================================
[2026-10-28 19:33:16,120.120 INFO    ] Launching Daemon at Wed Oct 28 19:33:16 IST 2026
[2026-10-28 19:33:16,131.131 INFO    ] ================================================
[2026-10-28 19:33:16,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:33:16
[2026-10-28 19:33:17,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:33:17,577.577 INFO    ] Initializing speech engine...
[2026-10-28 19:33:17,591.591 INFO    ] 2026-10-28 19:33:17
[2026-10-28 19:33:17,869.869 INFO    ] 2026-10-28 19:33:17
[2026-10-28 19:33:17,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:33:18,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:33:18,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:33:18,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:33:18,462.462 INFO    ] time= 28/10/2026 19:33:18
[2026-10-28 19:33:18,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:33:18,502.502 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:33:18,648.648 INFO    ] No existing commands found in stream
[2026-10-28 19:33:23,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:33:23,688.688 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-28 19:33:27,648.648 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:33:27,651.651 INFO    ] Checking for system updates...
[2026-10-28 19:33:27,689.689 INFO    ] 200
[2026-10-28 19:33:27,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:33:27,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:33:27,749.749 INFO    ] No update needed
[2026-10-28 19:33:27,751.751 INFO    ] Checking for camera pi updates...
[2026-10-28 19:33:27,788.788 INFO    ] 200
[2026-10-28 19:33:27,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:33:27,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:33:27,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:33:27,921.921 INFO    ] No camera update needed
[2026-10-28 19:33:27,924.924 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:33:27,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:33:27,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:33:27,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:33:29,980.980 INFO    ] ================================================
[2026-10-28 19:33:30,996.996 INFO    ] Launching Daemon at Wed Oct 28 19:33:29 IST 2026
[2026-10-28 19:33:30,007.007 INFO    ] ================================================
[2026-10-28 19:33:30,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:33:30
[2026-10-28 19:33:31,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:33:31,471.471 INFO    ] Initializing speech engine...
[2026-10-28 19:33:31,479.479 INFO    ] 2026-10-28 19:33:31
[2026-10-28 19:33:31,738.738 INFO    ] 2026-10-28 19:33:31
[2026-10-28 19:33:31,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:33:32,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:33:32,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:33:32,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:33:32,395.395 INFO    ] time= 28/10/2026 19:33:32
[2026-10-28 19:33:32,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:33:32,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:33:32,724.724 INFO    ] No existing commands found in stream
[2026-10-28 19:33:37,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:33:37,741.741 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-28 19:33:40,718.718 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:33:40,721.721 INFO    ] Checking for system updates...
[2026-10-28 19:33:40,757.757 INFO    ] 200
[2026-10-28 19:33:40,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:33:40,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:33:40,815.815 INFO    ] No update needed
[2026-10-28 19:33:40,817.817 INFO    ] Checking for camera pi updates...
[2026-10-28 19:33:40,851.851 INFO    ] 200
[2026-10-28 19:33:40,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:33:40,896.896 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:33:41,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:33:41,003.003 INFO    ] No camera update needed
[2026-10-28 19:33:41,006.006 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:33:41,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:33:41,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:33:41,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:33:43,058.058 INFO    ] ================================================
[2026-10-28 19:33:43,073.073 INFO    ] Launching Daemon at Wed Oct 28 19:33:43 IST 2026
[2026-10-28 19:33:43,084.084 INFO    ] ================================================
[2026-10-28 19:33:43,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:33:43
[2026-10-28 19:33:44,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:33:44,632.632 INFO    ] Initializing speech engine...
[2026-10-28 19:33:44,638.638 INFO    ] 2026-10-28 19:33:44
[2026-10-28 19:33:44,887.887 INFO    ] 2026-10-28 19:33:44
[2026-10-28 19:33:44,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:33:45,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:33:45,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:33:45,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:33:45,656.656 INFO    ] time= 28/10/2026 19:33:45
[2026-10-28 19:33:45,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:33:45,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:33:45,867.867 INFO    ] No existing commands found in stream
[2026-10-28 19:33:50,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:33:50,895.895 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 19:33:51,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:33:51,557.557 INFO    ] Checking for system updates...
[2026-10-28 19:33:51,593.593 INFO    ] 200
[2026-10-28 19:33:51,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:33:51,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:33:51,650.650 INFO    ] No update needed
[2026-10-28 19:33:51,653.653 INFO    ] Checking for camera pi updates...
[2026-10-28 19:33:51,686.686 INFO    ] 200
[2026-10-28 19:33:51,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:33:51,734.734 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:33:51,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:33:51,815.815 INFO    ] No camera update needed
[2026-10-28 19:33:51,818.818 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:33:51,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:33:51,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:33:51,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:33:53,872.872 INFO    ] ================================================
[2026-10-28 19:33:53,888.888 INFO    ] Launching Daemon at Wed Oct 28 19:33:53 IST 2026
[2026-10-28 19:33:53,899.899 INFO    ] ================================================
[2026-10-28 19:33:54,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:33:54
[2026-10-28 19:33:55,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:33:55,321.321 INFO    ] Initializing speech engine...
[2026-10-28 19:33:55,329.329 INFO    ] 2026-10-28 19:33:55
[2026-10-28 19:33:55,580.580 INFO    ] 2026-10-28 19:33:55
[2026-10-28 19:33:55,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:33:55,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:33:55,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:33:56,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:33:56,151.151 INFO    ] time= 28/10/2026 19:33:56
[2026-10-28 19:33:56,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:33:56,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:33:56,382.382 INFO    ] No existing commands found in stream
[2026-10-28 19:34:01,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:34:01,417.417 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-28 19:34:05,862.862 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:34:05,865.865 INFO    ] Checking for system updates...
[2026-10-28 19:34:05,900.900 INFO    ] 200
[2026-10-28 19:34:05,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:34:05,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:34:05,957.957 INFO    ] No update needed
[2026-10-28 19:34:05,960.960 INFO    ] Checking for camera pi updates...
[2026-10-28 19:34:05,993.993 INFO    ] 200
[2026-10-28 19:34:05,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:34:06,037.037 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:34:06,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:34:06,119.119 INFO    ] No camera update needed
[2026-10-28 19:34:06,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:34:06,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:34:06,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:34:06,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:34:08,177.177 INFO    ] ================================================
[2026-10-28 19:34:08,192.192 INFO    ] Launching Daemon at Wed Oct 28 19:34:08 IST 2026
[2026-10-28 19:34:08,203.203 INFO    ] ================================================
[2026-10-28 19:34:08,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:34:08
[2026-10-28 19:34:09,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:34:09,633.633 INFO    ] Initializing speech engine...
[2026-10-28 19:34:09,652.652 INFO    ] 2026-10-28 19:34:09
[2026-10-28 19:34:09,905.905 INFO    ] 2026-10-28 19:34:09
[2026-10-28 19:34:09,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:34:10,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:34:10,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:34:10,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:34:10,474.474 INFO    ] time= 28/10/2026 19:34:10
[2026-10-28 19:34:10,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:34:10,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:34:10,632.632 INFO    ] No existing commands found in stream
[2026-10-28 19:34:15,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:34:15,647.647 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-28 19:34:19,997.997 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:34:19,999.999 INFO    ] Checking for system updates...
[2026-10-28 19:34:20,036.036 INFO    ] 200
[2026-10-28 19:34:20,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:34:20,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:34:20,093.093 INFO    ] No update needed
[2026-10-28 19:34:20,096.096 INFO    ] Checking for camera pi updates...
[2026-10-28 19:34:20,129.129 INFO    ] 200
[2026-10-28 19:34:20,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:34:20,174.174 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:34:20,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:34:20,255.255 INFO    ] No camera update needed
[2026-10-28 19:34:20,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:34:20,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:34:20,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:34:20,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:34:22,311.311 INFO    ] ================================================
[2026-10-28 19:34:22,327.327 INFO    ] Launching Daemon at Wed Oct 28 19:34:22 IST 2026
[2026-10-28 19:34:22,338.338 INFO    ] ================================================
[2026-10-28 19:34:22,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:34:22
[2026-10-28 19:34:23,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:34:23,761.761 INFO    ] Initializing speech engine...
[2026-10-28 19:34:23,777.777 INFO    ] 2026-10-28 19:34:23
[2026-10-28 19:34:24,045.045 INFO    ] 2026-10-28 19:34:24
[2026-10-28 19:34:24,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:34:24,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:34:24,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:34:24,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:34:24,616.616 INFO    ] time= 28/10/2026 19:34:24
[2026-10-28 19:34:24,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:34:24,641.641 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:34:24,784.784 INFO    ] No existing commands found in stream
[2026-10-28 19:34:29,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:34:29,811.811 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-28 19:34:33,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:34:33,703.703 INFO    ] Checking for system updates...
[2026-10-28 19:34:33,740.740 INFO    ] 200
[2026-10-28 19:34:33,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:34:33,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:34:33,819.819 INFO    ] No update needed
[2026-10-28 19:34:33,821.821 INFO    ] Checking for camera pi updates...
[2026-10-28 19:34:33,856.856 INFO    ] 200
[2026-10-28 19:34:33,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:34:33,907.907 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:34:33,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:34:33,988.988 INFO    ] No camera update needed
[2026-10-28 19:34:33,991.991 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:34:33,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:34:33,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:34:34,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:34:36,045.045 INFO    ] ================================================
[2026-10-28 19:34:36,061.061 INFO    ] Launching Daemon at Wed Oct 28 19:34:36 IST 2026
[2026-10-28 19:34:36,072.072 INFO    ] ================================================
[2026-10-28 19:34:36,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:34:36
[2026-10-28 19:34:37,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:34:37,739.739 INFO    ] Initializing speech engine...
[2026-10-28 19:34:37,753.753 INFO    ] 2026-10-28 19:34:37
[2026-10-28 19:34:38,064.064 INFO    ] 2026-10-28 19:34:38
[2026-10-28 19:34:38,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:34:38,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:34:38,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:34:38,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:34:38,813.813 INFO    ] time= 28/10/2026 19:34:38
[2026-10-28 19:34:38,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:34:38,923.923 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:34:39,111.111 INFO    ] No existing commands found in stream
[2026-10-28 19:34:44,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:34:44,145.145 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 19:34:45,559.559 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:34:45,562.562 INFO    ] Checking for system updates...
[2026-10-28 19:34:45,599.599 INFO    ] 200
[2026-10-28 19:34:45,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:34:45,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:34:45,658.658 INFO    ] No update needed
[2026-10-28 19:34:45,661.661 INFO    ] Checking for camera pi updates...
[2026-10-28 19:34:45,695.695 INFO    ] 200
[2026-10-28 19:34:45,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:34:45,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:34:45,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:34:45,819.819 INFO    ] No camera update needed
[2026-10-28 19:34:45,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:34:45,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:34:45,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:34:45,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:34:47,881.881 INFO    ] ================================================
[2026-10-28 19:34:47,896.896 INFO    ] Launching Daemon at Wed Oct 28 19:34:47 IST 2026
[2026-10-28 19:34:47,907.907 INFO    ] ================================================
[2026-10-28 19:34:48,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:34:48
[2026-10-28 19:34:49,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:34:49,359.359 INFO    ] Initializing speech engine...
[2026-10-28 19:34:49,368.368 INFO    ] 2026-10-28 19:34:49
[2026-10-28 19:34:49,630.630 INFO    ] 2026-10-28 19:34:49
[2026-10-28 19:34:49,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:34:49,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:34:49,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:34:50,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:34:50,328.328 INFO    ] time= 28/10/2026 19:34:50
[2026-10-28 19:34:50,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:34:50,424.424 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:34:50,572.572 INFO    ] No existing commands found in stream
[2026-10-28 19:34:55,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:34:55,588.588 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-10-28 19:34:58,978.978 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:34:58,981.981 INFO    ] Checking for system updates...
[2026-10-28 19:34:59,021.021 INFO    ] 200
[2026-10-28 19:34:59,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:34:59,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:34:59,082.082 INFO    ] No update needed
[2026-10-28 19:34:59,084.084 INFO    ] Checking for camera pi updates...
[2026-10-28 19:34:59,122.122 INFO    ] 200
[2026-10-28 19:34:59,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:34:59,165.165 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:34:59,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:34:59,348.348 INFO    ] No camera update needed
[2026-10-28 19:34:59,350.350 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:34:59,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:34:59,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:34:59,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:35:01,405.405 INFO    ] ================================================
[2026-10-28 19:35:01,438.438 INFO    ] Launching Daemon at Wed Oct 28 19:35:01 IST 2026
[2026-10-28 19:35:01,486.486 INFO    ] ================================================
[2026-10-28 19:35:02,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:35:02
[2026-10-28 19:35:03,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:35:03,383.383 INFO    ] Initializing speech engine...
[2026-10-28 19:35:03,390.390 INFO    ] 2026-10-28 19:35:03
[2026-10-28 19:35:03,682.682 INFO    ] 2026-10-28 19:35:03
[2026-10-28 19:35:03,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:35:03,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:35:04,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:35:04,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:35:04,314.314 INFO    ] time= 28/10/2026 19:35:04
[2026-10-28 19:35:04,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:35:04,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:35:04,534.534 INFO    ] No existing commands found in stream
[2026-10-28 19:35:09,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:35:09,570.570 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-10-28 19:35:13,835.835 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:35:13,838.838 INFO    ] Checking for system updates...
[2026-10-28 19:35:13,878.878 INFO    ] 200
[2026-10-28 19:35:13,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:35:13,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:35:13,948.948 INFO    ] No update needed
[2026-10-28 19:35:13,950.950 INFO    ] Checking for camera pi updates...
[2026-10-28 19:35:13,996.996 INFO    ] 200
[2026-10-28 19:35:13,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:35:14,039.039 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:35:14,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:35:14,136.136 INFO    ] No camera update needed
[2026-10-28 19:35:14,139.139 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:35:14,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:35:14,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:35:14,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:35:16,191.191 INFO    ] ================================================
[2026-10-28 19:35:16,206.206 INFO    ] Launching Daemon at Wed Oct 28 19:35:16 IST 2026
[2026-10-28 19:35:16,217.217 INFO    ] ================================================
[2026-10-28 19:35:16,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:35:16
[2026-10-28 19:35:17,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:35:17,799.799 INFO    ] Initializing speech engine...
[2026-10-28 19:35:17,806.806 INFO    ] 2026-10-28 19:35:17
[2026-10-28 19:35:18,100.100 INFO    ] 2026-10-28 19:35:18
[2026-10-28 19:35:18,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:35:18,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:35:18,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:35:18,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:35:18,703.703 INFO    ] time= 28/10/2026 19:35:18
[2026-10-28 19:35:18,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:35:18,780.780 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:35:18,933.933 INFO    ] No existing commands found in stream
[2026-10-28 19:35:23,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:35:23,983.983 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 19:35:27,794.794 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:35:27,797.797 INFO    ] Checking for system updates...
[2026-10-28 19:35:27,832.832 INFO    ] 200
[2026-10-28 19:35:27,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:35:27,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:35:27,891.891 INFO    ] No update needed
[2026-10-28 19:35:27,894.894 INFO    ] Checking for camera pi updates...
[2026-10-28 19:35:27,932.932 INFO    ] 200
[2026-10-28 19:35:27,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:35:27,975.975 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:35:28,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:35:28,057.057 INFO    ] No camera update needed
[2026-10-28 19:35:28,059.059 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:35:28,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:35:28,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:35:28,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:35:30,112.112 INFO    ] ================================================
[2026-10-28 19:35:30,128.128 INFO    ] Launching Daemon at Wed Oct 28 19:35:30 IST 2026
[2026-10-28 19:35:30,138.138 INFO    ] ================================================
[2026-10-28 19:35:30,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:35:30
[2026-10-28 19:35:31,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:35:31,631.631 INFO    ] Initializing speech engine...
[2026-10-28 19:35:31,643.643 INFO    ] 2026-10-28 19:35:31
[2026-10-28 19:35:31,930.930 INFO    ] 2026-10-28 19:35:31
[2026-10-28 19:35:31,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:35:32,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:35:32,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:35:32,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:35:32,569.569 INFO    ] time= 28/10/2026 19:35:32
[2026-10-28 19:35:32,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:35:32,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:35:32,787.787 INFO    ] No existing commands found in stream
[2026-10-28 19:35:37,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:35:37,818.818 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-28 19:35:39,120.120 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:35:39,123.123 INFO    ] Checking for system updates...
[2026-10-28 19:35:39,159.159 INFO    ] 200
[2026-10-28 19:35:39,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:35:39,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:35:39,227.227 INFO    ] No update needed
[2026-10-28 19:35:39,230.230 INFO    ] Checking for camera pi updates...
[2026-10-28 19:35:39,263.263 INFO    ] 200
[2026-10-28 19:35:39,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:35:39,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:35:39,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:35:39,395.395 INFO    ] No camera update needed
[2026-10-28 19:35:39,398.398 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:35:39,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:35:39,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:35:39,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:35:41,450.450 INFO    ] ================================================
[2026-10-28 19:35:41,465.465 INFO    ] Launching Daemon at Wed Oct 28 19:35:41 IST 2026
[2026-10-28 19:35:41,476.476 INFO    ] ================================================
[2026-10-28 19:35:42,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:35:42
[2026-10-28 19:35:42,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:35:42,881.881 INFO    ] Initializing speech engine...
[2026-10-28 19:35:42,903.903 INFO    ] 2026-10-28 19:35:42
[2026-10-28 19:35:43,160.160 INFO    ] 2026-10-28 19:35:43
[2026-10-28 19:35:43,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:35:43,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:35:43,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:35:43,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:35:43,731.731 INFO    ] time= 28/10/2026 19:35:43
[2026-10-28 19:35:43,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:35:43,779.779 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:35:43,954.954 INFO    ] No existing commands found in stream
[2026-10-28 19:35:48,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:35:48,987.987 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-28 19:35:52,997.997 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:35:53,000.000 INFO    ] Checking for system updates...
[2026-10-28 19:35:53,036.036 INFO    ] 200
[2026-10-28 19:35:53,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:35:53,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:35:53,101.101 INFO    ] No update needed
[2026-10-28 19:35:53,103.103 INFO    ] Checking for camera pi updates...
[2026-10-28 19:35:53,141.141 INFO    ] 200
[2026-10-28 19:35:53,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:35:53,185.185 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:35:53,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:35:53,280.280 INFO    ] No camera update needed
[2026-10-28 19:35:53,282.282 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:35:53,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:35:53,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:35:53,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:35:55,338.338 INFO    ] ================================================
[2026-10-28 19:35:55,353.353 INFO    ] Launching Daemon at Wed Oct 28 19:35:55 IST 2026
[2026-10-28 19:35:55,363.363 INFO    ] ================================================
[2026-10-28 19:35:55,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:35:55
[2026-10-28 19:35:56,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:35:56,834.834 INFO    ] Initializing speech engine...
[2026-10-28 19:35:56,843.843 INFO    ] 2026-10-28 19:35:56
[2026-10-28 19:35:57,093.093 INFO    ] 2026-10-28 19:35:57
[2026-10-28 19:35:57,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:35:57,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:35:57,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:35:57,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:35:57,701.701 INFO    ] time= 28/10/2026 19:35:57
[2026-10-28 19:35:57,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:35:57,755.755 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:35:57,891.891 INFO    ] No existing commands found in stream
[2026-10-28 19:36:02,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:36:02,914.914 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 19:36:04,954.954 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:36:04,956.956 INFO    ] Checking for system updates...
[2026-10-28 19:36:04,993.993 INFO    ] 200
[2026-10-28 19:36:04,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:36:05,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:36:05,057.057 INFO    ] No update needed
[2026-10-28 19:36:05,059.059 INFO    ] Checking for camera pi updates...
[2026-10-28 19:36:05,093.093 INFO    ] 200
[2026-10-28 19:36:05,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:36:05,137.137 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:36:05,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:36:05,275.275 INFO    ] No camera update needed
[2026-10-28 19:36:05,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:36:05,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:36:05,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:36:05,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:36:07,331.331 INFO    ] ================================================
[2026-10-28 19:36:07,346.346 INFO    ] Launching Daemon at Wed Oct 28 19:36:07 IST 2026
[2026-10-28 19:36:07,357.357 INFO    ] ================================================
[2026-10-28 19:36:07,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:36:07
[2026-10-28 19:36:08,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:36:08,762.762 INFO    ] Initializing speech engine...
[2026-10-28 19:36:08,777.777 INFO    ] 2026-10-28 19:36:08
[2026-10-28 19:36:09,046.046 INFO    ] 2026-10-28 19:36:09
[2026-10-28 19:36:09,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:36:09,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:36:09,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:36:09,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:36:09,602.602 INFO    ] time= 28/10/2026 19:36:09
[2026-10-28 19:36:09,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:36:09,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:36:09,789.789 INFO    ] No existing commands found in stream
[2026-10-28 19:36:14,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:36:14,818.818 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-28 19:36:16,516.516 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:36:16,518.518 INFO    ] Checking for system updates...
[2026-10-28 19:36:16,558.558 INFO    ] 200
[2026-10-28 19:36:16,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:36:16,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:36:16,614.614 INFO    ] No update needed
[2026-10-28 19:36:16,617.617 INFO    ] Checking for camera pi updates...
[2026-10-28 19:36:16,650.650 INFO    ] 200
[2026-10-28 19:36:16,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:36:16,693.693 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:36:16,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:36:16,779.779 INFO    ] No camera update needed
[2026-10-28 19:36:16,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:36:16,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:36:16,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:36:16,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:36:18,838.838 INFO    ] ================================================
[2026-10-28 19:36:18,854.854 INFO    ] Launching Daemon at Wed Oct 28 19:36:18 IST 2026
[2026-10-28 19:36:18,865.865 INFO    ] ================================================
[2026-10-28 19:36:19,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:36:19
[2026-10-28 19:36:20,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:36:20,339.339 INFO    ] Initializing speech engine...
[2026-10-28 19:36:20,346.346 INFO    ] 2026-10-28 19:36:20
[2026-10-28 19:36:20,609.609 INFO    ] 2026-10-28 19:36:20
[2026-10-28 19:36:20,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:36:21,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:36:21,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:36:21,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:36:21,336.336 INFO    ] time= 28/10/2026 19:36:21
[2026-10-28 19:36:21,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:36:21,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:36:21,589.589 INFO    ] No existing commands found in stream
[2026-10-28 19:36:26,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:36:26,602.602 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-28 19:36:29,806.806 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:36:29,809.809 INFO    ] Checking for system updates...
[2026-10-28 19:36:29,850.850 INFO    ] 200
[2026-10-28 19:36:29,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:36:29,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:36:29,916.916 INFO    ] No update needed
[2026-10-28 19:36:29,919.919 INFO    ] Checking for camera pi updates...
[2026-10-28 19:36:29,954.954 INFO    ] 200
[2026-10-28 19:36:29,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:36:29,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:36:30,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:36:30,089.089 INFO    ] No camera update needed
[2026-10-28 19:36:30,092.092 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:36:30,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:36:30,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:36:30,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:36:32,148.148 INFO    ] ================================================
[2026-10-28 19:36:32,164.164 INFO    ] Launching Daemon at Wed Oct 28 19:36:32 IST 2026
[2026-10-28 19:36:32,175.175 INFO    ] ================================================
[2026-10-28 19:36:32,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:36:32
[2026-10-28 19:36:33,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:36:33,654.654 INFO    ] Initializing speech engine...
[2026-10-28 19:36:33,661.661 INFO    ] 2026-10-28 19:36:33
[2026-10-28 19:36:33,921.921 INFO    ] 2026-10-28 19:36:33
[2026-10-28 19:36:33,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:36:34,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:36:34,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:36:34,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:36:34,481.481 INFO    ] time= 28/10/2026 19:36:34
[2026-10-28 19:36:34,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:36:34,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:36:34,643.643 INFO    ] No existing commands found in stream
[2026-10-28 19:36:39,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:36:39,670.670 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-28 19:36:42,219.219 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:36:42,222.222 INFO    ] Checking for system updates...
[2026-10-28 19:36:42,261.261 INFO    ] 200
[2026-10-28 19:36:42,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:36:42,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:36:42,348.348 INFO    ] No update needed
[2026-10-28 19:36:42,351.351 INFO    ] Checking for camera pi updates...
[2026-10-28 19:36:42,388.388 INFO    ] 200
[2026-10-28 19:36:42,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:36:42,435.435 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:36:42,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:36:42,629.629 INFO    ] No camera update needed
[2026-10-28 19:36:42,631.631 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:36:42,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:36:42,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:36:42,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:36:44,688.688 INFO    ] ================================================
[2026-10-28 19:36:44,703.703 INFO    ] Launching Daemon at Wed Oct 28 19:36:44 IST 2026
[2026-10-28 19:36:44,714.714 INFO    ] ================================================
[2026-10-28 19:36:45,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:36:45
[2026-10-28 19:36:45,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:36:46,147.147 INFO    ] Initializing speech engine...
[2026-10-28 19:36:46,154.154 INFO    ] 2026-10-28 19:36:46
[2026-10-28 19:36:46,426.426 INFO    ] 2026-10-28 19:36:46
[2026-10-28 19:36:46,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:36:46,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:36:46,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:36:46,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:36:46,993.993 INFO    ] time= 28/10/2026 19:36:46
[2026-10-28 19:36:47,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:36:47,028.028 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:36:47,198.198 INFO    ] No existing commands found in stream
[2026-10-28 19:36:52,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:36:52,232.232 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 19:36:55,935.935 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:36:55,937.937 INFO    ] Checking for system updates...
[2026-10-28 19:36:55,973.973 INFO    ] 200
[2026-10-28 19:36:55,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:36:56,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:36:56,029.029 INFO    ] No update needed
[2026-10-28 19:36:56,032.032 INFO    ] Checking for camera pi updates...
[2026-10-28 19:36:56,065.065 INFO    ] 200
[2026-10-28 19:36:56,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:36:56,108.108 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:36:56,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:36:56,194.194 INFO    ] No camera update needed
[2026-10-28 19:36:56,197.197 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:36:56,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:36:56,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:36:56,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:36:58,252.252 INFO    ] ================================================
[2026-10-28 19:36:58,267.267 INFO    ] Launching Daemon at Wed Oct 28 19:36:58 IST 2026
[2026-10-28 19:36:58,277.277 INFO    ] ================================================
[2026-10-28 19:36:58,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:36:58
[2026-10-28 19:36:59,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:36:59,682.682 INFO    ] Initializing speech engine...
[2026-10-28 19:36:59,688.688 INFO    ] 2026-10-28 19:36:59
[2026-10-28 19:36:59,985.985 INFO    ] 2026-10-28 19:36:59
[2026-10-28 19:37:00,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:37:00,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:37:00,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:37:00,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:37:00,619.619 INFO    ] time= 28/10/2026 19:37:00
[2026-10-28 19:37:00,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:37:00,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:37:00,808.808 INFO    ] No existing commands found in stream
[2026-10-28 19:37:05,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:37:05,831.831 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-28 19:37:09,059.059 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:37:09,061.061 INFO    ] Checking for system updates...
[2026-10-28 19:37:09,097.097 INFO    ] 200
[2026-10-28 19:37:09,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:37:09,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:37:09,154.154 INFO    ] No update needed
[2026-10-28 19:37:09,156.156 INFO    ] Checking for camera pi updates...
[2026-10-28 19:37:09,189.189 INFO    ] 200
[2026-10-28 19:37:09,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:37:09,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:37:09,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:37:09,298.298 INFO    ] No camera update needed
[2026-10-28 19:37:09,300.300 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:37:09,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:37:09,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:37:09,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:37:11,353.353 INFO    ] ================================================
[2026-10-28 19:37:11,368.368 INFO    ] Launching Daemon at Wed Oct 28 19:37:11 IST 2026
[2026-10-28 19:37:11,379.379 INFO    ] ================================================
[2026-10-28 19:37:11,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:37:11
[2026-10-28 19:37:12,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:37:12,776.776 INFO    ] Initializing speech engine...
[2026-10-28 19:37:12,781.781 INFO    ] 2026-10-28 19:37:12
[2026-10-28 19:37:13,053.053 INFO    ] 2026-10-28 19:37:13
[2026-10-28 19:37:13,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:37:13,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:37:13,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:37:13,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:37:13,658.658 INFO    ] time= 28/10/2026 19:37:13
[2026-10-28 19:37:13,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:37:13,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:37:13,851.851 INFO    ] No existing commands found in stream
[2026-10-28 19:37:18,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:37:18,875.875 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-28 19:37:20,841.841 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:37:20,844.844 INFO    ] Checking for system updates...
[2026-10-28 19:37:20,897.897 INFO    ] 200
[2026-10-28 19:37:20,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:37:20,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:37:20,969.969 INFO    ] No update needed
[2026-10-28 19:37:20,971.971 INFO    ] Checking for camera pi updates...
[2026-10-28 19:37:21,005.005 INFO    ] 200
[2026-10-28 19:37:21,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:37:21,054.054 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:37:21,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:37:21,107.107 INFO    ] No camera update needed
[2026-10-28 19:37:21,109.109 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:37:21,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:37:21,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:37:21,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:37:23,164.164 INFO    ] ================================================
[2026-10-28 19:37:23,179.179 INFO    ] Launching Daemon at Wed Oct 28 19:37:23 IST 2026
[2026-10-28 19:37:23,190.190 INFO    ] ================================================
[2026-10-28 19:37:23,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:37:23
[2026-10-28 19:37:24,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:37:24,624.624 INFO    ] Initializing speech engine...
[2026-10-28 19:37:24,643.643 INFO    ] 2026-10-28 19:37:24
[2026-10-28 19:37:24,892.892 INFO    ] 2026-10-28 19:37:24
[2026-10-28 19:37:24,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:37:25,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:37:25,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:37:25,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:37:25,494.494 INFO    ] time= 28/10/2026 19:37:25
[2026-10-28 19:37:25,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:37:25,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:37:25,680.680 INFO    ] No existing commands found in stream
[2026-10-28 19:37:30,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:37:30,709.709 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 19:37:32,447.447 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:37:32,451.451 INFO    ] Checking for system updates...
[2026-10-28 19:37:32,494.494 INFO    ] 200
[2026-10-28 19:37:32,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:37:32,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:37:32,554.554 INFO    ] No update needed
[2026-10-28 19:37:32,556.556 INFO    ] Checking for camera pi updates...
[2026-10-28 19:37:32,589.589 INFO    ] 200
[2026-10-28 19:37:32,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:37:32,632.632 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:37:32,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:37:32,740.740 INFO    ] No camera update needed
[2026-10-28 19:37:32,743.743 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:37:32,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:37:32,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:37:32,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:37:34,797.797 INFO    ] ================================================
[2026-10-28 19:37:34,812.812 INFO    ] Launching Daemon at Wed Oct 28 19:37:34 IST 2026
[2026-10-28 19:37:34,823.823 INFO    ] ================================================
[2026-10-28 19:37:35,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:37:35
[2026-10-28 19:37:35,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:37:36,229.229 INFO    ] Initializing speech engine...
[2026-10-28 19:37:36,239.239 INFO    ] 2026-10-28 19:37:36
[2026-10-28 19:37:36,531.531 INFO    ] 2026-10-28 19:37:36
[2026-10-28 19:37:36,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:37:36,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:37:36,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:37:37,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:37:37,153.153 INFO    ] time= 28/10/2026 19:37:37
[2026-10-28 19:37:37,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:37:37,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:37:37,367.367 INFO    ] No existing commands found in stream
[2026-10-28 19:37:42,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:37:42,395.395 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 19:37:43,673.673 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:37:43,676.676 INFO    ] Checking for system updates...
[2026-10-28 19:37:43,711.711 INFO    ] 200
[2026-10-28 19:37:43,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:37:43,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:37:43,768.768 INFO    ] No update needed
[2026-10-28 19:37:43,770.770 INFO    ] Checking for camera pi updates...
[2026-10-28 19:37:43,806.806 INFO    ] 200
[2026-10-28 19:37:43,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:37:43,849.849 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:37:43,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:37:43,935.935 INFO    ] No camera update needed
[2026-10-28 19:37:43,937.937 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:37:43,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:37:43,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:37:43,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:37:45,993.993 INFO    ] ================================================
[2026-10-28 19:37:46,010.010 INFO    ] Launching Daemon at Wed Oct 28 19:37:46 IST 2026
[2026-10-28 19:37:46,022.022 INFO    ] ================================================
[2026-10-28 19:37:46,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:37:46
[2026-10-28 19:37:47,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:37:47,480.480 INFO    ] Initializing speech engine...
[2026-10-28 19:37:47,504.504 INFO    ] 2026-10-28 19:37:47
[2026-10-28 19:37:47,777.777 INFO    ] 2026-10-28 19:37:47
[2026-10-28 19:37:47,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:37:48,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:37:48,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:37:48,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:37:48,404.404 INFO    ] time= 28/10/2026 19:37:48
[2026-10-28 19:37:48,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:37:48,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:37:48,573.573 INFO    ] No existing commands found in stream
[2026-10-28 19:37:53,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:37:53,591.591 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-28 19:37:55,635.635 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:37:55,638.638 INFO    ] Checking for system updates...
[2026-10-28 19:37:55,675.675 INFO    ] 200
[2026-10-28 19:37:55,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:37:55,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:37:55,734.734 INFO    ] No update needed
[2026-10-28 19:37:55,737.737 INFO    ] Checking for camera pi updates...
[2026-10-28 19:37:55,775.775 INFO    ] 200
[2026-10-28 19:37:55,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:37:55,823.823 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:37:55,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:37:55,940.940 INFO    ] No camera update needed
[2026-10-28 19:37:55,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:37:55,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:37:55,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:37:55,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:37:58,998.998 INFO    ] ================================================
[2026-10-28 19:37:58,013.013 INFO    ] Launching Daemon at Wed Oct 28 19:37:58 IST 2026
[2026-10-28 19:37:58,024.024 INFO    ] ================================================
[2026-10-28 19:37:58,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:37:58
[2026-10-28 19:37:59,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:37:59,630.630 INFO    ] Initializing speech engine...
[2026-10-28 19:37:59,636.636 INFO    ] 2026-10-28 19:37:59
[2026-10-28 19:37:59,898.898 INFO    ] 2026-10-28 19:37:59
[2026-10-28 19:37:59,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:38:00,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:38:00,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:38:00,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:38:00,622.622 INFO    ] time= 28/10/2026 19:38:00
[2026-10-28 19:38:00,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:38:00,723.723 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:38:00,872.872 INFO    ] No existing commands found in stream
[2026-10-28 19:38:05,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:38:05,895.895 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-28 19:38:07,488.488 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:38:07,491.491 INFO    ] Checking for system updates...
[2026-10-28 19:38:07,533.533 INFO    ] 200
[2026-10-28 19:38:07,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:38:07,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:38:07,591.591 INFO    ] No update needed
[2026-10-28 19:38:07,594.594 INFO    ] Checking for camera pi updates...
[2026-10-28 19:38:07,627.627 INFO    ] 200
[2026-10-28 19:38:07,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:38:07,670.670 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:38:07,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:38:07,753.753 INFO    ] No camera update needed
[2026-10-28 19:38:07,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:38:07,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:38:07,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:38:07,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:38:09,810.810 INFO    ] ================================================
[2026-10-28 19:38:09,825.825 INFO    ] Launching Daemon at Wed Oct 28 19:38:09 IST 2026
[2026-10-28 19:38:09,836.836 INFO    ] ================================================
[2026-10-28 19:38:10,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:38:10
[2026-10-28 19:38:10,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:38:11,251.251 INFO    ] Initializing speech engine...
[2026-10-28 19:38:11,274.274 INFO    ] 2026-10-28 19:38:11
[2026-10-28 19:38:11,530.530 INFO    ] 2026-10-28 19:38:11
[2026-10-28 19:38:11,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:38:11,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:38:11,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:38:12,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:38:12,114.114 INFO    ] time= 28/10/2026 19:38:12
[2026-10-28 19:38:12,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:38:12,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:38:12,263.263 INFO    ] No existing commands found in stream
[2026-10-28 19:38:17,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:38:17,290.290 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-28 19:38:18,716.716 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:38:18,718.718 INFO    ] Checking for system updates...
[2026-10-28 19:38:18,755.755 INFO    ] 200
[2026-10-28 19:38:18,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:38:18,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:38:18,817.817 INFO    ] No update needed
[2026-10-28 19:38:18,819.819 INFO    ] Checking for camera pi updates...
[2026-10-28 19:38:18,854.854 INFO    ] 200
[2026-10-28 19:38:18,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:38:18,904.904 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:38:18,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:38:18,990.990 INFO    ] No camera update needed
[2026-10-28 19:38:18,993.993 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:38:18,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:38:19,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:38:19,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:38:21,050.050 INFO    ] ================================================
[2026-10-28 19:38:21,065.065 INFO    ] Launching Daemon at Wed Oct 28 19:38:21 IST 2026
[2026-10-28 19:38:21,075.075 INFO    ] ================================================
[2026-10-28 19:38:21,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:38:21
[2026-10-28 19:38:22,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:38:22,497.497 INFO    ] Initializing speech engine...
[2026-10-28 19:38:22,506.506 INFO    ] 2026-10-28 19:38:22
[2026-10-28 19:38:22,767.767 INFO    ] 2026-10-28 19:38:22
[2026-10-28 19:38:22,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:38:23,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:38:23,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:38:23,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:38:23,350.350 INFO    ] time= 28/10/2026 19:38:23
[2026-10-28 19:38:23,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:38:23,366.366 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:38:23,527.527 INFO    ] No existing commands found in stream
[2026-10-28 19:38:28,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:38:28,560.560 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-28 19:38:32,720.720 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:38:32,724.724 INFO    ] Checking for system updates...
[2026-10-28 19:38:32,767.767 INFO    ] 200
[2026-10-28 19:38:32,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:38:32,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:38:32,832.832 INFO    ] No update needed
[2026-10-28 19:38:32,834.834 INFO    ] Checking for camera pi updates...
[2026-10-28 19:38:32,868.868 INFO    ] 200
[2026-10-28 19:38:32,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:38:32,918.918 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:38:33,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:38:33,022.022 INFO    ] No camera update needed
[2026-10-28 19:38:33,025.025 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:38:33,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:38:33,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:38:33,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:38:35,079.079 INFO    ] ================================================
[2026-10-28 19:38:35,094.094 INFO    ] Launching Daemon at Wed Oct 28 19:38:35 IST 2026
[2026-10-28 19:38:35,105.105 INFO    ] ================================================
[2026-10-28 19:38:35,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:38:35
[2026-10-28 19:38:36,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:38:36,534.534 INFO    ] Initializing speech engine...
[2026-10-28 19:38:36,540.540 INFO    ] 2026-10-28 19:38:36
[2026-10-28 19:38:36,843.843 INFO    ] 2026-10-28 19:38:36
[2026-10-28 19:38:36,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:38:37,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:38:37,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:38:37,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:38:37,348.348 INFO    ] time= 28/10/2026 19:38:37
[2026-10-28 19:38:37,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:38:37,449.449 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:38:37,557.557 INFO    ] No existing commands found in stream
[2026-10-28 19:38:42,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:38:42,572.572 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-28 19:38:45,339.339 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:38:45,342.342 INFO    ] Checking for system updates...
[2026-10-28 19:38:45,377.377 INFO    ] 200
[2026-10-28 19:38:45,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:38:45,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:38:45,442.442 INFO    ] No update needed
[2026-10-28 19:38:45,444.444 INFO    ] Checking for camera pi updates...
[2026-10-28 19:38:45,479.479 INFO    ] 200
[2026-10-28 19:38:45,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:38:45,527.527 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:38:45,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:38:45,614.614 INFO    ] No camera update needed
[2026-10-28 19:38:45,617.617 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:38:45,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:38:45,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:38:45,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:38:47,670.670 INFO    ] ================================================
[2026-10-28 19:38:47,686.686 INFO    ] Launching Daemon at Wed Oct 28 19:38:47 IST 2026
[2026-10-28 19:38:47,697.697 INFO    ] ================================================
[2026-10-28 19:38:48,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:38:48
[2026-10-28 19:38:49,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:38:49,368.368 INFO    ] Initializing speech engine...
[2026-10-28 19:38:49,379.379 INFO    ] 2026-10-28 19:38:49
[2026-10-28 19:38:49,669.669 INFO    ] 2026-10-28 19:38:49
[2026-10-28 19:38:49,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:38:50,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:38:50,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:38:50,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:38:50,299.299 INFO    ] time= 28/10/2026 19:38:50
[2026-10-28 19:38:50,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:38:50,343.343 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:38:50,511.511 INFO    ] No existing commands found in stream
[2026-10-28 19:38:55,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:38:55,524.524 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-28 19:38:57,498.498 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:38:57,500.500 INFO    ] Checking for system updates...
[2026-10-28 19:38:57,540.540 INFO    ] 200
[2026-10-28 19:38:57,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:38:57,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:38:57,598.598 INFO    ] No update needed
[2026-10-28 19:38:57,600.600 INFO    ] Checking for camera pi updates...
[2026-10-28 19:38:57,638.638 INFO    ] 200
[2026-10-28 19:38:57,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:38:57,680.680 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:38:57,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:38:57,766.766 INFO    ] No camera update needed
[2026-10-28 19:38:57,768.768 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:38:57,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:38:57,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:38:57,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:38:59,822.822 INFO    ] ================================================
[2026-10-28 19:38:59,837.837 INFO    ] Launching Daemon at Wed Oct 28 19:38:59 IST 2026
[2026-10-28 19:38:59,848.848 INFO    ] ================================================
[2026-10-28 19:39:00,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:39:00
[2026-10-28 19:39:01,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:39:01,279.279 INFO    ] Initializing speech engine...
[2026-10-28 19:39:01,287.287 INFO    ] 2026-10-28 19:39:01
[2026-10-28 19:39:01,537.537 INFO    ] 2026-10-28 19:39:01
[2026-10-28 19:39:01,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:39:01,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:39:01,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:39:02,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:39:02,081.081 INFO    ] time= 28/10/2026 19:39:02
[2026-10-28 19:39:02,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:39:02,090.090 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:39:02,213.213 INFO    ] No existing commands found in stream
[2026-10-28 19:39:07,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:39:07,227.227 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-28 19:39:11,337.337 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:39:11,340.340 INFO    ] Checking for system updates...
[2026-10-28 19:39:11,383.383 INFO    ] 200
[2026-10-28 19:39:11,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:39:11,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:39:11,447.447 INFO    ] No update needed
[2026-10-28 19:39:11,450.450 INFO    ] Checking for camera pi updates...
[2026-10-28 19:39:11,490.490 INFO    ] 200
[2026-10-28 19:39:11,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:39:11,537.537 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:39:11,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:39:11,733.733 INFO    ] No camera update needed
[2026-10-28 19:39:11,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:39:11,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:39:11,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:39:11,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:39:13,795.795 INFO    ] ================================================
[2026-10-28 19:39:13,810.810 INFO    ] Launching Daemon at Wed Oct 28 19:39:13 IST 2026
[2026-10-28 19:39:13,821.821 INFO    ] ================================================
[2026-10-28 19:39:14,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:39:14
[2026-10-28 19:39:15,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:39:15,326.326 INFO    ] Initializing speech engine...
[2026-10-28 19:39:15,339.339 INFO    ] 2026-10-28 19:39:15
[2026-10-28 19:39:15,590.590 INFO    ] 2026-10-28 19:39:15
[2026-10-28 19:39:15,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:39:15,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:39:15,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:39:16,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:39:16,142.142 INFO    ] time= 28/10/2026 19:39:16
[2026-10-28 19:39:16,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:39:16,177.177 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:39:16,292.292 INFO    ] No existing commands found in stream
[2026-10-28 19:39:21,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:39:21,319.319 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-28 19:39:23,439.439 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:39:23,442.442 INFO    ] Checking for system updates...
[2026-10-28 19:39:23,483.483 INFO    ] 200
[2026-10-28 19:39:23,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:39:23,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:39:23,542.542 INFO    ] No update needed
[2026-10-28 19:39:23,545.545 INFO    ] Checking for camera pi updates...
[2026-10-28 19:39:23,589.589 INFO    ] 200
[2026-10-28 19:39:23,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:39:23,653.653 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:39:23,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:39:23,732.732 INFO    ] No camera update needed
[2026-10-28 19:39:23,735.735 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:39:23,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:39:23,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:39:23,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:39:25,792.792 INFO    ] ================================================
[2026-10-28 19:39:25,807.807 INFO    ] Launching Daemon at Wed Oct 28 19:39:25 IST 2026
[2026-10-28 19:39:25,817.817 INFO    ] ================================================
[2026-10-28 19:39:26,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:39:26
[2026-10-28 19:39:26,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:39:27,298.298 INFO    ] Initializing speech engine...
[2026-10-28 19:39:27,308.308 INFO    ] 2026-10-28 19:39:27
[2026-10-28 19:39:27,566.566 INFO    ] 2026-10-28 19:39:27
[2026-10-28 19:39:27,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:39:27,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:39:27,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:39:28,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:39:28,130.130 INFO    ] time= 28/10/2026 19:39:28
[2026-10-28 19:39:28,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:39:28,149.149 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:39:28,361.361 INFO    ] No existing commands found in stream
[2026-10-28 19:39:33,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:39:33,388.388 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-28 19:39:35,676.676 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:39:35,678.678 INFO    ] Checking for system updates...
[2026-10-28 19:39:35,718.718 INFO    ] 200
[2026-10-28 19:39:35,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:39:35,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:39:35,775.775 INFO    ] No update needed
[2026-10-28 19:39:35,777.777 INFO    ] Checking for camera pi updates...
[2026-10-28 19:39:35,811.811 INFO    ] 200
[2026-10-28 19:39:35,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:39:35,862.862 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:39:35,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:39:35,934.934 INFO    ] No camera update needed
[2026-10-28 19:39:35,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:39:35,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:39:35,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:39:35,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:39:37,990.990 INFO    ] ================================================
[2026-10-28 19:39:38,005.005 INFO    ] Launching Daemon at Wed Oct 28 19:39:37 IST 2026
[2026-10-28 19:39:38,016.016 INFO    ] ================================================
[2026-10-28 19:39:38,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:39:38
[2026-10-28 19:39:39,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:39:39,545.545 INFO    ] Initializing speech engine...
[2026-10-28 19:39:39,553.553 INFO    ] 2026-10-28 19:39:39
[2026-10-28 19:39:39,816.816 INFO    ] 2026-10-28 19:39:39
[2026-10-28 19:39:39,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:39:40,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:39:40,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:39:40,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:39:40,428.428 INFO    ] time= 28/10/2026 19:39:40
[2026-10-28 19:39:40,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:39:40,490.490 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:39:40,632.632 INFO    ] No existing commands found in stream
[2026-10-28 19:39:45,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:39:45,646.646 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-28 19:39:46,717.717 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:39:46,720.720 INFO    ] Checking for system updates...
[2026-10-28 19:39:46,756.756 INFO    ] 200
[2026-10-28 19:39:46,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:39:46,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:39:46,814.814 INFO    ] No update needed
[2026-10-28 19:39:46,816.816 INFO    ] Checking for camera pi updates...
[2026-10-28 19:39:46,850.850 INFO    ] 200
[2026-10-28 19:39:46,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:39:46,892.892 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:39:46,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:39:46,961.961 INFO    ] No camera update needed
[2026-10-28 19:39:46,964.964 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:39:46,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:39:46,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:39:46,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:39:49,016.016 INFO    ] ================================================
[2026-10-28 19:39:49,032.032 INFO    ] Launching Daemon at Wed Oct 28 19:39:49 IST 2026
[2026-10-28 19:39:49,042.042 INFO    ] ================================================
[2026-10-28 19:39:49,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:39:49
[2026-10-28 19:39:50,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:39:50,468.468 INFO    ] Initializing speech engine...
[2026-10-28 19:39:50,474.474 INFO    ] 2026-10-28 19:39:50
[2026-10-28 19:39:50,773.773 INFO    ] 2026-10-28 19:39:50
[2026-10-28 19:39:50,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:39:51,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:39:51,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:39:51,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:39:51,394.394 INFO    ] time= 28/10/2026 19:39:51
[2026-10-28 19:39:51,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:39:51,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:39:51,593.593 INFO    ] No existing commands found in stream
[2026-10-28 19:39:56,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:39:56,612.612 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 19:40:00,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:40:00,647.647 INFO    ] Checking for system updates...
[2026-10-28 19:40:00,684.684 INFO    ] 200
[2026-10-28 19:40:00,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:40:00,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:40:00,740.740 INFO    ] No update needed
[2026-10-28 19:40:00,742.742 INFO    ] Checking for camera pi updates...
[2026-10-28 19:40:00,776.776 INFO    ] 200
[2026-10-28 19:40:00,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:40:00,819.819 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:40:00,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:40:00,926.926 INFO    ] No camera update needed
[2026-10-28 19:40:00,928.928 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:40:00,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:40:00,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:40:00,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:40:02,986.986 INFO    ] ================================================
[2026-10-28 19:40:03,002.002 INFO    ] Launching Daemon at Wed Oct 28 19:40:02 IST 2026
[2026-10-28 19:40:03,016.016 INFO    ] ================================================
[2026-10-28 19:40:03,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:40:03
[2026-10-28 19:40:04,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:40:04,562.562 INFO    ] Initializing speech engine...
[2026-10-28 19:40:04,568.568 INFO    ] 2026-10-28 19:40:04
[2026-10-28 19:40:04,873.873 INFO    ] 2026-10-28 19:40:04
[2026-10-28 19:40:04,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:40:05,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:40:05,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:40:05,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:40:05,437.437 INFO    ] time= 28/10/2026 19:40:05
[2026-10-28 19:40:05,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:40:05,476.476 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:40:05,593.593 INFO    ] No existing commands found in stream
[2026-10-28 19:40:10,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:40:10,632.632 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-28 19:40:14,223.223 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:40:14,226.226 INFO    ] Checking for system updates...
[2026-10-28 19:40:14,262.262 INFO    ] 200
[2026-10-28 19:40:14,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:40:14,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:40:14,328.328 INFO    ] No update needed
[2026-10-28 19:40:14,331.331 INFO    ] Checking for camera pi updates...
[2026-10-28 19:40:14,364.364 INFO    ] 200
[2026-10-28 19:40:14,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:40:14,408.408 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:40:14,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:40:14,490.490 INFO    ] No camera update needed
[2026-10-28 19:40:14,493.493 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:40:14,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:40:14,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:40:14,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:40:16,545.545 INFO    ] ================================================
[2026-10-28 19:40:16,560.560 INFO    ] Launching Daemon at Wed Oct 28 19:40:16 IST 2026
[2026-10-28 19:40:16,570.570 INFO    ] ================================================
[2026-10-28 19:40:17,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:40:17
[2026-10-28 19:40:17,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:40:18,232.232 INFO    ] Initializing speech engine...
[2026-10-28 19:40:18,243.243 INFO    ] 2026-10-28 19:40:18
[2026-10-28 19:40:18,553.553 INFO    ] 2026-10-28 19:40:18
[2026-10-28 19:40:18,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:40:18,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:40:18,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:40:19,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:40:19,300.300 INFO    ] time= 28/10/2026 19:40:19
[2026-10-28 19:40:19,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:40:19,409.409 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:40:19,612.612 INFO    ] No existing commands found in stream
[2026-10-28 19:40:24,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:40:24,642.642 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 19:40:27,039.039 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:40:27,043.043 INFO    ] Checking for system updates...
[2026-10-28 19:40:27,086.086 INFO    ] 200
[2026-10-28 19:40:27,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:40:27,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:40:27,152.152 INFO    ] No update needed
[2026-10-28 19:40:27,154.154 INFO    ] Checking for camera pi updates...
[2026-10-28 19:40:27,190.190 INFO    ] 200
[2026-10-28 19:40:27,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:40:27,233.233 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:40:27,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:40:27,311.311 INFO    ] No camera update needed
[2026-10-28 19:40:27,313.313 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:40:27,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:40:27,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:40:27,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:40:29,366.366 INFO    ] ================================================
[2026-10-28 19:40:29,381.381 INFO    ] Launching Daemon at Wed Oct 28 19:40:29 IST 2026
[2026-10-28 19:40:29,392.392 INFO    ] ================================================
[2026-10-28 19:40:30,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:40:30
[2026-10-28 19:40:30,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:40:30,994.994 INFO    ] Initializing speech engine...
[2026-10-28 19:40:31,001.001 INFO    ] 2026-10-28 19:40:30
[2026-10-28 19:40:31,262.262 INFO    ] 2026-10-28 19:40:31
[2026-10-28 19:40:31,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:40:31,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:40:31,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:40:31,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:40:31,870.870 INFO    ] time= 28/10/2026 19:40:31
[2026-10-28 19:40:31,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:40:31,908.908 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:40:32,090.090 INFO    ] No existing commands found in stream
[2026-10-28 19:40:37,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:40:37,119.119 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-28 19:40:38,136.136 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:40:38,138.138 INFO    ] Checking for system updates...
[2026-10-28 19:40:38,174.174 INFO    ] 200
[2026-10-28 19:40:38,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:40:38,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:40:38,231.231 INFO    ] No update needed
[2026-10-28 19:40:38,234.234 INFO    ] Checking for camera pi updates...
[2026-10-28 19:40:38,272.272 INFO    ] 200
[2026-10-28 19:40:38,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:40:38,316.316 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:40:38,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:40:38,417.417 INFO    ] No camera update needed
[2026-10-28 19:40:38,419.419 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:40:38,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:40:38,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:40:38,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:40:40,474.474 INFO    ] ================================================
[2026-10-28 19:40:40,489.489 INFO    ] Launching Daemon at Wed Oct 28 19:40:40 IST 2026
[2026-10-28 19:40:40,500.500 INFO    ] ================================================
[2026-10-28 19:40:41,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:40:41
[2026-10-28 19:40:41,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:40:42,189.189 INFO    ] Initializing speech engine...
[2026-10-28 19:40:42,203.203 INFO    ] 2026-10-28 19:40:42
[2026-10-28 19:40:42,521.521 INFO    ] 2026-10-28 19:40:42
[2026-10-28 19:40:42,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:40:42,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:40:42,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:40:43,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:40:43,246.246 INFO    ] time= 28/10/2026 19:40:43
[2026-10-28 19:40:43,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:40:43,337.337 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:40:43,509.509 INFO    ] No existing commands found in stream
[2026-10-28 19:40:48,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:40:48,523.523 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-28 19:40:50,211.211 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:40:50,214.214 INFO    ] Checking for system updates...
[2026-10-28 19:40:50,256.256 INFO    ] 200
[2026-10-28 19:40:50,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:40:50,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:40:50,316.316 INFO    ] No update needed
[2026-10-28 19:40:50,319.319 INFO    ] Checking for camera pi updates...
[2026-10-28 19:40:50,353.353 INFO    ] 200
[2026-10-28 19:40:50,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:40:50,397.397 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:40:50,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:40:50,480.480 INFO    ] No camera update needed
[2026-10-28 19:40:50,487.487 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:40:50,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:40:50,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:40:50,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:40:52,541.541 INFO    ] ================================================
[2026-10-28 19:40:52,557.557 INFO    ] Launching Daemon at Wed Oct 28 19:40:52 IST 2026
[2026-10-28 19:40:52,567.567 INFO    ] ================================================
[2026-10-28 19:40:53,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:40:53
[2026-10-28 19:40:53,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:40:54,027.027 INFO    ] Initializing speech engine...
[2026-10-28 19:40:54,034.034 INFO    ] 2026-10-28 19:40:54
[2026-10-28 19:40:54,294.294 INFO    ] 2026-10-28 19:40:54
[2026-10-28 19:40:54,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:40:54,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:40:54,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:40:54,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:40:55,013.013 INFO    ] time= 28/10/2026 19:40:54
[2026-10-28 19:40:55,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:40:55,110.110 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:40:55,279.279 INFO    ] No existing commands found in stream
[2026-10-28 19:41:00,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:41:00,292.292 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-28 19:41:01,063.063 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:41:01,066.066 INFO    ] Checking for system updates...
[2026-10-28 19:41:01,103.103 INFO    ] 200
[2026-10-28 19:41:01,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:41:01,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:41:01,170.170 INFO    ] No update needed
[2026-10-28 19:41:01,172.172 INFO    ] Checking for camera pi updates...
[2026-10-28 19:41:01,206.206 INFO    ] 200
[2026-10-28 19:41:01,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:41:01,250.250 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:41:01,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:41:01,336.336 INFO    ] No camera update needed
[2026-10-28 19:41:01,338.338 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:41:01,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:41:01,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:41:01,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:41:03,402.402 INFO    ] ================================================
[2026-10-28 19:41:03,417.417 INFO    ] Launching Daemon at Wed Oct 28 19:41:03 IST 2026
[2026-10-28 19:41:03,428.428 INFO    ] ================================================
[2026-10-28 19:41:04,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:41:04
[2026-10-28 19:41:04,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:41:04,982.982 INFO    ] Initializing speech engine...
[2026-10-28 19:41:04,994.994 INFO    ] 2026-10-28 19:41:04
[2026-10-28 19:41:05,271.271 INFO    ] 2026-10-28 19:41:05
[2026-10-28 19:41:05,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:41:05,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:41:05,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:41:05,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:41:05,839.839 INFO    ] time= 28/10/2026 19:41:05
[2026-10-28 19:41:05,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:41:05,876.876 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:41:06,025.025 INFO    ] No existing commands found in stream
[2026-10-28 19:41:11,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:41:11,054.054 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-28 19:41:12,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:41:12,122.122 INFO    ] Checking for system updates...
[2026-10-28 19:41:12,165.165 INFO    ] 200
[2026-10-28 19:41:12,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:41:12,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:41:12,237.237 INFO    ] No update needed
[2026-10-28 19:41:12,241.241 INFO    ] Checking for camera pi updates...
[2026-10-28 19:41:12,275.275 INFO    ] 200
[2026-10-28 19:41:12,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:41:12,319.319 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:41:12,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:41:12,400.400 INFO    ] No camera update needed
[2026-10-28 19:41:12,403.403 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:41:12,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:41:12,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:41:12,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:41:14,456.456 INFO    ] ================================================
[2026-10-28 19:41:14,472.472 INFO    ] Launching Daemon at Wed Oct 28 19:41:14 IST 2026
[2026-10-28 19:41:14,483.483 INFO    ] ================================================
[2026-10-28 19:41:15,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:41:15
[2026-10-28 19:41:15,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:41:16,037.037 INFO    ] Initializing speech engine...
[2026-10-28 19:41:16,045.045 INFO    ] 2026-10-28 19:41:16
[2026-10-28 19:41:16,325.325 INFO    ] 2026-10-28 19:41:16
[2026-10-28 19:41:16,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:41:16,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:41:16,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:41:17,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:41:17,135.135 INFO    ] time= 28/10/2026 19:41:17
[2026-10-28 19:41:17,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:41:17,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:41:17,425.425 INFO    ] No existing commands found in stream
[2026-10-28 19:41:22,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:41:22,455.455 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-28 19:41:26,958.958 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:41:26,961.961 INFO    ] Checking for system updates...
[2026-10-28 19:41:27,004.004 INFO    ] 200
[2026-10-28 19:41:27,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:41:27,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:41:27,077.077 INFO    ] No update needed
[2026-10-28 19:41:27,080.080 INFO    ] Checking for camera pi updates...
[2026-10-28 19:41:27,113.113 INFO    ] 200
[2026-10-28 19:41:27,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:41:27,162.162 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:41:27,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:41:27,338.338 INFO    ] No camera update needed
[2026-10-28 19:41:27,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:41:27,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:41:27,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:41:27,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:41:29,392.392 INFO    ] ================================================
[2026-10-28 19:41:29,408.408 INFO    ] Launching Daemon at Wed Oct 28 19:41:29 IST 2026
[2026-10-28 19:41:29,420.420 INFO    ] ================================================
[2026-10-28 19:41:30,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:41:30
[2026-10-28 19:41:30,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:41:30,880.880 INFO    ] Initializing speech engine...
[2026-10-28 19:41:30,902.902 INFO    ] 2026-10-28 19:41:30
[2026-10-28 19:41:31,177.177 INFO    ] 2026-10-28 19:41:31
[2026-10-28 19:41:31,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:41:31,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:41:31,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:41:31,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:41:31,846.846 INFO    ] time= 28/10/2026 19:41:31
[2026-10-28 19:41:31,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:41:31,872.872 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:41:32,041.041 INFO    ] No existing commands found in stream
[2026-10-28 19:41:37,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:41:37,066.066 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 19:41:38,156.156 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:41:38,158.158 INFO    ] Checking for system updates...
[2026-10-28 19:41:38,194.194 INFO    ] 200
[2026-10-28 19:41:38,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:41:38,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:41:38,251.251 INFO    ] No update needed
[2026-10-28 19:41:38,253.253 INFO    ] Checking for camera pi updates...
[2026-10-28 19:41:38,292.292 INFO    ] 200
[2026-10-28 19:41:38,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:41:38,334.334 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:41:38,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:41:38,419.419 INFO    ] No camera update needed
[2026-10-28 19:41:38,422.422 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:41:38,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:41:38,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:41:38,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:41:40,476.476 INFO    ] ================================================
[2026-10-28 19:41:40,492.492 INFO    ] Launching Daemon at Wed Oct 28 19:41:40 IST 2026
[2026-10-28 19:41:40,505.505 INFO    ] ================================================
[2026-10-28 19:41:41,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:41:41
[2026-10-28 19:41:41,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:41:41,915.915 INFO    ] Initializing speech engine...
[2026-10-28 19:41:41,930.930 INFO    ] 2026-10-28 19:41:41
[2026-10-28 19:41:42,196.196 INFO    ] 2026-10-28 19:41:42
[2026-10-28 19:41:42,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:41:42,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:41:42,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:41:42,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:41:42,769.769 INFO    ] time= 28/10/2026 19:41:42
[2026-10-28 19:41:42,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:41:42,794.794 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:41:42,930.930 INFO    ] No existing commands found in stream
[2026-10-28 19:41:47,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:41:47,956.956 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 19:41:51,236.236 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:41:51,239.239 INFO    ] Checking for system updates...
[2026-10-28 19:41:51,275.275 INFO    ] 200
[2026-10-28 19:41:51,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:41:51,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:41:51,332.332 INFO    ] No update needed
[2026-10-28 19:41:51,334.334 INFO    ] Checking for camera pi updates...
[2026-10-28 19:41:51,367.367 INFO    ] 200
[2026-10-28 19:41:51,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:41:51,415.415 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:41:51,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:41:51,507.507 INFO    ] No camera update needed
[2026-10-28 19:41:51,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:41:51,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:41:51,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:41:51,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:41:53,564.564 INFO    ] ================================================
[2026-10-28 19:41:53,580.580 INFO    ] Launching Daemon at Wed Oct 28 19:41:53 IST 2026
[2026-10-28 19:41:53,591.591 INFO    ] ================================================
[2026-10-28 19:41:54,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:41:54
[2026-10-28 19:41:54,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:41:55,049.049 INFO    ] Initializing speech engine...
[2026-10-28 19:41:55,054.054 INFO    ] 2026-10-28 19:41:55
[2026-10-28 19:41:55,303.303 INFO    ] 2026-10-28 19:41:55
[2026-10-28 19:41:55,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:41:55,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:41:55,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:41:55,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:41:55,911.911 INFO    ] time= 28/10/2026 19:41:55
[2026-10-28 19:41:55,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:41:55,921.921 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:41:56,064.064 INFO    ] No existing commands found in stream
[2026-10-28 19:42:01,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:42:01,092.092 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-28 19:42:03,010.010 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:42:03,014.014 INFO    ] Checking for system updates...
[2026-10-28 19:42:03,058.058 INFO    ] 200
[2026-10-28 19:42:03,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:42:03,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:42:03,139.139 INFO    ] No update needed
[2026-10-28 19:42:03,144.144 INFO    ] Checking for camera pi updates...
[2026-10-28 19:42:03,187.187 INFO    ] 200
[2026-10-28 19:42:03,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:42:03,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:42:03,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:42:03,329.329 INFO    ] No camera update needed
[2026-10-28 19:42:03,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:42:03,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:42:03,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:42:03,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:42:05,394.394 INFO    ] ================================================
[2026-10-28 19:42:05,410.410 INFO    ] Launching Daemon at Wed Oct 28 19:42:05 IST 2026
[2026-10-28 19:42:05,421.421 INFO    ] ================================================
[2026-10-28 19:42:06,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:42:06
[2026-10-28 19:42:06,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:42:07,036.036 INFO    ] Initializing speech engine...
[2026-10-28 19:42:07,050.050 INFO    ] 2026-10-28 19:42:07
[2026-10-28 19:42:07,360.360 INFO    ] 2026-10-28 19:42:07
[2026-10-28 19:42:07,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:42:07,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:42:07,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:42:08,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:42:08,163.163 INFO    ] time= 28/10/2026 19:42:08
[2026-10-28 19:42:08,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:42:08,261.261 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:42:08,422.422 INFO    ] No existing commands found in stream
[2026-10-28 19:42:13,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:42:13,451.451 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-28 19:42:16,598.598 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:42:16,601.601 INFO    ] Checking for system updates...
[2026-10-28 19:42:16,638.638 INFO    ] 200
[2026-10-28 19:42:16,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:42:16,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:42:16,706.706 INFO    ] No update needed
[2026-10-28 19:42:16,709.709 INFO    ] Checking for camera pi updates...
[2026-10-28 19:42:16,744.744 INFO    ] 200
[2026-10-28 19:42:16,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:42:16,794.794 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:42:16,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:42:16,879.879 INFO    ] No camera update needed
[2026-10-28 19:42:16,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:42:16,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:42:16,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:42:16,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:42:18,936.936 INFO    ] ================================================
[2026-10-28 19:42:18,951.951 INFO    ] Launching Daemon at Wed Oct 28 19:42:18 IST 2026
[2026-10-28 19:42:18,962.962 INFO    ] ================================================
[2026-10-28 19:42:19,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:42:19
[2026-10-28 19:42:20,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:42:20,399.399 INFO    ] Initializing speech engine...
[2026-10-28 19:42:20,407.407 INFO    ] 2026-10-28 19:42:20
[2026-10-28 19:42:20,712.712 INFO    ] 2026-10-28 19:42:20
[2026-10-28 19:42:20,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:42:21,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:42:21,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:42:21,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:42:21,367.367 INFO    ] time= 28/10/2026 19:42:21
[2026-10-28 19:42:21,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:42:21,391.391 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:42:21,552.552 INFO    ] No existing commands found in stream
[2026-10-28 19:42:26,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:42:26,575.575 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-28 19:42:28,048.048 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:42:28,050.050 INFO    ] Checking for system updates...
[2026-10-28 19:42:28,086.086 INFO    ] 200
[2026-10-28 19:42:28,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:42:28,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:42:28,145.145 INFO    ] No update needed
[2026-10-28 19:42:28,147.147 INFO    ] Checking for camera pi updates...
[2026-10-28 19:42:28,185.185 INFO    ] 200
[2026-10-28 19:42:28,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:42:28,234.234 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:42:28,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:42:28,318.318 INFO    ] No camera update needed
[2026-10-28 19:42:28,320.320 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:42:28,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:42:28,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:42:28,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:42:30,373.373 INFO    ] ================================================
[2026-10-28 19:42:30,389.389 INFO    ] Launching Daemon at Wed Oct 28 19:42:30 IST 2026
[2026-10-28 19:42:30,400.400 INFO    ] ================================================
[2026-10-28 19:42:30,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:42:30
[2026-10-28 19:42:31,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:42:31,900.900 INFO    ] Initializing speech engine...
[2026-10-28 19:42:31,908.908 INFO    ] 2026-10-28 19:42:31
[2026-10-28 19:42:32,182.182 INFO    ] 2026-10-28 19:42:32
[2026-10-28 19:42:32,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:42:32,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:42:32,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:42:32,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:42:32,816.816 INFO    ] time= 28/10/2026 19:42:32
[2026-10-28 19:42:32,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:42:32,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:42:32,998.998 INFO    ] No existing commands found in stream
[2026-10-28 19:42:38,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:42:38,019.019 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-28 19:42:41,359.359 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:42:41,362.362 INFO    ] Checking for system updates...
[2026-10-28 19:42:41,399.399 INFO    ] 200
[2026-10-28 19:42:41,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:42:41,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:42:41,459.459 INFO    ] No update needed
[2026-10-28 19:42:41,461.461 INFO    ] Checking for camera pi updates...
[2026-10-28 19:42:41,496.496 INFO    ] 200
[2026-10-28 19:42:41,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:42:41,540.540 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:42:41,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:42:41,646.646 INFO    ] No camera update needed
[2026-10-28 19:42:41,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:42:41,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:42:41,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:42:41,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:42:43,705.705 INFO    ] ================================================
[2026-10-28 19:42:43,720.720 INFO    ] Launching Daemon at Wed Oct 28 19:42:43 IST 2026
[2026-10-28 19:42:43,731.731 INFO    ] ================================================
[2026-10-28 19:42:44,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:42:44
[2026-10-28 19:42:44,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:42:45,145.145 INFO    ] Initializing speech engine...
[2026-10-28 19:42:45,156.156 INFO    ] 2026-10-28 19:42:45
[2026-10-28 19:42:45,402.402 INFO    ] 2026-10-28 19:42:45
[2026-10-28 19:42:45,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:42:45,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:42:45,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:42:45,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:42:45,980.980 INFO    ] time= 28/10/2026 19:42:45
[2026-10-28 19:42:46,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:42:46,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:42:46,139.139 INFO    ] No existing commands found in stream
[2026-10-28 19:42:51,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:42:51,172.172 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-28 19:42:53,405.405 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:42:53,407.407 INFO    ] Checking for system updates...
[2026-10-28 19:42:53,443.443 INFO    ] 200
[2026-10-28 19:42:53,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:42:53,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:42:53,504.504 INFO    ] No update needed
[2026-10-28 19:42:53,507.507 INFO    ] Checking for camera pi updates...
[2026-10-28 19:42:53,541.541 INFO    ] 200
[2026-10-28 19:42:53,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:42:53,584.584 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:42:53,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:42:53,659.659 INFO    ] No camera update needed
[2026-10-28 19:42:53,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:42:53,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:42:53,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:42:53,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:42:55,712.712 INFO    ] ================================================
[2026-10-28 19:42:55,727.727 INFO    ] Launching Daemon at Wed Oct 28 19:42:55 IST 2026
[2026-10-28 19:42:55,738.738 INFO    ] ================================================
[2026-10-28 19:42:56,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:42:56
[2026-10-28 19:42:56,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:42:57,152.152 INFO    ] Initializing speech engine...
[2026-10-28 19:42:57,160.160 INFO    ] 2026-10-28 19:42:57
[2026-10-28 19:42:57,410.410 INFO    ] 2026-10-28 19:42:57
[2026-10-28 19:42:57,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:42:57,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:42:57,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:42:57,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:42:57,978.978 INFO    ] time= 28/10/2026 19:42:57
[2026-10-28 19:42:57,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:42:58,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:42:58,140.140 INFO    ] No existing commands found in stream
[2026-10-28 19:43:03,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:43:03,168.168 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 19:43:05,375.375 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:43:05,377.377 INFO    ] Checking for system updates...
[2026-10-28 19:43:05,413.413 INFO    ] 200
[2026-10-28 19:43:05,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:43:05,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:43:05,477.477 INFO    ] No update needed
[2026-10-28 19:43:05,479.479 INFO    ] Checking for camera pi updates...
[2026-10-28 19:43:05,517.517 INFO    ] 200
[2026-10-28 19:43:05,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:43:05,560.560 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:43:05,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:43:05,630.630 INFO    ] No camera update needed
[2026-10-28 19:43:05,632.632 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:43:05,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:43:05,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:43:05,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:43:07,686.686 INFO    ] ================================================
[2026-10-28 19:43:07,701.701 INFO    ] Launching Daemon at Wed Oct 28 19:43:07 IST 2026
[2026-10-28 19:43:07,711.711 INFO    ] ================================================
[2026-10-28 19:43:08,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:43:08
[2026-10-28 19:43:09,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:43:09,351.351 INFO    ] Initializing speech engine...
[2026-10-28 19:43:09,358.358 INFO    ] 2026-10-28 19:43:09
[2026-10-28 19:43:09,626.626 INFO    ] 2026-10-28 19:43:09
[2026-10-28 19:43:09,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:43:10,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:43:10,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:43:10,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:43:10,371.371 INFO    ] time= 28/10/2026 19:43:10
[2026-10-28 19:43:10,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:43:10,441.441 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:43:10,578.578 INFO    ] No existing commands found in stream
[2026-10-28 19:43:15,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:43:15,612.612 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 19:43:19,532.532 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:43:19,535.535 INFO    ] Checking for system updates...
[2026-10-28 19:43:19,570.570 INFO    ] 200
[2026-10-28 19:43:19,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:43:19,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:43:19,627.627 INFO    ] No update needed
[2026-10-28 19:43:19,629.629 INFO    ] Checking for camera pi updates...
[2026-10-28 19:43:19,663.663 INFO    ] 200
[2026-10-28 19:43:19,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:43:19,706.706 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:43:19,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:43:19,792.792 INFO    ] No camera update needed
[2026-10-28 19:43:19,795.795 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:43:19,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:43:19,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:43:19,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:43:21,849.849 INFO    ] ================================================
[2026-10-28 19:43:21,868.868 INFO    ] Launching Daemon at Wed Oct 28 19:43:21 IST 2026
[2026-10-28 19:43:21,879.879 INFO    ] ================================================
[2026-10-28 19:43:22,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:43:22
[2026-10-28 19:43:23,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:43:23,285.285 INFO    ] Initializing speech engine...
[2026-10-28 19:43:23,293.293 INFO    ] 2026-10-28 19:43:23
[2026-10-28 19:43:23,588.588 INFO    ] 2026-10-28 19:43:23
[2026-10-28 19:43:23,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:43:23,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:43:23,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:43:24,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:43:24,177.177 INFO    ] time= 28/10/2026 19:43:24
[2026-10-28 19:43:24,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:43:24,200.200 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:43:24,330.330 INFO    ] No existing commands found in stream
[2026-10-28 19:43:29,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:43:29,347.347 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-28 19:43:30,810.810 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:43:30,813.813 INFO    ] Checking for system updates...
[2026-10-28 19:43:30,853.853 INFO    ] 200
[2026-10-28 19:43:30,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:43:30,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:43:30,911.911 INFO    ] No update needed
[2026-10-28 19:43:30,914.914 INFO    ] Checking for camera pi updates...
[2026-10-28 19:43:30,951.951 INFO    ] 200
[2026-10-28 19:43:30,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:43:30,999.999 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:43:31,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:43:31,197.197 INFO    ] No camera update needed
[2026-10-28 19:43:31,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:43:31,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:43:31,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:43:31,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:43:33,255.255 INFO    ] ================================================
[2026-10-28 19:43:33,270.270 INFO    ] Launching Daemon at Wed Oct 28 19:43:33 IST 2026
[2026-10-28 19:43:33,281.281 INFO    ] ================================================
[2026-10-28 19:43:33,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:43:33
[2026-10-28 19:43:34,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:43:34,705.705 INFO    ] Initializing speech engine...
[2026-10-28 19:43:34,714.714 INFO    ] 2026-10-28 19:43:34
[2026-10-28 19:43:34,961.961 INFO    ] 2026-10-28 19:43:34
[2026-10-28 19:43:34,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:43:35,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:43:35,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:43:35,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:43:35,522.522 INFO    ] time= 28/10/2026 19:43:35
[2026-10-28 19:43:35,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:43:35,565.565 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:43:35,744.744 INFO    ] No existing commands found in stream
[2026-10-28 19:43:40,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:43:40,765.765 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 19:43:44,134.134 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:43:44,136.136 INFO    ] Checking for system updates...
[2026-10-28 19:43:44,173.173 INFO    ] 200
[2026-10-28 19:43:44,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:43:44,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:43:44,234.234 INFO    ] No update needed
[2026-10-28 19:43:44,236.236 INFO    ] Checking for camera pi updates...
[2026-10-28 19:43:44,275.275 INFO    ] 200
[2026-10-28 19:43:44,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:43:44,327.327 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:43:44,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:43:44,411.411 INFO    ] No camera update needed
[2026-10-28 19:43:44,414.414 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:43:44,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:43:44,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:43:44,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:43:46,472.472 INFO    ] ================================================
[2026-10-28 19:43:46,488.488 INFO    ] Launching Daemon at Wed Oct 28 19:43:46 IST 2026
[2026-10-28 19:43:46,499.499 INFO    ] ================================================
[2026-10-28 19:43:47,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:43:47
[2026-10-28 19:43:47,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:43:47,897.897 INFO    ] Initializing speech engine...
[2026-10-28 19:43:47,910.910 INFO    ] 2026-10-28 19:43:47
[2026-10-28 19:43:48,176.176 INFO    ] 2026-10-28 19:43:48
[2026-10-28 19:43:48,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:43:48,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:43:48,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:43:48,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:43:48,747.747 INFO    ] time= 28/10/2026 19:43:48
[2026-10-28 19:43:48,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:43:48,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:43:48,958.958 INFO    ] No existing commands found in stream
[2026-10-28 19:43:53,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:43:53,986.986 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 19:43:55,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:43:55,736.736 INFO    ] Checking for system updates...
[2026-10-28 19:43:55,771.771 INFO    ] 200
[2026-10-28 19:43:55,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:43:55,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:43:55,828.828 INFO    ] No update needed
[2026-10-28 19:43:55,830.830 INFO    ] Checking for camera pi updates...
[2026-10-28 19:43:55,863.863 INFO    ] 200
[2026-10-28 19:43:55,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:43:55,907.907 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:43:55,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:43:55,994.994 INFO    ] No camera update needed
[2026-10-28 19:43:55,996.996 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:43:55,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:43:56,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:43:56,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:43:58,053.053 INFO    ] ================================================
[2026-10-28 19:43:58,069.069 INFO    ] Launching Daemon at Wed Oct 28 19:43:58 IST 2026
[2026-10-28 19:43:58,081.081 INFO    ] ================================================
[2026-10-28 19:43:58,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:43:58
[2026-10-28 19:43:59,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:43:59,532.532 INFO    ] Initializing speech engine...
[2026-10-28 19:43:59,540.540 INFO    ] 2026-10-28 19:43:59
[2026-10-28 19:43:59,798.798 INFO    ] 2026-10-28 19:43:59
[2026-10-28 19:43:59,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:44:00,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:44:00,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:44:00,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:44:00,340.340 INFO    ] time= 28/10/2026 19:44:00
[2026-10-28 19:44:00,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:44:00,367.367 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:44:00,497.497 INFO    ] No existing commands found in stream
[2026-10-28 19:44:05,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:44:05,518.518 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 19:44:09,079.079 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:44:09,082.082 INFO    ] Checking for system updates...
[2026-10-28 19:44:09,118.118 INFO    ] 200
[2026-10-28 19:44:09,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:44:09,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:44:09,175.175 INFO    ] No update needed
[2026-10-28 19:44:09,178.178 INFO    ] Checking for camera pi updates...
[2026-10-28 19:44:09,214.214 INFO    ] 200
[2026-10-28 19:44:09,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:44:09,261.261 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:44:09,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:44:09,347.347 INFO    ] No camera update needed
[2026-10-28 19:44:09,349.349 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:44:09,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:44:09,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:44:09,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:44:11,405.405 INFO    ] ================================================
[2026-10-28 19:44:11,420.420 INFO    ] Launching Daemon at Wed Oct 28 19:44:11 IST 2026
[2026-10-28 19:44:11,431.431 INFO    ] ================================================
[2026-10-28 19:44:12,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:44:12
[2026-10-28 19:44:12,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:44:13,049.049 INFO    ] Initializing speech engine...
[2026-10-28 19:44:13,063.063 INFO    ] 2026-10-28 19:44:13
[2026-10-28 19:44:13,337.337 INFO    ] 2026-10-28 19:44:13
[2026-10-28 19:44:13,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:44:13,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:44:13,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:44:13,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:44:13,910.910 INFO    ] time= 28/10/2026 19:44:13
[2026-10-28 19:44:13,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:44:13,946.946 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:44:14,088.088 INFO    ] No existing commands found in stream
[2026-10-28 19:44:19,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:44:19,127.127 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-28 19:44:23,715.715 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:44:23,719.719 INFO    ] Checking for system updates...
[2026-10-28 19:44:23,755.755 INFO    ] 200
[2026-10-28 19:44:23,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:44:23,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:44:23,814.814 INFO    ] No update needed
[2026-10-28 19:44:23,816.816 INFO    ] Checking for camera pi updates...
[2026-10-28 19:44:23,851.851 INFO    ] 200
[2026-10-28 19:44:23,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:44:23,895.895 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:44:23,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:44:23,987.987 INFO    ] No camera update needed
[2026-10-28 19:44:23,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:44:23,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:44:23,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:44:24,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:44:26,042.042 INFO    ] ================================================
[2026-10-28 19:44:26,059.059 INFO    ] Launching Daemon at Wed Oct 28 19:44:26 IST 2026
[2026-10-28 19:44:26,070.070 INFO    ] ================================================
[2026-10-28 19:44:26,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:44:26
[2026-10-28 19:44:27,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:44:27,530.530 INFO    ] Initializing speech engine...
[2026-10-28 19:44:27,540.540 INFO    ] 2026-10-28 19:44:27
[2026-10-28 19:44:27,809.809 INFO    ] 2026-10-28 19:44:27
[2026-10-28 19:44:27,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:44:28,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:44:28,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:44:28,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:44:28,427.427 INFO    ] time= 28/10/2026 19:44:28
[2026-10-28 19:44:28,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:44:28,449.449 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:44:28,622.622 INFO    ] No existing commands found in stream
[2026-10-28 19:44:33,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:44:33,647.647 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 19:44:38,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:44:38,080.080 INFO    ] Checking for system updates...
[2026-10-28 19:44:38,115.115 INFO    ] 200
[2026-10-28 19:44:38,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:44:38,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:44:38,179.179 INFO    ] No update needed
[2026-10-28 19:44:38,181.181 INFO    ] Checking for camera pi updates...
[2026-10-28 19:44:38,215.215 INFO    ] 200
[2026-10-28 19:44:38,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:44:38,259.259 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:44:38,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:44:38,344.344 INFO    ] No camera update needed
[2026-10-28 19:44:38,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:44:38,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:44:38,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:44:38,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:44:40,404.404 INFO    ] ================================================
[2026-10-28 19:44:40,419.419 INFO    ] Launching Daemon at Wed Oct 28 19:44:40 IST 2026
[2026-10-28 19:44:40,431.431 INFO    ] ================================================
[2026-10-28 19:44:41,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:44:41
[2026-10-28 19:44:41,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:44:41,939.939 INFO    ] Initializing speech engine...
[2026-10-28 19:44:41,948.948 INFO    ] 2026-10-28 19:44:41
[2026-10-28 19:44:42,208.208 INFO    ] 2026-10-28 19:44:42
[2026-10-28 19:44:42,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:44:42,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:44:42,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:44:42,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:44:42,825.825 INFO    ] time= 28/10/2026 19:44:42
[2026-10-28 19:44:42,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:44:42,844.844 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:44:43,018.018 INFO    ] No existing commands found in stream
[2026-10-28 19:44:48,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:44:48,052.052 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-28 19:44:50,639.639 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:44:50,642.642 INFO    ] Checking for system updates...
[2026-10-28 19:44:50,683.683 INFO    ] 200
[2026-10-28 19:44:50,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:44:50,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:44:50,754.754 INFO    ] No update needed
[2026-10-28 19:44:50,757.757 INFO    ] Checking for camera pi updates...
[2026-10-28 19:44:50,791.791 INFO    ] 200
[2026-10-28 19:44:50,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:44:50,840.840 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:44:50,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:44:50,929.929 INFO    ] No camera update needed
[2026-10-28 19:44:50,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:44:50,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:44:50,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:44:50,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:44:52,985.985 INFO    ] ================================================
[2026-10-28 19:44:53,000.000 INFO    ] Launching Daemon at Wed Oct 28 19:44:52 IST 2026
[2026-10-28 19:44:53,011.011 INFO    ] ================================================
[2026-10-28 19:44:53,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:44:53
[2026-10-28 19:44:54,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:44:54,473.473 INFO    ] Initializing speech engine...
[2026-10-28 19:44:54,478.478 INFO    ] 2026-10-28 19:44:54
[2026-10-28 19:44:54,741.741 INFO    ] 2026-10-28 19:44:54
[2026-10-28 19:44:54,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:44:55,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:44:55,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:44:55,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:44:55,540.540 INFO    ] time= 28/10/2026 19:44:55
[2026-10-28 19:44:55,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:44:55,650.650 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:44:55,850.850 INFO    ] No existing commands found in stream
[2026-10-28 19:45:00,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:45:00,865.865 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 19:45:02,720.720 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:45:02,723.723 INFO    ] Checking for system updates...
[2026-10-28 19:45:02,768.768 INFO    ] 200
[2026-10-28 19:45:02,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:45:02,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:45:02,833.833 INFO    ] No update needed
[2026-10-28 19:45:02,836.836 INFO    ] Checking for camera pi updates...
[2026-10-28 19:45:02,878.878 INFO    ] 200
[2026-10-28 19:45:02,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:45:02,935.935 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:45:03,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:45:03,026.026 INFO    ] No camera update needed
[2026-10-28 19:45:03,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:45:03,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:45:03,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:45:03,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:45:05,094.094 INFO    ] ================================================
[2026-10-28 19:45:05,110.110 INFO    ] Launching Daemon at Wed Oct 28 19:45:05 IST 2026
[2026-10-28 19:45:05,121.121 INFO    ] ================================================
[2026-10-28 19:45:05,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:45:05
[2026-10-28 19:45:06,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:45:06,596.596 INFO    ] Initializing speech engine...
[2026-10-28 19:45:06,612.612 INFO    ] 2026-10-28 19:45:06
[2026-10-28 19:45:06,886.886 INFO    ] 2026-10-28 19:45:06
[2026-10-28 19:45:06,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:45:07,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:45:07,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:45:07,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:45:07,504.504 INFO    ] time= 28/10/2026 19:45:07
[2026-10-28 19:45:07,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:45:07,528.528 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:45:07,677.677 INFO    ] No existing commands found in stream
[2026-10-28 19:45:12,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:45:12,692.692 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-28 19:45:13,654.654 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:45:13,657.657 INFO    ] Checking for system updates...
[2026-10-28 19:45:13,696.696 INFO    ] 200
[2026-10-28 19:45:13,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:45:13,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:45:13,754.754 INFO    ] No update needed
[2026-10-28 19:45:13,756.756 INFO    ] Checking for camera pi updates...
[2026-10-28 19:45:13,790.790 INFO    ] 200
[2026-10-28 19:45:13,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:45:13,833.833 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:45:13,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:45:13,916.916 INFO    ] No camera update needed
[2026-10-28 19:45:13,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:45:13,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:45:13,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:45:13,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:45:15,971.971 INFO    ] ================================================
[2026-10-28 19:45:15,987.987 INFO    ] Launching Daemon at Wed Oct 28 19:45:15 IST 2026
[2026-10-28 19:45:16,998.998 INFO    ] ================================================
[2026-10-28 19:45:16,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:45:16
[2026-10-28 19:45:17,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:45:17,457.457 INFO    ] Initializing speech engine...
[2026-10-28 19:45:17,463.463 INFO    ] 2026-10-28 19:45:17
[2026-10-28 19:45:17,722.722 INFO    ] 2026-10-28 19:45:17
[2026-10-28 19:45:17,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:45:18,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:45:18,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:45:18,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:45:18,422.422 INFO    ] time= 28/10/2026 19:45:18
[2026-10-28 19:45:18,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:45:18,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:45:18,700.700 INFO    ] No existing commands found in stream
[2026-10-28 19:45:23,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:45:23,721.721 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-28 19:45:26,517.517 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:45:26,520.520 INFO    ] Checking for system updates...
[2026-10-28 19:45:26,559.559 INFO    ] 200
[2026-10-28 19:45:26,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:45:26,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:45:26,618.618 INFO    ] No update needed
[2026-10-28 19:45:26,620.620 INFO    ] Checking for camera pi updates...
[2026-10-28 19:45:26,657.657 INFO    ] 200
[2026-10-28 19:45:26,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:45:26,700.700 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:45:26,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:45:26,790.790 INFO    ] No camera update needed
[2026-10-28 19:45:26,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:45:26,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:45:26,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:45:26,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:45:28,847.847 INFO    ] ================================================
[2026-10-28 19:45:28,863.863 INFO    ] Launching Daemon at Wed Oct 28 19:45:28 IST 2026
[2026-10-28 19:45:28,875.875 INFO    ] ================================================
[2026-10-28 19:45:29,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:45:29
[2026-10-28 19:45:30,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:45:30,479.479 INFO    ] Initializing speech engine...
[2026-10-28 19:45:30,488.488 INFO    ] 2026-10-28 19:45:30
[2026-10-28 19:45:30,766.766 INFO    ] 2026-10-28 19:45:30
[2026-10-28 19:45:30,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:45:31,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:45:31,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:45:31,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:45:31,337.337 INFO    ] time= 28/10/2026 19:45:31
[2026-10-28 19:45:31,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:45:31,376.376 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:45:31,520.520 INFO    ] No existing commands found in stream
[2026-10-28 19:45:36,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:45:36,554.554 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-28 19:45:41,175.175 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:45:41,179.179 INFO    ] Checking for system updates...
[2026-10-28 19:45:41,219.219 INFO    ] 200
[2026-10-28 19:45:41,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:45:41,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:45:41,280.280 INFO    ] No update needed
[2026-10-28 19:45:41,282.282 INFO    ] Checking for camera pi updates...
[2026-10-28 19:45:41,317.317 INFO    ] 200
[2026-10-28 19:45:41,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:45:41,360.360 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:45:41,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:45:41,541.541 INFO    ] No camera update needed
[2026-10-28 19:45:41,544.544 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:45:41,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:45:41,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:45:41,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:45:43,597.597 INFO    ] ================================================
[2026-10-28 19:45:43,612.612 INFO    ] Launching Daemon at Wed Oct 28 19:45:43 IST 2026
[2026-10-28 19:45:43,623.623 INFO    ] ================================================
[2026-10-28 19:45:44,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:45:44
[2026-10-28 19:45:44,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:45:45,069.069 INFO    ] Initializing speech engine...
[2026-10-28 19:45:45,077.077 INFO    ] 2026-10-28 19:45:45
[2026-10-28 19:45:45,323.323 INFO    ] 2026-10-28 19:45:45
[2026-10-28 19:45:45,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:45:45,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:45:45,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:45:45,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:45:45,937.937 INFO    ] time= 28/10/2026 19:45:45
[2026-10-28 19:45:45,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:45:45,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:45:46,150.150 INFO    ] No existing commands found in stream
[2026-10-28 19:45:51,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:45:51,177.177 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-28 19:45:54,848.848 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:45:54,851.851 INFO    ] Checking for system updates...
[2026-10-28 19:45:54,887.887 INFO    ] 200
[2026-10-28 19:45:54,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:45:54,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:45:54,951.951 INFO    ] No update needed
[2026-10-28 19:45:54,953.953 INFO    ] Checking for camera pi updates...
[2026-10-28 19:45:54,990.990 INFO    ] 200
[2026-10-28 19:45:54,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:45:55,034.034 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:45:55,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:45:55,118.118 INFO    ] No camera update needed
[2026-10-28 19:45:55,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:45:55,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:45:55,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:45:55,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:45:57,177.177 INFO    ] ================================================
[2026-10-28 19:45:57,193.193 INFO    ] Launching Daemon at Wed Oct 28 19:45:57 IST 2026
[2026-10-28 19:45:57,205.205 INFO    ] ================================================
[2026-10-28 19:45:57,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:45:57
[2026-10-28 19:45:58,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:45:58,849.849 INFO    ] Initializing speech engine...
[2026-10-28 19:45:58,860.860 INFO    ] 2026-10-28 19:45:58
[2026-10-28 19:45:59,140.140 INFO    ] 2026-10-28 19:45:59
[2026-10-28 19:45:59,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:45:59,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:45:59,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:45:59,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:45:59,726.726 INFO    ] time= 28/10/2026 19:45:59
[2026-10-28 19:45:59,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:45:59,769.769 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:45:59,933.933 INFO    ] No existing commands found in stream
[2026-10-28 19:46:04,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:46:04,962.962 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 19:46:06,465.465 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:46:06,468.468 INFO    ] Checking for system updates...
[2026-10-28 19:46:06,504.504 INFO    ] 200
[2026-10-28 19:46:06,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:46:06,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:46:06,561.561 INFO    ] No update needed
[2026-10-28 19:46:06,563.563 INFO    ] Checking for camera pi updates...
[2026-10-28 19:46:06,597.597 INFO    ] 200
[2026-10-28 19:46:06,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:46:06,640.640 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:46:06,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:46:06,726.726 INFO    ] No camera update needed
[2026-10-28 19:46:06,728.728 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:46:06,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:46:06,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:46:06,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:46:08,785.785 INFO    ] ================================================
[2026-10-28 19:46:08,800.800 INFO    ] Launching Daemon at Wed Oct 28 19:46:08 IST 2026
[2026-10-28 19:46:08,811.811 INFO    ] ================================================
[2026-10-28 19:46:09,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:46:09
[2026-10-28 19:46:09,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:46:10,241.241 INFO    ] Initializing speech engine...
[2026-10-28 19:46:10,250.250 INFO    ] 2026-10-28 19:46:10
[2026-10-28 19:46:10,499.499 INFO    ] 2026-10-28 19:46:10
[2026-10-28 19:46:10,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:46:10,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:46:10,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:46:11,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:46:11,080.080 INFO    ] time= 28/10/2026 19:46:11
[2026-10-28 19:46:11,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:46:11,116.116 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:46:11,279.279 INFO    ] No existing commands found in stream
[2026-10-28 19:46:16,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:46:16,312.312 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-28 19:46:18,757.757 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:46:18,760.760 INFO    ] Checking for system updates...
[2026-10-28 19:46:18,796.796 INFO    ] 200
[2026-10-28 19:46:18,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:46:18,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:46:18,853.853 INFO    ] No update needed
[2026-10-28 19:46:18,856.856 INFO    ] Checking for camera pi updates...
[2026-10-28 19:46:18,889.889 INFO    ] 200
[2026-10-28 19:46:18,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:46:18,939.939 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:46:19,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:46:19,045.045 INFO    ] No camera update needed
[2026-10-28 19:46:19,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:46:19,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:46:19,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:46:19,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:46:21,103.103 INFO    ] ================================================
[2026-10-28 19:46:21,118.118 INFO    ] Launching Daemon at Wed Oct 28 19:46:21 IST 2026
[2026-10-28 19:46:21,129.129 INFO    ] ================================================
[2026-10-28 19:46:21,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:46:21
[2026-10-28 19:46:22,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:46:22,574.574 INFO    ] Initializing speech engine...
[2026-10-28 19:46:22,583.583 INFO    ] 2026-10-28 19:46:22
[2026-10-28 19:46:22,831.831 INFO    ] 2026-10-28 19:46:22
[2026-10-28 19:46:22,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:46:23,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:46:23,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:46:23,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:46:23,395.395 INFO    ] time= 28/10/2026 19:46:23
[2026-10-28 19:46:23,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:46:23,419.419 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:46:23,573.573 INFO    ] No existing commands found in stream
[2026-10-28 19:46:28,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:46:28,608.608 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 19:46:31,807.807 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:46:31,810.810 INFO    ] Checking for system updates...
[2026-10-28 19:46:31,849.849 INFO    ] 200
[2026-10-28 19:46:31,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:46:31,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:46:31,912.912 INFO    ] No update needed
[2026-10-28 19:46:31,921.921 INFO    ] Checking for camera pi updates...
[2026-10-28 19:46:31,960.960 INFO    ] 200
[2026-10-28 19:46:31,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:46:32,015.015 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:46:32,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:46:32,122.122 INFO    ] No camera update needed
[2026-10-28 19:46:32,125.125 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:46:32,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:46:32,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:46:32,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:46:34,184.184 INFO    ] ================================================
[2026-10-28 19:46:34,199.199 INFO    ] Launching Daemon at Wed Oct 28 19:46:34 IST 2026
[2026-10-28 19:46:34,210.210 INFO    ] ================================================
[2026-10-28 19:46:34,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:46:34
[2026-10-28 19:46:35,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:46:35,670.670 INFO    ] Initializing speech engine...
[2026-10-28 19:46:35,679.679 INFO    ] 2026-10-28 19:46:35
[2026-10-28 19:46:35,928.928 INFO    ] 2026-10-28 19:46:35
[2026-10-28 19:46:35,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:46:36,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:46:36,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:46:36,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:46:36,492.492 INFO    ] time= 28/10/2026 19:46:36
[2026-10-28 19:46:36,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:46:36,539.539 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:46:36,690.690 INFO    ] No existing commands found in stream
[2026-10-28 19:46:41,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:46:41,724.724 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-10-28 19:46:45,157.157 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:46:45,160.160 INFO    ] Checking for system updates...
[2026-10-28 19:46:45,202.202 INFO    ] 200
[2026-10-28 19:46:45,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:46:45,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:46:45,265.265 INFO    ] No update needed
[2026-10-28 19:46:45,267.267 INFO    ] Checking for camera pi updates...
[2026-10-28 19:46:45,304.304 INFO    ] 200
[2026-10-28 19:46:45,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:46:45,354.354 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:46:45,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:46:45,438.438 INFO    ] No camera update needed
[2026-10-28 19:46:45,440.440 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:46:45,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:46:45,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:46:45,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:46:47,498.498 INFO    ] ================================================
[2026-10-28 19:46:47,514.514 INFO    ] Launching Daemon at Wed Oct 28 19:46:47 IST 2026
[2026-10-28 19:46:47,525.525 INFO    ] ================================================
[2026-10-28 19:46:48,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:46:48
[2026-10-28 19:46:48,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:46:48,983.983 INFO    ] Initializing speech engine...
[2026-10-28 19:46:48,996.996 INFO    ] 2026-10-28 19:46:48
[2026-10-28 19:46:49,262.262 INFO    ] 2026-10-28 19:46:49
[2026-10-28 19:46:49,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:46:49,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:46:49,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:46:49,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:46:49,896.896 INFO    ] time= 28/10/2026 19:46:49
[2026-10-28 19:46:49,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:46:49,922.922 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:46:50,078.078 INFO    ] No existing commands found in stream
[2026-10-28 19:46:55,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:46:55,099.099 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-28 19:46:58,198.198 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:46:58,200.200 INFO    ] Checking for system updates...
[2026-10-28 19:46:58,237.237 INFO    ] 200
[2026-10-28 19:46:58,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:46:58,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:46:58,302.302 INFO    ] No update needed
[2026-10-28 19:46:58,305.305 INFO    ] Checking for camera pi updates...
[2026-10-28 19:46:58,339.339 INFO    ] 200
[2026-10-28 19:46:58,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:46:58,384.384 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:46:58,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:46:58,485.485 INFO    ] No camera update needed
[2026-10-28 19:46:58,487.487 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:46:58,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:46:58,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:46:58,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:47:00,542.542 INFO    ] ================================================
[2026-10-28 19:47:00,558.558 INFO    ] Launching Daemon at Wed Oct 28 19:47:00 IST 2026
[2026-10-28 19:47:00,570.570 INFO    ] ================================================
[2026-10-28 19:47:01,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:47:01
[2026-10-28 19:47:01,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:47:02,026.026 INFO    ] Initializing speech engine...
[2026-10-28 19:47:02,031.031 INFO    ] 2026-10-28 19:47:02
[2026-10-28 19:47:02,454.454 INFO    ] 2026-10-28 19:47:02
[2026-10-28 19:47:02,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:47:02,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:47:02,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:47:03,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:47:03,136.136 INFO    ] time= 28/10/2026 19:47:03
[2026-10-28 19:47:03,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:47:03,179.179 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:47:03,340.340 INFO    ] No existing commands found in stream
[2026-10-28 19:47:08,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:47:08,368.368 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-28 19:47:12,938.938 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:47:12,940.940 INFO    ] Checking for system updates...
[2026-10-28 19:47:12,980.980 INFO    ] 200
[2026-10-28 19:47:12,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:47:13,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:47:13,040.040 INFO    ] No update needed
[2026-10-28 19:47:13,042.042 INFO    ] Checking for camera pi updates...
[2026-10-28 19:47:13,078.078 INFO    ] 200
[2026-10-28 19:47:13,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:47:13,127.127 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:47:13,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:47:13,203.203 INFO    ] No camera update needed
[2026-10-28 19:47:13,206.206 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:47:13,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:47:13,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:47:13,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:47:15,262.262 INFO    ] ================================================
[2026-10-28 19:47:15,278.278 INFO    ] Launching Daemon at Wed Oct 28 19:47:15 IST 2026
[2026-10-28 19:47:15,289.289 INFO    ] ================================================
[2026-10-28 19:47:15,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:47:15
[2026-10-28 19:47:16,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:47:16,734.734 INFO    ] Initializing speech engine...
[2026-10-28 19:47:16,751.751 INFO    ] 2026-10-28 19:47:16
[2026-10-28 19:47:17,039.039 INFO    ] 2026-10-28 19:47:17
[2026-10-28 19:47:17,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:47:17,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:47:17,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:47:17,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:47:17,582.582 INFO    ] time= 28/10/2026 19:47:17
[2026-10-28 19:47:17,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:47:17,695.695 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:47:17,840.840 INFO    ] No existing commands found in stream
[2026-10-28 19:47:22,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:47:22,857.857 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-28 19:47:24,275.275 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:47:24,278.278 INFO    ] Checking for system updates...
[2026-10-28 19:47:24,623.623 INFO    ] 200
[2026-10-28 19:47:24,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:47:24,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:47:24,681.681 INFO    ] No update needed
[2026-10-28 19:47:24,684.684 INFO    ] Checking for camera pi updates...
[2026-10-28 19:47:24,718.718 INFO    ] 200
[2026-10-28 19:47:24,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:47:24,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:47:24,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:47:24,872.872 INFO    ] No camera update needed
[2026-10-28 19:47:24,875.875 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:47:24,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:47:24,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:47:24,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:47:26,928.928 INFO    ] ================================================
[2026-10-28 19:47:26,943.943 INFO    ] Launching Daemon at Wed Oct 28 19:47:26 IST 2026
[2026-10-28 19:47:26,955.955 INFO    ] ================================================
[2026-10-28 19:47:27,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:47:27
[2026-10-28 19:47:28,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:47:28,546.546 INFO    ] Initializing speech engine...
[2026-10-28 19:47:28,554.554 INFO    ] 2026-10-28 19:47:28
[2026-10-28 19:47:28,806.806 INFO    ] 2026-10-28 19:47:28
[2026-10-28 19:47:28,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:47:29,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:47:29,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:47:29,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:47:29,384.384 INFO    ] time= 28/10/2026 19:47:29
[2026-10-28 19:47:29,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:47:29,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:47:29,576.576 INFO    ] No existing commands found in stream
[2026-10-28 19:47:34,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:47:34,608.608 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-28 19:47:37,022.022 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:47:37,025.025 INFO    ] Checking for system updates...
[2026-10-28 19:47:37,060.060 INFO    ] 200
[2026-10-28 19:47:37,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:47:37,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:47:37,117.117 INFO    ] No update needed
[2026-10-28 19:47:37,119.119 INFO    ] Checking for camera pi updates...
[2026-10-28 19:47:37,153.153 INFO    ] 200
[2026-10-28 19:47:37,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:47:37,201.201 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:47:37,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:47:37,282.282 INFO    ] No camera update needed
[2026-10-28 19:47:37,285.285 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:47:37,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:47:37,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:47:37,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:47:39,340.340 INFO    ] ================================================
[2026-10-28 19:47:39,355.355 INFO    ] Launching Daemon at Wed Oct 28 19:47:39 IST 2026
[2026-10-28 19:47:39,367.367 INFO    ] ================================================
[2026-10-28 19:47:40,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:47:40
[2026-10-28 19:47:40,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:47:41,032.032 INFO    ] Initializing speech engine...
[2026-10-28 19:47:41,040.040 INFO    ] 2026-10-28 19:47:41
[2026-10-28 19:47:41,315.315 INFO    ] 2026-10-28 19:47:41
[2026-10-28 19:47:41,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:47:41,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:47:41,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:47:41,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:47:41,896.896 INFO    ] time= 28/10/2026 19:47:41
[2026-10-28 19:47:41,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:47:41,935.935 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:47:42,062.062 INFO    ] No existing commands found in stream
[2026-10-28 19:47:47,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:47:47,101.101 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 19:47:47,901.901 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:47:47,904.904 INFO    ] Checking for system updates...
[2026-10-28 19:47:47,944.944 INFO    ] 200
[2026-10-28 19:47:47,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:47:48,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:47:48,008.008 INFO    ] No update needed
[2026-10-28 19:47:48,011.011 INFO    ] Checking for camera pi updates...
[2026-10-28 19:47:48,045.045 INFO    ] 200
[2026-10-28 19:47:48,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:47:48,092.092 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:47:48,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:47:48,271.271 INFO    ] No camera update needed
[2026-10-28 19:47:48,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:47:48,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:47:48,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:47:48,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:47:50,325.325 INFO    ] ================================================
[2026-10-28 19:47:50,340.340 INFO    ] Launching Daemon at Wed Oct 28 19:47:50 IST 2026
[2026-10-28 19:47:50,351.351 INFO    ] ================================================
[2026-10-28 19:47:50,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:47:50
[2026-10-28 19:47:51,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:47:51,800.800 INFO    ] Initializing speech engine...
[2026-10-28 19:47:51,811.811 INFO    ] 2026-10-28 19:47:51
[2026-10-28 19:47:52,071.071 INFO    ] 2026-10-28 19:47:52
[2026-10-28 19:47:52,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:47:52,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:47:52,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:47:52,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:47:52,614.614 INFO    ] time= 28/10/2026 19:47:52
[2026-10-28 19:47:52,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:47:52,644.644 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:47:52,793.793 INFO    ] No existing commands found in stream
[2026-10-28 19:47:57,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:47:57,826.826 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-28 19:48:00,719.719 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:48:00,722.722 INFO    ] Checking for system updates...
[2026-10-28 19:48:00,760.760 INFO    ] 200
[2026-10-28 19:48:00,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:48:00,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:48:00,828.828 INFO    ] No update needed
[2026-10-28 19:48:00,831.831 INFO    ] Checking for camera pi updates...
[2026-10-28 19:48:00,866.866 INFO    ] 200
[2026-10-28 19:48:00,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:48:00,910.910 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:48:00,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:48:00,994.994 INFO    ] No camera update needed
[2026-10-28 19:48:00,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:48:01,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:48:01,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:48:01,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:48:03,058.058 INFO    ] ================================================
[2026-10-28 19:48:03,074.074 INFO    ] Launching Daemon at Wed Oct 28 19:48:03 IST 2026
[2026-10-28 19:48:03,085.085 INFO    ] ================================================
[2026-10-28 19:48:03,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:48:03
[2026-10-28 19:48:04,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:48:04,569.569 INFO    ] Initializing speech engine...
[2026-10-28 19:48:04,580.580 INFO    ] 2026-10-28 19:48:04
[2026-10-28 19:48:04,842.842 INFO    ] 2026-10-28 19:48:04
[2026-10-28 19:48:04,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:48:05,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:48:05,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:48:05,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:48:05,585.585 INFO    ] time= 28/10/2026 19:48:05
[2026-10-28 19:48:05,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:48:05,660.660 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:48:05,846.846 INFO    ] No existing commands found in stream
[2026-10-28 19:48:10,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:48:10,859.859 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-28 19:48:11,736.736 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:48:11,739.739 INFO    ] Checking for system updates...
[2026-10-28 19:48:11,780.780 INFO    ] 200
[2026-10-28 19:48:11,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:48:11,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:48:11,840.840 INFO    ] No update needed
[2026-10-28 19:48:11,842.842 INFO    ] Checking for camera pi updates...
[2026-10-28 19:48:11,880.880 INFO    ] 200
[2026-10-28 19:48:11,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:48:11,928.928 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:48:12,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:48:12,033.033 INFO    ] No camera update needed
[2026-10-28 19:48:12,036.036 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:48:12,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:48:12,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:48:12,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:48:14,090.090 INFO    ] ================================================
[2026-10-28 19:48:14,105.105 INFO    ] Launching Daemon at Wed Oct 28 19:48:14 IST 2026
[2026-10-28 19:48:14,115.115 INFO    ] ================================================
[2026-10-28 19:48:14,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:48:14
[2026-10-28 19:48:15,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:48:15,529.529 INFO    ] Initializing speech engine...
[2026-10-28 19:48:15,544.544 INFO    ] 2026-10-28 19:48:15
[2026-10-28 19:48:15,831.831 INFO    ] 2026-10-28 19:48:15
[2026-10-28 19:48:15,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:48:16,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:48:16,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:48:16,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:48:16,358.358 INFO    ] time= 28/10/2026 19:48:16
[2026-10-28 19:48:16,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:48:16,456.456 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:48:16,569.569 INFO    ] No existing commands found in stream
[2026-10-28 19:48:21,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:48:21,611.611 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-10-28 19:48:22,842.842 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:48:22,844.844 INFO    ] Checking for system updates...
[2026-10-28 19:48:22,897.897 INFO    ] 200
[2026-10-28 19:48:22,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:48:22,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:48:22,956.956 INFO    ] No update needed
[2026-10-28 19:48:22,958.958 INFO    ] Checking for camera pi updates...
[2026-10-28 19:48:22,992.992 INFO    ] 200
[2026-10-28 19:48:22,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:48:23,035.035 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:48:23,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:48:23,098.098 INFO    ] No camera update needed
[2026-10-28 19:48:23,101.101 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:48:23,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:48:23,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:48:23,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:48:25,154.154 INFO    ] ================================================
[2026-10-28 19:48:25,170.170 INFO    ] Launching Daemon at Wed Oct 28 19:48:25 IST 2026
[2026-10-28 19:48:25,181.181 INFO    ] ================================================
[2026-10-28 19:48:25,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:48:25
[2026-10-28 19:48:26,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:48:26,823.823 INFO    ] Initializing speech engine...
[2026-10-28 19:48:26,836.836 INFO    ] 2026-10-28 19:48:26
[2026-10-28 19:48:27,147.147 INFO    ] 2026-10-28 19:48:27
[2026-10-28 19:48:27,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:48:27,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:48:27,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:48:27,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:48:27,867.867 INFO    ] time= 28/10/2026 19:48:27
[2026-10-28 19:48:27,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:48:27,982.982 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:48:28,179.179 INFO    ] No existing commands found in stream
[2026-10-28 19:48:33,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:48:33,219.219 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 19:48:36,955.955 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:48:36,958.958 INFO    ] Checking for system updates...
[2026-10-28 19:48:36,994.994 INFO    ] 200
[2026-10-28 19:48:36,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:48:37,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:48:37,061.061 INFO    ] No update needed
[2026-10-28 19:48:37,064.064 INFO    ] Checking for camera pi updates...
[2026-10-28 19:48:37,103.103 INFO    ] 200
[2026-10-28 19:48:37,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:48:37,151.151 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:48:37,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:48:37,240.240 INFO    ] No camera update needed
[2026-10-28 19:48:37,243.243 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:48:37,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:48:37,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:48:37,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:48:39,299.299 INFO    ] ================================================
[2026-10-28 19:48:39,314.314 INFO    ] Launching Daemon at Wed Oct 28 19:48:39 IST 2026
[2026-10-28 19:48:39,325.325 INFO    ] ================================================
[2026-10-28 19:48:39,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:48:39
[2026-10-28 19:48:40,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:48:40,966.966 INFO    ] Initializing speech engine...
[2026-10-28 19:48:40,977.977 INFO    ] 2026-10-28 19:48:40
[2026-10-28 19:48:41,287.287 INFO    ] 2026-10-28 19:48:41
[2026-10-28 19:48:41,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:48:41,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:48:41,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:48:41,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:48:42,028.028 INFO    ] time= 28/10/2026 19:48:41
[2026-10-28 19:48:42,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:48:42,117.117 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:48:42,339.339 INFO    ] No existing commands found in stream
[2026-10-28 19:48:47,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:48:47,372.372 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-28 19:48:50,544.544 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:48:50,547.547 INFO    ] Checking for system updates...
[2026-10-28 19:48:50,583.583 INFO    ] 200
[2026-10-28 19:48:50,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:48:50,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:48:50,648.648 INFO    ] No update needed
[2026-10-28 19:48:50,650.650 INFO    ] Checking for camera pi updates...
[2026-10-28 19:48:50,688.688 INFO    ] 200
[2026-10-28 19:48:50,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:48:50,736.736 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:48:50,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:48:50,818.818 INFO    ] No camera update needed
[2026-10-28 19:48:50,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:48:50,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:48:50,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:48:50,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:48:52,875.875 INFO    ] ================================================
[2026-10-28 19:48:52,891.891 INFO    ] Launching Daemon at Wed Oct 28 19:48:52 IST 2026
[2026-10-28 19:48:52,902.902 INFO    ] ================================================
[2026-10-28 19:48:53,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:48:53
[2026-10-28 19:48:54,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:48:54,464.464 INFO    ] Initializing speech engine...
[2026-10-28 19:48:54,470.470 INFO    ] 2026-10-28 19:48:54
[2026-10-28 19:48:54,751.751 INFO    ] 2026-10-28 19:48:54
[2026-10-28 19:48:54,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:48:55,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:48:55,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:48:55,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:48:55,522.522 INFO    ] time= 28/10/2026 19:48:55
[2026-10-28 19:48:55,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:48:55,622.622 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:48:55,772.772 INFO    ] No existing commands found in stream
[2026-10-28 19:49:00,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:49:00,786.786 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-28 19:49:03,822.822 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:49:03,826.826 INFO    ] Checking for system updates...
[2026-10-28 19:49:03,863.863 INFO    ] 200
[2026-10-28 19:49:03,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:49:03,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:49:03,923.923 INFO    ] No update needed
[2026-10-28 19:49:03,926.926 INFO    ] Checking for camera pi updates...
[2026-10-28 19:49:03,961.961 INFO    ] 200
[2026-10-28 19:49:03,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:49:04,007.007 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:49:04,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:49:04,111.111 INFO    ] No camera update needed
[2026-10-28 19:49:04,114.114 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:49:04,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:49:04,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:49:04,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:49:06,171.171 INFO    ] ================================================
[2026-10-28 19:49:06,188.188 INFO    ] Launching Daemon at Wed Oct 28 19:49:06 IST 2026
[2026-10-28 19:49:06,199.199 INFO    ] ================================================
[2026-10-28 19:49:06,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:49:06
[2026-10-28 19:49:07,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:49:07,612.612 INFO    ] Initializing speech engine...
[2026-10-28 19:49:07,621.621 INFO    ] 2026-10-28 19:49:07
[2026-10-28 19:49:07,919.919 INFO    ] 2026-10-28 19:49:07
[2026-10-28 19:49:07,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:49:08,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:49:08,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:49:08,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:49:08,337.337 INFO    ] time= 28/10/2026 19:49:08
[2026-10-28 19:49:08,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:49:08,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:49:08,531.531 INFO    ] No existing commands found in stream
[2026-10-28 19:49:13,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:49:13,559.559 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 19:49:15,774.774 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:49:15,777.777 INFO    ] Checking for system updates...
[2026-10-28 19:49:15,813.813 INFO    ] 200
[2026-10-28 19:49:15,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:49:15,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:49:15,880.880 INFO    ] No update needed
[2026-10-28 19:49:15,883.883 INFO    ] Checking for camera pi updates...
[2026-10-28 19:49:15,918.918 INFO    ] 200
[2026-10-28 19:49:15,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:49:15,962.962 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:49:16,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:49:16,059.059 INFO    ] No camera update needed
[2026-10-28 19:49:16,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:49:16,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:49:16,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:49:16,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:49:18,120.120 INFO    ] ================================================
[2026-10-28 19:49:18,136.136 INFO    ] Launching Daemon at Wed Oct 28 19:49:18 IST 2026
[2026-10-28 19:49:18,147.147 INFO    ] ================================================
[2026-10-28 19:49:18,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:49:18
[2026-10-28 19:49:19,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:49:19,607.607 INFO    ] Initializing speech engine...
[2026-10-28 19:49:19,615.615 INFO    ] 2026-10-28 19:49:19
[2026-10-28 19:49:19,877.877 INFO    ] 2026-10-28 19:49:19
[2026-10-28 19:49:19,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:49:20,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:49:20,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:49:20,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:49:20,437.437 INFO    ] time= 28/10/2026 19:49:20
[2026-10-28 19:49:20,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:49:20,472.472 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:49:20,600.600 INFO    ] No existing commands found in stream
[2026-10-28 19:49:25,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:49:25,633.633 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-28 19:49:30,848.848 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:49:30,850.850 INFO    ] Checking for system updates...
[2026-10-28 19:49:30,891.891 INFO    ] 200
[2026-10-28 19:49:30,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:49:30,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:49:30,957.957 INFO    ] No update needed
[2026-10-28 19:49:30,959.959 INFO    ] Checking for camera pi updates...
[2026-10-28 19:49:30,993.993 INFO    ] 200
[2026-10-28 19:49:30,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:49:31,036.036 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:49:31,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:49:31,128.128 INFO    ] No camera update needed
[2026-10-28 19:49:31,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:49:31,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:49:31,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:49:31,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:49:33,189.189 INFO    ] ================================================
[2026-10-28 19:49:33,205.205 INFO    ] Launching Daemon at Wed Oct 28 19:49:33 IST 2026
[2026-10-28 19:49:33,218.218 INFO    ] ================================================
[2026-10-28 19:49:33,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:49:33
[2026-10-28 19:49:34,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:49:34,870.870 INFO    ] Initializing speech engine...
[2026-10-28 19:49:34,879.879 INFO    ] 2026-10-28 19:49:34
[2026-10-28 19:49:35,164.164 INFO    ] 2026-10-28 19:49:35
[2026-10-28 19:49:35,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:49:35,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:49:35,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:49:35,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:49:35,731.731 INFO    ] time= 28/10/2026 19:49:35
[2026-10-28 19:49:35,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:49:35,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:49:35,896.896 INFO    ] No existing commands found in stream
[2026-10-28 19:49:40,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:49:40,925.925 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-28 19:49:41,638.638 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:49:41,640.640 INFO    ] Checking for system updates...
[2026-10-28 19:49:41,676.676 INFO    ] 200
[2026-10-28 19:49:41,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:49:41,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:49:41,733.733 INFO    ] No update needed
[2026-10-28 19:49:41,735.735 INFO    ] Checking for camera pi updates...
[2026-10-28 19:49:41,770.770 INFO    ] 200
[2026-10-28 19:49:41,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:49:41,812.812 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:49:41,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:49:41,895.895 INFO    ] No camera update needed
[2026-10-28 19:49:41,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:49:41,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:49:41,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:49:41,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:49:43,950.950 INFO    ] ================================================
[2026-10-28 19:49:43,966.966 INFO    ] Launching Daemon at Wed Oct 28 19:49:43 IST 2026
[2026-10-28 19:49:43,978.978 INFO    ] ================================================
[2026-10-28 19:49:44,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:49:44
[2026-10-28 19:49:45,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:49:45,618.618 INFO    ] Initializing speech engine...
[2026-10-28 19:49:45,625.625 INFO    ] 2026-10-28 19:49:45
[2026-10-28 19:49:45,948.948 INFO    ] 2026-10-28 19:49:45
[2026-10-28 19:49:46,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:49:46,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:49:46,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:49:46,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:49:46,658.658 INFO    ] time= 28/10/2026 19:49:46
[2026-10-28 19:49:46,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:49:46,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:49:46,893.893 INFO    ] No existing commands found in stream
[2026-10-28 19:49:51,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:49:51,910.910 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-28 19:49:52,558.558 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:49:52,560.560 INFO    ] Checking for system updates...
[2026-10-28 19:49:52,596.596 INFO    ] 200
[2026-10-28 19:49:52,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:49:52,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:49:52,653.653 INFO    ] No update needed
[2026-10-28 19:49:52,655.655 INFO    ] Checking for camera pi updates...
[2026-10-28 19:49:52,691.691 INFO    ] 200
[2026-10-28 19:49:52,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:49:52,735.735 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:49:52,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:49:52,914.914 INFO    ] No camera update needed
[2026-10-28 19:49:52,917.917 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:49:52,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:49:52,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:49:52,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:49:54,970.970 INFO    ] ================================================
[2026-10-28 19:49:54,986.986 INFO    ] Launching Daemon at Wed Oct 28 19:49:54 IST 2026
[2026-10-28 19:49:55,997.997 INFO    ] ================================================
[2026-10-28 19:49:55,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:49:55
[2026-10-28 19:49:56,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:49:56,422.422 INFO    ] Initializing speech engine...
[2026-10-28 19:49:56,430.430 INFO    ] 2026-10-28 19:49:56
[2026-10-28 19:49:56,681.681 INFO    ] 2026-10-28 19:49:56
[2026-10-28 19:49:56,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:49:57,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:49:57,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:49:57,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:49:57,298.298 INFO    ] time= 28/10/2026 19:49:57
[2026-10-28 19:49:57,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:49:57,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:49:57,510.510 INFO    ] No existing commands found in stream
[2026-10-28 19:50:02,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:50:02,529.529 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 19:50:09,207.207 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:50:09,209.209 INFO    ] Checking for system updates...
[2026-10-28 19:50:09,246.246 INFO    ] 200
[2026-10-28 19:50:09,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:50:09,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:50:09,302.302 INFO    ] No update needed
[2026-10-28 19:50:09,305.305 INFO    ] Checking for camera pi updates...
[2026-10-28 19:50:09,338.338 INFO    ] 200
[2026-10-28 19:50:09,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:50:09,380.380 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:50:09,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:50:09,482.482 INFO    ] No camera update needed
[2026-10-28 19:50:09,485.485 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:50:09,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:50:09,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:50:09,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:50:11,542.542 INFO    ] ================================================
[2026-10-28 19:50:11,558.558 INFO    ] Launching Daemon at Wed Oct 28 19:50:11 IST 2026
[2026-10-28 19:50:11,569.569 INFO    ] ================================================
[2026-10-28 19:50:12,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:50:12
[2026-10-28 19:50:12,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:50:12,988.988 INFO    ] Initializing speech engine...
[2026-10-28 19:50:12,997.997 INFO    ] 2026-10-28 19:50:12
[2026-10-28 19:50:13,257.257 INFO    ] 2026-10-28 19:50:13
[2026-10-28 19:50:13,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:50:13,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:50:13,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:50:13,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:50:13,799.799 INFO    ] time= 28/10/2026 19:50:13
[2026-10-28 19:50:13,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:50:13,869.869 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:50:14,002.002 INFO    ] No existing commands found in stream
[2026-10-28 19:50:19,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:50:19,027.027 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-28 19:50:23,317.317 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:50:23,319.319 INFO    ] Checking for system updates...
[2026-10-28 19:50:23,358.358 INFO    ] 200
[2026-10-28 19:50:23,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:50:23,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:50:23,421.421 INFO    ] No update needed
[2026-10-28 19:50:23,423.423 INFO    ] Checking for camera pi updates...
[2026-10-28 19:50:23,459.459 INFO    ] 200
[2026-10-28 19:50:23,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:50:23,509.509 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:50:23,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:50:23,607.607 INFO    ] No camera update needed
[2026-10-28 19:50:23,609.609 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:50:23,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:50:23,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:50:23,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:50:25,662.662 INFO    ] ================================================
[2026-10-28 19:50:25,679.679 INFO    ] Launching Daemon at Wed Oct 28 19:50:25 IST 2026
[2026-10-28 19:50:25,690.690 INFO    ] ================================================
[2026-10-28 19:50:26,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:50:26
[2026-10-28 19:50:26,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:50:27,158.158 INFO    ] Initializing speech engine...
[2026-10-28 19:50:27,168.168 INFO    ] 2026-10-28 19:50:27
[2026-10-28 19:50:27,419.419 INFO    ] 2026-10-28 19:50:27
[2026-10-28 19:50:27,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:50:27,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:50:27,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:50:28,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:50:28,044.044 INFO    ] time= 28/10/2026 19:50:28
[2026-10-28 19:50:28,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:50:28,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:50:28,233.233 INFO    ] No existing commands found in stream
[2026-10-28 19:50:33,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:50:33,261.261 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-28 19:50:37,035.035 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:50:37,038.038 INFO    ] Checking for system updates...
[2026-10-28 19:50:37,073.073 INFO    ] 200
[2026-10-28 19:50:37,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:50:37,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:50:37,136.136 INFO    ] No update needed
[2026-10-28 19:50:37,139.139 INFO    ] Checking for camera pi updates...
[2026-10-28 19:50:37,172.172 INFO    ] 200
[2026-10-28 19:50:37,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:50:37,215.215 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:50:37,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:50:37,303.303 INFO    ] No camera update needed
[2026-10-28 19:50:37,306.306 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:50:37,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:50:37,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:50:37,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:50:39,360.360 INFO    ] ================================================
[2026-10-28 19:50:39,376.376 INFO    ] Launching Daemon at Wed Oct 28 19:50:39 IST 2026
[2026-10-28 19:50:39,388.388 INFO    ] ================================================
[2026-10-28 19:50:39,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:50:39
[2026-10-28 19:50:40,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:50:40,884.884 INFO    ] Initializing speech engine...
[2026-10-28 19:50:40,895.895 INFO    ] 2026-10-28 19:50:40
[2026-10-28 19:50:41,167.167 INFO    ] 2026-10-28 19:50:41
[2026-10-28 19:50:41,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:50:41,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:50:41,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:50:41,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:50:41,749.749 INFO    ] time= 28/10/2026 19:50:41
[2026-10-28 19:50:41,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:50:41,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:50:41,968.968 INFO    ] No existing commands found in stream
[2026-10-28 19:50:46,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:50:46,996.996 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-28 19:50:49,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:50:49,108.108 INFO    ] Checking for system updates...
[2026-10-28 19:50:49,145.145 INFO    ] 200
[2026-10-28 19:50:49,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:50:49,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:50:49,205.205 INFO    ] No update needed
[2026-10-28 19:50:49,207.207 INFO    ] Checking for camera pi updates...
[2026-10-28 19:50:49,241.241 INFO    ] 200
[2026-10-28 19:50:49,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:50:49,284.284 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:50:49,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:50:49,392.392 INFO    ] No camera update needed
[2026-10-28 19:50:49,394.394 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:50:49,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:50:49,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:50:49,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:50:51,452.452 INFO    ] ================================================
[2026-10-28 19:50:51,467.467 INFO    ] Launching Daemon at Wed Oct 28 19:50:51 IST 2026
[2026-10-28 19:50:51,479.479 INFO    ] ================================================
[2026-10-28 19:50:52,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:50:52
[2026-10-28 19:50:52,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:50:53,033.033 INFO    ] Initializing speech engine...
[2026-10-28 19:50:53,046.046 INFO    ] 2026-10-28 19:50:53
[2026-10-28 19:50:53,327.327 INFO    ] 2026-10-28 19:50:53
[2026-10-28 19:50:53,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:50:53,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:50:53,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:50:54,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:50:54,068.068 INFO    ] time= 28/10/2026 19:50:54
[2026-10-28 19:50:54,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:50:54,175.175 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:50:54,321.321 INFO    ] No existing commands found in stream
[2026-10-28 19:50:59,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:50:59,342.342 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 19:51:03,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:51:03,332.332 INFO    ] Checking for system updates...
[2026-10-28 19:51:03,371.371 INFO    ] 200
[2026-10-28 19:51:03,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:51:03,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:51:03,438.438 INFO    ] No update needed
[2026-10-28 19:51:03,441.441 INFO    ] Checking for camera pi updates...
[2026-10-28 19:51:03,476.476 INFO    ] 200
[2026-10-28 19:51:03,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:51:03,520.520 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:51:03,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:51:03,605.605 INFO    ] No camera update needed
[2026-10-28 19:51:03,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:51:03,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:51:03,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:51:03,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:51:05,668.668 INFO    ] ================================================
[2026-10-28 19:51:05,684.684 INFO    ] Launching Daemon at Wed Oct 28 19:51:05 IST 2026
[2026-10-28 19:51:05,695.695 INFO    ] ================================================
[2026-10-28 19:51:06,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:51:06
[2026-10-28 19:51:06,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:51:07,131.131 INFO    ] Initializing speech engine...
[2026-10-28 19:51:07,137.137 INFO    ] 2026-10-28 19:51:07
[2026-10-28 19:51:07,436.436 INFO    ] 2026-10-28 19:51:07
[2026-10-28 19:51:07,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:51:07,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:51:07,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:51:07,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:51:07,983.983 INFO    ] time= 28/10/2026 19:51:07
[2026-10-28 19:51:08,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:51:08,087.087 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:51:08,225.225 INFO    ] No existing commands found in stream
[2026-10-28 19:51:13,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:51:13,250.250 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-28 19:51:17,597.597 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:51:17,600.600 INFO    ] Checking for system updates...
[2026-10-28 19:51:17,636.636 INFO    ] 200
[2026-10-28 19:51:17,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:51:17,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:51:17,695.695 INFO    ] No update needed
[2026-10-28 19:51:17,697.697 INFO    ] Checking for camera pi updates...
[2026-10-28 19:51:17,730.730 INFO    ] 200
[2026-10-28 19:51:17,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:51:17,779.779 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:51:17,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:51:17,861.861 INFO    ] No camera update needed
[2026-10-28 19:51:17,864.864 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:51:17,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:51:17,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:51:17,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:51:19,917.917 INFO    ] ================================================
[2026-10-28 19:51:19,933.933 INFO    ] Launching Daemon at Wed Oct 28 19:51:19 IST 2026
[2026-10-28 19:51:19,945.945 INFO    ] ================================================
[2026-10-28 19:51:20,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:51:20
[2026-10-28 19:51:21,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:51:21,362.362 INFO    ] Initializing speech engine...
[2026-10-28 19:51:21,374.374 INFO    ] 2026-10-28 19:51:21
[2026-10-28 19:51:21,658.658 INFO    ] 2026-10-28 19:51:21
[2026-10-28 19:51:21,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:51:21,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:51:21,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:51:22,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:51:22,244.244 INFO    ] time= 28/10/2026 19:51:22
[2026-10-28 19:51:22,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:51:22,279.279 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:51:22,459.459 INFO    ] No existing commands found in stream
[2026-10-28 19:51:27,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:51:27,493.493 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-28 19:51:30,400.400 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:51:30,402.402 INFO    ] Checking for system updates...
[2026-10-28 19:51:30,439.439 INFO    ] 200
[2026-10-28 19:51:30,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:51:30,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:51:30,501.501 INFO    ] No update needed
[2026-10-28 19:51:30,504.504 INFO    ] Checking for camera pi updates...
[2026-10-28 19:51:30,543.543 INFO    ] 200
[2026-10-28 19:51:30,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:51:30,592.592 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:51:30,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:51:30,680.680 INFO    ] No camera update needed
[2026-10-28 19:51:30,682.682 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:51:30,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:51:30,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:51:30,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:51:32,739.739 INFO    ] ================================================
[2026-10-28 19:51:32,755.755 INFO    ] Launching Daemon at Wed Oct 28 19:51:32 IST 2026
[2026-10-28 19:51:32,766.766 INFO    ] ================================================
[2026-10-28 19:51:33,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:51:33
[2026-10-28 19:51:34,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:51:34,454.454 INFO    ] Initializing speech engine...
[2026-10-28 19:51:34,466.466 INFO    ] 2026-10-28 19:51:34
[2026-10-28 19:51:34,776.776 INFO    ] 2026-10-28 19:51:34
[2026-10-28 19:51:34,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:51:35,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:51:35,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:51:35,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:51:35,586.586 INFO    ] time= 28/10/2026 19:51:35
[2026-10-28 19:51:35,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:51:35,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:51:35,857.857 INFO    ] No existing commands found in stream
[2026-10-28 19:51:40,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:51:40,876.876 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 19:51:44,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:51:44,496.496 INFO    ] Checking for system updates...
[2026-10-28 19:51:44,533.533 INFO    ] 200
[2026-10-28 19:51:44,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:51:44,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:51:44,601.601 INFO    ] No update needed
[2026-10-28 19:51:44,604.604 INFO    ] Checking for camera pi updates...
[2026-10-28 19:51:44,639.639 INFO    ] 200
[2026-10-28 19:51:44,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:51:44,691.691 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:51:44,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:51:44,794.794 INFO    ] No camera update needed
[2026-10-28 19:51:44,797.797 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:51:44,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:51:44,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:51:44,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:51:46,856.856 INFO    ] ================================================
[2026-10-28 19:51:46,872.872 INFO    ] Launching Daemon at Wed Oct 28 19:51:46 IST 2026
[2026-10-28 19:51:46,883.883 INFO    ] ================================================
[2026-10-28 19:51:47,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:51:47
[2026-10-28 19:51:48,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:51:48,567.567 INFO    ] Initializing speech engine...
[2026-10-28 19:51:48,579.579 INFO    ] 2026-10-28 19:51:48
[2026-10-28 19:51:48,893.893 INFO    ] 2026-10-28 19:51:48
[2026-10-28 19:51:48,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:51:49,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:51:49,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:51:49,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:51:49,556.556 INFO    ] time= 28/10/2026 19:51:49
[2026-10-28 19:51:49,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:51:49,654.654 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:51:49,799.799 INFO    ] No existing commands found in stream
[2026-10-28 19:51:54,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:51:54,817.817 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-28 19:51:57,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:51:57,774.774 INFO    ] Checking for system updates...
[2026-10-28 19:51:57,811.811 INFO    ] 200
[2026-10-28 19:51:57,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:51:57,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:51:57,879.879 INFO    ] No update needed
[2026-10-28 19:51:57,882.882 INFO    ] Checking for camera pi updates...
[2026-10-28 19:51:57,923.923 INFO    ] 200
[2026-10-28 19:51:57,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:51:57,968.968 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:51:58,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:51:58,152.152 INFO    ] No camera update needed
[2026-10-28 19:51:58,155.155 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:51:58,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:51:58,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:51:58,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:52:00,213.213 INFO    ] ================================================
[2026-10-28 19:52:00,229.229 INFO    ] Launching Daemon at Wed Oct 28 19:52:00 IST 2026
[2026-10-28 19:52:00,240.240 INFO    ] ================================================
[2026-10-28 19:52:00,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:52:00
[2026-10-28 19:52:01,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:52:01,998.998 INFO    ] Initializing speech engine...
[2026-10-28 19:52:02,005.005 INFO    ] 2026-10-28 19:52:02
[2026-10-28 19:52:02,343.343 INFO    ] 2026-10-28 19:52:02
[2026-10-28 19:52:02,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:52:02,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:52:02,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:52:03,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:52:03,087.087 INFO    ] time= 28/10/2026 19:52:03
[2026-10-28 19:52:03,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:52:03,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:52:03,270.270 INFO    ] No existing commands found in stream
[2026-10-28 19:52:08,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:52:08,300.300 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 19:52:10,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:52:10,843.843 INFO    ] Checking for system updates...
[2026-10-28 19:52:10,880.880 INFO    ] 200
[2026-10-28 19:52:10,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:52:10,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:52:10,945.945 INFO    ] No update needed
[2026-10-28 19:52:10,948.948 INFO    ] Checking for camera pi updates...
[2026-10-28 19:52:10,983.983 INFO    ] 200
[2026-10-28 19:52:10,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:52:11,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:52:11,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:52:11,127.127 INFO    ] No camera update needed
[2026-10-28 19:52:11,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:52:11,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:52:11,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:52:11,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:52:13,188.188 INFO    ] ================================================
[2026-10-28 19:52:13,203.203 INFO    ] Launching Daemon at Wed Oct 28 19:52:13 IST 2026
[2026-10-28 19:52:13,214.214 INFO    ] ================================================
[2026-10-28 19:52:13,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:52:13
[2026-10-28 19:52:14,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:52:14,627.627 INFO    ] Initializing speech engine...
[2026-10-28 19:52:14,633.633 INFO    ] 2026-10-28 19:52:14
[2026-10-28 19:52:14,924.924 INFO    ] 2026-10-28 19:52:14
[2026-10-28 19:52:14,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:52:15,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:52:15,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:52:15,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:52:15,551.551 INFO    ] time= 28/10/2026 19:52:15
[2026-10-28 19:52:15,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:52:15,578.578 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:52:15,688.688 INFO    ] No existing commands found in stream
[2026-10-28 19:52:20,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:52:20,713.713 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-28 19:52:24,399.399 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:52:24,402.402 INFO    ] Checking for system updates...
[2026-10-28 19:52:24,438.438 INFO    ] 200
[2026-10-28 19:52:24,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:52:24,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:52:24,495.495 INFO    ] No update needed
[2026-10-28 19:52:24,497.497 INFO    ] Checking for camera pi updates...
[2026-10-28 19:52:24,531.531 INFO    ] 200
[2026-10-28 19:52:24,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:52:24,574.574 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:52:24,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:52:24,658.658 INFO    ] No camera update needed
[2026-10-28 19:52:24,660.660 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:52:24,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:52:24,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:52:24,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:52:26,711.711 INFO    ] ================================================
[2026-10-28 19:52:26,726.726 INFO    ] Launching Daemon at Wed Oct 28 19:52:26 IST 2026
[2026-10-28 19:52:26,737.737 INFO    ] ================================================
[2026-10-28 19:52:27,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:52:27
[2026-10-28 19:52:27,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:52:28,159.159 INFO    ] Initializing speech engine...
[2026-10-28 19:52:28,168.168 INFO    ] 2026-10-28 19:52:28
[2026-10-28 19:52:28,415.415 INFO    ] 2026-10-28 19:52:28
[2026-10-28 19:52:28,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:52:28,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:52:28,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:52:28,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:52:28,980.980 INFO    ] time= 28/10/2026 19:52:28
[2026-10-28 19:52:28,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:52:29,018.018 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:52:29,131.131 INFO    ] No existing commands found in stream
[2026-10-28 19:52:34,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:52:34,159.159 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-28 19:52:36,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:52:36,639.639 INFO    ] Checking for system updates...
[2026-10-28 19:52:36,681.681 INFO    ] 200
[2026-10-28 19:52:36,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:52:36,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:52:36,750.750 INFO    ] No update needed
[2026-10-28 19:52:36,752.752 INFO    ] Checking for camera pi updates...
[2026-10-28 19:52:36,787.787 INFO    ] 200
[2026-10-28 19:52:36,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:52:36,830.830 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:52:36,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:52:36,920.920 INFO    ] No camera update needed
[2026-10-28 19:52:36,922.922 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:52:36,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:52:36,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:52:36,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:52:38,976.976 INFO    ] ================================================
[2026-10-28 19:52:38,991.991 INFO    ] Launching Daemon at Wed Oct 28 19:52:38 IST 2026
[2026-10-28 19:52:39,002.002 INFO    ] ================================================
[2026-10-28 19:52:39,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:52:39
[2026-10-28 19:52:40,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:52:40,470.470 INFO    ] Initializing speech engine...
[2026-10-28 19:52:40,479.479 INFO    ] 2026-10-28 19:52:40
[2026-10-28 19:52:40,730.730 INFO    ] 2026-10-28 19:52:40
[2026-10-28 19:52:40,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:52:41,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:52:41,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:52:41,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:52:41,288.288 INFO    ] time= 28/10/2026 19:52:41
[2026-10-28 19:52:41,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:52:41,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:52:41,466.466 INFO    ] No existing commands found in stream
[2026-10-28 19:52:46,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:52:46,494.494 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-28 19:52:47,835.835 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:52:47,838.838 INFO    ] Checking for system updates...
[2026-10-28 19:52:47,874.874 INFO    ] 200
[2026-10-28 19:52:47,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:52:47,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:52:47,937.937 INFO    ] No update needed
[2026-10-28 19:52:47,940.940 INFO    ] Checking for camera pi updates...
[2026-10-28 19:52:47,979.979 INFO    ] 200
[2026-10-28 19:52:47,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:52:48,028.028 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:52:48,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:52:48,112.112 INFO    ] No camera update needed
[2026-10-28 19:52:48,115.115 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:52:48,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:52:48,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:52:48,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:52:50,168.168 INFO    ] ================================================
[2026-10-28 19:52:50,184.184 INFO    ] Launching Daemon at Wed Oct 28 19:52:50 IST 2026
[2026-10-28 19:52:50,194.194 INFO    ] ================================================
[2026-10-28 19:52:50,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:52:50
[2026-10-28 19:52:51,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:52:51,751.751 INFO    ] Initializing speech engine...
[2026-10-28 19:52:51,757.757 INFO    ] 2026-10-28 19:52:51
[2026-10-28 19:52:52,036.036 INFO    ] 2026-10-28 19:52:52
[2026-10-28 19:52:52,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:52:52,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:52:52,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:52:52,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:52:52,821.821 INFO    ] time= 28/10/2026 19:52:52
[2026-10-28 19:52:52,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:52:52,927.927 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:52:53,139.139 INFO    ] No existing commands found in stream
[2026-10-28 19:52:58,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:52:58,164.164 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-28 19:52:59,409.409 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:52:59,412.412 INFO    ] Checking for system updates...
[2026-10-28 19:52:59,450.450 INFO    ] 200
[2026-10-28 19:52:59,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:52:59,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:52:59,510.510 INFO    ] No update needed
[2026-10-28 19:52:59,512.512 INFO    ] Checking for camera pi updates...
[2026-10-28 19:52:59,550.550 INFO    ] 200
[2026-10-28 19:52:59,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:52:59,600.600 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:52:59,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:52:59,694.694 INFO    ] No camera update needed
[2026-10-28 19:52:59,697.697 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:52:59,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:52:59,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:52:59,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:53:01,764.764 INFO    ] ================================================
[2026-10-28 19:53:01,793.793 INFO    ] Launching Daemon at Wed Oct 28 19:53:01 IST 2026
[2026-10-28 19:53:01,817.817 INFO    ] ================================================
[2026-10-28 19:53:02,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:53:02
[2026-10-28 19:53:03,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:53:03,604.604 INFO    ] Initializing speech engine...
[2026-10-28 19:53:03,610.610 INFO    ] 2026-10-28 19:53:03
[2026-10-28 19:53:03,873.873 INFO    ] 2026-10-28 19:53:03
[2026-10-28 19:53:03,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:53:04,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:53:04,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:53:04,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:53:04,428.428 INFO    ] time= 28/10/2026 19:53:04
[2026-10-28 19:53:04,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:53:04,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:53:04,627.627 INFO    ] No existing commands found in stream
[2026-10-28 19:53:09,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:53:09,660.660 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-28 19:53:13,568.568 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:53:13,570.570 INFO    ] Checking for system updates...
[2026-10-28 19:53:13,607.607 INFO    ] 200
[2026-10-28 19:53:13,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:53:13,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:53:13,666.666 INFO    ] No update needed
[2026-10-28 19:53:13,669.669 INFO    ] Checking for camera pi updates...
[2026-10-28 19:53:13,705.705 INFO    ] 200
[2026-10-28 19:53:13,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:53:13,754.754 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:53:13,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:53:13,841.841 INFO    ] No camera update needed
[2026-10-28 19:53:13,844.844 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:53:13,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:53:13,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:53:13,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:53:15,901.901 INFO    ] ================================================
[2026-10-28 19:53:15,917.917 INFO    ] Launching Daemon at Wed Oct 28 19:53:15 IST 2026
[2026-10-28 19:53:15,927.927 INFO    ] ================================================
[2026-10-28 19:53:16,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:53:16
[2026-10-28 19:53:17,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:53:17,569.569 INFO    ] Initializing speech engine...
[2026-10-28 19:53:17,579.579 INFO    ] 2026-10-28 19:53:17
[2026-10-28 19:53:17,889.889 INFO    ] 2026-10-28 19:53:17
[2026-10-28 19:53:17,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:53:18,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:53:18,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:53:18,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:53:18,418.418 INFO    ] time= 28/10/2026 19:53:18
[2026-10-28 19:53:18,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:53:18,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:53:18,594.594 INFO    ] No existing commands found in stream
[2026-10-28 19:53:23,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:53:23,633.633 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-28 19:53:27,441.441 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:53:27,444.444 INFO    ] Checking for system updates...
[2026-10-28 19:53:27,481.481 INFO    ] 200
[2026-10-28 19:53:27,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:53:27,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:53:27,541.541 INFO    ] No update needed
[2026-10-28 19:53:27,543.543 INFO    ] Checking for camera pi updates...
[2026-10-28 19:53:27,577.577 INFO    ] 200
[2026-10-28 19:53:27,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:53:27,621.621 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:53:27,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:53:27,682.682 INFO    ] No camera update needed
[2026-10-28 19:53:27,685.685 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:53:27,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:53:27,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:53:27,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:53:29,738.738 INFO    ] ================================================
[2026-10-28 19:53:29,753.753 INFO    ] Launching Daemon at Wed Oct 28 19:53:29 IST 2026
[2026-10-28 19:53:29,763.763 INFO    ] ================================================
[2026-10-28 19:53:30,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:53:30
[2026-10-28 19:53:30,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:53:31,177.177 INFO    ] Initializing speech engine...
[2026-10-28 19:53:31,200.200 INFO    ] 2026-10-28 19:53:31
[2026-10-28 19:53:31,458.458 INFO    ] 2026-10-28 19:53:31
[2026-10-28 19:53:31,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:53:31,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:53:31,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:53:32,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:53:32,221.221 INFO    ] time= 28/10/2026 19:53:32
[2026-10-28 19:53:32,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:53:32,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:53:32,489.489 INFO    ] No existing commands found in stream
[2026-10-28 19:53:37,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:53:37,506.506 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-28 19:53:41,514.514 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:53:41,517.517 INFO    ] Checking for system updates...
[2026-10-28 19:53:41,553.553 INFO    ] 200
[2026-10-28 19:53:41,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:53:41,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:53:41,617.617 INFO    ] No update needed
[2026-10-28 19:53:41,619.619 INFO    ] Checking for camera pi updates...
[2026-10-28 19:53:41,656.656 INFO    ] 200
[2026-10-28 19:53:41,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:53:41,699.699 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:53:41,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:53:41,801.801 INFO    ] No camera update needed
[2026-10-28 19:53:41,803.803 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:53:41,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:53:41,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:53:41,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:53:43,856.856 INFO    ] ================================================
[2026-10-28 19:53:43,871.871 INFO    ] Launching Daemon at Wed Oct 28 19:53:43 IST 2026
[2026-10-28 19:53:43,881.881 INFO    ] ================================================
[2026-10-28 19:53:44,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:53:44
[2026-10-28 19:53:45,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:53:45,284.284 INFO    ] Initializing speech engine...
[2026-10-28 19:53:45,293.293 INFO    ] 2026-10-28 19:53:45
[2026-10-28 19:53:45,586.586 INFO    ] 2026-10-28 19:53:45
[2026-10-28 19:53:45,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:53:45,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:53:45,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:53:46,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:53:46,217.217 INFO    ] time= 28/10/2026 19:53:46
[2026-10-28 19:53:46,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:53:46,241.241 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:53:46,396.396 INFO    ] No existing commands found in stream
[2026-10-28 19:53:51,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:53:51,425.425 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 19:53:54,005.005 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:53:54,008.008 INFO    ] Checking for system updates...
[2026-10-28 19:53:54,047.047 INFO    ] 200
[2026-10-28 19:53:54,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:53:54,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:53:54,110.110 INFO    ] No update needed
[2026-10-28 19:53:54,113.113 INFO    ] Checking for camera pi updates...
[2026-10-28 19:53:54,149.149 INFO    ] 200
[2026-10-28 19:53:54,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:53:54,198.198 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:53:54,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:53:54,281.281 INFO    ] No camera update needed
[2026-10-28 19:53:54,284.284 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:53:54,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:53:54,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:53:54,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:53:56,337.337 INFO    ] ================================================
[2026-10-28 19:53:56,353.353 INFO    ] Launching Daemon at Wed Oct 28 19:53:56 IST 2026
[2026-10-28 19:53:56,364.364 INFO    ] ================================================
[2026-10-28 19:53:56,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:53:56
[2026-10-28 19:53:57,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:53:57,829.829 INFO    ] Initializing speech engine...
[2026-10-28 19:53:57,836.836 INFO    ] 2026-10-28 19:53:57
[2026-10-28 19:53:58,098.098 INFO    ] 2026-10-28 19:53:58
[2026-10-28 19:53:58,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:53:58,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:53:58,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:53:58,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:53:58,819.819 INFO    ] time= 28/10/2026 19:53:58
[2026-10-28 19:53:58,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:53:58,913.913 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:53:59,078.078 INFO    ] No existing commands found in stream
[2026-10-28 19:54:04,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:54:04,096.096 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-28 19:54:08,476.476 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:54:08,479.479 INFO    ] Checking for system updates...
[2026-10-28 19:54:08,518.518 INFO    ] 200
[2026-10-28 19:54:08,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:54:08,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:54:08,576.576 INFO    ] No update needed
[2026-10-28 19:54:08,579.579 INFO    ] Checking for camera pi updates...
[2026-10-28 19:54:08,613.613 INFO    ] 200
[2026-10-28 19:54:08,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:54:08,662.662 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:54:08,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:54:08,763.763 INFO    ] No camera update needed
[2026-10-28 19:54:08,766.766 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:54:08,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:54:08,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:54:08,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:54:10,820.820 INFO    ] ================================================
[2026-10-28 19:54:10,835.835 INFO    ] Launching Daemon at Wed Oct 28 19:54:10 IST 2026
[2026-10-28 19:54:10,846.846 INFO    ] ================================================
[2026-10-28 19:54:11,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:54:11
[2026-10-28 19:54:12,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:54:12,298.298 INFO    ] Initializing speech engine...
[2026-10-28 19:54:12,308.308 INFO    ] 2026-10-28 19:54:12
[2026-10-28 19:54:12,560.560 INFO    ] 2026-10-28 19:54:12
[2026-10-28 19:54:12,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:54:12,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:54:12,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:54:13,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:54:13,185.185 INFO    ] time= 28/10/2026 19:54:13
[2026-10-28 19:54:13,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:54:13,322.322 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:54:13,485.485 INFO    ] No existing commands found in stream
[2026-10-28 19:54:18,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:54:18,520.520 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-10-28 19:54:22,840.840 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:54:22,843.843 INFO    ] Checking for system updates...
[2026-10-28 19:54:22,881.881 INFO    ] 200
[2026-10-28 19:54:22,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:54:22,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:54:22,941.941 INFO    ] No update needed
[2026-10-28 19:54:22,944.944 INFO    ] Checking for camera pi updates...
[2026-10-28 19:54:22,982.982 INFO    ] 200
[2026-10-28 19:54:22,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:54:23,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:54:23,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:54:23,124.124 INFO    ] No camera update needed
[2026-10-28 19:54:23,126.126 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:54:23,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:54:23,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:54:23,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:54:25,182.182 INFO    ] ================================================
[2026-10-28 19:54:25,197.197 INFO    ] Launching Daemon at Wed Oct 28 19:54:25 IST 2026
[2026-10-28 19:54:25,208.208 INFO    ] ================================================
[2026-10-28 19:54:25,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:54:25
[2026-10-28 19:54:26,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:54:26,631.631 INFO    ] Initializing speech engine...
[2026-10-28 19:54:26,637.637 INFO    ] 2026-10-28 19:54:26
[2026-10-28 19:54:26,896.896 INFO    ] 2026-10-28 19:54:26
[2026-10-28 19:54:26,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:54:27,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:54:27,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:54:27,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:54:27,457.457 INFO    ] time= 28/10/2026 19:54:27
[2026-10-28 19:54:27,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:54:27,490.490 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:54:27,641.641 INFO    ] No existing commands found in stream
[2026-10-28 19:54:32,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:54:32,675.675 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-28 19:54:34,568.568 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:54:34,575.575 INFO    ] Checking for system updates...
[2026-10-28 19:54:34,627.627 INFO    ] 200
[2026-10-28 19:54:34,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:54:34,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:54:34,684.684 INFO    ] No update needed
[2026-10-28 19:54:34,686.686 INFO    ] Checking for camera pi updates...
[2026-10-28 19:54:34,724.724 INFO    ] 200
[2026-10-28 19:54:34,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:54:34,767.767 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:54:34,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:54:34,851.851 INFO    ] No camera update needed
[2026-10-28 19:54:34,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:54:34,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:54:34,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:54:34,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:54:36,907.907 INFO    ] ================================================
[2026-10-28 19:54:36,922.922 INFO    ] Launching Daemon at Wed Oct 28 19:54:36 IST 2026
[2026-10-28 19:54:36,933.933 INFO    ] ================================================
[2026-10-28 19:54:37,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:54:37
[2026-10-28 19:54:38,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:54:38,355.355 INFO    ] Initializing speech engine...
[2026-10-28 19:54:38,362.362 INFO    ] 2026-10-28 19:54:38
[2026-10-28 19:54:38,668.668 INFO    ] 2026-10-28 19:54:38
[2026-10-28 19:54:38,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:54:39,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:54:39,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:54:39,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:54:39,319.319 INFO    ] time= 28/10/2026 19:54:39
[2026-10-28 19:54:39,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:54:39,344.344 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:54:39,469.469 INFO    ] No existing commands found in stream
[2026-10-28 19:54:44,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:54:44,497.497 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-28 19:54:46,400.400 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:54:46,403.403 INFO    ] Checking for system updates...
[2026-10-28 19:54:46,443.443 INFO    ] 200
[2026-10-28 19:54:46,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:54:46,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:54:46,509.509 INFO    ] No update needed
[2026-10-28 19:54:46,511.511 INFO    ] Checking for camera pi updates...
[2026-10-28 19:54:46,549.549 INFO    ] 200
[2026-10-28 19:54:46,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:54:46,598.598 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:54:46,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:54:46,666.666 INFO    ] No camera update needed
[2026-10-28 19:54:46,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:54:46,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:54:46,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:54:46,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:54:48,722.722 INFO    ] ================================================
[2026-10-28 19:54:48,737.737 INFO    ] Launching Daemon at Wed Oct 28 19:54:48 IST 2026
[2026-10-28 19:54:48,748.748 INFO    ] ================================================
[2026-10-28 19:54:49,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:54:49
[2026-10-28 19:54:50,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:54:50,262.262 INFO    ] Initializing speech engine...
[2026-10-28 19:54:50,275.275 INFO    ] 2026-10-28 19:54:50
[2026-10-28 19:54:50,540.540 INFO    ] 2026-10-28 19:54:50
[2026-10-28 19:54:50,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:54:50,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:54:50,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:54:51,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:54:51,129.129 INFO    ] time= 28/10/2026 19:54:51
[2026-10-28 19:54:51,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:54:51,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:54:51,339.339 INFO    ] No existing commands found in stream
[2026-10-28 19:54:56,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:54:56,362.362 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 19:54:59,242.242 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:54:59,245.245 INFO    ] Checking for system updates...
[2026-10-28 19:54:59,286.286 INFO    ] 200
[2026-10-28 19:54:59,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:54:59,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:54:59,344.344 INFO    ] No update needed
[2026-10-28 19:54:59,347.347 INFO    ] Checking for camera pi updates...
[2026-10-28 19:54:59,380.380 INFO    ] 200
[2026-10-28 19:54:59,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:54:59,429.429 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:54:59,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:54:59,504.504 INFO    ] No camera update needed
[2026-10-28 19:54:59,506.506 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:54:59,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:54:59,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:54:59,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:55:01,560.560 INFO    ] ================================================
[2026-10-28 19:55:01,575.575 INFO    ] Launching Daemon at Wed Oct 28 19:55:01 IST 2026
[2026-10-28 19:55:01,586.586 INFO    ] ================================================
[2026-10-28 19:55:02,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:55:02
[2026-10-28 19:55:03,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:55:03,699.699 INFO    ] Initializing speech engine...
[2026-10-28 19:55:03,705.705 INFO    ] 2026-10-28 19:55:03
[2026-10-28 19:55:03,980.980 INFO    ] 2026-10-28 19:55:03
[2026-10-28 19:55:04,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:55:04,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:55:04,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:55:04,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:55:04,566.566 INFO    ] time= 28/10/2026 19:55:04
[2026-10-28 19:55:04,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:55:04,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:55:04,754.754 INFO    ] No existing commands found in stream
[2026-10-28 19:55:09,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:55:09,787.787 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-10-28 19:55:11,134.134 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:55:11,137.137 INFO    ] Checking for system updates...
[2026-10-28 19:55:11,176.176 INFO    ] 200
[2026-10-28 19:55:11,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:55:11,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:55:11,240.240 INFO    ] No update needed
[2026-10-28 19:55:11,242.242 INFO    ] Checking for camera pi updates...
[2026-10-28 19:55:11,279.279 INFO    ] 200
[2026-10-28 19:55:11,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:55:11,326.326 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:55:11,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:55:11,395.395 INFO    ] No camera update needed
[2026-10-28 19:55:11,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:55:11,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:55:11,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:55:11,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:55:13,451.451 INFO    ] ================================================
[2026-10-28 19:55:13,466.466 INFO    ] Launching Daemon at Wed Oct 28 19:55:13 IST 2026
[2026-10-28 19:55:13,476.476 INFO    ] ================================================
[2026-10-28 19:55:14,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:55:14
[2026-10-28 19:55:14,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:55:14,930.930 INFO    ] Initializing speech engine...
[2026-10-28 19:55:14,937.937 INFO    ] 2026-10-28 19:55:14
[2026-10-28 19:55:15,198.198 INFO    ] 2026-10-28 19:55:15
[2026-10-28 19:55:15,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:55:15,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:55:15,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:55:15,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:55:15,883.883 INFO    ] time= 28/10/2026 19:55:15
[2026-10-28 19:55:15,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:55:15,988.988 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:55:16,143.143 INFO    ] No existing commands found in stream
[2026-10-28 19:55:21,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:55:21,177.177 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 19:55:22,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:55:22,706.706 INFO    ] Checking for system updates...
[2026-10-28 19:55:22,747.747 INFO    ] 200
[2026-10-28 19:55:22,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:55:22,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:55:22,818.818 INFO    ] No update needed
[2026-10-28 19:55:22,821.821 INFO    ] Checking for camera pi updates...
[2026-10-28 19:55:22,862.862 INFO    ] 200
[2026-10-28 19:55:22,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:55:22,907.907 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:55:22,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:55:22,995.995 INFO    ] No camera update needed
[2026-10-28 19:55:22,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:55:23,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:55:23,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:55:23,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:55:25,052.052 INFO    ] ================================================
[2026-10-28 19:55:25,067.067 INFO    ] Launching Daemon at Wed Oct 28 19:55:25 IST 2026
[2026-10-28 19:55:25,078.078 INFO    ] ================================================
[2026-10-28 19:55:25,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:55:25
[2026-10-28 19:55:26,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:55:26,505.505 INFO    ] Initializing speech engine...
[2026-10-28 19:55:26,511.511 INFO    ] 2026-10-28 19:55:26
[2026-10-28 19:55:26,771.771 INFO    ] 2026-10-28 19:55:26
[2026-10-28 19:55:26,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:55:27,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:55:27,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:55:27,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:55:27,325.325 INFO    ] time= 28/10/2026 19:55:27
[2026-10-28 19:55:27,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:55:27,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:55:27,465.465 INFO    ] No existing commands found in stream
[2026-10-28 19:55:32,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:55:32,490.490 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 19:55:37,140.140 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:55:37,142.142 INFO    ] Checking for system updates...
[2026-10-28 19:55:37,182.182 INFO    ] 200
[2026-10-28 19:55:37,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:55:37,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:55:37,246.246 INFO    ] No update needed
[2026-10-28 19:55:37,249.249 INFO    ] Checking for camera pi updates...
[2026-10-28 19:55:37,286.286 INFO    ] 200
[2026-10-28 19:55:37,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:55:37,333.333 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:55:37,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:55:37,430.430 INFO    ] No camera update needed
[2026-10-28 19:55:37,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:55:37,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:55:37,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:55:37,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:55:39,486.486 INFO    ] ================================================
[2026-10-28 19:55:39,501.501 INFO    ] Launching Daemon at Wed Oct 28 19:55:39 IST 2026
[2026-10-28 19:55:39,512.512 INFO    ] ================================================
[2026-10-28 19:55:40,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:55:40
[2026-10-28 19:55:40,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:55:41,143.143 INFO    ] Initializing speech engine...
[2026-10-28 19:55:41,152.152 INFO    ] 2026-10-28 19:55:41
[2026-10-28 19:55:41,429.429 INFO    ] 2026-10-28 19:55:41
[2026-10-28 19:55:41,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:55:41,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:55:41,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:55:42,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:55:42,236.236 INFO    ] time= 28/10/2026 19:55:42
[2026-10-28 19:55:42,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:55:42,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:55:42,445.445 INFO    ] No existing commands found in stream
[2026-10-28 19:55:47,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:55:47,459.459 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 19:55:49,280.280 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:55:49,283.283 INFO    ] Checking for system updates...
[2026-10-28 19:55:49,325.325 INFO    ] 200
[2026-10-28 19:55:49,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:55:49,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:55:49,391.391 INFO    ] No update needed
[2026-10-28 19:55:49,394.394 INFO    ] Checking for camera pi updates...
[2026-10-28 19:55:49,432.432 INFO    ] 200
[2026-10-28 19:55:49,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:55:49,482.482 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:55:49,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:55:49,570.570 INFO    ] No camera update needed
[2026-10-28 19:55:49,572.572 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:55:49,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:55:49,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:55:49,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:55:51,629.629 INFO    ] ================================================
[2026-10-28 19:55:51,644.644 INFO    ] Launching Daemon at Wed Oct 28 19:55:51 IST 2026
[2026-10-28 19:55:51,655.655 INFO    ] ================================================
[2026-10-28 19:55:52,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:55:52
[2026-10-28 19:55:52,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:55:53,287.287 INFO    ] Initializing speech engine...
[2026-10-28 19:55:53,300.300 INFO    ] 2026-10-28 19:55:53
[2026-10-28 19:55:53,593.593 INFO    ] 2026-10-28 19:55:53
[2026-10-28 19:55:53,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:55:53,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:55:54,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:55:54,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:55:54,355.355 INFO    ] time= 28/10/2026 19:55:54
[2026-10-28 19:55:54,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:55:54,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:55:54,670.670 INFO    ] No existing commands found in stream
[2026-10-28 19:55:59,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:55:59,699.699 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-28 19:56:02,882.882 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:56:02,885.885 INFO    ] Checking for system updates...
[2026-10-28 19:56:02,920.920 INFO    ] 200
[2026-10-28 19:56:02,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:56:02,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:56:02,977.977 INFO    ] No update needed
[2026-10-28 19:56:02,980.980 INFO    ] Checking for camera pi updates...
[2026-10-28 19:56:03,020.020 INFO    ] 200
[2026-10-28 19:56:03,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:56:03,064.064 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:56:03,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:56:03,208.208 INFO    ] No camera update needed
[2026-10-28 19:56:03,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:56:03,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:56:03,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:56:03,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:56:05,264.264 INFO    ] ================================================
[2026-10-28 19:56:05,279.279 INFO    ] Launching Daemon at Wed Oct 28 19:56:05 IST 2026
[2026-10-28 19:56:05,291.291 INFO    ] ================================================
[2026-10-28 19:56:05,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:56:05
[2026-10-28 19:56:06,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:56:06,977.977 INFO    ] Initializing speech engine...
[2026-10-28 19:56:06,990.990 INFO    ] 2026-10-28 19:56:06
[2026-10-28 19:56:07,310.310 INFO    ] 2026-10-28 19:56:07
[2026-10-28 19:56:07,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:56:07,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:56:07,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:56:07,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:56:07,829.829 INFO    ] time= 28/10/2026 19:56:07
[2026-10-28 19:56:07,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:56:07,857.857 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:56:08,046.046 INFO    ] No existing commands found in stream
[2026-10-28 19:56:13,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:56:13,070.070 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 19:56:15,623.623 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:56:15,627.627 INFO    ] Checking for system updates...
[2026-10-28 19:56:15,669.669 INFO    ] 200
[2026-10-28 19:56:15,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:56:15,734.734 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:56:15,738.738 INFO    ] No update needed
[2026-10-28 19:56:15,740.740 INFO    ] Checking for camera pi updates...
[2026-10-28 19:56:15,780.780 INFO    ] 200
[2026-10-28 19:56:15,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:56:15,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:56:16,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:56:16,018.018 INFO    ] No camera update needed
[2026-10-28 19:56:16,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:56:16,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:56:16,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:56:16,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:56:18,079.079 INFO    ] ================================================
[2026-10-28 19:56:18,095.095 INFO    ] Launching Daemon at Wed Oct 28 19:56:18 IST 2026
[2026-10-28 19:56:18,106.106 INFO    ] ================================================
[2026-10-28 19:56:18,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:56:18
[2026-10-28 19:56:19,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:56:19,525.525 INFO    ] Initializing speech engine...
[2026-10-28 19:56:19,534.534 INFO    ] 2026-10-28 19:56:19
[2026-10-28 19:56:19,785.785 INFO    ] 2026-10-28 19:56:19
[2026-10-28 19:56:19,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:56:20,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:56:20,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:56:20,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:56:20,353.353 INFO    ] time= 28/10/2026 19:56:20
[2026-10-28 19:56:20,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:56:20,375.375 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:56:20,534.534 INFO    ] No existing commands found in stream
[2026-10-28 19:56:25,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:56:25,567.567 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-28 19:56:29,095.095 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:56:29,098.098 INFO    ] Checking for system updates...
[2026-10-28 19:56:29,133.133 INFO    ] 200
[2026-10-28 19:56:29,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:56:29,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:56:29,190.190 INFO    ] No update needed
[2026-10-28 19:56:29,193.193 INFO    ] Checking for camera pi updates...
[2026-10-28 19:56:29,226.226 INFO    ] 200
[2026-10-28 19:56:29,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:56:29,275.275 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:56:29,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:56:29,351.351 INFO    ] No camera update needed
[2026-10-28 19:56:29,353.353 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:56:29,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:56:29,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:56:29,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:56:31,408.408 INFO    ] ================================================
[2026-10-28 19:56:31,425.425 INFO    ] Launching Daemon at Wed Oct 28 19:56:31 IST 2026
[2026-10-28 19:56:31,438.438 INFO    ] ================================================
[2026-10-28 19:56:32,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:56:32
[2026-10-28 19:56:32,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:56:33,198.198 INFO    ] Initializing speech engine...
[2026-10-28 19:56:33,212.212 INFO    ] 2026-10-28 19:56:33
[2026-10-28 19:56:33,497.497 INFO    ] 2026-10-28 19:56:33
[2026-10-28 19:56:33,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:56:33,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:56:33,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:56:34,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:56:34,338.338 INFO    ] time= 28/10/2026 19:56:34
[2026-10-28 19:56:34,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:56:34,431.431 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:56:34,656.656 INFO    ] No existing commands found in stream
[2026-10-28 19:56:39,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:56:39,675.675 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 19:56:44,199.199 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:56:44,202.202 INFO    ] Checking for system updates...
[2026-10-28 19:56:44,238.238 INFO    ] 200
[2026-10-28 19:56:44,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:56:44,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:56:44,298.298 INFO    ] No update needed
[2026-10-28 19:56:44,301.301 INFO    ] Checking for camera pi updates...
[2026-10-28 19:56:44,334.334 INFO    ] 200
[2026-10-28 19:56:44,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:56:44,377.377 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:56:44,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:56:44,471.471 INFO    ] No camera update needed
[2026-10-28 19:56:44,473.473 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:56:44,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:56:44,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:56:44,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:56:46,526.526 INFO    ] ================================================
[2026-10-28 19:56:46,541.541 INFO    ] Launching Daemon at Wed Oct 28 19:56:46 IST 2026
[2026-10-28 19:56:46,552.552 INFO    ] ================================================
[2026-10-28 19:56:47,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:56:47
[2026-10-28 19:56:47,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:56:47,963.963 INFO    ] Initializing speech engine...
[2026-10-28 19:56:47,972.972 INFO    ] 2026-10-28 19:56:47
[2026-10-28 19:56:48,272.272 INFO    ] 2026-10-28 19:56:48
[2026-10-28 19:56:48,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:56:48,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:56:48,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:56:48,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:56:48,787.787 INFO    ] time= 28/10/2026 19:56:48
[2026-10-28 19:56:48,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:56:48,885.885 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:56:48,996.996 INFO    ] No existing commands found in stream
[2026-10-28 19:56:54,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:56:54,011.011 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-28 19:56:56,968.968 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:56:56,971.971 INFO    ] Checking for system updates...
[2026-10-28 19:56:57,018.018 INFO    ] 200
[2026-10-28 19:56:57,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:56:57,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:56:57,074.074 INFO    ] No update needed
[2026-10-28 19:56:57,077.077 INFO    ] Checking for camera pi updates...
[2026-10-28 19:56:57,110.110 INFO    ] 200
[2026-10-28 19:56:57,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:56:57,158.158 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:56:57,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:56:57,243.243 INFO    ] No camera update needed
[2026-10-28 19:56:57,245.245 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:56:57,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:56:57,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:56:57,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:56:59,298.298 INFO    ] ================================================
[2026-10-28 19:56:59,314.314 INFO    ] Launching Daemon at Wed Oct 28 19:56:59 IST 2026
[2026-10-28 19:56:59,325.325 INFO    ] ================================================
[2026-10-28 19:56:59,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:56:59
[2026-10-28 19:57:00,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:57:00,877.877 INFO    ] Initializing speech engine...
[2026-10-28 19:57:00,893.893 INFO    ] 2026-10-28 19:57:00
[2026-10-28 19:57:01,181.181 INFO    ] 2026-10-28 19:57:01
[2026-10-28 19:57:01,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:57:01,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:57:01,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:57:01,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:57:01,784.784 INFO    ] time= 28/10/2026 19:57:01
[2026-10-28 19:57:01,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:57:01,790.790 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:57:01,898.898 INFO    ] No existing commands found in stream
[2026-10-28 19:57:06,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:57:06,911.911 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 19:57:11,078.078 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:57:11,081.081 INFO    ] Checking for system updates...
[2026-10-28 19:57:11,120.120 INFO    ] 200
[2026-10-28 19:57:11,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:57:11,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:57:11,176.176 INFO    ] No update needed
[2026-10-28 19:57:11,178.178 INFO    ] Checking for camera pi updates...
[2026-10-28 19:57:11,215.215 INFO    ] 200
[2026-10-28 19:57:11,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:57:11,258.258 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:57:11,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:57:11,344.344 INFO    ] No camera update needed
[2026-10-28 19:57:11,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:57:11,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:57:11,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:57:11,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:57:13,399.399 INFO    ] ================================================
[2026-10-28 19:57:13,415.415 INFO    ] Launching Daemon at Wed Oct 28 19:57:13 IST 2026
[2026-10-28 19:57:13,426.426 INFO    ] ================================================
[2026-10-28 19:57:13,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:57:13
[2026-10-28 19:57:14,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:57:14,829.829 INFO    ] Initializing speech engine...
[2026-10-28 19:57:14,837.837 INFO    ] 2026-10-28 19:57:14
[2026-10-28 19:57:15,129.129 INFO    ] 2026-10-28 19:57:15
[2026-10-28 19:57:15,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:57:15,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:57:15,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:57:15,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:57:15,719.719 INFO    ] time= 28/10/2026 19:57:15
[2026-10-28 19:57:15,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:57:15,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:57:15,890.890 INFO    ] No existing commands found in stream
[2026-10-28 19:57:20,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:57:20,924.924 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-28 19:57:22,998.998 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 19:57:23,001.001 INFO    ] Checking for system updates...
[2026-10-28 19:57:23,037.037 INFO    ] 200
[2026-10-28 19:57:23,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:57:23,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:57:23,094.094 INFO    ] No update needed
[2026-10-28 19:57:23,096.096 INFO    ] Checking for camera pi updates...
[2026-10-28 19:57:23,129.129 INFO    ] 200
[2026-10-28 19:57:23,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:57:23,173.173 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:57:23,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:57:23,257.257 INFO    ] No camera update needed
[2026-10-28 19:57:23,260.260 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:57:23,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:57:23,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:57:23,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:57:25,314.314 INFO    ] ================================================
[2026-10-28 19:57:25,331.331 INFO    ] Launching Daemon at Wed Oct 28 19:57:25 IST 2026
[2026-10-28 19:57:25,342.342 INFO    ] ================================================
[2026-10-28 19:57:25,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:57:25
[2026-10-28 19:57:26,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:57:26,747.747 INFO    ] Initializing speech engine...
[2026-10-28 19:57:26,755.755 INFO    ] 2026-10-28 19:57:26
[2026-10-28 19:57:27,051.051 INFO    ] 2026-10-28 19:57:27
[2026-10-28 19:57:27,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:57:27,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:57:27,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:57:27,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:57:27,684.684 INFO    ] time= 28/10/2026 19:57:27
[2026-10-28 19:57:27,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:57:27,711.711 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:57:27,858.858 INFO    ] No existing commands found in stream
[2026-10-28 19:57:32,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:57:32,878.878 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-28 19:57:33,685.685 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:57:33,688.688 INFO    ] Checking for system updates...
[2026-10-28 19:57:33,727.727 INFO    ] 200
[2026-10-28 19:57:33,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:57:33,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:57:33,783.783 INFO    ] No update needed
[2026-10-28 19:57:33,785.785 INFO    ] Checking for camera pi updates...
[2026-10-28 19:57:33,818.818 INFO    ] 200
[2026-10-28 19:57:33,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:57:33,860.860 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:57:33,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:57:33,943.943 INFO    ] No camera update needed
[2026-10-28 19:57:33,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:57:33,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:57:33,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:57:33,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:57:36,999.999 INFO    ] ================================================
[2026-10-28 19:57:36,014.014 INFO    ] Launching Daemon at Wed Oct 28 19:57:36 IST 2026
[2026-10-28 19:57:36,025.025 INFO    ] ================================================
[2026-10-28 19:57:36,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:57:36
[2026-10-28 19:57:37,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:57:37,433.433 INFO    ] Initializing speech engine...
[2026-10-28 19:57:37,448.448 INFO    ] 2026-10-28 19:57:37
[2026-10-28 19:57:37,731.731 INFO    ] 2026-10-28 19:57:37
[2026-10-28 19:57:37,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:57:38,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:57:38,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:57:38,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:57:38,360.360 INFO    ] time= 28/10/2026 19:57:38
[2026-10-28 19:57:38,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:57:38,385.385 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:57:38,554.554 INFO    ] No existing commands found in stream
[2026-10-28 19:57:43,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:57:43,583.583 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-28 19:57:44,442.442 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:57:44,445.445 INFO    ] Checking for system updates...
[2026-10-28 19:57:44,480.480 INFO    ] 200
[2026-10-28 19:57:44,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:57:44,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:57:44,543.543 INFO    ] No update needed
[2026-10-28 19:57:44,546.546 INFO    ] Checking for camera pi updates...
[2026-10-28 19:57:44,579.579 INFO    ] 200
[2026-10-28 19:57:44,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:57:44,622.622 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:57:44,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:57:44,696.696 INFO    ] No camera update needed
[2026-10-28 19:57:44,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:57:44,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:57:44,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:57:44,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:57:46,752.752 INFO    ] ================================================
[2026-10-28 19:57:46,767.767 INFO    ] Launching Daemon at Wed Oct 28 19:57:46 IST 2026
[2026-10-28 19:57:46,778.778 INFO    ] ================================================
[2026-10-28 19:57:47,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:57:47
[2026-10-28 19:57:48,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:57:48,397.397 INFO    ] Initializing speech engine...
[2026-10-28 19:57:48,406.406 INFO    ] 2026-10-28 19:57:48
[2026-10-28 19:57:48,694.694 INFO    ] 2026-10-28 19:57:48
[2026-10-28 19:57:48,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:57:49,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:57:49,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:57:49,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:57:49,425.425 INFO    ] time= 28/10/2026 19:57:49
[2026-10-28 19:57:49,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:57:49,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:57:49,653.653 INFO    ] No existing commands found in stream
[2026-10-28 19:57:54,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:57:54,680.680 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 19:57:56,886.886 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:57:56,889.889 INFO    ] Checking for system updates...
[2026-10-28 19:57:56,925.925 INFO    ] 200
[2026-10-28 19:57:56,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:57:56,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:57:56,982.982 INFO    ] No update needed
[2026-10-28 19:57:56,985.985 INFO    ] Checking for camera pi updates...
[2026-10-28 19:57:57,018.018 INFO    ] 200
[2026-10-28 19:57:57,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:57:57,060.060 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:57:57,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:57:57,113.113 INFO    ] No camera update needed
[2026-10-28 19:57:57,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:57:57,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:57:57,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:57:57,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:57:59,170.170 INFO    ] ================================================
[2026-10-28 19:57:59,185.185 INFO    ] Launching Daemon at Wed Oct 28 19:57:59 IST 2026
[2026-10-28 19:57:59,195.195 INFO    ] ================================================
[2026-10-28 19:57:59,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:57:59
[2026-10-28 19:58:00,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:58:00,728.728 INFO    ] Initializing speech engine...
[2026-10-28 19:58:00,736.736 INFO    ] 2026-10-28 19:58:00
[2026-10-28 19:58:01,016.016 INFO    ] 2026-10-28 19:58:01
[2026-10-28 19:58:01,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:58:01,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:58:01,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:58:01,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:58:01,745.745 INFO    ] time= 28/10/2026 19:58:01
[2026-10-28 19:58:01,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:58:01,778.778 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:58:01,882.882 INFO    ] No existing commands found in stream
[2026-10-28 19:58:06,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:58:06,895.895 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-28 19:58:10,178.178 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:58:10,181.181 INFO    ] Checking for system updates...
[2026-10-28 19:58:10,216.216 INFO    ] 200
[2026-10-28 19:58:10,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:58:10,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:58:10,276.276 INFO    ] No update needed
[2026-10-28 19:58:10,278.278 INFO    ] Checking for camera pi updates...
[2026-10-28 19:58:10,311.311 INFO    ] 200
[2026-10-28 19:58:10,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:58:10,359.359 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:58:10,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:58:10,451.451 INFO    ] No camera update needed
[2026-10-28 19:58:10,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:58:10,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:58:10,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:58:10,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:58:12,510.510 INFO    ] ================================================
[2026-10-28 19:58:12,525.525 INFO    ] Launching Daemon at Wed Oct 28 19:58:12 IST 2026
[2026-10-28 19:58:12,536.536 INFO    ] ================================================
[2026-10-28 19:58:13,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:58:13
[2026-10-28 19:58:13,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:58:13,943.943 INFO    ] Initializing speech engine...
[2026-10-28 19:58:13,951.951 INFO    ] 2026-10-28 19:58:13
[2026-10-28 19:58:14,227.227 INFO    ] 2026-10-28 19:58:14
[2026-10-28 19:58:14,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:58:14,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:58:14,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:58:14,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:58:14,794.794 INFO    ] time= 28/10/2026 19:58:14
[2026-10-28 19:58:14,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:58:14,825.825 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:58:14,950.950 INFO    ] No existing commands found in stream
[2026-10-28 19:58:19,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:58:19,969.969 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-28 19:58:23,280.280 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 19:58:23,283.283 INFO    ] Checking for system updates...
[2026-10-28 19:58:23,324.324 INFO    ] 200
[2026-10-28 19:58:23,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:58:23,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:58:23,383.383 INFO    ] No update needed
[2026-10-28 19:58:23,386.386 INFO    ] Checking for camera pi updates...
[2026-10-28 19:58:23,421.421 INFO    ] 200
[2026-10-28 19:58:23,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:58:23,465.465 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:58:23,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:58:23,651.651 INFO    ] No camera update needed
[2026-10-28 19:58:23,654.654 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:58:23,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:58:23,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:58:23,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:58:25,710.710 INFO    ] ================================================
[2026-10-28 19:58:25,726.726 INFO    ] Launching Daemon at Wed Oct 28 19:58:25 IST 2026
[2026-10-28 19:58:25,737.737 INFO    ] ================================================
[2026-10-28 19:58:26,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:58:26
[2026-10-28 19:58:26,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:58:27,228.228 INFO    ] Initializing speech engine...
[2026-10-28 19:58:27,254.254 INFO    ] 2026-10-28 19:58:27
[2026-10-28 19:58:27,536.536 INFO    ] 2026-10-28 19:58:27
[2026-10-28 19:58:27,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:58:27,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:58:27,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:58:28,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:58:28,190.190 INFO    ] time= 28/10/2026 19:58:28
[2026-10-28 19:58:28,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:58:28,230.230 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:58:28,401.401 INFO    ] No existing commands found in stream
[2026-10-28 19:58:33,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:58:33,430.430 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-28 19:58:36,176.176 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:58:36,179.179 INFO    ] Checking for system updates...
[2026-10-28 19:58:36,214.214 INFO    ] 200
[2026-10-28 19:58:36,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:58:36,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:58:36,271.271 INFO    ] No update needed
[2026-10-28 19:58:36,273.273 INFO    ] Checking for camera pi updates...
[2026-10-28 19:58:36,306.306 INFO    ] 200
[2026-10-28 19:58:36,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:58:36,349.349 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:58:36,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:58:36,431.431 INFO    ] No camera update needed
[2026-10-28 19:58:36,433.433 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:58:36,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:58:36,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:58:36,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:58:38,486.486 INFO    ] ================================================
[2026-10-28 19:58:38,501.501 INFO    ] Launching Daemon at Wed Oct 28 19:58:38 IST 2026
[2026-10-28 19:58:38,512.512 INFO    ] ================================================
[2026-10-28 19:58:39,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:58:39
[2026-10-28 19:58:39,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:58:39,949.949 INFO    ] Initializing speech engine...
[2026-10-28 19:58:39,958.958 INFO    ] 2026-10-28 19:58:39
[2026-10-28 19:58:40,251.251 INFO    ] 2026-10-28 19:58:40
[2026-10-28 19:58:40,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:58:40,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:58:40,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:58:40,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:58:40,773.773 INFO    ] time= 28/10/2026 19:58:40
[2026-10-28 19:58:40,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:58:40,877.877 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:58:41,056.056 INFO    ] No existing commands found in stream
[2026-10-28 19:58:46,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:58:46,078.078 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 19:58:46,921.921 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:58:46,924.924 INFO    ] Checking for system updates...
[2026-10-28 19:58:46,963.963 INFO    ] 200
[2026-10-28 19:58:46,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:58:47,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:58:47,020.020 INFO    ] No update needed
[2026-10-28 19:58:47,022.022 INFO    ] Checking for camera pi updates...
[2026-10-28 19:58:47,056.056 INFO    ] 200
[2026-10-28 19:58:47,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:58:47,099.099 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:58:47,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:58:47,182.182 INFO    ] No camera update needed
[2026-10-28 19:58:47,185.185 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:58:47,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:58:47,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:58:47,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:58:49,237.237 INFO    ] ================================================
[2026-10-28 19:58:49,252.252 INFO    ] Launching Daemon at Wed Oct 28 19:58:49 IST 2026
[2026-10-28 19:58:49,263.263 INFO    ] ================================================
[2026-10-28 19:58:49,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:58:49
[2026-10-28 19:58:50,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:58:50,707.707 INFO    ] Initializing speech engine...
[2026-10-28 19:58:50,730.730 INFO    ] 2026-10-28 19:58:50
[2026-10-28 19:58:50,986.986 INFO    ] 2026-10-28 19:58:50
[2026-10-28 19:58:51,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:58:51,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:58:51,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:58:51,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:58:51,709.709 INFO    ] time= 28/10/2026 19:58:51
[2026-10-28 19:58:51,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:58:51,789.789 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:58:51,934.934 INFO    ] No existing commands found in stream
[2026-10-28 19:58:56,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:58:56,950.950 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-28 19:59:01,430.430 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 19:59:01,433.433 INFO    ] Checking for system updates...
[2026-10-28 19:59:01,483.483 INFO    ] 200
[2026-10-28 19:59:01,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:59:01,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:59:01,553.553 INFO    ] No update needed
[2026-10-28 19:59:01,556.556 INFO    ] Checking for camera pi updates...
[2026-10-28 19:59:01,598.598 INFO    ] 200
[2026-10-28 19:59:01,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:59:01,646.646 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:59:01,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:59:01,739.739 INFO    ] No camera update needed
[2026-10-28 19:59:01,742.742 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:59:01,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:59:01,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:59:01,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:59:03,802.802 INFO    ] ================================================
[2026-10-28 19:59:03,817.817 INFO    ] Launching Daemon at Wed Oct 28 19:59:03 IST 2026
[2026-10-28 19:59:03,828.828 INFO    ] ================================================
[2026-10-28 19:59:04,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:59:04
[2026-10-28 19:59:05,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:59:05,384.384 INFO    ] Initializing speech engine...
[2026-10-28 19:59:05,397.397 INFO    ] 2026-10-28 19:59:05
[2026-10-28 19:59:05,666.666 INFO    ] 2026-10-28 19:59:05
[2026-10-28 19:59:05,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:59:06,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:59:06,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:59:06,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:59:06,428.428 INFO    ] time= 28/10/2026 19:59:06
[2026-10-28 19:59:06,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:59:06,520.520 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:59:06,747.747 INFO    ] No existing commands found in stream
[2026-10-28 19:59:11,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:59:11,781.781 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-10-28 19:59:15,860.860 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:59:15,863.863 INFO    ] Checking for system updates...
[2026-10-28 19:59:15,899.899 INFO    ] 200
[2026-10-28 19:59:15,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:59:15,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:59:15,958.958 INFO    ] No update needed
[2026-10-28 19:59:15,960.960 INFO    ] Checking for camera pi updates...
[2026-10-28 19:59:15,995.995 INFO    ] 200
[2026-10-28 19:59:15,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:59:16,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:59:16,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:59:16,125.125 INFO    ] No camera update needed
[2026-10-28 19:59:16,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:59:16,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:59:16,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:59:16,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:59:18,181.181 INFO    ] ================================================
[2026-10-28 19:59:18,196.196 INFO    ] Launching Daemon at Wed Oct 28 19:59:18 IST 2026
[2026-10-28 19:59:18,208.208 INFO    ] ================================================
[2026-10-28 19:59:18,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:59:18
[2026-10-28 19:59:19,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:59:19,658.658 INFO    ] Initializing speech engine...
[2026-10-28 19:59:19,667.667 INFO    ] 2026-10-28 19:59:19
[2026-10-28 19:59:19,926.926 INFO    ] 2026-10-28 19:59:19
[2026-10-28 19:59:19,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:59:20,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:59:20,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:59:20,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:59:20,655.655 INFO    ] time= 28/10/2026 19:59:20
[2026-10-28 19:59:20,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:59:20,750.750 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:59:20,919.919 INFO    ] No existing commands found in stream
[2026-10-28 19:59:25,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:59:25,931.931 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-28 19:59:27,124.124 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 19:59:27,127.127 INFO    ] Checking for system updates...
[2026-10-28 19:59:27,163.163 INFO    ] 200
[2026-10-28 19:59:27,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:59:27,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:59:27,220.220 INFO    ] No update needed
[2026-10-28 19:59:27,222.222 INFO    ] Checking for camera pi updates...
[2026-10-28 19:59:27,260.260 INFO    ] 200
[2026-10-28 19:59:27,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:59:27,304.304 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:59:27,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:59:27,396.396 INFO    ] No camera update needed
[2026-10-28 19:59:27,399.399 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:59:27,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:59:27,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:59:27,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:59:29,451.451 INFO    ] ================================================
[2026-10-28 19:59:29,466.466 INFO    ] Launching Daemon at Wed Oct 28 19:59:29 IST 2026
[2026-10-28 19:59:29,477.477 INFO    ] ================================================
[2026-10-28 19:59:30,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:59:30
[2026-10-28 19:59:30,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:59:30,942.942 INFO    ] Initializing speech engine...
[2026-10-28 19:59:30,951.951 INFO    ] 2026-10-28 19:59:30
[2026-10-28 19:59:31,232.232 INFO    ] 2026-10-28 19:59:31
[2026-10-28 19:59:31,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:59:31,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:59:31,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:59:31,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:59:31,891.891 INFO    ] time= 28/10/2026 19:59:31
[2026-10-28 19:59:31,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:59:31,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:59:32,071.071 INFO    ] No existing commands found in stream
[2026-10-28 19:59:37,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:59:37,088.088 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-28 19:59:40,092.092 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 19:59:40,095.095 INFO    ] Checking for system updates...
[2026-10-28 19:59:40,130.130 INFO    ] 200
[2026-10-28 19:59:40,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:59:40,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:59:40,188.188 INFO    ] No update needed
[2026-10-28 19:59:40,190.190 INFO    ] Checking for camera pi updates...
[2026-10-28 19:59:40,223.223 INFO    ] 200
[2026-10-28 19:59:40,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:59:40,269.269 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:59:40,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 19:59:40,380.380 INFO    ] No camera update needed
[2026-10-28 19:59:40,382.382 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:59:40,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:59:40,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:59:40,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:59:42,436.436 INFO    ] ================================================
[2026-10-28 19:59:42,451.451 INFO    ] Launching Daemon at Wed Oct 28 19:59:42 IST 2026
[2026-10-28 19:59:42,462.462 INFO    ] ================================================
[2026-10-28 19:59:43,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:59:43
[2026-10-28 19:59:43,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:59:43,901.901 INFO    ] Initializing speech engine...
[2026-10-28 19:59:43,917.917 INFO    ] 2026-10-28 19:59:43
[2026-10-28 19:59:44,200.200 INFO    ] 2026-10-28 19:59:44
[2026-10-28 19:59:44,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:59:44,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:59:44,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:59:44,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:59:44,818.818 INFO    ] time= 28/10/2026 19:59:44
[2026-10-28 19:59:44,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:59:44,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:59:44,999.999 INFO    ] No existing commands found in stream
[2026-10-28 19:59:50,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 19:59:50,022.022 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 19:59:52,014.014 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 19:59:52,017.017 INFO    ] Checking for system updates...
[2026-10-28 19:59:52,052.052 INFO    ] 200
[2026-10-28 19:59:52,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:59:52,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:59:52,109.109 INFO    ] No update needed
[2026-10-28 19:59:52,112.112 INFO    ] Checking for camera pi updates...
[2026-10-28 19:59:52,145.145 INFO    ] 200
[2026-10-28 19:59:52,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 19:59:52,188.188 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 19:59:52,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 19:59:52,270.270 INFO    ] No camera update needed
[2026-10-28 19:59:52,273.273 INFO    ] Script finished. Safe exiting...
[2026-10-28 19:59:52,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 19:59:52,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 19:59:52,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 19:59:54,326.326 INFO    ] ================================================
[2026-10-28 19:59:54,341.341 INFO    ] Launching Daemon at Wed Oct 28 19:59:54 IST 2026
[2026-10-28 19:59:54,352.352 INFO    ] ================================================
[2026-10-28 19:59:54,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 19:59:54
[2026-10-28 19:59:55,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 19:59:55,772.772 INFO    ] Initializing speech engine...
[2026-10-28 19:59:55,795.795 INFO    ] 2026-10-28 19:59:55
[2026-10-28 19:59:56,066.066 INFO    ] 2026-10-28 19:59:56
[2026-10-28 19:59:56,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 19:59:56,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 19:59:56,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 19:59:56,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 19:59:56,665.665 INFO    ] time= 28/10/2026 19:59:56
[2026-10-28 19:59:56,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 19:59:56,688.688 INFO    ] Checking for existing commands in stream...
[2026-10-28 19:59:56,830.830 INFO    ] No existing commands found in stream
[2026-10-28 20:00:01,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:00:01,856.856 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 20:00:08,637.637 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:00:08,640.640 INFO    ] Checking for system updates...
[2026-10-28 20:00:08,677.677 INFO    ] 200
[2026-10-28 20:00:08,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:00:08,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:00:08,735.735 INFO    ] No update needed
[2026-10-28 20:00:08,737.737 INFO    ] Checking for camera pi updates...
[2026-10-28 20:00:08,771.771 INFO    ] 200
[2026-10-28 20:00:08,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:00:08,815.815 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:00:08,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:00:08,913.913 INFO    ] No camera update needed
[2026-10-28 20:00:08,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:00:08,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:00:08,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:00:08,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:00:10,972.972 INFO    ] ================================================
[2026-10-28 20:00:10,987.987 INFO    ] Launching Daemon at Wed Oct 28 20:00:10 IST 2026
[2026-10-28 20:00:11,999.999 INFO    ] ================================================
[2026-10-28 20:00:11,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:00:11
[2026-10-28 20:00:12,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:00:12,407.407 INFO    ] Initializing speech engine...
[2026-10-28 20:00:12,425.425 INFO    ] 2026-10-28 20:00:12
[2026-10-28 20:00:12,708.708 INFO    ] 2026-10-28 20:00:12
[2026-10-28 20:00:12,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:00:13,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:00:13,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:00:13,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:00:13,343.343 INFO    ] time= 28/10/2026 20:00:13
[2026-10-28 20:00:13,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:00:13,370.370 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:00:13,556.556 INFO    ] No existing commands found in stream
[2026-10-28 20:00:18,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:00:18,589.589 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-10-28 20:00:22,678.678 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:00:22,681.681 INFO    ] Checking for system updates...
[2026-10-28 20:00:22,723.723 INFO    ] 200
[2026-10-28 20:00:22,726.726 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 20:00:22,728.728 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-28 20:00:22,731.731 INFO    ] Checking for camera pi updates...
[2026-10-28 20:00:22,778.778 INFO    ] 200
[2026-10-28 20:00:22,780.780 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 20:00:22,784.784 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-28 20:00:22,787.787 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:00:22,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:00:22,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:00:22,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:00:24,844.844 INFO    ] ================================================
[2026-10-28 20:00:24,861.861 INFO    ] Launching Daemon at Wed Oct 28 20:00:24 IST 2026
[2026-10-28 20:00:24,872.872 INFO    ] ================================================
[2026-10-28 20:00:25,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:00:25
[2026-10-28 20:00:26,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:00:26,309.309 INFO    ] Initializing speech engine...
[2026-10-28 20:00:26,318.318 INFO    ] 2026-10-28 20:00:26
[2026-10-28 20:00:26,611.611 INFO    ] 2026-10-28 20:00:26
[2026-10-28 20:00:26,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:00:26,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:00:26,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:00:27,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:00:27,245.245 INFO    ] time= 28/10/2026 20:00:27
[2026-10-28 20:00:27,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:00:27,270.270 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:00:27,437.437 INFO    ] No existing commands found in stream
[2026-10-28 20:00:32,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:00:32,471.471 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-28 20:00:37,064.064 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:00:37,066.066 INFO    ] Checking for system updates...
[2026-10-28 20:00:37,103.103 INFO    ] 200
[2026-10-28 20:00:37,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:00:37,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:00:37,170.170 INFO    ] No update needed
[2026-10-28 20:00:37,172.172 INFO    ] Checking for camera pi updates...
[2026-10-28 20:00:37,211.211 INFO    ] 200
[2026-10-28 20:00:37,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:00:37,260.260 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:00:37,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:00:37,346.346 INFO    ] No camera update needed
[2026-10-28 20:00:37,349.349 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:00:37,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:00:37,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:00:37,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:00:39,405.405 INFO    ] ================================================
[2026-10-28 20:00:39,420.420 INFO    ] Launching Daemon at Wed Oct 28 20:00:39 IST 2026
[2026-10-28 20:00:39,431.431 INFO    ] ================================================
[2026-10-28 20:00:40,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:00:40
[2026-10-28 20:00:40,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:00:40,889.889 INFO    ] Initializing speech engine...
[2026-10-28 20:00:40,903.903 INFO    ] 2026-10-28 20:00:40
[2026-10-28 20:00:41,190.190 INFO    ] 2026-10-28 20:00:41
[2026-10-28 20:00:41,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:00:41,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:00:41,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:00:41,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:00:41,827.827 INFO    ] time= 28/10/2026 20:00:41
[2026-10-28 20:00:41,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:00:41,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:00:42,000.000 INFO    ] No existing commands found in stream
[2026-10-28 20:00:47,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:00:47,019.019 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 20:00:51,410.410 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:00:51,413.413 INFO    ] Checking for system updates...
[2026-10-28 20:00:51,449.449 INFO    ] 200
[2026-10-28 20:00:51,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:00:51,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:00:51,507.507 INFO    ] No update needed
[2026-10-28 20:00:51,510.510 INFO    ] Checking for camera pi updates...
[2026-10-28 20:00:51,545.545 INFO    ] 200
[2026-10-28 20:00:51,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:00:51,590.590 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:00:51,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:00:51,674.674 INFO    ] No camera update needed
[2026-10-28 20:00:51,676.676 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:00:51,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:00:51,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:00:51,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:00:53,729.729 INFO    ] ================================================
[2026-10-28 20:00:53,745.745 INFO    ] Launching Daemon at Wed Oct 28 20:00:53 IST 2026
[2026-10-28 20:00:53,756.756 INFO    ] ================================================
[2026-10-28 20:00:54,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:00:54
[2026-10-28 20:00:54,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:00:55,209.209 INFO    ] Initializing speech engine...
[2026-10-28 20:00:55,220.220 INFO    ] 2026-10-28 20:00:55
[2026-10-28 20:00:55,467.467 INFO    ] 2026-10-28 20:00:55
[2026-10-28 20:00:55,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:00:55,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:00:55,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:00:56,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:00:56,078.078 INFO    ] time= 28/10/2026 20:00:56
[2026-10-28 20:00:56,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:00:56,115.115 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:00:56,274.274 INFO    ] No existing commands found in stream
[2026-10-28 20:01:01,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:01:01,318.318 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 20:01:05,280.280 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:01:05,283.283 INFO    ] Checking for system updates...
[2026-10-28 20:01:05,319.319 INFO    ] 200
[2026-10-28 20:01:05,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:01:05,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:01:05,376.376 INFO    ] No update needed
[2026-10-28 20:01:05,379.379 INFO    ] Checking for camera pi updates...
[2026-10-28 20:01:05,412.412 INFO    ] 200
[2026-10-28 20:01:05,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:01:05,455.455 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:01:05,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:01:05,532.532 INFO    ] No camera update needed
[2026-10-28 20:01:05,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:01:05,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:01:05,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:01:05,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:01:07,590.590 INFO    ] ================================================
[2026-10-28 20:01:07,606.606 INFO    ] Launching Daemon at Wed Oct 28 20:01:07 IST 2026
[2026-10-28 20:01:07,617.617 INFO    ] ================================================
[2026-10-28 20:01:08,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:01:08
[2026-10-28 20:01:08,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:01:09,064.064 INFO    ] Initializing speech engine...
[2026-10-28 20:01:09,069.069 INFO    ] 2026-10-28 20:01:09
[2026-10-28 20:01:09,367.367 INFO    ] 2026-10-28 20:01:09
[2026-10-28 20:01:09,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:01:09,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:01:09,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:01:09,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:01:09,866.866 INFO    ] time= 28/10/2026 20:01:09
[2026-10-28 20:01:09,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:01:09,986.986 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:01:10,141.141 INFO    ] No existing commands found in stream
[2026-10-28 20:01:15,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:01:15,167.167 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-28 20:01:19,360.360 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:01:19,363.363 INFO    ] Checking for system updates...
[2026-10-28 20:01:19,403.403 INFO    ] 200
[2026-10-28 20:01:19,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:01:19,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:01:19,468.468 INFO    ] No update needed
[2026-10-28 20:01:19,470.470 INFO    ] Checking for camera pi updates...
[2026-10-28 20:01:19,507.507 INFO    ] 200
[2026-10-28 20:01:19,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:01:19,550.550 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:01:19,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:01:19,648.648 INFO    ] No camera update needed
[2026-10-28 20:01:19,650.650 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:01:19,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:01:19,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:01:19,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:01:21,704.704 INFO    ] ================================================
[2026-10-28 20:01:21,720.720 INFO    ] Launching Daemon at Wed Oct 28 20:01:21 IST 2026
[2026-10-28 20:01:21,731.731 INFO    ] ================================================
[2026-10-28 20:01:22,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:01:22
[2026-10-28 20:01:22,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:01:23,157.157 INFO    ] Initializing speech engine...
[2026-10-28 20:01:23,182.182 INFO    ] 2026-10-28 20:01:23
[2026-10-28 20:01:23,458.458 INFO    ] 2026-10-28 20:01:23
[2026-10-28 20:01:23,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:01:23,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:01:23,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:01:24,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:01:24,088.088 INFO    ] time= 28/10/2026 20:01:24
[2026-10-28 20:01:24,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:01:24,124.124 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:01:24,274.274 INFO    ] No existing commands found in stream
[2026-10-28 20:01:29,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:01:29,292.292 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 20:01:30,528.528 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:01:30,530.530 INFO    ] Checking for system updates...
[2026-10-28 20:01:30,566.566 INFO    ] 200
[2026-10-28 20:01:30,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:01:30,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:01:30,624.624 INFO    ] No update needed
[2026-10-28 20:01:30,626.626 INFO    ] Checking for camera pi updates...
[2026-10-28 20:01:30,659.659 INFO    ] 200
[2026-10-28 20:01:30,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:01:30,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:01:30,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:01:30,787.787 INFO    ] No camera update needed
[2026-10-28 20:01:30,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:01:30,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:01:30,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:01:30,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:01:32,846.846 INFO    ] ================================================
[2026-10-28 20:01:32,867.867 INFO    ] Launching Daemon at Wed Oct 28 20:01:32 IST 2026
[2026-10-28 20:01:32,879.879 INFO    ] ================================================
[2026-10-28 20:01:33,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:01:33
[2026-10-28 20:01:34,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:01:34,270.270 INFO    ] Initializing speech engine...
[2026-10-28 20:01:34,279.279 INFO    ] 2026-10-28 20:01:34
[2026-10-28 20:01:34,551.551 INFO    ] 2026-10-28 20:01:34
[2026-10-28 20:01:34,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:01:34,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:01:34,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:01:35,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:01:35,132.132 INFO    ] time= 28/10/2026 20:01:35
[2026-10-28 20:01:35,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:01:35,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:01:35,338.338 INFO    ] No existing commands found in stream
[2026-10-28 20:01:40,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:01:40,366.366 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 20:01:41,174.174 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:01:41,176.176 INFO    ] Checking for system updates...
[2026-10-28 20:01:41,211.211 INFO    ] 200
[2026-10-28 20:01:41,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:01:41,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:01:41,270.270 INFO    ] No update needed
[2026-10-28 20:01:41,273.273 INFO    ] Checking for camera pi updates...
[2026-10-28 20:01:41,308.308 INFO    ] 200
[2026-10-28 20:01:41,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:01:41,354.354 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:01:41,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:01:41,435.435 INFO    ] No camera update needed
[2026-10-28 20:01:41,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:01:41,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:01:41,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:01:41,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:01:43,492.492 INFO    ] ================================================
[2026-10-28 20:01:43,508.508 INFO    ] Launching Daemon at Wed Oct 28 20:01:43 IST 2026
[2026-10-28 20:01:43,519.519 INFO    ] ================================================
[2026-10-28 20:01:44,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:01:44
[2026-10-28 20:01:44,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:01:44,946.946 INFO    ] Initializing speech engine...
[2026-10-28 20:01:44,954.954 INFO    ] 2026-10-28 20:01:44
[2026-10-28 20:01:45,205.205 INFO    ] 2026-10-28 20:01:45
[2026-10-28 20:01:45,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:01:45,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:01:45,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:01:45,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:01:45,777.777 INFO    ] time= 28/10/2026 20:01:45
[2026-10-28 20:01:45,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:01:45,824.824 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:01:46,004.004 INFO    ] No existing commands found in stream
[2026-10-28 20:01:51,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:01:51,032.032 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-28 20:01:55,045.045 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:01:55,047.047 INFO    ] Checking for system updates...
[2026-10-28 20:01:55,091.091 INFO    ] 200
[2026-10-28 20:01:55,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:01:55,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:01:55,160.160 INFO    ] No update needed
[2026-10-28 20:01:55,163.163 INFO    ] Checking for camera pi updates...
[2026-10-28 20:01:55,199.199 INFO    ] 200
[2026-10-28 20:01:55,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:01:55,247.247 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:01:55,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:01:55,339.339 INFO    ] No camera update needed
[2026-10-28 20:01:55,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:01:55,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:01:55,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:01:55,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:01:57,401.401 INFO    ] ================================================
[2026-10-28 20:01:57,417.417 INFO    ] Launching Daemon at Wed Oct 28 20:01:57 IST 2026
[2026-10-28 20:01:57,428.428 INFO    ] ================================================
[2026-10-28 20:01:58,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:01:58
[2026-10-28 20:01:58,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:01:59,140.140 INFO    ] Initializing speech engine...
[2026-10-28 20:01:59,154.154 INFO    ] 2026-10-28 20:01:59
[2026-10-28 20:01:59,468.468 INFO    ] 2026-10-28 20:01:59
[2026-10-28 20:01:59,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:01:59,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:01:59,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:02:00,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:02:00,245.245 INFO    ] time= 28/10/2026 20:02:00
[2026-10-28 20:02:00,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:02:00,370.370 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:02:00,560.560 INFO    ] No existing commands found in stream
[2026-10-28 20:02:05,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:02:05,584.584 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 20:02:10,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:02:10,204.204 INFO    ] Checking for system updates...
[2026-10-28 20:02:10,241.241 INFO    ] 200
[2026-10-28 20:02:10,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:02:10,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:02:10,307.307 INFO    ] No update needed
[2026-10-28 20:02:10,311.311 INFO    ] Checking for camera pi updates...
[2026-10-28 20:02:10,345.345 INFO    ] 200
[2026-10-28 20:02:10,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:02:10,390.390 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:02:10,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:02:10,475.475 INFO    ] No camera update needed
[2026-10-28 20:02:10,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:02:10,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:02:10,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:02:10,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:02:12,536.536 INFO    ] ================================================
[2026-10-28 20:02:12,552.552 INFO    ] Launching Daemon at Wed Oct 28 20:02:12 IST 2026
[2026-10-28 20:02:12,564.564 INFO    ] ================================================
[2026-10-28 20:02:13,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:02:13
[2026-10-28 20:02:13,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:02:14,192.192 INFO    ] Initializing speech engine...
[2026-10-28 20:02:14,200.200 INFO    ] 2026-10-28 20:02:14
[2026-10-28 20:02:14,479.479 INFO    ] 2026-10-28 20:02:14
[2026-10-28 20:02:14,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:02:14,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:02:14,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:02:15,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:02:15,106.106 INFO    ] time= 28/10/2026 20:02:15
[2026-10-28 20:02:15,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:02:15,217.217 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:02:15,377.377 INFO    ] No existing commands found in stream
[2026-10-28 20:02:20,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:02:20,411.411 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-28 20:02:24,408.408 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:02:24,411.411 INFO    ] Checking for system updates...
[2026-10-28 20:02:24,448.448 INFO    ] 200
[2026-10-28 20:02:24,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:02:24,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:02:24,507.507 INFO    ] No update needed
[2026-10-28 20:02:24,510.510 INFO    ] Checking for camera pi updates...
[2026-10-28 20:02:24,545.545 INFO    ] 200
[2026-10-28 20:02:24,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:02:24,590.590 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:02:24,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:02:24,677.677 INFO    ] No camera update needed
[2026-10-28 20:02:24,679.679 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:02:24,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:02:24,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:02:24,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:02:26,731.731 INFO    ] ================================================
[2026-10-28 20:02:26,747.747 INFO    ] Launching Daemon at Wed Oct 28 20:02:26 IST 2026
[2026-10-28 20:02:26,758.758 INFO    ] ================================================
[2026-10-28 20:02:27,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:02:27
[2026-10-28 20:02:27,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:02:28,203.203 INFO    ] Initializing speech engine...
[2026-10-28 20:02:28,217.217 INFO    ] 2026-10-28 20:02:28
[2026-10-28 20:02:28,505.505 INFO    ] 2026-10-28 20:02:28
[2026-10-28 20:02:28,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:02:28,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:02:28,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:02:29,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:02:29,146.146 INFO    ] time= 28/10/2026 20:02:29
[2026-10-28 20:02:29,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:02:29,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:02:29,315.315 INFO    ] No existing commands found in stream
[2026-10-28 20:02:34,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:02:34,335.335 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 20:02:36,562.562 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:02:36,565.565 INFO    ] Checking for system updates...
[2026-10-28 20:02:36,605.605 INFO    ] 200
[2026-10-28 20:02:36,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:02:36,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:02:36,662.662 INFO    ] No update needed
[2026-10-28 20:02:36,665.665 INFO    ] Checking for camera pi updates...
[2026-10-28 20:02:36,699.699 INFO    ] 200
[2026-10-28 20:02:36,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:02:36,756.756 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:02:37,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:02:37,054.054 INFO    ] No camera update needed
[2026-10-28 20:02:37,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:02:37,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:02:37,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:02:37,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:02:39,110.110 INFO    ] ================================================
[2026-10-28 20:02:39,126.126 INFO    ] Launching Daemon at Wed Oct 28 20:02:39 IST 2026
[2026-10-28 20:02:39,137.137 INFO    ] ================================================
[2026-10-28 20:02:39,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:02:39
[2026-10-28 20:02:40,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:02:40,574.574 INFO    ] Initializing speech engine...
[2026-10-28 20:02:40,583.583 INFO    ] 2026-10-28 20:02:40
[2026-10-28 20:02:40,878.878 INFO    ] 2026-10-28 20:02:40
[2026-10-28 20:02:40,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:02:41,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:02:41,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:02:41,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:02:41,506.506 INFO    ] time= 28/10/2026 20:02:41
[2026-10-28 20:02:41,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:02:41,534.534 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:02:41,683.683 INFO    ] No existing commands found in stream
[2026-10-28 20:02:46,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:02:46,710.710 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-28 20:02:49,543.543 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:02:49,545.545 INFO    ] Checking for system updates...
[2026-10-28 20:02:49,581.581 INFO    ] 200
[2026-10-28 20:02:49,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:02:49,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:02:49,640.640 INFO    ] No update needed
[2026-10-28 20:02:49,642.642 INFO    ] Checking for camera pi updates...
[2026-10-28 20:02:49,675.675 INFO    ] 200
[2026-10-28 20:02:49,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:02:49,718.718 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:02:49,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:02:49,820.820 INFO    ] No camera update needed
[2026-10-28 20:02:49,823.823 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:02:49,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:02:49,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:02:49,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:02:51,877.877 INFO    ] ================================================
[2026-10-28 20:02:51,893.893 INFO    ] Launching Daemon at Wed Oct 28 20:02:51 IST 2026
[2026-10-28 20:02:51,904.904 INFO    ] ================================================
[2026-10-28 20:02:52,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:02:52
[2026-10-28 20:02:53,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:02:53,526.526 INFO    ] Initializing speech engine...
[2026-10-28 20:02:53,533.533 INFO    ] 2026-10-28 20:02:53
[2026-10-28 20:02:53,810.810 INFO    ] 2026-10-28 20:02:53
[2026-10-28 20:02:53,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:02:54,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:02:54,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:02:54,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:02:54,511.511 INFO    ] time= 28/10/2026 20:02:54
[2026-10-28 20:02:54,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:02:54,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:02:54,753.753 INFO    ] No existing commands found in stream
[2026-10-28 20:02:59,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:02:59,788.788 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-28 20:03:03,682.682 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:03:03,686.686 INFO    ] Checking for system updates...
[2026-10-28 20:03:03,730.730 INFO    ] 200
[2026-10-28 20:03:03,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:03:03,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:03:03,791.791 INFO    ] No update needed
[2026-10-28 20:03:03,794.794 INFO    ] Checking for camera pi updates...
[2026-10-28 20:03:03,828.828 INFO    ] 200
[2026-10-28 20:03:03,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:03:03,877.877 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:03:03,970.970 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:03:03,972.972 INFO    ] No camera update needed
[2026-10-28 20:03:03,975.975 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:03:03,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:03:03,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:03:03,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:03:06,028.028 INFO    ] ================================================
[2026-10-28 20:03:06,044.044 INFO    ] Launching Daemon at Wed Oct 28 20:03:06 IST 2026
[2026-10-28 20:03:06,055.055 INFO    ] ================================================
[2026-10-28 20:03:06,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:03:06
[2026-10-28 20:03:07,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:03:07,514.514 INFO    ] Initializing speech engine...
[2026-10-28 20:03:07,535.535 INFO    ] 2026-10-28 20:03:07
[2026-10-28 20:03:07,795.795 INFO    ] 2026-10-28 20:03:07
[2026-10-28 20:03:07,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:03:08,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:03:08,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:03:08,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:03:08,408.408 INFO    ] time= 28/10/2026 20:03:08
[2026-10-28 20:03:08,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:03:08,431.431 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:03:08,591.591 INFO    ] No existing commands found in stream
[2026-10-28 20:03:13,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:03:13,626.626 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-28 20:03:15,783.783 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:03:15,786.786 INFO    ] Checking for system updates...
[2026-10-28 20:03:15,821.821 INFO    ] 200
[2026-10-28 20:03:15,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:03:15,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:03:15,878.878 INFO    ] No update needed
[2026-10-28 20:03:15,881.881 INFO    ] Checking for camera pi updates...
[2026-10-28 20:03:15,919.919 INFO    ] 200
[2026-10-28 20:03:15,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:03:15,961.961 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:03:16,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:03:16,061.061 INFO    ] No camera update needed
[2026-10-28 20:03:16,063.063 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:03:16,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:03:16,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:03:16,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:03:18,116.116 INFO    ] ================================================
[2026-10-28 20:03:18,131.131 INFO    ] Launching Daemon at Wed Oct 28 20:03:18 IST 2026
[2026-10-28 20:03:18,142.142 INFO    ] ================================================
[2026-10-28 20:03:18,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:03:18
[2026-10-28 20:03:19,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:03:19,575.575 INFO    ] Initializing speech engine...
[2026-10-28 20:03:19,580.580 INFO    ] 2026-10-28 20:03:19
[2026-10-28 20:03:19,879.879 INFO    ] 2026-10-28 20:03:19
[2026-10-28 20:03:19,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:03:20,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:03:20,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:03:20,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:03:20,415.415 INFO    ] time= 28/10/2026 20:03:20
[2026-10-28 20:03:20,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:03:20,503.503 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:03:20,651.651 INFO    ] No existing commands found in stream
[2026-10-28 20:03:25,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:03:25,675.675 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 20:03:29,853.853 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:03:29,855.855 INFO    ] Checking for system updates...
[2026-10-28 20:03:29,890.890 INFO    ] 200
[2026-10-28 20:03:29,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:03:29,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:03:29,949.949 INFO    ] No update needed
[2026-10-28 20:03:29,951.951 INFO    ] Checking for camera pi updates...
[2026-10-28 20:03:29,985.985 INFO    ] 200
[2026-10-28 20:03:29,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:03:30,027.027 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:03:30,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:03:30,112.112 INFO    ] No camera update needed
[2026-10-28 20:03:30,115.115 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:03:30,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:03:30,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:03:30,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:03:32,169.169 INFO    ] ================================================
[2026-10-28 20:03:32,186.186 INFO    ] Launching Daemon at Wed Oct 28 20:03:32 IST 2026
[2026-10-28 20:03:32,199.199 INFO    ] ================================================
[2026-10-28 20:03:32,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:03:32
[2026-10-28 20:03:33,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:03:33,717.717 INFO    ] Initializing speech engine...
[2026-10-28 20:03:33,724.724 INFO    ] 2026-10-28 20:03:33
[2026-10-28 20:03:33,986.986 INFO    ] 2026-10-28 20:03:33
[2026-10-28 20:03:34,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:03:34,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:03:34,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:03:34,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:03:34,775.775 INFO    ] time= 28/10/2026 20:03:34
[2026-10-28 20:03:34,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:03:34,889.889 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:03:35,096.096 INFO    ] No existing commands found in stream
[2026-10-28 20:03:40,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:03:40,115.115 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 20:03:43,452.452 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:03:43,455.455 INFO    ] Checking for system updates...
[2026-10-28 20:03:43,490.490 INFO    ] 200
[2026-10-28 20:03:43,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:03:43,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:03:43,549.549 INFO    ] No update needed
[2026-10-28 20:03:43,551.551 INFO    ] Checking for camera pi updates...
[2026-10-28 20:03:43,593.593 INFO    ] 200
[2026-10-28 20:03:43,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:03:43,640.640 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:03:43,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:03:43,712.712 INFO    ] No camera update needed
[2026-10-28 20:03:43,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:03:43,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:03:43,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:03:43,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:03:45,769.769 INFO    ] ================================================
[2026-10-28 20:03:45,784.784 INFO    ] Launching Daemon at Wed Oct 28 20:03:45 IST 2026
[2026-10-28 20:03:45,794.794 INFO    ] ================================================
[2026-10-28 20:03:46,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:03:46
[2026-10-28 20:03:46,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:03:47,202.202 INFO    ] Initializing speech engine...
[2026-10-28 20:03:47,209.209 INFO    ] 2026-10-28 20:03:47
[2026-10-28 20:03:47,504.504 INFO    ] 2026-10-28 20:03:47
[2026-10-28 20:03:47,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:03:47,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:03:47,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:03:48,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:03:48,147.147 INFO    ] time= 28/10/2026 20:03:48
[2026-10-28 20:03:48,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:03:48,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:03:48,306.306 INFO    ] No existing commands found in stream
[2026-10-28 20:03:53,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:03:53,329.329 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 20:03:56,662.662 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:03:56,665.665 INFO    ] Checking for system updates...
[2026-10-28 20:03:56,701.701 INFO    ] 200
[2026-10-28 20:03:56,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:03:56,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:03:56,758.758 INFO    ] No update needed
[2026-10-28 20:03:56,760.760 INFO    ] Checking for camera pi updates...
[2026-10-28 20:03:56,794.794 INFO    ] 200
[2026-10-28 20:03:56,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:03:56,844.844 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:03:56,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:03:56,931.931 INFO    ] No camera update needed
[2026-10-28 20:03:56,934.934 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:03:56,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:03:56,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:03:56,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:03:58,988.988 INFO    ] ================================================
[2026-10-28 20:03:59,003.003 INFO    ] Launching Daemon at Wed Oct 28 20:03:58 IST 2026
[2026-10-28 20:03:59,013.013 INFO    ] ================================================
[2026-10-28 20:03:59,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:03:59
[2026-10-28 20:04:00,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:04:00,443.443 INFO    ] Initializing speech engine...
[2026-10-28 20:04:00,458.458 INFO    ] 2026-10-28 20:04:00
[2026-10-28 20:04:00,728.728 INFO    ] 2026-10-28 20:04:00
[2026-10-28 20:04:00,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:04:00,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:04:00,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:04:01,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:04:01,311.311 INFO    ] time= 28/10/2026 20:04:01
[2026-10-28 20:04:01,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:04:01,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:04:01,515.515 INFO    ] No existing commands found in stream
[2026-10-28 20:04:06,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:04:06,543.543 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-28 20:04:10,819.819 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:04:10,822.822 INFO    ] Checking for system updates...
[2026-10-28 20:04:10,858.858 INFO    ] 200
[2026-10-28 20:04:10,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:04:10,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:04:10,915.915 INFO    ] No update needed
[2026-10-28 20:04:10,917.917 INFO    ] Checking for camera pi updates...
[2026-10-28 20:04:10,950.950 INFO    ] 200
[2026-10-28 20:04:10,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:04:10,993.993 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:04:11,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:04:11,082.082 INFO    ] No camera update needed
[2026-10-28 20:04:11,085.085 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:04:11,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:04:11,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:04:11,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:04:13,137.137 INFO    ] ================================================
[2026-10-28 20:04:13,152.152 INFO    ] Launching Daemon at Wed Oct 28 20:04:13 IST 2026
[2026-10-28 20:04:13,162.162 INFO    ] ================================================
[2026-10-28 20:04:13,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:04:13
[2026-10-28 20:04:14,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:04:14,662.662 INFO    ] Initializing speech engine...
[2026-10-28 20:04:14,673.673 INFO    ] 2026-10-28 20:04:14
[2026-10-28 20:04:14,934.934 INFO    ] 2026-10-28 20:04:14
[2026-10-28 20:04:14,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:04:15,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:04:15,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:04:15,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:04:15,547.547 INFO    ] time= 28/10/2026 20:04:15
[2026-10-28 20:04:15,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:04:15,565.565 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:04:15,724.724 INFO    ] No existing commands found in stream
[2026-10-28 20:04:20,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:04:20,757.757 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-28 20:04:23,569.569 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:04:23,572.572 INFO    ] Checking for system updates...
[2026-10-28 20:04:23,607.607 INFO    ] 200
[2026-10-28 20:04:23,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:04:23,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:04:23,672.672 INFO    ] No update needed
[2026-10-28 20:04:23,674.674 INFO    ] Checking for camera pi updates...
[2026-10-28 20:04:23,711.711 INFO    ] 200
[2026-10-28 20:04:23,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:04:23,754.754 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:04:23,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:04:23,836.836 INFO    ] No camera update needed
[2026-10-28 20:04:23,838.838 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:04:23,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:04:23,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:04:23,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:04:25,894.894 INFO    ] ================================================
[2026-10-28 20:04:25,909.909 INFO    ] Launching Daemon at Wed Oct 28 20:04:25 IST 2026
[2026-10-28 20:04:25,920.920 INFO    ] ================================================
[2026-10-28 20:04:26,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:04:26
[2026-10-28 20:04:27,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:04:27,344.344 INFO    ] Initializing speech engine...
[2026-10-28 20:04:27,360.360 INFO    ] 2026-10-28 20:04:27
[2026-10-28 20:04:27,647.647 INFO    ] 2026-10-28 20:04:27
[2026-10-28 20:04:27,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:04:27,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:04:27,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:04:28,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:04:28,275.275 INFO    ] time= 28/10/2026 20:04:28
[2026-10-28 20:04:28,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:04:28,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:04:28,437.437 INFO    ] No existing commands found in stream
[2026-10-28 20:04:33,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:04:33,470.470 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 20:04:36,563.563 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:04:36,565.565 INFO    ] Checking for system updates...
[2026-10-28 20:04:36,600.600 INFO    ] 200
[2026-10-28 20:04:36,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:04:36,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:04:36,658.658 INFO    ] No update needed
[2026-10-28 20:04:36,661.661 INFO    ] Checking for camera pi updates...
[2026-10-28 20:04:36,694.694 INFO    ] 200
[2026-10-28 20:04:36,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:04:36,737.737 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:04:36,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:04:36,825.825 INFO    ] No camera update needed
[2026-10-28 20:04:36,827.827 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:04:36,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:04:36,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:04:36,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:04:38,881.881 INFO    ] ================================================
[2026-10-28 20:04:38,896.896 INFO    ] Launching Daemon at Wed Oct 28 20:04:38 IST 2026
[2026-10-28 20:04:38,907.907 INFO    ] ================================================
[2026-10-28 20:04:39,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:04:39
[2026-10-28 20:04:40,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:04:40,545.545 INFO    ] Initializing speech engine...
[2026-10-28 20:04:40,560.560 INFO    ] 2026-10-28 20:04:40
[2026-10-28 20:04:40,849.849 INFO    ] 2026-10-28 20:04:40
[2026-10-28 20:04:40,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:04:41,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:04:41,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:04:41,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:04:41,623.623 INFO    ] time= 28/10/2026 20:04:41
[2026-10-28 20:04:41,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:04:41,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:04:41,850.850 INFO    ] No existing commands found in stream
[2026-10-28 20:04:46,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:04:46,864.864 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-28 20:04:48,243.243 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:04:48,246.246 INFO    ] Checking for system updates...
[2026-10-28 20:04:48,283.283 INFO    ] 200
[2026-10-28 20:04:48,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:04:48,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:04:48,343.343 INFO    ] No update needed
[2026-10-28 20:04:48,346.346 INFO    ] Checking for camera pi updates...
[2026-10-28 20:04:48,380.380 INFO    ] 200
[2026-10-28 20:04:48,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:04:48,425.425 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:04:48,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:04:48,601.601 INFO    ] No camera update needed
[2026-10-28 20:04:48,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:04:48,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:04:48,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:04:48,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:04:50,662.662 INFO    ] ================================================
[2026-10-28 20:04:50,678.678 INFO    ] Launching Daemon at Wed Oct 28 20:04:50 IST 2026
[2026-10-28 20:04:50,688.688 INFO    ] ================================================
[2026-10-28 20:04:51,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:04:51
[2026-10-28 20:04:51,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:04:52,182.182 INFO    ] Initializing speech engine...
[2026-10-28 20:04:52,191.191 INFO    ] 2026-10-28 20:04:52
[2026-10-28 20:04:52,441.441 INFO    ] 2026-10-28 20:04:52
[2026-10-28 20:04:52,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:04:52,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:04:52,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:04:53,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:04:53,050.050 INFO    ] time= 28/10/2026 20:04:53
[2026-10-28 20:04:53,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:04:53,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:04:53,255.255 INFO    ] No existing commands found in stream
[2026-10-28 20:04:58,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:04:58,282.282 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 20:04:58,920.920 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:04:58,923.923 INFO    ] Checking for system updates...
[2026-10-28 20:04:58,963.963 INFO    ] 200
[2026-10-28 20:04:58,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:04:59,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:04:59,027.027 INFO    ] No update needed
[2026-10-28 20:04:59,030.030 INFO    ] Checking for camera pi updates...
[2026-10-28 20:04:59,063.063 INFO    ] 200
[2026-10-28 20:04:59,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:04:59,111.111 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:04:59,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:04:59,195.195 INFO    ] No camera update needed
[2026-10-28 20:04:59,197.197 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:04:59,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:04:59,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:04:59,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:05:01,282.282 INFO    ] ================================================
[2026-10-28 20:05:01,343.343 INFO    ] Launching Daemon at Wed Oct 28 20:05:01 IST 2026
[2026-10-28 20:05:01,387.387 INFO    ] ================================================
[2026-10-28 20:05:02,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:05:02
[2026-10-28 20:05:02,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:05:03,239.239 INFO    ] Initializing speech engine...
[2026-10-28 20:05:03,252.252 INFO    ] 2026-10-28 20:05:03
[2026-10-28 20:05:03,532.532 INFO    ] 2026-10-28 20:05:03
[2026-10-28 20:05:03,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:05:03,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:05:03,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:05:04,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:05:04,067.067 INFO    ] time= 28/10/2026 20:05:04
[2026-10-28 20:05:04,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:05:04,176.176 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:05:04,257.257 INFO    ] No existing commands found in stream
[2026-10-28 20:05:09,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:05:09,285.285 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-10-28 20:05:12,320.320 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:05:12,323.323 INFO    ] Checking for system updates...
[2026-10-28 20:05:12,358.358 INFO    ] 200
[2026-10-28 20:05:12,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:05:12,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:05:12,416.416 INFO    ] No update needed
[2026-10-28 20:05:12,418.418 INFO    ] Checking for camera pi updates...
[2026-10-28 20:05:12,453.453 INFO    ] 200
[2026-10-28 20:05:12,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:05:12,513.513 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:05:12,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:05:12,592.592 INFO    ] No camera update needed
[2026-10-28 20:05:12,594.594 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:05:12,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:05:12,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:05:12,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:05:14,647.647 INFO    ] ================================================
[2026-10-28 20:05:14,662.662 INFO    ] Launching Daemon at Wed Oct 28 20:05:14 IST 2026
[2026-10-28 20:05:14,673.673 INFO    ] ================================================
[2026-10-28 20:05:15,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:05:15
[2026-10-28 20:05:15,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:05:16,111.111 INFO    ] Initializing speech engine...
[2026-10-28 20:05:16,119.119 INFO    ] 2026-10-28 20:05:16
[2026-10-28 20:05:16,420.420 INFO    ] 2026-10-28 20:05:16
[2026-10-28 20:05:16,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:05:16,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:05:16,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:05:16,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:05:17,030.030 INFO    ] time= 28/10/2026 20:05:16
[2026-10-28 20:05:17,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:05:17,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:05:17,222.222 INFO    ] No existing commands found in stream
[2026-10-28 20:05:22,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:05:22,249.249 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-28 20:05:24,126.126 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:05:24,128.128 INFO    ] Checking for system updates...
[2026-10-28 20:05:24,168.168 INFO    ] 200
[2026-10-28 20:05:24,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:05:24,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:05:24,232.232 INFO    ] No update needed
[2026-10-28 20:05:24,234.234 INFO    ] Checking for camera pi updates...
[2026-10-28 20:05:24,267.267 INFO    ] 200
[2026-10-28 20:05:24,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:05:24,315.315 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:05:24,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:05:24,390.390 INFO    ] No camera update needed
[2026-10-28 20:05:24,393.393 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:05:24,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:05:24,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:05:24,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:05:26,447.447 INFO    ] ================================================
[2026-10-28 20:05:26,463.463 INFO    ] Launching Daemon at Wed Oct 28 20:05:26 IST 2026
[2026-10-28 20:05:26,475.475 INFO    ] ================================================
[2026-10-28 20:05:27,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:05:27
[2026-10-28 20:05:27,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:05:27,905.905 INFO    ] Initializing speech engine...
[2026-10-28 20:05:27,912.912 INFO    ] 2026-10-28 20:05:27
[2026-10-28 20:05:28,211.211 INFO    ] 2026-10-28 20:05:28
[2026-10-28 20:05:28,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:05:28,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:05:28,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:05:28,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:05:28,852.852 INFO    ] time= 28/10/2026 20:05:28
[2026-10-28 20:05:28,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:05:28,880.880 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:05:29,028.028 INFO    ] No existing commands found in stream
[2026-10-28 20:05:34,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:05:34,048.048 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 20:05:38,811.811 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:05:38,814.814 INFO    ] Checking for system updates...
[2026-10-28 20:05:38,850.850 INFO    ] 200
[2026-10-28 20:05:38,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:05:38,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:05:38,911.911 INFO    ] No update needed
[2026-10-28 20:05:38,914.914 INFO    ] Checking for camera pi updates...
[2026-10-28 20:05:38,948.948 INFO    ] 200
[2026-10-28 20:05:38,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:05:38,991.991 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:05:39,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:05:39,073.073 INFO    ] No camera update needed
[2026-10-28 20:05:39,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:05:39,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:05:39,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:05:39,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:05:41,127.127 INFO    ] ================================================
[2026-10-28 20:05:41,142.142 INFO    ] Launching Daemon at Wed Oct 28 20:05:41 IST 2026
[2026-10-28 20:05:41,153.153 INFO    ] ================================================
[2026-10-28 20:05:41,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:05:41
[2026-10-28 20:05:42,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:05:42,566.566 INFO    ] Initializing speech engine...
[2026-10-28 20:05:42,588.588 INFO    ] 2026-10-28 20:05:42
[2026-10-28 20:05:42,880.880 INFO    ] 2026-10-28 20:05:42
[2026-10-28 20:05:42,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:05:43,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:05:43,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:05:43,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:05:43,611.611 INFO    ] time= 28/10/2026 20:05:43
[2026-10-28 20:05:43,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:05:43,726.726 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:05:43,895.895 INFO    ] No existing commands found in stream
[2026-10-28 20:05:48,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:05:48,917.917 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-28 20:05:52,254.254 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:05:52,257.257 INFO    ] Checking for system updates...
[2026-10-28 20:05:52,299.299 INFO    ] 200
[2026-10-28 20:05:52,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:05:52,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:05:52,357.357 INFO    ] No update needed
[2026-10-28 20:05:52,360.360 INFO    ] Checking for camera pi updates...
[2026-10-28 20:05:52,399.399 INFO    ] 200
[2026-10-28 20:05:52,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:05:52,449.449 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:05:52,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:05:52,516.516 INFO    ] No camera update needed
[2026-10-28 20:05:52,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:05:52,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:05:52,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:05:52,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:05:54,573.573 INFO    ] ================================================
[2026-10-28 20:05:54,588.588 INFO    ] Launching Daemon at Wed Oct 28 20:05:54 IST 2026
[2026-10-28 20:05:54,599.599 INFO    ] ================================================
[2026-10-28 20:05:55,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:05:55
[2026-10-28 20:05:55,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:05:56,030.030 INFO    ] Initializing speech engine...
[2026-10-28 20:05:56,037.037 INFO    ] 2026-10-28 20:05:56
[2026-10-28 20:05:56,288.288 INFO    ] 2026-10-28 20:05:56
[2026-10-28 20:05:56,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:05:56,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:05:56,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:05:56,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:05:56,926.926 INFO    ] time= 28/10/2026 20:05:56
[2026-10-28 20:05:56,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:05:56,949.949 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:05:57,104.104 INFO    ] No existing commands found in stream
[2026-10-28 20:06:02,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:06:02,128.128 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-28 20:06:05,802.802 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:06:05,805.805 INFO    ] Checking for system updates...
[2026-10-28 20:06:05,840.840 INFO    ] 200
[2026-10-28 20:06:05,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:06:05,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:06:05,898.898 INFO    ] No update needed
[2026-10-28 20:06:05,900.900 INFO    ] Checking for camera pi updates...
[2026-10-28 20:06:05,935.935 INFO    ] 200
[2026-10-28 20:06:05,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:06:05,979.979 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:06:06,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:06:06,081.081 INFO    ] No camera update needed
[2026-10-28 20:06:06,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:06:06,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:06:06,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:06:06,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:06:08,142.142 INFO    ] ================================================
[2026-10-28 20:06:08,158.158 INFO    ] Launching Daemon at Wed Oct 28 20:06:08 IST 2026
[2026-10-28 20:06:08,169.169 INFO    ] ================================================
[2026-10-28 20:06:08,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:06:08
[2026-10-28 20:06:09,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:06:09,625.625 INFO    ] Initializing speech engine...
[2026-10-28 20:06:09,634.634 INFO    ] 2026-10-28 20:06:09
[2026-10-28 20:06:09,882.882 INFO    ] 2026-10-28 20:06:09
[2026-10-28 20:06:09,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:06:10,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:06:10,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:06:10,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:06:10,575.575 INFO    ] time= 28/10/2026 20:06:10
[2026-10-28 20:06:10,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:06:10,631.631 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:06:10,858.858 INFO    ] No existing commands found in stream
[2026-10-28 20:06:15,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:06:15,891.891 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 20:06:18,444.444 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:06:18,447.447 INFO    ] Checking for system updates...
[2026-10-28 20:06:18,482.482 INFO    ] 200
[2026-10-28 20:06:18,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:06:18,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:06:18,540.540 INFO    ] No update needed
[2026-10-28 20:06:18,543.543 INFO    ] Checking for camera pi updates...
[2026-10-28 20:06:18,576.576 INFO    ] 200
[2026-10-28 20:06:18,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:06:18,618.618 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:06:18,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:06:18,727.727 INFO    ] No camera update needed
[2026-10-28 20:06:18,729.729 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:06:18,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:06:18,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:06:18,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:06:20,785.785 INFO    ] ================================================
[2026-10-28 20:06:20,801.801 INFO    ] Launching Daemon at Wed Oct 28 20:06:20 IST 2026
[2026-10-28 20:06:20,812.812 INFO    ] ================================================
[2026-10-28 20:06:21,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:06:21
[2026-10-28 20:06:22,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:06:22,432.432 INFO    ] Initializing speech engine...
[2026-10-28 20:06:22,442.442 INFO    ] 2026-10-28 20:06:22
[2026-10-28 20:06:22,732.732 INFO    ] 2026-10-28 20:06:22
[2026-10-28 20:06:22,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:06:23,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:06:23,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:06:23,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:06:23,592.592 INFO    ] time= 28/10/2026 20:06:23
[2026-10-28 20:06:23,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:06:23,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:06:23,862.862 INFO    ] No existing commands found in stream
[2026-10-28 20:06:28,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:06:28,882.882 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-28 20:06:32,683.683 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:06:32,686.686 INFO    ] Checking for system updates...
[2026-10-28 20:06:32,728.728 INFO    ] 200
[2026-10-28 20:06:32,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:06:32,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:06:32,801.801 INFO    ] No update needed
[2026-10-28 20:06:32,806.806 INFO    ] Checking for camera pi updates...
[2026-10-28 20:06:32,865.865 INFO    ] 200
[2026-10-28 20:06:32,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:06:32,913.913 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:06:32,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:06:32,999.999 INFO    ] No camera update needed
[2026-10-28 20:06:33,002.002 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:06:33,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:06:33,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:06:33,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:06:35,058.058 INFO    ] ================================================
[2026-10-28 20:06:35,074.074 INFO    ] Launching Daemon at Wed Oct 28 20:06:35 IST 2026
[2026-10-28 20:06:35,084.084 INFO    ] ================================================
[2026-10-28 20:06:35,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:06:35
[2026-10-28 20:06:36,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:06:36,531.531 INFO    ] Initializing speech engine...
[2026-10-28 20:06:36,542.542 INFO    ] 2026-10-28 20:06:36
[2026-10-28 20:06:36,803.803 INFO    ] 2026-10-28 20:06:36
[2026-10-28 20:06:36,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:06:37,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:06:37,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:06:37,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:06:37,556.556 INFO    ] time= 28/10/2026 20:06:37
[2026-10-28 20:06:37,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:06:37,663.663 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:06:37,880.880 INFO    ] No existing commands found in stream
[2026-10-28 20:06:42,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:06:42,916.916 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 20:06:44,362.362 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:06:44,365.365 INFO    ] Checking for system updates...
[2026-10-28 20:06:44,401.401 INFO    ] 200
[2026-10-28 20:06:44,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:06:44,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:06:44,459.459 INFO    ] No update needed
[2026-10-28 20:06:44,461.461 INFO    ] Checking for camera pi updates...
[2026-10-28 20:06:44,495.495 INFO    ] 200
[2026-10-28 20:06:44,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:06:44,537.537 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:06:44,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:06:44,618.618 INFO    ] No camera update needed
[2026-10-28 20:06:44,620.620 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:06:44,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:06:44,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:06:44,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:06:46,675.675 INFO    ] ================================================
[2026-10-28 20:06:46,691.691 INFO    ] Launching Daemon at Wed Oct 28 20:06:46 IST 2026
[2026-10-28 20:06:46,703.703 INFO    ] ================================================
[2026-10-28 20:06:47,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:06:47
[2026-10-28 20:06:47,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:06:48,175.175 INFO    ] Initializing speech engine...
[2026-10-28 20:06:48,187.187 INFO    ] 2026-10-28 20:06:48
[2026-10-28 20:06:48,469.469 INFO    ] 2026-10-28 20:06:48
[2026-10-28 20:06:48,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:06:48,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:06:48,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:06:49,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:06:49,165.165 INFO    ] time= 28/10/2026 20:06:49
[2026-10-28 20:06:49,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:06:49,258.258 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:06:49,439.439 INFO    ] No existing commands found in stream
[2026-10-28 20:06:54,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:06:54,458.458 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-28 20:06:57,041.041 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:06:57,044.044 INFO    ] Checking for system updates...
[2026-10-28 20:06:57,080.080 INFO    ] 200
[2026-10-28 20:06:57,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:06:57,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:06:57,137.137 INFO    ] No update needed
[2026-10-28 20:06:57,140.140 INFO    ] Checking for camera pi updates...
[2026-10-28 20:06:57,173.173 INFO    ] 200
[2026-10-28 20:06:57,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:06:57,216.216 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:06:57,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:06:57,416.416 INFO    ] No camera update needed
[2026-10-28 20:06:57,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:06:57,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:06:57,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:06:57,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:06:59,476.476 INFO    ] ================================================
[2026-10-28 20:06:59,492.492 INFO    ] Launching Daemon at Wed Oct 28 20:06:59 IST 2026
[2026-10-28 20:06:59,503.503 INFO    ] ================================================
[2026-10-28 20:07:00,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:07:00
[2026-10-28 20:07:00,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:07:01,144.144 INFO    ] Initializing speech engine...
[2026-10-28 20:07:01,152.152 INFO    ] 2026-10-28 20:07:01
[2026-10-28 20:07:01,444.444 INFO    ] 2026-10-28 20:07:01
[2026-10-28 20:07:01,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:07:01,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:07:01,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:07:02,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:07:02,104.104 INFO    ] time= 28/10/2026 20:07:02
[2026-10-28 20:07:02,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:07:02,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:07:02,316.316 INFO    ] No existing commands found in stream
[2026-10-28 20:07:07,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:07:07,337.337 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-28 20:07:09,328.328 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:07:09,330.330 INFO    ] Checking for system updates...
[2026-10-28 20:07:09,381.381 INFO    ] 200
[2026-10-28 20:07:09,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:07:09,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:07:09,446.446 INFO    ] No update needed
[2026-10-28 20:07:09,449.449 INFO    ] Checking for camera pi updates...
[2026-10-28 20:07:09,492.492 INFO    ] 200
[2026-10-28 20:07:09,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:07:09,539.539 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:07:09,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:07:09,634.634 INFO    ] No camera update needed
[2026-10-28 20:07:09,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:07:09,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:07:09,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:07:09,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:07:11,690.690 INFO    ] ================================================
[2026-10-28 20:07:11,705.705 INFO    ] Launching Daemon at Wed Oct 28 20:07:11 IST 2026
[2026-10-28 20:07:11,716.716 INFO    ] ================================================
[2026-10-28 20:07:12,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:07:12
[2026-10-28 20:07:12,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:07:13,129.129 INFO    ] Initializing speech engine...
[2026-10-28 20:07:13,135.135 INFO    ] 2026-10-28 20:07:13
[2026-10-28 20:07:13,439.439 INFO    ] 2026-10-28 20:07:13
[2026-10-28 20:07:13,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:07:13,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:07:13,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:07:14,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:07:14,089.089 INFO    ] time= 28/10/2026 20:07:14
[2026-10-28 20:07:14,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:07:14,116.116 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:07:14,269.269 INFO    ] No existing commands found in stream
[2026-10-28 20:07:19,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:07:19,284.284 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-28 20:07:23,344.344 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:07:23,347.347 INFO    ] Checking for system updates...
[2026-10-28 20:07:23,382.382 INFO    ] 200
[2026-10-28 20:07:23,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:07:23,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:07:23,439.439 INFO    ] No update needed
[2026-10-28 20:07:23,442.442 INFO    ] Checking for camera pi updates...
[2026-10-28 20:07:23,475.475 INFO    ] 200
[2026-10-28 20:07:23,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:07:23,524.524 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:07:23,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:07:23,627.627 INFO    ] No camera update needed
[2026-10-28 20:07:23,629.629 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:07:23,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:07:23,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:07:23,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:07:25,683.683 INFO    ] ================================================
[2026-10-28 20:07:25,698.698 INFO    ] Launching Daemon at Wed Oct 28 20:07:25 IST 2026
[2026-10-28 20:07:25,710.710 INFO    ] ================================================
[2026-10-28 20:07:26,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:07:26
[2026-10-28 20:07:26,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:07:27,144.144 INFO    ] Initializing speech engine...
[2026-10-28 20:07:27,152.152 INFO    ] 2026-10-28 20:07:27
[2026-10-28 20:07:27,405.405 INFO    ] 2026-10-28 20:07:27
[2026-10-28 20:07:27,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:07:27,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:07:27,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:07:27,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:07:27,972.972 INFO    ] time= 28/10/2026 20:07:27
[2026-10-28 20:07:27,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:07:27,999.999 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:07:28,135.135 INFO    ] No existing commands found in stream
[2026-10-28 20:07:33,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:07:33,166.166 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-28 20:07:35,945.945 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:07:35,948.948 INFO    ] Checking for system updates...
[2026-10-28 20:07:35,985.985 INFO    ] 200
[2026-10-28 20:07:35,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:07:36,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:07:36,044.044 INFO    ] No update needed
[2026-10-28 20:07:36,047.047 INFO    ] Checking for camera pi updates...
[2026-10-28 20:07:36,082.082 INFO    ] 200
[2026-10-28 20:07:36,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:07:36,127.127 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:07:36,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:07:36,248.248 INFO    ] No camera update needed
[2026-10-28 20:07:36,251.251 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:07:36,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:07:36,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:07:36,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:07:38,310.310 INFO    ] ================================================
[2026-10-28 20:07:38,326.326 INFO    ] Launching Daemon at Wed Oct 28 20:07:38 IST 2026
[2026-10-28 20:07:38,337.337 INFO    ] ================================================
[2026-10-28 20:07:38,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:07:38
[2026-10-28 20:07:39,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:07:39,980.980 INFO    ] Initializing speech engine...
[2026-10-28 20:07:39,987.987 INFO    ] 2026-10-28 20:07:39
[2026-10-28 20:07:40,280.280 INFO    ] 2026-10-28 20:07:40
[2026-10-28 20:07:40,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:07:40,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:07:40,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:07:41,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:07:41,071.071 INFO    ] time= 28/10/2026 20:07:41
[2026-10-28 20:07:41,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:07:41,178.178 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:07:41,386.386 INFO    ] No existing commands found in stream
[2026-10-28 20:07:46,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:07:46,422.422 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-28 20:07:49,696.696 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:07:49,699.699 INFO    ] Checking for system updates...
[2026-10-28 20:07:49,736.736 INFO    ] 200
[2026-10-28 20:07:49,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:07:49,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:07:49,804.804 INFO    ] No update needed
[2026-10-28 20:07:49,807.807 INFO    ] Checking for camera pi updates...
[2026-10-28 20:07:49,841.841 INFO    ] 200
[2026-10-28 20:07:49,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:07:49,886.886 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:07:49,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:07:49,958.958 INFO    ] No camera update needed
[2026-10-28 20:07:49,961.961 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:07:49,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:07:49,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:07:49,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:07:52,018.018 INFO    ] ================================================
[2026-10-28 20:07:52,034.034 INFO    ] Launching Daemon at Wed Oct 28 20:07:52 IST 2026
[2026-10-28 20:07:52,046.046 INFO    ] ================================================
[2026-10-28 20:07:52,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:07:52
[2026-10-28 20:07:53,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:07:53,540.540 INFO    ] Initializing speech engine...
[2026-10-28 20:07:53,548.548 INFO    ] 2026-10-28 20:07:53
[2026-10-28 20:07:53,815.815 INFO    ] 2026-10-28 20:07:53
[2026-10-28 20:07:53,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:07:54,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:07:54,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:07:54,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:07:54,453.453 INFO    ] time= 28/10/2026 20:07:54
[2026-10-28 20:07:54,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:07:54,478.478 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:07:54,615.615 INFO    ] No existing commands found in stream
[2026-10-28 20:07:59,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:07:59,645.645 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 20:08:01,493.493 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:08:01,496.496 INFO    ] Checking for system updates...
[2026-10-28 20:08:01,534.534 INFO    ] 200
[2026-10-28 20:08:01,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:08:01,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:08:01,594.594 INFO    ] No update needed
[2026-10-28 20:08:01,597.597 INFO    ] Checking for camera pi updates...
[2026-10-28 20:08:01,636.636 INFO    ] 200
[2026-10-28 20:08:01,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:08:01,686.686 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:08:01,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:08:01,779.779 INFO    ] No camera update needed
[2026-10-28 20:08:01,783.783 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:08:01,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:08:01,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:08:01,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:08:03,851.851 INFO    ] ================================================
[2026-10-28 20:08:03,869.869 INFO    ] Launching Daemon at Wed Oct 28 20:08:03 IST 2026
[2026-10-28 20:08:03,883.883 INFO    ] ================================================
[2026-10-28 20:08:04,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:08:04
[2026-10-28 20:08:05,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:08:05,340.340 INFO    ] Initializing speech engine...
[2026-10-28 20:08:05,346.346 INFO    ] 2026-10-28 20:08:05
[2026-10-28 20:08:05,592.592 INFO    ] 2026-10-28 20:08:05
[2026-10-28 20:08:05,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:08:05,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:08:05,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:08:06,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:08:06,146.146 INFO    ] time= 28/10/2026 20:08:06
[2026-10-28 20:08:06,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:08:06,191.191 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:08:06,348.348 INFO    ] No existing commands found in stream
[2026-10-28 20:08:11,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:08:11,381.381 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 20:08:13,963.963 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:08:13,966.966 INFO    ] Checking for system updates...
[2026-10-28 20:08:14,001.001 INFO    ] 200
[2026-10-28 20:08:14,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:08:14,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:08:14,059.059 INFO    ] No update needed
[2026-10-28 20:08:14,061.061 INFO    ] Checking for camera pi updates...
[2026-10-28 20:08:14,094.094 INFO    ] 200
[2026-10-28 20:08:14,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:08:14,137.137 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:08:14,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:08:14,237.237 INFO    ] No camera update needed
[2026-10-28 20:08:14,239.239 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:08:14,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:08:14,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:08:14,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:08:16,295.295 INFO    ] ================================================
[2026-10-28 20:08:16,312.312 INFO    ] Launching Daemon at Wed Oct 28 20:08:16 IST 2026
[2026-10-28 20:08:16,323.323 INFO    ] ================================================
[2026-10-28 20:08:16,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:08:16
[2026-10-28 20:08:17,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:08:17,972.972 INFO    ] Initializing speech engine...
[2026-10-28 20:08:17,981.981 INFO    ] 2026-10-28 20:08:17
[2026-10-28 20:08:18,280.280 INFO    ] 2026-10-28 20:08:18
[2026-10-28 20:08:18,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:08:18,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:08:18,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:08:19,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:08:19,074.074 INFO    ] time= 28/10/2026 20:08:19
[2026-10-28 20:08:19,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:08:19,198.198 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:08:19,411.411 INFO    ] No existing commands found in stream
[2026-10-28 20:08:24,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:08:24,426.426 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 20:08:27,415.415 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:08:27,418.418 INFO    ] Checking for system updates...
[2026-10-28 20:08:27,456.456 INFO    ] 200
[2026-10-28 20:08:27,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:08:27,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:08:27,513.513 INFO    ] No update needed
[2026-10-28 20:08:27,516.516 INFO    ] Checking for camera pi updates...
[2026-10-28 20:08:27,549.549 INFO    ] 200
[2026-10-28 20:08:27,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:08:27,591.591 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:08:27,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:08:27,674.674 INFO    ] No camera update needed
[2026-10-28 20:08:27,676.676 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:08:27,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:08:27,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:08:27,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:08:29,730.730 INFO    ] ================================================
[2026-10-28 20:08:29,746.746 INFO    ] Launching Daemon at Wed Oct 28 20:08:29 IST 2026
[2026-10-28 20:08:29,758.758 INFO    ] ================================================
[2026-10-28 20:08:30,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:08:30
[2026-10-28 20:08:30,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:08:31,200.200 INFO    ] Initializing speech engine...
[2026-10-28 20:08:31,209.209 INFO    ] 2026-10-28 20:08:31
[2026-10-28 20:08:31,507.507 INFO    ] 2026-10-28 20:08:31
[2026-10-28 20:08:31,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:08:31,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:08:31,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:08:32,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:08:32,180.180 INFO    ] time= 28/10/2026 20:08:32
[2026-10-28 20:08:32,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:08:32,210.210 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:08:32,367.367 INFO    ] No existing commands found in stream
[2026-10-28 20:08:37,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:08:37,385.385 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-10-28 20:08:38,841.841 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:08:38,844.844 INFO    ] Checking for system updates...
[2026-10-28 20:08:38,880.880 INFO    ] 200
[2026-10-28 20:08:38,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:08:38,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:08:38,936.936 INFO    ] No update needed
[2026-10-28 20:08:38,939.939 INFO    ] Checking for camera pi updates...
[2026-10-28 20:08:38,972.972 INFO    ] 200
[2026-10-28 20:08:38,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:08:39,015.015 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:08:39,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:08:39,098.098 INFO    ] No camera update needed
[2026-10-28 20:08:39,101.101 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:08:39,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:08:39,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:08:39,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:08:41,155.155 INFO    ] ================================================
[2026-10-28 20:08:41,171.171 INFO    ] Launching Daemon at Wed Oct 28 20:08:41 IST 2026
[2026-10-28 20:08:41,182.182 INFO    ] ================================================
[2026-10-28 20:08:41,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:08:41
[2026-10-28 20:08:42,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:08:42,591.591 INFO    ] Initializing speech engine...
[2026-10-28 20:08:42,610.610 INFO    ] 2026-10-28 20:08:42
[2026-10-28 20:08:42,860.860 INFO    ] 2026-10-28 20:08:42
[2026-10-28 20:08:42,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:08:43,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:08:43,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:08:43,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:08:43,429.429 INFO    ] time= 28/10/2026 20:08:43
[2026-10-28 20:08:43,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:08:43,476.476 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:08:43,587.587 INFO    ] No existing commands found in stream
[2026-10-28 20:08:48,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:08:48,615.615 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 20:08:52,340.340 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:08:52,343.343 INFO    ] Checking for system updates...
[2026-10-28 20:08:52,380.380 INFO    ] 200
[2026-10-28 20:08:52,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:08:52,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:08:52,438.438 INFO    ] No update needed
[2026-10-28 20:08:52,440.440 INFO    ] Checking for camera pi updates...
[2026-10-28 20:08:52,475.475 INFO    ] 200
[2026-10-28 20:08:52,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:08:52,520.520 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:08:52,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:08:52,579.579 INFO    ] No camera update needed
[2026-10-28 20:08:52,581.581 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:08:52,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:08:52,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:08:52,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:08:54,633.633 INFO    ] ================================================
[2026-10-28 20:08:54,648.648 INFO    ] Launching Daemon at Wed Oct 28 20:08:54 IST 2026
[2026-10-28 20:08:54,660.660 INFO    ] ================================================
[2026-10-28 20:08:55,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:08:55
[2026-10-28 20:08:55,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:08:56,111.111 INFO    ] Initializing speech engine...
[2026-10-28 20:08:56,116.116 INFO    ] 2026-10-28 20:08:56
[2026-10-28 20:08:56,378.378 INFO    ] 2026-10-28 20:08:56
[2026-10-28 20:08:56,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:08:56,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:08:56,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:08:57,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:08:57,114.114 INFO    ] time= 28/10/2026 20:08:57
[2026-10-28 20:08:57,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:08:57,219.219 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:08:57,364.364 INFO    ] No existing commands found in stream
[2026-10-28 20:09:02,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:09:02,377.377 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-28 20:09:06,801.801 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:09:06,804.804 INFO    ] Checking for system updates...
[2026-10-28 20:09:06,839.839 INFO    ] 200
[2026-10-28 20:09:06,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:09:06,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:09:06,896.896 INFO    ] No update needed
[2026-10-28 20:09:06,899.899 INFO    ] Checking for camera pi updates...
[2026-10-28 20:09:06,932.932 INFO    ] 200
[2026-10-28 20:09:06,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:09:06,975.975 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:09:07,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:09:07,072.072 INFO    ] No camera update needed
[2026-10-28 20:09:07,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:09:07,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:09:07,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:09:07,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:09:09,129.129 INFO    ] ================================================
[2026-10-28 20:09:09,144.144 INFO    ] Launching Daemon at Wed Oct 28 20:09:09 IST 2026
[2026-10-28 20:09:09,155.155 INFO    ] ================================================
[2026-10-28 20:09:09,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:09:09
[2026-10-28 20:09:10,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:09:10,795.795 INFO    ] Initializing speech engine...
[2026-10-28 20:09:10,809.809 INFO    ] 2026-10-28 20:09:10
[2026-10-28 20:09:11,081.081 INFO    ] 2026-10-28 20:09:11
[2026-10-28 20:09:11,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:09:11,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:09:11,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:09:11,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:09:11,883.883 INFO    ] time= 28/10/2026 20:09:11
[2026-10-28 20:09:11,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:09:11,947.947 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:09:12,083.083 INFO    ] No existing commands found in stream
[2026-10-28 20:09:17,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:09:17,115.115 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-28 20:09:19,781.781 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:09:19,784.784 INFO    ] Checking for system updates...
[2026-10-28 20:09:19,820.820 INFO    ] 200
[2026-10-28 20:09:19,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:09:19,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:09:19,877.877 INFO    ] No update needed
[2026-10-28 20:09:19,879.879 INFO    ] Checking for camera pi updates...
[2026-10-28 20:09:19,913.913 INFO    ] 200
[2026-10-28 20:09:19,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:09:19,956.956 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:09:20,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:09:20,046.046 INFO    ] No camera update needed
[2026-10-28 20:09:20,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:09:20,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:09:20,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:09:20,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:09:22,101.101 INFO    ] ================================================
[2026-10-28 20:09:22,116.116 INFO    ] Launching Daemon at Wed Oct 28 20:09:22 IST 2026
[2026-10-28 20:09:22,127.127 INFO    ] ================================================
[2026-10-28 20:09:22,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:09:22
[2026-10-28 20:09:23,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:09:23,545.545 INFO    ] Initializing speech engine...
[2026-10-28 20:09:23,554.554 INFO    ] 2026-10-28 20:09:23
[2026-10-28 20:09:23,815.815 INFO    ] 2026-10-28 20:09:23
[2026-10-28 20:09:23,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:09:24,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:09:24,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:09:24,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:09:24,406.406 INFO    ] time= 28/10/2026 20:09:24
[2026-10-28 20:09:24,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:09:24,466.466 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:09:24,627.627 INFO    ] No existing commands found in stream
[2026-10-28 20:09:29,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:09:29,666.666 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-28 20:09:31,329.329 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:09:31,332.332 INFO    ] Checking for system updates...
[2026-10-28 20:09:31,372.372 INFO    ] 200
[2026-10-28 20:09:31,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:09:31,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:09:31,430.430 INFO    ] No update needed
[2026-10-28 20:09:31,433.433 INFO    ] Checking for camera pi updates...
[2026-10-28 20:09:31,473.473 INFO    ] 200
[2026-10-28 20:09:31,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:09:31,529.529 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:09:31,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:09:31,590.590 INFO    ] No camera update needed
[2026-10-28 20:09:31,593.593 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:09:31,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:09:31,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:09:31,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:09:33,656.656 INFO    ] ================================================
[2026-10-28 20:09:33,672.672 INFO    ] Launching Daemon at Wed Oct 28 20:09:33 IST 2026
[2026-10-28 20:09:33,683.683 INFO    ] ================================================
[2026-10-28 20:09:34,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:09:34
[2026-10-28 20:09:34,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:09:35,097.097 INFO    ] Initializing speech engine...
[2026-10-28 20:09:35,119.119 INFO    ] 2026-10-28 20:09:35
[2026-10-28 20:09:35,377.377 INFO    ] 2026-10-28 20:09:35
[2026-10-28 20:09:35,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:09:35,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:09:35,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:09:35,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:09:35,942.942 INFO    ] time= 28/10/2026 20:09:35
[2026-10-28 20:09:35,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:09:35,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:09:36,101.101 INFO    ] No existing commands found in stream
[2026-10-28 20:09:41,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:09:41,119.119 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 20:09:45,816.816 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:09:45,818.818 INFO    ] Checking for system updates...
[2026-10-28 20:09:45,854.854 INFO    ] 200
[2026-10-28 20:09:45,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:09:45,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:09:45,910.910 INFO    ] No update needed
[2026-10-28 20:09:45,912.912 INFO    ] Checking for camera pi updates...
[2026-10-28 20:09:45,946.946 INFO    ] 200
[2026-10-28 20:09:45,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:09:45,989.989 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:09:46,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:09:46,091.091 INFO    ] No camera update needed
[2026-10-28 20:09:46,093.093 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:09:46,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:09:46,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:09:46,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:09:48,148.148 INFO    ] ================================================
[2026-10-28 20:09:48,164.164 INFO    ] Launching Daemon at Wed Oct 28 20:09:48 IST 2026
[2026-10-28 20:09:48,175.175 INFO    ] ================================================
[2026-10-28 20:09:48,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:09:48
[2026-10-28 20:09:49,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:09:49,689.689 INFO    ] Initializing speech engine...
[2026-10-28 20:09:49,702.702 INFO    ] 2026-10-28 20:09:49
[2026-10-28 20:09:49,969.969 INFO    ] 2026-10-28 20:09:49
[2026-10-28 20:09:50,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:09:50,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:09:50,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:09:50,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:09:50,541.541 INFO    ] time= 28/10/2026 20:09:50
[2026-10-28 20:09:50,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:09:50,571.571 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:09:50,718.718 INFO    ] No existing commands found in stream
[2026-10-28 20:09:55,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:09:55,751.751 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 20:09:59,943.943 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:09:59,946.946 INFO    ] Checking for system updates...
[2026-10-28 20:09:59,981.981 INFO    ] 200
[2026-10-28 20:09:59,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:10:00,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:10:00,039.039 INFO    ] No update needed
[2026-10-28 20:10:00,041.041 INFO    ] Checking for camera pi updates...
[2026-10-28 20:10:00,080.080 INFO    ] 200
[2026-10-28 20:10:00,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:10:00,123.123 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:10:00,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:10:00,205.205 INFO    ] No camera update needed
[2026-10-28 20:10:00,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:10:00,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:10:00,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:10:00,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:10:02,303.303 INFO    ] ================================================
[2026-10-28 20:10:02,325.325 INFO    ] Launching Daemon at Wed Oct 28 20:10:02 IST 2026
[2026-10-28 20:10:02,346.346 INFO    ] ================================================
[2026-10-28 20:10:03,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:10:03
[2026-10-28 20:10:03,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:10:03,954.954 INFO    ] Initializing speech engine...
[2026-10-28 20:10:03,960.960 INFO    ] 2026-10-28 20:10:03
[2026-10-28 20:10:04,233.233 INFO    ] 2026-10-28 20:10:04
[2026-10-28 20:10:04,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:10:04,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:10:04,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:10:04,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:10:04,730.730 INFO    ] time= 28/10/2026 20:10:04
[2026-10-28 20:10:04,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:10:04,772.772 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:10:04,920.920 INFO    ] No existing commands found in stream
[2026-10-28 20:10:09,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:10:09,938.938 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-10-28 20:10:11,062.062 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:10:11,064.064 INFO    ] Checking for system updates...
[2026-10-28 20:10:11,103.103 INFO    ] 200
[2026-10-28 20:10:11,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:10:11,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:10:11,165.165 INFO    ] No update needed
[2026-10-28 20:10:11,167.167 INFO    ] Checking for camera pi updates...
[2026-10-28 20:10:11,201.201 INFO    ] 200
[2026-10-28 20:10:11,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:10:11,244.244 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:10:11,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:10:11,348.348 INFO    ] No camera update needed
[2026-10-28 20:10:11,351.351 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:10:11,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:10:11,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:10:11,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:10:13,404.404 INFO    ] ================================================
[2026-10-28 20:10:13,419.419 INFO    ] Launching Daemon at Wed Oct 28 20:10:13 IST 2026
[2026-10-28 20:10:13,430.430 INFO    ] ================================================
[2026-10-28 20:10:13,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:10:13
[2026-10-28 20:10:14,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:10:14,844.844 INFO    ] Initializing speech engine...
[2026-10-28 20:10:14,854.854 INFO    ] 2026-10-28 20:10:14
[2026-10-28 20:10:15,104.104 INFO    ] 2026-10-28 20:10:15
[2026-10-28 20:10:15,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:10:15,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:10:15,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:10:15,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:10:15,661.661 INFO    ] time= 28/10/2026 20:10:15
[2026-10-28 20:10:15,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:10:15,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:10:15,821.821 INFO    ] No existing commands found in stream
[2026-10-28 20:10:20,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:10:20,849.849 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-28 20:10:23,043.043 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:10:23,045.045 INFO    ] Checking for system updates...
[2026-10-28 20:10:23,080.080 INFO    ] 200
[2026-10-28 20:10:23,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:10:23,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:10:23,137.137 INFO    ] No update needed
[2026-10-28 20:10:23,139.139 INFO    ] Checking for camera pi updates...
[2026-10-28 20:10:23,172.172 INFO    ] 200
[2026-10-28 20:10:23,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:10:23,218.218 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:10:23,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:10:23,317.317 INFO    ] No camera update needed
[2026-10-28 20:10:23,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:10:23,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:10:23,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:10:23,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:10:25,371.371 INFO    ] ================================================
[2026-10-28 20:10:25,386.386 INFO    ] Launching Daemon at Wed Oct 28 20:10:25 IST 2026
[2026-10-28 20:10:25,397.397 INFO    ] ================================================
[2026-10-28 20:10:25,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:10:25
[2026-10-28 20:10:26,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:10:26,819.819 INFO    ] Initializing speech engine...
[2026-10-28 20:10:26,826.826 INFO    ] 2026-10-28 20:10:26
[2026-10-28 20:10:27,083.083 INFO    ] 2026-10-28 20:10:27
[2026-10-28 20:10:27,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:10:27,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:10:27,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:10:27,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:10:27,691.691 INFO    ] time= 28/10/2026 20:10:27
[2026-10-28 20:10:27,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:10:27,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:10:27,899.899 INFO    ] No existing commands found in stream
[2026-10-28 20:10:32,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:10:32,918.918 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-28 20:10:34,322.322 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:10:34,325.325 INFO    ] Checking for system updates...
[2026-10-28 20:10:34,360.360 INFO    ] 200
[2026-10-28 20:10:34,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:10:34,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:10:34,419.419 INFO    ] No update needed
[2026-10-28 20:10:34,421.421 INFO    ] Checking for camera pi updates...
[2026-10-28 20:10:34,455.455 INFO    ] 200
[2026-10-28 20:10:34,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:10:34,498.498 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:10:34,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:10:34,583.583 INFO    ] No camera update needed
[2026-10-28 20:10:34,586.586 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:10:34,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:10:34,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:10:34,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:10:36,638.638 INFO    ] ================================================
[2026-10-28 20:10:36,653.653 INFO    ] Launching Daemon at Wed Oct 28 20:10:36 IST 2026
[2026-10-28 20:10:36,664.664 INFO    ] ================================================
[2026-10-28 20:10:37,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:10:37
[2026-10-28 20:10:37,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:10:38,096.096 INFO    ] Initializing speech engine...
[2026-10-28 20:10:38,101.101 INFO    ] 2026-10-28 20:10:38
[2026-10-28 20:10:38,359.359 INFO    ] 2026-10-28 20:10:38
[2026-10-28 20:10:38,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:10:38,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:10:38,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:10:38,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:10:38,923.923 INFO    ] time= 28/10/2026 20:10:38
[2026-10-28 20:10:38,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:10:38,952.952 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:10:39,137.137 INFO    ] No existing commands found in stream
[2026-10-28 20:10:44,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:10:44,158.158 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-28 20:10:46,206.206 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:10:46,209.209 INFO    ] Checking for system updates...
[2026-10-28 20:10:46,244.244 INFO    ] 200
[2026-10-28 20:10:46,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:10:46,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:10:46,307.307 INFO    ] No update needed
[2026-10-28 20:10:46,309.309 INFO    ] Checking for camera pi updates...
[2026-10-28 20:10:46,345.345 INFO    ] 200
[2026-10-28 20:10:46,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:10:46,387.387 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:10:46,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:10:46,486.486 INFO    ] No camera update needed
[2026-10-28 20:10:46,488.488 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:10:46,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:10:46,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:10:46,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:10:48,542.542 INFO    ] ================================================
[2026-10-28 20:10:48,557.557 INFO    ] Launching Daemon at Wed Oct 28 20:10:48 IST 2026
[2026-10-28 20:10:48,568.568 INFO    ] ================================================
[2026-10-28 20:10:49,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:10:49
[2026-10-28 20:10:49,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:10:50,023.023 INFO    ] Initializing speech engine...
[2026-10-28 20:10:50,029.029 INFO    ] 2026-10-28 20:10:50
[2026-10-28 20:10:50,289.289 INFO    ] 2026-10-28 20:10:50
[2026-10-28 20:10:50,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:10:50,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:10:50,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:10:50,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:10:50,845.845 INFO    ] time= 28/10/2026 20:10:50
[2026-10-28 20:10:50,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:10:50,881.881 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:10:50,986.986 INFO    ] No existing commands found in stream
[2026-10-28 20:10:56,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:10:56,012.012 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-28 20:11:03,532.532 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:11:03,535.535 INFO    ] Checking for system updates...
[2026-10-28 20:11:03,571.571 INFO    ] 200
[2026-10-28 20:11:03,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:11:03,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:11:03,645.645 INFO    ] No update needed
[2026-10-28 20:11:03,648.648 INFO    ] Checking for camera pi updates...
[2026-10-28 20:11:03,686.686 INFO    ] 200
[2026-10-28 20:11:03,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:11:03,739.739 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:11:03,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:11:03,823.823 INFO    ] No camera update needed
[2026-10-28 20:11:03,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:11:03,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:11:03,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:11:03,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:11:05,889.889 INFO    ] ================================================
[2026-10-28 20:11:05,904.904 INFO    ] Launching Daemon at Wed Oct 28 20:11:05 IST 2026
[2026-10-28 20:11:05,915.915 INFO    ] ================================================
[2026-10-28 20:11:06,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:11:06
[2026-10-28 20:11:07,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:11:07,330.330 INFO    ] Initializing speech engine...
[2026-10-28 20:11:07,340.340 INFO    ] 2026-10-28 20:11:07
[2026-10-28 20:11:07,583.583 INFO    ] 2026-10-28 20:11:07
[2026-10-28 20:11:07,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:11:07,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:11:07,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:11:08,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:11:08,170.170 INFO    ] time= 28/10/2026 20:11:08
[2026-10-28 20:11:08,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:11:08,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:11:08,355.355 INFO    ] No existing commands found in stream
[2026-10-28 20:11:13,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:11:13,388.388 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-10-28 20:11:16,252.252 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:11:16,255.255 INFO    ] Checking for system updates...
[2026-10-28 20:11:16,292.292 INFO    ] 200
[2026-10-28 20:11:16,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:11:16,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:11:16,348.348 INFO    ] No update needed
[2026-10-28 20:11:16,351.351 INFO    ] Checking for camera pi updates...
[2026-10-28 20:11:16,384.384 INFO    ] 200
[2026-10-28 20:11:16,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:11:16,432.432 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:11:16,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:11:16,609.609 INFO    ] No camera update needed
[2026-10-28 20:11:16,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:11:16,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:11:16,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:11:16,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:11:18,664.664 INFO    ] ================================================
[2026-10-28 20:11:18,679.679 INFO    ] Launching Daemon at Wed Oct 28 20:11:18 IST 2026
[2026-10-28 20:11:18,691.691 INFO    ] ================================================
[2026-10-28 20:11:19,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:11:19
[2026-10-28 20:11:19,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:11:20,093.093 INFO    ] Initializing speech engine...
[2026-10-28 20:11:20,108.108 INFO    ] 2026-10-28 20:11:20
[2026-10-28 20:11:20,391.391 INFO    ] 2026-10-28 20:11:20
[2026-10-28 20:11:20,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:11:20,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:11:20,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:11:20,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:11:20,997.997 INFO    ] time= 28/10/2026 20:11:20
[2026-10-28 20:11:21,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:11:21,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:11:21,187.187 INFO    ] No existing commands found in stream
[2026-10-28 20:11:26,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:11:26,211.211 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-28 20:11:30,587.587 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:11:30,590.590 INFO    ] Checking for system updates...
[2026-10-28 20:11:30,627.627 INFO    ] 200
[2026-10-28 20:11:30,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:11:30,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:11:30,684.684 INFO    ] No update needed
[2026-10-28 20:11:30,687.687 INFO    ] Checking for camera pi updates...
[2026-10-28 20:11:30,721.721 INFO    ] 200
[2026-10-28 20:11:30,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:11:30,765.765 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:11:30,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:11:30,869.869 INFO    ] No camera update needed
[2026-10-28 20:11:30,871.871 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:11:30,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:11:30,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:11:30,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:11:32,931.931 INFO    ] ================================================
[2026-10-28 20:11:32,948.948 INFO    ] Launching Daemon at Wed Oct 28 20:11:32 IST 2026
[2026-10-28 20:11:32,963.963 INFO    ] ================================================
[2026-10-28 20:11:33,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:11:33
[2026-10-28 20:11:34,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:11:34,391.391 INFO    ] Initializing speech engine...
[2026-10-28 20:11:34,400.400 INFO    ] 2026-10-28 20:11:34
[2026-10-28 20:11:34,646.646 INFO    ] 2026-10-28 20:11:34
[2026-10-28 20:11:34,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:11:34,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:11:34,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:11:35,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:11:35,204.204 INFO    ] time= 28/10/2026 20:11:35
[2026-10-28 20:11:35,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:11:35,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:11:35,369.369 INFO    ] No existing commands found in stream
[2026-10-28 20:11:40,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:11:40,404.404 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-28 20:11:42,706.706 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:11:42,709.709 INFO    ] Checking for system updates...
[2026-10-28 20:11:42,745.745 INFO    ] 200
[2026-10-28 20:11:42,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:11:42,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:11:42,803.803 INFO    ] No update needed
[2026-10-28 20:11:42,805.805 INFO    ] Checking for camera pi updates...
[2026-10-28 20:11:42,839.839 INFO    ] 200
[2026-10-28 20:11:42,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:11:42,881.881 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:11:42,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:11:42,982.982 INFO    ] No camera update needed
[2026-10-28 20:11:42,985.985 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:11:42,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:11:42,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:11:42,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:11:45,038.038 INFO    ] ================================================
[2026-10-28 20:11:45,053.053 INFO    ] Launching Daemon at Wed Oct 28 20:11:45 IST 2026
[2026-10-28 20:11:45,064.064 INFO    ] ================================================
[2026-10-28 20:11:45,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:11:45
[2026-10-28 20:11:46,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:11:46,481.481 INFO    ] Initializing speech engine...
[2026-10-28 20:11:46,488.488 INFO    ] 2026-10-28 20:11:46
[2026-10-28 20:11:46,733.733 INFO    ] 2026-10-28 20:11:46
[2026-10-28 20:11:46,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:11:47,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:11:47,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:11:47,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:11:47,288.288 INFO    ] time= 28/10/2026 20:11:47
[2026-10-28 20:11:47,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:11:47,328.328 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:11:47,460.460 INFO    ] No existing commands found in stream
[2026-10-28 20:11:52,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:11:52,488.488 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 20:11:56,222.222 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:11:56,225.225 INFO    ] Checking for system updates...
[2026-10-28 20:11:56,261.261 INFO    ] 200
[2026-10-28 20:11:56,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:11:56,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:11:56,319.319 INFO    ] No update needed
[2026-10-28 20:11:56,321.321 INFO    ] Checking for camera pi updates...
[2026-10-28 20:11:56,355.355 INFO    ] 200
[2026-10-28 20:11:56,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:11:56,398.398 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:11:56,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:11:56,494.494 INFO    ] No camera update needed
[2026-10-28 20:11:56,496.496 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:11:56,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:11:56,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:11:56,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:11:58,552.552 INFO    ] ================================================
[2026-10-28 20:11:58,567.567 INFO    ] Launching Daemon at Wed Oct 28 20:11:58 IST 2026
[2026-10-28 20:11:58,577.577 INFO    ] ================================================
[2026-10-28 20:11:59,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:11:59
[2026-10-28 20:11:59,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:12:00,129.129 INFO    ] Initializing speech engine...
[2026-10-28 20:12:00,139.139 INFO    ] 2026-10-28 20:12:00
[2026-10-28 20:12:00,413.413 INFO    ] 2026-10-28 20:12:00
[2026-10-28 20:12:00,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:12:00,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:12:00,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:12:01,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:12:01,185.185 INFO    ] time= 28/10/2026 20:12:01
[2026-10-28 20:12:01,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:12:01,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:12:01,403.403 INFO    ] No existing commands found in stream
[2026-10-28 20:12:06,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:12:06,416.416 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-28 20:12:10,412.412 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:12:10,415.415 INFO    ] Checking for system updates...
[2026-10-28 20:12:10,453.453 INFO    ] 200
[2026-10-28 20:12:10,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:12:10,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:12:10,515.515 INFO    ] No update needed
[2026-10-28 20:12:10,517.517 INFO    ] Checking for camera pi updates...
[2026-10-28 20:12:10,550.550 INFO    ] 200
[2026-10-28 20:12:10,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:12:10,592.592 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:12:10,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:12:10,699.699 INFO    ] No camera update needed
[2026-10-28 20:12:10,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:12:10,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:12:10,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:12:10,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:12:12,755.755 INFO    ] ================================================
[2026-10-28 20:12:12,769.769 INFO    ] Launching Daemon at Wed Oct 28 20:12:12 IST 2026
[2026-10-28 20:12:12,780.780 INFO    ] ================================================
[2026-10-28 20:12:13,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:12:13
[2026-10-28 20:12:13,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:12:14,230.230 INFO    ] Initializing speech engine...
[2026-10-28 20:12:14,239.239 INFO    ] 2026-10-28 20:12:14
[2026-10-28 20:12:14,504.504 INFO    ] 2026-10-28 20:12:14
[2026-10-28 20:12:14,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:12:14,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:12:14,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:12:15,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:12:15,157.157 INFO    ] time= 28/10/2026 20:12:15
[2026-10-28 20:12:15,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:12:15,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:12:15,352.352 INFO    ] No existing commands found in stream
[2026-10-28 20:12:20,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:12:20,385.385 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 20:12:24,097.097 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:12:24,099.099 INFO    ] Checking for system updates...
[2026-10-28 20:12:24,136.136 INFO    ] 200
[2026-10-28 20:12:24,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:12:24,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:12:24,193.193 INFO    ] No update needed
[2026-10-28 20:12:24,196.196 INFO    ] Checking for camera pi updates...
[2026-10-28 20:12:24,230.230 INFO    ] 200
[2026-10-28 20:12:24,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:12:24,279.279 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:12:24,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:12:24,386.386 INFO    ] No camera update needed
[2026-10-28 20:12:24,388.388 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:12:24,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:12:24,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:12:24,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:12:26,440.440 INFO    ] ================================================
[2026-10-28 20:12:26,455.455 INFO    ] Launching Daemon at Wed Oct 28 20:12:26 IST 2026
[2026-10-28 20:12:26,466.466 INFO    ] ================================================
[2026-10-28 20:12:27,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:12:27
[2026-10-28 20:12:27,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:12:27,881.881 INFO    ] Initializing speech engine...
[2026-10-28 20:12:27,891.891 INFO    ] 2026-10-28 20:12:27
[2026-10-28 20:12:28,137.137 INFO    ] 2026-10-28 20:12:28
[2026-10-28 20:12:28,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:12:28,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:12:28,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:12:28,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:12:28,852.852 INFO    ] time= 28/10/2026 20:12:28
[2026-10-28 20:12:28,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:12:28,947.947 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:12:29,097.097 INFO    ] No existing commands found in stream
[2026-10-28 20:12:34,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:12:34,122.122 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-10-28 20:12:35,203.203 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:12:35,206.206 INFO    ] Checking for system updates...
[2026-10-28 20:12:35,244.244 INFO    ] 200
[2026-10-28 20:12:35,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:12:35,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:12:35,311.311 INFO    ] No update needed
[2026-10-28 20:12:35,314.314 INFO    ] Checking for camera pi updates...
[2026-10-28 20:12:35,351.351 INFO    ] 200
[2026-10-28 20:12:35,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:12:35,398.398 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:12:35,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:12:35,506.506 INFO    ] No camera update needed
[2026-10-28 20:12:35,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:12:35,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:12:35,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:12:35,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:12:37,564.564 INFO    ] ================================================
[2026-10-28 20:12:37,579.579 INFO    ] Launching Daemon at Wed Oct 28 20:12:37 IST 2026
[2026-10-28 20:12:37,590.590 INFO    ] ================================================
[2026-10-28 20:12:38,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:12:38
[2026-10-28 20:12:38,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:12:39,056.056 INFO    ] Initializing speech engine...
[2026-10-28 20:12:39,065.065 INFO    ] 2026-10-28 20:12:39
[2026-10-28 20:12:39,311.311 INFO    ] 2026-10-28 20:12:39
[2026-10-28 20:12:39,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:12:39,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:12:39,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:12:40,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:12:40,119.119 INFO    ] time= 28/10/2026 20:12:40
[2026-10-28 20:12:40,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:12:40,183.183 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:12:40,332.332 INFO    ] No existing commands found in stream
[2026-10-28 20:12:45,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:12:45,345.345 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-28 20:12:47,363.363 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:12:47,365.365 INFO    ] Checking for system updates...
[2026-10-28 20:12:47,401.401 INFO    ] 200
[2026-10-28 20:12:47,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:12:47,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:12:47,467.467 INFO    ] No update needed
[2026-10-28 20:12:47,469.469 INFO    ] Checking for camera pi updates...
[2026-10-28 20:12:47,508.508 INFO    ] 200
[2026-10-28 20:12:47,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:12:47,560.560 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:12:47,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:12:47,618.618 INFO    ] No camera update needed
[2026-10-28 20:12:47,620.620 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:12:47,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:12:47,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:12:47,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:12:49,676.676 INFO    ] ================================================
[2026-10-28 20:12:49,692.692 INFO    ] Launching Daemon at Wed Oct 28 20:12:49 IST 2026
[2026-10-28 20:12:49,703.703 INFO    ] ================================================
[2026-10-28 20:12:50,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:12:50
[2026-10-28 20:12:50,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:12:51,242.242 INFO    ] Initializing speech engine...
[2026-10-28 20:12:51,250.250 INFO    ] 2026-10-28 20:12:51
[2026-10-28 20:12:51,500.500 INFO    ] 2026-10-28 20:12:51
[2026-10-28 20:12:51,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:12:51,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:12:51,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:12:52,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:12:52,107.107 INFO    ] time= 28/10/2026 20:12:52
[2026-10-28 20:12:52,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:12:52,124.124 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:12:52,304.304 INFO    ] No existing commands found in stream
[2026-10-28 20:12:57,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:12:57,333.333 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-28 20:12:59,201.201 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:12:59,204.204 INFO    ] Checking for system updates...
[2026-10-28 20:12:59,239.239 INFO    ] 200
[2026-10-28 20:12:59,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:12:59,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:12:59,301.301 INFO    ] No update needed
[2026-10-28 20:12:59,303.303 INFO    ] Checking for camera pi updates...
[2026-10-28 20:12:59,338.338 INFO    ] 200
[2026-10-28 20:12:59,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:12:59,380.380 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:12:59,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:12:59,472.472 INFO    ] No camera update needed
[2026-10-28 20:12:59,474.474 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:12:59,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:12:59,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:12:59,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:13:01,531.531 INFO    ] ================================================
[2026-10-28 20:13:01,553.553 INFO    ] Launching Daemon at Wed Oct 28 20:13:01 IST 2026
[2026-10-28 20:13:01,571.571 INFO    ] ================================================
[2026-10-28 20:13:02,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:13:02
[2026-10-28 20:13:02,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:13:03,177.177 INFO    ] Initializing speech engine...
[2026-10-28 20:13:03,197.197 INFO    ] 2026-10-28 20:13:03
[2026-10-28 20:13:03,463.463 INFO    ] 2026-10-28 20:13:03
[2026-10-28 20:13:03,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:13:03,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:13:03,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:13:04,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:13:04,033.033 INFO    ] time= 28/10/2026 20:13:04
[2026-10-28 20:13:04,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:13:04,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:13:04,248.248 INFO    ] No existing commands found in stream
[2026-10-28 20:13:09,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:13:09,281.281 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 20:13:12,602.602 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:13:12,605.605 INFO    ] Checking for system updates...
[2026-10-28 20:13:12,641.641 INFO    ] 200
[2026-10-28 20:13:12,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:13:12,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:13:12,699.699 INFO    ] No update needed
[2026-10-28 20:13:12,701.701 INFO    ] Checking for camera pi updates...
[2026-10-28 20:13:12,735.735 INFO    ] 200
[2026-10-28 20:13:12,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:13:12,777.777 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:13:12,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:13:12,879.879 INFO    ] No camera update needed
[2026-10-28 20:13:12,881.881 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:13:12,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:13:12,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:13:12,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:13:14,934.934 INFO    ] ================================================
[2026-10-28 20:13:14,948.948 INFO    ] Launching Daemon at Wed Oct 28 20:13:14 IST 2026
[2026-10-28 20:13:14,959.959 INFO    ] ================================================
[2026-10-28 20:13:15,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:13:15
[2026-10-28 20:13:16,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:13:16,388.388 INFO    ] Initializing speech engine...
[2026-10-28 20:13:16,397.397 INFO    ] 2026-10-28 20:13:16
[2026-10-28 20:13:16,645.645 INFO    ] 2026-10-28 20:13:16
[2026-10-28 20:13:16,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:13:16,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:13:16,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:13:17,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:13:17,197.197 INFO    ] time= 28/10/2026 20:13:17
[2026-10-28 20:13:17,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:13:17,221.221 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:13:17,354.354 INFO    ] No existing commands found in stream
[2026-10-28 20:13:22,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:13:22,379.379 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 20:13:23,963.963 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:13:23,965.965 INFO    ] Checking for system updates...
[2026-10-28 20:13:24,005.005 INFO    ] 200
[2026-10-28 20:13:24,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:13:24,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:13:24,062.062 INFO    ] No update needed
[2026-10-28 20:13:24,065.065 INFO    ] Checking for camera pi updates...
[2026-10-28 20:13:24,102.102 INFO    ] 200
[2026-10-28 20:13:24,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:13:24,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:13:24,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:13:24,326.326 INFO    ] No camera update needed
[2026-10-28 20:13:24,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:13:24,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:13:24,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:13:24,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:13:26,381.381 INFO    ] ================================================
[2026-10-28 20:13:26,396.396 INFO    ] Launching Daemon at Wed Oct 28 20:13:26 IST 2026
[2026-10-28 20:13:26,407.407 INFO    ] ================================================
[2026-10-28 20:13:26,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:13:26
[2026-10-28 20:13:27,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:13:27,809.809 INFO    ] Initializing speech engine...
[2026-10-28 20:13:27,816.816 INFO    ] 2026-10-28 20:13:27
[2026-10-28 20:13:28,117.117 INFO    ] 2026-10-28 20:13:28
[2026-10-28 20:13:28,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:13:28,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:13:28,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:13:28,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:13:28,676.676 INFO    ] time= 28/10/2026 20:13:28
[2026-10-28 20:13:28,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:13:28,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:13:28,900.900 INFO    ] No existing commands found in stream
[2026-10-28 20:13:33,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:13:33,928.928 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-28 20:13:35,763.763 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:13:35,765.765 INFO    ] Checking for system updates...
[2026-10-28 20:13:35,801.801 INFO    ] 200
[2026-10-28 20:13:35,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:13:35,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:13:35,865.865 INFO    ] No update needed
[2026-10-28 20:13:35,868.868 INFO    ] Checking for camera pi updates...
[2026-10-28 20:13:35,905.905 INFO    ] 200
[2026-10-28 20:13:35,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:13:35,948.948 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:13:36,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:13:36,047.047 INFO    ] No camera update needed
[2026-10-28 20:13:36,049.049 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:13:36,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:13:36,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:13:36,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:13:38,103.103 INFO    ] ================================================
[2026-10-28 20:13:38,119.119 INFO    ] Launching Daemon at Wed Oct 28 20:13:38 IST 2026
[2026-10-28 20:13:38,131.131 INFO    ] ================================================
[2026-10-28 20:13:38,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:13:38
[2026-10-28 20:13:39,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:13:39,749.749 INFO    ] Initializing speech engine...
[2026-10-28 20:13:39,761.761 INFO    ] 2026-10-28 20:13:39
[2026-10-28 20:13:40,042.042 INFO    ] 2026-10-28 20:13:40
[2026-10-28 20:13:40,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:13:40,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:13:40,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:13:40,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:13:40,751.751 INFO    ] time= 28/10/2026 20:13:40
[2026-10-28 20:13:40,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:13:40,833.833 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:13:41,021.021 INFO    ] No existing commands found in stream
[2026-10-28 20:13:46,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:13:46,041.041 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 20:13:48,102.102 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:13:48,105.105 INFO    ] Checking for system updates...
[2026-10-28 20:13:48,140.140 INFO    ] 200
[2026-10-28 20:13:48,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:13:48,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:13:48,197.197 INFO    ] No update needed
[2026-10-28 20:13:48,199.199 INFO    ] Checking for camera pi updates...
[2026-10-28 20:13:48,233.233 INFO    ] 200
[2026-10-28 20:13:48,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:13:48,276.276 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:13:48,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:13:48,372.372 INFO    ] No camera update needed
[2026-10-28 20:13:48,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:13:48,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:13:48,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:13:48,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:13:50,429.429 INFO    ] ================================================
[2026-10-28 20:13:50,445.445 INFO    ] Launching Daemon at Wed Oct 28 20:13:50 IST 2026
[2026-10-28 20:13:50,457.457 INFO    ] ================================================
[2026-10-28 20:13:51,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:13:51
[2026-10-28 20:13:51,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:13:52,070.070 INFO    ] Initializing speech engine...
[2026-10-28 20:13:52,084.084 INFO    ] 2026-10-28 20:13:52
[2026-10-28 20:13:52,355.355 INFO    ] 2026-10-28 20:13:52
[2026-10-28 20:13:52,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:13:52,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:13:52,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:13:53,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:13:53,078.078 INFO    ] time= 28/10/2026 20:13:53
[2026-10-28 20:13:53,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:13:53,155.155 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:13:53,306.306 INFO    ] No existing commands found in stream
[2026-10-28 20:13:58,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:13:58,343.343 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-28 20:14:00,845.845 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:14:00,848.848 INFO    ] Checking for system updates...
[2026-10-28 20:14:00,886.886 INFO    ] 200
[2026-10-28 20:14:00,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:14:00,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:14:00,951.951 INFO    ] No update needed
[2026-10-28 20:14:00,954.954 INFO    ] Checking for camera pi updates...
[2026-10-28 20:14:00,989.989 INFO    ] 200
[2026-10-28 20:14:00,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:14:01,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:14:01,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:14:01,108.108 INFO    ] No camera update needed
[2026-10-28 20:14:01,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:14:01,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:14:01,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:14:01,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:14:03,168.168 INFO    ] ================================================
[2026-10-28 20:14:03,183.183 INFO    ] Launching Daemon at Wed Oct 28 20:14:03 IST 2026
[2026-10-28 20:14:03,194.194 INFO    ] ================================================
[2026-10-28 20:14:03,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:14:03
[2026-10-28 20:14:04,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:14:04,705.705 INFO    ] Initializing speech engine...
[2026-10-28 20:14:04,715.715 INFO    ] 2026-10-28 20:14:04
[2026-10-28 20:14:04,989.989 INFO    ] 2026-10-28 20:14:04
[2026-10-28 20:14:05,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:14:05,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:14:05,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:14:05,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:14:05,605.605 INFO    ] time= 28/10/2026 20:14:05
[2026-10-28 20:14:05,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:14:05,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:14:05,839.839 INFO    ] No existing commands found in stream
[2026-10-28 20:14:10,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:14:10,867.867 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 20:14:14,603.603 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:14:14,606.606 INFO    ] Checking for system updates...
[2026-10-28 20:14:14,642.642 INFO    ] 200
[2026-10-28 20:14:14,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:14:14,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:14:14,705.705 INFO    ] No update needed
[2026-10-28 20:14:14,707.707 INFO    ] Checking for camera pi updates...
[2026-10-28 20:14:14,741.741 INFO    ] 200
[2026-10-28 20:14:14,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:14:14,788.788 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:14:14,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:14:14,873.873 INFO    ] No camera update needed
[2026-10-28 20:14:14,875.875 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:14:14,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:14:14,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:14:14,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:14:16,928.928 INFO    ] ================================================
[2026-10-28 20:14:16,943.943 INFO    ] Launching Daemon at Wed Oct 28 20:14:16 IST 2026
[2026-10-28 20:14:16,954.954 INFO    ] ================================================
[2026-10-28 20:14:17,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:14:17
[2026-10-28 20:14:18,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:14:18,378.378 INFO    ] Initializing speech engine...
[2026-10-28 20:14:18,387.387 INFO    ] 2026-10-28 20:14:18
[2026-10-28 20:14:18,633.633 INFO    ] 2026-10-28 20:14:18
[2026-10-28 20:14:18,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:14:18,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:14:18,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:14:19,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:14:19,236.236 INFO    ] time= 28/10/2026 20:14:19
[2026-10-28 20:14:19,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:14:19,297.297 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:14:19,437.437 INFO    ] No existing commands found in stream
[2026-10-28 20:14:24,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:14:24,464.464 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 20:14:27,862.862 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:14:27,865.865 INFO    ] Checking for system updates...
[2026-10-28 20:14:27,901.901 INFO    ] 200
[2026-10-28 20:14:27,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:14:27,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:14:27,961.961 INFO    ] No update needed
[2026-10-28 20:14:27,964.964 INFO    ] Checking for camera pi updates...
[2026-10-28 20:14:27,999.999 INFO    ] 200
[2026-10-28 20:14:28,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:14:28,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:14:28,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:14:28,125.125 INFO    ] No camera update needed
[2026-10-28 20:14:28,127.127 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:14:28,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:14:28,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:14:28,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:14:30,180.180 INFO    ] ================================================
[2026-10-28 20:14:30,196.196 INFO    ] Launching Daemon at Wed Oct 28 20:14:30 IST 2026
[2026-10-28 20:14:30,207.207 INFO    ] ================================================
[2026-10-28 20:14:30,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:14:30
[2026-10-28 20:14:31,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:14:31,631.631 INFO    ] Initializing speech engine...
[2026-10-28 20:14:31,644.644 INFO    ] 2026-10-28 20:14:31
[2026-10-28 20:14:31,921.921 INFO    ] 2026-10-28 20:14:31
[2026-10-28 20:14:31,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:14:32,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:14:32,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:14:32,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:14:32,502.502 INFO    ] time= 28/10/2026 20:14:32
[2026-10-28 20:14:32,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:14:32,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:14:32,635.635 INFO    ] No existing commands found in stream
[2026-10-28 20:14:37,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:14:37,666.666 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-28 20:14:38,649.649 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:14:38,652.652 INFO    ] Checking for system updates...
[2026-10-28 20:14:38,687.687 INFO    ] 200
[2026-10-28 20:14:38,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:14:38,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:14:38,749.749 INFO    ] No update needed
[2026-10-28 20:14:38,751.751 INFO    ] Checking for camera pi updates...
[2026-10-28 20:14:38,785.785 INFO    ] 200
[2026-10-28 20:14:38,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:14:38,832.832 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:14:38,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:14:38,925.925 INFO    ] No camera update needed
[2026-10-28 20:14:38,927.927 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:14:38,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:14:38,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:14:38,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:14:40,981.981 INFO    ] ================================================
[2026-10-28 20:14:41,996.996 INFO    ] Launching Daemon at Wed Oct 28 20:14:40 IST 2026
[2026-10-28 20:14:41,007.007 INFO    ] ================================================
[2026-10-28 20:14:41,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:14:41
[2026-10-28 20:14:42,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:14:42,462.462 INFO    ] Initializing speech engine...
[2026-10-28 20:14:42,472.472 INFO    ] 2026-10-28 20:14:42
[2026-10-28 20:14:42,720.720 INFO    ] 2026-10-28 20:14:42
[2026-10-28 20:14:42,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:14:43,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:14:43,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:14:43,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:14:43,438.438 INFO    ] time= 28/10/2026 20:14:43
[2026-10-28 20:14:43,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:14:43,529.529 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:14:43,678.678 INFO    ] No existing commands found in stream
[2026-10-28 20:14:48,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:14:48,699.699 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 20:14:51,921.921 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:14:51,924.924 INFO    ] Checking for system updates...
[2026-10-28 20:14:51,960.960 INFO    ] 200
[2026-10-28 20:14:51,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:14:52,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:14:52,017.017 INFO    ] No update needed
[2026-10-28 20:14:52,019.019 INFO    ] Checking for camera pi updates...
[2026-10-28 20:14:52,056.056 INFO    ] 200
[2026-10-28 20:14:52,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:14:52,098.098 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:14:52,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:14:52,187.187 INFO    ] No camera update needed
[2026-10-28 20:14:52,190.190 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:14:52,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:14:52,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:14:52,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:14:54,244.244 INFO    ] ================================================
[2026-10-28 20:14:54,259.259 INFO    ] Launching Daemon at Wed Oct 28 20:14:54 IST 2026
[2026-10-28 20:14:54,270.270 INFO    ] ================================================
[2026-10-28 20:14:54,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:14:54
[2026-10-28 20:14:55,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:14:55,730.730 INFO    ] Initializing speech engine...
[2026-10-28 20:14:55,737.737 INFO    ] 2026-10-28 20:14:55
[2026-10-28 20:14:55,998.998 INFO    ] 2026-10-28 20:14:55
[2026-10-28 20:14:56,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:14:56,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:14:56,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:14:56,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:14:56,691.691 INFO    ] time= 28/10/2026 20:14:56
[2026-10-28 20:14:56,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:14:56,792.792 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:14:56,975.975 INFO    ] No existing commands found in stream
[2026-10-28 20:15:01,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:15:02,000.000 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-28 20:15:06,418.418 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:15:06,421.421 INFO    ] Checking for system updates...
[2026-10-28 20:15:06,459.459 INFO    ] 200
[2026-10-28 20:15:06,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:15:06,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:15:06,518.518 INFO    ] No update needed
[2026-10-28 20:15:06,520.520 INFO    ] Checking for camera pi updates...
[2026-10-28 20:15:06,556.556 INFO    ] 200
[2026-10-28 20:15:06,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:15:06,599.599 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:15:06,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:15:06,706.706 INFO    ] No camera update needed
[2026-10-28 20:15:06,709.709 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:15:06,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:15:06,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:15:06,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:15:08,765.765 INFO    ] ================================================
[2026-10-28 20:15:08,781.781 INFO    ] Launching Daemon at Wed Oct 28 20:15:08 IST 2026
[2026-10-28 20:15:08,792.792 INFO    ] ================================================
[2026-10-28 20:15:09,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:15:09
[2026-10-28 20:15:09,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:15:10,241.241 INFO    ] Initializing speech engine...
[2026-10-28 20:15:10,253.253 INFO    ] 2026-10-28 20:15:10
[2026-10-28 20:15:10,528.528 INFO    ] 2026-10-28 20:15:10
[2026-10-28 20:15:10,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:15:10,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:15:10,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:15:11,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:15:11,102.102 INFO    ] time= 28/10/2026 20:15:11
[2026-10-28 20:15:11,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:15:11,139.139 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:15:11,273.273 INFO    ] No existing commands found in stream
[2026-10-28 20:15:16,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:15:16,301.301 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 20:15:20,506.506 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:15:20,508.508 INFO    ] Checking for system updates...
[2026-10-28 20:15:20,547.547 INFO    ] 200
[2026-10-28 20:15:20,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:15:20,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:15:20,604.604 INFO    ] No update needed
[2026-10-28 20:15:20,606.606 INFO    ] Checking for camera pi updates...
[2026-10-28 20:15:20,640.640 INFO    ] 200
[2026-10-28 20:15:20,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:15:20,683.683 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:15:20,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:15:20,780.780 INFO    ] No camera update needed
[2026-10-28 20:15:20,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:15:20,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:15:20,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:15:20,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:15:22,835.835 INFO    ] ================================================
[2026-10-28 20:15:22,850.850 INFO    ] Launching Daemon at Wed Oct 28 20:15:22 IST 2026
[2026-10-28 20:15:22,861.861 INFO    ] ================================================
[2026-10-28 20:15:23,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:15:23
[2026-10-28 20:15:24,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:15:24,274.274 INFO    ] Initializing speech engine...
[2026-10-28 20:15:24,293.293 INFO    ] 2026-10-28 20:15:24
[2026-10-28 20:15:24,545.545 INFO    ] 2026-10-28 20:15:24
[2026-10-28 20:15:24,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:15:24,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:15:24,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:15:25,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:15:25,116.116 INFO    ] time= 28/10/2026 20:15:25
[2026-10-28 20:15:25,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:15:25,138.138 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:15:25,275.275 INFO    ] No existing commands found in stream
[2026-10-28 20:15:30,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:15:30,289.289 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 20:15:31,695.695 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:15:31,697.697 INFO    ] Checking for system updates...
[2026-10-28 20:15:31,733.733 INFO    ] 200
[2026-10-28 20:15:31,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:15:31,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:15:31,795.795 INFO    ] No update needed
[2026-10-28 20:15:31,797.797 INFO    ] Checking for camera pi updates...
[2026-10-28 20:15:31,831.831 INFO    ] 200
[2026-10-28 20:15:31,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:15:31,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:15:32,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:15:32,043.043 INFO    ] No camera update needed
[2026-10-28 20:15:32,046.046 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:15:32,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:15:32,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:15:32,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:15:34,105.105 INFO    ] ================================================
[2026-10-28 20:15:34,120.120 INFO    ] Launching Daemon at Wed Oct 28 20:15:34 IST 2026
[2026-10-28 20:15:34,131.131 INFO    ] ================================================
[2026-10-28 20:15:34,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:15:34
[2026-10-28 20:15:35,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:15:35,587.587 INFO    ] Initializing speech engine...
[2026-10-28 20:15:35,597.597 INFO    ] 2026-10-28 20:15:35
[2026-10-28 20:15:35,845.845 INFO    ] 2026-10-28 20:15:35
[2026-10-28 20:15:35,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:15:36,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:15:36,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:15:36,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:15:36,407.407 INFO    ] time= 28/10/2026 20:15:36
[2026-10-28 20:15:36,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:15:36,456.456 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:15:36,596.596 INFO    ] No existing commands found in stream
[2026-10-28 20:15:41,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:15:41,629.629 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-28 20:15:44,883.883 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:15:44,886.886 INFO    ] Checking for system updates...
[2026-10-28 20:15:44,922.922 INFO    ] 200
[2026-10-28 20:15:44,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:15:44,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:15:44,989.989 INFO    ] No update needed
[2026-10-28 20:15:44,991.991 INFO    ] Checking for camera pi updates...
[2026-10-28 20:15:45,027.027 INFO    ] 200
[2026-10-28 20:15:45,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:15:45,070.070 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:15:45,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:15:45,159.159 INFO    ] No camera update needed
[2026-10-28 20:15:45,162.162 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:15:45,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:15:45,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:15:45,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:15:47,218.218 INFO    ] ================================================
[2026-10-28 20:15:47,234.234 INFO    ] Launching Daemon at Wed Oct 28 20:15:47 IST 2026
[2026-10-28 20:15:47,245.245 INFO    ] ================================================
[2026-10-28 20:15:47,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:15:47
[2026-10-28 20:15:48,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:15:48,659.659 INFO    ] Initializing speech engine...
[2026-10-28 20:15:48,669.669 INFO    ] 2026-10-28 20:15:48
[2026-10-28 20:15:48,913.913 INFO    ] 2026-10-28 20:15:48
[2026-10-28 20:15:48,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:15:49,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:15:49,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:15:49,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:15:49,409.409 INFO    ] time= 28/10/2026 20:15:49
[2026-10-28 20:15:49,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:15:49,429.429 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:15:49,527.527 INFO    ] No existing commands found in stream
[2026-10-28 20:15:54,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:15:54,541.541 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-28 20:15:58,642.642 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:15:58,645.645 INFO    ] Checking for system updates...
[2026-10-28 20:15:58,683.683 INFO    ] 200
[2026-10-28 20:15:58,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:15:58,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:15:58,744.744 INFO    ] No update needed
[2026-10-28 20:15:58,746.746 INFO    ] Checking for camera pi updates...
[2026-10-28 20:15:58,779.779 INFO    ] 200
[2026-10-28 20:15:58,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:15:58,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:15:58,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:15:58,929.929 INFO    ] No camera update needed
[2026-10-28 20:15:58,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:15:58,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:15:58,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:15:58,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:16:00,986.986 INFO    ] ================================================
[2026-10-28 20:16:01,002.002 INFO    ] Launching Daemon at Wed Oct 28 20:16:00 IST 2026
[2026-10-28 20:16:01,012.012 INFO    ] ================================================
[2026-10-28 20:16:01,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:16:01
[2026-10-28 20:16:02,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:16:02,727.727 INFO    ] Initializing speech engine...
[2026-10-28 20:16:02,736.736 INFO    ] 2026-10-28 20:16:02
[2026-10-28 20:16:03,028.028 INFO    ] 2026-10-28 20:16:03
[2026-10-28 20:16:03,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:16:03,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:16:03,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:16:03,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:16:03,674.674 INFO    ] time= 28/10/2026 20:16:03
[2026-10-28 20:16:03,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:16:03,701.701 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:16:03,868.868 INFO    ] No existing commands found in stream
[2026-10-28 20:16:08,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:16:08,901.901 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 20:16:09,482.482 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:16:09,485.485 INFO    ] Checking for system updates...
[2026-10-28 20:16:09,523.523 INFO    ] 200
[2026-10-28 20:16:09,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:16:09,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:16:09,581.581 INFO    ] No update needed
[2026-10-28 20:16:09,583.583 INFO    ] Checking for camera pi updates...
[2026-10-28 20:16:09,617.617 INFO    ] 200
[2026-10-28 20:16:09,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:16:09,660.660 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:16:09,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:16:09,752.752 INFO    ] No camera update needed
[2026-10-28 20:16:09,755.755 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:16:09,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:16:09,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:16:09,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:16:11,810.810 INFO    ] ================================================
[2026-10-28 20:16:11,825.825 INFO    ] Launching Daemon at Wed Oct 28 20:16:11 IST 2026
[2026-10-28 20:16:11,837.837 INFO    ] ================================================
[2026-10-28 20:16:12,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:16:12
[2026-10-28 20:16:13,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:16:13,269.269 INFO    ] Initializing speech engine...
[2026-10-28 20:16:13,292.292 INFO    ] 2026-10-28 20:16:13
[2026-10-28 20:16:13,548.548 INFO    ] 2026-10-28 20:16:13
[2026-10-28 20:16:13,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:16:13,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:16:13,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:16:14,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:16:14,117.117 INFO    ] time= 28/10/2026 20:16:14
[2026-10-28 20:16:14,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:16:14,152.152 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:16:14,324.324 INFO    ] No existing commands found in stream
[2026-10-28 20:16:19,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:16:19,358.358 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 20:16:21,136.136 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:16:21,139.139 INFO    ] Checking for system updates...
[2026-10-28 20:16:21,178.178 INFO    ] 200
[2026-10-28 20:16:21,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:16:21,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:16:21,240.240 INFO    ] No update needed
[2026-10-28 20:16:21,242.242 INFO    ] Checking for camera pi updates...
[2026-10-28 20:16:21,276.276 INFO    ] 200
[2026-10-28 20:16:21,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:16:21,322.322 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:16:21,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:16:21,428.428 INFO    ] No camera update needed
[2026-10-28 20:16:21,430.430 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:16:21,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:16:21,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:16:21,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:16:23,484.484 INFO    ] ================================================
[2026-10-28 20:16:23,500.500 INFO    ] Launching Daemon at Wed Oct 28 20:16:23 IST 2026
[2026-10-28 20:16:23,511.511 INFO    ] ================================================
[2026-10-28 20:16:24,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:16:24
[2026-10-28 20:16:24,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:16:25,108.108 INFO    ] Initializing speech engine...
[2026-10-28 20:16:25,116.116 INFO    ] 2026-10-28 20:16:25
[2026-10-28 20:16:25,389.389 INFO    ] 2026-10-28 20:16:25
[2026-10-28 20:16:25,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:16:25,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:16:25,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:16:26,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:16:26,139.139 INFO    ] time= 28/10/2026 20:16:26
[2026-10-28 20:16:26,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:16:26,226.226 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:16:26,380.380 INFO    ] No existing commands found in stream
[2026-10-28 20:16:31,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:16:31,393.393 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 20:16:34,975.975 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:16:34,979.979 INFO    ] Checking for system updates...
[2026-10-28 20:16:35,019.019 INFO    ] 200
[2026-10-28 20:16:35,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:16:35,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:16:35,081.081 INFO    ] No update needed
[2026-10-28 20:16:35,084.084 INFO    ] Checking for camera pi updates...
[2026-10-28 20:16:35,122.122 INFO    ] 200
[2026-10-28 20:16:35,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:16:35,166.166 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:16:35,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:16:35,281.281 INFO    ] No camera update needed
[2026-10-28 20:16:35,284.284 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:16:35,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:16:35,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:16:35,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:16:37,342.342 INFO    ] ================================================
[2026-10-28 20:16:37,357.357 INFO    ] Launching Daemon at Wed Oct 28 20:16:37 IST 2026
[2026-10-28 20:16:37,369.369 INFO    ] ================================================
[2026-10-28 20:16:38,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:16:38
[2026-10-28 20:16:38,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:16:38,992.992 INFO    ] Initializing speech engine...
[2026-10-28 20:16:39,001.001 INFO    ] 2026-10-28 20:16:38
[2026-10-28 20:16:39,292.292 INFO    ] 2026-10-28 20:16:39
[2026-10-28 20:16:39,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:16:39,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:16:39,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:16:39,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:16:40,062.062 INFO    ] time= 28/10/2026 20:16:40
[2026-10-28 20:16:40,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:16:40,151.151 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:16:40,282.282 INFO    ] No existing commands found in stream
[2026-10-28 20:16:45,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:16:45,296.296 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 20:16:48,458.458 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:16:48,461.461 INFO    ] Checking for system updates...
[2026-10-28 20:16:48,498.498 INFO    ] 200
[2026-10-28 20:16:48,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:16:48,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:16:48,564.564 INFO    ] No update needed
[2026-10-28 20:16:48,567.567 INFO    ] Checking for camera pi updates...
[2026-10-28 20:16:48,602.602 INFO    ] 200
[2026-10-28 20:16:48,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:16:48,647.647 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:16:48,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:16:48,738.738 INFO    ] No camera update needed
[2026-10-28 20:16:48,741.741 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:16:48,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:16:48,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:16:48,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:16:50,802.802 INFO    ] ================================================
[2026-10-28 20:16:50,818.818 INFO    ] Launching Daemon at Wed Oct 28 20:16:50 IST 2026
[2026-10-28 20:16:50,829.829 INFO    ] ================================================
[2026-10-28 20:16:51,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:16:51
[2026-10-28 20:16:51,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:16:52,276.276 INFO    ] Initializing speech engine...
[2026-10-28 20:16:52,281.281 INFO    ] 2026-10-28 20:16:52
[2026-10-28 20:16:52,544.544 INFO    ] 2026-10-28 20:16:52
[2026-10-28 20:16:52,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:16:52,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:16:52,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:16:53,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:16:53,108.108 INFO    ] time= 28/10/2026 20:16:53
[2026-10-28 20:16:53,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:16:53,145.145 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:16:53,280.280 INFO    ] No existing commands found in stream
[2026-10-28 20:16:58,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:16:58,318.318 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-28 20:17:02,527.527 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:17:02,531.531 INFO    ] Checking for system updates...
[2026-10-28 20:17:02,580.580 INFO    ] 200
[2026-10-28 20:17:02,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:17:02,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:17:02,668.668 INFO    ] No update needed
[2026-10-28 20:17:02,672.672 INFO    ] Checking for camera pi updates...
[2026-10-28 20:17:02,716.716 INFO    ] 200
[2026-10-28 20:17:02,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:17:02,767.767 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:17:02,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:17:02,876.876 INFO    ] No camera update needed
[2026-10-28 20:17:02,878.878 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:17:02,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:17:02,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:17:02,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:17:04,946.946 INFO    ] ================================================
[2026-10-28 20:17:04,961.961 INFO    ] Launching Daemon at Wed Oct 28 20:17:04 IST 2026
[2026-10-28 20:17:04,973.973 INFO    ] ================================================
[2026-10-28 20:17:05,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:17:05
[2026-10-28 20:17:06,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:17:06,395.395 INFO    ] Initializing speech engine...
[2026-10-28 20:17:06,404.404 INFO    ] 2026-10-28 20:17:06
[2026-10-28 20:17:06,653.653 INFO    ] 2026-10-28 20:17:06
[2026-10-28 20:17:06,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:17:06,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:17:06,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:17:07,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:17:07,221.221 INFO    ] time= 28/10/2026 20:17:07
[2026-10-28 20:17:07,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:17:07,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:17:07,427.427 INFO    ] No existing commands found in stream
[2026-10-28 20:17:12,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:17:12,460.460 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 20:17:14,482.482 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:17:14,484.484 INFO    ] Checking for system updates...
[2026-10-28 20:17:14,520.520 INFO    ] 200
[2026-10-28 20:17:14,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:17:14,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:17:14,578.578 INFO    ] No update needed
[2026-10-28 20:17:14,581.581 INFO    ] Checking for camera pi updates...
[2026-10-28 20:17:14,618.618 INFO    ] 200
[2026-10-28 20:17:14,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:17:14,660.660 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:17:14,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:17:14,748.748 INFO    ] No camera update needed
[2026-10-28 20:17:14,750.750 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:17:14,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:17:14,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:17:14,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:17:16,805.805 INFO    ] ================================================
[2026-10-28 20:17:16,820.820 INFO    ] Launching Daemon at Wed Oct 28 20:17:16 IST 2026
[2026-10-28 20:17:16,831.831 INFO    ] ================================================
[2026-10-28 20:17:17,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:17:17
[2026-10-28 20:17:18,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:17:18,402.402 INFO    ] Initializing speech engine...
[2026-10-28 20:17:18,413.413 INFO    ] 2026-10-28 20:17:18
[2026-10-28 20:17:18,673.673 INFO    ] 2026-10-28 20:17:18
[2026-10-28 20:17:18,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:17:19,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:17:19,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:17:19,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:17:19,266.266 INFO    ] time= 28/10/2026 20:17:19
[2026-10-28 20:17:19,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:17:19,308.308 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:17:19,493.493 INFO    ] No existing commands found in stream
[2026-10-28 20:17:24,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:17:24,523.523 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-28 20:17:27,372.372 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:17:27,375.375 INFO    ] Checking for system updates...
[2026-10-28 20:17:27,415.415 INFO    ] 200
[2026-10-28 20:17:27,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:17:27,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:17:27,484.484 INFO    ] No update needed
[2026-10-28 20:17:27,488.488 INFO    ] Checking for camera pi updates...
[2026-10-28 20:17:27,527.527 INFO    ] 200
[2026-10-28 20:17:27,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:17:27,580.580 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:17:27,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:17:27,666.666 INFO    ] No camera update needed
[2026-10-28 20:17:27,669.669 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:17:27,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:17:27,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:17:27,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:17:29,725.725 INFO    ] ================================================
[2026-10-28 20:17:29,740.740 INFO    ] Launching Daemon at Wed Oct 28 20:17:29 IST 2026
[2026-10-28 20:17:29,751.751 INFO    ] ================================================
[2026-10-28 20:17:30,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:17:30
[2026-10-28 20:17:30,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:17:31,220.220 INFO    ] Initializing speech engine...
[2026-10-28 20:17:31,228.228 INFO    ] 2026-10-28 20:17:31
[2026-10-28 20:17:31,492.492 INFO    ] 2026-10-28 20:17:31
[2026-10-28 20:17:31,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:17:31,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:17:31,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:17:32,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:17:32,079.079 INFO    ] time= 28/10/2026 20:17:32
[2026-10-28 20:17:32,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:17:32,128.128 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:17:32,306.306 INFO    ] No existing commands found in stream
[2026-10-28 20:17:37,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:17:37,340.340 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-28 20:17:40,562.562 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:17:40,565.565 INFO    ] Checking for system updates...
[2026-10-28 20:17:40,601.601 INFO    ] 200
[2026-10-28 20:17:40,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:17:40,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:17:40,659.659 INFO    ] No update needed
[2026-10-28 20:17:40,661.661 INFO    ] Checking for camera pi updates...
[2026-10-28 20:17:40,696.696 INFO    ] 200
[2026-10-28 20:17:40,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:17:40,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:17:40,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:17:40,934.934 INFO    ] No camera update needed
[2026-10-28 20:17:40,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:17:40,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:17:40,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:17:40,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:17:42,989.989 INFO    ] ================================================
[2026-10-28 20:17:43,005.005 INFO    ] Launching Daemon at Wed Oct 28 20:17:42 IST 2026
[2026-10-28 20:17:43,015.015 INFO    ] ================================================
[2026-10-28 20:17:43,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:17:43
[2026-10-28 20:17:44,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:17:44,587.587 INFO    ] Initializing speech engine...
[2026-10-28 20:17:44,594.594 INFO    ] 2026-10-28 20:17:44
[2026-10-28 20:17:44,858.858 INFO    ] 2026-10-28 20:17:44
[2026-10-28 20:17:44,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:17:45,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:17:45,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:17:45,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:17:45,452.452 INFO    ] time= 28/10/2026 20:17:45
[2026-10-28 20:17:45,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:17:45,486.486 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:17:45,613.613 INFO    ] No existing commands found in stream
[2026-10-28 20:17:50,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:17:50,626.626 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-28 20:17:52,970.970 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:17:52,972.972 INFO    ] Checking for system updates...
[2026-10-28 20:17:53,009.009 INFO    ] 200
[2026-10-28 20:17:53,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:17:53,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:17:53,069.069 INFO    ] No update needed
[2026-10-28 20:17:53,072.072 INFO    ] Checking for camera pi updates...
[2026-10-28 20:17:53,106.106 INFO    ] 200
[2026-10-28 20:17:53,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:17:53,153.153 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:17:53,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:17:53,243.243 INFO    ] No camera update needed
[2026-10-28 20:17:53,246.246 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:17:53,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:17:53,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:17:53,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:17:55,300.300 INFO    ] ================================================
[2026-10-28 20:17:55,315.315 INFO    ] Launching Daemon at Wed Oct 28 20:17:55 IST 2026
[2026-10-28 20:17:55,326.326 INFO    ] ================================================
[2026-10-28 20:17:55,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:17:55
[2026-10-28 20:17:56,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:17:56,820.820 INFO    ] Initializing speech engine...
[2026-10-28 20:17:56,829.829 INFO    ] 2026-10-28 20:17:56
[2026-10-28 20:17:57,097.097 INFO    ] 2026-10-28 20:17:57
[2026-10-28 20:17:57,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:17:57,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:17:57,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:17:57,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:17:57,724.724 INFO    ] time= 28/10/2026 20:17:57
[2026-10-28 20:17:57,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:17:57,752.752 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:17:57,899.899 INFO    ] No existing commands found in stream
[2026-10-28 20:18:02,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:18:02,916.916 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-28 20:18:07,248.248 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:18:07,250.250 INFO    ] Checking for system updates...
[2026-10-28 20:18:07,287.287 INFO    ] 200
[2026-10-28 20:18:07,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:18:07,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:18:07,349.349 INFO    ] No update needed
[2026-10-28 20:18:07,352.352 INFO    ] Checking for camera pi updates...
[2026-10-28 20:18:07,385.385 INFO    ] 200
[2026-10-28 20:18:07,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:18:07,427.427 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:18:07,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:18:07,507.507 INFO    ] No camera update needed
[2026-10-28 20:18:07,509.509 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:18:07,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:18:07,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:18:07,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:18:09,563.563 INFO    ] ================================================
[2026-10-28 20:18:09,578.578 INFO    ] Launching Daemon at Wed Oct 28 20:18:09 IST 2026
[2026-10-28 20:18:09,589.589 INFO    ] ================================================
[2026-10-28 20:18:10,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:18:10
[2026-10-28 20:18:10,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:18:11,001.001 INFO    ] Initializing speech engine...
[2026-10-28 20:18:11,019.019 INFO    ] 2026-10-28 20:18:11
[2026-10-28 20:18:11,272.272 INFO    ] 2026-10-28 20:18:11
[2026-10-28 20:18:11,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:18:11,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:18:11,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:18:11,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:18:11,837.837 INFO    ] time= 28/10/2026 20:18:11
[2026-10-28 20:18:11,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:18:11,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:18:11,999.999 INFO    ] No existing commands found in stream
[2026-10-28 20:18:17,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:18:17,026.026 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 20:18:18,813.813 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:18:18,816.816 INFO    ] Checking for system updates...
[2026-10-28 20:18:18,852.852 INFO    ] 200
[2026-10-28 20:18:18,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:18:18,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:18:18,909.909 INFO    ] No update needed
[2026-10-28 20:18:18,911.911 INFO    ] Checking for camera pi updates...
[2026-10-28 20:18:18,948.948 INFO    ] 200
[2026-10-28 20:18:18,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:18:18,990.990 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:18:19,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:18:19,075.075 INFO    ] No camera update needed
[2026-10-28 20:18:19,077.077 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:18:19,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:18:19,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:18:19,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:18:21,131.131 INFO    ] ================================================
[2026-10-28 20:18:21,146.146 INFO    ] Launching Daemon at Wed Oct 28 20:18:21 IST 2026
[2026-10-28 20:18:21,212.212 INFO    ] ================================================
[2026-10-28 20:18:21,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:18:21
[2026-10-28 20:18:22,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:18:22,674.674 INFO    ] Initializing speech engine...
[2026-10-28 20:18:22,681.681 INFO    ] 2026-10-28 20:18:22
[2026-10-28 20:18:22,943.943 INFO    ] 2026-10-28 20:18:22
[2026-10-28 20:18:22,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:18:23,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:18:23,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:18:23,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:18:23,539.539 INFO    ] time= 28/10/2026 20:18:23
[2026-10-28 20:18:23,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:18:23,554.554 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:18:23,708.708 INFO    ] No existing commands found in stream
[2026-10-28 20:18:28,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:18:28,742.742 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-28 20:18:32,850.850 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:18:32,853.853 INFO    ] Checking for system updates...
[2026-10-28 20:18:32,889.889 INFO    ] 200
[2026-10-28 20:18:32,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:18:32,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:18:32,946.946 INFO    ] No update needed
[2026-10-28 20:18:32,949.949 INFO    ] Checking for camera pi updates...
[2026-10-28 20:18:32,983.983 INFO    ] 200
[2026-10-28 20:18:32,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:18:33,027.027 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:18:33,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:18:33,113.113 INFO    ] No camera update needed
[2026-10-28 20:18:33,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:18:33,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:18:33,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:18:33,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:18:35,171.171 INFO    ] ================================================
[2026-10-28 20:18:35,186.186 INFO    ] Launching Daemon at Wed Oct 28 20:18:35 IST 2026
[2026-10-28 20:18:35,197.197 INFO    ] ================================================
[2026-10-28 20:18:35,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:18:35
[2026-10-28 20:18:36,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:18:36,598.598 INFO    ] Initializing speech engine...
[2026-10-28 20:18:36,603.603 INFO    ] 2026-10-28 20:18:36
[2026-10-28 20:18:36,875.875 INFO    ] 2026-10-28 20:18:36
[2026-10-28 20:18:36,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:18:37,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:18:37,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:18:37,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:18:37,426.426 INFO    ] time= 28/10/2026 20:18:37
[2026-10-28 20:18:37,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:18:37,455.455 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:18:37,582.582 INFO    ] No existing commands found in stream
[2026-10-28 20:18:42,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:18:42,606.606 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-28 20:18:46,222.222 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:18:46,225.225 INFO    ] Checking for system updates...
[2026-10-28 20:18:46,264.264 INFO    ] 200
[2026-10-28 20:18:46,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:18:46,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:18:46,323.323 INFO    ] No update needed
[2026-10-28 20:18:46,326.326 INFO    ] Checking for camera pi updates...
[2026-10-28 20:18:46,360.360 INFO    ] 200
[2026-10-28 20:18:46,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:18:46,405.405 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:18:46,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:18:46,487.487 INFO    ] No camera update needed
[2026-10-28 20:18:46,490.490 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:18:46,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:18:46,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:18:46,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:18:48,547.547 INFO    ] ================================================
[2026-10-28 20:18:48,563.563 INFO    ] Launching Daemon at Wed Oct 28 20:18:48 IST 2026
[2026-10-28 20:18:48,574.574 INFO    ] ================================================
[2026-10-28 20:18:49,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:18:49
[2026-10-28 20:18:49,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:18:50,000.000 INFO    ] Initializing speech engine...
[2026-10-28 20:18:50,007.007 INFO    ] 2026-10-28 20:18:50
[2026-10-28 20:18:50,304.304 INFO    ] 2026-10-28 20:18:50
[2026-10-28 20:18:50,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:18:50,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:18:50,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:18:50,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:18:50,871.871 INFO    ] time= 28/10/2026 20:18:50
[2026-10-28 20:18:50,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:18:50,894.894 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:18:51,029.029 INFO    ] No existing commands found in stream
[2026-10-28 20:18:56,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:18:56,047.047 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 20:18:57,746.746 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:18:57,748.748 INFO    ] Checking for system updates...
[2026-10-28 20:18:57,787.787 INFO    ] 200
[2026-10-28 20:18:57,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:18:57,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:18:57,851.851 INFO    ] No update needed
[2026-10-28 20:18:57,853.853 INFO    ] Checking for camera pi updates...
[2026-10-28 20:18:57,887.887 INFO    ] 200
[2026-10-28 20:18:57,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:18:57,930.930 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:18:58,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:18:58,024.024 INFO    ] No camera update needed
[2026-10-28 20:18:58,027.027 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:18:58,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:18:58,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:18:58,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:19:00,080.080 INFO    ] ================================================
[2026-10-28 20:19:00,096.096 INFO    ] Launching Daemon at Wed Oct 28 20:19:00 IST 2026
[2026-10-28 20:19:00,107.107 INFO    ] ================================================
[2026-10-28 20:19:00,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:19:00
[2026-10-28 20:19:01,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:19:01,890.890 INFO    ] Initializing speech engine...
[2026-10-28 20:19:01,896.896 INFO    ] 2026-10-28 20:19:01
[2026-10-28 20:19:02,181.181 INFO    ] 2026-10-28 20:19:02
[2026-10-28 20:19:02,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:19:02,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:19:02,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:19:02,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:19:02,858.858 INFO    ] time= 28/10/2026 20:19:02
[2026-10-28 20:19:02,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:19:02,890.890 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:19:03,009.009 INFO    ] No existing commands found in stream
[2026-10-28 20:19:08,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:19:08,021.021 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-28 20:19:11,522.522 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:19:11,525.525 INFO    ] Checking for system updates...
[2026-10-28 20:19:11,564.564 INFO    ] 200
[2026-10-28 20:19:11,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:19:11,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:19:11,622.622 INFO    ] No update needed
[2026-10-28 20:19:11,625.625 INFO    ] Checking for camera pi updates...
[2026-10-28 20:19:11,661.661 INFO    ] 200
[2026-10-28 20:19:11,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:19:11,706.706 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:19:11,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:19:11,788.788 INFO    ] No camera update needed
[2026-10-28 20:19:11,790.790 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:19:11,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:19:11,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:19:11,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:19:13,847.847 INFO    ] ================================================
[2026-10-28 20:19:13,862.862 INFO    ] Launching Daemon at Wed Oct 28 20:19:13 IST 2026
[2026-10-28 20:19:13,873.873 INFO    ] ================================================
[2026-10-28 20:19:14,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:19:14
[2026-10-28 20:19:15,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:19:15,335.335 INFO    ] Initializing speech engine...
[2026-10-28 20:19:15,339.339 INFO    ] 2026-10-28 20:19:15
[2026-10-28 20:19:15,604.604 INFO    ] 2026-10-28 20:19:15
[2026-10-28 20:19:15,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:19:15,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:19:15,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:19:16,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:19:16,153.153 INFO    ] time= 28/10/2026 20:19:16
[2026-10-28 20:19:16,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:19:16,188.188 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:19:16,337.337 INFO    ] No existing commands found in stream
[2026-10-28 20:19:21,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:19:21,370.370 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-28 20:19:25,123.123 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:19:25,126.126 INFO    ] Checking for system updates...
[2026-10-28 20:19:25,161.161 INFO    ] 200
[2026-10-28 20:19:25,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:19:25,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:19:25,219.219 INFO    ] No update needed
[2026-10-28 20:19:25,222.222 INFO    ] Checking for camera pi updates...
[2026-10-28 20:19:25,258.258 INFO    ] 200
[2026-10-28 20:19:25,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:19:25,306.306 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:19:25,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:19:25,396.396 INFO    ] No camera update needed
[2026-10-28 20:19:25,399.399 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:19:25,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:19:25,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:19:25,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:19:27,451.451 INFO    ] ================================================
[2026-10-28 20:19:27,467.467 INFO    ] Launching Daemon at Wed Oct 28 20:19:27 IST 2026
[2026-10-28 20:19:27,479.479 INFO    ] ================================================
[2026-10-28 20:19:28,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:19:28
[2026-10-28 20:19:28,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:19:28,939.939 INFO    ] Initializing speech engine...
[2026-10-28 20:19:28,945.945 INFO    ] 2026-10-28 20:19:28
[2026-10-28 20:19:29,209.209 INFO    ] 2026-10-28 20:19:29
[2026-10-28 20:19:29,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:19:29,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:19:29,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:19:29,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:19:29,759.759 INFO    ] time= 28/10/2026 20:19:29
[2026-10-28 20:19:29,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:19:29,806.806 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:19:29,913.913 INFO    ] No existing commands found in stream
[2026-10-28 20:19:34,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:19:34,937.937 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 20:19:37,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:19:37,133.133 INFO    ] Checking for system updates...
[2026-10-28 20:19:37,169.169 INFO    ] 200
[2026-10-28 20:19:37,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:19:37,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:19:37,229.229 INFO    ] No update needed
[2026-10-28 20:19:37,231.231 INFO    ] Checking for camera pi updates...
[2026-10-28 20:19:37,265.265 INFO    ] 200
[2026-10-28 20:19:37,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:19:37,309.309 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:19:37,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:19:37,392.392 INFO    ] No camera update needed
[2026-10-28 20:19:37,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:19:37,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:19:37,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:19:37,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:19:39,452.452 INFO    ] ================================================
[2026-10-28 20:19:39,468.468 INFO    ] Launching Daemon at Wed Oct 28 20:19:39 IST 2026
[2026-10-28 20:19:39,479.479 INFO    ] ================================================
[2026-10-28 20:19:40,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:19:40
[2026-10-28 20:19:40,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:19:40,910.910 INFO    ] Initializing speech engine...
[2026-10-28 20:19:40,918.918 INFO    ] 2026-10-28 20:19:40
[2026-10-28 20:19:41,170.170 INFO    ] 2026-10-28 20:19:41
[2026-10-28 20:19:41,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:19:41,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:19:41,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:19:41,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:19:41,744.744 INFO    ] time= 28/10/2026 20:19:41
[2026-10-28 20:19:41,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:19:41,768.768 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:19:41,906.906 INFO    ] No existing commands found in stream
[2026-10-28 20:19:46,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:19:46,928.928 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-28 20:19:49,682.682 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:19:49,685.685 INFO    ] Checking for system updates...
[2026-10-28 20:19:49,724.724 INFO    ] 200
[2026-10-28 20:19:49,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:19:49,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:19:49,787.787 INFO    ] No update needed
[2026-10-28 20:19:49,790.790 INFO    ] Checking for camera pi updates...
[2026-10-28 20:19:49,824.824 INFO    ] 200
[2026-10-28 20:19:49,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:19:49,871.871 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:19:50,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:19:50,050.050 INFO    ] No camera update needed
[2026-10-28 20:19:50,052.052 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:19:50,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:19:50,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:19:50,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:19:52,106.106 INFO    ] ================================================
[2026-10-28 20:19:52,121.121 INFO    ] Launching Daemon at Wed Oct 28 20:19:52 IST 2026
[2026-10-28 20:19:52,133.133 INFO    ] ================================================
[2026-10-28 20:19:52,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:19:52
[2026-10-28 20:19:53,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:19:53,586.586 INFO    ] Initializing speech engine...
[2026-10-28 20:19:53,593.593 INFO    ] 2026-10-28 20:19:53
[2026-10-28 20:19:53,892.892 INFO    ] 2026-10-28 20:19:53
[2026-10-28 20:19:53,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:19:54,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:19:54,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:19:54,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:19:54,523.523 INFO    ] time= 28/10/2026 20:19:54
[2026-10-28 20:19:54,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:19:54,553.553 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:19:54,715.715 INFO    ] No existing commands found in stream
[2026-10-28 20:19:59,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:19:59,740.740 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 20:20:04,723.723 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:20:04,726.726 INFO    ] Checking for system updates...
[2026-10-28 20:20:04,765.765 INFO    ] 200
[2026-10-28 20:20:04,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:20:04,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:20:04,822.822 INFO    ] No update needed
[2026-10-28 20:20:04,824.824 INFO    ] Checking for camera pi updates...
[2026-10-28 20:20:04,858.858 INFO    ] 200
[2026-10-28 20:20:04,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:20:04,902.902 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:20:04,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:20:04,986.986 INFO    ] No camera update needed
[2026-10-28 20:20:04,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:20:04,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:20:04,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:20:05,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:20:07,043.043 INFO    ] ================================================
[2026-10-28 20:20:07,059.059 INFO    ] Launching Daemon at Wed Oct 28 20:20:07 IST 2026
[2026-10-28 20:20:07,070.070 INFO    ] ================================================
[2026-10-28 20:20:07,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:20:07
[2026-10-28 20:20:08,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:20:08,669.669 INFO    ] Initializing speech engine...
[2026-10-28 20:20:08,678.678 INFO    ] 2026-10-28 20:20:08
[2026-10-28 20:20:08,966.966 INFO    ] 2026-10-28 20:20:08
[2026-10-28 20:20:09,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:20:09,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:20:09,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:20:09,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:20:09,518.518 INFO    ] time= 28/10/2026 20:20:09
[2026-10-28 20:20:09,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:20:09,554.554 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:20:09,699.699 INFO    ] No existing commands found in stream
[2026-10-28 20:20:14,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:20:14,733.733 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 20:20:16,829.829 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:20:16,832.832 INFO    ] Checking for system updates...
[2026-10-28 20:20:16,869.869 INFO    ] 200
[2026-10-28 20:20:16,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:20:16,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:20:16,928.928 INFO    ] No update needed
[2026-10-28 20:20:16,931.931 INFO    ] Checking for camera pi updates...
[2026-10-28 20:20:16,968.968 INFO    ] 200
[2026-10-28 20:20:16,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:20:17,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:20:17,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:20:17,100.100 INFO    ] No camera update needed
[2026-10-28 20:20:17,103.103 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:20:17,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:20:17,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:20:17,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:20:19,159.159 INFO    ] ================================================
[2026-10-28 20:20:19,174.174 INFO    ] Launching Daemon at Wed Oct 28 20:20:19 IST 2026
[2026-10-28 20:20:19,186.186 INFO    ] ================================================
[2026-10-28 20:20:19,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:20:19
[2026-10-28 20:20:20,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:20:20,591.591 INFO    ] Initializing speech engine...
[2026-10-28 20:20:20,600.600 INFO    ] 2026-10-28 20:20:20
[2026-10-28 20:20:20,892.892 INFO    ] 2026-10-28 20:20:20
[2026-10-28 20:20:20,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:20:21,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:20:21,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:20:21,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:20:21,511.511 INFO    ] time= 28/10/2026 20:20:21
[2026-10-28 20:20:21,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:20:21,539.539 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:20:21,668.668 INFO    ] No existing commands found in stream
[2026-10-28 20:20:26,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:20:26,700.700 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-28 20:20:29,013.013 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:20:29,016.016 INFO    ] Checking for system updates...
[2026-10-28 20:20:29,051.051 INFO    ] 200
[2026-10-28 20:20:29,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:20:29,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:20:29,108.108 INFO    ] No update needed
[2026-10-28 20:20:29,110.110 INFO    ] Checking for camera pi updates...
[2026-10-28 20:20:29,146.146 INFO    ] 200
[2026-10-28 20:20:29,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:20:29,193.193 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:20:29,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:20:29,274.274 INFO    ] No camera update needed
[2026-10-28 20:20:29,276.276 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:20:29,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:20:29,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:20:29,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:20:31,330.330 INFO    ] ================================================
[2026-10-28 20:20:31,345.345 INFO    ] Launching Daemon at Wed Oct 28 20:20:31 IST 2026
[2026-10-28 20:20:31,356.356 INFO    ] ================================================
[2026-10-28 20:20:31,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:20:31
[2026-10-28 20:20:32,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:20:33,022.022 INFO    ] Initializing speech engine...
[2026-10-28 20:20:33,035.035 INFO    ] 2026-10-28 20:20:33
[2026-10-28 20:20:33,315.315 INFO    ] 2026-10-28 20:20:33
[2026-10-28 20:20:33,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:20:33,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:20:33,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:20:33,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:20:33,864.864 INFO    ] time= 28/10/2026 20:20:33
[2026-10-28 20:20:33,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:20:33,903.903 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:20:34,014.014 INFO    ] No existing commands found in stream
[2026-10-28 20:20:39,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:20:39,043.043 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-28 20:20:40,883.883 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:20:40,885.885 INFO    ] Checking for system updates...
[2026-10-28 20:20:40,922.922 INFO    ] 200
[2026-10-28 20:20:40,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:20:40,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:20:40,983.983 INFO    ] No update needed
[2026-10-28 20:20:40,986.986 INFO    ] Checking for camera pi updates...
[2026-10-28 20:20:41,020.020 INFO    ] 200
[2026-10-28 20:20:41,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:20:41,067.067 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:20:41,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:20:41,152.152 INFO    ] No camera update needed
[2026-10-28 20:20:41,155.155 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:20:41,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:20:41,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:20:41,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:20:43,209.209 INFO    ] ================================================
[2026-10-28 20:20:43,225.225 INFO    ] Launching Daemon at Wed Oct 28 20:20:43 IST 2026
[2026-10-28 20:20:43,236.236 INFO    ] ================================================
[2026-10-28 20:20:43,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:20:43
[2026-10-28 20:20:44,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:20:44,838.838 INFO    ] Initializing speech engine...
[2026-10-28 20:20:44,848.848 INFO    ] 2026-10-28 20:20:44
[2026-10-28 20:20:45,119.119 INFO    ] 2026-10-28 20:20:45
[2026-10-28 20:20:45,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:20:45,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:20:45,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:20:45,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:20:45,685.685 INFO    ] time= 28/10/2026 20:20:45
[2026-10-28 20:20:45,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:20:45,724.724 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:20:45,860.860 INFO    ] No existing commands found in stream
[2026-10-28 20:20:50,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:20:50,889.889 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-10-28 20:20:54,885.885 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:20:54,888.888 INFO    ] Checking for system updates...
[2026-10-28 20:20:54,925.925 INFO    ] 200
[2026-10-28 20:20:54,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:20:54,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:20:54,989.989 INFO    ] No update needed
[2026-10-28 20:20:54,992.992 INFO    ] Checking for camera pi updates...
[2026-10-28 20:20:55,027.027 INFO    ] 200
[2026-10-28 20:20:55,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:20:55,072.072 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:20:55,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:20:55,155.155 INFO    ] No camera update needed
[2026-10-28 20:20:55,158.158 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:20:55,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:20:55,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:20:55,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:20:57,214.214 INFO    ] ================================================
[2026-10-28 20:20:57,232.232 INFO    ] Launching Daemon at Wed Oct 28 20:20:57 IST 2026
[2026-10-28 20:20:57,244.244 INFO    ] ================================================
[2026-10-28 20:20:57,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:20:57
[2026-10-28 20:20:58,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:20:58,749.749 INFO    ] Initializing speech engine...
[2026-10-28 20:20:58,772.772 INFO    ] 2026-10-28 20:20:58
[2026-10-28 20:20:59,052.052 INFO    ] 2026-10-28 20:20:59
[2026-10-28 20:20:59,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:20:59,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:20:59,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:20:59,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:20:59,613.613 INFO    ] time= 28/10/2026 20:20:59
[2026-10-28 20:20:59,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:20:59,655.655 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:20:59,815.815 INFO    ] No existing commands found in stream
[2026-10-28 20:21:04,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:21:04,844.844 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 20:21:06,007.007 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:21:06,010.010 INFO    ] Checking for system updates...
[2026-10-28 20:21:06,050.050 INFO    ] 200
[2026-10-28 20:21:06,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:21:06,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:21:06,116.116 INFO    ] No update needed
[2026-10-28 20:21:06,119.119 INFO    ] Checking for camera pi updates...
[2026-10-28 20:21:06,153.153 INFO    ] 200
[2026-10-28 20:21:06,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:21:06,198.198 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:21:06,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:21:06,285.285 INFO    ] No camera update needed
[2026-10-28 20:21:06,287.287 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:21:06,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:21:06,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:21:06,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:21:08,343.343 INFO    ] ================================================
[2026-10-28 20:21:08,359.359 INFO    ] Launching Daemon at Wed Oct 28 20:21:08 IST 2026
[2026-10-28 20:21:08,370.370 INFO    ] ================================================
[2026-10-28 20:21:08,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:21:08
[2026-10-28 20:21:09,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:21:09,775.775 INFO    ] Initializing speech engine...
[2026-10-28 20:21:09,795.795 INFO    ] 2026-10-28 20:21:09
[2026-10-28 20:21:10,070.070 INFO    ] 2026-10-28 20:21:10
[2026-10-28 20:21:10,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:21:10,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:21:10,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:21:10,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:21:10,696.696 INFO    ] time= 28/10/2026 20:21:10
[2026-10-28 20:21:10,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:21:10,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:21:10,863.863 INFO    ] No existing commands found in stream
[2026-10-28 20:21:15,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:21:15,880.880 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-28 20:21:19,693.693 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:21:19,696.696 INFO    ] Checking for system updates...
[2026-10-28 20:21:19,738.738 INFO    ] 200
[2026-10-28 20:21:19,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:21:19,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:21:19,795.795 INFO    ] No update needed
[2026-10-28 20:21:19,797.797 INFO    ] Checking for camera pi updates...
[2026-10-28 20:21:19,830.830 INFO    ] 200
[2026-10-28 20:21:19,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:21:19,874.874 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:21:19,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:21:19,957.957 INFO    ] No camera update needed
[2026-10-28 20:21:19,959.959 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:21:19,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:21:19,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:21:19,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:21:22,012.012 INFO    ] ================================================
[2026-10-28 20:21:22,028.028 INFO    ] Launching Daemon at Wed Oct 28 20:21:22 IST 2026
[2026-10-28 20:21:22,039.039 INFO    ] ================================================
[2026-10-28 20:21:22,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:21:22
[2026-10-28 20:21:23,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:21:23,446.446 INFO    ] Initializing speech engine...
[2026-10-28 20:21:23,457.457 INFO    ] 2026-10-28 20:21:23
[2026-10-28 20:21:23,748.748 INFO    ] 2026-10-28 20:21:23
[2026-10-28 20:21:23,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:21:24,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:21:24,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:21:24,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:21:24,329.329 INFO    ] time= 28/10/2026 20:21:24
[2026-10-28 20:21:24,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:21:24,382.382 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:21:24,549.549 INFO    ] No existing commands found in stream
[2026-10-28 20:21:29,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:21:29,572.572 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-28 20:21:30,365.365 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:21:30,368.368 INFO    ] Checking for system updates...
[2026-10-28 20:21:30,405.405 INFO    ] 200
[2026-10-28 20:21:30,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:21:30,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:21:30,464.464 INFO    ] No update needed
[2026-10-28 20:21:30,467.467 INFO    ] Checking for camera pi updates...
[2026-10-28 20:21:30,502.502 INFO    ] 200
[2026-10-28 20:21:30,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:21:30,546.546 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:21:30,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:21:30,630.630 INFO    ] No camera update needed
[2026-10-28 20:21:30,633.633 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:21:30,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:21:30,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:21:30,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:21:32,689.689 INFO    ] ================================================
[2026-10-28 20:21:32,705.705 INFO    ] Launching Daemon at Wed Oct 28 20:21:32 IST 2026
[2026-10-28 20:21:32,717.717 INFO    ] ================================================
[2026-10-28 20:21:33,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:21:33
[2026-10-28 20:21:33,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:21:34,128.128 INFO    ] Initializing speech engine...
[2026-10-28 20:21:34,149.149 INFO    ] 2026-10-28 20:21:34
[2026-10-28 20:21:34,426.426 INFO    ] 2026-10-28 20:21:34
[2026-10-28 20:21:34,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:21:34,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:21:34,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:21:35,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:21:35,048.048 INFO    ] time= 28/10/2026 20:21:35
[2026-10-28 20:21:35,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:21:35,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:21:35,224.224 INFO    ] No existing commands found in stream
[2026-10-28 20:21:40,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:21:40,242.242 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-28 20:21:41,923.923 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:21:41,926.926 INFO    ] Checking for system updates...
[2026-10-28 20:21:41,961.961 INFO    ] 200
[2026-10-28 20:21:41,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:21:42,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:21:42,018.018 INFO    ] No update needed
[2026-10-28 20:21:42,021.021 INFO    ] Checking for camera pi updates...
[2026-10-28 20:21:42,054.054 INFO    ] 200
[2026-10-28 20:21:42,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:21:42,097.097 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:21:42,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:21:42,181.181 INFO    ] No camera update needed
[2026-10-28 20:21:42,183.183 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:21:42,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:21:42,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:21:42,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:21:44,236.236 INFO    ] ================================================
[2026-10-28 20:21:44,252.252 INFO    ] Launching Daemon at Wed Oct 28 20:21:44 IST 2026
[2026-10-28 20:21:44,263.263 INFO    ] ================================================
[2026-10-28 20:21:44,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:21:44
[2026-10-28 20:21:45,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:21:45,710.710 INFO    ] Initializing speech engine...
[2026-10-28 20:21:45,716.716 INFO    ] 2026-10-28 20:21:45
[2026-10-28 20:21:45,977.977 INFO    ] 2026-10-28 20:21:45
[2026-10-28 20:21:46,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:21:46,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:21:46,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:21:46,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:21:46,531.531 INFO    ] time= 28/10/2026 20:21:46
[2026-10-28 20:21:46,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:21:46,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:21:46,702.702 INFO    ] No existing commands found in stream
[2026-10-28 20:21:51,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:21:51,735.735 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-28 20:21:54,842.842 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:21:54,845.845 INFO    ] Checking for system updates...
[2026-10-28 20:21:54,880.880 INFO    ] 200
[2026-10-28 20:21:54,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:21:54,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:21:54,939.939 INFO    ] No update needed
[2026-10-28 20:21:54,941.941 INFO    ] Checking for camera pi updates...
[2026-10-28 20:21:54,975.975 INFO    ] 200
[2026-10-28 20:21:54,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:21:55,018.018 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:21:55,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:21:55,204.204 INFO    ] No camera update needed
[2026-10-28 20:21:55,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:21:55,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:21:55,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:21:55,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:21:57,260.260 INFO    ] ================================================
[2026-10-28 20:21:57,276.276 INFO    ] Launching Daemon at Wed Oct 28 20:21:57 IST 2026
[2026-10-28 20:21:57,286.286 INFO    ] ================================================
[2026-10-28 20:21:57,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:21:57
[2026-10-28 20:21:58,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:21:58,718.718 INFO    ] Initializing speech engine...
[2026-10-28 20:21:58,727.727 INFO    ] 2026-10-28 20:21:58
[2026-10-28 20:21:58,978.978 INFO    ] 2026-10-28 20:21:58
[2026-10-28 20:21:59,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:21:59,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:21:59,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:21:59,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:21:59,551.551 INFO    ] time= 28/10/2026 20:21:59
[2026-10-28 20:21:59,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:21:59,592.592 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:21:59,738.738 INFO    ] No existing commands found in stream
[2026-10-28 20:22:04,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:22:04,770.770 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-28 20:22:08,762.762 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:22:08,764.764 INFO    ] Checking for system updates...
[2026-10-28 20:22:08,799.799 INFO    ] 200
[2026-10-28 20:22:08,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:22:08,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:22:08,856.856 INFO    ] No update needed
[2026-10-28 20:22:08,859.859 INFO    ] Checking for camera pi updates...
[2026-10-28 20:22:08,892.892 INFO    ] 200
[2026-10-28 20:22:08,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:22:08,934.934 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:22:09,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:22:09,020.020 INFO    ] No camera update needed
[2026-10-28 20:22:09,022.022 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:22:09,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:22:09,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:22:09,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:22:11,074.074 INFO    ] ================================================
[2026-10-28 20:22:11,089.089 INFO    ] Launching Daemon at Wed Oct 28 20:22:11 IST 2026
[2026-10-28 20:22:11,100.100 INFO    ] ================================================
[2026-10-28 20:22:11,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:22:11
[2026-10-28 20:22:12,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:22:12,524.524 INFO    ] Initializing speech engine...
[2026-10-28 20:22:12,546.546 INFO    ] 2026-10-28 20:22:12
[2026-10-28 20:22:12,826.826 INFO    ] 2026-10-28 20:22:12
[2026-10-28 20:22:12,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:22:13,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:22:13,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:22:13,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:22:13,352.352 INFO    ] time= 28/10/2026 20:22:13
[2026-10-28 20:22:13,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:22:13,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:22:13,593.593 INFO    ] No existing commands found in stream
[2026-10-28 20:22:18,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:22:18,618.618 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 20:22:21,096.096 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:22:21,099.099 INFO    ] Checking for system updates...
[2026-10-28 20:22:21,134.134 INFO    ] 200
[2026-10-28 20:22:21,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:22:21,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:22:21,192.192 INFO    ] No update needed
[2026-10-28 20:22:21,194.194 INFO    ] Checking for camera pi updates...
[2026-10-28 20:22:21,227.227 INFO    ] 200
[2026-10-28 20:22:21,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:22:21,275.275 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:22:21,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:22:21,358.358 INFO    ] No camera update needed
[2026-10-28 20:22:21,360.360 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:22:21,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:22:21,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:22:21,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:22:23,415.415 INFO    ] ================================================
[2026-10-28 20:22:23,429.429 INFO    ] Launching Daemon at Wed Oct 28 20:22:23 IST 2026
[2026-10-28 20:22:23,440.440 INFO    ] ================================================
[2026-10-28 20:22:24,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:22:24
[2026-10-28 20:22:24,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:22:24,895.895 INFO    ] Initializing speech engine...
[2026-10-28 20:22:24,914.914 INFO    ] 2026-10-28 20:22:24
[2026-10-28 20:22:25,166.166 INFO    ] 2026-10-28 20:22:25
[2026-10-28 20:22:25,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:22:25,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:22:25,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:22:25,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:22:25,739.739 INFO    ] time= 28/10/2026 20:22:25
[2026-10-28 20:22:25,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:22:25,763.763 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:22:25,893.893 INFO    ] No existing commands found in stream
[2026-10-28 20:22:30,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:22:30,910.910 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 20:22:33,285.285 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:22:33,287.287 INFO    ] Checking for system updates...
[2026-10-28 20:22:33,323.323 INFO    ] 200
[2026-10-28 20:22:33,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:22:33,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:22:33,380.380 INFO    ] No update needed
[2026-10-28 20:22:33,382.382 INFO    ] Checking for camera pi updates...
[2026-10-28 20:22:33,415.415 INFO    ] 200
[2026-10-28 20:22:33,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:22:33,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:22:33,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:22:33,516.516 INFO    ] No camera update needed
[2026-10-28 20:22:33,519.519 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:22:33,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:22:33,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:22:33,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:22:35,574.574 INFO    ] ================================================
[2026-10-28 20:22:35,589.589 INFO    ] Launching Daemon at Wed Oct 28 20:22:35 IST 2026
[2026-10-28 20:22:35,600.600 INFO    ] ================================================
[2026-10-28 20:22:36,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:22:36
[2026-10-28 20:22:36,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:22:37,032.032 INFO    ] Initializing speech engine...
[2026-10-28 20:22:37,046.046 INFO    ] 2026-10-28 20:22:37
[2026-10-28 20:22:37,337.337 INFO    ] 2026-10-28 20:22:37
[2026-10-28 20:22:37,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:22:37,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:22:37,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:22:37,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:22:37,930.930 INFO    ] time= 28/10/2026 20:22:37
[2026-10-28 20:22:37,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:22:37,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:22:38,142.142 INFO    ] No existing commands found in stream
[2026-10-28 20:22:43,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:22:43,170.170 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-28 20:22:45,903.903 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:22:45,906.906 INFO    ] Checking for system updates...
[2026-10-28 20:22:45,942.942 INFO    ] 200
[2026-10-28 20:22:45,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:22:45,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:22:46,000.000 INFO    ] No update needed
[2026-10-28 20:22:46,002.002 INFO    ] Checking for camera pi updates...
[2026-10-28 20:22:46,035.035 INFO    ] 200
[2026-10-28 20:22:46,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:22:46,078.078 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:22:46,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:22:46,153.153 INFO    ] No camera update needed
[2026-10-28 20:22:46,156.156 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:22:46,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:22:46,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:22:46,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:22:48,209.209 INFO    ] ================================================
[2026-10-28 20:22:48,225.225 INFO    ] Launching Daemon at Wed Oct 28 20:22:48 IST 2026
[2026-10-28 20:22:48,235.235 INFO    ] ================================================
[2026-10-28 20:22:48,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:22:48
[2026-10-28 20:22:49,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:22:49,671.671 INFO    ] Initializing speech engine...
[2026-10-28 20:22:49,684.684 INFO    ] 2026-10-28 20:22:49
[2026-10-28 20:22:49,971.971 INFO    ] 2026-10-28 20:22:49
[2026-10-28 20:22:50,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:22:50,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:22:50,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:22:50,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:22:50,401.401 INFO    ] time= 28/10/2026 20:22:50
[2026-10-28 20:22:50,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:22:50,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:22:50,631.631 INFO    ] No existing commands found in stream
[2026-10-28 20:22:55,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:22:55,645.645 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-28 20:22:59,884.884 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:22:59,887.887 INFO    ] Checking for system updates...
[2026-10-28 20:22:59,922.922 INFO    ] 200
[2026-10-28 20:22:59,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:22:59,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:22:59,980.980 INFO    ] No update needed
[2026-10-28 20:22:59,983.983 INFO    ] Checking for camera pi updates...
[2026-10-28 20:23:00,017.017 INFO    ] 200
[2026-10-28 20:23:00,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:23:00,059.059 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:23:00,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:23:00,143.143 INFO    ] No camera update needed
[2026-10-28 20:23:00,145.145 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:23:00,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:23:00,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:23:00,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:23:02,203.203 INFO    ] ================================================
[2026-10-28 20:23:02,225.225 INFO    ] Launching Daemon at Wed Oct 28 20:23:02 IST 2026
[2026-10-28 20:23:02,243.243 INFO    ] ================================================
[2026-10-28 20:23:02,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:23:02
[2026-10-28 20:23:03,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:23:03,828.828 INFO    ] Initializing speech engine...
[2026-10-28 20:23:03,853.853 INFO    ] 2026-10-28 20:23:03
[2026-10-28 20:23:04,138.138 INFO    ] 2026-10-28 20:23:04
[2026-10-28 20:23:04,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:23:04,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:23:04,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:23:04,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:23:04,645.645 INFO    ] time= 28/10/2026 20:23:04
[2026-10-28 20:23:04,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:23:04,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:23:04,838.838 INFO    ] No existing commands found in stream
[2026-10-28 20:23:09,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:23:09,853.853 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-10-28 20:23:13,525.525 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:23:13,528.528 INFO    ] Checking for system updates...
[2026-10-28 20:23:13,563.563 INFO    ] 200
[2026-10-28 20:23:13,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:23:13,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:23:13,621.621 INFO    ] No update needed
[2026-10-28 20:23:13,624.624 INFO    ] Checking for camera pi updates...
[2026-10-28 20:23:13,657.657 INFO    ] 200
[2026-10-28 20:23:13,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:23:13,699.699 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:23:13,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:23:13,782.782 INFO    ] No camera update needed
[2026-10-28 20:23:13,785.785 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:23:13,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:23:13,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:23:13,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:23:15,838.838 INFO    ] ================================================
[2026-10-28 20:23:15,853.853 INFO    ] Launching Daemon at Wed Oct 28 20:23:15 IST 2026
[2026-10-28 20:23:15,864.864 INFO    ] ================================================
[2026-10-28 20:23:16,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:23:16
[2026-10-28 20:23:17,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:23:17,314.314 INFO    ] Initializing speech engine...
[2026-10-28 20:23:17,322.322 INFO    ] 2026-10-28 20:23:17
[2026-10-28 20:23:17,583.583 INFO    ] 2026-10-28 20:23:17
[2026-10-28 20:23:17,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:23:17,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:23:17,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:23:18,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:23:18,164.164 INFO    ] time= 28/10/2026 20:23:18
[2026-10-28 20:23:18,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:23:18,197.197 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:23:18,343.343 INFO    ] No existing commands found in stream
[2026-10-28 20:23:23,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:23:23,372.372 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-28 20:23:25,223.223 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:23:25,227.227 INFO    ] Checking for system updates...
[2026-10-28 20:23:25,264.264 INFO    ] 200
[2026-10-28 20:23:25,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:23:25,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:23:25,322.322 INFO    ] No update needed
[2026-10-28 20:23:25,325.325 INFO    ] Checking for camera pi updates...
[2026-10-28 20:23:25,358.358 INFO    ] 200
[2026-10-28 20:23:25,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:23:25,402.402 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:23:25,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:23:25,488.488 INFO    ] No camera update needed
[2026-10-28 20:23:25,490.490 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:23:25,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:23:25,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:23:25,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:23:27,545.545 INFO    ] ================================================
[2026-10-28 20:23:27,560.560 INFO    ] Launching Daemon at Wed Oct 28 20:23:27 IST 2026
[2026-10-28 20:23:27,571.571 INFO    ] ================================================
[2026-10-28 20:23:28,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:23:28
[2026-10-28 20:23:28,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:23:29,009.009 INFO    ] Initializing speech engine...
[2026-10-28 20:23:29,018.018 INFO    ] 2026-10-28 20:23:29
[2026-10-28 20:23:29,283.283 INFO    ] 2026-10-28 20:23:29
[2026-10-28 20:23:29,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:23:29,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:23:29,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:23:29,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:23:29,849.849 INFO    ] time= 28/10/2026 20:23:29
[2026-10-28 20:23:29,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:23:29,885.885 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:23:30,017.017 INFO    ] No existing commands found in stream
[2026-10-28 20:23:35,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:23:35,046.046 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-28 20:23:38,762.762 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:23:38,765.765 INFO    ] Checking for system updates...
[2026-10-28 20:23:38,801.801 INFO    ] 200
[2026-10-28 20:23:38,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:23:38,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:23:38,858.858 INFO    ] No update needed
[2026-10-28 20:23:38,860.860 INFO    ] Checking for camera pi updates...
[2026-10-28 20:23:38,894.894 INFO    ] 200
[2026-10-28 20:23:38,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:23:38,936.936 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:23:39,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:23:39,019.019 INFO    ] No camera update needed
[2026-10-28 20:23:39,021.021 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:23:39,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:23:39,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:23:39,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:23:41,075.075 INFO    ] ================================================
[2026-10-28 20:23:41,090.090 INFO    ] Launching Daemon at Wed Oct 28 20:23:41 IST 2026
[2026-10-28 20:23:41,101.101 INFO    ] ================================================
[2026-10-28 20:23:41,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:23:41
[2026-10-28 20:23:42,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:23:42,695.695 INFO    ] Initializing speech engine...
[2026-10-28 20:23:42,702.702 INFO    ] 2026-10-28 20:23:42
[2026-10-28 20:23:42,975.975 INFO    ] 2026-10-28 20:23:42
[2026-10-28 20:23:43,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:23:43,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:23:43,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:23:43,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:23:43,559.559 INFO    ] time= 28/10/2026 20:23:43
[2026-10-28 20:23:43,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:23:43,597.597 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:23:43,742.742 INFO    ] No existing commands found in stream
[2026-10-28 20:23:48,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:23:48,776.776 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-28 20:23:50,370.370 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:23:50,373.373 INFO    ] Checking for system updates...
[2026-10-28 20:23:50,409.409 INFO    ] 200
[2026-10-28 20:23:50,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:23:50,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:23:50,465.465 INFO    ] No update needed
[2026-10-28 20:23:50,468.468 INFO    ] Checking for camera pi updates...
[2026-10-28 20:23:50,508.508 INFO    ] 200
[2026-10-28 20:23:50,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:23:50,550.550 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:23:50,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:23:50,647.647 INFO    ] No camera update needed
[2026-10-28 20:23:50,649.649 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:23:50,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:23:50,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:23:50,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:23:52,701.701 INFO    ] ================================================
[2026-10-28 20:23:52,716.716 INFO    ] Launching Daemon at Wed Oct 28 20:23:52 IST 2026
[2026-10-28 20:23:52,726.726 INFO    ] ================================================
[2026-10-28 20:23:53,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:23:53
[2026-10-28 20:23:53,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:23:54,148.148 INFO    ] Initializing speech engine...
[2026-10-28 20:23:54,163.163 INFO    ] 2026-10-28 20:23:54
[2026-10-28 20:23:54,433.433 INFO    ] 2026-10-28 20:23:54
[2026-10-28 20:23:54,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:23:54,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:23:54,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:23:54,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:23:55,040.040 INFO    ] time= 28/10/2026 20:23:54
[2026-10-28 20:23:55,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:23:55,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:23:55,220.220 INFO    ] No existing commands found in stream
[2026-10-28 20:24:00,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:24:00,238.238 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-28 20:24:03,326.326 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:24:03,329.329 INFO    ] Checking for system updates...
[2026-10-28 20:24:03,364.364 INFO    ] 200
[2026-10-28 20:24:03,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:24:03,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:24:03,428.428 INFO    ] No update needed
[2026-10-28 20:24:03,432.432 INFO    ] Checking for camera pi updates...
[2026-10-28 20:24:03,469.469 INFO    ] 200
[2026-10-28 20:24:03,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:24:03,518.518 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:24:03,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:24:03,620.620 INFO    ] No camera update needed
[2026-10-28 20:24:03,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:24:03,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:24:03,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:24:03,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:24:05,679.679 INFO    ] ================================================
[2026-10-28 20:24:05,694.694 INFO    ] Launching Daemon at Wed Oct 28 20:24:05 IST 2026
[2026-10-28 20:24:05,705.705 INFO    ] ================================================
[2026-10-28 20:24:06,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:24:06
[2026-10-28 20:24:06,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:24:07,124.124 INFO    ] Initializing speech engine...
[2026-10-28 20:24:07,132.132 INFO    ] 2026-10-28 20:24:07
[2026-10-28 20:24:07,422.422 INFO    ] 2026-10-28 20:24:07
[2026-10-28 20:24:07,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:24:07,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:24:07,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:24:08,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:24:08,057.057 INFO    ] time= 28/10/2026 20:24:08
[2026-10-28 20:24:08,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:24:08,086.086 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:24:08,209.209 INFO    ] No existing commands found in stream
[2026-10-28 20:24:13,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:24:13,242.242 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 20:24:16,045.045 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:24:16,047.047 INFO    ] Checking for system updates...
[2026-10-28 20:24:16,087.087 INFO    ] 200
[2026-10-28 20:24:16,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:24:16,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:24:16,148.148 INFO    ] No update needed
[2026-10-28 20:24:16,150.150 INFO    ] Checking for camera pi updates...
[2026-10-28 20:24:16,185.185 INFO    ] 200
[2026-10-28 20:24:16,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:24:16,230.230 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:24:16,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:24:16,319.319 INFO    ] No camera update needed
[2026-10-28 20:24:16,322.322 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:24:16,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:24:16,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:24:16,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:24:18,377.377 INFO    ] ================================================
[2026-10-28 20:24:18,392.392 INFO    ] Launching Daemon at Wed Oct 28 20:24:18 IST 2026
[2026-10-28 20:24:18,402.402 INFO    ] ================================================
[2026-10-28 20:24:18,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:24:18
[2026-10-28 20:24:19,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:24:19,924.924 INFO    ] Initializing speech engine...
[2026-10-28 20:24:19,935.935 INFO    ] 2026-10-28 20:24:19
[2026-10-28 20:24:20,211.211 INFO    ] 2026-10-28 20:24:20
[2026-10-28 20:24:20,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:24:20,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:24:20,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:24:20,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:24:21,003.003 INFO    ] time= 28/10/2026 20:24:20
[2026-10-28 20:24:21,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:24:21,118.118 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:24:21,304.304 INFO    ] No existing commands found in stream
[2026-10-28 20:24:26,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:24:26,339.339 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-28 20:24:30,506.506 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:24:30,509.509 INFO    ] Checking for system updates...
[2026-10-28 20:24:30,560.560 INFO    ] 200
[2026-10-28 20:24:30,562.562 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 20:24:30,569.569 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-28 20:24:30,572.572 INFO    ] Checking for camera pi updates...
[2026-10-28 20:24:30,616.616 INFO    ] 200
[2026-10-28 20:24:30,618.618 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 20:24:30,621.621 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-28 20:24:30,624.624 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:24:30,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:24:30,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:24:30,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:24:32,679.679 INFO    ] ================================================
[2026-10-28 20:24:32,694.694 INFO    ] Launching Daemon at Wed Oct 28 20:24:32 IST 2026
[2026-10-28 20:24:32,706.706 INFO    ] ================================================
[2026-10-28 20:24:33,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:24:33
[2026-10-28 20:24:34,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:24:34,306.306 INFO    ] Initializing speech engine...
[2026-10-28 20:24:34,313.313 INFO    ] 2026-10-28 20:24:34
[2026-10-28 20:24:34,609.609 INFO    ] 2026-10-28 20:24:34
[2026-10-28 20:24:34,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:24:34,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:24:34,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:24:35,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:24:35,207.207 INFO    ] time= 28/10/2026 20:24:35
[2026-10-28 20:24:35,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:24:35,276.276 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:24:35,416.416 INFO    ] No existing commands found in stream
[2026-10-28 20:24:40,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:24:40,445.445 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 20:24:42,084.084 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:24:42,087.087 INFO    ] Checking for system updates...
[2026-10-28 20:24:42,126.126 INFO    ] 200
[2026-10-28 20:24:42,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:24:42,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:24:42,186.186 INFO    ] No update needed
[2026-10-28 20:24:42,189.189 INFO    ] Checking for camera pi updates...
[2026-10-28 20:24:42,228.228 INFO    ] 200
[2026-10-28 20:24:42,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:24:42,270.270 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:24:42,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:24:42,365.365 INFO    ] No camera update needed
[2026-10-28 20:24:42,368.368 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:24:42,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:24:42,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:24:42,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:24:44,420.420 INFO    ] ================================================
[2026-10-28 20:24:44,435.435 INFO    ] Launching Daemon at Wed Oct 28 20:24:44 IST 2026
[2026-10-28 20:24:44,446.446 INFO    ] ================================================
[2026-10-28 20:24:45,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:24:45
[2026-10-28 20:24:45,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:24:45,927.927 INFO    ] Initializing speech engine...
[2026-10-28 20:24:45,938.938 INFO    ] 2026-10-28 20:24:45
[2026-10-28 20:24:46,192.192 INFO    ] 2026-10-28 20:24:46
[2026-10-28 20:24:46,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:24:46,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:24:46,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:24:46,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:24:46,743.743 INFO    ] time= 28/10/2026 20:24:46
[2026-10-28 20:24:46,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:24:46,789.789 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:24:46,910.910 INFO    ] No existing commands found in stream
[2026-10-28 20:24:51,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:24:51,938.938 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-28 20:24:54,346.346 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:24:54,349.349 INFO    ] Checking for system updates...
[2026-10-28 20:24:54,386.386 INFO    ] 200
[2026-10-28 20:24:54,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:24:54,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:24:54,450.450 INFO    ] No update needed
[2026-10-28 20:24:54,453.453 INFO    ] Checking for camera pi updates...
[2026-10-28 20:24:54,487.487 INFO    ] 200
[2026-10-28 20:24:54,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:24:54,531.531 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:24:54,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:24:54,617.617 INFO    ] No camera update needed
[2026-10-28 20:24:54,619.619 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:24:54,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:24:54,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:24:54,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:24:56,673.673 INFO    ] ================================================
[2026-10-28 20:24:56,689.689 INFO    ] Launching Daemon at Wed Oct 28 20:24:56 IST 2026
[2026-10-28 20:24:56,700.700 INFO    ] ================================================
[2026-10-28 20:24:57,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:24:57
[2026-10-28 20:24:57,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:24:58,151.151 INFO    ] Initializing speech engine...
[2026-10-28 20:24:58,161.161 INFO    ] 2026-10-28 20:24:58
[2026-10-28 20:24:58,409.409 INFO    ] 2026-10-28 20:24:58
[2026-10-28 20:24:58,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:24:58,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:24:58,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:24:58,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:24:58,967.967 INFO    ] time= 28/10/2026 20:24:58
[2026-10-28 20:24:58,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:24:59,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:24:59,125.125 INFO    ] No existing commands found in stream
[2026-10-28 20:25:04,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:25:04,148.148 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-28 20:25:08,603.603 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:25:08,606.606 INFO    ] Checking for system updates...
[2026-10-28 20:25:08,641.641 INFO    ] 200
[2026-10-28 20:25:08,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:25:08,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:25:08,700.700 INFO    ] No update needed
[2026-10-28 20:25:08,702.702 INFO    ] Checking for camera pi updates...
[2026-10-28 20:25:08,739.739 INFO    ] 200
[2026-10-28 20:25:08,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:25:08,782.782 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:25:08,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:25:08,866.866 INFO    ] No camera update needed
[2026-10-28 20:25:08,869.869 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:25:08,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:25:08,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:25:08,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:25:10,923.923 INFO    ] ================================================
[2026-10-28 20:25:10,940.940 INFO    ] Launching Daemon at Wed Oct 28 20:25:10 IST 2026
[2026-10-28 20:25:10,951.951 INFO    ] ================================================
[2026-10-28 20:25:11,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:25:11
[2026-10-28 20:25:12,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:25:12,356.356 INFO    ] Initializing speech engine...
[2026-10-28 20:25:12,368.368 INFO    ] 2026-10-28 20:25:12
[2026-10-28 20:25:12,635.635 INFO    ] 2026-10-28 20:25:12
[2026-10-28 20:25:12,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:25:12,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:25:12,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:25:13,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:25:13,206.206 INFO    ] time= 28/10/2026 20:25:13
[2026-10-28 20:25:13,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:25:13,242.242 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:25:13,371.371 INFO    ] No existing commands found in stream
[2026-10-28 20:25:18,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:25:18,403.403 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 20:25:21,765.765 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:25:21,767.767 INFO    ] Checking for system updates...
[2026-10-28 20:25:21,806.806 INFO    ] 200
[2026-10-28 20:25:21,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:25:21,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:25:21,864.864 INFO    ] No update needed
[2026-10-28 20:25:21,866.866 INFO    ] Checking for camera pi updates...
[2026-10-28 20:25:21,899.899 INFO    ] 200
[2026-10-28 20:25:21,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:25:21,953.953 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:25:22,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:25:22,052.052 INFO    ] No camera update needed
[2026-10-28 20:25:22,055.055 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:25:22,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:25:22,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:25:22,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:25:24,109.109 INFO    ] ================================================
[2026-10-28 20:25:24,124.124 INFO    ] Launching Daemon at Wed Oct 28 20:25:24 IST 2026
[2026-10-28 20:25:24,135.135 INFO    ] ================================================
[2026-10-28 20:25:24,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:25:24
[2026-10-28 20:25:25,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:25:25,787.787 INFO    ] Initializing speech engine...
[2026-10-28 20:25:25,795.795 INFO    ] 2026-10-28 20:25:25
[2026-10-28 20:25:26,105.105 INFO    ] 2026-10-28 20:25:26
[2026-10-28 20:25:26,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:25:26,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:25:26,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:25:26,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:25:26,645.645 INFO    ] time= 28/10/2026 20:25:26
[2026-10-28 20:25:26,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:25:26,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:25:26,810.810 INFO    ] No existing commands found in stream
[2026-10-28 20:25:31,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:25:31,839.839 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 20:25:34,770.770 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:25:34,773.773 INFO    ] Checking for system updates...
[2026-10-28 20:25:34,810.810 INFO    ] 200
[2026-10-28 20:25:34,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:25:34,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:25:34,870.870 INFO    ] No update needed
[2026-10-28 20:25:34,873.873 INFO    ] Checking for camera pi updates...
[2026-10-28 20:25:34,911.911 INFO    ] 200
[2026-10-28 20:25:34,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:25:34,960.960 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:25:35,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:25:35,058.058 INFO    ] No camera update needed
[2026-10-28 20:25:35,061.061 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:25:35,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:25:35,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:25:35,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:25:37,117.117 INFO    ] ================================================
[2026-10-28 20:25:37,133.133 INFO    ] Launching Daemon at Wed Oct 28 20:25:37 IST 2026
[2026-10-28 20:25:37,147.147 INFO    ] ================================================
[2026-10-28 20:25:37,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:25:37
[2026-10-28 20:25:38,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:25:38,584.584 INFO    ] Initializing speech engine...
[2026-10-28 20:25:38,593.593 INFO    ] 2026-10-28 20:25:38
[2026-10-28 20:25:38,891.891 INFO    ] 2026-10-28 20:25:38
[2026-10-28 20:25:38,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:25:39,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:25:39,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:25:39,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:25:39,430.430 INFO    ] time= 28/10/2026 20:25:39
[2026-10-28 20:25:39,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:25:39,534.534 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:25:39,662.662 INFO    ] No existing commands found in stream
[2026-10-28 20:25:44,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:25:44,685.685 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 20:25:49,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:25:49,228.228 INFO    ] Checking for system updates...
[2026-10-28 20:25:49,263.263 INFO    ] 200
[2026-10-28 20:25:49,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:25:49,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:25:49,320.320 INFO    ] No update needed
[2026-10-28 20:25:49,322.322 INFO    ] Checking for camera pi updates...
[2026-10-28 20:25:49,356.356 INFO    ] 200
[2026-10-28 20:25:49,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:25:49,403.403 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:25:49,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:25:49,495.495 INFO    ] No camera update needed
[2026-10-28 20:25:49,498.498 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:25:49,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:25:49,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:25:49,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:25:51,551.551 INFO    ] ================================================
[2026-10-28 20:25:51,567.567 INFO    ] Launching Daemon at Wed Oct 28 20:25:51 IST 2026
[2026-10-28 20:25:51,579.579 INFO    ] ================================================
[2026-10-28 20:25:52,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:25:52
[2026-10-28 20:25:52,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:25:53,003.003 INFO    ] Initializing speech engine...
[2026-10-28 20:25:53,012.012 INFO    ] 2026-10-28 20:25:53
[2026-10-28 20:25:53,262.262 INFO    ] 2026-10-28 20:25:53
[2026-10-28 20:25:53,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:25:53,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:25:53,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:25:53,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:25:53,830.830 INFO    ] time= 28/10/2026 20:25:53
[2026-10-28 20:25:53,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:25:53,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:25:53,987.987 INFO    ] No existing commands found in stream
[2026-10-28 20:25:59,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:25:59,012.012 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-28 20:26:01,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:26:01,750.750 INFO    ] Checking for system updates...
[2026-10-28 20:26:01,790.790 INFO    ] 200
[2026-10-28 20:26:01,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:26:01,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:26:01,862.862 INFO    ] No update needed
[2026-10-28 20:26:01,866.866 INFO    ] Checking for camera pi updates...
[2026-10-28 20:26:01,918.918 INFO    ] 200
[2026-10-28 20:26:01,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:26:01,977.977 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:26:02,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:26:02,101.101 INFO    ] No camera update needed
[2026-10-28 20:26:02,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:26:02,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:26:02,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:26:02,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:26:04,165.165 INFO    ] ================================================
[2026-10-28 20:26:04,180.180 INFO    ] Launching Daemon at Wed Oct 28 20:26:04 IST 2026
[2026-10-28 20:26:04,191.191 INFO    ] ================================================
[2026-10-28 20:26:04,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:26:04
[2026-10-28 20:26:05,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:26:05,622.622 INFO    ] Initializing speech engine...
[2026-10-28 20:26:05,630.630 INFO    ] 2026-10-28 20:26:05
[2026-10-28 20:26:05,880.880 INFO    ] 2026-10-28 20:26:05
[2026-10-28 20:26:05,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:26:06,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:26:06,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:26:06,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:26:06,448.448 INFO    ] time= 28/10/2026 20:26:06
[2026-10-28 20:26:06,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:26:06,473.473 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:26:06,634.634 INFO    ] No existing commands found in stream
[2026-10-28 20:26:11,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:26:11,662.662 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-28 20:26:15,108.108 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:26:15,111.111 INFO    ] Checking for system updates...
[2026-10-28 20:26:15,147.147 INFO    ] 200
[2026-10-28 20:26:15,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:26:15,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:26:15,205.205 INFO    ] No update needed
[2026-10-28 20:26:15,207.207 INFO    ] Checking for camera pi updates...
[2026-10-28 20:26:15,240.240 INFO    ] 200
[2026-10-28 20:26:15,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:26:15,284.284 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:26:15,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:26:15,461.461 INFO    ] No camera update needed
[2026-10-28 20:26:15,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:26:15,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:26:15,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:26:15,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:26:17,518.518 INFO    ] ================================================
[2026-10-28 20:26:17,533.533 INFO    ] Launching Daemon at Wed Oct 28 20:26:17 IST 2026
[2026-10-28 20:26:17,544.544 INFO    ] ================================================
[2026-10-28 20:26:18,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:26:18
[2026-10-28 20:26:18,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:26:18,958.958 INFO    ] Initializing speech engine...
[2026-10-28 20:26:18,970.970 INFO    ] 2026-10-28 20:26:18
[2026-10-28 20:26:19,238.238 INFO    ] 2026-10-28 20:26:19
[2026-10-28 20:26:19,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:26:19,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:26:19,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:26:19,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:26:19,804.804 INFO    ] time= 28/10/2026 20:26:19
[2026-10-28 20:26:19,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:26:19,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:26:20,005.005 INFO    ] No existing commands found in stream
[2026-10-28 20:26:25,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:26:25,038.038 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-10-28 20:26:28,482.482 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:26:28,485.485 INFO    ] Checking for system updates...
[2026-10-28 20:26:28,521.521 INFO    ] 200
[2026-10-28 20:26:28,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:26:28,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:26:28,580.580 INFO    ] No update needed
[2026-10-28 20:26:28,583.583 INFO    ] Checking for camera pi updates...
[2026-10-28 20:26:28,622.622 INFO    ] 200
[2026-10-28 20:26:28,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:26:28,678.678 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:26:28,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:26:28,767.767 INFO    ] No camera update needed
[2026-10-28 20:26:28,769.769 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:26:28,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:26:28,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:26:28,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:26:30,827.827 INFO    ] ================================================
[2026-10-28 20:26:30,843.843 INFO    ] Launching Daemon at Wed Oct 28 20:26:30 IST 2026
[2026-10-28 20:26:30,854.854 INFO    ] ================================================
[2026-10-28 20:26:31,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:26:31
[2026-10-28 20:26:32,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:26:32,593.593 INFO    ] Initializing speech engine...
[2026-10-28 20:26:32,604.604 INFO    ] 2026-10-28 20:26:32
[2026-10-28 20:26:32,886.886 INFO    ] 2026-10-28 20:26:32
[2026-10-28 20:26:32,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:26:33,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:26:33,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:26:33,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:26:33,479.479 INFO    ] time= 28/10/2026 20:26:33
[2026-10-28 20:26:33,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:26:33,494.494 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:26:33,632.632 INFO    ] No existing commands found in stream
[2026-10-28 20:26:38,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:26:38,666.666 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 20:26:42,602.602 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:26:42,605.605 INFO    ] Checking for system updates...
[2026-10-28 20:26:42,645.645 INFO    ] 200
[2026-10-28 20:26:42,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:26:42,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:26:42,710.710 INFO    ] No update needed
[2026-10-28 20:26:42,712.712 INFO    ] Checking for camera pi updates...
[2026-10-28 20:26:42,747.747 INFO    ] 200
[2026-10-28 20:26:42,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:26:42,796.796 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:26:42,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:26:42,890.890 INFO    ] No camera update needed
[2026-10-28 20:26:42,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:26:42,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:26:42,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:26:42,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:26:44,946.946 INFO    ] ================================================
[2026-10-28 20:26:44,961.961 INFO    ] Launching Daemon at Wed Oct 28 20:26:44 IST 2026
[2026-10-28 20:26:44,972.972 INFO    ] ================================================
[2026-10-28 20:26:45,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:26:45
[2026-10-28 20:26:46,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:26:46,575.575 INFO    ] Initializing speech engine...
[2026-10-28 20:26:46,581.581 INFO    ] 2026-10-28 20:26:46
[2026-10-28 20:26:46,856.856 INFO    ] 2026-10-28 20:26:46
[2026-10-28 20:26:46,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:26:47,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:26:47,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:26:47,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:26:47,580.580 INFO    ] time= 28/10/2026 20:26:47
[2026-10-28 20:26:47,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:26:47,669.669 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:26:47,821.821 INFO    ] No existing commands found in stream
[2026-10-28 20:26:52,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:26:52,838.838 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-28 20:26:53,603.603 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:26:53,605.605 INFO    ] Checking for system updates...
[2026-10-28 20:26:53,641.641 INFO    ] 200
[2026-10-28 20:26:53,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:26:53,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:26:53,703.703 INFO    ] No update needed
[2026-10-28 20:26:53,705.705 INFO    ] Checking for camera pi updates...
[2026-10-28 20:26:53,739.739 INFO    ] 200
[2026-10-28 20:26:53,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:26:53,795.795 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:26:53,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:26:53,861.861 INFO    ] No camera update needed
[2026-10-28 20:26:53,864.864 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:26:53,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:26:53,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:26:53,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:26:55,918.918 INFO    ] ================================================
[2026-10-28 20:26:55,934.934 INFO    ] Launching Daemon at Wed Oct 28 20:26:55 IST 2026
[2026-10-28 20:26:55,944.944 INFO    ] ================================================
[2026-10-28 20:26:56,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:26:56
[2026-10-28 20:26:57,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:26:57,355.355 INFO    ] Initializing speech engine...
[2026-10-28 20:26:57,370.370 INFO    ] 2026-10-28 20:26:57
[2026-10-28 20:26:57,635.635 INFO    ] 2026-10-28 20:26:57
[2026-10-28 20:26:57,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:26:57,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:26:57,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:26:58,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:26:58,189.189 INFO    ] time= 28/10/2026 20:26:58
[2026-10-28 20:26:58,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:26:58,283.283 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:26:58,476.476 INFO    ] No existing commands found in stream
[2026-10-28 20:27:03,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:27:03,498.498 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-28 20:27:04,989.989 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:27:04,992.992 INFO    ] Checking for system updates...
[2026-10-28 20:27:05,031.031 INFO    ] 200
[2026-10-28 20:27:05,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:27:05,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:27:05,089.089 INFO    ] No update needed
[2026-10-28 20:27:05,091.091 INFO    ] Checking for camera pi updates...
[2026-10-28 20:27:05,124.124 INFO    ] 200
[2026-10-28 20:27:05,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:27:05,175.175 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:27:05,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:27:05,254.254 INFO    ] No camera update needed
[2026-10-28 20:27:05,257.257 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:27:05,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:27:05,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:27:05,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:27:07,311.311 INFO    ] ================================================
[2026-10-28 20:27:07,326.326 INFO    ] Launching Daemon at Wed Oct 28 20:27:07 IST 2026
[2026-10-28 20:27:07,337.337 INFO    ] ================================================
[2026-10-28 20:27:07,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:27:07
[2026-10-28 20:27:08,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:27:08,783.783 INFO    ] Initializing speech engine...
[2026-10-28 20:27:08,792.792 INFO    ] 2026-10-28 20:27:08
[2026-10-28 20:27:09,072.072 INFO    ] 2026-10-28 20:27:09
[2026-10-28 20:27:09,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:27:09,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:27:09,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:27:09,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:27:09,616.616 INFO    ] time= 28/10/2026 20:27:09
[2026-10-28 20:27:09,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:27:09,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:27:09,829.829 INFO    ] No existing commands found in stream
[2026-10-28 20:27:14,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:27:14,862.862 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 20:27:18,005.005 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:27:18,007.007 INFO    ] Checking for system updates...
[2026-10-28 20:27:18,043.043 INFO    ] 200
[2026-10-28 20:27:18,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:27:18,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:27:18,101.101 INFO    ] No update needed
[2026-10-28 20:27:18,104.104 INFO    ] Checking for camera pi updates...
[2026-10-28 20:27:18,138.138 INFO    ] 200
[2026-10-28 20:27:18,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:27:18,180.180 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:27:18,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:27:18,280.280 INFO    ] No camera update needed
[2026-10-28 20:27:18,282.282 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:27:18,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:27:18,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:27:18,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:27:20,335.335 INFO    ] ================================================
[2026-10-28 20:27:20,351.351 INFO    ] Launching Daemon at Wed Oct 28 20:27:20 IST 2026
[2026-10-28 20:27:20,362.362 INFO    ] ================================================
[2026-10-28 20:27:20,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:27:20
[2026-10-28 20:27:21,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:27:21,823.823 INFO    ] Initializing speech engine...
[2026-10-28 20:27:21,829.829 INFO    ] 2026-10-28 20:27:21
[2026-10-28 20:27:22,090.090 INFO    ] 2026-10-28 20:27:22
[2026-10-28 20:27:22,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:27:22,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:27:22,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:27:22,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:27:22,639.639 INFO    ] time= 28/10/2026 20:27:22
[2026-10-28 20:27:22,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:27:22,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:27:22,852.852 INFO    ] No existing commands found in stream
[2026-10-28 20:27:27,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:27:27,886.886 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-28 20:27:29,524.524 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:27:29,527.527 INFO    ] Checking for system updates...
[2026-10-28 20:27:29,563.563 INFO    ] 200
[2026-10-28 20:27:29,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:27:29,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:27:29,620.620 INFO    ] No update needed
[2026-10-28 20:27:29,623.623 INFO    ] Checking for camera pi updates...
[2026-10-28 20:27:29,656.656 INFO    ] 200
[2026-10-28 20:27:29,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:27:29,698.698 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:27:29,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:27:29,782.782 INFO    ] No camera update needed
[2026-10-28 20:27:29,785.785 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:27:29,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:27:29,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:27:29,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:27:31,841.841 INFO    ] ================================================
[2026-10-28 20:27:31,858.858 INFO    ] Launching Daemon at Wed Oct 28 20:27:31 IST 2026
[2026-10-28 20:27:31,870.870 INFO    ] ================================================
[2026-10-28 20:27:32,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:27:32
[2026-10-28 20:27:33,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:27:33,396.396 INFO    ] Initializing speech engine...
[2026-10-28 20:27:33,405.405 INFO    ] 2026-10-28 20:27:33
[2026-10-28 20:27:33,678.678 INFO    ] 2026-10-28 20:27:33
[2026-10-28 20:27:33,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:27:33,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:27:33,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:27:34,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:27:34,268.268 INFO    ] time= 28/10/2026 20:27:34
[2026-10-28 20:27:34,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:27:34,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:27:34,447.447 INFO    ] No existing commands found in stream
[2026-10-28 20:27:39,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:27:39,480.480 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 20:27:40,022.022 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:27:40,025.025 INFO    ] Checking for system updates...
[2026-10-28 20:27:40,061.061 INFO    ] 200
[2026-10-28 20:27:40,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:27:40,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:27:40,127.127 INFO    ] No update needed
[2026-10-28 20:27:40,129.129 INFO    ] Checking for camera pi updates...
[2026-10-28 20:27:40,164.164 INFO    ] 200
[2026-10-28 20:27:40,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:27:40,207.207 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:27:40,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:27:40,292.292 INFO    ] No camera update needed
[2026-10-28 20:27:40,295.295 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:27:40,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:27:40,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:27:40,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:27:42,347.347 INFO    ] ================================================
[2026-10-28 20:27:42,362.362 INFO    ] Launching Daemon at Wed Oct 28 20:27:42 IST 2026
[2026-10-28 20:27:42,374.374 INFO    ] ================================================
[2026-10-28 20:27:43,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:27:43
[2026-10-28 20:27:43,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:27:44,032.032 INFO    ] Initializing speech engine...
[2026-10-28 20:27:44,037.037 INFO    ] 2026-10-28 20:27:44
[2026-10-28 20:27:44,294.294 INFO    ] 2026-10-28 20:27:44
[2026-10-28 20:27:44,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:27:44,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:27:44,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:27:44,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:27:44,847.847 INFO    ] time= 28/10/2026 20:27:44
[2026-10-28 20:27:44,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:27:44,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:27:45,020.020 INFO    ] No existing commands found in stream
[2026-10-28 20:27:50,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:27:50,057.057 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 20:27:52,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:27:52,814.814 INFO    ] Checking for system updates...
[2026-10-28 20:27:52,854.854 INFO    ] 200
[2026-10-28 20:27:52,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:27:52,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:27:52,911.911 INFO    ] No update needed
[2026-10-28 20:27:52,913.913 INFO    ] Checking for camera pi updates...
[2026-10-28 20:27:52,953.953 INFO    ] 200
[2026-10-28 20:27:52,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:27:53,004.004 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:27:53,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:27:53,089.089 INFO    ] No camera update needed
[2026-10-28 20:27:53,091.091 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:27:53,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:27:53,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:27:53,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:27:55,149.149 INFO    ] ================================================
[2026-10-28 20:27:55,165.165 INFO    ] Launching Daemon at Wed Oct 28 20:27:55 IST 2026
[2026-10-28 20:27:55,176.176 INFO    ] ================================================
[2026-10-28 20:27:55,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:27:55
[2026-10-28 20:27:56,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:27:56,639.639 INFO    ] Initializing speech engine...
[2026-10-28 20:27:56,648.648 INFO    ] 2026-10-28 20:27:56
[2026-10-28 20:27:56,907.907 INFO    ] 2026-10-28 20:27:56
[2026-10-28 20:27:56,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:27:57,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:27:57,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:27:57,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:27:57,491.491 INFO    ] time= 28/10/2026 20:27:57
[2026-10-28 20:27:57,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:27:57,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:27:57,648.648 INFO    ] No existing commands found in stream
[2026-10-28 20:28:02,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:28:02,680.680 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 20:28:06,935.935 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:28:06,938.938 INFO    ] Checking for system updates...
[2026-10-28 20:28:06,974.974 INFO    ] 200
[2026-10-28 20:28:06,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:28:07,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:28:07,031.031 INFO    ] No update needed
[2026-10-28 20:28:07,034.034 INFO    ] Checking for camera pi updates...
[2026-10-28 20:28:07,067.067 INFO    ] 200
[2026-10-28 20:28:07,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:28:07,110.110 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:28:07,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:28:07,193.193 INFO    ] No camera update needed
[2026-10-28 20:28:07,195.195 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:28:07,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:28:07,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:28:07,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:28:09,249.249 INFO    ] ================================================
[2026-10-28 20:28:09,265.265 INFO    ] Launching Daemon at Wed Oct 28 20:28:09 IST 2026
[2026-10-28 20:28:09,275.275 INFO    ] ================================================
[2026-10-28 20:28:09,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:28:09
[2026-10-28 20:28:10,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:28:10,952.952 INFO    ] Initializing speech engine...
[2026-10-28 20:28:10,966.966 INFO    ] 2026-10-28 20:28:10
[2026-10-28 20:28:11,284.284 INFO    ] 2026-10-28 20:28:11
[2026-10-28 20:28:11,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:28:11,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:28:11,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:28:11,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:28:11,918.918 INFO    ] time= 28/10/2026 20:28:11
[2026-10-28 20:28:11,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:28:12,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:28:12,189.189 INFO    ] No existing commands found in stream
[2026-10-28 20:28:17,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:28:17,218.218 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 20:28:20,165.165 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:28:20,168.168 INFO    ] Checking for system updates...
[2026-10-28 20:28:20,211.211 INFO    ] 200
[2026-10-28 20:28:20,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:28:20,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:28:20,281.281 INFO    ] No update needed
[2026-10-28 20:28:20,284.284 INFO    ] Checking for camera pi updates...
[2026-10-28 20:28:20,318.318 INFO    ] 200
[2026-10-28 20:28:20,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:28:20,367.367 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:28:20,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:28:20,558.558 INFO    ] No camera update needed
[2026-10-28 20:28:20,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:28:20,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:28:20,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:28:20,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:28:22,612.612 INFO    ] ================================================
[2026-10-28 20:28:22,628.628 INFO    ] Launching Daemon at Wed Oct 28 20:28:22 IST 2026
[2026-10-28 20:28:22,638.638 INFO    ] ================================================
[2026-10-28 20:28:23,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:28:23
[2026-10-28 20:28:23,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:28:24,068.068 INFO    ] Initializing speech engine...
[2026-10-28 20:28:24,078.078 INFO    ] 2026-10-28 20:28:24
[2026-10-28 20:28:24,341.341 INFO    ] 2026-10-28 20:28:24
[2026-10-28 20:28:24,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:28:24,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:28:24,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:28:24,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:28:24,933.933 INFO    ] time= 28/10/2026 20:28:24
[2026-10-28 20:28:24,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:28:24,952.952 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:28:25,134.134 INFO    ] No existing commands found in stream
[2026-10-28 20:28:30,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:28:30,159.159 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-10-28 20:28:31,501.501 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:28:31,504.504 INFO    ] Checking for system updates...
[2026-10-28 20:28:31,563.563 INFO    ] 200
[2026-10-28 20:28:31,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:28:31,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:28:31,647.647 INFO    ] No update needed
[2026-10-28 20:28:31,650.650 INFO    ] Checking for camera pi updates...
[2026-10-28 20:28:31,689.689 INFO    ] 200
[2026-10-28 20:28:31,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:28:31,738.738 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:28:31,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:28:31,810.810 INFO    ] No camera update needed
[2026-10-28 20:28:31,813.813 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:28:31,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:28:31,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:28:31,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:28:33,872.872 INFO    ] ================================================
[2026-10-28 20:28:33,887.887 INFO    ] Launching Daemon at Wed Oct 28 20:28:33 IST 2026
[2026-10-28 20:28:33,898.898 INFO    ] ================================================
[2026-10-28 20:28:34,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:28:34
[2026-10-28 20:28:35,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:28:35,297.297 INFO    ] Initializing speech engine...
[2026-10-28 20:28:35,303.303 INFO    ] 2026-10-28 20:28:35
[2026-10-28 20:28:35,579.579 INFO    ] 2026-10-28 20:28:35
[2026-10-28 20:28:35,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:28:35,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:28:35,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:28:36,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:28:36,198.198 INFO    ] time= 28/10/2026 20:28:36
[2026-10-28 20:28:36,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:28:36,242.242 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:28:36,372.372 INFO    ] No existing commands found in stream
[2026-10-28 20:28:41,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:28:41,398.398 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-28 20:28:43,164.164 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:28:43,167.167 INFO    ] Checking for system updates...
[2026-10-28 20:28:43,205.205 INFO    ] 200
[2026-10-28 20:28:43,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:28:43,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:28:43,263.263 INFO    ] No update needed
[2026-10-28 20:28:43,265.265 INFO    ] Checking for camera pi updates...
[2026-10-28 20:28:43,299.299 INFO    ] 200
[2026-10-28 20:28:43,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:28:43,341.341 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:28:43,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:28:43,442.442 INFO    ] No camera update needed
[2026-10-28 20:28:43,444.444 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:28:43,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:28:43,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:28:43,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:28:45,499.499 INFO    ] ================================================
[2026-10-28 20:28:45,514.514 INFO    ] Launching Daemon at Wed Oct 28 20:28:45 IST 2026
[2026-10-28 20:28:45,525.525 INFO    ] ================================================
[2026-10-28 20:28:46,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:28:46
[2026-10-28 20:28:46,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:28:46,981.981 INFO    ] Initializing speech engine...
[2026-10-28 20:28:46,987.987 INFO    ] 2026-10-28 20:28:46
[2026-10-28 20:28:47,237.237 INFO    ] 2026-10-28 20:28:47
[2026-10-28 20:28:47,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:28:47,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:28:47,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:28:47,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:28:47,958.958 INFO    ] time= 28/10/2026 20:28:47
[2026-10-28 20:28:48,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:28:48,045.045 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:28:48,212.212 INFO    ] No existing commands found in stream
[2026-10-28 20:28:53,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:28:53,245.245 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-28 20:28:54,536.536 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:28:54,539.539 INFO    ] Checking for system updates...
[2026-10-28 20:28:54,574.574 INFO    ] 200
[2026-10-28 20:28:54,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:28:54,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:28:54,631.631 INFO    ] No update needed
[2026-10-28 20:28:54,634.634 INFO    ] Checking for camera pi updates...
[2026-10-28 20:28:54,667.667 INFO    ] 200
[2026-10-28 20:28:54,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:28:54,710.710 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:28:54,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:28:54,785.785 INFO    ] No camera update needed
[2026-10-28 20:28:54,788.788 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:28:54,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:28:54,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:28:54,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:28:56,840.840 INFO    ] ================================================
[2026-10-28 20:28:56,855.855 INFO    ] Launching Daemon at Wed Oct 28 20:28:56 IST 2026
[2026-10-28 20:28:56,866.866 INFO    ] ================================================
[2026-10-28 20:28:57,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:28:57
[2026-10-28 20:28:58,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:28:58,325.325 INFO    ] Initializing speech engine...
[2026-10-28 20:28:58,332.332 INFO    ] 2026-10-28 20:28:58
[2026-10-28 20:28:58,592.592 INFO    ] 2026-10-28 20:28:58
[2026-10-28 20:28:58,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:28:58,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:28:58,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:28:59,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:28:59,150.150 INFO    ] time= 28/10/2026 20:28:59
[2026-10-28 20:28:59,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:28:59,187.187 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:28:59,318.318 INFO    ] No existing commands found in stream
[2026-10-28 20:29:04,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:29:04,351.351 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-28 20:29:07,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:29:07,204.204 INFO    ] Checking for system updates...
[2026-10-28 20:29:07,240.240 INFO    ] 200
[2026-10-28 20:29:07,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:29:07,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:29:07,297.297 INFO    ] No update needed
[2026-10-28 20:29:07,300.300 INFO    ] Checking for camera pi updates...
[2026-10-28 20:29:07,338.338 INFO    ] 200
[2026-10-28 20:29:07,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:29:07,380.380 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:29:07,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:29:07,463.463 INFO    ] No camera update needed
[2026-10-28 20:29:07,465.465 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:29:07,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:29:07,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:29:07,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:29:09,519.519 INFO    ] ================================================
[2026-10-28 20:29:09,534.534 INFO    ] Launching Daemon at Wed Oct 28 20:29:09 IST 2026
[2026-10-28 20:29:09,545.545 INFO    ] ================================================
[2026-10-28 20:29:10,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:29:10
[2026-10-28 20:29:10,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:29:11,084.084 INFO    ] Initializing speech engine...
[2026-10-28 20:29:11,102.102 INFO    ] 2026-10-28 20:29:11
[2026-10-28 20:29:11,362.362 INFO    ] 2026-10-28 20:29:11
[2026-10-28 20:29:11,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:29:11,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:29:11,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:29:11,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:29:11,917.917 INFO    ] time= 28/10/2026 20:29:11
[2026-10-28 20:29:11,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:29:11,957.957 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:29:12,075.075 INFO    ] No existing commands found in stream
[2026-10-28 20:29:17,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:29:17,107.107 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 20:29:18,364.364 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:29:18,366.366 INFO    ] Checking for system updates...
[2026-10-28 20:29:18,402.402 INFO    ] 200
[2026-10-28 20:29:18,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:29:18,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:29:18,465.465 INFO    ] No update needed
[2026-10-28 20:29:18,467.467 INFO    ] Checking for camera pi updates...
[2026-10-28 20:29:18,501.501 INFO    ] 200
[2026-10-28 20:29:18,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:29:18,543.543 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:29:18,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:29:18,621.621 INFO    ] No camera update needed
[2026-10-28 20:29:18,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:29:18,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:29:18,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:29:18,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:29:20,676.676 INFO    ] ================================================
[2026-10-28 20:29:20,691.691 INFO    ] Launching Daemon at Wed Oct 28 20:29:20 IST 2026
[2026-10-28 20:29:20,702.702 INFO    ] ================================================
[2026-10-28 20:29:21,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:29:21
[2026-10-28 20:29:21,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:29:22,158.158 INFO    ] Initializing speech engine...
[2026-10-28 20:29:22,165.165 INFO    ] 2026-10-28 20:29:22
[2026-10-28 20:29:22,424.424 INFO    ] 2026-10-28 20:29:22
[2026-10-28 20:29:22,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:29:22,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:29:22,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:29:22,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:29:22,968.968 INFO    ] time= 28/10/2026 20:29:22
[2026-10-28 20:29:22,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:29:23,004.004 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:29:23,146.146 INFO    ] No existing commands found in stream
[2026-10-28 20:29:28,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:29:28,174.174 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 20:29:30,825.825 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:29:30,827.827 INFO    ] Checking for system updates...
[2026-10-28 20:29:30,863.863 INFO    ] 200
[2026-10-28 20:29:30,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:29:30,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:29:30,930.930 INFO    ] No update needed
[2026-10-28 20:29:30,932.932 INFO    ] Checking for camera pi updates...
[2026-10-28 20:29:30,970.970 INFO    ] 200
[2026-10-28 20:29:30,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:29:31,013.013 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:29:31,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:29:31,088.088 INFO    ] No camera update needed
[2026-10-28 20:29:31,090.090 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:29:31,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:29:31,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:29:31,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:29:33,146.146 INFO    ] ================================================
[2026-10-28 20:29:33,161.161 INFO    ] Launching Daemon at Wed Oct 28 20:29:33 IST 2026
[2026-10-28 20:29:33,172.172 INFO    ] ================================================
[2026-10-28 20:29:33,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:29:33
[2026-10-28 20:29:34,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:29:34,630.630 INFO    ] Initializing speech engine...
[2026-10-28 20:29:34,656.656 INFO    ] 2026-10-28 20:29:34
[2026-10-28 20:29:34,932.932 INFO    ] 2026-10-28 20:29:34
[2026-10-28 20:29:34,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:29:35,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:29:35,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:29:35,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:29:35,513.513 INFO    ] time= 28/10/2026 20:29:35
[2026-10-28 20:29:35,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:29:35,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:29:35,731.731 INFO    ] No existing commands found in stream
[2026-10-28 20:29:40,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:29:40,759.759 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 20:29:42,188.188 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:29:42,191.191 INFO    ] Checking for system updates...
[2026-10-28 20:29:42,227.227 INFO    ] 200
[2026-10-28 20:29:42,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:29:42,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:29:42,284.284 INFO    ] No update needed
[2026-10-28 20:29:42,286.286 INFO    ] Checking for camera pi updates...
[2026-10-28 20:29:42,320.320 INFO    ] 200
[2026-10-28 20:29:42,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:29:42,367.367 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:29:42,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:29:42,450.450 INFO    ] No camera update needed
[2026-10-28 20:29:42,452.452 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:29:42,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:29:42,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:29:42,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:29:44,505.505 INFO    ] ================================================
[2026-10-28 20:29:44,520.520 INFO    ] Launching Daemon at Wed Oct 28 20:29:44 IST 2026
[2026-10-28 20:29:44,531.531 INFO    ] ================================================
[2026-10-28 20:29:45,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:29:45
[2026-10-28 20:29:45,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:29:46,180.180 INFO    ] Initializing speech engine...
[2026-10-28 20:29:46,186.186 INFO    ] 2026-10-28 20:29:46
[2026-10-28 20:29:46,496.496 INFO    ] 2026-10-28 20:29:46
[2026-10-28 20:29:46,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:29:46,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:29:46,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:29:46,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:29:47,014.014 INFO    ] time= 28/10/2026 20:29:46
[2026-10-28 20:29:47,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:29:47,052.052 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:29:47,234.234 INFO    ] No existing commands found in stream
[2026-10-28 20:29:52,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:29:52,268.268 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-28 20:29:53,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:29:53,487.487 INFO    ] Checking for system updates...
[2026-10-28 20:29:53,524.524 INFO    ] 200
[2026-10-28 20:29:53,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:29:53,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:29:53,584.584 INFO    ] No update needed
[2026-10-28 20:29:53,587.587 INFO    ] Checking for camera pi updates...
[2026-10-28 20:29:53,622.622 INFO    ] 200
[2026-10-28 20:29:53,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:29:53,671.671 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:29:53,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:29:53,759.759 INFO    ] No camera update needed
[2026-10-28 20:29:53,762.762 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:29:53,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:29:53,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:29:53,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:29:55,819.819 INFO    ] ================================================
[2026-10-28 20:29:55,834.834 INFO    ] Launching Daemon at Wed Oct 28 20:29:55 IST 2026
[2026-10-28 20:29:55,845.845 INFO    ] ================================================
[2026-10-28 20:29:56,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:29:56
[2026-10-28 20:29:57,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:29:57,258.258 INFO    ] Initializing speech engine...
[2026-10-28 20:29:57,264.264 INFO    ] 2026-10-28 20:29:57
[2026-10-28 20:29:57,562.562 INFO    ] 2026-10-28 20:29:57
[2026-10-28 20:29:57,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:29:57,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:29:57,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:29:57,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:29:57,986.986 INFO    ] time= 28/10/2026 20:29:57
[2026-10-28 20:29:57,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:29:58,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:29:58,186.186 INFO    ] No existing commands found in stream
[2026-10-28 20:30:03,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:30:03,209.209 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-10-28 20:30:08,682.682 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:30:08,684.684 INFO    ] Checking for system updates...
[2026-10-28 20:30:08,720.720 INFO    ] 200
[2026-10-28 20:30:08,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:30:08,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:30:08,784.784 INFO    ] No update needed
[2026-10-28 20:30:08,786.786 INFO    ] Checking for camera pi updates...
[2026-10-28 20:30:08,821.821 INFO    ] 200
[2026-10-28 20:30:08,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:30:08,868.868 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:30:08,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:30:08,964.964 INFO    ] No camera update needed
[2026-10-28 20:30:08,967.967 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:30:08,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:30:08,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:30:08,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:30:11,022.022 INFO    ] ================================================
[2026-10-28 20:30:11,038.038 INFO    ] Launching Daemon at Wed Oct 28 20:30:11 IST 2026
[2026-10-28 20:30:11,049.049 INFO    ] ================================================
[2026-10-28 20:30:11,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:30:11
[2026-10-28 20:30:12,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:30:12,500.500 INFO    ] Initializing speech engine...
[2026-10-28 20:30:12,513.513 INFO    ] 2026-10-28 20:30:12
[2026-10-28 20:30:12,805.805 INFO    ] 2026-10-28 20:30:12
[2026-10-28 20:30:12,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:30:13,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:30:13,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:30:13,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:30:13,438.438 INFO    ] time= 28/10/2026 20:30:13
[2026-10-28 20:30:13,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:30:13,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:30:13,577.577 INFO    ] No existing commands found in stream
[2026-10-28 20:30:18,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:30:18,604.604 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-28 20:30:19,482.482 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:30:19,485.485 INFO    ] Checking for system updates...
[2026-10-28 20:30:19,525.525 INFO    ] 200
[2026-10-28 20:30:19,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:30:19,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:30:19,581.581 INFO    ] No update needed
[2026-10-28 20:30:19,584.584 INFO    ] Checking for camera pi updates...
[2026-10-28 20:30:19,618.618 INFO    ] 200
[2026-10-28 20:30:19,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:30:19,660.660 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:30:19,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:30:19,745.745 INFO    ] No camera update needed
[2026-10-28 20:30:19,750.750 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:30:19,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:30:19,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:30:19,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:30:21,804.804 INFO    ] ================================================
[2026-10-28 20:30:21,819.819 INFO    ] Launching Daemon at Wed Oct 28 20:30:21 IST 2026
[2026-10-28 20:30:21,830.830 INFO    ] ================================================
[2026-10-28 20:30:22,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:30:22
[2026-10-28 20:30:22,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:30:23,251.251 INFO    ] Initializing speech engine...
[2026-10-28 20:30:23,268.268 INFO    ] 2026-10-28 20:30:23
[2026-10-28 20:30:23,543.543 INFO    ] 2026-10-28 20:30:23
[2026-10-28 20:30:23,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:30:23,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:30:23,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:30:24,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:30:24,174.174 INFO    ] time= 28/10/2026 20:30:24
[2026-10-28 20:30:24,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:30:24,198.198 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:30:24,316.316 INFO    ] No existing commands found in stream
[2026-10-28 20:30:29,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:30:29,344.344 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-28 20:30:30,180.180 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:30:30,182.182 INFO    ] Checking for system updates...
[2026-10-28 20:30:30,217.217 INFO    ] 200
[2026-10-28 20:30:30,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:30:30,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:30:30,281.281 INFO    ] No update needed
[2026-10-28 20:30:30,284.284 INFO    ] Checking for camera pi updates...
[2026-10-28 20:30:30,317.317 INFO    ] 200
[2026-10-28 20:30:30,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:30:30,359.359 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:30:30,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:30:30,538.538 INFO    ] No camera update needed
[2026-10-28 20:30:30,540.540 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:30:30,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:30:30,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:30:30,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:30:32,595.595 INFO    ] ================================================
[2026-10-28 20:30:32,612.612 INFO    ] Launching Daemon at Wed Oct 28 20:30:32 IST 2026
[2026-10-28 20:30:32,625.625 INFO    ] ================================================
[2026-10-28 20:30:33,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:30:33
[2026-10-28 20:30:33,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:30:34,084.084 INFO    ] Initializing speech engine...
[2026-10-28 20:30:34,100.100 INFO    ] 2026-10-28 20:30:34
[2026-10-28 20:30:34,355.355 INFO    ] 2026-10-28 20:30:34
[2026-10-28 20:30:34,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:30:34,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:30:34,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:30:34,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:30:34,914.914 INFO    ] time= 28/10/2026 20:30:34
[2026-10-28 20:30:34,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:30:34,949.949 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:30:35,091.091 INFO    ] No existing commands found in stream
[2026-10-28 20:30:40,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:30:40,119.119 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-28 20:30:41,644.644 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:30:41,647.647 INFO    ] Checking for system updates...
[2026-10-28 20:30:41,687.687 INFO    ] 200
[2026-10-28 20:30:41,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:30:41,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:30:41,745.745 INFO    ] No update needed
[2026-10-28 20:30:41,747.747 INFO    ] Checking for camera pi updates...
[2026-10-28 20:30:41,780.780 INFO    ] 200
[2026-10-28 20:30:41,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:30:41,826.826 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:30:41,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:30:41,924.924 INFO    ] No camera update needed
[2026-10-28 20:30:41,927.927 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:30:41,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:30:41,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:30:41,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:30:43,981.981 INFO    ] ================================================
[2026-10-28 20:30:44,996.996 INFO    ] Launching Daemon at Wed Oct 28 20:30:43 IST 2026
[2026-10-28 20:30:44,007.007 INFO    ] ================================================
[2026-10-28 20:30:44,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:30:44
[2026-10-28 20:30:45,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:30:45,452.452 INFO    ] Initializing speech engine...
[2026-10-28 20:30:45,477.477 INFO    ] 2026-10-28 20:30:45
[2026-10-28 20:30:45,747.747 INFO    ] 2026-10-28 20:30:45
[2026-10-28 20:30:45,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:30:46,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:30:46,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:30:46,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:30:46,357.357 INFO    ] time= 28/10/2026 20:30:46
[2026-10-28 20:30:46,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:30:46,380.380 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:30:46,545.545 INFO    ] No existing commands found in stream
[2026-10-28 20:30:51,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:30:51,563.563 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-28 20:30:53,306.306 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:30:53,309.309 INFO    ] Checking for system updates...
[2026-10-28 20:30:53,344.344 INFO    ] 200
[2026-10-28 20:30:53,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:30:53,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:30:53,401.401 INFO    ] No update needed
[2026-10-28 20:30:53,404.404 INFO    ] Checking for camera pi updates...
[2026-10-28 20:30:53,437.437 INFO    ] 200
[2026-10-28 20:30:53,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:30:53,480.480 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:30:53,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:30:53,605.605 INFO    ] No camera update needed
[2026-10-28 20:30:53,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:30:53,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:30:53,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:30:53,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:30:55,662.662 INFO    ] ================================================
[2026-10-28 20:30:55,677.677 INFO    ] Launching Daemon at Wed Oct 28 20:30:55 IST 2026
[2026-10-28 20:30:55,688.688 INFO    ] ================================================
[2026-10-28 20:30:56,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:30:56
[2026-10-28 20:30:56,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:30:57,145.145 INFO    ] Initializing speech engine...
[2026-10-28 20:30:57,153.153 INFO    ] 2026-10-28 20:30:57
[2026-10-28 20:30:57,413.413 INFO    ] 2026-10-28 20:30:57
[2026-10-28 20:30:57,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:30:57,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:30:57,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:30:57,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:30:57,954.954 INFO    ] time= 28/10/2026 20:30:57
[2026-10-28 20:30:57,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:30:57,994.994 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:30:58,136.136 INFO    ] No existing commands found in stream
[2026-10-28 20:31:03,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:31:03,168.168 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-10-28 20:31:06,979.979 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:31:06,981.981 INFO    ] Checking for system updates...
[2026-10-28 20:31:07,017.017 INFO    ] 200
[2026-10-28 20:31:07,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:31:07,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:31:07,080.080 INFO    ] No update needed
[2026-10-28 20:31:07,082.082 INFO    ] Checking for camera pi updates...
[2026-10-28 20:31:07,118.118 INFO    ] 200
[2026-10-28 20:31:07,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:31:07,162.162 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:31:07,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:31:07,247.247 INFO    ] No camera update needed
[2026-10-28 20:31:07,250.250 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:31:07,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:31:07,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:31:07,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:31:09,306.306 INFO    ] ================================================
[2026-10-28 20:31:09,322.322 INFO    ] Launching Daemon at Wed Oct 28 20:31:09 IST 2026
[2026-10-28 20:31:09,332.332 INFO    ] ================================================
[2026-10-28 20:31:09,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:31:09
[2026-10-28 20:31:10,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:31:10,937.937 INFO    ] Initializing speech engine...
[2026-10-28 20:31:10,946.946 INFO    ] 2026-10-28 20:31:10
[2026-10-28 20:31:11,230.230 INFO    ] 2026-10-28 20:31:11
[2026-10-28 20:31:11,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:31:11,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:31:11,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:31:11,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:31:11,939.939 INFO    ] time= 28/10/2026 20:31:11
[2026-10-28 20:31:11,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:31:12,015.015 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:31:12,161.161 INFO    ] No existing commands found in stream
[2026-10-28 20:31:17,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:31:17,179.179 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 20:31:17,894.894 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:31:17,897.897 INFO    ] Checking for system updates...
[2026-10-28 20:31:17,938.938 INFO    ] 200
[2026-10-28 20:31:17,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:31:17,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:31:17,999.999 INFO    ] No update needed
[2026-10-28 20:31:18,001.001 INFO    ] Checking for camera pi updates...
[2026-10-28 20:31:18,040.040 INFO    ] 200
[2026-10-28 20:31:18,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:31:18,107.107 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:31:18,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:31:18,196.196 INFO    ] No camera update needed
[2026-10-28 20:31:18,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:31:18,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:31:18,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:31:18,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:31:20,252.252 INFO    ] ================================================
[2026-10-28 20:31:20,267.267 INFO    ] Launching Daemon at Wed Oct 28 20:31:20 IST 2026
[2026-10-28 20:31:20,278.278 INFO    ] ================================================
[2026-10-28 20:31:20,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:31:20
[2026-10-28 20:31:21,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:31:21,875.875 INFO    ] Initializing speech engine...
[2026-10-28 20:31:21,888.888 INFO    ] 2026-10-28 20:31:21
[2026-10-28 20:31:22,172.172 INFO    ] 2026-10-28 20:31:22
[2026-10-28 20:31:22,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:31:22,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:31:22,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:31:22,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:31:22,849.849 INFO    ] time= 28/10/2026 20:31:22
[2026-10-28 20:31:22,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:31:22,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:31:23,097.097 INFO    ] No existing commands found in stream
[2026-10-28 20:31:28,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:31:28,117.117 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-28 20:31:31,208.208 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:31:31,211.211 INFO    ] Checking for system updates...
[2026-10-28 20:31:31,248.248 INFO    ] 200
[2026-10-28 20:31:31,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:31:31,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:31:31,310.310 INFO    ] No update needed
[2026-10-28 20:31:31,312.312 INFO    ] Checking for camera pi updates...
[2026-10-28 20:31:31,351.351 INFO    ] 200
[2026-10-28 20:31:31,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:31:31,404.404 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:31:31,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:31:31,492.492 INFO    ] No camera update needed
[2026-10-28 20:31:31,495.495 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:31:31,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:31:31,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:31:31,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:31:33,551.551 INFO    ] ================================================
[2026-10-28 20:31:33,567.567 INFO    ] Launching Daemon at Wed Oct 28 20:31:33 IST 2026
[2026-10-28 20:31:33,578.578 INFO    ] ================================================
[2026-10-28 20:31:34,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:31:34
[2026-10-28 20:31:34,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:31:35,035.035 INFO    ] Initializing speech engine...
[2026-10-28 20:31:35,043.043 INFO    ] 2026-10-28 20:31:35
[2026-10-28 20:31:35,332.332 INFO    ] 2026-10-28 20:31:35
[2026-10-28 20:31:35,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:31:35,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:31:35,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:31:35,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:31:35,915.915 INFO    ] time= 28/10/2026 20:31:35
[2026-10-28 20:31:35,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:31:36,014.014 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:31:36,146.146 INFO    ] No existing commands found in stream
[2026-10-28 20:31:41,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:31:41,176.176 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-28 20:31:44,666.666 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:31:44,669.669 INFO    ] Checking for system updates...
[2026-10-28 20:31:44,710.710 INFO    ] 200
[2026-10-28 20:31:44,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:31:44,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:31:44,776.776 INFO    ] No update needed
[2026-10-28 20:31:44,779.779 INFO    ] Checking for camera pi updates...
[2026-10-28 20:31:44,813.813 INFO    ] 200
[2026-10-28 20:31:44,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:31:44,860.860 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:31:44,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:31:44,945.945 INFO    ] No camera update needed
[2026-10-28 20:31:44,948.948 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:31:44,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:31:44,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:31:44,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:31:47,000.000 INFO    ] ================================================
[2026-10-28 20:31:47,016.016 INFO    ] Launching Daemon at Wed Oct 28 20:31:47 IST 2026
[2026-10-28 20:31:47,027.027 INFO    ] ================================================
[2026-10-28 20:31:47,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:31:47
[2026-10-28 20:31:48,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:31:48,498.498 INFO    ] Initializing speech engine...
[2026-10-28 20:31:48,509.509 INFO    ] 2026-10-28 20:31:48
[2026-10-28 20:31:48,782.782 INFO    ] 2026-10-28 20:31:48
[2026-10-28 20:31:48,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:31:49,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:31:49,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:31:49,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:31:49,414.414 INFO    ] time= 28/10/2026 20:31:49
[2026-10-28 20:31:49,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:31:49,502.502 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:31:49,665.665 INFO    ] No existing commands found in stream
[2026-10-28 20:31:54,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:31:54,698.698 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-28 20:31:55,680.680 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:31:55,682.682 INFO    ] Checking for system updates...
[2026-10-28 20:31:55,722.722 INFO    ] 200
[2026-10-28 20:31:55,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:31:55,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:31:55,781.781 INFO    ] No update needed
[2026-10-28 20:31:55,784.784 INFO    ] Checking for camera pi updates...
[2026-10-28 20:31:55,818.818 INFO    ] 200
[2026-10-28 20:31:55,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:31:55,862.862 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:31:55,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:31:55,946.946 INFO    ] No camera update needed
[2026-10-28 20:31:55,949.949 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:31:55,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:31:55,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:31:55,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:31:58,002.002 INFO    ] ================================================
[2026-10-28 20:31:58,018.018 INFO    ] Launching Daemon at Wed Oct 28 20:31:58 IST 2026
[2026-10-28 20:31:58,029.029 INFO    ] ================================================
[2026-10-28 20:31:58,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:31:58
[2026-10-28 20:31:59,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:31:59,434.434 INFO    ] Initializing speech engine...
[2026-10-28 20:31:59,453.453 INFO    ] 2026-10-28 20:31:59
[2026-10-28 20:31:59,707.707 INFO    ] 2026-10-28 20:31:59
[2026-10-28 20:31:59,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:32:00,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:32:00,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:32:00,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:32:00,281.281 INFO    ] time= 28/10/2026 20:32:00
[2026-10-28 20:32:00,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:32:00,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:32:00,480.480 INFO    ] No existing commands found in stream
[2026-10-28 20:32:05,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:32:05,514.514 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-28 20:32:09,667.667 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:32:09,670.670 INFO    ] Checking for system updates...
[2026-10-28 20:32:09,707.707 INFO    ] 200
[2026-10-28 20:32:09,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:32:09,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:32:09,770.770 INFO    ] No update needed
[2026-10-28 20:32:09,773.773 INFO    ] Checking for camera pi updates...
[2026-10-28 20:32:09,807.807 INFO    ] 200
[2026-10-28 20:32:09,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:32:09,850.850 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:32:09,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:32:09,944.944 INFO    ] No camera update needed
[2026-10-28 20:32:09,946.946 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:32:09,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:32:09,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:32:09,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:32:12,003.003 INFO    ] ================================================
[2026-10-28 20:32:12,019.019 INFO    ] Launching Daemon at Wed Oct 28 20:32:12 IST 2026
[2026-10-28 20:32:12,030.030 INFO    ] ================================================
[2026-10-28 20:32:12,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:32:12
[2026-10-28 20:32:13,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:32:13,605.605 INFO    ] Initializing speech engine...
[2026-10-28 20:32:13,611.611 INFO    ] 2026-10-28 20:32:13
[2026-10-28 20:32:13,896.896 INFO    ] 2026-10-28 20:32:13
[2026-10-28 20:32:13,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:32:14,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:32:14,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:32:14,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:32:14,455.455 INFO    ] time= 28/10/2026 20:32:14
[2026-10-28 20:32:14,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:32:14,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:32:14,605.605 INFO    ] No existing commands found in stream
[2026-10-28 20:32:19,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:32:19,643.643 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-28 20:32:22,763.763 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:32:22,766.766 INFO    ] Checking for system updates...
[2026-10-28 20:32:22,806.806 INFO    ] 200
[2026-10-28 20:32:22,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:32:22,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:32:22,867.867 INFO    ] No update needed
[2026-10-28 20:32:22,870.870 INFO    ] Checking for camera pi updates...
[2026-10-28 20:32:22,908.908 INFO    ] 200
[2026-10-28 20:32:22,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:32:22,955.955 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:32:23,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:32:23,042.042 INFO    ] No camera update needed
[2026-10-28 20:32:23,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:32:23,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:32:23,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:32:23,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:32:25,100.100 INFO    ] ================================================
[2026-10-28 20:32:25,115.115 INFO    ] Launching Daemon at Wed Oct 28 20:32:25 IST 2026
[2026-10-28 20:32:25,126.126 INFO    ] ================================================
[2026-10-28 20:32:25,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:32:25
[2026-10-28 20:32:26,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:32:26,551.551 INFO    ] Initializing speech engine...
[2026-10-28 20:32:26,572.572 INFO    ] 2026-10-28 20:32:26
[2026-10-28 20:32:26,831.831 INFO    ] 2026-10-28 20:32:26
[2026-10-28 20:32:26,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:32:27,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:32:27,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:32:27,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:32:27,397.397 INFO    ] time= 28/10/2026 20:32:27
[2026-10-28 20:32:27,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:32:27,422.422 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:32:27,553.553 INFO    ] No existing commands found in stream
[2026-10-28 20:32:32,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:32:32,569.569 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 20:32:36,701.701 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:32:36,704.704 INFO    ] Checking for system updates...
[2026-10-28 20:32:36,742.742 INFO    ] 200
[2026-10-28 20:32:36,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:32:36,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:32:36,802.802 INFO    ] No update needed
[2026-10-28 20:32:36,804.804 INFO    ] Checking for camera pi updates...
[2026-10-28 20:32:36,838.838 INFO    ] 200
[2026-10-28 20:32:36,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:32:36,885.885 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:32:36,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:32:36,970.970 INFO    ] No camera update needed
[2026-10-28 20:32:36,973.973 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:32:36,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:32:36,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:32:36,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:32:39,026.026 INFO    ] ================================================
[2026-10-28 20:32:39,041.041 INFO    ] Launching Daemon at Wed Oct 28 20:32:39 IST 2026
[2026-10-28 20:32:39,051.051 INFO    ] ================================================
[2026-10-28 20:32:39,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:32:39
[2026-10-28 20:32:40,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:32:40,643.643 INFO    ] Initializing speech engine...
[2026-10-28 20:32:40,656.656 INFO    ] 2026-10-28 20:32:40
[2026-10-28 20:32:40,923.923 INFO    ] 2026-10-28 20:32:40
[2026-10-28 20:32:40,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:32:41,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:32:41,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:32:41,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:32:41,523.523 INFO    ] time= 28/10/2026 20:32:41
[2026-10-28 20:32:41,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:32:41,579.579 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:32:41,696.696 INFO    ] No existing commands found in stream
[2026-10-28 20:32:46,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:32:46,741.741 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-28 20:32:48,070.070 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:32:48,073.073 INFO    ] Checking for system updates...
[2026-10-28 20:32:48,109.109 INFO    ] 200
[2026-10-28 20:32:48,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:32:48,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:32:48,175.175 INFO    ] No update needed
[2026-10-28 20:32:48,177.177 INFO    ] Checking for camera pi updates...
[2026-10-28 20:32:48,211.211 INFO    ] 200
[2026-10-28 20:32:48,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:32:48,255.255 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:32:48,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:32:48,441.441 INFO    ] No camera update needed
[2026-10-28 20:32:48,443.443 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:32:48,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:32:48,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:32:48,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:32:50,498.498 INFO    ] ================================================
[2026-10-28 20:32:50,514.514 INFO    ] Launching Daemon at Wed Oct 28 20:32:50 IST 2026
[2026-10-28 20:32:50,524.524 INFO    ] ================================================
[2026-10-28 20:32:51,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:32:51
[2026-10-28 20:32:51,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:32:51,974.974 INFO    ] Initializing speech engine...
[2026-10-28 20:32:51,983.983 INFO    ] 2026-10-28 20:32:51
[2026-10-28 20:32:52,233.233 INFO    ] 2026-10-28 20:32:52
[2026-10-28 20:32:52,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:32:52,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:32:52,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:32:52,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:32:52,817.817 INFO    ] time= 28/10/2026 20:32:52
[2026-10-28 20:32:52,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:32:52,852.852 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:32:52,971.971 INFO    ] No existing commands found in stream
[2026-10-28 20:32:57,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:32:57,983.983 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-28 20:33:01,284.284 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:33:01,287.287 INFO    ] Checking for system updates...
[2026-10-28 20:33:01,323.323 INFO    ] 200
[2026-10-28 20:33:01,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:33:01,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:33:01,392.392 INFO    ] No update needed
[2026-10-28 20:33:01,395.395 INFO    ] Checking for camera pi updates...
[2026-10-28 20:33:01,431.431 INFO    ] 200
[2026-10-28 20:33:01,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:33:01,487.487 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:33:01,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:33:01,612.612 INFO    ] No camera update needed
[2026-10-28 20:33:01,616.616 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:33:01,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:33:01,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:33:01,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:33:03,680.680 INFO    ] ================================================
[2026-10-28 20:33:03,695.695 INFO    ] Launching Daemon at Wed Oct 28 20:33:03 IST 2026
[2026-10-28 20:33:03,706.706 INFO    ] ================================================
[2026-10-28 20:33:04,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:33:04
[2026-10-28 20:33:04,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:33:05,105.105 INFO    ] Initializing speech engine...
[2026-10-28 20:33:05,127.127 INFO    ] 2026-10-28 20:33:05
[2026-10-28 20:33:05,379.379 INFO    ] 2026-10-28 20:33:05
[2026-10-28 20:33:05,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:33:05,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:33:05,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:33:05,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:33:05,918.918 INFO    ] time= 28/10/2026 20:33:05
[2026-10-28 20:33:05,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:33:05,922.922 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:33:06,091.091 INFO    ] No existing commands found in stream
[2026-10-28 20:33:11,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:33:11,106.106 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 20:33:14,923.923 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:33:14,926.926 INFO    ] Checking for system updates...
[2026-10-28 20:33:14,961.961 INFO    ] 200
[2026-10-28 20:33:14,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:33:15,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:33:15,019.019 INFO    ] No update needed
[2026-10-28 20:33:15,021.021 INFO    ] Checking for camera pi updates...
[2026-10-28 20:33:15,054.054 INFO    ] 200
[2026-10-28 20:33:15,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:33:15,100.100 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:33:15,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:33:15,195.195 INFO    ] No camera update needed
[2026-10-28 20:33:15,197.197 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:33:15,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:33:15,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:33:15,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:33:17,250.250 INFO    ] ================================================
[2026-10-28 20:33:17,265.265 INFO    ] Launching Daemon at Wed Oct 28 20:33:17 IST 2026
[2026-10-28 20:33:17,276.276 INFO    ] ================================================
[2026-10-28 20:33:17,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:33:17
[2026-10-28 20:33:18,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:33:18,727.727 INFO    ] Initializing speech engine...
[2026-10-28 20:33:18,747.747 INFO    ] 2026-10-28 20:33:18
[2026-10-28 20:33:19,009.009 INFO    ] 2026-10-28 20:33:18
[2026-10-28 20:33:19,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:33:19,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:33:19,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:33:19,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:33:19,626.626 INFO    ] time= 28/10/2026 20:33:19
[2026-10-28 20:33:19,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:33:19,651.651 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:33:19,771.771 INFO    ] No existing commands found in stream
[2026-10-28 20:33:24,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:33:24,805.805 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 20:33:28,662.662 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:33:28,665.665 INFO    ] Checking for system updates...
[2026-10-28 20:33:28,701.701 INFO    ] 200
[2026-10-28 20:33:28,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:33:28,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:33:28,760.760 INFO    ] No update needed
[2026-10-28 20:33:28,763.763 INFO    ] Checking for camera pi updates...
[2026-10-28 20:33:28,797.797 INFO    ] 200
[2026-10-28 20:33:28,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:33:28,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:33:28,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:33:28,914.914 INFO    ] No camera update needed
[2026-10-28 20:33:28,916.916 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:33:28,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:33:28,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:33:28,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:33:30,971.971 INFO    ] ================================================
[2026-10-28 20:33:30,986.986 INFO    ] Launching Daemon at Wed Oct 28 20:33:30 IST 2026
[2026-10-28 20:33:31,997.997 INFO    ] ================================================
[2026-10-28 20:33:31,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:33:31
[2026-10-28 20:33:32,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:33:32,662.662 INFO    ] Initializing speech engine...
[2026-10-28 20:33:32,675.675 INFO    ] 2026-10-28 20:33:32
[2026-10-28 20:33:32,981.981 INFO    ] 2026-10-28 20:33:32
[2026-10-28 20:33:33,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:33:33,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:33:33,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:33:33,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:33:33,665.665 INFO    ] time= 28/10/2026 20:33:33
[2026-10-28 20:33:33,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:33:33,771.771 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:33:33,928.928 INFO    ] No existing commands found in stream
[2026-10-28 20:33:38,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:33:38,949.949 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-10-28 20:33:42,628.628 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:33:42,631.631 INFO    ] Checking for system updates...
[2026-10-28 20:33:42,671.671 INFO    ] 200
[2026-10-28 20:33:42,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:33:42,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:33:42,736.736 INFO    ] No update needed
[2026-10-28 20:33:42,739.739 INFO    ] Checking for camera pi updates...
[2026-10-28 20:33:42,774.774 INFO    ] 200
[2026-10-28 20:33:42,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:33:42,818.818 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:33:42,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:33:42,901.901 INFO    ] No camera update needed
[2026-10-28 20:33:42,904.904 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:33:42,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:33:42,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:33:42,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:33:44,960.960 INFO    ] ================================================
[2026-10-28 20:33:44,974.974 INFO    ] Launching Daemon at Wed Oct 28 20:33:44 IST 2026
[2026-10-28 20:33:44,985.985 INFO    ] ================================================
[2026-10-28 20:33:45,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:33:45
[2026-10-28 20:33:46,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:33:46,404.404 INFO    ] Initializing speech engine...
[2026-10-28 20:33:46,417.417 INFO    ] 2026-10-28 20:33:46
[2026-10-28 20:33:46,680.680 INFO    ] 2026-10-28 20:33:46
[2026-10-28 20:33:46,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:33:46,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:33:46,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:33:47,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:33:47,249.249 INFO    ] time= 28/10/2026 20:33:47
[2026-10-28 20:33:47,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:33:47,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:33:47,446.446 INFO    ] No existing commands found in stream
[2026-10-28 20:33:52,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:33:52,474.474 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-28 20:33:55,725.725 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:33:55,728.728 INFO    ] Checking for system updates...
[2026-10-28 20:33:55,764.764 INFO    ] 200
[2026-10-28 20:33:55,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:33:55,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:33:55,837.837 INFO    ] No update needed
[2026-10-28 20:33:55,839.839 INFO    ] Checking for camera pi updates...
[2026-10-28 20:33:55,873.873 INFO    ] 200
[2026-10-28 20:33:55,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:33:55,917.917 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:33:55,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:33:56,002.002 INFO    ] No camera update needed
[2026-10-28 20:33:56,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:33:56,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:33:56,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:33:56,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:33:58,063.063 INFO    ] ================================================
[2026-10-28 20:33:58,078.078 INFO    ] Launching Daemon at Wed Oct 28 20:33:58 IST 2026
[2026-10-28 20:33:58,089.089 INFO    ] ================================================
[2026-10-28 20:33:58,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:33:58
[2026-10-28 20:33:59,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:33:59,695.695 INFO    ] Initializing speech engine...
[2026-10-28 20:33:59,701.701 INFO    ] 2026-10-28 20:33:59
[2026-10-28 20:33:59,960.960 INFO    ] 2026-10-28 20:33:59
[2026-10-28 20:34:00,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:34:00,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:34:00,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:34:00,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:34:00,513.513 INFO    ] time= 28/10/2026 20:34:00
[2026-10-28 20:34:00,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:34:00,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:34:00,721.721 INFO    ] No existing commands found in stream
[2026-10-28 20:34:05,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:34:05,755.755 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-28 20:34:10,241.241 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:34:10,244.244 INFO    ] Checking for system updates...
[2026-10-28 20:34:10,279.279 INFO    ] 200
[2026-10-28 20:34:10,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:34:10,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:34:10,336.336 INFO    ] No update needed
[2026-10-28 20:34:10,339.339 INFO    ] Checking for camera pi updates...
[2026-10-28 20:34:10,371.371 INFO    ] 200
[2026-10-28 20:34:10,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:34:10,414.414 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:34:10,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:34:10,498.498 INFO    ] No camera update needed
[2026-10-28 20:34:10,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:34:10,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:34:10,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:34:10,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:34:12,555.555 INFO    ] ================================================
[2026-10-28 20:34:12,571.571 INFO    ] Launching Daemon at Wed Oct 28 20:34:12 IST 2026
[2026-10-28 20:34:12,582.582 INFO    ] ================================================
[2026-10-28 20:34:13,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:34:13
[2026-10-28 20:34:13,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:34:14,033.033 INFO    ] Initializing speech engine...
[2026-10-28 20:34:14,039.039 INFO    ] 2026-10-28 20:34:14
[2026-10-28 20:34:14,341.341 INFO    ] 2026-10-28 20:34:14
[2026-10-28 20:34:14,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:34:14,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:34:14,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:34:14,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:34:14,979.979 INFO    ] time= 28/10/2026 20:34:14
[2026-10-28 20:34:14,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:34:15,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:34:15,136.136 INFO    ] No existing commands found in stream
[2026-10-28 20:34:20,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:34:20,164.164 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-28 20:34:22,745.745 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:34:22,747.747 INFO    ] Checking for system updates...
[2026-10-28 20:34:22,784.784 INFO    ] 200
[2026-10-28 20:34:22,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:34:22,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:34:22,848.848 INFO    ] No update needed
[2026-10-28 20:34:22,851.851 INFO    ] Checking for camera pi updates...
[2026-10-28 20:34:22,884.884 INFO    ] 200
[2026-10-28 20:34:22,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:34:22,928.928 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:34:23,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:34:23,033.033 INFO    ] No camera update needed
[2026-10-28 20:34:23,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:34:23,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:34:23,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:34:23,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:34:25,089.089 INFO    ] ================================================
[2026-10-28 20:34:25,105.105 INFO    ] Launching Daemon at Wed Oct 28 20:34:25 IST 2026
[2026-10-28 20:34:25,116.116 INFO    ] ================================================
[2026-10-28 20:34:25,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:34:25
[2026-10-28 20:34:26,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:34:26,565.565 INFO    ] Initializing speech engine...
[2026-10-28 20:34:26,576.576 INFO    ] 2026-10-28 20:34:26
[2026-10-28 20:34:26,837.837 INFO    ] 2026-10-28 20:34:26
[2026-10-28 20:34:26,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:34:27,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:34:27,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:34:27,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:34:27,382.382 INFO    ] time= 28/10/2026 20:34:27
[2026-10-28 20:34:27,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:34:27,431.431 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:34:27,617.617 INFO    ] No existing commands found in stream
[2026-10-28 20:34:32,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:34:32,645.645 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-28 20:34:33,500.500 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:34:33,503.503 INFO    ] Checking for system updates...
[2026-10-28 20:34:33,539.539 INFO    ] 200
[2026-10-28 20:34:33,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:34:33,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:34:33,597.597 INFO    ] No update needed
[2026-10-28 20:34:33,600.600 INFO    ] Checking for camera pi updates...
[2026-10-28 20:34:33,637.637 INFO    ] 200
[2026-10-28 20:34:33,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:34:33,681.681 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:34:33,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:34:33,780.780 INFO    ] No camera update needed
[2026-10-28 20:34:33,782.782 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:34:33,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:34:33,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:34:33,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:34:35,835.835 INFO    ] ================================================
[2026-10-28 20:34:35,850.850 INFO    ] Launching Daemon at Wed Oct 28 20:34:35 IST 2026
[2026-10-28 20:34:35,861.861 INFO    ] ================================================
[2026-10-28 20:34:36,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:34:36
[2026-10-28 20:34:37,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:34:37,303.303 INFO    ] Initializing speech engine...
[2026-10-28 20:34:37,312.312 INFO    ] 2026-10-28 20:34:37
[2026-10-28 20:34:37,558.558 INFO    ] 2026-10-28 20:34:37
[2026-10-28 20:34:37,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:34:37,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:34:37,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:34:38,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:34:38,124.124 INFO    ] time= 28/10/2026 20:34:38
[2026-10-28 20:34:38,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:34:38,159.159 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:34:38,313.313 INFO    ] No existing commands found in stream
[2026-10-28 20:34:43,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:34:43,346.346 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 20:34:45,099.099 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:34:45,101.101 INFO    ] Checking for system updates...
[2026-10-28 20:34:45,137.137 INFO    ] 200
[2026-10-28 20:34:45,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:34:45,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:34:45,199.199 INFO    ] No update needed
[2026-10-28 20:34:45,202.202 INFO    ] Checking for camera pi updates...
[2026-10-28 20:34:45,237.237 INFO    ] 200
[2026-10-28 20:34:45,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:34:45,281.281 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:34:45,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:34:45,370.370 INFO    ] No camera update needed
[2026-10-28 20:34:45,373.373 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:34:45,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:34:45,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:34:45,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:34:47,432.432 INFO    ] ================================================
[2026-10-28 20:34:47,448.448 INFO    ] Launching Daemon at Wed Oct 28 20:34:47 IST 2026
[2026-10-28 20:34:47,458.458 INFO    ] ================================================
[2026-10-28 20:34:48,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:34:48
[2026-10-28 20:34:48,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:34:48,876.876 INFO    ] Initializing speech engine...
[2026-10-28 20:34:48,884.884 INFO    ] 2026-10-28 20:34:48
[2026-10-28 20:34:49,160.160 INFO    ] 2026-10-28 20:34:49
[2026-10-28 20:34:49,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:34:49,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:34:49,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:34:49,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:34:49,690.690 INFO    ] time= 28/10/2026 20:34:49
[2026-10-28 20:34:49,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:34:49,778.778 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:34:49,875.875 INFO    ] No existing commands found in stream
[2026-10-28 20:34:54,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:34:54,895.895 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 20:34:58,364.364 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:34:58,367.367 INFO    ] Checking for system updates...
[2026-10-28 20:34:58,404.404 INFO    ] 200
[2026-10-28 20:34:58,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:34:58,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:34:58,463.463 INFO    ] No update needed
[2026-10-28 20:34:58,466.466 INFO    ] Checking for camera pi updates...
[2026-10-28 20:34:58,505.505 INFO    ] 200
[2026-10-28 20:34:58,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:34:58,549.549 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:34:58,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:34:58,716.716 INFO    ] No camera update needed
[2026-10-28 20:34:58,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:34:58,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:34:58,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:34:58,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:35:00,776.776 INFO    ] ================================================
[2026-10-28 20:35:00,790.790 INFO    ] Launching Daemon at Wed Oct 28 20:35:00 IST 2026
[2026-10-28 20:35:00,801.801 INFO    ] ================================================
[2026-10-28 20:35:01,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:35:01
[2026-10-28 20:35:01,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:35:02,801.801 INFO    ] Initializing speech engine...
[2026-10-28 20:35:02,860.860 INFO    ] 2026-10-28 20:35:02
[2026-10-28 20:35:03,211.211 INFO    ] 2026-10-28 20:35:03
[2026-10-28 20:35:03,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:35:03,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:35:03,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:35:03,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:35:03,851.851 INFO    ] time= 28/10/2026 20:35:03
[2026-10-28 20:35:03,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:35:03,932.932 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:35:04,079.079 INFO    ] No existing commands found in stream
[2026-10-28 20:35:09,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:35:09,091.091 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-28 20:35:11,785.785 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:35:11,787.787 INFO    ] Checking for system updates...
[2026-10-28 20:35:11,823.823 INFO    ] 200
[2026-10-28 20:35:11,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:35:11,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:35:11,881.881 INFO    ] No update needed
[2026-10-28 20:35:11,884.884 INFO    ] Checking for camera pi updates...
[2026-10-28 20:35:11,917.917 INFO    ] 200
[2026-10-28 20:35:11,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:35:11,960.960 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:35:12,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:35:12,047.047 INFO    ] No camera update needed
[2026-10-28 20:35:12,049.049 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:35:12,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:35:12,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:35:12,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:35:14,104.104 INFO    ] ================================================
[2026-10-28 20:35:14,119.119 INFO    ] Launching Daemon at Wed Oct 28 20:35:14 IST 2026
[2026-10-28 20:35:14,130.130 INFO    ] ================================================
[2026-10-28 20:35:14,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:35:14
[2026-10-28 20:35:15,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:35:15,550.550 INFO    ] Initializing speech engine...
[2026-10-28 20:35:15,559.559 INFO    ] 2026-10-28 20:35:15
[2026-10-28 20:35:15,823.823 INFO    ] 2026-10-28 20:35:15
[2026-10-28 20:35:15,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:35:16,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:35:16,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:35:16,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:35:16,461.461 INFO    ] time= 28/10/2026 20:35:16
[2026-10-28 20:35:16,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:35:16,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:35:16,620.620 INFO    ] No existing commands found in stream
[2026-10-28 20:35:21,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:35:21,648.648 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-28 20:35:24,562.562 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:35:24,565.565 INFO    ] Checking for system updates...
[2026-10-28 20:35:24,600.600 INFO    ] 200
[2026-10-28 20:35:24,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:35:24,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:35:24,658.658 INFO    ] No update needed
[2026-10-28 20:35:24,661.661 INFO    ] Checking for camera pi updates...
[2026-10-28 20:35:24,695.695 INFO    ] 200
[2026-10-28 20:35:24,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:35:24,742.742 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:35:24,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:35:24,825.825 INFO    ] No camera update needed
[2026-10-28 20:35:24,828.828 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:35:24,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:35:24,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:35:24,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:35:26,880.880 INFO    ] ================================================
[2026-10-28 20:35:26,896.896 INFO    ] Launching Daemon at Wed Oct 28 20:35:26 IST 2026
[2026-10-28 20:35:26,907.907 INFO    ] ================================================
[2026-10-28 20:35:27,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:35:27
[2026-10-28 20:35:28,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:35:28,321.321 INFO    ] Initializing speech engine...
[2026-10-28 20:35:28,343.343 INFO    ] 2026-10-28 20:35:28
[2026-10-28 20:35:28,595.595 INFO    ] 2026-10-28 20:35:28
[2026-10-28 20:35:28,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:35:28,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:35:28,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:35:29,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:35:29,150.150 INFO    ] time= 28/10/2026 20:35:29
[2026-10-28 20:35:29,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:35:29,185.185 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:35:29,304.304 INFO    ] No existing commands found in stream
[2026-10-28 20:35:34,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:35:34,335.335 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 20:35:36,737.737 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:35:36,739.739 INFO    ] Checking for system updates...
[2026-10-28 20:35:36,775.775 INFO    ] 200
[2026-10-28 20:35:36,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:35:36,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:35:36,834.834 INFO    ] No update needed
[2026-10-28 20:35:36,836.836 INFO    ] Checking for camera pi updates...
[2026-10-28 20:35:36,873.873 INFO    ] 200
[2026-10-28 20:35:36,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:35:36,916.916 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:35:37,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:35:37,002.002 INFO    ] No camera update needed
[2026-10-28 20:35:37,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:35:37,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:35:37,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:35:37,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:35:39,058.058 INFO    ] ================================================
[2026-10-28 20:35:39,075.075 INFO    ] Launching Daemon at Wed Oct 28 20:35:39 IST 2026
[2026-10-28 20:35:39,086.086 INFO    ] ================================================
[2026-10-28 20:35:39,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:35:39
[2026-10-28 20:35:40,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:35:40,509.509 INFO    ] Initializing speech engine...
[2026-10-28 20:35:40,518.518 INFO    ] 2026-10-28 20:35:40
[2026-10-28 20:35:40,765.765 INFO    ] 2026-10-28 20:35:40
[2026-10-28 20:35:40,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:35:41,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:35:41,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:35:41,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:35:41,321.321 INFO    ] time= 28/10/2026 20:35:41
[2026-10-28 20:35:41,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:35:41,356.356 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:35:41,498.498 INFO    ] No existing commands found in stream
[2026-10-28 20:35:46,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:35:46,531.531 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-28 20:35:48,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:35:48,727.727 INFO    ] Checking for system updates...
[2026-10-28 20:35:48,768.768 INFO    ] 200
[2026-10-28 20:35:48,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:35:48,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:35:48,831.831 INFO    ] No update needed
[2026-10-28 20:35:48,833.833 INFO    ] Checking for camera pi updates...
[2026-10-28 20:35:48,868.868 INFO    ] 200
[2026-10-28 20:35:48,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:35:48,913.913 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:35:49,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:35:49,008.008 INFO    ] No camera update needed
[2026-10-28 20:35:49,010.010 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:35:49,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:35:49,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:35:49,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:35:51,066.066 INFO    ] ================================================
[2026-10-28 20:35:51,082.082 INFO    ] Launching Daemon at Wed Oct 28 20:35:51 IST 2026
[2026-10-28 20:35:51,093.093 INFO    ] ================================================
[2026-10-28 20:35:51,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:35:51
[2026-10-28 20:35:52,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:35:52,563.563 INFO    ] Initializing speech engine...
[2026-10-28 20:35:52,572.572 INFO    ] 2026-10-28 20:35:52
[2026-10-28 20:35:52,822.822 INFO    ] 2026-10-28 20:35:52
[2026-10-28 20:35:52,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:35:53,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:35:53,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:35:53,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:35:53,388.388 INFO    ] time= 28/10/2026 20:35:53
[2026-10-28 20:35:53,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:35:53,427.427 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:35:53,552.552 INFO    ] No existing commands found in stream
[2026-10-28 20:35:58,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:35:58,585.585 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-28 20:35:59,848.848 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:35:59,851.851 INFO    ] Checking for system updates...
[2026-10-28 20:35:59,886.886 INFO    ] 200
[2026-10-28 20:35:59,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:35:59,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:35:59,944.944 INFO    ] No update needed
[2026-10-28 20:35:59,946.946 INFO    ] Checking for camera pi updates...
[2026-10-28 20:35:59,980.980 INFO    ] 200
[2026-10-28 20:35:59,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:36:00,024.024 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:36:00,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:36:00,111.111 INFO    ] No camera update needed
[2026-10-28 20:36:00,113.113 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:36:00,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:36:00,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:36:00,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:36:02,173.173 INFO    ] ================================================
[2026-10-28 20:36:02,199.199 INFO    ] Launching Daemon at Wed Oct 28 20:36:02 IST 2026
[2026-10-28 20:36:02,215.215 INFO    ] ================================================
[2026-10-28 20:36:02,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:36:02
[2026-10-28 20:36:03,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:36:03,757.757 INFO    ] Initializing speech engine...
[2026-10-28 20:36:03,772.772 INFO    ] 2026-10-28 20:36:03
[2026-10-28 20:36:04,039.039 INFO    ] 2026-10-28 20:36:04
[2026-10-28 20:36:04,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:36:04,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:36:04,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:36:04,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:36:04,593.593 INFO    ] time= 28/10/2026 20:36:04
[2026-10-28 20:36:04,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:36:04,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:36:04,745.745 INFO    ] No existing commands found in stream
[2026-10-28 20:36:09,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:36:09,763.763 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 20:36:14,363.363 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:36:14,366.366 INFO    ] Checking for system updates...
[2026-10-28 20:36:14,402.402 INFO    ] 200
[2026-10-28 20:36:14,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:36:14,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:36:14,460.460 INFO    ] No update needed
[2026-10-28 20:36:14,463.463 INFO    ] Checking for camera pi updates...
[2026-10-28 20:36:14,496.496 INFO    ] 200
[2026-10-28 20:36:14,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:36:14,539.539 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:36:14,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:36:14,614.614 INFO    ] No camera update needed
[2026-10-28 20:36:14,616.616 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:36:14,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:36:14,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:36:14,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:36:16,670.670 INFO    ] ================================================
[2026-10-28 20:36:16,685.685 INFO    ] Launching Daemon at Wed Oct 28 20:36:16 IST 2026
[2026-10-28 20:36:16,695.695 INFO    ] ================================================
[2026-10-28 20:36:17,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:36:17
[2026-10-28 20:36:17,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:36:18,154.154 INFO    ] Initializing speech engine...
[2026-10-28 20:36:18,165.165 INFO    ] 2026-10-28 20:36:18
[2026-10-28 20:36:18,413.413 INFO    ] 2026-10-28 20:36:18
[2026-10-28 20:36:18,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:36:18,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:36:18,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:36:18,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:36:18,969.969 INFO    ] time= 28/10/2026 20:36:18
[2026-10-28 20:36:18,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:36:18,999.999 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:36:19,123.123 INFO    ] No existing commands found in stream
[2026-10-28 20:36:24,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:36:24,149.149 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 20:36:27,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:36:27,940.940 INFO    ] Checking for system updates...
[2026-10-28 20:36:27,976.976 INFO    ] 200
[2026-10-28 20:36:27,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:36:28,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:36:28,032.032 INFO    ] No update needed
[2026-10-28 20:36:28,034.034 INFO    ] Checking for camera pi updates...
[2026-10-28 20:36:28,068.068 INFO    ] 200
[2026-10-28 20:36:28,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:36:28,115.115 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:36:28,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:36:28,205.205 INFO    ] No camera update needed
[2026-10-28 20:36:28,207.207 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:36:28,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:36:28,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:36:28,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:36:30,260.260 INFO    ] ================================================
[2026-10-28 20:36:30,275.275 INFO    ] Launching Daemon at Wed Oct 28 20:36:30 IST 2026
[2026-10-28 20:36:30,285.285 INFO    ] ================================================
[2026-10-28 20:36:30,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:36:30
[2026-10-28 20:36:31,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:36:31,745.745 INFO    ] Initializing speech engine...
[2026-10-28 20:36:31,759.759 INFO    ] 2026-10-28 20:36:31
[2026-10-28 20:36:32,029.029 INFO    ] 2026-10-28 20:36:32
[2026-10-28 20:36:32,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:36:32,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:36:32,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:36:32,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:36:32,634.634 INFO    ] time= 28/10/2026 20:36:32
[2026-10-28 20:36:32,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:36:32,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:36:32,801.801 INFO    ] No existing commands found in stream
[2026-10-28 20:36:37,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:36:37,836.836 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-28 20:36:40,125.125 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:36:40,128.128 INFO    ] Checking for system updates...
[2026-10-28 20:36:40,168.168 INFO    ] 200
[2026-10-28 20:36:40,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:36:40,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:36:40,238.238 INFO    ] No update needed
[2026-10-28 20:36:40,241.241 INFO    ] Checking for camera pi updates...
[2026-10-28 20:36:40,275.275 INFO    ] 200
[2026-10-28 20:36:40,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:36:40,327.327 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:36:40,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:36:40,410.410 INFO    ] No camera update needed
[2026-10-28 20:36:40,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:36:40,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:36:40,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:36:40,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:36:42,470.470 INFO    ] ================================================
[2026-10-28 20:36:42,486.486 INFO    ] Launching Daemon at Wed Oct 28 20:36:42 IST 2026
[2026-10-28 20:36:42,496.496 INFO    ] ================================================
[2026-10-28 20:36:43,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:36:43
[2026-10-28 20:36:43,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:36:43,922.922 INFO    ] Initializing speech engine...
[2026-10-28 20:36:43,929.929 INFO    ] 2026-10-28 20:36:43
[2026-10-28 20:36:44,187.187 INFO    ] 2026-10-28 20:36:44
[2026-10-28 20:36:44,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:36:44,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:36:44,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:36:44,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:36:44,781.781 INFO    ] time= 28/10/2026 20:36:44
[2026-10-28 20:36:44,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:36:44,879.879 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:36:44,981.981 INFO    ] No existing commands found in stream
[2026-10-28 20:36:50,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:36:50,008.008 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-10-28 20:36:52,445.445 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:36:52,447.447 INFO    ] Checking for system updates...
[2026-10-28 20:36:52,482.482 INFO    ] 200
[2026-10-28 20:36:52,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:36:52,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:36:52,541.541 INFO    ] No update needed
[2026-10-28 20:36:52,543.543 INFO    ] Checking for camera pi updates...
[2026-10-28 20:36:52,577.577 INFO    ] 200
[2026-10-28 20:36:52,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:36:52,621.621 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:36:52,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:36:52,705.705 INFO    ] No camera update needed
[2026-10-28 20:36:52,708.708 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:36:52,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:36:52,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:36:52,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:36:54,770.770 INFO    ] ================================================
[2026-10-28 20:36:54,785.785 INFO    ] Launching Daemon at Wed Oct 28 20:36:54 IST 2026
[2026-10-28 20:36:54,795.795 INFO    ] ================================================
[2026-10-28 20:36:55,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:36:55
[2026-10-28 20:36:55,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:36:56,243.243 INFO    ] Initializing speech engine...
[2026-10-28 20:36:56,253.253 INFO    ] 2026-10-28 20:36:56
[2026-10-28 20:36:56,500.500 INFO    ] 2026-10-28 20:36:56
[2026-10-28 20:36:56,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:36:56,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:36:56,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:36:57,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:36:57,056.056 INFO    ] time= 28/10/2026 20:36:57
[2026-10-28 20:36:57,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:36:57,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:36:57,234.234 INFO    ] No existing commands found in stream
[2026-10-28 20:37:02,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:37:02,269.269 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 20:37:06,817.817 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:37:06,821.821 INFO    ] Checking for system updates...
[2026-10-28 20:37:06,861.861 INFO    ] 200
[2026-10-28 20:37:06,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:37:06,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:37:06,922.922 INFO    ] No update needed
[2026-10-28 20:37:06,925.925 INFO    ] Checking for camera pi updates...
[2026-10-28 20:37:06,962.962 INFO    ] 200
[2026-10-28 20:37:06,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:37:07,007.007 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:37:07,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:37:07,085.085 INFO    ] No camera update needed
[2026-10-28 20:37:07,087.087 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:37:07,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:37:07,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:37:07,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:37:09,143.143 INFO    ] ================================================
[2026-10-28 20:37:09,158.158 INFO    ] Launching Daemon at Wed Oct 28 20:37:09 IST 2026
[2026-10-28 20:37:09,168.168 INFO    ] ================================================
[2026-10-28 20:37:09,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:37:09
[2026-10-28 20:37:10,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:37:10,586.586 INFO    ] Initializing speech engine...
[2026-10-28 20:37:10,596.596 INFO    ] 2026-10-28 20:37:10
[2026-10-28 20:37:10,841.841 INFO    ] 2026-10-28 20:37:10
[2026-10-28 20:37:10,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:37:11,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:37:11,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:37:11,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:37:11,397.397 INFO    ] time= 28/10/2026 20:37:11
[2026-10-28 20:37:11,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:37:11,437.437 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:37:11,556.556 INFO    ] No existing commands found in stream
[2026-10-28 20:37:16,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:37:16,578.578 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 20:37:17,736.736 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:37:17,739.739 INFO    ] Checking for system updates...
[2026-10-28 20:37:17,774.774 INFO    ] 200
[2026-10-28 20:37:17,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:37:17,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:37:17,831.831 INFO    ] No update needed
[2026-10-28 20:37:17,833.833 INFO    ] Checking for camera pi updates...
[2026-10-28 20:37:17,867.867 INFO    ] 200
[2026-10-28 20:37:17,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:37:17,910.910 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:37:18,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:37:18,007.007 INFO    ] No camera update needed
[2026-10-28 20:37:18,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:37:18,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:37:18,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:37:18,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:37:20,062.062 INFO    ] ================================================
[2026-10-28 20:37:20,077.077 INFO    ] Launching Daemon at Wed Oct 28 20:37:20 IST 2026
[2026-10-28 20:37:20,087.087 INFO    ] ================================================
[2026-10-28 20:37:20,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:37:20
[2026-10-28 20:37:21,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:37:21,513.513 INFO    ] Initializing speech engine...
[2026-10-28 20:37:21,519.519 INFO    ] 2026-10-28 20:37:21
[2026-10-28 20:37:21,778.778 INFO    ] 2026-10-28 20:37:21
[2026-10-28 20:37:21,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:37:22,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:37:22,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:37:22,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:37:22,342.342 INFO    ] time= 28/10/2026 20:37:22
[2026-10-28 20:37:22,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:37:22,375.375 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:37:22,479.479 INFO    ] No existing commands found in stream
[2026-10-28 20:37:27,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:37:27,511.511 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-10-28 20:37:31,268.268 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:37:31,271.271 INFO    ] Checking for system updates...
[2026-10-28 20:37:31,307.307 INFO    ] 200
[2026-10-28 20:37:31,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:37:31,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:37:31,365.365 INFO    ] No update needed
[2026-10-28 20:37:31,367.367 INFO    ] Checking for camera pi updates...
[2026-10-28 20:37:31,401.401 INFO    ] 200
[2026-10-28 20:37:31,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:37:31,444.444 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:37:31,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:37:31,528.528 INFO    ] No camera update needed
[2026-10-28 20:37:31,531.531 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:37:31,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:37:31,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:37:31,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:37:33,588.588 INFO    ] ================================================
[2026-10-28 20:37:33,605.605 INFO    ] Launching Daemon at Wed Oct 28 20:37:33 IST 2026
[2026-10-28 20:37:33,616.616 INFO    ] ================================================
[2026-10-28 20:37:34,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:37:34
[2026-10-28 20:37:34,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:37:35,068.068 INFO    ] Initializing speech engine...
[2026-10-28 20:37:35,078.078 INFO    ] 2026-10-28 20:37:35
[2026-10-28 20:37:35,339.339 INFO    ] 2026-10-28 20:37:35
[2026-10-28 20:37:35,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:37:35,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:37:35,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:37:35,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:37:35,883.883 INFO    ] time= 28/10/2026 20:37:35
[2026-10-28 20:37:35,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:37:35,929.929 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:37:36,034.034 INFO    ] No existing commands found in stream
[2026-10-28 20:37:41,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:37:41,048.048 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-28 20:37:44,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:37:44,426.426 INFO    ] Checking for system updates...
[2026-10-28 20:37:44,463.463 INFO    ] 200
[2026-10-28 20:37:44,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:37:44,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:37:44,520.520 INFO    ] No update needed
[2026-10-28 20:37:44,523.523 INFO    ] Checking for camera pi updates...
[2026-10-28 20:37:44,557.557 INFO    ] 200
[2026-10-28 20:37:44,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:37:44,601.601 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:37:44,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:37:44,686.686 INFO    ] No camera update needed
[2026-10-28 20:37:44,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:37:44,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:37:44,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:37:44,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:37:46,743.743 INFO    ] ================================================
[2026-10-28 20:37:46,759.759 INFO    ] Launching Daemon at Wed Oct 28 20:37:46 IST 2026
[2026-10-28 20:37:46,770.770 INFO    ] ================================================
[2026-10-28 20:37:47,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:37:47
[2026-10-28 20:37:47,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:37:48,210.210 INFO    ] Initializing speech engine...
[2026-10-28 20:37:48,219.219 INFO    ] 2026-10-28 20:37:48
[2026-10-28 20:37:48,468.468 INFO    ] 2026-10-28 20:37:48
[2026-10-28 20:37:48,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:37:48,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:37:48,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:37:48,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:37:49,038.038 INFO    ] time= 28/10/2026 20:37:48
[2026-10-28 20:37:49,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:37:49,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:37:49,211.211 INFO    ] No existing commands found in stream
[2026-10-28 20:37:54,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:37:54,241.241 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-28 20:37:55,575.575 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:37:55,578.578 INFO    ] Checking for system updates...
[2026-10-28 20:37:55,617.617 INFO    ] 200
[2026-10-28 20:37:55,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:37:55,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:37:55,675.675 INFO    ] No update needed
[2026-10-28 20:37:55,678.678 INFO    ] Checking for camera pi updates...
[2026-10-28 20:37:55,716.716 INFO    ] 200
[2026-10-28 20:37:55,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:37:55,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:37:55,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:37:55,848.848 INFO    ] No camera update needed
[2026-10-28 20:37:55,850.850 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:37:55,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:37:55,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:37:55,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:37:57,904.904 INFO    ] ================================================
[2026-10-28 20:37:57,920.920 INFO    ] Launching Daemon at Wed Oct 28 20:37:57 IST 2026
[2026-10-28 20:37:57,931.931 INFO    ] ================================================
[2026-10-28 20:37:58,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:37:58
[2026-10-28 20:37:59,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:37:59,375.375 INFO    ] Initializing speech engine...
[2026-10-28 20:37:59,388.388 INFO    ] 2026-10-28 20:37:59
[2026-10-28 20:37:59,644.644 INFO    ] 2026-10-28 20:37:59
[2026-10-28 20:37:59,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:37:59,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:38:00,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:38:00,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:38:00,354.354 INFO    ] time= 28/10/2026 20:38:00
[2026-10-28 20:38:00,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:38:00,440.440 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:38:00,575.575 INFO    ] No existing commands found in stream
[2026-10-28 20:38:05,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:38:05,598.598 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-28 20:38:08,200.200 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:38:08,203.203 INFO    ] Checking for system updates...
[2026-10-28 20:38:08,238.238 INFO    ] 200
[2026-10-28 20:38:08,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:38:08,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:38:08,296.296 INFO    ] No update needed
[2026-10-28 20:38:08,298.298 INFO    ] Checking for camera pi updates...
[2026-10-28 20:38:08,331.331 INFO    ] 200
[2026-10-28 20:38:08,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:38:08,378.378 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:38:08,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:38:08,461.461 INFO    ] No camera update needed
[2026-10-28 20:38:08,463.463 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:38:08,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:38:08,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:38:08,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:38:10,516.516 INFO    ] ================================================
[2026-10-28 20:38:10,531.531 INFO    ] Launching Daemon at Wed Oct 28 20:38:10 IST 2026
[2026-10-28 20:38:10,542.542 INFO    ] ================================================
[2026-10-28 20:38:11,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:38:11
[2026-10-28 20:38:11,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:38:11,960.960 INFO    ] Initializing speech engine...
[2026-10-28 20:38:11,969.969 INFO    ] 2026-10-28 20:38:11
[2026-10-28 20:38:12,262.262 INFO    ] 2026-10-28 20:38:12
[2026-10-28 20:38:12,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:38:12,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:38:12,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:38:12,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:38:12,890.890 INFO    ] time= 28/10/2026 20:38:12
[2026-10-28 20:38:12,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:38:12,914.914 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:38:13,051.051 INFO    ] No existing commands found in stream
[2026-10-28 20:38:18,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:38:18,075.075 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-28 20:38:19,368.368 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:38:19,370.370 INFO    ] Checking for system updates...
[2026-10-28 20:38:19,406.406 INFO    ] 200
[2026-10-28 20:38:19,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:38:19,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:38:19,467.467 INFO    ] No update needed
[2026-10-28 20:38:19,469.469 INFO    ] Checking for camera pi updates...
[2026-10-28 20:38:19,506.506 INFO    ] 200
[2026-10-28 20:38:19,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:38:19,548.548 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:38:19,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:38:19,633.633 INFO    ] No camera update needed
[2026-10-28 20:38:19,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:38:19,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:38:19,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:38:19,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:38:21,690.690 INFO    ] ================================================
[2026-10-28 20:38:21,706.706 INFO    ] Launching Daemon at Wed Oct 28 20:38:21 IST 2026
[2026-10-28 20:38:21,716.716 INFO    ] ================================================
[2026-10-28 20:38:22,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:38:22
[2026-10-28 20:38:22,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:38:23,179.179 INFO    ] Initializing speech engine...
[2026-10-28 20:38:23,202.202 INFO    ] 2026-10-28 20:38:23
[2026-10-28 20:38:23,461.461 INFO    ] 2026-10-28 20:38:23
[2026-10-28 20:38:23,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:38:23,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:38:23,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:38:24,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:38:24,048.048 INFO    ] time= 28/10/2026 20:38:24
[2026-10-28 20:38:24,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:38:24,084.084 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:38:24,237.237 INFO    ] No existing commands found in stream
[2026-10-28 20:38:29,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:38:29,266.266 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-28 20:38:31,708.708 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:38:31,711.711 INFO    ] Checking for system updates...
[2026-10-28 20:38:31,755.755 INFO    ] 200
[2026-10-28 20:38:31,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:38:31,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:38:31,835.835 INFO    ] No update needed
[2026-10-28 20:38:31,838.838 INFO    ] Checking for camera pi updates...
[2026-10-28 20:38:31,877.877 INFO    ] 200
[2026-10-28 20:38:31,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:38:31,931.931 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:38:32,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:38:32,060.060 INFO    ] No camera update needed
[2026-10-28 20:38:32,066.066 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:38:32,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:38:32,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:38:32,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:38:34,123.123 INFO    ] ================================================
[2026-10-28 20:38:34,139.139 INFO    ] Launching Daemon at Wed Oct 28 20:38:34 IST 2026
[2026-10-28 20:38:34,150.150 INFO    ] ================================================
[2026-10-28 20:38:34,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:38:34
[2026-10-28 20:38:35,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:38:35,635.635 INFO    ] Initializing speech engine...
[2026-10-28 20:38:35,643.643 INFO    ] 2026-10-28 20:38:35
[2026-10-28 20:38:35,905.905 INFO    ] 2026-10-28 20:38:35
[2026-10-28 20:38:35,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:38:36,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:38:36,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:38:36,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:38:36,597.597 INFO    ] time= 28/10/2026 20:38:36
[2026-10-28 20:38:36,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:38:36,693.693 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:38:36,867.867 INFO    ] No existing commands found in stream
[2026-10-28 20:38:41,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:38:41,900.900 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-28 20:38:45,810.810 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:38:45,812.812 INFO    ] Checking for system updates...
[2026-10-28 20:38:45,849.849 INFO    ] 200
[2026-10-28 20:38:45,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:38:45,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:38:45,908.908 INFO    ] No update needed
[2026-10-28 20:38:45,911.911 INFO    ] Checking for camera pi updates...
[2026-10-28 20:38:45,949.949 INFO    ] 200
[2026-10-28 20:38:45,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:38:45,998.998 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:38:46,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:38:46,100.100 INFO    ] No camera update needed
[2026-10-28 20:38:46,103.103 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:38:46,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:38:46,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:38:46,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:38:48,160.160 INFO    ] ================================================
[2026-10-28 20:38:48,175.175 INFO    ] Launching Daemon at Wed Oct 28 20:38:48 IST 2026
[2026-10-28 20:38:48,186.186 INFO    ] ================================================
[2026-10-28 20:38:48,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:38:48
[2026-10-28 20:38:49,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:38:49,590.590 INFO    ] Initializing speech engine...
[2026-10-28 20:38:49,603.603 INFO    ] 2026-10-28 20:38:49
[2026-10-28 20:38:49,870.870 INFO    ] 2026-10-28 20:38:49
[2026-10-28 20:38:49,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:38:50,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:38:50,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:38:50,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:38:50,441.441 INFO    ] time= 28/10/2026 20:38:50
[2026-10-28 20:38:50,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:38:50,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:38:50,598.598 INFO    ] No existing commands found in stream
[2026-10-28 20:38:55,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:38:55,625.625 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-28 20:38:56,861.861 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:38:56,864.864 INFO    ] Checking for system updates...
[2026-10-28 20:38:56,900.900 INFO    ] 200
[2026-10-28 20:38:56,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:38:56,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:38:56,963.963 INFO    ] No update needed
[2026-10-28 20:38:56,966.966 INFO    ] Checking for camera pi updates...
[2026-10-28 20:38:57,000.000 INFO    ] 200
[2026-10-28 20:38:57,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:38:57,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:38:57,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:38:57,136.136 INFO    ] No camera update needed
[2026-10-28 20:38:57,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:38:57,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:38:57,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:38:57,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:38:59,192.192 INFO    ] ================================================
[2026-10-28 20:38:59,208.208 INFO    ] Launching Daemon at Wed Oct 28 20:38:59 IST 2026
[2026-10-28 20:38:59,219.219 INFO    ] ================================================
[2026-10-28 20:38:59,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:38:59
[2026-10-28 20:39:00,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:39:00,634.634 INFO    ] Initializing speech engine...
[2026-10-28 20:39:00,643.643 INFO    ] 2026-10-28 20:39:00
[2026-10-28 20:39:00,896.896 INFO    ] 2026-10-28 20:39:00
[2026-10-28 20:39:00,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:39:01,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:39:01,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:39:01,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:39:01,464.464 INFO    ] time= 28/10/2026 20:39:01
[2026-10-28 20:39:01,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:39:01,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:39:01,649.649 INFO    ] No existing commands found in stream
[2026-10-28 20:39:06,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:39:06,688.688 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-28 20:39:11,006.006 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:39:11,009.009 INFO    ] Checking for system updates...
[2026-10-28 20:39:11,045.045 INFO    ] 200
[2026-10-28 20:39:11,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:39:11,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:39:11,101.101 INFO    ] No update needed
[2026-10-28 20:39:11,104.104 INFO    ] Checking for camera pi updates...
[2026-10-28 20:39:11,140.140 INFO    ] 200
[2026-10-28 20:39:11,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:39:11,183.183 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:39:11,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:39:11,378.378 INFO    ] No camera update needed
[2026-10-28 20:39:11,381.381 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:39:11,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:39:11,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:39:11,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:39:13,434.434 INFO    ] ================================================
[2026-10-28 20:39:13,450.450 INFO    ] Launching Daemon at Wed Oct 28 20:39:13 IST 2026
[2026-10-28 20:39:13,460.460 INFO    ] ================================================
[2026-10-28 20:39:14,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:39:14
[2026-10-28 20:39:14,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:39:14,879.879 INFO    ] Initializing speech engine...
[2026-10-28 20:39:14,892.892 INFO    ] 2026-10-28 20:39:14
[2026-10-28 20:39:15,144.144 INFO    ] 2026-10-28 20:39:15
[2026-10-28 20:39:15,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:39:15,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:39:15,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:39:15,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:39:15,712.712 INFO    ] time= 28/10/2026 20:39:15
[2026-10-28 20:39:15,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:39:15,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:39:15,893.893 INFO    ] No existing commands found in stream
[2026-10-28 20:39:20,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:39:20,921.921 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 20:39:24,283.283 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:39:24,286.286 INFO    ] Checking for system updates...
[2026-10-28 20:39:24,322.322 INFO    ] 200
[2026-10-28 20:39:24,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:39:24,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:39:24,387.387 INFO    ] No update needed
[2026-10-28 20:39:24,390.390 INFO    ] Checking for camera pi updates...
[2026-10-28 20:39:24,427.427 INFO    ] 200
[2026-10-28 20:39:24,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:39:24,472.472 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:39:24,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:39:24,561.561 INFO    ] No camera update needed
[2026-10-28 20:39:24,564.564 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:39:24,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:39:24,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:39:24,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:39:26,619.619 INFO    ] ================================================
[2026-10-28 20:39:26,635.635 INFO    ] Launching Daemon at Wed Oct 28 20:39:26 IST 2026
[2026-10-28 20:39:26,646.646 INFO    ] ================================================
[2026-10-28 20:39:27,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:39:27
[2026-10-28 20:39:27,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:39:28,187.187 INFO    ] Initializing speech engine...
[2026-10-28 20:39:28,196.196 INFO    ] 2026-10-28 20:39:28
[2026-10-28 20:39:28,469.469 INFO    ] 2026-10-28 20:39:28
[2026-10-28 20:39:28,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:39:28,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:39:28,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:39:29,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:39:29,049.049 INFO    ] time= 28/10/2026 20:39:29
[2026-10-28 20:39:29,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:39:29,086.086 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:39:29,215.215 INFO    ] No existing commands found in stream
[2026-10-28 20:39:34,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:39:34,249.249 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-28 20:39:36,488.488 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:39:36,491.491 INFO    ] Checking for system updates...
[2026-10-28 20:39:36,531.531 INFO    ] 200
[2026-10-28 20:39:36,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:39:36,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:39:36,590.590 INFO    ] No update needed
[2026-10-28 20:39:36,593.593 INFO    ] Checking for camera pi updates...
[2026-10-28 20:39:36,630.630 INFO    ] 200
[2026-10-28 20:39:36,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:39:36,675.675 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:39:36,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:39:36,746.746 INFO    ] No camera update needed
[2026-10-28 20:39:36,749.749 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:39:36,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:39:36,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:39:36,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:39:38,806.806 INFO    ] ================================================
[2026-10-28 20:39:38,822.822 INFO    ] Launching Daemon at Wed Oct 28 20:39:38 IST 2026
[2026-10-28 20:39:38,833.833 INFO    ] ================================================
[2026-10-28 20:39:39,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:39:39
[2026-10-28 20:39:40,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:39:40,415.415 INFO    ] Initializing speech engine...
[2026-10-28 20:39:40,422.422 INFO    ] 2026-10-28 20:39:40
[2026-10-28 20:39:40,710.710 INFO    ] 2026-10-28 20:39:40
[2026-10-28 20:39:40,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:39:41,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:39:41,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:39:41,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:39:41,407.407 INFO    ] time= 28/10/2026 20:39:41
[2026-10-28 20:39:41,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:39:41,516.516 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:39:41,668.668 INFO    ] No existing commands found in stream
[2026-10-28 20:39:46,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:39:46,686.686 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-28 20:39:50,601.601 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:39:50,604.604 INFO    ] Checking for system updates...
[2026-10-28 20:39:50,640.640 INFO    ] 200
[2026-10-28 20:39:50,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:39:50,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:39:50,699.699 INFO    ] No update needed
[2026-10-28 20:39:50,701.701 INFO    ] Checking for camera pi updates...
[2026-10-28 20:39:50,740.740 INFO    ] 200
[2026-10-28 20:39:50,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:39:50,809.809 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:39:50,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:39:50,907.907 INFO    ] No camera update needed
[2026-10-28 20:39:50,909.909 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:39:50,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:39:50,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:39:50,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:39:52,963.963 INFO    ] ================================================
[2026-10-28 20:39:52,978.978 INFO    ] Launching Daemon at Wed Oct 28 20:39:52 IST 2026
[2026-10-28 20:39:52,989.989 INFO    ] ================================================
[2026-10-28 20:39:53,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:39:53
[2026-10-28 20:39:54,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:39:54,410.410 INFO    ] Initializing speech engine...
[2026-10-28 20:39:54,418.418 INFO    ] 2026-10-28 20:39:54
[2026-10-28 20:39:54,669.669 INFO    ] 2026-10-28 20:39:54
[2026-10-28 20:39:54,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:39:54,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:39:54,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:39:55,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:39:55,237.237 INFO    ] time= 28/10/2026 20:39:55
[2026-10-28 20:39:55,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:39:55,267.267 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:39:55,394.394 INFO    ] No existing commands found in stream
[2026-10-28 20:40:00,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:40:00,421.421 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-28 20:40:02,327.327 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:40:02,331.331 INFO    ] Checking for system updates...
[2026-10-28 20:40:02,379.379 INFO    ] 200
[2026-10-28 20:40:02,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:40:02,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:40:02,457.457 INFO    ] No update needed
[2026-10-28 20:40:02,460.460 INFO    ] Checking for camera pi updates...
[2026-10-28 20:40:02,520.520 INFO    ] 200
[2026-10-28 20:40:02,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:40:02,575.575 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:40:02,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:40:02,790.790 INFO    ] No camera update needed
[2026-10-28 20:40:02,794.794 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:40:02,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:40:02,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:40:02,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:40:04,860.860 INFO    ] ================================================
[2026-10-28 20:40:04,875.875 INFO    ] Launching Daemon at Wed Oct 28 20:40:04 IST 2026
[2026-10-28 20:40:04,886.886 INFO    ] ================================================
[2026-10-28 20:40:05,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:40:05
[2026-10-28 20:40:06,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:40:06,458.458 INFO    ] Initializing speech engine...
[2026-10-28 20:40:06,468.468 INFO    ] 2026-10-28 20:40:06
[2026-10-28 20:40:06,716.716 INFO    ] 2026-10-28 20:40:06
[2026-10-28 20:40:06,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:40:07,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:40:07,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:40:07,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:40:07,286.286 INFO    ] time= 28/10/2026 20:40:07
[2026-10-28 20:40:07,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:40:07,320.320 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:40:07,496.496 INFO    ] No existing commands found in stream
[2026-10-28 20:40:12,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:40:12,521.521 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-10-28 20:40:17,082.082 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:40:17,085.085 INFO    ] Checking for system updates...
[2026-10-28 20:40:17,120.120 INFO    ] 200
[2026-10-28 20:40:17,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:40:17,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:40:17,179.179 INFO    ] No update needed
[2026-10-28 20:40:17,182.182 INFO    ] Checking for camera pi updates...
[2026-10-28 20:40:17,215.215 INFO    ] 200
[2026-10-28 20:40:17,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:40:17,258.258 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:40:17,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:40:17,344.344 INFO    ] No camera update needed
[2026-10-28 20:40:17,347.347 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:40:17,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:40:17,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:40:17,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:40:19,401.401 INFO    ] ================================================
[2026-10-28 20:40:19,416.416 INFO    ] Launching Daemon at Wed Oct 28 20:40:19 IST 2026
[2026-10-28 20:40:19,427.427 INFO    ] ================================================
[2026-10-28 20:40:19,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:40:19
[2026-10-28 20:40:20,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:40:20,834.834 INFO    ] Initializing speech engine...
[2026-10-28 20:40:20,854.854 INFO    ] 2026-10-28 20:40:20
[2026-10-28 20:40:21,102.102 INFO    ] 2026-10-28 20:40:21
[2026-10-28 20:40:21,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:40:21,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:40:21,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:40:21,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:40:21,673.673 INFO    ] time= 28/10/2026 20:40:21
[2026-10-28 20:40:21,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:40:21,720.720 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:40:21,843.843 INFO    ] No existing commands found in stream
[2026-10-28 20:40:26,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:40:26,876.876 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 20:40:27,505.505 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:40:27,507.507 INFO    ] Checking for system updates...
[2026-10-28 20:40:27,542.542 INFO    ] 200
[2026-10-28 20:40:27,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:40:27,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:40:27,616.616 INFO    ] No update needed
[2026-10-28 20:40:27,618.618 INFO    ] Checking for camera pi updates...
[2026-10-28 20:40:27,655.655 INFO    ] 200
[2026-10-28 20:40:27,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:40:27,698.698 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:40:27,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:40:27,803.803 INFO    ] No camera update needed
[2026-10-28 20:40:27,805.805 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:40:27,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:40:27,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:40:27,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:40:29,858.858 INFO    ] ================================================
[2026-10-28 20:40:29,874.874 INFO    ] Launching Daemon at Wed Oct 28 20:40:29 IST 2026
[2026-10-28 20:40:29,884.884 INFO    ] ================================================
[2026-10-28 20:40:30,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:40:30
[2026-10-28 20:40:31,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:40:31,319.319 INFO    ] Initializing speech engine...
[2026-10-28 20:40:31,324.324 INFO    ] 2026-10-28 20:40:31
[2026-10-28 20:40:31,607.607 INFO    ] 2026-10-28 20:40:31
[2026-10-28 20:40:31,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:40:31,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:40:31,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:40:32,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:40:32,193.193 INFO    ] time= 28/10/2026 20:40:32
[2026-10-28 20:40:32,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:40:32,219.219 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:40:32,381.381 INFO    ] No existing commands found in stream
[2026-10-28 20:40:37,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:40:37,414.414 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-10-28 20:40:38,340.340 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:40:38,342.342 INFO    ] Checking for system updates...
[2026-10-28 20:40:38,378.378 INFO    ] 200
[2026-10-28 20:40:38,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:40:38,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:40:38,439.439 INFO    ] No update needed
[2026-10-28 20:40:38,442.442 INFO    ] Checking for camera pi updates...
[2026-10-28 20:40:38,475.475 INFO    ] 200
[2026-10-28 20:40:38,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:40:38,518.518 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:40:38,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:40:38,601.601 INFO    ] No camera update needed
[2026-10-28 20:40:38,604.604 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:40:38,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:40:38,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:40:38,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:40:40,657.657 INFO    ] ================================================
[2026-10-28 20:40:40,673.673 INFO    ] Launching Daemon at Wed Oct 28 20:40:40 IST 2026
[2026-10-28 20:40:40,684.684 INFO    ] ================================================
[2026-10-28 20:40:41,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:40:41
[2026-10-28 20:40:41,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:40:42,145.145 INFO    ] Initializing speech engine...
[2026-10-28 20:40:42,151.151 INFO    ] 2026-10-28 20:40:42
[2026-10-28 20:40:42,411.411 INFO    ] 2026-10-28 20:40:42
[2026-10-28 20:40:42,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:40:42,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:40:42,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:40:42,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:40:42,960.960 INFO    ] time= 28/10/2026 20:40:42
[2026-10-28 20:40:42,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:40:43,007.007 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:40:43,128.128 INFO    ] No existing commands found in stream
[2026-10-28 20:40:48,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:40:48,161.161 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-28 20:40:51,521.521 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:40:51,524.524 INFO    ] Checking for system updates...
[2026-10-28 20:40:51,564.564 INFO    ] 200
[2026-10-28 20:40:51,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:40:51,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:40:51,623.623 INFO    ] No update needed
[2026-10-28 20:40:51,626.626 INFO    ] Checking for camera pi updates...
[2026-10-28 20:40:51,660.660 INFO    ] 200
[2026-10-28 20:40:51,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:40:51,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:40:51,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:40:51,795.795 INFO    ] No camera update needed
[2026-10-28 20:40:51,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:40:51,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:40:51,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:40:51,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:40:53,855.855 INFO    ] ================================================
[2026-10-28 20:40:53,870.870 INFO    ] Launching Daemon at Wed Oct 28 20:40:53 IST 2026
[2026-10-28 20:40:53,881.881 INFO    ] ================================================
[2026-10-28 20:40:54,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:40:54
[2026-10-28 20:40:55,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:40:55,341.341 INFO    ] Initializing speech engine...
[2026-10-28 20:40:55,351.351 INFO    ] 2026-10-28 20:40:55
[2026-10-28 20:40:55,602.602 INFO    ] 2026-10-28 20:40:55
[2026-10-28 20:40:55,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:40:55,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:40:55,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:40:56,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:40:56,167.167 INFO    ] time= 28/10/2026 20:40:56
[2026-10-28 20:40:56,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:40:56,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:40:56,369.369 INFO    ] No existing commands found in stream
[2026-10-28 20:41:01,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:41:01,403.403 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 20:41:05,307.307 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:41:05,310.310 INFO    ] Checking for system updates...
[2026-10-28 20:41:05,349.349 INFO    ] 200
[2026-10-28 20:41:05,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:41:05,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:41:05,411.411 INFO    ] No update needed
[2026-10-28 20:41:05,414.414 INFO    ] Checking for camera pi updates...
[2026-10-28 20:41:05,447.447 INFO    ] 200
[2026-10-28 20:41:05,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:41:05,489.489 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:41:05,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:41:05,575.575 INFO    ] No camera update needed
[2026-10-28 20:41:05,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:41:05,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:41:05,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:41:05,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:41:07,631.631 INFO    ] ================================================
[2026-10-28 20:41:07,647.647 INFO    ] Launching Daemon at Wed Oct 28 20:41:07 IST 2026
[2026-10-28 20:41:07,658.658 INFO    ] ================================================
[2026-10-28 20:41:08,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:41:08
[2026-10-28 20:41:08,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:41:09,080.080 INFO    ] Initializing speech engine...
[2026-10-28 20:41:09,086.086 INFO    ] 2026-10-28 20:41:09
[2026-10-28 20:41:09,330.330 INFO    ] 2026-10-28 20:41:09
[2026-10-28 20:41:09,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:41:09,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:41:09,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:41:09,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:41:09,885.885 INFO    ] time= 28/10/2026 20:41:09
[2026-10-28 20:41:09,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:41:09,909.909 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:41:10,036.036 INFO    ] No existing commands found in stream
[2026-10-28 20:41:15,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:41:15,052.052 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-28 20:41:17,840.840 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:41:17,843.843 INFO    ] Checking for system updates...
[2026-10-28 20:41:17,887.887 INFO    ] 200
[2026-10-28 20:41:17,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:41:17,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:41:17,944.944 INFO    ] No update needed
[2026-10-28 20:41:17,946.946 INFO    ] Checking for camera pi updates...
[2026-10-28 20:41:17,980.980 INFO    ] 200
[2026-10-28 20:41:17,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:41:18,022.022 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:41:18,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:41:18,207.207 INFO    ] No camera update needed
[2026-10-28 20:41:18,210.210 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:41:18,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:41:18,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:41:18,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:41:20,264.264 INFO    ] ================================================
[2026-10-28 20:41:20,280.280 INFO    ] Launching Daemon at Wed Oct 28 20:41:20 IST 2026
[2026-10-28 20:41:20,291.291 INFO    ] ================================================
[2026-10-28 20:41:20,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:41:20
[2026-10-28 20:41:21,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:41:21,748.748 INFO    ] Initializing speech engine...
[2026-10-28 20:41:21,755.755 INFO    ] 2026-10-28 20:41:21
[2026-10-28 20:41:22,015.015 INFO    ] 2026-10-28 20:41:22
[2026-10-28 20:41:22,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:41:22,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:41:22,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:41:22,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:41:22,557.557 INFO    ] time= 28/10/2026 20:41:22
[2026-10-28 20:41:22,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:41:22,582.582 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:41:22,725.725 INFO    ] No existing commands found in stream
[2026-10-28 20:41:27,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:41:27,758.758 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-28 20:41:29,842.842 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:41:29,845.845 INFO    ] Checking for system updates...
[2026-10-28 20:41:29,880.880 INFO    ] 200
[2026-10-28 20:41:29,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:41:29,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:41:29,938.938 INFO    ] No update needed
[2026-10-28 20:41:29,940.940 INFO    ] Checking for camera pi updates...
[2026-10-28 20:41:29,974.974 INFO    ] 200
[2026-10-28 20:41:29,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:41:30,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:41:30,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:41:30,114.114 INFO    ] No camera update needed
[2026-10-28 20:41:30,117.117 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:41:30,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:41:30,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:41:30,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:41:32,171.171 INFO    ] ================================================
[2026-10-28 20:41:32,187.187 INFO    ] Launching Daemon at Wed Oct 28 20:41:32 IST 2026
[2026-10-28 20:41:32,199.199 INFO    ] ================================================
[2026-10-28 20:41:32,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:41:32
[2026-10-28 20:41:33,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:41:33,767.767 INFO    ] Initializing speech engine...
[2026-10-28 20:41:33,783.783 INFO    ] 2026-10-28 20:41:33
[2026-10-28 20:41:34,037.037 INFO    ] 2026-10-28 20:41:34
[2026-10-28 20:41:34,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:41:34,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:41:34,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:41:34,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:41:34,620.620 INFO    ] time= 28/10/2026 20:41:34
[2026-10-28 20:41:34,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:41:34,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:41:34,788.788 INFO    ] No existing commands found in stream
[2026-10-28 20:41:39,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:41:39,816.816 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 20:41:43,448.448 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:41:43,450.450 INFO    ] Checking for system updates...
[2026-10-28 20:41:43,487.487 INFO    ] 200
[2026-10-28 20:41:43,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:41:43,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:41:43,544.544 INFO    ] No update needed
[2026-10-28 20:41:43,546.546 INFO    ] Checking for camera pi updates...
[2026-10-28 20:41:43,580.580 INFO    ] 200
[2026-10-28 20:41:43,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:41:43,628.628 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:41:43,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:41:43,701.701 INFO    ] No camera update needed
[2026-10-28 20:41:43,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:41:43,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:41:43,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:41:43,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:41:45,757.757 INFO    ] ================================================
[2026-10-28 20:41:45,774.774 INFO    ] Launching Daemon at Wed Oct 28 20:41:45 IST 2026
[2026-10-28 20:41:45,784.784 INFO    ] ================================================
[2026-10-28 20:41:46,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:41:46
[2026-10-28 20:41:46,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:41:47,214.214 INFO    ] Initializing speech engine...
[2026-10-28 20:41:47,223.223 INFO    ] 2026-10-28 20:41:47
[2026-10-28 20:41:47,472.472 INFO    ] 2026-10-28 20:41:47
[2026-10-28 20:41:47,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:41:47,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:41:47,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:41:48,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:41:48,040.040 INFO    ] time= 28/10/2026 20:41:48
[2026-10-28 20:41:48,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:41:48,088.088 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:41:48,211.211 INFO    ] No existing commands found in stream
[2026-10-28 20:41:53,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:41:53,239.239 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-28 20:41:56,262.262 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:41:56,265.265 INFO    ] Checking for system updates...
[2026-10-28 20:41:56,319.319 INFO    ] 200
[2026-10-28 20:41:56,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:41:56,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:41:56,376.376 INFO    ] No update needed
[2026-10-28 20:41:56,379.379 INFO    ] Checking for camera pi updates...
[2026-10-28 20:41:56,415.415 INFO    ] 200
[2026-10-28 20:41:56,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:41:56,463.463 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:41:56,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:41:56,563.563 INFO    ] No camera update needed
[2026-10-28 20:41:56,566.566 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:41:56,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:41:56,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:41:56,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:41:58,620.620 INFO    ] ================================================
[2026-10-28 20:41:58,635.635 INFO    ] Launching Daemon at Wed Oct 28 20:41:58 IST 2026
[2026-10-28 20:41:58,646.646 INFO    ] ================================================
[2026-10-28 20:41:59,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:41:59
[2026-10-28 20:42:00,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:42:00,316.316 INFO    ] Initializing speech engine...
[2026-10-28 20:42:00,321.321 INFO    ] 2026-10-28 20:42:00
[2026-10-28 20:42:00,577.577 INFO    ] 2026-10-28 20:42:00
[2026-10-28 20:42:00,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:42:00,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:42:00,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:42:01,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:42:01,120.120 INFO    ] time= 28/10/2026 20:42:01
[2026-10-28 20:42:01,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:42:01,156.156 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:42:01,319.319 INFO    ] No existing commands found in stream
[2026-10-28 20:42:06,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:42:06,352.352 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-28 20:42:10,107.107 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:42:10,110.110 INFO    ] Checking for system updates...
[2026-10-28 20:42:10,149.149 INFO    ] 200
[2026-10-28 20:42:10,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:42:10,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:42:10,207.207 INFO    ] No update needed
[2026-10-28 20:42:10,209.209 INFO    ] Checking for camera pi updates...
[2026-10-28 20:42:10,243.243 INFO    ] 200
[2026-10-28 20:42:10,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:42:10,285.285 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:42:10,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:42:10,371.371 INFO    ] No camera update needed
[2026-10-28 20:42:10,373.373 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:42:10,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:42:10,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:42:10,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:42:12,425.425 INFO    ] ================================================
[2026-10-28 20:42:12,441.441 INFO    ] Launching Daemon at Wed Oct 28 20:42:12 IST 2026
[2026-10-28 20:42:12,452.452 INFO    ] ================================================
[2026-10-28 20:42:13,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:42:13
[2026-10-28 20:42:13,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:42:13,860.860 INFO    ] Initializing speech engine...
[2026-10-28 20:42:13,875.875 INFO    ] 2026-10-28 20:42:13
[2026-10-28 20:42:14,129.129 INFO    ] 2026-10-28 20:42:14
[2026-10-28 20:42:14,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:42:14,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:42:14,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:42:14,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:42:14,701.701 INFO    ] time= 28/10/2026 20:42:14
[2026-10-28 20:42:14,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:42:14,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:42:14,874.874 INFO    ] No existing commands found in stream
[2026-10-28 20:42:19,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:42:19,902.902 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 20:42:24,122.122 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:42:24,125.125 INFO    ] Checking for system updates...
[2026-10-28 20:42:24,164.164 INFO    ] 200
[2026-10-28 20:42:24,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:42:24,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:42:24,221.221 INFO    ] No update needed
[2026-10-28 20:42:24,223.223 INFO    ] Checking for camera pi updates...
[2026-10-28 20:42:24,257.257 INFO    ] 200
[2026-10-28 20:42:24,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:42:24,299.299 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:42:24,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:42:24,388.388 INFO    ] No camera update needed
[2026-10-28 20:42:24,391.391 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:42:24,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:42:24,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:42:24,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:42:26,445.445 INFO    ] ================================================
[2026-10-28 20:42:26,460.460 INFO    ] Launching Daemon at Wed Oct 28 20:42:26 IST 2026
[2026-10-28 20:42:26,471.471 INFO    ] ================================================
[2026-10-28 20:42:27,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:42:27
[2026-10-28 20:42:27,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:42:27,884.884 INFO    ] Initializing speech engine...
[2026-10-28 20:42:27,897.897 INFO    ] 2026-10-28 20:42:27
[2026-10-28 20:42:28,147.147 INFO    ] 2026-10-28 20:42:28
[2026-10-28 20:42:28,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:42:28,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:42:28,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:42:28,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:42:28,715.715 INFO    ] time= 28/10/2026 20:42:28
[2026-10-28 20:42:28,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:42:28,739.739 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:42:28,874.874 INFO    ] No existing commands found in stream
[2026-10-28 20:42:33,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:42:33,900.900 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 20:42:35,618.618 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:42:35,621.621 INFO    ] Checking for system updates...
[2026-10-28 20:42:35,660.660 INFO    ] 200
[2026-10-28 20:42:35,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:42:35,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:42:35,722.722 INFO    ] No update needed
[2026-10-28 20:42:35,725.725 INFO    ] Checking for camera pi updates...
[2026-10-28 20:42:35,758.758 INFO    ] 200
[2026-10-28 20:42:35,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:42:35,804.804 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:42:35,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:42:35,908.908 INFO    ] No camera update needed
[2026-10-28 20:42:35,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:42:35,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:42:35,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:42:35,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:42:37,962.962 INFO    ] ================================================
[2026-10-28 20:42:37,977.977 INFO    ] Launching Daemon at Wed Oct 28 20:42:37 IST 2026
[2026-10-28 20:42:37,988.988 INFO    ] ================================================
[2026-10-28 20:42:38,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:42:38
[2026-10-28 20:42:39,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:42:39,450.450 INFO    ] Initializing speech engine...
[2026-10-28 20:42:39,457.457 INFO    ] 2026-10-28 20:42:39
[2026-10-28 20:42:39,717.717 INFO    ] 2026-10-28 20:42:39
[2026-10-28 20:42:39,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:42:40,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:42:40,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:42:40,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:42:40,276.276 INFO    ] time= 28/10/2026 20:42:40
[2026-10-28 20:42:40,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:42:40,311.311 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:42:40,433.433 INFO    ] No existing commands found in stream
[2026-10-28 20:42:45,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:42:45,466.466 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 20:42:46,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:42:46,247.247 INFO    ] Checking for system updates...
[2026-10-28 20:42:46,286.286 INFO    ] 200
[2026-10-28 20:42:46,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:42:46,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:42:46,349.349 INFO    ] No update needed
[2026-10-28 20:42:46,351.351 INFO    ] Checking for camera pi updates...
[2026-10-28 20:42:46,384.384 INFO    ] 200
[2026-10-28 20:42:46,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:42:46,426.426 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:42:46,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:42:46,522.522 INFO    ] No camera update needed
[2026-10-28 20:42:46,525.525 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:42:46,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:42:46,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:42:46,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:42:48,578.578 INFO    ] ================================================
[2026-10-28 20:42:48,594.594 INFO    ] Launching Daemon at Wed Oct 28 20:42:48 IST 2026
[2026-10-28 20:42:48,604.604 INFO    ] ================================================
[2026-10-28 20:42:49,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:42:49
[2026-10-28 20:42:49,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:42:50,222.222 INFO    ] Initializing speech engine...
[2026-10-28 20:42:50,232.232 INFO    ] 2026-10-28 20:42:50
[2026-10-28 20:42:50,523.523 INFO    ] 2026-10-28 20:42:50
[2026-10-28 20:42:50,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:42:50,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:42:50,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:42:51,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:42:51,099.099 INFO    ] time= 28/10/2026 20:42:51
[2026-10-28 20:42:51,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:42:51,134.134 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:42:51,288.288 INFO    ] No existing commands found in stream
[2026-10-28 20:42:56,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:42:56,317.317 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-28 20:42:57,428.428 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:42:57,431.431 INFO    ] Checking for system updates...
[2026-10-28 20:42:57,468.468 INFO    ] 200
[2026-10-28 20:42:57,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:42:57,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:42:57,531.531 INFO    ] No update needed
[2026-10-28 20:42:57,533.533 INFO    ] Checking for camera pi updates...
[2026-10-28 20:42:57,567.567 INFO    ] 200
[2026-10-28 20:42:57,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:42:57,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:42:57,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:42:57,671.671 INFO    ] No camera update needed
[2026-10-28 20:42:57,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:42:57,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:42:57,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:42:57,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:42:59,725.725 INFO    ] ================================================
[2026-10-28 20:42:59,740.740 INFO    ] Launching Daemon at Wed Oct 28 20:42:59 IST 2026
[2026-10-28 20:42:59,751.751 INFO    ] ================================================
[2026-10-28 20:43:00,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:43:00
[2026-10-28 20:43:00,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:43:01,171.171 INFO    ] Initializing speech engine...
[2026-10-28 20:43:01,180.180 INFO    ] 2026-10-28 20:43:01
[2026-10-28 20:43:01,433.433 INFO    ] 2026-10-28 20:43:01
[2026-10-28 20:43:01,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:43:01,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:43:01,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:43:01,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:43:01,994.994 INFO    ] time= 28/10/2026 20:43:01
[2026-10-28 20:43:01,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:43:02,019.019 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:43:02,130.130 INFO    ] No existing commands found in stream
[2026-10-28 20:43:07,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:43:07,148.148 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-28 20:43:13,200.200 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:43:13,203.203 INFO    ] Checking for system updates...
[2026-10-28 20:43:13,242.242 INFO    ] 200
[2026-10-28 20:43:13,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:43:13,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:43:13,299.299 INFO    ] No update needed
[2026-10-28 20:43:13,302.302 INFO    ] Checking for camera pi updates...
[2026-10-28 20:43:13,335.335 INFO    ] 200
[2026-10-28 20:43:13,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:43:13,378.378 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:43:13,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:43:13,474.474 INFO    ] No camera update needed
[2026-10-28 20:43:13,477.477 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:43:13,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:43:13,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:43:13,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:43:15,529.529 INFO    ] ================================================
[2026-10-28 20:43:15,545.545 INFO    ] Launching Daemon at Wed Oct 28 20:43:15 IST 2026
[2026-10-28 20:43:15,555.555 INFO    ] ================================================
[2026-10-28 20:43:16,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:43:16
[2026-10-28 20:43:16,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:43:17,025.025 INFO    ] Initializing speech engine...
[2026-10-28 20:43:17,034.034 INFO    ] 2026-10-28 20:43:17
[2026-10-28 20:43:17,296.296 INFO    ] 2026-10-28 20:43:17
[2026-10-28 20:43:17,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:43:17,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:43:17,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:43:17,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:43:17,837.837 INFO    ] time= 28/10/2026 20:43:17
[2026-10-28 20:43:17,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:43:17,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:43:18,009.009 INFO    ] No existing commands found in stream
[2026-10-28 20:43:23,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:43:23,042.042 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-28 20:43:23,968.968 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:43:23,970.970 INFO    ] Checking for system updates...
[2026-10-28 20:43:24,010.010 INFO    ] 200
[2026-10-28 20:43:24,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:43:24,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:43:24,068.068 INFO    ] No update needed
[2026-10-28 20:43:24,070.070 INFO    ] Checking for camera pi updates...
[2026-10-28 20:43:24,103.103 INFO    ] 200
[2026-10-28 20:43:24,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:43:24,147.147 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:43:24,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:43:24,338.338 INFO    ] No camera update needed
[2026-10-28 20:43:24,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:43:24,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:43:24,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:43:24,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:43:26,396.396 INFO    ] ================================================
[2026-10-28 20:43:26,411.411 INFO    ] Launching Daemon at Wed Oct 28 20:43:26 IST 2026
[2026-10-28 20:43:26,422.422 INFO    ] ================================================
[2026-10-28 20:43:27,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:43:27
[2026-10-28 20:43:27,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:43:27,866.866 INFO    ] Initializing speech engine...
[2026-10-28 20:43:27,876.876 INFO    ] 2026-10-28 20:43:27
[2026-10-28 20:43:28,119.119 INFO    ] 2026-10-28 20:43:28
[2026-10-28 20:43:28,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:43:28,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:43:28,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:43:28,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:43:28,673.673 INFO    ] time= 28/10/2026 20:43:28
[2026-10-28 20:43:28,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:43:28,708.708 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:43:28,845.845 INFO    ] No existing commands found in stream
[2026-10-28 20:43:33,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:43:33,872.872 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-28 20:43:36,919.919 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:43:36,922.922 INFO    ] Checking for system updates...
[2026-10-28 20:43:36,962.962 INFO    ] 200
[2026-10-28 20:43:36,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:43:37,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:43:37,019.019 INFO    ] No update needed
[2026-10-28 20:43:37,021.021 INFO    ] Checking for camera pi updates...
[2026-10-28 20:43:37,054.054 INFO    ] 200
[2026-10-28 20:43:37,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:43:37,097.097 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:43:37,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:43:37,148.148 INFO    ] No camera update needed
[2026-10-28 20:43:37,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:43:37,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:43:37,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:43:37,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:43:39,204.204 INFO    ] ================================================
[2026-10-28 20:43:39,219.219 INFO    ] Launching Daemon at Wed Oct 28 20:43:39 IST 2026
[2026-10-28 20:43:39,230.230 INFO    ] ================================================
[2026-10-28 20:43:39,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:43:39
[2026-10-28 20:43:40,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:43:40,651.651 INFO    ] Initializing speech engine...
[2026-10-28 20:43:40,661.661 INFO    ] 2026-10-28 20:43:40
[2026-10-28 20:43:40,905.905 INFO    ] 2026-10-28 20:43:40
[2026-10-28 20:43:40,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:43:41,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:43:41,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:43:41,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:43:41,462.462 INFO    ] time= 28/10/2026 20:43:41
[2026-10-28 20:43:41,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:43:41,508.508 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:43:41,622.622 INFO    ] No existing commands found in stream
[2026-10-28 20:43:46,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:43:46,659.659 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-10-28 20:43:50,148.148 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:43:50,150.150 INFO    ] Checking for system updates...
[2026-10-28 20:43:50,191.191 INFO    ] 200
[2026-10-28 20:43:50,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:43:50,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:43:50,258.258 INFO    ] No update needed
[2026-10-28 20:43:50,261.261 INFO    ] Checking for camera pi updates...
[2026-10-28 20:43:50,298.298 INFO    ] 200
[2026-10-28 20:43:50,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:43:50,342.342 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:43:50,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:43:50,445.445 INFO    ] No camera update needed
[2026-10-28 20:43:50,448.448 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:43:50,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:43:50,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:43:50,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:43:52,506.506 INFO    ] ================================================
[2026-10-28 20:43:52,520.520 INFO    ] Launching Daemon at Wed Oct 28 20:43:52 IST 2026
[2026-10-28 20:43:52,531.531 INFO    ] ================================================
[2026-10-28 20:43:53,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:43:53
[2026-10-28 20:43:53,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:43:53,989.989 INFO    ] Initializing speech engine...
[2026-10-28 20:43:53,996.996 INFO    ] 2026-10-28 20:43:53
[2026-10-28 20:43:54,254.254 INFO    ] 2026-10-28 20:43:54
[2026-10-28 20:43:54,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:43:54,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:43:54,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:43:54,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:43:54,799.799 INFO    ] time= 28/10/2026 20:43:54
[2026-10-28 20:43:54,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:43:54,844.844 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:43:54,971.971 INFO    ] No existing commands found in stream
[2026-10-28 20:43:59,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:43:59,999.999 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-10-28 20:44:01,061.061 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:44:01,068.068 INFO    ] Checking for system updates...
[2026-10-28 20:44:01,150.150 INFO    ] 200
[2026-10-28 20:44:01,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:44:01,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:44:01,267.267 INFO    ] No update needed
[2026-10-28 20:44:01,271.271 INFO    ] Checking for camera pi updates...
[2026-10-28 20:44:01,349.349 INFO    ] 200
[2026-10-28 20:44:01,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:44:01,417.417 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:44:01,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:44:01,514.514 INFO    ] No camera update needed
[2026-10-28 20:44:01,519.519 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:44:01,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:44:01,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:44:01,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:44:03,585.585 INFO    ] ================================================
[2026-10-28 20:44:03,600.600 INFO    ] Launching Daemon at Wed Oct 28 20:44:03 IST 2026
[2026-10-28 20:44:03,610.610 INFO    ] ================================================
[2026-10-28 20:44:04,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:44:04
[2026-10-28 20:44:04,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:44:05,055.055 INFO    ] Initializing speech engine...
[2026-10-28 20:44:05,061.061 INFO    ] 2026-10-28 20:44:05
[2026-10-28 20:44:05,361.361 INFO    ] 2026-10-28 20:44:05
[2026-10-28 20:44:05,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:44:05,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:44:05,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:44:05,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:44:05,913.913 INFO    ] time= 28/10/2026 20:44:05
[2026-10-28 20:44:05,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:44:06,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:44:06,144.144 INFO    ] No existing commands found in stream
[2026-10-28 20:44:11,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:44:11,168.168 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-28 20:44:15,504.504 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:44:15,507.507 INFO    ] Checking for system updates...
[2026-10-28 20:44:15,543.543 INFO    ] 200
[2026-10-28 20:44:15,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:44:15,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:44:15,600.600 INFO    ] No update needed
[2026-10-28 20:44:15,602.602 INFO    ] Checking for camera pi updates...
[2026-10-28 20:44:15,636.636 INFO    ] 200
[2026-10-28 20:44:15,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:44:15,683.683 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:44:15,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:44:15,777.777 INFO    ] No camera update needed
[2026-10-28 20:44:15,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:44:15,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:44:15,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:44:15,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:44:17,832.832 INFO    ] ================================================
[2026-10-28 20:44:17,848.848 INFO    ] Launching Daemon at Wed Oct 28 20:44:17 IST 2026
[2026-10-28 20:44:17,858.858 INFO    ] ================================================
[2026-10-28 20:44:18,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:44:18
[2026-10-28 20:44:19,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:44:19,291.291 INFO    ] Initializing speech engine...
[2026-10-28 20:44:19,300.300 INFO    ] 2026-10-28 20:44:19
[2026-10-28 20:44:19,548.548 INFO    ] 2026-10-28 20:44:19
[2026-10-28 20:44:19,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:44:19,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:44:19,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:44:20,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:44:20,104.104 INFO    ] time= 28/10/2026 20:44:20
[2026-10-28 20:44:20,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:44:20,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:44:20,331.331 INFO    ] No existing commands found in stream
[2026-10-28 20:44:25,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:44:25,364.364 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 20:44:28,518.518 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:44:28,521.521 INFO    ] Checking for system updates...
[2026-10-28 20:44:28,556.556 INFO    ] 200
[2026-10-28 20:44:28,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:44:28,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:44:28,613.613 INFO    ] No update needed
[2026-10-28 20:44:28,615.615 INFO    ] Checking for camera pi updates...
[2026-10-28 20:44:28,649.649 INFO    ] 200
[2026-10-28 20:44:28,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:44:28,695.695 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:44:28,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:44:28,769.769 INFO    ] No camera update needed
[2026-10-28 20:44:28,774.774 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:44:28,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:44:28,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:44:28,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:44:30,829.829 INFO    ] ================================================
[2026-10-28 20:44:30,844.844 INFO    ] Launching Daemon at Wed Oct 28 20:44:30 IST 2026
[2026-10-28 20:44:30,854.854 INFO    ] ================================================
[2026-10-28 20:44:31,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:44:31
[2026-10-28 20:44:32,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:44:32,340.340 INFO    ] Initializing speech engine...
[2026-10-28 20:44:32,354.354 INFO    ] 2026-10-28 20:44:32
[2026-10-28 20:44:32,653.653 INFO    ] 2026-10-28 20:44:32
[2026-10-28 20:44:32,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:44:32,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:44:32,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:44:33,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:44:33,293.293 INFO    ] time= 28/10/2026 20:44:33
[2026-10-28 20:44:33,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:44:33,317.317 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:44:33,481.481 INFO    ] No existing commands found in stream
[2026-10-28 20:44:38,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:44:38,516.516 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 20:44:42,012.012 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:44:42,015.015 INFO    ] Checking for system updates...
[2026-10-28 20:44:42,050.050 INFO    ] 200
[2026-10-28 20:44:42,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:44:42,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:44:42,114.114 INFO    ] No update needed
[2026-10-28 20:44:42,116.116 INFO    ] Checking for camera pi updates...
[2026-10-28 20:44:42,149.149 INFO    ] 200
[2026-10-28 20:44:42,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:44:42,192.192 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:44:42,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:44:42,272.272 INFO    ] No camera update needed
[2026-10-28 20:44:42,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:44:42,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:44:42,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:44:42,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:44:44,326.326 INFO    ] ================================================
[2026-10-28 20:44:44,341.341 INFO    ] Launching Daemon at Wed Oct 28 20:44:44 IST 2026
[2026-10-28 20:44:44,352.352 INFO    ] ================================================
[2026-10-28 20:44:44,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:44:44
[2026-10-28 20:44:45,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:44:45,806.806 INFO    ] Initializing speech engine...
[2026-10-28 20:44:45,815.815 INFO    ] 2026-10-28 20:44:45
[2026-10-28 20:44:46,074.074 INFO    ] 2026-10-28 20:44:46
[2026-10-28 20:44:46,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:44:46,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:44:46,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:44:46,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:44:46,771.771 INFO    ] time= 28/10/2026 20:44:46
[2026-10-28 20:44:46,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:44:46,862.862 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:44:47,007.007 INFO    ] No existing commands found in stream
[2026-10-28 20:44:52,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:44:52,023.023 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 20:44:54,602.602 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:44:54,605.605 INFO    ] Checking for system updates...
[2026-10-28 20:44:54,645.645 INFO    ] 200
[2026-10-28 20:44:54,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:44:54,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:44:54,701.701 INFO    ] No update needed
[2026-10-28 20:44:54,704.704 INFO    ] Checking for camera pi updates...
[2026-10-28 20:44:54,738.738 INFO    ] 200
[2026-10-28 20:44:54,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:44:54,787.787 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:44:54,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:44:54,846.846 INFO    ] No camera update needed
[2026-10-28 20:44:54,849.849 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:44:54,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:44:54,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:44:54,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:44:56,902.902 INFO    ] ================================================
[2026-10-28 20:44:56,917.917 INFO    ] Launching Daemon at Wed Oct 28 20:44:56 IST 2026
[2026-10-28 20:44:56,928.928 INFO    ] ================================================
[2026-10-28 20:44:57,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:44:57
[2026-10-28 20:44:58,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:44:58,387.387 INFO    ] Initializing speech engine...
[2026-10-28 20:44:58,393.393 INFO    ] 2026-10-28 20:44:58
[2026-10-28 20:44:58,655.655 INFO    ] 2026-10-28 20:44:58
[2026-10-28 20:44:58,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:44:59,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:44:59,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:44:59,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:44:59,384.384 INFO    ] time= 28/10/2026 20:44:59
[2026-10-28 20:44:59,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:44:59,479.479 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:44:59,637.637 INFO    ] No existing commands found in stream
[2026-10-28 20:45:04,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:45:04,655.655 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 20:45:08,424.424 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:45:08,427.427 INFO    ] Checking for system updates...
[2026-10-28 20:45:08,463.463 INFO    ] 200
[2026-10-28 20:45:08,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:45:08,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:45:08,520.520 INFO    ] No update needed
[2026-10-28 20:45:08,523.523 INFO    ] Checking for camera pi updates...
[2026-10-28 20:45:08,557.557 INFO    ] 200
[2026-10-28 20:45:08,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:45:08,606.606 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:45:08,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:45:08,685.685 INFO    ] No camera update needed
[2026-10-28 20:45:08,687.687 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:45:08,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:45:08,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:45:08,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:45:10,742.742 INFO    ] ================================================
[2026-10-28 20:45:10,758.758 INFO    ] Launching Daemon at Wed Oct 28 20:45:10 IST 2026
[2026-10-28 20:45:10,769.769 INFO    ] ================================================
[2026-10-28 20:45:11,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:45:11
[2026-10-28 20:45:11,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:45:12,236.236 INFO    ] Initializing speech engine...
[2026-10-28 20:45:12,244.244 INFO    ] 2026-10-28 20:45:12
[2026-10-28 20:45:12,507.507 INFO    ] 2026-10-28 20:45:12
[2026-10-28 20:45:12,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:45:12,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:45:12,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:45:12,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:45:13,031.031 INFO    ] time= 28/10/2026 20:45:12
[2026-10-28 20:45:13,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:45:13,109.109 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:45:13,258.258 INFO    ] No existing commands found in stream
[2026-10-28 20:45:18,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:45:18,276.276 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 20:45:18,969.969 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:45:18,972.972 INFO    ] Checking for system updates...
[2026-10-28 20:45:19,013.013 INFO    ] 200
[2026-10-28 20:45:19,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:45:19,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:45:19,080.080 INFO    ] No update needed
[2026-10-28 20:45:19,082.082 INFO    ] Checking for camera pi updates...
[2026-10-28 20:45:19,120.120 INFO    ] 200
[2026-10-28 20:45:19,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:45:19,163.163 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:45:19,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:45:19,249.249 INFO    ] No camera update needed
[2026-10-28 20:45:19,251.251 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:45:19,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:45:19,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:45:19,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:45:21,306.306 INFO    ] ================================================
[2026-10-28 20:45:21,322.322 INFO    ] Launching Daemon at Wed Oct 28 20:45:21 IST 2026
[2026-10-28 20:45:21,334.334 INFO    ] ================================================
[2026-10-28 20:45:21,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:45:21
[2026-10-28 20:45:22,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:45:22,777.777 INFO    ] Initializing speech engine...
[2026-10-28 20:45:22,786.786 INFO    ] 2026-10-28 20:45:22
[2026-10-28 20:45:23,031.031 INFO    ] 2026-10-28 20:45:23
[2026-10-28 20:45:23,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:45:23,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:45:23,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:45:23,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:45:23,587.587 INFO    ] time= 28/10/2026 20:45:23
[2026-10-28 20:45:23,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:45:23,634.634 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:45:23,794.794 INFO    ] No existing commands found in stream
[2026-10-28 20:45:28,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:45:28,822.822 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 20:45:32,100.100 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:45:32,103.103 INFO    ] Checking for system updates...
[2026-10-28 20:45:32,144.144 INFO    ] 200
[2026-10-28 20:45:32,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:45:32,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:45:32,207.207 INFO    ] No update needed
[2026-10-28 20:45:32,209.209 INFO    ] Checking for camera pi updates...
[2026-10-28 20:45:32,245.245 INFO    ] 200
[2026-10-28 20:45:32,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:45:32,291.291 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:45:32,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:45:32,450.450 INFO    ] No camera update needed
[2026-10-28 20:45:32,452.452 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:45:32,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:45:32,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:45:32,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:45:34,508.508 INFO    ] ================================================
[2026-10-28 20:45:34,524.524 INFO    ] Launching Daemon at Wed Oct 28 20:45:34 IST 2026
[2026-10-28 20:45:34,535.535 INFO    ] ================================================
[2026-10-28 20:45:35,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:45:35
[2026-10-28 20:45:35,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:45:35,967.967 INFO    ] Initializing speech engine...
[2026-10-28 20:45:35,976.976 INFO    ] 2026-10-28 20:45:35
[2026-10-28 20:45:36,228.228 INFO    ] 2026-10-28 20:45:36
[2026-10-28 20:45:36,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:45:36,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:45:36,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:45:36,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:45:36,774.774 INFO    ] time= 28/10/2026 20:45:36
[2026-10-28 20:45:36,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:45:36,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:45:36,929.929 INFO    ] No existing commands found in stream
[2026-10-28 20:45:41,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:45:41,951.951 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 20:45:44,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:45:44,103.103 INFO    ] Checking for system updates...
[2026-10-28 20:45:44,147.147 INFO    ] 200
[2026-10-28 20:45:44,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:45:44,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:45:44,211.211 INFO    ] No update needed
[2026-10-28 20:45:44,214.214 INFO    ] Checking for camera pi updates...
[2026-10-28 20:45:44,248.248 INFO    ] 200
[2026-10-28 20:45:44,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:45:44,295.295 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:45:44,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:45:44,399.399 INFO    ] No camera update needed
[2026-10-28 20:45:44,401.401 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:45:44,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:45:44,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:45:44,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:45:46,457.457 INFO    ] ================================================
[2026-10-28 20:45:46,472.472 INFO    ] Launching Daemon at Wed Oct 28 20:45:46 IST 2026
[2026-10-28 20:45:46,484.484 INFO    ] ================================================
[2026-10-28 20:45:47,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:45:47
[2026-10-28 20:45:47,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:45:47,940.940 INFO    ] Initializing speech engine...
[2026-10-28 20:45:47,949.949 INFO    ] 2026-10-28 20:45:47
[2026-10-28 20:45:48,201.201 INFO    ] 2026-10-28 20:45:48
[2026-10-28 20:45:48,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:45:48,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:45:48,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:45:48,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:45:48,749.749 INFO    ] time= 28/10/2026 20:45:48
[2026-10-28 20:45:48,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:45:48,795.795 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:45:48,927.927 INFO    ] No existing commands found in stream
[2026-10-28 20:45:53,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:45:53,960.960 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 20:45:54,641.641 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:45:54,644.644 INFO    ] Checking for system updates...
[2026-10-28 20:45:54,683.683 INFO    ] 200
[2026-10-28 20:45:54,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:45:54,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:45:54,742.742 INFO    ] No update needed
[2026-10-28 20:45:54,745.745 INFO    ] Checking for camera pi updates...
[2026-10-28 20:45:54,779.779 INFO    ] 200
[2026-10-28 20:45:54,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:45:54,825.825 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:45:54,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:45:54,911.911 INFO    ] No camera update needed
[2026-10-28 20:45:54,914.914 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:45:54,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:45:54,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:45:54,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:45:56,968.968 INFO    ] ================================================
[2026-10-28 20:45:56,984.984 INFO    ] Launching Daemon at Wed Oct 28 20:45:56 IST 2026
[2026-10-28 20:45:56,994.994 INFO    ] ================================================
[2026-10-28 20:45:57,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:45:57
[2026-10-28 20:45:58,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:45:58,542.542 INFO    ] Initializing speech engine...
[2026-10-28 20:45:58,550.550 INFO    ] 2026-10-28 20:45:58
[2026-10-28 20:45:58,820.820 INFO    ] 2026-10-28 20:45:58
[2026-10-28 20:45:58,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:45:59,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:45:59,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:45:59,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:45:59,530.530 INFO    ] time= 28/10/2026 20:45:59
[2026-10-28 20:45:59,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:45:59,624.624 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:45:59,798.798 INFO    ] No existing commands found in stream
[2026-10-28 20:46:04,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:46:04,819.819 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-28 20:46:05,892.892 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:46:05,895.895 INFO    ] Checking for system updates...
[2026-10-28 20:46:05,933.933 INFO    ] 200
[2026-10-28 20:46:05,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:46:05,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:46:05,994.994 INFO    ] No update needed
[2026-10-28 20:46:05,996.996 INFO    ] Checking for camera pi updates...
[2026-10-28 20:46:06,030.030 INFO    ] 200
[2026-10-28 20:46:06,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:46:06,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:46:06,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:46:06,160.160 INFO    ] No camera update needed
[2026-10-28 20:46:06,163.163 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:46:06,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:46:06,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:46:06,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:46:08,217.217 INFO    ] ================================================
[2026-10-28 20:46:08,232.232 INFO    ] Launching Daemon at Wed Oct 28 20:46:08 IST 2026
[2026-10-28 20:46:08,243.243 INFO    ] ================================================
[2026-10-28 20:46:08,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:46:08
[2026-10-28 20:46:09,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:46:09,646.646 INFO    ] Initializing speech engine...
[2026-10-28 20:46:09,651.651 INFO    ] 2026-10-28 20:46:09
[2026-10-28 20:46:09,952.952 INFO    ] 2026-10-28 20:46:09
[2026-10-28 20:46:09,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:46:10,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:46:10,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:46:10,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:46:10,536.536 INFO    ] time= 28/10/2026 20:46:10
[2026-10-28 20:46:10,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:46:10,565.565 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:46:10,694.694 INFO    ] No existing commands found in stream
[2026-10-28 20:46:15,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:46:15,728.728 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-28 20:46:17,243.243 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:46:17,246.246 INFO    ] Checking for system updates...
[2026-10-28 20:46:17,288.288 INFO    ] 200
[2026-10-28 20:46:17,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:46:17,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:46:17,352.352 INFO    ] No update needed
[2026-10-28 20:46:17,355.355 INFO    ] Checking for camera pi updates...
[2026-10-28 20:46:17,389.389 INFO    ] 200
[2026-10-28 20:46:17,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:46:17,432.432 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:46:17,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:46:17,525.525 INFO    ] No camera update needed
[2026-10-28 20:46:17,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:46:17,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:46:17,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:46:17,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:46:19,586.586 INFO    ] ================================================
[2026-10-28 20:46:19,602.602 INFO    ] Launching Daemon at Wed Oct 28 20:46:19 IST 2026
[2026-10-28 20:46:19,614.614 INFO    ] ================================================
[2026-10-28 20:46:20,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:46:20
[2026-10-28 20:46:20,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:46:21,166.166 INFO    ] Initializing speech engine...
[2026-10-28 20:46:21,174.174 INFO    ] 2026-10-28 20:46:21
[2026-10-28 20:46:21,445.445 INFO    ] 2026-10-28 20:46:21
[2026-10-28 20:46:21,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:46:21,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:46:21,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:46:21,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:46:21,996.996 INFO    ] time= 28/10/2026 20:46:21
[2026-10-28 20:46:22,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:46:22,043.043 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:46:22,204.204 INFO    ] No existing commands found in stream
[2026-10-28 20:46:27,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:46:27,241.241 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 20:46:30,202.202 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:46:30,205.205 INFO    ] Checking for system updates...
[2026-10-28 20:46:30,241.241 INFO    ] 200
[2026-10-28 20:46:30,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:46:30,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:46:30,304.304 INFO    ] No update needed
[2026-10-28 20:46:30,307.307 INFO    ] Checking for camera pi updates...
[2026-10-28 20:46:30,341.341 INFO    ] 200
[2026-10-28 20:46:30,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:46:30,385.385 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:46:30,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:46:30,484.484 INFO    ] No camera update needed
[2026-10-28 20:46:30,486.486 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:46:30,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:46:30,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:46:30,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:46:32,540.540 INFO    ] ================================================
[2026-10-28 20:46:32,557.557 INFO    ] Launching Daemon at Wed Oct 28 20:46:32 IST 2026
[2026-10-28 20:46:32,569.569 INFO    ] ================================================
[2026-10-28 20:46:33,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:46:33
[2026-10-28 20:46:33,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:46:34,111.111 INFO    ] Initializing speech engine...
[2026-10-28 20:46:34,121.121 INFO    ] 2026-10-28 20:46:34
[2026-10-28 20:46:34,399.399 INFO    ] 2026-10-28 20:46:34
[2026-10-28 20:46:34,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:46:34,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:46:34,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:46:34,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:46:34,997.997 INFO    ] time= 28/10/2026 20:46:34
[2026-10-28 20:46:35,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:46:35,035.035 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:46:35,180.180 INFO    ] No existing commands found in stream
[2026-10-28 20:46:40,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:46:40,210.210 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-28 20:46:42,249.249 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:46:42,252.252 INFO    ] Checking for system updates...
[2026-10-28 20:46:42,287.287 INFO    ] 200
[2026-10-28 20:46:42,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:46:42,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:46:42,344.344 INFO    ] No update needed
[2026-10-28 20:46:42,346.346 INFO    ] Checking for camera pi updates...
[2026-10-28 20:46:42,383.383 INFO    ] 200
[2026-10-28 20:46:42,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:46:42,429.429 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:46:42,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:46:42,518.518 INFO    ] No camera update needed
[2026-10-28 20:46:42,521.521 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:46:42,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:46:42,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:46:42,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:46:44,573.573 INFO    ] ================================================
[2026-10-28 20:46:44,589.589 INFO    ] Launching Daemon at Wed Oct 28 20:46:44 IST 2026
[2026-10-28 20:46:44,600.600 INFO    ] ================================================
[2026-10-28 20:46:45,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:46:45
[2026-10-28 20:46:45,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:46:46,203.203 INFO    ] Initializing speech engine...
[2026-10-28 20:46:46,212.212 INFO    ] 2026-10-28 20:46:46
[2026-10-28 20:46:46,482.482 INFO    ] 2026-10-28 20:46:46
[2026-10-28 20:46:46,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:46:46,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:46:46,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:46:47,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:46:47,236.236 INFO    ] time= 28/10/2026 20:46:47
[2026-10-28 20:46:47,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:46:47,332.332 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:46:47,559.559 INFO    ] No existing commands found in stream
[2026-10-28 20:46:52,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:46:52,588.588 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-10-28 20:46:54,483.483 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:46:54,486.486 INFO    ] Checking for system updates...
[2026-10-28 20:46:54,523.523 INFO    ] 200
[2026-10-28 20:46:54,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:46:54,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:46:54,581.581 INFO    ] No update needed
[2026-10-28 20:46:54,584.584 INFO    ] Checking for camera pi updates...
[2026-10-28 20:46:54,622.622 INFO    ] 200
[2026-10-28 20:46:54,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:46:54,667.667 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:46:54,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:46:54,756.756 INFO    ] No camera update needed
[2026-10-28 20:46:54,759.759 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:46:54,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:46:54,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:46:54,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:46:56,814.814 INFO    ] ================================================
[2026-10-28 20:46:56,829.829 INFO    ] Launching Daemon at Wed Oct 28 20:46:56 IST 2026
[2026-10-28 20:46:56,839.839 INFO    ] ================================================
[2026-10-28 20:46:57,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:46:57
[2026-10-28 20:46:57,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:46:58,254.254 INFO    ] Initializing speech engine...
[2026-10-28 20:46:58,264.264 INFO    ] 2026-10-28 20:46:58
[2026-10-28 20:46:58,515.515 INFO    ] 2026-10-28 20:46:58
[2026-10-28 20:46:58,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:46:58,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:46:58,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:46:59,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:46:59,065.065 INFO    ] time= 28/10/2026 20:46:59
[2026-10-28 20:46:59,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:46:59,106.106 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:46:59,237.237 INFO    ] No existing commands found in stream
[2026-10-28 20:47:04,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:47:04,270.270 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-28 20:47:05,779.779 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:47:05,781.781 INFO    ] Checking for system updates...
[2026-10-28 20:47:05,817.817 INFO    ] 200
[2026-10-28 20:47:05,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:47:05,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:47:05,875.875 INFO    ] No update needed
[2026-10-28 20:47:05,877.877 INFO    ] Checking for camera pi updates...
[2026-10-28 20:47:05,910.910 INFO    ] 200
[2026-10-28 20:47:05,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:47:05,957.957 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:47:06,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:47:06,061.061 INFO    ] No camera update needed
[2026-10-28 20:47:06,064.064 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:47:06,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:47:06,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:47:06,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:47:08,116.116 INFO    ] ================================================
[2026-10-28 20:47:08,131.131 INFO    ] Launching Daemon at Wed Oct 28 20:47:08 IST 2026
[2026-10-28 20:47:08,142.142 INFO    ] ================================================
[2026-10-28 20:47:08,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:47:08
[2026-10-28 20:47:09,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:47:09,750.750 INFO    ] Initializing speech engine...
[2026-10-28 20:47:09,761.761 INFO    ] 2026-10-28 20:47:09
[2026-10-28 20:47:10,031.031 INFO    ] 2026-10-28 20:47:10
[2026-10-28 20:47:10,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:47:10,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:47:10,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:47:10,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:47:10,810.810 INFO    ] time= 28/10/2026 20:47:10
[2026-10-28 20:47:10,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:47:10,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:47:11,016.016 INFO    ] No existing commands found in stream
[2026-10-28 20:47:16,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:47:16,038.038 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 20:47:16,722.722 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:47:16,725.725 INFO    ] Checking for system updates...
[2026-10-28 20:47:16,761.761 INFO    ] 200
[2026-10-28 20:47:16,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:47:16,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:47:16,824.824 INFO    ] No update needed
[2026-10-28 20:47:16,826.826 INFO    ] Checking for camera pi updates...
[2026-10-28 20:47:16,863.863 INFO    ] 200
[2026-10-28 20:47:16,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:47:16,905.905 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:47:16,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:47:16,990.990 INFO    ] No camera update needed
[2026-10-28 20:47:16,992.992 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:47:16,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:47:17,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:47:17,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:47:19,046.046 INFO    ] ================================================
[2026-10-28 20:47:19,061.061 INFO    ] Launching Daemon at Wed Oct 28 20:47:19 IST 2026
[2026-10-28 20:47:19,072.072 INFO    ] ================================================
[2026-10-28 20:47:19,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:47:19
[2026-10-28 20:47:20,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:47:20,490.490 INFO    ] Initializing speech engine...
[2026-10-28 20:47:20,501.501 INFO    ] 2026-10-28 20:47:20
[2026-10-28 20:47:20,777.777 INFO    ] 2026-10-28 20:47:20
[2026-10-28 20:47:20,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:47:21,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:47:21,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:47:21,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:47:21,350.350 INFO    ] time= 28/10/2026 20:47:21
[2026-10-28 20:47:21,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:47:21,408.408 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:47:21,530.530 INFO    ] No existing commands found in stream
[2026-10-28 20:47:26,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:47:26,550.550 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-28 20:47:27,441.441 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:47:27,444.444 INFO    ] Checking for system updates...
[2026-10-28 20:47:27,478.478 INFO    ] 200
[2026-10-28 20:47:27,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:47:27,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:47:27,540.540 INFO    ] No update needed
[2026-10-28 20:47:27,542.542 INFO    ] Checking for camera pi updates...
[2026-10-28 20:47:27,576.576 INFO    ] 200
[2026-10-28 20:47:27,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:47:27,626.626 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:47:27,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:47:27,707.707 INFO    ] No camera update needed
[2026-10-28 20:47:27,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:47:27,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:47:27,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:47:27,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:47:29,762.762 INFO    ] ================================================
[2026-10-28 20:47:29,778.778 INFO    ] Launching Daemon at Wed Oct 28 20:47:29 IST 2026
[2026-10-28 20:47:29,789.789 INFO    ] ================================================
[2026-10-28 20:47:30,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:47:30
[2026-10-28 20:47:30,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:47:31,195.195 INFO    ] Initializing speech engine...
[2026-10-28 20:47:31,201.201 INFO    ] 2026-10-28 20:47:31
[2026-10-28 20:47:31,530.530 INFO    ] 2026-10-28 20:47:31
[2026-10-28 20:47:31,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:47:31,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:47:31,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:47:32,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:47:32,096.096 INFO    ] time= 28/10/2026 20:47:32
[2026-10-28 20:47:32,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:47:32,200.200 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:47:32,351.351 INFO    ] No existing commands found in stream
[2026-10-28 20:47:37,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:47:37,385.385 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 20:47:40,136.136 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:47:40,139.139 INFO    ] Checking for system updates...
[2026-10-28 20:47:40,177.177 INFO    ] 200
[2026-10-28 20:47:40,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:47:40,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:47:40,237.237 INFO    ] No update needed
[2026-10-28 20:47:40,240.240 INFO    ] Checking for camera pi updates...
[2026-10-28 20:47:40,274.274 INFO    ] 200
[2026-10-28 20:47:40,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:47:40,318.318 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:47:40,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:47:40,504.504 INFO    ] No camera update needed
[2026-10-28 20:47:40,506.506 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:47:40,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:47:40,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:47:40,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:47:42,563.563 INFO    ] ================================================
[2026-10-28 20:47:42,578.578 INFO    ] Launching Daemon at Wed Oct 28 20:47:42 IST 2026
[2026-10-28 20:47:42,589.589 INFO    ] ================================================
[2026-10-28 20:47:43,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:47:43
[2026-10-28 20:47:43,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:47:44,003.003 INFO    ] Initializing speech engine...
[2026-10-28 20:47:44,012.012 INFO    ] 2026-10-28 20:47:44
[2026-10-28 20:47:44,258.258 INFO    ] 2026-10-28 20:47:44
[2026-10-28 20:47:44,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:47:44,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:47:44,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:47:44,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:47:44,812.812 INFO    ] time= 28/10/2026 20:47:44
[2026-10-28 20:47:44,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:47:44,857.857 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:47:44,983.983 INFO    ] No existing commands found in stream
[2026-10-28 20:47:50,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:47:50,011.011 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-28 20:47:50,650.650 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:47:50,653.653 INFO    ] Checking for system updates...
[2026-10-28 20:47:50,688.688 INFO    ] 200
[2026-10-28 20:47:50,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:47:50,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:47:50,751.751 INFO    ] No update needed
[2026-10-28 20:47:50,754.754 INFO    ] Checking for camera pi updates...
[2026-10-28 20:47:50,791.791 INFO    ] 200
[2026-10-28 20:47:50,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:47:50,839.839 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:47:50,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:47:50,930.930 INFO    ] No camera update needed
[2026-10-28 20:47:50,932.932 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:47:50,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:47:50,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:47:50,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:47:52,986.986 INFO    ] ================================================
[2026-10-28 20:47:53,001.001 INFO    ] Launching Daemon at Wed Oct 28 20:47:52 IST 2026
[2026-10-28 20:47:53,012.012 INFO    ] ================================================
[2026-10-28 20:47:53,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:47:53
[2026-10-28 20:47:54,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:47:54,530.530 INFO    ] Initializing speech engine...
[2026-10-28 20:47:54,544.544 INFO    ] 2026-10-28 20:47:54
[2026-10-28 20:47:54,814.814 INFO    ] 2026-10-28 20:47:54
[2026-10-28 20:47:54,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:47:55,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:47:55,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:47:55,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:47:55,601.601 INFO    ] time= 28/10/2026 20:47:55
[2026-10-28 20:47:55,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:47:55,715.715 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:47:55,897.897 INFO    ] No existing commands found in stream
[2026-10-28 20:48:00,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:48:00,931.931 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-28 20:48:04,870.870 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:48:04,873.873 INFO    ] Checking for system updates...
[2026-10-28 20:48:04,915.915 INFO    ] 200
[2026-10-28 20:48:04,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:48:04,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:48:04,981.981 INFO    ] No update needed
[2026-10-28 20:48:04,984.984 INFO    ] Checking for camera pi updates...
[2026-10-28 20:48:05,019.019 INFO    ] 200
[2026-10-28 20:48:05,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:48:05,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:48:05,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:48:05,150.150 INFO    ] No camera update needed
[2026-10-28 20:48:05,153.153 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:48:05,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:48:05,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:48:05,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:48:07,213.213 INFO    ] ================================================
[2026-10-28 20:48:07,229.229 INFO    ] Launching Daemon at Wed Oct 28 20:48:07 IST 2026
[2026-10-28 20:48:07,240.240 INFO    ] ================================================
[2026-10-28 20:48:07,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:48:07
[2026-10-28 20:48:08,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:48:08,902.902 INFO    ] Initializing speech engine...
[2026-10-28 20:48:08,911.911 INFO    ] 2026-10-28 20:48:08
[2026-10-28 20:48:09,190.190 INFO    ] 2026-10-28 20:48:09
[2026-10-28 20:48:09,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:48:09,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:48:09,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:48:09,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:48:09,744.744 INFO    ] time= 28/10/2026 20:48:09
[2026-10-28 20:48:09,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:48:09,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:48:09,945.945 INFO    ] No existing commands found in stream
[2026-10-28 20:48:14,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:48:14,980.980 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-10-28 20:48:17,804.804 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:48:17,807.807 INFO    ] Checking for system updates...
[2026-10-28 20:48:17,844.844 INFO    ] 200
[2026-10-28 20:48:17,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:48:17,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:48:17,913.913 INFO    ] No update needed
[2026-10-28 20:48:17,916.916 INFO    ] Checking for camera pi updates...
[2026-10-28 20:48:17,956.956 INFO    ] 200
[2026-10-28 20:48:17,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:48:18,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:48:18,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:48:18,095.095 INFO    ] No camera update needed
[2026-10-28 20:48:18,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:48:18,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:48:18,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:48:18,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:48:20,153.153 INFO    ] ================================================
[2026-10-28 20:48:20,169.169 INFO    ] Launching Daemon at Wed Oct 28 20:48:20 IST 2026
[2026-10-28 20:48:20,181.181 INFO    ] ================================================
[2026-10-28 20:48:20,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:48:20
[2026-10-28 20:48:21,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:48:21,586.586 INFO    ] Initializing speech engine...
[2026-10-28 20:48:21,601.601 INFO    ] 2026-10-28 20:48:21
[2026-10-28 20:48:21,866.866 INFO    ] 2026-10-28 20:48:21
[2026-10-28 20:48:21,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:48:22,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:48:22,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:48:22,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:48:22,437.437 INFO    ] time= 28/10/2026 20:48:22
[2026-10-28 20:48:22,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:48:22,484.484 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:48:22,606.606 INFO    ] No existing commands found in stream
[2026-10-28 20:48:27,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:48:27,633.633 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-28 20:48:28,520.520 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:48:28,523.523 INFO    ] Checking for system updates...
[2026-10-28 20:48:28,565.565 INFO    ] 200
[2026-10-28 20:48:28,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:48:28,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:48:28,624.624 INFO    ] No update needed
[2026-10-28 20:48:28,627.627 INFO    ] Checking for camera pi updates...
[2026-10-28 20:48:28,667.667 INFO    ] 200
[2026-10-28 20:48:28,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:48:28,713.713 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:48:28,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:48:28,804.804 INFO    ] No camera update needed
[2026-10-28 20:48:28,807.807 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:48:28,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:48:28,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:48:28,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:48:30,866.866 INFO    ] ================================================
[2026-10-28 20:48:30,883.883 INFO    ] Launching Daemon at Wed Oct 28 20:48:30 IST 2026
[2026-10-28 20:48:30,895.895 INFO    ] ================================================
[2026-10-28 20:48:31,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:48:31
[2026-10-28 20:48:32,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:48:32,681.681 INFO    ] Initializing speech engine...
[2026-10-28 20:48:32,694.694 INFO    ] 2026-10-28 20:48:32
[2026-10-28 20:48:32,954.954 INFO    ] 2026-10-28 20:48:32
[2026-10-28 20:48:33,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:48:33,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:48:33,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:48:33,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:48:33,511.511 INFO    ] time= 28/10/2026 20:48:33
[2026-10-28 20:48:33,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:48:33,541.541 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:48:33,730.730 INFO    ] No existing commands found in stream
[2026-10-28 20:48:38,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:48:38,758.758 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-28 20:48:40,403.403 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:48:40,406.406 INFO    ] Checking for system updates...
[2026-10-28 20:48:40,442.442 INFO    ] 200
[2026-10-28 20:48:40,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:48:40,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:48:40,508.508 INFO    ] No update needed
[2026-10-28 20:48:40,510.510 INFO    ] Checking for camera pi updates...
[2026-10-28 20:48:40,545.545 INFO    ] 200
[2026-10-28 20:48:40,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:48:40,588.588 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:48:40,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:48:40,692.692 INFO    ] No camera update needed
[2026-10-28 20:48:40,695.695 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:48:40,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:48:40,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:48:40,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:48:42,750.750 INFO    ] ================================================
[2026-10-28 20:48:42,765.765 INFO    ] Launching Daemon at Wed Oct 28 20:48:42 IST 2026
[2026-10-28 20:48:42,777.777 INFO    ] ================================================
[2026-10-28 20:48:43,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:48:43
[2026-10-28 20:48:43,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:48:44,220.220 INFO    ] Initializing speech engine...
[2026-10-28 20:48:44,233.233 INFO    ] 2026-10-28 20:48:44
[2026-10-28 20:48:44,498.498 INFO    ] 2026-10-28 20:48:44
[2026-10-28 20:48:44,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:48:44,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:48:44,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:48:45,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:48:45,058.058 INFO    ] time= 28/10/2026 20:48:45
[2026-10-28 20:48:45,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:48:45,105.105 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:48:45,236.236 INFO    ] No existing commands found in stream
[2026-10-28 20:48:50,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:48:50,264.264 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 20:48:53,239.239 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:48:53,242.242 INFO    ] Checking for system updates...
[2026-10-28 20:48:53,279.279 INFO    ] 200
[2026-10-28 20:48:53,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:48:53,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:48:53,348.348 INFO    ] No update needed
[2026-10-28 20:48:53,351.351 INFO    ] Checking for camera pi updates...
[2026-10-28 20:48:53,386.386 INFO    ] 200
[2026-10-28 20:48:53,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:48:53,437.437 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:48:53,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:48:53,522.522 INFO    ] No camera update needed
[2026-10-28 20:48:53,525.525 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:48:53,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:48:53,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:48:53,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:48:55,581.581 INFO    ] ================================================
[2026-10-28 20:48:55,596.596 INFO    ] Launching Daemon at Wed Oct 28 20:48:55 IST 2026
[2026-10-28 20:48:55,607.607 INFO    ] ================================================
[2026-10-28 20:48:56,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:48:56
[2026-10-28 20:48:56,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:48:57,186.186 INFO    ] Initializing speech engine...
[2026-10-28 20:48:57,205.205 INFO    ] 2026-10-28 20:48:57
[2026-10-28 20:48:57,456.456 INFO    ] 2026-10-28 20:48:57
[2026-10-28 20:48:57,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:48:57,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:48:57,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:48:58,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:48:58,028.028 INFO    ] time= 28/10/2026 20:48:58
[2026-10-28 20:48:58,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:48:58,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:48:58,215.215 INFO    ] No existing commands found in stream
[2026-10-28 20:49:03,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:49:03,243.243 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-28 20:49:04,760.760 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:49:04,762.762 INFO    ] Checking for system updates...
[2026-10-28 20:49:04,797.797 INFO    ] 200
[2026-10-28 20:49:04,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:49:04,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:49:04,856.856 INFO    ] No update needed
[2026-10-28 20:49:04,859.859 INFO    ] Checking for camera pi updates...
[2026-10-28 20:49:04,893.893 INFO    ] 200
[2026-10-28 20:49:04,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:49:04,940.940 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:49:05,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:49:05,034.034 INFO    ] No camera update needed
[2026-10-28 20:49:05,037.037 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:49:05,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:49:05,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:49:05,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:49:07,090.090 INFO    ] ================================================
[2026-10-28 20:49:07,105.105 INFO    ] Launching Daemon at Wed Oct 28 20:49:07 IST 2026
[2026-10-28 20:49:07,116.116 INFO    ] ================================================
[2026-10-28 20:49:07,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:49:07
[2026-10-28 20:49:08,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:49:08,577.577 INFO    ] Initializing speech engine...
[2026-10-28 20:49:08,583.583 INFO    ] 2026-10-28 20:49:08
[2026-10-28 20:49:08,845.845 INFO    ] 2026-10-28 20:49:08
[2026-10-28 20:49:08,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:49:09,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:49:09,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:49:09,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:49:09,430.430 INFO    ] time= 28/10/2026 20:49:09
[2026-10-28 20:49:09,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:49:09,445.445 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:49:09,562.562 INFO    ] No existing commands found in stream
[2026-10-28 20:49:14,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:49:14,595.595 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-28 20:49:16,064.064 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:49:16,066.066 INFO    ] Checking for system updates...
[2026-10-28 20:49:16,103.103 INFO    ] 200
[2026-10-28 20:49:16,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:49:16,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:49:16,165.165 INFO    ] No update needed
[2026-10-28 20:49:16,167.167 INFO    ] Checking for camera pi updates...
[2026-10-28 20:49:16,201.201 INFO    ] 200
[2026-10-28 20:49:16,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:49:16,244.244 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:49:16,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:49:16,332.332 INFO    ] No camera update needed
[2026-10-28 20:49:16,335.335 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:49:16,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:49:16,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:49:16,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:49:18,387.387 INFO    ] ================================================
[2026-10-28 20:49:18,402.402 INFO    ] Launching Daemon at Wed Oct 28 20:49:18 IST 2026
[2026-10-28 20:49:18,413.413 INFO    ] ================================================
[2026-10-28 20:49:19,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:49:19
[2026-10-28 20:49:19,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:49:19,991.991 INFO    ] Initializing speech engine...
[2026-10-28 20:49:19,999.999 INFO    ] 2026-10-28 20:49:19
[2026-10-28 20:49:20,260.260 INFO    ] 2026-10-28 20:49:20
[2026-10-28 20:49:20,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:49:20,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:49:20,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:49:20,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:49:21,012.012 INFO    ] time= 28/10/2026 20:49:20
[2026-10-28 20:49:21,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:49:21,103.103 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:49:21,235.235 INFO    ] No existing commands found in stream
[2026-10-28 20:49:26,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:49:26,256.256 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-28 20:49:29,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:49:29,774.774 INFO    ] Checking for system updates...
[2026-10-28 20:49:29,810.810 INFO    ] 200
[2026-10-28 20:49:29,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:49:29,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:49:29,871.871 INFO    ] No update needed
[2026-10-28 20:49:29,874.874 INFO    ] Checking for camera pi updates...
[2026-10-28 20:49:29,908.908 INFO    ] 200
[2026-10-28 20:49:29,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:49:29,953.953 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:49:30,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:49:30,035.035 INFO    ] No camera update needed
[2026-10-28 20:49:30,038.038 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:49:30,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:49:30,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:49:30,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:49:32,098.098 INFO    ] ================================================
[2026-10-28 20:49:32,116.116 INFO    ] Launching Daemon at Wed Oct 28 20:49:32 IST 2026
[2026-10-28 20:49:32,129.129 INFO    ] ================================================
[2026-10-28 20:49:32,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:49:32
[2026-10-28 20:49:33,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:49:33,604.604 INFO    ] Initializing speech engine...
[2026-10-28 20:49:33,612.612 INFO    ] 2026-10-28 20:49:33
[2026-10-28 20:49:33,860.860 INFO    ] 2026-10-28 20:49:33
[2026-10-28 20:49:33,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:49:34,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:49:34,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:49:34,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:49:34,428.428 INFO    ] time= 28/10/2026 20:49:34
[2026-10-28 20:49:34,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:49:34,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:49:34,660.660 INFO    ] No existing commands found in stream
[2026-10-28 20:49:39,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:49:39,693.693 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-28 20:49:43,969.969 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:49:43,971.971 INFO    ] Checking for system updates...
[2026-10-28 20:49:44,010.010 INFO    ] 200
[2026-10-28 20:49:44,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:49:44,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:49:44,075.075 INFO    ] No update needed
[2026-10-28 20:49:44,077.077 INFO    ] Checking for camera pi updates...
[2026-10-28 20:49:44,110.110 INFO    ] 200
[2026-10-28 20:49:44,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:49:44,152.152 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:49:44,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:49:44,333.333 INFO    ] No camera update needed
[2026-10-28 20:49:44,336.336 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:49:44,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:49:44,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:49:44,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:49:46,390.390 INFO    ] ================================================
[2026-10-28 20:49:46,405.405 INFO    ] Launching Daemon at Wed Oct 28 20:49:46 IST 2026
[2026-10-28 20:49:46,416.416 INFO    ] ================================================
[2026-10-28 20:49:47,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:49:47
[2026-10-28 20:49:47,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:49:47,936.936 INFO    ] Initializing speech engine...
[2026-10-28 20:49:47,945.945 INFO    ] 2026-10-28 20:49:47
[2026-10-28 20:49:48,204.204 INFO    ] 2026-10-28 20:49:48
[2026-10-28 20:49:48,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:49:48,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:49:48,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:49:48,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:49:48,763.763 INFO    ] time= 28/10/2026 20:49:48
[2026-10-28 20:49:48,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:49:48,790.790 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:49:48,928.928 INFO    ] No existing commands found in stream
[2026-10-28 20:49:53,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:49:53,962.962 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-28 20:49:58,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:49:58,205.205 INFO    ] Checking for system updates...
[2026-10-28 20:49:58,245.245 INFO    ] 200
[2026-10-28 20:49:58,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:49:58,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:49:58,303.303 INFO    ] No update needed
[2026-10-28 20:49:58,306.306 INFO    ] Checking for camera pi updates...
[2026-10-28 20:49:58,339.339 INFO    ] 200
[2026-10-28 20:49:58,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:49:58,382.382 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:49:58,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:49:58,460.460 INFO    ] No camera update needed
[2026-10-28 20:49:58,462.462 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:49:58,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:49:58,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:49:58,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:50:00,517.517 INFO    ] ================================================
[2026-10-28 20:50:00,532.532 INFO    ] Launching Daemon at Wed Oct 28 20:50:00 IST 2026
[2026-10-28 20:50:00,544.544 INFO    ] ================================================
[2026-10-28 20:50:01,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:50:01
[2026-10-28 20:50:02,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:50:02,628.628 INFO    ] Initializing speech engine...
[2026-10-28 20:50:02,632.632 INFO    ] 2026-10-28 20:50:02
[2026-10-28 20:50:03,017.017 INFO    ] 2026-10-28 20:50:03
[2026-10-28 20:50:03,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:50:03,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:50:03,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:50:03,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:50:03,523.523 INFO    ] time= 28/10/2026 20:50:03
[2026-10-28 20:50:03,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:50:03,560.560 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:50:03,736.736 INFO    ] No existing commands found in stream
[2026-10-28 20:50:08,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:50:08,764.764 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-28 20:50:10,330.330 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:50:10,333.333 INFO    ] Checking for system updates...
[2026-10-28 20:50:10,372.372 INFO    ] 200
[2026-10-28 20:50:10,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:50:10,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:50:10,438.438 INFO    ] No update needed
[2026-10-28 20:50:10,440.440 INFO    ] Checking for camera pi updates...
[2026-10-28 20:50:10,479.479 INFO    ] 200
[2026-10-28 20:50:10,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:50:10,527.527 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:50:10,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:50:10,660.660 INFO    ] No camera update needed
[2026-10-28 20:50:10,663.663 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:50:10,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:50:10,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:50:10,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:50:12,716.716 INFO    ] ================================================
[2026-10-28 20:50:12,731.731 INFO    ] Launching Daemon at Wed Oct 28 20:50:12 IST 2026
[2026-10-28 20:50:12,742.742 INFO    ] ================================================
[2026-10-28 20:50:13,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:50:13
[2026-10-28 20:50:13,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:50:14,140.140 INFO    ] Initializing speech engine...
[2026-10-28 20:50:14,161.161 INFO    ] 2026-10-28 20:50:14
[2026-10-28 20:50:14,425.425 INFO    ] 2026-10-28 20:50:14
[2026-10-28 20:50:14,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:50:14,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:50:14,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:50:14,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:50:14,977.977 INFO    ] time= 28/10/2026 20:50:14
[2026-10-28 20:50:14,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:50:15,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:50:15,133.133 INFO    ] No existing commands found in stream
[2026-10-28 20:50:20,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:50:20,158.158 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-28 20:50:24,579.579 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:50:24,581.581 INFO    ] Checking for system updates...
[2026-10-28 20:50:24,621.621 INFO    ] 200
[2026-10-28 20:50:24,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:50:24,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:50:24,677.677 INFO    ] No update needed
[2026-10-28 20:50:24,680.680 INFO    ] Checking for camera pi updates...
[2026-10-28 20:50:24,717.717 INFO    ] 200
[2026-10-28 20:50:24,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:50:24,760.760 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:50:24,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:50:24,842.842 INFO    ] No camera update needed
[2026-10-28 20:50:24,845.845 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:50:24,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:50:24,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:50:24,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:50:26,898.898 INFO    ] ================================================
[2026-10-28 20:50:26,914.914 INFO    ] Launching Daemon at Wed Oct 28 20:50:26 IST 2026
[2026-10-28 20:50:26,925.925 INFO    ] ================================================
[2026-10-28 20:50:27,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:50:27
[2026-10-28 20:50:28,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:50:28,351.351 INFO    ] Initializing speech engine...
[2026-10-28 20:50:28,363.363 INFO    ] 2026-10-28 20:50:28
[2026-10-28 20:50:28,610.610 INFO    ] 2026-10-28 20:50:28
[2026-10-28 20:50:28,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:50:28,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:50:28,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:50:29,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:50:29,164.164 INFO    ] time= 28/10/2026 20:50:29
[2026-10-28 20:50:29,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:50:29,205.205 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:50:29,335.335 INFO    ] No existing commands found in stream
[2026-10-28 20:50:34,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:50:34,363.363 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 20:50:37,962.962 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:50:37,964.964 INFO    ] Checking for system updates...
[2026-10-28 20:50:38,001.001 INFO    ] 200
[2026-10-28 20:50:38,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:50:38,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:50:38,058.058 INFO    ] No update needed
[2026-10-28 20:50:38,060.060 INFO    ] Checking for camera pi updates...
[2026-10-28 20:50:38,098.098 INFO    ] 200
[2026-10-28 20:50:38,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:50:38,140.140 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:50:38,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:50:38,248.248 INFO    ] No camera update needed
[2026-10-28 20:50:38,250.250 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:50:38,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:50:38,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:50:38,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:50:40,303.303 INFO    ] ================================================
[2026-10-28 20:50:40,318.318 INFO    ] Launching Daemon at Wed Oct 28 20:50:40 IST 2026
[2026-10-28 20:50:40,329.329 INFO    ] ================================================
[2026-10-28 20:50:40,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:50:40
[2026-10-28 20:50:41,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:50:41,770.770 INFO    ] Initializing speech engine...
[2026-10-28 20:50:41,777.777 INFO    ] 2026-10-28 20:50:41
[2026-10-28 20:50:42,057.057 INFO    ] 2026-10-28 20:50:42
[2026-10-28 20:50:42,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:50:42,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:50:42,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:50:42,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:50:42,616.616 INFO    ] time= 28/10/2026 20:50:42
[2026-10-28 20:50:42,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:50:42,662.662 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:50:42,774.774 INFO    ] No existing commands found in stream
[2026-10-28 20:50:47,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:50:47,806.806 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 20:50:50,522.522 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:50:50,525.525 INFO    ] Checking for system updates...
[2026-10-28 20:50:50,561.561 INFO    ] 200
[2026-10-28 20:50:50,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:50:50,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:50:50,635.635 INFO    ] No update needed
[2026-10-28 20:50:50,637.637 INFO    ] Checking for camera pi updates...
[2026-10-28 20:50:50,675.675 INFO    ] 200
[2026-10-28 20:50:50,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:50:50,718.718 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:50:50,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:50:50,822.822 INFO    ] No camera update needed
[2026-10-28 20:50:50,824.824 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:50:50,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:50:50,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:50:50,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:50:52,878.878 INFO    ] ================================================
[2026-10-28 20:50:52,893.893 INFO    ] Launching Daemon at Wed Oct 28 20:50:52 IST 2026
[2026-10-28 20:50:52,904.904 INFO    ] ================================================
[2026-10-28 20:50:53,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:50:53
[2026-10-28 20:50:54,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:50:54,545.545 INFO    ] Initializing speech engine...
[2026-10-28 20:50:54,557.557 INFO    ] 2026-10-28 20:50:54
[2026-10-28 20:50:54,867.867 INFO    ] 2026-10-28 20:50:54
[2026-10-28 20:50:54,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:50:55,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:50:55,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:50:55,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:50:55,419.419 INFO    ] time= 28/10/2026 20:50:55
[2026-10-28 20:50:55,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:50:55,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:50:55,568.568 INFO    ] No existing commands found in stream
[2026-10-28 20:51:00,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:51:00,608.608 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 20:51:04,126.126 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:51:04,129.129 INFO    ] Checking for system updates...
[2026-10-28 20:51:04,165.165 INFO    ] 200
[2026-10-28 20:51:04,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:51:04,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:51:04,232.232 INFO    ] No update needed
[2026-10-28 20:51:04,235.235 INFO    ] Checking for camera pi updates...
[2026-10-28 20:51:04,269.269 INFO    ] 200
[2026-10-28 20:51:04,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:51:04,313.313 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:51:04,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:51:04,404.404 INFO    ] No camera update needed
[2026-10-28 20:51:04,406.406 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:51:04,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:51:04,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:51:04,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:51:06,464.464 INFO    ] ================================================
[2026-10-28 20:51:06,480.480 INFO    ] Launching Daemon at Wed Oct 28 20:51:06 IST 2026
[2026-10-28 20:51:06,490.490 INFO    ] ================================================
[2026-10-28 20:51:07,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:51:07
[2026-10-28 20:51:07,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:51:07,941.941 INFO    ] Initializing speech engine...
[2026-10-28 20:51:07,950.950 INFO    ] 2026-10-28 20:51:07
[2026-10-28 20:51:08,204.204 INFO    ] 2026-10-28 20:51:08
[2026-10-28 20:51:08,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:51:08,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:51:08,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:51:08,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:51:08,946.946 INFO    ] time= 28/10/2026 20:51:08
[2026-10-28 20:51:08,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:51:09,051.051 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:51:09,188.188 INFO    ] No existing commands found in stream
[2026-10-28 20:51:14,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:51:14,201.201 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-28 20:51:16,869.869 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:51:16,872.872 INFO    ] Checking for system updates...
[2026-10-28 20:51:16,909.909 INFO    ] 200
[2026-10-28 20:51:16,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:51:16,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:51:16,968.968 INFO    ] No update needed
[2026-10-28 20:51:16,971.971 INFO    ] Checking for camera pi updates...
[2026-10-28 20:51:17,004.004 INFO    ] 200
[2026-10-28 20:51:17,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:51:17,047.047 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:51:17,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:51:17,141.141 INFO    ] No camera update needed
[2026-10-28 20:51:17,143.143 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:51:17,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:51:17,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:51:17,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:51:19,199.199 INFO    ] ================================================
[2026-10-28 20:51:19,215.215 INFO    ] Launching Daemon at Wed Oct 28 20:51:19 IST 2026
[2026-10-28 20:51:19,227.227 INFO    ] ================================================
[2026-10-28 20:51:19,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:51:19
[2026-10-28 20:51:20,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:51:20,623.623 INFO    ] Initializing speech engine...
[2026-10-28 20:51:20,635.635 INFO    ] 2026-10-28 20:51:20
[2026-10-28 20:51:20,924.924 INFO    ] 2026-10-28 20:51:20
[2026-10-28 20:51:20,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:51:21,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:51:21,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:51:21,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:51:21,497.497 INFO    ] time= 28/10/2026 20:51:21
[2026-10-28 20:51:21,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:51:21,522.522 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:51:21,678.678 INFO    ] No existing commands found in stream
[2026-10-28 20:51:26,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:51:26,706.706 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 20:51:31,086.086 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:51:31,089.089 INFO    ] Checking for system updates...
[2026-10-28 20:51:31,127.127 INFO    ] 200
[2026-10-28 20:51:31,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:51:31,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:51:31,194.194 INFO    ] No update needed
[2026-10-28 20:51:31,197.197 INFO    ] Checking for camera pi updates...
[2026-10-28 20:51:31,232.232 INFO    ] 200
[2026-10-28 20:51:31,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:51:31,286.286 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:51:31,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:51:31,382.382 INFO    ] No camera update needed
[2026-10-28 20:51:31,385.385 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:51:31,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:51:31,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:51:31,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:51:33,451.451 INFO    ] ================================================
[2026-10-28 20:51:33,466.466 INFO    ] Launching Daemon at Wed Oct 28 20:51:33 IST 2026
[2026-10-28 20:51:33,477.477 INFO    ] ================================================
[2026-10-28 20:51:34,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:51:34
[2026-10-28 20:51:34,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:51:34,906.906 INFO    ] Initializing speech engine...
[2026-10-28 20:51:34,914.914 INFO    ] 2026-10-28 20:51:34
[2026-10-28 20:51:35,214.214 INFO    ] 2026-10-28 20:51:35
[2026-10-28 20:51:35,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:51:35,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:51:35,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:51:35,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:51:35,785.785 INFO    ] time= 28/10/2026 20:51:35
[2026-10-28 20:51:35,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:51:35,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:51:35,956.956 INFO    ] No existing commands found in stream
[2026-10-28 20:51:40,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:51:40,989.989 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-28 20:51:42,280.280 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:51:42,283.283 INFO    ] Checking for system updates...
[2026-10-28 20:51:42,323.323 INFO    ] 200
[2026-10-28 20:51:42,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:51:42,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:51:42,380.380 INFO    ] No update needed
[2026-10-28 20:51:42,383.383 INFO    ] Checking for camera pi updates...
[2026-10-28 20:51:42,417.417 INFO    ] 200
[2026-10-28 20:51:42,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:51:42,460.460 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:51:42,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:51:42,557.557 INFO    ] No camera update needed
[2026-10-28 20:51:42,559.559 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:51:42,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:51:42,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:51:42,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:51:44,613.613 INFO    ] ================================================
[2026-10-28 20:51:44,629.629 INFO    ] Launching Daemon at Wed Oct 28 20:51:44 IST 2026
[2026-10-28 20:51:44,640.640 INFO    ] ================================================
[2026-10-28 20:51:45,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:51:45
[2026-10-28 20:51:45,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:51:46,054.054 INFO    ] Initializing speech engine...
[2026-10-28 20:51:46,073.073 INFO    ] 2026-10-28 20:51:46
[2026-10-28 20:51:46,324.324 INFO    ] 2026-10-28 20:51:46
[2026-10-28 20:51:46,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:51:46,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:51:46,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:51:46,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:51:46,897.897 INFO    ] time= 28/10/2026 20:51:46
[2026-10-28 20:51:46,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:51:46,927.927 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:51:47,055.055 INFO    ] No existing commands found in stream
[2026-10-28 20:51:52,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:51:52,078.078 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-28 20:51:53,530.530 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:51:53,533.533 INFO    ] Checking for system updates...
[2026-10-28 20:51:53,572.572 INFO    ] 200
[2026-10-28 20:51:53,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:51:53,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:51:53,640.640 INFO    ] No update needed
[2026-10-28 20:51:53,643.643 INFO    ] Checking for camera pi updates...
[2026-10-28 20:51:53,683.683 INFO    ] 200
[2026-10-28 20:51:53,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:51:53,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:51:53,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:51:53,934.934 INFO    ] No camera update needed
[2026-10-28 20:51:53,937.937 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:51:53,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:51:53,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:51:53,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:51:55,989.989 INFO    ] ================================================
[2026-10-28 20:51:56,004.004 INFO    ] Launching Daemon at Wed Oct 28 20:51:55 IST 2026
[2026-10-28 20:51:56,016.016 INFO    ] ================================================
[2026-10-28 20:51:56,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:51:56
[2026-10-28 20:51:57,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:51:57,523.523 INFO    ] Initializing speech engine...
[2026-10-28 20:51:57,532.532 INFO    ] 2026-10-28 20:51:57
[2026-10-28 20:51:57,779.779 INFO    ] 2026-10-28 20:51:57
[2026-10-28 20:51:57,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:51:58,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:51:58,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:51:58,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:51:58,349.349 INFO    ] time= 28/10/2026 20:51:58
[2026-10-28 20:51:58,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:51:58,384.384 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:51:58,516.516 INFO    ] No existing commands found in stream
[2026-10-28 20:52:03,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:52:03,548.548 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 20:52:07,222.222 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:52:07,225.225 INFO    ] Checking for system updates...
[2026-10-28 20:52:07,260.260 INFO    ] 200
[2026-10-28 20:52:07,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:52:07,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:52:07,317.317 INFO    ] No update needed
[2026-10-28 20:52:07,319.319 INFO    ] Checking for camera pi updates...
[2026-10-28 20:52:07,353.353 INFO    ] 200
[2026-10-28 20:52:07,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:52:07,396.396 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:52:07,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:52:07,480.480 INFO    ] No camera update needed
[2026-10-28 20:52:07,483.483 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:52:07,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:52:07,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:52:07,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:52:09,538.538 INFO    ] ================================================
[2026-10-28 20:52:09,554.554 INFO    ] Launching Daemon at Wed Oct 28 20:52:09 IST 2026
[2026-10-28 20:52:09,565.565 INFO    ] ================================================
[2026-10-28 20:52:10,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:52:10
[2026-10-28 20:52:10,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:52:10,973.973 INFO    ] Initializing speech engine...
[2026-10-28 20:52:10,979.979 INFO    ] 2026-10-28 20:52:10
[2026-10-28 20:52:11,251.251 INFO    ] 2026-10-28 20:52:11
[2026-10-28 20:52:11,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:52:11,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:52:11,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:52:11,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:52:11,965.965 INFO    ] time= 28/10/2026 20:52:11
[2026-10-28 20:52:12,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:52:12,056.056 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:52:12,223.223 INFO    ] No existing commands found in stream
[2026-10-28 20:52:17,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:52:17,256.256 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 20:52:21,522.522 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:52:21,524.524 INFO    ] Checking for system updates...
[2026-10-28 20:52:21,564.564 INFO    ] 200
[2026-10-28 20:52:21,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:52:21,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:52:21,624.624 INFO    ] No update needed
[2026-10-28 20:52:21,627.627 INFO    ] Checking for camera pi updates...
[2026-10-28 20:52:21,668.668 INFO    ] 200
[2026-10-28 20:52:21,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:52:21,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:52:21,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:52:21,837.837 INFO    ] No camera update needed
[2026-10-28 20:52:21,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:52:21,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:52:21,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:52:21,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:52:23,897.897 INFO    ] ================================================
[2026-10-28 20:52:23,913.913 INFO    ] Launching Daemon at Wed Oct 28 20:52:23 IST 2026
[2026-10-28 20:52:23,925.925 INFO    ] ================================================
[2026-10-28 20:52:24,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:52:24
[2026-10-28 20:52:25,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:52:25,565.565 INFO    ] Initializing speech engine...
[2026-10-28 20:52:25,584.584 INFO    ] 2026-10-28 20:52:25
[2026-10-28 20:52:25,846.846 INFO    ] 2026-10-28 20:52:25
[2026-10-28 20:52:25,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:52:26,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:52:26,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:52:26,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:52:26,418.418 INFO    ] time= 28/10/2026 20:52:26
[2026-10-28 20:52:26,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:52:26,443.443 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:52:26,583.583 INFO    ] No existing commands found in stream
[2026-10-28 20:52:31,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:52:31,609.609 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 20:52:34,961.961 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:52:34,965.965 INFO    ] Checking for system updates...
[2026-10-28 20:52:35,008.008 INFO    ] 200
[2026-10-28 20:52:35,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:52:35,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:52:35,081.081 INFO    ] No update needed
[2026-10-28 20:52:35,083.083 INFO    ] Checking for camera pi updates...
[2026-10-28 20:52:35,121.121 INFO    ] 200
[2026-10-28 20:52:35,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:52:35,164.164 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:52:35,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:52:35,257.257 INFO    ] No camera update needed
[2026-10-28 20:52:35,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:52:35,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:52:35,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:52:35,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:52:37,313.313 INFO    ] ================================================
[2026-10-28 20:52:37,328.328 INFO    ] Launching Daemon at Wed Oct 28 20:52:37 IST 2026
[2026-10-28 20:52:37,339.339 INFO    ] ================================================
[2026-10-28 20:52:37,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:52:37
[2026-10-28 20:52:38,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:52:38,757.757 INFO    ] Initializing speech engine...
[2026-10-28 20:52:38,772.772 INFO    ] 2026-10-28 20:52:38
[2026-10-28 20:52:39,038.038 INFO    ] 2026-10-28 20:52:39
[2026-10-28 20:52:39,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:52:39,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:52:39,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:52:39,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:52:39,754.754 INFO    ] time= 28/10/2026 20:52:39
[2026-10-28 20:52:39,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:52:39,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:52:39,991.991 INFO    ] No existing commands found in stream
[2026-10-28 20:52:45,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:52:45,008.008 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-10-28 20:52:48,842.842 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:52:48,845.845 INFO    ] Checking for system updates...
[2026-10-28 20:52:48,880.880 INFO    ] 200
[2026-10-28 20:52:48,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:52:48,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:52:48,939.939 INFO    ] No update needed
[2026-10-28 20:52:48,941.941 INFO    ] Checking for camera pi updates...
[2026-10-28 20:52:48,977.977 INFO    ] 200
[2026-10-28 20:52:48,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:52:49,021.021 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:52:49,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:52:49,104.104 INFO    ] No camera update needed
[2026-10-28 20:52:49,106.106 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:52:49,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:52:49,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:52:49,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:52:51,161.161 INFO    ] ================================================
[2026-10-28 20:52:51,176.176 INFO    ] Launching Daemon at Wed Oct 28 20:52:51 IST 2026
[2026-10-28 20:52:51,188.188 INFO    ] ================================================
[2026-10-28 20:52:51,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:52:51
[2026-10-28 20:52:52,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:52:52,579.579 INFO    ] Initializing speech engine...
[2026-10-28 20:52:52,603.603 INFO    ] 2026-10-28 20:52:52
[2026-10-28 20:52:52,854.854 INFO    ] 2026-10-28 20:52:52
[2026-10-28 20:52:52,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:52:53,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:52:53,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:52:53,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:52:53,422.422 INFO    ] time= 28/10/2026 20:52:53
[2026-10-28 20:52:53,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:52:53,457.457 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:52:53,585.585 INFO    ] No existing commands found in stream
[2026-10-28 20:52:58,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:52:58,618.618 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 20:53:01,002.002 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:53:01,004.004 INFO    ] Checking for system updates...
[2026-10-28 20:53:01,045.045 INFO    ] 200
[2026-10-28 20:53:01,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:53:01,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:53:01,109.109 INFO    ] No update needed
[2026-10-28 20:53:01,112.112 INFO    ] Checking for camera pi updates...
[2026-10-28 20:53:01,147.147 INFO    ] 200
[2026-10-28 20:53:01,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:53:01,197.197 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:53:01,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:53:01,280.280 INFO    ] No camera update needed
[2026-10-28 20:53:01,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:53:01,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:53:01,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:53:01,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:53:03,343.343 INFO    ] ================================================
[2026-10-28 20:53:03,359.359 INFO    ] Launching Daemon at Wed Oct 28 20:53:03 IST 2026
[2026-10-28 20:53:03,370.370 INFO    ] ================================================
[2026-10-28 20:53:04,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:53:04
[2026-10-28 20:53:04,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:53:05,045.045 INFO    ] Initializing speech engine...
[2026-10-28 20:53:05,054.054 INFO    ] 2026-10-28 20:53:05
[2026-10-28 20:53:05,336.336 INFO    ] 2026-10-28 20:53:05
[2026-10-28 20:53:05,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:53:05,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:53:05,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:53:05,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:53:05,935.935 INFO    ] time= 28/10/2026 20:53:05
[2026-10-28 20:53:05,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:53:05,955.955 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:53:06,111.111 INFO    ] No existing commands found in stream
[2026-10-28 20:53:11,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:53:11,151.151 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-10-28 20:53:13,973.973 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:53:13,976.976 INFO    ] Checking for system updates...
[2026-10-28 20:53:14,017.017 INFO    ] 200
[2026-10-28 20:53:14,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:53:14,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:53:14,084.084 INFO    ] No update needed
[2026-10-28 20:53:14,087.087 INFO    ] Checking for camera pi updates...
[2026-10-28 20:53:14,122.122 INFO    ] 200
[2026-10-28 20:53:14,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:53:14,166.166 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:53:14,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:53:14,271.271 INFO    ] No camera update needed
[2026-10-28 20:53:14,274.274 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:53:14,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:53:14,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:53:14,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:53:16,332.332 INFO    ] ================================================
[2026-10-28 20:53:16,348.348 INFO    ] Launching Daemon at Wed Oct 28 20:53:16 IST 2026
[2026-10-28 20:53:16,360.360 INFO    ] ================================================
[2026-10-28 20:53:16,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:53:16
[2026-10-28 20:53:17,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:53:17,786.786 INFO    ] Initializing speech engine...
[2026-10-28 20:53:17,806.806 INFO    ] 2026-10-28 20:53:17
[2026-10-28 20:53:18,075.075 INFO    ] 2026-10-28 20:53:18
[2026-10-28 20:53:18,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:53:18,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:53:18,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:53:18,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:53:18,711.711 INFO    ] time= 28/10/2026 20:53:18
[2026-10-28 20:53:18,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:53:18,738.738 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:53:18,859.859 INFO    ] No existing commands found in stream
[2026-10-28 20:53:23,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:53:23,897.897 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 20:53:26,882.882 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:53:26,885.885 INFO    ] Checking for system updates...
[2026-10-28 20:53:26,921.921 INFO    ] 200
[2026-10-28 20:53:26,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:53:26,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:53:26,989.989 INFO    ] No update needed
[2026-10-28 20:53:26,992.992 INFO    ] Checking for camera pi updates...
[2026-10-28 20:53:27,030.030 INFO    ] 200
[2026-10-28 20:53:27,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:53:27,102.102 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:53:27,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:53:27,157.157 INFO    ] No camera update needed
[2026-10-28 20:53:27,160.160 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:53:27,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:53:27,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:53:27,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:53:29,219.219 INFO    ] ================================================
[2026-10-28 20:53:29,235.235 INFO    ] Launching Daemon at Wed Oct 28 20:53:29 IST 2026
[2026-10-28 20:53:29,246.246 INFO    ] ================================================
[2026-10-28 20:53:29,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:53:29
[2026-10-28 20:53:30,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:53:30,799.799 INFO    ] Initializing speech engine...
[2026-10-28 20:53:30,808.808 INFO    ] 2026-10-28 20:53:30
[2026-10-28 20:53:31,110.110 INFO    ] 2026-10-28 20:53:31
[2026-10-28 20:53:31,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:53:31,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:53:31,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:53:31,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:53:31,767.767 INFO    ] time= 28/10/2026 20:53:31
[2026-10-28 20:53:31,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:53:31,811.811 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:53:31,928.928 INFO    ] No existing commands found in stream
[2026-10-28 20:53:36,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:53:36,949.949 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-28 20:53:38,242.242 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:53:38,244.244 INFO    ] Checking for system updates...
[2026-10-28 20:53:38,281.281 INFO    ] 200
[2026-10-28 20:53:38,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:53:38,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:53:38,339.339 INFO    ] No update needed
[2026-10-28 20:53:38,342.342 INFO    ] Checking for camera pi updates...
[2026-10-28 20:53:38,377.377 INFO    ] 200
[2026-10-28 20:53:38,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:53:38,422.422 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:53:38,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:53:38,506.506 INFO    ] No camera update needed
[2026-10-28 20:53:38,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:53:38,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:53:38,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:53:38,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:53:40,563.563 INFO    ] ================================================
[2026-10-28 20:53:40,579.579 INFO    ] Launching Daemon at Wed Oct 28 20:53:40 IST 2026
[2026-10-28 20:53:40,591.591 INFO    ] ================================================
[2026-10-28 20:53:41,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:53:41
[2026-10-28 20:53:41,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:53:42,038.038 INFO    ] Initializing speech engine...
[2026-10-28 20:53:42,050.050 INFO    ] 2026-10-28 20:53:42
[2026-10-28 20:53:42,301.301 INFO    ] 2026-10-28 20:53:42
[2026-10-28 20:53:42,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:53:42,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:53:42,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:53:42,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:53:42,858.858 INFO    ] time= 28/10/2026 20:53:42
[2026-10-28 20:53:42,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:53:42,905.905 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:53:43,026.026 INFO    ] No existing commands found in stream
[2026-10-28 20:53:48,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:53:48,054.054 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-10-28 20:53:52,042.042 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:53:52,044.044 INFO    ] Checking for system updates...
[2026-10-28 20:53:52,082.082 INFO    ] 200
[2026-10-28 20:53:52,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:53:52,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:53:52,142.142 INFO    ] No update needed
[2026-10-28 20:53:52,144.144 INFO    ] Checking for camera pi updates...
[2026-10-28 20:53:52,188.188 INFO    ] 200
[2026-10-28 20:53:52,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:53:52,232.232 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:53:52,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:53:52,338.338 INFO    ] No camera update needed
[2026-10-28 20:53:52,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:53:52,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:53:52,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:53:52,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:53:54,397.397 INFO    ] ================================================
[2026-10-28 20:53:54,412.412 INFO    ] Launching Daemon at Wed Oct 28 20:53:54 IST 2026
[2026-10-28 20:53:54,422.422 INFO    ] ================================================
[2026-10-28 20:53:54,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:53:54
[2026-10-28 20:53:55,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:53:55,835.835 INFO    ] Initializing speech engine...
[2026-10-28 20:53:55,843.843 INFO    ] 2026-10-28 20:53:55
[2026-10-28 20:53:56,117.117 INFO    ] 2026-10-28 20:53:56
[2026-10-28 20:53:56,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:53:56,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:53:56,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:53:56,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:53:56,672.672 INFO    ] time= 28/10/2026 20:53:56
[2026-10-28 20:53:56,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:53:56,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:53:56,888.888 INFO    ] No existing commands found in stream
[2026-10-28 20:54:01,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:54:01,919.919 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 20:54:05,853.853 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:54:05,855.855 INFO    ] Checking for system updates...
[2026-10-28 20:54:05,892.892 INFO    ] 200
[2026-10-28 20:54:05,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:54:05,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:54:05,956.956 INFO    ] No update needed
[2026-10-28 20:54:05,958.958 INFO    ] Checking for camera pi updates...
[2026-10-28 20:54:05,992.992 INFO    ] 200
[2026-10-28 20:54:05,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:54:06,035.035 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:54:06,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:54:06,129.129 INFO    ] No camera update needed
[2026-10-28 20:54:06,131.131 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:54:06,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:54:06,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:54:06,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:54:08,186.186 INFO    ] ================================================
[2026-10-28 20:54:08,201.201 INFO    ] Launching Daemon at Wed Oct 28 20:54:08 IST 2026
[2026-10-28 20:54:08,212.212 INFO    ] ================================================
[2026-10-28 20:54:08,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:54:08
[2026-10-28 20:54:09,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:54:09,857.857 INFO    ] Initializing speech engine...
[2026-10-28 20:54:09,871.871 INFO    ] 2026-10-28 20:54:09
[2026-10-28 20:54:10,159.159 INFO    ] 2026-10-28 20:54:10
[2026-10-28 20:54:10,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:54:10,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:54:10,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:54:10,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:54:10,778.778 INFO    ] time= 28/10/2026 20:54:10
[2026-10-28 20:54:10,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:54:10,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:54:10,904.904 INFO    ] No existing commands found in stream
[2026-10-28 20:54:15,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:54:15,924.924 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 20:54:19,042.042 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:54:19,045.045 INFO    ] Checking for system updates...
[2026-10-28 20:54:19,081.081 INFO    ] 200
[2026-10-28 20:54:19,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:54:19,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:54:19,142.142 INFO    ] No update needed
[2026-10-28 20:54:19,145.145 INFO    ] Checking for camera pi updates...
[2026-10-28 20:54:19,180.180 INFO    ] 200
[2026-10-28 20:54:19,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:54:19,224.224 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:54:19,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:54:19,309.309 INFO    ] No camera update needed
[2026-10-28 20:54:19,312.312 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:54:19,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:54:19,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:54:19,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:54:21,369.369 INFO    ] ================================================
[2026-10-28 20:54:21,385.385 INFO    ] Launching Daemon at Wed Oct 28 20:54:21 IST 2026
[2026-10-28 20:54:21,396.396 INFO    ] ================================================
[2026-10-28 20:54:21,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:54:21
[2026-10-28 20:54:22,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:54:22,813.813 INFO    ] Initializing speech engine...
[2026-10-28 20:54:22,819.819 INFO    ] 2026-10-28 20:54:22
[2026-10-28 20:54:23,120.120 INFO    ] 2026-10-28 20:54:23
[2026-10-28 20:54:23,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:54:23,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:54:23,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:54:23,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:54:23,739.739 INFO    ] time= 28/10/2026 20:54:23
[2026-10-28 20:54:23,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:54:23,784.784 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:54:23,872.872 INFO    ] No existing commands found in stream
[2026-10-28 20:54:28,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:54:28,912.912 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-28 20:54:33,410.410 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:54:33,413.413 INFO    ] Checking for system updates...
[2026-10-28 20:54:33,449.449 INFO    ] 200
[2026-10-28 20:54:33,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:54:33,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:54:33,508.508 INFO    ] No update needed
[2026-10-28 20:54:33,510.510 INFO    ] Checking for camera pi updates...
[2026-10-28 20:54:33,544.544 INFO    ] 200
[2026-10-28 20:54:33,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:54:33,586.586 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:54:33,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:54:33,689.689 INFO    ] No camera update needed
[2026-10-28 20:54:33,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:54:33,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:54:33,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:54:33,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:54:35,749.749 INFO    ] ================================================
[2026-10-28 20:54:35,765.765 INFO    ] Launching Daemon at Wed Oct 28 20:54:35 IST 2026
[2026-10-28 20:54:35,777.777 INFO    ] ================================================
[2026-10-28 20:54:36,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:54:36
[2026-10-28 20:54:36,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:54:37,178.178 INFO    ] Initializing speech engine...
[2026-10-28 20:54:37,184.184 INFO    ] 2026-10-28 20:54:37
[2026-10-28 20:54:37,475.475 INFO    ] 2026-10-28 20:54:37
[2026-10-28 20:54:37,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:54:37,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:54:37,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:54:38,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:54:38,046.046 INFO    ] time= 28/10/2026 20:54:38
[2026-10-28 20:54:38,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:54:38,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:54:38,208.208 INFO    ] No existing commands found in stream
[2026-10-28 20:54:43,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:54:43,234.234 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-28 20:54:47,482.482 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:54:47,485.485 INFO    ] Checking for system updates...
[2026-10-28 20:54:47,524.524 INFO    ] 200
[2026-10-28 20:54:47,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:54:47,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:54:47,582.582 INFO    ] No update needed
[2026-10-28 20:54:47,585.585 INFO    ] Checking for camera pi updates...
[2026-10-28 20:54:47,619.619 INFO    ] 200
[2026-10-28 20:54:47,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:54:47,661.661 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:54:47,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:54:47,742.742 INFO    ] No camera update needed
[2026-10-28 20:54:47,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:54:47,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:54:47,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:54:47,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:54:49,798.798 INFO    ] ================================================
[2026-10-28 20:54:49,815.815 INFO    ] Launching Daemon at Wed Oct 28 20:54:49 IST 2026
[2026-10-28 20:54:49,825.825 INFO    ] ================================================
[2026-10-28 20:54:50,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:54:50
[2026-10-28 20:54:51,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:54:51,280.280 INFO    ] Initializing speech engine...
[2026-10-28 20:54:51,296.296 INFO    ] 2026-10-28 20:54:51
[2026-10-28 20:54:51,587.587 INFO    ] 2026-10-28 20:54:51
[2026-10-28 20:54:51,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:54:51,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:54:51,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:54:52,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:54:52,224.224 INFO    ] time= 28/10/2026 20:54:52
[2026-10-28 20:54:52,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:54:52,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:54:52,412.412 INFO    ] No existing commands found in stream
[2026-10-28 20:54:57,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:54:57,429.429 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-28 20:55:01,608.608 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:55:01,611.611 INFO    ] Checking for system updates...
[2026-10-28 20:55:01,647.647 INFO    ] 200
[2026-10-28 20:55:01,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:55:01,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:55:01,704.704 INFO    ] No update needed
[2026-10-28 20:55:01,707.707 INFO    ] Checking for camera pi updates...
[2026-10-28 20:55:01,740.740 INFO    ] 200
[2026-10-28 20:55:01,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:55:01,783.783 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:55:01,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:55:02,006.006 INFO    ] No camera update needed
[2026-10-28 20:55:02,011.011 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:55:02,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:55:02,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:55:02,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:55:04,115.115 INFO    ] ================================================
[2026-10-28 20:55:04,130.130 INFO    ] Launching Daemon at Wed Oct 28 20:55:04 IST 2026
[2026-10-28 20:55:04,141.141 INFO    ] ================================================
[2026-10-28 20:55:04,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:55:04
[2026-10-28 20:55:05,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:55:05,596.596 INFO    ] Initializing speech engine...
[2026-10-28 20:55:05,605.605 INFO    ] 2026-10-28 20:55:05
[2026-10-28 20:55:05,853.853 INFO    ] 2026-10-28 20:55:05
[2026-10-28 20:55:05,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:55:06,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:55:06,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:55:06,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:55:06,417.417 INFO    ] time= 28/10/2026 20:55:06
[2026-10-28 20:55:06,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:55:06,442.442 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:55:06,569.569 INFO    ] No existing commands found in stream
[2026-10-28 20:55:11,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:55:11,588.588 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-28 20:55:15,348.348 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 20:55:15,351.351 INFO    ] Checking for system updates...
[2026-10-28 20:55:15,388.388 INFO    ] 200
[2026-10-28 20:55:15,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:55:15,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:55:15,448.448 INFO    ] No update needed
[2026-10-28 20:55:15,451.451 INFO    ] Checking for camera pi updates...
[2026-10-28 20:55:15,490.490 INFO    ] 200
[2026-10-28 20:55:15,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:55:15,535.535 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:55:15,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:55:15,620.620 INFO    ] No camera update needed
[2026-10-28 20:55:15,623.623 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:55:15,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:55:15,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:55:15,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:55:17,681.681 INFO    ] ================================================
[2026-10-28 20:55:17,697.697 INFO    ] Launching Daemon at Wed Oct 28 20:55:17 IST 2026
[2026-10-28 20:55:17,708.708 INFO    ] ================================================
[2026-10-28 20:55:18,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:55:18
[2026-10-28 20:55:19,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:55:19,338.338 INFO    ] Initializing speech engine...
[2026-10-28 20:55:19,345.345 INFO    ] 2026-10-28 20:55:19
[2026-10-28 20:55:19,640.640 INFO    ] 2026-10-28 20:55:19
[2026-10-28 20:55:19,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:55:20,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:55:20,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:55:20,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:55:20,418.418 INFO    ] time= 28/10/2026 20:55:20
[2026-10-28 20:55:20,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:55:20,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:55:20,656.656 INFO    ] No existing commands found in stream
[2026-10-28 20:55:25,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:55:25,675.675 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-28 20:55:29,499.499 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:55:29,502.502 INFO    ] Checking for system updates...
[2026-10-28 20:55:29,539.539 INFO    ] 200
[2026-10-28 20:55:29,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:55:29,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:55:29,598.598 INFO    ] No update needed
[2026-10-28 20:55:29,601.601 INFO    ] Checking for camera pi updates...
[2026-10-28 20:55:29,634.634 INFO    ] 200
[2026-10-28 20:55:29,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:55:29,679.679 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:55:29,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:55:29,784.784 INFO    ] No camera update needed
[2026-10-28 20:55:29,786.786 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:55:29,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:55:29,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:55:29,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:55:31,838.838 INFO    ] ================================================
[2026-10-28 20:55:31,853.853 INFO    ] Launching Daemon at Wed Oct 28 20:55:31 IST 2026
[2026-10-28 20:55:31,863.863 INFO    ] ================================================
[2026-10-28 20:55:32,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:55:32
[2026-10-28 20:55:33,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:55:33,484.484 INFO    ] Initializing speech engine...
[2026-10-28 20:55:33,493.493 INFO    ] 2026-10-28 20:55:33
[2026-10-28 20:55:33,752.752 INFO    ] 2026-10-28 20:55:33
[2026-10-28 20:55:33,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:55:34,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:55:34,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:55:34,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:55:34,316.316 INFO    ] time= 28/10/2026 20:55:34
[2026-10-28 20:55:34,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:55:34,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:55:34,458.458 INFO    ] No existing commands found in stream
[2026-10-28 20:55:39,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:55:39,485.485 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 20:55:43,561.561 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:55:43,564.564 INFO    ] Checking for system updates...
[2026-10-28 20:55:43,599.599 INFO    ] 200
[2026-10-28 20:55:43,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:55:43,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:55:43,656.656 INFO    ] No update needed
[2026-10-28 20:55:43,659.659 INFO    ] Checking for camera pi updates...
[2026-10-28 20:55:43,692.692 INFO    ] 200
[2026-10-28 20:55:43,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:55:43,735.735 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:55:43,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:55:43,820.820 INFO    ] No camera update needed
[2026-10-28 20:55:43,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:55:43,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:55:43,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:55:43,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:55:45,876.876 INFO    ] ================================================
[2026-10-28 20:55:45,891.891 INFO    ] Launching Daemon at Wed Oct 28 20:55:45 IST 2026
[2026-10-28 20:55:45,902.902 INFO    ] ================================================
[2026-10-28 20:55:46,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:55:46
[2026-10-28 20:55:47,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:55:47,327.327 INFO    ] Initializing speech engine...
[2026-10-28 20:55:47,339.339 INFO    ] 2026-10-28 20:55:47
[2026-10-28 20:55:47,592.592 INFO    ] 2026-10-28 20:55:47
[2026-10-28 20:55:47,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:55:47,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:55:47,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:55:48,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:55:48,069.069 INFO    ] time= 28/10/2026 20:55:48
[2026-10-28 20:55:48,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:55:48,163.163 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:55:48,329.329 INFO    ] No existing commands found in stream
[2026-10-28 20:55:53,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:55:53,350.350 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-28 20:55:57,761.761 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:55:57,764.764 INFO    ] Checking for system updates...
[2026-10-28 20:55:57,799.799 INFO    ] 200
[2026-10-28 20:55:57,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:55:57,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:55:57,857.857 INFO    ] No update needed
[2026-10-28 20:55:57,860.860 INFO    ] Checking for camera pi updates...
[2026-10-28 20:55:57,894.894 INFO    ] 200
[2026-10-28 20:55:57,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:55:57,937.937 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:55:58,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:55:58,078.078 INFO    ] No camera update needed
[2026-10-28 20:55:58,080.080 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:55:58,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:55:58,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:55:58,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:56:00,131.131 INFO    ] ================================================
[2026-10-28 20:56:00,147.147 INFO    ] Launching Daemon at Wed Oct 28 20:56:00 IST 2026
[2026-10-28 20:56:00,157.157 INFO    ] ================================================
[2026-10-28 20:56:00,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:56:00
[2026-10-28 20:56:01,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:56:01,767.767 INFO    ] Initializing speech engine...
[2026-10-28 20:56:01,772.772 INFO    ] 2026-10-28 20:56:01
[2026-10-28 20:56:02,131.131 INFO    ] 2026-10-28 20:56:02
[2026-10-28 20:56:02,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:56:02,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:56:02,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:56:02,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:56:02,719.719 INFO    ] time= 28/10/2026 20:56:02
[2026-10-28 20:56:02,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:56:02,741.741 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:56:02,948.948 INFO    ] No existing commands found in stream
[2026-10-28 20:56:07,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:56:07,976.976 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 20:56:09,500.500 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:56:09,502.502 INFO    ] Checking for system updates...
[2026-10-28 20:56:09,538.538 INFO    ] 200
[2026-10-28 20:56:09,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:56:09,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:56:09,603.603 INFO    ] No update needed
[2026-10-28 20:56:09,605.605 INFO    ] Checking for camera pi updates...
[2026-10-28 20:56:09,642.642 INFO    ] 200
[2026-10-28 20:56:09,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:56:09,686.686 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:56:09,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:56:09,860.860 INFO    ] No camera update needed
[2026-10-28 20:56:09,862.862 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:56:09,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:56:09,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:56:09,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:56:11,916.916 INFO    ] ================================================
[2026-10-28 20:56:11,930.930 INFO    ] Launching Daemon at Wed Oct 28 20:56:11 IST 2026
[2026-10-28 20:56:11,941.941 INFO    ] ================================================
[2026-10-28 20:56:12,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:56:12
[2026-10-28 20:56:13,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:56:13,392.392 INFO    ] Initializing speech engine...
[2026-10-28 20:56:13,402.402 INFO    ] 2026-10-28 20:56:13
[2026-10-28 20:56:13,649.649 INFO    ] 2026-10-28 20:56:13
[2026-10-28 20:56:13,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:56:13,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:56:13,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:56:14,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:56:14,203.203 INFO    ] time= 28/10/2026 20:56:14
[2026-10-28 20:56:14,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:56:14,227.227 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:56:14,355.355 INFO    ] No existing commands found in stream
[2026-10-28 20:56:19,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:56:19,373.373 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 20:56:23,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:56:23,271.271 INFO    ] Checking for system updates...
[2026-10-28 20:56:23,307.307 INFO    ] 200
[2026-10-28 20:56:23,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:56:23,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:56:23,363.363 INFO    ] No update needed
[2026-10-28 20:56:23,366.366 INFO    ] Checking for camera pi updates...
[2026-10-28 20:56:23,399.399 INFO    ] 200
[2026-10-28 20:56:23,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:56:23,443.443 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:56:23,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:56:23,536.536 INFO    ] No camera update needed
[2026-10-28 20:56:23,538.538 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:56:23,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:56:23,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:56:23,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:56:25,594.594 INFO    ] ================================================
[2026-10-28 20:56:25,609.609 INFO    ] Launching Daemon at Wed Oct 28 20:56:25 IST 2026
[2026-10-28 20:56:25,620.620 INFO    ] ================================================
[2026-10-28 20:56:26,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:56:26
[2026-10-28 20:56:26,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:56:27,083.083 INFO    ] Initializing speech engine...
[2026-10-28 20:56:27,090.090 INFO    ] 2026-10-28 20:56:27
[2026-10-28 20:56:27,352.352 INFO    ] 2026-10-28 20:56:27
[2026-10-28 20:56:27,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:56:27,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:56:27,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:56:27,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:56:27,900.900 INFO    ] time= 28/10/2026 20:56:27
[2026-10-28 20:56:27,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:56:27,948.948 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:56:28,079.079 INFO    ] No existing commands found in stream
[2026-10-28 20:56:33,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:56:33,112.112 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 20:56:37,009.009 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:56:37,012.012 INFO    ] Checking for system updates...
[2026-10-28 20:56:37,048.048 INFO    ] 200
[2026-10-28 20:56:37,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:56:37,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:56:37,107.107 INFO    ] No update needed
[2026-10-28 20:56:37,109.109 INFO    ] Checking for camera pi updates...
[2026-10-28 20:56:37,143.143 INFO    ] 200
[2026-10-28 20:56:37,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:56:37,191.191 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:56:37,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:56:37,302.302 INFO    ] No camera update needed
[2026-10-28 20:56:37,304.304 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:56:37,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:56:37,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:56:37,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:56:39,359.359 INFO    ] ================================================
[2026-10-28 20:56:39,374.374 INFO    ] Launching Daemon at Wed Oct 28 20:56:39 IST 2026
[2026-10-28 20:56:39,385.385 INFO    ] ================================================
[2026-10-28 20:56:39,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:56:39
[2026-10-28 20:56:40,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:56:40,784.784 INFO    ] Initializing speech engine...
[2026-10-28 20:56:40,792.792 INFO    ] 2026-10-28 20:56:40
[2026-10-28 20:56:41,066.066 INFO    ] 2026-10-28 20:56:41
[2026-10-28 20:56:41,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:56:41,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:56:41,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:56:41,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:56:41,631.631 INFO    ] time= 28/10/2026 20:56:41
[2026-10-28 20:56:41,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:56:41,662.662 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:56:41,802.802 INFO    ] No existing commands found in stream
[2026-10-28 20:56:46,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:56:46,830.830 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-28 20:56:50,562.562 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:56:50,565.565 INFO    ] Checking for system updates...
[2026-10-28 20:56:50,602.602 INFO    ] 200
[2026-10-28 20:56:50,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:56:50,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:56:50,661.661 INFO    ] No update needed
[2026-10-28 20:56:50,664.664 INFO    ] Checking for camera pi updates...
[2026-10-28 20:56:50,702.702 INFO    ] 200
[2026-10-28 20:56:50,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:56:50,756.756 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:56:50,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:56:50,844.844 INFO    ] No camera update needed
[2026-10-28 20:56:50,847.847 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:56:50,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:56:50,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:56:50,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:56:52,904.904 INFO    ] ================================================
[2026-10-28 20:56:52,920.920 INFO    ] Launching Daemon at Wed Oct 28 20:56:52 IST 2026
[2026-10-28 20:56:52,931.931 INFO    ] ================================================
[2026-10-28 20:56:53,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:56:53
[2026-10-28 20:56:54,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:56:54,577.577 INFO    ] Initializing speech engine...
[2026-10-28 20:56:54,583.583 INFO    ] 2026-10-28 20:56:54
[2026-10-28 20:56:54,892.892 INFO    ] 2026-10-28 20:56:54
[2026-10-28 20:56:54,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:56:55,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:56:55,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:56:55,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:56:55,610.610 INFO    ] time= 28/10/2026 20:56:55
[2026-10-28 20:56:55,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:56:55,702.702 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:56:55,835.835 INFO    ] No existing commands found in stream
[2026-10-28 20:57:00,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:57:00,857.857 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-28 20:57:02,226.226 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:57:02,229.229 INFO    ] Checking for system updates...
[2026-10-28 20:57:02,268.268 INFO    ] 200
[2026-10-28 20:57:02,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:57:02,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:57:02,333.333 INFO    ] No update needed
[2026-10-28 20:57:02,336.336 INFO    ] Checking for camera pi updates...
[2026-10-28 20:57:02,383.383 INFO    ] 200
[2026-10-28 20:57:02,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:57:02,441.441 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:57:02,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:57:02,552.552 INFO    ] No camera update needed
[2026-10-28 20:57:02,556.556 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:57:02,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:57:02,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:57:02,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:57:04,618.618 INFO    ] ================================================
[2026-10-28 20:57:04,633.633 INFO    ] Launching Daemon at Wed Oct 28 20:57:04 IST 2026
[2026-10-28 20:57:04,644.644 INFO    ] ================================================
[2026-10-28 20:57:05,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:57:05
[2026-10-28 20:57:05,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:57:06,087.087 INFO    ] Initializing speech engine...
[2026-10-28 20:57:06,094.094 INFO    ] 2026-10-28 20:57:06
[2026-10-28 20:57:06,394.394 INFO    ] 2026-10-28 20:57:06
[2026-10-28 20:57:06,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:57:06,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:57:06,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:57:06,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:57:06,896.896 INFO    ] time= 28/10/2026 20:57:06
[2026-10-28 20:57:06,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:57:06,969.969 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:57:07,101.101 INFO    ] No existing commands found in stream
[2026-10-28 20:57:12,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:57:12,116.116 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-28 20:57:14,081.081 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:57:14,084.084 INFO    ] Checking for system updates...
[2026-10-28 20:57:14,120.120 INFO    ] 200
[2026-10-28 20:57:14,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:57:14,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:57:14,179.179 INFO    ] No update needed
[2026-10-28 20:57:14,181.181 INFO    ] Checking for camera pi updates...
[2026-10-28 20:57:14,215.215 INFO    ] 200
[2026-10-28 20:57:14,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:57:14,257.257 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:57:14,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:57:14,339.339 INFO    ] No camera update needed
[2026-10-28 20:57:14,341.341 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:57:14,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:57:14,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:57:14,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:57:16,394.394 INFO    ] ================================================
[2026-10-28 20:57:16,410.410 INFO    ] Launching Daemon at Wed Oct 28 20:57:16 IST 2026
[2026-10-28 20:57:16,421.421 INFO    ] ================================================
[2026-10-28 20:57:16,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:57:16
[2026-10-28 20:57:17,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:57:17,827.827 INFO    ] Initializing speech engine...
[2026-10-28 20:57:17,840.840 INFO    ] 2026-10-28 20:57:17
[2026-10-28 20:57:18,105.105 INFO    ] 2026-10-28 20:57:18
[2026-10-28 20:57:18,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:57:18,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:57:18,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:57:18,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:57:18,878.878 INFO    ] time= 28/10/2026 20:57:18
[2026-10-28 20:57:18,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:57:18,936.936 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:57:19,087.087 INFO    ] No existing commands found in stream
[2026-10-28 20:57:24,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:57:24,106.106 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 20:57:24,866.866 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:57:24,869.869 INFO    ] Checking for system updates...
[2026-10-28 20:57:24,904.904 INFO    ] 200
[2026-10-28 20:57:24,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:57:24,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:57:24,974.974 INFO    ] No update needed
[2026-10-28 20:57:24,977.977 INFO    ] Checking for camera pi updates...
[2026-10-28 20:57:25,016.016 INFO    ] 200
[2026-10-28 20:57:25,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:57:25,061.061 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:57:25,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:57:25,137.137 INFO    ] No camera update needed
[2026-10-28 20:57:25,140.140 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:57:25,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:57:25,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:57:25,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:57:27,198.198 INFO    ] ================================================
[2026-10-28 20:57:27,214.214 INFO    ] Launching Daemon at Wed Oct 28 20:57:27 IST 2026
[2026-10-28 20:57:27,225.225 INFO    ] ================================================
[2026-10-28 20:57:27,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:57:27
[2026-10-28 20:57:28,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:57:28,643.643 INFO    ] Initializing speech engine...
[2026-10-28 20:57:28,650.650 INFO    ] 2026-10-28 20:57:28
[2026-10-28 20:57:28,948.948 INFO    ] 2026-10-28 20:57:28
[2026-10-28 20:57:28,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:57:29,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:57:29,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:57:29,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:57:29,567.567 INFO    ] time= 28/10/2026 20:57:29
[2026-10-28 20:57:29,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:57:29,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:57:29,766.766 INFO    ] No existing commands found in stream
[2026-10-28 20:57:34,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:57:34,786.786 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 20:57:36,814.814 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:57:36,817.817 INFO    ] Checking for system updates...
[2026-10-28 20:57:36,853.853 INFO    ] 200
[2026-10-28 20:57:36,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:57:36,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:57:36,910.910 INFO    ] No update needed
[2026-10-28 20:57:36,912.912 INFO    ] Checking for camera pi updates...
[2026-10-28 20:57:36,945.945 INFO    ] 200
[2026-10-28 20:57:36,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:57:36,997.997 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:57:37,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:57:37,073.073 INFO    ] No camera update needed
[2026-10-28 20:57:37,076.076 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:57:37,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:57:37,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:57:37,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:57:39,132.132 INFO    ] ================================================
[2026-10-28 20:57:39,148.148 INFO    ] Launching Daemon at Wed Oct 28 20:57:39 IST 2026
[2026-10-28 20:57:39,159.159 INFO    ] ================================================
[2026-10-28 20:57:39,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:57:39
[2026-10-28 20:57:40,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:57:40,572.572 INFO    ] Initializing speech engine...
[2026-10-28 20:57:40,592.592 INFO    ] 2026-10-28 20:57:40
[2026-10-28 20:57:40,844.844 INFO    ] 2026-10-28 20:57:40
[2026-10-28 20:57:40,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:57:41,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:57:41,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:57:41,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:57:41,412.412 INFO    ] time= 28/10/2026 20:57:41
[2026-10-28 20:57:41,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:57:41,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:57:41,571.571 INFO    ] No existing commands found in stream
[2026-10-28 20:57:46,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:57:46,588.588 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-10-28 20:57:50,681.681 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:57:50,684.684 INFO    ] Checking for system updates...
[2026-10-28 20:57:50,719.719 INFO    ] 200
[2026-10-28 20:57:50,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:57:50,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:57:50,776.776 INFO    ] No update needed
[2026-10-28 20:57:50,779.779 INFO    ] Checking for camera pi updates...
[2026-10-28 20:57:50,814.814 INFO    ] 200
[2026-10-28 20:57:50,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:57:50,861.861 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:57:50,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:57:50,931.931 INFO    ] No camera update needed
[2026-10-28 20:57:50,933.933 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:57:50,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:57:50,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:57:50,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:57:52,988.988 INFO    ] ================================================
[2026-10-28 20:57:53,004.004 INFO    ] Launching Daemon at Wed Oct 28 20:57:52 IST 2026
[2026-10-28 20:57:53,015.015 INFO    ] ================================================
[2026-10-28 20:57:53,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:57:53
[2026-10-28 20:57:54,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:57:54,475.475 INFO    ] Initializing speech engine...
[2026-10-28 20:57:54,483.483 INFO    ] 2026-10-28 20:57:54
[2026-10-28 20:57:54,731.731 INFO    ] 2026-10-28 20:57:54
[2026-10-28 20:57:54,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:57:55,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:57:55,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:57:55,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:57:55,301.301 INFO    ] time= 28/10/2026 20:57:55
[2026-10-28 20:57:55,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:57:55,337.337 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:57:55,478.478 INFO    ] No existing commands found in stream
[2026-10-28 20:58:00,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:58:00,511.511 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-28 20:58:01,305.305 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:58:01,308.308 INFO    ] Checking for system updates...
[2026-10-28 20:58:01,351.351 INFO    ] 200
[2026-10-28 20:58:01,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:58:01,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:58:01,419.419 INFO    ] No update needed
[2026-10-28 20:58:01,421.421 INFO    ] Checking for camera pi updates...
[2026-10-28 20:58:01,467.467 INFO    ] 200
[2026-10-28 20:58:01,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:58:01,513.513 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:58:01,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:58:01,631.631 INFO    ] No camera update needed
[2026-10-28 20:58:01,634.634 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:58:01,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:58:01,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:58:01,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:58:03,697.697 INFO    ] ================================================
[2026-10-28 20:58:03,714.714 INFO    ] Launching Daemon at Wed Oct 28 20:58:03 IST 2026
[2026-10-28 20:58:03,725.725 INFO    ] ================================================
[2026-10-28 20:58:04,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:58:04
[2026-10-28 20:58:04,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:58:05,150.150 INFO    ] Initializing speech engine...
[2026-10-28 20:58:05,169.169 INFO    ] 2026-10-28 20:58:05
[2026-10-28 20:58:05,416.416 INFO    ] 2026-10-28 20:58:05
[2026-10-28 20:58:05,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:58:05,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:58:05,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:58:05,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:58:05,974.974 INFO    ] time= 28/10/2026 20:58:05
[2026-10-28 20:58:05,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:58:05,997.997 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:58:06,127.127 INFO    ] No existing commands found in stream
[2026-10-28 20:58:11,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:58:11,150.150 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-28 20:58:13,969.969 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:58:13,971.971 INFO    ] Checking for system updates...
[2026-10-28 20:58:14,011.011 INFO    ] 200
[2026-10-28 20:58:14,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:58:14,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:58:14,068.068 INFO    ] No update needed
[2026-10-28 20:58:14,071.071 INFO    ] Checking for camera pi updates...
[2026-10-28 20:58:14,104.104 INFO    ] 200
[2026-10-28 20:58:14,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:58:14,146.146 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:58:14,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:58:14,351.351 INFO    ] No camera update needed
[2026-10-28 20:58:14,353.353 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:58:14,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:58:14,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:58:14,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:58:16,408.408 INFO    ] ================================================
[2026-10-28 20:58:16,423.423 INFO    ] Launching Daemon at Wed Oct 28 20:58:16 IST 2026
[2026-10-28 20:58:16,434.434 INFO    ] ================================================
[2026-10-28 20:58:17,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:58:17
[2026-10-28 20:58:17,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:58:17,987.987 INFO    ] Initializing speech engine...
[2026-10-28 20:58:17,997.997 INFO    ] 2026-10-28 20:58:17
[2026-10-28 20:58:18,245.245 INFO    ] 2026-10-28 20:58:18
[2026-10-28 20:58:18,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:58:18,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:58:18,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:58:18,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:58:18,808.808 INFO    ] time= 28/10/2026 20:58:18
[2026-10-28 20:58:18,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:58:18,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:58:18,982.982 INFO    ] No existing commands found in stream
[2026-10-28 20:58:24,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:58:24,016.016 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-28 20:58:27,906.906 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:58:27,909.909 INFO    ] Checking for system updates...
[2026-10-28 20:58:27,946.946 INFO    ] 200
[2026-10-28 20:58:27,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:58:28,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:58:28,006.006 INFO    ] No update needed
[2026-10-28 20:58:28,009.009 INFO    ] Checking for camera pi updates...
[2026-10-28 20:58:28,044.044 INFO    ] 200
[2026-10-28 20:58:28,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:58:28,089.089 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:58:28,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 20:58:28,172.172 INFO    ] No camera update needed
[2026-10-28 20:58:28,176.176 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:58:28,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:58:28,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:58:28,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:58:30,232.232 INFO    ] ================================================
[2026-10-28 20:58:30,247.247 INFO    ] Launching Daemon at Wed Oct 28 20:58:30 IST 2026
[2026-10-28 20:58:30,257.257 INFO    ] ================================================
[2026-10-28 20:58:30,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:58:30
[2026-10-28 20:58:31,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:58:31,717.717 INFO    ] Initializing speech engine...
[2026-10-28 20:58:31,726.726 INFO    ] 2026-10-28 20:58:31
[2026-10-28 20:58:31,987.987 INFO    ] 2026-10-28 20:58:31
[2026-10-28 20:58:32,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:58:32,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:58:32,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:58:32,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:58:32,683.683 INFO    ] time= 28/10/2026 20:58:32
[2026-10-28 20:58:32,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:58:32,799.799 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:58:32,957.957 INFO    ] No existing commands found in stream
[2026-10-28 20:58:37,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:58:37,992.992 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-28 20:58:42,522.522 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 20:58:42,525.525 INFO    ] Checking for system updates...
[2026-10-28 20:58:42,560.560 INFO    ] 200
[2026-10-28 20:58:42,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:58:42,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:58:42,619.619 INFO    ] No update needed
[2026-10-28 20:58:42,621.621 INFO    ] Checking for camera pi updates...
[2026-10-28 20:58:42,657.657 INFO    ] 200
[2026-10-28 20:58:42,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:58:42,699.699 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:58:42,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:58:42,788.788 INFO    ] No camera update needed
[2026-10-28 20:58:42,790.790 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:58:42,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:58:42,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:58:42,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:58:44,844.844 INFO    ] ================================================
[2026-10-28 20:58:44,859.859 INFO    ] Launching Daemon at Wed Oct 28 20:58:44 IST 2026
[2026-10-28 20:58:44,869.869 INFO    ] ================================================
[2026-10-28 20:58:45,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:58:45
[2026-10-28 20:58:46,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:58:46,471.471 INFO    ] Initializing speech engine...
[2026-10-28 20:58:46,485.485 INFO    ] 2026-10-28 20:58:46
[2026-10-28 20:58:46,756.756 INFO    ] 2026-10-28 20:58:46
[2026-10-28 20:58:46,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:58:47,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:58:47,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:58:47,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:58:47,331.331 INFO    ] time= 28/10/2026 20:58:47
[2026-10-28 20:58:47,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:58:47,380.380 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:58:47,519.519 INFO    ] No existing commands found in stream
[2026-10-28 20:58:52,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:58:52,553.553 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-28 20:58:55,776.776 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:58:55,779.779 INFO    ] Checking for system updates...
[2026-10-28 20:58:55,819.819 INFO    ] 200
[2026-10-28 20:58:55,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:58:55,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:58:55,884.884 INFO    ] No update needed
[2026-10-28 20:58:55,886.886 INFO    ] Checking for camera pi updates...
[2026-10-28 20:58:55,924.924 INFO    ] 200
[2026-10-28 20:58:55,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:58:55,972.972 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:58:56,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:58:56,053.053 INFO    ] No camera update needed
[2026-10-28 20:58:56,056.056 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:58:56,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:58:56,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:58:56,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:58:58,107.107 INFO    ] ================================================
[2026-10-28 20:58:58,122.122 INFO    ] Launching Daemon at Wed Oct 28 20:58:58 IST 2026
[2026-10-28 20:58:58,133.133 INFO    ] ================================================
[2026-10-28 20:58:58,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:58:58
[2026-10-28 20:58:59,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:58:59,788.788 INFO    ] Initializing speech engine...
[2026-10-28 20:58:59,802.802 INFO    ] 2026-10-28 20:58:59
[2026-10-28 20:59:00,087.087 INFO    ] 2026-10-28 20:59:00
[2026-10-28 20:59:00,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:59:00,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:59:00,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:59:00,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:59:00,640.640 INFO    ] time= 28/10/2026 20:59:00
[2026-10-28 20:59:00,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:59:00,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:59:00,814.814 INFO    ] No existing commands found in stream
[2026-10-28 20:59:05,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:59:05,854.854 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 20:59:08,822.822 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:59:08,826.826 INFO    ] Checking for system updates...
[2026-10-28 20:59:08,862.862 INFO    ] 200
[2026-10-28 20:59:08,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:59:08,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:59:08,922.922 INFO    ] No update needed
[2026-10-28 20:59:08,925.925 INFO    ] Checking for camera pi updates...
[2026-10-28 20:59:08,959.959 INFO    ] 200
[2026-10-28 20:59:08,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:59:09,004.004 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:59:09,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:59:09,087.087 INFO    ] No camera update needed
[2026-10-28 20:59:09,090.090 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:59:09,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:59:09,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:59:09,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:59:11,145.145 INFO    ] ================================================
[2026-10-28 20:59:11,160.160 INFO    ] Launching Daemon at Wed Oct 28 20:59:11 IST 2026
[2026-10-28 20:59:11,171.171 INFO    ] ================================================
[2026-10-28 20:59:11,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:59:11
[2026-10-28 20:59:12,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:59:12,572.572 INFO    ] Initializing speech engine...
[2026-10-28 20:59:12,591.591 INFO    ] 2026-10-28 20:59:12
[2026-10-28 20:59:12,850.850 INFO    ] 2026-10-28 20:59:12
[2026-10-28 20:59:12,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:59:13,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:59:13,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:59:13,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:59:13,421.421 INFO    ] time= 28/10/2026 20:59:13
[2026-10-28 20:59:13,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:59:13,462.462 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:59:13,579.579 INFO    ] No existing commands found in stream
[2026-10-28 20:59:18,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:59:18,624.624 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-10-28 20:59:23,170.170 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 20:59:23,173.173 INFO    ] Checking for system updates...
[2026-10-28 20:59:23,215.215 INFO    ] 200
[2026-10-28 20:59:23,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:59:23,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:59:23,300.300 INFO    ] No update needed
[2026-10-28 20:59:23,303.303 INFO    ] Checking for camera pi updates...
[2026-10-28 20:59:23,366.366 INFO    ] 200
[2026-10-28 20:59:23,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:59:23,411.411 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:59:23,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:59:23,495.495 INFO    ] No camera update needed
[2026-10-28 20:59:23,498.498 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:59:23,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:59:23,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:59:23,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:59:25,555.555 INFO    ] ================================================
[2026-10-28 20:59:25,570.570 INFO    ] Launching Daemon at Wed Oct 28 20:59:25 IST 2026
[2026-10-28 20:59:25,581.581 INFO    ] ================================================
[2026-10-28 20:59:26,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:59:26
[2026-10-28 20:59:26,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:59:26,988.988 INFO    ] Initializing speech engine...
[2026-10-28 20:59:26,996.996 INFO    ] 2026-10-28 20:59:26
[2026-10-28 20:59:27,290.290 INFO    ] 2026-10-28 20:59:27
[2026-10-28 20:59:27,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:59:27,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:59:27,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:59:27,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:59:27,786.786 INFO    ] time= 28/10/2026 20:59:27
[2026-10-28 20:59:27,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:59:27,864.864 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:59:27,988.988 INFO    ] No existing commands found in stream
[2026-10-28 20:59:32,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:59:33,002.002 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-28 20:59:35,767.767 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 20:59:35,770.770 INFO    ] Checking for system updates...
[2026-10-28 20:59:35,805.805 INFO    ] 200
[2026-10-28 20:59:35,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:59:35,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:59:35,863.863 INFO    ] No update needed
[2026-10-28 20:59:35,866.866 INFO    ] Checking for camera pi updates...
[2026-10-28 20:59:35,898.898 INFO    ] 200
[2026-10-28 20:59:35,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:59:35,942.942 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:59:36,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:59:36,028.028 INFO    ] No camera update needed
[2026-10-28 20:59:36,031.031 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:59:36,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:59:36,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:59:36,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:59:38,084.084 INFO    ] ================================================
[2026-10-28 20:59:38,099.099 INFO    ] Launching Daemon at Wed Oct 28 20:59:38 IST 2026
[2026-10-28 20:59:38,111.111 INFO    ] ================================================
[2026-10-28 20:59:38,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:59:38
[2026-10-28 20:59:39,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:59:39,653.653 INFO    ] Initializing speech engine...
[2026-10-28 20:59:39,667.667 INFO    ] 2026-10-28 20:59:39
[2026-10-28 20:59:39,979.979 INFO    ] 2026-10-28 20:59:39
[2026-10-28 20:59:40,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:59:40,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:59:40,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:59:40,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:59:40,632.632 INFO    ] time= 28/10/2026 20:59:40
[2026-10-28 20:59:40,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:59:40,732.732 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:59:40,873.873 INFO    ] No existing commands found in stream
[2026-10-28 20:59:45,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:59:45,902.902 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-28 20:59:47,224.224 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 20:59:47,227.227 INFO    ] Checking for system updates...
[2026-10-28 20:59:47,265.265 INFO    ] 200
[2026-10-28 20:59:47,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:59:47,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:59:47,325.325 INFO    ] No update needed
[2026-10-28 20:59:47,327.327 INFO    ] Checking for camera pi updates...
[2026-10-28 20:59:47,361.361 INFO    ] 200
[2026-10-28 20:59:47,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:59:47,404.404 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:59:47,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:59:47,484.484 INFO    ] No camera update needed
[2026-10-28 20:59:47,486.486 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:59:47,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:59:47,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:59:47,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 20:59:49,539.539 INFO    ] ================================================
[2026-10-28 20:59:49,555.555 INFO    ] Launching Daemon at Wed Oct 28 20:59:49 IST 2026
[2026-10-28 20:59:49,566.566 INFO    ] ================================================
[2026-10-28 20:59:50,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 20:59:50
[2026-10-28 20:59:50,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 20:59:50,983.983 INFO    ] Initializing speech engine...
[2026-10-28 20:59:50,992.992 INFO    ] 2026-10-28 20:59:50
[2026-10-28 20:59:51,238.238 INFO    ] 2026-10-28 20:59:51
[2026-10-28 20:59:51,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 20:59:51,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 20:59:51,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 20:59:51,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 20:59:51,804.804 INFO    ] time= 28/10/2026 20:59:51
[2026-10-28 20:59:51,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 20:59:51,839.839 INFO    ] Checking for existing commands in stream...
[2026-10-28 20:59:51,970.970 INFO    ] No existing commands found in stream
[2026-10-28 20:59:56,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 20:59:56,998.998 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-28 20:59:57,963.963 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 20:59:57,966.966 INFO    ] Checking for system updates...
[2026-10-28 20:59:58,001.001 INFO    ] 200
[2026-10-28 20:59:58,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:59:58,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:59:58,059.059 INFO    ] No update needed
[2026-10-28 20:59:58,061.061 INFO    ] Checking for camera pi updates...
[2026-10-28 20:59:58,099.099 INFO    ] 200
[2026-10-28 20:59:58,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 20:59:58,142.142 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 20:59:58,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 20:59:58,225.225 INFO    ] No camera update needed
[2026-10-28 20:59:58,228.228 INFO    ] Script finished. Safe exiting...
[2026-10-28 20:59:58,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 20:59:58,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 20:59:58,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:00:00,283.283 INFO    ] ================================================
[2026-10-28 21:00:00,298.298 INFO    ] Launching Daemon at Wed Oct 28 21:00:00 IST 2026
[2026-10-28 21:00:00,309.309 INFO    ] ================================================
[2026-10-28 21:00:00,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:00:00
[2026-10-28 21:00:01,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:00:02,508.508 INFO    ] Initializing speech engine...
[2026-10-28 21:00:02,511.511 INFO    ] 2026-10-28 21:00:02
[2026-10-28 21:00:03,904.904 INFO    ] 2026-10-28 21:00:03
[2026-10-28 21:00:04,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:00:04,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:00:04,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:00:04,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:00:04,699.699 INFO    ] time= 28/10/2026 21:00:04
[2026-10-28 21:00:04,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:00:04,727.727 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:00:04,824.824 INFO    ] No existing commands found in stream
[2026-10-28 21:00:09,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:00:09,839.839 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-28 21:00:14,493.493 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:00:14,496.496 INFO    ] Checking for system updates...
[2026-10-28 21:00:14,536.536 INFO    ] 200
[2026-10-28 21:00:14,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:00:14,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:00:14,605.605 INFO    ] No update needed
[2026-10-28 21:00:14,609.609 INFO    ] Checking for camera pi updates...
[2026-10-28 21:00:14,648.648 INFO    ] 200
[2026-10-28 21:00:14,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:00:14,694.694 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:00:14,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:00:14,777.777 INFO    ] No camera update needed
[2026-10-28 21:00:14,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:00:14,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:00:14,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:00:14,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:00:16,841.841 INFO    ] ================================================
[2026-10-28 21:00:16,866.866 INFO    ] Launching Daemon at Wed Oct 28 21:00:16 IST 2026
[2026-10-28 21:00:16,877.877 INFO    ] ================================================
[2026-10-28 21:00:17,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:00:17
[2026-10-28 21:00:18,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:00:18,808.808 INFO    ] Initializing speech engine...
[2026-10-28 21:00:18,811.811 INFO    ] 2026-10-28 21:00:18
[2026-10-28 21:00:19,372.372 INFO    ] 2026-10-28 21:00:19
[2026-10-28 21:00:19,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:00:19,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:00:19,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:00:20,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:00:20,168.168 INFO    ] time= 28/10/2026 21:00:20
[2026-10-28 21:00:20,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:00:20,177.177 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:00:20,284.284 INFO    ] No existing commands found in stream
[2026-10-28 21:00:25,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:00:25,310.310 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-28 21:00:28,563.563 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:00:28,566.566 INFO    ] Checking for system updates...
[2026-10-28 21:00:28,602.602 INFO    ] 200
[2026-10-28 21:00:28,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:00:28,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:00:28,665.665 INFO    ] No update needed
[2026-10-28 21:00:28,667.667 INFO    ] Checking for camera pi updates...
[2026-10-28 21:00:28,700.700 INFO    ] 200
[2026-10-28 21:00:28,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:00:28,744.744 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:00:28,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:00:28,926.926 INFO    ] No camera update needed
[2026-10-28 21:00:28,928.928 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:00:28,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:00:28,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:00:28,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:00:30,987.987 INFO    ] ================================================
[2026-10-28 21:00:31,002.002 INFO    ] Launching Daemon at Wed Oct 28 21:00:30 IST 2026
[2026-10-28 21:00:31,013.013 INFO    ] ================================================
[2026-10-28 21:00:31,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:00:31
[2026-10-28 21:00:32,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:00:32,505.505 INFO    ] Initializing speech engine...
[2026-10-28 21:00:32,512.512 INFO    ] 2026-10-28 21:00:32
[2026-10-28 21:00:32,809.809 INFO    ] 2026-10-28 21:00:32
[2026-10-28 21:00:32,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:00:33,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:00:33,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:00:33,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:00:33,394.394 INFO    ] time= 28/10/2026 21:00:33
[2026-10-28 21:00:33,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:00:33,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:00:33,572.572 INFO    ] No existing commands found in stream
[2026-10-28 21:00:38,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:00:38,606.606 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-28 21:00:43,002.002 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:00:43,005.005 INFO    ] Checking for system updates...
[2026-10-28 21:00:43,040.040 INFO    ] 200
[2026-10-28 21:00:43,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:00:43,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:00:43,098.098 INFO    ] No update needed
[2026-10-28 21:00:43,101.101 INFO    ] Checking for camera pi updates...
[2026-10-28 21:00:43,135.135 INFO    ] 200
[2026-10-28 21:00:43,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:00:43,177.177 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:00:43,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:00:43,294.294 INFO    ] No camera update needed
[2026-10-28 21:00:43,296.296 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:00:43,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:00:43,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:00:43,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:00:45,350.350 INFO    ] ================================================
[2026-10-28 21:00:45,365.365 INFO    ] Launching Daemon at Wed Oct 28 21:00:45 IST 2026
[2026-10-28 21:00:45,376.376 INFO    ] ================================================
[2026-10-28 21:00:46,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:00:46
[2026-10-28 21:00:46,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:00:46,983.983 INFO    ] Initializing speech engine...
[2026-10-28 21:00:46,995.995 INFO    ] 2026-10-28 21:00:46
[2026-10-28 21:00:47,269.269 INFO    ] 2026-10-28 21:00:47
[2026-10-28 21:00:47,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:00:47,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:00:47,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:00:47,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:00:47,829.829 INFO    ] time= 28/10/2026 21:00:47
[2026-10-28 21:00:47,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:00:47,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:00:47,974.974 INFO    ] No existing commands found in stream
[2026-10-28 21:00:52,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:00:52,996.996 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-10-28 21:00:54,882.882 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:00:54,885.885 INFO    ] Checking for system updates...
[2026-10-28 21:00:54,924.924 INFO    ] 200
[2026-10-28 21:00:54,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:00:54,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:00:54,982.982 INFO    ] No update needed
[2026-10-28 21:00:54,988.988 INFO    ] Checking for camera pi updates...
[2026-10-28 21:00:55,022.022 INFO    ] 200
[2026-10-28 21:00:55,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:00:55,069.069 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:00:55,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:00:55,155.155 INFO    ] No camera update needed
[2026-10-28 21:00:55,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:00:55,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:00:55,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:00:55,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:00:57,213.213 INFO    ] ================================================
[2026-10-28 21:00:57,229.229 INFO    ] Launching Daemon at Wed Oct 28 21:00:57 IST 2026
[2026-10-28 21:00:57,240.240 INFO    ] ================================================
[2026-10-28 21:00:57,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:00:57
[2026-10-28 21:00:58,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:00:58,746.746 INFO    ] Initializing speech engine...
[2026-10-28 21:00:58,754.754 INFO    ] 2026-10-28 21:00:58
[2026-10-28 21:00:59,064.064 INFO    ] 2026-10-28 21:00:59
[2026-10-28 21:00:59,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:00:59,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:00:59,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:00:59,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:00:59,617.617 INFO    ] time= 28/10/2026 21:00:59
[2026-10-28 21:00:59,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:00:59,656.656 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:00:59,786.786 INFO    ] No existing commands found in stream
[2026-10-28 21:01:04,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:01:04,820.820 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 21:01:09,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:01:09,046.046 INFO    ] Checking for system updates...
[2026-10-28 21:01:09,083.083 INFO    ] 200
[2026-10-28 21:01:09,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:01:09,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:01:09,151.151 INFO    ] No update needed
[2026-10-28 21:01:09,153.153 INFO    ] Checking for camera pi updates...
[2026-10-28 21:01:09,189.189 INFO    ] 200
[2026-10-28 21:01:09,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:01:09,235.235 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:01:09,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:01:09,319.319 INFO    ] No camera update needed
[2026-10-28 21:01:09,322.322 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:01:09,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:01:09,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:01:09,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:01:11,379.379 INFO    ] ================================================
[2026-10-28 21:01:11,396.396 INFO    ] Launching Daemon at Wed Oct 28 21:01:11 IST 2026
[2026-10-28 21:01:11,407.407 INFO    ] ================================================
[2026-10-28 21:01:11,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:01:11
[2026-10-28 21:01:12,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:01:12,819.819 INFO    ] Initializing speech engine...
[2026-10-28 21:01:12,834.834 INFO    ] 2026-10-28 21:01:12
[2026-10-28 21:01:13,087.087 INFO    ] 2026-10-28 21:01:13
[2026-10-28 21:01:13,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:01:13,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:01:13,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:01:13,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:01:13,656.656 INFO    ] time= 28/10/2026 21:01:13
[2026-10-28 21:01:13,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:01:13,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:01:13,810.810 INFO    ] No existing commands found in stream
[2026-10-28 21:01:18,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:01:18,828.828 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 21:01:21,524.524 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:01:21,527.527 INFO    ] Checking for system updates...
[2026-10-28 21:01:21,562.562 INFO    ] 200
[2026-10-28 21:01:21,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:01:21,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:01:21,621.621 INFO    ] No update needed
[2026-10-28 21:01:21,623.623 INFO    ] Checking for camera pi updates...
[2026-10-28 21:01:21,662.662 INFO    ] 200
[2026-10-28 21:01:21,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:01:21,705.705 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:01:21,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:01:21,789.789 INFO    ] No camera update needed
[2026-10-28 21:01:21,792.792 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:01:21,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:01:21,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:01:21,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:01:23,850.850 INFO    ] ================================================
[2026-10-28 21:01:23,866.866 INFO    ] Launching Daemon at Wed Oct 28 21:01:23 IST 2026
[2026-10-28 21:01:23,877.877 INFO    ] ================================================
[2026-10-28 21:01:24,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:01:24
[2026-10-28 21:01:25,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:01:25,323.323 INFO    ] Initializing speech engine...
[2026-10-28 21:01:25,330.330 INFO    ] 2026-10-28 21:01:25
[2026-10-28 21:01:25,632.632 INFO    ] 2026-10-28 21:01:25
[2026-10-28 21:01:25,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:01:25,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:01:25,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:01:26,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:01:26,280.280 INFO    ] time= 28/10/2026 21:01:26
[2026-10-28 21:01:26,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:01:26,305.305 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:01:26,445.445 INFO    ] No existing commands found in stream
[2026-10-28 21:01:31,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:01:31,470.470 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 21:01:33,228.228 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:01:33,230.230 INFO    ] Checking for system updates...
[2026-10-28 21:01:33,265.265 INFO    ] 200
[2026-10-28 21:01:33,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:01:33,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:01:33,323.323 INFO    ] No update needed
[2026-10-28 21:01:33,326.326 INFO    ] Checking for camera pi updates...
[2026-10-28 21:01:33,364.364 INFO    ] 200
[2026-10-28 21:01:33,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:01:33,406.406 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:01:33,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:01:33,500.500 INFO    ] No camera update needed
[2026-10-28 21:01:33,502.502 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:01:33,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:01:33,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:01:33,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:01:35,555.555 INFO    ] ================================================
[2026-10-28 21:01:35,572.572 INFO    ] Launching Daemon at Wed Oct 28 21:01:35 IST 2026
[2026-10-28 21:01:35,583.583 INFO    ] ================================================
[2026-10-28 21:01:36,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:01:36
[2026-10-28 21:01:36,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:01:37,241.241 INFO    ] Initializing speech engine...
[2026-10-28 21:01:37,254.254 INFO    ] 2026-10-28 21:01:37
[2026-10-28 21:01:37,597.597 INFO    ] 2026-10-28 21:01:37
[2026-10-28 21:01:37,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:01:37,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:01:38,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:01:38,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:01:38,387.387 INFO    ] time= 28/10/2026 21:01:38
[2026-10-28 21:01:38,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:01:38,471.471 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:01:38,608.608 INFO    ] No existing commands found in stream
[2026-10-28 21:01:43,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:01:43,619.619 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-28 21:01:46,001.001 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:01:46,004.004 INFO    ] Checking for system updates...
[2026-10-28 21:01:46,055.055 INFO    ] 200
[2026-10-28 21:01:46,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:01:46,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:01:46,121.121 INFO    ] No update needed
[2026-10-28 21:01:46,124.124 INFO    ] Checking for camera pi updates...
[2026-10-28 21:01:46,161.161 INFO    ] 200
[2026-10-28 21:01:46,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:01:46,209.209 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:01:46,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:01:46,295.295 INFO    ] No camera update needed
[2026-10-28 21:01:46,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:01:46,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:01:46,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:01:46,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:01:48,359.359 INFO    ] ================================================
[2026-10-28 21:01:48,377.377 INFO    ] Launching Daemon at Wed Oct 28 21:01:48 IST 2026
[2026-10-28 21:01:48,389.389 INFO    ] ================================================
[2026-10-28 21:01:49,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:01:49
[2026-10-28 21:01:49,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:01:49,943.943 INFO    ] Initializing speech engine...
[2026-10-28 21:01:49,952.952 INFO    ] 2026-10-28 21:01:49
[2026-10-28 21:01:50,217.217 INFO    ] 2026-10-28 21:01:50
[2026-10-28 21:01:50,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:01:50,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:01:50,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:01:50,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:01:50,764.764 INFO    ] time= 28/10/2026 21:01:50
[2026-10-28 21:01:50,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:01:50,788.788 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:01:50,960.960 INFO    ] No existing commands found in stream
[2026-10-28 21:01:55,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:01:55,988.988 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-28 21:01:59,245.245 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:01:59,247.247 INFO    ] Checking for system updates...
[2026-10-28 21:01:59,283.283 INFO    ] 200
[2026-10-28 21:01:59,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:01:59,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:01:59,341.341 INFO    ] No update needed
[2026-10-28 21:01:59,344.344 INFO    ] Checking for camera pi updates...
[2026-10-28 21:01:59,377.377 INFO    ] 200
[2026-10-28 21:01:59,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:01:59,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:01:59,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:01:59,506.506 INFO    ] No camera update needed
[2026-10-28 21:01:59,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:01:59,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:01:59,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:01:59,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:02:01,561.561 INFO    ] ================================================
[2026-10-28 21:02:01,576.576 INFO    ] Launching Daemon at Wed Oct 28 21:02:01 IST 2026
[2026-10-28 21:02:01,586.586 INFO    ] ================================================
[2026-10-28 21:02:02,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:02:02
[2026-10-28 21:02:02,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:02:03,271.271 INFO    ] Initializing speech engine...
[2026-10-28 21:02:03,282.282 INFO    ] 2026-10-28 21:02:03
[2026-10-28 21:02:03,589.589 INFO    ] 2026-10-28 21:02:03
[2026-10-28 21:02:03,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:02:03,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:02:03,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:02:04,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:02:04,189.189 INFO    ] time= 28/10/2026 21:02:04
[2026-10-28 21:02:04,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:02:04,235.235 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:02:04,375.375 INFO    ] No existing commands found in stream
[2026-10-28 21:02:09,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:02:09,403.403 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-28 21:02:13,501.501 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:02:13,504.504 INFO    ] Checking for system updates...
[2026-10-28 21:02:13,540.540 INFO    ] 200
[2026-10-28 21:02:13,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:02:13,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:02:13,603.603 INFO    ] No update needed
[2026-10-28 21:02:13,605.605 INFO    ] Checking for camera pi updates...
[2026-10-28 21:02:13,639.639 INFO    ] 200
[2026-10-28 21:02:13,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:02:13,683.683 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:02:13,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:02:13,766.766 INFO    ] No camera update needed
[2026-10-28 21:02:13,769.769 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:02:13,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:02:13,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:02:13,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:02:15,825.825 INFO    ] ================================================
[2026-10-28 21:02:15,840.840 INFO    ] Launching Daemon at Wed Oct 28 21:02:15 IST 2026
[2026-10-28 21:02:15,851.851 INFO    ] ================================================
[2026-10-28 21:02:16,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:02:16
[2026-10-28 21:02:17,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:02:17,279.279 INFO    ] Initializing speech engine...
[2026-10-28 21:02:17,288.288 INFO    ] 2026-10-28 21:02:17
[2026-10-28 21:02:17,534.534 INFO    ] 2026-10-28 21:02:17
[2026-10-28 21:02:17,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:02:17,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:02:17,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:02:18,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:02:18,118.118 INFO    ] time= 28/10/2026 21:02:18
[2026-10-28 21:02:18,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:02:18,154.154 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:02:18,292.292 INFO    ] No existing commands found in stream
[2026-10-28 21:02:23,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:02:23,325.325 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-28 21:02:26,450.450 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:02:26,453.453 INFO    ] Checking for system updates...
[2026-10-28 21:02:26,488.488 INFO    ] 200
[2026-10-28 21:02:26,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:02:26,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:02:26,548.548 INFO    ] No update needed
[2026-10-28 21:02:26,550.550 INFO    ] Checking for camera pi updates...
[2026-10-28 21:02:26,592.592 INFO    ] 200
[2026-10-28 21:02:26,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:02:26,635.635 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:02:26,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:02:26,731.731 INFO    ] No camera update needed
[2026-10-28 21:02:26,733.733 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:02:26,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:02:26,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:02:26,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:02:28,788.788 INFO    ] ================================================
[2026-10-28 21:02:28,805.805 INFO    ] Launching Daemon at Wed Oct 28 21:02:28 IST 2026
[2026-10-28 21:02:28,817.817 INFO    ] ================================================
[2026-10-28 21:02:29,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:02:29
[2026-10-28 21:02:30,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:02:30,374.374 INFO    ] Initializing speech engine...
[2026-10-28 21:02:30,396.396 INFO    ] 2026-10-28 21:02:30
[2026-10-28 21:02:30,663.663 INFO    ] 2026-10-28 21:02:30
[2026-10-28 21:02:30,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:02:30,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:02:30,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:02:31,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:02:31,257.257 INFO    ] time= 28/10/2026 21:02:31
[2026-10-28 21:02:31,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:02:31,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:02:31,421.421 INFO    ] No existing commands found in stream
[2026-10-28 21:02:36,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:02:36,437.437 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-28 21:02:39,068.068 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:02:39,070.070 INFO    ] Checking for system updates...
[2026-10-28 21:02:39,106.106 INFO    ] 200
[2026-10-28 21:02:39,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:02:39,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:02:39,162.162 INFO    ] No update needed
[2026-10-28 21:02:39,165.165 INFO    ] Checking for camera pi updates...
[2026-10-28 21:02:39,199.199 INFO    ] 200
[2026-10-28 21:02:39,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:02:39,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:02:39,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:02:39,311.311 INFO    ] No camera update needed
[2026-10-28 21:02:39,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:02:39,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:02:39,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:02:39,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:02:41,370.370 INFO    ] ================================================
[2026-10-28 21:02:41,385.385 INFO    ] Launching Daemon at Wed Oct 28 21:02:41 IST 2026
[2026-10-28 21:02:41,395.395 INFO    ] ================================================
[2026-10-28 21:02:42,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:02:42
[2026-10-28 21:02:42,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:02:42,952.952 INFO    ] Initializing speech engine...
[2026-10-28 21:02:42,964.964 INFO    ] 2026-10-28 21:02:42
[2026-10-28 21:02:43,236.236 INFO    ] 2026-10-28 21:02:43
[2026-10-28 21:02:43,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:02:43,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:02:43,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:02:43,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:02:43,808.808 INFO    ] time= 28/10/2026 21:02:43
[2026-10-28 21:02:43,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:02:43,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:02:43,974.974 INFO    ] No existing commands found in stream
[2026-10-28 21:02:48,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:02:49,002.002 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 21:02:51,372.372 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:02:51,375.375 INFO    ] Checking for system updates...
[2026-10-28 21:02:51,410.410 INFO    ] 200
[2026-10-28 21:02:51,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:02:51,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:02:51,475.475 INFO    ] No update needed
[2026-10-28 21:02:51,477.477 INFO    ] Checking for camera pi updates...
[2026-10-28 21:02:51,511.511 INFO    ] 200
[2026-10-28 21:02:51,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:02:51,554.554 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:02:51,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:02:51,636.636 INFO    ] No camera update needed
[2026-10-28 21:02:51,638.638 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:02:51,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:02:51,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:02:51,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:02:53,692.692 INFO    ] ================================================
[2026-10-28 21:02:53,707.707 INFO    ] Launching Daemon at Wed Oct 28 21:02:53 IST 2026
[2026-10-28 21:02:53,717.717 INFO    ] ================================================
[2026-10-28 21:02:54,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:02:54
[2026-10-28 21:02:54,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:02:55,167.167 INFO    ] Initializing speech engine...
[2026-10-28 21:02:55,176.176 INFO    ] 2026-10-28 21:02:55
[2026-10-28 21:02:55,425.425 INFO    ] 2026-10-28 21:02:55
[2026-10-28 21:02:55,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:02:55,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:02:55,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:02:55,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:02:55,982.982 INFO    ] time= 28/10/2026 21:02:55
[2026-10-28 21:02:55,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:02:56,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:02:56,137.137 INFO    ] No existing commands found in stream
[2026-10-28 21:03:01,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:03:01,164.164 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-28 21:03:02,069.069 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:03:02,075.075 INFO    ] Checking for system updates...
[2026-10-28 21:03:02,147.147 INFO    ] 200
[2026-10-28 21:03:02,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:03:02,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:03:02,269.269 INFO    ] No update needed
[2026-10-28 21:03:02,272.272 INFO    ] Checking for camera pi updates...
[2026-10-28 21:03:02,317.317 INFO    ] 200
[2026-10-28 21:03:02,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:03:02,413.413 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:03:02,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:03:02,560.560 INFO    ] No camera update needed
[2026-10-28 21:03:02,562.562 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:03:02,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:03:02,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:03:02,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:03:04,620.620 INFO    ] ================================================
[2026-10-28 21:03:04,636.636 INFO    ] Launching Daemon at Wed Oct 28 21:03:04 IST 2026
[2026-10-28 21:03:04,647.647 INFO    ] ================================================
[2026-10-28 21:03:05,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:03:05
[2026-10-28 21:03:06,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:03:06,319.319 INFO    ] Initializing speech engine...
[2026-10-28 21:03:06,334.334 INFO    ] 2026-10-28 21:03:06
[2026-10-28 21:03:06,656.656 INFO    ] 2026-10-28 21:03:06
[2026-10-28 21:03:06,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:03:07,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:03:07,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:03:07,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:03:07,352.352 INFO    ] time= 28/10/2026 21:03:07
[2026-10-28 21:03:07,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:03:07,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:03:07,617.617 INFO    ] No existing commands found in stream
[2026-10-28 21:03:12,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:03:12,641.641 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-28 21:03:14,695.695 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:03:14,698.698 INFO    ] Checking for system updates...
[2026-10-28 21:03:14,740.740 INFO    ] 200
[2026-10-28 21:03:14,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:03:14,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:03:14,803.803 INFO    ] No update needed
[2026-10-28 21:03:14,806.806 INFO    ] Checking for camera pi updates...
[2026-10-28 21:03:14,846.846 INFO    ] 200
[2026-10-28 21:03:14,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:03:14,896.896 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:03:14,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:03:14,986.986 INFO    ] No camera update needed
[2026-10-28 21:03:14,989.989 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:03:14,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:03:14,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:03:15,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:03:17,046.046 INFO    ] ================================================
[2026-10-28 21:03:17,062.062 INFO    ] Launching Daemon at Wed Oct 28 21:03:17 IST 2026
[2026-10-28 21:03:17,072.072 INFO    ] ================================================
[2026-10-28 21:03:17,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:03:17
[2026-10-28 21:03:18,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:03:18,489.489 INFO    ] Initializing speech engine...
[2026-10-28 21:03:18,495.495 INFO    ] 2026-10-28 21:03:18
[2026-10-28 21:03:18,794.794 INFO    ] 2026-10-28 21:03:18
[2026-10-28 21:03:18,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:03:19,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:03:19,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:03:19,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:03:19,442.442 INFO    ] time= 28/10/2026 21:03:19
[2026-10-28 21:03:19,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:03:19,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:03:19,596.596 INFO    ] No existing commands found in stream
[2026-10-28 21:03:24,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:03:24,630.630 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-28 21:03:28,206.206 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:03:28,209.209 INFO    ] Checking for system updates...
[2026-10-28 21:03:28,249.249 INFO    ] 200
[2026-10-28 21:03:28,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:03:28,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:03:28,308.308 INFO    ] No update needed
[2026-10-28 21:03:28,311.311 INFO    ] Checking for camera pi updates...
[2026-10-28 21:03:28,348.348 INFO    ] 200
[2026-10-28 21:03:28,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:03:28,396.396 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:03:28,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:03:28,493.493 INFO    ] No camera update needed
[2026-10-28 21:03:28,495.495 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:03:28,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:03:28,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:03:28,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:03:30,549.549 INFO    ] ================================================
[2026-10-28 21:03:30,564.564 INFO    ] Launching Daemon at Wed Oct 28 21:03:30 IST 2026
[2026-10-28 21:03:30,574.574 INFO    ] ================================================
[2026-10-28 21:03:31,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:03:31
[2026-10-28 21:03:31,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:03:31,993.993 INFO    ] Initializing speech engine...
[2026-10-28 21:03:32,001.001 INFO    ] 2026-10-28 21:03:31
[2026-10-28 21:03:32,330.330 INFO    ] 2026-10-28 21:03:32
[2026-10-28 21:03:32,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:03:32,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:03:32,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:03:32,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:03:32,891.891 INFO    ] time= 28/10/2026 21:03:32
[2026-10-28 21:03:32,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:03:33,001.001 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:03:33,184.184 INFO    ] No existing commands found in stream
[2026-10-28 21:03:38,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:03:38,218.218 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-28 21:03:42,135.135 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:03:42,138.138 INFO    ] Checking for system updates...
[2026-10-28 21:03:42,174.174 INFO    ] 200
[2026-10-28 21:03:42,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:03:42,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:03:42,239.239 INFO    ] No update needed
[2026-10-28 21:03:42,241.241 INFO    ] Checking for camera pi updates...
[2026-10-28 21:03:42,275.275 INFO    ] 200
[2026-10-28 21:03:42,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:03:42,319.319 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:03:42,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:03:42,429.429 INFO    ] No camera update needed
[2026-10-28 21:03:42,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:03:42,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:03:42,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:03:42,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:03:44,486.486 INFO    ] ================================================
[2026-10-28 21:03:44,501.501 INFO    ] Launching Daemon at Wed Oct 28 21:03:44 IST 2026
[2026-10-28 21:03:44,511.511 INFO    ] ================================================
[2026-10-28 21:03:45,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:03:45
[2026-10-28 21:03:45,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:03:45,933.933 INFO    ] Initializing speech engine...
[2026-10-28 21:03:45,942.942 INFO    ] 2026-10-28 21:03:45
[2026-10-28 21:03:46,187.187 INFO    ] 2026-10-28 21:03:46
[2026-10-28 21:03:46,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:03:46,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:03:46,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:03:46,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:03:46,740.740 INFO    ] time= 28/10/2026 21:03:46
[2026-10-28 21:03:46,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:03:46,764.764 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:03:46,907.907 INFO    ] No existing commands found in stream
[2026-10-28 21:03:51,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:03:51,931.931 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-28 21:03:56,245.245 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:03:56,249.249 INFO    ] Checking for system updates...
[2026-10-28 21:03:56,287.287 INFO    ] 200
[2026-10-28 21:03:56,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:03:56,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:03:56,352.352 INFO    ] No update needed
[2026-10-28 21:03:56,355.355 INFO    ] Checking for camera pi updates...
[2026-10-28 21:03:56,395.395 INFO    ] 200
[2026-10-28 21:03:56,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:03:56,440.440 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:03:56,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:03:56,549.549 INFO    ] No camera update needed
[2026-10-28 21:03:56,552.552 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:03:56,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:03:56,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:03:56,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:03:58,609.609 INFO    ] ================================================
[2026-10-28 21:03:58,625.625 INFO    ] Launching Daemon at Wed Oct 28 21:03:58 IST 2026
[2026-10-28 21:03:58,636.636 INFO    ] ================================================
[2026-10-28 21:03:59,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:03:59
[2026-10-28 21:03:59,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:04:00,067.067 INFO    ] Initializing speech engine...
[2026-10-28 21:04:00,079.079 INFO    ] 2026-10-28 21:04:00
[2026-10-28 21:04:00,327.327 INFO    ] 2026-10-28 21:04:00
[2026-10-28 21:04:00,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:04:00,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:04:00,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:04:00,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:04:00,888.888 INFO    ] time= 28/10/2026 21:04:00
[2026-10-28 21:04:00,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:04:00,933.933 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:04:01,071.071 INFO    ] No existing commands found in stream
[2026-10-28 21:04:06,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:04:06,104.104 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-28 21:04:08,411.411 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:04:08,413.413 INFO    ] Checking for system updates...
[2026-10-28 21:04:08,449.449 INFO    ] 200
[2026-10-28 21:04:08,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:04:08,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:04:08,506.506 INFO    ] No update needed
[2026-10-28 21:04:08,508.508 INFO    ] Checking for camera pi updates...
[2026-10-28 21:04:08,545.545 INFO    ] 200
[2026-10-28 21:04:08,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:04:08,588.588 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:04:08,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:04:08,680.680 INFO    ] No camera update needed
[2026-10-28 21:04:08,682.682 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:04:08,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:04:08,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:04:08,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:04:10,736.736 INFO    ] ================================================
[2026-10-28 21:04:10,754.754 INFO    ] Launching Daemon at Wed Oct 28 21:04:10 IST 2026
[2026-10-28 21:04:10,765.765 INFO    ] ================================================
[2026-10-28 21:04:11,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:04:11
[2026-10-28 21:04:12,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:04:12,367.367 INFO    ] Initializing speech engine...
[2026-10-28 21:04:12,381.381 INFO    ] 2026-10-28 21:04:12
[2026-10-28 21:04:12,688.688 INFO    ] 2026-10-28 21:04:12
[2026-10-28 21:04:12,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:04:13,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:04:13,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:04:13,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:04:13,389.389 INFO    ] time= 28/10/2026 21:04:13
[2026-10-28 21:04:13,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:04:13,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:04:13,634.634 INFO    ] No existing commands found in stream
[2026-10-28 21:04:18,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:04:18,648.648 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 21:04:22,467.467 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:04:22,470.470 INFO    ] Checking for system updates...
[2026-10-28 21:04:22,510.510 INFO    ] 200
[2026-10-28 21:04:22,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:04:22,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:04:22,574.574 INFO    ] No update needed
[2026-10-28 21:04:22,577.577 INFO    ] Checking for camera pi updates...
[2026-10-28 21:04:22,611.611 INFO    ] 200
[2026-10-28 21:04:22,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:04:22,656.656 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:04:22,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:04:22,741.741 INFO    ] No camera update needed
[2026-10-28 21:04:22,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:04:22,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:04:22,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:04:22,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:04:24,800.800 INFO    ] ================================================
[2026-10-28 21:04:24,817.817 INFO    ] Launching Daemon at Wed Oct 28 21:04:24 IST 2026
[2026-10-28 21:04:24,828.828 INFO    ] ================================================
[2026-10-28 21:04:25,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:04:25
[2026-10-28 21:04:26,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:04:26,321.321 INFO    ] Initializing speech engine...
[2026-10-28 21:04:26,331.331 INFO    ] 2026-10-28 21:04:26
[2026-10-28 21:04:26,578.578 INFO    ] 2026-10-28 21:04:26
[2026-10-28 21:04:26,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:04:26,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:04:26,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:04:27,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:04:27,132.132 INFO    ] time= 28/10/2026 21:04:27
[2026-10-28 21:04:27,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:04:27,157.157 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:04:27,286.286 INFO    ] No existing commands found in stream
[2026-10-28 21:04:32,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:04:32,302.302 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 21:04:34,639.639 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:04:34,642.642 INFO    ] Checking for system updates...
[2026-10-28 21:04:34,678.678 INFO    ] 200
[2026-10-28 21:04:34,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:04:34,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:04:34,744.744 INFO    ] No update needed
[2026-10-28 21:04:34,747.747 INFO    ] Checking for camera pi updates...
[2026-10-28 21:04:34,781.781 INFO    ] 200
[2026-10-28 21:04:34,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:04:34,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:04:35,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:04:35,010.010 INFO    ] No camera update needed
[2026-10-28 21:04:35,012.012 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:04:35,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:04:35,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:04:35,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:04:37,066.066 INFO    ] ================================================
[2026-10-28 21:04:37,082.082 INFO    ] Launching Daemon at Wed Oct 28 21:04:37 IST 2026
[2026-10-28 21:04:37,092.092 INFO    ] ================================================
[2026-10-28 21:04:37,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:04:37
[2026-10-28 21:04:38,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:04:38,776.776 INFO    ] Initializing speech engine...
[2026-10-28 21:04:38,788.788 INFO    ] 2026-10-28 21:04:38
[2026-10-28 21:04:39,104.104 INFO    ] 2026-10-28 21:04:39
[2026-10-28 21:04:39,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:04:39,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:04:39,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:04:39,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:04:39,816.816 INFO    ] time= 28/10/2026 21:04:39
[2026-10-28 21:04:39,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:04:39,913.913 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:04:40,047.047 INFO    ] No existing commands found in stream
[2026-10-28 21:04:45,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:04:45,070.070 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-10-28 21:04:48,168.168 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:04:48,171.171 INFO    ] Checking for system updates...
[2026-10-28 21:04:48,209.209 INFO    ] 200
[2026-10-28 21:04:48,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:04:48,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:04:48,267.267 INFO    ] No update needed
[2026-10-28 21:04:48,269.269 INFO    ] Checking for camera pi updates...
[2026-10-28 21:04:48,307.307 INFO    ] 200
[2026-10-28 21:04:48,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:04:48,352.352 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:04:48,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:04:48,438.438 INFO    ] No camera update needed
[2026-10-28 21:04:48,440.440 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:04:48,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:04:48,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:04:48,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:04:50,493.493 INFO    ] ================================================
[2026-10-28 21:04:50,508.508 INFO    ] Launching Daemon at Wed Oct 28 21:04:50 IST 2026
[2026-10-28 21:04:50,519.519 INFO    ] ================================================
[2026-10-28 21:04:51,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:04:51
[2026-10-28 21:04:51,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:04:51,936.936 INFO    ] Initializing speech engine...
[2026-10-28 21:04:51,945.945 INFO    ] 2026-10-28 21:04:51
[2026-10-28 21:04:52,191.191 INFO    ] 2026-10-28 21:04:52
[2026-10-28 21:04:52,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:04:52,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:04:52,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:04:52,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:04:52,746.746 INFO    ] time= 28/10/2026 21:04:52
[2026-10-28 21:04:52,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:04:52,793.793 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:04:52,917.917 INFO    ] No existing commands found in stream
[2026-10-28 21:04:57,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:04:57,941.941 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 21:05:00,483.483 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:05:00,486.486 INFO    ] Checking for system updates...
[2026-10-28 21:05:00,523.523 INFO    ] 200
[2026-10-28 21:05:00,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:05:00,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:05:00,582.582 INFO    ] No update needed
[2026-10-28 21:05:00,584.584 INFO    ] Checking for camera pi updates...
[2026-10-28 21:05:00,617.617 INFO    ] 200
[2026-10-28 21:05:00,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:05:00,660.660 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:05:00,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:05:00,745.745 INFO    ] No camera update needed
[2026-10-28 21:05:00,748.748 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:05:00,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:05:00,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:05:00,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:05:02,820.820 INFO    ] ================================================
[2026-10-28 21:05:02,841.841 INFO    ] Launching Daemon at Wed Oct 28 21:05:02 IST 2026
[2026-10-28 21:05:02,856.856 INFO    ] ================================================
[2026-10-28 21:05:03,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:05:03
[2026-10-28 21:05:04,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:05:04,558.558 INFO    ] Initializing speech engine...
[2026-10-28 21:05:04,572.572 INFO    ] 2026-10-28 21:05:04
[2026-10-28 21:05:04,858.858 INFO    ] 2026-10-28 21:05:04
[2026-10-28 21:05:04,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:05:05,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:05:05,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:05:05,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:05:05,610.610 INFO    ] time= 28/10/2026 21:05:05
[2026-10-28 21:05:05,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:05:05,719.719 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:05:05,833.833 INFO    ] No existing commands found in stream
[2026-10-28 21:05:10,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:05:10,847.847 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 21:05:11,602.602 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:05:11,605.605 INFO    ] Checking for system updates...
[2026-10-28 21:05:11,642.642 INFO    ] 200
[2026-10-28 21:05:11,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:05:11,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:05:11,707.707 INFO    ] No update needed
[2026-10-28 21:05:11,710.710 INFO    ] Checking for camera pi updates...
[2026-10-28 21:05:11,743.743 INFO    ] 200
[2026-10-28 21:05:11,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:05:11,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:05:11,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:05:11,874.874 INFO    ] No camera update needed
[2026-10-28 21:05:11,876.876 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:05:11,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:05:11,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:05:11,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:05:13,929.929 INFO    ] ================================================
[2026-10-28 21:05:13,944.944 INFO    ] Launching Daemon at Wed Oct 28 21:05:13 IST 2026
[2026-10-28 21:05:13,955.955 INFO    ] ================================================
[2026-10-28 21:05:14,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:05:14
[2026-10-28 21:05:15,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:05:15,420.420 INFO    ] Initializing speech engine...
[2026-10-28 21:05:15,428.428 INFO    ] 2026-10-28 21:05:15
[2026-10-28 21:05:15,715.715 INFO    ] 2026-10-28 21:05:15
[2026-10-28 21:05:15,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:05:16,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:05:16,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:05:16,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:05:16,268.268 INFO    ] time= 28/10/2026 21:05:16
[2026-10-28 21:05:16,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:05:16,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:05:16,434.434 INFO    ] No existing commands found in stream
[2026-10-28 21:05:21,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:05:21,468.468 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-28 21:05:23,720.720 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:05:23,724.724 INFO    ] Checking for system updates...
[2026-10-28 21:05:23,765.765 INFO    ] 200
[2026-10-28 21:05:23,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:05:23,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:05:23,824.824 INFO    ] No update needed
[2026-10-28 21:05:23,826.826 INFO    ] Checking for camera pi updates...
[2026-10-28 21:05:23,864.864 INFO    ] 200
[2026-10-28 21:05:23,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:05:23,907.907 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:05:23,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:05:23,988.988 INFO    ] No camera update needed
[2026-10-28 21:05:23,991.991 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:05:23,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:05:23,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:05:24,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:05:26,043.043 INFO    ] ================================================
[2026-10-28 21:05:26,058.058 INFO    ] Launching Daemon at Wed Oct 28 21:05:26 IST 2026
[2026-10-28 21:05:26,069.069 INFO    ] ================================================
[2026-10-28 21:05:26,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:05:26
[2026-10-28 21:05:27,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:05:27,709.709 INFO    ] Initializing speech engine...
[2026-10-28 21:05:27,717.717 INFO    ] 2026-10-28 21:05:27
[2026-10-28 21:05:27,997.997 INFO    ] 2026-10-28 21:05:27
[2026-10-28 21:05:28,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:05:28,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:05:28,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:05:28,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:05:28,602.602 INFO    ] time= 28/10/2026 21:05:28
[2026-10-28 21:05:28,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:05:28,621.621 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:05:28,776.776 INFO    ] No existing commands found in stream
[2026-10-28 21:05:33,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:05:33,810.810 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 21:05:38,000.000 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:05:38,003.003 INFO    ] Checking for system updates...
[2026-10-28 21:05:38,044.044 INFO    ] 200
[2026-10-28 21:05:38,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:05:38,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:05:38,109.109 INFO    ] No update needed
[2026-10-28 21:05:38,111.111 INFO    ] Checking for camera pi updates...
[2026-10-28 21:05:38,145.145 INFO    ] 200
[2026-10-28 21:05:38,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:05:38,190.190 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:05:38,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:05:38,278.278 INFO    ] No camera update needed
[2026-10-28 21:05:38,280.280 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:05:38,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:05:38,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:05:38,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:05:40,335.335 INFO    ] ================================================
[2026-10-28 21:05:40,349.349 INFO    ] Launching Daemon at Wed Oct 28 21:05:40 IST 2026
[2026-10-28 21:05:40,360.360 INFO    ] ================================================
[2026-10-28 21:05:40,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:05:40
[2026-10-28 21:05:41,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:05:41,777.777 INFO    ] Initializing speech engine...
[2026-10-28 21:05:41,787.787 INFO    ] 2026-10-28 21:05:41
[2026-10-28 21:05:42,037.037 INFO    ] 2026-10-28 21:05:42
[2026-10-28 21:05:42,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:05:42,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:05:42,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:05:42,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:05:42,601.601 INFO    ] time= 28/10/2026 21:05:42
[2026-10-28 21:05:42,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:05:42,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:05:42,779.779 INFO    ] No existing commands found in stream
[2026-10-28 21:05:47,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:05:47,797.797 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-28 21:05:52,127.127 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:05:52,130.130 INFO    ] Checking for system updates...
[2026-10-28 21:05:52,171.171 INFO    ] 200
[2026-10-28 21:05:52,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:05:52,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:05:52,229.229 INFO    ] No update needed
[2026-10-28 21:05:52,231.231 INFO    ] Checking for camera pi updates...
[2026-10-28 21:05:52,269.269 INFO    ] 200
[2026-10-28 21:05:52,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:05:52,312.312 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:05:52,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:05:52,387.387 INFO    ] No camera update needed
[2026-10-28 21:05:52,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:05:52,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:05:52,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:05:52,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:05:54,442.442 INFO    ] ================================================
[2026-10-28 21:05:54,458.458 INFO    ] Launching Daemon at Wed Oct 28 21:05:54 IST 2026
[2026-10-28 21:05:54,468.468 INFO    ] ================================================
[2026-10-28 21:05:55,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:05:55
[2026-10-28 21:05:55,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:05:55,880.880 INFO    ] Initializing speech engine...
[2026-10-28 21:05:55,889.889 INFO    ] 2026-10-28 21:05:55
[2026-10-28 21:05:56,190.190 INFO    ] 2026-10-28 21:05:56
[2026-10-28 21:05:56,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:05:56,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:05:56,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:05:56,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:05:56,752.752 INFO    ] time= 28/10/2026 21:05:56
[2026-10-28 21:05:56,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:05:56,797.797 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:05:56,905.905 INFO    ] No existing commands found in stream
[2026-10-28 21:06:01,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:06:01,932.932 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 21:06:05,539.539 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:06:05,542.542 INFO    ] Checking for system updates...
[2026-10-28 21:06:05,582.582 INFO    ] 200
[2026-10-28 21:06:05,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:06:05,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:06:05,652.652 INFO    ] No update needed
[2026-10-28 21:06:05,655.655 INFO    ] Checking for camera pi updates...
[2026-10-28 21:06:05,688.688 INFO    ] 200
[2026-10-28 21:06:05,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:06:05,735.735 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:06:05,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:06:05,837.837 INFO    ] No camera update needed
[2026-10-28 21:06:05,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:06:05,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:06:05,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:06:05,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:06:07,891.891 INFO    ] ================================================
[2026-10-28 21:06:07,906.906 INFO    ] Launching Daemon at Wed Oct 28 21:06:07 IST 2026
[2026-10-28 21:06:07,917.917 INFO    ] ================================================
[2026-10-28 21:06:08,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:06:08
[2026-10-28 21:06:09,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:06:09,342.342 INFO    ] Initializing speech engine...
[2026-10-28 21:06:09,351.351 INFO    ] 2026-10-28 21:06:09
[2026-10-28 21:06:09,597.597 INFO    ] 2026-10-28 21:06:09
[2026-10-28 21:06:09,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:06:09,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:06:09,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:06:10,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:06:10,151.151 INFO    ] time= 28/10/2026 21:06:10
[2026-10-28 21:06:10,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:06:10,186.186 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:06:10,378.378 INFO    ] No existing commands found in stream
[2026-10-28 21:06:15,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:06:15,411.411 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-28 21:06:16,955.955 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:06:16,957.957 INFO    ] Checking for system updates...
[2026-10-28 21:06:16,992.992 INFO    ] 200
[2026-10-28 21:06:16,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:06:17,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:06:17,050.050 INFO    ] No update needed
[2026-10-28 21:06:17,053.053 INFO    ] Checking for camera pi updates...
[2026-10-28 21:06:17,089.089 INFO    ] 200
[2026-10-28 21:06:17,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:06:17,133.133 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:06:17,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:06:17,218.218 INFO    ] No camera update needed
[2026-10-28 21:06:17,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:06:17,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:06:17,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:06:17,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:06:19,274.274 INFO    ] ================================================
[2026-10-28 21:06:19,289.289 INFO    ] Launching Daemon at Wed Oct 28 21:06:19 IST 2026
[2026-10-28 21:06:19,300.300 INFO    ] ================================================
[2026-10-28 21:06:19,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:06:19
[2026-10-28 21:06:20,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:06:20,800.800 INFO    ] Initializing speech engine...
[2026-10-28 21:06:20,809.809 INFO    ] 2026-10-28 21:06:20
[2026-10-28 21:06:21,125.125 INFO    ] 2026-10-28 21:06:21
[2026-10-28 21:06:21,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:06:21,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:06:21,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:06:21,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:06:21,804.804 INFO    ] time= 28/10/2026 21:06:21
[2026-10-28 21:06:21,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:06:21,892.892 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:06:22,060.060 INFO    ] No existing commands found in stream
[2026-10-28 21:06:27,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:06:27,096.096 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-28 21:06:28,439.439 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:06:28,441.441 INFO    ] Checking for system updates...
[2026-10-28 21:06:28,477.477 INFO    ] 200
[2026-10-28 21:06:28,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:06:28,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:06:28,540.540 INFO    ] No update needed
[2026-10-28 21:06:28,543.543 INFO    ] Checking for camera pi updates...
[2026-10-28 21:06:28,576.576 INFO    ] 200
[2026-10-28 21:06:28,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:06:28,622.622 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:06:28,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:06:28,714.714 INFO    ] No camera update needed
[2026-10-28 21:06:28,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:06:28,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:06:28,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:06:28,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:06:30,771.771 INFO    ] ================================================
[2026-10-28 21:06:30,785.785 INFO    ] Launching Daemon at Wed Oct 28 21:06:30 IST 2026
[2026-10-28 21:06:30,796.796 INFO    ] ================================================
[2026-10-28 21:06:31,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:06:31
[2026-10-28 21:06:32,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:06:32,422.422 INFO    ] Initializing speech engine...
[2026-10-28 21:06:32,434.434 INFO    ] 2026-10-28 21:06:32
[2026-10-28 21:06:32,719.719 INFO    ] 2026-10-28 21:06:32
[2026-10-28 21:06:32,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:06:33,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:06:33,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:06:33,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:06:33,313.313 INFO    ] time= 28/10/2026 21:06:33
[2026-10-28 21:06:33,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:06:33,355.355 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:06:33,521.521 INFO    ] No existing commands found in stream
[2026-10-28 21:06:38,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:06:38,548.548 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-28 21:06:40,245.245 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:06:40,247.247 INFO    ] Checking for system updates...
[2026-10-28 21:06:40,287.287 INFO    ] 200
[2026-10-28 21:06:40,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:06:40,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:06:40,351.351 INFO    ] No update needed
[2026-10-28 21:06:40,353.353 INFO    ] Checking for camera pi updates...
[2026-10-28 21:06:40,391.391 INFO    ] 200
[2026-10-28 21:06:40,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:06:40,439.439 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:06:40,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:06:40,642.642 INFO    ] No camera update needed
[2026-10-28 21:06:40,644.644 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:06:40,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:06:40,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:06:40,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:06:42,696.696 INFO    ] ================================================
[2026-10-28 21:06:42,712.712 INFO    ] Launching Daemon at Wed Oct 28 21:06:42 IST 2026
[2026-10-28 21:06:42,722.722 INFO    ] ================================================
[2026-10-28 21:06:43,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:06:43
[2026-10-28 21:06:43,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:06:44,139.139 INFO    ] Initializing speech engine...
[2026-10-28 21:06:44,146.146 INFO    ] 2026-10-28 21:06:44
[2026-10-28 21:06:44,438.438 INFO    ] 2026-10-28 21:06:44
[2026-10-28 21:06:44,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:06:44,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:06:44,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:06:44,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:06:45,008.008 INFO    ] time= 28/10/2026 21:06:44
[2026-10-28 21:06:45,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:06:45,032.032 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:06:45,164.164 INFO    ] No existing commands found in stream
[2026-10-28 21:06:50,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:06:50,179.179 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-10-28 21:06:53,016.016 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:06:53,019.019 INFO    ] Checking for system updates...
[2026-10-28 21:06:53,057.057 INFO    ] 200
[2026-10-28 21:06:53,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:06:53,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:06:53,116.116 INFO    ] No update needed
[2026-10-28 21:06:53,119.119 INFO    ] Checking for camera pi updates...
[2026-10-28 21:06:53,154.154 INFO    ] 200
[2026-10-28 21:06:53,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:06:53,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:06:53,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:06:53,299.299 INFO    ] No camera update needed
[2026-10-28 21:06:53,301.301 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:06:53,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:06:53,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:06:53,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:06:55,356.356 INFO    ] ================================================
[2026-10-28 21:06:55,372.372 INFO    ] Launching Daemon at Wed Oct 28 21:06:55 IST 2026
[2026-10-28 21:06:55,383.383 INFO    ] ================================================
[2026-10-28 21:06:55,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:06:55
[2026-10-28 21:06:56,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:06:56,825.825 INFO    ] Initializing speech engine...
[2026-10-28 21:06:56,839.839 INFO    ] 2026-10-28 21:06:56
[2026-10-28 21:06:57,104.104 INFO    ] 2026-10-28 21:06:57
[2026-10-28 21:06:57,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:06:57,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:06:57,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:06:57,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:06:57,675.675 INFO    ] time= 28/10/2026 21:06:57
[2026-10-28 21:06:57,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:06:57,699.699 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:06:57,834.834 INFO    ] No existing commands found in stream
[2026-10-28 21:07:02,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:07:02,848.848 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-10-28 21:07:03,516.516 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:07:03,518.518 INFO    ] Checking for system updates...
[2026-10-28 21:07:03,558.558 INFO    ] 200
[2026-10-28 21:07:03,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:07:03,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:07:03,616.616 INFO    ] No update needed
[2026-10-28 21:07:03,619.619 INFO    ] Checking for camera pi updates...
[2026-10-28 21:07:03,656.656 INFO    ] 200
[2026-10-28 21:07:03,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:07:03,700.700 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:07:03,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:07:03,781.781 INFO    ] No camera update needed
[2026-10-28 21:07:03,784.784 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:07:03,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:07:03,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:07:03,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:07:05,837.837 INFO    ] ================================================
[2026-10-28 21:07:05,854.854 INFO    ] Launching Daemon at Wed Oct 28 21:07:05 IST 2026
[2026-10-28 21:07:05,866.866 INFO    ] ================================================
[2026-10-28 21:07:06,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:07:06
[2026-10-28 21:07:07,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:07:07,335.335 INFO    ] Initializing speech engine...
[2026-10-28 21:07:07,342.342 INFO    ] 2026-10-28 21:07:07
[2026-10-28 21:07:07,603.603 INFO    ] 2026-10-28 21:07:07
[2026-10-28 21:07:07,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:07:07,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:07:07,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:07:08,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:07:08,149.149 INFO    ] time= 28/10/2026 21:07:08
[2026-10-28 21:07:08,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:07:08,179.179 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:07:08,360.360 INFO    ] No existing commands found in stream
[2026-10-28 21:07:13,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:07:13,393.393 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-10-28 21:07:16,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:07:16,487.487 INFO    ] Checking for system updates...
[2026-10-28 21:07:16,527.527 INFO    ] 200
[2026-10-28 21:07:16,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:07:16,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:07:16,592.592 INFO    ] No update needed
[2026-10-28 21:07:16,594.594 INFO    ] Checking for camera pi updates...
[2026-10-28 21:07:16,632.632 INFO    ] 200
[2026-10-28 21:07:16,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:07:16,681.681 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:07:16,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:07:16,789.789 INFO    ] No camera update needed
[2026-10-28 21:07:16,791.791 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:07:16,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:07:16,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:07:16,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:07:18,849.849 INFO    ] ================================================
[2026-10-28 21:07:18,864.864 INFO    ] Launching Daemon at Wed Oct 28 21:07:18 IST 2026
[2026-10-28 21:07:18,875.875 INFO    ] ================================================
[2026-10-28 21:07:19,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:07:19
[2026-10-28 21:07:20,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:07:20,280.280 INFO    ] Initializing speech engine...
[2026-10-28 21:07:20,288.288 INFO    ] 2026-10-28 21:07:20
[2026-10-28 21:07:20,559.559 INFO    ] 2026-10-28 21:07:20
[2026-10-28 21:07:20,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:07:20,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:07:20,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:07:21,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:07:21,106.106 INFO    ] time= 28/10/2026 21:07:21
[2026-10-28 21:07:21,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:07:21,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:07:21,290.290 INFO    ] No existing commands found in stream
[2026-10-28 21:07:26,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:07:26,325.325 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 21:07:29,781.781 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:07:29,784.784 INFO    ] Checking for system updates...
[2026-10-28 21:07:29,821.821 INFO    ] 200
[2026-10-28 21:07:29,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:07:29,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:07:29,883.883 INFO    ] No update needed
[2026-10-28 21:07:29,886.886 INFO    ] Checking for camera pi updates...
[2026-10-28 21:07:29,924.924 INFO    ] 200
[2026-10-28 21:07:29,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:07:29,967.967 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:07:30,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:07:30,072.072 INFO    ] No camera update needed
[2026-10-28 21:07:30,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:07:30,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:07:30,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:07:30,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:07:32,131.131 INFO    ] ================================================
[2026-10-28 21:07:32,148.148 INFO    ] Launching Daemon at Wed Oct 28 21:07:32 IST 2026
[2026-10-28 21:07:32,160.160 INFO    ] ================================================
[2026-10-28 21:07:32,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:07:32
[2026-10-28 21:07:33,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:07:33,587.587 INFO    ] Initializing speech engine...
[2026-10-28 21:07:33,601.601 INFO    ] 2026-10-28 21:07:33
[2026-10-28 21:07:33,862.862 INFO    ] 2026-10-28 21:07:33
[2026-10-28 21:07:33,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:07:34,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:07:34,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:07:34,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:07:34,420.420 INFO    ] time= 28/10/2026 21:07:34
[2026-10-28 21:07:34,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:07:34,466.466 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:07:34,603.603 INFO    ] No existing commands found in stream
[2026-10-28 21:07:39,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:07:39,636.636 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-10-28 21:07:42,476.476 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:07:42,478.478 INFO    ] Checking for system updates...
[2026-10-28 21:07:42,514.514 INFO    ] 200
[2026-10-28 21:07:42,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:07:42,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:07:42,580.580 INFO    ] No update needed
[2026-10-28 21:07:42,583.583 INFO    ] Checking for camera pi updates...
[2026-10-28 21:07:42,617.617 INFO    ] 200
[2026-10-28 21:07:42,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:07:42,666.666 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:07:42,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:07:42,753.753 INFO    ] No camera update needed
[2026-10-28 21:07:42,756.756 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:07:42,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:07:42,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:07:42,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:07:44,812.812 INFO    ] ================================================
[2026-10-28 21:07:44,828.828 INFO    ] Launching Daemon at Wed Oct 28 21:07:44 IST 2026
[2026-10-28 21:07:44,839.839 INFO    ] ================================================
[2026-10-28 21:07:45,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:07:45
[2026-10-28 21:07:45,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:07:46,281.281 INFO    ] Initializing speech engine...
[2026-10-28 21:07:46,298.298 INFO    ] 2026-10-28 21:07:46
[2026-10-28 21:07:46,578.578 INFO    ] 2026-10-28 21:07:46
[2026-10-28 21:07:46,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:07:46,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:07:46,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:07:47,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:07:47,229.229 INFO    ] time= 28/10/2026 21:07:47
[2026-10-28 21:07:47,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:07:47,258.258 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:07:47,414.414 INFO    ] No existing commands found in stream
[2026-10-28 21:07:52,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:07:52,432.432 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-28 21:07:55,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:07:55,080.080 INFO    ] Checking for system updates...
[2026-10-28 21:07:55,121.121 INFO    ] 200
[2026-10-28 21:07:55,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:07:55,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:07:55,186.186 INFO    ] No update needed
[2026-10-28 21:07:55,189.189 INFO    ] Checking for camera pi updates...
[2026-10-28 21:07:55,226.226 INFO    ] 200
[2026-10-28 21:07:55,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:07:55,271.271 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:07:55,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:07:55,375.375 INFO    ] No camera update needed
[2026-10-28 21:07:55,377.377 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:07:55,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:07:55,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:07:55,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:07:57,429.429 INFO    ] ================================================
[2026-10-28 21:07:57,445.445 INFO    ] Launching Daemon at Wed Oct 28 21:07:57 IST 2026
[2026-10-28 21:07:57,455.455 INFO    ] ================================================
[2026-10-28 21:07:58,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:07:58
[2026-10-28 21:07:58,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:07:59,116.116 INFO    ] Initializing speech engine...
[2026-10-28 21:07:59,124.124 INFO    ] 2026-10-28 21:07:59
[2026-10-28 21:07:59,401.401 INFO    ] 2026-10-28 21:07:59
[2026-10-28 21:07:59,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:07:59,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:07:59,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:08:00,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:08:00,134.134 INFO    ] time= 28/10/2026 21:08:00
[2026-10-28 21:08:00,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:08:00,213.213 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:08:00,396.396 INFO    ] No existing commands found in stream
[2026-10-28 21:08:05,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:08:05,410.410 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-28 21:08:08,652.652 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:08:08,655.655 INFO    ] Checking for system updates...
[2026-10-28 21:08:08,693.693 INFO    ] 200
[2026-10-28 21:08:08,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:08:08,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:08:08,753.753 INFO    ] No update needed
[2026-10-28 21:08:08,756.756 INFO    ] Checking for camera pi updates...
[2026-10-28 21:08:08,791.791 INFO    ] 200
[2026-10-28 21:08:08,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:08:08,841.841 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:08:08,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:08:08,933.933 INFO    ] No camera update needed
[2026-10-28 21:08:08,936.936 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:08:08,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:08:08,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:08:08,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:08:10,992.992 INFO    ] ================================================
[2026-10-28 21:08:11,007.007 INFO    ] Launching Daemon at Wed Oct 28 21:08:11 IST 2026
[2026-10-28 21:08:11,018.018 INFO    ] ================================================
[2026-10-28 21:08:11,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:08:11
[2026-10-28 21:08:12,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:08:12,669.669 INFO    ] Initializing speech engine...
[2026-10-28 21:08:12,678.678 INFO    ] 2026-10-28 21:08:12
[2026-10-28 21:08:12,970.970 INFO    ] 2026-10-28 21:08:12
[2026-10-28 21:08:13,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:08:13,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:08:13,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:08:13,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:08:13,709.709 INFO    ] time= 28/10/2026 21:08:13
[2026-10-28 21:08:13,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:08:13,793.793 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:08:13,962.962 INFO    ] No existing commands found in stream
[2026-10-28 21:08:18,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:08:18,992.992 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-28 21:08:20,438.438 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:08:20,441.441 INFO    ] Checking for system updates...
[2026-10-28 21:08:20,482.482 INFO    ] 200
[2026-10-28 21:08:20,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:08:20,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:08:20,547.547 INFO    ] No update needed
[2026-10-28 21:08:20,549.549 INFO    ] Checking for camera pi updates...
[2026-10-28 21:08:20,592.592 INFO    ] 200
[2026-10-28 21:08:20,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:08:20,643.643 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:08:20,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:08:20,736.736 INFO    ] No camera update needed
[2026-10-28 21:08:20,739.739 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:08:20,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:08:20,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:08:20,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:08:22,801.801 INFO    ] ================================================
[2026-10-28 21:08:22,816.816 INFO    ] Launching Daemon at Wed Oct 28 21:08:22 IST 2026
[2026-10-28 21:08:22,827.827 INFO    ] ================================================
[2026-10-28 21:08:23,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:08:23
[2026-10-28 21:08:24,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:08:24,289.289 INFO    ] Initializing speech engine...
[2026-10-28 21:08:24,297.297 INFO    ] 2026-10-28 21:08:24
[2026-10-28 21:08:24,574.574 INFO    ] 2026-10-28 21:08:24
[2026-10-28 21:08:24,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:08:24,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:08:24,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:08:25,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:08:25,176.176 INFO    ] time= 28/10/2026 21:08:25
[2026-10-28 21:08:25,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:08:25,189.189 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:08:25,333.333 INFO    ] No existing commands found in stream
[2026-10-28 21:08:30,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:08:30,366.366 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 21:08:33,637.637 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:08:33,640.640 INFO    ] Checking for system updates...
[2026-10-28 21:08:33,680.680 INFO    ] 200
[2026-10-28 21:08:33,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:08:33,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:08:33,746.746 INFO    ] No update needed
[2026-10-28 21:08:33,749.749 INFO    ] Checking for camera pi updates...
[2026-10-28 21:08:33,783.783 INFO    ] 200
[2026-10-28 21:08:33,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:08:33,834.834 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:08:33,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:08:33,932.932 INFO    ] No camera update needed
[2026-10-28 21:08:33,935.935 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:08:33,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:08:33,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:08:33,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:08:35,987.987 INFO    ] ================================================
[2026-10-28 21:08:36,002.002 INFO    ] Launching Daemon at Wed Oct 28 21:08:35 IST 2026
[2026-10-28 21:08:36,012.012 INFO    ] ================================================
[2026-10-28 21:08:36,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:08:36
[2026-10-28 21:08:37,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:08:37,678.678 INFO    ] Initializing speech engine...
[2026-10-28 21:08:37,688.688 INFO    ] 2026-10-28 21:08:37
[2026-10-28 21:08:37,996.996 INFO    ] 2026-10-28 21:08:37
[2026-10-28 21:08:38,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:08:38,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:08:38,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:08:38,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:08:38,698.698 INFO    ] time= 28/10/2026 21:08:38
[2026-10-28 21:08:38,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:08:38,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:08:38,906.906 INFO    ] No existing commands found in stream
[2026-10-28 21:08:43,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:08:43,941.941 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 21:08:46,809.809 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:08:46,811.811 INFO    ] Checking for system updates...
[2026-10-28 21:08:46,848.848 INFO    ] 200
[2026-10-28 21:08:46,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:08:46,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:08:46,905.905 INFO    ] No update needed
[2026-10-28 21:08:46,907.907 INFO    ] Checking for camera pi updates...
[2026-10-28 21:08:46,941.941 INFO    ] 200
[2026-10-28 21:08:46,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:08:46,984.984 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:08:47,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:08:47,172.172 INFO    ] No camera update needed
[2026-10-28 21:08:47,175.175 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:08:47,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:08:47,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:08:47,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:08:49,227.227 INFO    ] ================================================
[2026-10-28 21:08:49,242.242 INFO    ] Launching Daemon at Wed Oct 28 21:08:49 IST 2026
[2026-10-28 21:08:49,253.253 INFO    ] ================================================
[2026-10-28 21:08:49,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:08:49
[2026-10-28 21:08:50,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:08:50,699.699 INFO    ] Initializing speech engine...
[2026-10-28 21:08:50,709.709 INFO    ] 2026-10-28 21:08:50
[2026-10-28 21:08:50,970.970 INFO    ] 2026-10-28 21:08:50
[2026-10-28 21:08:51,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:08:51,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:08:51,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:08:51,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:08:51,458.458 INFO    ] time= 28/10/2026 21:08:51
[2026-10-28 21:08:51,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:08:51,531.531 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:08:51,697.697 INFO    ] No existing commands found in stream
[2026-10-28 21:08:56,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:08:56,730.730 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 21:08:58,651.651 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:08:58,653.653 INFO    ] Checking for system updates...
[2026-10-28 21:08:58,694.694 INFO    ] 200
[2026-10-28 21:08:58,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:08:58,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:08:58,759.759 INFO    ] No update needed
[2026-10-28 21:08:58,762.762 INFO    ] Checking for camera pi updates...
[2026-10-28 21:08:58,796.796 INFO    ] 200
[2026-10-28 21:08:58,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:08:58,844.844 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:08:58,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:08:58,937.937 INFO    ] No camera update needed
[2026-10-28 21:08:58,939.939 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:08:58,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:08:58,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:08:58,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:09:00,993.993 INFO    ] ================================================
[2026-10-28 21:09:01,008.008 INFO    ] Launching Daemon at Wed Oct 28 21:09:01 IST 2026
[2026-10-28 21:09:01,018.018 INFO    ] ================================================
[2026-10-28 21:09:01,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:09:01
[2026-10-28 21:09:02,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:09:02,742.742 INFO    ] Initializing speech engine...
[2026-10-28 21:09:02,753.753 INFO    ] 2026-10-28 21:09:02
[2026-10-28 21:09:03,095.095 INFO    ] 2026-10-28 21:09:03
[2026-10-28 21:09:03,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:09:03,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:09:03,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:09:03,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:09:03,646.646 INFO    ] time= 28/10/2026 21:09:03
[2026-10-28 21:09:03,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:09:03,727.727 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:09:03,884.884 INFO    ] No existing commands found in stream
[2026-10-28 21:09:08,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:09:08,916.916 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-28 21:09:13,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:09:13,158.158 INFO    ] Checking for system updates...
[2026-10-28 21:09:13,194.194 INFO    ] 200
[2026-10-28 21:09:13,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:09:13,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:09:13,251.251 INFO    ] No update needed
[2026-10-28 21:09:13,254.254 INFO    ] Checking for camera pi updates...
[2026-10-28 21:09:13,287.287 INFO    ] 200
[2026-10-28 21:09:13,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:09:13,334.334 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:09:13,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:09:13,417.417 INFO    ] No camera update needed
[2026-10-28 21:09:13,420.420 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:09:13,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:09:13,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:09:13,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:09:15,473.473 INFO    ] ================================================
[2026-10-28 21:09:15,489.489 INFO    ] Launching Daemon at Wed Oct 28 21:09:15 IST 2026
[2026-10-28 21:09:15,499.499 INFO    ] ================================================
[2026-10-28 21:09:16,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:09:16
[2026-10-28 21:09:16,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:09:16,890.890 INFO    ] Initializing speech engine...
[2026-10-28 21:09:16,898.898 INFO    ] 2026-10-28 21:09:16
[2026-10-28 21:09:17,172.172 INFO    ] 2026-10-28 21:09:17
[2026-10-28 21:09:17,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:09:17,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:09:17,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:09:17,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:09:17,737.737 INFO    ] time= 28/10/2026 21:09:17
[2026-10-28 21:09:17,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:09:17,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:09:17,893.893 INFO    ] No existing commands found in stream
[2026-10-28 21:09:22,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:09:22,909.909 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-28 21:09:26,474.474 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:09:26,477.477 INFO    ] Checking for system updates...
[2026-10-28 21:09:26,516.516 INFO    ] 200
[2026-10-28 21:09:26,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:09:26,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:09:26,580.580 INFO    ] No update needed
[2026-10-28 21:09:26,582.582 INFO    ] Checking for camera pi updates...
[2026-10-28 21:09:26,619.619 INFO    ] 200
[2026-10-28 21:09:26,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:09:26,667.667 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:09:26,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:09:26,772.772 INFO    ] No camera update needed
[2026-10-28 21:09:26,775.775 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:09:26,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:09:26,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:09:26,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:09:28,827.827 INFO    ] ================================================
[2026-10-28 21:09:28,841.841 INFO    ] Launching Daemon at Wed Oct 28 21:09:28 IST 2026
[2026-10-28 21:09:28,852.852 INFO    ] ================================================
[2026-10-28 21:09:29,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:09:29
[2026-10-28 21:09:30,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:09:30,284.284 INFO    ] Initializing speech engine...
[2026-10-28 21:09:30,293.293 INFO    ] 2026-10-28 21:09:30
[2026-10-28 21:09:30,562.562 INFO    ] 2026-10-28 21:09:30
[2026-10-28 21:09:30,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:09:30,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:09:30,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:09:31,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:09:31,207.207 INFO    ] time= 28/10/2026 21:09:31
[2026-10-28 21:09:31,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:09:31,230.230 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:09:31,357.357 INFO    ] No existing commands found in stream
[2026-10-28 21:09:36,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:09:36,390.390 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-28 21:09:41,014.014 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:09:41,016.016 INFO    ] Checking for system updates...
[2026-10-28 21:09:41,055.055 INFO    ] 200
[2026-10-28 21:09:41,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:09:41,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:09:41,118.118 INFO    ] No update needed
[2026-10-28 21:09:41,120.120 INFO    ] Checking for camera pi updates...
[2026-10-28 21:09:41,157.157 INFO    ] 200
[2026-10-28 21:09:41,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:09:41,201.201 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:09:41,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:09:41,292.292 INFO    ] No camera update needed
[2026-10-28 21:09:41,295.295 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:09:41,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:09:41,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:09:41,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:09:43,349.349 INFO    ] ================================================
[2026-10-28 21:09:43,367.367 INFO    ] Launching Daemon at Wed Oct 28 21:09:43 IST 2026
[2026-10-28 21:09:43,379.379 INFO    ] ================================================
[2026-10-28 21:09:43,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:09:43
[2026-10-28 21:09:44,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:09:44,943.943 INFO    ] Initializing speech engine...
[2026-10-28 21:09:44,955.955 INFO    ] 2026-10-28 21:09:44
[2026-10-28 21:09:45,230.230 INFO    ] 2026-10-28 21:09:45
[2026-10-28 21:09:45,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:09:45,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:09:45,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:09:45,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:09:45,835.835 INFO    ] time= 28/10/2026 21:09:45
[2026-10-28 21:09:45,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:09:45,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:09:45,997.997 INFO    ] No existing commands found in stream
[2026-10-28 21:09:51,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:09:51,031.031 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-10-28 21:09:55,564.564 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:09:55,566.566 INFO    ] Checking for system updates...
[2026-10-28 21:09:55,604.604 INFO    ] 200
[2026-10-28 21:09:55,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:09:55,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:09:55,662.662 INFO    ] No update needed
[2026-10-28 21:09:55,664.664 INFO    ] Checking for camera pi updates...
[2026-10-28 21:09:55,697.697 INFO    ] 200
[2026-10-28 21:09:55,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:09:55,744.744 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:09:55,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:09:55,826.826 INFO    ] No camera update needed
[2026-10-28 21:09:55,828.828 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:09:55,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:09:55,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:09:55,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:09:57,881.881 INFO    ] ================================================
[2026-10-28 21:09:57,896.896 INFO    ] Launching Daemon at Wed Oct 28 21:09:57 IST 2026
[2026-10-28 21:09:57,907.907 INFO    ] ================================================
[2026-10-28 21:09:58,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:09:58
[2026-10-28 21:09:59,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:09:59,305.305 INFO    ] Initializing speech engine...
[2026-10-28 21:09:59,314.314 INFO    ] 2026-10-28 21:09:59
[2026-10-28 21:09:59,605.605 INFO    ] 2026-10-28 21:09:59
[2026-10-28 21:09:59,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:09:59,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:09:59,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:10:00,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:10:00,113.113 INFO    ] time= 28/10/2026 21:10:00
[2026-10-28 21:10:00,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:10:00,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:10:00,355.355 INFO    ] No existing commands found in stream
[2026-10-28 21:10:05,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:10:05,380.380 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 21:10:09,233.233 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:10:09,235.235 INFO    ] Checking for system updates...
[2026-10-28 21:10:09,275.275 INFO    ] 200
[2026-10-28 21:10:09,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:10:09,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:10:09,331.331 INFO    ] No update needed
[2026-10-28 21:10:09,333.333 INFO    ] Checking for camera pi updates...
[2026-10-28 21:10:09,371.371 INFO    ] 200
[2026-10-28 21:10:09,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:10:09,417.417 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:10:09,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:10:09,508.508 INFO    ] No camera update needed
[2026-10-28 21:10:09,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:10:09,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:10:09,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:10:09,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:10:11,562.562 INFO    ] ================================================
[2026-10-28 21:10:11,578.578 INFO    ] Launching Daemon at Wed Oct 28 21:10:11 IST 2026
[2026-10-28 21:10:11,594.594 INFO    ] ================================================
[2026-10-28 21:10:12,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:10:12
[2026-10-28 21:10:12,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:10:13,058.058 INFO    ] Initializing speech engine...
[2026-10-28 21:10:13,066.066 INFO    ] 2026-10-28 21:10:13
[2026-10-28 21:10:13,326.326 INFO    ] 2026-10-28 21:10:13
[2026-10-28 21:10:13,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:10:13,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:10:13,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:10:13,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:10:13,884.884 INFO    ] time= 28/10/2026 21:10:13
[2026-10-28 21:10:13,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:10:13,920.920 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:10:14,080.080 INFO    ] No existing commands found in stream
[2026-10-28 21:10:19,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:10:19,113.113 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 21:10:21,722.722 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:10:21,725.725 INFO    ] Checking for system updates...
[2026-10-28 21:10:21,764.764 INFO    ] 200
[2026-10-28 21:10:21,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:10:21,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:10:21,822.822 INFO    ] No update needed
[2026-10-28 21:10:21,825.825 INFO    ] Checking for camera pi updates...
[2026-10-28 21:10:21,858.858 INFO    ] 200
[2026-10-28 21:10:21,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:10:21,901.901 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:10:21,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:10:21,982.982 INFO    ] No camera update needed
[2026-10-28 21:10:21,984.984 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:10:21,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:10:21,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:10:21,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:10:24,039.039 INFO    ] ================================================
[2026-10-28 21:10:24,054.054 INFO    ] Launching Daemon at Wed Oct 28 21:10:24 IST 2026
[2026-10-28 21:10:24,064.064 INFO    ] ================================================
[2026-10-28 21:10:24,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:10:24
[2026-10-28 21:10:25,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:10:25,681.681 INFO    ] Initializing speech engine...
[2026-10-28 21:10:25,692.692 INFO    ] 2026-10-28 21:10:25
[2026-10-28 21:10:26,002.002 INFO    ] 2026-10-28 21:10:25
[2026-10-28 21:10:26,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:10:26,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:10:26,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:10:26,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:10:26,731.731 INFO    ] time= 28/10/2026 21:10:26
[2026-10-28 21:10:26,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:10:26,822.822 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:10:26,945.945 INFO    ] No existing commands found in stream
[2026-10-28 21:10:31,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:10:31,967.967 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 21:10:34,551.551 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:10:34,554.554 INFO    ] Checking for system updates...
[2026-10-28 21:10:34,595.595 INFO    ] 200
[2026-10-28 21:10:34,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:10:34,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:10:34,653.653 INFO    ] No update needed
[2026-10-28 21:10:34,656.656 INFO    ] Checking for camera pi updates...
[2026-10-28 21:10:34,694.694 INFO    ] 200
[2026-10-28 21:10:34,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:10:34,744.744 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:10:34,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:10:34,831.831 INFO    ] No camera update needed
[2026-10-28 21:10:34,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:10:34,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:10:34,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:10:34,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:10:36,896.896 INFO    ] ================================================
[2026-10-28 21:10:36,911.911 INFO    ] Launching Daemon at Wed Oct 28 21:10:36 IST 2026
[2026-10-28 21:10:36,921.921 INFO    ] ================================================
[2026-10-28 21:10:37,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:10:37
[2026-10-28 21:10:38,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:10:38,344.344 INFO    ] Initializing speech engine...
[2026-10-28 21:10:38,353.353 INFO    ] 2026-10-28 21:10:38
[2026-10-28 21:10:38,650.650 INFO    ] 2026-10-28 21:10:38
[2026-10-28 21:10:38,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:10:38,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:10:38,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:10:39,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:10:39,267.267 INFO    ] time= 28/10/2026 21:10:39
[2026-10-28 21:10:39,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:10:39,307.307 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:10:39,430.430 INFO    ] No existing commands found in stream
[2026-10-28 21:10:44,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:10:44,459.459 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 21:10:46,285.285 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:10:46,287.287 INFO    ] Checking for system updates...
[2026-10-28 21:10:46,327.327 INFO    ] 200
[2026-10-28 21:10:46,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:10:46,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:10:46,390.390 INFO    ] No update needed
[2026-10-28 21:10:46,393.393 INFO    ] Checking for camera pi updates...
[2026-10-28 21:10:46,427.427 INFO    ] 200
[2026-10-28 21:10:46,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:10:46,478.478 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:10:46,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:10:46,584.584 INFO    ] No camera update needed
[2026-10-28 21:10:46,586.586 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:10:46,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:10:46,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:10:46,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:10:48,640.640 INFO    ] ================================================
[2026-10-28 21:10:48,655.655 INFO    ] Launching Daemon at Wed Oct 28 21:10:48 IST 2026
[2026-10-28 21:10:48,665.665 INFO    ] ================================================
[2026-10-28 21:10:49,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:10:49
[2026-10-28 21:10:49,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:10:50,095.095 INFO    ] Initializing speech engine...
[2026-10-28 21:10:50,104.104 INFO    ] 2026-10-28 21:10:50
[2026-10-28 21:10:50,350.350 INFO    ] 2026-10-28 21:10:50
[2026-10-28 21:10:50,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:10:50,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:10:50,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:10:50,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:10:50,905.905 INFO    ] time= 28/10/2026 21:10:50
[2026-10-28 21:10:50,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:10:50,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:10:51,076.076 INFO    ] No existing commands found in stream
[2026-10-28 21:10:56,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:10:56,109.109 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-28 21:10:58,909.909 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:10:58,912.912 INFO    ] Checking for system updates...
[2026-10-28 21:10:58,951.951 INFO    ] 200
[2026-10-28 21:10:58,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:10:59,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:10:59,014.014 INFO    ] No update needed
[2026-10-28 21:10:59,017.017 INFO    ] Checking for camera pi updates...
[2026-10-28 21:10:59,050.050 INFO    ] 200
[2026-10-28 21:10:59,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:10:59,092.092 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:10:59,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:10:59,286.286 INFO    ] No camera update needed
[2026-10-28 21:10:59,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:10:59,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:10:59,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:10:59,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:11:01,342.342 INFO    ] ================================================
[2026-10-28 21:11:01,356.356 INFO    ] Launching Daemon at Wed Oct 28 21:11:01 IST 2026
[2026-10-28 21:11:01,367.367 INFO    ] ================================================
[2026-10-28 21:11:02,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:11:02
[2026-10-28 21:11:02,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:11:03,072.072 INFO    ] Initializing speech engine...
[2026-10-28 21:11:03,081.081 INFO    ] 2026-10-28 21:11:03
[2026-10-28 21:11:03,386.386 INFO    ] 2026-10-28 21:11:03
[2026-10-28 21:11:03,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:11:03,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:11:03,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:11:03,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:11:03,974.974 INFO    ] time= 28/10/2026 21:11:03
[2026-10-28 21:11:03,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:11:04,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:11:04,132.132 INFO    ] No existing commands found in stream
[2026-10-28 21:11:09,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:11:09,151.151 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-28 21:11:12,939.939 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:11:12,942.942 INFO    ] Checking for system updates...
[2026-10-28 21:11:12,980.980 INFO    ] 200
[2026-10-28 21:11:12,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:11:13,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:11:13,039.039 INFO    ] No update needed
[2026-10-28 21:11:13,042.042 INFO    ] Checking for camera pi updates...
[2026-10-28 21:11:13,077.077 INFO    ] 200
[2026-10-28 21:11:13,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:11:13,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:11:13,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:11:13,227.227 INFO    ] No camera update needed
[2026-10-28 21:11:13,230.230 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:11:13,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:11:13,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:11:13,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:11:15,287.287 INFO    ] ================================================
[2026-10-28 21:11:15,302.302 INFO    ] Launching Daemon at Wed Oct 28 21:11:15 IST 2026
[2026-10-28 21:11:15,313.313 INFO    ] ================================================
[2026-10-28 21:11:15,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:11:15
[2026-10-28 21:11:16,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:11:16,727.727 INFO    ] Initializing speech engine...
[2026-10-28 21:11:16,749.749 INFO    ] 2026-10-28 21:11:16
[2026-10-28 21:11:17,003.003 INFO    ] 2026-10-28 21:11:16
[2026-10-28 21:11:17,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:11:17,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:11:17,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:11:17,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:11:17,613.613 INFO    ] time= 28/10/2026 21:11:17
[2026-10-28 21:11:17,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:11:17,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:11:17,848.848 INFO    ] No existing commands found in stream
[2026-10-28 21:11:22,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:11:22,882.882 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-28 21:11:24,284.284 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:11:24,287.287 INFO    ] Checking for system updates...
[2026-10-28 21:11:24,329.329 INFO    ] 200
[2026-10-28 21:11:24,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:11:24,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:11:24,389.389 INFO    ] No update needed
[2026-10-28 21:11:24,392.392 INFO    ] Checking for camera pi updates...
[2026-10-28 21:11:24,431.431 INFO    ] 200
[2026-10-28 21:11:24,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:11:24,480.480 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:11:24,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:11:24,570.570 INFO    ] No camera update needed
[2026-10-28 21:11:24,573.573 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:11:24,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:11:24,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:11:24,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:11:26,628.628 INFO    ] ================================================
[2026-10-28 21:11:26,643.643 INFO    ] Launching Daemon at Wed Oct 28 21:11:26 IST 2026
[2026-10-28 21:11:26,654.654 INFO    ] ================================================
[2026-10-28 21:11:27,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:11:27
[2026-10-28 21:11:27,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:11:28,094.094 INFO    ] Initializing speech engine...
[2026-10-28 21:11:28,103.103 INFO    ] 2026-10-28 21:11:28
[2026-10-28 21:11:28,373.373 INFO    ] 2026-10-28 21:11:28
[2026-10-28 21:11:28,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:11:28,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:11:28,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:11:28,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:11:28,966.966 INFO    ] time= 28/10/2026 21:11:28
[2026-10-28 21:11:28,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:11:29,009.009 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:11:29,176.176 INFO    ] No existing commands found in stream
[2026-10-28 21:11:34,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:11:34,210.210 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-10-28 21:11:37,593.593 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:11:37,596.596 INFO    ] Checking for system updates...
[2026-10-28 21:11:37,638.638 INFO    ] 200
[2026-10-28 21:11:37,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:11:37,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:11:37,697.697 INFO    ] No update needed
[2026-10-28 21:11:37,700.700 INFO    ] Checking for camera pi updates...
[2026-10-28 21:11:37,735.735 INFO    ] 200
[2026-10-28 21:11:37,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:11:37,781.781 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:11:37,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:11:37,866.866 INFO    ] No camera update needed
[2026-10-28 21:11:37,869.869 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:11:37,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:11:37,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:11:37,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:11:39,926.926 INFO    ] ================================================
[2026-10-28 21:11:39,941.941 INFO    ] Launching Daemon at Wed Oct 28 21:11:39 IST 2026
[2026-10-28 21:11:39,951.951 INFO    ] ================================================
[2026-10-28 21:11:40,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:11:40
[2026-10-28 21:11:41,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:11:41,571.571 INFO    ] Initializing speech engine...
[2026-10-28 21:11:41,584.584 INFO    ] 2026-10-28 21:11:41
[2026-10-28 21:11:41,898.898 INFO    ] 2026-10-28 21:11:41
[2026-10-28 21:11:41,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:11:42,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:11:42,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:11:42,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:11:42,494.494 INFO    ] time= 28/10/2026 21:11:42
[2026-10-28 21:11:42,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:11:42,524.524 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:11:42,662.662 INFO    ] No existing commands found in stream
[2026-10-28 21:11:47,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:11:47,678.678 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 21:11:48,299.299 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:11:48,302.302 INFO    ] Checking for system updates...
[2026-10-28 21:11:48,356.356 INFO    ] 200
[2026-10-28 21:11:48,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:11:48,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:11:48,424.424 INFO    ] No update needed
[2026-10-28 21:11:48,427.427 INFO    ] Checking for camera pi updates...
[2026-10-28 21:11:48,465.465 INFO    ] 200
[2026-10-28 21:11:48,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:11:48,539.539 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:11:48,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:11:48,631.631 INFO    ] No camera update needed
[2026-10-28 21:11:48,634.634 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:11:48,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:11:48,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:11:48,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:11:50,692.692 INFO    ] ================================================
[2026-10-28 21:11:50,708.708 INFO    ] Launching Daemon at Wed Oct 28 21:11:50 IST 2026
[2026-10-28 21:11:50,719.719 INFO    ] ================================================
[2026-10-28 21:11:51,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:11:51
[2026-10-28 21:11:51,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:11:52,154.154 INFO    ] Initializing speech engine...
[2026-10-28 21:11:52,162.162 INFO    ] 2026-10-28 21:11:52
[2026-10-28 21:11:52,413.413 INFO    ] 2026-10-28 21:11:52
[2026-10-28 21:11:52,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:11:52,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:11:52,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:11:52,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:11:52,911.911 INFO    ] time= 28/10/2026 21:11:52
[2026-10-28 21:11:52,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:11:52,989.989 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:11:53,118.118 INFO    ] No existing commands found in stream
[2026-10-28 21:11:58,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:11:58,139.139 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 21:12:02,278.278 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:12:02,282.282 INFO    ] Checking for system updates...
[2026-10-28 21:12:02,329.329 INFO    ] 200
[2026-10-28 21:12:02,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:12:02,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:12:02,398.398 INFO    ] No update needed
[2026-10-28 21:12:02,402.402 INFO    ] Checking for camera pi updates...
[2026-10-28 21:12:02,446.446 INFO    ] 200
[2026-10-28 21:12:02,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:12:02,500.500 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:12:02,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:12:02,621.621 INFO    ] No camera update needed
[2026-10-28 21:12:02,624.624 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:12:02,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:12:02,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:12:02,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:12:04,684.684 INFO    ] ================================================
[2026-10-28 21:12:04,700.700 INFO    ] Launching Daemon at Wed Oct 28 21:12:04 IST 2026
[2026-10-28 21:12:04,710.710 INFO    ] ================================================
[2026-10-28 21:12:05,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:12:05
[2026-10-28 21:12:05,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:12:06,117.117 INFO    ] Initializing speech engine...
[2026-10-28 21:12:06,132.132 INFO    ] 2026-10-28 21:12:06
[2026-10-28 21:12:06,398.398 INFO    ] 2026-10-28 21:12:06
[2026-10-28 21:12:06,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:12:06,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:12:06,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:12:06,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:12:06,978.978 INFO    ] time= 28/10/2026 21:12:06
[2026-10-28 21:12:06,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:12:06,999.999 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:12:07,142.142 INFO    ] No existing commands found in stream
[2026-10-28 21:12:12,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:12:12,163.163 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-28 21:12:13,832.832 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:12:13,835.835 INFO    ] Checking for system updates...
[2026-10-28 21:12:13,871.871 INFO    ] 200
[2026-10-28 21:12:13,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:12:13,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:12:13,931.931 INFO    ] No update needed
[2026-10-28 21:12:13,934.934 INFO    ] Checking for camera pi updates...
[2026-10-28 21:12:13,969.969 INFO    ] 200
[2026-10-28 21:12:13,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:12:14,013.013 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:12:14,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:12:14,082.082 INFO    ] No camera update needed
[2026-10-28 21:12:14,085.085 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:12:14,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:12:14,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:12:14,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:12:16,140.140 INFO    ] ================================================
[2026-10-28 21:12:16,155.155 INFO    ] Launching Daemon at Wed Oct 28 21:12:16 IST 2026
[2026-10-28 21:12:16,165.165 INFO    ] ================================================
[2026-10-28 21:12:16,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:12:16
[2026-10-28 21:12:17,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:12:17,626.626 INFO    ] Initializing speech engine...
[2026-10-28 21:12:17,632.632 INFO    ] 2026-10-28 21:12:17
[2026-10-28 21:12:17,894.894 INFO    ] 2026-10-28 21:12:17
[2026-10-28 21:12:17,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:12:18,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:12:18,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:12:18,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:12:18,441.441 INFO    ] time= 28/10/2026 21:12:18
[2026-10-28 21:12:18,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:12:18,488.488 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:12:18,596.596 INFO    ] No existing commands found in stream
[2026-10-28 21:12:23,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:12:23,622.622 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-28 21:12:27,400.400 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:12:27,403.403 INFO    ] Checking for system updates...
[2026-10-28 21:12:27,438.438 INFO    ] 200
[2026-10-28 21:12:27,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:12:27,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:12:27,495.495 INFO    ] No update needed
[2026-10-28 21:12:27,498.498 INFO    ] Checking for camera pi updates...
[2026-10-28 21:12:27,532.532 INFO    ] 200
[2026-10-28 21:12:27,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:12:27,576.576 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:12:27,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:12:27,671.671 INFO    ] No camera update needed
[2026-10-28 21:12:27,674.674 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:12:27,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:12:27,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:12:27,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:12:29,728.728 INFO    ] ================================================
[2026-10-28 21:12:29,743.743 INFO    ] Launching Daemon at Wed Oct 28 21:12:29 IST 2026
[2026-10-28 21:12:29,754.754 INFO    ] ================================================
[2026-10-28 21:12:30,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:12:30
[2026-10-28 21:12:30,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:12:31,221.221 INFO    ] Initializing speech engine...
[2026-10-28 21:12:31,230.230 INFO    ] 2026-10-28 21:12:31
[2026-10-28 21:12:31,480.480 INFO    ] 2026-10-28 21:12:31
[2026-10-28 21:12:31,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:12:31,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:12:31,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:12:32,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:12:32,065.065 INFO    ] time= 28/10/2026 21:12:32
[2026-10-28 21:12:32,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:12:32,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:12:32,255.255 INFO    ] No existing commands found in stream
[2026-10-28 21:12:37,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:12:37,283.283 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 21:12:39,951.951 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:12:39,954.954 INFO    ] Checking for system updates...
[2026-10-28 21:12:39,994.994 INFO    ] 200
[2026-10-28 21:12:39,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:12:40,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:12:40,051.051 INFO    ] No update needed
[2026-10-28 21:12:40,054.054 INFO    ] Checking for camera pi updates...
[2026-10-28 21:12:40,088.088 INFO    ] 200
[2026-10-28 21:12:40,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:12:40,138.138 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:12:40,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:12:40,221.221 INFO    ] No camera update needed
[2026-10-28 21:12:40,224.224 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:12:40,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:12:40,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:12:40,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:12:42,278.278 INFO    ] ================================================
[2026-10-28 21:12:42,293.293 INFO    ] Launching Daemon at Wed Oct 28 21:12:42 IST 2026
[2026-10-28 21:12:42,304.304 INFO    ] ================================================
[2026-10-28 21:12:42,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:12:42
[2026-10-28 21:12:43,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:12:43,759.759 INFO    ] Initializing speech engine...
[2026-10-28 21:12:43,766.766 INFO    ] 2026-10-28 21:12:43
[2026-10-28 21:12:44,028.028 INFO    ] 2026-10-28 21:12:44
[2026-10-28 21:12:44,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:12:44,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:12:44,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:12:44,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:12:44,584.584 INFO    ] time= 28/10/2026 21:12:44
[2026-10-28 21:12:44,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:12:44,620.620 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:12:44,742.742 INFO    ] No existing commands found in stream
[2026-10-28 21:12:49,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:12:49,780.780 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-28 21:12:51,352.352 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:12:51,355.355 INFO    ] Checking for system updates...
[2026-10-28 21:12:51,394.394 INFO    ] 200
[2026-10-28 21:12:51,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:12:51,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:12:51,451.451 INFO    ] No update needed
[2026-10-28 21:12:51,453.453 INFO    ] Checking for camera pi updates...
[2026-10-28 21:12:51,486.486 INFO    ] 200
[2026-10-28 21:12:51,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:12:51,530.530 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:12:51,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:12:51,634.634 INFO    ] No camera update needed
[2026-10-28 21:12:51,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:12:51,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:12:51,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:12:51,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:12:53,689.689 INFO    ] ================================================
[2026-10-28 21:12:53,704.704 INFO    ] Launching Daemon at Wed Oct 28 21:12:53 IST 2026
[2026-10-28 21:12:53,715.715 INFO    ] ================================================
[2026-10-28 21:12:54,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:12:54
[2026-10-28 21:12:54,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:12:55,158.158 INFO    ] Initializing speech engine...
[2026-10-28 21:12:55,165.165 INFO    ] 2026-10-28 21:12:55
[2026-10-28 21:12:55,463.463 INFO    ] 2026-10-28 21:12:55
[2026-10-28 21:12:55,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:12:55,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:12:55,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:12:56,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:12:56,095.095 INFO    ] time= 28/10/2026 21:12:56
[2026-10-28 21:12:56,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:12:56,105.105 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:12:56,272.272 INFO    ] No existing commands found in stream
[2026-10-28 21:13:01,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:13:01,291.291 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-28 21:13:05,679.679 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:13:05,681.681 INFO    ] Checking for system updates...
[2026-10-28 21:13:05,717.717 INFO    ] 200
[2026-10-28 21:13:05,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:13:05,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:13:05,781.781 INFO    ] No update needed
[2026-10-28 21:13:05,783.783 INFO    ] Checking for camera pi updates...
[2026-10-28 21:13:05,816.816 INFO    ] 200
[2026-10-28 21:13:05,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:13:05,859.859 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:13:05,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:13:05,944.944 INFO    ] No camera update needed
[2026-10-28 21:13:05,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:13:05,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:13:05,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:13:05,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:13:08,000.000 INFO    ] ================================================
[2026-10-28 21:13:08,015.015 INFO    ] Launching Daemon at Wed Oct 28 21:13:08 IST 2026
[2026-10-28 21:13:08,025.025 INFO    ] ================================================
[2026-10-28 21:13:08,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:13:08
[2026-10-28 21:13:09,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:13:09,442.442 INFO    ] Initializing speech engine...
[2026-10-28 21:13:09,448.448 INFO    ] 2026-10-28 21:13:09
[2026-10-28 21:13:09,742.742 INFO    ] 2026-10-28 21:13:09
[2026-10-28 21:13:09,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:13:10,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:13:10,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:13:10,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:13:10,300.300 INFO    ] time= 28/10/2026 21:13:10
[2026-10-28 21:13:10,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:13:10,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:13:10,516.516 INFO    ] No existing commands found in stream
[2026-10-28 21:13:15,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:13:15,541.541 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-10-28 21:13:16,999.999 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:13:17,002.002 INFO    ] Checking for system updates...
[2026-10-28 21:13:17,037.037 INFO    ] 200
[2026-10-28 21:13:17,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:13:17,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:13:17,095.095 INFO    ] No update needed
[2026-10-28 21:13:17,098.098 INFO    ] Checking for camera pi updates...
[2026-10-28 21:13:17,135.135 INFO    ] 200
[2026-10-28 21:13:17,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:13:17,178.178 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:13:17,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:13:17,263.263 INFO    ] No camera update needed
[2026-10-28 21:13:17,265.265 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:13:17,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:13:17,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:13:17,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:13:19,317.317 INFO    ] ================================================
[2026-10-28 21:13:19,332.332 INFO    ] Launching Daemon at Wed Oct 28 21:13:19 IST 2026
[2026-10-28 21:13:19,342.342 INFO    ] ================================================
[2026-10-28 21:13:19,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:13:19
[2026-10-28 21:13:20,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:13:20,764.764 INFO    ] Initializing speech engine...
[2026-10-28 21:13:20,778.778 INFO    ] 2026-10-28 21:13:20
[2026-10-28 21:13:21,061.061 INFO    ] 2026-10-28 21:13:21
[2026-10-28 21:13:21,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:13:21,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:13:21,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:13:21,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:13:21,484.484 INFO    ] time= 28/10/2026 21:13:21
[2026-10-28 21:13:21,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:13:21,558.558 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:13:21,688.688 INFO    ] No existing commands found in stream
[2026-10-28 21:13:26,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:13:26,717.717 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-10-28 21:13:29,053.053 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:13:29,056.056 INFO    ] Checking for system updates...
[2026-10-28 21:13:29,091.091 INFO    ] 200
[2026-10-28 21:13:29,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:13:29,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:13:29,148.148 INFO    ] No update needed
[2026-10-28 21:13:29,150.150 INFO    ] Checking for camera pi updates...
[2026-10-28 21:13:29,184.184 INFO    ] 200
[2026-10-28 21:13:29,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:13:29,226.226 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:13:29,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:13:29,303.303 INFO    ] No camera update needed
[2026-10-28 21:13:29,306.306 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:13:29,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:13:29,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:13:29,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:13:31,358.358 INFO    ] ================================================
[2026-10-28 21:13:31,373.373 INFO    ] Launching Daemon at Wed Oct 28 21:13:31 IST 2026
[2026-10-28 21:13:31,384.384 INFO    ] ================================================
[2026-10-28 21:13:31,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:13:31
[2026-10-28 21:13:32,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:13:32,913.913 INFO    ] Initializing speech engine...
[2026-10-28 21:13:32,923.923 INFO    ] 2026-10-28 21:13:32
[2026-10-28 21:13:33,190.190 INFO    ] 2026-10-28 21:13:33
[2026-10-28 21:13:33,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:13:33,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:13:33,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:13:33,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:13:33,813.813 INFO    ] time= 28/10/2026 21:13:33
[2026-10-28 21:13:33,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:13:33,836.836 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:13:33,959.959 INFO    ] No existing commands found in stream
[2026-10-28 21:13:38,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:13:38,992.992 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 21:13:42,736.736 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:13:42,739.739 INFO    ] Checking for system updates...
[2026-10-28 21:13:42,774.774 INFO    ] 200
[2026-10-28 21:13:42,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:13:42,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:13:42,831.831 INFO    ] No update needed
[2026-10-28 21:13:42,833.833 INFO    ] Checking for camera pi updates...
[2026-10-28 21:13:42,871.871 INFO    ] 200
[2026-10-28 21:13:42,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:13:42,913.913 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:13:43,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:13:43,009.009 INFO    ] No camera update needed
[2026-10-28 21:13:43,011.011 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:13:43,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:13:43,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:13:43,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:13:45,066.066 INFO    ] ================================================
[2026-10-28 21:13:45,080.080 INFO    ] Launching Daemon at Wed Oct 28 21:13:45 IST 2026
[2026-10-28 21:13:45,091.091 INFO    ] ================================================
[2026-10-28 21:13:45,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:13:45
[2026-10-28 21:13:46,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:13:46,506.506 INFO    ] Initializing speech engine...
[2026-10-28 21:13:46,512.512 INFO    ] 2026-10-28 21:13:46
[2026-10-28 21:13:46,810.810 INFO    ] 2026-10-28 21:13:46
[2026-10-28 21:13:46,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:13:47,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:13:47,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:13:47,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:13:47,352.352 INFO    ] time= 28/10/2026 21:13:47
[2026-10-28 21:13:47,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:13:47,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:13:47,621.621 INFO    ] No existing commands found in stream
[2026-10-28 21:13:52,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:13:52,645.645 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-28 21:13:55,570.570 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:13:55,573.573 INFO    ] Checking for system updates...
[2026-10-28 21:13:55,612.612 INFO    ] 200
[2026-10-28 21:13:55,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:13:55,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:13:55,670.670 INFO    ] No update needed
[2026-10-28 21:13:55,672.672 INFO    ] Checking for camera pi updates...
[2026-10-28 21:13:55,706.706 INFO    ] 200
[2026-10-28 21:13:55,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:13:55,754.754 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:13:55,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:13:55,835.835 INFO    ] No camera update needed
[2026-10-28 21:13:55,837.837 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:13:55,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:13:55,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:13:55,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:13:57,891.891 INFO    ] ================================================
[2026-10-28 21:13:57,907.907 INFO    ] Launching Daemon at Wed Oct 28 21:13:57 IST 2026
[2026-10-28 21:13:57,917.917 INFO    ] ================================================
[2026-10-28 21:13:58,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:13:58
[2026-10-28 21:13:59,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:13:59,349.349 INFO    ] Initializing speech engine...
[2026-10-28 21:13:59,359.359 INFO    ] 2026-10-28 21:13:59
[2026-10-28 21:13:59,609.609 INFO    ] 2026-10-28 21:13:59
[2026-10-28 21:13:59,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:13:59,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:13:59,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:14:00,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:14:00,177.177 INFO    ] time= 28/10/2026 21:14:00
[2026-10-28 21:14:00,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:14:00,202.202 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:14:00,337.337 INFO    ] No existing commands found in stream
[2026-10-28 21:14:05,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:14:05,358.358 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-28 21:14:06,089.089 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:14:06,092.092 INFO    ] Checking for system updates...
[2026-10-28 21:14:06,127.127 INFO    ] 200
[2026-10-28 21:14:06,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:14:06,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:14:06,189.189 INFO    ] No update needed
[2026-10-28 21:14:06,191.191 INFO    ] Checking for camera pi updates...
[2026-10-28 21:14:06,224.224 INFO    ] 200
[2026-10-28 21:14:06,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:14:06,267.267 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:14:06,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:14:06,359.359 INFO    ] No camera update needed
[2026-10-28 21:14:06,361.361 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:14:06,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:14:06,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:14:06,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:14:08,419.419 INFO    ] ================================================
[2026-10-28 21:14:08,434.434 INFO    ] Launching Daemon at Wed Oct 28 21:14:08 IST 2026
[2026-10-28 21:14:08,444.444 INFO    ] ================================================
[2026-10-28 21:14:09,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:14:09
[2026-10-28 21:14:09,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:14:09,855.855 INFO    ] Initializing speech engine...
[2026-10-28 21:14:09,864.864 INFO    ] 2026-10-28 21:14:09
[2026-10-28 21:14:10,153.153 INFO    ] 2026-10-28 21:14:10
[2026-10-28 21:14:10,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:14:10,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:14:10,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:14:10,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:14:10,680.680 INFO    ] time= 28/10/2026 21:14:10
[2026-10-28 21:14:10,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:14:10,782.782 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:14:10,913.913 INFO    ] No existing commands found in stream
[2026-10-28 21:14:15,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:14:15,938.938 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-10-28 21:14:16,608.608 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:14:16,610.610 INFO    ] Checking for system updates...
[2026-10-28 21:14:16,646.646 INFO    ] 200
[2026-10-28 21:14:16,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:14:16,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:14:16,709.709 INFO    ] No update needed
[2026-10-28 21:14:16,711.711 INFO    ] Checking for camera pi updates...
[2026-10-28 21:14:16,744.744 INFO    ] 200
[2026-10-28 21:14:16,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:14:16,790.790 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:14:16,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:14:16,866.866 INFO    ] No camera update needed
[2026-10-28 21:14:16,869.869 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:14:16,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:14:16,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:14:16,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:14:18,923.923 INFO    ] ================================================
[2026-10-28 21:14:18,938.938 INFO    ] Launching Daemon at Wed Oct 28 21:14:18 IST 2026
[2026-10-28 21:14:18,948.948 INFO    ] ================================================
[2026-10-28 21:14:19,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:14:19
[2026-10-28 21:14:20,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:14:20,359.359 INFO    ] Initializing speech engine...
[2026-10-28 21:14:20,372.372 INFO    ] 2026-10-28 21:14:20
[2026-10-28 21:14:20,655.655 INFO    ] 2026-10-28 21:14:20
[2026-10-28 21:14:20,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:14:20,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:14:20,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:14:21,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:14:21,269.269 INFO    ] time= 28/10/2026 21:14:21
[2026-10-28 21:14:21,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:14:21,300.300 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:14:21,447.447 INFO    ] No existing commands found in stream
[2026-10-28 21:14:26,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:14:26,465.465 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 21:14:29,615.615 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:14:29,618.618 INFO    ] Checking for system updates...
[2026-10-28 21:14:29,654.654 INFO    ] 200
[2026-10-28 21:14:29,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:14:29,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:14:29,712.712 INFO    ] No update needed
[2026-10-28 21:14:29,714.714 INFO    ] Checking for camera pi updates...
[2026-10-28 21:14:29,751.751 INFO    ] 200
[2026-10-28 21:14:29,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:14:29,795.795 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:14:29,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:14:29,885.885 INFO    ] No camera update needed
[2026-10-28 21:14:29,887.887 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:14:29,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:14:29,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:14:29,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:14:31,940.940 INFO    ] ================================================
[2026-10-28 21:14:31,956.956 INFO    ] Launching Daemon at Wed Oct 28 21:14:31 IST 2026
[2026-10-28 21:14:31,967.967 INFO    ] ================================================
[2026-10-28 21:14:32,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:14:32
[2026-10-28 21:14:33,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:14:33,515.515 INFO    ] Initializing speech engine...
[2026-10-28 21:14:33,527.527 INFO    ] 2026-10-28 21:14:33
[2026-10-28 21:14:33,800.800 INFO    ] 2026-10-28 21:14:33
[2026-10-28 21:14:33,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:14:34,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:14:34,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:14:34,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:14:34,378.378 INFO    ] time= 28/10/2026 21:14:34
[2026-10-28 21:14:34,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:14:34,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:14:34,535.535 INFO    ] No existing commands found in stream
[2026-10-28 21:14:39,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:14:39,564.564 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-28 21:14:41,390.390 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:14:41,393.393 INFO    ] Checking for system updates...
[2026-10-28 21:14:41,429.429 INFO    ] 200
[2026-10-28 21:14:41,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:14:41,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:14:41,488.488 INFO    ] No update needed
[2026-10-28 21:14:41,491.491 INFO    ] Checking for camera pi updates...
[2026-10-28 21:14:41,526.526 INFO    ] 200
[2026-10-28 21:14:41,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:14:41,574.574 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:14:41,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:14:41,657.657 INFO    ] No camera update needed
[2026-10-28 21:14:41,660.660 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:14:41,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:14:41,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:14:41,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:14:43,717.717 INFO    ] ================================================
[2026-10-28 21:14:43,733.733 INFO    ] Launching Daemon at Wed Oct 28 21:14:43 IST 2026
[2026-10-28 21:14:43,745.745 INFO    ] ================================================
[2026-10-28 21:14:44,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:14:44
[2026-10-28 21:14:44,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:14:45,179.179 INFO    ] Initializing speech engine...
[2026-10-28 21:14:45,188.188 INFO    ] 2026-10-28 21:14:45
[2026-10-28 21:14:45,438.438 INFO    ] 2026-10-28 21:14:45
[2026-10-28 21:14:45,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:14:45,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:14:45,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:14:45,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:14:46,006.006 INFO    ] time= 28/10/2026 21:14:45
[2026-10-28 21:14:46,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:14:46,029.029 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:14:46,163.163 INFO    ] No existing commands found in stream
[2026-10-28 21:14:51,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:14:51,178.178 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-28 21:14:55,430.430 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:14:55,432.432 INFO    ] Checking for system updates...
[2026-10-28 21:14:55,468.468 INFO    ] 200
[2026-10-28 21:14:55,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:14:55,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:14:55,529.529 INFO    ] No update needed
[2026-10-28 21:14:55,531.531 INFO    ] Checking for camera pi updates...
[2026-10-28 21:14:55,569.569 INFO    ] 200
[2026-10-28 21:14:55,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:14:55,618.618 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:14:55,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:14:55,712.712 INFO    ] No camera update needed
[2026-10-28 21:14:55,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:14:55,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:14:55,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:14:55,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:14:57,773.773 INFO    ] ================================================
[2026-10-28 21:14:57,789.789 INFO    ] Launching Daemon at Wed Oct 28 21:14:57 IST 2026
[2026-10-28 21:14:57,801.801 INFO    ] ================================================
[2026-10-28 21:14:58,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:14:58
[2026-10-28 21:14:58,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:14:59,205.205 INFO    ] Initializing speech engine...
[2026-10-28 21:14:59,227.227 INFO    ] 2026-10-28 21:14:59
[2026-10-28 21:14:59,478.478 INFO    ] 2026-10-28 21:14:59
[2026-10-28 21:14:59,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:14:59,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:14:59,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:15:00,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:15:00,044.044 INFO    ] time= 28/10/2026 21:15:00
[2026-10-28 21:15:00,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:15:00,079.079 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:15:00,211.211 INFO    ] No existing commands found in stream
[2026-10-28 21:15:05,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:15:05,238.238 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-28 21:15:09,708.708 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:15:09,711.711 INFO    ] Checking for system updates...
[2026-10-28 21:15:09,748.748 INFO    ] 200
[2026-10-28 21:15:09,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:15:09,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:15:09,815.815 INFO    ] No update needed
[2026-10-28 21:15:09,819.819 INFO    ] Checking for camera pi updates...
[2026-10-28 21:15:09,853.853 INFO    ] 200
[2026-10-28 21:15:09,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:15:09,898.898 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:15:10,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:15:10,079.079 INFO    ] No camera update needed
[2026-10-28 21:15:10,082.082 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:15:10,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:15:10,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:15:10,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:15:12,140.140 INFO    ] ================================================
[2026-10-28 21:15:12,156.156 INFO    ] Launching Daemon at Wed Oct 28 21:15:12 IST 2026
[2026-10-28 21:15:12,167.167 INFO    ] ================================================
[2026-10-28 21:15:12,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:15:12
[2026-10-28 21:15:13,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:15:13,716.716 INFO    ] Initializing speech engine...
[2026-10-28 21:15:13,723.723 INFO    ] 2026-10-28 21:15:13
[2026-10-28 21:15:14,037.037 INFO    ] 2026-10-28 21:15:13
[2026-10-28 21:15:14,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:15:14,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:15:14,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:15:14,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:15:14,738.738 INFO    ] time= 28/10/2026 21:15:14
[2026-10-28 21:15:14,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:15:14,828.828 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:15:14,972.972 INFO    ] No existing commands found in stream
[2026-10-28 21:15:19,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:15:19,995.995 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-28 21:15:23,511.511 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:15:23,515.515 INFO    ] Checking for system updates...
[2026-10-28 21:15:23,551.551 INFO    ] 200
[2026-10-28 21:15:23,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:15:23,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:15:23,619.619 INFO    ] No update needed
[2026-10-28 21:15:23,622.622 INFO    ] Checking for camera pi updates...
[2026-10-28 21:15:23,657.657 INFO    ] 200
[2026-10-28 21:15:23,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:15:23,700.700 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:15:23,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:15:23,787.787 INFO    ] No camera update needed
[2026-10-28 21:15:23,790.790 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:15:23,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:15:23,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:15:23,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:15:25,847.847 INFO    ] ================================================
[2026-10-28 21:15:25,863.863 INFO    ] Launching Daemon at Wed Oct 28 21:15:25 IST 2026
[2026-10-28 21:15:25,875.875 INFO    ] ================================================
[2026-10-28 21:15:26,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:15:26
[2026-10-28 21:15:27,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:15:27,294.294 INFO    ] Initializing speech engine...
[2026-10-28 21:15:27,302.302 INFO    ] 2026-10-28 21:15:27
[2026-10-28 21:15:27,549.549 INFO    ] 2026-10-28 21:15:27
[2026-10-28 21:15:27,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:15:27,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:15:27,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:15:28,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:15:28,107.107 INFO    ] time= 28/10/2026 21:15:28
[2026-10-28 21:15:28,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:15:28,155.155 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:15:28,261.261 INFO    ] No existing commands found in stream
[2026-10-28 21:15:33,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:15:33,293.293 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-10-28 21:15:37,880.880 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:15:37,882.882 INFO    ] Checking for system updates...
[2026-10-28 21:15:37,918.918 INFO    ] 200
[2026-10-28 21:15:37,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:15:37,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:15:37,978.978 INFO    ] No update needed
[2026-10-28 21:15:37,981.981 INFO    ] Checking for camera pi updates...
[2026-10-28 21:15:38,016.016 INFO    ] 200
[2026-10-28 21:15:38,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:15:38,080.080 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:15:38,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:15:38,181.181 INFO    ] No camera update needed
[2026-10-28 21:15:38,184.184 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:15:38,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:15:38,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:15:38,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:15:40,241.241 INFO    ] ================================================
[2026-10-28 21:15:40,256.256 INFO    ] Launching Daemon at Wed Oct 28 21:15:40 IST 2026
[2026-10-28 21:15:40,267.267 INFO    ] ================================================
[2026-10-28 21:15:40,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:15:40
[2026-10-28 21:15:41,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:15:41,860.860 INFO    ] Initializing speech engine...
[2026-10-28 21:15:41,867.867 INFO    ] 2026-10-28 21:15:41
[2026-10-28 21:15:42,185.185 INFO    ] 2026-10-28 21:15:42
[2026-10-28 21:15:42,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:15:42,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:15:42,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:15:42,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:15:42,882.882 INFO    ] time= 28/10/2026 21:15:42
[2026-10-28 21:15:42,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:15:42,977.977 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:15:43,102.102 INFO    ] No existing commands found in stream
[2026-10-28 21:15:48,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:15:48,135.135 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-28 21:15:49,920.920 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:15:49,923.923 INFO    ] Checking for system updates...
[2026-10-28 21:15:49,965.965 INFO    ] 200
[2026-10-28 21:15:49,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:15:50,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:15:50,030.030 INFO    ] No update needed
[2026-10-28 21:15:50,033.033 INFO    ] Checking for camera pi updates...
[2026-10-28 21:15:50,068.068 INFO    ] 200
[2026-10-28 21:15:50,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:15:50,113.113 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:15:50,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:15:50,197.197 INFO    ] No camera update needed
[2026-10-28 21:15:50,200.200 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:15:50,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:15:50,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:15:50,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:15:52,259.259 INFO    ] ================================================
[2026-10-28 21:15:52,275.275 INFO    ] Launching Daemon at Wed Oct 28 21:15:52 IST 2026
[2026-10-28 21:15:52,286.286 INFO    ] ================================================
[2026-10-28 21:15:52,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:15:52
[2026-10-28 21:15:53,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:15:53,838.838 INFO    ] Initializing speech engine...
[2026-10-28 21:15:53,850.850 INFO    ] 2026-10-28 21:15:53
[2026-10-28 21:15:54,144.144 INFO    ] 2026-10-28 21:15:54
[2026-10-28 21:15:54,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:15:54,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:15:54,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:15:54,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:15:54,743.743 INFO    ] time= 28/10/2026 21:15:54
[2026-10-28 21:15:54,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:15:54,841.841 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:15:54,967.967 INFO    ] No existing commands found in stream
[2026-10-28 21:16:00,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:16:00,007.007 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-28 21:16:03,919.919 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:16:03,921.921 INFO    ] Checking for system updates...
[2026-10-28 21:16:03,957.957 INFO    ] 200
[2026-10-28 21:16:03,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:16:04,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:16:04,014.014 INFO    ] No update needed
[2026-10-28 21:16:04,017.017 INFO    ] Checking for camera pi updates...
[2026-10-28 21:16:04,050.050 INFO    ] 200
[2026-10-28 21:16:04,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:16:04,101.101 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:16:04,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:16:04,188.188 INFO    ] No camera update needed
[2026-10-28 21:16:04,190.190 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:16:04,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:16:04,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:16:04,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:16:06,242.242 INFO    ] ================================================
[2026-10-28 21:16:06,258.258 INFO    ] Launching Daemon at Wed Oct 28 21:16:06 IST 2026
[2026-10-28 21:16:06,268.268 INFO    ] ================================================
[2026-10-28 21:16:06,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:16:06
[2026-10-28 21:16:07,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:16:07,665.665 INFO    ] Initializing speech engine...
[2026-10-28 21:16:07,673.673 INFO    ] 2026-10-28 21:16:07
[2026-10-28 21:16:07,948.948 INFO    ] 2026-10-28 21:16:07
[2026-10-28 21:16:07,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:16:08,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:16:08,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:16:08,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:16:08,518.518 INFO    ] time= 28/10/2026 21:16:08
[2026-10-28 21:16:08,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:16:08,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:16:08,678.678 INFO    ] No existing commands found in stream
[2026-10-28 21:16:13,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:16:13,699.699 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-28 21:16:16,747.747 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:16:16,749.749 INFO    ] Checking for system updates...
[2026-10-28 21:16:16,784.784 INFO    ] 200
[2026-10-28 21:16:16,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:16:16,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:16:16,844.844 INFO    ] No update needed
[2026-10-28 21:16:16,847.847 INFO    ] Checking for camera pi updates...
[2026-10-28 21:16:16,884.884 INFO    ] 200
[2026-10-28 21:16:16,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:16:16,928.928 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:16:17,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:16:17,024.024 INFO    ] No camera update needed
[2026-10-28 21:16:17,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:16:17,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:16:17,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:16:17,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:16:19,080.080 INFO    ] ================================================
[2026-10-28 21:16:19,095.095 INFO    ] Launching Daemon at Wed Oct 28 21:16:19 IST 2026
[2026-10-28 21:16:19,106.106 INFO    ] ================================================
[2026-10-28 21:16:19,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:16:19
[2026-10-28 21:16:20,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:16:20,557.557 INFO    ] Initializing speech engine...
[2026-10-28 21:16:20,564.564 INFO    ] 2026-10-28 21:16:20
[2026-10-28 21:16:20,826.826 INFO    ] 2026-10-28 21:16:20
[2026-10-28 21:16:20,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:16:21,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:16:21,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:16:21,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:16:21,385.385 INFO    ] time= 28/10/2026 21:16:21
[2026-10-28 21:16:21,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:16:21,421.421 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:16:21,604.604 INFO    ] No existing commands found in stream
[2026-10-28 21:16:26,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:16:26,631.631 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 21:16:30,511.511 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:16:30,515.515 INFO    ] Checking for system updates...
[2026-10-28 21:16:30,557.557 INFO    ] 200
[2026-10-28 21:16:30,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:16:30,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:16:30,616.616 INFO    ] No update needed
[2026-10-28 21:16:30,619.619 INFO    ] Checking for camera pi updates...
[2026-10-28 21:16:30,653.653 INFO    ] 200
[2026-10-28 21:16:30,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:16:30,697.697 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:16:30,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:16:30,754.754 INFO    ] No camera update needed
[2026-10-28 21:16:30,757.757 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:16:30,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:16:30,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:16:30,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:16:32,814.814 INFO    ] ================================================
[2026-10-28 21:16:32,829.829 INFO    ] Launching Daemon at Wed Oct 28 21:16:32 IST 2026
[2026-10-28 21:16:32,840.840 INFO    ] ================================================
[2026-10-28 21:16:33,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:16:33
[2026-10-28 21:16:34,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:16:34,292.292 INFO    ] Initializing speech engine...
[2026-10-28 21:16:34,301.301 INFO    ] 2026-10-28 21:16:34
[2026-10-28 21:16:34,564.564 INFO    ] 2026-10-28 21:16:34
[2026-10-28 21:16:34,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:16:34,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:16:34,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:16:35,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:16:35,112.112 INFO    ] time= 28/10/2026 21:16:35
[2026-10-28 21:16:35,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:16:35,147.147 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:16:35,294.294 INFO    ] No existing commands found in stream
[2026-10-28 21:16:40,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:16:40,327.327 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 21:16:41,029.029 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:16:41,032.032 INFO    ] Checking for system updates...
[2026-10-28 21:16:41,067.067 INFO    ] 200
[2026-10-28 21:16:41,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:16:41,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:16:41,125.125 INFO    ] No update needed
[2026-10-28 21:16:41,128.128 INFO    ] Checking for camera pi updates...
[2026-10-28 21:16:41,161.161 INFO    ] 200
[2026-10-28 21:16:41,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:16:41,204.204 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:16:41,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:16:41,291.291 INFO    ] No camera update needed
[2026-10-28 21:16:41,294.294 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:16:41,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:16:41,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:16:41,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:16:43,347.347 INFO    ] ================================================
[2026-10-28 21:16:43,363.363 INFO    ] Launching Daemon at Wed Oct 28 21:16:43 IST 2026
[2026-10-28 21:16:43,375.375 INFO    ] ================================================
[2026-10-28 21:16:44,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:16:44
[2026-10-28 21:16:44,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:16:44,959.959 INFO    ] Initializing speech engine...
[2026-10-28 21:16:44,965.965 INFO    ] 2026-10-28 21:16:44
[2026-10-28 21:16:45,239.239 INFO    ] 2026-10-28 21:16:45
[2026-10-28 21:16:45,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:16:45,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:16:45,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:16:45,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:16:45,808.808 INFO    ] time= 28/10/2026 21:16:45
[2026-10-28 21:16:45,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:16:45,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:16:45,971.971 INFO    ] No existing commands found in stream
[2026-10-28 21:16:51,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:16:51,010.010 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-28 21:16:52,053.053 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:16:52,056.056 INFO    ] Checking for system updates...
[2026-10-28 21:16:52,092.092 INFO    ] 200
[2026-10-28 21:16:52,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:16:52,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:16:52,156.156 INFO    ] No update needed
[2026-10-28 21:16:52,159.159 INFO    ] Checking for camera pi updates...
[2026-10-28 21:16:52,201.201 INFO    ] 200
[2026-10-28 21:16:52,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:16:52,249.249 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:16:52,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:16:52,302.302 INFO    ] No camera update needed
[2026-10-28 21:16:52,304.304 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:16:52,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:16:52,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:16:52,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:16:54,359.359 INFO    ] ================================================
[2026-10-28 21:16:54,374.374 INFO    ] Launching Daemon at Wed Oct 28 21:16:54 IST 2026
[2026-10-28 21:16:54,385.385 INFO    ] ================================================
[2026-10-28 21:16:54,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:16:54
[2026-10-28 21:16:55,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:16:55,836.836 INFO    ] Initializing speech engine...
[2026-10-28 21:16:55,845.845 INFO    ] 2026-10-28 21:16:55
[2026-10-28 21:16:56,096.096 INFO    ] 2026-10-28 21:16:56
[2026-10-28 21:16:56,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:16:56,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:16:56,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:16:56,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:16:56,667.667 INFO    ] time= 28/10/2026 21:16:56
[2026-10-28 21:16:56,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:16:56,702.702 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:16:56,838.838 INFO    ] No existing commands found in stream
[2026-10-28 21:17:01,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:17:01,868.868 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-10-28 21:17:03,588.588 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:17:03,591.591 INFO    ] Checking for system updates...
[2026-10-28 21:17:03,626.626 INFO    ] 200
[2026-10-28 21:17:03,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:17:03,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:17:03,683.683 INFO    ] No update needed
[2026-10-28 21:17:03,686.686 INFO    ] Checking for camera pi updates...
[2026-10-28 21:17:03,719.719 INFO    ] 200
[2026-10-28 21:17:03,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:17:03,761.761 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:17:03,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:17:03,859.859 INFO    ] No camera update needed
[2026-10-28 21:17:03,861.861 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:17:03,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:17:03,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:17:03,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:17:05,914.914 INFO    ] ================================================
[2026-10-28 21:17:05,929.929 INFO    ] Launching Daemon at Wed Oct 28 21:17:05 IST 2026
[2026-10-28 21:17:05,940.940 INFO    ] ================================================
[2026-10-28 21:17:06,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:17:06
[2026-10-28 21:17:07,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:17:07,398.398 INFO    ] Initializing speech engine...
[2026-10-28 21:17:07,405.405 INFO    ] 2026-10-28 21:17:07
[2026-10-28 21:17:07,666.666 INFO    ] 2026-10-28 21:17:07
[2026-10-28 21:17:07,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:17:07,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:17:07,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:17:08,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:17:08,250.250 INFO    ] time= 28/10/2026 21:17:08
[2026-10-28 21:17:08,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:17:08,287.287 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:17:08,444.444 INFO    ] No existing commands found in stream
[2026-10-28 21:17:13,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:17:13,461.461 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-28 21:17:14,411.411 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:17:14,414.414 INFO    ] Checking for system updates...
[2026-10-28 21:17:14,453.453 INFO    ] 200
[2026-10-28 21:17:14,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:17:14,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:17:14,511.511 INFO    ] No update needed
[2026-10-28 21:17:14,514.514 INFO    ] Checking for camera pi updates...
[2026-10-28 21:17:14,548.548 INFO    ] 200
[2026-10-28 21:17:14,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:17:14,596.596 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:17:14,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:17:14,766.766 INFO    ] No camera update needed
[2026-10-28 21:17:14,768.768 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:17:14,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:17:14,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:17:14,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:17:16,825.825 INFO    ] ================================================
[2026-10-28 21:17:16,840.840 INFO    ] Launching Daemon at Wed Oct 28 21:17:16 IST 2026
[2026-10-28 21:17:16,851.851 INFO    ] ================================================
[2026-10-28 21:17:17,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:17:17
[2026-10-28 21:17:18,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:17:18,260.260 INFO    ] Initializing speech engine...
[2026-10-28 21:17:18,268.268 INFO    ] 2026-10-28 21:17:18
[2026-10-28 21:17:18,565.565 INFO    ] 2026-10-28 21:17:18
[2026-10-28 21:17:18,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:17:18,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:17:18,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:17:19,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:17:19,148.148 INFO    ] time= 28/10/2026 21:17:19
[2026-10-28 21:17:19,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:17:19,172.172 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:17:19,315.315 INFO    ] No existing commands found in stream
[2026-10-28 21:17:24,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:17:24,338.338 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-28 21:17:28,835.835 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:17:28,837.837 INFO    ] Checking for system updates...
[2026-10-28 21:17:28,873.873 INFO    ] 200
[2026-10-28 21:17:28,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:17:28,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:17:28,932.932 INFO    ] No update needed
[2026-10-28 21:17:28,934.934 INFO    ] Checking for camera pi updates...
[2026-10-28 21:17:28,971.971 INFO    ] 200
[2026-10-28 21:17:28,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:17:29,014.014 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:17:29,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:17:29,096.096 INFO    ] No camera update needed
[2026-10-28 21:17:29,098.098 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:17:29,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:17:29,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:17:29,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:17:31,151.151 INFO    ] ================================================
[2026-10-28 21:17:31,167.167 INFO    ] Launching Daemon at Wed Oct 28 21:17:31 IST 2026
[2026-10-28 21:17:31,177.177 INFO    ] ================================================
[2026-10-28 21:17:31,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:17:31
[2026-10-28 21:17:32,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:17:32,665.665 INFO    ] Initializing speech engine...
[2026-10-28 21:17:32,674.674 INFO    ] 2026-10-28 21:17:32
[2026-10-28 21:17:32,954.954 INFO    ] 2026-10-28 21:17:32
[2026-10-28 21:17:33,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:17:33,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:17:33,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:17:33,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:17:33,729.729 INFO    ] time= 28/10/2026 21:17:33
[2026-10-28 21:17:33,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:17:33,827.827 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:17:33,982.982 INFO    ] No existing commands found in stream
[2026-10-28 21:17:38,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:17:38,996.996 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 21:17:42,721.721 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:17:42,725.725 INFO    ] Checking for system updates...
[2026-10-28 21:17:42,761.761 INFO    ] 200
[2026-10-28 21:17:42,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:17:42,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:17:42,820.820 INFO    ] No update needed
[2026-10-28 21:17:42,822.822 INFO    ] Checking for camera pi updates...
[2026-10-28 21:17:42,861.861 INFO    ] 200
[2026-10-28 21:17:42,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:17:42,910.910 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:17:42,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:17:42,995.995 INFO    ] No camera update needed
[2026-10-28 21:17:42,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:17:43,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:17:43,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:17:43,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:17:45,053.053 INFO    ] ================================================
[2026-10-28 21:17:45,069.069 INFO    ] Launching Daemon at Wed Oct 28 21:17:45 IST 2026
[2026-10-28 21:17:45,081.081 INFO    ] ================================================
[2026-10-28 21:17:45,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:17:45
[2026-10-28 21:17:46,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:17:46,541.541 INFO    ] Initializing speech engine...
[2026-10-28 21:17:46,548.548 INFO    ] 2026-10-28 21:17:46
[2026-10-28 21:17:46,836.836 INFO    ] 2026-10-28 21:17:46
[2026-10-28 21:17:46,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:17:47,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:17:47,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:17:47,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:17:47,618.618 INFO    ] time= 28/10/2026 21:17:47
[2026-10-28 21:17:47,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:17:47,718.718 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:17:47,824.824 INFO    ] No existing commands found in stream
[2026-10-28 21:17:52,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:17:52,838.838 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-28 21:17:54,074.074 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:17:54,077.077 INFO    ] Checking for system updates...
[2026-10-28 21:17:54,114.114 INFO    ] 200
[2026-10-28 21:17:54,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:17:54,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:17:54,173.173 INFO    ] No update needed
[2026-10-28 21:17:54,176.176 INFO    ] Checking for camera pi updates...
[2026-10-28 21:17:54,214.214 INFO    ] 200
[2026-10-28 21:17:54,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:17:54,259.259 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:17:54,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:17:54,344.344 INFO    ] No camera update needed
[2026-10-28 21:17:54,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:17:54,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:17:54,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:17:54,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:17:56,403.403 INFO    ] ================================================
[2026-10-28 21:17:56,418.418 INFO    ] Launching Daemon at Wed Oct 28 21:17:56 IST 2026
[2026-10-28 21:17:56,429.429 INFO    ] ================================================
[2026-10-28 21:17:56,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:17:56
[2026-10-28 21:17:57,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:17:57,852.852 INFO    ] Initializing speech engine...
[2026-10-28 21:17:57,861.861 INFO    ] 2026-10-28 21:17:57
[2026-10-28 21:17:58,110.110 INFO    ] 2026-10-28 21:17:58
[2026-10-28 21:17:58,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:17:58,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:17:58,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:17:58,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:17:58,680.680 INFO    ] time= 28/10/2026 21:17:58
[2026-10-28 21:17:58,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:17:58,721.721 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:17:58,867.867 INFO    ] No existing commands found in stream
[2026-10-28 21:18:03,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:18:03,900.900 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-28 21:18:07,468.468 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:18:07,471.471 INFO    ] Checking for system updates...
[2026-10-28 21:18:07,510.510 INFO    ] 200
[2026-10-28 21:18:07,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:18:07,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:18:07,573.573 INFO    ] No update needed
[2026-10-28 21:18:07,576.576 INFO    ] Checking for camera pi updates...
[2026-10-28 21:18:07,610.610 INFO    ] 200
[2026-10-28 21:18:07,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:18:07,658.658 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:18:07,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:18:07,746.746 INFO    ] No camera update needed
[2026-10-28 21:18:07,748.748 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:18:07,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:18:07,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:18:07,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:18:09,806.806 INFO    ] ================================================
[2026-10-28 21:18:09,820.820 INFO    ] Launching Daemon at Wed Oct 28 21:18:09 IST 2026
[2026-10-28 21:18:09,831.831 INFO    ] ================================================
[2026-10-28 21:18:10,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:18:10
[2026-10-28 21:18:11,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:18:11,439.439 INFO    ] Initializing speech engine...
[2026-10-28 21:18:11,452.452 INFO    ] 2026-10-28 21:18:11
[2026-10-28 21:18:11,723.723 INFO    ] 2026-10-28 21:18:11
[2026-10-28 21:18:11,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:18:12,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:18:12,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:18:12,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:18:12,325.325 INFO    ] time= 28/10/2026 21:18:12
[2026-10-28 21:18:12,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:18:12,343.343 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:18:12,498.498 INFO    ] No existing commands found in stream
[2026-10-28 21:18:17,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:18:17,538.538 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 21:18:21,787.787 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:18:21,790.790 INFO    ] Checking for system updates...
[2026-10-28 21:18:21,827.827 INFO    ] 200
[2026-10-28 21:18:21,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:18:21,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:18:21,886.886 INFO    ] No update needed
[2026-10-28 21:18:21,889.889 INFO    ] Checking for camera pi updates...
[2026-10-28 21:18:21,923.923 INFO    ] 200
[2026-10-28 21:18:21,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:18:21,967.967 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:18:22,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:18:22,050.050 INFO    ] No camera update needed
[2026-10-28 21:18:22,053.053 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:18:22,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:18:22,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:18:22,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:18:24,109.109 INFO    ] ================================================
[2026-10-28 21:18:24,124.124 INFO    ] Launching Daemon at Wed Oct 28 21:18:24 IST 2026
[2026-10-28 21:18:24,134.134 INFO    ] ================================================
[2026-10-28 21:18:24,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:18:24
[2026-10-28 21:18:25,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:18:25,590.590 INFO    ] Initializing speech engine...
[2026-10-28 21:18:25,597.597 INFO    ] 2026-10-28 21:18:25
[2026-10-28 21:18:25,858.858 INFO    ] 2026-10-28 21:18:25
[2026-10-28 21:18:25,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:18:26,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:18:26,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:18:26,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:18:26,403.403 INFO    ] time= 28/10/2026 21:18:26
[2026-10-28 21:18:26,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:18:26,449.449 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:18:26,590.590 INFO    ] No existing commands found in stream
[2026-10-28 21:18:31,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:18:31,619.619 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 21:18:36,151.151 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:18:36,153.153 INFO    ] Checking for system updates...
[2026-10-28 21:18:36,189.189 INFO    ] 200
[2026-10-28 21:18:36,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:18:36,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:18:36,246.246 INFO    ] No update needed
[2026-10-28 21:18:36,248.248 INFO    ] Checking for camera pi updates...
[2026-10-28 21:18:36,286.286 INFO    ] 200
[2026-10-28 21:18:36,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:18:36,335.335 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:18:36,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:18:36,420.420 INFO    ] No camera update needed
[2026-10-28 21:18:36,423.423 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:18:36,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:18:36,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:18:36,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:18:38,485.485 INFO    ] ================================================
[2026-10-28 21:18:38,500.500 INFO    ] Launching Daemon at Wed Oct 28 21:18:38 IST 2026
[2026-10-28 21:18:38,511.511 INFO    ] ================================================
[2026-10-28 21:18:39,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:18:39
[2026-10-28 21:18:39,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:18:39,959.959 INFO    ] Initializing speech engine...
[2026-10-28 21:18:39,968.968 INFO    ] 2026-10-28 21:18:39
[2026-10-28 21:18:40,230.230 INFO    ] 2026-10-28 21:18:40
[2026-10-28 21:18:40,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:18:40,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:18:40,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:18:40,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:18:40,775.775 INFO    ] time= 28/10/2026 21:18:40
[2026-10-28 21:18:40,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:18:40,821.821 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:18:40,941.941 INFO    ] No existing commands found in stream
[2026-10-28 21:18:45,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:18:45,974.974 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-28 21:18:47,798.798 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:18:47,801.801 INFO    ] Checking for system updates...
[2026-10-28 21:18:47,837.837 INFO    ] 200
[2026-10-28 21:18:47,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:18:47,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:18:47,902.902 INFO    ] No update needed
[2026-10-28 21:18:47,905.905 INFO    ] Checking for camera pi updates...
[2026-10-28 21:18:47,940.940 INFO    ] 200
[2026-10-28 21:18:47,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:18:47,984.984 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:18:48,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:18:48,093.093 INFO    ] No camera update needed
[2026-10-28 21:18:48,096.096 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:18:48,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:18:48,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:18:48,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:18:50,152.152 INFO    ] ================================================
[2026-10-28 21:18:50,168.168 INFO    ] Launching Daemon at Wed Oct 28 21:18:50 IST 2026
[2026-10-28 21:18:50,179.179 INFO    ] ================================================
[2026-10-28 21:18:50,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:18:50
[2026-10-28 21:18:51,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:18:51,696.696 INFO    ] Initializing speech engine...
[2026-10-28 21:18:51,702.702 INFO    ] 2026-10-28 21:18:51
[2026-10-28 21:18:51,977.977 INFO    ] 2026-10-28 21:18:51
[2026-10-28 21:18:52,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:18:52,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:18:52,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:18:52,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:18:52,550.550 INFO    ] time= 28/10/2026 21:18:52
[2026-10-28 21:18:52,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:18:52,589.589 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:18:52,734.734 INFO    ] No existing commands found in stream
[2026-10-28 21:18:57,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:18:57,768.768 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-28 21:19:00,230.230 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:19:00,232.232 INFO    ] Checking for system updates...
[2026-10-28 21:19:00,270.270 INFO    ] 200
[2026-10-28 21:19:00,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:19:00,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:19:00,328.328 INFO    ] No update needed
[2026-10-28 21:19:00,331.331 INFO    ] Checking for camera pi updates...
[2026-10-28 21:19:00,365.365 INFO    ] 200
[2026-10-28 21:19:00,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:19:00,409.409 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:19:00,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:19:00,492.492 INFO    ] No camera update needed
[2026-10-28 21:19:00,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:19:00,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:19:00,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:19:00,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:19:02,554.554 INFO    ] ================================================
[2026-10-28 21:19:02,574.574 INFO    ] Launching Daemon at Wed Oct 28 21:19:02 IST 2026
[2026-10-28 21:19:02,589.589 INFO    ] ================================================
[2026-10-28 21:19:03,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:19:03
[2026-10-28 21:19:03,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:19:04,276.276 INFO    ] Initializing speech engine...
[2026-10-28 21:19:04,282.282 INFO    ] 2026-10-28 21:19:04
[2026-10-28 21:19:04,577.577 INFO    ] 2026-10-28 21:19:04
[2026-10-28 21:19:04,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:19:04,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:19:04,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:19:05,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:19:05,284.284 INFO    ] time= 28/10/2026 21:19:05
[2026-10-28 21:19:05,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:19:05,385.385 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:19:05,537.537 INFO    ] No existing commands found in stream
[2026-10-28 21:19:10,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:19:10,554.554 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-28 21:19:11,328.328 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:19:11,332.332 INFO    ] Checking for system updates...
[2026-10-28 21:19:11,369.369 INFO    ] 200
[2026-10-28 21:19:11,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:19:11,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:19:11,430.430 INFO    ] No update needed
[2026-10-28 21:19:11,432.432 INFO    ] Checking for camera pi updates...
[2026-10-28 21:19:11,467.467 INFO    ] 200
[2026-10-28 21:19:11,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:19:11,512.512 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:19:11,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:19:11,595.595 INFO    ] No camera update needed
[2026-10-28 21:19:11,598.598 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:19:11,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:19:11,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:19:11,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:19:13,653.653 INFO    ] ================================================
[2026-10-28 21:19:13,668.668 INFO    ] Launching Daemon at Wed Oct 28 21:19:13 IST 2026
[2026-10-28 21:19:13,680.680 INFO    ] ================================================
[2026-10-28 21:19:14,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:19:14
[2026-10-28 21:19:15,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:19:15,306.306 INFO    ] Initializing speech engine...
[2026-10-28 21:19:15,314.314 INFO    ] 2026-10-28 21:19:15
[2026-10-28 21:19:15,593.593 INFO    ] 2026-10-28 21:19:15
[2026-10-28 21:19:15,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:19:16,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:19:16,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:19:16,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:19:16,347.347 INFO    ] time= 28/10/2026 21:19:16
[2026-10-28 21:19:16,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:19:16,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:19:16,567.567 INFO    ] No existing commands found in stream
[2026-10-28 21:19:21,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:19:21,602.602 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-28 21:19:24,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:19:24,774.774 INFO    ] Checking for system updates...
[2026-10-28 21:19:24,811.811 INFO    ] 200
[2026-10-28 21:19:24,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:19:24,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:19:24,870.870 INFO    ] No update needed
[2026-10-28 21:19:24,872.872 INFO    ] Checking for camera pi updates...
[2026-10-28 21:19:24,907.907 INFO    ] 200
[2026-10-28 21:19:24,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:19:24,951.951 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:19:25,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:19:25,131.131 INFO    ] No camera update needed
[2026-10-28 21:19:25,134.134 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:19:25,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:19:25,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:19:25,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:19:27,193.193 INFO    ] ================================================
[2026-10-28 21:19:27,208.208 INFO    ] Launching Daemon at Wed Oct 28 21:19:27 IST 2026
[2026-10-28 21:19:27,220.220 INFO    ] ================================================
[2026-10-28 21:19:27,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:19:27
[2026-10-28 21:19:28,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:19:28,842.842 INFO    ] Initializing speech engine...
[2026-10-28 21:19:28,851.851 INFO    ] 2026-10-28 21:19:28
[2026-10-28 21:19:29,169.169 INFO    ] 2026-10-28 21:19:29
[2026-10-28 21:19:29,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:19:29,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:19:29,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:19:29,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:19:29,919.919 INFO    ] time= 28/10/2026 21:19:29
[2026-10-28 21:19:29,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:19:30,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:19:30,145.145 INFO    ] No existing commands found in stream
[2026-10-28 21:19:35,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:19:35,167.167 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-10-28 21:19:37,801.801 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:19:37,804.804 INFO    ] Checking for system updates...
[2026-10-28 21:19:37,841.841 INFO    ] 200
[2026-10-28 21:19:37,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:19:37,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:19:37,899.899 INFO    ] No update needed
[2026-10-28 21:19:37,902.902 INFO    ] Checking for camera pi updates...
[2026-10-28 21:19:37,937.937 INFO    ] 200
[2026-10-28 21:19:37,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:19:37,982.982 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:19:38,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:19:38,061.061 INFO    ] No camera update needed
[2026-10-28 21:19:38,063.063 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:19:38,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:19:38,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:19:38,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:19:40,119.119 INFO    ] ================================================
[2026-10-28 21:19:40,136.136 INFO    ] Launching Daemon at Wed Oct 28 21:19:40 IST 2026
[2026-10-28 21:19:40,147.147 INFO    ] ================================================
[2026-10-28 21:19:40,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:19:40
[2026-10-28 21:19:41,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:19:41,569.569 INFO    ] Initializing speech engine...
[2026-10-28 21:19:41,578.578 INFO    ] 2026-10-28 21:19:41
[2026-10-28 21:19:41,875.875 INFO    ] 2026-10-28 21:19:41
[2026-10-28 21:19:41,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:19:42,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:19:42,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:19:42,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:19:42,412.412 INFO    ] time= 28/10/2026 21:19:42
[2026-10-28 21:19:42,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:19:42,506.506 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:19:42,677.677 INFO    ] No existing commands found in stream
[2026-10-28 21:19:47,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:19:47,707.707 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 21:19:51,774.774 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:19:51,777.777 INFO    ] Checking for system updates...
[2026-10-28 21:19:51,812.812 INFO    ] 200
[2026-10-28 21:19:51,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:19:51,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:19:51,869.869 INFO    ] No update needed
[2026-10-28 21:19:51,872.872 INFO    ] Checking for camera pi updates...
[2026-10-28 21:19:51,905.905 INFO    ] 200
[2026-10-28 21:19:51,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:19:51,948.948 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:19:52,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:19:52,050.050 INFO    ] No camera update needed
[2026-10-28 21:19:52,053.053 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:19:52,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:19:52,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:19:52,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:19:54,108.108 INFO    ] ================================================
[2026-10-28 21:19:54,125.125 INFO    ] Launching Daemon at Wed Oct 28 21:19:54 IST 2026
[2026-10-28 21:19:54,135.135 INFO    ] ================================================
[2026-10-28 21:19:54,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:19:54
[2026-10-28 21:19:55,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:19:55,595.595 INFO    ] Initializing speech engine...
[2026-10-28 21:19:55,616.616 INFO    ] 2026-10-28 21:19:55
[2026-10-28 21:19:55,886.886 INFO    ] 2026-10-28 21:19:55
[2026-10-28 21:19:55,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:19:56,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:19:56,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:19:56,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:19:56,529.529 INFO    ] time= 28/10/2026 21:19:56
[2026-10-28 21:19:56,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:19:56,556.556 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:19:56,703.703 INFO    ] No existing commands found in stream
[2026-10-28 21:20:01,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:20:01,720.720 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 21:20:04,520.520 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:20:04,523.523 INFO    ] Checking for system updates...
[2026-10-28 21:20:04,559.559 INFO    ] 200
[2026-10-28 21:20:04,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:20:04,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:20:04,622.622 INFO    ] No update needed
[2026-10-28 21:20:04,626.626 INFO    ] Checking for camera pi updates...
[2026-10-28 21:20:04,669.669 INFO    ] 200
[2026-10-28 21:20:04,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:20:04,722.722 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:20:04,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:20:04,824.824 INFO    ] No camera update needed
[2026-10-28 21:20:04,827.827 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:20:04,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:20:04,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:20:04,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:20:06,881.881 INFO    ] ================================================
[2026-10-28 21:20:06,897.897 INFO    ] Launching Daemon at Wed Oct 28 21:20:06 IST 2026
[2026-10-28 21:20:06,908.908 INFO    ] ================================================
[2026-10-28 21:20:07,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:20:07
[2026-10-28 21:20:08,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:20:08,360.360 INFO    ] Initializing speech engine...
[2026-10-28 21:20:08,376.376 INFO    ] 2026-10-28 21:20:08
[2026-10-28 21:20:08,658.658 INFO    ] 2026-10-28 21:20:08
[2026-10-28 21:20:08,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:20:09,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:20:09,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:20:09,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:20:09,535.535 INFO    ] time= 28/10/2026 21:20:09
[2026-10-28 21:20:09,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:20:09,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:20:09,758.758 INFO    ] No existing commands found in stream
[2026-10-28 21:20:14,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:20:14,771.771 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-28 21:20:18,682.682 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:20:18,685.685 INFO    ] Checking for system updates...
[2026-10-28 21:20:18,721.721 INFO    ] 200
[2026-10-28 21:20:18,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:20:18,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:20:18,777.777 INFO    ] No update needed
[2026-10-28 21:20:18,780.780 INFO    ] Checking for camera pi updates...
[2026-10-28 21:20:18,813.813 INFO    ] 200
[2026-10-28 21:20:18,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:20:18,855.855 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:20:18,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:20:18,937.937 INFO    ] No camera update needed
[2026-10-28 21:20:18,940.940 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:20:18,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:20:18,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:20:18,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:20:21,995.995 INFO    ] ================================================
[2026-10-28 21:20:21,010.010 INFO    ] Launching Daemon at Wed Oct 28 21:20:21 IST 2026
[2026-10-28 21:20:21,021.021 INFO    ] ================================================
[2026-10-28 21:20:21,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:20:21
[2026-10-28 21:20:22,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:20:22,617.617 INFO    ] Initializing speech engine...
[2026-10-28 21:20:22,625.625 INFO    ] 2026-10-28 21:20:22
[2026-10-28 21:20:22,894.894 INFO    ] 2026-10-28 21:20:22
[2026-10-28 21:20:22,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:20:23,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:20:23,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:20:23,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:20:23,463.463 INFO    ] time= 28/10/2026 21:20:23
[2026-10-28 21:20:23,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:20:23,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:20:23,634.634 INFO    ] No existing commands found in stream
[2026-10-28 21:20:28,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:20:28,668.668 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 21:20:33,270.270 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:20:33,273.273 INFO    ] Checking for system updates...
[2026-10-28 21:20:33,311.311 INFO    ] 200
[2026-10-28 21:20:33,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:20:33,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:20:33,371.371 INFO    ] No update needed
[2026-10-28 21:20:33,374.374 INFO    ] Checking for camera pi updates...
[2026-10-28 21:20:33,408.408 INFO    ] 200
[2026-10-28 21:20:33,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:20:33,452.452 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:20:33,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:20:33,543.543 INFO    ] No camera update needed
[2026-10-28 21:20:33,546.546 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:20:33,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:20:33,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:20:33,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:20:35,601.601 INFO    ] ================================================
[2026-10-28 21:20:35,617.617 INFO    ] Launching Daemon at Wed Oct 28 21:20:35 IST 2026
[2026-10-28 21:20:35,629.629 INFO    ] ================================================
[2026-10-28 21:20:36,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:20:36
[2026-10-28 21:20:36,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:20:37,122.122 INFO    ] Initializing speech engine...
[2026-10-28 21:20:37,142.142 INFO    ] 2026-10-28 21:20:37
[2026-10-28 21:20:37,428.428 INFO    ] 2026-10-28 21:20:37
[2026-10-28 21:20:37,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:20:37,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:20:37,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:20:38,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:20:38,067.067 INFO    ] time= 28/10/2026 21:20:38
[2026-10-28 21:20:38,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:20:38,089.089 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:20:38,257.257 INFO    ] No existing commands found in stream
[2026-10-28 21:20:43,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:20:43,276.276 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 21:20:45,068.068 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:20:45,071.071 INFO    ] Checking for system updates...
[2026-10-28 21:20:45,106.106 INFO    ] 200
[2026-10-28 21:20:45,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:20:45,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:20:45,170.170 INFO    ] No update needed
[2026-10-28 21:20:45,172.172 INFO    ] Checking for camera pi updates...
[2026-10-28 21:20:45,206.206 INFO    ] 200
[2026-10-28 21:20:45,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:20:45,248.248 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:20:45,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:20:45,326.326 INFO    ] No camera update needed
[2026-10-28 21:20:45,328.328 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:20:45,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:20:45,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:20:45,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:20:47,382.382 INFO    ] ================================================
[2026-10-28 21:20:47,397.397 INFO    ] Launching Daemon at Wed Oct 28 21:20:47 IST 2026
[2026-10-28 21:20:47,408.408 INFO    ] ================================================
[2026-10-28 21:20:48,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:20:48
[2026-10-28 21:20:48,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:20:49,003.003 INFO    ] Initializing speech engine...
[2026-10-28 21:20:49,012.012 INFO    ] 2026-10-28 21:20:49
[2026-10-28 21:20:49,299.299 INFO    ] 2026-10-28 21:20:49
[2026-10-28 21:20:49,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:20:49,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:20:49,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:20:49,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:20:50,012.012 INFO    ] time= 28/10/2026 21:20:49
[2026-10-28 21:20:50,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:20:50,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:20:50,258.258 INFO    ] No existing commands found in stream
[2026-10-28 21:20:55,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:20:55,287.287 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-10-28 21:20:59,334.334 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:20:59,337.337 INFO    ] Checking for system updates...
[2026-10-28 21:20:59,374.374 INFO    ] 200
[2026-10-28 21:20:59,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:20:59,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:20:59,433.433 INFO    ] No update needed
[2026-10-28 21:20:59,436.436 INFO    ] Checking for camera pi updates...
[2026-10-28 21:20:59,473.473 INFO    ] 200
[2026-10-28 21:20:59,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:20:59,521.521 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:20:59,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:20:59,607.607 INFO    ] No camera update needed
[2026-10-28 21:20:59,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:20:59,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:20:59,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:20:59,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:21:01,670.670 INFO    ] ================================================
[2026-10-28 21:21:01,697.697 INFO    ] Launching Daemon at Wed Oct 28 21:21:01 IST 2026
[2026-10-28 21:21:01,736.736 INFO    ] ================================================
[2026-10-28 21:21:02,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:21:02
[2026-10-28 21:21:03,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:21:03,336.336 INFO    ] Initializing speech engine...
[2026-10-28 21:21:03,344.344 INFO    ] 2026-10-28 21:21:03
[2026-10-28 21:21:03,646.646 INFO    ] 2026-10-28 21:21:03
[2026-10-28 21:21:03,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:21:03,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:21:03,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:21:04,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:21:04,201.201 INFO    ] time= 28/10/2026 21:21:04
[2026-10-28 21:21:04,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:21:04,247.247 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:21:04,354.354 INFO    ] No existing commands found in stream
[2026-10-28 21:21:09,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:21:09,377.377 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-28 21:21:11,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:21:11,317.317 INFO    ] Checking for system updates...
[2026-10-28 21:21:11,353.353 INFO    ] 200
[2026-10-28 21:21:11,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:21:11,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:21:11,412.412 INFO    ] No update needed
[2026-10-28 21:21:11,415.415 INFO    ] Checking for camera pi updates...
[2026-10-28 21:21:11,449.449 INFO    ] 200
[2026-10-28 21:21:11,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:21:11,492.492 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:21:11,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:21:11,579.579 INFO    ] No camera update needed
[2026-10-28 21:21:11,581.581 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:21:11,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:21:11,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:21:11,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:21:13,637.637 INFO    ] ================================================
[2026-10-28 21:21:13,652.652 INFO    ] Launching Daemon at Wed Oct 28 21:21:13 IST 2026
[2026-10-28 21:21:13,663.663 INFO    ] ================================================
[2026-10-28 21:21:14,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:21:14
[2026-10-28 21:21:14,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:21:15,105.105 INFO    ] Initializing speech engine...
[2026-10-28 21:21:15,127.127 INFO    ] 2026-10-28 21:21:15
[2026-10-28 21:21:15,380.380 INFO    ] 2026-10-28 21:21:15
[2026-10-28 21:21:15,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:21:15,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:21:15,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:21:15,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:21:15,931.931 INFO    ] time= 28/10/2026 21:21:15
[2026-10-28 21:21:15,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:21:15,955.955 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:21:16,086.086 INFO    ] No existing commands found in stream
[2026-10-28 21:21:21,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:21:21,101.101 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 21:21:24,670.670 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:21:24,672.672 INFO    ] Checking for system updates...
[2026-10-28 21:21:24,709.709 INFO    ] 200
[2026-10-28 21:21:24,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:21:24,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:21:24,767.767 INFO    ] No update needed
[2026-10-28 21:21:24,770.770 INFO    ] Checking for camera pi updates...
[2026-10-28 21:21:24,804.804 INFO    ] 200
[2026-10-28 21:21:24,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:21:24,849.849 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:21:24,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:21:24,937.937 INFO    ] No camera update needed
[2026-10-28 21:21:24,940.940 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:21:24,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:21:24,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:21:24,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:21:27,999.999 INFO    ] ================================================
[2026-10-28 21:21:27,016.016 INFO    ] Launching Daemon at Wed Oct 28 21:21:27 IST 2026
[2026-10-28 21:21:27,028.028 INFO    ] ================================================
[2026-10-28 21:21:27,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:21:27
[2026-10-28 21:21:28,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:21:28,492.492 INFO    ] Initializing speech engine...
[2026-10-28 21:21:28,505.505 INFO    ] 2026-10-28 21:21:28
[2026-10-28 21:21:28,769.769 INFO    ] 2026-10-28 21:21:28
[2026-10-28 21:21:28,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:21:29,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:21:29,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:21:29,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:21:29,326.326 INFO    ] time= 28/10/2026 21:21:29
[2026-10-28 21:21:29,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:21:29,353.353 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:21:29,496.496 INFO    ] No existing commands found in stream
[2026-10-28 21:21:34,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:21:34,526.526 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-10-28 21:21:38,829.829 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:21:38,831.831 INFO    ] Checking for system updates...
[2026-10-28 21:21:38,869.869 INFO    ] 200
[2026-10-28 21:21:38,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:21:38,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:21:38,930.930 INFO    ] No update needed
[2026-10-28 21:21:38,933.933 INFO    ] Checking for camera pi updates...
[2026-10-28 21:21:38,966.966 INFO    ] 200
[2026-10-28 21:21:38,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:21:39,015.015 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:21:39,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:21:39,115.115 INFO    ] No camera update needed
[2026-10-28 21:21:39,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:21:39,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:21:39,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:21:39,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:21:41,177.177 INFO    ] ================================================
[2026-10-28 21:21:41,192.192 INFO    ] Launching Daemon at Wed Oct 28 21:21:41 IST 2026
[2026-10-28 21:21:41,203.203 INFO    ] ================================================
[2026-10-28 21:21:41,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:21:41
[2026-10-28 21:21:42,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:21:42,855.855 INFO    ] Initializing speech engine...
[2026-10-28 21:21:42,868.868 INFO    ] 2026-10-28 21:21:42
[2026-10-28 21:21:43,185.185 INFO    ] 2026-10-28 21:21:43
[2026-10-28 21:21:43,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:21:43,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:21:43,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:21:43,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:21:43,761.761 INFO    ] time= 28/10/2026 21:21:43
[2026-10-28 21:21:43,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:21:43,873.873 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:21:44,045.045 INFO    ] No existing commands found in stream
[2026-10-28 21:21:49,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:21:49,080.080 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-28 21:21:50,231.231 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:21:50,233.233 INFO    ] Checking for system updates...
[2026-10-28 21:21:50,269.269 INFO    ] 200
[2026-10-28 21:21:50,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:21:50,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:21:50,327.327 INFO    ] No update needed
[2026-10-28 21:21:50,330.330 INFO    ] Checking for camera pi updates...
[2026-10-28 21:21:50,363.363 INFO    ] 200
[2026-10-28 21:21:50,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:21:50,406.406 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:21:50,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:21:50,457.457 INFO    ] No camera update needed
[2026-10-28 21:21:50,459.459 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:21:50,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:21:50,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:21:50,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:21:52,514.514 INFO    ] ================================================
[2026-10-28 21:21:52,530.530 INFO    ] Launching Daemon at Wed Oct 28 21:21:52 IST 2026
[2026-10-28 21:21:52,541.541 INFO    ] ================================================
[2026-10-28 21:21:53,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:21:53
[2026-10-28 21:21:53,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:21:54,215.215 INFO    ] Initializing speech engine...
[2026-10-28 21:21:54,227.227 INFO    ] 2026-10-28 21:21:54
[2026-10-28 21:21:54,543.543 INFO    ] 2026-10-28 21:21:54
[2026-10-28 21:21:54,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:21:54,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:21:54,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:21:55,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:21:55,294.294 INFO    ] time= 28/10/2026 21:21:55
[2026-10-28 21:21:55,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:21:55,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:21:55,526.526 INFO    ] No existing commands found in stream
[2026-10-28 21:22:00,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:22:00,540.540 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-28 21:22:03,802.802 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:22:03,806.806 INFO    ] Checking for system updates...
[2026-10-28 21:22:03,847.847 INFO    ] 200
[2026-10-28 21:22:03,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:22:03,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:22:03,910.910 INFO    ] No update needed
[2026-10-28 21:22:03,912.912 INFO    ] Checking for camera pi updates...
[2026-10-28 21:22:03,960.960 INFO    ] 200
[2026-10-28 21:22:03,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:22:04,006.006 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:22:04,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:22:04,108.108 INFO    ] No camera update needed
[2026-10-28 21:22:04,112.112 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:22:04,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:22:04,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:22:04,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:22:06,177.177 INFO    ] ================================================
[2026-10-28 21:22:06,192.192 INFO    ] Launching Daemon at Wed Oct 28 21:22:06 IST 2026
[2026-10-28 21:22:06,203.203 INFO    ] ================================================
[2026-10-28 21:22:06,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:22:06
[2026-10-28 21:22:07,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:22:07,896.896 INFO    ] Initializing speech engine...
[2026-10-28 21:22:07,908.908 INFO    ] 2026-10-28 21:22:07
[2026-10-28 21:22:08,200.200 INFO    ] 2026-10-28 21:22:08
[2026-10-28 21:22:08,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:22:08,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:22:08,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:22:08,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:22:08,917.917 INFO    ] time= 28/10/2026 21:22:08
[2026-10-28 21:22:08,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:22:09,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:22:09,195.195 INFO    ] No existing commands found in stream
[2026-10-28 21:22:14,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:22:14,217.217 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-28 21:22:16,952.952 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:22:16,955.955 INFO    ] Checking for system updates...
[2026-10-28 21:22:16,999.999 INFO    ] 200
[2026-10-28 21:22:17,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:22:17,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:22:17,058.058 INFO    ] No update needed
[2026-10-28 21:22:17,061.061 INFO    ] Checking for camera pi updates...
[2026-10-28 21:22:17,100.100 INFO    ] 200
[2026-10-28 21:22:17,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:22:17,145.145 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:22:17,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:22:17,235.235 INFO    ] No camera update needed
[2026-10-28 21:22:17,238.238 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:22:17,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:22:17,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:22:17,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:22:19,294.294 INFO    ] ================================================
[2026-10-28 21:22:19,310.310 INFO    ] Launching Daemon at Wed Oct 28 21:22:19 IST 2026
[2026-10-28 21:22:19,321.321 INFO    ] ================================================
[2026-10-28 21:22:19,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:22:19
[2026-10-28 21:22:20,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:22:20,735.735 INFO    ] Initializing speech engine...
[2026-10-28 21:22:20,745.745 INFO    ] 2026-10-28 21:22:20
[2026-10-28 21:22:21,043.043 INFO    ] 2026-10-28 21:22:21
[2026-10-28 21:22:21,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:22:21,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:22:21,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:22:21,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:22:21,596.596 INFO    ] time= 28/10/2026 21:22:21
[2026-10-28 21:22:21,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:22:21,698.698 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:22:21,838.838 INFO    ] No existing commands found in stream
[2026-10-28 21:22:26,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:22:26,866.866 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 21:22:30,468.468 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:22:30,470.470 INFO    ] Checking for system updates...
[2026-10-28 21:22:30,508.508 INFO    ] 200
[2026-10-28 21:22:30,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:22:30,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:22:30,565.565 INFO    ] No update needed
[2026-10-28 21:22:30,567.567 INFO    ] Checking for camera pi updates...
[2026-10-28 21:22:30,601.601 INFO    ] 200
[2026-10-28 21:22:30,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:22:30,645.645 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:22:30,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:22:30,711.711 INFO    ] No camera update needed
[2026-10-28 21:22:30,713.713 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:22:30,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:22:30,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:22:30,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:22:32,768.768 INFO    ] ================================================
[2026-10-28 21:22:32,784.784 INFO    ] Launching Daemon at Wed Oct 28 21:22:32 IST 2026
[2026-10-28 21:22:32,795.795 INFO    ] ================================================
[2026-10-28 21:22:33,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:22:33
[2026-10-28 21:22:34,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:22:34,276.276 INFO    ] Initializing speech engine...
[2026-10-28 21:22:34,285.285 INFO    ] 2026-10-28 21:22:34
[2026-10-28 21:22:34,534.534 INFO    ] 2026-10-28 21:22:34
[2026-10-28 21:22:34,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:22:34,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:22:34,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:22:35,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:22:35,654.654 INFO    ] time= 28/10/2026 21:22:35
[2026-10-28 21:22:35,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:22:35,683.683 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:22:35,790.790 INFO    ] No existing commands found in stream
[2026-10-28 21:22:40,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:22:40,804.804 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-28 21:22:42,873.873 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:22:42,876.876 INFO    ] Checking for system updates...
[2026-10-28 21:22:42,913.913 INFO    ] 200
[2026-10-28 21:22:42,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:22:42,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:22:42,972.972 INFO    ] No update needed
[2026-10-28 21:22:42,975.975 INFO    ] Checking for camera pi updates...
[2026-10-28 21:22:43,012.012 INFO    ] 200
[2026-10-28 21:22:43,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:22:43,056.056 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:22:43,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:22:43,162.162 INFO    ] No camera update needed
[2026-10-28 21:22:43,165.165 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:22:43,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:22:43,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:22:43,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:22:45,220.220 INFO    ] ================================================
[2026-10-28 21:22:45,236.236 INFO    ] Launching Daemon at Wed Oct 28 21:22:45 IST 2026
[2026-10-28 21:22:45,247.247 INFO    ] ================================================
[2026-10-28 21:22:45,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:22:45
[2026-10-28 21:22:46,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:22:46,837.837 INFO    ] Initializing speech engine...
[2026-10-28 21:22:46,843.843 INFO    ] 2026-10-28 21:22:46
[2026-10-28 21:22:47,104.104 INFO    ] 2026-10-28 21:22:47
[2026-10-28 21:22:47,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:22:47,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:22:47,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:22:47,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:22:47,650.650 INFO    ] time= 28/10/2026 21:22:47
[2026-10-28 21:22:47,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:22:47,696.696 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:22:47,877.877 INFO    ] No existing commands found in stream
[2026-10-28 21:22:52,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:22:52,911.911 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 21:22:54,561.561 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:22:54,564.564 INFO    ] Checking for system updates...
[2026-10-28 21:22:54,600.600 INFO    ] 200
[2026-10-28 21:22:54,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:22:54,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:22:54,658.658 INFO    ] No update needed
[2026-10-28 21:22:54,660.660 INFO    ] Checking for camera pi updates...
[2026-10-28 21:22:54,694.694 INFO    ] 200
[2026-10-28 21:22:54,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:22:54,736.736 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:22:54,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:22:54,819.819 INFO    ] No camera update needed
[2026-10-28 21:22:54,822.822 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:22:54,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:22:54,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:22:54,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:22:56,878.878 INFO    ] ================================================
[2026-10-28 21:22:56,894.894 INFO    ] Launching Daemon at Wed Oct 28 21:22:56 IST 2026
[2026-10-28 21:22:56,905.905 INFO    ] ================================================
[2026-10-28 21:22:57,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:22:57
[2026-10-28 21:22:58,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:22:58,317.317 INFO    ] Initializing speech engine...
[2026-10-28 21:22:58,341.341 INFO    ] 2026-10-28 21:22:58
[2026-10-28 21:22:58,596.596 INFO    ] 2026-10-28 21:22:58
[2026-10-28 21:22:58,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:22:59,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:22:59,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:22:59,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:22:59,325.325 INFO    ] time= 28/10/2026 21:22:59
[2026-10-28 21:22:59,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:22:59,401.401 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:22:59,557.557 INFO    ] No existing commands found in stream
[2026-10-28 21:23:04,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:23:04,591.591 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 21:23:07,146.146 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:23:07,148.148 INFO    ] Checking for system updates...
[2026-10-28 21:23:07,188.188 INFO    ] 200
[2026-10-28 21:23:07,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:23:07,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:23:07,252.252 INFO    ] No update needed
[2026-10-28 21:23:07,254.254 INFO    ] Checking for camera pi updates...
[2026-10-28 21:23:07,288.288 INFO    ] 200
[2026-10-28 21:23:07,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:23:07,330.330 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:23:07,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:23:07,416.416 INFO    ] No camera update needed
[2026-10-28 21:23:07,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:23:07,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:23:07,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:23:07,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:23:09,474.474 INFO    ] ================================================
[2026-10-28 21:23:09,490.490 INFO    ] Launching Daemon at Wed Oct 28 21:23:09 IST 2026
[2026-10-28 21:23:09,502.502 INFO    ] ================================================
[2026-10-28 21:23:10,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:23:10
[2026-10-28 21:23:10,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:23:10,937.937 INFO    ] Initializing speech engine...
[2026-10-28 21:23:10,945.945 INFO    ] 2026-10-28 21:23:10
[2026-10-28 21:23:11,194.194 INFO    ] 2026-10-28 21:23:11
[2026-10-28 21:23:11,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:23:11,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:23:11,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:23:11,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:23:11,764.764 INFO    ] time= 28/10/2026 21:23:11
[2026-10-28 21:23:11,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:23:11,789.789 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:23:11,899.899 INFO    ] No existing commands found in stream
[2026-10-28 21:23:16,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:23:16,927.927 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-28 21:23:19,082.082 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:23:19,085.085 INFO    ] Checking for system updates...
[2026-10-28 21:23:19,128.128 INFO    ] 200
[2026-10-28 21:23:19,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:23:19,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:23:19,185.185 INFO    ] No update needed
[2026-10-28 21:23:19,188.188 INFO    ] Checking for camera pi updates...
[2026-10-28 21:23:19,221.221 INFO    ] 200
[2026-10-28 21:23:19,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:23:19,263.263 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:23:19,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:23:19,376.376 INFO    ] No camera update needed
[2026-10-28 21:23:19,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:23:19,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:23:19,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:23:19,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:23:21,431.431 INFO    ] ================================================
[2026-10-28 21:23:21,447.447 INFO    ] Launching Daemon at Wed Oct 28 21:23:21 IST 2026
[2026-10-28 21:23:21,458.458 INFO    ] ================================================
[2026-10-28 21:23:22,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:23:22
[2026-10-28 21:23:22,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:23:22,903.903 INFO    ] Initializing speech engine...
[2026-10-28 21:23:22,909.909 INFO    ] 2026-10-28 21:23:22
[2026-10-28 21:23:23,167.167 INFO    ] 2026-10-28 21:23:23
[2026-10-28 21:23:23,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:23:23,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:23:23,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:23:23,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:23:23,731.731 INFO    ] time= 28/10/2026 21:23:23
[2026-10-28 21:23:23,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:23:23,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:23:23,893.893 INFO    ] No existing commands found in stream
[2026-10-28 21:23:28,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:23:28,927.927 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-10-28 21:23:29,865.865 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:23:29,867.867 INFO    ] Checking for system updates...
[2026-10-28 21:23:29,902.902 INFO    ] 200
[2026-10-28 21:23:29,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:23:29,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:23:29,960.960 INFO    ] No update needed
[2026-10-28 21:23:29,963.963 INFO    ] Checking for camera pi updates...
[2026-10-28 21:23:29,996.996 INFO    ] 200
[2026-10-28 21:23:29,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:23:30,044.044 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:23:30,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:23:30,131.131 INFO    ] No camera update needed
[2026-10-28 21:23:30,136.136 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:23:30,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:23:30,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:23:30,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:23:32,192.192 INFO    ] ================================================
[2026-10-28 21:23:32,207.207 INFO    ] Launching Daemon at Wed Oct 28 21:23:32 IST 2026
[2026-10-28 21:23:32,218.218 INFO    ] ================================================
[2026-10-28 21:23:32,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:23:32
[2026-10-28 21:23:33,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:23:33,679.679 INFO    ] Initializing speech engine...
[2026-10-28 21:23:33,691.691 INFO    ] 2026-10-28 21:23:33
[2026-10-28 21:23:33,942.942 INFO    ] 2026-10-28 21:23:33
[2026-10-28 21:23:33,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:23:34,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:23:34,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:23:34,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:23:34,498.498 INFO    ] time= 28/10/2026 21:23:34
[2026-10-28 21:23:34,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:23:34,545.545 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:23:34,660.660 INFO    ] No existing commands found in stream
[2026-10-28 21:23:39,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:23:39,692.692 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 21:23:40,328.328 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:23:40,331.331 INFO    ] Checking for system updates...
[2026-10-28 21:23:40,368.368 INFO    ] 200
[2026-10-28 21:23:40,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:23:40,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:23:40,435.435 INFO    ] No update needed
[2026-10-28 21:23:40,438.438 INFO    ] Checking for camera pi updates...
[2026-10-28 21:23:40,477.477 INFO    ] 200
[2026-10-28 21:23:40,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:23:40,522.522 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:23:40,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:23:40,708.708 INFO    ] No camera update needed
[2026-10-28 21:23:40,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:23:40,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:23:40,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:23:40,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:23:42,766.766 INFO    ] ================================================
[2026-10-28 21:23:42,782.782 INFO    ] Launching Daemon at Wed Oct 28 21:23:42 IST 2026
[2026-10-28 21:23:42,792.792 INFO    ] ================================================
[2026-10-28 21:23:43,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:23:43
[2026-10-28 21:23:43,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:23:44,246.246 INFO    ] Initializing speech engine...
[2026-10-28 21:23:44,253.253 INFO    ] 2026-10-28 21:23:44
[2026-10-28 21:23:44,517.517 INFO    ] 2026-10-28 21:23:44
[2026-10-28 21:23:44,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:23:44,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:23:44,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:23:45,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:23:45,063.063 INFO    ] time= 28/10/2026 21:23:45
[2026-10-28 21:23:45,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:23:45,090.090 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:23:45,192.192 INFO    ] No existing commands found in stream
[2026-10-28 21:23:50,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:23:50,225.225 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-28 21:23:54,268.268 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:23:54,270.270 INFO    ] Checking for system updates...
[2026-10-28 21:23:54,310.310 INFO    ] 200
[2026-10-28 21:23:54,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:23:54,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:23:54,376.376 INFO    ] No update needed
[2026-10-28 21:23:54,378.378 INFO    ] Checking for camera pi updates...
[2026-10-28 21:23:54,417.417 INFO    ] 200
[2026-10-28 21:23:54,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:23:54,460.460 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:23:54,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:23:54,531.531 INFO    ] No camera update needed
[2026-10-28 21:23:54,533.533 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:23:54,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:23:54,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:23:54,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:23:56,587.587 INFO    ] ================================================
[2026-10-28 21:23:56,602.602 INFO    ] Launching Daemon at Wed Oct 28 21:23:56 IST 2026
[2026-10-28 21:23:56,612.612 INFO    ] ================================================
[2026-10-28 21:23:57,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:23:57
[2026-10-28 21:23:57,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:23:58,299.299 INFO    ] Initializing speech engine...
[2026-10-28 21:23:58,312.312 INFO    ] 2026-10-28 21:23:58
[2026-10-28 21:23:58,604.604 INFO    ] 2026-10-28 21:23:58
[2026-10-28 21:23:58,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:23:58,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:23:59,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:23:59,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:23:59,204.204 INFO    ] time= 28/10/2026 21:23:59
[2026-10-28 21:23:59,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:23:59,306.306 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:23:59,449.449 INFO    ] No existing commands found in stream
[2026-10-28 21:24:04,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:24:04,484.484 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-28 21:24:08,855.855 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:24:08,859.859 INFO    ] Checking for system updates...
[2026-10-28 21:24:08,896.896 INFO    ] 200
[2026-10-28 21:24:08,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:24:08,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:24:08,964.964 INFO    ] No update needed
[2026-10-28 21:24:08,967.967 INFO    ] Checking for camera pi updates...
[2026-10-28 21:24:09,007.007 INFO    ] 200
[2026-10-28 21:24:09,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:24:09,059.059 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:24:09,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:24:09,145.145 INFO    ] No camera update needed
[2026-10-28 21:24:09,147.147 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:24:09,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:24:09,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:24:09,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:24:11,200.200 INFO    ] ================================================
[2026-10-28 21:24:11,216.216 INFO    ] Launching Daemon at Wed Oct 28 21:24:11 IST 2026
[2026-10-28 21:24:11,227.227 INFO    ] ================================================
[2026-10-28 21:24:11,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:24:11
[2026-10-28 21:24:12,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:24:12,628.628 INFO    ] Initializing speech engine...
[2026-10-28 21:24:12,650.650 INFO    ] 2026-10-28 21:24:12
[2026-10-28 21:24:12,903.903 INFO    ] 2026-10-28 21:24:12
[2026-10-28 21:24:12,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:24:13,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:24:13,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:24:13,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:24:13,471.471 INFO    ] time= 28/10/2026 21:24:13
[2026-10-28 21:24:13,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:24:13,496.496 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:24:13,657.657 INFO    ] No existing commands found in stream
[2026-10-28 21:24:18,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:24:18,675.675 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-28 21:24:22,485.485 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:24:22,488.488 INFO    ] Checking for system updates...
[2026-10-28 21:24:22,523.523 INFO    ] 200
[2026-10-28 21:24:22,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:24:22,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:24:22,580.580 INFO    ] No update needed
[2026-10-28 21:24:22,582.582 INFO    ] Checking for camera pi updates...
[2026-10-28 21:24:22,616.616 INFO    ] 200
[2026-10-28 21:24:22,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:24:22,659.659 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:24:22,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:24:22,761.761 INFO    ] No camera update needed
[2026-10-28 21:24:22,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:24:22,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:24:22,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:24:22,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:24:24,816.816 INFO    ] ================================================
[2026-10-28 21:24:24,832.832 INFO    ] Launching Daemon at Wed Oct 28 21:24:24 IST 2026
[2026-10-28 21:24:24,843.843 INFO    ] ================================================
[2026-10-28 21:24:25,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:24:25
[2026-10-28 21:24:26,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:24:26,348.348 INFO    ] Initializing speech engine...
[2026-10-28 21:24:26,357.357 INFO    ] 2026-10-28 21:24:26
[2026-10-28 21:24:26,617.617 INFO    ] 2026-10-28 21:24:26
[2026-10-28 21:24:26,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:24:27,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:24:27,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:24:28,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:24:28,263.263 INFO    ] time= 28/10/2026 21:24:28
[2026-10-28 21:24:28,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:24:28,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:24:28,571.571 INFO    ] No existing commands found in stream
[2026-10-28 21:24:33,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:24:33,585.585 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-28 21:24:35,369.369 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:24:35,371.371 INFO    ] Checking for system updates...
[2026-10-28 21:24:35,412.412 INFO    ] 200
[2026-10-28 21:24:35,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:24:35,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:24:35,522.522 INFO    ] No update needed
[2026-10-28 21:24:35,525.525 INFO    ] Checking for camera pi updates...
[2026-10-28 21:24:35,570.570 INFO    ] 200
[2026-10-28 21:24:35,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:24:35,619.619 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:24:35,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:24:35,720.720 INFO    ] No camera update needed
[2026-10-28 21:24:35,722.722 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:24:35,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:24:35,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:24:35,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:24:37,775.775 INFO    ] ================================================
[2026-10-28 21:24:37,790.790 INFO    ] Launching Daemon at Wed Oct 28 21:24:37 IST 2026
[2026-10-28 21:24:37,801.801 INFO    ] ================================================
[2026-10-28 21:24:38,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:24:38
[2026-10-28 21:24:39,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:24:39,478.478 INFO    ] Initializing speech engine...
[2026-10-28 21:24:39,486.486 INFO    ] 2026-10-28 21:24:39
[2026-10-28 21:24:39,773.773 INFO    ] 2026-10-28 21:24:39
[2026-10-28 21:24:39,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:24:40,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:24:40,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:24:40,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:24:40,496.496 INFO    ] time= 28/10/2026 21:24:40
[2026-10-28 21:24:40,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:24:40,593.593 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:24:40,747.747 INFO    ] No existing commands found in stream
[2026-10-28 21:24:45,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:24:45,769.769 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-28 21:24:49,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:24:49,749.749 INFO    ] Checking for system updates...
[2026-10-28 21:24:49,784.784 INFO    ] 200
[2026-10-28 21:24:49,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:24:49,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:24:49,841.841 INFO    ] No update needed
[2026-10-28 21:24:49,844.844 INFO    ] Checking for camera pi updates...
[2026-10-28 21:24:49,878.878 INFO    ] 200
[2026-10-28 21:24:49,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:24:49,926.926 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:24:50,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:24:50,032.032 INFO    ] No camera update needed
[2026-10-28 21:24:50,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:24:50,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:24:50,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:24:50,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:24:52,087.087 INFO    ] ================================================
[2026-10-28 21:24:52,102.102 INFO    ] Launching Daemon at Wed Oct 28 21:24:52 IST 2026
[2026-10-28 21:24:52,113.113 INFO    ] ================================================
[2026-10-28 21:24:52,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:24:52
[2026-10-28 21:24:53,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:24:53,559.559 INFO    ] Initializing speech engine...
[2026-10-28 21:24:53,582.582 INFO    ] 2026-10-28 21:24:53
[2026-10-28 21:24:53,835.835 INFO    ] 2026-10-28 21:24:53
[2026-10-28 21:24:53,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:24:54,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:24:54,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:24:54,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:24:54,390.390 INFO    ] time= 28/10/2026 21:24:54
[2026-10-28 21:24:54,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:24:54,418.418 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:24:54,559.559 INFO    ] No existing commands found in stream
[2026-10-28 21:24:59,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:24:59,589.589 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 21:25:00,286.286 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:25:00,288.288 INFO    ] Checking for system updates...
[2026-10-28 21:25:00,324.324 INFO    ] 200
[2026-10-28 21:25:00,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:25:00,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:25:00,381.381 INFO    ] No update needed
[2026-10-28 21:25:00,384.384 INFO    ] Checking for camera pi updates...
[2026-10-28 21:25:00,418.418 INFO    ] 200
[2026-10-28 21:25:00,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:25:00,461.461 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:25:00,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:25:00,566.566 INFO    ] No camera update needed
[2026-10-28 21:25:00,572.572 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:25:00,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:25:00,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:25:00,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:25:02,640.640 INFO    ] ================================================
[2026-10-28 21:25:02,663.663 INFO    ] Launching Daemon at Wed Oct 28 21:25:02 IST 2026
[2026-10-28 21:25:02,681.681 INFO    ] ================================================
[2026-10-28 21:25:03,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:25:03
[2026-10-28 21:25:03,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:25:04,276.276 INFO    ] Initializing speech engine...
[2026-10-28 21:25:04,293.293 INFO    ] 2026-10-28 21:25:04
[2026-10-28 21:25:04,550.550 INFO    ] 2026-10-28 21:25:04
[2026-10-28 21:25:04,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:25:04,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:25:04,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:25:05,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:25:05,117.117 INFO    ] time= 28/10/2026 21:25:05
[2026-10-28 21:25:05,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:25:05,143.143 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:25:05,272.272 INFO    ] No existing commands found in stream
[2026-10-28 21:25:10,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:25:10,299.299 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-28 21:25:12,691.691 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:25:12,693.693 INFO    ] Checking for system updates...
[2026-10-28 21:25:12,733.733 INFO    ] 200
[2026-10-28 21:25:12,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:25:12,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:25:12,791.791 INFO    ] No update needed
[2026-10-28 21:25:12,793.793 INFO    ] Checking for camera pi updates...
[2026-10-28 21:25:12,826.826 INFO    ] 200
[2026-10-28 21:25:12,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:25:12,869.869 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:25:12,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:25:12,969.969 INFO    ] No camera update needed
[2026-10-28 21:25:12,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:25:12,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:25:12,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:25:12,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:25:15,025.025 INFO    ] ================================================
[2026-10-28 21:25:15,041.041 INFO    ] Launching Daemon at Wed Oct 28 21:25:15 IST 2026
[2026-10-28 21:25:15,052.052 INFO    ] ================================================
[2026-10-28 21:25:15,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:25:15
[2026-10-28 21:25:16,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:25:16,508.508 INFO    ] Initializing speech engine...
[2026-10-28 21:25:18,649.649 INFO    ] 2026-10-28 21:25:18
[2026-10-28 21:25:18,986.986 INFO    ] 2026-10-28 21:25:18
[2026-10-28 21:25:19,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:25:19,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:25:19,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:25:19,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:25:19,510.510 INFO    ] time= 28/10/2026 21:25:19
[2026-10-28 21:25:19,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:25:19,551.551 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:25:19,662.662 INFO    ] No existing commands found in stream
[2026-10-28 21:25:24,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:25:24,675.675 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-28 21:25:26,748.748 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:25:26,750.750 INFO    ] Checking for system updates...
[2026-10-28 21:25:26,791.791 INFO    ] 200
[2026-10-28 21:25:26,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:25:26,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:25:26,855.855 INFO    ] No update needed
[2026-10-28 21:25:26,857.857 INFO    ] Checking for camera pi updates...
[2026-10-28 21:25:26,890.890 INFO    ] 200
[2026-10-28 21:25:26,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:25:26,935.935 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:25:27,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:25:27,031.031 INFO    ] No camera update needed
[2026-10-28 21:25:27,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:25:27,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:25:27,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:25:27,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:25:29,087.087 INFO    ] ================================================
[2026-10-28 21:25:29,103.103 INFO    ] Launching Daemon at Wed Oct 28 21:25:29 IST 2026
[2026-10-28 21:25:29,115.115 INFO    ] ================================================
[2026-10-28 21:25:29,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:25:29
[2026-10-28 21:25:30,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:25:30,540.540 INFO    ] Initializing speech engine...
[2026-10-28 21:25:30,550.550 INFO    ] 2026-10-28 21:25:30
[2026-10-28 21:25:30,795.795 INFO    ] 2026-10-28 21:25:30
[2026-10-28 21:25:30,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:25:31,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:25:31,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:25:31,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:25:31,365.365 INFO    ] time= 28/10/2026 21:25:31
[2026-10-28 21:25:31,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:25:31,400.400 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:25:31,522.522 INFO    ] No existing commands found in stream
[2026-10-28 21:25:36,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:25:36,550.550 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 21:25:38,028.028 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:25:38,031.031 INFO    ] Checking for system updates...
[2026-10-28 21:25:38,067.067 INFO    ] 200
[2026-10-28 21:25:38,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:25:38,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:25:38,123.123 INFO    ] No update needed
[2026-10-28 21:25:38,126.126 INFO    ] Checking for camera pi updates...
[2026-10-28 21:25:38,160.160 INFO    ] 200
[2026-10-28 21:25:38,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:25:38,208.208 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:25:38,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:25:38,299.299 INFO    ] No camera update needed
[2026-10-28 21:25:38,301.301 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:25:38,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:25:38,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:25:38,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:25:40,354.354 INFO    ] ================================================
[2026-10-28 21:25:40,370.370 INFO    ] Launching Daemon at Wed Oct 28 21:25:40 IST 2026
[2026-10-28 21:25:40,381.381 INFO    ] ================================================
[2026-10-28 21:25:40,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:25:40
[2026-10-28 21:25:41,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:25:41,797.797 INFO    ] Initializing speech engine...
[2026-10-28 21:25:41,806.806 INFO    ] 2026-10-28 21:25:41
[2026-10-28 21:25:42,052.052 INFO    ] 2026-10-28 21:25:42
[2026-10-28 21:25:42,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:25:42,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:25:42,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:25:42,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:25:42,607.607 INFO    ] time= 28/10/2026 21:25:42
[2026-10-28 21:25:42,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:25:42,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:25:42,776.776 INFO    ] No existing commands found in stream
[2026-10-28 21:25:47,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:25:47,811.811 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 21:25:52,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:25:52,306.306 INFO    ] Checking for system updates...
[2026-10-28 21:25:52,346.346 INFO    ] 200
[2026-10-28 21:25:52,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:25:52,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:25:52,411.411 INFO    ] No update needed
[2026-10-28 21:25:52,413.413 INFO    ] Checking for camera pi updates...
[2026-10-28 21:25:52,451.451 INFO    ] 200
[2026-10-28 21:25:52,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:25:52,493.493 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:25:52,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:25:52,680.680 INFO    ] No camera update needed
[2026-10-28 21:25:52,682.682 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:25:52,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:25:52,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:25:52,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:25:54,734.734 INFO    ] ================================================
[2026-10-28 21:25:54,750.750 INFO    ] Launching Daemon at Wed Oct 28 21:25:54 IST 2026
[2026-10-28 21:25:54,761.761 INFO    ] ================================================
[2026-10-28 21:25:55,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:25:55
[2026-10-28 21:25:56,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:25:56,317.317 INFO    ] Initializing speech engine...
[2026-10-28 21:25:56,324.324 INFO    ] 2026-10-28 21:25:56
[2026-10-28 21:25:56,584.584 INFO    ] 2026-10-28 21:25:56
[2026-10-28 21:25:56,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:25:56,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:25:56,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:25:57,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:25:57,280.280 INFO    ] time= 28/10/2026 21:25:57
[2026-10-28 21:25:57,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:25:57,375.375 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:25:57,523.523 INFO    ] No existing commands found in stream
[2026-10-28 21:26:02,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:26:02,540.540 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-28 21:26:05,252.252 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:26:05,255.255 INFO    ] Checking for system updates...
[2026-10-28 21:26:05,296.296 INFO    ] 200
[2026-10-28 21:26:05,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:26:05,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:26:05,355.355 INFO    ] No update needed
[2026-10-28 21:26:05,358.358 INFO    ] Checking for camera pi updates...
[2026-10-28 21:26:05,393.393 INFO    ] 200
[2026-10-28 21:26:05,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:26:05,437.437 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:26:05,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:26:05,548.548 INFO    ] No camera update needed
[2026-10-28 21:26:05,551.551 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:26:05,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:26:05,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:26:05,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:26:07,605.605 INFO    ] ================================================
[2026-10-28 21:26:07,620.620 INFO    ] Launching Daemon at Wed Oct 28 21:26:07 IST 2026
[2026-10-28 21:26:07,631.631 INFO    ] ================================================
[2026-10-28 21:26:08,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:26:08
[2026-10-28 21:26:08,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:26:09,083.083 INFO    ] Initializing speech engine...
[2026-10-28 21:26:09,092.092 INFO    ] 2026-10-28 21:26:09
[2026-10-28 21:26:09,343.343 INFO    ] 2026-10-28 21:26:09
[2026-10-28 21:26:09,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:26:09,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:26:09,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:26:09,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:26:09,910.910 INFO    ] time= 28/10/2026 21:26:09
[2026-10-28 21:26:09,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:26:09,935.935 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:26:10,080.080 INFO    ] No existing commands found in stream
[2026-10-28 21:26:15,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:26:15,109.109 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-28 21:26:19,794.794 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:26:19,797.797 INFO    ] Checking for system updates...
[2026-10-28 21:26:19,832.832 INFO    ] 200
[2026-10-28 21:26:19,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:26:19,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:26:19,890.890 INFO    ] No update needed
[2026-10-28 21:26:19,892.892 INFO    ] Checking for camera pi updates...
[2026-10-28 21:26:19,931.931 INFO    ] 200
[2026-10-28 21:26:19,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:26:19,981.981 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:26:20,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:26:20,081.081 INFO    ] No camera update needed
[2026-10-28 21:26:20,084.084 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:26:20,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:26:20,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:26:20,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:26:22,141.141 INFO    ] ================================================
[2026-10-28 21:26:22,156.156 INFO    ] Launching Daemon at Wed Oct 28 21:26:22 IST 2026
[2026-10-28 21:26:22,167.167 INFO    ] ================================================
[2026-10-28 21:26:22,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:26:22
[2026-10-28 21:26:23,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:26:23,626.626 INFO    ] Initializing speech engine...
[2026-10-28 21:26:23,635.635 INFO    ] 2026-10-28 21:26:23
[2026-10-28 21:26:23,883.883 INFO    ] 2026-10-28 21:26:23
[2026-10-28 21:26:23,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:26:24,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:26:24,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:26:24,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:26:24,438.438 INFO    ] time= 28/10/2026 21:26:24
[2026-10-28 21:26:24,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:26:24,467.467 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:26:24,639.639 INFO    ] No existing commands found in stream
[2026-10-28 21:26:29,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:26:29,672.672 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-28 21:26:30,347.347 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:26:30,349.349 INFO    ] Checking for system updates...
[2026-10-28 21:26:30,394.394 INFO    ] 200
[2026-10-28 21:26:30,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:26:30,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:26:30,459.459 INFO    ] No update needed
[2026-10-28 21:26:30,462.462 INFO    ] Checking for camera pi updates...
[2026-10-28 21:26:30,496.496 INFO    ] 200
[2026-10-28 21:26:30,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:26:30,546.546 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:26:30,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:26:30,633.633 INFO    ] No camera update needed
[2026-10-28 21:26:30,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:26:30,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:26:30,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:26:30,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:26:32,692.692 INFO    ] ================================================
[2026-10-28 21:26:32,708.708 INFO    ] Launching Daemon at Wed Oct 28 21:26:32 IST 2026
[2026-10-28 21:26:32,719.719 INFO    ] ================================================
[2026-10-28 21:26:33,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:26:33
[2026-10-28 21:26:33,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:26:34,140.140 INFO    ] Initializing speech engine...
[2026-10-28 21:26:34,147.147 INFO    ] 2026-10-28 21:26:34
[2026-10-28 21:26:34,406.406 INFO    ] 2026-10-28 21:26:34
[2026-10-28 21:26:34,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:26:34,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:26:34,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:26:34,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:26:34,963.963 INFO    ] time= 28/10/2026 21:26:34
[2026-10-28 21:26:34,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:26:34,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:26:35,124.124 INFO    ] No existing commands found in stream
[2026-10-28 21:26:40,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:26:40,152.152 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-28 21:26:42,962.962 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:26:42,965.965 INFO    ] Checking for system updates...
[2026-10-28 21:26:43,005.005 INFO    ] 200
[2026-10-28 21:26:43,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:26:43,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:26:43,064.064 INFO    ] No update needed
[2026-10-28 21:26:43,067.067 INFO    ] Checking for camera pi updates...
[2026-10-28 21:26:43,105.105 INFO    ] 200
[2026-10-28 21:26:43,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:26:43,150.150 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:26:43,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:26:43,237.237 INFO    ] No camera update needed
[2026-10-28 21:26:43,240.240 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:26:43,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:26:43,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:26:43,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:26:45,295.295 INFO    ] ================================================
[2026-10-28 21:26:45,311.311 INFO    ] Launching Daemon at Wed Oct 28 21:26:45 IST 2026
[2026-10-28 21:26:45,322.322 INFO    ] ================================================
[2026-10-28 21:26:45,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:26:45
[2026-10-28 21:26:46,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:26:46,789.789 INFO    ] Initializing speech engine...
[2026-10-28 21:26:46,807.807 INFO    ] 2026-10-28 21:26:46
[2026-10-28 21:26:47,059.059 INFO    ] 2026-10-28 21:26:47
[2026-10-28 21:26:47,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:26:47,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:26:47,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:26:47,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:26:47,631.631 INFO    ] time= 28/10/2026 21:26:47
[2026-10-28 21:26:47,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:26:47,655.655 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:26:47,787.787 INFO    ] No existing commands found in stream
[2026-10-28 21:26:52,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:26:52,810.810 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-28 21:26:56,069.069 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:26:56,071.071 INFO    ] Checking for system updates...
[2026-10-28 21:26:56,107.107 INFO    ] 200
[2026-10-28 21:26:56,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:26:56,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:26:56,164.164 INFO    ] No update needed
[2026-10-28 21:26:56,167.167 INFO    ] Checking for camera pi updates...
[2026-10-28 21:26:56,201.201 INFO    ] 200
[2026-10-28 21:26:56,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:26:56,248.248 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:26:56,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:26:56,356.356 INFO    ] No camera update needed
[2026-10-28 21:26:56,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:26:56,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:26:56,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:26:56,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:26:58,412.412 INFO    ] ================================================
[2026-10-28 21:26:58,427.427 INFO    ] Launching Daemon at Wed Oct 28 21:26:58 IST 2026
[2026-10-28 21:26:58,438.438 INFO    ] ================================================
[2026-10-28 21:26:59,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:26:59
[2026-10-28 21:26:59,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:26:59,837.837 INFO    ] Initializing speech engine...
[2026-10-28 21:26:59,861.861 INFO    ] 2026-10-28 21:26:59
[2026-10-28 21:27:00,117.117 INFO    ] 2026-10-28 21:27:00
[2026-10-28 21:27:00,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:27:00,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:27:00,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:27:00,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:27:00,686.686 INFO    ] time= 28/10/2026 21:27:00
[2026-10-28 21:27:00,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:27:00,708.708 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:27:00,898.898 INFO    ] No existing commands found in stream
[2026-10-28 21:27:05,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:27:05,936.936 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 21:27:09,823.823 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:27:09,825.825 INFO    ] Checking for system updates...
[2026-10-28 21:27:09,861.861 INFO    ] 200
[2026-10-28 21:27:09,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:27:09,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:27:09,920.920 INFO    ] No update needed
[2026-10-28 21:27:09,922.922 INFO    ] Checking for camera pi updates...
[2026-10-28 21:27:09,960.960 INFO    ] 200
[2026-10-28 21:27:09,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:27:10,012.012 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:27:10,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:27:10,099.099 INFO    ] No camera update needed
[2026-10-28 21:27:10,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:27:10,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:27:10,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:27:10,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:27:12,157.157 INFO    ] ================================================
[2026-10-28 21:27:12,173.173 INFO    ] Launching Daemon at Wed Oct 28 21:27:12 IST 2026
[2026-10-28 21:27:12,183.183 INFO    ] ================================================
[2026-10-28 21:27:12,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:27:12
[2026-10-28 21:27:13,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:27:13,733.733 INFO    ] Initializing speech engine...
[2026-10-28 21:27:13,741.741 INFO    ] 2026-10-28 21:27:13
[2026-10-28 21:27:13,998.998 INFO    ] 2026-10-28 21:27:13
[2026-10-28 21:27:14,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:27:14,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:27:14,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:27:14,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:27:14,604.604 INFO    ] time= 28/10/2026 21:27:14
[2026-10-28 21:27:14,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:27:14,693.693 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:27:14,850.850 INFO    ] No existing commands found in stream
[2026-10-28 21:27:19,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:27:19,884.884 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 21:27:23,067.067 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:27:23,070.070 INFO    ] Checking for system updates...
[2026-10-28 21:27:23,106.106 INFO    ] 200
[2026-10-28 21:27:23,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:27:23,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:27:23,166.166 INFO    ] No update needed
[2026-10-28 21:27:23,168.168 INFO    ] Checking for camera pi updates...
[2026-10-28 21:27:23,202.202 INFO    ] 200
[2026-10-28 21:27:23,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:27:23,248.248 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:27:23,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:27:23,333.333 INFO    ] No camera update needed
[2026-10-28 21:27:23,336.336 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:27:23,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:27:23,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:27:23,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:27:25,388.388 INFO    ] ================================================
[2026-10-28 21:27:25,404.404 INFO    ] Launching Daemon at Wed Oct 28 21:27:25 IST 2026
[2026-10-28 21:27:25,415.415 INFO    ] ================================================
[2026-10-28 21:27:26,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:27:26
[2026-10-28 21:27:26,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:27:26,874.874 INFO    ] Initializing speech engine...
[2026-10-28 21:27:26,883.883 INFO    ] 2026-10-28 21:27:26
[2026-10-28 21:27:27,129.129 INFO    ] 2026-10-28 21:27:27
[2026-10-28 21:27:27,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:27:27,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:27:27,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:27:27,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:27:27,683.683 INFO    ] time= 28/10/2026 21:27:27
[2026-10-28 21:27:27,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:27:27,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:27:27,870.870 INFO    ] No existing commands found in stream
[2026-10-28 21:27:32,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:27:32,897.897 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-28 21:27:34,288.288 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:27:34,291.291 INFO    ] Checking for system updates...
[2026-10-28 21:27:34,327.327 INFO    ] 200
[2026-10-28 21:27:34,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:27:34,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:27:34,386.386 INFO    ] No update needed
[2026-10-28 21:27:34,388.388 INFO    ] Checking for camera pi updates...
[2026-10-28 21:27:34,426.426 INFO    ] 200
[2026-10-28 21:27:34,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:27:34,478.478 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:27:34,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:27:34,567.567 INFO    ] No camera update needed
[2026-10-28 21:27:34,569.569 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:27:34,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:27:34,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:27:34,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:27:36,624.624 INFO    ] ================================================
[2026-10-28 21:27:36,640.640 INFO    ] Launching Daemon at Wed Oct 28 21:27:36 IST 2026
[2026-10-28 21:27:36,652.652 INFO    ] ================================================
[2026-10-28 21:27:37,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:27:37
[2026-10-28 21:27:37,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:27:38,075.075 INFO    ] Initializing speech engine...
[2026-10-28 21:27:38,084.084 INFO    ] 2026-10-28 21:27:38
[2026-10-28 21:27:38,329.329 INFO    ] 2026-10-28 21:27:38
[2026-10-28 21:27:38,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:27:38,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:27:38,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:27:38,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:27:38,892.892 INFO    ] time= 28/10/2026 21:27:38
[2026-10-28 21:27:38,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:27:38,917.917 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:27:39,115.115 INFO    ] No existing commands found in stream
[2026-10-28 21:27:44,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:27:44,148.148 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-10-28 21:27:46,322.322 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:27:46,325.325 INFO    ] Checking for system updates...
[2026-10-28 21:27:46,360.360 INFO    ] 200
[2026-10-28 21:27:46,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:27:46,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:27:46,425.425 INFO    ] No update needed
[2026-10-28 21:27:46,428.428 INFO    ] Checking for camera pi updates...
[2026-10-28 21:27:46,462.462 INFO    ] 200
[2026-10-28 21:27:46,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:27:46,506.506 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:27:46,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:27:46,572.572 INFO    ] No camera update needed
[2026-10-28 21:27:46,575.575 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:27:46,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:27:46,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:27:46,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:27:48,631.631 INFO    ] ================================================
[2026-10-28 21:27:48,646.646 INFO    ] Launching Daemon at Wed Oct 28 21:27:48 IST 2026
[2026-10-28 21:27:48,657.657 INFO    ] ================================================
[2026-10-28 21:27:49,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:27:49
[2026-10-28 21:27:49,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:27:50,110.110 INFO    ] Initializing speech engine...
[2026-10-28 21:27:50,121.121 INFO    ] 2026-10-28 21:27:50
[2026-10-28 21:27:50,368.368 INFO    ] 2026-10-28 21:27:50
[2026-10-28 21:27:50,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:27:50,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:27:50,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:27:50,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:27:50,927.927 INFO    ] time= 28/10/2026 21:27:50
[2026-10-28 21:27:50,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:27:50,975.975 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:27:51,110.110 INFO    ] No existing commands found in stream
[2026-10-28 21:27:56,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:27:56,138.138 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 21:27:57,785.785 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:27:57,787.787 INFO    ] Checking for system updates...
[2026-10-28 21:27:57,823.823 INFO    ] 200
[2026-10-28 21:27:57,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:27:57,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:27:57,886.886 INFO    ] No update needed
[2026-10-28 21:27:57,889.889 INFO    ] Checking for camera pi updates...
[2026-10-28 21:27:57,923.923 INFO    ] 200
[2026-10-28 21:27:57,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:27:57,968.968 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:27:58,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:27:58,157.157 INFO    ] No camera update needed
[2026-10-28 21:27:58,160.160 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:27:58,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:27:58,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:27:58,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:28:00,216.216 INFO    ] ================================================
[2026-10-28 21:28:00,232.232 INFO    ] Launching Daemon at Wed Oct 28 21:28:00 IST 2026
[2026-10-28 21:28:00,243.243 INFO    ] ================================================
[2026-10-28 21:28:00,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:28:00
[2026-10-28 21:28:01,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:28:01,964.964 INFO    ] Initializing speech engine...
[2026-10-28 21:28:01,985.985 INFO    ] 2026-10-28 21:28:01
[2026-10-28 21:28:02,339.339 INFO    ] 2026-10-28 21:28:02
[2026-10-28 21:28:02,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:28:02,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:28:02,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:28:02,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:28:03,009.009 INFO    ] time= 28/10/2026 21:28:02
[2026-10-28 21:28:03,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:28:03,129.129 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:28:03,293.293 INFO    ] No existing commands found in stream
[2026-10-28 21:28:08,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:28:08,307.307 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-10-28 21:28:10,067.067 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:28:10,070.070 INFO    ] Checking for system updates...
[2026-10-28 21:28:10,105.105 INFO    ] 200
[2026-10-28 21:28:10,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:28:10,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:28:10,168.168 INFO    ] No update needed
[2026-10-28 21:28:10,171.171 INFO    ] Checking for camera pi updates...
[2026-10-28 21:28:10,204.204 INFO    ] 200
[2026-10-28 21:28:10,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:28:10,247.247 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:28:10,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:28:10,316.316 INFO    ] No camera update needed
[2026-10-28 21:28:10,318.318 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:28:10,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:28:10,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:28:10,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:28:12,371.371 INFO    ] ================================================
[2026-10-28 21:28:12,387.387 INFO    ] Launching Daemon at Wed Oct 28 21:28:12 IST 2026
[2026-10-28 21:28:12,398.398 INFO    ] ================================================
[2026-10-28 21:28:12,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:28:12
[2026-10-28 21:28:13,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:28:13,863.863 INFO    ] Initializing speech engine...
[2026-10-28 21:28:13,870.870 INFO    ] 2026-10-28 21:28:13
[2026-10-28 21:28:14,132.132 INFO    ] 2026-10-28 21:28:14
[2026-10-28 21:28:14,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:28:14,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:28:14,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:28:14,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:28:14,877.877 INFO    ] time= 28/10/2026 21:28:14
[2026-10-28 21:28:14,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:28:14,953.953 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:28:15,082.082 INFO    ] No existing commands found in stream
[2026-10-28 21:28:20,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:28:20,112.112 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 21:28:24,147.147 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:28:24,150.150 INFO    ] Checking for system updates...
[2026-10-28 21:28:24,187.187 INFO    ] 200
[2026-10-28 21:28:24,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:28:24,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:28:24,245.245 INFO    ] No update needed
[2026-10-28 21:28:24,248.248 INFO    ] Checking for camera pi updates...
[2026-10-28 21:28:24,282.282 INFO    ] 200
[2026-10-28 21:28:24,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:28:24,327.327 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:28:24,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:28:24,421.421 INFO    ] No camera update needed
[2026-10-28 21:28:24,424.424 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:28:24,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:28:24,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:28:24,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:28:26,477.477 INFO    ] ================================================
[2026-10-28 21:28:26,493.493 INFO    ] Launching Daemon at Wed Oct 28 21:28:26 IST 2026
[2026-10-28 21:28:26,504.504 INFO    ] ================================================
[2026-10-28 21:28:27,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:28:27
[2026-10-28 21:28:27,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:28:27,982.982 INFO    ] Initializing speech engine...
[2026-10-28 21:28:27,995.995 INFO    ] 2026-10-28 21:28:27
[2026-10-28 21:28:28,262.262 INFO    ] 2026-10-28 21:28:28
[2026-10-28 21:28:28,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:28:28,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:28:28,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:28:28,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:28:28,886.886 INFO    ] time= 28/10/2026 21:28:28
[2026-10-28 21:28:28,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:28:28,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:28:29,060.060 INFO    ] No existing commands found in stream
[2026-10-28 21:28:34,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:28:34,075.075 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-28 21:28:37,303.303 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:28:37,305.305 INFO    ] Checking for system updates...
[2026-10-28 21:28:37,345.345 INFO    ] 200
[2026-10-28 21:28:37,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:28:37,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:28:37,401.401 INFO    ] No update needed
[2026-10-28 21:28:37,404.404 INFO    ] Checking for camera pi updates...
[2026-10-28 21:28:37,437.437 INFO    ] 200
[2026-10-28 21:28:37,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:28:37,479.479 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:28:37,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:28:37,567.567 INFO    ] No camera update needed
[2026-10-28 21:28:37,569.569 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:28:37,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:28:37,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:28:37,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:28:39,621.621 INFO    ] ================================================
[2026-10-28 21:28:39,637.637 INFO    ] Launching Daemon at Wed Oct 28 21:28:39 IST 2026
[2026-10-28 21:28:39,647.647 INFO    ] ================================================
[2026-10-28 21:28:40,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:28:40
[2026-10-28 21:28:40,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:28:41,062.062 INFO    ] Initializing speech engine...
[2026-10-28 21:28:41,070.070 INFO    ] 2026-10-28 21:28:41
[2026-10-28 21:28:41,317.317 INFO    ] 2026-10-28 21:28:41
[2026-10-28 21:28:41,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:28:41,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:28:41,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:28:41,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:28:41,921.921 INFO    ] time= 28/10/2026 21:28:41
[2026-10-28 21:28:41,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:28:41,986.986 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:28:42,122.122 INFO    ] No existing commands found in stream
[2026-10-28 21:28:47,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:28:47,135.135 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-10-28 21:28:49,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:28:49,307.307 INFO    ] Checking for system updates...
[2026-10-28 21:28:49,342.342 INFO    ] 200
[2026-10-28 21:28:49,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:28:49,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:28:49,405.405 INFO    ] No update needed
[2026-10-28 21:28:49,407.407 INFO    ] Checking for camera pi updates...
[2026-10-28 21:28:49,444.444 INFO    ] 200
[2026-10-28 21:28:49,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:28:49,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:28:49,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:28:49,582.582 INFO    ] No camera update needed
[2026-10-28 21:28:49,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:28:49,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:28:49,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:28:49,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:28:51,642.642 INFO    ] ================================================
[2026-10-28 21:28:51,658.658 INFO    ] Launching Daemon at Wed Oct 28 21:28:51 IST 2026
[2026-10-28 21:28:51,668.668 INFO    ] ================================================
[2026-10-28 21:28:52,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:28:52
[2026-10-28 21:28:52,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:28:53,268.268 INFO    ] Initializing speech engine...
[2026-10-28 21:28:53,279.279 INFO    ] 2026-10-28 21:28:53
[2026-10-28 21:28:53,548.548 INFO    ] 2026-10-28 21:28:53
[2026-10-28 21:28:53,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:28:53,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:28:53,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:28:54,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:28:54,100.100 INFO    ] time= 28/10/2026 21:28:54
[2026-10-28 21:28:54,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:28:54,141.141 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:28:54,265.265 INFO    ] No existing commands found in stream
[2026-10-28 21:28:59,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:28:59,303.303 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-28 21:29:03,513.513 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:29:03,516.516 INFO    ] Checking for system updates...
[2026-10-28 21:29:03,552.552 INFO    ] 200
[2026-10-28 21:29:03,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:29:03,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:29:03,611.611 INFO    ] No update needed
[2026-10-28 21:29:03,613.613 INFO    ] Checking for camera pi updates...
[2026-10-28 21:29:03,658.658 INFO    ] 200
[2026-10-28 21:29:03,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:29:03,706.706 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:29:03,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:29:03,795.795 INFO    ] No camera update needed
[2026-10-28 21:29:03,799.799 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:29:03,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:29:03,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:29:03,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:29:05,863.863 INFO    ] ================================================
[2026-10-28 21:29:05,879.879 INFO    ] Launching Daemon at Wed Oct 28 21:29:05 IST 2026
[2026-10-28 21:29:05,890.890 INFO    ] ================================================
[2026-10-28 21:29:06,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:29:06
[2026-10-28 21:29:07,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:29:07,481.481 INFO    ] Initializing speech engine...
[2026-10-28 21:29:07,492.492 INFO    ] 2026-10-28 21:29:07
[2026-10-28 21:29:07,798.798 INFO    ] 2026-10-28 21:29:07
[2026-10-28 21:29:07,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:29:08,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:29:08,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:29:08,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:29:08,317.317 INFO    ] time= 28/10/2026 21:29:08
[2026-10-28 21:29:08,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:29:08,354.354 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:29:08,510.510 INFO    ] No existing commands found in stream
[2026-10-28 21:29:13,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:29:13,539.539 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-28 21:29:17,387.387 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:29:17,390.390 INFO    ] Checking for system updates...
[2026-10-28 21:29:17,426.426 INFO    ] 200
[2026-10-28 21:29:17,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:29:17,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:29:17,483.483 INFO    ] No update needed
[2026-10-28 21:29:17,485.485 INFO    ] Checking for camera pi updates...
[2026-10-28 21:29:17,519.519 INFO    ] 200
[2026-10-28 21:29:17,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:29:17,565.565 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:29:17,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:29:17,622.622 INFO    ] No camera update needed
[2026-10-28 21:29:17,624.624 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:29:17,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:29:17,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:29:17,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:29:19,677.677 INFO    ] ================================================
[2026-10-28 21:29:19,692.692 INFO    ] Launching Daemon at Wed Oct 28 21:29:19 IST 2026
[2026-10-28 21:29:19,703.703 INFO    ] ================================================
[2026-10-28 21:29:20,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:29:20
[2026-10-28 21:29:20,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:29:21,108.108 INFO    ] Initializing speech engine...
[2026-10-28 21:29:21,123.123 INFO    ] 2026-10-28 21:29:21
[2026-10-28 21:29:21,378.378 INFO    ] 2026-10-28 21:29:21
[2026-10-28 21:29:21,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:29:21,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:29:21,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:29:21,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:29:21,963.963 INFO    ] time= 28/10/2026 21:29:21
[2026-10-28 21:29:21,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:29:21,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:29:22,111.111 INFO    ] No existing commands found in stream
[2026-10-28 21:29:27,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:29:27,134.134 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-28 21:29:29,747.747 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:29:29,750.750 INFO    ] Checking for system updates...
[2026-10-28 21:29:29,788.788 INFO    ] 200
[2026-10-28 21:29:29,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:29:29,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:29:29,850.850 INFO    ] No update needed
[2026-10-28 21:29:29,853.853 INFO    ] Checking for camera pi updates...
[2026-10-28 21:29:29,886.886 INFO    ] 200
[2026-10-28 21:29:29,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:29:29,930.930 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:29:30,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:29:30,032.032 INFO    ] No camera update needed
[2026-10-28 21:29:30,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:29:30,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:29:30,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:29:30,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:29:32,087.087 INFO    ] ================================================
[2026-10-28 21:29:32,103.103 INFO    ] Launching Daemon at Wed Oct 28 21:29:32 IST 2026
[2026-10-28 21:29:32,115.115 INFO    ] ================================================
[2026-10-28 21:29:32,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:29:32
[2026-10-28 21:29:33,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:29:33,829.829 INFO    ] Initializing speech engine...
[2026-10-28 21:29:33,839.839 INFO    ] 2026-10-28 21:29:33
[2026-10-28 21:29:34,127.127 INFO    ] 2026-10-28 21:29:34
[2026-10-28 21:29:34,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:29:34,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:29:34,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:29:34,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:29:34,825.825 INFO    ] time= 28/10/2026 21:29:34
[2026-10-28 21:29:34,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:29:34,919.919 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:29:35,105.105 INFO    ] No existing commands found in stream
[2026-10-28 21:29:40,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:29:40,125.125 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 21:29:40,812.812 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:29:40,815.815 INFO    ] Checking for system updates...
[2026-10-28 21:29:40,851.851 INFO    ] 200
[2026-10-28 21:29:40,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:29:40,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:29:40,912.912 INFO    ] No update needed
[2026-10-28 21:29:40,915.915 INFO    ] Checking for camera pi updates...
[2026-10-28 21:29:40,949.949 INFO    ] 200
[2026-10-28 21:29:40,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:29:40,996.996 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:29:41,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:29:41,086.086 INFO    ] No camera update needed
[2026-10-28 21:29:41,089.089 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:29:41,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:29:41,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:29:41,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:29:43,141.141 INFO    ] ================================================
[2026-10-28 21:29:43,156.156 INFO    ] Launching Daemon at Wed Oct 28 21:29:43 IST 2026
[2026-10-28 21:29:43,167.167 INFO    ] ================================================
[2026-10-28 21:29:43,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:29:43
[2026-10-28 21:29:44,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:29:44,585.585 INFO    ] Initializing speech engine...
[2026-10-28 21:29:44,601.601 INFO    ] 2026-10-28 21:29:44
[2026-10-28 21:29:44,856.856 INFO    ] 2026-10-28 21:29:44
[2026-10-28 21:29:44,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:29:45,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:29:45,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:29:45,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:29:45,425.425 INFO    ] time= 28/10/2026 21:29:45
[2026-10-28 21:29:45,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:29:45,449.449 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:29:45,568.568 INFO    ] No existing commands found in stream
[2026-10-28 21:29:50,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:29:50,591.591 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-10-28 21:29:53,956.956 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:29:53,959.959 INFO    ] Checking for system updates...
[2026-10-28 21:29:53,998.998 INFO    ] 200
[2026-10-28 21:29:54,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:29:54,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:29:54,061.061 INFO    ] No update needed
[2026-10-28 21:29:54,063.063 INFO    ] Checking for camera pi updates...
[2026-10-28 21:29:54,102.102 INFO    ] 200
[2026-10-28 21:29:54,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:29:54,149.149 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:29:54,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:29:54,245.245 INFO    ] No camera update needed
[2026-10-28 21:29:54,247.247 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:29:54,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:29:54,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:29:54,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:29:56,300.300 INFO    ] ================================================
[2026-10-28 21:29:56,315.315 INFO    ] Launching Daemon at Wed Oct 28 21:29:56 IST 2026
[2026-10-28 21:29:56,325.325 INFO    ] ================================================
[2026-10-28 21:29:56,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:29:56
[2026-10-28 21:29:57,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:29:57,734.734 INFO    ] Initializing speech engine...
[2026-10-28 21:29:57,750.750 INFO    ] 2026-10-28 21:29:57
[2026-10-28 21:29:58,003.003 INFO    ] 2026-10-28 21:29:57
[2026-10-28 21:29:58,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:29:58,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:29:58,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:29:58,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:29:58,558.558 INFO    ] time= 28/10/2026 21:29:58
[2026-10-28 21:29:58,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:29:58,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:29:58,711.711 INFO    ] No existing commands found in stream
[2026-10-28 21:30:03,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:30:03,738.738 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 21:30:08,544.544 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:30:08,547.547 INFO    ] Checking for system updates...
[2026-10-28 21:30:08,584.584 INFO    ] 200
[2026-10-28 21:30:08,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:30:08,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:30:08,642.642 INFO    ] No update needed
[2026-10-28 21:30:08,645.645 INFO    ] Checking for camera pi updates...
[2026-10-28 21:30:08,679.679 INFO    ] 200
[2026-10-28 21:30:08,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:30:08,722.722 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:30:08,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:30:08,816.816 INFO    ] No camera update needed
[2026-10-28 21:30:08,819.819 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:30:08,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:30:08,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:30:08,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:30:10,875.875 INFO    ] ================================================
[2026-10-28 21:30:10,890.890 INFO    ] Launching Daemon at Wed Oct 28 21:30:10 IST 2026
[2026-10-28 21:30:10,901.901 INFO    ] ================================================
[2026-10-28 21:30:11,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:30:11
[2026-10-28 21:30:12,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:30:12,308.308 INFO    ] Initializing speech engine...
[2026-10-28 21:30:12,332.332 INFO    ] 2026-10-28 21:30:12
[2026-10-28 21:30:12,603.603 INFO    ] 2026-10-28 21:30:12
[2026-10-28 21:30:12,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:30:12,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:30:12,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:30:13,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:30:13,208.208 INFO    ] time= 28/10/2026 21:30:13
[2026-10-28 21:30:13,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:30:13,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:30:13,383.383 INFO    ] No existing commands found in stream
[2026-10-28 21:30:18,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:30:18,416.416 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-10-28 21:30:19,546.546 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:30:19,549.549 INFO    ] Checking for system updates...
[2026-10-28 21:30:19,589.589 INFO    ] 200
[2026-10-28 21:30:19,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:30:19,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:30:19,652.652 INFO    ] No update needed
[2026-10-28 21:30:19,654.654 INFO    ] Checking for camera pi updates...
[2026-10-28 21:30:19,688.688 INFO    ] 200
[2026-10-28 21:30:19,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:30:19,734.734 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:30:19,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:30:19,816.816 INFO    ] No camera update needed
[2026-10-28 21:30:19,819.819 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:30:19,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:30:19,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:30:19,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:30:21,872.872 INFO    ] ================================================
[2026-10-28 21:30:21,887.887 INFO    ] Launching Daemon at Wed Oct 28 21:30:21 IST 2026
[2026-10-28 21:30:21,898.898 INFO    ] ================================================
[2026-10-28 21:30:22,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:30:22
[2026-10-28 21:30:23,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:30:23,462.462 INFO    ] Initializing speech engine...
[2026-10-28 21:30:23,472.472 INFO    ] 2026-10-28 21:30:23
[2026-10-28 21:30:23,720.720 INFO    ] 2026-10-28 21:30:23
[2026-10-28 21:30:23,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:30:24,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:30:24,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:30:24,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:30:24,307.307 INFO    ] time= 28/10/2026 21:30:24
[2026-10-28 21:30:24,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:30:24,335.335 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:30:24,490.490 INFO    ] No existing commands found in stream
[2026-10-28 21:30:29,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:30:29,519.519 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-28 21:30:30,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:30:30,251.251 INFO    ] Checking for system updates...
[2026-10-28 21:30:30,289.289 INFO    ] 200
[2026-10-28 21:30:30,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:30:30,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:30:30,349.349 INFO    ] No update needed
[2026-10-28 21:30:30,351.351 INFO    ] Checking for camera pi updates...
[2026-10-28 21:30:30,389.389 INFO    ] 200
[2026-10-28 21:30:30,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:30:30,432.432 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:30:30,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:30:30,514.514 INFO    ] No camera update needed
[2026-10-28 21:30:30,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:30:30,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:30:30,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:30:30,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:30:32,572.572 INFO    ] ================================================
[2026-10-28 21:30:32,589.589 INFO    ] Launching Daemon at Wed Oct 28 21:30:32 IST 2026
[2026-10-28 21:30:32,601.601 INFO    ] ================================================
[2026-10-28 21:30:33,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:30:33
[2026-10-28 21:30:33,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:30:34,177.177 INFO    ] Initializing speech engine...
[2026-10-28 21:30:34,200.200 INFO    ] 2026-10-28 21:30:34
[2026-10-28 21:30:34,459.459 INFO    ] 2026-10-28 21:30:34
[2026-10-28 21:30:34,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:30:34,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:30:34,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:30:35,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:30:35,026.026 INFO    ] time= 28/10/2026 21:30:35
[2026-10-28 21:30:35,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:30:35,056.056 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:30:35,182.182 INFO    ] No existing commands found in stream
[2026-10-28 21:30:40,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:30:40,205.205 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-28 21:30:42,066.066 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:30:42,069.069 INFO    ] Checking for system updates...
[2026-10-28 21:30:42,107.107 INFO    ] 200
[2026-10-28 21:30:42,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:30:42,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:30:42,165.165 INFO    ] No update needed
[2026-10-28 21:30:42,168.168 INFO    ] Checking for camera pi updates...
[2026-10-28 21:30:42,201.201 INFO    ] 200
[2026-10-28 21:30:42,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:30:42,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:30:42,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:30:42,330.330 INFO    ] No camera update needed
[2026-10-28 21:30:42,332.332 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:30:42,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:30:42,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:30:42,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:30:44,387.387 INFO    ] ================================================
[2026-10-28 21:30:44,403.403 INFO    ] Launching Daemon at Wed Oct 28 21:30:44 IST 2026
[2026-10-28 21:30:44,414.414 INFO    ] ================================================
[2026-10-28 21:30:45,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:30:44
[2026-10-28 21:30:45,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:30:45,880.880 INFO    ] Initializing speech engine...
[2026-10-28 21:30:45,889.889 INFO    ] 2026-10-28 21:30:45
[2026-10-28 21:30:46,140.140 INFO    ] 2026-10-28 21:30:46
[2026-10-28 21:30:46,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:30:46,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:30:46,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:30:46,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:30:46,697.697 INFO    ] time= 28/10/2026 21:30:46
[2026-10-28 21:30:46,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:30:46,744.744 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:30:46,885.885 INFO    ] No existing commands found in stream
[2026-10-28 21:30:51,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:30:51,913.913 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-28 21:30:55,672.672 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:30:55,674.674 INFO    ] Checking for system updates...
[2026-10-28 21:30:55,714.714 INFO    ] 200
[2026-10-28 21:30:55,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:30:55,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:30:55,771.771 INFO    ] No update needed
[2026-10-28 21:30:55,773.773 INFO    ] Checking for camera pi updates...
[2026-10-28 21:30:55,810.810 INFO    ] 200
[2026-10-28 21:30:55,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:30:55,854.854 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:30:55,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:30:55,944.944 INFO    ] No camera update needed
[2026-10-28 21:30:55,947.947 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:30:55,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:30:55,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:30:55,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:30:58,999.999 INFO    ] ================================================
[2026-10-28 21:30:58,015.015 INFO    ] Launching Daemon at Wed Oct 28 21:30:58 IST 2026
[2026-10-28 21:30:58,026.026 INFO    ] ================================================
[2026-10-28 21:30:58,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:30:58
[2026-10-28 21:30:59,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:30:59,676.676 INFO    ] Initializing speech engine...
[2026-10-28 21:30:59,690.690 INFO    ] 2026-10-28 21:30:59
[2026-10-28 21:31:00,007.007 INFO    ] 2026-10-28 21:30:59
[2026-10-28 21:31:00,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:31:00,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:31:00,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:31:00,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:31:00,693.693 INFO    ] time= 28/10/2026 21:31:00
[2026-10-28 21:31:00,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:31:00,794.794 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:31:00,973.973 INFO    ] No existing commands found in stream
[2026-10-28 21:31:05,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:31:05,998.998 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 21:31:09,239.239 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:31:09,242.242 INFO    ] Checking for system updates...
[2026-10-28 21:31:09,281.281 INFO    ] 200
[2026-10-28 21:31:09,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:31:09,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:31:09,348.348 INFO    ] No update needed
[2026-10-28 21:31:09,351.351 INFO    ] Checking for camera pi updates...
[2026-10-28 21:31:09,388.388 INFO    ] 200
[2026-10-28 21:31:09,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:31:09,431.431 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:31:09,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:31:09,519.519 INFO    ] No camera update needed
[2026-10-28 21:31:09,521.521 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:31:09,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:31:09,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:31:09,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:31:11,577.577 INFO    ] ================================================
[2026-10-28 21:31:11,592.592 INFO    ] Launching Daemon at Wed Oct 28 21:31:11 IST 2026
[2026-10-28 21:31:11,603.603 INFO    ] ================================================
[2026-10-28 21:31:12,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:31:12
[2026-10-28 21:31:12,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:31:13,162.162 INFO    ] Initializing speech engine...
[2026-10-28 21:31:13,168.168 INFO    ] 2026-10-28 21:31:13
[2026-10-28 21:31:13,450.450 INFO    ] 2026-10-28 21:31:13
[2026-10-28 21:31:13,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:31:13,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:31:13,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:31:14,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:31:14,103.103 INFO    ] time= 28/10/2026 21:31:14
[2026-10-28 21:31:14,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:31:14,203.203 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:31:14,350.350 INFO    ] No existing commands found in stream
[2026-10-28 21:31:19,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:31:19,384.384 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-28 21:31:23,828.828 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:31:23,831.831 INFO    ] Checking for system updates...
[2026-10-28 21:31:23,867.867 INFO    ] 200
[2026-10-28 21:31:23,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:31:23,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:31:23,927.927 INFO    ] No update needed
[2026-10-28 21:31:23,929.929 INFO    ] Checking for camera pi updates...
[2026-10-28 21:31:23,964.964 INFO    ] 200
[2026-10-28 21:31:23,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:31:24,007.007 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:31:24,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:31:24,119.119 INFO    ] No camera update needed
[2026-10-28 21:31:24,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:31:24,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:31:24,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:31:24,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:31:26,175.175 INFO    ] ================================================
[2026-10-28 21:31:26,190.190 INFO    ] Launching Daemon at Wed Oct 28 21:31:26 IST 2026
[2026-10-28 21:31:26,201.201 INFO    ] ================================================
[2026-10-28 21:31:26,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:31:26
[2026-10-28 21:31:27,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:31:27,599.599 INFO    ] Initializing speech engine...
[2026-10-28 21:31:27,622.622 INFO    ] 2026-10-28 21:31:27
[2026-10-28 21:31:27,877.877 INFO    ] 2026-10-28 21:31:27
[2026-10-28 21:31:27,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:31:28,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:31:28,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:31:28,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:31:28,440.440 INFO    ] time= 28/10/2026 21:31:28
[2026-10-28 21:31:28,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:31:28,461.461 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:31:28,602.602 INFO    ] No existing commands found in stream
[2026-10-28 21:31:33,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:31:33,633.633 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-28 21:31:39,705.705 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:31:39,707.707 INFO    ] Checking for system updates...
[2026-10-28 21:31:39,743.743 INFO    ] 200
[2026-10-28 21:31:39,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:31:39,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:31:39,805.805 INFO    ] No update needed
[2026-10-28 21:31:39,807.807 INFO    ] Checking for camera pi updates...
[2026-10-28 21:31:39,840.840 INFO    ] 200
[2026-10-28 21:31:39,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:31:39,883.883 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:31:39,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:31:39,971.971 INFO    ] No camera update needed
[2026-10-28 21:31:39,974.974 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:31:39,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:31:39,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:31:39,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:31:42,028.028 INFO    ] ================================================
[2026-10-28 21:31:42,043.043 INFO    ] Launching Daemon at Wed Oct 28 21:31:42 IST 2026
[2026-10-28 21:31:42,054.054 INFO    ] ================================================
[2026-10-28 21:31:42,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:31:42
[2026-10-28 21:31:43,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:31:43,637.637 INFO    ] Initializing speech engine...
[2026-10-28 21:31:43,644.644 INFO    ] 2026-10-28 21:31:43
[2026-10-28 21:31:43,929.929 INFO    ] 2026-10-28 21:31:43
[2026-10-28 21:31:43,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:31:44,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:31:44,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:31:44,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:31:44,547.547 INFO    ] time= 28/10/2026 21:31:44
[2026-10-28 21:31:44,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:31:44,677.677 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:31:44,846.846 INFO    ] No existing commands found in stream
[2026-10-28 21:31:49,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:31:49,875.875 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-10-28 21:31:51,307.307 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:31:51,309.309 INFO    ] Checking for system updates...
[2026-10-28 21:31:51,346.346 INFO    ] 200
[2026-10-28 21:31:51,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:31:51,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:31:51,406.406 INFO    ] No update needed
[2026-10-28 21:31:51,409.409 INFO    ] Checking for camera pi updates...
[2026-10-28 21:31:51,446.446 INFO    ] 200
[2026-10-28 21:31:51,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:31:51,488.488 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:31:51,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:31:51,570.570 INFO    ] No camera update needed
[2026-10-28 21:31:51,572.572 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:31:51,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:31:51,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:31:51,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:31:53,635.635 INFO    ] ================================================
[2026-10-28 21:31:53,650.650 INFO    ] Launching Daemon at Wed Oct 28 21:31:53 IST 2026
[2026-10-28 21:31:53,661.661 INFO    ] ================================================
[2026-10-28 21:31:54,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:31:54
[2026-10-28 21:31:54,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:31:55,244.244 INFO    ] Initializing speech engine...
[2026-10-28 21:31:55,258.258 INFO    ] 2026-10-28 21:31:55
[2026-10-28 21:31:55,532.532 INFO    ] 2026-10-28 21:31:55
[2026-10-28 21:31:55,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:31:55,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:31:55,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:31:56,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:31:56,114.114 INFO    ] time= 28/10/2026 21:31:56
[2026-10-28 21:31:56,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:31:56,192.192 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:31:56,316.316 INFO    ] No existing commands found in stream
[2026-10-28 21:32:01,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:32:01,343.343 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-10-28 21:32:04,852.852 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:32:04,855.855 INFO    ] Checking for system updates...
[2026-10-28 21:32:04,892.892 INFO    ] 200
[2026-10-28 21:32:04,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:32:04,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:32:04,953.953 INFO    ] No update needed
[2026-10-28 21:32:04,956.956 INFO    ] Checking for camera pi updates...
[2026-10-28 21:32:04,990.990 INFO    ] 200
[2026-10-28 21:32:04,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:32:05,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:32:05,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:32:05,222.222 INFO    ] No camera update needed
[2026-10-28 21:32:05,225.225 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:32:05,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:32:05,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:32:05,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:32:07,277.277 INFO    ] ================================================
[2026-10-28 21:32:07,292.292 INFO    ] Launching Daemon at Wed Oct 28 21:32:07 IST 2026
[2026-10-28 21:32:07,302.302 INFO    ] ================================================
[2026-10-28 21:32:07,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:32:07
[2026-10-28 21:32:08,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:32:08,741.741 INFO    ] Initializing speech engine...
[2026-10-28 21:32:08,751.751 INFO    ] 2026-10-28 21:32:08
[2026-10-28 21:32:08,997.997 INFO    ] 2026-10-28 21:32:08
[2026-10-28 21:32:09,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:32:09,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:32:09,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:32:09,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:32:09,557.557 INFO    ] time= 28/10/2026 21:32:09
[2026-10-28 21:32:09,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:32:09,603.603 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:32:09,730.730 INFO    ] No existing commands found in stream
[2026-10-28 21:32:14,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:32:14,763.763 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-28 21:32:16,306.306 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:32:16,309.309 INFO    ] Checking for system updates...
[2026-10-28 21:32:16,350.350 INFO    ] 200
[2026-10-28 21:32:16,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:32:16,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:32:16,409.409 INFO    ] No update needed
[2026-10-28 21:32:16,412.412 INFO    ] Checking for camera pi updates...
[2026-10-28 21:32:16,446.446 INFO    ] 200
[2026-10-28 21:32:16,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:32:16,489.489 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:32:16,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:32:16,615.615 INFO    ] No camera update needed
[2026-10-28 21:32:16,617.617 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:32:16,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:32:16,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:32:16,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:32:18,673.673 INFO    ] ================================================
[2026-10-28 21:32:18,688.688 INFO    ] Launching Daemon at Wed Oct 28 21:32:18 IST 2026
[2026-10-28 21:32:18,699.699 INFO    ] ================================================
[2026-10-28 21:32:19,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:32:19
[2026-10-28 21:32:19,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:32:20,128.128 INFO    ] Initializing speech engine...
[2026-10-28 21:32:20,137.137 INFO    ] 2026-10-28 21:32:20
[2026-10-28 21:32:20,427.427 INFO    ] 2026-10-28 21:32:20
[2026-10-28 21:32:20,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:32:20,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:32:20,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:32:21,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:32:21,050.050 INFO    ] time= 28/10/2026 21:32:21
[2026-10-28 21:32:21,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:32:21,081.081 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:32:21,235.235 INFO    ] No existing commands found in stream
[2026-10-28 21:32:26,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:32:26,260.260 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 21:32:29,848.848 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:32:29,850.850 INFO    ] Checking for system updates...
[2026-10-28 21:32:29,886.886 INFO    ] 200
[2026-10-28 21:32:29,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:32:29,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:32:29,948.948 INFO    ] No update needed
[2026-10-28 21:32:29,950.950 INFO    ] Checking for camera pi updates...
[2026-10-28 21:32:29,984.984 INFO    ] 200
[2026-10-28 21:32:29,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:32:30,026.026 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:32:30,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:32:30,116.116 INFO    ] No camera update needed
[2026-10-28 21:32:30,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:32:30,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:32:30,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:32:30,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:32:32,172.172 INFO    ] ================================================
[2026-10-28 21:32:32,189.189 INFO    ] Launching Daemon at Wed Oct 28 21:32:32 IST 2026
[2026-10-28 21:32:32,200.200 INFO    ] ================================================
[2026-10-28 21:32:32,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:32:32
[2026-10-28 21:32:33,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:32:33,655.655 INFO    ] Initializing speech engine...
[2026-10-28 21:32:33,667.667 INFO    ] 2026-10-28 21:32:33
[2026-10-28 21:32:33,953.953 INFO    ] 2026-10-28 21:32:33
[2026-10-28 21:32:34,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:32:34,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:32:34,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:32:34,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:32:34,518.518 INFO    ] time= 28/10/2026 21:32:34
[2026-10-28 21:32:34,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:32:34,571.571 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:32:34,755.755 INFO    ] No existing commands found in stream
[2026-10-28 21:32:39,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:32:39,790.790 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-28 21:32:40,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:32:40,575.575 INFO    ] Checking for system updates...
[2026-10-28 21:32:40,611.611 INFO    ] 200
[2026-10-28 21:32:40,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:32:40,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:32:40,671.671 INFO    ] No update needed
[2026-10-28 21:32:40,674.674 INFO    ] Checking for camera pi updates...
[2026-10-28 21:32:40,708.708 INFO    ] 200
[2026-10-28 21:32:40,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:32:40,752.752 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:32:40,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:32:40,837.837 INFO    ] No camera update needed
[2026-10-28 21:32:40,840.840 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:32:40,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:32:40,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:32:40,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:32:42,898.898 INFO    ] ================================================
[2026-10-28 21:32:42,913.913 INFO    ] Launching Daemon at Wed Oct 28 21:32:42 IST 2026
[2026-10-28 21:32:42,923.923 INFO    ] ================================================
[2026-10-28 21:32:43,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:32:43
[2026-10-28 21:32:44,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:32:44,432.432 INFO    ] Initializing speech engine...
[2026-10-28 21:32:44,444.444 INFO    ] 2026-10-28 21:32:44
[2026-10-28 21:32:44,727.727 INFO    ] 2026-10-28 21:32:44
[2026-10-28 21:32:44,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:32:45,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:32:45,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:32:45,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:32:45,346.346 INFO    ] time= 28/10/2026 21:32:45
[2026-10-28 21:32:45,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:32:45,363.363 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:32:45,518.518 INFO    ] No existing commands found in stream
[2026-10-28 21:32:50,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:32:50,551.551 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 21:32:54,048.048 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:32:54,051.051 INFO    ] Checking for system updates...
[2026-10-28 21:32:54,088.088 INFO    ] 200
[2026-10-28 21:32:54,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:32:54,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:32:54,147.147 INFO    ] No update needed
[2026-10-28 21:32:54,149.149 INFO    ] Checking for camera pi updates...
[2026-10-28 21:32:54,183.183 INFO    ] 200
[2026-10-28 21:32:54,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:32:54,226.226 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:32:54,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:32:54,295.295 INFO    ] No camera update needed
[2026-10-28 21:32:54,298.298 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:32:54,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:32:54,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:32:54,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:32:56,352.352 INFO    ] ================================================
[2026-10-28 21:32:56,367.367 INFO    ] Launching Daemon at Wed Oct 28 21:32:56 IST 2026
[2026-10-28 21:32:56,378.378 INFO    ] ================================================
[2026-10-28 21:32:56,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:32:56
[2026-10-28 21:32:57,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:32:57,796.796 INFO    ] Initializing speech engine...
[2026-10-28 21:32:57,805.805 INFO    ] 2026-10-28 21:32:57
[2026-10-28 21:32:58,054.054 INFO    ] 2026-10-28 21:32:58
[2026-10-28 21:32:58,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:32:58,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:32:58,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:32:58,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:32:58,609.609 INFO    ] time= 28/10/2026 21:32:58
[2026-10-28 21:32:58,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:32:58,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:32:58,781.781 INFO    ] No existing commands found in stream
[2026-10-28 21:33:03,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:33:03,815.815 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-28 21:33:05,623.623 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:33:05,626.626 INFO    ] Checking for system updates...
[2026-10-28 21:33:05,662.662 INFO    ] 200
[2026-10-28 21:33:05,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:33:05,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:33:05,726.726 INFO    ] No update needed
[2026-10-28 21:33:05,728.728 INFO    ] Checking for camera pi updates...
[2026-10-28 21:33:05,761.761 INFO    ] 200
[2026-10-28 21:33:05,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:33:05,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:33:05,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:33:05,887.887 INFO    ] No camera update needed
[2026-10-28 21:33:05,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:33:05,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:33:05,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:33:05,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:33:07,943.943 INFO    ] ================================================
[2026-10-28 21:33:07,958.958 INFO    ] Launching Daemon at Wed Oct 28 21:33:07 IST 2026
[2026-10-28 21:33:07,969.969 INFO    ] ================================================
[2026-10-28 21:33:08,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:33:08
[2026-10-28 21:33:09,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:33:09,468.468 INFO    ] Initializing speech engine...
[2026-10-28 21:33:09,477.477 INFO    ] 2026-10-28 21:33:09
[2026-10-28 21:33:09,768.768 INFO    ] 2026-10-28 21:33:09
[2026-10-28 21:33:09,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:33:10,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:33:10,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:33:10,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:33:10,509.509 INFO    ] time= 28/10/2026 21:33:10
[2026-10-28 21:33:10,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:33:10,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:33:10,748.748 INFO    ] No existing commands found in stream
[2026-10-28 21:33:15,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:33:15,762.762 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 21:33:18,626.626 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:33:18,628.628 INFO    ] Checking for system updates...
[2026-10-28 21:33:18,665.665 INFO    ] 200
[2026-10-28 21:33:18,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:33:18,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:33:18,730.730 INFO    ] No update needed
[2026-10-28 21:33:18,732.732 INFO    ] Checking for camera pi updates...
[2026-10-28 21:33:18,766.766 INFO    ] 200
[2026-10-28 21:33:18,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:33:18,810.810 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:33:18,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:33:18,892.892 INFO    ] No camera update needed
[2026-10-28 21:33:18,894.894 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:33:18,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:33:18,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:33:18,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:33:20,947.947 INFO    ] ================================================
[2026-10-28 21:33:20,962.962 INFO    ] Launching Daemon at Wed Oct 28 21:33:20 IST 2026
[2026-10-28 21:33:20,973.973 INFO    ] ================================================
[2026-10-28 21:33:21,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:33:21
[2026-10-28 21:33:22,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:33:22,451.451 INFO    ] Initializing speech engine...
[2026-10-28 21:33:22,461.461 INFO    ] 2026-10-28 21:33:22
[2026-10-28 21:33:22,720.720 INFO    ] 2026-10-28 21:33:22
[2026-10-28 21:33:22,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:33:23,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:33:23,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:33:23,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:33:23,265.265 INFO    ] time= 28/10/2026 21:33:23
[2026-10-28 21:33:23,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:33:23,289.289 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:33:23,428.428 INFO    ] No existing commands found in stream
[2026-10-28 21:33:28,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:33:28,466.466 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-28 21:33:29,392.392 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:33:29,394.394 INFO    ] Checking for system updates...
[2026-10-28 21:33:29,431.431 INFO    ] 200
[2026-10-28 21:33:29,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:33:29,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:33:29,489.489 INFO    ] No update needed
[2026-10-28 21:33:29,491.491 INFO    ] Checking for camera pi updates...
[2026-10-28 21:33:29,525.525 INFO    ] 200
[2026-10-28 21:33:29,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:33:29,572.572 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:33:29,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:33:29,655.655 INFO    ] No camera update needed
[2026-10-28 21:33:29,657.657 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:33:29,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:33:29,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:33:29,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:33:31,712.712 INFO    ] ================================================
[2026-10-28 21:33:31,728.728 INFO    ] Launching Daemon at Wed Oct 28 21:33:31 IST 2026
[2026-10-28 21:33:31,738.738 INFO    ] ================================================
[2026-10-28 21:33:32,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:33:32
[2026-10-28 21:33:32,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:33:33,222.222 INFO    ] Initializing speech engine...
[2026-10-28 21:33:33,242.242 INFO    ] 2026-10-28 21:33:33
[2026-10-28 21:33:33,526.526 INFO    ] 2026-10-28 21:33:33
[2026-10-28 21:33:33,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:33:33,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:33:33,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:33:34,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:33:34,112.112 INFO    ] time= 28/10/2026 21:33:34
[2026-10-28 21:33:34,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:33:34,147.147 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:33:34,278.278 INFO    ] No existing commands found in stream
[2026-10-28 21:33:39,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:33:39,299.299 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 21:33:41,527.527 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:33:41,530.530 INFO    ] Checking for system updates...
[2026-10-28 21:33:41,569.569 INFO    ] 200
[2026-10-28 21:33:41,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:33:41,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:33:41,627.627 INFO    ] No update needed
[2026-10-28 21:33:41,629.629 INFO    ] Checking for camera pi updates...
[2026-10-28 21:33:41,664.664 INFO    ] 200
[2026-10-28 21:33:41,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:33:41,710.710 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:33:41,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:33:41,816.816 INFO    ] No camera update needed
[2026-10-28 21:33:41,818.818 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:33:41,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:33:41,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:33:41,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:33:43,873.873 INFO    ] ================================================
[2026-10-28 21:33:43,889.889 INFO    ] Launching Daemon at Wed Oct 28 21:33:43 IST 2026
[2026-10-28 21:33:43,901.901 INFO    ] ================================================
[2026-10-28 21:33:44,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:33:44
[2026-10-28 21:33:45,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:33:45,373.373 INFO    ] Initializing speech engine...
[2026-10-28 21:33:45,380.380 INFO    ] 2026-10-28 21:33:45
[2026-10-28 21:33:45,629.629 INFO    ] 2026-10-28 21:33:45
[2026-10-28 21:33:45,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:33:46,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:33:46,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:33:46,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:33:46,355.355 INFO    ] time= 28/10/2026 21:33:46
[2026-10-28 21:33:46,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:33:46,447.447 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:33:46,594.594 INFO    ] No existing commands found in stream
[2026-10-28 21:33:51,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:33:51,625.625 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-28 21:33:53,606.606 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:33:53,609.609 INFO    ] Checking for system updates...
[2026-10-28 21:33:53,658.658 INFO    ] 200
[2026-10-28 21:33:53,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:33:53,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:33:53,724.724 INFO    ] No update needed
[2026-10-28 21:33:53,727.727 INFO    ] Checking for camera pi updates...
[2026-10-28 21:33:53,764.764 INFO    ] 200
[2026-10-28 21:33:53,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:33:53,822.822 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:33:53,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:33:53,882.882 INFO    ] No camera update needed
[2026-10-28 21:33:53,885.885 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:33:53,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:33:53,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:33:53,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:33:55,944.944 INFO    ] ================================================
[2026-10-28 21:33:55,960.960 INFO    ] Launching Daemon at Wed Oct 28 21:33:55 IST 2026
[2026-10-28 21:33:55,972.972 INFO    ] ================================================
[2026-10-28 21:33:56,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:33:56
[2026-10-28 21:33:57,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:33:57,376.376 INFO    ] Initializing speech engine...
[2026-10-28 21:33:57,382.382 INFO    ] 2026-10-28 21:33:57
[2026-10-28 21:33:57,686.686 INFO    ] 2026-10-28 21:33:57
[2026-10-28 21:33:57,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:33:57,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:33:58,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:33:58,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:33:58,203.203 INFO    ] time= 28/10/2026 21:33:58
[2026-10-28 21:33:58,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:33:58,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:33:58,441.441 INFO    ] No existing commands found in stream
[2026-10-28 21:34:03,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:34:03,475.475 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 21:34:04,196.196 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:34:04,198.198 INFO    ] Checking for system updates...
[2026-10-28 21:34:04,234.234 INFO    ] 200
[2026-10-28 21:34:04,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:34:04,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:34:04,291.291 INFO    ] No update needed
[2026-10-28 21:34:04,293.293 INFO    ] Checking for camera pi updates...
[2026-10-28 21:34:04,327.327 INFO    ] 200
[2026-10-28 21:34:04,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:34:04,369.369 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:34:04,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:34:04,454.454 INFO    ] No camera update needed
[2026-10-28 21:34:04,456.456 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:34:04,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:34:04,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:34:04,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:34:06,510.510 INFO    ] ================================================
[2026-10-28 21:34:06,526.526 INFO    ] Launching Daemon at Wed Oct 28 21:34:06 IST 2026
[2026-10-28 21:34:06,537.537 INFO    ] ================================================
[2026-10-28 21:34:07,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:34:07
[2026-10-28 21:34:07,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:34:07,961.961 INFO    ] Initializing speech engine...
[2026-10-28 21:34:07,970.970 INFO    ] 2026-10-28 21:34:07
[2026-10-28 21:34:08,217.217 INFO    ] 2026-10-28 21:34:08
[2026-10-28 21:34:08,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:34:08,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:34:08,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:34:08,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:34:08,772.772 INFO    ] time= 28/10/2026 21:34:08
[2026-10-28 21:34:08,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:34:08,807.807 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:34:08,995.995 INFO    ] No existing commands found in stream
[2026-10-28 21:34:14,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:34:14,028.028 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 21:34:14,748.748 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:34:14,750.750 INFO    ] Checking for system updates...
[2026-10-28 21:34:14,787.787 INFO    ] 200
[2026-10-28 21:34:14,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:34:14,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:34:14,846.846 INFO    ] No update needed
[2026-10-28 21:34:14,848.848 INFO    ] Checking for camera pi updates...
[2026-10-28 21:34:14,883.883 INFO    ] 200
[2026-10-28 21:34:14,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:34:14,932.932 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:34:15,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:34:15,113.113 INFO    ] No camera update needed
[2026-10-28 21:34:15,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:34:15,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:34:15,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:34:15,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:34:17,176.176 INFO    ] ================================================
[2026-10-28 21:34:17,191.191 INFO    ] Launching Daemon at Wed Oct 28 21:34:17 IST 2026
[2026-10-28 21:34:17,203.203 INFO    ] ================================================
[2026-10-28 21:34:17,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:34:17
[2026-10-28 21:34:18,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:34:18,728.728 INFO    ] Initializing speech engine...
[2026-10-28 21:34:18,735.735 INFO    ] 2026-10-28 21:34:18
[2026-10-28 21:34:19,043.043 INFO    ] 2026-10-28 21:34:19
[2026-10-28 21:34:19,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:34:19,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:34:19,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:34:19,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:34:19,758.758 INFO    ] time= 28/10/2026 21:34:19
[2026-10-28 21:34:19,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:34:19,848.848 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:34:20,004.004 INFO    ] No existing commands found in stream
[2026-10-28 21:34:25,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:34:25,030.030 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 21:34:25,764.764 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:34:25,767.767 INFO    ] Checking for system updates...
[2026-10-28 21:34:25,808.808 INFO    ] 200
[2026-10-28 21:34:25,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:34:25,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:34:25,877.877 INFO    ] No update needed
[2026-10-28 21:34:25,880.880 INFO    ] Checking for camera pi updates...
[2026-10-28 21:34:25,918.918 INFO    ] 200
[2026-10-28 21:34:25,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:34:25,968.968 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:34:26,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:34:26,052.052 INFO    ] No camera update needed
[2026-10-28 21:34:26,055.055 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:34:26,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:34:26,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:34:26,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:34:28,112.112 INFO    ] ================================================
[2026-10-28 21:34:28,128.128 INFO    ] Launching Daemon at Wed Oct 28 21:34:28 IST 2026
[2026-10-28 21:34:28,139.139 INFO    ] ================================================
[2026-10-28 21:34:28,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:34:28
[2026-10-28 21:34:29,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:34:29,617.617 INFO    ] Initializing speech engine...
[2026-10-28 21:34:29,630.630 INFO    ] 2026-10-28 21:34:29
[2026-10-28 21:34:29,900.900 INFO    ] 2026-10-28 21:34:29
[2026-10-28 21:34:29,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:34:30,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:34:30,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:34:30,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:34:30,526.526 INFO    ] time= 28/10/2026 21:34:30
[2026-10-28 21:34:30,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:34:30,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:34:30,679.679 INFO    ] No existing commands found in stream
[2026-10-28 21:34:35,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:34:35,699.699 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-28 21:34:36,904.904 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:34:36,907.907 INFO    ] Checking for system updates...
[2026-10-28 21:34:36,942.942 INFO    ] 200
[2026-10-28 21:34:36,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:34:36,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:34:37,000.000 INFO    ] No update needed
[2026-10-28 21:34:37,002.002 INFO    ] Checking for camera pi updates...
[2026-10-28 21:34:37,037.037 INFO    ] 200
[2026-10-28 21:34:37,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:34:37,079.079 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:34:37,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:34:37,161.161 INFO    ] No camera update needed
[2026-10-28 21:34:37,164.164 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:34:37,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:34:37,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:34:37,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:34:39,218.218 INFO    ] ================================================
[2026-10-28 21:34:39,234.234 INFO    ] Launching Daemon at Wed Oct 28 21:34:39 IST 2026
[2026-10-28 21:34:39,244.244 INFO    ] ================================================
[2026-10-28 21:34:39,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:34:39
[2026-10-28 21:34:40,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:34:40,879.879 INFO    ] Initializing speech engine...
[2026-10-28 21:34:40,890.890 INFO    ] 2026-10-28 21:34:40
[2026-10-28 21:34:41,197.197 INFO    ] 2026-10-28 21:34:41
[2026-10-28 21:34:41,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:34:41,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:34:41,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:34:41,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:34:41,915.915 INFO    ] time= 28/10/2026 21:34:41
[2026-10-28 21:34:41,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:34:42,008.008 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:34:42,143.143 INFO    ] No existing commands found in stream
[2026-10-28 21:34:47,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:34:47,157.157 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 21:34:49,567.567 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:34:49,570.570 INFO    ] Checking for system updates...
[2026-10-28 21:34:49,607.607 INFO    ] 200
[2026-10-28 21:34:49,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:34:49,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:34:49,666.666 INFO    ] No update needed
[2026-10-28 21:34:49,669.669 INFO    ] Checking for camera pi updates...
[2026-10-28 21:34:49,702.702 INFO    ] 200
[2026-10-28 21:34:49,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:34:49,745.745 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:34:49,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:34:49,818.818 INFO    ] No camera update needed
[2026-10-28 21:34:49,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:34:49,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:34:49,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:34:49,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:34:51,872.872 INFO    ] ================================================
[2026-10-28 21:34:51,888.888 INFO    ] Launching Daemon at Wed Oct 28 21:34:51 IST 2026
[2026-10-28 21:34:51,899.899 INFO    ] ================================================
[2026-10-28 21:34:52,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:34:52
[2026-10-28 21:34:53,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:34:53,321.321 INFO    ] Initializing speech engine...
[2026-10-28 21:34:53,331.331 INFO    ] 2026-10-28 21:34:53
[2026-10-28 21:34:53,581.581 INFO    ] 2026-10-28 21:34:53
[2026-10-28 21:34:53,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:34:53,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:34:53,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:34:54,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:34:54,154.154 INFO    ] time= 28/10/2026 21:34:54
[2026-10-28 21:34:54,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:34:54,184.184 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:34:54,335.335 INFO    ] No existing commands found in stream
[2026-10-28 21:34:59,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:34:59,363.363 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-10-28 21:35:04,030.030 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:35:04,033.033 INFO    ] Checking for system updates...
[2026-10-28 21:35:04,072.072 INFO    ] 200
[2026-10-28 21:35:04,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:35:04,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:35:04,130.130 INFO    ] No update needed
[2026-10-28 21:35:04,132.132 INFO    ] Checking for camera pi updates...
[2026-10-28 21:35:04,165.165 INFO    ] 200
[2026-10-28 21:35:04,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:35:04,209.209 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:35:04,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:35:04,311.311 INFO    ] No camera update needed
[2026-10-28 21:35:04,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:35:04,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:35:04,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:35:04,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:35:06,368.368 INFO    ] ================================================
[2026-10-28 21:35:06,383.383 INFO    ] Launching Daemon at Wed Oct 28 21:35:06 IST 2026
[2026-10-28 21:35:06,394.394 INFO    ] ================================================
[2026-10-28 21:35:07,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:35:07
[2026-10-28 21:35:07,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:35:08,050.050 INFO    ] Initializing speech engine...
[2026-10-28 21:35:08,065.065 INFO    ] 2026-10-28 21:35:08
[2026-10-28 21:35:08,322.322 INFO    ] 2026-10-28 21:35:08
[2026-10-28 21:35:08,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:35:08,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:35:08,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:35:08,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:35:08,876.876 INFO    ] time= 28/10/2026 21:35:08
[2026-10-28 21:35:08,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:35:08,900.900 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:35:09,024.024 INFO    ] No existing commands found in stream
[2026-10-28 21:35:14,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:35:14,042.042 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-10-28 21:35:18,703.703 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:35:18,706.706 INFO    ] Checking for system updates...
[2026-10-28 21:35:18,741.741 INFO    ] 200
[2026-10-28 21:35:18,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:35:18,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:35:18,799.799 INFO    ] No update needed
[2026-10-28 21:35:18,801.801 INFO    ] Checking for camera pi updates...
[2026-10-28 21:35:18,835.835 INFO    ] 200
[2026-10-28 21:35:18,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:35:18,878.878 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:35:18,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:35:18,962.962 INFO    ] No camera update needed
[2026-10-28 21:35:18,965.965 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:35:18,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:35:18,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:35:18,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:35:21,019.019 INFO    ] ================================================
[2026-10-28 21:35:21,034.034 INFO    ] Launching Daemon at Wed Oct 28 21:35:21 IST 2026
[2026-10-28 21:35:21,044.044 INFO    ] ================================================
[2026-10-28 21:35:21,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:35:21
[2026-10-28 21:35:22,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:35:22,704.704 INFO    ] Initializing speech engine...
[2026-10-28 21:35:22,713.713 INFO    ] 2026-10-28 21:35:22
[2026-10-28 21:35:22,988.988 INFO    ] 2026-10-28 21:35:22
[2026-10-28 21:35:23,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:35:23,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:35:23,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:35:23,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:35:23,599.599 INFO    ] time= 28/10/2026 21:35:23
[2026-10-28 21:35:23,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:35:23,617.617 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:35:23,752.752 INFO    ] No existing commands found in stream
[2026-10-28 21:35:28,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:35:28,786.786 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 21:35:31,185.185 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:35:31,189.189 INFO    ] Checking for system updates...
[2026-10-28 21:35:31,226.226 INFO    ] 200
[2026-10-28 21:35:31,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:35:31,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:35:31,284.284 INFO    ] No update needed
[2026-10-28 21:35:31,286.286 INFO    ] Checking for camera pi updates...
[2026-10-28 21:35:31,325.325 INFO    ] 200
[2026-10-28 21:35:31,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:35:31,382.382 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:35:31,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:35:31,479.479 INFO    ] No camera update needed
[2026-10-28 21:35:31,482.482 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:35:31,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:35:31,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:35:31,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:35:33,538.538 INFO    ] ================================================
[2026-10-28 21:35:33,553.553 INFO    ] Launching Daemon at Wed Oct 28 21:35:33 IST 2026
[2026-10-28 21:35:33,564.564 INFO    ] ================================================
[2026-10-28 21:35:34,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:35:34
[2026-10-28 21:35:34,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:35:34,995.995 INFO    ] Initializing speech engine...
[2026-10-28 21:35:35,003.003 INFO    ] 2026-10-28 21:35:34
[2026-10-28 21:35:35,254.254 INFO    ] 2026-10-28 21:35:35
[2026-10-28 21:35:35,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:35:35,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:35:35,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:35:35,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:35:35,800.800 INFO    ] time= 28/10/2026 21:35:35
[2026-10-28 21:35:35,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:35:35,831.831 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:35:35,980.980 INFO    ] No existing commands found in stream
[2026-10-28 21:35:40,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:35:40,994.994 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-10-28 21:35:42,389.389 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:35:42,392.392 INFO    ] Checking for system updates...
[2026-10-28 21:35:42,430.430 INFO    ] 200
[2026-10-28 21:35:42,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:35:42,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:35:42,488.488 INFO    ] No update needed
[2026-10-28 21:35:42,490.490 INFO    ] Checking for camera pi updates...
[2026-10-28 21:35:42,524.524 INFO    ] 200
[2026-10-28 21:35:42,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:35:42,569.569 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:35:42,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:35:42,653.653 INFO    ] No camera update needed
[2026-10-28 21:35:42,655.655 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:35:42,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:35:42,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:35:42,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:35:44,710.710 INFO    ] ================================================
[2026-10-28 21:35:44,725.725 INFO    ] Launching Daemon at Wed Oct 28 21:35:44 IST 2026
[2026-10-28 21:35:44,736.736 INFO    ] ================================================
[2026-10-28 21:35:45,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:35:45
[2026-10-28 21:35:45,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:35:46,151.151 INFO    ] Initializing speech engine...
[2026-10-28 21:35:46,158.158 INFO    ] 2026-10-28 21:35:46
[2026-10-28 21:35:46,412.412 INFO    ] 2026-10-28 21:35:46
[2026-10-28 21:35:46,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:35:46,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:35:46,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:35:46,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:35:46,979.979 INFO    ] time= 28/10/2026 21:35:46
[2026-10-28 21:35:46,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:35:47,004.004 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:35:47,139.139 INFO    ] No existing commands found in stream
[2026-10-28 21:35:52,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:35:52,164.164 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-28 21:35:56,544.544 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:35:56,546.546 INFO    ] Checking for system updates...
[2026-10-28 21:35:56,582.582 INFO    ] 200
[2026-10-28 21:35:56,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:35:56,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:35:56,640.640 INFO    ] No update needed
[2026-10-28 21:35:56,642.642 INFO    ] Checking for camera pi updates...
[2026-10-28 21:35:56,675.675 INFO    ] 200
[2026-10-28 21:35:56,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:35:56,719.719 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:35:56,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:35:56,809.809 INFO    ] No camera update needed
[2026-10-28 21:35:56,811.811 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:35:56,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:35:56,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:35:56,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:35:58,866.866 INFO    ] ================================================
[2026-10-28 21:35:58,881.881 INFO    ] Launching Daemon at Wed Oct 28 21:35:58 IST 2026
[2026-10-28 21:35:58,891.891 INFO    ] ================================================
[2026-10-28 21:35:59,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:35:59
[2026-10-28 21:36:00,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:36:00,419.419 INFO    ] Initializing speech engine...
[2026-10-28 21:36:00,427.427 INFO    ] 2026-10-28 21:36:00
[2026-10-28 21:36:00,725.725 INFO    ] 2026-10-28 21:36:00
[2026-10-28 21:36:00,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:36:00,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:36:00,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:36:01,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:36:01,240.240 INFO    ] time= 28/10/2026 21:36:01
[2026-10-28 21:36:01,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:36:01,348.348 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:36:01,504.504 INFO    ] No existing commands found in stream
[2026-10-28 21:36:06,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:36:06,535.535 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-28 21:36:10,835.835 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:36:10,837.837 INFO    ] Checking for system updates...
[2026-10-28 21:36:10,877.877 INFO    ] 200
[2026-10-28 21:36:10,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:36:10,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:36:10,935.935 INFO    ] No update needed
[2026-10-28 21:36:10,938.938 INFO    ] Checking for camera pi updates...
[2026-10-28 21:36:10,972.972 INFO    ] 200
[2026-10-28 21:36:10,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:36:11,021.021 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:36:11,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:36:11,108.108 INFO    ] No camera update needed
[2026-10-28 21:36:11,111.111 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:36:11,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:36:11,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:36:11,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:36:13,166.166 INFO    ] ================================================
[2026-10-28 21:36:13,181.181 INFO    ] Launching Daemon at Wed Oct 28 21:36:13 IST 2026
[2026-10-28 21:36:13,192.192 INFO    ] ================================================
[2026-10-28 21:36:13,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:36:13
[2026-10-28 21:36:14,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:36:14,615.615 INFO    ] Initializing speech engine...
[2026-10-28 21:36:14,624.624 INFO    ] 2026-10-28 21:36:14
[2026-10-28 21:36:14,874.874 INFO    ] 2026-10-28 21:36:14
[2026-10-28 21:36:14,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:36:15,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:36:15,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:36:15,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:36:15,441.441 INFO    ] time= 28/10/2026 21:36:15
[2026-10-28 21:36:15,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:36:15,464.464 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:36:15,602.602 INFO    ] No existing commands found in stream
[2026-10-28 21:36:20,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:36:20,629.629 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-28 21:36:22,034.034 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:36:22,037.037 INFO    ] Checking for system updates...
[2026-10-28 21:36:22,076.076 INFO    ] 200
[2026-10-28 21:36:22,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:36:22,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:36:22,133.133 INFO    ] No update needed
[2026-10-28 21:36:22,135.135 INFO    ] Checking for camera pi updates...
[2026-10-28 21:36:22,169.169 INFO    ] 200
[2026-10-28 21:36:22,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:36:22,212.212 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:36:22,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:36:22,396.396 INFO    ] No camera update needed
[2026-10-28 21:36:22,398.398 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:36:22,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:36:22,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:36:22,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:36:24,457.457 INFO    ] ================================================
[2026-10-28 21:36:24,471.471 INFO    ] Launching Daemon at Wed Oct 28 21:36:24 IST 2026
[2026-10-28 21:36:24,482.482 INFO    ] ================================================
[2026-10-28 21:36:25,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:36:25
[2026-10-28 21:36:25,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:36:25,904.904 INFO    ] Initializing speech engine...
[2026-10-28 21:36:25,910.910 INFO    ] 2026-10-28 21:36:25
[2026-10-28 21:36:26,169.169 INFO    ] 2026-10-28 21:36:26
[2026-10-28 21:36:26,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:36:26,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:36:26,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:36:26,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:36:26,780.780 INFO    ] time= 28/10/2026 21:36:26
[2026-10-28 21:36:26,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:36:26,805.805 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:36:26,958.958 INFO    ] No existing commands found in stream
[2026-10-28 21:36:31,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:36:31,978.978 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-28 21:36:34,585.585 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:36:34,587.587 INFO    ] Checking for system updates...
[2026-10-28 21:36:34,626.626 INFO    ] 200
[2026-10-28 21:36:34,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:36:34,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:36:34,684.684 INFO    ] No update needed
[2026-10-28 21:36:34,686.686 INFO    ] Checking for camera pi updates...
[2026-10-28 21:36:34,721.721 INFO    ] 200
[2026-10-28 21:36:34,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:36:34,767.767 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:36:34,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:36:34,865.865 INFO    ] No camera update needed
[2026-10-28 21:36:34,867.867 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:36:34,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:36:34,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:36:34,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:36:36,920.920 INFO    ] ================================================
[2026-10-28 21:36:36,935.935 INFO    ] Launching Daemon at Wed Oct 28 21:36:36 IST 2026
[2026-10-28 21:36:36,946.946 INFO    ] ================================================
[2026-10-28 21:36:37,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:36:37
[2026-10-28 21:36:38,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:36:38,359.359 INFO    ] Initializing speech engine...
[2026-10-28 21:36:38,368.368 INFO    ] 2026-10-28 21:36:38
[2026-10-28 21:36:38,660.660 INFO    ] 2026-10-28 21:36:38
[2026-10-28 21:36:38,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:36:38,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:36:38,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:36:39,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:36:39,282.282 INFO    ] time= 28/10/2026 21:36:39
[2026-10-28 21:36:39,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:36:39,311.311 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:36:39,450.450 INFO    ] No existing commands found in stream
[2026-10-28 21:36:44,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:36:44,474.474 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-28 21:36:45,276.276 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:36:45,279.279 INFO    ] Checking for system updates...
[2026-10-28 21:36:45,314.314 INFO    ] 200
[2026-10-28 21:36:45,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:36:45,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:36:45,371.371 INFO    ] No update needed
[2026-10-28 21:36:45,373.373 INFO    ] Checking for camera pi updates...
[2026-10-28 21:36:45,406.406 INFO    ] 200
[2026-10-28 21:36:45,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:36:45,448.448 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:36:45,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:36:45,535.535 INFO    ] No camera update needed
[2026-10-28 21:36:45,537.537 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:36:45,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:36:45,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:36:45,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:36:47,589.589 INFO    ] ================================================
[2026-10-28 21:36:47,604.604 INFO    ] Launching Daemon at Wed Oct 28 21:36:47 IST 2026
[2026-10-28 21:36:47,615.615 INFO    ] ================================================
[2026-10-28 21:36:48,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:36:48
[2026-10-28 21:36:48,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:36:49,035.035 INFO    ] Initializing speech engine...
[2026-10-28 21:36:49,044.044 INFO    ] 2026-10-28 21:36:49
[2026-10-28 21:36:49,290.290 INFO    ] 2026-10-28 21:36:49
[2026-10-28 21:36:49,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:36:49,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:36:49,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:36:49,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:36:49,845.845 INFO    ] time= 28/10/2026 21:36:49
[2026-10-28 21:36:49,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:36:49,885.885 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:36:49,977.977 INFO    ] No existing commands found in stream
[2026-10-28 21:36:54,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:36:54,989.989 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-10-28 21:36:55,675.675 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:36:55,678.678 INFO    ] Checking for system updates...
[2026-10-28 21:36:55,713.713 INFO    ] 200
[2026-10-28 21:36:55,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:36:55,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:36:55,771.771 INFO    ] No update needed
[2026-10-28 21:36:55,773.773 INFO    ] Checking for camera pi updates...
[2026-10-28 21:36:55,806.806 INFO    ] 200
[2026-10-28 21:36:55,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:36:55,853.853 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:36:55,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:36:55,940.940 INFO    ] No camera update needed
[2026-10-28 21:36:55,943.943 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:36:55,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:36:55,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:36:55,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:36:58,995.995 INFO    ] ================================================
[2026-10-28 21:36:58,010.010 INFO    ] Launching Daemon at Wed Oct 28 21:36:58 IST 2026
[2026-10-28 21:36:58,022.022 INFO    ] ================================================
[2026-10-28 21:36:58,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:36:58
[2026-10-28 21:36:59,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:36:59,476.476 INFO    ] Initializing speech engine...
[2026-10-28 21:36:59,482.482 INFO    ] 2026-10-28 21:36:59
[2026-10-28 21:36:59,740.740 INFO    ] 2026-10-28 21:36:59
[2026-10-28 21:36:59,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:37:00,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:37:00,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:37:00,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:37:00,301.301 INFO    ] time= 28/10/2026 21:37:00
[2026-10-28 21:37:00,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:37:00,326.326 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:37:00,488.488 INFO    ] No existing commands found in stream
[2026-10-28 21:37:05,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:37:05,516.516 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-28 21:37:06,825.825 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:37:06,827.827 INFO    ] Checking for system updates...
[2026-10-28 21:37:06,865.865 INFO    ] 200
[2026-10-28 21:37:06,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:37:06,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:37:06,922.922 INFO    ] No update needed
[2026-10-28 21:37:06,924.924 INFO    ] Checking for camera pi updates...
[2026-10-28 21:37:06,958.958 INFO    ] 200
[2026-10-28 21:37:06,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:37:07,004.004 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:37:07,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:37:07,101.101 INFO    ] No camera update needed
[2026-10-28 21:37:07,103.103 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:37:07,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:37:07,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:37:07,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:37:09,157.157 INFO    ] ================================================
[2026-10-28 21:37:09,173.173 INFO    ] Launching Daemon at Wed Oct 28 21:37:09 IST 2026
[2026-10-28 21:37:09,184.184 INFO    ] ================================================
[2026-10-28 21:37:09,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:37:09
[2026-10-28 21:37:10,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:37:10,641.641 INFO    ] Initializing speech engine...
[2026-10-28 21:37:10,650.650 INFO    ] 2026-10-28 21:37:10
[2026-10-28 21:37:10,909.909 INFO    ] 2026-10-28 21:37:10
[2026-10-28 21:37:10,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:37:11,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:37:11,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:37:11,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:37:11,454.454 INFO    ] time= 28/10/2026 21:37:11
[2026-10-28 21:37:11,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:37:11,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:37:11,622.622 INFO    ] No existing commands found in stream
[2026-10-28 21:37:16,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:37:16,656.656 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-28 21:37:17,582.582 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:37:17,585.585 INFO    ] Checking for system updates...
[2026-10-28 21:37:17,620.620 INFO    ] 200
[2026-10-28 21:37:17,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:37:17,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:37:17,679.679 INFO    ] No update needed
[2026-10-28 21:37:17,681.681 INFO    ] Checking for camera pi updates...
[2026-10-28 21:37:17,714.714 INFO    ] 200
[2026-10-28 21:37:17,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:37:17,761.761 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:37:17,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:37:17,844.844 INFO    ] No camera update needed
[2026-10-28 21:37:17,847.847 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:37:17,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:37:17,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:37:17,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:37:19,902.902 INFO    ] ================================================
[2026-10-28 21:37:19,917.917 INFO    ] Launching Daemon at Wed Oct 28 21:37:19 IST 2026
[2026-10-28 21:37:19,928.928 INFO    ] ================================================
[2026-10-28 21:37:20,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:37:20
[2026-10-28 21:37:21,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:37:21,533.533 INFO    ] Initializing speech engine...
[2026-10-28 21:37:21,544.544 INFO    ] 2026-10-28 21:37:21
[2026-10-28 21:37:21,814.814 INFO    ] 2026-10-28 21:37:21
[2026-10-28 21:37:21,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:37:22,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:37:22,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:37:22,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:37:22,387.387 INFO    ] time= 28/10/2026 21:37:22
[2026-10-28 21:37:22,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:37:22,428.428 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:37:22,557.557 INFO    ] No existing commands found in stream
[2026-10-28 21:37:27,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:37:27,597.597 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 21:37:31,305.305 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:37:31,308.308 INFO    ] Checking for system updates...
[2026-10-28 21:37:31,345.345 INFO    ] 200
[2026-10-28 21:37:31,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:37:31,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:37:31,403.403 INFO    ] No update needed
[2026-10-28 21:37:31,406.406 INFO    ] Checking for camera pi updates...
[2026-10-28 21:37:31,443.443 INFO    ] 200
[2026-10-28 21:37:31,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:37:31,493.493 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:37:31,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:37:31,574.574 INFO    ] No camera update needed
[2026-10-28 21:37:31,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:37:31,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:37:31,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:37:31,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:37:33,634.634 INFO    ] ================================================
[2026-10-28 21:37:33,650.650 INFO    ] Launching Daemon at Wed Oct 28 21:37:33 IST 2026
[2026-10-28 21:37:33,661.661 INFO    ] ================================================
[2026-10-28 21:37:34,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:37:34
[2026-10-28 21:37:34,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:37:35,062.062 INFO    ] Initializing speech engine...
[2026-10-28 21:37:35,070.070 INFO    ] 2026-10-28 21:37:35
[2026-10-28 21:37:35,348.348 INFO    ] 2026-10-28 21:37:35
[2026-10-28 21:37:35,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:37:35,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:37:35,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:37:35,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:37:35,913.913 INFO    ] time= 28/10/2026 21:37:35
[2026-10-28 21:37:35,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:37:35,939.939 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:37:36,072.072 INFO    ] No existing commands found in stream
[2026-10-28 21:37:41,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:37:41,098.098 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-10-28 21:37:45,548.548 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:37:45,550.550 INFO    ] Checking for system updates...
[2026-10-28 21:37:45,585.585 INFO    ] 200
[2026-10-28 21:37:45,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:37:45,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:37:45,653.653 INFO    ] No update needed
[2026-10-28 21:37:45,656.656 INFO    ] Checking for camera pi updates...
[2026-10-28 21:37:45,689.689 INFO    ] 200
[2026-10-28 21:37:45,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:37:45,734.734 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:37:45,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:37:45,819.819 INFO    ] No camera update needed
[2026-10-28 21:37:45,821.821 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:37:45,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:37:45,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:37:45,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:37:47,875.875 INFO    ] ================================================
[2026-10-28 21:37:47,891.891 INFO    ] Launching Daemon at Wed Oct 28 21:37:47 IST 2026
[2026-10-28 21:37:47,902.902 INFO    ] ================================================
[2026-10-28 21:37:48,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:37:48
[2026-10-28 21:37:49,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:37:49,502.502 INFO    ] Initializing speech engine...
[2026-10-28 21:37:49,512.512 INFO    ] 2026-10-28 21:37:49
[2026-10-28 21:37:49,786.786 INFO    ] 2026-10-28 21:37:49
[2026-10-28 21:37:49,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:37:50,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:37:50,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:37:50,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:37:50,329.329 INFO    ] time= 28/10/2026 21:37:50
[2026-10-28 21:37:50,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:37:50,377.377 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:37:50,508.508 INFO    ] No existing commands found in stream
[2026-10-28 21:37:55,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:37:55,526.526 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-28 21:37:56,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:37:56,826.826 INFO    ] Checking for system updates...
[2026-10-28 21:37:56,861.861 INFO    ] 200
[2026-10-28 21:37:56,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:37:56,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:37:56,917.917 INFO    ] No update needed
[2026-10-28 21:37:56,920.920 INFO    ] Checking for camera pi updates...
[2026-10-28 21:37:56,953.953 INFO    ] 200
[2026-10-28 21:37:56,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:37:56,995.995 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:37:57,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:37:57,096.096 INFO    ] No camera update needed
[2026-10-28 21:37:57,099.099 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:37:57,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:37:57,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:37:57,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:37:59,152.152 INFO    ] ================================================
[2026-10-28 21:37:59,167.167 INFO    ] Launching Daemon at Wed Oct 28 21:37:59 IST 2026
[2026-10-28 21:37:59,178.178 INFO    ] ================================================
[2026-10-28 21:37:59,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:37:59
[2026-10-28 21:38:00,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:38:00,637.637 INFO    ] Initializing speech engine...
[2026-10-28 21:38:00,645.645 INFO    ] 2026-10-28 21:38:00
[2026-10-28 21:38:00,905.905 INFO    ] 2026-10-28 21:38:00
[2026-10-28 21:38:00,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:38:01,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:38:01,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:38:01,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:38:01,451.451 INFO    ] time= 28/10/2026 21:38:01
[2026-10-28 21:38:01,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:38:01,498.498 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:38:01,614.614 INFO    ] No existing commands found in stream
[2026-10-28 21:38:06,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:38:06,647.647 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-28 21:38:09,306.306 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:38:09,309.309 INFO    ] Checking for system updates...
[2026-10-28 21:38:09,344.344 INFO    ] 200
[2026-10-28 21:38:09,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:38:09,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:38:09,401.401 INFO    ] No update needed
[2026-10-28 21:38:09,404.404 INFO    ] Checking for camera pi updates...
[2026-10-28 21:38:09,437.437 INFO    ] 200
[2026-10-28 21:38:09,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:38:09,485.485 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:38:09,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:38:09,587.587 INFO    ] No camera update needed
[2026-10-28 21:38:09,589.589 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:38:09,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:38:09,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:38:09,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:38:11,644.644 INFO    ] ================================================
[2026-10-28 21:38:11,660.660 INFO    ] Launching Daemon at Wed Oct 28 21:38:11 IST 2026
[2026-10-28 21:38:11,671.671 INFO    ] ================================================
[2026-10-28 21:38:12,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:38:12
[2026-10-28 21:38:13,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:38:13,307.307 INFO    ] Initializing speech engine...
[2026-10-28 21:38:13,316.316 INFO    ] 2026-10-28 21:38:13
[2026-10-28 21:38:13,590.590 INFO    ] 2026-10-28 21:38:13
[2026-10-28 21:38:13,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:38:13,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:38:14,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:38:14,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:38:14,339.339 INFO    ] time= 28/10/2026 21:38:14
[2026-10-28 21:38:14,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:38:14,452.452 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:38:14,588.588 INFO    ] No existing commands found in stream
[2026-10-28 21:38:19,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:38:19,602.602 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-28 21:38:23,589.589 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:38:23,592.592 INFO    ] Checking for system updates...
[2026-10-28 21:38:23,633.633 INFO    ] 200
[2026-10-28 21:38:23,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:38:23,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:38:23,699.699 INFO    ] No update needed
[2026-10-28 21:38:23,702.702 INFO    ] Checking for camera pi updates...
[2026-10-28 21:38:23,741.741 INFO    ] 200
[2026-10-28 21:38:23,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:38:23,790.790 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:38:23,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:38:23,861.861 INFO    ] No camera update needed
[2026-10-28 21:38:23,864.864 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:38:23,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:38:23,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:38:23,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:38:25,921.921 INFO    ] ================================================
[2026-10-28 21:38:25,938.938 INFO    ] Launching Daemon at Wed Oct 28 21:38:25 IST 2026
[2026-10-28 21:38:25,950.950 INFO    ] ================================================
[2026-10-28 21:38:26,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:38:26
[2026-10-28 21:38:27,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:38:27,678.678 INFO    ] Initializing speech engine...
[2026-10-28 21:38:27,686.686 INFO    ] 2026-10-28 21:38:27
[2026-10-28 21:38:27,989.989 INFO    ] 2026-10-28 21:38:27
[2026-10-28 21:38:28,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:38:28,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:38:28,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:38:28,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:38:28,595.595 INFO    ] time= 28/10/2026 21:38:28
[2026-10-28 21:38:28,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:38:28,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:38:28,822.822 INFO    ] No existing commands found in stream
[2026-10-28 21:38:33,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:38:33,853.853 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 21:38:36,242.242 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:38:36,245.245 INFO    ] Checking for system updates...
[2026-10-28 21:38:36,282.282 INFO    ] 200
[2026-10-28 21:38:36,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:38:36,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:38:36,348.348 INFO    ] No update needed
[2026-10-28 21:38:36,351.351 INFO    ] Checking for camera pi updates...
[2026-10-28 21:38:36,386.386 INFO    ] 200
[2026-10-28 21:38:36,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:38:36,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:38:36,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:38:36,514.514 INFO    ] No camera update needed
[2026-10-28 21:38:36,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:38:36,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:38:36,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:38:36,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:38:38,573.573 INFO    ] ================================================
[2026-10-28 21:38:38,588.588 INFO    ] Launching Daemon at Wed Oct 28 21:38:38 IST 2026
[2026-10-28 21:38:38,599.599 INFO    ] ================================================
[2026-10-28 21:38:39,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:38:39
[2026-10-28 21:38:39,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:38:40,230.230 INFO    ] Initializing speech engine...
[2026-10-28 21:38:40,244.244 INFO    ] 2026-10-28 21:38:40
[2026-10-28 21:38:40,557.557 INFO    ] 2026-10-28 21:38:40
[2026-10-28 21:38:40,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:38:40,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:38:40,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:38:41,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:38:41,222.222 INFO    ] time= 28/10/2026 21:38:41
[2026-10-28 21:38:41,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:38:41,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:38:41,486.486 INFO    ] No existing commands found in stream
[2026-10-28 21:38:46,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:38:46,520.520 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-28 21:38:50,069.069 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:38:50,072.072 INFO    ] Checking for system updates...
[2026-10-28 21:38:50,110.110 INFO    ] 200
[2026-10-28 21:38:50,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:38:50,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:38:50,167.167 INFO    ] No update needed
[2026-10-28 21:38:50,170.170 INFO    ] Checking for camera pi updates...
[2026-10-28 21:38:50,210.210 INFO    ] 200
[2026-10-28 21:38:50,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:38:50,254.254 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:38:50,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:38:50,333.333 INFO    ] No camera update needed
[2026-10-28 21:38:50,336.336 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:38:50,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:38:50,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:38:50,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:38:52,389.389 INFO    ] ================================================
[2026-10-28 21:38:52,405.405 INFO    ] Launching Daemon at Wed Oct 28 21:38:52 IST 2026
[2026-10-28 21:38:52,415.415 INFO    ] ================================================
[2026-10-28 21:38:53,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:38:53
[2026-10-28 21:38:53,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:38:54,056.056 INFO    ] Initializing speech engine...
[2026-10-28 21:38:54,066.066 INFO    ] 2026-10-28 21:38:54
[2026-10-28 21:38:54,343.343 INFO    ] 2026-10-28 21:38:54
[2026-10-28 21:38:54,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:38:54,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:38:54,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:38:54,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:38:54,887.887 INFO    ] time= 28/10/2026 21:38:54
[2026-10-28 21:38:54,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:38:54,934.934 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:38:55,046.046 INFO    ] No existing commands found in stream
[2026-10-28 21:39:00,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:39:00,078.078 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-28 21:39:02,116.116 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:39:02,119.119 INFO    ] Checking for system updates...
[2026-10-28 21:39:02,159.159 INFO    ] 200
[2026-10-28 21:39:02,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:39:02,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:39:02,231.231 INFO    ] No update needed
[2026-10-28 21:39:02,235.235 INFO    ] Checking for camera pi updates...
[2026-10-28 21:39:02,277.277 INFO    ] 200
[2026-10-28 21:39:02,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:39:02,332.332 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:39:02,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:39:02,429.429 INFO    ] No camera update needed
[2026-10-28 21:39:02,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:39:02,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:39:02,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:39:02,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:39:04,491.491 INFO    ] ================================================
[2026-10-28 21:39:04,506.506 INFO    ] Launching Daemon at Wed Oct 28 21:39:04 IST 2026
[2026-10-28 21:39:04,516.516 INFO    ] ================================================
[2026-10-28 21:39:05,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:39:05
[2026-10-28 21:39:05,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:39:05,931.931 INFO    ] Initializing speech engine...
[2026-10-28 21:39:05,940.940 INFO    ] 2026-10-28 21:39:05
[2026-10-28 21:39:06,198.198 INFO    ] 2026-10-28 21:39:06
[2026-10-28 21:39:06,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:39:06,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:39:06,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:39:06,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:39:06,764.764 INFO    ] time= 28/10/2026 21:39:06
[2026-10-28 21:39:06,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:39:06,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:39:06,930.930 INFO    ] No existing commands found in stream
[2026-10-28 21:39:11,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:39:11,958.958 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 21:39:12,665.665 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:39:12,668.668 INFO    ] Checking for system updates...
[2026-10-28 21:39:12,704.704 INFO    ] 200
[2026-10-28 21:39:12,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:39:12,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:39:12,761.761 INFO    ] No update needed
[2026-10-28 21:39:12,763.763 INFO    ] Checking for camera pi updates...
[2026-10-28 21:39:12,796.796 INFO    ] 200
[2026-10-28 21:39:12,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:39:12,838.838 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:39:12,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:39:12,927.927 INFO    ] No camera update needed
[2026-10-28 21:39:12,930.930 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:39:12,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:39:12,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:39:12,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:39:14,982.982 INFO    ] ================================================
[2026-10-28 21:39:15,997.997 INFO    ] Launching Daemon at Wed Oct 28 21:39:14 IST 2026
[2026-10-28 21:39:15,008.008 INFO    ] ================================================
[2026-10-28 21:39:15,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:39:15
[2026-10-28 21:39:16,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:39:16,430.430 INFO    ] Initializing speech engine...
[2026-10-28 21:39:16,439.439 INFO    ] 2026-10-28 21:39:16
[2026-10-28 21:39:16,690.690 INFO    ] 2026-10-28 21:39:16
[2026-10-28 21:39:16,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:39:16,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:39:16,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:39:17,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:39:17,262.262 INFO    ] time= 28/10/2026 21:39:17
[2026-10-28 21:39:17,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:39:17,287.287 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:39:17,404.404 INFO    ] No existing commands found in stream
[2026-10-28 21:39:22,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:39:22,434.434 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-28 21:39:23,433.433 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:39:23,435.435 INFO    ] Checking for system updates...
[2026-10-28 21:39:23,474.474 INFO    ] 200
[2026-10-28 21:39:23,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:39:23,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:39:23,537.537 INFO    ] No update needed
[2026-10-28 21:39:23,540.540 INFO    ] Checking for camera pi updates...
[2026-10-28 21:39:23,573.573 INFO    ] 200
[2026-10-28 21:39:23,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:39:23,620.620 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:39:23,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:39:23,702.702 INFO    ] No camera update needed
[2026-10-28 21:39:23,704.704 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:39:23,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:39:23,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:39:23,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:39:25,760.760 INFO    ] ================================================
[2026-10-28 21:39:25,775.775 INFO    ] Launching Daemon at Wed Oct 28 21:39:25 IST 2026
[2026-10-28 21:39:25,786.786 INFO    ] ================================================
[2026-10-28 21:39:26,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:39:26
[2026-10-28 21:39:26,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:39:27,239.239 INFO    ] Initializing speech engine...
[2026-10-28 21:39:27,248.248 INFO    ] 2026-10-28 21:39:27
[2026-10-28 21:39:27,501.501 INFO    ] 2026-10-28 21:39:27
[2026-10-28 21:39:27,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:39:27,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:39:27,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:39:28,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:39:28,194.194 INFO    ] time= 28/10/2026 21:39:28
[2026-10-28 21:39:28,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:39:28,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:39:28,446.446 INFO    ] No existing commands found in stream
[2026-10-28 21:39:33,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:39:33,472.472 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 21:39:35,506.506 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:39:35,509.509 INFO    ] Checking for system updates...
[2026-10-28 21:39:35,548.548 INFO    ] 200
[2026-10-28 21:39:35,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:39:35,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:39:35,605.605 INFO    ] No update needed
[2026-10-28 21:39:35,607.607 INFO    ] Checking for camera pi updates...
[2026-10-28 21:39:35,641.641 INFO    ] 200
[2026-10-28 21:39:35,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:39:35,752.752 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:39:35,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:39:35,850.850 INFO    ] No camera update needed
[2026-10-28 21:39:35,852.852 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:39:35,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:39:35,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:39:35,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:39:37,909.909 INFO    ] ================================================
[2026-10-28 21:39:37,924.924 INFO    ] Launching Daemon at Wed Oct 28 21:39:37 IST 2026
[2026-10-28 21:39:37,934.934 INFO    ] ================================================
[2026-10-28 21:39:38,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:39:38
[2026-10-28 21:39:39,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:39:39,531.531 INFO    ] Initializing speech engine...
[2026-10-28 21:39:39,540.540 INFO    ] 2026-10-28 21:39:39
[2026-10-28 21:39:39,856.856 INFO    ] 2026-10-28 21:39:39
[2026-10-28 21:39:39,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:39:40,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:39:40,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:39:40,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:39:40,401.401 INFO    ] time= 28/10/2026 21:39:40
[2026-10-28 21:39:40,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:39:40,448.448 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:39:40,611.611 INFO    ] No existing commands found in stream
[2026-10-28 21:39:45,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:39:45,630.630 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-28 21:39:49,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:39:49,749.749 INFO    ] Checking for system updates...
[2026-10-28 21:39:49,786.786 INFO    ] 200
[2026-10-28 21:39:49,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:39:49,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:39:49,845.845 INFO    ] No update needed
[2026-10-28 21:39:49,848.848 INFO    ] Checking for camera pi updates...
[2026-10-28 21:39:49,881.881 INFO    ] 200
[2026-10-28 21:39:49,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:39:49,925.925 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:39:50,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:39:50,007.007 INFO    ] No camera update needed
[2026-10-28 21:39:50,010.010 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:39:50,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:39:50,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:39:50,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:39:52,064.064 INFO    ] ================================================
[2026-10-28 21:39:52,079.079 INFO    ] Launching Daemon at Wed Oct 28 21:39:52 IST 2026
[2026-10-28 21:39:52,090.090 INFO    ] ================================================
[2026-10-28 21:39:52,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:39:52
[2026-10-28 21:39:53,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:39:53,571.571 INFO    ] Initializing speech engine...
[2026-10-28 21:39:53,584.584 INFO    ] 2026-10-28 21:39:53
[2026-10-28 21:39:53,865.865 INFO    ] 2026-10-28 21:39:53
[2026-10-28 21:39:53,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:39:54,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:39:54,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:39:54,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:39:54,451.451 INFO    ] time= 28/10/2026 21:39:54
[2026-10-28 21:39:54,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:39:54,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:39:54,605.605 INFO    ] No existing commands found in stream
[2026-10-28 21:39:59,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:39:59,632.632 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-28 21:40:00,751.751 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:40:00,753.753 INFO    ] Checking for system updates...
[2026-10-28 21:40:00,793.793 INFO    ] 200
[2026-10-28 21:40:00,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:40:00,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:40:00,872.872 INFO    ] No update needed
[2026-10-28 21:40:00,875.875 INFO    ] Checking for camera pi updates...
[2026-10-28 21:40:00,912.912 INFO    ] 200
[2026-10-28 21:40:00,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:40:00,959.959 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:40:01,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:40:01,042.042 INFO    ] No camera update needed
[2026-10-28 21:40:01,045.045 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:40:01,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:40:01,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:40:01,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:40:03,122.122 INFO    ] ================================================
[2026-10-28 21:40:03,151.151 INFO    ] Launching Daemon at Wed Oct 28 21:40:03 IST 2026
[2026-10-28 21:40:03,170.170 INFO    ] ================================================
[2026-10-28 21:40:03,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:40:03
[2026-10-28 21:40:04,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:40:04,739.739 INFO    ] Initializing speech engine...
[2026-10-28 21:40:04,747.747 INFO    ] 2026-10-28 21:40:04
[2026-10-28 21:40:05,009.009 INFO    ] 2026-10-28 21:40:05
[2026-10-28 21:40:05,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:40:05,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:40:05,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:40:05,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:40:05,565.565 INFO    ] time= 28/10/2026 21:40:05
[2026-10-28 21:40:05,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:40:05,600.600 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:40:05,717.717 INFO    ] No existing commands found in stream
[2026-10-28 21:40:10,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:40:10,732.732 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 21:40:14,548.548 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:40:14,551.551 INFO    ] Checking for system updates...
[2026-10-28 21:40:14,587.587 INFO    ] 200
[2026-10-28 21:40:14,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:40:14,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:40:14,645.645 INFO    ] No update needed
[2026-10-28 21:40:14,648.648 INFO    ] Checking for camera pi updates...
[2026-10-28 21:40:14,682.682 INFO    ] 200
[2026-10-28 21:40:14,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:40:14,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:40:14,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:40:14,822.822 INFO    ] No camera update needed
[2026-10-28 21:40:14,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:40:14,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:40:14,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:40:14,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:40:16,880.880 INFO    ] ================================================
[2026-10-28 21:40:16,895.895 INFO    ] Launching Daemon at Wed Oct 28 21:40:16 IST 2026
[2026-10-28 21:40:16,905.905 INFO    ] ================================================
[2026-10-28 21:40:17,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:40:17
[2026-10-28 21:40:18,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:40:18,369.369 INFO    ] Initializing speech engine...
[2026-10-28 21:40:18,379.379 INFO    ] 2026-10-28 21:40:18
[2026-10-28 21:40:18,630.630 INFO    ] 2026-10-28 21:40:18
[2026-10-28 21:40:18,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:40:18,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:40:18,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:40:19,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:40:19,202.202 INFO    ] time= 28/10/2026 21:40:19
[2026-10-28 21:40:19,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:40:19,226.226 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:40:19,362.362 INFO    ] No existing commands found in stream
[2026-10-28 21:40:24,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:40:24,383.383 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-28 21:40:26,399.399 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:40:26,402.402 INFO    ] Checking for system updates...
[2026-10-28 21:40:26,439.439 INFO    ] 200
[2026-10-28 21:40:26,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:40:26,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:40:26,503.503 INFO    ] No update needed
[2026-10-28 21:40:26,505.505 INFO    ] Checking for camera pi updates...
[2026-10-28 21:40:26,542.542 INFO    ] 200
[2026-10-28 21:40:26,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:40:26,590.590 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:40:26,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:40:26,671.671 INFO    ] No camera update needed
[2026-10-28 21:40:26,673.673 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:40:26,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:40:26,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:40:26,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:40:28,727.727 INFO    ] ================================================
[2026-10-28 21:40:28,743.743 INFO    ] Launching Daemon at Wed Oct 28 21:40:28 IST 2026
[2026-10-28 21:40:28,755.755 INFO    ] ================================================
[2026-10-28 21:40:29,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:40:29
[2026-10-28 21:40:30,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:40:30,394.394 INFO    ] Initializing speech engine...
[2026-10-28 21:40:30,406.406 INFO    ] 2026-10-28 21:40:30
[2026-10-28 21:40:30,702.702 INFO    ] 2026-10-28 21:40:30
[2026-10-28 21:40:30,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:40:31,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:40:31,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:40:31,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:40:31,268.268 INFO    ] time= 28/10/2026 21:40:31
[2026-10-28 21:40:31,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:40:31,307.307 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:40:31,462.462 INFO    ] No existing commands found in stream
[2026-10-28 21:40:36,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:40:36,497.497 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-28 21:40:39,442.442 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:40:39,445.445 INFO    ] Checking for system updates...
[2026-10-28 21:40:39,486.486 INFO    ] 200
[2026-10-28 21:40:39,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:40:39,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:40:39,553.553 INFO    ] No update needed
[2026-10-28 21:40:39,556.556 INFO    ] Checking for camera pi updates...
[2026-10-28 21:40:39,591.591 INFO    ] 200
[2026-10-28 21:40:39,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:40:39,636.636 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:40:39,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:40:39,817.817 INFO    ] No camera update needed
[2026-10-28 21:40:39,820.820 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:40:39,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:40:39,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:40:39,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:40:41,879.879 INFO    ] ================================================
[2026-10-28 21:40:41,895.895 INFO    ] Launching Daemon at Wed Oct 28 21:40:41 IST 2026
[2026-10-28 21:40:41,907.907 INFO    ] ================================================
[2026-10-28 21:40:42,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:40:42
[2026-10-28 21:40:43,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:40:43,554.554 INFO    ] Initializing speech engine...
[2026-10-28 21:40:43,567.567 INFO    ] 2026-10-28 21:40:43
[2026-10-28 21:40:43,823.823 INFO    ] 2026-10-28 21:40:43
[2026-10-28 21:40:43,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:40:44,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:40:44,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:40:44,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:40:44,370.370 INFO    ] time= 28/10/2026 21:40:44
[2026-10-28 21:40:44,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:40:44,417.417 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:40:44,522.522 INFO    ] No existing commands found in stream
[2026-10-28 21:40:49,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:40:49,541.541 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-28 21:40:51,428.428 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:40:51,430.430 INFO    ] Checking for system updates...
[2026-10-28 21:40:51,467.467 INFO    ] 200
[2026-10-28 21:40:51,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:40:51,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:40:51,534.534 INFO    ] No update needed
[2026-10-28 21:40:51,537.537 INFO    ] Checking for camera pi updates...
[2026-10-28 21:40:51,576.576 INFO    ] 200
[2026-10-28 21:40:51,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:40:51,624.624 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:40:51,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:40:51,709.709 INFO    ] No camera update needed
[2026-10-28 21:40:51,711.711 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:40:51,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:40:51,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:40:51,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:40:53,764.764 INFO    ] ================================================
[2026-10-28 21:40:53,780.780 INFO    ] Launching Daemon at Wed Oct 28 21:40:53 IST 2026
[2026-10-28 21:40:53,791.791 INFO    ] ================================================
[2026-10-28 21:40:54,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:40:54
[2026-10-28 21:40:54,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:40:55,229.229 INFO    ] Initializing speech engine...
[2026-10-28 21:40:55,238.238 INFO    ] 2026-10-28 21:40:55
[2026-10-28 21:40:55,538.538 INFO    ] 2026-10-28 21:40:55
[2026-10-28 21:40:55,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:40:55,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:40:55,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:40:56,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:40:56,181.181 INFO    ] time= 28/10/2026 21:40:56
[2026-10-28 21:40:56,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:40:56,234.234 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:40:56,357.357 INFO    ] No existing commands found in stream
[2026-10-28 21:41:01,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:41:01,390.390 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 21:41:02,632.632 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:41:02,635.635 INFO    ] Checking for system updates...
[2026-10-28 21:41:02,685.685 INFO    ] 200
[2026-10-28 21:41:02,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:41:02,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:41:02,763.763 INFO    ] No update needed
[2026-10-28 21:41:02,766.766 INFO    ] Checking for camera pi updates...
[2026-10-28 21:41:02,815.815 INFO    ] 200
[2026-10-28 21:41:02,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:41:02,866.866 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:41:02,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:41:02,967.967 INFO    ] No camera update needed
[2026-10-28 21:41:02,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:41:02,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:41:02,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:41:02,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:41:05,035.035 INFO    ] ================================================
[2026-10-28 21:41:05,050.050 INFO    ] Launching Daemon at Wed Oct 28 21:41:05 IST 2026
[2026-10-28 21:41:05,062.062 INFO    ] ================================================
[2026-10-28 21:41:05,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:41:05
[2026-10-28 21:41:06,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:41:06,540.540 INFO    ] Initializing speech engine...
[2026-10-28 21:41:06,550.550 INFO    ] 2026-10-28 21:41:06
[2026-10-28 21:41:06,831.831 INFO    ] 2026-10-28 21:41:06
[2026-10-28 21:41:06,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:41:07,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:41:07,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:41:07,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:41:07,514.514 INFO    ] time= 28/10/2026 21:41:07
[2026-10-28 21:41:07,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:41:07,598.598 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:41:07,767.767 INFO    ] No existing commands found in stream
[2026-10-28 21:41:12,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:41:12,788.788 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 21:41:13,910.910 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:41:13,913.913 INFO    ] Checking for system updates...
[2026-10-28 21:41:13,949.949 INFO    ] 200
[2026-10-28 21:41:13,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:41:14,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:41:14,008.008 INFO    ] No update needed
[2026-10-28 21:41:14,011.011 INFO    ] Checking for camera pi updates...
[2026-10-28 21:41:14,049.049 INFO    ] 200
[2026-10-28 21:41:14,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:41:14,092.092 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:41:14,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:41:14,175.175 INFO    ] No camera update needed
[2026-10-28 21:41:14,177.177 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:41:14,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:41:14,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:41:14,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:41:16,231.231 INFO    ] ================================================
[2026-10-28 21:41:16,247.247 INFO    ] Launching Daemon at Wed Oct 28 21:41:16 IST 2026
[2026-10-28 21:41:16,257.257 INFO    ] ================================================
[2026-10-28 21:41:16,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:41:16
[2026-10-28 21:41:17,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:41:17,741.741 INFO    ] Initializing speech engine...
[2026-10-28 21:41:17,755.755 INFO    ] 2026-10-28 21:41:17
[2026-10-28 21:41:18,066.066 INFO    ] 2026-10-28 21:41:18
[2026-10-28 21:41:18,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:41:18,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:41:18,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:41:18,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:41:18,792.792 INFO    ] time= 28/10/2026 21:41:18
[2026-10-28 21:41:18,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:41:18,891.891 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:41:19,022.022 INFO    ] No existing commands found in stream
[2026-10-28 21:41:24,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:41:24,036.036 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-28 21:41:27,330.330 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:41:27,333.333 INFO    ] Checking for system updates...
[2026-10-28 21:41:27,370.370 INFO    ] 200
[2026-10-28 21:41:27,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:41:27,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:41:27,439.439 INFO    ] No update needed
[2026-10-28 21:41:27,441.441 INFO    ] Checking for camera pi updates...
[2026-10-28 21:41:27,475.475 INFO    ] 200
[2026-10-28 21:41:27,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:41:27,518.518 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:41:27,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:41:27,570.570 INFO    ] No camera update needed
[2026-10-28 21:41:27,572.572 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:41:27,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:41:27,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:41:27,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:41:29,624.624 INFO    ] ================================================
[2026-10-28 21:41:29,639.639 INFO    ] Launching Daemon at Wed Oct 28 21:41:29 IST 2026
[2026-10-28 21:41:29,650.650 INFO    ] ================================================
[2026-10-28 21:41:30,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:41:30
[2026-10-28 21:41:30,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:41:31,105.105 INFO    ] Initializing speech engine...
[2026-10-28 21:41:31,112.112 INFO    ] 2026-10-28 21:41:31
[2026-10-28 21:41:31,372.372 INFO    ] 2026-10-28 21:41:31
[2026-10-28 21:41:31,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:41:31,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:41:31,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:41:31,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:41:31,967.967 INFO    ] time= 28/10/2026 21:41:31
[2026-10-28 21:41:32,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:41:32,074.074 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:41:32,201.201 INFO    ] No existing commands found in stream
[2026-10-28 21:41:37,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:41:37,241.241 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-28 21:41:39,109.109 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:41:39,112.112 INFO    ] Checking for system updates...
[2026-10-28 21:41:39,147.147 INFO    ] 200
[2026-10-28 21:41:39,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:41:39,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:41:39,213.213 INFO    ] No update needed
[2026-10-28 21:41:39,216.216 INFO    ] Checking for camera pi updates...
[2026-10-28 21:41:39,250.250 INFO    ] 200
[2026-10-28 21:41:39,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:41:39,292.292 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:41:39,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:41:39,365.365 INFO    ] No camera update needed
[2026-10-28 21:41:39,367.367 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:41:39,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:41:39,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:41:39,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:41:41,423.423 INFO    ] ================================================
[2026-10-28 21:41:41,439.439 INFO    ] Launching Daemon at Wed Oct 28 21:41:41 IST 2026
[2026-10-28 21:41:41,450.450 INFO    ] ================================================
[2026-10-28 21:41:42,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:41:42
[2026-10-28 21:41:42,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:41:42,911.911 INFO    ] Initializing speech engine...
[2026-10-28 21:41:42,917.917 INFO    ] 2026-10-28 21:41:42
[2026-10-28 21:41:43,178.178 INFO    ] 2026-10-28 21:41:43
[2026-10-28 21:41:43,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:41:43,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:41:43,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:41:43,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:41:43,745.745 INFO    ] time= 28/10/2026 21:41:43
[2026-10-28 21:41:43,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:41:43,784.784 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:41:43,928.928 INFO    ] No existing commands found in stream
[2026-10-28 21:41:48,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:41:48,962.962 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 21:41:51,471.471 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:41:51,475.475 INFO    ] Checking for system updates...
[2026-10-28 21:41:51,529.529 INFO    ] 200
[2026-10-28 21:41:51,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:41:51,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:41:51,587.587 INFO    ] No update needed
[2026-10-28 21:41:51,589.589 INFO    ] Checking for camera pi updates...
[2026-10-28 21:41:51,623.623 INFO    ] 200
[2026-10-28 21:41:51,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:41:51,672.672 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:41:51,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:41:51,774.774 INFO    ] No camera update needed
[2026-10-28 21:41:51,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:41:51,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:41:51,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:41:51,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:41:53,831.831 INFO    ] ================================================
[2026-10-28 21:41:53,846.846 INFO    ] Launching Daemon at Wed Oct 28 21:41:53 IST 2026
[2026-10-28 21:41:53,857.857 INFO    ] ================================================
[2026-10-28 21:41:54,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:41:54
[2026-10-28 21:41:55,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:41:55,506.506 INFO    ] Initializing speech engine...
[2026-10-28 21:41:55,526.526 INFO    ] 2026-10-28 21:41:55
[2026-10-28 21:41:55,805.805 INFO    ] 2026-10-28 21:41:55
[2026-10-28 21:41:55,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:41:56,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:41:56,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:41:56,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:41:56,376.376 INFO    ] time= 28/10/2026 21:41:56
[2026-10-28 21:41:56,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:41:56,427.427 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:41:56,567.567 INFO    ] No existing commands found in stream
[2026-10-28 21:42:01,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:42:01,599.599 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 21:42:03,957.957 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:42:03,959.959 INFO    ] Checking for system updates...
[2026-10-28 21:42:03,998.998 INFO    ] 200
[2026-10-28 21:42:04,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:42:04,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:42:04,055.055 INFO    ] No update needed
[2026-10-28 21:42:04,058.058 INFO    ] Checking for camera pi updates...
[2026-10-28 21:42:04,092.092 INFO    ] 200
[2026-10-28 21:42:04,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:42:04,139.139 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:42:04,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:42:04,229.229 INFO    ] No camera update needed
[2026-10-28 21:42:04,232.232 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:42:04,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:42:04,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:42:04,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:42:06,287.287 INFO    ] ================================================
[2026-10-28 21:42:06,302.302 INFO    ] Launching Daemon at Wed Oct 28 21:42:06 IST 2026
[2026-10-28 21:42:06,313.313 INFO    ] ================================================
[2026-10-28 21:42:06,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:42:06
[2026-10-28 21:42:07,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:42:07,778.778 INFO    ] Initializing speech engine...
[2026-10-28 21:42:07,784.784 INFO    ] 2026-10-28 21:42:07
[2026-10-28 21:42:08,045.045 INFO    ] 2026-10-28 21:42:08
[2026-10-28 21:42:08,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:42:08,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:42:08,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:42:08,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:42:08,826.826 INFO    ] time= 28/10/2026 21:42:08
[2026-10-28 21:42:08,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:42:08,925.925 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:42:09,125.125 INFO    ] No existing commands found in stream
[2026-10-28 21:42:14,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:42:14,158.158 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-10-28 21:42:15,628.628 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:42:15,631.631 INFO    ] Checking for system updates...
[2026-10-28 21:42:15,670.670 INFO    ] 200
[2026-10-28 21:42:15,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:42:15,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:42:15,728.728 INFO    ] No update needed
[2026-10-28 21:42:15,730.730 INFO    ] Checking for camera pi updates...
[2026-10-28 21:42:15,764.764 INFO    ] 200
[2026-10-28 21:42:15,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:42:15,806.806 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:42:15,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:42:15,895.895 INFO    ] No camera update needed
[2026-10-28 21:42:15,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:42:15,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:42:15,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:42:15,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:42:17,952.952 INFO    ] ================================================
[2026-10-28 21:42:17,967.967 INFO    ] Launching Daemon at Wed Oct 28 21:42:17 IST 2026
[2026-10-28 21:42:17,978.978 INFO    ] ================================================
[2026-10-28 21:42:18,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:42:18
[2026-10-28 21:42:19,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:42:19,535.535 INFO    ] Initializing speech engine...
[2026-10-28 21:42:19,543.543 INFO    ] 2026-10-28 21:42:19
[2026-10-28 21:42:19,793.793 INFO    ] 2026-10-28 21:42:19
[2026-10-28 21:42:19,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:42:20,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:42:20,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:42:20,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:42:20,359.359 INFO    ] time= 28/10/2026 21:42:20
[2026-10-28 21:42:20,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:42:20,383.383 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:42:20,517.517 INFO    ] No existing commands found in stream
[2026-10-28 21:42:25,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:42:25,542.542 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 21:42:26,311.311 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:42:26,314.314 INFO    ] Checking for system updates...
[2026-10-28 21:42:26,350.350 INFO    ] 200
[2026-10-28 21:42:26,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:42:26,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:42:26,413.413 INFO    ] No update needed
[2026-10-28 21:42:26,416.416 INFO    ] Checking for camera pi updates...
[2026-10-28 21:42:26,453.453 INFO    ] 200
[2026-10-28 21:42:26,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:42:26,495.495 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:42:26,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:42:26,594.594 INFO    ] No camera update needed
[2026-10-28 21:42:26,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:42:26,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:42:26,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:42:26,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:42:28,650.650 INFO    ] ================================================
[2026-10-28 21:42:28,664.664 INFO    ] Launching Daemon at Wed Oct 28 21:42:28 IST 2026
[2026-10-28 21:42:28,675.675 INFO    ] ================================================
[2026-10-28 21:42:29,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:42:29
[2026-10-28 21:42:29,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:42:30,115.115 INFO    ] Initializing speech engine...
[2026-10-28 21:42:30,131.131 INFO    ] 2026-10-28 21:42:30
[2026-10-28 21:42:30,392.392 INFO    ] 2026-10-28 21:42:30
[2026-10-28 21:42:30,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:42:30,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:42:30,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:42:30,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:42:30,954.954 INFO    ] time= 28/10/2026 21:42:30
[2026-10-28 21:42:30,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:42:30,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:42:31,117.117 INFO    ] No existing commands found in stream
[2026-10-28 21:42:36,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:42:36,138.138 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 21:42:37,526.526 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:42:37,529.529 INFO    ] Checking for system updates...
[2026-10-28 21:42:37,564.564 INFO    ] 200
[2026-10-28 21:42:37,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:42:37,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:42:37,628.628 INFO    ] No update needed
[2026-10-28 21:42:37,631.631 INFO    ] Checking for camera pi updates...
[2026-10-28 21:42:37,664.664 INFO    ] 200
[2026-10-28 21:42:37,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:42:37,711.711 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:42:37,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:42:37,795.795 INFO    ] No camera update needed
[2026-10-28 21:42:37,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:42:37,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:42:37,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:42:37,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:42:39,852.852 INFO    ] ================================================
[2026-10-28 21:42:39,867.867 INFO    ] Launching Daemon at Wed Oct 28 21:42:39 IST 2026
[2026-10-28 21:42:39,877.877 INFO    ] ================================================
[2026-10-28 21:42:40,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:42:40
[2026-10-28 21:42:41,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:42:41,322.322 INFO    ] Initializing speech engine...
[2026-10-28 21:42:41,331.331 INFO    ] 2026-10-28 21:42:41
[2026-10-28 21:42:41,578.578 INFO    ] 2026-10-28 21:42:41
[2026-10-28 21:42:41,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:42:41,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:42:41,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:42:42,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:42:42,132.132 INFO    ] time= 28/10/2026 21:42:42
[2026-10-28 21:42:42,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:42:42,162.162 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:42:42,299.299 INFO    ] No existing commands found in stream
[2026-10-28 21:42:47,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:42:47,332.332 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-28 21:42:49,078.078 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:42:49,081.081 INFO    ] Checking for system updates...
[2026-10-28 21:42:49,116.116 INFO    ] 200
[2026-10-28 21:42:49,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:42:49,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:42:49,179.179 INFO    ] No update needed
[2026-10-28 21:42:49,181.181 INFO    ] Checking for camera pi updates...
[2026-10-28 21:42:49,215.215 INFO    ] 200
[2026-10-28 21:42:49,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:42:49,257.257 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:42:49,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:42:49,440.440 INFO    ] No camera update needed
[2026-10-28 21:42:49,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:42:49,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:42:49,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:42:49,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:42:51,497.497 INFO    ] ================================================
[2026-10-28 21:42:51,512.512 INFO    ] Launching Daemon at Wed Oct 28 21:42:51 IST 2026
[2026-10-28 21:42:51,522.522 INFO    ] ================================================
[2026-10-28 21:42:52,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:42:52
[2026-10-28 21:42:52,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:42:52,938.938 INFO    ] Initializing speech engine...
[2026-10-28 21:42:52,948.948 INFO    ] 2026-10-28 21:42:52
[2026-10-28 21:42:53,198.198 INFO    ] 2026-10-28 21:42:53
[2026-10-28 21:42:53,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:42:53,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:42:53,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:42:53,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:42:53,764.764 INFO    ] time= 28/10/2026 21:42:53
[2026-10-28 21:42:53,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:42:53,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:42:53,921.921 INFO    ] No existing commands found in stream
[2026-10-28 21:42:58,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:42:58,937.937 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-28 21:43:01,446.446 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:43:01,452.452 INFO    ] Checking for system updates...
[2026-10-28 21:43:01,515.515 INFO    ] 200
[2026-10-28 21:43:01,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:43:01,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:43:01,615.615 INFO    ] No update needed
[2026-10-28 21:43:01,618.618 INFO    ] Checking for camera pi updates...
[2026-10-28 21:43:01,688.688 INFO    ] 200
[2026-10-28 21:43:01,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:43:01,751.751 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:43:01,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:43:01,835.835 INFO    ] No camera update needed
[2026-10-28 21:43:01,839.839 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:43:01,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:43:01,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:43:01,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:43:03,899.899 INFO    ] ================================================
[2026-10-28 21:43:03,914.914 INFO    ] Launching Daemon at Wed Oct 28 21:43:03 IST 2026
[2026-10-28 21:43:03,925.925 INFO    ] ================================================
[2026-10-28 21:43:04,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:43:04
[2026-10-28 21:43:05,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:43:05,348.348 INFO    ] Initializing speech engine...
[2026-10-28 21:43:05,354.354 INFO    ] 2026-10-28 21:43:05
[2026-10-28 21:43:05,650.650 INFO    ] 2026-10-28 21:43:05
[2026-10-28 21:43:05,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:43:05,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:43:05,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:43:06,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:43:06,289.289 INFO    ] time= 28/10/2026 21:43:06
[2026-10-28 21:43:06,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:43:06,317.317 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:43:06,443.443 INFO    ] No existing commands found in stream
[2026-10-28 21:43:11,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:43:11,471.471 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-28 21:43:13,918.918 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:43:13,920.920 INFO    ] Checking for system updates...
[2026-10-28 21:43:13,960.960 INFO    ] 200
[2026-10-28 21:43:13,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:43:14,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:43:14,018.018 INFO    ] No update needed
[2026-10-28 21:43:14,020.020 INFO    ] Checking for camera pi updates...
[2026-10-28 21:43:14,058.058 INFO    ] 200
[2026-10-28 21:43:14,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:43:14,105.105 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:43:14,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:43:14,189.189 INFO    ] No camera update needed
[2026-10-28 21:43:14,191.191 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:43:14,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:43:14,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:43:14,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:43:16,244.244 INFO    ] ================================================
[2026-10-28 21:43:16,259.259 INFO    ] Launching Daemon at Wed Oct 28 21:43:16 IST 2026
[2026-10-28 21:43:16,270.270 INFO    ] ================================================
[2026-10-28 21:43:16,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:43:16
[2026-10-28 21:43:17,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:43:17,912.912 INFO    ] Initializing speech engine...
[2026-10-28 21:43:17,918.918 INFO    ] 2026-10-28 21:43:17
[2026-10-28 21:43:18,196.196 INFO    ] 2026-10-28 21:43:18
[2026-10-28 21:43:18,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:43:18,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:43:18,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:43:18,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:43:18,776.776 INFO    ] time= 28/10/2026 21:43:18
[2026-10-28 21:43:18,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:43:18,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:43:18,946.946 INFO    ] No existing commands found in stream
[2026-10-28 21:43:23,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:43:23,980.980 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 21:43:25,008.008 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:43:25,010.010 INFO    ] Checking for system updates...
[2026-10-28 21:43:25,049.049 INFO    ] 200
[2026-10-28 21:43:25,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:43:25,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:43:25,107.107 INFO    ] No update needed
[2026-10-28 21:43:25,109.109 INFO    ] Checking for camera pi updates...
[2026-10-28 21:43:25,142.142 INFO    ] 200
[2026-10-28 21:43:25,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:43:25,184.184 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:43:25,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:43:25,274.274 INFO    ] No camera update needed
[2026-10-28 21:43:25,276.276 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:43:25,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:43:25,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:43:25,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:43:27,329.329 INFO    ] ================================================
[2026-10-28 21:43:27,344.344 INFO    ] Launching Daemon at Wed Oct 28 21:43:27 IST 2026
[2026-10-28 21:43:27,355.355 INFO    ] ================================================
[2026-10-28 21:43:27,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:43:27
[2026-10-28 21:43:28,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:43:28,774.774 INFO    ] Initializing speech engine...
[2026-10-28 21:43:28,783.783 INFO    ] 2026-10-28 21:43:28
[2026-10-28 21:43:29,032.032 INFO    ] 2026-10-28 21:43:29
[2026-10-28 21:43:29,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:43:29,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:43:29,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:43:29,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:43:29,599.599 INFO    ] time= 28/10/2026 21:43:29
[2026-10-28 21:43:29,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:43:29,622.622 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:43:29,758.758 INFO    ] No existing commands found in stream
[2026-10-28 21:43:34,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:43:34,777.777 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-28 21:43:36,630.630 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:43:36,633.633 INFO    ] Checking for system updates...
[2026-10-28 21:43:36,669.669 INFO    ] 200
[2026-10-28 21:43:36,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:43:36,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:43:36,726.726 INFO    ] No update needed
[2026-10-28 21:43:36,728.728 INFO    ] Checking for camera pi updates...
[2026-10-28 21:43:36,761.761 INFO    ] 200
[2026-10-28 21:43:36,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:43:36,803.803 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:43:36,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:43:36,897.897 INFO    ] No camera update needed
[2026-10-28 21:43:36,900.900 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:43:36,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:43:36,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:43:36,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:43:38,953.953 INFO    ] ================================================
[2026-10-28 21:43:38,969.969 INFO    ] Launching Daemon at Wed Oct 28 21:43:38 IST 2026
[2026-10-28 21:43:38,979.979 INFO    ] ================================================
[2026-10-28 21:43:39,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:43:39
[2026-10-28 21:43:40,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:43:40,615.615 INFO    ] Initializing speech engine...
[2026-10-28 21:43:40,623.623 INFO    ] 2026-10-28 21:43:40
[2026-10-28 21:43:40,901.901 INFO    ] 2026-10-28 21:43:40
[2026-10-28 21:43:40,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:43:41,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:43:41,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:43:41,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:43:41,479.479 INFO    ] time= 28/10/2026 21:43:41
[2026-10-28 21:43:41,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:43:41,514.514 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:43:41,679.679 INFO    ] No existing commands found in stream
[2026-10-28 21:43:46,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:43:46,713.713 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 21:43:49,198.198 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:43:49,201.201 INFO    ] Checking for system updates...
[2026-10-28 21:43:49,238.238 INFO    ] 200
[2026-10-28 21:43:49,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:43:49,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:43:49,305.305 INFO    ] No update needed
[2026-10-28 21:43:49,308.308 INFO    ] Checking for camera pi updates...
[2026-10-28 21:43:49,343.343 INFO    ] 200
[2026-10-28 21:43:49,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:43:49,393.393 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:43:49,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:43:49,484.484 INFO    ] No camera update needed
[2026-10-28 21:43:49,487.487 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:43:49,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:43:49,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:43:49,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:43:51,543.543 INFO    ] ================================================
[2026-10-28 21:43:51,558.558 INFO    ] Launching Daemon at Wed Oct 28 21:43:51 IST 2026
[2026-10-28 21:43:51,569.569 INFO    ] ================================================
[2026-10-28 21:43:52,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:43:52
[2026-10-28 21:43:52,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:43:53,157.157 INFO    ] Initializing speech engine...
[2026-10-28 21:43:53,165.165 INFO    ] 2026-10-28 21:43:53
[2026-10-28 21:43:53,456.456 INFO    ] 2026-10-28 21:43:53
[2026-10-28 21:43:53,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:43:53,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:43:53,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:43:54,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:43:54,047.047 INFO    ] time= 28/10/2026 21:43:54
[2026-10-28 21:43:54,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:43:54,064.064 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:43:54,229.229 INFO    ] No existing commands found in stream
[2026-10-28 21:43:59,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:43:59,264.264 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 21:44:02,232.232 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:44:02,236.236 INFO    ] Checking for system updates...
[2026-10-28 21:44:02,276.276 INFO    ] 200
[2026-10-28 21:44:02,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:44:02,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:44:02,343.343 INFO    ] No update needed
[2026-10-28 21:44:02,346.346 INFO    ] Checking for camera pi updates...
[2026-10-28 21:44:02,384.384 INFO    ] 200
[2026-10-28 21:44:02,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:44:02,436.436 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:44:02,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:44:02,546.546 INFO    ] No camera update needed
[2026-10-28 21:44:02,549.549 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:44:02,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:44:02,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:44:02,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:44:04,607.607 INFO    ] ================================================
[2026-10-28 21:44:04,622.622 INFO    ] Launching Daemon at Wed Oct 28 21:44:04 IST 2026
[2026-10-28 21:44:04,633.633 INFO    ] ================================================
[2026-10-28 21:44:05,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:44:05
[2026-10-28 21:44:05,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:44:06,054.054 INFO    ] Initializing speech engine...
[2026-10-28 21:44:06,062.062 INFO    ] 2026-10-28 21:44:06
[2026-10-28 21:44:06,359.359 INFO    ] 2026-10-28 21:44:06
[2026-10-28 21:44:06,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:44:06,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:44:06,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:44:06,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:44:06,860.860 INFO    ] time= 28/10/2026 21:44:06
[2026-10-28 21:44:06,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:44:06,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:44:07,065.065 INFO    ] No existing commands found in stream
[2026-10-28 21:44:12,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:44:12,080.080 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-28 21:44:16,333.333 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:44:16,337.337 INFO    ] Checking for system updates...
[2026-10-28 21:44:16,373.373 INFO    ] 200
[2026-10-28 21:44:16,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:44:16,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:44:16,432.432 INFO    ] No update needed
[2026-10-28 21:44:16,435.435 INFO    ] Checking for camera pi updates...
[2026-10-28 21:44:16,470.470 INFO    ] 200
[2026-10-28 21:44:16,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:44:16,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:44:16,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:44:16,604.604 INFO    ] No camera update needed
[2026-10-28 21:44:16,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:44:16,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:44:16,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:44:16,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:44:18,665.665 INFO    ] ================================================
[2026-10-28 21:44:18,680.680 INFO    ] Launching Daemon at Wed Oct 28 21:44:18 IST 2026
[2026-10-28 21:44:18,691.691 INFO    ] ================================================
[2026-10-28 21:44:19,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:44:19
[2026-10-28 21:44:20,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:44:20,330.330 INFO    ] Initializing speech engine...
[2026-10-28 21:44:20,345.345 INFO    ] 2026-10-28 21:44:20
[2026-10-28 21:44:20,664.664 INFO    ] 2026-10-28 21:44:20
[2026-10-28 21:44:20,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:44:20,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:44:20,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:44:21,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:44:21,191.191 INFO    ] time= 28/10/2026 21:44:21
[2026-10-28 21:44:21,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:44:21,232.232 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:44:21,367.367 INFO    ] No existing commands found in stream
[2026-10-28 21:44:26,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:44:26,396.396 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 21:44:29,031.031 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:44:29,035.035 INFO    ] Checking for system updates...
[2026-10-28 21:44:29,072.072 INFO    ] 200
[2026-10-28 21:44:29,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:44:29,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:44:29,138.138 INFO    ] No update needed
[2026-10-28 21:44:29,141.141 INFO    ] Checking for camera pi updates...
[2026-10-28 21:44:29,179.179 INFO    ] 200
[2026-10-28 21:44:29,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:44:29,229.229 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:44:29,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:44:29,335.335 INFO    ] No camera update needed
[2026-10-28 21:44:29,338.338 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:44:29,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:44:29,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:44:29,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:44:31,394.394 INFO    ] ================================================
[2026-10-28 21:44:31,409.409 INFO    ] Launching Daemon at Wed Oct 28 21:44:31 IST 2026
[2026-10-28 21:44:31,420.420 INFO    ] ================================================
[2026-10-28 21:44:32,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:44:32
[2026-10-28 21:44:32,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:44:32,925.925 INFO    ] Initializing speech engine...
[2026-10-28 21:44:32,939.939 INFO    ] 2026-10-28 21:44:32
[2026-10-28 21:44:33,226.226 INFO    ] 2026-10-28 21:44:33
[2026-10-28 21:44:33,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:44:33,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:44:33,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:44:33,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:44:33,652.652 INFO    ] time= 28/10/2026 21:44:33
[2026-10-28 21:44:33,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:44:33,664.664 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:44:33,798.798 INFO    ] No existing commands found in stream
[2026-10-28 21:44:38,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:44:38,831.831 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-28 21:44:41,487.487 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:44:41,489.489 INFO    ] Checking for system updates...
[2026-10-28 21:44:41,529.529 INFO    ] 200
[2026-10-28 21:44:41,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:44:41,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:44:41,585.585 INFO    ] No update needed
[2026-10-28 21:44:41,587.587 INFO    ] Checking for camera pi updates...
[2026-10-28 21:44:41,620.620 INFO    ] 200
[2026-10-28 21:44:41,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:44:41,664.664 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:44:41,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:44:41,767.767 INFO    ] No camera update needed
[2026-10-28 21:44:41,769.769 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:44:41,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:44:41,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:44:41,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:44:43,825.825 INFO    ] ================================================
[2026-10-28 21:44:43,840.840 INFO    ] Launching Daemon at Wed Oct 28 21:44:43 IST 2026
[2026-10-28 21:44:43,851.851 INFO    ] ================================================
[2026-10-28 21:44:44,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:44:44
[2026-10-28 21:44:45,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:44:45,318.318 INFO    ] Initializing speech engine...
[2026-10-28 21:44:45,343.343 INFO    ] 2026-10-28 21:44:45
[2026-10-28 21:44:45,620.620 INFO    ] 2026-10-28 21:44:45
[2026-10-28 21:44:45,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:44:45,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:44:45,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:44:46,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:44:46,169.169 INFO    ] time= 28/10/2026 21:44:46
[2026-10-28 21:44:46,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:44:46,268.268 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:44:46,415.415 INFO    ] No existing commands found in stream
[2026-10-28 21:44:51,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:44:51,438.438 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 21:44:55,749.749 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:44:55,752.752 INFO    ] Checking for system updates...
[2026-10-28 21:44:55,788.788 INFO    ] 200
[2026-10-28 21:44:55,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:44:55,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:44:55,848.848 INFO    ] No update needed
[2026-10-28 21:44:55,850.850 INFO    ] Checking for camera pi updates...
[2026-10-28 21:44:55,883.883 INFO    ] 200
[2026-10-28 21:44:55,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:44:55,927.927 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:44:56,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:44:56,105.105 INFO    ] No camera update needed
[2026-10-28 21:44:56,107.107 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:44:56,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:44:56,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:44:56,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:44:58,160.160 INFO    ] ================================================
[2026-10-28 21:44:58,176.176 INFO    ] Launching Daemon at Wed Oct 28 21:44:58 IST 2026
[2026-10-28 21:44:58,187.187 INFO    ] ================================================
[2026-10-28 21:44:58,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:44:58
[2026-10-28 21:44:59,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:44:59,832.832 INFO    ] Initializing speech engine...
[2026-10-28 21:44:59,841.841 INFO    ] 2026-10-28 21:44:59
[2026-10-28 21:45:00,132.132 INFO    ] 2026-10-28 21:45:00
[2026-10-28 21:45:00,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:45:00,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:45:00,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:45:00,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:45:00,921.921 INFO    ] time= 28/10/2026 21:45:00
[2026-10-28 21:45:00,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:45:01,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:45:01,128.128 INFO    ] No existing commands found in stream
[2026-10-28 21:45:06,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:45:06,142.142 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-28 21:45:06,926.926 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:45:06,929.929 INFO    ] Checking for system updates...
[2026-10-28 21:45:06,966.966 INFO    ] 200
[2026-10-28 21:45:06,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:45:07,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:45:07,023.023 INFO    ] No update needed
[2026-10-28 21:45:07,026.026 INFO    ] Checking for camera pi updates...
[2026-10-28 21:45:07,063.063 INFO    ] 200
[2026-10-28 21:45:07,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:45:07,106.106 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:45:07,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:45:07,196.196 INFO    ] No camera update needed
[2026-10-28 21:45:07,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:45:07,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:45:07,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:45:07,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:45:09,252.252 INFO    ] ================================================
[2026-10-28 21:45:09,267.267 INFO    ] Launching Daemon at Wed Oct 28 21:45:09 IST 2026
[2026-10-28 21:45:09,279.279 INFO    ] ================================================
[2026-10-28 21:45:09,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:45:09
[2026-10-28 21:45:10,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:45:10,697.697 INFO    ] Initializing speech engine...
[2026-10-28 21:45:10,706.706 INFO    ] 2026-10-28 21:45:10
[2026-10-28 21:45:10,955.955 INFO    ] 2026-10-28 21:45:10
[2026-10-28 21:45:10,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:45:11,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:45:11,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:45:11,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:45:11,525.525 INFO    ] time= 28/10/2026 21:45:11
[2026-10-28 21:45:11,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:45:11,548.548 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:45:11,694.694 INFO    ] No existing commands found in stream
[2026-10-28 21:45:16,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:45:16,727.727 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 21:45:20,282.282 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:45:20,285.285 INFO    ] Checking for system updates...
[2026-10-28 21:45:20,321.321 INFO    ] 200
[2026-10-28 21:45:20,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:45:20,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:45:20,379.379 INFO    ] No update needed
[2026-10-28 21:45:20,382.382 INFO    ] Checking for camera pi updates...
[2026-10-28 21:45:20,415.415 INFO    ] 200
[2026-10-28 21:45:20,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:45:20,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:45:20,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:45:20,545.545 INFO    ] No camera update needed
[2026-10-28 21:45:20,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:45:20,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:45:20,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:45:20,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:45:22,600.600 INFO    ] ================================================
[2026-10-28 21:45:22,616.616 INFO    ] Launching Daemon at Wed Oct 28 21:45:22 IST 2026
[2026-10-28 21:45:22,626.626 INFO    ] ================================================
[2026-10-28 21:45:23,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:45:23
[2026-10-28 21:45:23,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:45:24,246.246 INFO    ] Initializing speech engine...
[2026-10-28 21:45:24,259.259 INFO    ] 2026-10-28 21:45:24
[2026-10-28 21:45:24,537.537 INFO    ] 2026-10-28 21:45:24
[2026-10-28 21:45:24,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:45:24,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:45:24,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:45:25,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:45:25,090.090 INFO    ] time= 28/10/2026 21:45:25
[2026-10-28 21:45:25,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:45:25,127.127 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:45:25,274.274 INFO    ] No existing commands found in stream
[2026-10-28 21:45:30,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:45:30,308.308 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-28 21:45:33,617.617 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:45:33,619.619 INFO    ] Checking for system updates...
[2026-10-28 21:45:33,656.656 INFO    ] 200
[2026-10-28 21:45:33,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:45:33,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:45:33,712.712 INFO    ] No update needed
[2026-10-28 21:45:33,715.715 INFO    ] Checking for camera pi updates...
[2026-10-28 21:45:33,748.748 INFO    ] 200
[2026-10-28 21:45:33,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:45:33,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:45:33,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:45:33,877.877 INFO    ] No camera update needed
[2026-10-28 21:45:33,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:45:33,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:45:33,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:45:33,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:45:35,933.933 INFO    ] ================================================
[2026-10-28 21:45:35,949.949 INFO    ] Launching Daemon at Wed Oct 28 21:45:35 IST 2026
[2026-10-28 21:45:35,960.960 INFO    ] ================================================
[2026-10-28 21:45:36,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:45:36
[2026-10-28 21:45:37,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:45:37,362.362 INFO    ] Initializing speech engine...
[2026-10-28 21:45:37,377.377 INFO    ] 2026-10-28 21:45:37
[2026-10-28 21:45:37,660.660 INFO    ] 2026-10-28 21:45:37
[2026-10-28 21:45:37,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:45:37,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:45:37,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:45:38,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:45:38,241.241 INFO    ] time= 28/10/2026 21:45:38
[2026-10-28 21:45:38,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:45:38,304.304 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:45:38,447.447 INFO    ] No existing commands found in stream
[2026-10-28 21:45:43,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:45:43,476.476 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-28 21:45:47,870.870 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:45:47,873.873 INFO    ] Checking for system updates...
[2026-10-28 21:45:47,908.908 INFO    ] 200
[2026-10-28 21:45:47,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:45:47,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:45:47,969.969 INFO    ] No update needed
[2026-10-28 21:45:47,972.972 INFO    ] Checking for camera pi updates...
[2026-10-28 21:45:48,006.006 INFO    ] 200
[2026-10-28 21:45:48,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:45:48,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:45:48,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:45:48,131.131 INFO    ] No camera update needed
[2026-10-28 21:45:48,133.133 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:45:48,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:45:48,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:45:48,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:45:50,188.188 INFO    ] ================================================
[2026-10-28 21:45:50,203.203 INFO    ] Launching Daemon at Wed Oct 28 21:45:50 IST 2026
[2026-10-28 21:45:50,214.214 INFO    ] ================================================
[2026-10-28 21:45:50,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:45:50
[2026-10-28 21:45:51,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:45:51,849.849 INFO    ] Initializing speech engine...
[2026-10-28 21:45:51,857.857 INFO    ] 2026-10-28 21:45:51
[2026-10-28 21:45:52,148.148 INFO    ] 2026-10-28 21:45:52
[2026-10-28 21:45:52,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:45:52,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:45:52,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:45:52,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:45:52,864.864 INFO    ] time= 28/10/2026 21:45:52
[2026-10-28 21:45:52,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:45:52,956.956 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:45:53,121.121 INFO    ] No existing commands found in stream
[2026-10-28 21:45:58,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:45:58,140.140 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-28 21:46:02,154.154 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:46:02,157.157 INFO    ] Checking for system updates...
[2026-10-28 21:46:02,199.199 INFO    ] 200
[2026-10-28 21:46:02,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:46:02,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:46:02,272.272 INFO    ] No update needed
[2026-10-28 21:46:02,275.275 INFO    ] Checking for camera pi updates...
[2026-10-28 21:46:02,314.314 INFO    ] 200
[2026-10-28 21:46:02,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:46:02,368.368 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:46:02,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:46:02,508.508 INFO    ] No camera update needed
[2026-10-28 21:46:02,511.511 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:46:02,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:46:02,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:46:02,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:46:04,573.573 INFO    ] ================================================
[2026-10-28 21:46:04,588.588 INFO    ] Launching Daemon at Wed Oct 28 21:46:04 IST 2026
[2026-10-28 21:46:04,599.599 INFO    ] ================================================
[2026-10-28 21:46:05,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:46:05
[2026-10-28 21:46:05,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:46:06,158.158 INFO    ] Initializing speech engine...
[2026-10-28 21:46:06,164.164 INFO    ] 2026-10-28 21:46:06
[2026-10-28 21:46:06,435.435 INFO    ] 2026-10-28 21:46:06
[2026-10-28 21:46:06,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:46:06,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:46:06,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:46:07,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:46:07,137.137 INFO    ] time= 28/10/2026 21:46:07
[2026-10-28 21:46:07,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:46:07,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:46:07,384.384 INFO    ] No existing commands found in stream
[2026-10-28 21:46:12,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:46:12,400.400 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-28 21:46:15,093.093 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:46:15,096.096 INFO    ] Checking for system updates...
[2026-10-28 21:46:15,132.132 INFO    ] 200
[2026-10-28 21:46:15,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:46:15,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:46:15,192.192 INFO    ] No update needed
[2026-10-28 21:46:15,194.194 INFO    ] Checking for camera pi updates...
[2026-10-28 21:46:15,236.236 INFO    ] 200
[2026-10-28 21:46:15,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:46:15,282.282 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:46:15,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:46:15,388.388 INFO    ] No camera update needed
[2026-10-28 21:46:15,390.390 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:46:15,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:46:15,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:46:15,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:46:17,443.443 INFO    ] ================================================
[2026-10-28 21:46:17,459.459 INFO    ] Launching Daemon at Wed Oct 28 21:46:17 IST 2026
[2026-10-28 21:46:17,469.469 INFO    ] ================================================
[2026-10-28 21:46:18,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:46:18
[2026-10-28 21:46:18,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:46:18,883.883 INFO    ] Initializing speech engine...
[2026-10-28 21:46:18,907.907 INFO    ] 2026-10-28 21:46:18
[2026-10-28 21:46:19,175.175 INFO    ] 2026-10-28 21:46:19
[2026-10-28 21:46:19,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:46:19,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:46:19,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:46:19,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:46:19,771.771 INFO    ] time= 28/10/2026 21:46:19
[2026-10-28 21:46:19,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:46:19,807.807 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:46:19,970.970 INFO    ] No existing commands found in stream
[2026-10-28 21:46:24,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:46:24,986.986 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-28 21:46:27,018.018 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:46:27,021.021 INFO    ] Checking for system updates...
[2026-10-28 21:46:27,057.057 INFO    ] 200
[2026-10-28 21:46:27,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:46:27,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:46:27,114.114 INFO    ] No update needed
[2026-10-28 21:46:27,117.117 INFO    ] Checking for camera pi updates...
[2026-10-28 21:46:27,151.151 INFO    ] 200
[2026-10-28 21:46:27,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:46:27,199.199 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:46:27,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:46:27,290.290 INFO    ] No camera update needed
[2026-10-28 21:46:27,293.293 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:46:27,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:46:27,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:46:27,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:46:29,345.345 INFO    ] ================================================
[2026-10-28 21:46:29,360.360 INFO    ] Launching Daemon at Wed Oct 28 21:46:29 IST 2026
[2026-10-28 21:46:29,370.370 INFO    ] ================================================
[2026-10-28 21:46:29,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:46:29
[2026-10-28 21:46:30,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:46:30,945.945 INFO    ] Initializing speech engine...
[2026-10-28 21:46:30,960.960 INFO    ] 2026-10-28 21:46:30
[2026-10-28 21:46:31,235.235 INFO    ] 2026-10-28 21:46:31
[2026-10-28 21:46:31,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:46:31,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:46:31,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:46:31,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:46:31,814.814 INFO    ] time= 28/10/2026 21:46:31
[2026-10-28 21:46:31,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:46:31,855.855 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:46:31,977.977 INFO    ] No existing commands found in stream
[2026-10-28 21:46:37,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:46:37,009.009 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-28 21:46:39,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:46:39,608.608 INFO    ] Checking for system updates...
[2026-10-28 21:46:39,647.647 INFO    ] 200
[2026-10-28 21:46:39,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:46:39,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:46:39,716.716 INFO    ] No update needed
[2026-10-28 21:46:39,719.719 INFO    ] Checking for camera pi updates...
[2026-10-28 21:46:39,758.758 INFO    ] 200
[2026-10-28 21:46:39,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:46:39,801.801 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:46:39,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:46:39,887.887 INFO    ] No camera update needed
[2026-10-28 21:46:39,889.889 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:46:39,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:46:39,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:46:39,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:46:41,945.945 INFO    ] ================================================
[2026-10-28 21:46:41,960.960 INFO    ] Launching Daemon at Wed Oct 28 21:46:41 IST 2026
[2026-10-28 21:46:41,970.970 INFO    ] ================================================
[2026-10-28 21:46:42,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:46:42
[2026-10-28 21:46:43,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:46:43,378.378 INFO    ] Initializing speech engine...
[2026-10-28 21:46:43,387.387 INFO    ] 2026-10-28 21:46:43
[2026-10-28 21:46:43,676.676 INFO    ] 2026-10-28 21:46:43
[2026-10-28 21:46:43,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:46:43,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:46:44,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:46:44,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:46:44,293.293 INFO    ] time= 28/10/2026 21:46:44
[2026-10-28 21:46:44,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:46:44,315.315 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:46:44,430.430 INFO    ] No existing commands found in stream
[2026-10-28 21:46:49,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:46:49,458.458 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 21:46:51,631.631 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:46:51,634.634 INFO    ] Checking for system updates...
[2026-10-28 21:46:51,670.670 INFO    ] 200
[2026-10-28 21:46:51,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:46:51,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:46:51,730.730 INFO    ] No update needed
[2026-10-28 21:46:51,732.732 INFO    ] Checking for camera pi updates...
[2026-10-28 21:46:51,770.770 INFO    ] 200
[2026-10-28 21:46:51,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:46:51,813.813 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:46:51,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:46:51,919.919 INFO    ] No camera update needed
[2026-10-28 21:46:51,922.922 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:46:51,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:46:51,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:46:51,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:46:53,975.975 INFO    ] ================================================
[2026-10-28 21:46:53,989.989 INFO    ] Launching Daemon at Wed Oct 28 21:46:53 IST 2026
[2026-10-28 21:46:54,000.000 INFO    ] ================================================
[2026-10-28 21:46:54,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:46:54
[2026-10-28 21:46:55,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:46:55,408.408 INFO    ] Initializing speech engine...
[2026-10-28 21:46:55,431.431 INFO    ] 2026-10-28 21:46:55
[2026-10-28 21:46:55,688.688 INFO    ] 2026-10-28 21:46:55
[2026-10-28 21:46:55,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:46:55,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:46:55,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:46:56,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:46:56,264.264 INFO    ] time= 28/10/2026 21:46:56
[2026-10-28 21:46:56,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:46:56,288.288 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:46:56,423.423 INFO    ] No existing commands found in stream
[2026-10-28 21:47:01,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:47:01,451.451 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 21:47:04,001.001 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:47:04,004.004 INFO    ] Checking for system updates...
[2026-10-28 21:47:04,040.040 INFO    ] 200
[2026-10-28 21:47:04,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:47:04,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:47:04,097.097 INFO    ] No update needed
[2026-10-28 21:47:04,100.100 INFO    ] Checking for camera pi updates...
[2026-10-28 21:47:04,134.134 INFO    ] 200
[2026-10-28 21:47:04,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:47:04,181.181 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:47:04,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:47:04,264.264 INFO    ] No camera update needed
[2026-10-28 21:47:04,266.266 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:47:04,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:47:04,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:47:04,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:47:06,319.319 INFO    ] ================================================
[2026-10-28 21:47:06,335.335 INFO    ] Launching Daemon at Wed Oct 28 21:47:06 IST 2026
[2026-10-28 21:47:06,345.345 INFO    ] ================================================
[2026-10-28 21:47:06,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:47:06
[2026-10-28 21:47:07,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:47:07,791.791 INFO    ] Initializing speech engine...
[2026-10-28 21:47:07,800.800 INFO    ] 2026-10-28 21:47:07
[2026-10-28 21:47:08,052.052 INFO    ] 2026-10-28 21:47:08
[2026-10-28 21:47:08,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:47:08,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:47:08,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:47:08,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:47:08,610.610 INFO    ] time= 28/10/2026 21:47:08
[2026-10-28 21:47:08,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:47:08,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:47:08,809.809 INFO    ] No existing commands found in stream
[2026-10-28 21:47:13,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:47:13,847.847 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-28 21:47:16,892.892 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:47:16,895.895 INFO    ] Checking for system updates...
[2026-10-28 21:47:16,930.930 INFO    ] 200
[2026-10-28 21:47:16,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:47:16,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:47:16,988.988 INFO    ] No update needed
[2026-10-28 21:47:16,990.990 INFO    ] Checking for camera pi updates...
[2026-10-28 21:47:17,027.027 INFO    ] 200
[2026-10-28 21:47:17,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:47:17,075.075 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:47:17,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:47:17,148.148 INFO    ] No camera update needed
[2026-10-28 21:47:17,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:47:17,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:47:17,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:47:17,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:47:19,206.206 INFO    ] ================================================
[2026-10-28 21:47:19,221.221 INFO    ] Launching Daemon at Wed Oct 28 21:47:19 IST 2026
[2026-10-28 21:47:19,232.232 INFO    ] ================================================
[2026-10-28 21:47:19,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:47:19
[2026-10-28 21:47:20,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:47:20,844.844 INFO    ] Initializing speech engine...
[2026-10-28 21:47:20,855.855 INFO    ] 2026-10-28 21:47:20
[2026-10-28 21:47:21,144.144 INFO    ] 2026-10-28 21:47:21
[2026-10-28 21:47:21,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:47:21,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:47:21,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:47:21,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:47:21,726.726 INFO    ] time= 28/10/2026 21:47:21
[2026-10-28 21:47:21,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:47:21,763.763 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:47:21,898.898 INFO    ] No existing commands found in stream
[2026-10-28 21:47:26,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:47:26,914.914 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-28 21:47:28,014.014 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:47:28,017.017 INFO    ] Checking for system updates...
[2026-10-28 21:47:28,060.060 INFO    ] 200
[2026-10-28 21:47:28,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:47:28,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:47:28,121.121 INFO    ] No update needed
[2026-10-28 21:47:28,124.124 INFO    ] Checking for camera pi updates...
[2026-10-28 21:47:28,159.159 INFO    ] 200
[2026-10-28 21:47:28,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:47:28,207.207 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:47:28,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:47:28,306.306 INFO    ] No camera update needed
[2026-10-28 21:47:28,308.308 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:47:28,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:47:28,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:47:28,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:47:30,365.365 INFO    ] ================================================
[2026-10-28 21:47:30,381.381 INFO    ] Launching Daemon at Wed Oct 28 21:47:30 IST 2026
[2026-10-28 21:47:30,392.392 INFO    ] ================================================
[2026-10-28 21:47:30,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:47:30
[2026-10-28 21:47:31,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:47:31,869.869 INFO    ] Initializing speech engine...
[2026-10-28 21:47:31,878.878 INFO    ] 2026-10-28 21:47:31
[2026-10-28 21:47:32,167.167 INFO    ] 2026-10-28 21:47:32
[2026-10-28 21:47:32,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:47:32,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:47:32,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:47:32,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:47:32,737.737 INFO    ] time= 28/10/2026 21:47:32
[2026-10-28 21:47:32,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:47:32,853.853 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:47:33,018.018 INFO    ] No existing commands found in stream
[2026-10-28 21:47:38,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:47:38,037.037 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-10-28 21:47:43,915.915 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:47:43,918.918 INFO    ] Checking for system updates...
[2026-10-28 21:47:43,957.957 INFO    ] 200
[2026-10-28 21:47:43,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:47:44,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:47:44,015.015 INFO    ] No update needed
[2026-10-28 21:47:44,017.017 INFO    ] Checking for camera pi updates...
[2026-10-28 21:47:44,050.050 INFO    ] 200
[2026-10-28 21:47:44,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:47:44,097.097 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:47:44,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:47:44,178.178 INFO    ] No camera update needed
[2026-10-28 21:47:44,181.181 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:47:44,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:47:44,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:47:44,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:47:46,233.233 INFO    ] ================================================
[2026-10-28 21:47:46,249.249 INFO    ] Launching Daemon at Wed Oct 28 21:47:46 IST 2026
[2026-10-28 21:47:46,260.260 INFO    ] ================================================
[2026-10-28 21:47:46,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:47:46
[2026-10-28 21:47:47,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:47:47,857.857 INFO    ] Initializing speech engine...
[2026-10-28 21:47:47,865.865 INFO    ] 2026-10-28 21:47:47
[2026-10-28 21:47:48,135.135 INFO    ] 2026-10-28 21:47:48
[2026-10-28 21:47:48,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:47:48,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:47:48,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:47:48,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:47:48,699.699 INFO    ] time= 28/10/2026 21:47:48
[2026-10-28 21:47:48,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:47:48,735.735 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:47:48,857.857 INFO    ] No existing commands found in stream
[2026-10-28 21:47:53,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:47:53,891.891 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-28 21:47:55,995.995 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:47:55,998.998 INFO    ] Checking for system updates...
[2026-10-28 21:47:56,035.035 INFO    ] 200
[2026-10-28 21:47:56,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:47:56,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:47:56,099.099 INFO    ] No update needed
[2026-10-28 21:47:56,102.102 INFO    ] Checking for camera pi updates...
[2026-10-28 21:47:56,139.139 INFO    ] 200
[2026-10-28 21:47:56,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:47:56,187.187 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:47:56,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:47:56,296.296 INFO    ] No camera update needed
[2026-10-28 21:47:56,299.299 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:47:56,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:47:56,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:47:56,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:47:58,355.355 INFO    ] ================================================
[2026-10-28 21:47:58,371.371 INFO    ] Launching Daemon at Wed Oct 28 21:47:58 IST 2026
[2026-10-28 21:47:58,382.382 INFO    ] ================================================
[2026-10-28 21:47:58,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:47:58
[2026-10-28 21:47:59,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:47:59,842.842 INFO    ] Initializing speech engine...
[2026-10-28 21:47:59,850.850 INFO    ] 2026-10-28 21:47:59
[2026-10-28 21:48:00,123.123 INFO    ] 2026-10-28 21:48:00
[2026-10-28 21:48:00,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:48:00,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:48:00,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:48:00,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:48:00,661.661 INFO    ] time= 28/10/2026 21:48:00
[2026-10-28 21:48:00,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:48:00,707.707 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:48:00,838.838 INFO    ] No existing commands found in stream
[2026-10-28 21:48:05,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:48:05,866.866 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-28 21:48:09,054.054 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:48:09,057.057 INFO    ] Checking for system updates...
[2026-10-28 21:48:09,093.093 INFO    ] 200
[2026-10-28 21:48:09,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:48:09,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:48:09,151.151 INFO    ] No update needed
[2026-10-28 21:48:09,153.153 INFO    ] Checking for camera pi updates...
[2026-10-28 21:48:09,187.187 INFO    ] 200
[2026-10-28 21:48:09,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:48:09,234.234 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:48:09,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:48:09,304.304 INFO    ] No camera update needed
[2026-10-28 21:48:09,306.306 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:48:09,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:48:09,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:48:09,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:48:11,359.359 INFO    ] ================================================
[2026-10-28 21:48:11,376.376 INFO    ] Launching Daemon at Wed Oct 28 21:48:11 IST 2026
[2026-10-28 21:48:11,387.387 INFO    ] ================================================
[2026-10-28 21:48:11,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:48:11
[2026-10-28 21:48:12,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:48:12,852.852 INFO    ] Initializing speech engine...
[2026-10-28 21:48:12,861.861 INFO    ] 2026-10-28 21:48:12
[2026-10-28 21:48:13,131.131 INFO    ] 2026-10-28 21:48:13
[2026-10-28 21:48:13,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:48:13,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:48:13,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:48:13,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:48:13,758.758 INFO    ] time= 28/10/2026 21:48:13
[2026-10-28 21:48:13,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:48:13,782.782 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:48:13,912.912 INFO    ] No existing commands found in stream
[2026-10-28 21:48:18,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:48:18,941.941 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-28 21:48:20,512.512 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:48:20,515.515 INFO    ] Checking for system updates...
[2026-10-28 21:48:20,551.551 INFO    ] 200
[2026-10-28 21:48:20,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:48:20,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:48:20,608.608 INFO    ] No update needed
[2026-10-28 21:48:20,610.610 INFO    ] Checking for camera pi updates...
[2026-10-28 21:48:20,647.647 INFO    ] 200
[2026-10-28 21:48:20,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:48:20,689.689 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:48:20,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:48:20,768.768 INFO    ] No camera update needed
[2026-10-28 21:48:20,771.771 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:48:20,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:48:20,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:48:20,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:48:22,824.824 INFO    ] ================================================
[2026-10-28 21:48:22,839.839 INFO    ] Launching Daemon at Wed Oct 28 21:48:22 IST 2026
[2026-10-28 21:48:22,850.850 INFO    ] ================================================
[2026-10-28 21:48:23,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:48:23
[2026-10-28 21:48:24,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:48:24,410.410 INFO    ] Initializing speech engine...
[2026-10-28 21:48:24,425.425 INFO    ] 2026-10-28 21:48:24
[2026-10-28 21:48:24,696.696 INFO    ] 2026-10-28 21:48:24
[2026-10-28 21:48:24,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:48:25,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:48:25,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:48:25,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:48:25,327.327 INFO    ] time= 28/10/2026 21:48:25
[2026-10-28 21:48:25,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:48:25,351.351 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:48:25,473.473 INFO    ] No existing commands found in stream
[2026-10-28 21:48:30,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:48:30,496.496 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 21:48:33,175.175 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:48:33,178.178 INFO    ] Checking for system updates...
[2026-10-28 21:48:33,213.213 INFO    ] 200
[2026-10-28 21:48:33,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:48:33,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:48:33,270.270 INFO    ] No update needed
[2026-10-28 21:48:33,272.272 INFO    ] Checking for camera pi updates...
[2026-10-28 21:48:33,306.306 INFO    ] 200
[2026-10-28 21:48:33,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:48:33,350.350 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:48:33,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:48:33,445.445 INFO    ] No camera update needed
[2026-10-28 21:48:33,517.517 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:48:33,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:48:33,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:48:33,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:48:35,571.571 INFO    ] ================================================
[2026-10-28 21:48:35,586.586 INFO    ] Launching Daemon at Wed Oct 28 21:48:35 IST 2026
[2026-10-28 21:48:35,597.597 INFO    ] ================================================
[2026-10-28 21:48:36,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:48:36
[2026-10-28 21:48:36,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:48:37,024.024 INFO    ] Initializing speech engine...
[2026-10-28 21:48:37,044.044 INFO    ] 2026-10-28 21:48:37
[2026-10-28 21:48:37,325.325 INFO    ] 2026-10-28 21:48:37
[2026-10-28 21:48:37,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:48:37,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:48:37,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:48:37,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:48:37,855.855 INFO    ] time= 28/10/2026 21:48:37
[2026-10-28 21:48:37,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:48:37,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:48:38,103.103 INFO    ] No existing commands found in stream
[2026-10-28 21:48:43,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:48:43,136.136 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 21:48:45,274.274 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:48:45,277.277 INFO    ] Checking for system updates...
[2026-10-28 21:48:45,314.314 INFO    ] 200
[2026-10-28 21:48:45,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:48:45,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:48:45,373.373 INFO    ] No update needed
[2026-10-28 21:48:45,376.376 INFO    ] Checking for camera pi updates...
[2026-10-28 21:48:45,410.410 INFO    ] 200
[2026-10-28 21:48:45,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:48:45,460.460 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:48:45,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:48:45,565.565 INFO    ] No camera update needed
[2026-10-28 21:48:45,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:48:45,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:48:45,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:48:45,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:48:47,622.622 INFO    ] ================================================
[2026-10-28 21:48:47,637.637 INFO    ] Launching Daemon at Wed Oct 28 21:48:47 IST 2026
[2026-10-28 21:48:47,648.648 INFO    ] ================================================
[2026-10-28 21:48:48,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:48:48
[2026-10-28 21:48:48,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:48:49,261.261 INFO    ] Initializing speech engine...
[2026-10-28 21:48:49,267.267 INFO    ] 2026-10-28 21:48:49
[2026-10-28 21:48:49,555.555 INFO    ] 2026-10-28 21:48:49
[2026-10-28 21:48:49,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:48:49,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:48:49,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:48:50,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:48:50,253.253 INFO    ] time= 28/10/2026 21:48:50
[2026-10-28 21:48:50,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:48:50,345.345 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:48:50,492.492 INFO    ] No existing commands found in stream
[2026-10-28 21:48:55,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:48:55,508.508 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-28 21:48:59,634.634 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:48:59,637.637 INFO    ] Checking for system updates...
[2026-10-28 21:48:59,672.672 INFO    ] 200
[2026-10-28 21:48:59,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:48:59,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:48:59,736.736 INFO    ] No update needed
[2026-10-28 21:48:59,738.738 INFO    ] Checking for camera pi updates...
[2026-10-28 21:48:59,771.771 INFO    ] 200
[2026-10-28 21:48:59,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:48:59,814.814 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:48:59,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:48:59,895.895 INFO    ] No camera update needed
[2026-10-28 21:48:59,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:48:59,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:48:59,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:48:59,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:49:01,955.955 INFO    ] ================================================
[2026-10-28 21:49:02,997.997 INFO    ] Launching Daemon at Wed Oct 28 21:49:01 IST 2026
[2026-10-28 21:49:02,020.020 INFO    ] ================================================
[2026-10-28 21:49:02,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:49:02
[2026-10-28 21:49:03,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:49:03,590.590 INFO    ] Initializing speech engine...
[2026-10-28 21:49:03,614.614 INFO    ] 2026-10-28 21:49:03
[2026-10-28 21:49:03,906.906 INFO    ] 2026-10-28 21:49:03
[2026-10-28 21:49:03,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:49:04,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:49:04,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:49:04,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:49:04,511.511 INFO    ] time= 28/10/2026 21:49:04
[2026-10-28 21:49:04,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:49:04,533.533 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:49:04,671.671 INFO    ] No existing commands found in stream
[2026-10-28 21:49:09,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:49:09,693.693 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-28 21:49:13,448.448 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:49:13,450.450 INFO    ] Checking for system updates...
[2026-10-28 21:49:13,486.486 INFO    ] 200
[2026-10-28 21:49:13,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:49:13,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:49:13,546.546 INFO    ] No update needed
[2026-10-28 21:49:13,549.549 INFO    ] Checking for camera pi updates...
[2026-10-28 21:49:13,584.584 INFO    ] 200
[2026-10-28 21:49:13,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:49:13,628.628 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:49:13,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:49:13,821.821 INFO    ] No camera update needed
[2026-10-28 21:49:13,824.824 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:49:13,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:49:13,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:49:13,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:49:15,880.880 INFO    ] ================================================
[2026-10-28 21:49:15,896.896 INFO    ] Launching Daemon at Wed Oct 28 21:49:15 IST 2026
[2026-10-28 21:49:15,908.908 INFO    ] ================================================
[2026-10-28 21:49:16,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:49:16
[2026-10-28 21:49:17,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:49:17,478.478 INFO    ] Initializing speech engine...
[2026-10-28 21:49:17,490.490 INFO    ] 2026-10-28 21:49:17
[2026-10-28 21:49:17,767.767 INFO    ] 2026-10-28 21:49:17
[2026-10-28 21:49:17,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:49:18,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:49:18,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:49:18,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:49:18,327.327 INFO    ] time= 28/10/2026 21:49:18
[2026-10-28 21:49:18,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:49:18,362.362 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:49:18,462.462 INFO    ] No existing commands found in stream
[2026-10-28 21:49:23,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:49:23,480.480 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-28 21:49:25,081.081 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:49:25,084.084 INFO    ] Checking for system updates...
[2026-10-28 21:49:25,120.120 INFO    ] 200
[2026-10-28 21:49:25,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:49:25,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:49:25,180.180 INFO    ] No update needed
[2026-10-28 21:49:25,186.186 INFO    ] Checking for camera pi updates...
[2026-10-28 21:49:25,231.231 INFO    ] 200
[2026-10-28 21:49:25,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:49:25,274.274 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:49:25,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:49:25,365.365 INFO    ] No camera update needed
[2026-10-28 21:49:25,367.367 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:49:25,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:49:25,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:49:25,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:49:27,421.421 INFO    ] ================================================
[2026-10-28 21:49:27,436.436 INFO    ] Launching Daemon at Wed Oct 28 21:49:27 IST 2026
[2026-10-28 21:49:27,447.447 INFO    ] ================================================
[2026-10-28 21:49:28,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:49:28
[2026-10-28 21:49:28,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:49:29,025.025 INFO    ] Initializing speech engine...
[2026-10-28 21:49:29,033.033 INFO    ] 2026-10-28 21:49:29
[2026-10-28 21:49:29,302.302 INFO    ] 2026-10-28 21:49:29
[2026-10-28 21:49:29,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:49:29,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:49:29,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:49:29,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:49:29,868.868 INFO    ] time= 28/10/2026 21:49:29
[2026-10-28 21:49:29,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:49:29,907.907 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:49:30,035.035 INFO    ] No existing commands found in stream
[2026-10-28 21:49:35,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:49:35,074.074 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-28 21:49:39,036.036 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:49:39,039.039 INFO    ] Checking for system updates...
[2026-10-28 21:49:39,079.079 INFO    ] 200
[2026-10-28 21:49:39,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:49:39,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:49:39,139.139 INFO    ] No update needed
[2026-10-28 21:49:39,142.142 INFO    ] Checking for camera pi updates...
[2026-10-28 21:49:39,176.176 INFO    ] 200
[2026-10-28 21:49:39,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:49:39,220.220 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:49:39,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:49:39,274.274 INFO    ] No camera update needed
[2026-10-28 21:49:39,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:49:39,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:49:39,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:49:39,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:49:41,334.334 INFO    ] ================================================
[2026-10-28 21:49:41,350.350 INFO    ] Launching Daemon at Wed Oct 28 21:49:41 IST 2026
[2026-10-28 21:49:41,362.362 INFO    ] ================================================
[2026-10-28 21:49:41,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:49:41
[2026-10-28 21:49:42,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:49:42,803.803 INFO    ] Initializing speech engine...
[2026-10-28 21:49:42,823.823 INFO    ] 2026-10-28 21:49:42
[2026-10-28 21:49:43,094.094 INFO    ] 2026-10-28 21:49:43
[2026-10-28 21:49:43,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:49:43,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:49:43,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:49:43,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:49:43,730.730 INFO    ] time= 28/10/2026 21:49:43
[2026-10-28 21:49:43,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:49:43,758.758 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:49:43,871.871 INFO    ] No existing commands found in stream
[2026-10-28 21:49:48,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:49:48,889.889 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-28 21:49:49,856.856 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:49:49,859.859 INFO    ] Checking for system updates...
[2026-10-28 21:49:49,896.896 INFO    ] 200
[2026-10-28 21:49:49,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:49:49,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:49:49,962.962 INFO    ] No update needed
[2026-10-28 21:49:49,965.965 INFO    ] Checking for camera pi updates...
[2026-10-28 21:49:50,003.003 INFO    ] 200
[2026-10-28 21:49:50,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:49:50,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:49:50,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:49:50,134.134 INFO    ] No camera update needed
[2026-10-28 21:49:50,137.137 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:49:50,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:49:50,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:49:50,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:49:52,194.194 INFO    ] ================================================
[2026-10-28 21:49:52,209.209 INFO    ] Launching Daemon at Wed Oct 28 21:49:52 IST 2026
[2026-10-28 21:49:52,220.220 INFO    ] ================================================
[2026-10-28 21:49:52,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:49:52
[2026-10-28 21:49:53,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:49:53,724.724 INFO    ] Initializing speech engine...
[2026-10-28 21:49:53,748.748 INFO    ] 2026-10-28 21:49:53
[2026-10-28 21:49:54,015.015 INFO    ] 2026-10-28 21:49:54
[2026-10-28 21:49:54,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:49:54,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:49:54,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:49:54,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:49:54,623.623 INFO    ] time= 28/10/2026 21:49:54
[2026-10-28 21:49:54,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:49:54,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:49:54,805.805 INFO    ] No existing commands found in stream
[2026-10-28 21:49:59,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:49:59,844.844 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-28 21:50:08,272.272 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:50:08,275.275 INFO    ] Checking for system updates...
[2026-10-28 21:50:08,309.309 INFO    ] 200
[2026-10-28 21:50:08,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:50:08,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:50:08,366.366 INFO    ] No update needed
[2026-10-28 21:50:08,368.368 INFO    ] Checking for camera pi updates...
[2026-10-28 21:50:08,401.401 INFO    ] 200
[2026-10-28 21:50:08,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:50:08,444.444 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:50:08,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:50:08,502.502 INFO    ] No camera update needed
[2026-10-28 21:50:08,505.505 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:50:08,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:50:08,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:50:08,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:50:10,558.558 INFO    ] ================================================
[2026-10-28 21:50:10,574.574 INFO    ] Launching Daemon at Wed Oct 28 21:50:10 IST 2026
[2026-10-28 21:50:10,585.585 INFO    ] ================================================
[2026-10-28 21:50:11,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:50:11
[2026-10-28 21:50:11,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:50:12,036.036 INFO    ] Initializing speech engine...
[2026-10-28 21:50:12,045.045 INFO    ] 2026-10-28 21:50:12
[2026-10-28 21:50:12,309.309 INFO    ] 2026-10-28 21:50:12
[2026-10-28 21:50:12,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:50:12,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:50:12,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:50:12,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:50:12,855.855 INFO    ] time= 28/10/2026 21:50:12
[2026-10-28 21:50:12,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:50:12,878.878 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:50:12,995.995 INFO    ] No existing commands found in stream
[2026-10-28 21:50:18,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:50:18,019.019 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-28 21:50:22,474.474 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:50:22,476.476 INFO    ] Checking for system updates...
[2026-10-28 21:50:22,512.512 INFO    ] 200
[2026-10-28 21:50:22,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:50:22,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:50:22,571.571 INFO    ] No update needed
[2026-10-28 21:50:22,574.574 INFO    ] Checking for camera pi updates...
[2026-10-28 21:50:22,608.608 INFO    ] 200
[2026-10-28 21:50:22,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:50:22,655.655 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:50:22,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:50:22,764.764 INFO    ] No camera update needed
[2026-10-28 21:50:22,766.766 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:50:22,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:50:22,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:50:22,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:50:24,819.819 INFO    ] ================================================
[2026-10-28 21:50:24,835.835 INFO    ] Launching Daemon at Wed Oct 28 21:50:24 IST 2026
[2026-10-28 21:50:24,846.846 INFO    ] ================================================
[2026-10-28 21:50:25,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:50:25
[2026-10-28 21:50:26,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:50:26,430.430 INFO    ] Initializing speech engine...
[2026-10-28 21:50:26,445.445 INFO    ] 2026-10-28 21:50:26
[2026-10-28 21:50:26,754.754 INFO    ] 2026-10-28 21:50:26
[2026-10-28 21:50:26,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:50:27,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:50:27,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:50:27,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:50:27,429.429 INFO    ] time= 28/10/2026 21:50:27
[2026-10-28 21:50:27,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:50:27,527.527 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:50:27,671.671 INFO    ] No existing commands found in stream
[2026-10-28 21:50:32,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:50:32,695.695 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-10-28 21:50:36,835.835 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:50:36,838.838 INFO    ] Checking for system updates...
[2026-10-28 21:50:36,875.875 INFO    ] 200
[2026-10-28 21:50:36,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:50:36,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:50:36,935.935 INFO    ] No update needed
[2026-10-28 21:50:36,937.937 INFO    ] Checking for camera pi updates...
[2026-10-28 21:50:36,974.974 INFO    ] 200
[2026-10-28 21:50:36,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:50:37,020.020 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:50:37,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:50:37,111.111 INFO    ] No camera update needed
[2026-10-28 21:50:37,113.113 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:50:37,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:50:37,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:50:37,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:50:39,167.167 INFO    ] ================================================
[2026-10-28 21:50:39,183.183 INFO    ] Launching Daemon at Wed Oct 28 21:50:39 IST 2026
[2026-10-28 21:50:39,194.194 INFO    ] ================================================
[2026-10-28 21:50:39,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:50:39
[2026-10-28 21:50:40,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:50:40,620.620 INFO    ] Initializing speech engine...
[2026-10-28 21:50:40,634.634 INFO    ] 2026-10-28 21:50:40
[2026-10-28 21:50:40,901.901 INFO    ] 2026-10-28 21:50:40
[2026-10-28 21:50:40,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:50:41,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:50:41,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:50:41,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:50:41,501.501 INFO    ] time= 28/10/2026 21:50:41
[2026-10-28 21:50:41,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:50:41,542.542 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:50:41,707.707 INFO    ] No existing commands found in stream
[2026-10-28 21:50:46,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:50:46,724.724 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-28 21:50:48,641.641 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:50:48,644.644 INFO    ] Checking for system updates...
[2026-10-28 21:50:48,686.686 INFO    ] 200
[2026-10-28 21:50:48,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:50:48,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:50:48,742.742 INFO    ] No update needed
[2026-10-28 21:50:48,745.745 INFO    ] Checking for camera pi updates...
[2026-10-28 21:50:48,778.778 INFO    ] 200
[2026-10-28 21:50:48,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:50:48,820.820 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:50:48,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:50:48,909.909 INFO    ] No camera update needed
[2026-10-28 21:50:48,911.911 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:50:48,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:50:48,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:50:48,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:50:50,965.965 INFO    ] ================================================
[2026-10-28 21:50:50,980.980 INFO    ] Launching Daemon at Wed Oct 28 21:50:50 IST 2026
[2026-10-28 21:50:50,991.991 INFO    ] ================================================
[2026-10-28 21:50:51,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:50:51
[2026-10-28 21:50:52,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:50:52,445.445 INFO    ] Initializing speech engine...
[2026-10-28 21:50:52,454.454 INFO    ] 2026-10-28 21:50:52
[2026-10-28 21:50:52,703.703 INFO    ] 2026-10-28 21:50:52
[2026-10-28 21:50:52,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:50:53,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:50:53,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:50:53,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:50:53,262.262 INFO    ] time= 28/10/2026 21:50:53
[2026-10-28 21:50:53,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:50:53,310.310 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:50:53,440.440 INFO    ] No existing commands found in stream
[2026-10-28 21:50:58,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:50:58,473.473 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-10-28 21:50:59,294.294 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:50:59,297.297 INFO    ] Checking for system updates...
[2026-10-28 21:50:59,333.333 INFO    ] 200
[2026-10-28 21:50:59,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:50:59,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:50:59,392.392 INFO    ] No update needed
[2026-10-28 21:50:59,394.394 INFO    ] Checking for camera pi updates...
[2026-10-28 21:50:59,430.430 INFO    ] 200
[2026-10-28 21:50:59,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:50:59,473.473 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:50:59,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:50:59,540.540 INFO    ] No camera update needed
[2026-10-28 21:50:59,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:50:59,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:50:59,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:50:59,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:51:01,608.608 INFO    ] ================================================
[2026-10-28 21:51:01,639.639 INFO    ] Launching Daemon at Wed Oct 28 21:51:01 IST 2026
[2026-10-28 21:51:01,672.672 INFO    ] ================================================
[2026-10-28 21:51:02,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:51:02
[2026-10-28 21:51:03,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:51:03,504.504 INFO    ] Initializing speech engine...
[2026-10-28 21:51:03,511.511 INFO    ] 2026-10-28 21:51:03
[2026-10-28 21:51:03,794.794 INFO    ] 2026-10-28 21:51:03
[2026-10-28 21:51:03,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:51:04,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:51:04,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:51:04,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:51:04,347.347 INFO    ] time= 28/10/2026 21:51:04
[2026-10-28 21:51:04,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:51:04,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:51:04,568.568 INFO    ] No existing commands found in stream
[2026-10-28 21:51:09,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:51:09,606.606 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-10-28 21:51:13,312.312 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:51:13,315.315 INFO    ] Checking for system updates...
[2026-10-28 21:51:13,351.351 INFO    ] 200
[2026-10-28 21:51:13,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:51:13,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:51:13,416.416 INFO    ] No update needed
[2026-10-28 21:51:13,418.418 INFO    ] Checking for camera pi updates...
[2026-10-28 21:51:13,455.455 INFO    ] 200
[2026-10-28 21:51:13,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:51:13,497.497 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:51:13,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:51:13,574.574 INFO    ] No camera update needed
[2026-10-28 21:51:13,577.577 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:51:13,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:51:13,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:51:13,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:51:15,633.633 INFO    ] ================================================
[2026-10-28 21:51:15,649.649 INFO    ] Launching Daemon at Wed Oct 28 21:51:15 IST 2026
[2026-10-28 21:51:15,660.660 INFO    ] ================================================
[2026-10-28 21:51:16,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:51:16
[2026-10-28 21:51:16,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:51:17,268.268 INFO    ] Initializing speech engine...
[2026-10-28 21:51:17,289.289 INFO    ] 2026-10-28 21:51:17
[2026-10-28 21:51:17,566.566 INFO    ] 2026-10-28 21:51:17
[2026-10-28 21:51:17,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:51:17,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:51:17,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:51:18,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:51:18,135.135 INFO    ] time= 28/10/2026 21:51:18
[2026-10-28 21:51:18,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:51:18,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:51:18,300.300 INFO    ] No existing commands found in stream
[2026-10-28 21:51:23,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:51:23,340.340 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 21:51:25,837.837 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:51:25,840.840 INFO    ] Checking for system updates...
[2026-10-28 21:51:25,877.877 INFO    ] 200
[2026-10-28 21:51:25,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:51:25,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:51:25,936.936 INFO    ] No update needed
[2026-10-28 21:51:25,938.938 INFO    ] Checking for camera pi updates...
[2026-10-28 21:51:25,981.981 INFO    ] 200
[2026-10-28 21:51:25,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:51:26,025.025 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:51:26,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:51:26,240.240 INFO    ] No camera update needed
[2026-10-28 21:51:26,243.243 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:51:26,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:51:26,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:51:26,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:51:28,297.297 INFO    ] ================================================
[2026-10-28 21:51:28,312.312 INFO    ] Launching Daemon at Wed Oct 28 21:51:28 IST 2026
[2026-10-28 21:51:28,323.323 INFO    ] ================================================
[2026-10-28 21:51:28,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:51:28
[2026-10-28 21:51:29,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:51:29,722.722 INFO    ] Initializing speech engine...
[2026-10-28 21:51:29,728.728 INFO    ] 2026-10-28 21:51:29
[2026-10-28 21:51:30,022.022 INFO    ] 2026-10-28 21:51:29
[2026-10-28 21:51:30,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:51:30,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:51:30,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:51:30,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:51:30,651.651 INFO    ] time= 28/10/2026 21:51:30
[2026-10-28 21:51:30,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:51:30,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:51:30,809.809 INFO    ] No existing commands found in stream
[2026-10-28 21:51:35,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:51:35,832.832 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 21:51:39,793.793 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:51:39,796.796 INFO    ] Checking for system updates...
[2026-10-28 21:51:39,835.835 INFO    ] 200
[2026-10-28 21:51:39,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:51:39,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:51:39,899.899 INFO    ] No update needed
[2026-10-28 21:51:39,901.901 INFO    ] Checking for camera pi updates...
[2026-10-28 21:51:39,934.934 INFO    ] 200
[2026-10-28 21:51:39,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:51:39,981.981 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:51:40,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:51:40,067.067 INFO    ] No camera update needed
[2026-10-28 21:51:40,069.069 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:51:40,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:51:40,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:51:40,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:51:42,122.122 INFO    ] ================================================
[2026-10-28 21:51:42,138.138 INFO    ] Launching Daemon at Wed Oct 28 21:51:42 IST 2026
[2026-10-28 21:51:42,148.148 INFO    ] ================================================
[2026-10-28 21:51:42,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:51:42
[2026-10-28 21:51:43,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:51:43,567.567 INFO    ] Initializing speech engine...
[2026-10-28 21:51:43,576.576 INFO    ] 2026-10-28 21:51:43
[2026-10-28 21:51:43,820.820 INFO    ] 2026-10-28 21:51:43
[2026-10-28 21:51:43,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:51:44,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:51:44,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:51:44,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:51:44,378.378 INFO    ] time= 28/10/2026 21:51:44
[2026-10-28 21:51:44,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:51:44,413.413 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:51:44,556.556 INFO    ] No existing commands found in stream
[2026-10-28 21:51:49,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:51:49,584.584 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-28 21:51:54,074.074 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:51:54,077.077 INFO    ] Checking for system updates...
[2026-10-28 21:51:54,114.114 INFO    ] 200
[2026-10-28 21:51:54,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:51:54,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:51:54,172.172 INFO    ] No update needed
[2026-10-28 21:51:54,175.175 INFO    ] Checking for camera pi updates...
[2026-10-28 21:51:54,209.209 INFO    ] 200
[2026-10-28 21:51:54,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:51:54,254.254 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:51:54,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:51:54,337.337 INFO    ] No camera update needed
[2026-10-28 21:51:54,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:51:54,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:51:54,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:51:54,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:51:56,396.396 INFO    ] ================================================
[2026-10-28 21:51:56,411.411 INFO    ] Launching Daemon at Wed Oct 28 21:51:56 IST 2026
[2026-10-28 21:51:56,422.422 INFO    ] ================================================
[2026-10-28 21:51:57,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:51:57
[2026-10-28 21:51:57,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:51:58,040.040 INFO    ] Initializing speech engine...
[2026-10-28 21:51:58,047.047 INFO    ] 2026-10-28 21:51:58
[2026-10-28 21:51:58,335.335 INFO    ] 2026-10-28 21:51:58
[2026-10-28 21:51:58,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:51:58,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:51:58,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:51:59,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:51:59,080.080 INFO    ] time= 28/10/2026 21:51:59
[2026-10-28 21:51:59,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:51:59,171.171 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:51:59,317.317 INFO    ] No existing commands found in stream
[2026-10-28 21:52:04,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:52:04,330.330 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-28 21:52:08,002.002 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:52:08,005.005 INFO    ] Checking for system updates...
[2026-10-28 21:52:08,042.042 INFO    ] 200
[2026-10-28 21:52:08,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:52:08,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:52:08,107.107 INFO    ] No update needed
[2026-10-28 21:52:08,110.110 INFO    ] Checking for camera pi updates...
[2026-10-28 21:52:08,143.143 INFO    ] 200
[2026-10-28 21:52:08,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:52:08,186.186 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:52:08,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:52:08,276.276 INFO    ] No camera update needed
[2026-10-28 21:52:08,279.279 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:52:08,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:52:08,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:52:08,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:52:10,331.331 INFO    ] ================================================
[2026-10-28 21:52:10,346.346 INFO    ] Launching Daemon at Wed Oct 28 21:52:10 IST 2026
[2026-10-28 21:52:10,356.356 INFO    ] ================================================
[2026-10-28 21:52:10,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:52:10
[2026-10-28 21:52:11,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:52:11,757.757 INFO    ] Initializing speech engine...
[2026-10-28 21:52:11,773.773 INFO    ] 2026-10-28 21:52:11
[2026-10-28 21:52:12,045.045 INFO    ] 2026-10-28 21:52:12
[2026-10-28 21:52:12,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:52:12,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:52:12,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:52:12,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:52:12,647.647 INFO    ] time= 28/10/2026 21:52:12
[2026-10-28 21:52:12,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:52:12,673.673 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:52:12,807.807 INFO    ] No existing commands found in stream
[2026-10-28 21:52:17,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:52:17,830.830 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-28 21:52:19,514.514 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:52:19,517.517 INFO    ] Checking for system updates...
[2026-10-28 21:52:19,556.556 INFO    ] 200
[2026-10-28 21:52:19,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:52:19,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:52:19,612.612 INFO    ] No update needed
[2026-10-28 21:52:19,615.615 INFO    ] Checking for camera pi updates...
[2026-10-28 21:52:19,650.650 INFO    ] 200
[2026-10-28 21:52:19,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:52:19,697.697 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:52:19,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:52:19,779.779 INFO    ] No camera update needed
[2026-10-28 21:52:19,781.781 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:52:19,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:52:19,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:52:19,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:52:21,833.833 INFO    ] ================================================
[2026-10-28 21:52:21,849.849 INFO    ] Launching Daemon at Wed Oct 28 21:52:21 IST 2026
[2026-10-28 21:52:21,859.859 INFO    ] ================================================
[2026-10-28 21:52:22,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:52:22
[2026-10-28 21:52:23,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:52:23,290.290 INFO    ] Initializing speech engine...
[2026-10-28 21:52:23,305.305 INFO    ] 2026-10-28 21:52:23
[2026-10-28 21:52:23,576.576 INFO    ] 2026-10-28 21:52:23
[2026-10-28 21:52:23,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:52:23,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:52:23,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:52:24,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:52:24,104.104 INFO    ] time= 28/10/2026 21:52:24
[2026-10-28 21:52:24,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:52:24,127.127 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:52:24,260.260 INFO    ] No existing commands found in stream
[2026-10-28 21:52:29,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:52:29,291.291 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-28 21:52:31,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:52:31,198.198 INFO    ] Checking for system updates...
[2026-10-28 21:52:31,233.233 INFO    ] 200
[2026-10-28 21:52:31,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:52:31,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:52:31,290.290 INFO    ] No update needed
[2026-10-28 21:52:31,292.292 INFO    ] Checking for camera pi updates...
[2026-10-28 21:52:31,327.327 INFO    ] 200
[2026-10-28 21:52:31,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:52:31,373.373 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:52:31,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:52:31,456.456 INFO    ] No camera update needed
[2026-10-28 21:52:31,458.458 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:52:31,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:52:31,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:52:31,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:52:33,512.512 INFO    ] ================================================
[2026-10-28 21:52:33,528.528 INFO    ] Launching Daemon at Wed Oct 28 21:52:33 IST 2026
[2026-10-28 21:52:33,539.539 INFO    ] ================================================
[2026-10-28 21:52:34,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:52:34
[2026-10-28 21:52:34,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:52:34,987.987 INFO    ] Initializing speech engine...
[2026-10-28 21:52:34,992.992 INFO    ] 2026-10-28 21:52:34
[2026-10-28 21:52:35,237.237 INFO    ] 2026-10-28 21:52:35
[2026-10-28 21:52:35,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:52:35,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:52:35,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:52:35,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:52:35,805.805 INFO    ] time= 28/10/2026 21:52:35
[2026-10-28 21:52:35,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:52:35,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:52:35,985.985 INFO    ] No existing commands found in stream
[2026-10-28 21:52:41,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:52:41,018.018 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-10-28 21:52:44,179.179 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:52:44,181.181 INFO    ] Checking for system updates...
[2026-10-28 21:52:44,220.220 INFO    ] 200
[2026-10-28 21:52:44,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:52:44,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:52:44,285.285 INFO    ] No update needed
[2026-10-28 21:52:44,287.287 INFO    ] Checking for camera pi updates...
[2026-10-28 21:52:44,322.322 INFO    ] 200
[2026-10-28 21:52:44,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:52:44,368.368 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:52:44,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:52:44,450.450 INFO    ] No camera update needed
[2026-10-28 21:52:44,453.453 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:52:44,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:52:44,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:52:44,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:52:46,507.507 INFO    ] ================================================
[2026-10-28 21:52:46,522.522 INFO    ] Launching Daemon at Wed Oct 28 21:52:46 IST 2026
[2026-10-28 21:52:46,533.533 INFO    ] ================================================
[2026-10-28 21:52:47,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:52:47
[2026-10-28 21:52:47,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:52:47,964.964 INFO    ] Initializing speech engine...
[2026-10-28 21:52:47,987.987 INFO    ] 2026-10-28 21:52:47
[2026-10-28 21:52:48,241.241 INFO    ] 2026-10-28 21:52:48
[2026-10-28 21:52:48,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:52:48,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:52:48,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:52:48,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:52:48,817.817 INFO    ] time= 28/10/2026 21:52:48
[2026-10-28 21:52:48,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:52:48,850.850 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:52:48,960.960 INFO    ] No existing commands found in stream
[2026-10-28 21:52:53,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:52:53,972.972 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-28 21:52:58,394.394 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:52:58,396.396 INFO    ] Checking for system updates...
[2026-10-28 21:52:58,432.432 INFO    ] 200
[2026-10-28 21:52:58,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:52:58,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:52:58,494.494 INFO    ] No update needed
[2026-10-28 21:52:58,496.496 INFO    ] Checking for camera pi updates...
[2026-10-28 21:52:58,532.532 INFO    ] 200
[2026-10-28 21:52:58,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:52:58,574.574 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:52:58,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:52:58,645.645 INFO    ] No camera update needed
[2026-10-28 21:52:58,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:52:58,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:52:58,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:52:58,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:53:00,702.702 INFO    ] ================================================
[2026-10-28 21:53:00,717.717 INFO    ] Launching Daemon at Wed Oct 28 21:53:00 IST 2026
[2026-10-28 21:53:00,728.728 INFO    ] ================================================
[2026-10-28 21:53:01,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:53:01
[2026-10-28 21:53:01,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:53:02,473.473 INFO    ] Initializing speech engine...
[2026-10-28 21:53:02,494.494 INFO    ] 2026-10-28 21:53:02
[2026-10-28 21:53:02,851.851 INFO    ] 2026-10-28 21:53:02
[2026-10-28 21:53:02,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:53:03,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:53:03,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:53:03,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:53:03,549.549 INFO    ] time= 28/10/2026 21:53:03
[2026-10-28 21:53:03,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:53:03,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:53:03,776.776 INFO    ] No existing commands found in stream
[2026-10-28 21:53:08,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:53:08,789.789 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 21:53:11,329.329 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:53:11,332.332 INFO    ] Checking for system updates...
[2026-10-28 21:53:11,368.368 INFO    ] 200
[2026-10-28 21:53:11,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:53:11,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:53:11,430.430 INFO    ] No update needed
[2026-10-28 21:53:11,433.433 INFO    ] Checking for camera pi updates...
[2026-10-28 21:53:11,466.466 INFO    ] 200
[2026-10-28 21:53:11,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:53:11,509.509 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:53:11,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:53:11,594.594 INFO    ] No camera update needed
[2026-10-28 21:53:11,596.596 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:53:11,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:53:11,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:53:11,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:53:13,649.649 INFO    ] ================================================
[2026-10-28 21:53:13,664.664 INFO    ] Launching Daemon at Wed Oct 28 21:53:13 IST 2026
[2026-10-28 21:53:13,676.676 INFO    ] ================================================
[2026-10-28 21:53:14,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:53:14
[2026-10-28 21:53:14,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:53:15,242.242 INFO    ] Initializing speech engine...
[2026-10-28 21:53:15,255.255 INFO    ] 2026-10-28 21:53:15
[2026-10-28 21:53:15,514.514 INFO    ] 2026-10-28 21:53:15
[2026-10-28 21:53:15,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:53:15,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:53:15,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:53:16,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:53:16,250.250 INFO    ] time= 28/10/2026 21:53:16
[2026-10-28 21:53:16,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:53:16,336.336 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:53:16,489.489 INFO    ] No existing commands found in stream
[2026-10-28 21:53:21,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:53:21,529.529 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 21:53:23,193.193 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:53:23,196.196 INFO    ] Checking for system updates...
[2026-10-28 21:53:23,232.232 INFO    ] 200
[2026-10-28 21:53:23,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:53:23,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:53:23,296.296 INFO    ] No update needed
[2026-10-28 21:53:23,299.299 INFO    ] Checking for camera pi updates...
[2026-10-28 21:53:23,334.334 INFO    ] 200
[2026-10-28 21:53:23,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:53:23,381.381 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:53:23,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:53:23,464.464 INFO    ] No camera update needed
[2026-10-28 21:53:23,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:53:23,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:53:23,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:53:23,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:53:25,522.522 INFO    ] ================================================
[2026-10-28 21:53:25,537.537 INFO    ] Launching Daemon at Wed Oct 28 21:53:25 IST 2026
[2026-10-28 21:53:25,548.548 INFO    ] ================================================
[2026-10-28 21:53:26,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:53:26
[2026-10-28 21:53:26,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:53:26,978.978 INFO    ] Initializing speech engine...
[2026-10-28 21:53:26,986.986 INFO    ] 2026-10-28 21:53:26
[2026-10-28 21:53:27,282.282 INFO    ] 2026-10-28 21:53:27
[2026-10-28 21:53:27,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:53:27,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:53:27,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:53:27,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:53:27,899.899 INFO    ] time= 28/10/2026 21:53:27
[2026-10-28 21:53:27,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:53:27,924.924 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:53:28,041.041 INFO    ] No existing commands found in stream
[2026-10-28 21:53:33,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:53:33,081.081 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-28 21:53:37,374.374 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:53:37,377.377 INFO    ] Checking for system updates...
[2026-10-28 21:53:37,416.416 INFO    ] 200
[2026-10-28 21:53:37,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:53:37,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:53:37,484.484 INFO    ] No update needed
[2026-10-28 21:53:37,487.487 INFO    ] Checking for camera pi updates...
[2026-10-28 21:53:37,521.521 INFO    ] 200
[2026-10-28 21:53:37,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:53:37,565.565 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:53:37,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:53:37,670.670 INFO    ] No camera update needed
[2026-10-28 21:53:37,672.672 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:53:37,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:53:37,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:53:37,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:53:39,726.726 INFO    ] ================================================
[2026-10-28 21:53:39,742.742 INFO    ] Launching Daemon at Wed Oct 28 21:53:39 IST 2026
[2026-10-28 21:53:39,754.754 INFO    ] ================================================
[2026-10-28 21:53:40,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:53:40
[2026-10-28 21:53:40,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:53:41,181.181 INFO    ] Initializing speech engine...
[2026-10-28 21:53:41,187.187 INFO    ] 2026-10-28 21:53:41
[2026-10-28 21:53:41,491.491 INFO    ] 2026-10-28 21:53:41
[2026-10-28 21:53:41,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:53:41,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:53:41,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:53:42,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:53:42,154.154 INFO    ] time= 28/10/2026 21:53:42
[2026-10-28 21:53:42,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:53:42,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:53:42,285.285 INFO    ] No existing commands found in stream
[2026-10-28 21:53:47,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:53:47,312.312 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-10-28 21:53:48,250.250 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:53:48,254.254 INFO    ] Checking for system updates...
[2026-10-28 21:53:48,293.293 INFO    ] 200
[2026-10-28 21:53:48,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:53:48,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:53:48,352.352 INFO    ] No update needed
[2026-10-28 21:53:48,354.354 INFO    ] Checking for camera pi updates...
[2026-10-28 21:53:48,391.391 INFO    ] 200
[2026-10-28 21:53:48,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:53:48,435.435 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:53:48,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:53:48,517.517 INFO    ] No camera update needed
[2026-10-28 21:53:48,520.520 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:53:48,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:53:48,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:53:48,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:53:50,575.575 INFO    ] ================================================
[2026-10-28 21:53:50,590.590 INFO    ] Launching Daemon at Wed Oct 28 21:53:50 IST 2026
[2026-10-28 21:53:50,602.602 INFO    ] ================================================
[2026-10-28 21:53:51,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:53:51
[2026-10-28 21:53:51,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:53:52,036.036 INFO    ] Initializing speech engine...
[2026-10-28 21:53:52,061.061 INFO    ] 2026-10-28 21:53:52
[2026-10-28 21:53:52,327.327 INFO    ] 2026-10-28 21:53:52
[2026-10-28 21:53:52,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:53:52,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:53:52,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:53:52,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:53:52,943.943 INFO    ] time= 28/10/2026 21:53:52
[2026-10-28 21:53:52,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:53:52,966.966 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:53:53,085.085 INFO    ] No existing commands found in stream
[2026-10-28 21:53:58,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:53:58,108.108 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-10-28 21:54:00,522.522 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:54:00,524.524 INFO    ] Checking for system updates...
[2026-10-28 21:54:00,562.562 INFO    ] 200
[2026-10-28 21:54:00,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:54:00,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:54:00,628.628 INFO    ] No update needed
[2026-10-28 21:54:00,631.631 INFO    ] Checking for camera pi updates...
[2026-10-28 21:54:00,667.667 INFO    ] 200
[2026-10-28 21:54:00,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:54:00,713.713 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:54:00,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:54:00,799.799 INFO    ] No camera update needed
[2026-10-28 21:54:00,802.802 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:54:00,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:54:00,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:54:00,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:54:02,860.860 INFO    ] ================================================
[2026-10-28 21:54:02,882.882 INFO    ] Launching Daemon at Wed Oct 28 21:54:02 IST 2026
[2026-10-28 21:54:02,894.894 INFO    ] ================================================
[2026-10-28 21:54:03,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:54:03
[2026-10-28 21:54:04,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:54:04,399.399 INFO    ] Initializing speech engine...
[2026-10-28 21:54:04,412.412 INFO    ] 2026-10-28 21:54:04
[2026-10-28 21:54:04,690.690 INFO    ] 2026-10-28 21:54:04
[2026-10-28 21:54:04,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:54:05,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:54:05,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:54:05,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:54:05,271.271 INFO    ] time= 28/10/2026 21:54:05
[2026-10-28 21:54:05,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:54:05,301.301 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:54:05,429.429 INFO    ] No existing commands found in stream
[2026-10-28 21:54:10,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:54:10,461.461 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 21:54:13,594.594 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:54:13,596.596 INFO    ] Checking for system updates...
[2026-10-28 21:54:13,632.632 INFO    ] 200
[2026-10-28 21:54:13,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:54:13,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:54:13,688.688 INFO    ] No update needed
[2026-10-28 21:54:13,691.691 INFO    ] Checking for camera pi updates...
[2026-10-28 21:54:13,724.724 INFO    ] 200
[2026-10-28 21:54:13,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:54:13,769.769 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:54:13,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:54:13,855.855 INFO    ] No camera update needed
[2026-10-28 21:54:13,858.858 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:54:13,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:54:13,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:54:13,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:54:15,910.910 INFO    ] ================================================
[2026-10-28 21:54:15,925.925 INFO    ] Launching Daemon at Wed Oct 28 21:54:15 IST 2026
[2026-10-28 21:54:15,935.935 INFO    ] ================================================
[2026-10-28 21:54:16,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:54:16
[2026-10-28 21:54:17,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:54:17,446.446 INFO    ] Initializing speech engine...
[2026-10-28 21:54:17,454.454 INFO    ] 2026-10-28 21:54:17
[2026-10-28 21:54:17,712.712 INFO    ] 2026-10-28 21:54:17
[2026-10-28 21:54:17,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:54:18,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:54:18,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:54:18,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:54:18,268.268 INFO    ] time= 28/10/2026 21:54:18
[2026-10-28 21:54:18,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:54:18,305.305 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:54:18,430.430 INFO    ] No existing commands found in stream
[2026-10-28 21:54:23,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:54:23,458.458 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-28 21:54:25,594.594 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:54:25,597.597 INFO    ] Checking for system updates...
[2026-10-28 21:54:25,633.633 INFO    ] 200
[2026-10-28 21:54:25,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:54:25,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:54:25,689.689 INFO    ] No update needed
[2026-10-28 21:54:25,691.691 INFO    ] Checking for camera pi updates...
[2026-10-28 21:54:25,725.725 INFO    ] 200
[2026-10-28 21:54:25,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:54:25,767.767 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:54:25,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:54:25,850.850 INFO    ] No camera update needed
[2026-10-28 21:54:25,853.853 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:54:25,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:54:25,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:54:25,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:54:27,907.907 INFO    ] ================================================
[2026-10-28 21:54:27,923.923 INFO    ] Launching Daemon at Wed Oct 28 21:54:27 IST 2026
[2026-10-28 21:54:27,934.934 INFO    ] ================================================
[2026-10-28 21:54:28,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:54:28
[2026-10-28 21:54:29,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:54:29,392.392 INFO    ] Initializing speech engine...
[2026-10-28 21:54:29,400.400 INFO    ] 2026-10-28 21:54:29
[2026-10-28 21:54:29,674.674 INFO    ] 2026-10-28 21:54:29
[2026-10-28 21:54:29,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:54:30,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:54:30,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:54:30,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:54:30,208.208 INFO    ] time= 28/10/2026 21:54:30
[2026-10-28 21:54:30,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:54:30,256.256 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:54:30,391.391 INFO    ] No existing commands found in stream
[2026-10-28 21:54:35,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:54:35,414.414 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-28 21:54:36,260.260 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:54:36,263.263 INFO    ] Checking for system updates...
[2026-10-28 21:54:36,298.298 INFO    ] 200
[2026-10-28 21:54:36,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:54:36,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:54:36,356.356 INFO    ] No update needed
[2026-10-28 21:54:36,359.359 INFO    ] Checking for camera pi updates...
[2026-10-28 21:54:36,392.392 INFO    ] 200
[2026-10-28 21:54:36,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:54:36,446.446 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:54:36,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:54:36,534.534 INFO    ] No camera update needed
[2026-10-28 21:54:36,536.536 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:54:36,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:54:36,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:54:36,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:54:38,590.590 INFO    ] ================================================
[2026-10-28 21:54:38,605.605 INFO    ] Launching Daemon at Wed Oct 28 21:54:38 IST 2026
[2026-10-28 21:54:38,617.617 INFO    ] ================================================
[2026-10-28 21:54:39,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:54:39
[2026-10-28 21:54:39,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:54:40,019.019 INFO    ] Initializing speech engine...
[2026-10-28 21:54:40,027.027 INFO    ] 2026-10-28 21:54:40
[2026-10-28 21:54:40,317.317 INFO    ] 2026-10-28 21:54:40
[2026-10-28 21:54:40,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:54:40,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:54:40,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:54:40,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:54:40,933.933 INFO    ] time= 28/10/2026 21:54:40
[2026-10-28 21:54:40,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:54:40,962.962 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:54:41,101.101 INFO    ] No existing commands found in stream
[2026-10-28 21:54:46,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:54:46,119.119 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 21:54:47,842.842 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:54:47,845.845 INFO    ] Checking for system updates...
[2026-10-28 21:54:47,880.880 INFO    ] 200
[2026-10-28 21:54:47,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:54:47,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:54:47,936.936 INFO    ] No update needed
[2026-10-28 21:54:47,939.939 INFO    ] Checking for camera pi updates...
[2026-10-28 21:54:47,975.975 INFO    ] 200
[2026-10-28 21:54:47,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:54:48,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:54:48,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:54:48,099.099 INFO    ] No camera update needed
[2026-10-28 21:54:48,101.101 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:54:48,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:54:48,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:54:48,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:54:50,154.154 INFO    ] ================================================
[2026-10-28 21:54:50,170.170 INFO    ] Launching Daemon at Wed Oct 28 21:54:50 IST 2026
[2026-10-28 21:54:50,181.181 INFO    ] ================================================
[2026-10-28 21:54:50,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:54:50
[2026-10-28 21:54:51,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:54:51,613.613 INFO    ] Initializing speech engine...
[2026-10-28 21:54:51,630.630 INFO    ] 2026-10-28 21:54:51
[2026-10-28 21:54:51,902.902 INFO    ] 2026-10-28 21:54:51
[2026-10-28 21:54:51,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:54:52,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:54:52,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:54:52,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:54:52,517.517 INFO    ] time= 28/10/2026 21:54:52
[2026-10-28 21:54:52,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:54:52,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:54:52,688.688 INFO    ] No existing commands found in stream
[2026-10-28 21:54:57,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:54:57,707.707 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-10-28 21:54:59,397.397 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:54:59,399.399 INFO    ] Checking for system updates...
[2026-10-28 21:54:59,436.436 INFO    ] 200
[2026-10-28 21:54:59,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:54:59,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:54:59,494.494 INFO    ] No update needed
[2026-10-28 21:54:59,497.497 INFO    ] Checking for camera pi updates...
[2026-10-28 21:54:59,531.531 INFO    ] 200
[2026-10-28 21:54:59,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:54:59,575.575 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:54:59,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:54:59,659.659 INFO    ] No camera update needed
[2026-10-28 21:54:59,662.662 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:54:59,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:54:59,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:54:59,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:55:01,748.748 INFO    ] ================================================
[2026-10-28 21:55:01,814.814 INFO    ] Launching Daemon at Wed Oct 28 21:55:01 IST 2026
[2026-10-28 21:55:01,846.846 INFO    ] ================================================
[2026-10-28 21:55:02,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:55:02
[2026-10-28 21:55:03,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:55:03,682.682 INFO    ] Initializing speech engine...
[2026-10-28 21:55:03,688.688 INFO    ] 2026-10-28 21:55:03
[2026-10-28 21:55:03,962.962 INFO    ] 2026-10-28 21:55:03
[2026-10-28 21:55:04,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:55:04,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:55:04,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:55:04,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:55:04,544.544 INFO    ] time= 28/10/2026 21:55:04
[2026-10-28 21:55:04,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:55:04,583.583 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:55:04,733.733 INFO    ] No existing commands found in stream
[2026-10-28 21:55:09,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:55:09,773.773 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-10-28 21:55:14,194.194 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:55:14,197.197 INFO    ] Checking for system updates...
[2026-10-28 21:55:14,236.236 INFO    ] 200
[2026-10-28 21:55:14,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:55:14,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:55:14,294.294 INFO    ] No update needed
[2026-10-28 21:55:14,296.296 INFO    ] Checking for camera pi updates...
[2026-10-28 21:55:14,329.329 INFO    ] 200
[2026-10-28 21:55:14,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:55:14,374.374 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:55:14,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:55:14,468.468 INFO    ] No camera update needed
[2026-10-28 21:55:14,470.470 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:55:14,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:55:14,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:55:14,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:55:16,524.524 INFO    ] ================================================
[2026-10-28 21:55:16,539.539 INFO    ] Launching Daemon at Wed Oct 28 21:55:16 IST 2026
[2026-10-28 21:55:16,549.549 INFO    ] ================================================
[2026-10-28 21:55:17,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:55:17
[2026-10-28 21:55:17,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:55:18,027.027 INFO    ] Initializing speech engine...
[2026-10-28 21:55:18,040.040 INFO    ] 2026-10-28 21:55:18
[2026-10-28 21:55:18,323.323 INFO    ] 2026-10-28 21:55:18
[2026-10-28 21:55:18,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:55:18,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:55:18,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:55:18,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:55:18,940.940 INFO    ] time= 28/10/2026 21:55:18
[2026-10-28 21:55:18,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:55:18,979.979 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:55:19,120.120 INFO    ] No existing commands found in stream
[2026-10-28 21:55:24,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:55:24,143.143 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 21:55:26,197.197 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:55:26,199.199 INFO    ] Checking for system updates...
[2026-10-28 21:55:26,235.235 INFO    ] 200
[2026-10-28 21:55:26,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:55:26,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:55:26,291.291 INFO    ] No update needed
[2026-10-28 21:55:26,294.294 INFO    ] Checking for camera pi updates...
[2026-10-28 21:55:26,327.327 INFO    ] 200
[2026-10-28 21:55:26,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:55:26,370.370 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:55:26,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:55:26,455.455 INFO    ] No camera update needed
[2026-10-28 21:55:26,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:55:26,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:55:26,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:55:26,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:55:28,510.510 INFO    ] ================================================
[2026-10-28 21:55:28,525.525 INFO    ] Launching Daemon at Wed Oct 28 21:55:28 IST 2026
[2026-10-28 21:55:28,540.540 INFO    ] ================================================
[2026-10-28 21:55:29,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:55:29
[2026-10-28 21:55:29,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:55:30,158.158 INFO    ] Initializing speech engine...
[2026-10-28 21:55:30,167.167 INFO    ] 2026-10-28 21:55:30
[2026-10-28 21:55:30,447.447 INFO    ] 2026-10-28 21:55:30
[2026-10-28 21:55:30,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:55:30,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:55:30,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:55:31,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:55:31,059.059 INFO    ] time= 28/10/2026 21:55:31
[2026-10-28 21:55:31,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:55:31,162.162 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:55:31,295.295 INFO    ] No existing commands found in stream
[2026-10-28 21:55:36,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:55:36,329.329 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-28 21:55:38,194.194 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:55:38,197.197 INFO    ] Checking for system updates...
[2026-10-28 21:55:38,234.234 INFO    ] 200
[2026-10-28 21:55:38,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:55:38,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:55:38,293.293 INFO    ] No update needed
[2026-10-28 21:55:38,296.296 INFO    ] Checking for camera pi updates...
[2026-10-28 21:55:38,331.331 INFO    ] 200
[2026-10-28 21:55:38,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:55:38,375.375 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:55:38,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:55:38,573.573 INFO    ] No camera update needed
[2026-10-28 21:55:38,576.576 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:55:38,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:55:38,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:55:38,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:55:40,633.633 INFO    ] ================================================
[2026-10-28 21:55:40,648.648 INFO    ] Launching Daemon at Wed Oct 28 21:55:40 IST 2026
[2026-10-28 21:55:40,659.659 INFO    ] ================================================
[2026-10-28 21:55:41,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:55:41
[2026-10-28 21:55:41,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:55:42,112.112 INFO    ] Initializing speech engine...
[2026-10-28 21:55:42,118.118 INFO    ] 2026-10-28 21:55:42
[2026-10-28 21:55:42,379.379 INFO    ] 2026-10-28 21:55:42
[2026-10-28 21:55:42,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:55:42,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:55:42,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:55:42,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:55:42,936.936 INFO    ] time= 28/10/2026 21:55:42
[2026-10-28 21:55:42,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:55:42,966.966 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:55:43,046.046 INFO    ] No existing commands found in stream
[2026-10-28 21:55:48,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:55:48,058.058 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-28 21:55:52,232.232 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:55:52,234.234 INFO    ] Checking for system updates...
[2026-10-28 21:55:52,271.271 INFO    ] 200
[2026-10-28 21:55:52,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:55:52,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:55:52,329.329 INFO    ] No update needed
[2026-10-28 21:55:52,331.331 INFO    ] Checking for camera pi updates...
[2026-10-28 21:55:52,365.365 INFO    ] 200
[2026-10-28 21:55:52,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:55:52,412.412 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:55:52,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:55:52,506.506 INFO    ] No camera update needed
[2026-10-28 21:55:52,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:55:52,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:55:52,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:55:52,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:55:54,563.563 INFO    ] ================================================
[2026-10-28 21:55:54,578.578 INFO    ] Launching Daemon at Wed Oct 28 21:55:54 IST 2026
[2026-10-28 21:55:54,589.589 INFO    ] ================================================
[2026-10-28 21:55:55,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:55:55
[2026-10-28 21:55:55,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:55:56,042.042 INFO    ] Initializing speech engine...
[2026-10-28 21:55:56,053.053 INFO    ] 2026-10-28 21:55:56
[2026-10-28 21:55:56,312.312 INFO    ] 2026-10-28 21:55:56
[2026-10-28 21:55:56,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:55:56,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:55:56,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:55:56,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:55:56,855.855 INFO    ] time= 28/10/2026 21:55:56
[2026-10-28 21:55:56,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:55:56,896.896 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:55:57,008.008 INFO    ] No existing commands found in stream
[2026-10-28 21:56:02,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:56:02,028.028 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-10-28 21:56:04,167.167 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:56:04,169.169 INFO    ] Checking for system updates...
[2026-10-28 21:56:04,206.206 INFO    ] 200
[2026-10-28 21:56:04,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:56:04,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:56:04,264.264 INFO    ] No update needed
[2026-10-28 21:56:04,267.267 INFO    ] Checking for camera pi updates...
[2026-10-28 21:56:04,301.301 INFO    ] 200
[2026-10-28 21:56:04,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:56:04,344.344 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:56:04,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:56:04,430.430 INFO    ] No camera update needed
[2026-10-28 21:56:04,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:56:04,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:56:04,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:56:04,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:56:06,484.484 INFO    ] ================================================
[2026-10-28 21:56:06,499.499 INFO    ] Launching Daemon at Wed Oct 28 21:56:06 IST 2026
[2026-10-28 21:56:06,510.510 INFO    ] ================================================
[2026-10-28 21:56:07,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:56:07
[2026-10-28 21:56:07,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:56:07,962.962 INFO    ] Initializing speech engine...
[2026-10-28 21:56:07,971.971 INFO    ] 2026-10-28 21:56:07
[2026-10-28 21:56:08,234.234 INFO    ] 2026-10-28 21:56:08
[2026-10-28 21:56:08,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:56:08,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:56:08,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:56:08,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:56:08,791.791 INFO    ] time= 28/10/2026 21:56:08
[2026-10-28 21:56:08,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:56:08,829.829 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:56:08,967.967 INFO    ] No existing commands found in stream
[2026-10-28 21:56:13,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:56:14,000.000 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-28 21:56:15,577.577 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:56:15,580.580 INFO    ] Checking for system updates...
[2026-10-28 21:56:15,615.615 INFO    ] 200
[2026-10-28 21:56:15,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:56:15,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:56:15,673.673 INFO    ] No update needed
[2026-10-28 21:56:15,675.675 INFO    ] Checking for camera pi updates...
[2026-10-28 21:56:15,709.709 INFO    ] 200
[2026-10-28 21:56:15,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:56:15,758.758 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:56:15,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:56:15,832.832 INFO    ] No camera update needed
[2026-10-28 21:56:15,834.834 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:56:15,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:56:15,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:56:15,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:56:17,892.892 INFO    ] ================================================
[2026-10-28 21:56:17,907.907 INFO    ] Launching Daemon at Wed Oct 28 21:56:17 IST 2026
[2026-10-28 21:56:17,917.917 INFO    ] ================================================
[2026-10-28 21:56:18,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:56:18
[2026-10-28 21:56:19,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:56:19,330.330 INFO    ] Initializing speech engine...
[2026-10-28 21:56:19,341.341 INFO    ] 2026-10-28 21:56:19
[2026-10-28 21:56:19,599.599 INFO    ] 2026-10-28 21:56:19
[2026-10-28 21:56:19,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:56:19,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:56:19,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:56:20,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:56:20,136.136 INFO    ] time= 28/10/2026 21:56:20
[2026-10-28 21:56:20,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:56:20,160.160 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:56:20,281.281 INFO    ] No existing commands found in stream
[2026-10-28 21:56:25,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:56:25,305.305 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 21:56:29,554.554 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:56:29,556.556 INFO    ] Checking for system updates...
[2026-10-28 21:56:29,595.595 INFO    ] 200
[2026-10-28 21:56:29,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:56:29,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:56:29,651.651 INFO    ] No update needed
[2026-10-28 21:56:29,654.654 INFO    ] Checking for camera pi updates...
[2026-10-28 21:56:29,687.687 INFO    ] 200
[2026-10-28 21:56:29,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:56:29,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:56:29,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:56:29,816.816 INFO    ] No camera update needed
[2026-10-28 21:56:29,818.818 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:56:29,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:56:29,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:56:29,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:56:31,871.871 INFO    ] ================================================
[2026-10-28 21:56:31,887.887 INFO    ] Launching Daemon at Wed Oct 28 21:56:31 IST 2026
[2026-10-28 21:56:31,899.899 INFO    ] ================================================
[2026-10-28 21:56:32,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:56:32
[2026-10-28 21:56:33,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:56:33,350.350 INFO    ] Initializing speech engine...
[2026-10-28 21:56:33,358.358 INFO    ] 2026-10-28 21:56:33
[2026-10-28 21:56:33,631.631 INFO    ] 2026-10-28 21:56:33
[2026-10-28 21:56:33,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:56:33,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:56:33,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:56:34,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:56:34,192.192 INFO    ] time= 28/10/2026 21:56:34
[2026-10-28 21:56:34,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:56:34,215.215 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:56:34,342.342 INFO    ] No existing commands found in stream
[2026-10-28 21:56:39,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:56:39,361.361 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-28 21:56:40,555.555 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 21:56:40,558.558 INFO    ] Checking for system updates...
[2026-10-28 21:56:40,595.595 INFO    ] 200
[2026-10-28 21:56:40,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:56:40,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:56:40,658.658 INFO    ] No update needed
[2026-10-28 21:56:40,660.660 INFO    ] Checking for camera pi updates...
[2026-10-28 21:56:40,693.693 INFO    ] 200
[2026-10-28 21:56:40,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:56:40,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:56:40,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:56:40,833.833 INFO    ] No camera update needed
[2026-10-28 21:56:40,836.836 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:56:40,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:56:40,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:56:40,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:56:42,888.888 INFO    ] ================================================
[2026-10-28 21:56:42,902.902 INFO    ] Launching Daemon at Wed Oct 28 21:56:42 IST 2026
[2026-10-28 21:56:42,913.913 INFO    ] ================================================
[2026-10-28 21:56:43,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:56:43
[2026-10-28 21:56:44,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:56:44,324.324 INFO    ] Initializing speech engine...
[2026-10-28 21:56:44,337.337 INFO    ] 2026-10-28 21:56:44
[2026-10-28 21:56:44,618.618 INFO    ] 2026-10-28 21:56:44
[2026-10-28 21:56:44,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:56:44,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:56:44,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:56:45,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:56:45,193.193 INFO    ] time= 28/10/2026 21:56:45
[2026-10-28 21:56:45,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:56:45,216.216 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:56:45,342.342 INFO    ] No existing commands found in stream
[2026-10-28 21:56:50,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:56:50,359.359 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-10-28 21:56:51,073.073 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:56:51,076.076 INFO    ] Checking for system updates...
[2026-10-28 21:56:51,112.112 INFO    ] 200
[2026-10-28 21:56:51,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:56:51,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:56:51,169.169 INFO    ] No update needed
[2026-10-28 21:56:51,171.171 INFO    ] Checking for camera pi updates...
[2026-10-28 21:56:51,209.209 INFO    ] 200
[2026-10-28 21:56:51,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:56:51,256.256 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:56:51,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:56:51,344.344 INFO    ] No camera update needed
[2026-10-28 21:56:51,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:56:51,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:56:51,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:56:51,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:56:53,402.402 INFO    ] ================================================
[2026-10-28 21:56:53,417.417 INFO    ] Launching Daemon at Wed Oct 28 21:56:53 IST 2026
[2026-10-28 21:56:53,428.428 INFO    ] ================================================
[2026-10-28 21:56:54,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:56:54
[2026-10-28 21:56:54,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:56:54,867.867 INFO    ] Initializing speech engine...
[2026-10-28 21:56:54,881.881 INFO    ] 2026-10-28 21:56:54
[2026-10-28 21:56:55,135.135 INFO    ] 2026-10-28 21:56:55
[2026-10-28 21:56:55,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:56:55,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:56:55,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:56:55,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:56:55,692.692 INFO    ] time= 28/10/2026 21:56:55
[2026-10-28 21:56:55,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:56:55,721.721 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:56:55,898.898 INFO    ] No existing commands found in stream
[2026-10-28 21:57:00,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:57:00,931.931 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-28 21:57:03,176.176 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:57:03,179.179 INFO    ] Checking for system updates...
[2026-10-28 21:57:03,222.222 INFO    ] 200
[2026-10-28 21:57:03,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:57:03,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:57:03,291.291 INFO    ] No update needed
[2026-10-28 21:57:03,293.293 INFO    ] Checking for camera pi updates...
[2026-10-28 21:57:03,327.327 INFO    ] 200
[2026-10-28 21:57:03,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:57:03,380.380 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:57:03,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:57:03,501.501 INFO    ] No camera update needed
[2026-10-28 21:57:03,503.503 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:57:03,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:57:03,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:57:03,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:57:05,557.557 INFO    ] ================================================
[2026-10-28 21:57:05,572.572 INFO    ] Launching Daemon at Wed Oct 28 21:57:05 IST 2026
[2026-10-28 21:57:05,584.584 INFO    ] ================================================
[2026-10-28 21:57:06,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:57:06
[2026-10-28 21:57:06,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:57:07,181.181 INFO    ] Initializing speech engine...
[2026-10-28 21:57:07,195.195 INFO    ] 2026-10-28 21:57:07
[2026-10-28 21:57:07,506.506 INFO    ] 2026-10-28 21:57:07
[2026-10-28 21:57:07,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:57:07,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:57:07,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:57:08,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:57:08,230.230 INFO    ] time= 28/10/2026 21:57:08
[2026-10-28 21:57:08,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:57:08,324.324 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:57:08,455.455 INFO    ] No existing commands found in stream
[2026-10-28 21:57:13,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:57:13,468.468 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-28 21:57:16,635.635 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:57:16,638.638 INFO    ] Checking for system updates...
[2026-10-28 21:57:16,678.678 INFO    ] 200
[2026-10-28 21:57:16,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:57:16,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:57:16,736.736 INFO    ] No update needed
[2026-10-28 21:57:16,739.739 INFO    ] Checking for camera pi updates...
[2026-10-28 21:57:16,773.773 INFO    ] 200
[2026-10-28 21:57:16,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:57:16,824.824 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:57:16,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:57:16,911.911 INFO    ] No camera update needed
[2026-10-28 21:57:16,914.914 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:57:16,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:57:16,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:57:16,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:57:18,968.968 INFO    ] ================================================
[2026-10-28 21:57:18,984.984 INFO    ] Launching Daemon at Wed Oct 28 21:57:18 IST 2026
[2026-10-28 21:57:19,996.996 INFO    ] ================================================
[2026-10-28 21:57:19,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:57:19
[2026-10-28 21:57:20,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:57:20,451.451 INFO    ] Initializing speech engine...
[2026-10-28 21:57:20,460.460 INFO    ] 2026-10-28 21:57:20
[2026-10-28 21:57:20,712.712 INFO    ] 2026-10-28 21:57:20
[2026-10-28 21:57:20,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:57:21,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:57:21,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:57:21,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:57:21,269.269 INFO    ] time= 28/10/2026 21:57:21
[2026-10-28 21:57:21,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:57:21,315.315 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:57:21,486.486 INFO    ] No existing commands found in stream
[2026-10-28 21:57:26,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:57:26,515.515 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-10-28 21:57:30,205.205 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 21:57:30,208.208 INFO    ] Checking for system updates...
[2026-10-28 21:57:30,244.244 INFO    ] 200
[2026-10-28 21:57:30,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:57:30,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:57:30,308.308 INFO    ] No update needed
[2026-10-28 21:57:30,310.310 INFO    ] Checking for camera pi updates...
[2026-10-28 21:57:30,348.348 INFO    ] 200
[2026-10-28 21:57:30,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:57:30,392.392 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:57:30,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:57:30,473.473 INFO    ] No camera update needed
[2026-10-28 21:57:30,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:57:30,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:57:30,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:57:30,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:57:32,532.532 INFO    ] ================================================
[2026-10-28 21:57:32,548.548 INFO    ] Launching Daemon at Wed Oct 28 21:57:32 IST 2026
[2026-10-28 21:57:32,560.560 INFO    ] ================================================
[2026-10-28 21:57:33,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:57:33
[2026-10-28 21:57:33,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:57:34,046.046 INFO    ] Initializing speech engine...
[2026-10-28 21:57:34,054.054 INFO    ] 2026-10-28 21:57:34
[2026-10-28 21:57:34,302.302 INFO    ] 2026-10-28 21:57:34
[2026-10-28 21:57:34,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:57:34,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:57:34,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:57:34,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:57:34,861.861 INFO    ] time= 28/10/2026 21:57:34
[2026-10-28 21:57:34,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:57:34,891.891 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:57:35,049.049 INFO    ] No existing commands found in stream
[2026-10-28 21:57:40,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:57:40,082.082 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-28 21:57:44,295.295 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:57:44,297.297 INFO    ] Checking for system updates...
[2026-10-28 21:57:44,336.336 INFO    ] 200
[2026-10-28 21:57:44,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:57:44,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:57:44,399.399 INFO    ] No update needed
[2026-10-28 21:57:44,401.401 INFO    ] Checking for camera pi updates...
[2026-10-28 21:57:44,438.438 INFO    ] 200
[2026-10-28 21:57:44,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:57:44,482.482 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:57:44,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:57:44,651.651 INFO    ] No camera update needed
[2026-10-28 21:57:44,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:57:44,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:57:44,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:57:44,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:57:46,707.707 INFO    ] ================================================
[2026-10-28 21:57:46,721.721 INFO    ] Launching Daemon at Wed Oct 28 21:57:46 IST 2026
[2026-10-28 21:57:46,732.732 INFO    ] ================================================
[2026-10-28 21:57:47,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:57:47
[2026-10-28 21:57:47,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:57:48,168.168 INFO    ] Initializing speech engine...
[2026-10-28 21:57:48,176.176 INFO    ] 2026-10-28 21:57:48
[2026-10-28 21:57:48,435.435 INFO    ] 2026-10-28 21:57:48
[2026-10-28 21:57:48,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:57:48,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:57:48,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:57:49,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:57:49,137.137 INFO    ] time= 28/10/2026 21:57:49
[2026-10-28 21:57:49,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:57:49,233.233 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:57:49,383.383 INFO    ] No existing commands found in stream
[2026-10-28 21:57:54,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:57:54,398.398 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 21:57:58,642.642 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:57:58,645.645 INFO    ] Checking for system updates...
[2026-10-28 21:57:58,680.680 INFO    ] 200
[2026-10-28 21:57:58,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:57:58,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:57:58,737.737 INFO    ] No update needed
[2026-10-28 21:57:58,740.740 INFO    ] Checking for camera pi updates...
[2026-10-28 21:57:58,773.773 INFO    ] 200
[2026-10-28 21:57:58,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:57:58,815.815 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:57:58,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:57:58,929.929 INFO    ] No camera update needed
[2026-10-28 21:57:58,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:57:58,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:57:58,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:57:58,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:58:00,985.985 INFO    ] ================================================
[2026-10-28 21:58:01,000.000 INFO    ] Launching Daemon at Wed Oct 28 21:58:00 IST 2026
[2026-10-28 21:58:01,011.011 INFO    ] ================================================
[2026-10-28 21:58:01,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:58:01
[2026-10-28 21:58:02,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:58:02,608.608 INFO    ] Initializing speech engine...
[2026-10-28 21:58:02,617.617 INFO    ] 2026-10-28 21:58:02
[2026-10-28 21:58:02,954.954 INFO    ] 2026-10-28 21:58:02
[2026-10-28 21:58:03,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:58:03,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:58:03,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:58:03,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:58:03,597.597 INFO    ] time= 28/10/2026 21:58:03
[2026-10-28 21:58:03,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:58:03,621.621 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:58:03,761.761 INFO    ] No existing commands found in stream
[2026-10-28 21:58:08,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:58:08,778.778 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-28 21:58:10,633.633 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 21:58:10,635.635 INFO    ] Checking for system updates...
[2026-10-28 21:58:10,674.674 INFO    ] 200
[2026-10-28 21:58:10,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:58:10,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:58:10,737.737 INFO    ] No update needed
[2026-10-28 21:58:10,740.740 INFO    ] Checking for camera pi updates...
[2026-10-28 21:58:10,776.776 INFO    ] 200
[2026-10-28 21:58:10,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:58:10,818.818 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:58:10,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:58:10,901.901 INFO    ] No camera update needed
[2026-10-28 21:58:10,903.903 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:58:10,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:58:10,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:58:10,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:58:12,956.956 INFO    ] ================================================
[2026-10-28 21:58:12,970.970 INFO    ] Launching Daemon at Wed Oct 28 21:58:12 IST 2026
[2026-10-28 21:58:12,981.981 INFO    ] ================================================
[2026-10-28 21:58:13,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:58:13
[2026-10-28 21:58:14,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:58:14,436.436 INFO    ] Initializing speech engine...
[2026-10-28 21:58:14,446.446 INFO    ] 2026-10-28 21:58:14
[2026-10-28 21:58:14,694.694 INFO    ] 2026-10-28 21:58:14
[2026-10-28 21:58:14,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:58:15,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:58:15,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:58:15,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:58:15,262.262 INFO    ] time= 28/10/2026 21:58:15
[2026-10-28 21:58:15,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:58:15,299.299 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:58:15,416.416 INFO    ] No existing commands found in stream
[2026-10-28 21:58:20,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:58:20,444.444 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-28 21:58:24,676.676 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:58:24,679.679 INFO    ] Checking for system updates...
[2026-10-28 21:58:24,717.717 INFO    ] 200
[2026-10-28 21:58:24,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:58:24,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:58:24,779.779 INFO    ] No update needed
[2026-10-28 21:58:24,781.781 INFO    ] Checking for camera pi updates...
[2026-10-28 21:58:24,815.815 INFO    ] 200
[2026-10-28 21:58:24,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:58:24,859.859 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:58:24,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:58:24,943.943 INFO    ] No camera update needed
[2026-10-28 21:58:24,945.945 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:58:24,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:58:24,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:58:24,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:58:27,000.000 INFO    ] ================================================
[2026-10-28 21:58:27,015.015 INFO    ] Launching Daemon at Wed Oct 28 21:58:27 IST 2026
[2026-10-28 21:58:27,026.026 INFO    ] ================================================
[2026-10-28 21:58:27,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:58:27
[2026-10-28 21:58:28,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:58:28,439.439 INFO    ] Initializing speech engine...
[2026-10-28 21:58:28,445.445 INFO    ] 2026-10-28 21:58:28
[2026-10-28 21:58:28,734.734 INFO    ] 2026-10-28 21:58:28
[2026-10-28 21:58:28,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:58:29,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:58:29,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:58:29,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:58:29,348.348 INFO    ] time= 28/10/2026 21:58:29
[2026-10-28 21:58:29,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:58:29,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:58:29,506.506 INFO    ] No existing commands found in stream
[2026-10-28 21:58:34,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:58:34,529.529 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-10-28 21:58:38,459.459 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:58:38,462.462 INFO    ] Checking for system updates...
[2026-10-28 21:58:38,497.497 INFO    ] 200
[2026-10-28 21:58:38,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:58:38,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:58:38,554.554 INFO    ] No update needed
[2026-10-28 21:58:38,556.556 INFO    ] Checking for camera pi updates...
[2026-10-28 21:58:38,595.595 INFO    ] 200
[2026-10-28 21:58:38,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:58:38,638.638 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:58:38,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:58:38,722.722 INFO    ] No camera update needed
[2026-10-28 21:58:38,724.724 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:58:38,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:58:38,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:58:38,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:58:40,776.776 INFO    ] ================================================
[2026-10-28 21:58:40,791.791 INFO    ] Launching Daemon at Wed Oct 28 21:58:40 IST 2026
[2026-10-28 21:58:40,802.802 INFO    ] ================================================
[2026-10-28 21:58:41,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:58:41
[2026-10-28 21:58:41,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:58:42,222.222 INFO    ] Initializing speech engine...
[2026-10-28 21:58:42,231.231 INFO    ] 2026-10-28 21:58:42
[2026-10-28 21:58:42,476.476 INFO    ] 2026-10-28 21:58:42
[2026-10-28 21:58:42,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:58:42,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:58:42,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:58:42,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:58:42,969.969 INFO    ] time= 28/10/2026 21:58:42
[2026-10-28 21:58:43,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:58:43,048.048 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:58:43,178.178 INFO    ] No existing commands found in stream
[2026-10-28 21:58:48,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:58:48,206.206 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-28 21:58:52,382.382 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:58:52,385.385 INFO    ] Checking for system updates...
[2026-10-28 21:58:52,421.421 INFO    ] 200
[2026-10-28 21:58:52,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:58:52,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:58:52,485.485 INFO    ] No update needed
[2026-10-28 21:58:52,488.488 INFO    ] Checking for camera pi updates...
[2026-10-28 21:58:52,525.525 INFO    ] 200
[2026-10-28 21:58:52,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:58:52,575.575 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:58:52,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:58:52,662.662 INFO    ] No camera update needed
[2026-10-28 21:58:52,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:58:52,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:58:52,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:58:52,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:58:54,722.722 INFO    ] ================================================
[2026-10-28 21:58:54,737.737 INFO    ] Launching Daemon at Wed Oct 28 21:58:54 IST 2026
[2026-10-28 21:58:54,748.748 INFO    ] ================================================
[2026-10-28 21:58:55,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:58:55
[2026-10-28 21:58:55,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:58:56,186.186 INFO    ] Initializing speech engine...
[2026-10-28 21:58:56,193.193 INFO    ] 2026-10-28 21:58:56
[2026-10-28 21:58:56,441.441 INFO    ] 2026-10-28 21:58:56
[2026-10-28 21:58:56,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:58:56,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:58:56,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:58:57,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:58:57,021.021 INFO    ] time= 28/10/2026 21:58:57
[2026-10-28 21:58:57,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:58:57,057.057 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:58:57,164.164 INFO    ] No existing commands found in stream
[2026-10-28 21:59:02,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:59:02,179.179 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 21:59:03,555.555 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:59:03,557.557 INFO    ] Checking for system updates...
[2026-10-28 21:59:03,596.596 INFO    ] 200
[2026-10-28 21:59:03,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:59:03,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:59:03,654.654 INFO    ] No update needed
[2026-10-28 21:59:03,657.657 INFO    ] Checking for camera pi updates...
[2026-10-28 21:59:03,692.692 INFO    ] 200
[2026-10-28 21:59:03,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:59:03,736.736 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:59:03,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:59:03,828.828 INFO    ] No camera update needed
[2026-10-28 21:59:03,831.831 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:59:03,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:59:03,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:59:03,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:59:05,888.888 INFO    ] ================================================
[2026-10-28 21:59:05,904.904 INFO    ] Launching Daemon at Wed Oct 28 21:59:05 IST 2026
[2026-10-28 21:59:05,914.914 INFO    ] ================================================
[2026-10-28 21:59:06,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:59:06
[2026-10-28 21:59:07,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:59:07,345.345 INFO    ] Initializing speech engine...
[2026-10-28 21:59:07,353.353 INFO    ] 2026-10-28 21:59:07
[2026-10-28 21:59:07,647.647 INFO    ] 2026-10-28 21:59:07
[2026-10-28 21:59:07,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:59:07,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:59:07,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:59:08,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:59:08,173.173 INFO    ] time= 28/10/2026 21:59:08
[2026-10-28 21:59:08,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:59:08,272.272 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:59:08,416.416 INFO    ] No existing commands found in stream
[2026-10-28 21:59:13,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:59:13,447.447 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-10-28 21:59:15,438.438 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 21:59:15,440.440 INFO    ] Checking for system updates...
[2026-10-28 21:59:15,476.476 INFO    ] 200
[2026-10-28 21:59:15,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:59:15,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:59:15,532.532 INFO    ] No update needed
[2026-10-28 21:59:15,535.535 INFO    ] Checking for camera pi updates...
[2026-10-28 21:59:15,568.568 INFO    ] 200
[2026-10-28 21:59:15,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:59:15,611.611 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:59:15,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:59:15,695.695 INFO    ] No camera update needed
[2026-10-28 21:59:15,697.697 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:59:15,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:59:15,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:59:15,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:59:17,750.750 INFO    ] ================================================
[2026-10-28 21:59:17,765.765 INFO    ] Launching Daemon at Wed Oct 28 21:59:17 IST 2026
[2026-10-28 21:59:17,776.776 INFO    ] ================================================
[2026-10-28 21:59:18,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:59:18
[2026-10-28 21:59:19,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:59:19,406.406 INFO    ] Initializing speech engine...
[2026-10-28 21:59:19,420.420 INFO    ] 2026-10-28 21:59:19
[2026-10-28 21:59:19,692.692 INFO    ] 2026-10-28 21:59:19
[2026-10-28 21:59:19,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:59:20,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:59:20,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:59:20,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:59:20,442.442 INFO    ] time= 28/10/2026 21:59:20
[2026-10-28 21:59:20,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:59:20,516.516 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:59:20,821.821 INFO    ] No existing commands found in stream
[2026-10-28 21:59:25,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:59:25,847.847 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-28 21:59:27,556.556 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:59:27,559.559 INFO    ] Checking for system updates...
[2026-10-28 21:59:27,596.596 INFO    ] 200
[2026-10-28 21:59:27,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:59:27,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:59:27,655.655 INFO    ] No update needed
[2026-10-28 21:59:27,658.658 INFO    ] Checking for camera pi updates...
[2026-10-28 21:59:27,692.692 INFO    ] 200
[2026-10-28 21:59:27,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:59:27,737.737 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:59:27,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:59:27,808.808 INFO    ] No camera update needed
[2026-10-28 21:59:27,810.810 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:59:27,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:59:27,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:59:27,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:59:29,866.866 INFO    ] ================================================
[2026-10-28 21:59:29,881.881 INFO    ] Launching Daemon at Wed Oct 28 21:59:29 IST 2026
[2026-10-28 21:59:29,892.892 INFO    ] ================================================
[2026-10-28 21:59:30,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:59:30
[2026-10-28 21:59:31,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:59:31,555.555 INFO    ] Initializing speech engine...
[2026-10-28 21:59:31,567.567 INFO    ] 2026-10-28 21:59:31
[2026-10-28 21:59:31,852.852 INFO    ] 2026-10-28 21:59:31
[2026-10-28 21:59:31,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:59:32,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:59:32,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:59:32,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:59:32,455.455 INFO    ] time= 28/10/2026 21:59:32
[2026-10-28 21:59:32,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:59:32,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:59:32,687.687 INFO    ] No existing commands found in stream
[2026-10-28 21:59:37,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:59:37,721.721 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-10-28 21:59:40,514.514 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 21:59:40,517.517 INFO    ] Checking for system updates...
[2026-10-28 21:59:40,554.554 INFO    ] 200
[2026-10-28 21:59:40,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:59:40,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:59:40,614.614 INFO    ] No update needed
[2026-10-28 21:59:40,617.617 INFO    ] Checking for camera pi updates...
[2026-10-28 21:59:40,650.650 INFO    ] 200
[2026-10-28 21:59:40,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:59:40,692.692 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:59:40,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 21:59:40,777.777 INFO    ] No camera update needed
[2026-10-28 21:59:40,779.779 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:59:40,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:59:40,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:59:40,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:59:42,833.833 INFO    ] ================================================
[2026-10-28 21:59:42,848.848 INFO    ] Launching Daemon at Wed Oct 28 21:59:42 IST 2026
[2026-10-28 21:59:42,859.859 INFO    ] ================================================
[2026-10-28 21:59:43,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:59:43
[2026-10-28 21:59:44,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:59:44,261.261 INFO    ] Initializing speech engine...
[2026-10-28 21:59:44,276.276 INFO    ] 2026-10-28 21:59:44
[2026-10-28 21:59:44,540.540 INFO    ] 2026-10-28 21:59:44
[2026-10-28 21:59:44,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:59:44,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:59:44,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:59:45,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:59:45,105.105 INFO    ] time= 28/10/2026 21:59:45
[2026-10-28 21:59:45,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:59:45,130.130 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:59:45,262.262 INFO    ] No existing commands found in stream
[2026-10-28 21:59:50,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 21:59:50,280.280 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-28 21:59:54,810.810 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 21:59:54,812.812 INFO    ] Checking for system updates...
[2026-10-28 21:59:54,848.848 INFO    ] 200
[2026-10-28 21:59:54,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:59:54,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:59:54,904.904 INFO    ] No update needed
[2026-10-28 21:59:54,907.907 INFO    ] Checking for camera pi updates...
[2026-10-28 21:59:54,940.940 INFO    ] 200
[2026-10-28 21:59:54,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 21:59:54,983.983 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 21:59:55,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 21:59:55,168.168 INFO    ] No camera update needed
[2026-10-28 21:59:55,170.170 INFO    ] Script finished. Safe exiting...
[2026-10-28 21:59:55,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 21:59:55,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 21:59:55,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 21:59:57,223.223 INFO    ] ================================================
[2026-10-28 21:59:57,238.238 INFO    ] Launching Daemon at Wed Oct 28 21:59:57 IST 2026
[2026-10-28 21:59:57,249.249 INFO    ] ================================================
[2026-10-28 21:59:57,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 21:59:57
[2026-10-28 21:59:58,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 21:59:58,671.671 INFO    ] Initializing speech engine...
[2026-10-28 21:59:58,681.681 INFO    ] 2026-10-28 21:59:58
[2026-10-28 21:59:58,929.929 INFO    ] 2026-10-28 21:59:58
[2026-10-28 21:59:58,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 21:59:59,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 21:59:59,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 21:59:59,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 21:59:59,498.498 INFO    ] time= 28/10/2026 21:59:59
[2026-10-28 21:59:59,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 21:59:59,544.544 INFO    ] Checking for existing commands in stream...
[2026-10-28 21:59:59,665.665 INFO    ] No existing commands found in stream
[2026-10-28 22:00:04,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:00:04,689.689 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-28 22:00:10,200.200 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:00:10,202.202 INFO    ] Checking for system updates...
[2026-10-28 22:00:10,238.238 INFO    ] 200
[2026-10-28 22:00:10,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:00:10,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:00:10,300.300 INFO    ] No update needed
[2026-10-28 22:00:10,302.302 INFO    ] Checking for camera pi updates...
[2026-10-28 22:00:10,338.338 INFO    ] 200
[2026-10-28 22:00:10,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:00:10,385.385 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:00:10,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:00:10,476.476 INFO    ] No camera update needed
[2026-10-28 22:00:10,478.478 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:00:10,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:00:10,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:00:10,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:00:12,530.530 INFO    ] ================================================
[2026-10-28 22:00:12,546.546 INFO    ] Launching Daemon at Wed Oct 28 22:00:12 IST 2026
[2026-10-28 22:00:12,557.557 INFO    ] ================================================
[2026-10-28 22:00:13,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:00:13
[2026-10-28 22:00:13,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:00:14,010.010 INFO    ] Initializing speech engine...
[2026-10-28 22:00:14,019.019 INFO    ] 2026-10-28 22:00:14
[2026-10-28 22:00:14,270.270 INFO    ] 2026-10-28 22:00:14
[2026-10-28 22:00:14,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:00:14,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:00:14,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:00:14,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:00:14,836.836 INFO    ] time= 28/10/2026 22:00:14
[2026-10-28 22:00:14,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:00:14,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:00:14,978.978 INFO    ] No existing commands found in stream
[2026-10-28 22:00:20,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:00:20,006.006 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-10-28 22:00:21,154.154 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:00:21,157.157 INFO    ] Checking for system updates...
[2026-10-28 22:00:21,192.192 INFO    ] 200
[2026-10-28 22:00:21,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:00:21,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:00:21,255.255 INFO    ] No update needed
[2026-10-28 22:00:21,257.257 INFO    ] Checking for camera pi updates...
[2026-10-28 22:00:21,291.291 INFO    ] 200
[2026-10-28 22:00:21,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:00:21,333.333 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:00:21,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:00:21,416.416 INFO    ] No camera update needed
[2026-10-28 22:00:21,418.418 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:00:21,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:00:21,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:00:21,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:00:23,471.471 INFO    ] ================================================
[2026-10-28 22:00:23,487.487 INFO    ] Launching Daemon at Wed Oct 28 22:00:23 IST 2026
[2026-10-28 22:00:23,498.498 INFO    ] ================================================
[2026-10-28 22:00:24,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:00:24
[2026-10-28 22:00:24,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:00:24,896.896 INFO    ] Initializing speech engine...
[2026-10-28 22:00:24,905.905 INFO    ] 2026-10-28 22:00:24
[2026-10-28 22:00:25,179.179 INFO    ] 2026-10-28 22:00:25
[2026-10-28 22:00:25,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:00:25,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:00:25,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:00:25,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:00:25,749.749 INFO    ] time= 28/10/2026 22:00:25
[2026-10-28 22:00:25,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:00:25,780.780 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:00:25,917.917 INFO    ] No existing commands found in stream
[2026-10-28 22:00:30,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:00:30,945.945 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-28 22:00:33,797.797 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:00:33,800.800 INFO    ] Checking for system updates...
[2026-10-28 22:00:33,836.836 INFO    ] 200
[2026-10-28 22:00:33,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:00:33,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:00:33,896.896 INFO    ] No update needed
[2026-10-28 22:00:33,898.898 INFO    ] Checking for camera pi updates...
[2026-10-28 22:00:33,932.932 INFO    ] 200
[2026-10-28 22:00:33,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:00:33,977.977 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:00:34,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:00:34,064.064 INFO    ] No camera update needed
[2026-10-28 22:00:34,066.066 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:00:34,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:00:34,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:00:34,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:00:36,120.120 INFO    ] ================================================
[2026-10-28 22:00:36,135.135 INFO    ] Launching Daemon at Wed Oct 28 22:00:36 IST 2026
[2026-10-28 22:00:36,146.146 INFO    ] ================================================
[2026-10-28 22:00:36,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:00:36
[2026-10-28 22:00:37,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:00:37,738.738 INFO    ] Initializing speech engine...
[2026-10-28 22:00:37,748.748 INFO    ] 2026-10-28 22:00:37
[2026-10-28 22:00:38,024.024 INFO    ] 2026-10-28 22:00:38
[2026-10-28 22:00:38,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:00:38,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:00:38,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:00:38,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:00:38,606.606 INFO    ] time= 28/10/2026 22:00:38
[2026-10-28 22:00:38,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:00:38,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:00:38,768.768 INFO    ] No existing commands found in stream
[2026-10-28 22:00:43,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:00:43,797.797 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-10-28 22:00:45,157.157 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:00:45,160.160 INFO    ] Checking for system updates...
[2026-10-28 22:00:45,201.201 INFO    ] 200
[2026-10-28 22:00:45,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:00:45,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:00:45,266.266 INFO    ] No update needed
[2026-10-28 22:00:45,269.269 INFO    ] Checking for camera pi updates...
[2026-10-28 22:00:45,308.308 INFO    ] 200
[2026-10-28 22:00:45,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:00:45,351.351 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:00:45,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:00:45,424.424 INFO    ] No camera update needed
[2026-10-28 22:00:45,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:00:45,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:00:45,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:00:45,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:00:47,479.479 INFO    ] ================================================
[2026-10-28 22:00:47,494.494 INFO    ] Launching Daemon at Wed Oct 28 22:00:47 IST 2026
[2026-10-28 22:00:47,505.505 INFO    ] ================================================
[2026-10-28 22:00:48,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:00:48
[2026-10-28 22:00:48,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:00:49,052.052 INFO    ] Initializing speech engine...
[2026-10-28 22:00:49,062.062 INFO    ] 2026-10-28 22:00:49
[2026-10-28 22:00:49,310.310 INFO    ] 2026-10-28 22:00:49
[2026-10-28 22:00:49,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:00:49,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:00:49,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:00:49,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:00:49,878.878 INFO    ] time= 28/10/2026 22:00:49
[2026-10-28 22:00:49,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:00:49,902.902 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:00:50,034.034 INFO    ] No existing commands found in stream
[2026-10-28 22:00:55,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:00:55,050.050 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-28 22:00:58,562.562 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:00:58,565.565 INFO    ] Checking for system updates...
[2026-10-28 22:00:58,621.621 INFO    ] 200
[2026-10-28 22:00:58,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:00:58,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:00:58,681.681 INFO    ] No update needed
[2026-10-28 22:00:58,684.684 INFO    ] Checking for camera pi updates...
[2026-10-28 22:00:58,721.721 INFO    ] 200
[2026-10-28 22:00:58,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:00:58,763.763 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:00:58,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:00:58,893.893 INFO    ] No camera update needed
[2026-10-28 22:00:58,896.896 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:00:58,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:00:58,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:00:58,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:01:00,950.950 INFO    ] ================================================
[2026-10-28 22:01:00,965.965 INFO    ] Launching Daemon at Wed Oct 28 22:01:00 IST 2026
[2026-10-28 22:01:00,976.976 INFO    ] ================================================
[2026-10-28 22:01:01,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:01:01
[2026-10-28 22:01:02,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:01:02,768.768 INFO    ] Initializing speech engine...
[2026-10-28 22:01:02,776.776 INFO    ] 2026-10-28 22:01:02
[2026-10-28 22:01:03,112.112 INFO    ] 2026-10-28 22:01:03
[2026-10-28 22:01:03,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:01:03,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:01:03,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:01:03,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:01:03,704.704 INFO    ] time= 28/10/2026 22:01:03
[2026-10-28 22:01:03,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:01:03,731.731 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:01:03,861.861 INFO    ] No existing commands found in stream
[2026-10-28 22:01:08,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:01:08,891.891 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-28 22:01:13,277.277 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:01:13,279.279 INFO    ] Checking for system updates...
[2026-10-28 22:01:13,318.318 INFO    ] 200
[2026-10-28 22:01:13,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:01:13,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:01:13,383.383 INFO    ] No update needed
[2026-10-28 22:01:13,386.386 INFO    ] Checking for camera pi updates...
[2026-10-28 22:01:13,425.425 INFO    ] 200
[2026-10-28 22:01:13,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:01:13,468.468 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:01:13,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:01:13,557.557 INFO    ] No camera update needed
[2026-10-28 22:01:13,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:01:13,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:01:13,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:01:13,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:01:15,614.614 INFO    ] ================================================
[2026-10-28 22:01:15,628.628 INFO    ] Launching Daemon at Wed Oct 28 22:01:15 IST 2026
[2026-10-28 22:01:15,639.639 INFO    ] ================================================
[2026-10-28 22:01:16,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:01:16
[2026-10-28 22:01:16,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:01:17,220.220 INFO    ] Initializing speech engine...
[2026-10-28 22:01:17,234.234 INFO    ] 2026-10-28 22:01:17
[2026-10-28 22:01:17,542.542 INFO    ] 2026-10-28 22:01:17
[2026-10-28 22:01:17,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:01:17,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:01:17,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:01:18,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:01:18,206.206 INFO    ] time= 28/10/2026 22:01:18
[2026-10-28 22:01:18,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:01:18,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:01:18,447.447 INFO    ] No existing commands found in stream
[2026-10-28 22:01:23,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:01:23,464.464 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-10-28 22:01:27,615.615 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:01:27,618.618 INFO    ] Checking for system updates...
[2026-10-28 22:01:27,654.654 INFO    ] 200
[2026-10-28 22:01:27,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:01:27,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:01:27,710.710 INFO    ] No update needed
[2026-10-28 22:01:27,712.712 INFO    ] Checking for camera pi updates...
[2026-10-28 22:01:27,746.746 INFO    ] 200
[2026-10-28 22:01:27,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:01:27,789.789 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:01:27,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:01:27,876.876 INFO    ] No camera update needed
[2026-10-28 22:01:27,878.878 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:01:27,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:01:27,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:01:27,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:01:29,931.931 INFO    ] ================================================
[2026-10-28 22:01:29,946.946 INFO    ] Launching Daemon at Wed Oct 28 22:01:29 IST 2026
[2026-10-28 22:01:29,956.956 INFO    ] ================================================
[2026-10-28 22:01:30,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:01:30
[2026-10-28 22:01:31,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:01:31,390.390 INFO    ] Initializing speech engine...
[2026-10-28 22:01:31,400.400 INFO    ] 2026-10-28 22:01:31
[2026-10-28 22:01:31,681.681 INFO    ] 2026-10-28 22:01:31
[2026-10-28 22:01:31,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:01:31,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:01:32,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:01:32,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:01:32,269.269 INFO    ] time= 28/10/2026 22:01:32
[2026-10-28 22:01:32,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:01:32,308.308 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:01:32,451.451 INFO    ] No existing commands found in stream
[2026-10-28 22:01:37,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:01:37,479.479 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 22:01:41,834.834 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:01:41,837.837 INFO    ] Checking for system updates...
[2026-10-28 22:01:41,874.874 INFO    ] 200
[2026-10-28 22:01:41,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:01:41,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:01:41,931.931 INFO    ] No update needed
[2026-10-28 22:01:41,933.933 INFO    ] Checking for camera pi updates...
[2026-10-28 22:01:41,968.968 INFO    ] 200
[2026-10-28 22:01:41,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:01:42,019.019 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:01:42,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:01:42,102.102 INFO    ] No camera update needed
[2026-10-28 22:01:42,104.104 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:01:42,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:01:42,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:01:42,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:01:44,156.156 INFO    ] ================================================
[2026-10-28 22:01:44,171.171 INFO    ] Launching Daemon at Wed Oct 28 22:01:44 IST 2026
[2026-10-28 22:01:44,182.182 INFO    ] ================================================
[2026-10-28 22:01:44,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:01:44
[2026-10-28 22:01:45,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:01:45,596.596 INFO    ] Initializing speech engine...
[2026-10-28 22:01:45,603.603 INFO    ] 2026-10-28 22:01:45
[2026-10-28 22:01:45,890.890 INFO    ] 2026-10-28 22:01:45
[2026-10-28 22:01:45,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:01:46,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:01:46,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:01:46,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:01:46,430.430 INFO    ] time= 28/10/2026 22:01:46
[2026-10-28 22:01:46,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:01:46,516.516 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:01:46,648.648 INFO    ] No existing commands found in stream
[2026-10-28 22:01:51,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:01:51,681.681 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-10-28 22:01:55,954.954 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:01:55,956.956 INFO    ] Checking for system updates...
[2026-10-28 22:01:55,993.993 INFO    ] 200
[2026-10-28 22:01:55,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:01:56,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:01:56,051.051 INFO    ] No update needed
[2026-10-28 22:01:56,053.053 INFO    ] Checking for camera pi updates...
[2026-10-28 22:01:56,086.086 INFO    ] 200
[2026-10-28 22:01:56,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:01:56,132.132 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:01:56,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:01:56,215.215 INFO    ] No camera update needed
[2026-10-28 22:01:56,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:01:56,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:01:56,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:01:56,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:01:58,270.270 INFO    ] ================================================
[2026-10-28 22:01:58,285.285 INFO    ] Launching Daemon at Wed Oct 28 22:01:58 IST 2026
[2026-10-28 22:01:58,296.296 INFO    ] ================================================
[2026-10-28 22:01:58,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:01:58
[2026-10-28 22:01:59,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:01:59,766.766 INFO    ] Initializing speech engine...
[2026-10-28 22:01:59,772.772 INFO    ] 2026-10-28 22:01:59
[2026-10-28 22:02:00,054.054 INFO    ] 2026-10-28 22:02:00
[2026-10-28 22:02:00,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:02:00,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:02:00,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:02:00,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:02:00,621.621 INFO    ] time= 28/10/2026 22:02:00
[2026-10-28 22:02:00,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:02:00,637.637 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:02:00,754.754 INFO    ] No existing commands found in stream
[2026-10-28 22:02:05,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:02:05,792.792 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-28 22:02:09,019.019 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:02:09,021.021 INFO    ] Checking for system updates...
[2026-10-28 22:02:09,059.059 INFO    ] 200
[2026-10-28 22:02:09,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:02:09,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:02:09,122.122 INFO    ] No update needed
[2026-10-28 22:02:09,124.124 INFO    ] Checking for camera pi updates...
[2026-10-28 22:02:09,158.158 INFO    ] 200
[2026-10-28 22:02:09,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:02:09,203.203 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:02:09,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:02:09,309.309 INFO    ] No camera update needed
[2026-10-28 22:02:09,311.311 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:02:09,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:02:09,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:02:09,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:02:11,364.364 INFO    ] ================================================
[2026-10-28 22:02:11,379.379 INFO    ] Launching Daemon at Wed Oct 28 22:02:11 IST 2026
[2026-10-28 22:02:11,390.390 INFO    ] ================================================
[2026-10-28 22:02:11,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:02:11
[2026-10-28 22:02:12,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:02:12,806.806 INFO    ] Initializing speech engine...
[2026-10-28 22:02:12,814.814 INFO    ] 2026-10-28 22:02:12
[2026-10-28 22:02:13,061.061 INFO    ] 2026-10-28 22:02:13
[2026-10-28 22:02:13,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:02:13,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:02:13,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:02:13,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:02:13,612.612 INFO    ] time= 28/10/2026 22:02:13
[2026-10-28 22:02:13,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:02:13,636.636 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:02:13,781.781 INFO    ] No existing commands found in stream
[2026-10-28 22:02:18,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:02:18,809.809 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-28 22:02:23,014.014 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:02:23,016.016 INFO    ] Checking for system updates...
[2026-10-28 22:02:23,051.051 INFO    ] 200
[2026-10-28 22:02:23,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:02:23,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:02:23,113.113 INFO    ] No update needed
[2026-10-28 22:02:23,116.116 INFO    ] Checking for camera pi updates...
[2026-10-28 22:02:23,151.151 INFO    ] 200
[2026-10-28 22:02:23,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:02:23,194.194 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:02:23,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:02:23,301.301 INFO    ] No camera update needed
[2026-10-28 22:02:23,304.304 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:02:23,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:02:23,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:02:23,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:02:25,357.357 INFO    ] ================================================
[2026-10-28 22:02:25,372.372 INFO    ] Launching Daemon at Wed Oct 28 22:02:25 IST 2026
[2026-10-28 22:02:25,382.382 INFO    ] ================================================
[2026-10-28 22:02:25,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:02:25
[2026-10-28 22:02:26,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:02:26,802.802 INFO    ] Initializing speech engine...
[2026-10-28 22:02:26,821.821 INFO    ] 2026-10-28 22:02:26
[2026-10-28 22:02:27,082.082 INFO    ] 2026-10-28 22:02:27
[2026-10-28 22:02:27,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:02:27,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:02:27,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:02:27,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:02:27,688.688 INFO    ] time= 28/10/2026 22:02:27
[2026-10-28 22:02:27,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:02:27,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:02:27,855.855 INFO    ] No existing commands found in stream
[2026-10-28 22:02:32,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:02:32,869.869 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-28 22:02:34,646.646 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:02:34,648.648 INFO    ] Checking for system updates...
[2026-10-28 22:02:34,684.684 INFO    ] 200
[2026-10-28 22:02:34,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:02:34,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:02:34,750.750 INFO    ] No update needed
[2026-10-28 22:02:34,753.753 INFO    ] Checking for camera pi updates...
[2026-10-28 22:02:34,789.789 INFO    ] 200
[2026-10-28 22:02:34,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:02:34,832.832 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:02:34,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:02:34,919.919 INFO    ] No camera update needed
[2026-10-28 22:02:34,921.921 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:02:34,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:02:34,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:02:34,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:02:36,979.979 INFO    ] ================================================
[2026-10-28 22:02:36,994.994 INFO    ] Launching Daemon at Wed Oct 28 22:02:36 IST 2026
[2026-10-28 22:02:37,005.005 INFO    ] ================================================
[2026-10-28 22:02:37,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:02:37
[2026-10-28 22:02:38,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:02:38,423.423 INFO    ] Initializing speech engine...
[2026-10-28 22:02:38,433.433 INFO    ] 2026-10-28 22:02:38
[2026-10-28 22:02:38,677.677 INFO    ] 2026-10-28 22:02:38
[2026-10-28 22:02:38,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:02:38,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:02:38,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:02:39,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:02:39,231.231 INFO    ] time= 28/10/2026 22:02:39
[2026-10-28 22:02:39,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:02:39,271.271 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:02:39,407.407 INFO    ] No existing commands found in stream
[2026-10-28 22:02:44,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:02:44,435.435 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 22:02:45,806.806 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:02:45,809.809 INFO    ] Checking for system updates...
[2026-10-28 22:02:45,845.845 INFO    ] 200
[2026-10-28 22:02:45,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:02:45,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:02:45,910.910 INFO    ] No update needed
[2026-10-28 22:02:45,912.912 INFO    ] Checking for camera pi updates...
[2026-10-28 22:02:45,948.948 INFO    ] 200
[2026-10-28 22:02:45,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:02:45,990.990 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:02:46,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:02:46,076.076 INFO    ] No camera update needed
[2026-10-28 22:02:46,078.078 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:02:46,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:02:46,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:02:46,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:02:48,132.132 INFO    ] ================================================
[2026-10-28 22:02:48,147.147 INFO    ] Launching Daemon at Wed Oct 28 22:02:48 IST 2026
[2026-10-28 22:02:48,158.158 INFO    ] ================================================
[2026-10-28 22:02:48,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:02:48
[2026-10-28 22:02:49,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:02:49,574.574 INFO    ] Initializing speech engine...
[2026-10-28 22:02:49,584.584 INFO    ] 2026-10-28 22:02:49
[2026-10-28 22:02:49,830.830 INFO    ] 2026-10-28 22:02:49
[2026-10-28 22:02:49,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:02:50,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:02:50,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:02:50,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:02:50,385.385 INFO    ] time= 28/10/2026 22:02:50
[2026-10-28 22:02:50,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:02:50,415.415 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:02:50,552.552 INFO    ] No existing commands found in stream
[2026-10-28 22:02:55,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:02:55,580.580 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-28 22:02:56,538.538 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:02:56,540.540 INFO    ] Checking for system updates...
[2026-10-28 22:02:56,576.576 INFO    ] 200
[2026-10-28 22:02:56,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:02:56,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:02:56,637.637 INFO    ] No update needed
[2026-10-28 22:02:56,639.639 INFO    ] Checking for camera pi updates...
[2026-10-28 22:02:56,673.673 INFO    ] 200
[2026-10-28 22:02:56,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:02:56,719.719 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:02:56,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:02:56,795.795 INFO    ] No camera update needed
[2026-10-28 22:02:56,797.797 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:02:56,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:02:56,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:02:56,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:02:58,849.849 INFO    ] ================================================
[2026-10-28 22:02:58,865.865 INFO    ] Launching Daemon at Wed Oct 28 22:02:58 IST 2026
[2026-10-28 22:02:58,875.875 INFO    ] ================================================
[2026-10-28 22:02:59,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:02:59
[2026-10-28 22:03:00,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:03:00,360.360 INFO    ] Initializing speech engine...
[2026-10-28 22:03:00,369.369 INFO    ] 2026-10-28 22:03:00
[2026-10-28 22:03:00,626.626 INFO    ] 2026-10-28 22:03:00
[2026-10-28 22:03:00,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:03:00,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:03:00,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:03:01,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:03:01,172.172 INFO    ] time= 28/10/2026 22:03:01
[2026-10-28 22:03:01,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:03:01,196.196 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:03:01,275.275 INFO    ] No existing commands found in stream
[2026-10-28 22:03:06,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:03:06,290.290 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-28 22:03:10,858.858 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:03:10,860.860 INFO    ] Checking for system updates...
[2026-10-28 22:03:10,897.897 INFO    ] 200
[2026-10-28 22:03:10,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:03:10,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:03:10,959.959 INFO    ] No update needed
[2026-10-28 22:03:10,961.961 INFO    ] Checking for camera pi updates...
[2026-10-28 22:03:11,002.002 INFO    ] 200
[2026-10-28 22:03:11,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:03:11,049.049 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:03:11,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:03:11,158.158 INFO    ] No camera update needed
[2026-10-28 22:03:11,160.160 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:03:11,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:03:11,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:03:11,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:03:13,216.216 INFO    ] ================================================
[2026-10-28 22:03:13,231.231 INFO    ] Launching Daemon at Wed Oct 28 22:03:13 IST 2026
[2026-10-28 22:03:13,241.241 INFO    ] ================================================
[2026-10-28 22:03:13,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:03:13
[2026-10-28 22:03:14,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:03:14,699.699 INFO    ] Initializing speech engine...
[2026-10-28 22:03:14,707.707 INFO    ] 2026-10-28 22:03:14
[2026-10-28 22:03:14,964.964 INFO    ] 2026-10-28 22:03:14
[2026-10-28 22:03:14,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:03:15,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:03:15,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:03:15,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:03:15,507.507 INFO    ] time= 28/10/2026 22:03:15
[2026-10-28 22:03:15,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:03:15,532.532 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:03:15,655.655 INFO    ] No existing commands found in stream
[2026-10-28 22:03:20,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:03:20,674.674 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-28 22:03:23,164.164 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:03:23,167.167 INFO    ] Checking for system updates...
[2026-10-28 22:03:23,205.205 INFO    ] 200
[2026-10-28 22:03:23,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:03:23,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:03:23,266.266 INFO    ] No update needed
[2026-10-28 22:03:23,268.268 INFO    ] Checking for camera pi updates...
[2026-10-28 22:03:23,302.302 INFO    ] 200
[2026-10-28 22:03:23,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:03:23,348.348 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:03:23,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:03:23,431.431 INFO    ] No camera update needed
[2026-10-28 22:03:23,434.434 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:03:23,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:03:23,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:03:23,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:03:25,488.488 INFO    ] ================================================
[2026-10-28 22:03:25,503.503 INFO    ] Launching Daemon at Wed Oct 28 22:03:25 IST 2026
[2026-10-28 22:03:25,513.513 INFO    ] ================================================
[2026-10-28 22:03:26,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:03:26
[2026-10-28 22:03:26,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:03:27,071.071 INFO    ] Initializing speech engine...
[2026-10-28 22:03:27,084.084 INFO    ] 2026-10-28 22:03:27
[2026-10-28 22:03:27,351.351 INFO    ] 2026-10-28 22:03:27
[2026-10-28 22:03:27,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:03:27,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:03:27,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:03:27,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:03:27,993.993 INFO    ] time= 28/10/2026 22:03:27
[2026-10-28 22:03:28,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:03:28,115.115 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:03:28,260.260 INFO    ] No existing commands found in stream
[2026-10-28 22:03:33,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:03:33,289.289 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-10-28 22:03:37,638.638 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:03:37,641.641 INFO    ] Checking for system updates...
[2026-10-28 22:03:37,680.680 INFO    ] 200
[2026-10-28 22:03:37,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:03:37,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:03:37,739.739 INFO    ] No update needed
[2026-10-28 22:03:37,742.742 INFO    ] Checking for camera pi updates...
[2026-10-28 22:03:37,777.777 INFO    ] 200
[2026-10-28 22:03:37,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:03:37,821.821 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:03:37,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:03:37,922.922 INFO    ] No camera update needed
[2026-10-28 22:03:37,925.925 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:03:37,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:03:37,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:03:37,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:03:39,978.978 INFO    ] ================================================
[2026-10-28 22:03:39,994.994 INFO    ] Launching Daemon at Wed Oct 28 22:03:39 IST 2026
[2026-10-28 22:03:40,004.004 INFO    ] ================================================
[2026-10-28 22:03:40,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:03:40
[2026-10-28 22:03:41,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:03:41,442.442 INFO    ] Initializing speech engine...
[2026-10-28 22:03:41,451.451 INFO    ] 2026-10-28 22:03:41
[2026-10-28 22:03:41,737.737 INFO    ] 2026-10-28 22:03:41
[2026-10-28 22:03:41,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:03:41,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:03:42,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:03:42,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:03:42,347.347 INFO    ] time= 28/10/2026 22:03:42
[2026-10-28 22:03:42,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:03:42,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:03:42,495.495 INFO    ] No existing commands found in stream
[2026-10-28 22:03:47,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:03:47,517.517 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-28 22:03:50,046.046 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:03:50,049.049 INFO    ] Checking for system updates...
[2026-10-28 22:03:50,087.087 INFO    ] 200
[2026-10-28 22:03:50,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:03:50,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:03:50,149.149 INFO    ] No update needed
[2026-10-28 22:03:50,151.151 INFO    ] Checking for camera pi updates...
[2026-10-28 22:03:50,184.184 INFO    ] 200
[2026-10-28 22:03:50,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:03:50,227.227 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:03:50,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:03:50,308.308 INFO    ] No camera update needed
[2026-10-28 22:03:50,310.310 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:03:50,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:03:50,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:03:50,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:03:52,363.363 INFO    ] ================================================
[2026-10-28 22:03:52,378.378 INFO    ] Launching Daemon at Wed Oct 28 22:03:52 IST 2026
[2026-10-28 22:03:52,389.389 INFO    ] ================================================
[2026-10-28 22:03:52,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:03:52
[2026-10-28 22:03:53,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:03:53,844.844 INFO    ] Initializing speech engine...
[2026-10-28 22:03:53,857.857 INFO    ] 2026-10-28 22:03:53
[2026-10-28 22:03:54,107.107 INFO    ] 2026-10-28 22:03:54
[2026-10-28 22:03:54,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:03:54,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:03:54,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:03:54,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:03:54,674.674 INFO    ] time= 28/10/2026 22:03:54
[2026-10-28 22:03:54,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:03:54,709.709 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:03:54,921.921 INFO    ] No existing commands found in stream
[2026-10-28 22:03:59,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:03:59,935.935 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-28 22:04:01,913.913 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:04:01,916.916 INFO    ] Checking for system updates...
[2026-10-28 22:04:01,978.978 INFO    ] 200
[2026-10-28 22:04:01,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:04:02,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:04:02,089.089 INFO    ] No update needed
[2026-10-28 22:04:02,093.093 INFO    ] Checking for camera pi updates...
[2026-10-28 22:04:02,145.145 INFO    ] 200
[2026-10-28 22:04:02,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:04:02,232.232 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:04:02,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:04:02,377.377 INFO    ] No camera update needed
[2026-10-28 22:04:02,385.385 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:04:02,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:04:02,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:04:02,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:04:04,458.458 INFO    ] ================================================
[2026-10-28 22:04:04,473.473 INFO    ] Launching Daemon at Wed Oct 28 22:04:04 IST 2026
[2026-10-28 22:04:04,484.484 INFO    ] ================================================
[2026-10-28 22:04:05,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:04:05
[2026-10-28 22:04:05,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:04:06,095.095 INFO    ] Initializing speech engine...
[2026-10-28 22:04:06,108.108 INFO    ] 2026-10-28 22:04:06
[2026-10-28 22:04:06,391.391 INFO    ] 2026-10-28 22:04:06
[2026-10-28 22:04:06,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:04:06,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:04:06,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:04:06,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:04:06,953.953 INFO    ] time= 28/10/2026 22:04:06
[2026-10-28 22:04:06,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:04:06,990.990 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:04:07,126.126 INFO    ] No existing commands found in stream
[2026-10-28 22:04:12,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:04:12,155.155 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-28 22:04:15,637.637 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:04:15,640.640 INFO    ] Checking for system updates...
[2026-10-28 22:04:15,679.679 INFO    ] 200
[2026-10-28 22:04:15,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:04:15,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:04:15,739.739 INFO    ] No update needed
[2026-10-28 22:04:15,741.741 INFO    ] Checking for camera pi updates...
[2026-10-28 22:04:15,775.775 INFO    ] 200
[2026-10-28 22:04:15,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:04:15,825.825 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:04:15,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:04:15,981.981 INFO    ] No camera update needed
[2026-10-28 22:04:15,984.984 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:04:15,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:04:15,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:04:15,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:04:18,041.041 INFO    ] ================================================
[2026-10-28 22:04:18,056.056 INFO    ] Launching Daemon at Wed Oct 28 22:04:18 IST 2026
[2026-10-28 22:04:18,067.067 INFO    ] ================================================
[2026-10-28 22:04:18,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:04:18
[2026-10-28 22:04:19,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:04:19,479.479 INFO    ] Initializing speech engine...
[2026-10-28 22:04:19,495.495 INFO    ] 2026-10-28 22:04:19
[2026-10-28 22:04:19,746.746 INFO    ] 2026-10-28 22:04:19
[2026-10-28 22:04:19,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:04:20,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:04:20,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:04:20,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:04:20,301.301 INFO    ] time= 28/10/2026 22:04:20
[2026-10-28 22:04:20,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:04:20,325.325 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:04:20,473.473 INFO    ] No existing commands found in stream
[2026-10-28 22:04:25,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:04:25,506.506 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 22:04:26,876.876 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:04:26,879.879 INFO    ] Checking for system updates...
[2026-10-28 22:04:26,914.914 INFO    ] 200
[2026-10-28 22:04:26,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:04:26,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:04:26,972.972 INFO    ] No update needed
[2026-10-28 22:04:26,975.975 INFO    ] Checking for camera pi updates...
[2026-10-28 22:04:27,008.008 INFO    ] 200
[2026-10-28 22:04:27,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:04:27,055.055 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:04:27,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:04:27,142.142 INFO    ] No camera update needed
[2026-10-28 22:04:27,144.144 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:04:27,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:04:27,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:04:27,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:04:29,198.198 INFO    ] ================================================
[2026-10-28 22:04:29,214.214 INFO    ] Launching Daemon at Wed Oct 28 22:04:29 IST 2026
[2026-10-28 22:04:29,225.225 INFO    ] ================================================
[2026-10-28 22:04:29,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:04:29
[2026-10-28 22:04:30,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:04:30,831.831 INFO    ] Initializing speech engine...
[2026-10-28 22:04:30,844.844 INFO    ] 2026-10-28 22:04:30
[2026-10-28 22:04:31,128.128 INFO    ] 2026-10-28 22:04:31
[2026-10-28 22:04:31,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:04:31,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:04:31,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:04:31,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:04:31,916.916 INFO    ] time= 28/10/2026 22:04:31
[2026-10-28 22:04:31,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:04:32,016.016 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:04:32,135.135 INFO    ] No existing commands found in stream
[2026-10-28 22:04:37,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:04:37,149.149 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-28 22:04:39,877.877 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:04:39,880.880 INFO    ] Checking for system updates...
[2026-10-28 22:04:39,920.920 INFO    ] 200
[2026-10-28 22:04:39,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:04:39,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:04:39,980.980 INFO    ] No update needed
[2026-10-28 22:04:39,983.983 INFO    ] Checking for camera pi updates...
[2026-10-28 22:04:40,018.018 INFO    ] 200
[2026-10-28 22:04:40,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:04:40,062.062 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:04:40,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:04:40,146.146 INFO    ] No camera update needed
[2026-10-28 22:04:40,149.149 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:04:40,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:04:40,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:04:40,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:04:42,205.205 INFO    ] ================================================
[2026-10-28 22:04:42,221.221 INFO    ] Launching Daemon at Wed Oct 28 22:04:42 IST 2026
[2026-10-28 22:04:42,232.232 INFO    ] ================================================
[2026-10-28 22:04:42,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:04:42
[2026-10-28 22:04:43,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:04:43,837.837 INFO    ] Initializing speech engine...
[2026-10-28 22:04:43,846.846 INFO    ] 2026-10-28 22:04:43
[2026-10-28 22:04:44,166.166 INFO    ] 2026-10-28 22:04:44
[2026-10-28 22:04:44,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:04:44,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:04:44,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:04:44,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:04:44,851.851 INFO    ] time= 28/10/2026 22:04:44
[2026-10-28 22:04:44,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:04:44,943.943 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:04:45,084.084 INFO    ] No existing commands found in stream
[2026-10-28 22:04:50,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:04:50,103.103 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-28 22:04:51,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:04:51,839.839 INFO    ] Checking for system updates...
[2026-10-28 22:04:51,876.876 INFO    ] 200
[2026-10-28 22:04:51,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:04:51,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:04:51,936.936 INFO    ] No update needed
[2026-10-28 22:04:51,938.938 INFO    ] Checking for camera pi updates...
[2026-10-28 22:04:51,973.973 INFO    ] 200
[2026-10-28 22:04:51,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:04:52,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:04:52,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:04:52,074.074 INFO    ] No camera update needed
[2026-10-28 22:04:52,077.077 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:04:52,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:04:52,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:04:52,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:04:54,133.133 INFO    ] ================================================
[2026-10-28 22:04:54,149.149 INFO    ] Launching Daemon at Wed Oct 28 22:04:54 IST 2026
[2026-10-28 22:04:54,160.160 INFO    ] ================================================
[2026-10-28 22:04:54,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:04:54
[2026-10-28 22:04:55,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:04:55,596.596 INFO    ] Initializing speech engine...
[2026-10-28 22:04:55,619.619 INFO    ] 2026-10-28 22:04:55
[2026-10-28 22:04:55,873.873 INFO    ] 2026-10-28 22:04:55
[2026-10-28 22:04:55,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:04:56,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:04:56,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:04:56,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:04:56,420.420 INFO    ] time= 28/10/2026 22:04:56
[2026-10-28 22:04:56,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:04:56,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:04:56,585.585 INFO    ] No existing commands found in stream
[2026-10-28 22:05:01,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:05:01,620.620 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-10-28 22:05:02,924.924 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:05:02,926.926 INFO    ] Checking for system updates...
[2026-10-28 22:05:02,967.967 INFO    ] 200
[2026-10-28 22:05:02,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:05:03,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:05:03,035.035 INFO    ] No update needed
[2026-10-28 22:05:03,037.037 INFO    ] Checking for camera pi updates...
[2026-10-28 22:05:03,071.071 INFO    ] 200
[2026-10-28 22:05:03,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:05:03,130.130 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:05:03,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:05:03,232.232 INFO    ] No camera update needed
[2026-10-28 22:05:03,236.236 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:05:03,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:05:03,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:05:03,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:05:05,297.297 INFO    ] ================================================
[2026-10-28 22:05:05,313.313 INFO    ] Launching Daemon at Wed Oct 28 22:05:05 IST 2026
[2026-10-28 22:05:05,324.324 INFO    ] ================================================
[2026-10-28 22:05:05,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:05:05
[2026-10-28 22:05:06,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:05:06,766.766 INFO    ] Initializing speech engine...
[2026-10-28 22:05:06,774.774 INFO    ] 2026-10-28 22:05:06
[2026-10-28 22:05:07,068.068 INFO    ] 2026-10-28 22:05:07
[2026-10-28 22:05:07,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:05:07,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:05:07,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:05:07,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:05:07,702.702 INFO    ] time= 28/10/2026 22:05:07
[2026-10-28 22:05:07,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:05:07,729.729 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:05:07,874.874 INFO    ] No existing commands found in stream
[2026-10-28 22:05:12,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:05:12,892.892 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-28 22:05:15,160.160 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:05:15,164.164 INFO    ] Checking for system updates...
[2026-10-28 22:05:15,201.201 INFO    ] 200
[2026-10-28 22:05:15,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:05:15,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:05:15,259.259 INFO    ] No update needed
[2026-10-28 22:05:15,262.262 INFO    ] Checking for camera pi updates...
[2026-10-28 22:05:15,297.297 INFO    ] 200
[2026-10-28 22:05:15,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:05:15,341.341 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:05:15,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:05:15,428.428 INFO    ] No camera update needed
[2026-10-28 22:05:15,430.430 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:05:15,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:05:15,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:05:15,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:05:17,487.487 INFO    ] ================================================
[2026-10-28 22:05:17,503.503 INFO    ] Launching Daemon at Wed Oct 28 22:05:17 IST 2026
[2026-10-28 22:05:17,515.515 INFO    ] ================================================
[2026-10-28 22:05:18,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:05:18
[2026-10-28 22:05:18,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:05:18,930.930 INFO    ] Initializing speech engine...
[2026-10-28 22:05:18,938.938 INFO    ] 2026-10-28 22:05:18
[2026-10-28 22:05:19,190.190 INFO    ] 2026-10-28 22:05:19
[2026-10-28 22:05:19,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:05:19,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:05:19,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:05:19,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:05:19,761.761 INFO    ] time= 28/10/2026 22:05:19
[2026-10-28 22:05:19,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:05:19,786.786 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:05:19,922.922 INFO    ] No existing commands found in stream
[2026-10-28 22:05:24,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:05:24,944.944 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-10-28 22:05:25,606.606 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:05:25,609.609 INFO    ] Checking for system updates...
[2026-10-28 22:05:25,649.649 INFO    ] 200
[2026-10-28 22:05:25,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:05:25,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:05:25,709.709 INFO    ] No update needed
[2026-10-28 22:05:25,712.712 INFO    ] Checking for camera pi updates...
[2026-10-28 22:05:25,747.747 INFO    ] 200
[2026-10-28 22:05:25,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:05:25,791.791 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:05:25,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:05:25,892.892 INFO    ] No camera update needed
[2026-10-28 22:05:25,895.895 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:05:25,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:05:25,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:05:25,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:05:27,951.951 INFO    ] ================================================
[2026-10-28 22:05:27,967.967 INFO    ] Launching Daemon at Wed Oct 28 22:05:27 IST 2026
[2026-10-28 22:05:27,979.979 INFO    ] ================================================
[2026-10-28 22:05:28,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:05:28
[2026-10-28 22:05:29,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:05:29,411.411 INFO    ] Initializing speech engine...
[2026-10-28 22:05:29,419.419 INFO    ] 2026-10-28 22:05:29
[2026-10-28 22:05:29,672.672 INFO    ] 2026-10-28 22:05:29
[2026-10-28 22:05:29,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:05:29,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:05:29,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:05:30,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:05:30,242.242 INFO    ] time= 28/10/2026 22:05:30
[2026-10-28 22:05:30,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:05:30,290.290 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:05:30,421.421 INFO    ] No existing commands found in stream
[2026-10-28 22:05:35,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:05:35,454.454 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 22:05:37,915.915 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:05:37,918.918 INFO    ] Checking for system updates...
[2026-10-28 22:05:37,955.955 INFO    ] 200
[2026-10-28 22:05:37,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:05:38,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:05:38,014.014 INFO    ] No update needed
[2026-10-28 22:05:38,017.017 INFO    ] Checking for camera pi updates...
[2026-10-28 22:05:38,051.051 INFO    ] 200
[2026-10-28 22:05:38,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:05:38,096.096 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:05:38,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:05:38,184.184 INFO    ] No camera update needed
[2026-10-28 22:05:38,187.187 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:05:38,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:05:38,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:05:38,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:05:40,239.239 INFO    ] ================================================
[2026-10-28 22:05:40,255.255 INFO    ] Launching Daemon at Wed Oct 28 22:05:40 IST 2026
[2026-10-28 22:05:40,266.266 INFO    ] ================================================
[2026-10-28 22:05:40,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:05:40
[2026-10-28 22:05:41,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:05:41,666.666 INFO    ] Initializing speech engine...
[2026-10-28 22:05:41,678.678 INFO    ] 2026-10-28 22:05:41
[2026-10-28 22:05:41,944.944 INFO    ] 2026-10-28 22:05:41
[2026-10-28 22:05:41,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:05:42,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:05:42,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:05:42,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:05:42,515.515 INFO    ] time= 28/10/2026 22:05:42
[2026-10-28 22:05:42,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:05:42,550.550 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:05:42,686.686 INFO    ] No existing commands found in stream
[2026-10-28 22:05:47,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:05:47,725.725 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-28 22:05:49,957.957 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:05:49,960.960 INFO    ] Checking for system updates...
[2026-10-28 22:05:50,003.003 INFO    ] 200
[2026-10-28 22:05:50,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:05:50,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:05:50,073.073 INFO    ] No update needed
[2026-10-28 22:05:50,076.076 INFO    ] Checking for camera pi updates...
[2026-10-28 22:05:50,112.112 INFO    ] 200
[2026-10-28 22:05:50,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:05:50,159.159 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:05:50,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:05:50,262.262 INFO    ] No camera update needed
[2026-10-28 22:05:50,266.266 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:05:50,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:05:50,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:05:50,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:05:52,326.326 INFO    ] ================================================
[2026-10-28 22:05:52,341.341 INFO    ] Launching Daemon at Wed Oct 28 22:05:52 IST 2026
[2026-10-28 22:05:52,352.352 INFO    ] ================================================
[2026-10-28 22:05:53,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:05:52
[2026-10-28 22:05:53,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:05:53,979.979 INFO    ] Initializing speech engine...
[2026-10-28 22:05:53,996.996 INFO    ] 2026-10-28 22:05:53
[2026-10-28 22:05:54,308.308 INFO    ] 2026-10-28 22:05:54
[2026-10-28 22:05:54,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:05:54,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:05:54,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:05:54,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:05:54,909.909 INFO    ] time= 28/10/2026 22:05:54
[2026-10-28 22:05:54,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:05:54,979.979 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:05:55,120.120 INFO    ] No existing commands found in stream
[2026-10-28 22:06:00,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:06:00,154.154 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-28 22:06:04,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:06:04,575.575 INFO    ] Checking for system updates...
[2026-10-28 22:06:04,611.611 INFO    ] 200
[2026-10-28 22:06:04,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:06:04,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:06:04,669.669 INFO    ] No update needed
[2026-10-28 22:06:04,671.671 INFO    ] Checking for camera pi updates...
[2026-10-28 22:06:04,705.705 INFO    ] 200
[2026-10-28 22:06:04,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:06:04,752.752 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:06:04,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:06:04,834.834 INFO    ] No camera update needed
[2026-10-28 22:06:04,837.837 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:06:04,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:06:04,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:06:04,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:06:06,890.890 INFO    ] ================================================
[2026-10-28 22:06:06,906.906 INFO    ] Launching Daemon at Wed Oct 28 22:06:06 IST 2026
[2026-10-28 22:06:06,917.917 INFO    ] ================================================
[2026-10-28 22:06:07,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:06:07
[2026-10-28 22:06:08,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:06:08,398.398 INFO    ] Initializing speech engine...
[2026-10-28 22:06:08,412.412 INFO    ] 2026-10-28 22:06:08
[2026-10-28 22:06:08,667.667 INFO    ] 2026-10-28 22:06:08
[2026-10-28 22:06:08,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:06:08,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:06:08,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:06:09,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:06:09,235.235 INFO    ] time= 28/10/2026 22:06:09
[2026-10-28 22:06:09,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:06:09,275.275 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:06:09,415.415 INFO    ] No existing commands found in stream
[2026-10-28 22:06:14,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:06:14,448.448 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-28 22:06:16,313.313 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:06:16,316.316 INFO    ] Checking for system updates...
[2026-10-28 22:06:16,352.352 INFO    ] 200
[2026-10-28 22:06:16,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:06:16,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:06:16,415.415 INFO    ] No update needed
[2026-10-28 22:06:16,418.418 INFO    ] Checking for camera pi updates...
[2026-10-28 22:06:16,451.451 INFO    ] 200
[2026-10-28 22:06:16,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:06:16,494.494 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:06:16,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:06:16,564.564 INFO    ] No camera update needed
[2026-10-28 22:06:16,567.567 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:06:16,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:06:16,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:06:16,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:06:18,619.619 INFO    ] ================================================
[2026-10-28 22:06:18,635.635 INFO    ] Launching Daemon at Wed Oct 28 22:06:18 IST 2026
[2026-10-28 22:06:18,646.646 INFO    ] ================================================
[2026-10-28 22:06:19,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:06:19
[2026-10-28 22:06:19,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:06:20,235.235 INFO    ] Initializing speech engine...
[2026-10-28 22:06:20,249.249 INFO    ] 2026-10-28 22:06:20
[2026-10-28 22:06:20,515.515 INFO    ] 2026-10-28 22:06:20
[2026-10-28 22:06:20,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:06:20,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:06:20,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:06:21,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:06:21,090.090 INFO    ] time= 28/10/2026 22:06:21
[2026-10-28 22:06:21,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:06:21,126.126 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:06:21,300.300 INFO    ] No existing commands found in stream
[2026-10-28 22:06:26,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:06:26,329.329 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-28 22:06:28,088.088 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:06:28,091.091 INFO    ] Checking for system updates...
[2026-10-28 22:06:28,130.130 INFO    ] 200
[2026-10-28 22:06:28,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:06:28,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:06:28,191.191 INFO    ] No update needed
[2026-10-28 22:06:28,194.194 INFO    ] Checking for camera pi updates...
[2026-10-28 22:06:28,228.228 INFO    ] 200
[2026-10-28 22:06:28,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:06:28,277.277 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:06:28,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:06:28,483.483 INFO    ] No camera update needed
[2026-10-28 22:06:28,486.486 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:06:28,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:06:28,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:06:28,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:06:30,541.541 INFO    ] ================================================
[2026-10-28 22:06:30,556.556 INFO    ] Launching Daemon at Wed Oct 28 22:06:30 IST 2026
[2026-10-28 22:06:30,567.567 INFO    ] ================================================
[2026-10-28 22:06:31,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:06:31
[2026-10-28 22:06:31,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:06:32,055.055 INFO    ] Initializing speech engine...
[2026-10-28 22:06:32,075.075 INFO    ] 2026-10-28 22:06:32
[2026-10-28 22:06:32,345.345 INFO    ] 2026-10-28 22:06:32
[2026-10-28 22:06:32,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:06:32,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:06:32,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:06:32,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:06:32,928.928 INFO    ] time= 28/10/2026 22:06:32
[2026-10-28 22:06:32,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:06:32,959.959 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:06:33,110.110 INFO    ] No existing commands found in stream
[2026-10-28 22:06:38,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:06:38,134.134 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-10-28 22:06:40,804.804 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:06:40,807.807 INFO    ] Checking for system updates...
[2026-10-28 22:06:40,842.842 INFO    ] 200
[2026-10-28 22:06:40,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:06:40,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:06:40,899.899 INFO    ] No update needed
[2026-10-28 22:06:40,901.901 INFO    ] Checking for camera pi updates...
[2026-10-28 22:06:40,943.943 INFO    ] 200
[2026-10-28 22:06:40,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:06:40,987.987 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:06:41,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:06:41,060.060 INFO    ] No camera update needed
[2026-10-28 22:06:41,062.062 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:06:41,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:06:41,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:06:41,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:06:43,116.116 INFO    ] ================================================
[2026-10-28 22:06:43,131.131 INFO    ] Launching Daemon at Wed Oct 28 22:06:43 IST 2026
[2026-10-28 22:06:43,142.142 INFO    ] ================================================
[2026-10-28 22:06:43,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:06:43
[2026-10-28 22:06:44,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:06:44,549.549 INFO    ] Initializing speech engine...
[2026-10-28 22:06:44,553.553 INFO    ] 2026-10-28 22:06:44
[2026-10-28 22:06:44,826.826 INFO    ] 2026-10-28 22:06:44
[2026-10-28 22:06:44,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:06:45,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:06:45,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:06:45,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:06:45,398.398 INFO    ] time= 28/10/2026 22:06:45
[2026-10-28 22:06:45,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:06:45,433.433 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:06:45,581.581 INFO    ] No existing commands found in stream
[2026-10-28 22:06:50,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:06:50,609.609 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-28 22:06:53,896.896 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:06:53,899.899 INFO    ] Checking for system updates...
[2026-10-28 22:06:53,936.936 INFO    ] 200
[2026-10-28 22:06:53,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:06:53,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:06:53,993.993 INFO    ] No update needed
[2026-10-28 22:06:53,996.996 INFO    ] Checking for camera pi updates...
[2026-10-28 22:06:54,029.029 INFO    ] 200
[2026-10-28 22:06:54,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:06:54,072.072 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:06:54,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:06:54,182.182 INFO    ] No camera update needed
[2026-10-28 22:06:54,185.185 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:06:54,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:06:54,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:06:54,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:06:56,240.240 INFO    ] ================================================
[2026-10-28 22:06:56,255.255 INFO    ] Launching Daemon at Wed Oct 28 22:06:56 IST 2026
[2026-10-28 22:06:56,266.266 INFO    ] ================================================
[2026-10-28 22:06:56,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:06:56
[2026-10-28 22:06:57,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:06:57,922.922 INFO    ] Initializing speech engine...
[2026-10-28 22:06:57,932.932 INFO    ] 2026-10-28 22:06:57
[2026-10-28 22:06:58,215.215 INFO    ] 2026-10-28 22:06:58
[2026-10-28 22:06:58,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:06:58,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:06:58,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:06:58,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:06:58,956.956 INFO    ] time= 28/10/2026 22:06:58
[2026-10-28 22:06:59,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:06:59,031.031 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:06:59,176.176 INFO    ] No existing commands found in stream
[2026-10-28 22:07:04,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:07:04,191.191 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-28 22:07:07,697.697 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:07:07,700.700 INFO    ] Checking for system updates...
[2026-10-28 22:07:07,740.740 INFO    ] 200
[2026-10-28 22:07:07,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:07:07,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:07:07,800.800 INFO    ] No update needed
[2026-10-28 22:07:07,802.802 INFO    ] Checking for camera pi updates...
[2026-10-28 22:07:07,840.840 INFO    ] 200
[2026-10-28 22:07:07,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:07:07,891.891 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:07:07,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:07:07,948.948 INFO    ] No camera update needed
[2026-10-28 22:07:07,951.951 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:07:07,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:07:07,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:07:07,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:07:10,006.006 INFO    ] ================================================
[2026-10-28 22:07:10,022.022 INFO    ] Launching Daemon at Wed Oct 28 22:07:10 IST 2026
[2026-10-28 22:07:10,033.033 INFO    ] ================================================
[2026-10-28 22:07:10,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:07:10
[2026-10-28 22:07:11,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:07:11,695.695 INFO    ] Initializing speech engine...
[2026-10-28 22:07:11,709.709 INFO    ] 2026-10-28 22:07:11
[2026-10-28 22:07:11,987.987 INFO    ] 2026-10-28 22:07:11
[2026-10-28 22:07:12,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:07:12,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:07:12,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:07:12,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:07:12,552.552 INFO    ] time= 28/10/2026 22:07:12
[2026-10-28 22:07:12,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:07:12,601.601 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:07:12,713.713 INFO    ] No existing commands found in stream
[2026-10-28 22:07:17,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:07:17,737.737 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-28 22:07:21,725.725 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:07:21,728.728 INFO    ] Checking for system updates...
[2026-10-28 22:07:21,764.764 INFO    ] 200
[2026-10-28 22:07:21,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:07:21,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:07:21,828.828 INFO    ] No update needed
[2026-10-28 22:07:21,831.831 INFO    ] Checking for camera pi updates...
[2026-10-28 22:07:21,870.870 INFO    ] 200
[2026-10-28 22:07:21,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:07:21,912.912 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:07:21,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:07:21,994.994 INFO    ] No camera update needed
[2026-10-28 22:07:21,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:07:21,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:07:22,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:07:22,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:07:24,050.050 INFO    ] ================================================
[2026-10-28 22:07:24,065.065 INFO    ] Launching Daemon at Wed Oct 28 22:07:24 IST 2026
[2026-10-28 22:07:24,076.076 INFO    ] ================================================
[2026-10-28 22:07:24,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:07:24
[2026-10-28 22:07:25,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:07:25,557.557 INFO    ] Initializing speech engine...
[2026-10-28 22:07:25,572.572 INFO    ] 2026-10-28 22:07:25
[2026-10-28 22:07:25,845.845 INFO    ] 2026-10-28 22:07:25
[2026-10-28 22:07:25,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:07:26,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:07:26,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:07:26,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:07:26,582.582 INFO    ] time= 28/10/2026 22:07:26
[2026-10-28 22:07:26,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:07:26,689.689 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:07:26,839.839 INFO    ] No existing commands found in stream
[2026-10-28 22:07:31,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:07:31,848.848 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-10-28 22:07:33,321.321 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:07:33,324.324 INFO    ] Checking for system updates...
[2026-10-28 22:07:33,360.360 INFO    ] 200
[2026-10-28 22:07:33,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:07:33,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:07:33,417.417 INFO    ] No update needed
[2026-10-28 22:07:33,419.419 INFO    ] Checking for camera pi updates...
[2026-10-28 22:07:33,453.453 INFO    ] 200
[2026-10-28 22:07:33,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:07:33,502.502 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:07:33,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:07:33,593.593 INFO    ] No camera update needed
[2026-10-28 22:07:33,595.595 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:07:33,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:07:33,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:07:33,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:07:35,646.646 INFO    ] ================================================
[2026-10-28 22:07:35,661.661 INFO    ] Launching Daemon at Wed Oct 28 22:07:35 IST 2026
[2026-10-28 22:07:35,672.672 INFO    ] ================================================
[2026-10-28 22:07:36,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:07:36
[2026-10-28 22:07:36,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:07:37,264.264 INFO    ] Initializing speech engine...
[2026-10-28 22:07:37,269.269 INFO    ] 2026-10-28 22:07:37
[2026-10-28 22:07:37,549.549 INFO    ] 2026-10-28 22:07:37
[2026-10-28 22:07:37,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:07:37,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:07:37,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:07:38,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:07:38,113.113 INFO    ] time= 28/10/2026 22:07:38
[2026-10-28 22:07:38,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:07:38,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:07:38,279.279 INFO    ] No existing commands found in stream
[2026-10-28 22:07:43,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:07:43,313.313 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-10-28 22:07:45,200.200 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:07:45,203.203 INFO    ] Checking for system updates...
[2026-10-28 22:07:45,239.239 INFO    ] 200
[2026-10-28 22:07:45,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:07:45,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:07:45,304.304 INFO    ] No update needed
[2026-10-28 22:07:45,307.307 INFO    ] Checking for camera pi updates...
[2026-10-28 22:07:45,341.341 INFO    ] 200
[2026-10-28 22:07:45,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:07:45,394.394 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:07:45,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:07:45,501.501 INFO    ] No camera update needed
[2026-10-28 22:07:45,503.503 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:07:45,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:07:45,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:07:45,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:07:47,555.555 INFO    ] ================================================
[2026-10-28 22:07:47,570.570 INFO    ] Launching Daemon at Wed Oct 28 22:07:47 IST 2026
[2026-10-28 22:07:47,581.581 INFO    ] ================================================
[2026-10-28 22:07:48,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:07:48
[2026-10-28 22:07:48,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:07:49,034.034 INFO    ] Initializing speech engine...
[2026-10-28 22:07:49,044.044 INFO    ] 2026-10-28 22:07:49
[2026-10-28 22:07:49,316.316 INFO    ] 2026-10-28 22:07:49
[2026-10-28 22:07:49,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:07:49,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:07:49,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:07:49,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:07:49,849.849 INFO    ] time= 28/10/2026 22:07:49
[2026-10-28 22:07:49,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:07:49,896.896 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:07:50,003.003 INFO    ] No existing commands found in stream
[2026-10-28 22:07:55,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:07:55,035.035 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-28 22:07:55,997.997 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:07:56,000.000 INFO    ] Checking for system updates...
[2026-10-28 22:07:56,035.035 INFO    ] 200
[2026-10-28 22:07:56,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:07:56,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:07:56,094.094 INFO    ] No update needed
[2026-10-28 22:07:56,096.096 INFO    ] Checking for camera pi updates...
[2026-10-28 22:07:56,134.134 INFO    ] 200
[2026-10-28 22:07:56,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:07:56,182.182 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:07:56,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:07:56,268.268 INFO    ] No camera update needed
[2026-10-28 22:07:56,270.270 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:07:56,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:07:56,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:07:56,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:07:58,322.322 INFO    ] ================================================
[2026-10-28 22:07:58,339.339 INFO    ] Launching Daemon at Wed Oct 28 22:07:58 IST 2026
[2026-10-28 22:07:58,350.350 INFO    ] ================================================
[2026-10-28 22:07:58,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:07:58
[2026-10-28 22:07:59,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:07:59,770.770 INFO    ] Initializing speech engine...
[2026-10-28 22:07:59,779.779 INFO    ] 2026-10-28 22:07:59
[2026-10-28 22:08:00,031.031 INFO    ] 2026-10-28 22:08:00
[2026-10-28 22:08:00,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:08:00,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:08:00,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:08:00,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:08:00,613.613 INFO    ] time= 28/10/2026 22:08:00
[2026-10-28 22:08:00,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:08:00,642.642 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:08:00,782.782 INFO    ] No existing commands found in stream
[2026-10-28 22:08:05,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:08:05,809.809 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 22:08:10,037.037 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:08:10,039.039 INFO    ] Checking for system updates...
[2026-10-28 22:08:10,078.078 INFO    ] 200
[2026-10-28 22:08:10,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:08:10,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:08:10,142.142 INFO    ] No update needed
[2026-10-28 22:08:10,145.145 INFO    ] Checking for camera pi updates...
[2026-10-28 22:08:10,183.183 INFO    ] 200
[2026-10-28 22:08:10,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:08:10,230.230 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:08:10,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:08:10,315.315 INFO    ] No camera update needed
[2026-10-28 22:08:10,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:08:10,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:08:10,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:08:10,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:08:12,373.373 INFO    ] ================================================
[2026-10-28 22:08:12,389.389 INFO    ] Launching Daemon at Wed Oct 28 22:08:12 IST 2026
[2026-10-28 22:08:12,400.400 INFO    ] ================================================
[2026-10-28 22:08:12,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:08:12
[2026-10-28 22:08:13,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:08:13,854.854 INFO    ] Initializing speech engine...
[2026-10-28 22:08:13,863.863 INFO    ] 2026-10-28 22:08:13
[2026-10-28 22:08:14,112.112 INFO    ] 2026-10-28 22:08:14
[2026-10-28 22:08:14,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:08:14,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:08:14,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:08:14,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:08:14,666.666 INFO    ] time= 28/10/2026 22:08:14
[2026-10-28 22:08:14,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:08:14,700.700 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:08:14,842.842 INFO    ] No existing commands found in stream
[2026-10-28 22:08:19,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:08:19,870.870 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-28 22:08:24,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:08:24,357.357 INFO    ] Checking for system updates...
[2026-10-28 22:08:24,398.398 INFO    ] 200
[2026-10-28 22:08:24,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:08:24,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:08:24,455.455 INFO    ] No update needed
[2026-10-28 22:08:24,457.457 INFO    ] Checking for camera pi updates...
[2026-10-28 22:08:24,490.490 INFO    ] 200
[2026-10-28 22:08:24,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:08:24,534.534 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:08:24,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:08:24,625.625 INFO    ] No camera update needed
[2026-10-28 22:08:24,628.628 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:08:24,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:08:24,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:08:24,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:08:26,681.681 INFO    ] ================================================
[2026-10-28 22:08:26,697.697 INFO    ] Launching Daemon at Wed Oct 28 22:08:26 IST 2026
[2026-10-28 22:08:26,707.707 INFO    ] ================================================
[2026-10-28 22:08:27,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:08:27
[2026-10-28 22:08:28,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:08:28,310.310 INFO    ] Initializing speech engine...
[2026-10-28 22:08:28,339.339 INFO    ] 2026-10-28 22:08:28
[2026-10-28 22:08:28,605.605 INFO    ] 2026-10-28 22:08:28
[2026-10-28 22:08:28,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:08:28,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:08:28,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:08:29,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:08:29,180.180 INFO    ] time= 28/10/2026 22:08:29
[2026-10-28 22:08:29,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:08:29,209.209 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:08:29,339.339 INFO    ] No existing commands found in stream
[2026-10-28 22:08:34,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:08:34,356.356 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-10-28 22:08:35,658.658 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:08:35,660.660 INFO    ] Checking for system updates...
[2026-10-28 22:08:35,696.696 INFO    ] 200
[2026-10-28 22:08:35,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:08:35,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:08:35,754.754 INFO    ] No update needed
[2026-10-28 22:08:35,757.757 INFO    ] Checking for camera pi updates...
[2026-10-28 22:08:35,790.790 INFO    ] 200
[2026-10-28 22:08:35,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:08:35,834.834 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:08:35,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:08:35,918.918 INFO    ] No camera update needed
[2026-10-28 22:08:35,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:08:35,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:08:35,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:08:35,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:08:37,974.974 INFO    ] ================================================
[2026-10-28 22:08:37,990.990 INFO    ] Launching Daemon at Wed Oct 28 22:08:37 IST 2026
[2026-10-28 22:08:38,001.001 INFO    ] ================================================
[2026-10-28 22:08:38,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:08:38
[2026-10-28 22:08:39,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:08:39,401.401 INFO    ] Initializing speech engine...
[2026-10-28 22:08:39,424.424 INFO    ] 2026-10-28 22:08:39
[2026-10-28 22:08:39,679.679 INFO    ] 2026-10-28 22:08:39
[2026-10-28 22:08:39,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:08:40,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:08:40,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:08:40,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:08:40,411.411 INFO    ] time= 28/10/2026 22:08:40
[2026-10-28 22:08:40,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:08:40,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:08:40,652.652 INFO    ] No existing commands found in stream
[2026-10-28 22:08:45,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:08:45,677.677 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-28 22:08:50,208.208 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:08:50,211.211 INFO    ] Checking for system updates...
[2026-10-28 22:08:50,250.250 INFO    ] 200
[2026-10-28 22:08:50,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:08:50,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:08:50,315.315 INFO    ] No update needed
[2026-10-28 22:08:50,318.318 INFO    ] Checking for camera pi updates...
[2026-10-28 22:08:50,356.356 INFO    ] 200
[2026-10-28 22:08:50,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:08:50,399.399 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:08:50,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:08:50,506.506 INFO    ] No camera update needed
[2026-10-28 22:08:50,508.508 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:08:50,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:08:50,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:08:50,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:08:52,562.562 INFO    ] ================================================
[2026-10-28 22:08:52,577.577 INFO    ] Launching Daemon at Wed Oct 28 22:08:52 IST 2026
[2026-10-28 22:08:52,588.588 INFO    ] ================================================
[2026-10-28 22:08:53,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:08:53
[2026-10-28 22:08:53,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:08:54,120.120 INFO    ] Initializing speech engine...
[2026-10-28 22:08:54,129.129 INFO    ] 2026-10-28 22:08:54
[2026-10-28 22:08:54,379.379 INFO    ] 2026-10-28 22:08:54
[2026-10-28 22:08:54,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:08:54,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:08:54,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:08:54,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:08:54,948.948 INFO    ] time= 28/10/2026 22:08:54
[2026-10-28 22:08:54,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:08:54,972.972 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:08:55,095.095 INFO    ] No existing commands found in stream
[2026-10-28 22:09:00,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:09:00,115.115 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 22:09:02,180.180 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:09:02,188.188 INFO    ] Checking for system updates...
[2026-10-28 22:09:02,263.263 INFO    ] 200
[2026-10-28 22:09:02,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:09:02,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:09:02,404.404 INFO    ] No update needed
[2026-10-28 22:09:02,407.407 INFO    ] Checking for camera pi updates...
[2026-10-28 22:09:02,456.456 INFO    ] 200
[2026-10-28 22:09:02,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:09:02,514.514 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:09:02,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:09:02,619.619 INFO    ] No camera update needed
[2026-10-28 22:09:02,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:09:02,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:09:02,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:09:02,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:09:04,679.679 INFO    ] ================================================
[2026-10-28 22:09:04,695.695 INFO    ] Launching Daemon at Wed Oct 28 22:09:04 IST 2026
[2026-10-28 22:09:04,706.706 INFO    ] ================================================
[2026-10-28 22:09:05,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:09:05
[2026-10-28 22:09:05,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:09:06,229.229 INFO    ] Initializing speech engine...
[2026-10-28 22:09:06,240.240 INFO    ] 2026-10-28 22:09:06
[2026-10-28 22:09:06,490.490 INFO    ] 2026-10-28 22:09:06
[2026-10-28 22:09:06,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:09:06,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:09:06,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:09:07,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:09:07,053.053 INFO    ] time= 28/10/2026 22:09:07
[2026-10-28 22:09:07,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:09:07,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:09:07,207.207 INFO    ] No existing commands found in stream
[2026-10-28 22:09:12,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:09:12,230.230 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-28 22:09:16,795.795 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:09:16,797.797 INFO    ] Checking for system updates...
[2026-10-28 22:09:16,833.833 INFO    ] 200
[2026-10-28 22:09:16,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:09:16,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:09:16,895.895 INFO    ] No update needed
[2026-10-28 22:09:16,898.898 INFO    ] Checking for camera pi updates...
[2026-10-28 22:09:16,934.934 INFO    ] 200
[2026-10-28 22:09:16,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:09:16,980.980 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:09:17,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:09:17,065.065 INFO    ] No camera update needed
[2026-10-28 22:09:17,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:09:17,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:09:17,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:09:17,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:09:19,121.121 INFO    ] ================================================
[2026-10-28 22:09:19,137.137 INFO    ] Launching Daemon at Wed Oct 28 22:09:19 IST 2026
[2026-10-28 22:09:19,148.148 INFO    ] ================================================
[2026-10-28 22:09:19,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:09:19
[2026-10-28 22:09:20,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:09:20,778.778 INFO    ] Initializing speech engine...
[2026-10-28 22:09:20,786.786 INFO    ] 2026-10-28 22:09:20
[2026-10-28 22:09:21,049.049 INFO    ] 2026-10-28 22:09:21
[2026-10-28 22:09:21,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:09:21,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:09:21,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:09:21,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:09:21,616.616 INFO    ] time= 28/10/2026 22:09:21
[2026-10-28 22:09:21,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:09:21,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:09:21,766.766 INFO    ] No existing commands found in stream
[2026-10-28 22:09:26,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:09:26,786.786 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-10-28 22:09:28,874.874 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:09:28,876.876 INFO    ] Checking for system updates...
[2026-10-28 22:09:28,912.912 INFO    ] 200
[2026-10-28 22:09:28,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:09:28,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:09:28,976.976 INFO    ] No update needed
[2026-10-28 22:09:28,978.978 INFO    ] Checking for camera pi updates...
[2026-10-28 22:09:29,015.015 INFO    ] 200
[2026-10-28 22:09:29,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:09:29,058.058 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:09:29,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:09:29,149.149 INFO    ] No camera update needed
[2026-10-28 22:09:29,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:09:29,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:09:29,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:09:29,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:09:31,206.206 INFO    ] ================================================
[2026-10-28 22:09:31,222.222 INFO    ] Launching Daemon at Wed Oct 28 22:09:31 IST 2026
[2026-10-28 22:09:31,232.232 INFO    ] ================================================
[2026-10-28 22:09:31,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:09:31
[2026-10-28 22:09:32,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:09:32,884.884 INFO    ] Initializing speech engine...
[2026-10-28 22:09:32,895.895 INFO    ] 2026-10-28 22:09:32
[2026-10-28 22:09:33,214.214 INFO    ] 2026-10-28 22:09:33
[2026-10-28 22:09:33,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:09:33,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:09:33,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:09:33,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:09:33,800.800 INFO    ] time= 28/10/2026 22:09:33
[2026-10-28 22:09:33,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:09:33,840.840 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:09:33,955.955 INFO    ] No existing commands found in stream
[2026-10-28 22:09:38,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:09:38,974.974 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-10-28 22:09:41,674.674 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:09:41,676.676 INFO    ] Checking for system updates...
[2026-10-28 22:09:41,713.713 INFO    ] 200
[2026-10-28 22:09:41,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:09:41,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:09:41,772.772 INFO    ] No update needed
[2026-10-28 22:09:41,774.774 INFO    ] Checking for camera pi updates...
[2026-10-28 22:09:41,812.812 INFO    ] 200
[2026-10-28 22:09:41,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:09:41,855.855 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:09:41,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:09:41,940.940 INFO    ] No camera update needed
[2026-10-28 22:09:41,942.942 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:09:41,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:09:41,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:09:41,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:09:44,995.995 INFO    ] ================================================
[2026-10-28 22:09:44,010.010 INFO    ] Launching Daemon at Wed Oct 28 22:09:44 IST 2026
[2026-10-28 22:09:44,021.021 INFO    ] ================================================
[2026-10-28 22:09:44,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:09:44
[2026-10-28 22:09:45,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:09:45,467.467 INFO    ] Initializing speech engine...
[2026-10-28 22:09:45,491.491 INFO    ] 2026-10-28 22:09:45
[2026-10-28 22:09:45,763.763 INFO    ] 2026-10-28 22:09:45
[2026-10-28 22:09:45,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:09:46,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:09:46,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:09:46,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:09:46,338.338 INFO    ] time= 28/10/2026 22:09:46
[2026-10-28 22:09:46,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:09:46,373.373 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:09:46,492.492 INFO    ] No existing commands found in stream
[2026-10-28 22:09:51,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:09:51,524.524 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-28 22:09:53,418.418 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:09:53,421.421 INFO    ] Checking for system updates...
[2026-10-28 22:09:53,460.460 INFO    ] 200
[2026-10-28 22:09:53,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:09:53,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:09:53,522.522 INFO    ] No update needed
[2026-10-28 22:09:53,524.524 INFO    ] Checking for camera pi updates...
[2026-10-28 22:09:53,561.561 INFO    ] 200
[2026-10-28 22:09:53,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:09:53,607.607 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:09:53,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:09:53,690.690 INFO    ] No camera update needed
[2026-10-28 22:09:53,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:09:53,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:09:53,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:09:53,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:09:55,745.745 INFO    ] ================================================
[2026-10-28 22:09:55,761.761 INFO    ] Launching Daemon at Wed Oct 28 22:09:55 IST 2026
[2026-10-28 22:09:55,772.772 INFO    ] ================================================
[2026-10-28 22:09:56,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:09:56
[2026-10-28 22:09:57,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:09:57,369.369 INFO    ] Initializing speech engine...
[2026-10-28 22:09:57,377.377 INFO    ] 2026-10-28 22:09:57
[2026-10-28 22:09:57,654.654 INFO    ] 2026-10-28 22:09:57
[2026-10-28 22:09:57,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:09:57,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:09:58,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:09:58,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:09:58,226.226 INFO    ] time= 28/10/2026 22:09:58
[2026-10-28 22:09:58,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:09:58,264.264 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:09:58,424.424 INFO    ] No existing commands found in stream
[2026-10-28 22:10:03,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:10:03,449.449 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-28 22:10:08,568.568 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:10:08,571.571 INFO    ] Checking for system updates...
[2026-10-28 22:10:08,607.607 INFO    ] 200
[2026-10-28 22:10:08,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:10:08,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:10:08,664.664 INFO    ] No update needed
[2026-10-28 22:10:08,666.666 INFO    ] Checking for camera pi updates...
[2026-10-28 22:10:08,699.699 INFO    ] 200
[2026-10-28 22:10:08,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:10:08,742.742 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:10:08,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:10:08,835.835 INFO    ] No camera update needed
[2026-10-28 22:10:08,837.837 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:10:08,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:10:08,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:10:08,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:10:10,891.891 INFO    ] ================================================
[2026-10-28 22:10:10,907.907 INFO    ] Launching Daemon at Wed Oct 28 22:10:10 IST 2026
[2026-10-28 22:10:10,918.918 INFO    ] ================================================
[2026-10-28 22:10:11,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:10:11
[2026-10-28 22:10:12,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:10:12,374.374 INFO    ] Initializing speech engine...
[2026-10-28 22:10:12,383.383 INFO    ] 2026-10-28 22:10:12
[2026-10-28 22:10:12,632.632 INFO    ] 2026-10-28 22:10:12
[2026-10-28 22:10:12,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:10:12,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:10:12,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:10:13,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:10:13,194.194 INFO    ] time= 28/10/2026 22:10:13
[2026-10-28 22:10:13,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:10:13,240.240 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:10:13,373.373 INFO    ] No existing commands found in stream
[2026-10-28 22:10:18,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:10:18,406.406 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-10-28 22:10:19,127.127 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:10:19,129.129 INFO    ] Checking for system updates...
[2026-10-28 22:10:19,165.165 INFO    ] 200
[2026-10-28 22:10:19,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:10:19,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:10:19,223.223 INFO    ] No update needed
[2026-10-28 22:10:19,226.226 INFO    ] Checking for camera pi updates...
[2026-10-28 22:10:19,263.263 INFO    ] 200
[2026-10-28 22:10:19,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:10:19,310.310 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:10:19,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:10:19,395.395 INFO    ] No camera update needed
[2026-10-28 22:10:19,398.398 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:10:19,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:10:19,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:10:19,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:10:21,452.452 INFO    ] ================================================
[2026-10-28 22:10:21,467.467 INFO    ] Launching Daemon at Wed Oct 28 22:10:21 IST 2026
[2026-10-28 22:10:21,479.479 INFO    ] ================================================
[2026-10-28 22:10:22,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:10:22
[2026-10-28 22:10:22,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:10:22,900.900 INFO    ] Initializing speech engine...
[2026-10-28 22:10:22,916.916 INFO    ] 2026-10-28 22:10:22
[2026-10-28 22:10:23,169.169 INFO    ] 2026-10-28 22:10:23
[2026-10-28 22:10:23,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:10:23,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:10:23,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:10:23,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:10:23,729.729 INFO    ] time= 28/10/2026 22:10:23
[2026-10-28 22:10:23,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:10:23,754.754 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:10:23,882.882 INFO    ] No existing commands found in stream
[2026-10-28 22:10:28,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:10:28,898.898 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-28 22:10:33,320.320 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:10:33,323.323 INFO    ] Checking for system updates...
[2026-10-28 22:10:33,362.362 INFO    ] 200
[2026-10-28 22:10:33,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:10:33,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:10:33,420.420 INFO    ] No update needed
[2026-10-28 22:10:33,422.422 INFO    ] Checking for camera pi updates...
[2026-10-28 22:10:33,456.456 INFO    ] 200
[2026-10-28 22:10:33,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:10:33,503.503 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:10:33,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:10:33,608.608 INFO    ] No camera update needed
[2026-10-28 22:10:33,610.610 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:10:33,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:10:33,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:10:33,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:10:35,665.665 INFO    ] ================================================
[2026-10-28 22:10:35,681.681 INFO    ] Launching Daemon at Wed Oct 28 22:10:35 IST 2026
[2026-10-28 22:10:35,692.692 INFO    ] ================================================
[2026-10-28 22:10:36,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:10:36
[2026-10-28 22:10:36,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:10:37,113.113 INFO    ] Initializing speech engine...
[2026-10-28 22:10:37,132.132 INFO    ] 2026-10-28 22:10:37
[2026-10-28 22:10:37,381.381 INFO    ] 2026-10-28 22:10:37
[2026-10-28 22:10:37,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:10:37,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:10:37,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:10:37,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:10:37,940.940 INFO    ] time= 28/10/2026 22:10:37
[2026-10-28 22:10:37,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:10:37,986.986 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:10:38,117.117 INFO    ] No existing commands found in stream
[2026-10-28 22:10:43,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:10:43,145.145 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-28 22:10:44,635.635 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:10:44,638.638 INFO    ] Checking for system updates...
[2026-10-28 22:10:44,676.676 INFO    ] 200
[2026-10-28 22:10:44,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:10:44,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:10:44,733.733 INFO    ] No update needed
[2026-10-28 22:10:44,736.736 INFO    ] Checking for camera pi updates...
[2026-10-28 22:10:44,768.768 INFO    ] 200
[2026-10-28 22:10:44,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:10:44,810.810 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:10:45,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:10:45,009.009 INFO    ] No camera update needed
[2026-10-28 22:10:45,011.011 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:10:45,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:10:45,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:10:45,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:10:47,064.064 INFO    ] ================================================
[2026-10-28 22:10:47,080.080 INFO    ] Launching Daemon at Wed Oct 28 22:10:47 IST 2026
[2026-10-28 22:10:47,090.090 INFO    ] ================================================
[2026-10-28 22:10:47,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:10:47
[2026-10-28 22:10:48,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:10:48,523.523 INFO    ] Initializing speech engine...
[2026-10-28 22:10:48,548.548 INFO    ] 2026-10-28 22:10:48
[2026-10-28 22:10:48,820.820 INFO    ] 2026-10-28 22:10:48
[2026-10-28 22:10:48,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:10:49,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:10:49,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:10:49,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:10:49,439.439 INFO    ] time= 28/10/2026 22:10:49
[2026-10-28 22:10:49,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:10:49,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:10:49,601.601 INFO    ] No existing commands found in stream
[2026-10-28 22:10:54,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:10:54,627.627 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 22:10:57,516.516 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:10:57,520.520 INFO    ] Checking for system updates...
[2026-10-28 22:10:57,555.555 INFO    ] 200
[2026-10-28 22:10:57,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:10:57,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:10:57,614.614 INFO    ] No update needed
[2026-10-28 22:10:57,616.616 INFO    ] Checking for camera pi updates...
[2026-10-28 22:10:57,653.653 INFO    ] 200
[2026-10-28 22:10:57,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:10:57,700.700 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:10:57,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:10:57,801.801 INFO    ] No camera update needed
[2026-10-28 22:10:57,803.803 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:10:57,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:10:57,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:10:57,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:10:59,856.856 INFO    ] ================================================
[2026-10-28 22:10:59,872.872 INFO    ] Launching Daemon at Wed Oct 28 22:10:59 IST 2026
[2026-10-28 22:10:59,882.882 INFO    ] ================================================
[2026-10-28 22:11:00,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:11:00
[2026-10-28 22:11:01,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:11:01,478.478 INFO    ] Initializing speech engine...
[2026-10-28 22:11:01,491.491 INFO    ] 2026-10-28 22:11:01
[2026-10-28 22:11:01,877.877 INFO    ] 2026-10-28 22:11:01
[2026-10-28 22:11:02,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:11:02,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:11:02,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:11:02,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:11:02,530.530 INFO    ] time= 28/10/2026 22:11:02
[2026-10-28 22:11:02,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:11:02,610.610 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:11:02,769.769 INFO    ] No existing commands found in stream
[2026-10-28 22:11:07,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:11:07,794.794 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-10-28 22:11:10,875.875 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:11:10,878.878 INFO    ] Checking for system updates...
[2026-10-28 22:11:10,913.913 INFO    ] 200
[2026-10-28 22:11:10,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:11:10,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:11:10,970.970 INFO    ] No update needed
[2026-10-28 22:11:10,972.972 INFO    ] Checking for camera pi updates...
[2026-10-28 22:11:11,009.009 INFO    ] 200
[2026-10-28 22:11:11,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:11:11,052.052 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:11:11,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:11:11,134.134 INFO    ] No camera update needed
[2026-10-28 22:11:11,136.136 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:11:11,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:11:11,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:11:11,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:11:13,189.189 INFO    ] ================================================
[2026-10-28 22:11:13,206.206 INFO    ] Launching Daemon at Wed Oct 28 22:11:13 IST 2026
[2026-10-28 22:11:13,217.217 INFO    ] ================================================
[2026-10-28 22:11:13,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:11:13
[2026-10-28 22:11:14,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:11:14,615.615 INFO    ] Initializing speech engine...
[2026-10-28 22:11:14,628.628 INFO    ] 2026-10-28 22:11:14
[2026-10-28 22:11:14,920.920 INFO    ] 2026-10-28 22:11:14
[2026-10-28 22:11:14,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:11:15,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:11:15,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:11:15,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:11:15,542.542 INFO    ] time= 28/10/2026 22:11:15
[2026-10-28 22:11:15,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:11:15,563.563 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:11:15,681.681 INFO    ] No existing commands found in stream
[2026-10-28 22:11:20,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:11:20,709.709 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-10-28 22:11:22,177.177 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:11:22,180.180 INFO    ] Checking for system updates...
[2026-10-28 22:11:22,217.217 INFO    ] 200
[2026-10-28 22:11:22,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:11:22,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:11:22,275.275 INFO    ] No update needed
[2026-10-28 22:11:22,278.278 INFO    ] Checking for camera pi updates...
[2026-10-28 22:11:22,312.312 INFO    ] 200
[2026-10-28 22:11:22,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:11:22,357.357 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:11:22,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:11:22,441.441 INFO    ] No camera update needed
[2026-10-28 22:11:22,444.444 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:11:22,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:11:22,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:11:22,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:11:24,500.500 INFO    ] ================================================
[2026-10-28 22:11:24,515.515 INFO    ] Launching Daemon at Wed Oct 28 22:11:24 IST 2026
[2026-10-28 22:11:24,525.525 INFO    ] ================================================
[2026-10-28 22:11:25,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:11:25
[2026-10-28 22:11:25,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:11:25,955.955 INFO    ] Initializing speech engine...
[2026-10-28 22:11:25,964.964 INFO    ] 2026-10-28 22:11:25
[2026-10-28 22:11:26,221.221 INFO    ] 2026-10-28 22:11:26
[2026-10-28 22:11:26,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:11:26,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:11:26,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:11:26,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:11:26,779.779 INFO    ] time= 28/10/2026 22:11:26
[2026-10-28 22:11:26,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:11:26,814.814 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:11:26,954.954 INFO    ] No existing commands found in stream
[2026-10-28 22:11:31,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:11:31,987.987 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-28 22:11:33,538.538 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:11:33,541.541 INFO    ] Checking for system updates...
[2026-10-28 22:11:33,577.577 INFO    ] 200
[2026-10-28 22:11:33,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:11:33,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:11:33,644.644 INFO    ] No update needed
[2026-10-28 22:11:33,647.647 INFO    ] Checking for camera pi updates...
[2026-10-28 22:11:33,683.683 INFO    ] 200
[2026-10-28 22:11:33,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:11:33,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:11:33,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:11:33,812.812 INFO    ] No camera update needed
[2026-10-28 22:11:33,815.815 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:11:33,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:11:33,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:11:33,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:11:35,868.868 INFO    ] ================================================
[2026-10-28 22:11:35,883.883 INFO    ] Launching Daemon at Wed Oct 28 22:11:35 IST 2026
[2026-10-28 22:11:35,894.894 INFO    ] ================================================
[2026-10-28 22:11:36,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:11:36
[2026-10-28 22:11:37,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:11:37,348.348 INFO    ] Initializing speech engine...
[2026-10-28 22:11:37,355.355 INFO    ] 2026-10-28 22:11:37
[2026-10-28 22:11:37,622.622 INFO    ] 2026-10-28 22:11:37
[2026-10-28 22:11:37,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:11:38,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:11:38,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:11:38,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:11:38,294.294 INFO    ] time= 28/10/2026 22:11:38
[2026-10-28 22:11:38,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:11:38,397.397 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:11:38,527.527 INFO    ] No existing commands found in stream
[2026-10-28 22:11:43,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:11:43,555.555 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-10-28 22:11:45,250.250 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:11:45,253.253 INFO    ] Checking for system updates...
[2026-10-28 22:11:45,296.296 INFO    ] 200
[2026-10-28 22:11:45,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:11:45,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:11:45,353.353 INFO    ] No update needed
[2026-10-28 22:11:45,356.356 INFO    ] Checking for camera pi updates...
[2026-10-28 22:11:45,390.390 INFO    ] 200
[2026-10-28 22:11:45,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:11:45,436.436 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:11:45,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:11:45,534.534 INFO    ] No camera update needed
[2026-10-28 22:11:45,536.536 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:11:45,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:11:45,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:11:45,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:11:47,588.588 INFO    ] ================================================
[2026-10-28 22:11:47,602.602 INFO    ] Launching Daemon at Wed Oct 28 22:11:47 IST 2026
[2026-10-28 22:11:47,613.613 INFO    ] ================================================
[2026-10-28 22:11:48,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:11:48
[2026-10-28 22:11:48,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:11:49,032.032 INFO    ] Initializing speech engine...
[2026-10-28 22:11:49,048.048 INFO    ] 2026-10-28 22:11:49
[2026-10-28 22:11:49,333.333 INFO    ] 2026-10-28 22:11:49
[2026-10-28 22:11:49,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:11:49,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:11:49,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:11:49,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:11:49,949.949 INFO    ] time= 28/10/2026 22:11:49
[2026-10-28 22:11:49,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:11:49,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:11:50,084.084 INFO    ] No existing commands found in stream
[2026-10-28 22:11:55,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:11:55,097.097 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-28 22:11:56,935.935 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:11:56,938.938 INFO    ] Checking for system updates...
[2026-10-28 22:11:56,977.977 INFO    ] 200
[2026-10-28 22:11:56,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:11:57,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:11:57,034.034 INFO    ] No update needed
[2026-10-28 22:11:57,037.037 INFO    ] Checking for camera pi updates...
[2026-10-28 22:11:57,074.074 INFO    ] 200
[2026-10-28 22:11:57,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:11:57,117.117 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:11:57,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:11:57,218.218 INFO    ] No camera update needed
[2026-10-28 22:11:57,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:11:57,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:11:57,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:11:57,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:11:59,272.272 INFO    ] ================================================
[2026-10-28 22:11:59,287.287 INFO    ] Launching Daemon at Wed Oct 28 22:11:59 IST 2026
[2026-10-28 22:11:59,298.298 INFO    ] ================================================
[2026-10-28 22:11:59,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:11:59
[2026-10-28 22:12:00,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:12:00,807.807 INFO    ] Initializing speech engine...
[2026-10-28 22:12:00,816.816 INFO    ] 2026-10-28 22:12:00
[2026-10-28 22:12:01,107.107 INFO    ] 2026-10-28 22:12:01
[2026-10-28 22:12:01,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:12:01,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:12:01,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:12:01,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:12:01,717.717 INFO    ] time= 28/10/2026 22:12:01
[2026-10-28 22:12:01,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:12:01,748.748 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:12:01,866.866 INFO    ] No existing commands found in stream
[2026-10-28 22:12:06,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:12:06,884.884 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 22:12:11,153.153 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:12:11,156.156 INFO    ] Checking for system updates...
[2026-10-28 22:12:11,195.195 INFO    ] 200
[2026-10-28 22:12:11,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:12:11,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:12:11,258.258 INFO    ] No update needed
[2026-10-28 22:12:11,260.260 INFO    ] Checking for camera pi updates...
[2026-10-28 22:12:11,298.298 INFO    ] 200
[2026-10-28 22:12:11,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:12:11,340.340 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:12:11,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:12:11,436.436 INFO    ] No camera update needed
[2026-10-28 22:12:11,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:12:11,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:12:11,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:12:11,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:12:13,490.490 INFO    ] ================================================
[2026-10-28 22:12:13,505.505 INFO    ] Launching Daemon at Wed Oct 28 22:12:13 IST 2026
[2026-10-28 22:12:13,515.515 INFO    ] ================================================
[2026-10-28 22:12:14,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:12:14
[2026-10-28 22:12:14,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:12:14,935.935 INFO    ] Initializing speech engine...
[2026-10-28 22:12:14,944.944 INFO    ] 2026-10-28 22:12:14
[2026-10-28 22:12:15,212.212 INFO    ] 2026-10-28 22:12:15
[2026-10-28 22:12:15,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:12:15,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:12:15,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:12:15,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:12:15,743.743 INFO    ] time= 28/10/2026 22:12:15
[2026-10-28 22:12:15,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:12:15,773.773 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:12:15,920.920 INFO    ] No existing commands found in stream
[2026-10-28 22:12:20,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:12:20,947.947 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-10-28 22:12:25,156.156 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:12:25,158.158 INFO    ] Checking for system updates...
[2026-10-28 22:12:25,198.198 INFO    ] 200
[2026-10-28 22:12:25,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:12:25,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:12:25,256.256 INFO    ] No update needed
[2026-10-28 22:12:25,258.258 INFO    ] Checking for camera pi updates...
[2026-10-28 22:12:25,295.295 INFO    ] 200
[2026-10-28 22:12:25,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:12:25,338.338 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:12:25,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:12:25,425.425 INFO    ] No camera update needed
[2026-10-28 22:12:25,427.427 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:12:25,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:12:25,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:12:25,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:12:27,478.478 INFO    ] ================================================
[2026-10-28 22:12:27,493.493 INFO    ] Launching Daemon at Wed Oct 28 22:12:27 IST 2026
[2026-10-28 22:12:27,504.504 INFO    ] ================================================
[2026-10-28 22:12:28,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:12:28
[2026-10-28 22:12:28,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:12:28,919.919 INFO    ] Initializing speech engine...
[2026-10-28 22:12:28,929.929 INFO    ] 2026-10-28 22:12:28
[2026-10-28 22:12:29,175.175 INFO    ] 2026-10-28 22:12:29
[2026-10-28 22:12:29,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:12:29,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:12:29,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:12:29,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:12:29,726.726 INFO    ] time= 28/10/2026 22:12:29
[2026-10-28 22:12:29,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:12:29,749.749 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:12:29,878.878 INFO    ] No existing commands found in stream
[2026-10-28 22:12:34,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:12:34,895.895 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-10-28 22:12:39,245.245 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:12:39,248.248 INFO    ] Checking for system updates...
[2026-10-28 22:12:39,283.283 INFO    ] 200
[2026-10-28 22:12:39,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:12:39,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:12:39,341.341 INFO    ] No update needed
[2026-10-28 22:12:39,343.343 INFO    ] Checking for camera pi updates...
[2026-10-28 22:12:39,376.376 INFO    ] 200
[2026-10-28 22:12:39,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:12:39,420.420 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:12:39,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:12:39,508.508 INFO    ] No camera update needed
[2026-10-28 22:12:39,511.511 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:12:39,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:12:39,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:12:39,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:12:41,562.562 INFO    ] ================================================
[2026-10-28 22:12:41,578.578 INFO    ] Launching Daemon at Wed Oct 28 22:12:41 IST 2026
[2026-10-28 22:12:41,589.589 INFO    ] ================================================
[2026-10-28 22:12:42,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:12:42
[2026-10-28 22:12:42,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:12:43,214.214 INFO    ] Initializing speech engine...
[2026-10-28 22:12:43,219.219 INFO    ] 2026-10-28 22:12:43
[2026-10-28 22:12:43,525.525 INFO    ] 2026-10-28 22:12:43
[2026-10-28 22:12:43,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:12:43,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:12:43,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:12:44,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:12:44,228.228 INFO    ] time= 28/10/2026 22:12:44
[2026-10-28 22:12:44,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:12:44,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:12:44,465.465 INFO    ] No existing commands found in stream
[2026-10-28 22:12:49,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:12:49,487.487 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 22:12:50,916.916 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:12:50,919.919 INFO    ] Checking for system updates...
[2026-10-28 22:12:50,956.956 INFO    ] 200
[2026-10-28 22:12:50,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:12:51,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:12:51,020.020 INFO    ] No update needed
[2026-10-28 22:12:51,022.022 INFO    ] Checking for camera pi updates...
[2026-10-28 22:12:51,059.059 INFO    ] 200
[2026-10-28 22:12:51,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:12:51,107.107 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:12:51,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:12:51,311.311 INFO    ] No camera update needed
[2026-10-28 22:12:51,313.313 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:12:51,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:12:51,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:12:51,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:12:53,367.367 INFO    ] ================================================
[2026-10-28 22:12:53,381.381 INFO    ] Launching Daemon at Wed Oct 28 22:12:53 IST 2026
[2026-10-28 22:12:53,392.392 INFO    ] ================================================
[2026-10-28 22:12:54,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:12:54
[2026-10-28 22:12:54,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:12:55,011.011 INFO    ] Initializing speech engine...
[2026-10-28 22:12:55,019.019 INFO    ] 2026-10-28 22:12:55
[2026-10-28 22:12:55,324.324 INFO    ] 2026-10-28 22:12:55
[2026-10-28 22:12:55,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:12:55,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:12:55,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:12:55,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:12:55,976.976 INFO    ] time= 28/10/2026 22:12:55
[2026-10-28 22:12:56,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:12:56,072.072 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:12:56,223.223 INFO    ] No existing commands found in stream
[2026-10-28 22:13:01,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:13:01,257.257 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-28 22:13:05,432.432 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:13:05,435.435 INFO    ] Checking for system updates...
[2026-10-28 22:13:05,471.471 INFO    ] 200
[2026-10-28 22:13:05,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:13:05,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:13:05,534.534 INFO    ] No update needed
[2026-10-28 22:13:05,536.536 INFO    ] Checking for camera pi updates...
[2026-10-28 22:13:05,570.570 INFO    ] 200
[2026-10-28 22:13:05,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:13:05,617.617 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:13:05,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:13:05,724.724 INFO    ] No camera update needed
[2026-10-28 22:13:05,726.726 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:13:05,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:13:05,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:13:05,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:13:07,778.778 INFO    ] ================================================
[2026-10-28 22:13:07,794.794 INFO    ] Launching Daemon at Wed Oct 28 22:13:07 IST 2026
[2026-10-28 22:13:07,804.804 INFO    ] ================================================
[2026-10-28 22:13:08,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:13:08
[2026-10-28 22:13:08,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:13:09,222.222 INFO    ] Initializing speech engine...
[2026-10-28 22:13:09,230.230 INFO    ] 2026-10-28 22:13:09
[2026-10-28 22:13:09,479.479 INFO    ] 2026-10-28 22:13:09
[2026-10-28 22:13:09,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:13:09,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:13:09,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:13:10,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:13:10,048.048 INFO    ] time= 28/10/2026 22:13:10
[2026-10-28 22:13:10,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:13:10,075.075 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:13:10,203.203 INFO    ] No existing commands found in stream
[2026-10-28 22:13:15,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:13:15,220.220 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 22:13:18,035.035 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:13:18,038.038 INFO    ] Checking for system updates...
[2026-10-28 22:13:18,073.073 INFO    ] 200
[2026-10-28 22:13:18,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:13:18,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:13:18,135.135 INFO    ] No update needed
[2026-10-28 22:13:18,137.137 INFO    ] Checking for camera pi updates...
[2026-10-28 22:13:18,171.171 INFO    ] 200
[2026-10-28 22:13:18,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:13:18,214.214 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:13:18,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:13:18,293.293 INFO    ] No camera update needed
[2026-10-28 22:13:18,296.296 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:13:18,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:13:18,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:13:18,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:13:20,353.353 INFO    ] ================================================
[2026-10-28 22:13:20,368.368 INFO    ] Launching Daemon at Wed Oct 28 22:13:20 IST 2026
[2026-10-28 22:13:20,379.379 INFO    ] ================================================
[2026-10-28 22:13:20,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:13:20
[2026-10-28 22:13:21,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:13:21,780.780 INFO    ] Initializing speech engine...
[2026-10-28 22:13:21,796.796 INFO    ] 2026-10-28 22:13:21
[2026-10-28 22:13:22,073.073 INFO    ] 2026-10-28 22:13:22
[2026-10-28 22:13:22,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:13:22,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:13:22,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:13:22,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:13:22,634.634 INFO    ] time= 28/10/2026 22:13:22
[2026-10-28 22:13:22,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:13:22,679.679 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:13:22,793.793 INFO    ] No existing commands found in stream
[2026-10-28 22:13:27,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:13:27,820.820 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 22:13:31,166.166 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:13:31,168.168 INFO    ] Checking for system updates...
[2026-10-28 22:13:31,206.206 INFO    ] 200
[2026-10-28 22:13:31,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:13:31,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:13:31,267.267 INFO    ] No update needed
[2026-10-28 22:13:31,269.269 INFO    ] Checking for camera pi updates...
[2026-10-28 22:13:31,303.303 INFO    ] 200
[2026-10-28 22:13:31,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:13:31,346.346 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:13:31,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:13:31,431.431 INFO    ] No camera update needed
[2026-10-28 22:13:31,433.433 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:13:31,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:13:31,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:13:31,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:13:33,485.485 INFO    ] ================================================
[2026-10-28 22:13:33,500.500 INFO    ] Launching Daemon at Wed Oct 28 22:13:33 IST 2026
[2026-10-28 22:13:33,510.510 INFO    ] ================================================
[2026-10-28 22:13:34,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:13:34
[2026-10-28 22:13:34,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:13:34,918.918 INFO    ] Initializing speech engine...
[2026-10-28 22:13:34,930.930 INFO    ] 2026-10-28 22:13:34
[2026-10-28 22:13:35,200.200 INFO    ] 2026-10-28 22:13:35
[2026-10-28 22:13:35,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:13:35,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:13:35,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:13:35,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:13:35,768.768 INFO    ] time= 28/10/2026 22:13:35
[2026-10-28 22:13:35,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:13:35,816.816 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:13:35,948.948 INFO    ] No existing commands found in stream
[2026-10-28 22:13:40,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:13:40,985.985 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-28 22:13:44,252.252 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:13:44,255.255 INFO    ] Checking for system updates...
[2026-10-28 22:13:44,290.290 INFO    ] 200
[2026-10-28 22:13:44,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:13:44,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:13:44,348.348 INFO    ] No update needed
[2026-10-28 22:13:44,351.351 INFO    ] Checking for camera pi updates...
[2026-10-28 22:13:44,388.388 INFO    ] 200
[2026-10-28 22:13:44,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:13:44,431.431 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:13:44,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:13:44,516.516 INFO    ] No camera update needed
[2026-10-28 22:13:44,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:13:44,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:13:44,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:13:44,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:13:46,570.570 INFO    ] ================================================
[2026-10-28 22:13:46,585.585 INFO    ] Launching Daemon at Wed Oct 28 22:13:46 IST 2026
[2026-10-28 22:13:46,595.595 INFO    ] ================================================
[2026-10-28 22:13:47,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:13:47
[2026-10-28 22:13:47,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:13:48,032.032 INFO    ] Initializing speech engine...
[2026-10-28 22:13:48,055.055 INFO    ] 2026-10-28 22:13:48
[2026-10-28 22:13:48,327.327 INFO    ] 2026-10-28 22:13:48
[2026-10-28 22:13:48,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:13:48,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:13:48,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:13:48,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:13:48,932.932 INFO    ] time= 28/10/2026 22:13:48
[2026-10-28 22:13:48,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:13:48,955.955 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:13:49,067.067 INFO    ] No existing commands found in stream
[2026-10-28 22:13:54,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:13:54,100.100 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-10-28 22:13:57,683.683 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:13:57,686.686 INFO    ] Checking for system updates...
[2026-10-28 22:13:57,724.724 INFO    ] 200
[2026-10-28 22:13:57,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:13:57,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:13:57,782.782 INFO    ] No update needed
[2026-10-28 22:13:57,784.784 INFO    ] Checking for camera pi updates...
[2026-10-28 22:13:57,821.821 INFO    ] 200
[2026-10-28 22:13:57,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:13:57,864.864 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:13:57,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:13:57,929.929 INFO    ] No camera update needed
[2026-10-28 22:13:57,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:13:57,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:13:57,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:13:57,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:13:59,986.986 INFO    ] ================================================
[2026-10-28 22:14:00,001.001 INFO    ] Launching Daemon at Wed Oct 28 22:13:59 IST 2026
[2026-10-28 22:14:00,012.012 INFO    ] ================================================
[2026-10-28 22:14:00,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:14:00
[2026-10-28 22:14:01,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:14:01,467.467 INFO    ] Initializing speech engine...
[2026-10-28 22:14:01,477.477 INFO    ] 2026-10-28 22:14:01
[2026-10-28 22:14:01,751.751 INFO    ] 2026-10-28 22:14:01
[2026-10-28 22:14:01,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:14:02,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:14:02,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:14:02,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:14:02,404.404 INFO    ] time= 28/10/2026 22:14:02
[2026-10-28 22:14:02,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:14:02,411.411 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:14:02,567.567 INFO    ] No existing commands found in stream
[2026-10-28 22:14:07,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:14:07,582.582 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-10-28 22:14:10,087.087 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:14:10,089.089 INFO    ] Checking for system updates...
[2026-10-28 22:14:10,128.128 INFO    ] 200
[2026-10-28 22:14:10,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:14:10,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:14:10,185.185 INFO    ] No update needed
[2026-10-28 22:14:10,187.187 INFO    ] Checking for camera pi updates...
[2026-10-28 22:14:10,220.220 INFO    ] 200
[2026-10-28 22:14:10,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:14:10,268.268 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:14:10,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:14:10,360.360 INFO    ] No camera update needed
[2026-10-28 22:14:10,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:14:10,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:14:10,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:14:10,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:14:12,417.417 INFO    ] ================================================
[2026-10-28 22:14:12,432.432 INFO    ] Launching Daemon at Wed Oct 28 22:14:12 IST 2026
[2026-10-28 22:14:12,447.447 INFO    ] ================================================
[2026-10-28 22:14:13,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:14:13
[2026-10-28 22:14:13,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:14:13,868.868 INFO    ] Initializing speech engine...
[2026-10-28 22:14:13,878.878 INFO    ] 2026-10-28 22:14:13
[2026-10-28 22:14:14,128.128 INFO    ] 2026-10-28 22:14:14
[2026-10-28 22:14:14,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:14:14,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:14:14,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:14:14,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:14:14,699.699 INFO    ] time= 28/10/2026 22:14:14
[2026-10-28 22:14:14,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:14:14,721.721 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:14:14,852.852 INFO    ] No existing commands found in stream
[2026-10-28 22:14:19,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:14:19,873.873 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 22:14:20,456.456 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:14:20,458.458 INFO    ] Checking for system updates...
[2026-10-28 22:14:20,495.495 INFO    ] 200
[2026-10-28 22:14:20,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:14:20,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:14:20,557.557 INFO    ] No update needed
[2026-10-28 22:14:20,560.560 INFO    ] Checking for camera pi updates...
[2026-10-28 22:14:20,593.593 INFO    ] 200
[2026-10-28 22:14:20,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:14:20,639.639 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:14:20,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:14:20,724.724 INFO    ] No camera update needed
[2026-10-28 22:14:20,727.727 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:14:20,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:14:20,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:14:20,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:14:22,779.779 INFO    ] ================================================
[2026-10-28 22:14:22,794.794 INFO    ] Launching Daemon at Wed Oct 28 22:14:22 IST 2026
[2026-10-28 22:14:22,805.805 INFO    ] ================================================
[2026-10-28 22:14:23,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:14:23
[2026-10-28 22:14:23,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:14:24,261.261 INFO    ] Initializing speech engine...
[2026-10-28 22:14:24,270.270 INFO    ] 2026-10-28 22:14:24
[2026-10-28 22:14:24,529.529 INFO    ] 2026-10-28 22:14:24
[2026-10-28 22:14:24,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:14:24,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:14:24,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:14:25,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:14:25,076.076 INFO    ] time= 28/10/2026 22:14:25
[2026-10-28 22:14:25,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:14:25,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:14:25,239.239 INFO    ] No existing commands found in stream
[2026-10-28 22:14:30,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:14:30,272.272 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-10-28 22:14:35,112.112 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:14:35,115.115 INFO    ] Checking for system updates...
[2026-10-28 22:14:35,150.150 INFO    ] 200
[2026-10-28 22:14:35,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:14:35,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:14:35,215.215 INFO    ] No update needed
[2026-10-28 22:14:35,217.217 INFO    ] Checking for camera pi updates...
[2026-10-28 22:14:35,251.251 INFO    ] 200
[2026-10-28 22:14:35,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:14:35,293.293 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:14:35,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:14:35,389.389 INFO    ] No camera update needed
[2026-10-28 22:14:35,392.392 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:14:35,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:14:35,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:14:35,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:14:37,444.444 INFO    ] ================================================
[2026-10-28 22:14:37,459.459 INFO    ] Launching Daemon at Wed Oct 28 22:14:37 IST 2026
[2026-10-28 22:14:37,469.469 INFO    ] ================================================
[2026-10-28 22:14:38,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:14:38
[2026-10-28 22:14:38,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:14:38,869.869 INFO    ] Initializing speech engine...
[2026-10-28 22:14:38,875.875 INFO    ] 2026-10-28 22:14:38
[2026-10-28 22:14:39,171.171 INFO    ] 2026-10-28 22:14:39
[2026-10-28 22:14:39,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:14:39,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:14:39,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:14:39,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:14:39,738.738 INFO    ] time= 28/10/2026 22:14:39
[2026-10-28 22:14:39,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:14:39,765.765 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:14:39,896.896 INFO    ] No existing commands found in stream
[2026-10-28 22:14:44,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:14:44,911.911 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-10-28 22:14:46,193.193 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:14:46,196.196 INFO    ] Checking for system updates...
[2026-10-28 22:14:46,235.235 INFO    ] 200
[2026-10-28 22:14:46,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:14:46,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:14:46,298.298 INFO    ] No update needed
[2026-10-28 22:14:46,300.300 INFO    ] Checking for camera pi updates...
[2026-10-28 22:14:46,333.333 INFO    ] 200
[2026-10-28 22:14:46,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:14:46,376.376 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:14:46,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:14:46,461.461 INFO    ] No camera update needed
[2026-10-28 22:14:46,464.464 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:14:46,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:14:46,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:14:46,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:14:48,516.516 INFO    ] ================================================
[2026-10-28 22:14:48,534.534 INFO    ] Launching Daemon at Wed Oct 28 22:14:48 IST 2026
[2026-10-28 22:14:48,545.545 INFO    ] ================================================
[2026-10-28 22:14:49,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:14:49
[2026-10-28 22:14:49,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:14:49,958.958 INFO    ] Initializing speech engine...
[2026-10-28 22:14:49,965.965 INFO    ] 2026-10-28 22:14:49
[2026-10-28 22:14:50,258.258 INFO    ] 2026-10-28 22:14:50
[2026-10-28 22:14:50,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:14:50,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:14:50,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:14:50,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:14:50,886.886 INFO    ] time= 28/10/2026 22:14:50
[2026-10-28 22:14:50,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:14:50,898.898 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:14:51,060.060 INFO    ] No existing commands found in stream
[2026-10-28 22:14:56,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:14:56,078.078 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-10-28 22:14:56,713.713 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:14:56,716.716 INFO    ] Checking for system updates...
[2026-10-28 22:14:56,751.751 INFO    ] 200
[2026-10-28 22:14:56,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:14:56,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:14:56,808.808 INFO    ] No update needed
[2026-10-28 22:14:56,811.811 INFO    ] Checking for camera pi updates...
[2026-10-28 22:14:56,848.848 INFO    ] 200
[2026-10-28 22:14:56,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:14:56,890.890 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:14:57,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:14:57,070.070 INFO    ] No camera update needed
[2026-10-28 22:14:57,072.072 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:14:57,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:14:57,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:14:57,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:14:59,128.128 INFO    ] ================================================
[2026-10-28 22:14:59,143.143 INFO    ] Launching Daemon at Wed Oct 28 22:14:59 IST 2026
[2026-10-28 22:14:59,153.153 INFO    ] ================================================
[2026-10-28 22:14:59,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:14:59
[2026-10-28 22:15:00,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:15:00,566.566 INFO    ] Initializing speech engine...
[2026-10-28 22:15:00,582.582 INFO    ] 2026-10-28 22:15:00
[2026-10-28 22:15:00,869.869 INFO    ] 2026-10-28 22:15:00
[2026-10-28 22:15:00,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:15:01,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:15:01,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:15:01,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:15:01,469.469 INFO    ] time= 28/10/2026 22:15:01
[2026-10-28 22:15:01,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:15:01,491.491 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:15:01,602.602 INFO    ] No existing commands found in stream
[2026-10-28 22:15:06,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:15:06,619.619 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-28 22:15:10,844.844 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:15:10,846.846 INFO    ] Checking for system updates...
[2026-10-28 22:15:10,882.882 INFO    ] 200
[2026-10-28 22:15:10,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:15:10,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:15:10,939.939 INFO    ] No update needed
[2026-10-28 22:15:10,942.942 INFO    ] Checking for camera pi updates...
[2026-10-28 22:15:10,979.979 INFO    ] 200
[2026-10-28 22:15:10,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:15:11,026.026 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:15:11,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:15:11,095.095 INFO    ] No camera update needed
[2026-10-28 22:15:11,097.097 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:15:11,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:15:11,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:15:11,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:15:13,151.151 INFO    ] ================================================
[2026-10-28 22:15:13,167.167 INFO    ] Launching Daemon at Wed Oct 28 22:15:13 IST 2026
[2026-10-28 22:15:13,179.179 INFO    ] ================================================
[2026-10-28 22:15:13,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:15:13
[2026-10-28 22:15:14,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:15:14,779.779 INFO    ] Initializing speech engine...
[2026-10-28 22:15:14,789.789 INFO    ] 2026-10-28 22:15:14
[2026-10-28 22:15:15,070.070 INFO    ] 2026-10-28 22:15:15
[2026-10-28 22:15:15,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:15:15,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:15:15,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:15:15,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:15:15,682.682 INFO    ] time= 28/10/2026 22:15:15
[2026-10-28 22:15:15,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:15:15,722.722 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:15:15,897.897 INFO    ] No existing commands found in stream
[2026-10-28 22:15:20,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:15:20,926.926 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 22:15:25,276.276 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:15:25,279.279 INFO    ] Checking for system updates...
[2026-10-28 22:15:25,315.315 INFO    ] 200
[2026-10-28 22:15:25,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:15:25,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:15:25,382.382 INFO    ] No update needed
[2026-10-28 22:15:25,384.384 INFO    ] Checking for camera pi updates...
[2026-10-28 22:15:25,421.421 INFO    ] 200
[2026-10-28 22:15:25,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:15:25,466.466 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:15:25,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:15:25,520.520 INFO    ] No camera update needed
[2026-10-28 22:15:25,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:15:25,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:15:25,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:15:25,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:15:27,580.580 INFO    ] ================================================
[2026-10-28 22:15:27,596.596 INFO    ] Launching Daemon at Wed Oct 28 22:15:27 IST 2026
[2026-10-28 22:15:27,607.607 INFO    ] ================================================
[2026-10-28 22:15:28,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:15:28
[2026-10-28 22:15:28,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:15:29,181.181 INFO    ] Initializing speech engine...
[2026-10-28 22:15:29,197.197 INFO    ] 2026-10-28 22:15:29
[2026-10-28 22:15:29,469.469 INFO    ] 2026-10-28 22:15:29
[2026-10-28 22:15:29,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:15:29,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:15:29,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:15:29,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:15:30,020.020 INFO    ] time= 28/10/2026 22:15:29
[2026-10-28 22:15:30,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:15:30,101.101 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:15:30,242.242 INFO    ] No existing commands found in stream
[2026-10-28 22:15:35,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:15:35,269.269 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 22:15:36,031.031 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:15:36,034.034 INFO    ] Checking for system updates...
[2026-10-28 22:15:36,070.070 INFO    ] 200
[2026-10-28 22:15:36,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:15:36,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:15:36,133.133 INFO    ] No update needed
[2026-10-28 22:15:36,136.136 INFO    ] Checking for camera pi updates...
[2026-10-28 22:15:36,173.173 INFO    ] 200
[2026-10-28 22:15:36,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:15:36,215.215 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:15:36,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:15:36,306.306 INFO    ] No camera update needed
[2026-10-28 22:15:36,309.309 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:15:36,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:15:36,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:15:36,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:15:38,363.363 INFO    ] ================================================
[2026-10-28 22:15:38,379.379 INFO    ] Launching Daemon at Wed Oct 28 22:15:38 IST 2026
[2026-10-28 22:15:38,390.390 INFO    ] ================================================
[2026-10-28 22:15:38,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:15:38
[2026-10-28 22:15:39,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:15:39,800.800 INFO    ] Initializing speech engine...
[2026-10-28 22:15:39,807.807 INFO    ] 2026-10-28 22:15:39
[2026-10-28 22:15:40,101.101 INFO    ] 2026-10-28 22:15:40
[2026-10-28 22:15:40,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:15:40,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:15:40,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:15:40,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:15:40,610.610 INFO    ] time= 28/10/2026 22:15:40
[2026-10-28 22:15:40,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:15:40,713.713 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:15:40,799.799 INFO    ] No existing commands found in stream
[2026-10-28 22:15:45,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:15:45,814.814 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-28 22:15:47,639.639 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:15:47,641.641 INFO    ] Checking for system updates...
[2026-10-28 22:15:47,677.677 INFO    ] 200
[2026-10-28 22:15:47,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:15:47,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:15:47,734.734 INFO    ] No update needed
[2026-10-28 22:15:47,736.736 INFO    ] Checking for camera pi updates...
[2026-10-28 22:15:47,769.769 INFO    ] 200
[2026-10-28 22:15:47,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:15:47,820.820 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:15:47,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:15:47,906.906 INFO    ] No camera update needed
[2026-10-28 22:15:47,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:15:47,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:15:47,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:15:47,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:15:49,960.960 INFO    ] ================================================
[2026-10-28 22:15:49,975.975 INFO    ] Launching Daemon at Wed Oct 28 22:15:49 IST 2026
[2026-10-28 22:15:49,987.987 INFO    ] ================================================
[2026-10-28 22:15:50,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:15:50
[2026-10-28 22:15:51,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:15:51,463.463 INFO    ] Initializing speech engine...
[2026-10-28 22:15:51,470.470 INFO    ] 2026-10-28 22:15:51
[2026-10-28 22:15:51,743.743 INFO    ] 2026-10-28 22:15:51
[2026-10-28 22:15:51,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:15:52,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:15:52,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:15:52,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:15:52,297.297 INFO    ] time= 28/10/2026 22:15:52
[2026-10-28 22:15:52,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:15:52,333.333 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:15:52,454.454 INFO    ] No existing commands found in stream
[2026-10-28 22:15:57,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:15:57,487.487 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-28 22:15:58,789.789 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:15:58,791.791 INFO    ] Checking for system updates...
[2026-10-28 22:15:58,827.827 INFO    ] 200
[2026-10-28 22:15:58,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:15:58,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:15:58,885.885 INFO    ] No update needed
[2026-10-28 22:15:58,887.887 INFO    ] Checking for camera pi updates...
[2026-10-28 22:15:58,922.922 INFO    ] 200
[2026-10-28 22:15:58,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:15:58,970.970 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:15:59,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:15:59,072.072 INFO    ] No camera update needed
[2026-10-28 22:15:59,074.074 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:15:59,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:15:59,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:15:59,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:16:01,129.129 INFO    ] ================================================
[2026-10-28 22:16:01,145.145 INFO    ] Launching Daemon at Wed Oct 28 22:16:01 IST 2026
[2026-10-28 22:16:01,155.155 INFO    ] ================================================
[2026-10-28 22:16:01,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:16:01
[2026-10-28 22:16:02,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:16:02,793.793 INFO    ] Initializing speech engine...
[2026-10-28 22:16:02,812.812 INFO    ] 2026-10-28 22:16:02
[2026-10-28 22:16:03,104.104 INFO    ] 2026-10-28 22:16:03
[2026-10-28 22:16:03,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:16:03,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:16:03,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:16:03,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:16:03,741.741 INFO    ] time= 28/10/2026 22:16:03
[2026-10-28 22:16:03,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:16:03,788.788 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:16:03,950.950 INFO    ] No existing commands found in stream
[2026-10-28 22:16:08,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:16:08,983.983 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-10-28 22:16:12,875.875 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:16:12,878.878 INFO    ] Checking for system updates...
[2026-10-28 22:16:12,913.913 INFO    ] 200
[2026-10-28 22:16:12,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:16:12,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:16:12,977.977 INFO    ] No update needed
[2026-10-28 22:16:12,979.979 INFO    ] Checking for camera pi updates...
[2026-10-28 22:16:13,013.013 INFO    ] 200
[2026-10-28 22:16:13,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:16:13,057.057 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:16:13,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:16:13,142.142 INFO    ] No camera update needed
[2026-10-28 22:16:13,145.145 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:16:13,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:16:13,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:16:13,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:16:15,200.200 INFO    ] ================================================
[2026-10-28 22:16:15,216.216 INFO    ] Launching Daemon at Wed Oct 28 22:16:15 IST 2026
[2026-10-28 22:16:15,226.226 INFO    ] ================================================
[2026-10-28 22:16:15,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:16:15
[2026-10-28 22:16:16,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:16:16,622.622 INFO    ] Initializing speech engine...
[2026-10-28 22:16:16,630.630 INFO    ] 2026-10-28 22:16:16
[2026-10-28 22:16:16,905.905 INFO    ] 2026-10-28 22:16:16
[2026-10-28 22:16:16,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:16:17,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:16:17,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:16:17,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:16:17,474.474 INFO    ] time= 28/10/2026 22:16:17
[2026-10-28 22:16:17,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:16:17,522.522 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:16:18,042.042 INFO    ] No existing commands found in stream
[2026-10-28 22:16:23,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:16:23,057.057 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-10-28 22:16:26,310.310 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:16:26,312.312 INFO    ] Checking for system updates...
[2026-10-28 22:16:26,352.352 INFO    ] 200
[2026-10-28 22:16:26,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:16:26,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:16:26,416.416 INFO    ] No update needed
[2026-10-28 22:16:26,418.418 INFO    ] Checking for camera pi updates...
[2026-10-28 22:16:26,453.453 INFO    ] 200
[2026-10-28 22:16:26,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:16:26,496.496 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:16:26,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:16:26,578.578 INFO    ] No camera update needed
[2026-10-28 22:16:26,580.580 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:16:26,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:16:26,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:16:26,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:16:28,634.634 INFO    ] ================================================
[2026-10-28 22:16:28,650.650 INFO    ] Launching Daemon at Wed Oct 28 22:16:28 IST 2026
[2026-10-28 22:16:28,662.662 INFO    ] ================================================
[2026-10-28 22:16:29,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:16:29
[2026-10-28 22:16:29,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:16:30,300.300 INFO    ] Initializing speech engine...
[2026-10-28 22:16:30,308.308 INFO    ] 2026-10-28 22:16:30
[2026-10-28 22:16:30,625.625 INFO    ] 2026-10-28 22:16:30
[2026-10-28 22:16:30,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:16:30,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:16:30,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:16:31,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:16:31,168.168 INFO    ] time= 28/10/2026 22:16:31
[2026-10-28 22:16:31,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:16:31,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:16:31,320.320 INFO    ] No existing commands found in stream
[2026-10-28 22:16:36,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:16:36,353.353 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-28 22:16:36,993.993 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:16:36,996.996 INFO    ] Checking for system updates...
[2026-10-28 22:16:37,036.036 INFO    ] 200
[2026-10-28 22:16:37,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:16:37,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:16:37,100.100 INFO    ] No update needed
[2026-10-28 22:16:37,102.102 INFO    ] Checking for camera pi updates...
[2026-10-28 22:16:37,139.139 INFO    ] 200
[2026-10-28 22:16:37,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:16:37,182.182 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:16:37,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:16:37,269.269 INFO    ] No camera update needed
[2026-10-28 22:16:37,271.271 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:16:37,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:16:37,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:16:37,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:16:39,328.328 INFO    ] ================================================
[2026-10-28 22:16:39,344.344 INFO    ] Launching Daemon at Wed Oct 28 22:16:39 IST 2026
[2026-10-28 22:16:39,354.354 INFO    ] ================================================
[2026-10-28 22:16:40,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:16:40
[2026-10-28 22:16:40,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:16:41,012.012 INFO    ] Initializing speech engine...
[2026-10-28 22:16:41,024.024 INFO    ] 2026-10-28 22:16:41
[2026-10-28 22:16:41,297.297 INFO    ] 2026-10-28 22:16:41
[2026-10-28 22:16:41,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:16:41,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:16:41,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:16:41,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:16:41,905.905 INFO    ] time= 28/10/2026 22:16:41
[2026-10-28 22:16:41,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:16:41,962.962 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:16:42,092.092 INFO    ] No existing commands found in stream
[2026-10-28 22:16:47,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:16:47,132.132 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-28 22:16:48,328.328 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:16:48,331.331 INFO    ] Checking for system updates...
[2026-10-28 22:16:48,372.372 INFO    ] 200
[2026-10-28 22:16:48,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:16:48,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:16:48,435.435 INFO    ] No update needed
[2026-10-28 22:16:48,438.438 INFO    ] Checking for camera pi updates...
[2026-10-28 22:16:48,473.473 INFO    ] 200
[2026-10-28 22:16:48,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:16:48,517.517 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:16:48,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:16:48,604.604 INFO    ] No camera update needed
[2026-10-28 22:16:48,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:16:48,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:16:48,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:16:48,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:16:50,664.664 INFO    ] ================================================
[2026-10-28 22:16:50,681.681 INFO    ] Launching Daemon at Wed Oct 28 22:16:50 IST 2026
[2026-10-28 22:16:50,692.692 INFO    ] ================================================
[2026-10-28 22:16:51,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:16:51
[2026-10-28 22:16:52,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:16:52,351.351 INFO    ] Initializing speech engine...
[2026-10-28 22:16:52,365.365 INFO    ] 2026-10-28 22:16:52
[2026-10-28 22:16:52,680.680 INFO    ] 2026-10-28 22:16:52
[2026-10-28 22:16:52,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:16:52,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:16:52,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:16:53,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:16:53,214.214 INFO    ] time= 28/10/2026 22:16:53
[2026-10-28 22:16:53,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:16:53,263.263 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:16:53,414.414 INFO    ] No existing commands found in stream
[2026-10-28 22:16:58,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:16:58,448.448 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 22:16:59,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:16:59,210.210 INFO    ] Checking for system updates...
[2026-10-28 22:16:59,253.253 INFO    ] 200
[2026-10-28 22:16:59,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:16:59,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:16:59,316.316 INFO    ] No update needed
[2026-10-28 22:16:59,319.319 INFO    ] Checking for camera pi updates...
[2026-10-28 22:16:59,355.355 INFO    ] 200
[2026-10-28 22:16:59,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:16:59,401.401 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:16:59,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:16:59,578.578 INFO    ] No camera update needed
[2026-10-28 22:16:59,581.581 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:16:59,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:16:59,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:16:59,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:17:01,638.638 INFO    ] ================================================
[2026-10-28 22:17:01,658.658 INFO    ] Launching Daemon at Wed Oct 28 22:17:01 IST 2026
[2026-10-28 22:17:01,673.673 INFO    ] ================================================
[2026-10-28 22:17:02,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:17:02
[2026-10-28 22:17:03,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:17:03,625.625 INFO    ] Initializing speech engine...
[2026-10-28 22:17:03,643.643 INFO    ] 2026-10-28 22:17:03
[2026-10-28 22:17:04,057.057 INFO    ] 2026-10-28 22:17:04
[2026-10-28 22:17:04,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:17:04,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:17:04,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:17:04,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:17:04,601.601 INFO    ] time= 28/10/2026 22:17:04
[2026-10-28 22:17:04,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:17:04,646.646 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:17:04,773.773 INFO    ] No existing commands found in stream
[2026-10-28 22:17:09,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:17:09,806.806 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-10-28 22:17:12,187.187 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:17:12,190.190 INFO    ] Checking for system updates...
[2026-10-28 22:17:12,226.226 INFO    ] 200
[2026-10-28 22:17:12,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:17:12,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:17:12,282.282 INFO    ] No update needed
[2026-10-28 22:17:12,285.285 INFO    ] Checking for camera pi updates...
[2026-10-28 22:17:12,323.323 INFO    ] 200
[2026-10-28 22:17:12,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:17:12,366.366 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:17:12,467.467 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:17:12,470.470 INFO    ] No camera update needed
[2026-10-28 22:17:12,472.472 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:17:12,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:17:12,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:17:12,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:17:14,525.525 INFO    ] ================================================
[2026-10-28 22:17:14,541.541 INFO    ] Launching Daemon at Wed Oct 28 22:17:14 IST 2026
[2026-10-28 22:17:14,552.552 INFO    ] ================================================
[2026-10-28 22:17:15,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:17:15
[2026-10-28 22:17:15,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:17:16,185.185 INFO    ] Initializing speech engine...
[2026-10-28 22:17:16,199.199 INFO    ] 2026-10-28 22:17:16
[2026-10-28 22:17:16,482.482 INFO    ] 2026-10-28 22:17:16
[2026-10-28 22:17:16,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:17:16,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:17:16,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:17:17,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:17:17,030.030 INFO    ] time= 28/10/2026 22:17:17
[2026-10-28 22:17:17,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:17:17,069.069 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:17:17,206.206 INFO    ] No existing commands found in stream
[2026-10-28 22:17:22,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:17:22,235.235 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 22:17:23,951.951 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:17:23,955.955 INFO    ] Checking for system updates...
[2026-10-28 22:17:23,992.992 INFO    ] 200
[2026-10-28 22:17:23,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:17:24,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:17:24,052.052 INFO    ] No update needed
[2026-10-28 22:17:24,055.055 INFO    ] Checking for camera pi updates...
[2026-10-28 22:17:24,088.088 INFO    ] 200
[2026-10-28 22:17:24,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:17:24,136.136 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:17:24,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:17:24,221.221 INFO    ] No camera update needed
[2026-10-28 22:17:24,223.223 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:17:24,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:17:24,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:17:24,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:17:26,275.275 INFO    ] ================================================
[2026-10-28 22:17:26,291.291 INFO    ] Launching Daemon at Wed Oct 28 22:17:26 IST 2026
[2026-10-28 22:17:26,302.302 INFO    ] ================================================
[2026-10-28 22:17:26,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:17:26
[2026-10-28 22:17:27,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:17:27,935.935 INFO    ] Initializing speech engine...
[2026-10-28 22:17:27,945.945 INFO    ] 2026-10-28 22:17:27
[2026-10-28 22:17:28,224.224 INFO    ] 2026-10-28 22:17:28
[2026-10-28 22:17:28,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:17:28,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:17:28,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:17:28,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:17:28,787.787 INFO    ] time= 28/10/2026 22:17:28
[2026-10-28 22:17:28,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:17:28,828.828 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:17:28,951.951 INFO    ] No existing commands found in stream
[2026-10-28 22:17:33,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:17:33,973.973 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-28 22:17:37,070.070 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:17:37,072.072 INFO    ] Checking for system updates...
[2026-10-28 22:17:37,112.112 INFO    ] 200
[2026-10-28 22:17:37,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:17:37,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:17:37,178.178 INFO    ] No update needed
[2026-10-28 22:17:37,181.181 INFO    ] Checking for camera pi updates...
[2026-10-28 22:17:37,219.219 INFO    ] 200
[2026-10-28 22:17:37,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:17:37,267.267 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:17:37,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:17:37,354.354 INFO    ] No camera update needed
[2026-10-28 22:17:37,357.357 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:17:37,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:17:37,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:17:37,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:17:39,410.410 INFO    ] ================================================
[2026-10-28 22:17:39,425.425 INFO    ] Launching Daemon at Wed Oct 28 22:17:39 IST 2026
[2026-10-28 22:17:39,436.436 INFO    ] ================================================
[2026-10-28 22:17:40,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:17:39
[2026-10-28 22:17:40,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:17:40,835.835 INFO    ] Initializing speech engine...
[2026-10-28 22:17:40,843.843 INFO    ] 2026-10-28 22:17:40
[2026-10-28 22:17:41,118.118 INFO    ] 2026-10-28 22:17:41
[2026-10-28 22:17:41,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:17:41,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:17:41,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:17:41,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:17:41,688.688 INFO    ] time= 28/10/2026 22:17:41
[2026-10-28 22:17:41,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:17:41,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:17:41,845.845 INFO    ] No existing commands found in stream
[2026-10-28 22:17:46,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:17:46,861.861 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-28 22:17:50,136.136 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:17:50,138.138 INFO    ] Checking for system updates...
[2026-10-28 22:17:50,175.175 INFO    ] 200
[2026-10-28 22:17:50,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:17:50,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:17:50,240.240 INFO    ] No update needed
[2026-10-28 22:17:50,242.242 INFO    ] Checking for camera pi updates...
[2026-10-28 22:17:50,277.277 INFO    ] 200
[2026-10-28 22:17:50,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:17:50,321.321 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:17:50,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:17:50,407.407 INFO    ] No camera update needed
[2026-10-28 22:17:50,410.410 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:17:50,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:17:50,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:17:50,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:17:52,468.468 INFO    ] ================================================
[2026-10-28 22:17:52,484.484 INFO    ] Launching Daemon at Wed Oct 28 22:17:52 IST 2026
[2026-10-28 22:17:52,496.496 INFO    ] ================================================
[2026-10-28 22:17:53,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:17:53
[2026-10-28 22:17:53,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:17:53,915.915 INFO    ] Initializing speech engine...
[2026-10-28 22:17:53,925.925 INFO    ] 2026-10-28 22:17:53
[2026-10-28 22:17:54,183.183 INFO    ] 2026-10-28 22:17:54
[2026-10-28 22:17:54,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:17:54,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:17:54,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:17:54,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:17:54,721.721 INFO    ] time= 28/10/2026 22:17:54
[2026-10-28 22:17:54,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:17:54,756.756 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:17:54,874.874 INFO    ] No existing commands found in stream
[2026-10-28 22:17:59,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:17:59,905.905 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 22:18:02,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:18:02,122.122 INFO    ] Checking for system updates...
[2026-10-28 22:18:02,166.166 INFO    ] 200
[2026-10-28 22:18:02,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:18:02,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:18:02,248.248 INFO    ] No update needed
[2026-10-28 22:18:02,251.251 INFO    ] Checking for camera pi updates...
[2026-10-28 22:18:02,299.299 INFO    ] 200
[2026-10-28 22:18:02,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:18:02,361.361 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:18:02,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:18:02,464.464 INFO    ] No camera update needed
[2026-10-28 22:18:02,467.467 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:18:02,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:18:02,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:18:02,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:18:04,527.527 INFO    ] ================================================
[2026-10-28 22:18:04,543.543 INFO    ] Launching Daemon at Wed Oct 28 22:18:04 IST 2026
[2026-10-28 22:18:04,554.554 INFO    ] ================================================
[2026-10-28 22:18:05,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:18:05
[2026-10-28 22:18:05,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:18:05,996.996 INFO    ] Initializing speech engine...
[2026-10-28 22:18:06,006.006 INFO    ] 2026-10-28 22:18:06
[2026-10-28 22:18:06,249.249 INFO    ] 2026-10-28 22:18:06
[2026-10-28 22:18:06,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:18:06,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:18:06,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:18:06,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:18:06,820.820 INFO    ] time= 28/10/2026 22:18:06
[2026-10-28 22:18:06,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:18:06,845.845 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:18:06,959.959 INFO    ] No existing commands found in stream
[2026-10-28 22:18:11,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:18:11,985.985 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-28 22:18:12,759.759 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:18:12,762.762 INFO    ] Checking for system updates...
[2026-10-28 22:18:12,801.801 INFO    ] 200
[2026-10-28 22:18:12,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:18:12,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:18:12,858.858 INFO    ] No update needed
[2026-10-28 22:18:12,861.861 INFO    ] Checking for camera pi updates...
[2026-10-28 22:18:12,894.894 INFO    ] 200
[2026-10-28 22:18:12,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:18:12,941.941 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:18:13,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:18:13,024.024 INFO    ] No camera update needed
[2026-10-28 22:18:13,026.026 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:18:13,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:18:13,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:18:13,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:18:15,079.079 INFO    ] ================================================
[2026-10-28 22:18:15,095.095 INFO    ] Launching Daemon at Wed Oct 28 22:18:15 IST 2026
[2026-10-28 22:18:15,105.105 INFO    ] ================================================
[2026-10-28 22:18:15,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:18:15
[2026-10-28 22:18:16,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:18:16,723.723 INFO    ] Initializing speech engine...
[2026-10-28 22:18:16,736.736 INFO    ] 2026-10-28 22:18:16
[2026-10-28 22:18:17,019.019 INFO    ] 2026-10-28 22:18:16
[2026-10-28 22:18:17,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:18:17,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:18:17,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:18:17,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:18:17,581.581 INFO    ] time= 28/10/2026 22:18:17
[2026-10-28 22:18:17,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:18:17,607.607 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:18:17,726.726 INFO    ] No existing commands found in stream
[2026-10-28 22:18:22,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:18:22,761.761 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-28 22:18:25,111.111 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:18:25,114.114 INFO    ] Checking for system updates...
[2026-10-28 22:18:25,151.151 INFO    ] 200
[2026-10-28 22:18:25,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:18:25,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:18:25,211.211 INFO    ] No update needed
[2026-10-28 22:18:25,214.214 INFO    ] Checking for camera pi updates...
[2026-10-28 22:18:25,249.249 INFO    ] 200
[2026-10-28 22:18:25,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:18:25,293.293 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:18:25,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:18:25,372.372 INFO    ] No camera update needed
[2026-10-28 22:18:25,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:18:25,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:18:25,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:18:25,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:18:27,430.430 INFO    ] ================================================
[2026-10-28 22:18:27,446.446 INFO    ] Launching Daemon at Wed Oct 28 22:18:27 IST 2026
[2026-10-28 22:18:27,457.457 INFO    ] ================================================
[2026-10-28 22:18:28,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:18:28
[2026-10-28 22:18:28,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:18:28,928.928 INFO    ] Initializing speech engine...
[2026-10-28 22:18:28,951.951 INFO    ] 2026-10-28 22:18:28
[2026-10-28 22:18:29,229.229 INFO    ] 2026-10-28 22:18:29
[2026-10-28 22:18:29,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:18:29,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:18:29,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:18:29,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:18:29,791.791 INFO    ] time= 28/10/2026 22:18:29
[2026-10-28 22:18:29,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:18:29,813.813 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:18:29,953.953 INFO    ] No existing commands found in stream
[2026-10-28 22:18:34,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:18:34,978.978 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-10-28 22:18:37,291.291 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:18:37,293.293 INFO    ] Checking for system updates...
[2026-10-28 22:18:37,333.333 INFO    ] 200
[2026-10-28 22:18:37,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:18:37,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:18:37,398.398 INFO    ] No update needed
[2026-10-28 22:18:37,400.400 INFO    ] Checking for camera pi updates...
[2026-10-28 22:18:37,438.438 INFO    ] 200
[2026-10-28 22:18:37,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:18:37,481.481 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:18:37,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:18:37,566.566 INFO    ] No camera update needed
[2026-10-28 22:18:37,568.568 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:18:37,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:18:37,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:18:37,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:18:39,621.621 INFO    ] ================================================
[2026-10-28 22:18:39,637.637 INFO    ] Launching Daemon at Wed Oct 28 22:18:39 IST 2026
[2026-10-28 22:18:39,647.647 INFO    ] ================================================
[2026-10-28 22:18:40,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:18:40
[2026-10-28 22:18:40,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:18:41,053.053 INFO    ] Initializing speech engine...
[2026-10-28 22:18:41,061.061 INFO    ] 2026-10-28 22:18:41
[2026-10-28 22:18:41,352.352 INFO    ] 2026-10-28 22:18:41
[2026-10-28 22:18:41,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:18:41,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:18:41,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:18:41,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:18:41,876.876 INFO    ] time= 28/10/2026 22:18:41
[2026-10-28 22:18:41,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:18:41,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:18:42,114.114 INFO    ] No existing commands found in stream
[2026-10-28 22:18:47,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:18:47,135.135 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-10-28 22:18:51,072.072 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:18:51,075.075 INFO    ] Checking for system updates...
[2026-10-28 22:18:51,116.116 INFO    ] 200
[2026-10-28 22:18:51,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:18:51,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:18:51,175.175 INFO    ] No update needed
[2026-10-28 22:18:51,177.177 INFO    ] Checking for camera pi updates...
[2026-10-28 22:18:51,215.215 INFO    ] 200
[2026-10-28 22:18:51,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:18:51,260.260 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:18:51,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:18:51,360.360 INFO    ] No camera update needed
[2026-10-28 22:18:51,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:18:51,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:18:51,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:18:51,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:18:53,418.418 INFO    ] ================================================
[2026-10-28 22:18:53,433.433 INFO    ] Launching Daemon at Wed Oct 28 22:18:53 IST 2026
[2026-10-28 22:18:53,443.443 INFO    ] ================================================
[2026-10-28 22:18:54,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:18:54
[2026-10-28 22:18:54,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:18:54,947.947 INFO    ] Initializing speech engine...
[2026-10-28 22:18:54,962.962 INFO    ] 2026-10-28 22:18:54
[2026-10-28 22:18:55,235.235 INFO    ] 2026-10-28 22:18:55
[2026-10-28 22:18:55,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:18:55,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:18:55,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:18:55,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:18:55,824.824 INFO    ] time= 28/10/2026 22:18:55
[2026-10-28 22:18:55,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:18:55,867.867 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:18:56,002.002 INFO    ] No existing commands found in stream
[2026-10-28 22:19:01,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:19:01,023.023 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 22:19:02,434.434 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:19:02,439.439 INFO    ] Checking for system updates...
[2026-10-28 22:19:02,495.495 INFO    ] 200
[2026-10-28 22:19:02,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:19:02,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:19:02,567.567 INFO    ] No update needed
[2026-10-28 22:19:02,570.570 INFO    ] Checking for camera pi updates...
[2026-10-28 22:19:02,616.616 INFO    ] 200
[2026-10-28 22:19:02,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:19:02,679.679 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:19:02,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:19:02,894.894 INFO    ] No camera update needed
[2026-10-28 22:19:02,897.897 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:19:02,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:19:02,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:19:02,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:19:04,953.953 INFO    ] ================================================
[2026-10-28 22:19:04,969.969 INFO    ] Launching Daemon at Wed Oct 28 22:19:04 IST 2026
[2026-10-28 22:19:04,979.979 INFO    ] ================================================
[2026-10-28 22:19:05,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:19:05
[2026-10-28 22:19:06,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:19:06,575.575 INFO    ] Initializing speech engine...
[2026-10-28 22:19:06,584.584 INFO    ] 2026-10-28 22:19:06
[2026-10-28 22:19:06,847.847 INFO    ] 2026-10-28 22:19:06
[2026-10-28 22:19:06,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:19:07,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:19:07,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:19:07,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:19:07,434.434 INFO    ] time= 28/10/2026 22:19:07
[2026-10-28 22:19:07,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:19:07,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:19:07,560.560 INFO    ] No existing commands found in stream
[2026-10-28 22:19:12,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:19:12,574.574 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 22:19:15,075.075 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:19:15,078.078 INFO    ] Checking for system updates...
[2026-10-28 22:19:15,113.113 INFO    ] 200
[2026-10-28 22:19:15,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:19:15,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:19:15,170.170 INFO    ] No update needed
[2026-10-28 22:19:15,173.173 INFO    ] Checking for camera pi updates...
[2026-10-28 22:19:15,207.207 INFO    ] 200
[2026-10-28 22:19:15,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:19:15,250.250 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:19:15,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:19:15,352.352 INFO    ] No camera update needed
[2026-10-28 22:19:15,355.355 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:19:15,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:19:15,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:19:15,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:19:17,407.407 INFO    ] ================================================
[2026-10-28 22:19:17,423.423 INFO    ] Launching Daemon at Wed Oct 28 22:19:17 IST 2026
[2026-10-28 22:19:17,433.433 INFO    ] ================================================
[2026-10-28 22:19:18,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:19:18
[2026-10-28 22:19:18,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:19:19,004.004 INFO    ] Initializing speech engine...
[2026-10-28 22:19:19,012.012 INFO    ] 2026-10-28 22:19:19
[2026-10-28 22:19:19,298.298 INFO    ] 2026-10-28 22:19:19
[2026-10-28 22:19:19,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:19:19,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:19:19,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:19:19,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:19:19,840.840 INFO    ] time= 28/10/2026 22:19:19
[2026-10-28 22:19:19,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:19:19,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:19:20,036.036 INFO    ] No existing commands found in stream
[2026-10-28 22:19:25,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:19:25,065.065 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-10-28 22:19:27,549.549 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:19:27,551.551 INFO    ] Checking for system updates...
[2026-10-28 22:19:27,587.587 INFO    ] 200
[2026-10-28 22:19:27,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:19:27,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:19:27,650.650 INFO    ] No update needed
[2026-10-28 22:19:27,652.652 INFO    ] Checking for camera pi updates...
[2026-10-28 22:19:27,689.689 INFO    ] 200
[2026-10-28 22:19:27,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:19:27,732.732 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:19:27,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:19:27,841.841 INFO    ] No camera update needed
[2026-10-28 22:19:27,843.843 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:19:27,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:19:27,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:19:27,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:19:29,897.897 INFO    ] ================================================
[2026-10-28 22:19:29,912.912 INFO    ] Launching Daemon at Wed Oct 28 22:19:29 IST 2026
[2026-10-28 22:19:29,923.923 INFO    ] ================================================
[2026-10-28 22:19:30,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:19:30
[2026-10-28 22:19:31,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:19:31,370.370 INFO    ] Initializing speech engine...
[2026-10-28 22:19:31,383.383 INFO    ] 2026-10-28 22:19:31
[2026-10-28 22:19:31,664.664 INFO    ] 2026-10-28 22:19:31
[2026-10-28 22:19:31,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:19:31,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:19:31,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:19:32,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:19:32,154.154 INFO    ] time= 28/10/2026 22:19:32
[2026-10-28 22:19:32,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:19:32,263.263 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:19:32,406.406 INFO    ] No existing commands found in stream
[2026-10-28 22:19:37,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:19:37,436.436 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-28 22:19:39,630.630 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:19:39,633.633 INFO    ] Checking for system updates...
[2026-10-28 22:19:39,669.669 INFO    ] 200
[2026-10-28 22:19:39,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:19:39,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:19:39,731.731 INFO    ] No update needed
[2026-10-28 22:19:39,734.734 INFO    ] Checking for camera pi updates...
[2026-10-28 22:19:39,771.771 INFO    ] 200
[2026-10-28 22:19:39,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:19:39,814.814 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:19:39,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:19:39,898.898 INFO    ] No camera update needed
[2026-10-28 22:19:39,901.901 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:19:39,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:19:39,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:19:39,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:19:41,953.953 INFO    ] ================================================
[2026-10-28 22:19:41,968.968 INFO    ] Launching Daemon at Wed Oct 28 22:19:41 IST 2026
[2026-10-28 22:19:41,979.979 INFO    ] ================================================
[2026-10-28 22:19:42,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:19:42
[2026-10-28 22:19:43,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:19:43,385.385 INFO    ] Initializing speech engine...
[2026-10-28 22:19:43,390.390 INFO    ] 2026-10-28 22:19:43
[2026-10-28 22:19:43,677.677 INFO    ] 2026-10-28 22:19:43
[2026-10-28 22:19:43,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:19:43,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:19:43,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:19:44,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:19:44,215.215 INFO    ] time= 28/10/2026 22:19:44
[2026-10-28 22:19:44,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:19:44,244.244 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:19:44,386.386 INFO    ] No existing commands found in stream
[2026-10-28 22:19:49,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:19:49,406.406 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-28 22:19:51,271.271 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:19:51,273.273 INFO    ] Checking for system updates...
[2026-10-28 22:19:51,309.309 INFO    ] 200
[2026-10-28 22:19:51,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:19:51,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:19:51,367.367 INFO    ] No update needed
[2026-10-28 22:19:51,370.370 INFO    ] Checking for camera pi updates...
[2026-10-28 22:19:51,406.406 INFO    ] 200
[2026-10-28 22:19:51,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:19:51,449.449 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:19:51,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:19:51,527.527 INFO    ] No camera update needed
[2026-10-28 22:19:51,529.529 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:19:51,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:19:51,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:19:51,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:19:53,581.581 INFO    ] ================================================
[2026-10-28 22:19:53,596.596 INFO    ] Launching Daemon at Wed Oct 28 22:19:53 IST 2026
[2026-10-28 22:19:53,607.607 INFO    ] ================================================
[2026-10-28 22:19:54,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:19:54
[2026-10-28 22:19:54,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:19:55,159.159 INFO    ] Initializing speech engine...
[2026-10-28 22:19:55,166.166 INFO    ] 2026-10-28 22:19:55
[2026-10-28 22:19:55,451.451 INFO    ] 2026-10-28 22:19:55
[2026-10-28 22:19:55,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:19:55,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:19:55,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:19:56,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:19:56,177.177 INFO    ] time= 28/10/2026 22:19:56
[2026-10-28 22:19:56,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:19:56,259.259 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:19:56,419.419 INFO    ] No existing commands found in stream
[2026-10-28 22:20:01,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:20:01,443.443 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-10-28 22:20:08,311.311 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:20:08,314.314 INFO    ] Checking for system updates...
[2026-10-28 22:20:08,351.351 INFO    ] 200
[2026-10-28 22:20:08,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:20:08,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:20:08,410.410 INFO    ] No update needed
[2026-10-28 22:20:08,413.413 INFO    ] Checking for camera pi updates...
[2026-10-28 22:20:08,446.446 INFO    ] 200
[2026-10-28 22:20:08,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:20:08,495.495 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:20:08,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:20:08,603.603 INFO    ] No camera update needed
[2026-10-28 22:20:08,606.606 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:20:08,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:20:08,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:20:08,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:20:10,657.657 INFO    ] ================================================
[2026-10-28 22:20:10,673.673 INFO    ] Launching Daemon at Wed Oct 28 22:20:10 IST 2026
[2026-10-28 22:20:10,684.684 INFO    ] ================================================
[2026-10-28 22:20:11,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:20:11
[2026-10-28 22:20:11,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:20:12,118.118 INFO    ] Initializing speech engine...
[2026-10-28 22:20:12,128.128 INFO    ] 2026-10-28 22:20:12
[2026-10-28 22:20:12,378.378 INFO    ] 2026-10-28 22:20:12
[2026-10-28 22:20:12,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:20:12,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:20:12,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:20:12,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:20:12,950.950 INFO    ] time= 28/10/2026 22:20:12
[2026-10-28 22:20:12,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:20:12,973.973 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:20:13,108.108 INFO    ] No existing commands found in stream
[2026-10-28 22:20:18,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:20:18,136.136 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 22:20:20,188.188 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:20:20,191.191 INFO    ] Checking for system updates...
[2026-10-28 22:20:20,226.226 INFO    ] 200
[2026-10-28 22:20:20,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:20:20,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:20:20,283.283 INFO    ] No update needed
[2026-10-28 22:20:20,285.285 INFO    ] Checking for camera pi updates...
[2026-10-28 22:20:20,322.322 INFO    ] 200
[2026-10-28 22:20:20,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:20:20,370.370 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:20:20,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:20:20,455.455 INFO    ] No camera update needed
[2026-10-28 22:20:20,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:20:20,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:20:20,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:20:20,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:20:22,511.511 INFO    ] ================================================
[2026-10-28 22:20:22,526.526 INFO    ] Launching Daemon at Wed Oct 28 22:20:22 IST 2026
[2026-10-28 22:20:22,537.537 INFO    ] ================================================
[2026-10-28 22:20:23,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:20:23
[2026-10-28 22:20:23,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:20:24,164.164 INFO    ] Initializing speech engine...
[2026-10-28 22:20:24,179.179 INFO    ] 2026-10-28 22:20:24
[2026-10-28 22:20:24,449.449 INFO    ] 2026-10-28 22:20:24
[2026-10-28 22:20:24,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:20:24,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:20:24,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:20:25,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:20:25,105.105 INFO    ] time= 28/10/2026 22:20:25
[2026-10-28 22:20:25,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:20:25,211.211 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:20:25,371.371 INFO    ] No existing commands found in stream
[2026-10-28 22:20:30,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:20:30,416.416 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-28 22:20:31,636.636 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:20:31,639.639 INFO    ] Checking for system updates...
[2026-10-28 22:20:31,678.678 INFO    ] 200
[2026-10-28 22:20:31,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:20:31,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:20:31,741.741 INFO    ] No update needed
[2026-10-28 22:20:31,744.744 INFO    ] Checking for camera pi updates...
[2026-10-28 22:20:31,778.778 INFO    ] 200
[2026-10-28 22:20:31,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:20:31,820.820 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:20:31,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:20:31,907.907 INFO    ] No camera update needed
[2026-10-28 22:20:31,910.910 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:20:31,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:20:31,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:20:31,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:20:33,967.967 INFO    ] ================================================
[2026-10-28 22:20:33,982.982 INFO    ] Launching Daemon at Wed Oct 28 22:20:33 IST 2026
[2026-10-28 22:20:33,992.992 INFO    ] ================================================
[2026-10-28 22:20:34,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:20:34
[2026-10-28 22:20:35,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:20:35,455.455 INFO    ] Initializing speech engine...
[2026-10-28 22:20:35,469.469 INFO    ] 2026-10-28 22:20:35
[2026-10-28 22:20:35,756.756 INFO    ] 2026-10-28 22:20:35
[2026-10-28 22:20:35,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:20:36,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:20:36,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:20:36,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:20:36,384.384 INFO    ] time= 28/10/2026 22:20:36
[2026-10-28 22:20:36,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:20:36,408.408 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:20:36,522.522 INFO    ] No existing commands found in stream
[2026-10-28 22:20:41,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:20:41,548.548 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-10-28 22:20:43,442.442 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:20:43,445.445 INFO    ] Checking for system updates...
[2026-10-28 22:20:43,484.484 INFO    ] 200
[2026-10-28 22:20:43,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:20:43,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:20:43,542.542 INFO    ] No update needed
[2026-10-28 22:20:43,545.545 INFO    ] Checking for camera pi updates...
[2026-10-28 22:20:43,582.582 INFO    ] 200
[2026-10-28 22:20:43,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:20:43,625.625 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:20:43,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:20:43,732.732 INFO    ] No camera update needed
[2026-10-28 22:20:43,735.735 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:20:43,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:20:43,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:20:43,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:20:45,788.788 INFO    ] ================================================
[2026-10-28 22:20:45,803.803 INFO    ] Launching Daemon at Wed Oct 28 22:20:45 IST 2026
[2026-10-28 22:20:45,813.813 INFO    ] ================================================
[2026-10-28 22:20:46,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:20:46
[2026-10-28 22:20:46,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:20:47,262.262 INFO    ] Initializing speech engine...
[2026-10-28 22:20:47,272.272 INFO    ] 2026-10-28 22:20:47
[2026-10-28 22:20:47,536.536 INFO    ] 2026-10-28 22:20:47
[2026-10-28 22:20:47,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:20:47,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:20:47,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:20:48,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:20:48,131.131 INFO    ] time= 28/10/2026 22:20:48
[2026-10-28 22:20:48,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:20:48,194.194 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:20:48,336.336 INFO    ] No existing commands found in stream
[2026-10-28 22:20:53,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:20:53,349.349 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-10-28 22:20:54,886.886 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:20:54,888.888 INFO    ] Checking for system updates...
[2026-10-28 22:20:54,927.927 INFO    ] 200
[2026-10-28 22:20:54,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:20:54,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:20:54,984.984 INFO    ] No update needed
[2026-10-28 22:20:54,987.987 INFO    ] Checking for camera pi updates...
[2026-10-28 22:20:55,021.021 INFO    ] 200
[2026-10-28 22:20:55,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:20:55,069.069 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:20:55,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:20:55,172.172 INFO    ] No camera update needed
[2026-10-28 22:20:55,175.175 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:20:55,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:20:55,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:20:55,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:20:57,229.229 INFO    ] ================================================
[2026-10-28 22:20:57,244.244 INFO    ] Launching Daemon at Wed Oct 28 22:20:57 IST 2026
[2026-10-28 22:20:57,255.255 INFO    ] ================================================
[2026-10-28 22:20:57,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:20:57
[2026-10-28 22:20:58,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:20:58,704.704 INFO    ] Initializing speech engine...
[2026-10-28 22:20:58,715.715 INFO    ] 2026-10-28 22:20:58
[2026-10-28 22:20:58,974.974 INFO    ] 2026-10-28 22:20:58
[2026-10-28 22:20:59,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:20:59,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:20:59,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:20:59,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:20:59,693.693 INFO    ] time= 28/10/2026 22:20:59
[2026-10-28 22:20:59,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:20:59,773.773 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:20:59,913.913 INFO    ] No existing commands found in stream
[2026-10-28 22:21:04,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:21:04,935.935 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-10-28 22:21:07,114.114 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:21:07,116.116 INFO    ] Checking for system updates...
[2026-10-28 22:21:07,156.156 INFO    ] 200
[2026-10-28 22:21:07,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:21:07,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:21:07,213.213 INFO    ] No update needed
[2026-10-28 22:21:07,215.215 INFO    ] Checking for camera pi updates...
[2026-10-28 22:21:07,249.249 INFO    ] 200
[2026-10-28 22:21:07,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:21:07,291.291 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:21:07,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:21:07,478.478 INFO    ] No camera update needed
[2026-10-28 22:21:07,480.480 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:21:07,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:21:07,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:21:07,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:21:09,531.531 INFO    ] ================================================
[2026-10-28 22:21:09,547.547 INFO    ] Launching Daemon at Wed Oct 28 22:21:09 IST 2026
[2026-10-28 22:21:09,557.557 INFO    ] ================================================
[2026-10-28 22:21:10,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:21:10
[2026-10-28 22:21:10,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:21:10,950.950 INFO    ] Initializing speech engine...
[2026-10-28 22:21:10,965.965 INFO    ] 2026-10-28 22:21:10
[2026-10-28 22:21:11,228.228 INFO    ] 2026-10-28 22:21:11
[2026-10-28 22:21:11,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:21:11,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:21:11,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:21:11,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:21:11,785.785 INFO    ] time= 28/10/2026 22:21:11
[2026-10-28 22:21:11,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:21:11,809.809 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:21:11,953.953 INFO    ] No existing commands found in stream
[2026-10-28 22:21:16,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:21:16,991.991 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 22:21:20,913.913 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:21:20,916.916 INFO    ] Checking for system updates...
[2026-10-28 22:21:20,952.952 INFO    ] 200
[2026-10-28 22:21:20,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:21:21,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:21:21,018.018 INFO    ] No update needed
[2026-10-28 22:21:21,020.020 INFO    ] Checking for camera pi updates...
[2026-10-28 22:21:21,053.053 INFO    ] 200
[2026-10-28 22:21:21,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:21:21,101.101 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:21:21,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:21:21,186.186 INFO    ] No camera update needed
[2026-10-28 22:21:21,188.188 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:21:21,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:21:21,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:21:21,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:21:23,239.239 INFO    ] ================================================
[2026-10-28 22:21:23,254.254 INFO    ] Launching Daemon at Wed Oct 28 22:21:23 IST 2026
[2026-10-28 22:21:23,265.265 INFO    ] ================================================
[2026-10-28 22:21:23,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:21:23
[2026-10-28 22:21:24,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:21:24,864.864 INFO    ] Initializing speech engine...
[2026-10-28 22:21:24,878.878 INFO    ] 2026-10-28 22:21:24
[2026-10-28 22:21:25,175.175 INFO    ] 2026-10-28 22:21:25
[2026-10-28 22:21:25,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:21:25,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:21:25,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:21:25,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:21:25,743.743 INFO    ] time= 28/10/2026 22:21:25
[2026-10-28 22:21:25,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:21:25,760.760 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:21:25,882.882 INFO    ] No existing commands found in stream
[2026-10-28 22:21:30,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:21:30,916.916 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-10-28 22:21:33,148.148 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:21:33,151.151 INFO    ] Checking for system updates...
[2026-10-28 22:21:33,186.186 INFO    ] 200
[2026-10-28 22:21:33,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:21:33,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:21:33,243.243 INFO    ] No update needed
[2026-10-28 22:21:33,245.245 INFO    ] Checking for camera pi updates...
[2026-10-28 22:21:33,282.282 INFO    ] 200
[2026-10-28 22:21:33,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:21:33,332.332 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:21:33,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:21:33,439.439 INFO    ] No camera update needed
[2026-10-28 22:21:33,441.441 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:21:33,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:21:33,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:21:33,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:21:35,493.493 INFO    ] ================================================
[2026-10-28 22:21:35,509.509 INFO    ] Launching Daemon at Wed Oct 28 22:21:35 IST 2026
[2026-10-28 22:21:35,520.520 INFO    ] ================================================
[2026-10-28 22:21:36,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:21:36
[2026-10-28 22:21:36,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:21:36,937.937 INFO    ] Initializing speech engine...
[2026-10-28 22:21:36,946.946 INFO    ] 2026-10-28 22:21:36
[2026-10-28 22:21:37,193.193 INFO    ] 2026-10-28 22:21:37
[2026-10-28 22:21:37,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:21:37,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:21:37,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:21:37,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:21:37,748.748 INFO    ] time= 28/10/2026 22:21:37
[2026-10-28 22:21:37,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:21:37,770.770 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:21:37,896.896 INFO    ] No existing commands found in stream
[2026-10-28 22:21:42,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:21:42,913.913 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-10-28 22:21:44,752.752 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:21:44,755.755 INFO    ] Checking for system updates...
[2026-10-28 22:21:44,796.796 INFO    ] 200
[2026-10-28 22:21:44,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:21:44,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:21:44,862.862 INFO    ] No update needed
[2026-10-28 22:21:44,865.865 INFO    ] Checking for camera pi updates...
[2026-10-28 22:21:44,900.900 INFO    ] 200
[2026-10-28 22:21:44,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:21:44,944.944 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:21:45,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:21:45,028.028 INFO    ] No camera update needed
[2026-10-28 22:21:45,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:21:45,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:21:45,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:21:45,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:21:47,086.086 INFO    ] ================================================
[2026-10-28 22:21:47,101.101 INFO    ] Launching Daemon at Wed Oct 28 22:21:47 IST 2026
[2026-10-28 22:21:47,111.111 INFO    ] ================================================
[2026-10-28 22:21:47,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:21:47
[2026-10-28 22:21:48,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:21:48,568.568 INFO    ] Initializing speech engine...
[2026-10-28 22:21:48,578.578 INFO    ] 2026-10-28 22:21:48
[2026-10-28 22:21:48,828.828 INFO    ] 2026-10-28 22:21:48
[2026-10-28 22:21:48,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:21:49,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:21:49,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:21:49,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:21:49,391.391 INFO    ] time= 28/10/2026 22:21:49
[2026-10-28 22:21:49,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:21:49,439.439 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:21:49,596.596 INFO    ] No existing commands found in stream
[2026-10-28 22:21:54,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:21:54,629.629 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 22:21:57,551.551 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:21:57,554.554 INFO    ] Checking for system updates...
[2026-10-28 22:21:57,594.594 INFO    ] 200
[2026-10-28 22:21:57,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:21:57,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:21:57,658.658 INFO    ] No update needed
[2026-10-28 22:21:57,660.660 INFO    ] Checking for camera pi updates...
[2026-10-28 22:21:57,697.697 INFO    ] 200
[2026-10-28 22:21:57,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:21:57,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:21:57,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:21:57,824.824 INFO    ] No camera update needed
[2026-10-28 22:21:57,827.827 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:21:57,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:21:57,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:21:57,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:21:59,880.880 INFO    ] ================================================
[2026-10-28 22:21:59,896.896 INFO    ] Launching Daemon at Wed Oct 28 22:21:59 IST 2026
[2026-10-28 22:21:59,907.907 INFO    ] ================================================
[2026-10-28 22:22:00,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:22:00
[2026-10-28 22:22:01,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:22:01,308.308 INFO    ] Initializing speech engine...
[2026-10-28 22:22:01,316.316 INFO    ] 2026-10-28 22:22:01
[2026-10-28 22:22:01,696.696 INFO    ] 2026-10-28 22:22:01
[2026-10-28 22:22:01,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:22:02,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:22:02,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:22:02,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:22:02,355.355 INFO    ] time= 28/10/2026 22:22:02
[2026-10-28 22:22:02,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:22:02,451.451 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:22:02,595.595 INFO    ] No existing commands found in stream
[2026-10-28 22:22:07,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:22:07,623.623 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 22:22:08,773.773 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:22:08,776.776 INFO    ] Checking for system updates...
[2026-10-28 22:22:08,811.811 INFO    ] 200
[2026-10-28 22:22:08,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:22:08,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:22:08,872.872 INFO    ] No update needed
[2026-10-28 22:22:08,875.875 INFO    ] Checking for camera pi updates...
[2026-10-28 22:22:08,910.910 INFO    ] 200
[2026-10-28 22:22:08,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:22:08,954.954 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:22:09,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:22:09,045.045 INFO    ] No camera update needed
[2026-10-28 22:22:09,047.047 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:22:09,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:22:09,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:22:09,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:22:11,100.100 INFO    ] ================================================
[2026-10-28 22:22:11,115.115 INFO    ] Launching Daemon at Wed Oct 28 22:22:11 IST 2026
[2026-10-28 22:22:11,126.126 INFO    ] ================================================
[2026-10-28 22:22:11,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:22:11
[2026-10-28 22:22:12,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:22:12,572.572 INFO    ] Initializing speech engine...
[2026-10-28 22:22:12,581.581 INFO    ] 2026-10-28 22:22:12
[2026-10-28 22:22:12,852.852 INFO    ] 2026-10-28 22:22:12
[2026-10-28 22:22:12,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:22:13,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:22:13,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:22:13,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:22:13,546.546 INFO    ] time= 28/10/2026 22:22:13
[2026-10-28 22:22:13,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:22:13,641.641 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:22:13,781.781 INFO    ] No existing commands found in stream
[2026-10-28 22:22:18,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:22:18,801.801 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-28 22:22:23,290.290 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:22:23,292.292 INFO    ] Checking for system updates...
[2026-10-28 22:22:23,328.328 INFO    ] 200
[2026-10-28 22:22:23,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:22:23,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:22:23,385.385 INFO    ] No update needed
[2026-10-28 22:22:23,387.387 INFO    ] Checking for camera pi updates...
[2026-10-28 22:22:23,420.420 INFO    ] 200
[2026-10-28 22:22:23,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:22:23,463.463 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:22:23,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:22:23,550.550 INFO    ] No camera update needed
[2026-10-28 22:22:23,553.553 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:22:23,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:22:23,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:22:23,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:22:25,605.605 INFO    ] ================================================
[2026-10-28 22:22:25,621.621 INFO    ] Launching Daemon at Wed Oct 28 22:22:25 IST 2026
[2026-10-28 22:22:25,632.632 INFO    ] ================================================
[2026-10-28 22:22:26,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:22:26
[2026-10-28 22:22:26,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:22:27,092.092 INFO    ] Initializing speech engine...
[2026-10-28 22:22:27,098.098 INFO    ] 2026-10-28 22:22:27
[2026-10-28 22:22:27,364.364 INFO    ] 2026-10-28 22:22:27
[2026-10-28 22:22:27,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:22:27,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:22:27,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:22:27,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:22:27,947.947 INFO    ] time= 28/10/2026 22:22:27
[2026-10-28 22:22:27,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:22:27,960.960 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:22:28,085.085 INFO    ] No existing commands found in stream
[2026-10-28 22:22:33,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:22:33,113.113 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-10-28 22:22:37,311.311 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:22:37,314.314 INFO    ] Checking for system updates...
[2026-10-28 22:22:37,350.350 INFO    ] 200
[2026-10-28 22:22:37,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:22:37,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:22:37,411.411 INFO    ] No update needed
[2026-10-28 22:22:37,414.414 INFO    ] Checking for camera pi updates...
[2026-10-28 22:22:37,450.450 INFO    ] 200
[2026-10-28 22:22:37,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:22:37,492.492 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:22:37,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:22:37,573.573 INFO    ] No camera update needed
[2026-10-28 22:22:37,576.576 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:22:37,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:22:37,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:22:37,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:22:39,627.627 INFO    ] ================================================
[2026-10-28 22:22:39,643.643 INFO    ] Launching Daemon at Wed Oct 28 22:22:39 IST 2026
[2026-10-28 22:22:39,658.658 INFO    ] ================================================
[2026-10-28 22:22:40,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:22:40
[2026-10-28 22:22:40,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:22:41,055.055 INFO    ] Initializing speech engine...
[2026-10-28 22:22:41,061.061 INFO    ] 2026-10-28 22:22:41
[2026-10-28 22:22:41,337.337 INFO    ] 2026-10-28 22:22:41
[2026-10-28 22:22:41,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:22:41,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:22:41,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:22:41,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:22:41,906.906 INFO    ] time= 28/10/2026 22:22:41
[2026-10-28 22:22:41,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:22:41,954.954 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:22:42,083.083 INFO    ] No existing commands found in stream
[2026-10-28 22:22:47,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:22:47,117.117 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 22:22:49,147.147 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:22:49,150.150 INFO    ] Checking for system updates...
[2026-10-28 22:22:49,188.188 INFO    ] 200
[2026-10-28 22:22:49,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:22:49,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:22:49,250.250 INFO    ] No update needed
[2026-10-28 22:22:49,252.252 INFO    ] Checking for camera pi updates...
[2026-10-28 22:22:49,288.288 INFO    ] 200
[2026-10-28 22:22:49,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:22:49,330.330 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:22:49,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:22:49,403.403 INFO    ] No camera update needed
[2026-10-28 22:22:49,405.405 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:22:49,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:22:49,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:22:49,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:22:51,457.457 INFO    ] ================================================
[2026-10-28 22:22:51,472.472 INFO    ] Launching Daemon at Wed Oct 28 22:22:51 IST 2026
[2026-10-28 22:22:51,483.483 INFO    ] ================================================
[2026-10-28 22:22:52,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:22:52
[2026-10-28 22:22:52,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:22:53,052.052 INFO    ] Initializing speech engine...
[2026-10-28 22:22:53,060.060 INFO    ] 2026-10-28 22:22:53
[2026-10-28 22:22:53,325.325 INFO    ] 2026-10-28 22:22:53
[2026-10-28 22:22:53,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:22:53,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:22:53,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:22:53,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:22:53,868.868 INFO    ] time= 28/10/2026 22:22:53
[2026-10-28 22:22:53,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:22:53,948.948 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:22:54,106.106 INFO    ] No existing commands found in stream
[2026-10-28 22:22:59,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:22:59,126.126 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 22:23:01,510.510 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:23:01,512.512 INFO    ] Checking for system updates...
[2026-10-28 22:23:01,549.549 INFO    ] 200
[2026-10-28 22:23:01,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:23:01,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:23:01,689.689 INFO    ] No update needed
[2026-10-28 22:23:01,696.696 INFO    ] Checking for camera pi updates...
[2026-10-28 22:23:01,772.772 INFO    ] 200
[2026-10-28 22:23:01,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:23:01,851.851 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:23:01,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:23:01,960.960 INFO    ] No camera update needed
[2026-10-28 22:23:01,963.963 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:23:01,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:23:01,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:23:01,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:23:04,039.039 INFO    ] ================================================
[2026-10-28 22:23:04,055.055 INFO    ] Launching Daemon at Wed Oct 28 22:23:04 IST 2026
[2026-10-28 22:23:04,065.065 INFO    ] ================================================
[2026-10-28 22:23:04,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:23:04
[2026-10-28 22:23:05,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:23:05,651.651 INFO    ] Initializing speech engine...
[2026-10-28 22:23:05,663.663 INFO    ] 2026-10-28 22:23:05
[2026-10-28 22:23:05,934.934 INFO    ] 2026-10-28 22:23:05
[2026-10-28 22:23:05,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:23:06,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:23:06,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:23:06,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:23:06,490.490 INFO    ] time= 28/10/2026 22:23:06
[2026-10-28 22:23:06,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:23:06,539.539 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:23:06,678.678 INFO    ] No existing commands found in stream
[2026-10-28 22:23:11,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:23:11,717.717 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 22:23:14,327.327 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:23:14,330.330 INFO    ] Checking for system updates...
[2026-10-28 22:23:14,366.366 INFO    ] 200
[2026-10-28 22:23:14,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:23:14,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:23:14,424.424 INFO    ] No update needed
[2026-10-28 22:23:14,426.426 INFO    ] Checking for camera pi updates...
[2026-10-28 22:23:14,462.462 INFO    ] 200
[2026-10-28 22:23:14,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:23:14,513.513 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:23:14,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:23:14,698.698 INFO    ] No camera update needed
[2026-10-28 22:23:14,700.700 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:23:14,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:23:14,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:23:14,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:23:16,756.756 INFO    ] ================================================
[2026-10-28 22:23:16,771.771 INFO    ] Launching Daemon at Wed Oct 28 22:23:16 IST 2026
[2026-10-28 22:23:16,782.782 INFO    ] ================================================
[2026-10-28 22:23:17,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:23:17
[2026-10-28 22:23:18,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:23:18,339.339 INFO    ] Initializing speech engine...
[2026-10-28 22:23:18,347.347 INFO    ] 2026-10-28 22:23:18
[2026-10-28 22:23:18,617.617 INFO    ] 2026-10-28 22:23:18
[2026-10-28 22:23:18,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:23:18,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:23:18,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:23:19,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:23:19,218.218 INFO    ] time= 28/10/2026 22:23:19
[2026-10-28 22:23:19,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:23:19,232.232 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:23:19,344.344 INFO    ] No existing commands found in stream
[2026-10-28 22:23:24,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:23:24,377.377 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-10-28 22:23:28,160.160 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:23:28,162.162 INFO    ] Checking for system updates...
[2026-10-28 22:23:28,201.201 INFO    ] 200
[2026-10-28 22:23:28,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:23:28,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:23:28,257.257 INFO    ] No update needed
[2026-10-28 22:23:28,260.260 INFO    ] Checking for camera pi updates...
[2026-10-28 22:23:28,293.293 INFO    ] 200
[2026-10-28 22:23:28,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:23:28,336.336 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:23:28,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:23:28,421.421 INFO    ] No camera update needed
[2026-10-28 22:23:28,423.423 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:23:28,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:23:28,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:23:28,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:23:30,476.476 INFO    ] ================================================
[2026-10-28 22:23:30,491.491 INFO    ] Launching Daemon at Wed Oct 28 22:23:30 IST 2026
[2026-10-28 22:23:30,502.502 INFO    ] ================================================
[2026-10-28 22:23:31,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:23:31
[2026-10-28 22:23:31,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:23:32,042.042 INFO    ] Initializing speech engine...
[2026-10-28 22:23:32,052.052 INFO    ] 2026-10-28 22:23:32
[2026-10-28 22:23:32,343.343 INFO    ] 2026-10-28 22:23:32
[2026-10-28 22:23:32,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:23:32,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:23:32,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:23:32,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:23:32,923.923 INFO    ] time= 28/10/2026 22:23:32
[2026-10-28 22:23:32,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:23:32,950.950 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:23:33,081.081 INFO    ] No existing commands found in stream
[2026-10-28 22:23:38,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:23:38,098.098 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-10-28 22:23:39,985.985 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:23:39,988.988 INFO    ] Checking for system updates...
[2026-10-28 22:23:40,024.024 INFO    ] 200
[2026-10-28 22:23:40,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:23:40,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:23:40,080.080 INFO    ] No update needed
[2026-10-28 22:23:40,083.083 INFO    ] Checking for camera pi updates...
[2026-10-28 22:23:40,120.120 INFO    ] 200
[2026-10-28 22:23:40,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:23:40,165.165 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:23:40,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:23:40,249.249 INFO    ] No camera update needed
[2026-10-28 22:23:40,251.251 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:23:40,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:23:40,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:23:40,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:23:42,305.305 INFO    ] ================================================
[2026-10-28 22:23:42,320.320 INFO    ] Launching Daemon at Wed Oct 28 22:23:42 IST 2026
[2026-10-28 22:23:42,330.330 INFO    ] ================================================
[2026-10-28 22:23:42,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:23:42
[2026-10-28 22:23:43,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:23:43,759.759 INFO    ] Initializing speech engine...
[2026-10-28 22:23:43,782.782 INFO    ] 2026-10-28 22:23:43
[2026-10-28 22:23:44,037.037 INFO    ] 2026-10-28 22:23:44
[2026-10-28 22:23:44,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:23:44,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:23:44,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:23:44,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:23:44,607.607 INFO    ] time= 28/10/2026 22:23:44
[2026-10-28 22:23:44,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:23:44,643.643 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:23:44,785.785 INFO    ] No existing commands found in stream
[2026-10-28 22:23:49,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:23:49,816.816 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-10-28 22:23:50,875.875 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:23:50,878.878 INFO    ] Checking for system updates...
[2026-10-28 22:23:50,913.913 INFO    ] 200
[2026-10-28 22:23:50,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:23:50,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:23:50,971.971 INFO    ] No update needed
[2026-10-28 22:23:50,973.973 INFO    ] Checking for camera pi updates...
[2026-10-28 22:23:51,017.017 INFO    ] 200
[2026-10-28 22:23:51,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:23:51,060.060 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:23:51,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:23:51,144.144 INFO    ] No camera update needed
[2026-10-28 22:23:51,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:23:51,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:23:51,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:23:51,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:23:53,201.201 INFO    ] ================================================
[2026-10-28 22:23:53,216.216 INFO    ] Launching Daemon at Wed Oct 28 22:23:53 IST 2026
[2026-10-28 22:23:53,227.227 INFO    ] ================================================
[2026-10-28 22:23:53,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:23:53
[2026-10-28 22:23:54,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:23:54,700.700 INFO    ] Initializing speech engine...
[2026-10-28 22:23:54,706.706 INFO    ] 2026-10-28 22:23:54
[2026-10-28 22:23:54,977.977 INFO    ] 2026-10-28 22:23:54
[2026-10-28 22:23:55,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:23:55,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:23:55,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:23:55,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:23:55,574.574 INFO    ] time= 28/10/2026 22:23:55
[2026-10-28 22:23:55,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:23:55,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:23:55,744.744 INFO    ] No existing commands found in stream
[2026-10-28 22:24:00,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:24:00,762.762 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 22:24:04,347.347 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:24:04,350.350 INFO    ] Checking for system updates...
[2026-10-28 22:24:04,387.387 INFO    ] 200
[2026-10-28 22:24:04,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:24:04,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:24:04,448.448 INFO    ] No update needed
[2026-10-28 22:24:04,450.450 INFO    ] Checking for camera pi updates...
[2026-10-28 22:24:04,484.484 INFO    ] 200
[2026-10-28 22:24:04,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:24:04,526.526 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:24:04,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:24:04,609.609 INFO    ] No camera update needed
[2026-10-28 22:24:04,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:24:04,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:24:04,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:24:04,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:24:06,667.667 INFO    ] ================================================
[2026-10-28 22:24:06,682.682 INFO    ] Launching Daemon at Wed Oct 28 22:24:06 IST 2026
[2026-10-28 22:24:06,693.693 INFO    ] ================================================
[2026-10-28 22:24:07,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:24:07
[2026-10-28 22:24:07,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:24:08,244.244 INFO    ] Initializing speech engine...
[2026-10-28 22:24:08,252.252 INFO    ] 2026-10-28 22:24:08
[2026-10-28 22:24:08,535.535 INFO    ] 2026-10-28 22:24:08
[2026-10-28 22:24:08,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:24:08,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:24:08,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:24:09,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:24:09,111.111 INFO    ] time= 28/10/2026 22:24:09
[2026-10-28 22:24:09,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:24:09,184.184 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:24:09,313.313 INFO    ] No existing commands found in stream
[2026-10-28 22:24:14,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:24:14,336.336 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-28 22:24:16,149.149 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:24:16,153.153 INFO    ] Checking for system updates...
[2026-10-28 22:24:16,195.195 INFO    ] 200
[2026-10-28 22:24:16,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:24:16,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:24:16,261.261 INFO    ] No update needed
[2026-10-28 22:24:16,264.264 INFO    ] Checking for camera pi updates...
[2026-10-28 22:24:16,301.301 INFO    ] 200
[2026-10-28 22:24:16,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:24:16,348.348 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:24:16,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:24:16,436.436 INFO    ] No camera update needed
[2026-10-28 22:24:16,438.438 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:24:16,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:24:16,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:24:16,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:24:18,495.495 INFO    ] ================================================
[2026-10-28 22:24:18,511.511 INFO    ] Launching Daemon at Wed Oct 28 22:24:18 IST 2026
[2026-10-28 22:24:18,522.522 INFO    ] ================================================
[2026-10-28 22:24:19,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:24:19
[2026-10-28 22:24:19,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:24:20,002.002 INFO    ] Initializing speech engine...
[2026-10-28 22:24:20,011.011 INFO    ] 2026-10-28 22:24:20
[2026-10-28 22:24:20,318.318 INFO    ] 2026-10-28 22:24:20
[2026-10-28 22:24:20,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:24:20,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:24:20,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:24:20,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:24:20,948.948 INFO    ] time= 28/10/2026 22:24:20
[2026-10-28 22:24:20,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:24:20,976.976 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:24:21,144.144 INFO    ] No existing commands found in stream
[2026-10-28 22:24:26,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:24:26,177.177 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-28 22:24:29,930.930 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:24:29,933.933 INFO    ] Checking for system updates...
[2026-10-28 22:24:29,969.969 INFO    ] 200
[2026-10-28 22:24:29,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:24:30,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:24:30,034.034 INFO    ] No update needed
[2026-10-28 22:24:30,036.036 INFO    ] Checking for camera pi updates...
[2026-10-28 22:24:30,069.069 INFO    ] 200
[2026-10-28 22:24:30,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:24:30,112.112 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:24:30,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:24:30,193.193 INFO    ] No camera update needed
[2026-10-28 22:24:30,196.196 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:24:30,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:24:30,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:24:30,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:24:32,251.251 INFO    ] ================================================
[2026-10-28 22:24:32,267.267 INFO    ] Launching Daemon at Wed Oct 28 22:24:32 IST 2026
[2026-10-28 22:24:32,279.279 INFO    ] ================================================
[2026-10-28 22:24:32,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:24:32
[2026-10-28 22:24:33,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:24:33,849.849 INFO    ] Initializing speech engine...
[2026-10-28 22:24:33,858.858 INFO    ] 2026-10-28 22:24:33
[2026-10-28 22:24:34,103.103 INFO    ] 2026-10-28 22:24:34
[2026-10-28 22:24:34,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:24:34,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:24:34,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:24:34,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:24:34,666.666 INFO    ] time= 28/10/2026 22:24:34
[2026-10-28 22:24:34,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:24:34,701.701 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:24:34,820.820 INFO    ] No existing commands found in stream
[2026-10-28 22:24:39,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:24:39,848.848 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-28 22:24:41,794.794 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:24:41,797.797 INFO    ] Checking for system updates...
[2026-10-28 22:24:41,836.836 INFO    ] 200
[2026-10-28 22:24:41,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:24:41,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:24:41,896.896 INFO    ] No update needed
[2026-10-28 22:24:41,898.898 INFO    ] Checking for camera pi updates...
[2026-10-28 22:24:41,932.932 INFO    ] 200
[2026-10-28 22:24:41,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:24:41,976.976 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:24:42,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:24:42,064.064 INFO    ] No camera update needed
[2026-10-28 22:24:42,066.066 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:24:42,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:24:42,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:24:42,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:24:44,122.122 INFO    ] ================================================
[2026-10-28 22:24:44,137.137 INFO    ] Launching Daemon at Wed Oct 28 22:24:44 IST 2026
[2026-10-28 22:24:44,148.148 INFO    ] ================================================
[2026-10-28 22:24:44,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:24:44
[2026-10-28 22:24:45,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:24:45,730.730 INFO    ] Initializing speech engine...
[2026-10-28 22:24:45,740.740 INFO    ] 2026-10-28 22:24:45
[2026-10-28 22:24:46,010.010 INFO    ] 2026-10-28 22:24:46
[2026-10-28 22:24:46,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:24:46,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:24:46,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:24:46,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:24:46,731.731 INFO    ] time= 28/10/2026 22:24:46
[2026-10-28 22:24:46,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:24:46,820.820 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:24:46,992.992 INFO    ] No existing commands found in stream
[2026-10-28 22:24:52,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:24:52,016.016 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-28 22:24:54,883.883 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:24:54,886.886 INFO    ] Checking for system updates...
[2026-10-28 22:24:54,922.922 INFO    ] 200
[2026-10-28 22:24:54,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:24:54,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:24:54,980.980 INFO    ] No update needed
[2026-10-28 22:24:54,983.983 INFO    ] Checking for camera pi updates...
[2026-10-28 22:24:55,021.021 INFO    ] 200
[2026-10-28 22:24:55,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:24:55,067.067 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:24:55,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:24:55,143.143 INFO    ] No camera update needed
[2026-10-28 22:24:55,146.146 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:24:55,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:24:55,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:24:55,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:24:57,203.203 INFO    ] ================================================
[2026-10-28 22:24:57,218.218 INFO    ] Launching Daemon at Wed Oct 28 22:24:57 IST 2026
[2026-10-28 22:24:57,230.230 INFO    ] ================================================
[2026-10-28 22:24:57,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:24:57
[2026-10-28 22:24:58,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:24:58,830.830 INFO    ] Initializing speech engine...
[2026-10-28 22:24:58,843.843 INFO    ] 2026-10-28 22:24:58
[2026-10-28 22:24:59,110.110 INFO    ] 2026-10-28 22:24:59
[2026-10-28 22:24:59,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:24:59,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:24:59,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:24:59,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:24:59,826.826 INFO    ] time= 28/10/2026 22:24:59
[2026-10-28 22:24:59,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:24:59,908.908 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:25:00,061.061 INFO    ] No existing commands found in stream
[2026-10-28 22:25:05,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:25:05,091.091 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-28 22:25:07,907.907 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:25:07,910.910 INFO    ] Checking for system updates...
[2026-10-28 22:25:07,947.947 INFO    ] 200
[2026-10-28 22:25:07,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:25:08,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:25:08,007.007 INFO    ] No update needed
[2026-10-28 22:25:08,010.010 INFO    ] Checking for camera pi updates...
[2026-10-28 22:25:08,045.045 INFO    ] 200
[2026-10-28 22:25:08,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:25:08,091.091 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:25:08,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:25:08,176.176 INFO    ] No camera update needed
[2026-10-28 22:25:08,179.179 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:25:08,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:25:08,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:25:08,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:25:10,231.231 INFO    ] ================================================
[2026-10-28 22:25:10,246.246 INFO    ] Launching Daemon at Wed Oct 28 22:25:10 IST 2026
[2026-10-28 22:25:10,257.257 INFO    ] ================================================
[2026-10-28 22:25:10,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:25:10
[2026-10-28 22:25:11,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:25:11,709.709 INFO    ] Initializing speech engine...
[2026-10-28 22:25:11,716.716 INFO    ] 2026-10-28 22:25:11
[2026-10-28 22:25:11,980.980 INFO    ] 2026-10-28 22:25:11
[2026-10-28 22:25:12,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:25:12,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:25:12,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:25:12,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:25:12,620.620 INFO    ] time= 28/10/2026 22:25:12
[2026-10-28 22:25:12,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:25:12,659.659 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:25:12,822.822 INFO    ] No existing commands found in stream
[2026-10-28 22:25:17,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:25:17,855.855 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-10-28 22:25:20,155.155 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:25:20,158.158 INFO    ] Checking for system updates...
[2026-10-28 22:25:20,199.199 INFO    ] 200
[2026-10-28 22:25:20,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:25:20,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:25:20,259.259 INFO    ] No update needed
[2026-10-28 22:25:20,261.261 INFO    ] Checking for camera pi updates...
[2026-10-28 22:25:20,295.295 INFO    ] 200
[2026-10-28 22:25:20,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:25:20,339.339 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:25:20,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:25:20,521.521 INFO    ] No camera update needed
[2026-10-28 22:25:20,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:25:20,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:25:20,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:25:20,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:25:22,574.574 INFO    ] ================================================
[2026-10-28 22:25:22,589.589 INFO    ] Launching Daemon at Wed Oct 28 22:25:22 IST 2026
[2026-10-28 22:25:22,599.599 INFO    ] ================================================
[2026-10-28 22:25:23,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:25:23
[2026-10-28 22:25:23,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:25:23,993.993 INFO    ] Initializing speech engine...
[2026-10-28 22:25:24,014.014 INFO    ] 2026-10-28 22:25:23
[2026-10-28 22:25:24,264.264 INFO    ] 2026-10-28 22:25:24
[2026-10-28 22:25:24,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:25:24,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:25:24,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:25:24,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:25:24,820.820 INFO    ] time= 28/10/2026 22:25:24
[2026-10-28 22:25:24,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:25:24,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:25:24,970.970 INFO    ] No existing commands found in stream
[2026-10-28 22:25:29,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:25:29,986.986 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-28 22:25:32,873.873 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:25:32,876.876 INFO    ] Checking for system updates...
[2026-10-28 22:25:32,918.918 INFO    ] 200
[2026-10-28 22:25:32,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:25:32,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:25:32,982.982 INFO    ] No update needed
[2026-10-28 22:25:32,985.985 INFO    ] Checking for camera pi updates...
[2026-10-28 22:25:33,021.021 INFO    ] 200
[2026-10-28 22:25:33,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:25:33,067.067 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:25:33,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:25:33,164.164 INFO    ] No camera update needed
[2026-10-28 22:25:33,167.167 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:25:33,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:25:33,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:25:33,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:25:35,226.226 INFO    ] ================================================
[2026-10-28 22:25:35,241.241 INFO    ] Launching Daemon at Wed Oct 28 22:25:35 IST 2026
[2026-10-28 22:25:35,252.252 INFO    ] ================================================
[2026-10-28 22:25:35,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:25:35
[2026-10-28 22:25:36,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:25:36,668.668 INFO    ] Initializing speech engine...
[2026-10-28 22:25:36,677.677 INFO    ] 2026-10-28 22:25:36
[2026-10-28 22:25:36,940.940 INFO    ] 2026-10-28 22:25:36
[2026-10-28 22:25:36,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:25:37,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:25:37,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:25:37,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:25:37,521.521 INFO    ] time= 28/10/2026 22:25:37
[2026-10-28 22:25:37,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:25:37,568.568 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:25:37,687.687 INFO    ] No existing commands found in stream
[2026-10-28 22:25:42,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:25:42,711.711 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-28 22:25:46,953.953 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:25:46,955.955 INFO    ] Checking for system updates...
[2026-10-28 22:25:46,991.991 INFO    ] 200
[2026-10-28 22:25:46,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:25:47,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:25:47,048.048 INFO    ] No update needed
[2026-10-28 22:25:47,050.050 INFO    ] Checking for camera pi updates...
[2026-10-28 22:25:47,083.083 INFO    ] 200
[2026-10-28 22:25:47,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:25:47,126.126 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:25:47,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:25:47,212.212 INFO    ] No camera update needed
[2026-10-28 22:25:47,214.214 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:25:47,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:25:47,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:25:47,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:25:49,266.266 INFO    ] ================================================
[2026-10-28 22:25:49,281.281 INFO    ] Launching Daemon at Wed Oct 28 22:25:49 IST 2026
[2026-10-28 22:25:49,292.292 INFO    ] ================================================
[2026-10-28 22:25:49,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:25:49
[2026-10-28 22:25:50,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:25:50,750.750 INFO    ] Initializing speech engine...
[2026-10-28 22:25:50,775.775 INFO    ] 2026-10-28 22:25:50
[2026-10-28 22:25:51,049.049 INFO    ] 2026-10-28 22:25:51
[2026-10-28 22:25:51,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:25:51,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:25:51,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:25:51,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:25:51,578.578 INFO    ] time= 28/10/2026 22:25:51
[2026-10-28 22:25:51,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:25:51,641.641 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:25:51,786.786 INFO    ] No existing commands found in stream
[2026-10-28 22:25:56,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:25:56,805.805 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-28 22:25:58,225.225 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:25:58,228.228 INFO    ] Checking for system updates...
[2026-10-28 22:25:58,263.263 INFO    ] 200
[2026-10-28 22:25:58,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:25:58,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:25:58,326.326 INFO    ] No update needed
[2026-10-28 22:25:58,329.329 INFO    ] Checking for camera pi updates...
[2026-10-28 22:25:58,362.362 INFO    ] 200
[2026-10-28 22:25:58,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:25:58,404.404 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:25:58,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:25:58,490.490 INFO    ] No camera update needed
[2026-10-28 22:25:58,493.493 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:25:58,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:25:58,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:25:58,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:26:00,547.547 INFO    ] ================================================
[2026-10-28 22:26:00,564.564 INFO    ] Launching Daemon at Wed Oct 28 22:26:00 IST 2026
[2026-10-28 22:26:00,575.575 INFO    ] ================================================
[2026-10-28 22:26:01,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:26:01
[2026-10-28 22:26:01,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:26:02,213.213 INFO    ] Initializing speech engine...
[2026-10-28 22:26:02,221.221 INFO    ] 2026-10-28 22:26:02
[2026-10-28 22:26:02,560.560 INFO    ] 2026-10-28 22:26:02
[2026-10-28 22:26:02,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:26:02,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:26:02,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:26:03,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:26:03,132.132 INFO    ] time= 28/10/2026 22:26:03
[2026-10-28 22:26:03,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:26:03,207.207 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:26:03,370.370 INFO    ] No existing commands found in stream
[2026-10-28 22:26:08,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:26:08,396.396 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-28 22:26:11,034.034 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:26:11,037.037 INFO    ] Checking for system updates...
[2026-10-28 22:26:11,073.073 INFO    ] 200
[2026-10-28 22:26:11,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:26:11,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:26:11,132.132 INFO    ] No update needed
[2026-10-28 22:26:11,135.135 INFO    ] Checking for camera pi updates...
[2026-10-28 22:26:11,169.169 INFO    ] 200
[2026-10-28 22:26:11,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:26:11,213.213 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:26:11,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:26:11,274.274 INFO    ] No camera update needed
[2026-10-28 22:26:11,277.277 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:26:11,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:26:11,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:26:11,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:26:13,334.334 INFO    ] ================================================
[2026-10-28 22:26:13,350.350 INFO    ] Launching Daemon at Wed Oct 28 22:26:13 IST 2026
[2026-10-28 22:26:13,360.360 INFO    ] ================================================
[2026-10-28 22:26:13,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:26:13
[2026-10-28 22:26:14,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:26:14,765.765 INFO    ] Initializing speech engine...
[2026-10-28 22:26:14,783.783 INFO    ] 2026-10-28 22:26:14
[2026-10-28 22:26:15,034.034 INFO    ] 2026-10-28 22:26:15
[2026-10-28 22:26:15,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:26:15,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:26:15,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:26:15,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:26:15,627.627 INFO    ] time= 28/10/2026 22:26:15
[2026-10-28 22:26:15,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:26:15,645.645 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:26:15,804.804 INFO    ] No existing commands found in stream
[2026-10-28 22:26:20,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:26:20,828.828 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-10-28 22:26:24,790.790 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:26:24,794.794 INFO    ] Checking for system updates...
[2026-10-28 22:26:24,830.830 INFO    ] 200
[2026-10-28 22:26:24,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:26:24,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:26:24,889.889 INFO    ] No update needed
[2026-10-28 22:26:24,892.892 INFO    ] Checking for camera pi updates...
[2026-10-28 22:26:24,926.926 INFO    ] 200
[2026-10-28 22:26:24,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:26:24,976.976 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:26:25,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:26:25,070.070 INFO    ] No camera update needed
[2026-10-28 22:26:25,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:26:25,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:26:25,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:26:25,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:26:27,128.128 INFO    ] ================================================
[2026-10-28 22:26:27,143.143 INFO    ] Launching Daemon at Wed Oct 28 22:26:27 IST 2026
[2026-10-28 22:26:27,154.154 INFO    ] ================================================
[2026-10-28 22:26:27,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:26:27
[2026-10-28 22:26:28,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:26:28,601.601 INFO    ] Initializing speech engine...
[2026-10-28 22:26:28,611.611 INFO    ] 2026-10-28 22:26:28
[2026-10-28 22:26:28,873.873 INFO    ] 2026-10-28 22:26:28
[2026-10-28 22:26:28,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:26:29,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:26:29,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:26:29,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:26:29,431.431 INFO    ] time= 28/10/2026 22:26:29
[2026-10-28 22:26:29,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:26:29,465.465 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:26:29,583.583 INFO    ] No existing commands found in stream
[2026-10-28 22:26:34,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:26:34,611.611 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-10-28 22:26:38,440.440 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:26:38,443.443 INFO    ] Checking for system updates...
[2026-10-28 22:26:38,483.483 INFO    ] 200
[2026-10-28 22:26:38,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:26:38,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:26:38,540.540 INFO    ] No update needed
[2026-10-28 22:26:38,542.542 INFO    ] Checking for camera pi updates...
[2026-10-28 22:26:38,579.579 INFO    ] 200
[2026-10-28 22:26:38,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:26:38,621.621 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:26:38,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:26:38,712.712 INFO    ] No camera update needed
[2026-10-28 22:26:38,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:26:38,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:26:38,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:26:38,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:26:40,768.768 INFO    ] ================================================
[2026-10-28 22:26:40,783.783 INFO    ] Launching Daemon at Wed Oct 28 22:26:40 IST 2026
[2026-10-28 22:26:40,795.795 INFO    ] ================================================
[2026-10-28 22:26:41,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:26:41
[2026-10-28 22:26:41,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:26:42,285.285 INFO    ] Initializing speech engine...
[2026-10-28 22:26:42,291.291 INFO    ] 2026-10-28 22:26:42
[2026-10-28 22:26:42,570.570 INFO    ] 2026-10-28 22:26:42
[2026-10-28 22:26:42,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:26:42,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:26:42,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:26:43,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:26:43,140.140 INFO    ] time= 28/10/2026 22:26:43
[2026-10-28 22:26:43,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:26:43,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:26:43,319.319 INFO    ] No existing commands found in stream
[2026-10-28 22:26:48,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:26:48,354.354 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 22:26:50,363.363 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:26:50,366.366 INFO    ] Checking for system updates...
[2026-10-28 22:26:50,403.403 INFO    ] 200
[2026-10-28 22:26:50,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:26:50,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:26:50,462.462 INFO    ] No update needed
[2026-10-28 22:26:50,465.465 INFO    ] Checking for camera pi updates...
[2026-10-28 22:26:50,500.500 INFO    ] 200
[2026-10-28 22:26:50,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:26:50,545.545 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:26:50,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:26:50,644.644 INFO    ] No camera update needed
[2026-10-28 22:26:50,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:26:50,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:26:50,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:26:50,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:26:52,702.702 INFO    ] ================================================
[2026-10-28 22:26:52,716.716 INFO    ] Launching Daemon at Wed Oct 28 22:26:52 IST 2026
[2026-10-28 22:26:52,727.727 INFO    ] ================================================
[2026-10-28 22:26:53,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:26:53
[2026-10-28 22:26:53,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:26:54,173.173 INFO    ] Initializing speech engine...
[2026-10-28 22:26:54,186.186 INFO    ] 2026-10-28 22:26:54
[2026-10-28 22:26:54,439.439 INFO    ] 2026-10-28 22:26:54
[2026-10-28 22:26:54,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:26:54,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:26:54,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:26:54,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:26:55,003.003 INFO    ] time= 28/10/2026 22:26:54
[2026-10-28 22:26:55,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:26:55,037.037 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:26:55,150.150 INFO    ] No existing commands found in stream
[2026-10-28 22:27:00,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:27:00,182.182 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-10-28 22:27:02,969.969 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:27:02,972.972 INFO    ] Checking for system updates...
[2026-10-28 22:27:03,011.011 INFO    ] 200
[2026-10-28 22:27:03,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:27:03,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:27:03,073.073 INFO    ] No update needed
[2026-10-28 22:27:03,075.075 INFO    ] Checking for camera pi updates...
[2026-10-28 22:27:03,114.114 INFO    ] 200
[2026-10-28 22:27:03,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:27:03,168.168 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:27:03,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:27:03,258.258 INFO    ] No camera update needed
[2026-10-28 22:27:03,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:27:03,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:27:03,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:27:03,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:27:05,325.325 INFO    ] ================================================
[2026-10-28 22:27:05,340.340 INFO    ] Launching Daemon at Wed Oct 28 22:27:05 IST 2026
[2026-10-28 22:27:05,351.351 INFO    ] ================================================
[2026-10-28 22:27:05,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:27:05
[2026-10-28 22:27:06,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:27:06,792.792 INFO    ] Initializing speech engine...
[2026-10-28 22:27:06,798.798 INFO    ] 2026-10-28 22:27:06
[2026-10-28 22:27:07,092.092 INFO    ] 2026-10-28 22:27:07
[2026-10-28 22:27:07,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:27:07,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:27:07,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:27:07,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:27:07,646.646 INFO    ] time= 28/10/2026 22:27:07
[2026-10-28 22:27:07,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:27:07,672.672 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:27:07,794.794 INFO    ] No existing commands found in stream
[2026-10-28 22:27:12,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:27:12,812.812 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-28 22:27:14,560.560 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:27:14,563.563 INFO    ] Checking for system updates...
[2026-10-28 22:27:14,599.599 INFO    ] 200
[2026-10-28 22:27:14,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:27:14,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:27:14,661.661 INFO    ] No update needed
[2026-10-28 22:27:14,664.664 INFO    ] Checking for camera pi updates...
[2026-10-28 22:27:14,697.697 INFO    ] 200
[2026-10-28 22:27:14,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:27:14,740.740 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:27:14,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:27:14,823.823 INFO    ] No camera update needed
[2026-10-28 22:27:14,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:27:14,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:27:14,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:27:14,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:27:16,877.877 INFO    ] ================================================
[2026-10-28 22:27:16,892.892 INFO    ] Launching Daemon at Wed Oct 28 22:27:16 IST 2026
[2026-10-28 22:27:16,902.902 INFO    ] ================================================
[2026-10-28 22:27:17,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:27:17
[2026-10-28 22:27:18,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:27:18,316.316 INFO    ] Initializing speech engine...
[2026-10-28 22:27:18,332.332 INFO    ] 2026-10-28 22:27:18
[2026-10-28 22:27:18,599.599 INFO    ] 2026-10-28 22:27:18
[2026-10-28 22:27:18,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:27:18,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:27:18,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:27:19,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:27:19,138.138 INFO    ] time= 28/10/2026 22:27:19
[2026-10-28 22:27:19,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:27:19,229.229 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:27:19,359.359 INFO    ] No existing commands found in stream
[2026-10-28 22:27:24,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:27:24,379.379 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-10-28 22:27:28,483.483 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:27:28,486.486 INFO    ] Checking for system updates...
[2026-10-28 22:27:28,521.521 INFO    ] 200
[2026-10-28 22:27:28,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:27:28,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:27:28,578.578 INFO    ] No update needed
[2026-10-28 22:27:28,580.580 INFO    ] Checking for camera pi updates...
[2026-10-28 22:27:28,613.613 INFO    ] 200
[2026-10-28 22:27:28,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:27:28,655.655 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:27:28,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:27:28,834.834 INFO    ] No camera update needed
[2026-10-28 22:27:28,837.837 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:27:28,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:27:28,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:27:28,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:27:30,888.888 INFO    ] ================================================
[2026-10-28 22:27:30,903.903 INFO    ] Launching Daemon at Wed Oct 28 22:27:30 IST 2026
[2026-10-28 22:27:30,914.914 INFO    ] ================================================
[2026-10-28 22:27:31,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:27:31
[2026-10-28 22:27:32,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:27:32,395.395 INFO    ] Initializing speech engine...
[2026-10-28 22:27:32,404.404 INFO    ] 2026-10-28 22:27:32
[2026-10-28 22:27:32,682.682 INFO    ] 2026-10-28 22:27:32
[2026-10-28 22:27:32,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:27:33,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:27:33,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:27:33,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:27:33,256.256 INFO    ] time= 28/10/2026 22:27:33
[2026-10-28 22:27:33,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:27:33,296.296 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:27:33,453.453 INFO    ] No existing commands found in stream
[2026-10-28 22:27:38,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:27:38,482.482 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-28 22:27:41,245.245 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:27:41,248.248 INFO    ] Checking for system updates...
[2026-10-28 22:27:41,283.283 INFO    ] 200
[2026-10-28 22:27:41,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:27:41,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:27:41,340.340 INFO    ] No update needed
[2026-10-28 22:27:41,342.342 INFO    ] Checking for camera pi updates...
[2026-10-28 22:27:41,375.375 INFO    ] 200
[2026-10-28 22:27:41,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:27:41,418.418 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:27:41,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:27:41,487.487 INFO    ] No camera update needed
[2026-10-28 22:27:41,490.490 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:27:41,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:27:41,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:27:41,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:27:43,544.544 INFO    ] ================================================
[2026-10-28 22:27:43,558.558 INFO    ] Launching Daemon at Wed Oct 28 22:27:43 IST 2026
[2026-10-28 22:27:43,569.569 INFO    ] ================================================
[2026-10-28 22:27:44,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:27:44
[2026-10-28 22:27:44,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:27:45,164.164 INFO    ] Initializing speech engine...
[2026-10-28 22:27:45,171.171 INFO    ] 2026-10-28 22:27:45
[2026-10-28 22:27:45,444.444 INFO    ] 2026-10-28 22:27:45
[2026-10-28 22:27:45,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:27:45,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:27:45,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:27:46,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:27:46,054.054 INFO    ] time= 28/10/2026 22:27:46
[2026-10-28 22:27:46,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:27:46,108.108 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:27:46,245.245 INFO    ] No existing commands found in stream
[2026-10-28 22:27:51,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:27:51,274.274 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 22:27:53,626.626 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:27:53,629.629 INFO    ] Checking for system updates...
[2026-10-28 22:27:53,669.669 INFO    ] 200
[2026-10-28 22:27:53,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:27:53,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:27:53,732.732 INFO    ] No update needed
[2026-10-28 22:27:53,735.735 INFO    ] Checking for camera pi updates...
[2026-10-28 22:27:53,773.773 INFO    ] 200
[2026-10-28 22:27:53,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:27:53,821.821 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:27:53,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:27:53,905.905 INFO    ] No camera update needed
[2026-10-28 22:27:53,908.908 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:27:53,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:27:53,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:27:53,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:27:55,962.962 INFO    ] ================================================
[2026-10-28 22:27:55,978.978 INFO    ] Launching Daemon at Wed Oct 28 22:27:55 IST 2026
[2026-10-28 22:27:55,988.988 INFO    ] ================================================
[2026-10-28 22:27:56,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:27:56
[2026-10-28 22:27:57,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:27:57,588.588 INFO    ] Initializing speech engine...
[2026-10-28 22:27:57,597.597 INFO    ] 2026-10-28 22:27:57
[2026-10-28 22:27:57,874.874 INFO    ] 2026-10-28 22:27:57
[2026-10-28 22:27:57,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:27:58,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:27:58,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:27:58,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:27:58,433.433 INFO    ] time= 28/10/2026 22:27:58
[2026-10-28 22:27:58,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:27:58,482.482 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:27:58,610.610 INFO    ] No existing commands found in stream
[2026-10-28 22:28:03,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:28:03,640.640 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-28 22:28:08,066.066 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:28:08,069.069 INFO    ] Checking for system updates...
[2026-10-28 22:28:08,106.106 INFO    ] 200
[2026-10-28 22:28:08,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:28:08,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:28:08,164.164 INFO    ] No update needed
[2026-10-28 22:28:08,166.166 INFO    ] Checking for camera pi updates...
[2026-10-28 22:28:08,200.200 INFO    ] 200
[2026-10-28 22:28:08,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:28:08,247.247 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:28:08,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:28:08,333.333 INFO    ] No camera update needed
[2026-10-28 22:28:08,335.335 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:28:08,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:28:08,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:28:08,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:28:10,387.387 INFO    ] ================================================
[2026-10-28 22:28:10,401.401 INFO    ] Launching Daemon at Wed Oct 28 22:28:10 IST 2026
[2026-10-28 22:28:10,412.412 INFO    ] ================================================
[2026-10-28 22:28:10,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:28:10
[2026-10-28 22:28:11,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:28:11,821.821 INFO    ] Initializing speech engine...
[2026-10-28 22:28:11,840.840 INFO    ] 2026-10-28 22:28:11
[2026-10-28 22:28:12,091.091 INFO    ] 2026-10-28 22:28:12
[2026-10-28 22:28:12,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:28:12,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:28:12,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:28:12,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:28:12,603.603 INFO    ] time= 28/10/2026 22:28:12
[2026-10-28 22:28:12,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:28:12,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:28:12,813.813 INFO    ] No existing commands found in stream
[2026-10-28 22:28:17,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:28:17,830.830 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-10-28 22:28:20,788.788 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:28:20,791.791 INFO    ] Checking for system updates...
[2026-10-28 22:28:20,826.826 INFO    ] 200
[2026-10-28 22:28:20,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:28:20,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:28:20,883.883 INFO    ] No update needed
[2026-10-28 22:28:20,885.885 INFO    ] Checking for camera pi updates...
[2026-10-28 22:28:20,919.919 INFO    ] 200
[2026-10-28 22:28:20,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:28:20,964.964 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:28:21,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:28:21,050.050 INFO    ] No camera update needed
[2026-10-28 22:28:21,052.052 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:28:21,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:28:21,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:28:21,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:28:23,108.108 INFO    ] ================================================
[2026-10-28 22:28:23,123.123 INFO    ] Launching Daemon at Wed Oct 28 22:28:23 IST 2026
[2026-10-28 22:28:23,134.134 INFO    ] ================================================
[2026-10-28 22:28:23,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:28:23
[2026-10-28 22:28:24,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:28:24,629.629 INFO    ] Initializing speech engine...
[2026-10-28 22:28:24,644.644 INFO    ] 2026-10-28 22:28:24
[2026-10-28 22:28:24,964.964 INFO    ] 2026-10-28 22:28:24
[2026-10-28 22:28:25,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:28:25,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:28:25,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:28:25,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:28:25,522.522 INFO    ] time= 28/10/2026 22:28:25
[2026-10-28 22:28:25,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:28:25,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:28:25,725.725 INFO    ] No existing commands found in stream
[2026-10-28 22:28:30,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:28:30,752.752 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-28 22:28:33,768.768 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:28:33,770.770 INFO    ] Checking for system updates...
[2026-10-28 22:28:33,806.806 INFO    ] 200
[2026-10-28 22:28:33,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:28:33,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:28:33,864.864 INFO    ] No update needed
[2026-10-28 22:28:33,866.866 INFO    ] Checking for camera pi updates...
[2026-10-28 22:28:33,899.899 INFO    ] 200
[2026-10-28 22:28:33,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:28:33,942.942 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:28:34,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:28:34,027.027 INFO    ] No camera update needed
[2026-10-28 22:28:34,030.030 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:28:34,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:28:34,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:28:34,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:28:36,081.081 INFO    ] ================================================
[2026-10-28 22:28:36,096.096 INFO    ] Launching Daemon at Wed Oct 28 22:28:36 IST 2026
[2026-10-28 22:28:36,106.106 INFO    ] ================================================
[2026-10-28 22:28:36,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:28:36
[2026-10-28 22:28:37,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:28:37,559.559 INFO    ] Initializing speech engine...
[2026-10-28 22:28:37,567.567 INFO    ] 2026-10-28 22:28:37
[2026-10-28 22:28:37,818.818 INFO    ] 2026-10-28 22:28:37
[2026-10-28 22:28:37,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:28:38,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:28:38,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:28:38,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:28:38,535.535 INFO    ] time= 28/10/2026 22:28:38
[2026-10-28 22:28:38,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:28:38,626.626 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:28:38,764.764 INFO    ] No existing commands found in stream
[2026-10-28 22:28:43,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:28:43,787.787 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-28 22:28:46,242.242 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:28:46,245.245 INFO    ] Checking for system updates...
[2026-10-28 22:28:46,281.281 INFO    ] 200
[2026-10-28 22:28:46,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:28:46,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:28:46,338.338 INFO    ] No update needed
[2026-10-28 22:28:46,341.341 INFO    ] Checking for camera pi updates...
[2026-10-28 22:28:46,375.375 INFO    ] 200
[2026-10-28 22:28:46,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:28:46,421.421 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:28:46,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:28:46,504.504 INFO    ] No camera update needed
[2026-10-28 22:28:46,507.507 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:28:46,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:28:46,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:28:46,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:28:48,562.562 INFO    ] ================================================
[2026-10-28 22:28:48,577.577 INFO    ] Launching Daemon at Wed Oct 28 22:28:48 IST 2026
[2026-10-28 22:28:48,587.587 INFO    ] ================================================
[2026-10-28 22:28:49,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:28:49
[2026-10-28 22:28:49,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:28:50,205.205 INFO    ] Initializing speech engine...
[2026-10-28 22:28:50,212.212 INFO    ] 2026-10-28 22:28:50
[2026-10-28 22:28:50,461.461 INFO    ] 2026-10-28 22:28:50
[2026-10-28 22:28:50,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:28:50,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:28:50,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:28:51,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:28:51,011.011 INFO    ] time= 28/10/2026 22:28:51
[2026-10-28 22:28:51,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:28:51,058.058 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:28:51,185.185 INFO    ] No existing commands found in stream
[2026-10-28 22:28:56,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:28:56,208.208 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 22:28:57,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:28:57,251.251 INFO    ] Checking for system updates...
[2026-10-28 22:28:57,287.287 INFO    ] 200
[2026-10-28 22:28:57,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:28:57,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:28:57,344.344 INFO    ] No update needed
[2026-10-28 22:28:57,347.347 INFO    ] Checking for camera pi updates...
[2026-10-28 22:28:57,381.381 INFO    ] 200
[2026-10-28 22:28:57,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:28:57,429.429 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:28:57,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:28:57,516.516 INFO    ] No camera update needed
[2026-10-28 22:28:57,518.518 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:28:57,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:28:57,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:28:57,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:28:59,570.570 INFO    ] ================================================
[2026-10-28 22:28:59,584.584 INFO    ] Launching Daemon at Wed Oct 28 22:28:59 IST 2026
[2026-10-28 22:28:59,595.595 INFO    ] ================================================
[2026-10-28 22:29:00,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:29:00
[2026-10-28 22:29:00,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:29:01,036.036 INFO    ] Initializing speech engine...
[2026-10-28 22:29:01,045.045 INFO    ] 2026-10-28 22:29:01
[2026-10-28 22:29:01,294.294 INFO    ] 2026-10-28 22:29:01
[2026-10-28 22:29:01,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:29:01,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:29:01,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:29:01,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:29:01,825.825 INFO    ] time= 28/10/2026 22:29:01
[2026-10-28 22:29:01,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:29:01,832.832 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:29:01,982.982 INFO    ] No existing commands found in stream
[2026-10-28 22:29:06,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:29:06,995.995 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-10-28 22:29:09,146.146 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:29:09,149.149 INFO    ] Checking for system updates...
[2026-10-28 22:29:09,185.185 INFO    ] 200
[2026-10-28 22:29:09,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:29:09,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:29:09,241.241 INFO    ] No update needed
[2026-10-28 22:29:09,244.244 INFO    ] Checking for camera pi updates...
[2026-10-28 22:29:09,276.276 INFO    ] 200
[2026-10-28 22:29:09,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:29:09,318.318 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:29:09,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:29:09,410.410 INFO    ] No camera update needed
[2026-10-28 22:29:09,412.412 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:29:09,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:29:09,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:29:09,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:29:11,464.464 INFO    ] ================================================
[2026-10-28 22:29:11,479.479 INFO    ] Launching Daemon at Wed Oct 28 22:29:11 IST 2026
[2026-10-28 22:29:11,489.489 INFO    ] ================================================
[2026-10-28 22:29:12,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:29:12
[2026-10-28 22:29:12,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:29:13,075.075 INFO    ] Initializing speech engine...
[2026-10-28 22:29:13,085.085 INFO    ] 2026-10-28 22:29:13
[2026-10-28 22:29:13,347.347 INFO    ] 2026-10-28 22:29:13
[2026-10-28 22:29:13,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:29:13,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:29:13,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:29:14,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:29:14,142.142 INFO    ] time= 28/10/2026 22:29:14
[2026-10-28 22:29:14,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:29:14,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:29:14,420.420 INFO    ] No existing commands found in stream
[2026-10-28 22:29:19,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:29:19,449.449 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 22:29:23,769.769 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:29:23,772.772 INFO    ] Checking for system updates...
[2026-10-28 22:29:23,807.807 INFO    ] 200
[2026-10-28 22:29:23,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:29:23,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:29:23,871.871 INFO    ] No update needed
[2026-10-28 22:29:23,873.873 INFO    ] Checking for camera pi updates...
[2026-10-28 22:29:23,906.906 INFO    ] 200
[2026-10-28 22:29:23,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:29:23,952.952 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:29:24,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:29:24,033.033 INFO    ] No camera update needed
[2026-10-28 22:29:24,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:29:24,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:29:24,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:29:24,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:29:26,086.086 INFO    ] ================================================
[2026-10-28 22:29:26,101.101 INFO    ] Launching Daemon at Wed Oct 28 22:29:26 IST 2026
[2026-10-28 22:29:26,111.111 INFO    ] ================================================
[2026-10-28 22:29:26,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:29:26
[2026-10-28 22:29:27,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:29:27,532.532 INFO    ] Initializing speech engine...
[2026-10-28 22:29:27,541.541 INFO    ] 2026-10-28 22:29:27
[2026-10-28 22:29:27,799.799 INFO    ] 2026-10-28 22:29:27
[2026-10-28 22:29:27,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:29:28,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:29:28,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:29:28,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:29:28,342.342 INFO    ] time= 28/10/2026 22:29:28
[2026-10-28 22:29:28,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:29:28,365.365 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:29:28,490.490 INFO    ] No existing commands found in stream
[2026-10-28 22:29:33,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:29:33,506.506 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-28 22:29:37,226.226 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:29:37,229.229 INFO    ] Checking for system updates...
[2026-10-28 22:29:37,267.267 INFO    ] 200
[2026-10-28 22:29:37,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:29:37,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:29:37,326.326 INFO    ] No update needed
[2026-10-28 22:29:37,328.328 INFO    ] Checking for camera pi updates...
[2026-10-28 22:29:37,364.364 INFO    ] 200
[2026-10-28 22:29:37,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:29:37,407.407 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:29:37,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:29:37,491.491 INFO    ] No camera update needed
[2026-10-28 22:29:37,494.494 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:29:37,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:29:37,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:29:37,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:29:39,549.549 INFO    ] ================================================
[2026-10-28 22:29:39,565.565 INFO    ] Launching Daemon at Wed Oct 28 22:29:39 IST 2026
[2026-10-28 22:29:39,576.576 INFO    ] ================================================
[2026-10-28 22:29:40,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:29:40
[2026-10-28 22:29:40,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:29:41,024.024 INFO    ] Initializing speech engine...
[2026-10-28 22:29:41,034.034 INFO    ] 2026-10-28 22:29:41
[2026-10-28 22:29:41,290.290 INFO    ] 2026-10-28 22:29:41
[2026-10-28 22:29:41,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:29:41,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:29:41,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:29:41,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:29:41,890.890 INFO    ] time= 28/10/2026 22:29:41
[2026-10-28 22:29:41,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:29:41,958.958 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:29:42,092.092 INFO    ] No existing commands found in stream
[2026-10-28 22:29:47,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:29:47,119.119 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-10-28 22:29:50,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:29:50,573.573 INFO    ] Checking for system updates...
[2026-10-28 22:29:50,613.613 INFO    ] 200
[2026-10-28 22:29:50,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:29:50,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:29:50,671.671 INFO    ] No update needed
[2026-10-28 22:29:50,676.676 INFO    ] Checking for camera pi updates...
[2026-10-28 22:29:50,711.711 INFO    ] 200
[2026-10-28 22:29:50,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:29:50,755.755 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:29:50,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:29:50,839.839 INFO    ] No camera update needed
[2026-10-28 22:29:50,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:29:50,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:29:50,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:29:50,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:29:52,894.894 INFO    ] ================================================
[2026-10-28 22:29:52,909.909 INFO    ] Launching Daemon at Wed Oct 28 22:29:52 IST 2026
[2026-10-28 22:29:52,919.919 INFO    ] ================================================
[2026-10-28 22:29:53,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:29:53
[2026-10-28 22:29:54,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:29:54,316.316 INFO    ] Initializing speech engine...
[2026-10-28 22:29:54,329.329 INFO    ] 2026-10-28 22:29:54
[2026-10-28 22:29:54,593.593 INFO    ] 2026-10-28 22:29:54
[2026-10-28 22:29:54,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:29:54,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:29:54,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:29:55,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:29:55,161.161 INFO    ] time= 28/10/2026 22:29:55
[2026-10-28 22:29:55,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:29:55,185.185 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:29:55,314.314 INFO    ] No existing commands found in stream
[2026-10-28 22:30:00,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:30:00,330.330 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-28 22:30:08,622.622 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:30:08,625.625 INFO    ] Checking for system updates...
[2026-10-28 22:30:08,665.665 INFO    ] 200
[2026-10-28 22:30:08,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:30:08,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:30:08,728.728 INFO    ] No update needed
[2026-10-28 22:30:08,731.731 INFO    ] Checking for camera pi updates...
[2026-10-28 22:30:08,769.769 INFO    ] 200
[2026-10-28 22:30:08,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:30:08,812.812 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:30:08,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:30:08,866.866 INFO    ] No camera update needed
[2026-10-28 22:30:08,868.868 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:30:08,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:30:08,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:30:08,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:30:10,925.925 INFO    ] ================================================
[2026-10-28 22:30:10,940.940 INFO    ] Launching Daemon at Wed Oct 28 22:30:10 IST 2026
[2026-10-28 22:30:10,951.951 INFO    ] ================================================
[2026-10-28 22:30:11,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:30:11
[2026-10-28 22:30:12,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:30:12,454.454 INFO    ] Initializing speech engine...
[2026-10-28 22:30:12,461.461 INFO    ] 2026-10-28 22:30:12
[2026-10-28 22:30:12,709.709 INFO    ] 2026-10-28 22:30:12
[2026-10-28 22:30:12,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:30:13,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:30:13,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:30:13,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:30:13,277.277 INFO    ] time= 28/10/2026 22:30:13
[2026-10-28 22:30:13,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:30:13,301.301 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:30:13,432.432 INFO    ] No existing commands found in stream
[2026-10-28 22:30:18,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:30:18,450.450 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 22:30:22,645.645 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:30:22,648.648 INFO    ] Checking for system updates...
[2026-10-28 22:30:22,683.683 INFO    ] 200
[2026-10-28 22:30:22,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:30:22,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:30:22,747.747 INFO    ] No update needed
[2026-10-28 22:30:22,749.749 INFO    ] Checking for camera pi updates...
[2026-10-28 22:30:22,787.787 INFO    ] 200
[2026-10-28 22:30:22,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:30:22,832.832 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:30:22,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:30:22,917.917 INFO    ] No camera update needed
[2026-10-28 22:30:22,920.920 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:30:22,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:30:22,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:30:22,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:30:24,974.974 INFO    ] ================================================
[2026-10-28 22:30:24,990.990 INFO    ] Launching Daemon at Wed Oct 28 22:30:24 IST 2026
[2026-10-28 22:30:25,002.002 INFO    ] ================================================
[2026-10-28 22:30:25,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:30:25
[2026-10-28 22:30:26,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:30:26,645.645 INFO    ] Initializing speech engine...
[2026-10-28 22:30:26,656.656 INFO    ] 2026-10-28 22:30:26
[2026-10-28 22:30:26,912.912 INFO    ] 2026-10-28 22:30:26
[2026-10-28 22:30:26,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:30:27,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:30:27,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:30:27,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:30:27,479.479 INFO    ] time= 28/10/2026 22:30:27
[2026-10-28 22:30:27,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:30:27,529.529 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:30:27,618.618 INFO    ] No existing commands found in stream
[2026-10-28 22:30:32,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:30:32,629.629 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-10-28 22:30:34,345.345 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:30:34,348.348 INFO    ] Checking for system updates...
[2026-10-28 22:30:34,389.389 INFO    ] 200
[2026-10-28 22:30:34,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:30:34,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:30:34,450.450 INFO    ] No update needed
[2026-10-28 22:30:34,453.453 INFO    ] Checking for camera pi updates...
[2026-10-28 22:30:34,490.490 INFO    ] 200
[2026-10-28 22:30:34,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:30:34,533.533 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:30:34,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:30:34,619.619 INFO    ] No camera update needed
[2026-10-28 22:30:34,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:30:34,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:30:34,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:30:34,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:30:36,675.675 INFO    ] ================================================
[2026-10-28 22:30:36,690.690 INFO    ] Launching Daemon at Wed Oct 28 22:30:36 IST 2026
[2026-10-28 22:30:36,702.702 INFO    ] ================================================
[2026-10-28 22:30:37,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:30:37
[2026-10-28 22:30:37,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:30:38,119.119 INFO    ] Initializing speech engine...
[2026-10-28 22:30:38,138.138 INFO    ] 2026-10-28 22:30:38
[2026-10-28 22:30:38,388.388 INFO    ] 2026-10-28 22:30:38
[2026-10-28 22:30:38,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:30:38,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:30:38,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:30:38,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:30:38,954.954 INFO    ] time= 28/10/2026 22:30:38
[2026-10-28 22:30:38,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:30:38,981.981 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:30:39,112.112 INFO    ] No existing commands found in stream
[2026-10-28 22:30:44,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:30:44,130.130 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 22:30:48,444.444 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:30:48,447.447 INFO    ] Checking for system updates...
[2026-10-28 22:30:48,483.483 INFO    ] 200
[2026-10-28 22:30:48,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:30:48,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:30:48,548.548 INFO    ] No update needed
[2026-10-28 22:30:48,550.550 INFO    ] Checking for camera pi updates...
[2026-10-28 22:30:48,587.587 INFO    ] 200
[2026-10-28 22:30:48,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:30:48,635.635 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:30:48,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:30:48,722.722 INFO    ] No camera update needed
[2026-10-28 22:30:48,724.724 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:30:48,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:30:48,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:30:48,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:30:50,777.777 INFO    ] ================================================
[2026-10-28 22:30:50,792.792 INFO    ] Launching Daemon at Wed Oct 28 22:30:50 IST 2026
[2026-10-28 22:30:50,804.804 INFO    ] ================================================
[2026-10-28 22:30:51,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:30:51
[2026-10-28 22:30:52,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:30:52,443.443 INFO    ] Initializing speech engine...
[2026-10-28 22:30:52,452.452 INFO    ] 2026-10-28 22:30:52
[2026-10-28 22:30:52,732.732 INFO    ] 2026-10-28 22:30:52
[2026-10-28 22:30:52,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:30:53,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:30:53,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:30:53,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:30:53,306.306 INFO    ] time= 28/10/2026 22:30:53
[2026-10-28 22:30:53,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:30:53,344.344 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:30:53,473.473 INFO    ] No existing commands found in stream
[2026-10-28 22:30:58,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:30:58,501.501 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-28 22:31:00,478.478 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:31:00,481.481 INFO    ] Checking for system updates...
[2026-10-28 22:31:00,524.524 INFO    ] 200
[2026-10-28 22:31:00,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:31:00,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:31:00,587.587 INFO    ] No update needed
[2026-10-28 22:31:00,589.589 INFO    ] Checking for camera pi updates...
[2026-10-28 22:31:00,624.624 INFO    ] 200
[2026-10-28 22:31:00,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:31:00,672.672 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:31:00,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:31:00,757.757 INFO    ] No camera update needed
[2026-10-28 22:31:00,760.760 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:31:00,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:31:00,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:31:00,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:31:02,826.826 INFO    ] ================================================
[2026-10-28 22:31:02,850.850 INFO    ] Launching Daemon at Wed Oct 28 22:31:02 IST 2026
[2026-10-28 22:31:02,869.869 INFO    ] ================================================
[2026-10-28 22:31:03,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:31:03
[2026-10-28 22:31:04,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:31:04,478.478 INFO    ] Initializing speech engine...
[2026-10-28 22:31:04,486.486 INFO    ] 2026-10-28 22:31:04
[2026-10-28 22:31:04,754.754 INFO    ] 2026-10-28 22:31:04
[2026-10-28 22:31:04,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:31:05,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:31:05,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:31:05,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:31:05,322.322 INFO    ] time= 28/10/2026 22:31:05
[2026-10-28 22:31:05,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:31:05,369.369 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:31:05,490.490 INFO    ] No existing commands found in stream
[2026-10-28 22:31:10,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:31:10,525.525 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-28 22:31:14,386.386 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:31:14,389.389 INFO    ] Checking for system updates...
[2026-10-28 22:31:14,425.425 INFO    ] 200
[2026-10-28 22:31:14,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:31:14,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:31:14,488.488 INFO    ] No update needed
[2026-10-28 22:31:14,491.491 INFO    ] Checking for camera pi updates...
[2026-10-28 22:31:14,526.526 INFO    ] 200
[2026-10-28 22:31:14,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:31:14,571.571 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:31:14,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:31:14,650.650 INFO    ] No camera update needed
[2026-10-28 22:31:14,653.653 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:31:14,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:31:14,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:31:14,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:31:16,707.707 INFO    ] ================================================
[2026-10-28 22:31:16,721.721 INFO    ] Launching Daemon at Wed Oct 28 22:31:16 IST 2026
[2026-10-28 22:31:16,732.732 INFO    ] ================================================
[2026-10-28 22:31:17,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:31:17
[2026-10-28 22:31:17,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:31:18,284.284 INFO    ] Initializing speech engine...
[2026-10-28 22:31:18,291.291 INFO    ] 2026-10-28 22:31:18
[2026-10-28 22:31:18,559.559 INFO    ] 2026-10-28 22:31:18
[2026-10-28 22:31:18,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:31:18,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:31:18,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:31:19,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:31:19,080.080 INFO    ] time= 28/10/2026 22:31:19
[2026-10-28 22:31:19,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:31:19,167.167 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:31:19,294.294 INFO    ] No existing commands found in stream
[2026-10-28 22:31:24,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:31:24,327.327 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-28 22:31:26,571.571 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:31:26,574.574 INFO    ] Checking for system updates...
[2026-10-28 22:31:26,613.613 INFO    ] 200
[2026-10-28 22:31:26,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:31:26,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:31:26,678.678 INFO    ] No update needed
[2026-10-28 22:31:26,680.680 INFO    ] Checking for camera pi updates...
[2026-10-28 22:31:26,718.718 INFO    ] 200
[2026-10-28 22:31:26,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:31:26,763.763 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:31:26,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:31:26,851.851 INFO    ] No camera update needed
[2026-10-28 22:31:26,856.856 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:31:26,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:31:26,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:31:26,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:31:28,915.915 INFO    ] ================================================
[2026-10-28 22:31:28,932.932 INFO    ] Launching Daemon at Wed Oct 28 22:31:28 IST 2026
[2026-10-28 22:31:28,944.944 INFO    ] ================================================
[2026-10-28 22:31:29,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:31:29
[2026-10-28 22:31:30,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:31:30,436.436 INFO    ] Initializing speech engine...
[2026-10-28 22:31:30,445.445 INFO    ] 2026-10-28 22:31:30
[2026-10-28 22:31:30,717.717 INFO    ] 2026-10-28 22:31:30
[2026-10-28 22:31:30,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:31:31,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:31:31,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:31:31,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:31:31,292.292 INFO    ] time= 28/10/2026 22:31:31
[2026-10-28 22:31:31,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:31:31,316.316 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:31:31,443.443 INFO    ] No existing commands found in stream
[2026-10-28 22:31:36,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:31:36,461.461 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-10-28 22:31:39,721.721 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:31:39,724.724 INFO    ] Checking for system updates...
[2026-10-28 22:31:39,762.762 INFO    ] 200
[2026-10-28 22:31:39,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:31:39,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:31:39,821.821 INFO    ] No update needed
[2026-10-28 22:31:39,824.824 INFO    ] Checking for camera pi updates...
[2026-10-28 22:31:39,861.861 INFO    ] 200
[2026-10-28 22:31:39,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:31:39,904.904 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:31:40,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:31:40,091.091 INFO    ] No camera update needed
[2026-10-28 22:31:40,093.093 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:31:40,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:31:40,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:31:40,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:31:42,146.146 INFO    ] ================================================
[2026-10-28 22:31:42,164.164 INFO    ] Launching Daemon at Wed Oct 28 22:31:42 IST 2026
[2026-10-28 22:31:42,177.177 INFO    ] ================================================
[2026-10-28 22:31:42,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:31:42
[2026-10-28 22:31:43,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:31:43,839.839 INFO    ] Initializing speech engine...
[2026-10-28 22:31:43,852.852 INFO    ] 2026-10-28 22:31:43
[2026-10-28 22:31:44,138.138 INFO    ] 2026-10-28 22:31:44
[2026-10-28 22:31:44,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:31:44,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:31:44,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:31:44,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:31:44,692.692 INFO    ] time= 28/10/2026 22:31:44
[2026-10-28 22:31:44,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:31:44,722.722 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:31:44,888.888 INFO    ] No existing commands found in stream
[2026-10-28 22:31:49,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:31:49,923.923 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-10-28 22:31:52,227.227 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:31:52,230.230 INFO    ] Checking for system updates...
[2026-10-28 22:31:52,267.267 INFO    ] 200
[2026-10-28 22:31:52,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:31:52,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:31:52,335.335 INFO    ] No update needed
[2026-10-28 22:31:52,338.338 INFO    ] Checking for camera pi updates...
[2026-10-28 22:31:52,374.374 INFO    ] 200
[2026-10-28 22:31:52,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:31:52,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:31:52,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:31:52,516.516 INFO    ] No camera update needed
[2026-10-28 22:31:52,519.519 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:31:52,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:31:52,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:31:52,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:31:54,575.575 INFO    ] ================================================
[2026-10-28 22:31:54,590.590 INFO    ] Launching Daemon at Wed Oct 28 22:31:54 IST 2026
[2026-10-28 22:31:54,602.602 INFO    ] ================================================
[2026-10-28 22:31:55,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:31:55
[2026-10-28 22:31:55,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:31:56,056.056 INFO    ] Initializing speech engine...
[2026-10-28 22:31:56,062.062 INFO    ] 2026-10-28 22:31:56
[2026-10-28 22:31:56,360.360 INFO    ] 2026-10-28 22:31:56
[2026-10-28 22:31:56,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:31:56,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:31:56,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:31:56,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:31:57,006.006 INFO    ] time= 28/10/2026 22:31:56
[2026-10-28 22:31:57,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:31:57,029.029 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:31:57,180.180 INFO    ] No existing commands found in stream
[2026-10-28 22:32:02,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:32:02,197.197 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-28 22:32:05,771.771 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:32:05,774.774 INFO    ] Checking for system updates...
[2026-10-28 22:32:05,810.810 INFO    ] 200
[2026-10-28 22:32:05,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:32:05,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:32:05,876.876 INFO    ] No update needed
[2026-10-28 22:32:05,879.879 INFO    ] Checking for camera pi updates...
[2026-10-28 22:32:05,916.916 INFO    ] 200
[2026-10-28 22:32:05,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:32:05,963.963 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:32:06,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:32:06,047.047 INFO    ] No camera update needed
[2026-10-28 22:32:06,050.050 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:32:06,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:32:06,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:32:06,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:32:08,102.102 INFO    ] ================================================
[2026-10-28 22:32:08,117.117 INFO    ] Launching Daemon at Wed Oct 28 22:32:08 IST 2026
[2026-10-28 22:32:08,128.128 INFO    ] ================================================
[2026-10-28 22:32:08,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:32:08
[2026-10-28 22:32:09,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:32:09,791.791 INFO    ] Initializing speech engine...
[2026-10-28 22:32:09,802.802 INFO    ] 2026-10-28 22:32:09
[2026-10-28 22:32:10,116.116 INFO    ] 2026-10-28 22:32:10
[2026-10-28 22:32:10,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:32:10,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:32:10,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:32:10,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:32:10,637.637 INFO    ] time= 28/10/2026 22:32:10
[2026-10-28 22:32:10,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:32:10,678.678 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:32:10,804.804 INFO    ] No existing commands found in stream
[2026-10-28 22:32:15,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:32:15,839.839 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-28 22:32:18,984.984 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:32:18,987.987 INFO    ] Checking for system updates...
[2026-10-28 22:32:19,022.022 INFO    ] 200
[2026-10-28 22:32:19,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:32:19,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:32:19,087.087 INFO    ] No update needed
[2026-10-28 22:32:19,089.089 INFO    ] Checking for camera pi updates...
[2026-10-28 22:32:19,122.122 INFO    ] 200
[2026-10-28 22:32:19,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:32:19,167.167 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:32:19,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:32:19,251.251 INFO    ] No camera update needed
[2026-10-28 22:32:19,254.254 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:32:19,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:32:19,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:32:19,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:32:21,306.306 INFO    ] ================================================
[2026-10-28 22:32:21,321.321 INFO    ] Launching Daemon at Wed Oct 28 22:32:21 IST 2026
[2026-10-28 22:32:21,331.331 INFO    ] ================================================
[2026-10-28 22:32:21,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:32:21
[2026-10-28 22:32:22,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:32:22,903.903 INFO    ] Initializing speech engine...
[2026-10-28 22:32:22,912.912 INFO    ] 2026-10-28 22:32:22
[2026-10-28 22:32:23,197.197 INFO    ] 2026-10-28 22:32:23
[2026-10-28 22:32:23,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:32:23,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:32:23,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:32:23,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:32:23,802.802 INFO    ] time= 28/10/2026 22:32:23
[2026-10-28 22:32:23,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:32:23,824.824 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:32:23,976.976 INFO    ] No existing commands found in stream
[2026-10-28 22:32:28,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:32:28,992.992 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 22:32:30,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:32:30,586.586 INFO    ] Checking for system updates...
[2026-10-28 22:32:30,622.622 INFO    ] 200
[2026-10-28 22:32:30,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:32:30,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:32:30,686.686 INFO    ] No update needed
[2026-10-28 22:32:30,688.688 INFO    ] Checking for camera pi updates...
[2026-10-28 22:32:30,721.721 INFO    ] 200
[2026-10-28 22:32:30,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:32:30,768.768 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:32:30,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:32:30,849.849 INFO    ] No camera update needed
[2026-10-28 22:32:30,852.852 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:32:30,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:32:30,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:32:30,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:32:32,907.907 INFO    ] ================================================
[2026-10-28 22:32:32,923.923 INFO    ] Launching Daemon at Wed Oct 28 22:32:32 IST 2026
[2026-10-28 22:32:32,935.935 INFO    ] ================================================
[2026-10-28 22:32:33,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:32:33
[2026-10-28 22:32:34,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:32:34,399.399 INFO    ] Initializing speech engine...
[2026-10-28 22:32:34,417.417 INFO    ] 2026-10-28 22:32:34
[2026-10-28 22:32:34,662.662 INFO    ] 2026-10-28 22:32:34
[2026-10-28 22:32:34,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:32:34,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:32:34,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:32:35,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:32:35,221.221 INFO    ] time= 28/10/2026 22:32:35
[2026-10-28 22:32:35,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:32:35,245.245 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:32:35,381.381 INFO    ] No existing commands found in stream
[2026-10-28 22:32:40,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:32:40,399.399 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-10-28 22:32:44,745.745 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:32:44,747.747 INFO    ] Checking for system updates...
[2026-10-28 22:32:44,783.783 INFO    ] 200
[2026-10-28 22:32:44,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:32:44,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:32:44,844.844 INFO    ] No update needed
[2026-10-28 22:32:44,847.847 INFO    ] Checking for camera pi updates...
[2026-10-28 22:32:44,883.883 INFO    ] 200
[2026-10-28 22:32:44,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:32:44,931.931 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:32:45,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:32:45,030.030 INFO    ] No camera update needed
[2026-10-28 22:32:45,033.033 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:32:45,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:32:45,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:32:45,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:32:47,089.089 INFO    ] ================================================
[2026-10-28 22:32:47,105.105 INFO    ] Launching Daemon at Wed Oct 28 22:32:47 IST 2026
[2026-10-28 22:32:47,116.116 INFO    ] ================================================
[2026-10-28 22:32:47,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:32:47
[2026-10-28 22:32:48,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:32:48,531.531 INFO    ] Initializing speech engine...
[2026-10-28 22:32:48,556.556 INFO    ] 2026-10-28 22:32:48
[2026-10-28 22:32:48,828.828 INFO    ] 2026-10-28 22:32:48
[2026-10-28 22:32:48,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:32:49,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:32:49,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:32:49,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:32:49,450.450 INFO    ] time= 28/10/2026 22:32:49
[2026-10-28 22:32:49,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:32:49,474.474 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:32:49,589.589 INFO    ] No existing commands found in stream
[2026-10-28 22:32:54,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:32:54,612.612 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 22:32:58,102.102 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:32:58,105.105 INFO    ] Checking for system updates...
[2026-10-28 22:32:58,144.144 INFO    ] 200
[2026-10-28 22:32:58,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:32:58,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:32:58,202.202 INFO    ] No update needed
[2026-10-28 22:32:58,205.205 INFO    ] Checking for camera pi updates...
[2026-10-28 22:32:58,242.242 INFO    ] 200
[2026-10-28 22:32:58,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:32:58,285.285 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:32:58,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:32:58,371.371 INFO    ] No camera update needed
[2026-10-28 22:32:58,374.374 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:32:58,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:32:58,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:32:58,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:33:00,426.426 INFO    ] ================================================
[2026-10-28 22:33:00,441.441 INFO    ] Launching Daemon at Wed Oct 28 22:33:00 IST 2026
[2026-10-28 22:33:00,452.452 INFO    ] ================================================
[2026-10-28 22:33:01,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:33:01
[2026-10-28 22:33:01,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:33:02,074.074 INFO    ] Initializing speech engine...
[2026-10-28 22:33:02,077.077 INFO    ] 2026-10-28 22:33:02
[2026-10-28 22:33:02,499.499 INFO    ] 2026-10-28 22:33:02
[2026-10-28 22:33:02,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:33:02,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:33:02,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:33:03,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:33:03,064.064 INFO    ] time= 28/10/2026 22:33:03
[2026-10-28 22:33:03,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:33:03,165.165 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:33:03,368.368 INFO    ] No existing commands found in stream
[2026-10-28 22:33:08,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:33:08,405.405 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-10-28 22:33:09,788.788 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:33:09,790.790 INFO    ] Checking for system updates...
[2026-10-28 22:33:09,827.827 INFO    ] 200
[2026-10-28 22:33:09,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:33:09,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:33:09,892.892 INFO    ] No update needed
[2026-10-28 22:33:09,895.895 INFO    ] Checking for camera pi updates...
[2026-10-28 22:33:09,930.930 INFO    ] 200
[2026-10-28 22:33:09,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:33:09,980.980 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:33:10,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:33:10,064.064 INFO    ] No camera update needed
[2026-10-28 22:33:10,067.067 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:33:10,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:33:10,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:33:10,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:33:12,122.122 INFO    ] ================================================
[2026-10-28 22:33:12,138.138 INFO    ] Launching Daemon at Wed Oct 28 22:33:12 IST 2026
[2026-10-28 22:33:12,150.150 INFO    ] ================================================
[2026-10-28 22:33:12,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:33:12
[2026-10-28 22:33:13,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:33:13,608.608 INFO    ] Initializing speech engine...
[2026-10-28 22:33:13,619.619 INFO    ] 2026-10-28 22:33:13
[2026-10-28 22:33:13,880.880 INFO    ] 2026-10-28 22:33:13
[2026-10-28 22:33:13,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:33:14,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:33:14,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:33:14,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:33:14,426.426 INFO    ] time= 28/10/2026 22:33:14
[2026-10-28 22:33:14,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:33:14,451.451 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:33:14,580.580 INFO    ] No existing commands found in stream
[2026-10-28 22:33:19,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:33:19,603.603 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-10-28 22:33:23,475.475 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:33:23,478.478 INFO    ] Checking for system updates...
[2026-10-28 22:33:23,513.513 INFO    ] 200
[2026-10-28 22:33:23,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:33:23,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:33:23,570.570 INFO    ] No update needed
[2026-10-28 22:33:23,572.572 INFO    ] Checking for camera pi updates...
[2026-10-28 22:33:23,611.611 INFO    ] 200
[2026-10-28 22:33:23,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:33:23,655.655 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:33:23,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:33:23,771.771 INFO    ] No camera update needed
[2026-10-28 22:33:23,774.774 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:33:23,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:33:23,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:33:23,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:33:25,829.829 INFO    ] ================================================
[2026-10-28 22:33:25,845.845 INFO    ] Launching Daemon at Wed Oct 28 22:33:25 IST 2026
[2026-10-28 22:33:25,857.857 INFO    ] ================================================
[2026-10-28 22:33:26,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:33:26
[2026-10-28 22:33:27,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:33:27,456.456 INFO    ] Initializing speech engine...
[2026-10-28 22:33:27,463.463 INFO    ] 2026-10-28 22:33:27
[2026-10-28 22:33:27,717.717 INFO    ] 2026-10-28 22:33:27
[2026-10-28 22:33:27,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:33:27,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:33:28,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:33:28,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:33:28,257.257 INFO    ] time= 28/10/2026 22:33:28
[2026-10-28 22:33:28,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:33:28,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:33:28,444.444 INFO    ] No existing commands found in stream
[2026-10-28 22:33:33,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:33:33,477.477 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-10-28 22:33:34,343.343 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:33:34,346.346 INFO    ] Checking for system updates...
[2026-10-28 22:33:34,383.383 INFO    ] 200
[2026-10-28 22:33:34,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:33:34,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:33:34,448.448 INFO    ] No update needed
[2026-10-28 22:33:34,451.451 INFO    ] Checking for camera pi updates...
[2026-10-28 22:33:34,488.488 INFO    ] 200
[2026-10-28 22:33:34,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:33:34,533.533 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:33:34,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:33:34,619.619 INFO    ] No camera update needed
[2026-10-28 22:33:34,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:33:34,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:33:34,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:33:34,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:33:36,678.678 INFO    ] ================================================
[2026-10-28 22:33:36,694.694 INFO    ] Launching Daemon at Wed Oct 28 22:33:36 IST 2026
[2026-10-28 22:33:36,705.705 INFO    ] ================================================
[2026-10-28 22:33:37,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:33:37
[2026-10-28 22:33:37,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:33:38,169.169 INFO    ] Initializing speech engine...
[2026-10-28 22:33:38,175.175 INFO    ] 2026-10-28 22:33:38
[2026-10-28 22:33:38,435.435 INFO    ] 2026-10-28 22:33:38
[2026-10-28 22:33:38,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:33:38,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:33:38,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:33:38,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:33:38,990.990 INFO    ] time= 28/10/2026 22:33:38
[2026-10-28 22:33:38,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:33:39,025.025 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:33:39,156.156 INFO    ] No existing commands found in stream
[2026-10-28 22:33:44,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:33:44,184.184 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 22:33:45,449.449 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:33:45,452.452 INFO    ] Checking for system updates...
[2026-10-28 22:33:45,488.488 INFO    ] 200
[2026-10-28 22:33:45,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:33:45,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:33:45,552.552 INFO    ] No update needed
[2026-10-28 22:33:45,555.555 INFO    ] Checking for camera pi updates...
[2026-10-28 22:33:45,588.588 INFO    ] 200
[2026-10-28 22:33:45,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:33:45,639.639 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:33:45,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:33:45,823.823 INFO    ] No camera update needed
[2026-10-28 22:33:45,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:33:45,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:33:45,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:33:45,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:33:47,884.884 INFO    ] ================================================
[2026-10-28 22:33:47,900.900 INFO    ] Launching Daemon at Wed Oct 28 22:33:47 IST 2026
[2026-10-28 22:33:47,912.912 INFO    ] ================================================
[2026-10-28 22:33:48,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:33:48
[2026-10-28 22:33:49,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:33:49,396.396 INFO    ] Initializing speech engine...
[2026-10-28 22:33:49,420.420 INFO    ] 2026-10-28 22:33:49
[2026-10-28 22:33:49,685.685 INFO    ] 2026-10-28 22:33:49
[2026-10-28 22:33:49,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:33:49,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:33:49,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:33:50,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:33:50,262.262 INFO    ] time= 28/10/2026 22:33:50
[2026-10-28 22:33:50,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:33:50,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:33:50,433.433 INFO    ] No existing commands found in stream
[2026-10-28 22:33:55,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:33:55,466.466 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 22:33:59,491.491 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:33:59,494.494 INFO    ] Checking for system updates...
[2026-10-28 22:33:59,529.529 INFO    ] 200
[2026-10-28 22:33:59,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:33:59,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:33:59,593.593 INFO    ] No update needed
[2026-10-28 22:33:59,596.596 INFO    ] Checking for camera pi updates...
[2026-10-28 22:33:59,630.630 INFO    ] 200
[2026-10-28 22:33:59,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:33:59,673.673 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:33:59,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:33:59,771.771 INFO    ] No camera update needed
[2026-10-28 22:33:59,774.774 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:33:59,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:33:59,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:33:59,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:34:01,828.828 INFO    ] ================================================
[2026-10-28 22:34:01,844.844 INFO    ] Launching Daemon at Wed Oct 28 22:34:01 IST 2026
[2026-10-28 22:34:01,855.855 INFO    ] ================================================
[2026-10-28 22:34:02,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:34:02
[2026-10-28 22:34:03,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:34:03,593.593 INFO    ] Initializing speech engine...
[2026-10-28 22:34:03,606.606 INFO    ] 2026-10-28 22:34:03
[2026-10-28 22:34:03,867.867 INFO    ] 2026-10-28 22:34:03
[2026-10-28 22:34:03,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:34:04,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:34:04,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:34:04,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:34:04,436.436 INFO    ] time= 28/10/2026 22:34:04
[2026-10-28 22:34:04,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:34:04,463.463 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:34:04,552.552 INFO    ] No existing commands found in stream
[2026-10-28 22:34:09,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:34:09,573.573 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 22:34:10,265.265 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:34:10,268.268 INFO    ] Checking for system updates...
[2026-10-28 22:34:10,304.304 INFO    ] 200
[2026-10-28 22:34:10,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:34:10,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:34:10,361.361 INFO    ] No update needed
[2026-10-28 22:34:10,364.364 INFO    ] Checking for camera pi updates...
[2026-10-28 22:34:10,398.398 INFO    ] 200
[2026-10-28 22:34:10,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:34:10,440.440 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:34:10,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:34:10,514.514 INFO    ] No camera update needed
[2026-10-28 22:34:10,516.516 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:34:10,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:34:10,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:34:10,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:34:12,568.568 INFO    ] ================================================
[2026-10-28 22:34:12,584.584 INFO    ] Launching Daemon at Wed Oct 28 22:34:12 IST 2026
[2026-10-28 22:34:12,595.595 INFO    ] ================================================
[2026-10-28 22:34:13,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:34:13
[2026-10-28 22:34:13,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:34:14,017.017 INFO    ] Initializing speech engine...
[2026-10-28 22:34:14,026.026 INFO    ] 2026-10-28 22:34:14
[2026-10-28 22:34:14,272.272 INFO    ] 2026-10-28 22:34:14
[2026-10-28 22:34:14,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:34:14,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:34:14,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:34:14,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:34:14,971.971 INFO    ] time= 28/10/2026 22:34:14
[2026-10-28 22:34:15,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:34:15,070.070 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:34:15,228.228 INFO    ] No existing commands found in stream
[2026-10-28 22:34:20,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:34:20,258.258 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-10-28 22:34:23,047.047 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:34:23,050.050 INFO    ] Checking for system updates...
[2026-10-28 22:34:23,089.089 INFO    ] 200
[2026-10-28 22:34:23,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:34:23,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:34:23,146.146 INFO    ] No update needed
[2026-10-28 22:34:23,149.149 INFO    ] Checking for camera pi updates...
[2026-10-28 22:34:23,182.182 INFO    ] 200
[2026-10-28 22:34:23,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:34:23,229.229 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:34:23,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:34:23,322.322 INFO    ] No camera update needed
[2026-10-28 22:34:23,324.324 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:34:23,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:34:23,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:34:23,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:34:25,378.378 INFO    ] ================================================
[2026-10-28 22:34:25,393.393 INFO    ] Launching Daemon at Wed Oct 28 22:34:25 IST 2026
[2026-10-28 22:34:25,404.404 INFO    ] ================================================
[2026-10-28 22:34:25,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:34:25
[2026-10-28 22:34:26,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:34:26,882.882 INFO    ] Initializing speech engine...
[2026-10-28 22:34:26,891.891 INFO    ] 2026-10-28 22:34:26
[2026-10-28 22:34:27,155.155 INFO    ] 2026-10-28 22:34:27
[2026-10-28 22:34:27,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:34:27,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:34:27,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:34:27,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:34:27,699.699 INFO    ] time= 28/10/2026 22:34:27
[2026-10-28 22:34:27,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:34:27,745.745 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:34:27,880.880 INFO    ] No existing commands found in stream
[2026-10-28 22:34:32,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:34:32,914.914 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-28 22:34:37,411.411 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:34:37,414.414 INFO    ] Checking for system updates...
[2026-10-28 22:34:37,451.451 INFO    ] 200
[2026-10-28 22:34:37,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:34:37,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:34:37,510.510 INFO    ] No update needed
[2026-10-28 22:34:37,513.513 INFO    ] Checking for camera pi updates...
[2026-10-28 22:34:37,547.547 INFO    ] 200
[2026-10-28 22:34:37,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:34:37,592.592 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:34:37,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:34:37,676.676 INFO    ] No camera update needed
[2026-10-28 22:34:37,679.679 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:34:37,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:34:37,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:34:37,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:34:39,743.743 INFO    ] ================================================
[2026-10-28 22:34:39,759.759 INFO    ] Launching Daemon at Wed Oct 28 22:34:39 IST 2026
[2026-10-28 22:34:39,769.769 INFO    ] ================================================
[2026-10-28 22:34:40,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:34:40
[2026-10-28 22:34:40,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:34:41,188.188 INFO    ] Initializing speech engine...
[2026-10-28 22:34:41,197.197 INFO    ] 2026-10-28 22:34:41
[2026-10-28 22:34:41,442.442 INFO    ] 2026-10-28 22:34:41
[2026-10-28 22:34:41,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:34:41,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:34:41,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:34:41,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:34:41,997.997 INFO    ] time= 28/10/2026 22:34:41
[2026-10-28 22:34:42,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:34:42,020.020 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:34:42,162.162 INFO    ] No existing commands found in stream
[2026-10-28 22:34:47,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:34:47,196.196 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 22:34:49,783.783 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:34:49,786.786 INFO    ] Checking for system updates...
[2026-10-28 22:34:49,823.823 INFO    ] 200
[2026-10-28 22:34:49,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:34:49,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:34:49,881.881 INFO    ] No update needed
[2026-10-28 22:34:49,883.883 INFO    ] Checking for camera pi updates...
[2026-10-28 22:34:49,917.917 INFO    ] 200
[2026-10-28 22:34:49,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:34:49,960.960 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:34:50,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:34:50,046.046 INFO    ] No camera update needed
[2026-10-28 22:34:50,048.048 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:34:50,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:34:50,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:34:50,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:34:52,100.100 INFO    ] ================================================
[2026-10-28 22:34:52,114.114 INFO    ] Launching Daemon at Wed Oct 28 22:34:52 IST 2026
[2026-10-28 22:34:52,125.125 INFO    ] ================================================
[2026-10-28 22:34:52,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:34:52
[2026-10-28 22:34:53,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:34:53,559.559 INFO    ] Initializing speech engine...
[2026-10-28 22:34:53,568.568 INFO    ] 2026-10-28 22:34:53
[2026-10-28 22:34:53,821.821 INFO    ] 2026-10-28 22:34:53
[2026-10-28 22:34:53,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:34:54,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:34:54,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:34:54,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:34:54,387.387 INFO    ] time= 28/10/2026 22:34:54
[2026-10-28 22:34:54,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:34:54,411.411 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:34:54,524.524 INFO    ] No existing commands found in stream
[2026-10-28 22:34:59,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:34:59,552.552 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-10-28 22:35:02,170.170 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:35:02,173.173 INFO    ] Checking for system updates...
[2026-10-28 22:35:02,220.220 INFO    ] 200
[2026-10-28 22:35:02,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:35:02,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:35:02,290.290 INFO    ] No update needed
[2026-10-28 22:35:02,293.293 INFO    ] Checking for camera pi updates...
[2026-10-28 22:35:02,331.331 INFO    ] 200
[2026-10-28 22:35:02,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:35:02,382.382 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:35:02,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:35:02,702.702 INFO    ] No camera update needed
[2026-10-28 22:35:02,706.706 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:35:02,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:35:02,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:35:02,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:35:04,778.778 INFO    ] ================================================
[2026-10-28 22:35:04,793.793 INFO    ] Launching Daemon at Wed Oct 28 22:35:04 IST 2026
[2026-10-28 22:35:04,804.804 INFO    ] ================================================
[2026-10-28 22:35:05,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:35:05
[2026-10-28 22:35:06,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:35:06,393.393 INFO    ] Initializing speech engine...
[2026-10-28 22:35:06,402.402 INFO    ] 2026-10-28 22:35:06
[2026-10-28 22:35:06,649.649 INFO    ] 2026-10-28 22:35:06
[2026-10-28 22:35:06,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:35:06,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:35:06,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:35:07,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:35:07,173.173 INFO    ] time= 28/10/2026 22:35:07
[2026-10-28 22:35:07,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:35:07,277.277 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:35:07,371.371 INFO    ] No existing commands found in stream
[2026-10-28 22:35:12,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:35:12,386.386 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 22:35:15,384.384 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:35:15,386.386 INFO    ] Checking for system updates...
[2026-10-28 22:35:15,422.422 INFO    ] 200
[2026-10-28 22:35:15,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:35:15,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:35:15,480.480 INFO    ] No update needed
[2026-10-28 22:35:15,482.482 INFO    ] Checking for camera pi updates...
[2026-10-28 22:35:15,517.517 INFO    ] 200
[2026-10-28 22:35:15,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:35:15,560.560 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:35:15,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:35:15,643.643 INFO    ] No camera update needed
[2026-10-28 22:35:15,646.646 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:35:15,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:35:15,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:35:15,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:35:17,699.699 INFO    ] ================================================
[2026-10-28 22:35:17,714.714 INFO    ] Launching Daemon at Wed Oct 28 22:35:17 IST 2026
[2026-10-28 22:35:17,725.725 INFO    ] ================================================
[2026-10-28 22:35:18,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:35:18
[2026-10-28 22:35:19,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:35:19,377.377 INFO    ] Initializing speech engine...
[2026-10-28 22:35:19,384.384 INFO    ] 2026-10-28 22:35:19
[2026-10-28 22:35:19,642.642 INFO    ] 2026-10-28 22:35:19
[2026-10-28 22:35:19,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:35:19,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:35:19,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:35:20,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:35:20,186.186 INFO    ] time= 28/10/2026 22:35:20
[2026-10-28 22:35:20,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:35:20,233.233 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:35:20,369.369 INFO    ] No existing commands found in stream
[2026-10-28 22:35:25,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:35:25,402.402 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-28 22:35:26,567.567 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:35:26,570.570 INFO    ] Checking for system updates...
[2026-10-28 22:35:26,610.610 INFO    ] 200
[2026-10-28 22:35:26,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:35:26,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:35:26,675.675 INFO    ] No update needed
[2026-10-28 22:35:26,677.677 INFO    ] Checking for camera pi updates...
[2026-10-28 22:35:26,710.710 INFO    ] 200
[2026-10-28 22:35:26,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:35:26,759.759 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:35:26,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:35:26,842.842 INFO    ] No camera update needed
[2026-10-28 22:35:26,845.845 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:35:26,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:35:26,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:35:26,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:35:28,897.897 INFO    ] ================================================
[2026-10-28 22:35:28,913.913 INFO    ] Launching Daemon at Wed Oct 28 22:35:28 IST 2026
[2026-10-28 22:35:28,924.924 INFO    ] ================================================
[2026-10-28 22:35:29,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:35:29
[2026-10-28 22:35:30,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:35:30,435.435 INFO    ] Initializing speech engine...
[2026-10-28 22:35:30,446.446 INFO    ] 2026-10-28 22:35:30
[2026-10-28 22:35:30,706.706 INFO    ] 2026-10-28 22:35:30
[2026-10-28 22:35:30,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:35:31,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:35:31,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:35:31,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:35:31,262.262 INFO    ] time= 28/10/2026 22:35:31
[2026-10-28 22:35:31,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:35:31,298.298 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:35:31,465.465 INFO    ] No existing commands found in stream
[2026-10-28 22:35:36,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:35:36,498.498 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 22:35:37,392.392 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:35:37,394.394 INFO    ] Checking for system updates...
[2026-10-28 22:35:37,435.435 INFO    ] 200
[2026-10-28 22:35:37,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:35:37,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:35:37,500.500 INFO    ] No update needed
[2026-10-28 22:35:37,503.503 INFO    ] Checking for camera pi updates...
[2026-10-28 22:35:37,536.536 INFO    ] 200
[2026-10-28 22:35:37,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:35:37,578.578 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:35:37,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:35:37,663.663 INFO    ] No camera update needed
[2026-10-28 22:35:37,665.665 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:35:37,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:35:37,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:35:37,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:35:39,718.718 INFO    ] ================================================
[2026-10-28 22:35:39,734.734 INFO    ] Launching Daemon at Wed Oct 28 22:35:39 IST 2026
[2026-10-28 22:35:39,745.745 INFO    ] ================================================
[2026-10-28 22:35:40,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:35:40
[2026-10-28 22:35:41,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:35:41,428.428 INFO    ] Initializing speech engine...
[2026-10-28 22:35:41,436.436 INFO    ] 2026-10-28 22:35:41
[2026-10-28 22:35:41,720.720 INFO    ] 2026-10-28 22:35:41
[2026-10-28 22:35:41,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:35:42,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:35:42,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:35:42,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:35:42,249.249 INFO    ] time= 28/10/2026 22:35:42
[2026-10-28 22:35:42,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:35:42,309.309 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:35:42,452.452 INFO    ] No existing commands found in stream
[2026-10-28 22:35:47,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:35:47,479.479 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-28 22:35:49,072.072 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:35:49,076.076 INFO    ] Checking for system updates...
[2026-10-28 22:35:49,114.114 INFO    ] 200
[2026-10-28 22:35:49,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:35:49,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:35:49,175.175 INFO    ] No update needed
[2026-10-28 22:35:49,178.178 INFO    ] Checking for camera pi updates...
[2026-10-28 22:35:49,213.213 INFO    ] 200
[2026-10-28 22:35:49,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:35:49,256.256 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:35:49,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:35:49,436.436 INFO    ] No camera update needed
[2026-10-28 22:35:49,439.439 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:35:49,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:35:49,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:35:49,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:35:51,492.492 INFO    ] ================================================
[2026-10-28 22:35:51,507.507 INFO    ] Launching Daemon at Wed Oct 28 22:35:51 IST 2026
[2026-10-28 22:35:51,518.518 INFO    ] ================================================
[2026-10-28 22:35:52,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:35:52
[2026-10-28 22:35:52,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:35:53,060.060 INFO    ] Initializing speech engine...
[2026-10-28 22:35:53,069.069 INFO    ] 2026-10-28 22:35:53
[2026-10-28 22:35:53,356.356 INFO    ] 2026-10-28 22:35:53
[2026-10-28 22:35:53,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:35:53,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:35:53,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:35:54,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:35:54,054.054 INFO    ] time= 28/10/2026 22:35:54
[2026-10-28 22:35:54,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:35:54,152.152 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:35:54,301.301 INFO    ] No existing commands found in stream
[2026-10-28 22:35:59,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:35:59,332.332 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-10-28 22:36:02,471.471 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:36:02,475.475 INFO    ] Checking for system updates...
[2026-10-28 22:36:02,527.527 INFO    ] 200
[2026-10-28 22:36:02,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:36:02,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:36:02,608.608 INFO    ] No update needed
[2026-10-28 22:36:02,612.612 INFO    ] Checking for camera pi updates...
[2026-10-28 22:36:02,658.658 INFO    ] 200
[2026-10-28 22:36:02,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:36:02,723.723 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:36:02,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:36:02,838.838 INFO    ] No camera update needed
[2026-10-28 22:36:02,842.842 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:36:02,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:36:02,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:36:02,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:36:04,908.908 INFO    ] ================================================
[2026-10-28 22:36:04,923.923 INFO    ] Launching Daemon at Wed Oct 28 22:36:04 IST 2026
[2026-10-28 22:36:04,935.935 INFO    ] ================================================
[2026-10-28 22:36:05,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:36:05
[2026-10-28 22:36:06,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:36:06,403.403 INFO    ] Initializing speech engine...
[2026-10-28 22:36:06,412.412 INFO    ] 2026-10-28 22:36:06
[2026-10-28 22:36:06,661.661 INFO    ] 2026-10-28 22:36:06
[2026-10-28 22:36:06,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:36:06,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:36:06,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:36:07,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:36:07,200.200 INFO    ] time= 28/10/2026 22:36:07
[2026-10-28 22:36:07,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:36:07,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:36:07,361.361 INFO    ] No existing commands found in stream
[2026-10-28 22:36:12,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:36:12,388.388 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-10-28 22:36:13,625.625 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:36:13,628.628 INFO    ] Checking for system updates...
[2026-10-28 22:36:13,667.667 INFO    ] 200
[2026-10-28 22:36:13,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:36:13,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:36:13,725.725 INFO    ] No update needed
[2026-10-28 22:36:13,727.727 INFO    ] Checking for camera pi updates...
[2026-10-28 22:36:13,760.760 INFO    ] 200
[2026-10-28 22:36:13,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:36:13,804.804 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:36:13,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:36:13,892.892 INFO    ] No camera update needed
[2026-10-28 22:36:13,894.894 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:36:13,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:36:13,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:36:13,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:36:15,948.948 INFO    ] ================================================
[2026-10-28 22:36:15,964.964 INFO    ] Launching Daemon at Wed Oct 28 22:36:15 IST 2026
[2026-10-28 22:36:15,975.975 INFO    ] ================================================
[2026-10-28 22:36:16,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:36:16
[2026-10-28 22:36:17,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:36:17,374.374 INFO    ] Initializing speech engine...
[2026-10-28 22:36:17,389.389 INFO    ] 2026-10-28 22:36:17
[2026-10-28 22:36:17,655.655 INFO    ] 2026-10-28 22:36:17
[2026-10-28 22:36:17,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:36:17,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:36:17,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:36:18,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:36:18,224.224 INFO    ] time= 28/10/2026 22:36:18
[2026-10-28 22:36:18,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:36:18,251.251 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:36:18,382.382 INFO    ] No existing commands found in stream
[2026-10-28 22:36:23,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:36:23,401.401 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-28 22:36:26,710.710 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:36:26,713.713 INFO    ] Checking for system updates...
[2026-10-28 22:36:26,748.748 INFO    ] 200
[2026-10-28 22:36:26,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:36:26,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:36:26,815.815 INFO    ] No update needed
[2026-10-28 22:36:26,817.817 INFO    ] Checking for camera pi updates...
[2026-10-28 22:36:26,851.851 INFO    ] 200
[2026-10-28 22:36:26,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:36:26,902.902 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:36:26,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:36:26,995.995 INFO    ] No camera update needed
[2026-10-28 22:36:26,997.997 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:36:27,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:36:27,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:36:27,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:36:29,049.049 INFO    ] ================================================
[2026-10-28 22:36:29,064.064 INFO    ] Launching Daemon at Wed Oct 28 22:36:29 IST 2026
[2026-10-28 22:36:29,075.075 INFO    ] ================================================
[2026-10-28 22:36:29,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:36:29
[2026-10-28 22:36:30,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:36:30,720.720 INFO    ] Initializing speech engine...
[2026-10-28 22:36:30,727.727 INFO    ] 2026-10-28 22:36:30
[2026-10-28 22:36:30,991.991 INFO    ] 2026-10-28 22:36:30
[2026-10-28 22:36:31,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:36:31,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:36:31,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:36:31,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:36:31,633.633 INFO    ] time= 28/10/2026 22:36:31
[2026-10-28 22:36:31,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:36:31,669.669 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:36:31,756.756 INFO    ] No existing commands found in stream
[2026-10-28 22:36:36,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:36:36,769.769 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 22:36:37,790.790 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:36:37,792.792 INFO    ] Checking for system updates...
[2026-10-28 22:36:37,827.827 INFO    ] 200
[2026-10-28 22:36:37,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:36:37,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:36:37,892.892 INFO    ] No update needed
[2026-10-28 22:36:37,894.894 INFO    ] Checking for camera pi updates...
[2026-10-28 22:36:37,928.928 INFO    ] 200
[2026-10-28 22:36:37,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:36:37,979.979 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:36:38,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:36:38,072.072 INFO    ] No camera update needed
[2026-10-28 22:36:38,075.075 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:36:38,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:36:38,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:36:38,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:36:40,130.130 INFO    ] ================================================
[2026-10-28 22:36:40,145.145 INFO    ] Launching Daemon at Wed Oct 28 22:36:40 IST 2026
[2026-10-28 22:36:40,156.156 INFO    ] ================================================
[2026-10-28 22:36:40,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:36:40
[2026-10-28 22:36:41,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:36:41,575.575 INFO    ] Initializing speech engine...
[2026-10-28 22:36:41,585.585 INFO    ] 2026-10-28 22:36:41
[2026-10-28 22:36:41,835.835 INFO    ] 2026-10-28 22:36:41
[2026-10-28 22:36:41,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:36:42,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:36:42,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:36:42,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:36:42,400.400 INFO    ] time= 28/10/2026 22:36:42
[2026-10-28 22:36:42,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:36:42,427.427 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:36:42,567.567 INFO    ] No existing commands found in stream
[2026-10-28 22:36:47,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:36:47,591.591 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-28 22:36:49,265.265 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:36:49,267.267 INFO    ] Checking for system updates...
[2026-10-28 22:36:49,303.303 INFO    ] 200
[2026-10-28 22:36:49,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:36:49,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:36:49,361.361 INFO    ] No update needed
[2026-10-28 22:36:49,363.363 INFO    ] Checking for camera pi updates...
[2026-10-28 22:36:49,397.397 INFO    ] 200
[2026-10-28 22:36:49,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:36:49,440.440 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:36:49,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:36:49,517.517 INFO    ] No camera update needed
[2026-10-28 22:36:49,519.519 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:36:49,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:36:49,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:36:49,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:36:51,576.576 INFO    ] ================================================
[2026-10-28 22:36:51,592.592 INFO    ] Launching Daemon at Wed Oct 28 22:36:51 IST 2026
[2026-10-28 22:36:51,603.603 INFO    ] ================================================
[2026-10-28 22:36:52,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:36:52
[2026-10-28 22:36:52,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:36:53,259.259 INFO    ] Initializing speech engine...
[2026-10-28 22:36:53,276.276 INFO    ] 2026-10-28 22:36:53
[2026-10-28 22:36:53,593.593 INFO    ] 2026-10-28 22:36:53
[2026-10-28 22:36:53,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:36:53,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:36:54,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:36:54,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:36:54,326.326 INFO    ] time= 28/10/2026 22:36:54
[2026-10-28 22:36:54,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:36:54,405.405 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:36:54,554.554 INFO    ] No existing commands found in stream
[2026-10-28 22:36:59,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:36:59,587.587 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-28 22:37:01,434.434 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:37:01,436.436 INFO    ] Checking for system updates...
[2026-10-28 22:37:01,476.476 INFO    ] 200
[2026-10-28 22:37:01,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:37:01,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:37:01,540.540 INFO    ] No update needed
[2026-10-28 22:37:01,542.542 INFO    ] Checking for camera pi updates...
[2026-10-28 22:37:01,577.577 INFO    ] 200
[2026-10-28 22:37:01,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:37:01,624.624 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:37:01,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:37:01,681.681 INFO    ] No camera update needed
[2026-10-28 22:37:01,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:37:01,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:37:01,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:37:01,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:37:03,772.772 INFO    ] ================================================
[2026-10-28 22:37:03,789.789 INFO    ] Launching Daemon at Wed Oct 28 22:37:03 IST 2026
[2026-10-28 22:37:03,804.804 INFO    ] ================================================
[2026-10-28 22:37:04,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:37:04
[2026-10-28 22:37:04,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:37:05,220.220 INFO    ] Initializing speech engine...
[2026-10-28 22:37:05,229.229 INFO    ] 2026-10-28 22:37:05
[2026-10-28 22:37:05,525.525 INFO    ] 2026-10-28 22:37:05
[2026-10-28 22:37:05,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:37:05,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:37:05,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:37:06,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:37:06,142.142 INFO    ] time= 28/10/2026 22:37:06
[2026-10-28 22:37:06,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:37:06,190.190 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:37:06,325.325 INFO    ] No existing commands found in stream
[2026-10-28 22:37:11,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:37:11,352.352 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 22:37:15,344.344 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:37:15,347.347 INFO    ] Checking for system updates...
[2026-10-28 22:37:15,387.387 INFO    ] 200
[2026-10-28 22:37:15,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:37:15,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:37:15,444.444 INFO    ] No update needed
[2026-10-28 22:37:15,446.446 INFO    ] Checking for camera pi updates...
[2026-10-28 22:37:15,484.484 INFO    ] 200
[2026-10-28 22:37:15,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:37:15,531.531 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:37:15,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:37:15,617.617 INFO    ] No camera update needed
[2026-10-28 22:37:15,619.619 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:37:15,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:37:15,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:37:15,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:37:17,674.674 INFO    ] ================================================
[2026-10-28 22:37:17,689.689 INFO    ] Launching Daemon at Wed Oct 28 22:37:17 IST 2026
[2026-10-28 22:37:17,700.700 INFO    ] ================================================
[2026-10-28 22:37:18,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:37:18
[2026-10-28 22:37:18,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:37:19,106.106 INFO    ] Initializing speech engine...
[2026-10-28 22:37:19,113.113 INFO    ] 2026-10-28 22:37:19
[2026-10-28 22:37:19,412.412 INFO    ] 2026-10-28 22:37:19
[2026-10-28 22:37:19,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:37:19,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:37:19,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:37:19,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:37:20,022.022 INFO    ] time= 28/10/2026 22:37:19
[2026-10-28 22:37:20,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:37:20,063.063 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:37:20,207.207 INFO    ] No existing commands found in stream
[2026-10-28 22:37:25,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:37:25,240.240 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-10-28 22:37:28,704.704 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:37:28,707.707 INFO    ] Checking for system updates...
[2026-10-28 22:37:28,747.747 INFO    ] 200
[2026-10-28 22:37:28,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:37:28,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:37:28,810.810 INFO    ] No update needed
[2026-10-28 22:37:28,813.813 INFO    ] Checking for camera pi updates...
[2026-10-28 22:37:28,850.850 INFO    ] 200
[2026-10-28 22:37:28,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:37:28,898.898 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:37:28,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:37:28,981.981 INFO    ] No camera update needed
[2026-10-28 22:37:28,983.983 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:37:28,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:37:28,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:37:28,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:37:31,039.039 INFO    ] ================================================
[2026-10-28 22:37:31,055.055 INFO    ] Launching Daemon at Wed Oct 28 22:37:31 IST 2026
[2026-10-28 22:37:31,066.066 INFO    ] ================================================
[2026-10-28 22:37:31,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:37:31
[2026-10-28 22:37:32,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:37:32,806.806 INFO    ] Initializing speech engine...
[2026-10-28 22:37:32,817.817 INFO    ] 2026-10-28 22:37:32
[2026-10-28 22:37:33,125.125 INFO    ] 2026-10-28 22:37:33
[2026-10-28 22:37:33,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:37:33,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:37:33,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:37:33,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:37:33,679.679 INFO    ] time= 28/10/2026 22:37:33
[2026-10-28 22:37:33,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:37:33,719.719 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:37:33,860.860 INFO    ] No existing commands found in stream
[2026-10-28 22:37:38,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:37:38,895.895 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-28 22:37:42,028.028 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:37:42,031.031 INFO    ] Checking for system updates...
[2026-10-28 22:37:42,073.073 INFO    ] 200
[2026-10-28 22:37:42,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:37:42,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:37:42,139.139 INFO    ] No update needed
[2026-10-28 22:37:42,142.142 INFO    ] Checking for camera pi updates...
[2026-10-28 22:37:42,177.177 INFO    ] 200
[2026-10-28 22:37:42,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:37:42,222.222 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:37:42,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:37:42,311.311 INFO    ] No camera update needed
[2026-10-28 22:37:42,314.314 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:37:42,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:37:42,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:37:42,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:37:44,370.370 INFO    ] ================================================
[2026-10-28 22:37:44,386.386 INFO    ] Launching Daemon at Wed Oct 28 22:37:44 IST 2026
[2026-10-28 22:37:44,398.398 INFO    ] ================================================
[2026-10-28 22:37:44,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:37:44
[2026-10-28 22:37:45,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:37:45,820.820 INFO    ] Initializing speech engine...
[2026-10-28 22:37:45,827.827 INFO    ] 2026-10-28 22:37:45
[2026-10-28 22:37:46,079.079 INFO    ] 2026-10-28 22:37:46
[2026-10-28 22:37:46,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:37:46,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:37:46,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:37:46,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:37:46,661.661 INFO    ] time= 28/10/2026 22:37:46
[2026-10-28 22:37:46,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:37:46,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:37:46,857.857 INFO    ] No existing commands found in stream
[2026-10-28 22:37:51,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:37:51,877.877 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 22:37:53,072.072 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:37:53,075.075 INFO    ] Checking for system updates...
[2026-10-28 22:37:53,110.110 INFO    ] 200
[2026-10-28 22:37:53,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:37:53,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:37:53,175.175 INFO    ] No update needed
[2026-10-28 22:37:53,177.177 INFO    ] Checking for camera pi updates...
[2026-10-28 22:37:53,214.214 INFO    ] 200
[2026-10-28 22:37:53,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:37:53,256.256 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:37:53,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:37:53,449.449 INFO    ] No camera update needed
[2026-10-28 22:37:53,451.451 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:37:53,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:37:53,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:37:53,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:37:55,505.505 INFO    ] ================================================
[2026-10-28 22:37:55,520.520 INFO    ] Launching Daemon at Wed Oct 28 22:37:55 IST 2026
[2026-10-28 22:37:55,532.532 INFO    ] ================================================
[2026-10-28 22:37:56,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:37:56
[2026-10-28 22:37:56,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:37:56,936.936 INFO    ] Initializing speech engine...
[2026-10-28 22:37:56,959.959 INFO    ] 2026-10-28 22:37:56
[2026-10-28 22:37:57,214.214 INFO    ] 2026-10-28 22:37:57
[2026-10-28 22:37:57,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:37:57,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:37:57,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:37:57,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:37:57,783.783 INFO    ] time= 28/10/2026 22:37:57
[2026-10-28 22:37:57,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:37:57,830.830 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:37:57,951.951 INFO    ] No existing commands found in stream
[2026-10-28 22:38:02,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:38:02,974.974 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-28 22:38:07,407.407 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:38:07,409.409 INFO    ] Checking for system updates...
[2026-10-28 22:38:07,449.449 INFO    ] 200
[2026-10-28 22:38:07,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:38:07,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:38:07,509.509 INFO    ] No update needed
[2026-10-28 22:38:07,512.512 INFO    ] Checking for camera pi updates...
[2026-10-28 22:38:07,546.546 INFO    ] 200
[2026-10-28 22:38:07,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:38:07,596.596 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:38:07,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:38:07,683.683 INFO    ] No camera update needed
[2026-10-28 22:38:07,685.685 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:38:07,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:38:07,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:38:07,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:38:09,739.739 INFO    ] ================================================
[2026-10-28 22:38:09,755.755 INFO    ] Launching Daemon at Wed Oct 28 22:38:09 IST 2026
[2026-10-28 22:38:09,766.766 INFO    ] ================================================
[2026-10-28 22:38:10,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:38:10
[2026-10-28 22:38:11,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:38:11,423.423 INFO    ] Initializing speech engine...
[2026-10-28 22:38:11,432.432 INFO    ] 2026-10-28 22:38:11
[2026-10-28 22:38:11,714.714 INFO    ] 2026-10-28 22:38:11
[2026-10-28 22:38:11,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:38:12,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:38:12,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:38:12,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:38:12,463.463 INFO    ] time= 28/10/2026 22:38:12
[2026-10-28 22:38:12,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:38:12,537.537 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:38:12,689.689 INFO    ] No existing commands found in stream
[2026-10-28 22:38:17,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:38:17,725.725 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-28 22:38:22,186.186 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:38:22,189.189 INFO    ] Checking for system updates...
[2026-10-28 22:38:22,226.226 INFO    ] 200
[2026-10-28 22:38:22,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:38:22,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:38:22,293.293 INFO    ] No update needed
[2026-10-28 22:38:22,296.296 INFO    ] Checking for camera pi updates...
[2026-10-28 22:38:22,330.330 INFO    ] 200
[2026-10-28 22:38:22,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:38:22,380.380 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:38:22,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:38:22,465.465 INFO    ] No camera update needed
[2026-10-28 22:38:22,468.468 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:38:22,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:38:22,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:38:22,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:38:24,524.524 INFO    ] ================================================
[2026-10-28 22:38:24,540.540 INFO    ] Launching Daemon at Wed Oct 28 22:38:24 IST 2026
[2026-10-28 22:38:24,552.552 INFO    ] ================================================
[2026-10-28 22:38:25,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:38:25
[2026-10-28 22:38:25,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:38:26,211.211 INFO    ] Initializing speech engine...
[2026-10-28 22:38:26,225.225 INFO    ] 2026-10-28 22:38:26
[2026-10-28 22:38:26,542.542 INFO    ] 2026-10-28 22:38:26
[2026-10-28 22:38:26,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:38:26,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:38:26,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:38:27,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:38:27,257.257 INFO    ] time= 28/10/2026 22:38:27
[2026-10-28 22:38:27,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:38:27,357.357 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:38:27,496.496 INFO    ] No existing commands found in stream
[2026-10-28 22:38:32,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:38:32,532.532 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-28 22:38:35,369.369 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:38:35,372.372 INFO    ] Checking for system updates...
[2026-10-28 22:38:35,409.409 INFO    ] 200
[2026-10-28 22:38:35,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:38:35,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:38:35,475.475 INFO    ] No update needed
[2026-10-28 22:38:35,478.478 INFO    ] Checking for camera pi updates...
[2026-10-28 22:38:35,517.517 INFO    ] 200
[2026-10-28 22:38:35,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:38:35,561.561 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:38:35,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:38:35,647.647 INFO    ] No camera update needed
[2026-10-28 22:38:35,650.650 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:38:35,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:38:35,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:38:35,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:38:37,706.706 INFO    ] ================================================
[2026-10-28 22:38:37,721.721 INFO    ] Launching Daemon at Wed Oct 28 22:38:37 IST 2026
[2026-10-28 22:38:37,732.732 INFO    ] ================================================
[2026-10-28 22:38:38,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:38:38
[2026-10-28 22:38:38,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:38:39,142.142 INFO    ] Initializing speech engine...
[2026-10-28 22:38:39,157.157 INFO    ] 2026-10-28 22:38:39
[2026-10-28 22:38:39,424.424 INFO    ] 2026-10-28 22:38:39
[2026-10-28 22:38:39,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:38:39,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:38:39,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:38:39,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:38:39,989.989 INFO    ] time= 28/10/2026 22:38:39
[2026-10-28 22:38:39,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:38:40,013.013 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:38:40,147.147 INFO    ] No existing commands found in stream
[2026-10-28 22:38:45,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:38:45,169.169 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-10-28 22:38:48,010.010 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:38:48,012.012 INFO    ] Checking for system updates...
[2026-10-28 22:38:48,052.052 INFO    ] 200
[2026-10-28 22:38:48,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:38:48,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:38:48,109.109 INFO    ] No update needed
[2026-10-28 22:38:48,112.112 INFO    ] Checking for camera pi updates...
[2026-10-28 22:38:48,145.145 INFO    ] 200
[2026-10-28 22:38:48,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:38:48,192.192 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:38:48,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:38:48,281.281 INFO    ] No camera update needed
[2026-10-28 22:38:48,283.283 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:38:48,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:38:48,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:38:48,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:38:50,337.337 INFO    ] ================================================
[2026-10-28 22:38:50,353.353 INFO    ] Launching Daemon at Wed Oct 28 22:38:50 IST 2026
[2026-10-28 22:38:50,365.365 INFO    ] ================================================
[2026-10-28 22:38:50,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:38:50
[2026-10-28 22:38:51,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:38:51,773.773 INFO    ] Initializing speech engine...
[2026-10-28 22:38:51,781.781 INFO    ] 2026-10-28 22:38:51
[2026-10-28 22:38:52,055.055 INFO    ] 2026-10-28 22:38:52
[2026-10-28 22:38:52,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:38:52,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:38:52,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:38:52,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:38:52,622.622 INFO    ] time= 28/10/2026 22:38:52
[2026-10-28 22:38:52,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:38:52,646.646 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:38:52,760.760 INFO    ] No existing commands found in stream
[2026-10-28 22:38:57,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:38:57,790.790 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 22:39:00,587.587 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:39:00,589.589 INFO    ] Checking for system updates...
[2026-10-28 22:39:00,624.624 INFO    ] 200
[2026-10-28 22:39:00,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:39:00,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:39:00,681.681 INFO    ] No update needed
[2026-10-28 22:39:00,688.688 INFO    ] Checking for camera pi updates...
[2026-10-28 22:39:00,721.721 INFO    ] 200
[2026-10-28 22:39:00,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:39:00,769.769 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:39:00,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:39:00,852.852 INFO    ] No camera update needed
[2026-10-28 22:39:00,854.854 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:39:00,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:39:00,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:39:00,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:39:02,910.910 INFO    ] ================================================
[2026-10-28 22:39:02,928.928 INFO    ] Launching Daemon at Wed Oct 28 22:39:02 IST 2026
[2026-10-28 22:39:02,940.940 INFO    ] ================================================
[2026-10-28 22:39:03,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:39:03
[2026-10-28 22:39:04,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:39:04,354.354 INFO    ] Initializing speech engine...
[2026-10-28 22:39:04,368.368 INFO    ] 2026-10-28 22:39:04
[2026-10-28 22:39:04,634.634 INFO    ] 2026-10-28 22:39:04
[2026-10-28 22:39:04,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:39:04,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:39:04,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:39:05,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:39:05,201.201 INFO    ] time= 28/10/2026 22:39:05
[2026-10-28 22:39:05,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:39:05,228.228 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:39:05,361.361 INFO    ] No existing commands found in stream
[2026-10-28 22:39:10,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:39:10,386.386 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-10-28 22:39:11,119.119 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:39:11,121.121 INFO    ] Checking for system updates...
[2026-10-28 22:39:11,157.157 INFO    ] 200
[2026-10-28 22:39:11,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:39:11,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:39:11,222.222 INFO    ] No update needed
[2026-10-28 22:39:11,224.224 INFO    ] Checking for camera pi updates...
[2026-10-28 22:39:11,259.259 INFO    ] 200
[2026-10-28 22:39:11,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:39:11,305.305 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:39:11,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:39:11,403.403 INFO    ] No camera update needed
[2026-10-28 22:39:11,405.405 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:39:11,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:39:11,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:39:11,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:39:13,458.458 INFO    ] ================================================
[2026-10-28 22:39:13,474.474 INFO    ] Launching Daemon at Wed Oct 28 22:39:13 IST 2026
[2026-10-28 22:39:13,484.484 INFO    ] ================================================
[2026-10-28 22:39:14,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:39:14
[2026-10-28 22:39:14,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:39:14,933.933 INFO    ] Initializing speech engine...
[2026-10-28 22:39:14,942.942 INFO    ] 2026-10-28 22:39:14
[2026-10-28 22:39:15,191.191 INFO    ] 2026-10-28 22:39:15
[2026-10-28 22:39:15,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:39:15,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:39:15,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:39:15,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:39:15,755.755 INFO    ] time= 28/10/2026 22:39:15
[2026-10-28 22:39:15,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:39:15,777.777 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:39:15,908.908 INFO    ] No existing commands found in stream
[2026-10-28 22:39:20,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:39:20,926.926 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-28 22:39:24,151.151 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:39:24,154.154 INFO    ] Checking for system updates...
[2026-10-28 22:39:24,189.189 INFO    ] 200
[2026-10-28 22:39:24,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:39:24,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:39:24,246.246 INFO    ] No update needed
[2026-10-28 22:39:24,249.249 INFO    ] Checking for camera pi updates...
[2026-10-28 22:39:24,283.283 INFO    ] 200
[2026-10-28 22:39:24,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:39:24,325.325 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:39:24,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:39:24,428.428 INFO    ] No camera update needed
[2026-10-28 22:39:24,431.431 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:39:24,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:39:24,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:39:24,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:39:26,486.486 INFO    ] ================================================
[2026-10-28 22:39:26,500.500 INFO    ] Launching Daemon at Wed Oct 28 22:39:26 IST 2026
[2026-10-28 22:39:26,511.511 INFO    ] ================================================
[2026-10-28 22:39:27,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:39:27
[2026-10-28 22:39:27,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:39:27,974.974 INFO    ] Initializing speech engine...
[2026-10-28 22:39:27,984.984 INFO    ] 2026-10-28 22:39:27
[2026-10-28 22:39:28,247.247 INFO    ] 2026-10-28 22:39:28
[2026-10-28 22:39:28,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:39:28,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:39:28,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:39:28,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:39:28,846.846 INFO    ] time= 28/10/2026 22:39:28
[2026-10-28 22:39:28,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:39:28,878.878 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:39:28,991.991 INFO    ] No existing commands found in stream
[2026-10-28 22:39:34,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:39:34,013.013 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 22:39:37,764.764 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:39:37,767.767 INFO    ] Checking for system updates...
[2026-10-28 22:39:37,802.802 INFO    ] 200
[2026-10-28 22:39:37,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:39:37,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:39:37,859.859 INFO    ] No update needed
[2026-10-28 22:39:37,861.861 INFO    ] Checking for camera pi updates...
[2026-10-28 22:39:37,898.898 INFO    ] 200
[2026-10-28 22:39:37,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:39:37,941.941 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:39:38,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:39:38,022.022 INFO    ] No camera update needed
[2026-10-28 22:39:38,025.025 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:39:38,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:39:38,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:39:38,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:39:40,077.077 INFO    ] ================================================
[2026-10-28 22:39:40,092.092 INFO    ] Launching Daemon at Wed Oct 28 22:39:40 IST 2026
[2026-10-28 22:39:40,103.103 INFO    ] ================================================
[2026-10-28 22:39:40,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:39:40
[2026-10-28 22:39:41,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:39:41,519.519 INFO    ] Initializing speech engine...
[2026-10-28 22:39:41,537.537 INFO    ] 2026-10-28 22:39:41
[2026-10-28 22:39:41,784.784 INFO    ] 2026-10-28 22:39:41
[2026-10-28 22:39:41,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:39:42,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:39:42,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:39:42,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:39:42,311.311 INFO    ] time= 28/10/2026 22:39:42
[2026-10-28 22:39:42,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:39:42,342.342 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:39:42,476.476 INFO    ] No existing commands found in stream
[2026-10-28 22:39:47,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:39:47,504.504 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-10-28 22:39:50,066.066 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:39:50,069.069 INFO    ] Checking for system updates...
[2026-10-28 22:39:50,104.104 INFO    ] 200
[2026-10-28 22:39:50,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:39:50,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:39:50,167.167 INFO    ] No update needed
[2026-10-28 22:39:50,170.170 INFO    ] Checking for camera pi updates...
[2026-10-28 22:39:50,206.206 INFO    ] 200
[2026-10-28 22:39:50,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:39:50,249.249 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:39:50,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:39:50,335.335 INFO    ] No camera update needed
[2026-10-28 22:39:50,338.338 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:39:50,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:39:50,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:39:50,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:39:52,392.392 INFO    ] ================================================
[2026-10-28 22:39:52,407.407 INFO    ] Launching Daemon at Wed Oct 28 22:39:52 IST 2026
[2026-10-28 22:39:52,417.417 INFO    ] ================================================
[2026-10-28 22:39:52,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:39:52
[2026-10-28 22:39:53,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:39:53,819.819 INFO    ] Initializing speech engine...
[2026-10-28 22:39:53,832.832 INFO    ] 2026-10-28 22:39:53
[2026-10-28 22:39:54,096.096 INFO    ] 2026-10-28 22:39:54
[2026-10-28 22:39:54,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:39:54,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:39:54,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:39:54,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:39:54,664.664 INFO    ] time= 28/10/2026 22:39:54
[2026-10-28 22:39:54,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:39:54,705.705 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:39:54,844.844 INFO    ] No existing commands found in stream
[2026-10-28 22:39:59,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:39:59,872.872 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-28 22:40:02,755.755 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:40:02,759.759 INFO    ] Checking for system updates...
[2026-10-28 22:40:02,819.819 INFO    ] 200
[2026-10-28 22:40:02,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:40:02,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:40:02,892.892 INFO    ] No update needed
[2026-10-28 22:40:02,897.897 INFO    ] Checking for camera pi updates...
[2026-10-28 22:40:02,942.942 INFO    ] 200
[2026-10-28 22:40:02,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:40:02,991.991 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:40:03,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:40:03,288.288 INFO    ] No camera update needed
[2026-10-28 22:40:03,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:40:03,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:40:03,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:40:03,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:40:05,349.349 INFO    ] ================================================
[2026-10-28 22:40:05,364.364 INFO    ] Launching Daemon at Wed Oct 28 22:40:05 IST 2026
[2026-10-28 22:40:05,381.381 INFO    ] ================================================
[2026-10-28 22:40:05,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:40:05
[2026-10-28 22:40:06,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:40:06,832.832 INFO    ] Initializing speech engine...
[2026-10-28 22:40:06,839.839 INFO    ] 2026-10-28 22:40:06
[2026-10-28 22:40:07,097.097 INFO    ] 2026-10-28 22:40:07
[2026-10-28 22:40:07,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:40:07,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:40:07,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:40:07,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:40:07,680.680 INFO    ] time= 28/10/2026 22:40:07
[2026-10-28 22:40:07,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:40:07,697.697 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:40:07,868.868 INFO    ] No existing commands found in stream
[2026-10-28 22:40:12,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:40:12,901.901 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-10-28 22:40:14,680.680 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:40:14,683.683 INFO    ] Checking for system updates...
[2026-10-28 22:40:14,718.718 INFO    ] 200
[2026-10-28 22:40:14,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:40:14,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:40:14,775.775 INFO    ] No update needed
[2026-10-28 22:40:14,778.778 INFO    ] Checking for camera pi updates...
[2026-10-28 22:40:14,811.811 INFO    ] 200
[2026-10-28 22:40:14,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:40:14,860.860 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:40:14,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:40:14,939.939 INFO    ] No camera update needed
[2026-10-28 22:40:14,941.941 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:40:14,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:40:14,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:40:14,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:40:16,994.994 INFO    ] ================================================
[2026-10-28 22:40:17,010.010 INFO    ] Launching Daemon at Wed Oct 28 22:40:17 IST 2026
[2026-10-28 22:40:17,021.021 INFO    ] ================================================
[2026-10-28 22:40:17,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:40:17
[2026-10-28 22:40:18,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:40:18,454.454 INFO    ] Initializing speech engine...
[2026-10-28 22:40:18,461.461 INFO    ] 2026-10-28 22:40:18
[2026-10-28 22:40:18,722.722 INFO    ] 2026-10-28 22:40:18
[2026-10-28 22:40:18,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:40:19,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:40:19,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:40:19,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:40:19,276.276 INFO    ] time= 28/10/2026 22:40:19
[2026-10-28 22:40:19,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:40:19,313.313 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:40:19,423.423 INFO    ] No existing commands found in stream
[2026-10-28 22:40:24,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:40:24,455.455 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-10-28 22:40:27,290.290 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:40:27,292.292 INFO    ] Checking for system updates...
[2026-10-28 22:40:27,328.328 INFO    ] 200
[2026-10-28 22:40:27,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:40:27,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:40:27,384.384 INFO    ] No update needed
[2026-10-28 22:40:27,387.387 INFO    ] Checking for camera pi updates...
[2026-10-28 22:40:27,424.424 INFO    ] 200
[2026-10-28 22:40:27,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:40:27,468.468 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:40:27,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:40:27,552.552 INFO    ] No camera update needed
[2026-10-28 22:40:27,555.555 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:40:27,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:40:27,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:40:27,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:40:29,609.609 INFO    ] ================================================
[2026-10-28 22:40:29,625.625 INFO    ] Launching Daemon at Wed Oct 28 22:40:29 IST 2026
[2026-10-28 22:40:29,635.635 INFO    ] ================================================
[2026-10-28 22:40:30,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:40:30
[2026-10-28 22:40:30,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:40:31,182.182 INFO    ] Initializing speech engine...
[2026-10-28 22:40:31,192.192 INFO    ] 2026-10-28 22:40:31
[2026-10-28 22:40:31,491.491 INFO    ] 2026-10-28 22:40:31
[2026-10-28 22:40:31,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:40:31,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:40:31,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:40:32,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:40:32,063.063 INFO    ] time= 28/10/2026 22:40:32
[2026-10-28 22:40:32,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:40:32,111.111 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:40:32,240.240 INFO    ] No existing commands found in stream
[2026-10-28 22:40:37,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:40:37,268.268 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 22:40:41,515.515 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:40:41,517.517 INFO    ] Checking for system updates...
[2026-10-28 22:40:41,553.553 INFO    ] 200
[2026-10-28 22:40:41,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:40:41,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:40:41,613.613 INFO    ] No update needed
[2026-10-28 22:40:41,616.616 INFO    ] Checking for camera pi updates...
[2026-10-28 22:40:41,649.649 INFO    ] 200
[2026-10-28 22:40:41,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:40:41,692.692 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:40:41,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:40:41,797.797 INFO    ] No camera update needed
[2026-10-28 22:40:41,799.799 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:40:41,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:40:41,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:40:41,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:40:43,854.854 INFO    ] ================================================
[2026-10-28 22:40:43,875.875 INFO    ] Launching Daemon at Wed Oct 28 22:40:43 IST 2026
[2026-10-28 22:40:43,887.887 INFO    ] ================================================
[2026-10-28 22:40:44,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:40:44
[2026-10-28 22:40:45,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:40:45,312.312 INFO    ] Initializing speech engine...
[2026-10-28 22:40:45,320.320 INFO    ] 2026-10-28 22:40:45
[2026-10-28 22:40:45,577.577 INFO    ] 2026-10-28 22:40:45
[2026-10-28 22:40:45,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:40:45,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:40:45,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:40:46,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:40:46,130.130 INFO    ] time= 28/10/2026 22:40:46
[2026-10-28 22:40:46,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:40:46,170.170 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:40:46,301.301 INFO    ] No existing commands found in stream
[2026-10-28 22:40:51,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:40:51,329.329 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-28 22:40:53,049.049 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:40:53,051.051 INFO    ] Checking for system updates...
[2026-10-28 22:40:53,091.091 INFO    ] 200
[2026-10-28 22:40:53,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:40:53,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:40:53,149.149 INFO    ] No update needed
[2026-10-28 22:40:53,151.151 INFO    ] Checking for camera pi updates...
[2026-10-28 22:40:53,184.184 INFO    ] 200
[2026-10-28 22:40:53,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:40:53,228.228 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:40:53,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:40:53,315.315 INFO    ] No camera update needed
[2026-10-28 22:40:53,317.317 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:40:53,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:40:53,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:40:53,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:40:55,371.371 INFO    ] ================================================
[2026-10-28 22:40:55,386.386 INFO    ] Launching Daemon at Wed Oct 28 22:40:55 IST 2026
[2026-10-28 22:40:55,396.396 INFO    ] ================================================
[2026-10-28 22:40:56,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:40:56
[2026-10-28 22:40:56,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:40:57,051.051 INFO    ] Initializing speech engine...
[2026-10-28 22:40:57,062.062 INFO    ] 2026-10-28 22:40:57
[2026-10-28 22:40:57,379.379 INFO    ] 2026-10-28 22:40:57
[2026-10-28 22:40:57,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:40:57,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:40:57,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:40:57,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:40:57,939.939 INFO    ] time= 28/10/2026 22:40:57
[2026-10-28 22:40:57,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:40:57,955.955 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:40:58,073.073 INFO    ] No existing commands found in stream
[2026-10-28 22:41:03,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:41:03,107.107 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-10-28 22:41:05,273.273 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:41:05,277.277 INFO    ] Checking for system updates...
[2026-10-28 22:41:05,313.313 INFO    ] 200
[2026-10-28 22:41:05,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:41:05,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:41:05,379.379 INFO    ] No update needed
[2026-10-28 22:41:05,382.382 INFO    ] Checking for camera pi updates...
[2026-10-28 22:41:05,418.418 INFO    ] 200
[2026-10-28 22:41:05,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:41:05,463.463 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:41:05,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:41:05,520.520 INFO    ] No camera update needed
[2026-10-28 22:41:05,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:41:05,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:41:05,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:41:05,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:41:07,578.578 INFO    ] ================================================
[2026-10-28 22:41:07,593.593 INFO    ] Launching Daemon at Wed Oct 28 22:41:07 IST 2026
[2026-10-28 22:41:07,603.603 INFO    ] ================================================
[2026-10-28 22:41:08,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:41:08
[2026-10-28 22:41:08,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:41:09,237.237 INFO    ] Initializing speech engine...
[2026-10-28 22:41:09,247.247 INFO    ] 2026-10-28 22:41:09
[2026-10-28 22:41:09,517.517 INFO    ] 2026-10-28 22:41:09
[2026-10-28 22:41:09,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:41:09,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:41:09,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:41:10,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:41:10,073.073 INFO    ] time= 28/10/2026 22:41:10
[2026-10-28 22:41:10,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:41:10,095.095 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:41:10,231.231 INFO    ] No existing commands found in stream
[2026-10-28 22:41:15,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:41:15,246.246 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-10-28 22:41:22,185.185 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:41:22,188.188 INFO    ] Checking for system updates...
[2026-10-28 22:41:22,226.226 INFO    ] 200
[2026-10-28 22:41:22,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:41:22,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:41:22,288.288 INFO    ] No update needed
[2026-10-28 22:41:22,291.291 INFO    ] Checking for camera pi updates...
[2026-10-28 22:41:22,327.327 INFO    ] 200
[2026-10-28 22:41:22,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:41:22,381.381 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:41:22,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:41:22,439.439 INFO    ] No camera update needed
[2026-10-28 22:41:22,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:41:22,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:41:22,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:41:22,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:41:24,495.495 INFO    ] ================================================
[2026-10-28 22:41:24,510.510 INFO    ] Launching Daemon at Wed Oct 28 22:41:24 IST 2026
[2026-10-28 22:41:24,520.520 INFO    ] ================================================
[2026-10-28 22:41:25,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:41:25
[2026-10-28 22:41:25,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:41:25,978.978 INFO    ] Initializing speech engine...
[2026-10-28 22:41:25,983.983 INFO    ] 2026-10-28 22:41:25
[2026-10-28 22:41:26,232.232 INFO    ] 2026-10-28 22:41:26
[2026-10-28 22:41:26,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:41:26,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:41:26,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:41:26,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:41:26,790.790 INFO    ] time= 28/10/2026 22:41:26
[2026-10-28 22:41:26,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:41:26,836.836 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:41:26,973.973 INFO    ] No existing commands found in stream
[2026-10-28 22:41:32,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:41:32,007.007 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-28 22:41:33,514.514 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:41:33,517.517 INFO    ] Checking for system updates...
[2026-10-28 22:41:33,553.553 INFO    ] 200
[2026-10-28 22:41:33,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:41:33,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:41:33,614.614 INFO    ] No update needed
[2026-10-28 22:41:33,617.617 INFO    ] Checking for camera pi updates...
[2026-10-28 22:41:33,650.650 INFO    ] 200
[2026-10-28 22:41:33,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:41:33,693.693 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:41:33,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:41:33,794.794 INFO    ] No camera update needed
[2026-10-28 22:41:33,796.796 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:41:33,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:41:33,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:41:33,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:41:35,850.850 INFO    ] ================================================
[2026-10-28 22:41:35,866.866 INFO    ] Launching Daemon at Wed Oct 28 22:41:35 IST 2026
[2026-10-28 22:41:35,877.877 INFO    ] ================================================
[2026-10-28 22:41:36,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:41:36
[2026-10-28 22:41:37,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:41:37,307.307 INFO    ] Initializing speech engine...
[2026-10-28 22:41:37,314.314 INFO    ] 2026-10-28 22:41:37
[2026-10-28 22:41:37,572.572 INFO    ] 2026-10-28 22:41:37
[2026-10-28 22:41:37,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:41:37,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:41:37,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:41:38,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:41:38,133.133 INFO    ] time= 28/10/2026 22:41:38
[2026-10-28 22:41:38,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:41:38,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:41:38,310.310 INFO    ] No existing commands found in stream
[2026-10-28 22:41:43,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:41:43,348.348 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-10-28 22:41:43,945.945 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:41:43,948.948 INFO    ] Checking for system updates...
[2026-10-28 22:41:43,985.985 INFO    ] 200
[2026-10-28 22:41:43,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:41:44,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:41:44,056.056 INFO    ] No update needed
[2026-10-28 22:41:44,059.059 INFO    ] Checking for camera pi updates...
[2026-10-28 22:41:44,093.093 INFO    ] 200
[2026-10-28 22:41:44,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:41:44,136.136 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:41:44,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:41:44,218.218 INFO    ] No camera update needed
[2026-10-28 22:41:44,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:41:44,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:41:44,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:41:44,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:41:46,275.275 INFO    ] ================================================
[2026-10-28 22:41:46,290.290 INFO    ] Launching Daemon at Wed Oct 28 22:41:46 IST 2026
[2026-10-28 22:41:46,301.301 INFO    ] ================================================
[2026-10-28 22:41:46,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:41:46
[2026-10-28 22:41:47,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:41:47,758.758 INFO    ] Initializing speech engine...
[2026-10-28 22:41:47,768.768 INFO    ] 2026-10-28 22:41:47
[2026-10-28 22:41:48,017.017 INFO    ] 2026-10-28 22:41:48
[2026-10-28 22:41:48,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:41:48,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:41:48,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:41:48,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:41:48,578.578 INFO    ] time= 28/10/2026 22:41:48
[2026-10-28 22:41:48,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:41:48,613.613 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:41:48,750.750 INFO    ] No existing commands found in stream
[2026-10-28 22:41:53,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:41:53,778.778 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-10-28 22:41:57,883.883 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:41:57,886.886 INFO    ] Checking for system updates...
[2026-10-28 22:41:57,921.921 INFO    ] 200
[2026-10-28 22:41:57,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:41:57,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:41:57,987.987 INFO    ] No update needed
[2026-10-28 22:41:57,989.989 INFO    ] Checking for camera pi updates...
[2026-10-28 22:41:58,027.027 INFO    ] 200
[2026-10-28 22:41:58,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:41:58,074.074 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:41:58,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:41:58,157.157 INFO    ] No camera update needed
[2026-10-28 22:41:58,159.159 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:41:58,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:41:58,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:41:58,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:42:00,211.211 INFO    ] ================================================
[2026-10-28 22:42:00,226.226 INFO    ] Launching Daemon at Wed Oct 28 22:42:00 IST 2026
[2026-10-28 22:42:00,236.236 INFO    ] ================================================
[2026-10-28 22:42:00,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:42:00
[2026-10-28 22:42:01,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:42:01,991.991 INFO    ] Initializing speech engine...
[2026-10-28 22:42:01,995.995 INFO    ] 2026-10-28 22:42:01
[2026-10-28 22:42:02,361.361 INFO    ] 2026-10-28 22:42:02
[2026-10-28 22:42:02,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:42:02,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:42:02,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:42:02,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:42:03,030.030 INFO    ] time= 28/10/2026 22:42:02
[2026-10-28 22:42:03,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:42:03,151.151 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:42:03,262.262 INFO    ] No existing commands found in stream
[2026-10-28 22:42:08,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:42:08,300.300 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-10-28 22:42:12,592.592 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:42:12,595.595 INFO    ] Checking for system updates...
[2026-10-28 22:42:12,630.630 INFO    ] 200
[2026-10-28 22:42:12,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:42:12,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:42:12,687.687 INFO    ] No update needed
[2026-10-28 22:42:12,689.689 INFO    ] Checking for camera pi updates...
[2026-10-28 22:42:12,723.723 INFO    ] 200
[2026-10-28 22:42:12,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:42:12,765.765 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:42:12,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:42:12,955.955 INFO    ] No camera update needed
[2026-10-28 22:42:12,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:42:12,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:42:12,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:42:12,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:42:15,012.012 INFO    ] ================================================
[2026-10-28 22:42:15,027.027 INFO    ] Launching Daemon at Wed Oct 28 22:42:15 IST 2026
[2026-10-28 22:42:15,038.038 INFO    ] ================================================
[2026-10-28 22:42:15,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:42:15
[2026-10-28 22:42:16,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:42:16,672.672 INFO    ] Initializing speech engine...
[2026-10-28 22:42:16,677.677 INFO    ] 2026-10-28 22:42:16
[2026-10-28 22:42:16,951.951 INFO    ] 2026-10-28 22:42:16
[2026-10-28 22:42:17,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:42:17,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:42:17,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:42:17,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:42:17,523.523 INFO    ] time= 28/10/2026 22:42:17
[2026-10-28 22:42:17,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:42:17,575.575 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:42:17,712.712 INFO    ] No existing commands found in stream
[2026-10-28 22:42:22,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:42:22,747.747 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-10-28 22:42:26,718.718 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:42:26,721.721 INFO    ] Checking for system updates...
[2026-10-28 22:42:26,763.763 INFO    ] 200
[2026-10-28 22:42:26,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:42:26,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:42:26,836.836 INFO    ] No update needed
[2026-10-28 22:42:26,839.839 INFO    ] Checking for camera pi updates...
[2026-10-28 22:42:26,874.874 INFO    ] 200
[2026-10-28 22:42:26,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:42:26,920.920 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:42:27,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:42:27,013.013 INFO    ] No camera update needed
[2026-10-28 22:42:27,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:42:27,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:42:27,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:42:27,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:42:29,074.074 INFO    ] ================================================
[2026-10-28 22:42:29,089.089 INFO    ] Launching Daemon at Wed Oct 28 22:42:29 IST 2026
[2026-10-28 22:42:29,100.100 INFO    ] ================================================
[2026-10-28 22:42:29,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:42:29
[2026-10-28 22:42:30,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:42:30,553.553 INFO    ] Initializing speech engine...
[2026-10-28 22:42:30,559.559 INFO    ] 2026-10-28 22:42:30
[2026-10-28 22:42:30,821.821 INFO    ] 2026-10-28 22:42:30
[2026-10-28 22:42:30,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:42:31,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:42:31,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:42:31,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:42:31,370.370 INFO    ] time= 28/10/2026 22:42:31
[2026-10-28 22:42:31,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:42:31,412.412 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:42:31,551.551 INFO    ] No existing commands found in stream
[2026-10-28 22:42:36,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:42:36,580.580 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-28 22:42:39,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:42:39,906.906 INFO    ] Checking for system updates...
[2026-10-28 22:42:39,948.948 INFO    ] 200
[2026-10-28 22:42:39,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:42:40,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:42:40,013.013 INFO    ] No update needed
[2026-10-28 22:42:40,016.016 INFO    ] Checking for camera pi updates...
[2026-10-28 22:42:40,050.050 INFO    ] 200
[2026-10-28 22:42:40,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:42:40,093.093 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:42:40,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:42:40,175.175 INFO    ] No camera update needed
[2026-10-28 22:42:40,178.178 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:42:40,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:42:40,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:42:40,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:42:42,233.233 INFO    ] ================================================
[2026-10-28 22:42:42,248.248 INFO    ] Launching Daemon at Wed Oct 28 22:42:42 IST 2026
[2026-10-28 22:42:42,259.259 INFO    ] ================================================
[2026-10-28 22:42:42,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:42:42
[2026-10-28 22:42:43,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:42:43,697.697 INFO    ] Initializing speech engine...
[2026-10-28 22:42:43,704.704 INFO    ] 2026-10-28 22:42:43
[2026-10-28 22:42:44,007.007 INFO    ] 2026-10-28 22:42:43
[2026-10-28 22:42:44,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:42:44,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:42:44,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:42:44,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:42:44,443.443 INFO    ] time= 28/10/2026 22:42:44
[2026-10-28 22:42:44,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:42:44,519.519 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:42:44,640.640 INFO    ] No existing commands found in stream
[2026-10-28 22:42:49,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:42:49,668.668 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-10-28 22:42:51,369.369 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:42:51,372.372 INFO    ] Checking for system updates...
[2026-10-28 22:42:51,409.409 INFO    ] 200
[2026-10-28 22:42:51,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:42:51,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:42:51,466.466 INFO    ] No update needed
[2026-10-28 22:42:51,468.468 INFO    ] Checking for camera pi updates...
[2026-10-28 22:42:51,501.501 INFO    ] 200
[2026-10-28 22:42:51,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:42:51,544.544 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:42:51,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:42:51,644.644 INFO    ] No camera update needed
[2026-10-28 22:42:51,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:42:51,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:42:51,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:42:51,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:42:53,699.699 INFO    ] ================================================
[2026-10-28 22:42:53,714.714 INFO    ] Launching Daemon at Wed Oct 28 22:42:53 IST 2026
[2026-10-28 22:42:53,725.725 INFO    ] ================================================
[2026-10-28 22:42:54,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:42:54
[2026-10-28 22:42:54,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:42:55,125.125 INFO    ] Initializing speech engine...
[2026-10-28 22:42:55,133.133 INFO    ] 2026-10-28 22:42:55
[2026-10-28 22:42:55,407.407 INFO    ] 2026-10-28 22:42:55
[2026-10-28 22:42:55,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:42:55,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:42:55,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:42:55,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:42:55,975.975 INFO    ] time= 28/10/2026 22:42:55
[2026-10-28 22:42:55,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:42:56,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:42:56,133.133 INFO    ] No existing commands found in stream
[2026-10-28 22:43:01,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:43:01,165.165 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-28 22:43:03,032.032 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:43:03,036.036 INFO    ] Checking for system updates...
[2026-10-28 22:43:03,089.089 INFO    ] 200
[2026-10-28 22:43:03,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:43:03,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:43:03,150.150 INFO    ] No update needed
[2026-10-28 22:43:03,152.152 INFO    ] Checking for camera pi updates...
[2026-10-28 22:43:03,188.188 INFO    ] 200
[2026-10-28 22:43:03,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:43:03,241.241 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:43:03,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:43:03,337.337 INFO    ] No camera update needed
[2026-10-28 22:43:03,340.340 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:43:03,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:43:03,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:43:03,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:43:05,392.392 INFO    ] ================================================
[2026-10-28 22:43:05,408.408 INFO    ] Launching Daemon at Wed Oct 28 22:43:05 IST 2026
[2026-10-28 22:43:05,419.419 INFO    ] ================================================
[2026-10-28 22:43:05,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:43:05
[2026-10-28 22:43:06,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:43:06,874.874 INFO    ] Initializing speech engine...
[2026-10-28 22:43:06,884.884 INFO    ] 2026-10-28 22:43:06
[2026-10-28 22:43:07,131.131 INFO    ] 2026-10-28 22:43:07
[2026-10-28 22:43:07,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:43:07,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:43:07,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:43:07,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:43:07,688.688 INFO    ] time= 28/10/2026 22:43:07
[2026-10-28 22:43:07,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:43:07,735.735 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:43:07,843.843 INFO    ] No existing commands found in stream
[2026-10-28 22:43:12,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:43:12,861.861 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-10-28 22:43:16,809.809 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:43:16,812.812 INFO    ] Checking for system updates...
[2026-10-28 22:43:16,851.851 INFO    ] 200
[2026-10-28 22:43:16,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:43:16,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:43:16,909.909 INFO    ] No update needed
[2026-10-28 22:43:16,911.911 INFO    ] Checking for camera pi updates...
[2026-10-28 22:43:16,944.944 INFO    ] 200
[2026-10-28 22:43:16,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:43:16,988.988 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:43:17,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:43:17,074.074 INFO    ] No camera update needed
[2026-10-28 22:43:17,077.077 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:43:17,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:43:17,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:43:17,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:43:19,129.129 INFO    ] ================================================
[2026-10-28 22:43:19,144.144 INFO    ] Launching Daemon at Wed Oct 28 22:43:19 IST 2026
[2026-10-28 22:43:19,155.155 INFO    ] ================================================
[2026-10-28 22:43:19,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:43:19
[2026-10-28 22:43:20,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:43:20,599.599 INFO    ] Initializing speech engine...
[2026-10-28 22:43:20,608.608 INFO    ] 2026-10-28 22:43:20
[2026-10-28 22:43:20,871.871 INFO    ] 2026-10-28 22:43:20
[2026-10-28 22:43:20,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:43:21,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:43:21,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:43:21,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:43:21,452.452 INFO    ] time= 28/10/2026 22:43:21
[2026-10-28 22:43:21,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:43:21,472.472 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:43:21,617.617 INFO    ] No existing commands found in stream
[2026-10-28 22:43:26,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:43:26,650.650 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 22:43:29,083.083 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:43:29,086.086 INFO    ] Checking for system updates...
[2026-10-28 22:43:29,127.127 INFO    ] 200
[2026-10-28 22:43:29,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:43:29,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:43:29,195.195 INFO    ] No update needed
[2026-10-28 22:43:29,198.198 INFO    ] Checking for camera pi updates...
[2026-10-28 22:43:29,232.232 INFO    ] 200
[2026-10-28 22:43:29,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:43:29,277.277 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:43:29,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:43:29,375.375 INFO    ] No camera update needed
[2026-10-28 22:43:29,378.378 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:43:29,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:43:29,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:43:29,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:43:31,435.435 INFO    ] ================================================
[2026-10-28 22:43:31,450.450 INFO    ] Launching Daemon at Wed Oct 28 22:43:31 IST 2026
[2026-10-28 22:43:31,460.460 INFO    ] ================================================
[2026-10-28 22:43:32,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:43:32
[2026-10-28 22:43:32,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:43:32,940.940 INFO    ] Initializing speech engine...
[2026-10-28 22:43:32,969.969 INFO    ] 2026-10-28 22:43:32
[2026-10-28 22:43:33,242.242 INFO    ] 2026-10-28 22:43:33
[2026-10-28 22:43:33,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:43:33,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:43:33,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:43:33,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:43:33,816.816 INFO    ] time= 28/10/2026 22:43:33
[2026-10-28 22:43:33,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:43:33,867.867 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:43:34,000.000 INFO    ] No existing commands found in stream
[2026-10-28 22:43:39,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:43:39,040.040 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-28 22:43:41,872.872 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:43:41,876.876 INFO    ] Checking for system updates...
[2026-10-28 22:43:41,918.918 INFO    ] 200
[2026-10-28 22:43:41,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:43:41,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:43:41,976.976 INFO    ] No update needed
[2026-10-28 22:43:41,979.979 INFO    ] Checking for camera pi updates...
[2026-10-28 22:43:42,012.012 INFO    ] 200
[2026-10-28 22:43:42,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:43:42,061.061 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:43:42,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:43:42,150.150 INFO    ] No camera update needed
[2026-10-28 22:43:42,152.152 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:43:42,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:43:42,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:43:42,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:43:44,206.206 INFO    ] ================================================
[2026-10-28 22:43:44,220.220 INFO    ] Launching Daemon at Wed Oct 28 22:43:44 IST 2026
[2026-10-28 22:43:44,231.231 INFO    ] ================================================
[2026-10-28 22:43:44,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:43:44
[2026-10-28 22:43:45,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:43:45,675.675 INFO    ] Initializing speech engine...
[2026-10-28 22:43:45,697.697 INFO    ] 2026-10-28 22:43:45
[2026-10-28 22:43:45,952.952 INFO    ] 2026-10-28 22:43:45
[2026-10-28 22:43:45,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:43:46,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:43:46,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:43:46,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:43:46,511.511 INFO    ] time= 28/10/2026 22:43:46
[2026-10-28 22:43:46,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:43:46,558.558 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:43:46,664.664 INFO    ] No existing commands found in stream
[2026-10-28 22:43:51,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:43:51,679.679 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-10-28 22:43:54,805.805 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:43:54,807.807 INFO    ] Checking for system updates...
[2026-10-28 22:43:54,848.848 INFO    ] 200
[2026-10-28 22:43:54,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:43:54,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:43:54,913.913 INFO    ] No update needed
[2026-10-28 22:43:54,915.915 INFO    ] Checking for camera pi updates...
[2026-10-28 22:43:54,950.950 INFO    ] 200
[2026-10-28 22:43:54,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:43:54,996.996 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:43:55,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:43:55,080.080 INFO    ] No camera update needed
[2026-10-28 22:43:55,083.083 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:43:55,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:43:55,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:43:55,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:43:57,141.141 INFO    ] ================================================
[2026-10-28 22:43:57,158.158 INFO    ] Launching Daemon at Wed Oct 28 22:43:57 IST 2026
[2026-10-28 22:43:57,169.169 INFO    ] ================================================
[2026-10-28 22:43:57,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:43:57
[2026-10-28 22:43:58,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:43:58,634.634 INFO    ] Initializing speech engine...
[2026-10-28 22:43:58,643.643 INFO    ] 2026-10-28 22:43:58
[2026-10-28 22:43:58,946.946 INFO    ] 2026-10-28 22:43:58
[2026-10-28 22:43:58,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:43:59,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:43:59,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:43:59,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:43:59,415.415 INFO    ] time= 28/10/2026 22:43:59
[2026-10-28 22:43:59,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:43:59,480.480 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:43:59,611.611 INFO    ] No existing commands found in stream
[2026-10-28 22:44:04,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:44:04,627.627 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-10-28 22:44:06,223.223 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:44:06,226.226 INFO    ] Checking for system updates...
[2026-10-28 22:44:06,261.261 INFO    ] 200
[2026-10-28 22:44:06,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:44:06,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:44:06,320.320 INFO    ] No update needed
[2026-10-28 22:44:06,323.323 INFO    ] Checking for camera pi updates...
[2026-10-28 22:44:06,360.360 INFO    ] 200
[2026-10-28 22:44:06,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:44:06,408.408 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:44:06,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:44:06,509.509 INFO    ] No camera update needed
[2026-10-28 22:44:06,512.512 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:44:06,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:44:06,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:44:06,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:44:08,565.565 INFO    ] ================================================
[2026-10-28 22:44:08,581.581 INFO    ] Launching Daemon at Wed Oct 28 22:44:08 IST 2026
[2026-10-28 22:44:08,593.593 INFO    ] ================================================
[2026-10-28 22:44:09,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:44:09
[2026-10-28 22:44:09,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:44:10,050.050 INFO    ] Initializing speech engine...
[2026-10-28 22:44:10,059.059 INFO    ] 2026-10-28 22:44:10
[2026-10-28 22:44:10,362.362 INFO    ] 2026-10-28 22:44:10
[2026-10-28 22:44:10,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:44:10,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:44:10,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:44:10,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:44:10,872.872 INFO    ] time= 28/10/2026 22:44:10
[2026-10-28 22:44:10,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:44:10,965.965 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:44:11,149.149 INFO    ] No existing commands found in stream
[2026-10-28 22:44:16,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:44:16,175.175 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-10-28 22:44:18,720.720 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:44:18,722.722 INFO    ] Checking for system updates...
[2026-10-28 22:44:18,760.760 INFO    ] 200
[2026-10-28 22:44:18,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:44:18,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:44:18,828.828 INFO    ] No update needed
[2026-10-28 22:44:18,830.830 INFO    ] Checking for camera pi updates...
[2026-10-28 22:44:18,869.869 INFO    ] 200
[2026-10-28 22:44:18,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:44:18,913.913 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:44:19,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:44:19,097.097 INFO    ] No camera update needed
[2026-10-28 22:44:19,100.100 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:44:19,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:44:19,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:44:19,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:44:21,156.156 INFO    ] ================================================
[2026-10-28 22:44:21,171.171 INFO    ] Launching Daemon at Wed Oct 28 22:44:21 IST 2026
[2026-10-28 22:44:21,182.182 INFO    ] ================================================
[2026-10-28 22:44:21,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:44:21
[2026-10-28 22:44:22,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:44:22,579.579 INFO    ] Initializing speech engine...
[2026-10-28 22:44:22,602.602 INFO    ] 2026-10-28 22:44:22
[2026-10-28 22:44:22,858.858 INFO    ] 2026-10-28 22:44:22
[2026-10-28 22:44:22,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:44:23,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:44:23,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:44:23,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:44:23,413.413 INFO    ] time= 28/10/2026 22:44:23
[2026-10-28 22:44:23,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:44:23,459.459 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:44:23,593.593 INFO    ] No existing commands found in stream
[2026-10-28 22:44:28,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:44:28,626.626 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-10-28 22:44:30,085.085 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:44:30,088.088 INFO    ] Checking for system updates...
[2026-10-28 22:44:30,128.128 INFO    ] 200
[2026-10-28 22:44:30,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:44:30,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:44:30,187.187 INFO    ] No update needed
[2026-10-28 22:44:30,190.190 INFO    ] Checking for camera pi updates...
[2026-10-28 22:44:30,225.225 INFO    ] 200
[2026-10-28 22:44:30,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:44:30,289.289 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:44:30,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:44:30,372.372 INFO    ] No camera update needed
[2026-10-28 22:44:30,375.375 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:44:30,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:44:30,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:44:30,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:44:32,434.434 INFO    ] ================================================
[2026-10-28 22:44:32,452.452 INFO    ] Launching Daemon at Wed Oct 28 22:44:32 IST 2026
[2026-10-28 22:44:32,464.464 INFO    ] ================================================
[2026-10-28 22:44:33,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:44:33
[2026-10-28 22:44:33,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:44:34,042.042 INFO    ] Initializing speech engine...
[2026-10-28 22:44:34,055.055 INFO    ] 2026-10-28 22:44:34
[2026-10-28 22:44:34,369.369 INFO    ] 2026-10-28 22:44:34
[2026-10-28 22:44:34,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:44:34,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:44:34,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:44:35,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:44:35,147.147 INFO    ] time= 28/10/2026 22:44:35
[2026-10-28 22:44:35,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:44:35,264.264 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:44:35,447.447 INFO    ] No existing commands found in stream
[2026-10-28 22:44:40,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:44:40,466.466 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-10-28 22:44:41,462.462 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:44:41,465.465 INFO    ] Checking for system updates...
[2026-10-28 22:44:41,500.500 INFO    ] 200
[2026-10-28 22:44:41,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:44:41,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:44:41,558.558 INFO    ] No update needed
[2026-10-28 22:44:41,560.560 INFO    ] Checking for camera pi updates...
[2026-10-28 22:44:41,594.594 INFO    ] 200
[2026-10-28 22:44:41,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:44:41,642.642 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:44:41,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:44:41,716.716 INFO    ] No camera update needed
[2026-10-28 22:44:41,718.718 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:44:41,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:44:41,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:44:41,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:44:43,771.771 INFO    ] ================================================
[2026-10-28 22:44:43,786.786 INFO    ] Launching Daemon at Wed Oct 28 22:44:43 IST 2026
[2026-10-28 22:44:43,798.798 INFO    ] ================================================
[2026-10-28 22:44:44,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:44:44
[2026-10-28 22:44:44,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:44:45,204.204 INFO    ] Initializing speech engine...
[2026-10-28 22:44:45,214.214 INFO    ] 2026-10-28 22:44:45
[2026-10-28 22:44:45,495.495 INFO    ] 2026-10-28 22:44:45
[2026-10-28 22:44:45,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:44:45,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:44:45,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:44:46,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:44:46,053.053 INFO    ] time= 28/10/2026 22:44:46
[2026-10-28 22:44:46,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:44:46,077.077 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:44:46,191.191 INFO    ] No existing commands found in stream
[2026-10-28 22:44:51,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:44:51,218.218 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-10-28 22:44:52,624.624 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:44:52,627.627 INFO    ] Checking for system updates...
[2026-10-28 22:44:52,666.666 INFO    ] 200
[2026-10-28 22:44:52,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:44:52,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:44:52,722.722 INFO    ] No update needed
[2026-10-28 22:44:52,724.724 INFO    ] Checking for camera pi updates...
[2026-10-28 22:44:52,761.761 INFO    ] 200
[2026-10-28 22:44:52,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:44:52,808.808 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:44:52,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:44:52,895.895 INFO    ] No camera update needed
[2026-10-28 22:44:52,898.898 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:44:52,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:44:52,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:44:52,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:44:54,952.952 INFO    ] ================================================
[2026-10-28 22:44:54,968.968 INFO    ] Launching Daemon at Wed Oct 28 22:44:54 IST 2026
[2026-10-28 22:44:54,979.979 INFO    ] ================================================
[2026-10-28 22:44:55,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:44:55
[2026-10-28 22:44:56,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:44:56,398.398 INFO    ] Initializing speech engine...
[2026-10-28 22:44:56,407.407 INFO    ] 2026-10-28 22:44:56
[2026-10-28 22:44:56,653.653 INFO    ] 2026-10-28 22:44:56
[2026-10-28 22:44:56,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:44:56,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:44:56,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:44:57,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:44:57,207.207 INFO    ] time= 28/10/2026 22:44:57
[2026-10-28 22:44:57,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:44:57,254.254 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:44:57,430.430 INFO    ] No existing commands found in stream
[2026-10-28 22:45:02,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:45:02,465.465 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-28 22:45:05,149.149 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:45:05,152.152 INFO    ] Checking for system updates...
[2026-10-28 22:45:05,188.188 INFO    ] 200
[2026-10-28 22:45:05,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:45:05,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:45:05,246.246 INFO    ] No update needed
[2026-10-28 22:45:05,248.248 INFO    ] Checking for camera pi updates...
[2026-10-28 22:45:05,281.281 INFO    ] 200
[2026-10-28 22:45:05,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:45:05,326.326 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:45:05,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:45:05,409.409 INFO    ] No camera update needed
[2026-10-28 22:45:05,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:45:05,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:45:05,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:45:05,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:45:07,470.470 INFO    ] ================================================
[2026-10-28 22:45:07,485.485 INFO    ] Launching Daemon at Wed Oct 28 22:45:07 IST 2026
[2026-10-28 22:45:07,495.495 INFO    ] ================================================
[2026-10-28 22:45:08,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:45:08
[2026-10-28 22:45:08,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:45:08,920.920 INFO    ] Initializing speech engine...
[2026-10-28 22:45:08,928.928 INFO    ] 2026-10-28 22:45:08
[2026-10-28 22:45:09,179.179 INFO    ] 2026-10-28 22:45:09
[2026-10-28 22:45:09,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:45:09,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:45:09,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:45:09,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:45:09,752.752 INFO    ] time= 28/10/2026 22:45:09
[2026-10-28 22:45:09,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:45:09,776.776 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:45:09,925.925 INFO    ] No existing commands found in stream
[2026-10-28 22:45:14,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:45:14,959.959 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-10-28 22:45:17,944.944 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:45:17,947.947 INFO    ] Checking for system updates...
[2026-10-28 22:45:17,986.986 INFO    ] 200
[2026-10-28 22:45:17,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:45:18,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:45:18,048.048 INFO    ] No update needed
[2026-10-28 22:45:18,050.050 INFO    ] Checking for camera pi updates...
[2026-10-28 22:45:18,086.086 INFO    ] 200
[2026-10-28 22:45:18,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:45:18,129.129 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:45:18,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:45:18,212.212 INFO    ] No camera update needed
[2026-10-28 22:45:18,215.215 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:45:18,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:45:18,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:45:18,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:45:20,267.267 INFO    ] ================================================
[2026-10-28 22:45:20,282.282 INFO    ] Launching Daemon at Wed Oct 28 22:45:20 IST 2026
[2026-10-28 22:45:20,293.293 INFO    ] ================================================
[2026-10-28 22:45:20,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:45:20
[2026-10-28 22:45:21,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:45:21,706.706 INFO    ] Initializing speech engine...
[2026-10-28 22:45:21,715.715 INFO    ] 2026-10-28 22:45:21
[2026-10-28 22:45:22,009.009 INFO    ] 2026-10-28 22:45:21
[2026-10-28 22:45:22,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:45:22,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:45:22,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:45:22,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:45:22,511.511 INFO    ] time= 28/10/2026 22:45:22
[2026-10-28 22:45:22,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:45:22,625.625 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:45:22,721.721 INFO    ] No existing commands found in stream
[2026-10-28 22:45:27,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:45:27,738.738 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 22:45:29,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:45:29,305.305 INFO    ] Checking for system updates...
[2026-10-28 22:45:29,345.345 INFO    ] 200
[2026-10-28 22:45:29,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:45:29,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:45:29,402.402 INFO    ] No update needed
[2026-10-28 22:45:29,405.405 INFO    ] Checking for camera pi updates...
[2026-10-28 22:45:29,442.442 INFO    ] 200
[2026-10-28 22:45:29,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:45:29,485.485 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:45:29,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:45:29,546.546 INFO    ] No camera update needed
[2026-10-28 22:45:29,548.548 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:45:29,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:45:29,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:45:29,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:45:31,602.602 INFO    ] ================================================
[2026-10-28 22:45:31,617.617 INFO    ] Launching Daemon at Wed Oct 28 22:45:31 IST 2026
[2026-10-28 22:45:31,628.628 INFO    ] ================================================
[2026-10-28 22:45:32,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:45:32
[2026-10-28 22:45:32,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:45:33,111.111 INFO    ] Initializing speech engine...
[2026-10-28 22:45:33,125.125 INFO    ] 2026-10-28 22:45:33
[2026-10-28 22:45:33,479.479 INFO    ] 2026-10-28 22:45:33
[2026-10-28 22:45:33,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:45:33,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:45:33,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:45:34,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:45:34,098.098 INFO    ] time= 28/10/2026 22:45:34
[2026-10-28 22:45:34,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:45:34,148.148 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:45:34,295.295 INFO    ] No existing commands found in stream
[2026-10-28 22:45:39,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:45:39,324.324 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-28 22:45:43,102.102 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:45:43,105.105 INFO    ] Checking for system updates...
[2026-10-28 22:45:43,141.141 INFO    ] 200
[2026-10-28 22:45:43,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:45:43,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:45:43,199.199 INFO    ] No update needed
[2026-10-28 22:45:43,202.202 INFO    ] Checking for camera pi updates...
[2026-10-28 22:45:43,237.237 INFO    ] 200
[2026-10-28 22:45:43,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:45:43,282.282 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:45:43,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:45:43,367.367 INFO    ] No camera update needed
[2026-10-28 22:45:43,370.370 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:45:43,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:45:43,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:45:43,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:45:45,428.428 INFO    ] ================================================
[2026-10-28 22:45:45,443.443 INFO    ] Launching Daemon at Wed Oct 28 22:45:45 IST 2026
[2026-10-28 22:45:45,454.454 INFO    ] ================================================
[2026-10-28 22:45:46,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:45:46
[2026-10-28 22:45:46,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:45:46,862.862 INFO    ] Initializing speech engine...
[2026-10-28 22:45:46,870.870 INFO    ] 2026-10-28 22:45:46
[2026-10-28 22:45:47,162.162 INFO    ] 2026-10-28 22:45:47
[2026-10-28 22:45:47,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:45:47,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:45:47,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:45:47,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:45:47,785.785 INFO    ] time= 28/10/2026 22:45:47
[2026-10-28 22:45:47,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:45:47,811.811 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:45:47,962.962 INFO    ] No existing commands found in stream
[2026-10-28 22:45:52,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:45:52,984.984 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 22:45:53,724.724 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:45:53,726.726 INFO    ] Checking for system updates...
[2026-10-28 22:45:53,762.762 INFO    ] 200
[2026-10-28 22:45:53,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:45:53,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:45:53,826.826 INFO    ] No update needed
[2026-10-28 22:45:53,829.829 INFO    ] Checking for camera pi updates...
[2026-10-28 22:45:53,865.865 INFO    ] 200
[2026-10-28 22:45:53,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:45:53,912.912 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:45:53,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:45:53,998.998 INFO    ] No camera update needed
[2026-10-28 22:45:54,000.000 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:45:54,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:45:54,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:45:54,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:45:56,057.057 INFO    ] ================================================
[2026-10-28 22:45:56,072.072 INFO    ] Launching Daemon at Wed Oct 28 22:45:56 IST 2026
[2026-10-28 22:45:56,083.083 INFO    ] ================================================
[2026-10-28 22:45:56,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:45:56
[2026-10-28 22:45:57,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:45:57,511.511 INFO    ] Initializing speech engine...
[2026-10-28 22:45:57,519.519 INFO    ] 2026-10-28 22:45:57
[2026-10-28 22:45:57,767.767 INFO    ] 2026-10-28 22:45:57
[2026-10-28 22:45:57,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:45:58,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:45:58,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:45:58,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:45:58,322.322 INFO    ] time= 28/10/2026 22:45:58
[2026-10-28 22:45:58,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:45:58,369.369 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:45:58,509.509 INFO    ] No existing commands found in stream
[2026-10-28 22:46:03,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:46:03,538.538 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 22:46:05,712.712 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:46:05,714.714 INFO    ] Checking for system updates...
[2026-10-28 22:46:05,750.750 INFO    ] 200
[2026-10-28 22:46:05,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:46:05,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:46:05,815.815 INFO    ] No update needed
[2026-10-28 22:46:05,817.817 INFO    ] Checking for camera pi updates...
[2026-10-28 22:46:05,851.851 INFO    ] 200
[2026-10-28 22:46:05,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:46:05,895.895 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:46:05,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:46:05,982.982 INFO    ] No camera update needed
[2026-10-28 22:46:05,985.985 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:46:05,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:46:05,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:46:06,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:46:08,042.042 INFO    ] ================================================
[2026-10-28 22:46:08,058.058 INFO    ] Launching Daemon at Wed Oct 28 22:46:08 IST 2026
[2026-10-28 22:46:08,069.069 INFO    ] ================================================
[2026-10-28 22:46:08,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:46:08
[2026-10-28 22:46:09,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:46:09,535.535 INFO    ] Initializing speech engine...
[2026-10-28 22:46:09,544.544 INFO    ] 2026-10-28 22:46:09
[2026-10-28 22:46:09,793.793 INFO    ] 2026-10-28 22:46:09
[2026-10-28 22:46:09,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:46:10,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:46:10,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:46:10,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:46:10,350.350 INFO    ] time= 28/10/2026 22:46:10
[2026-10-28 22:46:10,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:46:10,395.395 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:46:10,512.512 INFO    ] No existing commands found in stream
[2026-10-28 22:46:15,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:46:15,549.549 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-10-28 22:46:16,704.704 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:46:16,707.707 INFO    ] Checking for system updates...
[2026-10-28 22:46:16,742.742 INFO    ] 200
[2026-10-28 22:46:16,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:46:16,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:46:16,801.801 INFO    ] No update needed
[2026-10-28 22:46:16,803.803 INFO    ] Checking for camera pi updates...
[2026-10-28 22:46:16,837.837 INFO    ] 200
[2026-10-28 22:46:16,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:46:16,886.886 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:46:16,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:46:16,969.969 INFO    ] No camera update needed
[2026-10-28 22:46:16,971.971 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:46:16,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:46:16,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:46:16,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:46:19,025.025 INFO    ] ================================================
[2026-10-28 22:46:19,040.040 INFO    ] Launching Daemon at Wed Oct 28 22:46:19 IST 2026
[2026-10-28 22:46:19,050.050 INFO    ] ================================================
[2026-10-28 22:46:19,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:46:19
[2026-10-28 22:46:20,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:46:20,496.496 INFO    ] Initializing speech engine...
[2026-10-28 22:46:20,503.503 INFO    ] 2026-10-28 22:46:20
[2026-10-28 22:46:20,745.745 INFO    ] 2026-10-28 22:46:20
[2026-10-28 22:46:20,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:46:21,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:46:21,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:46:21,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:46:21,277.277 INFO    ] time= 28/10/2026 22:46:21
[2026-10-28 22:46:21,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:46:21,377.377 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:46:21,470.470 INFO    ] No existing commands found in stream
[2026-10-28 22:46:26,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:46:26,486.486 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-28 22:46:30,908.908 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:46:30,911.911 INFO    ] Checking for system updates...
[2026-10-28 22:46:30,951.951 INFO    ] 200
[2026-10-28 22:46:30,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:46:31,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:46:31,008.008 INFO    ] No update needed
[2026-10-28 22:46:31,010.010 INFO    ] Checking for camera pi updates...
[2026-10-28 22:46:31,052.052 INFO    ] 200
[2026-10-28 22:46:31,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:46:31,095.095 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:46:31,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:46:31,289.289 INFO    ] No camera update needed
[2026-10-28 22:46:31,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:46:31,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:46:31,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:46:31,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:46:33,348.348 INFO    ] ================================================
[2026-10-28 22:46:33,363.363 INFO    ] Launching Daemon at Wed Oct 28 22:46:33 IST 2026
[2026-10-28 22:46:33,373.373 INFO    ] ================================================
[2026-10-28 22:46:33,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:46:33
[2026-10-28 22:46:34,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:46:34,810.810 INFO    ] Initializing speech engine...
[2026-10-28 22:46:34,819.819 INFO    ] 2026-10-28 22:46:34
[2026-10-28 22:46:35,069.069 INFO    ] 2026-10-28 22:46:35
[2026-10-28 22:46:35,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:46:35,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:46:35,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:46:35,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:46:35,644.644 INFO    ] time= 28/10/2026 22:46:35
[2026-10-28 22:46:35,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:46:35,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:46:35,813.813 INFO    ] No existing commands found in stream
[2026-10-28 22:46:40,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:46:40,840.840 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 22:46:43,744.744 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:46:43,747.747 INFO    ] Checking for system updates...
[2026-10-28 22:46:43,787.787 INFO    ] 200
[2026-10-28 22:46:43,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:46:43,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:46:43,844.844 INFO    ] No update needed
[2026-10-28 22:46:43,846.846 INFO    ] Checking for camera pi updates...
[2026-10-28 22:46:43,880.880 INFO    ] 200
[2026-10-28 22:46:43,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:46:43,923.923 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:46:43,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:46:44,001.001 INFO    ] No camera update needed
[2026-10-28 22:46:44,004.004 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:46:44,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:46:44,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:46:44,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:46:46,058.058 INFO    ] ================================================
[2026-10-28 22:46:46,073.073 INFO    ] Launching Daemon at Wed Oct 28 22:46:46 IST 2026
[2026-10-28 22:46:46,084.084 INFO    ] ================================================
[2026-10-28 22:46:46,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:46:46
[2026-10-28 22:46:47,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:46:47,713.713 INFO    ] Initializing speech engine...
[2026-10-28 22:46:47,720.720 INFO    ] 2026-10-28 22:46:47
[2026-10-28 22:46:48,021.021 INFO    ] 2026-10-28 22:46:47
[2026-10-28 22:46:48,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:46:48,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:46:48,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:46:48,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:46:48,456.456 INFO    ] time= 28/10/2026 22:46:48
[2026-10-28 22:46:48,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:46:48,468.468 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:46:48,595.595 INFO    ] No existing commands found in stream
[2026-10-28 22:46:53,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:46:53,623.623 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-10-28 22:46:57,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:46:57,080.080 INFO    ] Checking for system updates...
[2026-10-28 22:46:57,115.115 INFO    ] 200
[2026-10-28 22:46:57,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:46:57,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:46:57,174.174 INFO    ] No update needed
[2026-10-28 22:46:57,176.176 INFO    ] Checking for camera pi updates...
[2026-10-28 22:46:57,210.210 INFO    ] 200
[2026-10-28 22:46:57,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:46:57,253.253 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:46:57,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:46:57,342.342 INFO    ] No camera update needed
[2026-10-28 22:46:57,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:46:57,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:46:57,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:46:57,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:46:59,396.396 INFO    ] ================================================
[2026-10-28 22:46:59,411.411 INFO    ] Launching Daemon at Wed Oct 28 22:46:59 IST 2026
[2026-10-28 22:46:59,421.421 INFO    ] ================================================
[2026-10-28 22:47:00,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:47:00
[2026-10-28 22:47:00,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:47:01,090.090 INFO    ] Initializing speech engine...
[2026-10-28 22:47:01,099.099 INFO    ] 2026-10-28 22:47:01
[2026-10-28 22:47:01,384.384 INFO    ] 2026-10-28 22:47:01
[2026-10-28 22:47:01,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:47:01,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:47:01,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:47:01,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:47:01,990.990 INFO    ] time= 28/10/2026 22:47:01
[2026-10-28 22:47:01,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:47:02,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:47:02,098.098 INFO    ] No existing commands found in stream
[2026-10-28 22:47:07,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:47:07,109.109 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-10-28 22:47:09,159.159 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:47:09,162.162 INFO    ] Checking for system updates...
[2026-10-28 22:47:09,203.203 INFO    ] 200
[2026-10-28 22:47:09,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:47:09,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:47:09,270.270 INFO    ] No update needed
[2026-10-28 22:47:09,273.273 INFO    ] Checking for camera pi updates...
[2026-10-28 22:47:09,315.315 INFO    ] 200
[2026-10-28 22:47:09,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:47:09,368.368 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:47:09,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:47:09,454.454 INFO    ] No camera update needed
[2026-10-28 22:47:09,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:47:09,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:47:09,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:47:09,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:47:11,513.513 INFO    ] ================================================
[2026-10-28 22:47:11,529.529 INFO    ] Launching Daemon at Wed Oct 28 22:47:11 IST 2026
[2026-10-28 22:47:11,540.540 INFO    ] ================================================
[2026-10-28 22:47:12,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:47:12
[2026-10-28 22:47:12,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:47:13,293.293 INFO    ] Initializing speech engine...
[2026-10-28 22:47:13,305.305 INFO    ] 2026-10-28 22:47:13
[2026-10-28 22:47:13,608.608 INFO    ] 2026-10-28 22:47:13
[2026-10-28 22:47:13,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:47:13,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:47:13,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:47:14,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:47:14,217.217 INFO    ] time= 28/10/2026 22:47:14
[2026-10-28 22:47:14,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:47:14,277.277 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:47:14,442.442 INFO    ] No existing commands found in stream
[2026-10-28 22:47:19,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:47:19,460.460 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-10-28 22:47:21,222.222 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:47:21,225.225 INFO    ] Checking for system updates...
[2026-10-28 22:47:21,260.260 INFO    ] 200
[2026-10-28 22:47:21,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:47:21,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:47:21,318.318 INFO    ] No update needed
[2026-10-28 22:47:21,320.320 INFO    ] Checking for camera pi updates...
[2026-10-28 22:47:21,354.354 INFO    ] 200
[2026-10-28 22:47:21,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:47:21,397.397 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:47:21,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:47:21,484.484 INFO    ] No camera update needed
[2026-10-28 22:47:21,486.486 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:47:21,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:47:21,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:47:21,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:47:23,539.539 INFO    ] ================================================
[2026-10-28 22:47:23,554.554 INFO    ] Launching Daemon at Wed Oct 28 22:47:23 IST 2026
[2026-10-28 22:47:23,565.565 INFO    ] ================================================
[2026-10-28 22:47:24,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:47:24
[2026-10-28 22:47:24,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:47:25,035.035 INFO    ] Initializing speech engine...
[2026-10-28 22:47:25,043.043 INFO    ] 2026-10-28 22:47:25
[2026-10-28 22:47:25,303.303 INFO    ] 2026-10-28 22:47:25
[2026-10-28 22:47:25,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:47:25,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:47:25,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:47:25,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:47:25,853.853 INFO    ] time= 28/10/2026 22:47:25
[2026-10-28 22:47:25,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:47:25,883.883 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:47:26,021.021 INFO    ] No existing commands found in stream
[2026-10-28 22:47:31,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:47:31,054.054 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-10-28 22:47:33,045.045 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:47:33,048.048 INFO    ] Checking for system updates...
[2026-10-28 22:47:33,086.086 INFO    ] 200
[2026-10-28 22:47:33,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:47:33,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:47:33,153.153 INFO    ] No update needed
[2026-10-28 22:47:33,156.156 INFO    ] Checking for camera pi updates...
[2026-10-28 22:47:33,191.191 INFO    ] 200
[2026-10-28 22:47:33,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:47:33,235.235 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:47:33,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:47:33,318.318 INFO    ] No camera update needed
[2026-10-28 22:47:33,321.321 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:47:33,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:47:33,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:47:33,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:47:35,379.379 INFO    ] ================================================
[2026-10-28 22:47:35,394.394 INFO    ] Launching Daemon at Wed Oct 28 22:47:35 IST 2026
[2026-10-28 22:47:35,405.405 INFO    ] ================================================
[2026-10-28 22:47:36,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:47:36
[2026-10-28 22:47:36,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:47:37,060.060 INFO    ] Initializing speech engine...
[2026-10-28 22:47:37,068.068 INFO    ] 2026-10-28 22:47:37
[2026-10-28 22:47:37,344.344 INFO    ] 2026-10-28 22:47:37
[2026-10-28 22:47:37,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:47:37,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:47:37,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:47:37,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:47:37,929.929 INFO    ] time= 28/10/2026 22:47:37
[2026-10-28 22:47:37,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:47:37,971.971 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:47:38,116.116 INFO    ] No existing commands found in stream
[2026-10-28 22:47:43,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:47:43,150.150 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-28 22:47:47,704.704 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:47:47,707.707 INFO    ] Checking for system updates...
[2026-10-28 22:47:47,749.749 INFO    ] 200
[2026-10-28 22:47:47,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:47:47,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:47:47,809.809 INFO    ] No update needed
[2026-10-28 22:47:47,812.812 INFO    ] Checking for camera pi updates...
[2026-10-28 22:47:47,846.846 INFO    ] 200
[2026-10-28 22:47:47,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:47:47,896.896 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:47:47,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:47:47,990.990 INFO    ] No camera update needed
[2026-10-28 22:47:47,993.993 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:47:47,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:47:48,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:47:48,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:47:50,048.048 INFO    ] ================================================
[2026-10-28 22:47:50,063.063 INFO    ] Launching Daemon at Wed Oct 28 22:47:50 IST 2026
[2026-10-28 22:47:50,074.074 INFO    ] ================================================
[2026-10-28 22:47:50,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:47:50
[2026-10-28 22:47:51,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:47:51,737.737 INFO    ] Initializing speech engine...
[2026-10-28 22:47:51,748.748 INFO    ] 2026-10-28 22:47:51
[2026-10-28 22:47:52,067.067 INFO    ] 2026-10-28 22:47:52
[2026-10-28 22:47:52,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:47:52,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:47:52,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:47:52,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:47:52,627.627 INFO    ] time= 28/10/2026 22:47:52
[2026-10-28 22:47:52,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:47:52,657.657 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:47:52,824.824 INFO    ] No existing commands found in stream
[2026-10-28 22:47:57,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:47:57,855.855 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-10-28 22:48:02,200.200 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:48:02,203.203 INFO    ] Checking for system updates...
[2026-10-28 22:48:02,250.250 INFO    ] 200
[2026-10-28 22:48:02,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:48:02,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:48:02,317.317 INFO    ] No update needed
[2026-10-28 22:48:02,321.321 INFO    ] Checking for camera pi updates...
[2026-10-28 22:48:02,362.362 INFO    ] 200
[2026-10-28 22:48:02,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:48:02,411.411 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:48:02,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:48:02,511.511 INFO    ] No camera update needed
[2026-10-28 22:48:02,514.514 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:48:02,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:48:02,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:48:02,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:48:04,577.577 INFO    ] ================================================
[2026-10-28 22:48:04,592.592 INFO    ] Launching Daemon at Wed Oct 28 22:48:04 IST 2026
[2026-10-28 22:48:04,603.603 INFO    ] ================================================
[2026-10-28 22:48:05,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:48:05
[2026-10-28 22:48:05,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:48:06,078.078 INFO    ] Initializing speech engine...
[2026-10-28 22:48:06,085.085 INFO    ] 2026-10-28 22:48:06
[2026-10-28 22:48:06,350.350 INFO    ] 2026-10-28 22:48:06
[2026-10-28 22:48:06,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:48:06,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:48:06,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:48:07,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:48:07,060.060 INFO    ] time= 28/10/2026 22:48:07
[2026-10-28 22:48:07,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:48:07,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:48:07,287.287 INFO    ] No existing commands found in stream
[2026-10-28 22:48:12,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:48:12,307.307 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 22:48:12,989.989 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:48:12,991.991 INFO    ] Checking for system updates...
[2026-10-28 22:48:13,027.027 INFO    ] 200
[2026-10-28 22:48:13,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:48:13,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:48:13,084.084 INFO    ] No update needed
[2026-10-28 22:48:13,086.086 INFO    ] Checking for camera pi updates...
[2026-10-28 22:48:13,119.119 INFO    ] 200
[2026-10-28 22:48:13,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:48:13,162.162 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:48:13,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:48:13,267.267 INFO    ] No camera update needed
[2026-10-28 22:48:13,270.270 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:48:13,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:48:13,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:48:13,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:48:15,324.324 INFO    ] ================================================
[2026-10-28 22:48:15,339.339 INFO    ] Launching Daemon at Wed Oct 28 22:48:15 IST 2026
[2026-10-28 22:48:15,349.349 INFO    ] ================================================
[2026-10-28 22:48:15,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:48:15
[2026-10-28 22:48:16,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:48:16,852.852 INFO    ] Initializing speech engine...
[2026-10-28 22:48:16,861.861 INFO    ] 2026-10-28 22:48:16
[2026-10-28 22:48:17,152.152 INFO    ] 2026-10-28 22:48:17
[2026-10-28 22:48:17,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:48:17,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:48:17,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:48:17,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:48:17,709.709 INFO    ] time= 28/10/2026 22:48:17
[2026-10-28 22:48:17,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:48:17,747.747 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:48:17,893.893 INFO    ] No existing commands found in stream
[2026-10-28 22:48:22,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:48:22,932.932 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-28 22:48:25,668.668 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:48:25,671.671 INFO    ] Checking for system updates...
[2026-10-28 22:48:25,708.708 INFO    ] 200
[2026-10-28 22:48:25,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:48:25,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:48:25,764.764 INFO    ] No update needed
[2026-10-28 22:48:25,767.767 INFO    ] Checking for camera pi updates...
[2026-10-28 22:48:25,801.801 INFO    ] 200
[2026-10-28 22:48:25,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:48:25,849.849 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:48:25,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:48:25,929.929 INFO    ] No camera update needed
[2026-10-28 22:48:25,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:48:25,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:48:25,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:48:25,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:48:27,985.985 INFO    ] ================================================
[2026-10-28 22:48:28,000.000 INFO    ] Launching Daemon at Wed Oct 28 22:48:27 IST 2026
[2026-10-28 22:48:28,011.011 INFO    ] ================================================
[2026-10-28 22:48:28,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:48:28
[2026-10-28 22:48:29,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:48:29,636.636 INFO    ] Initializing speech engine...
[2026-10-28 22:48:29,644.644 INFO    ] 2026-10-28 22:48:29
[2026-10-28 22:48:29,936.936 INFO    ] 2026-10-28 22:48:29
[2026-10-28 22:48:30,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:48:30,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:48:30,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:48:30,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:48:30,672.672 INFO    ] time= 28/10/2026 22:48:30
[2026-10-28 22:48:30,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:48:30,773.773 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:48:30,901.901 INFO    ] No existing commands found in stream
[2026-10-28 22:48:35,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:48:35,922.922 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-28 22:48:40,389.389 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:48:40,391.391 INFO    ] Checking for system updates...
[2026-10-28 22:48:40,429.429 INFO    ] 200
[2026-10-28 22:48:40,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:48:40,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:48:40,489.489 INFO    ] No update needed
[2026-10-28 22:48:40,491.491 INFO    ] Checking for camera pi updates...
[2026-10-28 22:48:40,529.529 INFO    ] 200
[2026-10-28 22:48:40,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:48:40,578.578 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:48:40,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:48:40,761.761 INFO    ] No camera update needed
[2026-10-28 22:48:40,764.764 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:48:40,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:48:40,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:48:40,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:48:42,820.820 INFO    ] ================================================
[2026-10-28 22:48:42,837.837 INFO    ] Launching Daemon at Wed Oct 28 22:48:42 IST 2026
[2026-10-28 22:48:42,847.847 INFO    ] ================================================
[2026-10-28 22:48:43,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:48:43
[2026-10-28 22:48:44,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:48:44,269.269 INFO    ] Initializing speech engine...
[2026-10-28 22:48:44,278.278 INFO    ] 2026-10-28 22:48:44
[2026-10-28 22:48:44,524.524 INFO    ] 2026-10-28 22:48:44
[2026-10-28 22:48:44,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:48:44,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:48:44,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:48:45,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:48:45,077.077 INFO    ] time= 28/10/2026 22:48:45
[2026-10-28 22:48:45,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:48:45,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:48:45,230.230 INFO    ] No existing commands found in stream
[2026-10-28 22:48:50,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:48:50,246.246 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-10-28 22:48:51,838.838 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:48:51,841.841 INFO    ] Checking for system updates...
[2026-10-28 22:48:51,882.882 INFO    ] 200
[2026-10-28 22:48:51,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:48:51,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:48:51,946.946 INFO    ] No update needed
[2026-10-28 22:48:51,949.949 INFO    ] Checking for camera pi updates...
[2026-10-28 22:48:51,984.984 INFO    ] 200
[2026-10-28 22:48:51,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:48:52,027.027 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:48:52,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:48:52,118.118 INFO    ] No camera update needed
[2026-10-28 22:48:52,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:48:52,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:48:52,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:48:52,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:48:54,176.176 INFO    ] ================================================
[2026-10-28 22:48:54,191.191 INFO    ] Launching Daemon at Wed Oct 28 22:48:54 IST 2026
[2026-10-28 22:48:54,202.202 INFO    ] ================================================
[2026-10-28 22:48:54,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:48:54
[2026-10-28 22:48:55,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:48:55,696.696 INFO    ] Initializing speech engine...
[2026-10-28 22:48:55,706.706 INFO    ] 2026-10-28 22:48:55
[2026-10-28 22:48:55,952.952 INFO    ] 2026-10-28 22:48:55
[2026-10-28 22:48:55,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:48:56,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:48:56,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:48:56,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:48:56,540.540 INFO    ] time= 28/10/2026 22:48:56
[2026-10-28 22:48:56,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:48:56,570.570 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:48:56,741.741 INFO    ] No existing commands found in stream
[2026-10-28 22:49:01,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:49:01,769.769 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-28 22:49:03,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:49:03,208.208 INFO    ] Checking for system updates...
[2026-10-28 22:49:03,245.245 INFO    ] 200
[2026-10-28 22:49:03,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:49:03,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:49:03,306.306 INFO    ] No update needed
[2026-10-28 22:49:03,310.310 INFO    ] Checking for camera pi updates...
[2026-10-28 22:49:03,355.355 INFO    ] 200
[2026-10-28 22:49:03,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:49:03,414.414 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:49:03,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:49:03,473.473 INFO    ] No camera update needed
[2026-10-28 22:49:03,476.476 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:49:03,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:49:03,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:49:03,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:49:05,528.528 INFO    ] ================================================
[2026-10-28 22:49:05,542.542 INFO    ] Launching Daemon at Wed Oct 28 22:49:05 IST 2026
[2026-10-28 22:49:05,553.553 INFO    ] ================================================
[2026-10-28 22:49:06,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:49:06
[2026-10-28 22:49:06,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:49:07,026.026 INFO    ] Initializing speech engine...
[2026-10-28 22:49:07,035.035 INFO    ] 2026-10-28 22:49:07
[2026-10-28 22:49:07,293.293 INFO    ] 2026-10-28 22:49:07
[2026-10-28 22:49:07,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:49:07,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:49:07,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:49:07,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:49:07,851.851 INFO    ] time= 28/10/2026 22:49:07
[2026-10-28 22:49:07,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:49:07,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:49:08,038.038 INFO    ] No existing commands found in stream
[2026-10-28 22:49:13,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:49:13,071.071 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-10-28 22:49:14,423.423 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:49:14,425.425 INFO    ] Checking for system updates...
[2026-10-28 22:49:14,462.462 INFO    ] 200
[2026-10-28 22:49:14,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:49:14,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:49:14,524.524 INFO    ] No update needed
[2026-10-28 22:49:14,527.527 INFO    ] Checking for camera pi updates...
[2026-10-28 22:49:14,561.561 INFO    ] 200
[2026-10-28 22:49:14,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:49:14,608.608 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:49:14,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:49:14,712.712 INFO    ] No camera update needed
[2026-10-28 22:49:14,715.715 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:49:14,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:49:14,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:49:14,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:49:16,770.770 INFO    ] ================================================
[2026-10-28 22:49:16,785.785 INFO    ] Launching Daemon at Wed Oct 28 22:49:16 IST 2026
[2026-10-28 22:49:16,796.796 INFO    ] ================================================
[2026-10-28 22:49:17,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:49:17
[2026-10-28 22:49:17,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:49:18,230.230 INFO    ] Initializing speech engine...
[2026-10-28 22:49:18,240.240 INFO    ] 2026-10-28 22:49:18
[2026-10-28 22:49:18,515.515 INFO    ] 2026-10-28 22:49:18
[2026-10-28 22:49:18,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:49:18,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:49:18,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:49:19,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:49:19,090.090 INFO    ] time= 28/10/2026 22:49:19
[2026-10-28 22:49:19,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:49:19,106.106 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:49:19,227.227 INFO    ] No existing commands found in stream
[2026-10-28 22:49:24,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:49:24,255.255 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-10-28 22:49:25,400.400 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:49:25,403.403 INFO    ] Checking for system updates...
[2026-10-28 22:49:25,446.446 INFO    ] 200
[2026-10-28 22:49:25,449.449 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 22:49:25,452.452 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-10-28 22:49:25,454.454 INFO    ] Checking for camera pi updates...
[2026-10-28 22:49:25,492.492 INFO    ] 200
[2026-10-28 22:49:25,495.495 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-10-28 22:49:25,497.497 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-10-28 22:49:25,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:49:25,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:49:25,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:49:25,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:49:27,556.556 INFO    ] ================================================
[2026-10-28 22:49:27,570.570 INFO    ] Launching Daemon at Wed Oct 28 22:49:27 IST 2026
[2026-10-28 22:49:27,581.581 INFO    ] ================================================
[2026-10-28 22:49:28,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:49:28
[2026-10-28 22:49:28,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:49:29,043.043 INFO    ] Initializing speech engine...
[2026-10-28 22:49:29,052.052 INFO    ] 2026-10-28 22:49:29
[2026-10-28 22:49:29,317.317 INFO    ] 2026-10-28 22:49:29
[2026-10-28 22:49:29,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:49:29,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:49:29,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:49:29,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:49:29,880.880 INFO    ] time= 28/10/2026 22:49:29
[2026-10-28 22:49:29,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:49:29,916.916 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:49:30,043.043 INFO    ] No existing commands found in stream
[2026-10-28 22:49:35,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:49:35,076.076 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 22:49:36,846.846 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:49:36,849.849 INFO    ] Checking for system updates...
[2026-10-28 22:49:36,885.885 INFO    ] 200
[2026-10-28 22:49:36,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:49:36,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:49:36,941.941 INFO    ] No update needed
[2026-10-28 22:49:36,944.944 INFO    ] Checking for camera pi updates...
[2026-10-28 22:49:36,977.977 INFO    ] 200
[2026-10-28 22:49:36,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:49:37,024.024 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:49:37,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:49:37,128.128 INFO    ] No camera update needed
[2026-10-28 22:49:37,130.130 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:49:37,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:49:37,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:49:37,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:49:39,184.184 INFO    ] ================================================
[2026-10-28 22:49:39,199.199 INFO    ] Launching Daemon at Wed Oct 28 22:49:39 IST 2026
[2026-10-28 22:49:39,209.209 INFO    ] ================================================
[2026-10-28 22:49:39,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:49:39
[2026-10-28 22:49:40,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:49:40,821.821 INFO    ] Initializing speech engine...
[2026-10-28 22:49:40,826.826 INFO    ] 2026-10-28 22:49:40
[2026-10-28 22:49:41,131.131 INFO    ] 2026-10-28 22:49:41
[2026-10-28 22:49:41,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:49:41,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:49:41,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:49:41,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:49:41,801.801 INFO    ] time= 28/10/2026 22:49:41
[2026-10-28 22:49:41,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:49:41,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:49:42,037.037 INFO    ] No existing commands found in stream
[2026-10-28 22:49:47,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:49:47,063.063 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-28 22:49:48,844.844 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:49:48,846.846 INFO    ] Checking for system updates...
[2026-10-28 22:49:48,884.884 INFO    ] 200
[2026-10-28 22:49:48,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:49:48,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:49:48,951.951 INFO    ] No update needed
[2026-10-28 22:49:48,954.954 INFO    ] Checking for camera pi updates...
[2026-10-28 22:49:48,987.987 INFO    ] 200
[2026-10-28 22:49:48,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:49:49,029.029 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:49:49,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:49:49,123.123 INFO    ] No camera update needed
[2026-10-28 22:49:49,125.125 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:49:49,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:49:49,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:49:49,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:49:51,179.179 INFO    ] ================================================
[2026-10-28 22:49:51,194.194 INFO    ] Launching Daemon at Wed Oct 28 22:49:51 IST 2026
[2026-10-28 22:49:51,205.205 INFO    ] ================================================
[2026-10-28 22:49:51,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:49:51
[2026-10-28 22:49:52,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:49:52,642.642 INFO    ] Initializing speech engine...
[2026-10-28 22:49:52,656.656 INFO    ] 2026-10-28 22:49:52
[2026-10-28 22:49:52,939.939 INFO    ] 2026-10-28 22:49:52
[2026-10-28 22:49:52,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:49:53,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:49:53,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:49:53,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:49:53,568.568 INFO    ] time= 28/10/2026 22:49:53
[2026-10-28 22:49:53,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:49:53,599.599 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:49:53,710.710 INFO    ] No existing commands found in stream
[2026-10-28 22:49:58,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:49:58,744.744 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-28 22:50:00,040.040 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:50:00,042.042 INFO    ] Checking for system updates...
[2026-10-28 22:50:00,078.078 INFO    ] 200
[2026-10-28 22:50:00,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:50:00,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:50:00,135.135 INFO    ] No update needed
[2026-10-28 22:50:00,137.137 INFO    ] Checking for camera pi updates...
[2026-10-28 22:50:00,170.170 INFO    ] 200
[2026-10-28 22:50:00,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:50:00,215.215 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:50:00,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:50:00,310.310 INFO    ] No camera update needed
[2026-10-28 22:50:00,312.312 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:50:00,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:50:00,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:50:00,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:50:02,370.370 INFO    ] ================================================
[2026-10-28 22:50:02,392.392 INFO    ] Launching Daemon at Wed Oct 28 22:50:02 IST 2026
[2026-10-28 22:50:02,410.410 INFO    ] ================================================
[2026-10-28 22:50:03,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:50:03
[2026-10-28 22:50:03,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:50:04,013.013 INFO    ] Initializing speech engine...
[2026-10-28 22:50:04,021.021 INFO    ] 2026-10-28 22:50:04
[2026-10-28 22:50:04,310.310 INFO    ] 2026-10-28 22:50:04
[2026-10-28 22:50:04,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:50:04,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:50:04,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:50:04,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:50:04,793.793 INFO    ] time= 28/10/2026 22:50:04
[2026-10-28 22:50:04,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:50:04,896.896 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:50:04,989.989 INFO    ] No existing commands found in stream
[2026-10-28 22:50:10,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:50:10,004.004 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-10-28 22:50:11,005.005 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:50:11,008.008 INFO    ] Checking for system updates...
[2026-10-28 22:50:11,046.046 INFO    ] 200
[2026-10-28 22:50:11,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:50:11,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:50:11,105.105 INFO    ] No update needed
[2026-10-28 22:50:11,107.107 INFO    ] Checking for camera pi updates...
[2026-10-28 22:50:11,141.141 INFO    ] 200
[2026-10-28 22:50:11,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:50:11,187.187 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:50:11,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:50:11,283.283 INFO    ] No camera update needed
[2026-10-28 22:50:11,286.286 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:50:11,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:50:11,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:50:11,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:50:13,337.337 INFO    ] ================================================
[2026-10-28 22:50:13,352.352 INFO    ] Launching Daemon at Wed Oct 28 22:50:13 IST 2026
[2026-10-28 22:50:13,363.363 INFO    ] ================================================
[2026-10-28 22:50:13,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:50:13
[2026-10-28 22:50:14,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:50:14,768.768 INFO    ] Initializing speech engine...
[2026-10-28 22:50:14,793.793 INFO    ] 2026-10-28 22:50:14
[2026-10-28 22:50:15,060.060 INFO    ] 2026-10-28 22:50:15
[2026-10-28 22:50:15,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:50:15,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:50:15,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:50:15,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:50:15,626.626 INFO    ] time= 28/10/2026 22:50:15
[2026-10-28 22:50:15,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:50:15,681.681 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:50:15,820.820 INFO    ] No existing commands found in stream
[2026-10-28 22:50:20,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:50:20,854.854 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 22:50:23,021.021 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:50:23,024.024 INFO    ] Checking for system updates...
[2026-10-28 22:50:23,059.059 INFO    ] 200
[2026-10-28 22:50:23,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:50:23,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:50:23,121.121 INFO    ] No update needed
[2026-10-28 22:50:23,123.123 INFO    ] Checking for camera pi updates...
[2026-10-28 22:50:23,156.156 INFO    ] 200
[2026-10-28 22:50:23,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:50:23,199.199 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:50:23,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:50:23,278.278 INFO    ] No camera update needed
[2026-10-28 22:50:23,281.281 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:50:23,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:50:23,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:50:23,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:50:25,333.333 INFO    ] ================================================
[2026-10-28 22:50:25,348.348 INFO    ] Launching Daemon at Wed Oct 28 22:50:25 IST 2026
[2026-10-28 22:50:25,358.358 INFO    ] ================================================
[2026-10-28 22:50:25,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:50:25
[2026-10-28 22:50:26,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:50:26,768.768 INFO    ] Initializing speech engine...
[2026-10-28 22:50:26,777.777 INFO    ] 2026-10-28 22:50:26
[2026-10-28 22:50:27,069.069 INFO    ] 2026-10-28 22:50:27
[2026-10-28 22:50:27,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:50:27,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:50:27,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:50:27,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:50:27,560.560 INFO    ] time= 28/10/2026 22:50:27
[2026-10-28 22:50:27,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:50:27,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:50:27,815.815 INFO    ] No existing commands found in stream
[2026-10-28 22:50:32,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:50:32,835.835 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 22:50:36,348.348 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:50:36,350.350 INFO    ] Checking for system updates...
[2026-10-28 22:50:36,386.386 INFO    ] 200
[2026-10-28 22:50:36,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:50:36,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:50:36,442.442 INFO    ] No update needed
[2026-10-28 22:50:36,445.445 INFO    ] Checking for camera pi updates...
[2026-10-28 22:50:36,482.482 INFO    ] 200
[2026-10-28 22:50:36,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:50:36,529.529 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:50:36,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:50:36,617.617 INFO    ] No camera update needed
[2026-10-28 22:50:36,620.620 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:50:36,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:50:36,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:50:36,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:50:38,672.672 INFO    ] ================================================
[2026-10-28 22:50:38,687.687 INFO    ] Launching Daemon at Wed Oct 28 22:50:38 IST 2026
[2026-10-28 22:50:38,698.698 INFO    ] ================================================
[2026-10-28 22:50:39,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:50:39
[2026-10-28 22:50:39,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:50:40,100.100 INFO    ] Initializing speech engine...
[2026-10-28 22:50:40,103.103 INFO    ] 2026-10-28 22:50:40
[2026-10-28 22:50:40,370.370 INFO    ] 2026-10-28 22:50:40
[2026-10-28 22:50:40,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:50:40,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:50:40,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:50:40,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:50:40,930.930 INFO    ] time= 28/10/2026 22:50:40
[2026-10-28 22:50:40,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:50:40,965.965 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:50:41,117.117 INFO    ] No existing commands found in stream
[2026-10-28 22:50:46,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:50:46,150.150 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-10-28 22:50:50,500.500 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:50:50,503.503 INFO    ] Checking for system updates...
[2026-10-28 22:50:50,539.539 INFO    ] 200
[2026-10-28 22:50:50,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:50:50,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:50:50,601.601 INFO    ] No update needed
[2026-10-28 22:50:50,604.604 INFO    ] Checking for camera pi updates...
[2026-10-28 22:50:50,640.640 INFO    ] 200
[2026-10-28 22:50:50,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:50:50,682.682 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:50:50,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:50:50,885.885 INFO    ] No camera update needed
[2026-10-28 22:50:50,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:50:50,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:50:50,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:50:50,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:50:52,940.940 INFO    ] ================================================
[2026-10-28 22:50:52,955.955 INFO    ] Launching Daemon at Wed Oct 28 22:50:52 IST 2026
[2026-10-28 22:50:52,965.965 INFO    ] ================================================
[2026-10-28 22:50:53,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:50:53
[2026-10-28 22:50:54,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:50:54,374.374 INFO    ] Initializing speech engine...
[2026-10-28 22:50:54,387.387 INFO    ] 2026-10-28 22:50:54
[2026-10-28 22:50:54,667.667 INFO    ] 2026-10-28 22:50:54
[2026-10-28 22:50:54,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:50:54,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:50:54,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:50:55,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:50:55,257.257 INFO    ] time= 28/10/2026 22:50:55
[2026-10-28 22:50:55,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:50:55,307.307 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:50:55,427.427 INFO    ] No existing commands found in stream
[2026-10-28 22:51:00,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:51:00,455.455 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 22:51:01,262.262 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:51:01,265.265 INFO    ] Checking for system updates...
[2026-10-28 22:51:01,300.300 INFO    ] 200
[2026-10-28 22:51:01,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:51:01,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:51:01,357.357 INFO    ] No update needed
[2026-10-28 22:51:01,359.359 INFO    ] Checking for camera pi updates...
[2026-10-28 22:51:01,396.396 INFO    ] 200
[2026-10-28 22:51:01,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:51:01,438.438 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:51:01,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:51:01,539.539 INFO    ] No camera update needed
[2026-10-28 22:51:01,542.542 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:51:01,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:51:01,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:51:01,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:51:03,595.595 INFO    ] ================================================
[2026-10-28 22:51:03,611.611 INFO    ] Launching Daemon at Wed Oct 28 22:51:03 IST 2026
[2026-10-28 22:51:03,622.622 INFO    ] ================================================
[2026-10-28 22:51:04,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:51:04
[2026-10-28 22:51:04,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:51:05,116.116 INFO    ] Initializing speech engine...
[2026-10-28 22:51:05,125.125 INFO    ] 2026-10-28 22:51:05
[2026-10-28 22:51:05,387.387 INFO    ] 2026-10-28 22:51:05
[2026-10-28 22:51:05,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:51:05,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:51:05,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:51:05,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:51:05,975.975 INFO    ] time= 28/10/2026 22:51:05
[2026-10-28 22:51:05,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:51:05,993.993 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:51:06,176.176 INFO    ] No existing commands found in stream
[2026-10-28 22:51:11,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:51:11,193.193 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-28 22:51:14,489.489 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:51:14,492.492 INFO    ] Checking for system updates...
[2026-10-28 22:51:14,528.528 INFO    ] 200
[2026-10-28 22:51:14,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:51:14,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:51:14,585.585 INFO    ] No update needed
[2026-10-28 22:51:14,587.587 INFO    ] Checking for camera pi updates...
[2026-10-28 22:51:14,622.622 INFO    ] 200
[2026-10-28 22:51:14,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:51:14,668.668 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:51:14,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:51:14,738.738 INFO    ] No camera update needed
[2026-10-28 22:51:14,740.740 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:51:14,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:51:14,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:51:14,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:51:16,802.802 INFO    ] ================================================
[2026-10-28 22:51:16,818.818 INFO    ] Launching Daemon at Wed Oct 28 22:51:16 IST 2026
[2026-10-28 22:51:16,829.829 INFO    ] ================================================
[2026-10-28 22:51:17,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:51:17
[2026-10-28 22:51:18,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:51:18,312.312 INFO    ] Initializing speech engine...
[2026-10-28 22:51:18,327.327 INFO    ] 2026-10-28 22:51:18
[2026-10-28 22:51:18,596.596 INFO    ] 2026-10-28 22:51:18
[2026-10-28 22:51:18,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:51:18,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:51:18,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:51:19,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:51:19,211.211 INFO    ] time= 28/10/2026 22:51:19
[2026-10-28 22:51:19,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:51:19,239.239 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:51:19,394.394 INFO    ] No existing commands found in stream
[2026-10-28 22:51:24,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:51:24,418.418 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-10-28 22:51:26,982.982 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:51:26,985.985 INFO    ] Checking for system updates...
[2026-10-28 22:51:27,028.028 INFO    ] 200
[2026-10-28 22:51:27,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:51:27,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:51:27,092.092 INFO    ] No update needed
[2026-10-28 22:51:27,095.095 INFO    ] Checking for camera pi updates...
[2026-10-28 22:51:27,129.129 INFO    ] 200
[2026-10-28 22:51:27,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:51:27,172.172 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:51:27,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:51:27,261.261 INFO    ] No camera update needed
[2026-10-28 22:51:27,264.264 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:51:27,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:51:27,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:51:27,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:51:29,318.318 INFO    ] ================================================
[2026-10-28 22:51:29,333.333 INFO    ] Launching Daemon at Wed Oct 28 22:51:29 IST 2026
[2026-10-28 22:51:29,344.344 INFO    ] ================================================
[2026-10-28 22:51:29,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:51:29
[2026-10-28 22:51:30,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:51:30,925.925 INFO    ] Initializing speech engine...
[2026-10-28 22:51:30,938.938 INFO    ] 2026-10-28 22:51:30
[2026-10-28 22:51:31,242.242 INFO    ] 2026-10-28 22:51:31
[2026-10-28 22:51:31,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:51:31,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:51:31,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:51:31,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:51:32,010.010 INFO    ] time= 28/10/2026 22:51:31
[2026-10-28 22:51:32,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:51:32,126.126 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:51:32,322.322 INFO    ] No existing commands found in stream
[2026-10-28 22:51:37,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:51:37,337.337 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-28 22:51:41,464.464 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:51:41,466.466 INFO    ] Checking for system updates...
[2026-10-28 22:51:41,503.503 INFO    ] 200
[2026-10-28 22:51:41,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:51:41,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:51:41,565.565 INFO    ] No update needed
[2026-10-28 22:51:41,568.568 INFO    ] Checking for camera pi updates...
[2026-10-28 22:51:41,606.606 INFO    ] 200
[2026-10-28 22:51:41,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:51:41,649.649 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:51:41,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:51:41,735.735 INFO    ] No camera update needed
[2026-10-28 22:51:41,737.737 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:51:41,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:51:41,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:51:41,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:51:43,792.792 INFO    ] ================================================
[2026-10-28 22:51:43,807.807 INFO    ] Launching Daemon at Wed Oct 28 22:51:43 IST 2026
[2026-10-28 22:51:43,819.819 INFO    ] ================================================
[2026-10-28 22:51:44,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:51:44
[2026-10-28 22:51:44,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:51:45,276.276 INFO    ] Initializing speech engine...
[2026-10-28 22:51:45,290.290 INFO    ] 2026-10-28 22:51:45
[2026-10-28 22:51:45,554.554 INFO    ] 2026-10-28 22:51:45
[2026-10-28 22:51:45,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:51:45,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:51:45,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:51:46,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:51:46,140.140 INFO    ] time= 28/10/2026 22:51:46
[2026-10-28 22:51:46,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:51:46,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:51:46,319.319 INFO    ] No existing commands found in stream
[2026-10-28 22:51:51,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:51:51,341.341 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 22:51:52,031.031 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:51:52,034.034 INFO    ] Checking for system updates...
[2026-10-28 22:51:52,070.070 INFO    ] 200
[2026-10-28 22:51:52,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:51:52,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:51:52,127.127 INFO    ] No update needed
[2026-10-28 22:51:52,130.130 INFO    ] Checking for camera pi updates...
[2026-10-28 22:51:52,164.164 INFO    ] 200
[2026-10-28 22:51:52,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:51:52,207.207 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:51:52,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:51:52,287.287 INFO    ] No camera update needed
[2026-10-28 22:51:52,290.290 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:51:52,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:51:52,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:51:52,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:51:54,345.345 INFO    ] ================================================
[2026-10-28 22:51:54,360.360 INFO    ] Launching Daemon at Wed Oct 28 22:51:54 IST 2026
[2026-10-28 22:51:54,371.371 INFO    ] ================================================
[2026-10-28 22:51:54,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:51:54
[2026-10-28 22:51:55,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:51:55,800.800 INFO    ] Initializing speech engine...
[2026-10-28 22:51:55,806.806 INFO    ] 2026-10-28 22:51:55
[2026-10-28 22:51:56,095.095 INFO    ] 2026-10-28 22:51:56
[2026-10-28 22:51:56,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:51:56,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:51:56,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:51:56,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:51:56,714.714 INFO    ] time= 28/10/2026 22:51:56
[2026-10-28 22:51:56,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:51:56,739.739 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:51:56,881.881 INFO    ] No existing commands found in stream
[2026-10-28 22:52:01,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:52:01,902.902 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-10-28 22:52:04,942.942 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:52:04,945.945 INFO    ] Checking for system updates...
[2026-10-28 22:52:04,980.980 INFO    ] 200
[2026-10-28 22:52:04,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:52:05,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:52:05,040.040 INFO    ] No update needed
[2026-10-28 22:52:05,043.043 INFO    ] Checking for camera pi updates...
[2026-10-28 22:52:05,080.080 INFO    ] 200
[2026-10-28 22:52:05,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:52:05,128.128 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:52:05,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:52:05,208.208 INFO    ] No camera update needed
[2026-10-28 22:52:05,211.211 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:52:05,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:52:05,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:52:05,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:52:07,262.262 INFO    ] ================================================
[2026-10-28 22:52:07,278.278 INFO    ] Launching Daemon at Wed Oct 28 22:52:07 IST 2026
[2026-10-28 22:52:07,289.289 INFO    ] ================================================
[2026-10-28 22:52:07,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:52:07
[2026-10-28 22:52:08,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:52:08,725.725 INFO    ] Initializing speech engine...
[2026-10-28 22:52:08,740.740 INFO    ] 2026-10-28 22:52:08
[2026-10-28 22:52:09,017.017 INFO    ] 2026-10-28 22:52:08
[2026-10-28 22:52:09,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:52:09,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:52:09,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:52:09,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:52:09,604.604 INFO    ] time= 28/10/2026 22:52:09
[2026-10-28 22:52:09,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:52:09,640.640 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:52:09,760.760 INFO    ] No existing commands found in stream
[2026-10-28 22:52:14,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:52:14,781.781 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-10-28 22:52:16,382.382 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:52:16,385.385 INFO    ] Checking for system updates...
[2026-10-28 22:52:16,420.420 INFO    ] 200
[2026-10-28 22:52:16,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:52:16,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:52:16,476.476 INFO    ] No update needed
[2026-10-28 22:52:16,479.479 INFO    ] Checking for camera pi updates...
[2026-10-28 22:52:16,514.514 INFO    ] 200
[2026-10-28 22:52:16,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:52:16,557.557 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:52:16,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:52:16,649.649 INFO    ] No camera update needed
[2026-10-28 22:52:16,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:52:16,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:52:16,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:52:16,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:52:18,705.705 INFO    ] ================================================
[2026-10-28 22:52:18,720.720 INFO    ] Launching Daemon at Wed Oct 28 22:52:18 IST 2026
[2026-10-28 22:52:18,731.731 INFO    ] ================================================
[2026-10-28 22:52:19,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:52:19
[2026-10-28 22:52:20,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:52:20,319.319 INFO    ] Initializing speech engine...
[2026-10-28 22:52:20,328.328 INFO    ] 2026-10-28 22:52:20
[2026-10-28 22:52:20,596.596 INFO    ] 2026-10-28 22:52:20
[2026-10-28 22:52:20,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:52:20,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:52:20,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:52:21,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:52:21,196.196 INFO    ] time= 28/10/2026 22:52:21
[2026-10-28 22:52:21,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:52:21,257.257 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:52:21,399.399 INFO    ] No existing commands found in stream
[2026-10-28 22:52:26,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:52:26,422.422 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 22:52:30,222.222 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:52:30,225.225 INFO    ] Checking for system updates...
[2026-10-28 22:52:30,261.261 INFO    ] 200
[2026-10-28 22:52:30,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:52:30,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:52:30,318.318 INFO    ] No update needed
[2026-10-28 22:52:30,320.320 INFO    ] Checking for camera pi updates...
[2026-10-28 22:52:30,354.354 INFO    ] 200
[2026-10-28 22:52:30,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:52:30,396.396 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:52:30,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:52:30,495.495 INFO    ] No camera update needed
[2026-10-28 22:52:30,498.498 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:52:30,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:52:30,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:52:30,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:52:32,551.551 INFO    ] ================================================
[2026-10-28 22:52:32,566.566 INFO    ] Launching Daemon at Wed Oct 28 22:52:32 IST 2026
[2026-10-28 22:52:32,577.577 INFO    ] ================================================
[2026-10-28 22:52:33,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:52:33
[2026-10-28 22:52:33,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:52:34,199.199 INFO    ] Initializing speech engine...
[2026-10-28 22:52:34,212.212 INFO    ] 2026-10-28 22:52:34
[2026-10-28 22:52:34,485.485 INFO    ] 2026-10-28 22:52:34
[2026-10-28 22:52:34,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:52:34,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:52:34,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:52:35,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:52:35,031.031 INFO    ] time= 28/10/2026 22:52:35
[2026-10-28 22:52:35,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:52:35,074.074 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:52:35,220.220 INFO    ] No existing commands found in stream
[2026-10-28 22:52:40,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:52:40,238.238 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-10-28 22:52:41,621.621 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:52:41,625.625 INFO    ] Checking for system updates...
[2026-10-28 22:52:41,664.664 INFO    ] 200
[2026-10-28 22:52:41,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:52:41,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:52:41,727.727 INFO    ] No update needed
[2026-10-28 22:52:41,729.729 INFO    ] Checking for camera pi updates...
[2026-10-28 22:52:41,766.766 INFO    ] 200
[2026-10-28 22:52:41,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:52:41,810.810 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:52:41,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:52:41,910.910 INFO    ] No camera update needed
[2026-10-28 22:52:41,913.913 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:52:41,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:52:41,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:52:41,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:52:43,969.969 INFO    ] ================================================
[2026-10-28 22:52:43,984.984 INFO    ] Launching Daemon at Wed Oct 28 22:52:43 IST 2026
[2026-10-28 22:52:44,995.995 INFO    ] ================================================
[2026-10-28 22:52:44,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:52:44
[2026-10-28 22:52:45,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:52:45,575.575 INFO    ] Initializing speech engine...
[2026-10-28 22:52:45,581.581 INFO    ] 2026-10-28 22:52:45
[2026-10-28 22:52:45,853.853 INFO    ] 2026-10-28 22:52:45
[2026-10-28 22:52:45,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:52:46,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:52:46,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:52:46,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:52:46,443.443 INFO    ] time= 28/10/2026 22:52:46
[2026-10-28 22:52:46,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:52:46,510.510 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:52:46,645.645 INFO    ] No existing commands found in stream
[2026-10-28 22:52:51,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:52:51,672.672 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 22:52:54,643.643 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:52:54,646.646 INFO    ] Checking for system updates...
[2026-10-28 22:52:54,682.682 INFO    ] 200
[2026-10-28 22:52:54,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:52:54,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:52:54,742.742 INFO    ] No update needed
[2026-10-28 22:52:54,744.744 INFO    ] Checking for camera pi updates...
[2026-10-28 22:52:54,779.779 INFO    ] 200
[2026-10-28 22:52:54,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:52:54,826.826 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:52:55,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:52:55,014.014 INFO    ] No camera update needed
[2026-10-28 22:52:55,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:52:55,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:52:55,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:52:55,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:52:57,070.070 INFO    ] ================================================
[2026-10-28 22:52:57,085.085 INFO    ] Launching Daemon at Wed Oct 28 22:52:57 IST 2026
[2026-10-28 22:52:57,096.096 INFO    ] ================================================
[2026-10-28 22:52:57,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:52:57
[2026-10-28 22:52:58,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:52:58,676.676 INFO    ] Initializing speech engine...
[2026-10-28 22:52:58,683.683 INFO    ] 2026-10-28 22:52:58
[2026-10-28 22:52:58,950.950 INFO    ] 2026-10-28 22:52:58
[2026-10-28 22:52:59,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:52:59,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:52:59,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:52:59,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:52:59,671.671 INFO    ] time= 28/10/2026 22:52:59
[2026-10-28 22:52:59,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:52:59,763.763 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:52:59,936.936 INFO    ] No existing commands found in stream
[2026-10-28 22:53:04,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:53:04,955.955 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-10-28 22:53:06,914.914 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:53:06,917.917 INFO    ] Checking for system updates...
[2026-10-28 22:53:06,954.954 INFO    ] 200
[2026-10-28 22:53:06,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:53:07,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:53:07,012.012 INFO    ] No update needed
[2026-10-28 22:53:07,014.014 INFO    ] Checking for camera pi updates...
[2026-10-28 22:53:07,052.052 INFO    ] 200
[2026-10-28 22:53:07,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:53:07,096.096 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:53:07,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:53:07,181.181 INFO    ] No camera update needed
[2026-10-28 22:53:07,183.183 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:53:07,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:53:07,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:53:07,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:53:09,241.241 INFO    ] ================================================
[2026-10-28 22:53:09,256.256 INFO    ] Launching Daemon at Wed Oct 28 22:53:09 IST 2026
[2026-10-28 22:53:09,273.273 INFO    ] ================================================
[2026-10-28 22:53:09,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:53:09
[2026-10-28 22:53:10,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:53:10,709.709 INFO    ] Initializing speech engine...
[2026-10-28 22:53:10,731.731 INFO    ] 2026-10-28 22:53:10
[2026-10-28 22:53:10,988.988 INFO    ] 2026-10-28 22:53:10
[2026-10-28 22:53:11,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:53:11,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:53:11,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:53:11,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:53:11,542.542 INFO    ] time= 28/10/2026 22:53:11
[2026-10-28 22:53:11,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:53:11,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:53:11,721.721 INFO    ] No existing commands found in stream
[2026-10-28 22:53:16,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:53:16,754.754 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 22:53:20,222.222 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:53:20,225.225 INFO    ] Checking for system updates...
[2026-10-28 22:53:20,261.261 INFO    ] 200
[2026-10-28 22:53:20,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:53:20,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:53:20,320.320 INFO    ] No update needed
[2026-10-28 22:53:20,322.322 INFO    ] Checking for camera pi updates...
[2026-10-28 22:53:20,356.356 INFO    ] 200
[2026-10-28 22:53:20,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:53:20,399.399 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:53:20,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:53:20,499.499 INFO    ] No camera update needed
[2026-10-28 22:53:20,502.502 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:53:20,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:53:20,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:53:20,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:53:22,555.555 INFO    ] ================================================
[2026-10-28 22:53:22,570.570 INFO    ] Launching Daemon at Wed Oct 28 22:53:22 IST 2026
[2026-10-28 22:53:22,581.581 INFO    ] ================================================
[2026-10-28 22:53:23,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:53:23
[2026-10-28 22:53:23,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:53:23,997.997 INFO    ] Initializing speech engine...
[2026-10-28 22:53:24,019.019 INFO    ] 2026-10-28 22:53:24
[2026-10-28 22:53:24,283.283 INFO    ] 2026-10-28 22:53:24
[2026-10-28 22:53:24,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:53:24,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:53:24,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:53:24,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:53:24,787.787 INFO    ] time= 28/10/2026 22:53:24
[2026-10-28 22:53:24,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:53:24,891.891 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:53:25,035.035 INFO    ] No existing commands found in stream
[2026-10-28 22:53:30,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:53:30,053.053 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 22:53:33,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:53:33,665.665 INFO    ] Checking for system updates...
[2026-10-28 22:53:33,700.700 INFO    ] 200
[2026-10-28 22:53:33,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:53:33,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:53:33,759.759 INFO    ] No update needed
[2026-10-28 22:53:33,762.762 INFO    ] Checking for camera pi updates...
[2026-10-28 22:53:33,795.795 INFO    ] 200
[2026-10-28 22:53:33,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:53:33,837.837 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:53:33,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:53:33,947.947 INFO    ] No camera update needed
[2026-10-28 22:53:33,949.949 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:53:33,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:53:33,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:53:33,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:53:36,005.005 INFO    ] ================================================
[2026-10-28 22:53:36,021.021 INFO    ] Launching Daemon at Wed Oct 28 22:53:36 IST 2026
[2026-10-28 22:53:36,031.031 INFO    ] ================================================
[2026-10-28 22:53:36,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:53:36
[2026-10-28 22:53:37,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:53:37,424.424 INFO    ] Initializing speech engine...
[2026-10-28 22:53:37,437.437 INFO    ] 2026-10-28 22:53:37
[2026-10-28 22:53:37,698.698 INFO    ] 2026-10-28 22:53:37
[2026-10-28 22:53:37,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:53:37,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:53:38,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:53:38,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:53:38,264.264 INFO    ] time= 28/10/2026 22:53:38
[2026-10-28 22:53:38,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:53:38,288.288 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:53:38,423.423 INFO    ] No existing commands found in stream
[2026-10-28 22:53:43,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:53:43,448.448 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 22:53:46,321.321 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:53:46,323.323 INFO    ] Checking for system updates...
[2026-10-28 22:53:46,358.358 INFO    ] 200
[2026-10-28 22:53:46,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:53:46,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:53:46,416.416 INFO    ] No update needed
[2026-10-28 22:53:46,419.419 INFO    ] Checking for camera pi updates...
[2026-10-28 22:53:46,452.452 INFO    ] 200
[2026-10-28 22:53:46,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:53:46,502.502 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:53:46,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:53:46,583.583 INFO    ] No camera update needed
[2026-10-28 22:53:46,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:53:46,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:53:46,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:53:46,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:53:48,637.637 INFO    ] ================================================
[2026-10-28 22:53:48,653.653 INFO    ] Launching Daemon at Wed Oct 28 22:53:48 IST 2026
[2026-10-28 22:53:48,664.664 INFO    ] ================================================
[2026-10-28 22:53:49,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:53:49
[2026-10-28 22:53:49,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:53:50,117.117 INFO    ] Initializing speech engine...
[2026-10-28 22:53:50,126.126 INFO    ] 2026-10-28 22:53:50
[2026-10-28 22:53:50,384.384 INFO    ] 2026-10-28 22:53:50
[2026-10-28 22:53:50,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:53:50,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:53:50,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:53:51,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:53:51,079.079 INFO    ] time= 28/10/2026 22:53:51
[2026-10-28 22:53:51,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:53:51,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:53:51,319.319 INFO    ] No existing commands found in stream
[2026-10-28 22:53:56,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:53:56,335.335 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-10-28 22:53:57,127.127 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:53:57,130.130 INFO    ] Checking for system updates...
[2026-10-28 22:53:57,168.168 INFO    ] 200
[2026-10-28 22:53:57,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:53:57,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:53:57,227.227 INFO    ] No update needed
[2026-10-28 22:53:57,230.230 INFO    ] Checking for camera pi updates...
[2026-10-28 22:53:57,265.265 INFO    ] 200
[2026-10-28 22:53:57,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:53:57,309.309 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:53:57,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:53:57,396.396 INFO    ] No camera update needed
[2026-10-28 22:53:57,399.399 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:53:57,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:53:57,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:53:57,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:53:59,455.455 INFO    ] ================================================
[2026-10-28 22:53:59,470.470 INFO    ] Launching Daemon at Wed Oct 28 22:53:59 IST 2026
[2026-10-28 22:53:59,481.481 INFO    ] ================================================
[2026-10-28 22:54:00,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:54:00
[2026-10-28 22:54:00,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:54:01,046.046 INFO    ] Initializing speech engine...
[2026-10-28 22:54:01,055.055 INFO    ] 2026-10-28 22:54:01
[2026-10-28 22:54:01,342.342 INFO    ] 2026-10-28 22:54:01
[2026-10-28 22:54:01,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:54:01,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:54:01,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:54:01,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:54:02,016.016 INFO    ] time= 28/10/2026 22:54:01
[2026-10-28 22:54:02,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:54:02,131.131 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:54:02,301.301 INFO    ] No existing commands found in stream
[2026-10-28 22:54:07,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:54:07,325.325 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-10-28 22:54:11,525.525 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:54:11,528.528 INFO    ] Checking for system updates...
[2026-10-28 22:54:11,563.563 INFO    ] 200
[2026-10-28 22:54:11,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:54:11,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:54:11,625.625 INFO    ] No update needed
[2026-10-28 22:54:11,628.628 INFO    ] Checking for camera pi updates...
[2026-10-28 22:54:11,661.661 INFO    ] 200
[2026-10-28 22:54:11,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:54:11,704.704 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:54:11,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:54:11,795.795 INFO    ] No camera update needed
[2026-10-28 22:54:11,797.797 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:54:11,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:54:11,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:54:11,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:54:13,855.855 INFO    ] ================================================
[2026-10-28 22:54:13,870.870 INFO    ] Launching Daemon at Wed Oct 28 22:54:13 IST 2026
[2026-10-28 22:54:13,881.881 INFO    ] ================================================
[2026-10-28 22:54:14,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:54:14
[2026-10-28 22:54:15,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:54:15,306.306 INFO    ] Initializing speech engine...
[2026-10-28 22:54:15,315.315 INFO    ] 2026-10-28 22:54:15
[2026-10-28 22:54:15,572.572 INFO    ] 2026-10-28 22:54:15
[2026-10-28 22:54:15,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:54:15,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:54:15,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:54:16,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:54:16,126.126 INFO    ] time= 28/10/2026 22:54:16
[2026-10-28 22:54:16,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:54:16,152.152 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:54:16,286.286 INFO    ] No existing commands found in stream
[2026-10-28 22:54:21,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:54:21,312.312 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 22:54:24,929.929 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:54:24,931.931 INFO    ] Checking for system updates...
[2026-10-28 22:54:24,971.971 INFO    ] 200
[2026-10-28 22:54:24,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:54:25,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:54:25,028.028 INFO    ] No update needed
[2026-10-28 22:54:25,030.030 INFO    ] Checking for camera pi updates...
[2026-10-28 22:54:25,065.065 INFO    ] 200
[2026-10-28 22:54:25,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:54:25,109.109 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:54:25,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:54:25,197.197 INFO    ] No camera update needed
[2026-10-28 22:54:25,200.200 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:54:25,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:54:25,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:54:25,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:54:27,253.253 INFO    ] ================================================
[2026-10-28 22:54:27,269.269 INFO    ] Launching Daemon at Wed Oct 28 22:54:27 IST 2026
[2026-10-28 22:54:27,279.279 INFO    ] ================================================
[2026-10-28 22:54:27,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:54:27
[2026-10-28 22:54:28,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:54:28,735.735 INFO    ] Initializing speech engine...
[2026-10-28 22:54:28,745.745 INFO    ] 2026-10-28 22:54:28
[2026-10-28 22:54:28,993.993 INFO    ] 2026-10-28 22:54:28
[2026-10-28 22:54:29,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:54:29,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:54:29,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:54:29,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:54:29,559.559 INFO    ] time= 28/10/2026 22:54:29
[2026-10-28 22:54:29,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:54:29,583.583 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:54:29,719.719 INFO    ] No existing commands found in stream
[2026-10-28 22:54:34,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:54:34,740.740 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-28 22:54:38,263.263 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:54:38,266.266 INFO    ] Checking for system updates...
[2026-10-28 22:54:38,309.309 INFO    ] 200
[2026-10-28 22:54:38,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:54:38,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:54:38,372.372 INFO    ] No update needed
[2026-10-28 22:54:38,375.375 INFO    ] Checking for camera pi updates...
[2026-10-28 22:54:38,409.409 INFO    ] 200
[2026-10-28 22:54:38,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:54:38,453.453 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:54:38,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:54:38,557.557 INFO    ] No camera update needed
[2026-10-28 22:54:38,560.560 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:54:38,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:54:38,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:54:38,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:54:40,616.616 INFO    ] ================================================
[2026-10-28 22:54:40,631.631 INFO    ] Launching Daemon at Wed Oct 28 22:54:40 IST 2026
[2026-10-28 22:54:40,642.642 INFO    ] ================================================
[2026-10-28 22:54:41,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:54:41
[2026-10-28 22:54:41,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:54:42,115.115 INFO    ] Initializing speech engine...
[2026-10-28 22:54:42,129.129 INFO    ] 2026-10-28 22:54:42
[2026-10-28 22:54:42,399.399 INFO    ] 2026-10-28 22:54:42
[2026-10-28 22:54:42,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:54:42,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:54:42,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:54:42,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:54:42,887.887 INFO    ] time= 28/10/2026 22:54:42
[2026-10-28 22:54:42,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:54:42,991.991 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:54:43,088.088 INFO    ] No existing commands found in stream
[2026-10-28 22:54:48,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:54:48,103.103 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-28 22:54:50,502.502 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:54:50,504.504 INFO    ] Checking for system updates...
[2026-10-28 22:54:50,541.541 INFO    ] 200
[2026-10-28 22:54:50,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:54:50,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:54:50,598.598 INFO    ] No update needed
[2026-10-28 22:54:50,600.600 INFO    ] Checking for camera pi updates...
[2026-10-28 22:54:50,634.634 INFO    ] 200
[2026-10-28 22:54:50,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:54:50,681.681 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:54:50,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:54:50,787.787 INFO    ] No camera update needed
[2026-10-28 22:54:50,789.789 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:54:50,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:54:50,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:54:50,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:54:52,843.843 INFO    ] ================================================
[2026-10-28 22:54:52,859.859 INFO    ] Launching Daemon at Wed Oct 28 22:54:52 IST 2026
[2026-10-28 22:54:52,870.870 INFO    ] ================================================
[2026-10-28 22:54:53,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:54:53
[2026-10-28 22:54:54,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:54:54,318.318 INFO    ] Initializing speech engine...
[2026-10-28 22:54:54,325.325 INFO    ] 2026-10-28 22:54:54
[2026-10-28 22:54:54,624.624 INFO    ] 2026-10-28 22:54:54
[2026-10-28 22:54:54,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:54:54,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:54:54,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:54:55,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:54:55,126.126 INFO    ] time= 28/10/2026 22:54:55
[2026-10-28 22:54:55,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:54:55,251.251 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:54:55,401.401 INFO    ] No existing commands found in stream
[2026-10-28 22:55:00,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:55:00,418.418 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-28 22:55:03,441.441 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:55:03,445.445 INFO    ] Checking for system updates...
[2026-10-28 22:55:03,488.488 INFO    ] 200
[2026-10-28 22:55:03,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:55:03,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:55:03,550.550 INFO    ] No update needed
[2026-10-28 22:55:03,553.553 INFO    ] Checking for camera pi updates...
[2026-10-28 22:55:03,594.594 INFO    ] 200
[2026-10-28 22:55:03,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:55:03,649.649 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:55:03,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:55:03,828.828 INFO    ] No camera update needed
[2026-10-28 22:55:03,831.831 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:55:03,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:55:03,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:55:03,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:55:05,888.888 INFO    ] ================================================
[2026-10-28 22:55:05,904.904 INFO    ] Launching Daemon at Wed Oct 28 22:55:05 IST 2026
[2026-10-28 22:55:05,915.915 INFO    ] ================================================
[2026-10-28 22:55:06,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:55:06
[2026-10-28 22:55:07,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:55:07,348.348 INFO    ] Initializing speech engine...
[2026-10-28 22:55:07,371.371 INFO    ] 2026-10-28 22:55:07
[2026-10-28 22:55:07,630.630 INFO    ] 2026-10-28 22:55:07
[2026-10-28 22:55:07,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:55:07,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:55:07,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:55:08,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:55:08,230.230 INFO    ] time= 28/10/2026 22:55:08
[2026-10-28 22:55:08,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:55:08,285.285 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:55:08,444.444 INFO    ] No existing commands found in stream
[2026-10-28 22:55:13,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:55:13,458.458 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 22:55:17,004.004 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:55:17,007.007 INFO    ] Checking for system updates...
[2026-10-28 22:55:17,042.042 INFO    ] 200
[2026-10-28 22:55:17,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:55:17,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:55:17,103.103 INFO    ] No update needed
[2026-10-28 22:55:17,105.105 INFO    ] Checking for camera pi updates...
[2026-10-28 22:55:17,139.139 INFO    ] 200
[2026-10-28 22:55:17,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:55:17,183.183 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:55:17,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:55:17,252.252 INFO    ] No camera update needed
[2026-10-28 22:55:17,255.255 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:55:17,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:55:17,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:55:17,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:55:19,307.307 INFO    ] ================================================
[2026-10-28 22:55:19,322.322 INFO    ] Launching Daemon at Wed Oct 28 22:55:19 IST 2026
[2026-10-28 22:55:19,334.334 INFO    ] ================================================
[2026-10-28 22:55:19,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:55:19
[2026-10-28 22:55:20,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:55:20,945.945 INFO    ] Initializing speech engine...
[2026-10-28 22:55:20,956.956 INFO    ] 2026-10-28 22:55:20
[2026-10-28 22:55:21,245.245 INFO    ] 2026-10-28 22:55:21
[2026-10-28 22:55:21,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:55:21,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:55:21,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:55:21,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:55:21,896.896 INFO    ] time= 28/10/2026 22:55:21
[2026-10-28 22:55:21,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:55:21,998.998 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:55:22,153.153 INFO    ] No existing commands found in stream
[2026-10-28 22:55:27,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:55:27,187.187 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-10-28 22:55:30,825.825 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:55:30,828.828 INFO    ] Checking for system updates...
[2026-10-28 22:55:30,865.865 INFO    ] 200
[2026-10-28 22:55:30,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:55:30,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:55:30,931.931 INFO    ] No update needed
[2026-10-28 22:55:30,934.934 INFO    ] Checking for camera pi updates...
[2026-10-28 22:55:30,968.968 INFO    ] 200
[2026-10-28 22:55:30,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:55:31,013.013 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:55:31,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:55:31,118.118 INFO    ] No camera update needed
[2026-10-28 22:55:31,121.121 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:55:31,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:55:31,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:55:31,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:55:33,178.178 INFO    ] ================================================
[2026-10-28 22:55:33,193.193 INFO    ] Launching Daemon at Wed Oct 28 22:55:33 IST 2026
[2026-10-28 22:55:33,204.204 INFO    ] ================================================
[2026-10-28 22:55:33,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:55:33
[2026-10-28 22:55:34,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:55:34,613.613 INFO    ] Initializing speech engine...
[2026-10-28 22:55:34,632.632 INFO    ] 2026-10-28 22:55:34
[2026-10-28 22:55:34,885.885 INFO    ] 2026-10-28 22:55:34
[2026-10-28 22:55:34,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:55:35,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:55:35,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:55:35,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:55:35,445.445 INFO    ] time= 28/10/2026 22:55:35
[2026-10-28 22:55:35,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:55:35,485.485 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:55:35,657.657 INFO    ] No existing commands found in stream
[2026-10-28 22:55:40,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:55:40,685.685 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-28 22:55:44,868.868 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:55:44,870.870 INFO    ] Checking for system updates...
[2026-10-28 22:55:44,907.907 INFO    ] 200
[2026-10-28 22:55:44,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:55:44,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:55:44,970.970 INFO    ] No update needed
[2026-10-28 22:55:44,973.973 INFO    ] Checking for camera pi updates...
[2026-10-28 22:55:45,010.010 INFO    ] 200
[2026-10-28 22:55:45,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:55:45,057.057 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:55:45,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:55:45,147.147 INFO    ] No camera update needed
[2026-10-28 22:55:45,149.149 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:55:45,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:55:45,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:55:45,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:55:47,204.204 INFO    ] ================================================
[2026-10-28 22:55:47,220.220 INFO    ] Launching Daemon at Wed Oct 28 22:55:47 IST 2026
[2026-10-28 22:55:47,231.231 INFO    ] ================================================
[2026-10-28 22:55:47,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:55:47
[2026-10-28 22:55:48,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:55:48,862.862 INFO    ] Initializing speech engine...
[2026-10-28 22:55:48,872.872 INFO    ] 2026-10-28 22:55:48
[2026-10-28 22:55:49,185.185 INFO    ] 2026-10-28 22:55:49
[2026-10-28 22:55:49,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:55:49,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:55:49,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:55:49,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:55:49,703.703 INFO    ] time= 28/10/2026 22:55:49
[2026-10-28 22:55:49,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:55:49,742.742 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:55:49,877.877 INFO    ] No existing commands found in stream
[2026-10-28 22:55:54,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:55:54,911.911 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-28 22:55:58,147.147 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:55:58,150.150 INFO    ] Checking for system updates...
[2026-10-28 22:55:58,188.188 INFO    ] 200
[2026-10-28 22:55:58,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:55:58,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:55:58,246.246 INFO    ] No update needed
[2026-10-28 22:55:58,248.248 INFO    ] Checking for camera pi updates...
[2026-10-28 22:55:58,282.282 INFO    ] 200
[2026-10-28 22:55:58,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:55:58,325.325 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:55:58,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:55:58,411.411 INFO    ] No camera update needed
[2026-10-28 22:55:58,413.413 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:55:58,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:55:58,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:55:58,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:56:00,465.465 INFO    ] ================================================
[2026-10-28 22:56:00,486.486 INFO    ] Launching Daemon at Wed Oct 28 22:56:00 IST 2026
[2026-10-28 22:56:00,498.498 INFO    ] ================================================
[2026-10-28 22:56:01,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:56:01
[2026-10-28 22:56:01,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:56:02,391.391 INFO    ] Initializing speech engine...
[2026-10-28 22:56:02,401.401 INFO    ] 2026-10-28 22:56:02
[2026-10-28 22:56:02,708.708 INFO    ] 2026-10-28 22:56:02
[2026-10-28 22:56:02,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:56:03,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:56:03,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:56:03,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:56:03,398.398 INFO    ] time= 28/10/2026 22:56:03
[2026-10-28 22:56:03,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:56:03,432.432 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:56:03,557.557 INFO    ] No existing commands found in stream
[2026-10-28 22:56:08,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:56:08,579.579 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-10-28 22:56:11,225.225 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:56:11,228.228 INFO    ] Checking for system updates...
[2026-10-28 22:56:11,265.265 INFO    ] 200
[2026-10-28 22:56:11,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:56:11,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:56:11,336.336 INFO    ] No update needed
[2026-10-28 22:56:11,343.343 INFO    ] Checking for camera pi updates...
[2026-10-28 22:56:11,378.378 INFO    ] 200
[2026-10-28 22:56:11,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:56:11,422.422 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:56:11,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:56:11,532.532 INFO    ] No camera update needed
[2026-10-28 22:56:11,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:56:11,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:56:11,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:56:11,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:56:13,592.592 INFO    ] ================================================
[2026-10-28 22:56:13,608.608 INFO    ] Launching Daemon at Wed Oct 28 22:56:13 IST 2026
[2026-10-28 22:56:13,618.618 INFO    ] ================================================
[2026-10-28 22:56:14,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:56:14
[2026-10-28 22:56:14,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:56:15,270.270 INFO    ] Initializing speech engine...
[2026-10-28 22:56:15,283.283 INFO    ] 2026-10-28 22:56:15
[2026-10-28 22:56:15,557.557 INFO    ] 2026-10-28 22:56:15
[2026-10-28 22:56:15,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:56:15,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:56:15,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:56:16,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:56:16,173.173 INFO    ] time= 28/10/2026 22:56:16
[2026-10-28 22:56:16,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:56:16,274.274 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:56:16,382.382 INFO    ] No existing commands found in stream
[2026-10-28 22:56:21,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:56:21,403.403 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-28 22:56:22,246.246 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:56:22,249.249 INFO    ] Checking for system updates...
[2026-10-28 22:56:22,288.288 INFO    ] 200
[2026-10-28 22:56:22,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:56:22,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:56:22,352.352 INFO    ] No update needed
[2026-10-28 22:56:22,355.355 INFO    ] Checking for camera pi updates...
[2026-10-28 22:56:22,392.392 INFO    ] 200
[2026-10-28 22:56:22,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:56:22,440.440 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:56:22,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:56:22,538.538 INFO    ] No camera update needed
[2026-10-28 22:56:22,540.540 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:56:22,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:56:22,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:56:22,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:56:24,592.592 INFO    ] ================================================
[2026-10-28 22:56:24,607.607 INFO    ] Launching Daemon at Wed Oct 28 22:56:24 IST 2026
[2026-10-28 22:56:24,618.618 INFO    ] ================================================
[2026-10-28 22:56:25,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:56:25
[2026-10-28 22:56:25,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:56:26,012.012 INFO    ] Initializing speech engine...
[2026-10-28 22:56:26,021.021 INFO    ] 2026-10-28 22:56:26
[2026-10-28 22:56:26,293.293 INFO    ] 2026-10-28 22:56:26
[2026-10-28 22:56:26,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:56:26,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:56:26,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:56:26,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:56:26,861.861 INFO    ] time= 28/10/2026 22:56:26
[2026-10-28 22:56:26,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:56:26,888.888 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:56:27,018.018 INFO    ] No existing commands found in stream
[2026-10-28 22:56:32,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:56:32,036.036 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-10-28 22:56:36,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:56:36,369.369 INFO    ] Checking for system updates...
[2026-10-28 22:56:36,408.408 INFO    ] 200
[2026-10-28 22:56:36,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:56:36,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:56:36,465.465 INFO    ] No update needed
[2026-10-28 22:56:36,468.468 INFO    ] Checking for camera pi updates...
[2026-10-28 22:56:36,502.502 INFO    ] 200
[2026-10-28 22:56:36,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:56:36,544.544 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:56:36,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:56:36,635.635 INFO    ] No camera update needed
[2026-10-28 22:56:36,638.638 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:56:36,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:56:36,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:56:36,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:56:38,691.691 INFO    ] ================================================
[2026-10-28 22:56:38,706.706 INFO    ] Launching Daemon at Wed Oct 28 22:56:38 IST 2026
[2026-10-28 22:56:38,717.717 INFO    ] ================================================
[2026-10-28 22:56:39,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:56:39
[2026-10-28 22:56:39,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:56:40,139.139 INFO    ] Initializing speech engine...
[2026-10-28 22:56:40,149.149 INFO    ] 2026-10-28 22:56:40
[2026-10-28 22:56:40,473.473 INFO    ] 2026-10-28 22:56:40
[2026-10-28 22:56:40,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:56:40,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:56:40,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:56:41,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:56:41,148.148 INFO    ] time= 28/10/2026 22:56:41
[2026-10-28 22:56:41,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:56:41,239.239 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:56:41,381.381 INFO    ] No existing commands found in stream
[2026-10-28 22:56:46,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:56:46,423.423 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 22:56:50,344.344 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:56:50,346.346 INFO    ] Checking for system updates...
[2026-10-28 22:56:50,383.383 INFO    ] 200
[2026-10-28 22:56:50,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:56:50,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:56:50,450.450 INFO    ] No update needed
[2026-10-28 22:56:50,452.452 INFO    ] Checking for camera pi updates...
[2026-10-28 22:56:50,493.493 INFO    ] 200
[2026-10-28 22:56:50,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:56:50,541.541 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:56:50,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:56:50,633.633 INFO    ] No camera update needed
[2026-10-28 22:56:50,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:56:50,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:56:50,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:56:50,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:56:52,690.690 INFO    ] ================================================
[2026-10-28 22:56:52,706.706 INFO    ] Launching Daemon at Wed Oct 28 22:56:52 IST 2026
[2026-10-28 22:56:52,716.716 INFO    ] ================================================
[2026-10-28 22:56:53,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:56:53
[2026-10-28 22:56:53,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:56:54,122.122 INFO    ] Initializing speech engine...
[2026-10-28 22:56:54,145.145 INFO    ] 2026-10-28 22:56:54
[2026-10-28 22:56:54,400.400 INFO    ] 2026-10-28 22:56:54
[2026-10-28 22:56:54,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:56:54,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:56:54,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:56:54,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:56:54,964.964 INFO    ] time= 28/10/2026 22:56:54
[2026-10-28 22:56:54,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:56:54,991.991 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:56:55,122.122 INFO    ] No existing commands found in stream
[2026-10-28 22:57:00,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:57:00,136.136 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-28 22:57:02,867.867 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:57:02,871.871 INFO    ] Checking for system updates...
[2026-10-28 22:57:02,919.919 INFO    ] 200
[2026-10-28 22:57:02,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:57:02,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:57:02,995.995 INFO    ] No update needed
[2026-10-28 22:57:02,998.998 INFO    ] Checking for camera pi updates...
[2026-10-28 22:57:03,041.041 INFO    ] 200
[2026-10-28 22:57:03,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:57:03,090.090 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:57:03,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:57:03,172.172 INFO    ] No camera update needed
[2026-10-28 22:57:03,175.175 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:57:03,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:57:03,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:57:03,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:57:05,232.232 INFO    ] ================================================
[2026-10-28 22:57:05,247.247 INFO    ] Launching Daemon at Wed Oct 28 22:57:05 IST 2026
[2026-10-28 22:57:05,258.258 INFO    ] ================================================
[2026-10-28 22:57:05,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:57:05
[2026-10-28 22:57:06,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:57:06,661.661 INFO    ] Initializing speech engine...
[2026-10-28 22:57:06,670.670 INFO    ] 2026-10-28 22:57:06
[2026-10-28 22:57:06,958.958 INFO    ] 2026-10-28 22:57:06
[2026-10-28 22:57:06,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:57:07,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:57:07,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:57:07,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:57:07,466.466 INFO    ] time= 28/10/2026 22:57:07
[2026-10-28 22:57:07,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:57:07,588.588 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:57:07,720.720 INFO    ] No existing commands found in stream
[2026-10-28 22:57:12,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:57:12,745.745 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 22:57:16,463.463 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 22:57:16,466.466 INFO    ] Checking for system updates...
[2026-10-28 22:57:16,504.504 INFO    ] 200
[2026-10-28 22:57:16,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:57:16,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:57:16,562.562 INFO    ] No update needed
[2026-10-28 22:57:16,565.565 INFO    ] Checking for camera pi updates...
[2026-10-28 22:57:16,598.598 INFO    ] 200
[2026-10-28 22:57:16,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:57:16,645.645 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:57:16,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:57:16,824.824 INFO    ] No camera update needed
[2026-10-28 22:57:16,826.826 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:57:16,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:57:16,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:57:16,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:57:18,881.881 INFO    ] ================================================
[2026-10-28 22:57:18,897.897 INFO    ] Launching Daemon at Wed Oct 28 22:57:18 IST 2026
[2026-10-28 22:57:18,907.907 INFO    ] ================================================
[2026-10-28 22:57:19,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:57:19
[2026-10-28 22:57:20,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:57:20,394.394 INFO    ] Initializing speech engine...
[2026-10-28 22:57:20,400.400 INFO    ] 2026-10-28 22:57:20
[2026-10-28 22:57:20,659.659 INFO    ] 2026-10-28 22:57:20
[2026-10-28 22:57:20,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:57:20,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:57:21,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:57:21,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:57:21,203.203 INFO    ] time= 28/10/2026 22:57:21
[2026-10-28 22:57:21,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:57:21,243.243 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:57:21,369.369 INFO    ] No existing commands found in stream
[2026-10-28 22:57:26,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:57:26,407.407 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-28 22:57:29,982.982 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:57:29,985.985 INFO    ] Checking for system updates...
[2026-10-28 22:57:30,020.020 INFO    ] 200
[2026-10-28 22:57:30,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:57:30,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:57:30,083.083 INFO    ] No update needed
[2026-10-28 22:57:30,085.085 INFO    ] Checking for camera pi updates...
[2026-10-28 22:57:30,119.119 INFO    ] 200
[2026-10-28 22:57:30,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:57:30,163.163 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:57:30,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:57:30,256.256 INFO    ] No camera update needed
[2026-10-28 22:57:30,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:57:30,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:57:30,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:57:30,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:57:32,317.317 INFO    ] ================================================
[2026-10-28 22:57:32,334.334 INFO    ] Launching Daemon at Wed Oct 28 22:57:32 IST 2026
[2026-10-28 22:57:32,346.346 INFO    ] ================================================
[2026-10-28 22:57:32,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:57:32
[2026-10-28 22:57:33,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:57:33,839.839 INFO    ] Initializing speech engine...
[2026-10-28 22:57:33,862.862 INFO    ] 2026-10-28 22:57:33
[2026-10-28 22:57:34,147.147 INFO    ] 2026-10-28 22:57:34
[2026-10-28 22:57:34,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:57:34,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:57:34,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:57:34,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:57:34,716.716 INFO    ] time= 28/10/2026 22:57:34
[2026-10-28 22:57:34,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:57:34,767.767 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:57:34,877.877 INFO    ] No existing commands found in stream
[2026-10-28 22:57:39,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:57:39,916.916 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-28 22:57:42,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:57:42,313.313 INFO    ] Checking for system updates...
[2026-10-28 22:57:42,353.353 INFO    ] 200
[2026-10-28 22:57:42,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:57:42,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:57:42,422.422 INFO    ] No update needed
[2026-10-28 22:57:42,425.425 INFO    ] Checking for camera pi updates...
[2026-10-28 22:57:42,463.463 INFO    ] 200
[2026-10-28 22:57:42,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:57:42,512.512 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:57:42,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:57:42,616.616 INFO    ] No camera update needed
[2026-10-28 22:57:42,618.618 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:57:42,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:57:42,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:57:42,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:57:44,674.674 INFO    ] ================================================
[2026-10-28 22:57:44,689.689 INFO    ] Launching Daemon at Wed Oct 28 22:57:44 IST 2026
[2026-10-28 22:57:44,700.700 INFO    ] ================================================
[2026-10-28 22:57:45,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:57:45
[2026-10-28 22:57:45,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:57:46,126.126 INFO    ] Initializing speech engine...
[2026-10-28 22:57:46,138.138 INFO    ] 2026-10-28 22:57:46
[2026-10-28 22:57:46,390.390 INFO    ] 2026-10-28 22:57:46
[2026-10-28 22:57:46,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:57:46,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:57:46,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:57:46,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:57:46,956.956 INFO    ] time= 28/10/2026 22:57:46
[2026-10-28 22:57:46,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:57:46,980.980 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:57:47,115.115 INFO    ] No existing commands found in stream
[2026-10-28 22:57:52,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:57:52,138.138 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-10-28 22:57:55,191.191 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:57:55,194.194 INFO    ] Checking for system updates...
[2026-10-28 22:57:55,234.234 INFO    ] 200
[2026-10-28 22:57:55,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:57:55,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:57:55,299.299 INFO    ] No update needed
[2026-10-28 22:57:55,302.302 INFO    ] Checking for camera pi updates...
[2026-10-28 22:57:55,338.338 INFO    ] 200
[2026-10-28 22:57:55,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:57:55,382.382 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:57:55,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:57:55,494.494 INFO    ] No camera update needed
[2026-10-28 22:57:55,497.497 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:57:55,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:57:55,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:57:55,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:57:57,553.553 INFO    ] ================================================
[2026-10-28 22:57:57,569.569 INFO    ] Launching Daemon at Wed Oct 28 22:57:57 IST 2026
[2026-10-28 22:57:57,580.580 INFO    ] ================================================
[2026-10-28 22:57:58,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:57:58
[2026-10-28 22:57:58,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:57:58,986.986 INFO    ] Initializing speech engine...
[2026-10-28 22:57:58,995.995 INFO    ] 2026-10-28 22:57:58
[2026-10-28 22:57:59,286.286 INFO    ] 2026-10-28 22:57:59
[2026-10-28 22:57:59,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:57:59,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:57:59,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:57:59,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:57:59,887.887 INFO    ] time= 28/10/2026 22:57:59
[2026-10-28 22:57:59,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:57:59,922.922 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:58:00,057.057 INFO    ] No existing commands found in stream
[2026-10-28 22:58:05,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:58:05,085.085 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-28 22:58:08,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:58:08,745.745 INFO    ] Checking for system updates...
[2026-10-28 22:58:08,786.786 INFO    ] 200
[2026-10-28 22:58:08,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:58:08,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:58:08,842.842 INFO    ] No update needed
[2026-10-28 22:58:08,845.845 INFO    ] Checking for camera pi updates...
[2026-10-28 22:58:08,878.878 INFO    ] 200
[2026-10-28 22:58:08,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:58:08,920.920 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:58:08,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:58:09,001.001 INFO    ] No camera update needed
[2026-10-28 22:58:09,016.016 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:58:09,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:58:09,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:58:09,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:58:11,069.069 INFO    ] ================================================
[2026-10-28 22:58:11,084.084 INFO    ] Launching Daemon at Wed Oct 28 22:58:11 IST 2026
[2026-10-28 22:58:11,095.095 INFO    ] ================================================
[2026-10-28 22:58:11,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:58:11
[2026-10-28 22:58:12,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:58:12,658.658 INFO    ] Initializing speech engine...
[2026-10-28 22:58:12,680.680 INFO    ] 2026-10-28 22:58:12
[2026-10-28 22:58:12,953.953 INFO    ] 2026-10-28 22:58:12
[2026-10-28 22:58:12,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:58:13,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:58:13,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:58:13,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:58:13,531.531 INFO    ] time= 28/10/2026 22:58:13
[2026-10-28 22:58:13,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:58:13,566.566 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:58:13,713.713 INFO    ] No existing commands found in stream
[2026-10-28 22:58:18,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:58:18,746.746 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-10-28 22:58:19,621.621 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:58:19,624.624 INFO    ] Checking for system updates...
[2026-10-28 22:58:19,660.660 INFO    ] 200
[2026-10-28 22:58:19,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:58:19,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:58:19,717.717 INFO    ] No update needed
[2026-10-28 22:58:19,719.719 INFO    ] Checking for camera pi updates...
[2026-10-28 22:58:19,753.753 INFO    ] 200
[2026-10-28 22:58:19,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:58:19,796.796 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:58:19,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:58:19,894.894 INFO    ] No camera update needed
[2026-10-28 22:58:19,896.896 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:58:19,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:58:19,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:58:19,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:58:21,950.950 INFO    ] ================================================
[2026-10-28 22:58:21,965.965 INFO    ] Launching Daemon at Wed Oct 28 22:58:21 IST 2026
[2026-10-28 22:58:21,976.976 INFO    ] ================================================
[2026-10-28 22:58:22,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:58:22
[2026-10-28 22:58:23,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:58:23,409.409 INFO    ] Initializing speech engine...
[2026-10-28 22:58:23,414.414 INFO    ] 2026-10-28 22:58:23
[2026-10-28 22:58:23,664.664 INFO    ] 2026-10-28 22:58:23
[2026-10-28 22:58:23,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:58:23,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:58:23,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:58:24,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:58:24,220.220 INFO    ] time= 28/10/2026 22:58:24
[2026-10-28 22:58:24,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:58:24,266.266 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:58:24,392.392 INFO    ] No existing commands found in stream
[2026-10-28 22:58:29,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:58:29,418.418 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 22:58:31,889.889 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 22:58:31,892.892 INFO    ] Checking for system updates...
[2026-10-28 22:58:31,932.932 INFO    ] 200
[2026-10-28 22:58:31,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:58:31,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:58:31,997.997 INFO    ] No update needed
[2026-10-28 22:58:32,000.000 INFO    ] Checking for camera pi updates...
[2026-10-28 22:58:32,037.037 INFO    ] 200
[2026-10-28 22:58:32,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:58:32,089.089 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:58:32,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:58:32,209.209 INFO    ] No camera update needed
[2026-10-28 22:58:32,212.212 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:58:32,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:58:32,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:58:32,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:58:34,268.268 INFO    ] ================================================
[2026-10-28 22:58:34,284.284 INFO    ] Launching Daemon at Wed Oct 28 22:58:34 IST 2026
[2026-10-28 22:58:34,296.296 INFO    ] ================================================
[2026-10-28 22:58:34,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:58:34
[2026-10-28 22:58:35,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:58:35,716.716 INFO    ] Initializing speech engine...
[2026-10-28 22:58:35,723.723 INFO    ] 2026-10-28 22:58:35
[2026-10-28 22:58:35,981.981 INFO    ] 2026-10-28 22:58:35
[2026-10-28 22:58:36,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:58:36,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:58:36,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:58:36,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:58:36,520.520 INFO    ] time= 28/10/2026 22:58:36
[2026-10-28 22:58:36,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:58:36,543.543 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:58:36,673.673 INFO    ] No existing commands found in stream
[2026-10-28 22:58:41,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:58:41,691.691 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 22:58:42,329.329 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:58:42,331.331 INFO    ] Checking for system updates...
[2026-10-28 22:58:42,366.366 INFO    ] 200
[2026-10-28 22:58:42,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:58:42,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:58:42,424.424 INFO    ] No update needed
[2026-10-28 22:58:42,426.426 INFO    ] Checking for camera pi updates...
[2026-10-28 22:58:42,461.461 INFO    ] 200
[2026-10-28 22:58:42,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:58:42,503.503 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:58:42,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:58:42,586.586 INFO    ] No camera update needed
[2026-10-28 22:58:42,588.588 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:58:42,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:58:42,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:58:42,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:58:44,641.641 INFO    ] ================================================
[2026-10-28 22:58:44,656.656 INFO    ] Launching Daemon at Wed Oct 28 22:58:44 IST 2026
[2026-10-28 22:58:44,668.668 INFO    ] ================================================
[2026-10-28 22:58:45,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:58:45
[2026-10-28 22:58:45,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:58:46,089.089 INFO    ] Initializing speech engine...
[2026-10-28 22:58:46,101.101 INFO    ] 2026-10-28 22:58:46
[2026-10-28 22:58:46,351.351 INFO    ] 2026-10-28 22:58:46
[2026-10-28 22:58:46,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:58:46,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:58:46,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:58:46,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:58:46,896.896 INFO    ] time= 28/10/2026 22:58:46
[2026-10-28 22:58:46,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:58:46,983.983 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:58:47,136.136 INFO    ] No existing commands found in stream
[2026-10-28 22:58:52,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:58:52,166.166 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 22:58:54,620.620 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:58:54,623.623 INFO    ] Checking for system updates...
[2026-10-28 22:58:54,662.662 INFO    ] 200
[2026-10-28 22:58:54,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:58:54,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:58:54,721.721 INFO    ] No update needed
[2026-10-28 22:58:54,724.724 INFO    ] Checking for camera pi updates...
[2026-10-28 22:58:54,758.758 INFO    ] 200
[2026-10-28 22:58:54,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:58:54,807.807 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:58:54,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:58:54,908.908 INFO    ] No camera update needed
[2026-10-28 22:58:54,911.911 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:58:54,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:58:54,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:58:54,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:58:56,967.967 INFO    ] ================================================
[2026-10-28 22:58:56,982.982 INFO    ] Launching Daemon at Wed Oct 28 22:58:56 IST 2026
[2026-10-28 22:58:56,994.994 INFO    ] ================================================
[2026-10-28 22:58:57,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:58:57
[2026-10-28 22:58:58,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:58:58,621.621 INFO    ] Initializing speech engine...
[2026-10-28 22:58:58,631.631 INFO    ] 2026-10-28 22:58:58
[2026-10-28 22:58:58,950.950 INFO    ] 2026-10-28 22:58:58
[2026-10-28 22:58:59,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:58:59,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:58:59,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:58:59,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:58:59,645.645 INFO    ] time= 28/10/2026 22:58:59
[2026-10-28 22:58:59,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:58:59,706.706 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:58:59,854.854 INFO    ] No existing commands found in stream
[2026-10-28 22:59:04,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:59:04,872.872 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-10-28 22:59:08,824.824 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 22:59:08,827.827 INFO    ] Checking for system updates...
[2026-10-28 22:59:08,869.869 INFO    ] 200
[2026-10-28 22:59:08,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:59:08,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:59:08,934.934 INFO    ] No update needed
[2026-10-28 22:59:08,936.936 INFO    ] Checking for camera pi updates...
[2026-10-28 22:59:08,975.975 INFO    ] 200
[2026-10-28 22:59:08,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:59:09,029.029 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:59:09,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:59:09,151.151 INFO    ] No camera update needed
[2026-10-28 22:59:09,154.154 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:59:09,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:59:09,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:59:09,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:59:11,209.209 INFO    ] ================================================
[2026-10-28 22:59:11,224.224 INFO    ] Launching Daemon at Wed Oct 28 22:59:11 IST 2026
[2026-10-28 22:59:11,236.236 INFO    ] ================================================
[2026-10-28 22:59:11,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:59:11
[2026-10-28 22:59:12,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:59:12,881.881 INFO    ] Initializing speech engine...
[2026-10-28 22:59:12,889.889 INFO    ] 2026-10-28 22:59:12
[2026-10-28 22:59:13,180.180 INFO    ] 2026-10-28 22:59:13
[2026-10-28 22:59:13,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:59:13,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:59:13,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:59:13,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:59:13,735.735 INFO    ] time= 28/10/2026 22:59:13
[2026-10-28 22:59:13,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:59:13,784.784 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:59:13,915.915 INFO    ] No existing commands found in stream
[2026-10-28 22:59:18,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:59:18,950.950 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-28 22:59:19,825.825 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:59:19,828.828 INFO    ] Checking for system updates...
[2026-10-28 22:59:19,865.865 INFO    ] 200
[2026-10-28 22:59:19,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:59:19,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:59:19,924.924 INFO    ] No update needed
[2026-10-28 22:59:19,927.927 INFO    ] Checking for camera pi updates...
[2026-10-28 22:59:19,967.967 INFO    ] 200
[2026-10-28 22:59:19,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:59:20,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:59:20,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:59:20,201.201 INFO    ] No camera update needed
[2026-10-28 22:59:20,204.204 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:59:20,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:59:20,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:59:20,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:59:22,259.259 INFO    ] ================================================
[2026-10-28 22:59:22,275.275 INFO    ] Launching Daemon at Wed Oct 28 22:59:22 IST 2026
[2026-10-28 22:59:22,287.287 INFO    ] ================================================
[2026-10-28 22:59:22,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:59:22
[2026-10-28 22:59:23,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:59:23,745.745 INFO    ] Initializing speech engine...
[2026-10-28 22:59:23,754.754 INFO    ] 2026-10-28 22:59:23
[2026-10-28 22:59:24,017.017 INFO    ] 2026-10-28 22:59:24
[2026-10-28 22:59:24,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:59:24,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:59:24,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:59:24,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:59:24,574.574 INFO    ] time= 28/10/2026 22:59:24
[2026-10-28 22:59:24,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:59:24,610.610 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:59:24,726.726 INFO    ] No existing commands found in stream
[2026-10-28 22:59:29,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:59:29,753.753 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 22:59:30,870.870 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 22:59:30,874.874 INFO    ] Checking for system updates...
[2026-10-28 22:59:30,912.912 INFO    ] 200
[2026-10-28 22:59:30,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:59:30,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:59:30,972.972 INFO    ] No update needed
[2026-10-28 22:59:30,974.974 INFO    ] Checking for camera pi updates...
[2026-10-28 22:59:31,009.009 INFO    ] 200
[2026-10-28 22:59:31,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:59:31,058.058 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:59:31,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:59:31,140.140 INFO    ] No camera update needed
[2026-10-28 22:59:31,142.142 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:59:31,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:59:31,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:59:31,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:59:33,201.201 INFO    ] ================================================
[2026-10-28 22:59:33,217.217 INFO    ] Launching Daemon at Wed Oct 28 22:59:33 IST 2026
[2026-10-28 22:59:33,228.228 INFO    ] ================================================
[2026-10-28 22:59:33,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:59:33
[2026-10-28 22:59:34,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:59:34,690.690 INFO    ] Initializing speech engine...
[2026-10-28 22:59:34,701.701 INFO    ] 2026-10-28 22:59:34
[2026-10-28 22:59:34,949.949 INFO    ] 2026-10-28 22:59:34
[2026-10-28 22:59:34,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:59:35,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:59:35,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:59:35,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:59:35,504.504 INFO    ] time= 28/10/2026 22:59:35
[2026-10-28 22:59:35,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:59:35,528.528 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:59:35,661.661 INFO    ] No existing commands found in stream
[2026-10-28 22:59:40,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:59:40,691.691 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 22:59:44,263.263 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 22:59:44,266.266 INFO    ] Checking for system updates...
[2026-10-28 22:59:44,301.301 INFO    ] 200
[2026-10-28 22:59:44,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:59:44,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:59:44,368.368 INFO    ] No update needed
[2026-10-28 22:59:44,370.370 INFO    ] Checking for camera pi updates...
[2026-10-28 22:59:44,406.406 INFO    ] 200
[2026-10-28 22:59:44,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:59:44,469.469 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:59:44,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 22:59:44,555.555 INFO    ] No camera update needed
[2026-10-28 22:59:44,558.558 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:59:44,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:59:44,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:59:44,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 22:59:46,617.617 INFO    ] ================================================
[2026-10-28 22:59:46,633.633 INFO    ] Launching Daemon at Wed Oct 28 22:59:46 IST 2026
[2026-10-28 22:59:46,644.644 INFO    ] ================================================
[2026-10-28 22:59:47,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 22:59:47
[2026-10-28 22:59:47,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 22:59:48,308.308 INFO    ] Initializing speech engine...
[2026-10-28 22:59:48,320.320 INFO    ] 2026-10-28 22:59:48
[2026-10-28 22:59:48,606.606 INFO    ] 2026-10-28 22:59:48
[2026-10-28 22:59:48,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 22:59:48,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 22:59:48,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 22:59:49,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 22:59:49,176.176 INFO    ] time= 28/10/2026 22:59:49
[2026-10-28 22:59:49,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 22:59:49,215.215 INFO    ] Checking for existing commands in stream...
[2026-10-28 22:59:49,361.361 INFO    ] No existing commands found in stream
[2026-10-28 22:59:54,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 22:59:54,391.391 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-10-28 22:59:58,673.673 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 22:59:58,676.676 INFO    ] Checking for system updates...
[2026-10-28 22:59:58,714.714 INFO    ] 200
[2026-10-28 22:59:58,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:59:58,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:59:58,772.772 INFO    ] No update needed
[2026-10-28 22:59:58,776.776 INFO    ] Checking for camera pi updates...
[2026-10-28 22:59:58,810.810 INFO    ] 200
[2026-10-28 22:59:58,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 22:59:58,860.860 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 22:59:58,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 22:59:58,964.964 INFO    ] No camera update needed
[2026-10-28 22:59:58,966.966 INFO    ] Script finished. Safe exiting...
[2026-10-28 22:59:58,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 22:59:58,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 22:59:58,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:00:01,018.018 INFO    ] ================================================
[2026-10-28 23:00:01,034.034 INFO    ] Launching Daemon at Wed Oct 28 23:00:01 IST 2026
[2026-10-28 23:00:01,048.048 INFO    ] ================================================
[2026-10-28 23:00:01,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:00:01
[2026-10-28 23:00:03,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:00:05,146.146 INFO    ] Initializing speech engine...
[2026-10-28 23:00:05,150.150 INFO    ] 2026-10-28 23:00:05
[2026-10-28 23:00:06,045.045 INFO    ] 2026-10-28 23:00:06
[2026-10-28 23:00:06,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:00:06,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:00:06,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:00:06,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:00:06,707.707 INFO    ] time= 28/10/2026 23:00:06
[2026-10-28 23:00:06,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:00:06,782.782 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:00:06,938.938 INFO    ] No existing commands found in stream
[2026-10-28 23:00:11,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:00:11,968.968 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-10-28 23:00:14,083.083 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:00:14,086.086 INFO    ] Checking for system updates...
[2026-10-28 23:00:14,127.127 INFO    ] 200
[2026-10-28 23:00:14,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:00:14,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:00:14,194.194 INFO    ] No update needed
[2026-10-28 23:00:14,198.198 INFO    ] Checking for camera pi updates...
[2026-10-28 23:00:14,232.232 INFO    ] 200
[2026-10-28 23:00:14,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:00:14,283.283 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:00:14,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:00:14,365.365 INFO    ] No camera update needed
[2026-10-28 23:00:14,367.367 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:00:14,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:00:14,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:00:14,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:00:16,421.421 INFO    ] ================================================
[2026-10-28 23:00:16,437.437 INFO    ] Launching Daemon at Wed Oct 28 23:00:16 IST 2026
[2026-10-28 23:00:16,448.448 INFO    ] ================================================
[2026-10-28 23:00:17,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:00:17
[2026-10-28 23:00:17,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:00:17,870.870 INFO    ] Initializing speech engine...
[2026-10-28 23:00:17,877.877 INFO    ] 2026-10-28 23:00:17
[2026-10-28 23:00:18,135.135 INFO    ] 2026-10-28 23:00:18
[2026-10-28 23:00:18,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:00:18,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:00:18,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:00:18,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:00:18,693.693 INFO    ] time= 28/10/2026 23:00:18
[2026-10-28 23:00:18,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:00:18,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:00:18,845.845 INFO    ] No existing commands found in stream
[2026-10-28 23:00:23,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:00:23,878.878 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 23:00:25,662.662 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:00:25,664.664 INFO    ] Checking for system updates...
[2026-10-28 23:00:25,701.701 INFO    ] 200
[2026-10-28 23:00:25,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:00:25,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:00:25,758.758 INFO    ] No update needed
[2026-10-28 23:00:25,761.761 INFO    ] Checking for camera pi updates...
[2026-10-28 23:00:25,794.794 INFO    ] 200
[2026-10-28 23:00:25,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:00:25,837.837 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:00:25,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:00:25,920.920 INFO    ] No camera update needed
[2026-10-28 23:00:25,922.922 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:00:25,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:00:25,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:00:25,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:00:27,976.976 INFO    ] ================================================
[2026-10-28 23:00:27,992.992 INFO    ] Launching Daemon at Wed Oct 28 23:00:27 IST 2026
[2026-10-28 23:00:28,002.002 INFO    ] ================================================
[2026-10-28 23:00:28,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:00:28
[2026-10-28 23:00:29,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:00:29,424.424 INFO    ] Initializing speech engine...
[2026-10-28 23:00:29,432.432 INFO    ] 2026-10-28 23:00:29
[2026-10-28 23:00:29,681.681 INFO    ] 2026-10-28 23:00:29
[2026-10-28 23:00:29,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:00:29,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:00:29,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:00:30,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:00:30,246.246 INFO    ] time= 28/10/2026 23:00:30
[2026-10-28 23:00:30,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:00:30,272.272 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:00:30,402.402 INFO    ] No existing commands found in stream
[2026-10-28 23:00:35,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:00:35,417.417 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-10-28 23:00:37,289.289 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:00:37,292.292 INFO    ] Checking for system updates...
[2026-10-28 23:00:37,332.332 INFO    ] 200
[2026-10-28 23:00:37,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:00:37,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:00:37,389.389 INFO    ] No update needed
[2026-10-28 23:00:37,392.392 INFO    ] Checking for camera pi updates...
[2026-10-28 23:00:37,425.425 INFO    ] 200
[2026-10-28 23:00:37,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:00:37,474.474 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:00:37,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:00:37,569.569 INFO    ] No camera update needed
[2026-10-28 23:00:37,572.572 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:00:37,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:00:37,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:00:37,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:00:39,626.626 INFO    ] ================================================
[2026-10-28 23:00:39,642.642 INFO    ] Launching Daemon at Wed Oct 28 23:00:39 IST 2026
[2026-10-28 23:00:39,653.653 INFO    ] ================================================
[2026-10-28 23:00:40,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:00:40
[2026-10-28 23:00:40,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:00:41,073.073 INFO    ] Initializing speech engine...
[2026-10-28 23:00:41,082.082 INFO    ] 2026-10-28 23:00:41
[2026-10-28 23:00:41,327.327 INFO    ] 2026-10-28 23:00:41
[2026-10-28 23:00:41,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:00:41,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:00:41,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:00:41,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:00:41,882.882 INFO    ] time= 28/10/2026 23:00:41
[2026-10-28 23:00:41,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:00:41,912.912 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:00:42,106.106 INFO    ] No existing commands found in stream
[2026-10-28 23:00:47,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:00:47,139.139 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-10-28 23:00:48,345.345 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:00:48,348.348 INFO    ] Checking for system updates...
[2026-10-28 23:00:48,387.387 INFO    ] 200
[2026-10-28 23:00:48,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:00:48,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:00:48,444.444 INFO    ] No update needed
[2026-10-28 23:00:48,447.447 INFO    ] Checking for camera pi updates...
[2026-10-28 23:00:48,480.480 INFO    ] 200
[2026-10-28 23:00:48,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:00:48,523.523 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:00:48,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:00:48,609.609 INFO    ] No camera update needed
[2026-10-28 23:00:48,611.611 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:00:48,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:00:48,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:00:48,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:00:50,665.665 INFO    ] ================================================
[2026-10-28 23:00:50,680.680 INFO    ] Launching Daemon at Wed Oct 28 23:00:50 IST 2026
[2026-10-28 23:00:50,692.692 INFO    ] ================================================
[2026-10-28 23:00:51,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:00:51
[2026-10-28 23:00:51,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:00:52,108.108 INFO    ] Initializing speech engine...
[2026-10-28 23:00:52,117.117 INFO    ] 2026-10-28 23:00:52
[2026-10-28 23:00:52,370.370 INFO    ] 2026-10-28 23:00:52
[2026-10-28 23:00:52,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:00:52,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:00:52,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:00:52,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:00:52,919.919 INFO    ] time= 28/10/2026 23:00:52
[2026-10-28 23:00:52,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:00:52,966.966 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:00:53,071.071 INFO    ] No existing commands found in stream
[2026-10-28 23:00:58,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:00:58,086.086 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-10-28 23:01:00,102.102 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:01:00,105.105 INFO    ] Checking for system updates...
[2026-10-28 23:01:00,141.141 INFO    ] 200
[2026-10-28 23:01:00,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:01:00,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:01:00,201.201 INFO    ] No update needed
[2026-10-28 23:01:00,204.204 INFO    ] Checking for camera pi updates...
[2026-10-28 23:01:00,243.243 INFO    ] 200
[2026-10-28 23:01:00,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:01:00,289.289 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:01:00,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:01:00,373.373 INFO    ] No camera update needed
[2026-10-28 23:01:00,376.376 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:01:00,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:01:00,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:01:00,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:01:02,447.447 INFO    ] ================================================
[2026-10-28 23:01:02,468.468 INFO    ] Launching Daemon at Wed Oct 28 23:01:02 IST 2026
[2026-10-28 23:01:02,486.486 INFO    ] ================================================
[2026-10-28 23:01:03,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:01:03
[2026-10-28 23:01:03,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:01:04,051.051 INFO    ] Initializing speech engine...
[2026-10-28 23:01:04,058.058 INFO    ] 2026-10-28 23:01:04
[2026-10-28 23:01:04,318.318 INFO    ] 2026-10-28 23:01:04
[2026-10-28 23:01:04,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:01:04,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:01:04,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:01:04,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:01:04,876.876 INFO    ] time= 28/10/2026 23:01:04
[2026-10-28 23:01:04,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:01:04,910.910 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:01:05,027.027 INFO    ] No existing commands found in stream
[2026-10-28 23:01:10,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:01:10,049.049 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 23:01:13,622.622 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:01:13,625.625 INFO    ] Checking for system updates...
[2026-10-28 23:01:13,663.663 INFO    ] 200
[2026-10-28 23:01:13,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:01:13,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:01:13,721.721 INFO    ] No update needed
[2026-10-28 23:01:13,723.723 INFO    ] Checking for camera pi updates...
[2026-10-28 23:01:13,759.759 INFO    ] 200
[2026-10-28 23:01:13,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:01:13,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:01:13,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:01:13,884.884 INFO    ] No camera update needed
[2026-10-28 23:01:13,886.886 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:01:13,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:01:13,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:01:13,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:01:15,941.941 INFO    ] ================================================
[2026-10-28 23:01:15,956.956 INFO    ] Launching Daemon at Wed Oct 28 23:01:15 IST 2026
[2026-10-28 23:01:15,967.967 INFO    ] ================================================
[2026-10-28 23:01:16,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:01:16
[2026-10-28 23:01:17,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:01:17,378.378 INFO    ] Initializing speech engine...
[2026-10-28 23:01:17,386.386 INFO    ] 2026-10-28 23:01:17
[2026-10-28 23:01:17,675.675 INFO    ] 2026-10-28 23:01:17
[2026-10-28 23:01:17,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:01:18,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:01:18,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:01:18,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:01:18,294.294 INFO    ] time= 28/10/2026 23:01:18
[2026-10-28 23:01:18,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:01:18,319.319 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:01:18,467.467 INFO    ] No existing commands found in stream
[2026-10-28 23:01:23,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:01:23,489.489 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-28 23:01:26,237.237 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:01:26,239.239 INFO    ] Checking for system updates...
[2026-10-28 23:01:26,274.274 INFO    ] 200
[2026-10-28 23:01:26,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:01:26,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:01:26,332.332 INFO    ] No update needed
[2026-10-28 23:01:26,335.335 INFO    ] Checking for camera pi updates...
[2026-10-28 23:01:26,367.367 INFO    ] 200
[2026-10-28 23:01:26,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:01:26,410.410 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:01:26,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:01:26,589.589 INFO    ] No camera update needed
[2026-10-28 23:01:26,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:01:26,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:01:26,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:01:26,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:01:28,643.643 INFO    ] ================================================
[2026-10-28 23:01:28,658.658 INFO    ] Launching Daemon at Wed Oct 28 23:01:28 IST 2026
[2026-10-28 23:01:28,669.669 INFO    ] ================================================
[2026-10-28 23:01:29,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:01:29
[2026-10-28 23:01:29,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:01:30,143.143 INFO    ] Initializing speech engine...
[2026-10-28 23:01:30,156.156 INFO    ] 2026-10-28 23:01:30
[2026-10-28 23:01:30,421.421 INFO    ] 2026-10-28 23:01:30
[2026-10-28 23:01:30,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:01:30,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:01:30,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:01:30,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:01:30,970.970 INFO    ] time= 28/10/2026 23:01:30
[2026-10-28 23:01:30,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:01:31,006.006 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:01:31,164.164 INFO    ] No existing commands found in stream
[2026-10-28 23:01:36,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:01:36,197.197 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-10-28 23:01:38,502.502 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:01:38,505.505 INFO    ] Checking for system updates...
[2026-10-28 23:01:38,544.544 INFO    ] 200
[2026-10-28 23:01:38,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:01:38,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:01:38,603.603 INFO    ] No update needed
[2026-10-28 23:01:38,605.605 INFO    ] Checking for camera pi updates...
[2026-10-28 23:01:38,643.643 INFO    ] 200
[2026-10-28 23:01:38,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:01:38,690.690 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:01:38,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:01:38,775.775 INFO    ] No camera update needed
[2026-10-28 23:01:38,777.777 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:01:38,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:01:38,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:01:38,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:01:40,831.831 INFO    ] ================================================
[2026-10-28 23:01:40,846.846 INFO    ] Launching Daemon at Wed Oct 28 23:01:40 IST 2026
[2026-10-28 23:01:40,857.857 INFO    ] ================================================
[2026-10-28 23:01:41,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:01:41
[2026-10-28 23:01:42,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:01:42,280.280 INFO    ] Initializing speech engine...
[2026-10-28 23:01:42,289.289 INFO    ] 2026-10-28 23:01:42
[2026-10-28 23:01:42,544.544 INFO    ] 2026-10-28 23:01:42
[2026-10-28 23:01:42,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:01:42,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:01:42,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:01:43,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:01:43,088.088 INFO    ] time= 28/10/2026 23:01:43
[2026-10-28 23:01:43,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:01:43,122.122 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:01:43,304.304 INFO    ] No existing commands found in stream
[2026-10-28 23:01:48,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:01:48,338.338 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-10-28 23:01:51,425.425 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:01:51,428.428 INFO    ] Checking for system updates...
[2026-10-28 23:01:51,464.464 INFO    ] 200
[2026-10-28 23:01:51,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:01:51,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:01:51,527.527 INFO    ] No update needed
[2026-10-28 23:01:51,529.529 INFO    ] Checking for camera pi updates...
[2026-10-28 23:01:51,562.562 INFO    ] 200
[2026-10-28 23:01:51,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:01:51,609.609 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:01:51,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:01:51,692.692 INFO    ] No camera update needed
[2026-10-28 23:01:51,695.695 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:01:51,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:01:51,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:01:51,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:01:53,749.749 INFO    ] ================================================
[2026-10-28 23:01:53,765.765 INFO    ] Launching Daemon at Wed Oct 28 23:01:53 IST 2026
[2026-10-28 23:01:53,775.775 INFO    ] ================================================
[2026-10-28 23:01:54,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:01:54
[2026-10-28 23:01:54,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:01:55,181.181 INFO    ] Initializing speech engine...
[2026-10-28 23:01:55,189.189 INFO    ] 2026-10-28 23:01:55
[2026-10-28 23:01:55,484.484 INFO    ] 2026-10-28 23:01:55
[2026-10-28 23:01:55,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:01:55,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:01:55,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:01:55,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:01:56,021.021 INFO    ] time= 28/10/2026 23:01:55
[2026-10-28 23:01:56,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:01:56,110.110 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:01:56,182.182 INFO    ] No existing commands found in stream
[2026-10-28 23:02:01,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:02:01,202.202 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-10-28 23:02:01,994.994 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:02:01,997.997 INFO    ] Checking for system updates...
[2026-10-28 23:02:02,044.044 INFO    ] 200
[2026-10-28 23:02:02,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:02:02,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:02:02,118.118 INFO    ] No update needed
[2026-10-28 23:02:02,121.121 INFO    ] Checking for camera pi updates...
[2026-10-28 23:02:02,161.161 INFO    ] 200
[2026-10-28 23:02:02,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:02:02,216.216 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:02:02,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:02:02,340.340 INFO    ] No camera update needed
[2026-10-28 23:02:02,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:02:02,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:02:02,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:02:02,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:02:04,401.401 INFO    ] ================================================
[2026-10-28 23:02:04,416.416 INFO    ] Launching Daemon at Wed Oct 28 23:02:04 IST 2026
[2026-10-28 23:02:04,428.428 INFO    ] ================================================
[2026-10-28 23:02:04,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:02:04
[2026-10-28 23:02:05,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:02:05,840.840 INFO    ] Initializing speech engine...
[2026-10-28 23:02:05,855.855 INFO    ] 2026-10-28 23:02:05
[2026-10-28 23:02:06,120.120 INFO    ] 2026-10-28 23:02:06
[2026-10-28 23:02:06,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:02:06,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:02:06,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:02:06,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:02:06,686.686 INFO    ] time= 28/10/2026 23:02:06
[2026-10-28 23:02:06,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:02:06,714.714 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:02:06,838.838 INFO    ] No existing commands found in stream
[2026-10-28 23:02:11,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:02:11,861.861 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-28 23:02:16,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:02:16,347.347 INFO    ] Checking for system updates...
[2026-10-28 23:02:16,383.383 INFO    ] 200
[2026-10-28 23:02:16,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:02:16,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:02:16,439.439 INFO    ] No update needed
[2026-10-28 23:02:16,442.442 INFO    ] Checking for camera pi updates...
[2026-10-28 23:02:16,479.479 INFO    ] 200
[2026-10-28 23:02:16,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:02:16,526.526 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:02:16,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:02:16,625.625 INFO    ] No camera update needed
[2026-10-28 23:02:16,628.628 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:02:16,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:02:16,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:02:16,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:02:18,682.682 INFO    ] ================================================
[2026-10-28 23:02:18,697.697 INFO    ] Launching Daemon at Wed Oct 28 23:02:18 IST 2026
[2026-10-28 23:02:18,708.708 INFO    ] ================================================
[2026-10-28 23:02:19,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:02:19
[2026-10-28 23:02:19,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:02:20,169.169 INFO    ] Initializing speech engine...
[2026-10-28 23:02:20,180.180 INFO    ] 2026-10-28 23:02:20
[2026-10-28 23:02:20,445.445 INFO    ] 2026-10-28 23:02:20
[2026-10-28 23:02:20,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:02:20,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:02:20,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:02:20,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:02:21,005.005 INFO    ] time= 28/10/2026 23:02:20
[2026-10-28 23:02:21,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:02:21,040.040 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:02:21,154.154 INFO    ] No existing commands found in stream
[2026-10-28 23:02:26,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:02:26,180.180 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-10-28 23:02:29,422.422 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:02:29,425.425 INFO    ] Checking for system updates...
[2026-10-28 23:02:29,464.464 INFO    ] 200
[2026-10-28 23:02:29,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:02:29,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:02:29,523.523 INFO    ] No update needed
[2026-10-28 23:02:29,526.526 INFO    ] Checking for camera pi updates...
[2026-10-28 23:02:29,564.564 INFO    ] 200
[2026-10-28 23:02:29,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:02:29,607.607 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:02:29,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:02:29,714.714 INFO    ] No camera update needed
[2026-10-28 23:02:29,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:02:29,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:02:29,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:02:29,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:02:31,771.771 INFO    ] ================================================
[2026-10-28 23:02:31,787.787 INFO    ] Launching Daemon at Wed Oct 28 23:02:31 IST 2026
[2026-10-28 23:02:31,798.798 INFO    ] ================================================
[2026-10-28 23:02:32,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:02:32
[2026-10-28 23:02:33,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:02:33,283.283 INFO    ] Initializing speech engine...
[2026-10-28 23:02:33,289.289 INFO    ] 2026-10-28 23:02:33
[2026-10-28 23:02:33,599.599 INFO    ] 2026-10-28 23:02:33
[2026-10-28 23:02:33,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:02:33,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:02:33,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:02:34,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:02:34,062.062 INFO    ] time= 28/10/2026 23:02:34
[2026-10-28 23:02:34,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:02:34,119.119 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:02:34,259.259 INFO    ] No existing commands found in stream
[2026-10-28 23:02:39,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:02:39,279.279 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-10-28 23:02:41,997.997 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:02:42,000.000 INFO    ] Checking for system updates...
[2026-10-28 23:02:42,040.040 INFO    ] 200
[2026-10-28 23:02:42,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:02:42,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:02:42,098.098 INFO    ] No update needed
[2026-10-28 23:02:42,100.100 INFO    ] Checking for camera pi updates...
[2026-10-28 23:02:42,134.134 INFO    ] 200
[2026-10-28 23:02:42,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:02:42,183.183 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:02:42,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:02:42,287.287 INFO    ] No camera update needed
[2026-10-28 23:02:42,290.290 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:02:42,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:02:42,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:02:42,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:02:44,343.343 INFO    ] ================================================
[2026-10-28 23:02:44,358.358 INFO    ] Launching Daemon at Wed Oct 28 23:02:44 IST 2026
[2026-10-28 23:02:44,369.369 INFO    ] ================================================
[2026-10-28 23:02:44,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:02:44
[2026-10-28 23:02:45,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:02:45,836.836 INFO    ] Initializing speech engine...
[2026-10-28 23:02:45,855.855 INFO    ] 2026-10-28 23:02:45
[2026-10-28 23:02:46,143.143 INFO    ] 2026-10-28 23:02:46
[2026-10-28 23:02:46,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:02:46,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:02:46,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:02:46,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:02:46,710.710 INFO    ] time= 28/10/2026 23:02:46
[2026-10-28 23:02:46,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:02:46,759.759 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:02:46,893.893 INFO    ] No existing commands found in stream
[2026-10-28 23:02:51,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:02:51,928.928 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-10-28 23:02:52,941.941 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:02:52,943.943 INFO    ] Checking for system updates...
[2026-10-28 23:02:52,983.983 INFO    ] 200
[2026-10-28 23:02:52,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:02:53,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:02:53,041.041 INFO    ] No update needed
[2026-10-28 23:02:53,044.044 INFO    ] Checking for camera pi updates...
[2026-10-28 23:02:53,086.086 INFO    ] 200
[2026-10-28 23:02:53,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:02:53,129.129 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:02:53,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:02:53,218.218 INFO    ] No camera update needed
[2026-10-28 23:02:53,220.220 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:02:53,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:02:53,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:02:53,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:02:55,276.276 INFO    ] ================================================
[2026-10-28 23:02:55,291.291 INFO    ] Launching Daemon at Wed Oct 28 23:02:55 IST 2026
[2026-10-28 23:02:55,302.302 INFO    ] ================================================
[2026-10-28 23:02:55,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:02:55
[2026-10-28 23:02:56,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:02:56,932.932 INFO    ] Initializing speech engine...
[2026-10-28 23:02:56,941.941 INFO    ] 2026-10-28 23:02:56
[2026-10-28 23:02:57,231.231 INFO    ] 2026-10-28 23:02:57
[2026-10-28 23:02:57,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:02:57,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:02:57,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:02:57,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:02:57,790.790 INFO    ] time= 28/10/2026 23:02:57
[2026-10-28 23:02:57,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:02:57,828.828 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:02:57,978.978 INFO    ] No existing commands found in stream
[2026-10-28 23:03:03,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:03:03,010.010 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-28 23:03:03,821.821 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:03:03,824.824 INFO    ] Checking for system updates...
[2026-10-28 23:03:03,860.860 INFO    ] 200
[2026-10-28 23:03:03,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:03:03,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:03:03,919.919 INFO    ] No update needed
[2026-10-28 23:03:03,921.921 INFO    ] Checking for camera pi updates...
[2026-10-28 23:03:03,958.958 INFO    ] 200
[2026-10-28 23:03:03,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:03:04,001.001 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:03:04,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:03:04,079.079 INFO    ] No camera update needed
[2026-10-28 23:03:04,082.082 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:03:04,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:03:04,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:03:04,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:03:06,134.134 INFO    ] ================================================
[2026-10-28 23:03:06,149.149 INFO    ] Launching Daemon at Wed Oct 28 23:03:06 IST 2026
[2026-10-28 23:03:06,160.160 INFO    ] ================================================
[2026-10-28 23:03:06,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:03:06
[2026-10-28 23:03:07,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:03:07,808.808 INFO    ] Initializing speech engine...
[2026-10-28 23:03:07,822.822 INFO    ] 2026-10-28 23:03:07
[2026-10-28 23:03:08,163.163 INFO    ] 2026-10-28 23:03:08
[2026-10-28 23:03:08,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:03:08,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:03:08,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:03:08,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:03:08,842.842 INFO    ] time= 28/10/2026 23:03:08
[2026-10-28 23:03:08,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:03:08,954.954 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:03:09,118.118 INFO    ] No existing commands found in stream
[2026-10-28 23:03:14,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:03:14,142.142 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 23:03:18,381.381 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:03:18,384.384 INFO    ] Checking for system updates...
[2026-10-28 23:03:18,423.423 INFO    ] 200
[2026-10-28 23:03:18,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:03:18,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:03:18,481.481 INFO    ] No update needed
[2026-10-28 23:03:18,484.484 INFO    ] Checking for camera pi updates...
[2026-10-28 23:03:18,517.517 INFO    ] 200
[2026-10-28 23:03:18,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:03:18,564.564 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:03:18,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:03:18,645.645 INFO    ] No camera update needed
[2026-10-28 23:03:18,647.647 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:03:18,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:03:18,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:03:18,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:03:20,700.700 INFO    ] ================================================
[2026-10-28 23:03:20,722.722 INFO    ] Launching Daemon at Wed Oct 28 23:03:20 IST 2026
[2026-10-28 23:03:20,734.734 INFO    ] ================================================
[2026-10-28 23:03:21,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:03:21
[2026-10-28 23:03:21,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:03:22,190.190 INFO    ] Initializing speech engine...
[2026-10-28 23:03:22,200.200 INFO    ] 2026-10-28 23:03:22
[2026-10-28 23:03:22,448.448 INFO    ] 2026-10-28 23:03:22
[2026-10-28 23:03:22,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:03:22,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:03:22,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:03:22,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:03:23,005.005 INFO    ] time= 28/10/2026 23:03:22
[2026-10-28 23:03:23,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:03:23,050.050 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:03:23,157.157 INFO    ] No existing commands found in stream
[2026-10-28 23:03:28,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:03:28,180.180 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 23:03:31,512.512 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:03:31,515.515 INFO    ] Checking for system updates...
[2026-10-28 23:03:31,555.555 INFO    ] 200
[2026-10-28 23:03:31,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:03:31,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:03:31,626.626 INFO    ] No update needed
[2026-10-28 23:03:31,628.628 INFO    ] Checking for camera pi updates...
[2026-10-28 23:03:31,665.665 INFO    ] 200
[2026-10-28 23:03:31,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:03:31,711.711 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:03:31,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:03:31,921.921 INFO    ] No camera update needed
[2026-10-28 23:03:31,924.924 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:03:31,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:03:31,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:03:31,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:03:33,979.979 INFO    ] ================================================
[2026-10-28 23:03:34,995.995 INFO    ] Launching Daemon at Wed Oct 28 23:03:33 IST 2026
[2026-10-28 23:03:34,005.005 INFO    ] ================================================
[2026-10-28 23:03:34,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:03:34
[2026-10-28 23:03:35,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:03:35,532.532 INFO    ] Initializing speech engine...
[2026-10-28 23:03:35,545.545 INFO    ] 2026-10-28 23:03:35
[2026-10-28 23:03:35,832.832 INFO    ] 2026-10-28 23:03:35
[2026-10-28 23:03:35,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:03:36,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:03:36,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:03:36,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:03:36,399.399 INFO    ] time= 28/10/2026 23:03:36
[2026-10-28 23:03:36,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:03:36,436.436 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:03:36,567.567 INFO    ] No existing commands found in stream
[2026-10-28 23:03:41,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:03:41,596.596 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-28 23:03:43,463.463 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:03:43,466.466 INFO    ] Checking for system updates...
[2026-10-28 23:03:43,504.504 INFO    ] 200
[2026-10-28 23:03:43,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:03:43,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:03:43,571.571 INFO    ] No update needed
[2026-10-28 23:03:43,575.575 INFO    ] Checking for camera pi updates...
[2026-10-28 23:03:43,609.609 INFO    ] 200
[2026-10-28 23:03:43,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:03:43,654.654 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:03:43,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:03:43,761.761 INFO    ] No camera update needed
[2026-10-28 23:03:43,763.763 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:03:43,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:03:43,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:03:43,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:03:45,818.818 INFO    ] ================================================
[2026-10-28 23:03:45,834.834 INFO    ] Launching Daemon at Wed Oct 28 23:03:45 IST 2026
[2026-10-28 23:03:45,845.845 INFO    ] ================================================
[2026-10-28 23:03:46,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:03:46
[2026-10-28 23:03:47,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:03:47,303.303 INFO    ] Initializing speech engine...
[2026-10-28 23:03:47,309.309 INFO    ] 2026-10-28 23:03:47
[2026-10-28 23:03:47,569.569 INFO    ] 2026-10-28 23:03:47
[2026-10-28 23:03:47,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:03:47,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:03:47,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:03:48,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:03:48,124.124 INFO    ] time= 28/10/2026 23:03:48
[2026-10-28 23:03:48,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:03:48,158.158 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:03:48,284.284 INFO    ] No existing commands found in stream
[2026-10-28 23:03:53,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:03:53,317.317 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-28 23:03:57,822.822 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:03:57,825.825 INFO    ] Checking for system updates...
[2026-10-28 23:03:57,866.866 INFO    ] 200
[2026-10-28 23:03:57,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:03:57,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:03:57,926.926 INFO    ] No update needed
[2026-10-28 23:03:57,929.929 INFO    ] Checking for camera pi updates...
[2026-10-28 23:03:57,967.967 INFO    ] 200
[2026-10-28 23:03:57,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:03:58,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:03:58,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:03:58,110.110 INFO    ] No camera update needed
[2026-10-28 23:03:58,113.113 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:03:58,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:03:58,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:03:58,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:04:00,169.169 INFO    ] ================================================
[2026-10-28 23:04:00,185.185 INFO    ] Launching Daemon at Wed Oct 28 23:04:00 IST 2026
[2026-10-28 23:04:00,196.196 INFO    ] ================================================
[2026-10-28 23:04:00,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:04:00
[2026-10-28 23:04:01,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:04:01,838.838 INFO    ] Initializing speech engine...
[2026-10-28 23:04:01,935.935 INFO    ] 2026-10-28 23:04:01
[2026-10-28 23:04:02,292.292 INFO    ] 2026-10-28 23:04:02
[2026-10-28 23:04:02,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:04:02,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:04:02,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:04:02,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:04:02,841.841 INFO    ] time= 28/10/2026 23:04:02
[2026-10-28 23:04:02,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:04:02,903.903 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:04:03,041.041 INFO    ] No existing commands found in stream
[2026-10-28 23:04:08,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:04:08,062.062 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-28 23:04:08,821.821 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:04:08,824.824 INFO    ] Checking for system updates...
[2026-10-28 23:04:08,864.864 INFO    ] 200
[2026-10-28 23:04:08,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:04:08,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:04:08,922.922 INFO    ] No update needed
[2026-10-28 23:04:08,925.925 INFO    ] Checking for camera pi updates...
[2026-10-28 23:04:08,958.958 INFO    ] 200
[2026-10-28 23:04:08,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:04:09,000.000 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:04:09,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:04:09,085.085 INFO    ] No camera update needed
[2026-10-28 23:04:09,087.087 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:04:09,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:04:09,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:04:09,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:04:11,140.140 INFO    ] ================================================
[2026-10-28 23:04:11,156.156 INFO    ] Launching Daemon at Wed Oct 28 23:04:11 IST 2026
[2026-10-28 23:04:11,168.168 INFO    ] ================================================
[2026-10-28 23:04:11,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:04:11
[2026-10-28 23:04:12,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:04:12,563.563 INFO    ] Initializing speech engine...
[2026-10-28 23:04:12,578.578 INFO    ] 2026-10-28 23:04:12
[2026-10-28 23:04:12,844.844 INFO    ] 2026-10-28 23:04:12
[2026-10-28 23:04:12,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:04:13,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:04:13,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:04:13,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:04:13,411.411 INFO    ] time= 28/10/2026 23:04:13
[2026-10-28 23:04:13,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:04:13,434.434 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:04:13,553.553 INFO    ] No existing commands found in stream
[2026-10-28 23:04:18,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:04:18,580.580 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-28 23:04:22,877.877 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:04:22,880.880 INFO    ] Checking for system updates...
[2026-10-28 23:04:22,915.915 INFO    ] 200
[2026-10-28 23:04:22,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:04:22,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:04:22,979.979 INFO    ] No update needed
[2026-10-28 23:04:22,982.982 INFO    ] Checking for camera pi updates...
[2026-10-28 23:04:23,015.015 INFO    ] 200
[2026-10-28 23:04:23,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:04:23,058.058 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:04:23,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:04:23,140.140 INFO    ] No camera update needed
[2026-10-28 23:04:23,142.142 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:04:23,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:04:23,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:04:23,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:04:25,196.196 INFO    ] ================================================
[2026-10-28 23:04:25,212.212 INFO    ] Launching Daemon at Wed Oct 28 23:04:25 IST 2026
[2026-10-28 23:04:25,222.222 INFO    ] ================================================
[2026-10-28 23:04:25,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:04:25
[2026-10-28 23:04:26,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:04:26,640.640 INFO    ] Initializing speech engine...
[2026-10-28 23:04:26,652.652 INFO    ] 2026-10-28 23:04:26
[2026-10-28 23:04:26,919.919 INFO    ] 2026-10-28 23:04:26
[2026-10-28 23:04:26,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:04:27,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:04:27,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:04:27,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:04:27,487.487 INFO    ] time= 28/10/2026 23:04:27
[2026-10-28 23:04:27,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:04:27,512.512 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:04:27,632.632 INFO    ] No existing commands found in stream
[2026-10-28 23:04:32,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:04:32,657.657 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-10-28 23:04:34,871.871 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:04:34,874.874 INFO    ] Checking for system updates...
[2026-10-28 23:04:34,911.911 INFO    ] 200
[2026-10-28 23:04:34,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:04:34,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:04:34,978.978 INFO    ] No update needed
[2026-10-28 23:04:34,981.981 INFO    ] Checking for camera pi updates...
[2026-10-28 23:04:35,019.019 INFO    ] 200
[2026-10-28 23:04:35,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:04:35,066.066 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:04:35,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:04:35,151.151 INFO    ] No camera update needed
[2026-10-28 23:04:35,154.154 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:04:35,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:04:35,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:04:35,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:04:37,211.211 INFO    ] ================================================
[2026-10-28 23:04:37,226.226 INFO    ] Launching Daemon at Wed Oct 28 23:04:37 IST 2026
[2026-10-28 23:04:37,237.237 INFO    ] ================================================
[2026-10-28 23:04:37,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:04:37
[2026-10-28 23:04:38,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:04:38,630.630 INFO    ] Initializing speech engine...
[2026-10-28 23:04:38,645.645 INFO    ] 2026-10-28 23:04:38
[2026-10-28 23:04:38,907.907 INFO    ] 2026-10-28 23:04:38
[2026-10-28 23:04:38,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:04:39,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:04:39,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:04:39,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:04:39,460.460 INFO    ] time= 28/10/2026 23:04:39
[2026-10-28 23:04:39,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:04:39,483.483 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:04:39,615.615 INFO    ] No existing commands found in stream
[2026-10-28 23:04:44,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:04:44,645.645 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-28 23:04:48,424.424 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:04:48,427.427 INFO    ] Checking for system updates...
[2026-10-28 23:04:48,463.463 INFO    ] 200
[2026-10-28 23:04:48,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:04:48,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:04:48,519.519 INFO    ] No update needed
[2026-10-28 23:04:48,522.522 INFO    ] Checking for camera pi updates...
[2026-10-28 23:04:48,556.556 INFO    ] 200
[2026-10-28 23:04:48,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:04:48,599.599 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:04:48,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:04:48,685.685 INFO    ] No camera update needed
[2026-10-28 23:04:48,687.687 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:04:48,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:04:48,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:04:48,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:04:50,739.739 INFO    ] ================================================
[2026-10-28 23:04:50,754.754 INFO    ] Launching Daemon at Wed Oct 28 23:04:50 IST 2026
[2026-10-28 23:04:50,765.765 INFO    ] ================================================
[2026-10-28 23:04:51,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:04:51
[2026-10-28 23:04:52,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:04:52,287.287 INFO    ] Initializing speech engine...
[2026-10-28 23:04:52,297.297 INFO    ] 2026-10-28 23:04:52
[2026-10-28 23:04:52,545.545 INFO    ] 2026-10-28 23:04:52
[2026-10-28 23:04:52,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:04:52,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:04:52,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:04:53,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:04:53,097.097 INFO    ] time= 28/10/2026 23:04:53
[2026-10-28 23:04:53,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:04:53,112.112 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:04:53,255.255 INFO    ] No existing commands found in stream
[2026-10-28 23:04:58,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:04:58,275.275 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-28 23:05:00,488.488 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:05:00,491.491 INFO    ] Checking for system updates...
[2026-10-28 23:05:00,531.531 INFO    ] 200
[2026-10-28 23:05:00,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:05:00,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:05:00,601.601 INFO    ] No update needed
[2026-10-28 23:05:00,605.605 INFO    ] Checking for camera pi updates...
[2026-10-28 23:05:00,647.647 INFO    ] 200
[2026-10-28 23:05:00,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:05:00,699.699 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:05:00,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:05:00,797.797 INFO    ] No camera update needed
[2026-10-28 23:05:00,799.799 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:05:00,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:05:00,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:05:00,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:05:02,880.880 INFO    ] ================================================
[2026-10-28 23:05:02,901.901 INFO    ] Launching Daemon at Wed Oct 28 23:05:02 IST 2026
[2026-10-28 23:05:02,914.914 INFO    ] ================================================
[2026-10-28 23:05:03,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:05:03
[2026-10-28 23:05:04,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:05:04,486.486 INFO    ] Initializing speech engine...
[2026-10-28 23:05:04,512.512 INFO    ] 2026-10-28 23:05:04
[2026-10-28 23:05:04,799.799 INFO    ] 2026-10-28 23:05:04
[2026-10-28 23:05:04,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:05:05,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:05:05,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:05:05,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:05:05,373.373 INFO    ] time= 28/10/2026 23:05:05
[2026-10-28 23:05:05,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:05:05,403.403 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:05:05,549.549 INFO    ] No existing commands found in stream
[2026-10-28 23:05:10,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:05:10,582.582 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-10-28 23:05:14,343.343 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:05:14,346.346 INFO    ] Checking for system updates...
[2026-10-28 23:05:14,384.384 INFO    ] 200
[2026-10-28 23:05:14,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:05:14,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:05:14,447.447 INFO    ] No update needed
[2026-10-28 23:05:14,450.450 INFO    ] Checking for camera pi updates...
[2026-10-28 23:05:14,484.484 INFO    ] 200
[2026-10-28 23:05:14,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:05:14,531.531 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:05:14,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:05:14,626.626 INFO    ] No camera update needed
[2026-10-28 23:05:14,628.628 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:05:14,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:05:14,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:05:14,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:05:16,681.681 INFO    ] ================================================
[2026-10-28 23:05:16,697.697 INFO    ] Launching Daemon at Wed Oct 28 23:05:16 IST 2026
[2026-10-28 23:05:16,708.708 INFO    ] ================================================
[2026-10-28 23:05:17,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:05:17
[2026-10-28 23:05:17,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:05:18,132.132 INFO    ] Initializing speech engine...
[2026-10-28 23:05:18,141.141 INFO    ] 2026-10-28 23:05:18
[2026-10-28 23:05:18,389.389 INFO    ] 2026-10-28 23:05:18
[2026-10-28 23:05:18,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:05:18,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:05:18,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:05:18,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:05:18,959.959 INFO    ] time= 28/10/2026 23:05:18
[2026-10-28 23:05:18,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:05:19,003.003 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:05:19,148.148 INFO    ] No existing commands found in stream
[2026-10-28 23:05:24,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:05:24,170.170 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-28 23:05:27,260.260 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:05:27,263.263 INFO    ] Checking for system updates...
[2026-10-28 23:05:27,299.299 INFO    ] 200
[2026-10-28 23:05:27,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:05:27,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:05:27,356.356 INFO    ] No update needed
[2026-10-28 23:05:27,358.358 INFO    ] Checking for camera pi updates...
[2026-10-28 23:05:27,391.391 INFO    ] 200
[2026-10-28 23:05:27,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:05:27,434.434 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:05:27,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:05:27,520.520 INFO    ] No camera update needed
[2026-10-28 23:05:27,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:05:27,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:05:27,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:05:27,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:05:29,579.579 INFO    ] ================================================
[2026-10-28 23:05:29,595.595 INFO    ] Launching Daemon at Wed Oct 28 23:05:29 IST 2026
[2026-10-28 23:05:29,606.606 INFO    ] ================================================
[2026-10-28 23:05:30,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:05:30
[2026-10-28 23:05:30,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:05:31,040.040 INFO    ] Initializing speech engine...
[2026-10-28 23:05:31,046.046 INFO    ] 2026-10-28 23:05:31
[2026-10-28 23:05:31,342.342 INFO    ] 2026-10-28 23:05:31
[2026-10-28 23:05:31,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:05:31,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:05:31,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:05:31,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:05:31,931.931 INFO    ] time= 28/10/2026 23:05:31
[2026-10-28 23:05:31,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:05:31,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:05:32,126.126 INFO    ] No existing commands found in stream
[2026-10-28 23:05:37,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:05:37,149.149 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 23:05:37,852.852 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:05:37,854.854 INFO    ] Checking for system updates...
[2026-10-28 23:05:37,890.890 INFO    ] 200
[2026-10-28 23:05:37,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:05:37,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:05:37,948.948 INFO    ] No update needed
[2026-10-28 23:05:37,950.950 INFO    ] Checking for camera pi updates...
[2026-10-28 23:05:37,984.984 INFO    ] 200
[2026-10-28 23:05:37,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:05:38,026.026 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:05:38,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:05:38,215.215 INFO    ] No camera update needed
[2026-10-28 23:05:38,217.217 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:05:38,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:05:38,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:05:38,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:05:40,269.269 INFO    ] ================================================
[2026-10-28 23:05:40,285.285 INFO    ] Launching Daemon at Wed Oct 28 23:05:40 IST 2026
[2026-10-28 23:05:40,296.296 INFO    ] ================================================
[2026-10-28 23:05:40,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:05:40
[2026-10-28 23:05:41,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:05:41,724.724 INFO    ] Initializing speech engine...
[2026-10-28 23:05:41,732.732 INFO    ] 2026-10-28 23:05:41
[2026-10-28 23:05:41,986.986 INFO    ] 2026-10-28 23:05:41
[2026-10-28 23:05:42,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:05:42,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:05:42,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:05:42,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:05:42,541.541 INFO    ] time= 28/10/2026 23:05:42
[2026-10-28 23:05:42,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:05:42,586.586 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:05:42,702.702 INFO    ] No existing commands found in stream
[2026-10-28 23:05:47,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:05:47,729.729 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-28 23:05:50,383.383 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:05:50,385.385 INFO    ] Checking for system updates...
[2026-10-28 23:05:50,424.424 INFO    ] 200
[2026-10-28 23:05:50,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:05:50,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:05:50,483.483 INFO    ] No update needed
[2026-10-28 23:05:50,485.485 INFO    ] Checking for camera pi updates...
[2026-10-28 23:05:50,518.518 INFO    ] 200
[2026-10-28 23:05:50,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:05:50,560.560 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:05:50,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:05:50,649.649 INFO    ] No camera update needed
[2026-10-28 23:05:50,651.651 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:05:50,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:05:50,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:05:50,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:05:52,707.707 INFO    ] ================================================
[2026-10-28 23:05:52,722.722 INFO    ] Launching Daemon at Wed Oct 28 23:05:52 IST 2026
[2026-10-28 23:05:52,733.733 INFO    ] ================================================
[2026-10-28 23:05:53,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:05:53
[2026-10-28 23:05:53,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:05:54,208.208 INFO    ] Initializing speech engine...
[2026-10-28 23:05:54,217.217 INFO    ] 2026-10-28 23:05:54
[2026-10-28 23:05:54,483.483 INFO    ] 2026-10-28 23:05:54
[2026-10-28 23:05:54,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:05:54,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:05:54,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:05:55,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:05:55,025.025 INFO    ] time= 28/10/2026 23:05:55
[2026-10-28 23:05:55,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:05:55,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:05:55,177.177 INFO    ] No existing commands found in stream
[2026-10-28 23:06:00,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:06:00,208.208 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 23:06:02,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:06:02,308.308 INFO    ] Checking for system updates...
[2026-10-28 23:06:02,361.361 INFO    ] 200
[2026-10-28 23:06:02,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:06:02,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:06:02,437.437 INFO    ] No update needed
[2026-10-28 23:06:02,439.439 INFO    ] Checking for camera pi updates...
[2026-10-28 23:06:02,474.474 INFO    ] 200
[2026-10-28 23:06:02,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:06:02,546.546 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:06:02,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:06:02,672.672 INFO    ] No camera update needed
[2026-10-28 23:06:02,675.675 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:06:02,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:06:02,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:06:02,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:06:04,733.733 INFO    ] ================================================
[2026-10-28 23:06:04,748.748 INFO    ] Launching Daemon at Wed Oct 28 23:06:04 IST 2026
[2026-10-28 23:06:04,759.759 INFO    ] ================================================
[2026-10-28 23:06:05,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:06:05
[2026-10-28 23:06:06,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:06:06,358.358 INFO    ] Initializing speech engine...
[2026-10-28 23:06:06,369.369 INFO    ] 2026-10-28 23:06:06
[2026-10-28 23:06:06,667.667 INFO    ] 2026-10-28 23:06:06
[2026-10-28 23:06:06,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:06:07,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:06:07,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:06:07,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:06:07,394.394 INFO    ] time= 28/10/2026 23:06:07
[2026-10-28 23:06:07,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:06:07,475.475 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:06:07,602.602 INFO    ] No existing commands found in stream
[2026-10-28 23:06:12,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:06:12,624.624 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-28 23:06:13,664.664 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:06:13,667.667 INFO    ] Checking for system updates...
[2026-10-28 23:06:13,704.704 INFO    ] 200
[2026-10-28 23:06:13,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:06:13,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:06:13,763.763 INFO    ] No update needed
[2026-10-28 23:06:13,765.765 INFO    ] Checking for camera pi updates...
[2026-10-28 23:06:13,802.802 INFO    ] 200
[2026-10-28 23:06:13,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:06:13,846.846 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:06:13,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:06:13,951.951 INFO    ] No camera update needed
[2026-10-28 23:06:13,955.955 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:06:13,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:06:13,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:06:13,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:06:16,010.010 INFO    ] ================================================
[2026-10-28 23:06:16,025.025 INFO    ] Launching Daemon at Wed Oct 28 23:06:16 IST 2026
[2026-10-28 23:06:16,037.037 INFO    ] ================================================
[2026-10-28 23:06:16,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:06:16
[2026-10-28 23:06:17,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:06:17,490.490 INFO    ] Initializing speech engine...
[2026-10-28 23:06:17,496.496 INFO    ] 2026-10-28 23:06:17
[2026-10-28 23:06:17,759.759 INFO    ] 2026-10-28 23:06:17
[2026-10-28 23:06:17,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:06:18,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:06:18,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:06:18,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:06:18,451.451 INFO    ] time= 28/10/2026 23:06:18
[2026-10-28 23:06:18,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:06:18,545.545 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:06:18,692.692 INFO    ] No existing commands found in stream
[2026-10-28 23:06:23,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:06:23,708.708 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-28 23:06:24,329.329 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:06:24,332.332 INFO    ] Checking for system updates...
[2026-10-28 23:06:24,369.369 INFO    ] 200
[2026-10-28 23:06:24,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:06:24,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:06:24,428.428 INFO    ] No update needed
[2026-10-28 23:06:24,430.430 INFO    ] Checking for camera pi updates...
[2026-10-28 23:06:24,464.464 INFO    ] 200
[2026-10-28 23:06:24,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:06:24,506.506 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:06:24,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:06:24,589.589 INFO    ] No camera update needed
[2026-10-28 23:06:24,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:06:24,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:06:24,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:06:24,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:06:26,642.642 INFO    ] ================================================
[2026-10-28 23:06:26,657.657 INFO    ] Launching Daemon at Wed Oct 28 23:06:26 IST 2026
[2026-10-28 23:06:26,668.668 INFO    ] ================================================
[2026-10-28 23:06:27,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:06:27
[2026-10-28 23:06:27,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:06:28,109.109 INFO    ] Initializing speech engine...
[2026-10-28 23:06:28,128.128 INFO    ] 2026-10-28 23:06:28
[2026-10-28 23:06:28,387.387 INFO    ] 2026-10-28 23:06:28
[2026-10-28 23:06:28,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:06:28,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:06:28,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:06:28,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:06:28,940.940 INFO    ] time= 28/10/2026 23:06:28
[2026-10-28 23:06:28,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:06:28,964.964 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:06:29,095.095 INFO    ] No existing commands found in stream
[2026-10-28 23:06:34,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:06:34,118.118 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-10-28 23:06:36,943.943 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:06:36,945.945 INFO    ] Checking for system updates...
[2026-10-28 23:06:36,981.981 INFO    ] 200
[2026-10-28 23:06:36,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:06:37,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:06:37,040.040 INFO    ] No update needed
[2026-10-28 23:06:37,044.044 INFO    ] Checking for camera pi updates...
[2026-10-28 23:06:37,077.077 INFO    ] 200
[2026-10-28 23:06:37,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:06:37,121.121 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:06:37,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:06:37,228.228 INFO    ] No camera update needed
[2026-10-28 23:06:37,230.230 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:06:37,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:06:37,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:06:37,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:06:39,284.284 INFO    ] ================================================
[2026-10-28 23:06:39,299.299 INFO    ] Launching Daemon at Wed Oct 28 23:06:39 IST 2026
[2026-10-28 23:06:39,309.309 INFO    ] ================================================
[2026-10-28 23:06:39,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:06:39
[2026-10-28 23:06:40,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:06:40,767.767 INFO    ] Initializing speech engine...
[2026-10-28 23:06:40,773.773 INFO    ] 2026-10-28 23:06:40
[2026-10-28 23:06:41,020.020 INFO    ] 2026-10-28 23:06:41
[2026-10-28 23:06:41,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:06:41,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:06:41,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:06:41,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:06:41,879.879 INFO    ] time= 28/10/2026 23:06:41
[2026-10-28 23:06:41,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:06:41,974.974 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:06:42,140.140 INFO    ] No existing commands found in stream
[2026-10-28 23:06:47,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:06:47,156.156 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-28 23:06:48,605.605 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:06:48,608.608 INFO    ] Checking for system updates...
[2026-10-28 23:06:48,647.647 INFO    ] 200
[2026-10-28 23:06:48,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:06:48,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:06:48,711.711 INFO    ] No update needed
[2026-10-28 23:06:48,714.714 INFO    ] Checking for camera pi updates...
[2026-10-28 23:06:48,748.748 INFO    ] 200
[2026-10-28 23:06:48,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:06:48,794.794 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:06:48,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:06:48,877.877 INFO    ] No camera update needed
[2026-10-28 23:06:48,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:06:48,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:06:48,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:06:48,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:06:50,932.932 INFO    ] ================================================
[2026-10-28 23:06:50,947.947 INFO    ] Launching Daemon at Wed Oct 28 23:06:50 IST 2026
[2026-10-28 23:06:50,957.957 INFO    ] ================================================
[2026-10-28 23:06:51,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:06:51
[2026-10-28 23:06:52,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:06:52,375.375 INFO    ] Initializing speech engine...
[2026-10-28 23:06:52,384.384 INFO    ] 2026-10-28 23:06:52
[2026-10-28 23:06:52,632.632 INFO    ] 2026-10-28 23:06:52
[2026-10-28 23:06:52,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:06:52,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:06:52,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:06:53,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:06:53,200.200 INFO    ] time= 28/10/2026 23:06:53
[2026-10-28 23:06:53,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:06:53,248.248 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:06:53,357.357 INFO    ] No existing commands found in stream
[2026-10-28 23:06:58,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:06:58,376.376 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-10-28 23:06:59,262.262 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:06:59,265.265 INFO    ] Checking for system updates...
[2026-10-28 23:06:59,304.304 INFO    ] 200
[2026-10-28 23:06:59,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:06:59,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:06:59,361.361 INFO    ] No update needed
[2026-10-28 23:06:59,363.363 INFO    ] Checking for camera pi updates...
[2026-10-28 23:06:59,396.396 INFO    ] 200
[2026-10-28 23:06:59,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:06:59,439.439 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:06:59,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:06:59,536.536 INFO    ] No camera update needed
[2026-10-28 23:06:59,539.539 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:06:59,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:06:59,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:06:59,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:07:01,592.592 INFO    ] ================================================
[2026-10-28 23:07:01,612.612 INFO    ] Launching Daemon at Wed Oct 28 23:07:01 IST 2026
[2026-10-28 23:07:01,628.628 INFO    ] ================================================
[2026-10-28 23:07:02,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:07:02
[2026-10-28 23:07:03,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:07:03,888.888 INFO    ] Initializing speech engine...
[2026-10-28 23:07:03,896.896 INFO    ] 2026-10-28 23:07:03
[2026-10-28 23:07:04,216.216 INFO    ] 2026-10-28 23:07:04
[2026-10-28 23:07:04,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:07:04,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:07:04,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:07:04,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:07:04,745.745 INFO    ] time= 28/10/2026 23:07:04
[2026-10-28 23:07:04,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:07:04,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:07:04,901.901 INFO    ] No existing commands found in stream
[2026-10-28 23:07:09,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:07:09,936.936 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-10-28 23:07:14,061.061 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:07:14,064.064 INFO    ] Checking for system updates...
[2026-10-28 23:07:14,107.107 INFO    ] 200
[2026-10-28 23:07:14,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:07:14,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:07:14,172.172 INFO    ] No update needed
[2026-10-28 23:07:14,174.174 INFO    ] Checking for camera pi updates...
[2026-10-28 23:07:14,212.212 INFO    ] 200
[2026-10-28 23:07:14,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:07:14,254.254 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:07:14,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:07:14,343.343 INFO    ] No camera update needed
[2026-10-28 23:07:14,346.346 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:07:14,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:07:14,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:07:14,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:07:16,398.398 INFO    ] ================================================
[2026-10-28 23:07:16,413.413 INFO    ] Launching Daemon at Wed Oct 28 23:07:16 IST 2026
[2026-10-28 23:07:16,424.424 INFO    ] ================================================
[2026-10-28 23:07:17,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:07:17
[2026-10-28 23:07:17,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:07:18,029.029 INFO    ] Initializing speech engine...
[2026-10-28 23:07:18,036.036 INFO    ] 2026-10-28 23:07:18
[2026-10-28 23:07:18,295.295 INFO    ] 2026-10-28 23:07:18
[2026-10-28 23:07:18,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:07:18,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:07:18,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:07:18,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:07:18,998.998 INFO    ] time= 28/10/2026 23:07:18
[2026-10-28 23:07:19,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:07:19,092.092 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:07:19,248.248 INFO    ] No existing commands found in stream
[2026-10-28 23:07:24,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:07:24,288.288 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 23:07:28,101.101 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:07:28,104.104 INFO    ] Checking for system updates...
[2026-10-28 23:07:28,148.148 INFO    ] 200
[2026-10-28 23:07:28,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:07:28,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:07:28,208.208 INFO    ] No update needed
[2026-10-28 23:07:28,210.210 INFO    ] Checking for camera pi updates...
[2026-10-28 23:07:28,300.300 INFO    ] 200
[2026-10-28 23:07:28,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:07:28,357.357 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:07:28,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:07:28,451.451 INFO    ] No camera update needed
[2026-10-28 23:07:28,454.454 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:07:28,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:07:28,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:07:28,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:07:30,505.505 INFO    ] ================================================
[2026-10-28 23:07:30,523.523 INFO    ] Launching Daemon at Wed Oct 28 23:07:30 IST 2026
[2026-10-28 23:07:30,534.534 INFO    ] ================================================
[2026-10-28 23:07:31,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:07:31
[2026-10-28 23:07:31,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:07:32,000.000 INFO    ] Initializing speech engine...
[2026-10-28 23:07:32,006.006 INFO    ] 2026-10-28 23:07:32
[2026-10-28 23:07:32,303.303 INFO    ] 2026-10-28 23:07:32
[2026-10-28 23:07:32,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:07:32,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:07:32,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:07:32,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:07:32,880.880 INFO    ] time= 28/10/2026 23:07:32
[2026-10-28 23:07:32,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:07:32,921.921 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:07:33,016.016 INFO    ] No existing commands found in stream
[2026-10-28 23:07:38,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:07:38,028.028 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-10-28 23:07:40,383.383 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:07:40,385.385 INFO    ] Checking for system updates...
[2026-10-28 23:07:40,426.426 INFO    ] 200
[2026-10-28 23:07:40,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:07:40,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:07:40,483.483 INFO    ] No update needed
[2026-10-28 23:07:40,486.486 INFO    ] Checking for camera pi updates...
[2026-10-28 23:07:40,519.519 INFO    ] 200
[2026-10-28 23:07:40,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:07:40,569.569 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:07:40,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:07:40,764.764 INFO    ] No camera update needed
[2026-10-28 23:07:40,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:07:40,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:07:40,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:07:40,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:07:42,819.819 INFO    ] ================================================
[2026-10-28 23:07:42,834.834 INFO    ] Launching Daemon at Wed Oct 28 23:07:42 IST 2026
[2026-10-28 23:07:42,844.844 INFO    ] ================================================
[2026-10-28 23:07:43,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:07:43
[2026-10-28 23:07:44,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:07:44,324.324 INFO    ] Initializing speech engine...
[2026-10-28 23:07:44,332.332 INFO    ] 2026-10-28 23:07:44
[2026-10-28 23:07:44,589.589 INFO    ] 2026-10-28 23:07:44
[2026-10-28 23:07:44,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:07:44,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:07:44,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:07:45,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:07:45,141.141 INFO    ] time= 28/10/2026 23:07:45
[2026-10-28 23:07:45,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:07:45,176.176 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:07:45,316.316 INFO    ] No existing commands found in stream
[2026-10-28 23:07:50,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:07:50,349.349 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-10-28 23:07:53,343.343 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:07:53,346.346 INFO    ] Checking for system updates...
[2026-10-28 23:07:53,388.388 INFO    ] 200
[2026-10-28 23:07:53,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:07:53,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:07:53,454.454 INFO    ] No update needed
[2026-10-28 23:07:53,456.456 INFO    ] Checking for camera pi updates...
[2026-10-28 23:07:53,491.491 INFO    ] 200
[2026-10-28 23:07:53,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:07:53,543.543 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:07:53,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:07:53,623.623 INFO    ] No camera update needed
[2026-10-28 23:07:53,626.626 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:07:53,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:07:53,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:07:53,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:07:55,678.678 INFO    ] ================================================
[2026-10-28 23:07:55,693.693 INFO    ] Launching Daemon at Wed Oct 28 23:07:55 IST 2026
[2026-10-28 23:07:55,705.705 INFO    ] ================================================
[2026-10-28 23:07:56,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:07:56
[2026-10-28 23:07:56,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:07:57,122.122 INFO    ] Initializing speech engine...
[2026-10-28 23:07:57,131.131 INFO    ] 2026-10-28 23:07:57
[2026-10-28 23:07:57,378.378 INFO    ] 2026-10-28 23:07:57
[2026-10-28 23:07:57,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:07:57,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:07:57,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:07:57,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:07:57,932.932 INFO    ] time= 28/10/2026 23:07:57
[2026-10-28 23:07:57,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:07:57,978.978 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:07:58,154.154 INFO    ] No existing commands found in stream
[2026-10-28 23:08:03,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:08:03,188.188 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-10-28 23:08:06,309.309 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:08:06,312.312 INFO    ] Checking for system updates...
[2026-10-28 23:08:06,348.348 INFO    ] 200
[2026-10-28 23:08:06,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:08:06,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:08:06,411.411 INFO    ] No update needed
[2026-10-28 23:08:06,414.414 INFO    ] Checking for camera pi updates...
[2026-10-28 23:08:06,451.451 INFO    ] 200
[2026-10-28 23:08:06,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:08:06,493.493 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:08:06,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:08:06,600.600 INFO    ] No camera update needed
[2026-10-28 23:08:06,602.602 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:08:06,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:08:06,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:08:06,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:08:08,654.654 INFO    ] ================================================
[2026-10-28 23:08:08,669.669 INFO    ] Launching Daemon at Wed Oct 28 23:08:08 IST 2026
[2026-10-28 23:08:08,680.680 INFO    ] ================================================
[2026-10-28 23:08:09,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:08:09
[2026-10-28 23:08:09,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:08:10,171.171 INFO    ] Initializing speech engine...
[2026-10-28 23:08:10,177.177 INFO    ] 2026-10-28 23:08:10
[2026-10-28 23:08:10,451.451 INFO    ] 2026-10-28 23:08:10
[2026-10-28 23:08:10,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:08:10,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:08:10,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:08:10,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:08:11,017.017 INFO    ] time= 28/10/2026 23:08:10
[2026-10-28 23:08:11,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:08:11,041.041 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:08:11,174.174 INFO    ] No existing commands found in stream
[2026-10-28 23:08:16,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:08:16,190.190 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-10-28 23:08:18,385.385 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:08:18,387.387 INFO    ] Checking for system updates...
[2026-10-28 23:08:18,423.423 INFO    ] 200
[2026-10-28 23:08:18,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:08:18,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:08:18,487.487 INFO    ] No update needed
[2026-10-28 23:08:18,490.490 INFO    ] Checking for camera pi updates...
[2026-10-28 23:08:18,524.524 INFO    ] 200
[2026-10-28 23:08:18,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:08:18,572.572 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:08:18,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:08:18,667.667 INFO    ] No camera update needed
[2026-10-28 23:08:18,670.670 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:08:18,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:08:18,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:08:18,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:08:20,726.726 INFO    ] ================================================
[2026-10-28 23:08:20,742.742 INFO    ] Launching Daemon at Wed Oct 28 23:08:20 IST 2026
[2026-10-28 23:08:20,753.753 INFO    ] ================================================
[2026-10-28 23:08:21,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:08:21
[2026-10-28 23:08:21,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:08:22,172.172 INFO    ] Initializing speech engine...
[2026-10-28 23:08:22,188.188 INFO    ] 2026-10-28 23:08:22
[2026-10-28 23:08:22,444.444 INFO    ] 2026-10-28 23:08:22
[2026-10-28 23:08:22,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:08:22,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:08:22,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:08:22,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:08:22,998.998 INFO    ] time= 28/10/2026 23:08:22
[2026-10-28 23:08:23,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:08:23,038.038 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:08:23,164.164 INFO    ] No existing commands found in stream
[2026-10-28 23:08:28,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:08:28,197.197 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-28 23:08:32,029.029 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:08:32,032.032 INFO    ] Checking for system updates...
[2026-10-28 23:08:32,070.070 INFO    ] 200
[2026-10-28 23:08:32,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:08:32,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:08:32,131.131 INFO    ] No update needed
[2026-10-28 23:08:32,134.134 INFO    ] Checking for camera pi updates...
[2026-10-28 23:08:32,169.169 INFO    ] 200
[2026-10-28 23:08:32,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:08:32,216.216 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:08:32,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:08:32,288.288 INFO    ] No camera update needed
[2026-10-28 23:08:32,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:08:32,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:08:32,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:08:32,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:08:34,346.346 INFO    ] ================================================
[2026-10-28 23:08:34,361.361 INFO    ] Launching Daemon at Wed Oct 28 23:08:34 IST 2026
[2026-10-28 23:08:34,372.372 INFO    ] ================================================
[2026-10-28 23:08:34,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:08:34
[2026-10-28 23:08:35,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:08:35,788.788 INFO    ] Initializing speech engine...
[2026-10-28 23:08:35,797.797 INFO    ] 2026-10-28 23:08:35
[2026-10-28 23:08:36,042.042 INFO    ] 2026-10-28 23:08:36
[2026-10-28 23:08:36,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:08:36,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:08:36,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:08:36,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:08:36,594.594 INFO    ] time= 28/10/2026 23:08:36
[2026-10-28 23:08:36,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:08:36,620.620 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:08:36,751.751 INFO    ] No existing commands found in stream
[2026-10-28 23:08:41,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:08:41,776.776 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-28 23:08:44,542.542 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:08:44,545.545 INFO    ] Checking for system updates...
[2026-10-28 23:08:44,584.584 INFO    ] 200
[2026-10-28 23:08:44,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:08:44,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:08:44,647.647 INFO    ] No update needed
[2026-10-28 23:08:44,650.650 INFO    ] Checking for camera pi updates...
[2026-10-28 23:08:44,686.686 INFO    ] 200
[2026-10-28 23:08:44,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:08:44,734.734 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:08:44,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:08:44,833.833 INFO    ] No camera update needed
[2026-10-28 23:08:44,835.835 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:08:44,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:08:44,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:08:44,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:08:46,888.888 INFO    ] ================================================
[2026-10-28 23:08:46,903.903 INFO    ] Launching Daemon at Wed Oct 28 23:08:46 IST 2026
[2026-10-28 23:08:46,913.913 INFO    ] ================================================
[2026-10-28 23:08:47,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:08:47
[2026-10-28 23:08:48,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:08:48,355.355 INFO    ] Initializing speech engine...
[2026-10-28 23:08:48,364.364 INFO    ] 2026-10-28 23:08:48
[2026-10-28 23:08:48,609.609 INFO    ] 2026-10-28 23:08:48
[2026-10-28 23:08:48,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:08:48,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:08:49,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:08:49,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:08:49,224.224 INFO    ] time= 28/10/2026 23:08:49
[2026-10-28 23:08:49,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:08:49,256.256 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:08:49,396.396 INFO    ] No existing commands found in stream
[2026-10-28 23:08:54,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:08:54,423.423 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 23:08:58,552.552 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:08:58,554.554 INFO    ] Checking for system updates...
[2026-10-28 23:08:58,590.590 INFO    ] 200
[2026-10-28 23:08:58,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:08:58,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:08:58,648.648 INFO    ] No update needed
[2026-10-28 23:08:58,650.650 INFO    ] Checking for camera pi updates...
[2026-10-28 23:08:58,687.687 INFO    ] 200
[2026-10-28 23:08:58,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:08:58,730.730 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:08:58,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:08:58,811.811 INFO    ] No camera update needed
[2026-10-28 23:08:58,816.816 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:08:58,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:08:58,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:08:58,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:09:00,870.870 INFO    ] ================================================
[2026-10-28 23:09:00,885.885 INFO    ] Launching Daemon at Wed Oct 28 23:09:00 IST 2026
[2026-10-28 23:09:00,896.896 INFO    ] ================================================
[2026-10-28 23:09:01,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:09:01
[2026-10-28 23:09:02,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:09:02,756.756 INFO    ] Initializing speech engine...
[2026-10-28 23:09:02,766.766 INFO    ] 2026-10-28 23:09:02
[2026-10-28 23:09:03,117.117 INFO    ] 2026-10-28 23:09:03
[2026-10-28 23:09:03,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:09:03,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:09:03,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:09:03,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:09:03,664.664 INFO    ] time= 28/10/2026 23:09:03
[2026-10-28 23:09:03,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:09:03,758.758 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:09:03,886.886 INFO    ] No existing commands found in stream
[2026-10-28 23:09:08,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:09:08,908.908 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 23:09:11,261.261 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:09:11,264.264 INFO    ] Checking for system updates...
[2026-10-28 23:09:11,305.305 INFO    ] 200
[2026-10-28 23:09:11,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:09:11,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:09:11,364.364 INFO    ] No update needed
[2026-10-28 23:09:11,367.367 INFO    ] Checking for camera pi updates...
[2026-10-28 23:09:11,402.402 INFO    ] 200
[2026-10-28 23:09:11,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:09:11,447.447 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:09:11,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:09:11,531.531 INFO    ] No camera update needed
[2026-10-28 23:09:11,534.534 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:09:11,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:09:11,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:09:11,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:09:13,588.588 INFO    ] ================================================
[2026-10-28 23:09:13,603.603 INFO    ] Launching Daemon at Wed Oct 28 23:09:13 IST 2026
[2026-10-28 23:09:13,614.614 INFO    ] ================================================
[2026-10-28 23:09:14,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:09:14
[2026-10-28 23:09:14,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:09:15,035.035 INFO    ] Initializing speech engine...
[2026-10-28 23:09:15,041.041 INFO    ] 2026-10-28 23:09:15
[2026-10-28 23:09:15,332.332 INFO    ] 2026-10-28 23:09:15
[2026-10-28 23:09:15,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:09:15,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:09:15,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:09:15,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:09:15,957.957 INFO    ] time= 28/10/2026 23:09:15
[2026-10-28 23:09:15,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:09:15,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:09:16,123.123 INFO    ] No existing commands found in stream
[2026-10-28 23:09:21,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:09:21,145.145 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 23:09:24,740.740 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:09:24,742.742 INFO    ] Checking for system updates...
[2026-10-28 23:09:24,782.782 INFO    ] 200
[2026-10-28 23:09:24,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:09:24,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:09:24,840.840 INFO    ] No update needed
[2026-10-28 23:09:24,842.842 INFO    ] Checking for camera pi updates...
[2026-10-28 23:09:24,876.876 INFO    ] 200
[2026-10-28 23:09:24,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:09:24,919.919 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:09:25,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:09:25,003.003 INFO    ] No camera update needed
[2026-10-28 23:09:25,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:09:25,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:09:25,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:09:25,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:09:27,057.057 INFO    ] ================================================
[2026-10-28 23:09:27,071.071 INFO    ] Launching Daemon at Wed Oct 28 23:09:27 IST 2026
[2026-10-28 23:09:27,082.082 INFO    ] ================================================
[2026-10-28 23:09:27,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:09:27
[2026-10-28 23:09:28,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:09:28,599.599 INFO    ] Initializing speech engine...
[2026-10-28 23:09:28,609.609 INFO    ] 2026-10-28 23:09:28
[2026-10-28 23:09:28,886.886 INFO    ] 2026-10-28 23:09:28
[2026-10-28 23:09:28,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:09:29,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:09:29,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:09:29,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:09:29,607.607 INFO    ] time= 28/10/2026 23:09:29
[2026-10-28 23:09:29,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:09:29,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:09:29,838.838 INFO    ] No existing commands found in stream
[2026-10-28 23:09:34,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:09:34,856.856 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-10-28 23:09:37,323.323 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:09:37,326.326 INFO    ] Checking for system updates...
[2026-10-28 23:09:37,366.366 INFO    ] 200
[2026-10-28 23:09:37,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:09:37,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:09:37,423.423 INFO    ] No update needed
[2026-10-28 23:09:37,426.426 INFO    ] Checking for camera pi updates...
[2026-10-28 23:09:37,459.459 INFO    ] 200
[2026-10-28 23:09:37,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:09:37,502.502 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:09:37,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:09:37,592.592 INFO    ] No camera update needed
[2026-10-28 23:09:37,595.595 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:09:37,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:09:37,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:09:37,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:09:39,648.648 INFO    ] ================================================
[2026-10-28 23:09:39,663.663 INFO    ] Launching Daemon at Wed Oct 28 23:09:39 IST 2026
[2026-10-28 23:09:39,674.674 INFO    ] ================================================
[2026-10-28 23:09:40,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:09:40
[2026-10-28 23:09:40,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:09:41,076.076 INFO    ] Initializing speech engine...
[2026-10-28 23:09:41,084.084 INFO    ] 2026-10-28 23:09:41
[2026-10-28 23:09:41,382.382 INFO    ] 2026-10-28 23:09:41
[2026-10-28 23:09:41,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:09:41,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:09:41,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:09:41,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:09:41,884.884 INFO    ] time= 28/10/2026 23:09:41
[2026-10-28 23:09:41,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:09:41,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:09:42,092.092 INFO    ] No existing commands found in stream
[2026-10-28 23:09:47,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:09:47,107.107 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-10-28 23:09:51,646.646 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:09:51,648.648 INFO    ] Checking for system updates...
[2026-10-28 23:09:51,685.685 INFO    ] 200
[2026-10-28 23:09:51,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:09:51,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:09:51,743.743 INFO    ] No update needed
[2026-10-28 23:09:51,746.746 INFO    ] Checking for camera pi updates...
[2026-10-28 23:09:51,780.780 INFO    ] 200
[2026-10-28 23:09:51,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:09:51,828.828 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:09:52,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:09:52,015.015 INFO    ] No camera update needed
[2026-10-28 23:09:52,017.017 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:09:52,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:09:52,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:09:52,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:09:54,073.073 INFO    ] ================================================
[2026-10-28 23:09:54,088.088 INFO    ] Launching Daemon at Wed Oct 28 23:09:54 IST 2026
[2026-10-28 23:09:54,099.099 INFO    ] ================================================
[2026-10-28 23:09:54,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:09:54
[2026-10-28 23:09:55,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:09:55,501.501 INFO    ] Initializing speech engine...
[2026-10-28 23:09:55,507.507 INFO    ] 2026-10-28 23:09:55
[2026-10-28 23:09:55,805.805 INFO    ] 2026-10-28 23:09:55
[2026-10-28 23:09:55,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:09:56,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:09:56,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:09:56,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:09:56,306.306 INFO    ] time= 28/10/2026 23:09:56
[2026-10-28 23:09:56,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:09:56,404.404 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:09:56,515.515 INFO    ] No existing commands found in stream
[2026-10-28 23:10:01,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:10:01,529.529 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-10-28 23:10:08,860.860 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:10:08,863.863 INFO    ] Checking for system updates...
[2026-10-28 23:10:08,900.900 INFO    ] 200
[2026-10-28 23:10:08,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:10:08,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:10:08,963.963 INFO    ] No update needed
[2026-10-28 23:10:08,966.966 INFO    ] Checking for camera pi updates...
[2026-10-28 23:10:09,002.002 INFO    ] 200
[2026-10-28 23:10:09,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:10:09,045.045 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:10:09,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:10:09,132.132 INFO    ] No camera update needed
[2026-10-28 23:10:09,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:10:09,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:10:09,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:10:09,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:10:11,189.189 INFO    ] ================================================
[2026-10-28 23:10:11,205.205 INFO    ] Launching Daemon at Wed Oct 28 23:10:11 IST 2026
[2026-10-28 23:10:11,216.216 INFO    ] ================================================
[2026-10-28 23:10:11,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:10:11
[2026-10-28 23:10:12,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:10:12,642.642 INFO    ] Initializing speech engine...
[2026-10-28 23:10:12,661.661 INFO    ] 2026-10-28 23:10:12
[2026-10-28 23:10:12,916.916 INFO    ] 2026-10-28 23:10:12
[2026-10-28 23:10:12,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:10:13,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:10:13,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:10:13,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:10:13,486.486 INFO    ] time= 28/10/2026 23:10:13
[2026-10-28 23:10:13,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:10:13,511.511 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:10:13,638.638 INFO    ] No existing commands found in stream
[2026-10-28 23:10:18,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:10:18,655.655 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-10-28 23:10:19,501.501 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:10:19,504.504 INFO    ] Checking for system updates...
[2026-10-28 23:10:19,539.539 INFO    ] 200
[2026-10-28 23:10:19,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:10:19,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:10:19,595.595 INFO    ] No update needed
[2026-10-28 23:10:19,598.598 INFO    ] Checking for camera pi updates...
[2026-10-28 23:10:19,631.631 INFO    ] 200
[2026-10-28 23:10:19,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:10:19,675.675 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:10:19,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:10:19,764.764 INFO    ] No camera update needed
[2026-10-28 23:10:19,766.766 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:10:19,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:10:19,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:10:19,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:10:21,817.817 INFO    ] ================================================
[2026-10-28 23:10:21,832.832 INFO    ] Launching Daemon at Wed Oct 28 23:10:21 IST 2026
[2026-10-28 23:10:21,842.842 INFO    ] ================================================
[2026-10-28 23:10:22,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:10:22
[2026-10-28 23:10:22,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:10:23,258.258 INFO    ] Initializing speech engine...
[2026-10-28 23:10:23,267.267 INFO    ] 2026-10-28 23:10:23
[2026-10-28 23:10:23,520.520 INFO    ] 2026-10-28 23:10:23
[2026-10-28 23:10:23,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:10:23,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:10:23,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:10:24,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:10:24,071.071 INFO    ] time= 28/10/2026 23:10:24
[2026-10-28 23:10:24,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:10:24,101.101 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:10:24,226.226 INFO    ] No existing commands found in stream
[2026-10-28 23:10:29,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:10:29,252.252 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-28 23:10:32,322.322 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:10:32,325.325 INFO    ] Checking for system updates...
[2026-10-28 23:10:32,368.368 INFO    ] 200
[2026-10-28 23:10:32,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:10:32,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:10:32,439.439 INFO    ] No update needed
[2026-10-28 23:10:32,442.442 INFO    ] Checking for camera pi updates...
[2026-10-28 23:10:32,482.482 INFO    ] 200
[2026-10-28 23:10:32,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:10:32,528.528 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:10:32,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:10:32,619.619 INFO    ] No camera update needed
[2026-10-28 23:10:32,622.622 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:10:32,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:10:32,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:10:32,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:10:34,677.677 INFO    ] ================================================
[2026-10-28 23:10:34,691.691 INFO    ] Launching Daemon at Wed Oct 28 23:10:34 IST 2026
[2026-10-28 23:10:34,702.702 INFO    ] ================================================
[2026-10-28 23:10:35,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:10:35
[2026-10-28 23:10:35,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:10:36,092.092 INFO    ] Initializing speech engine...
[2026-10-28 23:10:36,107.107 INFO    ] 2026-10-28 23:10:36
[2026-10-28 23:10:36,369.369 INFO    ] 2026-10-28 23:10:36
[2026-10-28 23:10:36,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:10:36,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:10:36,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:10:36,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:10:36,921.921 INFO    ] time= 28/10/2026 23:10:36
[2026-10-28 23:10:36,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:10:36,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:10:37,070.070 INFO    ] No existing commands found in stream
[2026-10-28 23:10:42,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:10:42,088.088 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-28 23:10:45,924.924 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:10:45,926.926 INFO    ] Checking for system updates...
[2026-10-28 23:10:45,962.962 INFO    ] 200
[2026-10-28 23:10:45,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:10:46,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:10:46,019.019 INFO    ] No update needed
[2026-10-28 23:10:46,021.021 INFO    ] Checking for camera pi updates...
[2026-10-28 23:10:46,058.058 INFO    ] 200
[2026-10-28 23:10:46,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:10:46,106.106 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:10:46,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:10:46,188.188 INFO    ] No camera update needed
[2026-10-28 23:10:46,190.190 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:10:46,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:10:46,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:10:46,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:10:48,244.244 INFO    ] ================================================
[2026-10-28 23:10:48,258.258 INFO    ] Launching Daemon at Wed Oct 28 23:10:48 IST 2026
[2026-10-28 23:10:48,269.269 INFO    ] ================================================
[2026-10-28 23:10:48,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:10:48
[2026-10-28 23:10:49,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:10:49,777.777 INFO    ] Initializing speech engine...
[2026-10-28 23:10:49,782.782 INFO    ] 2026-10-28 23:10:49
[2026-10-28 23:10:50,043.043 INFO    ] 2026-10-28 23:10:50
[2026-10-28 23:10:50,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:10:50,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:10:50,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:10:50,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:10:50,585.585 INFO    ] time= 28/10/2026 23:10:50
[2026-10-28 23:10:50,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:10:50,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:10:50,763.763 INFO    ] No existing commands found in stream
[2026-10-28 23:10:55,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:10:55,796.796 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-28 23:10:58,622.622 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:10:58,625.625 INFO    ] Checking for system updates...
[2026-10-28 23:10:58,661.661 INFO    ] 200
[2026-10-28 23:10:58,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:10:58,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:10:58,719.719 INFO    ] No update needed
[2026-10-28 23:10:58,721.721 INFO    ] Checking for camera pi updates...
[2026-10-28 23:10:58,755.755 INFO    ] 200
[2026-10-28 23:10:58,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:10:58,797.797 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:10:58,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:10:58,881.881 INFO    ] No camera update needed
[2026-10-28 23:10:58,884.884 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:10:58,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:10:58,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:10:58,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:11:00,936.936 INFO    ] ================================================
[2026-10-28 23:11:00,951.951 INFO    ] Launching Daemon at Wed Oct 28 23:11:00 IST 2026
[2026-10-28 23:11:00,962.962 INFO    ] ================================================
[2026-10-28 23:11:01,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:11:01
[2026-10-28 23:11:02,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:11:02,820.820 INFO    ] Initializing speech engine...
[2026-10-28 23:11:02,847.847 INFO    ] 2026-10-28 23:11:02
[2026-10-28 23:11:03,135.135 INFO    ] 2026-10-28 23:11:03
[2026-10-28 23:11:03,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:11:03,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:11:03,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:11:03,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:11:03,791.791 INFO    ] time= 28/10/2026 23:11:03
[2026-10-28 23:11:03,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:11:03,816.816 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:11:03,959.959 INFO    ] No existing commands found in stream
[2026-10-28 23:11:08,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:11:08,982.982 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-10-28 23:11:11,821.821 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:11:11,824.824 INFO    ] Checking for system updates...
[2026-10-28 23:11:11,866.866 INFO    ] 200
[2026-10-28 23:11:11,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:11:11,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:11:11,928.928 INFO    ] No update needed
[2026-10-28 23:11:11,931.931 INFO    ] Checking for camera pi updates...
[2026-10-28 23:11:11,964.964 INFO    ] 200
[2026-10-28 23:11:11,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:11:12,011.011 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:11:12,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:11:12,093.093 INFO    ] No camera update needed
[2026-10-28 23:11:12,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:11:12,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:11:12,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:11:12,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:11:14,149.149 INFO    ] ================================================
[2026-10-28 23:11:14,164.164 INFO    ] Launching Daemon at Wed Oct 28 23:11:14 IST 2026
[2026-10-28 23:11:14,175.175 INFO    ] ================================================
[2026-10-28 23:11:14,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:11:14
[2026-10-28 23:11:15,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:11:15,918.918 INFO    ] Initializing speech engine...
[2026-10-28 23:11:15,927.927 INFO    ] 2026-10-28 23:11:15
[2026-10-28 23:11:16,190.190 INFO    ] 2026-10-28 23:11:16
[2026-10-28 23:11:16,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:11:16,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:11:16,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:11:16,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:11:16,734.734 INFO    ] time= 28/10/2026 23:11:16
[2026-10-28 23:11:16,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:11:16,781.781 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:11:16,888.888 INFO    ] No existing commands found in stream
[2026-10-28 23:11:21,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:11:21,918.918 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-28 23:11:26,462.462 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:11:26,465.465 INFO    ] Checking for system updates...
[2026-10-28 23:11:26,500.500 INFO    ] 200
[2026-10-28 23:11:26,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:11:26,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:11:26,564.564 INFO    ] No update needed
[2026-10-28 23:11:26,567.567 INFO    ] Checking for camera pi updates...
[2026-10-28 23:11:26,603.603 INFO    ] 200
[2026-10-28 23:11:26,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:11:26,646.646 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:11:26,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:11:26,730.730 INFO    ] No camera update needed
[2026-10-28 23:11:26,733.733 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:11:26,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:11:26,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:11:26,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:11:28,786.786 INFO    ] ================================================
[2026-10-28 23:11:28,802.802 INFO    ] Launching Daemon at Wed Oct 28 23:11:28 IST 2026
[2026-10-28 23:11:28,812.812 INFO    ] ================================================
[2026-10-28 23:11:29,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:11:29
[2026-10-28 23:11:30,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:11:30,388.388 INFO    ] Initializing speech engine...
[2026-10-28 23:11:30,398.398 INFO    ] 2026-10-28 23:11:30
[2026-10-28 23:11:30,648.648 INFO    ] 2026-10-28 23:11:30
[2026-10-28 23:11:30,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:11:30,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:11:30,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:11:31,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:11:31,216.216 INFO    ] time= 28/10/2026 23:11:31
[2026-10-28 23:11:31,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:11:31,252.252 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:11:31,432.432 INFO    ] No existing commands found in stream
[2026-10-28 23:11:36,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:11:36,460.460 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 23:11:40,190.190 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:11:40,192.192 INFO    ] Checking for system updates...
[2026-10-28 23:11:40,228.228 INFO    ] 200
[2026-10-28 23:11:40,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:11:40,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:11:40,284.284 INFO    ] No update needed
[2026-10-28 23:11:40,286.286 INFO    ] Checking for camera pi updates...
[2026-10-28 23:11:40,319.319 INFO    ] 200
[2026-10-28 23:11:40,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:11:40,363.363 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:11:40,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:11:40,472.472 INFO    ] No camera update needed
[2026-10-28 23:11:40,474.474 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:11:40,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:11:40,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:11:40,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:11:42,526.526 INFO    ] ================================================
[2026-10-28 23:11:42,542.542 INFO    ] Launching Daemon at Wed Oct 28 23:11:42 IST 2026
[2026-10-28 23:11:42,553.553 INFO    ] ================================================
[2026-10-28 23:11:43,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:11:43
[2026-10-28 23:11:43,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:11:44,059.059 INFO    ] Initializing speech engine...
[2026-10-28 23:11:44,065.065 INFO    ] 2026-10-28 23:11:44
[2026-10-28 23:11:44,312.312 INFO    ] 2026-10-28 23:11:44
[2026-10-28 23:11:44,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:11:44,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:11:44,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:11:44,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:11:44,885.885 INFO    ] time= 28/10/2026 23:11:44
[2026-10-28 23:11:44,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:11:44,909.909 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:11:45,043.043 INFO    ] No existing commands found in stream
[2026-10-28 23:11:50,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:11:50,064.064 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-10-28 23:11:53,304.304 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:11:53,307.307 INFO    ] Checking for system updates...
[2026-10-28 23:11:53,343.343 INFO    ] 200
[2026-10-28 23:11:53,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:11:53,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:11:53,411.411 INFO    ] No update needed
[2026-10-28 23:11:53,413.413 INFO    ] Checking for camera pi updates...
[2026-10-28 23:11:53,450.450 INFO    ] 200
[2026-10-28 23:11:53,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:11:53,492.492 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:11:53,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:11:53,670.670 INFO    ] No camera update needed
[2026-10-28 23:11:53,672.672 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:11:53,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:11:53,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:11:53,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:11:55,725.725 INFO    ] ================================================
[2026-10-28 23:11:55,740.740 INFO    ] Launching Daemon at Wed Oct 28 23:11:55 IST 2026
[2026-10-28 23:11:55,751.751 INFO    ] ================================================
[2026-10-28 23:11:56,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:11:56
[2026-10-28 23:11:56,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:11:57,169.169 INFO    ] Initializing speech engine...
[2026-10-28 23:11:57,177.177 INFO    ] 2026-10-28 23:11:57
[2026-10-28 23:11:57,426.426 INFO    ] 2026-10-28 23:11:57
[2026-10-28 23:11:57,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:11:57,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:11:57,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:11:57,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:11:57,995.995 INFO    ] time= 28/10/2026 23:11:57
[2026-10-28 23:11:58,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:11:58,021.021 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:11:58,152.152 INFO    ] No existing commands found in stream
[2026-10-28 23:12:03,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:12:03,175.175 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-10-28 23:12:07,181.181 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:12:07,184.184 INFO    ] Checking for system updates...
[2026-10-28 23:12:07,224.224 INFO    ] 200
[2026-10-28 23:12:07,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:12:07,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:12:07,287.287 INFO    ] No update needed
[2026-10-28 23:12:07,289.289 INFO    ] Checking for camera pi updates...
[2026-10-28 23:12:07,323.323 INFO    ] 200
[2026-10-28 23:12:07,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:12:07,369.369 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:12:07,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:12:07,467.467 INFO    ] No camera update needed
[2026-10-28 23:12:07,470.470 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:12:07,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:12:07,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:12:07,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:12:09,523.523 INFO    ] ================================================
[2026-10-28 23:12:09,538.538 INFO    ] Launching Daemon at Wed Oct 28 23:12:09 IST 2026
[2026-10-28 23:12:09,549.549 INFO    ] ================================================
[2026-10-28 23:12:10,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:12:10
[2026-10-28 23:12:10,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:12:10,944.944 INFO    ] Initializing speech engine...
[2026-10-28 23:12:10,952.952 INFO    ] 2026-10-28 23:12:10
[2026-10-28 23:12:11,229.229 INFO    ] 2026-10-28 23:12:11
[2026-10-28 23:12:11,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:12:11,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:12:11,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:12:11,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:12:11,800.800 INFO    ] time= 28/10/2026 23:12:11
[2026-10-28 23:12:11,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:12:11,822.822 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:12:11,955.955 INFO    ] No existing commands found in stream
[2026-10-28 23:12:16,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:12:16,970.970 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-10-28 23:12:19,181.181 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:12:19,184.184 INFO    ] Checking for system updates...
[2026-10-28 23:12:19,219.219 INFO    ] 200
[2026-10-28 23:12:19,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:12:19,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:12:19,277.277 INFO    ] No update needed
[2026-10-28 23:12:19,279.279 INFO    ] Checking for camera pi updates...
[2026-10-28 23:12:19,312.312 INFO    ] 200
[2026-10-28 23:12:19,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:12:19,355.355 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:12:19,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:12:19,440.440 INFO    ] No camera update needed
[2026-10-28 23:12:19,442.442 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:12:19,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:12:19,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:12:19,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:12:21,495.495 INFO    ] ================================================
[2026-10-28 23:12:21,511.511 INFO    ] Launching Daemon at Wed Oct 28 23:12:21 IST 2026
[2026-10-28 23:12:21,522.522 INFO    ] ================================================
[2026-10-28 23:12:22,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:12:22
[2026-10-28 23:12:22,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:12:22,933.933 INFO    ] Initializing speech engine...
[2026-10-28 23:12:22,941.941 INFO    ] 2026-10-28 23:12:22
[2026-10-28 23:12:23,232.232 INFO    ] 2026-10-28 23:12:23
[2026-10-28 23:12:23,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:12:23,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:12:23,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:12:23,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:12:23,832.832 INFO    ] time= 28/10/2026 23:12:23
[2026-10-28 23:12:23,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:12:23,854.854 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:12:23,988.988 INFO    ] No existing commands found in stream
[2026-10-28 23:12:29,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:12:29,005.005 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-10-28 23:12:30,471.471 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:12:30,474.474 INFO    ] Checking for system updates...
[2026-10-28 23:12:30,514.514 INFO    ] 200
[2026-10-28 23:12:30,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:12:30,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:12:30,577.577 INFO    ] No update needed
[2026-10-28 23:12:30,579.579 INFO    ] Checking for camera pi updates...
[2026-10-28 23:12:30,612.612 INFO    ] 200
[2026-10-28 23:12:30,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:12:30,655.655 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:12:30,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:12:30,757.757 INFO    ] No camera update needed
[2026-10-28 23:12:30,759.759 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:12:30,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:12:30,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:12:30,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:12:32,813.813 INFO    ] ================================================
[2026-10-28 23:12:32,832.832 INFO    ] Launching Daemon at Wed Oct 28 23:12:32 IST 2026
[2026-10-28 23:12:32,844.844 INFO    ] ================================================
[2026-10-28 23:12:33,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:12:33
[2026-10-28 23:12:34,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:12:34,284.284 INFO    ] Initializing speech engine...
[2026-10-28 23:12:34,303.303 INFO    ] 2026-10-28 23:12:34
[2026-10-28 23:12:34,558.558 INFO    ] 2026-10-28 23:12:34
[2026-10-28 23:12:34,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:12:34,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:12:34,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:12:35,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:12:35,033.033 INFO    ] time= 28/10/2026 23:12:35
[2026-10-28 23:12:35,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:12:35,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:12:35,267.267 INFO    ] No existing commands found in stream
[2026-10-28 23:12:40,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:12:40,289.289 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-28 23:12:42,687.687 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:12:42,689.689 INFO    ] Checking for system updates...
[2026-10-28 23:12:42,724.724 INFO    ] 200
[2026-10-28 23:12:42,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:12:42,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:12:42,787.787 INFO    ] No update needed
[2026-10-28 23:12:42,789.789 INFO    ] Checking for camera pi updates...
[2026-10-28 23:12:42,826.826 INFO    ] 200
[2026-10-28 23:12:42,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:12:42,873.873 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:12:42,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:12:42,955.955 INFO    ] No camera update needed
[2026-10-28 23:12:42,957.957 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:12:42,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:12:42,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:12:42,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:12:45,009.009 INFO    ] ================================================
[2026-10-28 23:12:45,025.025 INFO    ] Launching Daemon at Wed Oct 28 23:12:45 IST 2026
[2026-10-28 23:12:45,036.036 INFO    ] ================================================
[2026-10-28 23:12:45,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:12:45
[2026-10-28 23:12:46,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:12:46,526.526 INFO    ] Initializing speech engine...
[2026-10-28 23:12:46,544.544 INFO    ] 2026-10-28 23:12:46
[2026-10-28 23:12:46,797.797 INFO    ] 2026-10-28 23:12:46
[2026-10-28 23:12:46,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:12:47,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:12:47,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:12:47,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:12:47,508.508 INFO    ] time= 28/10/2026 23:12:47
[2026-10-28 23:12:47,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:12:47,600.600 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:12:47,745.745 INFO    ] No existing commands found in stream
[2026-10-28 23:12:52,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:12:52,775.775 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-10-28 23:12:54,718.718 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:12:54,720.720 INFO    ] Checking for system updates...
[2026-10-28 23:12:54,756.756 INFO    ] 200
[2026-10-28 23:12:54,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:12:54,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:12:54,812.812 INFO    ] No update needed
[2026-10-28 23:12:54,814.814 INFO    ] Checking for camera pi updates...
[2026-10-28 23:12:54,847.847 INFO    ] 200
[2026-10-28 23:12:54,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:12:54,891.891 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:12:54,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:12:54,974.974 INFO    ] No camera update needed
[2026-10-28 23:12:54,976.976 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:12:54,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:12:54,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:12:54,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:12:57,029.029 INFO    ] ================================================
[2026-10-28 23:12:57,044.044 INFO    ] Launching Daemon at Wed Oct 28 23:12:57 IST 2026
[2026-10-28 23:12:57,055.055 INFO    ] ================================================
[2026-10-28 23:12:57,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:12:57
[2026-10-28 23:12:58,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:12:58,552.552 INFO    ] Initializing speech engine...
[2026-10-28 23:12:58,561.561 INFO    ] 2026-10-28 23:12:58
[2026-10-28 23:12:58,807.807 INFO    ] 2026-10-28 23:12:58
[2026-10-28 23:12:58,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:12:59,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:12:59,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:12:59,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:12:59,407.407 INFO    ] time= 28/10/2026 23:12:59
[2026-10-28 23:12:59,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:12:59,431.431 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:12:59,582.582 INFO    ] No existing commands found in stream
[2026-10-28 23:13:04,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:13:04,600.600 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-28 23:13:06,100.100 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:13:06,102.102 INFO    ] Checking for system updates...
[2026-10-28 23:13:06,142.142 INFO    ] 200
[2026-10-28 23:13:06,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:13:06,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:13:06,200.200 INFO    ] No update needed
[2026-10-28 23:13:06,202.202 INFO    ] Checking for camera pi updates...
[2026-10-28 23:13:06,236.236 INFO    ] 200
[2026-10-28 23:13:06,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:13:06,283.283 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:13:06,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:13:06,378.378 INFO    ] No camera update needed
[2026-10-28 23:13:06,380.380 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:13:06,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:13:06,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:13:06,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:13:08,434.434 INFO    ] ================================================
[2026-10-28 23:13:08,449.449 INFO    ] Launching Daemon at Wed Oct 28 23:13:08 IST 2026
[2026-10-28 23:13:08,459.459 INFO    ] ================================================
[2026-10-28 23:13:09,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:13:09
[2026-10-28 23:13:09,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:13:09,917.917 INFO    ] Initializing speech engine...
[2026-10-28 23:13:09,923.923 INFO    ] 2026-10-28 23:13:09
[2026-10-28 23:13:10,185.185 INFO    ] 2026-10-28 23:13:10
[2026-10-28 23:13:10,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:13:10,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:13:10,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:13:10,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:13:10,756.756 INFO    ] time= 28/10/2026 23:13:10
[2026-10-28 23:13:10,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:13:10,783.783 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:13:10,908.908 INFO    ] No existing commands found in stream
[2026-10-28 23:13:15,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:13:15,937.937 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-10-28 23:13:17,444.444 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:13:17,446.446 INFO    ] Checking for system updates...
[2026-10-28 23:13:17,486.486 INFO    ] 200
[2026-10-28 23:13:17,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:13:17,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:13:17,550.550 INFO    ] No update needed
[2026-10-28 23:13:17,553.553 INFO    ] Checking for camera pi updates...
[2026-10-28 23:13:17,590.590 INFO    ] 200
[2026-10-28 23:13:17,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:13:17,643.643 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:13:17,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:13:17,731.731 INFO    ] No camera update needed
[2026-10-28 23:13:17,734.734 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:13:17,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:13:17,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:13:17,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:13:19,794.794 INFO    ] ================================================
[2026-10-28 23:13:19,809.809 INFO    ] Launching Daemon at Wed Oct 28 23:13:19 IST 2026
[2026-10-28 23:13:19,820.820 INFO    ] ================================================
[2026-10-28 23:13:20,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:13:20
[2026-10-28 23:13:20,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:13:21,271.271 INFO    ] Initializing speech engine...
[2026-10-28 23:13:21,280.280 INFO    ] 2026-10-28 23:13:21
[2026-10-28 23:13:21,540.540 INFO    ] 2026-10-28 23:13:21
[2026-10-28 23:13:21,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:13:21,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:13:21,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:13:22,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:13:22,085.085 INFO    ] time= 28/10/2026 23:13:22
[2026-10-28 23:13:22,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:13:22,120.120 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:13:22,267.267 INFO    ] No existing commands found in stream
[2026-10-28 23:13:27,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:13:27,300.300 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-10-28 23:13:29,822.822 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:13:29,825.825 INFO    ] Checking for system updates...
[2026-10-28 23:13:29,861.861 INFO    ] 200
[2026-10-28 23:13:29,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:13:29,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:13:29,919.919 INFO    ] No update needed
[2026-10-28 23:13:29,922.922 INFO    ] Checking for camera pi updates...
[2026-10-28 23:13:29,957.957 INFO    ] 200
[2026-10-28 23:13:29,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:13:30,001.001 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:13:30,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:13:30,088.088 INFO    ] No camera update needed
[2026-10-28 23:13:30,091.091 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:13:30,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:13:30,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:13:30,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:13:32,146.146 INFO    ] ================================================
[2026-10-28 23:13:32,162.162 INFO    ] Launching Daemon at Wed Oct 28 23:13:32 IST 2026
[2026-10-28 23:13:32,173.173 INFO    ] ================================================
[2026-10-28 23:13:32,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:13:32
[2026-10-28 23:13:33,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:13:33,676.676 INFO    ] Initializing speech engine...
[2026-10-28 23:13:33,684.684 INFO    ] 2026-10-28 23:13:33
[2026-10-28 23:13:33,945.945 INFO    ] 2026-10-28 23:13:33
[2026-10-28 23:13:33,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:13:34,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:13:34,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:13:34,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:13:34,499.499 INFO    ] time= 28/10/2026 23:13:34
[2026-10-28 23:13:34,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:13:34,534.534 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:13:34,714.714 INFO    ] No existing commands found in stream
[2026-10-28 23:13:39,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:13:39,747.747 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-10-28 23:13:43,183.183 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:13:43,186.186 INFO    ] Checking for system updates...
[2026-10-28 23:13:43,225.225 INFO    ] 200
[2026-10-28 23:13:43,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:13:43,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:13:43,288.288 INFO    ] No update needed
[2026-10-28 23:13:43,290.290 INFO    ] Checking for camera pi updates...
[2026-10-28 23:13:43,324.324 INFO    ] 200
[2026-10-28 23:13:43,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:13:43,367.367 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:13:43,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:13:43,452.452 INFO    ] No camera update needed
[2026-10-28 23:13:43,455.455 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:13:43,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:13:43,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:13:43,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:13:45,506.506 INFO    ] ================================================
[2026-10-28 23:13:45,521.521 INFO    ] Launching Daemon at Wed Oct 28 23:13:45 IST 2026
[2026-10-28 23:13:45,531.531 INFO    ] ================================================
[2026-10-28 23:13:46,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:13:46
[2026-10-28 23:13:46,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:13:46,977.977 INFO    ] Initializing speech engine...
[2026-10-28 23:13:46,986.986 INFO    ] 2026-10-28 23:13:46
[2026-10-28 23:13:47,241.241 INFO    ] 2026-10-28 23:13:47
[2026-10-28 23:13:47,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:13:47,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:13:47,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:13:47,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:13:47,800.800 INFO    ] time= 28/10/2026 23:13:47
[2026-10-28 23:13:47,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:13:47,834.834 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:13:47,942.942 INFO    ] No existing commands found in stream
[2026-10-28 23:13:52,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:13:52,968.968 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-10-28 23:13:56,422.422 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:13:56,425.425 INFO    ] Checking for system updates...
[2026-10-28 23:13:56,460.460 INFO    ] 200
[2026-10-28 23:13:56,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:13:56,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:13:56,523.523 INFO    ] No update needed
[2026-10-28 23:13:56,526.526 INFO    ] Checking for camera pi updates...
[2026-10-28 23:13:56,559.559 INFO    ] 200
[2026-10-28 23:13:56,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:13:56,606.606 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:13:56,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:13:56,795.795 INFO    ] No camera update needed
[2026-10-28 23:13:56,797.797 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:13:56,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:13:56,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:13:56,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:13:58,849.849 INFO    ] ================================================
[2026-10-28 23:13:58,864.864 INFO    ] Launching Daemon at Wed Oct 28 23:13:58 IST 2026
[2026-10-28 23:13:58,874.874 INFO    ] ================================================
[2026-10-28 23:13:59,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:13:59
[2026-10-28 23:14:00,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:14:00,327.327 INFO    ] Initializing speech engine...
[2026-10-28 23:14:00,332.332 INFO    ] 2026-10-28 23:14:00
[2026-10-28 23:14:00,579.579 INFO    ] 2026-10-28 23:14:00
[2026-10-28 23:14:00,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:14:00,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:14:00,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:14:01,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:14:01,134.134 INFO    ] time= 28/10/2026 23:14:01
[2026-10-28 23:14:01,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:14:01,174.174 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:14:01,301.301 INFO    ] No existing commands found in stream
[2026-10-28 23:14:06,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:14:06,339.339 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-10-28 23:14:10,542.542 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:14:10,545.545 INFO    ] Checking for system updates...
[2026-10-28 23:14:10,581.581 INFO    ] 200
[2026-10-28 23:14:10,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:14:10,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:14:10,639.639 INFO    ] No update needed
[2026-10-28 23:14:10,642.642 INFO    ] Checking for camera pi updates...
[2026-10-28 23:14:10,679.679 INFO    ] 200
[2026-10-28 23:14:10,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:14:10,727.727 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:14:10,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:14:10,781.781 INFO    ] No camera update needed
[2026-10-28 23:14:10,784.784 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:14:10,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:14:10,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:14:10,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:14:12,836.836 INFO    ] ================================================
[2026-10-28 23:14:12,850.850 INFO    ] Launching Daemon at Wed Oct 28 23:14:12 IST 2026
[2026-10-28 23:14:12,861.861 INFO    ] ================================================
[2026-10-28 23:14:13,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:14:13
[2026-10-28 23:14:14,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:14:14,345.345 INFO    ] Initializing speech engine...
[2026-10-28 23:14:14,363.363 INFO    ] 2026-10-28 23:14:14
[2026-10-28 23:14:14,613.613 INFO    ] 2026-10-28 23:14:14
[2026-10-28 23:14:14,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:14:14,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:14:14,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:14:15,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:14:15,177.177 INFO    ] time= 28/10/2026 23:14:15
[2026-10-28 23:14:15,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:14:15,202.202 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:14:15,316.316 INFO    ] No existing commands found in stream
[2026-10-28 23:14:20,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:14:20,344.344 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-28 23:14:21,624.624 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:14:21,627.627 INFO    ] Checking for system updates...
[2026-10-28 23:14:21,666.666 INFO    ] 200
[2026-10-28 23:14:21,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:14:21,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:14:21,723.723 INFO    ] No update needed
[2026-10-28 23:14:21,726.726 INFO    ] Checking for camera pi updates...
[2026-10-28 23:14:21,769.769 INFO    ] 200
[2026-10-28 23:14:21,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:14:21,818.818 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:14:21,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:14:21,916.916 INFO    ] No camera update needed
[2026-10-28 23:14:21,918.918 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:14:21,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:14:21,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:14:21,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:14:23,972.972 INFO    ] ================================================
[2026-10-28 23:14:23,987.987 INFO    ] Launching Daemon at Wed Oct 28 23:14:23 IST 2026
[2026-10-28 23:14:24,998.998 INFO    ] ================================================
[2026-10-28 23:14:24,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:14:24
[2026-10-28 23:14:25,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:14:25,478.478 INFO    ] Initializing speech engine...
[2026-10-28 23:14:25,486.486 INFO    ] 2026-10-28 23:14:25
[2026-10-28 23:14:25,748.748 INFO    ] 2026-10-28 23:14:25
[2026-10-28 23:14:25,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:14:26,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:14:26,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:14:26,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:14:26,296.296 INFO    ] time= 28/10/2026 23:14:26
[2026-10-28 23:14:26,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:14:26,331.331 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:14:26,455.455 INFO    ] No existing commands found in stream
[2026-10-28 23:14:31,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:14:31,482.482 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-10-28 23:14:35,061.061 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:14:35,064.064 INFO    ] Checking for system updates...
[2026-10-28 23:14:35,103.103 INFO    ] 200
[2026-10-28 23:14:35,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:14:35,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:14:35,166.166 INFO    ] No update needed
[2026-10-28 23:14:35,174.174 INFO    ] Checking for camera pi updates...
[2026-10-28 23:14:35,208.208 INFO    ] 200
[2026-10-28 23:14:35,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:14:35,254.254 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:14:35,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:14:35,356.356 INFO    ] No camera update needed
[2026-10-28 23:14:35,358.358 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:14:35,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:14:35,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:14:35,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:14:37,411.411 INFO    ] ================================================
[2026-10-28 23:14:37,426.426 INFO    ] Launching Daemon at Wed Oct 28 23:14:37 IST 2026
[2026-10-28 23:14:37,436.436 INFO    ] ================================================
[2026-10-28 23:14:38,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:14:38
[2026-10-28 23:14:38,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:14:39,035.035 INFO    ] Initializing speech engine...
[2026-10-28 23:14:39,044.044 INFO    ] 2026-10-28 23:14:39
[2026-10-28 23:14:39,334.334 INFO    ] 2026-10-28 23:14:39
[2026-10-28 23:14:39,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:14:39,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:14:39,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:14:39,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:14:39,877.877 INFO    ] time= 28/10/2026 23:14:39
[2026-10-28 23:14:39,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:14:39,915.915 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:14:40,070.070 INFO    ] No existing commands found in stream
[2026-10-28 23:14:45,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:14:45,104.104 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-28 23:14:45,951.951 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:14:45,954.954 INFO    ] Checking for system updates...
[2026-10-28 23:14:46,001.001 INFO    ] 200
[2026-10-28 23:14:46,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:14:46,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:14:46,092.092 INFO    ] No update needed
[2026-10-28 23:14:46,095.095 INFO    ] Checking for camera pi updates...
[2026-10-28 23:14:46,137.137 INFO    ] 200
[2026-10-28 23:14:46,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:14:46,191.191 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:14:46,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:14:46,288.288 INFO    ] No camera update needed
[2026-10-28 23:14:46,290.290 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:14:46,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:14:46,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:14:46,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:14:48,344.344 INFO    ] ================================================
[2026-10-28 23:14:48,359.359 INFO    ] Launching Daemon at Wed Oct 28 23:14:48 IST 2026
[2026-10-28 23:14:48,369.369 INFO    ] ================================================
[2026-10-28 23:14:48,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:14:48
[2026-10-28 23:14:49,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:14:49,793.793 INFO    ] Initializing speech engine...
[2026-10-28 23:14:49,818.818 INFO    ] 2026-10-28 23:14:49
[2026-10-28 23:14:50,088.088 INFO    ] 2026-10-28 23:14:50
[2026-10-28 23:14:50,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:14:50,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:14:50,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:14:50,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:14:50,716.716 INFO    ] time= 28/10/2026 23:14:50
[2026-10-28 23:14:50,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:14:50,742.742 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:14:50,886.886 INFO    ] No existing commands found in stream
[2026-10-28 23:14:55,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:14:55,904.904 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-10-28 23:14:58,268.268 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:14:58,270.270 INFO    ] Checking for system updates...
[2026-10-28 23:14:58,310.310 INFO    ] 200
[2026-10-28 23:14:58,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:14:58,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:14:58,367.367 INFO    ] No update needed
[2026-10-28 23:14:58,369.369 INFO    ] Checking for camera pi updates...
[2026-10-28 23:14:58,406.406 INFO    ] 200
[2026-10-28 23:14:58,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:14:58,458.458 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:14:58,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:14:58,554.554 INFO    ] No camera update needed
[2026-10-28 23:14:58,556.556 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:14:58,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:14:58,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:14:58,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:15:00,607.607 INFO    ] ================================================
[2026-10-28 23:15:00,622.622 INFO    ] Launching Daemon at Wed Oct 28 23:15:00 IST 2026
[2026-10-28 23:15:00,632.632 INFO    ] ================================================
[2026-10-28 23:15:01,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:15:01
[2026-10-28 23:15:01,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:15:02,661.661 INFO    ] Initializing speech engine...
[2026-10-28 23:15:02,669.669 INFO    ] 2026-10-28 23:15:02
[2026-10-28 23:15:03,199.199 INFO    ] 2026-10-28 23:15:03
[2026-10-28 23:15:03,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:15:03,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:15:03,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:15:03,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:15:03,817.817 INFO    ] time= 28/10/2026 23:15:03
[2026-10-28 23:15:03,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:15:03,857.857 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:15:04,014.014 INFO    ] No existing commands found in stream
[2026-10-28 23:15:09,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:15:09,049.049 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-10-28 23:15:13,341.341 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:15:13,344.344 INFO    ] Checking for system updates...
[2026-10-28 23:15:13,380.380 INFO    ] 200
[2026-10-28 23:15:13,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:15:13,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:15:13,439.439 INFO    ] No update needed
[2026-10-28 23:15:13,441.441 INFO    ] Checking for camera pi updates...
[2026-10-28 23:15:13,475.475 INFO    ] 200
[2026-10-28 23:15:13,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:15:13,523.523 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:15:13,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:15:13,609.609 INFO    ] No camera update needed
[2026-10-28 23:15:13,612.612 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:15:13,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:15:13,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:15:13,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:15:15,664.664 INFO    ] ================================================
[2026-10-28 23:15:15,679.679 INFO    ] Launching Daemon at Wed Oct 28 23:15:15 IST 2026
[2026-10-28 23:15:15,690.690 INFO    ] ================================================
[2026-10-28 23:15:16,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:15:16
[2026-10-28 23:15:16,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:15:17,096.096 INFO    ] Initializing speech engine...
[2026-10-28 23:15:17,119.119 INFO    ] 2026-10-28 23:15:17
[2026-10-28 23:15:17,374.374 INFO    ] 2026-10-28 23:15:17
[2026-10-28 23:15:17,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:15:17,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:15:17,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:15:17,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:15:17,943.943 INFO    ] time= 28/10/2026 23:15:17
[2026-10-28 23:15:17,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:15:17,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:15:18,123.123 INFO    ] No existing commands found in stream
[2026-10-28 23:15:23,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:15:23,151.151 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-10-28 23:15:26,701.701 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:15:26,704.704 INFO    ] Checking for system updates...
[2026-10-28 23:15:26,744.744 INFO    ] 200
[2026-10-28 23:15:26,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:15:26,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:15:26,800.800 INFO    ] No update needed
[2026-10-28 23:15:26,803.803 INFO    ] Checking for camera pi updates...
[2026-10-28 23:15:26,840.840 INFO    ] 200
[2026-10-28 23:15:26,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:15:26,887.887 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:15:26,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:15:27,002.002 INFO    ] No camera update needed
[2026-10-28 23:15:27,005.005 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:15:27,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:15:27,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:15:27,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:15:29,059.059 INFO    ] ================================================
[2026-10-28 23:15:29,074.074 INFO    ] Launching Daemon at Wed Oct 28 23:15:29 IST 2026
[2026-10-28 23:15:29,084.084 INFO    ] ================================================
[2026-10-28 23:15:29,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:15:29
[2026-10-28 23:15:30,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:15:30,536.536 INFO    ] Initializing speech engine...
[2026-10-28 23:15:30,546.546 INFO    ] 2026-10-28 23:15:30
[2026-10-28 23:15:30,799.799 INFO    ] 2026-10-28 23:15:30
[2026-10-28 23:15:30,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:15:31,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:15:31,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:15:31,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:15:31,391.391 INFO    ] time= 28/10/2026 23:15:31
[2026-10-28 23:15:31,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:15:31,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:15:31,503.503 INFO    ] No existing commands found in stream
[2026-10-28 23:15:36,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:15:36,530.530 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-28 23:15:40,842.842 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:15:40,845.845 INFO    ] Checking for system updates...
[2026-10-28 23:15:40,884.884 INFO    ] 200
[2026-10-28 23:15:40,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:15:40,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:15:40,948.948 INFO    ] No update needed
[2026-10-28 23:15:40,950.950 INFO    ] Checking for camera pi updates...
[2026-10-28 23:15:40,984.984 INFO    ] 200
[2026-10-28 23:15:40,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:15:41,027.027 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:15:41,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:15:41,123.123 INFO    ] No camera update needed
[2026-10-28 23:15:41,125.125 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:15:41,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:15:41,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:15:41,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:15:43,178.178 INFO    ] ================================================
[2026-10-28 23:15:43,194.194 INFO    ] Launching Daemon at Wed Oct 28 23:15:43 IST 2026
[2026-10-28 23:15:43,205.205 INFO    ] ================================================
[2026-10-28 23:15:43,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:15:43
[2026-10-28 23:15:44,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:15:44,818.818 INFO    ] Initializing speech engine...
[2026-10-28 23:15:44,825.825 INFO    ] 2026-10-28 23:15:44
[2026-10-28 23:15:45,101.101 INFO    ] 2026-10-28 23:15:45
[2026-10-28 23:15:45,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:15:45,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:15:45,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:15:45,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:15:45,667.667 INFO    ] time= 28/10/2026 23:15:45
[2026-10-28 23:15:45,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:15:45,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:15:45,821.821 INFO    ] No existing commands found in stream
[2026-10-28 23:15:50,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:15:50,854.854 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-28 23:15:54,383.383 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:15:54,385.385 INFO    ] Checking for system updates...
[2026-10-28 23:15:54,424.424 INFO    ] 200
[2026-10-28 23:15:54,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:15:54,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:15:54,486.486 INFO    ] No update needed
[2026-10-28 23:15:54,488.488 INFO    ] Checking for camera pi updates...
[2026-10-28 23:15:54,522.522 INFO    ] 200
[2026-10-28 23:15:54,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:15:54,565.565 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:15:54,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:15:54,641.641 INFO    ] No camera update needed
[2026-10-28 23:15:54,644.644 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:15:54,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:15:54,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:15:54,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:15:56,696.696 INFO    ] ================================================
[2026-10-28 23:15:56,711.711 INFO    ] Launching Daemon at Wed Oct 28 23:15:56 IST 2026
[2026-10-28 23:15:56,722.722 INFO    ] ================================================
[2026-10-28 23:15:57,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:15:57
[2026-10-28 23:15:57,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:15:58,167.167 INFO    ] Initializing speech engine...
[2026-10-28 23:15:58,182.182 INFO    ] 2026-10-28 23:15:58
[2026-10-28 23:15:58,477.477 INFO    ] 2026-10-28 23:15:58
[2026-10-28 23:15:58,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:15:58,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:15:58,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:15:59,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:15:59,091.091 INFO    ] time= 28/10/2026 23:15:59
[2026-10-28 23:15:59,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:15:59,137.137 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:15:59,271.271 INFO    ] No existing commands found in stream
[2026-10-28 23:16:04,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:16:04,309.309 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-10-28 23:16:05,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:16:05,146.146 INFO    ] Checking for system updates...
[2026-10-28 23:16:05,184.184 INFO    ] 200
[2026-10-28 23:16:05,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:16:05,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:16:05,246.246 INFO    ] No update needed
[2026-10-28 23:16:05,248.248 INFO    ] Checking for camera pi updates...
[2026-10-28 23:16:05,284.284 INFO    ] 200
[2026-10-28 23:16:05,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:16:05,329.329 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:16:05,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:16:05,412.412 INFO    ] No camera update needed
[2026-10-28 23:16:05,415.415 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:16:05,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:16:05,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:16:05,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:16:07,467.467 INFO    ] ================================================
[2026-10-28 23:16:07,482.482 INFO    ] Launching Daemon at Wed Oct 28 23:16:07 IST 2026
[2026-10-28 23:16:07,492.492 INFO    ] ================================================
[2026-10-28 23:16:08,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:16:08
[2026-10-28 23:16:08,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:16:08,929.929 INFO    ] Initializing speech engine...
[2026-10-28 23:16:08,944.944 INFO    ] 2026-10-28 23:16:08
[2026-10-28 23:16:09,225.225 INFO    ] 2026-10-28 23:16:09
[2026-10-28 23:16:09,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:16:09,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:16:09,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:16:09,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:16:09,834.834 INFO    ] time= 28/10/2026 23:16:09
[2026-10-28 23:16:09,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:16:09,860.860 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:16:09,999.999 INFO    ] No existing commands found in stream
[2026-10-28 23:16:15,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:16:15,018.018 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-10-28 23:16:18,844.844 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:16:18,846.846 INFO    ] Checking for system updates...
[2026-10-28 23:16:18,882.882 INFO    ] 200
[2026-10-28 23:16:18,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:16:18,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:16:18,945.945 INFO    ] No update needed
[2026-10-28 23:16:18,947.947 INFO    ] Checking for camera pi updates...
[2026-10-28 23:16:18,988.988 INFO    ] 200
[2026-10-28 23:16:18,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:16:19,035.035 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:16:19,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:16:19,135.135 INFO    ] No camera update needed
[2026-10-28 23:16:19,137.137 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:16:19,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:16:19,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:16:19,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:16:21,191.191 INFO    ] ================================================
[2026-10-28 23:16:21,207.207 INFO    ] Launching Daemon at Wed Oct 28 23:16:21 IST 2026
[2026-10-28 23:16:21,217.217 INFO    ] ================================================
[2026-10-28 23:16:21,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:16:21
[2026-10-28 23:16:22,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:16:22,777.777 INFO    ] Initializing speech engine...
[2026-10-28 23:16:22,787.787 INFO    ] 2026-10-28 23:16:22
[2026-10-28 23:16:23,054.054 INFO    ] 2026-10-28 23:16:23
[2026-10-28 23:16:23,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:16:23,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:16:23,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:16:23,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:16:23,609.609 INFO    ] time= 28/10/2026 23:16:23
[2026-10-28 23:16:23,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:16:23,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:16:23,790.790 INFO    ] No existing commands found in stream
[2026-10-28 23:16:28,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:16:28,819.819 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-10-28 23:16:29,545.545 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:16:29,548.548 INFO    ] Checking for system updates...
[2026-10-28 23:16:29,584.584 INFO    ] 200
[2026-10-28 23:16:29,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:16:29,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:16:29,648.648 INFO    ] No update needed
[2026-10-28 23:16:29,650.650 INFO    ] Checking for camera pi updates...
[2026-10-28 23:16:29,687.687 INFO    ] 200
[2026-10-28 23:16:29,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:16:29,735.735 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:16:29,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:16:29,814.814 INFO    ] No camera update needed
[2026-10-28 23:16:29,817.817 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:16:29,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:16:29,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:16:29,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:16:31,874.874 INFO    ] ================================================
[2026-10-28 23:16:31,890.890 INFO    ] Launching Daemon at Wed Oct 28 23:16:31 IST 2026
[2026-10-28 23:16:31,902.902 INFO    ] ================================================
[2026-10-28 23:16:32,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:16:32
[2026-10-28 23:16:33,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:16:33,552.552 INFO    ] Initializing speech engine...
[2026-10-28 23:16:33,561.561 INFO    ] 2026-10-28 23:16:33
[2026-10-28 23:16:33,833.833 INFO    ] 2026-10-28 23:16:33
[2026-10-28 23:16:33,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:16:34,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:16:34,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:16:34,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:16:34,420.420 INFO    ] time= 28/10/2026 23:16:34
[2026-10-28 23:16:34,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:16:34,452.452 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:16:34,630.630 INFO    ] No existing commands found in stream
[2026-10-28 23:16:39,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:16:39,657.657 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-10-28 23:16:43,912.912 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:16:43,915.915 INFO    ] Checking for system updates...
[2026-10-28 23:16:43,954.954 INFO    ] 200
[2026-10-28 23:16:43,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:16:44,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:16:44,019.019 INFO    ] No update needed
[2026-10-28 23:16:44,022.022 INFO    ] Checking for camera pi updates...
[2026-10-28 23:16:44,059.059 INFO    ] 200
[2026-10-28 23:16:44,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:16:44,106.106 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:16:44,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:16:44,195.195 INFO    ] No camera update needed
[2026-10-28 23:16:44,197.197 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:16:44,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:16:44,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:16:44,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:16:46,252.252 INFO    ] ================================================
[2026-10-28 23:16:46,268.268 INFO    ] Launching Daemon at Wed Oct 28 23:16:46 IST 2026
[2026-10-28 23:16:46,278.278 INFO    ] ================================================
[2026-10-28 23:16:46,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:16:46
[2026-10-28 23:16:47,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:16:47,681.681 INFO    ] Initializing speech engine...
[2026-10-28 23:16:47,704.704 INFO    ] 2026-10-28 23:16:47
[2026-10-28 23:16:47,961.961 INFO    ] 2026-10-28 23:16:47
[2026-10-28 23:16:47,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:16:48,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:16:48,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:16:48,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:16:48,517.517 INFO    ] time= 28/10/2026 23:16:48
[2026-10-28 23:16:48,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:16:48,541.541 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:16:48,684.684 INFO    ] No existing commands found in stream
[2026-10-28 23:16:53,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:16:53,702.702 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-10-28 23:16:57,702.702 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:16:57,705.705 INFO    ] Checking for system updates...
[2026-10-28 23:16:57,741.741 INFO    ] 200
[2026-10-28 23:16:57,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:16:57,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:16:57,800.800 INFO    ] No update needed
[2026-10-28 23:16:57,802.802 INFO    ] Checking for camera pi updates...
[2026-10-28 23:16:57,837.837 INFO    ] 200
[2026-10-28 23:16:57,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:16:57,880.880 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:16:57,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:16:57,951.951 INFO    ] No camera update needed
[2026-10-28 23:16:57,954.954 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:16:57,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:16:57,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:16:57,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:17:00,009.009 INFO    ] ================================================
[2026-10-28 23:17:00,024.024 INFO    ] Launching Daemon at Wed Oct 28 23:17:00 IST 2026
[2026-10-28 23:17:00,034.034 INFO    ] ================================================
[2026-10-28 23:17:00,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:17:00
[2026-10-28 23:17:01,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:17:01,499.499 INFO    ] Initializing speech engine...
[2026-10-28 23:17:01,505.505 INFO    ] 2026-10-28 23:17:01
[2026-10-28 23:17:01,926.926 INFO    ] 2026-10-28 23:17:01
[2026-10-28 23:17:01,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:17:02,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:17:02,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:17:02,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:17:02,668.668 INFO    ] time= 28/10/2026 23:17:02
[2026-10-28 23:17:02,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:17:02,701.701 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:17:02,836.836 INFO    ] No existing commands found in stream
[2026-10-28 23:17:07,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:17:07,869.869 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-10-28 23:17:09,439.439 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:17:09,441.441 INFO    ] Checking for system updates...
[2026-10-28 23:17:09,477.477 INFO    ] 200
[2026-10-28 23:17:09,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:17:09,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:17:09,534.534 INFO    ] No update needed
[2026-10-28 23:17:09,536.536 INFO    ] Checking for camera pi updates...
[2026-10-28 23:17:09,571.571 INFO    ] 200
[2026-10-28 23:17:09,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:17:09,618.618 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:17:09,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:17:09,677.677 INFO    ] No camera update needed
[2026-10-28 23:17:09,680.680 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:17:09,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:17:09,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:17:09,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:17:11,733.733 INFO    ] ================================================
[2026-10-28 23:17:11,749.749 INFO    ] Launching Daemon at Wed Oct 28 23:17:11 IST 2026
[2026-10-28 23:17:11,760.760 INFO    ] ================================================
[2026-10-28 23:17:12,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:17:12
[2026-10-28 23:17:12,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:17:13,164.164 INFO    ] Initializing speech engine...
[2026-10-28 23:17:13,169.169 INFO    ] 2026-10-28 23:17:13
[2026-10-28 23:17:13,458.458 INFO    ] 2026-10-28 23:17:13
[2026-10-28 23:17:13,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:17:13,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:17:13,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:17:14,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:17:14,046.046 INFO    ] time= 28/10/2026 23:17:14
[2026-10-28 23:17:14,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:17:14,080.080 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:17:14,205.205 INFO    ] No existing commands found in stream
[2026-10-28 23:17:19,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:17:19,225.225 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-28 23:17:23,818.818 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:17:23,821.821 INFO    ] Checking for system updates...
[2026-10-28 23:17:23,856.856 INFO    ] 200
[2026-10-28 23:17:23,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:17:23,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:17:23,919.919 INFO    ] No update needed
[2026-10-28 23:17:23,922.922 INFO    ] Checking for camera pi updates...
[2026-10-28 23:17:23,955.955 INFO    ] 200
[2026-10-28 23:17:23,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:17:24,002.002 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:17:24,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:17:24,089.089 INFO    ] No camera update needed
[2026-10-28 23:17:24,091.091 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:17:24,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:17:24,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:17:24,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:17:26,144.144 INFO    ] ================================================
[2026-10-28 23:17:26,159.159 INFO    ] Launching Daemon at Wed Oct 28 23:17:26 IST 2026
[2026-10-28 23:17:26,170.170 INFO    ] ================================================
[2026-10-28 23:17:26,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:17:26
[2026-10-28 23:17:27,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:17:27,590.590 INFO    ] Initializing speech engine...
[2026-10-28 23:17:27,604.604 INFO    ] 2026-10-28 23:17:27
[2026-10-28 23:17:27,888.888 INFO    ] 2026-10-28 23:17:27
[2026-10-28 23:17:27,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:17:28,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:17:28,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:17:28,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:17:28,517.517 INFO    ] time= 28/10/2026 23:17:28
[2026-10-28 23:17:28,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:17:28,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:17:28,688.688 INFO    ] No existing commands found in stream
[2026-10-28 23:17:33,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:17:33,704.704 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-10-28 23:17:36,380.380 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:17:36,383.383 INFO    ] Checking for system updates...
[2026-10-28 23:17:36,419.419 INFO    ] 200
[2026-10-28 23:17:36,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:17:36,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:17:36,475.475 INFO    ] No update needed
[2026-10-28 23:17:36,478.478 INFO    ] Checking for camera pi updates...
[2026-10-28 23:17:36,511.511 INFO    ] 200
[2026-10-28 23:17:36,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:17:36,553.553 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:17:36,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:17:36,635.635 INFO    ] No camera update needed
[2026-10-28 23:17:36,637.637 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:17:36,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:17:36,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:17:36,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:17:38,689.689 INFO    ] ================================================
[2026-10-28 23:17:38,704.704 INFO    ] Launching Daemon at Wed Oct 28 23:17:38 IST 2026
[2026-10-28 23:17:38,715.715 INFO    ] ================================================
[2026-10-28 23:17:39,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:17:39
[2026-10-28 23:17:39,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:17:40,156.156 INFO    ] Initializing speech engine...
[2026-10-28 23:17:40,163.163 INFO    ] 2026-10-28 23:17:40
[2026-10-28 23:17:40,456.456 INFO    ] 2026-10-28 23:17:40
[2026-10-28 23:17:40,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:17:40,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:17:40,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:17:40,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:17:41,013.013 INFO    ] time= 28/10/2026 23:17:40
[2026-10-28 23:17:41,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:17:41,094.094 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:17:41,254.254 INFO    ] No existing commands found in stream
[2026-10-28 23:17:46,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:17:46,273.273 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-28 23:17:49,847.847 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:17:49,850.850 INFO    ] Checking for system updates...
[2026-10-28 23:17:49,885.885 INFO    ] 200
[2026-10-28 23:17:49,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:17:49,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:17:49,947.947 INFO    ] No update needed
[2026-10-28 23:17:49,949.949 INFO    ] Checking for camera pi updates...
[2026-10-28 23:17:49,982.982 INFO    ] 200
[2026-10-28 23:17:49,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:17:50,026.026 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:17:50,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:17:50,122.122 INFO    ] No camera update needed
[2026-10-28 23:17:50,124.124 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:17:50,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:17:50,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:17:50,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:17:52,177.177 INFO    ] ================================================
[2026-10-28 23:17:52,192.192 INFO    ] Launching Daemon at Wed Oct 28 23:17:52 IST 2026
[2026-10-28 23:17:52,203.203 INFO    ] ================================================
[2026-10-28 23:17:52,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:17:52
[2026-10-28 23:17:53,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:17:53,652.652 INFO    ] Initializing speech engine...
[2026-10-28 23:17:53,666.666 INFO    ] 2026-10-28 23:17:53
[2026-10-28 23:17:53,950.950 INFO    ] 2026-10-28 23:17:53
[2026-10-28 23:17:53,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:17:54,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:17:54,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:17:54,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:17:54,578.578 INFO    ] time= 28/10/2026 23:17:54
[2026-10-28 23:17:54,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:17:54,602.602 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:17:54,753.753 INFO    ] No existing commands found in stream
[2026-10-28 23:17:59,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:17:59,772.772 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-10-28 23:18:04,123.123 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:18:04,126.126 INFO    ] Checking for system updates...
[2026-10-28 23:18:04,171.171 INFO    ] 200
[2026-10-28 23:18:04,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:18:04,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:18:04,235.235 INFO    ] No update needed
[2026-10-28 23:18:04,239.239 INFO    ] Checking for camera pi updates...
[2026-10-28 23:18:04,280.280 INFO    ] 200
[2026-10-28 23:18:04,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:18:04,326.326 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:18:04,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:18:04,413.413 INFO    ] No camera update needed
[2026-10-28 23:18:04,417.417 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:18:04,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:18:04,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:18:04,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:18:06,479.479 INFO    ] ================================================
[2026-10-28 23:18:06,494.494 INFO    ] Launching Daemon at Wed Oct 28 23:18:06 IST 2026
[2026-10-28 23:18:06,505.505 INFO    ] ================================================
[2026-10-28 23:18:07,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:18:07
[2026-10-28 23:18:07,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:18:07,956.956 INFO    ] Initializing speech engine...
[2026-10-28 23:18:07,965.965 INFO    ] 2026-10-28 23:18:07
[2026-10-28 23:18:08,230.230 INFO    ] 2026-10-28 23:18:08
[2026-10-28 23:18:08,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:18:08,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:18:08,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:18:08,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:18:08,812.812 INFO    ] time= 28/10/2026 23:18:08
[2026-10-28 23:18:08,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:18:08,860.860 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:18:08,975.975 INFO    ] No existing commands found in stream
[2026-10-28 23:18:13,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:18:13,995.995 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-28 23:18:15,035.035 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:18:15,038.038 INFO    ] Checking for system updates...
[2026-10-28 23:18:15,078.078 INFO    ] 200
[2026-10-28 23:18:15,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:18:15,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:18:15,136.136 INFO    ] No update needed
[2026-10-28 23:18:15,138.138 INFO    ] Checking for camera pi updates...
[2026-10-28 23:18:15,171.171 INFO    ] 200
[2026-10-28 23:18:15,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:18:15,215.215 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:18:15,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:18:15,405.405 INFO    ] No camera update needed
[2026-10-28 23:18:15,408.408 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:18:15,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:18:15,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:18:15,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:18:17,462.462 INFO    ] ================================================
[2026-10-28 23:18:17,476.476 INFO    ] Launching Daemon at Wed Oct 28 23:18:17 IST 2026
[2026-10-28 23:18:17,487.487 INFO    ] ================================================
[2026-10-28 23:18:18,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:18:18
[2026-10-28 23:18:18,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:18:18,884.884 INFO    ] Initializing speech engine...
[2026-10-28 23:18:18,910.910 INFO    ] 2026-10-28 23:18:18
[2026-10-28 23:18:19,166.166 INFO    ] 2026-10-28 23:18:19
[2026-10-28 23:18:19,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:18:19,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:18:19,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:18:19,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:18:19,736.736 INFO    ] time= 28/10/2026 23:18:19
[2026-10-28 23:18:19,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:18:19,766.766 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:18:19,912.912 INFO    ] No existing commands found in stream
[2026-10-28 23:18:24,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:18:24,940.940 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-28 23:18:29,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:18:29,472.472 INFO    ] Checking for system updates...
[2026-10-28 23:18:29,508.508 INFO    ] 200
[2026-10-28 23:18:29,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:18:29,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:18:29,566.566 INFO    ] No update needed
[2026-10-28 23:18:29,569.569 INFO    ] Checking for camera pi updates...
[2026-10-28 23:18:29,602.602 INFO    ] 200
[2026-10-28 23:18:29,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:18:29,646.646 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:18:29,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:18:29,742.742 INFO    ] No camera update needed
[2026-10-28 23:18:29,744.744 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:18:29,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:18:29,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:18:29,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:18:31,798.798 INFO    ] ================================================
[2026-10-28 23:18:31,814.814 INFO    ] Launching Daemon at Wed Oct 28 23:18:31 IST 2026
[2026-10-28 23:18:31,826.826 INFO    ] ================================================
[2026-10-28 23:18:32,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:18:32
[2026-10-28 23:18:33,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:18:33,593.593 INFO    ] Initializing speech engine...
[2026-10-28 23:18:33,607.607 INFO    ] 2026-10-28 23:18:33
[2026-10-28 23:18:33,894.894 INFO    ] 2026-10-28 23:18:33
[2026-10-28 23:18:33,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:18:34,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:18:34,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:18:34,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:18:34,494.494 INFO    ] time= 28/10/2026 23:18:34
[2026-10-28 23:18:34,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:18:34,591.591 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:18:34,704.704 INFO    ] No existing commands found in stream
[2026-10-28 23:18:39,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:18:39,723.723 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-10-28 23:18:41,867.867 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:18:41,870.870 INFO    ] Checking for system updates...
[2026-10-28 23:18:41,907.907 INFO    ] 200
[2026-10-28 23:18:41,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:18:41,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:18:41,966.966 INFO    ] No update needed
[2026-10-28 23:18:41,969.969 INFO    ] Checking for camera pi updates...
[2026-10-28 23:18:42,004.004 INFO    ] 200
[2026-10-28 23:18:42,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:18:42,048.048 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:18:42,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:18:42,155.155 INFO    ] No camera update needed
[2026-10-28 23:18:42,158.158 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:18:42,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:18:42,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:18:42,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:18:44,217.217 INFO    ] ================================================
[2026-10-28 23:18:44,232.232 INFO    ] Launching Daemon at Wed Oct 28 23:18:44 IST 2026
[2026-10-28 23:18:44,242.242 INFO    ] ================================================
[2026-10-28 23:18:44,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:18:44
[2026-10-28 23:18:45,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:18:45,710.710 INFO    ] Initializing speech engine...
[2026-10-28 23:18:45,718.718 INFO    ] 2026-10-28 23:18:45
[2026-10-28 23:18:45,995.995 INFO    ] 2026-10-28 23:18:45
[2026-10-28 23:18:46,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:18:46,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:18:46,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:18:46,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:18:46,499.499 INFO    ] time= 28/10/2026 23:18:46
[2026-10-28 23:18:46,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:18:46,591.591 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:18:46,718.718 INFO    ] No existing commands found in stream
[2026-10-28 23:18:51,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:18:51,732.732 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-10-28 23:18:55,434.434 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:18:55,437.437 INFO    ] Checking for system updates...
[2026-10-28 23:18:55,472.472 INFO    ] 200
[2026-10-28 23:18:55,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:18:55,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:18:55,529.529 INFO    ] No update needed
[2026-10-28 23:18:55,531.531 INFO    ] Checking for camera pi updates...
[2026-10-28 23:18:55,565.565 INFO    ] 200
[2026-10-28 23:18:55,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:18:55,611.611 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:18:55,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:18:55,714.714 INFO    ] No camera update needed
[2026-10-28 23:18:55,716.716 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:18:55,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:18:55,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:18:55,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:18:57,768.768 INFO    ] ================================================
[2026-10-28 23:18:57,783.783 INFO    ] Launching Daemon at Wed Oct 28 23:18:57 IST 2026
[2026-10-28 23:18:57,796.796 INFO    ] ================================================
[2026-10-28 23:18:58,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:18:58
[2026-10-28 23:18:58,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:18:59,243.243 INFO    ] Initializing speech engine...
[2026-10-28 23:18:59,252.252 INFO    ] 2026-10-28 23:18:59
[2026-10-28 23:18:59,554.554 INFO    ] 2026-10-28 23:18:59
[2026-10-28 23:18:59,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:18:59,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:18:59,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:19:00,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:19:00,137.137 INFO    ] time= 28/10/2026 23:19:00
[2026-10-28 23:19:00,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:19:00,214.214 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:19:00,353.353 INFO    ] No existing commands found in stream
[2026-10-28 23:19:05,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:19:05,387.387 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-10-28 23:19:07,741.741 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:19:07,743.743 INFO    ] Checking for system updates...
[2026-10-28 23:19:07,780.780 INFO    ] 200
[2026-10-28 23:19:07,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:19:07,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:19:07,848.848 INFO    ] No update needed
[2026-10-28 23:19:07,850.850 INFO    ] Checking for camera pi updates...
[2026-10-28 23:19:07,884.884 INFO    ] 200
[2026-10-28 23:19:07,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:19:07,929.929 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:19:08,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:19:08,031.031 INFO    ] No camera update needed
[2026-10-28 23:19:08,034.034 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:19:08,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:19:08,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:19:08,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:19:10,091.091 INFO    ] ================================================
[2026-10-28 23:19:10,107.107 INFO    ] Launching Daemon at Wed Oct 28 23:19:10 IST 2026
[2026-10-28 23:19:10,117.117 INFO    ] ================================================
[2026-10-28 23:19:10,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:19:10
[2026-10-28 23:19:11,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:19:11,530.530 INFO    ] Initializing speech engine...
[2026-10-28 23:19:11,534.534 INFO    ] 2026-10-28 23:19:11
[2026-10-28 23:19:11,834.834 INFO    ] 2026-10-28 23:19:11
[2026-10-28 23:19:11,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:19:12,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:19:12,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:19:12,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:19:12,472.472 INFO    ] time= 28/10/2026 23:19:12
[2026-10-28 23:19:12,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:19:12,500.500 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:19:12,633.633 INFO    ] No existing commands found in stream
[2026-10-28 23:19:17,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:19:17,668.668 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-28 23:19:18,544.544 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:19:18,547.547 INFO    ] Checking for system updates...
[2026-10-28 23:19:18,585.585 INFO    ] 200
[2026-10-28 23:19:18,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:19:18,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:19:18,644.644 INFO    ] No update needed
[2026-10-28 23:19:18,647.647 INFO    ] Checking for camera pi updates...
[2026-10-28 23:19:18,686.686 INFO    ] 200
[2026-10-28 23:19:18,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:19:18,736.736 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:19:18,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:19:18,840.840 INFO    ] No camera update needed
[2026-10-28 23:19:18,843.843 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:19:18,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:19:18,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:19:18,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:19:20,898.898 INFO    ] ================================================
[2026-10-28 23:19:20,913.913 INFO    ] Launching Daemon at Wed Oct 28 23:19:20 IST 2026
[2026-10-28 23:19:20,924.924 INFO    ] ================================================
[2026-10-28 23:19:21,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:19:21
[2026-10-28 23:19:22,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:19:22,602.602 INFO    ] Initializing speech engine...
[2026-10-28 23:19:22,609.609 INFO    ] 2026-10-28 23:19:22
[2026-10-28 23:19:22,904.904 INFO    ] 2026-10-28 23:19:22
[2026-10-28 23:19:22,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:19:23,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:19:23,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:19:23,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:19:23,603.603 INFO    ] time= 28/10/2026 23:19:23
[2026-10-28 23:19:23,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:19:23,695.695 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:19:23,841.841 INFO    ] No existing commands found in stream
[2026-10-28 23:19:28,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:19:28,878.878 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-10-28 23:19:32,067.067 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:19:32,071.071 INFO    ] Checking for system updates...
[2026-10-28 23:19:32,126.126 INFO    ] 200
[2026-10-28 23:19:32,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:19:32,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:19:32,204.204 INFO    ] No update needed
[2026-10-28 23:19:32,206.206 INFO    ] Checking for camera pi updates...
[2026-10-28 23:19:32,242.242 INFO    ] 200
[2026-10-28 23:19:32,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:19:32,296.296 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:19:32,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:19:32,358.358 INFO    ] No camera update needed
[2026-10-28 23:19:32,362.362 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:19:32,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:19:32,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:19:32,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:19:34,416.416 INFO    ] ================================================
[2026-10-28 23:19:34,432.432 INFO    ] Launching Daemon at Wed Oct 28 23:19:34 IST 2026
[2026-10-28 23:19:34,442.442 INFO    ] ================================================
[2026-10-28 23:19:35,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:19:35
[2026-10-28 23:19:35,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:19:36,064.064 INFO    ] Initializing speech engine...
[2026-10-28 23:19:36,076.076 INFO    ] 2026-10-28 23:19:36
[2026-10-28 23:19:36,353.353 INFO    ] 2026-10-28 23:19:36
[2026-10-28 23:19:36,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:19:36,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:19:36,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:19:37,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:19:37,089.089 INFO    ] time= 28/10/2026 23:19:37
[2026-10-28 23:19:37,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:19:37,181.181 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:19:37,336.336 INFO    ] No existing commands found in stream
[2026-10-28 23:19:42,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:19:42,378.378 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-28 23:19:43,465.465 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:19:43,468.468 INFO    ] Checking for system updates...
[2026-10-28 23:19:43,507.507 INFO    ] 200
[2026-10-28 23:19:43,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:19:43,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:19:43,566.566 INFO    ] No update needed
[2026-10-28 23:19:43,568.568 INFO    ] Checking for camera pi updates...
[2026-10-28 23:19:43,601.601 INFO    ] 200
[2026-10-28 23:19:43,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:19:43,645.645 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:19:43,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:19:43,730.730 INFO    ] No camera update needed
[2026-10-28 23:19:43,732.732 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:19:43,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:19:43,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:19:43,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:19:45,788.788 INFO    ] ================================================
[2026-10-28 23:19:45,802.802 INFO    ] Launching Daemon at Wed Oct 28 23:19:45 IST 2026
[2026-10-28 23:19:45,814.814 INFO    ] ================================================
[2026-10-28 23:19:46,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:19:46
[2026-10-28 23:19:47,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:19:47,411.411 INFO    ] Initializing speech engine...
[2026-10-28 23:19:47,429.429 INFO    ] 2026-10-28 23:19:47
[2026-10-28 23:19:47,722.722 INFO    ] 2026-10-28 23:19:47
[2026-10-28 23:19:47,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:19:47,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:19:47,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:19:48,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:19:48,159.159 INFO    ] time= 28/10/2026 23:19:48
[2026-10-28 23:19:48,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:19:48,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:19:48,334.334 INFO    ] No existing commands found in stream
[2026-10-28 23:19:53,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:19:53,367.367 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 23:19:53,981.981 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:19:53,984.984 INFO    ] Checking for system updates...
[2026-10-28 23:19:54,019.019 INFO    ] 200
[2026-10-28 23:19:54,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:19:54,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:19:54,076.076 INFO    ] No update needed
[2026-10-28 23:19:54,078.078 INFO    ] Checking for camera pi updates...
[2026-10-28 23:19:54,112.112 INFO    ] 200
[2026-10-28 23:19:54,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:19:54,161.161 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:19:54,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:19:54,248.248 INFO    ] No camera update needed
[2026-10-28 23:19:54,250.250 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:19:54,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:19:54,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:19:54,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:19:56,303.303 INFO    ] ================================================
[2026-10-28 23:19:56,318.318 INFO    ] Launching Daemon at Wed Oct 28 23:19:56 IST 2026
[2026-10-28 23:19:56,329.329 INFO    ] ================================================
[2026-10-28 23:19:56,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:19:56
[2026-10-28 23:19:57,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:19:57,803.803 INFO    ] Initializing speech engine...
[2026-10-28 23:19:57,813.813 INFO    ] 2026-10-28 23:19:57
[2026-10-28 23:19:58,063.063 INFO    ] 2026-10-28 23:19:58
[2026-10-28 23:19:58,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:19:58,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:19:58,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:19:58,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:19:58,617.617 INFO    ] time= 28/10/2026 23:19:58
[2026-10-28 23:19:58,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:19:58,641.641 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:19:58,778.778 INFO    ] No existing commands found in stream
[2026-10-28 23:20:03,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:20:03,819.819 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-28 23:20:08,584.584 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:20:08,587.587 INFO    ] Checking for system updates...
[2026-10-28 23:20:08,629.629 INFO    ] 200
[2026-10-28 23:20:08,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:20:08,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:20:08,698.698 INFO    ] No update needed
[2026-10-28 23:20:08,701.701 INFO    ] Checking for camera pi updates...
[2026-10-28 23:20:08,736.736 INFO    ] 200
[2026-10-28 23:20:08,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:20:08,782.782 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:20:08,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:20:08,885.885 INFO    ] No camera update needed
[2026-10-28 23:20:08,888.888 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:20:08,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:20:08,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:20:08,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:20:10,943.943 INFO    ] ================================================
[2026-10-28 23:20:10,959.959 INFO    ] Launching Daemon at Wed Oct 28 23:20:10 IST 2026
[2026-10-28 23:20:10,969.969 INFO    ] ================================================
[2026-10-28 23:20:11,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:20:11
[2026-10-28 23:20:12,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:20:12,549.549 INFO    ] Initializing speech engine...
[2026-10-28 23:20:12,573.573 INFO    ] 2026-10-28 23:20:12
[2026-10-28 23:20:12,850.850 INFO    ] 2026-10-28 23:20:12
[2026-10-28 23:20:12,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:20:13,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:20:13,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:20:13,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:20:13,452.452 INFO    ] time= 28/10/2026 23:20:13
[2026-10-28 23:20:13,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:20:13,489.489 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:20:13,606.606 INFO    ] No existing commands found in stream
[2026-10-28 23:20:18,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:20:18,630.630 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 23:20:19,504.504 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:20:19,507.507 INFO    ] Checking for system updates...
[2026-10-28 23:20:19,544.544 INFO    ] 200
[2026-10-28 23:20:19,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:20:19,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:20:19,605.605 INFO    ] No update needed
[2026-10-28 23:20:19,608.608 INFO    ] Checking for camera pi updates...
[2026-10-28 23:20:19,642.642 INFO    ] 200
[2026-10-28 23:20:19,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:20:19,693.693 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:20:19,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:20:19,889.889 INFO    ] No camera update needed
[2026-10-28 23:20:19,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:20:19,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:20:19,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:20:19,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:20:21,949.949 INFO    ] ================================================
[2026-10-28 23:20:21,965.965 INFO    ] Launching Daemon at Wed Oct 28 23:20:21 IST 2026
[2026-10-28 23:20:21,975.975 INFO    ] ================================================
[2026-10-28 23:20:22,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:20:22
[2026-10-28 23:20:23,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:20:23,573.573 INFO    ] Initializing speech engine...
[2026-10-28 23:20:23,581.581 INFO    ] 2026-10-28 23:20:23
[2026-10-28 23:20:23,854.854 INFO    ] 2026-10-28 23:20:23
[2026-10-28 23:20:23,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:20:24,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:20:24,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:20:24,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:20:24,426.426 INFO    ] time= 28/10/2026 23:20:24
[2026-10-28 23:20:24,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:20:24,449.449 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:20:24,580.580 INFO    ] No existing commands found in stream
[2026-10-28 23:20:29,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:20:29,598.598 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-10-28 23:20:32,365.365 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:20:32,368.368 INFO    ] Checking for system updates...
[2026-10-28 23:20:32,407.407 INFO    ] 200
[2026-10-28 23:20:32,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:20:32,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:20:32,470.470 INFO    ] No update needed
[2026-10-28 23:20:32,473.473 INFO    ] Checking for camera pi updates...
[2026-10-28 23:20:32,518.518 INFO    ] 200
[2026-10-28 23:20:32,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:20:32,572.572 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:20:32,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:20:32,633.633 INFO    ] No camera update needed
[2026-10-28 23:20:32,636.636 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:20:32,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:20:32,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:20:32,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:20:34,687.687 INFO    ] ================================================
[2026-10-28 23:20:34,703.703 INFO    ] Launching Daemon at Wed Oct 28 23:20:34 IST 2026
[2026-10-28 23:20:34,714.714 INFO    ] ================================================
[2026-10-28 23:20:35,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:20:35
[2026-10-28 23:20:35,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:20:36,205.205 INFO    ] Initializing speech engine...
[2026-10-28 23:20:36,215.215 INFO    ] 2026-10-28 23:20:36
[2026-10-28 23:20:36,479.479 INFO    ] 2026-10-28 23:20:36
[2026-10-28 23:20:36,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:20:36,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:20:36,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:20:37,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:20:37,038.038 INFO    ] time= 28/10/2026 23:20:37
[2026-10-28 23:20:37,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:20:37,076.076 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:20:37,189.189 INFO    ] No existing commands found in stream
[2026-10-28 23:20:42,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:20:42,217.217 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-28 23:20:45,131.131 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:20:45,133.133 INFO    ] Checking for system updates...
[2026-10-28 23:20:45,169.169 INFO    ] 200
[2026-10-28 23:20:45,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:20:45,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:20:45,226.226 INFO    ] No update needed
[2026-10-28 23:20:45,233.233 INFO    ] Checking for camera pi updates...
[2026-10-28 23:20:45,267.267 INFO    ] 200
[2026-10-28 23:20:45,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:20:45,309.309 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:20:45,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:20:45,395.395 INFO    ] No camera update needed
[2026-10-28 23:20:45,397.397 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:20:45,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:20:45,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:20:45,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:20:47,450.450 INFO    ] ================================================
[2026-10-28 23:20:47,465.465 INFO    ] Launching Daemon at Wed Oct 28 23:20:47 IST 2026
[2026-10-28 23:20:47,476.476 INFO    ] ================================================
[2026-10-28 23:20:48,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:20:48
[2026-10-28 23:20:48,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:20:49,122.122 INFO    ] Initializing speech engine...
[2026-10-28 23:20:49,136.136 INFO    ] 2026-10-28 23:20:49
[2026-10-28 23:20:49,448.448 INFO    ] 2026-10-28 23:20:49
[2026-10-28 23:20:49,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:20:49,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:20:49,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:20:49,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:20:49,955.955 INFO    ] time= 28/10/2026 23:20:49
[2026-10-28 23:20:49,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:20:50,002.002 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:20:50,117.117 INFO    ] No existing commands found in stream
[2026-10-28 23:20:55,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:20:55,155.155 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-10-28 23:20:58,506.506 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:20:58,508.508 INFO    ] Checking for system updates...
[2026-10-28 23:20:58,543.543 INFO    ] 200
[2026-10-28 23:20:58,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:20:58,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:20:58,600.600 INFO    ] No update needed
[2026-10-28 23:20:58,602.602 INFO    ] Checking for camera pi updates...
[2026-10-28 23:20:58,635.635 INFO    ] 200
[2026-10-28 23:20:58,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:20:58,678.678 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:20:58,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:20:58,765.765 INFO    ] No camera update needed
[2026-10-28 23:20:58,767.767 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:20:58,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:20:58,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:20:58,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:21:00,820.820 INFO    ] ================================================
[2026-10-28 23:21:00,835.835 INFO    ] Launching Daemon at Wed Oct 28 23:21:00 IST 2026
[2026-10-28 23:21:00,845.845 INFO    ] ================================================
[2026-10-28 23:21:01,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:21:01
[2026-10-28 23:21:02,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:21:02,636.636 INFO    ] Initializing speech engine...
[2026-10-28 23:21:02,644.644 INFO    ] 2026-10-28 23:21:02
[2026-10-28 23:21:02,989.989 INFO    ] 2026-10-28 23:21:02
[2026-10-28 23:21:03,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:21:03,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:21:03,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:21:03,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:21:03,629.629 INFO    ] time= 28/10/2026 23:21:03
[2026-10-28 23:21:03,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:21:03,667.667 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:21:03,815.815 INFO    ] No existing commands found in stream
[2026-10-28 23:21:08,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:21:08,832.832 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-10-28 23:21:10,012.012 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:21:10,015.015 INFO    ] Checking for system updates...
[2026-10-28 23:21:10,051.051 INFO    ] 200
[2026-10-28 23:21:10,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:21:10,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:21:10,116.116 INFO    ] No update needed
[2026-10-28 23:21:10,119.119 INFO    ] Checking for camera pi updates...
[2026-10-28 23:21:10,153.153 INFO    ] 200
[2026-10-28 23:21:10,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:21:10,197.197 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:21:10,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:21:10,303.303 INFO    ] No camera update needed
[2026-10-28 23:21:10,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:21:10,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:21:10,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:21:10,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:21:12,358.358 INFO    ] ================================================
[2026-10-28 23:21:12,373.373 INFO    ] Launching Daemon at Wed Oct 28 23:21:12 IST 2026
[2026-10-28 23:21:12,384.384 INFO    ] ================================================
[2026-10-28 23:21:12,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:21:12
[2026-10-28 23:21:13,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:21:13,879.879 INFO    ] Initializing speech engine...
[2026-10-28 23:21:13,888.888 INFO    ] 2026-10-28 23:21:13
[2026-10-28 23:21:14,141.141 INFO    ] 2026-10-28 23:21:14
[2026-10-28 23:21:14,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:21:14,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:21:14,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:21:14,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:21:14,710.710 INFO    ] time= 28/10/2026 23:21:14
[2026-10-28 23:21:14,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:21:14,734.734 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:21:14,868.868 INFO    ] No existing commands found in stream
[2026-10-28 23:21:19,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:21:19,893.893 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-28 23:21:24,323.323 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:21:24,326.326 INFO    ] Checking for system updates...
[2026-10-28 23:21:24,365.365 INFO    ] 200
[2026-10-28 23:21:24,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:21:24,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:21:24,427.427 INFO    ] No update needed
[2026-10-28 23:21:24,430.430 INFO    ] Checking for camera pi updates...
[2026-10-28 23:21:24,469.469 INFO    ] 200
[2026-10-28 23:21:24,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:21:24,524.524 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:21:24,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:21:24,611.611 INFO    ] No camera update needed
[2026-10-28 23:21:24,614.614 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:21:24,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:21:24,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:21:24,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:21:26,674.674 INFO    ] ================================================
[2026-10-28 23:21:26,690.690 INFO    ] Launching Daemon at Wed Oct 28 23:21:26 IST 2026
[2026-10-28 23:21:26,701.701 INFO    ] ================================================
[2026-10-28 23:21:27,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:21:27
[2026-10-28 23:21:27,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:21:28,176.176 INFO    ] Initializing speech engine...
[2026-10-28 23:21:28,184.184 INFO    ] 2026-10-28 23:21:28
[2026-10-28 23:21:28,481.481 INFO    ] 2026-10-28 23:21:28
[2026-10-28 23:21:28,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:21:28,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:21:28,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:21:29,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:21:29,093.093 INFO    ] time= 28/10/2026 23:21:29
[2026-10-28 23:21:29,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:21:29,133.133 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:21:29,267.267 INFO    ] No existing commands found in stream
[2026-10-28 23:21:34,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:21:34,285.285 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-10-28 23:21:35,528.528 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:21:35,531.531 INFO    ] Checking for system updates...
[2026-10-28 23:21:35,571.571 INFO    ] 200
[2026-10-28 23:21:35,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:21:35,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:21:35,634.634 INFO    ] No update needed
[2026-10-28 23:21:35,637.637 INFO    ] Checking for camera pi updates...
[2026-10-28 23:21:35,670.670 INFO    ] 200
[2026-10-28 23:21:35,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:21:35,713.713 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:21:35,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:21:35,772.772 INFO    ] No camera update needed
[2026-10-28 23:21:35,775.775 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:21:35,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:21:35,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:21:35,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:21:37,829.829 INFO    ] ================================================
[2026-10-28 23:21:37,845.845 INFO    ] Launching Daemon at Wed Oct 28 23:21:37 IST 2026
[2026-10-28 23:21:37,856.856 INFO    ] ================================================
[2026-10-28 23:21:38,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:21:38
[2026-10-28 23:21:39,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:21:39,287.287 INFO    ] Initializing speech engine...
[2026-10-28 23:21:39,295.295 INFO    ] 2026-10-28 23:21:39
[2026-10-28 23:21:39,546.546 INFO    ] 2026-10-28 23:21:39
[2026-10-28 23:21:39,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:21:39,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:21:39,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:21:40,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:21:40,113.113 INFO    ] time= 28/10/2026 23:21:40
[2026-10-28 23:21:40,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:21:40,160.160 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:21:40,290.290 INFO    ] No existing commands found in stream
[2026-10-28 23:21:45,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:21:45,323.323 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-28 23:21:48,651.651 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:21:48,653.653 INFO    ] Checking for system updates...
[2026-10-28 23:21:48,692.692 INFO    ] 200
[2026-10-28 23:21:48,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:21:48,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:21:48,755.755 INFO    ] No update needed
[2026-10-28 23:21:48,757.757 INFO    ] Checking for camera pi updates...
[2026-10-28 23:21:48,793.793 INFO    ] 200
[2026-10-28 23:21:48,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:21:48,835.835 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:21:48,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:21:48,923.923 INFO    ] No camera update needed
[2026-10-28 23:21:48,925.925 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:21:48,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:21:48,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:21:48,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:21:50,978.978 INFO    ] ================================================
[2026-10-28 23:21:50,994.994 INFO    ] Launching Daemon at Wed Oct 28 23:21:50 IST 2026
[2026-10-28 23:21:51,004.004 INFO    ] ================================================
[2026-10-28 23:21:51,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:21:51
[2026-10-28 23:21:52,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:21:52,413.413 INFO    ] Initializing speech engine...
[2026-10-28 23:21:52,436.436 INFO    ] 2026-10-28 23:21:52
[2026-10-28 23:21:52,691.691 INFO    ] 2026-10-28 23:21:52
[2026-10-28 23:21:52,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:21:52,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:21:52,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:21:53,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:21:53,291.291 INFO    ] time= 28/10/2026 23:21:53
[2026-10-28 23:21:53,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:21:53,314.314 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:21:53,437.437 INFO    ] No existing commands found in stream
[2026-10-28 23:21:58,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:21:58,460.460 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-28 23:22:01,427.427 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:22:01,429.429 INFO    ] Checking for system updates...
[2026-10-28 23:22:01,471.471 INFO    ] 200
[2026-10-28 23:22:01,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:22:01,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:22:01,530.530 INFO    ] No update needed
[2026-10-28 23:22:01,533.533 INFO    ] Checking for camera pi updates...
[2026-10-28 23:22:01,566.566 INFO    ] 200
[2026-10-28 23:22:01,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:22:01,614.614 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:22:01,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:22:01,708.708 INFO    ] No camera update needed
[2026-10-28 23:22:01,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:22:01,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:22:01,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:22:01,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:22:03,768.768 INFO    ] ================================================
[2026-10-28 23:22:03,782.782 INFO    ] Launching Daemon at Wed Oct 28 23:22:03 IST 2026
[2026-10-28 23:22:03,793.793 INFO    ] ================================================
[2026-10-28 23:22:04,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:22:04
[2026-10-28 23:22:05,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:22:05,322.322 INFO    ] Initializing speech engine...
[2026-10-28 23:22:05,336.336 INFO    ] 2026-10-28 23:22:05
[2026-10-28 23:22:05,602.602 INFO    ] 2026-10-28 23:22:05
[2026-10-28 23:22:05,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:22:05,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:22:05,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:22:06,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:22:06,153.153 INFO    ] time= 28/10/2026 23:22:06
[2026-10-28 23:22:06,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:22:06,177.177 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:22:06,308.308 INFO    ] No existing commands found in stream
[2026-10-28 23:22:11,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:22:11,329.329 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-10-28 23:22:13,069.069 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:22:13,072.072 INFO    ] Checking for system updates...
[2026-10-28 23:22:13,111.111 INFO    ] 200
[2026-10-28 23:22:13,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:22:13,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:22:13,168.168 INFO    ] No update needed
[2026-10-28 23:22:13,171.171 INFO    ] Checking for camera pi updates...
[2026-10-28 23:22:13,205.205 INFO    ] 200
[2026-10-28 23:22:13,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:22:13,250.250 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:22:13,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:22:13,337.337 INFO    ] No camera update needed
[2026-10-28 23:22:13,339.339 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:22:13,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:22:13,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:22:13,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:22:15,392.392 INFO    ] ================================================
[2026-10-28 23:22:15,407.407 INFO    ] Launching Daemon at Wed Oct 28 23:22:15 IST 2026
[2026-10-28 23:22:15,417.417 INFO    ] ================================================
[2026-10-28 23:22:15,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:22:15
[2026-10-28 23:22:16,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:22:16,830.830 INFO    ] Initializing speech engine...
[2026-10-28 23:22:16,850.850 INFO    ] 2026-10-28 23:22:16
[2026-10-28 23:22:17,112.112 INFO    ] 2026-10-28 23:22:17
[2026-10-28 23:22:17,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:22:17,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:22:17,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:22:17,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:22:17,646.646 INFO    ] time= 28/10/2026 23:22:17
[2026-10-28 23:22:17,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:22:17,737.737 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:22:17,878.878 INFO    ] No existing commands found in stream
[2026-10-28 23:22:22,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:22:22,906.906 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 23:22:25,435.435 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:22:25,437.437 INFO    ] Checking for system updates...
[2026-10-28 23:22:25,476.476 INFO    ] 200
[2026-10-28 23:22:25,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:22:25,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:22:25,539.539 INFO    ] No update needed
[2026-10-28 23:22:25,541.541 INFO    ] Checking for camera pi updates...
[2026-10-28 23:22:25,574.574 INFO    ] 200
[2026-10-28 23:22:25,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:22:25,616.616 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:22:25,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:22:25,845.845 INFO    ] No camera update needed
[2026-10-28 23:22:25,847.847 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:22:25,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:22:25,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:22:25,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:22:27,899.899 INFO    ] ================================================
[2026-10-28 23:22:27,915.915 INFO    ] Launching Daemon at Wed Oct 28 23:22:27 IST 2026
[2026-10-28 23:22:27,925.925 INFO    ] ================================================
[2026-10-28 23:22:28,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:22:28
[2026-10-28 23:22:29,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:22:29,492.492 INFO    ] Initializing speech engine...
[2026-10-28 23:22:29,508.508 INFO    ] 2026-10-28 23:22:29
[2026-10-28 23:22:29,758.758 INFO    ] 2026-10-28 23:22:29
[2026-10-28 23:22:29,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:22:30,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:22:30,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:22:30,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:22:30,326.326 INFO    ] time= 28/10/2026 23:22:30
[2026-10-28 23:22:30,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:22:30,354.354 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:22:30,504.504 INFO    ] No existing commands found in stream
[2026-10-28 23:22:35,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:22:35,540.540 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-10-28 23:22:39,629.629 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:22:39,632.632 INFO    ] Checking for system updates...
[2026-10-28 23:22:39,671.671 INFO    ] 200
[2026-10-28 23:22:39,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:22:39,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:22:39,732.732 INFO    ] No update needed
[2026-10-28 23:22:39,735.735 INFO    ] Checking for camera pi updates...
[2026-10-28 23:22:39,771.771 INFO    ] 200
[2026-10-28 23:22:39,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:22:39,817.817 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:22:39,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:22:39,878.878 INFO    ] No camera update needed
[2026-10-28 23:22:39,880.880 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:22:39,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:22:39,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:22:39,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:22:41,935.935 INFO    ] ================================================
[2026-10-28 23:22:41,950.950 INFO    ] Launching Daemon at Wed Oct 28 23:22:41 IST 2026
[2026-10-28 23:22:41,961.961 INFO    ] ================================================
[2026-10-28 23:22:42,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:22:42
[2026-10-28 23:22:43,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:22:43,427.427 INFO    ] Initializing speech engine...
[2026-10-28 23:22:43,447.447 INFO    ] 2026-10-28 23:22:43
[2026-10-28 23:22:43,713.713 INFO    ] 2026-10-28 23:22:43
[2026-10-28 23:22:43,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:22:44,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:22:44,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:22:44,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:22:44,277.277 INFO    ] time= 28/10/2026 23:22:44
[2026-10-28 23:22:44,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:22:44,326.326 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:22:44,455.455 INFO    ] No existing commands found in stream
[2026-10-28 23:22:49,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:22:49,484.484 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-28 23:22:51,110.110 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:22:51,113.113 INFO    ] Checking for system updates...
[2026-10-28 23:22:51,154.154 INFO    ] 200
[2026-10-28 23:22:51,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:22:51,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:22:51,215.215 INFO    ] No update needed
[2026-10-28 23:22:51,217.217 INFO    ] Checking for camera pi updates...
[2026-10-28 23:22:51,250.250 INFO    ] 200
[2026-10-28 23:22:51,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:22:51,293.293 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:22:51,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:22:51,385.385 INFO    ] No camera update needed
[2026-10-28 23:22:51,388.388 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:22:51,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:22:51,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:22:51,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:22:53,439.439 INFO    ] ================================================
[2026-10-28 23:22:53,454.454 INFO    ] Launching Daemon at Wed Oct 28 23:22:53 IST 2026
[2026-10-28 23:22:53,465.465 INFO    ] ================================================
[2026-10-28 23:22:54,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:22:54
[2026-10-28 23:22:54,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:22:54,939.939 INFO    ] Initializing speech engine...
[2026-10-28 23:22:54,947.947 INFO    ] 2026-10-28 23:22:54
[2026-10-28 23:22:55,226.226 INFO    ] 2026-10-28 23:22:55
[2026-10-28 23:22:55,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:22:55,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:22:55,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:22:55,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:22:55,981.981 INFO    ] time= 28/10/2026 23:22:55
[2026-10-28 23:22:56,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:22:56,079.079 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:22:56,294.294 INFO    ] No existing commands found in stream
[2026-10-28 23:23:01,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:23:01,328.328 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-10-28 23:23:04,603.603 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:23:04,606.606 INFO    ] Checking for system updates...
[2026-10-28 23:23:04,644.644 INFO    ] 200
[2026-10-28 23:23:04,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:23:04,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:23:04,706.706 INFO    ] No update needed
[2026-10-28 23:23:04,708.708 INFO    ] Checking for camera pi updates...
[2026-10-28 23:23:04,744.744 INFO    ] 200
[2026-10-28 23:23:04,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:23:04,790.790 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:23:04,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:23:04,874.874 INFO    ] No camera update needed
[2026-10-28 23:23:04,877.877 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:23:04,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:23:04,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:23:04,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:23:06,928.928 INFO    ] ================================================
[2026-10-28 23:23:06,942.942 INFO    ] Launching Daemon at Wed Oct 28 23:23:06 IST 2026
[2026-10-28 23:23:06,953.953 INFO    ] ================================================
[2026-10-28 23:23:07,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:23:07
[2026-10-28 23:23:08,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:23:08,376.376 INFO    ] Initializing speech engine...
[2026-10-28 23:23:08,383.383 INFO    ] 2026-10-28 23:23:08
[2026-10-28 23:23:08,670.670 INFO    ] 2026-10-28 23:23:08
[2026-10-28 23:23:08,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:23:08,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:23:08,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:23:09,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:23:09,274.274 INFO    ] time= 28/10/2026 23:23:09
[2026-10-28 23:23:09,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:23:09,303.303 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:23:09,435.435 INFO    ] No existing commands found in stream
[2026-10-28 23:23:14,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:23:14,457.457 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 23:23:15,632.632 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:23:15,635.635 INFO    ] Checking for system updates...
[2026-10-28 23:23:15,672.672 INFO    ] 200
[2026-10-28 23:23:15,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:23:15,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:23:15,733.733 INFO    ] No update needed
[2026-10-28 23:23:15,736.736 INFO    ] Checking for camera pi updates...
[2026-10-28 23:23:15,769.769 INFO    ] 200
[2026-10-28 23:23:15,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:23:15,811.811 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:23:15,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:23:15,893.893 INFO    ] No camera update needed
[2026-10-28 23:23:15,895.895 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:23:15,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:23:15,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:23:15,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:23:17,947.947 INFO    ] ================================================
[2026-10-28 23:23:17,962.962 INFO    ] Launching Daemon at Wed Oct 28 23:23:17 IST 2026
[2026-10-28 23:23:17,973.973 INFO    ] ================================================
[2026-10-28 23:23:18,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:23:18
[2026-10-28 23:23:19,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:23:19,450.450 INFO    ] Initializing speech engine...
[2026-10-28 23:23:19,456.456 INFO    ] 2026-10-28 23:23:19
[2026-10-28 23:23:19,718.718 INFO    ] 2026-10-28 23:23:19
[2026-10-28 23:23:19,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:23:20,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:23:20,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:23:20,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:23:20,448.448 INFO    ] time= 28/10/2026 23:23:20
[2026-10-28 23:23:20,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:23:20,534.534 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:23:20,697.697 INFO    ] No existing commands found in stream
[2026-10-28 23:23:25,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:23:25,710.710 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-10-28 23:23:27,111.111 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:23:27,114.114 INFO    ] Checking for system updates...
[2026-10-28 23:23:27,154.154 INFO    ] 200
[2026-10-28 23:23:27,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:23:27,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:23:27,218.218 INFO    ] No update needed
[2026-10-28 23:23:27,221.221 INFO    ] Checking for camera pi updates...
[2026-10-28 23:23:27,259.259 INFO    ] 200
[2026-10-28 23:23:27,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:23:27,308.308 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:23:27,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:23:27,392.392 INFO    ] No camera update needed
[2026-10-28 23:23:27,395.395 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:23:27,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:23:27,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:23:27,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:23:29,447.447 INFO    ] ================================================
[2026-10-28 23:23:29,462.462 INFO    ] Launching Daemon at Wed Oct 28 23:23:29 IST 2026
[2026-10-28 23:23:29,472.472 INFO    ] ================================================
[2026-10-28 23:23:30,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:23:30
[2026-10-28 23:23:30,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:23:30,880.880 INFO    ] Initializing speech engine...
[2026-10-28 23:23:30,896.896 INFO    ] 2026-10-28 23:23:30
[2026-10-28 23:23:31,188.188 INFO    ] 2026-10-28 23:23:31
[2026-10-28 23:23:31,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:23:31,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:23:31,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:23:31,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:23:31,829.829 INFO    ] time= 28/10/2026 23:23:31
[2026-10-28 23:23:31,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:23:31,859.859 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:23:32,020.020 INFO    ] No existing commands found in stream
[2026-10-28 23:23:37,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:23:37,044.044 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-10-28 23:23:41,371.371 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:23:41,374.374 INFO    ] Checking for system updates...
[2026-10-28 23:23:41,412.412 INFO    ] 200
[2026-10-28 23:23:41,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:23:41,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:23:41,473.473 INFO    ] No update needed
[2026-10-28 23:23:41,476.476 INFO    ] Checking for camera pi updates...
[2026-10-28 23:23:41,511.511 INFO    ] 200
[2026-10-28 23:23:41,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:23:41,557.557 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:23:41,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:23:41,619.619 INFO    ] No camera update needed
[2026-10-28 23:23:41,621.621 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:23:41,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:23:41,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:23:41,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:23:43,672.672 INFO    ] ================================================
[2026-10-28 23:23:43,694.694 INFO    ] Launching Daemon at Wed Oct 28 23:23:43 IST 2026
[2026-10-28 23:23:43,704.704 INFO    ] ================================================
[2026-10-28 23:23:44,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:23:44
[2026-10-28 23:23:44,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:23:45,219.219 INFO    ] Initializing speech engine...
[2026-10-28 23:23:45,230.230 INFO    ] 2026-10-28 23:23:45
[2026-10-28 23:23:45,488.488 INFO    ] 2026-10-28 23:23:45
[2026-10-28 23:23:45,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:23:45,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:23:45,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:23:46,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:23:46,046.046 INFO    ] time= 28/10/2026 23:23:46
[2026-10-28 23:23:46,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:23:46,071.071 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:23:46,203.203 INFO    ] No existing commands found in stream
[2026-10-28 23:23:51,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:23:51,229.229 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-10-28 23:23:54,895.895 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:23:54,898.898 INFO    ] Checking for system updates...
[2026-10-28 23:23:54,937.937 INFO    ] 200
[2026-10-28 23:23:54,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:23:54,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:23:54,999.999 INFO    ] No update needed
[2026-10-28 23:23:55,001.001 INFO    ] Checking for camera pi updates...
[2026-10-28 23:23:55,035.035 INFO    ] 200
[2026-10-28 23:23:55,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:23:55,078.078 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:23:55,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:23:55,166.166 INFO    ] No camera update needed
[2026-10-28 23:23:55,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:23:55,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:23:55,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:23:55,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:23:57,221.221 INFO    ] ================================================
[2026-10-28 23:23:57,236.236 INFO    ] Launching Daemon at Wed Oct 28 23:23:57 IST 2026
[2026-10-28 23:23:57,246.246 INFO    ] ================================================
[2026-10-28 23:23:57,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:23:57
[2026-10-28 23:23:58,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:23:58,709.709 INFO    ] Initializing speech engine...
[2026-10-28 23:23:58,718.718 INFO    ] 2026-10-28 23:23:58
[2026-10-28 23:23:59,001.001 INFO    ] 2026-10-28 23:23:58
[2026-10-28 23:23:59,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:23:59,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:23:59,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:23:59,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:23:59,557.557 INFO    ] time= 28/10/2026 23:23:59
[2026-10-28 23:23:59,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:23:59,605.605 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:23:59,717.717 INFO    ] No existing commands found in stream
[2026-10-28 23:24:04,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:24:04,745.745 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-10-28 23:24:10,455.455 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:24:10,458.458 INFO    ] Checking for system updates...
[2026-10-28 23:24:10,497.497 INFO    ] 200
[2026-10-28 23:24:10,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:24:10,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:24:10,561.561 INFO    ] No update needed
[2026-10-28 23:24:10,563.563 INFO    ] Checking for camera pi updates...
[2026-10-28 23:24:10,598.598 INFO    ] 200
[2026-10-28 23:24:10,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:24:10,645.645 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:24:10,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:24:10,720.720 INFO    ] No camera update needed
[2026-10-28 23:24:10,722.722 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:24:10,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:24:10,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:24:10,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:24:12,779.779 INFO    ] ================================================
[2026-10-28 23:24:12,794.794 INFO    ] Launching Daemon at Wed Oct 28 23:24:12 IST 2026
[2026-10-28 23:24:12,805.805 INFO    ] ================================================
[2026-10-28 23:24:13,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:24:13
[2026-10-28 23:24:13,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:24:14,230.230 INFO    ] Initializing speech engine...
[2026-10-28 23:24:14,238.238 INFO    ] 2026-10-28 23:24:14
[2026-10-28 23:24:14,524.524 INFO    ] 2026-10-28 23:24:14
[2026-10-28 23:24:14,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:24:14,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:24:14,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:24:15,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:24:15,100.100 INFO    ] time= 28/10/2026 23:24:15
[2026-10-28 23:24:15,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:24:15,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:24:15,255.255 INFO    ] No existing commands found in stream
[2026-10-28 23:24:20,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:24:20,291.291 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-10-28 23:24:22,731.731 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:24:22,734.734 INFO    ] Checking for system updates...
[2026-10-28 23:24:22,772.772 INFO    ] 200
[2026-10-28 23:24:22,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:24:22,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:24:22,836.836 INFO    ] No update needed
[2026-10-28 23:24:22,839.839 INFO    ] Checking for camera pi updates...
[2026-10-28 23:24:22,875.875 INFO    ] 200
[2026-10-28 23:24:22,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:24:22,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:24:23,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:24:23,018.018 INFO    ] No camera update needed
[2026-10-28 23:24:23,020.020 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:24:23,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:24:23,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:24:23,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:24:25,072.072 INFO    ] ================================================
[2026-10-28 23:24:25,087.087 INFO    ] Launching Daemon at Wed Oct 28 23:24:25 IST 2026
[2026-10-28 23:24:25,098.098 INFO    ] ================================================
[2026-10-28 23:24:25,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:24:25
[2026-10-28 23:24:26,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:24:26,552.552 INFO    ] Initializing speech engine...
[2026-10-28 23:24:26,563.563 INFO    ] 2026-10-28 23:24:26
[2026-10-28 23:24:26,825.825 INFO    ] 2026-10-28 23:24:26
[2026-10-28 23:24:26,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:24:27,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:24:27,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:24:27,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:24:27,369.369 INFO    ] time= 28/10/2026 23:24:27
[2026-10-28 23:24:27,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:24:27,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:24:27,540.540 INFO    ] No existing commands found in stream
[2026-10-28 23:24:32,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:24:32,564.564 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-28 23:24:35,395.395 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:24:35,398.398 INFO    ] Checking for system updates...
[2026-10-28 23:24:35,433.433 INFO    ] 200
[2026-10-28 23:24:35,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:24:35,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:24:35,490.490 INFO    ] No update needed
[2026-10-28 23:24:35,492.492 INFO    ] Checking for camera pi updates...
[2026-10-28 23:24:35,526.526 INFO    ] 200
[2026-10-28 23:24:35,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:24:35,569.569 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:24:35,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:24:35,651.651 INFO    ] No camera update needed
[2026-10-28 23:24:35,654.654 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:24:35,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:24:35,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:24:35,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:24:37,706.706 INFO    ] ================================================
[2026-10-28 23:24:37,721.721 INFO    ] Launching Daemon at Wed Oct 28 23:24:37 IST 2026
[2026-10-28 23:24:37,731.731 INFO    ] ================================================
[2026-10-28 23:24:38,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:24:38
[2026-10-28 23:24:38,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:24:39,180.180 INFO    ] Initializing speech engine...
[2026-10-28 23:24:39,189.189 INFO    ] 2026-10-28 23:24:39
[2026-10-28 23:24:39,435.435 INFO    ] 2026-10-28 23:24:39
[2026-10-28 23:24:39,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:24:39,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:24:39,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:24:39,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:24:40,002.002 INFO    ] time= 28/10/2026 23:24:39
[2026-10-28 23:24:40,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:24:40,025.025 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:24:40,171.171 INFO    ] No existing commands found in stream
[2026-10-28 23:24:45,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:24:45,195.195 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-10-28 23:24:47,192.192 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:24:47,195.195 INFO    ] Checking for system updates...
[2026-10-28 23:24:47,231.231 INFO    ] 200
[2026-10-28 23:24:47,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:24:47,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:24:47,289.289 INFO    ] No update needed
[2026-10-28 23:24:47,292.292 INFO    ] Checking for camera pi updates...
[2026-10-28 23:24:47,326.326 INFO    ] 200
[2026-10-28 23:24:47,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:24:47,369.369 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:24:47,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:24:47,454.454 INFO    ] No camera update needed
[2026-10-28 23:24:47,457.457 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:24:47,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:24:47,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:24:47,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:24:49,511.511 INFO    ] ================================================
[2026-10-28 23:24:49,525.525 INFO    ] Launching Daemon at Wed Oct 28 23:24:49 IST 2026
[2026-10-28 23:24:49,536.536 INFO    ] ================================================
[2026-10-28 23:24:50,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:24:50
[2026-10-28 23:24:50,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:24:50,926.926 INFO    ] Initializing speech engine...
[2026-10-28 23:24:50,932.932 INFO    ] 2026-10-28 23:24:50
[2026-10-28 23:24:51,205.205 INFO    ] 2026-10-28 23:24:51
[2026-10-28 23:24:51,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:24:51,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:24:51,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:24:51,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:24:51,767.767 INFO    ] time= 28/10/2026 23:24:51
[2026-10-28 23:24:51,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:24:51,791.791 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:24:51,920.920 INFO    ] No existing commands found in stream
[2026-10-28 23:24:56,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:24:56,937.937 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-10-28 23:24:58,592.592 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:24:58,594.594 INFO    ] Checking for system updates...
[2026-10-28 23:24:58,630.630 INFO    ] 200
[2026-10-28 23:24:58,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:24:58,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:24:58,690.690 INFO    ] No update needed
[2026-10-28 23:24:58,692.692 INFO    ] Checking for camera pi updates...
[2026-10-28 23:24:58,728.728 INFO    ] 200
[2026-10-28 23:24:58,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:24:58,771.771 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:24:58,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:24:58,853.853 INFO    ] No camera update needed
[2026-10-28 23:24:58,856.856 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:24:58,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:24:58,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:24:58,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:25:00,909.909 INFO    ] ================================================
[2026-10-28 23:25:00,923.923 INFO    ] Launching Daemon at Wed Oct 28 23:25:00 IST 2026
[2026-10-28 23:25:00,934.934 INFO    ] ================================================
[2026-10-28 23:25:01,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:25:01
[2026-10-28 23:25:02,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:25:02,968.968 INFO    ] Initializing speech engine...
[2026-10-28 23:25:02,980.980 INFO    ] 2026-10-28 23:25:02
[2026-10-28 23:25:03,268.268 INFO    ] 2026-10-28 23:25:03
[2026-10-28 23:25:03,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:25:03,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:25:03,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:25:03,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:25:03,778.778 INFO    ] time= 28/10/2026 23:25:03
[2026-10-28 23:25:03,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:25:03,882.882 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:25:03,974.974 INFO    ] No existing commands found in stream
[2026-10-28 23:25:08,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:25:08,988.988 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-10-28 23:25:12,053.053 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:25:12,056.056 INFO    ] Checking for system updates...
[2026-10-28 23:25:12,091.091 INFO    ] 200
[2026-10-28 23:25:12,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:25:12,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:25:12,152.152 INFO    ] No update needed
[2026-10-28 23:25:12,155.155 INFO    ] Checking for camera pi updates...
[2026-10-28 23:25:12,188.188 INFO    ] 200
[2026-10-28 23:25:12,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:25:12,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:25:12,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:25:12,331.331 INFO    ] No camera update needed
[2026-10-28 23:25:12,334.334 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:25:12,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:25:12,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:25:12,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:25:14,386.386 INFO    ] ================================================
[2026-10-28 23:25:14,401.401 INFO    ] Launching Daemon at Wed Oct 28 23:25:14 IST 2026
[2026-10-28 23:25:14,411.411 INFO    ] ================================================
[2026-10-28 23:25:14,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:25:14
[2026-10-28 23:25:15,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:25:15,863.863 INFO    ] Initializing speech engine...
[2026-10-28 23:25:15,872.872 INFO    ] 2026-10-28 23:25:15
[2026-10-28 23:25:16,135.135 INFO    ] 2026-10-28 23:25:16
[2026-10-28 23:25:16,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:25:16,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:25:16,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:25:16,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:25:16,698.698 INFO    ] time= 28/10/2026 23:25:16
[2026-10-28 23:25:16,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:25:16,735.735 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:25:16,862.862 INFO    ] No existing commands found in stream
[2026-10-28 23:25:21,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:25:21,895.895 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 23:25:25,300.300 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:25:25,302.302 INFO    ] Checking for system updates...
[2026-10-28 23:25:25,339.339 INFO    ] 200
[2026-10-28 23:25:25,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:25:25,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:25:25,398.398 INFO    ] No update needed
[2026-10-28 23:25:25,401.401 INFO    ] Checking for camera pi updates...
[2026-10-28 23:25:25,438.438 INFO    ] 200
[2026-10-28 23:25:25,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:25:25,482.482 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:25:25,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:25:25,588.588 INFO    ] No camera update needed
[2026-10-28 23:25:25,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:25:25,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:25:25,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:25:25,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:25:27,646.646 INFO    ] ================================================
[2026-10-28 23:25:27,661.661 INFO    ] Launching Daemon at Wed Oct 28 23:25:27 IST 2026
[2026-10-28 23:25:27,672.672 INFO    ] ================================================
[2026-10-28 23:25:28,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:25:28
[2026-10-28 23:25:28,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:25:29,090.090 INFO    ] Initializing speech engine...
[2026-10-28 23:25:29,100.100 INFO    ] 2026-10-28 23:25:29
[2026-10-28 23:25:29,344.344 INFO    ] 2026-10-28 23:25:29
[2026-10-28 23:25:29,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:25:29,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:25:29,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:25:29,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:25:29,899.899 INFO    ] time= 28/10/2026 23:25:29
[2026-10-28 23:25:29,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:25:29,945.945 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:25:30,071.071 INFO    ] No existing commands found in stream
[2026-10-28 23:25:35,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:25:35,104.104 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-28 23:25:39,202.202 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:25:39,205.205 INFO    ] Checking for system updates...
[2026-10-28 23:25:39,240.240 INFO    ] 200
[2026-10-28 23:25:39,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:25:39,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:25:39,297.297 INFO    ] No update needed
[2026-10-28 23:25:39,299.299 INFO    ] Checking for camera pi updates...
[2026-10-28 23:25:39,333.333 INFO    ] 200
[2026-10-28 23:25:39,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:25:39,375.375 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:25:39,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:25:39,457.457 INFO    ] No camera update needed
[2026-10-28 23:25:39,460.460 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:25:39,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:25:39,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:25:39,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:25:41,513.513 INFO    ] ================================================
[2026-10-28 23:25:41,528.528 INFO    ] Launching Daemon at Wed Oct 28 23:25:41 IST 2026
[2026-10-28 23:25:41,538.538 INFO    ] ================================================
[2026-10-28 23:25:42,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:25:42
[2026-10-28 23:25:42,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:25:42,991.991 INFO    ] Initializing speech engine...
[2026-10-28 23:25:42,999.999 INFO    ] 2026-10-28 23:25:42
[2026-10-28 23:25:43,257.257 INFO    ] 2026-10-28 23:25:43
[2026-10-28 23:25:43,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:25:43,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:25:43,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:25:43,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:25:43,801.801 INFO    ] time= 28/10/2026 23:25:43
[2026-10-28 23:25:43,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:25:43,847.847 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:25:43,972.972 INFO    ] No existing commands found in stream
[2026-10-28 23:25:49,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:25:49,006.006 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-10-28 23:25:50,594.594 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:25:50,596.596 INFO    ] Checking for system updates...
[2026-10-28 23:25:50,635.635 INFO    ] 200
[2026-10-28 23:25:50,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:25:50,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:25:50,691.691 INFO    ] No update needed
[2026-10-28 23:25:50,694.694 INFO    ] Checking for camera pi updates...
[2026-10-28 23:25:50,730.730 INFO    ] 200
[2026-10-28 23:25:50,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:25:50,774.774 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:25:50,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:25:50,855.855 INFO    ] No camera update needed
[2026-10-28 23:25:50,857.857 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:25:50,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:25:50,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:25:50,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:25:52,911.911 INFO    ] ================================================
[2026-10-28 23:25:52,926.926 INFO    ] Launching Daemon at Wed Oct 28 23:25:52 IST 2026
[2026-10-28 23:25:52,936.936 INFO    ] ================================================
[2026-10-28 23:25:53,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:25:53
[2026-10-28 23:25:54,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:25:54,437.437 INFO    ] Initializing speech engine...
[2026-10-28 23:25:54,443.443 INFO    ] 2026-10-28 23:25:54
[2026-10-28 23:25:54,691.691 INFO    ] 2026-10-28 23:25:54
[2026-10-28 23:25:54,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:25:54,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:25:54,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:25:55,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:25:55,257.257 INFO    ] time= 28/10/2026 23:25:55
[2026-10-28 23:25:55,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:25:55,280.280 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:25:55,389.389 INFO    ] No existing commands found in stream
[2026-10-28 23:26:00,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:26:00,417.417 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-28 23:26:03,593.593 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:26:03,595.595 INFO    ] Checking for system updates...
[2026-10-28 23:26:03,632.632 INFO    ] 200
[2026-10-28 23:26:03,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:26:03,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:26:03,707.707 INFO    ] No update needed
[2026-10-28 23:26:03,710.710 INFO    ] Checking for camera pi updates...
[2026-10-28 23:26:03,757.757 INFO    ] 200
[2026-10-28 23:26:03,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:26:03,805.805 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:26:03,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:26:03,890.890 INFO    ] No camera update needed
[2026-10-28 23:26:03,892.892 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:26:03,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:26:03,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:26:03,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:26:05,946.946 INFO    ] ================================================
[2026-10-28 23:26:05,961.961 INFO    ] Launching Daemon at Wed Oct 28 23:26:05 IST 2026
[2026-10-28 23:26:05,972.972 INFO    ] ================================================
[2026-10-28 23:26:06,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:26:06
[2026-10-28 23:26:07,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:26:07,570.570 INFO    ] Initializing speech engine...
[2026-10-28 23:26:07,582.582 INFO    ] 2026-10-28 23:26:07
[2026-10-28 23:26:07,849.849 INFO    ] 2026-10-28 23:26:07
[2026-10-28 23:26:07,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:26:08,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:26:08,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:26:08,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:26:08,408.408 INFO    ] time= 28/10/2026 23:26:08
[2026-10-28 23:26:08,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:26:08,444.444 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:26:08,572.572 INFO    ] No existing commands found in stream
[2026-10-28 23:26:13,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:26:13,606.606 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-10-28 23:26:15,194.194 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:26:15,197.197 INFO    ] Checking for system updates...
[2026-10-28 23:26:15,232.232 INFO    ] 200
[2026-10-28 23:26:15,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:26:15,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:26:15,299.299 INFO    ] No update needed
[2026-10-28 23:26:15,302.302 INFO    ] Checking for camera pi updates...
[2026-10-28 23:26:15,335.335 INFO    ] 200
[2026-10-28 23:26:15,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:26:15,377.377 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:26:15,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:26:15,464.464 INFO    ] No camera update needed
[2026-10-28 23:26:15,466.466 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:26:15,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:26:15,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:26:15,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:26:17,517.517 INFO    ] ================================================
[2026-10-28 23:26:17,532.532 INFO    ] Launching Daemon at Wed Oct 28 23:26:17 IST 2026
[2026-10-28 23:26:17,542.542 INFO    ] ================================================
[2026-10-28 23:26:18,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:26:18
[2026-10-28 23:26:18,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:26:18,959.959 INFO    ] Initializing speech engine...
[2026-10-28 23:26:18,967.967 INFO    ] 2026-10-28 23:26:18
[2026-10-28 23:26:19,217.217 INFO    ] 2026-10-28 23:26:19
[2026-10-28 23:26:19,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:26:19,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:26:19,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:26:19,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:26:19,786.786 INFO    ] time= 28/10/2026 23:26:19
[2026-10-28 23:26:19,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:26:19,833.833 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:26:20,007.007 INFO    ] No existing commands found in stream
[2026-10-28 23:26:25,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:26:25,045.045 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-10-28 23:26:28,648.648 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:26:28,651.651 INFO    ] Checking for system updates...
[2026-10-28 23:26:28,686.686 INFO    ] 200
[2026-10-28 23:26:28,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:26:28,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:26:28,749.749 INFO    ] No update needed
[2026-10-28 23:26:28,751.751 INFO    ] Checking for camera pi updates...
[2026-10-28 23:26:28,784.784 INFO    ] 200
[2026-10-28 23:26:28,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:26:28,828.828 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:26:28,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:26:28,916.916 INFO    ] No camera update needed
[2026-10-28 23:26:28,919.919 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:26:28,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:26:28,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:26:28,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:26:30,974.974 INFO    ] ================================================
[2026-10-28 23:26:30,989.989 INFO    ] Launching Daemon at Wed Oct 28 23:26:30 IST 2026
[2026-10-28 23:26:31,999.999 INFO    ] ================================================
[2026-10-28 23:26:31,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:26:31
[2026-10-28 23:26:32,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:26:32,493.493 INFO    ] Initializing speech engine...
[2026-10-28 23:26:32,511.511 INFO    ] 2026-10-28 23:26:32
[2026-10-28 23:26:32,797.797 INFO    ] 2026-10-28 23:26:32
[2026-10-28 23:26:32,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:26:33,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:26:33,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:26:33,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:26:33,284.284 INFO    ] time= 28/10/2026 23:26:33
[2026-10-28 23:26:33,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:26:33,407.407 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:26:33,557.557 INFO    ] No existing commands found in stream
[2026-10-28 23:26:38,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:26:38,574.574 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-28 23:26:39,136.136 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:26:39,139.139 INFO    ] Checking for system updates...
[2026-10-28 23:26:39,178.178 INFO    ] 200
[2026-10-28 23:26:39,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:26:39,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:26:39,235.235 INFO    ] No update needed
[2026-10-28 23:26:39,238.238 INFO    ] Checking for camera pi updates...
[2026-10-28 23:26:39,271.271 INFO    ] 200
[2026-10-28 23:26:39,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:26:39,341.341 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:26:39,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:26:39,522.522 INFO    ] No camera update needed
[2026-10-28 23:26:39,524.524 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:26:39,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:26:39,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:26:39,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:26:41,575.575 INFO    ] ================================================
[2026-10-28 23:26:41,591.591 INFO    ] Launching Daemon at Wed Oct 28 23:26:41 IST 2026
[2026-10-28 23:26:41,601.601 INFO    ] ================================================
[2026-10-28 23:26:42,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:26:42
[2026-10-28 23:26:42,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:26:43,051.051 INFO    ] Initializing speech engine...
[2026-10-28 23:26:43,062.062 INFO    ] 2026-10-28 23:26:43
[2026-10-28 23:26:43,323.323 INFO    ] 2026-10-28 23:26:43
[2026-10-28 23:26:43,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:26:43,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:26:43,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:26:43,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:26:43,869.869 INFO    ] time= 28/10/2026 23:26:43
[2026-10-28 23:26:43,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:26:43,916.916 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:26:44,033.033 INFO    ] No existing commands found in stream
[2026-10-28 23:26:49,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:26:49,060.060 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-10-28 23:26:51,246.246 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:26:51,249.249 INFO    ] Checking for system updates...
[2026-10-28 23:26:51,285.285 INFO    ] 200
[2026-10-28 23:26:51,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:26:51,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:26:51,342.342 INFO    ] No update needed
[2026-10-28 23:26:51,344.344 INFO    ] Checking for camera pi updates...
[2026-10-28 23:26:51,381.381 INFO    ] 200
[2026-10-28 23:26:51,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:26:51,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:26:51,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:26:51,532.532 INFO    ] No camera update needed
[2026-10-28 23:26:51,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:26:51,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:26:51,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:26:51,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:26:53,588.588 INFO    ] ================================================
[2026-10-28 23:26:53,603.603 INFO    ] Launching Daemon at Wed Oct 28 23:26:53 IST 2026
[2026-10-28 23:26:53,614.614 INFO    ] ================================================
[2026-10-28 23:26:54,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:26:54
[2026-10-28 23:26:54,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:26:55,018.018 INFO    ] Initializing speech engine...
[2026-10-28 23:26:55,033.033 INFO    ] 2026-10-28 23:26:55
[2026-10-28 23:26:55,297.297 INFO    ] 2026-10-28 23:26:55
[2026-10-28 23:26:55,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:26:55,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:26:55,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:26:55,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:26:55,862.862 INFO    ] time= 28/10/2026 23:26:55
[2026-10-28 23:26:55,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:26:55,887.887 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:26:56,020.020 INFO    ] No existing commands found in stream
[2026-10-28 23:27:01,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:27:01,035.035 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-10-28 23:27:01,969.969 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:27:01,976.976 INFO    ] Checking for system updates...
[2026-10-28 23:27:02,037.037 INFO    ] 200
[2026-10-28 23:27:02,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:27:02,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:27:02,156.156 INFO    ] No update needed
[2026-10-28 23:27:02,160.160 INFO    ] Checking for camera pi updates...
[2026-10-28 23:27:02,222.222 INFO    ] 200
[2026-10-28 23:27:02,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:27:02,285.285 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:27:02,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:27:02,387.387 INFO    ] No camera update needed
[2026-10-28 23:27:02,389.389 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:27:02,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:27:02,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:27:02,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:27:04,444.444 INFO    ] ================================================
[2026-10-28 23:27:04,466.466 INFO    ] Launching Daemon at Wed Oct 28 23:27:04 IST 2026
[2026-10-28 23:27:04,477.477 INFO    ] ================================================
[2026-10-28 23:27:05,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:27:05
[2026-10-28 23:27:05,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:27:05,931.931 INFO    ] Initializing speech engine...
[2026-10-28 23:27:05,937.937 INFO    ] 2026-10-28 23:27:05
[2026-10-28 23:27:06,185.185 INFO    ] 2026-10-28 23:27:06
[2026-10-28 23:27:06,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:27:06,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:27:06,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:27:06,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:27:06,758.758 INFO    ] time= 28/10/2026 23:27:06
[2026-10-28 23:27:06,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:27:06,794.794 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:27:06,934.934 INFO    ] No existing commands found in stream
[2026-10-28 23:27:11,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:27:11,972.972 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-10-28 23:27:12,833.833 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:27:12,836.836 INFO    ] Checking for system updates...
[2026-10-28 23:27:12,872.872 INFO    ] 200
[2026-10-28 23:27:12,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:27:12,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:27:12,940.940 INFO    ] No update needed
[2026-10-28 23:27:12,942.942 INFO    ] Checking for camera pi updates...
[2026-10-28 23:27:12,975.975 INFO    ] 200
[2026-10-28 23:27:12,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:27:13,031.031 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:27:13,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:27:13,113.113 INFO    ] No camera update needed
[2026-10-28 23:27:13,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:27:13,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:27:13,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:27:13,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:27:15,170.170 INFO    ] ================================================
[2026-10-28 23:27:15,185.185 INFO    ] Launching Daemon at Wed Oct 28 23:27:15 IST 2026
[2026-10-28 23:27:15,196.196 INFO    ] ================================================
[2026-10-28 23:27:15,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:27:15
[2026-10-28 23:27:16,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:27:16,667.667 INFO    ] Initializing speech engine...
[2026-10-28 23:27:16,679.679 INFO    ] 2026-10-28 23:27:16
[2026-10-28 23:27:16,929.929 INFO    ] 2026-10-28 23:27:16
[2026-10-28 23:27:16,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:27:17,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:27:17,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:27:17,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:27:17,483.483 INFO    ] time= 28/10/2026 23:27:17
[2026-10-28 23:27:17,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:27:17,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:27:17,638.638 INFO    ] No existing commands found in stream
[2026-10-28 23:27:22,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:27:22,668.668 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-10-28 23:27:24,966.966 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:27:24,969.969 INFO    ] Checking for system updates...
[2026-10-28 23:27:25,004.004 INFO    ] 200
[2026-10-28 23:27:25,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:27:25,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:27:25,077.077 INFO    ] No update needed
[2026-10-28 23:27:25,080.080 INFO    ] Checking for camera pi updates...
[2026-10-28 23:27:25,113.113 INFO    ] 200
[2026-10-28 23:27:25,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:27:25,155.155 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:27:25,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:27:25,260.260 INFO    ] No camera update needed
[2026-10-28 23:27:25,262.262 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:27:25,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:27:25,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:27:25,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:27:27,314.314 INFO    ] ================================================
[2026-10-28 23:27:27,329.329 INFO    ] Launching Daemon at Wed Oct 28 23:27:27 IST 2026
[2026-10-28 23:27:27,339.339 INFO    ] ================================================
[2026-10-28 23:27:27,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:27:27
[2026-10-28 23:27:28,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:27:28,757.757 INFO    ] Initializing speech engine...
[2026-10-28 23:27:28,767.767 INFO    ] 2026-10-28 23:27:28
[2026-10-28 23:27:29,020.020 INFO    ] 2026-10-28 23:27:29
[2026-10-28 23:27:29,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:27:29,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:27:29,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:27:29,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:27:29,569.569 INFO    ] time= 28/10/2026 23:27:29
[2026-10-28 23:27:29,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:27:29,605.605 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:27:29,723.723 INFO    ] No existing commands found in stream
[2026-10-28 23:27:34,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:27:34,754.754 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-10-28 23:27:37,485.485 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:27:37,487.487 INFO    ] Checking for system updates...
[2026-10-28 23:27:37,522.522 INFO    ] 200
[2026-10-28 23:27:37,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:27:37,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:27:37,579.579 INFO    ] No update needed
[2026-10-28 23:27:37,582.582 INFO    ] Checking for camera pi updates...
[2026-10-28 23:27:37,616.616 INFO    ] 200
[2026-10-28 23:27:37,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:27:37,663.663 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:27:37,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:27:37,746.746 INFO    ] No camera update needed
[2026-10-28 23:27:37,748.748 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:27:37,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:27:37,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:27:37,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:27:39,801.801 INFO    ] ================================================
[2026-10-28 23:27:39,817.817 INFO    ] Launching Daemon at Wed Oct 28 23:27:39 IST 2026
[2026-10-28 23:27:39,828.828 INFO    ] ================================================
[2026-10-28 23:27:40,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:27:40
[2026-10-28 23:27:40,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:27:41,249.249 INFO    ] Initializing speech engine...
[2026-10-28 23:27:41,254.254 INFO    ] 2026-10-28 23:27:41
[2026-10-28 23:27:41,512.512 INFO    ] 2026-10-28 23:27:41
[2026-10-28 23:27:41,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:27:41,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:27:41,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:27:42,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:27:42,054.054 INFO    ] time= 28/10/2026 23:27:42
[2026-10-28 23:27:42,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:27:42,100.100 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:27:42,206.206 INFO    ] No existing commands found in stream
[2026-10-28 23:27:47,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:27:47,228.228 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-10-28 23:27:50,756.756 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:27:50,759.759 INFO    ] Checking for system updates...
[2026-10-28 23:27:50,798.798 INFO    ] 200
[2026-10-28 23:27:50,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:27:50,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:27:50,855.855 INFO    ] No update needed
[2026-10-28 23:27:50,857.857 INFO    ] Checking for camera pi updates...
[2026-10-28 23:27:50,895.895 INFO    ] 200
[2026-10-28 23:27:50,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:27:50,937.937 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:27:51,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:27:51,021.021 INFO    ] No camera update needed
[2026-10-28 23:27:51,024.024 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:27:51,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:27:51,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:27:51,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:27:53,079.079 INFO    ] ================================================
[2026-10-28 23:27:53,095.095 INFO    ] Launching Daemon at Wed Oct 28 23:27:53 IST 2026
[2026-10-28 23:27:53,106.106 INFO    ] ================================================
[2026-10-28 23:27:53,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:27:53
[2026-10-28 23:27:54,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:27:54,508.508 INFO    ] Initializing speech engine...
[2026-10-28 23:27:54,514.514 INFO    ] 2026-10-28 23:27:54
[2026-10-28 23:27:54,790.790 INFO    ] 2026-10-28 23:27:54
[2026-10-28 23:27:54,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:27:55,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:27:55,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:27:55,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:27:55,347.347 INFO    ] time= 28/10/2026 23:27:55
[2026-10-28 23:27:55,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:27:55,381.381 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:27:55,513.513 INFO    ] No existing commands found in stream
[2026-10-28 23:28:00,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:28:00,534.534 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-28 23:28:02,516.516 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:28:02,519.519 INFO    ] Checking for system updates...
[2026-10-28 23:28:02,557.557 INFO    ] 200
[2026-10-28 23:28:02,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:28:02,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:28:02,631.631 INFO    ] No update needed
[2026-10-28 23:28:02,634.634 INFO    ] Checking for camera pi updates...
[2026-10-28 23:28:02,676.676 INFO    ] 200
[2026-10-28 23:28:02,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:28:02,755.755 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:28:02,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:28:02,871.871 INFO    ] No camera update needed
[2026-10-28 23:28:02,874.874 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:28:02,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:28:02,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:28:02,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:28:04,930.930 INFO    ] ================================================
[2026-10-28 23:28:04,946.946 INFO    ] Launching Daemon at Wed Oct 28 23:28:04 IST 2026
[2026-10-28 23:28:04,956.956 INFO    ] ================================================
[2026-10-28 23:28:05,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:28:05
[2026-10-28 23:28:06,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:28:06,435.435 INFO    ] Initializing speech engine...
[2026-10-28 23:28:06,445.445 INFO    ] 2026-10-28 23:28:06
[2026-10-28 23:28:06,699.699 INFO    ] 2026-10-28 23:28:06
[2026-10-28 23:28:06,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:28:07,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:28:07,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:28:07,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:28:07,249.249 INFO    ] time= 28/10/2026 23:28:07
[2026-10-28 23:28:07,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:28:07,295.295 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:28:07,427.427 INFO    ] No existing commands found in stream
[2026-10-28 23:28:12,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:28:12,460.460 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-10-28 23:28:13,077.077 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:28:13,080.080 INFO    ] Checking for system updates...
[2026-10-28 23:28:13,118.118 INFO    ] 200
[2026-10-28 23:28:13,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:28:13,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:28:13,178.178 INFO    ] No update needed
[2026-10-28 23:28:13,181.181 INFO    ] Checking for camera pi updates...
[2026-10-28 23:28:13,218.218 INFO    ] 200
[2026-10-28 23:28:13,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:28:13,262.262 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:28:13,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:28:13,368.368 INFO    ] No camera update needed
[2026-10-28 23:28:13,370.370 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:28:13,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:28:13,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:28:13,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:28:15,424.424 INFO    ] ================================================
[2026-10-28 23:28:15,439.439 INFO    ] Launching Daemon at Wed Oct 28 23:28:15 IST 2026
[2026-10-28 23:28:15,450.450 INFO    ] ================================================
[2026-10-28 23:28:16,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:28:16
[2026-10-28 23:28:16,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:28:17,088.088 INFO    ] Initializing speech engine...
[2026-10-28 23:28:17,099.099 INFO    ] 2026-10-28 23:28:17
[2026-10-28 23:28:17,387.387 INFO    ] 2026-10-28 23:28:17
[2026-10-28 23:28:17,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:28:17,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:28:17,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:28:17,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:28:17,928.928 INFO    ] time= 28/10/2026 23:28:17
[2026-10-28 23:28:17,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:28:17,968.968 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:28:18,087.087 INFO    ] No existing commands found in stream
[2026-10-28 23:28:23,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:28:23,116.116 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 23:28:25,119.119 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:28:25,122.122 INFO    ] Checking for system updates...
[2026-10-28 23:28:25,162.162 INFO    ] 200
[2026-10-28 23:28:25,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:28:25,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:28:25,220.220 INFO    ] No update needed
[2026-10-28 23:28:25,222.222 INFO    ] Checking for camera pi updates...
[2026-10-28 23:28:25,257.257 INFO    ] 200
[2026-10-28 23:28:25,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:28:25,301.301 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:28:25,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:28:25,373.373 INFO    ] No camera update needed
[2026-10-28 23:28:25,376.376 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:28:25,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:28:25,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:28:25,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:28:27,432.432 INFO    ] ================================================
[2026-10-28 23:28:27,447.447 INFO    ] Launching Daemon at Wed Oct 28 23:28:27 IST 2026
[2026-10-28 23:28:27,459.459 INFO    ] ================================================
[2026-10-28 23:28:28,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:28:28
[2026-10-28 23:28:28,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:28:28,911.911 INFO    ] Initializing speech engine...
[2026-10-28 23:28:28,920.920 INFO    ] 2026-10-28 23:28:28
[2026-10-28 23:28:29,175.175 INFO    ] 2026-10-28 23:28:29
[2026-10-28 23:28:29,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:28:29,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:28:29,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:28:29,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:28:29,765.765 INFO    ] time= 28/10/2026 23:28:29
[2026-10-28 23:28:29,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:28:29,781.781 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:28:29,900.900 INFO    ] No existing commands found in stream
[2026-10-28 23:28:34,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:28:34,918.918 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-10-28 23:28:36,814.814 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:28:36,817.817 INFO    ] Checking for system updates...
[2026-10-28 23:28:36,852.852 INFO    ] 200
[2026-10-28 23:28:36,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:28:36,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:28:36,909.909 INFO    ] No update needed
[2026-10-28 23:28:36,912.912 INFO    ] Checking for camera pi updates...
[2026-10-28 23:28:36,949.949 INFO    ] 200
[2026-10-28 23:28:36,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:28:36,992.992 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:28:37,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:28:37,080.080 INFO    ] No camera update needed
[2026-10-28 23:28:37,082.082 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:28:37,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:28:37,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:28:37,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:28:39,135.135 INFO    ] ================================================
[2026-10-28 23:28:39,151.151 INFO    ] Launching Daemon at Wed Oct 28 23:28:39 IST 2026
[2026-10-28 23:28:39,162.162 INFO    ] ================================================
[2026-10-28 23:28:39,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:28:39
[2026-10-28 23:28:40,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:28:40,588.588 INFO    ] Initializing speech engine...
[2026-10-28 23:28:40,598.598 INFO    ] 2026-10-28 23:28:40
[2026-10-28 23:28:40,855.855 INFO    ] 2026-10-28 23:28:40
[2026-10-28 23:28:40,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:28:41,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:28:41,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:28:41,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:28:41,411.411 INFO    ] time= 28/10/2026 23:28:41
[2026-10-28 23:28:41,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:28:41,446.446 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:28:41,555.555 INFO    ] No existing commands found in stream
[2026-10-28 23:28:46,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:28:46,587.587 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-28 23:28:50,170.170 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:28:50,172.172 INFO    ] Checking for system updates...
[2026-10-28 23:28:50,207.207 INFO    ] 200
[2026-10-28 23:28:50,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:28:50,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:28:50,264.264 INFO    ] No update needed
[2026-10-28 23:28:50,267.267 INFO    ] Checking for camera pi updates...
[2026-10-28 23:28:50,304.304 INFO    ] 200
[2026-10-28 23:28:50,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:28:50,350.350 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:28:50,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:28:50,532.532 INFO    ] No camera update needed
[2026-10-28 23:28:50,535.535 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:28:50,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:28:50,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:28:50,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:28:52,590.590 INFO    ] ================================================
[2026-10-28 23:28:52,606.606 INFO    ] Launching Daemon at Wed Oct 28 23:28:52 IST 2026
[2026-10-28 23:28:52,617.617 INFO    ] ================================================
[2026-10-28 23:28:53,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:28:53
[2026-10-28 23:28:53,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:28:54,099.099 INFO    ] Initializing speech engine...
[2026-10-28 23:28:54,107.107 INFO    ] 2026-10-28 23:28:54
[2026-10-28 23:28:54,380.380 INFO    ] 2026-10-28 23:28:54
[2026-10-28 23:28:54,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:28:54,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:28:54,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:28:54,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:28:54,951.951 INFO    ] time= 28/10/2026 23:28:54
[2026-10-28 23:28:54,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:28:54,973.973 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:28:55,081.081 INFO    ] No existing commands found in stream
[2026-10-28 23:29:00,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:29:00,113.113 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-10-28 23:29:03,085.085 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:29:03,088.088 INFO    ] Checking for system updates...
[2026-10-28 23:29:03,128.128 INFO    ] 200
[2026-10-28 23:29:03,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:29:03,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:29:03,197.197 INFO    ] No update needed
[2026-10-28 23:29:03,200.200 INFO    ] Checking for camera pi updates...
[2026-10-28 23:29:03,240.240 INFO    ] 200
[2026-10-28 23:29:03,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:29:03,296.296 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:29:03,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:29:03,381.381 INFO    ] No camera update needed
[2026-10-28 23:29:03,384.384 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:29:03,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:29:03,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:29:03,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:29:05,437.437 INFO    ] ================================================
[2026-10-28 23:29:05,453.453 INFO    ] Launching Daemon at Wed Oct 28 23:29:05 IST 2026
[2026-10-28 23:29:05,465.465 INFO    ] ================================================
[2026-10-28 23:29:06,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:29:06
[2026-10-28 23:29:06,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:29:06,983.983 INFO    ] Initializing speech engine...
[2026-10-28 23:29:06,992.992 INFO    ] 2026-10-28 23:29:06
[2026-10-28 23:29:07,250.250 INFO    ] 2026-10-28 23:29:07
[2026-10-28 23:29:07,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:29:07,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:29:07,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:29:07,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:29:07,792.792 INFO    ] time= 28/10/2026 23:29:07
[2026-10-28 23:29:07,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:29:07,816.816 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:29:07,944.944 INFO    ] No existing commands found in stream
[2026-10-28 23:29:12,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:29:12,963.963 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-10-28 23:29:16,781.781 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:29:16,784.784 INFO    ] Checking for system updates...
[2026-10-28 23:29:16,820.820 INFO    ] 200
[2026-10-28 23:29:16,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:29:16,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:29:16,887.887 INFO    ] No update needed
[2026-10-28 23:29:16,890.890 INFO    ] Checking for camera pi updates...
[2026-10-28 23:29:16,925.925 INFO    ] 200
[2026-10-28 23:29:16,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:29:16,975.975 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:29:17,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:29:17,062.062 INFO    ] No camera update needed
[2026-10-28 23:29:17,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:29:17,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:29:17,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:29:17,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:29:19,121.121 INFO    ] ================================================
[2026-10-28 23:29:19,136.136 INFO    ] Launching Daemon at Wed Oct 28 23:29:19 IST 2026
[2026-10-28 23:29:19,147.147 INFO    ] ================================================
[2026-10-28 23:29:19,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:29:19
[2026-10-28 23:29:20,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:29:20,548.548 INFO    ] Initializing speech engine...
[2026-10-28 23:29:20,563.563 INFO    ] 2026-10-28 23:29:20
[2026-10-28 23:29:20,830.830 INFO    ] 2026-10-28 23:29:20
[2026-10-28 23:29:20,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:29:21,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:29:21,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:29:21,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:29:21,396.396 INFO    ] time= 28/10/2026 23:29:21
[2026-10-28 23:29:21,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:29:21,420.420 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:29:21,556.556 INFO    ] No existing commands found in stream
[2026-10-28 23:29:26,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:29:26,581.581 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-10-28 23:29:32,676.676 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:29:32,679.679 INFO    ] Checking for system updates...
[2026-10-28 23:29:32,718.718 INFO    ] 200
[2026-10-28 23:29:32,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:29:32,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:29:32,783.783 INFO    ] No update needed
[2026-10-28 23:29:32,785.785 INFO    ] Checking for camera pi updates...
[2026-10-28 23:29:32,822.822 INFO    ] 200
[2026-10-28 23:29:32,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:29:32,871.871 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:29:32,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:29:32,959.959 INFO    ] No camera update needed
[2026-10-28 23:29:32,961.961 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:29:32,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:29:32,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:29:32,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:29:35,015.015 INFO    ] ================================================
[2026-10-28 23:29:35,030.030 INFO    ] Launching Daemon at Wed Oct 28 23:29:35 IST 2026
[2026-10-28 23:29:35,041.041 INFO    ] ================================================
[2026-10-28 23:29:35,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:29:35
[2026-10-28 23:29:36,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:29:36,500.500 INFO    ] Initializing speech engine...
[2026-10-28 23:29:36,507.507 INFO    ] 2026-10-28 23:29:36
[2026-10-28 23:29:36,771.771 INFO    ] 2026-10-28 23:29:36
[2026-10-28 23:29:36,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:29:37,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:29:37,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:29:37,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:29:37,323.323 INFO    ] time= 28/10/2026 23:29:37
[2026-10-28 23:29:37,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:29:37,358.358 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:29:37,494.494 INFO    ] No existing commands found in stream
[2026-10-28 23:29:42,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:29:42,522.522 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-28 23:29:44,759.759 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:29:44,762.762 INFO    ] Checking for system updates...
[2026-10-28 23:29:44,800.800 INFO    ] 200
[2026-10-28 23:29:44,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:29:44,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:29:44,867.867 INFO    ] No update needed
[2026-10-28 23:29:44,870.870 INFO    ] Checking for camera pi updates...
[2026-10-28 23:29:44,906.906 INFO    ] 200
[2026-10-28 23:29:44,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:29:44,957.957 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:29:45,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:29:45,062.062 INFO    ] No camera update needed
[2026-10-28 23:29:45,065.065 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:29:45,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:29:45,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:29:45,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:29:47,120.120 INFO    ] ================================================
[2026-10-28 23:29:47,135.135 INFO    ] Launching Daemon at Wed Oct 28 23:29:47 IST 2026
[2026-10-28 23:29:47,146.146 INFO    ] ================================================
[2026-10-28 23:29:47,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:29:47
[2026-10-28 23:29:48,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:29:48,547.547 INFO    ] Initializing speech engine...
[2026-10-28 23:29:48,570.570 INFO    ] 2026-10-28 23:29:48
[2026-10-28 23:29:48,828.828 INFO    ] 2026-10-28 23:29:48
[2026-10-28 23:29:48,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:29:49,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:29:49,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:29:49,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:29:49,397.397 INFO    ] time= 28/10/2026 23:29:49
[2026-10-28 23:29:49,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:29:49,422.422 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:29:49,572.572 INFO    ] No existing commands found in stream
[2026-10-28 23:29:54,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:29:54,600.600 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-10-28 23:29:57,799.799 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:29:57,802.802 INFO    ] Checking for system updates...
[2026-10-28 23:29:57,837.837 INFO    ] 200
[2026-10-28 23:29:57,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:29:57,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:29:57,901.901 INFO    ] No update needed
[2026-10-28 23:29:57,904.904 INFO    ] Checking for camera pi updates...
[2026-10-28 23:29:57,941.941 INFO    ] 200
[2026-10-28 23:29:57,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:29:57,989.989 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:29:58,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:29:58,070.070 INFO    ] No camera update needed
[2026-10-28 23:29:58,073.073 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:29:58,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:29:58,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:29:58,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:30:00,127.127 INFO    ] ================================================
[2026-10-28 23:30:00,142.142 INFO    ] Launching Daemon at Wed Oct 28 23:30:00 IST 2026
[2026-10-28 23:30:00,153.153 INFO    ] ================================================
[2026-10-28 23:30:00,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:30:00
[2026-10-28 23:30:01,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:30:02,289.289 INFO    ] Initializing speech engine...
[2026-10-28 23:30:02,292.292 INFO    ] 2026-10-28 23:30:02
[2026-10-28 23:30:02,728.728 INFO    ] 2026-10-28 23:30:02
[2026-10-28 23:30:02,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:30:03,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:30:03,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:30:03,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:30:03,162.162 INFO    ] time= 28/10/2026 23:30:03
[2026-10-28 23:30:03,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:30:03,168.168 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:30:03,250.250 INFO    ] No existing commands found in stream
[2026-10-28 23:30:08,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:30:08,262.262 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-10-28 23:30:12,396.396 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:30:12,399.399 INFO    ] Checking for system updates...
[2026-10-28 23:30:12,435.435 INFO    ] 200
[2026-10-28 23:30:12,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:30:12,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:30:12,491.491 INFO    ] No update needed
[2026-10-28 23:30:12,494.494 INFO    ] Checking for camera pi updates...
[2026-10-28 23:30:12,528.528 INFO    ] 200
[2026-10-28 23:30:12,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:30:12,572.572 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:30:12,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:30:12,655.655 INFO    ] No camera update needed
[2026-10-28 23:30:12,657.657 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:30:12,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:30:12,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:30:12,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:30:14,708.708 INFO    ] ================================================
[2026-10-28 23:30:14,725.725 INFO    ] Launching Daemon at Wed Oct 28 23:30:14 IST 2026
[2026-10-28 23:30:14,735.735 INFO    ] ================================================
[2026-10-28 23:30:15,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:30:15
[2026-10-28 23:30:16,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:30:16,318.318 INFO    ] Initializing speech engine...
[2026-10-28 23:30:16,326.326 INFO    ] 2026-10-28 23:30:16
[2026-10-28 23:30:16,583.583 INFO    ] 2026-10-28 23:30:16
[2026-10-28 23:30:16,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:30:16,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:30:17,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:30:17,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:30:17,294.294 INFO    ] time= 28/10/2026 23:30:17
[2026-10-28 23:30:17,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:30:17,374.374 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:30:17,526.526 INFO    ] No existing commands found in stream
[2026-10-28 23:30:22,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:30:22,555.555 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 23:30:26,281.281 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:30:26,283.283 INFO    ] Checking for system updates...
[2026-10-28 23:30:26,319.319 INFO    ] 200
[2026-10-28 23:30:26,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:30:26,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:30:26,376.376 INFO    ] No update needed
[2026-10-28 23:30:26,379.379 INFO    ] Checking for camera pi updates...
[2026-10-28 23:30:26,412.412 INFO    ] 200
[2026-10-28 23:30:26,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:30:26,459.459 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:30:26,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:30:26,545.545 INFO    ] No camera update needed
[2026-10-28 23:30:26,547.547 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:30:26,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:30:26,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:30:26,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:30:28,600.600 INFO    ] ================================================
[2026-10-28 23:30:28,615.615 INFO    ] Launching Daemon at Wed Oct 28 23:30:28 IST 2026
[2026-10-28 23:30:28,626.626 INFO    ] ================================================
[2026-10-28 23:30:29,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:30:29
[2026-10-28 23:30:29,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:30:30,073.073 INFO    ] Initializing speech engine...
[2026-10-28 23:30:30,081.081 INFO    ] 2026-10-28 23:30:30
[2026-10-28 23:30:30,344.344 INFO    ] 2026-10-28 23:30:30
[2026-10-28 23:30:30,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:30:30,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:30:30,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:30:30,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:30:30,908.908 INFO    ] time= 28/10/2026 23:30:30
[2026-10-28 23:30:30,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:30:30,956.956 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:30:31,090.090 INFO    ] No existing commands found in stream
[2026-10-28 23:30:36,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:30:36,119.119 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-10-28 23:30:39,402.402 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:30:39,405.405 INFO    ] Checking for system updates...
[2026-10-28 23:30:39,446.446 INFO    ] 200
[2026-10-28 23:30:39,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:30:39,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:30:39,508.508 INFO    ] No update needed
[2026-10-28 23:30:39,511.511 INFO    ] Checking for camera pi updates...
[2026-10-28 23:30:39,547.547 INFO    ] 200
[2026-10-28 23:30:39,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:30:39,594.594 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:30:39,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:30:39,692.692 INFO    ] No camera update needed
[2026-10-28 23:30:39,695.695 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:30:39,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:30:39,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:30:39,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:30:41,749.749 INFO    ] ================================================
[2026-10-28 23:30:41,766.766 INFO    ] Launching Daemon at Wed Oct 28 23:30:41 IST 2026
[2026-10-28 23:30:41,778.778 INFO    ] ================================================
[2026-10-28 23:30:42,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:30:42
[2026-10-28 23:30:42,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:30:43,177.177 INFO    ] Initializing speech engine...
[2026-10-28 23:30:43,191.191 INFO    ] 2026-10-28 23:30:43
[2026-10-28 23:30:43,458.458 INFO    ] 2026-10-28 23:30:43
[2026-10-28 23:30:43,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:30:43,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:30:43,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:30:44,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:30:44,068.068 INFO    ] time= 28/10/2026 23:30:44
[2026-10-28 23:30:44,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:30:44,083.083 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:30:44,207.207 INFO    ] No existing commands found in stream
[2026-10-28 23:30:49,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:30:49,235.235 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-10-28 23:30:52,704.704 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:30:52,707.707 INFO    ] Checking for system updates...
[2026-10-28 23:30:52,742.742 INFO    ] 200
[2026-10-28 23:30:52,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:30:52,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:30:52,804.804 INFO    ] No update needed
[2026-10-28 23:30:52,806.806 INFO    ] Checking for camera pi updates...
[2026-10-28 23:30:52,843.843 INFO    ] 200
[2026-10-28 23:30:52,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:30:52,887.887 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:30:53,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:30:53,077.077 INFO    ] No camera update needed
[2026-10-28 23:30:53,079.079 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:30:53,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:30:53,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:30:53,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:30:55,134.134 INFO    ] ================================================
[2026-10-28 23:30:55,153.153 INFO    ] Launching Daemon at Wed Oct 28 23:30:55 IST 2026
[2026-10-28 23:30:55,166.166 INFO    ] ================================================
[2026-10-28 23:30:55,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:30:55
[2026-10-28 23:30:56,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:30:56,629.629 INFO    ] Initializing speech engine...
[2026-10-28 23:30:56,643.643 INFO    ] 2026-10-28 23:30:56
[2026-10-28 23:30:56,911.911 INFO    ] 2026-10-28 23:30:56
[2026-10-28 23:30:56,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:30:57,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:30:57,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:30:57,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:30:57,482.482 INFO    ] time= 28/10/2026 23:30:57
[2026-10-28 23:30:57,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:30:57,507.507 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:30:57,659.659 INFO    ] No existing commands found in stream
[2026-10-28 23:31:02,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:31:02,689.689 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-10-28 23:31:04,486.486 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:31:04,488.488 INFO    ] Checking for system updates...
[2026-10-28 23:31:04,526.526 INFO    ] 200
[2026-10-28 23:31:04,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:31:04,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:31:04,583.583 INFO    ] No update needed
[2026-10-28 23:31:04,585.585 INFO    ] Checking for camera pi updates...
[2026-10-28 23:31:04,622.622 INFO    ] 200
[2026-10-28 23:31:04,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:31:04,668.668 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:31:04,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:31:04,738.738 INFO    ] No camera update needed
[2026-10-28 23:31:04,740.740 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:31:04,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:31:04,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:31:04,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:31:06,792.792 INFO    ] ================================================
[2026-10-28 23:31:06,808.808 INFO    ] Launching Daemon at Wed Oct 28 23:31:06 IST 2026
[2026-10-28 23:31:06,819.819 INFO    ] ================================================
[2026-10-28 23:31:07,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:31:07
[2026-10-28 23:31:07,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:31:08,244.244 INFO    ] Initializing speech engine...
[2026-10-28 23:31:08,252.252 INFO    ] 2026-10-28 23:31:08
[2026-10-28 23:31:08,503.503 INFO    ] 2026-10-28 23:31:08
[2026-10-28 23:31:08,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:31:08,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:31:08,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:31:09,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:31:09,283.283 INFO    ] time= 28/10/2026 23:31:09
[2026-10-28 23:31:09,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:31:09,371.371 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:31:09,519.519 INFO    ] No existing commands found in stream
[2026-10-28 23:31:14,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:31:14,539.539 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-10-28 23:31:19,000.000 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:31:19,002.002 INFO    ] Checking for system updates...
[2026-10-28 23:31:19,040.040 INFO    ] 200
[2026-10-28 23:31:19,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:31:19,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:31:19,098.098 INFO    ] No update needed
[2026-10-28 23:31:19,100.100 INFO    ] Checking for camera pi updates...
[2026-10-28 23:31:19,136.136 INFO    ] 200
[2026-10-28 23:31:19,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:31:19,179.179 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:31:19,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:31:19,282.282 INFO    ] No camera update needed
[2026-10-28 23:31:19,284.284 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:31:19,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:31:19,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:31:19,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:31:21,337.337 INFO    ] ================================================
[2026-10-28 23:31:21,352.352 INFO    ] Launching Daemon at Wed Oct 28 23:31:21 IST 2026
[2026-10-28 23:31:21,364.364 INFO    ] ================================================
[2026-10-28 23:31:21,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:31:21
[2026-10-28 23:31:22,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:31:22,781.781 INFO    ] Initializing speech engine...
[2026-10-28 23:31:22,790.790 INFO    ] 2026-10-28 23:31:22
[2026-10-28 23:31:23,034.034 INFO    ] 2026-10-28 23:31:23
[2026-10-28 23:31:23,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:31:23,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:31:23,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:31:23,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:31:23,591.591 INFO    ] time= 28/10/2026 23:31:23
[2026-10-28 23:31:23,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:31:23,636.636 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:31:23,804.804 INFO    ] No existing commands found in stream
[2026-10-28 23:31:28,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:31:28,838.838 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-10-28 23:31:32,985.985 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:31:32,987.987 INFO    ] Checking for system updates...
[2026-10-28 23:31:33,024.024 INFO    ] 200
[2026-10-28 23:31:33,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:31:33,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:31:33,081.081 INFO    ] No update needed
[2026-10-28 23:31:33,084.084 INFO    ] Checking for camera pi updates...
[2026-10-28 23:31:33,117.117 INFO    ] 200
[2026-10-28 23:31:33,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:31:33,163.163 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:31:33,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:31:33,256.256 INFO    ] No camera update needed
[2026-10-28 23:31:33,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:31:33,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:31:33,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:31:33,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:31:35,309.309 INFO    ] ================================================
[2026-10-28 23:31:35,325.325 INFO    ] Launching Daemon at Wed Oct 28 23:31:35 IST 2026
[2026-10-28 23:31:35,336.336 INFO    ] ================================================
[2026-10-28 23:31:35,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:31:35
[2026-10-28 23:31:36,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:31:36,790.790 INFO    ] Initializing speech engine...
[2026-10-28 23:31:36,797.797 INFO    ] 2026-10-28 23:31:36
[2026-10-28 23:31:37,071.071 INFO    ] 2026-10-28 23:31:37
[2026-10-28 23:31:37,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:31:37,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:31:37,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:31:37,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:31:37,713.713 INFO    ] time= 28/10/2026 23:31:37
[2026-10-28 23:31:37,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:31:37,816.816 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:31:37,965.965 INFO    ] No existing commands found in stream
[2026-10-28 23:31:42,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:31:42,998.998 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 23:31:46,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:31:46,761.761 INFO    ] Checking for system updates...
[2026-10-28 23:31:46,800.800 INFO    ] 200
[2026-10-28 23:31:46,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:31:46,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:31:46,862.862 INFO    ] No update needed
[2026-10-28 23:31:46,865.865 INFO    ] Checking for camera pi updates...
[2026-10-28 23:31:46,898.898 INFO    ] 200
[2026-10-28 23:31:46,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:31:46,945.945 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:31:47,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:31:47,029.029 INFO    ] No camera update needed
[2026-10-28 23:31:47,032.032 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:31:47,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:31:47,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:31:47,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:31:49,085.085 INFO    ] ================================================
[2026-10-28 23:31:49,099.099 INFO    ] Launching Daemon at Wed Oct 28 23:31:49 IST 2026
[2026-10-28 23:31:49,110.110 INFO    ] ================================================
[2026-10-28 23:31:49,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:31:49
[2026-10-28 23:31:50,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:31:50,533.533 INFO    ] Initializing speech engine...
[2026-10-28 23:31:50,542.542 INFO    ] 2026-10-28 23:31:50
[2026-10-28 23:31:50,799.799 INFO    ] 2026-10-28 23:31:50
[2026-10-28 23:31:50,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:31:51,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:31:51,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:31:51,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:31:51,360.360 INFO    ] time= 28/10/2026 23:31:51
[2026-10-28 23:31:51,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:31:51,394.394 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:31:51,527.527 INFO    ] No existing commands found in stream
[2026-10-28 23:31:56,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:31:56,538.538 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 23:31:58,984.984 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:31:58,987.987 INFO    ] Checking for system updates...
[2026-10-28 23:31:59,022.022 INFO    ] 200
[2026-10-28 23:31:59,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:31:59,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:31:59,086.086 INFO    ] No update needed
[2026-10-28 23:31:59,088.088 INFO    ] Checking for camera pi updates...
[2026-10-28 23:31:59,122.122 INFO    ] 200
[2026-10-28 23:31:59,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:31:59,170.170 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:31:59,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:31:59,258.258 INFO    ] No camera update needed
[2026-10-28 23:31:59,261.261 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:31:59,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:31:59,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:31:59,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:32:01,317.317 INFO    ] ================================================
[2026-10-28 23:32:01,332.332 INFO    ] Launching Daemon at Wed Oct 28 23:32:01 IST 2026
[2026-10-28 23:32:01,343.343 INFO    ] ================================================
[2026-10-28 23:32:02,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:32:02
[2026-10-28 23:32:02,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:32:03,085.085 INFO    ] Initializing speech engine...
[2026-10-28 23:32:03,096.096 INFO    ] 2026-10-28 23:32:03
[2026-10-28 23:32:03,385.385 INFO    ] 2026-10-28 23:32:03
[2026-10-28 23:32:03,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:32:03,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:32:03,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:32:03,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:32:04,017.017 INFO    ] time= 28/10/2026 23:32:03
[2026-10-28 23:32:04,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:32:04,040.040 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:32:04,179.179 INFO    ] No existing commands found in stream
[2026-10-28 23:32:09,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:32:09,196.196 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-10-28 23:32:12,522.522 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:32:12,525.525 INFO    ] Checking for system updates...
[2026-10-28 23:32:12,569.569 INFO    ] 200
[2026-10-28 23:32:12,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:32:12,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:32:12,631.631 INFO    ] No update needed
[2026-10-28 23:32:12,633.633 INFO    ] Checking for camera pi updates...
[2026-10-28 23:32:12,669.669 INFO    ] 200
[2026-10-28 23:32:12,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:32:12,715.715 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:32:12,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:32:12,815.815 INFO    ] No camera update needed
[2026-10-28 23:32:12,817.817 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:32:12,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:32:12,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:32:12,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:32:14,871.871 INFO    ] ================================================
[2026-10-28 23:32:14,887.887 INFO    ] Launching Daemon at Wed Oct 28 23:32:14 IST 2026
[2026-10-28 23:32:14,898.898 INFO    ] ================================================
[2026-10-28 23:32:15,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:32:15
[2026-10-28 23:32:16,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:32:16,398.398 INFO    ] Initializing speech engine...
[2026-10-28 23:32:16,412.412 INFO    ] 2026-10-28 23:32:16
[2026-10-28 23:32:16,690.690 INFO    ] 2026-10-28 23:32:16
[2026-10-28 23:32:16,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:32:17,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:32:17,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:32:17,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:32:17,296.296 INFO    ] time= 28/10/2026 23:32:17
[2026-10-28 23:32:17,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:32:17,322.322 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:32:17,464.464 INFO    ] No existing commands found in stream
[2026-10-28 23:32:22,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:32:22,486.486 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-10-28 23:32:27,039.039 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:32:27,041.041 INFO    ] Checking for system updates...
[2026-10-28 23:32:27,079.079 INFO    ] 200
[2026-10-28 23:32:27,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:32:27,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:32:27,136.136 INFO    ] No update needed
[2026-10-28 23:32:27,139.139 INFO    ] Checking for camera pi updates...
[2026-10-28 23:32:27,174.174 INFO    ] 200
[2026-10-28 23:32:27,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:32:27,219.219 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:32:27,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:32:27,317.317 INFO    ] No camera update needed
[2026-10-28 23:32:27,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:32:27,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:32:27,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:32:27,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:32:29,372.372 INFO    ] ================================================
[2026-10-28 23:32:29,391.391 INFO    ] Launching Daemon at Wed Oct 28 23:32:29 IST 2026
[2026-10-28 23:32:29,403.403 INFO    ] ================================================
[2026-10-28 23:32:30,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:32:30
[2026-10-28 23:32:30,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:32:30,989.989 INFO    ] Initializing speech engine...
[2026-10-28 23:32:30,997.997 INFO    ] 2026-10-28 23:32:30
[2026-10-28 23:32:31,267.267 INFO    ] 2026-10-28 23:32:31
[2026-10-28 23:32:31,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:32:31,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:32:31,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:32:31,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:32:31,906.906 INFO    ] time= 28/10/2026 23:32:31
[2026-10-28 23:32:31,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:32:31,922.922 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:32:32,041.041 INFO    ] No existing commands found in stream
[2026-10-28 23:32:37,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:32:37,066.066 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-10-28 23:32:40,440.440 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:32:40,442.442 INFO    ] Checking for system updates...
[2026-10-28 23:32:40,482.482 INFO    ] 200
[2026-10-28 23:32:40,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:32:40,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:32:40,541.541 INFO    ] No update needed
[2026-10-28 23:32:40,548.548 INFO    ] Checking for camera pi updates...
[2026-10-28 23:32:40,582.582 INFO    ] 200
[2026-10-28 23:32:40,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:32:40,628.628 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:32:40,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:32:40,708.708 INFO    ] No camera update needed
[2026-10-28 23:32:40,710.710 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:32:40,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:32:40,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:32:40,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:32:42,762.762 INFO    ] ================================================
[2026-10-28 23:32:42,778.778 INFO    ] Launching Daemon at Wed Oct 28 23:32:42 IST 2026
[2026-10-28 23:32:42,788.788 INFO    ] ================================================
[2026-10-28 23:32:43,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:32:43
[2026-10-28 23:32:43,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:32:44,209.209 INFO    ] Initializing speech engine...
[2026-10-28 23:32:44,216.216 INFO    ] 2026-10-28 23:32:44
[2026-10-28 23:32:44,474.474 INFO    ] 2026-10-28 23:32:44
[2026-10-28 23:32:44,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:32:44,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:32:44,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:32:45,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:32:45,015.015 INFO    ] time= 28/10/2026 23:32:45
[2026-10-28 23:32:45,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:32:45,039.039 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:32:45,163.163 INFO    ] No existing commands found in stream
[2026-10-28 23:32:50,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:32:50,180.180 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 23:32:52,891.891 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:32:52,894.894 INFO    ] Checking for system updates...
[2026-10-28 23:32:52,930.930 INFO    ] 200
[2026-10-28 23:32:52,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:32:52,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:32:52,987.987 INFO    ] No update needed
[2026-10-28 23:32:52,990.990 INFO    ] Checking for camera pi updates...
[2026-10-28 23:32:53,023.023 INFO    ] 200
[2026-10-28 23:32:53,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:32:53,068.068 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:32:53,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:32:53,136.136 INFO    ] No camera update needed
[2026-10-28 23:32:53,138.138 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:32:53,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:32:53,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:32:53,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:32:55,191.191 INFO    ] ================================================
[2026-10-28 23:32:55,206.206 INFO    ] Launching Daemon at Wed Oct 28 23:32:55 IST 2026
[2026-10-28 23:32:55,217.217 INFO    ] ================================================
[2026-10-28 23:32:55,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:32:55
[2026-10-28 23:32:56,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:32:56,682.682 INFO    ] Initializing speech engine...
[2026-10-28 23:32:56,689.689 INFO    ] 2026-10-28 23:32:56
[2026-10-28 23:32:56,942.942 INFO    ] 2026-10-28 23:32:56
[2026-10-28 23:32:57,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:32:57,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:32:57,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:32:57,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:32:57,492.492 INFO    ] time= 28/10/2026 23:32:57
[2026-10-28 23:32:57,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:32:57,539.539 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:32:57,688.688 INFO    ] No existing commands found in stream
[2026-10-28 23:33:02,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:33:02,717.717 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 23:33:06,921.921 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:33:06,924.924 INFO    ] Checking for system updates...
[2026-10-28 23:33:06,963.963 INFO    ] 200
[2026-10-28 23:33:06,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:33:07,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:33:07,025.025 INFO    ] No update needed
[2026-10-28 23:33:07,028.028 INFO    ] Checking for camera pi updates...
[2026-10-28 23:33:07,065.065 INFO    ] 200
[2026-10-28 23:33:07,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:33:07,111.111 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:33:07,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:33:07,199.199 INFO    ] No camera update needed
[2026-10-28 23:33:07,201.201 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:33:07,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:33:07,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:33:07,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:33:09,255.255 INFO    ] ================================================
[2026-10-28 23:33:09,270.270 INFO    ] Launching Daemon at Wed Oct 28 23:33:09 IST 2026
[2026-10-28 23:33:09,282.282 INFO    ] ================================================
[2026-10-28 23:33:09,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:33:09
[2026-10-28 23:33:10,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:33:10,740.740 INFO    ] Initializing speech engine...
[2026-10-28 23:33:10,749.749 INFO    ] 2026-10-28 23:33:10
[2026-10-28 23:33:10,997.997 INFO    ] 2026-10-28 23:33:10
[2026-10-28 23:33:11,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:33:11,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:33:11,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:33:11,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:33:11,556.556 INFO    ] time= 28/10/2026 23:33:11
[2026-10-28 23:33:11,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:33:11,579.579 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:33:11,705.705 INFO    ] No existing commands found in stream
[2026-10-28 23:33:16,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:33:16,725.725 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-10-28 23:33:18,545.545 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:33:18,547.547 INFO    ] Checking for system updates...
[2026-10-28 23:33:18,585.585 INFO    ] 200
[2026-10-28 23:33:18,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:33:18,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:33:18,649.649 INFO    ] No update needed
[2026-10-28 23:33:18,652.652 INFO    ] Checking for camera pi updates...
[2026-10-28 23:33:18,695.695 INFO    ] 200
[2026-10-28 23:33:18,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:33:18,739.739 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:33:18,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:33:18,825.825 INFO    ] No camera update needed
[2026-10-28 23:33:18,828.828 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:33:18,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:33:18,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:33:18,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:33:20,881.881 INFO    ] ================================================
[2026-10-28 23:33:20,897.897 INFO    ] Launching Daemon at Wed Oct 28 23:33:20 IST 2026
[2026-10-28 23:33:20,907.907 INFO    ] ================================================
[2026-10-28 23:33:21,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:33:21
[2026-10-28 23:33:22,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:33:22,376.376 INFO    ] Initializing speech engine...
[2026-10-28 23:33:22,385.385 INFO    ] 2026-10-28 23:33:22
[2026-10-28 23:33:22,646.646 INFO    ] 2026-10-28 23:33:22
[2026-10-28 23:33:22,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:33:22,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:33:22,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:33:23,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:33:23,207.207 INFO    ] time= 28/10/2026 23:33:23
[2026-10-28 23:33:23,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:33:23,239.239 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:33:23,366.366 INFO    ] No existing commands found in stream
[2026-10-28 23:33:28,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:33:28,399.399 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-10-28 23:33:30,026.026 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:33:30,029.029 INFO    ] Checking for system updates...
[2026-10-28 23:33:30,067.067 INFO    ] 200
[2026-10-28 23:33:30,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:33:30,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:33:30,129.129 INFO    ] No update needed
[2026-10-28 23:33:30,131.131 INFO    ] Checking for camera pi updates...
[2026-10-28 23:33:30,171.171 INFO    ] 200
[2026-10-28 23:33:30,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:33:30,222.222 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:33:30,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:33:30,331.331 INFO    ] No camera update needed
[2026-10-28 23:33:30,334.334 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:33:30,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:33:30,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:33:30,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:33:32,390.390 INFO    ] ================================================
[2026-10-28 23:33:32,407.407 INFO    ] Launching Daemon at Wed Oct 28 23:33:32 IST 2026
[2026-10-28 23:33:32,419.419 INFO    ] ================================================
[2026-10-28 23:33:33,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:33:33
[2026-10-28 23:33:33,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:33:34,002.002 INFO    ] Initializing speech engine...
[2026-10-28 23:33:34,007.007 INFO    ] 2026-10-28 23:33:34
[2026-10-28 23:33:34,278.278 INFO    ] 2026-10-28 23:33:34
[2026-10-28 23:33:34,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:33:34,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:33:34,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:33:34,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:33:34,855.855 INFO    ] time= 28/10/2026 23:33:34
[2026-10-28 23:33:34,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:33:34,897.897 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:33:35,017.017 INFO    ] No existing commands found in stream
[2026-10-28 23:33:40,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:33:40,037.037 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-10-28 23:33:44,462.462 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:33:44,465.465 INFO    ] Checking for system updates...
[2026-10-28 23:33:44,502.502 INFO    ] 200
[2026-10-28 23:33:44,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:33:44,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:33:44,564.564 INFO    ] No update needed
[2026-10-28 23:33:44,567.567 INFO    ] Checking for camera pi updates...
[2026-10-28 23:33:44,603.603 INFO    ] 200
[2026-10-28 23:33:44,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:33:44,646.646 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:33:44,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:33:44,732.732 INFO    ] No camera update needed
[2026-10-28 23:33:44,735.735 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:33:44,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:33:44,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:33:44,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:33:46,787.787 INFO    ] ================================================
[2026-10-28 23:33:46,803.803 INFO    ] Launching Daemon at Wed Oct 28 23:33:46 IST 2026
[2026-10-28 23:33:46,815.815 INFO    ] ================================================
[2026-10-28 23:33:47,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:33:47
[2026-10-28 23:33:47,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:33:48,273.273 INFO    ] Initializing speech engine...
[2026-10-28 23:33:48,284.284 INFO    ] 2026-10-28 23:33:48
[2026-10-28 23:33:48,531.531 INFO    ] 2026-10-28 23:33:48
[2026-10-28 23:33:48,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:33:48,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:33:48,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:33:49,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:33:49,097.097 INFO    ] time= 28/10/2026 23:33:49
[2026-10-28 23:33:49,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:33:49,132.132 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:33:49,273.273 INFO    ] No existing commands found in stream
[2026-10-28 23:33:54,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:33:54,306.306 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-10-28 23:33:57,849.849 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:33:57,852.852 INFO    ] Checking for system updates...
[2026-10-28 23:33:57,891.891 INFO    ] 200
[2026-10-28 23:33:57,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:33:57,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:33:57,950.950 INFO    ] No update needed
[2026-10-28 23:33:57,952.952 INFO    ] Checking for camera pi updates...
[2026-10-28 23:33:57,988.988 INFO    ] 200
[2026-10-28 23:33:57,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:33:58,038.038 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:33:58,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:33:58,113.113 INFO    ] No camera update needed
[2026-10-28 23:33:58,116.116 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:33:58,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:33:58,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:33:58,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:34:00,168.168 INFO    ] ================================================
[2026-10-28 23:34:00,184.184 INFO    ] Launching Daemon at Wed Oct 28 23:34:00 IST 2026
[2026-10-28 23:34:00,195.195 INFO    ] ================================================
[2026-10-28 23:34:00,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:34:00
[2026-10-28 23:34:01,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:34:01,735.735 INFO    ] Initializing speech engine...
[2026-10-28 23:34:01,748.748 INFO    ] 2026-10-28 23:34:01
[2026-10-28 23:34:02,199.199 INFO    ] 2026-10-28 23:34:02
[2026-10-28 23:34:02,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:34:02,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:34:02,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:34:02,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:34:02,790.790 INFO    ] time= 28/10/2026 23:34:02
[2026-10-28 23:34:02,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:34:02,836.836 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:34:02,993.993 INFO    ] No existing commands found in stream
[2026-10-28 23:34:08,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:34:08,028.028 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-10-28 23:34:08,734.734 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:34:08,737.737 INFO    ] Checking for system updates...
[2026-10-28 23:34:08,773.773 INFO    ] 200
[2026-10-28 23:34:08,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:34:08,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:34:08,832.832 INFO    ] No update needed
[2026-10-28 23:34:08,835.835 INFO    ] Checking for camera pi updates...
[2026-10-28 23:34:08,872.872 INFO    ] 200
[2026-10-28 23:34:08,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:34:08,918.918 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:34:09,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:34:09,005.005 INFO    ] No camera update needed
[2026-10-28 23:34:09,007.007 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:34:09,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:34:09,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:34:09,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:34:11,060.060 INFO    ] ================================================
[2026-10-28 23:34:11,076.076 INFO    ] Launching Daemon at Wed Oct 28 23:34:11 IST 2026
[2026-10-28 23:34:11,087.087 INFO    ] ================================================
[2026-10-28 23:34:11,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:34:11
[2026-10-28 23:34:12,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:34:12,501.501 INFO    ] Initializing speech engine...
[2026-10-28 23:34:12,526.526 INFO    ] 2026-10-28 23:34:12
[2026-10-28 23:34:12,794.794 INFO    ] 2026-10-28 23:34:12
[2026-10-28 23:34:12,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:34:13,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:34:13,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:34:13,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:34:13,387.387 INFO    ] time= 28/10/2026 23:34:13
[2026-10-28 23:34:13,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:34:13,419.419 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:34:13,577.577 INFO    ] No existing commands found in stream
[2026-10-28 23:34:18,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:34:18,594.594 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-28 23:34:21,431.431 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:34:21,435.435 INFO    ] Checking for system updates...
[2026-10-28 23:34:21,474.474 INFO    ] 200
[2026-10-28 23:34:21,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:34:21,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:34:21,536.536 INFO    ] No update needed
[2026-10-28 23:34:21,539.539 INFO    ] Checking for camera pi updates...
[2026-10-28 23:34:21,572.572 INFO    ] 200
[2026-10-28 23:34:21,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:34:21,618.618 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:34:21,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:34:21,677.677 INFO    ] No camera update needed
[2026-10-28 23:34:21,679.679 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:34:21,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:34:21,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:34:21,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:34:23,731.731 INFO    ] ================================================
[2026-10-28 23:34:23,747.747 INFO    ] Launching Daemon at Wed Oct 28 23:34:23 IST 2026
[2026-10-28 23:34:23,758.758 INFO    ] ================================================
[2026-10-28 23:34:24,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:34:24
[2026-10-28 23:34:25,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:34:25,279.279 INFO    ] Initializing speech engine...
[2026-10-28 23:34:25,288.288 INFO    ] 2026-10-28 23:34:25
[2026-10-28 23:34:25,578.578 INFO    ] 2026-10-28 23:34:25
[2026-10-28 23:34:25,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:34:25,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:34:25,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:34:26,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:34:26,204.204 INFO    ] time= 28/10/2026 23:34:26
[2026-10-28 23:34:26,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:34:26,230.230 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:34:26,388.388 INFO    ] No existing commands found in stream
[2026-10-28 23:34:31,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:34:31,417.417 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-28 23:34:34,905.905 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:34:34,908.908 INFO    ] Checking for system updates...
[2026-10-28 23:34:34,946.946 INFO    ] 200
[2026-10-28 23:34:34,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:34:35,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:34:35,003.003 INFO    ] No update needed
[2026-10-28 23:34:35,006.006 INFO    ] Checking for camera pi updates...
[2026-10-28 23:34:35,040.040 INFO    ] 200
[2026-10-28 23:34:35,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:34:35,087.087 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:34:35,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:34:35,184.184 INFO    ] No camera update needed
[2026-10-28 23:34:35,186.186 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:34:35,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:34:35,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:34:35,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:34:37,237.237 INFO    ] ================================================
[2026-10-28 23:34:37,252.252 INFO    ] Launching Daemon at Wed Oct 28 23:34:37 IST 2026
[2026-10-28 23:34:37,263.263 INFO    ] ================================================
[2026-10-28 23:34:37,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:34:37
[2026-10-28 23:34:38,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:34:38,699.699 INFO    ] Initializing speech engine...
[2026-10-28 23:34:38,709.709 INFO    ] 2026-10-28 23:34:38
[2026-10-28 23:34:38,972.972 INFO    ] 2026-10-28 23:34:38
[2026-10-28 23:34:39,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:34:39,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:34:39,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:34:39,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:34:39,532.532 INFO    ] time= 28/10/2026 23:34:39
[2026-10-28 23:34:39,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:34:39,607.607 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:34:39,769.769 INFO    ] No existing commands found in stream
[2026-10-28 23:34:44,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:34:44,787.787 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-28 23:34:46,545.545 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:34:46,548.548 INFO    ] Checking for system updates...
[2026-10-28 23:34:46,584.584 INFO    ] 200
[2026-10-28 23:34:46,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:34:46,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:34:46,647.647 INFO    ] No update needed
[2026-10-28 23:34:46,649.649 INFO    ] Checking for camera pi updates...
[2026-10-28 23:34:46,686.686 INFO    ] 200
[2026-10-28 23:34:46,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:34:46,729.729 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:34:46,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:34:46,811.811 INFO    ] No camera update needed
[2026-10-28 23:34:46,814.814 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:34:46,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:34:46,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:34:46,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:34:48,866.866 INFO    ] ================================================
[2026-10-28 23:34:48,881.881 INFO    ] Launching Daemon at Wed Oct 28 23:34:48 IST 2026
[2026-10-28 23:34:48,892.892 INFO    ] ================================================
[2026-10-28 23:34:49,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:34:49
[2026-10-28 23:34:50,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:34:50,494.494 INFO    ] Initializing speech engine...
[2026-10-28 23:34:50,502.502 INFO    ] 2026-10-28 23:34:50
[2026-10-28 23:34:50,776.776 INFO    ] 2026-10-28 23:34:50
[2026-10-28 23:34:50,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:34:51,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:34:51,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:34:51,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:34:51,346.346 INFO    ] time= 28/10/2026 23:34:51
[2026-10-28 23:34:51,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:34:51,381.381 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:34:51,513.513 INFO    ] No existing commands found in stream
[2026-10-28 23:34:56,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:34:56,548.548 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-10-28 23:34:58,245.245 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:34:58,248.248 INFO    ] Checking for system updates...
[2026-10-28 23:34:58,287.287 INFO    ] 200
[2026-10-28 23:34:58,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:34:58,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:34:58,344.344 INFO    ] No update needed
[2026-10-28 23:34:58,346.346 INFO    ] Checking for camera pi updates...
[2026-10-28 23:34:58,383.383 INFO    ] 200
[2026-10-28 23:34:58,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:34:58,430.430 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:34:58,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:34:58,508.508 INFO    ] No camera update needed
[2026-10-28 23:34:58,510.510 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:34:58,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:34:58,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:34:58,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:35:00,564.564 INFO    ] ================================================
[2026-10-28 23:35:00,580.580 INFO    ] Launching Daemon at Wed Oct 28 23:35:00 IST 2026
[2026-10-28 23:35:00,591.591 INFO    ] ================================================
[2026-10-28 23:35:01,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:35:01
[2026-10-28 23:35:02,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:35:02,569.569 INFO    ] Initializing speech engine...
[2026-10-28 23:35:02,576.576 INFO    ] 2026-10-28 23:35:02
[2026-10-28 23:35:02,898.898 INFO    ] 2026-10-28 23:35:02
[2026-10-28 23:35:02,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:35:03,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:35:03,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:35:03,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:35:03,518.518 INFO    ] time= 28/10/2026 23:35:03
[2026-10-28 23:35:03,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:35:03,547.547 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:35:03,695.695 INFO    ] No existing commands found in stream
[2026-10-28 23:35:08,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:35:08,722.722 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-28 23:35:12,841.841 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:35:12,844.844 INFO    ] Checking for system updates...
[2026-10-28 23:35:12,880.880 INFO    ] 200
[2026-10-28 23:35:12,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:35:12,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:35:12,940.940 INFO    ] No update needed
[2026-10-28 23:35:12,943.943 INFO    ] Checking for camera pi updates...
[2026-10-28 23:35:12,979.979 INFO    ] 200
[2026-10-28 23:35:12,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:35:13,022.022 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:35:13,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:35:13,192.192 INFO    ] No camera update needed
[2026-10-28 23:35:13,194.194 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:35:13,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:35:13,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:35:13,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:35:15,246.246 INFO    ] ================================================
[2026-10-28 23:35:15,262.262 INFO    ] Launching Daemon at Wed Oct 28 23:35:15 IST 2026
[2026-10-28 23:35:15,274.274 INFO    ] ================================================
[2026-10-28 23:35:15,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:35:15
[2026-10-28 23:35:16,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:35:16,670.670 INFO    ] Initializing speech engine...
[2026-10-28 23:35:16,682.682 INFO    ] 2026-10-28 23:35:16
[2026-10-28 23:35:16,947.947 INFO    ] 2026-10-28 23:35:16
[2026-10-28 23:35:16,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:35:17,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:35:17,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:35:17,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:35:17,513.513 INFO    ] time= 28/10/2026 23:35:17
[2026-10-28 23:35:17,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:35:17,540.540 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:35:17,671.671 INFO    ] No existing commands found in stream
[2026-10-28 23:35:22,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:35:22,689.689 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-10-28 23:35:26,889.889 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:35:26,892.892 INFO    ] Checking for system updates...
[2026-10-28 23:35:26,930.930 INFO    ] 200
[2026-10-28 23:35:26,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:35:26,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:35:26,987.987 INFO    ] No update needed
[2026-10-28 23:35:26,989.989 INFO    ] Checking for camera pi updates...
[2026-10-28 23:35:27,024.024 INFO    ] 200
[2026-10-28 23:35:27,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:35:27,069.069 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:35:27,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:35:27,149.149 INFO    ] No camera update needed
[2026-10-28 23:35:27,151.151 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:35:27,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:35:27,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:35:27,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:35:29,204.204 INFO    ] ================================================
[2026-10-28 23:35:29,220.220 INFO    ] Launching Daemon at Wed Oct 28 23:35:29 IST 2026
[2026-10-28 23:35:29,231.231 INFO    ] ================================================
[2026-10-28 23:35:29,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:35:29
[2026-10-28 23:35:30,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:35:30,789.789 INFO    ] Initializing speech engine...
[2026-10-28 23:35:30,796.796 INFO    ] 2026-10-28 23:35:30
[2026-10-28 23:35:31,077.077 INFO    ] 2026-10-28 23:35:31
[2026-10-28 23:35:31,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:35:31,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:35:31,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:35:31,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:35:31,640.640 INFO    ] time= 28/10/2026 23:35:31
[2026-10-28 23:35:31,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:35:31,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:35:31,830.830 INFO    ] No existing commands found in stream
[2026-10-28 23:35:36,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:35:36,868.868 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-10-28 23:35:38,286.286 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:35:38,289.289 INFO    ] Checking for system updates...
[2026-10-28 23:35:38,325.325 INFO    ] 200
[2026-10-28 23:35:38,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:35:38,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:35:38,387.387 INFO    ] No update needed
[2026-10-28 23:35:38,393.393 INFO    ] Checking for camera pi updates...
[2026-10-28 23:35:38,427.427 INFO    ] 200
[2026-10-28 23:35:38,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:35:38,474.474 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:35:38,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:35:38,561.561 INFO    ] No camera update needed
[2026-10-28 23:35:38,564.564 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:35:38,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:35:38,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:35:38,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:35:40,616.616 INFO    ] ================================================
[2026-10-28 23:35:40,631.631 INFO    ] Launching Daemon at Wed Oct 28 23:35:40 IST 2026
[2026-10-28 23:35:40,645.645 INFO    ] ================================================
[2026-10-28 23:35:41,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:35:41
[2026-10-28 23:35:41,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:35:42,085.085 INFO    ] Initializing speech engine...
[2026-10-28 23:35:42,094.094 INFO    ] 2026-10-28 23:35:42
[2026-10-28 23:35:42,357.357 INFO    ] 2026-10-28 23:35:42
[2026-10-28 23:35:42,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:35:42,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:35:42,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:35:42,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:35:42,972.972 INFO    ] time= 28/10/2026 23:35:42
[2026-10-28 23:35:42,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:35:42,999.999 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:35:43,140.140 INFO    ] No existing commands found in stream
[2026-10-28 23:35:48,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:35:48,158.158 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-10-28 23:35:50,384.384 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:35:50,387.387 INFO    ] Checking for system updates...
[2026-10-28 23:35:50,422.422 INFO    ] 200
[2026-10-28 23:35:50,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:35:50,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:35:50,484.484 INFO    ] No update needed
[2026-10-28 23:35:50,487.487 INFO    ] Checking for camera pi updates...
[2026-10-28 23:35:50,523.523 INFO    ] 200
[2026-10-28 23:35:50,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:35:50,565.565 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:35:50,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:35:50,647.647 INFO    ] No camera update needed
[2026-10-28 23:35:50,650.650 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:35:50,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:35:50,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:35:50,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:35:52,709.709 INFO    ] ================================================
[2026-10-28 23:35:52,725.725 INFO    ] Launching Daemon at Wed Oct 28 23:35:52 IST 2026
[2026-10-28 23:35:52,736.736 INFO    ] ================================================
[2026-10-28 23:35:53,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:35:53
[2026-10-28 23:35:53,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:35:54,162.162 INFO    ] Initializing speech engine...
[2026-10-28 23:35:54,182.182 INFO    ] 2026-10-28 23:35:54
[2026-10-28 23:35:54,448.448 INFO    ] 2026-10-28 23:35:54
[2026-10-28 23:35:54,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:35:54,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:35:54,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:35:55,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:35:55,071.071 INFO    ] time= 28/10/2026 23:35:55
[2026-10-28 23:35:55,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:35:55,101.101 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:35:55,219.219 INFO    ] No existing commands found in stream
[2026-10-28 23:36:00,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:36:00,247.247 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-10-28 23:36:03,656.656 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:36:03,659.659 INFO    ] Checking for system updates...
[2026-10-28 23:36:03,702.702 INFO    ] 200
[2026-10-28 23:36:03,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:36:03,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:36:03,769.769 INFO    ] No update needed
[2026-10-28 23:36:03,771.771 INFO    ] Checking for camera pi updates...
[2026-10-28 23:36:03,805.805 INFO    ] 200
[2026-10-28 23:36:03,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:36:03,847.847 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:36:03,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:36:03,928.928 INFO    ] No camera update needed
[2026-10-28 23:36:03,931.931 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:36:03,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:36:03,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:36:03,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:36:05,984.984 INFO    ] ================================================
[2026-10-28 23:36:06,999.999 INFO    ] Launching Daemon at Wed Oct 28 23:36:05 IST 2026
[2026-10-28 23:36:06,010.010 INFO    ] ================================================
[2026-10-28 23:36:06,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:36:06
[2026-10-28 23:36:07,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:36:07,512.512 INFO    ] Initializing speech engine...
[2026-10-28 23:36:07,521.521 INFO    ] 2026-10-28 23:36:07
[2026-10-28 23:36:07,808.808 INFO    ] 2026-10-28 23:36:07
[2026-10-28 23:36:07,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:36:08,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:36:08,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:36:08,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:36:08,548.548 INFO    ] time= 28/10/2026 23:36:08
[2026-10-28 23:36:08,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:36:08,639.639 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:36:08,774.774 INFO    ] No existing commands found in stream
[2026-10-28 23:36:13,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:36:13,797.797 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-10-28 23:36:18,262.262 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:36:18,265.265 INFO    ] Checking for system updates...
[2026-10-28 23:36:18,305.305 INFO    ] 200
[2026-10-28 23:36:18,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:36:18,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:36:18,369.369 INFO    ] No update needed
[2026-10-28 23:36:18,372.372 INFO    ] Checking for camera pi updates...
[2026-10-28 23:36:18,409.409 INFO    ] 200
[2026-10-28 23:36:18,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:36:18,456.456 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:36:18,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:36:18,546.546 INFO    ] No camera update needed
[2026-10-28 23:36:18,548.548 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:36:18,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:36:18,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:36:18,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:36:20,600.600 INFO    ] ================================================
[2026-10-28 23:36:20,617.617 INFO    ] Launching Daemon at Wed Oct 28 23:36:20 IST 2026
[2026-10-28 23:36:20,627.627 INFO    ] ================================================
[2026-10-28 23:36:21,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:36:21
[2026-10-28 23:36:21,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:36:22,096.096 INFO    ] Initializing speech engine...
[2026-10-28 23:36:22,103.103 INFO    ] 2026-10-28 23:36:22
[2026-10-28 23:36:22,364.364 INFO    ] 2026-10-28 23:36:22
[2026-10-28 23:36:22,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:36:22,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:36:22,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:36:22,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:36:22,941.941 INFO    ] time= 28/10/2026 23:36:22
[2026-10-28 23:36:22,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:36:22,993.993 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:36:23,167.167 INFO    ] No existing commands found in stream
[2026-10-28 23:36:28,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:36:28,197.197 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-10-28 23:36:30,362.362 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:36:30,365.365 INFO    ] Checking for system updates...
[2026-10-28 23:36:30,403.403 INFO    ] 200
[2026-10-28 23:36:30,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:36:30,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:36:30,466.466 INFO    ] No update needed
[2026-10-28 23:36:30,468.468 INFO    ] Checking for camera pi updates...
[2026-10-28 23:36:30,501.501 INFO    ] 200
[2026-10-28 23:36:30,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:36:30,544.544 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:36:30,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:36:30,637.637 INFO    ] No camera update needed
[2026-10-28 23:36:30,639.639 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:36:30,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:36:30,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:36:30,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:36:32,696.696 INFO    ] ================================================
[2026-10-28 23:36:32,719.719 INFO    ] Launching Daemon at Wed Oct 28 23:36:32 IST 2026
[2026-10-28 23:36:32,731.731 INFO    ] ================================================
[2026-10-28 23:36:33,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:36:33
[2026-10-28 23:36:33,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:36:34,217.217 INFO    ] Initializing speech engine...
[2026-10-28 23:36:34,239.239 INFO    ] 2026-10-28 23:36:34
[2026-10-28 23:36:34,506.506 INFO    ] 2026-10-28 23:36:34
[2026-10-28 23:36:34,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:36:34,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:36:34,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:36:35,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:36:35,121.121 INFO    ] time= 28/10/2026 23:36:35
[2026-10-28 23:36:35,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:36:35,146.146 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:36:35,237.237 INFO    ] No existing commands found in stream
[2026-10-28 23:36:40,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:36:40,282.282 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-10-28 23:36:44,740.740 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:36:44,743.743 INFO    ] Checking for system updates...
[2026-10-28 23:36:44,780.780 INFO    ] 200
[2026-10-28 23:36:44,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:36:44,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:36:44,841.841 INFO    ] No update needed
[2026-10-28 23:36:44,844.844 INFO    ] Checking for camera pi updates...
[2026-10-28 23:36:44,878.878 INFO    ] 200
[2026-10-28 23:36:44,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:36:44,924.924 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:36:44,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:36:44,979.979 INFO    ] No camera update needed
[2026-10-28 23:36:44,981.981 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:36:44,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:36:44,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:36:44,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:36:47,039.039 INFO    ] ================================================
[2026-10-28 23:36:47,059.059 INFO    ] Launching Daemon at Wed Oct 28 23:36:47 IST 2026
[2026-10-28 23:36:47,070.070 INFO    ] ================================================
[2026-10-28 23:36:47,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:36:47
[2026-10-28 23:36:48,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:36:48,521.521 INFO    ] Initializing speech engine...
[2026-10-28 23:36:48,528.528 INFO    ] 2026-10-28 23:36:48
[2026-10-28 23:36:48,786.786 INFO    ] 2026-10-28 23:36:48
[2026-10-28 23:36:48,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:36:49,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:36:49,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:36:49,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:36:49,350.350 INFO    ] time= 28/10/2026 23:36:49
[2026-10-28 23:36:49,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:36:49,375.375 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:36:49,509.509 INFO    ] No existing commands found in stream
[2026-10-28 23:36:54,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:36:54,524.524 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-10-28 23:36:56,977.977 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:36:56,980.980 INFO    ] Checking for system updates...
[2026-10-28 23:36:57,015.015 INFO    ] 200
[2026-10-28 23:36:57,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:36:57,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:36:57,079.079 INFO    ] No update needed
[2026-10-28 23:36:57,081.081 INFO    ] Checking for camera pi updates...
[2026-10-28 23:36:57,119.119 INFO    ] 200
[2026-10-28 23:36:57,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:36:57,166.166 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:36:57,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:36:57,260.260 INFO    ] No camera update needed
[2026-10-28 23:36:57,263.263 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:36:57,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:36:57,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:36:57,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:36:59,316.316 INFO    ] ================================================
[2026-10-28 23:36:59,331.331 INFO    ] Launching Daemon at Wed Oct 28 23:36:59 IST 2026
[2026-10-28 23:36:59,343.343 INFO    ] ================================================
[2026-10-28 23:36:59,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:36:59
[2026-10-28 23:37:00,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:37:00,751.751 INFO    ] Initializing speech engine...
[2026-10-28 23:37:00,767.767 INFO    ] 2026-10-28 23:37:00
[2026-10-28 23:37:01,053.053 INFO    ] 2026-10-28 23:37:01
[2026-10-28 23:37:01,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:37:01,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:37:01,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:37:01,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:37:01,552.552 INFO    ] time= 28/10/2026 23:37:01
[2026-10-28 23:37:01,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:37:01,618.618 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:37:01,732.732 INFO    ] No existing commands found in stream
[2026-10-28 23:37:06,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:37:06,755.755 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-10-28 23:37:09,242.242 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:37:09,245.245 INFO    ] Checking for system updates...
[2026-10-28 23:37:09,280.280 INFO    ] 200
[2026-10-28 23:37:09,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:37:09,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:37:09,337.337 INFO    ] No update needed
[2026-10-28 23:37:09,340.340 INFO    ] Checking for camera pi updates...
[2026-10-28 23:37:09,373.373 INFO    ] 200
[2026-10-28 23:37:09,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:37:09,415.415 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:37:09,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:37:09,520.520 INFO    ] No camera update needed
[2026-10-28 23:37:09,523.523 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:37:09,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:37:09,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:37:09,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:37:11,575.575 INFO    ] ================================================
[2026-10-28 23:37:11,591.591 INFO    ] Launching Daemon at Wed Oct 28 23:37:11 IST 2026
[2026-10-28 23:37:11,602.602 INFO    ] ================================================
[2026-10-28 23:37:12,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:37:12
[2026-10-28 23:37:12,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:37:13,036.036 INFO    ] Initializing speech engine...
[2026-10-28 23:37:13,042.042 INFO    ] 2026-10-28 23:37:13
[2026-10-28 23:37:13,340.340 INFO    ] 2026-10-28 23:37:13
[2026-10-28 23:37:13,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:37:13,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:37:13,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:37:13,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:37:13,929.929 INFO    ] time= 28/10/2026 23:37:13
[2026-10-28 23:37:13,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:37:13,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:37:14,116.116 INFO    ] No existing commands found in stream
[2026-10-28 23:37:19,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:37:19,144.144 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-10-28 23:37:20,449.449 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:37:20,451.451 INFO    ] Checking for system updates...
[2026-10-28 23:37:20,488.488 INFO    ] 200
[2026-10-28 23:37:20,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:37:20,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:37:20,545.545 INFO    ] No update needed
[2026-10-28 23:37:20,547.547 INFO    ] Checking for camera pi updates...
[2026-10-28 23:37:20,581.581 INFO    ] 200
[2026-10-28 23:37:20,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:37:20,624.624 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:37:20,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:37:20,822.822 INFO    ] No camera update needed
[2026-10-28 23:37:20,825.825 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:37:20,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:37:20,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:37:20,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:37:22,877.877 INFO    ] ================================================
[2026-10-28 23:37:22,894.894 INFO    ] Launching Daemon at Wed Oct 28 23:37:22 IST 2026
[2026-10-28 23:37:22,905.905 INFO    ] ================================================
[2026-10-28 23:37:23,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:37:23
[2026-10-28 23:37:24,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:37:24,338.338 INFO    ] Initializing speech engine...
[2026-10-28 23:37:24,347.347 INFO    ] 2026-10-28 23:37:24
[2026-10-28 23:37:24,598.598 INFO    ] 2026-10-28 23:37:24
[2026-10-28 23:37:24,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:37:24,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:37:24,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:37:25,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:37:25,168.168 INFO    ] time= 28/10/2026 23:37:25
[2026-10-28 23:37:25,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:37:25,189.189 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:37:25,325.325 INFO    ] No existing commands found in stream
[2026-10-28 23:37:30,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:37:30,344.344 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 23:37:31,483.483 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:37:31,485.485 INFO    ] Checking for system updates...
[2026-10-28 23:37:31,524.524 INFO    ] 200
[2026-10-28 23:37:31,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:37:31,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:37:31,588.588 INFO    ] No update needed
[2026-10-28 23:37:31,590.590 INFO    ] Checking for camera pi updates...
[2026-10-28 23:37:31,623.623 INFO    ] 200
[2026-10-28 23:37:31,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:37:31,666.666 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:37:31,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:37:31,751.751 INFO    ] No camera update needed
[2026-10-28 23:37:31,754.754 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:37:31,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:37:31,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:37:31,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:37:33,809.809 INFO    ] ================================================
[2026-10-28 23:37:33,825.825 INFO    ] Launching Daemon at Wed Oct 28 23:37:33 IST 2026
[2026-10-28 23:37:33,836.836 INFO    ] ================================================
[2026-10-28 23:37:34,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:37:34
[2026-10-28 23:37:35,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:37:35,300.300 INFO    ] Initializing speech engine...
[2026-10-28 23:37:35,313.313 INFO    ] 2026-10-28 23:37:35
[2026-10-28 23:37:35,582.582 INFO    ] 2026-10-28 23:37:35
[2026-10-28 23:37:35,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:37:35,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:37:35,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:37:36,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:37:36,105.105 INFO    ] time= 28/10/2026 23:37:36
[2026-10-28 23:37:36,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:37:36,212.212 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:37:36,346.346 INFO    ] No existing commands found in stream
[2026-10-28 23:37:41,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:37:41,379.379 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-28 23:37:42,027.027 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:37:42,029.029 INFO    ] Checking for system updates...
[2026-10-28 23:37:42,067.067 INFO    ] 200
[2026-10-28 23:37:42,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:37:42,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:37:42,126.126 INFO    ] No update needed
[2026-10-28 23:37:42,128.128 INFO    ] Checking for camera pi updates...
[2026-10-28 23:37:42,162.162 INFO    ] 200
[2026-10-28 23:37:42,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:37:42,210.210 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:37:42,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:37:42,289.289 INFO    ] No camera update needed
[2026-10-28 23:37:42,291.291 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:37:42,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:37:42,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:37:42,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:37:44,348.348 INFO    ] ================================================
[2026-10-28 23:37:44,364.364 INFO    ] Launching Daemon at Wed Oct 28 23:37:44 IST 2026
[2026-10-28 23:37:44,375.375 INFO    ] ================================================
[2026-10-28 23:37:44,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:37:44
[2026-10-28 23:37:45,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:37:45,828.828 INFO    ] Initializing speech engine...
[2026-10-28 23:37:45,839.839 INFO    ] 2026-10-28 23:37:45
[2026-10-28 23:37:46,099.099 INFO    ] 2026-10-28 23:37:46
[2026-10-28 23:37:46,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:37:46,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:37:46,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:37:46,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:37:46,654.654 INFO    ] time= 28/10/2026 23:37:46
[2026-10-28 23:37:46,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:37:46,688.688 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:37:46,794.794 INFO    ] No existing commands found in stream
[2026-10-28 23:37:51,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:37:51,813.813 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-10-28 23:37:55,988.988 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:37:55,991.991 INFO    ] Checking for system updates...
[2026-10-28 23:37:56,029.029 INFO    ] 200
[2026-10-28 23:37:56,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:37:56,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:37:56,093.093 INFO    ] No update needed
[2026-10-28 23:37:56,100.100 INFO    ] Checking for camera pi updates...
[2026-10-28 23:37:56,137.137 INFO    ] 200
[2026-10-28 23:37:56,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:37:56,185.185 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:37:56,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:37:56,270.270 INFO    ] No camera update needed
[2026-10-28 23:37:56,272.272 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:37:56,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:37:56,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:37:56,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:37:58,328.328 INFO    ] ================================================
[2026-10-28 23:37:58,344.344 INFO    ] Launching Daemon at Wed Oct 28 23:37:58 IST 2026
[2026-10-28 23:37:58,355.355 INFO    ] ================================================
[2026-10-28 23:37:58,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:37:58
[2026-10-28 23:37:59,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:37:59,934.934 INFO    ] Initializing speech engine...
[2026-10-28 23:37:59,947.947 INFO    ] 2026-10-28 23:37:59
[2026-10-28 23:38:00,212.212 INFO    ] 2026-10-28 23:38:00
[2026-10-28 23:38:00,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:38:00,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:38:00,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:38:00,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:38:00,819.819 INFO    ] time= 28/10/2026 23:38:00
[2026-10-28 23:38:00,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:38:00,842.842 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:38:00,972.972 INFO    ] No existing commands found in stream
[2026-10-28 23:38:06,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:38:06,003.003 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-10-28 23:38:06,656.656 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:38:06,659.659 INFO    ] Checking for system updates...
[2026-10-28 23:38:06,694.694 INFO    ] 200
[2026-10-28 23:38:06,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:38:06,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:38:06,750.750 INFO    ] No update needed
[2026-10-28 23:38:06,753.753 INFO    ] Checking for camera pi updates...
[2026-10-28 23:38:06,786.786 INFO    ] 200
[2026-10-28 23:38:06,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:38:06,831.831 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:38:06,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:38:06,932.932 INFO    ] No camera update needed
[2026-10-28 23:38:06,934.934 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:38:06,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:38:06,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:38:06,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:38:08,987.987 INFO    ] ================================================
[2026-10-28 23:38:09,002.002 INFO    ] Launching Daemon at Wed Oct 28 23:38:08 IST 2026
[2026-10-28 23:38:09,013.013 INFO    ] ================================================
[2026-10-28 23:38:09,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:38:09
[2026-10-28 23:38:10,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:38:10,573.573 INFO    ] Initializing speech engine...
[2026-10-28 23:38:10,581.581 INFO    ] 2026-10-28 23:38:10
[2026-10-28 23:38:10,855.855 INFO    ] 2026-10-28 23:38:10
[2026-10-28 23:38:10,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:38:11,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:38:11,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:38:11,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:38:11,362.362 INFO    ] time= 28/10/2026 23:38:11
[2026-10-28 23:38:11,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:38:11,443.443 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:38:11,590.590 INFO    ] No existing commands found in stream
[2026-10-28 23:38:16,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:38:16,626.626 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-10-28 23:38:17,448.448 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:38:17,451.451 INFO    ] Checking for system updates...
[2026-10-28 23:38:17,487.487 INFO    ] 200
[2026-10-28 23:38:17,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:38:17,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:38:17,547.547 INFO    ] No update needed
[2026-10-28 23:38:17,550.550 INFO    ] Checking for camera pi updates...
[2026-10-28 23:38:17,599.599 INFO    ] 200
[2026-10-28 23:38:17,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:38:17,643.643 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:38:17,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:38:17,732.732 INFO    ] No camera update needed
[2026-10-28 23:38:17,735.735 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:38:17,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:38:17,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:38:17,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:38:19,790.790 INFO    ] ================================================
[2026-10-28 23:38:19,808.808 INFO    ] Launching Daemon at Wed Oct 28 23:38:19 IST 2026
[2026-10-28 23:38:19,819.819 INFO    ] ================================================
[2026-10-28 23:38:20,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:38:20
[2026-10-28 23:38:20,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:38:21,261.261 INFO    ] Initializing speech engine...
[2026-10-28 23:38:21,270.270 INFO    ] 2026-10-28 23:38:21
[2026-10-28 23:38:21,519.519 INFO    ] 2026-10-28 23:38:21
[2026-10-28 23:38:21,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:38:21,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:38:21,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:38:22,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:38:22,085.085 INFO    ] time= 28/10/2026 23:38:22
[2026-10-28 23:38:22,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:38:22,125.125 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:38:22,267.267 INFO    ] No existing commands found in stream
[2026-10-28 23:38:27,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:38:27,295.295 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-10-28 23:38:31,843.843 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:38:31,846.846 INFO    ] Checking for system updates...
[2026-10-28 23:38:31,889.889 INFO    ] 200
[2026-10-28 23:38:31,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:38:31,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:38:31,961.961 INFO    ] No update needed
[2026-10-28 23:38:31,964.964 INFO    ] Checking for camera pi updates...
[2026-10-28 23:38:32,003.003 INFO    ] 200
[2026-10-28 23:38:32,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:38:32,054.054 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:38:32,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:38:32,186.186 INFO    ] No camera update needed
[2026-10-28 23:38:32,189.189 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:38:32,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:38:32,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:38:32,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:38:34,246.246 INFO    ] ================================================
[2026-10-28 23:38:34,261.261 INFO    ] Launching Daemon at Wed Oct 28 23:38:34 IST 2026
[2026-10-28 23:38:34,272.272 INFO    ] ================================================
[2026-10-28 23:38:34,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:38:34
[2026-10-28 23:38:35,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:38:35,686.686 INFO    ] Initializing speech engine...
[2026-10-28 23:38:35,695.695 INFO    ] 2026-10-28 23:38:35
[2026-10-28 23:38:35,944.944 INFO    ] 2026-10-28 23:38:35
[2026-10-28 23:38:35,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:38:36,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:38:36,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:38:36,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:38:36,526.526 INFO    ] time= 28/10/2026 23:38:36
[2026-10-28 23:38:36,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:38:36,549.549 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:38:36,680.680 INFO    ] No existing commands found in stream
[2026-10-28 23:38:41,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:38:41,698.698 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 23:38:44,844.844 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:38:44,846.846 INFO    ] Checking for system updates...
[2026-10-28 23:38:44,881.881 INFO    ] 200
[2026-10-28 23:38:44,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:38:44,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:38:44,938.938 INFO    ] No update needed
[2026-10-28 23:38:44,940.940 INFO    ] Checking for camera pi updates...
[2026-10-28 23:38:44,974.974 INFO    ] 200
[2026-10-28 23:38:44,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:38:45,017.017 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:38:45,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:38:45,100.100 INFO    ] No camera update needed
[2026-10-28 23:38:45,102.102 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:38:45,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:38:45,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:38:45,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:38:47,155.155 INFO    ] ================================================
[2026-10-28 23:38:47,171.171 INFO    ] Launching Daemon at Wed Oct 28 23:38:47 IST 2026
[2026-10-28 23:38:47,182.182 INFO    ] ================================================
[2026-10-28 23:38:47,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:38:47
[2026-10-28 23:38:48,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:38:48,608.608 INFO    ] Initializing speech engine...
[2026-10-28 23:38:48,624.624 INFO    ] 2026-10-28 23:38:48
[2026-10-28 23:38:48,892.892 INFO    ] 2026-10-28 23:38:48
[2026-10-28 23:38:48,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:38:49,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:38:49,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:38:49,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:38:49,508.508 INFO    ] time= 28/10/2026 23:38:49
[2026-10-28 23:38:49,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:38:49,531.531 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:38:49,670.670 INFO    ] No existing commands found in stream
[2026-10-28 23:38:54,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:38:54,693.693 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-10-28 23:38:55,866.866 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:38:55,868.868 INFO    ] Checking for system updates...
[2026-10-28 23:38:55,905.905 INFO    ] 200
[2026-10-28 23:38:55,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:38:55,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:38:55,966.966 INFO    ] No update needed
[2026-10-28 23:38:55,969.969 INFO    ] Checking for camera pi updates...
[2026-10-28 23:38:56,002.002 INFO    ] 200
[2026-10-28 23:38:56,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:38:56,046.046 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:38:56,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:38:56,153.153 INFO    ] No camera update needed
[2026-10-28 23:38:56,155.155 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:38:56,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:38:56,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:38:56,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:38:58,209.209 INFO    ] ================================================
[2026-10-28 23:38:58,224.224 INFO    ] Launching Daemon at Wed Oct 28 23:38:58 IST 2026
[2026-10-28 23:38:58,235.235 INFO    ] ================================================
[2026-10-28 23:38:58,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:38:58
[2026-10-28 23:38:59,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:38:59,637.637 INFO    ] Initializing speech engine...
[2026-10-28 23:38:59,643.643 INFO    ] 2026-10-28 23:38:59
[2026-10-28 23:38:59,930.930 INFO    ] 2026-10-28 23:38:59
[2026-10-28 23:38:59,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:39:00,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:39:00,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:39:00,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:39:00,446.446 INFO    ] time= 28/10/2026 23:39:00
[2026-10-28 23:39:00,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:39:00,535.535 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:39:00,678.678 INFO    ] No existing commands found in stream
[2026-10-28 23:39:05,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:39:05,703.703 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-10-28 23:39:06,527.527 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:39:06,530.530 INFO    ] Checking for system updates...
[2026-10-28 23:39:06,565.565 INFO    ] 200
[2026-10-28 23:39:06,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:39:06,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:39:06,622.622 INFO    ] No update needed
[2026-10-28 23:39:06,625.625 INFO    ] Checking for camera pi updates...
[2026-10-28 23:39:06,658.658 INFO    ] 200
[2026-10-28 23:39:06,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:39:06,704.704 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:39:06,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:39:06,786.786 INFO    ] No camera update needed
[2026-10-28 23:39:06,788.788 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:39:06,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:39:06,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:39:06,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:39:08,841.841 INFO    ] ================================================
[2026-10-28 23:39:08,857.857 INFO    ] Launching Daemon at Wed Oct 28 23:39:08 IST 2026
[2026-10-28 23:39:08,868.868 INFO    ] ================================================
[2026-10-28 23:39:09,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:39:09
[2026-10-28 23:39:10,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:39:10,445.445 INFO    ] Initializing speech engine...
[2026-10-28 23:39:10,454.454 INFO    ] 2026-10-28 23:39:10
[2026-10-28 23:39:10,736.736 INFO    ] 2026-10-28 23:39:10
[2026-10-28 23:39:10,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:39:11,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:39:11,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:39:11,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:39:11,464.464 INFO    ] time= 28/10/2026 23:39:11
[2026-10-28 23:39:11,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:39:11,531.531 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:39:11,675.675 INFO    ] No existing commands found in stream
[2026-10-28 23:39:16,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:39:16,692.692 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 23:39:20,413.413 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:39:20,416.416 INFO    ] Checking for system updates...
[2026-10-28 23:39:20,452.452 INFO    ] 200
[2026-10-28 23:39:20,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:39:20,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:39:20,512.512 INFO    ] No update needed
[2026-10-28 23:39:20,515.515 INFO    ] Checking for camera pi updates...
[2026-10-28 23:39:20,549.549 INFO    ] 200
[2026-10-28 23:39:20,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:39:20,593.593 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:39:20,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:39:20,686.686 INFO    ] No camera update needed
[2026-10-28 23:39:20,689.689 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:39:20,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:39:20,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:39:20,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:39:22,744.744 INFO    ] ================================================
[2026-10-28 23:39:22,759.759 INFO    ] Launching Daemon at Wed Oct 28 23:39:22 IST 2026
[2026-10-28 23:39:22,771.771 INFO    ] ================================================
[2026-10-28 23:39:23,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:39:23
[2026-10-28 23:39:23,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:39:24,235.235 INFO    ] Initializing speech engine...
[2026-10-28 23:39:24,249.249 INFO    ] 2026-10-28 23:39:24
[2026-10-28 23:39:24,545.545 INFO    ] 2026-10-28 23:39:24
[2026-10-28 23:39:24,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:39:24,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:39:24,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:39:25,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:39:25,049.049 INFO    ] time= 28/10/2026 23:39:25
[2026-10-28 23:39:25,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:39:25,097.097 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:39:25,231.231 INFO    ] No existing commands found in stream
[2026-10-28 23:39:30,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:39:30,259.259 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-10-28 23:39:31,625.625 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:39:31,628.628 INFO    ] Checking for system updates...
[2026-10-28 23:39:31,667.667 INFO    ] 200
[2026-10-28 23:39:31,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:39:31,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:39:31,735.735 INFO    ] No update needed
[2026-10-28 23:39:31,738.738 INFO    ] Checking for camera pi updates...
[2026-10-28 23:39:31,777.777 INFO    ] 200
[2026-10-28 23:39:31,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:39:31,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:39:31,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:39:31,991.991 INFO    ] No camera update needed
[2026-10-28 23:39:31,994.994 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:39:31,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:39:32,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:39:32,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:39:34,049.049 INFO    ] ================================================
[2026-10-28 23:39:34,066.066 INFO    ] Launching Daemon at Wed Oct 28 23:39:34 IST 2026
[2026-10-28 23:39:34,077.077 INFO    ] ================================================
[2026-10-28 23:39:34,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:39:34
[2026-10-28 23:39:35,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:39:35,652.652 INFO    ] Initializing speech engine...
[2026-10-28 23:39:35,666.666 INFO    ] 2026-10-28 23:39:35
[2026-10-28 23:39:35,932.932 INFO    ] 2026-10-28 23:39:35
[2026-10-28 23:39:35,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:39:36,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:39:36,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:39:36,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:39:36,480.480 INFO    ] time= 28/10/2026 23:39:36
[2026-10-28 23:39:36,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:39:36,527.527 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:39:36,654.654 INFO    ] No existing commands found in stream
[2026-10-28 23:39:41,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:39:41,688.688 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-10-28 23:39:45,843.843 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:39:45,846.846 INFO    ] Checking for system updates...
[2026-10-28 23:39:45,883.883 INFO    ] 200
[2026-10-28 23:39:45,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:39:45,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:39:45,942.942 INFO    ] No update needed
[2026-10-28 23:39:45,945.945 INFO    ] Checking for camera pi updates...
[2026-10-28 23:39:45,979.979 INFO    ] 200
[2026-10-28 23:39:45,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:39:46,027.027 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:39:46,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:39:46,116.116 INFO    ] No camera update needed
[2026-10-28 23:39:46,118.118 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:39:46,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:39:46,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:39:46,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:39:48,174.174 INFO    ] ================================================
[2026-10-28 23:39:48,189.189 INFO    ] Launching Daemon at Wed Oct 28 23:39:48 IST 2026
[2026-10-28 23:39:48,200.200 INFO    ] ================================================
[2026-10-28 23:39:48,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:39:48
[2026-10-28 23:39:49,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:39:49,651.651 INFO    ] Initializing speech engine...
[2026-10-28 23:39:49,658.658 INFO    ] 2026-10-28 23:39:49
[2026-10-28 23:39:49,916.916 INFO    ] 2026-10-28 23:39:49
[2026-10-28 23:39:49,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:39:50,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:39:50,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:39:50,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:39:50,490.490 INFO    ] time= 28/10/2026 23:39:50
[2026-10-28 23:39:50,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:39:50,509.509 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:39:50,641.641 INFO    ] No existing commands found in stream
[2026-10-28 23:39:55,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:39:55,675.675 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-10-28 23:39:58,190.190 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:39:58,193.193 INFO    ] Checking for system updates...
[2026-10-28 23:39:58,230.230 INFO    ] 200
[2026-10-28 23:39:58,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:39:58,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:39:58,290.290 INFO    ] No update needed
[2026-10-28 23:39:58,293.293 INFO    ] Checking for camera pi updates...
[2026-10-28 23:39:58,327.327 INFO    ] 200
[2026-10-28 23:39:58,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:39:58,375.375 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:39:58,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:39:58,466.466 INFO    ] No camera update needed
[2026-10-28 23:39:58,468.468 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:39:58,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:39:58,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:39:58,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:40:00,520.520 INFO    ] ================================================
[2026-10-28 23:40:00,535.535 INFO    ] Launching Daemon at Wed Oct 28 23:40:00 IST 2026
[2026-10-28 23:40:00,547.547 INFO    ] ================================================
[2026-10-28 23:40:01,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:40:01
[2026-10-28 23:40:02,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:40:02,772.772 INFO    ] Initializing speech engine...
[2026-10-28 23:40:02,776.776 INFO    ] 2026-10-28 23:40:02
[2026-10-28 23:40:03,109.109 INFO    ] 2026-10-28 23:40:03
[2026-10-28 23:40:03,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:40:03,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:40:03,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:40:03,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:40:03,655.655 INFO    ] time= 28/10/2026 23:40:03
[2026-10-28 23:40:03,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:40:03,690.690 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:40:03,839.839 INFO    ] No existing commands found in stream
[2026-10-28 23:40:08,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:40:08,862.862 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 23:40:09,539.539 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:40:09,541.541 INFO    ] Checking for system updates...
[2026-10-28 23:40:09,580.580 INFO    ] 200
[2026-10-28 23:40:09,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:40:09,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:40:09,637.637 INFO    ] No update needed
[2026-10-28 23:40:09,639.639 INFO    ] Checking for camera pi updates...
[2026-10-28 23:40:09,674.674 INFO    ] 200
[2026-10-28 23:40:09,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:40:09,716.716 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:40:09,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:40:09,797.797 INFO    ] No camera update needed
[2026-10-28 23:40:09,800.800 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:40:09,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:40:09,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:40:09,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:40:11,852.852 INFO    ] ================================================
[2026-10-28 23:40:11,867.867 INFO    ] Launching Daemon at Wed Oct 28 23:40:11 IST 2026
[2026-10-28 23:40:11,878.878 INFO    ] ================================================
[2026-10-28 23:40:12,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:40:12
[2026-10-28 23:40:13,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:40:13,301.301 INFO    ] Initializing speech engine...
[2026-10-28 23:40:13,317.317 INFO    ] 2026-10-28 23:40:13
[2026-10-28 23:40:13,587.587 INFO    ] 2026-10-28 23:40:13
[2026-10-28 23:40:13,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:40:13,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:40:13,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:40:14,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:40:14,163.163 INFO    ] time= 28/10/2026 23:40:14
[2026-10-28 23:40:14,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:40:14,212.212 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:40:14,351.351 INFO    ] No existing commands found in stream
[2026-10-28 23:40:19,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:40:19,380.380 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-10-28 23:40:21,432.432 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:40:21,435.435 INFO    ] Checking for system updates...
[2026-10-28 23:40:21,472.472 INFO    ] 200
[2026-10-28 23:40:21,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:40:21,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:40:21,531.531 INFO    ] No update needed
[2026-10-28 23:40:21,534.534 INFO    ] Checking for camera pi updates...
[2026-10-28 23:40:21,569.569 INFO    ] 200
[2026-10-28 23:40:21,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:40:21,613.613 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:40:21,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:40:21,696.696 INFO    ] No camera update needed
[2026-10-28 23:40:21,699.699 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:40:21,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:40:21,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:40:21,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:40:23,756.756 INFO    ] ================================================
[2026-10-28 23:40:23,772.772 INFO    ] Launching Daemon at Wed Oct 28 23:40:23 IST 2026
[2026-10-28 23:40:23,784.784 INFO    ] ================================================
[2026-10-28 23:40:24,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:40:24
[2026-10-28 23:40:24,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:40:25,227.227 INFO    ] Initializing speech engine...
[2026-10-28 23:40:25,235.235 INFO    ] 2026-10-28 23:40:25
[2026-10-28 23:40:25,487.487 INFO    ] 2026-10-28 23:40:25
[2026-10-28 23:40:25,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:40:25,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:40:25,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:40:26,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:40:26,096.096 INFO    ] time= 28/10/2026 23:40:26
[2026-10-28 23:40:26,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:40:26,175.175 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:40:26,299.299 INFO    ] No existing commands found in stream
[2026-10-28 23:40:31,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:40:31,318.318 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-10-28 23:40:34,226.226 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:40:34,228.228 INFO    ] Checking for system updates...
[2026-10-28 23:40:34,265.265 INFO    ] 200
[2026-10-28 23:40:34,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:40:34,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:40:34,322.322 INFO    ] No update needed
[2026-10-28 23:40:34,325.325 INFO    ] Checking for camera pi updates...
[2026-10-28 23:40:34,359.359 INFO    ] 200
[2026-10-28 23:40:34,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:40:34,401.401 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:40:34,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:40:34,487.487 INFO    ] No camera update needed
[2026-10-28 23:40:34,490.490 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:40:34,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:40:34,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:40:34,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:40:36,544.544 INFO    ] ================================================
[2026-10-28 23:40:36,560.560 INFO    ] Launching Daemon at Wed Oct 28 23:40:36 IST 2026
[2026-10-28 23:40:36,571.571 INFO    ] ================================================
[2026-10-28 23:40:37,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:40:37
[2026-10-28 23:40:37,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:40:38,025.025 INFO    ] Initializing speech engine...
[2026-10-28 23:40:38,035.035 INFO    ] 2026-10-28 23:40:38
[2026-10-28 23:40:38,296.296 INFO    ] 2026-10-28 23:40:38
[2026-10-28 23:40:38,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:40:38,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:40:38,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:40:38,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:40:38,920.920 INFO    ] time= 28/10/2026 23:40:38
[2026-10-28 23:40:38,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:40:38,953.953 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:40:39,107.107 INFO    ] No existing commands found in stream
[2026-10-28 23:40:44,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:40:44,130.130 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-28 23:40:47,205.205 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:40:47,208.208 INFO    ] Checking for system updates...
[2026-10-28 23:40:47,247.247 INFO    ] 200
[2026-10-28 23:40:47,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:40:47,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:40:47,310.310 INFO    ] No update needed
[2026-10-28 23:40:47,313.313 INFO    ] Checking for camera pi updates...
[2026-10-28 23:40:47,346.346 INFO    ] 200
[2026-10-28 23:40:47,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:40:47,396.396 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:40:47,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:40:47,498.498 INFO    ] No camera update needed
[2026-10-28 23:40:47,500.500 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:40:47,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:40:47,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:40:47,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:40:49,555.555 INFO    ] ================================================
[2026-10-28 23:40:49,571.571 INFO    ] Launching Daemon at Wed Oct 28 23:40:49 IST 2026
[2026-10-28 23:40:49,582.582 INFO    ] ================================================
[2026-10-28 23:40:50,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:40:50
[2026-10-28 23:40:50,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:40:51,194.194 INFO    ] Initializing speech engine...
[2026-10-28 23:40:51,202.202 INFO    ] 2026-10-28 23:40:51
[2026-10-28 23:40:51,475.475 INFO    ] 2026-10-28 23:40:51
[2026-10-28 23:40:51,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:40:51,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:40:51,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:40:52,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:40:52,049.049 INFO    ] time= 28/10/2026 23:40:52
[2026-10-28 23:40:52,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:40:52,102.102 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:40:52,211.211 INFO    ] No existing commands found in stream
[2026-10-28 23:40:57,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:40:57,239.239 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-10-28 23:40:59,574.574 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:40:59,577.577 INFO    ] Checking for system updates...
[2026-10-28 23:40:59,613.613 INFO    ] 200
[2026-10-28 23:40:59,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:40:59,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:40:59,671.671 INFO    ] No update needed
[2026-10-28 23:40:59,674.674 INFO    ] Checking for camera pi updates...
[2026-10-28 23:40:59,709.709 INFO    ] 200
[2026-10-28 23:40:59,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:40:59,754.754 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:40:59,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:40:59,838.838 INFO    ] No camera update needed
[2026-10-28 23:40:59,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:40:59,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:40:59,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:40:59,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:41:01,901.901 INFO    ] ================================================
[2026-10-28 23:41:01,925.925 INFO    ] Launching Daemon at Wed Oct 28 23:41:01 IST 2026
[2026-10-28 23:41:01,942.942 INFO    ] ================================================
[2026-10-28 23:41:02,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:41:02
[2026-10-28 23:41:03,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:41:03,551.551 INFO    ] Initializing speech engine...
[2026-10-28 23:41:03,559.559 INFO    ] 2026-10-28 23:41:03
[2026-10-28 23:41:03,834.834 INFO    ] 2026-10-28 23:41:03
[2026-10-28 23:41:03,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:41:04,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:41:04,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:41:04,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:41:04,400.400 INFO    ] time= 28/10/2026 23:41:04
[2026-10-28 23:41:04,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:41:04,437.437 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:41:04,562.562 INFO    ] No existing commands found in stream
[2026-10-28 23:41:09,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:41:09,597.597 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-10-28 23:41:13,805.805 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:41:13,808.808 INFO    ] Checking for system updates...
[2026-10-28 23:41:13,845.845 INFO    ] 200
[2026-10-28 23:41:13,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:41:13,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:41:13,903.903 INFO    ] No update needed
[2026-10-28 23:41:13,906.906 INFO    ] Checking for camera pi updates...
[2026-10-28 23:41:13,938.938 INFO    ] 200
[2026-10-28 23:41:13,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:41:13,981.981 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:41:14,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:41:14,066.066 INFO    ] No camera update needed
[2026-10-28 23:41:14,068.068 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:41:14,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:41:14,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:41:14,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:41:16,122.122 INFO    ] ================================================
[2026-10-28 23:41:16,138.138 INFO    ] Launching Daemon at Wed Oct 28 23:41:16 IST 2026
[2026-10-28 23:41:16,151.151 INFO    ] ================================================
[2026-10-28 23:41:16,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:41:16
[2026-10-28 23:41:17,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:41:17,549.549 INFO    ] Initializing speech engine...
[2026-10-28 23:41:17,571.571 INFO    ] 2026-10-28 23:41:17
[2026-10-28 23:41:17,822.822 INFO    ] 2026-10-28 23:41:17
[2026-10-28 23:41:17,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:41:18,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:41:18,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:41:18,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:41:18,441.441 INFO    ] time= 28/10/2026 23:41:18
[2026-10-28 23:41:18,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:41:18,483.483 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:41:18,624.624 INFO    ] No existing commands found in stream
[2026-10-28 23:41:23,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:41:23,646.646 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-10-28 23:41:27,428.428 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:41:27,431.431 INFO    ] Checking for system updates...
[2026-10-28 23:41:27,471.471 INFO    ] 200
[2026-10-28 23:41:27,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:41:27,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:41:27,528.528 INFO    ] No update needed
[2026-10-28 23:41:27,530.530 INFO    ] Checking for camera pi updates...
[2026-10-28 23:41:27,563.563 INFO    ] 200
[2026-10-28 23:41:27,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:41:27,606.606 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:41:27,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:41:27,688.688 INFO    ] No camera update needed
[2026-10-28 23:41:27,690.690 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:41:27,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:41:27,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:41:27,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:41:29,743.743 INFO    ] ================================================
[2026-10-28 23:41:29,759.759 INFO    ] Launching Daemon at Wed Oct 28 23:41:29 IST 2026
[2026-10-28 23:41:29,770.770 INFO    ] ================================================
[2026-10-28 23:41:30,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:41:30
[2026-10-28 23:41:30,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:41:31,175.175 INFO    ] Initializing speech engine...
[2026-10-28 23:41:31,184.184 INFO    ] 2026-10-28 23:41:31
[2026-10-28 23:41:31,492.492 INFO    ] 2026-10-28 23:41:31
[2026-10-28 23:41:31,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:41:31,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:41:31,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:41:32,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:41:32,054.054 INFO    ] time= 28/10/2026 23:41:32
[2026-10-28 23:41:32,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:41:32,150.150 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:41:32,323.323 INFO    ] No existing commands found in stream
[2026-10-28 23:41:37,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:41:37,351.351 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-10-28 23:41:40,926.926 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:41:40,928.928 INFO    ] Checking for system updates...
[2026-10-28 23:41:40,963.963 INFO    ] 200
[2026-10-28 23:41:40,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:41:41,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:41:41,021.021 INFO    ] No update needed
[2026-10-28 23:41:41,023.023 INFO    ] Checking for camera pi updates...
[2026-10-28 23:41:41,058.058 INFO    ] 200
[2026-10-28 23:41:41,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:41:41,100.100 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:41:41,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:41:41,286.286 INFO    ] No camera update needed
[2026-10-28 23:41:41,288.288 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:41:41,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:41:41,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:41:41,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:41:43,341.341 INFO    ] ================================================
[2026-10-28 23:41:43,356.356 INFO    ] Launching Daemon at Wed Oct 28 23:41:43 IST 2026
[2026-10-28 23:41:43,367.367 INFO    ] ================================================
[2026-10-28 23:41:43,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:41:43
[2026-10-28 23:41:44,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:41:44,797.797 INFO    ] Initializing speech engine...
[2026-10-28 23:41:44,811.811 INFO    ] 2026-10-28 23:41:44
[2026-10-28 23:41:45,075.075 INFO    ] 2026-10-28 23:41:45
[2026-10-28 23:41:45,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:41:45,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:41:45,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:41:45,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:41:45,630.630 INFO    ] time= 28/10/2026 23:41:45
[2026-10-28 23:41:45,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:41:45,655.655 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:41:45,779.779 INFO    ] No existing commands found in stream
[2026-10-28 23:41:50,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:41:50,798.798 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-10-28 23:41:53,870.870 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:41:53,873.873 INFO    ] Checking for system updates...
[2026-10-28 23:41:53,908.908 INFO    ] 200
[2026-10-28 23:41:53,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:41:53,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:41:53,972.972 INFO    ] No update needed
[2026-10-28 23:41:53,975.975 INFO    ] Checking for camera pi updates...
[2026-10-28 23:41:54,008.008 INFO    ] 200
[2026-10-28 23:41:54,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:41:54,055.055 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:41:54,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:41:54,154.154 INFO    ] No camera update needed
[2026-10-28 23:41:54,157.157 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:41:54,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:41:54,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:41:54,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:41:56,210.210 INFO    ] ================================================
[2026-10-28 23:41:56,225.225 INFO    ] Launching Daemon at Wed Oct 28 23:41:56 IST 2026
[2026-10-28 23:41:56,236.236 INFO    ] ================================================
[2026-10-28 23:41:56,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:41:56
[2026-10-28 23:41:57,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:41:57,635.635 INFO    ] Initializing speech engine...
[2026-10-28 23:41:57,658.658 INFO    ] 2026-10-28 23:41:57
[2026-10-28 23:41:57,911.911 INFO    ] 2026-10-28 23:41:57
[2026-10-28 23:41:57,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:41:58,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:41:58,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:41:58,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:41:58,473.473 INFO    ] time= 28/10/2026 23:41:58
[2026-10-28 23:41:58,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:41:58,499.499 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:41:58,631.631 INFO    ] No existing commands found in stream
[2026-10-28 23:42:03,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:42:03,652.652 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-28 23:42:06,068.068 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:42:06,071.071 INFO    ] Checking for system updates...
[2026-10-28 23:42:06,106.106 INFO    ] 200
[2026-10-28 23:42:06,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:42:06,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:42:06,163.163 INFO    ] No update needed
[2026-10-28 23:42:06,166.166 INFO    ] Checking for camera pi updates...
[2026-10-28 23:42:06,201.201 INFO    ] 200
[2026-10-28 23:42:06,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:42:06,247.247 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:42:06,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:42:06,328.328 INFO    ] No camera update needed
[2026-10-28 23:42:06,330.330 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:42:06,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:42:06,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:42:06,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:42:08,384.384 INFO    ] ================================================
[2026-10-28 23:42:08,399.399 INFO    ] Launching Daemon at Wed Oct 28 23:42:08 IST 2026
[2026-10-28 23:42:08,410.410 INFO    ] ================================================
[2026-10-28 23:42:08,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:42:08
[2026-10-28 23:42:09,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:42:09,844.844 INFO    ] Initializing speech engine...
[2026-10-28 23:42:09,859.859 INFO    ] 2026-10-28 23:42:09
[2026-10-28 23:42:10,144.144 INFO    ] 2026-10-28 23:42:10
[2026-10-28 23:42:10,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:42:10,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:42:10,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:42:10,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:42:10,770.770 INFO    ] time= 28/10/2026 23:42:10
[2026-10-28 23:42:10,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:42:10,794.794 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:42:10,925.925 INFO    ] No existing commands found in stream
[2026-10-28 23:42:15,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:42:15,953.953 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-10-28 23:42:19,748.748 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:42:19,751.751 INFO    ] Checking for system updates...
[2026-10-28 23:42:19,787.787 INFO    ] 200
[2026-10-28 23:42:19,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:42:19,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:42:19,843.843 INFO    ] No update needed
[2026-10-28 23:42:19,846.846 INFO    ] Checking for camera pi updates...
[2026-10-28 23:42:19,879.879 INFO    ] 200
[2026-10-28 23:42:19,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:42:19,926.926 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:42:20,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:42:20,007.007 INFO    ] No camera update needed
[2026-10-28 23:42:20,009.009 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:42:20,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:42:20,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:42:20,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:42:22,063.063 INFO    ] ================================================
[2026-10-28 23:42:22,078.078 INFO    ] Launching Daemon at Wed Oct 28 23:42:22 IST 2026
[2026-10-28 23:42:22,089.089 INFO    ] ================================================
[2026-10-28 23:42:22,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:42:22
[2026-10-28 23:42:23,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:42:23,541.541 INFO    ] Initializing speech engine...
[2026-10-28 23:42:23,549.549 INFO    ] 2026-10-28 23:42:23
[2026-10-28 23:42:23,865.865 INFO    ] 2026-10-28 23:42:23
[2026-10-28 23:42:23,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:42:24,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:42:24,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:42:24,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:42:24,468.468 INFO    ] time= 28/10/2026 23:42:24
[2026-10-28 23:42:24,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:42:24,504.504 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:42:24,624.624 INFO    ] No existing commands found in stream
[2026-10-28 23:42:29,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:42:29,657.657 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-10-28 23:42:31,768.768 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:42:31,771.771 INFO    ] Checking for system updates...
[2026-10-28 23:42:31,828.828 INFO    ] 200
[2026-10-28 23:42:31,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:42:31,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:42:31,890.890 INFO    ] No update needed
[2026-10-28 23:42:31,893.893 INFO    ] Checking for camera pi updates...
[2026-10-28 23:42:31,929.929 INFO    ] 200
[2026-10-28 23:42:31,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:42:31,975.975 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:42:32,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:42:32,109.109 INFO    ] No camera update needed
[2026-10-28 23:42:32,112.112 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:42:32,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:42:32,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:42:32,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:42:34,166.166 INFO    ] ================================================
[2026-10-28 23:42:34,181.181 INFO    ] Launching Daemon at Wed Oct 28 23:42:34 IST 2026
[2026-10-28 23:42:34,192.192 INFO    ] ================================================
[2026-10-28 23:42:34,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:42:34
[2026-10-28 23:42:35,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:42:35,631.631 INFO    ] Initializing speech engine...
[2026-10-28 23:42:35,654.654 INFO    ] 2026-10-28 23:42:35
[2026-10-28 23:42:35,907.907 INFO    ] 2026-10-28 23:42:35
[2026-10-28 23:42:35,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:42:36,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:42:36,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:42:36,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:42:36,432.432 INFO    ] time= 28/10/2026 23:42:36
[2026-10-28 23:42:36,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:42:36,538.538 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:42:36,647.647 INFO    ] No existing commands found in stream
[2026-10-28 23:42:41,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:42:41,662.662 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-10-28 23:42:44,751.751 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:42:44,754.754 INFO    ] Checking for system updates...
[2026-10-28 23:42:44,790.790 INFO    ] 200
[2026-10-28 23:42:44,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:42:44,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:42:44,848.848 INFO    ] No update needed
[2026-10-28 23:42:44,851.851 INFO    ] Checking for camera pi updates...
[2026-10-28 23:42:44,884.884 INFO    ] 200
[2026-10-28 23:42:44,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:42:44,926.926 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:42:45,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:42:45,012.012 INFO    ] No camera update needed
[2026-10-28 23:42:45,014.014 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:42:45,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:42:45,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:42:45,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:42:47,068.068 INFO    ] ================================================
[2026-10-28 23:42:47,083.083 INFO    ] Launching Daemon at Wed Oct 28 23:42:47 IST 2026
[2026-10-28 23:42:47,094.094 INFO    ] ================================================
[2026-10-28 23:42:47,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:42:47
[2026-10-28 23:42:48,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:42:48,541.541 INFO    ] Initializing speech engine...
[2026-10-28 23:42:48,550.550 INFO    ] 2026-10-28 23:42:48
[2026-10-28 23:42:48,847.847 INFO    ] 2026-10-28 23:42:48
[2026-10-28 23:42:48,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:42:49,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:42:49,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:42:49,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:42:49,404.404 INFO    ] time= 28/10/2026 23:42:49
[2026-10-28 23:42:49,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:42:49,487.487 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:42:49,637.637 INFO    ] No existing commands found in stream
[2026-10-28 23:42:54,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:42:54,665.665 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 23:42:55,345.345 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:42:55,348.348 INFO    ] Checking for system updates...
[2026-10-28 23:42:55,385.385 INFO    ] 200
[2026-10-28 23:42:55,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:42:55,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:42:55,441.441 INFO    ] No update needed
[2026-10-28 23:42:55,443.443 INFO    ] Checking for camera pi updates...
[2026-10-28 23:42:55,484.484 INFO    ] 200
[2026-10-28 23:42:55,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:42:55,531.531 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:42:55,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:42:55,630.630 INFO    ] No camera update needed
[2026-10-28 23:42:55,633.633 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:42:55,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:42:55,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:42:55,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:42:57,686.686 INFO    ] ================================================
[2026-10-28 23:42:57,702.702 INFO    ] Launching Daemon at Wed Oct 28 23:42:57 IST 2026
[2026-10-28 23:42:57,712.712 INFO    ] ================================================
[2026-10-28 23:42:58,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:42:58
[2026-10-28 23:42:59,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:42:59,333.333 INFO    ] Initializing speech engine...
[2026-10-28 23:42:59,347.347 INFO    ] 2026-10-28 23:42:59
[2026-10-28 23:42:59,621.621 INFO    ] 2026-10-28 23:42:59
[2026-10-28 23:42:59,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:42:59,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:42:59,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:43:00,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:43:00,200.200 INFO    ] time= 28/10/2026 23:43:00
[2026-10-28 23:43:00,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:43:00,239.239 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:43:00,404.404 INFO    ] No existing commands found in stream
[2026-10-28 23:43:05,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:43:05,438.438 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-10-28 23:43:08,053.053 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:43:08,056.056 INFO    ] Checking for system updates...
[2026-10-28 23:43:08,092.092 INFO    ] 200
[2026-10-28 23:43:08,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:43:08,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:43:08,150.150 INFO    ] No update needed
[2026-10-28 23:43:08,153.153 INFO    ] Checking for camera pi updates...
[2026-10-28 23:43:08,187.187 INFO    ] 200
[2026-10-28 23:43:08,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:43:08,231.231 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:43:08,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:43:08,312.312 INFO    ] No camera update needed
[2026-10-28 23:43:08,315.315 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:43:08,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:43:08,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:43:08,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:43:10,367.367 INFO    ] ================================================
[2026-10-28 23:43:10,382.382 INFO    ] Launching Daemon at Wed Oct 28 23:43:10 IST 2026
[2026-10-28 23:43:10,393.393 INFO    ] ================================================
[2026-10-28 23:43:11,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:43:11
[2026-10-28 23:43:11,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:43:12,032.032 INFO    ] Initializing speech engine...
[2026-10-28 23:43:12,044.044 INFO    ] 2026-10-28 23:43:12
[2026-10-28 23:43:12,317.317 INFO    ] 2026-10-28 23:43:12
[2026-10-28 23:43:12,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:43:12,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:43:12,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:43:12,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:43:12,879.879 INFO    ] time= 28/10/2026 23:43:12
[2026-10-28 23:43:12,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:43:12,932.932 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:43:13,046.046 INFO    ] No existing commands found in stream
[2026-10-28 23:43:18,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:43:18,079.079 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-10-28 23:43:19,616.616 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:43:19,619.619 INFO    ] Checking for system updates...
[2026-10-28 23:43:19,656.656 INFO    ] 200
[2026-10-28 23:43:19,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:43:19,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:43:19,715.715 INFO    ] No update needed
[2026-10-28 23:43:19,718.718 INFO    ] Checking for camera pi updates...
[2026-10-28 23:43:19,753.753 INFO    ] 200
[2026-10-28 23:43:19,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:43:19,797.797 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:43:19,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:43:19,893.893 INFO    ] No camera update needed
[2026-10-28 23:43:19,896.896 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:43:19,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:43:19,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:43:19,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:43:21,952.952 INFO    ] ================================================
[2026-10-28 23:43:21,967.967 INFO    ] Launching Daemon at Wed Oct 28 23:43:21 IST 2026
[2026-10-28 23:43:21,977.977 INFO    ] ================================================
[2026-10-28 23:43:22,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:43:22
[2026-10-28 23:43:23,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:43:23,399.399 INFO    ] Initializing speech engine...
[2026-10-28 23:43:23,422.422 INFO    ] 2026-10-28 23:43:23
[2026-10-28 23:43:23,676.676 INFO    ] 2026-10-28 23:43:23
[2026-10-28 23:43:23,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:43:23,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:43:23,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:43:24,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:43:24,230.230 INFO    ] time= 28/10/2026 23:43:24
[2026-10-28 23:43:24,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:43:24,271.271 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:43:24,437.437 INFO    ] No existing commands found in stream
[2026-10-28 23:43:29,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:43:29,470.470 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-10-28 23:43:33,618.618 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:43:33,621.621 INFO    ] Checking for system updates...
[2026-10-28 23:43:33,661.661 INFO    ] 200
[2026-10-28 23:43:33,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:43:33,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:43:33,725.725 INFO    ] No update needed
[2026-10-28 23:43:33,727.727 INFO    ] Checking for camera pi updates...
[2026-10-28 23:43:33,763.763 INFO    ] 200
[2026-10-28 23:43:33,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:43:33,808.808 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:43:33,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:43:33,911.911 INFO    ] No camera update needed
[2026-10-28 23:43:33,914.914 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:43:33,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:43:33,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:43:33,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:43:35,967.967 INFO    ] ================================================
[2026-10-28 23:43:35,982.982 INFO    ] Launching Daemon at Wed Oct 28 23:43:35 IST 2026
[2026-10-28 23:43:35,992.992 INFO    ] ================================================
[2026-10-28 23:43:36,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:43:36
[2026-10-28 23:43:37,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:43:37,405.405 INFO    ] Initializing speech engine...
[2026-10-28 23:43:37,428.428 INFO    ] 2026-10-28 23:43:37
[2026-10-28 23:43:37,684.684 INFO    ] 2026-10-28 23:43:37
[2026-10-28 23:43:37,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:43:37,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:43:37,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:43:38,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:43:38,250.250 INFO    ] time= 28/10/2026 23:43:38
[2026-10-28 23:43:38,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:43:38,276.276 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:43:38,422.422 INFO    ] No existing commands found in stream
[2026-10-28 23:43:43,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:43:43,450.450 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-10-28 23:43:47,123.123 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:43:47,126.126 INFO    ] Checking for system updates...
[2026-10-28 23:43:47,161.161 INFO    ] 200
[2026-10-28 23:43:47,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:43:47,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:43:47,218.218 INFO    ] No update needed
[2026-10-28 23:43:47,220.220 INFO    ] Checking for camera pi updates...
[2026-10-28 23:43:47,255.255 INFO    ] 200
[2026-10-28 23:43:47,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:43:47,298.298 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:43:47,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:43:47,487.487 INFO    ] No camera update needed
[2026-10-28 23:43:47,489.489 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:43:47,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:43:47,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:43:47,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:43:49,542.542 INFO    ] ================================================
[2026-10-28 23:43:49,557.557 INFO    ] Launching Daemon at Wed Oct 28 23:43:49 IST 2026
[2026-10-28 23:43:49,568.568 INFO    ] ================================================
[2026-10-28 23:43:50,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:43:50
[2026-10-28 23:43:50,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:43:51,109.109 INFO    ] Initializing speech engine...
[2026-10-28 23:43:51,123.123 INFO    ] 2026-10-28 23:43:51
[2026-10-28 23:43:51,397.397 INFO    ] 2026-10-28 23:43:51
[2026-10-28 23:43:51,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:43:51,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:43:51,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:43:51,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:43:51,969.969 INFO    ] time= 28/10/2026 23:43:51
[2026-10-28 23:43:51,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:43:52,007.007 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:43:52,140.140 INFO    ] No existing commands found in stream
[2026-10-28 23:43:57,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:43:57,179.179 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-10-28 23:43:58,314.314 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:43:58,317.317 INFO    ] Checking for system updates...
[2026-10-28 23:43:58,354.354 INFO    ] 200
[2026-10-28 23:43:58,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:43:58,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:43:58,414.414 INFO    ] No update needed
[2026-10-28 23:43:58,417.417 INFO    ] Checking for camera pi updates...
[2026-10-28 23:43:58,451.451 INFO    ] 200
[2026-10-28 23:43:58,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:43:58,496.496 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:43:58,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:43:58,582.582 INFO    ] No camera update needed
[2026-10-28 23:43:58,585.585 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:43:58,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:43:58,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:43:58,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:44:00,640.640 INFO    ] ================================================
[2026-10-28 23:44:00,655.655 INFO    ] Launching Daemon at Wed Oct 28 23:44:00 IST 2026
[2026-10-28 23:44:00,666.666 INFO    ] ================================================
[2026-10-28 23:44:01,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:44:01
[2026-10-28 23:44:01,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:44:02,361.361 INFO    ] Initializing speech engine...
[2026-10-28 23:44:02,367.367 INFO    ] 2026-10-28 23:44:02
[2026-10-28 23:44:02,701.701 INFO    ] 2026-10-28 23:44:02
[2026-10-28 23:44:02,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:44:03,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:44:03,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:44:03,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:44:03,302.302 INFO    ] time= 28/10/2026 23:44:03
[2026-10-28 23:44:03,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:44:03,317.317 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:44:03,421.421 INFO    ] No existing commands found in stream
[2026-10-28 23:44:08,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:44:08,444.444 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-10-28 23:44:09,456.456 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:44:09,459.459 INFO    ] Checking for system updates...
[2026-10-28 23:44:09,497.497 INFO    ] 200
[2026-10-28 23:44:09,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:44:09,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:44:09,555.555 INFO    ] No update needed
[2026-10-28 23:44:09,557.557 INFO    ] Checking for camera pi updates...
[2026-10-28 23:44:09,590.590 INFO    ] 200
[2026-10-28 23:44:09,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:44:09,633.633 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:44:09,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:44:09,712.712 INFO    ] No camera update needed
[2026-10-28 23:44:09,714.714 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:44:09,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:44:09,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:44:09,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:44:11,767.767 INFO    ] ================================================
[2026-10-28 23:44:11,781.781 INFO    ] Launching Daemon at Wed Oct 28 23:44:11 IST 2026
[2026-10-28 23:44:11,792.792 INFO    ] ================================================
[2026-10-28 23:44:12,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:44:12
[2026-10-28 23:44:13,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:44:13,288.288 INFO    ] Initializing speech engine...
[2026-10-28 23:44:13,302.302 INFO    ] 2026-10-28 23:44:13
[2026-10-28 23:44:13,617.617 INFO    ] 2026-10-28 23:44:13
[2026-10-28 23:44:13,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:44:13,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:44:13,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:44:14,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:44:14,189.189 INFO    ] time= 28/10/2026 23:44:14
[2026-10-28 23:44:14,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:44:14,287.287 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:44:14,445.445 INFO    ] No existing commands found in stream
[2026-10-28 23:44:19,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:44:19,472.472 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-28 23:44:20,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:44:20,369.369 INFO    ] Checking for system updates...
[2026-10-28 23:44:20,405.405 INFO    ] 200
[2026-10-28 23:44:20,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:44:20,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:44:20,462.462 INFO    ] No update needed
[2026-10-28 23:44:20,465.465 INFO    ] Checking for camera pi updates...
[2026-10-28 23:44:20,498.498 INFO    ] 200
[2026-10-28 23:44:20,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:44:20,543.543 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:44:20,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:44:20,629.629 INFO    ] No camera update needed
[2026-10-28 23:44:20,632.632 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:44:20,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:44:20,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:44:20,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:44:22,686.686 INFO    ] ================================================
[2026-10-28 23:44:22,701.701 INFO    ] Launching Daemon at Wed Oct 28 23:44:22 IST 2026
[2026-10-28 23:44:22,712.712 INFO    ] ================================================
[2026-10-28 23:44:23,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:44:23
[2026-10-28 23:44:23,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:44:24,185.185 INFO    ] Initializing speech engine...
[2026-10-28 23:44:24,194.194 INFO    ] 2026-10-28 23:44:24
[2026-10-28 23:44:24,447.447 INFO    ] 2026-10-28 23:44:24
[2026-10-28 23:44:24,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:44:24,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:44:24,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:44:24,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:44:25,018.018 INFO    ] time= 28/10/2026 23:44:25
[2026-10-28 23:44:25,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:44:25,043.043 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:44:25,164.164 INFO    ] No existing commands found in stream
[2026-10-28 23:44:30,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:44:30,188.188 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-10-28 23:44:33,069.069 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:44:33,071.071 INFO    ] Checking for system updates...
[2026-10-28 23:44:33,106.106 INFO    ] 200
[2026-10-28 23:44:33,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:44:33,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:44:33,163.163 INFO    ] No update needed
[2026-10-28 23:44:33,166.166 INFO    ] Checking for camera pi updates...
[2026-10-28 23:44:33,204.204 INFO    ] 200
[2026-10-28 23:44:33,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:44:33,246.246 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:44:33,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:44:33,301.301 INFO    ] No camera update needed
[2026-10-28 23:44:33,304.304 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:44:33,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:44:33,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:44:33,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:44:35,358.358 INFO    ] ================================================
[2026-10-28 23:44:35,375.375 INFO    ] Launching Daemon at Wed Oct 28 23:44:35 IST 2026
[2026-10-28 23:44:35,386.386 INFO    ] ================================================
[2026-10-28 23:44:35,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:44:35
[2026-10-28 23:44:36,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:44:36,848.848 INFO    ] Initializing speech engine...
[2026-10-28 23:44:36,855.855 INFO    ] 2026-10-28 23:44:36
[2026-10-28 23:44:37,116.116 INFO    ] 2026-10-28 23:44:37
[2026-10-28 23:44:37,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:44:37,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:44:37,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:44:37,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:44:37,663.663 INFO    ] time= 28/10/2026 23:44:37
[2026-10-28 23:44:37,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:44:37,703.703 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:44:37,817.817 INFO    ] No existing commands found in stream
[2026-10-28 23:44:42,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:44:42,840.840 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-10-28 23:44:44,844.844 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:44:44,847.847 INFO    ] Checking for system updates...
[2026-10-28 23:44:44,883.883 INFO    ] 200
[2026-10-28 23:44:44,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:44:44,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:44:44,946.946 INFO    ] No update needed
[2026-10-28 23:44:44,949.949 INFO    ] Checking for camera pi updates...
[2026-10-28 23:44:44,986.986 INFO    ] 200
[2026-10-28 23:44:44,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:44:45,029.029 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:44:45,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:44:45,113.113 INFO    ] No camera update needed
[2026-10-28 23:44:45,115.115 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:44:45,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:44:45,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:44:45,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:44:47,167.167 INFO    ] ================================================
[2026-10-28 23:44:47,182.182 INFO    ] Launching Daemon at Wed Oct 28 23:44:47 IST 2026
[2026-10-28 23:44:47,193.193 INFO    ] ================================================
[2026-10-28 23:44:47,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:44:47
[2026-10-28 23:44:48,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:44:48,725.725 INFO    ] Initializing speech engine...
[2026-10-28 23:44:48,730.730 INFO    ] 2026-10-28 23:44:48
[2026-10-28 23:44:48,978.978 INFO    ] 2026-10-28 23:44:48
[2026-10-28 23:44:49,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:44:49,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:44:49,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:44:49,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:44:49,550.550 INFO    ] time= 28/10/2026 23:44:49
[2026-10-28 23:44:49,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:44:49,591.591 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:44:49,708.708 INFO    ] No existing commands found in stream
[2026-10-28 23:44:54,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:44:54,735.735 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-10-28 23:44:55,533.533 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:44:55,536.536 INFO    ] Checking for system updates...
[2026-10-28 23:44:55,576.576 INFO    ] 200
[2026-10-28 23:44:55,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:44:55,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:44:55,635.635 INFO    ] No update needed
[2026-10-28 23:44:55,637.637 INFO    ] Checking for camera pi updates...
[2026-10-28 23:44:55,671.671 INFO    ] 200
[2026-10-28 23:44:55,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:44:55,718.718 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:44:55,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:44:55,796.796 INFO    ] No camera update needed
[2026-10-28 23:44:55,798.798 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:44:55,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:44:55,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:44:55,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:44:57,851.851 INFO    ] ================================================
[2026-10-28 23:44:57,866.866 INFO    ] Launching Daemon at Wed Oct 28 23:44:57 IST 2026
[2026-10-28 23:44:57,877.877 INFO    ] ================================================
[2026-10-28 23:44:58,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:44:58
[2026-10-28 23:44:59,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:44:59,320.320 INFO    ] Initializing speech engine...
[2026-10-28 23:44:59,339.339 INFO    ] 2026-10-28 23:44:59
[2026-10-28 23:44:59,617.617 INFO    ] 2026-10-28 23:44:59
[2026-10-28 23:44:59,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:44:59,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:44:59,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:45:00,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:45:00,132.132 INFO    ] time= 28/10/2026 23:45:00
[2026-10-28 23:45:00,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:45:00,236.236 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:45:00,330.330 INFO    ] No existing commands found in stream
[2026-10-28 23:45:05,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:45:05,345.345 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-10-28 23:45:06,645.645 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:45:06,648.648 INFO    ] Checking for system updates...
[2026-10-28 23:45:06,684.684 INFO    ] 200
[2026-10-28 23:45:06,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:45:06,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:45:06,740.740 INFO    ] No update needed
[2026-10-28 23:45:06,743.743 INFO    ] Checking for camera pi updates...
[2026-10-28 23:45:06,777.777 INFO    ] 200
[2026-10-28 23:45:06,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:45:06,829.829 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:45:06,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:45:06,914.914 INFO    ] No camera update needed
[2026-10-28 23:45:06,917.917 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:45:06,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:45:06,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:45:06,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:45:08,970.970 INFO    ] ================================================
[2026-10-28 23:45:08,985.985 INFO    ] Launching Daemon at Wed Oct 28 23:45:08 IST 2026
[2026-10-28 23:45:09,996.996 INFO    ] ================================================
[2026-10-28 23:45:09,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:45:09
[2026-10-28 23:45:10,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:45:10,645.645 INFO    ] Initializing speech engine...
[2026-10-28 23:45:10,654.654 INFO    ] 2026-10-28 23:45:10
[2026-10-28 23:45:10,944.944 INFO    ] 2026-10-28 23:45:10
[2026-10-28 23:45:10,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:45:11,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:45:11,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:45:11,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:45:11,498.498 INFO    ] time= 28/10/2026 23:45:11
[2026-10-28 23:45:11,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:45:11,535.535 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:45:11,637.637 INFO    ] No existing commands found in stream
[2026-10-28 23:45:16,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:45:16,670.670 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-10-28 23:45:20,367.367 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:45:20,370.370 INFO    ] Checking for system updates...
[2026-10-28 23:45:20,408.408 INFO    ] 200
[2026-10-28 23:45:20,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:45:20,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:45:20,467.467 INFO    ] No update needed
[2026-10-28 23:45:20,470.470 INFO    ] Checking for camera pi updates...
[2026-10-28 23:45:20,508.508 INFO    ] 200
[2026-10-28 23:45:20,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:45:20,570.570 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:45:20,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:45:20,659.659 INFO    ] No camera update needed
[2026-10-28 23:45:20,661.661 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:45:20,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:45:20,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:45:20,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:45:22,718.718 INFO    ] ================================================
[2026-10-28 23:45:22,734.734 INFO    ] Launching Daemon at Wed Oct 28 23:45:22 IST 2026
[2026-10-28 23:45:22,744.744 INFO    ] ================================================
[2026-10-28 23:45:23,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:45:23
[2026-10-28 23:45:24,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:45:24,385.385 INFO    ] Initializing speech engine...
[2026-10-28 23:45:24,400.400 INFO    ] 2026-10-28 23:45:24
[2026-10-28 23:45:24,685.685 INFO    ] 2026-10-28 23:45:24
[2026-10-28 23:45:24,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:45:25,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:45:25,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:45:25,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:45:25,254.254 INFO    ] time= 28/10/2026 23:45:25
[2026-10-28 23:45:25,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:45:25,288.288 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:45:25,429.429 INFO    ] No existing commands found in stream
[2026-10-28 23:45:30,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:45:30,464.464 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-10-28 23:45:37,178.178 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:45:37,181.181 INFO    ] Checking for system updates...
[2026-10-28 23:45:37,225.225 INFO    ] 200
[2026-10-28 23:45:37,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:45:37,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:45:37,296.296 INFO    ] No update needed
[2026-10-28 23:45:37,299.299 INFO    ] Checking for camera pi updates...
[2026-10-28 23:45:37,341.341 INFO    ] 200
[2026-10-28 23:45:37,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:45:37,396.396 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:45:37,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:45:37,495.495 INFO    ] No camera update needed
[2026-10-28 23:45:37,498.498 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:45:37,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:45:37,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:45:37,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:45:39,561.561 INFO    ] ================================================
[2026-10-28 23:45:39,579.579 INFO    ] Launching Daemon at Wed Oct 28 23:45:39 IST 2026
[2026-10-28 23:45:39,591.591 INFO    ] ================================================
[2026-10-28 23:45:40,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:45:40
[2026-10-28 23:45:40,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:45:41,069.069 INFO    ] Initializing speech engine...
[2026-10-28 23:45:41,092.092 INFO    ] 2026-10-28 23:45:41
[2026-10-28 23:45:41,362.362 INFO    ] 2026-10-28 23:45:41
[2026-10-28 23:45:41,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:45:41,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:45:41,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:45:41,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:45:41,943.943 INFO    ] time= 28/10/2026 23:45:41
[2026-10-28 23:45:41,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:45:41,985.985 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:45:42,120.120 INFO    ] No existing commands found in stream
[2026-10-28 23:45:47,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:45:47,148.148 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-10-28 23:45:48,248.248 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:45:48,250.250 INFO    ] Checking for system updates...
[2026-10-28 23:45:48,289.289 INFO    ] 200
[2026-10-28 23:45:48,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:45:48,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:45:48,346.346 INFO    ] No update needed
[2026-10-28 23:45:48,348.348 INFO    ] Checking for camera pi updates...
[2026-10-28 23:45:48,382.382 INFO    ] 200
[2026-10-28 23:45:48,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:45:48,425.425 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:45:48,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:45:48,504.504 INFO    ] No camera update needed
[2026-10-28 23:45:48,506.506 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:45:48,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:45:48,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:45:48,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:45:50,560.560 INFO    ] ================================================
[2026-10-28 23:45:50,576.576 INFO    ] Launching Daemon at Wed Oct 28 23:45:50 IST 2026
[2026-10-28 23:45:50,588.588 INFO    ] ================================================
[2026-10-28 23:45:51,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:45:51
[2026-10-28 23:45:51,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:45:52,031.031 INFO    ] Initializing speech engine...
[2026-10-28 23:45:52,039.039 INFO    ] 2026-10-28 23:45:52
[2026-10-28 23:45:52,337.337 INFO    ] 2026-10-28 23:45:52
[2026-10-28 23:45:52,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:45:52,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:45:52,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:45:52,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:45:52,978.978 INFO    ] time= 28/10/2026 23:45:52
[2026-10-28 23:45:52,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:45:53,005.005 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:45:53,153.153 INFO    ] No existing commands found in stream
[2026-10-28 23:45:58,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:45:58,168.168 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-10-28 23:46:00,886.886 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:46:00,888.888 INFO    ] Checking for system updates...
[2026-10-28 23:46:00,928.928 INFO    ] 200
[2026-10-28 23:46:00,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:46:00,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:46:00,986.986 INFO    ] No update needed
[2026-10-28 23:46:00,988.988 INFO    ] Checking for camera pi updates...
[2026-10-28 23:46:01,021.021 INFO    ] 200
[2026-10-28 23:46:01,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:46:01,065.065 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:46:01,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:46:01,316.316 INFO    ] No camera update needed
[2026-10-28 23:46:01,319.319 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:46:01,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:46:01,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:46:01,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:46:03,375.375 INFO    ] ================================================
[2026-10-28 23:46:03,390.390 INFO    ] Launching Daemon at Wed Oct 28 23:46:03 IST 2026
[2026-10-28 23:46:03,401.401 INFO    ] ================================================
[2026-10-28 23:46:04,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:46:04
[2026-10-28 23:46:04,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:46:04,859.859 INFO    ] Initializing speech engine...
[2026-10-28 23:46:04,872.872 INFO    ] 2026-10-28 23:46:04
[2026-10-28 23:46:05,157.157 INFO    ] 2026-10-28 23:46:05
[2026-10-28 23:46:05,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:46:05,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:46:05,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:46:05,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:46:05,684.684 INFO    ] time= 28/10/2026 23:46:05
[2026-10-28 23:46:05,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:46:05,806.806 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:46:05,977.977 INFO    ] No existing commands found in stream
[2026-10-28 23:46:11,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:46:11,006.006 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-10-28 23:46:12,525.525 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:46:12,528.528 INFO    ] Checking for system updates...
[2026-10-28 23:46:12,568.568 INFO    ] 200
[2026-10-28 23:46:12,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:46:12,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:46:12,626.626 INFO    ] No update needed
[2026-10-28 23:46:12,629.629 INFO    ] Checking for camera pi updates...
[2026-10-28 23:46:12,662.662 INFO    ] 200
[2026-10-28 23:46:12,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:46:12,706.706 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:46:12,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:46:12,783.783 INFO    ] No camera update needed
[2026-10-28 23:46:12,786.786 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:46:12,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:46:12,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:46:12,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:46:14,839.839 INFO    ] ================================================
[2026-10-28 23:46:14,854.854 INFO    ] Launching Daemon at Wed Oct 28 23:46:14 IST 2026
[2026-10-28 23:46:14,865.865 INFO    ] ================================================
[2026-10-28 23:46:15,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:46:15
[2026-10-28 23:46:16,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:46:16,299.299 INFO    ] Initializing speech engine...
[2026-10-28 23:46:16,306.306 INFO    ] 2026-10-28 23:46:16
[2026-10-28 23:46:16,609.609 INFO    ] 2026-10-28 23:46:16
[2026-10-28 23:46:16,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:46:16,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:46:16,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:46:17,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:46:17,107.107 INFO    ] time= 28/10/2026 23:46:17
[2026-10-28 23:46:17,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:46:17,193.193 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:46:17,319.319 INFO    ] No existing commands found in stream
[2026-10-28 23:46:22,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:46:22,334.334 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 23:46:24,990.990 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:46:24,993.993 INFO    ] Checking for system updates...
[2026-10-28 23:46:25,033.033 INFO    ] 200
[2026-10-28 23:46:25,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:46:25,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:46:25,091.091 INFO    ] No update needed
[2026-10-28 23:46:25,097.097 INFO    ] Checking for camera pi updates...
[2026-10-28 23:46:25,131.131 INFO    ] 200
[2026-10-28 23:46:25,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:46:25,173.173 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:46:25,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:46:25,256.256 INFO    ] No camera update needed
[2026-10-28 23:46:25,258.258 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:46:25,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:46:25,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:46:25,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:46:27,310.310 INFO    ] ================================================
[2026-10-28 23:46:27,325.325 INFO    ] Launching Daemon at Wed Oct 28 23:46:27 IST 2026
[2026-10-28 23:46:27,336.336 INFO    ] ================================================
[2026-10-28 23:46:27,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:46:27
[2026-10-28 23:46:28,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:46:28,787.787 INFO    ] Initializing speech engine...
[2026-10-28 23:46:28,796.796 INFO    ] 2026-10-28 23:46:28
[2026-10-28 23:46:29,047.047 INFO    ] 2026-10-28 23:46:29
[2026-10-28 23:46:29,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:46:29,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:46:29,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:46:29,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:46:29,769.769 INFO    ] time= 28/10/2026 23:46:29
[2026-10-28 23:46:29,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:46:29,861.861 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:46:30,007.007 INFO    ] No existing commands found in stream
[2026-10-28 23:46:35,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:46:35,024.024 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-10-28 23:46:37,648.648 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:46:37,652.652 INFO    ] Checking for system updates...
[2026-10-28 23:46:37,689.689 INFO    ] 200
[2026-10-28 23:46:37,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:46:37,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:46:37,756.756 INFO    ] No update needed
[2026-10-28 23:46:37,759.759 INFO    ] Checking for camera pi updates...
[2026-10-28 23:46:37,798.798 INFO    ] 200
[2026-10-28 23:46:37,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:46:37,849.849 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:46:37,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:46:37,932.932 INFO    ] No camera update needed
[2026-10-28 23:46:37,935.935 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:46:37,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:46:37,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:46:37,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:46:39,991.991 INFO    ] ================================================
[2026-10-28 23:46:40,006.006 INFO    ] Launching Daemon at Wed Oct 28 23:46:40 IST 2026
[2026-10-28 23:46:40,016.016 INFO    ] ================================================
[2026-10-28 23:46:40,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:46:40
[2026-10-28 23:46:41,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:46:41,545.545 INFO    ] Initializing speech engine...
[2026-10-28 23:46:41,552.552 INFO    ] 2026-10-28 23:46:41
[2026-10-28 23:46:41,843.843 INFO    ] 2026-10-28 23:46:41
[2026-10-28 23:46:41,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:46:42,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:46:42,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:46:42,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:46:42,543.543 INFO    ] time= 28/10/2026 23:46:42
[2026-10-28 23:46:42,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:46:42,632.632 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:46:42,812.812 INFO    ] No existing commands found in stream
[2026-10-28 23:46:47,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:46:47,827.827 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-10-28 23:46:49,888.888 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:46:49,891.891 INFO    ] Checking for system updates...
[2026-10-28 23:46:49,933.933 INFO    ] 200
[2026-10-28 23:46:49,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:46:49,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:46:50,000.000 INFO    ] No update needed
[2026-10-28 23:46:50,004.004 INFO    ] Checking for camera pi updates...
[2026-10-28 23:46:50,038.038 INFO    ] 200
[2026-10-28 23:46:50,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:46:50,082.082 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:46:50,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:46:50,168.168 INFO    ] No camera update needed
[2026-10-28 23:46:50,171.171 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:46:50,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:46:50,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:46:50,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:46:52,229.229 INFO    ] ================================================
[2026-10-28 23:46:52,246.246 INFO    ] Launching Daemon at Wed Oct 28 23:46:52 IST 2026
[2026-10-28 23:46:52,257.257 INFO    ] ================================================
[2026-10-28 23:46:52,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:46:52
[2026-10-28 23:46:53,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:46:53,673.673 INFO    ] Initializing speech engine...
[2026-10-28 23:46:53,682.682 INFO    ] 2026-10-28 23:46:53
[2026-10-28 23:46:53,927.927 INFO    ] 2026-10-28 23:46:53
[2026-10-28 23:46:53,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:46:54,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:46:54,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:46:54,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:46:54,491.491 INFO    ] time= 28/10/2026 23:46:54
[2026-10-28 23:46:54,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:46:54,526.526 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:46:54,683.683 INFO    ] No existing commands found in stream
[2026-10-28 23:46:59,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:46:59,717.717 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 23:47:02,067.067 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:47:02,071.071 INFO    ] Checking for system updates...
[2026-10-28 23:47:02,133.133 INFO    ] 200
[2026-10-28 23:47:02,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:47:02,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:47:02,265.265 INFO    ] No update needed
[2026-10-28 23:47:02,269.269 INFO    ] Checking for camera pi updates...
[2026-10-28 23:47:02,311.311 INFO    ] 200
[2026-10-28 23:47:02,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:47:02,365.365 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:47:02,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:47:02,486.486 INFO    ] No camera update needed
[2026-10-28 23:47:02,488.488 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:47:02,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:47:02,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:47:02,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:47:04,547.547 INFO    ] ================================================
[2026-10-28 23:47:04,562.562 INFO    ] Launching Daemon at Wed Oct 28 23:47:04 IST 2026
[2026-10-28 23:47:04,573.573 INFO    ] ================================================
[2026-10-28 23:47:05,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:47:05
[2026-10-28 23:47:05,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:47:06,038.038 INFO    ] Initializing speech engine...
[2026-10-28 23:47:06,048.048 INFO    ] 2026-10-28 23:47:06
[2026-10-28 23:47:06,318.318 INFO    ] 2026-10-28 23:47:06
[2026-10-28 23:47:06,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:47:06,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:47:06,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:47:06,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:47:06,908.908 INFO    ] time= 28/10/2026 23:47:06
[2026-10-28 23:47:06,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:47:06,951.951 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:47:07,085.085 INFO    ] No existing commands found in stream
[2026-10-28 23:47:12,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:47:12,118.118 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-28 23:47:13,942.942 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:47:13,945.945 INFO    ] Checking for system updates...
[2026-10-28 23:47:13,981.981 INFO    ] 200
[2026-10-28 23:47:13,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:47:14,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:47:14,039.039 INFO    ] No update needed
[2026-10-28 23:47:14,041.041 INFO    ] Checking for camera pi updates...
[2026-10-28 23:47:14,077.077 INFO    ] 200
[2026-10-28 23:47:14,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:47:14,124.124 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:47:14,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:47:14,213.213 INFO    ] No camera update needed
[2026-10-28 23:47:14,215.215 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:47:14,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:47:14,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:47:14,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:47:16,267.267 INFO    ] ================================================
[2026-10-28 23:47:16,282.282 INFO    ] Launching Daemon at Wed Oct 28 23:47:16 IST 2026
[2026-10-28 23:47:16,296.296 INFO    ] ================================================
[2026-10-28 23:47:16,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:47:16
[2026-10-28 23:47:17,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:47:17,901.901 INFO    ] Initializing speech engine...
[2026-10-28 23:47:17,910.910 INFO    ] 2026-10-28 23:47:17
[2026-10-28 23:47:18,178.178 INFO    ] 2026-10-28 23:47:18
[2026-10-28 23:47:18,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:47:18,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:47:18,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:47:18,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:47:18,764.764 INFO    ] time= 28/10/2026 23:47:18
[2026-10-28 23:47:18,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:47:18,800.800 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:47:18,954.954 INFO    ] No existing commands found in stream
[2026-10-28 23:47:23,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:47:23,988.988 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-10-28 23:47:27,149.149 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:47:27,152.152 INFO    ] Checking for system updates...
[2026-10-28 23:47:27,189.189 INFO    ] 200
[2026-10-28 23:47:27,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:47:27,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:47:27,246.246 INFO    ] No update needed
[2026-10-28 23:47:27,249.249 INFO    ] Checking for camera pi updates...
[2026-10-28 23:47:27,282.282 INFO    ] 200
[2026-10-28 23:47:27,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:47:27,329.329 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:47:27,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:47:27,405.405 INFO    ] No camera update needed
[2026-10-28 23:47:27,407.407 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:47:27,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:47:27,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:47:27,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:47:29,462.462 INFO    ] ================================================
[2026-10-28 23:47:29,476.476 INFO    ] Launching Daemon at Wed Oct 28 23:47:29 IST 2026
[2026-10-28 23:47:29,487.487 INFO    ] ================================================
[2026-10-28 23:47:30,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:47:30
[2026-10-28 23:47:30,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:47:30,901.901 INFO    ] Initializing speech engine...
[2026-10-28 23:47:30,915.915 INFO    ] 2026-10-28 23:47:30
[2026-10-28 23:47:31,179.179 INFO    ] 2026-10-28 23:47:31
[2026-10-28 23:47:31,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:47:31,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:47:31,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:47:31,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:47:31,746.746 INFO    ] time= 28/10/2026 23:47:31
[2026-10-28 23:47:31,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:47:31,772.772 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:47:31,900.900 INFO    ] No existing commands found in stream
[2026-10-28 23:47:36,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:47:36,919.919 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-10-28 23:47:39,766.766 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:47:39,769.769 INFO    ] Checking for system updates...
[2026-10-28 23:47:39,807.807 INFO    ] 200
[2026-10-28 23:47:39,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:47:39,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:47:39,864.864 INFO    ] No update needed
[2026-10-28 23:47:39,866.866 INFO    ] Checking for camera pi updates...
[2026-10-28 23:47:39,906.906 INFO    ] 200
[2026-10-28 23:47:39,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:47:39,953.953 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:47:40,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:47:40,032.032 INFO    ] No camera update needed
[2026-10-28 23:47:40,035.035 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:47:40,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:47:40,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:47:40,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:47:42,090.090 INFO    ] ================================================
[2026-10-28 23:47:42,106.106 INFO    ] Launching Daemon at Wed Oct 28 23:47:42 IST 2026
[2026-10-28 23:47:42,118.118 INFO    ] ================================================
[2026-10-28 23:47:42,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:47:42
[2026-10-28 23:47:43,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:47:43,628.628 INFO    ] Initializing speech engine...
[2026-10-28 23:47:43,645.645 INFO    ] 2026-10-28 23:47:43
[2026-10-28 23:47:43,946.946 INFO    ] 2026-10-28 23:47:43
[2026-10-28 23:47:43,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:47:44,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:47:44,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:47:44,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:47:44,381.381 INFO    ] time= 28/10/2026 23:47:44
[2026-10-28 23:47:44,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:47:44,449.449 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:47:44,575.575 INFO    ] No existing commands found in stream
[2026-10-28 23:47:49,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:47:49,590.590 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-10-28 23:47:50,379.379 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:47:50,381.381 INFO    ] Checking for system updates...
[2026-10-28 23:47:50,417.417 INFO    ] 200
[2026-10-28 23:47:50,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:47:50,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:47:50,475.475 INFO    ] No update needed
[2026-10-28 23:47:50,477.477 INFO    ] Checking for camera pi updates...
[2026-10-28 23:47:50,514.514 INFO    ] 200
[2026-10-28 23:47:50,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:47:50,557.557 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:47:50,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:47:50,637.637 INFO    ] No camera update needed
[2026-10-28 23:47:50,640.640 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:47:50,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:47:50,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:47:50,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:47:52,693.693 INFO    ] ================================================
[2026-10-28 23:47:52,709.709 INFO    ] Launching Daemon at Wed Oct 28 23:47:52 IST 2026
[2026-10-28 23:47:52,719.719 INFO    ] ================================================
[2026-10-28 23:47:53,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:47:53
[2026-10-28 23:47:53,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:47:54,159.159 INFO    ] Initializing speech engine...
[2026-10-28 23:47:54,172.172 INFO    ] 2026-10-28 23:47:54
[2026-10-28 23:47:54,459.459 INFO    ] 2026-10-28 23:47:54
[2026-10-28 23:47:54,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:47:54,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:47:54,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:47:55,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:47:55,092.092 INFO    ] time= 28/10/2026 23:47:55
[2026-10-28 23:47:55,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:47:55,123.123 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:47:55,277.277 INFO    ] No existing commands found in stream
[2026-10-28 23:48:00,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:48:00,296.296 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-10-28 23:48:02,812.812 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:48:02,815.815 INFO    ] Checking for system updates...
[2026-10-28 23:48:02,861.861 INFO    ] 200
[2026-10-28 23:48:02,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:48:02,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:48:02,919.919 INFO    ] No update needed
[2026-10-28 23:48:02,921.921 INFO    ] Checking for camera pi updates...
[2026-10-28 23:48:02,958.958 INFO    ] 200
[2026-10-28 23:48:02,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:48:03,009.009 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:48:03,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:48:03,116.116 INFO    ] No camera update needed
[2026-10-28 23:48:03,119.119 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:48:03,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:48:03,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:48:03,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:48:05,177.177 INFO    ] ================================================
[2026-10-28 23:48:05,191.191 INFO    ] Launching Daemon at Wed Oct 28 23:48:05 IST 2026
[2026-10-28 23:48:05,203.203 INFO    ] ================================================
[2026-10-28 23:48:05,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:48:05
[2026-10-28 23:48:06,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:48:06,653.653 INFO    ] Initializing speech engine...
[2026-10-28 23:48:06,668.668 INFO    ] 2026-10-28 23:48:06
[2026-10-28 23:48:06,959.959 INFO    ] 2026-10-28 23:48:06
[2026-10-28 23:48:06,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:48:07,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:48:07,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:48:07,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:48:07,472.472 INFO    ] time= 28/10/2026 23:48:07
[2026-10-28 23:48:07,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:48:07,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:48:07,731.731 INFO    ] No existing commands found in stream
[2026-10-28 23:48:12,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:48:12,752.752 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-10-28 23:48:15,113.113 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:48:15,116.116 INFO    ] Checking for system updates...
[2026-10-28 23:48:15,152.152 INFO    ] 200
[2026-10-28 23:48:15,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:48:15,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:48:15,208.208 INFO    ] No update needed
[2026-10-28 23:48:15,211.211 INFO    ] Checking for camera pi updates...
[2026-10-28 23:48:15,250.250 INFO    ] 200
[2026-10-28 23:48:15,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:48:15,293.293 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:48:15,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:48:15,475.475 INFO    ] No camera update needed
[2026-10-28 23:48:15,478.478 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:48:15,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:48:15,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:48:15,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:48:17,531.531 INFO    ] ================================================
[2026-10-28 23:48:17,546.546 INFO    ] Launching Daemon at Wed Oct 28 23:48:17 IST 2026
[2026-10-28 23:48:17,556.556 INFO    ] ================================================
[2026-10-28 23:48:18,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:48:18
[2026-10-28 23:48:18,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:48:19,192.192 INFO    ] Initializing speech engine...
[2026-10-28 23:48:19,201.201 INFO    ] 2026-10-28 23:48:19
[2026-10-28 23:48:19,492.492 INFO    ] 2026-10-28 23:48:19
[2026-10-28 23:48:19,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:48:19,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:48:19,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:48:20,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:48:20,227.227 INFO    ] time= 28/10/2026 23:48:20
[2026-10-28 23:48:20,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:48:20,341.341 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:48:20,459.459 INFO    ] No existing commands found in stream
[2026-10-28 23:48:25,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:48:25,478.478 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-10-28 23:48:27,426.426 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:48:27,429.429 INFO    ] Checking for system updates...
[2026-10-28 23:48:27,466.466 INFO    ] 200
[2026-10-28 23:48:27,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:48:27,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:48:27,526.526 INFO    ] No update needed
[2026-10-28 23:48:27,529.529 INFO    ] Checking for camera pi updates...
[2026-10-28 23:48:27,564.564 INFO    ] 200
[2026-10-28 23:48:27,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:48:27,607.607 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:48:27,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:48:27,689.689 INFO    ] No camera update needed
[2026-10-28 23:48:27,692.692 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:48:27,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:48:27,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:48:27,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:48:29,744.744 INFO    ] ================================================
[2026-10-28 23:48:29,759.759 INFO    ] Launching Daemon at Wed Oct 28 23:48:29 IST 2026
[2026-10-28 23:48:29,770.770 INFO    ] ================================================
[2026-10-28 23:48:30,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:48:30
[2026-10-28 23:48:30,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:48:31,212.212 INFO    ] Initializing speech engine...
[2026-10-28 23:48:31,220.220 INFO    ] 2026-10-28 23:48:31
[2026-10-28 23:48:31,488.488 INFO    ] 2026-10-28 23:48:31
[2026-10-28 23:48:31,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:48:31,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:48:31,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:48:32,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:48:32,108.108 INFO    ] time= 28/10/2026 23:48:32
[2026-10-28 23:48:32,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:48:32,152.152 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:48:32,305.305 INFO    ] No existing commands found in stream
[2026-10-28 23:48:37,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:48:37,339.339 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 23:48:41,352.352 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:48:41,354.354 INFO    ] Checking for system updates...
[2026-10-28 23:48:41,390.390 INFO    ] 200
[2026-10-28 23:48:41,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:48:41,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:48:41,454.454 INFO    ] No update needed
[2026-10-28 23:48:41,457.457 INFO    ] Checking for camera pi updates...
[2026-10-28 23:48:41,490.490 INFO    ] 200
[2026-10-28 23:48:41,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:48:41,552.552 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:48:41,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:48:41,604.604 INFO    ] No camera update needed
[2026-10-28 23:48:41,607.607 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:48:41,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:48:41,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:48:41,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:48:43,660.660 INFO    ] ================================================
[2026-10-28 23:48:43,675.675 INFO    ] Launching Daemon at Wed Oct 28 23:48:43 IST 2026
[2026-10-28 23:48:43,686.686 INFO    ] ================================================
[2026-10-28 23:48:44,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:48:44
[2026-10-28 23:48:44,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:48:45,086.086 INFO    ] Initializing speech engine...
[2026-10-28 23:48:45,100.100 INFO    ] 2026-10-28 23:48:45
[2026-10-28 23:48:45,365.365 INFO    ] 2026-10-28 23:48:45
[2026-10-28 23:48:45,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:48:45,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:48:45,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:48:45,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:48:45,933.933 INFO    ] time= 28/10/2026 23:48:45
[2026-10-28 23:48:45,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:48:45,957.957 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:48:46,087.087 INFO    ] No existing commands found in stream
[2026-10-28 23:48:51,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:48:51,103.103 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-10-28 23:48:53,505.505 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:48:53,507.507 INFO    ] Checking for system updates...
[2026-10-28 23:48:53,543.543 INFO    ] 200
[2026-10-28 23:48:53,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:48:53,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:48:53,601.601 INFO    ] No update needed
[2026-10-28 23:48:53,603.603 INFO    ] Checking for camera pi updates...
[2026-10-28 23:48:53,636.636 INFO    ] 200
[2026-10-28 23:48:53,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:48:53,678.678 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:48:53,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:48:53,778.778 INFO    ] No camera update needed
[2026-10-28 23:48:53,780.780 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:48:53,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:48:53,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:48:53,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:48:55,834.834 INFO    ] ================================================
[2026-10-28 23:48:55,849.849 INFO    ] Launching Daemon at Wed Oct 28 23:48:55 IST 2026
[2026-10-28 23:48:55,860.860 INFO    ] ================================================
[2026-10-28 23:48:56,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:48:56
[2026-10-28 23:48:57,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:48:57,511.511 INFO    ] Initializing speech engine...
[2026-10-28 23:48:57,525.525 INFO    ] 2026-10-28 23:48:57
[2026-10-28 23:48:57,810.810 INFO    ] 2026-10-28 23:48:57
[2026-10-28 23:48:57,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:48:58,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:48:58,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:48:58,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:48:58,360.360 INFO    ] time= 28/10/2026 23:48:58
[2026-10-28 23:48:58,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:48:58,409.409 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:48:58,549.549 INFO    ] No existing commands found in stream
[2026-10-28 23:49:03,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:49:03,578.578 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-10-28 23:49:06,209.209 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:49:06,212.212 INFO    ] Checking for system updates...
[2026-10-28 23:49:06,249.249 INFO    ] 200
[2026-10-28 23:49:06,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:49:06,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:49:06,308.308 INFO    ] No update needed
[2026-10-28 23:49:06,310.310 INFO    ] Checking for camera pi updates...
[2026-10-28 23:49:06,343.343 INFO    ] 200
[2026-10-28 23:49:06,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:49:06,386.386 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:49:06,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:49:06,468.468 INFO    ] No camera update needed
[2026-10-28 23:49:06,470.470 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:49:06,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:49:06,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:49:06,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:49:08,522.522 INFO    ] ================================================
[2026-10-28 23:49:08,538.538 INFO    ] Launching Daemon at Wed Oct 28 23:49:08 IST 2026
[2026-10-28 23:49:08,548.548 INFO    ] ================================================
[2026-10-28 23:49:09,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:49:09
[2026-10-28 23:49:09,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:49:09,969.969 INFO    ] Initializing speech engine...
[2026-10-28 23:49:09,978.978 INFO    ] 2026-10-28 23:49:09
[2026-10-28 23:49:10,230.230 INFO    ] 2026-10-28 23:49:10
[2026-10-28 23:49:10,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:49:10,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:49:10,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:49:10,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:49:10,795.795 INFO    ] time= 28/10/2026 23:49:10
[2026-10-28 23:49:10,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:49:10,819.819 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:49:10,971.971 INFO    ] No existing commands found in stream
[2026-10-28 23:49:15,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:49:15,999.999 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 23:49:19,073.073 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:49:19,075.075 INFO    ] Checking for system updates...
[2026-10-28 23:49:19,115.115 INFO    ] 200
[2026-10-28 23:49:19,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:49:19,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:49:19,172.172 INFO    ] No update needed
[2026-10-28 23:49:19,174.174 INFO    ] Checking for camera pi updates...
[2026-10-28 23:49:19,212.212 INFO    ] 200
[2026-10-28 23:49:19,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:49:19,256.256 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:49:19,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:49:19,341.341 INFO    ] No camera update needed
[2026-10-28 23:49:19,344.344 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:49:19,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:49:19,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:49:19,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:49:21,399.399 INFO    ] ================================================
[2026-10-28 23:49:21,414.414 INFO    ] Launching Daemon at Wed Oct 28 23:49:21 IST 2026
[2026-10-28 23:49:21,426.426 INFO    ] ================================================
[2026-10-28 23:49:21,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:49:21
[2026-10-28 23:49:22,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:49:22,818.818 INFO    ] Initializing speech engine...
[2026-10-28 23:49:22,824.824 INFO    ] 2026-10-28 23:49:22
[2026-10-28 23:49:23,098.098 INFO    ] 2026-10-28 23:49:23
[2026-10-28 23:49:23,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:49:23,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:49:23,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:49:23,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:49:23,694.694 INFO    ] time= 28/10/2026 23:49:23
[2026-10-28 23:49:23,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:49:23,717.717 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:49:23,851.851 INFO    ] No existing commands found in stream
[2026-10-28 23:49:28,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:49:28,880.880 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-10-28 23:49:31,227.227 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:49:31,229.229 INFO    ] Checking for system updates...
[2026-10-28 23:49:31,266.266 INFO    ] 200
[2026-10-28 23:49:31,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:49:31,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:49:31,331.331 INFO    ] No update needed
[2026-10-28 23:49:31,335.335 INFO    ] Checking for camera pi updates...
[2026-10-28 23:49:31,375.375 INFO    ] 200
[2026-10-28 23:49:31,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:49:31,424.424 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:49:31,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:49:31,502.502 INFO    ] No camera update needed
[2026-10-28 23:49:31,505.505 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:49:31,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:49:31,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:49:31,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:49:33,562.562 INFO    ] ================================================
[2026-10-28 23:49:33,578.578 INFO    ] Launching Daemon at Wed Oct 28 23:49:33 IST 2026
[2026-10-28 23:49:33,588.588 INFO    ] ================================================
[2026-10-28 23:49:34,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:49:34
[2026-10-28 23:49:34,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:49:34,999.999 INFO    ] Initializing speech engine...
[2026-10-28 23:49:35,005.005 INFO    ] 2026-10-28 23:49:35
[2026-10-28 23:49:35,300.300 INFO    ] 2026-10-28 23:49:35
[2026-10-28 23:49:35,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:49:35,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:49:35,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:49:35,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:49:35,865.865 INFO    ] time= 28/10/2026 23:49:35
[2026-10-28 23:49:35,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:49:35,946.946 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:49:36,079.079 INFO    ] No existing commands found in stream
[2026-10-28 23:49:41,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:49:41,117.117 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-10-28 23:49:42,928.928 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:49:42,930.930 INFO    ] Checking for system updates...
[2026-10-28 23:49:42,966.966 INFO    ] 200
[2026-10-28 23:49:42,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:49:43,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:49:43,022.022 INFO    ] No update needed
[2026-10-28 23:49:43,025.025 INFO    ] Checking for camera pi updates...
[2026-10-28 23:49:43,059.059 INFO    ] 200
[2026-10-28 23:49:43,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:49:43,101.101 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:49:43,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:49:43,196.196 INFO    ] No camera update needed
[2026-10-28 23:49:43,199.199 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:49:43,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:49:43,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:49:43,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:49:45,250.250 INFO    ] ================================================
[2026-10-28 23:49:45,265.265 INFO    ] Launching Daemon at Wed Oct 28 23:49:45 IST 2026
[2026-10-28 23:49:45,275.275 INFO    ] ================================================
[2026-10-28 23:49:45,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:49:45
[2026-10-28 23:49:46,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:49:46,811.811 INFO    ] Initializing speech engine...
[2026-10-28 23:49:46,820.820 INFO    ] 2026-10-28 23:49:46
[2026-10-28 23:49:47,133.133 INFO    ] 2026-10-28 23:49:47
[2026-10-28 23:49:47,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:49:47,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:49:47,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:49:47,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:49:47,649.649 INFO    ] time= 28/10/2026 23:49:47
[2026-10-28 23:49:47,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:49:47,682.682 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:49:47,797.797 INFO    ] No existing commands found in stream
[2026-10-28 23:49:52,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:49:52,830.830 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-10-28 23:49:55,790.790 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:49:55,792.792 INFO    ] Checking for system updates...
[2026-10-28 23:49:55,828.828 INFO    ] 200
[2026-10-28 23:49:55,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:49:55,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:49:55,891.891 INFO    ] No update needed
[2026-10-28 23:49:55,894.894 INFO    ] Checking for camera pi updates...
[2026-10-28 23:49:55,927.927 INFO    ] 200
[2026-10-28 23:49:55,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:49:55,970.970 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:49:56,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:49:56,068.068 INFO    ] No camera update needed
[2026-10-28 23:49:56,070.070 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:49:56,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:49:56,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:49:56,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:49:58,124.124 INFO    ] ================================================
[2026-10-28 23:49:58,139.139 INFO    ] Launching Daemon at Wed Oct 28 23:49:58 IST 2026
[2026-10-28 23:49:58,150.150 INFO    ] ================================================
[2026-10-28 23:49:58,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:49:58
[2026-10-28 23:49:59,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:49:59,544.544 INFO    ] Initializing speech engine...
[2026-10-28 23:49:59,567.567 INFO    ] 2026-10-28 23:49:59
[2026-10-28 23:49:59,819.819 INFO    ] 2026-10-28 23:49:59
[2026-10-28 23:49:59,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:50:00,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:50:00,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:50:00,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:50:00,371.371 INFO    ] time= 28/10/2026 23:50:00
[2026-10-28 23:50:00,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:50:00,396.396 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:50:00,533.533 INFO    ] No existing commands found in stream
[2026-10-28 23:50:05,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:50:05,561.561 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-10-28 23:50:08,868.868 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:50:08,871.871 INFO    ] Checking for system updates...
[2026-10-28 23:50:08,906.906 INFO    ] 200
[2026-10-28 23:50:08,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:50:08,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:50:08,964.964 INFO    ] No update needed
[2026-10-28 23:50:08,966.966 INFO    ] Checking for camera pi updates...
[2026-10-28 23:50:08,999.999 INFO    ] 200
[2026-10-28 23:50:09,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:50:09,041.041 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:50:09,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:50:09,100.100 INFO    ] No camera update needed
[2026-10-28 23:50:09,103.103 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:50:09,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:50:09,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:50:09,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:50:11,157.157 INFO    ] ================================================
[2026-10-28 23:50:11,172.172 INFO    ] Launching Daemon at Wed Oct 28 23:50:11 IST 2026
[2026-10-28 23:50:11,183.183 INFO    ] ================================================
[2026-10-28 23:50:11,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:50:11
[2026-10-28 23:50:12,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:50:12,649.649 INFO    ] Initializing speech engine...
[2026-10-28 23:50:12,658.658 INFO    ] 2026-10-28 23:50:12
[2026-10-28 23:50:12,920.920 INFO    ] 2026-10-28 23:50:12
[2026-10-28 23:50:12,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:50:13,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:50:13,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:50:13,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:50:13,467.467 INFO    ] time= 28/10/2026 23:50:13
[2026-10-28 23:50:13,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:50:13,492.492 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:50:13,631.631 INFO    ] No existing commands found in stream
[2026-10-28 23:50:18,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:50:18,658.658 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-10-28 23:50:23,089.089 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:50:23,091.091 INFO    ] Checking for system updates...
[2026-10-28 23:50:23,127.127 INFO    ] 200
[2026-10-28 23:50:23,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:50:23,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:50:23,192.192 INFO    ] No update needed
[2026-10-28 23:50:23,195.195 INFO    ] Checking for camera pi updates...
[2026-10-28 23:50:23,229.229 INFO    ] 200
[2026-10-28 23:50:23,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:50:23,276.276 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:50:23,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:50:23,455.455 INFO    ] No camera update needed
[2026-10-28 23:50:23,458.458 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:50:23,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:50:23,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:50:23,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:50:25,511.511 INFO    ] ================================================
[2026-10-28 23:50:25,526.526 INFO    ] Launching Daemon at Wed Oct 28 23:50:25 IST 2026
[2026-10-28 23:50:25,537.537 INFO    ] ================================================
[2026-10-28 23:50:26,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:50:26
[2026-10-28 23:50:26,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:50:26,956.956 INFO    ] Initializing speech engine...
[2026-10-28 23:50:26,964.964 INFO    ] 2026-10-28 23:50:26
[2026-10-28 23:50:27,240.240 INFO    ] 2026-10-28 23:50:27
[2026-10-28 23:50:27,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:50:27,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:50:27,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:50:27,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:50:27,808.808 INFO    ] time= 28/10/2026 23:50:27
[2026-10-28 23:50:27,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:50:27,843.843 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:50:28,029.029 INFO    ] No existing commands found in stream
[2026-10-28 23:50:33,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:50:33,057.057 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-10-28 23:50:37,471.471 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:50:37,474.474 INFO    ] Checking for system updates...
[2026-10-28 23:50:37,511.511 INFO    ] 200
[2026-10-28 23:50:37,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:50:37,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:50:37,572.572 INFO    ] No update needed
[2026-10-28 23:50:37,575.575 INFO    ] Checking for camera pi updates...
[2026-10-28 23:50:37,613.613 INFO    ] 200
[2026-10-28 23:50:37,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:50:37,662.662 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:50:37,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:50:37,751.751 INFO    ] No camera update needed
[2026-10-28 23:50:37,754.754 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:50:37,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:50:37,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:50:37,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:50:39,814.814 INFO    ] ================================================
[2026-10-28 23:50:39,830.830 INFO    ] Launching Daemon at Wed Oct 28 23:50:39 IST 2026
[2026-10-28 23:50:39,840.840 INFO    ] ================================================
[2026-10-28 23:50:40,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:50:40
[2026-10-28 23:50:40,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:50:41,248.248 INFO    ] Initializing speech engine...
[2026-10-28 23:50:41,254.254 INFO    ] 2026-10-28 23:50:41
[2026-10-28 23:50:41,551.551 INFO    ] 2026-10-28 23:50:41
[2026-10-28 23:50:41,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:50:41,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:50:41,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:50:42,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:50:42,170.170 INFO    ] time= 28/10/2026 23:50:42
[2026-10-28 23:50:42,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:50:42,206.206 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:50:42,337.337 INFO    ] No existing commands found in stream
[2026-10-28 23:50:47,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:50:47,370.370 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-10-28 23:50:48,289.289 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:50:48,292.292 INFO    ] Checking for system updates...
[2026-10-28 23:50:48,329.329 INFO    ] 200
[2026-10-28 23:50:48,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:50:48,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:50:48,396.396 INFO    ] No update needed
[2026-10-28 23:50:48,398.398 INFO    ] Checking for camera pi updates...
[2026-10-28 23:50:48,433.433 INFO    ] 200
[2026-10-28 23:50:48,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:50:48,477.477 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:50:48,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:50:48,562.562 INFO    ] No camera update needed
[2026-10-28 23:50:48,565.565 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:50:48,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:50:48,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:50:48,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:50:50,622.622 INFO    ] ================================================
[2026-10-28 23:50:50,637.637 INFO    ] Launching Daemon at Wed Oct 28 23:50:50 IST 2026
[2026-10-28 23:50:50,649.649 INFO    ] ================================================
[2026-10-28 23:50:51,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:50:51
[2026-10-28 23:50:51,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:50:52,108.108 INFO    ] Initializing speech engine...
[2026-10-28 23:50:52,113.113 INFO    ] 2026-10-28 23:50:52
[2026-10-28 23:50:52,377.377 INFO    ] 2026-10-28 23:50:52
[2026-10-28 23:50:52,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:50:52,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:50:52,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:50:52,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:50:52,926.926 INFO    ] time= 28/10/2026 23:50:52
[2026-10-28 23:50:52,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:50:52,972.972 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:50:53,079.079 INFO    ] No existing commands found in stream
[2026-10-28 23:50:58,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:50:58,110.110 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-10-28 23:50:59,967.967 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:50:59,969.969 INFO    ] Checking for system updates...
[2026-10-28 23:51:00,009.009 INFO    ] 200
[2026-10-28 23:51:00,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:51:00,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:51:00,073.073 INFO    ] No update needed
[2026-10-28 23:51:00,076.076 INFO    ] Checking for camera pi updates...
[2026-10-28 23:51:00,109.109 INFO    ] 200
[2026-10-28 23:51:00,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:51:00,151.151 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:51:00,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:51:00,256.256 INFO    ] No camera update needed
[2026-10-28 23:51:00,259.259 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:51:00,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:51:00,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:51:00,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:51:02,319.319 INFO    ] ================================================
[2026-10-28 23:51:02,348.348 INFO    ] Launching Daemon at Wed Oct 28 23:51:02 IST 2026
[2026-10-28 23:51:02,366.366 INFO    ] ================================================
[2026-10-28 23:51:03,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:51:03
[2026-10-28 23:51:03,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:51:03,946.946 INFO    ] Initializing speech engine...
[2026-10-28 23:51:03,953.953 INFO    ] 2026-10-28 23:51:03
[2026-10-28 23:51:04,277.277 INFO    ] 2026-10-28 23:51:04
[2026-10-28 23:51:04,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:51:04,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:51:04,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:51:04,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:51:04,801.801 INFO    ] time= 28/10/2026 23:51:04
[2026-10-28 23:51:04,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:51:04,904.904 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:51:05,003.003 INFO    ] No existing commands found in stream
[2026-10-28 23:51:10,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:51:10,017.017 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-10-28 23:51:12,687.687 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:51:12,689.689 INFO    ] Checking for system updates...
[2026-10-28 23:51:12,725.725 INFO    ] 200
[2026-10-28 23:51:12,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:51:12,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:51:12,788.788 INFO    ] No update needed
[2026-10-28 23:51:12,790.790 INFO    ] Checking for camera pi updates...
[2026-10-28 23:51:12,827.827 INFO    ] 200
[2026-10-28 23:51:12,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:51:12,876.876 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:51:12,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:51:12,957.957 INFO    ] No camera update needed
[2026-10-28 23:51:12,960.960 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:51:12,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:51:12,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:51:12,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:51:15,014.014 INFO    ] ================================================
[2026-10-28 23:51:15,029.029 INFO    ] Launching Daemon at Wed Oct 28 23:51:15 IST 2026
[2026-10-28 23:51:15,040.040 INFO    ] ================================================
[2026-10-28 23:51:15,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:51:15
[2026-10-28 23:51:16,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:51:16,481.481 INFO    ] Initializing speech engine...
[2026-10-28 23:51:16,494.494 INFO    ] 2026-10-28 23:51:16
[2026-10-28 23:51:16,759.759 INFO    ] 2026-10-28 23:51:16
[2026-10-28 23:51:16,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:51:17,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:51:17,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:51:17,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:51:17,323.323 INFO    ] time= 28/10/2026 23:51:17
[2026-10-28 23:51:17,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:51:17,349.349 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:51:17,478.478 INFO    ] No existing commands found in stream
[2026-10-28 23:51:22,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:51:22,495.495 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-10-28 23:51:23,620.620 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:51:23,622.622 INFO    ] Checking for system updates...
[2026-10-28 23:51:23,658.658 INFO    ] 200
[2026-10-28 23:51:23,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:51:23,716.716 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:51:23,718.718 INFO    ] No update needed
[2026-10-28 23:51:23,721.721 INFO    ] Checking for camera pi updates...
[2026-10-28 23:51:23,756.756 INFO    ] 200
[2026-10-28 23:51:23,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:51:23,798.798 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:51:23,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:51:23,876.876 INFO    ] No camera update needed
[2026-10-28 23:51:23,879.879 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:51:23,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:51:23,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:51:23,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:51:25,934.934 INFO    ] ================================================
[2026-10-28 23:51:25,950.950 INFO    ] Launching Daemon at Wed Oct 28 23:51:25 IST 2026
[2026-10-28 23:51:25,961.961 INFO    ] ================================================
[2026-10-28 23:51:26,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:51:26
[2026-10-28 23:51:27,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:51:27,601.601 INFO    ] Initializing speech engine...
[2026-10-28 23:51:27,615.615 INFO    ] 2026-10-28 23:51:27
[2026-10-28 23:51:27,886.886 INFO    ] 2026-10-28 23:51:27
[2026-10-28 23:51:27,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:51:28,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:51:28,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:51:28,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:51:28,460.460 INFO    ] time= 28/10/2026 23:51:28
[2026-10-28 23:51:28,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:51:28,503.503 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:51:28,608.608 INFO    ] No existing commands found in stream
[2026-10-28 23:51:33,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:51:33,646.646 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-10-28 23:51:36,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:51:36,175.175 INFO    ] Checking for system updates...
[2026-10-28 23:51:36,212.212 INFO    ] 200
[2026-10-28 23:51:36,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:51:36,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:51:36,271.271 INFO    ] No update needed
[2026-10-28 23:51:36,274.274 INFO    ] Checking for camera pi updates...
[2026-10-28 23:51:36,309.309 INFO    ] 200
[2026-10-28 23:51:36,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:51:36,354.354 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:51:36,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:51:36,429.429 INFO    ] No camera update needed
[2026-10-28 23:51:36,432.432 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:51:36,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:51:36,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:51:36,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:51:38,487.487 INFO    ] ================================================
[2026-10-28 23:51:38,504.504 INFO    ] Launching Daemon at Wed Oct 28 23:51:38 IST 2026
[2026-10-28 23:51:38,514.514 INFO    ] ================================================
[2026-10-28 23:51:39,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:51:39
[2026-10-28 23:51:39,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:51:39,918.918 INFO    ] Initializing speech engine...
[2026-10-28 23:51:39,934.934 INFO    ] 2026-10-28 23:51:39
[2026-10-28 23:51:40,222.222 INFO    ] 2026-10-28 23:51:40
[2026-10-28 23:51:40,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:51:40,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:51:40,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:51:40,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:51:40,843.843 INFO    ] time= 28/10/2026 23:51:40
[2026-10-28 23:51:40,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:51:40,874.874 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:51:41,040.040 INFO    ] No existing commands found in stream
[2026-10-28 23:51:46,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:51:46,059.059 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-10-28 23:51:46,714.714 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:51:46,717.717 INFO    ] Checking for system updates...
[2026-10-28 23:51:46,752.752 INFO    ] 200
[2026-10-28 23:51:46,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:51:46,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:51:46,810.810 INFO    ] No update needed
[2026-10-28 23:51:46,813.813 INFO    ] Checking for camera pi updates...
[2026-10-28 23:51:46,850.850 INFO    ] 200
[2026-10-28 23:51:46,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:51:46,898.898 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:51:46,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:51:46,984.984 INFO    ] No camera update needed
[2026-10-28 23:51:46,986.986 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:51:46,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:51:46,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:51:46,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:51:49,041.041 INFO    ] ================================================
[2026-10-28 23:51:49,057.057 INFO    ] Launching Daemon at Wed Oct 28 23:51:49 IST 2026
[2026-10-28 23:51:49,068.068 INFO    ] ================================================
[2026-10-28 23:51:49,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:51:49
[2026-10-28 23:51:50,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:51:50,470.470 INFO    ] Initializing speech engine...
[2026-10-28 23:51:50,482.482 INFO    ] 2026-10-28 23:51:50
[2026-10-28 23:51:50,748.748 INFO    ] 2026-10-28 23:51:50
[2026-10-28 23:51:50,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:51:51,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:51:51,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:51:51,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:51:51,317.317 INFO    ] time= 28/10/2026 23:51:51
[2026-10-28 23:51:51,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:51:51,353.353 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:51:51,534.534 INFO    ] No existing commands found in stream
[2026-10-28 23:51:56,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:51:56,557.557 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-10-28 23:51:59,670.670 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:51:59,673.673 INFO    ] Checking for system updates...
[2026-10-28 23:51:59,711.711 INFO    ] 200
[2026-10-28 23:51:59,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:51:59,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:51:59,770.770 INFO    ] No update needed
[2026-10-28 23:51:59,774.774 INFO    ] Checking for camera pi updates...
[2026-10-28 23:51:59,809.809 INFO    ] 200
[2026-10-28 23:51:59,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:51:59,854.854 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:51:59,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:51:59,941.941 INFO    ] No camera update needed
[2026-10-28 23:51:59,944.944 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:51:59,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:51:59,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:51:59,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:52:02,004.004 INFO    ] ================================================
[2026-10-28 23:52:02,028.028 INFO    ] Launching Daemon at Wed Oct 28 23:52:02 IST 2026
[2026-10-28 23:52:02,042.042 INFO    ] ================================================
[2026-10-28 23:52:02,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:52:02
[2026-10-28 23:52:03,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:52:03,733.733 INFO    ] Initializing speech engine...
[2026-10-28 23:52:03,740.740 INFO    ] 2026-10-28 23:52:03
[2026-10-28 23:52:04,007.007 INFO    ] 2026-10-28 23:52:04
[2026-10-28 23:52:04,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:52:04,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:52:04,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:52:04,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:52:04,742.742 INFO    ] time= 28/10/2026 23:52:04
[2026-10-28 23:52:04,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:52:04,812.812 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:52:04,954.954 INFO    ] No existing commands found in stream
[2026-10-28 23:52:09,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:52:09,974.974 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-10-28 23:52:11,887.887 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:52:11,890.890 INFO    ] Checking for system updates...
[2026-10-28 23:52:11,926.926 INFO    ] 200
[2026-10-28 23:52:11,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:52:11,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:52:11,983.983 INFO    ] No update needed
[2026-10-28 23:52:11,986.986 INFO    ] Checking for camera pi updates...
[2026-10-28 23:52:12,020.020 INFO    ] 200
[2026-10-28 23:52:12,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:52:12,062.062 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:52:12,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:52:12,166.166 INFO    ] No camera update needed
[2026-10-28 23:52:12,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:52:12,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:52:12,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:52:12,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:52:14,224.224 INFO    ] ================================================
[2026-10-28 23:52:14,240.240 INFO    ] Launching Daemon at Wed Oct 28 23:52:14 IST 2026
[2026-10-28 23:52:14,250.250 INFO    ] ================================================
[2026-10-28 23:52:14,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:52:14
[2026-10-28 23:52:15,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:52:15,692.692 INFO    ] Initializing speech engine...
[2026-10-28 23:52:15,698.698 INFO    ] 2026-10-28 23:52:15
[2026-10-28 23:52:16,001.001 INFO    ] 2026-10-28 23:52:15
[2026-10-28 23:52:16,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:52:16,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:52:16,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:52:16,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:52:16,522.522 INFO    ] time= 28/10/2026 23:52:16
[2026-10-28 23:52:16,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:52:16,631.631 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:52:16,758.758 INFO    ] No existing commands found in stream
[2026-10-28 23:52:21,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:52:21,787.787 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-10-28 23:52:24,889.889 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:52:24,892.892 INFO    ] Checking for system updates...
[2026-10-28 23:52:24,928.928 INFO    ] 200
[2026-10-28 23:52:24,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:52:24,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:52:24,993.993 INFO    ] No update needed
[2026-10-28 23:52:24,996.996 INFO    ] Checking for camera pi updates...
[2026-10-28 23:52:25,035.035 INFO    ] 200
[2026-10-28 23:52:25,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:52:25,084.084 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:52:25,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:52:25,166.166 INFO    ] No camera update needed
[2026-10-28 23:52:25,169.169 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:52:25,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:52:25,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:52:25,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:52:27,221.221 INFO    ] ================================================
[2026-10-28 23:52:27,237.237 INFO    ] Launching Daemon at Wed Oct 28 23:52:27 IST 2026
[2026-10-28 23:52:27,249.249 INFO    ] ================================================
[2026-10-28 23:52:27,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:52:27
[2026-10-28 23:52:28,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:52:28,728.728 INFO    ] Initializing speech engine...
[2026-10-28 23:52:28,737.737 INFO    ] 2026-10-28 23:52:28
[2026-10-28 23:52:28,998.998 INFO    ] 2026-10-28 23:52:28
[2026-10-28 23:52:29,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:52:29,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:52:29,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:52:29,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:52:29,559.559 INFO    ] time= 28/10/2026 23:52:29
[2026-10-28 23:52:29,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:52:29,593.593 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:52:29,698.698 INFO    ] No existing commands found in stream
[2026-10-28 23:52:34,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:52:34,729.729 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-10-28 23:52:38,767.767 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:52:38,770.770 INFO    ] Checking for system updates...
[2026-10-28 23:52:38,807.807 INFO    ] 200
[2026-10-28 23:52:38,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:52:38,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:52:38,866.866 INFO    ] No update needed
[2026-10-28 23:52:38,869.869 INFO    ] Checking for camera pi updates...
[2026-10-28 23:52:38,903.903 INFO    ] 200
[2026-10-28 23:52:38,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:52:38,946.946 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:52:39,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:52:39,029.029 INFO    ] No camera update needed
[2026-10-28 23:52:39,031.031 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:52:39,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:52:39,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:52:39,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:52:41,085.085 INFO    ] ================================================
[2026-10-28 23:52:41,101.101 INFO    ] Launching Daemon at Wed Oct 28 23:52:41 IST 2026
[2026-10-28 23:52:41,112.112 INFO    ] ================================================
[2026-10-28 23:52:41,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:52:41
[2026-10-28 23:52:42,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:52:42,577.577 INFO    ] Initializing speech engine...
[2026-10-28 23:52:42,586.586 INFO    ] 2026-10-28 23:52:42
[2026-10-28 23:52:42,845.845 INFO    ] 2026-10-28 23:52:42
[2026-10-28 23:52:42,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:52:43,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:52:43,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:52:43,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:52:43,398.398 INFO    ] time= 28/10/2026 23:52:43
[2026-10-28 23:52:43,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:52:43,445.445 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:52:43,567.567 INFO    ] No existing commands found in stream
[2026-10-28 23:52:48,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:52:48,595.595 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-10-28 23:52:50,848.848 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:52:50,850.850 INFO    ] Checking for system updates...
[2026-10-28 23:52:50,886.886 INFO    ] 200
[2026-10-28 23:52:50,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:52:50,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:52:50,943.943 INFO    ] No update needed
[2026-10-28 23:52:50,945.945 INFO    ] Checking for camera pi updates...
[2026-10-28 23:52:50,979.979 INFO    ] 200
[2026-10-28 23:52:50,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:52:51,022.022 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:52:51,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:52:51,093.093 INFO    ] No camera update needed
[2026-10-28 23:52:51,095.095 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:52:51,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:52:51,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:52:51,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:52:53,147.147 INFO    ] ================================================
[2026-10-28 23:52:53,163.163 INFO    ] Launching Daemon at Wed Oct 28 23:52:53 IST 2026
[2026-10-28 23:52:53,174.174 INFO    ] ================================================
[2026-10-28 23:52:53,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:52:53
[2026-10-28 23:52:54,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:52:54,822.822 INFO    ] Initializing speech engine...
[2026-10-28 23:52:54,829.829 INFO    ] 2026-10-28 23:52:54
[2026-10-28 23:52:55,106.106 INFO    ] 2026-10-28 23:52:55
[2026-10-28 23:52:55,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:52:55,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:52:55,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:52:55,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:52:55,666.666 INFO    ] time= 28/10/2026 23:52:55
[2026-10-28 23:52:55,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:52:55,712.712 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:52:55,833.833 INFO    ] No existing commands found in stream
[2026-10-28 23:53:00,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:53:00,860.860 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-10-28 23:53:04,031.031 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:53:04,034.034 INFO    ] Checking for system updates...
[2026-10-28 23:53:04,070.070 INFO    ] 200
[2026-10-28 23:53:04,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:53:04,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:53:04,138.138 INFO    ] No update needed
[2026-10-28 23:53:04,140.140 INFO    ] Checking for camera pi updates...
[2026-10-28 23:53:04,178.178 INFO    ] 200
[2026-10-28 23:53:04,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:53:04,221.221 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:53:04,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:53:04,303.303 INFO    ] No camera update needed
[2026-10-28 23:53:04,305.305 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:53:04,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:53:04,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:53:04,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:53:06,358.358 INFO    ] ================================================
[2026-10-28 23:53:06,374.374 INFO    ] Launching Daemon at Wed Oct 28 23:53:06 IST 2026
[2026-10-28 23:53:06,385.385 INFO    ] ================================================
[2026-10-28 23:53:06,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:53:06
[2026-10-28 23:53:07,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:53:07,846.846 INFO    ] Initializing speech engine...
[2026-10-28 23:53:07,859.859 INFO    ] 2026-10-28 23:53:07
[2026-10-28 23:53:08,148.148 INFO    ] 2026-10-28 23:53:08
[2026-10-28 23:53:08,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:53:08,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:53:08,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:53:08,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:53:08,778.778 INFO    ] time= 28/10/2026 23:53:08
[2026-10-28 23:53:08,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:53:08,808.808 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:53:08,946.946 INFO    ] No existing commands found in stream
[2026-10-28 23:53:13,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:53:13,973.973 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-10-28 23:53:15,289.289 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:53:15,291.291 INFO    ] Checking for system updates...
[2026-10-28 23:53:15,330.330 INFO    ] 200
[2026-10-28 23:53:15,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:53:15,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:53:15,388.388 INFO    ] No update needed
[2026-10-28 23:53:15,390.390 INFO    ] Checking for camera pi updates...
[2026-10-28 23:53:15,424.424 INFO    ] 200
[2026-10-28 23:53:15,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:53:15,467.467 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:53:15,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:53:15,537.537 INFO    ] No camera update needed
[2026-10-28 23:53:15,540.540 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:53:15,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:53:15,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:53:15,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:53:17,594.594 INFO    ] ================================================
[2026-10-28 23:53:17,610.610 INFO    ] Launching Daemon at Wed Oct 28 23:53:17 IST 2026
[2026-10-28 23:53:17,620.620 INFO    ] ================================================
[2026-10-28 23:53:18,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:53:18
[2026-10-28 23:53:18,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:53:19,073.073 INFO    ] Initializing speech engine...
[2026-10-28 23:53:19,082.082 INFO    ] 2026-10-28 23:53:19
[2026-10-28 23:53:19,332.332 INFO    ] 2026-10-28 23:53:19
[2026-10-28 23:53:19,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:53:19,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:53:19,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:53:19,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:53:19,895.895 INFO    ] time= 28/10/2026 23:53:19
[2026-10-28 23:53:19,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:53:19,940.940 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:53:20,048.048 INFO    ] No existing commands found in stream
[2026-10-28 23:53:25,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:53:25,079.079 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-10-28 23:53:28,386.386 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:53:28,388.388 INFO    ] Checking for system updates...
[2026-10-28 23:53:28,424.424 INFO    ] 200
[2026-10-28 23:53:28,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:53:28,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:53:28,480.480 INFO    ] No update needed
[2026-10-28 23:53:28,483.483 INFO    ] Checking for camera pi updates...
[2026-10-28 23:53:28,516.516 INFO    ] 200
[2026-10-28 23:53:28,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:53:28,558.558 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:53:28,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:53:28,634.634 INFO    ] No camera update needed
[2026-10-28 23:53:28,637.637 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:53:28,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:53:28,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:53:28,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:53:30,690.690 INFO    ] ================================================
[2026-10-28 23:53:30,705.705 INFO    ] Launching Daemon at Wed Oct 28 23:53:30 IST 2026
[2026-10-28 23:53:30,716.716 INFO    ] ================================================
[2026-10-28 23:53:31,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:53:31
[2026-10-28 23:53:32,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:53:32,424.424 INFO    ] Initializing speech engine...
[2026-10-28 23:53:32,437.437 INFO    ] 2026-10-28 23:53:32
[2026-10-28 23:53:32,728.728 INFO    ] 2026-10-28 23:53:32
[2026-10-28 23:53:32,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:53:33,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:53:33,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:53:33,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:53:33,279.279 INFO    ] time= 28/10/2026 23:53:33
[2026-10-28 23:53:33,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:53:33,325.325 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:53:33,457.457 INFO    ] No existing commands found in stream
[2026-10-28 23:53:38,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:53:38,485.485 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-10-28 23:53:40,048.048 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:53:40,051.051 INFO    ] Checking for system updates...
[2026-10-28 23:53:40,090.090 INFO    ] 200
[2026-10-28 23:53:40,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:53:40,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:53:40,147.147 INFO    ] No update needed
[2026-10-28 23:53:40,150.150 INFO    ] Checking for camera pi updates...
[2026-10-28 23:53:40,191.191 INFO    ] 200
[2026-10-28 23:53:40,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:53:40,239.239 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:53:40,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:53:40,323.323 INFO    ] No camera update needed
[2026-10-28 23:53:40,325.325 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:53:40,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:53:40,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:53:40,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:53:42,381.381 INFO    ] ================================================
[2026-10-28 23:53:42,396.396 INFO    ] Launching Daemon at Wed Oct 28 23:53:42 IST 2026
[2026-10-28 23:53:42,407.407 INFO    ] ================================================
[2026-10-28 23:53:42,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:53:42
[2026-10-28 23:53:43,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:53:43,871.871 INFO    ] Initializing speech engine...
[2026-10-28 23:53:43,876.876 INFO    ] 2026-10-28 23:53:43
[2026-10-28 23:53:44,138.138 INFO    ] 2026-10-28 23:53:44
[2026-10-28 23:53:44,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:53:44,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:53:44,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:53:44,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:53:44,680.680 INFO    ] time= 28/10/2026 23:53:44
[2026-10-28 23:53:44,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:53:44,704.704 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:53:44,836.836 INFO    ] No existing commands found in stream
[2026-10-28 23:53:49,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:53:49,858.858 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-10-28 23:53:50,567.567 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:53:50,569.569 INFO    ] Checking for system updates...
[2026-10-28 23:53:50,606.606 INFO    ] 200
[2026-10-28 23:53:50,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:53:50,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:53:50,672.672 INFO    ] No update needed
[2026-10-28 23:53:50,676.676 INFO    ] Checking for camera pi updates...
[2026-10-28 23:53:50,710.710 INFO    ] 200
[2026-10-28 23:53:50,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:53:50,754.754 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:53:50,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:53:50,838.838 INFO    ] No camera update needed
[2026-10-28 23:53:50,841.841 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:53:50,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:53:50,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:53:50,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:53:52,902.902 INFO    ] ================================================
[2026-10-28 23:53:52,921.921 INFO    ] Launching Daemon at Wed Oct 28 23:53:52 IST 2026
[2026-10-28 23:53:52,932.932 INFO    ] ================================================
[2026-10-28 23:53:53,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:53:53
[2026-10-28 23:53:54,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:53:54,556.556 INFO    ] Initializing speech engine...
[2026-10-28 23:53:54,565.565 INFO    ] 2026-10-28 23:53:54
[2026-10-28 23:53:54,837.837 INFO    ] 2026-10-28 23:53:54
[2026-10-28 23:53:54,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:53:55,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:53:55,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:53:55,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:53:55,587.587 INFO    ] time= 28/10/2026 23:53:55
[2026-10-28 23:53:55,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:53:55,672.672 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:53:55,858.858 INFO    ] No existing commands found in stream
[2026-10-28 23:54:00,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:54:00,877.877 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-10-28 23:54:04,408.408 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:54:04,411.411 INFO    ] Checking for system updates...
[2026-10-28 23:54:04,450.450 INFO    ] 200
[2026-10-28 23:54:04,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:54:04,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:54:04,515.515 INFO    ] No update needed
[2026-10-28 23:54:04,518.518 INFO    ] Checking for camera pi updates...
[2026-10-28 23:54:04,556.556 INFO    ] 200
[2026-10-28 23:54:04,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:54:04,600.600 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:54:04,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:54:04,699.699 INFO    ] No camera update needed
[2026-10-28 23:54:04,702.702 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:54:04,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:54:04,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:54:04,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:54:06,758.758 INFO    ] ================================================
[2026-10-28 23:54:06,774.774 INFO    ] Launching Daemon at Wed Oct 28 23:54:06 IST 2026
[2026-10-28 23:54:06,785.785 INFO    ] ================================================
[2026-10-28 23:54:07,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:54:07
[2026-10-28 23:54:07,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:54:08,206.206 INFO    ] Initializing speech engine...
[2026-10-28 23:54:08,215.215 INFO    ] 2026-10-28 23:54:08
[2026-10-28 23:54:08,487.487 INFO    ] 2026-10-28 23:54:08
[2026-10-28 23:54:08,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:54:08,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:54:08,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:54:09,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:54:09,083.083 INFO    ] time= 28/10/2026 23:54:09
[2026-10-28 23:54:09,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:54:09,121.121 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:54:09,292.292 INFO    ] No existing commands found in stream
[2026-10-28 23:54:14,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:54:14,326.326 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-10-28 23:54:17,868.868 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:54:17,871.871 INFO    ] Checking for system updates...
[2026-10-28 23:54:17,907.907 INFO    ] 200
[2026-10-28 23:54:17,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:54:17,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:54:17,966.966 INFO    ] No update needed
[2026-10-28 23:54:17,969.969 INFO    ] Checking for camera pi updates...
[2026-10-28 23:54:18,001.001 INFO    ] 200
[2026-10-28 23:54:18,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:54:18,044.044 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:54:18,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:54:18,132.132 INFO    ] No camera update needed
[2026-10-28 23:54:18,135.135 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:54:18,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:54:18,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:54:18,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:54:20,187.187 INFO    ] ================================================
[2026-10-28 23:54:20,203.203 INFO    ] Launching Daemon at Wed Oct 28 23:54:20 IST 2026
[2026-10-28 23:54:20,214.214 INFO    ] ================================================
[2026-10-28 23:54:20,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:54:20
[2026-10-28 23:54:21,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:54:21,665.665 INFO    ] Initializing speech engine...
[2026-10-28 23:54:21,670.670 INFO    ] 2026-10-28 23:54:21
[2026-10-28 23:54:21,964.964 INFO    ] 2026-10-28 23:54:21
[2026-10-28 23:54:22,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:54:22,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:54:22,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:54:22,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:54:22,501.501 INFO    ] time= 28/10/2026 23:54:22
[2026-10-28 23:54:22,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:54:22,595.595 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:54:22,761.761 INFO    ] No existing commands found in stream
[2026-10-28 23:54:27,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:54:27,779.779 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-10-28 23:54:30,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:54:30,868.868 INFO    ] Checking for system updates...
[2026-10-28 23:54:30,903.903 INFO    ] 200
[2026-10-28 23:54:30,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:54:30,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:54:30,962.962 INFO    ] No update needed
[2026-10-28 23:54:30,964.964 INFO    ] Checking for camera pi updates...
[2026-10-28 23:54:30,998.998 INFO    ] 200
[2026-10-28 23:54:31,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:54:31,040.040 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:54:31,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:54:31,122.122 INFO    ] No camera update needed
[2026-10-28 23:54:31,124.124 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:54:31,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:54:31,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:54:31,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:54:33,179.179 INFO    ] ================================================
[2026-10-28 23:54:33,194.194 INFO    ] Launching Daemon at Wed Oct 28 23:54:33 IST 2026
[2026-10-28 23:54:33,205.205 INFO    ] ================================================
[2026-10-28 23:54:33,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:54:33
[2026-10-28 23:54:34,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:54:34,803.803 INFO    ] Initializing speech engine...
[2026-10-28 23:54:34,815.815 INFO    ] 2026-10-28 23:54:34
[2026-10-28 23:54:35,083.083 INFO    ] 2026-10-28 23:54:35
[2026-10-28 23:54:35,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:54:35,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:54:35,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:54:35,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:54:35,643.643 INFO    ] time= 28/10/2026 23:54:35
[2026-10-28 23:54:35,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:54:35,680.680 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:54:35,807.807 INFO    ] No existing commands found in stream
[2026-10-28 23:54:40,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:54:40,836.836 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-10-28 23:54:42,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:54:42,969.969 INFO    ] Checking for system updates...
[2026-10-28 23:54:43,007.007 INFO    ] 200
[2026-10-28 23:54:43,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:54:43,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:54:43,066.066 INFO    ] No update needed
[2026-10-28 23:54:43,069.069 INFO    ] Checking for camera pi updates...
[2026-10-28 23:54:43,104.104 INFO    ] 200
[2026-10-28 23:54:43,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:54:43,152.152 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:54:43,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:54:43,339.339 INFO    ] No camera update needed
[2026-10-28 23:54:43,342.342 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:54:43,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:54:43,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:54:43,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:54:45,402.402 INFO    ] ================================================
[2026-10-28 23:54:45,418.418 INFO    ] Launching Daemon at Wed Oct 28 23:54:45 IST 2026
[2026-10-28 23:54:45,429.429 INFO    ] ================================================
[2026-10-28 23:54:45,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:54:45
[2026-10-28 23:54:46,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:54:46,850.850 INFO    ] Initializing speech engine...
[2026-10-28 23:54:46,871.871 INFO    ] 2026-10-28 23:54:46
[2026-10-28 23:54:47,153.153 INFO    ] 2026-10-28 23:54:47
[2026-10-28 23:54:47,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:54:47,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:54:47,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:54:47,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:54:47,643.643 INFO    ] time= 28/10/2026 23:54:47
[2026-10-28 23:54:47,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:54:47,763.763 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:54:47,901.901 INFO    ] No existing commands found in stream
[2026-10-28 23:54:52,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:54:52,924.924 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-10-28 23:54:54,768.768 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:54:54,771.771 INFO    ] Checking for system updates...
[2026-10-28 23:54:54,808.808 INFO    ] 200
[2026-10-28 23:54:54,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:54:54,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:54:54,867.867 INFO    ] No update needed
[2026-10-28 23:54:54,869.869 INFO    ] Checking for camera pi updates...
[2026-10-28 23:54:54,904.904 INFO    ] 200
[2026-10-28 23:54:54,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:54:54,947.947 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:54:55,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:54:55,050.050 INFO    ] No camera update needed
[2026-10-28 23:54:55,052.052 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:54:55,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:54:55,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:54:55,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:54:57,107.107 INFO    ] ================================================
[2026-10-28 23:54:57,122.122 INFO    ] Launching Daemon at Wed Oct 28 23:54:57 IST 2026
[2026-10-28 23:54:57,133.133 INFO    ] ================================================
[2026-10-28 23:54:57,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:54:57
[2026-10-28 23:54:58,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:54:58,659.659 INFO    ] Initializing speech engine...
[2026-10-28 23:54:58,665.665 INFO    ] 2026-10-28 23:54:58
[2026-10-28 23:54:58,938.938 INFO    ] 2026-10-28 23:54:58
[2026-10-28 23:54:59,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:54:59,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:54:59,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:54:59,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:54:59,498.498 INFO    ] time= 28/10/2026 23:54:59
[2026-10-28 23:54:59,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:54:59,525.525 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:54:59,650.650 INFO    ] No existing commands found in stream
[2026-10-28 23:55:04,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:55:04,669.669 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-10-28 23:55:08,809.809 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:55:08,812.812 INFO    ] Checking for system updates...
[2026-10-28 23:55:08,850.850 INFO    ] 200
[2026-10-28 23:55:08,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:55:08,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:55:08,910.910 INFO    ] No update needed
[2026-10-28 23:55:08,913.913 INFO    ] Checking for camera pi updates...
[2026-10-28 23:55:08,948.948 INFO    ] 200
[2026-10-28 23:55:08,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:55:08,993.993 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:55:09,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:55:09,075.075 INFO    ] No camera update needed
[2026-10-28 23:55:09,078.078 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:55:09,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:55:09,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:55:09,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:55:11,135.135 INFO    ] ================================================
[2026-10-28 23:55:11,152.152 INFO    ] Launching Daemon at Wed Oct 28 23:55:11 IST 2026
[2026-10-28 23:55:11,163.163 INFO    ] ================================================
[2026-10-28 23:55:11,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:55:11
[2026-10-28 23:55:12,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:55:12,652.652 INFO    ] Initializing speech engine...
[2026-10-28 23:55:12,662.662 INFO    ] 2026-10-28 23:55:12
[2026-10-28 23:55:12,967.967 INFO    ] 2026-10-28 23:55:12
[2026-10-28 23:55:13,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:55:13,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:55:13,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:55:13,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:55:13,682.682 INFO    ] time= 28/10/2026 23:55:13
[2026-10-28 23:55:13,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:55:13,759.759 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:55:13,912.912 INFO    ] No existing commands found in stream
[2026-10-28 23:55:18,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:55:18,937.937 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-10-28 23:55:22,346.346 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:55:22,349.349 INFO    ] Checking for system updates...
[2026-10-28 23:55:22,386.386 INFO    ] 200
[2026-10-28 23:55:22,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:55:22,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:55:22,447.447 INFO    ] No update needed
[2026-10-28 23:55:22,450.450 INFO    ] Checking for camera pi updates...
[2026-10-28 23:55:22,485.485 INFO    ] 200
[2026-10-28 23:55:22,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:55:22,529.529 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:55:22,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:55:22,588.588 INFO    ] No camera update needed
[2026-10-28 23:55:22,591.591 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:55:22,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:55:22,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:55:22,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:55:24,649.649 INFO    ] ================================================
[2026-10-28 23:55:24,665.665 INFO    ] Launching Daemon at Wed Oct 28 23:55:24 IST 2026
[2026-10-28 23:55:24,676.676 INFO    ] ================================================
[2026-10-28 23:55:25,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:55:25
[2026-10-28 23:55:25,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:55:26,131.131 INFO    ] Initializing speech engine...
[2026-10-28 23:55:26,140.140 INFO    ] 2026-10-28 23:55:26
[2026-10-28 23:55:26,400.400 INFO    ] 2026-10-28 23:55:26
[2026-10-28 23:55:26,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:55:26,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:55:26,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:55:26,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:55:26,947.947 INFO    ] time= 28/10/2026 23:55:26
[2026-10-28 23:55:26,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:55:26,977.977 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:55:27,123.123 INFO    ] No existing commands found in stream
[2026-10-28 23:55:32,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:55:32,162.162 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 23:55:33,024.024 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:55:33,027.027 INFO    ] Checking for system updates...
[2026-10-28 23:55:33,062.062 INFO    ] 200
[2026-10-28 23:55:33,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:55:33,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:55:33,122.122 INFO    ] No update needed
[2026-10-28 23:55:33,124.124 INFO    ] Checking for camera pi updates...
[2026-10-28 23:55:33,162.162 INFO    ] 200
[2026-10-28 23:55:33,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:55:33,206.206 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:55:33,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:55:33,305.305 INFO    ] No camera update needed
[2026-10-28 23:55:33,307.307 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:55:33,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:55:33,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:55:33,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:55:35,359.359 INFO    ] ================================================
[2026-10-28 23:55:35,375.375 INFO    ] Launching Daemon at Wed Oct 28 23:55:35 IST 2026
[2026-10-28 23:55:35,385.385 INFO    ] ================================================
[2026-10-28 23:55:35,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:55:35
[2026-10-28 23:55:36,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:55:36,854.854 INFO    ] Initializing speech engine...
[2026-10-28 23:55:36,863.863 INFO    ] 2026-10-28 23:55:36
[2026-10-28 23:55:37,136.136 INFO    ] 2026-10-28 23:55:37
[2026-10-28 23:55:37,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:55:37,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:55:37,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:55:37,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:55:37,744.744 INFO    ] time= 28/10/2026 23:55:37
[2026-10-28 23:55:37,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:55:37,768.768 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:55:37,919.919 INFO    ] No existing commands found in stream
[2026-10-28 23:55:42,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:55:42,952.952 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-10-28 23:55:46,698.698 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:55:46,701.701 INFO    ] Checking for system updates...
[2026-10-28 23:55:46,737.737 INFO    ] 200
[2026-10-28 23:55:46,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:55:46,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:55:46,797.797 INFO    ] No update needed
[2026-10-28 23:55:46,800.800 INFO    ] Checking for camera pi updates...
[2026-10-28 23:55:46,836.836 INFO    ] 200
[2026-10-28 23:55:46,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:55:46,880.880 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:55:46,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:55:46,982.982 INFO    ] No camera update needed
[2026-10-28 23:55:46,985.985 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:55:46,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:55:46,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:55:47,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:55:49,041.041 INFO    ] ================================================
[2026-10-28 23:55:49,057.057 INFO    ] Launching Daemon at Wed Oct 28 23:55:49 IST 2026
[2026-10-28 23:55:49,068.068 INFO    ] ================================================
[2026-10-28 23:55:49,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:55:49
[2026-10-28 23:55:50,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:55:50,544.544 INFO    ] Initializing speech engine...
[2026-10-28 23:55:50,550.550 INFO    ] 2026-10-28 23:55:50
[2026-10-28 23:55:50,811.811 INFO    ] 2026-10-28 23:55:50
[2026-10-28 23:55:50,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:55:51,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:55:51,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:55:51,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:55:51,371.371 INFO    ] time= 28/10/2026 23:55:51
[2026-10-28 23:55:51,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:55:51,406.406 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:55:51,514.514 INFO    ] No existing commands found in stream
[2026-10-28 23:55:56,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:55:56,541.541 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-10-28 23:56:00,188.188 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:56:00,191.191 INFO    ] Checking for system updates...
[2026-10-28 23:56:00,231.231 INFO    ] 200
[2026-10-28 23:56:00,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:56:00,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:56:00,290.290 INFO    ] No update needed
[2026-10-28 23:56:00,292.292 INFO    ] Checking for camera pi updates...
[2026-10-28 23:56:00,327.327 INFO    ] 200
[2026-10-28 23:56:00,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:56:00,372.372 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:56:00,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:56:00,457.457 INFO    ] No camera update needed
[2026-10-28 23:56:00,460.460 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:56:00,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:56:00,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:56:00,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:56:02,516.516 INFO    ] ================================================
[2026-10-28 23:56:02,542.542 INFO    ] Launching Daemon at Wed Oct 28 23:56:02 IST 2026
[2026-10-28 23:56:02,556.556 INFO    ] ================================================
[2026-10-28 23:56:03,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:56:03
[2026-10-28 23:56:03,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:56:04,148.148 INFO    ] Initializing speech engine...
[2026-10-28 23:56:04,161.161 INFO    ] 2026-10-28 23:56:04
[2026-10-28 23:56:04,409.409 INFO    ] 2026-10-28 23:56:04
[2026-10-28 23:56:04,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:56:04,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:56:04,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:56:04,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:56:04,961.961 INFO    ] time= 28/10/2026 23:56:04
[2026-10-28 23:56:04,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:56:04,984.984 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:56:05,139.139 INFO    ] No existing commands found in stream
[2026-10-28 23:56:10,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:56:10,168.168 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-10-28 23:56:14,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:56:14,629.629 INFO    ] Checking for system updates...
[2026-10-28 23:56:14,668.668 INFO    ] 200
[2026-10-28 23:56:14,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:56:14,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:56:14,732.732 INFO    ] No update needed
[2026-10-28 23:56:14,734.734 INFO    ] Checking for camera pi updates...
[2026-10-28 23:56:14,772.772 INFO    ] 200
[2026-10-28 23:56:14,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:56:14,815.815 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:56:14,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:56:14,921.921 INFO    ] No camera update needed
[2026-10-28 23:56:14,923.923 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:56:14,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:56:14,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:56:14,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:56:16,978.978 INFO    ] ================================================
[2026-10-28 23:56:17,994.994 INFO    ] Launching Daemon at Wed Oct 28 23:56:16 IST 2026
[2026-10-28 23:56:17,006.006 INFO    ] ================================================
[2026-10-28 23:56:17,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:56:17
[2026-10-28 23:56:18,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:56:18,563.563 INFO    ] Initializing speech engine...
[2026-10-28 23:56:18,575.575 INFO    ] 2026-10-28 23:56:18
[2026-10-28 23:56:18,850.850 INFO    ] 2026-10-28 23:56:18
[2026-10-28 23:56:18,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:56:19,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:56:19,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:56:19,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:56:19,431.431 INFO    ] time= 28/10/2026 23:56:19
[2026-10-28 23:56:19,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:56:19,469.469 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:56:19,599.599 INFO    ] No existing commands found in stream
[2026-10-28 23:56:24,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:56:24,628.628 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-28 23:56:25,779.779 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:56:25,782.782 INFO    ] Checking for system updates...
[2026-10-28 23:56:25,819.819 INFO    ] 200
[2026-10-28 23:56:25,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:56:25,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:56:25,879.879 INFO    ] No update needed
[2026-10-28 23:56:25,882.882 INFO    ] Checking for camera pi updates...
[2026-10-28 23:56:25,916.916 INFO    ] 200
[2026-10-28 23:56:25,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:56:25,961.961 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:56:26,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:56:26,044.044 INFO    ] No camera update needed
[2026-10-28 23:56:26,047.047 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:56:26,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:56:26,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:56:26,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:56:28,098.098 INFO    ] ================================================
[2026-10-28 23:56:28,114.114 INFO    ] Launching Daemon at Wed Oct 28 23:56:28 IST 2026
[2026-10-28 23:56:28,126.126 INFO    ] ================================================
[2026-10-28 23:56:28,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:56:28
[2026-10-28 23:56:29,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:56:29,761.761 INFO    ] Initializing speech engine...
[2026-10-28 23:56:29,772.772 INFO    ] 2026-10-28 23:56:29
[2026-10-28 23:56:30,043.043 INFO    ] 2026-10-28 23:56:30
[2026-10-28 23:56:30,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:56:30,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:56:30,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:56:30,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:56:30,627.627 INFO    ] time= 28/10/2026 23:56:30
[2026-10-28 23:56:30,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:56:30,665.665 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:56:30,820.820 INFO    ] No existing commands found in stream
[2026-10-28 23:56:35,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:56:35,854.854 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-10-28 23:56:37,643.643 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:56:37,646.646 INFO    ] Checking for system updates...
[2026-10-28 23:56:37,732.732 INFO    ] 200
[2026-10-28 23:56:37,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:56:37,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:56:37,795.795 INFO    ] No update needed
[2026-10-28 23:56:37,798.798 INFO    ] Checking for camera pi updates...
[2026-10-28 23:56:37,834.834 INFO    ] 200
[2026-10-28 23:56:37,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:56:37,877.877 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:56:37,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:56:37,970.970 INFO    ] No camera update needed
[2026-10-28 23:56:37,972.972 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:56:37,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:56:37,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:56:37,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:56:40,024.024 INFO    ] ================================================
[2026-10-28 23:56:40,040.040 INFO    ] Launching Daemon at Wed Oct 28 23:56:40 IST 2026
[2026-10-28 23:56:40,052.052 INFO    ] ================================================
[2026-10-28 23:56:40,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:56:40
[2026-10-28 23:56:41,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:56:41,471.471 INFO    ] Initializing speech engine...
[2026-10-28 23:56:41,486.486 INFO    ] 2026-10-28 23:56:41
[2026-10-28 23:56:41,756.756 INFO    ] 2026-10-28 23:56:41
[2026-10-28 23:56:41,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:56:42,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:56:42,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:56:42,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:56:42,301.301 INFO    ] time= 28/10/2026 23:56:42
[2026-10-28 23:56:42,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:56:42,391.391 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:56:42,531.531 INFO    ] No existing commands found in stream
[2026-10-28 23:56:47,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:56:47,559.559 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-10-28 23:56:50,703.703 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-10-28 23:56:50,705.705 INFO    ] Checking for system updates...
[2026-10-28 23:56:50,740.740 INFO    ] 200
[2026-10-28 23:56:50,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:56:50,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:56:50,804.804 INFO    ] No update needed
[2026-10-28 23:56:50,806.806 INFO    ] Checking for camera pi updates...
[2026-10-28 23:56:50,843.843 INFO    ] 200
[2026-10-28 23:56:50,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:56:50,891.891 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:56:51,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:56:51,076.076 INFO    ] No camera update needed
[2026-10-28 23:56:51,078.078 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:56:51,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:56:51,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:56:51,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:56:53,132.132 INFO    ] ================================================
[2026-10-28 23:56:53,147.147 INFO    ] Launching Daemon at Wed Oct 28 23:56:53 IST 2026
[2026-10-28 23:56:53,158.158 INFO    ] ================================================
[2026-10-28 23:56:53,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:56:53
[2026-10-28 23:56:54,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:56:54,722.722 INFO    ] Initializing speech engine...
[2026-10-28 23:56:54,733.733 INFO    ] 2026-10-28 23:56:54
[2026-10-28 23:56:54,995.995 INFO    ] 2026-10-28 23:56:54
[2026-10-28 23:56:55,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:56:55,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:56:55,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:56:55,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:56:55,569.569 INFO    ] time= 28/10/2026 23:56:55
[2026-10-28 23:56:55,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:56:55,616.616 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:56:55,728.728 INFO    ] No existing commands found in stream
[2026-10-28 23:57:00,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:57:00,757.757 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-10-28 23:57:03,184.184 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:57:03,189.189 INFO    ] Checking for system updates...
[2026-10-28 23:57:03,240.240 INFO    ] 200
[2026-10-28 23:57:03,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:57:03,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:57:03,328.328 INFO    ] No update needed
[2026-10-28 23:57:03,331.331 INFO    ] Checking for camera pi updates...
[2026-10-28 23:57:03,371.371 INFO    ] 200
[2026-10-28 23:57:03,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:57:03,419.419 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:57:03,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:57:03,526.526 INFO    ] No camera update needed
[2026-10-28 23:57:03,528.528 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:57:03,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:57:03,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:57:03,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:57:05,581.581 INFO    ] ================================================
[2026-10-28 23:57:05,597.597 INFO    ] Launching Daemon at Wed Oct 28 23:57:05 IST 2026
[2026-10-28 23:57:05,608.608 INFO    ] ================================================
[2026-10-28 23:57:06,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:57:06
[2026-10-28 23:57:06,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:57:07,073.073 INFO    ] Initializing speech engine...
[2026-10-28 23:57:07,089.089 INFO    ] 2026-10-28 23:57:07
[2026-10-28 23:57:07,364.364 INFO    ] 2026-10-28 23:57:07
[2026-10-28 23:57:07,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:57:07,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:57:07,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:57:07,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:57:07,860.860 INFO    ] time= 28/10/2026 23:57:07
[2026-10-28 23:57:07,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:57:07,954.954 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:57:08,083.083 INFO    ] No existing commands found in stream
[2026-10-28 23:57:13,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:57:13,122.122 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-10-28 23:57:16,441.441 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:57:16,444.444 INFO    ] Checking for system updates...
[2026-10-28 23:57:16,483.483 INFO    ] 200
[2026-10-28 23:57:16,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:57:16,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:57:16,548.548 INFO    ] No update needed
[2026-10-28 23:57:16,550.550 INFO    ] Checking for camera pi updates...
[2026-10-28 23:57:16,584.584 INFO    ] 200
[2026-10-28 23:57:16,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:57:16,627.627 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:57:16,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:57:16,710.710 INFO    ] No camera update needed
[2026-10-28 23:57:16,713.713 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:57:16,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:57:16,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:57:16,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:57:18,766.766 INFO    ] ================================================
[2026-10-28 23:57:18,781.781 INFO    ] Launching Daemon at Wed Oct 28 23:57:18 IST 2026
[2026-10-28 23:57:18,792.792 INFO    ] ================================================
[2026-10-28 23:57:19,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:57:19
[2026-10-28 23:57:19,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:57:20,261.261 INFO    ] Initializing speech engine...
[2026-10-28 23:57:20,275.275 INFO    ] 2026-10-28 23:57:20
[2026-10-28 23:57:20,545.545 INFO    ] 2026-10-28 23:57:20
[2026-10-28 23:57:20,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:57:20,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:57:20,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:57:21,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:57:21,157.157 INFO    ] time= 28/10/2026 23:57:21
[2026-10-28 23:57:21,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:57:21,187.187 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:57:21,344.344 INFO    ] No existing commands found in stream
[2026-10-28 23:57:26,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:57:26,366.366 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-10-28 23:57:27,262.262 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:57:27,265.265 INFO    ] Checking for system updates...
[2026-10-28 23:57:27,304.304 INFO    ] 200
[2026-10-28 23:57:27,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:57:27,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:57:27,369.369 INFO    ] No update needed
[2026-10-28 23:57:27,371.371 INFO    ] Checking for camera pi updates...
[2026-10-28 23:57:27,408.408 INFO    ] 200
[2026-10-28 23:57:27,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:57:27,451.451 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:57:27,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:57:27,534.534 INFO    ] No camera update needed
[2026-10-28 23:57:27,537.537 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:57:27,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:57:27,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:57:27,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:57:29,591.591 INFO    ] ================================================
[2026-10-28 23:57:29,606.606 INFO    ] Launching Daemon at Wed Oct 28 23:57:29 IST 2026
[2026-10-28 23:57:29,617.617 INFO    ] ================================================
[2026-10-28 23:57:30,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:57:30
[2026-10-28 23:57:30,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:57:31,027.027 INFO    ] Initializing speech engine...
[2026-10-28 23:57:31,036.036 INFO    ] 2026-10-28 23:57:31
[2026-10-28 23:57:31,329.329 INFO    ] 2026-10-28 23:57:31
[2026-10-28 23:57:31,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:57:31,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:57:31,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:57:31,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:57:31,831.831 INFO    ] time= 28/10/2026 23:57:31
[2026-10-28 23:57:31,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:57:31,934.934 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:57:32,085.085 INFO    ] No existing commands found in stream
[2026-10-28 23:57:37,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:57:37,121.121 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-10-28 23:57:37,906.906 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:57:37,909.909 INFO    ] Checking for system updates...
[2026-10-28 23:57:37,949.949 INFO    ] 200
[2026-10-28 23:57:37,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:57:38,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:57:38,008.008 INFO    ] No update needed
[2026-10-28 23:57:38,010.010 INFO    ] Checking for camera pi updates...
[2026-10-28 23:57:38,051.051 INFO    ] 200
[2026-10-28 23:57:38,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:57:38,094.094 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:57:38,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:57:38,166.166 INFO    ] No camera update needed
[2026-10-28 23:57:38,168.168 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:57:38,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:57:38,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:57:38,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:57:40,224.224 INFO    ] ================================================
[2026-10-28 23:57:40,239.239 INFO    ] Launching Daemon at Wed Oct 28 23:57:40 IST 2026
[2026-10-28 23:57:40,250.250 INFO    ] ================================================
[2026-10-28 23:57:40,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:57:40
[2026-10-28 23:57:41,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:57:41,730.730 INFO    ] Initializing speech engine...
[2026-10-28 23:57:41,741.741 INFO    ] 2026-10-28 23:57:41
[2026-10-28 23:57:42,012.012 INFO    ] 2026-10-28 23:57:41
[2026-10-28 23:57:42,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:57:42,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:57:42,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:57:42,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:57:42,527.527 INFO    ] time= 28/10/2026 23:57:42
[2026-10-28 23:57:42,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:57:42,631.631 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:57:42,787.787 INFO    ] No existing commands found in stream
[2026-10-28 23:57:47,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:57:47,815.815 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-10-28 23:57:48,922.922 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-10-28 23:57:48,925.925 INFO    ] Checking for system updates...
[2026-10-28 23:57:48,964.964 INFO    ] 200
[2026-10-28 23:57:48,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:57:49,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:57:49,029.029 INFO    ] No update needed
[2026-10-28 23:57:49,032.032 INFO    ] Checking for camera pi updates...
[2026-10-28 23:57:49,069.069 INFO    ] 200
[2026-10-28 23:57:49,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:57:49,111.111 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:57:49,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:57:49,194.194 INFO    ] No camera update needed
[2026-10-28 23:57:49,196.196 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:57:49,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:57:49,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:57:49,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:57:51,248.248 INFO    ] ================================================
[2026-10-28 23:57:51,264.264 INFO    ] Launching Daemon at Wed Oct 28 23:57:51 IST 2026
[2026-10-28 23:57:51,274.274 INFO    ] ================================================
[2026-10-28 23:57:51,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:57:51
[2026-10-28 23:57:52,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:57:52,878.878 INFO    ] Initializing speech engine...
[2026-10-28 23:57:52,888.888 INFO    ] 2026-10-28 23:57:52
[2026-10-28 23:57:53,162.162 INFO    ] 2026-10-28 23:57:53
[2026-10-28 23:57:53,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:57:53,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:57:53,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:57:53,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:57:53,726.726 INFO    ] time= 28/10/2026 23:57:53
[2026-10-28 23:57:53,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:57:53,762.762 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:57:53,920.920 INFO    ] No existing commands found in stream
[2026-10-28 23:57:58,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:57:58,949.949 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-10-28 23:58:00,600.600 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:58:00,603.603 INFO    ] Checking for system updates...
[2026-10-28 23:58:00,641.641 INFO    ] 200
[2026-10-28 23:58:00,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:58:00,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:58:00,706.706 INFO    ] No update needed
[2026-10-28 23:58:00,709.709 INFO    ] Checking for camera pi updates...
[2026-10-28 23:58:00,748.748 INFO    ] 200
[2026-10-28 23:58:00,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:58:00,798.798 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:58:00,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:58:00,878.878 INFO    ] No camera update needed
[2026-10-28 23:58:00,880.880 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:58:00,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:58:00,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:58:00,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:58:02,937.937 INFO    ] ================================================
[2026-10-28 23:58:02,953.953 INFO    ] Launching Daemon at Wed Oct 28 23:58:02 IST 2026
[2026-10-28 23:58:02,965.965 INFO    ] ================================================
[2026-10-28 23:58:03,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:58:03
[2026-10-28 23:58:04,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:58:04,390.390 INFO    ] Initializing speech engine...
[2026-10-28 23:58:04,406.406 INFO    ] 2026-10-28 23:58:04
[2026-10-28 23:58:04,693.693 INFO    ] 2026-10-28 23:58:04
[2026-10-28 23:58:04,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:58:05,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:58:05,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:58:05,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:58:05,306.306 INFO    ] time= 28/10/2026 23:58:05
[2026-10-28 23:58:05,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:58:05,338.338 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:58:05,475.475 INFO    ] No existing commands found in stream
[2026-10-28 23:58:10,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:58:10,499.499 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-10-28 23:58:14,918.918 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:58:14,920.920 INFO    ] Checking for system updates...
[2026-10-28 23:58:14,955.955 INFO    ] 200
[2026-10-28 23:58:14,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:58:15,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:58:15,018.018 INFO    ] No update needed
[2026-10-28 23:58:15,020.020 INFO    ] Checking for camera pi updates...
[2026-10-28 23:58:15,053.053 INFO    ] 200
[2026-10-28 23:58:15,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:58:15,100.100 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:58:15,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:58:15,190.190 INFO    ] No camera update needed
[2026-10-28 23:58:15,193.193 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:58:15,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:58:15,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:58:15,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:58:17,246.246 INFO    ] ================================================
[2026-10-28 23:58:17,261.261 INFO    ] Launching Daemon at Wed Oct 28 23:58:17 IST 2026
[2026-10-28 23:58:17,272.272 INFO    ] ================================================
[2026-10-28 23:58:17,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:58:17
[2026-10-28 23:58:18,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:58:18,736.736 INFO    ] Initializing speech engine...
[2026-10-28 23:58:18,758.758 INFO    ] 2026-10-28 23:58:18
[2026-10-28 23:58:19,011.011 INFO    ] 2026-10-28 23:58:19
[2026-10-28 23:58:19,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:58:19,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:58:19,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:58:19,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:58:19,570.570 INFO    ] time= 28/10/2026 23:58:19
[2026-10-28 23:58:19,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:58:19,591.591 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:58:19,728.728 INFO    ] No existing commands found in stream
[2026-10-28 23:58:24,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:58:24,755.755 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-28 23:58:25,938.938 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:58:25,941.941 INFO    ] Checking for system updates...
[2026-10-28 23:58:25,977.977 INFO    ] 200
[2026-10-28 23:58:25,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:58:26,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:58:26,036.036 INFO    ] No update needed
[2026-10-28 23:58:26,038.038 INFO    ] Checking for camera pi updates...
[2026-10-28 23:58:26,073.073 INFO    ] 200
[2026-10-28 23:58:26,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:58:26,118.118 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:58:26,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:58:26,227.227 INFO    ] No camera update needed
[2026-10-28 23:58:26,229.229 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:58:26,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:58:26,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:58:26,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:58:28,285.285 INFO    ] ================================================
[2026-10-28 23:58:28,302.302 INFO    ] Launching Daemon at Wed Oct 28 23:58:28 IST 2026
[2026-10-28 23:58:28,314.314 INFO    ] ================================================
[2026-10-28 23:58:28,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:58:28
[2026-10-28 23:58:29,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:58:29,732.732 INFO    ] Initializing speech engine...
[2026-10-28 23:58:29,739.739 INFO    ] 2026-10-28 23:58:29
[2026-10-28 23:58:30,032.032 INFO    ] 2026-10-28 23:58:30
[2026-10-28 23:58:30,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:58:30,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:58:30,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:58:30,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:58:30,611.611 INFO    ] time= 28/10/2026 23:58:30
[2026-10-28 23:58:30,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:58:30,661.661 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:58:30,826.826 INFO    ] No existing commands found in stream
[2026-10-28 23:58:35,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:58:35,860.860 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-10-28 23:58:39,118.118 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:58:39,121.121 INFO    ] Checking for system updates...
[2026-10-28 23:58:39,162.162 INFO    ] 200
[2026-10-28 23:58:39,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:58:39,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:58:39,222.222 INFO    ] No update needed
[2026-10-28 23:58:39,225.225 INFO    ] Checking for camera pi updates...
[2026-10-28 23:58:39,259.259 INFO    ] 200
[2026-10-28 23:58:39,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:58:39,303.303 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:58:39,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:58:39,375.375 INFO    ] No camera update needed
[2026-10-28 23:58:39,377.377 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:58:39,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:58:39,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:58:39,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:58:41,430.430 INFO    ] ================================================
[2026-10-28 23:58:41,446.446 INFO    ] Launching Daemon at Wed Oct 28 23:58:41 IST 2026
[2026-10-28 23:58:41,458.458 INFO    ] ================================================
[2026-10-28 23:58:42,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:58:42
[2026-10-28 23:58:42,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:58:42,879.879 INFO    ] Initializing speech engine...
[2026-10-28 23:58:42,885.885 INFO    ] 2026-10-28 23:58:42
[2026-10-28 23:58:43,129.129 INFO    ] 2026-10-28 23:58:43
[2026-10-28 23:58:43,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:58:43,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:58:43,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:58:43,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:58:43,684.684 INFO    ] time= 28/10/2026 23:58:43
[2026-10-28 23:58:43,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:58:43,708.708 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:58:43,840.840 INFO    ] No existing commands found in stream
[2026-10-28 23:58:48,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:58:48,868.868 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-10-28 23:58:51,196.196 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:58:51,198.198 INFO    ] Checking for system updates...
[2026-10-28 23:58:51,238.238 INFO    ] 200
[2026-10-28 23:58:51,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:58:51,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:58:51,294.294 INFO    ] No update needed
[2026-10-28 23:58:51,297.297 INFO    ] Checking for camera pi updates...
[2026-10-28 23:58:51,334.334 INFO    ] 200
[2026-10-28 23:58:51,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:58:51,382.382 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:58:51,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:58:51,465.465 INFO    ] No camera update needed
[2026-10-28 23:58:51,468.468 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:58:51,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:58:51,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:58:51,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:58:53,524.524 INFO    ] ================================================
[2026-10-28 23:58:53,538.538 INFO    ] Launching Daemon at Wed Oct 28 23:58:53 IST 2026
[2026-10-28 23:58:53,549.549 INFO    ] ================================================
[2026-10-28 23:58:54,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:58:54
[2026-10-28 23:58:54,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:58:55,193.193 INFO    ] Initializing speech engine...
[2026-10-28 23:58:55,207.207 INFO    ] 2026-10-28 23:58:55
[2026-10-28 23:58:55,518.518 INFO    ] 2026-10-28 23:58:55
[2026-10-28 23:58:55,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:58:55,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:58:55,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:58:56,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:58:56,190.190 INFO    ] time= 28/10/2026 23:58:56
[2026-10-28 23:58:56,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:58:56,277.277 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:58:56,420.420 INFO    ] No existing commands found in stream
[2026-10-28 23:59:01,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:59:01,439.439 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-10-28 23:59:04,484.484 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:59:04,487.487 INFO    ] Checking for system updates...
[2026-10-28 23:59:04,522.522 INFO    ] 200
[2026-10-28 23:59:04,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:59:04,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:59:04,581.581 INFO    ] No update needed
[2026-10-28 23:59:04,583.583 INFO    ] Checking for camera pi updates...
[2026-10-28 23:59:04,617.617 INFO    ] 200
[2026-10-28 23:59:04,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:59:04,661.661 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:59:04,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:59:04,742.742 INFO    ] No camera update needed
[2026-10-28 23:59:04,745.745 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:59:04,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:59:04,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:59:04,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:59:06,800.800 INFO    ] ================================================
[2026-10-28 23:59:06,817.817 INFO    ] Launching Daemon at Wed Oct 28 23:59:06 IST 2026
[2026-10-28 23:59:06,827.827 INFO    ] ================================================
[2026-10-28 23:59:07,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:59:07
[2026-10-28 23:59:07,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:59:08,256.256 INFO    ] Initializing speech engine...
[2026-10-28 23:59:08,265.265 INFO    ] 2026-10-28 23:59:08
[2026-10-28 23:59:08,511.511 INFO    ] 2026-10-28 23:59:08
[2026-10-28 23:59:08,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:59:08,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:59:08,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:59:09,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:59:09,069.069 INFO    ] time= 28/10/2026 23:59:09
[2026-10-28 23:59:09,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:59:09,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:59:09,217.217 INFO    ] No existing commands found in stream
[2026-10-28 23:59:14,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:59:14,236.236 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-10-28 23:59:17,036.036 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-10-28 23:59:17,039.039 INFO    ] Checking for system updates...
[2026-10-28 23:59:17,075.075 INFO    ] 200
[2026-10-28 23:59:17,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:59:17,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:59:17,132.132 INFO    ] No update needed
[2026-10-28 23:59:17,135.135 INFO    ] Checking for camera pi updates...
[2026-10-28 23:59:17,169.169 INFO    ] 200
[2026-10-28 23:59:17,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:59:17,211.211 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:59:17,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:59:17,298.298 INFO    ] No camera update needed
[2026-10-28 23:59:17,301.301 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:59:17,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:59:17,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:59:17,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:59:19,357.357 INFO    ] ================================================
[2026-10-28 23:59:19,373.373 INFO    ] Launching Daemon at Wed Oct 28 23:59:19 IST 2026
[2026-10-28 23:59:19,383.383 INFO    ] ================================================
[2026-10-28 23:59:20,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:59:20
[2026-10-28 23:59:20,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:59:20,844.844 INFO    ] Initializing speech engine...
[2026-10-28 23:59:20,867.867 INFO    ] 2026-10-28 23:59:20
[2026-10-28 23:59:21,118.118 INFO    ] 2026-10-28 23:59:21
[2026-10-28 23:59:21,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:59:21,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:59:21,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:59:21,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:59:21,680.680 INFO    ] time= 28/10/2026 23:59:21
[2026-10-28 23:59:21,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:59:21,726.726 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:59:21,836.836 INFO    ] No existing commands found in stream
[2026-10-28 23:59:26,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:59:26,863.863 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-10-28 23:59:27,996.996 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:59:27,999.999 INFO    ] Checking for system updates...
[2026-10-28 23:59:28,034.034 INFO    ] 200
[2026-10-28 23:59:28,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:59:28,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:59:28,098.098 INFO    ] No update needed
[2026-10-28 23:59:28,100.100 INFO    ] Checking for camera pi updates...
[2026-10-28 23:59:28,137.137 INFO    ] 200
[2026-10-28 23:59:28,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:59:28,184.184 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:59:28,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:59:28,266.266 INFO    ] No camera update needed
[2026-10-28 23:59:28,268.268 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:59:28,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:59:28,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:59:28,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:59:30,321.321 INFO    ] ================================================
[2026-10-28 23:59:30,336.336 INFO    ] Launching Daemon at Wed Oct 28 23:59:30 IST 2026
[2026-10-28 23:59:30,347.347 INFO    ] ================================================
[2026-10-28 23:59:30,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:59:30
[2026-10-28 23:59:31,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:59:31,922.922 INFO    ] Initializing speech engine...
[2026-10-28 23:59:31,935.935 INFO    ] 2026-10-28 23:59:31
[2026-10-28 23:59:32,224.224 INFO    ] 2026-10-28 23:59:32
[2026-10-28 23:59:32,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:59:32,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:59:32,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:59:32,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:59:32,802.802 INFO    ] time= 28/10/2026 23:59:32
[2026-10-28 23:59:32,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:59:32,828.828 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:59:32,961.961 INFO    ] No existing commands found in stream
[2026-10-28 23:59:37,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:59:37,987.987 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-10-28 23:59:38,933.933 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-10-28 23:59:38,936.936 INFO    ] Checking for system updates...
[2026-10-28 23:59:38,972.972 INFO    ] 200
[2026-10-28 23:59:38,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:59:39,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:59:39,030.030 INFO    ] No update needed
[2026-10-28 23:59:39,032.032 INFO    ] Checking for camera pi updates...
[2026-10-28 23:59:39,065.065 INFO    ] 200
[2026-10-28 23:59:39,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:59:39,109.109 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:59:39,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:59:39,190.190 INFO    ] No camera update needed
[2026-10-28 23:59:39,192.192 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:59:39,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:59:39,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:59:39,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:59:41,245.245 INFO    ] ================================================
[2026-10-28 23:59:41,260.260 INFO    ] Launching Daemon at Wed Oct 28 23:59:41 IST 2026
[2026-10-28 23:59:41,270.270 INFO    ] ================================================
[2026-10-28 23:59:41,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:59:41
[2026-10-28 23:59:42,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:59:42,731.731 INFO    ] Initializing speech engine...
[2026-10-28 23:59:42,740.740 INFO    ] 2026-10-28 23:59:42
[2026-10-28 23:59:42,989.989 INFO    ] 2026-10-28 23:59:42
[2026-10-28 23:59:43,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:59:43,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:59:43,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:59:43,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:59:43,554.554 INFO    ] time= 28/10/2026 23:59:43
[2026-10-28 23:59:43,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:59:43,581.581 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:59:43,701.701 INFO    ] No existing commands found in stream
[2026-10-28 23:59:48,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:59:48,723.723 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-10-28 23:59:49,293.293 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-10-28 23:59:49,296.296 INFO    ] Checking for system updates...
[2026-10-28 23:59:49,332.332 INFO    ] 200
[2026-10-28 23:59:49,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:59:49,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:59:49,390.390 INFO    ] No update needed
[2026-10-28 23:59:49,392.392 INFO    ] Checking for camera pi updates...
[2026-10-28 23:59:49,428.428 INFO    ] 200
[2026-10-28 23:59:49,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:59:49,470.470 INFO    ] Camera IP: TMCAM08202202.local
[2026-10-28 23:59:49,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-10-28 23:59:49,576.576 INFO    ] No camera update needed
[2026-10-28 23:59:49,578.578 INFO    ] Script finished. Safe exiting...
[2026-10-28 23:59:49,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-10-28 23:59:49,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-10-28 23:59:49,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-10-28 23:59:51,629.629 INFO    ] ================================================
[2026-10-28 23:59:51,645.645 INFO    ] Launching Daemon at Wed Oct 28 23:59:51 IST 2026
[2026-10-28 23:59:51,656.656 INFO    ] ================================================
[2026-10-28 23:59:52,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-10-28 23:59:52
[2026-10-28 23:59:52,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-10-28 23:59:53,221.221 INFO    ] Initializing speech engine...
[2026-10-28 23:59:53,228.228 INFO    ] 2026-10-28 23:59:53
[2026-10-28 23:59:53,496.496 INFO    ] 2026-10-28 23:59:53
[2026-10-28 23:59:53,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-10-28 23:59:53,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-10-28 23:59:53,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-10-28 23:59:54,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-10-28 23:59:54,045.045 INFO    ] time= 28/10/2026 23:59:54
[2026-10-28 23:59:54,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM08202202
[2026-10-28 23:59:54,093.093 INFO    ] Checking for existing commands in stream...
[2026-10-28 23:59:54,199.199 INFO    ] No existing commands found in stream
[2026-10-28 23:59:59,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-10-28 23:59:59,222.222 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-10-28 23:59:59,819.819 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-10-28 23:59:59,822.822 INFO    ] Checking for system updates...
[2026-10-28 23:59:59,863.863 INFO    ] 200
[2026-10-28 23:59:59,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-10-28 23:59:59,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-10-28 23:59:59,921.921 INFO    ] No update needed
[2026-10-28 23:59:59,924.924 INFO    ] Checking for camera pi updates...
[2026-10-28 23:59:59,961.961 INFO    ] 200
[2026-10-28 23:59:59,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
